@treeui/vue 0.8.0 → 0.10.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/README.md +1 -1
- package/dist/components/TAccordion.cjs +2 -0
- package/dist/components/TAccordion.cjs.map +1 -0
- package/dist/components/TAccordion.js +7 -0
- package/dist/components/TAccordion.js.map +1 -0
- package/dist/components/TAccordion.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TAccordion.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TAccordion.vue_vue_type_script_setup_true_lang.js +97 -0
- package/dist/components/TAccordion.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TAccordionItem.cjs +2 -0
- package/dist/components/TAccordionItem.cjs.map +1 -0
- package/dist/components/TAccordionItem.js +7 -0
- package/dist/components/TAccordionItem.js.map +1 -0
- package/dist/components/TAccordionItem.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TAccordionItem.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TAccordionItem.vue_vue_type_script_setup_true_lang.js +83 -0
- package/dist/components/TAccordionItem.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TAlert.cjs +2 -0
- package/dist/components/TAlert.cjs.map +1 -0
- package/dist/components/TAlert.js +7 -0
- package/dist/components/TAlert.js.map +1 -0
- package/dist/components/TAlert.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TAlert.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TAlert.vue_vue_type_script_setup_true_lang.js +57 -0
- package/dist/components/TAlert.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TAvatar.cjs +2 -0
- package/dist/components/TAvatar.cjs.map +1 -0
- package/dist/components/TAvatar.js +7 -0
- package/dist/components/TAvatar.js.map +1 -0
- package/dist/components/TAvatar.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TAvatar.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TAvatar.vue_vue_type_script_setup_true_lang.js +46 -0
- package/dist/components/TAvatar.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TBadge.cjs +2 -0
- package/dist/components/TBadge.cjs.map +1 -0
- package/dist/components/TBadge.js +7 -0
- package/dist/components/TBadge.js.map +1 -0
- package/dist/components/TBadge.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TBadge.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TBadge.vue_vue_type_script_setup_true_lang.js +27 -0
- package/dist/components/TBadge.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TBreadcrumb.cjs +2 -0
- package/dist/components/TBreadcrumb.cjs.map +1 -0
- package/dist/components/TBreadcrumb.js +7 -0
- package/dist/components/TBreadcrumb.js.map +1 -0
- package/dist/components/TBreadcrumb.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TBreadcrumb.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TBreadcrumb.vue_vue_type_script_setup_true_lang.js +20 -0
- package/dist/components/TBreadcrumb.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TBreadcrumbItem.cjs +2 -0
- package/dist/components/TBreadcrumbItem.cjs.map +1 -0
- package/dist/components/TBreadcrumbItem.js +7 -0
- package/dist/components/TBreadcrumbItem.js.map +1 -0
- package/dist/components/TBreadcrumbItem.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TBreadcrumbItem.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TBreadcrumbItem.vue_vue_type_script_setup_true_lang.js +28 -0
- package/dist/components/TBreadcrumbItem.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TButton.cjs +2 -0
- package/dist/components/TButton.cjs.map +1 -0
- package/dist/components/TButton.js +7 -0
- package/dist/components/TButton.js.map +1 -0
- package/dist/components/TButton.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TButton.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TButton.vue_vue_type_script_setup_true_lang.js +91 -0
- package/dist/components/TButton.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TCard.cjs +2 -0
- package/dist/components/TCard.cjs.map +1 -0
- package/dist/components/TCard.js +7 -0
- package/dist/components/TCard.js.map +1 -0
- package/dist/components/TCard.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TCard.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TCard.vue_vue_type_script_setup_true_lang.js +42 -0
- package/dist/components/TCard.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TCheckbox.cjs +2 -0
- package/dist/components/TCheckbox.cjs.map +1 -0
- package/dist/components/TCheckbox.js +7 -0
- package/dist/components/TCheckbox.js.map +1 -0
- package/dist/components/TCheckbox.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TCheckbox.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TCheckbox.vue_vue_type_script_setup_true_lang.js +106 -0
- package/dist/components/TCheckbox.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TCombobox.cjs +2 -0
- package/dist/components/TCombobox.cjs.map +1 -0
- package/dist/components/TCombobox.js +7 -0
- package/dist/components/TCombobox.js.map +1 -0
- package/dist/components/TCombobox.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TCombobox.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TCombobox.vue_vue_type_script_setup_true_lang.js +282 -0
- package/dist/components/TCombobox.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TConfirmDialog.cjs +2 -0
- package/dist/components/TConfirmDialog.cjs.map +1 -0
- package/dist/components/TConfirmDialog.js +7 -0
- package/dist/components/TConfirmDialog.js.map +1 -0
- package/dist/components/TConfirmDialog.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TConfirmDialog.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TConfirmDialog.vue_vue_type_script_setup_true_lang.js +145 -0
- package/dist/components/TConfirmDialog.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TContainer.cjs +2 -0
- package/dist/components/TContainer.cjs.map +1 -0
- package/dist/components/TContainer.js +7 -0
- package/dist/components/TContainer.js.map +1 -0
- package/dist/components/TContainer.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TContainer.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TContainer.vue_vue_type_script_setup_true_lang.js +43 -0
- package/dist/components/TContainer.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TContextMenu.cjs +2 -0
- package/dist/components/TContextMenu.cjs.map +1 -0
- package/dist/components/TContextMenu.js +7 -0
- package/dist/components/TContextMenu.js.map +1 -0
- package/dist/components/TContextMenu.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TContextMenu.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TContextMenu.vue_vue_type_script_setup_true_lang.js +149 -0
- package/dist/components/TContextMenu.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TDatePicker.cjs +2 -0
- package/dist/components/TDatePicker.cjs.map +1 -0
- package/dist/components/TDatePicker.js +7 -0
- package/dist/components/TDatePicker.js.map +1 -0
- package/dist/components/TDatePicker.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TDatePicker.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TDatePicker.vue_vue_type_script_setup_true_lang.js +305 -0
- package/dist/components/TDatePicker.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TDateTimePicker.cjs +2 -0
- package/dist/components/TDateTimePicker.cjs.map +1 -0
- package/dist/components/TDateTimePicker.js +7 -0
- package/dist/components/TDateTimePicker.js.map +1 -0
- package/dist/components/TDateTimePicker.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TDateTimePicker.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TDateTimePicker.vue_vue_type_script_setup_true_lang.js +409 -0
- package/dist/components/TDateTimePicker.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TDivider.cjs +2 -0
- package/dist/components/TDivider.cjs.map +1 -0
- package/dist/components/TDivider.js +7 -0
- package/dist/components/TDivider.js.map +1 -0
- package/dist/components/TDivider.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TDivider.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TDivider.vue_vue_type_script_setup_true_lang.js +30 -0
- package/dist/components/TDivider.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TDrawer.cjs +2 -0
- package/dist/components/TDrawer.cjs.map +1 -0
- package/dist/components/TDrawer.js +7 -0
- package/dist/components/TDrawer.js.map +1 -0
- package/dist/components/TDrawer.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TDrawer.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TDrawer.vue_vue_type_script_setup_true_lang.js +168 -0
- package/dist/components/TDrawer.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TDropdown.cjs +2 -0
- package/dist/components/TDropdown.cjs.map +1 -0
- package/dist/components/TDropdown.js +7 -0
- package/dist/components/TDropdown.js.map +1 -0
- package/dist/components/TDropdown.vue.d.ts +3 -0
- package/dist/components/TDropdown.vue.d.ts.map +1 -1
- package/dist/components/TDropdown.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TDropdown.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TDropdown.vue_vue_type_script_setup_true_lang.js +176 -0
- package/dist/components/TDropdown.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TEmptyState.cjs +2 -0
- package/dist/components/TEmptyState.cjs.map +1 -0
- package/dist/components/TEmptyState.js +7 -0
- package/dist/components/TEmptyState.js.map +1 -0
- package/dist/components/TEmptyState.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TEmptyState.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TEmptyState.vue_vue_type_script_setup_true_lang.js +64 -0
- package/dist/components/TEmptyState.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TFileUpload.cjs +2 -0
- package/dist/components/TFileUpload.cjs.map +1 -0
- package/dist/components/TFileUpload.js +7 -0
- package/dist/components/TFileUpload.js.map +1 -0
- package/dist/components/TFileUpload.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TFileUpload.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TFileUpload.vue_vue_type_script_setup_true_lang.js +284 -0
- package/dist/components/TFileUpload.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TFormField.cjs +2 -0
- package/dist/components/TFormField.cjs.map +1 -0
- package/dist/components/TFormField.js +7 -0
- package/dist/components/TFormField.js.map +1 -0
- package/dist/components/TFormField.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TFormField.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TFormField.vue_vue_type_script_setup_true_lang.js +63 -0
- package/dist/components/TFormField.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TGrid.cjs +2 -0
- package/dist/components/TGrid.cjs.map +1 -0
- package/dist/components/TGrid.js +7 -0
- package/dist/components/TGrid.js.map +1 -0
- package/dist/components/TGrid.vue.d.ts +1 -1
- package/dist/components/TGrid.vue.d.ts.map +1 -1
- package/dist/components/TGrid.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TGrid.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TGrid.vue_vue_type_script_setup_true_lang.js +47 -0
- package/dist/components/TGrid.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TIcon.cjs +2 -0
- package/dist/components/TIcon.cjs.map +1 -0
- package/dist/components/TIcon.js +7 -0
- package/dist/components/TIcon.js.map +1 -0
- package/dist/components/TIcon.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TIcon.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TIcon.vue_vue_type_script_setup_true_lang.js +39 -0
- package/dist/components/TIcon.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TInput.cjs +2 -0
- package/dist/components/TInput.cjs.map +1 -0
- package/dist/components/TInput.js +7 -0
- package/dist/components/TInput.js.map +1 -0
- package/dist/components/TInput.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TInput.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TInput.vue_vue_type_script_setup_true_lang.js +80 -0
- package/dist/components/TInput.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TLink.cjs +2 -0
- package/dist/components/TLink.cjs.map +1 -0
- package/dist/components/TLink.js +7 -0
- package/dist/components/TLink.js.map +1 -0
- package/dist/components/TLink.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TLink.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TLink.vue_vue_type_script_setup_true_lang.js +47 -0
- package/dist/components/TLink.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TMarkdownEditor.cjs +2 -0
- package/dist/components/TMarkdownEditor.cjs.map +1 -0
- package/dist/components/TMarkdownEditor.js +7 -0
- package/dist/components/TMarkdownEditor.js.map +1 -0
- package/dist/components/TMarkdownEditor.vue_vue_type_script_setup_true_lang.cjs +12 -0
- package/dist/components/TMarkdownEditor.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TMarkdownEditor.vue_vue_type_script_setup_true_lang.js +315 -0
- package/dist/components/TMarkdownEditor.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TModal.cjs +2 -0
- package/dist/components/TModal.cjs.map +1 -0
- package/dist/components/TModal.js +7 -0
- package/dist/components/TModal.js.map +1 -0
- package/dist/components/TModal.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TModal.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TModal.vue_vue_type_script_setup_true_lang.js +163 -0
- package/dist/components/TModal.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TMultiSelect.cjs +2 -0
- package/dist/components/TMultiSelect.cjs.map +1 -0
- package/dist/components/TMultiSelect.js +7 -0
- package/dist/components/TMultiSelect.js.map +1 -0
- package/dist/components/TMultiSelect.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TMultiSelect.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TMultiSelect.vue_vue_type_script_setup_true_lang.js +282 -0
- package/dist/components/TMultiSelect.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TNavMenu.cjs +2 -0
- package/dist/components/TNavMenu.cjs.map +1 -0
- package/dist/components/TNavMenu.js +7 -0
- package/dist/components/TNavMenu.js.map +1 -0
- package/dist/components/TNavMenu.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TNavMenu.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TNavMenu.vue_vue_type_script_setup_true_lang.js +151 -0
- package/dist/components/TNavMenu.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TNavbar.cjs +2 -0
- package/dist/components/TNavbar.cjs.map +1 -0
- package/dist/components/TNavbar.js +7 -0
- package/dist/components/TNavbar.js.map +1 -0
- package/dist/components/TNavbar.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TNavbar.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TNavbar.vue_vue_type_script_setup_true_lang.js +61 -0
- package/dist/components/TNavbar.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TNumberInput.cjs +2 -0
- package/dist/components/TNumberInput.cjs.map +1 -0
- package/dist/components/TNumberInput.js +7 -0
- package/dist/components/TNumberInput.js.map +1 -0
- package/dist/components/TNumberInput.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TNumberInput.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TNumberInput.vue_vue_type_script_setup_true_lang.js +145 -0
- package/dist/components/TNumberInput.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TPagination.cjs +2 -0
- package/dist/components/TPagination.cjs.map +1 -0
- package/dist/components/TPagination.js +7 -0
- package/dist/components/TPagination.js.map +1 -0
- package/dist/components/TPagination.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TPagination.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TPagination.vue_vue_type_script_setup_true_lang.js +105 -0
- package/dist/components/TPagination.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TPopover.cjs +2 -0
- package/dist/components/TPopover.cjs.map +1 -0
- package/dist/components/TPopover.js +7 -0
- package/dist/components/TPopover.js.map +1 -0
- package/dist/components/TPopover.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TPopover.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TPopover.vue_vue_type_script_setup_true_lang.js +106 -0
- package/dist/components/TPopover.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TPricing.cjs +2 -0
- package/dist/components/TPricing.cjs.map +1 -0
- package/dist/components/TPricing.js +7 -0
- package/dist/components/TPricing.js.map +1 -0
- package/dist/components/TPricing.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TPricing.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TPricing.vue_vue_type_script_setup_true_lang.js +33 -0
- package/dist/components/TPricing.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TPricingCard.cjs +2 -0
- package/dist/components/TPricingCard.cjs.map +1 -0
- package/dist/components/TPricingCard.js +7 -0
- package/dist/components/TPricingCard.js.map +1 -0
- package/dist/components/TPricingCard.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TPricingCard.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TPricingCard.vue_vue_type_script_setup_true_lang.js +93 -0
- package/dist/components/TPricingCard.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TProgress.cjs +2 -0
- package/dist/components/TProgress.cjs.map +1 -0
- package/dist/components/TProgress.js +7 -0
- package/dist/components/TProgress.js.map +1 -0
- package/dist/components/TProgress.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TProgress.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TProgress.vue_vue_type_script_setup_true_lang.js +33 -0
- package/dist/components/TProgress.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TRadio.cjs +2 -0
- package/dist/components/TRadio.cjs.map +1 -0
- package/dist/components/TRadio.js +7 -0
- package/dist/components/TRadio.js.map +1 -0
- package/dist/components/TRadio.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TRadio.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TRadio.vue_vue_type_script_setup_true_lang.js +73 -0
- package/dist/components/TRadio.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TRadioGroup.cjs +2 -0
- package/dist/components/TRadioGroup.cjs.map +1 -0
- package/dist/components/TRadioGroup.js +7 -0
- package/dist/components/TRadioGroup.js.map +1 -0
- package/dist/components/TRadioGroup.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TRadioGroup.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TRadioGroup.vue_vue_type_script_setup_true_lang.js +46 -0
- package/dist/components/TRadioGroup.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TSelect.cjs +2 -0
- package/dist/components/TSelect.cjs.map +1 -0
- package/dist/components/TSelect.js +7 -0
- package/dist/components/TSelect.js.map +1 -0
- package/dist/components/TSelect.vue.d.ts +2 -0
- package/dist/components/TSelect.vue.d.ts.map +1 -1
- package/dist/components/TSelect.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TSelect.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TSelect.vue_vue_type_script_setup_true_lang.js +238 -0
- package/dist/components/TSelect.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TSelectableList.cjs +2 -0
- package/dist/components/TSelectableList.cjs.map +1 -0
- package/dist/components/TSelectableList.js +7 -0
- package/dist/components/TSelectableList.js.map +1 -0
- package/dist/components/TSelectableList.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TSelectableList.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TSelectableList.vue_vue_type_script_setup_true_lang.js +133 -0
- package/dist/components/TSelectableList.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TSidebar.cjs +2 -0
- package/dist/components/TSidebar.cjs.map +1 -0
- package/dist/components/TSidebar.js +7 -0
- package/dist/components/TSidebar.js.map +1 -0
- package/dist/components/TSidebar.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TSidebar.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TSidebar.vue_vue_type_script_setup_true_lang.js +98 -0
- package/dist/components/TSidebar.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TSkeleton.cjs +2 -0
- package/dist/components/TSkeleton.cjs.map +1 -0
- package/dist/components/TSkeleton.js +7 -0
- package/dist/components/TSkeleton.js.map +1 -0
- package/dist/components/TSkeleton.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TSkeleton.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TSkeleton.vue_vue_type_script_setup_true_lang.js +25 -0
- package/dist/components/TSkeleton.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TSpinner.cjs +2 -0
- package/dist/components/TSpinner.cjs.map +1 -0
- package/dist/components/TSpinner.js +7 -0
- package/dist/components/TSpinner.js.map +1 -0
- package/dist/components/TSpinner.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TSpinner.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TSpinner.vue_vue_type_script_setup_true_lang.js +24 -0
- package/dist/components/TSpinner.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TStack.cjs +2 -0
- package/dist/components/TStack.cjs.map +1 -0
- package/dist/components/TStack.js +7 -0
- package/dist/components/TStack.js.map +1 -0
- package/dist/components/TStack.vue.d.ts +1 -1
- package/dist/components/TStack.vue.d.ts.map +1 -1
- package/dist/components/TStack.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TStack.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TStack.vue_vue_type_script_setup_true_lang.js +50 -0
- package/dist/components/TStack.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TStat.cjs +2 -0
- package/dist/components/TStat.cjs.map +1 -0
- package/dist/components/TStat.js +7 -0
- package/dist/components/TStat.js.map +1 -0
- package/dist/components/TStat.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TStat.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TStat.vue_vue_type_script_setup_true_lang.js +72 -0
- package/dist/components/TStat.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TSteps.cjs +2 -0
- package/dist/components/TSteps.cjs.map +1 -0
- package/dist/components/TSteps.js +7 -0
- package/dist/components/TSteps.js.map +1 -0
- package/dist/components/TSteps.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TSteps.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TSteps.vue_vue_type_script_setup_true_lang.js +83 -0
- package/dist/components/TSteps.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TSwitch.cjs +2 -0
- package/dist/components/TSwitch.cjs.map +1 -0
- package/dist/components/TSwitch.js +7 -0
- package/dist/components/TSwitch.js.map +1 -0
- package/dist/components/TSwitch.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TSwitch.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TSwitch.vue_vue_type_script_setup_true_lang.js +71 -0
- package/dist/components/TSwitch.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TTab.cjs +2 -0
- package/dist/components/TTab.cjs.map +1 -0
- package/dist/components/TTab.js +7 -0
- package/dist/components/TTab.js.map +1 -0
- package/dist/components/TTab.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TTab.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TTab.vue_vue_type_script_setup_true_lang.js +55 -0
- package/dist/components/TTab.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TTabList.cjs +2 -0
- package/dist/components/TTabList.cjs.map +1 -0
- package/dist/components/TTabList.js +7 -0
- package/dist/components/TTabList.js.map +1 -0
- package/dist/components/TTabList.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TTabList.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TTabList.vue_vue_type_script_setup_true_lang.js +73 -0
- package/dist/components/TTabList.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TTabPanel.cjs +2 -0
- package/dist/components/TTabPanel.cjs.map +1 -0
- package/dist/components/TTabPanel.js +7 -0
- package/dist/components/TTabPanel.js.map +1 -0
- package/dist/components/TTabPanel.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TTabPanel.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TTabPanel.vue_vue_type_script_setup_true_lang.js +24 -0
- package/dist/components/TTabPanel.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TTable.cjs +2 -0
- package/dist/components/TTable.cjs.map +1 -0
- package/dist/components/TTable.js +7 -0
- package/dist/components/TTable.js.map +1 -0
- package/dist/components/TTable.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TTable.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TTable.vue_vue_type_script_setup_true_lang.js +118 -0
- package/dist/components/TTable.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TTabs.cjs +2 -0
- package/dist/components/TTabs.cjs.map +1 -0
- package/dist/components/TTabs.js +7 -0
- package/dist/components/TTabs.js.map +1 -0
- package/dist/components/TTabs.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TTabs.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TTabs.vue_vue_type_script_setup_true_lang.js +51 -0
- package/dist/components/TTabs.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TTag.cjs +2 -0
- package/dist/components/TTag.cjs.map +1 -0
- package/dist/components/TTag.js +7 -0
- package/dist/components/TTag.js.map +1 -0
- package/dist/components/TTag.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TTag.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TTag.vue_vue_type_script_setup_true_lang.js +60 -0
- package/dist/components/TTag.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TTextarea.cjs +2 -0
- package/dist/components/TTextarea.cjs.map +1 -0
- package/dist/components/TTextarea.js +7 -0
- package/dist/components/TTextarea.js.map +1 -0
- package/dist/components/TTextarea.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TTextarea.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TTextarea.vue_vue_type_script_setup_true_lang.js +81 -0
- package/dist/components/TTextarea.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TTimeline.cjs +2 -0
- package/dist/components/TTimeline.cjs.map +1 -0
- package/dist/components/TTimeline.js +7 -0
- package/dist/components/TTimeline.js.map +1 -0
- package/dist/components/TTimeline.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TTimeline.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TTimeline.vue_vue_type_script_setup_true_lang.js +58 -0
- package/dist/components/TTimeline.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TToast.cjs +2 -0
- package/dist/components/TToast.cjs.map +1 -0
- package/dist/components/TToast.js +7 -0
- package/dist/components/TToast.js.map +1 -0
- package/dist/components/TToast.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TToast.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TToast.vue_vue_type_script_setup_true_lang.js +50 -0
- package/dist/components/TToast.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TToastProvider.cjs +2 -0
- package/dist/components/TToastProvider.cjs.map +1 -0
- package/dist/components/TToastProvider.js +7 -0
- package/dist/components/TToastProvider.js.map +1 -0
- package/dist/components/TToastProvider.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TToastProvider.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TToastProvider.vue_vue_type_script_setup_true_lang.js +33 -0
- package/dist/components/TToastProvider.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TToggleGroup.cjs +2 -0
- package/dist/components/TToggleGroup.cjs.map +1 -0
- package/dist/components/TToggleGroup.js +7 -0
- package/dist/components/TToggleGroup.js.map +1 -0
- package/dist/components/TToggleGroup.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TToggleGroup.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TToggleGroup.vue_vue_type_script_setup_true_lang.js +119 -0
- package/dist/components/TToggleGroup.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TTooltip.cjs +2 -0
- package/dist/components/TTooltip.cjs.map +1 -0
- package/dist/components/TTooltip.js +7 -0
- package/dist/components/TTooltip.js.map +1 -0
- package/dist/components/TTooltip.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TTooltip.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TTooltip.vue_vue_type_script_setup_true_lang.js +75 -0
- package/dist/components/TTooltip.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TTreeView.cjs +2 -0
- package/dist/components/TTreeView.cjs.map +1 -0
- package/dist/components/TTreeView.js +7 -0
- package/dist/components/TTreeView.js.map +1 -0
- package/dist/components/TTreeView.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TTreeView.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TTreeView.vue_vue_type_script_setup_true_lang.js +161 -0
- package/dist/components/TTreeView.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/TTreeViewItem.cjs +2 -0
- package/dist/components/TTreeViewItem.cjs.map +1 -0
- package/dist/components/TTreeViewItem.js +7 -0
- package/dist/components/TTreeViewItem.js.map +1 -0
- package/dist/components/TTreeViewItem.vue_vue_type_script_setup_true_lang.cjs +2 -0
- package/dist/components/TTreeViewItem.vue_vue_type_script_setup_true_lang.cjs.map +1 -0
- package/dist/components/TTreeViewItem.vue_vue_type_script_setup_true_lang.js +101 -0
- package/dist/components/TTreeViewItem.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/accordion.cjs +2 -0
- package/dist/components/accordion.cjs.map +1 -0
- package/dist/components/accordion.js +6 -0
- package/dist/components/accordion.js.map +1 -0
- package/dist/components/index.d.ts +1 -0
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/sidebar.cjs +2 -0
- package/dist/components/sidebar.cjs.map +1 -0
- package/dist/components/sidebar.js +6 -0
- package/dist/components/sidebar.js.map +1 -0
- package/dist/components/tabs-context.cjs +2 -0
- package/dist/components/tabs-context.cjs.map +1 -0
- package/dist/components/tabs-context.js +6 -0
- package/dist/components/tabs-context.js.map +1 -0
- package/dist/components/tree-view.cjs +2 -0
- package/dist/components/tree-view.cjs.map +1 -0
- package/dist/components/tree-view.js +6 -0
- package/dist/components/tree-view.js.map +1 -0
- package/dist/composables/useControllableOpen.cjs +2 -0
- package/dist/composables/useControllableOpen.cjs.map +1 -0
- package/dist/composables/useControllableOpen.js +15 -0
- package/dist/composables/useControllableOpen.js.map +1 -0
- package/dist/composables/useToast.cjs +2 -0
- package/dist/composables/useToast.cjs.map +1 -0
- package/dist/composables/useToast.js +41 -0
- package/dist/composables/useToast.js.map +1 -0
- package/dist/index.cjs +1 -12
- package/dist/index.js +66 -5992
- package/dist/plugin.cjs +2 -0
- package/dist/plugin.cjs.map +1 -0
- package/dist/plugin.js +135 -0
- package/dist/plugin.js.map +1 -0
- package/dist/style.css +1 -1
- package/dist/types/contracts.cjs +2 -0
- package/dist/types/contracts.cjs.map +1 -0
- package/dist/types/contracts.js +31 -0
- package/dist/types/contracts.js.map +1 -0
- package/package.json +2 -2
- package/dist/index.cjs.map +0 -1
- package/dist/index.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TStack.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../src/components/TStack.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, useAttrs } from 'vue';\n\ndefineOptions({\n inheritAttrs: false,\n});\n\nconst _treeStackDirections = ['vertical', 'horizontal'] as const;\n\nexport type TStackDirection = (typeof _treeStackDirections)[number];\n\nconst props = withDefaults(\n defineProps<{\n as?: string;\n direction?: TStackDirection;\n gap?: string;\n align?: string;\n justify?: string;\n wrap?: boolean;\n reverse?: boolean;\n }>(),\n {\n as: 'div',\n direction: 'vertical',\n gap: 'var(--tree-space-4)',\n align: 'stretch',\n justify: 'flex-start',\n wrap: false,\n reverse: false,\n },\n);\n\nconst attrs = useAttrs();\n\nconst rootClasses = computed(() => [\n 't-stack',\n `t-stack--${props.direction}`,\n {\n 'is-wrapping': props.wrap,\n 'is-reversed': props.reverse,\n },\n attrs.class,\n]);\n\nconst rootStyle = computed(() => [\n {\n gap: props.gap,\n alignItems: props.align,\n justifyContent: props.justify,\n },\n attrs.style,\n]);\n\nconst rootAttrs = computed(() => {\n const { class: _class, style: _style, ...rest } = attrs;\n return rest;\n});\n</script>\n\n<template>\n <component\n :is=\"as\"\n v-bind=\"rootAttrs\"\n :class=\"rootClasses\"\n :style=\"rootStyle\"\n >\n <slot />\n </component>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;EAWA,IAAM,IAAQ,GAqBR,IAAQ,EAAS,GAEjB,IAAc,QAAe;GACjC;GACA,YAAY,EAAM;GAClB;IACE,eAAe,EAAM;IACrB,eAAe,EAAM;GACvB;GACA,EAAM;EACR,CAAC,GAEK,IAAY,QAAe,CAC/B;GACE,KAAK,EAAM;GACX,YAAY,EAAM;GAClB,gBAAgB,EAAM;EACxB,GACA,EAAM,KACR,CAAC,GAEK,IAAY,QAAe;GAC/B,IAAM,EAAE,OAAO,GAAQ,OAAO,GAAQ,GAAG,MAAS;GAClD,OAAO;EACT,CAAC;yBAIC,EAOY,EANL,EAAA,EAAE,GADT,EAEU,EAKE,OALO;GAChB,OAAO,EAAA;GACP,OAAO,EAAA;;oBAEA,CAAR,EAAQ,EAAA,QAAA,SAAA,CAAA,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TStat.cjs","names":[],"sources":["../../src/components/TStat.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, useAttrs, useSlots } from 'vue';\nimport TSkeleton from './TSkeleton.vue';\n\ndefineOptions({\n inheritAttrs: false,\n});\n\nconst _treeStatTones = ['neutral', 'success', 'warning', 'danger', 'info'] as const;\nconst _treeStatTrendDirections = ['up', 'down', 'neutral'] as const;\n\nexport type TStatTone = (typeof _treeStatTones)[number];\nexport type TStatTrendDirection = (typeof _treeStatTrendDirections)[number];\n\nconst props = withDefaults(\n defineProps<{\n label?: string;\n value?: string | number;\n trend?: string;\n meta?: string;\n tone?: TStatTone;\n trendDirection?: TStatTrendDirection;\n loading?: boolean;\n }>(),\n {\n label: '',\n value: '',\n trend: '',\n meta: '',\n tone: 'neutral',\n trendDirection: 'neutral',\n loading: false,\n },\n);\n\ndefineSlots<{\n icon?: () => unknown;\n label?: () => unknown;\n value?: () => unknown;\n trend?: () => unknown;\n meta?: () => unknown;\n}>();\n\nconst attrs = useAttrs();\nconst slots = useSlots();\n\nconst rootClasses = computed(() => [\n 't-stat',\n `t-stat--${props.tone}`,\n {\n 'has-icon': Boolean(slots.icon) && !props.loading,\n 'is-loading': props.loading,\n },\n attrs.class,\n]);\n\nconst rootStyle = computed(() => attrs.style);\n\nconst rootAttrs = computed(() => {\n const { class: _class, style: _style, ...rest } = attrs;\n return rest;\n});\n\nconst loadingAttrs = computed(() => ({\n ...rootAttrs.value,\n 'aria-busy': props.loading || undefined,\n}));\n\nconst hasValue = computed(() => props.value !== '' && props.value !== null && props.value !== undefined);\nconst hasTrend = computed(() => Boolean(slots.trend || props.trend));\nconst hasMeta = computed(() => Boolean(slots.meta || props.meta));\nconst hasLabel = computed(() => Boolean(slots.label || props.label));\n\nconst trendSymbol = computed(() => {\n if (props.trendDirection === 'up') {\n return '+';\n }\n\n if (props.trendDirection === 'down') {\n return '-';\n }\n\n return '•';\n});\n</script>\n\n<template>\n <div\n v-bind=\"loadingAttrs\"\n :class=\"rootClasses\"\n :style=\"rootStyle\"\n >\n <template v-if=\"loading\">\n <div class=\"t-stat__loading\">\n <TSkeleton class=\"t-stat__loading-label\" />\n <TSkeleton class=\"t-stat__loading-value\" />\n <TSkeleton class=\"t-stat__loading-trend\" />\n </div>\n </template>\n <template v-else>\n <div\n v-if=\"$slots.icon\"\n class=\"t-stat__icon\"\n >\n <slot name=\"icon\" />\n </div>\n\n <div class=\"t-stat__body\">\n <div\n v-if=\"hasLabel || hasMeta\"\n class=\"t-stat__topline\"\n >\n <p\n v-if=\"hasLabel\"\n class=\"t-stat__label\"\n >\n <slot name=\"label\">\n {{ label }}\n </slot>\n </p>\n\n <p\n v-if=\"hasMeta\"\n class=\"t-stat__meta\"\n >\n <slot name=\"meta\">\n {{ meta }}\n </slot>\n </p>\n </div>\n\n <div class=\"t-stat__content\">\n <p\n v-if=\"hasValue || $slots.value\"\n class=\"t-stat__value\"\n >\n <slot name=\"value\">\n {{ value }}\n </slot>\n </p>\n\n <p\n v-if=\"hasTrend\"\n class=\"t-stat__trend\"\n >\n <slot name=\"trend\">\n <span\n class=\"t-stat__trend-indicator\"\n aria-hidden=\"true\"\n >\n {{ trendSymbol }}\n </span>\n <span>{{ trend }}</span>\n </slot>\n </p>\n </div>\n </div>\n </template>\n </div>\n</template>\n"],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TStat.js","names":[],"sources":["../../src/components/TStat.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, useAttrs, useSlots } from 'vue';\nimport TSkeleton from './TSkeleton.vue';\n\ndefineOptions({\n inheritAttrs: false,\n});\n\nconst _treeStatTones = ['neutral', 'success', 'warning', 'danger', 'info'] as const;\nconst _treeStatTrendDirections = ['up', 'down', 'neutral'] as const;\n\nexport type TStatTone = (typeof _treeStatTones)[number];\nexport type TStatTrendDirection = (typeof _treeStatTrendDirections)[number];\n\nconst props = withDefaults(\n defineProps<{\n label?: string;\n value?: string | number;\n trend?: string;\n meta?: string;\n tone?: TStatTone;\n trendDirection?: TStatTrendDirection;\n loading?: boolean;\n }>(),\n {\n label: '',\n value: '',\n trend: '',\n meta: '',\n tone: 'neutral',\n trendDirection: 'neutral',\n loading: false,\n },\n);\n\ndefineSlots<{\n icon?: () => unknown;\n label?: () => unknown;\n value?: () => unknown;\n trend?: () => unknown;\n meta?: () => unknown;\n}>();\n\nconst attrs = useAttrs();\nconst slots = useSlots();\n\nconst rootClasses = computed(() => [\n 't-stat',\n `t-stat--${props.tone}`,\n {\n 'has-icon': Boolean(slots.icon) && !props.loading,\n 'is-loading': props.loading,\n },\n attrs.class,\n]);\n\nconst rootStyle = computed(() => attrs.style);\n\nconst rootAttrs = computed(() => {\n const { class: _class, style: _style, ...rest } = attrs;\n return rest;\n});\n\nconst loadingAttrs = computed(() => ({\n ...rootAttrs.value,\n 'aria-busy': props.loading || undefined,\n}));\n\nconst hasValue = computed(() => props.value !== '' && props.value !== null && props.value !== undefined);\nconst hasTrend = computed(() => Boolean(slots.trend || props.trend));\nconst hasMeta = computed(() => Boolean(slots.meta || props.meta));\nconst hasLabel = computed(() => Boolean(slots.label || props.label));\n\nconst trendSymbol = computed(() => {\n if (props.trendDirection === 'up') {\n return '+';\n }\n\n if (props.trendDirection === 'down') {\n return '-';\n }\n\n return '•';\n});\n</script>\n\n<template>\n <div\n v-bind=\"loadingAttrs\"\n :class=\"rootClasses\"\n :style=\"rootStyle\"\n >\n <template v-if=\"loading\">\n <div class=\"t-stat__loading\">\n <TSkeleton class=\"t-stat__loading-label\" />\n <TSkeleton class=\"t-stat__loading-value\" />\n <TSkeleton class=\"t-stat__loading-trend\" />\n </div>\n </template>\n <template v-else>\n <div\n v-if=\"$slots.icon\"\n class=\"t-stat__icon\"\n >\n <slot name=\"icon\" />\n </div>\n\n <div class=\"t-stat__body\">\n <div\n v-if=\"hasLabel || hasMeta\"\n class=\"t-stat__topline\"\n >\n <p\n v-if=\"hasLabel\"\n class=\"t-stat__label\"\n >\n <slot name=\"label\">\n {{ label }}\n </slot>\n </p>\n\n <p\n v-if=\"hasMeta\"\n class=\"t-stat__meta\"\n >\n <slot name=\"meta\">\n {{ meta }}\n </slot>\n </p>\n </div>\n\n <div class=\"t-stat__content\">\n <p\n v-if=\"hasValue || $slots.value\"\n class=\"t-stat__value\"\n >\n <slot name=\"value\">\n {{ value }}\n </slot>\n </p>\n\n <p\n v-if=\"hasTrend\"\n class=\"t-stat__trend\"\n >\n <slot name=\"trend\">\n <span\n class=\"t-stat__trend-indicator\"\n aria-hidden=\"true\"\n >\n {{ trendSymbol }}\n </span>\n <span>{{ trend }}</span>\n </slot>\n </p>\n </div>\n </div>\n </template>\n </div>\n</template>\n"],"mappings":""}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
const e=require("./TSkeleton.cjs");let t=require("vue");var n={key:0,class:`t-stat__loading`},r={key:0,class:`t-stat__icon`},i={class:`t-stat__body`},a={key:0,class:`t-stat__topline`},o={key:0,class:`t-stat__label`},s={key:1,class:`t-stat__meta`},c={class:`t-stat__content`},l={key:0,class:`t-stat__value`},u={key:1,class:`t-stat__trend`},d={class:`t-stat__trend-indicator`,"aria-hidden":`true`},f=(0,t.defineComponent)({inheritAttrs:!1,__name:`TStat`,props:{label:{default:``},value:{default:``},trend:{default:``},meta:{default:``},tone:{default:`neutral`},trendDirection:{default:`neutral`},loading:{type:Boolean,default:!1}},setup(f){let p=f,m=(0,t.useAttrs)(),h=(0,t.useSlots)(),g=(0,t.computed)(()=>[`t-stat`,`t-stat--${p.tone}`,{"has-icon":!!h.icon&&!p.loading,"is-loading":p.loading},m.class]),_=(0,t.computed)(()=>m.style),v=(0,t.computed)(()=>{let{class:e,style:t,...n}=m;return n}),y=(0,t.computed)(()=>({...v.value,"aria-busy":p.loading||void 0})),b=(0,t.computed)(()=>p.value!==``&&p.value!==null&&p.value!==void 0),x=(0,t.computed)(()=>!!(h.trend||p.trend)),S=(0,t.computed)(()=>!!(h.meta||p.meta)),C=(0,t.computed)(()=>!!(h.label||p.label)),w=(0,t.computed)(()=>p.trendDirection===`up`?`+`:p.trendDirection===`down`?`-`:`•`);return(p,m)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,(0,t.mergeProps)(y.value,{class:g.value,style:_.value}),[f.loading?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,n,[(0,t.createVNode)(e.default,{class:`t-stat__loading-label`}),(0,t.createVNode)(e.default,{class:`t-stat__loading-value`}),(0,t.createVNode)(e.default,{class:`t-stat__loading-trend`})])):((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,{key:1},[p.$slots.icon?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,r,[(0,t.renderSlot)(p.$slots,`icon`)])):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`div`,i,[C.value||S.value?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,a,[C.value?((0,t.openBlock)(),(0,t.createElementBlock)(`p`,o,[(0,t.renderSlot)(p.$slots,`label`,{},()=>[(0,t.createTextVNode)((0,t.toDisplayString)(f.label),1)])])):(0,t.createCommentVNode)(``,!0),S.value?((0,t.openBlock)(),(0,t.createElementBlock)(`p`,s,[(0,t.renderSlot)(p.$slots,`meta`,{},()=>[(0,t.createTextVNode)((0,t.toDisplayString)(f.meta),1)])])):(0,t.createCommentVNode)(``,!0)])):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`div`,c,[b.value||p.$slots.value?((0,t.openBlock)(),(0,t.createElementBlock)(`p`,l,[(0,t.renderSlot)(p.$slots,`value`,{},()=>[(0,t.createTextVNode)((0,t.toDisplayString)(f.value),1)])])):(0,t.createCommentVNode)(``,!0),x.value?((0,t.openBlock)(),(0,t.createElementBlock)(`p`,u,[(0,t.renderSlot)(p.$slots,`trend`,{},()=>[(0,t.createElementVNode)(`span`,d,(0,t.toDisplayString)(w.value),1),(0,t.createElementVNode)(`span`,null,(0,t.toDisplayString)(f.trend),1)])])):(0,t.createCommentVNode)(``,!0)])])],64))],16))}});exports.default=f;
|
|
2
|
+
//# sourceMappingURL=TStat.vue_vue_type_script_setup_true_lang.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TStat.vue_vue_type_script_setup_true_lang.cjs","names":["$slots"],"sources":["../../src/components/TStat.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, useAttrs, useSlots } from 'vue';\nimport TSkeleton from './TSkeleton.vue';\n\ndefineOptions({\n inheritAttrs: false,\n});\n\nconst _treeStatTones = ['neutral', 'success', 'warning', 'danger', 'info'] as const;\nconst _treeStatTrendDirections = ['up', 'down', 'neutral'] as const;\n\nexport type TStatTone = (typeof _treeStatTones)[number];\nexport type TStatTrendDirection = (typeof _treeStatTrendDirections)[number];\n\nconst props = withDefaults(\n defineProps<{\n label?: string;\n value?: string | number;\n trend?: string;\n meta?: string;\n tone?: TStatTone;\n trendDirection?: TStatTrendDirection;\n loading?: boolean;\n }>(),\n {\n label: '',\n value: '',\n trend: '',\n meta: '',\n tone: 'neutral',\n trendDirection: 'neutral',\n loading: false,\n },\n);\n\ndefineSlots<{\n icon?: () => unknown;\n label?: () => unknown;\n value?: () => unknown;\n trend?: () => unknown;\n meta?: () => unknown;\n}>();\n\nconst attrs = useAttrs();\nconst slots = useSlots();\n\nconst rootClasses = computed(() => [\n 't-stat',\n `t-stat--${props.tone}`,\n {\n 'has-icon': Boolean(slots.icon) && !props.loading,\n 'is-loading': props.loading,\n },\n attrs.class,\n]);\n\nconst rootStyle = computed(() => attrs.style);\n\nconst rootAttrs = computed(() => {\n const { class: _class, style: _style, ...rest } = attrs;\n return rest;\n});\n\nconst loadingAttrs = computed(() => ({\n ...rootAttrs.value,\n 'aria-busy': props.loading || undefined,\n}));\n\nconst hasValue = computed(() => props.value !== '' && props.value !== null && props.value !== undefined);\nconst hasTrend = computed(() => Boolean(slots.trend || props.trend));\nconst hasMeta = computed(() => Boolean(slots.meta || props.meta));\nconst hasLabel = computed(() => Boolean(slots.label || props.label));\n\nconst trendSymbol = computed(() => {\n if (props.trendDirection === 'up') {\n return '+';\n }\n\n if (props.trendDirection === 'down') {\n return '-';\n }\n\n return '•';\n});\n</script>\n\n<template>\n <div\n v-bind=\"loadingAttrs\"\n :class=\"rootClasses\"\n :style=\"rootStyle\"\n >\n <template v-if=\"loading\">\n <div class=\"t-stat__loading\">\n <TSkeleton class=\"t-stat__loading-label\" />\n <TSkeleton class=\"t-stat__loading-value\" />\n <TSkeleton class=\"t-stat__loading-trend\" />\n </div>\n </template>\n <template v-else>\n <div\n v-if=\"$slots.icon\"\n class=\"t-stat__icon\"\n >\n <slot name=\"icon\" />\n </div>\n\n <div class=\"t-stat__body\">\n <div\n v-if=\"hasLabel || hasMeta\"\n class=\"t-stat__topline\"\n >\n <p\n v-if=\"hasLabel\"\n class=\"t-stat__label\"\n >\n <slot name=\"label\">\n {{ label }}\n </slot>\n </p>\n\n <p\n v-if=\"hasMeta\"\n class=\"t-stat__meta\"\n >\n <slot name=\"meta\">\n {{ meta }}\n </slot>\n </p>\n </div>\n\n <div class=\"t-stat__content\">\n <p\n v-if=\"hasValue || $slots.value\"\n class=\"t-stat__value\"\n >\n <slot name=\"value\">\n {{ value }}\n </slot>\n </p>\n\n <p\n v-if=\"hasTrend\"\n class=\"t-stat__trend\"\n >\n <slot name=\"trend\">\n <span\n class=\"t-stat__trend-indicator\"\n aria-hidden=\"true\"\n >\n {{ trendSymbol }}\n </span>\n <span>{{ trend }}</span>\n </slot>\n </p>\n </div>\n </div>\n </template>\n </div>\n</template>\n"],"mappings":"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"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import e from "./TSkeleton.js";
|
|
2
|
+
import { Fragment as t, computed as n, createCommentVNode as r, createElementBlock as i, createElementVNode as a, createTextVNode as o, createVNode as s, defineComponent as c, mergeProps as l, openBlock as u, renderSlot as d, toDisplayString as f, useAttrs as p, useSlots as m } from "vue";
|
|
3
|
+
//#region src/components/TStat.vue?vue&type=script&setup=true&lang.ts
|
|
4
|
+
var h = {
|
|
5
|
+
key: 0,
|
|
6
|
+
class: "t-stat__loading"
|
|
7
|
+
}, g = {
|
|
8
|
+
key: 0,
|
|
9
|
+
class: "t-stat__icon"
|
|
10
|
+
}, _ = { class: "t-stat__body" }, v = {
|
|
11
|
+
key: 0,
|
|
12
|
+
class: "t-stat__topline"
|
|
13
|
+
}, y = {
|
|
14
|
+
key: 0,
|
|
15
|
+
class: "t-stat__label"
|
|
16
|
+
}, b = {
|
|
17
|
+
key: 1,
|
|
18
|
+
class: "t-stat__meta"
|
|
19
|
+
}, x = { class: "t-stat__content" }, S = {
|
|
20
|
+
key: 0,
|
|
21
|
+
class: "t-stat__value"
|
|
22
|
+
}, C = {
|
|
23
|
+
key: 1,
|
|
24
|
+
class: "t-stat__trend"
|
|
25
|
+
}, w = {
|
|
26
|
+
class: "t-stat__trend-indicator",
|
|
27
|
+
"aria-hidden": "true"
|
|
28
|
+
}, T = /*@__PURE__*/ c({
|
|
29
|
+
inheritAttrs: !1,
|
|
30
|
+
__name: "TStat",
|
|
31
|
+
props: {
|
|
32
|
+
label: { default: "" },
|
|
33
|
+
value: { default: "" },
|
|
34
|
+
trend: { default: "" },
|
|
35
|
+
meta: { default: "" },
|
|
36
|
+
tone: { default: "neutral" },
|
|
37
|
+
trendDirection: { default: "neutral" },
|
|
38
|
+
loading: {
|
|
39
|
+
type: Boolean,
|
|
40
|
+
default: !1
|
|
41
|
+
}
|
|
42
|
+
},
|
|
43
|
+
setup(c) {
|
|
44
|
+
let T = c, E = p(), D = m(), O = n(() => [
|
|
45
|
+
"t-stat",
|
|
46
|
+
`t-stat--${T.tone}`,
|
|
47
|
+
{
|
|
48
|
+
"has-icon": !!D.icon && !T.loading,
|
|
49
|
+
"is-loading": T.loading
|
|
50
|
+
},
|
|
51
|
+
E.class
|
|
52
|
+
]), k = n(() => E.style), A = n(() => {
|
|
53
|
+
let { class: e, style: t, ...n } = E;
|
|
54
|
+
return n;
|
|
55
|
+
}), j = n(() => ({
|
|
56
|
+
...A.value,
|
|
57
|
+
"aria-busy": T.loading || void 0
|
|
58
|
+
})), M = n(() => T.value !== "" && T.value !== null && T.value !== void 0), N = n(() => !!(D.trend || T.trend)), P = n(() => !!(D.meta || T.meta)), F = n(() => !!(D.label || T.label)), I = n(() => T.trendDirection === "up" ? "+" : T.trendDirection === "down" ? "-" : "•");
|
|
59
|
+
return (n, p) => (u(), i("div", l(j.value, {
|
|
60
|
+
class: O.value,
|
|
61
|
+
style: k.value
|
|
62
|
+
}), [c.loading ? (u(), i("div", h, [
|
|
63
|
+
s(e, { class: "t-stat__loading-label" }),
|
|
64
|
+
s(e, { class: "t-stat__loading-value" }),
|
|
65
|
+
s(e, { class: "t-stat__loading-trend" })
|
|
66
|
+
])) : (u(), i(t, { key: 1 }, [n.$slots.icon ? (u(), i("div", g, [d(n.$slots, "icon")])) : r("", !0), a("div", _, [F.value || P.value ? (u(), i("div", v, [F.value ? (u(), i("p", y, [d(n.$slots, "label", {}, () => [o(f(c.label), 1)])])) : r("", !0), P.value ? (u(), i("p", b, [d(n.$slots, "meta", {}, () => [o(f(c.meta), 1)])])) : r("", !0)])) : r("", !0), a("div", x, [M.value || n.$slots.value ? (u(), i("p", S, [d(n.$slots, "value", {}, () => [o(f(c.value), 1)])])) : r("", !0), N.value ? (u(), i("p", C, [d(n.$slots, "trend", {}, () => [a("span", w, f(I.value), 1), a("span", null, f(c.trend), 1)])])) : r("", !0)])])], 64))], 16));
|
|
67
|
+
}
|
|
68
|
+
});
|
|
69
|
+
//#endregion
|
|
70
|
+
export { T as default };
|
|
71
|
+
|
|
72
|
+
//# sourceMappingURL=TStat.vue_vue_type_script_setup_true_lang.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TStat.vue_vue_type_script_setup_true_lang.js","names":["$slots"],"sources":["../../src/components/TStat.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, useAttrs, useSlots } from 'vue';\nimport TSkeleton from './TSkeleton.vue';\n\ndefineOptions({\n inheritAttrs: false,\n});\n\nconst _treeStatTones = ['neutral', 'success', 'warning', 'danger', 'info'] as const;\nconst _treeStatTrendDirections = ['up', 'down', 'neutral'] as const;\n\nexport type TStatTone = (typeof _treeStatTones)[number];\nexport type TStatTrendDirection = (typeof _treeStatTrendDirections)[number];\n\nconst props = withDefaults(\n defineProps<{\n label?: string;\n value?: string | number;\n trend?: string;\n meta?: string;\n tone?: TStatTone;\n trendDirection?: TStatTrendDirection;\n loading?: boolean;\n }>(),\n {\n label: '',\n value: '',\n trend: '',\n meta: '',\n tone: 'neutral',\n trendDirection: 'neutral',\n loading: false,\n },\n);\n\ndefineSlots<{\n icon?: () => unknown;\n label?: () => unknown;\n value?: () => unknown;\n trend?: () => unknown;\n meta?: () => unknown;\n}>();\n\nconst attrs = useAttrs();\nconst slots = useSlots();\n\nconst rootClasses = computed(() => [\n 't-stat',\n `t-stat--${props.tone}`,\n {\n 'has-icon': Boolean(slots.icon) && !props.loading,\n 'is-loading': props.loading,\n },\n attrs.class,\n]);\n\nconst rootStyle = computed(() => attrs.style);\n\nconst rootAttrs = computed(() => {\n const { class: _class, style: _style, ...rest } = attrs;\n return rest;\n});\n\nconst loadingAttrs = computed(() => ({\n ...rootAttrs.value,\n 'aria-busy': props.loading || undefined,\n}));\n\nconst hasValue = computed(() => props.value !== '' && props.value !== null && props.value !== undefined);\nconst hasTrend = computed(() => Boolean(slots.trend || props.trend));\nconst hasMeta = computed(() => Boolean(slots.meta || props.meta));\nconst hasLabel = computed(() => Boolean(slots.label || props.label));\n\nconst trendSymbol = computed(() => {\n if (props.trendDirection === 'up') {\n return '+';\n }\n\n if (props.trendDirection === 'down') {\n return '-';\n }\n\n return '•';\n});\n</script>\n\n<template>\n <div\n v-bind=\"loadingAttrs\"\n :class=\"rootClasses\"\n :style=\"rootStyle\"\n >\n <template v-if=\"loading\">\n <div class=\"t-stat__loading\">\n <TSkeleton class=\"t-stat__loading-label\" />\n <TSkeleton class=\"t-stat__loading-value\" />\n <TSkeleton class=\"t-stat__loading-trend\" />\n </div>\n </template>\n <template v-else>\n <div\n v-if=\"$slots.icon\"\n class=\"t-stat__icon\"\n >\n <slot name=\"icon\" />\n </div>\n\n <div class=\"t-stat__body\">\n <div\n v-if=\"hasLabel || hasMeta\"\n class=\"t-stat__topline\"\n >\n <p\n v-if=\"hasLabel\"\n class=\"t-stat__label\"\n >\n <slot name=\"label\">\n {{ label }}\n </slot>\n </p>\n\n <p\n v-if=\"hasMeta\"\n class=\"t-stat__meta\"\n >\n <slot name=\"meta\">\n {{ meta }}\n </slot>\n </p>\n </div>\n\n <div class=\"t-stat__content\">\n <p\n v-if=\"hasValue || $slots.value\"\n class=\"t-stat__value\"\n >\n <slot name=\"value\">\n {{ value }}\n </slot>\n </p>\n\n <p\n v-if=\"hasTrend\"\n class=\"t-stat__trend\"\n >\n <slot name=\"trend\">\n <span\n class=\"t-stat__trend-indicator\"\n aria-hidden=\"true\"\n >\n {{ trendSymbol }}\n </span>\n <span>{{ trend }}</span>\n </slot>\n </p>\n </div>\n </div>\n </template>\n </div>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAcA,IAAM,IAAQ,GA6BR,IAAQ,EAAS,GACjB,IAAQ,EAAS,GAEjB,IAAc,QAAe;GACjC;GACA,WAAW,EAAM;GACjB;IACE,YAAY,EAAQ,EAAM,QAAS,CAAC,EAAM;IAC1C,cAAc,EAAM;GACtB;GACA,EAAM;EACR,CAAC,GAEK,IAAY,QAAe,EAAM,KAAK,GAEtC,IAAY,QAAe;GAC/B,IAAM,EAAE,OAAO,GAAQ,OAAO,GAAQ,GAAG,MAAS;GAClD,OAAO;EACT,CAAC,GAEK,IAAe,SAAgB;GACnC,GAAG,EAAU;GACb,aAAa,EAAM,WAAW,KAAA;EAChC,EAAE,GAEI,IAAW,QAAe,EAAM,UAAU,MAAM,EAAM,UAAU,QAAQ,EAAM,UAAU,KAAA,CAAS,GACjG,IAAW,QAAe,GAAQ,EAAM,SAAS,EAAM,MAAM,GAC7D,IAAU,QAAe,GAAQ,EAAM,QAAQ,EAAM,KAAK,GAC1D,IAAW,QAAe,GAAQ,EAAM,SAAS,EAAM,MAAM,GAE7D,IAAc,QACd,EAAM,mBAAmB,OACpB,MAGL,EAAM,mBAAmB,SACpB,MAGF,GACR;yBAIC,EAuEM,OAvEN,EACU,EAsEJ,OAtEgB;GACnB,OAAO,EAAA;GACP,OAAO,EAAA;OAEQ,EAAA,WAAA,EAAA,GACd,EAIM,OAJN,GAIM;GAHJ,EAA2C,GAAA,EAAhC,OAAM,wBAAuB,CAAA;GACxC,EAA2C,GAAA,EAAhC,OAAM,wBAAuB,CAAA;GACxC,EAA2C,GAAA,EAAhC,OAAM,wBAAuB,CAAA;cAG5C,EA0DW,GAAA,EAAA,KAAA,EAAA,GAAA,CAxDDA,EAAAA,OAAO,QAAA,EAAA,GADf,EAKM,OALN,GAKM,CADJ,EAAoB,EAAA,QAAA,MAAA,CAAA,CAAA,KAAA,EAAA,IAAA,EAAA,GAGtB,EAiDM,OAjDN,GAiDM,CA/CI,EAAA,SAAY,EAAA,SAAA,EAAA,GADpB,EAqBM,OArBN,GAqBM,CAhBI,EAAA,SAAA,EAAA,GADR,EAOI,KAPJ,GAOI,CAHF,EAEO,EAAA,QAAA,SAAA,CAAA,SAAA,CAAA,EAAA,EADF,EAAA,KAAK,GAAA,CAAA,CAAA,CAAA,CAAA,CAAA,KAAA,EAAA,IAAA,EAAA,GAKJ,EAAA,SAAA,EAAA,GADR,EAOI,KAPJ,GAOI,CAHF,EAEO,EAAA,QAAA,QAAA,CAAA,SAAA,CAAA,EAAA,EADF,EAAA,IAAI,GAAA,CAAA,CAAA,CAAA,CAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,CAAA,KAAA,EAAA,IAAA,EAAA,GAKb,EAwBM,OAxBN,GAwBM,CAtBI,EAAA,SAAYA,EAAAA,OAAO,SAAA,EAAA,GAD3B,EAOI,KAPJ,GAOI,CAHF,EAEO,EAAA,QAAA,SAAA,CAAA,SAAA,CAAA,EAAA,EADF,EAAA,KAAK,GAAA,CAAA,CAAA,CAAA,CAAA,CAAA,KAAA,EAAA,IAAA,EAAA,GAKJ,EAAA,SAAA,EAAA,GADR,EAaI,KAbJ,GAaI,CATF,EAQO,EAAA,QAAA,SAAA,CAAA,SAAA,CAPL,EAKO,QALP,GAKO,EADF,EAAA,KAAW,GAAA,CAAA,GAEhB,EAAwB,QAAA,MAAA,EAAf,EAAA,KAAK,GAAA,CAAA,CAAA,CAAA,CAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,GAAA,EAAA,EAAA,GAAA,EAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TSteps.cjs","names":[],"sources":["../../src/components/TSteps.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { getTreeIcon, treeIconDefaults } from '@treeui/icons';\nimport { computed, ref, useAttrs, watch } from 'vue';\nimport type { TSize } from '../types/contracts';\n\ndefineOptions({\n inheritAttrs: false,\n});\n\nexport interface TStepItem {\n label: string;\n value: string;\n description?: string;\n meta?: string;\n status?: TStepStatus;\n disabled?: boolean;\n}\n\nconst _treeStepStatuses = ['complete', 'current', 'upcoming', 'error'] as const;\nconst _treeStepOrientations = ['horizontal', 'vertical'] as const;\n\nexport type TStepStatus = (typeof _treeStepStatuses)[number];\nexport type TStepOrientation = (typeof _treeStepOrientations)[number];\n\nconst CheckIcon = getTreeIcon('check');\n\nconst props = withDefaults(\n defineProps<{\n modelValue?: string;\n defaultValue?: string;\n items?: TStepItem[];\n size?: TSize;\n orientation?: TStepOrientation;\n interactive?: boolean;\n }>(),\n {\n modelValue: undefined,\n defaultValue: '',\n items: () => [],\n size: 'md',\n orientation: 'horizontal',\n interactive: false,\n },\n);\n\nconst emit = defineEmits<{\n 'update:modelValue': [value: string];\n}>();\n\ndefineSlots<{\n item?: (props: {\n item: TStepItem;\n index: number;\n status: TStepStatus;\n current: boolean;\n }) => unknown;\n}>();\n\nconst attrs = useAttrs();\nconst internalValue = ref(props.defaultValue || props.items[0]?.value || '');\n\nconst activeValue = computed(() => props.modelValue ?? internalValue.value);\n\nconst currentIndex = computed(() => {\n const activeIndex = props.items.findIndex((item) => item.value === activeValue.value);\n return activeIndex >= 0 ? activeIndex : 0;\n});\n\nconst rootClasses = computed(() => [\n 't-steps',\n `t-steps--${props.size}`,\n `t-steps--${props.orientation}`,\n {\n 'is-interactive': props.interactive,\n },\n attrs.class,\n]);\n\nconst rootStyle = computed(() => attrs.style);\n\nconst rootAttrs = computed(() => {\n const { class: _class, style: _style, ...rest } = attrs;\n return rest;\n});\n\nconst resolveStatus = (item: TStepItem, index: number): TStepStatus => {\n if (item.status) {\n return item.status;\n }\n\n if (index < currentIndex.value) {\n return 'complete';\n }\n\n if (index === currentIndex.value) {\n return 'current';\n }\n\n return 'upcoming';\n};\n\nconst selectStep = (item: TStepItem) => {\n if (!props.interactive || item.disabled) {\n return;\n }\n\n if (props.modelValue === undefined) {\n internalValue.value = item.value;\n }\n\n emit('update:modelValue', item.value);\n};\n\nwatch(\n () => props.items,\n (items) => {\n const hasCurrentItem = items.some((item) => item.value === activeValue.value);\n\n if (!hasCurrentItem && items[0] && props.modelValue === undefined) {\n internalValue.value = items[0].value;\n }\n },\n { deep: true },\n);\n</script>\n\n<template>\n <ol\n v-bind=\"rootAttrs\"\n :class=\"rootClasses\"\n :style=\"rootStyle\"\n >\n <li\n v-for=\"(item, index) in items\"\n :key=\"item.value\"\n class=\"t-steps__item\"\n :class=\"`is-${resolveStatus(item, index)}`\"\n >\n <button\n type=\"button\"\n class=\"t-steps__button\"\n :class=\"{\n 'is-current': resolveStatus(item, index) === 'current',\n 'is-disabled': item.disabled,\n }\"\n :disabled=\"!interactive || item.disabled\"\n :aria-current=\"resolveStatus(item, index) === 'current' ? 'step' : undefined\"\n @click=\"selectStep(item)\"\n >\n <slot\n name=\"item\"\n :item=\"item\"\n :index=\"index\"\n :status=\"resolveStatus(item, index)\"\n :current=\"resolveStatus(item, index) === 'current'\"\n >\n <span\n class=\"t-steps__indicator\"\n aria-hidden=\"true\"\n >\n <CheckIcon\n v-if=\"resolveStatus(item, index) === 'complete'\"\n v-bind=\"treeIconDefaults\"\n />\n <span v-else-if=\"resolveStatus(item, index) === 'error'\">!</span>\n <span v-else>{{ index + 1 }}</span>\n </span>\n\n <span class=\"t-steps__copy\">\n <span class=\"t-steps__label\">{{ item.label }}</span>\n <span\n v-if=\"item.description\"\n class=\"t-steps__description\"\n >\n {{ item.description }}\n </span>\n </span>\n\n <span\n v-if=\"item.meta\"\n class=\"t-steps__meta\"\n >\n {{ item.meta }}\n </span>\n </slot>\n </button>\n </li>\n </ol>\n</template>\n"],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TSteps.js","names":[],"sources":["../../src/components/TSteps.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { getTreeIcon, treeIconDefaults } from '@treeui/icons';\nimport { computed, ref, useAttrs, watch } from 'vue';\nimport type { TSize } from '../types/contracts';\n\ndefineOptions({\n inheritAttrs: false,\n});\n\nexport interface TStepItem {\n label: string;\n value: string;\n description?: string;\n meta?: string;\n status?: TStepStatus;\n disabled?: boolean;\n}\n\nconst _treeStepStatuses = ['complete', 'current', 'upcoming', 'error'] as const;\nconst _treeStepOrientations = ['horizontal', 'vertical'] as const;\n\nexport type TStepStatus = (typeof _treeStepStatuses)[number];\nexport type TStepOrientation = (typeof _treeStepOrientations)[number];\n\nconst CheckIcon = getTreeIcon('check');\n\nconst props = withDefaults(\n defineProps<{\n modelValue?: string;\n defaultValue?: string;\n items?: TStepItem[];\n size?: TSize;\n orientation?: TStepOrientation;\n interactive?: boolean;\n }>(),\n {\n modelValue: undefined,\n defaultValue: '',\n items: () => [],\n size: 'md',\n orientation: 'horizontal',\n interactive: false,\n },\n);\n\nconst emit = defineEmits<{\n 'update:modelValue': [value: string];\n}>();\n\ndefineSlots<{\n item?: (props: {\n item: TStepItem;\n index: number;\n status: TStepStatus;\n current: boolean;\n }) => unknown;\n}>();\n\nconst attrs = useAttrs();\nconst internalValue = ref(props.defaultValue || props.items[0]?.value || '');\n\nconst activeValue = computed(() => props.modelValue ?? internalValue.value);\n\nconst currentIndex = computed(() => {\n const activeIndex = props.items.findIndex((item) => item.value === activeValue.value);\n return activeIndex >= 0 ? activeIndex : 0;\n});\n\nconst rootClasses = computed(() => [\n 't-steps',\n `t-steps--${props.size}`,\n `t-steps--${props.orientation}`,\n {\n 'is-interactive': props.interactive,\n },\n attrs.class,\n]);\n\nconst rootStyle = computed(() => attrs.style);\n\nconst rootAttrs = computed(() => {\n const { class: _class, style: _style, ...rest } = attrs;\n return rest;\n});\n\nconst resolveStatus = (item: TStepItem, index: number): TStepStatus => {\n if (item.status) {\n return item.status;\n }\n\n if (index < currentIndex.value) {\n return 'complete';\n }\n\n if (index === currentIndex.value) {\n return 'current';\n }\n\n return 'upcoming';\n};\n\nconst selectStep = (item: TStepItem) => {\n if (!props.interactive || item.disabled) {\n return;\n }\n\n if (props.modelValue === undefined) {\n internalValue.value = item.value;\n }\n\n emit('update:modelValue', item.value);\n};\n\nwatch(\n () => props.items,\n (items) => {\n const hasCurrentItem = items.some((item) => item.value === activeValue.value);\n\n if (!hasCurrentItem && items[0] && props.modelValue === undefined) {\n internalValue.value = items[0].value;\n }\n },\n { deep: true },\n);\n</script>\n\n<template>\n <ol\n v-bind=\"rootAttrs\"\n :class=\"rootClasses\"\n :style=\"rootStyle\"\n >\n <li\n v-for=\"(item, index) in items\"\n :key=\"item.value\"\n class=\"t-steps__item\"\n :class=\"`is-${resolveStatus(item, index)}`\"\n >\n <button\n type=\"button\"\n class=\"t-steps__button\"\n :class=\"{\n 'is-current': resolveStatus(item, index) === 'current',\n 'is-disabled': item.disabled,\n }\"\n :disabled=\"!interactive || item.disabled\"\n :aria-current=\"resolveStatus(item, index) === 'current' ? 'step' : undefined\"\n @click=\"selectStep(item)\"\n >\n <slot\n name=\"item\"\n :item=\"item\"\n :index=\"index\"\n :status=\"resolveStatus(item, index)\"\n :current=\"resolveStatus(item, index) === 'current'\"\n >\n <span\n class=\"t-steps__indicator\"\n aria-hidden=\"true\"\n >\n <CheckIcon\n v-if=\"resolveStatus(item, index) === 'complete'\"\n v-bind=\"treeIconDefaults\"\n />\n <span v-else-if=\"resolveStatus(item, index) === 'error'\">!</span>\n <span v-else>{{ index + 1 }}</span>\n </span>\n\n <span class=\"t-steps__copy\">\n <span class=\"t-steps__label\">{{ item.label }}</span>\n <span\n v-if=\"item.description\"\n class=\"t-steps__description\"\n >\n {{ item.description }}\n </span>\n </span>\n\n <span\n v-if=\"item.meta\"\n class=\"t-steps__meta\"\n >\n {{ item.meta }}\n </span>\n </slot>\n </button>\n </li>\n </ol>\n</template>\n"],"mappings":""}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
let e=require("vue"),t=require("@treeui/icons");var n=[`disabled`,`aria-current`,`onClick`],r={class:`t-steps__indicator`,"aria-hidden":`true`},i={key:1},a={key:2},o={class:`t-steps__copy`},s={class:`t-steps__label`},c={key:0,class:`t-steps__description`},l={key:0,class:`t-steps__meta`},u=(0,e.defineComponent)({inheritAttrs:!1,__name:`TSteps`,props:{modelValue:{default:void 0},defaultValue:{default:``},items:{default:()=>[]},size:{default:`md`},orientation:{default:`horizontal`},interactive:{type:Boolean,default:!1}},emits:[`update:modelValue`],setup(u,{emit:d}){let f=(0,t.getTreeIcon)(`check`),p=u,m=d,h=(0,e.useAttrs)(),g=(0,e.ref)(p.defaultValue||p.items[0]?.value||``),_=(0,e.computed)(()=>p.modelValue??g.value),v=(0,e.computed)(()=>{let e=p.items.findIndex(e=>e.value===_.value);return e>=0?e:0}),y=(0,e.computed)(()=>[`t-steps`,`t-steps--${p.size}`,`t-steps--${p.orientation}`,{"is-interactive":p.interactive},h.class]),b=(0,e.computed)(()=>h.style),x=(0,e.computed)(()=>{let{class:e,style:t,...n}=h;return n}),S=(e,t)=>e.status?e.status:t<v.value?`complete`:t===v.value?`current`:`upcoming`,C=e=>{!p.interactive||e.disabled||(p.modelValue===void 0&&(g.value=e.value),m(`update:modelValue`,e.value))};return(0,e.watch)(()=>p.items,e=>{!e.some(e=>e.value===_.value)&&e[0]&&p.modelValue===void 0&&(g.value=e[0].value)},{deep:!0}),(d,p)=>((0,e.openBlock)(),(0,e.createElementBlock)(`ol`,(0,e.mergeProps)(x.value,{class:y.value,style:b.value}),[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(u.items,(p,m)=>((0,e.openBlock)(),(0,e.createElementBlock)(`li`,{key:p.value,class:(0,e.normalizeClass)([`t-steps__item`,`is-${S(p,m)}`])},[(0,e.createElementVNode)(`button`,{type:`button`,class:(0,e.normalizeClass)([`t-steps__button`,{"is-current":S(p,m)===`current`,"is-disabled":p.disabled}]),disabled:!u.interactive||p.disabled,"aria-current":S(p,m)===`current`?`step`:void 0,onClick:e=>C(p)},[(0,e.renderSlot)(d.$slots,`item`,{item:p,index:m,status:S(p,m),current:S(p,m)===`current`},()=>[(0,e.createElementVNode)(`span`,r,[S(p,m)===`complete`?((0,e.openBlock)(),(0,e.createBlock)((0,e.unref)(f),(0,e.mergeProps)({key:0,ref_for:!0},(0,e.unref)(t.treeIconDefaults)),null,16)):S(p,m)===`error`?((0,e.openBlock)(),(0,e.createElementBlock)(`span`,i,`!`)):((0,e.openBlock)(),(0,e.createElementBlock)(`span`,a,(0,e.toDisplayString)(m+1),1))]),(0,e.createElementVNode)(`span`,o,[(0,e.createElementVNode)(`span`,s,(0,e.toDisplayString)(p.label),1),p.description?((0,e.openBlock)(),(0,e.createElementBlock)(`span`,c,(0,e.toDisplayString)(p.description),1)):(0,e.createCommentVNode)(``,!0)]),p.meta?((0,e.openBlock)(),(0,e.createElementBlock)(`span`,l,(0,e.toDisplayString)(p.meta),1)):(0,e.createCommentVNode)(``,!0)])],10,n)],2))),128))],16))}});exports.default=u;
|
|
2
|
+
//# sourceMappingURL=TSteps.vue_vue_type_script_setup_true_lang.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TSteps.vue_vue_type_script_setup_true_lang.cjs","names":[],"sources":["../../src/components/TSteps.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { getTreeIcon, treeIconDefaults } from '@treeui/icons';\nimport { computed, ref, useAttrs, watch } from 'vue';\nimport type { TSize } from '../types/contracts';\n\ndefineOptions({\n inheritAttrs: false,\n});\n\nexport interface TStepItem {\n label: string;\n value: string;\n description?: string;\n meta?: string;\n status?: TStepStatus;\n disabled?: boolean;\n}\n\nconst _treeStepStatuses = ['complete', 'current', 'upcoming', 'error'] as const;\nconst _treeStepOrientations = ['horizontal', 'vertical'] as const;\n\nexport type TStepStatus = (typeof _treeStepStatuses)[number];\nexport type TStepOrientation = (typeof _treeStepOrientations)[number];\n\nconst CheckIcon = getTreeIcon('check');\n\nconst props = withDefaults(\n defineProps<{\n modelValue?: string;\n defaultValue?: string;\n items?: TStepItem[];\n size?: TSize;\n orientation?: TStepOrientation;\n interactive?: boolean;\n }>(),\n {\n modelValue: undefined,\n defaultValue: '',\n items: () => [],\n size: 'md',\n orientation: 'horizontal',\n interactive: false,\n },\n);\n\nconst emit = defineEmits<{\n 'update:modelValue': [value: string];\n}>();\n\ndefineSlots<{\n item?: (props: {\n item: TStepItem;\n index: number;\n status: TStepStatus;\n current: boolean;\n }) => unknown;\n}>();\n\nconst attrs = useAttrs();\nconst internalValue = ref(props.defaultValue || props.items[0]?.value || '');\n\nconst activeValue = computed(() => props.modelValue ?? internalValue.value);\n\nconst currentIndex = computed(() => {\n const activeIndex = props.items.findIndex((item) => item.value === activeValue.value);\n return activeIndex >= 0 ? activeIndex : 0;\n});\n\nconst rootClasses = computed(() => [\n 't-steps',\n `t-steps--${props.size}`,\n `t-steps--${props.orientation}`,\n {\n 'is-interactive': props.interactive,\n },\n attrs.class,\n]);\n\nconst rootStyle = computed(() => attrs.style);\n\nconst rootAttrs = computed(() => {\n const { class: _class, style: _style, ...rest } = attrs;\n return rest;\n});\n\nconst resolveStatus = (item: TStepItem, index: number): TStepStatus => {\n if (item.status) {\n return item.status;\n }\n\n if (index < currentIndex.value) {\n return 'complete';\n }\n\n if (index === currentIndex.value) {\n return 'current';\n }\n\n return 'upcoming';\n};\n\nconst selectStep = (item: TStepItem) => {\n if (!props.interactive || item.disabled) {\n return;\n }\n\n if (props.modelValue === undefined) {\n internalValue.value = item.value;\n }\n\n emit('update:modelValue', item.value);\n};\n\nwatch(\n () => props.items,\n (items) => {\n const hasCurrentItem = items.some((item) => item.value === activeValue.value);\n\n if (!hasCurrentItem && items[0] && props.modelValue === undefined) {\n internalValue.value = items[0].value;\n }\n },\n { deep: true },\n);\n</script>\n\n<template>\n <ol\n v-bind=\"rootAttrs\"\n :class=\"rootClasses\"\n :style=\"rootStyle\"\n >\n <li\n v-for=\"(item, index) in items\"\n :key=\"item.value\"\n class=\"t-steps__item\"\n :class=\"`is-${resolveStatus(item, index)}`\"\n >\n <button\n type=\"button\"\n class=\"t-steps__button\"\n :class=\"{\n 'is-current': resolveStatus(item, index) === 'current',\n 'is-disabled': item.disabled,\n }\"\n :disabled=\"!interactive || item.disabled\"\n :aria-current=\"resolveStatus(item, index) === 'current' ? 'step' : undefined\"\n @click=\"selectStep(item)\"\n >\n <slot\n name=\"item\"\n :item=\"item\"\n :index=\"index\"\n :status=\"resolveStatus(item, index)\"\n :current=\"resolveStatus(item, index) === 'current'\"\n >\n <span\n class=\"t-steps__indicator\"\n aria-hidden=\"true\"\n >\n <CheckIcon\n v-if=\"resolveStatus(item, index) === 'complete'\"\n v-bind=\"treeIconDefaults\"\n />\n <span v-else-if=\"resolveStatus(item, index) === 'error'\">!</span>\n <span v-else>{{ index + 1 }}</span>\n </span>\n\n <span class=\"t-steps__copy\">\n <span class=\"t-steps__label\">{{ item.label }}</span>\n <span\n v-if=\"item.description\"\n class=\"t-steps__description\"\n >\n {{ item.description }}\n </span>\n </span>\n\n <span\n v-if=\"item.meta\"\n class=\"t-steps__meta\"\n >\n {{ item.meta }}\n </span>\n </slot>\n </button>\n </li>\n </ol>\n</template>\n"],"mappings":"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"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import { Fragment as e, computed as t, createBlock as n, createCommentVNode as r, createElementBlock as i, createElementVNode as a, defineComponent as o, mergeProps as s, normalizeClass as c, openBlock as l, ref as u, renderList as d, renderSlot as f, toDisplayString as p, unref as m, useAttrs as h, watch as g } from "vue";
|
|
2
|
+
import { getTreeIcon as _, treeIconDefaults as v } from "@treeui/icons";
|
|
3
|
+
//#region src/components/TSteps.vue?vue&type=script&setup=true&lang.ts
|
|
4
|
+
var y = [
|
|
5
|
+
"disabled",
|
|
6
|
+
"aria-current",
|
|
7
|
+
"onClick"
|
|
8
|
+
], b = {
|
|
9
|
+
class: "t-steps__indicator",
|
|
10
|
+
"aria-hidden": "true"
|
|
11
|
+
}, x = { key: 1 }, S = { key: 2 }, C = { class: "t-steps__copy" }, w = { class: "t-steps__label" }, T = {
|
|
12
|
+
key: 0,
|
|
13
|
+
class: "t-steps__description"
|
|
14
|
+
}, E = {
|
|
15
|
+
key: 0,
|
|
16
|
+
class: "t-steps__meta"
|
|
17
|
+
}, D = /*@__PURE__*/ o({
|
|
18
|
+
inheritAttrs: !1,
|
|
19
|
+
__name: "TSteps",
|
|
20
|
+
props: {
|
|
21
|
+
modelValue: { default: void 0 },
|
|
22
|
+
defaultValue: { default: "" },
|
|
23
|
+
items: { default: () => [] },
|
|
24
|
+
size: { default: "md" },
|
|
25
|
+
orientation: { default: "horizontal" },
|
|
26
|
+
interactive: {
|
|
27
|
+
type: Boolean,
|
|
28
|
+
default: !1
|
|
29
|
+
}
|
|
30
|
+
},
|
|
31
|
+
emits: ["update:modelValue"],
|
|
32
|
+
setup(o, { emit: D }) {
|
|
33
|
+
let O = _("check"), k = o, A = D, j = h(), M = u(k.defaultValue || k.items[0]?.value || ""), N = t(() => k.modelValue ?? M.value), P = t(() => {
|
|
34
|
+
let e = k.items.findIndex((e) => e.value === N.value);
|
|
35
|
+
return e >= 0 ? e : 0;
|
|
36
|
+
}), F = t(() => [
|
|
37
|
+
"t-steps",
|
|
38
|
+
`t-steps--${k.size}`,
|
|
39
|
+
`t-steps--${k.orientation}`,
|
|
40
|
+
{ "is-interactive": k.interactive },
|
|
41
|
+
j.class
|
|
42
|
+
]), I = t(() => j.style), L = t(() => {
|
|
43
|
+
let { class: e, style: t, ...n } = j;
|
|
44
|
+
return n;
|
|
45
|
+
}), R = (e, t) => e.status ? e.status : t < P.value ? "complete" : t === P.value ? "current" : "upcoming", z = (e) => {
|
|
46
|
+
!k.interactive || e.disabled || (k.modelValue === void 0 && (M.value = e.value), A("update:modelValue", e.value));
|
|
47
|
+
};
|
|
48
|
+
return g(() => k.items, (e) => {
|
|
49
|
+
!e.some((e) => e.value === N.value) && e[0] && k.modelValue === void 0 && (M.value = e[0].value);
|
|
50
|
+
}, { deep: !0 }), (t, u) => (l(), i("ol", s(L.value, {
|
|
51
|
+
class: F.value,
|
|
52
|
+
style: I.value
|
|
53
|
+
}), [(l(!0), i(e, null, d(o.items, (e, u) => (l(), i("li", {
|
|
54
|
+
key: e.value,
|
|
55
|
+
class: c(["t-steps__item", `is-${R(e, u)}`])
|
|
56
|
+
}, [a("button", {
|
|
57
|
+
type: "button",
|
|
58
|
+
class: c(["t-steps__button", {
|
|
59
|
+
"is-current": R(e, u) === "current",
|
|
60
|
+
"is-disabled": e.disabled
|
|
61
|
+
}]),
|
|
62
|
+
disabled: !o.interactive || e.disabled,
|
|
63
|
+
"aria-current": R(e, u) === "current" ? "step" : void 0,
|
|
64
|
+
onClick: (t) => z(e)
|
|
65
|
+
}, [f(t.$slots, "item", {
|
|
66
|
+
item: e,
|
|
67
|
+
index: u,
|
|
68
|
+
status: R(e, u),
|
|
69
|
+
current: R(e, u) === "current"
|
|
70
|
+
}, () => [
|
|
71
|
+
a("span", b, [R(e, u) === "complete" ? (l(), n(m(O), s({
|
|
72
|
+
key: 0,
|
|
73
|
+
ref_for: !0
|
|
74
|
+
}, m(v)), null, 16)) : R(e, u) === "error" ? (l(), i("span", x, "!")) : (l(), i("span", S, p(u + 1), 1))]),
|
|
75
|
+
a("span", C, [a("span", w, p(e.label), 1), e.description ? (l(), i("span", T, p(e.description), 1)) : r("", !0)]),
|
|
76
|
+
e.meta ? (l(), i("span", E, p(e.meta), 1)) : r("", !0)
|
|
77
|
+
])], 10, y)], 2))), 128))], 16));
|
|
78
|
+
}
|
|
79
|
+
});
|
|
80
|
+
//#endregion
|
|
81
|
+
export { D as default };
|
|
82
|
+
|
|
83
|
+
//# sourceMappingURL=TSteps.vue_vue_type_script_setup_true_lang.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TSteps.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../src/components/TSteps.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { getTreeIcon, treeIconDefaults } from '@treeui/icons';\nimport { computed, ref, useAttrs, watch } from 'vue';\nimport type { TSize } from '../types/contracts';\n\ndefineOptions({\n inheritAttrs: false,\n});\n\nexport interface TStepItem {\n label: string;\n value: string;\n description?: string;\n meta?: string;\n status?: TStepStatus;\n disabled?: boolean;\n}\n\nconst _treeStepStatuses = ['complete', 'current', 'upcoming', 'error'] as const;\nconst _treeStepOrientations = ['horizontal', 'vertical'] as const;\n\nexport type TStepStatus = (typeof _treeStepStatuses)[number];\nexport type TStepOrientation = (typeof _treeStepOrientations)[number];\n\nconst CheckIcon = getTreeIcon('check');\n\nconst props = withDefaults(\n defineProps<{\n modelValue?: string;\n defaultValue?: string;\n items?: TStepItem[];\n size?: TSize;\n orientation?: TStepOrientation;\n interactive?: boolean;\n }>(),\n {\n modelValue: undefined,\n defaultValue: '',\n items: () => [],\n size: 'md',\n orientation: 'horizontal',\n interactive: false,\n },\n);\n\nconst emit = defineEmits<{\n 'update:modelValue': [value: string];\n}>();\n\ndefineSlots<{\n item?: (props: {\n item: TStepItem;\n index: number;\n status: TStepStatus;\n current: boolean;\n }) => unknown;\n}>();\n\nconst attrs = useAttrs();\nconst internalValue = ref(props.defaultValue || props.items[0]?.value || '');\n\nconst activeValue = computed(() => props.modelValue ?? internalValue.value);\n\nconst currentIndex = computed(() => {\n const activeIndex = props.items.findIndex((item) => item.value === activeValue.value);\n return activeIndex >= 0 ? activeIndex : 0;\n});\n\nconst rootClasses = computed(() => [\n 't-steps',\n `t-steps--${props.size}`,\n `t-steps--${props.orientation}`,\n {\n 'is-interactive': props.interactive,\n },\n attrs.class,\n]);\n\nconst rootStyle = computed(() => attrs.style);\n\nconst rootAttrs = computed(() => {\n const { class: _class, style: _style, ...rest } = attrs;\n return rest;\n});\n\nconst resolveStatus = (item: TStepItem, index: number): TStepStatus => {\n if (item.status) {\n return item.status;\n }\n\n if (index < currentIndex.value) {\n return 'complete';\n }\n\n if (index === currentIndex.value) {\n return 'current';\n }\n\n return 'upcoming';\n};\n\nconst selectStep = (item: TStepItem) => {\n if (!props.interactive || item.disabled) {\n return;\n }\n\n if (props.modelValue === undefined) {\n internalValue.value = item.value;\n }\n\n emit('update:modelValue', item.value);\n};\n\nwatch(\n () => props.items,\n (items) => {\n const hasCurrentItem = items.some((item) => item.value === activeValue.value);\n\n if (!hasCurrentItem && items[0] && props.modelValue === undefined) {\n internalValue.value = items[0].value;\n }\n },\n { deep: true },\n);\n</script>\n\n<template>\n <ol\n v-bind=\"rootAttrs\"\n :class=\"rootClasses\"\n :style=\"rootStyle\"\n >\n <li\n v-for=\"(item, index) in items\"\n :key=\"item.value\"\n class=\"t-steps__item\"\n :class=\"`is-${resolveStatus(item, index)}`\"\n >\n <button\n type=\"button\"\n class=\"t-steps__button\"\n :class=\"{\n 'is-current': resolveStatus(item, index) === 'current',\n 'is-disabled': item.disabled,\n }\"\n :disabled=\"!interactive || item.disabled\"\n :aria-current=\"resolveStatus(item, index) === 'current' ? 'step' : undefined\"\n @click=\"selectStep(item)\"\n >\n <slot\n name=\"item\"\n :item=\"item\"\n :index=\"index\"\n :status=\"resolveStatus(item, index)\"\n :current=\"resolveStatus(item, index) === 'current'\"\n >\n <span\n class=\"t-steps__indicator\"\n aria-hidden=\"true\"\n >\n <CheckIcon\n v-if=\"resolveStatus(item, index) === 'complete'\"\n v-bind=\"treeIconDefaults\"\n />\n <span v-else-if=\"resolveStatus(item, index) === 'error'\">!</span>\n <span v-else>{{ index + 1 }}</span>\n </span>\n\n <span class=\"t-steps__copy\">\n <span class=\"t-steps__label\">{{ item.label }}</span>\n <span\n v-if=\"item.description\"\n class=\"t-steps__description\"\n >\n {{ item.description }}\n </span>\n </span>\n\n <span\n v-if=\"item.meta\"\n class=\"t-steps__meta\"\n >\n {{ item.meta }}\n </span>\n </slot>\n </button>\n </li>\n </ol>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAwBA,IAAM,IAAY,EAAY,OAAO,GAE/B,IAAQ,GAmBR,IAAO,GAaP,IAAQ,EAAS,GACjB,IAAgB,EAAI,EAAM,gBAAgB,EAAM,MAAM,EAAE,EAAE,SAAS,EAAE,GAErE,IAAc,QAAe,EAAM,cAAc,EAAc,KAAK,GAEpE,IAAe,QAAe;GAClC,IAAM,IAAc,EAAM,MAAM,WAAW,MAAS,EAAK,UAAU,EAAY,KAAK;GACpF,OAAO,KAAe,IAAI,IAAc;EAC1C,CAAC,GAEK,IAAc,QAAe;GACjC;GACA,YAAY,EAAM;GAClB,YAAY,EAAM;GAClB,EACE,kBAAkB,EAAM,YAC1B;GACA,EAAM;EACR,CAAC,GAEK,IAAY,QAAe,EAAM,KAAK,GAEtC,IAAY,QAAe;GAC/B,IAAM,EAAE,OAAO,GAAQ,OAAO,GAAQ,GAAG,MAAS;GAClD,OAAO;EACT,CAAC,GAEK,KAAiB,GAAiB,MAClC,EAAK,SACA,EAAK,SAGV,IAAQ,EAAa,QAChB,aAGL,MAAU,EAAa,QAClB,YAGF,YAGH,KAAc,MAAoB;GAClC,CAAC,EAAM,eAAe,EAAK,aAI3B,EAAM,eAAe,KAAA,MACvB,EAAc,QAAQ,EAAK,QAG7B,EAAK,qBAAqB,EAAK,KAAK;EACtC;SAEA,QACQ,EAAM,QACX,MAAU;GAGT,AAAI,CAFmB,EAAM,MAAM,MAAS,EAAK,UAAU,EAAY,KAElE,KAAkB,EAAM,MAAM,EAAM,eAAe,KAAA,MACtD,EAAc,QAAQ,EAAM,EAAE,CAAC;EAEnC,GACA,EAAE,MAAM,GAAK,CACf,mBAIE,EA4DK,MA5DL,EACU,EA2DL,OA3Dc;GAChB,OAAO,EAAA;GACP,OAAO,EAAA;eAER,EAsDK,GAAA,MAAA,EArDqB,EAAA,QAAhB,GAAM,YADhB,EAsDK,MAAA;GApDF,KAAK,EAAK;GACX,OAAK,EAAA,CAAC,iBAAe,MACP,EAAc,GAAM,CAAK,GAAA,CAAA;MAEvC,EA+CS,UAAA;GA9CP,MAAK;GACL,OAAK,EAAA,CAAC,mBAAiB;kBACW,EAAc,GAAM,CAAK,MAAA;mBAA0C,EAAK;;GAIzG,UAAQ,CAAG,EAAA,eAAe,EAAK;GAC/B,gBAAc,EAAc,GAAM,CAAK,MAAA,YAAA,SAA2B,KAAA;GAClE,UAAK,MAAE,EAAW,CAAI;MAEvB,EAmCO,EAAA,QAAA,QAAA;GAjCE;GACC;GACP,QAAQ,EAAc,GAAM,CAAK;GACjC,SAAS,EAAc,GAAM,CAAK,MAAA;WA8B9B;GA5BL,EAUO,QAVP,GAUO,CALG,EAAc,GAAM,CAAK,MAAA,cAAA,EAAA,GADjC,EAGE,EAAA,CAAA,GAHF,EAGE;;;MADQ,EAAA,CAAA,CAAgB,GAAA,MAAA,EAAA,KAET,EAAc,GAAM,CAAK,MAAA,WAAA,EAAA,GAA1C,EAAiE,QAAA,GAAR,GAAC,MAAA,EAAA,GAC1D,EAAmC,QAAA,GAAA,EAAnB,IAAK,CAAA,GAAA,CAAA,EAAA,CAAA;GAGvB,EAQO,QARP,GAQO,CAPL,EAAoD,QAApD,GAAoD,EAApB,EAAK,KAAK,GAAA,CAAA,GAElC,EAAK,eAAA,EAAA,GADb,EAKO,QALP,GAKO,EADF,EAAK,WAAW,GAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,CAAA;GAKf,EAAK,QAAA,EAAA,GADb,EAKO,QALP,GAKO,EADF,EAAK,IAAI,GAAA,CAAA,KAAA,EAAA,IAAA,EAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TSwitch.cjs","names":[],"sources":["../../src/components/TSwitch.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, useAttrs } from 'vue';\nimport type { TSize } from '../types/contracts';\n\ndefineOptions({\n inheritAttrs: false,\n});\n\nconst props = withDefaults(\n defineProps<{\n modelValue?: boolean;\n size?: TSize;\n disabled?: boolean;\n invalid?: boolean;\n }>(),\n {\n modelValue: false,\n size: 'md',\n disabled: false,\n invalid: false,\n },\n);\n\nconst emit = defineEmits<{\n 'update:modelValue': [value: boolean];\n}>();\n\nconst attrs = useAttrs();\n\nconst rootClasses = computed(() => [\n 't-switch',\n `t-switch--${props.size}`,\n {\n 'is-checked': props.modelValue,\n 'is-disabled': props.disabled,\n 'is-invalid': props.invalid,\n },\n attrs.class,\n]);\n\nconst rootStyle = computed(() => attrs.style);\n\nconst inputAttrs = computed(() => {\n const { class: _class, style: _style, ...rest } = attrs;\n return rest;\n});\n\nconst onChange = () => {\n emit('update:modelValue', !props.modelValue);\n};\n</script>\n\n<template>\n <label\n :class=\"rootClasses\"\n :style=\"rootStyle\"\n >\n <input\n v-bind=\"inputAttrs\"\n type=\"checkbox\"\n role=\"switch\"\n class=\"t-switch__input\"\n :checked=\"modelValue\"\n :disabled=\"disabled\"\n :aria-checked=\"modelValue\"\n :aria-invalid=\"invalid || undefined\"\n @change=\"onChange\"\n >\n <span\n class=\"t-switch__track\"\n aria-hidden=\"true\"\n >\n <span class=\"t-switch__thumb\" />\n </span>\n <span\n v-if=\"$slots.default\"\n class=\"t-switch__label\"\n >\n <slot />\n </span>\n </label>\n</template>\n"],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TSwitch.js","names":[],"sources":["../../src/components/TSwitch.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, useAttrs } from 'vue';\nimport type { TSize } from '../types/contracts';\n\ndefineOptions({\n inheritAttrs: false,\n});\n\nconst props = withDefaults(\n defineProps<{\n modelValue?: boolean;\n size?: TSize;\n disabled?: boolean;\n invalid?: boolean;\n }>(),\n {\n modelValue: false,\n size: 'md',\n disabled: false,\n invalid: false,\n },\n);\n\nconst emit = defineEmits<{\n 'update:modelValue': [value: boolean];\n}>();\n\nconst attrs = useAttrs();\n\nconst rootClasses = computed(() => [\n 't-switch',\n `t-switch--${props.size}`,\n {\n 'is-checked': props.modelValue,\n 'is-disabled': props.disabled,\n 'is-invalid': props.invalid,\n },\n attrs.class,\n]);\n\nconst rootStyle = computed(() => attrs.style);\n\nconst inputAttrs = computed(() => {\n const { class: _class, style: _style, ...rest } = attrs;\n return rest;\n});\n\nconst onChange = () => {\n emit('update:modelValue', !props.modelValue);\n};\n</script>\n\n<template>\n <label\n :class=\"rootClasses\"\n :style=\"rootStyle\"\n >\n <input\n v-bind=\"inputAttrs\"\n type=\"checkbox\"\n role=\"switch\"\n class=\"t-switch__input\"\n :checked=\"modelValue\"\n :disabled=\"disabled\"\n :aria-checked=\"modelValue\"\n :aria-invalid=\"invalid || undefined\"\n @change=\"onChange\"\n >\n <span\n class=\"t-switch__track\"\n aria-hidden=\"true\"\n >\n <span class=\"t-switch__thumb\" />\n </span>\n <span\n v-if=\"$slots.default\"\n class=\"t-switch__label\"\n >\n <slot />\n </span>\n </label>\n</template>\n"],"mappings":""}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
let e=require("vue");var t=[`checked`,`disabled`,`aria-checked`,`aria-invalid`],n={key:0,class:`t-switch__label`},r=(0,e.defineComponent)({inheritAttrs:!1,__name:`TSwitch`,props:{modelValue:{type:Boolean,default:!1},size:{default:`md`},disabled:{type:Boolean,default:!1},invalid:{type:Boolean,default:!1}},emits:[`update:modelValue`],setup(r,{emit:i}){let a=r,o=i,s=(0,e.useAttrs)(),c=(0,e.computed)(()=>[`t-switch`,`t-switch--${a.size}`,{"is-checked":a.modelValue,"is-disabled":a.disabled,"is-invalid":a.invalid},s.class]),l=(0,e.computed)(()=>s.style),u=(0,e.computed)(()=>{let{class:e,style:t,...n}=s;return n}),d=()=>{o(`update:modelValue`,!a.modelValue)};return(i,a)=>((0,e.openBlock)(),(0,e.createElementBlock)(`label`,{class:(0,e.normalizeClass)(c.value),style:(0,e.normalizeStyle)(l.value)},[(0,e.createElementVNode)(`input`,(0,e.mergeProps)(u.value,{type:`checkbox`,role:`switch`,class:`t-switch__input`,checked:r.modelValue,disabled:r.disabled,"aria-checked":r.modelValue,"aria-invalid":r.invalid||void 0,onChange:d}),null,16,t),a[0]||=(0,e.createElementVNode)(`span`,{class:`t-switch__track`,"aria-hidden":`true`},[(0,e.createElementVNode)(`span`,{class:`t-switch__thumb`})],-1),i.$slots.default?((0,e.openBlock)(),(0,e.createElementBlock)(`span`,n,[(0,e.renderSlot)(i.$slots,`default`)])):(0,e.createCommentVNode)(``,!0)],6))}});exports.default=r;
|
|
2
|
+
//# sourceMappingURL=TSwitch.vue_vue_type_script_setup_true_lang.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TSwitch.vue_vue_type_script_setup_true_lang.cjs","names":["$slots"],"sources":["../../src/components/TSwitch.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, useAttrs } from 'vue';\nimport type { TSize } from '../types/contracts';\n\ndefineOptions({\n inheritAttrs: false,\n});\n\nconst props = withDefaults(\n defineProps<{\n modelValue?: boolean;\n size?: TSize;\n disabled?: boolean;\n invalid?: boolean;\n }>(),\n {\n modelValue: false,\n size: 'md',\n disabled: false,\n invalid: false,\n },\n);\n\nconst emit = defineEmits<{\n 'update:modelValue': [value: boolean];\n}>();\n\nconst attrs = useAttrs();\n\nconst rootClasses = computed(() => [\n 't-switch',\n `t-switch--${props.size}`,\n {\n 'is-checked': props.modelValue,\n 'is-disabled': props.disabled,\n 'is-invalid': props.invalid,\n },\n attrs.class,\n]);\n\nconst rootStyle = computed(() => attrs.style);\n\nconst inputAttrs = computed(() => {\n const { class: _class, style: _style, ...rest } = attrs;\n return rest;\n});\n\nconst onChange = () => {\n emit('update:modelValue', !props.modelValue);\n};\n</script>\n\n<template>\n <label\n :class=\"rootClasses\"\n :style=\"rootStyle\"\n >\n <input\n v-bind=\"inputAttrs\"\n type=\"checkbox\"\n role=\"switch\"\n class=\"t-switch__input\"\n :checked=\"modelValue\"\n :disabled=\"disabled\"\n :aria-checked=\"modelValue\"\n :aria-invalid=\"invalid || undefined\"\n @change=\"onChange\"\n >\n <span\n class=\"t-switch__track\"\n aria-hidden=\"true\"\n >\n <span class=\"t-switch__thumb\" />\n </span>\n <span\n v-if=\"$slots.default\"\n class=\"t-switch__label\"\n >\n <slot />\n </span>\n </label>\n</template>\n"],"mappings":"gWAQA,IAAM,EAAQ,EAeR,EAAO,EAIP,GAAA,EAAA,EAAA,SAAA,CAAiB,EAEjB,GAAA,EAAA,EAAA,SAAA,KAA6B,CACjC,WACA,aAAa,EAAM,OACnB,CACE,aAAc,EAAM,WACpB,cAAe,EAAM,SACrB,aAAc,EAAM,OACtB,EACA,EAAM,KACR,CAAC,EAEK,GAAA,EAAA,EAAA,SAAA,KAA2B,EAAM,KAAK,EAEtC,GAAA,EAAA,EAAA,SAAA,KAA4B,CAChC,GAAM,CAAE,MAAO,EAAQ,MAAO,EAAQ,GAAG,GAAS,EAClD,OAAO,CACT,CAAC,EAEK,MAAiB,CACrB,EAAK,oBAAqB,CAAC,EAAM,UAAU,CAC7C,2DA+BU,QAAA,CA1BL,OAAA,EAAA,EAAA,eAAA,CAAO,EAAA,KAAW,EAClB,OAAA,EAAA,EAAA,eAAA,CAAO,EAAA,KAAS,6BAYhB,SAAA,EAAA,EAAA,WAAA,CATS,EAST,MATmB,CAClB,KAAK,WACL,KAAK,SACL,MAAM,kBACL,QAAS,EAAA,WACT,SAAU,EAAA,SACV,eAAc,EAAA,WACd,eAAc,EAAA,SAAW,IAAA,GACjB,wDAOJ,OAAA,CAJL,MAAM,kBACN,cAAY,kCAEoB,OAAA,CAA1B,MAAM,iBAAiB,CAAA,CAAA,EAAA,EAAA,EAGvBA,EAAAA,OAAO,UAAA,EAAA,EAAA,UAAA,CAAA,GAAA,EAAA,EAAA,mBAAA,CAIR,OALP,EAKO,EAAA,EAAA,EAAA,WAAA,CADG,EAAA,OAAA,SAAA,CAAA,CAAA,IAAA,EAAA,EAAA,mBAAA,CAAA,GAAA,EAAA"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import { computed as e, createCommentVNode as t, createElementBlock as n, createElementVNode as r, defineComponent as i, mergeProps as a, normalizeClass as o, normalizeStyle as s, openBlock as c, renderSlot as l, useAttrs as u } from "vue";
|
|
2
|
+
//#region src/components/TSwitch.vue?vue&type=script&setup=true&lang.ts
|
|
3
|
+
var d = [
|
|
4
|
+
"checked",
|
|
5
|
+
"disabled",
|
|
6
|
+
"aria-checked",
|
|
7
|
+
"aria-invalid"
|
|
8
|
+
], f = {
|
|
9
|
+
key: 0,
|
|
10
|
+
class: "t-switch__label"
|
|
11
|
+
}, p = /*@__PURE__*/ i({
|
|
12
|
+
inheritAttrs: !1,
|
|
13
|
+
__name: "TSwitch",
|
|
14
|
+
props: {
|
|
15
|
+
modelValue: {
|
|
16
|
+
type: Boolean,
|
|
17
|
+
default: !1
|
|
18
|
+
},
|
|
19
|
+
size: { default: "md" },
|
|
20
|
+
disabled: {
|
|
21
|
+
type: Boolean,
|
|
22
|
+
default: !1
|
|
23
|
+
},
|
|
24
|
+
invalid: {
|
|
25
|
+
type: Boolean,
|
|
26
|
+
default: !1
|
|
27
|
+
}
|
|
28
|
+
},
|
|
29
|
+
emits: ["update:modelValue"],
|
|
30
|
+
setup(i, { emit: p }) {
|
|
31
|
+
let m = i, h = p, g = u(), _ = e(() => [
|
|
32
|
+
"t-switch",
|
|
33
|
+
`t-switch--${m.size}`,
|
|
34
|
+
{
|
|
35
|
+
"is-checked": m.modelValue,
|
|
36
|
+
"is-disabled": m.disabled,
|
|
37
|
+
"is-invalid": m.invalid
|
|
38
|
+
},
|
|
39
|
+
g.class
|
|
40
|
+
]), v = e(() => g.style), y = e(() => {
|
|
41
|
+
let { class: e, style: t, ...n } = g;
|
|
42
|
+
return n;
|
|
43
|
+
}), b = () => {
|
|
44
|
+
h("update:modelValue", !m.modelValue);
|
|
45
|
+
};
|
|
46
|
+
return (e, u) => (c(), n("label", {
|
|
47
|
+
class: o(_.value),
|
|
48
|
+
style: s(v.value)
|
|
49
|
+
}, [
|
|
50
|
+
r("input", a(y.value, {
|
|
51
|
+
type: "checkbox",
|
|
52
|
+
role: "switch",
|
|
53
|
+
class: "t-switch__input",
|
|
54
|
+
checked: i.modelValue,
|
|
55
|
+
disabled: i.disabled,
|
|
56
|
+
"aria-checked": i.modelValue,
|
|
57
|
+
"aria-invalid": i.invalid || void 0,
|
|
58
|
+
onChange: b
|
|
59
|
+
}), null, 16, d),
|
|
60
|
+
u[0] ||= r("span", {
|
|
61
|
+
class: "t-switch__track",
|
|
62
|
+
"aria-hidden": "true"
|
|
63
|
+
}, [r("span", { class: "t-switch__thumb" })], -1),
|
|
64
|
+
e.$slots.default ? (c(), n("span", f, [l(e.$slots, "default")])) : t("", !0)
|
|
65
|
+
], 6));
|
|
66
|
+
}
|
|
67
|
+
});
|
|
68
|
+
//#endregion
|
|
69
|
+
export { p as default };
|
|
70
|
+
|
|
71
|
+
//# sourceMappingURL=TSwitch.vue_vue_type_script_setup_true_lang.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TSwitch.vue_vue_type_script_setup_true_lang.js","names":["$slots"],"sources":["../../src/components/TSwitch.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, useAttrs } from 'vue';\nimport type { TSize } from '../types/contracts';\n\ndefineOptions({\n inheritAttrs: false,\n});\n\nconst props = withDefaults(\n defineProps<{\n modelValue?: boolean;\n size?: TSize;\n disabled?: boolean;\n invalid?: boolean;\n }>(),\n {\n modelValue: false,\n size: 'md',\n disabled: false,\n invalid: false,\n },\n);\n\nconst emit = defineEmits<{\n 'update:modelValue': [value: boolean];\n}>();\n\nconst attrs = useAttrs();\n\nconst rootClasses = computed(() => [\n 't-switch',\n `t-switch--${props.size}`,\n {\n 'is-checked': props.modelValue,\n 'is-disabled': props.disabled,\n 'is-invalid': props.invalid,\n },\n attrs.class,\n]);\n\nconst rootStyle = computed(() => attrs.style);\n\nconst inputAttrs = computed(() => {\n const { class: _class, style: _style, ...rest } = attrs;\n return rest;\n});\n\nconst onChange = () => {\n emit('update:modelValue', !props.modelValue);\n};\n</script>\n\n<template>\n <label\n :class=\"rootClasses\"\n :style=\"rootStyle\"\n >\n <input\n v-bind=\"inputAttrs\"\n type=\"checkbox\"\n role=\"switch\"\n class=\"t-switch__input\"\n :checked=\"modelValue\"\n :disabled=\"disabled\"\n :aria-checked=\"modelValue\"\n :aria-invalid=\"invalid || undefined\"\n @change=\"onChange\"\n >\n <span\n class=\"t-switch__track\"\n aria-hidden=\"true\"\n >\n <span class=\"t-switch__thumb\" />\n </span>\n <span\n v-if=\"$slots.default\"\n class=\"t-switch__label\"\n >\n <slot />\n </span>\n </label>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAQA,IAAM,IAAQ,GAeR,IAAO,GAIP,IAAQ,EAAS,GAEjB,IAAc,QAAe;GACjC;GACA,aAAa,EAAM;GACnB;IACE,cAAc,EAAM;IACpB,eAAe,EAAM;IACrB,cAAc,EAAM;GACtB;GACA,EAAM;EACR,CAAC,GAEK,IAAY,QAAe,EAAM,KAAK,GAEtC,IAAa,QAAe;GAChC,IAAM,EAAE,OAAO,GAAQ,OAAO,GAAQ,GAAG,MAAS;GAClD,OAAO;EACT,CAAC,GAEK,UAAiB;GACrB,EAAK,qBAAqB,CAAC,EAAM,UAAU;EAC7C;yBAIE,EA2BQ,SAAA;GA1BL,OAAK,EAAE,EAAA,KAAW;GAClB,OAAK,EAAE,EAAA,KAAS;;GAEjB,EAUC,SAVD,EACU,EAST,OATmB;IAClB,MAAK;IACL,MAAK;IACL,OAAM;IACL,SAAS,EAAA;IACT,UAAU,EAAA;IACV,gBAAc,EAAA;IACd,gBAAc,EAAA,WAAW,KAAA;IACjB;;YAEX,EAKO,QAAA;IAJL,OAAM;IACN,eAAY;OAEZ,EAAgC,QAAA,EAA1B,OAAM,kBAAiB,CAAA,CAAA,GAAA,EAAA;GAGvBA,EAAAA,OAAO,WAAA,EAAA,GADf,EAKO,QALP,GAKO,CADL,EAAQ,EAAA,QAAA,SAAA,CAAA,CAAA,KAAA,EAAA,IAAA,EAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TTab.cjs","names":[],"sources":["../../src/components/TTab.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, inject, onBeforeUnmount, onMounted, watch } from 'vue';\nimport { TABS_INJECTION_KEY } from './tabs-context';\n\nconst props = withDefaults(\n defineProps<{\n value: string;\n disabled?: boolean;\n }>(),\n {\n disabled: false,\n },\n);\n\nconst ctx = inject(TABS_INJECTION_KEY);\nif (!ctx) {\n throw new Error('TTab must be used inside TTabs');\n}\n\nonMounted(() => {\n ctx.registerTab(props.value);\n ctx.setTabDisabled(props.value, props.disabled);\n});\n\nwatch(\n () => props.disabled,\n (val) => ctx.setTabDisabled(props.value, val),\n);\n\nonBeforeUnmount(() => {\n ctx.unregisterTab(props.value);\n});\n\nconst isActive = computed(() => ctx.activeValue.value === props.value);\nconst isDisabled = computed(() => ctx.isTabDisabled(props.value));\nconst tabId = computed(() => `${ctx.baseId}-tab-${props.value}`);\nconst panelId = computed(() => `${ctx.baseId}-panel-${props.value}`);\n\nconst onClick = () => {\n if (isDisabled.value) return;\n ctx.setActiveValue(props.value);\n};\n\nconst classes = computed(() => [\n 't-tabs__tab',\n `t-tabs__tab--${ctx.size.value}`,\n {\n 'is-active': isActive.value,\n 'is-disabled': isDisabled.value,\n },\n]);\n</script>\n\n<template>\n <button\n :id=\"tabId\"\n role=\"tab\"\n type=\"button\"\n :class=\"classes\"\n :aria-selected=\"isActive\"\n :aria-controls=\"panelId\"\n :tabindex=\"isActive ? 0 : -1\"\n :disabled=\"isDisabled || undefined\"\n :data-tab-value=\"value\"\n @click=\"onClick\"\n >\n <slot />\n </button>\n</template>\n"],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TTab.js","names":[],"sources":["../../src/components/TTab.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, inject, onBeforeUnmount, onMounted, watch } from 'vue';\nimport { TABS_INJECTION_KEY } from './tabs-context';\n\nconst props = withDefaults(\n defineProps<{\n value: string;\n disabled?: boolean;\n }>(),\n {\n disabled: false,\n },\n);\n\nconst ctx = inject(TABS_INJECTION_KEY);\nif (!ctx) {\n throw new Error('TTab must be used inside TTabs');\n}\n\nonMounted(() => {\n ctx.registerTab(props.value);\n ctx.setTabDisabled(props.value, props.disabled);\n});\n\nwatch(\n () => props.disabled,\n (val) => ctx.setTabDisabled(props.value, val),\n);\n\nonBeforeUnmount(() => {\n ctx.unregisterTab(props.value);\n});\n\nconst isActive = computed(() => ctx.activeValue.value === props.value);\nconst isDisabled = computed(() => ctx.isTabDisabled(props.value));\nconst tabId = computed(() => `${ctx.baseId}-tab-${props.value}`);\nconst panelId = computed(() => `${ctx.baseId}-panel-${props.value}`);\n\nconst onClick = () => {\n if (isDisabled.value) return;\n ctx.setActiveValue(props.value);\n};\n\nconst classes = computed(() => [\n 't-tabs__tab',\n `t-tabs__tab--${ctx.size.value}`,\n {\n 'is-active': isActive.value,\n 'is-disabled': isDisabled.value,\n },\n]);\n</script>\n\n<template>\n <button\n :id=\"tabId\"\n role=\"tab\"\n type=\"button\"\n :class=\"classes\"\n :aria-selected=\"isActive\"\n :aria-controls=\"panelId\"\n :tabindex=\"isActive ? 0 : -1\"\n :disabled=\"isDisabled || undefined\"\n :data-tab-value=\"value\"\n @click=\"onClick\"\n >\n <slot />\n </button>\n</template>\n"],"mappings":""}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
const e=require("./tabs-context.cjs");let t=require("vue");var n=[`id`,`aria-selected`,`aria-controls`,`tabindex`,`disabled`,`data-tab-value`],r=(0,t.defineComponent)({__name:`TTab`,props:{value:{},disabled:{type:Boolean,default:!1}},setup(r){let i=r,a=(0,t.inject)(e.TABS_INJECTION_KEY);if(!a)throw Error(`TTab must be used inside TTabs`);(0,t.onMounted)(()=>{a.registerTab(i.value),a.setTabDisabled(i.value,i.disabled)}),(0,t.watch)(()=>i.disabled,e=>a.setTabDisabled(i.value,e)),(0,t.onBeforeUnmount)(()=>{a.unregisterTab(i.value)});let o=(0,t.computed)(()=>a.activeValue.value===i.value),s=(0,t.computed)(()=>a.isTabDisabled(i.value)),c=(0,t.computed)(()=>`${a.baseId}-tab-${i.value}`),l=(0,t.computed)(()=>`${a.baseId}-panel-${i.value}`),u=()=>{s.value||a.setActiveValue(i.value)},d=(0,t.computed)(()=>[`t-tabs__tab`,`t-tabs__tab--${a.size.value}`,{"is-active":o.value,"is-disabled":s.value}]);return(e,i)=>((0,t.openBlock)(),(0,t.createElementBlock)(`button`,{id:c.value,role:`tab`,type:`button`,class:(0,t.normalizeClass)(d.value),"aria-selected":o.value,"aria-controls":l.value,tabindex:o.value?0:-1,disabled:s.value||void 0,"data-tab-value":r.value,onClick:u},[(0,t.renderSlot)(e.$slots,`default`)],10,n))}});exports.default=r;
|
|
2
|
+
//# sourceMappingURL=TTab.vue_vue_type_script_setup_true_lang.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TTab.vue_vue_type_script_setup_true_lang.cjs","names":[],"sources":["../../src/components/TTab.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, inject, onBeforeUnmount, onMounted, watch } from 'vue';\nimport { TABS_INJECTION_KEY } from './tabs-context';\n\nconst props = withDefaults(\n defineProps<{\n value: string;\n disabled?: boolean;\n }>(),\n {\n disabled: false,\n },\n);\n\nconst ctx = inject(TABS_INJECTION_KEY);\nif (!ctx) {\n throw new Error('TTab must be used inside TTabs');\n}\n\nonMounted(() => {\n ctx.registerTab(props.value);\n ctx.setTabDisabled(props.value, props.disabled);\n});\n\nwatch(\n () => props.disabled,\n (val) => ctx.setTabDisabled(props.value, val),\n);\n\nonBeforeUnmount(() => {\n ctx.unregisterTab(props.value);\n});\n\nconst isActive = computed(() => ctx.activeValue.value === props.value);\nconst isDisabled = computed(() => ctx.isTabDisabled(props.value));\nconst tabId = computed(() => `${ctx.baseId}-tab-${props.value}`);\nconst panelId = computed(() => `${ctx.baseId}-panel-${props.value}`);\n\nconst onClick = () => {\n if (isDisabled.value) return;\n ctx.setActiveValue(props.value);\n};\n\nconst classes = computed(() => [\n 't-tabs__tab',\n `t-tabs__tab--${ctx.size.value}`,\n {\n 'is-active': isActive.value,\n 'is-disabled': isDisabled.value,\n },\n]);\n</script>\n\n<template>\n <button\n :id=\"tabId\"\n role=\"tab\"\n type=\"button\"\n :class=\"classes\"\n :aria-selected=\"isActive\"\n :aria-controls=\"panelId\"\n :tabindex=\"isActive ? 0 : -1\"\n :disabled=\"isDisabled || undefined\"\n :data-tab-value=\"value\"\n @click=\"onClick\"\n >\n <slot />\n </button>\n</template>\n"],"mappings":"mPAIA,IAAM,EAAQ,EAUR,GAAA,EAAA,EAAA,OAAA,CAAa,EAAA,kBAAkB,EACrC,GAAI,CAAC,EACH,MAAU,MAAM,gCAAgC,GAGlD,EAAA,EAAA,UAAA,KAAgB,CACd,EAAI,YAAY,EAAM,KAAK,EAC3B,EAAI,eAAe,EAAM,MAAO,EAAM,QAAQ,CAChD,CAAC,GAED,EAAA,EAAA,MAAA,KACQ,EAAM,SACX,GAAQ,EAAI,eAAe,EAAM,MAAO,CAAG,CAC9C,GAEA,EAAA,EAAA,gBAAA,KAAsB,CACpB,EAAI,cAAc,EAAM,KAAK,CAC/B,CAAC,EAED,IAAM,GAAA,EAAA,EAAA,SAAA,KAA0B,EAAI,YAAY,QAAU,EAAM,KAAK,EAC/D,GAAA,EAAA,EAAA,SAAA,KAA4B,EAAI,cAAc,EAAM,KAAK,CAAC,EAC1D,GAAA,EAAA,EAAA,SAAA,KAAuB,GAAG,EAAI,OAAO,OAAO,EAAM,OAAO,EACzD,GAAA,EAAA,EAAA,SAAA,KAAyB,GAAG,EAAI,OAAO,SAAS,EAAM,OAAO,EAE7D,MAAgB,CAChB,EAAW,OACf,EAAI,eAAe,EAAM,KAAK,CAChC,EAEM,GAAA,EAAA,EAAA,SAAA,KAAyB,CAC7B,cACA,gBAAgB,EAAI,KAAK,QACzB,CACE,YAAa,EAAS,MACtB,cAAe,EAAW,KAC5B,CACF,CAAC,2DAiBU,SAAA,CAZN,GAAI,EAAA,MACL,KAAK,MACL,KAAK,SACJ,OAAA,EAAA,EAAA,eAAA,CAAO,EAAA,KAAO,EACd,gBAAe,EAAA,MACf,gBAAe,EAAA,MACf,SAAU,EAAA,MAAQ,EAAA,GAClB,SAAU,EAAA,OAAc,IAAA,GACxB,iBAAgB,EAAA,MACT,6BAEA,EAAA,OAAA,SAAA,CAAA,EAAA,GAAA,CAAA"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { TABS_INJECTION_KEY as e } from "./tabs-context.js";
|
|
2
|
+
import { computed as t, createElementBlock as n, defineComponent as r, inject as i, normalizeClass as a, onBeforeUnmount as o, onMounted as s, openBlock as c, renderSlot as l, watch as u } from "vue";
|
|
3
|
+
//#region src/components/TTab.vue?vue&type=script&setup=true&lang.ts
|
|
4
|
+
var d = [
|
|
5
|
+
"id",
|
|
6
|
+
"aria-selected",
|
|
7
|
+
"aria-controls",
|
|
8
|
+
"tabindex",
|
|
9
|
+
"disabled",
|
|
10
|
+
"data-tab-value"
|
|
11
|
+
], f = /*@__PURE__*/ r({
|
|
12
|
+
__name: "TTab",
|
|
13
|
+
props: {
|
|
14
|
+
value: {},
|
|
15
|
+
disabled: {
|
|
16
|
+
type: Boolean,
|
|
17
|
+
default: !1
|
|
18
|
+
}
|
|
19
|
+
},
|
|
20
|
+
setup(r) {
|
|
21
|
+
let f = r, p = i(e);
|
|
22
|
+
if (!p) throw Error("TTab must be used inside TTabs");
|
|
23
|
+
s(() => {
|
|
24
|
+
p.registerTab(f.value), p.setTabDisabled(f.value, f.disabled);
|
|
25
|
+
}), u(() => f.disabled, (e) => p.setTabDisabled(f.value, e)), o(() => {
|
|
26
|
+
p.unregisterTab(f.value);
|
|
27
|
+
});
|
|
28
|
+
let m = t(() => p.activeValue.value === f.value), h = t(() => p.isTabDisabled(f.value)), g = t(() => `${p.baseId}-tab-${f.value}`), _ = t(() => `${p.baseId}-panel-${f.value}`), v = () => {
|
|
29
|
+
h.value || p.setActiveValue(f.value);
|
|
30
|
+
}, y = t(() => [
|
|
31
|
+
"t-tabs__tab",
|
|
32
|
+
`t-tabs__tab--${p.size.value}`,
|
|
33
|
+
{
|
|
34
|
+
"is-active": m.value,
|
|
35
|
+
"is-disabled": h.value
|
|
36
|
+
}
|
|
37
|
+
]);
|
|
38
|
+
return (e, t) => (c(), n("button", {
|
|
39
|
+
id: g.value,
|
|
40
|
+
role: "tab",
|
|
41
|
+
type: "button",
|
|
42
|
+
class: a(y.value),
|
|
43
|
+
"aria-selected": m.value,
|
|
44
|
+
"aria-controls": _.value,
|
|
45
|
+
tabindex: m.value ? 0 : -1,
|
|
46
|
+
disabled: h.value || void 0,
|
|
47
|
+
"data-tab-value": r.value,
|
|
48
|
+
onClick: v
|
|
49
|
+
}, [l(e.$slots, "default")], 10, d));
|
|
50
|
+
}
|
|
51
|
+
});
|
|
52
|
+
//#endregion
|
|
53
|
+
export { f as default };
|
|
54
|
+
|
|
55
|
+
//# sourceMappingURL=TTab.vue_vue_type_script_setup_true_lang.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TTab.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../src/components/TTab.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, inject, onBeforeUnmount, onMounted, watch } from 'vue';\nimport { TABS_INJECTION_KEY } from './tabs-context';\n\nconst props = withDefaults(\n defineProps<{\n value: string;\n disabled?: boolean;\n }>(),\n {\n disabled: false,\n },\n);\n\nconst ctx = inject(TABS_INJECTION_KEY);\nif (!ctx) {\n throw new Error('TTab must be used inside TTabs');\n}\n\nonMounted(() => {\n ctx.registerTab(props.value);\n ctx.setTabDisabled(props.value, props.disabled);\n});\n\nwatch(\n () => props.disabled,\n (val) => ctx.setTabDisabled(props.value, val),\n);\n\nonBeforeUnmount(() => {\n ctx.unregisterTab(props.value);\n});\n\nconst isActive = computed(() => ctx.activeValue.value === props.value);\nconst isDisabled = computed(() => ctx.isTabDisabled(props.value));\nconst tabId = computed(() => `${ctx.baseId}-tab-${props.value}`);\nconst panelId = computed(() => `${ctx.baseId}-panel-${props.value}`);\n\nconst onClick = () => {\n if (isDisabled.value) return;\n ctx.setActiveValue(props.value);\n};\n\nconst classes = computed(() => [\n 't-tabs__tab',\n `t-tabs__tab--${ctx.size.value}`,\n {\n 'is-active': isActive.value,\n 'is-disabled': isDisabled.value,\n },\n]);\n</script>\n\n<template>\n <button\n :id=\"tabId\"\n role=\"tab\"\n type=\"button\"\n :class=\"classes\"\n :aria-selected=\"isActive\"\n :aria-controls=\"panelId\"\n :tabindex=\"isActive ? 0 : -1\"\n :disabled=\"isDisabled || undefined\"\n :data-tab-value=\"value\"\n @click=\"onClick\"\n >\n <slot />\n </button>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;EAIA,IAAM,IAAQ,GAUR,IAAM,EAAO,CAAkB;EACrC,IAAI,CAAC,GACH,MAAU,MAAM,gCAAgC;EAalD,AAVA,QAAgB;GAEd,AADA,EAAI,YAAY,EAAM,KAAK,GAC3B,EAAI,eAAe,EAAM,OAAO,EAAM,QAAQ;EAChD,CAAC,GAED,QACQ,EAAM,WACX,MAAQ,EAAI,eAAe,EAAM,OAAO,CAAG,CAC9C,GAEA,QAAsB;GACpB,EAAI,cAAc,EAAM,KAAK;EAC/B,CAAC;EAED,IAAM,IAAW,QAAe,EAAI,YAAY,UAAU,EAAM,KAAK,GAC/D,IAAa,QAAe,EAAI,cAAc,EAAM,KAAK,CAAC,GAC1D,IAAQ,QAAe,GAAG,EAAI,OAAO,OAAO,EAAM,OAAO,GACzD,IAAU,QAAe,GAAG,EAAI,OAAO,SAAS,EAAM,OAAO,GAE7D,UAAgB;GAChB,EAAW,SACf,EAAI,eAAe,EAAM,KAAK;EAChC,GAEM,IAAU,QAAe;GAC7B;GACA,gBAAgB,EAAI,KAAK;GACzB;IACE,aAAa,EAAS;IACtB,eAAe,EAAW;GAC5B;EACF,CAAC;yBAIC,EAaS,UAAA;GAZN,IAAI,EAAA;GACL,MAAK;GACL,MAAK;GACJ,OAAK,EAAE,EAAA,KAAO;GACd,iBAAe,EAAA;GACf,iBAAe,EAAA;GACf,UAAU,EAAA,QAAQ,IAAA;GAClB,UAAU,EAAA,SAAc,KAAA;GACxB,kBAAgB,EAAA;GACT;MAER,EAAQ,EAAA,QAAA,SAAA,CAAA,GAAA,IAAA,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TTabList.cjs","names":[],"sources":["../../src/components/TTabList.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { isActivationKey } from '@treeui/utils';\nimport { computed, inject, ref } from 'vue';\nimport { TABS_INJECTION_KEY } from './tabs-context';\n\nconst ctx = inject(TABS_INJECTION_KEY);\nif (!ctx) {\n throw new Error('TTabList must be used inside TTabs');\n}\n\nconst listRef = ref<HTMLElement | null>(null);\n\nconst getAllTabElements = (): HTMLElement[] => {\n if (!listRef.value) return [];\n return Array.from(\n listRef.value.querySelectorAll<HTMLElement>('[role=\"tab\"]'),\n );\n};\n\nconst getEnabledTabElements = (): HTMLElement[] => {\n return getAllTabElements().filter((el) => {\n const value = el.dataset.tabValue;\n return value ? !ctx.isTabDisabled(value) : false;\n });\n};\n\nconst moveFocus = (direction: 1 | -1) => {\n const tabs = getEnabledTabElements();\n if (!tabs.length) return;\n\n const current = document.activeElement as HTMLElement;\n const currentIndex = tabs.indexOf(current);\n let nextIndex = currentIndex + direction;\n\n if (nextIndex < 0) nextIndex = tabs.length - 1;\n if (nextIndex >= tabs.length) nextIndex = 0;\n\n const nextTab = tabs[nextIndex];\n nextTab.focus();\n\n if (ctx.activationMode.value === 'automatic') {\n const value = nextTab.dataset.tabValue;\n if (value) ctx.setActiveValue(value);\n }\n};\n\nconst focusFirst = () => {\n const tabs = getEnabledTabElements();\n if (!tabs.length) return;\n tabs[0].focus();\n if (ctx.activationMode.value === 'automatic') {\n const value = tabs[0].dataset.tabValue;\n if (value) ctx.setActiveValue(value);\n }\n};\n\nconst focusLast = () => {\n const tabs = getEnabledTabElements();\n if (!tabs.length) return;\n const last = tabs[tabs.length - 1];\n last.focus();\n if (ctx.activationMode.value === 'automatic') {\n const value = last.dataset.tabValue;\n if (value) ctx.setActiveValue(value);\n }\n};\n\nconst onKeydown = (event: KeyboardEvent) => {\n switch (event.key) {\n case 'ArrowRight':\n event.preventDefault();\n moveFocus(1);\n break;\n case 'ArrowLeft':\n event.preventDefault();\n moveFocus(-1);\n break;\n case 'Home':\n event.preventDefault();\n focusFirst();\n break;\n case 'End':\n event.preventDefault();\n focusLast();\n break;\n default:\n if (ctx.activationMode.value === 'manual' && isActivationKey(event)) {\n event.preventDefault();\n const target = event.target as HTMLElement;\n const value = target.dataset?.tabValue;\n if (value) ctx.setActiveValue(value);\n }\n break;\n }\n};\n\nconst classes = computed(() => [\n 't-tabs__list',\n]);\n</script>\n\n<template>\n <div\n ref=\"listRef\"\n role=\"tablist\"\n aria-orientation=\"horizontal\"\n :class=\"classes\"\n @keydown=\"onKeydown\"\n >\n <slot />\n </div>\n</template>\n"],"mappings":""}
|