vdesign-ui 0.1.24 → 0.2.0-beta

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 (71) hide show
  1. package/dist/components/activityviews/index.vue +14 -12
  2. package/dist/components/button/index.vue +1 -1
  3. package/dist/components/checkbox/checkbox-group/index.vue +2 -1
  4. package/dist/components/checkbox/index.vue +19 -20
  5. package/dist/components/dialog/index.vue +15 -11
  6. package/dist/components/dropdown/index.vue +43 -31
  7. package/dist/components/empty/404-dark.png +0 -0
  8. package/dist/components/empty/404.png +0 -0
  9. package/dist/components/empty/index.vue +30 -2
  10. package/dist/components/empty/network-dark.png +0 -0
  11. package/dist/components/empty/network.png +0 -0
  12. package/dist/components/empty/nocoupons-dark.png +0 -0
  13. package/dist/components/empty/nocoupons.png +0 -0
  14. package/dist/components/empty/nodata-dark.png +0 -0
  15. package/dist/components/empty/nodata.png +0 -0
  16. package/dist/components/empty/nomargin-dark.png +0 -0
  17. package/dist/components/empty/nomargin.png +0 -0
  18. package/dist/components/empty/nonotice-dark.png +0 -0
  19. package/dist/components/empty/nonotice.png +0 -0
  20. package/dist/components/empty/noocomments-dark.png +0 -0
  21. package/dist/components/empty/noocomments.png +0 -0
  22. package/dist/components/empty/noorders-dark.png +0 -0
  23. package/dist/components/empty/noorders.png +0 -0
  24. package/dist/components/empty/noposition-dark.png +0 -0
  25. package/dist/components/empty/noposition.png +0 -0
  26. package/dist/components/empty/nosearch-dark.png +0 -0
  27. package/dist/components/empty/nosearch.png +0 -0
  28. package/dist/components/footer/index.vue +5 -1
  29. package/dist/components/footnav/footnav-item/index.vue +11 -42
  30. package/dist/components/footnav/index.vue +13 -27
  31. package/dist/components/headnav/index.vue +52 -35
  32. package/dist/components/icon/font/iconfont.css +62 -952
  33. package/dist/components/icon/font/iconfont.js +1 -1
  34. package/dist/components/icon/index.vue +26 -18
  35. package/dist/components/input/index.vue +107 -109
  36. package/dist/components/input/search/index.vue +18 -22
  37. package/dist/components/input/stepper/index.vue +32 -26
  38. package/dist/components/input/style.less +20 -33
  39. package/dist/components/list/index.vue +57 -69
  40. package/dist/components/list/style.less +20 -92
  41. package/dist/components/loading/img_status_loading_white_ani.svg +155 -0
  42. package/dist/components/loading/img_status_refresh_ani.svg +158 -0
  43. package/dist/components/loading/index.vue +21 -11
  44. package/dist/components/loading/style.less +1 -1
  45. package/dist/components/mixins/clickoutside.js +81 -81
  46. package/dist/components/pagebreak/index.vue +21 -14
  47. package/dist/components/radio/index.vue +164 -135
  48. package/dist/components/radio/radio-group/index.vue +40 -52
  49. package/dist/components/result/index.vue +1 -2
  50. package/dist/components/selector/index.vue +49 -31
  51. package/dist/components/selector/style.less +14 -0
  52. package/dist/components/step-item/index.vue +2 -2
  53. package/dist/components/tabs/index.vue +55 -32
  54. package/dist/components/tabs/tab/index.vue +13 -16
  55. package/dist/components/tag/index.vue +18 -4
  56. package/dist/components/tag/style.less +2 -2
  57. package/dist/components/title/index.vue +11 -8
  58. package/dist/components/title/style.less +6 -0
  59. package/dist/img/img_status_loading_white_ani.b56fcfae.svg +155 -0
  60. package/dist/img/img_status_refresh_ani.d0e59f12.svg +158 -0
  61. package/dist/token.css +8 -0
  62. package/dist/vdesign-ui.common.js +1362 -1170
  63. package/dist/vdesign-ui.css +1 -1
  64. package/dist/vdesign-ui.umd.js +1362 -1170
  65. package/dist/vdesign-ui.umd.min.js +3 -3
  66. package/package.json +1 -1
  67. package/dist/components/loading/loading.png +0 -0
  68. package/dist/components/loading/refresh.png +0 -0
  69. package/dist/img/404-dark.775df5bb.png +0 -0
  70. package/dist/img/network-dark.11a147bb.png +0 -0
  71. package/dist/img/nodata-dark.b0ea0e39.png +0 -0
