assui 2.0.90 → 2.0.91

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.
@@ -56,9 +56,9 @@ var __read = this && this.__read || function (o, n) {
56
56
 
57
57
  import * as React from 'react';
58
58
  import { find } from 'lodash';
59
+ import qsHelp from 'aa-utils/lib/qsHelp';
59
60
  import Badge from 'antd/es/badge';
60
61
  import Tabs from 'antd/es/tabs';
61
- import { useParams } from 'react-router-dom';
62
62
  import useUrlState from '@ahooksjs/use-url-state';
63
63
  import useControllableValue from 'ahooks/es/useControllableValue';
64
64
  import toArray from 'rc-util/lib/Children/toArray';
@@ -76,7 +76,7 @@ var KeepTab = function KeepTab(props) {
76
76
  badgeProps = _b === void 0 ? defaultBadgeProps : _b,
77
77
  restProps = __rest(props, ["children", "defaultActiveKey", "saveActiveKeyName", "onChange", "badgeProps"]);
78
78
 
79
- var defaultUrlParams = useParams();
79
+ var defaultUrlParams = qsHelp.getQueryObject();
80
80
 
81
81
  var _c = __read(useUrlState((_a = {}, _a[saveActiveKeyName] = defaultUrlParams[saveActiveKeyName] || defaultActiveKey, _a)), 2),
82
82
  urlParams = _c[0],
@@ -0,0 +1,8 @@
1
+ import React from 'react';
2
+ import type { AutoCompleteProps } from 'antd/es/auto-complete';
3
+ export interface LabelAutoCompleteProps extends AutoCompleteProps {
4
+ label: React.ReactNode;
5
+ className: string;
6
+ }
7
+ declare const LabelAutoComplete: (props: LabelAutoCompleteProps) => JSX.Element;
8
+ export default LabelAutoComplete;
@@ -0,0 +1,107 @@
1
+ var __assign = this && this.__assign || function () {
2
+ __assign = Object.assign || function (t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+
6
+ for (var p in s) {
7
+ if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
8
+ }
9
+ }
10
+
11
+ return t;
12
+ };
13
+
14
+ return __assign.apply(this, arguments);
15
+ };
16
+
17
+ var __read = this && this.__read || function (o, n) {
18
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
19
+ if (!m) return o;
20
+ var i = m.call(o),
21
+ r,
22
+ ar = [],
23
+ e;
24
+
25
+ try {
26
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) {
27
+ ar.push(r.value);
28
+ }
29
+ } catch (error) {
30
+ e = {
31
+ error: error
32
+ };
33
+ } finally {
34
+ try {
35
+ if (r && !r.done && (m = i["return"])) m.call(i);
36
+ } finally {
37
+ if (e) throw e.error;
38
+ }
39
+ }
40
+
41
+ return ar;
42
+ };
43
+
44
+ import React from 'react';
45
+ import useControllableValue from 'ahooks/lib/useControllableValue';
46
+ import AutoComplete from 'antd/es/auto-complete';
47
+ import classNames from 'classnames';
48
+ import { omit, trimStart } from 'lodash';
49
+
50
+ var LabelAutoComplete = function LabelAutoComplete(props) {
51
+ var className = props.className,
52
+ label = props.label,
53
+ onChange = props.onChange,
54
+ options = props.options;
55
+ var autoComplete = React.useRef(null);
56
+
57
+ var _a = __read(useControllableValue(props, {
58
+ valuePropName: 'open',
59
+ trigger: 'setOpen'
60
+ }), 2),
61
+ open = _a[0],
62
+ setOpen = _a[1];
63
+
64
+ var _b = __read(useControllableValue(props), 2),
65
+ value = _b[0],
66
+ setValue = _b[1];
67
+
68
+ var handleChange = function handleChange(nextValue) {
69
+ var finallyValue = trimStart(nextValue);
70
+ setValue(finallyValue);
71
+ onChange && onChange(finallyValue, options || []);
72
+ };
73
+
74
+ var handleLabelClick = function handleLabelClick() {
75
+ var _a;
76
+
77
+ if (!open) {
78
+ setOpen(!open);
79
+ }
80
+
81
+ (_a = autoComplete.current) === null || _a === void 0 ? void 0 : _a.focus();
82
+ };
83
+
84
+ var onDropdownVisibleChange = function onDropdownVisibleChange(nextOpen) {
85
+ setOpen(nextOpen);
86
+ };
87
+
88
+ return /*#__PURE__*/React.createElement("div", {
89
+ className: classNames({
90
+ 'label-auto-complete': true,
91
+ 'label-auto-complete-label-scale': open || value
92
+ }, className)
93
+ }, /*#__PURE__*/React.createElement(AutoComplete, __assign({}, omit(props, ['open', 'onChange', 'className', 'label']), {
94
+ open: open,
95
+ ref: autoComplete,
96
+ value: value,
97
+ size: "large",
98
+ className: "label-auto-complete-selector",
99
+ onChange: handleChange,
100
+ onDropdownVisibleChange: onDropdownVisibleChange
101
+ })), /*#__PURE__*/React.createElement("label", {
102
+ className: "label-auto-complete-text",
103
+ onClick: handleLabelClick
104
+ }, label));
105
+ };
106
+
107
+ export default LabelAutoComplete;
@@ -0,0 +1,46 @@
1
+ /* stylelint-disable indentation */
2
+ /* stylelint-disable at-rule-empty-line-before,at-rule-name-space-after,at-rule-no-unknown */
3
+ /* stylelint-disable no-duplicate-selectors */
4
+ /* stylelint-disable */
5
+ /* stylelint-disable declaration-bang-space-before,no-duplicate-selectors,string-no-newline */
6
+ .label-auto-complete {
7
+ position: relative;
8
+ width: 100%;
9
+ height: 100%;
10
+ }
11
+ .label-auto-complete .ant-select-single.ant-select-lg:not(.ant-select-customize-input) .ant-select-selector {
12
+ height: 52px;
13
+ border: 1px solid #e5e5e5;
14
+ border-radius: 12px;
15
+ outline: none;
16
+ }
17
+ .label-auto-complete .ant-select-focused:not(.ant-select-disabled).ant-select:not(.ant-select-customize-input) .ant-select-selector {
18
+ border-color: #ff6b00;
19
+ box-shadow: none;
20
+ }
21
+ .label-auto-complete .ant-select-single.ant-select-show-arrow .ant-select-selection-item {
22
+ padding-top: 14px;
23
+ padding-left: 4px;
24
+ }
25
+ .label-auto-complete .ant-select-selection-search {
26
+ padding-top: 14px;
27
+ padding-left: 2px;
28
+ }
29
+ .label-auto-complete-text {
30
+ position: absolute;
31
+ top: 18px;
32
+ left: 16px;
33
+ z-index: 2;
34
+ height: 20px;
35
+ color: #9aa5b5;
36
+ font-size: 14px;
37
+ line-height: 20px;
38
+ transform-origin: top left;
39
+ cursor: text;
40
+ transition: all 0.2s ease-out;
41
+ }
42
+ .label-auto-complete-label-scale .label-auto-complete-text {
43
+ transform: translateY(-10px) scale(0.86);
44
+ cursor: text;
45
+ pointer-events: none;
46
+ }
@@ -0,0 +1,2 @@
1
+ import 'antd/es/select/style';
2
+ import './index.less';
@@ -0,0 +1,2 @@
1
+ import 'antd/es/select/style';
2
+ import './index.less';
@@ -0,0 +1,58 @@
1
+ /* stylelint-disable indentation */
2
+ @import '~antd/es/style/themes/index';
3
+
4
+ @color_9aa5b5: #9aa5b5;
5
+ @font-size-base: 14px;
6
+
7
+ .label-auto-complete {
8
+ position: relative;
9
+ width: 100%;
10
+ height: 100%;
11
+
12
+ .@{ant-prefix}-select-single.@{ant-prefix}-select-lg:not(.@{ant-prefix}-select-customize-input)
13
+ .@{ant-prefix}-select-selector {
14
+ height: 52px;
15
+ border: 1px solid #e5e5e5;
16
+ border-radius: 12px;
17
+ outline: none;
18
+ }
19
+
20
+ .@{ant-prefix}-select-focused:not(.@{ant-prefix}-select-disabled).@{ant-prefix}-select:not(.@{ant-prefix}-select-customize-input)
21
+ .@{ant-prefix}-select-selector {
22
+ border-color: #ff6b00;
23
+ box-shadow: none;
24
+ }
25
+
26
+ .@{ant-prefix}-select-single.@{ant-prefix}-select-show-arrow
27
+ .@{ant-prefix}-select-selection-item {
28
+ padding-top: 14px;
29
+ padding-left: 4px;
30
+ }
31
+
32
+ .@{ant-prefix}-select-selection-search {
33
+ padding-top: 14px;
34
+ padding-left: 2px;
35
+ }
36
+
37
+ &-text {
38
+ position: absolute;
39
+ top: 18px;
40
+ left: 16px;
41
+ z-index: 2;
42
+ height: 20px;
43
+ color: @color_9aa5b5;
44
+ font-size: @font-size-base;
45
+ line-height: 20px;
46
+ transform-origin: top left;
47
+ cursor: text;
48
+ transition: all 0.2s ease-out;
49
+ }
50
+
51
+ &-label-scale {
52
+ .label-auto-complete-text {
53
+ transform: translateY(-10px) scale(0.86);
54
+ cursor: text;
55
+ pointer-events: none;
56
+ }
57
+ }
58
+ }
@@ -104,12 +104,12 @@ var React = __importStar(require("react"));
104
104
 
