@gcsa/console-vue 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/dist/components/ConsoleHeader.vue.d.ts +18 -0
- package/dist/components/ConsoleHeader.vue.js +37 -0
- package/dist/components/ConsoleHeader.vue.js.map +1 -0
- package/dist/components/ConsoleHeader2.vue.js +5 -0
- package/dist/components/ConsoleHeader2.vue.js.map +1 -0
- package/dist/components/ConsolePage.vue.d.ts +18 -0
- package/dist/components/ConsolePage.vue.js +31 -0
- package/dist/components/ConsolePage.vue.js.map +1 -0
- package/dist/components/ConsolePage2.vue.js +5 -0
- package/dist/components/ConsolePage2.vue.js.map +1 -0
- package/dist/components/ConsoleShell.vue.d.ts +40 -0
- package/dist/components/ConsoleShell.vue.js +166 -0
- package/dist/components/ConsoleShell.vue.js.map +1 -0
- package/dist/components/ConsoleShell2.vue.js +5 -0
- package/dist/components/ConsoleShell2.vue.js.map +1 -0
- package/dist/components/ConsoleSidebar.vue.d.ts +13 -0
- package/dist/components/ConsoleSidebar.vue.js +52 -0
- package/dist/components/ConsoleSidebar.vue.js.map +1 -0
- package/dist/components/ConsoleSidebar2.vue.js +5 -0
- package/dist/components/ConsoleSidebar2.vue.js.map +1 -0
- package/dist/components/GcsaAlert.vue.d.ts +20 -0
- package/dist/components/GcsaAlert.vue.js +32 -0
- package/dist/components/GcsaAlert.vue.js.map +1 -0
- package/dist/components/GcsaAlert2.vue.js +5 -0
- package/dist/components/GcsaAlert2.vue.js.map +1 -0
- package/dist/components/GcsaAutoComplete.vue.d.ts +17 -0
- package/dist/components/GcsaAutoComplete.vue.js +136 -0
- package/dist/components/GcsaAutoComplete.vue.js.map +1 -0
- package/dist/components/GcsaAutoComplete2.vue.js +5 -0
- package/dist/components/GcsaAutoComplete2.vue.js.map +1 -0
- package/dist/components/GcsaAvatar.vue.d.ts +21 -0
- package/dist/components/GcsaAvatar.vue.js +23 -0
- package/dist/components/GcsaAvatar.vue.js.map +1 -0
- package/dist/components/GcsaAvatar2.vue.js +5 -0
- package/dist/components/GcsaAvatar2.vue.js.map +1 -0
- package/dist/components/GcsaBadge.vue.d.ts +20 -0
- package/dist/components/GcsaBadge.vue.js +20 -0
- package/dist/components/GcsaBadge.vue.js.map +1 -0
- package/dist/components/GcsaBadge2.vue.js +5 -0
- package/dist/components/GcsaBadge2.vue.js.map +1 -0
- package/dist/components/GcsaBrandMark.vue.d.ts +3 -0
- package/dist/components/GcsaBrandMark.vue.js +30 -0
- package/dist/components/GcsaBrandMark.vue.js.map +1 -0
- package/dist/components/GcsaBrandMark2.vue.js +5 -0
- package/dist/components/GcsaBrandMark2.vue.js.map +1 -0
- package/dist/components/GcsaBreadcrumb.vue.d.ts +3 -0
- package/dist/components/GcsaBreadcrumb.vue.js +37 -0
- package/dist/components/GcsaBreadcrumb.vue.js.map +1 -0
- package/dist/components/GcsaBreadcrumb2.vue.js +5 -0
- package/dist/components/GcsaBreadcrumb2.vue.js.map +1 -0
- package/dist/components/GcsaButton.vue.d.ts +23 -0
- package/dist/components/GcsaButton.vue.js +34 -0
- package/dist/components/GcsaButton.vue.js.map +1 -0
- package/dist/components/GcsaButton2.vue.js +5 -0
- package/dist/components/GcsaButton2.vue.js.map +1 -0
- package/dist/components/GcsaCalendar.vue.d.ts +11 -0
- package/dist/components/GcsaCalendar.vue.js +154 -0
- package/dist/components/GcsaCalendar.vue.js.map +1 -0
- package/dist/components/GcsaCalendar2.vue.js +5 -0
- package/dist/components/GcsaCalendar2.vue.js.map +1 -0
- package/dist/components/GcsaCard.vue.d.ts +19 -0
- package/dist/components/GcsaCard.vue.js +32 -0
- package/dist/components/GcsaCard.vue.js.map +1 -0
- package/dist/components/GcsaCard2.vue.js +5 -0
- package/dist/components/GcsaCard2.vue.js.map +1 -0
- package/dist/components/GcsaCascader.vue.d.ts +15 -0
- package/dist/components/GcsaCascader.vue.js +114 -0
- package/dist/components/GcsaCascader.vue.js.map +1 -0
- package/dist/components/GcsaCascader2.vue.js +5 -0
- package/dist/components/GcsaCascader2.vue.js.map +1 -0
- package/dist/components/GcsaChatPanel.vue.d.ts +61 -0
- package/dist/components/GcsaChatPanel.vue.js +291 -0
- package/dist/components/GcsaChatPanel.vue.js.map +1 -0
- package/dist/components/GcsaChatPanel2.vue.js +5 -0
- package/dist/components/GcsaChatPanel2.vue.js.map +1 -0
- package/dist/components/GcsaCheckbox.vue.d.ts +22 -0
- package/dist/components/GcsaCheckbox.vue.js +71 -0
- package/dist/components/GcsaCheckbox.vue.js.map +1 -0
- package/dist/components/GcsaCheckbox2.vue.js +5 -0
- package/dist/components/GcsaCheckbox2.vue.js.map +1 -0
- package/dist/components/GcsaCollapse.vue.d.ts +31 -0
- package/dist/components/GcsaCollapse.vue.js +71 -0
- package/dist/components/GcsaCollapse.vue.js.map +1 -0
- package/dist/components/GcsaCollapse2.vue.js +5 -0
- package/dist/components/GcsaCollapse2.vue.js.map +1 -0
- package/dist/components/GcsaConfigProvider.vue.d.ts +23 -0
- package/dist/components/GcsaConfigProvider.vue.js +103 -0
- package/dist/components/GcsaConfigProvider.vue.js.map +1 -0
- package/dist/components/GcsaConfigProvider2.vue.js +5 -0
- package/dist/components/GcsaConfigProvider2.vue.js.map +1 -0
- package/dist/components/GcsaDataTable.vue.d.ts +84 -0
- package/dist/components/GcsaDataTable.vue.js +1020 -0
- package/dist/components/GcsaDataTable.vue.js.map +1 -0
- package/dist/components/GcsaDataTable2.vue.js +5 -0
- package/dist/components/GcsaDataTable2.vue.js.map +1 -0
- package/dist/components/GcsaDatePicker.vue.d.ts +10 -0
- package/dist/components/GcsaDatePicker.vue.js +319 -0
- package/dist/components/GcsaDatePicker.vue.js.map +1 -0
- package/dist/components/GcsaDatePicker2.vue.js +5 -0
- package/dist/components/GcsaDatePicker2.vue.js.map +1 -0
- package/dist/components/GcsaDateRangeMonthPanel.vue.d.ts +3 -0
- package/dist/components/GcsaDateRangeMonthPanel.vue.js +110 -0
- package/dist/components/GcsaDateRangeMonthPanel.vue.js.map +1 -0
- package/dist/components/GcsaDateRangeMonthPanel2.vue.js +5 -0
- package/dist/components/GcsaDateRangeMonthPanel2.vue.js.map +1 -0
- package/dist/components/GcsaDateRangePicker.vue.d.ts +10 -0
- package/dist/components/GcsaDateRangePicker.vue.js +252 -0
- package/dist/components/GcsaDateRangePicker.vue.js.map +1 -0
- package/dist/components/GcsaDateRangePicker2.vue.js +5 -0
- package/dist/components/GcsaDateRangePicker2.vue.js.map +1 -0
- package/dist/components/GcsaDateTimePicker.vue.d.ts +11 -0
- package/dist/components/GcsaDateTimePicker.vue.js +360 -0
- package/dist/components/GcsaDateTimePicker.vue.js.map +1 -0
- package/dist/components/GcsaDateTimePicker2.vue.js +5 -0
- package/dist/components/GcsaDateTimePicker2.vue.js.map +1 -0
- package/dist/components/GcsaDescriptions.vue.d.ts +3 -0
- package/dist/components/GcsaDescriptions.vue.js +23 -0
- package/dist/components/GcsaDescriptions.vue.js.map +1 -0
- package/dist/components/GcsaDescriptions2.vue.js +5 -0
- package/dist/components/GcsaDescriptions2.vue.js.map +1 -0
- package/dist/components/GcsaDivider.vue.d.ts +3 -0
- package/dist/components/GcsaDivider.vue.js +15 -0
- package/dist/components/GcsaDivider.vue.js.map +1 -0
- package/dist/components/GcsaDivider2.vue.js +5 -0
- package/dist/components/GcsaDivider2.vue.js.map +1 -0
- package/dist/components/GcsaDrawer.vue.d.ts +30 -0
- package/dist/components/GcsaDrawer.vue.js +115 -0
- package/dist/components/GcsaDrawer.vue.js.map +1 -0
- package/dist/components/GcsaDrawer2.vue.js +5 -0
- package/dist/components/GcsaDrawer2.vue.js.map +1 -0
- package/dist/components/GcsaDropdown.vue.d.ts +26 -0
- package/dist/components/GcsaDropdown.vue.js +108 -0
- package/dist/components/GcsaDropdown.vue.js.map +1 -0
- package/dist/components/GcsaDropdown2.vue.js +5 -0
- package/dist/components/GcsaDropdown2.vue.js.map +1 -0
- package/dist/components/GcsaEmpty.vue.d.ts +19 -0
- package/dist/components/GcsaEmpty.vue.js +39 -0
- package/dist/components/GcsaEmpty.vue.js.map +1 -0
- package/dist/components/GcsaEmpty2.vue.js +5 -0
- package/dist/components/GcsaEmpty2.vue.js.map +1 -0
- package/dist/components/GcsaField.vue.d.ts +18 -0
- package/dist/components/GcsaField.vue.js +73 -0
- package/dist/components/GcsaField.vue.js.map +1 -0
- package/dist/components/GcsaField2.vue.js +5 -0
- package/dist/components/GcsaField2.vue.js.map +1 -0
- package/dist/components/GcsaForm.vue.d.ts +32 -0
- package/dist/components/GcsaForm.vue.js +77 -0
- package/dist/components/GcsaForm.vue.js.map +1 -0
- package/dist/components/GcsaForm2.vue.js +5 -0
- package/dist/components/GcsaForm2.vue.js.map +1 -0
- package/dist/components/GcsaFormField.vue.d.ts +39 -0
- package/dist/components/GcsaFormField.vue.js +54 -0
- package/dist/components/GcsaFormField.vue.js.map +1 -0
- package/dist/components/GcsaFormField2.vue.js +5 -0
- package/dist/components/GcsaFormField2.vue.js.map +1 -0
- package/dist/components/GcsaIcon.vue.d.ts +5 -0
- package/dist/components/GcsaIcon.vue.js +21 -0
- package/dist/components/GcsaIcon.vue.js.map +1 -0
- package/dist/components/GcsaIcon2.vue.js +5 -0
- package/dist/components/GcsaIcon2.vue.js.map +1 -0
- package/dist/components/GcsaImagePreview.vue.d.ts +9 -0
- package/dist/components/GcsaImagePreview.vue.js +64 -0
- package/dist/components/GcsaImagePreview.vue.js.map +1 -0
- package/dist/components/GcsaImagePreview2.vue.js +5 -0
- package/dist/components/GcsaImagePreview2.vue.js.map +1 -0
- package/dist/components/GcsaInput.vue.d.ts +19 -0
- package/dist/components/GcsaInput.vue.js +67 -0
- package/dist/components/GcsaInput.vue.js.map +1 -0
- package/dist/components/GcsaInput2.vue.js +5 -0
- package/dist/components/GcsaInput2.vue.js.map +1 -0
- package/dist/components/GcsaInputGroup.vue.d.ts +22 -0
- package/dist/components/GcsaInputGroup.vue.js +38 -0
- package/dist/components/GcsaInputGroup.vue.js.map +1 -0
- package/dist/components/GcsaInputGroup2.vue.js +5 -0
- package/dist/components/GcsaInputGroup2.vue.js.map +1 -0
- package/dist/components/GcsaInputNumber.vue.d.ts +13 -0
- package/dist/components/GcsaInputNumber.vue.js +135 -0
- package/dist/components/GcsaInputNumber.vue.js.map +1 -0
- package/dist/components/GcsaInputNumber2.vue.js +5 -0
- package/dist/components/GcsaInputNumber2.vue.js.map +1 -0
- package/dist/components/GcsaLoadingMask.vue.d.ts +3 -0
- package/dist/components/GcsaLoadingMask.vue.js +47 -0
- package/dist/components/GcsaLoadingMask.vue.js.map +1 -0
- package/dist/components/GcsaLoadingMask2.vue.js +5 -0
- package/dist/components/GcsaLoadingMask2.vue.js.map +1 -0
- package/dist/components/GcsaMarkdownRenderer.vue.d.ts +7 -0
- package/dist/components/GcsaMarkdownRenderer.vue.js +35 -0
- package/dist/components/GcsaMarkdownRenderer.vue.js.map +1 -0
- package/dist/components/GcsaMarkdownRenderer2.vue.js +5 -0
- package/dist/components/GcsaMarkdownRenderer2.vue.js.map +1 -0
- package/dist/components/GcsaMenu.vue.d.ts +14 -0
- package/dist/components/GcsaMenu.vue.js +63 -0
- package/dist/components/GcsaMenu.vue.js.map +1 -0
- package/dist/components/GcsaMenu2.vue.js +5 -0
- package/dist/components/GcsaMenu2.vue.js.map +1 -0
- package/dist/components/GcsaMenuNodes.vue.d.ts +9 -0
- package/dist/components/GcsaMenuNodes.vue.js +306 -0
- package/dist/components/GcsaMenuNodes.vue.js.map +1 -0
- package/dist/components/GcsaMenuNodes2.vue.js +5 -0
- package/dist/components/GcsaMenuNodes2.vue.js.map +1 -0
- package/dist/components/GcsaModal.vue.d.ts +26 -0
- package/dist/components/GcsaModal.vue.js +127 -0
- package/dist/components/GcsaModal.vue.js.map +1 -0
- package/dist/components/GcsaModal2.vue.js +5 -0
- package/dist/components/GcsaModal2.vue.js.map +1 -0
- package/dist/components/GcsaMultiSelect.vue.d.ts +16 -0
- package/dist/components/GcsaMultiSelect.vue.js +235 -0
- package/dist/components/GcsaMultiSelect.vue.js.map +1 -0
- package/dist/components/GcsaMultiSelect2.vue.js +5 -0
- package/dist/components/GcsaMultiSelect2.vue.js.map +1 -0
- package/dist/components/GcsaPagination.vue.d.ts +15 -0
- package/dist/components/GcsaPagination.vue.js +119 -0
- package/dist/components/GcsaPagination.vue.js.map +1 -0
- package/dist/components/GcsaPagination2.vue.js +5 -0
- package/dist/components/GcsaPagination2.vue.js.map +1 -0
- package/dist/components/GcsaPopconfirm.vue.d.ts +29 -0
- package/dist/components/GcsaPopconfirm.vue.js +133 -0
- package/dist/components/GcsaPopconfirm.vue.js.map +1 -0
- package/dist/components/GcsaPopconfirm2.vue.js +5 -0
- package/dist/components/GcsaPopconfirm2.vue.js.map +1 -0
- package/dist/components/GcsaPopover.vue.d.ts +21 -0
- package/dist/components/GcsaPopover.vue.js +138 -0
- package/dist/components/GcsaPopover.vue.js.map +1 -0
- package/dist/components/GcsaPopover2.vue.js +5 -0
- package/dist/components/GcsaPopover2.vue.js.map +1 -0
- package/dist/components/GcsaPortal.vue.d.ts +21 -0
- package/dist/components/GcsaPortal.vue.js +32 -0
- package/dist/components/GcsaPortal.vue.js.map +1 -0
- package/dist/components/GcsaPortal2.vue.js +5 -0
- package/dist/components/GcsaPortal2.vue.js.map +1 -0
- package/dist/components/GcsaProgress.vue.d.ts +5 -0
- package/dist/components/GcsaProgress.vue.js +26 -0
- package/dist/components/GcsaProgress.vue.js.map +1 -0
- package/dist/components/GcsaProgress2.vue.js +5 -0
- package/dist/components/GcsaProgress2.vue.js.map +1 -0
- package/dist/components/GcsaRadioGroup.vue.d.ts +9 -0
- package/dist/components/GcsaRadioGroup.vue.js +61 -0
- package/dist/components/GcsaRadioGroup.vue.js.map +1 -0
- package/dist/components/GcsaRadioGroup2.vue.js +5 -0
- package/dist/components/GcsaRadioGroup2.vue.js.map +1 -0
- package/dist/components/GcsaResult.vue.d.ts +19 -0
- package/dist/components/GcsaResult.vue.js +37 -0
- package/dist/components/GcsaResult.vue.js.map +1 -0
- package/dist/components/GcsaResult2.vue.js +5 -0
- package/dist/components/GcsaResult2.vue.js.map +1 -0
- package/dist/components/GcsaRow.vue.d.ts +20 -0
- package/dist/components/GcsaRow.vue.js +19 -0
- package/dist/components/GcsaRow.vue.js.map +1 -0
- package/dist/components/GcsaRow2.vue.js +5 -0
- package/dist/components/GcsaRow2.vue.js.map +1 -0
- package/dist/components/GcsaSelect.vue.d.ts +15 -0
- package/dist/components/GcsaSelect.vue.js +183 -0
- package/dist/components/GcsaSelect.vue.js.map +1 -0
- package/dist/components/GcsaSelect2.vue.js +5 -0
- package/dist/components/GcsaSelect2.vue.js.map +1 -0
- package/dist/components/GcsaSkeleton.vue.d.ts +6 -0
- package/dist/components/GcsaSkeleton.vue.js +20 -0
- package/dist/components/GcsaSkeleton.vue.js.map +1 -0
- package/dist/components/GcsaSkeleton2.vue.js +5 -0
- package/dist/components/GcsaSkeleton2.vue.js.map +1 -0
- package/dist/components/GcsaSpace.vue.d.ts +18 -0
- package/dist/components/GcsaSpace.vue.js +19 -0
- package/dist/components/GcsaSpace.vue.js.map +1 -0
- package/dist/components/GcsaSpace2.vue.js +5 -0
- package/dist/components/GcsaSpace2.vue.js.map +1 -0
- package/dist/components/GcsaSpin.vue.d.ts +20 -0
- package/dist/components/GcsaSpin.vue.js +29 -0
- package/dist/components/GcsaSpin.vue.js.map +1 -0
- package/dist/components/GcsaSpin2.vue.js +5 -0
- package/dist/components/GcsaSpin2.vue.js.map +1 -0
- package/dist/components/GcsaStatistic.vue.d.ts +18 -0
- package/dist/components/GcsaStatistic.vue.js +23 -0
- package/dist/components/GcsaStatistic.vue.js.map +1 -0
- package/dist/components/GcsaStatistic2.vue.js +5 -0
- package/dist/components/GcsaStatistic2.vue.js.map +1 -0
- package/dist/components/GcsaSteps.vue.d.ts +14 -0
- package/dist/components/GcsaSteps.vue.js +77 -0
- package/dist/components/GcsaSteps.vue.js.map +1 -0
- package/dist/components/GcsaSteps2.vue.js +5 -0
- package/dist/components/GcsaSteps2.vue.js.map +1 -0
- package/dist/components/GcsaSwitch.vue.d.ts +22 -0
- package/dist/components/GcsaSwitch.vue.js +52 -0
- package/dist/components/GcsaSwitch.vue.js.map +1 -0
- package/dist/components/GcsaSwitch2.vue.js +5 -0
- package/dist/components/GcsaSwitch2.vue.js.map +1 -0
- package/dist/components/GcsaTabs.vue.d.ts +22 -0
- package/dist/components/GcsaTabs.vue.js +61 -0
- package/dist/components/GcsaTabs.vue.js.map +1 -0
- package/dist/components/GcsaTabs2.vue.js +5 -0
- package/dist/components/GcsaTabs2.vue.js.map +1 -0
- package/dist/components/GcsaTag.vue.d.ts +18 -0
- package/dist/components/GcsaTag.vue.js +19 -0
- package/dist/components/GcsaTag.vue.js.map +1 -0
- package/dist/components/GcsaTag2.vue.js +5 -0
- package/dist/components/GcsaTag2.vue.js.map +1 -0
- package/dist/components/GcsaTextarea.vue.d.ts +18 -0
- package/dist/components/GcsaTextarea.vue.js +66 -0
- package/dist/components/GcsaTextarea.vue.js.map +1 -0
- package/dist/components/GcsaTextarea2.vue.js +5 -0
- package/dist/components/GcsaTextarea2.vue.js.map +1 -0
- package/dist/components/GcsaTimePicker.vue.d.ts +17 -0
- package/dist/components/GcsaTimePicker.vue.js +264 -0
- package/dist/components/GcsaTimePicker.vue.js.map +1 -0
- package/dist/components/GcsaTimePicker2.vue.js +5 -0
- package/dist/components/GcsaTimePicker2.vue.js.map +1 -0
- package/dist/components/GcsaTimeline.vue.d.ts +3 -0
- package/dist/components/GcsaTimeline.vue.js +41 -0
- package/dist/components/GcsaTimeline.vue.js.map +1 -0
- package/dist/components/GcsaTimeline2.vue.js +5 -0
- package/dist/components/GcsaTimeline2.vue.js.map +1 -0
- package/dist/components/GcsaToastStack.vue.d.ts +3 -0
- package/dist/components/GcsaToastStack.vue.js +96 -0
- package/dist/components/GcsaToastStack.vue.js.map +1 -0
- package/dist/components/GcsaToastStack2.vue.js +5 -0
- package/dist/components/GcsaToastStack2.vue.js.map +1 -0
- package/dist/components/GcsaTooltip.vue.d.ts +28 -0
- package/dist/components/GcsaTooltip.vue.js +102 -0
- package/dist/components/GcsaTooltip.vue.js.map +1 -0
- package/dist/components/GcsaTooltip2.vue.js +5 -0
- package/dist/components/GcsaTooltip2.vue.js.map +1 -0
- package/dist/components/GcsaTransfer.vue.d.ts +12 -0
- package/dist/components/GcsaTransfer.vue.js +139 -0
- package/dist/components/GcsaTransfer.vue.js.map +1 -0
- package/dist/components/GcsaTransfer2.vue.js +5 -0
- package/dist/components/GcsaTransfer2.vue.js.map +1 -0
- package/dist/components/GcsaTree.vue.d.ts +14 -0
- package/dist/components/GcsaTree.vue.js +76 -0
- package/dist/components/GcsaTree.vue.js.map +1 -0
- package/dist/components/GcsaTree2.vue.js +5 -0
- package/dist/components/GcsaTree2.vue.js.map +1 -0
- package/dist/components/GcsaTypography.vue.d.ts +21 -0
- package/dist/components/GcsaTypography.vue.js +21 -0
- package/dist/components/GcsaTypography.vue.js.map +1 -0
- package/dist/components/GcsaTypography2.vue.js +5 -0
- package/dist/components/GcsaTypography2.vue.js.map +1 -0
- package/dist/components/GcsaUpload.vue.d.ts +26 -0
- package/dist/components/GcsaUpload.vue.js +160 -0
- package/dist/components/GcsaUpload.vue.js.map +1 -0
- package/dist/components/GcsaUpload2.vue.js +5 -0
- package/dist/components/GcsaUpload2.vue.js.map +1 -0
- package/dist/components/gcsaDataTableTypes.d.ts +18 -0
- package/dist/composables/gcsaFormTypes.d.ts +9 -0
- package/dist/composables/useDocumentThemeSync.d.ts +3 -0
- package/dist/composables/useDocumentThemeSync.js +7 -0
- package/dist/composables/useDocumentThemeSync.js.map +1 -0
- package/dist/composables/useGcsaComponentSize.d.ts +7 -0
- package/dist/composables/useGcsaComponentSize.js +26 -0
- package/dist/composables/useGcsaComponentSize.js.map +1 -0
- package/dist/composables/useGcsaFormField.d.ts +26 -0
- package/dist/composables/useGcsaFormField.js +47 -0
- package/dist/composables/useGcsaFormField.js.map +1 -0
- package/dist/composables/useGcsaFormSchema.d.ts +3 -0
- package/dist/composables/useGcsaFormSchema.js +7 -0
- package/dist/composables/useGcsaFormSchema.js.map +1 -0
- package/dist/composables/useGcsaLocale.d.ts +5 -0
- package/dist/composables/useGcsaLocale.js +17 -0
- package/dist/composables/useGcsaLocale.js.map +1 -0
- package/dist/composables/useGcsaMessage.d.ts +2 -0
- package/dist/composables/useGcsaMessage.js +12 -0
- package/dist/composables/useGcsaMessage.js.map +1 -0
- package/dist/composables/useGcsaPopupZIndex.d.ts +6 -0
- package/dist/composables/useGcsaPopupZIndex.js +16 -0
- package/dist/composables/useGcsaPopupZIndex.js.map +1 -0
- package/dist/composables/useGcsaTextCount.d.ts +17 -0
- package/dist/composables/useGcsaTextCount.js +21 -0
- package/dist/composables/useGcsaTextCount.js.map +1 -0
- package/dist/composables/useGcsaTheme.d.ts +3 -0
- package/dist/composables/useGcsaTheme.js +11 -0
- package/dist/composables/useGcsaTheme.js.map +1 -0
- package/dist/composables/useGcsaZIndex.d.ts +10 -0
- package/dist/composables/useGcsaZIndex.js +44 -0
- package/dist/composables/useGcsaZIndex.js.map +1 -0
- package/dist/composables/useMessage.d.ts +7 -0
- package/dist/composables/useMessage.js +5 -0
- package/dist/composables/useMessage.js.map +1 -0
- package/dist/composables/usePreserveScrollOnFocus.d.ts +4 -0
- package/dist/composables/usePreserveScrollOnFocus.js +86 -0
- package/dist/composables/usePreserveScrollOnFocus.js.map +1 -0
- package/dist/icons/iconNames.d.ts +7 -0
- package/dist/icons/iconNames.js +24 -0
- package/dist/icons/iconNames.js.map +1 -0
- package/dist/icons/index.d.ts +2 -0
- package/dist/icons/registry.d.ts +3 -0
- package/dist/icons/registry.js +58 -0
- package/dist/icons/registry.js.map +1 -0
- package/dist/icons/svg/alert.svg.js +9 -0
- package/dist/icons/svg/alert.svg.js.map +1 -0
- package/dist/icons/svg/assets.svg.js +9 -0
- package/dist/icons/svg/assets.svg.js.map +1 -0
- package/dist/icons/svg/chat.svg.js +8 -0
- package/dist/icons/svg/chat.svg.js.map +1 -0
- package/dist/icons/svg/check.svg.js +8 -0
- package/dist/icons/svg/check.svg.js.map +1 -0
- package/dist/icons/svg/chevron-down.svg.js +8 -0
- package/dist/icons/svg/chevron-down.svg.js.map +1 -0
- package/dist/icons/svg/chevron-left.svg.js +8 -0
- package/dist/icons/svg/chevron-left.svg.js.map +1 -0
- package/dist/icons/svg/chevron-right.svg.js +8 -0
- package/dist/icons/svg/chevron-right.svg.js.map +1 -0
- package/dist/icons/svg/chevron-up.svg.js +8 -0
- package/dist/icons/svg/chevron-up.svg.js.map +1 -0
- package/dist/icons/svg/close.svg.js +6 -0
- package/dist/icons/svg/close.svg.js.map +1 -0
- package/dist/icons/svg/dashboard.svg.js +8 -0
- package/dist/icons/svg/dashboard.svg.js.map +1 -0
- package/dist/icons/svg/menu.svg.js +8 -0
- package/dist/icons/svg/menu.svg.js.map +1 -0
- package/dist/icons/svg/plus.svg.js +6 -0
- package/dist/icons/svg/plus.svg.js.map +1 -0
- package/dist/icons/svg/result-empty.svg.js +6 -0
- package/dist/icons/svg/result-empty.svg.js.map +1 -0
- package/dist/icons/svg/settings.svg.js +8 -0
- package/dist/icons/svg/settings.svg.js.map +1 -0
- package/dist/icons/svg/users.svg.js +11 -0
- package/dist/icons/svg/users.svg.js.map +1 -0
- package/dist/index.d.ts +87 -0
- package/dist/index.js +172 -0
- package/dist/index.js.map +1 -0
- package/dist/loading/directive.d.ts +5 -0
- package/dist/loading/directive.js +57 -0
- package/dist/loading/directive.js.map +1 -0
- package/dist/loading/index.d.ts +7 -0
- package/dist/loading/index.js +14 -0
- package/dist/loading/index.js.map +1 -0
- package/dist/loading/service.d.ts +28 -0
- package/dist/loading/service.js +106 -0
- package/dist/loading/service.js.map +1 -0
- package/dist/resolver.d.ts +16 -0
- package/dist/resolver.js +16 -0
- package/dist/resolver.js.map +1 -0
- package/dist/style.css +8028 -0
- package/dist/types/componentProps.d.ts +565 -0
- package/dist/types/index.d.ts +2 -0
- package/dist/types/shared.d.ts +42 -0
- package/dist/utils/gcsaDateValue.d.ts +24 -0
- package/dist/utils/gcsaDateValue.js +60 -0
- package/dist/utils/gcsaDateValue.js.map +1 -0
- package/dist/utils/gcsaTableColumns.d.ts +19 -0
- package/dist/utils/gcsaTableColumns.js +50 -0
- package/dist/utils/gcsaTableColumns.js.map +1 -0
- package/dist/utils/zodValidators.d.ts +21 -0
- package/dist/utils/zodValidators.js +35 -0
- package/dist/utils/zodValidators.js.map +1 -0
- package/package.json +67 -0
- package/src/components/ConsoleHeader.vue +22 -0
- package/src/components/ConsolePage.vue +17 -0
- package/src/components/ConsoleShell.vue +206 -0
- package/src/components/ConsoleSidebar.vue +61 -0
- package/src/components/GcsaAlert.vue +25 -0
- package/src/components/GcsaAutoComplete.vue +165 -0
- package/src/components/GcsaAvatar.vue +19 -0
- package/src/components/GcsaBadge.vue +16 -0
- package/src/components/GcsaBrandMark.vue +20 -0
- package/src/components/GcsaBreadcrumb.vue +20 -0
- package/src/components/GcsaButton.vue +32 -0
- package/src/components/GcsaCalendar.vue +39 -0
- package/src/components/GcsaCard.vue +20 -0
- package/src/components/GcsaCascader.vue +84 -0
- package/src/components/GcsaChatPanel.vue +249 -0
- package/src/components/GcsaCheckbox.vue +45 -0
- package/src/components/GcsaCollapse.vue +51 -0
- package/src/components/GcsaConfigProvider.vue +147 -0
- package/src/components/GcsaDataTable.vue +1183 -0
- package/src/components/GcsaDatePicker.vue +232 -0
- package/src/components/GcsaDateRangeMonthPanel.vue +66 -0
- package/src/components/GcsaDateRangePicker.vue +208 -0
- package/src/components/GcsaDateTimePicker.vue +379 -0
- package/src/components/GcsaDescriptions.vue +16 -0
- package/src/components/GcsaDivider.vue +11 -0
- package/src/components/GcsaDrawer.vue +97 -0
- package/src/components/GcsaDropdown.vue +84 -0
- package/src/components/GcsaEmpty.vue +28 -0
- package/src/components/GcsaField.vue +27 -0
- package/src/components/GcsaForm.vue +70 -0
- package/src/components/GcsaFormField.vue +53 -0
- package/src/components/GcsaIcon.vue +24 -0
- package/src/components/GcsaImagePreview.vue +28 -0
- package/src/components/GcsaInput.vue +80 -0
- package/src/components/GcsaInputGroup.vue +37 -0
- package/src/components/GcsaInputNumber.vue +165 -0
- package/src/components/GcsaLoadingMask.vue +49 -0
- package/src/components/GcsaMarkdownRenderer.vue +49 -0
- package/src/components/GcsaMenu.vue +86 -0
- package/src/components/GcsaMenuNodes.vue +226 -0
- package/src/components/GcsaModal.vue +106 -0
- package/src/components/GcsaMultiSelect.vue +197 -0
- package/src/components/GcsaPagination.vue +147 -0
- package/src/components/GcsaPopconfirm.vue +93 -0
- package/src/components/GcsaPopover.vue +121 -0
- package/src/components/GcsaPortal.vue +41 -0
- package/src/components/GcsaProgress.vue +16 -0
- package/src/components/GcsaRadioGroup.vue +45 -0
- package/src/components/GcsaResult.vue +23 -0
- package/src/components/GcsaRow.vue +16 -0
- package/src/components/GcsaSelect.vue +154 -0
- package/src/components/GcsaSkeleton.vue +21 -0
- package/src/components/GcsaSpace.vue +13 -0
- package/src/components/GcsaSpin.vue +25 -0
- package/src/components/GcsaStatistic.vue +16 -0
- package/src/components/GcsaSteps.vue +30 -0
- package/src/components/GcsaSwitch.vue +38 -0
- package/src/components/GcsaTabs.vue +55 -0
- package/src/components/GcsaTag.vue +13 -0
- package/src/components/GcsaTextarea.vue +77 -0
- package/src/components/GcsaTimePicker.vue +306 -0
- package/src/components/GcsaTimeline.vue +17 -0
- package/src/components/GcsaToastStack.vue +45 -0
- package/src/components/GcsaTooltip.vue +79 -0
- package/src/components/GcsaTransfer.vue +50 -0
- package/src/components/GcsaTree.vue +56 -0
- package/src/components/GcsaTypography.vue +28 -0
- package/src/components/GcsaUpload.vue +154 -0
- package/src/components/gcsaDataTableTypes.ts +18 -0
- package/src/composables/gcsaFormTypes.ts +30 -0
- package/src/composables/useDocumentThemeSync.ts +6 -0
- package/src/composables/useGcsaComponentSize.ts +30 -0
- package/src/composables/useGcsaFormField.ts +49 -0
- package/src/composables/useGcsaFormSchema.ts +6 -0
- package/src/composables/useGcsaLocale.ts +18 -0
- package/src/composables/useGcsaMessage.ts +10 -0
- package/src/composables/useGcsaPopupZIndex.ts +24 -0
- package/src/composables/useGcsaTextCount.ts +48 -0
- package/src/composables/useGcsaTheme.ts +9 -0
- package/src/composables/useGcsaZIndex.ts +62 -0
- package/src/composables/useMessage.ts +9 -0
- package/src/composables/usePreserveScrollOnFocus.ts +153 -0
- package/src/icons/iconNames.ts +27 -0
- package/src/icons/index.ts +8 -0
- package/src/icons/registry.ts +43 -0
- package/src/icons/svg/alert.svg +4 -0
- package/src/icons/svg/assets.svg +4 -0
- package/src/icons/svg/chat.svg +3 -0
- package/src/icons/svg/check.svg +3 -0
- package/src/icons/svg/chevron-down.svg +3 -0
- package/src/icons/svg/chevron-left.svg +3 -0
- package/src/icons/svg/chevron-right.svg +3 -0
- package/src/icons/svg/chevron-up.svg +3 -0
- package/src/icons/svg/close.svg +1 -0
- package/src/icons/svg/dashboard.svg +3 -0
- package/src/icons/svg/menu.svg +3 -0
- package/src/icons/svg/plus.svg +1 -0
- package/src/icons/svg/result-empty.svg +1 -0
- package/src/icons/svg/settings.svg +3 -0
- package/src/icons/svg/users.svg +6 -0
- package/src/index.ts +193 -0
- package/src/loading/directive.ts +104 -0
- package/src/loading/index.ts +19 -0
- package/src/loading/service.ts +216 -0
- package/src/resolver.ts +22 -0
- package/src/tanstack-table.d.ts +7 -0
- package/src/types/componentProps.ts +692 -0
- package/src/types/index.ts +2 -0
- package/src/types/shared.ts +55 -0
- package/src/utils/gcsaDateValue.ts +98 -0
- package/src/utils/gcsaTableColumns.ts +92 -0
- package/src/utils/zodValidators.ts +45 -0
- package/src/vite-env.d.ts +7 -0
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
import { defineComponent as I, useAttrs as N, computed as s, inject as T, ref as v, watch as V, openBlock as l, createBlock as f, unref as t, withCtx as n, Teleport as Z, createElementVNode as c, createVNode as r, normalizeStyle as h, mergeProps as D, createCommentVNode as g, createElementBlock as k, renderSlot as y, createTextVNode as L, toDisplayString as P, normalizeClass as H } from "vue";
|
|
2
|
+
import { Dialog as a } from "@ark-ui/vue/dialog";
|
|
3
|
+
import { useGcsaLocaleMessages as K } from "../composables/useGcsaLocale.js";
|
|
4
|
+
import { useGcsaZIndex as O } from "../composables/useGcsaZIndex.js";
|
|
5
|
+
import { GCSA_THEME_KEY as R } from "../composables/useGcsaTheme.js";
|
|
6
|
+
const U = ["data-gcsa-theme"], Y = {
|
|
7
|
+
key: 1,
|
|
8
|
+
class: "gcsa-modal__header"
|
|
9
|
+
}, j = { class: "gcsa-modal__title" }, q = {
|
|
10
|
+
key: 2,
|
|
11
|
+
class: "gcsa-modal__footer"
|
|
12
|
+
}, ee = /* @__PURE__ */ I({
|
|
13
|
+
name: "GcsaModal",
|
|
14
|
+
inheritAttrs: !1,
|
|
15
|
+
__name: "GcsaModal",
|
|
16
|
+
props: {
|
|
17
|
+
open: { type: Boolean },
|
|
18
|
+
title: {},
|
|
19
|
+
closable: { type: Boolean, default: !0 }
|
|
20
|
+
},
|
|
21
|
+
emits: ["update:open"],
|
|
22
|
+
setup(o, { emit: b }) {
|
|
23
|
+
const d = N(), C = s(() => {
|
|
24
|
+
const { class: e, style: p, ...A } = d;
|
|
25
|
+
return A;
|
|
26
|
+
}), B = s(() => d.class), S = s(() => d.style), M = K(), i = T(R, null), $ = s(() => (i == null ? void 0 : i.value) ?? "dark"), { nextZIndex: _ } = O(), u = v(), m = v(), w = o, x = b;
|
|
27
|
+
V(
|
|
28
|
+
() => w.open,
|
|
29
|
+
(e) => {
|
|
30
|
+
e && (u.value = _(), m.value = _());
|
|
31
|
+
},
|
|
32
|
+
{ immediate: !0 }
|
|
33
|
+
);
|
|
34
|
+
const z = s(
|
|
35
|
+
() => u.value == null ? void 0 : { zIndex: u.value }
|
|
36
|
+
), E = s(
|
|
37
|
+
() => m.value == null ? void 0 : { zIndex: m.value }
|
|
38
|
+
);
|
|
39
|
+
function G(e) {
|
|
40
|
+
x("update:open", e);
|
|
41
|
+
}
|
|
42
|
+
return (e, p) => (l(), f(t(a).Root, {
|
|
43
|
+
open: o.open,
|
|
44
|
+
"lazy-mount": "",
|
|
45
|
+
"unmount-on-exit": "",
|
|
46
|
+
"onUpdate:open": G
|
|
47
|
+
}, {
|
|
48
|
+
default: n(() => [
|
|
49
|
+
(l(), f(Z, { to: "body" }, [
|
|
50
|
+
c("div", {
|
|
51
|
+
class: "gcsa-portal-scope gcsa-modal-portal",
|
|
52
|
+
"data-gcsa-theme": $.value
|
|
53
|
+
}, [
|
|
54
|
+
r(t(a).Backdrop, {
|
|
55
|
+
class: "gcsa-modal__backdrop",
|
|
56
|
+
style: h(z.value)
|
|
57
|
+
}, null, 8, ["style"]),
|
|
58
|
+
r(t(a).Positioner, {
|
|
59
|
+
class: "gcsa-modal__positioner",
|
|
60
|
+
style: h(E.value)
|
|
61
|
+
}, {
|
|
62
|
+
default: n(() => [
|
|
63
|
+
r(t(a).Content, D({
|
|
64
|
+
class: ["gcsa-modal__panel gcsa-ui-surface", B.value],
|
|
65
|
+
style: S.value
|
|
66
|
+
}, C.value), {
|
|
67
|
+
default: n(() => [
|
|
68
|
+
o.closable ? (l(), f(t(a).CloseTrigger, {
|
|
69
|
+
key: 0,
|
|
70
|
+
class: "gcsa-modal__close",
|
|
71
|
+
"aria-label": t(M).close
|
|
72
|
+
}, {
|
|
73
|
+
default: n(() => [...p[0] || (p[0] = [
|
|
74
|
+
c("svg", {
|
|
75
|
+
width: "14",
|
|
76
|
+
height: "14",
|
|
77
|
+
viewBox: "0 0 14 14",
|
|
78
|
+
fill: "none",
|
|
79
|
+
"aria-hidden": "true"
|
|
80
|
+
}, [
|
|
81
|
+
c("path", {
|
|
82
|
+
d: "M2 2l10 10M12 2L2 12",
|
|
83
|
+
stroke: "currentColor",
|
|
84
|
+
"stroke-width": "1.5",
|
|
85
|
+
"stroke-linecap": "round"
|
|
86
|
+
})
|
|
87
|
+
], -1)
|
|
88
|
+
])]),
|
|
89
|
+
_: 1
|
|
90
|
+
}, 8, ["aria-label"])) : g("", !0),
|
|
91
|
+
o.title || e.$slots.title ? (l(), k("header", Y, [
|
|
92
|
+
r(t(a).Title, { "as-child": "" }, {
|
|
93
|
+
default: n(() => [
|
|
94
|
+
c("div", j, [
|
|
95
|
+
y(e.$slots, "title", {}, () => [
|
|
96
|
+
L(P(o.title), 1)
|
|
97
|
+
])
|
|
98
|
+
])
|
|
99
|
+
]),
|
|
100
|
+
_: 3
|
|
101
|
+
})
|
|
102
|
+
])) : g("", !0),
|
|
103
|
+
c("div", {
|
|
104
|
+
class: H(["gcsa-modal__body", { "gcsa-modal__body--titled": o.title || e.$slots.title }])
|
|
105
|
+
}, [
|
|
106
|
+
y(e.$slots, "default")
|
|
107
|
+
], 2),
|
|
108
|
+
e.$slots.footer ? (l(), k("div", q, [
|
|
109
|
+
y(e.$slots, "footer")
|
|
110
|
+
])) : g("", !0)
|
|
111
|
+
]),
|
|
112
|
+
_: 3
|
|
113
|
+
}, 16, ["class", "style"])
|
|
114
|
+
]),
|
|
115
|
+
_: 3
|
|
116
|
+
}, 8, ["style"])
|
|
117
|
+
], 8, U)
|
|
118
|
+
]))
|
|
119
|
+
]),
|
|
120
|
+
_: 3
|
|
121
|
+
}, 8, ["open"]));
|
|
122
|
+
}
|
|
123
|
+
});
|
|
124
|
+
export {
|
|
125
|
+
ee as default
|
|
126
|
+
};
|
|
127
|
+
//# sourceMappingURL=GcsaModal.vue.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GcsaModal.vue.js","sources":["../../src/components/GcsaModal.vue"],"sourcesContent":["<template>\n <Dialog.Root :open=\"open\" lazy-mount unmount-on-exit @update:open=\"onOpenChange\">\n <Teleport to=\"body\">\n <div class=\"gcsa-portal-scope gcsa-modal-portal\" :data-gcsa-theme=\"theme\">\n <Dialog.Backdrop class=\"gcsa-modal__backdrop\" :style=\"backdropStyle\" />\n <Dialog.Positioner class=\"gcsa-modal__positioner\" :style=\"positionerStyle\">\n <Dialog.Content\n class=\"gcsa-modal__panel gcsa-ui-surface\"\n :class=\"panelClass\"\n :style=\"panelStyle\"\n v-bind=\"panelAttrs\"\n >\n <Dialog.CloseTrigger\n v-if=\"closable\"\n class=\"gcsa-modal__close\"\n :aria-label=\"messages.close\"\n >\n <svg width=\"14\" height=\"14\" viewBox=\"0 0 14 14\" fill=\"none\" aria-hidden=\"true\">\n <path\n d=\"M2 2l10 10M12 2L2 12\"\n stroke=\"currentColor\"\n stroke-width=\"1.5\"\n stroke-linecap=\"round\"\n />\n </svg>\n </Dialog.CloseTrigger>\n <header v-if=\"title || $slots.title\" class=\"gcsa-modal__header\">\n <Dialog.Title as-child>\n <div class=\"gcsa-modal__title\">\n <slot name=\"title\">{{ title }}</slot>\n </div>\n </Dialog.Title>\n </header>\n <div class=\"gcsa-modal__body\" :class=\"{ 'gcsa-modal__body--titled': title || $slots.title }\">\n <slot />\n </div>\n <div v-if=\"$slots.footer\" class=\"gcsa-modal__footer\">\n <slot name=\"footer\" />\n </div>\n </Dialog.Content>\n </Dialog.Positioner>\n </div>\n </Teleport>\n </Dialog.Root>\n</template>\n\n<script setup lang=\"ts\">\nimport { computed, inject, ref, useAttrs, watch, type ComputedRef } from 'vue';\nimport { Dialog } from '@ark-ui/vue/dialog';\nimport type { GcsaConsoleTheme } from '@gcsa/console-core';\nimport type { GcsaModalProps } from '../types/componentProps';\nimport { useGcsaLocaleMessages } from '../composables/useGcsaLocale';\nimport { useGcsaZIndex } from '../composables/useGcsaZIndex';\nimport { GCSA_THEME_KEY } from '../composables/useGcsaTheme';\n\ndefineOptions({ name: 'GcsaModal', inheritAttrs: false });\n\nconst attrs = useAttrs();\nconst panelAttrs = computed(() => {\n const { class: _class, style: _style, ...rest } = attrs;\n return rest;\n});\nconst panelClass = computed(() => attrs.class);\nconst panelStyle = computed(() => attrs.style);\n\nconst messages = useGcsaLocaleMessages();\nconst injectedTheme = inject<ComputedRef<GcsaConsoleTheme> | null>(GCSA_THEME_KEY, null);\nconst theme = computed(() => injectedTheme?.value ?? 'dark');\nconst { nextZIndex } = useGcsaZIndex();\nconst backdropZ = ref<number>();\nconst positionerZ = ref<number>();\n\nconst props = withDefaults(\n defineProps<GcsaModalProps>(),\n {\n closable: true\n }\n);\n\nconst emit = defineEmits<{\n 'update:open': [value: boolean];\n}>();\n\nwatch(\n () => props.open,\n (open) => {\n if (open) {\n backdropZ.value = nextZIndex();\n positionerZ.value = nextZIndex();\n }\n },\n { immediate: true }\n);\n\nconst backdropStyle = computed(() =>\n backdropZ.value == null ? undefined : { zIndex: backdropZ.value }\n);\n\nconst positionerStyle = computed(() =>\n positionerZ.value == null ? undefined : { zIndex: positionerZ.value }\n);\n\nfunction onOpenChange(open: boolean) {\n emit('update:open', open);\n}\n</script>\n"],"names":["attrs","useAttrs","panelAttrs","computed","_class","_style","rest","panelClass","panelStyle","messages","useGcsaLocaleMessages","injectedTheme","inject","GCSA_THEME_KEY","theme","nextZIndex","useGcsaZIndex","backdropZ","ref","positionerZ","props","__props","emit","__emit","watch","open","backdropStyle","positionerStyle","onOpenChange","_createBlock","_unref","Dialog","_Teleport","_createElementVNode","_createVNode","_mergeProps","_cache","$slots","_openBlock","_createElementBlock","_hoisted_2","_hoisted_3","_renderSlot","_ctx","_hoisted_4"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GcsaModal2.vue.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { GcsaSelectOption } from '@gcsa/console-core';
|
|
2
|
+
import { GcsaMultiSelectProps } from '../types/componentProps';
|
|
3
|
+
declare const _default: import('vue').DefineComponent<GcsaMultiSelectProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
4
|
+
"update:modelValue": (value: string[]) => any;
|
|
5
|
+
}, string, import('vue').PublicProps, Readonly<GcsaMultiSelectProps> & Readonly<{
|
|
6
|
+
"onUpdate:modelValue"?: ((value: string[]) => any) | undefined;
|
|
7
|
+
}>, {
|
|
8
|
+
options: GcsaSelectOption[];
|
|
9
|
+
portalled: boolean;
|
|
10
|
+
placement: import('..').GcsaMultiSelectPlacement;
|
|
11
|
+
listMaxHeight: number;
|
|
12
|
+
listHintThreshold: number;
|
|
13
|
+
sameWidth: boolean;
|
|
14
|
+
maxTagCount: number;
|
|
15
|
+
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
16
|
+
export default _default;
|
|
@@ -0,0 +1,235 @@
|
|
|
1
|
+
import { defineComponent as q, computed as s, openBlock as a, createBlock as d, unref as o, withCtx as t, createVNode as c, normalizeClass as A, createElementVNode as v, createElementBlock as r, toDisplayString as m, Fragment as p, renderList as x, withModifiers as H, createTextVNode as C, createCommentVNode as k, normalizeStyle as M } from "vue";
|
|
2
|
+
import { createListCollection as J } from "@ark-ui/vue/collection";
|
|
3
|
+
import { Select as n } from "@ark-ui/vue/select";
|
|
4
|
+
import { gcsaControlSizeClass as K, createGcsaPopupPositioning as Q, formatGcsaLocaleMessage as X } from "@gcsa/console-core";
|
|
5
|
+
import z from "./GcsaIcon.vue.js";
|
|
6
|
+
import B from "./GcsaTag.vue.js";
|
|
7
|
+
import Y from "./GcsaPortal.vue.js";
|
|
8
|
+
import { useGcsaLocaleMessages as ee } from "../composables/useGcsaLocale.js";
|
|
9
|
+
import { useGcsaPopupZIndex as te } from "../composables/useGcsaPopupZIndex.js";
|
|
10
|
+
import { useGcsaComponentSize as le } from "../composables/useGcsaComponentSize.js";
|
|
11
|
+
const se = { class: "gcsa-multi-select__value" }, ae = {
|
|
12
|
+
key: 0,
|
|
13
|
+
class: "gcsa-multi-select__placeholder"
|
|
14
|
+
}, oe = { class: "gcsa-multi-select__tag-label" }, ce = ["onClick"], ne = {
|
|
15
|
+
key: 0,
|
|
16
|
+
class: "gcsa-select-empty",
|
|
17
|
+
role: "status"
|
|
18
|
+
}, ie = { class: "gcsa-select-empty__text" }, ue = {
|
|
19
|
+
key: 0,
|
|
20
|
+
class: "gcsa-select-hint"
|
|
21
|
+
}, xe = /* @__PURE__ */ q({
|
|
22
|
+
name: "GcsaMultiSelect",
|
|
23
|
+
__name: "GcsaMultiSelect",
|
|
24
|
+
props: {
|
|
25
|
+
modelValue: {},
|
|
26
|
+
options: { default: () => [] },
|
|
27
|
+
placeholder: {},
|
|
28
|
+
invalid: { type: Boolean },
|
|
29
|
+
placement: { default: "bottom-start" },
|
|
30
|
+
listMaxHeight: { default: 280 },
|
|
31
|
+
listHintThreshold: { default: 16 },
|
|
32
|
+
groupOrder: {},
|
|
33
|
+
maxTagCount: { default: 2 },
|
|
34
|
+
portalled: { type: Boolean, default: !0 },
|
|
35
|
+
sameWidth: { type: Boolean, default: !0 },
|
|
36
|
+
size: {}
|
|
37
|
+
},
|
|
38
|
+
emits: ["update:modelValue"],
|
|
39
|
+
setup(g, { emit: L }) {
|
|
40
|
+
const l = g, O = le(() => l.size), w = s(() => K("gcsa-select-trigger", O.value)), S = L, I = ee(), { zIndex: _, onOpenChange: P } = te(), f = s(() => l.modelValue ?? []), $ = s(() => l.options.some((e) => e.group)), T = s(
|
|
41
|
+
() => J({
|
|
42
|
+
items: l.options,
|
|
43
|
+
itemToValue: (e) => e.value,
|
|
44
|
+
itemToString: (e) => e.label,
|
|
45
|
+
isItemDisabled: (e) => e.disabled ?? !1,
|
|
46
|
+
...$.value ? {
|
|
47
|
+
groupBy: (e) => e.group ?? "",
|
|
48
|
+
groupSort: l.groupOrder ?? "asc"
|
|
49
|
+
} : {}
|
|
50
|
+
})
|
|
51
|
+
), h = s(
|
|
52
|
+
() => f.value.map(
|
|
53
|
+
(e) => l.options.find((u) => u.value === e) || { label: e, value: e }
|
|
54
|
+
)
|
|
55
|
+
), b = s(() => h.value.slice(0, l.maxTagCount)), V = s(
|
|
56
|
+
() => Math.max(0, h.value.length - b.value.length)
|
|
57
|
+
), D = s(
|
|
58
|
+
() => Q({
|
|
59
|
+
placement: l.placement,
|
|
60
|
+
sameWidth: l.sameWidth,
|
|
61
|
+
gutter: 4
|
|
62
|
+
})
|
|
63
|
+
), N = s(() => l.options.length >= l.listHintThreshold), E = s(
|
|
64
|
+
() => X(I.value.selectListHint, { count: l.options.length })
|
|
65
|
+
), W = s(() => l.options.length === 0), Z = s(() => I.value.emptyDefault), F = s(() => ({
|
|
66
|
+
"--gcsa-select-list-max-height": `${l.listMaxHeight}px`,
|
|
67
|
+
..._.value == null ? {} : { zIndex: _.value }
|
|
68
|
+
})), R = s(
|
|
69
|
+
() => _.value == null ? void 0 : { zIndex: _.value }
|
|
70
|
+
);
|
|
71
|
+
function U(e) {
|
|
72
|
+
S("update:modelValue", e ?? []);
|
|
73
|
+
}
|
|
74
|
+
function j(e) {
|
|
75
|
+
S(
|
|
76
|
+
"update:modelValue",
|
|
77
|
+
f.value.filter((u) => u !== e)
|
|
78
|
+
);
|
|
79
|
+
}
|
|
80
|
+
return (e, u) => (a(), d(o(n).Root, {
|
|
81
|
+
collection: T.value,
|
|
82
|
+
"model-value": f.value,
|
|
83
|
+
multiple: "",
|
|
84
|
+
"close-on-select": !1,
|
|
85
|
+
positioning: D.value,
|
|
86
|
+
"lazy-mount": "",
|
|
87
|
+
"unmount-on-exit": "",
|
|
88
|
+
"onUpdate:modelValue": U,
|
|
89
|
+
onOpenChange: u[1] || (u[1] = (i) => o(P)(i.open))
|
|
90
|
+
}, {
|
|
91
|
+
default: t(() => [
|
|
92
|
+
c(o(n).Control, { class: "gcsa-select-control gcsa-multi-select" }, {
|
|
93
|
+
default: t(() => [
|
|
94
|
+
c(o(n).Trigger, {
|
|
95
|
+
class: A(["gcsa-select-trigger gcsa-multi-select__trigger gcsa-focus-ring", w.value]),
|
|
96
|
+
"data-invalid": g.invalid || void 0
|
|
97
|
+
}, {
|
|
98
|
+
default: t(() => [
|
|
99
|
+
v("span", se, [
|
|
100
|
+
h.value.length === 0 ? (a(), r("span", ae, m(g.placeholder), 1)) : (a(), r(p, { key: 1 }, [
|
|
101
|
+
(a(!0), r(p, null, x(b.value, (i) => (a(), d(B, {
|
|
102
|
+
key: i.value,
|
|
103
|
+
tone: "primary",
|
|
104
|
+
class: "gcsa-multi-select__tag"
|
|
105
|
+
}, {
|
|
106
|
+
default: t(() => [
|
|
107
|
+
v("span", oe, m(i.label), 1),
|
|
108
|
+
v("button", {
|
|
109
|
+
type: "button",
|
|
110
|
+
class: "gcsa-multi-select__tag-remove",
|
|
111
|
+
"aria-label": "remove",
|
|
112
|
+
onPointerdown: u[0] || (u[0] = H(() => {
|
|
113
|
+
}, ["stop", "prevent"])),
|
|
114
|
+
onClick: H((G) => j(i.value), ["stop", "prevent"])
|
|
115
|
+
}, [
|
|
116
|
+
c(z, {
|
|
117
|
+
name: "close",
|
|
118
|
+
size: "sm"
|
|
119
|
+
})
|
|
120
|
+
], 40, ce)
|
|
121
|
+
]),
|
|
122
|
+
_: 2
|
|
123
|
+
}, 1024))), 128)),
|
|
124
|
+
V.value > 0 ? (a(), d(B, {
|
|
125
|
+
key: 0,
|
|
126
|
+
tone: "primary",
|
|
127
|
+
class: "gcsa-multi-select__tag gcsa-multi-select__tag--rest"
|
|
128
|
+
}, {
|
|
129
|
+
default: t(() => [
|
|
130
|
+
C(" +" + m(V.value), 1)
|
|
131
|
+
]),
|
|
132
|
+
_: 1
|
|
133
|
+
})) : k("", !0)
|
|
134
|
+
], 64))
|
|
135
|
+
]),
|
|
136
|
+
c(o(n).Indicator, {
|
|
137
|
+
class: "gcsa-select-indicator",
|
|
138
|
+
"aria-hidden": "true"
|
|
139
|
+
}, {
|
|
140
|
+
default: t(() => [
|
|
141
|
+
c(z, {
|
|
142
|
+
name: "chevronDown",
|
|
143
|
+
class: "gcsa-select-indicator__icon"
|
|
144
|
+
})
|
|
145
|
+
]),
|
|
146
|
+
_: 1
|
|
147
|
+
})
|
|
148
|
+
]),
|
|
149
|
+
_: 1
|
|
150
|
+
}, 8, ["class", "data-invalid"])
|
|
151
|
+
]),
|
|
152
|
+
_: 1
|
|
153
|
+
}),
|
|
154
|
+
c(Y, { portalled: g.portalled }, {
|
|
155
|
+
default: t(() => [
|
|
156
|
+
c(o(n).Positioner, {
|
|
157
|
+
style: M(R.value)
|
|
158
|
+
}, {
|
|
159
|
+
default: t(() => [
|
|
160
|
+
c(o(n).Content, {
|
|
161
|
+
class: "gcsa-select-content gcsa-ui-surface",
|
|
162
|
+
style: M(F.value)
|
|
163
|
+
}, {
|
|
164
|
+
default: t(() => [
|
|
165
|
+
W.value ? (a(), r("div", ne, [
|
|
166
|
+
v("span", ie, m(Z.value), 1)
|
|
167
|
+
])) : (a(), r(p, { key: 1 }, [
|
|
168
|
+
c(o(n).List, { class: "gcsa-select-list" }, {
|
|
169
|
+
default: t(() => [
|
|
170
|
+
(a(!0), r(p, null, x(T.value.group(), ([i, G]) => (a(), d(o(n).ItemGroup, {
|
|
171
|
+
key: i || "default",
|
|
172
|
+
class: "gcsa-select-group"
|
|
173
|
+
}, {
|
|
174
|
+
default: t(() => [
|
|
175
|
+
i ? (a(), d(o(n).ItemGroupLabel, {
|
|
176
|
+
key: 0,
|
|
177
|
+
class: "gcsa-select-group__label"
|
|
178
|
+
}, {
|
|
179
|
+
default: t(() => [
|
|
180
|
+
C(m(i), 1)
|
|
181
|
+
]),
|
|
182
|
+
_: 2
|
|
183
|
+
}, 1024)) : k("", !0),
|
|
184
|
+
(a(!0), r(p, null, x(G, (y) => (a(), d(o(n).Item, {
|
|
185
|
+
key: y.value,
|
|
186
|
+
item: y,
|
|
187
|
+
class: "gcsa-select-item"
|
|
188
|
+
}, {
|
|
189
|
+
default: t(() => [
|
|
190
|
+
c(o(n).ItemText, { class: "gcsa-select-item__text" }, {
|
|
191
|
+
default: t(() => [
|
|
192
|
+
C(m(y.label), 1)
|
|
193
|
+
]),
|
|
194
|
+
_: 2
|
|
195
|
+
}, 1024),
|
|
196
|
+
c(o(n).ItemIndicator, { class: "gcsa-select-item__check" }, {
|
|
197
|
+
default: t(() => [
|
|
198
|
+
c(z, {
|
|
199
|
+
name: "check",
|
|
200
|
+
size: "sm",
|
|
201
|
+
class: "gcsa-select-item__check-icon"
|
|
202
|
+
})
|
|
203
|
+
]),
|
|
204
|
+
_: 1
|
|
205
|
+
})
|
|
206
|
+
]),
|
|
207
|
+
_: 2
|
|
208
|
+
}, 1032, ["item"]))), 128))
|
|
209
|
+
]),
|
|
210
|
+
_: 2
|
|
211
|
+
}, 1024))), 128))
|
|
212
|
+
]),
|
|
213
|
+
_: 1
|
|
214
|
+
}),
|
|
215
|
+
N.value ? (a(), r("div", ue, m(E.value), 1)) : k("", !0)
|
|
216
|
+
], 64))
|
|
217
|
+
]),
|
|
218
|
+
_: 1
|
|
219
|
+
}, 8, ["style"])
|
|
220
|
+
]),
|
|
221
|
+
_: 1
|
|
222
|
+
}, 8, ["style"])
|
|
223
|
+
]),
|
|
224
|
+
_: 1
|
|
225
|
+
}, 8, ["portalled"]),
|
|
226
|
+
c(o(n).HiddenSelect)
|
|
227
|
+
]),
|
|
228
|
+
_: 1
|
|
229
|
+
}, 8, ["collection", "model-value", "positioning"]));
|
|
230
|
+
}
|
|
231
|
+
});
|
|
232
|
+
export {
|
|
233
|
+
xe as default
|
|
234
|
+
};
|
|
235
|
+
//# sourceMappingURL=GcsaMultiSelect.vue.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GcsaMultiSelect.vue.js","sources":["../../src/components/GcsaMultiSelect.vue"],"sourcesContent":["<template>\n <Select.Root\n :collection=\"collection\"\n :model-value=\"selectedValues\"\n multiple\n :close-on-select=\"false\"\n :positioning=\"positioningOptions\"\n lazy-mount\n unmount-on-exit\n @update:model-value=\"onChange\"\n @open-change=\"(details) => onOpenChange(details.open)\"\n >\n <Select.Control class=\"gcsa-select-control gcsa-multi-select\">\n <Select.Trigger\n class=\"gcsa-select-trigger gcsa-multi-select__trigger gcsa-focus-ring\"\n :class=\"triggerSizeClass\"\n :data-invalid=\"invalid || undefined\"\n >\n <span class=\"gcsa-multi-select__value\">\n <span v-if=\"selectedOptions.length === 0\" class=\"gcsa-multi-select__placeholder\">\n {{ placeholder }}\n </span>\n <template v-else>\n <GcsaTag\n v-for=\"option in visibleTags\"\n :key=\"option.value\"\n tone=\"primary\"\n class=\"gcsa-multi-select__tag\"\n >\n <span class=\"gcsa-multi-select__tag-label\">{{ option.label }}</span>\n <button\n type=\"button\"\n class=\"gcsa-multi-select__tag-remove\"\n aria-label=\"remove\"\n @pointerdown.stop.prevent\n @click.stop.prevent=\"removeTag(option.value)\"\n >\n <GcsaIcon name=\"close\" size=\"sm\" />\n </button>\n </GcsaTag>\n <GcsaTag\n v-if=\"hiddenCount > 0\"\n tone=\"primary\"\n class=\"gcsa-multi-select__tag gcsa-multi-select__tag--rest\"\n >\n +{{ hiddenCount }}\n </GcsaTag>\n </template>\n </span>\n <Select.Indicator class=\"gcsa-select-indicator\" aria-hidden=\"true\">\n <GcsaIcon name=\"chevronDown\" class=\"gcsa-select-indicator__icon\" />\n </Select.Indicator>\n </Select.Trigger>\n </Select.Control>\n <GcsaPortal :portalled=\"portalled\">\n <Select.Positioner :style=\"positionerStyle\">\n <Select.Content class=\"gcsa-select-content gcsa-ui-surface\" :style=\"contentStyle\">\n <div v-if=\"isEmpty\" class=\"gcsa-select-empty\" role=\"status\">\n <span class=\"gcsa-select-empty__text\">{{ emptyText }}</span>\n </div>\n <template v-else>\n <Select.List class=\"gcsa-select-list\">\n <Select.ItemGroup\n v-for=\"[groupLabel, groupItems] in collection.group()\"\n :key=\"groupLabel || 'default'\"\n class=\"gcsa-select-group\"\n >\n <Select.ItemGroupLabel v-if=\"groupLabel\" class=\"gcsa-select-group__label\">\n {{ groupLabel }}\n </Select.ItemGroupLabel>\n <Select.Item\n v-for=\"opt in groupItems\"\n :key=\"opt.value\"\n :item=\"opt\"\n class=\"gcsa-select-item\"\n >\n <Select.ItemText class=\"gcsa-select-item__text\">{{ opt.label }}</Select.ItemText>\n <Select.ItemIndicator class=\"gcsa-select-item__check\">\n <GcsaIcon name=\"check\" size=\"sm\" class=\"gcsa-select-item__check-icon\" />\n </Select.ItemIndicator>\n </Select.Item>\n </Select.ItemGroup>\n </Select.List>\n <div v-if=\"showListHint\" class=\"gcsa-select-hint\">\n {{ listHintText }}\n </div>\n </template>\n </Select.Content>\n </Select.Positioner>\n </GcsaPortal>\n <Select.HiddenSelect />\n </Select.Root>\n</template>\n\n<script setup lang=\"ts\">\nimport { computed } from 'vue';\nimport { createListCollection } from '@ark-ui/vue/collection';\nimport { Select } from '@ark-ui/vue/select';\nimport type { GcsaSelectOption, GcsaSelectSize } from '@gcsa/console-core';\nimport type { GcsaMultiSelectProps } from '../types/componentProps';\nimport { createGcsaPopupPositioning, formatGcsaLocaleMessage, gcsaControlSizeClass } from '@gcsa/console-core';\nimport GcsaIcon from './GcsaIcon.vue';\nimport GcsaTag from './GcsaTag.vue';\nimport GcsaPortal from './GcsaPortal.vue';\nimport { useGcsaLocaleMessages } from '../composables/useGcsaLocale';\nimport { useGcsaPopupZIndex } from '../composables/useGcsaPopupZIndex';\nimport { useGcsaComponentSize } from '../composables/useGcsaComponentSize';\n\ndefineOptions({ name: 'GcsaMultiSelect' });\n\nconst props = withDefaults(\n defineProps<GcsaMultiSelectProps>(),\n {\n options: () => [],\n listMaxHeight: 280,\n listHintThreshold: 16,\n maxTagCount: 2,\n portalled: true,\n sameWidth: true,\n placement: 'bottom-start'\n }\n);\n\nconst resolvedSize = useGcsaComponentSize(() => props.size);\nconst triggerSizeClass = computed(() => gcsaControlSizeClass('gcsa-select-trigger', resolvedSize.value));\n\nconst emit = defineEmits<{\n 'update:modelValue': [value: string[]];\n}>();\n\nconst messages = useGcsaLocaleMessages();\nconst { zIndex: popupZIndex, onOpenChange } = useGcsaPopupZIndex();\n\nconst selectedValues = computed(() => props.modelValue ?? []);\nconst hasGroups = computed(() => props.options.some(item => item.group));\n\nconst collection = computed(() =>\n createListCollection({\n items: props.options,\n itemToValue: item => item.value,\n itemToString: item => item.label,\n isItemDisabled: item => item.disabled ?? false,\n ...(hasGroups.value\n ? {\n groupBy: (item: GcsaSelectOption) => item.group ?? '',\n groupSort: props.groupOrder ?? ('asc' as const)\n }\n : {})\n })\n);\n\nconst selectedOptions = computed(() =>\n selectedValues.value.map(\n item => props.options.find(opt => opt.value === item) || { label: item, value: item }\n )\n);\n\nconst visibleTags = computed(() => selectedOptions.value.slice(0, props.maxTagCount));\nconst hiddenCount = computed(() =>\n Math.max(0, selectedOptions.value.length - visibleTags.value.length)\n);\n\nconst positioningOptions = computed(() =>\n createGcsaPopupPositioning({\n placement: props.placement,\n sameWidth: props.sameWidth,\n gutter: 4\n })\n);\n\nconst showListHint = computed(() => props.options.length >= props.listHintThreshold);\nconst listHintText = computed(() =>\n formatGcsaLocaleMessage(messages.value.selectListHint, { count: props.options.length })\n);\nconst isEmpty = computed(() => props.options.length === 0);\nconst emptyText = computed(() => messages.value.emptyDefault);\n\nconst contentStyle = computed(() => ({\n '--gcsa-select-list-max-height': `${props.listMaxHeight}px`,\n ...(popupZIndex.value == null ? {} : { zIndex: popupZIndex.value })\n}));\n\nconst positionerStyle = computed(() =>\n popupZIndex.value == null ? undefined : { zIndex: popupZIndex.value }\n);\n\nfunction onChange(value: string[]) {\n emit('update:modelValue', value ?? []);\n}\n\nfunction removeTag(optionValue: string) {\n emit(\n 'update:modelValue',\n selectedValues.value.filter(item => item !== optionValue)\n );\n}\n</script>\n"],"names":["props","__props","resolvedSize","useGcsaComponentSize","triggerSizeClass","computed","gcsaControlSizeClass","emit","__emit","messages","useGcsaLocaleMessages","popupZIndex","onOpenChange","useGcsaPopupZIndex","selectedValues","hasGroups","item","collection","createListCollection","selectedOptions","opt","visibleTags","hiddenCount","positioningOptions","createGcsaPopupPositioning","showListHint","listHintText","formatGcsaLocaleMessage","isEmpty","emptyText","contentStyle","positionerStyle","onChange","value","removeTag","optionValue","_createBlock","_unref","Select","details","_createVNode","_normalizeClass","_createElementVNode","_hoisted_1","_createElementBlock","_hoisted_2","_toDisplayString","_Fragment","_renderList","option","GcsaTag","_hoisted_3","_withModifiers","$event","GcsaIcon","_createTextVNode","GcsaPortal","_openBlock","_hoisted_5","_hoisted_6","groupLabel","groupItems","_hoisted_7"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8GA,UAAMA,IAAQC,GAaRC,IAAeC,GAAqB,MAAMH,EAAM,IAAI,GACpDI,IAAmBC,EAAS,MAAMC,EAAqB,uBAAuBJ,EAAa,KAAK,CAAC,GAEjGK,IAAOC,GAIPC,IAAWC,GAAA,GACX,EAAE,QAAQC,GAAa,cAAAC,EAAA,IAAiBC,GAAA,GAExCC,IAAiBT,EAAS,MAAML,EAAM,cAAc,CAAA,CAAE,GACtDe,IAAYV,EAAS,MAAML,EAAM,QAAQ,KAAK,CAAAgB,MAAQA,EAAK,KAAK,CAAC,GAEjEC,IAAaZ;AAAA,MAAS,MAC1Ba,EAAqB;AAAA,QACnB,OAAOlB,EAAM;AAAA,QACb,aAAa,OAAQgB,EAAK;AAAA,QAC1B,cAAc,OAAQA,EAAK;AAAA,QAC3B,gBAAgB,CAAAA,MAAQA,EAAK,YAAY;AAAA,QACzC,GAAID,EAAU,QACV;AAAA,UACE,SAAS,CAACC,MAA2BA,EAAK,SAAS;AAAA,UACnD,WAAWhB,EAAM,cAAe;AAAA,QAAA,IAElC,CAAA;AAAA,MAAC,CACN;AAAA,IAAA,GAGGmB,IAAkBd;AAAA,MAAS,MAC/BS,EAAe,MAAM;AAAA,QACnB,CAAAE,MAAQhB,EAAM,QAAQ,KAAK,CAAAoB,MAAOA,EAAI,UAAUJ,CAAI,KAAK,EAAE,OAAOA,GAAM,OAAOA,EAAA;AAAA,MAAK;AAAA,IACtF,GAGIK,IAAchB,EAAS,MAAMc,EAAgB,MAAM,MAAM,GAAGnB,EAAM,WAAW,CAAC,GAC9EsB,IAAcjB;AAAA,MAAS,MAC3B,KAAK,IAAI,GAAGc,EAAgB,MAAM,SAASE,EAAY,MAAM,MAAM;AAAA,IAAA,GAG/DE,IAAqBlB;AAAA,MAAS,MAClCmB,EAA2B;AAAA,QACzB,WAAWxB,EAAM;AAAA,QACjB,WAAWA,EAAM;AAAA,QACjB,QAAQ;AAAA,MAAA,CACT;AAAA,IAAA,GAGGyB,IAAepB,EAAS,MAAML,EAAM,QAAQ,UAAUA,EAAM,iBAAiB,GAC7E0B,IAAerB;AAAA,MAAS,MAC5BsB,EAAwBlB,EAAS,MAAM,gBAAgB,EAAE,OAAOT,EAAM,QAAQ,OAAA,CAAQ;AAAA,IAAA,GAElF4B,IAAUvB,EAAS,MAAML,EAAM,QAAQ,WAAW,CAAC,GACnD6B,IAAYxB,EAAS,MAAMI,EAAS,MAAM,YAAY,GAEtDqB,IAAezB,EAAS,OAAO;AAAA,MACnC,iCAAiC,GAAGL,EAAM,aAAa;AAAA,MACvD,GAAIW,EAAY,SAAS,OAAO,CAAA,IAAK,EAAE,QAAQA,EAAY,MAAA;AAAA,IAAM,EACjE,GAEIoB,IAAkB1B;AAAA,MAAS,MAC/BM,EAAY,SAAS,OAAO,SAAY,EAAE,QAAQA,EAAY,MAAA;AAAA,IAAM;AAGtE,aAASqB,EAASC,GAAiB;AACjC,MAAA1B,EAAK,qBAAqB0B,KAAS,EAAE;AAAA,IACvC;AAEA,aAASC,EAAUC,GAAqB;AACtC,MAAA5B;AAAA,QACE;AAAA,QACAO,EAAe,MAAM,OAAO,CAAAE,MAAQA,MAASmB,CAAW;AAAA,MAAA;AAAA,IAE5D;2BAlMEC,EA0FcC,EAAAC,CAAA,EAAA,MAAA;AAAA,MAzFX,YAAYrB,EAAA;AAAA,MACZ,eAAaH,EAAA;AAAA,MACd,UAAA;AAAA,MACC,mBAAiB;AAAA,MACjB,aAAaS,EAAA;AAAA,MACd,cAAA;AAAA,MACA,mBAAA;AAAA,MACC,uBAAoBS;AAAA,MACpB,+BAAcO,MAAYF,KAAaE,EAAQ,IAAI;AAAA,IAAA;iBAEpD,MAyCiB;AAAA,QAzCjBC,EAyCiBH,EAAAC,CAAA,EAAA,SAAA,EAzCD,OAAM,2CAAuC;AAAA,qBAC3D,MAuCiB;AAAA,YAvCjBE,EAuCiBH,EAAAC,CAAA,EAAA,SAAA;AAAA,cAtCf,OAAKG,EAAA,CAAC,kEACErC,EAAA,KAAgB,CAAA;AAAA,cACvB,gBAAcH,EAAA,WAAW;AAAA,YAAA;yBAE1B,MA8BO;AAAA,gBA9BPyC,EA8BO,QA9BPC,IA8BO;AAAA,kBA7BOxB,EAAA,MAAgB,WAAM,UAAlCyB,EAEO,QAFPC,IAEOC,EADF7C,EAAA,WAAW,GAAA,CAAA,WAEhB2C,EAyBWG,GAAA,EAAA,KAAA,KAAA;AAAA,4BAxBTH,EAgBUG,GAAA,MAAAC,EAfS3B,EAAA,OAAW,CAArB4B,YADTb,EAgBUc,GAAA;AAAA,sBAdP,KAAKD,EAAO;AAAA,sBACb,MAAK;AAAA,sBACL,OAAM;AAAA,oBAAA;iCAEN,MAAoE;AAAA,wBAApEP,EAAoE,QAApES,IAAoEL,EAAtBG,EAAO,KAAK,GAAA,CAAA;AAAA,wBAC1DP,EAQS,UAAA;AAAA,0BAPP,MAAK;AAAA,0BACL,OAAM;AAAA,0BACN,cAAW;AAAA,0BACV,iCAAD,MAAA;AAAA,0BAAA,GAAyB,CAAA,QAAA,SAAA,CAAA;AAAA,0BACxB,SAAKU,EAAA,CAAAC,MAAenB,EAAUe,EAAO,KAAK,GAAA,CAAA,QAAA,SAAA,CAAA;AAAA,wBAAA;0BAE3CT,EAAmCc,GAAA;AAAA,4BAAzB,MAAK;AAAA,4BAAQ,MAAK;AAAA,0BAAA;;;;;oBAIxBhC,EAAA,QAAW,UADnBc,EAMUc,GAAA;AAAA;sBAJR,MAAK;AAAA,sBACL,OAAM;AAAA,oBAAA;iCACP,MACE;AAAA,wBADFK,EAAA,SACKjC,EAAA,KAAW,GAAA,CAAA;AAAA,sBAAA;;;;;gBAIrBkB,EAEmBH,EAAAC,CAAA,EAAA,WAAA;AAAA,kBAFD,OAAM;AAAA,kBAAwB,eAAY;AAAA,gBAAA;6BAC1D,MAAmE;AAAA,oBAAnEE,EAAmEc,GAAA;AAAA,sBAAzD,MAAK;AAAA,sBAAc,OAAM;AAAA,oBAAA;;;;;;;;;;QAIzCd,EAmCagB,GAAA,EAnCA,WAAWvD,EAAA,aAAS;AAAA,qBAC/B,MAiCoB;AAAA,YAjCpBuC,EAiCoBH,EAAAC,CAAA,EAAA,YAAA;AAAA,cAjCA,SAAOP,EAAA,KAAe;AAAA,YAAA;yBACxC,MA+BiB;AAAA,gBA/BjBS,EA+BiBH,EAAAC,CAAA,EAAA,SAAA;AAAA,kBA/BD,OAAM;AAAA,kBAAuC,SAAOR,EAAA,KAAY;AAAA,gBAAA;6BAC9E,MAEM;AAAA,oBAFKF,EAAA,SAAX6B,EAAA,GAAAb,EAEM,OAFNc,IAEM;AAAA,sBADJhB,EAA4D,QAA5DiB,IAA4Db,EAAnBjB,EAAA,KAAS,GAAA,CAAA;AAAA,oBAAA,YAEpDe,EA0BWG,GAAA,EAAA,KAAA,KAAA;AAAA,sBAzBTP,EAqBcH,EAAAC,CAAA,EAAA,MAAA,EArBD,OAAM,sBAAkB;AAAA,mCAEjC,MAAsD;AAAA,2BADxDmB,EAAA,EAAA,GAAAb,EAmBmBG,WAlBkB9B,EAAA,MAAW,SAAK,CAAA,CAA3C2C,GAAYC,CAAU,YADhCzB,EAmBmBC,EAAAC,CAAA,EAAA,WAAA;AAAA,4BAjBhB,KAAKsB,KAAU;AAAA,4BAChB,OAAM;AAAA,0BAAA;uCAEN,MAEwB;AAAA,8BAFKA,UAA7BxB,EAEwBC,EAAAC,CAAA,EAAA,gBAAA;AAAA;gCAFiB,OAAM;AAAA,8BAAA;2CAC7C,MAAgB;AAAA,sCAAbsB,CAAU,GAAA,CAAA;AAAA,gCAAA;;;sCAEfhB,EAUcG,GAAA,MAAAC,EATEa,GAAU,CAAjBzC,YADTgB,EAUcC,EAAAC,CAAA,EAAA,MAAA;AAAA,gCARX,KAAKlB,EAAI;AAAA,gCACT,MAAMA;AAAA,gCACP,OAAM;AAAA,8BAAA;2CAEN,MAAiF;AAAA,kCAAjFoB,EAAiFH,EAAAC,CAAA,EAAA,UAAA,EAAhE,OAAM,4BAAwB;AAAA,+CAAC,MAAe;AAAA,sCAAZiB,EAAAT,EAAA1B,EAAI,KAAK,GAAA,CAAA;AAAA,oCAAA;;;kCAC5DoB,EAEuBH,EAAAC,CAAA,EAAA,eAAA,EAFD,OAAM,6BAAyB;AAAA,+CACnD,MAAwE;AAAA,sCAAxEE,EAAwEc,GAAA;AAAA,wCAA9D,MAAK;AAAA,wCAAQ,MAAK;AAAA,wCAAK,OAAM;AAAA,sCAAA;;;;;;;;;;;;;sBAKpC7B,EAAA,cAAXmB,EAEM,OAFNkB,IAEMhB,EADDpB,EAAA,KAAY,GAAA,CAAA;;;;;;;;;;;QAMzBc,EAAuBH,EAAAC,CAAA,EAAA,YAAA;AAAA,MAAA;;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GcsaMultiSelect2.vue.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { GcsaPaginationProps } from '../types/componentProps';
|
|
2
|
+
declare const _default: import('vue').DefineComponent<GcsaPaginationProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
3
|
+
"update:page": (page: number) => any;
|
|
4
|
+
"update:pageSize": (pageSize: number) => any;
|
|
5
|
+
}, string, import('vue').PublicProps, Readonly<GcsaPaginationProps> & Readonly<{
|
|
6
|
+
"onUpdate:page"?: ((page: number) => any) | undefined;
|
|
7
|
+
"onUpdate:pageSize"?: ((pageSize: number) => any) | undefined;
|
|
8
|
+
}>, {
|
|
9
|
+
align: import('@gcsa/console-core').GcsaPaginationAlign;
|
|
10
|
+
pageSize: number;
|
|
11
|
+
pageSizeOptions: number[];
|
|
12
|
+
showPageSize: boolean;
|
|
13
|
+
showJumper: boolean;
|
|
14
|
+
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
|
|
15
|
+
export default _default;
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
import { defineComponent as J, computed as o, openBlock as t, createElementBlock as n, unref as v, normalizeClass as _, Fragment as d, renderList as b, toDisplayString as c, createElementVNode as f, createVNode as S, createCommentVNode as M } from "vue";
|
|
2
|
+
import { resolveGcsaPaginationLayout as j, getGcsaPaginationAlignClass as V, formatGcsaLocaleMessage as B, getGcsaPaginationItems as O } from "@gcsa/console-core";
|
|
3
|
+
import { useGcsaLocaleMessages as A } from "../composables/useGcsaLocale.js";
|
|
4
|
+
import T from "./GcsaSelect.vue.js";
|
|
5
|
+
import E from "./GcsaInputNumber.vue.js";
|
|
6
|
+
const U = ["aria-label"], D = {
|
|
7
|
+
key: 0,
|
|
8
|
+
class: "gcsa-pagination__total"
|
|
9
|
+
}, F = {
|
|
10
|
+
key: 1,
|
|
11
|
+
class: "gcsa-pagination__size"
|
|
12
|
+
}, I = ["disabled"], q = {
|
|
13
|
+
key: 3,
|
|
14
|
+
class: "gcsa-pagination__pager"
|
|
15
|
+
}, H = {
|
|
16
|
+
key: 0,
|
|
17
|
+
class: "gcsa-pagination__ellipsis",
|
|
18
|
+
"aria-hidden": "true"
|
|
19
|
+
}, K = ["onClick"], Q = ["disabled"], R = {
|
|
20
|
+
key: 5,
|
|
21
|
+
class: "gcsa-pagination__jumper"
|
|
22
|
+
}, ta = /* @__PURE__ */ J({
|
|
23
|
+
name: "GcsaPagination",
|
|
24
|
+
__name: "GcsaPagination",
|
|
25
|
+
props: {
|
|
26
|
+
page: {},
|
|
27
|
+
total: {},
|
|
28
|
+
pageSize: { default: 10 },
|
|
29
|
+
pageSizeOptions: { default: () => [10, 20, 50, 100] },
|
|
30
|
+
showPageSize: { type: Boolean, default: !1 },
|
|
31
|
+
showJumper: { type: Boolean, default: !1 },
|
|
32
|
+
pageSizeLabel: {},
|
|
33
|
+
jumperLabel: {},
|
|
34
|
+
layout: {},
|
|
35
|
+
align: { default: "right" }
|
|
36
|
+
},
|
|
37
|
+
emits: ["update:page", "update:pageSize"],
|
|
38
|
+
setup(s, { emit: z }) {
|
|
39
|
+
const g = A(), a = s, y = o(() => a.pageSizeLabel ?? g.value.paginationPageSize), P = o(() => a.jumperLabel ?? g.value.paginationJumper), h = o(() => g.value.paginationPageSizeAria), m = z, p = o(() => Math.max(1, Math.ceil(a.total / a.pageSize))), k = o(
|
|
40
|
+
() => j({
|
|
41
|
+
layout: a.layout,
|
|
42
|
+
showPageSize: a.showPageSize,
|
|
43
|
+
showJumper: a.showJumper
|
|
44
|
+
})
|
|
45
|
+
), L = o(() => V(a.align)), C = o(() => B(g.value.dataTableTotal, { count: a.total })), N = o(() => O(a.page, p.value));
|
|
46
|
+
function $(e) {
|
|
47
|
+
e == null || Number.isNaN(e) || r(e);
|
|
48
|
+
}
|
|
49
|
+
const x = o(
|
|
50
|
+
() => a.pageSizeOptions.map((e) => ({
|
|
51
|
+
value: String(e),
|
|
52
|
+
label: `${e} / 页`
|
|
53
|
+
}))
|
|
54
|
+
);
|
|
55
|
+
function r(e) {
|
|
56
|
+
const l = Math.min(Math.max(1, e), p.value);
|
|
57
|
+
m("update:page", l);
|
|
58
|
+
}
|
|
59
|
+
function G(e) {
|
|
60
|
+
!a.pageSizeOptions.includes(e) || e === a.pageSize || (m("update:pageSize", e), m("update:page", 1));
|
|
61
|
+
}
|
|
62
|
+
return (e, l) => (t(), n("div", {
|
|
63
|
+
class: _(["gcsa-pagination", L.value]),
|
|
64
|
+
role: "navigation",
|
|
65
|
+
"aria-label": v(g).paginationLabel
|
|
66
|
+
}, [
|
|
67
|
+
(t(!0), n(d, null, b(k.value, (u, w) => (t(), n(d, {
|
|
68
|
+
key: `${u}-${w}`
|
|
69
|
+
}, [
|
|
70
|
+
u === "total" ? (t(), n("div", D, c(C.value), 1)) : u === "sizes" ? (t(), n("div", F, [
|
|
71
|
+
f("span", null, c(y.value), 1),
|
|
72
|
+
S(T, {
|
|
73
|
+
class: "gcsa-pagination__size-select",
|
|
74
|
+
"model-value": String(s.pageSize),
|
|
75
|
+
options: x.value,
|
|
76
|
+
"aria-label": h.value,
|
|
77
|
+
"onUpdate:modelValue": l[0] || (l[0] = (i) => G(Number(i)))
|
|
78
|
+
}, null, 8, ["model-value", "options", "aria-label"])
|
|
79
|
+
])) : u === "prev" ? (t(), n("button", {
|
|
80
|
+
key: 2,
|
|
81
|
+
type: "button",
|
|
82
|
+
class: "gcsa-pagination__btn gcsa-pagination__btn--nav gcsa-focus-ring",
|
|
83
|
+
disabled: s.page <= 1,
|
|
84
|
+
onClick: l[1] || (l[1] = (i) => r(s.page - 1))
|
|
85
|
+
}, c(v(g).paginationPrev), 9, I)) : u === "pager" ? (t(), n("div", q, [
|
|
86
|
+
(t(!0), n(d, null, b(N.value, (i) => (t(), n(d, { key: i }, [
|
|
87
|
+
typeof i != "number" ? (t(), n("span", H, "…")) : (t(), n("button", {
|
|
88
|
+
key: 1,
|
|
89
|
+
type: "button",
|
|
90
|
+
class: _(["gcsa-pagination__btn gcsa-focus-ring", { "gcsa-pagination__btn--active": i === s.page }]),
|
|
91
|
+
onClick: (W) => r(i)
|
|
92
|
+
}, c(i), 11, K))
|
|
93
|
+
], 64))), 128))
|
|
94
|
+
])) : u === "next" ? (t(), n("button", {
|
|
95
|
+
key: 4,
|
|
96
|
+
type: "button",
|
|
97
|
+
class: "gcsa-pagination__btn gcsa-pagination__btn--nav gcsa-focus-ring",
|
|
98
|
+
disabled: s.page >= p.value,
|
|
99
|
+
onClick: l[2] || (l[2] = (i) => r(s.page + 1))
|
|
100
|
+
}, c(v(g).paginationNext), 9, Q)) : u === "jumper" ? (t(), n("div", R, [
|
|
101
|
+
f("span", null, c(P.value), 1),
|
|
102
|
+
S(E, {
|
|
103
|
+
class: "gcsa-pagination__jumper-input",
|
|
104
|
+
"model-value": s.page,
|
|
105
|
+
min: 1,
|
|
106
|
+
max: p.value,
|
|
107
|
+
precision: 0,
|
|
108
|
+
controls: "none",
|
|
109
|
+
"onUpdate:modelValue": $
|
|
110
|
+
}, null, 8, ["model-value", "max"])
|
|
111
|
+
])) : M("", !0)
|
|
112
|
+
], 64))), 128))
|
|
113
|
+
], 10, U));
|
|
114
|
+
}
|
|
115
|
+
});
|
|
116
|
+
export {
|
|
117
|
+
ta as default
|
|
118
|
+
};
|
|
119
|
+
//# sourceMappingURL=GcsaPagination.vue.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GcsaPagination.vue.js","sources":["../../src/components/GcsaPagination.vue"],"sourcesContent":["<template>\n <div\n class=\"gcsa-pagination\"\n :class=\"alignClass\"\n role=\"navigation\"\n :aria-label=\"messages.paginationLabel\"\n >\n <template v-for=\"(part, index) in layoutParts\" :key=\"`${part}-${index}`\">\n <div v-if=\"part === 'total'\" class=\"gcsa-pagination__total\">\n {{ totalText }}\n </div>\n <div v-else-if=\"part === 'sizes'\" class=\"gcsa-pagination__size\">\n <span>{{ resolvedPageSizeLabel }}</span>\n <GcsaSelect\n class=\"gcsa-pagination__size-select\"\n :model-value=\"String(pageSize)\"\n :options=\"pageSizeSelectOptions\"\n :aria-label=\"resolvedPageSizeAria\"\n @update:model-value=\"setPageSize(Number($event))\"\n />\n </div>\n <button\n v-else-if=\"part === 'prev'\"\n type=\"button\"\n class=\"gcsa-pagination__btn gcsa-pagination__btn--nav gcsa-focus-ring\"\n :disabled=\"page <= 1\"\n @click=\"setPage(page - 1)\"\n >\n {{ messages.paginationPrev }}\n </button>\n <div v-else-if=\"part === 'pager'\" class=\"gcsa-pagination__pager\">\n <template v-for=\"item in pages\" :key=\"item\">\n <span v-if=\"typeof item !== 'number'\" class=\"gcsa-pagination__ellipsis\" aria-hidden=\"true\">…</span>\n <button\n v-else\n type=\"button\"\n class=\"gcsa-pagination__btn gcsa-focus-ring\"\n :class=\"{ 'gcsa-pagination__btn--active': item === page }\"\n @click=\"setPage(item)\"\n >\n {{ item }}\n </button>\n </template>\n </div>\n <button\n v-else-if=\"part === 'next'\"\n type=\"button\"\n class=\"gcsa-pagination__btn gcsa-pagination__btn--nav gcsa-focus-ring\"\n :disabled=\"page >= totalPages\"\n @click=\"setPage(page + 1)\"\n >\n {{ messages.paginationNext }}\n </button>\n <div v-else-if=\"part === 'jumper'\" class=\"gcsa-pagination__jumper\">\n <span>{{ resolvedJumperLabel }}</span>\n <GcsaInputNumber\n class=\"gcsa-pagination__jumper-input\"\n :model-value=\"page\"\n :min=\"1\"\n :max=\"totalPages\"\n :precision=\"0\"\n controls=\"none\"\n @update:model-value=\"onJumpPage\"\n />\n </div>\n </template>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { computed } from 'vue';\nimport {\n formatGcsaLocaleMessage,\n getGcsaPaginationAlignClass,\n getGcsaPaginationItems,\n resolveGcsaPaginationLayout\n} from '@gcsa/console-core';\nimport type { GcsaPaginationProps } from '../types/componentProps';\nimport { useGcsaLocaleMessages } from '../composables/useGcsaLocale';\nimport GcsaSelect from './GcsaSelect.vue';\nimport GcsaInputNumber from './GcsaInputNumber.vue';\n\ndefineOptions({ name: 'GcsaPagination' });\n\nconst messages = useGcsaLocaleMessages();\n\nconst props = withDefaults(\n defineProps<GcsaPaginationProps>(),\n {\n pageSize: 10,\n pageSizeOptions: () => [10, 20, 50, 100],\n showPageSize: false,\n showJumper: false,\n align: 'right'\n }\n);\n\nconst resolvedPageSizeLabel = computed(() => props.pageSizeLabel ?? messages.value.paginationPageSize);\nconst resolvedJumperLabel = computed(() => props.jumperLabel ?? messages.value.paginationJumper);\nconst resolvedPageSizeAria = computed(() => messages.value.paginationPageSizeAria);\n\nconst emit = defineEmits<{\n 'update:page': [page: number];\n 'update:pageSize': [pageSize: number];\n}>();\n\nconst totalPages = computed(() => Math.max(1, Math.ceil(props.total / props.pageSize)));\n\nconst layoutParts = computed(() =>\n resolveGcsaPaginationLayout({\n layout: props.layout,\n showPageSize: props.showPageSize,\n showJumper: props.showJumper\n })\n);\n\nconst alignClass = computed(() => getGcsaPaginationAlignClass(props.align));\n\nconst totalText = computed(() => formatGcsaLocaleMessage(messages.value.dataTableTotal, { count: props.total }));\n\nconst pages = computed(() => {\n return getGcsaPaginationItems(props.page, totalPages.value);\n});\n\nfunction onJumpPage(value: number | null) {\n if (value == null || Number.isNaN(value)) return;\n setPage(value);\n}\n\nconst pageSizeSelectOptions = computed(() =>\n props.pageSizeOptions.map(size => ({\n value: String(size),\n label: `${size} / 页`\n }))\n);\n\nfunction setPage(next: number) {\n const clamped = Math.min(Math.max(1, next), totalPages.value);\n emit('update:page', clamped);\n}\n\nfunction setPageSize(next: number) {\n if (!props.pageSizeOptions.includes(next) || next === props.pageSize) return;\n emit('update:pageSize', next);\n emit('update:page', 1);\n}\n</script>\n"],"names":["messages","useGcsaLocaleMessages","props","__props","resolvedPageSizeLabel","computed","resolvedJumperLabel","resolvedPageSizeAria","emit","__emit","totalPages","layoutParts","resolveGcsaPaginationLayout","alignClass","getGcsaPaginationAlignClass","totalText","formatGcsaLocaleMessage","pages","getGcsaPaginationItems","onJumpPage","value","setPage","pageSizeSelectOptions","size","next","clamped","setPageSize","_createElementBlock","_normalizeClass","_unref","_openBlock","_Fragment","_renderList","part","index","_hoisted_2","_toDisplayString","_hoisted_3","_createElementVNode","_createVNode","GcsaSelect","_cache","$event","_hoisted_4","_hoisted_5","item","_hoisted_6","_hoisted_7","_hoisted_8","_hoisted_9","GcsaInputNumber"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GcsaPagination2.vue.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { GcsaPopconfirmProps } from '../types/componentProps';
|
|
2
|
+
declare function __VLS_template(): {
|
|
3
|
+
attrs: Partial<{}>;
|
|
4
|
+
slots: {
|
|
5
|
+
trigger?(_: {}): any;
|
|
6
|
+
};
|
|
7
|
+
refs: {};
|
|
8
|
+
rootEl: any;
|
|
9
|
+
};
|
|
10
|
+
type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
|
|
11
|
+
declare const __VLS_component: import('vue').DefineComponent<GcsaPopconfirmProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
12
|
+
cancel: () => any;
|
|
13
|
+
confirm: () => any;
|
|
14
|
+
}, string, import('vue').PublicProps, Readonly<GcsaPopconfirmProps> & Readonly<{
|
|
15
|
+
onCancel?: (() => any) | undefined;
|
|
16
|
+
onConfirm?: (() => any) | undefined;
|
|
17
|
+
}>, {
|
|
18
|
+
portalled: boolean;
|
|
19
|
+
placement: import('..').GcsaPopconfirmPlacement;
|
|
20
|
+
arrow: boolean;
|
|
21
|
+
gutter: number;
|
|
22
|
+
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
23
|
+
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
|
|
24
|
+
export default _default;
|
|
25
|
+
type __VLS_WithTemplateSlots<T, S> = T & {
|
|
26
|
+
new (): {
|
|
27
|
+
$slots: S;
|
|
28
|
+
};
|
|
29
|
+
};
|