@semcore/input 17.0.0-prerelease.27 → 17.0.0-prerelease.30

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 CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  CHANGELOG.md standards are inspired by [keepachangelog.com](https://keepachangelog.com/en/1.0.0/).
4
4
 
5
- ## [17.0.0] - 2026-02-23
5
+ ## [17.0.0] - 2026-03-09
6
6
 
7
7
  ### BREAK
8
8
 
package/lib/cjs/Input.js CHANGED
@@ -121,6 +121,17 @@ class Input extends _core.Component {
121
121
  });
122
122
  (0, _defineProperty2.default)(Input, "style", style);
123
123
  class Value extends _core.Component {
124
+ constructor(...args) {
125
+ super(...args);
126
+ (0, _defineProperty2.default)(this, "inputRef", /*#__PURE__*/_react.default.createRef());
127
+ }
128
+ componentDidMount() {
129
+ if (this.asProps.autoFocus) {
130
+ setTimeout(() => {
131
+ this.inputRef.current?.focus();
132
+ });
133
+ }
134
+ }
124
135
  uncontrolledProps() {
125
136
  return {
126
137
  value: e => e.target.value
@@ -140,11 +151,13 @@ class Value extends _core.Component {
140
151
  var _ref5;
141
152
  return _ref5 = (0, _core.sstyled)(styles), /*#__PURE__*/_react.default.createElement(SValue, _ref5.cn("SValue", {
142
153
  ...(0, _core.assignProps)({
154
+ "ref": this.inputRef,
143
155
  "inAfterOutline": true,
144
156
  "neighborLocation": neighborLocation,
145
157
  "tag": 'input',
146
158
  "type": 'text',
147
- "aria-invalid": state === 'invalid'
159
+ "aria-invalid": state === 'invalid',
160
+ "use:autoFocus": false
148
161
  }, _ref2)
149
162
  }));
150
163
  });
@@ -1 +1 @@
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":[]}
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","componentDidMount","autoFocus","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 inputRef = React.createRef();\n\n componentDidMount() {\n if (this.asProps.autoFocus) {\n setTimeout(() => {\n this.inputRef.current?.focus();\n });\n }\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 ref={this.inputRef}\n render={Box}\n inAfterOutline\n neighborLocation={neighborLocation}\n tag='input'\n type='text'\n aria-invalid={state === 'invalid'}\n use:autoFocus={false}\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/es6/Input.js CHANGED
@@ -118,6 +118,17 @@ _defineProperty(Input, "defaultProps", {
118
118
  });
119
119
  _defineProperty(Input, "style", style);
120
120
  class Value extends Component {
121
+ constructor(...args) {
122
+ super(...args);
123
+ _defineProperty(this, "inputRef", /*#__PURE__*/React.createRef());
124
+ }
125
+ componentDidMount() {
126
+ if (this.asProps.autoFocus) {
127
+ setTimeout(() => {
128
+ this.inputRef.current?.focus();
129
+ });
130
+ }
131
+ }
121
132
  uncontrolledProps() {
122
133
  return {
123
134
  value: e => e.target.value
@@ -137,11 +148,13 @@ class Value extends Component {
137
148
  var _ref5;
138
149
  return _ref5 = sstyled(styles), /*#__PURE__*/React.createElement(SValue, _ref5.cn("SValue", {
139
150
  ..._assignProps2({
151
+ "ref": this.inputRef,
140
152
  "inAfterOutline": true,
141
153
  "neighborLocation": neighborLocation,
142
154
  "tag": 'input',
143
155
  "type": 'text',
144
- "aria-invalid": state === 'invalid'
156
+ "aria-invalid": state === 'invalid',
157
+ "use:autoFocus": false
145
158
  }, _ref2)
146
159
  }));
147
160
  });
@@ -1 +1 @@
1
- {"version":3,"file":"Input.js","names":["NeighborLocation","Box","InvalidStateBox","createComponent","Component","sstyled","Root","lastInteraction","React","style","_sstyled","insert","Input","constructor","args","_defineProperty","createRef","event","preventDefault","inputRef","current","focus","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","SOutline","Children","styles","neighborLocation","controlsLength","createElement","Detect","_ref4","cn","_assignProps","Value","uncontrolledProps","value","e","target","_ref2","SValue","_ref5","_assignProps2","defaultValue","Addon","props","_ref3","arguments[0]","SAddon","_ref6","_assignProps3"],"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":[]}
1
+ {"version":3,"file":"Input.js","names":["NeighborLocation","Box","InvalidStateBox","createComponent","Component","sstyled","Root","lastInteraction","React","style","_sstyled","insert","Input","constructor","args","_defineProperty","createRef","event","preventDefault","inputRef","current","focus","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","SOutline","Children","styles","neighborLocation","controlsLength","createElement","Detect","_ref4","cn","_assignProps","Value","componentDidMount","autoFocus","uncontrolledProps","value","e","target","_ref2","SValue","_ref5","_assignProps2","defaultValue","Addon","props","_ref3","arguments[0]","SAddon","_ref6","_assignProps3"],"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 inputRef = React.createRef();\n\n componentDidMount() {\n if (this.asProps.autoFocus) {\n setTimeout(() => {\n this.inputRef.current?.focus();\n });\n }\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 ref={this.inputRef}\n render={Box}\n inAfterOutline\n neighborLocation={neighborLocation}\n tag='input'\n type='text'\n aria-invalid={state === 'invalid'}\n use:autoFocus={false}\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/esm/Input.mjs CHANGED
@@ -123,6 +123,18 @@ _defineProperty(Input, "defaultProps", {
123
123
  });
124
124
  _defineProperty(Input, "style", style);
125
125
  class Value extends Component {
126
+ constructor(...args) {
127
+ super(...args);
128
+ _defineProperty(this, "inputRef", /* @__PURE__ */ React.createRef());
129
+ }
130
+ componentDidMount() {
131
+ if (this.asProps.autoFocus) {
132
+ setTimeout(() => {
133
+ var _a;
134
+ (_a = this.inputRef.current) == null ? void 0 : _a.focus();
135
+ });
136
+ }
137
+ }
126
138
  uncontrolledProps() {
127
139
  return {
128
140
  value: (e) => e.target.value
@@ -142,11 +154,13 @@ class Value extends Component {
142
154
  var _ref5;
143
155
  return _ref5 = sstyled(styles), /* @__PURE__ */ React.createElement(SValue, _ref5.cn("SValue", {
144
156
  ...assignProps({
157
+ "ref": this.inputRef,
145
158
  "inAfterOutline": true,
146
159
  "neighborLocation": neighborLocation2,
147
160
  "tag": "input",
148
161
  "type": "text",
149
- "aria-invalid": state === "invalid"
162
+ "aria-invalid": state === "invalid",
163
+ "use:autoFocus": false
150
164
  }, _ref2)
151
165
  }));
152
166
  });
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@semcore/input",
3
3
  "description": "Semrush Input Component",
4
- "version": "17.0.0-prerelease.27",
4
+ "version": "17.0.0-prerelease.30",
5
5
  "main": "lib/cjs/index.js",
6
6
  "module": "lib/es6/index.js",
7
7
  "typings": "lib/types/index.d.ts",
@@ -22,10 +22,10 @@
22
22
  "directory": "semcore/input"
23
23
  },
24
24
  "devDependencies": {
25
- "@semcore/core": "17.0.0-prerelease.27",
26
- "@semcore/base-components": "17.0.0-prerelease.27",
27
- "@semcore/testing-utils": "1.0.0",
28
- "@semcore/icon": "16.7.2-prerelease.27"
25
+ "@semcore/core": "17.0.0-prerelease.30",
26
+ "@semcore/base-components": "17.0.0-prerelease.30",
27
+ "@semcore/icon": "16.7.2-prerelease.30",
28
+ "@semcore/testing-utils": "1.0.0"
29
29
  },
30
30
  "scripts": {
31
31
  "build": "pnpm semcore-builder --source=js && pnpm vite build"