@symply.io/basic-components 1.3.11-alpha.9 → 1.4.0-beta.1

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 (70) hide show
  1. package/AlertDialog/index.js +30 -8
  2. package/Autocomplete/index.js +32 -10
  3. package/Autocomplete/useInteractions.js +3 -3
  4. package/AutocompleteWithFilter/index.js +35 -12
  5. package/BasicModal/Content.js +16 -5
  6. package/BasicModal/index.js +31 -9
  7. package/BreadCrumbs/index.js +19 -8
  8. package/CheckBox/CheckBox.js +26 -4
  9. package/CheckBox/CheckBoxGroup.js +24 -2
  10. package/Copyright/index.js +14 -3
  11. package/DataTable/TableBody.js +24 -2
  12. package/DataTable/TableBodyRow.js +52 -41
  13. package/DataTable/TableFooter.js +41 -30
  14. package/DataTable/TableHeader.js +47 -36
  15. package/DataTable/index.js +28 -17
  16. package/DataTable/useTable.js +54 -46
  17. package/DateInput/FullDateInput/index.js +42 -20
  18. package/DateInput/FullDateInput/useInteractions.js +10 -10
  19. package/DateInput/MonthDayInput/index.js +36 -14
  20. package/DateInput/MonthDayInput/useInteractions.js +9 -9
  21. package/DateInput/MonthYearInput/index.js +36 -14
  22. package/DateInput/MonthYearInput/useInteractions.js +9 -9
  23. package/DigitInput/index.js +28 -6
  24. package/DigitInput/useInteractions.js +9 -9
  25. package/DynamicHeaderBar/HeaderBar.js +17 -6
  26. package/DynamicHeaderBar/HeaderButtons.js +24 -13
  27. package/DynamicHeaderBar/HeaderLine.js +2 -2
  28. package/DynamicHeaderBar/index.js +26 -15
  29. package/FeinInput/index.js +38 -16
  30. package/FeinInput/useInteractions.js +9 -9
  31. package/FileUploader/index.js +33 -11
  32. package/FileUploader/useInteractions.js +44 -29
  33. package/FormRadioGroup/index.js +29 -4
  34. package/FormSelector/MultipleSelector.js +32 -9
  35. package/FormSelector/SimpleSelector.js +32 -9
  36. package/FormSelector/useInteractions.js +7 -7
  37. package/HelpCaption/index.js +17 -6
  38. package/HelpCaption/useInteractions.js +2 -2
  39. package/LoadingModal/Modal.js +15 -4
  40. package/LoadingModal/useLoadingModal.js +33 -15
  41. package/MenuButtonGroup/MenuItem.js +14 -3
  42. package/MenuButtonGroup/index.js +82 -14
  43. package/NumberInput/index.js +27 -5
  44. package/NumberInput/useInteractions.js +17 -17
  45. package/PasswordInput/ConfirmPassword.js +28 -6
  46. package/PasswordInput/Password.js +37 -15
  47. package/PhoneNumberInput/index.js +39 -17
  48. package/PhoneNumberInput/useInteractions.js +10 -10
  49. package/Sidebar/SidebarItem.js +17 -6
  50. package/Sidebar/SidebarItemsGroup.js +21 -10
  51. package/Sidebar/SidebarLink.js +27 -5
  52. package/Sidebar/index.js +17 -6
  53. package/SocialInput/index.js +40 -18
  54. package/SocialInput/useInteractions.js +14 -14
  55. package/TabGroup/index.js +25 -14
  56. package/TablePagination/Actions.js +15 -4
  57. package/TablePagination/index.js +14 -3
  58. package/TablePagination/useInteractions.js +9 -9
  59. package/TextInput/index.js +30 -8
  60. package/TextInput/useInteractions.js +4 -4
  61. package/ToastPrompt/Prompt.d.ts +2 -1
  62. package/ToastPrompt/Prompt.js +20 -55
  63. package/ToastPrompt/index.js +18 -7
  64. package/ToastPrompt/types.d.ts +2 -8
  65. package/ToastPrompt/useInteractions.d.ts +2 -1
  66. package/ToastPrompt/useInteractions.js +21 -10
  67. package/VideoPlayerModal/index.js +27 -5
  68. package/package.json +1 -1
  69. package/useCustomTheme.js +16 -11
  70. package/utils/uuid.js +11 -10
