intelicoreact 1.2.51 → 1.2.53

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.
@@ -37,6 +37,11 @@ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (O
37
37
 
38
38
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
39
39
 
40
+ var checkFormat = function checkFormat(date, format) {
41
+ var momentObj = (0, _momentTimezone.default)(date, format);
42
+ return momentObj.isValid() ? momentObj.format(format) : null;
43
+ };
44
+
40
45
  var InputDateRange = function InputDateRange(props) {
41
46
  var _ref, _INTERVALS$actualValu;
42
47
 
@@ -61,15 +66,15 @@ var InputDateRange = function InputDateRange(props) {
61
66
  minDate = _props$minDate === void 0 ? null : _props$minDate,
62
67
  _props$maxDate = props.maxDate,
63
68
  maxDate = _props$maxDate === void 0 ? null : _props$maxDate,
64
- _props$format = props.format,
65
- format = _props$format === void 0 ? 'MM/DD/YYYY' : _props$format,
69
+ _props$minMaxDatePars = props.minMaxDateParseFormat,
70
+ minMaxDateParseFormat = _props$minMaxDatePars === void 0 ? 'MM/DD/YYYY' : _props$minMaxDatePars,
66
71
  isDontLimitFuture = props.isDontLimitFuture,
67
72
  isListTop = props.isListTop,
68
73
  isAltArrows = props.isAltArrows;
69
- var formatedMinDate = (0, _momentTimezone.default)(minDate).format(format) !== 'Invalid date' ? (0, _momentTimezone.default)(minDate).format(format) : null;
70
- var formatedMaxDate = (0, _momentTimezone.default)(maxDate).format(format) !== 'Invalid date' ? (0, _momentTimezone.default)(maxDate).format(format) : null;
71
- var momentMinDate = (0, _momentTimezone.default)(formatedMinDate, format).startOf('day');
72
- var momentMaxDate = (0, _momentTimezone.default)(formatedMaxDate, format).startOf('day');
74
+ var formatedMinDate = checkFormat(minDate, minMaxDateParseFormat);
75
+ var formatedMaxDate = checkFormat(maxDate, minMaxDateParseFormat);
76
+ var momentMinDate = (0, _momentTimezone.default)(formatedMinDate, minMaxDateParseFormat).startOf('day');
77
+ var momentMaxDate = (0, _momentTimezone.default)(formatedMaxDate, minMaxDateParseFormat).startOf('day');
73
78
  var actualValues = (0, _dependencies.getActualDateRange)(value);
74
79
 
75
80
  var _useToggle = (0, _dependencies.useToggle)(false),
@@ -97,14 +102,14 @@ var InputDateRange = function InputDateRange(props) {
97
102
 
98
103
  var formatedValue = _objectSpread(_objectSpread(_objectSpread({
99
104
  intervalKey: newValue.intervalKey,
100
- start: newValue.start ? (0, _momentTimezone.default)(newValue.start).format('YYYY-MM-DDTHH:mm') : newValue.start,
101
- end: newValue.end ? (0, _momentTimezone.default)(newValue.end).format('YYYY-MM-DDTHH:mm') : newValue.end
105
+ start: newValue.start ? (0, _momentTimezone.default)(newValue.start).format(_dependencies.MAIN_FORMAT) : newValue.start,
106
+ end: newValue.end ? (0, _momentTimezone.default)(newValue.end).format(_dependencies.MAIN_FORMAT) : newValue.end
102
107
  }, newValue.compare ? {
103
108
  compare: newValue.compare
104
109
  } : {}), newValue.startPrevDate ? {
105
- startPrevDate: (0, _momentTimezone.default)(newValue.startPrevDate).format('YYYY-MM-DDTHH:mm')
110
+ startPrevDate: (0, _momentTimezone.default)(newValue.startPrevDate).format(_dependencies.MAIN_FORMAT)
106
111
  } : {}), newValue.endPrevDate ? {
107
- endPrevDate: (0, _momentTimezone.default)(newValue.endPrevDate).format('YYYY-MM-DDTHH:mm')
112
+ endPrevDate: (0, _momentTimezone.default)(newValue.endPrevDate).format(_dependencies.MAIN_FORMAT)
108
113
  } : {});
109
114
 
110
115
  onChange(formatedValue);
@@ -122,8 +127,8 @@ var InputDateRange = function InputDateRange(props) {
122
127
  var start = actualValues.start,
123
128
  end = actualValues.end;
124
129
  if (!start || !end) return null;
125
- var startTime = (0, _momentTimezone.default)(start).format('HH:mm');
126
- var endTime = (0, _momentTimezone.default)(end).format('HH:mm');
130
+ var startTime = (0, _momentTimezone.default)(start).format(_dependencies.MAIN_TIME_FORMAT);
131
+ var endTime = (0, _momentTimezone.default)(end).format(_dependencies.MAIN_TIME_FORMAT);
127
132
  var firstPart = "".concat((0, _momentTimezone.default)(start).format('ll'), " ").concat(startTime !== '00:00' ? "(".concat(startTime, ")") : '');
128
133
  var secondPart = "".concat((endTime !== '00:00' ? (0, _momentTimezone.default)(end) : (0, _momentTimezone.default)(end).subtract(1, 'days')).format('ll'), " ").concat(endTime !== '00:00' ? "(".concat(endTime, ")") : '');
129
134
 
@@ -248,7 +253,6 @@ var InputDateRange = function InputDateRange(props) {
248
253
  onChange: handleChange,
249
254
  minDate: formatedMinDate,
250
255
  maxDate: formatedMaxDate,
251
- format: format,
252
256
  momentMinDate: momentMinDate,
253
257
  momentMaxDate: momentMaxDate,
254
258
  isDontLimitFuture: isDontLimitFuture,
@@ -38,6 +38,7 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
38
38
  var outsideScope = {
39
39
  handleHoverTimerId: null
40
40
  };
41
+ var DATE_INPUT_FORMAT = 'MM/DD/YYYY';
41
42
 
42
43
  var padTime = function padTime(time) {
43
44
  return "".concat(time.toString().padStart(2, '0'), ":00");
@@ -87,8 +88,8 @@ var Datepicker = function Datepicker(props) {
87
88
  setEndDate = _useState4[1];
88
89
 
89
90
  var dateInterval = getSelectedMode({
90
- start: startDate.format('YYYY-MM-DDTHH:mm'),
91
- end: endDate.format('YYYY-MM-DDTHH:mm')
91
+ start: startDate.format(_dependencies.MAIN_FORMAT),
92
+ end: endDate.format(_dependencies.MAIN_FORMAT)
92
93
  });
93
94
 
94
95
  var _useState5 = (0, _react.useState)(null),
@@ -165,7 +166,7 @@ var Datepicker = function Datepicker(props) {
165
166
  }, [startDate, endDate, isCompare]);
166
167
  var title = (0, _react.useMemo)(function () {
167
168
  if (isCompare && !isCompareHidden && startDate && endDate) {
168
- return "".concat((0, _momentTimezone.default)(startPrevDate).format('ll'), " (").concat((0, _momentTimezone.default)(startPrevDate).format('HH:mm'), ") - ").concat((0, _momentTimezone.default)(endPrevDate).format('ll'), " (").concat((0, _momentTimezone.default)(endPrevDate).format('HH:mm'), ")");
169
+ return "".concat((0, _momentTimezone.default)(startPrevDate).format('ll'), " (").concat((0, _momentTimezone.default)(startPrevDate).format(_dependencies.MAIN_TIME_FORMAT), ") - ").concat((0, _momentTimezone.default)(endPrevDate).format('ll'), " (").concat((0, _momentTimezone.default)(endPrevDate).format(_dependencies.MAIN_TIME_FORMAT), ")");
169
170
  } else return '';
170
171
  }, [startDate, endDate, isCompare]); // ********************
171
172
  // Methods
@@ -317,7 +318,7 @@ var Datepicker = function Datepicker(props) {
317
318
  };
318
319
 
319
320
  var processOverflow = function processOverflow(newDateAsString, valueForRollback, key) {
320
- var newDateAsMomentObj = (0, _momentTimezone.default)(newDateAsString, 'MM/DD/YYYY'); // console.log('processOverflow - newDateAsString - ', newDateAsString);
321
+ var newDateAsMomentObj = (0, _momentTimezone.default)(newDateAsString, DATE_INPUT_FORMAT); // console.log('processOverflow - newDateAsString - ', newDateAsString);
321
322
  // console.log('processOverflow - valueForRollback - ', valueForRollback);
322
323
  // console.log('----------');
323
324
  // console.log('processOverflow - minDate - ', minDate);
@@ -423,10 +424,10 @@ var Datepicker = function Datepicker(props) {
423
424
  disabled: !startDate || !endDate,
424
425
  onClick: function onClick() {
425
426
  return onChange({
426
- start: startDate,
427
- end: endDate,
428
- startPrevDate: startPrevDate,
429
- endPrevDate: endPrevDate,
427
+ start: (0, _momentTimezone.default)(startDate).format(_dependencies.MAIN_FORMAT),
428
+ end: (0, _momentTimezone.default)(endDate).format(_dependencies.MAIN_FORMAT),
429
+ startPrevDate: (0, _momentTimezone.default)(startPrevDate).format(_dependencies.MAIN_FORMAT),
430
+ endPrevDate: (0, _momentTimezone.default)(endPrevDate).format(_dependencies.MAIN_FORMAT),
430
431
  compare: isCompare
431
432
  });
432
433
  }
@@ -7,7 +7,7 @@ var _typeof = require("@babel/runtime/helpers/typeof");
7
7
  Object.defineProperty(exports, "__esModule", {
8
8
  value: true
9
9
  });
10
- exports.getActualDateRange = exports.CUSTOM_INTERVAL_KEY_TEXT = exports.CUSTOM_INTERVAL_KEY = exports.ALL_TIME_KEY = exports.INTERVALS = exports.useToggle = exports.useClickOutside = exports.getIsDateValid = void 0;
10
+ exports.getActualDateRange = exports.MAIN_TIME_FORMAT = exports.MAIN_DATE_FORMAT = exports.MAIN_FORMAT = exports.CUSTOM_INTERVAL_KEY_TEXT = exports.CUSTOM_INTERVAL_KEY = exports.ALL_TIME_KEY = exports.INTERVALS = exports.useToggle = exports.useClickOutside = exports.getIsDateValid = void 0;
11
11
 
12
12
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
13
13
 
@@ -237,6 +237,12 @@ var CUSTOM_INTERVAL_KEY = 'customDate';
237
237
  exports.CUSTOM_INTERVAL_KEY = CUSTOM_INTERVAL_KEY;
238
238
  var CUSTOM_INTERVAL_KEY_TEXT = 'Custom Date';
239
239
  exports.CUSTOM_INTERVAL_KEY_TEXT = CUSTOM_INTERVAL_KEY_TEXT;
240
+ var MAIN_FORMAT = 'YYYY-MM-DDTHH:mm';
241
+ exports.MAIN_FORMAT = MAIN_FORMAT;
242
+ var MAIN_DATE_FORMAT = 'YYYY-MM-DD';
243
+ exports.MAIN_DATE_FORMAT = MAIN_DATE_FORMAT;
244
+ var MAIN_TIME_FORMAT = 'HH:mm';
245
+ exports.MAIN_TIME_FORMAT = MAIN_TIME_FORMAT;
240
246
 
241
247
  var getActualDateRange = function getActualDateRange(inputDateRange) {
242
248
  var getActualIntervalKey = function getActualIntervalKey() {
@@ -270,8 +276,8 @@ var getActualDateRange = function getActualDateRange(inputDateRange) {
270
276
  endPrevDate: null
271
277
  };
272
278
  var actualValues = {
273
- start: (_INTERVALS$intervalKe = INTERVALS[intervalKey]) === null || _INTERVALS$intervalKe === void 0 ? void 0 : (_INTERVALS$intervalKe2 = _INTERVALS$intervalKe.start()) === null || _INTERVALS$intervalKe2 === void 0 ? void 0 : _INTERVALS$intervalKe2.format('YYYY-MM-DDTHH:mm'),
274
- end: (_INTERVALS$intervalKe3 = INTERVALS[intervalKey]) === null || _INTERVALS$intervalKe3 === void 0 ? void 0 : (_INTERVALS$intervalKe4 = _INTERVALS$intervalKe3.end()) === null || _INTERVALS$intervalKe4 === void 0 ? void 0 : _INTERVALS$intervalKe4.format('YYYY-MM-DDTHH:mm'),
279
+ start: (_INTERVALS$intervalKe = INTERVALS[intervalKey]) === null || _INTERVALS$intervalKe === void 0 ? void 0 : (_INTERVALS$intervalKe2 = _INTERVALS$intervalKe.start()) === null || _INTERVALS$intervalKe2 === void 0 ? void 0 : _INTERVALS$intervalKe2.format(MAIN_FORMAT),
280
+ end: (_INTERVALS$intervalKe3 = INTERVALS[intervalKey]) === null || _INTERVALS$intervalKe3 === void 0 ? void 0 : (_INTERVALS$intervalKe4 = _INTERVALS$intervalKe3.end()) === null || _INTERVALS$intervalKe4 === void 0 ? void 0 : _INTERVALS$intervalKe4.format(MAIN_FORMAT),
275
281
  compare: inputDateRange.compare
276
282
  };
277
283
 
@@ -9,18 +9,19 @@ exports.default = void 0;
9
9
 
10
10
  var _react = _interopRequireDefault(require("react"));
11
11
 
12
+ var _fieldValueFormatters = require("../../../Functions/fieldValueFormatters");
13
+
12
14
  var Price = function Price(_ref) {
13
15
  var value = _ref.value,
14
- _ref$unit = _ref.unit,
15
- unit = _ref$unit === void 0 ? '$' : _ref$unit,
16
- unitAfter = _ref.unitAfter,
16
+ currencyCode = _ref.currencyCode,
17
+ isSymbolAfter = _ref.isSymbolAfter,
17
18
  className = _ref.className;
18
- if (value === undefined || value === null) return null;
19
- var formatted = Number(value === null || value === void 0 ? void 0 : value.toString().replace(/[+*?$^(,)]/g, '')).toLocaleString('en-US');
19
+ if (value === undefined || value === null) return null; // const formatted = Number(value?.toString().replace(/[+*?$^(,)]/g, '')).toLocaleString('en-US');
20
+
20
21
  return /*#__PURE__*/_react.default.createElement("div", {
21
22
  "data-testid": 'test-price',
22
23
  className: "price ".concat(className)
23
- }, !unitAfter && unit, formatted, unitAfter && unit);
24
+ }, (0, _fieldValueFormatters.formatToPriceWithCurrency)(value, currencyCode, isSymbolAfter ? 'after' : 'before'));
24
25
  };
25
26
 
26
27
  var _default = Price;
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.formatToReplaceAllWhiteSpace = formatToReplaceAllWhiteSpace;
7
- exports.formatToHideValuePartially = exports.filterNumeric = exports.filterFloat = exports.formatToHex = exports.formatToLimitLength = exports.formatNumberValueToMask = exports.formatToCutOffDotAtTheEnd = exports.formatToOnlyASCIICodeText = exports.formatToPriceWithUSD = exports.formatToTwoDigitAfterDot = exports.formatToDollarSign = exports.formatToAddBitDepthPoints = exports.formatToRemoveComa = exports.formatOnlyNumbers = exports.intlNumbersFormatter = exports.getSafelyValue = void 0;
7
+ exports.formatToHideValuePartially = exports.filterNumeric = exports.filterFloat = exports.formatToHex = exports.formatToLimitLength = exports.formatNumberValueToMask = exports.formatToCutOffDotAtTheEnd = exports.formatToOnlyASCIICodeText = exports.formatToPriceWithCurrency = exports.formatToPriceWithUSD = exports.formatToTwoDigitAfterDot = exports.formatToDollarSign = exports.formatToAddBitDepthPoints = exports.formatToRemoveComa = exports.formatOnlyNumbers = exports.intlNumbersFormatter = exports.getSafelyValue = void 0;
8
8
 
9
9
  // The first word "format" in the function name means a
10
10
  //logic in which the function transforms the incoming value in any case.
@@ -79,10 +79,23 @@ var intlNumbersFormatter = function intlNumbersFormatter(inputValue) {
79
79
 
80
80
  var quantity = fractionDigits.quantity,
81
81
  _fractionDigits$isRen = fractionDigits.isRenderAlways,
82
- isRenderAlways = _fractionDigits$isRen === void 0 ? false : _fractionDigits$isRen;
82
+ isRenderAlways = _fractionDigits$isRen === void 0 ? false : _fractionDigits$isRen,
83
+ inputMinimumFractionDigits = fractionDigits.minimumFractionDigits,
84
+ inputMaximumFractionDigits = fractionDigits.maximumFractionDigits,
85
+ conditionallyMinimumFractionDigits = fractionDigits.conditionallyMinimumFractionDigits;
83
86
  var dotIndex = inputValue === null || inputValue === void 0 ? void 0 : inputValue.indexOf('.');
84
87
  var afterDot = dotIndex !== -1 ? inputValue.slice(dotIndex + 1) : '';
85
- var minimumFractionDigits = afterDot && lastSym !== '.' ? inputValue.slice(dotIndex).length - 1 : isRenderAlways ? quantity : 0;
88
+
89
+ var minimumFractionDigits = function () {
90
+ if (typeof inputMinimumFractionDigits === 'number') return inputMinimumFractionDigits;
91
+
92
+ if (typeof conditionallyMinimumFractionDigits === 'number') {
93
+ return afterDot && lastSym !== '.' ? conditionallyMinimumFractionDigits : 0;
94
+ }
95
+
96
+ return afterDot && lastSym !== '.' ? inputValue.slice(dotIndex).length - 1 : isRenderAlways ? quantity : 0;
97
+ }();
98
+
86
99
  var priceSettings = {
87
100
  useGrouping: useGrouping,
88
101
  //группировка разрядов
@@ -94,8 +107,8 @@ var intlNumbersFormatter = function intlNumbersFormatter(inputValue) {
94
107
  //валюта в виде символа
95
108
  //минимально не надо отображать центы, если их нет, иначе всегда будет .00
96
109
  minimumFractionDigits: minimumFractionDigits,
97
- maximumFractionDigits: quantity //максимально отображать 2 цифры после запятой, если центы всё же есть
98
-
110
+ //максимально отображать 2 цифры после запятой, если центы всё же есть
111
+ maximumFractionDigits: inputMaximumFractionDigits !== null && inputMaximumFractionDigits !== void 0 ? inputMaximumFractionDigits : quantity
99
112
  };
100
113
  var output;
101
114
 
@@ -165,14 +178,33 @@ var formatToPriceWithUSD = function formatToPriceWithUSD(value) {
165
178
  currencyType: 'USD'
166
179
  },
167
180
  fractionDigits: {
168
- quantity: 2
181
+ quantity: 2,
182
+ conditionallyMinimumFractionDigits: 2
169
183
  }
170
184
  });
171
- }; // eslint-disable-next-line no-control-regex
185
+ }; //! symbolPosition временно не реализовано
172
186
 
173
187
 
174
188
  exports.formatToPriceWithUSD = formatToPriceWithUSD;
175
189
 
190
+ var formatToPriceWithCurrency = function formatToPriceWithCurrency(value, currencyCode) {
191
+ var symbolPosition = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'before';
192
+ if (isNaN(Number(value))) return value;
193
+ return intlNumbersFormatter(getSafelyValue(value), {
194
+ withSymbol: 'currency',
195
+ currency: {
196
+ currencyType: currencyCode
197
+ },
198
+ fractionDigits: {
199
+ quantity: 2,
200
+ conditionallyMinimumFractionDigits: 2
201
+ }
202
+ });
203
+ }; // eslint-disable-next-line no-control-regex
204
+
205
+
206
+ exports.formatToPriceWithCurrency = formatToPriceWithCurrency;
207
+
176
208
  var formatToOnlyASCIICodeText = function formatToOnlyASCIICodeText(text) {
177
209
  return getSafelyValue(text).replace(/[^\x00-\x7F]+/g, '');
178
210
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "intelicoreact",
3
- "version": "1.2.51",
3
+ "version": "1.2.53",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "files": [