shineout 1.8.0-beta.2 → 1.8.0-rc.4
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.
- package/css/AnimationList/AbsoluteList.js +45 -21
- package/css/Form/Field.js +4 -8
- package/css/Form/FieldSet.js +0 -1
- package/css/Form/index.d.ts +0 -1
- package/css/Menu/Root.js +5 -0
- package/css/Menu/styles/menu.css +64 -27
- package/css/Scroll/Bar.js +17 -4
- package/css/Scroll/Scroll.js +6 -3
- package/css/Scroll/styles/scroll.css +29 -8
- package/css/Select/BoxList.js +13 -17
- package/css/Select/Input.js +93 -6
- package/css/Select/Result.js +6 -3
- package/css/Select/Select.js +6 -3
- package/css/Select/index.d.ts +8 -0
- package/css/Select/styles/select.css +128 -46
- package/css/Spin/styles/spin.css +1 -0
- package/css/Table/SeperateTable.js +1 -0
- package/css/Table/Table.js +3 -1
- package/css/Table/styles/table.css +123 -1
- package/css/TreeSelect/styles/treeSelect.css +1 -0
- package/css/hoc/styles/hidable.css +0 -12
- package/css/index.d.ts +1 -1
- package/css/index.js +1 -1
- package/css/utils/dom/element.js +6 -1
- package/css/utils/dom/translate.js +16 -3
- package/dist/shineout.js +371 -233
- package/dist/shineout.js.map +1 -1
- package/dist/shineout.min.js +1 -1
- package/dist/theme.antd.css +1 -1
- package/dist/theme.antd2.css +1 -1
- package/dist/theme.default.css +1 -1
- package/dist/theme.shineout.css +1 -1
- package/es/Alert/index.js +107 -127
- package/es/Alert/styles/index.js +4 -3
- package/es/AnimationList/AbsoluteList.js +207 -258
- package/es/AnimationList/LazyList.js +92 -120
- package/es/AnimationList/List.js +23 -43
- package/es/AnimationList/index.js +14 -19
- package/es/AnimationList/styles/index.js +4 -3
- package/es/Breadcrumb/index.js +69 -77
- package/es/Breadcrumb/styles/index.js +4 -3
- package/es/Button/Button.js +74 -91
- package/es/Button/Group.js +28 -42
- package/es/Button/Once.js +23 -39
- package/es/Button/index.js +10 -7
- package/es/Button/styles/index.js +4 -3
- package/es/Card/Accordion.js +45 -58
- package/es/Card/Body.js +42 -55
- package/es/Card/Card.js +79 -85
- package/es/Card/Footer.js +15 -38
- package/es/Card/Header.js +34 -52
- package/es/Card/Submit.js +33 -51
- package/es/Card/context.js +16 -22
- package/es/Card/index.js +19 -16
- package/es/Card/styles/index.js +4 -3
- package/es/CardGroup/CardGroup.js +69 -93
- package/es/CardGroup/Item.js +43 -61
- package/es/CardGroup/context.js +10 -12
- package/es/CardGroup/index.js +10 -7
- package/es/CardGroup/styles/index.js +4 -3
- package/es/Carousel/Item.js +17 -31
- package/es/Carousel/index.js +123 -156
- package/es/Carousel/styles/index.js +4 -3
- package/es/Cascader/Cascader.js +346 -397
- package/es/Cascader/FilterList.js +142 -185
- package/es/Cascader/Input.js +79 -102
- package/es/Cascader/List.js +41 -66
- package/es/Cascader/Node.js +110 -153
- package/es/Cascader/Result.js +232 -289
- package/es/Cascader/filter.js +61 -92
- package/es/Cascader/index.js +18 -13
- package/es/Cascader/styles/index.js +4 -3
- package/es/Checkbox/CheckItem.js +154 -168
- package/es/Checkbox/Checkbox.js +3 -2
- package/es/Checkbox/Group.js +85 -106
- package/es/Checkbox/context.js +10 -12
- package/es/Checkbox/index.js +21 -14
- package/es/Checkbox/styles/index.js +4 -3
- package/es/DataList/BaseItem.js +21 -39
- package/es/DataList/Extra.js +17 -33
- package/es/DataList/List.js +140 -166
- package/es/DataList/Meta.js +74 -109
- package/es/DataList/Pagination.js +10 -9
- package/es/DataList/index.js +19 -13
- package/es/DataList/styles/index.js +4 -3
- package/es/DatePicker/Container.js +449 -468
- package/es/DatePicker/Day.js +258 -265
- package/es/DatePicker/Icon.js +20 -34
- package/es/DatePicker/Month.js +79 -101
- package/es/DatePicker/Picker.js +83 -110
- package/es/DatePicker/Quick.js +39 -52
- package/es/DatePicker/Range.js +192 -241
- package/es/DatePicker/Text.js +91 -103
- package/es/DatePicker/Time.js +147 -165
- package/es/DatePicker/TimeScroll.js +116 -148
- package/es/DatePicker/Year.js +53 -74
- package/es/DatePicker/index.js +18 -16
- package/es/DatePicker/paramUtils.js +58 -92
- package/es/DatePicker/styles/index.js +4 -3
- package/es/DatePicker/utils.js +198 -189
- package/es/DatePicker/value.js +98 -139
- package/es/Datum/Form.js +282 -333
- package/es/Datum/List.js +201 -319
- package/es/Datum/Tree.js +239 -298
- package/es/Datum/hoc.js +69 -104
- package/es/Datum/index.js +8 -7
- package/es/Datum/types.js +25 -20
- package/es/Divider/index.js +32 -50
- package/es/Divider/styles/index.js +4 -3
- package/es/Drawer/index.js +9 -14
- package/es/Dropdown/Item.js +43 -56
- package/es/Dropdown/index.js +259 -273
- package/es/Dropdown/styles/index.js +4 -3
- package/es/EditableArea/EditableArea.js +136 -157
- package/es/EditableArea/index.js +15 -8
- package/es/EditableArea/styles/index.js +4 -3
- package/es/Form/Block.js +57 -83
- package/es/Form/BlockField.js +17 -32
- package/es/Form/Field.js +35 -59
- package/es/Form/FieldError.js +21 -27
- package/es/Form/FieldSet.js +155 -214
- package/es/Form/Flow.js +32 -51
- package/es/Form/Form.js +145 -181
- package/es/Form/Item.js +166 -181
- package/es/Form/Loop.js +146 -202
- package/es/Form/formButton.js +42 -58
- package/es/Form/formContext.js +95 -104
- package/es/Form/index.d.ts +0 -1
- package/es/Form/index.js +45 -40
- package/es/Form/inputable.js +292 -368
- package/es/Form/mode.js +9 -15
- package/es/Form/styles/index.js +5 -4
- package/es/Gap/index.js +47 -71
- package/es/Gap/styles/index.js +4 -3
- package/es/Gap/support.js +14 -11
- package/es/Grid/index.js +58 -88
- package/es/Grid/utils.js +58 -57
- package/es/Icon/Icon.js +42 -43
- package/es/Icon/index.js +22 -39
- package/es/Icon/styles/index.js +4 -3
- package/es/Image/Gallery.js +113 -128
- package/es/Image/Group.js +36 -60
- package/es/Image/Image.js +153 -227
- package/es/Image/Magnify.js +94 -123
- package/es/Image/events.js +26 -29
- package/es/Image/index.js +9 -6
- package/es/Image/styles/index.js +4 -3
- package/es/Input/Group.js +11 -17
- package/es/Input/Input.js +134 -158
- package/es/Input/Number.js +175 -199
- package/es/Input/Password.js +31 -54
- package/es/Input/clear.js +25 -41
- package/es/Input/index.js +35 -23
- package/es/Input/styles/index.js +4 -3
- package/es/Lazyload/index.js +42 -63
- package/es/Lazyload/styles/index.js +4 -3
- package/es/Menu/Item.js +236 -275
- package/es/Menu/List.js +67 -75
- package/es/Menu/Root.js +337 -372
- package/es/Menu/context.js +12 -18
- package/es/Menu/index.js +5 -3
- package/es/Menu/styles/index.js +4 -3
- package/es/Menu/styles/menu.less +117 -51
- package/es/Message/Container.js +119 -155
- package/es/Message/index.js +30 -42
- package/es/Message/messager.js +33 -29
- package/es/Message/styles/index.js +4 -3
- package/es/Modal/Modal.js +60 -80
- package/es/Modal/Panel.js +234 -258
- package/es/Modal/context.js +15 -15
- package/es/Modal/events.js +182 -213
- package/es/Modal/index.js +14 -12
- package/es/Modal/styles/index.js +4 -3
- package/es/Pagination/Item.js +32 -46
- package/es/Pagination/Jumper.js +68 -79
- package/es/Pagination/Links.js +82 -110
- package/es/Pagination/Next.js +31 -52
- package/es/Pagination/PageSizeList.js +40 -57
- package/es/Pagination/Pagination.js +54 -78
- package/es/Pagination/Prev.js +30 -49
- package/es/Pagination/Simple.js +18 -32
- package/es/Pagination/index.js +41 -68
- package/es/Pagination/styles/index.js +4 -3
- package/es/Popover/Confirm.js +64 -107
- package/es/Popover/Panel.js +231 -284
- package/es/Popover/context.js +12 -15
- package/es/Popover/events.js +86 -80
- package/es/Popover/index.js +14 -12
- package/es/Popover/styles/index.js +4 -3
- package/es/Progress/Circle.js +59 -70
- package/es/Progress/Line.js +39 -51
- package/es/Progress/Popup.js +24 -42
- package/es/Progress/analyzeColor.js +9 -18
- package/es/Progress/index.js +15 -13
- package/es/Progress/styles/index.js +4 -3
- package/es/Radio/Group.js +94 -105
- package/es/Radio/Radio.js +3 -2
- package/es/Radio/index.js +17 -15
- package/es/Radio/styles/index.js +1 -1
- package/es/Rate/Rate.js +167 -216
- package/es/Rate/index.js +10 -17
- package/es/Rate/styles/index.js +4 -3
- package/es/Rule/convert.js +57 -48
- package/es/Rule/index.js +40 -63
- package/es/Rule/length.js +38 -53
- package/es/Rule/regExp.js +14 -23
- package/es/Rule/required.js +18 -26
- package/es/Rule/styles/index.js +1 -1
- package/es/Rule/type.js +18 -26
- package/es/Scroll/Bar.js +124 -144
- package/es/Scroll/Scroll.js +221 -277
- package/es/Scroll/context.js +13 -20
- package/es/Scroll/fixedLength.js +24 -33
- package/es/Scroll/index.js +55 -89
- package/es/Scroll/styles/index.js +4 -3
- package/es/Scroll/styles/scroll.less +32 -6
- package/es/Select/BoxList.js +190 -219
- package/es/Select/BoxOption.js +38 -64
- package/es/Select/FlexBox.js +75 -107
- package/es/Select/FlexResult.js +49 -65
- package/es/Select/Input.js +181 -136
- package/es/Select/More.js +121 -124
- package/es/Select/Option.js +52 -73
- package/es/Select/OptionList.js +200 -236
- package/es/Select/OptionTree.js +96 -111
- package/es/Select/Result.js +274 -297
- package/es/Select/Select.js +494 -517
- package/es/Select/filter.js +148 -221
- package/es/Select/group.js +45 -74
- package/es/Select/index.d.ts +8 -0
- package/es/Select/index.js +31 -32
- package/es/Select/styles/index.js +4 -3
- package/es/Select/styles/select.less +124 -45
- package/es/Slider/Container.js +132 -145
- package/es/Slider/Indicator.js +13 -28
- package/es/Slider/Slider.js +103 -132
- package/es/Slider/index.js +8 -5
- package/es/Slider/styles/index.js +4 -3
- package/es/Slider/utils.js +30 -26
- package/es/Spin/Multiple.js +109 -153
- package/es/Spin/Simple.js +22 -33
- package/es/Spin/Spin.js +29 -29
- package/es/Spin/index.js +84 -66
- package/es/Spin/styles/index.js +30 -27
- package/es/Spin/styles/spin.less +1 -0
- package/es/Sticky/context.js +10 -12
- package/es/Sticky/index.js +194 -255
- package/es/Sticky/styles/index.js +1 -1
- package/es/Switch/Switch.js +3 -2
- package/es/Switch/index.js +14 -8
- package/es/Table/Checkbox.js +39 -68
- package/es/Table/CheckboxAll.js +64 -121
- package/es/Table/Colgroup.js +47 -72
- package/es/Table/Expand.js +43 -63
- package/es/Table/SeperateTable.js +445 -594
- package/es/Table/SimpleTable.js +136 -215
- package/es/Table/Sorter.js +62 -83
- package/es/Table/Table.js +159 -157
- package/es/Table/Tbody.js +176 -240
- package/es/Table/Td.js +130 -169
- package/es/Table/Thead.js +177 -206
- package/es/Table/Tr.js +205 -249
- package/es/Table/TreeExpand.js +116 -151
- package/es/Table/context.js +15 -15
- package/es/Table/fixedAuto.js +59 -82
- package/es/Table/index.js +228 -309
- package/es/Table/resizable.js +56 -89
- package/es/Table/select.js +215 -238
- package/es/Table/styles/index.js +4 -3
- package/es/Table/styles/table.less +144 -2
- package/es/Tabs/Header.js +160 -203
- package/es/Tabs/Link.js +28 -46
- package/es/Tabs/Panel.js +33 -49
- package/es/Tabs/Tab.js +79 -97
- package/es/Tabs/Tabs.js +177 -211
- package/es/Tabs/Wrapper.js +17 -37
- package/es/Tabs/index.js +10 -7
- package/es/Tabs/styles/index.js +4 -3
- package/es/Tag/Input.js +54 -70
- package/es/Tag/Tag.js +156 -198
- package/es/Tag/index.js +8 -5
- package/es/Tag/styles/index.js +4 -3
- package/es/Textarea/Textarea.js +118 -139
- package/es/Textarea/index.js +19 -10
- package/es/Tooltip/Container.js +127 -140
- package/es/Tooltip/events.js +55 -49
- package/es/Tooltip/index.js +8 -5
- package/es/Tooltip/styles/index.js +4 -3
- package/es/Transfer/Card.js +177 -212
- package/es/Transfer/Transfer.js +153 -160
- package/es/Transfer/btns.js +80 -97
- package/es/Transfer/context.js +3 -2
- package/es/Transfer/filter.js +35 -65
- package/es/Transfer/index.js +13 -9
- package/es/Transfer/item.js +41 -66
- package/es/Transfer/select.js +16 -15
- package/es/Transfer/styles/index.js +4 -3
- package/es/Tree/Checkbox.js +50 -72
- package/es/Tree/Content.js +95 -136
- package/es/Tree/List.js +53 -82
- package/es/Tree/Node.js +202 -237
- package/es/Tree/Root.js +19 -23
- package/es/Tree/Tree.js +197 -262
- package/es/Tree/index.js +9 -6
- package/es/Tree/styles/index.js +4 -3
- package/es/Tree/toggle.js +51 -89
- package/es/TreeSelect/Input.js +60 -73
- package/es/TreeSelect/Result.js +181 -213
- package/es/TreeSelect/TreeSelect.js +312 -327
- package/es/TreeSelect/datum.js +44 -56
- package/es/TreeSelect/filter.js +96 -134
- package/es/TreeSelect/index.js +23 -15
- package/es/TreeSelect/styles/index.js +4 -3
- package/es/TreeSelect/styles/treeSelect.less +1 -0
- package/es/TreeSelect/tiled.js +106 -143
- package/es/Upload/Dragger.js +39 -63
- package/es/Upload/Drop.js +57 -79
- package/es/Upload/File.js +48 -61
- package/es/Upload/FileInput.js +40 -53
- package/es/Upload/Image.js +115 -158
- package/es/Upload/ImageFile.js +43 -63
- package/es/Upload/ImageResult.js +114 -139
- package/es/Upload/Progress.js +105 -117
- package/es/Upload/RemoveConfirm.js +42 -58
- package/es/Upload/Result.js +58 -73
- package/es/Upload/Upload.js +490 -649
- package/es/Upload/accept.js +13 -33
- package/es/Upload/context.js +10 -12
- package/es/Upload/index.js +20 -16
- package/es/Upload/request.js +46 -48
- package/es/Upload/styles/index.js +4 -3
- package/es/component.js +24 -45
- package/es/config.js +19 -27
- package/es/context/implementation.js +94 -132
- package/es/context/index.js +4 -3
- package/es/hoc/coin.js +81 -118
- package/es/hoc/config.js +17 -31
- package/es/hoc/delay.js +55 -99
- package/es/hoc/draggable.js +80 -90
- package/es/hoc/fetch.js +33 -56
- package/es/hoc/hidable.js +98 -119
- package/es/hoc/inputBorder.js +158 -158
- package/es/hoc/moveable.js +96 -124
- package/es/hoc/pagable.js +55 -74
- package/es/hoc/resizable.js +100 -132
- package/es/hoc/styles/hidable.less +10 -10
- package/es/hoc/styles/index.js +8 -7
- package/es/hoc/trim.js +32 -54
- package/es/icons/Caret.js +15 -14
- package/es/icons/index.js +85 -31
- package/es/index.d.ts +1 -1
- package/es/index.js +57 -58
- package/es/locale/en_US.js +30 -9
- package/es/locale/index.js +14 -13
- package/es/locale/zh-CN.js +17 -9
- package/es/styles/expose.js +4 -3
- package/es/styles/index.js +1 -1
- package/es/styles/themes/antd.less +1 -0
- package/es/styles/themes/bootstrap.less +1 -0
- package/es/styles/themes/shineout.less +2 -0
- package/es/utils/accept.js +12 -15
- package/es/utils/classname.js +12 -23
- package/es/utils/cleanProps.js +21 -9
- package/es/utils/clone.js +27 -34
- package/es/utils/color.js +276 -310
- package/es/utils/css-accessors.js +45 -94
- package/es/utils/dom/detect.js +29 -29
- package/es/utils/dom/document.js +19 -23
- package/es/utils/dom/element.js +107 -138
- package/es/utils/dom/getDataset.js +9 -9
- package/es/utils/dom/isDOMElement.js +5 -3
- package/es/utils/dom/normalizeWheel.js +28 -32
- package/es/utils/dom/popContainer.js +13 -12
- package/es/utils/dom/popover.js +59 -79
- package/es/utils/dom/ready.js +6 -5
- package/es/utils/dom/translate.js +23 -10
- package/es/utils/errors.js +28 -47
- package/es/utils/expose.js +58 -97
- package/es/utils/flat.js +107 -122
- package/es/utils/func.js +20 -38
- package/es/utils/hash.js +20 -24
- package/es/utils/index.js +49 -24
- package/es/utils/is.js +70 -91
- package/es/utils/lazyload.js +86 -104
- package/es/utils/notification.js +20 -34
- package/es/utils/numbers.js +51 -61
- package/es/utils/objects.js +140 -221
- package/es/utils/proptypes.js +34 -21
- package/es/utils/shallowEqual.js +42 -46
- package/es/utils/strings.js +32 -50
- package/es/utils/transform.js +9 -24
- package/es/utils/tree.js +63 -78
- package/es/utils/uid.js +17 -14
- package/es/utils/validate/index.js +50 -71
- package/es/utils/validate/isJson.js +10 -7
- package/es/utils/validate/nullable.js +9 -10
- package/es/utils/validate/range.js +19 -22
- package/es/utils/validate/rangeLength.js +16 -19
- package/es/utils/validate/regExp.js +10 -10
- package/es/utils/validate/required.js +8 -11
- package/es/utils/validate/type.js +59 -56
- package/es/utils/vars-inject.js +4248 -3420
- package/lib/AnimationList/AbsoluteList.js +45 -21
- package/lib/Form/Field.js +4 -8
- package/lib/Form/FieldSet.js +0 -1
- package/lib/Form/index.d.ts +0 -1
- package/lib/Menu/Root.js +5 -0
- package/lib/Menu/styles/menu.less +117 -51
- package/lib/Scroll/Bar.js +17 -4
- package/lib/Scroll/Scroll.js +6 -3
- package/lib/Scroll/styles/scroll.less +32 -6
- package/lib/Select/BoxList.js +13 -17
- package/lib/Select/Input.js +93 -6
- package/lib/Select/Result.js +6 -3
- package/lib/Select/Select.js +6 -3
- package/lib/Select/index.d.ts +8 -0
- package/lib/Select/styles/select.less +124 -45
- package/lib/Spin/styles/spin.less +1 -0
- package/lib/Table/SeperateTable.js +1 -0
- package/lib/Table/Table.js +3 -1
- package/lib/Table/styles/table.less +144 -2
- package/lib/TreeSelect/styles/treeSelect.less +1 -0
- package/lib/hoc/styles/hidable.less +10 -10
- package/lib/index.d.ts +1 -1
- package/lib/index.js +1 -1
- package/lib/styles/themes/antd.less +1 -0
- package/lib/styles/themes/bootstrap.less +1 -0
- package/lib/styles/themes/shineout.less +2 -0
- package/lib/utils/dom/element.js +6 -1
- package/lib/utils/dom/translate.js +16 -3
- package/package.json +2 -3
|
@@ -50,6 +50,16 @@ function initRoot() {
|
|
|
50
50
|
document.body.appendChild(root);
|
|
51
51
|
}
|
|
52
52
|
|
|
53
|
+
var getOverDocStyle = function getOverDocStyle() {
|
|
54
|
+
return (0, _config.isRTL)() ? {
|
|
55
|
+
left: 0,
|
|
56
|
+
right: 'auto'
|
|
57
|
+
} : {
|
|
58
|
+
right: 0,
|
|
59
|
+
left: 'auto'
|
|
60
|
+
};
|
|
61
|
+
};
|
|
62
|
+
|
|
53
63
|
var listPosition = ['drop-down', 'drop-up'];
|
|
54
64
|
var pickerPosition = ['left-bottom', 'left-top', 'right-bottom', 'right-top'];
|
|
55
65
|
var dropdownPosition = ['bottom-left', 'bottom-right', 'top-left', 'top-right'];
|
|
@@ -121,7 +131,8 @@ function _default(List) {
|
|
|
121
131
|
var position = this.props.position;
|
|
122
132
|
var rtl = (0, _config.isRTL)();
|
|
123
133
|
var style = {
|
|
124
|
-
position: 'absolute'
|
|
134
|
+
position: 'absolute',
|
|
135
|
+
right: 'auto'
|
|
125
136
|
};
|
|
126
137
|
|
|
127
138
|
if (fixed) {
|
|
@@ -137,13 +148,8 @@ function _default(List) {
|
|
|
137
148
|
position = (0, _strings.getRTLPosition)(position);
|
|
138
149
|
}
|
|
139
150
|
|
|
140
|
-
var containerScroll
|
|
141
|
-
var containerRect
|
|
142
|
-
left: 0,
|
|
143
|
-
top: 0,
|
|
144
|
-
right: 0,
|
|
145
|
-
bottom: 0
|
|
146
|
-
};
|
|
151
|
+
var containerScroll;
|
|
152
|
+
var containerRect;
|
|
147
153
|
var container = this.container;
|
|
148
154
|
|
|
149
155
|
if (typeof absolute === 'function' && container) {
|
|
@@ -152,6 +158,22 @@ function _default(List) {
|
|
|
152
158
|
left: container.scrollLeft,
|
|
153
159
|
top: container.scrollTop
|
|
154
160
|
};
|
|
161
|
+
|
|
162
|
+
if (rtl) {
|
|
163
|
+
containerScroll.width = container.scrollWidth;
|
|
164
|
+
}
|
|
165
|
+
} else {
|
|
166
|
+
containerRect = {
|
|
167
|
+
left: 0,
|
|
168
|
+
top: 0,
|
|
169
|
+
right: 0,
|
|
170
|
+
bottom: 0
|
|
171
|
+
};
|
|
172
|
+
containerScroll = _document.docScroll;
|
|
173
|
+
|
|
174
|
+
if (rtl) {
|
|
175
|
+
containerRect.width = document.documentElement.clientWidth || document.body.clientWidth;
|
|
176
|
+
}
|
|
155
177
|
}
|
|
156
178
|
|
|
157
179
|
this.containerRect = containerRect;
|
|
@@ -159,10 +181,6 @@ function _default(List) {
|
|
|
159
181
|
if (listPosition.includes(position)) {
|
|
160
182
|
style.left = rect.left - containerRect.left + containerScroll.left;
|
|
161
183
|
|
|
162
|
-
if (rtl) {
|
|
163
|
-
style.left += rect.width;
|
|
164
|
-
}
|
|
165
|
-
|
|
166
184
|
if (position === 'drop-down') {
|
|
167
185
|
style.top = rect.top - containerRect.top + rect.height + containerScroll.top;
|
|
168
186
|
} else {
|
|
@@ -188,6 +206,11 @@ function _default(List) {
|
|
|
188
206
|
}
|
|
189
207
|
}
|
|
190
208
|
|
|
209
|
+
if (rtl && style.left) {
|
|
210
|
+
style.right = containerRect.width - rect.width - style.left;
|
|
211
|
+
style.left = 'auto';
|
|
212
|
+
}
|
|
213
|
+
|
|
191
214
|
return style;
|
|
192
215
|
};
|
|
193
216
|
|
|
@@ -243,7 +266,14 @@ function _default(List) {
|
|
|
243
266
|
left: 0,
|
|
244
267
|
width: 0
|
|
245
268
|
};
|
|
246
|
-
var overdoc
|
|
269
|
+
var overdoc;
|
|
270
|
+
|
|
271
|
+
if ((0, _config.isRTL)()) {
|
|
272
|
+
overdoc = pos.left < containerRect.left;
|
|
273
|
+
} else {
|
|
274
|
+
overdoc = left - containerRect.left + pos.width > (containerRect.width || _document.docSize.width);
|
|
275
|
+
}
|
|
276
|
+
|
|
247
277
|
if (this.state.overdoc === overdoc) return;
|
|
248
278
|
this.ajustdoc = true;
|
|
249
279
|
this.setState({
|
|
@@ -273,10 +303,7 @@ function _default(List) {
|
|
|
273
303
|
props = (0, _objectWithoutPropertiesLoose2.default)(_this$props4, ["parentElement", "absolute", "focus", "rootClass", "position", "scrollLeft", "scrollTop", "scrollElement", "style", "zIndex", "getResetPosition", "autoAdapt"]);
|
|
274
304
|
var parsed = parseInt(zIndex, 10);
|
|
275
305
|
if (!Number.isNaN(parsed)) style.zIndex = parsed;
|
|
276
|
-
var mergeStyle = Object.assign({}, style, this.state.overdoc ?
|
|
277
|
-
right: 0,
|
|
278
|
-
left: 'auto'
|
|
279
|
-
} : undefined);
|
|
306
|
+
var mergeStyle = Object.assign({}, style, this.state.overdoc ? getOverDocStyle() : undefined);
|
|
280
307
|
return _react.default.createElement(List, (0, _extends2.default)({
|
|
281
308
|
getRef: this.handleRef
|
|
282
309
|
}, props, {
|
|
@@ -321,10 +348,7 @@ function _default(List) {
|
|
|
321
348
|
style = _ref.style;
|
|
322
349
|
|
|
323
350
|
this.element.className = mergeClass;
|
|
324
|
-
var mergeStyle = Object.assign({}, style, props.style, this.state.overdoc ?
|
|
325
|
-
right: 0,
|
|
326
|
-
left: 'auto'
|
|
327
|
-
} : undefined);
|
|
351
|
+
var mergeStyle = Object.assign({}, style, props.style, this.state.overdoc ? getOverDocStyle() : undefined);
|
|
328
352
|
if (zIndex || typeof zIndex === 'number') mergeStyle.zIndex = parseInt(zIndex, 10);
|
|
329
353
|
return _reactDom.default.createPortal(_react.default.createElement(List, (0, _extends2.default)({
|
|
330
354
|
getRef: this.handleRef
|
package/css/Form/Field.js
CHANGED
|
@@ -52,15 +52,13 @@ function (_Component) {
|
|
|
52
52
|
var _this$props = this.props,
|
|
53
53
|
children = _this$props.children,
|
|
54
54
|
value = _this$props.value,
|
|
55
|
-
error = _this$props.error
|
|
56
|
-
disabled = _this$props.disabled;
|
|
55
|
+
error = _this$props.error;
|
|
57
56
|
|
|
58
57
|
if (typeof children === 'function') {
|
|
59
58
|
return children({
|
|
60
59
|
value: value,
|
|
61
60
|
error: error,
|
|
62
|
-
onChange: this.handleChange
|
|
63
|
-
disabled: disabled
|
|
61
|
+
onChange: this.handleChange
|
|
64
62
|
});
|
|
65
63
|
}
|
|
66
64
|
|
|
@@ -68,8 +66,7 @@ function (_Component) {
|
|
|
68
66
|
return (0, _react.cloneElement)(children, {
|
|
69
67
|
value: value,
|
|
70
68
|
error: error,
|
|
71
|
-
onChange: this.handleChange
|
|
72
|
-
disabled: disabled
|
|
69
|
+
onChange: this.handleChange
|
|
73
70
|
});
|
|
74
71
|
}
|
|
75
72
|
|
|
@@ -85,8 +82,7 @@ Field.propTypes = {
|
|
|
85
82
|
children: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.element]).isRequired,
|
|
86
83
|
error: _propTypes.default.object,
|
|
87
84
|
onChange: _propTypes.default.func.isRequired,
|
|
88
|
-
value: _propTypes.default.any
|
|
89
|
-
disabled: _propTypes.default.bool
|
|
85
|
+
value: _propTypes.default.any
|
|
90
86
|
};
|
|
91
87
|
Field.defaultProps = {
|
|
92
88
|
cache: false
|
package/css/Form/FieldSet.js
CHANGED
|
@@ -193,7 +193,6 @@ function (_Component) {
|
|
|
193
193
|
result.push(empty(this.handleInsert.bind(this, 0)));
|
|
194
194
|
} else {
|
|
195
195
|
var errorList = (Array.isArray(errors) ? errors : [errors]).filter(Boolean);
|
|
196
|
-
console.log(errorList);
|
|
197
196
|
values.forEach(function (v, i) {
|
|
198
197
|
result.push(_react.default.createElement(Provider, {
|
|
199
198
|
key: i,
|
package/css/Form/index.d.ts
CHANGED
package/css/Menu/Root.js
CHANGED
|
@@ -158,6 +158,11 @@ function (_React$Component) {
|
|
|
158
158
|
var active = this.props.active;
|
|
159
159
|
var act = typeof active === 'function' ? active(data) : id === this.state.activeKey;
|
|
160
160
|
if (act) this.state.activeKey = id;
|
|
161
|
+
|
|
162
|
+
if (!act && this.state.activeKey === id) {
|
|
163
|
+
this.state.activeKey = '';
|
|
164
|
+
}
|
|
165
|
+
|
|
161
166
|
return act;
|
|
162
167
|
};
|
|
163
168
|
|
package/css/Menu/styles/menu.css
CHANGED
|
@@ -533,48 +533,85 @@ ul.so-menu-root {
|
|
|
533
533
|
}
|
|
534
534
|
.so-menu.so-menu-rtl {
|
|
535
535
|
direction: rtl;
|
|
536
|
-
text-align: right;
|
|
537
536
|
}
|
|
538
|
-
.so-menu.so-menu-rtl
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
left: 0px;
|
|
542
|
-
width: 3px;
|
|
543
|
-
height: 100%;
|
|
544
|
-
background: var(--primary-color, #3399ff);
|
|
545
|
-
content: ' ';
|
|
546
|
-
}
|
|
547
|
-
.so-menu.so-menu-rtl:not(.so-menu-horizontal) .so-menu-active.so-menu-no-children a:after {
|
|
548
|
-
content: none;
|
|
537
|
+
.so-menu.so-menu-rtl ul.so-menu-root {
|
|
538
|
+
margin-left: 0;
|
|
539
|
+
margin-right: -1px;
|
|
549
540
|
}
|
|
550
|
-
.so-menu.so-menu-rtl .so-menu-has-children
|
|
551
|
-
padding-left: 32px;
|
|
541
|
+
.so-menu.so-menu-rtl .so-menu-has-children > .so-menu-title {
|
|
552
542
|
padding-right: 16px;
|
|
543
|
+
padding-left: 32px;
|
|
553
544
|
}
|
|
554
|
-
.so-menu.so-menu-rtl .so-menu-has-children
|
|
545
|
+
.so-menu.so-menu-rtl .so-menu-has-children > .so-menu-title .so-menu-expand {
|
|
555
546
|
right: auto;
|
|
556
|
-
left:
|
|
547
|
+
left: 0;
|
|
548
|
+
}
|
|
549
|
+
.so-menu.so-menu-rtl .so-menu-has-children > .so-menu-title .so-menu-expand:after {
|
|
550
|
+
right: 14px;
|
|
557
551
|
}
|
|
558
|
-
.so-menu.so-menu-rtl
|
|
552
|
+
.so-menu.so-menu-rtl.so-menu-inline {
|
|
553
|
+
border-left: solid 1px #e8e8e8;
|
|
554
|
+
border-right: none;
|
|
555
|
+
}
|
|
556
|
+
.so-menu.so-menu-rtl .so-menu-inline .so-menu-active.so-menu-no-children > a:before,
|
|
557
|
+
.so-menu.so-menu-rtl .so-menu-inline .so-menu-active.so-menu-selectable > a:before {
|
|
558
|
+
right: auto;
|
|
559
|
+
left: 0;
|
|
560
|
+
}
|
|
561
|
+
.so-menu.so-menu-rtl .so-menu-horizontal {
|
|
562
|
+
margin-right: 0;
|
|
563
|
+
}
|
|
564
|
+
.so-menu.so-menu-rtl .so-menu-horizontal .so-menu-root .so-menu-list {
|
|
559
565
|
left: auto;
|
|
560
566
|
right: 0;
|
|
561
567
|
}
|
|
562
|
-
.so-menu.so-menu-rtl .so-menu-
|
|
568
|
+
.so-menu.so-menu-rtl ul.so-menu-horizontal.so-menu-root {
|
|
569
|
+
margin-right: 0;
|
|
570
|
+
}
|
|
571
|
+
.so-menu.so-menu-rtl.so-menu-vertical.so-menu-root {
|
|
572
|
+
border-left: solid 1px #e8e8e8;
|
|
573
|
+
border-right: none;
|
|
574
|
+
}
|
|
575
|
+
.so-menu.so-menu-rtl.so-menu-vertical .so-menu-root .so-menu-list {
|
|
576
|
+
left: auto;
|
|
577
|
+
right: 100%;
|
|
578
|
+
margin-left: 0;
|
|
579
|
+
margin-right: 3px;
|
|
580
|
+
}
|
|
581
|
+
.so-menu.so-menu-rtl.so-menu-vertical .so-menu-has-children > .so-menu-title .so-menu-expand:after,
|
|
582
|
+
.so-menu.so-menu-rtl.so-menu-vertical .so-menu-has-children.so-menu-open > .so-menu-title .so-menu-expand:after {
|
|
563
583
|
-webkit-transform: translateY(-50%) rotate(180deg);
|
|
564
584
|
-ms-transform: translateY(-50%) rotate(180deg);
|
|
565
585
|
transform: translateY(-50%) rotate(180deg);
|
|
566
586
|
}
|
|
567
|
-
.so-menu.so-menu-rtl
|
|
587
|
+
.so-menu.so-menu-rtl.so-menu-vertical .so-menu-in-path.so-menu-has-children > a::before {
|
|
588
|
+
right: auto;
|
|
589
|
+
left: 0;
|
|
590
|
+
}
|
|
591
|
+
.so-menu.so-menu-rtl.so-menu-dark:not(.so-menu-horizontal) .so-menu-has-children.so-menu-in-path > a:before {
|
|
592
|
+
left: auto;
|
|
593
|
+
right: 0;
|
|
594
|
+
}
|
|
595
|
+
.so-menu.so-menu-rtl.so-menu-dark.so-menu-vertical ul.so-menu-root {
|
|
568
596
|
margin-right: 0;
|
|
569
|
-
|
|
597
|
+
border-left: none;
|
|
570
598
|
}
|
|
571
|
-
.so-menu.so-menu-rtl
|
|
572
|
-
|
|
573
|
-
|
|
599
|
+
.so-menu.so-menu-rtl.so-menu-dark.so-menu-vertical .so-menu-has-children .so-menu-title::after {
|
|
600
|
+
left: 18px;
|
|
601
|
+
right: auto;
|
|
574
602
|
}
|
|
575
|
-
.so-menu.so-menu-rtl.so-menu-
|
|
603
|
+
.so-menu.so-menu-rtl.so-menu-dark.so-menu-vertical .so-menu-in-path.so-menu-has-children > a::before {
|
|
576
604
|
left: auto;
|
|
577
|
-
right:
|
|
578
|
-
|
|
579
|
-
|
|
605
|
+
right: 0;
|
|
606
|
+
}
|
|
607
|
+
.so-menu.so-menu-rtl .so-menu-has-children.so-menu-caret-solid > .so-menu-title {
|
|
608
|
+
padding-left: 16px;
|
|
609
|
+
}
|
|
610
|
+
.so-menu.so-menu-rtl .so-menu-caret-solid .so-menu-title > .so-menu-caret {
|
|
611
|
+
margin-right: 0;
|
|
612
|
+
margin-left: 8px;
|
|
613
|
+
}
|
|
614
|
+
.so-menu.so-menu-rtl .so-menu-caret-hollow .so-menu-caret {
|
|
615
|
+
margin-right: -4px;
|
|
616
|
+
margin-left: 14px;
|
|
580
617
|
}
|
package/css/Scroll/Bar.js
CHANGED
|
@@ -21,6 +21,8 @@ var _styles = require("./styles");
|
|
|
21
21
|
|
|
22
22
|
var _fixedLength = _interopRequireDefault(require("./fixedLength"));
|
|
23
23
|
|
|
24
|
+
var _config = require("../config");
|
|
25
|
+
|
|
24
26
|
var ScrollBar =
|
|
25
27
|
/*#__PURE__*/
|
|
26
28
|
function (_PureComponent) {
|
|
@@ -96,7 +98,14 @@ function (_PureComponent) {
|
|
|
96
98
|
onScroll = _this$props.onScroll,
|
|
97
99
|
barLength = _this$props.barLength;
|
|
98
100
|
var value = direction === 'x' ? x : y;
|
|
99
|
-
var newOffset
|
|
101
|
+
var newOffset;
|
|
102
|
+
|
|
103
|
+
if (direction === 'x' && (0, _config.isRTL)()) {
|
|
104
|
+
newOffset = this.cacheOffset - value / (length - barLength);
|
|
105
|
+
} else {
|
|
106
|
+
newOffset = this.cacheOffset + value / (length - barLength);
|
|
107
|
+
}
|
|
108
|
+
|
|
100
109
|
if (newOffset < 0) newOffset = 0;
|
|
101
110
|
if (newOffset > 1) newOffset = 1;
|
|
102
111
|
if (newOffset === this.cacheOffset) return;
|
|
@@ -115,11 +124,13 @@ function (_PureComponent) {
|
|
|
115
124
|
var rect = this.handle.getBoundingClientRect();
|
|
116
125
|
var newOffset = offset;
|
|
117
126
|
var page = length / (scrollLength - length);
|
|
127
|
+
var plus = (0, _config.isRTL)() ? event.clientX < rect.left : event.clientX > rect.left;
|
|
128
|
+
var add = (0, _config.isRTL)() ? event.clientX > rect.left : event.clientX < rect.left;
|
|
118
129
|
|
|
119
|
-
if (direction === 'x' &&
|
|
130
|
+
if (direction === 'x' && add || direction === 'y' && event.clientY < rect.top) {
|
|
120
131
|
newOffset = offset - page;
|
|
121
132
|
if (newOffset < 0) newOffset = 0;
|
|
122
|
-
} else if (direction === 'x' &&
|
|
133
|
+
} else if (direction === 'x' && plus || direction === 'y' && event.clientY > rect.top) {
|
|
123
134
|
newOffset = offset + page;
|
|
124
135
|
if (newOffset > 1) newOffset = 1;
|
|
125
136
|
}
|
|
@@ -137,14 +148,16 @@ function (_PureComponent) {
|
|
|
137
148
|
forceHeight = _this$props3.forceHeight;
|
|
138
149
|
var dragging = this.state.dragging;
|
|
139
150
|
var show = scrollLength > length;
|
|
151
|
+
var rtl = (0, _config.isRTL)();
|
|
140
152
|
var className = (0, _classnames.default)((0, _styles.scrollClass)('bar', direction, show && 'show', dragging && 'dragging', !forceHeight && 'padding-y'), this.props.className);
|
|
141
153
|
var value = (length - barLength) * offset;
|
|
154
|
+
var x = rtl ? 'right' : 'left';
|
|
142
155
|
var style = {};
|
|
143
156
|
|
|
144
157
|
if (scrollLength > 0) {
|
|
145
158
|
if (direction === 'x') {
|
|
146
159
|
style.width = length / scrollLength * 100 + "%";
|
|
147
|
-
style
|
|
160
|
+
style[x] = value;
|
|
148
161
|
} else {
|
|
149
162
|
style.height = length / scrollLength * 100 + "%";
|
|
150
163
|
style.top = value;
|
package/css/Scroll/Scroll.js
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
|
|
4
|
+
|
|
3
5
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
6
|
|
|
5
7
|
exports.__esModule = true;
|
|
@@ -29,7 +31,7 @@ var _styles = require("./styles");
|
|
|
29
31
|
|
|
30
32
|
var _Bar = _interopRequireDefault(require("./Bar"));
|
|
31
33
|
|
|
32
|
-
var _config =
|
|
34
|
+
var _config = _interopRequireWildcard(require("../config"));
|
|
33
35
|
|
|
34
36
|
var _context = require("./context");
|
|
35
37
|
|
|
@@ -221,7 +223,7 @@ function (_PureComponent) {
|
|
|
221
223
|
if (target !== this.wheelElement) return;
|
|
222
224
|
var wheel = (0, _normalizeWheel.default)(event);
|
|
223
225
|
this.setBaseScrollHeightRatio(wheel.pixelY);
|
|
224
|
-
if (scrollX) this.pixelX
|
|
226
|
+
if (scrollX) this.pixelX = (0, _config.isRTL)() ? this.pixelX - wheel.pixelX : this.pixelX + wheel.pixelX;
|
|
225
227
|
if (scrollY) this.pixelY += wheel.pixelY * this.baseScrollRatio;
|
|
226
228
|
|
|
227
229
|
if (Math.abs(wheel.pixelX) > Math.abs(wheel.pixelY)) {
|
|
@@ -295,7 +297,8 @@ function (_PureComponent) {
|
|
|
295
297
|
width = _this$getWheelRect2.width,
|
|
296
298
|
height = _this$getWheelRect2.height;
|
|
297
299
|
|
|
298
|
-
var
|
|
300
|
+
var rtl = (0, _config.isRTL)();
|
|
301
|
+
var className = (0, _classnames.default)((0, _styles.scrollClass)('_', scrollX && 'show-x', scrollY && 'show-y', rtl && 'rtl'), this.props.className);
|
|
299
302
|
var yLength = scrollHeight < height ? scrollHeight : height;
|
|
300
303
|
this.wheelY = scrollY && Math.ceil(scrollHeight) > Math.ceil(yLength);
|
|
301
304
|
this.wheelX = scrollX && Math.ceil(scrollWidth) > Math.ceil(width);
|
|
@@ -103,17 +103,38 @@
|
|
|
103
103
|
.so-scroll-show-y .so-scroll-inner {
|
|
104
104
|
bottom: 16px;
|
|
105
105
|
}
|
|
106
|
-
.so-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
.so-
|
|
106
|
+
.so-scroll.so-scroll-rtl {
|
|
107
|
+
direction: rtl;
|
|
108
|
+
}
|
|
109
|
+
.so-scroll.so-scroll-rtl .so-scroll-inner {
|
|
110
|
+
left: auto;
|
|
111
|
+
right: 0;
|
|
112
|
+
}
|
|
113
|
+
.so-scroll.so-scroll-rtl .so-scroll-bar.so-scroll-y {
|
|
114
|
+
right: auto;
|
|
115
|
+
left: 0;
|
|
116
|
+
}
|
|
117
|
+
.so-scroll.so-scroll-rtl .so-scroll-bar.so-scroll-y .so-scroll-handle {
|
|
118
|
+
right: 2px;
|
|
119
|
+
left: auto;
|
|
120
|
+
}
|
|
121
|
+
.so-scroll.so-scroll-rtl .so-scroll-bar.so-scroll-y.so-scroll-padding-y:after {
|
|
122
|
+
right: -1px;
|
|
123
|
+
left: auto;
|
|
124
|
+
}
|
|
125
|
+
.so-scroll.so-scroll-rtl.so-scroll-show-y {
|
|
110
126
|
padding-right: 0;
|
|
111
127
|
padding-left: 16px;
|
|
112
128
|
}
|
|
113
|
-
.so-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
129
|
+
.so-scroll.so-scroll-rtl.so-scroll-show-y .so-scroll-x {
|
|
130
|
+
right: 0;
|
|
131
|
+
left: 16px;
|
|
132
|
+
}
|
|
133
|
+
.so-scroll-show-x .so-scroll.so-scroll-rtl-inner {
|
|
134
|
+
right: 0;
|
|
135
|
+
left: 16px;
|
|
136
|
+
}
|
|
137
|
+
.so-scroll.so-scroll-rtl .so-scroll-bar.so-scroll-y {
|
|
117
138
|
right: auto;
|
|
118
139
|
left: 0;
|
|
119
140
|
}
|
package/css/Select/BoxList.js
CHANGED
|
@@ -17,16 +17,12 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
|
17
17
|
|
|
18
18
|
var _locale = require("../locale");
|
|
19
19
|
|
|
20
|
-
var _icons = _interopRequireDefault(require("../icons"));
|
|
21
|
-
|
|
22
20
|
var _uid = require("../utils/uid");
|
|
23
21
|
|
|
24
22
|
var _AnimationList = _interopRequireDefault(require("../AnimationList"));
|
|
25
23
|
|
|
26
24
|
var _Spin = _interopRequireDefault(require("../Spin"));
|
|
27
25
|
|
|
28
|
-
var _Input = _interopRequireDefault(require("../Input"));
|
|
29
|
-
|
|
30
26
|
var _Checkbox = _interopRequireDefault(require("../Checkbox/Checkbox"));
|
|
31
27
|
|
|
32
28
|
var _styles = require("./styles");
|
|
@@ -35,6 +31,8 @@ var _BoxOption = _interopRequireDefault(require("./BoxOption"));
|
|
|
35
31
|
|
|
36
32
|
var _LazyList = _interopRequireDefault(require("../AnimationList/LazyList"));
|
|
37
33
|
|
|
34
|
+
// import icons from '../icons'
|
|
35
|
+
// import Input from '../Input'
|
|
38
36
|
var ScaleList = (0, _AnimationList.default)(['fade', 'scale-y'], 'fast', 'flex');
|
|
39
37
|
|
|
40
38
|
var emptyFunc = function emptyFunc() {};
|
|
@@ -109,18 +107,16 @@ function (_Component) {
|
|
|
109
107
|
renderItem: renderItem
|
|
110
108
|
});
|
|
111
109
|
}));
|
|
112
|
-
}
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
}), _icons.default.SEARCH);
|
|
123
|
-
};
|
|
110
|
+
} // renderFilter() {
|
|
111
|
+
// const { filterText } = this.props
|
|
112
|
+
// return (
|
|
113
|
+
// <Input.Group size="small" className={selectClass('filter-input')}>
|
|
114
|
+
// <Input value={filterText} onChange={this.handleSearch} />
|
|
115
|
+
// {icons.SEARCH}
|
|
116
|
+
// </Input.Group>
|
|
117
|
+
// )
|
|
118
|
+
// }
|
|
119
|
+
;
|
|
124
120
|
|
|
125
121
|
_proto.renderHeader = function renderHeader(count) {
|
|
126
122
|
var _this$props4 = this.props,
|
|
@@ -247,7 +243,7 @@ BoxList.propTypes = {
|
|
|
247
243
|
columns: _propTypes.default.number,
|
|
248
244
|
data: _propTypes.default.array,
|
|
249
245
|
datum: _propTypes.default.object.isRequired,
|
|
250
|
-
filterText:
|
|
246
|
+
// filterText: PropTypes.string,
|
|
251
247
|
focus: _propTypes.default.bool,
|
|
252
248
|
keygen: _propTypes.default.any,
|
|
253
249
|
loading: _propTypes.default.oneOfType([_propTypes.default.element, _propTypes.default.bool]),
|
package/css/Select/Input.js
CHANGED
|
@@ -44,6 +44,8 @@ function (_Component) {
|
|
|
44
44
|
_this.bindElement = _this.bindElement.bind((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this)));
|
|
45
45
|
_this.handleInput = _this.handleInput.bind((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this)));
|
|
46
46
|
_this.handleBlur = _this.handleBlur.bind((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this)));
|
|
47
|
+
_this.geHandleMax = _this.geHandleMax.bind((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this)));
|
|
48
|
+
_this.handlePaste = _this.handlePaste.bind((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this)));
|
|
47
49
|
_this.focusInput = _this.focusInput.bind((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this))); // for mutiple select
|
|
48
50
|
|
|
49
51
|
_this.props.setInputReset(_this.reset.bind((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this)))); // set focus func to Select
|
|
@@ -78,13 +80,91 @@ function (_Component) {
|
|
|
78
80
|
return trim ? text.trim() : text.replace(/\u00A0/g, ' ');
|
|
79
81
|
};
|
|
80
82
|
|
|
83
|
+
_proto.handlePaste = function handlePaste(e) {
|
|
84
|
+
var _this2 = this;
|
|
85
|
+
|
|
86
|
+
(0, _element.preventPasteFile)(e, function (text) {
|
|
87
|
+
if (window.getSelection) {
|
|
88
|
+
var selection = window.getSelection();
|
|
89
|
+
_this2.lastSelect = {
|
|
90
|
+
anchorOffset: selection.anchorOffset,
|
|
91
|
+
focusOffset: selection.focusOffset,
|
|
92
|
+
text: text
|
|
93
|
+
};
|
|
94
|
+
}
|
|
95
|
+
});
|
|
96
|
+
};
|
|
97
|
+
|
|
98
|
+
_proto.geHandleMax = function geHandleMax(e) {
|
|
99
|
+
var maxLength = this.props.maxLength;
|
|
100
|
+
|
|
101
|
+
if (!maxLength) {
|
|
102
|
+
return true;
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
var change = true;
|
|
106
|
+
var text = e.target.innerText;
|
|
107
|
+
|
|
108
|
+
if (text.length >= maxLength) {
|
|
109
|
+
var lastPos;
|
|
110
|
+
|
|
111
|
+
if (window.getSelection) {
|
|
112
|
+
lastPos = Math.min(window.getSelection().anchorOffset - (text.length > maxLength ? 1 : 0), maxLength);
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
if (!this.lastMaxValue) {
|
|
116
|
+
this.lastMaxValue = text.slice(0, maxLength);
|
|
117
|
+
} else if (this.lastSelect) {
|
|
118
|
+
var _this$lastSelect = this.lastSelect,
|
|
119
|
+
anchorOffset = _this$lastSelect.anchorOffset,
|
|
120
|
+
focusOffset = _this$lastSelect.focusOffset,
|
|
121
|
+
str = _this$lastSelect.text;
|
|
122
|
+
var start = anchorOffset < focusOffset ? anchorOffset : focusOffset;
|
|
123
|
+
var end = anchorOffset > focusOffset ? anchorOffset : focusOffset;
|
|
124
|
+
|
|
125
|
+
if (end - start > 0) {
|
|
126
|
+
this.lastMaxValue = this.lastMaxValue.slice(0, start) + str.slice(0, end - start) + this.lastMaxValue.slice(end);
|
|
127
|
+
lastPos = focusOffset;
|
|
128
|
+
} else {
|
|
129
|
+
change = false;
|
|
130
|
+
}
|
|
131
|
+
} else {
|
|
132
|
+
change = false;
|
|
133
|
+
} // clear select info
|
|
134
|
+
|
|
135
|
+
|
|
136
|
+
this.lastSelect = false;
|
|
137
|
+
e.target.innerText = this.lastMaxValue;
|
|
138
|
+
|
|
139
|
+
if (lastPos) {
|
|
140
|
+
var selection = window.getSelection();
|
|
141
|
+
var range = selection.getRangeAt(0);
|
|
142
|
+
var textNode = range.startContainer;
|
|
143
|
+
|
|
144
|
+
if (textNode.nodeName !== '#text') {
|
|
145
|
+
;
|
|
146
|
+
var _textNode$childNodes = textNode.childNodes;
|
|
147
|
+
textNode = _textNode$childNodes[0];
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
range.setStart(textNode, lastPos);
|
|
151
|
+
range.collapse(true);
|
|
152
|
+
}
|
|
153
|
+
} else {
|
|
154
|
+
this.lastMaxValue = '';
|
|
155
|
+
} // eslint-disable-next-line consistent-return
|
|
156
|
+
|
|
157
|
+
|
|
158
|
+
return change;
|
|
159
|
+
};
|
|
160
|
+
|
|
81
161
|
_proto.reset = function reset() {
|
|
82
162
|
if (this.editElement) this.editElement.innerText = '';
|
|
83
163
|
if (this.blurTimer) clearTimeout(this.blurTimer);
|
|
84
164
|
};
|
|
85
165
|
|
|
86
166
|
_proto.focusInput = function focusInput(flag) {
|
|
87
|
-
var
|
|
167
|
+
var _this3 = this;
|
|
88
168
|
|
|
89
169
|
if (flag === void 0) {
|
|
90
170
|
flag = false;
|
|
@@ -100,17 +180,17 @@ function (_Component) {
|
|
|
100
180
|
this.setState({
|
|
101
181
|
editable: true
|
|
102
182
|
}, function () {
|
|
103
|
-
return
|
|
183
|
+
return _this3.focus();
|
|
104
184
|
});
|
|
105
185
|
};
|
|
106
186
|
|
|
107
187
|
_proto.focus = function focus() {
|
|
108
|
-
var
|
|
188
|
+
var _this4 = this;
|
|
109
189
|
|
|
110
190
|
var focusSelected = this.props.focusSelected;
|
|
111
191
|
var action = focusSelected ? _element.focusElement.select : _element.focusElement.end;
|
|
112
192
|
requestAnimationFrame(function () {
|
|
113
|
-
action(
|
|
193
|
+
action(_this4.editElement);
|
|
114
194
|
});
|
|
115
195
|
};
|
|
116
196
|
|
|
@@ -119,6 +199,12 @@ function (_Component) {
|
|
|
119
199
|
};
|
|
120
200
|
|
|
121
201
|
_proto.handleInput = function handleInput(e) {
|
|
202
|
+
var change = this.geHandleMax(e);
|
|
203
|
+
|
|
204
|
+
if (!change) {
|
|
205
|
+
return;
|
|
206
|
+
}
|
|
207
|
+
|
|
122
208
|
var text = e.target.innerText.replace('\feff ', '');
|
|
123
209
|
this.lastCursorOffset = (0, _element.getCursorOffset)(text.length);
|
|
124
210
|
var t = this.getProcessedValue(text);
|
|
@@ -161,7 +247,7 @@ function (_Component) {
|
|
|
161
247
|
__html: value
|
|
162
248
|
}
|
|
163
249
|
}, props, {
|
|
164
|
-
onPaste:
|
|
250
|
+
onPaste: this.handlePaste
|
|
165
251
|
}));
|
|
166
252
|
};
|
|
167
253
|
|
|
@@ -180,7 +266,8 @@ FilterInput.propTypes = {
|
|
|
180
266
|
trim: _propTypes.default.bool,
|
|
181
267
|
focusSelected: _propTypes.default.bool,
|
|
182
268
|
bindFocusInputFunc: _propTypes.default.func,
|
|
183
|
-
collapse: _propTypes.default.func
|
|
269
|
+
collapse: _propTypes.default.func,
|
|
270
|
+
maxLength: _propTypes.default.number
|
|
184
271
|
};
|
|
185
272
|
FilterInput.defaultProps = {
|
|
186
273
|
text: '',
|