react-better-html 1.1.163 → 1.1.165

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.js CHANGED
@@ -65,6 +65,7 @@ __export(index_exports, {
65
65
  eventPreventDefault: () => eventPreventDefault,
66
66
  eventPreventStop: () => eventPreventStop,
67
67
  eventStopPropagation: () => eventStopPropagation,
68
+ filterHover: () => filterHover,
68
69
  formatPhoneNumber: () => formatPhoneNumber,
69
70
  generateLocalStorage: () => generateLocalStorage,
70
71
  generateRandomString: () => generateRandomString,
@@ -92,7 +93,7 @@ __export(index_exports, {
92
93
  module.exports = __toCommonJS(index_exports);
93
94
 
94
95
  // src/components/Div.tsx
95
- var import_react11 = require("react");
96
+ var import_react13 = require("react");
96
97
  var import_styled_components8 = __toESM(require("styled-components"));
97
98
 
98
99
  // src/constants.ts
@@ -3201,8 +3202,117 @@ function useUrlQuery() {
3201
3202
  };
3202
3203
  }
3203
3204
 
3204
- // src/components/Div.tsx
3205
+ // src/components/Divider.tsx
3206
+ var import_react11 = require("react");
3205
3207
  var import_jsx_runtime9 = require("react/jsx-runtime");
3208
+ var Divider_default = {
3209
+ vertical: (0, import_react11.memo)(
3210
+ (0, import_react11.forwardRef)(function Divider({ width = 1, backgroundColor, height, ...props }, ref) {
3211
+ const theme2 = useTheme();
3212
+ return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
3213
+ Div_default,
3214
+ {
3215
+ width,
3216
+ height: height ?? "100%",
3217
+ flexShrink: 0,
3218
+ backgroundColor: backgroundColor ?? theme2.colors.border,
3219
+ ...props,
3220
+ ref
3221
+ }
3222
+ );
3223
+ })
3224
+ ),
3225
+ horizontal: (0, import_react11.memo)(
3226
+ (0, import_react11.forwardRef)(function Divider2({ width = 1, backgroundColor, text, textFontSize, textColor, ...props }, ref) {
3227
+ const theme2 = useTheme();
3228
+ return /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(Div_default.row, { width: "100%", alignItems: "center", gap: text ? theme2.styles.space : void 0, ...props, ref, children: [
3229
+ /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(Div_default, { flex: 1, height: width, flexShrink: 0, backgroundColor: backgroundColor ?? theme2.colors.border }),
3230
+ text && /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(Text_default, { fontSize: textFontSize, color: textColor ?? theme2.colors.textSecondary, children: text }),
3231
+ /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(Div_default, { flex: 1, height: width, flexShrink: 0, backgroundColor: backgroundColor ?? theme2.colors.border })
3232
+ ] });
3233
+ })
3234
+ )
3235
+ };
3236
+
3237
+ // src/components/PageHeader.tsx
3238
+ var import_react12 = require("react");
3239
+ var import_jsx_runtime10 = require("react/jsx-runtime");
3240
+ var PageHeaderComponent = (0, import_react12.forwardRef)(function PageHeader({
3241
+ imageUrl,
3242
+ imageSize = 60,
3243
+ title,
3244
+ titleAs,
3245
+ titleColor,
3246
+ titleRightElement,
3247
+ description,
3248
+ descriptionColor,
3249
+ textAlign,
3250
+ rightElement,
3251
+ lightMode,
3252
+ marginBottom
3253
+ }, ref) {
3254
+ const theme2 = useTheme();
3255
+ const { app } = useBetterHtmlContextInternal();
3256
+ const mediaQuery = useMediaQuery();
3257
+ return /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)(
3258
+ Div_default.row,
3259
+ {
3260
+ alignItems: "center",
3261
+ gap: theme2.styles.space,
3262
+ marginBottom: marginBottom ?? theme2.styles.space * 2,
3263
+ ref,
3264
+ children: [
3265
+ imageUrl && /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(Image_default.profileImage, { src: imageUrl, size: imageSize ?? (mediaQuery.size600 ? 46 : 60) }),
3266
+ /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)(
3267
+ Div_default.column,
3268
+ {
3269
+ alignItems: textAlign === "center" ? "center" : textAlign === "right" ? "flex-end" : void 0,
3270
+ flex: 1,
3271
+ gap: theme2.styles.gap / 2,
3272
+ children: [
3273
+ /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)(
3274
+ Div_default.row,
3275
+ {
3276
+ alignItems: "center",
3277
+ justifyContent: textAlign === "center" ? "center" : textAlign === "right" ? "flex-end" : void 0,
3278
+ gap: theme2.styles.space,
3279
+ children: [
3280
+ /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
3281
+ Text_default,
3282
+ {
3283
+ as: titleAs ?? "h1",
3284
+ textAlign,
3285
+ color: titleColor ?? (lightMode ? theme2.colors.base : theme2.colors.textPrimary),
3286
+ children: title
3287
+ }
3288
+ ),
3289
+ titleRightElement
3290
+ ]
3291
+ }
3292
+ ),
3293
+ description && /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
3294
+ Text_default,
3295
+ {
3296
+ maxWidth: !mediaQuery.size600 ? app.contentMaxWidth * 0.6 : void 0,
3297
+ textAlign,
3298
+ color: descriptionColor ?? (lightMode ? theme2.colors.base : theme2.colors.textSecondary),
3299
+ opacity: lightMode ? 0.7 : void 0,
3300
+ children: description
3301
+ }
3302
+ )
3303
+ ]
3304
+ }
3305
+ ),
3306
+ rightElement
3307
+ ]
3308
+ }
3309
+ );
3310
+ });
3311
+ var PageHeader2 = (0, import_react12.memo)(PageHeaderComponent);
3312
+ var PageHeader_default = PageHeader2;
3313
+
3314
+ // src/components/Div.tsx
3315
+ var import_jsx_runtime11 = require("react/jsx-runtime");
3206
3316
  var DivStyledComponent = import_styled_components8.default.div.withConfig({
3207
3317
  shouldForwardProp: (prop) => !["normalStyle", "hoverStyle"].includes(prop)
3208
3318
  })`
@@ -3212,7 +3322,7 @@ var DivStyledComponent = import_styled_components8.default.div.withConfig({
3212
3322
  ${(props) => props.hoverStyle}
3213
3323
  }
3214
3324
  `;
