intelicoreact 2.0.7 → 2.0.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/charts/package.json +5 -0
- package/dist/Atomic/FormElements/Input/Input.d.ts +1 -1
- package/dist/Atomic/FormElements/Input/types.d.ts +0 -5
- package/dist/Atomic/FormElements/InputMask3/InputMask3.interface.d.ts +0 -3
- package/dist/Atomic/FormElements/TagListToDropdown/TagListToDropdown.interface.d.ts +1 -1
- package/dist/Atomic/FormElements/TagsDropdown/TagsDropdown.interface.d.ts +4 -4
- package/dist/Atomic/UI/Alert/Alert.interface.d.ts +0 -2
- package/dist/Functions/sdk/runtime-sdk/transport.d.ts +2 -2
- package/dist/charts.cjs +927 -0
- package/dist/charts.cjs.map +7 -0
- package/dist/charts.d.ts +7 -0
- package/dist/charts.js +911 -0
- package/dist/charts.js.map +7 -0
- package/dist/form.cjs +1498 -1933
- package/dist/form.cjs.map +4 -4
- package/dist/form.js +1114 -1549
- package/dist/form.js.map +4 -4
- package/dist/hooks.cjs +8 -324
- package/dist/hooks.cjs.map +4 -4
- package/dist/hooks.js +8 -324
- package/dist/hooks.js.map +4 -4
- package/dist/index.cjs +2507 -9293
- package/dist/index.cjs.map +4 -4
- package/dist/index.js +2059 -8861
- package/dist/index.js.map +4 -4
- package/dist/layout.cjs +207 -6308
- package/dist/layout.cjs.map +4 -4
- package/dist/layout.js +202 -6303
- package/dist/layout.js.map +4 -4
- package/dist/presets.cjs +0 -643
- package/dist/presets.cjs.map +4 -4
- package/dist/presets.js +0 -633
- package/dist/presets.js.map +4 -4
- package/dist/ui.cjs +711 -7854
- package/dist/ui.cjs.map +4 -4
- package/dist/ui.d.ts +0 -5
- package/dist/ui.js +722 -7881
- package/dist/ui.js.map +4 -4
- package/dist/utils.cjs +4 -51
- package/dist/utils.cjs.map +3 -3
- package/dist/utils.js +4 -51
- package/dist/utils.js.map +3 -3
- package/package.json +16 -2
- package/dist/Atomic/FormElements/Dropdown/components/DropdownLoader.d.ts +0 -4
- package/dist/Atomic/FormElements/FormattedRawSSN/FormattedRawSSN_old.d.ts +0 -11
- package/dist/Atomic/FormElements/NumericInput/NumericInput.d.ts +0 -36
- package/dist/Atomic/FormElements/RangeCalendar/RangeCalendar.d.ts +0 -2
- package/dist/Atomic/FormElements/RangeSlider/RangeSlider.d.ts +0 -19
- package/dist/Atomic/FormElements/SwitcherTagsDropdown/partial/States.d.ts +0 -5
- package/dist/Atomic/FormElements/VariantsListRadio/VariantsListRadio.d.ts +0 -17
- package/dist/Atomic/FormElements/VariantsListRadio/partials/VariantsListRadioItem.d.ts +0 -12
- package/dist/Atomic/FormElements/WidgetPseudoTable/WidgetPseudoTable.d.ts +0 -2
- package/dist/Atomic/FormElements/WidgetPseudoTable/partial/constructor.d.ts +0 -23
- package/dist/Atomic/FormElements/WidgetWithSwitchableRows/WidgetWithSwitchableRows.d.ts +0 -2
- package/dist/Atomic/FormElements/WidgetWithSwitchableRows/partial/constructor.d.ts +0 -38
- package/dist/Atomic/UI/AccordionTable/AccordionTable.d.ts +0 -10
- package/dist/Atomic/UI/AccordionText/AccordionText.d.ts +0 -8
- package/dist/Atomic/UI/Chart/partial/Chart.constants.d.ts +0 -78
- package/dist/Atomic/UI/Chart/partial/datasetSetters.d.ts +0 -13
- package/dist/Atomic/UI/Chart/partial/optionsConstructor.d.ts +0 -145
- package/dist/Atomic/UI/Chart/partial/optionsSetters.d.ts +0 -4
- package/dist/Atomic/UI/CircleProgressBar/CircleProgressBar.d.ts +0 -14
- package/dist/Atomic/UI/DynamicIcon/DynamicIcon.d.ts +0 -4
- package/dist/Atomic/UI/DynamicIcon/DynamicIcon.interface.d.ts +0 -6
- package/dist/Atomic/UI/DynamicIcon/index.d.ts +0 -3
- package/dist/Atomic/UI/ExampleChartIntegration/ExampleChartIntegration.d.ts +0 -2
- package/dist/Atomic/UI/ExampleChartIntegration/partial/utils.d.ts +0 -4
- package/dist/Atomic/UI/MonoAccordion/MonoAccordion._test.d.ts +0 -1
- package/dist/Atomic/UI/MonoAccordion/MonoAccordion.d.ts +0 -12
- package/dist/Atomic/UI/PieChart/PieChart.d.ts +0 -8
- package/dist/Atomic/UI/Table/Partials/TdCell.d.ts +0 -13
- package/dist/Atomic/UI/Table/Partials/TdHeader.d.ts +0 -5
- package/dist/Atomic/UI/Table/Partials/TdRow.d.ts +0 -17
- package/dist/Atomic/UI/Table/Partials/TdTitle.d.ts +0 -5
- package/dist/Atomic/UI/Table/Table.d.ts +0 -9
- package/dist/Atomic/UI/Table/TdTypes/TdActions.d.ts +0 -6
- package/dist/Atomic/UI/Table/TdTypes/TdPriority.d.ts +0 -6
- package/dist/Atomic/UI/Table/TdTypes/TdRange.d.ts +0 -4
- package/dist/Atomic/UI/Table/TdTypes/TdWeight.d.ts +0 -7
- package/dist/Atomic/UI/WizardStepper/constructor.d.ts +0 -51
- package/dist/Classes/AbortableFetch.d.ts +0 -43
- package/dist/Classes/AnimatedHandler.d.ts +0 -4
- package/dist/Classes/RESTAPI/index.d.ts +0 -9
- package/dist/Classes/RESTAPI/partials/AbortableFetch.d.ts +0 -43
- package/dist/Classes/RESTAPI/partials/ApiBase.d.ts +0 -10
- package/dist/Classes/RESTAPI/partials/ApiRequestCreators.d.ts +0 -9
- package/dist/Classes/RESTAPI/partials/ApiUtils.d.ts +0 -12
- package/dist/Classes/RESTAPI/partials/CredentialsProcessing.d.ts +0 -24
- package/dist/Classes/RESTAPI/partials/Utils.d.ts +0 -4
- package/dist/Classes/RESTAPI/partials/_utils.d.ts +0 -9
- package/dist/Constants/index.constants.d.ts +0 -20
- package/dist/Functions/Portal.d.ts +0 -6
- package/dist/Functions/customEventListener.d.ts +0 -27
- package/dist/Functions/dateTime.d.ts +0 -95
- package/dist/Functions/fieldValueFormatters.d.ts +0 -19
- package/dist/Functions/hooks/useFormFieldsChangesManager.d.ts +0 -15
- package/dist/Functions/locale/createTranslator.d.ts +0 -3
- package/dist/Functions/operations.d.ts +0 -1
- package/dist/Functions/presets/inputMaskPresets.d.ts +0 -136
- package/dist/Functions/presets/inputPresets.d.ts +0 -16
- package/dist/Functions/presets/mobileKeyboardTypesPresets.d.ts +0 -17
- package/dist/Functions/schemas.d.ts +0 -3
- package/dist/Functions/useBodyScrollLock.d.ts +0 -2
- package/dist/Functions/useClickOutside.d.ts +0 -1
- package/dist/Functions/useDebounce.d.ts +0 -4
- package/dist/Functions/useFieldFocus.d.ts +0 -7
- package/dist/Functions/useFormTools/form-drivers/ArrayWithObjects.d.ts +0 -15
- package/dist/Functions/useFormTools/form-drivers/ObjectWithIterableObjects.d.ts +0 -12
- package/dist/Functions/useFormTools/form-drivers/ObjectWithNamedKeyObjects.d.ts +0 -15
- package/dist/Functions/useFormTools/functions/General.d.ts +0 -15
- package/dist/Functions/useFormTools/functions/RenderFields.d.ts +0 -7
- package/dist/Functions/useFormTools/functions/usePrevious.d.ts +0 -2
- package/dist/Functions/useFormTools/index.d.ts +0 -86
- package/dist/Functions/useInputHighlightError.d.ts +0 -12
- package/dist/Functions/useLocalStorage.d.ts +0 -2
- package/dist/Functions/useLocationParams.d.ts +0 -1
- package/dist/Functions/useMediaQuery.d.ts +0 -2
- package/dist/Functions/useMetaInfo.d.ts +0 -8
- package/dist/Functions/useMouseUpOutside.d.ts +0 -1
- package/dist/Functions/useOnlineStatus.d.ts +0 -2
- package/dist/Functions/usePasswordChecker.d.ts +0 -7
- package/dist/Functions/usePrevious.d.ts +0 -2
- package/dist/Functions/useResize.d.ts +0 -3
- package/dist/Functions/useScrollTo.d.ts +0 -2
- package/dist/Functions/useToggle.d.ts +0 -7
- package/dist/Functions/utils.d.ts +0 -40
- package/dist/Langs.d.ts +0 -179
- package/dist/Molecular/FormWithDependOn/FormWithDependOn.d.ts +0 -3
- package/dist/Molecular/FormWithDependOn/partials/_utils.d.ts +0 -8
package/dist/hooks.js
CHANGED
|
@@ -223,6 +223,10 @@ function parseAndFormatDate(value, outputFormat = DATETIME_FORMATS.INPUT_DATE_FO
|
|
|
223
223
|
return value;
|
|
224
224
|
}
|
|
225
225
|
|
|
226
|
+
// src/Functions/utils.js
|
|
227
|
+
import { useEffect } from "react";
|
|
228
|
+
import moment2 from "moment-timezone";
|
|
229
|
+
|
|
226
230
|
// src/Constants/index.constants.js
|
|
227
231
|
var KEYBOARD_SERVICE_KEYS = [
|
|
228
232
|
"Escape",
|
|
@@ -264,44 +268,8 @@ var KEYBOARD_SERVICE_KEYS = [
|
|
|
264
268
|
"ScrollLock",
|
|
265
269
|
"Pause"
|
|
266
270
|
];
|
|
267
|
-
var MAX_PHONE_LENGTH = 10;
|
|
268
|
-
var MAX_NAME_LENGTH = 128;
|
|
269
|
-
var DEFAULT_DATE_MASK_NO_VALUE_SYMBOL = "_";
|
|
270
|
-
var DEFAULT_COLORS = [
|
|
271
|
-
"#D9C1FF",
|
|
272
|
-
"#FFBAF0",
|
|
273
|
-
"#FFB8CE",
|
|
274
|
-
"#FFC3A2",
|
|
275
|
-
"#FFDB7C",
|
|
276
|
-
"#F9F871",
|
|
277
|
-
"#C3FCF1",
|
|
278
|
-
"#F6F2CB",
|
|
279
|
-
"#E0F8D1",
|
|
280
|
-
"#B1DFFB",
|
|
281
|
-
"#8DECFE",
|
|
282
|
-
"#76F7ED",
|
|
283
|
-
"#8AFEC8"
|
|
284
|
-
];
|
|
285
|
-
var KEYBOARD_KEY_CODES = {
|
|
286
|
-
Backspace: 8,
|
|
287
|
-
Delete: 46,
|
|
288
|
-
ARROW_LEFT: 37,
|
|
289
|
-
ARROW_RIGHT: 39
|
|
290
|
-
};
|
|
291
|
-
var OS = {
|
|
292
|
-
iOS: "iOS",
|
|
293
|
-
Android: "Android",
|
|
294
|
-
WP: "Windows Phone",
|
|
295
|
-
Linux: "Linux",
|
|
296
|
-
Windows: "Windows",
|
|
297
|
-
MacOS: "MacOS",
|
|
298
|
-
Unknown: "unknown"
|
|
299
|
-
};
|
|
300
271
|
|
|
301
272
|
// src/Functions/utils.js
|
|
302
|
-
import { useEffect } from "react";
|
|
303
|
-
import moment2 from "moment-timezone";
|
|
304
|
-
var uuid = () => Date.now().toString(36) + Math.random().toString(36).substring(2);
|
|
305
273
|
var getIsOnlyAnObject = (input) => {
|
|
306
274
|
return typeof input === "object" && // "отбивает" примитивы и функции
|
|
307
275
|
input instanceof Object && // "отбивает" null
|
|
@@ -309,304 +277,18 @@ var getIsOnlyAnObject = (input) => {
|
|
|
309
277
|
!(input instanceof Set) && // "отбивает" сеты
|
|
310
278
|
!(input instanceof Map);
|
|
311
279
|
};
|
|
312
|
-
var handleObjectChange = (updateObject, updateFunction) => (data, prop = "", isNumber) => {
|
|
313
|
-
let value;
|
|
314
|
-
if (data?.target) {
|
|
315
|
-
value = data.target.type === "checkbox" ? data.target.checked : data.target.value;
|
|
316
|
-
} else value = data;
|
|
317
|
-
value = isNumber ? Number(value) : value;
|
|
318
|
-
const props = prop.split(".");
|
|
319
|
-
const currentObject = props.reduce((res, chapter, index) => {
|
|
320
|
-
if (props.length !== index + 1) res = res[chapter];
|
|
321
|
-
return res;
|
|
322
|
-
}, updateObject);
|
|
323
|
-
currentObject[props.pop()] = value;
|
|
324
|
-
updateFunction();
|
|
325
|
-
};
|
|
326
|
-
var useOutsideToggle = (ref, setOut, open) => {
|
|
327
|
-
function handleClickOutside(event) {
|
|
328
|
-
if (ref.current && !ref.current.contains(event.target)) {
|
|
329
|
-
setOut(open);
|
|
330
|
-
}
|
|
331
|
-
}
|
|
332
|
-
useEffect(() => {
|
|
333
|
-
document.addEventListener("mouseup", handleClickOutside);
|
|
334
|
-
return () => {
|
|
335
|
-
document.removeEventListener("mouseup", handleClickOutside);
|
|
336
|
-
};
|
|
337
|
-
}, [ref]);
|
|
338
|
-
};
|
|
339
280
|
var clone = (input) => {
|
|
340
281
|
if (input === null || typeof input !== "object") return input;
|
|
341
282
|
const data = input instanceof Array ? [] : {};
|
|
342
283
|
for (const i in input) data[i] = clone(input[i]);
|
|
343
284
|
return data;
|
|
344
285
|
};
|
|
345
|
-
var getResponseClone = async (res) => await (typeof res?.clone === "function" ? res.clone() : clone(res));
|
|
346
|
-
function transformUTCTimeToLocal(date, format = "YYYY-MM-DD HH:mm:ss") {
|
|
347
|
-
if (!date) return;
|
|
348
|
-
const utcDate = moment2.utc(date).toDate();
|
|
349
|
-
return moment2(utcDate, format).local().format(format);
|
|
350
|
-
}
|
|
351
|
-
function transformLocalTimeToUTC(date, format = "YYYY-MM-DD HH:mm:ss") {
|
|
352
|
-
if (!date) return;
|
|
353
|
-
return moment2(date, format).utc().format(format);
|
|
354
|
-
}
|
|
355
|
-
function transformUTCHoursToLocal(time, format = "HH:mm:ss") {
|
|
356
|
-
if (!time) return;
|
|
357
|
-
const splitedTime = time.split(":");
|
|
358
|
-
const offset = moment2().utcOffset();
|
|
359
|
-
let HH = Number(splitedTime[0]);
|
|
360
|
-
let mm = Number(splitedTime[1]);
|
|
361
|
-
const ss = splitedTime[2];
|
|
362
|
-
mm = mm + offset;
|
|
363
|
-
while (mm > 59) {
|
|
364
|
-
mm -= 60;
|
|
365
|
-
HH += 1;
|
|
366
|
-
}
|
|
367
|
-
if (HH > 23) HH -= 24;
|
|
368
|
-
while (mm < 0) {
|
|
369
|
-
mm += 60;
|
|
370
|
-
HH -= 1;
|
|
371
|
-
}
|
|
372
|
-
if (HH < 0) HH += 24;
|
|
373
|
-
return `${HH}:${mm}:${ss}`;
|
|
374
|
-
}
|
|
375
|
-
function transformDateOrTimeOrTogetherToFormat(data, outputFormat = "HH:mm", additional) {
|
|
376
|
-
const ERROR_VALUE = "Invalid date";
|
|
377
|
-
const ERROR_MESSGE = `Invalid input data for ${outputFormat} format`;
|
|
378
|
-
const { parseFormat, isReturnAsMomentInstance } = getIsOnlyAnObject(
|
|
379
|
-
additional
|
|
380
|
-
) ? additional : {};
|
|
381
|
-
if (typeof data !== "string" && typeof data !== "number") {
|
|
382
|
-
return isReturnAsMomentInstance ? moment2("error") : ERROR_MESSGE;
|
|
383
|
-
}
|
|
384
|
-
const momentArgs = [
|
|
385
|
-
data,
|
|
386
|
-
...!Number.isNaN(Number(data)) || typeof parseFormat === "string" ? [] : [parseFormat]
|
|
387
|
-
];
|
|
388
|
-
const momentInstance = (() => {
|
|
389
|
-
let instance = moment2(...momentArgs);
|
|
390
|
-
if (instance.format(outputFormat) !== ERROR_VALUE) return instance;
|
|
391
|
-
else if (/^\d\d.\d\d/.test(data)) {
|
|
392
|
-
instance = moment2();
|
|
393
|
-
const symbols = data.split("");
|
|
394
|
-
const timeArr = symbols.reduce(
|
|
395
|
-
(acc, symbol, idx) => {
|
|
396
|
-
if (Number.isNaN(Number(symbol))) {
|
|
397
|
-
if (acc.group) acc.result.push(acc.group);
|
|
398
|
-
acc.group = "";
|
|
399
|
-
} else acc.group = `${acc.group}${symbol}`;
|
|
400
|
-
if (idx === symbols.length - 1 && acc.group)
|
|
401
|
-
acc.result.push(acc.group);
|
|
402
|
-
return acc;
|
|
403
|
-
},
|
|
404
|
-
{ result: [], group: "" }
|
|
405
|
-
).result.reverse();
|
|
406
|
-
instance.hours(Number(timeArr.pop()));
|
|
407
|
-
instance.minutes(Number(timeArr.pop()));
|
|
408
|
-
instance.seconds(timeArr.length ? Number(timeArr.pop()) : 0);
|
|
409
|
-
instance.milliseconds(timeArr.length ? Number(timeArr.pop()) : 0);
|
|
410
|
-
} else instance = moment2("error");
|
|
411
|
-
return instance;
|
|
412
|
-
})();
|
|
413
|
-
if (isReturnAsMomentInstance) return momentInstance;
|
|
414
|
-
const output = momentInstance.format(outputFormat);
|
|
415
|
-
return output === ERROR_VALUE ? ERROR_MESSGE : output;
|
|
416
|
-
}
|
|
417
|
-
function transformDateOrTimeOrTogetherToFormattedLocal(data, outputFormat = "HH:mm", additional) {
|
|
418
|
-
const ERROR_VALUE = "Invalid date";
|
|
419
|
-
const ERROR_MESSGE = `Invalid input data for ${outputFormat} format`;
|
|
420
|
-
if (additional && !getIsOnlyAnObject(additional)) {
|
|
421
|
-
throw new Error(
|
|
422
|
-
"Bad additional [transformDateOrTimeOrTogetherToFormattedLocal]"
|
|
423
|
-
);
|
|
424
|
-
}
|
|
425
|
-
const compositeAdditional = {
|
|
426
|
-
...additional || {},
|
|
427
|
-
isReturnAsMomentInstance: true
|
|
428
|
-
};
|
|
429
|
-
const date = transformDateOrTimeOrTogetherToFormat(
|
|
430
|
-
data,
|
|
431
|
-
outputFormat,
|
|
432
|
-
compositeAdditional
|
|
433
|
-
);
|
|
434
|
-
const dateWithLocale = date.add(moment2().utcOffset(), "minutes");
|
|
435
|
-
const output = dateWithLocale.format(outputFormat);
|
|
436
|
-
return output === ERROR_VALUE ? ERROR_MESSGE : output;
|
|
437
|
-
}
|
|
438
|
-
var omitKeys = (obj = {}, keys = []) => keys.reduce((acc, key) => {
|
|
439
|
-
const { [key]: omit, ...rest } = acc;
|
|
440
|
-
return rest;
|
|
441
|
-
}, obj);
|
|
442
|
-
var logout = () => {
|
|
443
|
-
window.localStorage.removeItem("accessToken");
|
|
444
|
-
window.localStorage.removeItem("tokenExpires");
|
|
445
|
-
window.location.reload();
|
|
446
|
-
};
|
|
447
|
-
var getStyles = (el, prop) => {
|
|
448
|
-
if (!el) return null;
|
|
449
|
-
if (!prop) return window.getComputedStyle(el);
|
|
450
|
-
return window.getComputedStyle(el).getPropertyValue(prop);
|
|
451
|
-
};
|
|
452
|
-
var getColorById = (id, colors) => {
|
|
453
|
-
if (!id) return "#FF7D00";
|
|
454
|
-
const idToArr = Array.from(id);
|
|
455
|
-
const colorsArr = colors && colors.length > 0 ? colors : DEFAULT_COLORS;
|
|
456
|
-
let number = idToArr.reduce((acc, item) => {
|
|
457
|
-
if (Number(item)) {
|
|
458
|
-
return acc + Number(item);
|
|
459
|
-
}
|
|
460
|
-
return acc;
|
|
461
|
-
}, 0);
|
|
462
|
-
while (number >= colorsArr.length) {
|
|
463
|
-
number -= colorsArr.length;
|
|
464
|
-
}
|
|
465
|
-
return colorsArr[number];
|
|
466
|
-
};
|
|
467
|
-
var debounce = (fn, ms) => {
|
|
468
|
-
let id = null;
|
|
469
|
-
return (...args) => {
|
|
470
|
-
clearTimeout(id);
|
|
471
|
-
id = setTimeout(() => {
|
|
472
|
-
clearTimeout(id);
|
|
473
|
-
fn(...args);
|
|
474
|
-
}, ms);
|
|
475
|
-
};
|
|
476
|
-
};
|
|
477
|
-
var throttle = (fn, ms) => {
|
|
478
|
-
let id = null;
|
|
479
|
-
return (...args) => {
|
|
480
|
-
if (id) return;
|
|
481
|
-
fn(...args);
|
|
482
|
-
id = setTimeout(() => {
|
|
483
|
-
clearTimeout(id);
|
|
484
|
-
id = null;
|
|
485
|
-
}, ms);
|
|
486
|
-
};
|
|
487
|
-
};
|
|
488
|
-
var addBitDepthPoints = (value, step = 3) => {
|
|
489
|
-
const isFraction = value?.includes(".");
|
|
490
|
-
const valueBeforeDot = isFraction ? value?.slice(0, value?.indexOf(".")) : value;
|
|
491
|
-
const intPart = valueBeforeDot.split("").reverse().reduce(
|
|
492
|
-
(acc, item, idx) => idx % step === 0 && idx !== 0 ? [...acc, ",", item] : [...acc, item],
|
|
493
|
-
[]
|
|
494
|
-
).reverse().join("");
|
|
495
|
-
return isFraction ? intPart + value?.slice(value?.indexOf(".")) : intPart;
|
|
496
|
-
};
|
|
497
|
-
var changeMeta = (key, items = []) => {
|
|
498
|
-
const defaultMeta = items.find((i) => i.key === "default");
|
|
499
|
-
if (key) {
|
|
500
|
-
const item = items.find((i) => i.key === key);
|
|
501
|
-
document.title = item?.title ?? defaultMeta?.title;
|
|
502
|
-
document.querySelector('meta[name="description"]').setAttribute("content", item?.description ?? defaultMeta?.description);
|
|
503
|
-
}
|
|
504
|
-
};
|
|
505
|
-
var firstLetterCapital = (str) => typeof str === "string" ? `${str.charAt(0).toUpperCase()}${str.slice(1)}` : str;
|
|
506
|
-
var capitalized = firstLetterCapital;
|
|
507
|
-
var checkedRef = (ref) => ref ? typeof ref === "function" ? (node) => ref(node) : ref : null;
|
|
508
|
-
function downloadEmulation(data, filename, type = "image/*") {
|
|
509
|
-
const file = new Blob([data], { type });
|
|
510
|
-
if (window.navigator.msSaveOrOpenBlob)
|
|
511
|
-
window.navigator.msSaveOrOpenBlob(file, filename);
|
|
512
|
-
else {
|
|
513
|
-
const a = document.createElement("a"), url = URL.createObjectURL(file);
|
|
514
|
-
a.href = url;
|
|
515
|
-
a.download = filename;
|
|
516
|
-
document.body.appendChild(a);
|
|
517
|
-
a.click();
|
|
518
|
-
setTimeout(() => {
|
|
519
|
-
document.body.removeChild(a);
|
|
520
|
-
window.URL.revokeObjectURL(url);
|
|
521
|
-
}, 0);
|
|
522
|
-
}
|
|
523
|
-
}
|
|
524
|
-
var downloadFile = async ({ url, name, type = null }) => {
|
|
525
|
-
const response = await fetch(url).then(async (res) => ({
|
|
526
|
-
data: await res.blob(),
|
|
527
|
-
type: type ?? res.headers.get("content-type")
|
|
528
|
-
}));
|
|
529
|
-
downloadEmulation(response.data, name, response.type);
|
|
530
|
-
};
|
|
531
|
-
var compare = (first, second, keys = []) => {
|
|
532
|
-
if (typeof first !== typeof second) return false;
|
|
533
|
-
if (Array.isArray(first) !== Array.isArray(second)) return false;
|
|
534
|
-
if (!(first instanceof Object)) return first === second;
|
|
535
|
-
const getComparationStructure = (data) => {
|
|
536
|
-
if (typeof data === "function") return data.toString();
|
|
537
|
-
if (!(data instanceof Object)) return data;
|
|
538
|
-
return Object.entries(data).sort((a, b) => a[0].localeCompare(b[0])).map(([key, value]) => [key, getComparationStructure(data[key])]);
|
|
539
|
-
};
|
|
540
|
-
const structureForComparingOfFirst = getComparationStructure(first);
|
|
541
|
-
const structureForComparingOfSecond = getComparationStructure(second);
|
|
542
|
-
return JSON.stringify(structureForComparingOfFirst) === JSON.stringify(structureForComparingOfSecond);
|
|
543
|
-
};
|
|
544
|
-
var setCarretToEnd = (input) => {
|
|
545
|
-
setTimeout(() => {
|
|
546
|
-
const tmp = input.value;
|
|
547
|
-
input.value = "";
|
|
548
|
-
input.value = tmp;
|
|
549
|
-
}, 10);
|
|
550
|
-
};
|
|
551
|
-
var compareAlphabetical = (a, b, key = "label") => {
|
|
552
|
-
let item1 = a?.[key];
|
|
553
|
-
let item2 = b?.[key];
|
|
554
|
-
if (typeof item1 !== "string" || typeof item2 !== "string") return 0;
|
|
555
|
-
item1 = item1?.toLowerCase();
|
|
556
|
-
item2 = item2?.toLowerCase();
|
|
557
|
-
if (item1 < item2) {
|
|
558
|
-
return -1;
|
|
559
|
-
}
|
|
560
|
-
if (item1 > item2) {
|
|
561
|
-
return 1;
|
|
562
|
-
}
|
|
563
|
-
return 0;
|
|
564
|
-
};
|
|
565
|
-
var getBase64 = (file) => {
|
|
566
|
-
if (file) {
|
|
567
|
-
return new Promise(function(resolve, reject) {
|
|
568
|
-
const reader = new FileReader();
|
|
569
|
-
reader.readAsDataURL(file);
|
|
570
|
-
reader.onload = () => resolve(reader.result);
|
|
571
|
-
reader.onerror = (error) => reject("Error: ", error);
|
|
572
|
-
});
|
|
573
|
-
}
|
|
574
|
-
};
|
|
575
|
-
var renderFileSize = (bytes, decimals = 2) => {
|
|
576
|
-
if (!Number(bytes)) return "0 Bytes";
|
|
577
|
-
const k = 1024;
|
|
578
|
-
const dm = decimals < 0 ? 0 : decimals;
|
|
579
|
-
const sizes = ["Bytes", "KB", "MB", "GB"];
|
|
580
|
-
const i = Math.floor(Math.log(bytes) / Math.log(k));
|
|
581
|
-
return `${parseFloat((bytes / Math.pow(k, i)).toFixed(dm))} ${sizes[i]}`;
|
|
582
|
-
};
|
|
583
|
-
var getUniqueFileExtensions = (extListString) => {
|
|
584
|
-
const extArray = extListString?.split(",").map((ext) => ext.trim().toUpperCase());
|
|
585
|
-
const uniqueExts = [...new Set(extArray)];
|
|
586
|
-
return uniqueExts.join(", ");
|
|
587
|
-
};
|
|
588
|
-
var getOS = () => {
|
|
589
|
-
let userAgent = window.navigator.userAgent, platform = window.navigator?.userAgentData?.platform || window.navigator.platform, macosPlatforms = ["Macintosh", "MacIntel", "MacPPC", "Mac68K"], windowsPlatforms = ["Win32", "Win64", "Windows", "WinCE"], iosPlatforms = ["iPhone", "iPad", "iPod"], os = OS.Unknown;
|
|
590
|
-
if (macosPlatforms.indexOf(platform) !== -1) {
|
|
591
|
-
os = OS.MacOS;
|
|
592
|
-
} else if (iosPlatforms.indexOf(platform) !== -1) {
|
|
593
|
-
os = OS.iOS;
|
|
594
|
-
} else if (windowsPlatforms.indexOf(platform) !== -1) {
|
|
595
|
-
os = OS.Windows;
|
|
596
|
-
} else if (/Android/.test(userAgent)) {
|
|
597
|
-
os = OS.Android;
|
|
598
|
-
} else if (/Linux/.test(platform)) {
|
|
599
|
-
os = OS.Linux;
|
|
600
|
-
}
|
|
601
|
-
return os;
|
|
602
|
-
};
|
|
603
286
|
String.prototype.longerThan = function(compareWith) {
|
|
604
287
|
return this?.length > compareWith?.length;
|
|
605
288
|
};
|
|
606
289
|
String.prototype.lastIndexEqualsTo = function(index) {
|
|
607
290
|
return this?.length - 1 === index;
|
|
608
291
|
};
|
|
609
|
-
var getCorrectTestId = ({ testId = "", withTier = true }) => testId && testId !== void 0 ? `${withTier ? "-" : ""}${testId}` : "";
|
|
610
292
|
|
|
611
293
|
// src/Functions/fieldValueFormatters.js
|
|
612
294
|
var getSafelyValue = (value) => value !== void 0 && value !== null ? value?.toString?.() || "" : "";
|
|
@@ -1204,6 +886,9 @@ function useFieldsFocus({ form, setForm }) {
|
|
|
1204
886
|
};
|
|
1205
887
|
}
|
|
1206
888
|
|
|
889
|
+
// src/Functions/useFormTools/index.js
|
|
890
|
+
import { createRef as createRef2, useEffect as useEffect8, useState as useState4 } from "react";
|
|
891
|
+
|
|
1207
892
|
// src/Functions/useFormTools/functions/General.js
|
|
1208
893
|
function General({ form, FormFields = [] } = {}) {
|
|
1209
894
|
const joinData = (...args) => {
|
|
@@ -1605,7 +1290,6 @@ function RenderFields({
|
|
|
1605
1290
|
}
|
|
1606
1291
|
|
|
1607
1292
|
// src/Functions/useFormTools/index.js
|
|
1608
|
-
import { createRef as createRef2, useEffect as useEffect8, useState as useState4 } from "react";
|
|
1609
1293
|
var DefaultFocusControllerProps = {
|
|
1610
1294
|
setAutoFocus: true,
|
|
1611
1295
|
onlyEmptyFieldAutoFocus: false
|
|
@@ -2384,9 +2068,9 @@ var useOnlineStatus = () => {
|
|
|
2384
2068
|
var useOnlineStatus_default = useOnlineStatus;
|
|
2385
2069
|
|
|
2386
2070
|
// src/Functions/usePasswordChecker.js
|
|
2387
|
-
import { jsxs } from "react/jsx-runtime";
|
|
2388
2071
|
import React5, { useState as useState12 } from "react";
|
|
2389
2072
|
import cn from "classnames";
|
|
2073
|
+
import { jsxs } from "react/jsx-runtime";
|
|
2390
2074
|
function usePasswordChecker({ label = "Password must:" } = {}) {
|
|
2391
2075
|
const [checkRules, setCheckRules] = useState12([]);
|
|
2392
2076
|
const addCheckRule = (data) => setCheckRules((state) => [...state, data]);
|