assui 3.0.54 → 3.0.55

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.
@@ -0,0 +1 @@
1
+ import './index.less';
@@ -0,0 +1 @@
1
+ import './index.less';
@@ -0,0 +1,84 @@
1
+ @import '~antd/lib/style/index.less';
2
+ @import '../../style/themes/default.less';
3
+
4
+ @color_9aa5b5: #9aa5b5;
5
+ @color_a0a0a0: #a0a0a0;
6
+ @font-size-base: 14px;
7
+
8
+ .label-range-number {
9
+ position: relative;
10
+ width: 320px;
11
+ height: 100%;
12
+ cursor: pointer;
13
+
14
+ .a-number {
15
+ position: relative;
16
+ display: inline-flex;
17
+ height: 45px;
18
+ padding-left: 12px;
19
+ border: 1px solid #e5e5e5;
20
+ border-radius: 8px;
21
+ outline: none;
22
+
23
+ &-input input {
24
+ position: relative;
25
+ top: 19px;
26
+ display: inline-flex;
27
+ align-items: center;
28
+ width: 100%;
29
+ }
30
+
31
+ &-focused {
32
+ border-color: @labelFocusBorderColor;
33
+ box-shadow: none;
34
+ }
35
+
36
+ &-range-separator {
37
+ position: relative;
38
+ top: 18px;
39
+ height: 14px;
40
+ padding: 0;
41
+ }
42
+
43
+ &-range-separator,
44
+ &-input {
45
+ opacity: 0;
46
+ }
47
+
48
+ .@{ant-prefix}-input {
49
+ padding: 0 0 0 3px;
50
+ border-radius: 0;
51
+ }
52
+ }
53
+
54
+ &-text {
55
+ position: absolute;
56
+ top: 0;
57
+ left: 0;
58
+ z-index: 2;
59
+ display: flex;
60
+ align-items: center;
61
+ width: calc(100% - 12px);
62
+ height: 100%;
63
+ margin-left: 12px;
64
+ color: @color_9aa5b5;
65
+ font-size: @font-size-base;
66
+ line-height: 20px;
67
+ transform-origin: top left;
68
+ cursor: pointer;
69
+ transition: all 0.2s ease-out;
70
+ }
71
+
72
+ &-label-scale {
73
+ .a-number-range-separator,
74
+ .a-number-input {
75
+ opacity: 1;
76
+ }
77
+
78
+ .label-range-number-text {
79
+ transform: translateY(@labelTextLabeltranslateY) scale(@labelTextLabelScale);
80
+ cursor: text;
81
+ pointer-events: none;
82
+ }
83
+ }
84
+ }
package/lib/index.d.ts CHANGED
@@ -22,6 +22,8 @@ export type { CSSMotionProps, CSSMotionList, CSSMotionListProps, MotionEventHand
22
22
  export { default as RcMotion } from './rc-motion';
23
23
  export type { NumberInputProps } from './number-input';
24
24
  export { default as NumberInput } from './number-input';
25
+ export type { LabelRangeNumberProps } from './label-range-number';
26
+ export { default as LabelRangeNumber } from './label-range-number';
25
27
  export type { StepNumberInputProps } from './step-number-input';
26
28
  export { default as StepNumberInput } from './step-number-input';
27
29
  export type { RcEchartPropsType } from './rc-echart';
package/lib/index.js CHANGED
@@ -8,7 +8,7 @@ var __importDefault = this && this.__importDefault || function (mod) {
8
8
  Object.defineProperty(exports, "__esModule", {
9
9
  value: true
10
10
  });
11
- exports.Resizable = exports.BeautifulDnd = exports.RichTextEditor = exports.LabelCustomizeRangePicker = exports.TableCol = exports.LabelTreeSelect = exports.LabelConditionInput = exports.LabelNumberInput = exports.LabelAutoComplete = exports.LabelDatePicker = exports.LabelRangePicker = exports.JsonEditor = exports.AreaText = exports.LabelTextArea = exports.ASelect = exports.LabelSelect = exports.ColorSelect = exports.LabelInput = exports.TextInput = exports.TextArea = exports.SplitPane = exports.sortableHoc = exports.SingleImgUpload = exports.RcTransitionGroup = exports.RcQRcode = exports.RcEcharts = exports.StepNumberInput = exports.NumberInput = exports.RcMotion = exports.KeepTab = exports.ImgCrop = exports.HighlightWords = exports.HighlightTextarea = exports.CopyToClipboard = exports.NumberFormatInput = exports.ConfigProvider = exports.ConditionInput = exports.ButtonModal = exports.ButtonDrawer = void 0;
11
+ exports.Resizable = exports.BeautifulDnd = exports.RichTextEditor = exports.LabelCustomizeRangePicker = exports.TableCol = exports.LabelTreeSelect = exports.LabelConditionInput = exports.LabelNumberInput = exports.LabelAutoComplete = exports.LabelDatePicker = exports.LabelRangePicker = exports.JsonEditor = exports.AreaText = exports.LabelTextArea = exports.ASelect = exports.LabelSelect = exports.ColorSelect = exports.LabelInput = exports.TextInput = exports.TextArea = exports.SplitPane = exports.sortableHoc = exports.SingleImgUpload = exports.RcTransitionGroup = exports.RcQRcode = exports.RcEcharts = exports.StepNumberInput = exports.LabelRangeNumber = exports.NumberInput = exports.RcMotion = exports.KeepTab = exports.ImgCrop = exports.HighlightWords = exports.HighlightTextarea = exports.CopyToClipboard = exports.NumberFormatInput = exports.ConfigProvider = exports.ConditionInput = exports.ButtonModal = exports.ButtonDrawer = void 0;
12
12
  var button_drawer_1 = require("./button-drawer");
13
13
  Object.defineProperty(exports, "ButtonDrawer", {
14
14
  enumerable: true,
@@ -93,6 +93,13 @@ Object.defineProperty(exports, "NumberInput", {
93
93
  return __importDefault(number_input_1)["default"];
94
94
  }
95
95
  });
96
+ var label_range_number_1 = require("./label-range-number");
97
+ Object.defineProperty(exports, "LabelRangeNumber", {
98
+ enumerable: true,
99
+ get: function get() {
100
+ return __importDefault(label_range_number_1)["default"];
101
+ }
102
+ });
96
103
  var step_number_input_1 = require("./step-number-input");
97
104
  Object.defineProperty(exports, "StepNumberInput", {
98
105
  enumerable: true,
@@ -0,0 +1,24 @@
1
+ import React from 'react';
2
+ import type { NumberInputProps } from '../number-input';
3
+ export declare type RangeNumberValue = {
4
+ startInterval?: number | string;
5
+ endInterval?: number | string;
6
+ };
7
+ export interface LabelRangeNumberProps {
8
+ className?: string;
9
+ disabled?: boolean;
10
+ label: React.ReactNode;
11
+ value?: RangeNumberValue;
12
+ onChange?: (value: RangeNumberValue) => void;
13
+ enableMinus?: boolean;
14
+ numberType?: 'int' | 'float';
15
+ precision?: number;
16
+ connector?: React.ReactNode;
17
+ suffix?: string;
18
+ /** value的数据类型 */
19
+ dataType?: 'number' | 'string';
20
+ startNumberInputProps?: NumberInputProps;
21
+ endNumberInputProps?: NumberInputProps;
22
+ }
23
+ declare const LabelDatePicker: React.FC<LabelRangeNumberProps>;
24
+ export default LabelDatePicker;
@@ -0,0 +1,144 @@
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
+ for (var p in s) {
8
+ if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
9
+ }
10
+ }
11
+ return t;
12
+ };
13
+ return __assign.apply(this, arguments);
14
+ };
15
+ var __read = this && this.__read || function (o, n) {
16
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
17
+ if (!m) return o;
18
+ var i = m.call(o),
19
+ r,
20
+ ar = [],
21
+ e;
22
+ try {
23
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) {
24
+ ar.push(r.value);
25
+ }
26
+ } catch (error) {
27
+ e = {
28
+ error: error
29
+ };
30
+ } finally {
31
+ try {
32
+ if (r && !r.done && (m = i["return"])) m.call(i);
33
+ } finally {
34
+ if (e) throw e.error;
35
+ }
36
+ }
37
+ return ar;
38
+ };
39
+ var __importDefault = this && this.__importDefault || function (mod) {
40
+ return mod && mod.__esModule ? mod : {
41
+ "default": mod
42
+ };
43
+ };
44
+ Object.defineProperty(exports, "__esModule", {
45
+ value: true
46
+ });
47
+ var react_1 = __importDefault(require("react"));
48
+ var useControllableValue_1 = __importDefault(require("ahooks/lib/useControllableValue"));
49
+ var useClickAway_1 = __importDefault(require("ahooks/lib/useClickAway"));
50
+ var classnames_1 = __importDefault(require("classnames"));
51
+ var number_input_1 = __importDefault(require("../number-input"));
52
+ var defaultValue = {
53
+ startInterval: '',
54
+ endInterval: ''
55
+ };
56
+ var LabelDatePicker = function LabelDatePicker(props) {
57
+ var disabled = props.disabled,
58
+ className = props.className,
59
+ label = props.label,
60
+ enableMinus = props.enableMinus,
61
+ numberType = props.numberType,
62
+ dataType = props.dataType,
63
+ precision = props.precision,
64
+ connector = props.connector,
65
+ startNumberInputProps = props.startNumberInputProps,
66
+ endNumberInputProps = props.endNumberInputProps;
67
+ var containerRef = react_1["default"].useRef(null);
68
+ var startNumberRef = react_1["default"].useRef(null);
69
+ var _a = __read((0, useControllableValue_1["default"])(props, {
70
+ valuePropName: 'focus',
71
+ trigger: 'onFocus'
72
+ }), 2),
73
+ focus = _a[0],
74
+ onFocus = _a[1];
75
+ var _b = __read((0, useControllableValue_1["default"])(props, {
76
+ defaultValue: {
77
+ startInterval: '',
78
+ endInterval: ''
79
+ }
80
+ }), 2),
81
+ value = _b[0],
82
+ onChangeValue = _b[1];
83
+ (0, useClickAway_1["default"])(function () {
84
+ onFocus(false);
85
+ }, containerRef);
86
+ var onStartChange = function onStartChange(startInterval) {
87
+ onChangeValue(__assign(__assign({}, value), {
88
+ startInterval: startInterval
89
+ }));
90
+ };
91
+ var onEndChange = function onEndChange(endInterval) {
92
+ onChangeValue(__assign(__assign({}, value), {
93
+ endInterval: endInterval
94
+ }));
95
+ };
96
+ var handleLabelClick = function handleLabelClick() {
97
+ var _a;
98
+ if (!focus) {
99
+ onFocus(!focus);
100
+ }
101
+ (_a = startNumberRef.current) === null || _a === void 0 ? void 0 : _a.focus();
102
+ };
103
+ var resultValue = value || defaultValue;
104
+ return react_1["default"].createElement("div", {
105
+ ref: containerRef,
106
+ className: (0, classnames_1["default"])({
107
+ 'label-range-number': true,
108
+ 'label-range-number-disabled': disabled,
109
+ 'label-range-number-label-scale': focus || resultValue.endInterval || resultValue.startInterval
110
+ }, className)
111
+ }, react_1["default"].createElement("div", {
112
+ className: "a-number a-number-range a-number-focused",
113
+ "aria-required": "true"
114
+ }, react_1["default"].createElement("div", {
115
+ className: "a-number-input"
116
+ }, react_1["default"].createElement(number_input_1["default"], __assign({
117
+ bordered: false,
118
+ enableMinus: enableMinus,
119
+ numberType: numberType,
120
+ precision: precision,
121
+ dataType: dataType
122
+ }, endNumberInputProps, {
123
+ ref: startNumberRef,
124
+ onChange: onStartChange,
125
+ value: resultValue.startInterval
126
+ }))), react_1["default"].createElement("div", {
127
+ className: "a-number-range-separator"
128
+ }, connector || '–'), react_1["default"].createElement("div", {
129
+ className: "a-number-input"
130
+ }, react_1["default"].createElement(number_input_1["default"], __assign({
131
+ bordered: false,
132
+ enableMinus: enableMinus,
133
+ numberType: numberType,
134
+ precision: precision,
135
+ dataType: dataType
136
+ }, startNumberInputProps, {
137
+ onChange: onEndChange,
138
+ value: resultValue.endInterval
139
+ })))), react_1["default"].createElement("label", {
140
+ className: "label-range-number-text",
141
+ onClick: handleLabelClick
142
+ }, label));
143
+ };
144
+ exports["default"] = LabelDatePicker;