linear-react-components-ui 1.1.24-beta.2 → 1.1.24-beta.3

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.
Files changed (59) hide show
  1. package/lib/BaseMask-ce8dedc1.d.ts +24 -0
  2. package/lib/Cnpj-aa8c3e13.d.ts +18 -0
  3. package/lib/Cpf-d58b5482.d.ts +18 -0
  4. package/lib/Phone-8a912d9e.d.ts +18 -0
  5. package/lib/ZipCode-d4a08d23.d.ts +13 -0
  6. package/lib/assets/styles/numberfield.scss +18 -0
  7. package/lib/form2/useForm/index.js +3 -4
  8. package/lib/index-287b0453.d.ts +23 -0
  9. package/lib/{index-a0c1207e.d.ts → index-35ba9ed8.d.ts} +1 -1
  10. package/lib/index-4529c2ba.d.ts +44 -0
  11. package/lib/{index-a68cfaf7.d.ts → index-474db0eb.d.ts} +1 -1
  12. package/lib/{index-f9981b49.d.ts → index-5b2c554c.d.ts} +1 -1
  13. package/lib/index-ecafc8c6.d.ts +30 -0
  14. package/lib/inputs2/checkboxfield/index.d.ts +1 -1
  15. package/lib/inputs2/colorfield/index.d.ts +2 -2
  16. package/lib/inputs2/index.d.ts +14 -14
  17. package/lib/inputs2/index.js +3 -9
  18. package/lib/inputs2/mask/BaseMask.d.ts +2 -2
  19. package/lib/inputs2/mask/Cnpj.d.ts +3 -3
  20. package/lib/inputs2/mask/Cpf.d.ts +3 -3
  21. package/lib/inputs2/mask/Phone.d.ts +3 -3
  22. package/lib/inputs2/mask/ZipCode.d.ts +3 -3
  23. package/lib/inputs2/numberfield/currency.d.ts +13 -0
  24. package/lib/inputs2/{number/BaseNumber.js → numberfield/currency.js} +63 -58
  25. package/lib/inputs2/numberfield/decimal.d.ts +13 -0
  26. package/lib/inputs2/numberfield/decimal.js +85 -0
  27. package/lib/inputs2/numberfield/helpers.d.ts +30 -0
  28. package/lib/inputs2/numberfield/helpers.js +53 -0
  29. package/lib/inputs2/numberfield/index.d.ts +12 -0
  30. package/lib/inputs2/numberfield/index.js +104 -0
  31. package/lib/inputs2/numberfield/types.d.ts +36 -0
  32. package/lib/inputs2/numberfield/types.js +5 -0
  33. package/lib/inputs2/radiofield/index.d.ts +1 -1
  34. package/lib/inputs2/selectfield/index.d.ts +1 -1
  35. package/lib/inputs2/selectfield/index.js +3 -3
  36. package/lib/inputs2/textfield/index.d.ts +1 -1
  37. package/lib/inputs2/textfield/index.js +3 -3
  38. package/lib/popover/index.js +1 -0
  39. package/package.json +1 -1
  40. package/lib/BaseMask-4885b7c4.d.ts +0 -24
  41. package/lib/BaseNumber-ba047ec3.d.ts +0 -23
  42. package/lib/Cnpj-501f8fed.d.ts +0 -18
  43. package/lib/Cpf-0e03d85a.d.ts +0 -18
  44. package/lib/Currency-d8dae30c.d.ts +0 -18
  45. package/lib/Decimal-deda637f.d.ts +0 -13
  46. package/lib/Number-4783f0de.d.ts +0 -20
  47. package/lib/Phone-99e92c22.d.ts +0 -18
  48. package/lib/ZipCode-3d092264.d.ts +0 -13
  49. package/lib/index-6f287e6c.d.ts +0 -23
  50. package/lib/index-f6f0d3a8.d.ts +0 -44
  51. package/lib/inputs2/number/BaseNumber.d.ts +0 -10
  52. package/lib/inputs2/number/Currency.d.ts +0 -11
  53. package/lib/inputs2/number/Currency.js +0 -47
  54. package/lib/inputs2/number/Decimal.d.ts +0 -11
  55. package/lib/inputs2/number/Decimal.js +0 -36
  56. package/lib/inputs2/number/Number.d.ts +0 -9
  57. package/lib/inputs2/number/Number.js +0 -49
  58. package/lib/inputs2/number/format_number.d.ts +0 -5
  59. package/lib/inputs2/number/format_number.js +0 -29
