@douyinfe/semi-foundation 2.63.2-alpha.0 → 2.64.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (95) hide show
  1. package/calendar/foundation.ts +20 -0
  2. package/colorPicker/AlphaSliderFoundation.ts +62 -0
  3. package/colorPicker/ColorChooseAreaFoundation.ts +86 -0
  4. package/colorPicker/ColorSliderFoundation.ts +61 -0
  5. package/colorPicker/DataPartFoundation.ts +113 -0
  6. package/colorPicker/colorPicker.scss +113 -0
  7. package/colorPicker/constants.ts +11 -0
  8. package/colorPicker/foundation.ts +206 -0
  9. package/colorPicker/interface.ts +51 -0
  10. package/colorPicker/utils/convert.ts +228 -0
  11. package/colorPicker/utils/round.ts +3 -0
  12. package/colorPicker/utils/split.ts +40 -0
  13. package/colorPicker/variables.scss +28 -0
  14. package/image/previewImageFoundation.ts +22 -17
  15. package/lib/cjs/calendar/foundation.js +18 -0
  16. package/lib/cjs/colorPicker/AlphaSliderFoundation.d.ts +27 -0
  17. package/lib/cjs/colorPicker/AlphaSliderFoundation.js +40 -0
  18. package/lib/cjs/colorPicker/ColorChooseAreaFoundation.d.ts +42 -0
  19. package/lib/cjs/colorPicker/ColorChooseAreaFoundation.js +62 -0
  20. package/lib/cjs/colorPicker/ColorSliderFoundation.d.ts +26 -0
  21. package/lib/cjs/colorPicker/ColorSliderFoundation.js +40 -0
  22. package/lib/cjs/colorPicker/DataPartFoundation.d.ts +28 -0
  23. package/lib/cjs/colorPicker/DataPartFoundation.js +115 -0
  24. package/lib/cjs/colorPicker/colorPicker.css +84 -0
  25. package/lib/cjs/colorPicker/colorPicker.scss +113 -0
  26. package/lib/cjs/colorPicker/constants.d.ts +4 -0
  27. package/lib/cjs/colorPicker/constants.js +11 -0
  28. package/lib/cjs/colorPicker/foundation.d.ts +66 -0
  29. package/lib/cjs/colorPicker/foundation.js +150 -0
  30. package/lib/cjs/colorPicker/interface.d.ts +40 -0
  31. package/lib/cjs/colorPicker/interface.js +5 -0
  32. package/lib/cjs/colorPicker/utils/convert.d.ts +28 -0
  33. package/lib/cjs/colorPicker/utils/convert.js +306 -0
  34. package/lib/cjs/colorPicker/utils/round.d.ts +1 -0
  35. package/lib/cjs/colorPicker/utils/round.js +12 -0
  36. package/lib/cjs/colorPicker/utils/split.d.ts +18 -0
  37. package/lib/cjs/colorPicker/utils/split.js +40 -0
  38. package/lib/cjs/colorPicker/variables.scss +28 -0
  39. package/lib/cjs/image/previewImageFoundation.js +22 -18
  40. package/lib/cjs/slider/foundation.d.ts +1 -0
  41. package/lib/cjs/slider/foundation.js +15 -0
  42. package/lib/cjs/tabs/constants.d.ts +0 -1
  43. package/lib/cjs/tabs/constants.js +1 -2
  44. package/lib/cjs/tabs/tabs.css +199 -28
  45. package/lib/cjs/tabs/tabs.scss +297 -336
  46. package/lib/cjs/tabs/variables.scss +2 -21
  47. package/lib/cjs/tooltip/foundation.js +2 -1
  48. package/lib/cjs/tree/treeUtil.d.ts +1 -1
  49. package/lib/cjs/upload/constants.d.ts +1 -1
  50. package/lib/cjs/upload/foundation.d.ts +1 -0
  51. package/lib/cjs/upload/foundation.js +30 -14
  52. package/lib/es/calendar/foundation.js +18 -0
  53. package/lib/es/colorPicker/AlphaSliderFoundation.d.ts +27 -0
  54. package/lib/es/colorPicker/AlphaSliderFoundation.js +33 -0
  55. package/lib/es/colorPicker/ColorChooseAreaFoundation.d.ts +42 -0
  56. package/lib/es/colorPicker/ColorChooseAreaFoundation.js +55 -0
  57. package/lib/es/colorPicker/ColorSliderFoundation.d.ts +26 -0
  58. package/lib/es/colorPicker/ColorSliderFoundation.js +33 -0
  59. package/lib/es/colorPicker/DataPartFoundation.d.ts +28 -0
  60. package/lib/es/colorPicker/DataPartFoundation.js +108 -0
  61. package/lib/es/colorPicker/colorPicker.css +84 -0
  62. package/lib/es/colorPicker/colorPicker.scss +113 -0
  63. package/lib/es/colorPicker/constants.d.ts +4 -0
  64. package/lib/es/colorPicker/constants.js +6 -0
  65. package/lib/es/colorPicker/foundation.d.ts +66 -0
  66. package/lib/es/colorPicker/foundation.js +143 -0
  67. package/lib/es/colorPicker/interface.d.ts +40 -0
  68. package/lib/es/colorPicker/interface.js +1 -0
  69. package/lib/es/colorPicker/utils/convert.d.ts +28 -0
  70. package/lib/es/colorPicker/utils/convert.js +277 -0
  71. package/lib/es/colorPicker/utils/round.d.ts +1 -0
  72. package/lib/es/colorPicker/utils/round.js +5 -0
  73. package/lib/es/colorPicker/utils/split.d.ts +18 -0
  74. package/lib/es/colorPicker/utils/split.js +34 -0
  75. package/lib/es/colorPicker/variables.scss +28 -0
  76. package/lib/es/image/previewImageFoundation.js +22 -18
  77. package/lib/es/slider/foundation.d.ts +1 -0
  78. package/lib/es/slider/foundation.js +15 -0
  79. package/lib/es/tabs/constants.d.ts +0 -1
  80. package/lib/es/tabs/constants.js +1 -2
  81. package/lib/es/tabs/tabs.css +199 -28
  82. package/lib/es/tabs/tabs.scss +297 -336
  83. package/lib/es/tabs/variables.scss +2 -21
  84. package/lib/es/tooltip/foundation.js +2 -1
  85. package/lib/es/tree/treeUtil.d.ts +1 -1
  86. package/lib/es/upload/constants.d.ts +1 -1
  87. package/lib/es/upload/foundation.d.ts +1 -0
  88. package/lib/es/upload/foundation.js +30 -14
  89. package/package.json +3 -3
  90. package/slider/foundation.ts +13 -0
  91. package/tabs/constants.ts +1 -2
  92. package/tabs/tabs.scss +297 -336
  93. package/tabs/variables.scss +2 -21
  94. package/tooltip/foundation.ts +1 -1
  95. package/upload/foundation.ts +19 -3
