@sikka/hawa 0.0.29 → 0.0.30

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 (32) hide show
  1. package/es/index.es.js +1 -1
  2. package/lib/index.js +1 -1
  3. package/package.json +1 -1
  4. package/src/blocks/Account/UserProfileForm.js +5 -0
  5. package/src/blocks/AuthForms/NewPasswordForm.js +18 -1
  6. package/src/blocks/AuthForms/ResetPasswordForm.js +10 -1
  7. package/src/blocks/AuthForms/SignInForm.js +19 -1
  8. package/src/blocks/AuthForms/SignUpForm.js +44 -1
  9. package/src/blocks/Payment/ChargeWalletForm.js +4 -1
  10. package/src/blocks/Payment/CheckoutForm.js +17 -1
  11. package/src/blocks/Payment/Confirmation.js +24 -1
  12. package/src/blocks/Payment/{PaymentMethod.js → Form/PaymentMethod.js} +0 -10
  13. package/src/blocks/Pricing/PricingPlans.js +15 -1
  14. package/src/elements/HawaAccordian.js +28 -0
  15. package/src/elements/HawaAlert.js +10 -1
  16. package/src/elements/HawaLogoButton.js +18 -1
  17. package/src/elements/HawaPopMenu.js +7 -1
  18. package/src/elements/HawaRadio.js +6 -1
  19. package/src/elements/HawaSearchBar.js +17 -0
  20. package/src/elements/HawaSettingsRow.js +10 -4
  21. package/src/elements/{OfflineBanner.js → HawaSnackbar.js} +3 -8
  22. package/src/elements/HawaTable.js +7 -0
  23. package/src/elements/index.js +3 -1
  24. package/src/layout/HawaAppLayout.js +15 -59
  25. package/storybook-static/iframe.html +1 -1
  26. package/storybook-static/main.cbf6de78.iframe.bundle.js +1 -0
  27. package/storybook-static/vendors~main.8ffaa38a.iframe.bundle.js +76 -0
  28. package/storybook-static/{vendors~main.b026595c.iframe.bundle.js.LICENSE.txt → vendors~main.8ffaa38a.iframe.bundle.js.LICENSE.txt} +0 -0
  29. package/storybook-static/vendors~main.8ffaa38a.iframe.bundle.js.map +1 -0
  30. package/storybook-static/main.c6115a9b.iframe.bundle.js +0 -1
  31. package/storybook-static/vendors~main.b026595c.iframe.bundle.js +0 -76
  32. package/storybook-static/vendors~main.b026595c.iframe.bundle.js.map +0 -1
@@ -143,7 +143,25 @@ export const SignInForm = (props) => {
143
143
  );
144
144
  };
145
145
  SignInForm.propTypes = {
146
- texts: PropTypes.object,
146
+ /**
147
+ * An object of all the texts in the blocks
148
+ */
149
+ texts: PropTypes.shape({
150
+ emailLabel: PropTypes.string,
151
+ emailPlaceholder: PropTypes.string,
152
+ emailRequiredText: PropTypes.string,
153
+ emailInvalidText: PropTypes.string,
154
+ passwordLabel: PropTypes.string,
155
+ passwordPlaceholder: PropTypes.string,
156
+ passwordRequiredText: PropTypes.string,
157
+ forgotPasswordText: PropTypes.string,
158
+ newUserText: PropTypes.string,
159
+ signUpText: PropTypes.string,
160
+ signInText: PropTypes.string,
161
+ googleButtonLabel: PropTypes.string,
162
+ githubButtonLabel: PropTypes.string,
163
+ twitterButtonLabel: PropTypes.string
164
+ }),
147
165
  viaGoogle: PropTypes.bool,
148
166
  viaGithub: PropTypes.bool,
149
167
  viaTwitter: PropTypes.bool,
@@ -163,8 +163,51 @@ export const SignUpForm = (props) => {
163
163
  );
164
164
  };
165
165
 