3215
- var DivComponent = (0, import_react11.forwardRef)(function Div({
3325
+ var DivComponent = (0, import_react13.forwardRef)(function Div({
3216
3326
  as = "div",
3217
3327
  value,
3218
3328
  isTabAccessed,
@@ -3229,14 +3339,14 @@ var DivComponent = (0, import_react11.forwardRef)(function Div({
3229
3339
  const dataProps = useComponentPropsWithPrefix(props, "data");
3230
3340
  const ariaProps = useComponentPropsWithPrefix(props, "aria");
3231
3341
  const restProps = useComponentPropsWithoutStyle(props);
3232
- const onClickElement = (0, import_react11.useCallback)(
3342
+ const onClickElement = (0, import_react13.useCallback)(
3233
3343
  (event) => {
3234
3344
  onClick?.(event);
3235
3345
  onClickWithValue?.(value);
3236
3346
  },
3237
3347
  [onClick, onClickWithValue, value]
3238
3348
  );
3239
- const onKeyDownElement = (0, import_react11.useCallback)(
3349
+ const onKeyDownElement = (0, import_react13.useCallback)(
3240
3350
  (event) => {
3241
3351
  onKeyDown?.(event);
3242
3352
  if (!isTabAccessed) return;
@@ -3247,7 +3357,7 @@ var DivComponent = (0, import_react11.forwardRef)(function Div({
3247
3357
  },
3248
3358
  [onKeyDown, isTabAccessed]
3249
3359
  );
3250
- return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
3360
+ return /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
3251
3361
  DivStyledComponent,
3252
3362
  {
3253
3363
  as,
@@ -3265,9 +3375,9 @@ var DivComponent = (0, import_react11.forwardRef)(function Div({
3265
3375
  }
3266
3376
  );
3267
3377
  });
3268
- DivComponent.row = (0, import_react11.forwardRef)(function Row({ flexReverse, invertFlexDirection, ...props }, ref) {
3378
+ DivComponent.row = (0, import_react13.forwardRef)(function Row({ flexReverse, invertFlexDirection, ...props }, ref) {
3269
3379
  const reverseSuffix = flexReverse ? "-reverse" : "";
3270
- return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
3380
+ return /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
3271
3381
  DivComponent,
3272
3382
  {
3273
3383
  display: "flex",
@@ -3277,9 +3387,9 @@ DivComponent.row = (0, import_react11.forwardRef)(function Row({ flexReverse, in
3277
3387
  }
3278
3388
  );
3279
3389
  });
3280
- DivComponent.column = (0, import_react11.forwardRef)(function Column({ flexReverse, invertFlexDirection, ...props }, ref) {
3390
+ DivComponent.column = (0, import_react13.forwardRef)(function Column({ flexReverse, invertFlexDirection, ...props }, ref) {
3281
3391
  const reverseSuffix = flexReverse ? "-reverse" : "";
3282
- return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
3392
+ return /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
3283
3393
  DivComponent,
3284
3394
  {
3285
3395
  display: "flex",
@@ -3289,13 +3399,29 @@ DivComponent.column = (0, import_react11.forwardRef)(function Column({ flexRever
3289
3399
  }
3290
3400
  );
3291
3401
  });
3292
- DivComponent.grid = (0, import_react11.forwardRef)(function Grid(props, ref) {
3293
- return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(DivComponent, { display: "grid", ref, ...props });
3402
+ DivComponent.grid = (0, import_react13.forwardRef)(function Grid(props, ref) {
3403
+ return /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(DivComponent, { display: "grid", ref, ...props });
3294
3404
  });
3295
- DivComponent.box = (0, import_react11.forwardRef)(function Box2({ isActive, ...props }, ref) {
3405
+ DivComponent.box = (0, import_react13.forwardRef)(function Box2({
3406
+ imageUrl,
3407
+ imageSize,
3408
+ title,
3409
+ titleAs,
3410
+ titleColor,
3411
+ titleRightElement,
3412
+ description,
3413
+ descriptionColor,
3414
+ textAlign,
3415
+ rightElement,
3416
+ lightMode,
3417
+ headerBackgroundColor,
3418
+ isActive,
3419
+ children,
3420
+ ...props
3421
+ }, ref) {
3296
3422
  const theme2 = useTheme();
3297
3423
  const withClick = props.onClick || props.onClickWithValue;
3298
- return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
3424
+ return /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)(
3299
3425
  DivComponent,
3300
3426
  {
3301
3427
  color: isActive ? theme2.colors.base : void 0,
@@ -3305,57 +3431,61 @@ DivComponent.box = (0, import_react11.forwardRef)(function Box2({ isActive, ...p
3305
3431
  borderColorHover: withClick && !isActive ? theme2.colors.primary : void 0,
3306
3432
  filterHover: withClick && isActive ? "brightness(0.9)" : void 0,
3307
3433
  cursor: withClick ? "pointer" : void 0,
3308
- paddingBlock: theme2.styles.gap,
3434
+ paddingBlock: title ? theme2.styles.space : theme2.styles.gap,
3309
3435
  paddingInline: theme2.styles.space,
3310
3436
  ref,
3311
- ...props
3437
+ ...props,
3438
+ children: [
3439
+ title && /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)(
3440
+ Div2,
3441
+ {
3442
+ backgroundColor: headerBackgroundColor,
3443
+ borderTopLeftRadius: props.borderTopLeftRadius ?? props.borderRadius ?? theme2.styles.borderRadius - 1,
3444
+ borderTopRightRadius: props.borderTopRightRadius ?? props.borderRadius ?? theme2.styles.borderRadius - 1,
3445
+ marginInline: -theme2.styles.space,
3446
+ marginTop: -theme2.styles.space,
3447
+ marginBottom: theme2.styles.space,
3448
+ paddingInline: theme2.styles.space,
3449
+ paddingTop: theme2.styles.space,
3450
+ children: [
3451
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
3452
+ PageHeader_default,
3453
+ {
3454
+ imageUrl,
3455
+ imageSize,
3456
+ title,
3457
+ titleAs,
3458
+ titleColor,
3459
+ titleRightElement,
3460
+ description,
3461
+ descriptionColor,
3462
+ textAlign,
3463
+ rightElement,
3464
+ lightMode,
3465
+ marginBottom: theme2.styles.space
3466
+ }
3467
+ ),
3468
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(Div2, { width: `calc(100% + ${theme2.styles.space * 2}px)`, marginLeft: -theme2.styles.space, children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(Divider_default.horizontal, {}) })
3469
+ ]
3470
+ }
3471
+ ),
3472
+ children
3473
+ ]
3312
3474
  }
3313
3475
  );
3314
3476
  });
3315
- var Div2 = (0, import_react11.memo)(DivComponent);
3477
+ var Div2 = (0, import_react13.memo)(DivComponent);
3316
3478
  Div2.row = DivComponent.row;
3317
3479
  Div2.column = DivComponent.column;
3318
3480
  Div2.grid = DivComponent.grid;
3319
3481
  Div2.box = DivComponent.box;
3320
3482
  var Div_default = Div2;
3321
3483
 
3322
- // src/components/Divider.tsx
3323
- var import_react12 = require("react");
3324
- var import_jsx_runtime10 = require("react/jsx-runtime");
3325
- var Divider_default = {
3326
- vertical: (0, import_react12.memo)(
3327
- (0, import_react12.forwardRef)(function Divider({ width = 1, backgroundColor, height, ...props }, ref) {
3328
- const theme2 = useTheme();
3329
- return /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
3330
- Div_default,
3331
- {
3332
- width,
3333
- height: height ?? "100%",
3334
- flexShrink: 0,
3335
- backgroundColor: backgroundColor ?? theme2.colors.border,
3336
- ...props,
3337
- ref
3338
- }
3339
- );
3340
- })
3341
- ),
3342
- horizontal: (0, import_react12.memo)(
3343
- (0, import_react12.forwardRef)(function Divider2({ width = 1, backgroundColor, text, textFontSize, textColor, ...props }, ref) {
3344
- const theme2 = useTheme();
3345
- return /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)(Div_default.row, { width: "100%", alignItems: "center", gap: text ? theme2.styles.space : void 0, ...props, ref, children: [
3346
- /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(Div_default, { flex: 1, height: width, flexShrink: 0, backgroundColor: backgroundColor ?? theme2.colors.border }),
3347
- text && /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(Text_default, { fontSize: textFontSize, color: textColor ?? theme2.colors.textSecondary, children: text }),
3348
- /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(Div_default, { flex: 1, height: width, flexShrink: 0, backgroundColor: backgroundColor ?? theme2.colors.border })
3349
- ] });
3350
- })
3351
- )
3352
- };
3353
-
3354
3484
  // src/components/Modal.tsx
3355
- var import_react13 = require("react");
3485
+ var import_react14 = require("react");
3356
3486
  var import_react_dom = require("react-dom");
3357
3487
  var import_styled_components9 = __toESM(require("styled-components"));
3358
- var import_jsx_runtime11 = require("react/jsx-runtime");
3488
+ var import_jsx_runtime12 = require("react/jsx-runtime");
3359
3489
  var DialogStylesElement = import_styled_components9.default.dialog.withConfig({
3360
3490
  shouldForwardProp: (prop) => !["theme", "colorTheme", "opacity"].includes(prop)
3361
3491
  })`
@@ -3396,7 +3526,7 @@ var DialogStylesElement = import_styled_components9.default.dialog.withConfig({
3396
3526
  }
3397
3527
  }
3398
3528
  `;
3399
- var ModalComponent = (0, import_react13.forwardRef)(function Modal({
3529
+ var ModalComponent = (0, import_react14.forwardRef)(function Modal({
3400
3530
  maxWidth,
3401
3531
  title,
3402
3532
  titleColor,
@@ -3414,10 +3544,10 @@ var ModalComponent = (0, import_react13.forwardRef)(function Modal({
3414
3544
  const urlQuery = reactRouterDomPlugin2 ? useUrlQuery() : void 0;
3415
3545
  const theme2 = useTheme();
3416
3546
  const { app, colorTheme } = useBetterHtmlContextInternal();
3417
- const dialogRef = (0, import_react13.useRef)(null);
3418
- const [isOpened, setIsOpened] = (0, import_react13.useState)(false);
3419
- const [isOpenedLate, setIsOpenedLate] = (0, import_react13.useState)(false);
3420
- const onClickOpen = (0, import_react13.useCallback)(() => {
3547
+ const dialogRef = (0, import_react14.useRef)(null);
3548
+ const [isOpened, setIsOpened] = (0, import_react14.useState)(false);
3549
+ const [isOpenedLate, setIsOpenedLate] = (0, import_react14.useState)(false);
3550
+ const onClickOpen = (0, import_react14.useCallback)(() => {
3421
3551
  dialogRef.current?.showModal();
3422
3552
  setIsOpened(true);
3423
3553
  setIsOpenedLate(true);
@@ -3431,7 +3561,7 @@ var ModalComponent = (0, import_react13.forwardRef)(function Modal({
3431
3561
  }
3432
3562
  onOpen?.();
3433
3563
  }, [onOpen, urlQuery, name]);
3434
- const onClickClose = (0, import_react13.useCallback)(() => {
3564
+ const onClickClose = (0, import_react14.useCallback)(() => {
3435
3565
  setIsOpened(false);
3436
3566
  onClose?.();
3437
3567
  if (urlQuery && name) urlQuery.removeQuery(`${name}-modal`, false);
@@ -3440,7 +3570,7 @@ var ModalComponent = (0, import_react13.forwardRef)(function Modal({
3440
3570
  setIsOpenedLate(false);
3441
3571
  }, 0.2 * 1e3);
3442
3572
  }, [onClose, urlQuery, name]);
3443
- const onKeyDown = (0, import_react13.useCallback)(
3573
+ const onKeyDown = (0, import_react14.useCallback)(
3444
3574
  (event) => {
3445
3575
  if (event.key === "Escape") {
3446
3576
  if (!withoutCloseButton) return;
@@ -3449,7 +3579,7 @@ var ModalComponent = (0, import_react13.forwardRef)(function Modal({
3449
3579
  },
3450
3580
  [withoutCloseButton]
3451
3581
  );
3452
- (0, import_react13.useImperativeHandle)(
3582
+ (0, import_react14.useImperativeHandle)(
3453
3583
  ref,
3454
3584
  () => {
3455
3585
  return {
@@ -3461,7 +3591,7 @@ var ModalComponent = (0, import_react13.forwardRef)(function Modal({
3461
3591
  [onClickOpen, onClickClose, isOpened]
3462
3592
  );
3463
3593
  return (0, import_react_dom.createPortal)(
3464
- /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
3594
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
3465
3595
  DialogStylesElement,
3466
3596
  {
3467
3597
  theme: theme2,
@@ -3470,7 +3600,7 @@ var ModalComponent = (0, import_react13.forwardRef)(function Modal({
3470
3600
  onClose: onClickClose,
3471
3601
  onKeyDown,
3472
3602
  ref: dialogRef,
3473
- children: isOpenedLate ? /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
3603
+ children: isOpenedLate ? /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
3474
3604
  Div_default.column,
3475
3605
  {
3476
3606
  position: "relative",
@@ -3484,7 +3614,7 @@ var ModalComponent = (0, import_react13.forwardRef)(function Modal({
3484
3614
  transform: `translateY(${theme2.styles.space}px)`,
3485
3615
  transition: theme2.styles.transition,
3486
3616
  animation: isOpened ? "fadeInAnimation 0.2s ease forwards" : "fadeOutAnimation 0.2s ease forwards",
3487
- children: /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)(
3617
+ children: /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(
3488
3618
  Div_default,
3489
3619
  {
3490
3620
  position: "relative",
@@ -3492,12 +3622,11 @@ var ModalComponent = (0, import_react13.forwardRef)(function Modal({
3492
3622
  minHeight: 32 + theme2.styles.space * 2,
3493
3623
  backgroundColor: theme2.colors.backgroundBase,
3494
3624
  borderRadius: theme2.styles.borderRadius * 2,
3495
- paddingInline: !title ? theme2.styles.space + theme2.styles.gap : void 0,
3496
- paddingBlock: !title ? theme2.styles.space : void 0,
3625
+ padding: !title ? theme2.styles.space : void 0,
3497
3626
  overflow,
3498
3627
  children: [
3499
- title ? /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)(import_jsx_runtime11.Fragment, { children: [
3500
- /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)(
3628
+ title ? /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(import_jsx_runtime12.Fragment, { children: [
3629
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(
3501
3630
  Div_default.row,
3502
3631
  {
3503
3632
  alignItems: "center",
@@ -3505,12 +3634,12 @@ var ModalComponent = (0, import_react13.forwardRef)(function Modal({
3505
3634
  backgroundColor: headerBackgroundColor,
3506
3635
  borderTopLeftRadius: theme2.styles.borderRadius * 2 - 1,
3507
3636
  borderTopRightRadius: theme2.styles.borderRadius * 2 - 1,
3508
- paddingInline: theme2.styles.space + theme2.styles.gap,
3637
+ paddingInline: theme2.styles.space,
3509
3638
  paddingBlock: theme2.styles.space,
3510
3639
  transition: theme2.styles.transition,
3511
3640
  children: [
3512
- /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)(Div_default.column, { flex: 1, gap: theme2.styles.gap / 2, children: [
3513
- /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
3641
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(Div_default.column, { flex: 1, gap: theme2.styles.gap / 2, children: [
3642
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
3514
3643
  Text_default,
3515
3644
  {
3516
3645
  as: "h1",
@@ -3519,7 +3648,7 @@ var ModalComponent = (0, import_react13.forwardRef)(function Modal({
3519
3648
  children: title
3520
3649
  }
3521
3650
  ),
3522
- description && /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
3651
+ description && /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
3523
3652
  Text_default,
3524
3653
  {
3525
3654
  color: descriptionColor ?? theme2.colors.textSecondary,
@@ -3528,7 +3657,7 @@ var ModalComponent = (0, import_react13.forwardRef)(function Modal({
3528
3657
  }
3529
3658
  )
3530
3659
  ] }),
3531
- !withoutCloseButton && /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
3660
+ !withoutCloseButton && /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
3532
3661
  Button_default.icon,
3533
3662
  {
3534
3663
  icon: "XMark",
@@ -3541,16 +3670,9 @@ var ModalComponent = (0, import_react13.forwardRef)(function Modal({
3541
3670
  ]
3542
3671
  }
3543
3672
  ),
3544
- /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(Divider_default.horizontal, {})
3545
- ] }) : /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(import_jsx_runtime11.Fragment, { children: !withoutCloseButton && /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(Div_default, { position: "absolute", top: theme2.styles.space, right: theme2.styles.space, children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(Button_default.icon, { icon: "XMark", onClick: onClickClose }) }) }),
3546
- /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
3547
- Div_default,
3548
- {
3549
- paddingInline: title ? theme2.styles.space + theme2.styles.gap : void 0,
3550
- paddingBlock: title ? theme2.styles.space : void 0,
3551
- children
3552
- }
3553
- )
3673
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(Divider_default.horizontal, {})
3674
+ ] }) : /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(import_jsx_runtime12.Fragment, { children: !withoutCloseButton && /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(Div_default, { position: "absolute", top: theme2.styles.space, right: theme2.styles.space, children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(Button_default.icon, { icon: "XMark", onClick: onClickClose }) }) }),
3675
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(Div_default, { padding: title ? theme2.styles.space : void 0, children })
3554
3676
  ]
3555
3677
  }
3556
3678
  )
@@ -3561,21 +3683,21 @@ var ModalComponent = (0, import_react13.forwardRef)(function Modal({
3561
3683
  document.body
3562
3684
  );
3563
3685
  });
3564
- ModalComponent.confirmation = (0, import_react13.forwardRef)(function Confirmation({ message, continueButtonLoaderName, onContinue, onCancel, ...props }, ref) {
3686
+ ModalComponent.confirmation = (0, import_react14.forwardRef)(function Confirmation({ message, continueButtonLoaderName, onContinue, onCancel, ...props }, ref) {
3565
3687
  const theme2 = useTheme();
3566
- const modalRef = (0, import_react13.useRef)(null);
3567
- const onCancelElement = (0, import_react13.useCallback)(() => {
3688
+ const modalRef = (0, import_react14.useRef)(null);
3689
+ const onCancelElement = (0, import_react14.useCallback)(() => {
3568
3690
  onCancel?.();
3569
3691
  modalRef.current?.close();
3570
3692
  }, [onCancel]);
3571
- const onContinueElement = (0, import_react13.useCallback)(() => {
3693
+ const onContinueElement = (0, import_react14.useCallback)(() => {
3572
3694
  onContinue?.();
3573
3695
  modalRef.current?.close();
3574
3696
  }, [onContinue]);
3575
- (0, import_react13.useImperativeHandle)(ref, () => modalRef.current, []);
3576
- return /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)(ModalComponent, { title: "Are you sure?", maxWidth: 660, ...props, ref: modalRef, children: [
3577
- /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(Text_default, { color: theme2.colors.textSecondary, children: message ?? "Do you really want to continue? This action may be irreversible." }),
3578
- /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)(
3697
+ (0, import_react14.useImperativeHandle)(ref, () => modalRef.current, []);
3698
+ return /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(ModalComponent, { title: "Are you sure?", maxWidth: 660, ...props, ref: modalRef, children: [
3699
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(Text_default, { color: theme2.colors.textSecondary, children: message ?? "Do you really want to continue? This action may be irreversible." }),
3700
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(
3579
3701
  Div_default.row,
3580
3702
  {
3581
3703
  alignItems: "center",
@@ -3583,28 +3705,28 @@ ModalComponent.confirmation = (0, import_react13.forwardRef)(function Confirmati
3583
3705
  gap: theme2.styles.gap,
3584
3706
  marginTop: theme2.styles.space * 2,
3585
3707
  children: [
3586
- /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(Button_default.secondary, { text: "Cancel", onClick: onCancelElement }),
3587
- /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(Button_default, { text: "Continue", loaderName: continueButtonLoaderName, onClick: onContinueElement })
3708
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(Button_default.secondary, { text: "Cancel", onClick: onCancelElement }),
3709
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(Button_default, { text: "Continue", loaderName: continueButtonLoaderName, onClick: onContinueElement })
3588
3710
  ]
3589
3711
  }
3590
3712
  )
3591
3713
  ] });
3592
3714
  });
3593
- ModalComponent.destructive = (0, import_react13.forwardRef)(function Destructive2({ message, deleteButtonLoaderName, onDelete, onCancel, ...props }, ref) {
3715
+ ModalComponent.destructive = (0, import_react14.forwardRef)(function Destructive2({ message, deleteButtonLoaderName, onDelete, onCancel, ...props }, ref) {
3594
3716
  const theme2 = useTheme();
3595
- const modalRef = (0, import_react13.useRef)(null);
3596
- const onCancelElement = (0, import_react13.useCallback)(() => {
3717
+ const modalRef = (0, import_react14.useRef)(null);
3718
+ const onCancelElement = (0, import_react14.useCallback)(() => {
3597
3719
  onCancel?.();
3598
3720
  modalRef.current?.close();
3599
3721
  }, [onCancel]);
3600
- const onDeleteElement = (0, import_react13.useCallback)(() => {
3722
+ const onDeleteElement = (0, import_react14.useCallback)(() => {
3601
3723
  onDelete?.();
3602
3724
  modalRef.current?.close();
3603
3725
  }, [onDelete]);
3604
- (0, import_react13.useImperativeHandle)(ref, () => modalRef.current, []);
3605
- return /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)(ModalComponent, { title: "Are you sure?", maxWidth: 660, ...props, ref: modalRef, children: [
3606
- /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(Text_default, { color: theme2.colors.textSecondary, children: message ?? "Do you really want to continue with the deleting of the item? This action may be irreversible." }),
3607
- /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)(
3726
+ (0, import_react14.useImperativeHandle)(ref, () => modalRef.current, []);
3727
+ return /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(ModalComponent, { title: "Are you sure?", maxWidth: 660, ...props, ref: modalRef, children: [
3728
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(Text_default, { color: theme2.colors.textSecondary, children: message ?? "Do you really want to continue with the deleting of the item? This action may be irreversible." }),
3729
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(
3608
3730
  Div_default.row,
3609
3731
  {
3610
3732
  alignItems: "center",
@@ -3612,8 +3734,8 @@ ModalComponent.destructive = (0, import_react13.forwardRef)(function Destructive
3612
3734
  gap: theme2.styles.gap,
3613
3735
  marginTop: theme2.styles.space * 2,
3614
3736
  children: [
3615
- /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(Button_default.secondary, { text: "Cancel", onClick: onCancelElement }),
3616
- /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
3737
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(Button_default.secondary, { text: "Cancel", onClick: onCancelElement }),
3738
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
3617
3739
  Button_default.destructive,
3618
3740
  {
3619
3741
  icon: "trash",
@@ -3627,18 +3749,18 @@ ModalComponent.destructive = (0, import_react13.forwardRef)(function Destructive
3627
3749
  )
3628
3750
  ] });
3629
3751
  });
3630
- var Modal2 = (0, import_react13.memo)(ModalComponent);
3752
+ var Modal2 = (0, import_react14.memo)(ModalComponent);
3631
3753
  Modal2.confirmation = ModalComponent.confirmation;
3632
3754
  Modal2.destructive = ModalComponent.destructive;
3633
3755
  var Modal_default = Modal2;
3634
3756
 
3635
3757
  // src/components/PageHolder.tsx
3636
- var import_react14 = require("react");
3637
- var import_jsx_runtime12 = require("react/jsx-runtime");
3638
- var PageHolderComponent = (0, import_react14.forwardRef)(function PageHolder({ noMaxContentWidth, children, ...props }, ref) {
3758
+ var import_react15 = require("react");
3759
+ var import_jsx_runtime13 = require("react/jsx-runtime");
3760
+ var PageHolderComponent = (0, import_react15.forwardRef)(function PageHolder({ noMaxContentWidth, children, ...props }, ref) {
3639
3761
  const theme2 = useTheme();
3640
3762
  const { app } = useBetterHtmlContextInternal();
3641
- return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
3763
+ return /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
3642
3764
  Div_default,
3643
3765
  {
3644
3766
  as: "main",
@@ -3652,7 +3774,7 @@ var PageHolderComponent = (0, import_react14.forwardRef)(function PageHolder({ n
3652
3774
  }
3653
3775
  );
3654
3776
  });
3655
- PageHolderComponent.center = (0, import_react14.forwardRef)(function Center({
3777
+ PageHolderComponent.center = (0, import_react15.forwardRef)(function Center({
3656
3778
  pageBackgroundColor,
3657
3779
  pageBackgroundImage,
3658
3780
  contentMaxWidth,
@@ -3668,7 +3790,7 @@ PageHolderComponent.center = (0, import_react14.forwardRef)(function Center({
3668
3790
  const { app } = useBetterHtmlContextInternal();
3669
3791
  const breakingPoint = mediaQuery.size1000;
3670
3792
  const withSideComponent = sideComponent && !breakingPoint;
3671
- return /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(
3793
+ return /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(
3672
3794
  Div_default.row,
3673
3795
  {
3674
3796
  position: "relative",
@@ -3679,7 +3801,7 @@ PageHolderComponent.center = (0, import_react14.forwardRef)(function Center({
3679
3801
  backgroundColor: pageBackgroundColor,
3680
3802
  backgroundImage: pageBackgroundImage,
3681
3803
  children: [
3682
- behindComponent && /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
3804
+ behindComponent && /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
3683
3805
  Div_default,
3684
3806
  {
3685
3807
  position: "fixed",
@@ -3692,8 +3814,8 @@ PageHolderComponent.center = (0, import_react14.forwardRef)(function Center({
3692
3814
  children: behindComponent
3693
3815
  }
3694
3816
  ),
3695
- sideComponentPosition === "left" && withSideComponent && /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(Div_default, { width: "50%" }),
3696
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(Div_default.column, { position: "relative", width: `${withSideComponent ? 50 : 100}%`, alignItems: "center", zIndex: 2, children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
3817
+ sideComponentPosition === "left" && withSideComponent && /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Div_default, { width: "50%" }),
3818
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Div_default.column, { position: "relative", width: `${withSideComponent ? 50 : 100}%`, alignItems: "center", zIndex: 2, children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
3697
3819
  Div_default.box,
3698
3820
  {
3699
3821
  width: `calc(100% - ${theme2.styles.space * 2}px)`,
@@ -3705,8 +3827,8 @@ PageHolderComponent.center = (0, import_react14.forwardRef)(function Center({
3705
3827
  children
3706
3828
  }
3707
3829
  ) }),
3708
- sideComponentPosition === "right" && withSideComponent && /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(Div_default, { width: "50%" }),
3709
- withSideComponent && /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
3830
+ sideComponentPosition === "right" && withSideComponent && /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Div_default, { width: "50%" }),
3831
+ withSideComponent && /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
3710
3832
  Div_default,
3711
3833
  {
3712
3834
  position: "fixed",
@@ -3722,85 +3844,10 @@ PageHolderComponent.center = (0, import_react14.forwardRef)(function Center({
3722
3844
  }
3723
3845
  );
3724
3846
  });
3725
- var PageHolder2 = (0, import_react14.memo)(PageHolderComponent);
3847
+ var PageHolder2 = (0, import_react15.memo)(PageHolderComponent);
3726
3848
  PageHolder2.center = PageHolderComponent.center;
3727
3849
  var PageHolder_default = PageHolder2;
3728
3850
 
3729
- // src/components/PageHeader.tsx
3730
- var import_react15 = require("react");
3731
- var import_jsx_runtime13 = require("react/jsx-runtime");
3732
- var PageHeaderComponent = (0, import_react15.forwardRef)(function PageHeader({
3733
- imageUrl,
3734
- imageSize = 60,
3735
- title,
3736
- titleAs,
3737
- titleRightElement,
3738
- description,
3739
- textAlign,
3740
- rightElement,
3741
- lightMode,
3742
- marginBottom
3743
- }, ref) {
3744
- const theme2 = useTheme();
3745
- const { app } = useBetterHtmlContextInternal();
3746
- const mediaQuery = useMediaQuery();
3747
- return /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(
3748
- Div_default.row,
3749
- {
3750
- alignItems: "center",
3751
- gap: theme2.styles.space,
3752
- marginBottom: marginBottom ?? theme2.styles.space * 2,
3753
- ref,
3754
- children: [
3755
- imageUrl && /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Image_default.profileImage, { src: imageUrl, size: imageSize ?? (mediaQuery.size600 ? 46 : 60) }),
3756
- /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(
3757
- Div_default.column,
3758
- {
3759
- alignItems: textAlign === "center" ? "center" : textAlign === "right" ? "flex-end" : void 0,
3760
- flex: 1,
3761
- gap: theme2.styles.gap / 2,
3762
- children: [
3763
- /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(
3764
- Div_default.row,
3765
- {
3766
- alignItems: "center",
3767
- justifyContent: textAlign === "center" ? "center" : textAlign === "right" ? "flex-end" : void 0,
3768
- gap: theme2.styles.space,
3769
- children: [
3770
- /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
3771
- Text_default,
3772
- {
3773
- as: titleAs ?? "h1",
3774
- textAlign,
3775
- color: lightMode ? theme2.colors.base : theme2.colors.textPrimary,
3776
- children: title
3777
- }
3778
- ),
3779
- titleRightElement
3780
- ]
3781
- }
3782
- ),
3783
- description && /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
3784
- Text_default,
3785
- {
3786
- maxWidth: !mediaQuery.size600 ? app.contentMaxWidth * 0.6 : void 0,
3787
- textAlign,
3788
- color: lightMode ? theme2.colors.base : theme2.colors.textSecondary,
3789
- opacity: lightMode ? 0.7 : void 0,
3790
- children: description
3791
- }
3792
- )
3793
- ]
3794
- }
3795
- ),
3796
- rightElement
3797
- ]
3798
- }
3799
- );
3800
- });
3801
- var PageHeader2 = (0, import_react15.memo)(PageHeaderComponent);
3802
- var PageHeader_default = PageHeader2;
3803
-
3804
3851
  // src/components/Chip.tsx
3805
3852
  var import_react16 = require("react");
3806
3853
 
@@ -5501,6 +5548,11 @@ var colorThemeControls = {
5501
5548
  }, 0.01 * 1e3);
5502
5549
  }
5503
5550
  };
5551
+ var filterHover = {
5552
+ z1: externalBetterHtmlContextValue?.colorTheme === "dark" ? "brightness(1.1)" : "brightness(0.9)",
5553
+ z2: externalBetterHtmlContextValue?.colorTheme === "dark" ? "brightness(1.2)" : "brightness(0.8)",
5554
+ z3: externalBetterHtmlContextValue?.colorTheme === "dark" ? "brightness(1.3)" : "brightness(0.7)"
5555
+ };
5504
5556
 
5505
5557
  // src/utils/functions.ts
5506
5558
  var generateRandomString = (stringLength, options) => {
@@ -9276,6 +9328,7 @@ function generateLocalStorage() {
9276
9328
  eventPreventDefault,
9277
9329
  eventPreventStop,
9278
9330
  eventStopPropagation,
9331
+ filterHover,
9279
9332
  formatPhoneNumber,
9280
9333
  generateLocalStorage,
9281
9334
  generateRandomString,