@@ -0,0 +1,306 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.roundHsva = exports.rgbaToRgb = exports.rgbaToHsva = exports.rgbaToHex = exports.rgbaStringToRgba = exports.rgbaStringToHsva = exports.rgbStringToRgba = exports.rgbStringToHsva = exports.parseHue = exports.hsvaToRgbaString = exports.hsvaToRgba = exports.hsvaToRgbString = exports.hsvaToHsvaString = exports.hsvaToHsvString = exports.hsvaToHsv = exports.hsvaToHslaString = exports.hsvaToHsla = exports.hsvaToHslString = exports.hsvaToHex = exports.hsvaStringToHsva = exports.hsvStringToHsva = exports.hslaToHsva = exports.hslaToHsl = exports.hslaStringToHsva = exports.hslStringToHsva = exports.hexToRgba = exports.hexToHsva = void 0;
7
+ var _round = require("./round");
8
+ /**
9
+ * Valid CSS <angle> units.
10
+ * https://developer.mozilla.org/en-US/docs/Web/CSS/angle
11
+ */
12
+ /**
13
+ * Referrer from https://github.com/web-padawan/vanilla-colorful/blob/master/src/lib/utils/convert.ts
14
+ */
15
+ const angleUnits = {
16
+ grad: 360 / 400,
17
+ turn: 360,
18
+ rad: 360 / (Math.PI * 2)
19
+ };
20
+ const hexToHsva = hex => rgbaToHsva(hexToRgba(hex));
21
+ exports.hexToHsva = hexToHsva;
22
+ const hexToRgba = hex => {
23
+ if (hex[0] === "#") hex = hex.substring(1);
24
+ const hexToPercent = str => {
25
+ const decimal = parseInt(str, 16);
26
+ if (!isNaN(decimal)) {
27
+ const percent = decimal / 255;
28
+ return percent;
29
+ }
30
+ return 1;
31
+ };
32
+ return {
33
+ r: parseInt(hex.substring(0, 2), 16),
34
+ g: parseInt(hex.substring(2, 4), 16),
35
+ b: parseInt(hex.substring(4, 6), 16),
36
+ a: hexToPercent(hex.substring(6, 8))
37
+ };
38
+ };
39
+ exports.hexToRgba = hexToRgba;
40
+ const parseHue = function (value) {
41
+ let unit = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "deg";
42
+ return Number(value) * (angleUnits[unit] || 1);
43
+ };
44
+ exports.parseHue = parseHue;
45
+ const hslaStringToHsva = hslString => {
46
+ const matcher = /hsla?\(?\s*(-?\d*\.?\d+)(deg|rad|grad|turn)?[,\s]+(-?\d*\.?\d+)%?[,\s]+(-?\d*\.?\d+)%?,?\s*[/\s]*(-?\d*\.?\d+)?(%)?\s*\)?/i;
47
+ const match = matcher.exec(hslString);
48
+ if (!match) return {
49
+ h: 0,
50
+ s: 0,
51
+ v: 0,
52
+ a: 1
53
+ };
54
+ return hslaToHsva({
55
+ h: parseHue(match[1], match[2]),
56
+ s: Number(match[3]),
57
+ l: Number(match[4]),
58
+ a: match[5] === undefined ? 1 : Number(match[5]) / (match[6] ? 100 : 1)
59
+ });
60
+ };
61
+ exports.hslaStringToHsva = hslaStringToHsva;
62
+ const hslStringToHsva = exports.hslStringToHsva = hslaStringToHsva;
63
+ const hslaToHsva = _ref => {
64
+ let {
65
+ h,
66
+ s,
67
+ l,
68
+ a
69
+ } = _ref;
70
+ s *= (l < 50 ? l : 100 - l) / 100;
71
+ return {
72
+ h: h,
73
+ s: s > 0 ? 2 * s / (l + s) * 100 : 0,
74
+ v: l + s,
75
+ a
76
+ };
77
+ };
78
+ exports.hslaToHsva = hslaToHsva;
79
+ const hsvaToHex = hsva => rgbaToHex(hsvaToRgba(hsva));
80
+ exports.hsvaToHex = hsvaToHex;
81
+ const hsvaToHsla = _ref2 => {
82
+ let {
83
+ h,
84
+ s,
85
+ v,
86
+ a
87
+ } = _ref2;
88
+ const hh = (200 - s) * v / 100;
89
+ return {
90
+ h: (0, _round.round)(h),
91
+ s: (0, _round.round)(hh > 0 && hh < 200 ? s * v / 100 / (hh <= 100 ? hh : 200 - hh) * 100 : 0),
92
+ l: (0, _round.round)(hh / 2),
93
+ a: (0, _round.round)(a, 2)
94
+ };
95
+ };
96
+ exports.hsvaToHsla = hsvaToHsla;
97
+ const hsvaToHslString = hsva => {
98
+ const {
99
+ h,
100
+ s,
101
+ l
102
+ } = hsvaToHsla(hsva);
103
+ return `hsl(${h}, ${s}%, ${l}%)`;
104
+ };
105
+ exports.hsvaToHslString = hsvaToHslString;
106
+ const hsvaToHsvString = hsva => {
107
+ const {
108
+ h,
109
+ s,
110
+ v
111
+ } = roundHsva(hsva);
112
+ return `hsv(${h}, ${s}%, ${v}%)`;
113
+ };
114
+ exports.hsvaToHsvString = hsvaToHsvString;
115
+ const hsvaToHsvaString = hsva => {
116
+ const {
117
+ h,
118
+ s,
119
+ v,
120
+ a
121
+ } = roundHsva(hsva);
122
+ return `hsva(${h}, ${s}%, ${v}%, ${a})`;
123
+ };
124
+ exports.hsvaToHsvaString = hsvaToHsvaString;
125
+ const hsvaToHslaString = hsva => {
126
+ const {
127
+ h,
128
+ s,
129
+ l,
130
+ a
131
+ } = hsvaToHsla(hsva);
132
+ return `hsla(${h}, ${s}%, ${l}%, ${a})`;
133
+ };
134
+ exports.hsvaToHslaString = hsvaToHslaString;
135
+ const hsvaToRgba = _ref3 => {
136
+ let {
137
+ h,
138
+ s,
139
+ v,
140
+ a
141
+ } = _ref3;
142
+ h = h / 360 * 6;
143
+ s = s / 100;
144
+ v = v / 100;
145
+ const hh = Math.floor(h),
146
+ b = v * (1 - s),
147
+ c = v * (1 - (h - hh) * s),
148
+ d = v * (1 - (1 - h + hh) * s),
149
+ module = hh % 6;
150
+ return {
151
+ r: (0, _round.round)([v, c, b, b, d, v][module] * 255),
152
+ g: (0, _round.round)([d, v, v, c, b, b][module] * 255),
153
+ b: (0, _round.round)([b, b, d, v, v, c][module] * 255),
154
+ a: (0, _round.round)(a, 2)
155
+ };
156
+ };
157
+ exports.hsvaToRgba = hsvaToRgba;
158
+ const hsvaToRgbString = hsva => {
159
+ const {
160
+ r,
161
+ g,
162
+ b
163
+ } = hsvaToRgba(hsva);
164
+ return `rgb(${r}, ${g}, ${b})`;
165
+ };
166
+ exports.hsvaToRgbString = hsvaToRgbString;
167
+ const hsvaToRgbaString = hsva => {
168
+ const {
169
+ r,
170
+ g,
171
+ b,
172
+ a
173
+ } = hsvaToRgba(hsva);
174
+ return `rgba(${r}, ${g}, ${b}, ${a})`;
175
+ };
176
+ exports.hsvaToRgbaString = hsvaToRgbaString;
177
+ const hsvaStringToHsva = hsvString => {
178
+ const matcher = /hsva?\(?\s*(-?\d*\.?\d+)(deg|rad|grad|turn)?[,\s]+(-?\d*\.?\d+)%?[,\s]+(-?\d*\.?\d+)%?,?\s*[/\s]*(-?\d*\.?\d+)?(%)?\s*\)?/i;
179
+ const match = matcher.exec(hsvString);
180
+ if (!match) return {
181
+ h: 0,
182
+ s: 0,
183
+ v: 0,
184
+ a: 1
185
+ };
186
+ return roundHsva({
187
+ h: parseHue(match[1], match[2]),
188
+ s: Number(match[3]),
189
+ v: Number(match[4]),
190
+ a: match[5] === undefined ? 1 : Number(match[5]) / (match[6] ? 100 : 1)
191
+ });
192
+ };
193
+ exports.hsvaStringToHsva = hsvaStringToHsva;
194
+ const hsvStringToHsva = exports.hsvStringToHsva = hsvaStringToHsva;
195
+ const rgbaStringToHsva = rgbaString => {
196
+ return rgbaToHsva(rgbaStringToRgba(rgbaString));
197
+ };
198
+ exports.rgbaStringToHsva = rgbaStringToHsva;
199
+ const rgbaStringToRgba = rgbaString => {
200
+ const matcher = /rgba?\(?\s*(-?\d*\.?\d+)(%)?[,\s]+(-?\d*\.?\d+)(%)?[,\s]+(-?\d*\.?\d+)(%)?,?\s*[/\s]*(-?\d*\.?\d+)?(%)?\s*\)?/i;
201
+ const match = matcher.exec(rgbaString);
202
+ if (!match) return {
203
+ r: 0,
204
+ g: 0,
205
+ b: 0,
206
+ a: 1
207
+ };
208
+ return {
209
+ r: Number(match[1]) / (match[2] ? 100 / 255 : 1),
210
+ g: Number(match[3]) / (match[4] ? 100 / 255 : 1),
211
+ b: Number(match[5]) / (match[6] ? 100 / 255 : 1),
212
+ a: match[7] === undefined ? 1 : Number(match[7]) / (match[8] ? 100 : 1)
213
+ };
214
+ };
215
+ exports.rgbaStringToRgba = rgbaStringToRgba;
216
+ const rgbStringToRgba = exports.rgbStringToRgba = rgbaStringToRgba;
217
+ const rgbStringToHsva = exports.rgbStringToHsva = rgbaStringToHsva;
218
+ const format = number => {
219
+ const hex = number.toString(16);
220
+ return hex.length < 2 ? "0" + hex : hex;
221
+ };
222
+ const rgbaToHex = _ref4 => {
223
+ let {
224
+ r,
225
+ g,
226
+ b,
227
+ a
228
+ } = _ref4;
229
+ const percentToHex = p => {
230
+ //const percent = Math.max(0, Math.min(100, p)); // bound percent from 0 to 100
231
+ const intValue = Math.round(p / 100 * 255); // map percent to nearest integer (0 - 255)
232
+ const hexValue = intValue.toString(16); // get hexadecimal representation
233
+ return hexValue.padStart(2, '0').toLowerCase(); // format with leading 0 and upper case characters
234
+ };
235
+ if (a === undefined || a === 1) {
236
+ return "#" + format(r) + format(g) + format(b);
237
+ } else {
238
+ return "#" + format(r) + format(g) + format(b) + percentToHex(a * 100);
239
+ }
240
+ };
241
+ exports.rgbaToHex = rgbaToHex;
242
+ const rgbaToHsva = _ref5 => {
243
+ let {
244
+ r,
245
+ g,
246
+ b,
247
+ a
248
+ } = _ref5;
249
+ const max = Math.max(r, g, b);
250
+ const delta = max - Math.min(r, g, b);
251
+ // prettier-ignore
252
+ const hh = delta ? max === r ? (g - b) / delta : max === g ? 2 + (b - r) / delta : 4 + (r - g) / delta : 0;
253
+ return {
254
+ h: (0, _round.round)(60 * (hh < 0 ? hh + 6 : hh)),
255
+ s: (0, _round.round)(max ? delta / max * 100 : 0),
256
+ v: (0, _round.round)(max / 255 * 100),
257
+ a
258
+ };
259
+ };
260
+ exports.rgbaToHsva = rgbaToHsva;
261
+ const roundHsva = hsva => ({
262
+ h: (0, _round.round)(hsva.h),
263
+ s: (0, _round.round)(hsva.s),
264
+ v: (0, _round.round)(hsva.v),
265
+ a: (0, _round.round)(hsva.a, 2)
266
+ });
267
+ exports.roundHsva = roundHsva;
268
+ const rgbaToRgb = _ref6 => {
269
+ let {
270
+ r,
271
+ g,
272
+ b
273
+ } = _ref6;
274
+ return {
275
+ r,
276
+ g,
277
+ b
278
+ };
279
+ };
280
+ exports.rgbaToRgb = rgbaToRgb;
281
+ const hslaToHsl = _ref7 => {
282
+ let {
283
+ h,
284
+ s,
285
+ l
286
+ } = _ref7;
287
+ return {
288
+ h,
289
+ s,
290
+ l
291
+ };
292
+ };
293
+ exports.hslaToHsl = hslaToHsl;
294
+ const hsvaToHsv = hsva => {
295
+ const {
296
+ h,
297
+ s,
298
+ v
299
+ } = roundHsva(hsva);
300
+ return {
301
+ h,
302
+ s,
303
+ v
304
+ };
305
+ };
306
+ exports.hsvaToHsv = hsvaToHsv;
@@ -0,0 +1 @@
1
+ export declare const round: (number: number, digits?: number, base?: number) => number;
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.round = void 0;
7
+ const round = function (number) {
8
+ let digits = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
9
+ let base = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : Math.pow(10, digits);
10
+ return Math.round(base * number) / base;
11
+ };
12
+ exports.round = round;
@@ -0,0 +1,18 @@
1
+ declare const split: (str: string, mode: 'rgba' | 'hsva') => false | {
2
+ r: number;
3
+ g: number;
4
+ b: number;
5
+ a: number;
6
+ h?: undefined;
7
+ s?: undefined;
8
+ v?: undefined;
9
+ } | {
10
+ h: number;
11
+ s: number;
12
+ v: number;
13
+ a: number;
14
+ r?: undefined;
15
+ g?: undefined;
16
+ b?: undefined;
17
+ };
18
+ export default split;
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ const split = (str, mode) => {
8
+ // 12,32,43 => [12,32,43]
9
+ const reg = /^\s*([\d.]+)\s*,\s*([\d.]+)\s*,\s*([\d.]+)\s*,?\s*([\d.]*)\s*$/;
10
+ const res = str.match(reg);
11
+ const result = [];
12
+ result[0] = Number(res === null || res === void 0 ? void 0 : res[1]);
13
+ result[1] = Number(res === null || res === void 0 ? void 0 : res[2]);
14
+ result[2] = Number(res === null || res === void 0 ? void 0 : res[3]);
15
+ result[3] = Number((res === null || res === void 0 ? void 0 : res[4]) === undefined || (res === null || res === void 0 ? void 0 : res[4]) === '' ? 1 : res === null || res === void 0 ? void 0 : res[4]);
16
+ const check = (a, max) => {
17
+ return !(isNaN(a) || a < 0 || a > max);
18
+ };
19
+ const ok = check(result[0], mode === 'rgba' ? 255 : 360) && check(result[1], mode === 'rgba' ? 255 : 100) && check(result[2], mode === 'rgba' ? 255 : 100) && check(result[3], 1);
20
+ if (ok) {
21
+ if (mode === 'rgba') {
22
+ return {
23
+ r: result[0],
24
+ g: result[1],
25
+ b: result[2],
26
+ a: result[3]
27
+ };
28
+ } else {
29
+ return {
30
+ h: result[0],
31
+ s: result[1],
32
+ v: result[2],
33
+ a: result[3]
34
+ };
35
+ }
36
+ } else {
37
+ return false;
38
+ }
39
+ };
40
+ var _default = exports.default = split;
@@ -0,0 +1,28 @@
1
+ $radius-colorPicker-topLeft:8px; // 圆角 - 左上
2
+ $radius-colorPicker-topRight:8px; // 圆角 - 右上
3
+ $radius-colorPicker-bottomLeft:0px; // 圆角 - 左下
4
+ $radius-colorPicker-bottomRight:0px; // 圆角 - 右下
5
+ $radius-colorPicker-handle:var(--semi-border-radius-full); // 圆角 - 拖拽把手
6
+ $radius-colorPicker-alphaSliderInner:4px; // 圆角 - 透明度 Slider
7
+ $radius-colorPicker-demoBlock: 4px; // 圆角 - 颜色手动输入区域左侧当前选中颜色色块
8
+ $radius-colorPicker-defaultTrigger:4px; // 默认 trigger 圆角
9
+
10
+
11
+ $width-colorPicker_handle-border: 2px; // 把手宽度
12
+ $width-colorPicker-colorPickerInputNumber:58px; // 数组输入器宽度
13
+ $width-colorPicker-formatSelect:80px; // 格式选择下拉 Select 宽度
14
+ $width-colorPicker-defaultTrigger: 24px; // 默认 trigger 大小
15
+
16
+ $color-colorPicker_handle-border:var(--semi-color-white); // 把手边框颜色
17
+
18
+
19
+ $spacing-colorPicker_inputNumberSuffix-horizontal:4px; // 数字输入框后百分比水平距离
20
+ $spacing-colorPicker_inputGroup-marginLeft:4px; // 颜色手动输入区域 左侧距离色块距离
21
+ $spacing-colorPicker_popover-padding:8px; // 弹层模式时整体内边距
22
+ $spacing-colorPicker_inputNumberSuffix-vertical:4px; // 数字输入框后百分比垂直距离
23
+ $spacing-colorPicker_slider-marginTop:6px; // 滑动选择器上边距
24
+ $spacing-colorPicker_dataPart-marginTop:8px; // 颜色手动输入区域 上边距
25
+
26
+
27
+ $font-colorPicker_inputNumberSuffix-fontSize:14px; // 颜色手动输入区域百分比字体大小
28
+
@@ -165,24 +165,28 @@ class PreviewImageFoundation extends _foundation.default {
165
165
  height: imageBound.height * changeScale
166
166
  };
