@semplice-studio/pa-design-system 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (352) hide show
  1. package/LICENSE +190 -0
  2. package/README.md +166 -0
  3. package/dist/_virtual/_plugin-vue_export-helper.js +10 -0
  4. package/dist/_virtual/_plugin-vue_export-helper.js.map +1 -0
  5. package/dist/components/PaAccordion/PaAccordion.vue.d.ts +26 -0
  6. package/dist/components/PaAccordion/PaAccordion.vue.js +10 -0
  7. package/dist/components/PaAccordion/PaAccordion.vue.js.map +1 -0
  8. package/dist/components/PaAccordion/PaAccordion.vue2.js +80 -0
  9. package/dist/components/PaAccordion/PaAccordion.vue2.js.map +1 -0
  10. package/dist/components/PaAccordion/groupKey.d.ts +8 -0
  11. package/dist/components/PaAccordion/groupKey.js +5 -0
  12. package/dist/components/PaAccordion/groupKey.js.map +1 -0
  13. package/dist/components/PaAccordion/index.d.ts +2 -0
  14. package/dist/components/PaAccordion/index.js +6 -0
  15. package/dist/components/PaAccordion/index.js.map +1 -0
  16. package/dist/components/PaAccordionGroup/PaAccordionGroup.vue.d.ts +19 -0
  17. package/dist/components/PaAccordionGroup/PaAccordionGroup.vue.js +8 -0
  18. package/dist/components/PaAccordionGroup/PaAccordionGroup.vue.js.map +1 -0
  19. package/dist/components/PaAccordionGroup/PaAccordionGroup.vue2.js +52 -0
  20. package/dist/components/PaAccordionGroup/PaAccordionGroup.vue2.js.map +1 -0
  21. package/dist/components/PaAccordionGroup/index.d.ts +2 -0
  22. package/dist/components/PaAccordionGroup/index.js +6 -0
  23. package/dist/components/PaAccordionGroup/index.js.map +1 -0
  24. package/dist/components/PaBanner/PaBanner.vue.d.ts +27 -0
  25. package/dist/components/PaBanner/PaBanner.vue.js +12 -0
  26. package/dist/components/PaBanner/PaBanner.vue.js.map +1 -0
  27. package/dist/components/PaBanner/PaBanner.vue2.js +79 -0
  28. package/dist/components/PaBanner/PaBanner.vue2.js.map +1 -0
  29. package/dist/components/PaBanner/index.d.ts +2 -0
  30. package/dist/components/PaBanner/index.js +5 -0
  31. package/dist/components/PaBanner/index.js.map +1 -0
  32. package/dist/components/PaBreadcrumb/PaBreadcrumb.vue.d.ts +30 -0
  33. package/dist/components/PaBreadcrumb/PaBreadcrumb.vue.js +8 -0
  34. package/dist/components/PaBreadcrumb/PaBreadcrumb.vue.js.map +1 -0
  35. package/dist/components/PaBreadcrumb/PaBreadcrumb.vue2.js +80 -0
  36. package/dist/components/PaBreadcrumb/PaBreadcrumb.vue2.js.map +1 -0
  37. package/dist/components/PaBreadcrumb/index.d.ts +2 -0
  38. package/dist/components/PaBreadcrumb/index.js +6 -0
  39. package/dist/components/PaBreadcrumb/index.js.map +1 -0
  40. package/dist/components/PaButton/PaButton.vue.d.ts +41 -0
  41. package/dist/components/PaButton/PaButton.vue.js +8 -0
  42. package/dist/components/PaButton/PaButton.vue.js.map +1 -0
  43. package/dist/components/PaButton/PaButton.vue2.js +37 -0
  44. package/dist/components/PaButton/PaButton.vue2.js.map +1 -0
  45. package/dist/components/PaButton/index.d.ts +2 -0
  46. package/dist/components/PaButton/index.js +6 -0
  47. package/dist/components/PaButton/index.js.map +1 -0
  48. package/dist/components/PaCard/PaCard.vue.d.ts +45 -0
  49. package/dist/components/PaCard/PaCard.vue.js +8 -0
  50. package/dist/components/PaCard/PaCard.vue.js.map +1 -0
  51. package/dist/components/PaCard/PaCard.vue2.js +135 -0
  52. package/dist/components/PaCard/PaCard.vue2.js.map +1 -0
  53. package/dist/components/PaCard/index.d.ts +2 -0
  54. package/dist/components/PaCard/index.js +6 -0
  55. package/dist/components/PaCard/index.js.map +1 -0
  56. package/dist/components/PaCarousel/PaCarousel.vue.d.ts +27 -0
  57. package/dist/components/PaCarousel/PaCarousel.vue.js +8 -0
  58. package/dist/components/PaCarousel/PaCarousel.vue.js.map +1 -0
  59. package/dist/components/PaCarousel/PaCarousel.vue2.js +215 -0
  60. package/dist/components/PaCarousel/PaCarousel.vue2.js.map +1 -0
  61. package/dist/components/PaCarousel/index.d.ts +2 -0
  62. package/dist/components/PaCarousel/index.js +5 -0
  63. package/dist/components/PaCarousel/index.js.map +1 -0
  64. package/dist/components/PaCheckbox/PaCheckbox.vue.d.ts +29 -0
  65. package/dist/components/PaCheckbox/PaCheckbox.vue.js +10 -0
  66. package/dist/components/PaCheckbox/PaCheckbox.vue.js.map +1 -0
  67. package/dist/components/PaCheckbox/PaCheckbox.vue2.js +89 -0
  68. package/dist/components/PaCheckbox/PaCheckbox.vue2.js.map +1 -0
  69. package/dist/components/PaCheckbox/index.d.ts +2 -0
  70. package/dist/components/PaCheckbox/index.js +6 -0
  71. package/dist/components/PaCheckbox/index.js.map +1 -0
  72. package/dist/components/PaCheckboxGroup/PaCheckboxGroup.vue.d.ts +32 -0
  73. package/dist/components/PaCheckboxGroup/PaCheckboxGroup.vue.js +10 -0
  74. package/dist/components/PaCheckboxGroup/PaCheckboxGroup.vue.js.map +1 -0
  75. package/dist/components/PaCheckboxGroup/PaCheckboxGroup.vue2.js +89 -0
  76. package/dist/components/PaCheckboxGroup/PaCheckboxGroup.vue2.js.map +1 -0
  77. package/dist/components/PaCheckboxGroup/index.d.ts +2 -0
  78. package/dist/components/PaCheckboxGroup/index.js +6 -0
  79. package/dist/components/PaCheckboxGroup/index.js.map +1 -0
  80. package/dist/components/PaChip/PaChip.vue.d.ts +23 -0
  81. package/dist/components/PaChip/PaChip.vue.js +8 -0
  82. package/dist/components/PaChip/PaChip.vue.js.map +1 -0
  83. package/dist/components/PaChip/PaChip.vue2.js +75 -0
  84. package/dist/components/PaChip/PaChip.vue2.js.map +1 -0
  85. package/dist/components/PaChip/index.d.ts +2 -0
  86. package/dist/components/PaChip/index.js +6 -0
  87. package/dist/components/PaChip/index.js.map +1 -0
  88. package/dist/components/PaDatePicker/PaDatePicker.vue.d.ts +60 -0
  89. package/dist/components/PaDatePicker/PaDatePicker.vue.js +10 -0
  90. package/dist/components/PaDatePicker/PaDatePicker.vue.js.map +1 -0
  91. package/dist/components/PaDatePicker/PaDatePicker.vue2.js +229 -0
  92. package/dist/components/PaDatePicker/PaDatePicker.vue2.js.map +1 -0
  93. package/dist/components/PaDatePicker/index.d.ts +1 -0
  94. package/dist/components/PaDatePicker/index.js +6 -0
  95. package/dist/components/PaDatePicker/index.js.map +1 -0
  96. package/dist/components/PaDrawer/PaDrawer.vue.d.ts +36 -0
  97. package/dist/components/PaDrawer/PaDrawer.vue.js +8 -0
  98. package/dist/components/PaDrawer/PaDrawer.vue.js.map +1 -0
  99. package/dist/components/PaDrawer/PaDrawer.vue2.js +161 -0
  100. package/dist/components/PaDrawer/PaDrawer.vue2.js.map +1 -0
  101. package/dist/components/PaDrawer/PaDrawerInfoRow.vue.d.ts +24 -0
  102. package/dist/components/PaDrawer/PaDrawerInfoRow.vue.js +8 -0
  103. package/dist/components/PaDrawer/PaDrawerInfoRow.vue.js.map +1 -0
  104. package/dist/components/PaDrawer/PaDrawerInfoRow.vue2.js +75 -0
  105. package/dist/components/PaDrawer/PaDrawerInfoRow.vue2.js.map +1 -0
  106. package/dist/components/PaDrawer/index.d.ts +4 -0
  107. package/dist/components/PaDrawer/index.js +8 -0
  108. package/dist/components/PaDrawer/index.js.map +1 -0
  109. package/dist/components/PaFab/PaFab.vue.d.ts +18 -0
  110. package/dist/components/PaFab/PaFab.vue.js +10 -0
  111. package/dist/components/PaFab/PaFab.vue.js.map +1 -0
  112. package/dist/components/PaFab/PaFab.vue2.js +44 -0
  113. package/dist/components/PaFab/PaFab.vue2.js.map +1 -0
  114. package/dist/components/PaFab/index.d.ts +2 -0
  115. package/dist/components/PaFab/index.js +6 -0
  116. package/dist/components/PaFab/index.js.map +1 -0
  117. package/dist/components/PaFileUpload/PaFileUpload.vue.d.ts +40 -0
  118. package/dist/components/PaFileUpload/PaFileUpload.vue.js +10 -0
  119. package/dist/components/PaFileUpload/PaFileUpload.vue.js.map +1 -0
  120. package/dist/components/PaFileUpload/PaFileUpload.vue2.js +164 -0
  121. package/dist/components/PaFileUpload/PaFileUpload.vue2.js.map +1 -0
  122. package/dist/components/PaFileUpload/index.d.ts +2 -0
  123. package/dist/components/PaFileUpload/index.js +6 -0
  124. package/dist/components/PaFileUpload/index.js.map +1 -0
  125. package/dist/components/PaFooter/PaFooter.vue.d.ts +67 -0
  126. package/dist/components/PaFooter/PaFooter.vue.js +8 -0
  127. package/dist/components/PaFooter/PaFooter.vue.js.map +1 -0
  128. package/dist/components/PaFooter/PaFooter.vue2.js +226 -0
  129. package/dist/components/PaFooter/PaFooter.vue2.js.map +1 -0
  130. package/dist/components/PaFooter/index.d.ts +2 -0
  131. package/dist/components/PaFooter/index.js +6 -0
  132. package/dist/components/PaFooter/index.js.map +1 -0
  133. package/dist/components/PaHeaderDesktop/PaHeaderDesktop.vue.d.ts +70 -0
  134. package/dist/components/PaHeaderDesktop/PaHeaderDesktop.vue.js +8 -0
  135. package/dist/components/PaHeaderDesktop/PaHeaderDesktop.vue.js.map +1 -0
  136. package/dist/components/PaHeaderDesktop/PaHeaderDesktop.vue2.js +337 -0
  137. package/dist/components/PaHeaderDesktop/PaHeaderDesktop.vue2.js.map +1 -0
  138. package/dist/components/PaHeaderDesktop/index.d.ts +2 -0
  139. package/dist/components/PaHeaderDesktop/index.js +6 -0
  140. package/dist/components/PaHeaderDesktop/index.js.map +1 -0
  141. package/dist/components/PaHeaderMobile/PaHeaderMobile.vue.d.ts +71 -0
  142. package/dist/components/PaHeaderMobile/PaHeaderMobile.vue.js +8 -0
  143. package/dist/components/PaHeaderMobile/PaHeaderMobile.vue.js.map +1 -0
  144. package/dist/components/PaHeaderMobile/PaHeaderMobile.vue2.js +472 -0
  145. package/dist/components/PaHeaderMobile/PaHeaderMobile.vue2.js.map +1 -0
  146. package/dist/components/PaHeaderMobile/index.d.ts +2 -0
  147. package/dist/components/PaHeaderMobile/index.js +6 -0
  148. package/dist/components/PaHeaderMobile/index.js.map +1 -0
  149. package/dist/components/PaHeaderShared/index.d.ts +1 -0
  150. package/dist/components/PaHeaderShared/index.js +2 -0
  151. package/dist/components/PaHeaderShared/index.js.map +1 -0
  152. package/dist/components/PaHeaderShared/types.d.ts +43 -0
  153. package/dist/components/PaHero/PaHero.vue.d.ts +36 -0
  154. package/dist/components/PaHero/PaHero.vue.js +8 -0
  155. package/dist/components/PaHero/PaHero.vue.js.map +1 -0
  156. package/dist/components/PaHero/PaHero.vue2.js +101 -0
  157. package/dist/components/PaHero/PaHero.vue2.js.map +1 -0
  158. package/dist/components/PaHero/index.d.ts +2 -0
  159. package/dist/components/PaHero/index.js +6 -0
  160. package/dist/components/PaHero/index.js.map +1 -0
  161. package/dist/components/PaIcon/PaIcon.vue.d.ts +8342 -0
  162. package/dist/components/PaIcon/PaIcon.vue.js +163 -0
  163. package/dist/components/PaIcon/PaIcon.vue.js.map +1 -0
  164. package/dist/components/PaIcon/PaIcon.vue2.js +8 -0
  165. package/dist/components/PaIcon/PaIcon.vue2.js.map +1 -0
  166. package/dist/components/PaIcon/index.d.ts +2 -0
  167. package/dist/components/PaIcon/index.js +6 -0
  168. package/dist/components/PaIcon/index.js.map +1 -0
  169. package/dist/components/PaImage/PaImage.vue.d.ts +10 -0
  170. package/dist/components/PaImage/PaImage.vue.js +10 -0
  171. package/dist/components/PaImage/PaImage.vue.js.map +1 -0
  172. package/dist/components/PaImage/PaImage.vue2.js +44 -0
  173. package/dist/components/PaImage/PaImage.vue2.js.map +1 -0
  174. package/dist/components/PaImage/gridKey.d.ts +6 -0
  175. package/dist/components/PaImage/gridKey.js +5 -0
  176. package/dist/components/PaImage/gridKey.js.map +1 -0
  177. package/dist/components/PaImage/index.d.ts +2 -0
  178. package/dist/components/PaImage/index.js +6 -0
  179. package/dist/components/PaImage/index.js.map +1 -0
  180. package/dist/components/PaImageGrid/PaImageGrid.vue.d.ts +18 -0
  181. package/dist/components/PaImageGrid/PaImageGrid.vue.js +8 -0
  182. package/dist/components/PaImageGrid/PaImageGrid.vue.js.map +1 -0
  183. package/dist/components/PaImageGrid/PaImageGrid.vue2.js +28 -0
  184. package/dist/components/PaImageGrid/PaImageGrid.vue2.js.map +1 -0
  185. package/dist/components/PaImageGrid/index.d.ts +2 -0
  186. package/dist/components/PaImageGrid/index.js +6 -0
  187. package/dist/components/PaImageGrid/index.js.map +1 -0
  188. package/dist/components/PaInput/PaInput.vue.d.ts +54 -0
  189. package/dist/components/PaInput/PaInput.vue.js +10 -0
  190. package/dist/components/PaInput/PaInput.vue.js.map +1 -0
  191. package/dist/components/PaInput/PaInput.vue2.js +201 -0
  192. package/dist/components/PaInput/PaInput.vue2.js.map +1 -0
  193. package/dist/components/PaInput/index.d.ts +2 -0
  194. package/dist/components/PaInput/index.js +6 -0
  195. package/dist/components/PaInput/index.js.map +1 -0
  196. package/dist/components/PaModal/PaModal.vue.d.ts +35 -0
  197. package/dist/components/PaModal/PaModal.vue.js +8 -0
  198. package/dist/components/PaModal/PaModal.vue.js.map +1 -0
  199. package/dist/components/PaModal/PaModal.vue2.js +155 -0
  200. package/dist/components/PaModal/PaModal.vue2.js.map +1 -0
  201. package/dist/components/PaModal/index.d.ts +2 -0
  202. package/dist/components/PaModal/index.js +5 -0
  203. package/dist/components/PaModal/index.js.map +1 -0
  204. package/dist/components/PaMonthPicker/PaMonthPicker.vue.d.ts +59 -0
  205. package/dist/components/PaMonthPicker/PaMonthPicker.vue.js +10 -0
  206. package/dist/components/PaMonthPicker/PaMonthPicker.vue.js.map +1 -0
  207. package/dist/components/PaMonthPicker/PaMonthPicker.vue2.js +314 -0
  208. package/dist/components/PaMonthPicker/PaMonthPicker.vue2.js.map +1 -0
  209. package/dist/components/PaMonthPicker/index.d.ts +1 -0
  210. package/dist/components/PaMonthPicker/index.js +6 -0
  211. package/dist/components/PaMonthPicker/index.js.map +1 -0
  212. package/dist/components/PaPagination/PaPagination.vue.d.ts +39 -0
  213. package/dist/components/PaPagination/PaPagination.vue.js +8 -0
  214. package/dist/components/PaPagination/PaPagination.vue.js.map +1 -0
  215. package/dist/components/PaPagination/PaPagination.vue2.js +202 -0
  216. package/dist/components/PaPagination/PaPagination.vue2.js.map +1 -0
  217. package/dist/components/PaPagination/index.d.ts +2 -0
  218. package/dist/components/PaPagination/index.js +6 -0
  219. package/dist/components/PaPagination/index.js.map +1 -0
  220. package/dist/components/PaPagination/usePageWindow.d.ts +2 -0
  221. package/dist/components/PaPagination/usePageWindow.js +19 -0
  222. package/dist/components/PaPagination/usePageWindow.js.map +1 -0
  223. package/dist/components/PaProgressBar/PaProgressBar.vue.d.ts +13 -0
  224. package/dist/components/PaProgressBar/PaProgressBar.vue.js +8 -0
  225. package/dist/components/PaProgressBar/PaProgressBar.vue.js.map +1 -0
  226. package/dist/components/PaProgressBar/PaProgressBar.vue2.js +46 -0
  227. package/dist/components/PaProgressBar/PaProgressBar.vue2.js.map +1 -0
  228. package/dist/components/PaProgressBar/index.d.ts +2 -0
  229. package/dist/components/PaProgressBar/index.js +5 -0
  230. package/dist/components/PaProgressBar/index.js.map +1 -0
  231. package/dist/components/PaRadioGroup/PaRadioGroup.vue.d.ts +32 -0
  232. package/dist/components/PaRadioGroup/PaRadioGroup.vue.js +10 -0
  233. package/dist/components/PaRadioGroup/PaRadioGroup.vue.js.map +1 -0
  234. package/dist/components/PaRadioGroup/PaRadioGroup.vue2.js +94 -0
  235. package/dist/components/PaRadioGroup/PaRadioGroup.vue2.js.map +1 -0
  236. package/dist/components/PaRadioGroup/index.d.ts +2 -0
  237. package/dist/components/PaRadioGroup/index.js +6 -0
  238. package/dist/components/PaRadioGroup/index.js.map +1 -0
  239. package/dist/components/PaRangePicker/PaRangePicker.vue.d.ts +64 -0
  240. package/dist/components/PaRangePicker/PaRangePicker.vue.js +10 -0
  241. package/dist/components/PaRangePicker/PaRangePicker.vue.js.map +1 -0
  242. package/dist/components/PaRangePicker/PaRangePicker.vue2.js +281 -0
  243. package/dist/components/PaRangePicker/PaRangePicker.vue2.js.map +1 -0
  244. package/dist/components/PaRangePicker/index.d.ts +2 -0
  245. package/dist/components/PaRangePicker/index.js +6 -0
  246. package/dist/components/PaRangePicker/index.js.map +1 -0
  247. package/dist/components/PaSearchBar/PaSearchBar.vue.d.ts +37 -0
  248. package/dist/components/PaSearchBar/PaSearchBar.vue.js +10 -0
  249. package/dist/components/PaSearchBar/PaSearchBar.vue.js.map +1 -0
  250. package/dist/components/PaSearchBar/PaSearchBar.vue2.js +271 -0
  251. package/dist/components/PaSearchBar/PaSearchBar.vue2.js.map +1 -0
  252. package/dist/components/PaSearchBar/index.d.ts +2 -0
  253. package/dist/components/PaSearchBar/index.js +6 -0
  254. package/dist/components/PaSearchBar/index.js.map +1 -0
  255. package/dist/components/PaSelect/PaSelect.vue.d.ts +39 -0
  256. package/dist/components/PaSelect/PaSelect.vue.js +10 -0
  257. package/dist/components/PaSelect/PaSelect.vue.js.map +1 -0
  258. package/dist/components/PaSelect/PaSelect.vue2.js +107 -0
  259. package/dist/components/PaSelect/PaSelect.vue2.js.map +1 -0
  260. package/dist/components/PaSelect/index.d.ts +2 -0
  261. package/dist/components/PaSelect/index.js +6 -0
  262. package/dist/components/PaSelect/index.js.map +1 -0
  263. package/dist/components/PaStepProgressBar/PaStepProgressBar.vue.d.ts +33 -0
  264. package/dist/components/PaStepProgressBar/PaStepProgressBar.vue.js +10 -0
  265. package/dist/components/PaStepProgressBar/PaStepProgressBar.vue.js.map +1 -0
  266. package/dist/components/PaStepProgressBar/PaStepProgressBar.vue2.js +116 -0
  267. package/dist/components/PaStepProgressBar/PaStepProgressBar.vue2.js.map +1 -0
  268. package/dist/components/PaStepProgressBar/index.d.ts +2 -0
  269. package/dist/components/PaStepProgressBar/index.js +5 -0
  270. package/dist/components/PaStepProgressBar/index.js.map +1 -0
  271. package/dist/components/PaTab/PaTab.vue.d.ts +19 -0
  272. package/dist/components/PaTab/PaTab.vue.js +8 -0
  273. package/dist/components/PaTab/PaTab.vue.js.map +1 -0
  274. package/dist/components/PaTab/PaTab.vue2.js +44 -0
  275. package/dist/components/PaTab/PaTab.vue2.js.map +1 -0
  276. package/dist/components/PaTab/index.d.ts +2 -0
  277. package/dist/components/PaTab/index.js +5 -0
  278. package/dist/components/PaTab/index.js.map +1 -0
  279. package/dist/components/PaTable/PaTable.vue.d.ts +40 -0
  280. package/dist/components/PaTable/PaTable.vue.js +8 -0
  281. package/dist/components/PaTable/PaTable.vue.js.map +1 -0
  282. package/dist/components/PaTable/PaTable.vue2.js +95 -0
  283. package/dist/components/PaTable/PaTable.vue2.js.map +1 -0
  284. package/dist/components/PaTable/index.d.ts +2 -0
  285. package/dist/components/PaTable/index.js +5 -0
  286. package/dist/components/PaTable/index.js.map +1 -0
  287. package/dist/components/PaTabs/PaTabs.vue.d.ts +47 -0
  288. package/dist/components/PaTabs/PaTabs.vue.js +10 -0
  289. package/dist/components/PaTabs/PaTabs.vue.js.map +1 -0
  290. package/dist/components/PaTabs/PaTabs.vue2.js +154 -0
  291. package/dist/components/PaTabs/PaTabs.vue2.js.map +1 -0
  292. package/dist/components/PaTabs/index.d.ts +2 -0
  293. package/dist/components/PaTabs/index.js +5 -0
  294. package/dist/components/PaTabs/index.js.map +1 -0
  295. package/dist/components/PaTag/PaTag.vue.d.ts +11 -0
  296. package/dist/components/PaTag/PaTag.vue.js +8 -0
  297. package/dist/components/PaTag/PaTag.vue.js.map +1 -0
  298. package/dist/components/PaTag/PaTag.vue2.js +27 -0
  299. package/dist/components/PaTag/PaTag.vue2.js.map +1 -0
  300. package/dist/components/PaTag/index.d.ts +2 -0
  301. package/dist/components/PaTag/index.js +6 -0
  302. package/dist/components/PaTag/index.js.map +1 -0
  303. package/dist/components/PaTextarea/PaTextarea.vue.d.ts +37 -0
  304. package/dist/components/PaTextarea/PaTextarea.vue.js +10 -0
  305. package/dist/components/PaTextarea/PaTextarea.vue.js.map +1 -0
  306. package/dist/components/PaTextarea/PaTextarea.vue2.js +104 -0
  307. package/dist/components/PaTextarea/PaTextarea.vue2.js.map +1 -0
  308. package/dist/components/PaTextarea/index.d.ts +2 -0
  309. package/dist/components/PaTextarea/index.js +6 -0
  310. package/dist/components/PaTextarea/index.js.map +1 -0
  311. package/dist/components/PaTimePicker/PaTimePicker.vue.d.ts +63 -0
  312. package/dist/components/PaTimePicker/PaTimePicker.vue.js +10 -0
  313. package/dist/components/PaTimePicker/PaTimePicker.vue.js.map +1 -0
  314. package/dist/components/PaTimePicker/PaTimePicker.vue2.js +421 -0
  315. package/dist/components/PaTimePicker/PaTimePicker.vue2.js.map +1 -0
  316. package/dist/components/PaTimePicker/index.d.ts +2 -0
  317. package/dist/components/PaTimePicker/index.js +6 -0
  318. package/dist/components/PaTimePicker/index.js.map +1 -0
  319. package/dist/components/PaTitleBar/PaTitleBar.vue.d.ts +36 -0
  320. package/dist/components/PaTitleBar/PaTitleBar.vue.js +8 -0
  321. package/dist/components/PaTitleBar/PaTitleBar.vue.js.map +1 -0
  322. package/dist/components/PaTitleBar/PaTitleBar.vue2.js +178 -0
  323. package/dist/components/PaTitleBar/PaTitleBar.vue2.js.map +1 -0
  324. package/dist/components/PaTitleBar/index.d.ts +2 -0
  325. package/dist/components/PaTitleBar/index.js +6 -0
  326. package/dist/components/PaTitleBar/index.js.map +1 -0
  327. package/dist/components/PaToggle/PaToggle.vue.d.ts +27 -0
  328. package/dist/components/PaToggle/PaToggle.vue.js +10 -0
  329. package/dist/components/PaToggle/PaToggle.vue.js.map +1 -0
  330. package/dist/components/PaToggle/PaToggle.vue2.js +79 -0
  331. package/dist/components/PaToggle/PaToggle.vue2.js.map +1 -0
  332. package/dist/components/PaToggle/index.d.ts +2 -0
  333. package/dist/components/PaToggle/index.js +6 -0
  334. package/dist/components/PaToggle/index.js.map +1 -0
  335. package/dist/components/PaYearPicker/PaYearPicker.vue.d.ts +59 -0
  336. package/dist/components/PaYearPicker/PaYearPicker.vue.js +10 -0
  337. package/dist/components/PaYearPicker/PaYearPicker.vue.js.map +1 -0
  338. package/dist/components/PaYearPicker/PaYearPicker.vue2.js +307 -0
  339. package/dist/components/PaYearPicker/PaYearPicker.vue2.js.map +1 -0
  340. package/dist/components/PaYearPicker/index.d.ts +1 -0
  341. package/dist/components/PaYearPicker/index.js +6 -0
  342. package/dist/components/PaYearPicker/index.js.map +1 -0
  343. package/dist/fonts/Inter-OFL.txt +92 -0
  344. package/dist/fonts/InterVariable.woff2 +0 -0
  345. package/dist/fonts/RobotoMono-OFL.txt +93 -0
  346. package/dist/fonts/RobotoMono-VariableFont.woff2 +0 -0
  347. package/dist/index.d.ts +78 -0
  348. package/dist/index.js +85 -0
  349. package/dist/index.js.map +1 -0
  350. package/dist/style.css +1 -0
  351. package/dist/tokens.css +260 -0
  352. package/package.json +73 -0
