acud 0.0.71 → 0.0.72

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.
@@ -122,7 +122,6 @@ function PickerPanel(props) {
122
122
  var now = generateConfig.getNow();
123
123
  if (!date) return now; // When value is null and set showTime
124
124
 
125
- // When value is null and set showTime
126
125
  if (!mergedValue && showTime) {
127
126
  if (_typeof(showTime) === 'object') {
128
127
  return setDateTime(generateConfig, date, showTime.defaultValue || now);
@@ -172,7 +172,6 @@ function InnerRangePicker(props) {
172
172
  } // Fill disabled unit
173
173
 
174
174
 
175
- // Fill disabled unit
176
175
  for (var i = 0; i < 2; i += 1) {
177
176
  if (mergedDisabled[i] && !getValue(postValues, i) && !getValue(allowEmpty, i)) {
178
177
  postValues = updateValues(postValues, generateConfig.getNow(), i);
@@ -0,0 +1,12 @@
1
+ import React from 'react';
2
+ import { InternalSelectProps, SelectInterface } from '../select';
3
+ export interface AutoCompleteProps<ValueType = any> extends Omit<InternalSelectProps<ValueType>, 'inputIcon' | 'loading' | 'mode' | 'optionLabelProp' | 'labelInValue'> {
4
+ }
5
+ declare const RefAutoComplete: (<ValueType = any>(props: AutoCompleteProps<ValueType> & {
6
+ children?: React.ReactNode;
7
+ } & {
8
+ ref?: React.Ref<SelectInterface>;
9
+ }) => React.ReactElement) & {
10
+ Option: import("../select/src/Option").OptionFC;
11
+ };
12
+ export default RefAutoComplete;
@@ -0,0 +1,53 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
3
+ import React from 'react';
4
+ import classNames from 'classnames';
5
+ import Select from '../select';
6
+ import { isValidElement } from '../_util/reactNode';
7
+ import toArray from "rc-util/es/Children/toArray";
8
+ var Option = Select.Option;
9
+
10
+ function isSelectOptionOrSelectOptGroup(child) {
11
+ return child && child.type && (child.type.isSelectOption || child.type.isSelectOptGroup);
12
+ }
13
+
14
+ var AutoComplete = function AutoComplete(props, ref) {
15
+ var _props$prefixCls = props.prefixCls,
16
+ prefixCls = _props$prefixCls === void 0 ? 'acud-select' : _props$prefixCls,
17
+ className = props.className,
18
+ children = props.children;
19
+ var childNodes = toArray(children); // ============================= Input =============================
20
+
21
+ var customizeInput;
22
+
23
+ if (childNodes.length === 1 && isValidElement(childNodes[0]) && !isSelectOptionOrSelectOptGroup(childNodes[0])) {
24
+ var _childNodes = _slicedToArray(childNodes, 1);
25
+
26
+ customizeInput = _childNodes[0];
27
+ }
28
+
29
+ var getInputElement = customizeInput ? function () {
30
+ return customizeInput;
31
+ } : undefined; // ============================ Options ============================
32
+
33
+ var optionChildren;
34
+
35
+ if (childNodes.length && isSelectOptionOrSelectOptGroup(childNodes[0])) {
36
+ optionChildren = children;
37
+ } else {
38
+ optionChildren = [];
39
+ }
40
+
41
+ return /*#__PURE__*/React.createElement(Select, _extends({
42
+ ref: ref
43
+ }, props, {
44
+ prefixCls: prefixCls,
45
+ className: classNames("".concat(prefixCls, "-auto-complete"), className),
46
+ mode: Select.SECRET_COMBOBOX_MODE_DO_NOT_USE,
47
+ getInputElement: getInputElement
48
+ }), optionChildren);
49
+ };
50
+
51
+ var RefAutoComplete = /*#__PURE__*/React.forwardRef(AutoComplete);
52
+ RefAutoComplete.Option = Option;
53
+ export default RefAutoComplete; // export default AutoComplete;
@@ -17,5 +17,5 @@ export interface TextAreaProps {
17
17
  readonly?: boolean;
18
18
  allowClear?: boolean;
19
19
  }
20
- declare const TextArea: React.FC<TextAreaProps>;
20
+ declare const TextArea: React.ForwardRefExoticComponent<TextAreaProps & React.RefAttributes<unknown>>;
21
21
  export default TextArea;
@@ -25,9 +25,9 @@ import classNames from 'classnames';
25
25
  import { MultiToneClear } from 'acud-icon';
26
26
  import React, { useState, useMemo } from 'react';
27
27
  import useMergedState from '../_util/hooks/useMergedState';
28
- import { resolveTargetValue } from './Input';
28
+ import { resolveTargetValue } from './Input'; // const TextArea:React.FC<TextAreaProps> = props => {
29
29
 
30
- var TextArea = function TextArea(props) {
30
+ var TextArea = /*#__PURE__*/React.forwardRef(function (props, ref) {
31
31
  var _classNames;
32
32
 
33
33
  var _props$prefixCls = props.prefixCls,
@@ -135,6 +135,7 @@ var TextArea = function TextArea(props) {
135
135
  className: "".concat(prefixCls, "-outer"),
136
136
  style: style
137
137
  }, /*#__PURE__*/React.createElement(RcTextArea, _extends({}, rest, {
138
+ ref: ref,
138
139
  placeholder: placeholder,
139
140
  className: classNames(classes),
140
141
  onChange: handleOnChange,
@@ -156,6 +157,5 @@ var TextArea = function TextArea(props) {
156
157
  }, /*#__PURE__*/React.createElement("span", {
157
158
  className: classNames(limitClassName, 'limit')
158
159
  }, currentLength, "/", limitLength)));
159
- };
160
-
160
+ });
161
161
  export default TextArea;
@@ -4,11 +4,13 @@ import Label from './Label';
4
4
  import TextArea from './TextArea';
5
5
  import Password from './Password';
6
6
  import MultiSelectInput from './MultiSelectInput';
7
+ import AutoComplete from './AutoComplete';
7
8
  interface CompoundedComponent extends React.ForwardRefExoticComponent<BaseInputProps & React.RefAttributes<HTMLInputElement>> {
8
9
  Label: typeof Label;
9
10
  TextArea: typeof TextArea;
10
11
  Password: typeof Password;
11
12
  MultiSelectInput: typeof MultiSelectInput;
13
+ AutoComplete: typeof AutoComplete;
12
14
  __ACUD_CHECKBOX: boolean;
13
15
  }
14
16
  declare const Input: CompoundedComponent;
package/es/input/index.js CHANGED
@@ -3,9 +3,11 @@ import Label from './Label';
3
3
  import TextArea from './TextArea';
4
4
  import Password from './Password';
5
5
  import MultiSelectInput from './MultiSelectInput';
6
+ import AutoComplete from './AutoComplete';
6
7
  var Input = InputComponent;
7
8
  Input.Label = Label;
8
9
  Input.TextArea = TextArea;
9
10
  Input.Password = Password;
10
11
  Input.MultiSelectInput = MultiSelectInput;
12
+ Input.AutoComplete = AutoComplete;
11
13
  export default Input;
@@ -682,7 +682,6 @@
682
682
  padding-top: 6px;
683
683
  padding-right: 24px;
684
684
  padding-bottom: 24px;
685
- min-height: 100px;
686
685
  border-radius: 4px;
687
686
  font-family: -apple-system, BlinkMacSystemFont, "SF Pro SC", "SF Pro Text", "Helvetica Neue", Helvetica, "PingFang SC", Roboto, 'Arial', 'microsoft yahei ui', "Microsoft YaHei", SimSun, sans-serif;
688
687
  color: #151B26;
@@ -887,3 +886,56 @@
887
886
  .acud-input-select-tags .acud-select-clear {
888
887
  right: 12px;
889
888
  }
889
+ .acud-select-auto-complete .acud-select-selector {
890
+ width: 100%;
891
+ display: flex;
892
+ cursor: text;
893
+ position: relative;
894
+ }
895
+ .acud-select-auto-complete {
896
+ width: 100%;
897
+ display: block;
898
+ }
899
+ .acud-select-auto-complete:not(.acud-select-customize-input) .acud-select-selector {
900
+ position: relative;
901
+ background-color: #fff;
902
+ border-radius: 2px;
903
+ transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
904
+ }
905
+ .acud-select-auto-complete:not(.acud-select-customize-input) .acud-select-selector .acud-select-selection-search .acud-select-selection-search-input {
906
+ cursor: auto;
907
+ margin: 0;
908
+ padding: 0;
909
+ background: 0 0;
910
+ border: none;
911
+ outline: none;
912
+ -webkit-appearance: none;
913
+ -moz-appearance: none;
914
+ appearance: none;
915
+ }
916
+ .acud-select-auto-complete .acud-select-selector {
917
+ width: 100%;
918
+ display: flex;
919
+ cursor: text;
920
+ position: relative;
921
+ }
922
+ .acud-select-auto-complete .acud-select-selector .acud-select-selection-search {
923
+ position: absolute;
924
+ inset: 0 12px;
925
+ z-index: 2;
926
+ }
927
+ .acud-select-auto-complete .acud-select-selector .acud-select-selection-search .acud-select-selection-search-input {
928
+ width: 100%;
929
+ }
930
+ .acud-select-auto-complete .acud-select-selector .acud-select-selection-placeholder {
931
+ flex: 1;
932
+ transition: none;
933
+ pointer-events: none;
934
+ overflow: hidden;
935
+ color: #bfbfbf;
936
+ white-space: nowrap;
937
+ text-overflow: ellipsis;
938
+ padding-left: 12px;
939
+ padding-right: 12px;
940
+ z-index: 1;
941
+ }
@@ -8,6 +8,10 @@
8
8
 
9
9
  @input-password-outer-prefix-cls: ~'@{acud-prefix}-input-password-outer';
10
10
  @input-password-prefix-cls: ~'@{acud-prefix}-input-password';
11
+ @select-auto-complete-prefix-cls: ~'@{acud-prefix}-select-auto-complete';
12
+
13
+ @select-prefix-cls: ~'@{acud-prefix}-select';
14
+
11
15
  // basic logic - line hight, font size
12
16
  // content layer - 只处理文字 Icon, 没有开关config,对应四种交互状态配置
13
17
  // background layer - 背景层 填色、描边、阴影,可以通过开关config配置, 对应四种交互状态
@@ -254,7 +258,7 @@
254
258
  padding-top: 1.5*@padding-xsm;
255
259
  padding-right: 2*@padding-m;
256
260
  padding-bottom: 6*@padding-xsm;
257
- min-height: 100px;
261
+ // min-height: 100px;
258
262
  border-radius: @input-border-lg-radius;
259
263
  font-family: -apple-system, BlinkMacSystemFont, "SF Pro SC", "SF Pro Text", "Helvetica Neue", Helvetica, "PingFang SC", Roboto, 'Arial', 'microsoft yahei ui', "Microsoft YaHei", SimSun, sans-serif;
260
264
  &::-webkit-input-placeholder {
@@ -379,4 +383,62 @@
379
383
  right:12px;
380
384
  }
381
385
  }
386
+ .acud-select-auto-complete{
387
+ .acud-select-selector{
388
+ width:100%;
389
+ display: flex;
390
+ cursor: text;
391
+ position: relative;
392
+ }
393
+ }
394
+ .@{select-auto-complete-prefix-cls}{
395
+ width:100%;
396
+ display: block;
397
+ &:not(.acud-select-customize-input) {
398
+ .acud-select-selector{
399
+ position: relative;
400
+ background-color: #fff;
401
+ border-radius: 2px;
402
+ transition: all .3s cubic-bezier(.645,.045,.355,1);
403
+ .acud-select-selection-search{
404
+ .acud-select-selection-search-input{
405
+ cursor: auto;
406
+ margin: 0;
407
+ padding: 0;
408
+ background: 0 0;
409
+ border: none;
410
+ outline: none;
411
+ appearance: none;
412
+ }
413
+ }
414
+ }
415
+
416
+ }
417
+ .@{select-prefix-cls}-selector{
418
+ width:100%;
419
+ display: flex;
420
+ cursor: text;
421
+ position: relative;
422
+ .@{select-prefix-cls}-selection-search{
423
+ position: absolute;
424
+ inset: 0 12px;
425
+ z-index: 2;
426
+ .@{select-prefix-cls}-selection-search-input{
427
+ width:100%;
428
+ }
429
+ }
430
+ .@{select-prefix-cls}-selection-placeholder{
431
+ flex:1;
432
+ transition: none;
433
+ pointer-events: none;
434
+ overflow: hidden;
435
+ color: #bfbfbf;
436
+ white-space: nowrap;
437
+ text-overflow: ellipsis;
438
+ padding-left: 12px;
439
+ padding-right: 12px;
440
+ z-index: 1;
441
+ }
382
442
 
443
+ }
444
+ }
@@ -1,5 +1,5 @@
1
- declare const _default: () => (callback: () => void) => void;
2
1
  /**
3
2
  * Always trigger latest once when call multiple time
4
3
  */
4
+ declare const _default: () => (callback: () => void) => void;
5
5
  export default _default;
@@ -29,7 +29,7 @@ declare const SelectRef: <VT extends SelectValue = SelectValue>(props: SelectPro
29
29
  ref?: React.Ref<RefSelectProps>;
30
30
  }) => React.ReactElement;
31
31
  declare type InternalSelectType = typeof SelectRef;
32
- interface SelectInterface extends InternalSelectType {
32
+ export interface SelectInterface extends InternalSelectType {
33
33
  SECRET_COMBOBOX_MODE_DO_NOT_USE: string;
34
34
  Option: typeof Option;
35
35
  OptGroup: typeof OptGroup;
@@ -135,7 +135,6 @@ export function RawList(props, ref) {
135
135
  } // Always use virtual scroll bar in avoid shaking
136
136
 
137
137
 
138
- // Always use virtual scroll bar in avoid shaking
139
138
  if (!inVirtual) {
140
139
  return {
141
140
  scrollHeight: ((_a = fillerInnerRef.current) === null || _a === void 0 ? void 0 : _a.offsetHeight) || 0,
@@ -157,14 +156,12 @@ export function RawList(props, ref) {
157
156
  var cacheHeight = heights.get(key);
158
157
  var currentItemBottom = itemTop + (cacheHeight === undefined ? itemHeight : cacheHeight); // Check item top in the range
159
158
 
160
- // Check item top in the range
161
159
  if (currentItemBottom >= scrollTop && startIndex === undefined) {
162
160
  startIndex = i;
163
161
  startOffset = itemTop;
164
162
  } // Check item bottom in the range. We will render additional one item for motion usage
165
163
 
166
164
 
167
- // Check item bottom in the range. We will render additional one item for motion usage
168
165
  if (currentItemBottom > scrollTop + height && endIndex === undefined) {
169
166
  endIndex = i;
170
167
  }
@@ -175,9 +172,6 @@ export function RawList(props, ref) {
175
172
  /* istanbul ignore next */
176
173
 
177
174
 
178
- // Fallback to normal if not match. This code should never reach
179
-
180
- /* istanbul ignore next */
181
175
  if (startIndex === undefined) {
182
176
  startIndex = 0;
183
177
  startOffset = 0;
@@ -188,7 +182,6 @@ export function RawList(props, ref) {
188
182
  } // Give cache to improve scroll experience
189
183
 
190
184
 
191
- // Give cache to improve scroll experience
192
185
  endIndex = Math.min(endIndex + 1, mergedData.length);
193
186
  return {
194
187
  scrollHeight: itemTop,
@@ -159,7 +159,6 @@ function PickerPanel(props) {
159
159
  var now = generateConfig.getNow();
160
160
  if (!date) return now; // When value is null and set showTime
161
161
 
162
- // When value is null and set showTime
163
162
  if (!mergedValue && showTime) {
164
163
  if ((0, _typeof2["default"])(showTime) === 'object') {
165
164
  return (0, _timeUtil.setDateTime)(generateConfig, date, showTime.defaultValue || now);
@@ -212,7 +212,6 @@ function InnerRangePicker(props) {
212
212
  } // Fill disabled unit
213
213
 
214
214
 
215
- // Fill disabled unit
216
215
  for (var i = 0; i < 2; i += 1) {
217
216
  if (mergedDisabled[i] && !(0, _miscUtil.getValue)(postValues, i) && !(0, _miscUtil.getValue)(allowEmpty, i)) {
218
217
  postValues = (0, _miscUtil.updateValues)(postValues, generateConfig.getNow(), i);
@@ -0,0 +1,12 @@
1
+ import React from 'react';
2
+ import { InternalSelectProps, SelectInterface } from '../select';
3
+ export interface AutoCompleteProps<ValueType = any> extends Omit<InternalSelectProps<ValueType>, 'inputIcon' | 'loading' | 'mode' | 'optionLabelProp' | 'labelInValue'> {
4
+ }
5
+ declare const RefAutoComplete: (<ValueType = any>(props: AutoCompleteProps<ValueType> & {
6
+ children?: React.ReactNode;
7
+ } & {
8
+ ref?: React.Ref<SelectInterface>;
9
+ }) => React.ReactElement) & {
10
+ Option: import("../select/src/Option").OptionFC;
11
+ };
12
+ export default RefAutoComplete;
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = void 0;
9
+
10
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
+
12
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
13
+
14
+ var _react = _interopRequireDefault(require("react"));
15
+
16
+ var _classnames = _interopRequireDefault(require("classnames"));
17
+
18
+ var _select = _interopRequireDefault(require("../select"));
19
+
20
+ var _reactNode = require("../_util/reactNode");
21
+
22
+ var _toArray = _interopRequireDefault(require("rc-util/lib/Children/toArray"));
23
+
24
+ var Option = _select["default"].Option;
25
+
26
+ function isSelectOptionOrSelectOptGroup(child) {
27
+ return child && child.type && (child.type.isSelectOption || child.type.isSelectOptGroup);
28
+ }
29
+
30
+ var AutoComplete = function AutoComplete(props, ref) {
31
+ var _props$prefixCls = props.prefixCls,
32
+ prefixCls = _props$prefixCls === void 0 ? 'acud-select' : _props$prefixCls,
33
+ className = props.className,
34
+ children = props.children;
35
+ var childNodes = (0, _toArray["default"])(children); // ============================= Input =============================
36
+
37
+ var customizeInput;
38
+
39
+ if (childNodes.length === 1 && (0, _reactNode.isValidElement)(childNodes[0]) && !isSelectOptionOrSelectOptGroup(childNodes[0])) {
40
+ var _childNodes = (0, _slicedToArray2["default"])(childNodes, 1);
41
+
42
+ customizeInput = _childNodes[0];
43
+ }
44
+
45
+ var getInputElement = customizeInput ? function () {
46
+ return customizeInput;
47
+ } : undefined; // ============================ Options ============================
48
+
49
+ var optionChildren;
50
+
51
+ if (childNodes.length && isSelectOptionOrSelectOptGroup(childNodes[0])) {
52
+ optionChildren = children;
53
+ } else {
54
+ optionChildren = [];
55
+ }
56
+
57
+ return /*#__PURE__*/_react["default"].createElement(_select["default"], (0, _extends2["default"])({
58
+ ref: ref
59
+ }, props, {
60
+ prefixCls: prefixCls,
61
+ className: (0, _classnames["default"])("".concat(prefixCls, "-auto-complete"), className),
62
+ mode: _select["default"].SECRET_COMBOBOX_MODE_DO_NOT_USE,
63
+ getInputElement: getInputElement
64
+ }), optionChildren);
65
+ };
66
+
67
+ var RefAutoComplete = /*#__PURE__*/_react["default"].forwardRef(AutoComplete);
68
+
69
+ RefAutoComplete.Option = Option;
70
+ var _default = RefAutoComplete; // export default AutoComplete;
71
+
72
+ exports["default"] = _default;
@@ -17,5 +17,5 @@ export interface TextAreaProps {
17
17
  readonly?: boolean;
18
18
  allowClear?: boolean;
19
19
  }
20
- declare const TextArea: React.FC<TextAreaProps>;
20
+ declare const TextArea: React.ForwardRefExoticComponent<TextAreaProps & React.RefAttributes<unknown>>;
21
21
  export default TextArea;
@@ -49,7 +49,8 @@ var __rest = void 0 && (void 0).__rest || function (s, e) {
49
49
  */
50
50
 
51
51
 
52
- var TextArea = function TextArea(props) {
52
+ // const TextArea:React.FC<TextAreaProps> = props => {
53
+ var TextArea = /*#__PURE__*/_react["default"].forwardRef(function (props, ref) {
53
54
  var _classNames;
54
55
 
55
56
  var _props$prefixCls = props.prefixCls,
@@ -157,6 +158,7 @@ var TextArea = function TextArea(props) {
157
158
  className: "".concat(prefixCls, "-outer"),
158
159
  style: style
159
160
  }, /*#__PURE__*/_react["default"].createElement(_rcTextarea["default"], (0, _extends2["default"])({}, rest, {
161
+ ref: ref,
160
162
  placeholder: placeholder,
161
163
  className: (0, _classnames["default"])(classes),
162
164
  onChange: handleOnChange,
@@ -178,7 +180,7 @@ var TextArea = function TextArea(props) {
178
180
  }, /*#__PURE__*/_react["default"].createElement("span", {
179
181
  className: (0, _classnames["default"])(limitClassName, 'limit')
180
182
  }, currentLength, "/", limitLength)));
181
- };
183
+ });
182
184
 
183
185
  var _default = TextArea;
184
186
  exports["default"] = _default;
@@ -4,11 +4,13 @@ import Label from './Label';
4
4
  import TextArea from './TextArea';
5
5
  import Password from './Password';
6
6
  import MultiSelectInput from './MultiSelectInput';
7
+ import AutoComplete from './AutoComplete';
7
8
  interface CompoundedComponent extends React.ForwardRefExoticComponent<BaseInputProps & React.RefAttributes<HTMLInputElement>> {
8
9
  Label: typeof Label;
9
10
  TextArea: typeof TextArea;
10
11
  Password: typeof Password;
11
12
  MultiSelectInput: typeof MultiSelectInput;
13
+ AutoComplete: typeof AutoComplete;
12
14
  __ACUD_CHECKBOX: boolean;
13
15
  }
14
16
  declare const Input: CompoundedComponent;
@@ -17,10 +17,13 @@ var _Password = _interopRequireDefault(require("./Password"));
17
17
 
18
18
  var _MultiSelectInput = _interopRequireDefault(require("./MultiSelectInput"));
19
19
 
20
+ var _AutoComplete = _interopRequireDefault(require("./AutoComplete"));
21
+
20
22
  var Input = _Input["default"];
21
23
  Input.Label = _Label["default"];
22
24
  Input.TextArea = _TextArea["default"];
23
25
  Input.Password = _Password["default"];
24
26
  Input.MultiSelectInput = _MultiSelectInput["default"];
27
+ Input.AutoComplete = _AutoComplete["default"];
25
28
  var _default = Input;
26
29
  exports["default"] = _default;
@@ -682,7 +682,6 @@
682
682
  padding-top: 6px;
683
683
  padding-right: 24px;
684
684
  padding-bottom: 24px;
685
- min-height: 100px;
686
685
  border-radius: 4px;
687
686
  font-family: -apple-system, BlinkMacSystemFont, "SF Pro SC", "SF Pro Text", "Helvetica Neue", Helvetica, "PingFang SC", Roboto, 'Arial', 'microsoft yahei ui', "Microsoft YaHei", SimSun, sans-serif;
688
687
  color: #151B26;
@@ -887,3 +886,56 @@
887
886
  .acud-input-select-tags .acud-select-clear {
888
887
  right: 12px;
889
888
  }
889
+ .acud-select-auto-complete .acud-select-selector {
890
+ width: 100%;
891
+ display: flex;
892
+ cursor: text;
893
+ position: relative;
894
+ }
895
+ .acud-select-auto-complete {
896
+ width: 100%;
897
+ display: block;
898
+ }
899
+ .acud-select-auto-complete:not(.acud-select-customize-input) .acud-select-selector {
900
+ position: relative;
901
+ background-color: #fff;
902
+ border-radius: 2px;
903
+ transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
904
+ }
905
+ .acud-select-auto-complete:not(.acud-select-customize-input) .acud-select-selector .acud-select-selection-search .acud-select-selection-search-input {
906
+ cursor: auto;
907
+ margin: 0;
908
+ padding: 0;
909
+ background: 0 0;
910
+ border: none;
911
+ outline: none;
912
+ -webkit-appearance: none;
913
+ -moz-appearance: none;
914
+ appearance: none;
915
+ }
916
+ .acud-select-auto-complete .acud-select-selector {
917
+ width: 100%;
918
+ display: flex;
919
+ cursor: text;
920
+ position: relative;
921
+ }
922
+ .acud-select-auto-complete .acud-select-selector .acud-select-selection-search {
923
+ position: absolute;
924
+ inset: 0 12px;
925
+ z-index: 2;
926
+ }
927
+ .acud-select-auto-complete .acud-select-selector .acud-select-selection-search .acud-select-selection-search-input {
928
+ width: 100%;
929
+ }
930
+ .acud-select-auto-complete .acud-select-selector .acud-select-selection-placeholder {
931
+ flex: 1;
932
+ transition: none;
933
+ pointer-events: none;
934
+ overflow: hidden;
935
+ color: #bfbfbf;
936
+ white-space: nowrap;
937
+ text-overflow: ellipsis;
938
+ padding-left: 12px;
939
+ padding-right: 12px;
940
+ z-index: 1;
941
+ }
@@ -8,6 +8,10 @@
8
8
 
9
9
  @input-password-outer-prefix-cls: ~'@{acud-prefix}-input-password-outer';
10
10
  @input-password-prefix-cls: ~'@{acud-prefix}-input-password';
11
+ @select-auto-complete-prefix-cls: ~'@{acud-prefix}-select-auto-complete';
12
+
13
+ @select-prefix-cls: ~'@{acud-prefix}-select';
14
+
11
15
  // basic logic - line hight, font size
12
16
  // content layer - 只处理文字 Icon, 没有开关config,对应四种交互状态配置
13
17
  // background layer - 背景层 填色、描边、阴影,可以通过开关config配置, 对应四种交互状态
@@ -254,7 +258,7 @@
254
258
  padding-top: 1.5*@padding-xsm;
255
259
  padding-right: 2*@padding-m;
256
260
  padding-bottom: 6*@padding-xsm;
257
- min-height: 100px;
261
+ // min-height: 100px;
258
262
  border-radius: @input-border-lg-radius;
259
263
  font-family: -apple-system, BlinkMacSystemFont, "SF Pro SC", "SF Pro Text", "Helvetica Neue", Helvetica, "PingFang SC", Roboto, 'Arial', 'microsoft yahei ui', "Microsoft YaHei", SimSun, sans-serif;
260
264
  &::-webkit-input-placeholder {
@@ -379,4 +383,62 @@
379
383
  right:12px;
380
384
  }
381
385
  }
386
+ .acud-select-auto-complete{
387
+ .acud-select-selector{
388
+ width:100%;
389
+ display: flex;
390
+ cursor: text;
391
+ position: relative;
392
+ }
393
+ }
394
+ .@{select-auto-complete-prefix-cls}{
395
+ width:100%;
396
+ display: block;
397
+ &:not(.acud-select-customize-input) {
398
+ .acud-select-selector{
399
+ position: relative;
400
+ background-color: #fff;
401
+ border-radius: 2px;
402
+ transition: all .3s cubic-bezier(.645,.045,.355,1);
403
+ .acud-select-selection-search{
404
+ .acud-select-selection-search-input{
405
+ cursor: auto;
406
+ margin: 0;
407
+ padding: 0;
408
+ background: 0 0;
409
+ border: none;
410
+ outline: none;
411
+ appearance: none;
412
+ }
413
+ }
414
+ }
415
+
416
+ }
417
+ .@{select-prefix-cls}-selector{
418
+ width:100%;
419
+ display: flex;
420
+ cursor: text;
421
+ position: relative;
422
+ .@{select-prefix-cls}-selection-search{
423
+ position: absolute;
424
+ inset: 0 12px;
425
+ z-index: 2;
426
+ .@{select-prefix-cls}-selection-search-input{
427
+ width:100%;
428
+ }
429
+ }
430
+ .@{select-prefix-cls}-selection-placeholder{
431
+ flex:1;
432
+ transition: none;
433
+ pointer-events: none;
434
+ overflow: hidden;
435
+ color: #bfbfbf;
436
+ white-space: nowrap;
437
+ text-overflow: ellipsis;
438
+ padding-left: 12px;
439
+ padding-right: 12px;
440
+ z-index: 1;
441
+ }
382
442
 
443
+ }
444
+ }