vdesign-ui 0.1.17 → 0.1.19

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.
Files changed (192) hide show
  1. package/dist/css/chunk-1952c402.04c2303e.css +1 -0
  2. package/dist/css/chunk-6a5c6104.38021b56.css +1 -0
  3. package/dist/css/chunk-vendors.4ecfba63.css +1 -0
  4. package/dist/css/sites.395ce21f.css +1 -0
  5. package/dist/img/404-dark.775df5bb.png +0 -0
  6. package/dist/img/bg_mobile.5909f667.png +0 -0
  7. package/dist/img/completed-dark.4183a8a8.png +0 -0
  8. package/dist/img/error-dark.b80857da.png +0 -0
  9. package/dist/img/icon.a67073c3.svg +7 -0
  10. package/dist/img/iphoneX.38c8778e.png +0 -0
  11. package/dist/img/logo-white.fad4f907.png +0 -0
  12. package/dist/img/logo.1eda11d6.png +0 -0
  13. package/dist/img/network-dark.11a147bb.png +0 -0
  14. package/dist/img/nodata-dark.b0ea0e39.png +0 -0
  15. package/dist/img/qrcode2.0a9d9044.png +0 -0
  16. package/dist/img/wait-dark.6aa28731.png +0 -0
  17. package/dist/index.html +1 -0
  18. package/dist/js/chunk-1952c402.c58ecfb5.js +1 -0
  19. package/dist/js/chunk-2d2183be.2a64419d.js +1 -0
  20. package/dist/js/chunk-6a5c6104.c8fa5635.js +1 -0
  21. package/dist/js/chunk-vendors.490b7673.js +37 -0
  22. package/dist/js/sites.5a217467.js +1 -0
  23. package/package.json +3 -3
  24. package/dist/components/actionbar/actionbar-cell/index.vue +0 -34
  25. package/dist/components/actionbar/index.js +0 -8
  26. package/dist/components/actionbar/index.vue +0 -39
  27. package/dist/components/actionbar/style.less +0 -48
  28. package/dist/components/actions-cell/actions/index.js +0 -7
  29. package/dist/components/actions-cell/actions/index.vue +0 -68
  30. package/dist/components/actions-cell/actions/style.less +0 -94
  31. package/dist/components/actions-cell/index.js +0 -7
  32. package/dist/components/actions-cell/index.vue +0 -94
  33. package/dist/components/actions-cell/style.less +0 -39
  34. package/dist/components/activityviews/index.js +0 -8
  35. package/dist/components/activityviews/index.vue +0 -107
  36. package/dist/components/activityviews/style.less +0 -152
  37. package/dist/components/badge/index.js +0 -8
  38. package/dist/components/badge/index.vue +0 -49
  39. package/dist/components/badge/style.less +0 -66
  40. package/dist/components/button/index.js +0 -8
  41. package/dist/components/button/index.vue +0 -89
  42. package/dist/components/button/style.less +0 -563
  43. package/dist/components/calendar/end.png +0 -0
  44. package/dist/components/calendar/index-element.vue +0 -84
  45. package/dist/components/calendar/index.js +0 -8
  46. package/dist/components/calendar/index.vue +0 -52
  47. package/dist/components/calendar/start.png +0 -0
  48. package/dist/components/calendar/style.less +0 -167
  49. package/dist/components/checkbox/assist.js +0 -34
  50. package/dist/components/checkbox/checkbox-group/index.js +0 -8
  51. package/dist/components/checkbox/checkbox-group/index.vue +0 -69
  52. package/dist/components/checkbox/index.js +0 -8
  53. package/dist/components/checkbox/index.vue +0 -184
  54. package/dist/components/checkbox/style.less +0 -289
  55. package/dist/components/common/state/index.vue +0 -80
  56. package/dist/components/data-list/index.js +0 -10
  57. package/dist/components/data-list/index.vue +0 -19
  58. package/dist/components/data-list/style.less +0 -624
  59. package/dist/components/datetime-picker/index.js +0 -8
  60. package/dist/components/datetime-picker/index.vue +0 -37
  61. package/dist/components/datetime-picker/style.less +0 -24
  62. package/dist/components/dialog/index copy.vue +0 -112
  63. package/dist/components/dialog/index.js +0 -8
  64. package/dist/components/dialog/index.vue +0 -112
  65. package/dist/components/dialog/style.less +0 -122
  66. package/dist/components/divider/index.js +0 -8
  67. package/dist/components/divider/index.vue +0 -54
  68. package/dist/components/divider/style.less +0 -92
  69. package/dist/components/dropdown/index.js +0 -8
  70. package/dist/components/dropdown/index.vue +0 -210
  71. package/dist/components/dropdown/style.less +0 -402
  72. package/dist/components/empty/empty-404.png +0 -0
  73. package/dist/components/empty/empty-img.png +0 -0
  74. package/dist/components/empty/empty-network.png +0 -0
  75. package/dist/components/empty/index.js +0 -8
  76. package/dist/components/empty/index.vue +0 -65
  77. package/dist/components/empty/style.less +0 -53
  78. package/dist/components/footer/index.js +0 -7
  79. package/dist/components/footer/index.vue +0 -29
  80. package/dist/components/footer/style.less +0 -22
  81. package/dist/components/footnav/footnav-item/index.js +0 -7
  82. package/dist/components/footnav/footnav-item/index.vue +0 -75
  83. package/dist/components/footnav/footnav-item/style.less +0 -39
  84. package/dist/components/footnav/index.js +0 -7
  85. package/dist/components/footnav/index.vue +0 -82
  86. package/dist/components/footnav/style.less +0 -22
  87. package/dist/components/form/index.js +0 -7
  88. package/dist/components/form/index.vue +0 -12
  89. package/dist/components/headnav/index.js +0 -7
  90. package/dist/components/headnav/index.vue +0 -139
  91. package/dist/components/headnav/style.less +0 -232
  92. package/dist/components/icon/font/iconfont.css +0 -817
  93. package/dist/components/icon/font/iconfont.js +0 -2
  94. package/dist/components/icon/index.js +0 -9
  95. package/dist/components/icon/index.vue +0 -46
  96. package/dist/components/icon/style.less +0 -44
  97. package/dist/components/input/calcTextareaHeight.js +0 -266
  98. package/dist/components/input/index.js +0 -8
  99. package/dist/components/input/index.vue +0 -343
  100. package/dist/components/input/password/index.js +0 -8
  101. package/dist/components/input/password/index.vue +0 -60
  102. package/dist/components/input/search/index.js +0 -8
  103. package/dist/components/input/search/index.vue +0 -66
  104. package/dist/components/input/stepper/index.js +0 -8
  105. package/dist/components/input/stepper/index.vue +0 -136
  106. package/dist/components/input/style.less +0 -496
  107. package/dist/components/list/index.js +0 -8
  108. package/dist/components/list/index.vue +0 -159
  109. package/dist/components/list/style.less +0 -292
  110. package/dist/components/loading/index.js +0 -7
  111. package/dist/components/loading/index.vue +0 -53
  112. package/dist/components/loading/loading.png +0 -0
  113. package/dist/components/loading/refresh.png +0 -0
  114. package/dist/components/loading/style.less +0 -48
  115. package/dist/components/mixins/clickoutside.js +0 -81
  116. package/dist/components/mixins/dom.js +0 -41
  117. package/dist/components/mixins/languageMixin.js +0 -38
  118. package/dist/components/mixins/outlineConfigPlugin.js +0 -40
  119. package/dist/components/mixins/router-link.js +0 -23
  120. package/dist/components/noticebar/index.js +0 -8
  121. package/dist/components/noticebar/index.vue +0 -246
  122. package/dist/components/noticebar/style.less +0 -309
  123. package/dist/components/overlay/index.js +0 -8
  124. package/dist/components/overlay/index.vue +0 -161
  125. package/dist/components/overlay/style.less +0 -23
  126. package/dist/components/pagebreak/index.js +0 -7
  127. package/dist/components/pagebreak/index.vue +0 -60
  128. package/dist/components/pagebreak/style.less +0 -43
  129. package/dist/components/popover/index.js +0 -8
  130. package/dist/components/popover/index.vue +0 -99
  131. package/dist/components/popover/style.less +0 -349
  132. package/dist/components/popover/vue-popover.vue +0 -314
  133. package/dist/components/radio/assist.js +0 -34
  134. package/dist/components/radio/index.js +0 -8
  135. package/dist/components/radio/index.vue +0 -159
  136. package/dist/components/radio/radio-group/index.vue +0 -70
  137. package/dist/components/radio/style.less +0 -297
  138. package/dist/components/result/completed.png +0 -0
  139. package/dist/components/result/error.png +0 -0
  140. package/dist/components/result/index.js +0 -8
  141. package/dist/components/result/index.vue +0 -47
  142. package/dist/components/result/style.less +0 -42
  143. package/dist/components/result/wait.png +0 -0
  144. package/dist/components/selector/index.js +0 -8
  145. package/dist/components/selector/index.vue +0 -124
  146. package/dist/components/selector/style.less +0 -474
  147. package/dist/components/skeleton/index.js +0 -7
  148. package/dist/components/skeleton/index.vue +0 -142
  149. package/dist/components/skeleton/style.less +0 -192
  150. package/dist/components/slider/draggable.js +0 -49
  151. package/dist/components/slider/index.js +0 -7
  152. package/dist/components/slider/index.vue +0 -173
  153. package/dist/components/slider/style.less +0 -95
  154. package/dist/components/slider/utils.js +0 -60
  155. package/dist/components/step/index.js +0 -7
  156. package/dist/components/step/index.vue +0 -48
  157. package/dist/components/step/style.less +0 -59
  158. package/dist/components/step-item/index.js +0 -7
  159. package/dist/components/step-item/index.vue +0 -89
  160. package/dist/components/step-item/style.less +0 -361
  161. package/dist/components/style/index.vue +0 -42
  162. package/dist/components/switch/index.js +0 -8
  163. package/dist/components/switch/index.vue +0 -72
  164. package/dist/components/switch/style.less +0 -54
  165. package/dist/components/tabs/index.js +0 -8
  166. package/dist/components/tabs/index.vue +0 -145
  167. package/dist/components/tabs/style.less +0 -383
  168. package/dist/components/tabs/tab/index.vue +0 -56
  169. package/dist/components/tag/index.js +0 -7
  170. package/dist/components/tag/index.vue +0 -50
  171. package/dist/components/tag/style.less +0 -211
  172. package/dist/components/title/index.js +0 -8
  173. package/dist/components/title/index.vue +0 -92
  174. package/dist/components/title/style.less +0 -188
  175. package/dist/components/toast/index.js +0 -80
  176. package/dist/components/toast/index.vue +0 -44
  177. package/dist/components/toast/style.less +0 -55
  178. package/dist/components/transition/index.js +0 -8
  179. package/dist/components/transition/index.vue +0 -13
  180. package/dist/components/transition/style.less +0 -208
  181. package/dist/components/upload/index.js +0 -7
  182. package/dist/components/upload/index.vue +0 -224
  183. package/dist/components/upload/style.less +0 -156
  184. package/dist/demo.html +0 -10
  185. package/dist/locale/ar.js +0 -98
  186. package/dist/locale/en.js +0 -98
  187. package/dist/locale/zh.js +0 -98
  188. package/dist/token.css +0 -2973
  189. package/dist/vdesign-ui.common.js +0 -26919
  190. package/dist/vdesign-ui.css +0 -1
  191. package/dist/vdesign-ui.umd.js +0 -26929
  192. package/dist/vdesign-ui.umd.min.js +0 -32