@@ -3,16 +3,15 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.Input = void 0;
7
- var _react = _interopRequireWildcard(require("react"));
6
+ exports.Currency = void 0;
7
+ require("../../assets/styles/numberfield.scss");
8
+ var _react = _interopRequireDefault(require("react"));
9
+ var _lodash = _interopRequireDefault(require("lodash"));
8
10
  var _reactImask = require("react-imask");
9
- var _textfield = require("../textfield");
11
+ var _2 = require("..");
10
12
  var _helpers = require("../../form2/helpers");
11
- var _format_number = require("./format_number");
12
- const _excluded = ["name", "value", "onComplete", "onChange", "textAlign", "maskOptions"],
13
- _excluded2 = ["scale", "thousandsSeparator", "radix", "normalizeZeros", "padFractionalZeros", "min"];
14
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
15
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
13
+ const _excluded = ["min", "max", "to", "from", "enum", "onChange", "allowNegative", "textAlign", "children", "scale", "normalizeZeros", "padFractionalZeros", "currencySymbol"];
14
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
16
15
  function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
17
16
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
18
17
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
@@ -21,66 +20,72 @@ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol"
21
20
  function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
22
21
  function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
23
22
  function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
24
- const Input = exports.Input = /*#__PURE__*/(0, _react.forwardRef)((props, ref) => {
23
+ const Currency = exports.Currency = /*#__PURE__*/_react.default.forwardRef((props, ref) => {
25
24
  const {
26
- name,
27
- value: valueFromProps,
28
- onComplete,
29
- onChange,
25
+ min = undefined,
26
+ max = undefined,
27
+ to = undefined,
28
+ from = undefined,
29
+ enum: interval = undefined,
30
+ onChange = null,
31
+ allowNegative = true,
30
32
  textAlign = 'right',
31
- maskOptions
33
+ children = null,
34
+ scale = 2,
35
+ normalizeZeros = false,
36
+ padFractionalZeros = true,
37
+ currencySymbol = 'R$'
32
38
  } = props,
33
39
  rest = _objectWithoutProperties(props, _excluded);
34
- const inputRef = (0, _react.useRef)(null);
35
- const _ref = maskOptions,
36
- {
37
- scale = 0,
38
- thousandsSeparator = '',
39
- radix = ',',
40
- normalizeZeros = false,
41
- padFractionalZeros = false,
42
- min = 0
43
- } = _ref,
44
- restMaskOptions = _objectWithoutProperties(_ref, _excluded2);
40
+ const numberInputRef = _react.default.useRef(null);
45
41
  const {
46
- value,
47
- setValue: setMaskValue
48
- } = (0, _reactImask.useIMask)(_objectSpread({
42
+ value: maskedValue,
43
+ setValue: setMaskedValue,
44
+ unmaskedValue
45
+ } = (0, _reactImask.useIMask)({
49
46
  mask: Number,
47
+ unmask: true,
48
+ min: !_lodash.default.isNil(min) ? min : allowNegative ? undefined : 0,
49
+ enum: interval,
50
+ radix: ',',
51
+ mapToRadix: ['.'],
52
+ thousandsSeparator: '.',
53
+ max,
54
+ to,
55
+ from,
50
56
  scale,
51
- thousandsSeparator,
52
- radix,
53
57
  normalizeZeros,
54
- padFractionalZeros,
55
- min
56
- }, restMaskOptions), {
57
- ref: inputRef,
58
- onComplete: (__, maskRef) => {
59
- onComplete?.(maskRef.value, maskRef);
58
+ padFractionalZeros
59
+ }, {
60
+ ref: numberInputRef,
61
+ onAccept: (__, options, event) => {
62
+ const parsedValueToFloat = parseFloat(options.unmaskedValue);
63
+ const valueToReturn = !_lodash.default.isNaN(parsedValueToFloat) ? parsedValueToFloat : 0;
64
+ onChange?.(_objectSpread(_objectSpread({}, event), {}, {
65
+ target: _objectSpread(_objectSpread({}, event?.target), {}, {
66
+ name: props?.name,
67
+ value: valueToReturn
68
+ })
69
+ }));
60
70
  }
61
71
  });
62
72
  _react.default.useEffect(() => {
63
- const currentValue = valueFromProps ?? '';
64
- setMaskValue(currentValue);
65
- }, [valueFromProps]);
66
- return /*#__PURE__*/_react.default.createElement(_textfield.Input, _extends({}, rest, {
67
- ref: (0, _helpers.mergeRefs)(ref, inputRef),
68
- name: name,
73
+ const valueToString = _lodash.default.toString(props?.value);
74
+ if (!_lodash.default.isNil(props?.value) && !_lodash.default.isEqual(parseFloat(valueToString), parseFloat(unmaskedValue))) {
75
+ setMaskedValue(parseFloat(valueToString).toLocaleString('pt-BR'));
76
+ }
77
+ }, [props?.value]);
78
+ return /*#__PURE__*/_react.default.createElement(_2.TextField.Input, _extends({}, rest, {
79
+ ref: (0, _helpers.mergeRefs)(ref, numberInputRef),
69
80
  type: "text",
70
- onBlur: e => {
71
- const event = {
72
- target: {
73
- name,
74
- value: e.target.value ? (0, _format_number.numberToEnUS)(e.target.value) : ''
75
- }
76
- };
77
- if (props.onBlur) props.onBlur(event);
78
- },
79
- onChange: e => {
80
- if (onChange) onChange(e);
81
- },
82
- value: value,
83
- textAlign: textAlign
84
- }));
81
+ inputMode: "numeric",
82
+ value: maskedValue,
83
+ textAlign: textAlign,
84
+ onChange: () => {}
85
+ }), /*#__PURE__*/_react.default.createElement(_2.TextField.LeftSlot, {
86
+ className: "currency-left-elements"
87
+ }, /*#__PURE__*/_react.default.createElement("span", {
88
+ className: "currency-symbol"
89
+ }, currencySymbol)), children);
85
90
  });
86
- Input.displayName = 'MaskNumberInputField';
91
+ Currency.displayName = 'CurrencyFieldInput';
@@ -0,0 +1,13 @@
1
+ import React__default from 'react';
2
+ import { DecimalFieldInputProps } from './types.js';
3
+ import '../../index-4529c2ba.js';
4
+ import '../../@types/Align.js';
5
+ import '../../@types/ColorStyles.js';
6
+ import '../../@types/Position.js';
7
+ import '../../@types/PermissionAttr.js';
8
+ import '../slot/index.js';
9
+ import '../../tooltip/types.js';
10
+
11
+ declare const Decimal: React__default.ForwardRefExoticComponent<DecimalFieldInputProps & React__default.RefAttributes<HTMLInputElement>>;
12
+
13
+ export { Decimal };
@@ -0,0 +1,85 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.Decimal = void 0;
7
+ var _react = _interopRequireDefault(require("react"));
8
+ var _lodash = _interopRequireDefault(require("lodash"));
9
+ var _reactImask = require("react-imask");
10
+ var _2 = require("..");
11
+ var _helpers = require("../../form2/helpers");
12
+ const _excluded = ["min", "max", "to", "from", "enum", "onChange", "allowNegative", "textAlign", "children", "scale", "normalizeZeros", "padFractionalZeros"];
13
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
14
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
15
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
16
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
17
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
18
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
19
+ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
20
+ function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
21
+ function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
22
+ const Decimal = exports.Decimal = /*#__PURE__*/_react.default.forwardRef((props, ref) => {
23
+ const {
24
+ min = undefined,
25
+ max = undefined,
26
+ to = undefined,
27
+ from = undefined,
28
+ enum: interval = undefined,
29
+ onChange = null,
30
+ allowNegative = true,
31
+ textAlign = 'right',
32
+ children = null,
33
+ scale = 2,
34
+ normalizeZeros = false,
35
+ padFractionalZeros = true
36
+ } = props,
37
+ rest = _objectWithoutProperties(props, _excluded);
38
+ const numberInputRef = _react.default.useRef(null);
39
+ const {
40
+ value: maskedValue,
41
+ setValue: setMaskedValue,
42
+ unmaskedValue
43
+ } = (0, _reactImask.useIMask)({
44
+ mask: Number,
45
+ unmask: true,
46
+ min: !_lodash.default.isNil(min) ? min : allowNegative ? undefined : 0,
47
+ enum: interval,
48
+ radix: ',',
49
+ mapToRadix: ['.'],
50
+ thousandsSeparator: '.',
51
+ max,
52
+ to,
53
+ from,
54
+ scale,
55
+ normalizeZeros,
56
+ padFractionalZeros
57
+ }, {
58
+ ref: numberInputRef,
59
+ onAccept: (__, options, event) => {
60
+ const parsedValueToFloat = parseFloat(options.unmaskedValue);
61
+ const valueToReturn = !_lodash.default.isNaN(parsedValueToFloat) ? parsedValueToFloat : 0;
62
+ onChange?.(_objectSpread(_objectSpread({}, event), {}, {
63
+ target: _objectSpread(_objectSpread({}, event?.target), {}, {
64
+ name: props?.name,
65
+ value: valueToReturn
66
+ })
67
+ }));
68
+ }
69
+ });
70
+ _react.default.useEffect(() => {
71
+ const valueToString = _lodash.default.toString(props?.value);
72
+ if (!_lodash.default.isNil(props?.value) && !_lodash.default.isEqual(parseFloat(valueToString), parseFloat(unmaskedValue))) {
73
+ setMaskedValue(parseFloat(valueToString).toLocaleString('pt-BR'));
74
+ }
75
+ }, [props?.value]);
76
+ return /*#__PURE__*/_react.default.createElement(_2.TextField.Input, _extends({}, rest, {
77
+ ref: (0, _helpers.mergeRefs)(ref, numberInputRef),
78
+ type: "text",
79
+ inputMode: "numeric",
80
+ value: maskedValue,
81
+ textAlign: textAlign,
82
+ onChange: () => {}
83
+ }), children);
84
+ });
85
+ Decimal.displayName = 'DecimalFieldInput';
@@ -0,0 +1,30 @@
1
+ /**
2
+ * Converte um valor string para um número seguro ou retorna como string limpa.
3
+ *
4
+ * Esta função sanitiza a entrada removendo todos os caracteres não-dígitos exceto hífens,
5
+ * e então converte para número se estiver dentro do intervalo seguro de inteiros do JavaScript.
6
+ * Se o valor exceder o intervalo seguro ou a conversão falhar, retorna a string limpa.
7
+ *
8
+ * @param stringValue - A string de entrada a ser convertida. Pode conter qualquer caractere.
9
+ * @param returnAsString - Se true, retorna a string limpa sem tentar conversão para número. Se false,
10
+ * tenta converter para número dentro dos limites seguros de inteiros.
11
+ *
12
+ * @returns {number | string} Retorna:
13
+ * - String vazia ('') ou 0 se a entrada estiver vazia/nula (baseado na prop "returnAsString")
14
+ * - String limpa se "returnAsString" for true
15
+ * - Número se a conversão for bem-sucedida e dentro do intervalo seguro de inteiros
16
+ * - String limpa se o número exceder o intervalo seguro ou a conversão falhar
17
+ *
18
+ * @example
19
+ * ```typescript
20
+ * convertToSafeNumber("123abc", false); // Retorna: 123
21
+ * convertToSafeNumber("123abc", true); // Retorna: "123"
22
+ * convertToSafeNumber("-456def", false); // Retorna: -456
23
+ * convertToSafeNumber("999999999999999999999", false); // Retorna: "999999999999999999999" (excede intervalo seguro)
24
+ * convertToSafeNumber("", false); // Retorna: 0
25
+ * convertToSafeNumber("", true); // Retorna: ""
26
+ * ```
27
+ */
28
+ declare const convertToSafeNumber: (stringValue: string, returnAsString: boolean) => number | string;
29
+
30
+ export { convertToSafeNumber };
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.convertToSafeNumber = void 0;
7
+ /**
8
+ * Converte um valor string para um número seguro ou retorna como string limpa.
9
+ *
10
+ * Esta função sanitiza a entrada removendo todos os caracteres não-dígitos exceto hífens,
11
+ * e então converte para número se estiver dentro do intervalo seguro de inteiros do JavaScript.
12
+ * Se o valor exceder o intervalo seguro ou a conversão falhar, retorna a string limpa.
13
+ *
14
+ * @param stringValue - A string de entrada a ser convertida. Pode conter qualquer caractere.
15
+ * @param returnAsString - Se true, retorna a string limpa sem tentar conversão para número. Se false,
16
+ * tenta converter para número dentro dos limites seguros de inteiros.
17
+ *
18
+ * @returns {number | string} Retorna:
19
+ * - String vazia ('') ou 0 se a entrada estiver vazia/nula (baseado na prop "returnAsString")
20
+ * - String limpa se "returnAsString" for true
21
+ * - Número se a conversão for bem-sucedida e dentro do intervalo seguro de inteiros
22
+ * - String limpa se o número exceder o intervalo seguro ou a conversão falhar
23
+ *
24
+ * @example
25
+ * ```typescript
26
+ * convertToSafeNumber("123abc", false); // Retorna: 123
27
+ * convertToSafeNumber("123abc", true); // Retorna: "123"
28
+ * convertToSafeNumber("-456def", false); // Retorna: -456
29
+ * convertToSafeNumber("999999999999999999999", false); // Retorna: "999999999999999999999" (excede intervalo seguro)
30
+ * convertToSafeNumber("", false); // Retorna: 0
31
+ * convertToSafeNumber("", true); // Retorna: ""
32
+ * ```
33
+ */
34
+ const convertToSafeNumber = (stringValue, returnAsString) => {
35
+ if (!stringValue || stringValue === '') return returnAsString ? '' : 0;
36
+ const cleanValue = stringValue.replace(/[^\d-]/g, '');
37
+ if (returnAsString) {
38
+ return cleanValue;
39
+ }
40
+ const {
41
+ MAX_SAFE_INTEGER
42
+ } = Number;
43
+ try {
44
+ const numValue = BigInt(cleanValue);
45
+ if (numValue > BigInt(MAX_SAFE_INTEGER) || numValue < BigInt(-MAX_SAFE_INTEGER)) {
46
+ return cleanValue;
47
+ }
48
+ return Number(cleanValue);
49
+ } catch (error) {
50
+ return cleanValue;
51
+ }
52
+ };
53
+ exports.convertToSafeNumber = convertToSafeNumber;
@@ -0,0 +1,12 @@
1
+ import 'react';
2
+ export { LeftSlot, RightSlot } from '../slot/index.js';
3
+ export { Decimal } from './decimal.js';
4
+ export { Currency } from './currency.js';
5
+ export { CurrencyFieldInputProps, DecimalFieldInputProps, NumberFieldInputProps } from './types.js';
6
+ export { I as Input } from '../../index-ecafc8c6.js';
7
+ import '../../index-4529c2ba.js';
8
+ import '../../@types/Align.js';
9
+ import '../../@types/ColorStyles.js';
10
+ import '../../@types/Position.js';
11
+ import '../../@types/PermissionAttr.js';
12
+ import '../../tooltip/types.js';
@@ -0,0 +1,104 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "Currency", {
7
+ enumerable: true,
8
+ get: function () {
9
+ return _currency.Currency;
10
+ }
11
+ });
12
+ Object.defineProperty(exports, "Decimal", {
13
+ enumerable: true,
14
+ get: function () {
15
+ return _decimal.Decimal;
16
+ }
17
+ });
18
+ exports.Input = void 0;
19
+ Object.defineProperty(exports, "LeftSlot", {
20
+ enumerable: true,
21
+ get: function () {
22
+ return _slot.LeftSlot;
23
+ }
24
+ });
25
+ Object.defineProperty(exports, "RightSlot", {
26
+ enumerable: true,
27
+ get: function () {
28
+ return _slot.RightSlot;
29
+ }
30
+ });
31
+ var _react = _interopRequireDefault(require("react"));
32
+ var _lodash = _interopRequireDefault(require("lodash"));
33
+ var _reactImask = require("react-imask");
34
+ var _2 = require("..");
35
+ var _helpers = require("../../form2/helpers");
36
+ var _slot = require("../slot");
37
+ var _decimal = require("./decimal");
38
+ var _currency = require("./currency");
39
+ var _helpers2 = require("./helpers");
40
+ const _excluded = ["min", "max", "to", "from", "enum", "onChange", "allowNegative", "returnAsString", "textAlign", "children"];
41
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
42
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
43
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
44
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
45
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
46
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
47
+ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
48
+ function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
49
+ function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
50
+ const Input = exports.Input = /*#__PURE__*/_react.default.forwardRef((props, ref) => {
51
+ const {
52
+ min = undefined,
53
+ max = undefined,
54
+ to = undefined,
55
+ from = undefined,
56
+ enum: interval = undefined,
57
+ onChange = null,
58
+ allowNegative = true,
59
+ returnAsString = false,
60
+ textAlign = 'right',
61
+ children = null
62
+ } = props,
63
+ rest = _objectWithoutProperties(props, _excluded);
64
+ const numberInputRef = _react.default.useRef(null);
65
+ const {
66
+ value: maskedValue,
67
+ setValue: setMaskedValue,
68
+ unmaskedValue
69
+ } = (0, _reactImask.useIMask)({
70
+ mask: Number,
71
+ scale: 0,
72
+ min: !_lodash.default.isNil(min) ? min : allowNegative ? undefined : 0,
73
+ enum: interval,
74
+ max,
75
+ to,
76
+ from
77
+ }, {
78
+ ref: numberInputRef,
79
+ onAccept: (value, __, event) => {
80
+ const parsedValue = (0, _helpers2.convertToSafeNumber)(value, returnAsString);
81
+ onChange?.(_objectSpread(_objectSpread({}, event), {}, {
82
+ target: _objectSpread(_objectSpread({}, event?.target), {}, {
83
+ name: props?.name,
84
+ value: parsedValue
85
+ })
86
+ }));
87
+ }
88
+ });
89
+ _react.default.useEffect(() => {
90
+ const floatUnmaskedValue = Number(unmaskedValue || '0');
91
+ if (!_lodash.default.isNil(props?.value) && (!_lodash.default.isEqual(props?.value, floatUnmaskedValue) || _lodash.default.isEqual(props?.value, 0))) {
92
+ setMaskedValue(_lodash.default.toString(props?.value));
93
+ }
94
+ }, [props?.value]);
95
+ return /*#__PURE__*/_react.default.createElement(_2.TextField.Input, _extends({}, rest, {
96
+ ref: (0, _helpers.mergeRefs)(ref, numberInputRef),
97
+ type: "text",
98
+ inputMode: "numeric",
99
+ value: maskedValue,
100
+ textAlign: textAlign,
101
+ onChange: () => {}
102
+ }), children);
103
+ });
104
+ Input.displayName = 'NumberFieldInput';
@@ -0,0 +1,36 @@
1
+ import { T as TextFieldInputProps } from '../../index-4529c2ba.js';
2
+ import 'react';
3
+ import '../../@types/Align.js';
4
+ import '../../@types/ColorStyles.js';
5
+ import '../../@types/Position.js';
6
+ import '../../@types/PermissionAttr.js';
7
+ import '../slot/index.js';
8
+ import '../../tooltip/types.js';
9
+
10
+ type BaseInputProps = Omit<TextFieldInputProps, 'type' | 'max' | 'min' | 'enum'>;
11
+ type BaseMaskNumberInputProps = {
12
+ min?: number;
13
+ max?: number;
14
+ to?: number;
15
+ from?: number;
16
+ enum?: string[];
17
+ };
18
+ interface NumberFieldInputProps extends BaseInputProps, BaseMaskNumberInputProps {
19
+ allowNegative?: boolean;
20
+ returnAsString?: boolean;
21
+ }
22
+ interface DecimalFieldInputProps extends BaseInputProps, BaseMaskNumberInputProps {
23
+ scale?: number;
24
+ allowNegative?: boolean;
25
+ normalizeZeros?: boolean;
26
+ padFractionalZeros?: boolean;
27
+ }
28
+ interface CurrencyFieldInputProps extends BaseInputProps, BaseMaskNumberInputProps {
29
+ currencySymbol?: string;
30
+ scale?: number;
31
+ allowNegative?: boolean;
32
+ normalizeZeros?: boolean;
33
+ padFractionalZeros?: boolean;
34
+ }
35
+
36
+ export { BaseInputProps, BaseMaskNumberInputProps, CurrencyFieldInputProps, DecimalFieldInputProps, NumberFieldInputProps };
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -1,6 +1,6 @@
1
1
  import 'react';
2
2
  export { RadioFieldInputProps } from './types.js';
3
- export { I as Input } from '../../index-a0c1207e.js';
3
+ export { I as Input } from '../../index-35ba9ed8.js';
4
4
  import '../../@types/Size.js';
5
5
  import '../../@types/Align.js';
6
6
  import '../../@types/ColorStyles.js';
@@ -2,7 +2,7 @@ import 'react';
2
2
  export { LeftSlot, RightSlot } from '../slot/index.js';
3
3
  export { Item } from './item.js';
4
4
  export { SelectFieldInputProps } from './types.js';
5
- export { I as Input } from '../../index-a68cfaf7.js';
5
+ export { I as Input } from '../../index-474db0eb.js';
6
6
  import '../../@types/Align.js';
7
7
  import '../../@types/ColorStyles.js';
8
8
  import '../../tooltip/types.js';
@@ -159,8 +159,8 @@ const Input = exports.Input = /*#__PURE__*/_react.default.forwardRef((props, ref
159
159
  if (/*#__PURE__*/_react.default.isValidElement(childElement)) {
160
160
  const clonedChild = /*#__PURE__*/_react.default.cloneElement(childElement, {
161
161
  key: childElement.key ?? `slot-${index}`,
162
- disabled: isDisabled || isReadOnly,
163
- 'aria-disabled': isDisabled || isReadOnly
162
+ disabled: isDisabled,
163
+ 'aria-disabled': isDisabled
164
164
  });
165
165
  if (childElement.type === _slot.LeftSlot) left.push(clonedChild);
166
166
  if (childElement.type === _slot.RightSlot) right.push(clonedChild);
@@ -170,7 +170,7 @@ const Input = exports.Input = /*#__PURE__*/_react.default.forwardRef((props, ref
170
170
  leftSlotElements: left,
171
171
  rightSlotElements: right
172
172
  };
173
- }, [children, isDisabled, isReadOnly]);
173
+ }, [children, isDisabled]);
174
174
  const hasLeftSlotElements = Boolean(leftSlotElements?.length);
175
175
  const hasRightSlotElements = Boolean(rightSlotElements?.length);
176
176
  const handleCloseListBox = () => {
@@ -5,4 +5,4 @@ import '../../@types/Position.js';
5
5
  import '../../@types/PermissionAttr.js';
6
6
  export { LeftSlot, RightSlot } from '../slot/index.js';
7
7
  import '../../tooltip/types.js';
8
- export { I as Input, T as TextFieldInputProps } from '../../index-f6f0d3a8.js';
8
+ export { I as Input, T as TextFieldInputProps } from '../../index-4529c2ba.js';
@@ -81,8 +81,8 @@ const Input = exports.Input = /*#__PURE__*/_react.default.forwardRef((props, ref
81
81
  if (/*#__PURE__*/_react.default.isValidElement(childElement)) {
82
82
  const clonedChild = /*#__PURE__*/_react.default.cloneElement(childElement, {
83
83
  key: childElement.key ?? `slot-${index}`,
84
- disabled: isDisabled || isReadOnly,
85
- 'aria-disabled': isDisabled || isReadOnly
84
+ disabled: isDisabled,
85
+ 'aria-disabled': isDisabled
86
86
  });
87
87
  if (childElement.type === _slot.LeftSlot) left.push(clonedChild);
88
88
  if (childElement.type === _slot.RightSlot) right.push(clonedChild);
@@ -92,7 +92,7 @@ const Input = exports.Input = /*#__PURE__*/_react.default.forwardRef((props, ref
92
92
  leftSlotElements: left,
93
93
  rightSlotElements: right
94
94
  };
95
- }, [children, isDisabled, isReadOnly]);
95
+ }, [children, isDisabled]);
96
96
  const hasLeftSlotElements = Boolean(leftSlotElements?.length);
97
97
  const hasRightSlotElements = Boolean(rightSlotElements?.length);
98
98
  if (unvisible || hideContent) return null;
@@ -46,6 +46,7 @@ const Popover = _ref => {
46
46
  transparent: true,
47
47
  tabIndex: -1,
48
48
  boxShadow: false,
49
+ type: "button",
49
50
  iconAlign: "center",
50
51
  dropdownAlign: align,
51
52
  showIconDropdown: false,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "linear-react-components-ui",
3
- "version": "1.1.24-beta.2",
3
+ "version": "1.1.24-beta.3",
4
4
  "description": "Linear Sistemas ReactJs Components",
5
5
  "main": "lib/index.js",
6
6
  "module": "lib/index.cjs",
@@ -1,24 +0,0 @@
1
- import React__default from 'react';
2
- import { T as TextFieldInputProps } from './index-f6f0d3a8.js';
3
- import { FactoryOpts } from 'imask';
4
-
5
- interface MaskFieldProps extends TextFieldInputProps {
6
- maskOptions?: FactoryOpts;
7
- onAccept?: (value: string) => void;
8
- onComplete?: (value: string, maskRef: any, e?: InputEvent) => void;
9
- onChange?: (e: React__default.ChangeEvent<HTMLInputElement>) => void;
10
- autoCompleteMask?: string;
11
- value?: string;
12
- }
13
- declare const Input: React__default.ForwardRefExoticComponent<Pick<MaskFieldProps, "form" | "label" | "slot" | "style" | "title" | "pattern" | "key" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "className" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "hidden" | "id" | "lang" | "nonce" | "placeholder" | "spellCheck" | "tabIndex" | "translate" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "color" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "align" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "children" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onResize" | "onResizeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "customClass" | "permissionAttr" | "size" | "skeletonize" | "disabled" | "autoFocus" | "formAction" | "formEncType" | "formMethod" | "formNoValidate" | "formTarget" | "name" | "type" | "value" | "tooltip" | "tooltipWidth" | "tooltipPosition" | "checked" | "required" | "labelUppercase" | "hint" | "hintPosition" | "themePopover" | "popoverAlign" | "width" | "height" | "multiple" | "readOnly" | "list" | "step" | "maxLength" | "onComplete" | "textAlign" | "rounded" | "onDeniedActions" | "gridLayout" | "accept" | "autoComplete" | "max" | "min" | "src" | "alt" | "autoCompleteMask" | "errors" | "customClassLabel" | "customClassWrapper" | "customClassInputContainer" | "capture" | "crossOrigin" | "enterKeyHint" | "minLength" | "onAccept" | "maskOptions"> & React__default.RefAttributes<HTMLInputElement>>;
14
-
15
- declare const BaseMask_Input: typeof Input;
16
- type BaseMask_MaskFieldProps = MaskFieldProps;
17
- declare namespace BaseMask {
18
- export {
19
- BaseMask_Input as Input,
20
- BaseMask_MaskFieldProps as MaskFieldProps,
21
- };
22
- }
23
-
24
- export { BaseMask as B, Input as I, MaskFieldProps as M };