react-better-html 1.1.244 → 1.1.246

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/dist/index.mjs CHANGED
@@ -1303,28 +1303,35 @@ import { useTheme as useTheme3 } from "react-better-core";
1303
1303
  // src/components/Text.tsx
1304
1304
  import { forwardRef, memo } from "react";
1305
1305
  import { useTheme as useTheme2 } from "react-better-core";
1306
- import styled from "styled-components";
1306
+ import styled, { css } from "styled-components";
1307
1307
  import { jsx } from "react/jsx-runtime";
1308
1308
  var TextStyledComponent = styled.p.withConfig({
1309
- shouldForwardProp: (prop) => !["style", "hoverStyle"].includes(prop)
1309
+ shouldForwardProp: (prop) => !["theme", "style", "hoverStyle", "isP"].includes(prop)
1310
1310
  })`
1311
+ ${(props) => props.isP ? css`
1312
+ font-size: ${props.theme.styles.fontSize}px;
1313
+ ` : ""}
1314
+
1311
1315
  ${(props) => props.style}
1312
1316
 
1313
1317
  &:hover {
1314
1318
  ${(props) => props.hoverStyle}
1315
1319
  }
1316
1320
  `;
1317
- var TextComponent = forwardRef(function Text({ htmlContentTranslate, children, ...props }, ref) {
1321
+ var TextComponent = forwardRef(function Text({ as: asValue, htmlContentTranslate, children, ...props }, ref) {
1322
+ const theme2 = useTheme2();
1318
1323
  const { style, hoverStyle, restProps } = useComponentPropsGrouper(props);
1319
1324
  const dataProps = useComponentPropsWithPrefix(restProps, "data");
1320
1325
  const ariaProps = useComponentPropsWithPrefix(restProps, "aria");
1321
1326
  return /* @__PURE__ */ jsx(
1322
1327
  TextStyledComponent,
1323
1328
  {
1324
- as: props.as,
1329
+ as: asValue,
1330
+ theme: theme2,
1325
1331
  translate: htmlContentTranslate,
1326
1332
  style,
1327
1333
  hoverStyle,
1334
+ isP: asValue === "p",
1328
1335
  ...restProps,
1329
1336
  ...dataProps,
1330
1337
  ...ariaProps,
@@ -1429,7 +1436,12 @@ var ImageElement = styled2.img.withConfig({
1429
1436
  ${(props) => props.hoverStyle}
1430
1437
  }
1431
1438
  `;
1432
- var Image = forwardRef3(function Image2({ name, src, ...props }, ref) {
1439
+ var Image = forwardRef3(function Image2(ImageProps3, ref) {
1440
+ const betterHtmlContextInternal = useBetterHtmlContextInternal();
1441
+ const { name, src, ...props } = useComponentsPropsMerger(
1442
+ betterHtmlContextInternal.components.image?.style?.default,
1443
+ ImageProps3
1444
+ );
1433
1445
  const { assets: assets2 } = useBetterCoreContext();
1434
1446
  const { style, hoverStyle, restProps } = useComponentPropsGrouper(props);
1435
1447
  const dataProps = useComponentPropsWithPrefix(restProps, "data");
@@ -1454,7 +1466,9 @@ var Image = forwardRef3(function Image2({ name, src, ...props }, ref) {
1454
1466
  }
1455
1467
  );
1456
1468
  });
1457
- Image.profileImage = forwardRef3(function ProfileImage({ size = 40, letters, letterColor, backgroundColor, ...props }, ref) {
1469
+ Image.profileImage = forwardRef3(function ProfileImage({ size = 40, letters, letterColor, backgroundColor, ...ImageProps3 }, ref) {
1470
+ const betterHtmlContextInternal = useBetterHtmlContextInternal();
1471
+ const props = useComponentsPropsMerger(betterHtmlContextInternal.components.image?.style?.default, ImageProps3);
1458
1472
  const theme2 = useTheme4();
1459
1473
  return letters ? /* @__PURE__ */ jsx3(
1460
1474
  Div_default.row,
@@ -1572,9 +1586,11 @@ var PageHeaderComponent = forwardRef5(function PageHeader({
1572
1586
  imageAzProfileImage,
1573
1587
  title,
1574
1588
  titleAs = "h1",
1589
+ titleFontSize,
1575
1590
  titleColor,
1576
1591
  titleRightElement,
1577
1592
  description,
1593
+ descriptionFontSize,
1578
1594
  descriptionColor,
1579
1595
  textAlign,
1580
1596
  rightElement,
@@ -1624,6 +1640,7 @@ var PageHeaderComponent = forwardRef5(function PageHeader({
1624
1640
  Text_default,
1625
1641
  {
1626
1642
  as: titleAs,
1643
+ fontSize: titleFontSize,
1627
1644
  textAlign,
1628
1645
  color: titleColor ?? (lightMode ? theme2.colors.base : theme2.colors.textPrimary),
1629
1646
  children: title
@@ -1637,6 +1654,7 @@ var PageHeaderComponent = forwardRef5(function PageHeader({
1637
1654
  Text_default,
1638
1655
  {
1639
1656
  maxWidth: !mediaQuery.size600 ? app.contentMaxWidth * 0.6 : void 0,
1657
+ fontSize: descriptionFontSize,
1640
1658
  textAlign,
1641
1659
  color: descriptionColor ?? (lightMode ? theme2.colors.base : theme2.colors.textSecondary),
1642
1660
  opacity: lightMode ? 0.7 : void 0,
@@ -1899,7 +1917,7 @@ import {
1899
1917
  useLoader,
1900
1918
  useTheme as useTheme9
1901
1919
  } from "react-better-core";
1902
- import styled6, { css } from "styled-components";
1920
+ import styled6, { css as css2 } from "styled-components";
1903
1921
 
1904
1922
  // src/utils/variableFunctions.ts
1905
1923
  var checkBetterCoreContextValue = (value, functionsName) => {
@@ -2045,8 +2063,8 @@ var ButtonElement = styled6.button.withConfig({
2045
2063
  width: fit-content;
2046
2064
  min-width: max-content;
2047
2065
  font-family: ${(props) => props.theme.styles.fontFamily};
2048
- font-size: 16px;
2049
- line-height: 20px;
2066
+ font-size: ${(props) => props.theme.styles.fontSize}px;
2067
+ line-height: ${(props) => props.theme.styles.fontSize + 4}px;
2050
2068
  text-decoration: none;
2051
2069
  color: ${(props) => props.theme.colors.base};
2052
2070
  background-color: ${(props) => props.theme.colors.primary};
@@ -2057,10 +2075,10 @@ var ButtonElement = styled6.button.withConfig({
2057
2075
  flex-shrink: 0;
2058
2076
  transition: ${(props) => props.theme.styles.transition};
2059
2077
 
2060
- ${(props) => props.disabled ? css`
2078
+ ${(props) => props.disabled ? css2`
2061
2079
  opacity: 0.6;
2062
2080
  cursor: not-allowed;
2063
- ` : !props.isLoading ? css`
2081
+ ` : !props.isLoading ? css2`
2064
2082
  cursor: pointer;
2065
2083
 
2066
2084
  &:not(.secondary):hover {
@@ -2068,9 +2086,9 @@ var ButtonElement = styled6.button.withConfig({
2068
2086
  }
2069
2087
 
2070
2088
  &.secondary:hover {
2071
- ${props.withNoBorder ? css`
2089
+ ${props.withNoBorder ? css2`
2072
2090
  filter: ${props.hoverStyle.filter ?? filterHover().z1};
2073
- ` : css`
2091
+ ` : css2`
2074
2092
  border-color: ${props.theme.colors.primary};
2075
2093
  `}
2076
2094
  }
@@ -2137,7 +2155,7 @@ var ButtonComponent = function Button(buttonProps) {
2137
2155
  const iconComponent = icon ? /* @__PURE__ */ jsx8(
2138
2156
  Div_default.row,
2139
2157
  {
2140
- height: iconSize ?? parseInt(style.fontSize?.toString() ?? "16"),
2158
+ height: iconSize ?? parseInt(style.fontSize?.toString() ?? theme2.styles.fontSize.toString()),
2141
2159
  alignItems: "center",
2142
2160
  justifyContent: "center",
2143
2161
  children: /* @__PURE__ */ jsx8(
@@ -2145,7 +2163,7 @@ var ButtonComponent = function Button(buttonProps) {
2145
2163
  {
2146
2164
  name: icon,
2147
2165
  color: iconColor ?? props.color ?? theme2.colors.base,
2148
- size: iconSize ?? parseInt(style.fontSize?.toString() ?? "16")
2166
+ size: iconSize ?? parseInt(style.fontSize?.toString() ?? theme2.styles.fontSize.toString())
2149
2167
  }
2150
2168
  )
2151
2169
  }
@@ -2155,7 +2173,7 @@ var ButtonComponent = function Button(buttonProps) {
2155
2173
  {
2156
2174
  name: image,
2157
2175
  color: iconColor ?? props.color ?? theme2.colors.base,
2158
- width: imageWidth ?? parseInt(style.fontSize?.toString() ?? "16"),
2176
+ width: imageWidth ?? parseInt(style.fontSize?.toString() ?? theme2.styles.fontSize.toString()),
2159
2177
  height: imageHeight
2160
2178
  }
2161
2179
  ) : void 0;
@@ -2944,7 +2962,7 @@ function Alert2({ alert }) {
2944
2962
  ),
2945
2963
  /* @__PURE__ */ jsxs7(Div_default.column, { flex: 1, gap: theme2.styles.gap / 2, children: [
2946
2964
  /* @__PURE__ */ jsx10(Text_default, { fontSize: 18, fontWeight: 700, children: alertTitle }),
2947
- alert.message && /* @__PURE__ */ jsx10(Text_default, { color: theme2.colors.textSecondary, children: alert.message })
2965
+ alert.message && /* @__PURE__ */ jsx10(Text_default, { fontSize: theme2.styles.fontSize, color: theme2.colors.textSecondary, children: alert.message })
2948
2966
  ] }),
2949
2967
  pluginConfig.withCloseButton && /* @__PURE__ */ jsx10(Button_default.icon, { icon: "XMark", alignSelf: "flex-start", onClick: onClickCloseAlert })
2950
2968
  ] }),
@@ -3516,7 +3534,7 @@ import {
3516
3534
  useTheme as useTheme19,
3517
3535
  useBetterCoreContext as useBetterCoreContext7
3518
3536
  } from "react-better-core";
3519
- import styled10, { css as css2 } from "styled-components";
3537
+ import styled10, { css as css3 } from "styled-components";
3520
3538
 
3521
3539
  // src/components/Label.tsx
3522
3540
  import { memo as memo15 } from "react";
@@ -4261,8 +4279,8 @@ var InputElement = styled10.input.withConfig({
4261
4279
  position: relative;
4262
4280
  width: 100%;
4263
4281
  font-family: ${(props) => props.theme.styles.fontFamily};
4264
- font-size: 16px;
4265
- line-height: 20px;
4282
+ font-size: ${(props) => props.theme.styles.fontSize}px;
4283
+ line-height: ${(props) => props.theme.styles.fontSize + 4}px;
4266
4284
  color: ${(props) => props.theme.colors.textPrimary};
4267
4285
  background: ${(props) => props.theme.colors.backgroundContent};
4268
4286
  border: ${(props) => props.theme.styles.borderWidth}px solid ${(props) => props.theme.colors.border};
@@ -4282,9 +4300,9 @@ var InputElement = styled10.input.withConfig({
4282
4300
  }
4283
4301
 
4284
4302
  &:focus {
4285
- ${(props) => props.withNoBorder ? css2`
4303
+ ${(props) => props.withNoBorder ? css3`
4286
4304
  filter: ${props.hoverStyle.filter ?? filterHover().z1};
4287
- ` : css2`
4305
+ ` : css3`
4288
4306
  border-color: ${props.theme.colors.primary};
4289
4307
  `}
4290
4308
  }
@@ -4388,8 +4406,8 @@ var TextareaElement = styled10.textarea.withConfig({
4388
4406
  min-height: 3lh;
4389
4407
  max-height: 8lh;
4390
4408
  font-family: ${(props) => props.theme.styles.fontFamily};
4391
- font-size: 16px;
4392
- line-height: 20px;
4409
+ font-size: ${(props) => props.theme.styles.fontSize}px;
4410
+ line-height: ${(props) => props.theme.styles.fontSize + 4}px;
4393
4411
  color: ${(props) => props.theme.colors.textPrimary};
4394
4412
  background: ${(props) => props.theme.colors.backgroundContent};
4395
4413
  border: ${(props) => props.theme.styles.borderWidth}px solid ${(props) => props.theme.colors.border};
@@ -4405,9 +4423,9 @@ var TextareaElement = styled10.textarea.withConfig({
4405
4423
  color: ${(props) => props.theme.colors.textSecondary}80;
4406
4424
  }
4407
4425
 
4408
- ${(props) => props.withNoBorder ? css2`
4426
+ ${(props) => props.withNoBorder ? css3`
4409
4427
  filter: ${props.hoverStyle.filter ?? filterHover().z1};
4410
- ` : css2`
4428
+ ` : css3`
4411
4429
  border-color: ${props.theme.colors.primary};
4412
4430
  `}
4413
4431
 
@@ -5434,7 +5452,7 @@ var InputField_default = InputField2;
5434
5452
  // src/components/ToggleInput.tsx
5435
5453
  import { forwardRef as forwardRef12, useCallback as useCallback11, useId as useId3, useState as useState8 } from "react";
5436
5454
  import { useBetterCoreContext as useBetterCoreContext8, useBooleanState as useBooleanState6, useTheme as useTheme20 } from "react-better-core";
5437
- import styled11, { css as css3 } from "styled-components";
5455
+ import styled11, { css as css4 } from "styled-components";
5438
5456
  import { jsx as jsx18, jsxs as jsxs15 } from "react/jsx-runtime";
5439
5457
  var componentSize = 26;
5440
5458
  var switchComponentBallGap = 3;
@@ -5470,9 +5488,9 @@ var InputElement2 = styled11.input.withConfig({
5470
5488
  ${(props) => props.style}
5471
5489
 
5472
5490
  &:hover {
5473
- ${(props) => props.withNoBorder ? css3`
5491
+ ${(props) => props.withNoBorder ? css4`
5474
5492
  filter: ${props.hoverStyle.filter ?? filterHover().z1};
5475
- ` : css3`
5493
+ ` : css4`
5476
5494
  border-color: ${props.theme.colors.primary};
5477
5495
  `}
5478
5496
 
@@ -5657,7 +5675,7 @@ var ToggleInputComponent = forwardRef12(function ToggleInput({
5657
5675
  onClick: onClickText,
5658
5676
  children: [
5659
5677
  text,
5660
- required && !label && /* @__PURE__ */ jsxs15(Text_default, { as: "span", fontSize: 16, color: theme2.colors.error, children: [
5678
+ required && !label && /* @__PURE__ */ jsxs15(Text_default, { as: "span", fontSize: theme2.styles.fontSize, color: theme2.colors.error, children: [
5661
5679
  " ",
5662
5680
  "*"
5663
5681
  ] })
@@ -5665,7 +5683,7 @@ var ToggleInputComponent = forwardRef12(function ToggleInput({
5665
5683
  }
5666
5684
  ) : textAdvanced ? /* @__PURE__ */ jsxs15(Div_default.row, { userSelect: "none", cursor: "pointer", onClick: onClickText, children: [
5667
5685
  textAdvanced,
5668
- required && !label && /* @__PURE__ */ jsxs15(Text_default, { as: "span", fontSize: 16, color: theme2.colors.error, marginLeft: 4, children: [
5686
+ required && !label && /* @__PURE__ */ jsxs15(Text_default, { as: "span", fontSize: theme2.styles.fontSize, color: theme2.colors.error, marginLeft: 4, children: [
5669
5687
  " ",
5670
5688
  "*"
5671
5689
  ] })
@@ -5926,12 +5944,12 @@ FormRowComponent.withTitle = forwardRef14(function WithTitle({
5926
5944
  /* @__PURE__ */ jsxs17(Div_default.column, { flex: 1, gap: theme2.styles.gap / 2, children: [
5927
5945
  /* @__PURE__ */ jsxs17(Text_default, { as: titleAs, fontSize: titleFontSize, children: [
5928
5946
  title,
5929
- required && /* @__PURE__ */ jsxs17(Text_default, { as: "span", fontSize: 16, color: theme2.colors.error, children: [
5947
+ required && /* @__PURE__ */ jsxs17(Text_default, { as: "span", fontSize: theme2.styles.fontSize, color: theme2.colors.error, children: [
5930
5948
  " ",
5931
5949
  "*"
5932
5950
  ] })
5933
5951
  ] }),
5934
- description && /* @__PURE__ */ jsx20(Text_default, { fontSize: descriptionFontSize, color: theme2.colors.textSecondary, children: description })
5952
+ description && /* @__PURE__ */ jsx20(Text_default, { fontSize: descriptionFontSize ?? theme2.styles.fontSize, color: theme2.colors.textSecondary, children: description })
5935
5953
  ] }),
5936
5954
  isLoading && /* @__PURE__ */ jsx20(Div_default, { width: 26 - titleGap })
5937
5955
  ] }),
@@ -6037,7 +6055,7 @@ import {
6037
6055
  Fragment as Fragment6
6038
6056
  } from "react";
6039
6057
  import { darkenColor as darkenColor3, useBetterCoreContext as useBetterCoreContext9, useTheme as useTheme25 } from "react-better-core";
6040
- import styled12, { css as css4 } from "styled-components";
6058
+ import styled12, { css as css5 } from "styled-components";
6041
6059
 
6042
6060
  // src/components/Pagination.tsx
6043
6061
  import { memo as memo22, useCallback as useCallback13, useEffect as useEffect11, useMemo as useMemo8, useState as useState10 } from "react";
@@ -6237,13 +6255,13 @@ var TableStyledComponent = styled12.table.withConfig({
6237
6255
  }
6238
6256
  }
6239
6257
 
6240
- ${(props) => props.isStriped ? css4`
6258
+ ${(props) => props.isStriped ? css5`
6241
6259
  &:nth-child(even) {
6242
6260
  background-color: ${props.theme.colors.backgroundSecondary};
6243
6261
  }
6244
6262
  ` : ""}
6245
6263
 
6246
- ${(props) => props.withHover ? css4`
6264
+ ${(props) => props.withHover ? css5`
6247
6265
  transition: ${props.theme.styles.transition};
6248
6266
 
6249
6267
  &:not(.isHeader):not(.isFooter):not(.withoutHover):hover {
@@ -6934,56 +6952,56 @@ var Table_default = Table2;
6934
6952
  // src/components/Tooltip.tsx
6935
6953
  import { memo as memo24, useCallback as useCallback15, useRef as useRef7, useState as useState12, useEffect as useEffect13, forwardRef as forwardRef16, useImperativeHandle as useImperativeHandle3, useMemo as useMemo10 } from "react";
6936
6954
  import { useTheme as useTheme26 } from "react-better-core";
6937
- import styled13, { css as css5 } from "styled-components";
6955
+ import styled13, { css as css6 } from "styled-components";
6938
6956
  import { jsx as jsx24, jsxs as jsxs21 } from "react/jsx-runtime";
6939
6957
  var tooltipContainerStyle = (props) => ({
6940
- top: css5`
6958
+ top: css6`
6941
6959
  bottom: calc(100% + ${props.gap}px + ${props.arrowSize}px);
6942
6960
  ${props.align === "center" ? "left: 50%;" : props.align === "left" ? "left: 0;" : "right: 0;"}
6943
6961
  `,
6944
- bottom: css5`
6962
+ bottom: css6`
6945
6963
  top: calc(100% + ${props.gap}px + ${props.arrowSize}px);
6946
6964
  ${props.align === "center" ? "left: 50%;" : props.align === "left" ? "left: 0;" : "right: 0;"};
6947
6965
  `,
6948
- left: css5`
6966
+ left: css6`
6949
6967
  ${props.align === "center" ? "top: 50%;" : props.align === "top" ? "top: 0;" : "bottom: 0;"};
6950
6968
  right: calc(100% + ${props.gap}px + ${props.arrowSize}px);
6951
6969
  `,
6952
- right: css5`
6970
+ right: css6`
6953
6971
  ${props.align === "center" ? "top: 50%;" : props.align === "top" ? "top: 0;" : "bottom: 0;"};
6954
6972
  left: calc(100% + ${props.gap}px + ${props.arrowSize}px);
6955
6973
  `
6956
6974
  });
6957
6975
  var tooltipPositionStyle = (props) => ({
6958
6976
  top: {
6959
- opened: css5`
6977
+ opened: css6`
6960
6978
  transform: translateX(${props.align === "center" ? "-50%" : "0"});
6961
6979
  `,
6962
- closed: css5`
6980
+ closed: css6`
6963
6981
  transform: translateX(${props.align === "center" ? "-50%" : "0"}) translateY(${props.theme.styles.gap}px);
6964
6982
  `
6965
6983
  },
6966
6984
  bottom: {
6967
- opened: css5`
6985
+ opened: css6`
6968
6986
  transform: translateX(${props.align === "center" ? "-50%" : "0"});
6969
6987
  `,
6970
- closed: css5`
6988
+ closed: css6`
6971
6989
  transform: translateX(${props.align === "center" ? "-50%" : "0"}) translateY(-${props.theme.styles.gap}px);
6972
6990
  `
6973
6991
  },
6974
6992
  left: {
6975
- opened: css5`
6993
+ opened: css6`
6976
6994
  transform: translateY(${props.align === "center" ? "-50%" : "0"});
6977
6995
  `,
6978
- closed: css5`
6996
+ closed: css6`
6979
6997
  transform: translateX(${props.theme.styles.gap}px) translateY(${props.align === "center" ? "-50%" : "0"});
6980
6998
  `
6981
6999
  },
6982
7000
  right: {
6983
- opened: css5`
7001
+ opened: css6`
6984
7002
  transform: translateY(${props.align === "center" ? "-50%" : "0"});
6985
7003
  `,
6986
- closed: css5`
7004
+ closed: css6`
6987
7005
  transform: translateX(-${props.theme.styles.gap}px) translateY(${props.align === "center" ? "-50%" : "0"});
6988
7006
  `
6989
7007
  }
@@ -8150,10 +8168,14 @@ SideMenuComponent.pageHolder = function SideMenuPageHolder({ outsideComponent, .
8150
8168
  }
8151
8169
  );
8152
8170
  };
8153
- SideMenuComponent.burgerButton = function BurgerButton() {
8171
+ SideMenuComponent.burgerButton = function BurgerButton({ position = "left", onClick }) {
8154
8172
  const theme2 = useTheme29();
8155
8173
  const { sideMenuIsOpenMobile, setSideMenuIsOpenMobile } = useBetterHtmlContextInternal();
8156
8174
  const [isHovered, setIsHovered] = useBooleanState8();
8175
+ const onClickElement = useCallback18(() => {
8176
+ setSideMenuIsOpenMobile.toggle();
8177
+ onClick?.(!sideMenuIsOpenMobile);
8178
+ }, [onClick, sideMenuIsOpenMobile]);
8157
8179
  const width = 2;
8158
8180
  return /* @__PURE__ */ jsxs24(
8159
8181
  Div_default,
@@ -8165,7 +8187,7 @@ SideMenuComponent.burgerButton = function BurgerButton() {
8165
8187
  onMouseOver: setIsHovered.setTrue,
8166
8188
  onMouseLeave: setIsHovered.setFalse,
8167
8189
  onMouseOut: setIsHovered.setFalse,
8168
- onClick: setSideMenuIsOpenMobile.toggle,
8190
+ onClick: onClickElement,
8169
8191
  children: [
8170
8192
  /* @__PURE__ */ jsx27(
8171
8193
  Div_default,
@@ -8174,10 +8196,11 @@ SideMenuComponent.burgerButton = function BurgerButton() {
8174
8196
  width: isHovered || sideMenuIsOpenMobile ? "100%" : "50%",
8175
8197
  height: width,
8176
8198
  top: sideMenuIsOpenMobile ? `calc(50% - ${width / 2}px)` : 0,
8177
- left: 0,
8199
+ left: position === "left" ? 0 : position === "center" ? sideMenuIsOpenMobile ? 0 : "50%" : "auto",
8200
+ right: position === "right" ? 0 : void 0,
8178
8201
  backgroundColor: theme2.colors.border,
8179
8202
  borderRadius: 999,
8180
- transform: sideMenuIsOpenMobile ? "rotate(45deg)" : void 0,
8203
+ transform: sideMenuIsOpenMobile ? "rotate(45deg)" : position === "center" ? "translateX(-50%)" : void 0,
8181
8204
  transition: theme2.styles.transition
8182
8205
  }
8183
8206
  ),
@@ -8188,10 +8211,11 @@ SideMenuComponent.burgerButton = function BurgerButton() {
8188
8211
  width: isHovered ? "100%" : "100%",
8189
8212
  height: width,
8190
8213
  top: "50%",
8191
- left: 0,
8214
+ left: position === "left" ? 0 : position === "center" ? "50%" : "auto",
8215
+ right: position === "right" ? 0 : void 0,
8192
8216
  backgroundColor: theme2.colors.border,
8193
8217
  borderRadius: 999,
8194
- transform: "translateY(-50%)",
8218
+ transform: `translateY(-50%)${position === "center" ? " translateX(-50%)" : ""}`,
8195
8219
  opacity: sideMenuIsOpenMobile ? 0 : void 0,
8196
8220
  transition: theme2.styles.transition
8197
8221
  }
@@ -8203,10 +8227,11 @@ SideMenuComponent.burgerButton = function BurgerButton() {
8203
8227
  width: isHovered || sideMenuIsOpenMobile ? "100%" : "75%",
8204
8228
  height: width,
8205
8229
  bottom: sideMenuIsOpenMobile ? `calc(50% - ${width / 2}px)` : 0,
8206
- left: 0,
8230
+ left: position === "left" ? 0 : position === "center" ? sideMenuIsOpenMobile ? 0 : "50%" : "auto",
8231
+ right: position === "right" ? 0 : void 0,
8207
8232
  backgroundColor: theme2.colors.border,
8208
8233
  borderRadius: 999,
8209
- transform: sideMenuIsOpenMobile ? "rotate(-45deg)" : void 0,
8234
+ transform: sideMenuIsOpenMobile ? "rotate(-45deg)" : position === "center" ? "translateX(-50%)" : void 0,
8210
8235
  transition: theme2.styles.transition
8211
8236
  }
8212
8237
  )