assui 2.0.80 → 2.0.84

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 (85) hide show
  1. package/es/index.d.ts +11 -1
  2. package/es/index.js +5 -0
  3. package/es/keep-tab/index.js +0 -6
  4. package/es/label-date-picker/index.d.ts +7 -0
  5. package/es/label-date-picker/index.js +107 -0
  6. package/es/label-date-picker/style/index.css +44 -0
  7. package/es/label-date-picker/style/index.d.ts +2 -0
  8. package/es/label-date-picker/style/index.js +2 -0
  9. package/es/label-date-picker/style/index.less +53 -0
  10. package/es/label-desc-item/demo/index.less +9 -0
  11. package/es/label-desc-item/index.d.ts +13 -0
  12. package/es/label-desc-item/index.js +22 -0
  13. package/es/label-desc-item/style/index.css +23 -0
  14. package/es/label-desc-item/style/index.d.ts +1 -0
  15. package/es/label-desc-item/style/index.js +1 -0
  16. package/es/label-desc-item/style/index.less +26 -0
  17. package/es/label-input/index.d.ts +23 -0
  18. package/es/label-input/index.js +104 -0
  19. package/es/label-input/style/index.css +72 -0
  20. package/es/label-input/style/index.d.ts +1 -0
  21. package/es/label-input/style/index.js +1 -0
  22. package/es/label-input/style/index.less +95 -0
  23. package/es/label-range-picker/index.d.ts +7 -0
  24. package/es/label-range-picker/index.js +111 -0
  25. package/es/label-range-picker/style/index.css +61 -0
  26. package/es/label-range-picker/style/index.d.ts +2 -0
  27. package/es/label-range-picker/style/index.js +2 -0
  28. package/es/label-range-picker/style/index.less +74 -0
  29. package/es/label-select/index.d.ts +12 -0
  30. package/es/label-select/index.js +107 -0
  31. package/es/label-select/style/index.css +56 -0
  32. package/es/label-select/style/index.d.ts +2 -0
  33. package/es/label-select/style/index.js +2 -0
  34. package/es/label-select/style/index.less +70 -0
  35. package/es/label-text-area/index.d.ts +2 -0
  36. package/es/label-text-area/index.js +7 -0
  37. package/es/label-text-area/style/index.d.ts +1 -0
  38. package/es/label-text-area/style/index.js +0 -0
  39. package/es/rc-qrcode/index.d.ts +6 -6
  40. package/es/rc-qrcode/index.js +4 -4
  41. package/es/rc-qrcode/useQrcode.d.ts +1 -1
  42. package/es/rc-qrcode/useQrcode.js +4 -0
  43. package/lib/index.d.ts +11 -1
  44. package/lib/index.js +45 -0
  45. package/lib/keep-tab/index.js +0 -6
  46. package/lib/label-date-picker/index.d.ts +7 -0
  47. package/lib/label-date-picker/index.js +123 -0
  48. package/lib/label-date-picker/style/index.css +44 -0
  49. package/lib/label-date-picker/style/index.d.ts +2 -0
  50. package/lib/label-date-picker/style/index.js +9 -0
  51. package/lib/label-date-picker/style/index.less +53 -0
  52. package/lib/label-desc-item/demo/index.less +9 -0
  53. package/lib/label-desc-item/index.d.ts +13 -0
  54. package/lib/label-desc-item/index.js +35 -0
  55. package/lib/label-desc-item/style/index.css +23 -0
  56. package/lib/label-desc-item/style/index.d.ts +1 -0
  57. package/lib/label-desc-item/style/index.js +7 -0
  58. package/lib/label-desc-item/style/index.less +26 -0
  59. package/lib/label-input/index.d.ts +23 -0
  60. package/lib/label-input/index.js +119 -0
  61. package/lib/label-input/style/index.css +72 -0
  62. package/lib/label-input/style/index.d.ts +1 -0
  63. package/lib/label-input/style/index.js +7 -0
  64. package/lib/label-input/style/index.less +95 -0
  65. package/lib/label-range-picker/index.d.ts +7 -0
  66. package/lib/label-range-picker/index.js +128 -0
  67. package/lib/label-range-picker/style/index.css +61 -0
  68. package/lib/label-range-picker/style/index.d.ts +2 -0
  69. package/lib/label-range-picker/style/index.js +9 -0
  70. package/lib/label-range-picker/style/index.less +74 -0
  71. package/lib/label-select/index.d.ts +12 -0
  72. package/lib/label-select/index.js +126 -0
  73. package/lib/label-select/style/index.css +56 -0
  74. package/lib/label-select/style/index.d.ts +2 -0
  75. package/lib/label-select/style/index.js +9 -0
  76. package/lib/label-select/style/index.less +70 -0
  77. package/lib/label-text-area/index.d.ts +2 -0
  78. package/lib/label-text-area/index.js +19 -0
  79. package/lib/label-text-area/style/index.d.ts +1 -0
  80. package/lib/label-text-area/style/index.js +0 -0
  81. package/lib/rc-qrcode/index.d.ts +6 -6
  82. package/lib/rc-qrcode/index.js +4 -4
  83. package/lib/rc-qrcode/useQrcode.d.ts +1 -1
  84. package/lib/rc-qrcode/useQrcode.js +4 -0
  85. package/package.json +3 -3
