@solostylist/ui-kit 1.0.228 → 1.0.229

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 (61) hide show
  1. package/dist/{FormControl-BbzvApma.js → FormControl-DsRIRfTs.js} +204 -177
  2. package/dist/{MenuItem-CwAhn4sd.js → MenuItem-IOMcBScJ.js} +2 -2
  3. package/dist/{MenuList-5C2nFAWS.js → MenuList-vtqACjea.js} +1 -1
  4. package/dist/{Modal-Cu5Cgh-q.js → Modal-CLdC2-Th.js} +372 -395
  5. package/dist/Popover-ZneFWo2r.js +333 -0
  6. package/dist/{checkbox-B5GlJYcB.js → checkbox-DC-OoGvh.js} +1 -1
  7. package/dist/s-chat-message/index.js +1 -1
  8. package/dist/s-chat-message/s-chat-message.js +1 -1
  9. package/dist/{s-chat-message-B9JOBvzP.js → s-chat-message-C-d9amiC.js} +2 -2
  10. package/dist/s-code-block/index.js +1 -1
  11. package/dist/s-code-block/s-code-block.js +1 -1
  12. package/dist/{s-code-block-B5k-1Acd.js → s-code-block-DEojINTt.js} +16 -11
  13. package/dist/s-comment-message/index.js +1 -1
  14. package/dist/s-comment-message/s-comment-message.js +1 -1
  15. package/dist/{s-comment-message-BPE5a6p6.js → s-comment-message-Dum0P6de.js} +2 -2
  16. package/dist/s-data-table/index.js +1 -1
  17. package/dist/s-data-table/s-data-table.d.ts +1 -5
  18. package/dist/s-data-table/s-data-table.js +1 -1
  19. package/dist/{s-data-table-D-esZw_W.js → s-data-table-DfGYIIvn.js} +202 -172
  20. package/dist/s-date-picker/index.js +1 -1
  21. package/dist/s-date-picker/picker-action-bar.d.ts +3 -7
  22. package/dist/s-date-picker/picker-action-bar.js +33 -19
  23. package/dist/s-date-picker/s-date-picker.js +1 -1
  24. package/dist/{s-date-picker-CdH1pta6.js → s-date-picker-C06rlE6_.js} +1 -1
  25. package/dist/s-datetime-picker/index.js +1 -1
  26. package/dist/s-datetime-picker/s-datetime-picker.js +1 -1
  27. package/dist/{s-datetime-picker-BHkWSJKj.js → s-datetime-picker-DnIK-QnQ.js} +24 -24
  28. package/dist/s-error-layout/s-error-layout.d.ts +2 -2
  29. package/dist/s-error-layout/s-error-layout.js +1 -1
  30. package/dist/s-language-switcher/index.js +1 -1
  31. package/dist/s-language-switcher/s-language-switcher.d.ts +2 -5
  32. package/dist/s-language-switcher/s-language-switcher.js +1 -1
  33. package/dist/s-language-switcher-B96dUknj.js +192 -0
  34. package/dist/s-link/s-link.d.ts +2 -2
  35. package/dist/s-link/s-link.js +8 -5
  36. package/dist/s-moving-border/s-moving-border.d.ts +6 -9
  37. package/dist/s-moving-border/s-moving-border.js +73 -81
  38. package/dist/s-pagination/s-pagination.js +2 -2
  39. package/dist/s-review/index.js +1 -1
  40. package/dist/s-review/s-review.js +1 -1
  41. package/dist/{s-review-CRnakHRo.js → s-review-CvTVBxTZ.js} +3 -3
  42. package/dist/s-skeleton/index.d.ts +1 -1
  43. package/dist/s-skeleton/s-skeleton.d.ts +25 -9
  44. package/dist/s-skeleton/s-skeleton.js +59 -63
  45. package/dist/s-text-editor/index.js +1 -1
  46. package/dist/s-text-editor/s-text-editor-toolbar.js +1 -1
  47. package/dist/s-text-editor/s-text-editor.js +1 -1
  48. package/dist/{s-text-editor-toolbar-BEFVwZ-B.js → s-text-editor-toolbar-ChtNCg2A.js} +900 -736
  49. package/dist/s-theme-demo/index.js +1 -1
  50. package/dist/s-theme-demo/s-theme-demo.js +1 -1
  51. package/dist/s-theme-demo-Bnv7lPIh.js +867 -0
  52. package/dist/theme/components/checkbox.d.ts +0 -9
  53. package/dist/theme/components/checkbox.js +1 -1
  54. package/dist/theme/components/components.js +1 -1
  55. package/dist/theme/components/pickers-calendar-header.d.ts +14 -1
  56. package/dist/theme/components/pickers-calendar-header.js +5 -2
  57. package/dist/{useMobilePicker-Dw1IxoE6.js → useMobilePicker-CQA6fYLQ.js} +384 -384
  58. package/package.json +1 -1
  59. package/dist/Menu-Ct_sL_Dg.js +0 -497
  60. package/dist/s-language-switcher-UgSBC_n_.js +0 -199
  61. package/dist/s-theme-demo-Fktc-UlY.js +0 -857
@@ -1,2 +1,2 @@
1
- import { t as e } from "../s-date-picker-CdH1pta6.js";
1
+ import { t as e } from "../s-date-picker-C06rlE6_.js";
2
2
  export { e as SDatePicker, e as default };
@@ -1,12 +1,8 @@
1
1
  import { PickersActionBarProps } from '@mui/x-date-pickers/PickersActionBar';
2
2
  import * as React from 'react';
