@semcore/input 16.1.1 → 16.1.2-prerelease.8
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/CHANGELOG.md +6 -0
- package/README.md +4 -4
- package/lib/cjs/Input.js +138 -161
- package/lib/cjs/Input.js.map +1 -1
- package/lib/cjs/index.d.js.map +1 -1
- package/lib/cjs/index.js +3 -3
- package/lib/cjs/style/input.shadow.css +5 -1
- package/lib/es6/Input.js +130 -153
- package/lib/es6/Input.js.map +1 -1
- package/lib/es6/index.d.js.map +1 -1
- package/lib/es6/style/input.shadow.css +5 -1
- package/lib/esm/Input.mjs +135 -133
- package/lib/esm/style/input.shadow.css +5 -1
- package/lib/types/index.d.ts +8 -18
- package/package.json +4 -7
package/CHANGELOG.md
CHANGED
package/README.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
[](https://www.npmjs.com/@semcore/input)
|
|
4
4
|
[](https://www.npmjs.com/package/@semcore/input)
|
|
5
|
-
[](https://github.com/semrush/intergalactic/blob/
|
|
5
|
+
[](https://github.com/semrush/intergalactic/blob/HEAD/LICENSE)
|
|
6
6
|
|
|
7
7
|
> This component is part of the Intergalactic Design System
|
|
8
8
|
|
|
@@ -20,13 +20,13 @@ npm install @semcore/input
|
|
|
20
20
|
|
|
21
21
|
## 👤 Author
|
|
22
22
|
|
|
23
|
-
[UI-kit team](https://github.com/semrush/intergalactic/blob/
|
|
23
|
+
[UI-kit team](https://github.com/semrush/intergalactic/blob/HEAD/MAINTAINERS) and [others ❤️](https://github.com/semrush/intergalactic/graphs/contributors)
|
|
24
24
|
|
|
25
25
|
## 🤝 Contributing
|
|
26
26
|
|
|
27
27
|
Contributions, issues and feature requests are welcome!
|
|
28
28
|
|
|
29
|
-
Feel free to check [issues page](https://github.com/semrush/intergalactic/issues). You can also take a look at the [contributing guide](https://github.com/semrush/intergalactic/blob/
|
|
29
|
+
Feel free to check [issues page](https://github.com/semrush/intergalactic/issues). You can also take a look at the [contributing guide](https://github.com/semrush/intergalactic/blob/HEAD/CONTRIBUTING.md).
|
|
30
30
|
|
|
31
31
|
## Show your support
|
|
32
32
|
|
|
@@ -34,4 +34,4 @@ Give a ⭐️ if this project helped you!
|
|
|
34
34
|
|
|
35
35
|
## 📝 License
|
|
36
36
|
|
|
37
|
-
This project is [MIT](https://github.com/semrush/intergalactic/blob/
|
|
37
|
+
This project is [MIT](https://github.com/semrush/intergalactic/blob/HEAD/LICENSE) licensed.
|
package/lib/cjs/Input.js
CHANGED
|
@@ -1,202 +1,179 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
4
|
Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
|
-
exports
|
|
8
|
-
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
|
9
|
-
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
10
|
-
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
11
|
-
var _callSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/callSuper"));
|
|
12
|
-
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
7
|
+
exports.default = void 0;
|
|
13
8
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
14
9
|
var _core = require("@semcore/core");
|
|
15
|
-
var
|
|
16
|
-
var _flexBox = require("@semcore/flex-box");
|
|
17
|
-
var _neighborLocation = _interopRequireDefault(require("@semcore/neighbor-location"));
|
|
10
|
+
var _baseComponents = require("@semcore/base-components");
|
|
18
11
|
var _react = _interopRequireDefault(require("react"));
|
|
19
12
|
/*!__reshadow-styles__:"./style/input.shadow.css"*/
|
|
20
|
-
|
|
13
|
+
const style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".___SInput_1yq06_gg_{display:inline-flex;width:100%;align-items:center;position:relative;z-index:0;vertical-align:middle;padding:1px;box-sizing:border-box}.___SInput_1yq06_gg_ input:-webkit-autofill{border-radius:var(--intergalactic-control-rounded, 6px);-webkit-box-shadow:0 0 0 30px #faffbd inset}.___SInput_1yq06_gg_ input:-webkit-autofill~.___SOutline_1yq06_gg_{background-color:#faffbd}.___SInput_1yq06_gg_ .___SValue_1yq06_gg_:focus,.___SInput_1yq06_gg_ .___SValue_1yq06_gg_:focus-visible,.___SInput_1yq06_gg_ .___SValue_1yq06_gg_:focus-visible::after,.___SInput_1yq06_gg_ .___SValue_1yq06_gg_:focus::after{outline:0}.___SValue_1yq06_gg_{min-width:0;width:100%;height:100%;padding:0;border:0;box-sizing:border-box;color:var(--intergalactic-text-primary, #191b23);font-size:inherit;text-overflow:ellipsis;font-family:inherit;background:0 0}.___SValue_1yq06_gg_::-moz-placeholder{color:var(--intergalactic-text-placeholder, #8a8e9b)}.___SValue_1yq06_gg_::placeholder{color:var(--intergalactic-text-placeholder, #8a8e9b)}.___SValue_1yq06_gg_:not(:disabled):-moz-read-only~.___SOutline_1yq06_gg_{background:var(--intergalactic-bg-secondary-neutral, #f4f5f9)}.___SValue_1yq06_gg_:not(:disabled):read-only~.___SOutline_1yq06_gg_{background:var(--intergalactic-bg-secondary-neutral, #f4f5f9)}.___SValue_1yq06_gg_:disabled{-webkit-user-select:none;-moz-user-select:none;user-select:none;opacity:var(--intergalactic-disabled-opacity, 0.3)}.___SInput_1yq06_gg_.__disabled_1yq06_gg_ .___SOutline_1yq06_gg_,.___SValue_1yq06_gg_:disabled~.___SOutline_1yq06_gg_{opacity:var(--intergalactic-disabled-opacity, 0.3);cursor:default;pointer-events:none}.___SOutline_1yq06_gg_{position:absolute;top:0;right:0;bottom:0;left:0;border:1px solid;border-radius:var(--intergalactic-control-rounded, 6px);z-index:-1;background:var(--intergalactic-bg-primary-neutral, #ffffff)}.___SAddon_1yq06_gg_{display:inline-flex;justify-content:center;align-items:center;flex:0 0 auto;padding:0 var(--intergalactic-spacing-2x, 8px);height:100%;color:var(--intergalactic-icon-secondary-neutral, #a9abb6)}.___SAddon_1yq06_gg_.__interactive_1yq06_gg_{cursor:pointer}@media (hover:hover){.___SAddon_1yq06_gg_.__interactive_1yq06_gg_:hover{color:var(--intergalactic-icon-secondary-neutral-hover-active, #878992)}}.___SAddon_1yq06_gg_.__disabled_1yq06_gg_{opacity:var(--intergalactic-disabled-opacity, 0.3);cursor:default;pointer-events:none}.___SAddon_1yq06_gg_._size_m_1yq06_gg_:not(.___SButton_1yq06_gg_){padding:0 var(--intergalactic-spacing-2x, 8px)}.___SAddon_1yq06_gg_._size_l_1yq06_gg_._neighborLocation_right_1yq06_gg_:not(.___SButton_1yq06_gg_){padding:0 var(--intergalactic-spacing-2x, 8px)0 var(--intergalactic-spacing-3x, 12px)}.___SAddon_1yq06_gg_._size_l_1yq06_gg_._neighborLocation_left_1yq06_gg_:not(.___SButton_1yq06_gg_){padding:0 var(--intergalactic-spacing-3x, 12px)0 var(--intergalactic-spacing-2x, 8px)}.___SInput_1yq06_gg_ .___SAddon_1yq06_gg_:nth-last-child(2){margin-right:-1px}.___SValue_1yq06_gg_._size_m_1yq06_gg_{padding:0 var(--intergalactic-spacing-2x, 8px)}.___SValue_1yq06_gg_._size_l_1yq06_gg_{padding:0 var(--intergalactic-spacing-3x, 12px)}.___SInput_1yq06_gg_._size_m_1yq06_gg_{font-size:var(--intergalactic-fs-200, 14px);height:var(--intergalactic-form-control-m, 28px)}.___SInput_1yq06_gg_._size_l_1yq06_gg_{font-size:var(--intergalactic-fs-300, 16px);height:var(--intergalactic-form-control-l, 40px)}.___SInput_1yq06_gg_:has(.___SValue_1yq06_gg_:focus-visible){z-index:1}.___SInput_1yq06_gg_._state_normal_1yq06_gg_ .___SOutline_1yq06_gg_{border-color:var(--intergalactic-border-primary, #c4c7cf)}.___SInput_1yq06_gg_._state_normal_1yq06_gg_:has(.___SValue_1yq06_gg_:focus-visible) .___SOutline_1yq06_gg_{outline-color:var(--intergalactic-keyboard-focus-outline, #008ff8);outline-style:solid;outline-width:2px;transition-duration:calc(var(--intergalactic-duration-extra-fast, 100)*1ms);transition-timing-function:ease-in-out;outline-offset:0;transition-property:outline-color,outline-width;border-color:var(--intergalactic-border-info-active, #006dca)}.___SInput_1yq06_gg_._state_valid_1yq06_gg_ .___SOutline_1yq06_gg_{border-color:var(--intergalactic-border-success-active, #007c65)}.___SInput_1yq06_gg_._state_valid_1yq06_gg_:has(.___SValue_1yq06_gg_:focus-visible) .___SOutline_1yq06_gg_{outline-color:var(--intergalactic-keyboard-focus-outline, #008ff8);outline-style:solid;outline-width:2px;transition-duration:calc(var(--intergalactic-duration-extra-fast, 100)*1ms);transition-timing-function:ease-in-out;outline-offset:0;transition-property:outline-color,outline-width;border-color:var(--intergalactic-border-success-active, #007c65);outline-color:var(--intergalactic-keyboard-focus-valid-outline, #009f81)}.___SInput_1yq06_gg_._state_invalid_1yq06_gg_ .___SOutline_1yq06_gg_{border-color:var(--intergalactic-border-critical-active, #d1002f)}.___SInput_1yq06_gg_._state_invalid_1yq06_gg_:has(.___SValue_1yq06_gg_:focus-visible) .___SOutline_1yq06_gg_{outline-color:var(--intergalactic-keyboard-focus-outline, #008ff8);outline-style:solid;outline-width:2px;transition-duration:calc(var(--intergalactic-duration-extra-fast, 100)*1ms);transition-timing-function:ease-in-out;outline-offset:0;transition-property:outline-color,outline-width;border-color:var(--intergalactic-border-critical-active, #d1002f);outline-color:var(--intergalactic-keyboard-focus-invalid-outline, #ff4953)}.___SInput_1yq06_gg_._neighborLocation_right_1yq06_gg_ .___SOutline_1yq06_gg_{border-top-right-radius:0;border-bottom-right-radius:0}.___SInput_1yq06_gg_._neighborLocation_both_1yq06_gg_ .___SOutline_1yq06_gg_{border-radius:0;border-left:none}.___SInput_1yq06_gg_._neighborLocation_left_1yq06_gg_ .___SOutline_1yq06_gg_{border-top-left-radius:0;border-bottom-left-radius:0;border-left:none}.___SValue_1yq06_gg_._neighborLocation_right_1yq06_gg_{padding-right:0}.___SValue_1yq06_gg_._neighborLocation_both_1yq06_gg_{padding-left:0;padding-right:0}.___SValue_1yq06_gg_._neighborLocation_left_1yq06_gg_{padding-left:0}", /*__inner_css_end__*/"1yq06_gg_"),
|
|
21
14
|
/*__reshadow_css_end__*/
|
|
22
15
|
{
|
|
23
|
-
"__SInput": "
|
|
24
|
-
"_disabled": "
|
|
25
|
-
"__SOutline": "
|
|
26
|
-
"__SValue": "
|
|
27
|
-
"__SAddon": "
|
|
28
|
-
"_size_m": "
|
|
29
|
-
"__SButton": "
|
|
30
|
-
"_size_l": "
|
|
31
|
-
"_neighborLocation_right": "
|
|
32
|
-
"
|
|
33
|
-
"
|
|
34
|
-
"_interactive": "
|
|
35
|
-
"_state_normal": "
|
|
36
|
-
"_state_valid": "
|
|
37
|
-
"_state_invalid": "
|
|
16
|
+
"__SInput": "___SInput_1yq06_gg_",
|
|
17
|
+
"_disabled": "__disabled_1yq06_gg_",
|
|
18
|
+
"__SOutline": "___SOutline_1yq06_gg_",
|
|
19
|
+
"__SValue": "___SValue_1yq06_gg_",
|
|
20
|
+
"__SAddon": "___SAddon_1yq06_gg_",
|
|
21
|
+
"_size_m": "_size_m_1yq06_gg_",
|
|
22
|
+
"__SButton": "___SButton_1yq06_gg_",
|
|
23
|
+
"_size_l": "_size_l_1yq06_gg_",
|
|
24
|
+
"_neighborLocation_right": "_neighborLocation_right_1yq06_gg_",
|
|
25
|
+
"_neighborLocation_left": "_neighborLocation_left_1yq06_gg_",
|
|
26
|
+
"_neighborLocation_both": "_neighborLocation_both_1yq06_gg_",
|
|
27
|
+
"_interactive": "__interactive_1yq06_gg_",
|
|
28
|
+
"_state_normal": "_state_normal_1yq06_gg_",
|
|
29
|
+
"_state_valid": "_state_valid_1yq06_gg_",
|
|
30
|
+
"_state_invalid": "_state_invalid_1yq06_gg_"
|
|
38
31
|
});
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
(0,
|
|
43
|
-
|
|
44
|
-
args[_key] = arguments[_key];
|
|
45
|
-
}
|
|
46
|
-
_this = (0, _callSuper2["default"])(this, Input, [].concat(args));
|
|
47
|
-
(0, _defineProperty2["default"])(_this, "inputRef", /*#__PURE__*/_react["default"].createRef());
|
|
48
|
-
(0, _defineProperty2["default"])(_this, "handleMouseDownAddon", function (event) {
|
|
49
|
-
var _this$inputRef$curren;
|
|
32
|
+
class Input extends _core.Component {
|
|
33
|
+
constructor(...args) {
|
|
34
|
+
super(...args);
|
|
35
|
+
(0, _defineProperty2.default)(this, "inputRef", /*#__PURE__*/_react.default.createRef());
|
|
36
|
+
(0, _defineProperty2.default)(this, "handleMouseDownAddon", event => {
|
|
50
37
|
event.preventDefault();
|
|
51
|
-
|
|
38
|
+
this.inputRef.current?.focus();
|
|
52
39
|
});
|
|
53
|
-
(0, _defineProperty2
|
|
40
|
+
(0, _defineProperty2.default)(this, "handleClick", () => {
|
|
54
41
|
if (!_core.lastInteraction.isKeyboard) return;
|
|
55
|
-
setTimeout(
|
|
42
|
+
setTimeout(() => {
|
|
56
43
|
if (document.activeElement === document.body) {
|
|
57
|
-
|
|
58
|
-
(_this$inputRef$curren2 = _this.inputRef.current) === null || _this$inputRef$curren2 === void 0 || _this$inputRef$curren2.focus();
|
|
44
|
+
this.inputRef.current?.focus();
|
|
59
45
|
}
|
|
60
46
|
}, 0);
|
|
61
47
|
});
|
|
62
|
-
return _this;
|
|
63
48
|
}
|
|
64
|
-
(
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
var _ref4;
|
|
124
|
-
return _ref4 = (0, _core.sstyled)(styles), /*#__PURE__*/_react["default"].createElement(SInput, _ref4.cn("SInput", (0, _objectSpread2["default"])({}, (0, _core.assignProps)({
|
|
49
|
+
getAddonProps() {
|
|
50
|
+
const {
|
|
51
|
+
disabled,
|
|
52
|
+
size
|
|
53
|
+
} = this.asProps;
|
|
54
|
+
return {
|
|
55
|
+
disabled,
|
|
56
|
+
onMouseDown: this.handleMouseDownAddon,
|
|
57
|
+
onClick: this.handleClick,
|
|
58
|
+
size
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
getValueProps() {
|
|
62
|
+
const {
|
|
63
|
+
size,
|
|
64
|
+
disabled,
|
|
65
|
+
state,
|
|
66
|
+
role,
|
|
67
|
+
placeholder,
|
|
68
|
+
// these props might be passed from the <Select /> component
|
|
69
|
+
'aria-haspopup': ariaHaspopup,
|
|
70
|
+
'aria-controls': ariaControls,
|
|
71
|
+
'aria-expanded': ariaExpanded,
|
|
72
|
+
'aria-autocomplete': ariaAutocomplete,
|
|
73
|
+
'aria-owns': ariaOwns,
|
|
74
|
+
'aria-activedescendant': ariaActivedescendant
|
|
75
|
+
} = this.asProps;
|
|
76
|
+
return {
|
|
77
|
+
'ref': this.inputRef,
|
|
78
|
+
size,
|
|
79
|
+
disabled,
|
|
80
|
+
state,
|
|
81
|
+
role,
|
|
82
|
+
placeholder,
|
|
83
|
+
'aria-haspopup': ariaHaspopup,
|
|
84
|
+
'aria-controls': ariaControls,
|
|
85
|
+
'aria-expanded': ariaExpanded,
|
|
86
|
+
'aria-autocomplete': ariaAutocomplete,
|
|
87
|
+
'aria-owns': ariaOwns,
|
|
88
|
+
'aria-activedescendant': ariaActivedescendant
|
|
89
|
+
};
|
|
90
|
+
}
|
|
91
|
+
render() {
|
|
92
|
+
var _ref = this.asProps;
|
|
93
|
+
const SInput = _baseComponents.Box;
|
|
94
|
+
const SOutline = 'div';
|
|
95
|
+
const {
|
|
96
|
+
Children,
|
|
97
|
+
styles,
|
|
98
|
+
neighborLocation,
|
|
99
|
+
controlsLength,
|
|
100
|
+
state
|
|
101
|
+
} = this.asProps;
|
|
102
|
+
return /*#__PURE__*/_react.default.createElement(_baseComponents.NeighborLocation.Detect, {
|
|
103
|
+
neighborLocation: neighborLocation
|
|
104
|
+
}, neighborLocation => {
|
|
105
|
+
var _ref4;
|
|
106
|
+
return _ref4 = (0, _core.sstyled)(styles), /*#__PURE__*/_react.default.createElement(SInput, _ref4.cn("SInput", {
|
|
107
|
+
...(0, _core.assignProps)({
|
|
125
108
|
"neighborLocation": neighborLocation,
|
|
126
109
|
"__excludeProps": ['role', 'aria-haspopup', 'aria-controls', 'aria-expanded', 'placeholder', 'aria-autocomplete', 'aria-owns', 'aria-activedescendant', 'tabIndex']
|
|
127
|
-
}, _ref)
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
});
|
|
131
|
-
}
|
|
132
|
-
}
|
|
133
|
-
}
|
|
134
|
-
(0, _defineProperty2
|
|
135
|
-
(0, _defineProperty2
|
|
110
|
+
}, _ref)
|
|
111
|
+
}), /*#__PURE__*/_react.default.createElement(_baseComponents.NeighborLocation, _ref4.cn("NeighborLocation", {
|
|
112
|
+
"controlsLength": controlsLength
|
|
113
|
+
}), /*#__PURE__*/_react.default.createElement(Children, _ref4.cn("Children", {}))), /*#__PURE__*/_react.default.createElement(SOutline, _ref4.cn("SOutline", {}), state === 'invalid' && /*#__PURE__*/_react.default.createElement(_baseComponents.InvalidStateBox, _ref4.cn("InvalidStateBox", {}))));
|
|
114
|
+
});
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
(0, _defineProperty2.default)(Input, "displayName", 'Input');
|
|
118
|
+
(0, _defineProperty2.default)(Input, "defaultProps", {
|
|
136
119
|
size: 'm',
|
|
137
120
|
state: 'normal'
|
|
138
121
|
});
|
|
139
|
-
(0, _defineProperty2
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
122
|
+
(0, _defineProperty2.default)(Input, "style", style);
|
|
123
|
+
class Value extends _core.Component {
|
|
124
|
+
uncontrolledProps() {
|
|
125
|
+
return {
|
|
126
|
+
value: e => e.target.value
|
|
127
|
+
};
|
|
144
128
|
}
|
|
145
|
-
(
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
var SValue = _flexBox.Box;
|
|
160
|
-
var _this$asProps4 = this.asProps,
|
|
161
|
-
styles = _this$asProps4.styles,
|
|
162
|
-
neighborLocation = _this$asProps4.neighborLocation,
|
|
163
|
-
state = _this$asProps4.state;
|
|
164
|
-
return /*#__PURE__*/_react["default"].createElement(_neighborLocation["default"].Detect, {
|
|
165
|
-
neighborLocation: neighborLocation
|
|
166
|
-
}, function (neighborLocation) {
|
|
167
|
-
var _ref5;
|
|
168
|
-
return _ref5 = (0, _core.sstyled)(styles), /*#__PURE__*/_react["default"].createElement(SValue, _ref5.cn("SValue", (0, _objectSpread2["default"])({}, (0, _core.assignProps)({
|
|
129
|
+
render() {
|
|
130
|
+
var _ref2 = this.asProps;
|
|
131
|
+
const SValue = _baseComponents.Box;
|
|
132
|
+
const {
|
|
133
|
+
styles,
|
|
134
|
+
neighborLocation,
|
|
135
|
+
state
|
|
136
|
+
} = this.asProps;
|
|
137
|
+
return /*#__PURE__*/_react.default.createElement(_baseComponents.NeighborLocation.Detect, {
|
|
138
|
+
neighborLocation: neighborLocation
|
|
139
|
+
}, neighborLocation => {
|
|
140
|
+
var _ref5;
|
|
141
|
+
return _ref5 = (0, _core.sstyled)(styles), /*#__PURE__*/_react.default.createElement(SValue, _ref5.cn("SValue", {
|
|
142
|
+
...(0, _core.assignProps)({
|
|
169
143
|
"inAfterOutline": true,
|
|
170
144
|
"neighborLocation": neighborLocation,
|
|
171
145
|
"tag": 'input',
|
|
172
146
|
"type": 'text',
|
|
173
147
|
"aria-invalid": state === 'invalid'
|
|
174
|
-
}, _ref2)
|
|
175
|
-
});
|
|
176
|
-
}
|
|
177
|
-
}
|
|
178
|
-
}
|
|
179
|
-
(0, _defineProperty2
|
|
148
|
+
}, _ref2)
|
|
149
|
+
}));
|
|
150
|
+
});
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
(0, _defineProperty2.default)(Value, "defaultProps", {
|
|
180
154
|
defaultValue: ''
|
|
181
155
|
});
|
|
182
|
-
(0, _defineProperty2["default"])(Value, "enhance", [(0, _autoFocusEnhance["default"])()]);
|
|
183
156
|
function Addon(props) {
|
|
184
157
|
var _ref3 = arguments[0];
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
158
|
+
const SAddon = _baseComponents.Box;
|
|
159
|
+
const {
|
|
160
|
+
Children,
|
|
161
|
+
styles,
|
|
162
|
+
neighborLocation
|
|
163
|
+
} = props;
|
|
164
|
+
return /*#__PURE__*/_react.default.createElement(_baseComponents.NeighborLocation.Detect, {
|
|
190
165
|
neighborLocation: neighborLocation
|
|
191
|
-
},
|
|
166
|
+
}, neighborLocation => {
|
|
192
167
|
var _ref6;
|
|
193
|
-
return _ref6 = (0, _core.sstyled)(styles), /*#__PURE__*/_react
|
|
194
|
-
|
|
195
|
-
|
|
168
|
+
return _ref6 = (0, _core.sstyled)(styles), /*#__PURE__*/_react.default.createElement(SAddon, _ref6.cn("SAddon", {
|
|
169
|
+
...(0, _core.assignProps)({
|
|
170
|
+
"neighborLocation": neighborLocation
|
|
171
|
+
}, _ref3)
|
|
172
|
+
}), /*#__PURE__*/_react.default.createElement(Children, _ref6.cn("Children", {})));
|
|
196
173
|
});
|
|
197
174
|
}
|
|
198
|
-
var _default = exports
|
|
199
|
-
Addon
|
|
200
|
-
Value
|
|
175
|
+
var _default = exports.default = (0, _core.createComponent)(Input, {
|
|
176
|
+
Addon,
|
|
177
|
+
Value
|
|
201
178
|
});
|
|
202
179
|
//# sourceMappingURL=Input.js.map
|
package/lib/cjs/Input.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Input.js","names":["_core","require","_autoFocusEnhance","_interopRequireDefault","_flexBox","_neighborLocation","_react","style","sstyled","insert","Input","_Component","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","_callSuper2","concat","_defineProperty2","React","createRef","event","_this$inputRef$curren","preventDefault","inputRef","current","focus","lastInteraction","isKeyboard","setTimeout","document","activeElement","body","_this$inputRef$curren2","_inherits2","_createClass2","key","value","getAddonProps","_this$asProps","asProps","disabled","size","onMouseDown","handleMouseDownAddon","onClick","handleClick","getValueProps","_this$asProps2","state","role","placeholder","ariaHaspopup","ariaControls","ariaExpanded","ariaAutocomplete","ariaOwns","ariaActivedescendant","render","_ref","SInput","Box","SOutline","_this$asProps3","Children","styles","neighborLocation","controlsLength","createElement","Detect","_ref4","cn","_objectSpread2","assignProps","InvalidStateBox","Component","Value","_Component2","uncontrolledProps","e","target","_ref2","SValue","_this$asProps4","_ref5","defaultValue","autoFocusEnhance","Addon","props","_ref3","arguments[0]","SAddon","_ref6","_default","exports","createComponent"],"sources":["../../src/Input.jsx"],"sourcesContent":["import { createComponent, Component, sstyled, Root, lastInteraction } from '@semcore/core';\nimport autoFocusEnhance from '@semcore/core/lib/utils/enhances/autoFocusEnhance';\nimport { Box, InvalidStateBox } from '@semcore/flex-box';\nimport NeighborLocation from '@semcore/neighbor-location';\nimport React from 'react';\n\nimport style from './style/input.shadow.css';\n\nclass Input extends Component {\n static displayName = 'Input';\n\n static defaultProps = {\n size: 'm',\n state: 'normal',\n };\n\n static style = style;\n\n inputRef = React.createRef();\n\n handleMouseDownAddon = (event) => {\n event.preventDefault();\n this.inputRef.current?.focus();\n };\n\n handleClick = () => {\n if (!lastInteraction.isKeyboard) return;\n setTimeout(() => {\n if (document.activeElement === document.body) {\n this.inputRef.current?.focus();\n }\n }, 0);\n };\n\n getAddonProps() {\n const { disabled, size } = this.asProps;\n return {\n disabled,\n onMouseDown: this.handleMouseDownAddon,\n onClick: this.handleClick,\n size,\n };\n }\n\n getValueProps() {\n const {\n size,\n disabled,\n state,\n role,\n placeholder,\n // these props might be passed from the <Select /> component\n 'aria-haspopup': ariaHaspopup,\n 'aria-controls': ariaControls,\n 'aria-expanded': ariaExpanded,\n 'aria-autocomplete': ariaAutocomplete,\n 'aria-owns': ariaOwns,\n 'aria-activedescendant': ariaActivedescendant,\n } = this.asProps;\n\n return {\n 'ref': this.inputRef,\n size,\n disabled,\n state,\n role,\n placeholder,\n 'aria-haspopup': ariaHaspopup,\n 'aria-controls': ariaControls,\n 'aria-expanded': ariaExpanded,\n 'aria-autocomplete': ariaAutocomplete,\n 'aria-owns': ariaOwns,\n 'aria-activedescendant': ariaActivedescendant,\n };\n }\n\n render() {\n const SInput = Root;\n const SOutline = 'div';\n const { Children, styles, neighborLocation, controlsLength, state } = this.asProps;\n return (\n <NeighborLocation.Detect neighborLocation={neighborLocation}>\n {(neighborLocation) =>\n sstyled(styles)(\n <SInput\n render={Box}\n neighborLocation={neighborLocation}\n __excludeProps={[\n 'role',\n 'aria-haspopup',\n 'aria-controls',\n 'aria-expanded',\n 'placeholder',\n 'aria-autocomplete',\n 'aria-owns',\n 'aria-activedescendant',\n 'tabIndex',\n ]}\n >\n <NeighborLocation controlsLength={controlsLength}>\n <Children />\n </NeighborLocation>\n <SOutline>{state === 'invalid' && <InvalidStateBox />}</SOutline>\n </SInput>,\n )}\n </NeighborLocation.Detect>\n );\n }\n}\n\nclass Value extends Component {\n static defaultProps = {\n defaultValue: '',\n };\n\n static enhance = [autoFocusEnhance()];\n\n uncontrolledProps() {\n return {\n value: (e) => e.target.value,\n };\n }\n\n render() {\n const SValue = Root;\n const { styles, neighborLocation, state } = this.asProps;\n\n return (\n <NeighborLocation.Detect neighborLocation={neighborLocation}>\n {(neighborLocation) =>\n sstyled(styles)(\n <SValue\n render={Box}\n inAfterOutline\n neighborLocation={neighborLocation}\n tag='input'\n type='text'\n aria-invalid={state === 'invalid'}\n />,\n )}\n </NeighborLocation.Detect>\n );\n }\n}\n\nfunction Addon(props) {\n const SAddon = Root;\n const { Children, styles, neighborLocation } = props;\n return (\n <NeighborLocation.Detect neighborLocation={neighborLocation}>\n {(neighborLocation) =>\n sstyled(styles)(\n <SAddon render={Box} neighborLocation={neighborLocation}>\n <Children />\n </SAddon>,\n )}\n </NeighborLocation.Detect>\n );\n}\n\nexport default createComponent(Input, {\n Addon,\n Value,\n});\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"Input.js","names":["_core","require","_baseComponents","_react","_interopRequireDefault","style","sstyled","insert","Input","Component","constructor","args","_defineProperty2","default","React","createRef","event","preventDefault","inputRef","current","focus","lastInteraction","isKeyboard","setTimeout","document","activeElement","body","getAddonProps","disabled","size","asProps","onMouseDown","handleMouseDownAddon","onClick","handleClick","getValueProps","state","role","placeholder","ariaHaspopup","ariaControls","ariaExpanded","ariaAutocomplete","ariaOwns","ariaActivedescendant","render","_ref","SInput","Box","SOutline","Children","styles","neighborLocation","controlsLength","createElement","NeighborLocation","Detect","_ref4","cn","assignProps","InvalidStateBox","Value","uncontrolledProps","value","e","target","_ref2","SValue","_ref5","defaultValue","Addon","props","_ref3","arguments[0]","SAddon","_ref6","_default","exports","createComponent"],"sources":["../../src/Input.jsx"],"sourcesContent":["import { NeighborLocation, Box, InvalidStateBox } from '@semcore/base-components';\nimport { createComponent, Component, sstyled, Root, lastInteraction } from '@semcore/core';\nimport React from 'react';\n\nimport style from './style/input.shadow.css';\n\nclass Input extends Component {\n static displayName = 'Input';\n\n static defaultProps = {\n size: 'm',\n state: 'normal',\n };\n\n static style = style;\n\n inputRef = React.createRef();\n\n handleMouseDownAddon = (event) => {\n event.preventDefault();\n this.inputRef.current?.focus();\n };\n\n handleClick = () => {\n if (!lastInteraction.isKeyboard) return;\n setTimeout(() => {\n if (document.activeElement === document.body) {\n this.inputRef.current?.focus();\n }\n }, 0);\n };\n\n getAddonProps() {\n const { disabled, size } = this.asProps;\n return {\n disabled,\n onMouseDown: this.handleMouseDownAddon,\n onClick: this.handleClick,\n size,\n };\n }\n\n getValueProps() {\n const {\n size,\n disabled,\n state,\n role,\n placeholder,\n // these props might be passed from the <Select /> component\n 'aria-haspopup': ariaHaspopup,\n 'aria-controls': ariaControls,\n 'aria-expanded': ariaExpanded,\n 'aria-autocomplete': ariaAutocomplete,\n 'aria-owns': ariaOwns,\n 'aria-activedescendant': ariaActivedescendant,\n } = this.asProps;\n\n return {\n 'ref': this.inputRef,\n size,\n disabled,\n state,\n role,\n placeholder,\n 'aria-haspopup': ariaHaspopup,\n 'aria-controls': ariaControls,\n 'aria-expanded': ariaExpanded,\n 'aria-autocomplete': ariaAutocomplete,\n 'aria-owns': ariaOwns,\n 'aria-activedescendant': ariaActivedescendant,\n };\n }\n\n render() {\n const SInput = Root;\n const SOutline = 'div';\n const { Children, styles, neighborLocation, controlsLength, state } = this.asProps;\n return (\n <NeighborLocation.Detect neighborLocation={neighborLocation}>\n {(neighborLocation) =>\n sstyled(styles)(\n <SInput\n render={Box}\n neighborLocation={neighborLocation}\n __excludeProps={[\n 'role',\n 'aria-haspopup',\n 'aria-controls',\n 'aria-expanded',\n 'placeholder',\n 'aria-autocomplete',\n 'aria-owns',\n 'aria-activedescendant',\n 'tabIndex',\n ]}\n >\n <NeighborLocation controlsLength={controlsLength}>\n <Children />\n </NeighborLocation>\n <SOutline>{state === 'invalid' && <InvalidStateBox />}</SOutline>\n </SInput>,\n )}\n </NeighborLocation.Detect>\n );\n }\n}\n\nclass Value extends Component {\n static defaultProps = {\n defaultValue: '',\n };\n\n uncontrolledProps() {\n return {\n value: (e) => e.target.value,\n };\n }\n\n render() {\n const SValue = Root;\n const { styles, neighborLocation, state } = this.asProps;\n\n return (\n <NeighborLocation.Detect neighborLocation={neighborLocation}>\n {(neighborLocation) =>\n sstyled(styles)(\n <SValue\n render={Box}\n inAfterOutline\n neighborLocation={neighborLocation}\n tag='input'\n type='text'\n aria-invalid={state === 'invalid'}\n />,\n )}\n </NeighborLocation.Detect>\n );\n }\n}\n\nfunction Addon(props) {\n const SAddon = Root;\n const { Children, styles, neighborLocation } = props;\n return (\n <NeighborLocation.Detect neighborLocation={neighborLocation}>\n {(neighborLocation) =>\n sstyled(styles)(\n <SAddon render={Box} neighborLocation={neighborLocation}>\n <Children />\n </SAddon>,\n )}\n </NeighborLocation.Detect>\n );\n}\n\nexport default createComponent(Input, {\n Addon,\n Value,\n});\n"],"mappings":"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","ignoreList":[]}
|
package/lib/cjs/index.d.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.js","names":[],"sources":["../../src/index.d.ts"],"sourcesContent":["import type {
|
|
1
|
+
{"version":3,"file":"index.d.js","names":[],"sources":["../../src/index.d.ts"],"sourcesContent":["import type { BoxProps, NeighborItemProps, NeighborLocationProps } from '@semcore/base-components';\nimport type { Intergalactic, PropGetterFn } from '@semcore/core';\nimport type React from 'react';\n\nexport type InputSize = 'm' | 'l';\n\nexport type InputProps = BoxProps &\n NeighborItemProps &\n NeighborLocationProps & {\n /**\n * Sets the input and addons to the disabled state\n * */\n disabled?: boolean;\n /**\n * Input size\n * @default m\n */\n size?: InputSize;\n /**\n * Sets the input state\n * @default normal\n */\n state?: 'normal' | 'invalid' | 'valid';\n };\n\nexport type InputValueProps = BoxProps &\n NeighborItemProps & {\n /**\n * Input value\n */\n value?: string;\n /**\n * Default value if `value` property is not provided\n */\n defaultValue?: string;\n /**\n * Handler for changing the value\n */\n onChange?: (value: string, event: React.SyntheticEvent<HTMLInputElement>) => void;\n /**\n * Sets the input to the read-only state\n * */\n readOnly?: boolean;\n /**\n * Input size\n * @default m\n */\n size?: InputSize;\n /**\n * Placeholder for input\n */\n placeholder?: string;\n /**\n * Flag to enable autofocusing after component mounting\n * @default false\n */\n autoFocus?: boolean;\n };\n\nexport type InputAddonProps = BoxProps &\n NeighborItemProps & {\n /**\n * Adds styles for interactive icons\n */\n interactive?: boolean;\n /**\n * Blocks the addon\n * */\n disabled?: boolean;\n /**\n * Input size\n * @default m\n */\n size?: InputSize;\n };\n\nexport type InputCtx = {\n getValueProps: PropGetterFn;\n getAddonProps: PropGetterFn;\n};\n\ndeclare const Input: Intergalactic.Component<'div', InputProps, InputCtx> & {\n Value: Intergalactic.Component<'input', InputValueProps>;\n Addon: Intergalactic.Component<'div', InputAddonProps>;\n};\nexport default Input;\n"],"mappings":"","ignoreList":[]}
|
package/lib/cjs/index.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
4
|
Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
7
|
Object.defineProperty(exports, "default", {
|
|
8
8
|
enumerable: true,
|
|
9
|
-
get: function
|
|
10
|
-
return _Input
|
|
9
|
+
get: function () {
|
|
10
|
+
return _Input.default;
|
|
11
11
|
}
|
|
12
12
|
});
|
|
13
13
|
var _Input = _interopRequireDefault(require("./Input"));
|
|
@@ -105,10 +105,14 @@ SAddon[size='m']:not(SButton) {
|
|
|
105
105
|
padding: 0 var(--intergalactic-spacing-2x, 8px);
|
|
106
106
|
}
|
|
107
107
|
|
|
108
|
-
SAddon[size='l']:not(SButton) {
|
|
108
|
+
SAddon[size='l'][neighborLocation='right']:not(SButton) {
|
|
109
109
|
padding: 0 var(--intergalactic-spacing-2x, 8px) 0 var(--intergalactic-spacing-3x, 12px);
|
|
110
110
|
}
|
|
111
111
|
|
|
112
|
+
SAddon[size='l'][neighborLocation='left']:not(SButton) {
|
|
113
|
+
padding: 0 var(--intergalactic-spacing-3x, 12px) 0 var(--intergalactic-spacing-2x, 8px);
|
|
114
|
+
}
|
|
115
|
+
|
|
112
116
|
SInput SAddon:nth-last-child(2) {
|
|
113
117
|
margin-right: -1px;
|
|
114
118
|
}
|