@@ -1,72 +0,0 @@
1
- <template>
2
- <!-- 开关 -->
3
- <div class="vd-switch" :class="{ 'vd-switch-on': isActived }" :disabled="disabled" @click="handleClick">
4
- <span class="vd-switch-round"></span>
5
- </div>
6
- </template>
7
- <script>
8
- export default {
9
- name: 'vd-switch',
10
- props: {
11
- /**
12
- * v-model 绑定值
13
- */
14
- value: {
15
- type: Boolean,
16
- default: false
17
- },
18
- /**
19
- * 异步状态
20
- */
21
- async: {
22
- type: Boolean,
23
- default: false
24
- },
25
- /**
26
- * 禁用状态
27
- */
28
- disabled: {
29
- type: Boolean,
30
- default: false
31
- }
32
- },
33
- data() {
34
- return {
35
- /**
36
- * 激活状态
37
- */
38
- isActived: this.value
39
- }
40
- },
41
- methods: {
42
- /**
43
- * 点击 Switch 开关
44
- */
45
- handleClick() {
46
- const { disabled, async, isActived } = this
47
- /**
48
- * 判断是否被禁用
49
- */
50
- if (!disabled) {
51
- /**
52
- * 判断是否异步
53
- */
54
- !async && this.$emit('input', !isActived)
55
- this.$emit('on-click')
56
- // element.style.setProperty('--primary-color', 'blue');
57
- }
58
- },
59
- },
60
- watch: {
61
- /**
62
- * 监听 value 的值
63
- */
64
- value(value) {
65
- this.isActived = value
66
- }
67
- }
68
- }
69
- </script>
70
- <style lang="less">
71
- @import './style.less';
72
- </style>
@@ -1,54 +0,0 @@
1
- @prefix: ~"vd-switch";
2
-
3
- .@{prefix} {
4
- display: inline-block;
5
- position: relative;
6
- box-sizing: border-box;
7
- width: calc(var(--width-switch-bg) * 1px);
8
- height: calc(var(--height-switch-bg) * 1px);
9
- border-radius: calc(var(--radius-switch-bg) * 1px);
10
- background: var(--color-switch-off_bg-default);
11
- cursor: pointer;
12
-
13
- &-round {
14
- box-sizing: border-box;
15
- position: absolute;
16
- top: calc(var(--height-switch-bg) * -0.5px);
17
- left: 0;
18
- transition: transform .3s;
19
- width: calc(var(--height-switch-button) * 1px);
20
- height: calc(var(--height-switch-button) * 1px);
21
- border-radius: calc(var(--radius-switch-button) * 1px);
22
- border: 1px solid var(--color-switch-off_button_border-default);
23
- background: var(--color-switch-off_button_bg-default);
24
- }
25
-
26
- &-on {
27
- border-color: var(--color-switch-on_button_border-default);
28
- background: var(--color-switch-on_bg-default);
29
-
30
- .@{prefix}-round {
31
- transform: translateX(calc(var(--height-switch-button) * 1px));
32
- background: var(--color-switch-on_button_bg-default);
33
- }
34
- }
35
-
36
- &[disabled] {
37
- border-color: var(--color-switch-off_button_border-disable);
38
- background: var(--color-switch-off_bg-disable);
39
-
40
- .@{prefix}-round {
41
- background: var(--color-switch-off_button_bg-disable);
42
- }
43
- }
44
-
45
- // 选中&&禁用
46
- &-on[disabled] {
47
- border-color: var(--color-switch-on_button_border-disable);
48
- background: var(--color-switch-on_bg-disable);
49
-
50
- .@{prefix}-round {
51
- background: var(--color-switch-on_button_bg-disable);
52
- }
53
- }
54
- }
@@ -1,8 +0,0 @@
1
- import Tabs from './index.vue';
2
- import './style.less';
3
-
4
- Tabs.install = function (Vue) {
5
- Vue.component(Tabs.name, Tabs);
6
- };
7
-
8
- export default Tabs;
@@ -1,145 +0,0 @@
1
- <template>
2
- <div class="vd-tabs">
3
- <div class="vd-tabs__wrap" :class="menuClasses" ref="tabsWrap">
4
- <div :class="[barType,scrollspy]" ref="tabsContainer">
5
- <div v-for="(item, index) in navList" :key="index" :class="tabClasses(item)" @click="handleChange(index)">
6
- <span class="vd-tabs-text-cell" :class="ellipsisClasses">{{ item.title }}
7
- <vd-icon class="vd-tabs-arrow" v-if="item.arrow" name="icon_btn_moredown"></vd-icon>
8
- </span>
9
- </div>
10
- </div>
11
- <div class="vd-tabs-menu--right" v-if="menu">
12
- <vd-icon :name="menuIcon" class="vd-tabs-menu-btn" @click="emitMenuClick"></vd-icon>
13
- </div>
14
- </div>
15
- <div class="vd-tabs__content">
16
- <slot />
17
- </div>
18
- </div>
19
- </template>
20
-
21
- <script>
22
- const prefixCls = "vd-tabs";
23
- export default {
24
- name: "vd-tabs",
25
- props: {
26
- value: [String, Number],
27
- tabsType: {
28
- type: String,
29
- default: "primary",
30
- },
31
- menu: Boolean,
32
- ellipsis: {
33
- type: Boolean,
34
- default: true,
35
- },
36
- actBorder: Boolean,
37
- backgroundColor: Boolean,
38
- divider: Boolean,
39
- menuIcon: {
40
- type: String,
41
- default: 'icon_tab_morelist',
42
- },
43
- },
44
- data() {
45
- return {
46
- currentValue: this.value,
47
- navList: [],
48
- };
49
- },
50
- watch: {
51
- value(val) {
52
- this.currentValue = val;
53
- },
54
- },
55
- computed: {
56
- scrollspy() {
57
- return `${prefixCls}--complete`
58
- },
59
- ellipsisClasses() {
60
- return {
61
- [`${prefixCls}-text--ellipsis`]: this.ellipsis,
62
- };
63
- },
64
- menuClasses() {
65
- return {
66
- [`${prefixCls}-menu`]: this.menu,
67
- [`${prefixCls}__wrap--bg`]: this.backgroundColor,
68
- "vd-hairline--bottom": this.divider,
69
- };
70
- },
71
- lineClasses() {
72
- return {
73
- [`${prefixCls}__line`]: !this.actBorder,
74
- };
75
- },
76
- barType() {
77
- return {
78
- [`${prefixCls}-${this.tabsType}-bar`]: this.tabsType,
79
- };
80
- },
81
- },
82
- methods: {
83
- emitMenuClick() {
84
- this.$emit('menu-click');
85
- },
86
- tabClasses(item) {
87
- return {
88
- [`${prefixCls}-${this.tabsType}`]: true,
89
- [`${prefixCls}-${this.tabsType}-active`]: item.name === this.currentValue,
90
- };
91
- },
92
- getTabs() {
93
- return this.$children.filter((item) => item.$options.name === "vd-tab");
94
- },
95
- updateNav() {
96
- this.navList = this.getTabs().map((pane, index) => ({
97
- title: pane.title,
98
- name: pane.name || index,
99
- arrow: pane.arrow,
100
- }));
101
- if (!this.currentValue) {
102
- this.currentValue = this.navList[0].name;
103
- }
104
- this.updateStatus();
105
- },
106
- updateStatus() {
107
- this.getTabs().forEach((tab) => {
108
- tab.show = tab.computedName === this.currentValue;
109
- });
110
- },
111
- handleChange(index) {
112
- const nav = this.navList[index];
113
- const name = nav.name;
114
- if (this.currentValue !== name) {
115
- this.currentValue = name;
116
- this.$emit('input', name); // 确保向父组件更新
117
- this.$emit('change', { index, title: nav.title, name });
118
- this.updateStatus(); // 确保更新状态
119
- this.adjustTabPosition(index);
120
- }
121
- this.$emit("click", { index, title: nav.title, name });
122
- },
123
- adjustTabPosition(index) {
124
- const container = this.$refs.tabsContainer;
125
- const selectedTab = container.children[index];
126
- if (selectedTab) {
127
- const containerWidth = container.offsetWidth;
128
- const tabWidth = selectedTab.offsetWidth;
129
- const tabOffsetLeft = selectedTab.offsetLeft;
130
- const scrollLeft = tabOffsetLeft - (containerWidth - tabWidth) / 2;
131
- container.scrollTo({ left: scrollLeft, behavior: "smooth" });
132
- }
133
- },
134
- },
135
- mounted() {
136
- this.updateNav();
137
- },
138
- };
139
- </script>
140
-
141
- <style lang="less"></style>
142
-
143
- <style lang="less">
144
- @import "./style.less";
145
- </style>
@@ -1,383 +0,0 @@
1
- @tabs-prefix-cls: vd-tabs;
2
-
3
- .@{tabs-prefix-cls}{
4
-
5
- &__wrap{
6
- position: relative;
7
- width: 100%;
8
- // background-color: #fff;
9
- }
10
-
11
- &-primary {
12
- position: relative;
13
- display: inline-block;
14
- cursor: pointer;
15
- padding-inline-start: calc(var(--spacing-tab-primary-padding_left) * 1px);
16
- padding-inline-end: calc(var(--spacing-tab-primary-padding_right) * 1px);
17
- color: var(--color-tab-primary-text-default);
18
- font-size: calc(var(--en-single-f-d-r-fontSize)* 1px);
19
- font-weight: var(--en-single-f-d-r-fontWeight);
20
-
21
- &-bar {
22
- position: relative;
23
- // display: flex;
24
- white-space: nowrap;
25
- padding-inline-start: calc(var(--spacing-tab-primary-margin_left)*1px);
26
- height: calc(var(--height-super-large)*1px);
27
- line-height: calc(var(--height-super-large)*1px);
28
- }
29
-
30
- &-active {
31
- color: var(--color-tab-primary-text-active);
32
- font-size: calc(var(--en-single-f-e-s-fontSize)* 1px);
33
- font-weight: var(--en-single-f-e-s-fontWeight);
34
-
35
-
36
- &::before {
37
- content: "";
38
- bottom: 11px;
39
- height: calc(var(--height-tab-primary-bar) * 1px);
40
- width: calc(var(--width-tab-primary-bar) * 1px);
41
- display: block;
42
- position: absolute;
43
- background-color: var(--color-tab-primary-bar-active);
44
- left: 50%;
45
- transform: translateX(-50%);
46
- border-radius: calc(var(--radius-tab-primary_bar) * 1px);
47
- }
48
- }
49
- }
50
-
51
- &-card {
52
- min-width: 1%;
53
- flex: 1;
54
- display: flex;
55
- justify-content: center;
56
- align-items: center;
57
- position: relative;
58
- cursor: pointer;
59
- text-align: center;
60
- color: var(--color-tab-primary-text-default);
61
- font-size: calc(var(--en-single-f-d-r-fontSize)* 1px);
62
- font-weight: var(--en-single-f-d-r-fontWeight);
63
-
64
- &-bar {
65
- position: relative;
66
- display: flex;
67
- padding-inline-start: 20px;
68
- padding-inline-end: 20px;
69
- height: calc(var(--height-super-large)*1px);
70
- line-height: calc(var(--height-super-large)*1px);
71
- }
72
-
73
- &-active {
74
- color: var(--color-tab-primary-text-active);
75
- font-size: calc(var(--en-single-f-e-s-fontSize)* 1px);
76
- font-weight: var(--en-single-f-e-s-fontWeight);
77
-
78
- &::before {
79
- content: "";
80
- bottom: 11px;
81
- height: calc(var(--height-tab-primary-bar) * 1px);
82
- width: calc(var(--width-tab-primary-bar) * 1px);
83
- display: block;
84
- position: absolute;
85
- background-color: var(--color-tab-primary-bar-active);
86
- left: 50%;
87
- transform: translateX(-50%);
88
- border-radius: 1px;
89
- }
90
- }
91
- }
92
-
93
- &-secondary {
94
- position: relative;
95
- display: inline-block;
96
- cursor: pointer;
97
- margin-inline-start: calc(var(--spacing-tab-secondary-padding_left) * 1px);
98
- margin-inline-end: calc(var(--spacing-tab-secondary-padding_right) * 1px);
99
- color: var(--color-tab-primary-text-default);
100
- font-size: calc(var(--en-single-f-c-r-fontSize) * 1px);
101
- font-weight: var(--en-single-f-c-r-fontWeigh);
102
-
103
- &-bar {
104
- display: flex;
105
- align-items: center;
106
- position: relative;
107
- padding-inline-start: calc(var(--spacing-tab-secondary-margin_left) * 1px);
108
- height: calc(var(--height-tab-secondary) * 1px);
109
- line-height: calc(var(--height-tab-secondary) * 1px);
110
- }
111
-
112
- &-active {
113
- color: var(--color-tab-primary-text-active);
114
- font-size: calc(var(--en-single-f-c-s-fontSize) * 1px);
115
- font-weight: var(--en-single-f-c-s-fontWeight);
116
-
117
- &::before {
118
- content: "";
119
- bottom: 0;
120
- height: calc(var(--height-tab-secondary-bar) * 1px);
121
- display: block;
122
- position: absolute;
123
- background-color: var(--color-tab-secondary-bar-active);
124
- left: 0;
125
- right: 0;
126
- width: 100%;
127
- border-radius: calc(var(--radius-tab-secondary-bar_top) * 1px) calc(var(--radius-tab-secondary-bar_top) * 1px) calc(var(--radius-tab-secondary-bar_bottom) * 1px) calc(var(--radius-tab-secondary-bar_bottom) * 1px);
128
- }
129
- }
130
- }
131
-
132
- &-capsule {
133
- position: relative;
134
- display: inline-block;
135
- cursor: pointer;
136
- vertical-align: middle;
137
- height: calc(var(--height-tab-capsule_btn) * 1px);
138
- line-height: calc(var(--height-tab-capsule_btn) * 1px);
139
- padding-inline-start: calc(var(--spacing-tab-capsule_btn-padding_left) * 1px);
140
- padding-inline-end: calc(var(--spacing-tab-capsule_btn-padding_right) * 1px);
141
- margin-inline-start: calc(var(--spacing-tab-capsule_btn-margin_right) * 1px);
142
- margin-inline-end: calc(var(--spacing-tab-capsule_btn-margin_right) * 1px);
143
- background-color: var(--color-tab-capsule_btn-bg-default);
144
- color: var(--color-tab-capsule-text-default);
145
- font-size: calc(var(--en-single-f-c-r-fontSize) * 1px);
146
- font-weight: var(--en-single-f-c-r-fontWeight);
147
- border-radius: calc(var(--radius-tab-capsule_button) * 1px);
148
-
149
- &-bar {
150
- position: relative;
151
- // display: flex;
152
- white-space: nowrap;
153
- align-items: center;
154
- padding-inline-start: calc(var(--spacing-tab-capsule-margin_left) * 1px);
155
- height: calc(var(--height-tab-capsule) * 1px);
156
- line-height: calc(var(--height-tab-capsule) * 1px);
157
- }
158
-
159
- &-active {
160
- color: var(--color-tab-capsule-text-active);
161
- font-size: calc(var(--en-single-f-c-s-fontSize) * 1px);
162
- font-weight: var(--en-single-f-c-s-fontWeight);
163
- background-color: var(--color-tab-capsule_btn-bg-active);
164
- .@{tabs-prefix-cls}-arrow {
165
- color: var(--color-tab-filter_down-active);
166
- transform: rotate(180deg);
167
- }
168
- }
169
-
170
- }
171
-
172
- &-selector-l {
173
- flex: 1;
174
- position: relative;
175
- display: inline-block;
176
- text-align: center;
177
- cursor: pointer;
178
- height: calc(var(--height-tab-selector_l_btn) * 1px);
179
- line-height: calc(var(--height-tab-selector_l_btn) * 1px);
180
- color: var(--color-tab-selector-text-default);
181
- font-size: calc(var(--en-single-f-c-r-fontSize) * 1px);
182
- font-weight: var(--en-single-f-c-r-fontWeight);
183
-
184
- &-bar {
185
- position: relative;
186
- display: flex;
187
- background-color: #F7F8F9;
188
- border-radius: calc(var(--radius-tab-selector_card) * 1px);
189
- padding-inline-start: calc(var(--spacing-tab-selector-margin_left) * 1px);
190
- padding-inline-end: calc(var(--spacing-tab-selector-margin_right) * 1px);
191
- padding-block-start: calc(var(--spacing-tab-selector-margin_top) * 1px);
192
- padding-block-end: calc(var(--spacing-tab-selector-margin_bottom) * 1px);
193
- }
194
-
195
- &-active {
196
- color: var(--color-tab-selector-text-active);
197
- font-size: calc(var(--en-single-f-c-s-fontSize)* 1px);
198
- font-weight: var(--en-single-f-c-s-fontWeight);
199
- background-color: var(--color-tab-selector-bg-active);
200
- box-shadow: var(--shadow-s1);
201
- border-radius: calc(var(--radius-tab-selector_card) * 1px);
202
- }
203
- }
204
-
205
- &-selector-m {
206
- flex: 1;
207
- position: relative;
208
- display: inline-block;
209
- text-align: center;
210
- cursor: pointer;
211
- height: calc(var(--height-tab-selector_m_btn)*1px);
212
- line-height: calc(var(--height-tab-selector_m_btn)*1px);
213
- color: var(--color-tab-selector-text-default);
214
- font-size: calc(var(--en-single-f-b-r-fontSize)* 1px);
215
- font-weight: var(--en-single-f-b-r-fontWeight);
216
-
217
- &-bar {
218
- position: relative;
219
- display: flex;
220
- background-color: #F7F8F9;
221
- border-radius: calc(var(--radius-tab-selector_card) * 1px);
222
- padding-inline-start: calc(var(--spacing-tab-selector-margin_left) * 1px);
223
- padding-inline-end: calc(var(--spacing-tab-selector-margin_right) * 1px);
224
- padding-block-start: calc(var(--spacing-tab-selector-margin_top) * 1px);
225
- padding-block-end: calc(var(--spacing-tab-selector-margin_bottom) * 1px);
226
- }
227
-
228
- &-active {
229
- color: var(--color-tab-selector-text-active);
230
- font-size: calc(var(--en-single-f-b-s-fontSize) * 1px);
231
- font-weight: var(--en-single-f-b-s-fontWeight);
232
- background-color: var(--color-tab-selector-bg-active);
233
- box-shadow: var(--shadow-s1);
234
- border-radius: calc(var(--radius-tab-selector_card) * 1px);
235
- }
236
- }
237
-
238
- &-filter {
239
- flex: 1;
240
- position: relative;
241
- cursor: pointer;
242
- text-align: center;
243
- color: var(--color-tab-filter-text-default);
244
- font-size: calc(var(--en-single-f-c-r-fontSize) * 1px);
245
- font-weight: var(--en-single-f-c-r-fontWeight);
246
-
247
- &-bar {
248
- position: relative;
249
- display: flex;
250
- height: calc(var(--height-tab-filter)*1px);
251
- line-height: calc(var(--height-tab-filter)*1px);
252
- padding-inline-start: calc(var(--spacing-tab-filter-margin_y) * 1px);
253
- padding-inline-end: calc(var(--spacing-tab-filter-margin_y) * 1px);
254
- }
255
-
256
- &-active {
257
- color: var(--color-tab-filter-text-active);
258
- font-size: calc(var(--en-single-f-c-s-fontSize)* 1px);
259
- font-weight: var(--en-single-f-c-s-fontWeight);
260
-
261
- .@{tabs-prefix-cls}-arrow {
262
- color: var(--color-tab-filter_down);
263
- transform: rotate(180deg);
264
- }
265
- }
266
- }
267
-
268
- &-click-filter {
269
- flex: 1;
270
- position: relative;
271
- cursor: pointer;
272
- text-align: center;
273
- color: var(--color-tab-double_click_filter-text-default);
274
- font-size: calc(var(--en-single-f-c-r-fontSize)* 1px);
275
- font-weight: var(--en-single-f-c-r-fontWeight);
276
-
277
- &-bar {
278
- position: relative;
279
- display: flex;
280
- height: calc(var(--height-tab-filter)*1px);
281
- line-height: calc(var(--height-tab-filter)*1px);
282
- }
283
-
284
- &-active {
285
- color: var(--color-tab-double_click_filter-text-active);
286
- font-size: calc(var(--en-single-f-c-s-fontSize)* 1px);
287
- font-weight: var(--en-single-f-c-s-fontWeight);
288
- }
289
- }
290
-
291
- &-menu-btn {
292
- cursor: pointer;
293
- // position: absolute;
294
- // top: 50%;
295
- // transform: translateY(-50%)!important;
296
- // right: 0;
297
- font-size: calc(var(--icon-large) * 1px) !important;
298
- }
299
-
300
- &-text-cell {
301
- display: flex;
302
- align-items: center;
303
- justify-content: center;
304
- }
305
-
306
- &-arrow {
307
- display: inline-block;
308
- vertical-align: -1px;
309
- font-size: calc(var(--icon-small) * 1px) !important;
310
- color: var(--color-tab-filter_down);
311
- }
312
-
313
- &__line {
314
- &::before {
315
- display: none;
316
- }
317
- }
318
-
319
- &-menu {
320
- display: flex;
321
- justify-content: space-between;
322
- align-items: center;
323
-
324
-
325
- &--right {
326
- position: relative;
327
- display: flex;
328
- height: calc(var(--icon-large) * 1px);
329
- padding-inline-end: calc(var(--spacing-tab-primary_icon-margin_right) * 1px);
330
-
331
- &::before {
332
- content: '';
333
- position: absolute;
334
- margin-inline-start: -16px;
335
- width: 16px;
336
- height: 100%;
337
- background-image: linear-gradient(to left, var(--bg-color-1) 0%,rgba(255, 255, 255, 0) 100%);
338
- }
339
-
340
-
341
- }
342
-
343
- }
344
-
345
-
346
- &__wrap--bg{
347
- background-color: transparent;
348
- }
349
-
350
- &--complete {
351
- overflow-x: auto;
352
- overflow-y: hidden;
353
- -webkit-overflow-scrolling: touch;
354
- padding-inline-end: calc(var(--spacing-tab-primary_icon-margin_right) * 1px);
355
-
356
- &::-webkit-scrollbar {
357
- display: none;
358
- }
359
- }
360
-
361
- &-text--ellipsis {
362
- display: -webkit-box;
363
- overflow: hidden;
364
- -webkit-line-clamp: 1;
365
- -webkit-box-orient: vertical;
366
- }
367
- }
368
-
369
- [lang='ar'] .vd-tabs-menu--right::before{
370
- transform: scaleX(-1);
371
- }
372
-
373
-
374
- .vd-tab {
375
- width: 100%;
376
- display: none;
377
- }
378
-
379
- .vd-tab-active {
380
- display: block;
381
- }
382
-
383
-
@@ -1,56 +0,0 @@
1
- <template>
2
- <div :class="tabClasses">
3
- <slot />
4
- </div>
5
- </template>
6
-
7
- <script>
8
- export default {
9
- name: 'vd-tab',
10
- props: {
11
- name: [String, Number],
12
- title: {
13
- type: String,
14
- required: true,
15
- },
16
- arrow: {
17
- type: Boolean,
18
- default: false,
19
- },
20
- },
21
- data() {
22
- return {
23
- show: false,
24
- };
25
- },
26
- watch: {
27
- title() {
28
- this.updateNav();
29
- },
30
- name() {
31
- this.updateNav();
32
- },
33
- },
34
- computed: {
35
- tabClasses() {
36
- return {
37
- 'vd-tab': true,
38
- 'vd-tab-active': this.show,
39
- };
40
- },
41
- computedName() {
42
- return this.name ?? this.$parent.getTabs().indexOf(this);
43
- },
44
- },
45
- methods: {
46
- updateNav() {
47
- this.$parent.updateNav();
48
- },
49
- },
50
- mounted() {
51
- this.updateNav();
52
- },
53
- };
54
- </script>
55
-
56
- <style lang="less"></style>