167
167
  if (e && imageDOM && e.target === imageDOM) {
168
- const {
169
- x: offsetX,
170
- y: offsetY
171
- } = this.calcBoundingRectMouseOffset({
172
- width,
173
- height,
174
- offset: {
175
- x: e.offsetX,
176
- y: e.offsetY
177
- },
178
- rotation
179
- });
180
- const imageNewCenterX = e.clientX + (imageBound.width / 2 - offsetX) * changeScale;
181
- const imageNewCenterY = e.clientY + (imageBound.height / 2 - offsetY) * changeScale;
182
- const containerCenterX = this.containerWidth / 2;
183
- const containerCenterY = this.containerHeight / 2;
184
- newTranslateX = imageNewCenterX - containerCenterX;
185
- newTranslateY = imageNewCenterY - containerCenterY;
168
+ let angle = rotation % 360;
169
+ angle < 0 && (angle = 360 + angle);
170
+ switch (angle) {
171
+ case 0:
172
+ newTranslateX = (e.offsetX - 0.5 * width) * (1 - newZoom / currZoom) + translate.x;
173
+ newTranslateY = (e.offsetY - 0.5 * height) * (1 - newZoom / currZoom) + translate.y;
174
+ break;
175
+ case 90:
176
+ newTranslateX = (0.5 * height - e.offsetY) * (1 - newZoom / currZoom) + translate.x;
177
+ newTranslateY = (e.offsetX - 0.5 * width) * (1 - newZoom / currZoom) + translate.y;
178
+ break;
179
+ case 180:
180
+ newTranslateX = (0.5 * width - e.offsetX) * (1 - newZoom / currZoom) + translate.x;
181
+ newTranslateY = (0.5 * height - e.offsetY) * (1 - newZoom / currZoom) + translate.y;
182
+ break;
183
+ case 270:
184
+ newTranslateX = (e.offsetY - 0.5 * height) * (1 - newZoom / currZoom) + translate.x;
185
+ newTranslateY = (0.5 * width - e.offsetX) * (1 - newZoom / currZoom) + translate.y;
186
+ break;
187
+ default:
188
+ break;
189
+ }
186
190
  }