@@ -2,14 +2,15 @@
2
2
  <div class="vd-tabs">
3
3
  <div class="vd-tabs__wrap" :class="menuClasses" ref="tabsWrap">
4
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 }}
5
+ <div v-for="(item, index) in navList" :key="index" :class="[tabClasses(item), lineClasses]" @click="handleChange(index)">
6
+ <span class="vd-tabs-text-cell" :class="ellipsisClasses">
7
+ {{ item.title }}
7
8
  <vd-icon class="vd-tabs-arrow" v-if="item.arrow" name="icon_btn_moredown"></vd-icon>
8
9
  </span>
9
10
  </div>
10
11
  </div>
11
12
  <div class="vd-tabs-menu--right" v-if="menu">
12
- <vd-icon :name="menuIcon" class="vd-tabs-menu-btn" @click="emitMenuClick"></vd-icon>
13
+ <vd-icon :name="menuIconComputed" class="vd-tabs-menu-btn" @click="emitMenuClick"></vd-icon>
13
14
  </div>
14
15
  </div>
15
16
  <div class="vd-tabs__content">
@@ -28,7 +29,11 @@ export default {
28
29
  type: String,
29
30
  default: "primary",
30
31
  },
31
- menu: Boolean,
32
+ // 将 menu 作为一个字段,同时控制显示和图标名称
33
+ menu: {
34
+ type: [Boolean, String],
35
+ default: false,
36
+ },
32
37
  ellipsis: {
33
38
  type: Boolean,
34
39
  default: true,
@@ -36,31 +41,40 @@ export default {
36
41
  actBorder: Boolean,
37
42
  backgroundColor: Boolean,
38
43
  divider: Boolean,
39
- menuIcon: {
40
- type: String,
41
- default: 'icon_tab_morelist',
42
- },
43
44
  },
44
45
  data() {
45
46
  return {
46
- currentValue: this.value,
47
- navList: [],
47
+ currentValue: this.value, // 当前选中的标签名
48
+ navList: [], // 标签导航列表
49
+ tabs: [], // 已注册的标签
48
50
  };
49
51
  },
50
52
  watch: {
53
+ // 监听 value 变化,更新 currentValue
51
54
  value(val) {
52
55
  this.currentValue = val;
53
56
  },
54
57
  },
55
58
  computed: {
59
+ // 计算菜单按钮的图标,根据 menu 属性的类型决定图标
60
+ menuIconComputed() {
61
+ if (typeof this.menu === 'string') {
62
+ return this.menu;
63
+ } else {
64
+ return 'icon_tab_morelist'; // 默认的菜单图标名称
65
+ }
66
+ },
67
+ // 计算滚动监视的类名
56
68
  scrollspy() {
57
69
  return `${prefixCls}--complete`
58
70
  },
71
+ // 计算标签文字是否需要省略号的类名
59
72
  ellipsisClasses() {
60
73
  return {
61
74
  [`${prefixCls}-text--ellipsis`]: this.ellipsis,
62
75
  };
63
76
  },
77
+ // 计算标签包裹器的类名,根据 menu、backgroundColor 和 divider 属性来确定
64
78
  menuClasses() {
65
79
  return {
66
80
  [`${prefixCls}-menu`]: this.menu,
@@ -68,11 +82,13 @@ export default {
68
82
  "vd-hairline--bottom": this.divider,
69
83
  };
70
84
  },
85
+ // 计算标签下方线条的类名
71
86
  lineClasses() {
72
87
  return {
73
88
  [`${prefixCls}__line`]: !this.actBorder,
74
89
  };
75
90
  },
91
+ // 根据 tabsType 属性计算标签类型的类名
76
92
  barType() {
77
93
  return {
78
94
  [`${prefixCls}-${this.tabsType}-bar`]: this.tabsType,
@@ -80,45 +96,54 @@ export default {
80
96
  },
81
97
  },
82
98
  methods: {
99
+ // 当菜单按钮被点击时触发事件
83
100
  emitMenuClick() {
84
101
  this.$emit('menu-click');
85
102
  },
103
+ // 计算每个标签项的类名
86
104
  tabClasses(item) {
87
105
  return {
88
106
  [`${prefixCls}-${this.tabsType}`]: true,
89
107
  [`${prefixCls}-${this.tabsType}-active`]: item.name === this.currentValue,
90
108
  };
91
109
  },
92
- getTabs() {
93
- return this.$children.filter((item) => item.$options.name === "vd-tab");
110
+ // 注册新的标签到 tabs 数组中
111
+ registerTab(tab) {
112
+ if (!this.tabs.includes(tab)) {
113
+ this.tabs.push(tab);
114
+ this.updateNav();
115
+ }
94
116
  },
117
+ // 从 tabs 数组中注销一个标签
118
+ unregisterTab(tab) {
119
+ const index = this.tabs.indexOf(tab);
120
+ if (index !== -1) {
121
+ this.tabs.splice(index, 1);
122
+ this.updateNav();
123
+ }
124
+ },
125
+ // 根据已注册的标签更新导航列表
95
126
  updateNav() {
96
- this.navList = this.getTabs().map((pane, index) => ({
97
- title: pane.title,
98
- name: pane.name || index,
99
- arrow: pane.arrow,
127
+ this.navList = this.tabs.map((tab, index) => ({
128
+ title: tab.title,
129
+ name: tab.name != null ? tab.name : index,
130
+ arrow: tab.arrow,
100
131
  }));
101
- if (!this.currentValue) {
132
+ // 如果当前没有选中的标签且导航列表不为空,则将第一个标签设为当前值
133
+ if (!this.currentValue && this.navList.length) {
102
134
  this.currentValue = this.navList[0].name;
103
135
  }
104
- this.updateStatus();
105
- },
106
- updateStatus() {
107
- this.getTabs().forEach((tab) => {
108
- tab.show = tab.computedName === this.currentValue;
109
- });
110
136
  },
111
137
  handleChange(index) {
112
138
  const nav = this.navList[index];
113
139
  const name = nav.name;
114
140
  if (this.currentValue !== name) {
115
141
  this.currentValue = name;
116
- this.$emit('input', name); // 确保向父组件更新
117
- this.$emit('change', { index, title: nav.title, name });
118
- this.updateStatus(); // 确保更新状态
119
- this.adjustTabPosition(index);
142
+ this.$emit("input", name); // 触发 input 事件,更新父组件中的 v-model 绑定值
143
+ this.$emit("change", { index, title: nav.title, name }); // 触发 change 事件,传递标签的详细信息
144
+ this.adjustTabPosition(index); // 调整选中标签的位置
120
145
  }
121
- this.$emit("click", { index, title: nav.title, name });
146
+ this.$emit("click", { index, title: nav.title, name }); // 触发 click 事件,传递标签的详细信息
122
147
  },
123
148
  adjustTabPosition(index) {
124
149
  const container = this.$refs.tabsContainer;
@@ -133,13 +158,11 @@ export default {
133
158
  },
134
159
  },
135
160
  mounted() {
136
- this.updateNav();
161
+ // 组件挂载后更新导航列表
162
+ // this.updateNav();
137
163
  },
138
164
  };
139
165
  </script>
140
-
141
- <style lang="less"></style>
142
-
143
166
  <style lang="less">
144
167
  @import "./style.less";
145
168
  </style>
@@ -20,35 +20,32 @@ export default {
20
20
  },
21
21
  data() {
22
22
  return {
23
- show: false,
24
23
  };
25
24
  },
26
25
  watch: {
27
- title() {
28
- this.updateNav();
29
- },
30
- name() {
31
- this.updateNav();
32
- },
26
+
33
27
  },
34
28
  computed: {
29
+ isActive() {
30
+ return this.computedName === this.$parent.currentValue;
31
+ },
35
32
  tabClasses() {
36
33
  return {
37
34
  'vd-tab': true,
38
- 'vd-tab-active': this.show,
35
+ 'vd-tab-active': this.isActive,
39
36
  };
40
37
  },
41
38
  computedName() {
42
- return this.name ?? this.$parent.getTabs().indexOf(this);
43
- },
39
+ return this.name != null
40
+ ? this.name
41
+ : this.$parent.tabs.indexOf(this);
42
+ },
44
43
  },
45
- methods: {
46
- updateNav() {
47
- this.$parent.updateNav();
48
- },
44
+ created() {
45
+ this.$parent.registerTab(this);
49
46
  },
50
- mounted() {
51
- this.updateNav();
47
+ beforeDestroy() {
48
+ this.$parent.unregisterTab(this);
52
49
  },
53
50
  };
54
51
  </script>
@@ -1,6 +1,5 @@
1
1
  <template>
2
- <!-- {{text}} 改成v-html -->
3
- <div class="vd-tag" :class="classes">
2
+ <div class="vd-tag" :class="classes" @click="handleClick">
4
3
  <slot>{{ text }}</slot>
5
4
  </div>
6
5
  </template>
@@ -14,10 +13,20 @@ export default {
14
13
  type: {
15
14
  type: String,
16
15
  // white、dark、blue、cyan、green、olive、yellow、orange、red、pink、purple
17
- default: ''
16
+ default: '',
17
+ validator(value) {
18
+ return [
19
+ 'white', 'dark', 'blue', 'cyan', 'green',
20
+ 'olive', 'yellow', 'orange', 'red', 'pink', 'purple',
21
+ ].includes(value);
22
+ },
18
23
  },
19
24
  size: {
20
25
  type: String,
26
+ required: true,
27
+ validator(value) {
28
+ return ['s', 'l'].includes(value);
29
+ },
21
30
  },
22
31
  borders: {
23
32
  type: Boolean,
@@ -41,7 +50,12 @@ export default {
41
50
  return classes
42
51
 
43
52
  },
44
- }
53
+ },
54
+ methods: {
55
+ handleClick(event) {
56
+ this.$emit('click', event);
57
+ },
58
+ },
45
59
  }
46
60
  </script>
47
61
 
@@ -6,13 +6,13 @@
6
6
  border-radius: calc(var(--radius-tag-bg) * 1px);
7
7
  padding: 0 calc(var(--spacing-tag-padding_y) * 1px);
8
8
 
9
- &--small{
9
+ &--s{
10
10
  font-size: calc(var(--en-single-f-b-s-fontSize) * 1px);
11
11
  font-weight: var(--en-single-f-b-s-fontWeight);
12
12
  height: calc(var(--height-tag-s) * 1px);
13
13
  }
14
14
 
15
- &--large{
15
+ &--l{
16
16
  font-size: calc(var(--en-single-f-b-r-fontSize) * 1px);
17
17
  font-weight: var(--en-single-f-b-r-fontWeight);
18
18
  height: calc(var(--height-tag-m) * 1px);
@@ -2,9 +2,9 @@
2
2
  <div :class="['vd-title', wrapClasses]" @click="handleClick">
3
3
  <div class="vd-title--left">
4
4
  <div class="vd-title-content">
5
- <vd-icon v-if="leftIcon" :name="leftIcon" :svg="leftSvg" :class="leftIconClasses"></vd-icon>
5
+ <vd-icon v-if="leftIcon" :name="leftIcon" :class="leftIconClasses"></vd-icon>
6
6
  <span :class="['vd-title-inner__title', innerTitleClasses]">{{ title }}</span>
7
- <vd-icon v-if="rightIcon" :name="rightIcon" :svg="rightSvg" :class="rightIconClasses"></vd-icon>
7
+ <vd-icon v-if="rightIcon" :name="rightIcon" :class="rightIconClasses"></vd-icon>
8
8
  </div>
9
9
  <p v-if="subText" :class="['vd-title__subtext', subTextClasses]">{{ subText }}</p>
10
10
  </div>
@@ -22,18 +22,20 @@ const prefixCls = 'vd-title';
22
22
  export default {
23
23
  name: 'vd-title',
24
24
  props: {
25
+ type: {
26
+ type: String,
27
+ default: 'primary'
28
+ },
25
29
  title: String,
26
30
  leftIcon: String,
27
31
  rightIcon: String,
28
32
  arrow: Boolean,
29
33
  subText: String,
30
34
  guideText: String,
31
- type: {
32
- type: String,
33
- default: 'primary'
34
- },
35
- leftSvg: Boolean,
36
- rightSvg: Boolean,
35
+ sticky: {
36
+ type: Boolean,
37
+ default: false
38
+ }
37
39
 
38
40
  },
39
41
  data() {
@@ -46,6 +48,7 @@ export default {
46
48
  return {
47
49
  [`${prefixCls}-${this.type}`]: this.type,
48
50
  [`${prefixCls}-${this.type}-double`]: this.subText,
51
+ [`${prefixCls}--sticky`]: this.sticky
49
52
  }
50
53
 
51
54
  },
@@ -14,6 +14,12 @@
14
14
  // display: flex;
15
15
  // flex-direction: column;
16
16
  // }
17
+
18
+ &--sticky {
19
+ position: sticky;
20
+ top: 0;
21
+ z-index: 1000;
22
+ }
17
23
 
18
24
  &--right{
19
25
  display: flex;
@@ -0,0 +1,155 @@
1
+ <svg
2
+ fill="none"
3
+ width='100%'
4
+ height='100%'
5
+ viewBox="0 0 32 32"
6
+ xmlns="http://www.w3.org/2000/svg"
7
+ xmlns:xlink="http://www.w3.org/1999/xlink"
8
+ >
9
+ <defs>
10
+ <style type="text/css">
11
+ <![CDATA[
12
+ @keyframes loading-animate1 {
13
+ 0% {
14
+ fill-opacity: 0.16;
15
+ }
16
+ 20% {
17
+ fill-opacity: 1;
18
+ }
19
+ 26% {
20
+ fill-opacity: 0.32;
21
+ }
22
+ 32% {
23
+ fill-opacity: 0.16;
24
+ }
25
+ 100% {
26
+ fill-opacity: 0.16;
27
+ }
28
+ }
29
+
30
+ @keyframes loading-animate2 {
31
+ 0% {
32
+ fill-opacity: 0.16;
33
+ }
34
+ 12% {
35
+ fill-opacity: 0.16;
36
+ }
37
+ 22% {
38
+ fill-opacity: 1;
39
+ }
40
+ 31% {
41
+ fill-opacity: 0.32;
42
+ }
43
+ 37% {
44
+ fill-opacity: 0.16;
45
+ }
46
+ 100% {
47
+ fill-opacity: 0.16;
48
+ }
49
+ }
50
+
51
+ @keyframes loading-animate3 {
52
+ 0% {
53
+ fill-opacity: 0.16;
54
+ }
55
+ 20% {
56
+ fill-opacity: 0.16;
57
+ }
58
+ 30% {
59
+ fill-opacity: 1;
60
+ }
61
+ 36% {
62
+ fill-opacity: 0.32;
63
+ }
64
+ 42% {
65
+ fill-opacity: 0.16;
66
+ }
67
+ 100% {
68
+ fill-opacity: 0.16;
69
+ }
70
+ }
71
+
72
+ @keyframes loading-animate4 {
73
+ 0% {
74
+ fill-opacity: 0.16;
75
+ }
76
+ 25% {
77
+ fill-opacity: 0.16;
78
+ }
79
+ 35% {
80
+ fill-opacity: 1;
81
+ }
82
+ 41% {
83
+ fill-opacity: 0.32;
84
+ }
85
+ 47% {
86
+ fill-opacity: 0.16;
87
+ }
88
+ 100% {
89
+ fill-opacity: 0.16;
90
+ }
91
+ }
92
+
93
+ .loading-part-1,
94
+ .loading-part-2,
95
+ .loading-part-3,
96
+ .loading-part-4 {
97
+ animation-duration: 1s;
98
+ animation-delay: 0s;
99
+ animation-timing-function: cubic-bezier(0.5, 0, 1, 1);
100
+ animation-iteration-count: infinite;
101
+ }
102
+
103
+ .loading-part-1 {
104
+ animation-name: loading-animate1;
105
+ }
106
+
107
+ .loading-part-2 {
108
+ animation-name: loading-animate2;
109
+ }
110
+
111
+ .loading-part-3 {
112
+ animation-name: loading-animate3;
113
+ }
114
+
115
+ .loading-part-4 {
116
+ animation-name: loading-animate4;
117
+ }
118
+ ]]>
119
+ </style>
120
+ </defs>
121
+ <g>
122
+ <path
123
+ class="loading-part-1"
124
+ fill-rule="evenodd"
125
+ clip-rule="evenodd"
126
+ d="M6 32.0001L9.72003 28.209C9.95076 27.9739 10.0803 27.655 10.0803 27.3225V16.2236L6.36035 20.0147C6.12963 20.2498 6 20.5687 6 20.9012V32.0001Z"
127
+ fill-opacity="0.16"
128
+ fill="#FFFFFF"
129
+ />
130
+ <path
131
+ class="loading-part-2"
132
+ fill-rule="evenodd"
133
+ clip-rule="evenodd"
134
+ d="M11.3068 26.559L15.0269 22.768C15.2576 22.5329 15.3872 22.214 15.3872 21.8815V2.71126L11.6672 6.50233C11.4364 6.73746 11.3068 7.05636 11.3068 7.38889V26.559Z"
135
+ fill-opacity="0.16"
136
+ fill="#FFFFFF"
137
+ />
138
+ <path
139
+ class="loading-part-3"
140
+ fill-rule="evenodd"
141
+ clip-rule="evenodd"
142
+ d="M16.6255 29.2742L20.3455 25.4832C20.5762 25.248 20.7059 24.9292 20.7059 24.5966V5.42644L16.9858 9.21751C16.7552 9.4526 16.6255 9.77154 16.6255 10.104V29.2742Z"
143
+ fill="#FFFFFF"
144
+ fill-opacity="0.16"
145
+ />
146
+ <path
147
+ class="loading-part-4"
148
+ fill-rule="evenodd"
149
+ clip-rule="evenodd"
150
+ d="M21.9196 15.7765L25.6396 11.9854C25.8703 11.7503 26 11.4314 26 11.0989V0L22.2799 3.79107C22.0492 4.02617 21.9196 4.3451 21.9196 4.67759V15.7765Z"
151
+ fill="#FFFFFF"
152
+ fill-opacity="0.16"
153
+ />
154
+ </g>
155
+ </svg>
@@ -0,0 +1,158 @@
1
+ <svg
2
+ fill="none"
3
+ width='100%'
4
+ height='100%'
5
+ viewBox="0 0 32 32"
6
+ xmlns="http://www.w3.org/2000/svg"
7
+ xmlns:xlink="http://www.w3.org/1999/xlink"
8
+ >
9
+ <defs>
10
+ <style type="text/css">
11
+ <![CDATA[
12
+ @keyframes refresh-animate1 {
13
+ 0% {
14
+ fill-opacity: 1;
15
+ }
16
+ 16.67% {
17
+ fill-opacity: 0.16;
18
+ }
19
+ 50% {
20
+ fill-opacity: 0.16;
21
+ }
22
+ 83.33% {
23
+ fill-opacity: 0.16;
24
+ }
25
+ 100% {
26
+ fill-opacity: 1;
27
+ }
28
+ }
29
+
30
+ @keyframes refresh-animate2 {
31
+ 0% {
32
+ fill-opacity: 0.16;
33
+ }
34
+ 16.67% {
35
+ fill-opacity: 1;
36
+ }
37
+ 33.33% {
38
+ fill-opacity: 0.16;
39
+ }
40
+ 50% {
41
+ fill-opacity: 0.16;
42
+ }
43
+ 66.67% {
44
+ fill-opacity: 0.16;
45
+ }
46
+ 83.33% {
47
+ fill-opacity: 1;
48
+ }
49
+ 100% {
50
+ fill-opacity: 0.16;
51
+ }
52
+ }
53
+
54
+ @keyframes refresh-animate3 {
55
+ 0% {
56
+ fill-opacity: 0.16;
57
+ }
58
+ 16.67% {
59
+ fill-opacity: 0.16;
60
+ }
61
+ 33.33% {
62
+ fill-opacity: 1;
63
+ }
64
+ 50% {
65
+ fill-opacity: 0.16;
66
+ }
67
+ 66.67% {
68
+ fill-opacity: 1;
69
+ }
70
+ 83.33% {
71
+ fill-opacity: 0.16;
72
+ }
73
+ 100% {
74
+ fill-opacity: 0.16;
75
+ }
76
+ }
77
+
78
+ @keyframes refresh-animate4 {
79
+ 0% {
80
+ fill-opacity: 0.16;
81
+ }
82
+ 33.33% {
83
+ fill-opacity: 0.16;
84
+ }
85
+ 50% {
86
+ fill-opacity: 1;
87
+ }
88
+ 66.67% {
89
+ fill-opacity: 0.16;
90
+ }
91
+ 100% {
92
+ fill-opacity: 0.16;
93
+ }
94
+ }
95
+
96
+ .loading-part-1,
97
+ .loading-part-2,
98
+ .loading-part-3,
99
+ .loading-part-4 {
100
+ animation-duration: 1000ms;
101
+ animation-delay: 0s;
102
+ animation-timing-function: ease-out;
103
+ animation-iteration-count: infinite;
104
+ }
105
+
106
+ .loading-part-1 {
107
+ animation-name: refresh-animate1;
108
+ }
109
+
110
+ .loading-part-2 {
111
+ animation-name: refresh-animate2;
112
+ }
113
+
114
+ .loading-part-3 {
115
+ animation-name: refresh-animate3;
116
+ }
117
+
118
+ .loading-part-4 {
119
+ animation-name: refresh-animate4;
120
+ }
121
+ ]]>
122
+ </style>
123
+ </defs>
124
+ <g>
125
+ <path
126
+ class="loading-part-1"
127
+ fill-rule="evenodd"
128
+ clip-rule="evenodd"
129
+ d="M6 32.0001L9.72003 28.209C9.95076 27.9739 10.0803 27.655 10.0803 27.3225V16.2236L6.36035 20.0147C6.12963 20.2498 6 20.5687 6 20.9012V32.0001Z"
130
+ fill-opacity="0.16"
131
+ fill="#1BC47D"
132
+ />
133
+ <path
134
+ class="loading-part-2"
135
+ fill-rule="evenodd"
136
+ clip-rule="evenodd"
137
+ d="M11.3068 26.559L15.0269 22.768C15.2576 22.5329 15.3872 22.214 15.3872 21.8815V2.71126L11.6672 6.50233C11.4364 6.73746 11.3068 7.05636 11.3068 7.38889V26.559Z"
138
+ fill-opacity="0.16"
139
+ fill="#1BC47D"
140
+ />
141
+ <path
142
+ class="loading-part-3"
143
+ fill-rule="evenodd"
144
+ clip-rule="evenodd"
145
+ d="M16.6255 29.2742L20.3455 25.4832C20.5762 25.248 20.7059 24.9292 20.7059 24.5966V5.42644L16.9858 9.21751C16.7552 9.4526 16.6255 9.77154 16.6255 10.104V29.2742Z"
146
+ fill="#1BC47D"
147
+ fill-opacity="0.16"
148
+ />
149
+ <path
150
+ class="loading-part-4"
151
+ fill-rule="evenodd"
152
+ clip-rule="evenodd"
153
+ d="M21.9196 15.7765L25.6396 11.9854C25.8703 11.7503 26 11.4314 26 11.0989V0L22.2799 3.79107C22.0492 4.02617 21.9196 4.3451 21.9196 4.67759V15.7765Z"
154
+ fill="#1BC47D"
155
+ fill-opacity="0.16"
156
+ />
157
+ </g>
158
+ </svg>
package/dist/token.css CHANGED
@@ -2211,9 +2211,13 @@ html[theme="dark"]{
2211
2211
  --spacing-popover-primary-padding_left:12;
2212
2212
  --spacing-popover-primary-padding_right:12;
2213
2213
  --spacing-popover-primary-margin_y:4;
2214
+ --spacing-popover-primary-padding_top:8;
2215
+ --spacing-popover-primary-padding_bottom:8;
2214
2216
  --spacing-popover-secondary-padding_left:8;
2215
2217
  --spacing-popover-secondary-padding_right:8;
2216
2218
  --spacing-popover-secondary-margin_y:4;
2219
+ --spacing-popover-secondary-padding_top:4;
2220
+ --spacing-popover-secondary-padding_bottom:4;
2217
2221
  --spacing-popover-custom-padding_left:12;
2218
2222
  --spacing-popover-custom-padding_right:12;
2219
2223
  --spacing-popover-custom-margin_y:4;
@@ -2237,9 +2241,13 @@ html{
2237
2241
  --spacing-popover-primary-padding_left:12;
2238
2242
  --spacing-popover-primary-padding_right:12;
2239
2243
  --spacing-popover-primary-margin_y:4;
2244
+ --spacing-popover-primary-padding_top:8;
2245
+ --spacing-popover-primary-padding_bottom:8;
2240
2246
  --spacing-popover-secondary-padding_left:8;
2241
2247
  --spacing-popover-secondary-padding_right:8;
2242
2248
  --spacing-popover-secondary-margin_y:4;
2249
+ --spacing-popover-secondary-padding_top:4;
2250
+ --spacing-popover-secondary-padding_bottom:4;
2243
2251
  --spacing-popover-custom-padding_left:12;
2244
2252
  --spacing-popover-custom-padding_right:12;
2245
2253
  --spacing-popover-custom-margin_y:4;