@@ -0,0 +1,472 @@
1
+ import { defineComponent as se, ref as w, computed as h, watch as re, nextTick as ue, onBeforeUnmount as de, openBlock as t, createElementBlock as o, toDisplayString as b, createCommentVNode as d, createElementVNode as l, createVNode as _, renderSlot as C, createBlock as E, Teleport as ce, normalizeClass as z, Fragment as y, renderList as O } from "vue";
2
+ import p from "../PaIcon/PaIcon.vue.js";
3
+ const be = {
4
+ class: "pa-header-mobile",
5
+ role: "banner"
6
+ }, pe = ["href"], he = { class: "pa-header-mobile__bar" }, me = ["aria-expanded", "aria-label"], fe = { class: "pa-header-mobile__logo" }, _e = { class: "pa-header-mobile__actions" }, ve = ["aria-label"], ge = ["aria-label"], ye = ["aria-label"], ke = { class: "pa-header-mobile__panel-scroll" }, Le = {
7
+ key: 0,
8
+ class: "pa-header-mobile__group pa-header-mobile__group--primary"
9
+ }, we = ["onClick"], Ce = { class: "pa-header-mobile__tile-label" }, Ee = {
10
+ key: 1,
11
+ class: "pa-header-mobile__group pa-header-mobile__group--secondary"
12
+ }, Oe = ["onClick"], Ae = { class: "pa-header-mobile__tile-label" }, Te = ["aria-label"], $e = ["aria-pressed", "onClick"], ze = ["aria-label"], Se = { class: "pa-header-mobile__back-label" }, xe = {
13
+ key: 0,
14
+ class: "pa-header-mobile__drill-children"
15
+ }, Be = ["onClick"], Fe = { class: "pa-header-mobile__tile-label" }, Ie = {
16
+ key: 1,
17
+ class: "pa-header-mobile__tools-wrap"
18
+ }, Me = { class: "pa-header-mobile__tools-header" }, De = { class: "pa-header-mobile__tools-header-left" }, Ne = { class: "pa-header-mobile__tools-heading" }, Re = ["aria-expanded", "aria-label"], Pe = {
19
+ key: 0,
20
+ class: "pa-header-mobile__tools-toggle-text"
21
+ }, Ve = {
22
+ key: 0,
23
+ class: "pa-header-mobile__tools-body"
24
+ }, Ke = {
25
+ key: 0,
26
+ class: "pa-header-mobile__tools-text"
27
+ }, Ue = {
28
+ key: 1,
29
+ class: "pa-header-mobile__tools-links"
30
+ }, We = ["href"], je = ["href"], Ge = {
31
+ key: 2,
32
+ class: "pa-header-mobile__section-link-wrap"
33
+ }, qe = ["href"], He = { class: "pa-header-mobile__bar pa-header-mobile__bar--in-panel" }, Je = ["aria-label"], Qe = { class: "pa-header-mobile__logo" }, Xe = { class: "pa-header-mobile__actions" }, Ye = ["aria-label"], Ze = ["aria-label"];
34
+ let ea = 0;
35
+ function aa() {
36
+ return ++ea;
37
+ }
38
+ const na = /* @__PURE__ */ se({
39
+ __name: "PaHeaderMobile",
40
+ props: {
41
+ loggedIn: { type: Boolean, default: !1 },
42
+ primaryNav: { default: () => [] },
43
+ secondaryNav: { default: () => [] },
44
+ languages: { default: () => [] },
45
+ currentLanguage: { default: void 0 },
46
+ menuOpen: { type: Boolean, default: void 0 },
47
+ skipLink: { type: [Boolean, Object], default: !0 },
48
+ teleportTarget: { type: [String, Boolean], default: "body" },
49
+ panelLabel: { default: "Menu principale" },
50
+ openMenuLabel: { default: "Apri menu" },
51
+ closeMenuLabel: { default: "Chiudi menu" },
52
+ searchActionLabel: { default: "Cerca" },
53
+ userActionLabelLoggedOut: { default: "Accedi" },
54
+ userActionLabelLoggedIn: { default: "Area personale" },
55
+ languageGroupLabel: { default: "Seleziona la lingua" },
56
+ backLabel: { default: "Indietro" },
57
+ toolsOpenLabel: { default: "Apri" },
58
+ toolsCloseLabel: { default: "Chiudi" },
59
+ exploreLabel: { default: "Esplora" }
60
+ },
61
+ emits: ["update:menuOpen", "search-click", "user-click", "navigate", "language-change"],
62
+ setup(i, { emit: G }) {
63
+ const u = i, k = G, S = `pa-header-mobile-panel-${aa()}`, B = w(!1), g = h(
64
+ () => u.menuOpen !== void 0 ? u.menuOpen : B.value
65
+ );
66
+ function F(e) {
67
+ u.menuOpen === void 0 && (B.value = e), k("update:menuOpen", e);
68
+ }
69
+ const q = h(() => u.skipLink !== !1), H = h(() => typeof u.skipLink == "object" && u.skipLink !== null ? u.skipLink.label ?? "Vai al contenuto" : "Vai al contenuto"), J = h(() => typeof u.skipLink == "object" && u.skipLink !== null ? u.skipLink.target ?? "#main" : "#main"), Q = h(
70
+ () => g.value ? u.closeMenuLabel : u.openMenuLabel
71
+ ), I = h(
72
+ () => u.loggedIn ? u.userActionLabelLoggedIn : u.userActionLabelLoggedOut
73
+ ), M = h(() => u.loggedIn ? "user-fill" : "user"), v = w([]), m = w(!1), s = h(
74
+ () => v.value.length > 0 ? v.value[v.value.length - 1] : null
75
+ );
76
+ h(
77
+ () => s.value ? "secondary-level" : "primary"
78
+ );
79
+ const X = h(() => v.value.length > 0);
80
+ h(
81
+ () => {
82
+ var e;
83
+ return ((e = s.value) == null ? void 0 : e.tier) === "secondary" ? "#F2F6FC" : "#FFFFFF";
84
+ }
85
+ );
86
+ function Y(e) {
87
+ return !!(e.children && e.children.length > 0);
88
+ }
89
+ function A(e) {
90
+ return Y(e) || !!e.tools;
91
+ }
92
+ function x(e, n, a) {
93
+ if (A(n)) {
94
+ v.value.push({ item: n, tier: a }), m.value = !1;
95
+ return;
96
+ }
97
+ let r = !1;
98
+ const c = {
99
+ item: n,
100
+ originalEvent: e,
101
+ preventDefault: () => {
102
+ r = !0, c.defaultPrevented = !0;
103
+ },
104
+ defaultPrevented: !1
105
+ };
106
+ k("navigate", c), !r && n.href && typeof window < "u" && window.location.assign(n.href);
107
+ }
108
+ function Z() {
109
+ v.value.pop(), m.value = !1;
110
+ }
111
+ function ee(e, n) {
112
+ let a = !1;
113
+ const r = {
114
+ language: n,
115
+ originalEvent: e,
116
+ preventDefault: () => {
117
+ a = !0, r.defaultPrevented = !0;
118
+ },
119
+ defaultPrevented: !1
120
+ };
121
+ k("language-change", r), !a && n.href && typeof window < "u" && window.location.assign(n.href);
122
+ }
123
+ function ae() {
124
+ m.value = !m.value;
125
+ }
126
+ const f = w(null), le = w(null);
127
+ let L = null, D = "", N = "", T = !1, $ = !1;
128
+ const te = 'button:not([disabled]), [href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex="-1"])';
129
+ function R(e) {
130
+ return Array.from(e.querySelectorAll(te));
131
+ }
132
+ function oe(e) {
133
+ if (e.key !== "Tab" || !f.value) return;
134
+ const n = R(f.value);
135
+ if (n.length === 0) {
136
+ e.preventDefault(), f.value.focus();
137
+ return;
138
+ }
139
+ const a = n[0], r = n[n.length - 1], c = document.activeElement;
140
+ e.shiftKey ? (c === a || !f.value.contains(c)) && (e.preventDefault(), r.focus()) : (c === r || !f.value.contains(c)) && (e.preventDefault(), a.focus());
141
+ }
142
+ function P(e) {
143
+ e.key === "Escape" && (e.preventDefault(), F(!1));
144
+ }
145
+ function ne() {
146
+ if (T || typeof document > "u") return;
147
+ D = document.body.style.overflow, N = document.body.style.paddingRight;
148
+ const e = window.innerWidth - document.documentElement.clientWidth;
149
+ document.body.style.overflow = "hidden", e > 0 && (document.body.style.paddingRight = `${e}px`), T = !0;
150
+ }
151
+ function V() {
152
+ !T || typeof document > "u" || (document.body.style.overflow = D, document.body.style.paddingRight = N, T = !1);
153
+ }
154
+ function ie() {
155
+ $ || typeof window > "u" || (window.addEventListener("keydown", P), $ = !0);
156
+ }
157
+ function K() {
158
+ !$ || typeof window > "u" || (window.removeEventListener("keydown", P), $ = !1);
159
+ }
160
+ re(
161
+ g,
162
+ async (e) => {
163
+ if (e) {
164
+ if (typeof document < "u" && (L = document.activeElement), u.teleportTarget !== !1 && ne(), ie(), await ue(), f.value) {
165
+ const n = R(f.value);
166
+ n.length > 0 ? n[0].focus({ preventScroll: !0 }) : f.value.focus({ preventScroll: !0 });
167
+ }
168
+ } else
169
+ K(), V(), v.value = [], m.value = !1, L && typeof document < "u" && document.contains(L) && L.focus({ preventScroll: !0 }), L = null;
170
+ },
171
+ { flush: "post", immediate: !0 }
172
+ ), de(() => {
173
+ K(), V();
174
+ });
175
+ function U() {
176
+ F(!g.value);
177
+ }
178
+ function W(e) {
179
+ k("search-click", e);
180
+ }
181
+ function j(e) {
182
+ k("user-click", e);
183
+ }
184
+ return (e, n) => (t(), o("header", be, [
185
+ q.value ? (t(), o("a", {
186
+ key: 0,
187
+ class: "pa-header-mobile__skip",
188
+ href: J.value
189
+ }, b(H.value), 9, pe)) : d("", !0),
190
+ l("div", he, [
191
+ l("button", {
192
+ ref_key: "menuToggleRef",
193
+ ref: le,
194
+ type: "button",
195
+ class: "pa-header-mobile__menu-toggle",
196
+ "aria-expanded": g.value,
197
+ "aria-controls": S,
198
+ "aria-label": Q.value,
199
+ onClick: U
200
+ }, [
201
+ _(p, {
202
+ name: g.value ? "x" : "list",
203
+ size: "md"
204
+ }, null, 8, ["name"])
205
+ ], 8, me),
206
+ l("div", fe, [
207
+ C(e.$slots, "logo", {}, () => [
208
+ n[0] || (n[0] = l("span", {
209
+ class: "pa-header-mobile__logo-placeholder",
210
+ "aria-hidden": "true"
211
+ }, null, -1))
212
+ ], !0)
213
+ ]),
214
+ C(e.$slots, "actions", {}, () => [
215
+ l("div", _e, [
216
+ l("button", {
217
+ type: "button",
218
+ class: "pa-header-mobile__action",
219
+ "aria-label": i.searchActionLabel,
220
+ onClick: W
221
+ }, [
222
+ _(p, {
223
+ name: "magnifying-glass",
224
+ size: "md"
225
+ })
226
+ ], 8, ve),
227
+ l("button", {
228
+ type: "button",
229
+ class: "pa-header-mobile__action pa-header-mobile__action--user",
230
+ "aria-label": I.value,
231
+ onClick: j
232
+ }, [
233
+ C(e.$slots, "user", {}, () => [
234
+ _(p, {
235
+ name: M.value,
236
+ size: "md"
237
+ }, null, 8, ["name"])
238
+ ], !0)
239
+ ], 8, ge)
240
+ ])
241
+ ], !0)
242
+ ]),
243
+ (t(), E(ce, {
244
+ to: i.teleportTarget === !1 ? void 0 : i.teleportTarget,
245
+ disabled: i.teleportTarget === !1
246
+ }, [
247
+ g.value ? (t(), o("div", {
248
+ key: 0,
249
+ id: S,
250
+ ref_key: "panelRef",
251
+ ref: f,
252
+ class: z(["pa-header-mobile__panel", { "pa-header-mobile__panel--inline": i.teleportTarget === !1 }]),
253
+ role: "dialog",
254
+ "aria-modal": "true",
255
+ tabindex: "-1",
256
+ "aria-label": i.panelLabel,
257
+ onKeydown: oe
258
+ }, [
259
+ l("div", ke, [
260
+ X.value ? (t(), o("div", {
261
+ key: 1,
262
+ class: z(["pa-header-mobile__drill", `pa-header-mobile__drill--${s.value.tier}`])
263
+ }, [
264
+ l("button", {
265
+ type: "button",
266
+ class: "pa-header-mobile__back",
267
+ "aria-label": i.backLabel,
268
+ onClick: Z
269
+ }, [
270
+ _(p, {
271
+ name: "caret-left",
272
+ size: "sm"
273
+ }),
274
+ l("span", Se, b(s.value.item.label), 1)
275
+ ], 8, ze),
276
+ s.value.item.children && s.value.item.children.length > 0 ? (t(), o("ul", xe, [
277
+ (t(!0), o(y, null, O(s.value.item.children, (a, r) => (t(), o("li", {
278
+ key: `c-${r}-${a.label}`,
279
+ class: "pa-header-mobile__tile-wrap"
280
+ }, [
281
+ l("button", {
282
+ type: "button",
283
+ class: "pa-header-mobile__tile",
284
+ onClick: (c) => x(c, a, s.value.tier)
285
+ }, [
286
+ l("span", Fe, b(a.label), 1),
287
+ A(a) ? (t(), E(p, {
288
+ key: 0,
289
+ name: "caret-right",
290
+ size: "sm"
291
+ })) : d("", !0)
292
+ ], 8, Be)
293
+ ]))), 128))
294
+ ])) : d("", !0),
295
+ s.value.tier === "primary" && s.value.item.tools ? (t(), o("div", Ie, [
296
+ l("div", {
297
+ class: z(["pa-header-mobile__tools", { "pa-header-mobile__tools--open": m.value }])
298
+ }, [
299
+ l("div", Me, [
300
+ l("div", De, [
301
+ _(p, {
302
+ name: s.value.item.tools.icon,
303
+ size: "md"
304
+ }, null, 8, ["name"]),
305
+ l("h3", Ne, b(s.value.item.tools.heading), 1)
306
+ ]),
307
+ l("button", {
308
+ type: "button",
309
+ class: "pa-header-mobile__tools-toggle",
310
+ "aria-expanded": m.value,
311
+ "aria-label": m.value ? i.toolsCloseLabel : i.toolsOpenLabel,
312
+ onClick: ae
313
+ }, [
314
+ m.value ? (t(), E(p, {
315
+ key: 1,
316
+ name: "caret-up",
317
+ size: "sm"
318
+ })) : (t(), o("span", Pe, b(i.toolsOpenLabel), 1))
319
+ ], 8, Re)
320
+ ]),
321
+ m.value ? (t(), o("div", Ve, [
322
+ s.value.item.tools.body ? (t(), o("p", Ke, b(s.value.item.tools.body), 1)) : d("", !0),
323
+ s.value.item.tools.links && s.value.item.tools.links.length > 0 ? (t(), o("ul", Ue, [
324
+ (t(!0), o(y, null, O(s.value.item.tools.links, (a, r) => (t(), o("li", {
325
+ key: `tl-${r}-${a.label}`,
326
+ class: "pa-header-mobile__tools-link-item"
327
+ }, [
328
+ n[1] || (n[1] = l("span", {
329
+ class: "pa-header-mobile__tools-bullet",
330
+ "aria-hidden": "true"
331
+ }, null, -1)),
332
+ l("a", {
333
+ class: "pa-header-mobile__tools-link",
334
+ href: a.href
335
+ }, b(a.label), 9, We)
336
+ ]))), 128))
337
+ ])) : d("", !0),
338
+ s.value.item.tools.cta ? (t(), o("a", {
339
+ key: 2,
340
+ class: "pa-header-mobile__tools-cta",
341
+ href: s.value.item.tools.cta.href
342
+ }, b(s.value.item.tools.cta.label), 9, je)) : d("", !0)
343
+ ])) : d("", !0)
344
+ ], 2)
345
+ ])) : d("", !0),
346
+ s.value.item.href ? (t(), o("div", Ge, [
347
+ l("a", {
348
+ class: "pa-header-mobile__section-link",
349
+ href: s.value.item.href
350
+ }, [
351
+ l("span", null, b(i.exploreLabel) + " " + b(s.value.item.label), 1),
352
+ _(p, {
353
+ name: "arrow-right",
354
+ size: "sm"
355
+ })
356
+ ], 8, qe)
357
+ ])) : d("", !0)
358
+ ], 2)) : (t(), o(y, { key: 0 }, [
359
+ i.primaryNav.length > 0 ? (t(), o("ul", Le, [
360
+ (t(!0), o(y, null, O(i.primaryNav, (a, r) => (t(), o("li", {
361
+ key: `p-${r}-${a.label}`,
362
+ class: "pa-header-mobile__tile-wrap"
363
+ }, [
364
+ l("button", {
365
+ type: "button",
366
+ class: "pa-header-mobile__tile",
367
+ onClick: (c) => x(c, a, "primary")
368
+ }, [
369
+ l("span", Ce, b(a.label), 1),
370
+ A(a) ? (t(), E(p, {
371
+ key: 0,
372
+ name: "caret-right",
373
+ size: "sm"
374
+ })) : d("", !0)
375
+ ], 8, we)
376
+ ]))), 128))
377
+ ])) : d("", !0),
378
+ i.secondaryNav.length > 0 ? (t(), o("ul", Ee, [
379
+ (t(!0), o(y, null, O(i.secondaryNav, (a, r) => (t(), o("li", {
380
+ key: `s-${r}-${a.label}`,
381
+ class: "pa-header-mobile__tile-wrap"
382
+ }, [
383
+ l("button", {
384
+ type: "button",
385
+ class: "pa-header-mobile__tile",
386
+ onClick: (c) => x(c, a, "secondary")
387
+ }, [
388
+ l("span", Ae, b(a.label), 1),
389
+ A(a) ? (t(), E(p, {
390
+ key: 0,
391
+ name: "caret-right",
392
+ size: "sm"
393
+ })) : d("", !0)
394
+ ], 8, Oe)
395
+ ]))), 128))
396
+ ])) : d("", !0),
397
+ i.languages.length > 0 ? (t(), o("div", {
398
+ key: 2,
399
+ class: "pa-header-mobile__language",
400
+ role: "group",
401
+ "aria-label": i.languageGroupLabel
402
+ }, [
403
+ (t(!0), o(y, null, O(i.languages, (a) => (t(), o("button", {
404
+ key: a.code,
405
+ type: "button",
406
+ class: z(["pa-header-mobile__language-pill", {
407
+ "pa-header-mobile__language-pill--active": a.code === i.currentLanguage
408
+ }]),
409
+ "aria-pressed": a.code === i.currentLanguage,
410
+ onClick: (r) => ee(r, a)
411
+ }, b(a.label), 11, $e))), 128))
412
+ ], 8, Te)) : d("", !0)
413
+ ], 64))
414
+ ]),
415
+ l("div", He, [
416
+ l("button", {
417
+ type: "button",
418
+ class: "pa-header-mobile__menu-toggle",
419
+ "aria-expanded": !0,
420
+ "aria-controls": S,
421
+ "aria-label": i.closeMenuLabel,
422
+ onClick: U
423
+ }, [
424
+ _(p, {
425
+ name: "x",
426
+ size: "md"
427
+ })
428
+ ], 8, Je),
429
+ l("div", Qe, [
430
+ C(e.$slots, "logo", {}, () => [
431
+ n[2] || (n[2] = l("span", {
432
+ class: "pa-header-mobile__logo-placeholder",
433
+ "aria-hidden": "true"
434
+ }, null, -1))
435
+ ], !0)
436
+ ]),
437
+ l("div", Xe, [
438
+ l("button", {
439
+ type: "button",
440
+ class: "pa-header-mobile__action",
441
+ "aria-label": i.searchActionLabel,
442
+ onClick: W
443
+ }, [
444
+ _(p, {
445
+ name: "magnifying-glass",
446
+ size: "md"
447
+ })
448
+ ], 8, Ye),
449
+ l("button", {
450
+ type: "button",
451
+ class: "pa-header-mobile__action pa-header-mobile__action--user",
452
+ "aria-label": I.value,
453
+ onClick: j
454
+ }, [
455
+ C(e.$slots, "user", {}, () => [
456
+ _(p, {
457
+ name: M.value,
458
+ size: "md"
459
+ }, null, 8, ["name"])
460
+ ], !0)
461
+ ], 8, Ze)
462
+ ])
463
+ ])
464
+ ], 42, ye)) : d("", !0)
465
+ ], 8, ["to", "disabled"]))
466
+ ]));
467
+ }
468
+ });
469
+ export {
470
+ na as default
471
+ };
472
+ //# sourceMappingURL=PaHeaderMobile.vue2.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PaHeaderMobile.vue2.js","sources":["../../../src/components/PaHeaderMobile/PaHeaderMobile.vue"],"sourcesContent":["<script lang=\"ts\">\nimport type {\n PaHeaderLink,\n PaHeaderTools,\n PaHeaderNavItem,\n PaHeaderLanguage,\n PaHeaderSkipLinkConfig,\n PaHeaderNavigateEventPayload,\n PaHeaderLanguageChangeEventPayload,\n} from '../PaHeaderShared/types'\n\nexport type {\n PaHeaderLink,\n PaHeaderTools,\n PaHeaderNavItem,\n PaHeaderLanguage,\n PaHeaderSkipLinkConfig,\n PaHeaderNavigateEventPayload,\n PaHeaderLanguageChangeEventPayload,\n}\n\nlet mobileUid = 0\nfunction nextMobileId() {\n return ++mobileUid\n}\n\nexport interface PaHeaderMobileProps {\n loggedIn?: boolean\n primaryNav?: PaHeaderNavItem[]\n secondaryNav?: PaHeaderNavItem[]\n languages?: PaHeaderLanguage[]\n currentLanguage?: string\n menuOpen?: boolean\n skipLink?: boolean | PaHeaderSkipLinkConfig\n /**\n * Target for the menu panel's <Teleport>. Defaults to `'body'`.\n * Pass `false` to disable Teleport (panel renders inline as a child of the\n * <header> wrapper, useful for Histoire stories or constrained previews).\n */\n teleportTarget?: string | HTMLElement | false\n panelLabel?: string\n openMenuLabel?: string\n closeMenuLabel?: string\n searchActionLabel?: string\n userActionLabelLoggedOut?: string\n userActionLabelLoggedIn?: string\n languageGroupLabel?: string\n backLabel?: string\n toolsOpenLabel?: string\n toolsCloseLabel?: string\n exploreLabel?: string\n}\n\ninterface DrillEntry {\n item: PaHeaderNavItem\n tier: 'primary' | 'secondary'\n}\n</script>\n\n<script setup lang=\"ts\">\nimport { computed, nextTick, onBeforeUnmount, ref, watch } from 'vue'\nimport PaIcon from '../PaIcon/PaIcon.vue'\n\nconst props = withDefaults(defineProps<PaHeaderMobileProps>(), {\n loggedIn: false,\n primaryNav: () => [],\n secondaryNav: () => [],\n languages: () => [],\n currentLanguage: undefined,\n menuOpen: undefined,\n skipLink: true,\n teleportTarget: 'body',\n panelLabel: 'Menu principale',\n openMenuLabel: 'Apri menu',\n closeMenuLabel: 'Chiudi menu',\n searchActionLabel: 'Cerca',\n userActionLabelLoggedOut: 'Accedi',\n userActionLabelLoggedIn: 'Area personale',\n languageGroupLabel: 'Seleziona la lingua',\n backLabel: 'Indietro',\n toolsOpenLabel: 'Apri',\n toolsCloseLabel: 'Chiudi',\n exploreLabel: 'Esplora',\n})\n\nconst emit = defineEmits<{\n 'update:menuOpen': [boolean]\n 'search-click': [MouseEvent]\n 'user-click': [MouseEvent]\n navigate: [PaHeaderNavigateEventPayload]\n 'language-change': [PaHeaderLanguageChangeEventPayload]\n}>()\n\ndefineSlots<{\n logo?: () => unknown\n actions?: () => unknown\n user?: () => unknown\n}>()\n\nconst componentId = nextMobileId()\nconst panelId = `pa-header-mobile-panel-${componentId}`\n\nconst internalMenuOpen = ref(false)\nconst isMenuOpen = computed(() =>\n props.menuOpen !== undefined ? props.menuOpen : internalMenuOpen.value,\n)\n\nfunction setMenuOpen(next: boolean) {\n if (props.menuOpen === undefined) {\n internalMenuOpen.value = next\n }\n emit('update:menuOpen', next)\n}\n\nconst skipLinkEnabled = computed(() => props.skipLink !== false)\nconst skipLinkLabel = computed(() => {\n if (typeof props.skipLink === 'object' && props.skipLink !== null) {\n return props.skipLink.label ?? 'Vai al contenuto'\n }\n return 'Vai al contenuto'\n})\nconst skipLinkTarget = computed(() => {\n if (typeof props.skipLink === 'object' && props.skipLink !== null) {\n return props.skipLink.target ?? '#main'\n }\n return '#main'\n})\n\nconst menuToggleLabel = computed(() =>\n isMenuOpen.value ? props.closeMenuLabel : props.openMenuLabel,\n)\nconst userActionLabel = computed(() =>\n props.loggedIn ? props.userActionLabelLoggedIn : props.userActionLabelLoggedOut,\n)\nconst userIconName = computed(() => (props.loggedIn ? 'user-fill' : 'user'))\n\nconst drillStack = ref<DrillEntry[]>([])\nconst toolsOpen = ref(false)\n\nconst currentDrill = computed<DrillEntry | null>(() =>\n drillStack.value.length > 0\n ? drillStack.value[drillStack.value.length - 1]!\n : null,\n)\nconst currentLevel = computed<'primary' | 'secondary'>(() =>\n currentDrill.value ? 'secondary-level' as never : 'primary',\n)\nconst isSecondaryLevel = computed(() => drillStack.value.length > 0)\n\nconst secondaryBg = computed(() =>\n currentDrill.value?.tier === 'secondary' ? '#F2F6FC' : '#FFFFFF',\n)\n\nfunction hasChildren(item: PaHeaderNavItem): boolean {\n return Boolean(item.children && item.children.length > 0)\n}\n\nfunction tileIndicatesDrill(item: PaHeaderNavItem): boolean {\n return hasChildren(item) || Boolean(item.tools)\n}\n\nfunction handleTileClick(event: MouseEvent, item: PaHeaderNavItem, tier: 'primary' | 'secondary') {\n if (tileIndicatesDrill(item)) {\n drillStack.value.push({ item, tier })\n toolsOpen.value = false\n return\n }\n // Leaf: emit navigate\n let prevented = false\n const payload: PaHeaderNavigateEventPayload = {\n item,\n originalEvent: event,\n preventDefault: () => {\n prevented = true\n payload.defaultPrevented = true\n },\n defaultPrevented: false,\n }\n emit('navigate', payload)\n if (!prevented && item.href && typeof window !== 'undefined') {\n window.location.assign(item.href)\n }\n}\n\nfunction popDrill() {\n drillStack.value.pop()\n toolsOpen.value = false\n}\n\nfunction handleLanguageClick(event: MouseEvent, language: PaHeaderLanguage) {\n let prevented = false\n const payload: PaHeaderLanguageChangeEventPayload = {\n language,\n originalEvent: event,\n preventDefault: () => {\n prevented = true\n payload.defaultPrevented = true\n },\n defaultPrevented: false,\n }\n emit('language-change', payload)\n if (!prevented && language.href && typeof window !== 'undefined') {\n window.location.assign(language.href)\n }\n}\n\nfunction toggleTools() {\n toolsOpen.value = !toolsOpen.value\n}\n\n// --- Body scroll lock + Esc + focus management (panel) ---\n\nconst panelRef = ref<HTMLElement | null>(null)\nconst menuToggleRef = ref<HTMLButtonElement | null>(null)\n\nlet previouslyFocusedElement: HTMLElement | null = null\nlet originalBodyOverflow = ''\nlet originalBodyPaddingRight = ''\nlet scrollLockActive = false\nlet escListenerAttached = false\n\nconst FOCUSABLE_SELECTOR =\n 'button:not([disabled]), [href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex=\"-1\"])'\n\nfunction getFocusable(root: HTMLElement): HTMLElement[] {\n return Array.from(root.querySelectorAll<HTMLElement>(FOCUSABLE_SELECTOR))\n}\n\nfunction onPanelKeydown(event: KeyboardEvent) {\n if (event.key !== 'Tab' || !panelRef.value) return\n const focusable = getFocusable(panelRef.value)\n if (focusable.length === 0) {\n event.preventDefault()\n panelRef.value.focus()\n return\n }\n const first = focusable[0]!\n const last = focusable[focusable.length - 1]!\n const active = document.activeElement as HTMLElement | null\n if (event.shiftKey) {\n if (active === first || !panelRef.value.contains(active)) {\n event.preventDefault()\n last.focus()\n }\n } else {\n if (active === last || !panelRef.value.contains(active)) {\n event.preventDefault()\n first.focus()\n }\n }\n}\n\nfunction onWindowKeydownEsc(event: KeyboardEvent) {\n if (event.key === 'Escape') {\n event.preventDefault()\n setMenuOpen(false)\n }\n}\n\nfunction lockScroll() {\n if (scrollLockActive || typeof document === 'undefined') return\n originalBodyOverflow = document.body.style.overflow\n originalBodyPaddingRight = document.body.style.paddingRight\n const scrollbarWidth = window.innerWidth - document.documentElement.clientWidth\n document.body.style.overflow = 'hidden'\n if (scrollbarWidth > 0) {\n document.body.style.paddingRight = `${scrollbarWidth}px`\n }\n scrollLockActive = true\n}\n\nfunction unlockScroll() {\n if (!scrollLockActive || typeof document === 'undefined') return\n document.body.style.overflow = originalBodyOverflow\n document.body.style.paddingRight = originalBodyPaddingRight\n scrollLockActive = false\n}\n\nfunction attachEsc() {\n if (escListenerAttached || typeof window === 'undefined') return\n window.addEventListener('keydown', onWindowKeydownEsc)\n escListenerAttached = true\n}\n\nfunction detachEsc() {\n if (!escListenerAttached || typeof window === 'undefined') return\n window.removeEventListener('keydown', onWindowKeydownEsc)\n escListenerAttached = false\n}\n\nwatch(\n isMenuOpen,\n async (next) => {\n if (next) {\n if (typeof document !== 'undefined') {\n previouslyFocusedElement = document.activeElement as HTMLElement | null\n }\n if (props.teleportTarget !== false) {\n lockScroll()\n }\n attachEsc()\n await nextTick()\n if (panelRef.value) {\n const focusable = getFocusable(panelRef.value)\n if (focusable.length > 0) {\n focusable[0]!.focus({ preventScroll: true })\n } else {\n panelRef.value.focus({ preventScroll: true })\n }\n }\n } else {\n detachEsc()\n unlockScroll()\n drillStack.value = []\n toolsOpen.value = false\n if (\n previouslyFocusedElement &&\n typeof document !== 'undefined' &&\n document.contains(previouslyFocusedElement)\n ) {\n previouslyFocusedElement.focus({ preventScroll: true })\n }\n previouslyFocusedElement = null\n }\n },\n { flush: 'post', immediate: true },\n)\n\nonBeforeUnmount(() => {\n detachEsc()\n unlockScroll()\n})\n\nfunction onMenuToggle() {\n setMenuOpen(!isMenuOpen.value)\n}\n\nfunction onSearchClick(event: MouseEvent) {\n emit('search-click', event)\n}\n\nfunction onUserClick(event: MouseEvent) {\n emit('user-click', event)\n}\n</script>\n\n<template>\n <header class=\"pa-header-mobile\" role=\"banner\">\n <a\n v-if=\"skipLinkEnabled\"\n class=\"pa-header-mobile__skip\"\n :href=\"skipLinkTarget\"\n >\n {{ skipLinkLabel }}\n </a>\n\n <div class=\"pa-header-mobile__bar\">\n <button\n ref=\"menuToggleRef\"\n type=\"button\"\n class=\"pa-header-mobile__menu-toggle\"\n :aria-expanded=\"isMenuOpen\"\n :aria-controls=\"panelId\"\n :aria-label=\"menuToggleLabel\"\n @click=\"onMenuToggle\"\n >\n <PaIcon :name=\"isMenuOpen ? 'x' : 'list'\" size=\"md\" />\n </button>\n\n <div class=\"pa-header-mobile__logo\">\n <slot name=\"logo\">\n <span\n class=\"pa-header-mobile__logo-placeholder\"\n aria-hidden=\"true\"\n />\n </slot>\n </div>\n\n <slot name=\"actions\">\n <div class=\"pa-header-mobile__actions\">\n <button\n type=\"button\"\n class=\"pa-header-mobile__action\"\n :aria-label=\"searchActionLabel\"\n @click=\"onSearchClick\"\n >\n <PaIcon name=\"magnifying-glass\" size=\"md\" />\n </button>\n <button\n type=\"button\"\n class=\"pa-header-mobile__action pa-header-mobile__action--user\"\n :aria-label=\"userActionLabel\"\n @click=\"onUserClick\"\n >\n <slot name=\"user\">\n <PaIcon :name=\"userIconName\" size=\"md\" />\n </slot>\n </button>\n </div>\n </slot>\n </div>\n\n <Teleport :to=\"teleportTarget === false ? undefined : teleportTarget\" :disabled=\"teleportTarget === false\">\n <div\n v-if=\"isMenuOpen\"\n :id=\"panelId\"\n ref=\"panelRef\"\n class=\"pa-header-mobile__panel\"\n :class=\"{ 'pa-header-mobile__panel--inline': teleportTarget === false }\"\n role=\"dialog\"\n aria-modal=\"true\"\n tabindex=\"-1\"\n :aria-label=\"panelLabel\"\n @keydown=\"onPanelKeydown\"\n >\n <div class=\"pa-header-mobile__panel-scroll\">\n <!-- Primary level -->\n <template v-if=\"!isSecondaryLevel\">\n <ul\n v-if=\"primaryNav.length > 0\"\n class=\"pa-header-mobile__group pa-header-mobile__group--primary\"\n >\n <li\n v-for=\"(item, idx) in primaryNav\"\n :key=\"`p-${idx}-${item.label}`\"\n class=\"pa-header-mobile__tile-wrap\"\n >\n <button\n type=\"button\"\n class=\"pa-header-mobile__tile\"\n @click=\"(event) => handleTileClick(event, item, 'primary')\"\n >\n <span class=\"pa-header-mobile__tile-label\">{{ item.label }}</span>\n <PaIcon\n v-if=\"tileIndicatesDrill(item)\"\n name=\"caret-right\"\n size=\"sm\"\n />\n </button>\n </li>\n </ul>\n\n <ul\n v-if=\"secondaryNav.length > 0\"\n class=\"pa-header-mobile__group pa-header-mobile__group--secondary\"\n >\n <li\n v-for=\"(item, idx) in secondaryNav\"\n :key=\"`s-${idx}-${item.label}`\"\n class=\"pa-header-mobile__tile-wrap\"\n >\n <button\n type=\"button\"\n class=\"pa-header-mobile__tile\"\n @click=\"(event) => handleTileClick(event, item, 'secondary')\"\n >\n <span class=\"pa-header-mobile__tile-label\">{{ item.label }}</span>\n <PaIcon\n v-if=\"tileIndicatesDrill(item)\"\n name=\"caret-right\"\n size=\"sm\"\n />\n </button>\n </li>\n </ul>\n\n <div\n v-if=\"languages.length > 0\"\n class=\"pa-header-mobile__language\"\n role=\"group\"\n :aria-label=\"languageGroupLabel\"\n >\n <button\n v-for=\"lang in languages\"\n :key=\"lang.code\"\n type=\"button\"\n class=\"pa-header-mobile__language-pill\"\n :class=\"{\n 'pa-header-mobile__language-pill--active':\n lang.code === currentLanguage,\n }\"\n :aria-pressed=\"lang.code === currentLanguage\"\n @click=\"(event) => handleLanguageClick(event, lang)\"\n >\n {{ lang.label }}\n </button>\n </div>\n </template>\n\n <!-- Secondary level -->\n <template v-else>\n <div\n class=\"pa-header-mobile__drill\"\n :class=\"`pa-header-mobile__drill--${currentDrill!.tier}`\"\n >\n <button\n type=\"button\"\n class=\"pa-header-mobile__back\"\n :aria-label=\"backLabel\"\n @click=\"popDrill\"\n >\n <PaIcon name=\"caret-left\" size=\"sm\" />\n <span class=\"pa-header-mobile__back-label\">{{ currentDrill!.item.label }}</span>\n </button>\n\n <ul\n v-if=\"currentDrill!.item.children && currentDrill!.item.children.length > 0\"\n class=\"pa-header-mobile__drill-children\"\n >\n <li\n v-for=\"(child, idx) in currentDrill!.item.children\"\n :key=\"`c-${idx}-${child.label}`\"\n class=\"pa-header-mobile__tile-wrap\"\n >\n <button\n type=\"button\"\n class=\"pa-header-mobile__tile\"\n @click=\"(event) => handleTileClick(event, child, currentDrill!.tier)\"\n >\n <span class=\"pa-header-mobile__tile-label\">{{ child.label }}</span>\n <PaIcon\n v-if=\"tileIndicatesDrill(child)\"\n name=\"caret-right\"\n size=\"sm\"\n />\n </button>\n </li>\n </ul>\n\n <div\n v-if=\"currentDrill!.tier === 'primary' && currentDrill!.item.tools\"\n class=\"pa-header-mobile__tools-wrap\"\n >\n <div\n class=\"pa-header-mobile__tools\"\n :class=\"{ 'pa-header-mobile__tools--open': toolsOpen }\"\n >\n <div class=\"pa-header-mobile__tools-header\">\n <div class=\"pa-header-mobile__tools-header-left\">\n <PaIcon :name=\"currentDrill!.item.tools.icon\" size=\"md\" />\n <h3 class=\"pa-header-mobile__tools-heading\">\n {{ currentDrill!.item.tools.heading }}\n </h3>\n </div>\n <button\n type=\"button\"\n class=\"pa-header-mobile__tools-toggle\"\n :aria-expanded=\"toolsOpen\"\n :aria-label=\"toolsOpen ? toolsCloseLabel : toolsOpenLabel\"\n @click=\"toggleTools\"\n >\n <span v-if=\"!toolsOpen\" class=\"pa-header-mobile__tools-toggle-text\">{{ toolsOpenLabel }}</span>\n <PaIcon v-else name=\"caret-up\" size=\"sm\" />\n </button>\n </div>\n\n <div v-if=\"toolsOpen\" class=\"pa-header-mobile__tools-body\">\n <p\n v-if=\"currentDrill!.item.tools.body\"\n class=\"pa-header-mobile__tools-text\"\n >{{ currentDrill!.item.tools.body }}</p>\n\n <ul\n v-if=\"currentDrill!.item.tools.links && currentDrill!.item.tools.links.length > 0\"\n class=\"pa-header-mobile__tools-links\"\n >\n <li\n v-for=\"(link, idx) in currentDrill!.item.tools.links\"\n :key=\"`tl-${idx}-${link.label}`\"\n class=\"pa-header-mobile__tools-link-item\"\n >\n <span class=\"pa-header-mobile__tools-bullet\" aria-hidden=\"true\" />\n <a class=\"pa-header-mobile__tools-link\" :href=\"link.href\">{{ link.label }}</a>\n </li>\n </ul>\n\n <a\n v-if=\"currentDrill!.item.tools.cta\"\n class=\"pa-header-mobile__tools-cta\"\n :href=\"currentDrill!.item.tools.cta.href\"\n >{{ currentDrill!.item.tools.cta.label }}</a>\n </div>\n </div>\n </div>\n\n <div\n v-if=\"currentDrill!.item.href\"\n class=\"pa-header-mobile__section-link-wrap\"\n >\n <a class=\"pa-header-mobile__section-link\" :href=\"currentDrill!.item.href\">\n <span>{{ exploreLabel }} {{ currentDrill!.item.label }}</span>\n <PaIcon name=\"arrow-right\" size=\"sm\" />\n </a>\n </div>\n </div>\n </template>\n </div>\n\n <!-- Bar at panel bottom (Open state) -->\n <div class=\"pa-header-mobile__bar pa-header-mobile__bar--in-panel\">\n <button\n type=\"button\"\n class=\"pa-header-mobile__menu-toggle\"\n :aria-expanded=\"true\"\n :aria-controls=\"panelId\"\n :aria-label=\"closeMenuLabel\"\n @click=\"onMenuToggle\"\n >\n <PaIcon name=\"x\" size=\"md\" />\n </button>\n\n <div class=\"pa-header-mobile__logo\">\n <slot name=\"logo\">\n <span class=\"pa-header-mobile__logo-placeholder\" aria-hidden=\"true\" />\n </slot>\n </div>\n\n <div class=\"pa-header-mobile__actions\">\n <button\n type=\"button\"\n class=\"pa-header-mobile__action\"\n :aria-label=\"searchActionLabel\"\n @click=\"onSearchClick\"\n >\n <PaIcon name=\"magnifying-glass\" size=\"md\" />\n </button>\n <button\n type=\"button\"\n class=\"pa-header-mobile__action pa-header-mobile__action--user\"\n :aria-label=\"userActionLabel\"\n @click=\"onUserClick\"\n >\n <slot name=\"user\">\n <PaIcon :name=\"userIconName\" size=\"md\" />\n </slot>\n </button>\n </div>\n </div>\n </div>\n </Teleport>\n </header>\n</template>\n\n<style scoped>\n.pa-header-mobile {\n position: relative;\n width: 100%;\n background: #ffffff;\n font-family: var(--pa-font-family-base, 'Inter', sans-serif);\n}\n\n.pa-header-mobile__skip {\n position: absolute;\n left: -9999px;\n top: auto;\n width: 1px;\n height: 1px;\n overflow: hidden;\n background: #ffffff;\n color: var(--pa-color-text-dark-blue);\n padding: var(--pa-space-xs) var(--pa-space-sm);\n border-radius: var(--pa-radius-smooth);\n text-decoration: none;\n font-size: var(--pa-font-label-sm-size);\n font-weight: var(--pa-font-label-sm-weight);\n line-height: var(--pa-font-label-sm-line-height);\n z-index: 9999;\n}\n\n.pa-header-mobile__skip:focus-visible {\n position: fixed;\n left: var(--pa-space-xs);\n top: var(--pa-space-xs);\n width: auto;\n height: auto;\n overflow: visible;\n outline: var(--pa-border-sm) solid var(--pa-color-accent);\n outline-offset: 2px;\n box-shadow: 0 0 16px 0 #e3e5e8;\n}\n\n.pa-header-mobile__bar {\n position: relative;\n height: 60px;\n width: 100%;\n background: #ffffff;\n container-type: inline-size;\n}\n\n.pa-header-mobile__bar--in-panel {\n flex-shrink: 0;\n border-top: var(--pa-border-xs) solid var(--pa-color-bg-primary-light-50);\n}\n\n.pa-header-mobile__menu-toggle,\n.pa-header-mobile__action {\n position: absolute;\n top: 0;\n bottom: 0;\n width: 56px;\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 0;\n border: 0;\n background: var(--pa-color-bg-primary-light-40);\n color: var(--pa-color-neutral-gray);\n cursor: pointer;\n}\n\n.pa-header-mobile__menu-toggle {\n left: 0;\n}\n\n.pa-header-mobile__menu-toggle:focus-visible,\n.pa-header-mobile__action:focus-visible {\n outline: var(--pa-border-sm) solid var(--pa-color-accent);\n outline-offset: -2px;\n}\n\n.pa-header-mobile__logo {\n position: absolute;\n left: 68px;\n top: 10px;\n height: 40px;\n display: flex;\n align-items: center;\n max-width: calc(100% - 68px - 112px);\n}\n\n.pa-header-mobile__logo-placeholder {\n display: block;\n width: 70.133px;\n height: 40px;\n background: var(--pa-color-primary);\n}\n\n.pa-header-mobile__actions {\n position: absolute;\n right: 0;\n top: 0;\n bottom: 0;\n display: flex;\n flex-direction: row;\n}\n\n.pa-header-mobile__action {\n position: static;\n flex-shrink: 0;\n}\n\n/* Panel */\n\n.pa-header-mobile__panel {\n position: fixed;\n inset: 0;\n z-index: 1000;\n background: #ffffff;\n display: flex;\n flex-direction: column;\n min-height: 100vh;\n font-family: var(--pa-font-family-base, 'Inter', sans-serif);\n}\n\n/* Inline variant: panel constrained to its parent (typically `.pa-header-mobile`\n * expanded by the consumer to viewport-like dimensions). Used in Histoire so the\n * panel doesn't take over the docs UI. */\n.pa-header-mobile__panel--inline {\n position: absolute;\n inset: 0;\n z-index: 1;\n min-height: 0;\n}\n\n.pa-header-mobile__panel:focus {\n outline: none;\n}\n\n.pa-header-mobile__panel-scroll {\n flex: 1 1 auto;\n overflow-y: auto;\n display: flex;\n flex-direction: column;\n}\n\n/* Groups (Primary level) */\n\n.pa-header-mobile__group {\n list-style: none;\n margin: 0;\n padding: var(--pa-space-sm) 0;\n display: flex;\n flex-direction: column;\n}\n\n.pa-header-mobile__group--primary {\n background: #ffffff;\n}\n\n.pa-header-mobile__group--secondary {\n background: var(--pa-color-bg-primary-light-40);\n}\n\n.pa-header-mobile__tile-wrap {\n list-style: none;\n}\n\n.pa-header-mobile__tile {\n width: 100%;\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: var(--pa-space-sm);\n padding: var(--pa-space-sm) var(--pa-space-md);\n background: transparent;\n border: 0;\n border-bottom: var(--pa-border-xs) solid var(--pa-color-bg-primary-light-50);\n cursor: pointer;\n text-align: left;\n font-family: inherit;\n}\n\n.pa-header-mobile__tile-label {\n flex: 1 1 0;\n font-size: var(--pa-font-label-sm-size);\n font-weight: var(--pa-font-label-sm-weight);\n line-height: var(--pa-font-label-sm-line-height);\n color: var(--pa-color-text-dark-blue);\n}\n\n.pa-header-mobile__tile:focus-visible {\n outline: var(--pa-border-sm) solid var(--pa-color-accent);\n outline-offset: -2px;\n}\n\n/* Language switcher */\n\n.pa-header-mobile__language {\n background: var(--pa-color-bg-primary-light-40);\n display: flex;\n justify-content: center;\n gap: var(--pa-space-sm);\n padding: var(--pa-space-xs) 0;\n}\n\n.pa-header-mobile__language-pill {\n background: transparent;\n border: 0;\n padding: 4px 8px 0 8px;\n font-family: inherit;\n font-size: 16px;\n line-height: 20px;\n color: var(--pa-color-neutral-gray);\n border-bottom: 4px solid transparent;\n cursor: pointer;\n border-radius: 4px 4px 0 0;\n}\n\n.pa-header-mobile__language-pill--active {\n color: #000000;\n border-bottom-color: #000000;\n}\n\n.pa-header-mobile__language-pill:focus-visible {\n outline: var(--pa-border-sm) solid var(--pa-color-accent);\n outline-offset: 2px;\n}\n\n/* Drill (Secondary level) */\n\n.pa-header-mobile__drill {\n display: flex;\n flex-direction: column;\n flex: 1 1 auto;\n}\n\n.pa-header-mobile__drill--primary {\n background: #ffffff;\n}\n\n.pa-header-mobile__drill--secondary {\n background: var(--pa-color-bg-primary-light-40);\n}\n\n.pa-header-mobile__back {\n display: flex;\n align-items: center;\n gap: var(--pa-space-xs);\n padding: var(--pa-space-md) var(--pa-space-md) 18px;\n background: transparent;\n border: 0;\n font-family: inherit;\n cursor: pointer;\n text-align: left;\n}\n\n.pa-header-mobile__back-label {\n font-size: 20px;\n line-height: 30px;\n font-weight: 600;\n color: var(--pa-color-text-dark-blue);\n}\n\n.pa-header-mobile__back:focus-visible {\n outline: var(--pa-border-sm) solid var(--pa-color-accent);\n outline-offset: -2px;\n}\n\n.pa-header-mobile__drill-children {\n list-style: none;\n margin: 0;\n padding: 0 var(--pa-space-md) var(--pa-space-md);\n display: flex;\n flex-direction: column;\n}\n\n.pa-header-mobile__drill-children .pa-header-mobile__tile {\n padding-left: 0;\n padding-right: 0;\n}\n\n/* Tools card */\n\n.pa-header-mobile__tools-wrap {\n padding: 0 36px;\n}\n\n.pa-header-mobile__tools {\n background: var(--pa-color-bg-primary-light-40);\n border-radius: 4px;\n padding: var(--pa-space-md);\n display: flex;\n flex-direction: column;\n gap: var(--pa-space-sm);\n}\n\n.pa-header-mobile__tools-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: var(--pa-space-sm);\n}\n\n.pa-header-mobile__tools-header-left {\n display: flex;\n align-items: center;\n gap: var(--pa-space-sm);\n}\n\n.pa-header-mobile__tools-heading {\n margin: 0;\n font-size: 24px;\n line-height: 28px;\n letter-spacing: -0.5px;\n font-weight: 700;\n color: var(--pa-color-neutral-gray);\n}\n\n.pa-header-mobile__tools-toggle {\n background: transparent;\n border: 0;\n cursor: pointer;\n display: inline-flex;\n align-items: center;\n padding: 0;\n font-family: inherit;\n}\n\n.pa-header-mobile__tools-toggle-text {\n font-size: 16px;\n line-height: 24px;\n font-weight: 700;\n color: var(--pa-color-primary);\n text-decoration: underline;\n}\n\n.pa-header-mobile__tools-toggle:focus-visible {\n outline: var(--pa-border-sm) solid var(--pa-color-accent);\n outline-offset: 2px;\n}\n\n.pa-header-mobile__tools-body {\n display: flex;\n flex-direction: column;\n gap: var(--pa-space-sm);\n padding-top: 28px;\n}\n\n.pa-header-mobile__tools-text {\n margin: 0;\n font-size: 16px;\n line-height: 20px;\n color: var(--pa-color-neutral-gray);\n}\n\n.pa-header-mobile__tools-links {\n list-style: none;\n margin: 0;\n padding: 0 var(--pa-space-xs);\n display: flex;\n flex-direction: column;\n gap: var(--pa-space-xs);\n}\n\n.pa-header-mobile__tools-link-item {\n display: flex;\n align-items: flex-start;\n gap: 10px;\n}\n\n.pa-header-mobile__tools-bullet {\n width: 8px;\n height: 8px;\n background: var(--pa-color-bg-primary-light-50);\n margin-top: 8px;\n flex-shrink: 0;\n}\n\n.pa-header-mobile__tools-link {\n flex: 1 1 0;\n font-size: 16px;\n line-height: 24px;\n font-weight: 700;\n color: var(--pa-color-text-dark-blue);\n text-decoration: underline;\n}\n\n.pa-header-mobile__tools-link:focus-visible {\n outline: var(--pa-border-sm) solid var(--pa-color-accent);\n outline-offset: 2px;\n}\n\n.pa-header-mobile__tools-cta {\n margin-top: 16px;\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 20px 48px;\n background: var(--pa-color-primary);\n color: #ffffff;\n border-radius: var(--pa-radius-smooth);\n text-decoration: none;\n font-size: 16px;\n line-height: 20px;\n font-weight: 600;\n}\n\n.pa-header-mobile__tools-cta:focus-visible {\n outline: var(--pa-border-sm) solid var(--pa-color-accent);\n outline-offset: 2px;\n}\n\n/* Section link footer */\n\n.pa-header-mobile__section-link-wrap {\n padding: 0 36px;\n margin-top: var(--pa-space-sm);\n}\n\n.pa-header-mobile__section-link {\n display: inline-flex;\n align-items: center;\n gap: var(--pa-space-xs);\n padding: var(--pa-space-sm) 4px;\n font-size: 16px;\n line-height: 20px;\n font-weight: 600;\n color: var(--pa-color-text-dark-blue);\n text-decoration: none;\n border-radius: 4px;\n}\n\n.pa-header-mobile__section-link:focus-visible {\n outline: var(--pa-border-sm) solid var(--pa-color-accent);\n outline-offset: 2px;\n}\n</style>\n"],"names":["mobileUid","nextMobileId","props","__props","emit","__emit","panelId","internalMenuOpen","ref","isMenuOpen","computed","setMenuOpen","next","skipLinkEnabled","skipLinkLabel","skipLinkTarget","menuToggleLabel","userActionLabel","userIconName","drillStack","toolsOpen","currentDrill","isSecondaryLevel","_a","hasChildren","item","tileIndicatesDrill","handleTileClick","event","tier","prevented","payload","popDrill","handleLanguageClick","language","toggleTools","panelRef","menuToggleRef","previouslyFocusedElement","originalBodyOverflow","originalBodyPaddingRight","scrollLockActive","escListenerAttached","FOCUSABLE_SELECTOR","getFocusable","root","onPanelKeydown","focusable","first","last","active","onWindowKeydownEsc","lockScroll","scrollbarWidth","unlockScroll","attachEsc","detachEsc","watch","nextTick","onBeforeUnmount","onMenuToggle","onSearchClick","onUserClick","_openBlock","_createElementBlock","_hoisted_1","_hoisted_2","_createElementVNode","_hoisted_3","_createVNode","PaIcon","_hoisted_5","_renderSlot","_ctx","_hoisted_6","_createBlock","_Teleport","_normalizeClass","_hoisted_10","_hoisted_20","_toDisplayString","_hoisted_21","_Fragment","_renderList","child","idx","_hoisted_23","_hoisted_24","_hoisted_25","_hoisted_26","_hoisted_27","_hoisted_29","_hoisted_30","_hoisted_31","_hoisted_32","link","_hoisted_33","_hoisted_34","_hoisted_35","_hoisted_11","_hoisted_13","_hoisted_14","_hoisted_16","lang","_hoisted_18","_hoisted_37","_hoisted_39","_hoisted_40"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export { default, default as PaHeaderMobile } from './PaHeaderMobile.vue';
2
+ export type { PaHeaderMobileProps, PaHeaderLink, PaHeaderTools, PaHeaderNavItem, PaHeaderLanguage, PaHeaderSkipLinkConfig, PaHeaderNavigateEventPayload, PaHeaderLanguageChangeEventPayload, } from './PaHeaderMobile.vue';
@@ -0,0 +1,6 @@
1
+ import { default as d, default as f } from "./PaHeaderMobile.vue.js";
2
+ export {
3
+ d as PaHeaderMobile,
4
+ f as default
5
+ };
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
@@ -0,0 +1 @@
1
+ export type { PaHeaderLink, PaHeaderTools, PaHeaderNavItem, PaHeaderLanguage, PaHeaderSkipLinkConfig, PaHeaderNavigateEventPayload, PaHeaderLanguageChangeEventPayload, } from './types';
@@ -0,0 +1,2 @@
1
+
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1,43 @@
1
+ import type { PaIconName } from '../PaIcon/PaIcon.vue';
2
+ export interface PaHeaderLink {
3
+ label: string;
4
+ href: string;
5
+ ariaCurrent?: 'page' | 'true' | 'false';
6
+ }
7
+ export interface PaHeaderTools {
8
+ icon: PaIconName;
9
+ heading: string;
10
+ body?: string;
11
+ links?: PaHeaderLink[];
12
+ cta?: {
13
+ label: string;
14
+ href: string;
15
+ };
16
+ }
17
+ export interface PaHeaderNavItem {
18
+ label: string;
19
+ href?: string;
20
+ children?: PaHeaderNavItem[];
21
+ tools?: PaHeaderTools;
22
+ }
23
+ export interface PaHeaderLanguage {
24
+ code: string;
25
+ label: string;
26
+ href?: string;
27
+ }
28
+ export interface PaHeaderSkipLinkConfig {
29
+ label?: string;
30
+ target?: string;
31
+ }
32
+ export interface PaHeaderNavigateEventPayload {
33
+ item: PaHeaderNavItem;
34
+ originalEvent: MouseEvent;
35
+ preventDefault: () => void;
36
+ defaultPrevented: boolean;
37
+ }
38
+ export interface PaHeaderLanguageChangeEventPayload {
39
+ language: PaHeaderLanguage;
40
+ originalEvent: MouseEvent;
41
+ preventDefault: () => void;
42
+ defaultPrevented: boolean;
43
+ }