@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.
- package/LICENSE +190 -0
- package/README.md +166 -0
- package/dist/_virtual/_plugin-vue_export-helper.js +10 -0
- package/dist/_virtual/_plugin-vue_export-helper.js.map +1 -0
- package/dist/components/PaAccordion/PaAccordion.vue.d.ts +26 -0
- package/dist/components/PaAccordion/PaAccordion.vue.js +10 -0
- package/dist/components/PaAccordion/PaAccordion.vue.js.map +1 -0
- package/dist/components/PaAccordion/PaAccordion.vue2.js +80 -0
- package/dist/components/PaAccordion/PaAccordion.vue2.js.map +1 -0
- package/dist/components/PaAccordion/groupKey.d.ts +8 -0
- package/dist/components/PaAccordion/groupKey.js +5 -0
- package/dist/components/PaAccordion/groupKey.js.map +1 -0
- package/dist/components/PaAccordion/index.d.ts +2 -0
- package/dist/components/PaAccordion/index.js +6 -0
- package/dist/components/PaAccordion/index.js.map +1 -0
- package/dist/components/PaAccordionGroup/PaAccordionGroup.vue.d.ts +19 -0
- package/dist/components/PaAccordionGroup/PaAccordionGroup.vue.js +8 -0
- package/dist/components/PaAccordionGroup/PaAccordionGroup.vue.js.map +1 -0
- package/dist/components/PaAccordionGroup/PaAccordionGroup.vue2.js +52 -0
- package/dist/components/PaAccordionGroup/PaAccordionGroup.vue2.js.map +1 -0
- package/dist/components/PaAccordionGroup/index.d.ts +2 -0
- package/dist/components/PaAccordionGroup/index.js +6 -0
- package/dist/components/PaAccordionGroup/index.js.map +1 -0
- package/dist/components/PaBanner/PaBanner.vue.d.ts +27 -0
- package/dist/components/PaBanner/PaBanner.vue.js +12 -0
- package/dist/components/PaBanner/PaBanner.vue.js.map +1 -0
- package/dist/components/PaBanner/PaBanner.vue2.js +79 -0
- package/dist/components/PaBanner/PaBanner.vue2.js.map +1 -0
- package/dist/components/PaBanner/index.d.ts +2 -0
- package/dist/components/PaBanner/index.js +5 -0
- package/dist/components/PaBanner/index.js.map +1 -0
- package/dist/components/PaBreadcrumb/PaBreadcrumb.vue.d.ts +30 -0
- package/dist/components/PaBreadcrumb/PaBreadcrumb.vue.js +8 -0
- package/dist/components/PaBreadcrumb/PaBreadcrumb.vue.js.map +1 -0
- package/dist/components/PaBreadcrumb/PaBreadcrumb.vue2.js +80 -0
- package/dist/components/PaBreadcrumb/PaBreadcrumb.vue2.js.map +1 -0
- package/dist/components/PaBreadcrumb/index.d.ts +2 -0
- package/dist/components/PaBreadcrumb/index.js +6 -0
- package/dist/components/PaBreadcrumb/index.js.map +1 -0
- package/dist/components/PaButton/PaButton.vue.d.ts +41 -0
- package/dist/components/PaButton/PaButton.vue.js +8 -0
- package/dist/components/PaButton/PaButton.vue.js.map +1 -0
- package/dist/components/PaButton/PaButton.vue2.js +37 -0
- package/dist/components/PaButton/PaButton.vue2.js.map +1 -0
- package/dist/components/PaButton/index.d.ts +2 -0
- package/dist/components/PaButton/index.js +6 -0
- package/dist/components/PaButton/index.js.map +1 -0
- package/dist/components/PaCard/PaCard.vue.d.ts +45 -0
- package/dist/components/PaCard/PaCard.vue.js +8 -0
- package/dist/components/PaCard/PaCard.vue.js.map +1 -0
- package/dist/components/PaCard/PaCard.vue2.js +135 -0
- package/dist/components/PaCard/PaCard.vue2.js.map +1 -0
- package/dist/components/PaCard/index.d.ts +2 -0
- package/dist/components/PaCard/index.js +6 -0
- package/dist/components/PaCard/index.js.map +1 -0
- package/dist/components/PaCarousel/PaCarousel.vue.d.ts +27 -0
- package/dist/components/PaCarousel/PaCarousel.vue.js +8 -0
- package/dist/components/PaCarousel/PaCarousel.vue.js.map +1 -0
- package/dist/components/PaCarousel/PaCarousel.vue2.js +215 -0
- package/dist/components/PaCarousel/PaCarousel.vue2.js.map +1 -0
- package/dist/components/PaCarousel/index.d.ts +2 -0
- package/dist/components/PaCarousel/index.js +5 -0
- package/dist/components/PaCarousel/index.js.map +1 -0
- package/dist/components/PaCheckbox/PaCheckbox.vue.d.ts +29 -0
- package/dist/components/PaCheckbox/PaCheckbox.vue.js +10 -0
- package/dist/components/PaCheckbox/PaCheckbox.vue.js.map +1 -0
- package/dist/components/PaCheckbox/PaCheckbox.vue2.js +89 -0
- package/dist/components/PaCheckbox/PaCheckbox.vue2.js.map +1 -0
- package/dist/components/PaCheckbox/index.d.ts +2 -0
- package/dist/components/PaCheckbox/index.js +6 -0
- package/dist/components/PaCheckbox/index.js.map +1 -0
- package/dist/components/PaCheckboxGroup/PaCheckboxGroup.vue.d.ts +32 -0
- package/dist/components/PaCheckboxGroup/PaCheckboxGroup.vue.js +10 -0
- package/dist/components/PaCheckboxGroup/PaCheckboxGroup.vue.js.map +1 -0
- package/dist/components/PaCheckboxGroup/PaCheckboxGroup.vue2.js +89 -0
- package/dist/components/PaCheckboxGroup/PaCheckboxGroup.vue2.js.map +1 -0
- package/dist/components/PaCheckboxGroup/index.d.ts +2 -0
- package/dist/components/PaCheckboxGroup/index.js +6 -0
- package/dist/components/PaCheckboxGroup/index.js.map +1 -0
- package/dist/components/PaChip/PaChip.vue.d.ts +23 -0
- package/dist/components/PaChip/PaChip.vue.js +8 -0
- package/dist/components/PaChip/PaChip.vue.js.map +1 -0
- package/dist/components/PaChip/PaChip.vue2.js +75 -0
- package/dist/components/PaChip/PaChip.vue2.js.map +1 -0
- package/dist/components/PaChip/index.d.ts +2 -0
- package/dist/components/PaChip/index.js +6 -0
- package/dist/components/PaChip/index.js.map +1 -0
- package/dist/components/PaDatePicker/PaDatePicker.vue.d.ts +60 -0
- package/dist/components/PaDatePicker/PaDatePicker.vue.js +10 -0
- package/dist/components/PaDatePicker/PaDatePicker.vue.js.map +1 -0
- package/dist/components/PaDatePicker/PaDatePicker.vue2.js +229 -0
- package/dist/components/PaDatePicker/PaDatePicker.vue2.js.map +1 -0
- package/dist/components/PaDatePicker/index.d.ts +1 -0
- package/dist/components/PaDatePicker/index.js +6 -0
- package/dist/components/PaDatePicker/index.js.map +1 -0
- package/dist/components/PaDrawer/PaDrawer.vue.d.ts +36 -0
- package/dist/components/PaDrawer/PaDrawer.vue.js +8 -0
- package/dist/components/PaDrawer/PaDrawer.vue.js.map +1 -0
- package/dist/components/PaDrawer/PaDrawer.vue2.js +161 -0
- package/dist/components/PaDrawer/PaDrawer.vue2.js.map +1 -0
- package/dist/components/PaDrawer/PaDrawerInfoRow.vue.d.ts +24 -0
- package/dist/components/PaDrawer/PaDrawerInfoRow.vue.js +8 -0
- package/dist/components/PaDrawer/PaDrawerInfoRow.vue.js.map +1 -0
- package/dist/components/PaDrawer/PaDrawerInfoRow.vue2.js +75 -0
- package/dist/components/PaDrawer/PaDrawerInfoRow.vue2.js.map +1 -0
- package/dist/components/PaDrawer/index.d.ts +4 -0
- package/dist/components/PaDrawer/index.js +8 -0
- package/dist/components/PaDrawer/index.js.map +1 -0
- package/dist/components/PaFab/PaFab.vue.d.ts +18 -0
- package/dist/components/PaFab/PaFab.vue.js +10 -0
- package/dist/components/PaFab/PaFab.vue.js.map +1 -0
- package/dist/components/PaFab/PaFab.vue2.js +44 -0
- package/dist/components/PaFab/PaFab.vue2.js.map +1 -0
- package/dist/components/PaFab/index.d.ts +2 -0
- package/dist/components/PaFab/index.js +6 -0
- package/dist/components/PaFab/index.js.map +1 -0
- package/dist/components/PaFileUpload/PaFileUpload.vue.d.ts +40 -0
- package/dist/components/PaFileUpload/PaFileUpload.vue.js +10 -0
- package/dist/components/PaFileUpload/PaFileUpload.vue.js.map +1 -0
- package/dist/components/PaFileUpload/PaFileUpload.vue2.js +164 -0
- package/dist/components/PaFileUpload/PaFileUpload.vue2.js.map +1 -0
- package/dist/components/PaFileUpload/index.d.ts +2 -0
- package/dist/components/PaFileUpload/index.js +6 -0
- package/dist/components/PaFileUpload/index.js.map +1 -0
- package/dist/components/PaFooter/PaFooter.vue.d.ts +67 -0
- package/dist/components/PaFooter/PaFooter.vue.js +8 -0
- package/dist/components/PaFooter/PaFooter.vue.js.map +1 -0
- package/dist/components/PaFooter/PaFooter.vue2.js +226 -0
- package/dist/components/PaFooter/PaFooter.vue2.js.map +1 -0
- package/dist/components/PaFooter/index.d.ts +2 -0
- package/dist/components/PaFooter/index.js +6 -0
- package/dist/components/PaFooter/index.js.map +1 -0
- package/dist/components/PaHeaderDesktop/PaHeaderDesktop.vue.d.ts +70 -0
- package/dist/components/PaHeaderDesktop/PaHeaderDesktop.vue.js +8 -0
- package/dist/components/PaHeaderDesktop/PaHeaderDesktop.vue.js.map +1 -0
- package/dist/components/PaHeaderDesktop/PaHeaderDesktop.vue2.js +337 -0
- package/dist/components/PaHeaderDesktop/PaHeaderDesktop.vue2.js.map +1 -0
- package/dist/components/PaHeaderDesktop/index.d.ts +2 -0
- package/dist/components/PaHeaderDesktop/index.js +6 -0
- package/dist/components/PaHeaderDesktop/index.js.map +1 -0
- package/dist/components/PaHeaderMobile/PaHeaderMobile.vue.d.ts +71 -0
- package/dist/components/PaHeaderMobile/PaHeaderMobile.vue.js +8 -0
- package/dist/components/PaHeaderMobile/PaHeaderMobile.vue.js.map +1 -0
- package/dist/components/PaHeaderMobile/PaHeaderMobile.vue2.js +472 -0
- package/dist/components/PaHeaderMobile/PaHeaderMobile.vue2.js.map +1 -0
- package/dist/components/PaHeaderMobile/index.d.ts +2 -0
- package/dist/components/PaHeaderMobile/index.js +6 -0
- package/dist/components/PaHeaderMobile/index.js.map +1 -0
- package/dist/components/PaHeaderShared/index.d.ts +1 -0
- package/dist/components/PaHeaderShared/index.js +2 -0
- package/dist/components/PaHeaderShared/index.js.map +1 -0
- package/dist/components/PaHeaderShared/types.d.ts +43 -0
- package/dist/components/PaHero/PaHero.vue.d.ts +36 -0
- package/dist/components/PaHero/PaHero.vue.js +8 -0
- package/dist/components/PaHero/PaHero.vue.js.map +1 -0
- package/dist/components/PaHero/PaHero.vue2.js +101 -0
- package/dist/components/PaHero/PaHero.vue2.js.map +1 -0
- package/dist/components/PaHero/index.d.ts +2 -0
- package/dist/components/PaHero/index.js +6 -0
- package/dist/components/PaHero/index.js.map +1 -0
- package/dist/components/PaIcon/PaIcon.vue.d.ts +8342 -0
- package/dist/components/PaIcon/PaIcon.vue.js +163 -0
- package/dist/components/PaIcon/PaIcon.vue.js.map +1 -0
- package/dist/components/PaIcon/PaIcon.vue2.js +8 -0
- package/dist/components/PaIcon/PaIcon.vue2.js.map +1 -0
- package/dist/components/PaIcon/index.d.ts +2 -0
- package/dist/components/PaIcon/index.js +6 -0
- package/dist/components/PaIcon/index.js.map +1 -0
- package/dist/components/PaImage/PaImage.vue.d.ts +10 -0
- package/dist/components/PaImage/PaImage.vue.js +10 -0
- package/dist/components/PaImage/PaImage.vue.js.map +1 -0
- package/dist/components/PaImage/PaImage.vue2.js +44 -0
- package/dist/components/PaImage/PaImage.vue2.js.map +1 -0
- package/dist/components/PaImage/gridKey.d.ts +6 -0
- package/dist/components/PaImage/gridKey.js +5 -0
- package/dist/components/PaImage/gridKey.js.map +1 -0
- package/dist/components/PaImage/index.d.ts +2 -0
- package/dist/components/PaImage/index.js +6 -0
- package/dist/components/PaImage/index.js.map +1 -0
- package/dist/components/PaImageGrid/PaImageGrid.vue.d.ts +18 -0
- package/dist/components/PaImageGrid/PaImageGrid.vue.js +8 -0
- package/dist/components/PaImageGrid/PaImageGrid.vue.js.map +1 -0
- package/dist/components/PaImageGrid/PaImageGrid.vue2.js +28 -0
- package/dist/components/PaImageGrid/PaImageGrid.vue2.js.map +1 -0
- package/dist/components/PaImageGrid/index.d.ts +2 -0
- package/dist/components/PaImageGrid/index.js +6 -0
- package/dist/components/PaImageGrid/index.js.map +1 -0
- package/dist/components/PaInput/PaInput.vue.d.ts +54 -0
- package/dist/components/PaInput/PaInput.vue.js +10 -0
- package/dist/components/PaInput/PaInput.vue.js.map +1 -0
- package/dist/components/PaInput/PaInput.vue2.js +201 -0
- package/dist/components/PaInput/PaInput.vue2.js.map +1 -0
- package/dist/components/PaInput/index.d.ts +2 -0
- package/dist/components/PaInput/index.js +6 -0
- package/dist/components/PaInput/index.js.map +1 -0
- package/dist/components/PaModal/PaModal.vue.d.ts +35 -0
- package/dist/components/PaModal/PaModal.vue.js +8 -0
- package/dist/components/PaModal/PaModal.vue.js.map +1 -0
- package/dist/components/PaModal/PaModal.vue2.js +155 -0
- package/dist/components/PaModal/PaModal.vue2.js.map +1 -0
- package/dist/components/PaModal/index.d.ts +2 -0
- package/dist/components/PaModal/index.js +5 -0
- package/dist/components/PaModal/index.js.map +1 -0
- package/dist/components/PaMonthPicker/PaMonthPicker.vue.d.ts +59 -0
- package/dist/components/PaMonthPicker/PaMonthPicker.vue.js +10 -0
- package/dist/components/PaMonthPicker/PaMonthPicker.vue.js.map +1 -0
- package/dist/components/PaMonthPicker/PaMonthPicker.vue2.js +314 -0
- package/dist/components/PaMonthPicker/PaMonthPicker.vue2.js.map +1 -0
- package/dist/components/PaMonthPicker/index.d.ts +1 -0
- package/dist/components/PaMonthPicker/index.js +6 -0
- package/dist/components/PaMonthPicker/index.js.map +1 -0
- package/dist/components/PaPagination/PaPagination.vue.d.ts +39 -0
- package/dist/components/PaPagination/PaPagination.vue.js +8 -0
- package/dist/components/PaPagination/PaPagination.vue.js.map +1 -0
- package/dist/components/PaPagination/PaPagination.vue2.js +202 -0
- package/dist/components/PaPagination/PaPagination.vue2.js.map +1 -0
- package/dist/components/PaPagination/index.d.ts +2 -0
- package/dist/components/PaPagination/index.js +6 -0
- package/dist/components/PaPagination/index.js.map +1 -0
- package/dist/components/PaPagination/usePageWindow.d.ts +2 -0
- package/dist/components/PaPagination/usePageWindow.js +19 -0
- package/dist/components/PaPagination/usePageWindow.js.map +1 -0
- package/dist/components/PaProgressBar/PaProgressBar.vue.d.ts +13 -0
- package/dist/components/PaProgressBar/PaProgressBar.vue.js +8 -0
- package/dist/components/PaProgressBar/PaProgressBar.vue.js.map +1 -0
- package/dist/components/PaProgressBar/PaProgressBar.vue2.js +46 -0
- package/dist/components/PaProgressBar/PaProgressBar.vue2.js.map +1 -0
- package/dist/components/PaProgressBar/index.d.ts +2 -0
- package/dist/components/PaProgressBar/index.js +5 -0
- package/dist/components/PaProgressBar/index.js.map +1 -0
- package/dist/components/PaRadioGroup/PaRadioGroup.vue.d.ts +32 -0
- package/dist/components/PaRadioGroup/PaRadioGroup.vue.js +10 -0
- package/dist/components/PaRadioGroup/PaRadioGroup.vue.js.map +1 -0
- package/dist/components/PaRadioGroup/PaRadioGroup.vue2.js +94 -0
- package/dist/components/PaRadioGroup/PaRadioGroup.vue2.js.map +1 -0
- package/dist/components/PaRadioGroup/index.d.ts +2 -0
- package/dist/components/PaRadioGroup/index.js +6 -0
- package/dist/components/PaRadioGroup/index.js.map +1 -0
- package/dist/components/PaRangePicker/PaRangePicker.vue.d.ts +64 -0
- package/dist/components/PaRangePicker/PaRangePicker.vue.js +10 -0
- package/dist/components/PaRangePicker/PaRangePicker.vue.js.map +1 -0
- package/dist/components/PaRangePicker/PaRangePicker.vue2.js +281 -0
- package/dist/components/PaRangePicker/PaRangePicker.vue2.js.map +1 -0
- package/dist/components/PaRangePicker/index.d.ts +2 -0
- package/dist/components/PaRangePicker/index.js +6 -0
- package/dist/components/PaRangePicker/index.js.map +1 -0
- package/dist/components/PaSearchBar/PaSearchBar.vue.d.ts +37 -0
- package/dist/components/PaSearchBar/PaSearchBar.vue.js +10 -0
- package/dist/components/PaSearchBar/PaSearchBar.vue.js.map +1 -0
- package/dist/components/PaSearchBar/PaSearchBar.vue2.js +271 -0
- package/dist/components/PaSearchBar/PaSearchBar.vue2.js.map +1 -0
- package/dist/components/PaSearchBar/index.d.ts +2 -0
- package/dist/components/PaSearchBar/index.js +6 -0
- package/dist/components/PaSearchBar/index.js.map +1 -0
- package/dist/components/PaSelect/PaSelect.vue.d.ts +39 -0
- package/dist/components/PaSelect/PaSelect.vue.js +10 -0
- package/dist/components/PaSelect/PaSelect.vue.js.map +1 -0
- package/dist/components/PaSelect/PaSelect.vue2.js +107 -0
- package/dist/components/PaSelect/PaSelect.vue2.js.map +1 -0
- package/dist/components/PaSelect/index.d.ts +2 -0
- package/dist/components/PaSelect/index.js +6 -0
- package/dist/components/PaSelect/index.js.map +1 -0
- package/dist/components/PaStepProgressBar/PaStepProgressBar.vue.d.ts +33 -0
- package/dist/components/PaStepProgressBar/PaStepProgressBar.vue.js +10 -0
- package/dist/components/PaStepProgressBar/PaStepProgressBar.vue.js.map +1 -0
- package/dist/components/PaStepProgressBar/PaStepProgressBar.vue2.js +116 -0
- package/dist/components/PaStepProgressBar/PaStepProgressBar.vue2.js.map +1 -0
- package/dist/components/PaStepProgressBar/index.d.ts +2 -0
- package/dist/components/PaStepProgressBar/index.js +5 -0
- package/dist/components/PaStepProgressBar/index.js.map +1 -0
- package/dist/components/PaTab/PaTab.vue.d.ts +19 -0
- package/dist/components/PaTab/PaTab.vue.js +8 -0
- package/dist/components/PaTab/PaTab.vue.js.map +1 -0
- package/dist/components/PaTab/PaTab.vue2.js +44 -0
- package/dist/components/PaTab/PaTab.vue2.js.map +1 -0
- package/dist/components/PaTab/index.d.ts +2 -0
- package/dist/components/PaTab/index.js +5 -0
- package/dist/components/PaTab/index.js.map +1 -0
- package/dist/components/PaTable/PaTable.vue.d.ts +40 -0
- package/dist/components/PaTable/PaTable.vue.js +8 -0
- package/dist/components/PaTable/PaTable.vue.js.map +1 -0
- package/dist/components/PaTable/PaTable.vue2.js +95 -0
- package/dist/components/PaTable/PaTable.vue2.js.map +1 -0
- package/dist/components/PaTable/index.d.ts +2 -0
- package/dist/components/PaTable/index.js +5 -0
- package/dist/components/PaTable/index.js.map +1 -0
- package/dist/components/PaTabs/PaTabs.vue.d.ts +47 -0
- package/dist/components/PaTabs/PaTabs.vue.js +10 -0
- package/dist/components/PaTabs/PaTabs.vue.js.map +1 -0
- package/dist/components/PaTabs/PaTabs.vue2.js +154 -0
- package/dist/components/PaTabs/PaTabs.vue2.js.map +1 -0
- package/dist/components/PaTabs/index.d.ts +2 -0
- package/dist/components/PaTabs/index.js +5 -0
- package/dist/components/PaTabs/index.js.map +1 -0
- package/dist/components/PaTag/PaTag.vue.d.ts +11 -0
- package/dist/components/PaTag/PaTag.vue.js +8 -0
- package/dist/components/PaTag/PaTag.vue.js.map +1 -0
- package/dist/components/PaTag/PaTag.vue2.js +27 -0
- package/dist/components/PaTag/PaTag.vue2.js.map +1 -0
- package/dist/components/PaTag/index.d.ts +2 -0
- package/dist/components/PaTag/index.js +6 -0
- package/dist/components/PaTag/index.js.map +1 -0
- package/dist/components/PaTextarea/PaTextarea.vue.d.ts +37 -0
- package/dist/components/PaTextarea/PaTextarea.vue.js +10 -0
- package/dist/components/PaTextarea/PaTextarea.vue.js.map +1 -0
- package/dist/components/PaTextarea/PaTextarea.vue2.js +104 -0
- package/dist/components/PaTextarea/PaTextarea.vue2.js.map +1 -0
- package/dist/components/PaTextarea/index.d.ts +2 -0
- package/dist/components/PaTextarea/index.js +6 -0
- package/dist/components/PaTextarea/index.js.map +1 -0
- package/dist/components/PaTimePicker/PaTimePicker.vue.d.ts +63 -0
- package/dist/components/PaTimePicker/PaTimePicker.vue.js +10 -0
- package/dist/components/PaTimePicker/PaTimePicker.vue.js.map +1 -0
- package/dist/components/PaTimePicker/PaTimePicker.vue2.js +421 -0
- package/dist/components/PaTimePicker/PaTimePicker.vue2.js.map +1 -0
- package/dist/components/PaTimePicker/index.d.ts +2 -0
- package/dist/components/PaTimePicker/index.js +6 -0
- package/dist/components/PaTimePicker/index.js.map +1 -0
- package/dist/components/PaTitleBar/PaTitleBar.vue.d.ts +36 -0
- package/dist/components/PaTitleBar/PaTitleBar.vue.js +8 -0
- package/dist/components/PaTitleBar/PaTitleBar.vue.js.map +1 -0
- package/dist/components/PaTitleBar/PaTitleBar.vue2.js +178 -0
- package/dist/components/PaTitleBar/PaTitleBar.vue2.js.map +1 -0
- package/dist/components/PaTitleBar/index.d.ts +2 -0
- package/dist/components/PaTitleBar/index.js +6 -0
- package/dist/components/PaTitleBar/index.js.map +1 -0
- package/dist/components/PaToggle/PaToggle.vue.d.ts +27 -0
- package/dist/components/PaToggle/PaToggle.vue.js +10 -0
- package/dist/components/PaToggle/PaToggle.vue.js.map +1 -0
- package/dist/components/PaToggle/PaToggle.vue2.js +79 -0
- package/dist/components/PaToggle/PaToggle.vue2.js.map +1 -0
- package/dist/components/PaToggle/index.d.ts +2 -0
- package/dist/components/PaToggle/index.js +6 -0
- package/dist/components/PaToggle/index.js.map +1 -0
- package/dist/components/PaYearPicker/PaYearPicker.vue.d.ts +59 -0
- package/dist/components/PaYearPicker/PaYearPicker.vue.js +10 -0
- package/dist/components/PaYearPicker/PaYearPicker.vue.js.map +1 -0
- package/dist/components/PaYearPicker/PaYearPicker.vue2.js +307 -0
- package/dist/components/PaYearPicker/PaYearPicker.vue2.js.map +1 -0
- package/dist/components/PaYearPicker/index.d.ts +1 -0
- package/dist/components/PaYearPicker/index.js +6 -0
- package/dist/components/PaYearPicker/index.js.map +1 -0
- package/dist/fonts/Inter-OFL.txt +92 -0
- package/dist/fonts/InterVariable.woff2 +0 -0
- package/dist/fonts/RobotoMono-OFL.txt +93 -0
- package/dist/fonts/RobotoMono-VariableFont.woff2 +0 -0
- package/dist/index.d.ts +78 -0
- package/dist/index.js +85 -0
- package/dist/index.js.map +1 -0
- package/dist/style.css +1 -0
- package/dist/tokens.css +260 -0
- package/package.json +73 -0
|
@@ -0,0 +1,314 @@
|
|
|
1
|
+
import { defineComponent as le, useModel as ie, ref as h, computed as o, watch as ue, onBeforeUnmount as se, openBlock as v, createElementBlock as f, normalizeClass as g, createTextVNode as de, toDisplayString as b, createCommentVNode as k, withKeys as S, withModifiers as q, createElementVNode as d, renderSlot as ce, createVNode as Y, withDirectives as ve, Fragment as fe, renderList as pe, vShow as me, mergeModels as he, nextTick as j } from "vue";
|
|
2
|
+
import B from "../PaIcon/PaIcon.vue.js";
|
|
3
|
+
const ge = ["for"], be = {
|
|
4
|
+
key: 0,
|
|
5
|
+
class: "pa-month-picker__required",
|
|
6
|
+
"aria-hidden": "true"
|
|
7
|
+
}, ke = ["id", "disabled", "aria-expanded", "aria-required", "aria-invalid", "aria-readonly", "aria-describedby", "onKeydown"], ye = { class: "pa-month-picker__value" }, we = ["name", "value", "disabled", "readonly", "required"], De = { class: "pa-month-picker__header" }, _e = {
|
|
8
|
+
class: "pa-month-picker__year-label",
|
|
9
|
+
"aria-live": "polite"
|
|
10
|
+
}, Me = ["disabled", "tabindex", "aria-pressed", "onClick", "onKeydown"], Te = ["id"];
|
|
11
|
+
let Ae = 0;
|
|
12
|
+
function Ee() {
|
|
13
|
+
return `pa-month-picker-${++Ae}`;
|
|
14
|
+
}
|
|
15
|
+
const Se = /* @__PURE__ */ le({
|
|
16
|
+
__name: "PaMonthPicker",
|
|
17
|
+
props: /* @__PURE__ */ he({
|
|
18
|
+
display: { default: "popover" },
|
|
19
|
+
placeholder: { default: "mese / aaaa" },
|
|
20
|
+
label: {},
|
|
21
|
+
required: { type: Boolean, default: !1 },
|
|
22
|
+
helperText: {},
|
|
23
|
+
error: { type: [String, Boolean], default: !1 },
|
|
24
|
+
valid: { type: Boolean, default: !1 },
|
|
25
|
+
disabled: { type: Boolean, default: !1 },
|
|
26
|
+
readonly: { type: Boolean, default: !1 },
|
|
27
|
+
id: {},
|
|
28
|
+
name: {},
|
|
29
|
+
min: { default: null },
|
|
30
|
+
max: { default: null },
|
|
31
|
+
disabledMonths: { type: Function, default: void 0 }
|
|
32
|
+
}, {
|
|
33
|
+
modelValue: { default: null },
|
|
34
|
+
modelModifiers: {}
|
|
35
|
+
}),
|
|
36
|
+
emits: ["update:modelValue"],
|
|
37
|
+
setup(t) {
|
|
38
|
+
const n = t, i = ie(t, "modelValue"), _ = h(null), C = h(null), L = h(null), u = h(!1), P = `pa-month-picker-pop-${Math.random().toString(36).slice(2, 9)}`, J = Ee(), M = o(() => n.id ?? J), $ = o(() => `${M.value}-msg`), Q = [
|
|
39
|
+
"Gennaio",
|
|
40
|
+
"Febbraio",
|
|
41
|
+
"Marzo",
|
|
42
|
+
"Aprile",
|
|
43
|
+
"Maggio",
|
|
44
|
+
"Giugno",
|
|
45
|
+
"Luglio",
|
|
46
|
+
"Agosto",
|
|
47
|
+
"Settembre",
|
|
48
|
+
"Ottobre",
|
|
49
|
+
"Novembre",
|
|
50
|
+
"Dicembre"
|
|
51
|
+
], c = h(
|
|
52
|
+
i.value instanceof Date ? i.value.getFullYear() : (/* @__PURE__ */ new Date()).getFullYear()
|
|
53
|
+
), X = new Intl.DateTimeFormat("it-IT", {
|
|
54
|
+
month: "long",
|
|
55
|
+
year: "numeric"
|
|
56
|
+
}), Z = o(() => {
|
|
57
|
+
const e = i.value;
|
|
58
|
+
if (!(e instanceof Date) || isNaN(e.getTime())) return n.placeholder;
|
|
59
|
+
const a = X.format(e);
|
|
60
|
+
return a.charAt(0).toUpperCase() + a.slice(1);
|
|
61
|
+
}), ee = o(() => !(i.value instanceof Date)), p = o(() => !!n.error), V = o(() => n.valid && !p.value), ae = o(
|
|
62
|
+
() => typeof n.error == "string" && n.error.length > 0 ? n.error : null
|
|
63
|
+
), te = o(
|
|
64
|
+
() => !p.value && n.helperText ? n.helperText : null
|
|
65
|
+
), T = o(() => ae.value ?? te.value), ne = o(() => {
|
|
66
|
+
const e = i.value;
|
|
67
|
+
if (!(e instanceof Date) || isNaN(e.getTime())) return "";
|
|
68
|
+
const a = e.getFullYear(), r = String(e.getMonth() + 1).padStart(2, "0");
|
|
69
|
+
return `${a}-${r}`;
|
|
70
|
+
});
|
|
71
|
+
function I(e) {
|
|
72
|
+
return new Date(e.getFullYear(), e.getMonth(), 1, 0, 0, 0, 0);
|
|
73
|
+
}
|
|
74
|
+
const K = o(
|
|
75
|
+
() => n.min ? I(n.min) : null
|
|
76
|
+
), R = o(
|
|
77
|
+
() => n.max ? I(n.max) : null
|
|
78
|
+
);
|
|
79
|
+
function x(e) {
|
|
80
|
+
const a = new Date(c.value, e, 1, 0, 0, 0, 0);
|
|
81
|
+
return K.value && a.getTime() < K.value.getTime() || R.value && a.getTime() > R.value.getTime() ? !0 : n.disabledMonths ? n.disabledMonths(a) === !0 : !1;
|
|
82
|
+
}
|
|
83
|
+
const m = o(
|
|
84
|
+
() => Array.from({ length: 12 }, (e, a) => x(a))
|
|
85
|
+
), z = o(() => {
|
|
86
|
+
const e = i.value;
|
|
87
|
+
return !(e instanceof Date) || isNaN(e.getTime()) || e.getFullYear() !== c.value ? null : e.getMonth();
|
|
88
|
+
});
|
|
89
|
+
function U() {
|
|
90
|
+
u.value || n.disabled || n.readonly || (c.value = i.value instanceof Date ? i.value.getFullYear() : (/* @__PURE__ */ new Date()).getFullYear(), u.value = !0);
|
|
91
|
+
}
|
|
92
|
+
function y(e = !0) {
|
|
93
|
+
var a;
|
|
94
|
+
u.value && (u.value = !1, e && ((a = C.value) == null || a.focus()));
|
|
95
|
+
}
|
|
96
|
+
function A() {
|
|
97
|
+
n.disabled || n.readonly || (u.value ? y() : U());
|
|
98
|
+
}
|
|
99
|
+
function G() {
|
|
100
|
+
c.value -= 1;
|
|
101
|
+
}
|
|
102
|
+
function H() {
|
|
103
|
+
c.value += 1;
|
|
104
|
+
}
|
|
105
|
+
function re(e) {
|
|
106
|
+
n.readonly || x(e) || (i.value = new Date(c.value, e, 1, 0, 0, 0, 0), n.display === "popover" && y());
|
|
107
|
+
}
|
|
108
|
+
function E(e) {
|
|
109
|
+
var s, W;
|
|
110
|
+
const a = (s = L.value) == null ? void 0 : s.querySelectorAll(
|
|
111
|
+
".pa-month-picker__tile"
|
|
112
|
+
);
|
|
113
|
+
if (!a || a.length === 0) return;
|
|
114
|
+
const r = a.length, l = (e % r + r) % r;
|
|
115
|
+
(W = a[l]) == null || W.focus();
|
|
116
|
+
}
|
|
117
|
+
function O(e, a) {
|
|
118
|
+
for (let l = 1; l <= 12; l++) {
|
|
119
|
+
const s = ((e + a * l) % 12 + 12) % 12;
|
|
120
|
+
if (!m.value[s]) return s;
|
|
121
|
+
}
|
|
122
|
+
return -1;
|
|
123
|
+
}
|
|
124
|
+
function w(e, a) {
|
|
125
|
+
const r = O(e, a);
|
|
126
|
+
r >= 0 && E(r);
|
|
127
|
+
}
|
|
128
|
+
function D(e, a) {
|
|
129
|
+
if (!m.value[e]) {
|
|
130
|
+
E(e);
|
|
131
|
+
return;
|
|
132
|
+
}
|
|
133
|
+
const r = O(e, a);
|
|
134
|
+
r >= 0 && E(r);
|
|
135
|
+
}
|
|
136
|
+
function oe(e, a) {
|
|
137
|
+
switch (e.key) {
|
|
138
|
+
case "ArrowRight":
|
|
139
|
+
e.preventDefault(), w(a, 1);
|
|
140
|
+
break;
|
|
141
|
+
case "ArrowLeft":
|
|
142
|
+
e.preventDefault(), w(a, -1);
|
|
143
|
+
break;
|
|
144
|
+
case "ArrowDown":
|
|
145
|
+
e.preventDefault(), w(a, 3);
|
|
146
|
+
break;
|
|
147
|
+
case "ArrowUp":
|
|
148
|
+
e.preventDefault(), w(a, -3);
|
|
149
|
+
break;
|
|
150
|
+
case "Home":
|
|
151
|
+
e.preventDefault(), D(0, 1);
|
|
152
|
+
break;
|
|
153
|
+
case "End":
|
|
154
|
+
e.preventDefault(), D(11, -1);
|
|
155
|
+
break;
|
|
156
|
+
case "PageDown":
|
|
157
|
+
e.preventDefault(), H(), j(() => D(a, 1));
|
|
158
|
+
break;
|
|
159
|
+
case "PageUp":
|
|
160
|
+
e.preventDefault(), G(), j(() => D(a, 1));
|
|
161
|
+
break;
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
function F(e) {
|
|
165
|
+
_.value && (_.value.contains(e.target) || y(!1));
|
|
166
|
+
}
|
|
167
|
+
function N(e) {
|
|
168
|
+
e.key === "Escape" && (e.preventDefault(), y());
|
|
169
|
+
}
|
|
170
|
+
return ue(u, (e) => {
|
|
171
|
+
e ? (document.addEventListener("mousedown", F), window.addEventListener("keydown", N)) : (document.removeEventListener("mousedown", F), window.removeEventListener("keydown", N));
|
|
172
|
+
}), se(() => {
|
|
173
|
+
document.removeEventListener("mousedown", F), window.removeEventListener("keydown", N);
|
|
174
|
+
}), (e, a) => (v(), f("div", {
|
|
175
|
+
ref_key: "rootRef",
|
|
176
|
+
ref: _,
|
|
177
|
+
class: g([
|
|
178
|
+
"pa-month-picker",
|
|
179
|
+
`pa-month-picker--${t.display}`,
|
|
180
|
+
{
|
|
181
|
+
"pa-month-picker--open": u.value,
|
|
182
|
+
"pa-month-picker--disabled": t.disabled,
|
|
183
|
+
"pa-month-picker--readonly": t.readonly,
|
|
184
|
+
"pa-month-picker--error": p.value,
|
|
185
|
+
"pa-month-picker--valid": V.value
|
|
186
|
+
}
|
|
187
|
+
])
|
|
188
|
+
}, [
|
|
189
|
+
t.label ? (v(), f("label", {
|
|
190
|
+
key: 0,
|
|
191
|
+
for: M.value,
|
|
192
|
+
class: "pa-month-picker__label"
|
|
193
|
+
}, [
|
|
194
|
+
de(b(t.label), 1),
|
|
195
|
+
t.required ? (v(), f("span", be, "*")) : k("", !0)
|
|
196
|
+
], 8, ge)) : k("", !0),
|
|
197
|
+
t.display === "popover" ? (v(), f("button", {
|
|
198
|
+
key: 1,
|
|
199
|
+
id: M.value,
|
|
200
|
+
ref_key: "triggerRef",
|
|
201
|
+
ref: C,
|
|
202
|
+
type: "button",
|
|
203
|
+
class: g([
|
|
204
|
+
"pa-month-picker__trigger",
|
|
205
|
+
{
|
|
206
|
+
"pa-month-picker__trigger--placeholder": ee.value,
|
|
207
|
+
"pa-month-picker__trigger--disabled": t.disabled,
|
|
208
|
+
"pa-month-picker__trigger--readonly": t.readonly && !t.disabled,
|
|
209
|
+
"pa-month-picker__trigger--error": p.value && !t.disabled,
|
|
210
|
+
"pa-month-picker__trigger--valid": V.value && !t.disabled
|
|
211
|
+
}
|
|
212
|
+
]),
|
|
213
|
+
disabled: t.disabled,
|
|
214
|
+
"aria-expanded": u.value,
|
|
215
|
+
"aria-haspopup": "dialog",
|
|
216
|
+
"aria-controls": P,
|
|
217
|
+
"aria-required": t.required || void 0,
|
|
218
|
+
"aria-invalid": p.value || void 0,
|
|
219
|
+
"aria-readonly": t.readonly || void 0,
|
|
220
|
+
"aria-describedby": T.value ? $.value : void 0,
|
|
221
|
+
onClick: A,
|
|
222
|
+
onKeydown: [
|
|
223
|
+
S(q(A, ["prevent"]), ["enter"]),
|
|
224
|
+
S(q(A, ["prevent"]), ["space"]),
|
|
225
|
+
S(q(U, ["prevent"]), ["down"])
|
|
226
|
+
]
|
|
227
|
+
}, [
|
|
228
|
+
d("span", ye, b(Z.value), 1),
|
|
229
|
+
ce(e.$slots, "suffix", {}, () => [
|
|
230
|
+
Y(B, {
|
|
231
|
+
name: "calendar-blank",
|
|
232
|
+
size: "md"
|
|
233
|
+
})
|
|
234
|
+
], !0)
|
|
235
|
+
], 42, ke)) : k("", !0),
|
|
236
|
+
t.name ? (v(), f("input", {
|
|
237
|
+
key: 2,
|
|
238
|
+
type: "hidden",
|
|
239
|
+
name: t.name,
|
|
240
|
+
value: ne.value,
|
|
241
|
+
disabled: t.disabled,
|
|
242
|
+
readonly: t.readonly,
|
|
243
|
+
required: t.required
|
|
244
|
+
}, null, 8, we)) : k("", !0),
|
|
245
|
+
ve(d("div", {
|
|
246
|
+
id: P,
|
|
247
|
+
class: g([
|
|
248
|
+
"pa-month-picker__popover",
|
|
249
|
+
{ "pa-month-picker__popover--inline": t.display === "inline" }
|
|
250
|
+
]),
|
|
251
|
+
role: "dialog",
|
|
252
|
+
"aria-modal": "false"
|
|
253
|
+
}, [
|
|
254
|
+
d("div", De, [
|
|
255
|
+
d("button", {
|
|
256
|
+
type: "button",
|
|
257
|
+
class: "pa-month-picker__nav-arrow",
|
|
258
|
+
"aria-label": "Anno precedente",
|
|
259
|
+
onClick: G
|
|
260
|
+
}, [
|
|
261
|
+
Y(B, {
|
|
262
|
+
name: "caret-left",
|
|
263
|
+
size: "sm"
|
|
264
|
+
})
|
|
265
|
+
]),
|
|
266
|
+
d("span", _e, b(c.value), 1),
|
|
267
|
+
d("button", {
|
|
268
|
+
type: "button",
|
|
269
|
+
class: "pa-month-picker__nav-arrow",
|
|
270
|
+
"aria-label": "Anno successivo",
|
|
271
|
+
onClick: H
|
|
272
|
+
}, [
|
|
273
|
+
Y(B, {
|
|
274
|
+
name: "caret-right",
|
|
275
|
+
size: "sm"
|
|
276
|
+
})
|
|
277
|
+
])
|
|
278
|
+
]),
|
|
279
|
+
d("div", {
|
|
280
|
+
ref_key: "gridRef",
|
|
281
|
+
ref: L,
|
|
282
|
+
class: "pa-month-picker__grid",
|
|
283
|
+
role: "grid"
|
|
284
|
+
}, [
|
|
285
|
+
(v(), f(fe, null, pe(Q, (r, l) => d("button", {
|
|
286
|
+
key: r,
|
|
287
|
+
type: "button",
|
|
288
|
+
class: g(["pa-month-picker__tile", {
|
|
289
|
+
"pa-month-picker__tile--selected": z.value === l,
|
|
290
|
+
"pa-month-picker__tile--disabled": m.value[l]
|
|
291
|
+
}]),
|
|
292
|
+
disabled: m.value[l],
|
|
293
|
+
tabindex: m.value[l] ? -1 : 0,
|
|
294
|
+
"aria-pressed": z.value === l,
|
|
295
|
+
onClick: (s) => re(l),
|
|
296
|
+
onKeydown: (s) => oe(s, l)
|
|
297
|
+
}, b(r), 43, Me)), 64))
|
|
298
|
+
], 512)
|
|
299
|
+
], 2), [
|
|
300
|
+
[me, t.display === "inline" || u.value]
|
|
301
|
+
]),
|
|
302
|
+
T.value ? (v(), f("div", {
|
|
303
|
+
key: 3,
|
|
304
|
+
id: $.value,
|
|
305
|
+
class: g(["pa-month-picker__message", { "pa-month-picker__message--error": p.value }])
|
|
306
|
+
}, b(T.value), 11, Te)) : k("", !0)
|
|
307
|
+
], 2));
|
|
308
|
+
}
|
|
309
|
+
});
|
|
310
|
+
export {
|
|
311
|
+
Se as default,
|
|
312
|
+
Ee as nextPaMonthPickerId
|
|
313
|
+
};
|
|
314
|
+
//# sourceMappingURL=PaMonthPicker.vue2.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PaMonthPicker.vue2.js","sources":["../../../src/components/PaMonthPicker/PaMonthPicker.vue"],"sourcesContent":["<script lang=\"ts\">\nlet uid = 0\nexport function nextPaMonthPickerId() {\n return `pa-month-picker-${++uid}`\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(\n defineProps<{\n display?: 'popover' | 'inline'\n placeholder?: string\n label?: string\n required?: boolean\n helperText?: string\n error?: string | boolean\n valid?: boolean\n disabled?: boolean\n readonly?: boolean\n id?: string\n name?: string\n min?: Date | null\n max?: Date | null\n disabledMonths?: (date: Date) => boolean\n }>(),\n {\n display: 'popover',\n placeholder: 'mese / aaaa',\n required: false,\n error: false,\n valid: false,\n disabled: false,\n readonly: false,\n min: null,\n max: null,\n disabledMonths: undefined,\n },\n)\n\nconst model = defineModel<Date | null>({ default: null })\n\nconst rootRef = ref<HTMLElement | null>(null)\nconst triggerRef = ref<HTMLButtonElement | null>(null)\nconst gridRef = ref<HTMLDivElement | null>(null)\nconst open = ref(false)\nconst popoverId = `pa-month-picker-pop-${Math.random().toString(36).slice(2, 9)}`\nconst generatedId = nextPaMonthPickerId()\nconst triggerId = computed(() => props.id ?? generatedId)\nconst messageId = computed(() => `${triggerId.value}-msg`)\n\nconst MONTH_NAMES = [\n 'Gennaio', 'Febbraio', 'Marzo', 'Aprile',\n 'Maggio', 'Giugno', 'Luglio', 'Agosto',\n 'Settembre', 'Ottobre', 'Novembre', 'Dicembre',\n] as const\n\nconst pageYear = ref(\n model.value instanceof Date ? model.value.getFullYear() : new Date().getFullYear(),\n)\n\nconst monthFormatter = new Intl.DateTimeFormat('it-IT', {\n month: 'long',\n year: 'numeric',\n})\n\nconst displayValue = computed(() => {\n const v = model.value\n if (!(v instanceof Date) || isNaN(v.getTime())) return props.placeholder\n const s = monthFormatter.format(v)\n return s.charAt(0).toUpperCase() + s.slice(1)\n})\n\nconst placeholderShown = computed(() => !(model.value instanceof Date))\n\nconst errorActive = computed(() => Boolean(props.error))\nconst validActive = computed(() => props.valid && !errorActive.value)\nconst errorMessage = computed(() =>\n typeof props.error === 'string' && props.error.length > 0 ? props.error : null,\n)\nconst helperMessage = computed(() =>\n !errorActive.value && props.helperText ? props.helperText : null,\n)\nconst message = computed(() => errorMessage.value ?? helperMessage.value)\n\n// yyyy-mm matching <input type=\"month\">. Built from LOCAL components.\nconst serialized = computed(() => {\n const v = model.value\n if (!(v instanceof Date) || isNaN(v.getTime())) return ''\n const y = v.getFullYear()\n const m = String(v.getMonth() + 1).padStart(2, '0')\n return `${y}-${m}`\n})\n\nfunction truncateToMonthStart(d: Date): Date {\n return new Date(d.getFullYear(), d.getMonth(), 1, 0, 0, 0, 0)\n}\n\nconst truncatedMin = computed(() =>\n props.min ? truncateToMonthStart(props.min) : null,\n)\nconst truncatedMax = computed(() =>\n props.max ? truncateToMonthStart(props.max) : null,\n)\n\nfunction isMonthDisabled(monthIdx: number): boolean {\n const cellDate = new Date(pageYear.value, monthIdx, 1, 0, 0, 0, 0)\n if (truncatedMin.value && cellDate.getTime() < truncatedMin.value.getTime()) return true\n if (truncatedMax.value && cellDate.getTime() > truncatedMax.value.getTime()) return true\n return props.disabledMonths ? props.disabledMonths(cellDate) === true : false\n}\n\nconst disabledStates = computed(() =>\n Array.from({ length: 12 }, (_, idx) => isMonthDisabled(idx)),\n)\n\nconst selectedMonth = computed(() => {\n const v = model.value\n if (!(v instanceof Date) || isNaN(v.getTime())) return null\n if (v.getFullYear() !== pageYear.value) return null\n return v.getMonth()\n})\n\nfunction openPopover() {\n if (open.value || props.disabled || props.readonly) return\n // Re-anchor to the committed value's year on each open so the user always\n // lands on the page that shows their current selection.\n pageYear.value = model.value instanceof Date\n ? model.value.getFullYear()\n : new Date().getFullYear()\n open.value = true\n}\n\nfunction closePopover(returnFocus = true) {\n if (!open.value) return\n open.value = false\n if (returnFocus) triggerRef.value?.focus()\n}\n\nfunction togglePopover() {\n if (props.disabled || props.readonly) return\n open.value ? closePopover() : openPopover()\n}\n\nfunction prevYear() {\n pageYear.value -= 1\n}\n\nfunction nextYear() {\n pageYear.value += 1\n}\n\nfunction selectMonth(monthIdx: number) {\n if (props.readonly) return\n if (isMonthDisabled(monthIdx)) return\n model.value = new Date(pageYear.value, monthIdx, 1, 0, 0, 0, 0)\n if (props.display === 'popover') closePopover()\n}\n\nfunction focusTile(idx: number) {\n const buttons = gridRef.value?.querySelectorAll<HTMLButtonElement>(\n '.pa-month-picker__tile',\n )\n if (!buttons || buttons.length === 0) return\n const n = buttons.length\n const i = ((idx % n) + n) % n\n buttons[i]?.focus()\n}\n\n// Walk from `from` in `step` increments (wrapping within 0..11) until landing\n// on a non-disabled tile. If every tile is disabled, return -1 (caller stays\n// put). step in {-1, +1, -3, +3}.\nfunction nextEnabledTile(from: number, step: number): number {\n const n = 12\n for (let i = 1; i <= n; i++) {\n const candidate = (((from + step * i) % n) + n) % n\n if (!disabledStates.value[candidate]) return candidate\n }\n return -1\n}\n\nfunction focusInDirection(from: number, step: number) {\n const target = nextEnabledTile(from, step)\n if (target >= 0) focusTile(target)\n}\n\nfunction focusFirstEnabled(start: number, step: number) {\n if (!disabledStates.value[start]) {\n focusTile(start)\n return\n }\n const target = nextEnabledTile(start, step)\n if (target >= 0) focusTile(target)\n}\n\nfunction onTileKeydown(event: KeyboardEvent, idx: number) {\n switch (event.key) {\n case 'ArrowRight':\n event.preventDefault()\n focusInDirection(idx, 1)\n break\n case 'ArrowLeft':\n event.preventDefault()\n focusInDirection(idx, -1)\n break\n case 'ArrowDown':\n event.preventDefault()\n focusInDirection(idx, 3)\n break\n case 'ArrowUp':\n event.preventDefault()\n focusInDirection(idx, -3)\n break\n case 'Home':\n event.preventDefault()\n focusFirstEnabled(0, 1)\n break\n case 'End':\n event.preventDefault()\n focusFirstEnabled(11, -1)\n break\n case 'PageDown':\n event.preventDefault()\n nextYear()\n nextTick(() => focusFirstEnabled(idx, 1))\n break\n case 'PageUp':\n event.preventDefault()\n prevYear()\n nextTick(() => focusFirstEnabled(idx, 1))\n break\n }\n}\n\nfunction onDocumentMousedown(event: MouseEvent) {\n if (!rootRef.value) return\n if (!rootRef.value.contains(event.target as Node)) closePopover(false)\n}\n\nfunction onWindowKeydown(event: KeyboardEvent) {\n if (event.key === 'Escape') {\n event.preventDefault()\n closePopover()\n }\n}\n\nwatch(open, (isOpen) => {\n if (isOpen) {\n document.addEventListener('mousedown', onDocumentMousedown)\n window.addEventListener('keydown', onWindowKeydown)\n } else {\n document.removeEventListener('mousedown', onDocumentMousedown)\n window.removeEventListener('keydown', onWindowKeydown)\n }\n})\n\nonBeforeUnmount(() => {\n document.removeEventListener('mousedown', onDocumentMousedown)\n window.removeEventListener('keydown', onWindowKeydown)\n})\n</script>\n\n<template>\n <div\n ref=\"rootRef\"\n :class=\"[\n 'pa-month-picker',\n `pa-month-picker--${display}`,\n {\n 'pa-month-picker--open': open,\n 'pa-month-picker--disabled': disabled,\n 'pa-month-picker--readonly': readonly,\n 'pa-month-picker--error': errorActive,\n 'pa-month-picker--valid': validActive,\n },\n ]\"\n >\n <label v-if=\"label\" :for=\"triggerId\" class=\"pa-month-picker__label\">\n {{ label }}<span v-if=\"required\" class=\"pa-month-picker__required\" aria-hidden=\"true\">*</span>\n </label>\n\n <button\n v-if=\"display === 'popover'\"\n :id=\"triggerId\"\n ref=\"triggerRef\"\n type=\"button\"\n :class=\"[\n 'pa-month-picker__trigger',\n {\n 'pa-month-picker__trigger--placeholder': placeholderShown,\n 'pa-month-picker__trigger--disabled': disabled,\n 'pa-month-picker__trigger--readonly': readonly && !disabled,\n 'pa-month-picker__trigger--error': errorActive && !disabled,\n 'pa-month-picker__trigger--valid': validActive && !disabled,\n },\n ]\"\n :disabled=\"disabled\"\n :aria-expanded=\"open\"\n aria-haspopup=\"dialog\"\n :aria-controls=\"popoverId\"\n :aria-required=\"required || undefined\"\n :aria-invalid=\"errorActive || undefined\"\n :aria-readonly=\"readonly || undefined\"\n :aria-describedby=\"message ? messageId : undefined\"\n @click=\"togglePopover\"\n @keydown.enter.prevent=\"togglePopover\"\n @keydown.space.prevent=\"togglePopover\"\n @keydown.down.prevent=\"openPopover\"\n >\n <span class=\"pa-month-picker__value\">{{ displayValue }}</span>\n <slot name=\"suffix\">\n <PaIcon name=\"calendar-blank\" size=\"md\" />\n </slot>\n </button>\n\n <input\n v-if=\"name\"\n type=\"hidden\"\n :name=\"name\"\n :value=\"serialized\"\n :disabled=\"disabled\"\n :readonly=\"readonly\"\n :required=\"required\"\n />\n\n <div\n v-show=\"display === 'inline' || open\"\n :id=\"popoverId\"\n :class=\"[\n 'pa-month-picker__popover',\n { 'pa-month-picker__popover--inline': display === 'inline' },\n ]\"\n role=\"dialog\"\n aria-modal=\"false\"\n >\n <div class=\"pa-month-picker__header\">\n <button\n type=\"button\"\n class=\"pa-month-picker__nav-arrow\"\n aria-label=\"Anno precedente\"\n @click=\"prevYear\"\n >\n <PaIcon name=\"caret-left\" size=\"sm\" />\n </button>\n <span class=\"pa-month-picker__year-label\" aria-live=\"polite\">\n {{ pageYear }}\n </span>\n <button\n type=\"button\"\n class=\"pa-month-picker__nav-arrow\"\n aria-label=\"Anno successivo\"\n @click=\"nextYear\"\n >\n <PaIcon name=\"caret-right\" size=\"sm\" />\n </button>\n </div>\n\n <div ref=\"gridRef\" class=\"pa-month-picker__grid\" role=\"grid\">\n <button\n v-for=\"(name, idx) in MONTH_NAMES\"\n :key=\"name\"\n type=\"button\"\n class=\"pa-month-picker__tile\"\n :class=\"{\n 'pa-month-picker__tile--selected': selectedMonth === idx,\n 'pa-month-picker__tile--disabled': disabledStates[idx],\n }\"\n :disabled=\"disabledStates[idx]\"\n :tabindex=\"disabledStates[idx] ? -1 : 0\"\n :aria-pressed=\"selectedMonth === idx\"\n @click=\"selectMonth(idx)\"\n @keydown=\"onTileKeydown($event, idx)\"\n >\n {{ name }}\n </button>\n </div>\n </div>\n\n <div\n v-if=\"message\"\n :id=\"messageId\"\n :class=\"['pa-month-picker__message', { 'pa-month-picker__message--error': errorActive }]\"\n >\n {{ message }}\n </div>\n </div>\n</template>\n\n<style scoped>\n.pa-month-picker {\n position: relative;\n display: inline-flex;\n flex-direction: column;\n gap: var(--pa-space-2xs, 4px);\n font-family: var(--pa-font-family-sans, 'Inter', sans-serif);\n}\n\n.pa-month-picker__label {\n font: 600 14px/20px 'Inter', sans-serif;\n color: var(--pa-color-text-dark-blue, #00173d);\n}\n.pa-month-picker__required {\n margin-left: 2px;\n color: var(--pa-color-error, #de2049);\n}\n\n.pa-month-picker__message {\n font: 400 14px/20px 'Inter', sans-serif;\n color: var(--pa-color-neutral-gray, #454d56);\n}\n.pa-month-picker__message--error {\n color: var(--pa-color-error, #de2049);\n}\n\n.pa-month-picker__trigger {\n display: inline-flex;\n align-items: center;\n justify-content: space-between;\n gap: 8px;\n width: 100%;\n min-width: 240px;\n padding: 12px 16px;\n background: #ffffff;\n border: 1px solid var(--pa-color-neutral-gray, #454d56);\n border-radius: 4px;\n font: 400 16px/20px 'Inter', sans-serif;\n color: var(--pa-color-neutral-gray, #454d56);\n cursor: pointer;\n text-align: left;\n}\n.pa-month-picker__trigger:hover { border-color: var(--pa-color-primary, #0071ff); }\n.pa-month-picker__trigger:focus-visible {\n outline: 2px solid var(--pa-color-primary-focus-border, #0065d1);\n outline-offset: 2px;\n}\n.pa-month-picker__trigger--placeholder .pa-month-picker__value {\n color: var(--pa-color-text-disabled, #5b6571);\n}\n.pa-month-picker__trigger--error {\n border-color: var(--pa-color-error, #de2049);\n}\n.pa-month-picker__trigger--error:hover {\n border-color: var(--pa-color-error, #de2049);\n}\n.pa-month-picker__trigger--valid {\n border-color: var(--pa-color-success, #008069);\n}\n.pa-month-picker__trigger--valid:hover {\n border-color: var(--pa-color-success, #008069);\n}\n.pa-month-picker__trigger--disabled,\n.pa-month-picker__trigger[disabled] {\n background: var(--pa-color-bg-disabled-gray, #e7e8e3);\n color: var(--pa-color-text-disabled, #5b6571);\n border-color: var(--pa-color-neutral-gray, #454d56);\n cursor: not-allowed;\n}\n.pa-month-picker__trigger--disabled:hover,\n.pa-month-picker__trigger[disabled]:hover {\n border-color: var(--pa-color-neutral-gray, #454d56);\n}\n.pa-month-picker__trigger--readonly:hover {\n border-color: var(--pa-color-neutral-gray, #454d56);\n}\n.pa-month-picker__value {\n flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;\n}\n\n.pa-month-picker__popover {\n position: absolute; top: calc(100% + 8px); left: 0;\n z-index: 900; min-width: 280px; padding: 24px;\n background: #ffffff; border-radius: 8px;\n box-shadow: var(--pa-shadow-elevation-02, 0 0 24px #e3e5e8);\n}\n.pa-month-picker__popover--inline {\n position: static; top: auto; left: auto; display: inline-block;\n}\n\n.pa-month-picker__header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 0 0 16px;\n}\n.pa-month-picker__year-label {\n font: 600 16px/20px 'Inter', sans-serif;\n color: var(--pa-color-primary, #0071ff);\n}\n\n.pa-month-picker__nav-arrow {\n display: inline-flex; align-items: center; justify-content: center;\n width: 32px; height: 32px; padding: 0;\n background: #ffffff; border: 0; border-radius: 9999px;\n color: var(--pa-color-primary, #0071ff); cursor: pointer;\n}\n.pa-month-picker__nav-arrow:hover {\n background: var(--pa-color-bg-primary-light-40, #f2f6fc);\n}\n.pa-month-picker__nav-arrow:focus-visible {\n outline: 2px solid var(--pa-color-primary-focus-border, #0065d1);\n outline-offset: 0;\n}\n\n.pa-month-picker__grid {\n display: grid;\n grid-template-columns: repeat(3, 1fr);\n gap: 8px 24px;\n}\n\n.pa-month-picker__tile {\n padding: 12px 16px;\n background: #ffffff;\n border: 0;\n border-radius: 9999px;\n font: 400 16px/20px 'Inter', sans-serif;\n color: var(--pa-color-neutral-gray, #454d56);\n cursor: pointer;\n text-align: center;\n transition: none;\n}\n.pa-month-picker__tile:hover {\n background: var(--pa-color-primary-hover, #00368f);\n color: #ffffff;\n}\n.pa-month-picker__tile:focus-visible {\n outline: 2px solid var(--pa-color-primary-focus-border, #0065d1);\n outline-offset: -2px;\n}\n.pa-month-picker__tile:active {\n background: var(--pa-color-primary-pressed, #00173d);\n color: #ffffff;\n}\n.pa-month-picker__tile--selected {\n background: var(--pa-color-primary, #0071ff);\n color: #ffffff;\n}\n.pa-month-picker__tile--selected:hover {\n background: var(--pa-color-primary-hover, #00368f);\n}\n.pa-month-picker__tile--disabled,\n.pa-month-picker__tile--disabled:hover,\n.pa-month-picker__tile[disabled] {\n background: #ffffff;\n color: var(--pa-color-text-disabled, #5b6571);\n pointer-events: none;\n cursor: not-allowed;\n}\n</style>\n"],"names":["uid","nextPaMonthPickerId","props","__props","model","_useModel","rootRef","ref","triggerRef","gridRef","open","popoverId","generatedId","triggerId","computed","messageId","MONTH_NAMES","pageYear","monthFormatter","displayValue","v","s","placeholderShown","errorActive","validActive","errorMessage","helperMessage","message","serialized","y","m","truncateToMonthStart","d","truncatedMin","truncatedMax","isMonthDisabled","monthIdx","cellDate","disabledStates","_","idx","selectedMonth","openPopover","closePopover","returnFocus","_a","togglePopover","prevYear","nextYear","selectMonth","focusTile","buttons","n","i","_b","nextEnabledTile","from","step","candidate","focusInDirection","target","focusFirstEnabled","start","onTileKeydown","event","nextTick","onDocumentMousedown","onWindowKeydown","watch","isOpen","onBeforeUnmount","_createElementBlock","_normalizeClass","_hoisted_2","_createElementVNode","_hoisted_4","_toDisplayString","_renderSlot","_ctx","_createVNode","PaIcon","_hoisted_6","_hoisted_7","_openBlock","_Fragment","_renderList","name","$event","_hoisted_8","_vShow","_hoisted_9"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default, default as PaMonthPicker } from './PaMonthPicker.vue';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
export type PaPaginationVariant = 'cursor-number' | 'items-page';
|
|
2
|
+
export interface PaPaginationProps {
|
|
3
|
+
variant?: PaPaginationVariant;
|
|
4
|
+
currentPage?: number;
|
|
5
|
+
totalItems: number;
|
|
6
|
+
pageSize?: number;
|
|
7
|
+
pageSizeOptions?: number[];
|
|
8
|
+
disabled?: boolean;
|
|
9
|
+
label?: string;
|
|
10
|
+
previousLabel?: string;
|
|
11
|
+
nextLabel?: string;
|
|
12
|
+
pageLabel?: (page: number) => string;
|
|
13
|
+
itemsPerPageLabel?: string;
|
|
14
|
+
rangeSeparator?: string;
|
|
15
|
+
itemsLabel?: string;
|
|
16
|
+
pagesLabel?: string;
|
|
17
|
+
}
|
|
18
|
+
declare const _default: import("vue").DefineComponent<PaPaginationProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
19
|
+
"update:currentPage": (page: number) => any;
|
|
20
|
+
"update:pageSize": (size: number) => any;
|
|
21
|
+
}, string, import("vue").PublicProps, Readonly<PaPaginationProps> & Readonly<{
|
|
22
|
+
"onUpdate:currentPage"?: ((page: number) => any) | undefined;
|
|
23
|
+
"onUpdate:pageSize"?: ((size: number) => any) | undefined;
|
|
24
|
+
}>, {
|
|
25
|
+
variant: PaPaginationVariant;
|
|
26
|
+
disabled: boolean;
|
|
27
|
+
label: string;
|
|
28
|
+
currentPage: number;
|
|
29
|
+
pageSize: number;
|
|
30
|
+
pageSizeOptions: number[];
|
|
31
|
+
previousLabel: string;
|
|
32
|
+
nextLabel: string;
|
|
33
|
+
pageLabel: (page: number) => string;
|
|
34
|
+
itemsPerPageLabel: string;
|
|
35
|
+
rangeSeparator: string;
|
|
36
|
+
itemsLabel: string;
|
|
37
|
+
pagesLabel: string;
|
|
38
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
39
|
+
export default _default;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import o from "./PaPagination.vue2.js";
|
|
2
|
+
/* empty css */
|
|
3
|
+
import t from "../../_virtual/_plugin-vue_export-helper.js";
|
|
4
|
+
const i = /* @__PURE__ */ t(o, [["__scopeId", "data-v-813df5c0"]]);
|
|
5
|
+
export {
|
|
6
|
+
i as default
|
|
7
|
+
};
|
|
8
|
+
//# sourceMappingURL=PaPagination.vue.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PaPagination.vue.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
|
|
@@ -0,0 +1,202 @@
|
|
|
1
|
+
import { defineComponent as B, computed as o, openBlock as r, createElementBlock as c, createElementVNode as t, createVNode as p, Fragment as P, renderList as D, normalizeClass as U, toDisplayString as d, createCommentVNode as w } from "vue";
|
|
2
|
+
import v from "../PaIcon/PaIcon.vue.js";
|
|
3
|
+
import z from "../PaSelect/PaSelect.vue.js";
|
|
4
|
+
import { pageWindow as J } from "./usePageWindow.js";
|
|
5
|
+
const A = ["aria-label"], T = { class: "pa-pagination__list" }, W = ["aria-label", "aria-disabled", "tabindex"], j = {
|
|
6
|
+
key: 0,
|
|
7
|
+
class: "pa-pagination__ellipsis",
|
|
8
|
+
"aria-hidden": "true"
|
|
9
|
+
}, q = { key: 1 }, G = ["aria-label", "aria-current", "aria-disabled", "tabindex", "onClick"], H = ["aria-label", "aria-disabled", "tabindex"], K = ["aria-label"], Q = { class: "pa-pagination__items-block" }, R = { class: "pa-pagination__range" }, X = { class: "pa-pagination__num" }, Y = { class: "pa-pagination__num" }, Z = { class: "pa-pagination__page-block" }, aa = { class: "pa-pagination__range" }, ea = { class: "pa-pagination__num" }, ta = ["aria-label", "aria-disabled", "tabindex"], ia = ["aria-label", "aria-disabled", "tabindex"];
|
|
10
|
+
let na = 0;
|
|
11
|
+
function la() {
|
|
12
|
+
return ++na;
|
|
13
|
+
}
|
|
14
|
+
const ca = /* @__PURE__ */ B({
|
|
15
|
+
__name: "PaPagination",
|
|
16
|
+
props: {
|
|
17
|
+
variant: { default: "cursor-number" },
|
|
18
|
+
currentPage: { default: 1 },
|
|
19
|
+
totalItems: {},
|
|
20
|
+
pageSize: { default: 10 },
|
|
21
|
+
pageSizeOptions: { default: () => [10, 25, 50, 100] },
|
|
22
|
+
disabled: { type: Boolean, default: !1 },
|
|
23
|
+
label: { default: "Paginazione" },
|
|
24
|
+
previousLabel: { default: "Pagina precedente" },
|
|
25
|
+
nextLabel: { default: "Pagina successiva" },
|
|
26
|
+
pageLabel: { type: Function, default: (a) => `Vai alla pagina ${a}` },
|
|
27
|
+
itemsPerPageLabel: { default: "Elementi per pagina:" },
|
|
28
|
+
rangeSeparator: { default: "di" },
|
|
29
|
+
itemsLabel: { default: "Elementi" },
|
|
30
|
+
pagesLabel: { default: "Pagine" }
|
|
31
|
+
},
|
|
32
|
+
emits: ["update:currentPage", "update:pageSize"],
|
|
33
|
+
setup(a, { emit: x }) {
|
|
34
|
+
const i = a, g = x, _ = la(), f = `pa-pagination-${_}__items-select`, k = `pa-pagination-${_}__page-select`, n = o(
|
|
35
|
+
() => i.totalItems <= 0 || i.pageSize <= 0 ? 0 : Math.ceil(i.totalItems / i.pageSize)
|
|
36
|
+
), l = o(
|
|
37
|
+
() => n.value === 0 ? 0 : Math.max(1, Math.min(i.currentPage, n.value))
|
|
38
|
+
), L = o(() => J(l.value, n.value)), b = o(
|
|
39
|
+
() => i.disabled || l.value <= 1 || n.value === 0
|
|
40
|
+
), m = o(
|
|
41
|
+
() => i.disabled || l.value >= n.value || n.value === 0
|
|
42
|
+
), C = o(
|
|
43
|
+
() => n.value === 0 ? 0 : (l.value - 1) * i.pageSize + 1
|
|
44
|
+
), I = o(
|
|
45
|
+
() => n.value === 0 ? 0 : Math.min(l.value * i.pageSize, i.totalItems)
|
|
46
|
+
), N = o(() => {
|
|
47
|
+
const s = new Set(i.pageSizeOptions);
|
|
48
|
+
return s.add(i.pageSize), [...s].filter((e) => e > 0).sort((e, u) => e - u).map((e) => ({ value: String(e), label: String(e) }));
|
|
49
|
+
}), y = o(
|
|
50
|
+
() => Array.from({ length: n.value }, (s, e) => ({
|
|
51
|
+
value: String(e + 1),
|
|
52
|
+
label: String(e + 1)
|
|
53
|
+
}))
|
|
54
|
+
), $ = o(() => String(i.pageSize)), M = o(() => String(l.value)), V = (s) => {
|
|
55
|
+
i.disabled || s !== l.value && g("update:currentPage", s);
|
|
56
|
+
}, S = () => {
|
|
57
|
+
b.value || g("update:currentPage", l.value - 1);
|
|
58
|
+
}, h = () => {
|
|
59
|
+
m.value || g("update:currentPage", l.value + 1);
|
|
60
|
+
}, E = (s) => {
|
|
61
|
+
if (i.disabled) return;
|
|
62
|
+
const e = Number(s);
|
|
63
|
+
!Number.isFinite(e) || e <= 0 || g("update:pageSize", e);
|
|
64
|
+
}, F = (s) => {
|
|
65
|
+
if (i.disabled) return;
|
|
66
|
+
const e = Number(s);
|
|
67
|
+
!Number.isFinite(e) || e < 1 || e > n.value || g("update:currentPage", e);
|
|
68
|
+
};
|
|
69
|
+
return (s, e) => n.value > 0 && a.variant === "cursor-number" ? (r(), c("nav", {
|
|
70
|
+
key: 0,
|
|
71
|
+
class: "pa-pagination pa-pagination--cursor-number",
|
|
72
|
+
"aria-label": a.label
|
|
73
|
+
}, [
|
|
74
|
+
t("ul", T, [
|
|
75
|
+
t("li", null, [
|
|
76
|
+
t("button", {
|
|
77
|
+
type: "button",
|
|
78
|
+
class: "pa-pagination__caret",
|
|
79
|
+
"aria-label": a.previousLabel,
|
|
80
|
+
"aria-disabled": b.value ? "true" : void 0,
|
|
81
|
+
tabindex: b.value ? -1 : 0,
|
|
82
|
+
onClick: S
|
|
83
|
+
}, [
|
|
84
|
+
p(v, {
|
|
85
|
+
name: "caret-left",
|
|
86
|
+
size: "sm"
|
|
87
|
+
})
|
|
88
|
+
], 8, W)
|
|
89
|
+
]),
|
|
90
|
+
(r(!0), c(P, null, D(L.value, (u, O) => (r(), c(P, {
|
|
91
|
+
key: `${u}-${O}`
|
|
92
|
+
}, [
|
|
93
|
+
u === "ellipsis" ? (r(), c("li", j, " .. ")) : (r(), c("li", q, [
|
|
94
|
+
t("button", {
|
|
95
|
+
type: "button",
|
|
96
|
+
class: U(["pa-pagination__tile", {
|
|
97
|
+
"pa-pagination__tile--current": u === l.value,
|
|
98
|
+
"pa-pagination__tile--disabled": a.disabled
|
|
99
|
+
}]),
|
|
100
|
+
"aria-label": a.pageLabel(u),
|
|
101
|
+
"aria-current": u === l.value ? "page" : void 0,
|
|
102
|
+
"aria-disabled": a.disabled ? "true" : void 0,
|
|
103
|
+
tabindex: a.disabled ? -1 : 0,
|
|
104
|
+
onClick: (sa) => V(u)
|
|
105
|
+
}, d(u), 11, G)
|
|
106
|
+
]))
|
|
107
|
+
], 64))), 128)),
|
|
108
|
+
t("li", null, [
|
|
109
|
+
t("button", {
|
|
110
|
+
type: "button",
|
|
111
|
+
class: "pa-pagination__caret",
|
|
112
|
+
"aria-label": a.nextLabel,
|
|
113
|
+
"aria-disabled": m.value ? "true" : void 0,
|
|
114
|
+
tabindex: m.value ? -1 : 0,
|
|
115
|
+
onClick: h
|
|
116
|
+
}, [
|
|
117
|
+
p(v, {
|
|
118
|
+
name: "caret-right",
|
|
119
|
+
size: "sm"
|
|
120
|
+
})
|
|
121
|
+
], 8, H)
|
|
122
|
+
])
|
|
123
|
+
])
|
|
124
|
+
], 8, A)) : n.value > 0 && a.variant === "items-page" ? (r(), c("nav", {
|
|
125
|
+
key: 1,
|
|
126
|
+
class: "pa-pagination pa-pagination--items-page",
|
|
127
|
+
"aria-label": a.label
|
|
128
|
+
}, [
|
|
129
|
+
t("div", Q, [
|
|
130
|
+
t("label", {
|
|
131
|
+
for: f,
|
|
132
|
+
class: "pa-pagination__field-label"
|
|
133
|
+
}, d(a.itemsPerPageLabel), 1),
|
|
134
|
+
p(z, {
|
|
135
|
+
id: f,
|
|
136
|
+
"model-value": $.value,
|
|
137
|
+
options: N.value,
|
|
138
|
+
disabled: a.disabled,
|
|
139
|
+
size: "lg",
|
|
140
|
+
class: "pa-pagination__select",
|
|
141
|
+
"onUpdate:modelValue": E
|
|
142
|
+
}, null, 8, ["model-value", "options", "disabled"]),
|
|
143
|
+
t("span", R, [
|
|
144
|
+
t("span", X, d(C.value) + " - " + d(I.value), 1),
|
|
145
|
+
t("span", null, d(a.rangeSeparator), 1),
|
|
146
|
+
t("span", Y, d(a.totalItems), 1),
|
|
147
|
+
t("span", null, d(a.itemsLabel), 1)
|
|
148
|
+
])
|
|
149
|
+
]),
|
|
150
|
+
e[0] || (e[0] = t("span", {
|
|
151
|
+
class: "pa-pagination__divider",
|
|
152
|
+
"aria-hidden": "true"
|
|
153
|
+
}, null, -1)),
|
|
154
|
+
t("div", Z, [
|
|
155
|
+
p(z, {
|
|
156
|
+
id: k,
|
|
157
|
+
"model-value": M.value,
|
|
158
|
+
options: y.value,
|
|
159
|
+
disabled: a.disabled,
|
|
160
|
+
size: "lg",
|
|
161
|
+
class: "pa-pagination__select",
|
|
162
|
+
"onUpdate:modelValue": F
|
|
163
|
+
}, null, 8, ["model-value", "options", "disabled"]),
|
|
164
|
+
t("span", aa, [
|
|
165
|
+
t("span", null, d(a.rangeSeparator), 1),
|
|
166
|
+
t("span", ea, d(n.value), 1),
|
|
167
|
+
t("span", null, d(a.pagesLabel), 1)
|
|
168
|
+
]),
|
|
169
|
+
t("button", {
|
|
170
|
+
type: "button",
|
|
171
|
+
class: "pa-pagination__caret",
|
|
172
|
+
"aria-label": a.previousLabel,
|
|
173
|
+
"aria-disabled": b.value ? "true" : void 0,
|
|
174
|
+
tabindex: b.value ? -1 : 0,
|
|
175
|
+
onClick: S
|
|
176
|
+
}, [
|
|
177
|
+
p(v, {
|
|
178
|
+
name: "caret-left",
|
|
179
|
+
size: "sm"
|
|
180
|
+
})
|
|
181
|
+
], 8, ta),
|
|
182
|
+
t("button", {
|
|
183
|
+
type: "button",
|
|
184
|
+
class: "pa-pagination__caret",
|
|
185
|
+
"aria-label": a.nextLabel,
|
|
186
|
+
"aria-disabled": m.value ? "true" : void 0,
|
|
187
|
+
tabindex: m.value ? -1 : 0,
|
|
188
|
+
onClick: h
|
|
189
|
+
}, [
|
|
190
|
+
p(v, {
|
|
191
|
+
name: "caret-right",
|
|
192
|
+
size: "sm"
|
|
193
|
+
})
|
|
194
|
+
], 8, ia)
|
|
195
|
+
])
|
|
196
|
+
], 8, K)) : w("", !0);
|
|
197
|
+
}
|
|
198
|
+
});
|
|
199
|
+
export {
|
|
200
|
+
ca as default
|
|
201
|
+
};
|
|
202
|
+
//# sourceMappingURL=PaPagination.vue2.js.map
|