@leaflink/stash 51.9.3 → 51.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/assets/icons/cloud-share.svg +1 -0
- package/assets/spritesheet.svg +1 -1
- package/dist/Accordion.js.map +1 -1
- package/dist/Accordion.vue.d.ts +7 -38
- package/dist/ActionsDropdown.js +2 -2
- package/dist/ActionsDropdown.js.map +1 -1
- package/dist/ActionsDropdown.vue.d.ts +0 -74
- package/dist/AddressSelect.js +56 -60
- package/dist/AddressSelect.js.map +1 -1
- package/dist/AddressSelect.vue.d.ts +8 -65
- package/dist/Alert.js.map +1 -1
- package/dist/Alert.vue.d.ts +4 -41
- package/dist/AppNavigationItem.js.map +1 -1
- package/dist/AppNavigationItem.vue.d.ts +5 -32
- package/dist/AppSidebar.js.map +1 -1
- package/dist/AppSidebar.vue.d.ts +8 -35
- package/dist/AppTopbar.js +1 -1
- package/dist/AppTopbar.js.map +1 -1
- package/dist/AppTopbar.vue.d.ts +4 -33
- package/dist/Avatar.js.map +1 -1
- package/dist/Avatar.vue.d.ts +5 -44
- package/dist/Backdrop.js.map +1 -1
- package/dist/Backdrop.vue.d.ts +1 -1
- package/dist/Badge.js.map +1 -1
- package/dist/Badge.vue.d.ts +6 -55
- package/dist/Box.vue.d.ts +3 -36
- package/dist/Box.vue_vue_type_script_setup_true_lang-rFnvwLVY.js.map +1 -1
- package/dist/Button.js.map +1 -1
- package/dist/Button.vue.d.ts +5 -50
- package/dist/ButtonGroup.js +33 -37
- package/dist/ButtonGroup.js.map +1 -1
- package/dist/ButtonGroup.vue.d.ts +6 -39
- package/dist/Card.js.map +1 -1
- package/dist/Card.vue.d.ts +5 -32
- package/dist/CardContent.js.map +1 -1
- package/dist/CardContent.vue.d.ts +1 -1
- package/dist/CardFooter.js.map +1 -1
- package/dist/CardFooter.vue.d.ts +1 -1
- package/dist/CardHeader.js.map +1 -1
- package/dist/CardHeader.vue.d.ts +2 -15
- package/dist/CardMedia.js.map +1 -1
- package/dist/CardMedia.vue.d.ts +2 -15
- package/dist/Carousel.js +66 -72
- package/dist/Carousel.js.map +1 -1
- package/dist/Carousel.vue.d.ts +10 -10
- package/dist/Checkbox.js.map +1 -1
- package/dist/Checkbox.vue.d.ts +8 -53
- package/dist/ChevronToggle.vue.d.ts +7 -34
- package/dist/ChevronToggle.vue_vue_type_script_setup_true_lang-Ce_qOXfR.js.map +1 -1
- package/dist/Chip.js.map +1 -1
- package/dist/Chip.vue.d.ts +10 -52
- package/dist/ConfirmationCodeInput.js +40 -44
- package/dist/ConfirmationCodeInput.js.map +1 -1
- package/dist/ConfirmationCodeInput.vue.d.ts +8 -43
- package/dist/ContextSwitcher.js.map +1 -1
- package/dist/ContextSwitcher.vue.d.ts +6 -41
- package/dist/Copy.js.map +1 -1
- package/dist/Copy.vue.d.ts +3 -34
- package/dist/CurrencyInput.js +20 -21
- package/dist/CurrencyInput.js.map +1 -1
- package/dist/CurrencyInput.vue.d.ts +125 -46
- package/dist/CustomRender.js.map +1 -1
- package/dist/DataView.js +94 -96
- package/dist/DataView.js.map +1 -1
- package/dist/DataView.keys-aSOnA4AD.js.map +1 -1
- package/dist/DataView.vue.d.ts +15 -57
- package/dist/DataViewFilters.js +127 -139
- package/dist/DataViewFilters.js.map +1 -1
- package/dist/DataViewFilters.keys-BLu07FiP.js.map +1 -1
- package/dist/DataViewFilters.vue.d.ts +9 -54
- package/dist/DataViewSortButton.js +2 -2
- package/dist/DataViewSortButton.js.map +1 -1
- package/dist/DataViewSortButton.vue.d.ts +3 -30
- package/dist/DataViewToolbar.js +70 -62
- package/dist/DataViewToolbar.js.map +1 -1
- package/dist/DataViewToolbar.vue.d.ts +5 -40
- package/dist/DatePicker.js +4524 -4636
- package/dist/DatePicker.js.map +1 -1
- package/dist/DatePicker.vue.d.ts +32 -81
- package/dist/DescriptionList.js.map +1 -1
- package/dist/DescriptionList.vue.d.ts +3 -32
- package/dist/DescriptionListDetail.js.map +1 -1
- package/dist/DescriptionListDetail.vue.d.ts +1 -1
- package/dist/DescriptionListGroup.js.map +1 -1
- package/dist/DescriptionListGroup.vue.d.ts +1 -1
- package/dist/DescriptionListTerm.js.map +1 -1
- package/dist/DescriptionListTerm.vue.d.ts +1 -1
- package/dist/Dialog.js.map +1 -1
- package/dist/Dialog.vue.d.ts +10 -53
- package/dist/Divider.js.map +1 -1
- package/dist/Dropdown.js +89 -95
- package/dist/Dropdown.js.map +1 -1
- package/dist/Dropdown.vue.d.ts +12 -48
- package/dist/EmptyState.js +1 -1
- package/dist/EmptyState.js.map +1 -1
- package/dist/EmptyState.vue.d.ts +5 -62
- package/dist/Expand.vue.d.ts +10 -40
- package/dist/Expand.vue_vue_type_script_setup_true_lang-CiONJfAp.js.map +1 -1
- package/dist/Field.vue.d.ts +4 -53
- package/dist/Field.vue_vue_type_script_setup_true_lang-DI6z3AE9.js.map +1 -1
- package/dist/FileUpload.js +72 -74
- package/dist/FileUpload.js.map +1 -1
- package/dist/FileUpload.vue.d.ts +10 -44
- package/dist/FilterChip.js.map +1 -1
- package/dist/FilterChip.vue.d.ts +6 -41
- package/dist/FilterDrawerItem.js +21 -21
- package/dist/FilterDrawerItem.js.map +1 -1
- package/dist/FilterDrawerItem.vue.d.ts +6 -23
- package/dist/FilterDropdown.js +63 -69
- package/dist/FilterDropdown.js.map +1 -1
- package/dist/FilterDropdown.vue.d.ts +122 -35
- package/dist/FilterSelect.js.map +1 -1
- package/dist/FilterSelect.vue.d.ts +4 -31
- package/dist/Filters.js +157 -164
- package/dist/Filters.js.map +1 -1
- package/dist/Filters.vue.d.ts +0 -2190
- package/dist/HttpError.js +7 -7
- package/dist/HttpError.js.map +1 -1
- package/dist/HttpError.vue.d.ts +4 -41
- package/dist/Icon.js +16 -15
- package/dist/Icon.js.map +1 -1
- package/dist/Icon.vue.d.ts +4 -37
- package/dist/IconLabel.js.map +1 -1
- package/dist/IconLabel.vue.d.ts +6 -41
- package/dist/Illustration.js +2 -2
- package/dist/Illustration.vue.d.ts +3 -42
- package/dist/{Illustration.vue_vue_type_script_setup_true_lang-BrqEF8xe.js → Illustration.vue_vue_type_script_setup_true_lang-BVzzNsRt.js} +11 -11
- package/dist/{Illustration.vue_vue_type_script_setup_true_lang-BrqEF8xe.js.map → Illustration.vue_vue_type_script_setup_true_lang-BVzzNsRt.js.map} +1 -1
- package/dist/Image.js +2 -2
- package/dist/Image.vue.d.ts +5 -40
- package/dist/{Image.vue_vue_type_script_setup_true_lang-D5u4av0_.js → Image.vue_vue_type_script_setup_true_lang-Dg2Zk2r2.js} +37 -41
- package/dist/{Image.vue_vue_type_script_setup_true_lang-D5u4av0_.js.map → Image.vue_vue_type_script_setup_true_lang-Dg2Zk2r2.js.map} +1 -1
- package/dist/InlineEdit.js.map +1 -1
- package/dist/InlineEdit.vue.d.ts +126 -47
- package/dist/Input.js.map +1 -1
- package/dist/Input.vue.d.ts +12 -45
- package/dist/InputOptions.js +66 -69
- package/dist/InputOptions.js.map +1 -1
- package/dist/InputOptions.vue.d.ts +10 -55
- package/dist/IntegrationIcon.js +7 -7
- package/dist/IntegrationIcon.js.map +1 -1
- package/dist/IntegrationIcon.vue.d.ts +3 -36
- package/dist/Label.vue.d.ts +3 -42
- package/dist/Label.vue_vue_type_script_setup_true_lang-CNquF3AP.js.map +1 -1
- package/dist/LicenseChip.js.map +1 -1
- package/dist/LicenseChip.vue.d.ts +3 -30
- package/dist/ListItem.js.map +1 -1
- package/dist/ListItem.vue.d.ts +0 -294
- package/dist/ListItemCell.js.map +1 -1
- package/dist/ListItemCell.vue.d.ts +0 -21
- package/dist/ListView.js +4 -7
- package/dist/ListView.js.map +1 -1
- package/dist/ListView.types.d.ts +0 -29
- package/dist/ListView.vue.d.ts +0 -5496
- package/dist/Loading.js +2 -2
- package/dist/Loading.js.map +1 -1
- package/dist/Loading.vue.d.ts +1 -1
- package/dist/Logo.js +1 -1
- package/dist/Logo.vue.d.ts +6 -41
- package/dist/{Logo.vue_vue_type_script_setup_true_lang-Dz8c98sc.js → Logo.vue_vue_type_script_setup_true_lang-Y3iE9utm.js} +17 -17
- package/dist/Logo.vue_vue_type_script_setup_true_lang-Y3iE9utm.js.map +1 -0
- package/dist/Menu.js.map +1 -1
- package/dist/Menu.vue.d.ts +1 -1
- package/dist/MenuItem.js.map +1 -1
- package/dist/MenuItem.vue.d.ts +1 -1
- package/dist/MenusPlugin-B4jpNe7x.js +12 -0
- package/dist/{MenusPlugin-Bk6UW6o9.js.map → MenusPlugin-B4jpNe7x.js.map} +1 -1
- package/dist/Metric.js.map +1 -1
- package/dist/Metric.vue.d.ts +3 -34
- package/dist/Modal.js +62 -64
- package/dist/Modal.js.map +1 -1
- package/dist/Modal.vue.d.ts +13 -60
- package/dist/Modals.js +17 -18
- package/dist/Modals.js.map +1 -1
- package/dist/ModalsPlugin.js +11 -11
- package/dist/ModalsPlugin.js.map +1 -1
- package/dist/Module.js.map +1 -1
- package/dist/Module.keys-CEsrW2f0.js.map +1 -1
- package/dist/Module.types-B1FfGGac.js.map +1 -1
- package/dist/Module.vue.d.ts +2 -29
- package/dist/ModuleContent.js.map +1 -1
- package/dist/ModuleContent.vue.d.ts +3 -3
- package/dist/ModuleFooter.js.map +1 -1
- package/dist/ModuleFooter.vue.d.ts +1 -1
- package/dist/ModuleHeader.js.map +1 -1
- package/dist/ModuleHeader.vue.d.ts +5 -39
- package/dist/ObfuscateText.js.map +1 -1
- package/dist/ObfuscateText.vue.d.ts +3 -40
- package/dist/PageContent.js.map +1 -1
- package/dist/PageContent.vue.d.ts +3 -30
- package/dist/PageHeader.js.map +1 -1
- package/dist/PageHeader.vue.d.ts +6 -35
- package/dist/PageNavigation.js +50 -50
- package/dist/PageNavigation.js.map +1 -1
- package/dist/PageNavigation.vue.d.ts +7 -36
- package/dist/Paginate.js.map +1 -1
- package/dist/Paginate.vue.d.ts +5 -40
- package/dist/PlaidLink.js.map +1 -1
- package/dist/PlaidLink.vue.d.ts +12 -49
- package/dist/QuickAction.js.map +1 -1
- package/dist/QuickAction.vue.d.ts +3 -16
- package/dist/Radio.js.map +1 -1
- package/dist/Radio.vue.d.ts +0 -93
- package/dist/RadioGroup.js +94 -101
- package/dist/RadioGroup.js.map +1 -1
- package/dist/RadioGroup.vue.d.ts +116 -42
- package/dist/RadioNew.js +96 -99
- package/dist/RadioNew.js.map +1 -1
- package/dist/RadioNew.vue.d.ts +7 -48
- package/dist/RangeInput.js.map +1 -1
- package/dist/RangeInput.vue.d.ts +1 -1
- package/dist/SearchBar.js +38 -39
- package/dist/SearchBar.js.map +1 -1
- package/dist/SearchBar.vue.d.ts +127 -44
- package/dist/SectionHeader.js.map +1 -1
- package/dist/SectionHeader.vue.d.ts +6 -37
- package/dist/Select.js +171 -183
- package/dist/Select.js.map +1 -1
- package/dist/Select.vue.d.ts +23 -102
- package/dist/SelectStatus.js +38 -38
- package/dist/SelectStatus.js.map +1 -1
- package/dist/SelectStatus.vue.d.ts +227 -47
- package/dist/Skeleton.js.map +1 -1
- package/dist/Skeleton.vue.d.ts +3 -34
- package/dist/Step.js +44 -44
- package/dist/Step.js.map +1 -1
- package/dist/Step.vue.d.ts +4 -43
- package/dist/Stepper.js.map +1 -1
- package/dist/Stepper.vue.d.ts +9 -44
- package/dist/Switch.js.map +1 -1
- package/dist/Switch.vue.d.ts +8 -47
- package/dist/Tab.js +1 -1
- package/dist/Tab.js.map +1 -1
- package/dist/Tab.vue.d.ts +2 -15
- package/dist/TabPanel.js.map +1 -1
- package/dist/TabPanel.vue.d.ts +3 -30
- package/dist/Table.js +53 -59
- package/dist/Table.js.map +1 -1
- package/dist/Table.keys-LHQf6FEH.js.map +1 -1
- package/dist/Table.vue.d.ts +3 -50
- package/dist/TableCell.js +1 -1
- package/dist/TableCell.js.map +1 -1
- package/dist/TableCell.vue.d.ts +3 -32
- package/dist/TableHeaderCell.js +1 -1
- package/dist/TableHeaderCell.js.map +1 -1
- package/dist/TableHeaderCell.vue.d.ts +3 -30
- package/dist/TableHeaderRow.js +47 -45
- package/dist/TableHeaderRow.js.map +1 -1
- package/dist/TableHeaderRow.vue.d.ts +5 -34
- package/dist/TableRow.js +60 -61
- package/dist/TableRow.js.map +1 -1
- package/dist/TableRow.vue.d.ts +7 -48
- package/dist/Tabs.js +2 -2
- package/dist/Tabs.vue.d.ts +122 -31
- package/dist/Tabs.vue_vue_type_script_setup_true_lang-Dprx064Y.js +156 -0
- package/dist/{Tabs.vue_vue_type_script_setup_true_lang-CmnBP4i1.js.map → Tabs.vue_vue_type_script_setup_true_lang-Dprx064Y.js.map} +1 -1
- package/dist/TextEditor.js +2414 -2420
- package/dist/TextEditor.js.map +1 -1
- package/dist/TextEditor.vue.d.ts +9 -40
- package/dist/Textarea.js +69 -69
- package/dist/Textarea.js.map +1 -1
- package/dist/Textarea.vue.d.ts +9 -44
- package/dist/Thumbnail.js +1 -1
- package/dist/Thumbnail.js.map +1 -1
- package/dist/Thumbnail.vue.d.ts +4 -4
- package/dist/ThumbnailEmpty.js.map +1 -1
- package/dist/ThumbnailEmpty.vue.d.ts +1 -1
- package/dist/ThumbnailGroup.js.map +1 -1
- package/dist/ThumbnailGroup.keys-EJ4qFNhx.js.map +1 -1
- package/dist/ThumbnailGroup.vue.d.ts +26 -22
- package/dist/Timeline.js.map +1 -1
- package/dist/Timeline.vue.d.ts +3 -32
- package/dist/TimelineItem.js.map +1 -1
- package/dist/TimelineItem.vue.d.ts +1 -1
- package/dist/Toast.js.map +1 -1
- package/dist/Toast.vue.d.ts +3 -30
- package/dist/Toasts.js.map +1 -1
- package/dist/ToastsPlugin.js +11 -11
- package/dist/ToastsPlugin.js.map +1 -1
- package/dist/Tooltip.js +29 -30
- package/dist/Tooltip.js.map +1 -1
- package/dist/Tooltip.vue.d.ts +11 -43
- package/dist/colors-DDDVvqfQ.js.map +1 -1
- package/dist/components.css +1 -1
- package/dist/constants.js.map +1 -1
- package/dist/directives/autofocus.js.map +1 -1
- package/dist/directives/clickoutside.js.map +1 -1
- package/dist/directives/observe.js.map +1 -1
- package/dist/directives/sticky.js.map +1 -1
- package/dist/directives/tooltip.js +3 -3
- package/dist/directives/tooltip.js.map +1 -1
- package/dist/directives/viewable.js +39 -44
- package/dist/directives/viewable.js.map +1 -1
- package/dist/{floating-ui.vue-pzUuloyX.js → floating-ui.vue-CL01Y9ER.js} +2 -2
- package/dist/{floating-ui.vue-pzUuloyX.js.map → floating-ui.vue-CL01Y9ER.js.map} +1 -1
- package/dist/formatDateTime-DG7kBc2T.js +1414 -0
- package/dist/{formatDateTime-Dz8bXV0R.js.map → formatDateTime-DG7kBc2T.js.map} +1 -1
- package/dist/index-D6bxWkZ1.js.map +1 -1
- package/dist/{index-ConQ3o31.js → index-GUu9zvbg.js} +3 -3
- package/dist/{index-ConQ3o31.js.map → index-GUu9zvbg.js.map} +1 -1
- package/dist/index.js +99 -104
- package/dist/index.js.map +1 -1
- package/dist/isDefined-DzVx0B6k.js.map +1 -1
- package/dist/keys-BEdEsanp.js.map +1 -1
- package/dist/keys-C8Zfr_By.js.map +1 -1
- package/dist/locale.js.map +1 -1
- package/dist/misc-CHQs-G03.js.map +1 -1
- package/dist/obfuscateText.d.ts +1 -1
- package/dist/parseISO-wlfIB_QJ.js.map +1 -1
- package/dist/searchFuzzy-DBDE6jkd.js +408 -0
- package/dist/{searchFuzzy-DRasJ33G.js.map → searchFuzzy-DBDE6jkd.js.map} +1 -1
- package/dist/statusLevels-D8EgtE_L.js.map +1 -1
- package/dist/storage.js.map +1 -1
- package/dist/tailwind-base.js +1 -1
- package/dist/tailwind-base.js.map +1 -1
- package/dist/toTimeZone-Coq1oPTt.js.map +1 -1
- package/dist/useConfirmBeforeClosing.js.map +1 -1
- package/dist/useDialog.d.ts +2 -2
- package/dist/useDialog.js +21 -25
- package/dist/useDialog.js.map +1 -1
- package/dist/useGoogleMaps.js +108 -110
- package/dist/useGoogleMaps.js.map +1 -1
- package/dist/useMediaQuery.d.ts +0 -6
- package/dist/useMediaQuery.js +11 -15
- package/dist/useMediaQuery.js.map +1 -1
- package/dist/useModals.d.ts +1 -1
- package/dist/useModals.js.map +1 -1
- package/dist/usePaginationStats-d_q39naC.js.map +1 -1
- package/dist/usePlaidLink.js +20 -27
- package/dist/usePlaidLink.js.map +1 -1
- package/dist/useScriptTag.js.map +1 -1
- package/dist/useSearch.js +13 -13
- package/dist/useSearch.js.map +1 -1
- package/dist/useSelection.js +56 -56
- package/dist/useSelection.js.map +1 -1
- package/dist/useSortable.js +54 -63
- package/dist/useSortable.js.map +1 -1
- package/dist/useStepper.d.ts +2 -2
- package/dist/useStepper.js +36 -40
- package/dist/useStepper.js.map +1 -1
- package/dist/useToasts.js +23 -23
- package/dist/useToasts.js.map +1 -1
- package/dist/useValidation.js +96 -100
- package/dist/useValidation.js.map +1 -1
- package/dist/utils/calculateElementOverflow.js +4 -4
- package/dist/utils/calculateElementOverflow.js.map +1 -1
- package/dist/utils/colorScheme.js +2 -2
- package/dist/utils/colorScheme.js.map +1 -1
- package/dist/utils/createQueryString.js.map +1 -1
- package/dist/utils/createValidDate.js.map +1 -1
- package/dist/utils/formatDateTime.js +1 -1
- package/dist/utils/getContrastingTextColor.js.map +1 -1
- package/dist/utils/helpers.js.map +1 -1
- package/dist/utils/i18n.js.map +1 -1
- package/dist/utils/normalizeDate.js.map +1 -1
- package/dist/utils/obfuscateText.js +6 -6
- package/dist/utils/obfuscateText.js.map +1 -1
- package/dist/utils/searchFuzzy.js +1 -1
- package/dist/utils/storage.js +23 -23
- package/dist/utils/storage.js.map +1 -1
- package/package.json +12 -13
- package/tailwind-base.ts +1 -1
- package/types/vite.d.ts +7 -0
- package/types/vitest.d.ts +7 -0
- package/dist/Logo.vue_vue_type_script_setup_true_lang-Dz8c98sc.js.map +0 -1
- package/dist/MenusPlugin-Bk6UW6o9.js +0 -12
- package/dist/Tabs.vue_vue_type_script_setup_true_lang-CmnBP4i1.js +0 -159
- package/dist/formatDateTime-Dz8bXV0R.js +0 -1418
- package/dist/searchFuzzy-DRasJ33G.js +0 -409
package/dist/FilterChip.vue.d.ts
CHANGED
|
@@ -1,53 +1,18 @@
|
|
|
1
1
|
import { ComponentOptionsMixin } from 'vue';
|
|
2
2
|
import { ComponentProvideOptions } from 'vue';
|
|
3
3
|
import { DefineComponent } from 'vue';
|
|
4
|
-
import { ExtractPropTypes } from 'vue';
|
|
5
|
-
import { PropType } from 'vue';
|
|
6
4
|
import { PublicProps } from 'vue';
|
|
7
5
|
|
|
8
|
-
declare type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
|
|
9
|
-
|
|
10
|
-
declare type __VLS_Prettify<T> = {
|
|
11
|
-
[K in keyof T]: T[K];
|
|
12
|
-
} & {};
|
|
13
|
-
|
|
14
|
-
declare type __VLS_TypePropsToRuntimeProps<T> = {
|
|
15
|
-
[K in keyof T]-?: {} extends Pick<T, K> ? {
|
|
16
|
-
type: PropType<__VLS_NonUndefinedable<T[K]>>;
|
|
17
|
-
} : {
|
|
18
|
-
type: PropType<T[K]>;
|
|
19
|
-
required: true;
|
|
20
|
-
};
|
|
21
|
-
};
|
|
22
|
-
|
|
23
|
-
declare type __VLS_WithDefaults<P, D> = {
|
|
24
|
-
[K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_Prettify<P[K] & {
|
|
25
|
-
default: D[K];
|
|
26
|
-
}> : P[K];
|
|
27
|
-
};
|
|
28
|
-
|
|
29
6
|
declare type __VLS_WithTemplateSlots<T, S> = T & {
|
|
30
7
|
new (): {
|
|
31
8
|
$slots: S;
|
|
32
9
|
};
|
|
33
10
|
};
|
|
34
11
|
|
|
35
|
-
declare const _default: __VLS_WithTemplateSlots<DefineComponent<
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
isRemovable: boolean;
|
|
40
|
-
isSelected: boolean;
|
|
41
|
-
}>>, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
|
|
42
|
-
click: () => void;
|
|
43
|
-
remove: () => void;
|
|
44
|
-
}, string, PublicProps, Readonly<ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<FilterChipProps>, {
|
|
45
|
-
filterCount: undefined;
|
|
46
|
-
hasDropdown: boolean;
|
|
47
|
-
isDropdownOpen: boolean;
|
|
48
|
-
isRemovable: boolean;
|
|
49
|
-
isSelected: boolean;
|
|
50
|
-
}>>> & Readonly<{
|
|
12
|
+
declare const _default: __VLS_WithTemplateSlots<DefineComponent<FilterChipProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
|
|
13
|
+
click: () => any;
|
|
14
|
+
remove: () => any;
|
|
15
|
+
}, string, PublicProps, Readonly<FilterChipProps> & Readonly<{
|
|
51
16
|
onClick?: (() => any) | undefined;
|
|
52
17
|
onRemove?: (() => any) | undefined;
|
|
53
18
|
}>, {
|
|
@@ -56,12 +21,12 @@ isSelected: boolean;
|
|
|
56
21
|
filterCount: number;
|
|
57
22
|
hasDropdown: boolean;
|
|
58
23
|
isDropdownOpen: boolean;
|
|
59
|
-
}, {}, {}, {}, string, ComponentProvideOptions,
|
|
24
|
+
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLSpanElement>, {
|
|
60
25
|
default?(_: {}): any;
|
|
61
26
|
}>;
|
|
62
27
|
export default _default;
|
|
63
28
|
|
|
64
|
-
|
|
29
|
+
declare interface FilterChipProps {
|
|
65
30
|
/**
|
|
66
31
|
* Used for conditionally rendering filter count chip
|
|
67
32
|
*/
|
package/dist/FilterDrawerItem.js
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
import { defineComponent as
|
|
1
|
+
import { defineComponent as y, useSlots as C, inject as k, computed as w, createElementBlock as o, openBlock as t, createBlock as a, createCommentVNode as s, resolveDynamicComponent as x, withCtx as p, createElementVNode as l, toDisplayString as n, normalizeClass as I, unref as c, createTextVNode as g, renderSlot as D } from "vue";
|
|
2
2
|
import { t as u } from "./locale.js";
|
|
3
3
|
import E from "./Chip.js";
|
|
4
4
|
import { D as S } from "./DataViewFilters.keys-BLu07FiP.js";
|
|
5
|
-
import
|
|
6
|
-
const
|
|
5
|
+
import V from "./Icon.js";
|
|
6
|
+
const N = { class: "stash-filter-drawer-item" }, T = { class: "tw-flex tw-items-center tw-justify-between tw-self-stretch" }, A = { class: "tw-flex tw-flex-col tw-items-start" }, B = {
|
|
7
7
|
key: 0,
|
|
8
8
|
class: "tw-text-xs",
|
|
9
9
|
"data-test": "description"
|
|
10
10
|
}, O = {
|
|
11
11
|
key: 0,
|
|
12
12
|
class: "tw-gap-3 tw-p-6"
|
|
13
|
-
},
|
|
13
|
+
}, J = /* @__PURE__ */ y({
|
|
14
14
|
__name: "FilterDrawerItem",
|
|
15
15
|
props: {
|
|
16
16
|
group: {},
|
|
@@ -19,28 +19,28 @@ const T = { class: "stash-filter-drawer-item" }, A = { class: "tw-flex tw-items-
|
|
|
19
19
|
},
|
|
20
20
|
emits: ["navigate"],
|
|
21
21
|
setup(f, { emit: v }) {
|
|
22
|
-
const i = f, _ = v, h =
|
|
23
|
-
if (!
|
|
22
|
+
const i = f, _ = v, h = C(), r = k(S.key);
|
|
23
|
+
if (!r?.useFiltersInstance)
|
|
24
24
|
throw new Error(
|
|
25
25
|
"FilterDropdown must be used within a <DataViewFilters> that receives an instance of useFilters()."
|
|
26
26
|
);
|
|
27
|
-
const { activeFiltersCounts: b } =
|
|
28
|
-
return (
|
|
29
|
-
(
|
|
27
|
+
const { activeFiltersCounts: b } = r.useFiltersInstance, d = w(() => b.value[i.group]), e = w(() => r.drawerStyle === "cascade");
|
|
28
|
+
return (F, m) => (t(), o("div", N, [
|
|
29
|
+
(t(), a(x(e.value ? "div" : "button"), {
|
|
30
30
|
"data-test": "stash-filter-drawer-item|dynamic-component",
|
|
31
31
|
class: "tw-w-full tw-border-b tw-border-ice-500 tw-py-4 tw-outline-none focus:tw-outline-blue-500",
|
|
32
|
-
onClick: m[0] || (m[0] = (j) =>
|
|
32
|
+
onClick: m[0] || (m[0] = (j) => e.value ? void 0 : _("navigate"))
|
|
33
33
|
}, {
|
|
34
34
|
default: p(() => [
|
|
35
|
-
l("div",
|
|
36
|
-
l("div",
|
|
35
|
+
l("div", T, [
|
|
36
|
+
l("div", A, [
|
|
37
37
|
l("h4", null, n(i.title), 1),
|
|
38
|
-
i.description ? (
|
|
38
|
+
i.description ? (t(), o("div", B, n(i.description), 1)) : s("", !0)
|
|
39
39
|
]),
|
|
40
40
|
l("div", {
|
|
41
|
-
class: I(["tw-inline-flex tw-items-center tw-gap-6", { "tw-mb-0.5 tw-mr-2":
|
|
41
|
+
class: I(["tw-inline-flex tw-items-center tw-gap-6", { "tw-mb-0.5 tw-mr-2": e.value }])
|
|
42
42
|
}, [
|
|
43
|
-
d.value ? (
|
|
43
|
+
d.value ? (t(), a(E, {
|
|
44
44
|
key: 0,
|
|
45
45
|
color: "blue",
|
|
46
46
|
radius: "pill",
|
|
@@ -52,8 +52,8 @@ const T = { class: "stash-filter-drawer-item" }, A = { class: "tw-flex tw-items-
|
|
|
52
52
|
g(n(d.value), 1)
|
|
53
53
|
]),
|
|
54
54
|
_: 1
|
|
55
|
-
}, 8, ["aria-label", "title"])) :
|
|
56
|
-
|
|
55
|
+
}, 8, ["aria-label", "title"])) : s("", !0),
|
|
56
|
+
e.value ? s("", !0) : (t(), a(V, {
|
|
57
57
|
key: 1,
|
|
58
58
|
name: "chevron-right",
|
|
59
59
|
title: c(u)("ll.viewFilterGroup")
|
|
@@ -63,13 +63,13 @@ const T = { class: "stash-filter-drawer-item" }, A = { class: "tw-flex tw-items-
|
|
|
63
63
|
]),
|
|
64
64
|
_: 1
|
|
65
65
|
})),
|
|
66
|
-
|
|
67
|
-
D(
|
|
68
|
-
])) :
|
|
66
|
+
e.value && h.default ? (t(), o("div", O, [
|
|
67
|
+
D(F.$slots, "default")
|
|
68
|
+
])) : s("", !0)
|
|
69
69
|
]));
|
|
70
70
|
}
|
|
71
71
|
});
|
|
72
72
|
export {
|
|
73
|
-
|
|
73
|
+
J as default
|
|
74
74
|
};
|
|
75
75
|
//# sourceMappingURL=FilterDrawerItem.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FilterDrawerItem.js","sources":["../src/components/FilterDrawerItem/FilterDrawerItem.vue"],"sourcesContent":["<script lang=\"ts\" setup>\n import { computed, inject } from 'vue';\n\n import { t } from '../../locale';\n import Chip from '../Chip/Chip.vue';\n import { DATA_VIEW_FILTERS_UTILS_INJECTION } from '../DataViewFilters/DataViewFilters.keys';\n import Icon from '../Icon/Icon.vue';\n\n export interface FilterDrawerItemProps {\n /** The name of a filter group */\n group: string;\n title: string;\n description?: string;\n }\n const props = defineProps<FilterDrawerItemProps>();\n\n export interface FilterDrawerItemEmits {\n (e: 'navigate');\n }\n const emit = defineEmits<FilterDrawerItemEmits>();\n\n export interface FilterDrawerItemSlots {\n default?: () => unknown;\n }\n\n const slots = defineSlots<FilterDrawerItemSlots>();\n\n const dataViewFiltersUtils = inject(DATA_VIEW_FILTERS_UTILS_INJECTION.key);\n\n if (!dataViewFiltersUtils?.useFiltersInstance) {\n throw new Error(\n 'FilterDropdown must be used within a <DataViewFilters> that receives an instance of useFilters().',\n );\n }\n\n const { activeFiltersCounts } = dataViewFiltersUtils.useFiltersInstance;\n\n const activeCount = computed(() => activeFiltersCounts.value[props.group]);\n const isDrawerCascade = computed(() => dataViewFiltersUtils.drawerStyle === 'cascade');\n</script>\n\n<template>\n <div class=\"stash-filter-drawer-item\">\n <component\n :is=\"isDrawerCascade ? 'div' : 'button'\"\n data-test=\"stash-filter-drawer-item|dynamic-component\"\n class=\"tw-w-full tw-border-b tw-border-ice-500 tw-py-4 tw-outline-none focus:tw-outline-blue-500\"\n @click=\"isDrawerCascade ? undefined : emit('navigate')\"\n >\n <div class=\"tw-flex tw-items-center tw-justify-between tw-self-stretch\">\n <div class=\"tw-flex tw-flex-col tw-items-start\">\n <h4>{{ props.title }}</h4>\n <div v-if=\"props.description\" class=\"tw-text-xs\" data-test=\"description\">\n {{ props.description }}\n </div>\n </div>\n <div class=\"tw-inline-flex tw-items-center tw-gap-6\" :class=\"{ 'tw-mb-0.5 tw-mr-2': isDrawerCascade }\">\n <Chip\n v-if=\"activeCount\"\n color=\"blue\"\n radius=\"pill\"\n shade=\"main\"\n :aria-label=\"t('ll.numberOfActiveFilters')\"\n :title=\"t('ll.numberOfActiveFilters')\"\n >\n {{ activeCount }}\n </Chip>\n <Icon v-if=\"!isDrawerCascade\" name=\"chevron-right\" :title=\"t('ll.viewFilterGroup')\" />\n </div>\n </div>\n </component>\n <div v-if=\"isDrawerCascade && slots.default\" class=\"tw-gap-3 tw-p-6\">\n <slot></slot>\n </div>\n </div>\n</template>\n"],"names":["props","__props","emit","__emit","slots","_useSlots","dataViewFiltersUtils","inject","DATA_VIEW_FILTERS_UTILS_INJECTION","activeFiltersCounts","activeCount","computed","isDrawerCascade"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAcE,UAAMA,IAAQC,GAKRC,IAAOC,GAMPC,IAAQC,
|
|
1
|
+
{"version":3,"file":"FilterDrawerItem.js","sources":["../src/components/FilterDrawerItem/FilterDrawerItem.vue"],"sourcesContent":["<script lang=\"ts\" setup>\n import { computed, inject } from 'vue';\n\n import { t } from '../../locale';\n import Chip from '../Chip/Chip.vue';\n import { DATA_VIEW_FILTERS_UTILS_INJECTION } from '../DataViewFilters/DataViewFilters.keys';\n import Icon from '../Icon/Icon.vue';\n\n export interface FilterDrawerItemProps {\n /** The name of a filter group */\n group: string;\n title: string;\n description?: string;\n }\n const props = defineProps<FilterDrawerItemProps>();\n\n export interface FilterDrawerItemEmits {\n (e: 'navigate');\n }\n const emit = defineEmits<FilterDrawerItemEmits>();\n\n export interface FilterDrawerItemSlots {\n default?: () => unknown;\n }\n\n const slots = defineSlots<FilterDrawerItemSlots>();\n\n const dataViewFiltersUtils = inject(DATA_VIEW_FILTERS_UTILS_INJECTION.key);\n\n if (!dataViewFiltersUtils?.useFiltersInstance) {\n throw new Error(\n 'FilterDropdown must be used within a <DataViewFilters> that receives an instance of useFilters().',\n );\n }\n\n const { activeFiltersCounts } = dataViewFiltersUtils.useFiltersInstance;\n\n const activeCount = computed(() => activeFiltersCounts.value[props.group]);\n const isDrawerCascade = computed(() => dataViewFiltersUtils.drawerStyle === 'cascade');\n</script>\n\n<template>\n <div class=\"stash-filter-drawer-item\">\n <component\n :is=\"isDrawerCascade ? 'div' : 'button'\"\n data-test=\"stash-filter-drawer-item|dynamic-component\"\n class=\"tw-w-full tw-border-b tw-border-ice-500 tw-py-4 tw-outline-none focus:tw-outline-blue-500\"\n @click=\"isDrawerCascade ? undefined : emit('navigate')\"\n >\n <div class=\"tw-flex tw-items-center tw-justify-between tw-self-stretch\">\n <div class=\"tw-flex tw-flex-col tw-items-start\">\n <h4>{{ props.title }}</h4>\n <div v-if=\"props.description\" class=\"tw-text-xs\" data-test=\"description\">\n {{ props.description }}\n </div>\n </div>\n <div class=\"tw-inline-flex tw-items-center tw-gap-6\" :class=\"{ 'tw-mb-0.5 tw-mr-2': isDrawerCascade }\">\n <Chip\n v-if=\"activeCount\"\n color=\"blue\"\n radius=\"pill\"\n shade=\"main\"\n :aria-label=\"t('ll.numberOfActiveFilters')\"\n :title=\"t('ll.numberOfActiveFilters')\"\n >\n {{ activeCount }}\n </Chip>\n <Icon v-if=\"!isDrawerCascade\" name=\"chevron-right\" :title=\"t('ll.viewFilterGroup')\" />\n </div>\n </div>\n </component>\n <div v-if=\"isDrawerCascade && slots.default\" class=\"tw-gap-3 tw-p-6\">\n <slot></slot>\n </div>\n </div>\n</template>\n"],"names":["props","__props","emit","__emit","slots","_useSlots","dataViewFiltersUtils","inject","DATA_VIEW_FILTERS_UTILS_INJECTION","activeFiltersCounts","activeCount","computed","isDrawerCascade","_openBlock","_createElementBlock","_hoisted_1","_createBlock","_resolveDynamicComponent","_cache","$event","_createElementVNode","_hoisted_2","_hoisted_3","_toDisplayString","_hoisted_4","_normalizeClass","Chip","_unref","t","Icon","_hoisted_5","_renderSlot","_ctx"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAcE,UAAMA,IAAQC,GAKRC,IAAOC,GAMPC,IAAQC,EAAA,GAERC,IAAuBC,EAAOC,EAAkC,GAAG;AAEzE,QAAI,CAACF,GAAsB;AACzB,YAAM,IAAI;AAAA,QACR;AAAA,MAAA;AAIJ,UAAM,EAAE,qBAAAG,MAAwBH,EAAqB,oBAE/CI,IAAcC,EAAS,MAAMF,EAAoB,MAAMT,EAAM,KAAK,CAAC,GACnEY,IAAkBD,EAAS,MAAML,EAAqB,gBAAgB,SAAS;sBAIrFO,EAAA,GAAAC,EAgCM,OAhCNC,GAgCM;AAAA,OA/BJF,EAAA,GAAAG,EA2BYC,EA1BLL,EAAA,QAAe,QAAA,QAAA,GAAA;AAAA,QACpB,aAAU;AAAA,QACV,OAAM;AAAA,QACL,SAAKM,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAC,MAAEP,EAAA,QAAkB,SAAYV,EAAI,UAAA;AAAA,MAAA;mBAE1C,MAoBM;AAAA,UApBNkB,EAoBM,OApBNC,GAoBM;AAAA,YAnBJD,EAKM,OALNE,GAKM;AAAA,cAJJF,EAA0B,MAAA,MAAAG,EAAnBvB,EAAM,KAAK,GAAA,CAAA;AAAA,cACPA,EAAM,eAAjBa,EAAA,GAAAC,EAEM,OAFNU,GAEMD,EADDvB,EAAM,WAAW,GAAA,CAAA;;YAGxBoB,EAYM,OAAA;AAAA,cAZD,OAAKK,EAAA,CAAC,2CAAyC,EAAA,qBAAgCb,EAAA,OAAe,CAAA;AAAA,YAAA;cAEzFF,EAAA,cADRM,EASOU,GAAA;AAAA;gBAPL,OAAM;AAAA,gBACN,QAAO;AAAA,gBACP,OAAM;AAAA,gBACL,cAAYC,EAAAC,CAAA,EAAC,0BAAA;AAAA,gBACb,OAAOD,EAAAC,CAAA,EAAC,0BAAA;AAAA,cAAA;2BAET,MAAiB;AAAA,sBAAdlB,EAAA,KAAW,GAAA,CAAA;AAAA,gBAAA;;;cAEHE,EAAA,0BAAbI,EAAsFa,GAAA;AAAA;gBAAxD,MAAK;AAAA,gBAAiB,OAAOF,EAAAC,CAAA,EAAC,oBAAA;AAAA,cAAA;;;;;;MAIvDhB,EAAA,SAAmBR,EAAM,WAApCS,KAAAC,EAEM,OAFNgB,GAEM;AAAA,QADJC,EAAaC,EAAA,QAAA,SAAA;AAAA,MAAA;;;;"}
|
|
@@ -1,46 +1,29 @@
|
|
|
1
1
|
import { ComponentOptionsMixin } from 'vue';
|
|
2
2
|
import { ComponentProvideOptions } from 'vue';
|
|
3
3
|
import { DefineComponent } from 'vue';
|
|
4
|
-
import { ExtractPropTypes } from 'vue';
|
|
5
|
-
import { PropType } from 'vue';
|
|
6
4
|
import { PublicProps } from 'vue';
|
|
7
5
|
|
|
8
|
-
declare type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
|
|
9
|
-
|
|
10
|
-
declare type __VLS_TypePropsToRuntimeProps<T> = {
|
|
11
|
-
[K in keyof T]-?: {} extends Pick<T, K> ? {
|
|
12
|
-
type: PropType<__VLS_NonUndefinedable<T[K]>>;
|
|
13
|
-
} : {
|
|
14
|
-
type: PropType<T[K]>;
|
|
15
|
-
required: true;
|
|
16
|
-
};
|
|
17
|
-
};
|
|
18
|
-
|
|
19
6
|
declare type __VLS_WithTemplateSlots<T, S> = T & {
|
|
20
7
|
new (): {
|
|
21
8
|
$slots: S;
|
|
22
9
|
};
|
|
23
10
|
};
|
|
24
11
|
|
|
25
|
-
declare const _default: __VLS_WithTemplateSlots<DefineComponent<
|
|
26
|
-
navigate: () =>
|
|
27
|
-
}, string, PublicProps, Readonly<
|
|
12
|
+
declare const _default: __VLS_WithTemplateSlots<DefineComponent<FilterDrawerItemProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
|
|
13
|
+
navigate: () => any;
|
|
14
|
+
}, string, PublicProps, Readonly<FilterDrawerItemProps> & Readonly<{
|
|
28
15
|
onNavigate?: (() => any) | undefined;
|
|
29
|
-
}>, {}, {}, {}, {}, string, ComponentProvideOptions,
|
|
16
|
+
}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>, Readonly<FilterDrawerItemSlots> & FilterDrawerItemSlots>;
|
|
30
17
|
export default _default;
|
|
31
18
|
|
|
32
|
-
|
|
33
|
-
(e: 'navigate'): any;
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
export declare interface FilterDrawerItemProps {
|
|
19
|
+
declare interface FilterDrawerItemProps {
|
|
37
20
|
/** The name of a filter group */
|
|
38
21
|
group: string;
|
|
39
22
|
title: string;
|
|
40
23
|
description?: string;
|
|
41
24
|
}
|
|
42
25
|
|
|
43
|
-
|
|
26
|
+
declare interface FilterDrawerItemSlots {
|
|
44
27
|
default?: () => unknown;
|
|
45
28
|
}
|
|
46
29
|
|
package/dist/FilterDropdown.js
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
import { defineComponent as O, inject as
|
|
2
|
-
import
|
|
3
|
-
import { t as
|
|
4
|
-
import
|
|
1
|
+
import { defineComponent as O, inject as g, ref as b, computed as R, createBlock as y, openBlock as d, withCtx as o, createElementVNode as r, createVNode as c, unref as e, renderSlot as W, Transition as j, createElementBlock as J, createCommentVNode as k, createTextVNode as u, toDisplayString as w } from "vue";
|
|
2
|
+
import U from "lodash-es/throttle";
|
|
3
|
+
import { t as x } from "./locale.js";
|
|
4
|
+
import F from "./Button.js";
|
|
5
5
|
import "lodash-es/cloneDeep";
|
|
6
6
|
import "lodash-es/uniqueId";
|
|
7
|
-
import { D as
|
|
8
|
-
import { D as
|
|
9
|
-
import
|
|
10
|
-
import
|
|
11
|
-
const
|
|
7
|
+
import { D as C } from "./DataView.keys-aSOnA4AD.js";
|
|
8
|
+
import { D as z } from "./DataViewFilters.keys-BLu07FiP.js";
|
|
9
|
+
import G from "./Dropdown.js";
|
|
10
|
+
import $ from "./FilterChip.js";
|
|
11
|
+
const q = { class: "tw-flex tw-h-full tw-flex-col tw-rounded" }, H = { class: "tw-relative tw-grow tw-overflow-hidden tw-rounded-t" }, K = {
|
|
12
12
|
key: 0,
|
|
13
13
|
class: "tw-pointer-events-none tw-absolute tw-inset-x-0 tw-bottom-0 tw-z-10 tw-h-[20px] tw-bg-scroll-shadow"
|
|
14
|
-
},
|
|
14
|
+
}, M = { class: "tw-flex tw-justify-end tw-gap-6 tw-rounded-b tw-border tw-border-solid tw-border-x-ice-100 tw-border-b-ice-100 tw-border-t-ice-200 tw-bg-ice-100 tw-p-3.5" }, it = /* @__PURE__ */ O({
|
|
15
15
|
__name: "FilterDropdown",
|
|
16
16
|
props: {
|
|
17
17
|
label: {},
|
|
@@ -20,44 +20,38 @@ const H = { class: "tw-flex tw-h-full tw-flex-col tw-rounded" }, K = { class: "t
|
|
|
20
20
|
} }
|
|
21
21
|
},
|
|
22
22
|
emits: ["reset", "dismiss"],
|
|
23
|
-
setup(
|
|
24
|
-
const s =
|
|
25
|
-
if (!
|
|
23
|
+
setup(D, { emit: T }) {
|
|
24
|
+
const s = D, n = T, { isLoading: p } = g(C.key, C.defaults), f = g(z.key);
|
|
25
|
+
if (!f?.useFiltersInstance)
|
|
26
26
|
throw new Error(
|
|
27
27
|
"FilterDropdown must be used within a <DataViewFilters> that receives an instance of useFilters()."
|
|
28
28
|
);
|
|
29
|
-
const { applyFilters:
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
function A() {
|
|
34
|
-
var t;
|
|
35
|
-
const e = u.value;
|
|
36
|
-
(t = n.value) == null || t.toggle(), e && (_(), c("dismiss"));
|
|
29
|
+
const { applyFilters: I, resetFilterGroup: E, activeFiltersCounts: m, undoWorkingFilters: h } = f.useFiltersInstance, l = b(), a = R(() => l.value?.isActive);
|
|
30
|
+
function S() {
|
|
31
|
+
const t = a.value;
|
|
32
|
+
l.value?.toggle(), t && (h(), n("dismiss"));
|
|
37
33
|
}
|
|
38
|
-
function
|
|
39
|
-
|
|
40
|
-
S(s.group), c("reset"), (e = n.value) == null || e.dismiss();
|
|
34
|
+
function V() {
|
|
35
|
+
E(s.group), n("reset"), l.value?.dismiss();
|
|
41
36
|
}
|
|
42
|
-
async function
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
e || (a = n.value) == null || a.dismiss();
|
|
37
|
+
async function A() {
|
|
38
|
+
const { preventDismiss: t } = await s.onApply?.() || I() || {};
|
|
39
|
+
t || l.value?.dismiss();
|
|
46
40
|
}
|
|
47
|
-
function
|
|
48
|
-
|
|
41
|
+
function N() {
|
|
42
|
+
h(), n("dismiss");
|
|
49
43
|
}
|
|
50
|
-
const
|
|
51
|
-
|
|
44
|
+
const i = b(!1), v = U((t) => {
|
|
45
|
+
t.target && (t.target.scrollTop > 0 ? i.value = !0 : i.value = !1);
|
|
52
46
|
}, 500);
|
|
53
|
-
function
|
|
47
|
+
function B() {
|
|
54
48
|
setTimeout(() => {
|
|
55
|
-
|
|
49
|
+
i.value = !1;
|
|
56
50
|
}, 2e3);
|
|
57
51
|
}
|
|
58
|
-
return (
|
|
52
|
+
return (t, _) => (d(), y(G, {
|
|
59
53
|
ref_key: "dropdownRef",
|
|
60
|
-
ref:
|
|
54
|
+
ref: l,
|
|
61
55
|
align: "left",
|
|
62
56
|
class: "stash-filter-dropdown",
|
|
63
57
|
"data-test": "stash-filter-dropdown",
|
|
@@ -65,61 +59,61 @@ const H = { class: "tw-flex tw-h-full tw-flex-col tw-rounded" }, K = { class: "t
|
|
|
65
59
|
"close-manually": "",
|
|
66
60
|
"content-class": "tw-w-full tw-max-w-[600px] tw-h-full tw-max-h-[400px]",
|
|
67
61
|
offset: { y: 6 },
|
|
68
|
-
onDismiss:
|
|
62
|
+
onDismiss: N
|
|
69
63
|
}, {
|
|
70
|
-
toggle:
|
|
71
|
-
|
|
64
|
+
toggle: o(() => [
|
|
65
|
+
c($, {
|
|
72
66
|
class: "tw-rounded-full",
|
|
73
67
|
"has-dropdown": "",
|
|
74
|
-
"is-dropdown-open":
|
|
75
|
-
"filter-count":
|
|
76
|
-
"is-selected":
|
|
77
|
-
onClick:
|
|
68
|
+
"is-dropdown-open": a.value,
|
|
69
|
+
"filter-count": e(m)[s.group],
|
|
70
|
+
"is-selected": a.value,
|
|
71
|
+
onClick: S
|
|
78
72
|
}, {
|
|
79
|
-
default:
|
|
80
|
-
|
|
73
|
+
default: o(() => [
|
|
74
|
+
u(w(s.label), 1)
|
|
81
75
|
]),
|
|
82
76
|
_: 1
|
|
83
77
|
}, 8, ["is-dropdown-open", "filter-count", "is-selected"])
|
|
84
78
|
]),
|
|
85
|
-
default:
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
79
|
+
default: o(() => [
|
|
80
|
+
r("div", q, [
|
|
81
|
+
r("div", H, [
|
|
82
|
+
r("div", {
|
|
89
83
|
class: "tw-h-full tw-overflow-auto tw-p-6",
|
|
90
|
-
onScroll:
|
|
91
|
-
(...
|
|
92
|
-
onScrollend:
|
|
84
|
+
onScroll: _[0] || (_[0] = //@ts-ignore
|
|
85
|
+
(...L) => e(v) && e(v)(...L)),
|
|
86
|
+
onScrollend: B
|
|
93
87
|
}, [
|
|
94
|
-
W(
|
|
88
|
+
W(t.$slots, "default")
|
|
95
89
|
], 32),
|
|
96
|
-
|
|
97
|
-
default:
|
|
98
|
-
|
|
90
|
+
c(j, { name: "fade" }, {
|
|
91
|
+
default: o(() => [
|
|
92
|
+
i.value ? (d(), J("div", K)) : k("", !0)
|
|
99
93
|
]),
|
|
100
94
|
_: 1
|
|
101
95
|
})
|
|
102
96
|
]),
|
|
103
|
-
|
|
104
|
-
|
|
97
|
+
r("footer", M, [
|
|
98
|
+
e(m)[s.group] ? (d(), y(F, {
|
|
105
99
|
key: 0,
|
|
106
100
|
secondary: "",
|
|
107
101
|
class: "tw-min-w-[100px]",
|
|
108
|
-
disabled:
|
|
109
|
-
onClick:
|
|
102
|
+
disabled: e(p),
|
|
103
|
+
onClick: V
|
|
110
104
|
}, {
|
|
111
|
-
default:
|
|
112
|
-
|
|
105
|
+
default: o(() => [
|
|
106
|
+
u(w(e(x)("ll.reset")), 1)
|
|
113
107
|
]),
|
|
114
108
|
_: 1
|
|
115
|
-
}, 8, ["disabled"])) :
|
|
116
|
-
|
|
109
|
+
}, 8, ["disabled"])) : k("", !0),
|
|
110
|
+
c(F, {
|
|
117
111
|
class: "tw-min-w-[100px]",
|
|
118
|
-
disabled:
|
|
119
|
-
onClick:
|
|
112
|
+
disabled: e(p),
|
|
113
|
+
onClick: A
|
|
120
114
|
}, {
|
|
121
|
-
default:
|
|
122
|
-
|
|
115
|
+
default: o(() => [
|
|
116
|
+
u(w(e(x)("ll.apply")), 1)
|
|
123
117
|
]),
|
|
124
118
|
_: 1
|
|
125
119
|
}, 8, ["disabled"])
|
|
@@ -131,6 +125,6 @@ const H = { class: "tw-flex tw-h-full tw-flex-col tw-rounded" }, K = { class: "t
|
|
|
131
125
|
}
|
|
132
126
|
});
|
|
133
127
|
export {
|
|
134
|
-
|
|
128
|
+
it as default
|
|
135
129
|
};
|
|
136
130
|
//# sourceMappingURL=FilterDropdown.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FilterDropdown.js","sources":["../src/components/FilterDropdown/FilterDropdown.vue"],"sourcesContent":["<script setup lang=\"ts\">\n import throttle from 'lodash-es/throttle';\n import { computed, inject, ref } from 'vue';\n\n import { t } from '../../locale';\n import Button from '../Button/Button.vue';\n import { DATA_VIEW_INJECTION } from '../DataView/DataView.vue';\n import { DATA_VIEW_FILTERS_UTILS_INJECTION } from '../DataViewFilters/DataViewFilters.keys';\n import type { OnApplyFilters } from '../DataViewFilters/DataViewFilters.types';\n import Dropdown from '../Dropdown/Dropdown.vue';\n import FilterChip from '../FilterChip/FilterChip.vue';\n\n export interface FilterDropdownProps {\n label: string;\n /** The name of a filter group */\n group: string;\n onApply?: OnApplyFilters;\n }\n const props = withDefaults(defineProps<FilterDropdownProps>(), {\n activeFilterCount: 0,\n onApply: () => undefined,\n });\n\n const emit = defineEmits<{\n (e: 'reset'): void;\n (e: 'dismiss'): void;\n }>();\n\n const { isLoading: isDataViewLoading } = inject(DATA_VIEW_INJECTION.key, DATA_VIEW_INJECTION.defaults);\n\n const dataViewFiltersUtils = inject(DATA_VIEW_FILTERS_UTILS_INJECTION.key);\n\n if (!dataViewFiltersUtils?.useFiltersInstance) {\n throw new Error(\n 'FilterDropdown must be used within a <DataViewFilters> that receives an instance of useFilters().',\n );\n }\n\n const { applyFilters, resetFilterGroup, activeFiltersCounts, undoWorkingFilters } =\n dataViewFiltersUtils.useFiltersInstance;\n\n const dropdownRef = ref<InstanceType<typeof Dropdown>>();\n const isOpen = computed(() => dropdownRef.value?.isActive);\n\n function onToggleButtonClick() {\n const wasOpen = isOpen.value;\n\n dropdownRef.value?.toggle();\n\n if (wasOpen) {\n undoWorkingFilters();\n emit('dismiss');\n }\n }\n\n function handleResetClick() {\n resetFilterGroup(props.group);\n emit('reset');\n dropdownRef.value?.dismiss();\n }\n\n async function handleApplyClick() {\n const { preventDismiss } = (await props.onApply?.()) || applyFilters() || {};\n\n if (!preventDismiss) {\n dropdownRef.value?.dismiss();\n }\n }\n\n function onDismiss() {\n undoWorkingFilters();\n emit('dismiss');\n }\n\n const showShadow = ref(false);\n const onScroll = throttle((event: Event) => {\n if (!event.target) return;\n\n if ((event.target as HTMLElement).scrollTop > 0) {\n showShadow.value = true;\n } else {\n showShadow.value = false;\n }\n }, 500);\n\n function onScrollEnd() {\n setTimeout(() => {\n showShadow.value = false;\n }, 2000);\n }\n</script>\n\n<template>\n <Dropdown\n ref=\"dropdownRef\"\n align=\"left\"\n class=\"stash-filter-dropdown\"\n data-test=\"stash-filter-dropdown\"\n fluid-content\n close-manually\n content-class=\"tw-w-full tw-max-w-[600px] tw-h-full tw-max-h-[400px]\"\n :offset=\"{ y: 6 }\"\n @dismiss=\"onDismiss\"\n >\n <template #toggle>\n <FilterChip\n class=\"tw-rounded-full\"\n has-dropdown\n :is-dropdown-open=\"isOpen\"\n :filter-count=\"activeFiltersCounts[props.group]\"\n :is-selected=\"isOpen\"\n @click=\"onToggleButtonClick\"\n >\n {{ props.label }}\n </FilterChip>\n </template>\n <template #default>\n <div class=\"tw-flex tw-h-full tw-flex-col tw-rounded\">\n <div class=\"tw-relative tw-grow tw-overflow-hidden tw-rounded-t\">\n <div class=\"tw-h-full tw-overflow-auto tw-p-6\" @scroll=\"onScroll\" @scrollend=\"onScrollEnd\">\n <slot></slot>\n </div>\n <Transition name=\"fade\">\n <div\n v-if=\"showShadow\"\n class=\"tw-pointer-events-none tw-absolute tw-inset-x-0 tw-bottom-0 tw-z-10 tw-h-[20px] tw-bg-scroll-shadow\"\n ></div>\n </Transition>\n </div>\n\n <footer\n class=\"tw-flex tw-justify-end tw-gap-6 tw-rounded-b tw-border tw-border-solid tw-border-x-ice-100 tw-border-b-ice-100 tw-border-t-ice-200 tw-bg-ice-100 tw-p-3.5\"\n >\n <Button\n v-if=\"activeFiltersCounts[props.group]\"\n secondary\n class=\"tw-min-w-[100px]\"\n :disabled=\"isDataViewLoading\"\n @click=\"handleResetClick\"\n >\n {{ t('ll.reset') }}\n </Button>\n <Button class=\"tw-min-w-[100px]\" :disabled=\"isDataViewLoading\" @click=\"handleApplyClick\">\n {{ t('ll.apply') }}\n </Button>\n </footer>\n </div>\n </template>\n </Dropdown>\n</template>\n"],"names":["props","__props","emit","__emit","isDataViewLoading","inject","DATA_VIEW_INJECTION","dataViewFiltersUtils","DATA_VIEW_FILTERS_UTILS_INJECTION","applyFilters","resetFilterGroup","activeFiltersCounts","undoWorkingFilters","dropdownRef","ref","isOpen","computed","
|
|
1
|
+
{"version":3,"file":"FilterDropdown.js","sources":["../src/components/FilterDropdown/FilterDropdown.vue"],"sourcesContent":["<script setup lang=\"ts\">\n import throttle from 'lodash-es/throttle';\n import { computed, inject, ref } from 'vue';\n\n import { t } from '../../locale';\n import Button from '../Button/Button.vue';\n import { DATA_VIEW_INJECTION } from '../DataView/DataView.vue';\n import { DATA_VIEW_FILTERS_UTILS_INJECTION } from '../DataViewFilters/DataViewFilters.keys';\n import type { OnApplyFilters } from '../DataViewFilters/DataViewFilters.types';\n import Dropdown from '../Dropdown/Dropdown.vue';\n import FilterChip from '../FilterChip/FilterChip.vue';\n\n export interface FilterDropdownProps {\n label: string;\n /** The name of a filter group */\n group: string;\n onApply?: OnApplyFilters;\n }\n const props = withDefaults(defineProps<FilterDropdownProps>(), {\n activeFilterCount: 0,\n onApply: () => undefined,\n });\n\n const emit = defineEmits<{\n (e: 'reset'): void;\n (e: 'dismiss'): void;\n }>();\n\n const { isLoading: isDataViewLoading } = inject(DATA_VIEW_INJECTION.key, DATA_VIEW_INJECTION.defaults);\n\n const dataViewFiltersUtils = inject(DATA_VIEW_FILTERS_UTILS_INJECTION.key);\n\n if (!dataViewFiltersUtils?.useFiltersInstance) {\n throw new Error(\n 'FilterDropdown must be used within a <DataViewFilters> that receives an instance of useFilters().',\n );\n }\n\n const { applyFilters, resetFilterGroup, activeFiltersCounts, undoWorkingFilters } =\n dataViewFiltersUtils.useFiltersInstance;\n\n const dropdownRef = ref<InstanceType<typeof Dropdown>>();\n const isOpen = computed(() => dropdownRef.value?.isActive);\n\n function onToggleButtonClick() {\n const wasOpen = isOpen.value;\n\n dropdownRef.value?.toggle();\n\n if (wasOpen) {\n undoWorkingFilters();\n emit('dismiss');\n }\n }\n\n function handleResetClick() {\n resetFilterGroup(props.group);\n emit('reset');\n dropdownRef.value?.dismiss();\n }\n\n async function handleApplyClick() {\n const { preventDismiss } = (await props.onApply?.()) || applyFilters() || {};\n\n if (!preventDismiss) {\n dropdownRef.value?.dismiss();\n }\n }\n\n function onDismiss() {\n undoWorkingFilters();\n emit('dismiss');\n }\n\n const showShadow = ref(false);\n const onScroll = throttle((event: Event) => {\n if (!event.target) return;\n\n if ((event.target as HTMLElement).scrollTop > 0) {\n showShadow.value = true;\n } else {\n showShadow.value = false;\n }\n }, 500);\n\n function onScrollEnd() {\n setTimeout(() => {\n showShadow.value = false;\n }, 2000);\n }\n</script>\n\n<template>\n <Dropdown\n ref=\"dropdownRef\"\n align=\"left\"\n class=\"stash-filter-dropdown\"\n data-test=\"stash-filter-dropdown\"\n fluid-content\n close-manually\n content-class=\"tw-w-full tw-max-w-[600px] tw-h-full tw-max-h-[400px]\"\n :offset=\"{ y: 6 }\"\n @dismiss=\"onDismiss\"\n >\n <template #toggle>\n <FilterChip\n class=\"tw-rounded-full\"\n has-dropdown\n :is-dropdown-open=\"isOpen\"\n :filter-count=\"activeFiltersCounts[props.group]\"\n :is-selected=\"isOpen\"\n @click=\"onToggleButtonClick\"\n >\n {{ props.label }}\n </FilterChip>\n </template>\n <template #default>\n <div class=\"tw-flex tw-h-full tw-flex-col tw-rounded\">\n <div class=\"tw-relative tw-grow tw-overflow-hidden tw-rounded-t\">\n <div class=\"tw-h-full tw-overflow-auto tw-p-6\" @scroll=\"onScroll\" @scrollend=\"onScrollEnd\">\n <slot></slot>\n </div>\n <Transition name=\"fade\">\n <div\n v-if=\"showShadow\"\n class=\"tw-pointer-events-none tw-absolute tw-inset-x-0 tw-bottom-0 tw-z-10 tw-h-[20px] tw-bg-scroll-shadow\"\n ></div>\n </Transition>\n </div>\n\n <footer\n class=\"tw-flex tw-justify-end tw-gap-6 tw-rounded-b tw-border tw-border-solid tw-border-x-ice-100 tw-border-b-ice-100 tw-border-t-ice-200 tw-bg-ice-100 tw-p-3.5\"\n >\n <Button\n v-if=\"activeFiltersCounts[props.group]\"\n secondary\n class=\"tw-min-w-[100px]\"\n :disabled=\"isDataViewLoading\"\n @click=\"handleResetClick\"\n >\n {{ t('ll.reset') }}\n </Button>\n <Button class=\"tw-min-w-[100px]\" :disabled=\"isDataViewLoading\" @click=\"handleApplyClick\">\n {{ t('ll.apply') }}\n </Button>\n </footer>\n </div>\n </template>\n </Dropdown>\n</template>\n"],"names":["props","__props","emit","__emit","isDataViewLoading","inject","DATA_VIEW_INJECTION","dataViewFiltersUtils","DATA_VIEW_FILTERS_UTILS_INJECTION","applyFilters","resetFilterGroup","activeFiltersCounts","undoWorkingFilters","dropdownRef","ref","isOpen","computed","onToggleButtonClick","wasOpen","handleResetClick","handleApplyClick","preventDismiss","onDismiss","showShadow","onScroll","throttle","event","onScrollEnd","_createBlock","Dropdown","_createVNode","FilterChip","_unref","_createTextVNode","_toDisplayString","_createElementVNode","_hoisted_1","_hoisted_2","_cache","args","_renderSlot","_ctx","_Transition","_openBlock","_createElementBlock","_hoisted_3","_hoisted_4","Button","t"],"mappings":"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"}
|