unika-components 1.0.46 → 1.0.48

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.
@@ -47,20 +47,6 @@ declare const _default: import("vue").DefineComponent<{
47
47
  required: false;
48
48
  default: string;
49
49
  };
50
- countdownSize: {
51
- type: StringConstructor;
52
- required: false;
53
- default: (props: {
54
- size: string;
55
- }) => "2.25rem" | "2.75rem" | "1.5rem";
56
- };
57
- labelSize: {
58
- type: StringConstructor;
59
- required: false;
60
- default: (props: {
61
- size: string;
62
- }) => "1" | "1.25rem" | ".8rem";
63
- };
64
50
  labels: {
65
51
  type: ObjectConstructor;
66
52
  required: false;
@@ -76,6 +62,8 @@ declare const _default: import("vue").DefineComponent<{
76
62
  }, {
77
63
  styleProps: import("vue").ComputedRef<Pick<any, string>>;
78
64
  handleClick: () => void;
65
+ labelSize: import("vue").ComputedRef<"1" | "1.25rem" | ".8rem">;
66
+ countdownSize: import("vue").ComputedRef<"2.25rem" | "2.75rem" | "1.5rem">;
79
67
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
80
68
  left: {
81
69
  type: StringConstructor;
@@ -125,20 +113,6 @@ declare const _default: import("vue").DefineComponent<{
125
113
  required: false;
126
114
  default: string;
127
115
  };
128
- countdownSize: {
129
- type: StringConstructor;
130
- required: false;
131
- default: (props: {
132
- size: string;
133
- }) => "2.25rem" | "2.75rem" | "1.5rem";
134
- };
135
- labelSize: {
136
- type: StringConstructor;
137
- required: false;
138
- default: (props: {
139
- size: string;
140
- }) => "1" | "1.25rem" | ".8rem";
141
- };
142
116
  labels: {
143
117
  type: ObjectConstructor;
144
118
  required: false;
@@ -163,8 +137,6 @@ declare const _default: import("vue").DefineComponent<{
163
137
  showLabels: boolean;
164
138
  flipAnimation: boolean;
165
139
  language: string;
166
- countdownSize: string;
167
- labelSize: string;
168
140
  labels: Record<string, any>;
169
141
  }, {}>;
170
142
  export default _default;
@@ -251,24 +251,16 @@ export declare const calendarDefaultProps: {
251
251
  language: string;
252
252
  };
253
253
  export declare const countdownDefaultProps: {
254
- actionType: string;
255
- url: string;
256
- height: string;
257
- width: string;
258
- paddingLeft: string;
259
- paddingRight: string;
260
- paddingTop: string;
261
- paddingBottom: string;
262
- borderStyle: string;
263
- borderColor: string;
264
- borderWidth: string;
265
- borderRadius: string;
266
- boxShadow: string;
267
- opacity: number;
268
- position: string;
269
254
  left: string;
270
255
  top: string;
271
- right: string;
256
+ opacity: number;
257
+ mainColor: string;
258
+ mainFlipBackgroundColor: string;
259
+ labelColor: string;
260
+ showLabels: boolean;
261
+ language: string;
262
+ size: string;
263
+ flipAnimation: boolean;
272
264
  };
273
265
  export declare const mapDefaultProps: {
274
266
  actionType: string;
@@ -571,24 +563,16 @@ export declare const componentsDefaultProps: {
571
563
  };
572
564
  'uni-countdown': {
573
565
  props: {
574
- actionType: string;
575
- url: string;
576
- height: string;
577
- width: string;
578
- paddingLeft: string;
579
- paddingRight: string;
580
- paddingTop: string;
581
- paddingBottom: string;
582
- borderStyle: string;
583
- borderColor: string;
584
- borderWidth: string;
585
- borderRadius: string;
586
- boxShadow: string;
587
- opacity: number;
588
- position: string;
589
566
  left: string;
590
567
  top: string;
591
- right: string;
568
+ opacity: number;
569
+ mainColor: string;
570
+ mainFlipBackgroundColor: string;
571
+ labelColor: string;
572
+ showLabels: boolean;
573
+ language: string;
574
+ size: string;
575
+ flipAnimation: boolean;
592
576
  };
593
577
  };
594
578
  'uni-map': {
@@ -1,3 +1,123 @@
1
+
2
+ #audio {
3
+ position: absolute;
4
+ right: 10px;
5
+ top: 10px;
6
+ z-index: 103;
7
+ width: 30px;
8
+ height: 30px;
9
+ display: -webkit-box;
10
+ display: -ms-flexbox;
11
+ display: flex;
12
+ -webkit-box-align: center;
13
+ -ms-flex-align: center;
14
+ align-items: center;
15
+ }
16
+ #audio .audio {
17
+ width: 100%;
18
+ height: 100%;
19
+ display: -webkit-box;
20
+ display: -ms-flexbox;
21
+ display: flex;
22
+ -webkit-box-align: center;
23
+ -ms-flex-align: center;
24
+ align-items: center;
25
+ -webkit-box-pack: center;
26
+ -ms-flex-pack: center;
27
+ justify-content: center;
28
+ color: #fff;
29
+ background: #666;
30
+ border-radius: 50%;
31
+ overflow: hidden;
32
+ will-change: transform;
33
+ }
34
+ #audio .audio .music-icon {
35
+ display: block;
36
+ width: 100%;
37
+ height: 100%;
38
+ }
39
+ #audio .icon-cancel {
40
+ position: absolute;
41
+ width: 100%;
42
+ height: 100%;
43
+ border-radius: 50%;
44
+ overflow: hidden;
45
+ padding: 14px 0;
46
+ }
47
+ #audio .icon-cancel .icon-h {
48
+ -webkit-transform: rotate(45deg);
49
+ transform: rotate(45deg);
50
+ width: 100%;
51
+ height: 2px;
52
+ background: #fff;
53
+ }
54
+ #audio .mrotate {
55
+ -webkit-animation: mrotate 5s linear infinite;
56
+ animation: mrotate 5s linear infinite;
57
+ }
58
+ .video-play-audio {
59
+ position: absolute;
60
+ left: -9999px;
61
+ top: -9999px;
62
+ width: 0;
63
+ height: 0;
64
+ z-index: -1;
65
+ opacity: 1;
66
+ overflow: hidden;
67
+ }
68
+
69
+ .music-img {
70
+ position: relative;
71
+ display: inline-block;
72
+ width: 100%;
73
+ height: 100%;
74
+ }
75
+
76
+ .uni-music-component {
77
+ }
78
+
79
+ /* 无限旋转 */
80
+ @keyframes mrotate {
81
+ from {
82
+ transform: rotate(0deg);
83
+ }
84
+ to {
85
+ transform: rotate(360deg);
86
+ }
87
+ }
88
+ @-webkit-keyframes mrotate {
89
+ from {
90
+ -webkit-transform: rotate(0deg);
91
+ }
92
+ to {
93
+ -webkit-transform: rotate(360deg);
94
+ }
95
+ }
96
+
97
+ .uni-video-component {
98
+ position: relative;
99
+ text-align: center;
100
+ }
101
+ .play-pause-button {
102
+ position: absolute;
103
+ top: 50%;
104
+ left: 50%;
105
+ transform: translate(-50%, -50%);
106
+ cursor: pointer;
107
+ font-size: 2rem;
108
+ color: #fff;
109
+ background: rgba(0, 0, 0, 0.6);
110
+ border-radius: 50%;
111
+ padding: 10px;
112
+ transition: background 0.3s;
113
+ }
114
+ .play-pause-button:hover {
115
+ background: rgba(0, 0, 0, 0.8);
116
+ }
117
+
118
+ .uni-image-component {
119
+ max-width: 100%;
120
+ }
1
121
 