@@ -1,15 +1,35 @@
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
12
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
13
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
14
+ if (ar || !(i in from)) {
15
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
16
+ ar[i] = from[i];
17
+ }
18
+ }
19
+ return to.concat(ar || Array.prototype.slice.call(from));
20
+ };
1
21
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
22
  import { cloneElement, useMemo, useState, useContext, useCallback, createContext } from "react";
3
23
  import generateUUID from "../utils/uuid";
4
24
  import LoadingModal from "./Modal";
5
- const LoadingModalContext = createContext({
6
- onOpenLoadingModal: () => null,
7
- onCloseLoadingModal: () => { }
25
+ var LoadingModalContext = createContext({
26
+ onOpenLoadingModal: function () { return null; },
27
+ onCloseLoadingModal: function () { }
8
28
  });
9
29
  export function LoadingModalProvider(props) {
10
- const { children, primaryColor, secondaryColor } = props;
11
- const [instances, setInstances] = useState([]);
12
- const modalArgs = useMemo(() => {
30
+ var children = props.children, primaryColor = props.primaryColor, secondaryColor = props.secondaryColor;
31
+ var _a = useState([]), instances = _a[0], setInstances = _a[1];
32
+ var modalArgs = useMemo(function () {
13
33
  return instances.length > 0
14
34
  ? {
15
35
  open: true,
@@ -17,22 +37,20 @@ export function LoadingModalProvider(props) {
17
37
  }
18
38
  : { open: false, text: "Loading..." };
19
39
  }, [instances]);
20
- const onOpenLoadingModal = useCallback((loadingText) => {
21
- const instance = {
40
+ var onOpenLoadingModal = useCallback(function (loadingText) {
41
+ var instance = {
22
42
  id: generateUUID(),
23
43
  text: loadingText || "Loading..."
24
44
  };
25
- setInstances(insts => [...insts, instance]);
45
+ setInstances(function (insts) { return __spreadArray(__spreadArray([], insts, true), [instance], false); });
26
46
  return instance;
27
47
  }, []);
28
- const onCloseLoadingModal = useCallback((instance) => {
29
- if (instance?.id) {
30
- setInstances(insts => [
31
- ...insts.filter(inst => inst.id !== instance.id)
32
- ]);
48
+ var onCloseLoadingModal = useCallback(function (instance) {
49
+ if (instance === null || instance === void 0 ? void 0 : instance.id) {
50
+ setInstances(function (insts) { return __spreadArray([], insts.filter(function (inst) { return inst.id !== instance.id; }), true); });
33
51
  }
34
52
  }, []);
35
- return (_jsx(LoadingModalContext.Provider, { value: { onOpenLoadingModal, onCloseLoadingModal }, children: _jsxs(_Fragment, { children: [cloneElement(children), _jsx(LoadingModal, { ...modalArgs, primaryColor: primaryColor, secondaryColor: secondaryColor })] }) }));
53
+ return (_jsx(LoadingModalContext.Provider, __assign({ value: { onOpenLoadingModal: onOpenLoadingModal, onCloseLoadingModal: onCloseLoadingModal } }, { children: _jsxs(_Fragment, { children: [cloneElement(children), _jsx(LoadingModal, __assign({}, modalArgs, { primaryColor: primaryColor, secondaryColor: secondaryColor }))] }) })));
36
54
  }
37
55
  export function useLoadingModal() {
38
56
  return useContext(LoadingModalContext);
@@ -1,3 +1,14 @@
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
1
12
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
13
  import MenuItem from "@mui/material/MenuItem";
3
14
  import ListItemIcon from "@mui/material/ListItemIcon";
@@ -5,8 +16,8 @@ import ListItemText from "@mui/material/ListItemText";
5
16
  import ThemeProvider from "@mui/material/styles/ThemeProvider";
6
17
  import useCustomTheme from "../useCustomTheme";
7
18
  function ButtonMenuItem(props) {
8
- const { buttonText, buttonIcon, disabled = false, onClick } = props;
9
- const theme = useCustomTheme();
10
- return (_jsx(ThemeProvider, { theme: theme, children: _jsxs(MenuItem, { onClick: onClick, disabled: disabled, children: [buttonIcon && _jsx(ListItemIcon, { children: buttonIcon }), _jsx(ListItemText, { primary: buttonText })] }) }));
19
+ var buttonText = props.buttonText, buttonIcon = props.buttonIcon, _a = props.disabled, disabled = _a === void 0 ? false : _a, onClick = props.onClick;
20
+ var theme = useCustomTheme();
21
+ return (_jsx(ThemeProvider, __assign({ theme: theme }, { children: _jsxs(MenuItem, __assign({ onClick: onClick, disabled: disabled }, { children: [buttonIcon && _jsx(ListItemIcon, { children: buttonIcon }), _jsx(ListItemText, { primary: buttonText })] })) })));
11
22
  }
12
23
  export default ButtonMenuItem;
@@ -1,3 +1,61 @@
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
12
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
13
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
14
+ return new (P || (P = Promise))(function (resolve, reject) {
15
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
16
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
17
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
18
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
19
+ });
20
+ };
21
+ var __generator = (this && this.__generator) || function (thisArg, body) {
22
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
23
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
24
+ function verb(n) { return function (v) { return step([n, v]); }; }
25
+ function step(op) {
26
+ if (f) throw new TypeError("Generator is already executing.");
27
+ while (_) try {
28
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
29
+ if (y = 0, t) op = [op[0] & 2, t.value];
30
+ switch (op[0]) {
31
+ case 0: case 1: t = op; break;
32
+ case 4: _.label++; return { value: op[1], done: false };
33
+ case 5: _.label++; y = op[1]; op = [0]; continue;
34
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
35
+ default:
36
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
37
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
38
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
39
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
40
+ if (t[2]) _.ops.pop();
41
+ _.trys.pop(); continue;
42
+ }
43
+ op = body.call(thisArg, _);
44
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
45
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
46
+ }
47
+ };
48
+ var __rest = (this && this.__rest) || function (s, e) {
49
+ var t = {};
50
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
51
+ t[p] = s[p];
52
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
53
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
54
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
55
+ t[p[i]] = s[p[i]];
56
+ }
57
+ return t;
58
+ };
1
59
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
60
  import { useState } from "react";
3
61
  import Menu from "@mui/material/Menu";
@@ -7,29 +65,39 @@ import ArrowDropDownIcon from "@mui/icons-material/ArrowDropDown";
7
65
  import ButtonItem from "./MenuItem";
8
66
  import useCustomTheme from "../useCustomTheme";
9
67
  function MenuButtonGroup(props) {
10
- const { buttonText, buttons, size, color = "primary", disabled = false, variant = "outlined", primaryColor, secondaryColor } = props;
11
- const theme = useCustomTheme({ primaryColor, secondaryColor });
12
- const [anchorEl, setAnchorEl] = useState(null);
68
+ var _this = this;
69
+ var buttonText = props.buttonText, buttons = props.buttons, size = props.size, _a = props.color, color = _a === void 0 ? "primary" : _a, _b = props.disabled, disabled = _b === void 0 ? false : _b, _c = props.variant, variant = _c === void 0 ? "outlined" : _c, primaryColor = props.primaryColor, secondaryColor = props.secondaryColor;
70
+ var theme = useCustomTheme({ primaryColor: primaryColor, secondaryColor: secondaryColor });
71
+ var _d = useState(null), anchorEl = _d[0], setAnchorEl = _d[1];
13
72
  function onClick(event) {
14
73
  setAnchorEl(event.currentTarget);
15
74
  }
16
- const onClose = () => {
75
+ var onClose = function () {
17
76
  setAnchorEl(null);
18
77
  };
19
- return (_jsxs(ThemeProvider, { theme: theme, children: [_jsx(Button, { "aria-haspopup": "true", variant: variant, color: color, onClick: onClick, fullWidth: true, size: size, endIcon: _jsx(ArrowDropDownIcon, { fontSize: "small" }), disabled: disabled, children: buttonText }), _jsx(Menu, { id: "button-menu", anchorEl: anchorEl, keepMounted: true, elevation: 2, anchorOrigin: {
78
+ return (_jsxs(ThemeProvider, __assign({ theme: theme }, { children: [_jsx(Button, __assign({ "aria-haspopup": "true", variant: variant, color: color, onClick: onClick, fullWidth: true, size: size, endIcon: _jsx(ArrowDropDownIcon, { fontSize: "small" }), disabled: disabled }, { children: buttonText })), _jsx(Menu, __assign({ id: "button-menu", anchorEl: anchorEl, keepMounted: true, elevation: 2, anchorOrigin: {
20
79
  vertical: "bottom",
21
80
  horizontal: "center"
22
81
  }, transformOrigin: {
23
82
  vertical: "top",
24
83
  horizontal: "center"
25
- }, open: Boolean(anchorEl), onClose: onClose, children: buttons.map(button => {
26
- const { onClick, buttonText, ...rest } = button;
27
- return (_jsx(ButtonItem, { buttonText: buttonText, ...rest, onClick: async (event) => {
28
- if (onClick) {
29
- await onClick(event);
30
- }
31
- onClose();
32
- } }, buttonText));
33
- }) })] }));
84
+ }, open: Boolean(anchorEl), onClose: onClose }, { children: buttons.map(function (button) {
85
+ var onClick = button.onClick, buttonText = button.buttonText, rest = __rest(button, ["onClick", "buttonText"]);
86
+ return (_jsx(ButtonItem, __assign({ buttonText: buttonText }, rest, { onClick: function (event) { return __awaiter(_this, void 0, void 0, function () {
87
+ return __generator(this, function (_a) {
88
+ switch (_a.label) {
89
+ case 0:
90
+ if (!onClick) return [3, 2];
91
+ return [4, onClick(event)];
92
+ case 1:
93
+ _a.sent();
94
+ _a.label = 2;
95
+ case 2:
96
+ onClose();
97
+ return [2];
98
+ }
99
+ });
100
+ }); } }), buttonText));
101
+ }) }))] })));
34
102
  }
35
103
  export default MenuButtonGroup;
@@ -1,3 +1,25 @@
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
12
+ var __rest = (this && this.__rest) || function (s, e) {
13
+ var t = {};
14
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
15
+ t[p] = s[p];
16
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
17
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
18
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
19
+ t[p[i]] = s[p[i]];
20
+ }
21
+ return t;
22
+ };
1
23
  import { jsx as _jsx } from "react/jsx-runtime";
2
24
  import Tooltip from "@mui/material/Tooltip";
3
25
  import Field from "@mui/material/TextField";
@@ -5,12 +27,12 @@ import ThemeProvider from "@mui/material/styles/ThemeProvider";
5
27
  import useInteractions from "./useInteractions";
6
28
  import useCustomTheme from "../useCustomTheme";
7
29
  function NumberInput(props) {
8
- const { onChange, value, size = "small", tooltip, integerOnly = false, minValue = Number.MIN_SAFE_INTEGER, maxValue = Number.MAX_SAFE_INTEGER, error, helperText, primaryColor, secondaryColor, ...rest } = props;
9
- const theme = useCustomTheme({ primaryColor, secondaryColor });
10
- const EXCEED_ERROR = "Your value exceeds the exceptable input range";
30
+ var onChange = props.onChange, value = props.value, _a = props.size, size = _a === void 0 ? "small" : _a, tooltip = props.tooltip, _b = props.integerOnly, integerOnly = _b === void 0 ? false : _b, _c = props.minValue, minValue = _c === void 0 ? Number.MIN_SAFE_INTEGER : _c, _d = props.maxValue, maxValue = _d === void 0 ? Number.MAX_SAFE_INTEGER : _d, error = props.error, helperText = props.helperText, primaryColor = props.primaryColor, secondaryColor = props.secondaryColor, rest = __rest(props, ["onChange", "value", "size", "tooltip", "integerOnly", "minValue", "maxValue", "error", "helperText", "primaryColor", "secondaryColor"]);
31
+ var theme = useCustomTheme({ primaryColor: primaryColor, secondaryColor: secondaryColor });
32
+ var EXCEED_ERROR = "Your value exceeds the exceptable input range";
11
33
  if (maxValue < minValue)
12
34
  throw new Error("Max should be bigger than the `miniValue`!");
13
- const { exceedError, tooltipOpen, handleBlur, handleChange, onOpenTooltip, onCloseTooltip } = useInteractions({ maxValue, minValue, value, onChange });
14
- return (_jsx(ThemeProvider, { theme: theme, children: _jsx(Tooltip, { arrow: true, placement: "top", title: tooltip ?? "", open: !!tooltip && tooltipOpen, children: _jsx(Field, { size: size, margin: "dense", type: "number", value: value === undefined || value === null ? "" : value, onMouseEnter: onOpenTooltip, onMouseLeave: onCloseTooltip, onBlur: handleBlur, onChange: handleChange, error: error || exceedError, helperText: helperText || (exceedError ? EXCEED_ERROR : ""), ...rest }) }) }));
35
+ var _e = useInteractions({ maxValue: maxValue, minValue: minValue, value: value, onChange: onChange }), exceedError = _e.exceedError, tooltipOpen = _e.tooltipOpen, handleBlur = _e.handleBlur, handleChange = _e.handleChange, onOpenTooltip = _e.onOpenTooltip, onCloseTooltip = _e.onCloseTooltip;
36
+ return (_jsx(ThemeProvider, __assign({ theme: theme }, { children: _jsx(Tooltip, __assign({ arrow: true, placement: "top", title: tooltip !== null && tooltip !== void 0 ? tooltip : "", open: !!tooltip && tooltipOpen }, { children: _jsx(Field, __assign({ size: size, margin: "dense", type: "number", value: value === undefined || value === null ? "" : value, onMouseEnter: onOpenTooltip, onMouseLeave: onCloseTooltip, onBlur: handleBlur, onChange: handleChange, error: error || exceedError, helperText: helperText || (exceedError ? EXCEED_ERROR : "") }, rest)) })) })));
15
37
  }
16
38
  export default NumberInput;
@@ -1,11 +1,11 @@
1
1
  import { useState, useCallback, useMemo } from "react";
2
2
  function useInteractions(props) {
3
- const { value, integerOnly, minValue = Number.MIN_SAFE_INTEGER, maxValue = Number.MAX_SAFE_INTEGER, onChange } = props;
4
- const [tooltipOpen, setTooltipOpen] = useState(false);
5
- const exceedError = useMemo(() => !!value && (Number(value) < minValue || Number(value) > maxValue), [value, minValue, maxValue]);
6
- const handleChange = useCallback((event) => {
3
+ var value = props.value, integerOnly = props.integerOnly, _a = props.minValue, minValue = _a === void 0 ? Number.MIN_SAFE_INTEGER : _a, _b = props.maxValue, maxValue = _b === void 0 ? Number.MAX_SAFE_INTEGER : _b, onChange = props.onChange;
4
+ var _c = useState(false), tooltipOpen = _c[0], setTooltipOpen = _c[1];
5
+ var exceedError = useMemo(function () { return !!value && (Number(value) < minValue || Number(value) > maxValue); }, [value, minValue, maxValue]);
6
+ var handleChange = useCallback(function (event) {
7
7
  event.preventDefault();
8
- const val = event.currentTarget.value;
8
+ var val = event.currentTarget.value;
9
9
  if (val !== "" && minValue >= 0 && val.includes("-"))
10
10
  return;
11
11
  if (integerOnly) {
@@ -16,8 +16,8 @@ function useInteractions(props) {
16
16
  return;
17
17
  onChange(val);
18
18
  }, [onChange, minValue, integerOnly]);
19
- const handleBlur = useCallback(() => {
20
- const excludedValue = [
19
+ var handleBlur = useCallback(function () {
20
+ var excludedValue = [
21
21
  null,
22
22
  undefined,
23
23
  ".",
@@ -27,9 +27,9 @@ function useInteractions(props) {
27
27
  "null",
28
28
  "undefined"
29
29
  ];
30
- const strVal = String(value).trim();
30
+ var strVal = String(value).trim();
31
31
  if (strVal !== null && strVal.lastIndexOf(".") === strVal.length - 1) {
32
- const newValue = strVal.substring(0, String(value).length - 1);
32
+ var newValue = strVal.substring(0, String(value).length - 1);
33
33
  onChange(newValue);
34
34
  }
35
35
  else if (excludedValue.includes(strVal)) {
@@ -39,19 +39,19 @@ function useInteractions(props) {
39
39
  onChange(Number(strVal).toString());
40
40
  }
41
41
  }, [value, onChange]);
42
- const onOpenTooltip = useCallback(() => {
42
+ var onOpenTooltip = useCallback(function () {
43
43
  setTooltipOpen(true);
44
44
  }, []);
45
- const onCloseTooltip = useCallback(() => {
45
+ var onCloseTooltip = useCallback(function () {
46
46
  setTooltipOpen(false);
47
47
  }, []);
48
48
  return {
49
- exceedError,
50
- tooltipOpen,
51
- handleBlur,
52
- handleChange,
53
- onOpenTooltip,
54
- onCloseTooltip
49
+ exceedError: exceedError,
50
+ tooltipOpen: tooltipOpen,
51
+ handleBlur: handleBlur,
52
+ handleChange: handleChange,
53
+ onOpenTooltip: onOpenTooltip,
54
+ onCloseTooltip: onCloseTooltip
55
55
  };
56
56
  }
57
57
  export default useInteractions;
@@ -1,20 +1,42 @@
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
12
+ var __rest = (this && this.__rest) || function (s, e) {
13
+ var t = {};
14
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
15
+ t[p] = s[p];
16
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
17
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
18
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
19
+ t[p[i]] = s[p[i]];
20
+ }
21
+ return t;
22
+ };
1
23
  import { jsx as _jsx } from "react/jsx-runtime";
2
24
  import { useMemo } from "react";
3
25
  import TextField from "@mui/material/TextField";
4
26
  import ThemeProvider from "@mui/material/styles/ThemeProvider";
5
27
  import useCustomTheme from "../useCustomTheme";
6
28
  function ConfirmPassword(props) {
7
- const { password, helperText = "Passwords do not match", value, label = "Confirm Password", name = "confirmPassword", variant = "outlined", margin = "dense", disabled, primaryColor, secondaryColor, onChange, ...rest } = props;
8
- const theme = useCustomTheme({ primaryColor, secondaryColor });
9
- const isMatched = useMemo(() => {
10
- if (value?.length > 0) {
29
+ var password = props.password, _a = props.helperText, helperText = _a === void 0 ? "Passwords do not match" : _a, value = props.value, _b = props.label, label = _b === void 0 ? "Confirm Password" : _b, _c = props.name, name = _c === void 0 ? "confirmPassword" : _c, _d = props.variant, variant = _d === void 0 ? "outlined" : _d, _e = props.margin, margin = _e === void 0 ? "dense" : _e, disabled = props.disabled, primaryColor = props.primaryColor, secondaryColor = props.secondaryColor, onChange = props.onChange, rest = __rest(props, ["password", "helperText", "value", "label", "name", "variant", "margin", "disabled", "primaryColor", "secondaryColor", "onChange"]);
30
+ var theme = useCustomTheme({ primaryColor: primaryColor, secondaryColor: secondaryColor });
31
+ var isMatched = useMemo(function () {
32
+ if ((value === null || value === void 0 ? void 0 : value.length) > 0) {
11
33
  return password === value;
12
34
  }
13
35
  return true;
14
36
  }, [value, password]);
15
- return (_jsx(ThemeProvider, { theme: theme, children: _jsx(TextField, { error: !isMatched, label: label, value: value, variant: variant, margin: margin, disabled: disabled, type: "password", size: "small", helperText: !isMatched && helperText, onChange: event => {
37
+ return (_jsx(ThemeProvider, __assign({ theme: theme }, { children: _jsx(TextField, __assign({ error: !isMatched, label: label, value: value, variant: variant, margin: margin, disabled: disabled, type: "password", size: "small", helperText: !isMatched && helperText, onChange: function (event) {
16
38
  event.preventDefault();
17
39
  onChange(event.target.value);
18
- }, fullWidth: true, required: true, ...rest }) }));
40
+ }, fullWidth: true, required: true }, rest)) })));
19
41
  }
20
42
  export default ConfirmPassword;
@@ -1,3 +1,25 @@
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
12
+ var __rest = (this && this.__rest) || function (s, e) {
13
+ var t = {};
14
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
15
+ t[p] = s[p];
16
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
17
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
18
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
19
+ t[p[i]] = s[p[i]];
20
+ }
21
+ return t;
22
+ };
1
23
  import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
2
24
  import { useMemo } from "react";
3
25
  import TextField from "@mui/material/TextField";
@@ -5,11 +27,11 @@ import Typography from "@mui/material/Typography";
5
27
  import ThemeProvider from "@mui/material/styles/ThemeProvider";
6
28
  import useCustomTheme from "../useCustomTheme";
7
29
  export function onValidatePassword(password) {
8
- const reg = /^(?=.*[0-9])(?=.*[A-Z])(?=.*[a-z])(?=.*[!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~])([!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~a-zA-z0-9]{8,})$/;
30
+ var reg = /^(?=.*[0-9])(?=.*[A-Z])(?=.*[a-z])(?=.*[!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~])([!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~a-zA-z0-9]{8,})$/;
9
31
  return reg.test(password);
10
32
  }
11
33
  function Password(props) {
12
- const { strategies = {
34
+ var _a = props.strategies, strategies = _a === void 0 ? {
13
35
  uppercaseLetter: { label: "1 Uppercase Letter", regex: /[A-Z]+/ },
14
36
  lowercaseLetter: { label: "1 Lowercase Letter", regex: /[a-z]+/ },
15
37
  specialCharacter: {
@@ -18,17 +40,17 @@ function Password(props) {
18
40
  },
19
41
  number: { label: "1 Number", regex: /\d+/ },
20
42
  minimum8: { label: "Minimum 8 characters", regex: /.{8,}/ }
21
- }, successColor = "green", value, error, primaryColor, secondaryColor, onValidate, onChange, ...rest } = props;
22
- const theme = useCustomTheme({ primaryColor, secondaryColor });
23
- const isValidPassword = useMemo(() => {
24
- if (value?.length > 0) {
43
+ } : _a, _b = props.successColor, successColor = _b === void 0 ? "green" : _b, value = props.value, error = props.error, primaryColor = props.primaryColor, secondaryColor = props.secondaryColor, onValidate = props.onValidate, onChange = props.onChange, rest = __rest(props, ["strategies", "successColor", "value", "error", "primaryColor", "secondaryColor", "onValidate", "onChange"]);
44
+ var theme = useCustomTheme({ primaryColor: primaryColor, secondaryColor: secondaryColor });
45
+ var isValidPassword = useMemo(function () {
46
+ if ((value === null || value === void 0 ? void 0 : value.length) > 0) {
25
47
  return onValidate ? onValidate(value) : onValidatePassword(value);
26
48
  }
27
49
  return true;
28
50
  }, [value, onValidate, onValidatePassword]);
29
- const helperTextColor = useMemo(() => {
30
- const textColors = Object.keys(strategies).reduce((temp, key) => {
31
- const { regex } = strategies[key];
51
+ var helperTextColor = useMemo(function () {
52
+ var textColors = Object.keys(strategies).reduce(function (temp, key) {
53
+ var regex = strategies[key].regex;
32
54
  if (value === "") {
33
55
  temp[key] = undefined;
34
56
  }
@@ -42,15 +64,15 @@ function Password(props) {
42
64
  }, {});
43
65
  return textColors;
44
66
  }, [value, strategies]);
45
- const helperText = useMemo(() => {
46
- return (_jsx(_Fragment, { children: Object.keys(strategies).map(key => {
47
- const { label } = strategies[key];
48
- return (_jsx(Typography, { component: "li", variant: "caption", style: { color: helperTextColor[key] }, children: label }, key));
67
+ var helperText = useMemo(function () {
68
+ return (_jsx(_Fragment, { children: Object.keys(strategies).map(function (key) {
69
+ var label = strategies[key].label;
70
+ return (_jsx(Typography, __assign({ component: "li", variant: "caption", style: { color: helperTextColor[key] } }, { children: label }), key));
49
71
  }) }));
50
72
  }, [helperTextColor, strategies]);
51
- return (_jsx(ThemeProvider, { theme: theme, children: _jsx(TextField, { error: !isValidPassword || error, helperText: helperText, type: "password", label: "Password", size: "small", margin: "dense", value: value, onChange: event => {
73
+ return (_jsx(ThemeProvider, __assign({ theme: theme }, { children: _jsx(TextField, __assign({ error: !isValidPassword || error, helperText: helperText, type: "password", label: "Password", size: "small", margin: "dense", value: value, onChange: function (event) {
52
74
  event.preventDefault();
53
75
  onChange(event.target.value);
54
- }, fullWidth: true, required: true, ...rest }) }));
76
+ }, fullWidth: true, required: true }, rest)) })));
55
77
  }
56
78
  export default Password;
@@ -1,3 +1,25 @@
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
12
+ var __rest = (this && this.__rest) || function (s, e) {
13
+ var t = {};
14
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
15
+ t[p] = s[p];
16
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
17
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
18
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
19
+ t[p[i]] = s[p[i]];
20
+ }
21
+ return t;
22
+ };
1
23
  import { jsx as _jsx } from "react/jsx-runtime";
2
24
  import { useRifm } from "rifm";
3
25
  import Typography from "@mui/material/Typography";
@@ -7,38 +29,38 @@ import ThemeProvider from "@mui/material/styles/ThemeProvider";
7
29
  import useInteractions from "./useInteractions";
8
30
  import useCustomTheme from "../useCustomTheme";
9
31
  export function onValidatePhone(str) {
10
- const reg = /^\(\d{3}\)\s?\d{3}\s?-\s?\d{4}$/g;
32
+ var reg = /^\(\d{3}\)\s?\d{3}\s?-\s?\d{4}$/g;
11
33
  return reg.test(str);
12
34
  }
13
35
  export function phoneFormat(str) {
14
- const digits = (str.match(/\d+/g) || []).join("");
15
- const chars = digits.split("");
16
- return chars.reduce((prev, curr, index) => {
36
+ var digits = (str.match(/\d+/g) || []).join("");
37
+ var chars = digits.split("");
38
+ return chars.reduce(function (prev, curr, index) {
17
39
  if (index === 3) {
18
- return `${prev}) ${curr}`;
40
+ return "".concat(prev, ") ").concat(curr);
19
41
  }
20
42
  else if (index === 6) {
21
- return `${prev}-${curr}`;
43
+ return "".concat(prev, "-").concat(curr);
22
44
  }
23
45
  else {
24
- return `${prev}${curr}`;
46
+ return "".concat(prev).concat(curr);
25
47
  }
26
- }, `(`);
48
+ }, "(");
27
49
  }
28
50
  function PhoneInput(props) {
29
- const { value, error, endAdornment, primaryColor, secondaryColor, helperText = "Please enter a valid phone number", onChange, onValidate, ...rest } = props;
30
- const theme = useCustomTheme({ primaryColor, secondaryColor });
31
- const { valLength, addMask } = useInteractions({ value });
32
- const rifm = useRifm({
51
+ var value = props.value, error = props.error, endAdornment = props.endAdornment, primaryColor = props.primaryColor, secondaryColor = props.secondaryColor, _a = props.helperText, helperText = _a === void 0 ? "Please enter a valid phone number" : _a, onChange = props.onChange, onValidate = props.onValidate, rest = __rest(props, ["value", "error", "endAdornment", "primaryColor", "secondaryColor", "helperText", "onChange", "onValidate"]);
52
+ var theme = useCustomTheme({ primaryColor: primaryColor, secondaryColor: secondaryColor });
53
+ var _b = useInteractions({ value: value }), valLength = _b.valLength, addMask = _b.addMask;
54
+ var rifm = useRifm({
33
55
  mask: true,
34
56
  value: String(value),
35
- onChange,
57
+ onChange: onChange,
36
58
  replace: addMask,
37
59
  format: phoneFormat
38
60
  });
39
- return (_jsx(ThemeProvider, { theme: theme, children: _jsx(TextField, { value: rifm.value, InputProps: {
40
- startAdornment: (_jsx(InputAdornment, { position: "start", children: _jsx(Typography, { sx: { fontSize: 16, fontWeight: 500 }, children: "+1" }) })),
41
- endAdornment
61
+ return (_jsx(ThemeProvider, __assign({ theme: theme }, { children: _jsx(TextField, __assign({ value: rifm.value, InputProps: {
62
+ startAdornment: (_jsx(InputAdornment, __assign({ position: "start" }, { children: _jsx(Typography, __assign({ sx: { fontSize: 16, fontWeight: 500 } }, { children: "+1" })) }))),
63
+ endAdornment: endAdornment
42
64
  }, onChange: rifm.onChange, helperText: valLength > 0 &&
43
65
  (onValidate ? !onValidate(rifm.value) : !onValidatePhone(rifm.value))
44
66
  ? helperText
@@ -46,6 +68,6 @@ function PhoneInput(props) {
46
68
  (valLength > 0 &&
47
69
  (onValidate
48
70
  ? !onValidate(rifm.value)
49
- : !onValidatePhone(rifm.value))), ...rest }) }));
71
+ : !onValidatePhone(rifm.value))) }, rest)) })));
50
72
  }
51
73
  export default PhoneInput;
@@ -1,17 +1,17 @@
1
1
  import { useCallback, useMemo } from "react";
2
2
  function useInteractions(props) {
3
- const { value } = props;
4
- const addMask = useCallback((str) => {
5
- const digits = (str.match(/\d+/g) || []).join("");
6
- const areaCode = digits.slice(0, 3).padEnd(3, "_");
7
- const prefixCode = digits.slice(3, 6).padEnd(3, "_");
8
- const subscriber = digits.slice(6, 10).padEnd(4, "_");
9
- return `(${areaCode}) ${prefixCode}-${subscriber}`;
3
+ var value = props.value;
4
+ var addMask = useCallback(function (str) {
5
+ var digits = (str.match(/\d+/g) || []).join("");
6
+ var areaCode = digits.slice(0, 3).padEnd(3, "_");
7
+ var prefixCode = digits.slice(3, 6).padEnd(3, "_");
8
+ var subscriber = digits.slice(6, 10).padEnd(4, "_");
9
+ return "(".concat(areaCode, ") ").concat(prefixCode, "-").concat(subscriber);
10
10
  }, []);
11
- const valLength = useMemo(() => {
12
- const digitsArr = String(value).match(/\d/g);
11
+ var valLength = useMemo(function () {
12
+ var digitsArr = String(value).match(/\d/g);
13
13
  return digitsArr ? digitsArr.length : 0;
14
14
  }, [value]);
15
- return { valLength, addMask };
15
+ return { valLength: valLength, addMask: addMask };
16
16
  }
17
17
  export default useInteractions;