187
191
  const newTranslate = this.getSafeTranslate(newImageBound.width, newImageBound.height, newTranslateX, newTranslateY);
188
192
  this.setState({
@@ -202,6 +202,7 @@ export default class SliderFoundation extends BaseFoundation<SliderAdapter> {
202
202
  _handleHomeKey: (handler: 'min' | 'max') => any;
203
203
  _handleEndKey: (handler: 'min' | 'max') => any;
204
204
  handleKeyDown: (event: any, handler: 'min' | 'max') => void;
205
+ _noTooltip: () => boolean;
205
206
  onFocus: (e: any, handler: 'min' | 'max') => void;
206
207
  onBlur: (e: any, handler: 'min' | 'max') => void;
207
208
  handleWrapClick: (e: any) => void;
@@ -619,7 +619,18 @@ class SliderFoundation extends _foundation.default {
619
619
  (0, _a11y.handlePrevent)(event);
620
620
  }
621
621
  };
622
+ this._noTooltip = () => {
623
+ const {
624
+ tipFormatter,
625
+ tooltipVisible
626
+ } = this.getProps();
627
+ return tipFormatter === null || tooltipVisible === false;
628
+ };
622
629
  this.onFocus = (e, handler) => {
630
+ const noTooltip = this._noTooltip();
631
+ if (noTooltip) {
632
+ return;
633
+ }
623
634
  (0, _a11y.handlePrevent)(e);
624
635
  const {
625
636
  target
@@ -637,6 +648,10 @@ class SliderFoundation extends _foundation.default {
637
648
  }
638
649
  };
639
650
  this.onBlur = (e, handler) => {
651
+ const noTooltip = this._noTooltip();
652
+ if (noTooltip) {
653
+ return;
654
+ }
640
655
  const {
641
656
  firstDotFocusVisible,
642
657
  secondDotFocusVisible
@@ -4,7 +4,6 @@ declare const cssClasses: {
4
4
  TABS_BAR_LINE: string;
5
5
  TABS_BAR_CARD: string;
6
6
  TABS_BAR_BUTTON: string;
7
- TABS_BAR_SLASH: string;
8
7
  TABS_BAR_EXTRA: string;
9
8
  TABS_TAB: string;
10
9
  TABS_TAB_ACTIVE: string;
@@ -11,7 +11,6 @@ const cssClasses = exports.cssClasses = {
11
11
  TABS_BAR_LINE: `${_constants.BASE_CLASS_PREFIX}-tabs-bar-line`,
12
12
  TABS_BAR_CARD: `${_constants.BASE_CLASS_PREFIX}-tabs-bar-card`,
13
13
  TABS_BAR_BUTTON: `${_constants.BASE_CLASS_PREFIX}-tabs-bar-button`,
14
- TABS_BAR_SLASH: `${_constants.BASE_CLASS_PREFIX}-tabs-bar-slash`,
15
14
  TABS_BAR_EXTRA: `${_constants.BASE_CLASS_PREFIX}-tabs-bar-extra`,
16
15
  TABS_TAB: `${_constants.BASE_CLASS_PREFIX}-tabs-tab`,
17
16
  TABS_TAB_ACTIVE: `${_constants.BASE_CLASS_PREFIX}-tabs-tab-active`,
@@ -33,7 +32,7 @@ const numbers = exports.numbers = {
33
32
  DEFAULT_ACTIVE_KEY: 1
34
33
  };
35
34
  const strings = exports.strings = {
36
- TYPE_MAP: ['line', 'card', 'button', 'slash'],
35
+ TYPE_MAP: ['line', 'card', 'button'],
37
36
  SIZE: ['small', 'medium', 'large'],
38
37
  POSITION_MAP: ['top', 'left']
39
38
  };