@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.
- package/AlertDialog/index.js +30 -8
- package/Autocomplete/index.js +32 -10
- package/Autocomplete/useInteractions.js +3 -3
- package/AutocompleteWithFilter/index.js +35 -12
- package/BasicModal/Content.js +16 -5
- package/BasicModal/index.js +31 -9
- package/BreadCrumbs/index.js +19 -8
- package/CheckBox/CheckBox.js +26 -4
- package/CheckBox/CheckBoxGroup.js +24 -2
- package/Copyright/index.js +14 -3
- package/DataTable/TableBody.js +24 -2
- package/DataTable/TableBodyRow.js +52 -41
- package/DataTable/TableFooter.js +41 -30
- package/DataTable/TableHeader.js +47 -36
- package/DataTable/index.js +28 -17
- package/DataTable/useTable.js +54 -46
- package/DateInput/FullDateInput/index.js +42 -20
- package/DateInput/FullDateInput/useInteractions.js +10 -10
- package/DateInput/MonthDayInput/index.js +36 -14
- package/DateInput/MonthDayInput/useInteractions.js +9 -9
- package/DateInput/MonthYearInput/index.js +36 -14
- package/DateInput/MonthYearInput/useInteractions.js +9 -9
- package/DigitInput/index.js +28 -6
- package/DigitInput/useInteractions.js +9 -9
- package/DynamicHeaderBar/HeaderBar.js +17 -6
- package/DynamicHeaderBar/HeaderButtons.js +24 -13
- package/DynamicHeaderBar/HeaderLine.js +2 -2
- package/DynamicHeaderBar/index.js +26 -15
- package/FeinInput/index.js +38 -16
- package/FeinInput/useInteractions.js +9 -9
- package/FileUploader/index.js +33 -11
- package/FileUploader/useInteractions.js +44 -29
- package/FormRadioGroup/index.js +29 -4
- package/FormSelector/MultipleSelector.js +32 -9
- package/FormSelector/SimpleSelector.js +32 -9
- package/FormSelector/useInteractions.js +7 -7
- package/HelpCaption/index.js +17 -6
- package/HelpCaption/useInteractions.js +2 -2
- package/LoadingModal/Modal.js +15 -4
- package/LoadingModal/useLoadingModal.js +33 -15
- package/MenuButtonGroup/MenuItem.js +14 -3
- package/MenuButtonGroup/index.js +82 -14
- package/NumberInput/index.js +27 -5
- package/NumberInput/useInteractions.js +17 -17
- package/PasswordInput/ConfirmPassword.js +28 -6
- package/PasswordInput/Password.js +37 -15
- package/PhoneNumberInput/index.js +39 -17
- package/PhoneNumberInput/useInteractions.js +10 -10
- package/Sidebar/SidebarItem.js +17 -6
- package/Sidebar/SidebarItemsGroup.js +21 -10
- package/Sidebar/SidebarLink.js +27 -5
- package/Sidebar/index.js +17 -6
- package/SocialInput/index.js +40 -18
- package/SocialInput/useInteractions.js +14 -14
- package/TabGroup/index.js +25 -14
- package/TablePagination/Actions.js +15 -4
- package/TablePagination/index.js +14 -3
- package/TablePagination/useInteractions.js +9 -9
- package/TextInput/index.js +30 -8
- package/TextInput/useInteractions.js +4 -4
- package/ToastPrompt/Prompt.d.ts +2 -1
- package/ToastPrompt/Prompt.js +20 -55
- package/ToastPrompt/index.js +18 -7
- package/ToastPrompt/types.d.ts +2 -8
- package/ToastPrompt/useInteractions.d.ts +2 -1
- package/ToastPrompt/useInteractions.js +21 -10
- package/VideoPlayerModal/index.js +27 -5
- package/package.json +1 -1
- package/useCustomTheme.js +16 -11
- package/utils/uuid.js +11 -10
package/FeinInput/index.js
CHANGED
@@ -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 ThemeProvider from "@mui/material/styles/ThemeProvider";
|
@@ -5,49 +27,49 @@ import TextField from "@mui/material/TextField";
|
|
5
27
|
import useInteractions from "./useInteractions";
|
6
28
|
import useCustomTheme from "../useCustomTheme";
|
7
29
|
export function FeinInputFormat(str) {
|
8
|
-
|
9
|
-
|
10
|
-
return chars.reduce((prev, curr, index)
|
30
|
+
var digits = (str.match(/\d+/g) || []).join("");
|
31
|
+
var chars = digits.split("");
|
32
|
+
return chars.reduce(function (prev, curr, index) {
|
11
33
|
if (index === 2) {
|
12
|
-
return
|
34
|
+
return "".concat(prev, " - ").concat(curr);
|
13
35
|
}
|
14
36
|
else {
|
15
|
-
return
|
37
|
+
return "".concat(prev).concat(curr);
|
16
38
|
}
|
17
|
-
},
|
39
|
+
}, "");
|
18
40
|
}
|
19
41
|
export function onValidateFein(feinString) {
|
20
|
-
|
42
|
+
var reg = /^\d{2}\s?-\s?\d{7}$/g;
|
21
43
|
return reg.test(feinString);
|
22
44
|
}
|
23
45
|
function FeinInput(props) {
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
46
|
+
var value = props.value, _a = props.error, error = _a === void 0 ? false : _a, _b = props.helperText, helperText = _b === void 0 ? "Please enter a valid FEIN" : _b, onBlur = props.onBlur, onFocus = props.onFocus, onChange = props.onChange, onValidate = props.onValidate, primaryColor = props.primaryColor, secondaryColor = props.secondaryColor, rest = __rest(props, ["value", "error", "helperText", "onBlur", "onFocus", "onChange", "onValidate", "primaryColor", "secondaryColor"]);
|
47
|
+
var theme = useCustomTheme({ primaryColor: primaryColor, secondaryColor: secondaryColor });
|
48
|
+
var _c = useInteractions({ value: value }), valLength = _c.valLength, addMask = _c.addMask;
|
49
|
+
var rifm = useRifm({
|
28
50
|
mask: true,
|
29
51
|
value: String(value),
|
30
|
-
onChange,
|
52
|
+
onChange: onChange,
|
31
53
|
replace: addMask,
|
32
54
|
format: FeinInputFormat
|
33
55
|
});
|
34
|
-
return (_jsx(ThemeProvider, { theme: theme, children: _jsx(TextField, { value: rifm.value, onChange: rifm.onChange, error: error ||
|
56
|
+
return (_jsx(ThemeProvider, __assign({ theme: theme }, { children: _jsx(TextField, __assign({ value: rifm.value, onChange: rifm.onChange, error: error ||
|
35
57
|
(valLength > 0 &&
|
36
58
|
(onValidate ? !onValidate(value) : !onValidateFein(value))), helperText: valLength > 0 &&
|
37
59
|
(onValidate ? !onValidate(value) : !onValidateFein(value))
|
38
60
|
? helperText
|
39
|
-
: "", onFocus: event
|
61
|
+
: "", onFocus: function (event) {
|
40
62
|
if (onFocus) {
|
41
63
|
onFocus(event);
|
42
64
|
}
|
43
|
-
}, onBlur: event
|
65
|
+
}, onBlur: function (event) {
|
44
66
|
onChange(value.trim());
|
45
67
|
if (onBlur) {
|
46
68
|
onBlur(event);
|
47
69
|
}
|
48
70
|
}, InputLabelProps: {
|
49
71
|
shrink: true
|
50
|
-
},
|
72
|
+
} }, rest)) })));
|
51
73
|
}
|
52
74
|
export default FeinInput;
|
53
75
|
export * from "./types";
|
@@ -1,16 +1,16 @@
|
|
1
1
|
import { useCallback, useMemo } from "react";
|
2
2
|
function useInteractions(props) {
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
return
|
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, 2).padEnd(2, "_");
|
7
|
+
var prefixCode = digits.slice(2, 9).padEnd(7, "_");
|
8
|
+
return "".concat(areaCode, " - ").concat(prefixCode);
|
9
9
|
}, []);
|
10
|
-
|
11
|
-
|
10
|
+
var valLength = useMemo(function () {
|
11
|
+
var digitsArr = String(value).match(/\d/g);
|
12
12
|
return digitsArr ? digitsArr.length : 0;
|
13
13
|
}, [value]);
|
14
|
-
return { valLength, addMask };
|
14
|
+
return { valLength: valLength, addMask: addMask };
|
15
15
|
}
|
16
16
|
export default useInteractions;
|
package/FileUploader/index.js
CHANGED
@@ -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, jsxs as _jsxs } from "react/jsx-runtime";
|
2
24
|
import Link from "@mui/material/Link";
|
3
25
|
import Grid from "@mui/material/Grid";
|
@@ -10,32 +32,32 @@ import AlertDialog from "../AlertDialog";
|
|
10
32
|
import useInteractions from "./useInteractions";
|
11
33
|
import useCustomTheme from "../useCustomTheme";
|
12
34
|
function FileUploader(props) {
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
return (_jsxs(ThemeProvider, { theme: theme, children: [lessThanSm ? (_jsxs("div", {
|
35
|
+
var _a = props.height, height = _a === void 0 ? "150px" : _a, _b = props.maxWidth, maxWidth = _b === void 0 ? "430px" : _b, _c = props.loading, loading = _c === void 0 ? false : _c, _d = props.disabled, disabled = _d === void 0 ? false : _d, dropFileText = props.dropFileText, chooseFileText = props.chooseFileText, primaryColor = props.primaryColor, secondaryColor = props.secondaryColor, rest = __rest(props, ["height", "maxWidth", "loading", "disabled", "dropFileText", "chooseFileText", "primaryColor", "secondaryColor"]);
|
36
|
+
var theme = useCustomTheme({ primaryColor: primaryColor, secondaryColor: secondaryColor });
|
37
|
+
var lessThanSm = useMediaQuery(theme.breakpoints.down("sm"));
|
38
|
+
var _e = useInteractions(__assign(__assign({}, rest), { disabled: disabled })), alertArgs = _e.alertArgs, rootProps = _e.rootProps, onCloseAlert = _e.onCloseAlert, onSelectFile = _e.onSelectFile, getRootProps = _e.getRootProps, getInputProps = _e.getInputProps;
|
39
|
+
return (_jsxs(ThemeProvider, __assign({ theme: theme }, { children: [lessThanSm ? (_jsxs("div", __assign({}, getRootProps(), { children: [_jsx("input", __assign({}, getInputProps())), _jsx(Link, __assign({ color: disabled ? theme.palette.grey[400] : theme.palette.primary.main, sx: {
|
18
40
|
fontFamily: "Roboto, Helvetica, Arial, sans-serif",
|
19
41
|
cursor: disabled ? "not-allowed" : "pointer"
|
20
|
-
}, children: loading ? (_jsx(CircularProgress, { sx: { height: "25px", width: "25px" } })) : (chooseFileText || "Choose a file") })] })) : (_jsx(Grid, { container: true, direction: "column", justifyContent: "center", alignItems: "center", sx: {
|
42
|
+
} }, { children: loading ? (_jsx(CircularProgress, { sx: { height: "25px", width: "25px" } })) : (chooseFileText || "Choose a file") }))] }))) : (_jsx(Grid, __assign({ container: true, direction: "column", justifyContent: "center", alignItems: "center", sx: {
|
21
43
|
border: "1px dashed #0099a7",
|
22
44
|
borderRadius: "5px",
|
23
45
|
outline: "none",
|
24
46
|
backgroundColor: "#F2F2F2",
|
25
|
-
maxWidth,
|
26
|
-
height,
|
47
|
+
maxWidth: maxWidth,
|
48
|
+
height: height,
|
27
49
|
width: "100%"
|
28
|
-
},
|
50
|
+
} }, rootProps, { children: loading ? (_jsx(CircularProgress, { style: { height: "30px", width: "30px" } })) : (_jsxs("div", { children: [_jsx("input", __assign({}, getInputProps())), _jsx(Typography, __assign({ component: "p", variant: "caption", sx: {
|
29
51
|
fontSize: ".875rem",
|
30
52
|
textAlign: "center"
|
31
|
-
}, children: dropFileText || "Drop files here" }), _jsx(Button, { variant: "contained", onClick: onSelectFile, sx: {
|
53
|
+
} }, { children: dropFileText || "Drop files here" })), _jsx(Button, __assign({ variant: "contained", onClick: onSelectFile, sx: {
|
32
54
|
backgroundColor: "white !important",
|
33
55
|
color: disabled
|
34
56
|
? theme.palette.grey[400]
|
35
57
|
: theme.palette.primary.main,
|
36
58
|
fontFamily: "Roboto, Helvetica, Arial, sans-serif",
|
37
59
|
cursor: disabled ? "not-allowed" : "pointer"
|
38
|
-
}, disabled: disabled, children: _jsx(Typography, { children: chooseFileText || "Choose a file" }) })] })) })), _jsx(AlertDialog, { open: alertArgs.open, primaryColor: primaryColor, secondaryColor: secondaryColor, onClose: onCloseAlert, children: alertArgs.message })] }));
|
60
|
+
}, disabled: disabled }, { children: _jsx(Typography, { children: chooseFileText || "Choose a file" }) }))] })) }))), _jsx(AlertDialog, __assign({ open: alertArgs.open, primaryColor: primaryColor, secondaryColor: secondaryColor, onClose: onCloseAlert }, { children: alertArgs.message }))] })));
|
39
61
|
}
|
40
62
|
export default FileUploader;
|
41
63
|
export * from "./types";
|
@@ -1,22 +1,37 @@
|
|
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 { useState, useCallback, useMemo } from "react";
|
2
13
|
import { useDropzone } from "react-dropzone";
|
3
14
|
function useInteractions(props) {
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
15
|
+
var _a = props.multiple, multiple = _a === void 0 ? false : _a, _b = props.disabled, disabled = _b === void 0 ? false : _b, maxFiles = props.maxFiles, _c = props.maxSize, maxSize = _c === void 0 ? 1024 * 1024 * 5 : _c, accept = props.accept, onUpload = props.onUpload, sizeExceededErrorText = props.sizeExceededErrorText, wrongFileTypeErrorText = props.wrongFileTypeErrorText;
|
16
|
+
var ERROR_TYPE_MSG = useMemo(function () {
|
17
|
+
return wrongFileTypeErrorText ||
|
18
|
+
"The type of the file you uploaded is not accepted, please reupload!";
|
19
|
+
}, [wrongFileTypeErrorText]);
|
20
|
+
var ERROR_SIZE_MSG = useMemo(function () {
|
21
|
+
return sizeExceededErrorText ||
|
22
|
+
"Your file exceed the max size of ".concat(maxSize / 1024 / 1024, "MB.");
|
23
|
+
}, [sizeExceededErrorText, maxSize]);
|
24
|
+
var _d = useState({ open: false, message: "" }), alertArgs = _d[0], setAlertArgs = _d[1];
|
25
|
+
var onOpenAlert = useCallback(function (message) {
|
26
|
+
setAlertArgs(function (args) { return (__assign(__assign({}, args), { open: true, message: message })); });
|
12
27
|
}, []);
|
13
|
-
|
28
|
+
var onCloseAlert = useCallback(function () {
|
14
29
|
setAlertArgs({ open: false, message: "" });
|
15
30
|
}, []);
|
16
|
-
|
31
|
+
var onDrop = useCallback(function (acceptedFiles, rejectedFiles) {
|
17
32
|
if (rejectedFiles && rejectedFiles.length > 0) {
|
18
|
-
rejectedFiles.some((rejectedFile)
|
19
|
-
|
33
|
+
rejectedFiles.some(function (rejectedFile) {
|
34
|
+
var file = rejectedFile.file, errors = rejectedFile.errors;
|
20
35
|
if (accept && !Object.keys(accept).includes(file.type)) {
|
21
36
|
onOpenAlert(ERROR_TYPE_MSG);
|
22
37
|
return true;
|
@@ -36,29 +51,29 @@ function useInteractions(props) {
|
|
36
51
|
onUpload(acceptedFiles);
|
37
52
|
}
|
38
53
|
}, [accept, onUpload]);
|
39
|
-
|
40
|
-
onDrop,
|
41
|
-
accept,
|
42
|
-
multiple,
|
43
|
-
disabled,
|
44
|
-
maxSize,
|
45
|
-
maxFiles
|
46
|
-
});
|
47
|
-
|
48
|
-
onClick: e
|
49
|
-
onKeyDown: e
|
54
|
+
var _e = useDropzone({
|
55
|
+
onDrop: onDrop,
|
56
|
+
accept: accept,
|
57
|
+
multiple: multiple,
|
58
|
+
disabled: disabled,
|
59
|
+
maxSize: maxSize,
|
60
|
+
maxFiles: maxFiles
|
61
|
+
}), getRootProps = _e.getRootProps, getInputProps = _e.getInputProps, onSelectFile = _e.open;
|
62
|
+
var rootProps = getRootProps({
|
63
|
+
onClick: function (e) { return e.stopPropagation(); },
|
64
|
+
onKeyDown: function (e) {
|
50
65
|
if (e.key === "Space" || e.key === "Enter") {
|
51
66
|
e.stopPropagation();
|
52
67
|
}
|
53
68
|
}
|
54
69
|
});
|
55
70
|
return {
|
56
|
-
alertArgs,
|
57
|
-
rootProps,
|
58
|
-
onCloseAlert,
|
59
|
-
onSelectFile,
|
60
|
-
getRootProps,
|
61
|
-
getInputProps
|
71
|
+
alertArgs: alertArgs,
|
72
|
+
rootProps: rootProps,
|
73
|
+
onCloseAlert: onCloseAlert,
|
74
|
+
onSelectFile: onSelectFile,
|
75
|
+
getRootProps: getRootProps,
|
76
|
+
getInputProps: getInputProps
|
62
77
|
};
|
63
78
|
}
|
64
79
|
export default useInteractions;
|
package/FormRadioGroup/index.js
CHANGED
@@ -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, jsxs as _jsxs } from "react/jsx-runtime";
|
2
24
|
import Radio from "@mui/material/Radio";
|
3
25
|
import Tooltip from "@mui/material/Tooltip";
|
@@ -9,11 +31,14 @@ import FormControlLabel from "@mui/material/FormControlLabel";
|
|
9
31
|
import ThemeProvider from "@mui/material/styles/ThemeProvider";
|
10
32
|
import useCustomTheme from "../useCustomTheme";
|
11
33
|
function FormRadioGroup(props) {
|
12
|
-
|
13
|
-
|
14
|
-
return (_jsx(ThemeProvider, { theme: theme, children: _jsxs(FormControl, { disabled: disabled,
|
34
|
+
var formLabel = props.formLabel, value = props.value, options = props.options, disabled = props.disabled, tooltip = props.tooltip, primaryColor = props.primaryColor, secondaryColor = props.secondaryColor, radioLabelPlacement = props.radioLabelPlacement, onChange = props.onChange, rest = __rest(props, ["formLabel", "value", "options", "disabled", "tooltip", "primaryColor", "secondaryColor", "radioLabelPlacement", "onChange"]);
|
35
|
+
var theme = useCustomTheme({ primaryColor: primaryColor, secondaryColor: secondaryColor });
|
36
|
+
return (_jsx(ThemeProvider, __assign({ theme: theme }, { children: _jsxs(FormControl, __assign({ disabled: disabled }, rest, { children: [tooltip ? (_jsx(Tooltip, __assign({ arrow: true, placement: "top", title: tooltip, disableTouchListener: true }, { children: _jsx(FormLabel, { children: formLabel }) }))) : (_jsx(FormLabel, { children: formLabel })), _jsx(RadioGroup, __assign({ value: value, onChange: function (event) {
|
15
37
|
onChange(event.target.value);
|
16
|
-
}
|
38
|
+
} }, { children: options.map(function (opt) {
|
39
|
+
var _a;
|
40
|
+
return (_jsx(FormControlLabel, { value: opt.value, control: _jsx(Radio, {}), label: _jsx(Typography, { children: opt.label }), labelPlacement: radioLabelPlacement || "end", disabled: ((_a = opt.disabled) !== null && _a !== void 0 ? _a : false) || disabled }, String(opt.value)));
|
41
|
+
}) }))] })) })));
|
17
42
|
}
|
18
43
|
export default FormRadioGroup;
|
19
44
|
export * from "./types";
|
@@ -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, jsxs as _jsxs } from "react/jsx-runtime";
|
2
24
|
import Select from "@mui/material/Select";
|
3
25
|
import Tooltip from "@mui/material/Tooltip";
|
@@ -9,18 +31,19 @@ import ThemeProvider from "@mui/material/styles/ThemeProvider";
|
|
9
31
|
import useInteractions from "./useInteractions";
|
10
32
|
import useCustomTheme from "../useCustomTheme";
|
11
33
|
function MultipleSelector(props) {
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
return (_jsx(ThemeProvider, { theme: theme, children: _jsx(Tooltip, { arrow: true, placement: "top", title: tooltip
|
34
|
+
var label = props.label, _a = props.variant, variant = _a === void 0 ? "outlined" : _a, value = props.value, tooltip = props.tooltip, _b = props.required, required = _b === void 0 ? false : _b, _c = props.disabled, disabled = _c === void 0 ? false : _c, _d = props.multiple, multiple = _d === void 0 ? false : _d, _e = props.showHelperText, showHelperText = _e === void 0 ? false : _e, helperText = props.helperText, _f = props.options, options = _f === void 0 ? [] : _f, primaryColor = props.primaryColor, secondaryColor = props.secondaryColor, onChange = props.onChange, rest = __rest(props, ["label", "variant", "value", "tooltip", "required", "disabled", "multiple", "showHelperText", "helperText", "options", "primaryColor", "secondaryColor", "onChange"]);
|
35
|
+
var theme = useCustomTheme({ primaryColor: primaryColor, secondaryColor: secondaryColor });
|
36
|
+
var _g = useInteractions(), tooltipOpen = _g.tooltipOpen, onOpenTooltip = _g.onOpenTooltip, onCloseTooltip = _g.onCloseTooltip;
|
37
|
+
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: _jsxs(FormControl, __assign({ variant: variant, disabled: disabled, required: required }, rest, { children: [label && (_jsx(InputLabel, __assign({ id: "symply-multiple-select" }, { children: label }))), _jsx(Select, __assign({ disabled: disabled, required: required, value: value, multiple: true, onChange: function (event) {
|
38
|
+
var _a;
|
16
39
|
event.preventDefault();
|
17
|
-
onChange(event
|
40
|
+
onChange((_a = event === null || event === void 0 ? void 0 : event.target) === null || _a === void 0 ? void 0 : _a.value);
|
18
41
|
}, inputProps: {
|
19
42
|
onFocus: onOpenTooltip,
|
20
43
|
onBlur: onCloseTooltip
|
21
|
-
}, label: label, renderValue: multiple ? selected
|
22
|
-
|
23
|
-
return (_jsx(MenuItem, { value: value, children: label }, value));
|
24
|
-
})) : (_jsx(MenuItem, { value: "", disabled: true, children: "No Options" })) }), !!helperText && showHelperText && (_jsx(FormHelperText, { children: showHelperText }))] }) }) }));
|
44
|
+
}, label: label, renderValue: multiple ? function (selected) { return selected.join("; "); } : undefined }, { children: (options === null || options === void 0 ? void 0 : options.length) > 0 ? (options.map(function (option) {
|
45
|
+
var _a = option, label = _a.label, value = _a.value;
|
46
|
+
return (_jsx(MenuItem, __assign({ value: value }, { children: label }), value));
|
47
|
+
})) : (_jsx(MenuItem, __assign({ value: "", disabled: true }, { children: "No Options" }))) })), !!helperText && showHelperText && (_jsx(FormHelperText, { children: showHelperText }))] })) })) })));
|
25
48
|
}
|
26
49
|
export default MultipleSelector;
|
@@ -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, jsxs as _jsxs } from "react/jsx-runtime";
|
2
24
|
import Select from "@mui/material/Select";
|
3
25
|
import Tooltip from "@mui/material/Tooltip";
|
@@ -9,18 +31,19 @@ import ThemeProvider from "@mui/material/styles/ThemeProvider";
|
|
9
31
|
import useInteractions from "./useInteractions";
|
10
32
|
import useCustomTheme from "../useCustomTheme";
|
11
33
|
function SimpleSelector(props) {
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
return (_jsx(ThemeProvider, { theme: theme, children: _jsx(Tooltip, { arrow: true, placement: "top", title: tooltip
|
34
|
+
var label = props.label, _a = props.variant, variant = _a === void 0 ? "outlined" : _a, value = props.value, tooltip = props.tooltip, _b = props.disabled, disabled = _b === void 0 ? false : _b, _c = props.required, required = _c === void 0 ? false : _c, _d = props.showHelperText, showHelperText = _d === void 0 ? false : _d, helperText = props.helperText, _e = props.options, options = _e === void 0 ? [] : _e, primaryColor = props.primaryColor, secondaryColor = props.secondaryColor, onChange = props.onChange, rest = __rest(props, ["label", "variant", "value", "tooltip", "disabled", "required", "showHelperText", "helperText", "options", "primaryColor", "secondaryColor", "onChange"]);
|
35
|
+
var theme = useCustomTheme({ primaryColor: primaryColor, secondaryColor: secondaryColor });
|
36
|
+
var _f = useInteractions(), tooltipOpen = _f.tooltipOpen, onOpenTooltip = _f.onOpenTooltip, onCloseTooltip = _f.onCloseTooltip;
|
37
|
+
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: _jsxs(FormControl, __assign({ variant: variant, disabled: disabled, required: required }, rest, { children: [label && (_jsx(InputLabel, __assign({ id: "symply-simple-selector" }, { children: label }))), _jsx(Select, __assign({ value: value, required: required, disabled: disabled, onChange: function (event) {
|
38
|
+
var _a;
|
16
39
|
event.preventDefault();
|
17
|
-
onChange(event
|
40
|
+
onChange((_a = event === null || event === void 0 ? void 0 : event.target) === null || _a === void 0 ? void 0 : _a.value);
|
18
41
|
}, inputProps: {
|
19
42
|
onFocus: onOpenTooltip,
|
20
43
|
onBlur: onCloseTooltip
|
21
|
-
}, label: label, children: options
|
22
|
-
|
23
|
-
return (_jsx(MenuItem, { value: value, disabled: disabled, children: label }, value));
|
24
|
-
})) : (_jsx(MenuItem, { value: "", disabled: true, children: "No Options" })) }), !!helperText && showHelperText && (_jsx(FormHelperText, { children: showHelperText }))] }) }) }));
|
44
|
+
}, label: label }, { children: (options === null || options === void 0 ? void 0 : options.length) > 0 ? (options.map(function (option) {
|
45
|
+
var label = option.label, value = option.value, disabled = option.disabled;
|
46
|
+
return (_jsx(MenuItem, __assign({ value: value, disabled: disabled }, { children: label }), value));
|
47
|
+
})) : (_jsx(MenuItem, __assign({ value: "", disabled: true }, { children: "No Options" }))) })), !!helperText && showHelperText && (_jsx(FormHelperText, { children: showHelperText }))] })) })) })));
|
25
48
|
}
|
26
49
|
export default SimpleSelector;
|
@@ -1,20 +1,20 @@
|
|
1
1
|
import { useState, useEffect, useCallback } from "react";
|
2
2
|
function useInteractions() {
|
3
|
-
|
4
|
-
|
3
|
+
var _a = useState(false), tooltipOpen = _a[0], setTooltipOpen = _a[1];
|
4
|
+
var onOpenTooltip = useCallback(function () {
|
5
5
|
setTooltipOpen(true);
|
6
6
|
}, []);
|
7
|
-
|
7
|
+
var onCloseTooltip = useCallback(function () {
|
8
8
|
setTooltipOpen(false);
|
9
9
|
}, []);
|
10
|
-
useEffect(()
|
10
|
+
useEffect(function () {
|
11
11
|
window.addEventListener("scroll", onCloseTooltip);
|
12
12
|
window.addEventListener("resize", onCloseTooltip);
|
13
13
|
}, [onCloseTooltip]);
|
14
|
-
useEffect(()
|
14
|
+
useEffect(function () { return function () {
|
15
15
|
window.removeEventListener("resize", onCloseTooltip);
|
16
16
|
window.removeEventListener("scroll", onCloseTooltip);
|
17
|
-
}, [onCloseTooltip]);
|
18
|
-
return { tooltipOpen, onOpenTooltip, onCloseTooltip };
|
17
|
+
}; }, [onCloseTooltip]);
|
18
|
+
return { tooltipOpen: tooltipOpen, onOpenTooltip: onOpenTooltip, onCloseTooltip: onCloseTooltip };
|
19
19
|
}
|
20
20
|
export default useInteractions;
|
package/HelpCaption/index.js
CHANGED
@@ -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, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
2
13
|
import Grid from "@mui/material/Grid";
|
3
14
|
import Typography from "@mui/material/Typography";
|
@@ -6,11 +17,11 @@ import VideoPlayerModal from "../VideoPlayerModal";
|
|
6
17
|
import useInteractions from "./useInteractions";
|
7
18
|
import useCustomTheme from "../useCustomTheme";
|
8
19
|
function HelpCaption(props) {
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
return (_jsx(ThemeProvider, { theme: theme, children: _jsxs(Grid, { container: true, spacing: 1, direction: subCaption ? "column" : "row", children: [_jsx(Grid, { item: true, children: _jsx(Typography, { align: "left", component: "span", children: mainCaption }) }), _jsxs(Grid, { item: true, children: [subCaption && (_jsxs(_Fragment, { children: [_jsx(Typography, { align: "left", component: "span", children: subCaption }), "\u00A0"] })), linkUrl && (_jsx(Typography, { onClick: linkType === "WEBPAGE"
|
13
|
-
? ()
|
20
|
+
var mainCaption = props.mainCaption, subCaption = props.subCaption, linkUrl = props.linkUrl, _a = props.linkText, linkText = _a === void 0 ? "Watch Demo" : _a, _b = props.linkType, linkType = _b === void 0 ? "WEBPAGE" : _b, primaryColor = props.primaryColor, secondaryColor = props.secondaryColor;
|
21
|
+
var theme = useCustomTheme({ primaryColor: primaryColor, secondaryColor: secondaryColor });
|
22
|
+
var _c = useInteractions(), videoModalOpen = _c.videoModalOpen, onOpenVideoModal = _c.onOpenVideoModal, onCloseVideoModal = _c.onCloseVideoModal;
|
23
|
+
return (_jsx(ThemeProvider, __assign({ theme: theme }, { children: _jsxs(Grid, __assign({ container: true, spacing: 1, direction: subCaption ? "column" : "row" }, { children: [_jsx(Grid, __assign({ item: true }, { children: _jsx(Typography, __assign({ align: "left", component: "span" }, { children: mainCaption })) })), _jsxs(Grid, __assign({ item: true }, { children: [subCaption && (_jsxs(_Fragment, { children: [_jsx(Typography, __assign({ align: "left", component: "span" }, { children: subCaption })), "\u00A0"] })), linkUrl && (_jsx(Typography, __assign({ onClick: linkType === "WEBPAGE"
|
24
|
+
? function () {
|
14
25
|
window.open(linkUrl);
|
15
26
|
}
|
16
27
|
: onOpenVideoModal, align: "left", color: "primary", component: "span", sx: {
|
@@ -19,6 +30,6 @@ function HelpCaption(props) {
|
|
19
30
|
color: theme.palette.primary.dark,
|
20
31
|
textDecoration: "underline"
|
21
32
|
}
|
22
|
-
}, children: _jsx("b", { children: linkText }) }))] }), linkUrl && (_jsx(VideoPlayerModal, { open: videoModalOpen, url: linkUrl, onClose: onCloseVideoModal }))] }) }));
|
33
|
+
} }, { children: _jsx("b", { children: linkText }) })))] })), linkUrl && (_jsx(VideoPlayerModal, { open: videoModalOpen, url: linkUrl, onClose: onCloseVideoModal }))] })) })));
|
23
34
|
}
|
24
35
|
export default HelpCaption;
|
@@ -1,12 +1,12 @@
|
|
1
1
|
import { useState } from 'react';
|
2
2
|
function useInteractions() {
|
3
|
-
|
3
|
+
var _a = useState(false), videoModalOpen = _a[0], setVideoModalOpen = _a[1];
|
4
4
|
function onOpenVideoModal() {
|
5
5
|
setVideoModalOpen(true);
|
6
6
|
}
|
7
7
|
function onCloseVideoModal() {
|
8
8
|
setVideoModalOpen(false);
|
9
9
|
}
|
10
|
-
return { videoModalOpen, onOpenVideoModal, onCloseVideoModal };
|
10
|
+
return { videoModalOpen: videoModalOpen, onOpenVideoModal: onOpenVideoModal, onCloseVideoModal: onCloseVideoModal };
|
11
11
|
}
|
12
12
|
export default useInteractions;
|
package/LoadingModal/Modal.js
CHANGED
@@ -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 Box from "@mui/material/Box";
|
3
14
|
import Grid from "@mui/material/Grid";
|
@@ -8,11 +19,11 @@ import CircularProgress from "@mui/material/CircularProgress";
|
|
8
19
|
import ThemeProvider from "@mui/material/styles/ThemeProvider";
|
9
20
|
import useCustomTheme from "../useCustomTheme";
|
10
21
|
function LoadingModal(props) {
|
11
|
-
|
12
|
-
|
13
|
-
return (_jsx(ThemeProvider, { theme: theme, children: _jsx(Dialog, { maxWidth: "xs", open: open, sx: { backgroundColor: "#7A7A7A97" }, PaperProps: { sx: { backgroundColor: "#F2F2F2CF" } }, onClose: (_, reason)
|
22
|
+
var open = props.open, _a = props.text, text = _a === void 0 ? "Loading..." : _a, _b = props.direction, direction = _b === void 0 ? "column" : _b, _c = props.showProgess, showProgess = _c === void 0 ? false : _c, _d = props.percent, percent = _d === void 0 ? 0 : _d, primaryColor = props.primaryColor, secondaryColor = props.secondaryColor;
|
23
|
+
var theme = useCustomTheme({ primaryColor: primaryColor, secondaryColor: secondaryColor });
|
24
|
+
return (_jsx(ThemeProvider, __assign({ theme: theme }, { children: _jsx(Dialog, __assign({ maxWidth: "xs", open: open, sx: { backgroundColor: "#7A7A7A97" }, PaperProps: { sx: { backgroundColor: "#F2F2F2CF" } }, onClose: function (_, reason) {
|
14
25
|
if (reason === "backdropClick")
|
15
26
|
return;
|
16
|
-
}, disableScrollLock: true, disableAutoFocus: true, disableEnforceFocus: true, disableEscapeKeyDown: true, children: _jsx(DialogContent, { children: _jsxs(Grid, { container: true, direction: direction, justifyContent: "space-between", alignItems: "center", "data-testid": "loading-grid", children: [_jsxs(Box, { position: "relative", display: "inline-flex", sx: { mt: 1.25 }, children: [_jsx(CircularProgress, { size: showProgess ? 56 : 40, value: percent, variant: showProgess ? "determinate" : "indeterminate" }), showProgess && percent >= 0 && (_jsx(Box, { top: 0, left: 0, bottom: 0, right: 0, position: "absolute", display: "flex", alignItems: "center", justifyContent: "center", children: _jsxs(Typography, { variant: "caption", children: [Math.round(percent), "%"] }) }))] }), _jsx(Typography, { component: "span", sx: { mt: 1, fontSize: 16, fontWeight: 400 }, children: text })] }) }) }) }));
|
27
|
+
}, disableScrollLock: true, disableAutoFocus: true, disableEnforceFocus: true, disableEscapeKeyDown: true }, { children: _jsx(DialogContent, { children: _jsxs(Grid, __assign({ container: true, direction: direction, justifyContent: "space-between", alignItems: "center", "data-testid": "loading-grid" }, { children: [_jsxs(Box, __assign({ position: "relative", display: "inline-flex", sx: { mt: 1.25 } }, { children: [_jsx(CircularProgress, { size: showProgess ? 56 : 40, value: percent, variant: showProgess ? "determinate" : "indeterminate" }), showProgess && percent >= 0 && (_jsx(Box, __assign({ top: 0, left: 0, bottom: 0, right: 0, position: "absolute", display: "flex", alignItems: "center", justifyContent: "center" }, { children: _jsxs(Typography, __assign({ variant: "caption" }, { children: [Math.round(percent), "%"] })) })))] })), _jsx(Typography, __assign({ component: "span", sx: { mt: 1, fontSize: 16, fontWeight: 400 } }, { children: text }))] })) }) })) })));
|
17
28
|
}
|
18
29
|
export default LoadingModal;
|