3
3
  /**
4
- * Action bar shared by SDatePicker and SDateTimePicker.
5
- *
6
- * MUI ships both footer buttons as contained (twin filled buttons). This mirrors
7
- * the project's dialog footer convention instead — outlined Cancel + contained
8
- * confirm (see SDialogConfirm). It renders a plain DialogActions, so spacing and
9
- * padding stay in sync with SDialog via the MuiDialogActions theme override.
4
+ * Shared action bar for SDatePicker and SDateTimePicker.
5
+ * Mirrors SDialogConfirm styling (outlined Cancel + contained Confirm) with compact spacing.
10
6
  */
11
- export declare const PickerActionBar: ({ actions, ...other }: PickersActionBarProps) => React.JSX.Element | null;
7
+ export declare const PickerActionBar: ({ actions, disableSpacing, sx, ...other }: PickersActionBarProps) => React.JSX.Element | null;
12
8
  export default PickerActionBar;
@@ -3,45 +3,59 @@ import { jsx as e } from "react/jsx-runtime";
3
3
  import { Button as t, DialogActions as n } from "@mui/material";
4
4
  import { usePickerContext as r, usePickerTranslations as i } from "@mui/x-date-pickers";
5
5
  //#region lib/s-date-picker/picker-action-bar.tsx
