@ironsource/shared-ui 2.0.0-rc.0 → 2.0.0-rc.1
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/AddFilterButton.vue_vue_type_style_index_0_scoped_true_lang.css +1 -1
- package/AppTrigger.vue_vue_type_style_index_0_scoped_true_lang.css +1 -1
- package/AutocompleteDropdown.vue_vue_type_style_index_0_scoped_true_lang.css +1 -1
- package/AutocompleteInput.vue_vue_type_style_index_0_scoped_true_lang.css +1 -1
- package/Banner.vue_vue_type_style_index_0_scoped_true_lang.css +1 -1
- package/Button.vue_vue_type_style_index_0_scoped_true_lang.css +1 -1
- package/ButtonBase.vue_vue_type_style_index_0_scoped_true_lang.css +1 -1
- package/ButtonV4.vue_vue_type_style_index_0_scoped_true_lang.css +1 -0
- package/CalendarMonth.vue_vue_type_style_index_0_scoped_true_lang.css +1 -1
- package/Chip.vue_vue_type_style_index_0_scoped_true_lang.css +1 -1
- package/ChipV4.vue_vue_type_style_index_0_scoped_true_lang.css +1 -0
- package/DateRange.vue_vue_type_style_index_0_scoped_true_lang.css +1 -1
- package/Dialog.vue_vue_type_style_index_0_scoped_true_lang.css +1 -1
- package/Dropdown.vue_vue_type_style_index_0_scoped_true_lang.css +1 -1
- package/Dropdown.vue_vue_type_style_index_1_lang.css +1 -1
- package/DropdownV4.vue_vue_type_style_index_0_scoped_true_lang.css +1 -0
- package/DropdownV4.vue_vue_type_style_index_1_lang.css +1 -0
- package/Editable.vue_vue_type_style_index_0_scoped_true_lang.css +1 -1
- package/EmptyState.vue_vue_type_style_index_0_scoped_true_lang.css +1 -1
- package/FilterDropdown.vue_vue_type_style_index_0_scoped_true_lang.css +1 -1
- package/FilterSearchInput.vue_vue_type_style_index_0_scoped_true_lang.css +1 -1
- package/FloatingToolbar.vue_vue_type_style_index_0_scoped_true_lang.css +1 -1
- package/GroupOption.vue_vue_type_style_index_0_scoped_true_lang.css +1 -1
- package/IconButton.vue_vue_type_style_index_0_scoped_true_lang.css +1 -1
- package/IncludeExclude.vue_vue_type_style_index_0_scoped_true_lang.css +1 -1
- package/IncludeExcludeAppTrigger.vue_vue_type_style_index_0_scoped_true_lang.css +1 -1
- package/IncludeExcludeChipFilter.vue_vue_type_style_index_0_scoped_true_lang.css +1 -1
- package/IncludeExcludeDragDrop.vue_vue_type_style_index_0_scoped_true_lang.css +1 -1
- package/IncludeExcludeOptionDraggable.vue_vue_type_style_index_0_scoped_true_lang.css +1 -1
- package/Input.vue_vue_type_style_index_0_scoped_true_lang.css +1 -1
- package/Label.vue_vue_type_style_index_0_scoped_true_lang.css +1 -1
- package/Menu.vue_vue_type_style_index_1_lang.css +1 -1
- package/MenuItem.vue_vue_type_style_index_0_scoped_true_lang.css +1 -1
- package/Option.vue_vue_type_style_index_0_scoped_true_lang.css +1 -1
- package/Popover.vue_vue_type_style_index_0_lang.css +1 -1
- package/ScrollButton.vue_vue_type_style_index_0_scoped_true_lang.css +1 -1
- package/Search.vue_vue_type_style_index_0_scoped_true_lang.css +1 -1
- package/SearchInput.vue_vue_type_style_index_0_scoped_true_lang.css +1 -1
- package/SearchV4.vue_vue_type_style_index_0_scoped_true_lang.css +1 -0
- package/Snackbar.vue_vue_type_style_index_0_scoped_true_lang.css +1 -1
- package/Switch.vue_vue_type_style_index_0_scoped_true_lang.css +1 -1
- package/SwitchV4.vue_vue_type_style_index_0_scoped_true_lang.css +1 -0
- package/Table.vue_vue_type_style_index_0_scoped_true_lang.css +1 -1
- package/Table.vue_vue_type_style_index_1_lang.css +1 -1
- package/Tabs.vue_vue_type_style_index_0_scoped_true_lang.css +1 -1
- package/TextArea.vue_vue_type_style_index_0_scoped_true_lang.css +1 -1
- package/Toggle.vue_vue_type_style_index_0_scoped_true_lang.css +1 -1
- package/Typography.vue_vue_type_style_index_0_scoped_true_lang.css +1 -0
- package/commonCssVariables.scss +623 -0
- package/components/ThemeWrapper/ThemeStrore.d.ts +4 -0
- package/components/ThemeWrapper/ThemeWrapper.vue.d.ts +15 -0
- package/components/appTrigger/AppTrigger.vue.js +4 -4
- package/components/autocompleteDropdown/AutocompleteDropdown.vue.js +4 -3
- package/components/autocompleteDropdown/AutocompleteInput.vue.js +2 -2
- package/components/autocompleteDropdown/GroupOption.vue.js +2 -2
- package/components/button/common/ButtonBase.vue.d.ts +48 -0
- package/components/button/{ButtonBase.vue.js → common/ButtonBase.vue.js} +7 -7
- package/components/button/{Button.vue.d.ts → common/ButtonSuper.vue.d.ts} +3 -3
- package/components/button/{ButtonBase.vue.d.ts → v3/Button.vue.d.ts} +20 -4
- package/components/button/v3/Button.vue.js +102 -0
- package/components/button/{IconButton.vue.js → v3/IconButton.vue.js} +7 -7
- package/components/button/{ScrollButton.vue.js → v3/ScrollButton.vue.js} +6 -6
- package/components/button/v3/index.d.ts +79 -0
- package/components/button/v4/ButtonV4.vue.d.ts +57 -0
- package/components/button/v4/ButtonV4.vue.js +99 -0
- package/components/button/{index.d.ts → v4/index.d.ts} +33 -76
- package/components/button/v4/index.vue.js +6 -0
- package/components/checkbox/Checkbox.vue.d.ts +1 -1
- package/components/checkbox/index.d.ts +9 -9
- package/components/chip/{Chip.vue.js → v3/Chip.vue.js} +5 -5
- package/components/chip/v4/ChipV4.vue.d.ts +48 -0
- package/components/chip/v4/ChipV4.vue.js +76 -0
- package/components/chip/v4/index.d.ts +63 -0
- package/components/chip/v4/index.vue.js +6 -0
- package/components/dateRange/CalendarMonth.vue.js +3 -3
- package/components/dateRange/DateRange.vue.js +4 -4
- package/components/dialog/Dialog.vue.d.ts +1 -1
- package/components/dialog/Dialog.vue.js +8 -7
- package/components/dialog/index.d.ts +11 -11
- package/components/dropdown/common/Dropdown.common.d.ts +36 -0
- package/components/dropdown/common/Dropdown.common.vue.js +456 -0
- package/components/dropdown/{Label.vue.js → common/Label.vue.js} +5 -5
- package/components/dropdown/{Option.vue.js → common/Option.vue.js} +7 -7
- package/components/dropdown/{SearchInput.vue.js → common/SearchInput.vue.js} +8 -7
- package/components/dropdown/{Dropdown.vue.d.ts → v3/Dropdown.vue.d.ts} +15 -5
- package/components/dropdown/v3/Dropdown.vue.js +391 -0
- package/components/dropdown/{index.d.ts → v3/index.d.ts} +42 -20
- package/components/dropdown/v3/index.vue.js +12 -0
- package/components/dropdown/v4/DropdownV4.vue.d.ts +223 -0
- package/components/dropdown/v4/DropdownV4.vue.js +408 -0
- package/components/dropdown/v4/index.d.ts +433 -0
- package/components/dropdown/v4/index.vue.js +6 -0
- package/components/emptyState/EmptyState.vue.d.ts +1 -1
- package/components/emptyState/EmptyState.vue.js +4 -4
- package/components/emptyState/index.d.ts +11 -11
- package/components/filterDropdown/AddFilterButton.vue.js +2 -2
- package/components/filterDropdown/FilterDropdown.vue.js +5 -4
- package/components/filtersPanel/Filter.d.ts +1 -1
- package/components/filtersPanel/FilterSearchInput.vue.js +6 -6
- package/components/floatingToolbar/FloatingToolbar.vue.js +6 -5
- package/components/includeExclude/IncludeExclude.vue.d.ts +1 -1
- package/components/includeExclude/IncludeExclude.vue.js +4 -4
- package/components/includeExclude/IncludeExcludeAppHeader.vue.js +2 -2
- package/components/includeExclude/IncludeExcludeAppTrigger.vue.js +4 -4
- package/components/includeExclude/IncludeExcludeChipFilter.vue.js +3 -3
- package/components/includeExclude/IncludeExcludeDragDrop.vue.d.ts +1 -1
- package/components/includeExclude/IncludeExcludeDragDrop.vue.js +4 -4
- package/components/includeExclude/index.d.ts +22 -22
- package/components/input/Input.vue.d.ts +2 -2
- package/components/input/Input.vue.js +4 -4
- package/components/input/index.d.ts +16 -16
- package/components/menu/Menu.vue.d.ts +1 -1
- package/components/menu/index.d.ts +5 -5
- package/components/search/common/Search.common.d.ts +9 -0
- package/components/search/common/Search.common.vue.js +52 -0
- package/components/search/{Search.vue.js → v3/Search.vue.js} +19 -46
- package/components/search/{index.d.ts → v3/index.d.ts} +3 -3
- package/components/search/v4/SearchV4.vue.d.ts +51 -0
- package/components/search/v4/SearchV4.vue.js +70 -0
- package/components/search/v4/index.d.ts +72 -0
- package/components/search/v4/index.vue.js +6 -0
- package/components/snackbar/Snackbar.vue.d.ts +1 -1
- package/components/snackbar/Snackbar.vue.js +6 -5
- package/components/switch/{Switch.vue.js → v3/Switch.vue.js} +5 -5
- package/components/switch/v4/SwitchV4.vue.d.ts +37 -0
- package/components/switch/v4/SwitchV4.vue.js +87 -0
- package/components/switch/v4/index.d.ts +46 -0
- package/components/switch/v4/index.vue.js +6 -0
- package/components/table/Table.vue.js +3 -3
- package/components/table-cells/Editable.vue.js +1 -1
- package/components/tooltip/Tooltip.vue.d.ts +1 -1
- package/components/tooltip/index.d.ts +5 -5
- package/components/typography/index.d.ts +9 -9
- package/components/typography/v4/Typography.vue.d.ts +34 -0
- package/components/typography/v4/Typography.vue.js +68 -0
- package/components/typography/v4/index.d.ts +23 -0
- package/components/typography/v4/index.vue.js +6 -0
- package/design-foundation.stories/border-radius/BorderRadiusData.d.ts +5 -0
- package/design-foundation.stories/border-radius/BorderRadiusWrapper.vue.d.ts +4 -0
- package/design-foundation.stories/border-radius/index.d.ts +1 -0
- package/design-foundation.stories/colors/ColorsData.d.ts +114 -0
- package/design-foundation.stories/colors/ColorsStoryWrapper.vue.d.ts +3 -0
- package/design-foundation.stories/colors/index.d.ts +1 -0
- package/design-foundation.stories/elevations/ElevationStoryWrapper.vue.d.ts +4 -0
- package/design-foundation.stories/elevations/ElevationsData.d.ts +10 -0
- package/design-foundation.stories/elevations/index.d.ts +1 -0
- package/design-foundation.stories/typography/TypographyData.d.ts +7 -0
- package/design-foundation.stories/typography/TypographyStoryWrapper.vue.d.ts +3 -0
- package/design-foundation.stories/typography/index.d.ts +1 -0
- package/index.d.ts +1532 -5
- package/index.vue.js +28 -16
- package/package.json +39 -14
- package/styleguide.scss +77 -78
- package/styles/v4/border-radius.css +8 -0
- package/styles/v4/colors.css +100 -0
- package/styles/v4/elevations.css +10 -0
- package/styles/v4/fonts.css +1 -0
- package/styles/v4/fonts.css.map +1 -0
- package/styles/v4/fonts.scss +258 -0
- package/components/button/Button.vue.js +0 -65
- package/components/dropdown/Dropdown.vue.js +0 -785
- package/components/dropdown/index.vue.js +0 -12
- /package/components/button/{IconButton.vue.d.ts → v3/IconButton.vue.d.ts} +0 -0
- /package/components/button/{ScrollButton.vue.d.ts → v3/ScrollButton.vue.d.ts} +0 -0
- /package/components/button/{index.vue.js → v3/index.vue.js} +0 -0
- /package/components/chip/{Chip.vue.d.ts → v3/Chip.vue.d.ts} +0 -0
- /package/components/chip/{index.d.ts → v3/index.d.ts} +0 -0
- /package/components/chip/{index.vue.js → v3/index.vue.js} +0 -0
- /package/components/dropdown/{DropdownContext.d.ts → common/DropdownContext.d.ts} +0 -0
- /package/components/dropdown/{DropdownContext.vue.js → common/DropdownContext.vue.js} +0 -0
- /package/components/dropdown/{Label.vue.d.ts → common/Label.vue.d.ts} +0 -0
- /package/components/dropdown/{Option.vue.d.ts → common/Option.vue.d.ts} +0 -0
- /package/components/dropdown/{SearchInput.vue.d.ts → common/SearchInput.vue.d.ts} +0 -0
- /package/components/search/{Search.vue.d.ts → v3/Search.vue.d.ts} +0 -0
- /package/components/search/{index.vue.js → v3/index.vue.js} +0 -0
- /package/components/switch/{Switch.vue.d.ts → v3/Switch.vue.d.ts} +0 -0
- /package/components/switch/{index.d.ts → v3/index.d.ts} +0 -0
- /package/components/switch/{index.vue.js → v3/index.vue.js} +0 -0
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { defineComponent, ref, computed, watch, nextTick, openBlock, createBlock, unref, mergeProps, withModifiers, withCtx, createVNode, renderSlot, createTextVNode, toDisplayString } from 'vue';
|
|
2
|
-
import Dropdown from '../dropdown/Dropdown.vue.js';
|
|
2
|
+
import Dropdown from '../dropdown/v3/Dropdown.vue.js';
|
|
3
3
|
/* empty css */import _export_sfc from '../../_virtual/plugin-vue_export-helper.vue.js';
|
|
4
4
|
/* empty css *//* empty css *//* empty css */import '@vue/shared';
|
|
5
|
-
/* empty css
|
|
5
|
+
/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import 'floating-vue';
|
|
6
|
+
/* empty css *//* empty css *//* empty css */import GroupOption from './GroupOption.vue.js';
|
|
6
7
|
import AutocompleteInput from './AutocompleteInput.vue.js';
|
|
7
8
|
import { DEFAULT_PLACEHOLDER, GROUP_OPTION_FLAG } from './consts.vue.js';
|
|
8
9
|
import { useKeyboardNavigation } from './useKeyboardNavigation.vue.js';
|
|
@@ -144,6 +145,6 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
144
145
|
};
|
|
145
146
|
}
|
|
146
147
|
});
|
|
147
|
-
var AutocompleteDropdown = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-
|
|
148
|
+
var AutocompleteDropdown = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-74e20077"]]);
|
|
148
149
|
|
|
149
150
|
export { AutocompleteDropdown as default };
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { defineComponent, ref, computed, watch, openBlock, createElementBlock, normalizeClass, unref, withModifiers, Fragment, renderList, renderSlot, createVNode, withCtx, createTextVNode, toDisplayString, createElementVNode } from 'vue';
|
|
2
2
|
import Icon from '../icon/Icon.vue.js';
|
|
3
3
|
import Text from '../typography/Text.vue.js';
|
|
4
|
-
import { useDropdownContext } from '../dropdown/DropdownContext.vue.js';
|
|
4
|
+
import { useDropdownContext } from '../dropdown/common/DropdownContext.vue.js';
|
|
5
5
|
import { DEFAULT_PLACEHOLDER } from './consts.vue.js';
|
|
6
6
|
import { AutocompleteInputTestIdModifiers } from '../../testids/index.vue.js';
|
|
7
7
|
/* empty css */import _export_sfc from '../../_virtual/plugin-vue_export-helper.vue.js';
|
|
@@ -94,6 +94,6 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
94
94
|
};
|
|
95
95
|
}
|
|
96
96
|
});
|
|
97
|
-
var AutocompleteInput = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-
|
|
97
|
+
var AutocompleteInput = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-a73b488c"]]);
|
|
98
98
|
|
|
99
99
|
export { AutocompleteInput as default };
|
|
@@ -2,7 +2,7 @@ import { defineComponent, ref, onMounted, onUnmounted, openBlock, createElementB
|
|
|
2
2
|
import { NOOP } from '@vue/shared';
|
|
3
3
|
/* empty css */import _export_sfc from '../../_virtual/plugin-vue_export-helper.vue.js';
|
|
4
4
|
import Text from '../typography/Text.vue.js';
|
|
5
|
-
import { useDropdownContext } from '../dropdown/DropdownContext.vue.js';
|
|
5
|
+
import { useDropdownContext } from '../dropdown/common/DropdownContext.vue.js';
|
|
6
6
|
import { useId } from '../../composables/useId.vue.js';
|
|
7
7
|
/* empty css */
|
|
8
8
|
import "../../GroupOption.vue_vue_type_style_index_0_scoped_true_lang.css";
|
|
@@ -37,6 +37,6 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
37
37
|
};
|
|
38
38
|
}
|
|
39
39
|
});
|
|
40
|
-
var GroupOption = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-
|
|
40
|
+
var GroupOption = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-52c8859b"]]);
|
|
41
41
|
|
|
42
42
|
export { GroupOption as default };
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
declare const _default: import("vue").DefineComponent<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<{
|
|
2
|
+
size?: 'xs' | 'sm' | 'md' | 'lg' | 'small' | 'medium' | 'large' | 'extraLarge';
|
|
3
|
+
variant?: 'solid' | 'border' | 'borderless' | 'ghost' | 'link' | 'colorized' | 'contained' | 'outlined' | 'text';
|
|
4
|
+
theme?: 'secondary' | 'third' | 'primary' | 'default' | 'danger' | 'info' | 'success' | 'warning';
|
|
5
|
+
loading?: boolean;
|
|
6
|
+
isTruncated?: boolean;
|
|
7
|
+
strong?: boolean;
|
|
8
|
+
}>, {
|
|
9
|
+
size: string;
|
|
10
|
+
variant: string;
|
|
11
|
+
theme: string;
|
|
12
|
+
loading: boolean;
|
|
13
|
+
strong: boolean;
|
|
14
|
+
}>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<{
|
|
15
|
+
size?: 'xs' | 'sm' | 'md' | 'lg' | 'small' | 'medium' | 'large' | 'extraLarge';
|
|
16
|
+
variant?: 'solid' | 'border' | 'borderless' | 'ghost' | 'link' | 'colorized' | 'contained' | 'outlined' | 'text';
|
|
17
|
+
theme?: 'secondary' | 'third' | 'primary' | 'default' | 'danger' | 'info' | 'success' | 'warning';
|
|
18
|
+
loading?: boolean;
|
|
19
|
+
isTruncated?: boolean;
|
|
20
|
+
strong?: boolean;
|
|
21
|
+
}>, {
|
|
22
|
+
size: string;
|
|
23
|
+
variant: string;
|
|
24
|
+
theme: string;
|
|
25
|
+
loading: boolean;
|
|
26
|
+
strong: boolean;
|
|
27
|
+
}>>>, {
|
|
28
|
+
strong: boolean;
|
|
29
|
+
theme: 'secondary' | 'third' | 'primary' | 'default' | 'danger' | 'info' | 'success' | 'warning';
|
|
30
|
+
size: 'xs' | 'sm' | 'md' | 'lg' | 'small' | 'medium' | 'large' | 'extraLarge';
|
|
31
|
+
variant: 'solid' | 'border' | 'borderless' | 'ghost' | 'link' | 'colorized' | 'contained' | 'outlined' | 'text';
|
|
32
|
+
loading: boolean;
|
|
33
|
+
}>;
|
|
34
|
+
export default _default;
|
|
35
|
+
type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
|
|
36
|
+
type __VLS_TypePropsToRuntimeProps<T> = {
|
|
37
|
+
[K in keyof T]-?: {} extends Pick<T, K> ? {
|
|
38
|
+
type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
|
|
39
|
+
} : {
|
|
40
|
+
type: import('vue').PropType<T[K]>;
|
|
41
|
+
required: true;
|
|
42
|
+
};
|
|
43
|
+
};
|
|
44
|
+
type __VLS_WithDefaults<P, D> = {
|
|
45
|
+
[K in keyof Pick<P, keyof P>]: K extends keyof D ? P[K] & {
|
|
46
|
+
default: D[K];
|
|
47
|
+
} : P[K];
|
|
48
|
+
};
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { defineComponent, computed, openBlock, createElementBlock, mergeProps, renderSlot, createVNode, unref, withCtx, createCommentVNode } from 'vue';
|
|
2
|
-
/* empty css
|
|
3
|
-
import Text from '
|
|
4
|
-
import Icon from '
|
|
5
|
-
import { sizeToFont } from '
|
|
6
|
-
import LoaderDotsIcon from '
|
|
2
|
+
/* empty css */import _export_sfc from '../../../_virtual/plugin-vue_export-helper.vue.js';
|
|
3
|
+
import Text from '../../typography/Text.vue.js';
|
|
4
|
+
import Icon from '../../icon/Icon.vue.js';
|
|
5
|
+
import { sizeToFont } from '../consts.vue.js';
|
|
6
|
+
import LoaderDotsIcon from '../icon/LoaderDotsIcon.vue.js';
|
|
7
7
|
/* empty css */
|
|
8
|
-
import "
|
|
8
|
+
import "../../../ButtonBase.vue_vue_type_style_index_0_scoped_true_lang.css";
|
|
9
9
|
const _hoisted_1 = { key: 0 };
|
|
10
10
|
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
11
11
|
__name: "ButtonBase",
|
|
@@ -58,6 +58,6 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
58
58
|
};
|
|
59
59
|
}
|
|
60
60
|
});
|
|
61
|
-
var ButtonBase = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-
|
|
61
|
+
var ButtonBase = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-1ca3a54c"]]);
|
|
62
62
|
|
|
63
63
|
export { ButtonBase as default };
|
|
@@ -2,7 +2,7 @@ import { IconName } from '@/components/icon';
|
|
|
2
2
|
declare const _default: import("vue").DefineComponent<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<{
|
|
3
3
|
leftIconName?: IconName;
|
|
4
4
|
rightIconName?: IconName;
|
|
5
|
-
size?: 'sm' | 'md' | 'lg';
|
|
5
|
+
size?: 'sm' | 'md' | 'lg' | 'small' | 'medium' | 'large' | 'extraLarge';
|
|
6
6
|
testId?: string;
|
|
7
7
|
}>, {
|
|
8
8
|
leftIconName: any;
|
|
@@ -12,7 +12,7 @@ declare const _default: import("vue").DefineComponent<__VLS_WithDefaults<__VLS_T
|
|
|
12
12
|
}>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<{
|
|
13
13
|
leftIconName?: IconName;
|
|
14
14
|
rightIconName?: IconName;
|
|
15
|
-
size?: 'sm' | 'md' | 'lg';
|
|
15
|
+
size?: 'sm' | 'md' | 'lg' | 'small' | 'medium' | 'large' | 'extraLarge';
|
|
16
16
|
testId?: string;
|
|
17
17
|
}>, {
|
|
18
18
|
leftIconName: any;
|
|
@@ -20,7 +20,7 @@ declare const _default: import("vue").DefineComponent<__VLS_WithDefaults<__VLS_T
|
|
|
20
20
|
size: string;
|
|
21
21
|
testId: string;
|
|
22
22
|
}>>>, {
|
|
23
|
-
size: 'sm' | 'md' | 'lg';
|
|
23
|
+
size: 'sm' | 'md' | 'lg' | 'small' | 'medium' | 'large' | 'extraLarge';
|
|
24
24
|
testId: string;
|
|
25
25
|
leftIconName: IconName;
|
|
26
26
|
rightIconName: IconName;
|
|
@@ -1,35 +1,51 @@
|
|
|
1
|
+
import { IconName } from '@/components/icon';
|
|
1
2
|
declare const _default: import("vue").DefineComponent<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<{
|
|
2
|
-
size?: '
|
|
3
|
+
size?: 'sm' | 'md' | 'lg';
|
|
3
4
|
variant?: 'solid' | 'border' | 'borderless' | 'ghost' | 'link' | 'colorized';
|
|
4
5
|
theme?: 'primary' | 'secondary' | 'third' | 'danger';
|
|
5
6
|
loading?: boolean;
|
|
6
7
|
isTruncated?: boolean;
|
|
7
8
|
strong?: boolean;
|
|
9
|
+
leftIconName?: IconName;
|
|
10
|
+
rightIconName?: IconName;
|
|
11
|
+
testId?: string;
|
|
8
12
|
}>, {
|
|
9
13
|
size: string;
|
|
10
14
|
variant: string;
|
|
11
15
|
theme: string;
|
|
12
16
|
loading: boolean;
|
|
13
17
|
strong: boolean;
|
|
18
|
+
leftIconName: any;
|
|
19
|
+
rightIconName: any;
|
|
20
|
+
testId: string;
|
|
14
21
|
}>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<{
|
|
15
|
-
size?: '
|
|
22
|
+
size?: 'sm' | 'md' | 'lg';
|
|
16
23
|
variant?: 'solid' | 'border' | 'borderless' | 'ghost' | 'link' | 'colorized';
|
|
17
24
|
theme?: 'primary' | 'secondary' | 'third' | 'danger';
|
|
18
25
|
loading?: boolean;
|
|
19
26
|
isTruncated?: boolean;
|
|
20
27
|
strong?: boolean;
|
|
28
|
+
leftIconName?: IconName;
|
|
29
|
+
rightIconName?: IconName;
|
|
30
|
+
testId?: string;
|
|
21
31
|
}>, {
|
|
22
32
|
size: string;
|
|
23
33
|
variant: string;
|
|
24
34
|
theme: string;
|
|
25
35
|
loading: boolean;
|
|
26
36
|
strong: boolean;
|
|
37
|
+
leftIconName: any;
|
|
38
|
+
rightIconName: any;
|
|
39
|
+
testId: string;
|
|
27
40
|
}>>>, {
|
|
28
|
-
size: 'xs' | 'sm' | 'md' | 'lg';
|
|
29
41
|
strong: boolean;
|
|
30
|
-
variant: 'solid' | 'border' | 'borderless' | 'ghost' | 'link' | 'colorized';
|
|
31
42
|
theme: 'primary' | 'secondary' | 'third' | 'danger';
|
|
43
|
+
size: 'sm' | 'md' | 'lg';
|
|
44
|
+
testId: string;
|
|
45
|
+
variant: 'solid' | 'border' | 'borderless' | 'ghost' | 'link' | 'colorized';
|
|
32
46
|
loading: boolean;
|
|
47
|
+
leftIconName: IconName;
|
|
48
|
+
rightIconName: IconName;
|
|
33
49
|
}>;
|
|
34
50
|
export default _default;
|
|
35
51
|
type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
import { defineComponent, computed, openBlock, createElementBlock, mergeProps, renderSlot, createVNode, unref, createSlots, withCtx, createElementVNode, normalizeClass, createBlock, createCommentVNode } from 'vue';
|
|
2
|
+
/* empty css */import _export_sfc from '../../../_virtual/plugin-vue_export-helper.vue.js';
|
|
3
|
+
import Text from '../../typography/Text.vue.js';
|
|
4
|
+
import Icon from '../../icon/Icon.vue.js';
|
|
5
|
+
import { sizeToFont, iconSizeMap } from '../consts.vue.js';
|
|
6
|
+
import LoaderDotsIcon from '../icon/LoaderDotsIcon.vue.js';
|
|
7
|
+
/* empty css */
|
|
8
|
+
import "../../../Button.vue_vue_type_style_index_0_scoped_true_lang.css";
|
|
9
|
+
const _hoisted_1 = ["data-testid"];
|
|
10
|
+
const _hoisted_2 = { key: 0 };
|
|
11
|
+
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
12
|
+
__name: "Button",
|
|
13
|
+
props: {
|
|
14
|
+
size: { default: "md" },
|
|
15
|
+
variant: { default: "solid" },
|
|
16
|
+
theme: { default: "primary" },
|
|
17
|
+
loading: { type: Boolean, default: false },
|
|
18
|
+
isTruncated: { type: Boolean },
|
|
19
|
+
strong: { type: Boolean, default: true },
|
|
20
|
+
leftIconName: { default: null },
|
|
21
|
+
rightIconName: { default: null },
|
|
22
|
+
testId: { default: "" }
|
|
23
|
+
},
|
|
24
|
+
setup(__props) {
|
|
25
|
+
const props = __props;
|
|
26
|
+
const loaderWidthLargeInPixel = 32;
|
|
27
|
+
const loaderWidthMedSmallInPixel = 24;
|
|
28
|
+
const loaderWidth = computed(
|
|
29
|
+
() => props.size === "lg" ? loaderWidthLargeInPixel + "px" : loaderWidthMedSmallInPixel + "px"
|
|
30
|
+
);
|
|
31
|
+
const textSize = computed(() => sizeToFont[props.size]);
|
|
32
|
+
const computedIconWidth = computed(() => `${iconSizeMap[props.size]}px`);
|
|
33
|
+
return (_ctx, _cache) => {
|
|
34
|
+
return openBlock(), createElementBlock("button", mergeProps({
|
|
35
|
+
class: [[
|
|
36
|
+
__props.size,
|
|
37
|
+
__props.theme,
|
|
38
|
+
__props.variant,
|
|
39
|
+
{ loading: __props.loading },
|
|
40
|
+
{
|
|
41
|
+
"with-left-icon": !!__props.leftIconName,
|
|
42
|
+
"with-right-icon": !!__props.rightIconName
|
|
43
|
+
}
|
|
44
|
+
], "button-wrap"],
|
|
45
|
+
"data-testid": props.testId
|
|
46
|
+
}, _ctx.$attrs), [
|
|
47
|
+
!__props.loading ? (openBlock(), createElementBlock("span", _hoisted_2, [
|
|
48
|
+
renderSlot(_ctx.$slots, "content", {}, () => [
|
|
49
|
+
createVNode(unref(Text), {
|
|
50
|
+
size: unref(textSize),
|
|
51
|
+
strong: __props.strong,
|
|
52
|
+
class: "content"
|
|
53
|
+
}, createSlots({
|
|
54
|
+
default: withCtx(() => [
|
|
55
|
+
createElementVNode("div", {
|
|
56
|
+
class: normalizeClass({
|
|
57
|
+
flex: __props.leftIconName || __props.rightIconName
|
|
58
|
+
})
|
|
59
|
+
}, [
|
|
60
|
+
__props.leftIconName ? (openBlock(), createBlock(unref(Icon), {
|
|
61
|
+
key: 0,
|
|
62
|
+
name: __props.leftIconName,
|
|
63
|
+
"font-size": unref(computedIconWidth)
|
|
64
|
+
}, null, 8, ["name", "font-size"])) : createCommentVNode("", true),
|
|
65
|
+
renderSlot(_ctx.$slots, "default", {}, void 0, true),
|
|
66
|
+
__props.rightIconName ? (openBlock(), createBlock(unref(Icon), {
|
|
67
|
+
key: 1,
|
|
68
|
+
name: __props.rightIconName,
|
|
69
|
+
"font-size": unref(computedIconWidth)
|
|
70
|
+
}, null, 8, ["name", "font-size"])) : createCommentVNode("", true)
|
|
71
|
+
], 2)
|
|
72
|
+
]),
|
|
73
|
+
_: 2
|
|
74
|
+
}, [
|
|
75
|
+
_ctx.$slots.loader ? {
|
|
76
|
+
name: "loader",
|
|
77
|
+
fn: withCtx(() => [
|
|
78
|
+
renderSlot(_ctx.$slots, "loader", {}, void 0, true)
|
|
79
|
+
]),
|
|
80
|
+
key: "0"
|
|
81
|
+
} : void 0
|
|
82
|
+
]), 1032, ["size", "strong"])
|
|
83
|
+
], true)
|
|
84
|
+
])) : createCommentVNode("", true),
|
|
85
|
+
__props.loading ? renderSlot(_ctx.$slots, "loader", { key: 1 }, () => [
|
|
86
|
+
createVNode(unref(Icon), {
|
|
87
|
+
"font-size": unref(loaderWidth),
|
|
88
|
+
class: "loading"
|
|
89
|
+
}, {
|
|
90
|
+
default: withCtx(() => [
|
|
91
|
+
createVNode(LoaderDotsIcon)
|
|
92
|
+
]),
|
|
93
|
+
_: 1
|
|
94
|
+
}, 8, ["font-size"])
|
|
95
|
+
], true) : createCommentVNode("", true)
|
|
96
|
+
], 16, _hoisted_1);
|
|
97
|
+
};
|
|
98
|
+
}
|
|
99
|
+
});
|
|
100
|
+
var Button = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-4bb422e4"]]);
|
|
101
|
+
|
|
102
|
+
export { Button as default };
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { defineComponent, computed, openBlock, createBlock, mergeProps, withCtx, createElementVNode, normalizeClass, renderSlot, createVNode, unref } from 'vue';
|
|
2
|
-
import Icon from '
|
|
3
|
-
import ButtonBase from '
|
|
4
|
-
import { loaderSizeMap } from '
|
|
5
|
-
import LoaderCircleIcon from '
|
|
6
|
-
/* empty css */import _export_sfc from '
|
|
2
|
+
import Icon from '../../icon/Icon.vue.js';
|
|
3
|
+
import ButtonBase from '../common/ButtonBase.vue.js';
|
|
4
|
+
import { loaderSizeMap } from '../consts.vue.js';
|
|
5
|
+
import LoaderCircleIcon from '../icon/LoaderCircleIcon.vue.js';
|
|
6
|
+
/* empty css */import _export_sfc from '../../../_virtual/plugin-vue_export-helper.vue.js';
|
|
7
7
|
|
|
8
|
-
import "
|
|
8
|
+
import "../../../IconButton.vue_vue_type_style_index_0_scoped_true_lang.css";
|
|
9
9
|
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
10
10
|
__name: "IconButton",
|
|
11
11
|
props: {
|
|
@@ -46,6 +46,6 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
46
46
|
};
|
|
47
47
|
}
|
|
48
48
|
});
|
|
49
|
-
var IconButton = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-
|
|
49
|
+
var IconButton = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-e3fa1ea6"]]);
|
|
50
50
|
|
|
51
51
|
export { IconButton as default };
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { defineComponent, openBlock, createBlock, unref, normalizeClass, withCtx, createVNode, createCommentVNode } from 'vue';
|
|
2
|
-
import Icon from '
|
|
3
|
-
/* empty css
|
|
4
|
-
/* empty css
|
|
5
|
-
import _sfc_main$1 from '
|
|
2
|
+
import Icon from '../../icon/Icon.vue.js';
|
|
3
|
+
/* empty css */import _export_sfc from '../../../_virtual/plugin-vue_export-helper.vue.js';
|
|
4
|
+
/* empty css *//* empty css */import IconButton from './IconButton.vue.js';
|
|
5
|
+
import _sfc_main$1 from '../../tooltip/Tooltip.vue.js';
|
|
6
6
|
/* empty css */
|
|
7
|
-
import "
|
|
7
|
+
import "../../../ScrollButton.vue_vue_type_style_index_0_scoped_true_lang.css";
|
|
8
8
|
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
9
9
|
__name: "ScrollButton",
|
|
10
10
|
props: {
|
|
@@ -43,6 +43,6 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
43
43
|
};
|
|
44
44
|
}
|
|
45
45
|
});
|
|
46
|
-
var ScrollButton = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-
|
|
46
|
+
var ScrollButton = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-fbd33082"]]);
|
|
47
47
|
|
|
48
48
|
export { ScrollButton as default };
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import Button from './Button.vue';
|
|
2
|
+
import IconButton from './IconButton.vue';
|
|
3
|
+
import ScrollButton from './ScrollButton.vue';
|
|
4
|
+
declare const ButtonTypes: () => (import("vue").DefineComponent<{
|
|
5
|
+
size: {
|
|
6
|
+
type: import("vue").PropType<"md" | "sm" | "lg">;
|
|
7
|
+
} & {
|
|
8
|
+
default: string;
|
|
9
|
+
};
|
|
10
|
+
variant: {
|
|
11
|
+
type: import("vue").PropType<"link" | "solid" | "border" | "borderless" | "ghost" | "colorized">;
|
|
12
|
+
} & {
|
|
13
|
+
default: string;
|
|
14
|
+
};
|
|
15
|
+
}, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
16
|
+
size: {
|
|
17
|
+
type: import("vue").PropType<"md" | "sm" | "lg">;
|
|
18
|
+
} & {
|
|
19
|
+
default: string;
|
|
20
|
+
};
|
|
21
|
+
variant: {
|
|
22
|
+
type: import("vue").PropType<"link" | "solid" | "border" | "borderless" | "ghost" | "colorized">;
|
|
23
|
+
} & {
|
|
24
|
+
default: string;
|
|
25
|
+
};
|
|
26
|
+
}>>, {
|
|
27
|
+
size: "md" | "sm" | "lg";
|
|
28
|
+
variant: "link" | "solid" | "border" | "borderless" | "ghost" | "colorized";
|
|
29
|
+
}> | import("vue").DefineComponent<{
|
|
30
|
+
show: {
|
|
31
|
+
type: import("vue").PropType<boolean>;
|
|
32
|
+
} & {
|
|
33
|
+
default: boolean;
|
|
34
|
+
};
|
|
35
|
+
iconName: {
|
|
36
|
+
type: import("vue").PropType<string>;
|
|
37
|
+
} & {
|
|
38
|
+
default: string;
|
|
39
|
+
};
|
|
40
|
+
tooltipText: {
|
|
41
|
+
type: import("vue").PropType<string>;
|
|
42
|
+
} & {
|
|
43
|
+
default: string;
|
|
44
|
+
};
|
|
45
|
+
position: {
|
|
46
|
+
type: import("vue").PropType<"bottom-right" | "bottom-left" | "top-right" | "top-left">;
|
|
47
|
+
} & {
|
|
48
|
+
default: string;
|
|
49
|
+
};
|
|
50
|
+
}, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "scrolled"[], "scrolled", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
51
|
+
show: {
|
|
52
|
+
type: import("vue").PropType<boolean>;
|
|
53
|
+
} & {
|
|
54
|
+
default: boolean;
|
|
55
|
+
};
|
|
56
|
+
iconName: {
|
|
57
|
+
type: import("vue").PropType<string>;
|
|
58
|
+
} & {
|
|
59
|
+
default: string;
|
|
60
|
+
};
|
|
61
|
+
tooltipText: {
|
|
62
|
+
type: import("vue").PropType<string>;
|
|
63
|
+
} & {
|
|
64
|
+
default: string;
|
|
65
|
+
};
|
|
66
|
+
position: {
|
|
67
|
+
type: import("vue").PropType<"bottom-right" | "bottom-left" | "top-right" | "top-left">;
|
|
68
|
+
} & {
|
|
69
|
+
default: string;
|
|
70
|
+
};
|
|
71
|
+
}>> & {
|
|
72
|
+
onScrolled?: (...args: any[]) => any;
|
|
73
|
+
}, {
|
|
74
|
+
show: boolean;
|
|
75
|
+
iconName: string;
|
|
76
|
+
tooltipText: string;
|
|
77
|
+
position: "bottom-right" | "bottom-left" | "top-right" | "top-left";
|
|
78
|
+
}>)[];
|
|
79
|
+
export { Button, IconButton, ScrollButton, ButtonTypes };
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { IconName } from '@/components/icon';
|
|
2
|
+
declare const _default: import("vue").DefineComponent<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<{
|
|
3
|
+
size?: 'small' | 'medium' | 'large' | 'extraLarge';
|
|
4
|
+
variant?: 'contained' | 'outlined' | 'text';
|
|
5
|
+
color?: 'primary' | 'default' | 'danger' | 'info' | 'success' | 'warning';
|
|
6
|
+
testId?: string;
|
|
7
|
+
loading?: boolean;
|
|
8
|
+
leftIconName?: IconName;
|
|
9
|
+
rightIconName?: IconName;
|
|
10
|
+
}>, {
|
|
11
|
+
leftIconName: any;
|
|
12
|
+
rightIconName: any;
|
|
13
|
+
loading: boolean;
|
|
14
|
+
size: string;
|
|
15
|
+
testId: string;
|
|
16
|
+
variant: string;
|
|
17
|
+
color: string;
|
|
18
|
+
}>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<{
|
|
19
|
+
size?: 'small' | 'medium' | 'large' | 'extraLarge';
|
|
20
|
+
variant?: 'contained' | 'outlined' | 'text';
|
|
21
|
+
color?: 'primary' | 'default' | 'danger' | 'info' | 'success' | 'warning';
|
|
22
|
+
testId?: string;
|
|
23
|
+
loading?: boolean;
|
|
24
|
+
leftIconName?: IconName;
|
|
25
|
+
rightIconName?: IconName;
|
|
26
|
+
}>, {
|
|
27
|
+
leftIconName: any;
|
|
28
|
+
rightIconName: any;
|
|
29
|
+
loading: boolean;
|
|
30
|
+
size: string;
|
|
31
|
+
testId: string;
|
|
32
|
+
variant: string;
|
|
33
|
+
color: string;
|
|
34
|
+
}>>>, {
|
|
35
|
+
size: 'small' | 'medium' | 'large' | 'extraLarge';
|
|
36
|
+
testId: string;
|
|
37
|
+
variant: 'contained' | 'outlined' | 'text';
|
|
38
|
+
loading: boolean;
|
|
39
|
+
leftIconName: IconName;
|
|
40
|
+
rightIconName: IconName;
|
|
41
|
+
color: 'primary' | 'default' | 'danger' | 'info' | 'success' | 'warning';
|
|
42
|
+
}>;
|
|
43
|
+
export default _default;
|
|
44
|
+
type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
|
|
45
|
+
type __VLS_TypePropsToRuntimeProps<T> = {
|
|
46
|
+
[K in keyof T]-?: {} extends Pick<T, K> ? {
|
|
47
|
+
type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
|
|
48
|
+
} : {
|
|
49
|
+
type: import('vue').PropType<T[K]>;
|
|
50
|
+
required: true;
|
|
51
|
+
};
|
|
52
|
+
};
|
|
53
|
+
type __VLS_WithDefaults<P, D> = {
|
|
54
|
+
[K in keyof Pick<P, keyof P>]: K extends keyof D ? P[K] & {
|
|
55
|
+
default: D[K];
|
|
56
|
+
} : P[K];
|
|
57
|
+
};
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import { defineComponent, computed, openBlock, createElementBlock, mergeProps, renderSlot, createVNode, unref, createSlots, withCtx, createElementVNode, normalizeClass, createBlock, createCommentVNode } from 'vue';
|
|
2
|
+
/* empty css */import _export_sfc from '../../../_virtual/plugin-vue_export-helper.vue.js';
|
|
3
|
+
import Text from '../../typography/Text.vue.js';
|
|
4
|
+
import Icon from '../../icon/Icon.vue.js';
|
|
5
|
+
import { sizeToFont, iconSizeMap } from '../consts.vue.js';
|
|
6
|
+
import LoaderDotsIcon from '../icon/LoaderDotsIcon.vue.js';
|
|
7
|
+
/* empty css */
|
|
8
|
+
import "../../../ButtonV4.vue_vue_type_style_index_0_scoped_true_lang.css";
|
|
9
|
+
const _hoisted_1 = ["data-testid"];
|
|
10
|
+
const _hoisted_2 = { key: 0 };
|
|
11
|
+
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
12
|
+
__name: "ButtonV4",
|
|
13
|
+
props: {
|
|
14
|
+
size: { default: "medium" },
|
|
15
|
+
variant: { default: "contained" },
|
|
16
|
+
color: { default: "primary" },
|
|
17
|
+
testId: { default: "" },
|
|
18
|
+
loading: { type: Boolean, default: false },
|
|
19
|
+
leftIconName: { default: null },
|
|
20
|
+
rightIconName: { default: null }
|
|
21
|
+
},
|
|
22
|
+
setup(__props) {
|
|
23
|
+
const props = __props;
|
|
24
|
+
const loaderWidthLargeInPixel = 32;
|
|
25
|
+
const loaderWidthMedSmallInPixel = 24;
|
|
26
|
+
const loaderWidth = computed(
|
|
27
|
+
() => props.size === "large" ? loaderWidthLargeInPixel + "px" : loaderWidthMedSmallInPixel + "px"
|
|
28
|
+
);
|
|
29
|
+
const textSize = computed(() => sizeToFont[props.size]);
|
|
30
|
+
const computedIconWidth = computed(() => `${iconSizeMap[props.size]}px`);
|
|
31
|
+
return (_ctx, _cache) => {
|
|
32
|
+
return openBlock(), createElementBlock("button", mergeProps({
|
|
33
|
+
class: [[
|
|
34
|
+
__props.size,
|
|
35
|
+
__props.color,
|
|
36
|
+
__props.variant,
|
|
37
|
+
{ loading: __props.loading },
|
|
38
|
+
{
|
|
39
|
+
"with-left-icon": !!__props.leftIconName,
|
|
40
|
+
"with-right-icon": !!__props.rightIconName
|
|
41
|
+
}
|
|
42
|
+
], "button-wrap"],
|
|
43
|
+
"data-testid": props.testId
|
|
44
|
+
}, _ctx.$attrs), [
|
|
45
|
+
!__props.loading ? (openBlock(), createElementBlock("span", _hoisted_2, [
|
|
46
|
+
renderSlot(_ctx.$slots, "content", {}, () => [
|
|
47
|
+
createVNode(unref(Text), {
|
|
48
|
+
size: unref(textSize),
|
|
49
|
+
class: "content"
|
|
50
|
+
}, createSlots({
|
|
51
|
+
default: withCtx(() => [
|
|
52
|
+
createElementVNode("div", {
|
|
53
|
+
class: normalizeClass({
|
|
54
|
+
flex: __props.leftIconName || __props.rightIconName
|
|
55
|
+
})
|
|
56
|
+
}, [
|
|
57
|
+
__props.leftIconName ? (openBlock(), createBlock(unref(Icon), {
|
|
58
|
+
key: 0,
|
|
59
|
+
name: __props.leftIconName,
|
|
60
|
+
"font-size": unref(computedIconWidth)
|
|
61
|
+
}, null, 8, ["name", "font-size"])) : createCommentVNode("", true),
|
|
62
|
+
renderSlot(_ctx.$slots, "default", {}, void 0, true),
|
|
63
|
+
__props.rightIconName ? (openBlock(), createBlock(unref(Icon), {
|
|
64
|
+
key: 1,
|
|
65
|
+
name: __props.rightIconName,
|
|
66
|
+
"font-size": unref(computedIconWidth)
|
|
67
|
+
}, null, 8, ["name", "font-size"])) : createCommentVNode("", true)
|
|
68
|
+
], 2)
|
|
69
|
+
]),
|
|
70
|
+
_: 2
|
|
71
|
+
}, [
|
|
72
|
+
_ctx.$slots.loader ? {
|
|
73
|
+
name: "loader",
|
|
74
|
+
fn: withCtx(() => [
|
|
75
|
+
renderSlot(_ctx.$slots, "loader", {}, void 0, true)
|
|
76
|
+
]),
|
|
77
|
+
key: "0"
|
|
78
|
+
} : void 0
|
|
79
|
+
]), 1032, ["size"])
|
|
80
|
+
], true)
|
|
81
|
+
])) : createCommentVNode("", true),
|
|
82
|
+
__props.loading ? renderSlot(_ctx.$slots, "loader", { key: 1 }, () => [
|
|
83
|
+
createVNode(unref(Icon), {
|
|
84
|
+
"font-size": unref(loaderWidth),
|
|
85
|
+
class: "loading"
|
|
86
|
+
}, {
|
|
87
|
+
default: withCtx(() => [
|
|
88
|
+
createVNode(LoaderDotsIcon)
|
|
89
|
+
]),
|
|
90
|
+
_: 1
|
|
91
|
+
}, 8, ["font-size"])
|
|
92
|
+
], true) : createCommentVNode("", true)
|
|
93
|
+
], 16, _hoisted_1);
|
|
94
|
+
};
|
|
95
|
+
}
|
|
96
|
+
});
|
|
97
|
+
var Button = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-2972de6e"]]);
|
|
98
|
+
|
|
99
|
+
export { Button as default };
|