@sikka/hawa 0.0.38 → 0.0.42
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/.github/workflows/hawa-publish-push.yml +4 -3
- package/.github/workflows/hawa-publish.yml +3 -1
- package/README.md +1 -0
- package/es/index.es.js +1 -1
- package/lib/index.js +1 -1
- package/package.json +14 -5
- package/src/Hooks.js +61 -0
- package/src/blocks/Account/UserProfileForm.js +39 -1
- package/src/blocks/AuthForms/CodeConfirmation.js +94 -0
- package/src/blocks/AuthForms/SignInForm.js +1 -1
- package/src/blocks/AuthForms/SignInPhone.js +43 -0
- package/src/blocks/AuthForms/SignUpForm.js +2 -0
- package/src/blocks/AuthForms/index.js +2 -0
- package/src/blocks/Misc/NotFound.js +47 -0
- package/src/blocks/Misc/index.js +1 -0
- package/src/blocks/Pricing/PricingPlans.js +3 -3
- package/src/elements/AdaptiveButton.js +1 -1
- package/src/elements/HawaChip.js +6 -0
- package/src/elements/{HawaRadio.js → HawaPanelTabs.js} +3 -2
- package/src/elements/HawaPhoneInput.js +48 -0
- package/src/elements/HawaSettingsRow.js +2 -2
- package/src/elements/PinInput.js +9 -1
- package/src/elements/index.js +3 -3
- package/src/index.js +1 -0
- package/src/layout/HawaAppBar.js +0 -1
- package/src/styles.css +54 -3
- package/src/theme/HawaTheme.js +51 -31
- package/storybook-static/iframe.html +1 -1
- package/storybook-static/main.73b8ca43.iframe.bundle.js +1 -0
- package/storybook-static/project.json +1 -1
- package/storybook-static/{vendors~main.826e89a1.iframe.bundle.js → vendors~main.55d84da5.iframe.bundle.js} +3 -3
- package/storybook-static/{vendors~main.826e89a1.iframe.bundle.js.LICENSE.txt → vendors~main.55d84da5.iframe.bundle.js.LICENSE.txt} +6 -0
- package/storybook-static/vendors~main.55d84da5.iframe.bundle.js.map +1 -0
- package/src/elements/HawaInputLabel.js +0 -9
- package/src/elements/HawaTextArea.js +0 -26
- package/storybook-static/main.2a7fa838.iframe.bundle.js +0 -1
- package/storybook-static/vendors~main.826e89a1.iframe.bundle.js.map +0 -1
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { HawaTextField, HawaLogoButton, HawaAlert } from "../../elements";
|
|
3
|
+
import { Controller, useForm } from "react-hook-form";
|
|
4
|
+
import InputAdornment from "@mui/material/InputAdornment";
|
|
5
|
+
import EmailIcon from "@mui/icons-material/MailOutline";
|
|
6
|
+
import PasswordIcon from "@mui/icons-material/HttpsOutlined";
|
|
7
|
+
import Container from "@mui/material/Container";
|
|
8
|
+
import Typography from "@mui/material/Typography";
|
|
9
|
+
import Button from "@mui/material/Button";
|
|
10
|
+
import PropTypes from "prop-types";
|
|
11
|
+
import Divider from "@mui/material/Divider";
|
|
12
|
+
|
|
13
|
+
export const CodeConfirmation = (props) => {
|
|
14
|
+
const methods = useForm();
|
|
15
|
+
const {
|
|
16
|
+
formState: { errors },
|
|
17
|
+
handleSubmit,
|
|
18
|
+
control
|
|
19
|
+
} = methods;
|
|
20
|
+
|
|
21
|
+
return (
|
|
22
|
+
<Container
|
|
23
|
+
maxWidth="xs"
|
|
24
|
+
variant="auth"
|
|
25
|
+
style={{ direction: props.lang === "ar" ? "rtl" : "ltr" }}
|
|
26
|
+
>
|
|
27
|
+
{props.showError && (
|
|
28
|
+
<HawaAlert
|
|
29
|
+
title={props.errorTitle}
|
|
30
|
+
text={props.errorText}
|
|
31
|
+
severity="error"
|
|
32
|
+
/>
|
|
33
|
+
)}
|
|
34
|
+
<form onSubmit={handleSubmit(props.handleSignIn)}>
|
|
35
|
+
<Controller
|
|
36
|
+
control={control}
|
|
37
|
+
name="code"
|
|
38
|
+
render={({ field }) => (
|
|
39
|
+
<HawaTextField
|
|
40
|
+
fullWidth
|
|
41
|
+
type="number"
|
|
42
|
+
value={field.value ?? ""}
|
|
43
|
+
label={props.texts.codeLabel}
|
|
44
|
+
helperText={errors.email?.message}
|
|
45
|
+
placeholder={props.texts.codePlaceholder}
|
|
46
|
+
// startAdornment={
|
|
47
|
+
// <InputAdornment position="start">
|
|
48
|
+
// <EmailIcon />
|
|
49
|
+
// </InputAdornment>
|
|
50
|
+
// }
|
|
51
|
+
{...field}
|
|
52
|
+
/>
|
|
53
|
+
)}
|
|
54
|
+
rules={{
|
|
55
|
+
required: props.texts.codeRequiredText
|
|
56
|
+
}}
|
|
57
|
+
/>
|
|
58
|
+
|
|
59
|
+
<Button type="submit" fullWidth variant="last">
|
|
60
|
+
{props.texts.confirmText}
|
|
61
|
+
</Button>
|
|
62
|
+
</form>
|
|
63
|
+
</Container>
|
|
64
|
+
);
|
|
65
|
+
};
|
|
66
|
+
CodeConfirmation.propTypes = {
|
|
67
|
+
/**
|
|
68
|
+
* An object of all the texts in the blocks
|
|
69
|
+
*/
|
|
70
|
+
texts: PropTypes.shape({
|
|
71
|
+
emailLabel: PropTypes.string,
|
|
72
|
+
emailPlaceholder: PropTypes.string,
|
|
73
|
+
emailRequiredText: PropTypes.string,
|
|
74
|
+
emailInvalidText: PropTypes.string,
|
|
75
|
+
passwordLabel: PropTypes.string,
|
|
76
|
+
passwordPlaceholder: PropTypes.string,
|
|
77
|
+
passwordRequiredText: PropTypes.string,
|
|
78
|
+
forgotPasswordText: PropTypes.string,
|
|
79
|
+
newUserText: PropTypes.string,
|
|
80
|
+
signUpText: PropTypes.string,
|
|
81
|
+
confirmText: PropTypes.string,
|
|
82
|
+
googleButtonLabel: PropTypes.string,
|
|
83
|
+
githubButtonLabel: PropTypes.string,
|
|
84
|
+
twitterButtonLabel: PropTypes.string
|
|
85
|
+
}),
|
|
86
|
+
viaGoogle: PropTypes.bool,
|
|
87
|
+
viaGithub: PropTypes.bool,
|
|
88
|
+
viaTwitter: PropTypes.bool,
|
|
89
|
+
handleSignIn: PropTypes.func,
|
|
90
|
+
handleRouteToSignUp: PropTypes.func,
|
|
91
|
+
handleGoogleSignIn: PropTypes.func,
|
|
92
|
+
handleGithubSignIn: PropTypes.func,
|
|
93
|
+
handleTwitterSignIn: PropTypes.func
|
|
94
|
+
};
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { Button, Container } from "@mui/material";
|
|
2
|
+
import { useState } from "react";
|
|
3
|
+
import { Controller, useForm } from "react-hook-form";
|
|
4
|
+
import HawaPhoneInput from "../../elements/HawaPhoneInput";
|
|
5
|
+
|
|
6
|
+
export const SignInPhone = (props) => {
|
|
7
|
+
const [phone, setPhone] = useState("");
|
|
8
|
+
const methods = useForm();
|
|
9
|
+
const {
|
|
10
|
+
formState: { errors },
|
|
11
|
+
handleSubmit,
|
|
12
|
+
control
|
|
13
|
+
} = methods;
|
|
14
|
+
return (
|
|
15
|
+
<Container
|
|
16
|
+
maxWidth="xs"
|
|
17
|
+
variant="auth"
|
|
18
|
+
style={{ direction: props.lang === "ar" ? "rtl" : "ltr" }}
|
|
19
|
+
>
|
|
20
|
+
<form onSubmit={handleSubmit(props.onSubmit)}>
|
|
21
|
+
<Controller
|
|
22
|
+
control={control}
|
|
23
|
+
name="phone"
|
|
24
|
+
render={({ field }) => (
|
|
25
|
+
<HawaPhoneInput
|
|
26
|
+
country={props.country ?? ""}
|
|
27
|
+
label={props.label ?? ""}
|
|
28
|
+
onChange={(e) => {
|
|
29
|
+
props.onChange(e);
|
|
30
|
+
setPhone(e);
|
|
31
|
+
}}
|
|
32
|
+
value={props.value ?? props.value}
|
|
33
|
+
{...field}
|
|
34
|
+
/>
|
|
35
|
+
)}
|
|
36
|
+
/>
|
|
37
|
+
<Button fullWidth type="submit" variant="last">
|
|
38
|
+
{props.SignInButtonText}
|
|
39
|
+
</Button>
|
|
40
|
+
</form>
|
|
41
|
+
</Container>
|
|
42
|
+
);
|
|
43
|
+
};
|
|
@@ -51,6 +51,7 @@ export const SignUpForm = (props) => {
|
|
|
51
51
|
<PersonIcon />
|
|
52
52
|
</InputAdornment>
|
|
53
53
|
}
|
|
54
|
+
{...field}
|
|
54
55
|
/>
|
|
55
56
|
)}
|
|
56
57
|
rules={{
|
|
@@ -74,6 +75,7 @@ export const SignUpForm = (props) => {
|
|
|
74
75
|
<EmailIcon />
|
|
75
76
|
</InputAdornment>
|
|
76
77
|
}
|
|
78
|
+
{...field}
|
|
77
79
|
/>
|
|
78
80
|
)}
|
|
79
81
|
rules={{
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import Container from "@mui/material/Container";
|
|
3
|
+
import PropTypes from "prop-types";
|
|
4
|
+
import Typography from "@mui/material/Typography";
|
|
5
|
+
import { Button } from "@mui/material";
|
|
6
|
+
|
|
7
|
+
export const NotFound = (props) => {
|
|
8
|
+
return (
|
|
9
|
+
<div
|
|
10
|
+
style={{
|
|
11
|
+
display: "flex",
|
|
12
|
+
flexDirection: "column",
|
|
13
|
+
alignItems: "center"
|
|
14
|
+
}}
|
|
15
|
+
>
|
|
16
|
+
<Typography variant="h2" fontWeight={700}>
|
|
17
|
+
404
|
|
18
|
+
</Typography>
|
|
19
|
+
<Typography variant="h5" fontWeight={700}>
|
|
20
|
+
Page Not Found
|
|
21
|
+
</Typography>
|
|
22
|
+
<Container
|
|
23
|
+
style={{
|
|
24
|
+
maxWidth: 300,
|
|
25
|
+
marginTop: 10,
|
|
26
|
+
direction: props.lang === "ar" ? "rtl" : "ltr"
|
|
27
|
+
}}
|
|
28
|
+
maxWidth="xs"
|
|
29
|
+
>
|
|
30
|
+
<Typography textAlign={"center"}>
|
|
31
|
+
If you're lost please contact us help@sikka.io{" "}
|
|
32
|
+
</Typography>
|
|
33
|
+
<Button style={{ marginTop: 5 }} variant="contained">
|
|
34
|
+
Home
|
|
35
|
+
</Button>
|
|
36
|
+
</Container>
|
|
37
|
+
</div>
|
|
38
|
+
);
|
|
39
|
+
};
|
|
40
|
+
NotFound.propTypes = {
|
|
41
|
+
/**
|
|
42
|
+
* An object of all the texts in the blocks
|
|
43
|
+
*/
|
|
44
|
+
texts: PropTypes.shape({
|
|
45
|
+
emailLabel: PropTypes.string
|
|
46
|
+
})
|
|
47
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./NotFound.js";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React, { useState } from "react";
|
|
2
2
|
import Container from "@mui/material/Container";
|
|
3
|
-
import { HawaPricingCard,
|
|
3
|
+
import { HawaPricingCard, HawaPanelTabs } from "../../elements";
|
|
4
4
|
import PropTypes from "prop-types";
|
|
5
5
|
|
|
6
6
|
export const PricingPlans = (props) => {
|
|
@@ -16,7 +16,7 @@ export const PricingPlans = (props) => {
|
|
|
16
16
|
marginBottom: 10
|
|
17
17
|
}}
|
|
18
18
|
>
|
|
19
|
-
<
|
|
19
|
+
<HawaPanelTabs
|
|
20
20
|
location="inPricing"
|
|
21
21
|
handleChange={(e) => setCurrentCycle(e)}
|
|
22
22
|
defaultValue="monthly"
|
|
@@ -28,7 +28,7 @@ export const PricingPlans = (props) => {
|
|
|
28
28
|
]}
|
|
29
29
|
/>
|
|
30
30
|
|
|
31
|
-
<
|
|
31
|
+
<HawaPanelTabs
|
|
32
32
|
location="inPricing"
|
|
33
33
|
handleChange={(e) => {
|
|
34
34
|
setCurrentCurrency(e);
|
|
@@ -3,7 +3,7 @@ import Button from "@mui/material/Button";
|
|
|
3
3
|
import Container from "@mui/material/Container";
|
|
4
4
|
import PropTypes from "prop-types";
|
|
5
5
|
|
|
6
|
-
export const
|
|
6
|
+
export const HawaPanelTabs = (props) => {
|
|
7
7
|
const [value, setValue] = useState(props.defaultValue);
|
|
8
8
|
return (
|
|
9
9
|
<Container variant={props.location || "panelTabs"}>
|
|
@@ -29,7 +29,8 @@ export const HawaRadio = (props) => {
|
|
|
29
29
|
</Container>
|
|
30
30
|
);
|
|
31
31
|
};
|
|
32
|
-
|
|
32
|
+
|
|
33
|
+
HawaPanelTabs.propTypes = {
|
|
33
34
|
lang: PropTypes.string,
|
|
34
35
|
options: PropTypes.arrayOf(
|
|
35
36
|
PropTypes.shape({
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import PhoneInput from "react-phone-input-2";
|
|
2
|
+
import "react-phone-input-2/lib/material.css";
|
|
3
|
+
import { useTheme } from "@mui/system";
|
|
4
|
+
import { InputLabel } from "@mui/material";
|
|
5
|
+
|
|
6
|
+
export default function HawaPhoneInput(props) {
|
|
7
|
+
const {
|
|
8
|
+
country,
|
|
9
|
+
onChange,
|
|
10
|
+
value,
|
|
11
|
+
onlyContries,
|
|
12
|
+
preferredCountries,
|
|
13
|
+
inputProps,
|
|
14
|
+
required,
|
|
15
|
+
placeholder,
|
|
16
|
+
name,
|
|
17
|
+
label,
|
|
18
|
+
// onChange,
|
|
19
|
+
...rest
|
|
20
|
+
} = props;
|
|
21
|
+
|
|
22
|
+
const theme = useTheme();
|
|
23
|
+
return (
|
|
24
|
+
<div>
|
|
25
|
+
{label && <InputLabel>{props.label}</InputLabel>}
|
|
26
|
+
<PhoneInput
|
|
27
|
+
country={country ?? null}
|
|
28
|
+
onChange={(e) => onChange(e)}
|
|
29
|
+
value={value ?? value}
|
|
30
|
+
onlyCountries={onlyContries?.length > 0 ? onlyContries : []}
|
|
31
|
+
preferredCountries={
|
|
32
|
+
preferredCountries?.length > 0 ? preferredCountries : []
|
|
33
|
+
}
|
|
34
|
+
inputProps={{
|
|
35
|
+
required: required ?? false,
|
|
36
|
+
name: name ?? null
|
|
37
|
+
}}
|
|
38
|
+
specialLabel={""}
|
|
39
|
+
placeholder={placeholder ?? ""}
|
|
40
|
+
inputStyle={{
|
|
41
|
+
width: "100%",
|
|
42
|
+
borderRadius: theme.allBorderRadius
|
|
43
|
+
}}
|
|
44
|
+
{...rest}
|
|
45
|
+
/>
|
|
46
|
+
</div>
|
|
47
|
+
);
|
|
48
|
+
}
|
|
@@ -4,7 +4,7 @@ import Checkbox from "@mui/material/Checkbox";
|
|
|
4
4
|
import Container from "@mui/material/Container";
|
|
5
5
|
import { HawaTypography } from "./HawaTypography";
|
|
6
6
|
import { HawaTextField } from "./HawaTextField";
|
|
7
|
-
import {
|
|
7
|
+
import { HawaPanelTabs } from "./HawaPanelTabs";
|
|
8
8
|
import { HawaSwitch } from "./HawaSwitch";
|
|
9
9
|
import { HawaColorPicker } from "./HawaColorPicker";
|
|
10
10
|
import { HawaRange } from "./HawaRange";
|
|
@@ -19,7 +19,7 @@ export const HawaSettingsRow = (props) => {
|
|
|
19
19
|
{props.settingsType === "range" && <HawaRange {...props} />}
|
|
20
20
|
{props.settingsType === "color" && <HawaColorPicker {...props} />}
|
|
21
21
|
{props.settingsType === "radio" && (
|
|
22
|
-
<
|
|
22
|
+
<HawaPanelTabs location="inSettings" {...props} />
|
|
23
23
|
)}
|
|
24
24
|
</Container>
|
|
25
25
|
);
|
package/src/elements/PinInput.js
CHANGED
|
@@ -116,6 +116,14 @@ export const HawaPinInputField = (props) => {
|
|
|
116
116
|
id={"pinInput" + props.index}
|
|
117
117
|
defaultValue={props.defaultValue || ""}
|
|
118
118
|
variant="pin"
|
|
119
|
+
onKeyDown={(e) => {
|
|
120
|
+
if (e.key === "Backspace") {
|
|
121
|
+
let i = document.getElementById("pinInput" + (props.index - 1));
|
|
122
|
+
if (e) {
|
|
123
|
+
i.focus();
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
}}
|
|
119
127
|
disableUnderline
|
|
120
128
|
inputProps={{ maxLength: 1 }}
|
|
121
129
|
onChange={(e) => {
|
|
@@ -128,7 +136,7 @@ export const HawaPinInputField = (props) => {
|
|
|
128
136
|
e.target.value != ""
|
|
129
137
|
) {
|
|
130
138
|
let i = document.getElementById("pinInput" + (props.index + 1));
|
|
131
|
-
if (i) {
|
|
139
|
+
if (i != null) {
|
|
132
140
|
i.focus();
|
|
133
141
|
}
|
|
134
142
|
}
|
package/src/elements/index.js
CHANGED
|
@@ -2,7 +2,8 @@ export * from "./AdaptiveButton";
|
|
|
2
2
|
export * from "./ActionButton";
|
|
3
3
|
export * from "./HawaSnackbar";
|
|
4
4
|
export * from "./HawaCheckbox";
|
|
5
|
-
export * from "./
|
|
5
|
+
export * from "./HawaPanelTabs";
|
|
6
|
+
export * from "./HawaChip";
|
|
6
7
|
export * from "./HawaItemCard";
|
|
7
8
|
export * from "./HawaPricingCard";
|
|
8
9
|
export * from "./HawaSettingsRow";
|
|
@@ -11,8 +12,6 @@ export * from "./HawaButton";
|
|
|
11
12
|
export * from "./HawaSelect";
|
|
12
13
|
export * from "./HawaRange";
|
|
13
14
|
export * from "./HawaTextField";
|
|
14
|
-
export * from "./HawaTextArea";
|
|
15
|
-
export * from "./HawaInputLabel";
|
|
16
15
|
export * from "./HawaTypography";
|
|
17
16
|
export * from "./HawaAlert";
|
|
18
17
|
export * from "./HawaTable";
|
|
@@ -21,3 +20,4 @@ export * from "./HawaSearchBar";
|
|
|
21
20
|
export * from "./HawaAccordian";
|
|
22
21
|
export * from "./DragDropImages";
|
|
23
22
|
export * from "./DraggableCard";
|
|
23
|
+
export * from "./HawaPhoneInput"
|
package/src/index.js
CHANGED
package/src/layout/HawaAppBar.js
CHANGED
|
@@ -22,7 +22,6 @@ export const HawaAppBar = (props) => {
|
|
|
22
22
|
const handleCloseNavMenu = () => setAnchorElNav(null);
|
|
23
23
|
const handleCloseUserMenu = () => setAnchorElUser(null);
|
|
24
24
|
|
|
25
|
-
console.log("theme is ", theme);
|
|
26
25
|
return (
|
|
27
26
|
<AppBar position="static" variant="appbar">
|
|
28
27
|
<Container variant="appbar">
|
package/src/styles.css
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
|
|
2
|
+
|
|
1
3
|
.input {
|
|
2
4
|
color: black;
|
|
3
5
|
background-color: var(--light);
|
|
@@ -51,7 +53,56 @@
|
|
|
51
53
|
border-width: 2px;
|
|
52
54
|
cursor: pointer;
|
|
53
55
|
}
|
|
54
|
-
input[type=number]::-webkit-inner-spin-button,
|
|
55
|
-
input[type=number]::-webkit-outer-spin-button {
|
|
56
|
-
|
|
56
|
+
input[type="number"]::-webkit-inner-spin-button,
|
|
57
|
+
input[type="number"]::-webkit-outer-spin-button {
|
|
58
|
+
-webkit-appearance: none;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
.phoneInput {
|
|
62
|
+
padding-top: 10px !important;
|
|
63
|
+
padding-bottom: 10px !important;
|
|
64
|
+
padding-right: 10px !important;
|
|
65
|
+
padding-left: 60px !important;
|
|
66
|
+
border-radius: var(--borderR) !important;
|
|
67
|
+
border: none !important;
|
|
68
|
+
height: 100% !important;
|
|
69
|
+
width: auto !important;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
.phoneInput:hover {
|
|
73
|
+
border: none;
|
|
74
|
+
outline-color: transparent;
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
.phoneInput:focus {
|
|
78
|
+
/* border: 1px solid !important; */
|
|
79
|
+
/* border-color: #7f62fc !important; */
|
|
80
|
+
outline: 1px solid !important;
|
|
81
|
+
outline-color: #7f62fc !important;
|
|
82
|
+
}
|
|
83
|
+
.phoneInputContainer {
|
|
84
|
+
height: 43px !important;
|
|
85
|
+
width: 100% !important;
|
|
86
|
+
background-color: red !important;
|
|
87
|
+
max-width: 400px !important;
|
|
88
|
+
border-radius: var(--borderR) !important;
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
.phoneInputButton {
|
|
92
|
+
height: 100% !important;
|
|
93
|
+
border-radius: var(--borderR) !important;
|
|
94
|
+
background: none !important;
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
.react-tel-input .selected-flag {
|
|
98
|
+
/* background-color: red !important; */
|
|
99
|
+
/* height: 100% !important; */
|
|
100
|
+
border-radius: var(--borderR) !important;
|
|
101
|
+
border: none;
|
|
102
|
+
}
|
|
103
|
+
.phoneInputButton:focus {
|
|
104
|
+
background: none !important;
|
|
105
|
+
/* background-color: red !important; */
|
|
106
|
+
/* height: 100% !important; */
|
|
107
|
+
border-radius: var(--borderR) !important;
|
|
57
108
|
}
|
package/src/theme/HawaTheme.js
CHANGED
|
@@ -1,20 +1,34 @@
|
|
|
1
1
|
import { createTheme } from "@mui/material";
|
|
2
2
|
import { darken, lighten } from "@mui/material";
|
|
3
3
|
|
|
4
|
-
export const CreateHawaTheme = (
|
|
5
|
-
allBorderRadius
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
primaryActionTextColor
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
4
|
+
export const CreateHawaTheme = (optionsObject, breakpointsValues) => {
|
|
5
|
+
let allBorderRadius = optionsObject.borderRadius;
|
|
6
|
+
let primaryDangerColor = optionsObject.dangerColor;
|
|
7
|
+
let primaryActionColor = optionsObject.actionColor;
|
|
8
|
+
let primaryActionTextColor = optionsObject.actionTextColor;
|
|
9
|
+
let primaryLayoutColor = optionsObject.layoutColor;
|
|
10
|
+
let mainFont = optionsObject.font;
|
|
11
|
+
|
|
12
|
+
console.log("achra achraf", breakpointsValues);
|
|
13
|
+
return createTheme({
|
|
14
|
+
allBorderRadius: optionsObject.borderRadius,
|
|
15
|
+
primaryDangerColor: optionsObject.dangerColor,
|
|
16
|
+
primaryActionColor: optionsObject.actionColor,
|
|
17
|
+
primaryActionTextColor: optionsObject.actionTextColor,
|
|
18
|
+
primaryLayoutColor: optionsObject.layoutColor,
|
|
19
|
+
mainFont: optionsObject.font,
|
|
20
|
+
test: "something",
|
|
12
21
|
typography: { fontFamily: ["IBMPlex", "Roboto"].join(",") },
|
|
13
22
|
palette: {
|
|
14
23
|
primary: {
|
|
15
24
|
main: primaryActionColor
|
|
16
25
|
}
|
|
17
26
|
},
|
|
27
|
+
breakpoints: {
|
|
28
|
+
values: breakpointsValues
|
|
29
|
+
? breakpointsValues
|
|
30
|
+
: { xs: 0, sm: 600, md: 900, lg: 1200, xl: 1536 }
|
|
31
|
+
},
|
|
18
32
|
components: {
|
|
19
33
|
MuiStack: {
|
|
20
34
|
variants: [
|
|
@@ -23,8 +37,6 @@ export const CreateHawaTheme = (
|
|
|
23
37
|
style: {
|
|
24
38
|
backgroundColor: primaryLayoutColor,
|
|
25
39
|
padding: 15,
|
|
26
|
-
// paddingLeft: 5,
|
|
27
|
-
// paddingRight: 5,
|
|
28
40
|
borderRadius: allBorderRadius
|
|
29
41
|
}
|
|
30
42
|
}
|
|
@@ -137,7 +149,15 @@ export const CreateHawaTheme = (
|
|
|
137
149
|
padding: 10,
|
|
138
150
|
":focus": { border: "none" }
|
|
139
151
|
}
|
|
140
|
-
}
|
|
152
|
+
},
|
|
153
|
+
variants: [
|
|
154
|
+
{
|
|
155
|
+
props: { variant: "phone" },
|
|
156
|
+
style: {
|
|
157
|
+
backgroundColor: "red"
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
]
|
|
141
161
|
},
|
|
142
162
|
MuiInput: {
|
|
143
163
|
styleOverrides: {
|
|
@@ -147,13 +167,13 @@ export const CreateHawaTheme = (
|
|
|
147
167
|
paddingLeft: 10,
|
|
148
168
|
borderRadius: allBorderRadius,
|
|
149
169
|
"&:hover": { outline: `1px solid ${primaryActionColor}` },
|
|
150
|
-
"&:focus": { outline: `1px solid ${primaryActionColor}` }
|
|
170
|
+
"&:focus": { outline: `1px solid ${primaryActionColor}` }
|
|
151
171
|
},
|
|
152
172
|
input: {
|
|
153
173
|
margin: 0,
|
|
154
174
|
border: "none",
|
|
155
175
|
padding: 10,
|
|
156
|
-
":focus": { border: "none" }
|
|
176
|
+
":focus": { border: "none" }
|
|
157
177
|
}
|
|
158
178
|
},
|
|
159
179
|
variants: [
|
|
@@ -164,19 +184,18 @@ export const CreateHawaTheme = (
|
|
|
164
184
|
{ display: "none" },
|
|
165
185
|
"& input[type=number]": { MozAppearance: "textfield" }
|
|
166
186
|
}
|
|
167
|
-
},
|
|
187
|
+
},
|
|
168
188
|
{
|
|
169
|
-
props
|
|
170
|
-
style:{
|
|
189
|
+
props: { variant: "pin" },
|
|
190
|
+
style: {
|
|
171
191
|
height: 60,
|
|
172
|
-
width
|
|
173
|
-
textAlign:"center",
|
|
192
|
+
width: 50,
|
|
193
|
+
textAlign: "center",
|
|
174
194
|
"& input::-webkit-outer-spin-button, & input::-webkit-inner-spin-button":
|
|
175
195
|
{ display: "none" },
|
|
176
196
|
"& input[type=number]": { MozAppearance: "textfield" }
|
|
177
|
-
}
|
|
197
|
+
}
|
|
178
198
|
}
|
|
179
|
-
|
|
180
199
|
]
|
|
181
200
|
},
|
|
182
201
|
MuiDialog: {
|
|
@@ -197,7 +216,8 @@ export const CreateHawaTheme = (
|
|
|
197
216
|
borderRadius: allBorderRadius,
|
|
198
217
|
paddingLeft: 20,
|
|
199
218
|
paddingRight: 20,
|
|
200
|
-
padding: 20
|
|
219
|
+
padding: 20,
|
|
220
|
+
maxWidth: 600
|
|
201
221
|
}
|
|
202
222
|
},
|
|
203
223
|
variants: [
|
|
@@ -715,34 +735,34 @@ export const CreateHawaTheme = (
|
|
|
715
735
|
]
|
|
716
736
|
},
|
|
717
737
|
|
|
718
|
-
MuiTextField
|
|
719
|
-
styleOverrides:{
|
|
738
|
+
MuiTextField: {
|
|
739
|
+
styleOverrides: {
|
|
720
740
|
root: {
|
|
721
741
|
backgroundColor: "white",
|
|
722
742
|
paddingRight: 10,
|
|
723
743
|
paddingLeft: 10,
|
|
724
744
|
borderRadius: allBorderRadius,
|
|
725
745
|
"&:hover": { outline: `1px solid ${primaryActionColor}` },
|
|
726
|
-
"&:focus": { outline: `1px solid ${primaryActionColor}` }
|
|
727
|
-
}
|
|
746
|
+
"&:focus": { outline: `1px solid ${primaryActionColor}` }
|
|
747
|
+
}
|
|
728
748
|
},
|
|
729
749
|
variants: [
|
|
730
750
|
{
|
|
731
|
-
props
|
|
732
|
-
style:{
|
|
751
|
+
props: { variant: "pinInput" },
|
|
752
|
+
style: {
|
|
733
753
|
height: 60,
|
|
734
|
-
width
|
|
735
|
-
textAlign:"center",
|
|
754
|
+
width: 50,
|
|
755
|
+
textAlign: "center",
|
|
736
756
|
"& input::-webkit-outer-spin-button, & input::-webkit-inner-spin-button":
|
|
737
757
|
{ display: "none" },
|
|
738
758
|
"& input[type=number]": { MozAppearance: "textfield" }
|
|
739
|
-
}
|
|
759
|
+
}
|
|
740
760
|
}
|
|
741
761
|
]
|
|
742
762
|
}
|
|
743
|
-
|
|
744
763
|
}
|
|
745
764
|
});
|
|
765
|
+
};
|
|
746
766
|
|
|
747
767
|
export const UpdateHawaTheme = (
|
|
748
768
|
theme,
|
|
@@ -361,4 +361,4 @@
|
|
|
361
361
|
|
|
362
362
|
|
|
363
363
|
|
|
364
|
-
window['STORIES'] = [{"titlePrefix":"","directory":"./src","files":"**/*.stories.mdx","importPathMatcher":"^\\.[\\\\/](?:src(?:\\/(?!\\.)(?:(?:(?!(?:^|\\/)\\.).)*?)\\/|\\/|$)(?!\\.)(?=.)[^/]*?\\.stories\\.mdx)$"},{"titlePrefix":"","directory":"./src","files":"**/*.stories.@(js|jsx|ts|tsx)","importPathMatcher":"^\\.[\\\\/](?:src(?:\\/(?!\\.)(?:(?:(?!(?:^|\\/)\\.).)*?)\\/|\\/|$)(?!\\.)(?=.)[^/]*?\\.stories\\.(js|jsx|ts|tsx))$"}];</script><script src="runtime~main.9be73be4.iframe.bundle.js"></script><script src="vendors~main.
|
|
364
|
+
window['STORIES'] = [{"titlePrefix":"","directory":"./src","files":"**/*.stories.mdx","importPathMatcher":"^\\.[\\\\/](?:src(?:\\/(?!\\.)(?:(?:(?!(?:^|\\/)\\.).)*?)\\/|\\/|$)(?!\\.)(?=.)[^/]*?\\.stories\\.mdx)$"},{"titlePrefix":"","directory":"./src","files":"**/*.stories.@(js|jsx|ts|tsx)","importPathMatcher":"^\\.[\\\\/](?:src(?:\\/(?!\\.)(?:(?:(?!(?:^|\\/)\\.).)*?)\\/|\\/|$)(?!\\.)(?=.)[^/]*?\\.stories\\.(js|jsx|ts|tsx))$"}];</script><script src="runtime~main.9be73be4.iframe.bundle.js"></script><script src="vendors~main.55d84da5.iframe.bundle.js"></script><script src="main.73b8ca43.iframe.bundle.js"></script></body></html>
|