6
- var a = ({ actions: a, ...o }) => {
7
- let s = i(), { clearValue: c, setValueToToday: l, acceptValueChanges: u, cancelValueChanges: d, goToNextStep: f, hasNextStep: p } = r();
8
- return !a || a.length === 0 ? null : /* @__PURE__ */ e(n, {
9
- ...o,
6
+ var a = ({ actions: a, disableSpacing: o, sx: s, ...c }) => {
7
+ let l = i(), { clearValue: u, setValueToToday: d, acceptValueChanges: f, cancelValueChanges: p, goToNextStep: m, hasNextStep: h } = r();
8
+ if (!a || a.length === 0) return null;
9
+ let g = o ?? !0;
10
+ return /* @__PURE__ */ e(n, {
11
+ ...c,
12
+ disableSpacing: g,
13
+ sx: [{
14
+ p: 1.5,
15
+ gap: g ? 1 : void 0
16
+ }, ...Array.isArray(s) ? s : s ? [s] : []],
10
17
  children: a.map((n) => {
11
18
  switch (n) {
12
19
  case "clear": return /* @__PURE__ */ e(t, {
13
20
  variant: "text",
14
- onClick: c,
15
- children: s.clearButtonLabel
21
+ size: "small",
22
+ onClick: u,
23
+ children: l.clearButtonLabel
16
24
  }, n);
17
25
  case "today": return /* @__PURE__ */ e(t, {
18
26
  variant: "text",
19
- onClick: l,
20
- children: s.todayButtonLabel
27
+ size: "small",
28
+ onClick: d,
29
+ children: l.todayButtonLabel
21
30
  }, n);
22
31
  case "cancel": return /* @__PURE__ */ e(t, {
23
32
  variant: "outlined",
24
- onClick: d,
25
- children: s.cancelButtonLabel
33
+ size: "small",
34
+ onClick: p,
35
+ children: l.cancelButtonLabel
26
36
  }, n);
27
37
  case "next": return /* @__PURE__ */ e(t, {
28
38
  variant: "contained",
29
- onClick: f,
30
- children: s.nextStepButtonLabel
39
+ size: "small",
40
+ onClick: m,
41
+ children: l.nextStepButtonLabel
31
42
  }, n);
32
- case "nextOrAccept": return p ? /* @__PURE__ */ e(t, {
43
+ case "nextOrAccept": return h ? /* @__PURE__ */ e(t, {
33
44
  variant: "contained",
34
- onClick: f,
35
- children: s.nextStepButtonLabel
45
+ size: "small",
46
+ onClick: m,
47
+ children: l.nextStepButtonLabel
36
48
  }, n) : /* @__PURE__ */ e(t, {
37
49
  variant: "contained",
38
- onClick: u,
39
- children: s.okButtonLabel
50
+ size: "small",
51
+ onClick: f,
52
+ children: l.okButtonLabel
40
53
  }, n);
41
54
  case "accept": return /* @__PURE__ */ e(t, {
42
55
  variant: "contained",
43
- onClick: u,
44
- children: s.okButtonLabel
56
+ size: "small",
57
+ onClick: f,
58
+ children: l.okButtonLabel
45
59
  }, n);
46
60
  default: return null;
47
61
  }
@@ -1,2 +1,2 @@
1
- import { t as e } from "../s-date-picker-CdH1pta6.js";
1
+ import { t as e } from "../s-date-picker-C06rlE6_.js";
2
2
  export { e as SDatePicker, e as default };
@@ -6,7 +6,7 @@ import { t as i } from "./clsx-Bv8WXdlr.js";
6
6
  import { t as a } from "./generateUtilityClass-tRYNDrlH.js";
7
7
  import { t as o } from "./generateUtilityClasses-XrPHiTcM.js";
8
8
  import { t as s } from "./styled-BTDmdi4c.js";
9
- import { $ as c, A as l, C as u, D as d, I as f, M as p, N as m, X as h, Y as g, _, b as v, j as y, k as b, m as x, n as S, p as C, s as w, t as T, tt as E, v as ee, w as te, y as ne } from "./useMobilePicker-Dw1IxoE6.js";
9
+ import { $ as c, A as l, C as u, D as d, I as f, M as p, N as m, X as h, Y as g, _, b as v, j as y, k as b, m as x, n as S, p as C, s as w, t as T, tt as E, v as ee, w as te, y as ne } from "./useMobilePicker-CQA6fYLQ.js";
10
10
  import { a as D } from "./warning-CFMmJJnf.js";
11
11
  import { t as O } from "./objectWithoutPropertiesLoose-kj3TmhoA.js";
12
12
  import { t as k } from "./extends-DM-C9PwL.js";
@@ -1,2 +1,2 @@
1
- import { t as e } from "../s-datetime-picker-BHkWSJKj.js";
1
+ import { t as e } from "../s-datetime-picker-DnIK-QnQ.js";
2
2
  export { e as SDateTimePicker, e as default };
@@ -1,2 +1,2 @@
1
- import { t as e } from "../s-datetime-picker-BHkWSJKj.js";
1
+ import { t as e } from "../s-datetime-picker-DnIK-QnQ.js";
2
2
  export { e as SDateTimePicker, e as default };
@@ -7,9 +7,9 @@ import { t as u } from "./generateUtilityClass-tRYNDrlH.js";
7
7
  import { t as d } from "./generateUtilityClasses-XrPHiTcM.js";
8
8
  import { a as f, t as p } from "./styled-BTDmdi4c.js";
9
9
  import { t as m } from "./useEnhancedEffect-Dsu5K7-Z.js";
10
- import { $ as h, B as g, C as _, D as v, E as y, F as b, G as x, H as S, I as C, J as w, K as T, L as E, M as D, N as O, O as k, P as A, Q as ee, R as j, S as M, T as N, U as P, V as F, W as te, X as ne, Y as re, Z as ie, _ as I, a as L, b as ae, c as R, d as oe, et as se, f as z, g as ce, h as B, i as le, j as ue, l as V, m as de, n as H, o as U, p as W, q as G, r as fe, s as K, t as pe, tt as me, u as he, v as ge, w as _e, x as ve, y as ye, z as be } from "./useMobilePicker-Dw1IxoE6.js";
11
- import { C as xe, S as Se, c as Ce, f as we, x as Te, y as Ee } from "./Modal-Cu5Cgh-q.js";
12
- import { a as De } from "./FormControl-BbzvApma.js";
10
+ import { $ as h, B as g, C as _, D as v, E as y, F as b, G as x, H as S, I as C, J as w, K as T, L as E, M as D, N as O, O as k, P as A, Q as ee, R as j, S as M, T as N, U as P, V as F, W as te, X as ne, Y as re, Z as ie, _ as I, a as L, b as ae, c as R, d as oe, et as se, f as z, g as ce, h as B, i as le, j as ue, l as V, m as de, n as H, o as U, p as W, q as G, r as fe, s as K, t as pe, tt as me, u as he, v as ge, w as _e, x as ve, y as ye, z as be } from "./useMobilePicker-CQA6fYLQ.js";
11
+ import { c as xe, f as Se, x as Ce, y as we } from "./Modal-CLdC2-Th.js";
12
+ import { a as Te, c as Ee, s as De } from "./FormControl-DsRIRfTs.js";
13
13
  import { a as q, i as Oe } from "./warning-CFMmJJnf.js";
14
14
  import { t as J } from "./objectWithoutPropertiesLoose-kj3TmhoA.js";
15
15
  import { t as Y } from "./extends-DM-C9PwL.js";
@@ -17,11 +17,11 @@ import { n as ke, t as Ae } from "./useForkRef-yOYCJHzF.js";
17
17
  import { a as je, i as Me, r as Ne, t as Pe } from "./ButtonBase-BDefit5I.js";
18
18
  import { c as Fe, t as Ie } from "./useSlot-IwEDsR9t.js";
19
19
  import { t as Le } from "./createSvgIcon-HW-tbFcL.js";
20
- import { c as Re, d as ze, f as Be, l as Ve, o as He, p as Ue, s as We, t as Ge, u as Ke } from "./MenuList-5C2nFAWS.js";
20
+ import { c as Re, d as ze, f as Be, l as Ve, o as He, p as Ue, s as We, t as Ge, u as Ke } from "./MenuList-vtqACjea.js";
21
21
  import { n as qe, t as Je } from "./tabClasses-CmFw6sbs.js";
22
22
  import { t as Ye } from "./Typography-CZ_MYa-E.js";
23
23
  import { SForm as Xe } from "./s-form/s-form.js";
24
- import { n as Ze, t as Qe } from "./MenuItem-CwAhn4sd.js";
24
+ import { n as Ze, t as Qe } from "./MenuItem-IOMcBScJ.js";
25
25
  import { PickerActionBar as $e } from "./s-date-picker/picker-action-bar.js";
26
26
  import * as X from "react";
27
27
  import { forwardRef as et } from "react";
@@ -740,15 +740,15 @@ var Et = d("MuiTabScrollButton", [
740
740
  let n = s({
741
741
  props: e,
742
742
  name: "MuiTabScrollButton"
743
- }), { className: r, slots: i = {}, slotProps: a = {}, direction: o, orientation: c, disabled: u, ...d } = n, { nativeButton: f, ...p } = d, m = xe(), h = {
743
+ }), { className: r, slots: i = {}, slotProps: a = {}, direction: o, orientation: c, disabled: u, ...d } = n, { nativeButton: f, ...p } = d, m = Ee(), h = {
744
744
  isRtl: m,
745
745
  ...n
746
- }, g = Dt(h), _ = i.StartScrollButtonIcon ?? Ct, v = i.EndScrollButtonIcon ?? wt, y = Te({
746
+ }, g = Dt(h), _ = i.StartScrollButtonIcon ?? Ct, v = i.EndScrollButtonIcon ?? wt, y = De({
747
747
  elementType: _,
748
748
  externalSlotProps: a.startScrollButtonIcon,
749
749
  additionalProps: { fontSize: "small" },
750
750
  ownerState: h
751
- }), b = Te({
751
+ }), b = De({
752
752
  elementType: v,
753
753
  externalSlotProps: a.endScrollButtonIcon,
754
754
  additionalProps: { fontSize: "small" },
@@ -958,7 +958,7 @@ var jt = d("MuiTabs", [
958
958
  let n = s({
959
959
  props: e,
960
960
  name: "MuiTabs"
961
- }), r = i(), a = xe(), { "aria-label": o, "aria-labelledby": c, action: u, centered: d = !1, children: f, className: p, component: m = "div", allowScrollButtonsMobile: h = !1, indicatorColor: g = "primary", onChange: _, orientation: v = "horizontal", scrollButtons: y = "auto", selectionFollowsFocus: b, slots: x = {}, slotProps: S = {}, textColor: C = "primary", value: w, variant: T = "standard", visibleScrollbar: E = !1, ...D } = n, O = T === "scrollable", k = v === "vertical", A = k ? "scrollTop" : "scrollLeft", ee = k ? "top" : "left", j = k ? "bottom" : "right", M = k ? "clientHeight" : "clientWidth", N = k ? "height" : "width", P = {
961
+ }), r = i(), a = Ee(), { "aria-label": o, "aria-labelledby": c, action: u, centered: d = !1, children: f, className: p, component: m = "div", allowScrollButtonsMobile: h = !1, indicatorColor: g = "primary", onChange: _, orientation: v = "horizontal", scrollButtons: y = "auto", selectionFollowsFocus: b, slots: x = {}, slotProps: S = {}, textColor: C = "primary", value: w, variant: T = "standard", visibleScrollbar: E = !1, ...D } = n, O = T === "scrollable", k = v === "vertical", A = k ? "scrollTop" : "scrollLeft", ee = k ? "top" : "left", j = k ? "bottom" : "right", M = k ? "clientHeight" : "clientWidth", N = k ? "height" : "width", P = {
962
962
  ...n,
963
963
  component: m,
964
964
  allowScrollButtonsMobile: h,
@@ -975,11 +975,11 @@ var jt = d("MuiTabs", [
975
975
  scrollableY: O && k,
976
976
  centered: d && !O,
977
977
  scrollButtonsHideMobile: !h
978
- }, F = Mt(P), te = Te({
978
+ }, F = Mt(P), te = De({
979
979
  elementType: x.startScrollButtonIcon,
980
980
  externalSlotProps: S.startScrollButtonIcon,
981
981
  ownerState: P
982
- }), ne = Te({
982
+ }), ne = De({
983
983
  elementType: x.endScrollButtonIcon,
984
984
  externalSlotProps: S.endScrollButtonIcon,
985
985
  ownerState: P
@@ -1015,7 +1015,7 @@ var jt = d("MuiTabs", [
1015
1015
  "MUI: The `value` provided to the Tabs component is invalid.",
1016
1016
  `None of the Tabs' children match with "${w}".`,
1017
1017
  H.keys ? `You can provide one of the following values: ${Array.from(H.keys()).join(", ")}.` : null
1018
- ].join("\n"))), n = r ? r.getBoundingClientRect() : null, process.env.NODE_ENV !== "production" && Ce() && !zt && n && n.width === 0 && n.height === 0 && t.clientWidth !== 0 && (t = null, console.error([
1018
+ ].join("\n"))), n = r ? r.getBoundingClientRect() : null, process.env.NODE_ENV !== "production" && xe() && !zt && n && n.width === 0 && n.height === 0 && t.clientWidth !== 0 && (t = null, console.error([
1019
1019
  "MUI: The `value` provided to the Tabs component is invalid.",
1020
1020
  `The Tab with this \`value\` ("${w}") is not part of the document layout.`,
1021
1021
  "Make sure the tab item is present in the document or that it's not `display: none`."
@@ -1064,12 +1064,12 @@ var jt = d("MuiTabs", [
1064
1064
  shouldForwardComponentProp: !0,
1065
1065
  externalForwardedProps: G,
1066
1066
  ownerState: P
1067
- }), Se = X.useCallback((e) => {
1067
+ }), Ce = X.useCallback((e) => {
1068
1068
  ye?.(e), de({
1069
1069
  overflow: null,
1070
1070
  scrollbarWidth: e
1071
1071
  });
1072
- }, [ye]), [De, q] = Ie("scrollButtons", {
1072
+ }, [ye]), [Te, q] = Ie("scrollButtons", {
1073
1073
  className: F.scrollButtons,
1074
1074
  elementType: kt,
1075
1075
  externalForwardedProps: G,
@@ -1089,15 +1089,15 @@ var jt = d("MuiTabs", [
1089
1089
  let e = {};
1090
1090
  e.scrollbarSizeListener = O ? /* @__PURE__ */ Z(ve, {
1091
1091
  ...be,
1092
- onChange: Se
1092
+ onChange: Ce
1093
1093
  }) : null;
1094
1094
  let t = O && (y === "auto" && (ae || oe) || y === !0);
1095
- return e.scrollButtonStart = t ? /* @__PURE__ */ Z(De, {
1095
+ return e.scrollButtonStart = t ? /* @__PURE__ */ Z(Te, {
1096
1096
  direction: a ? "right" : "left",
1097
1097
  onClick: ge,
1098
1098
  disabled: !ae,
1099
1099
  ...q
1100
- }) : null, e.scrollButtonEnd = t ? /* @__PURE__ */ Z(De, {
1100
+ }) : null, e.scrollButtonEnd = t ? /* @__PURE__ */ Z(Te, {
1101
1101
  direction: a ? "left" : "right",
1102
1102
  onClick: _e,
1103
1103
  disabled: !oe,
@@ -1210,7 +1210,7 @@ var jt = d("MuiTabs", [
1210
1210
  } }
1211
1211
  }), Je = Ae(Fe.ref, W), Ye = (e) => {
1212
1212
  let t = W.current;
1213
- Ee(Be(t))?.getAttribute("role") === "tab" && Fe.onKeyDown(e);
1213
+ we(Be(t))?.getAttribute("role") === "tab" && Fe.onKeyDown(e);
1214
1214
  }, [Xe, Ze] = Ie("list", {
1215
1215
  ref: Je,
1216
1216
  className: F.list,
@@ -1220,7 +1220,7 @@ var jt = d("MuiTabs", [
1220
1220
  getSlotProps: (e) => ({
1221
1221
  ...e,
1222
1222
  onBlur: (t) => {
1223
- we(t.currentTarget, t.relatedTarget) || ue(!1), e.onBlur?.(t);
1223
+ Se(t.currentTarget, t.relatedTarget) || ue(!1), e.onBlur?.(t);
1224
1224
  },
1225
1225
  onKeyDown: (t) => {
1226
1226
  Ye(t), e.onKeyDown?.(t);
@@ -1998,13 +1998,13 @@ var Rn = (e, t) => o({
1998
1998
  "&:hover": { backgroundColor: (e.vars || e).palette.primary.light }
1999
1999
  }
2000
2000
  }]
2001
- }), Gn = p(De, {
2001
+ }), Gn = p(Te, {
2002
2002
  name: "MuiClock",
2003
2003
  slot: "AmButton"
2004
2004
  })(({ theme: e }) => Y({}, Wn(e, "am"), {
2005
2005
  position: "absolute",
2006
2006
  left: 8
2007
- })), Kn = p(De, {
2007
+ })), Kn = p(Te, {
2008
2008
  name: "MuiClock",
2009
2009
  slot: "PmButton"
2010
2010
  })(({ theme: e }) => Y({}, Wn(e, "pm"), {
@@ -2292,7 +2292,7 @@ var tr = ({ ampm: e, value: t, getClockNumberText: n, isDisabled: r, selectedId:
2292
2292
  adapter: n,
2293
2293
  props: r,
2294
2294
  timezone: I
2295
- }), ae = ue(), R = ee(I), z = Se(), { ownerState: ce } = se(), { view: B, setView: le, previousView: V, nextView: de, setValueAndGoToNextView: H } = he({
2295
+ }), ae = ue(), R = ee(I), z = Ce(), { ownerState: ce } = se(), { view: B, setView: le, previousView: V, nextView: de, setValueAndGoToNextView: H } = he({
2296
2296
  view: T,
2297
2297
  views: E,
2298
2298
  openTo: D,
@@ -2565,7 +2565,7 @@ var dr = d("MuiDigitalClock", [
2565
2565
  referenceDate: y,
2566
2566
  onChange: O,
2567
2567
  valueManager: C
2568
- }), B = ue(), le = ee(ce), { ownerState: V } = se(), de = Y({}, V, { hasDigitalClockAlreadyBeenRendered: !!r.current }), H = pr(ne), U = f?.digitalClockItem ?? gr, W = Te({
2568
+ }), B = ue(), le = ee(ce), { ownerState: V } = se(), de = Y({}, V, { hasDigitalClockAlreadyBeenRendered: !!r.current }), H = pr(ne), U = f?.digitalClockItem ?? gr, W = De({
2569
2569
  elementType: U,
2570
2570
  externalSlotProps: p?.digitalClockItem,
2571
2571
  ownerState: de,
@@ -2862,7 +2862,7 @@ var Dr = ({ now: e, value: t, adapter: n, ampm: r, isDisabled: i, resolveAriaLab
2862
2862
  width: "100%",
2863
2863
  borderBottom: `1px solid ${(e.vars || e).palette.divider}`
2864
2864
  })), Mr = /* @__PURE__ */ X.forwardRef(function(e, t) {
2865
- let n = h(), r = xe(), i = q({
2865
+ let n = h(), r = Ee(), i = q({
2866
2866
  props: e,
2867
2867
  name: "MuiMultiSectionDigitalClock"
2868
2868
  }), { ampm: a = n.is12HourCycleInCurrentLocale(), timeSteps: o, autoFocus: s, slots: c, slotProps: u, value: d, defaultValue: f, referenceDate: p, disableIgnoringDatePartForTimeValidation: m = !1, maxTime: _, minTime: v, disableFuture: y, disablePast: b, minutesStep: x = 1, shouldDisableTime: S, onChange: w, view: E, views: D = ["hours", "minutes"], openTo: O, onViewChange: k, focusedView: j, onFocusedViewChange: M, className: N, classes: P, disabled: F, readOnly: te, skipDisabled: ne = !1, timezone: re } = i, ie = J(i, kr), { value: I, handleValueChange: L, timezone: ae } = A({
@@ -16,13 +16,13 @@ export interface SErrorLayoutProps {
16
16
  imageWidth?: string | number;
17
17
  /** Image height. Default: 'auto' */
18
18
  imageHeight?: string | number;
19
- /** Container max width. Default: 'lg' */
19
+ /** Container max width. Default: 'sm' */
20
20
  maxWidth?: 'xs' | 'sm' | 'md' | 'lg' | 'xl' | false;
21
21
  /** Main container minimum height. Default: '100dvh' */
22
22
  height?: string | number;
23
23
  /** Vertical padding. Default: 8 (64px) */
24
24
  py?: number | string;
25
- /** Spacing between elements. Default: 6 */
25
+ /** Spacing between elements. Default: 4 (32px) */
26
26
  spacing?: number;
27
27
  /** Title typography variant. Default: 'h4' */
28
28
  titleVariant?: TypographyProps['variant'];
@@ -3,7 +3,7 @@ import "react";
3
3
  import { jsx as t, jsxs as n } from "react/jsx-runtime";
4
4
  import { Box as r, Button as i, Container as a, Stack as o, Typography as s } from "@mui/material";
5
5
  //#region lib/s-error-layout/s-error-layout.tsx
6
- var c = ({ imageSrc: c, imageAlt: l, title: u, description: d, buttonText: f, imageWidth: p = "200px", imageHeight: m = "auto", maxWidth: h = "lg", height: g = "100dvh", py: _ = 8, spacing: v = 6, titleVariant: y = "h4", descriptionVariant: b = "body1", buttonVariant: x = "contained", buttonColor: S = "primary", containerSx: C, imageContainerSx: w, contentSx: T, titleSx: E, descriptionSx: D, buttonContainerSx: O, buttonProps: k, hideImage: A = !1, customActions: j }) => {
6
+ var c = ({ imageSrc: c, imageAlt: l, title: u, description: d, buttonText: f, imageWidth: p = "200px", imageHeight: m = "auto", maxWidth: h = "sm", height: g = "100dvh", py: _ = 8, spacing: v = 4, titleVariant: y = "h4", descriptionVariant: b = "body1", buttonVariant: x = "contained", buttonColor: S = "primary", containerSx: C, imageContainerSx: w, contentSx: T, titleSx: E, descriptionSx: D, buttonContainerSx: O, buttonProps: k, hideImage: A = !1, customActions: j }) => {
7
7
  let M = j ? /* @__PURE__ */ t(r, {
8
8
  sx: {
9
9
  display: "flex",
@@ -1,2 +1,2 @@
1
- import { n as e, r as t, t as n } from "../s-language-switcher-UgSBC_n_.js";
1
+ import { n as e, r as t, t as n } from "../s-language-switcher-B96dUknj.js";
2
2
  export { n as SLanguagePopover, e as SLanguageSwitcher, e as default, t as defaultLanguageOptions };
@@ -15,9 +15,8 @@ export interface SLanguagePopoverProps {
15
15
  languages?: SLanguageOption[];
16
16
  currentLanguage?: string;
17
17
  menuWidth?: string | number;
18
- flagSize?: number;
19
18
  }
20
- export declare const SLanguagePopover: ({ anchorEl, onClose, open, onLanguageChange, languages, currentLanguage, menuWidth, flagSize, }: SLanguagePopoverProps) => React.JSX.Element;
19
+ export declare const SLanguagePopover: ({ anchorEl, onClose, open, onLanguageChange, languages, currentLanguage, menuWidth, }: SLanguagePopoverProps) => React.JSX.Element;
21
20
  /**
22
21
  * Props interface for SLanguageSwitcher component
23
22
  */
@@ -32,8 +31,6 @@ export interface SLanguageSwitcherProps {
32
31
  tooltipText?: string;
33
32
  /** Size of the flag icon in the button */
34
33
  buttonFlagSize?: number;
35
- /** Size of the flag icon in the menu */
36
- menuFlagSize?: number;
37
34
  /** Width of the language menu */
38
35
  menuWidth?: string | number;
39
36
  /** Custom styles for the icon button */
@@ -42,7 +39,7 @@ export interface SLanguageSwitcherProps {
42
39
  useI18n?: boolean;
43
40
  }
44
41
  export declare const SLanguageSwitcher: {
45
- ({ languages, onLanguageChange, currentLanguage, tooltipText, buttonFlagSize, menuFlagSize, menuWidth, sx, useI18n, }: SLanguageSwitcherProps): React.JSX.Element;
42
+ ({ languages, onLanguageChange, currentLanguage, tooltipText, buttonFlagSize, menuWidth, sx, useI18n, }: SLanguageSwitcherProps): React.JSX.Element;
46
43
  displayName: string;
47
44
  };
48
45
  export default SLanguageSwitcher;
@@ -1,2 +1,2 @@
1
- import { n as e, r as t, t as n } from "../s-language-switcher-UgSBC_n_.js";
1
+ import { n as e, r as t, t as n } from "../s-language-switcher-B96dUknj.js";
2
2
  export { n as SLanguagePopover, e as SLanguageSwitcher, e as default, t as defaultLanguageOptions };
@@ -0,0 +1,192 @@
1
+ import { n as e } from "./chunk-C_CI6nMA.js";
2
+ import { _ as t } from "./createTheme-Bnw5w28O.js";
3
+ import { o as n, r, t as i } from "./memoTheme-QMocAblm.js";
4
+ import { t as a } from "./clsx-Bv8WXdlr.js";
5
+ import { t as o } from "./styled-BTDmdi4c.js";
6
+ import { u as s } from "./Modal-CLdC2-Th.js";
7
+ import { t as c } from "./MenuList-vtqACjea.js";
8
+ import { t as l } from "./Popover-ZneFWo2r.js";
9
+ import { t as u } from "./Typography-CZ_MYa-E.js";
10
+ import { SIconButton as d } from "./s-icon-button/s-icon-button.js";
11
+ import { r as f, t as p } from "./MenuItem-IOMcBScJ.js";
12
+ import * as m from "react";
13
+ import h, { createElement as g } from "react";
14
+ import { jsx as _, jsxs as v } from "react/jsx-runtime";
15
+ import { useTranslation as y } from "react-i18next";
16
+ //#region ../../node_modules/@mui/material/ListItemIcon/ListItemIcon.mjs
17
+ var b = /* @__PURE__ */ e(t(), 1), x = (e) => {
18
+ let { alignItems: t, classes: r } = e;
19
+ return n({ root: ["root", t === "flex-start" && "alignItemsFlexStart"] }, f, r);
20
+ }, S = o("div", {
21
+ name: "MuiListItemIcon",
22
+ slot: "Root",
23
+ overridesResolver: (e, t) => {
24
+ let { ownerState: n } = e;
25
+ return [t.root, n.alignItems === "flex-start" && t.alignItemsFlexStart];
26
+ }
27
+ })(i(({ theme: e }) => ({
28
+ minWidth: e.spacing(4.5),
29
+ color: (e.vars || e).palette.action.active,
30
+ flexShrink: 0,
31
+ display: "inline-flex",
32
+ variants: [{
33
+ props: { alignItems: "flex-start" },
34
+ style: { marginTop: 8 }
35
+ }]
36
+ }))), C = /* @__PURE__ */ m.forwardRef(function(e, t) {
37
+ let n = r({
38
+ props: e,
39
+ name: "MuiListItemIcon"
40
+ }), { className: i, ...o } = n, c = m.useContext(s), l = {
41
+ ...n,
42
+ alignItems: c.alignItems
43
+ };
44
+ return /* @__PURE__ */ _(S, {
45
+ className: a(x(l).root, i),
46
+ ownerState: l,
47
+ ref: t,
48
+ ...o
49
+ });
50
+ });
51
+ process.env.NODE_ENV !== "production" && (C.propTypes = {
52
+ children: b.default.node,
53
+ classes: b.default.object,
54
+ className: b.default.string,
55
+ sx: b.default.oneOfType([
56
+ b.default.arrayOf(b.default.oneOfType([
57
+ b.default.func,
58
+ b.default.object,
59
+ b.default.bool
60
+ ])),
61
+ b.default.func,
62
+ b.default.object
63
+ ])
64
+ });
65
+ //#endregion
66
+ //#region ../../node_modules/react-country-flag/dist/react-country-flag.esm.js
67
+ function w() {
68
+ return w = Object.assign ? Object.assign.bind() : function(e) {
69
+ for (var t = 1; t < arguments.length; t++) {
70
+ var n = arguments[t];
71
+ for (var r in n) Object.prototype.hasOwnProperty.call(n, r) && (e[r] = n[r]);
72
+ }
73
+ return e;
74
+ }, w.apply(this, arguments);
75
+ }
76
+ function T(e, t) {
77
+ if (e == null) return {};
78
+ var n = {}, r = Object.keys(e), i, a;
79
+ for (a = 0; a < r.length; a++) i = r[a], !(t.indexOf(i) >= 0) && (n[i] = e[i]);
80
+ return n;
81
+ }
82
+ var E = [
83
+ "cdnSuffix",
84
+ "cdnUrl",
85
+ "countryCode",
86
+ "style",
87
+ "svg"
88
+ ], D = "https://cdn.jsdelivr.net/gh/lipis/flag-icons/flags/4x3/", O = "svg", k = 127397, A = function(e) {
89
+ var t = e.cdnSuffix, n = t === void 0 ? O : t, r = e.cdnUrl, i = r === void 0 ? D : r, a = e.countryCode, o = e.style, s = e.svg, c = s === void 0 ? !1 : s, l = T(e, E);
90
+ if (typeof a != "string") return null;
91
+ if (c) {
92
+ var u = "" + i + a.toLowerCase() + "." + n;
93
+ return g("img", Object.assign({}, l, {
94
+ src: u,
95
+ style: w({
96
+ display: "inline-block",
97
+ width: "1em",
98
+ height: "1em",
99
+ verticalAlign: "middle"
100
+ }, o)
101
+ }));
102
+ }
103
+ var d = a.toUpperCase().replace(/./g, function(e) {
104
+ return String.fromCodePoint(e.charCodeAt(0) + k);
105
+ });
106
+ return g("span", Object.assign({ role: "img" }, l, { style: w({
107
+ display: "inline-block",
108
+ fontSize: "1em",
109
+ lineHeight: "1em",
110
+ verticalAlign: "middle"
111
+ }, o) }), d);
112
+ }, j = 16, M = 20, N = [{
113
+ code: "en",
114
+ label: "English",
115
+ countryCode: "GB"
116
+ }, {
117
+ code: "vi",
118
+ label: "Vietnamese",
119
+ countryCode: "VN"
120
+ }], P = ({ anchorEl: e, onClose: t, open: n = !1, onLanguageChange: r, languages: i = N, currentLanguage: a, menuWidth: o = "220px" }) => {
121
+ let s = h.useCallback((e) => {
122
+ r?.(e), t?.();
123
+ }, [r, t]);
124
+ return /* @__PURE__ */ _(l, {
125
+ anchorEl: e,
126
+ anchorOrigin: {
127
+ horizontal: "right",
128
+ vertical: "bottom"
129
+ },
130
+ onClose: t,
131
+ open: n,
132
+ slotProps: { paper: { sx: { width: o } } },
133
+ transformOrigin: {
134
+ horizontal: "right",
135
+ vertical: "top"
136
+ },
137
+ children: /* @__PURE__ */ _(c, { children: i.map((e) => /* @__PURE__ */ v(p, {
138
+ onClick: () => {
139
+ s(e.code);
140
+ },
141
+ selected: a === e.code,
142
+ children: [/* @__PURE__ */ _(C, { children: /* @__PURE__ */ _(A, {
143
+ countryCode: e.countryCode,
144
+ svg: !0,
145
+ style: {
146
+ width: M,
147
+ height: M
148
+ },
149
+ title: e.label
150
+ }) }), /* @__PURE__ */ _(u, {
151
+ variant: "subtitle2",
152
+ children: e.label
153
+ })]
154
+ }, e.code)) })
155
+ });
156
+ }, F = ({ languages: e = N, onLanguageChange: t, currentLanguage: n, tooltipText: r, buttonFlagSize: i = j, menuWidth: a = "220px", sx: o, useI18n: s = !0 }) => {
157
+ let c = y(), l = s ? c.t : null, u = s ? c.i18n : null, [f, p] = h.useState(null), m = n ?? u?.language ?? e[0]?.code ?? "en", g = e.find((e) => e.code === m) || e[0], b = h.useCallback((e) => {
158
+ p(e.currentTarget);
159
+ }, []), x = h.useCallback(() => {
160
+ p(null);
161
+ }, []), S = h.useCallback((e) => {
162
+ t ? t(e) : u && u.changeLanguage(e);
163
+ }, [t, u]), C = r ?? (l ? l("header:language.tooltip") : "Change language");
164
+ return /* @__PURE__ */ v(h.Fragment, { children: [/* @__PURE__ */ _(d, {
165
+ onClick: b,
166
+ sx: o,
167
+ tooltipOptions: {
168
+ title: C,
169
+ placement: "top"
170
+ },
171
+ children: /* @__PURE__ */ _(A, {
172
+ countryCode: g?.countryCode || "US",
173
+ svg: !0,
174
+ style: {
175
+ width: i,
176
+ height: i
177
+ },
178
+ title: g?.label || m
179
+ })
180
+ }), /* @__PURE__ */ _(P, {
181
+ anchorEl: f,
182
+ onClose: x,
183
+ open: !!f,
184
+ onLanguageChange: S,
185
+ languages: e,
186
+ currentLanguage: m,
187
+ menuWidth: a
188
+ })] });
189
+ };
190
+ F.displayName = "SLanguageSwitcher";
191
+ //#endregion
192
+ export { F as n, N as r, P as t };
@@ -16,9 +16,9 @@ export interface SLinkProps {
16
16
  component?: React.ElementType;
17
17
  /** Target attribute for the link (e.g., '_blank' for new tab) */
18
18
  target?: string;
19
- /** Color of the surrounding text */
19
+ /** Color of the surrounding text (defaults to text.primary) */
20
20
  color?: TypographyProps['color'];
21
- /** Color of the link itself (overrides default link color) */
21
+ /** Color of the link itself (defaults to primary.main) */
22
22
  linkColor?: LinkProps['color'];
23
23
  /** Line height for the typography */
24
24
  lineHeight?: React.CSSProperties['lineHeight'];
@@ -2,10 +2,12 @@ import "react";
2
2
  import { jsx as e, jsxs as t } from "react/jsx-runtime";
3
3
  import { Link as n, Typography as r } from "@mui/material";
4
4
  //#region lib/s-link/s-link.tsx
5
- var i = ({ onClick: i, beforeText: a = "", afterText: o = "", mainText: s = "", href: c = "#", component: l = "a", target: u, color: d = "text.secondary", linkColor: f = void 0, variant: p = "body2", lineHeight: m }) => /* @__PURE__ */ t(r, {
5
+ var i = ({ onClick: i, beforeText: a = "", afterText: o = "", mainText: s = "", href: c = "#", component: l = "a", target: u, color: d = "text.primary", linkColor: f = "primary.main", variant: p = "body2", lineHeight: m }) => /* @__PURE__ */ t(r, {
6
6
  variant: p,
7
- color: d,
8
- sx: { lineHeight: m },
7
+ sx: {
8
+ color: d,
9
+ lineHeight: m
10
+ },
9
11
  children: [
10
12
  a,
11
13
  " ",
@@ -13,16 +15,17 @@ var i = ({ onClick: i, beforeText: a = "", afterText: o = "", mainText: s = "",
13
15
  href: c,
14
16
  onClick: i,
15
17
  sx: {
18
+ color: f,
16
19
  cursor: "pointer",
17
20
  fontSize: "inherit",
18
21
  textDecoration: "none",
19
22
  textUnderlineOffset: "4px",
20
23
  "&::before": { display: "none" },
21
- "&:hover": { textDecoration: "underline" }
24
+ "&:hover": { textDecoration: "underline" },
25
+ "&:active": { textDecoration: "underline" }
22
26
  },
23
27
  component: l,
24
28
  target: u,
25
- color: f,
26
29
  children: s
27
30
  }),
28
31
  " ",
@@ -1,18 +1,15 @@
1
1
  import { default as React } from 'react';
2
2
  import { BoxProps } from '@mui/material';
3
- /**
4
- * Props for the SMovingBorder component
5
- */
6
3
  export interface SMovingBorderProps extends BoxProps {
7
- /** Border radius for the moving border container. */
4
+ /** Container border radius. */
8
5
  readonly borderRadius?: React.CSSProperties['borderRadius'];
9
- /** Duration of one complete animation cycle in milliseconds (default: 6000) */
6
+ /** Cycle duration in milliseconds (default: 6000). */
10
7
  readonly duration?: number;
11
- /** Additional CSS class name for styling */
8
+ /** CSS class name. */
12
9
  readonly className?: string;
13
- /** Color of the glow effect (default: 'var(--s-palette-primary-main)') */
10
+ /** Glow color (default: primary). */
14
11
  readonly glowColor?: string;
15
- /** Size of the glow effect in pixels (default: 250) */
12
+ /** Glow size in pixels (default: 250). */
16
13
  readonly glowSize?: number;
17
14
  /** Container height. */
18
15
  readonly height?: React.CSSProperties['height'];
@@ -20,7 +17,7 @@ export interface SMovingBorderProps extends BoxProps {
20
17
  readonly padding?: React.CSSProperties['padding'] | number;
21
18
  /** Container width. */
22
19
  readonly width?: React.CSSProperties['width'];
23
- /** Content to render inside the moving border container */
20
+ /** Content. */
24
21
  readonly children: React.ReactNode;
25
22
  }
26
23
  export declare const SMovingBorder: React.FC<SMovingBorderProps>;