105
105
  var lodash_1 = require("lodash");
106
106
 
107
+ var qsHelp_1 = __importDefault(require("aa-utils/lib/qsHelp"));
108
+
107
109
  var badge_1 = __importDefault(require("antd/es/badge"));
108
110
 
109
111
  var tabs_1 = __importDefault(require("antd/es/tabs"));
110
112
 
111
- var react_router_dom_1 = require("react-router-dom");
112
-
113
113
  var use_url_state_1 = __importDefault(require("@ahooksjs/use-url-state"));
114
114
 
115
115
  var useControllableValue_1 = __importDefault(require("ahooks/es/useControllableValue"));
@@ -130,7 +130,7 @@ var KeepTab = function KeepTab(props) {
130
130
  badgeProps = _b === void 0 ? defaultBadgeProps : _b,
131
131
  restProps = __rest(props, ["children", "defaultActiveKey", "saveActiveKeyName", "onChange", "badgeProps"]);
132
132
 
133
- var defaultUrlParams = react_router_dom_1.useParams();
133
+ var defaultUrlParams = qsHelp_1["default"].getQueryObject();
134
134
 
135
135
  var _c = __read(use_url_state_1["default"]((_a = {}, _a[saveActiveKeyName] = defaultUrlParams[saveActiveKeyName] || defaultActiveKey, _a)), 2),
136
136
  urlParams = _c[0],
@@ -0,0 +1,8 @@
1
+ import React from 'react';
2
+ import type { AutoCompleteProps } from 'antd/es/auto-complete';
3
+ export interface LabelAutoCompleteProps extends AutoCompleteProps {
4
+ label: React.ReactNode;
5
+ className: string;
6
+ }
7
+ declare const LabelAutoComplete: (props: LabelAutoCompleteProps) => JSX.Element;
8
+ export default LabelAutoComplete;
@@ -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 auto_complete_1 = __importDefault(require("antd/es/auto-complete"));
61
+
62
+ var classnames_1 = __importDefault(require("classnames"));
63
+
64
+ var lodash_1 = require("lodash");
65
+
66
+ var LabelAutoComplete = function LabelAutoComplete(props) {
67
+ var className = props.className,
68
+ label = props.label,
69
+ onChange = props.onChange,
70
+ options = props.options;
71
+ var autoComplete = react_1["default"].useRef(null);
72
+
73
+ var _a = __read(useControllableValue_1["default"](props, {
74
+ valuePropName: 'open',
75
+ trigger: 'setOpen'
76
+ }), 2),
77
+ open = _a[0],
78
+ setOpen = _a[1];
79
+
80
+ var _b = __read(useControllableValue_1["default"](props), 2),
81
+ value = _b[0],
82
+ setValue = _b[1];
83
+
84
+ var handleChange = function handleChange(nextValue) {
85
+ var finallyValue = lodash_1.trimStart(nextValue);
86
+ setValue(finallyValue);
87
+ onChange && onChange(finallyValue, options || []);
88
+ };
89
+
90
+ var handleLabelClick = function handleLabelClick() {
91
+ var _a;
92
+
93
+ if (!open) {
94
+ setOpen(!open);
95
+ }
96
+
97
+ (_a = autoComplete.current) === null || _a === void 0 ? void 0 : _a.focus();
98
+ };
99
+
100
+ var onDropdownVisibleChange = function onDropdownVisibleChange(nextOpen) {
101
+ setOpen(nextOpen);
102
+ };
103
+
104
+ return react_1["default"].createElement("div", {
105
+ className: classnames_1["default"]({
106
+ 'label-auto-complete': true,
107
+ 'label-auto-complete-label-scale': open || value
108
+ }, className)
109
+ }, react_1["default"].createElement(auto_complete_1["default"], __assign({}, lodash_1.omit(props, ['open', 'onChange', 'className', 'label']), {
110
+ open: open,
111
+ ref: autoComplete,
112
+ value: value,
113
+ size: "large",
114
+ className: "label-auto-complete-selector",
115
+ onChange: handleChange,
116
+ onDropdownVisibleChange: onDropdownVisibleChange
117
+ })), react_1["default"].createElement("label", {
118
+ className: "label-auto-complete-text",
119
+ onClick: handleLabelClick
120
+ }, label));
121
+ };
122
+
123
+ exports["default"] = LabelAutoComplete;
@@ -0,0 +1,46 @@
1
+ /* stylelint-disable indentation */
2
+ /* stylelint-disable at-rule-empty-line-before,at-rule-name-space-after,at-rule-no-unknown */
3
+ /* stylelint-disable no-duplicate-selectors */
4
+ /* stylelint-disable */
5
+ /* stylelint-disable declaration-bang-space-before,no-duplicate-selectors,string-no-newline */
6
+ .label-auto-complete {
7
+ position: relative;
8
+ width: 100%;
9
+ height: 100%;
10
+ }
11
+ .label-auto-complete .ant-select-single.ant-select-lg:not(.ant-select-customize-input) .ant-select-selector {
12
+ height: 52px;
13
+ border: 1px solid #e5e5e5;
14
+ border-radius: 12px;
15
+ outline: none;
16
+ }
17
+ .label-auto-complete .ant-select-focused:not(.ant-select-disabled).ant-select:not(.ant-select-customize-input) .ant-select-selector {
18
+ border-color: #ff6b00;
19
+ box-shadow: none;
20
+ }
21
+ .label-auto-complete .ant-select-single.ant-select-show-arrow .ant-select-selection-item {
22
+ padding-top: 14px;
23
+ padding-left: 4px;
24
+ }
25
+ .label-auto-complete .ant-select-selection-search {
26
+ padding-top: 14px;
27
+ padding-left: 2px;
28
+ }
29
+ .label-auto-complete-text {
30
+ position: absolute;
31
+ top: 18px;
32
+ left: 16px;
33
+ z-index: 2;
34
+ height: 20px;
35
+ color: #9aa5b5;
36
+ font-size: 14px;
37
+ line-height: 20px;
38
+ transform-origin: top left;
39
+ cursor: text;
40
+ transition: all 0.2s ease-out;
41
+ }
42
+ .label-auto-complete-label-scale .label-auto-complete-text {
43
+ transform: translateY(-10px) scale(0.86);
44
+ cursor: text;
45
+ pointer-events: none;
46
+ }
@@ -0,0 +1,2 @@
1
+ import 'antd/es/select/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/select/style");
8
+
9
+ require("./index.less");
@@ -0,0 +1,58 @@
1
+ /* stylelint-disable indentation */
2
+ @import '~antd/es/style/themes/index';
3
+
4
+ @color_9aa5b5: #9aa5b5;
5
+ @font-size-base: 14px;
6
+
7
+ .label-auto-complete {
8
+ position: relative;
9
+ width: 100%;
10
+ height: 100%;
11
+
12
+ .@{ant-prefix}-select-single.@{ant-prefix}-select-lg:not(.@{ant-prefix}-select-customize-input)
13
+ .@{ant-prefix}-select-selector {
14
+ height: 52px;
15
+ border: 1px solid #e5e5e5;
16
+ border-radius: 12px;
17
+ outline: none;
18
+ }
19
+
20
+ .@{ant-prefix}-select-focused:not(.@{ant-prefix}-select-disabled).@{ant-prefix}-select:not(.@{ant-prefix}-select-customize-input)
21
+ .@{ant-prefix}-select-selector {
22
+ border-color: #ff6b00;
23
+ box-shadow: none;
24
+ }
25
+
26
+ .@{ant-prefix}-select-single.@{ant-prefix}-select-show-arrow
27
+ .@{ant-prefix}-select-selection-item {
28
+ padding-top: 14px;
29
+ padding-left: 4px;
30
+ }
31
+
32
+ .@{ant-prefix}-select-selection-search {
33
+ padding-top: 14px;
34
+ padding-left: 2px;
35
+ }
36
+
37
+ &-text {
38
+ position: absolute;
39
+ top: 18px;
40
+ left: 16px;
41
+ z-index: 2;
42
+ height: 20px;
43
+ color: @color_9aa5b5;
44
+ font-size: @font-size-base;
45
+ line-height: 20px;
46
+ transform-origin: top left;
47
+ cursor: text;
48
+ transition: all 0.2s ease-out;
49
+ }
50
+
51
+ &-label-scale {
52
+ .label-auto-complete-text {
53
+ transform: translateY(-10px) scale(0.86);
54
+ cursor: text;
55
+ pointer-events: none;
56
+ }
57
+ }
58
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "assui",
3
- "version": "2.0.90",
3
+ "version": "2.0.91",
4
4
  "description": "react ui library",
5
5
  "author": "jason <usochen@gmail.com>",
6
6
  "main": "./lib/index.js",
@@ -69,5 +69,5 @@
69
69
  "node": ">=10.0.0"
70
70
  },
71
71
  "license": "MIT",
72
- "gitHead": "7d0b05f8a5addd9d2bccf44b108b496e94321fb0"
72
+ "gitHead": "2188c67875f73df0d845dd3abe9c44c1ffed1702"
73
73
  }