2
122
  h2.uni-text-component, p.uni-text-component {
3
123
  margin-bottom: 0;
@@ -11,6 +131,42 @@ button.uni-text-component {
11
131
  white-space: pre-wrap;
12
132
  }
13
133
 
134
+ .uni-background-component {
135
+ width: 100%;
136
+ }
137
+ .bg-img {
138
+ width: 100%;
139
+ height: 100%;
140
+ object-fit: cover;
141
+ z-index:1;
142
+ }
143
+ .watermark {
144
+ height: 100%;
145
+ position: absolute;
146
+ top: 0;
147
+ left: 0;
148
+ right: 0;
149
+ bottom: 0;
150
+ }
151
+ .watermark-div {
152
+ height: 100%;
153
+ width:100%;
154
+ position:absolute;
155
+ z-index:99999999;
156
+ }
157
+ body:before{
158
+ content: '';
159
+ position: fixed;
160
+ top: 0;
161
+ bottom: 0;
162
+ left: 0;
163
+ right: 0;
164
+ z-index: -1;
165
+ /* background: url(https://unika-static-dev.unika.cc/logo.png) 0 0 repeat; */
166
+ background-position: center;
167
+ opacity: 0.1;
168
+ }
169
+
14
170
  .slot-number {
15
171
  position: absolute;
16
172
  bottom: 2px;
@@ -18,6 +174,50 @@ button.uni-text-component {
18
174
  font-size: 12px;
19
175
  color: #666
20
176
  }
177
+
178
+ .like-button {
179
+ display: flex;
180
+ flex-direction: column;
181
+ align-items: center;
182
+ cursor: pointer;
183
+ }
184
+
185
+ .icon-heart {
186
+ font-size: 24px;
187
+ color: #e74c3c;
188
+ }
189
+
190
+ .liked {
191
+ color: #f00; /* 更改颜色以示已赞 */
192
+ }
193
+
194
+ .like-count {
195
+ margin-top: 4px;
196
+ font-size: 16px;
197
+ color: #333;
198
+ }
199
+
200
+ #app1 {
201
+ position: relative;
202
+ }
203
+ .snowflake {
204
+ position: absolute;
205
+ top: 0;
206
+ left: 0;
207
+ width: 10px;
208
+ height: 10px;
209
+ background: red;
210
+ border-radius: 50%;
211
+ animation: falling 10s linear infinite;
212
+ }
213
+ @keyframes falling {
214
+ from {
215
+ transform: translateY(0) rotate(0deg);
216
+ }
217
+ to {
218
+ transform: translateY(100vh) rotate(360deg);
219
+ }
220
+ }
21
221
 
22
222
  .slide-guide {
23
223
  position: absolute;
@@ -92,7 +292,7 @@ body, html {
92
292
  }
93
293
  }
94
294
 
95
- .uni-video-component {
295
+ .video-player {
96
296
  position: relative;
97
297
  text-align: center;
98
298
  }
@@ -112,32 +312,6 @@ body, html {
112
312
  .play-pause-button:hover {
113
313
  background: rgba(0, 0, 0, 0.8);
114
314
  }
115
-
116
- .uni-image-component {
117
- max-width: 100%;
118
- }
119
-
120
- .like-button {
121
- display: flex;
122
- flex-direction: column;
123
- align-items: center;
124
- cursor: pointer;
125
- }
126
-
127
- .icon-heart {
128
- font-size: 24px;
129
- color: #e74c3c;
130
- }
131
-
132
- .liked {
133
- color: #f00; /* 更改颜色以示已赞 */
134
- }
135
-
136
- .like-count {
137
- margin-top: 4px;
138
- font-size: 16px;
139
- color: #333;
140
- }
141
315
 
142
316
  /*.swiper-container {
143
317
  width: 100%;
@@ -152,180 +326,6 @@ body, html {
152
326
  max-width: 100%;
153
327
  max-height: 100%;
154
328
  }*/
155
-
156
- .uni-background-component {
157
- width: 100%;
158
- }
159
- .bg-img {
160
- width: 100%;
161
- height: 100%;
162
- object-fit: cover;
163
- z-index:1;
164
- }
165
- .watermark {
166
- height: 100%;
167
- position: absolute;
168
- top: 0;
169
- left: 0;
170
- right: 0;
171
- bottom: 0;
172
- }
173
- .watermark-div {
174
- height: 100%;
175
- width:100%;
176
- position:absolute;
177
- z-index:99999999;
178
- }
179
- body:before{
180
- content: '';
181
- position: fixed;
182
- top: 0;
183
- bottom: 0;
184
- left: 0;
185
- right: 0;
186
- z-index: -1;
187
- /* background: url(https://unika-static-dev.unika.cc/logo.png) 0 0 repeat; */
188
- background-position: center;
189
- opacity: 0.1;
190
- }
191
-
192
- #app1 {
193
- position: relative;
194
- }
195
- .snowflake {
196
- position: absolute;
197
- top: 0;
198
- left: 0;
199
- width: 10px;
200
- height: 10px;
201
- background: red;
202
- border-radius: 50%;
203
- animation: falling 10s linear infinite;
204
- }
205
- @keyframes falling {
206
- from {
207
- transform: translateY(0) rotate(0deg);
208
- }
209
- to {
210
- transform: translateY(100vh) rotate(360deg);
211
- }
212
- }
213
-
214
- #audio {
215
- position: absolute;
216
- right: 10px;
217
- top: 10px;
218
- z-index: 103;
219
- width: 30px;
220
- height: 30px;
221
- display: -webkit-box;
222
- display: -ms-flexbox;
223
- display: flex;
224
- -webkit-box-align: center;
225
- -ms-flex-align: center;
226
- align-items: center;
227
- }
228
- #audio .audio {
229
- width: 100%;
230
- height: 100%;
231
- display: -webkit-box;
232
- display: -ms-flexbox;
233
- display: flex;
234
- -webkit-box-align: center;
235
- -ms-flex-align: center;
236
- align-items: center;
237
- -webkit-box-pack: center;
238
- -ms-flex-pack: center;
239
- justify-content: center;
240
- color: #fff;
241
- background: #666;
242
- border-radius: 50%;
243
- overflow: hidden;
244
- will-change: transform;
245
- }
246
- #audio .audio .music-icon {
247
- display: block;
248
- width: 100%;
249
- height: 100%;
250
- }
251
- #audio .icon-cancel {
252
- position: absolute;
253
- width: 100%;
254
- height: 100%;
255
- border-radius: 50%;
256
- overflow: hidden;
257
- padding: 14px 0;
258
- }
259
- #audio .icon-cancel .icon-h {
260
- -webkit-transform: rotate(45deg);
261
- transform: rotate(45deg);
262
- width: 100%;
263
- height: 2px;
264
- background: #fff;
265
- }
266
- #audio .mrotate {
267
- -webkit-animation: mrotate 5s linear infinite;
268
- animation: mrotate 5s linear infinite;
269
- }
270
- .video-play-audio {
271
- position: absolute;
272
- left: -9999px;
273
- top: -9999px;
274
- width: 0;
275
- height: 0;
276
- z-index: -1;
277
- opacity: 1;
278
- overflow: hidden;
279
- }
280
-
281
- .music-img {
282
- position: relative;
283
- display: inline-block;
284
- width: 100%;
285
- height: 100%;
286
- }
287
-
288
- .uni-music-component {
289
- }
290
-
291
- /* 无限旋转 */
292
- @keyframes mrotate {
293
- from {
294
- transform: rotate(0deg);
295
- }
296
- to {
297
- transform: rotate(360deg);
298
- }
299
- }
300
- @-webkit-keyframes mrotate {
301
- from {
302
- -webkit-transform: rotate(0deg);
303
- }
304
- to {
305
- -webkit-transform: rotate(360deg);
306
- }
307
- }
308
-
309
- .video-player {
310
- position: relative;
311
- text-align: center;
312
- }
313
- .play-pause-button {
314
- position: absolute;
315
- top: 50%;
316
- left: 50%;
317
- transform: translate(-50%, -50%);
318
- cursor: pointer;
319
- font-size: 2rem;
320
- color: #fff;
321
- background: rgba(0, 0, 0, 0.6);
322
- border-radius: 50%;
323
- padding: 10px;
324
- transition: background 0.3s;
325
- }
326
- .play-pause-button:hover {
327
- background: rgba(0, 0, 0, 0.8);
328
- }
329
329
  /**
330
330
  * Swiper 6.8.4
331
331
  * Most modern mobile touch slider and framework with hardware accelerated transitions
@@ -804,262 +804,75 @@ button.swiper-pagination-bullet {
804
804
  transform-origin: 0 0;
805
805
  width: 100%;
806
806
  height: 100%;
807
- }
808
- .swiper-container-cube .swiper-slide .swiper-slide {
809
- pointer-events: none;
810
- }
811
- .swiper-container-cube.swiper-container-rtl .swiper-slide {
812
- transform-origin: 100% 0;
813
- }
814
- .swiper-container-cube .swiper-slide-active,
815
- .swiper-container-cube .swiper-slide-active .swiper-slide-active {
816
- pointer-events: auto;
817
- }
818
- .swiper-container-cube .swiper-slide-active,
819
- .swiper-container-cube .swiper-slide-next,
820
- .swiper-container-cube .swiper-slide-prev,
821
- .swiper-container-cube .swiper-slide-next + .swiper-slide {
822
- pointer-events: auto;
823
- visibility: visible;
824
- }
825
- .swiper-container-cube .swiper-slide-shadow-top,
826
- .swiper-container-cube .swiper-slide-shadow-bottom,
827
- .swiper-container-cube .swiper-slide-shadow-left,
828
- .swiper-container-cube .swiper-slide-shadow-right {
829
- z-index: 0;
830
- -webkit-backface-visibility: hidden;
831
- backface-visibility: hidden;
832
- }
833
- .swiper-container-cube .swiper-cube-shadow {
834
- position: absolute;
835
- left: 0;
836
- bottom: 0px;
837
- width: 100%;
838
- height: 100%;
839
- opacity: 0.6;
840
- z-index: 0;
841
- }
842
- .swiper-container-cube .swiper-cube-shadow:before {
843
- content: '';
844
- background: #000;
845
- position: absolute;
846
- left: 0;
847
- top: 0;
848
- bottom: 0;
849
- right: 0;
850
- filter: blur(50px);
851
- }
852
- .swiper-container-flip {
853
- overflow: visible;
854
- }
855
- .swiper-container-flip .swiper-slide {
856
- pointer-events: none;
857
- -webkit-backface-visibility: hidden;
858
- backface-visibility: hidden;
859
- z-index: 1;
860
- }
861
- .swiper-container-flip .swiper-slide .swiper-slide {
862
- pointer-events: none;
863
- }
864
- .swiper-container-flip .swiper-slide-active,
865
- .swiper-container-flip .swiper-slide-active .swiper-slide-active {
866
- pointer-events: auto;
867
- }
868
- .swiper-container-flip .swiper-slide-shadow-top,
869
- .swiper-container-flip .swiper-slide-shadow-bottom,
870
- .swiper-container-flip .swiper-slide-shadow-left,
871
- .swiper-container-flip .swiper-slide-shadow-right {
872
- z-index: 0;
873
- -webkit-backface-visibility: hidden;
874
- backface-visibility: hidden;
875
- }
876
-
877
-
878
- .no-animation__card {
879
- font-weight: 500;
880
- font-size: var(--countdown-size, 2rem);
881
- line-height: 1.5;
882
- display: block;
883
- color: var(--main-color, #EC685C);
884
- }
885
-
886
- .flip-clock {
887
- text-align: center;
888
- perspective: 600px;
889
- margin: 0 auto;
890
- }
891
-
892
- .flip-clock *,
893
- .flip-clock *:before,
894
- .flip-clock *:after {
895
- box-sizing: border-box;
896
- }
897
-
898
- .flip-clock__piece {
899
- display: inline-block;
900
- margin: 0 0.2vw;
901
- }
902
-
903
- @media (min-width: 1000px) {
904
- .flip-clock__piece {
905
- margin: 0 5px;
906
- }
907
- }
908
-
909
- .flip-clock__slot {
910
- font-size: var(--label-size, 1rem);
911
- line-height: 1.5;
912
- display: block;
913
- color: var(--label-color, #222222);
914
- }
915
-
916
- .flip-card {
917
- display: block;
918
- position: relative;
919
- padding-bottom: 0.72em; /* halfHeight */
920
- font-size: var(--countdown-size, 2.25rem);
921
- line-height: 0.95;
922
- }
923
-
924
- @media (min-width: 1000px) {
925
- .flip-clock__slot {
926
- font-size: 1.2rem;
927
- }
928
-
929
- .flip-card {
930
- font-size: 3rem;
931
- }
932
- }
933
-
934
- .flip-card__top,
935
- .flip-card__bottom,
936
- .flip-card__back-bottom,
937
- .flip-card__back::before,
938
- .flip-card__back::after{
939
- display: block;
940
- height: 0.72em; /* halfHeight */
941
- color: var(--main-color, #EC685C);
942
- background: var(--main-flip-background-color, #222222);
943
- padding: 0.23em 0.15em 0.4em;
944
- border-radius: 0.15em 0.15em 0 0; /* borderRadius */
945
- backface-visibility: hidden;
946
- -webkit-backface-visibility: hidden;
947
- transform-style: preserve-3d;
948
- width: 2.1em;
949
- }
950
-
951
- .flip-card__top-4digits,
952
- .flip-card__bottom-4digits,
953
- .flip-card__back-bottom-4digits,
954
- .flip-card__back-4digits::before,
955
- .flip-card__back-4digits::after {
956
- display: block;
957
- height: 0.72em; /* halfHeight */
958
- color: var(--main-color, #EC685C);
959
- background: var(--main-flip-background-color, #222222);
960
- padding: 0.23em 0.15em 0.4em;
961
- border-radius: 0.15em 0.15em 0 0; /* borderRadius */
962
- backface-visibility: hidden;
963
- -webkit-backface-visibility: hidden;
964
- transform-style: preserve-3d;
965
- width: 2.65em;
966
- }
967
-
968
- .flip-card__bottom,
969
- .flip-card__back-bottom,
970
- .flip-card__bottom-4digits,
971
- .flip-card__back-bottom-4digits {
972
- color: var(--second-flip-color, #EC685C);
973
- position: absolute;
974
- top: 50%;
975
- left: 0;
976
- border-top: solid 1px var(--second-flip-background-color, #000);
977
- background: var(--second-flip-background-color, #393939);
978
- border-radius: 0 0 0.15em 0.15em; /* borderRadius */
979
- pointer-events: none;
980
- overflow: hidden;
981
- z-index: 2;
982
- }
983
-
984
- .flip-card__back-bottom,
985
- .flip-card__back-bottom-4digits {
986
- z-index: 1;
987
- }
988
-
989
- .flip-card__bottom::after,
990
- .flip-card__back-bottom::after,
991
- .flip-card__bottom-4digits::after,
992
- .flip-card__back-bottom-4digits::after {
993
- display: block;
994
- margin-top: -0.72em; /* Negative halfHeight */
995
- }
996
- .flip-card__back::before,
997
- .flip-card__bottom::after,
998
- .flip-card__back-bottom::after,
999
- .flip-card__back-4digits::before,
1000
- .flip-card__bottom-4digits::after,
1001
- .flip-card__back-bottom-4digits::after {
1002
- content: attr(data-value);
1003
- }
1004
-
1005
- .flip-card__back,
1006
- .flip-card__back-4digits {
1007
- position: absolute;
1008
- top: 0;
1009
- height: 100%;
1010
- left: 0%;
1011
- pointer-events: none;
1012
- }
1013
- .flip-card__back::before,
1014
- .flip-card__back-4digits::before {
1015
- position: relative;
1016
- overflow: hidden;
1017
- z-index: -1;
1018
- }
1019
-
1020
- .flip .flip-card__back::before,
1021
- .flip .flip-card__back-4digits::before {
1022
- z-index: 1;
1023
- animation: flipTop 0.3s cubic-bezier(0.37, 0.01, 0.94, 0.35);
1024
- animation-fill-mode: both;
1025
- transform-origin: center bottom;
1026
- }
1027
-
1028
- .flip .flip-card__bottom,
1029
- .flip .flip-card__bottom-4digits {
1030
- transform-origin: center top;
1031
- animation-fill-mode: both;
1032
- animation: flipBottom 0.6s cubic-bezier(0.15, 0.45, 0.28, 1);
1033
- }
1034
- @keyframes flipTop {
1035
- 0% {
1036
- transform: rotateX(0deg);
1037
- z-index: 2;
1038
- }
1039
- 0%, 99% {
1040
- opacity: 1;
1041
- }
1042
- 100% {
1043
- transform: rotateX(-90deg);
1044
- opacity: 0;
1045
- }
1046
- }
1047
-
1048
- @keyframes flipBottom {
1049
- 0%, 50% {
1050
- z-index: -1;
1051
- transform: rotateX(90deg);
1052
- opacity: 0;
1053
- }
1054
- 51% {
1055
- opacity: 1;
1056
- }
1057
- 100% {
1058
- opacity: 1;
1059
- transform: rotateX(0deg);
1060
- z-index: 5;
1061
- }
1062
- }
807
+ }
808
+ .swiper-container-cube .swiper-slide .swiper-slide {
809
+ pointer-events: none;
810
+ }
811
+ .swiper-container-cube.swiper-container-rtl .swiper-slide {
812
+ transform-origin: 100% 0;
813
+ }
814
+ .swiper-container-cube .swiper-slide-active,
815
+ .swiper-container-cube .swiper-slide-active .swiper-slide-active {
816
+ pointer-events: auto;
817
+ }
818
+ .swiper-container-cube .swiper-slide-active,
819
+ .swiper-container-cube .swiper-slide-next,
820
+ .swiper-container-cube .swiper-slide-prev,
821
+ .swiper-container-cube .swiper-slide-next + .swiper-slide {
822
+ pointer-events: auto;
823
+ visibility: visible;
824
+ }
825
+ .swiper-container-cube .swiper-slide-shadow-top,
826
+ .swiper-container-cube .swiper-slide-shadow-bottom,
827
+ .swiper-container-cube .swiper-slide-shadow-left,
828
+ .swiper-container-cube .swiper-slide-shadow-right {
829
+ z-index: 0;
830
+ -webkit-backface-visibility: hidden;
831
+ backface-visibility: hidden;
832
+ }
833
+ .swiper-container-cube .swiper-cube-shadow {
834
+ position: absolute;
835
+ left: 0;
836
+ bottom: 0px;
837
+ width: 100%;
838
+ height: 100%;
839
+ opacity: 0.6;
840
+ z-index: 0;
841
+ }
842
+ .swiper-container-cube .swiper-cube-shadow:before {
843
+ content: '';
844
+ background: #000;
845
+ position: absolute;
846
+ left: 0;
847
+ top: 0;
848
+ bottom: 0;
849
+ right: 0;
850
+ filter: blur(50px);
851
+ }
852
+ .swiper-container-flip {
853
+ overflow: visible;
854
+ }
855
+ .swiper-container-flip .swiper-slide {
856
+ pointer-events: none;
857
+ -webkit-backface-visibility: hidden;
858
+ backface-visibility: hidden;
859
+ z-index: 1;
860
+ }
861
+ .swiper-container-flip .swiper-slide .swiper-slide {
862
+ pointer-events: none;
863
+ }
864
+ .swiper-container-flip .swiper-slide-active,
865
+ .swiper-container-flip .swiper-slide-active .swiper-slide-active {
866
+ pointer-events: auto;
867
+ }
868
+ .swiper-container-flip .swiper-slide-shadow-top,
869
+ .swiper-container-flip .swiper-slide-shadow-bottom,
870
+ .swiper-container-flip .swiper-slide-shadow-left,
871
+ .swiper-container-flip .swiper-slide-shadow-right {
872
+ z-index: 0;
873
+ -webkit-backface-visibility: hidden;
874
+ backface-visibility: hidden;
875
+ }
1063
876
 
1064
877
  .unika-calendar-title {
1065
878
  font-size: 25px;
@@ -1312,3 +1125,190 @@ button.swiper-pagination-bullet {
1312
1125
  padding: 0 0px;
1313
1126
  border-bottom: 1px solid
1314
1127
  }
1128
+
1129
+
1130
+ .no-animation__card {
1131
+ font-weight: 500;
1132
+ font-size: var(--countdown-size, 2rem);
1133
+ line-height: 1.5;
1134
+ display: block;
1135
+ color: var(--main-color, #EC685C);
1136
+ }
1137
+
1138
+ .flip-clock {
1139
+ text-align: center;
1140
+ perspective: 600px;
1141
+ margin: 0 auto;
1142
+ }
1143
+
1144
+ .flip-clock *,
1145
+ .flip-clock *:before,
1146
+ .flip-clock *:after {
1147
+ box-sizing: border-box;
1148
+ }
1149
+
1150
+ .flip-clock__piece {
1151
+ display: inline-block;
1152
+ margin: 0 0.2vw;
1153
+ }
1154
+
1155
+ @media (min-width: 1000px) {
1156
+ .flip-clock__piece {
1157
+ margin: 0 5px;
1158
+ }
1159
+ }
1160
+
1161
+ .flip-clock__slot {
1162
+ font-size: var(--label-size, 1rem);
1163
+ line-height: 1.5;
1164
+ display: block;
1165
+ color: var(--label-color, #222222);
1166
+ }
1167
+
1168
+ .flip-card {
1169
+ display: block;
1170
+ position: relative;
1171
+ padding-bottom: 0.72em; /* halfHeight */
1172
+ font-size: var(--countdown-size, 2.25rem);
1173
+ line-height: 0.95;
1174
+ }
1175
+
1176
+ @media (min-width: 1000px) {
1177
+ .flip-clock__slot {
1178
+ font-size: 1.2rem;
1179
+ }
1180
+
1181
+ .flip-card {
1182
+ font-size: 3rem;
1183
+ }
1184
+ }
1185
+
1186
+ .flip-card__top,
1187
+ .flip-card__bottom,
1188
+ .flip-card__back-bottom,
1189
+ .flip-card__back::before,
1190
+ .flip-card__back::after{
1191
+ display: block;
1192
+ height: 0.72em; /* halfHeight */
1193
+ color: var(--main-color, #EC685C);
1194
+ background: var(--main-flip-background-color, #222222);
1195
+ padding: 0.23em 0.15em 0.4em;
1196
+ border-radius: 0.15em 0.15em 0 0; /* borderRadius */
1197
+ backface-visibility: hidden;
1198
+ -webkit-backface-visibility: hidden;
1199
+ transform-style: preserve-3d;
1200
+ width: 2.1em;
1201
+ }
1202
+
1203
+ .flip-card__top-4digits,
1204
+ .flip-card__bottom-4digits,
1205
+ .flip-card__back-bottom-4digits,
1206
+ .flip-card__back-4digits::before,
1207
+ .flip-card__back-4digits::after {
1208
+ display: block;
1209
+ height: 0.72em; /* halfHeight */
1210
+ color: var(--main-color, #EC685C);
1211
+ background: var(--main-flip-background-color, #222222);
1212
+ padding: 0.23em 0.15em 0.4em;
1213
+ border-radius: 0.15em 0.15em 0 0; /* borderRadius */
1214
+ backface-visibility: hidden;
1215
+ -webkit-backface-visibility: hidden;
1216
+ transform-style: preserve-3d;
1217
+ width: 2.65em;
1218
+ }
1219
+
1220
+ .flip-card__bottom,
1221
+ .flip-card__back-bottom,
1222
+ .flip-card__bottom-4digits,
1223
+ .flip-card__back-bottom-4digits {
1224
+ color: var(--second-flip-color, #EC685C);
1225
+ position: absolute;
1226
+ top: 50%;
1227
+ left: 0;
1228
+ border-top: solid 1px var(--second-flip-background-color, #000);
1229
+ background: var(--second-flip-background-color, #393939);
1230
+ border-radius: 0 0 0.15em 0.15em; /* borderRadius */
1231
+ pointer-events: none;
1232
+ overflow: hidden;
1233
+ z-index: 2;
1234
+ }
1235
+
1236
+ .flip-card__back-bottom,
1237
+ .flip-card__back-bottom-4digits {
1238
+ z-index: 1;
1239
+ }
1240
+
1241
+ .flip-card__bottom::after,
1242
+ .flip-card__back-bottom::after,
1243
+ .flip-card__bottom-4digits::after,
1244
+ .flip-card__back-bottom-4digits::after {
1245
+ display: block;
1246
+ margin-top: -0.72em; /* Negative halfHeight */
1247
+ }
1248
+ .flip-card__back::before,
1249
+ .flip-card__bottom::after,
1250
+ .flip-card__back-bottom::after,
1251
+ .flip-card__back-4digits::before,
1252
+ .flip-card__bottom-4digits::after,
1253
+ .flip-card__back-bottom-4digits::after {
1254
+ content: attr(data-value);
1255
+ }
1256
+
1257
+ .flip-card__back,
1258
+ .flip-card__back-4digits {
1259
+ position: absolute;
1260
+ top: 0;
1261
+ height: 100%;
1262
+ left: 0%;
1263
+ pointer-events: none;
1264
+ }
1265
+ .flip-card__back::before,
1266
+ .flip-card__back-4digits::before {
1267
+ position: relative;
1268
+ overflow: hidden;
1269
+ z-index: -1;
1270
+ }
1271
+
1272
+ .flip .flip-card__back::before,
1273
+ .flip .flip-card__back-4digits::before {
1274
+ z-index: 1;
1275
+ animation: flipTop 0.3s cubic-bezier(0.37, 0.01, 0.94, 0.35);
1276
+ animation-fill-mode: both;
1277
+ transform-origin: center bottom;
1278
+ }
1279
+
1280
+ .flip .flip-card__bottom,
1281
+ .flip .flip-card__bottom-4digits {
1282
+ transform-origin: center top;
1283
+ animation-fill-mode: both;
1284
+ animation: flipBottom 0.6s cubic-bezier(0.15, 0.45, 0.28, 1);
1285
+ }
1286
+ @keyframes flipTop {
1287
+ 0% {
1288
+ transform: rotateX(0deg);
1289
+ z-index: 2;
1290
+ }
1291
+ 0%, 99% {
1292
+ opacity: 1;
1293
+ }
1294
+ 100% {
1295
+ transform: rotateX(-90deg);
1296
+ opacity: 0;
1297
+ }
1298
+ }
1299
+
1300
+ @keyframes flipBottom {
1301
+ 0%, 50% {
1302
+ z-index: -1;
1303
+ transform: rotateX(90deg);
1304
+ opacity: 0;
1305
+ }
1306
+ 51% {
1307
+ opacity: 1;
1308
+ }
1309
+ 100% {
1310
+ opacity: 1;
1311
+ transform: rotateX(0deg);
1312
+ z-index: 5;
1313
+ }
1314
+ }
@@ -4187,7 +4187,16 @@ const calendarDefaultProps = {
4187
4187
  language: 'en',
4188
4188
  };
4189
4189
  const countdownDefaultProps = {
4190
- ...commonDefaultProps
4190
+ left: '25px',
4191
+ top: '204.5px',
4192
+ opacity: 1,
4193
+ mainColor: "red",
4194
+ mainFlipBackgroundColor: "green",
4195
+ labelColor: "blue",
4196
+ showLabels: true,
4197
+ language: "th",
4198
+ size: "small",
4199
+ flipAnimation: true
4191
4200
  };
4192
4201
  const mapDefaultProps = {
4193
4202
  ...commonDefaultProps
@@ -21166,36 +21175,6 @@ var script$7 = defineComponent({
21166
21175
  required: false,
21167
21176
  default: "middle"
21168
21177
  },
21169
- countdownSize: {
21170
- type: String,
21171
- required: false,
21172
- default: function (props) {
21173
- if (props.size == 'middle') {
21174
- return "2.25rem";
21175
- }
21176
- else if (props.size == 'large') {
21177
- return "2.75rem";
21178
- }
21179
- else {
21180
- return "1.5rem";
21181
- }
21182
- }
21183
- },
21184
- labelSize: {
21185
- type: String,
21186
- required: false,
21187
- default: function (props) {
21188
- if (props.size == 'middle') {
21189
- return "1";
21190
- }
21191
- else if (props.size == 'large') {
21192
- return "1.25rem";
21193
- }
21194
- else {
21195
- return ".8rem";
21196
- }
21197
- }
21198
- },
21199
21178
  labels: {
21200
21179
  type: Object,
21201
21180
  required: false,
@@ -21227,9 +21206,33 @@ var script$7 = defineComponent({
21227
21206
  // 抽离并且获得 styleProps
21228
21207
  const styleProps = useStylePick(props);
21229
21208
  const handleClick = useComponentClick(props);
21209
+ const labelSize = computed(() => {
21210
+ if (props.size == 'middle') {
21211
+ return "1";
21212
+ }
21213
+ else if (props.size == 'large') {
21214
+ return "1.25rem";
21215
+ }
21216
+ else {
21217
+ return ".8rem";
21218
+ }
21219
+ });
21220
+ const countdownSize = computed(() => {
21221
+ if (props.size == 'middle') {
21222
+ return "2.25rem";
21223
+ }
21224
+ else if (props.size == 'large') {
21225
+ return "2.75rem";
21226
+ }
21227
+ else {
21228
+ return "1.5rem";
21229
+ }
21230
+ });
21230
21231
  return {
21231
21232
  styleProps,
21232
- handleClick
21233
+ handleClick,
21234
+ labelSize,
21235
+ countdownSize
21233
21236
  };
21234
21237
  }
21235
21238
  });
@@ -21250,8 +21253,9 @@ function render$8(_ctx, _cache, $props, $setup, $data, $options) {
21250
21253
  labels: _ctx.labels,
21251
21254
  language: _ctx.language,
21252
21255
  countdownSize: _ctx.countdownSize,
21256
+ flipAnimation: _ctx.flipAnimation,
21253
21257
  labelSize: _ctx.labelSize
21254
- }, null, 8 /* PROPS */, ["deadline", "mainColor", "mainFlipBackgroundColor", "labelColor", "showLabels", "labels", "language", "countdownSize", "labelSize"])
21258
+ }, null, 8 /* PROPS */, ["deadline", "mainColor", "mainFlipBackgroundColor", "labelColor", "showLabels", "labels", "language", "countdownSize", "flipAnimation", "labelSize"])
21255
21259
  ], 4 /* STYLE */))
21256
21260
  }
21257
21261
 
@@ -4194,7 +4194,16 @@
4194
4194
  language: 'en',
4195
4195
  };
4196
4196
  const countdownDefaultProps = {
4197
- ...commonDefaultProps
4197
+ left: '25px',
4198
+ top: '204.5px',
4199
+ opacity: 1,
4200
+ mainColor: "red",
4201
+ mainFlipBackgroundColor: "green",
4202
+ labelColor: "blue",
4203
+ showLabels: true,
4204
+ language: "th",
4205
+ size: "small",
4206
+ flipAnimation: true
4198
4207
  };
4199
4208
  const mapDefaultProps = {
4200
4209
  ...commonDefaultProps
@@ -21173,36 +21182,6 @@
21173
21182
  required: false,
21174
21183
  default: "middle"
21175
21184
  },
21176
- countdownSize: {
21177
- type: String,
21178
- required: false,
21179
- default: function (props) {
21180
- if (props.size == 'middle') {
21181
- return "2.25rem";
21182
- }
21183
- else if (props.size == 'large') {
21184
- return "2.75rem";
21185
- }
21186
- else {
21187
- return "1.5rem";
21188
- }
21189
- }
21190
- },
21191
- labelSize: {
21192
- type: String,
21193
- required: false,
21194
- default: function (props) {
21195
- if (props.size == 'middle') {
21196
- return "1";
21197
- }
21198
- else if (props.size == 'large') {
21199
- return "1.25rem";
21200
- }
21201
- else {
21202
- return ".8rem";
21203
- }
21204
- }
21205
- },
21206
21185
  labels: {
21207
21186
  type: Object,
21208
21187
  required: false,
@@ -21234,9 +21213,33 @@
21234
21213
  // 抽离并且获得 styleProps
21235
21214
  const styleProps = useStylePick(props);
21236
21215
  const handleClick = useComponentClick(props);
21216
+ const labelSize = vue.computed(() => {
21217
+ if (props.size == 'middle') {
21218
+ return "1";
21219
+ }
21220
+ else if (props.size == 'large') {
21221
+ return "1.25rem";
21222
+ }
21223
+ else {
21224
+ return ".8rem";
21225
+ }
21226
+ });
21227
+ const countdownSize = vue.computed(() => {
21228
+ if (props.size == 'middle') {
21229
+ return "2.25rem";
21230
+ }
21231
+ else if (props.size == 'large') {
21232
+ return "2.75rem";
21233
+ }
21234
+ else {
21235
+ return "1.5rem";
21236
+ }
21237
+ });
21237
21238
  return {
21238
21239
  styleProps,
21239
- handleClick
21240
+ handleClick,
21241
+ labelSize,
21242
+ countdownSize
21240
21243
  };
21241
21244
  }
21242
21245
  });
@@ -21257,8 +21260,9 @@
21257
21260
  labels: _ctx.labels,
21258
21261
  language: _ctx.language,
21259
21262
  countdownSize: _ctx.countdownSize,
21263
+ flipAnimation: _ctx.flipAnimation,
21260
21264
  labelSize: _ctx.labelSize
21261
- }, null, 8 /* PROPS */, ["deadline", "mainColor", "mainFlipBackgroundColor", "labelColor", "showLabels", "labels", "language", "countdownSize", "labelSize"])
21265
+ }, null, 8 /* PROPS */, ["deadline", "mainColor", "mainFlipBackgroundColor", "labelColor", "showLabels", "labels", "language", "countdownSize", "flipAnimation", "labelSize"])
21262
21266
  ], 4 /* STYLE */))
21263
21267
  }
21264
21268
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "unika-components",
3
- "version": "1.0.46",
3
+ "version": "1.0.48",
4
4
  "private": false,
5
5
  "main": "dist/unika-components.umd.js",
6
6
  "module": "dist/unika-components.esm.js",