166
+ // fullNameLabel: "Full Name",
167
+ // fullNamePlaceholder: "Fulan AlFulani",
168
+ // fullNameRequiredText: "Full Name is required",
169
+ // emailLabel: "Email",
170
+ // emailPlaceholder: "Enter your email",
171
+ // emailRequiredText: "Email is required",
172
+ // emailInvalidText: "Invalid email address",
173
+ // passwordLabel: "Password",
174
+ // passwordPlaceholder: "Minimum 8 characters",
175
+ // passwordRequiredText: "Password is required",
176
+ // passwordTooShortText: "Password too short",
177
+ // forgotPasswordText: "Forgot password?",
178
+ // newUserText: "New user?",
179
+ // signUpText: "Sign up",
180
+ // signInText: "Sign in",
181
+ // existingUserText: "Existing User?",
182
+ // googleButtonLabel: "Sign in with Google",
183
+ // githubButtonLabel: "Sign in with Github",
184
+ // twitterButtonLabel: "Sign in with Twitter"
185
+
166
186
  SignUpForm.propTypes = {
167
- texts: PropTypes.object,
187
+ /**
188
+ * An object of all the texts in the blocks
189
+ */
190
+ texts: PropTypes.shape({
191
+ fullNameLabel: PropTypes.string,
192
+ fullNamePlaceholder: PropTypes.string,
193
+ fullNameRequiredText: PropTypes.string,
194
+ emailLabel: PropTypes.string,
195
+ emailPlaceholder: PropTypes.string,
196
+ emailRequiredText: PropTypes.string,
197
+ emailInvalidText: PropTypes.string,
198
+ passwordLabel: PropTypes.string,
199
+ passwordPlaceholder: PropTypes.string,
200
+ passwordRequiredText: PropTypes.string,
201
+ passwordTooShortText: PropTypes.string,
202
+ forgotPasswordText: PropTypes.string,
203
+ newUserText: PropTypes.string,
204
+ signUpText: PropTypes.string,
205
+ signInText: PropTypes.string,
206
+ existingUserText: PropTypes.string,
207
+ googleButtonLabel: PropTypes.string,
208
+ githubButtonLabel: PropTypes.string,
209
+ twitterButtonLabel: PropTypes.string
210
+ }),
168
211
  viaGoogle: PropTypes.bool,
169
212
  viaGithub: PropTypes.bool,
170
213
  viaTwitter: PropTypes.bool,
@@ -67,6 +67,9 @@ export const ChargeWalletForm = (props) => {
67
67
  };
68
68
 
69
69
  ChargeWalletForm.propTypes = {
70
- texts: PropTypes.object,
70
+ texts: PropTypes.shape({
71
+ amountLabel: PropTypes.string,
72
+ chargeWallet: PropTypes.string
73
+ }),
71
74
  handleChargeWallet: PropTypes.func
72
75
  };
@@ -246,7 +246,23 @@ export const CheckoutForm = (props) => {
246
246
  };
247
247
 
248
248
  CheckoutForm.propTypes = {
249
- texts: PropTypes.object,
249
+ texts: PropTypes.shape({
250
+ orderDetails: PropTypes.string,
251
+ billingAddress: PropTypes.string,
252
+ payNow: PropTypes.string,
253
+ emailLabel: PropTypes.string,
254
+ emailRequiredText: PropTypes.string,
255
+ emailInvalidText: PropTypes.string,
256
+ firstNameLabel: PropTypes.string,
257
+ required: PropTypes.string,
258
+ lastNameLabel: PropTypes.string,
259
+ streetAddressLabel: PropTypes.string,
260
+ buildingNumberLabel: PropTypes.string,
261
+ cityLabel: PropTypes.string,
262
+ stateLabel: PropTypes.string,
263
+ countryLabel: PropTypes.string,
264
+ zipCodeLabel: PropTypes.string
265
+ }),
250
266
  lang: PropTypes.string,
251
267
  countriesList: PropTypes.array,
252
268
  products: PropTypes.array,
@@ -100,7 +100,30 @@ export const ConfirmationPage = (props) => {
100
100
  };
101
101
 
102
102
  ConfirmationPage.propTypes = {
103
- texts: PropTypes.object,
103
+ texts: PropTypes.shape({
104
+ print: PropTypes.string,
105
+ history: PropTypes.string,
106
+ homePage: PropTypes.string,
107
+ successMessage: PropTypes.string,
108
+ orderDetails: PropTypes.string,
109
+ fasterPaymentNote: PropTypes.string,
110
+ billingAddress: PropTypes.string,
111
+ payNow: PropTypes.string,
112
+ yourOrderNumber: PropTypes.string,
113
+ emailLabel: PropTypes.string,
114
+ emailRequiredText: PropTypes.string,
115
+ emailInvalidText: PropTypes.string,
116
+ firstNameLabel: PropTypes.string,
117
+ required: PropTypes.string,
118
+ lastNameLabel: PropTypes.string,
119
+ streetAddressLabel: PropTypes.string,
120
+ buildingNumberLabel: PropTypes.string,
121
+ cityLabel: PropTypes.string,
122
+ stateLabel: PropTypes.string,
123
+ countryLabel: PropTypes.string,
124
+ zipCodeLabel: PropTypes.string,
125
+ refundPolicy: PropTypes.string
126
+ }),
104
127
  products: PropTypes.array,
105
128
  countriesList: PropTypes.array,
106
129
  lang: PropTypes.string,
@@ -85,7 +85,6 @@ const PaymentMethodButton = (props) => {
85
85
  {props.imageURL ? (
86
86
  <div
87
87
  style={{
88
- // backgroundColor: "red",
89
88
  width: "50%",
90
89
  textAlign: "right",
91
90
  paddingRight: 20
@@ -93,14 +92,7 @@ const PaymentMethodButton = (props) => {
93
92
  >
94
93
  <img
95
94
  src={props.imageURL}
96
- // src={`https://qawaim-images.s3-ap-southeast-1.amazonaws.com/payments/visa.png`}
97
- // alt=""
98
- // srcset=""
99
- // height={"100%"}
100
- // width={"30%"}
101
95
  style={{
102
- // height: "100%",
103
- // aspectRatio: "6/4",
104
96
  maxWidth: 70,
105
97
  maxHeight: 70,
106
98
  height: "auto"
@@ -110,7 +102,6 @@ const PaymentMethodButton = (props) => {
110
102
  ) : null}
111
103
  <div
112
104
  style={{
113
- // backgroundColor: "blue",
114
105
  width: "50%",
115
106
  textAlign: props.imageURL ? "left" : "center"
116
107
  }}
@@ -130,7 +121,6 @@ const PaymentMethodButton = (props) => {
130
121
  };
131
122
 
132
123
  PaymentMethod.propTypes = {
133
- texts: PropTypes.object,
134
124
  wallet: PropTypes.bool,
135
125
  handlePaymentMethod: PropTypes.func
136
126
  };
@@ -58,6 +58,20 @@ export const PricingPlans = (props) => {
58
58
  };
59
59
 
60
60
  PricingPlans.propTypes = {
61
- plans: PropTypes.array,
61
+ plans: PropTypes.arrayOf(
62
+ PropTypes.shape({
63
+ title: PropTypes.string,
64
+ title_ar: PropTypes.string,
65
+ subtitle: PropTypes.string,
66
+ subtitle_ar: PropTypes.string,
67
+ price: PropTypes.number,
68
+ currency: PropTypes.string,
69
+ cycleText: PropTypes.string,
70
+ buttonText: PropTypes.string,
71
+ features: PropTypes.array,
72
+ features_ar: PropTypes.array,
73
+ selectedPlan: PropTypes.bool
74
+ })
75
+ ),
62
76
  lang: PropTypes.string
63
77
  };
@@ -0,0 +1,28 @@
1
+ import React from "react";
2
+ import ExpandMore from "@mui/icons-material/ExpandMore";
3
+ import Typography from "@mui/material/Typography";
4
+ import Accordion from "@mui/material/Accordion";
5
+ import AccordionSummary from "@mui/material/AccordionSummary";
6
+ import AccordionDetails from "@mui/material/AccordionDetails";
7
+ import PropTypes from "prop-types";
8
+
9
+ export const HawaAccordian = (props) => {
10
+ return (
11
+ <Accordion elevation={0}>
12
+ <AccordionSummary
13
+ expandIcon={<ExpandMore />}
14
+ aria-controls="panel1a-content"
15
+ id="panel1a-header"
16
+ >
17
+ <Typography>{props.title}</Typography>
18
+ </AccordionSummary>
19
+ <AccordionDetails>
20
+ <Typography>{props.content} </Typography>
21
+ </AccordionDetails>
22
+ </Accordion>
23
+ );
24
+ };
25
+ HawaAccordian.propTypes = {
26
+ title: PropTypes.string,
27
+ content: PropTypes.string
28
+ };
@@ -12,8 +12,17 @@ export const HawaAlert = (props) => {
12
12
  );
13
13
  };
14
14
  HawaAlert.propTypes = {
15
- severity: PropTypes.string,
15
+ /**
16
+ * The severity of the alert. This defines the color and icon used.
17
+ */
18
+ severity: PropTypes.oneOf(["error", "info", "success", "warning"]),
19
+ /**
20
+ * The title of the alert in bold. Can be left empty.
21
+ */
16
22
  title: PropTypes.string,
23
+ /**
24
+ * The text of the alert.
25
+ */
17
26
  text: PropTypes.string,
18
27
  hideIcon: PropTypes.bool
19
28
  };
@@ -106,6 +106,23 @@ export const HawaLogoButton = (props) => {
106
106
 
107
107
  HawaLogoButton.propTypes = {
108
108
  lang: PropTypes.string,
109
- logo: PropTypes.string,
109
+ /**
110
+ * The logo/icon of the button
111
+ */
112
+ logo: PropTypes.oneOf([
113
+ "google",
114
+ "github",
115
+ "twitter",
116
+ "wallet",
117
+ "googlepay",
118
+ "applepay",
119
+ "stcpay",
120
+ "visa/master",
121
+ "paypal",
122
+ "mada"
123
+ ]),
124
+ /**
125
+ * The text next to the logo in the button
126
+ */
110
127
  buttonText: PropTypes.string
111
128
  };
@@ -41,5 +41,11 @@ export const HawaPopMenu = (props) => {
41
41
 
42
42
  HawaPopMenu.propTypes = {
43
43
  handleClose: PropTypes.func,
44
- menuItems: PropTypes.array
44
+ menuItems: PropTypes.arrayOf(
45
+ PropTypes.shape({
46
+ icon: PropTypes.element,
47
+ label: PropTypes.string,
48
+ action: PropTypes.func
49
+ })
50
+ )
45
51
  };
@@ -31,7 +31,12 @@ export const HawaRadio = (props) => {
31
31
  };
32
32
  HawaRadio.propTypes = {
33
33
  lang: PropTypes.string,
34
- options: PropTypes.array,
34
+ options: PropTypes.arrayOf(
35
+ PropTypes.shape({
36
+ label: PropTypes.string,
37
+ value: PropTypes.string
38
+ })
39
+ ),
35
40
  defaultValue: PropTypes.string,
36
41
  handleChange: PropTypes.func,
37
42
  location: PropTypes.string
@@ -0,0 +1,17 @@
1
+ import { Search } from "@mui/icons-material";
2
+ import { InputAdornment } from "@mui/material";
3
+ import React from "react";
4
+ import { HawaTextField } from "./HawaTextField";
5
+
6
+ export const HawaSearchBar = (props) => {
7
+ return (
8
+ <HawaTextField
9
+ endAdornment={
10
+ <InputAdornment position="start">
11
+ <Search />
12
+ </InputAdornment>
13
+ }
14
+ {...props}
15
+ />
16
+ );
17
+ };
@@ -14,16 +14,22 @@ export const HawaSettingsRow = (props) => {
14
14
  <HawaTypography>{props.settingsLabel}</HawaTypography>
15
15
  {props.settingsType === "checkbox" && <Checkbox {...props} />}
16
16
  {props.settingsType === "text" && <HawaTextField {...props} />}
17
+ {props.settingsType === "boolean" && <HawaSwitch {...props} />}
18
+ {props.settingsType === "color" && <HawaColorPicker {...props} />}
17
19
  {props.settingsType === "radio" && (
18
20
  <HawaRadio location="inSettings" {...props} />
19
21
  )}
20
- {props.settingsType === "boolean" && <HawaSwitch {...props} />}
21
- {props.settingsType === "color" && <HawaColorPicker {...props} />}
22
22
  </Container>
23
23
  );
24
24
  };
25
25
 
26
26
  HawaSettingsRow.propTypes = {
27
- type: PropTypes.oneOf(["checkbox", "text", "radio", "boolean", "color"]),
28
- helperText: PropTypes.string
27
+ settingsLabel: PropTypes.string,
28
+ settingsType: PropTypes.oneOf([
29
+ "checkbox",
30
+ "text",
31
+ "radio",
32
+ "boolean",
33
+ "color"
34
+ ])
29
35
  };
@@ -3,15 +3,10 @@ import Snackbar from "@mui/material/Snackbar";
3
3
  import AlertTitle from "@mui/material/AlertTitle";
4
4
  import Alert from "@mui/material/Alert";
5
5
 
6
- export const OfflineBanner = (props) => {
6
+ export const HawaSnackbar = (props) => {
7
7
  return (
8
- <Snackbar
9
- variant="danger"
10
- // style={{ outline: "1px solid red" }}
11
- open={props.open}
12
- onClose={props.handleClose}
13
- >
14
- <Alert icon={false} severity={"error"} variant="offline">
8
+ <Snackbar open={props.open} onClose={props.handleClose}>
9
+ <Alert icon={false} severity={props.severity}>
15
10
  {props.title && <AlertTitle>{props.title}</AlertTitle>}
16
11
  {props.text}
17
12
  </Alert>
@@ -5,6 +5,7 @@ import TableCell from "@mui/material/TableCell";
5
5
  import TableContainer from "@mui/material/TableContainer";
6
6
  import TableHead from "@mui/material/TableHead";
7
7
  import TableRow from "@mui/material/TableRow";
8
+ import PropTypes from "prop-types";
8
9
 
9
10
  export const HawaTable = (props) => {
10
11
  let isArabic = props.lang === "ar";
@@ -73,3 +74,9 @@ export const HawaTable = (props) => {
73
74
  </TableContainer>
74
75
  );
75
76
  };
77
+ HawaTable.propTypes = {
78
+ lang: PropTypes.string,
79
+ columns: PropTypes.array,
80
+ rows: PropTypes.array,
81
+ end: PropTypes.array
82
+ };
@@ -1,6 +1,6 @@
1
1
  export * from "./AdaptiveButton";
2
2
  export * from "./ActionButton";
3
- export * from "./OfflineBanner";
3
+ export * from "./HawaSnackbar";
4
4
  export * from "./HawaCheckbox";
5
5
  export * from "./HawaRadio";
6
6
  export * from "./HawaItemCard";
@@ -16,3 +16,5 @@ export * from "./HawaTypography";
16
16
  export * from "./HawaAlert";
17
17
  export * from "./HawaTable";
18
18
  export * from "./HawaColorPicker";
19
+ export * from "./HawaSearchBar";
20
+ export * from "./HawaAccordian";
@@ -13,10 +13,11 @@ import ChevronLeftIcon from "@mui/icons-material/ChevronLeft";
13
13
  import ChevronRightIcon from "@mui/icons-material/ChevronRight";
14
14
  import ListItemButton from "@mui/material/ListItemButton";
15
15
  import ListItemText from "@mui/material/ListItemText";
16
- import Menu from "@mui/material/Menu";
17
16
  import Avatar from "@mui/material/Avatar";
18
17
  import Tooltip from "@mui/material/Tooltip";
19
- import MenuItem from "@mui/material/MenuItem";
18
+ import { HawaPopMenu } from "../elements/HawaPopMenu";
19
+ // use this to detect size and change things accordingly
20
+ // import useMediaQuery from '@mui/material/useMediaQuery';
20
21
 
21
22
  const drawerWidth = 240;
22
23
 
@@ -92,32 +93,15 @@ export function HawaAppLayout(props) {
92
93
  const [anchorElNav, setAnchorElNav] = React.useState(null);
93
94
  const [anchorElUser, setAnchorElUser] = React.useState(null);
94
95
 
95
- const handleOpenNavMenu = (event) => {
96
- setAnchorElNav(event.currentTarget);
97
- };
98
- const handleOpenUserMenu = (event) => {
99
- setAnchorElUser(event.currentTarget);
100
- };
101
-
102
- const handleCloseNavMenu = () => {
103
- setAnchorElNav(null);
104
- };
105
-
106
- const handleCloseUserMenu = () => {
107
- setAnchorElUser(null);
108
- };
109
-
110
- const handleDrawerOpen = () => {
111
- setOpen(true);
112
- };
113
-
114
- const handleDrawerClose = () => {
115
- setOpen(false);
116
- };
96
+ const handleOpenNavMenu = (event) => setAnchorElNav(event.currentTarget);
97
+ const handleOpenUserMenu = (event) => setAnchorElUser(event.currentTarget);
98
+ const handleCloseNavMenu = () => setAnchorElNav(null);
99
+ const handleCloseUserMenu = () => setAnchorElUser(null);
100
+ const handleDrawerOpen = () => setOpen(true);
101
+ const handleDrawerClose = () => setOpen(false);
117
102
 
118
103
  return (
119
104
  <Box sx={{ display: "flex" }}>
120
- {/* <CssBaseline /> */}
121
105
  <AppBar variant="appbar" position="fixed" open={open}>
122
106
  <Toolbar variant="appbar">
123
107
  <IconButton
@@ -151,42 +135,14 @@ export function HawaAppLayout(props) {
151
135
  <Box>
152
136
  <Tooltip title="Open settings">
153
137
  <IconButton onClick={handleOpenUserMenu} sx={{ p: 0 }}>
154
- <Avatar alt="Remy Sharp" src="/static/images/avatar/2.jpg" />
138
+ <Avatar />
155
139
  </IconButton>
156
140
  </Tooltip>
157
- <Menu
158
- sx={{ mt: "45px" }}
159
- id="menu-appbar"
160
- anchorEl={anchorElUser}
161
- anchorOrigin={{
162
- vertical: "top",
163
- horizontal: "right"
164
- }}
165
- keepMounted
166
- transformOrigin={{
167
- vertical: "top",
168
- horizontal: "right"
169
- }}
170
- open={Boolean(anchorElUser)}
171
- onClose={handleCloseUserMenu}
172
- variant="themed"
173
- PaperProps={{
174
- style: {
175
- boxShadow: "none",
176
- borderRadius: theme.allBorderRadius,
177
- // borderColor: theme.primaryActionColor,
178
- // borderWidth: 2,
179
- border: `1px solid ${theme.primaryActionColor}`
180
- }
181
- }}
182
- >
183
- {props.accountMenu.map((setting) => (
184
- <MenuItem key={setting.label} onClick={setting.action}>
185
- {setting.icon && <setting.icon />}
186
- <Typography textAlign="center">{setting.label}</Typography>
187
- </MenuItem>
188
- ))}
189
- </Menu>
141
+ <HawaPopMenu
142
+ menuItems={props.accountMenu}
143
+ anchor={anchorElUser}
144
+ handleClose={handleCloseUserMenu}
145
+ />
190
146
  </Box>
191
147
  </div>
192
148
  </Toolbar>
@@ -345,4 +345,4 @@
345
345
 
346
346
 
347
347
 
348
- 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.708d7ac1.iframe.bundle.js"></script><script src="vendors~main.b026595c.iframe.bundle.js"></script><script src="main.c6115a9b.iframe.bundle.js"></script></body></html>
348
+ 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.708d7ac1.iframe.bundle.js"></script><script src="vendors~main.8ffaa38a.iframe.bundle.js"></script><script src="main.cbf6de78.iframe.bundle.js"></script></body></html>