@@ -0,0 +1,7 @@
1
+ import React from 'react';
2
+ import type { DatePickerProps } from 'antd/es/date-picker';
3
+ export interface LabelDatePickerProps extends Omit<DatePickerProps, 'label'> {
4
+ label: React.ReactNode;
5
+ }
6
+ declare const LabelDatePicker: React.FC<LabelDatePickerProps>;
7
+ export default LabelDatePicker;
@@ -0,0 +1,123 @@
1
+ "use strict";
2
+
3
+ var __assign = this && this.__assign || function () {
4
+ __assign = Object.assign || function (t) {
5
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
6
+ s = arguments[i];
7
+
8
+ for (var p in s) {
9
+ if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
10
+ }
11
+ }
12
+
13
+ return t;
14
+ };
15
+
16
+ return __assign.apply(this, arguments);
17
+ };
18
+
19
+ var __read = this && this.__read || function (o, n) {
20
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
21
+ if (!m) return o;
22
+ var i = m.call(o),
23
+ r,
24
+ ar = [],
25
+ e;
26
+
27
+ try {
28
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) {
29
+ ar.push(r.value);
30
+ }
31
+ } catch (error) {
32
+ e = {
33
+ error: error
34
+ };
35
+ } finally {
36
+ try {
37
+ if (r && !r.done && (m = i["return"])) m.call(i);
38
+ } finally {
39
+ if (e) throw e.error;
40
+ }
41
+ }
42
+
43
+ return ar;
44
+ };
45
+
46
+ var __importDefault = this && this.__importDefault || function (mod) {
47
+ return mod && mod.__esModule ? mod : {
48
+ "default": mod
49
+ };
50
+ };
51
+
52
+ Object.defineProperty(exports, "__esModule", {
53
+ value: true
54
+ });
55
+
56
+ var react_1 = __importDefault(require("react"));
57
+
58
+ var useControllableValue_1 = __importDefault(require("ahooks/lib/useControllableValue"));
59
+
60
+ var date_picker_1 = __importDefault(require("antd/es/date-picker"));
61
+
62
+ var CalendarOutlined_1 = __importDefault(require("a-icons/lib/CalendarOutlined"));
63
+
64
+ var classnames_1 = __importDefault(require("classnames"));
65
+
66
+ var LabelDatePicker = function LabelDatePicker(props) {
67
+ var className = props.className,
68
+ label = props.label;
69
+ var datePickerRef = react_1["default"].useRef(null);
70
+
71
+ var _a = __read(useControllableValue_1["default"](props, {
72
+ valuePropName: 'open',
73
+ trigger: 'setOpen'
74
+ }), 2),
75
+ open = _a[0],
76
+ setOpen = _a[1];
77
+
78
+ var _b = __read(useControllableValue_1["default"](props), 2),
79
+ value = _b[0],
80
+ setValue = _b[1];
81
+
82
+ var handleChange = function handleChange(nextValue) {
83
+ setValue(nextValue);
84
+ };
85
+
86
+ var handleLabelClick = function handleLabelClick() {
87
+ var _a;
88
+
89
+ if (!open) {
90
+ setOpen(!open);
91
+ }
92
+
93
+ (_a = datePickerRef.current) === null || _a === void 0 ? void 0 : _a.focus();
94
+ };
95
+
96
+ var onBlur = function onBlur() {
97
+ setOpen(false);
98
+ };
99
+
100
+ var onOpenChange = function onOpenChange(nextOpen) {
101
+ setOpen(nextOpen);
102
+ };
103
+
104
+ return react_1["default"].createElement("div", {
105
+ className: classnames_1["default"]({
106
+ 'label-date-picker': true,
107
+ 'label-date-picker-label-scale': open || value
108
+ }, className)
109
+ }, react_1["default"].createElement(date_picker_1["default"], __assign({}, props, {
110
+ open: open,
111
+ onChange: handleChange,
112
+ ref: datePickerRef,
113
+ onOpenChange: onOpenChange,
114
+ onBlur: onBlur,
115
+ placeholder: "",
116
+ suffixIcon: react_1["default"].createElement(CalendarOutlined_1["default"], null)
117
+ })), react_1["default"].createElement("label", {
118
+ className: "label-date-picker-text",
119
+ onClick: handleLabelClick
120
+ }, label));
121
+ };
122
+
123
+ exports["default"] = LabelDatePicker;
@@ -0,0 +1,44 @@
1
+ /* stylelint-disable at-rule-empty-line-before,at-rule-name-space-after,at-rule-no-unknown */
2
+ /* stylelint-disable no-duplicate-selectors */
3
+ /* stylelint-disable */
4
+ /* stylelint-disable declaration-bang-space-before,no-duplicate-selectors,string-no-newline */
5
+ .label-date-picker {
6
+ position: relative;
7
+ height: 100%;
8
+ }
9
+ .label-date-picker .ant-picker {
10
+ height: 52px;
11
+ border: 1px solid #e5e5e5;
12
+ border-radius: 12px;
13
+ outline: none;
14
+ }
15
+ .label-date-picker .ant-picker-input input {
16
+ padding-top: 16px;
17
+ padding-left: 4px;
18
+ }
19
+ .label-date-picker .ant-picker-focused {
20
+ border-color: #ff6b00;
21
+ box-shadow: none;
22
+ }
23
+ .label-date-picker .ant-picker-suffix .spotecicon {
24
+ width: 14px;
25
+ color: #323232;
26
+ }
27
+ .label-date-picker-text {
28
+ position: absolute;
29
+ top: 18px;
30
+ left: 16px;
31
+ z-index: 2;
32
+ height: 20px;
33
+ color: #9aa5b5;
34
+ font-size: 14px;
35
+ line-height: 20px;
36
+ transform-origin: top left;
37
+ cursor: pointer;
38
+ transition: all 0.2s ease-out;
39
+ }
40
+ .label-date-picker-label-scale .label-date-picker-text {
41
+ transform: translateY(-10px) scale(0.86);
42
+ cursor: text;
43
+ pointer-events: none;
44
+ }
@@ -0,0 +1,2 @@
1
+ import 'antd/es/date-picker/style';
2
+ import './index.less';
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+
7
+ require("antd/es/date-picker/style");
8
+
9
+ require("./index.less");
@@ -0,0 +1,53 @@
1
+ @import '~antd/es/style/themes/index';
2
+
3
+ @color_9aa5b5: #9aa5b5;
4
+ @font-size-base: 14px;
5
+
6
+ .label-date-picker {
7
+ position: relative;
8
+ height: 100%;
9
+
10
+ .@{ant-prefix}-picker {
11
+ height: 52px;
12
+ border: 1px solid #e5e5e5;
13
+ border-radius: 12px;
14
+ outline: none;
15
+
16
+ &-input input {
17
+ padding-top: 16px;
18
+ padding-left: 4px;
19
+ }
20
+
21
+ &-focused {
22
+ border-color: #ff6b00;
23
+ box-shadow: none;
24
+ }
25
+
26
+ &-suffix .spotecicon {
27
+ width: 14px;
28
+ color: #323232;
29
+ }
30
+ }
31
+
32
+ &-text {
33
+ position: absolute;
34
+ top: 18px;
35
+ left: 16px;
36
+ z-index: 2;
37
+ height: 20px;
38
+ color: @color_9aa5b5;
39
+ font-size: @font-size-base;
40
+ line-height: 20px;
41
+ transform-origin: top left;
42
+ cursor: pointer;
43
+ transition: all 0.2s ease-out;
44
+ }
45
+
46
+ &-label-scale {
47
+ .label-date-picker-text {
48
+ transform: translateY(-10px) scale(0.86);
49
+ cursor: text;
50
+ pointer-events: none;
51
+ }
52
+ }
53
+ }
@@ -0,0 +1,9 @@
1
+ .label-desc {
2
+ margin-top: 10px;
3
+
4
+ :global {
5
+ .desc-item-label {
6
+ color: #ff6b00;
7
+ }
8
+ }
9
+ }
@@ -0,0 +1,13 @@
1
+ import React from 'react';
2
+ export declare type LabelDescItemProps = {
3
+ /** 自定义class */
4
+ className?: string;
5
+ /** label 标签的文本 */
6
+ label?: React.ReactNode;
7
+ /** descItem的value */
8
+ value?: React.ReactNode;
9
+ /** 带有后缀的 item */
10
+ suffix?: React.ReactNode;
11
+ };
12
+ declare const LabelDescItem: React.FC<LabelDescItemProps>;
13
+ export default LabelDescItem;
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+
3
+ var __importDefault = this && this.__importDefault || function (mod) {
4
+ return mod && mod.__esModule ? mod : {
5
+ "default": mod
6
+ };
7
+ };
8
+
9
+ Object.defineProperty(exports, "__esModule", {
10
+ value: true
11
+ });
12
+
13
+ var react_1 = __importDefault(require("react"));
14
+
15
+ var classnames_1 = __importDefault(require("classnames"));
16
+
17
+ var LabelDescItem = function LabelDescItem(props) {
18
+ var className = props.className,
19
+ label = props.label,
20
+ value = props.value,
21
+ suffix = props.suffix;
22
+ return react_1["default"].createElement("div", {
23
+ className: classnames_1["default"]('desc-item', className)
24
+ }, react_1["default"].createElement("div", {
25
+ className: "desc-item-left-content"
26
+ }, label && react_1["default"].createElement("div", {
27
+ className: "desc-item-label"
28
+ }, label), react_1["default"].createElement("div", {
29
+ className: "desc-item-value"
30
+ }, value)), suffix && react_1["default"].createElement("div", {
31
+ className: "desc-item-value"
32
+ }, suffix));
33
+ };
34
+
35
+ exports["default"] = LabelDescItem;
@@ -0,0 +1,23 @@
1
+ .desc-item {
2
+ display: flex;
3
+ align-items: center;
4
+ justify-content: space-between;
5
+ padding: 17px 16px;
6
+ overflow: hidden;
7
+ background-color: #f8f8f8;
8
+ border-radius: 12px;
9
+ }
10
+ .desc-item-left-content {
11
+ display: flex;
12
+ flex-shrink: 0;
13
+ align-items: center;
14
+ }
15
+ .desc-item-label {
16
+ flex-shrink: 0;
17
+ margin-right: 10px;
18
+ color: #b3b3b3;
19
+ font-weight: 500;
20
+ }
21
+ .desc-item-value {
22
+ font-weight: 500;
23
+ }
@@ -0,0 +1 @@
1
+ import './index.less';
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+
7
+ require("./index.less");
@@ -0,0 +1,26 @@
1
+ .desc-item {
2
+ display: flex;
3
+ align-items: center;
4
+ justify-content: space-between;
5
+ padding: 17px 16px;
6
+ overflow: hidden;
7
+ background-color: #f8f8f8;
8
+ border-radius: 12px;
9
+
10
+ &-left-content {
11
+ display: flex;
12
+ flex-shrink: 0;
13
+ align-items: center;
14
+ }
15
+
16
+ &-label {
17
+ flex-shrink: 0;
18
+ margin-right: 10px;
19
+ color: #b3b3b3;
20
+ font-weight: 500;
21
+ }
22
+
23
+ &-value {
24
+ font-weight: 500;
25
+ }
26
+ }
@@ -0,0 +1,23 @@
1
+ import React from 'react';
2
+ export interface LabelInputProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, 'size' | 'prefix' | 'type' | 'onChange' | 'onFocus' | 'onBlur'> {
3
+ /** 自定义class */
4
+ className?: string;
5
+ /** label 标签的文本 */
6
+ label?: React.ReactNode;
7
+ /** 输入框内容 */
8
+ value?: string;
9
+ /** 带有后缀的 input */
10
+ suffix?: React.ReactNode;
11
+ /** 带有前缀的 input */
12
+ prefix?: React.ReactNode;
13
+ /** 输入框内容变化时的回调 */
14
+ onChange?: (value: string) => void;
15
+ /** 输入框失去焦点的回调 */
16
+ onBlur?: (value: string) => void;
17
+ /** 输入框获取焦点的回调 */
18
+ onFocus?: (value: string) => void;
19
+ /** 组件dom id */
20
+ id?: string;
21
+ }
22
+ declare const LabelInput: React.FC<LabelInputProps>;
23
+ export default LabelInput;
@@ -0,0 +1,119 @@
1
+ "use strict";
2
+
3
+ var __read = this && this.__read || function (o, n) {
4
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
5
+ if (!m) return o;
6
+ var i = m.call(o),
7
+ r,
8
+ ar = [],
9
+ e;
10
+
11
+ try {
12
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) {
13
+ ar.push(r.value);
14
+ }
15
+ } catch (error) {
16
+ e = {
17
+ error: error
18
+ };
19
+ } finally {
20
+ try {
21
+ if (r && !r.done && (m = i["return"])) m.call(i);
22
+ } finally {
23
+ if (e) throw e.error;
24
+ }
25
+ }
26
+
27
+ return ar;
28
+ };
29
+
30
+ var __importDefault = this && this.__importDefault || function (mod) {
31
+ return mod && mod.__esModule ? mod : {
32
+ "default": mod
33
+ };
34
+ };
35
+
36
+ Object.defineProperty(exports, "__esModule", {
37
+ value: true
38
+ });
39
+
40
+ var react_1 = __importDefault(require("react"));
41
+
42
+ var classnames_1 = __importDefault(require("classnames"));
43
+
44
+ var ahooks_1 = require("ahooks");
45
+
46
+ var lodash_1 = require("lodash");
47
+
48
+ var LabelInput = function LabelInput(props) {
49
+ var className = props.className,
50
+ prefix = props.prefix,
51
+ suffix = props.suffix,
52
+ label = props.label,
53
+ id = props.id,
54
+ onFocus = props.onFocus,
55
+ onBlur = props.onBlur;
56
+
57
+ var _a = __read(react_1["default"].useState(false), 2),
58
+ focused = _a[0],
59
+ setFocused = _a[1];
60
+
61
+ var _b = __read(ahooks_1.useControllableValue(props), 2),
62
+ value = _b[0],
63
+ setValue = _b[1];
64
+
65
+ var InputDomRef = react_1["default"].useRef(null);
66
+
67
+ var handleFocus = function handleFocus() {
68
+ setFocused(true);
69
+ onFocus === null || onFocus === void 0 ? void 0 : onFocus(value);
70
+ };
71
+
72
+ var handleBlur = function handleBlur() {
73
+ setFocused(false);
74
+ onBlur === null || onBlur === void 0 ? void 0 : onBlur(value);
75
+ };
76
+
77
+ var handleChange = function handleChange(e) {
78
+ var finallyValue = lodash_1.trimStart(e.target.value);
79
+ setValue(finallyValue);
80
+ };
81
+
82
+ var handleLabelClick = function handleLabelClick() {
83
+ var _a;
84
+
85
+ (_a = InputDomRef.current) === null || _a === void 0 ? void 0 : _a.focus();
86
+ };
87
+
88
+ return react_1["default"].createElement("div", {
89
+ className: classnames_1["default"]('label-input-control', className),
90
+ id: id
91
+ }, react_1["default"].createElement("div", {
92
+ className: classnames_1["default"]('label-input-field', {
93
+ 'label-input-affix': prefix || suffix,
94
+ 'label-input-focused': focused
95
+ })
96
+ }, prefix && react_1["default"].createElement("div", {
97
+ className: "label-input-prefix"
98
+ }, prefix), react_1["default"].createElement("div", {
99
+ className: "label-input-warper"
100
+ }, react_1["default"].createElement("input", {
101
+ ref: function ref(el) {
102
+ return InputDomRef.current = el;
103
+ },
104
+ "data-value": value ? value.length : 0,
105
+ className: "label-input",
106
+ type: "text",
107
+ value: value,
108
+ onFocus: handleFocus,
109
+ onBlur: handleBlur,
110
+ onChange: handleChange
111
+ }), react_1["default"].createElement("label", {
112
+ className: "label-input-text",
113
+ onClick: handleLabelClick
114
+ }, label)), suffix && react_1["default"].createElement("div", {
115
+ className: "label-input-suffix"
116
+ }, suffix)));
117
+ };
118
+
119
+ exports["default"] = LabelInput;
@@ -0,0 +1,72 @@
1
+ .label-input {
2
+ z-index: 1;
3
+ width: 100%;
4
+ height: 100%;
5
+ padding: 24px 15px 8px 15px;
6
+ color: #263241;
7
+ font-size: 16px;
8
+ line-height: 16px;
9
+ border: 1px solid #e5e5e5;
10
+ border-radius: 12px;
11
+ outline: 0;
12
+ transition: border 0.3s;
13
+ }
14
+ .label-input:focus {
15
+ border-color: #ff6b00;
16
+ }
17
+ .label-input:focus + label,
18
+ .label-input:not([data-value='0']) + label {
19
+ transform: translateY(-10px) scale(0.86);
20
+ }
21
+ .label-input-control {
22
+ position: relative;
23
+ display: block;
24
+ width: 100%;
25
+ }
26
+ .label-input-field {
27
+ height: 56px;
28
+ overflow: hidden;
29
+ }
30
+ .label-input-affix {
31
+ display: flex;
32
+ align-items: center;
33
+ border: 1px solid #dfe2e7;
34
+ border-radius: 6px;
35
+ }
36
+ .label-input-affix .label-input {
37
+ border: 0;
38
+ }
39
+ .label-input-affix .label-input:focus {
40
+ border: 0;
41
+ }
42
+ .label-input-focused {
43
+ border-color: #ff6b00;
44
+ }
45
+ .label-input-prefix {
46
+ flex-shrink: 0;
47
+ padding-left: 15px;
48
+ }
49
+ .label-input-suffix {
50
+ flex-shrink: 0;
51
+ padding-right: 15px;
52
+ color: #b3b3b3;
53
+ font-weight: 500;
54
+ }
55
+ .label-input-warper {
56
+ position: relative;
57
+ width: 100%;
58
+ height: 100%;
59
+ }
60
+ .label-input-text {
61
+ position: absolute;
62
+ top: 16px;
63
+ left: 16px;
64
+ z-index: 2;
65
+ height: 20px;
66
+ color: #9aa5b5;
67
+ font-size: 14px;
68
+ line-height: 20px;
69
+ transform-origin: top left;
70
+ cursor: text;
71
+ transition: all 0.2s ease-out;
72
+ }
@@ -0,0 +1 @@
1
+ import './index.less';
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+
7
+ require("./index.less");
@@ -0,0 +1,95 @@
1
+ @primary-color: #ff6b00;
2
+ @color_dfe2e7: #dfe2e7;
3
+ @color_9aa5b5: #9aa5b5;
4
+ @color_b3b3b3: #b3b3b3;
5
+ @color_e5e5e5: #e5e5e5;
6
+
7
+ @font-size-base: 14px;
8
+ @font-size-lg: @font-size-base + 2px;
9
+
10
+ @font-weight-500: 500;
11
+
12
+ .label-input {
13
+ z-index: 1;
14
+ width: 100%;
15
+ height: 100%;
16
+ padding: 24px 15px 8px 15px;
17
+ color: #263241;
18
+ font-size: @font-size-lg;
19
+ line-height: 16px;
20
+ border: 1px solid @color_e5e5e5;
21
+ border-radius: 12px;
22
+ outline: 0;
23
+ transition: border 0.3s;
24
+
25
+ &:focus {
26
+ border-color: @primary-color;
27
+ }
28
+
29
+ &:focus + label,
30
+ &:not([data-value='0']) + label {
31
+ transform: translateY(-10px) scale(0.86);
32
+ }
33
+
34
+ &-control {
35
+ position: relative;
36
+ display: block;
37
+ width: 100%;
38
+ }
39
+
40
+ &-field {
41
+ height: 56px;
42
+ overflow: hidden;
43
+ }
44
+
45
+ &-affix {
46
+ display: flex;
47
+ align-items: center;
48
+ border: 1px solid @color_dfe2e7;
49
+ border-radius: 6px;
50
+
51
+ .label-input {
52
+ border: 0;
53
+
54
+ &:focus {
55
+ border: 0;
56
+ }
57
+ }
58
+ }
59
+
60
+ &-focused {
61
+ border-color: @primary-color;
62
+ }
63
+
64
+ &-prefix {
65
+ flex-shrink: 0;
66
+ padding-left: 15px;
67
+ }
68
+
69
+ &-suffix {
70
+ flex-shrink: 0;
71
+ padding-right: 15px;
72
+ color: @color_b3b3b3;
73
+ font-weight: @font-weight-500;
74
+ }
75
+
76
+ &-warper {
77
+ position: relative;
78
+ width: 100%;
79
+ height: 100%;
80
+ }
81
+
82
+ &-text {
83
+ position: absolute;
84
+ top: 16px;
85
+ left: 16px;
86
+ z-index: 2;
87
+ height: 20px;
88
+ color: @color_9aa5b5;
89
+ font-size: @font-size-base;
90
+ line-height: 20px;
91
+ transform-origin: top left;
92
+ cursor: text;
93
+ transition: all 0.2s ease-out;
94
+ }
95
+ }
@@ -0,0 +1,7 @@
1
+ import React from 'react';
2
+ import type { RangePickerProps } from 'antd/es/date-picker';
3
+ export interface LabelRangePickerProps extends Omit<RangePickerProps, 'label'> {
4
+ label: React.ReactNode;
5
+ }
6
+ declare const LabelDatePicker: React.FC<LabelRangePickerProps>;
7
+ export default LabelDatePicker;