@semcore/input-number 4.2.1 → 4.3.0
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/lib/cjs/InputNumber.js +34 -23
- package/lib/cjs/InputNumber.js.map +1 -1
- package/lib/cjs/index.d.js.map +1 -1
- package/lib/cjs/translations/__intergalactic-dynamic-locales.js +46 -0
- package/lib/cjs/translations/__intergalactic-dynamic-locales.js.map +1 -0
- package/lib/cjs/translations/de.json +4 -0
- package/lib/cjs/translations/en.json +4 -0
- package/lib/cjs/translations/es.json +4 -0
- package/lib/cjs/translations/fr.json +4 -0
- package/lib/cjs/translations/it.json +4 -0
- package/lib/cjs/translations/ja.json +4 -0
- package/lib/cjs/translations/ko.json +4 -0
- package/lib/cjs/translations/pt.json +4 -0
- package/lib/cjs/translations/tr.json +4 -0
- package/lib/cjs/translations/vi.json +4 -0
- package/lib/cjs/translations/zh.json +4 -0
- package/lib/es6/InputNumber.js +33 -23
- package/lib/es6/InputNumber.js.map +1 -1
- package/lib/es6/index.d.js.map +1 -1
- package/lib/es6/translations/__intergalactic-dynamic-locales.js +25 -0
- package/lib/es6/translations/__intergalactic-dynamic-locales.js.map +1 -0
- package/lib/es6/translations/de.json +4 -0
- package/lib/es6/translations/en.json +4 -0
- package/lib/es6/translations/es.json +4 -0
- package/lib/es6/translations/fr.json +4 -0
- package/lib/es6/translations/it.json +4 -0
- package/lib/es6/translations/ja.json +4 -0
- package/lib/es6/translations/ko.json +4 -0
- package/lib/es6/translations/pt.json +4 -0
- package/lib/es6/translations/tr.json +4 -0
- package/lib/es6/translations/vi.json +4 -0
- package/lib/es6/translations/zh.json +4 -0
- package/lib/types/index.d.ts +1 -0
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
package/lib/cjs/InputNumber.js
CHANGED
|
@@ -31,6 +31,10 @@ var _input = _interopRequireDefault(require("@semcore/input"));
|
|
|
31
31
|
|
|
32
32
|
var _buttons = _interopRequireDefault(require("./buttons"));
|
|
33
33
|
|
|
34
|
+
var _intergalacticDynamicLocales = require("./translations/__intergalactic-dynamic-locales");
|
|
35
|
+
|
|
36
|
+
var _i18nEnhance = _interopRequireDefault(require("@semcore/utils/lib/enhances/i18nEnhance"));
|
|
37
|
+
|
|
34
38
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
35
39
|
|
|
36
40
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
@@ -48,20 +52,20 @@ var style = (
|
|
|
48
52
|
/*__reshadow_css_start__*/
|
|
49
53
|
_core.sstyled.insert(
|
|
50
54
|
/*__inner_css_start__*/
|
|
51
|
-
".
|
|
55
|
+
".___SInputNumber_e3dxg_gg_:hover .___SValue_e3dxg_gg_:not(.__disabled_e3dxg_gg_)~.___SControls_e3dxg_gg_{visibility:visible}.___SValue_e3dxg_gg_:focus~.___SControls_e3dxg_gg_{visibility:visible}.___SControls_e3dxg_gg_{display:flex;flex-flow:column;justify-content:center;height:100%;visibility:hidden;box-sizing:border-box}.___SControls_e3dxg_gg_.__showControls_e3dxg_gg_{visibility:visible}.___SDown_e3dxg_gg_,.___SUp_e3dxg_gg_{padding:0;width:16px;color:var(--intergalactic-icon-secondary-neutral,#a9abb6);box-sizing:border-box;display:inline-flex;justify-content:center;border:none;background:none;cursor:pointer}.___SDown_e3dxg_gg_:focus,.___SUp_e3dxg_gg_:focus{outline:none}.___SDown_e3dxg_gg_:hover,.___SUp_e3dxg_gg_:hover{color:var(--intergalactic-icon-secondary-neutral-hover-active,#8a8e9b)}.___SUp_e3dxg_gg_{padding-bottom:1px}.___SDown_e3dxg_gg_{padding-top:1px}.___SValue_e3dxg_gg_::-webkit-inner-spin-button,.___SValue_e3dxg_gg_::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.___SValue_e3dxg_gg_._type_number_e3dxg_gg_{-moz-appearance:textfield}.___SValue_e3dxg_gg_.__disabled_e3dxg_gg_~.___SControls_e3dxg_gg_{opacity:var(--intergalactic-disabled-opacity,.3);cursor:default;pointer-events:none}.___SValueHidden_e3dxg_gg_{position:absolute;top:0;width:1px;height:1px;padding:0;overflow:hidden}"
|
|
52
56
|
/*__inner_css_end__*/
|
|
53
|
-
, "
|
|
57
|
+
, "e3dxg_gg_")
|
|
54
58
|
/*__reshadow_css_end__*/
|
|
55
59
|
, {
|
|
56
|
-
"__SInputNumber": "
|
|
57
|
-
"__SValue": "
|
|
58
|
-
"_disabled": "
|
|
59
|
-
"__SControls": "
|
|
60
|
-
"_showControls": "
|
|
61
|
-
"__SDown": "
|
|
62
|
-
"__SUp": "
|
|
63
|
-
"_type_number": "
|
|
64
|
-
"__SValueHidden": "
|
|
60
|
+
"__SInputNumber": "___SInputNumber_e3dxg_gg_",
|
|
61
|
+
"__SValue": "___SValue_e3dxg_gg_",
|
|
62
|
+
"_disabled": "__disabled_e3dxg_gg_",
|
|
63
|
+
"__SControls": "___SControls_e3dxg_gg_",
|
|
64
|
+
"_showControls": "__showControls_e3dxg_gg_",
|
|
65
|
+
"__SDown": "___SDown_e3dxg_gg_",
|
|
66
|
+
"__SUp": "___SUp_e3dxg_gg_",
|
|
67
|
+
"_type_number": "_type_number_e3dxg_gg_",
|
|
68
|
+
"__SValueHidden": "___SValueHidden_e3dxg_gg_"
|
|
65
69
|
});
|
|
66
70
|
|
|
67
71
|
function parseValueWithMinMax(value) {
|
|
@@ -123,11 +127,14 @@ var InputNumber = /*#__PURE__*/function (_Component) {
|
|
|
123
127
|
}, {
|
|
124
128
|
key: "getControlsProps",
|
|
125
129
|
value: function getControlsProps() {
|
|
126
|
-
var
|
|
130
|
+
var _this$asProps = this.asProps,
|
|
131
|
+
size = _this$asProps.size,
|
|
132
|
+
getI18nText = _this$asProps.getI18nText;
|
|
127
133
|
return {
|
|
128
134
|
size: size,
|
|
129
135
|
inc: this.handlerInc,
|
|
130
|
-
dec: this.handlerDec
|
|
136
|
+
dec: this.handlerDec,
|
|
137
|
+
getI18nText: getI18nText
|
|
131
138
|
};
|
|
132
139
|
}
|
|
133
140
|
}, {
|
|
@@ -145,8 +152,11 @@ var InputNumber = /*#__PURE__*/function (_Component) {
|
|
|
145
152
|
|
|
146
153
|
(0, _defineProperty2["default"])(InputNumber, "displayName", 'InputNumber');
|
|
147
154
|
(0, _defineProperty2["default"])(InputNumber, "style", style);
|
|
155
|
+
(0, _defineProperty2["default"])(InputNumber, "enhance", [(0, _i18nEnhance["default"])(_intergalacticDynamicLocales.localizedMessages)]);
|
|
148
156
|
(0, _defineProperty2["default"])(InputNumber, "defaultProps", {
|
|
149
|
-
size: 'm'
|
|
157
|
+
size: 'm',
|
|
158
|
+
i18n: _intergalacticDynamicLocales.localizedMessages,
|
|
159
|
+
locale: 'en'
|
|
150
160
|
});
|
|
151
161
|
|
|
152
162
|
var Value = /*#__PURE__*/function (_Component2) {
|
|
@@ -218,12 +228,12 @@ var Value = /*#__PURE__*/function (_Component2) {
|
|
|
218
228
|
|
|
219
229
|
var SValue = _input["default"].Value;
|
|
220
230
|
var SValueHidden = 'div';
|
|
221
|
-
var _this$
|
|
222
|
-
styles = _this$
|
|
223
|
-
$inputHandlers = _this$
|
|
224
|
-
value = _this$
|
|
225
|
-
min = _this$
|
|
226
|
-
max = _this$
|
|
231
|
+
var _this$asProps2 = this.asProps,
|
|
232
|
+
styles = _this$asProps2.styles,
|
|
233
|
+
$inputHandlers = _this$asProps2.$inputHandlers,
|
|
234
|
+
value = _this$asProps2.value,
|
|
235
|
+
min = _this$asProps2.min,
|
|
236
|
+
max = _this$asProps2.max; // 🐒 не делайте так
|
|
227
237
|
|
|
228
238
|
$inputHandlers.current = this.handlers;
|
|
229
239
|
return _ref5 = (0, _core.sstyled)(styles), /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(SValue, _ref5.cn("SValue", _objectSpread({}, (0, _core.assignProps)({
|
|
@@ -256,7 +266,8 @@ function Controls(props) {
|
|
|
256
266
|
inc = props.inc,
|
|
257
267
|
dec = props.dec,
|
|
258
268
|
size = props.size,
|
|
259
|
-
styles = props.styles
|
|
269
|
+
styles = props.styles,
|
|
270
|
+
getI18nText = props.getI18nText;
|
|
260
271
|
var SControls = _input["default"].Addon;
|
|
261
272
|
var SUp = 'button';
|
|
262
273
|
var SDown = 'button';
|
|
@@ -265,13 +276,13 @@ function Controls(props) {
|
|
|
265
276
|
"tabIndex": -1,
|
|
266
277
|
"type": "button",
|
|
267
278
|
"size": size,
|
|
268
|
-
"aria-label":
|
|
279
|
+
"aria-label": getI18nText('increment')
|
|
269
280
|
}), /*#__PURE__*/_react["default"].createElement(IconUp, _ref6.cn("IconUp", {}))), /*#__PURE__*/_react["default"].createElement(SDown, _ref6.cn("SDown", {
|
|
270
281
|
"onClick": dec,
|
|
271
282
|
"tabIndex": -1,
|
|
272
283
|
"type": "button",
|
|
273
284
|
"size": size,
|
|
274
|
-
"aria-label":
|
|
285
|
+
"aria-label": getI18nText('decrement')
|
|
275
286
|
}), /*#__PURE__*/_react["default"].createElement(IconDown, _ref6.cn("IconDown", {}))), /*#__PURE__*/_react["default"].createElement(Children, _ref6.cn("Children", {})));
|
|
276
287
|
}
|
|
277
288
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InputNumber.js","names":["parseValueWithMinMax","value","min","Number","MIN_SAFE_INTEGER","max","MAX_SAFE_INTEGER","Math","IconUp","BUTTONS","up","IconDown","down","InputNumber","React","createRef","e","inputRef","current","stepUp","inputHandlersRef","stepDown","ref","$inputHandlers","size","asProps","inc","handlerInc","dec","handlerDec","SInputNumber","Input","sstyled","style","Component","Value","step","roundCoefficient","toString","split","length","isNaN","currentTarget","valueAsNumber","handlers","numberValue","parseFloat","r","roundRemainder","abs","numberValueRounded","toFixed","String","countDecimals","floor","toPrecision","SValue","SValueHidden","styles","handleValidation","defaultValue","Controls","props","Children","SControls","Addon","SUp","SDown","createComponent"],"sources":["../../src/InputNumber.jsx"],"sourcesContent":["import React from 'react';\nimport createComponent, { Component, sstyled, Root } from '@semcore/core';\nimport Input from '@semcore/input';\nimport BUTTONS from './buttons';\n\nimport style from './style/input-number.shadow.css';\n\nfunction parseValueWithMinMax(value, min = Number.MIN_SAFE_INTEGER, max = Number.MAX_SAFE_INTEGER) {\n return Math.max(min, Math.min(max, value));\n}\n\nconst IconUp = () => BUTTONS.up;\nconst IconDown = () => BUTTONS.down;\n\nclass InputNumber extends Component {\n static displayName = 'InputNumber';\n static style = style;\n static defaultProps = {\n size: 'm',\n };\n\n inputRef = React.createRef();\n inputHandlersRef = React.createRef();\n\n handlerInc = (e) => {\n // TODO: IE11 dont work\n this.inputRef.current?.stepUp && this.inputRef.current?.stepUp();\n this.inputHandlersRef.current?.value(this.inputRef.current.value, e);\n };\n\n handlerDec = (e) => {\n // TODO: IE11 dont work\n this.inputRef.current?.stepDown && this.inputRef.current?.stepDown();\n this.inputHandlersRef.current?.value(this.inputRef.current.value, e);\n };\n\n getValueProps() {\n return {\n ref: this.inputRef,\n $inputHandlers: this.inputHandlersRef,\n };\n }\n\n getControlsProps() {\n const { size } = this.asProps;\n return {\n size,\n inc: this.handlerInc,\n dec: this.handlerDec,\n };\n }\n\n render() {\n const SInputNumber = Root;\n return sstyled(this.asProps.style)(<SInputNumber render={Input} />);\n }\n}\n\nclass Value extends Component {\n static defaultProps = {\n defaultValue: '',\n step: 1,\n };\n\n uncontrolledProps() {\n return {\n value: null,\n };\n }\n\n roundRemainder(value, step) {\n const countDecimals = Math.floor(step) === step ? 0 : step.toString().split('.')[1].length || 0;\n return countDecimals === 0\n ? Number.parseFloat(value)\n : Number.parseFloat(value).toPrecision(countDecimals);\n }\n\n handleValidation = (e) => {\n const { value, min, max, step } = this.asProps;\n const roundCoefficient = step < 1 ? step.toString().split('.')[1].length : 1;\n if (Number.isNaN(e.currentTarget.valueAsNumber)) {\n e.currentTarget.value = '';\n this.handlers.value('', e);\n } else {\n let numberValue = parseValueWithMinMax(Number.parseFloat(value), min, max);\n const r = this.roundRemainder(numberValue % step, step);\n if (r !== 0) {\n if (r >= step / 2) {\n numberValue += step - r;\n } else if (Math.abs(r) < step) {\n numberValue -= r;\n }\n }\n const numberValueRounded = Number(numberValue.toFixed(roundCoefficient));\n this.handlers.value(String(numberValueRounded), e);\n }\n };\n\n render() {\n const SValue = Root;\n const SValueHidden = 'div';\n const { styles, $inputHandlers, value, min, max } = this.asProps;\n\n // 🐒 не делайте так\n $inputHandlers.current = this.handlers;\n\n return sstyled(styles)(\n <>\n <SValue\n render={Input.Value}\n type=\"number\"\n autoComplete=\"off\"\n onBlur={this.handleValidation}\n onInvalid={this.handleValidation}\n aria-valuenow={value}\n aria-valuemin={min}\n aria-valuemax={max}\n />\n {/* the next hidden div is necessary for the screen reader to report the value \n in the input, because after validation the value can change to the `min` or `max` \n if entered less than `min` or more than `max` */}\n <SValueHidden aria-live=\"polite\" aria-atomic={true}>\n {value}\n </SValueHidden>\n </>,\n );\n }\n}\n\nfunction Controls(props) {\n const { Children, inc, dec, size, styles } = props;\n const SControls = Root;\n const SUp = 'button';\n const SDown = 'button';\n\n return sstyled(styles)(\n <SControls render={Input.Addon}>\n <SUp onClick={inc} tabIndex={-1} type=\"button\" size={size} aria-label=\"Increment number\">\n <IconUp />\n </SUp>\n <SDown onClick={dec} tabIndex={-1} type=\"button\" size={size} aria-label=\"Decrement number\">\n <IconDown />\n </SDown>\n <Children />\n </SControls>,\n );\n}\n\nexport default createComponent(InputNumber, {\n Value,\n Controls,\n Addon: Input.Addon,\n});\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"InputNumber.js","names":["parseValueWithMinMax","value","min","Number","MIN_SAFE_INTEGER","max","MAX_SAFE_INTEGER","Math","IconUp","BUTTONS","up","IconDown","down","InputNumber","React","createRef","e","inputRef","current","stepUp","inputHandlersRef","stepDown","ref","$inputHandlers","asProps","size","getI18nText","inc","handlerInc","dec","handlerDec","SInputNumber","Input","sstyled","style","Component","i18nEnhance","localizedMessages","i18n","locale","Value","step","roundCoefficient","toString","split","length","isNaN","currentTarget","valueAsNumber","handlers","numberValue","parseFloat","r","roundRemainder","abs","numberValueRounded","toFixed","String","countDecimals","floor","toPrecision","SValue","SValueHidden","styles","handleValidation","defaultValue","Controls","props","Children","SControls","Addon","SUp","SDown","createComponent"],"sources":["../../src/InputNumber.jsx"],"sourcesContent":["import React from 'react';\nimport createComponent, { Component, sstyled, Root } from '@semcore/core';\nimport Input from '@semcore/input';\nimport BUTTONS from './buttons';\nimport { localizedMessages } from './translations/__intergalactic-dynamic-locales';\nimport i18nEnhance from '@semcore/utils/lib/enhances/i18nEnhance';\n\nimport style from './style/input-number.shadow.css';\n\nfunction parseValueWithMinMax(value, min = Number.MIN_SAFE_INTEGER, max = Number.MAX_SAFE_INTEGER) {\n return Math.max(min, Math.min(max, value));\n}\n\nconst IconUp = () => BUTTONS.up;\nconst IconDown = () => BUTTONS.down;\n\nclass InputNumber extends Component {\n static displayName = 'InputNumber';\n static style = style;\n static enhance = [i18nEnhance(localizedMessages)];\n static defaultProps = {\n size: 'm',\n i18n: localizedMessages,\n locale: 'en',\n };\n\n inputRef = React.createRef();\n inputHandlersRef = React.createRef();\n\n handlerInc = (e) => {\n // TODO: IE11 dont work\n this.inputRef.current?.stepUp && this.inputRef.current?.stepUp();\n this.inputHandlersRef.current?.value(this.inputRef.current.value, e);\n };\n\n handlerDec = (e) => {\n // TODO: IE11 dont work\n this.inputRef.current?.stepDown && this.inputRef.current?.stepDown();\n this.inputHandlersRef.current?.value(this.inputRef.current.value, e);\n };\n\n getValueProps() {\n return {\n ref: this.inputRef,\n $inputHandlers: this.inputHandlersRef,\n };\n }\n\n getControlsProps() {\n const { size, getI18nText } = this.asProps;\n return {\n size,\n inc: this.handlerInc,\n dec: this.handlerDec,\n getI18nText,\n };\n }\n\n render() {\n const SInputNumber = Root;\n return sstyled(this.asProps.style)(<SInputNumber render={Input} />);\n }\n}\n\nclass Value extends Component {\n static defaultProps = {\n defaultValue: '',\n step: 1,\n };\n\n uncontrolledProps() {\n return {\n value: null,\n };\n }\n\n roundRemainder(value, step) {\n const countDecimals = Math.floor(step) === step ? 0 : step.toString().split('.')[1].length || 0;\n return countDecimals === 0\n ? Number.parseFloat(value)\n : Number.parseFloat(value).toPrecision(countDecimals);\n }\n\n handleValidation = (e) => {\n const { value, min, max, step } = this.asProps;\n const roundCoefficient = step < 1 ? step.toString().split('.')[1].length : 1;\n if (Number.isNaN(e.currentTarget.valueAsNumber)) {\n e.currentTarget.value = '';\n this.handlers.value('', e);\n } else {\n let numberValue = parseValueWithMinMax(Number.parseFloat(value), min, max);\n const r = this.roundRemainder(numberValue % step, step);\n if (r !== 0) {\n if (r >= step / 2) {\n numberValue += step - r;\n } else if (Math.abs(r) < step) {\n numberValue -= r;\n }\n }\n const numberValueRounded = Number(numberValue.toFixed(roundCoefficient));\n this.handlers.value(String(numberValueRounded), e);\n }\n };\n\n render() {\n const SValue = Root;\n const SValueHidden = 'div';\n const { styles, $inputHandlers, value, min, max } = this.asProps;\n\n // 🐒 не делайте так\n $inputHandlers.current = this.handlers;\n\n return sstyled(styles)(\n <>\n <SValue\n render={Input.Value}\n type=\"number\"\n autoComplete=\"off\"\n onBlur={this.handleValidation}\n onInvalid={this.handleValidation}\n aria-valuenow={value}\n aria-valuemin={min}\n aria-valuemax={max}\n />\n {/* the next hidden div is necessary for the screen reader to report the value \n in the input, because after validation the value can change to the `min` or `max` \n if entered less than `min` or more than `max` */}\n <SValueHidden aria-live=\"polite\" aria-atomic={true}>\n {value}\n </SValueHidden>\n </>,\n );\n }\n}\n\nfunction Controls(props) {\n const { Children, inc, dec, size, styles, getI18nText } = props;\n const SControls = Root;\n const SUp = 'button';\n const SDown = 'button';\n\n return sstyled(styles)(\n <SControls render={Input.Addon}>\n <SUp\n onClick={inc}\n tabIndex={-1}\n type=\"button\"\n size={size}\n aria-label={getI18nText('increment')}\n >\n <IconUp />\n </SUp>\n <SDown\n onClick={dec}\n tabIndex={-1}\n type=\"button\"\n size={size}\n aria-label={getI18nText('decrement')}\n >\n <IconDown />\n </SDown>\n <Children />\n </SControls>,\n );\n}\n\nexport default createComponent(InputNumber, {\n Value,\n Controls,\n Addon: Input.Addon,\n});\n"],"mappings":"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"}
|
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 React from 'react';\nimport { CProps, PropGetterFn, ReturnEl } from '@semcore/core';\nimport { IInputAddonProps, IInputProps, IInputValueProps } from '@semcore/input';\n\nexport type InputNumberValue = string;\nexport type InputNumberSize = 'm' | 'l';\n\nexport interface IInputNumberProps extends IInputProps {\n /** Input size\n * @default m\n * */\n size?: InputNumberSize;\n}\n\nexport interface IInputNumberValueProps extends IInputValueProps {\n /** Minimum value\n * @default Number.MIN_SAFE_INTEGER\n */\n min?: number;\n /** Maximum value\n * @default Number.MAX_SAFE_INTEGER\n */\n max?: number;\n /** Value change step\n * @default 1\n */\n step?: number;\n /** Numeric value */\n value?: InputNumberValue;\n /** Called when the input value changes, it returns its current value in numeric format */\n onChange?: (value: InputNumberValue, event?: React.SyntheticEvent<HTMLInputElement>) => void;\n}\n\nexport interface IInputNumberControlsProps extends IInputAddonProps {\n /** Always displays controls (steppers)\n * @default false\n */\n showControls?: boolean;\n}\n\nexport interface IInputNumberCtx {\n getValueProps: PropGetterFn;\n getControlsProps: PropGetterFn;\n getAddonProps: PropGetterFn;\n}\n\ndeclare const InputNumber: (<T>(\n props: CProps<IInputNumberProps & T, IInputNumberCtx>,\n) => ReturnEl) & {\n Value: <T>(props: IInputNumberValueProps & T) => ReturnEl;\n Controls: <T>(props: IInputNumberControlsProps & T) => ReturnEl;\n Addon: <T>(props: IInputAddonProps & T) => ReturnEl;\n};\n\nexport default InputNumber;\n"],"mappings":""}
|
|
1
|
+
{"version":3,"file":"index.d.js","names":[],"sources":["../../src/index.d.ts"],"sourcesContent":["import React from 'react';\nimport { CProps, PropGetterFn, ReturnEl } from '@semcore/core';\nimport { IInputAddonProps, IInputProps, IInputValueProps } from '@semcore/input';\n\nexport type InputNumberValue = string;\nexport type InputNumberSize = 'm' | 'l';\n\nexport interface IInputNumberProps extends IInputProps {\n /** Input size\n * @default m\n * */\n size?: InputNumberSize;\n}\n\nexport interface IInputNumberValueProps extends IInputValueProps {\n /** Minimum value\n * @default Number.MIN_SAFE_INTEGER\n */\n min?: number;\n /** Maximum value\n * @default Number.MAX_SAFE_INTEGER\n */\n max?: number;\n /** Value change step\n * @default 1\n */\n step?: number;\n /** Numeric value */\n value?: InputNumberValue;\n /** Called when the input value changes, it returns its current value in numeric format */\n onChange?: (value: InputNumberValue, event?: React.SyntheticEvent<HTMLInputElement>) => void;\n locale?: string;\n}\n\nexport interface IInputNumberControlsProps extends IInputAddonProps {\n /** Always displays controls (steppers)\n * @default false\n */\n showControls?: boolean;\n}\n\nexport interface IInputNumberCtx {\n getValueProps: PropGetterFn;\n getControlsProps: PropGetterFn;\n getAddonProps: PropGetterFn;\n}\n\ndeclare const InputNumber: (<T>(\n props: CProps<IInputNumberProps & T, IInputNumberCtx>,\n) => ReturnEl) & {\n Value: <T>(props: IInputNumberValueProps & T) => ReturnEl;\n Controls: <T>(props: IInputNumberControlsProps & T) => ReturnEl;\n Addon: <T>(props: IInputAddonProps & T) => ReturnEl;\n};\n\nexport default InputNumber;\n"],"mappings":""}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.localizedMessages = void 0;
|
|
9
|
+
|
|
10
|
+
var _de = _interopRequireDefault(require("./de.json"));
|
|
11
|
+
|
|
12
|
+
var _en = _interopRequireDefault(require("./en.json"));
|
|
13
|
+
|
|
14
|
+
var _es = _interopRequireDefault(require("./es.json"));
|
|
15
|
+
|
|
16
|
+
var _fr = _interopRequireDefault(require("./fr.json"));
|
|
17
|
+
|
|
18
|
+
var _it = _interopRequireDefault(require("./it.json"));
|
|
19
|
+
|
|
20
|
+
var _ja = _interopRequireDefault(require("./ja.json"));
|
|
21
|
+
|
|
22
|
+
var _ko = _interopRequireDefault(require("./ko.json"));
|
|
23
|
+
|
|
24
|
+
var _pt = _interopRequireDefault(require("./pt.json"));
|
|
25
|
+
|
|
26
|
+
var _tr = _interopRequireDefault(require("./tr.json"));
|
|
27
|
+
|
|
28
|
+
var _vi = _interopRequireDefault(require("./vi.json"));
|
|
29
|
+
|
|
30
|
+
var _zh = _interopRequireDefault(require("./zh.json"));
|
|
31
|
+
|
|
32
|
+
var localizedMessages = {
|
|
33
|
+
de: _de["default"],
|
|
34
|
+
en: _en["default"],
|
|
35
|
+
es: _es["default"],
|
|
36
|
+
fr: _fr["default"],
|
|
37
|
+
it: _it["default"],
|
|
38
|
+
ja: _ja["default"],
|
|
39
|
+
ko: _ko["default"],
|
|
40
|
+
pt: _pt["default"],
|
|
41
|
+
tr: _tr["default"],
|
|
42
|
+
vi: _vi["default"],
|
|
43
|
+
zh: _zh["default"]
|
|
44
|
+
};
|
|
45
|
+
exports.localizedMessages = localizedMessages;
|
|
46
|
+
//# sourceMappingURL=__intergalactic-dynamic-locales.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"__intergalactic-dynamic-locales.js","names":["localizedMessages","de","en","es","fr","it","ja","ko","pt","tr","vi","zh"],"sources":["../../../src/translations/__intergalactic-dynamic-locales.ts"],"sourcesContent":["import de from './de.json';\nimport en from './en.json';\nimport es from './es.json';\nimport fr from './fr.json';\nimport it from './it.json';\nimport ja from './ja.json';\nimport ko from './ko.json';\nimport pt from './pt.json';\nimport tr from './tr.json';\nimport vi from './vi.json';\nimport zh from './zh.json';\n\nexport const localizedMessages = {\n de,\n en,\n es,\n fr,\n it,\n ja,\n ko,\n pt,\n tr,\n vi,\n zh,\n};\n"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAEO,IAAMA,iBAAiB,GAAG;EAC/BC,EAAE,EAAFA,cAD+B;EAE/BC,EAAE,EAAFA,cAF+B;EAG/BC,EAAE,EAAFA,cAH+B;EAI/BC,EAAE,EAAFA,cAJ+B;EAK/BC,EAAE,EAAFA,cAL+B;EAM/BC,EAAE,EAAFA,cAN+B;EAO/BC,EAAE,EAAFA,cAP+B;EAQ/BC,EAAE,EAAFA,cAR+B;EAS/BC,EAAE,EAAFA,cAT+B;EAU/BC,EAAE,EAAFA,cAV+B;EAW/BC,EAAE,EAAFA;AAX+B,CAA1B"}
|
package/lib/es6/InputNumber.js
CHANGED
|
@@ -22,26 +22,28 @@ import React from 'react';
|
|
|
22
22
|
import createComponent, { Component, sstyled, Root } from '@semcore/core';
|
|
23
23
|
import Input from '@semcore/input';
|
|
24
24
|
import BUTTONS from './buttons';
|
|
25
|
+
import { localizedMessages } from './translations/__intergalactic-dynamic-locales';
|
|
26
|
+
import i18nEnhance from '@semcore/utils/lib/enhances/i18nEnhance';
|
|
25
27
|
|
|
26
28
|
/*__reshadow-styles__:"./style/input-number.shadow.css"*/
|
|
27
29
|
var style = (
|
|
28
30
|
/*__reshadow_css_start__*/
|
|
29
31
|
_sstyled.insert(
|
|
30
32
|
/*__inner_css_start__*/
|
|
31
|
-
".
|
|
33
|
+
".___SInputNumber_e3dxg_gg_:hover .___SValue_e3dxg_gg_:not(.__disabled_e3dxg_gg_)~.___SControls_e3dxg_gg_{visibility:visible}.___SValue_e3dxg_gg_:focus~.___SControls_e3dxg_gg_{visibility:visible}.___SControls_e3dxg_gg_{display:flex;flex-flow:column;justify-content:center;height:100%;visibility:hidden;box-sizing:border-box}.___SControls_e3dxg_gg_.__showControls_e3dxg_gg_{visibility:visible}.___SDown_e3dxg_gg_,.___SUp_e3dxg_gg_{padding:0;width:16px;color:var(--intergalactic-icon-secondary-neutral,#a9abb6);box-sizing:border-box;display:inline-flex;justify-content:center;border:none;background:none;cursor:pointer}.___SDown_e3dxg_gg_:focus,.___SUp_e3dxg_gg_:focus{outline:none}.___SDown_e3dxg_gg_:hover,.___SUp_e3dxg_gg_:hover{color:var(--intergalactic-icon-secondary-neutral-hover-active,#8a8e9b)}.___SUp_e3dxg_gg_{padding-bottom:1px}.___SDown_e3dxg_gg_{padding-top:1px}.___SValue_e3dxg_gg_::-webkit-inner-spin-button,.___SValue_e3dxg_gg_::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.___SValue_e3dxg_gg_._type_number_e3dxg_gg_{-moz-appearance:textfield}.___SValue_e3dxg_gg_.__disabled_e3dxg_gg_~.___SControls_e3dxg_gg_{opacity:var(--intergalactic-disabled-opacity,.3);cursor:default;pointer-events:none}.___SValueHidden_e3dxg_gg_{position:absolute;top:0;width:1px;height:1px;padding:0;overflow:hidden}"
|
|
32
34
|
/*__inner_css_end__*/
|
|
33
|
-
, "
|
|
35
|
+
, "e3dxg_gg_")
|
|
34
36
|
/*__reshadow_css_end__*/
|
|
35
37
|
, {
|
|
36
|
-
"__SInputNumber": "
|
|
37
|
-
"__SValue": "
|
|
38
|
-
"_disabled": "
|
|
39
|
-
"__SControls": "
|
|
40
|
-
"_showControls": "
|
|
41
|
-
"__SDown": "
|
|
42
|
-
"__SUp": "
|
|
43
|
-
"_type_number": "
|
|
44
|
-
"__SValueHidden": "
|
|
38
|
+
"__SInputNumber": "___SInputNumber_e3dxg_gg_",
|
|
39
|
+
"__SValue": "___SValue_e3dxg_gg_",
|
|
40
|
+
"_disabled": "__disabled_e3dxg_gg_",
|
|
41
|
+
"__SControls": "___SControls_e3dxg_gg_",
|
|
42
|
+
"_showControls": "__showControls_e3dxg_gg_",
|
|
43
|
+
"__SDown": "___SDown_e3dxg_gg_",
|
|
44
|
+
"__SUp": "___SUp_e3dxg_gg_",
|
|
45
|
+
"_type_number": "_type_number_e3dxg_gg_",
|
|
46
|
+
"__SValueHidden": "___SValueHidden_e3dxg_gg_"
|
|
45
47
|
});
|
|
46
48
|
|
|
47
49
|
function parseValueWithMinMax(value) {
|
|
@@ -108,11 +110,14 @@ var InputNumber = /*#__PURE__*/function (_Component) {
|
|
|
108
110
|
}, {
|
|
109
111
|
key: "getControlsProps",
|
|
110
112
|
value: function getControlsProps() {
|
|
111
|
-
var
|
|
113
|
+
var _this$asProps = this.asProps,
|
|
114
|
+
size = _this$asProps.size,
|
|
115
|
+
getI18nText = _this$asProps.getI18nText;
|
|
112
116
|
return {
|
|
113
117
|
size: size,
|
|
114
118
|
inc: this.handlerInc,
|
|
115
|
-
dec: this.handlerDec
|
|
119
|
+
dec: this.handlerDec,
|
|
120
|
+
getI18nText: getI18nText
|
|
116
121
|
};
|
|
117
122
|
}
|
|
118
123
|
}, {
|
|
@@ -133,8 +138,12 @@ _defineProperty(InputNumber, "displayName", 'InputNumber');
|
|
|
133
138
|
|
|
134
139
|
_defineProperty(InputNumber, "style", style);
|
|
135
140
|
|
|
141
|
+
_defineProperty(InputNumber, "enhance", [i18nEnhance(localizedMessages)]);
|
|
142
|
+
|
|
136
143
|
_defineProperty(InputNumber, "defaultProps", {
|
|
137
|
-
size: 'm'
|
|
144
|
+
size: 'm',
|
|
145
|
+
i18n: localizedMessages,
|
|
146
|
+
locale: 'en'
|
|
138
147
|
});
|
|
139
148
|
|
|
140
149
|
var Value = /*#__PURE__*/function (_Component2) {
|
|
@@ -208,12 +217,12 @@ var Value = /*#__PURE__*/function (_Component2) {
|
|
|
208
217
|
|
|
209
218
|
var SValue = Input.Value;
|
|
210
219
|
var SValueHidden = 'div';
|
|
211
|
-
var _this$
|
|
212
|
-
styles = _this$
|
|
213
|
-
$inputHandlers = _this$
|
|
214
|
-
value = _this$
|
|
215
|
-
min = _this$
|
|
216
|
-
max = _this$
|
|
220
|
+
var _this$asProps2 = this.asProps,
|
|
221
|
+
styles = _this$asProps2.styles,
|
|
222
|
+
$inputHandlers = _this$asProps2.$inputHandlers,
|
|
223
|
+
value = _this$asProps2.value,
|
|
224
|
+
min = _this$asProps2.min,
|
|
225
|
+
max = _this$asProps2.max; // 🐒 не делайте так
|
|
217
226
|
|
|
218
227
|
$inputHandlers.current = this.handlers;
|
|
219
228
|
return _ref5 = sstyled(styles), /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(SValue, _ref5.cn("SValue", _objectSpread({}, _assignProps2({
|
|
@@ -247,7 +256,8 @@ function Controls(props) {
|
|
|
247
256
|
inc = props.inc,
|
|
248
257
|
dec = props.dec,
|
|
249
258
|
size = props.size,
|
|
250
|
-
styles = props.styles
|
|
259
|
+
styles = props.styles,
|
|
260
|
+
getI18nText = props.getI18nText;
|
|
251
261
|
var SControls = Input.Addon;
|
|
252
262
|
var SUp = 'button';
|
|
253
263
|
var SDown = 'button';
|
|
@@ -256,13 +266,13 @@ function Controls(props) {
|
|
|
256
266
|
"tabIndex": -1,
|
|
257
267
|
"type": "button",
|
|
258
268
|
"size": size,
|
|
259
|
-
"aria-label":
|
|
269
|
+
"aria-label": getI18nText('increment')
|
|
260
270
|
}), /*#__PURE__*/React.createElement(IconUp, _ref6.cn("IconUp", {}))), /*#__PURE__*/React.createElement(SDown, _ref6.cn("SDown", {
|
|
261
271
|
"onClick": dec,
|
|
262
272
|
"tabIndex": -1,
|
|
263
273
|
"type": "button",
|
|
264
274
|
"size": size,
|
|
265
|
-
"aria-label":
|
|
275
|
+
"aria-label": getI18nText('decrement')
|
|
266
276
|
}), /*#__PURE__*/React.createElement(IconDown, _ref6.cn("IconDown", {}))), /*#__PURE__*/React.createElement(Children, _ref6.cn("Children", {})));
|
|
267
277
|
}
|
|
268
278
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InputNumber.js","names":["React","createComponent","Component","sstyled","Root","Input","BUTTONS","parseValueWithMinMax","value","min","Number","MIN_SAFE_INTEGER","max","MAX_SAFE_INTEGER","Math","IconUp","up","IconDown","down","InputNumber","createRef","e","inputRef","current","stepUp","inputHandlersRef","stepDown","ref","$inputHandlers","size","asProps","inc","handlerInc","dec","handlerDec","SInputNumber","style","Value","step","roundCoefficient","toString","split","length","isNaN","currentTarget","valueAsNumber","handlers","numberValue","parseFloat","r","roundRemainder","abs","numberValueRounded","toFixed","String","countDecimals","floor","toPrecision","SValue","SValueHidden","styles","handleValidation","defaultValue","Controls","props","Children","SControls","Addon","SUp","SDown"],"sources":["../../src/InputNumber.jsx"],"sourcesContent":["import React from 'react';\nimport createComponent, { Component, sstyled, Root } from '@semcore/core';\nimport Input from '@semcore/input';\nimport BUTTONS from './buttons';\n\nimport style from './style/input-number.shadow.css';\n\nfunction parseValueWithMinMax(value, min = Number.MIN_SAFE_INTEGER, max = Number.MAX_SAFE_INTEGER) {\n return Math.max(min, Math.min(max, value));\n}\n\nconst IconUp = () => BUTTONS.up;\nconst IconDown = () => BUTTONS.down;\n\nclass InputNumber extends Component {\n static displayName = 'InputNumber';\n static style = style;\n static defaultProps = {\n size: 'm',\n };\n\n inputRef = React.createRef();\n inputHandlersRef = React.createRef();\n\n handlerInc = (e) => {\n // TODO: IE11 dont work\n this.inputRef.current?.stepUp && this.inputRef.current?.stepUp();\n this.inputHandlersRef.current?.value(this.inputRef.current.value, e);\n };\n\n handlerDec = (e) => {\n // TODO: IE11 dont work\n this.inputRef.current?.stepDown && this.inputRef.current?.stepDown();\n this.inputHandlersRef.current?.value(this.inputRef.current.value, e);\n };\n\n getValueProps() {\n return {\n ref: this.inputRef,\n $inputHandlers: this.inputHandlersRef,\n };\n }\n\n getControlsProps() {\n const { size } = this.asProps;\n return {\n size,\n inc: this.handlerInc,\n dec: this.handlerDec,\n };\n }\n\n render() {\n const SInputNumber = Root;\n return sstyled(this.asProps.style)(<SInputNumber render={Input} />);\n }\n}\n\nclass Value extends Component {\n static defaultProps = {\n defaultValue: '',\n step: 1,\n };\n\n uncontrolledProps() {\n return {\n value: null,\n };\n }\n\n roundRemainder(value, step) {\n const countDecimals = Math.floor(step) === step ? 0 : step.toString().split('.')[1].length || 0;\n return countDecimals === 0\n ? Number.parseFloat(value)\n : Number.parseFloat(value).toPrecision(countDecimals);\n }\n\n handleValidation = (e) => {\n const { value, min, max, step } = this.asProps;\n const roundCoefficient = step < 1 ? step.toString().split('.')[1].length : 1;\n if (Number.isNaN(e.currentTarget.valueAsNumber)) {\n e.currentTarget.value = '';\n this.handlers.value('', e);\n } else {\n let numberValue = parseValueWithMinMax(Number.parseFloat(value), min, max);\n const r = this.roundRemainder(numberValue % step, step);\n if (r !== 0) {\n if (r >= step / 2) {\n numberValue += step - r;\n } else if (Math.abs(r) < step) {\n numberValue -= r;\n }\n }\n const numberValueRounded = Number(numberValue.toFixed(roundCoefficient));\n this.handlers.value(String(numberValueRounded), e);\n }\n };\n\n render() {\n const SValue = Root;\n const SValueHidden = 'div';\n const { styles, $inputHandlers, value, min, max } = this.asProps;\n\n // 🐒 не делайте так\n $inputHandlers.current = this.handlers;\n\n return sstyled(styles)(\n <>\n <SValue\n render={Input.Value}\n type=\"number\"\n autoComplete=\"off\"\n onBlur={this.handleValidation}\n onInvalid={this.handleValidation}\n aria-valuenow={value}\n aria-valuemin={min}\n aria-valuemax={max}\n />\n {/* the next hidden div is necessary for the screen reader to report the value \n in the input, because after validation the value can change to the `min` or `max` \n if entered less than `min` or more than `max` */}\n <SValueHidden aria-live=\"polite\" aria-atomic={true}>\n {value}\n </SValueHidden>\n </>,\n );\n }\n}\n\nfunction Controls(props) {\n const { Children, inc, dec, size, styles } = props;\n const SControls = Root;\n const SUp = 'button';\n const SDown = 'button';\n\n return sstyled(styles)(\n <SControls render={Input.Addon}>\n <SUp onClick={inc} tabIndex={-1} type=\"button\" size={size} aria-label=\"Increment number\">\n <IconUp />\n </SUp>\n <SDown onClick={dec} tabIndex={-1} type=\"button\" size={size} aria-label=\"Decrement number\">\n <IconDown />\n </SDown>\n <Children />\n </SControls>,\n );\n}\n\nexport default createComponent(InputNumber, {\n Value,\n Controls,\n Addon: Input.Addon,\n});\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"InputNumber.js","names":["React","createComponent","Component","sstyled","Root","Input","BUTTONS","localizedMessages","i18nEnhance","parseValueWithMinMax","value","min","Number","MIN_SAFE_INTEGER","max","MAX_SAFE_INTEGER","Math","IconUp","up","IconDown","down","InputNumber","createRef","e","inputRef","current","stepUp","inputHandlersRef","stepDown","ref","$inputHandlers","asProps","size","getI18nText","inc","handlerInc","dec","handlerDec","SInputNumber","style","i18n","locale","Value","step","roundCoefficient","toString","split","length","isNaN","currentTarget","valueAsNumber","handlers","numberValue","parseFloat","r","roundRemainder","abs","numberValueRounded","toFixed","String","countDecimals","floor","toPrecision","SValue","SValueHidden","styles","handleValidation","defaultValue","Controls","props","Children","SControls","Addon","SUp","SDown"],"sources":["../../src/InputNumber.jsx"],"sourcesContent":["import React from 'react';\nimport createComponent, { Component, sstyled, Root } from '@semcore/core';\nimport Input from '@semcore/input';\nimport BUTTONS from './buttons';\nimport { localizedMessages } from './translations/__intergalactic-dynamic-locales';\nimport i18nEnhance from '@semcore/utils/lib/enhances/i18nEnhance';\n\nimport style from './style/input-number.shadow.css';\n\nfunction parseValueWithMinMax(value, min = Number.MIN_SAFE_INTEGER, max = Number.MAX_SAFE_INTEGER) {\n return Math.max(min, Math.min(max, value));\n}\n\nconst IconUp = () => BUTTONS.up;\nconst IconDown = () => BUTTONS.down;\n\nclass InputNumber extends Component {\n static displayName = 'InputNumber';\n static style = style;\n static enhance = [i18nEnhance(localizedMessages)];\n static defaultProps = {\n size: 'm',\n i18n: localizedMessages,\n locale: 'en',\n };\n\n inputRef = React.createRef();\n inputHandlersRef = React.createRef();\n\n handlerInc = (e) => {\n // TODO: IE11 dont work\n this.inputRef.current?.stepUp && this.inputRef.current?.stepUp();\n this.inputHandlersRef.current?.value(this.inputRef.current.value, e);\n };\n\n handlerDec = (e) => {\n // TODO: IE11 dont work\n this.inputRef.current?.stepDown && this.inputRef.current?.stepDown();\n this.inputHandlersRef.current?.value(this.inputRef.current.value, e);\n };\n\n getValueProps() {\n return {\n ref: this.inputRef,\n $inputHandlers: this.inputHandlersRef,\n };\n }\n\n getControlsProps() {\n const { size, getI18nText } = this.asProps;\n return {\n size,\n inc: this.handlerInc,\n dec: this.handlerDec,\n getI18nText,\n };\n }\n\n render() {\n const SInputNumber = Root;\n return sstyled(this.asProps.style)(<SInputNumber render={Input} />);\n }\n}\n\nclass Value extends Component {\n static defaultProps = {\n defaultValue: '',\n step: 1,\n };\n\n uncontrolledProps() {\n return {\n value: null,\n };\n }\n\n roundRemainder(value, step) {\n const countDecimals = Math.floor(step) === step ? 0 : step.toString().split('.')[1].length || 0;\n return countDecimals === 0\n ? Number.parseFloat(value)\n : Number.parseFloat(value).toPrecision(countDecimals);\n }\n\n handleValidation = (e) => {\n const { value, min, max, step } = this.asProps;\n const roundCoefficient = step < 1 ? step.toString().split('.')[1].length : 1;\n if (Number.isNaN(e.currentTarget.valueAsNumber)) {\n e.currentTarget.value = '';\n this.handlers.value('', e);\n } else {\n let numberValue = parseValueWithMinMax(Number.parseFloat(value), min, max);\n const r = this.roundRemainder(numberValue % step, step);\n if (r !== 0) {\n if (r >= step / 2) {\n numberValue += step - r;\n } else if (Math.abs(r) < step) {\n numberValue -= r;\n }\n }\n const numberValueRounded = Number(numberValue.toFixed(roundCoefficient));\n this.handlers.value(String(numberValueRounded), e);\n }\n };\n\n render() {\n const SValue = Root;\n const SValueHidden = 'div';\n const { styles, $inputHandlers, value, min, max } = this.asProps;\n\n // 🐒 не делайте так\n $inputHandlers.current = this.handlers;\n\n return sstyled(styles)(\n <>\n <SValue\n render={Input.Value}\n type=\"number\"\n autoComplete=\"off\"\n onBlur={this.handleValidation}\n onInvalid={this.handleValidation}\n aria-valuenow={value}\n aria-valuemin={min}\n aria-valuemax={max}\n />\n {/* the next hidden div is necessary for the screen reader to report the value \n in the input, because after validation the value can change to the `min` or `max` \n if entered less than `min` or more than `max` */}\n <SValueHidden aria-live=\"polite\" aria-atomic={true}>\n {value}\n </SValueHidden>\n </>,\n );\n }\n}\n\nfunction Controls(props) {\n const { Children, inc, dec, size, styles, getI18nText } = props;\n const SControls = Root;\n const SUp = 'button';\n const SDown = 'button';\n\n return sstyled(styles)(\n <SControls render={Input.Addon}>\n <SUp\n onClick={inc}\n tabIndex={-1}\n type=\"button\"\n size={size}\n aria-label={getI18nText('increment')}\n >\n <IconUp />\n </SUp>\n <SDown\n onClick={dec}\n tabIndex={-1}\n type=\"button\"\n size={size}\n aria-label={getI18nText('decrement')}\n >\n <IconDown />\n </SDown>\n <Children />\n </SControls>,\n );\n}\n\nexport default createComponent(InputNumber, {\n Value,\n Controls,\n Addon: Input.Addon,\n});\n"],"mappings":"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"}
|
package/lib/es6/index.d.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.js","names":[],"sources":["../../src/index.d.ts"],"sourcesContent":["import React from 'react';\nimport { CProps, PropGetterFn, ReturnEl } from '@semcore/core';\nimport { IInputAddonProps, IInputProps, IInputValueProps } from '@semcore/input';\n\nexport type InputNumberValue = string;\nexport type InputNumberSize = 'm' | 'l';\n\nexport interface IInputNumberProps extends IInputProps {\n /** Input size\n * @default m\n * */\n size?: InputNumberSize;\n}\n\nexport interface IInputNumberValueProps extends IInputValueProps {\n /** Minimum value\n * @default Number.MIN_SAFE_INTEGER\n */\n min?: number;\n /** Maximum value\n * @default Number.MAX_SAFE_INTEGER\n */\n max?: number;\n /** Value change step\n * @default 1\n */\n step?: number;\n /** Numeric value */\n value?: InputNumberValue;\n /** Called when the input value changes, it returns its current value in numeric format */\n onChange?: (value: InputNumberValue, event?: React.SyntheticEvent<HTMLInputElement>) => void;\n}\n\nexport interface IInputNumberControlsProps extends IInputAddonProps {\n /** Always displays controls (steppers)\n * @default false\n */\n showControls?: boolean;\n}\n\nexport interface IInputNumberCtx {\n getValueProps: PropGetterFn;\n getControlsProps: PropGetterFn;\n getAddonProps: PropGetterFn;\n}\n\ndeclare const InputNumber: (<T>(\n props: CProps<IInputNumberProps & T, IInputNumberCtx>,\n) => ReturnEl) & {\n Value: <T>(props: IInputNumberValueProps & T) => ReturnEl;\n Controls: <T>(props: IInputNumberControlsProps & T) => ReturnEl;\n Addon: <T>(props: IInputAddonProps & T) => ReturnEl;\n};\n\nexport default InputNumber;\n"],"mappings":""}
|
|
1
|
+
{"version":3,"file":"index.d.js","names":[],"sources":["../../src/index.d.ts"],"sourcesContent":["import React from 'react';\nimport { CProps, PropGetterFn, ReturnEl } from '@semcore/core';\nimport { IInputAddonProps, IInputProps, IInputValueProps } from '@semcore/input';\n\nexport type InputNumberValue = string;\nexport type InputNumberSize = 'm' | 'l';\n\nexport interface IInputNumberProps extends IInputProps {\n /** Input size\n * @default m\n * */\n size?: InputNumberSize;\n}\n\nexport interface IInputNumberValueProps extends IInputValueProps {\n /** Minimum value\n * @default Number.MIN_SAFE_INTEGER\n */\n min?: number;\n /** Maximum value\n * @default Number.MAX_SAFE_INTEGER\n */\n max?: number;\n /** Value change step\n * @default 1\n */\n step?: number;\n /** Numeric value */\n value?: InputNumberValue;\n /** Called when the input value changes, it returns its current value in numeric format */\n onChange?: (value: InputNumberValue, event?: React.SyntheticEvent<HTMLInputElement>) => void;\n locale?: string;\n}\n\nexport interface IInputNumberControlsProps extends IInputAddonProps {\n /** Always displays controls (steppers)\n * @default false\n */\n showControls?: boolean;\n}\n\nexport interface IInputNumberCtx {\n getValueProps: PropGetterFn;\n getControlsProps: PropGetterFn;\n getAddonProps: PropGetterFn;\n}\n\ndeclare const InputNumber: (<T>(\n props: CProps<IInputNumberProps & T, IInputNumberCtx>,\n) => ReturnEl) & {\n Value: <T>(props: IInputNumberValueProps & T) => ReturnEl;\n Controls: <T>(props: IInputNumberControlsProps & T) => ReturnEl;\n Addon: <T>(props: IInputAddonProps & T) => ReturnEl;\n};\n\nexport default InputNumber;\n"],"mappings":""}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import de from './de.json';
|
|
2
|
+
import en from './en.json';
|
|
3
|
+
import es from './es.json';
|
|
4
|
+
import fr from './fr.json';
|
|
5
|
+
import it from './it.json';
|
|
6
|
+
import ja from './ja.json';
|
|
7
|
+
import ko from './ko.json';
|
|
8
|
+
import pt from './pt.json';
|
|
9
|
+
import tr from './tr.json';
|
|
10
|
+
import vi from './vi.json';
|
|
11
|
+
import zh from './zh.json';
|
|
12
|
+
export var localizedMessages = {
|
|
13
|
+
de: de,
|
|
14
|
+
en: en,
|
|
15
|
+
es: es,
|
|
16
|
+
fr: fr,
|
|
17
|
+
it: it,
|
|
18
|
+
ja: ja,
|
|
19
|
+
ko: ko,
|
|
20
|
+
pt: pt,
|
|
21
|
+
tr: tr,
|
|
22
|
+
vi: vi,
|
|
23
|
+
zh: zh
|
|
24
|
+
};
|
|
25
|
+
//# sourceMappingURL=__intergalactic-dynamic-locales.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"__intergalactic-dynamic-locales.js","names":["de","en","es","fr","it","ja","ko","pt","tr","vi","zh","localizedMessages"],"sources":["../../../src/translations/__intergalactic-dynamic-locales.ts"],"sourcesContent":["import de from './de.json';\nimport en from './en.json';\nimport es from './es.json';\nimport fr from './fr.json';\nimport it from './it.json';\nimport ja from './ja.json';\nimport ko from './ko.json';\nimport pt from './pt.json';\nimport tr from './tr.json';\nimport vi from './vi.json';\nimport zh from './zh.json';\n\nexport const localizedMessages = {\n de,\n en,\n es,\n fr,\n it,\n ja,\n ko,\n pt,\n tr,\n vi,\n zh,\n};\n"],"mappings":"AAAA,OAAOA,EAAP,MAAe,WAAf;AACA,OAAOC,EAAP,MAAe,WAAf;AACA,OAAOC,EAAP,MAAe,WAAf;AACA,OAAOC,EAAP,MAAe,WAAf;AACA,OAAOC,EAAP,MAAe,WAAf;AACA,OAAOC,EAAP,MAAe,WAAf;AACA,OAAOC,EAAP,MAAe,WAAf;AACA,OAAOC,EAAP,MAAe,WAAf;AACA,OAAOC,EAAP,MAAe,WAAf;AACA,OAAOC,EAAP,MAAe,WAAf;AACA,OAAOC,EAAP,MAAe,WAAf;AAEA,OAAO,IAAMC,iBAAiB,GAAG;EAC/BX,EAAE,EAAFA,EAD+B;EAE/BC,EAAE,EAAFA,EAF+B;EAG/BC,EAAE,EAAFA,EAH+B;EAI/BC,EAAE,EAAFA,EAJ+B;EAK/BC,EAAE,EAAFA,EAL+B;EAM/BC,EAAE,EAAFA,EAN+B;EAO/BC,EAAE,EAAFA,EAP+B;EAQ/BC,EAAE,EAAFA,EAR+B;EAS/BC,EAAE,EAAFA,EAT+B;EAU/BC,EAAE,EAAFA,EAV+B;EAW/BC,EAAE,EAAFA;AAX+B,CAA1B"}
|
package/lib/types/index.d.ts
CHANGED
|
@@ -29,6 +29,7 @@ export interface IInputNumberValueProps extends IInputValueProps {
|
|
|
29
29
|
value?: InputNumberValue;
|
|
30
30
|
/** Called when the input value changes, it returns its current value in numeric format */
|
|
31
31
|
onChange?: (value: InputNumberValue, event?: React.SyntheticEvent<HTMLInputElement>) => void;
|
|
32
|
+
locale?: string;
|
|
32
33
|
}
|
|
33
34
|
|
|
34
35
|
export interface IInputNumberControlsProps extends IInputAddonProps {
|