elseware-ui 3.0.15 → 3.1.0

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
@@ -6,7 +6,7 @@ var tailwindMerge = require('tailwind-merge');
6
6
  var index_js = require('react-icons/ai/index.js');
7
7
  var formik = require('formik');
8
8
  var index_js$2 = require('react-icons/fa/index.js');
9
- var classNames69 = require('classnames');
9
+ var classNames67 = require('classnames');
10
10
  var reactBeautifulDnd = require('react-beautiful-dnd');
11
11
  var cloudinaryReact = require('cloudinary-react');
12
12
  var index_js$1 = require('react-icons/md/index.js');
@@ -27,7 +27,7 @@ require('@mdxeditor/editor/style.css');
27
27
  function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
28
28
 
29
29
  var React26__default = /*#__PURE__*/_interopDefault(React26);
30
- var classNames69__default = /*#__PURE__*/_interopDefault(classNames69);
30
+ var classNames67__default = /*#__PURE__*/_interopDefault(classNames67);
31
31
  var ReactWorldFlags__default = /*#__PURE__*/_interopDefault(ReactWorldFlags);
32
32
  var emojiFlags__default = /*#__PURE__*/_interopDefault(emojiFlags);
33
33
  var CodeMirror__default = /*#__PURE__*/_interopDefault(CodeMirror);
@@ -4728,7 +4728,7 @@ var init_python = __esm({
4728
4728
  });
4729
4729
 
4730
4730
  // node_modules/refractor/lang/jsx.js
4731
- function jsx217(Prism2) {
4731
+ function jsx226(Prism2) {
4732
4732
  Prism2.register(javascript);
4733
4733
  Prism2.register(markup);
4734
4734
  (function(Prism3) {
@@ -4861,14 +4861,14 @@ var init_jsx = __esm({
4861
4861
  "node_modules/refractor/lang/jsx.js"() {
4862
4862
  init_javascript();
4863
4863
  init_markup();
4864
- jsx217.displayName = "jsx";
4865
- jsx217.aliases = [];
4864
+ jsx226.displayName = "jsx";
4865
+ jsx226.aliases = [];
4866
4866
  }
4867
4867
  });
4868
4868
 
4869
4869
  // node_modules/refractor/lang/tsx.js
4870
4870
  function tsx(Prism2) {
4871
- Prism2.register(jsx217);
4871
+ Prism2.register(jsx226);
4872
4872
  Prism2.register(typescript);
4873
4873
  (function(Prism3) {
4874
4874
  var typescript2 = Prism3.util.clone(Prism3.languages.typescript);
@@ -6548,7 +6548,7 @@ var Backdrop = ({ children: children3, styles }) => {
6548
6548
  return /* @__PURE__ */ jsxRuntime.jsx(
6549
6549
  "div",
6550
6550
  {
6551
- className: classNames69__default.default({
6551
+ className: classNames67__default.default({
6552
6552
  "bg-black/75 top-0 bottom-0 left-0 right-0 z-50 fixed inset-0 flex items-center justify-center overflow-hidden": true,
6553
6553
  [`${styles}`]: styles
6554
6554
  }),
@@ -7138,7 +7138,7 @@ function renderTransitionChild(children3, className) {
7138
7138
  }
7139
7139
  const element7 = child;
7140
7140
  return React26__default.default.cloneElement(element7, {
7141
- className: classNames69__default.default(element7.props.className, className)
7141
+ className: classNames67__default.default(element7.props.className, className)
7142
7142
  });
7143
7143
  }
7144
7144
  function TransitionBase({
@@ -7158,7 +7158,7 @@ function TransitionBase({
7158
7158
  if (!mounted && unmountOnExit) {
7159
7159
  return null;
7160
7160
  }
7161
- const transitionClassName = classNames69__default.default(
7161
+ const transitionClassName = classNames67__default.default(
7162
7162
  visibility ? enterClassName : leaveClassName,
7163
7163
  active ? visibleClassName : hiddenClassName
7164
7164
  );
@@ -7662,7 +7662,7 @@ function InputFile(inputFileProps) {
7662
7662
  className: cn(
7663
7663
  inputControlClassName,
7664
7664
  "block truncate pointer-events-none",
7665
- classNames69__default.default({
7665
+ classNames67__default.default({
7666
7666
  "text-gray-500 dark:text-gray-300": !fileName
7667
7667
  }),
7668
7668
  inputClassName
@@ -7743,7 +7743,7 @@ var InputList = ({ name: name2, placeholder, shape }) => {
7743
7743
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-2", children: /* @__PURE__ */ jsxRuntime.jsx(formik.FieldArray, { name: name2, children: ({ push: push2, remove: remove2, move }) => /* @__PURE__ */ jsxRuntime.jsxs(
7744
7744
  "div",
7745
7745
  {
7746
- className: classNames69__default.default(
7746
+ className: classNames67__default.default(
7747
7747
  "flex w-full flex-col space-y-2 bg-eui-primary-300/10",
7748
7748
  shapes[resolvedShape]
7749
7749
  ),
@@ -7772,7 +7772,7 @@ var InputList = ({ name: name2, placeholder, shape }) => {
7772
7772
  ref: provided2.innerRef,
7773
7773
  ...draggableProps,
7774
7774
  style: draggableStyle,
7775
- className: classNames69__default.default(
7775
+ className: classNames67__default.default(
7776
7776
  "flex items-center space-x-2 bg-eui-primary-300/10 p-2",
7777
7777
  shapes[resolvedShape]
7778
7778
  ),
@@ -7783,7 +7783,7 @@ var InputList = ({ name: name2, placeholder, shape }) => {
7783
7783
  {
7784
7784
  name: `${name2}[${index3}]`,
7785
7785
  placeholder: `Item ${index3 + 1}`,
7786
- className: classNames69__default.default(
7786
+ className: classNames67__default.default(
7787
7787
  "peer h-[50px] w-full border bg-eui-primary-300/10 px-3 pb-2 pt-5 text-md placeholder-transparent placeholder-shown:p-3 focus:outline-none eui-text-md",
7788
7788
  shapes[resolvedShape],
7789
7789
  hasItemError ? "border-eui-danger-500" : "border-eui-primary-400 focus:border-eui-secondary-500"
@@ -7879,7 +7879,7 @@ var InputListGroup = ({
7879
7879
  return /* @__PURE__ */ jsxRuntime.jsxs(
7880
7880
  "div",
7881
7881
  {
7882
- className: classNames69__default.default(
7882
+ className: classNames67__default.default(
7883
7883
  "flex flex-col gap-2 bg-eui-primary-300/10 p-3",
7884
7884
  shapes[resolvedShape]
7885
7885
  ),
@@ -7891,7 +7891,7 @@ var InputListGroup = ({
7891
7891
  {
7892
7892
  name: `${name2}[${groupIndex}].name`,
7893
7893
  placeholder: `Group ${groupIndex + 1}`,
7894
- className: classNames69__default.default(
7894
+ className: classNames67__default.default(
7895
7895
  "h-[40px] w-full border bg-eui-primary-300/10 px-3 py-2 text-md focus:outline-none",
7896
7896
  shapes[resolvedShape],
7897
7897
  "border-eui-primary-400 focus:border-eui-secondary-500"
@@ -7922,7 +7922,7 @@ var InputListGroup = ({
7922
7922
  {
7923
7923
  ref: provided.innerRef,
7924
7924
  ...provided.droppableProps,
7925
- className: classNames69__default.default(
7925
+ className: classNames67__default.default(
7926
7926
  "space-y-2 bg-eui-primary-300/10 p-2",
7927
7927
  shapes[resolvedShape]
7928
7928
  ),
@@ -7942,7 +7942,7 @@ var InputListGroup = ({
7942
7942
  ref: provided2.innerRef,
7943
7943
  ...draggableProps,
7944
7944
  style: draggableStyle,
7945
- className: classNames69__default.default(
7945
+ className: classNames67__default.default(
7946
7946
  "flex items-center gap-2 bg-eui-primary-300/10 p-2",
7947
7947
  shapes[resolvedShape]
7948
7948
  ),
@@ -7953,7 +7953,7 @@ var InputListGroup = ({
7953
7953
  {
7954
7954
  name: `${itemsFieldName}[${itemIndex}]`,
7955
7955
  placeholder: `Item ${itemIndex + 1}`,
7956
- className: classNames69__default.default(
7956
+ className: classNames67__default.default(
7957
7957
  "h-[40px] w-full border bg-eui-primary-300/10 px-3 py-2 text-md focus:outline-none",
7958
7958
  shapes[resolvedShape],
7959
7959
  "border-eui-primary-400 focus:border-eui-secondary-500"
@@ -8706,7 +8706,7 @@ var ImageInput = React26.forwardRef(
8706
8706
  /* @__PURE__ */ jsxRuntime.jsxs(
8707
8707
  "label",
8708
8708
  {
8709
- className: classNames69__default.default({
8709
+ className: classNames67__default.default({
8710
8710
  "border-2 border-dashed border-gray-700 bg-gray-900 h-[200px] w-[300px] flex flex-col gap-2 items-center justify-center group": true,
8711
8711
  "hover:cursor-pointer hover:border-solid hover:border-gray-600 hover:bg-gray-900/80": true,
8712
8712
  "transition-all ease-in-out duration-150": true
@@ -8894,7 +8894,7 @@ function MultiImageInput({
8894
8894
  onDragOver: handleDragOver,
8895
8895
  onDrop: () => handleDrop(index3),
8896
8896
  onDragEnd: () => setDraggedIndex(null),
8897
- className: classNames69__default.default(
8897
+ className: classNames67__default.default(
8898
8898
  "relative h-[200px] w-[300px] overflow-hidden bg-gray-900",
8899
8899
  "transition-all duration-150",
8900
8900
  draggedIndex === index3 && "opacity-60",
@@ -9024,7 +9024,7 @@ function Radio({
9024
9024
  return /* @__PURE__ */ jsxRuntime.jsxs(
9025
9025
  "div",
9026
9026
  {
9027
- className: classNames69__default.default({
9027
+ className: classNames67__default.default({
9028
9028
  "flex flex-row gap-2 items-center mx-1 my-2": true
9029
9029
  }),
9030
9030
  children: [
@@ -9037,7 +9037,7 @@ function Radio({
9037
9037
  ...props,
9038
9038
  value: option.value,
9039
9039
  checked: field2.value === option.value,
9040
- className: classNames69__default.default({
9040
+ className: classNames67__default.default({
9041
9041
  "appearance-none w-4 h-4 border-2 border-eui-primary-400 rounded-full cursor-pointer transition-all duration-300": true,
9042
9042
  // base radio button styles
9043
9043
  "checked:bg-eui-secondary-700 checked:border-eui-primary-400": field2.value === option.value
@@ -9049,7 +9049,7 @@ function Radio({
9049
9049
  "label",
9050
9050
  {
9051
9051
  htmlFor: option.value,
9052
- className: classNames69__default.default({
9052
+ className: classNames67__default.default({
9053
9053
  "eui-text-md text-sm": true
9054
9054
  }),
9055
9055
  children: option.label
@@ -9092,7 +9092,7 @@ function StarRatingInput({
9092
9092
  return /* @__PURE__ */ jsxRuntime.jsxs(
9093
9093
  "div",
9094
9094
  {
9095
- className: classNames69__default.default({
9095
+ className: classNames67__default.default({
9096
9096
  "inline-flex gap-[4px] text-[20px]": true,
9097
9097
  [`${styles}`]: styles
9098
9098
  }),
@@ -9105,7 +9105,7 @@ function StarRatingInput({
9105
9105
  onClick: () => handleOnClick(index3),
9106
9106
  onMouseEnter: () => setHover(index3),
9107
9107
  onMouseLeave: () => setHover(null),
9108
- className: classNames69__default.default({
9108
+ className: classNames67__default.default({
9109
9109
  "text-yellow-600": index3 <= (hover ?? rating - 1),
9110
9110
  "text-gray-400": index3 > (hover ?? rating - 1)
9111
9111
  }),
@@ -9510,7 +9510,7 @@ function Switch({
9510
9510
  "div",
9511
9511
  {
9512
9512
  onClick: () => helpers.setValue(!field.value),
9513
- className: classNames69__default.default(
9513
+ className: classNames67__default.default(
9514
9514
  "w-11 h-6 bg-gray-200 peer-focus:outline-none rounded-full peer dark:bg-eui-dark-100",
9515
9515
  "peer-checked:after:translate-x-full peer-checked:after:border-white",
9516
9516
  "after:content-[''] after:absolute after:top-[2px] after:left-[2px] after:bg-white",
@@ -9897,7 +9897,7 @@ function BreadcrumbItem({
9897
9897
  {
9898
9898
  href,
9899
9899
  onClick,
9900
- className: classNames69__default.default({
9900
+ className: classNames67__default.default({
9901
9901
  "text-lg font-semibold": true,
9902
9902
  "text-gray-400 hover:text-gray-600 cursor-pointer": !active,
9903
9903
  "text-eui-light-800": active,
@@ -9974,7 +9974,7 @@ var Breadcrumb = ({
9974
9974
  index3 < resolvedData.length - 1 && /* @__PURE__ */ jsxRuntime.jsx(
9975
9975
  "span",
9976
9976
  {
9977
- className: classNames69__default.default({
9977
+ className: classNames67__default.default({
9978
9978
  "text-lg font-semibold text-gray-500": true,
9979
9979
  [`px-${gap}`]: gap
9980
9980
  }),
@@ -9988,7 +9988,7 @@ var Breadcrumb = ({
9988
9988
  return /* @__PURE__ */ jsxRuntime.jsx(
9989
9989
  "div",
9990
9990
  {
9991
- className: classNames69__default.default({
9991
+ className: classNames67__default.default({
9992
9992
  "inline-flex": true,
9993
9993
  [`${styles}`]: styles
9994
9994
  }),
@@ -10032,7 +10032,7 @@ var Drawer = ({
10032
10032
  isMobile && showBackdrop && /* @__PURE__ */ jsxRuntime.jsx(TransitionFade_default, { visibility, leaveDuration: 200, children: /* @__PURE__ */ jsxRuntime.jsx(
10033
10033
  "div",
10034
10034
  {
10035
- className: classNames69__default.default(
10035
+ className: classNames67__default.default(
10036
10036
  "fixed inset-0 bg-black/50 z-40",
10037
10037
  backdropStyles
10038
10038
  ),
@@ -10043,7 +10043,7 @@ var Drawer = ({
10043
10043
  "div",
10044
10044
  {
10045
10045
  style: drawerStyle,
10046
- className: classNames69__default.default(
10046
+ className: classNames67__default.default(
10047
10047
  "fixed shadow-lg z-50",
10048
10048
  {
10049
10049
  "h-full w-[300px] top-0": isHorizontal && !hasOffset,
@@ -10072,7 +10072,7 @@ function DrawerToggler({
10072
10072
  return /* @__PURE__ */ jsxRuntime.jsx(
10073
10073
  "div",
10074
10074
  {
10075
- className: classNames69__default.default({
10075
+ className: classNames67__default.default({
10076
10076
  "text-xl p-3 cursor-pointer": true,
10077
10077
  "transition-all ease-in-out": true,
10078
10078
  "text-eui-dark-500 dark:text-eui-secondary-600": !styles,
@@ -10085,8 +10085,16 @@ function DrawerToggler({
10085
10085
  );
10086
10086
  }
10087
10087
  var DrawerToggler_default = DrawerToggler;
10088
- function FooterNav({ data = [], styles }) {
10089
- const isMobile = useIsMobile_default();
10088
+ var columnsClassName = (count) => {
10089
+ const map3 = {
10090
+ 1: "grid-cols-1",
10091
+ 2: "grid-cols-1 sm:grid-cols-2",
10092
+ 3: "grid-cols-2 sm:grid-cols-3",
10093
+ 4: "grid-cols-2 sm:grid-cols-2 lg:grid-cols-4"
10094
+ };
10095
+ return map3[Math.min(Math.max(count, 1), 4)] ?? map3[4];
10096
+ };
10097
+ function FooterNav({ data = [], navigate, styles }) {
10090
10098
  const renderFooterNavItem = (item, index3) => {
10091
10099
  const { icon, name: name2, badge, to, onClick, component, ...rest } = item;
10092
10100
  const Component = component;
@@ -10098,49 +10106,147 @@ function FooterNav({ data = [], styles }) {
10098
10106
  badge,
10099
10107
  to,
10100
10108
  onClick,
10109
+ navigate,
10101
10110
  ...rest
10102
10111
  },
10103
10112
  index3
10104
10113
  );
10105
10114
  };
10106
10115
  const renderFooterNavGroup = (item, index3) => {
10107
- const { icon, name: name2, badge, to, items, component, ...rest } = item;
10116
+ const { icon, name: name2, badge, to, items: items2, component, ...rest } = item;
10108
10117
  const Component = component;
10109
- const groupItems = items && Array.isArray(items) ? items.map(
10118
+ const groupItems = items2 && Array.isArray(items2) ? items2.map(
10110
10119
  (i, idx) => "items" in i ? renderFooterNavGroup(i, idx) : renderFooterNavItem(i, idx)
10111
10120
  ) : null;
10112
10121
  return /* @__PURE__ */ jsxRuntime.jsx(Component, { icon, name: name2, badge, ...rest, children: groupItems }, index3);
10113
10122
  };
10114
- const splitData = [...data];
10115
- let childrenContent;
10116
- if (splitData.length > 0) {
10117
- const items = splitData.map(
10118
- (item, index3) => "items" in item ? renderFooterNavGroup(item, index3) : renderFooterNavItem(item, index3)
10119
- );
10120
- childrenContent = /* @__PURE__ */ jsxRuntime.jsx(
10123
+ if (data.length === 0) return null;
10124
+ const items = data.map(
10125
+ (item, index3) => "items" in item ? renderFooterNavGroup(item, index3) : renderFooterNavItem(item, index3)
10126
+ );
10127
+ return /* @__PURE__ */ jsxRuntime.jsx(
10128
+ "div",
10129
+ {
10130
+ className: classNames67__default.default(
10131
+ "grid w-full gap-8",
10132
+ columnsClassName(data.length),
10133
+ {
10134
+ [`${styles}`]: styles
10135
+ }
10136
+ ),
10137
+ children: items
10138
+ }
10139
+ );
10140
+ }
10141
+ var FooterNav_default = FooterNav;
10142
+
10143
+ // src/components/data-display/typography/shared/typography.styles.ts
10144
+ var typographyStyles = ({
10145
+ variant = "default",
10146
+ decoration = "noUnderline",
10147
+ bold,
10148
+ italic,
10149
+ className
10150
+ }) => cn(
10151
+ textVariants[variant],
10152
+ decorations[decoration],
10153
+ bold && "font-bold",
10154
+ italic && "italic",
10155
+ className
10156
+ );
10157
+ var Overline = ({
10158
+ children: children3,
10159
+ variant,
10160
+ decoration,
10161
+ bold = true,
10162
+ italic,
10163
+ className,
10164
+ ...rest
10165
+ }) => {
10166
+ return /* @__PURE__ */ jsxRuntime.jsx(
10167
+ "div",
10168
+ {
10169
+ ...rest,
10170
+ className: cn(
10171
+ "text-xs uppercase tracking-[0.2em]",
10172
+ typographyStyles({
10173
+ variant,
10174
+ decoration,
10175
+ bold,
10176
+ italic,
10177
+ className
10178
+ })
10179
+ ),
10180
+ children: children3 || "Overline"
10181
+ }
10182
+ );
10183
+ };
10184
+ var FooterNavGroup = ({
10185
+ icon,
10186
+ name: name2,
10187
+ badge,
10188
+ title,
10189
+ children: children3,
10190
+ styles,
10191
+ className,
10192
+ titleClassName
10193
+ }) => {
10194
+ const heading3 = title ?? (name2 ? /* @__PURE__ */ jsxRuntime.jsx(Overline, { children: name2 }) : null);
10195
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("flex flex-col", styles, className), children: [
10196
+ heading3 && /* @__PURE__ */ jsxRuntime.jsxs(
10121
10197
  "div",
10122
10198
  {
10123
- className: classNames69__default.default({
10124
- "grid w-full": true,
10125
- "grid-cols-1": isMobile,
10126
- "grid-cols-3": !isMobile,
10127
- [`${styles}`]: styles
10128
- }),
10129
- children: items
10199
+ className: cn(
10200
+ "mb-3 flex items-center gap-2 text-eui-dark-700 dark:text-eui-light-600",
10201
+ titleClassName
10202
+ ),
10203
+ children: [
10204
+ icon && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-base", children: icon }),
10205
+ heading3,
10206
+ badge && /* @__PURE__ */ jsxRuntime.jsx("span", { children: badge })
10207
+ ]
10130
10208
  }
10131
- );
10132
- }
10209
+ ),
10210
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex flex-col gap-1", children: children3 })
10211
+ ] });
10212
+ };
10213
+ var FooterNavGroup_default = FooterNavGroup;
10214
+ var Link = ({
10215
+ children: children3,
10216
+ href,
10217
+ target = "self",
10218
+ variant = "info",
10219
+ decoration = "underline",
10220
+ bold,
10221
+ italic,
10222
+ styles,
10223
+ onClick
10224
+ }) => {
10225
+ const handleClick = (event) => {
10226
+ if (onClick) {
10227
+ event.preventDefault();
10228
+ onClick();
10229
+ }
10230
+ };
10133
10231
  return /* @__PURE__ */ jsxRuntime.jsx(
10134
- "div",
10232
+ "a",
10135
10233
  {
10136
- className: classNames69__default.default({
10234
+ href: href || "#",
10235
+ target: targets[target],
10236
+ onClick: handleClick,
10237
+ className: classNames67__default.default({
10238
+ [`${textVariants[variant]}`]: variant,
10239
+ [`${decorations[decoration]}`]: decoration,
10240
+ "font-bold": bold,
10241
+ italic,
10242
+ "hover:cursor-pointer hover:brightness-125": true,
10243
+ "transition-all ease-in-out": true,
10137
10244
  [`${styles}`]: styles
10138
10245
  }),
10139
- children: childrenContent
10246
+ children: children3 ? children3 : "Link"
10140
10247
  }
10141
10248
  );
10142
- }
10143
- var FooterNav_default = FooterNav;
10249
+ };
10144
10250
  var FooterNavItemContext = ({
10145
10251
  icon,
10146
10252
  name: name2,
@@ -10156,76 +10262,60 @@ var FooterNavItemContext = ({
10156
10262
  badge && /* @__PURE__ */ jsxRuntime.jsx("div", { children: badge })
10157
10263
  ] });
10158
10264
  };
10159
- var FooterNavGroup = ({
10160
- icon,
10161
- name: name2,
10162
- description,
10163
- badge,
10164
- to,
10165
- styles,
10166
- children: children3
10167
- }) => {
10168
- const handleNavigation = () => {
10169
- if (to) {
10170
- window.location.href = to;
10171
- }
10172
- };
10173
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
10174
- /* @__PURE__ */ jsxRuntime.jsx(
10175
- "div",
10176
- {
10177
- className: classNames69__default.default({
10178
- "": true,
10179
- "py-2 font-semibold eui-text-lg": !styles,
10180
- [`${styles}`]: styles
10181
- }),
10182
- onClick: () => {
10183
- if (!children3) {
10184
- handleNavigation();
10185
- }
10186
- },
10187
- children: /* @__PURE__ */ jsxRuntime.jsx(
10188
- FooterNavItemContext,
10189
- {
10190
- icon,
10191
- name: name2,
10192
- description,
10193
- badge
10194
- }
10195
- )
10196
- }
10197
- ),
10198
- /* @__PURE__ */ jsxRuntime.jsx("div", { children: children3 })
10199
- ] });
10200
- };
10201
- var FooterNavGroup_default = FooterNavGroup;
10202
10265
  var FooterNavItem = ({
10203
10266
  icon,
10204
10267
  name: name2,
10205
10268
  description,
10206
10269
  badge,
10207
10270
  to,
10271
+ external,
10208
10272
  onClick,
10209
- styles
10273
+ navigate,
10274
+ styles,
10275
+ className
10210
10276
  }) => {
10211
- const handleNavigation = () => {
10212
- if (to) {
10213
- window.location.href = to;
10214
- } else if (onClick) {
10277
+ const handleClick = () => {
10278
+ if (onClick) {
10215
10279
  onClick();
10280
+ return;
10281
+ }
10282
+ if (!to) return;
10283
+ if (external) {
10284
+ window.open(to, "_blank", "noopener,noreferrer");
10285
+ return;
10286
+ }
10287
+ if (navigate) {
10288
+ navigate(to);
10289
+ return;
10216
10290
  }
10291
+ window.location.href = to;
10217
10292
  };
10293
+ const isSimpleLink = !icon && !description && !badge;
10294
+ if (isSimpleLink) {
10295
+ const useJsNav = Boolean(onClick) || Boolean(navigate) && Boolean(to);
10296
+ return /* @__PURE__ */ jsxRuntime.jsx(
10297
+ Link,
10298
+ {
10299
+ href: to || "#",
10300
+ target: external ? "blank" : "self",
10301
+ variant: "default",
10302
+ decoration: "noUnderline",
10303
+ onClick: useJsNav ? handleClick : void 0,
10304
+ styles: cn("block py-1 text-sm", styles, className),
10305
+ children: name2
10306
+ }
10307
+ );
10308
+ }
10218
10309
  return /* @__PURE__ */ jsxRuntime.jsx(
10219
10310
  "div",
10220
10311
  {
10221
- onClick: handleNavigation,
10222
- className: classNames69__default.default({
10223
- "flex flex-row items-center gap-3 cursor-pointer p-1 w-full": true,
10224
- "transition-all duration-200 ease-in-out": true,
10225
- "text-sm eui-text-sm": !styles,
10226
- "hover:eui-text-lg": !styles,
10227
- [`${styles}`]: styles
10228
- }),
10312
+ onClick: handleClick,
10313
+ className: cn(
10314
+ "flex w-full cursor-pointer flex-row items-center gap-3 py-1 text-sm",
10315
+ "eui-text-md eui-theme-transition hover:brightness-125",
10316
+ styles,
10317
+ className
10318
+ ),
10229
10319
  children: /* @__PURE__ */ jsxRuntime.jsx(
10230
10320
  FooterNavItemContext,
10231
10321
  {
@@ -10248,7 +10338,7 @@ var FooterNavItemTitle = ({
10248
10338
  return /* @__PURE__ */ jsxRuntime.jsx(
10249
10339
  "div",
10250
10340
  {
10251
- className: classNames69__default.default({
10341
+ className: classNames67__default.default({
10252
10342
  "": true,
10253
10343
  "py-2 font-thin eui-text-md": !styles,
10254
10344
  [`${styles}`]: styles
@@ -10301,7 +10391,7 @@ function HeaderNav({ data = [], styles }) {
10301
10391
  return /* @__PURE__ */ jsxRuntime.jsx(
10302
10392
  "div",
10303
10393
  {
10304
- className: classNames69__default.default({
10394
+ className: classNames67__default.default({
10305
10395
  [`${styles}`]: styles
10306
10396
  }),
10307
10397
  children: childrenContent
@@ -10345,7 +10435,7 @@ var HeaderNavGroup = ({
10345
10435
  /* @__PURE__ */ jsxRuntime.jsxs(
10346
10436
  "div",
10347
10437
  {
10348
- className: classNames69__default.default({
10438
+ className: classNames67__default.default({
10349
10439
  "flex flex-row gap-2 items-center justify-between cursor-pointer p-3 w-full": true,
10350
10440
  "transition-all duration-300 ease-in-out": true,
10351
10441
  "eui-text-md bg-gradient-to-t from-eui-dark-500/10 dark:from-green-700/10": !styles,
@@ -10373,7 +10463,7 @@ var HeaderNavGroup = ({
10373
10463
  children3 && /* @__PURE__ */ jsxRuntime.jsx(
10374
10464
  index_js$3.BsChevronDown,
10375
10465
  {
10376
- className: classNames69__default.default({
10466
+ className: classNames67__default.default({
10377
10467
  "text-md": true,
10378
10468
  "transition-all ease-in-out duration-300": true,
10379
10469
  "rotate-180": !collapsed
@@ -10386,7 +10476,7 @@ var HeaderNavGroup = ({
10386
10476
  !collapsed && children3 && /* @__PURE__ */ jsxRuntime.jsx(
10387
10477
  "div",
10388
10478
  {
10389
- className: classNames69__default.default({
10479
+ className: classNames67__default.default({
10390
10480
  "absolute min-w-80 left-0 top-full mt-1 border border-eui-dark-300/10 dark:border-eui-dark-300/50 shadow-lg eui-shadow-lg z-50 w-full eui-bg-md": true,
10391
10481
  "transition-all duration-300 ease-in-out": true
10392
10482
  }),
@@ -10416,7 +10506,7 @@ var HeaderNavItem = ({
10416
10506
  "div",
10417
10507
  {
10418
10508
  onClick: handleNavigation,
10419
- className: classNames69__default.default({
10509
+ className: classNames67__default.default({
10420
10510
  "flex flex-row items-center gap-3 cursor-pointer p-3 w-full": true,
10421
10511
  "transition-all duration-200 ease-in-out": true,
10422
10512
  "eui-text-md border-b border-eui-dark-500/20 dark:border-eui-secondary-900/20 bg-gradient-to-r from-eui-dark-500/10 dark:from-eui-secondary-900/10": !styles,
@@ -10445,7 +10535,7 @@ var HeaderNavItemTitle = ({
10445
10535
  return /* @__PURE__ */ jsxRuntime.jsx(
10446
10536
  "div",
10447
10537
  {
10448
- className: classNames69__default.default({
10538
+ className: classNames67__default.default({
10449
10539
  "p-3 font-thin": true,
10450
10540
  "eui-text-md": !styles,
10451
10541
  [`${styles}`]: styles
@@ -10462,42 +10552,6 @@ var HeaderNavItemTitle = ({
10462
10552
  }
10463
10553
  );
10464
10554
  };
10465
- var Link = ({
10466
- children: children3,
10467
- href,
10468
- target = "self",
10469
- variant = "info",
10470
- decoration = "underline",
10471
- bold,
10472
- italic,
10473
- styles,
10474
- onClick
10475
- }) => {
10476
- const handleClick = (event) => {
10477
- if (onClick) {
10478
- event.preventDefault();
10479
- onClick();
10480
- }
10481
- };
10482
- return /* @__PURE__ */ jsxRuntime.jsx(
10483
- "a",
10484
- {
10485
- href: href || "#",
10486
- target: targets[target],
10487
- onClick: handleClick,
10488
- className: classNames69__default.default({
10489
- [`${textVariants[variant]}`]: variant,
10490
- [`${decorations[decoration]}`]: decoration,
10491
- "font-bold": bold,
10492
- italic,
10493
- "hover:cursor-pointer hover:brightness-125": true,
10494
- "transition-all ease-in-out": true,
10495
- [`${styles}`]: styles
10496
- }),
10497
- children: children3 ? children3 : "Link"
10498
- }
10499
- );
10500
- };
10501
10555
  var MIContext = ({ icon, name: name2, badge }) => {
10502
10556
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
10503
10557
  icon && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-base text-gray-500 dark:text-gray-400", children: icon }),
@@ -13677,7 +13731,7 @@ function Accordion({
13677
13731
  /* @__PURE__ */ jsxRuntime.jsxs(
13678
13732
  "div",
13679
13733
  {
13680
- className: classNames69__default.default(
13734
+ className: classNames67__default.default(
13681
13735
  "inline-flex gap-3 items-center px-3 py-2 w-full eui-gradient-to-r-general-xs",
13682
13736
  {
13683
13737
  "hover:cursor-pointer": toggleOnSummaryClick
@@ -13698,7 +13752,7 @@ function Accordion({
13698
13752
  children: /* @__PURE__ */ jsxRuntime.jsx(
13699
13753
  index_js$4.FaCircleChevronDown,
13700
13754
  {
13701
- className: classNames69__default.default("text-xl transition-transform duration-300", {
13755
+ className: classNames67__default.default("text-xl transition-transform duration-300", {
13702
13756
  "rotate-180": collapse
13703
13757
  })
13704
13758
  }
@@ -13712,7 +13766,7 @@ function Accordion({
13712
13766
  /* @__PURE__ */ jsxRuntime.jsx(TransitionAccordion_default, { visibility: collapse, children: /* @__PURE__ */ jsxRuntime.jsx(
13713
13767
  "div",
13714
13768
  {
13715
- className: classNames69__default.default(
13769
+ className: classNames67__default.default(
13716
13770
  "border-t border-t-eui-dark-400/40 eui-text-sm",
13717
13771
  {
13718
13772
  "p-5": enableChildrenPadding
@@ -13769,7 +13823,7 @@ function CardHeader({ icon, title, description, className }) {
13769
13823
  return /* @__PURE__ */ jsxRuntime.jsxs(
13770
13824
  "div",
13771
13825
  {
13772
- className: classNames69__default.default(
13826
+ className: classNames67__default.default(
13773
13827
  "flex items-start gap-4 p-6 border-b border-white/10",
13774
13828
  className
13775
13829
  ),
@@ -13785,14 +13839,14 @@ function CardHeader({ icon, title, description, className }) {
13785
13839
  }
13786
13840
  var CardHeader_default = CardHeader;
13787
13841
  function CardContent({ children: children3, className }) {
13788
- return /* @__PURE__ */ jsxRuntime.jsx("div", { className: classNames69__default.default("p-6 text-gray-300 text-sm", className), children: children3 });
13842
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: classNames67__default.default("p-6 text-gray-300 text-sm", className), children: children3 });
13789
13843
  }
13790
13844
  var CardContent_default = CardContent;
13791
13845
  function CardFooter({ children: children3, className }) {
13792
13846
  return /* @__PURE__ */ jsxRuntime.jsx(
13793
13847
  "div",
13794
13848
  {
13795
- className: classNames69__default.default(
13849
+ className: classNames67__default.default(
13796
13850
  "flex items-center gap-3 p-5 border-t border-white/10 text-sm text-gray-400",
13797
13851
  className
13798
13852
  ),
@@ -13834,7 +13888,7 @@ function GradientAnimation({
13834
13888
  return /* @__PURE__ */ jsxRuntime.jsx(
13835
13889
  "div",
13836
13890
  {
13837
- className: classNames69__default.default("absolute inset-0"),
13891
+ className: classNames67__default.default("absolute inset-0"),
13838
13892
  style: {
13839
13893
  background: `linear-gradient(${cfg.angle}deg, ${cfg.colors?.join(",")})`,
13840
13894
  backgroundSize: cfg.backgroundSize,
@@ -13980,7 +14034,7 @@ function MotionSurface({
13980
14034
  }) {
13981
14035
  const AnimationComponent = animationVariant === "custom" ? CustomAnimation : animationRegistry[animationVariant];
13982
14036
  const OverlayComponent = overlay === "custom" ? CustomOverlay : overlayRegistry[overlay];
13983
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: classNames69__default.default("relative overflow-hidden", className), children: [
14037
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: classNames67__default.default("relative overflow-hidden", className), children: [
13984
14038
  AnimationComponent && /* @__PURE__ */ jsxRuntime.jsx(AnimationComponent, { config: animationConfig, animated }),
13985
14039
  OverlayComponent && /* @__PURE__ */ jsxRuntime.jsx(OverlayComponent, { config: overlayConfig }),
13986
14040
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "relative z-10", children: children3 })
@@ -17536,21 +17590,6 @@ var typographyLevels = {
17536
17590
  3: "text-xs leading-[20px]"
17537
17591
  }
17538
17592
  };
17539
-
17540
- // src/components/data-display/typography/shared/typography.styles.ts
17541
- var typographyStyles = ({
17542
- variant = "default",
17543
- decoration = "noUnderline",
17544
- bold,
17545
- italic,
17546
- className
17547
- }) => cn(
17548
- textVariants[variant],
17549
- decorations[decoration],
17550
- bold && "font-bold",
17551
- italic && "italic",
17552
- className
17553
- );
17554
17593
  var Chapter = ({
17555
17594
  level = 1,
17556
17595
  children: children3,
@@ -17765,33 +17804,6 @@ var Lead = ({
17765
17804
  }
17766
17805
  );
17767
17806
  };
17768
- var Overline = ({
17769
- children: children3,
17770
- variant,
17771
- decoration,
17772
- bold = true,
17773
- italic,
17774
- className,
17775
- ...rest
17776
- }) => {
17777
- return /* @__PURE__ */ jsxRuntime.jsx(
17778
- "div",
17779
- {
17780
- ...rest,
17781
- className: cn(
17782
- "text-xs uppercase tracking-[0.2em]",
17783
- typographyStyles({
17784
- variant,
17785
- decoration,
17786
- bold,
17787
- italic,
17788
- className
17789
- })
17790
- ),
17791
- children: children3 || "Overline"
17792
- }
17793
- );
17794
- };
17795
17807
  var Display = ({
17796
17808
  level = 1,
17797
17809
  children: children3,
@@ -19077,7 +19089,7 @@ var ThemeSwitch = () => {
19077
19089
  /* @__PURE__ */ jsxRuntime.jsx(
19078
19090
  "div",
19079
19091
  {
19080
- className: classNames69__default.default(
19092
+ className: classNames67__default.default(
19081
19093
  "w-6 h-6 bg-white dark:bg-gray-600 rounded-full shadow-md transition-transform duration-300",
19082
19094
  theme === "dark" ? "translate-x-8" : "translate-x-0"
19083
19095
  )
@@ -30846,7 +30858,7 @@ function Modal({
30846
30858
  "div",
30847
30859
  {
30848
30860
  ref: modalRef,
30849
- className: classNames69__default.default(
30861
+ className: classNames67__default.default(
30850
30862
  "eui-bg-md eui-shadow-lg border border-gray-700/80 w-fit h-fit",
30851
30863
  shapes[resolvedShape],
30852
30864
  styles
@@ -30858,7 +30870,7 @@ function Modal({
30858
30870
  "button",
30859
30871
  {
30860
30872
  type: "button",
30861
- className: classNames69__default.default(
30873
+ className: classNames67__default.default(
30862
30874
  "w-[60px] h-[60px] flex items-center justify-center transition-standard-fast",
30863
30875
  "hover:cursor-pointer hover:bg-eui-dark-500"
30864
30876
  ),
@@ -31250,7 +31262,7 @@ var ContentArea = React26.forwardRef(
31250
31262
  "div",
31251
31263
  {
31252
31264
  ref,
31253
- className: classNames69__default.default({
31265
+ className: classNames67__default.default({
31254
31266
  "min-h-screen h-full w-full transition-all duration-[200ms]": true,
31255
31267
  "py-3 px-5": !enablePadding,
31256
31268
  "py-3 px-5 lg:px-[150px]": enablePadding,
@@ -31267,7 +31279,7 @@ function FlexCol({ children: children3, gap = 3, styles }) {
31267
31279
  return /* @__PURE__ */ jsxRuntime.jsx(
31268
31280
  "div",
31269
31281
  {
31270
- className: classNames69__default.default({
31282
+ className: classNames67__default.default({
31271
31283
  [`flex flex-col gap-${gap}`]: true,
31272
31284
  [`${styles}`]: styles
31273
31285
  }),
@@ -31280,7 +31292,7 @@ function FlexRow({ children: children3, gap = 3, styles }) {
31280
31292
  return /* @__PURE__ */ jsxRuntime.jsx(
31281
31293
  "div",
31282
31294
  {
31283
- className: classNames69__default.default({
31295
+ className: classNames67__default.default({
31284
31296
  [`flex flex-row gap-${gap}`]: true,
31285
31297
  [`${styles}`]: styles
31286
31298
  }),
@@ -31299,7 +31311,7 @@ function Grid({ children: children3, styles }) {
31299
31311
  return /* @__PURE__ */ jsxRuntime.jsx(
31300
31312
  "div",
31301
31313
  {
31302
- className: classNames69__default.default({
31314
+ className: classNames67__default.default({
31303
31315
  [`grid`]: true,
31304
31316
  [`${styles}`]: styles
31305
31317
  }),
@@ -31316,7 +31328,7 @@ var Layout = ({
31316
31328
  return /* @__PURE__ */ jsxRuntime.jsx(
31317
31329
  "div",
31318
31330
  {
31319
- className: classNames69__default.default({
31331
+ className: classNames67__default.default({
31320
31332
  // "flex h-full w-screen bg-gray-100 overflow-auto": true,
31321
31333
  "flex bg-eui-light-600": true,
31322
31334
  "flex-col": flexDirection === "vertical",
@@ -31338,7 +31350,7 @@ var Header = ({
31338
31350
  return /* @__PURE__ */ jsxRuntime.jsx(
31339
31351
  "div",
31340
31352
  {
31341
- className: classNames69__default.default({
31353
+ className: classNames67__default.default({
31342
31354
  static: position4 === "static",
31343
31355
  fixed: position4 === "fixed",
31344
31356
  sticky: position4 === "sticky",
@@ -31373,7 +31385,7 @@ var Content = ({
31373
31385
  return /* @__PURE__ */ jsxRuntime.jsx(
31374
31386
  "div",
31375
31387
  {
31376
- className: classNames69__default.default({
31388
+ className: classNames67__default.default({
31377
31389
  "w-full min-h-screen transition-all duration-200 eui-bg-sm": true,
31378
31390
  "md:pl-[300px]": !overlayedSidebar && sidebarVisible && !isMobile,
31379
31391
  // Shift when sidebar is open (desktop)
@@ -31389,7 +31401,7 @@ var Footer = ({ children: children3, styles }) => {
31389
31401
  return /* @__PURE__ */ jsxRuntime.jsx(
31390
31402
  "div",
31391
31403
  {
31392
- className: classNames69__default.default({
31404
+ className: classNames67__default.default({
31393
31405
  "bottom-0 w-full h-fit": true,
31394
31406
  "border-t border-eui-dark-500/40 dark:border-eui-secondary-800 eui-bg-md": !styles,
31395
31407
  [`${styles}`]: styles
@@ -31577,7 +31589,7 @@ function ShowMore({ text: text10, limit }) {
31577
31589
  /* @__PURE__ */ jsxRuntime.jsx(
31578
31590
  "div",
31579
31591
  {
31580
- className: classNames69__default.default({
31592
+ className: classNames67__default.default({
31581
31593
  "text-blue-300 px-1 pb-1 mt-1": true,
31582
31594
  "bg-slate-900/70": !showMore,
31583
31595
  "bg-gradient-to-t from-slate-900/50 to-transparent": showMore
@@ -32493,7 +32505,7 @@ function DocumentationPanel({
32493
32505
  return /* @__PURE__ */ jsxRuntime.jsx(MarkdownProvider_default, { markdown: value, children: /* @__PURE__ */ jsxRuntime.jsxs(
32494
32506
  "section",
32495
32507
  {
32496
- className: classNames69__default.default(
32508
+ className: classNames67__default.default(
32497
32509
  "eui-documentation-panel",
32498
32510
  "min-h-0 overflow-hidden bg-white text-gray-900",
32499
32511
  "dark:bg-gray-950 dark:text-gray-100",
@@ -32507,7 +32519,7 @@ function DocumentationPanel({
32507
32519
  /* @__PURE__ */ jsxRuntime.jsx(
32508
32520
  "main",
32509
32521
  {
32510
- className: classNames69__default.default(
32522
+ className: classNames67__default.default(
32511
32523
  "eui-documentation-panel-viewer",
32512
32524
  "documentation-panel-scrollbar min-w-0 overflow-y-auto scroll-smooth",
32513
32525
  viewerClassName
@@ -32515,7 +32527,7 @@ function DocumentationPanel({
32515
32527
  children: /* @__PURE__ */ jsxRuntime.jsx(
32516
32528
  "div",
32517
32529
  {
32518
- className: classNames69__default.default(
32530
+ className: classNames67__default.default(
32519
32531
  "mx-auto px-5 py-8 sm:px-6 lg:px-8",
32520
32532
  contentMaxWidthClassName,
32521
32533
  contentClassName
@@ -32528,7 +32540,7 @@ function DocumentationPanel({
32528
32540
  toc ? /* @__PURE__ */ jsxRuntime.jsx(
32529
32541
  "aside",
32530
32542
  {
32531
- className: classNames69__default.default(
32543
+ className: classNames67__default.default(
32532
32544
  "eui-documentation-panel-toc",
32533
32545
  "hidden min-w-0 border-l border-gray-200 bg-white lg:block",
32534
32546
  "dark:border-gray-800 dark:bg-gray-950",
@@ -32537,7 +32549,7 @@ function DocumentationPanel({
32537
32549
  children: /* @__PURE__ */ jsxRuntime.jsx(
32538
32550
  "div",
32539
32551
  {
32540
- className: classNames69__default.default(
32552
+ className: classNames67__default.default(
32541
32553
  "documentation-panel-scrollbar h-full overflow-y-auto px-5 py-8"
32542
32554
  ),
32543
32555
  children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "sticky top-0", children: /* @__PURE__ */ jsxRuntime.jsx(MarkdownTOC_default, {}) })
@@ -32813,7 +32825,7 @@ function BoxNavItem({ icon, name: name2, to, selected, onClick }) {
32813
32825
  type: "button",
32814
32826
  onClick: handleClick,
32815
32827
  "aria-current": selected ? "page" : void 0,
32816
- className: classNames69__default.default(
32828
+ className: classNames67__default.default(
32817
32829
  "w-full min-w-[80px] flex flex-col items-center justify-center py-3 text-center",
32818
32830
  "hover:text-secondary-700 hover:bg-gray-300/10 hover:cursor-pointer",
32819
32831
  selected ? "text-eui-secondary-700 bg-gray-300/10" : "text-gray-400",
@@ -32857,6 +32869,323 @@ function BoxNav({ data = [], currentPath, onNavigate, navigate }) {
32857
32869
  }) });
32858
32870
  }
32859
32871
  var BoxNav_default = BoxNav;
32872
+ function FooterBrand({
32873
+ brand,
32874
+ brandSrc,
32875
+ brandAlt,
32876
+ className
32877
+ }) {
32878
+ if (brand) {
32879
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("inline-flex", className), children: brand });
32880
+ }
32881
+ return /* @__PURE__ */ jsxRuntime.jsx(Brand, { src: brandSrc, alt: brandAlt, className });
32882
+ }
32883
+ function FooterDescription({
32884
+ children: children3,
32885
+ className
32886
+ }) {
32887
+ if (!children3) return null;
32888
+ return /* @__PURE__ */ jsxRuntime.jsx(Paragraph, { level: 2, className: cn("max-w-sm text-sm", className), children: children3 });
32889
+ }
32890
+ function FooterSocial({ item, className }) {
32891
+ const { name: name2, href, icon, external = true, onClick } = item;
32892
+ return /* @__PURE__ */ jsxRuntime.jsx(
32893
+ "a",
32894
+ {
32895
+ href,
32896
+ onClick,
32897
+ target: external ? "_blank" : void 0,
32898
+ rel: external ? "noopener noreferrer" : void 0,
32899
+ "aria-label": name2,
32900
+ title: name2,
32901
+ className: cn(
32902
+ "flex h-9 w-9 items-center justify-center rounded-full text-base",
32903
+ "eui-text-md border border-eui-dark-500/30 dark:border-eui-light-600/30",
32904
+ "eui-theme-transition hover:brightness-125",
32905
+ "hover:bg-eui-dark-500/5 dark:hover:bg-eui-light-600/10",
32906
+ "focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-current",
32907
+ className
32908
+ ),
32909
+ children: icon
32910
+ }
32911
+ );
32912
+ }
32913
+ function FooterSocials({
32914
+ items,
32915
+ social,
32916
+ className,
32917
+ itemClassName
32918
+ }) {
32919
+ if (!items || items.length === 0) return null;
32920
+ const Social = social ?? FooterSocial;
32921
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("flex flex-wrap items-center gap-3", className), children: items.map((item, index3) => /* @__PURE__ */ jsxRuntime.jsx(
32922
+ Social,
32923
+ {
32924
+ item,
32925
+ className: itemClassName
32926
+ },
32927
+ item.key ?? item.name ?? item.href ?? index3
32928
+ )) });
32929
+ }
32930
+ function FooterLink({ item, navigate, className }) {
32931
+ const { label, to, icon, description, badge, external, onClick } = item;
32932
+ const useJsNav = Boolean(onClick) || Boolean(navigate) && Boolean(to);
32933
+ const handleClick = () => {
32934
+ if (onClick) {
32935
+ onClick();
32936
+ return;
32937
+ }
32938
+ if (to && navigate) navigate(to);
32939
+ };
32940
+ const link3 = /* @__PURE__ */ jsxRuntime.jsx(
32941
+ Link,
32942
+ {
32943
+ href: to || "#",
32944
+ target: external ? "blank" : "self",
32945
+ variant: "default",
32946
+ decoration: "noUnderline",
32947
+ onClick: useJsNav ? handleClick : void 0,
32948
+ styles: cn(
32949
+ "text-sm",
32950
+ !icon && !description && "block py-1",
32951
+ item.className,
32952
+ className
32953
+ ),
32954
+ children: label
32955
+ }
32956
+ );
32957
+ if (!icon && !description && !badge) return link3;
32958
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-start gap-3 py-1 text-sm", children: [
32959
+ icon && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "eui-text-sm mt-0.5 shrink-0 text-base", children: icon }),
32960
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex min-w-0 flex-col", children: [
32961
+ link3,
32962
+ description && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "eui-text-sm text-xs", children: description })
32963
+ ] }),
32964
+ badge && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "ml-auto", children: badge })
32965
+ ] });
32966
+ }
32967
+ function FooterColumn({
32968
+ column,
32969
+ navigate,
32970
+ link: link3,
32971
+ className,
32972
+ titleClassName,
32973
+ linkClassName
32974
+ }) {
32975
+ const Link2 = link3 ?? FooterLink;
32976
+ return /* @__PURE__ */ jsxRuntime.jsx(
32977
+ FooterNavGroup,
32978
+ {
32979
+ title: column.title,
32980
+ className,
32981
+ titleClassName,
32982
+ children: column.items.map((item, index3) => /* @__PURE__ */ jsxRuntime.jsx(
32983
+ Link2,
32984
+ {
32985
+ item,
32986
+ navigate,
32987
+ className: linkClassName
32988
+ },
32989
+ item.key ?? index3
32990
+ ))
32991
+ }
32992
+ );
32993
+ }
32994
+ var gridColsClassName = (count) => {
32995
+ const map3 = {
32996
+ 1: "grid-cols-1",
32997
+ 2: "grid-cols-2",
32998
+ 3: "grid-cols-2 sm:grid-cols-3",
32999
+ 4: "grid-cols-2 sm:grid-cols-4"
33000
+ };
33001
+ return map3[Math.min(Math.max(count, 1), 4)] ?? map3[4];
33002
+ };
33003
+ function FooterColumns({
33004
+ columns,
33005
+ navigate,
33006
+ column,
33007
+ link: link3,
33008
+ className,
33009
+ columnClassName,
33010
+ titleClassName,
33011
+ linkClassName
33012
+ }) {
33013
+ if (!columns || columns.length === 0) return null;
33014
+ const Column = column ?? FooterColumn;
33015
+ return /* @__PURE__ */ jsxRuntime.jsx(
33016
+ "div",
33017
+ {
33018
+ className: cn("grid gap-8", gridColsClassName(columns.length), className),
33019
+ children: columns.map((col, index3) => {
33020
+ const ColumnComponent = col.component ?? Column;
33021
+ return /* @__PURE__ */ jsxRuntime.jsx(
33022
+ ColumnComponent,
33023
+ {
33024
+ column: col,
33025
+ navigate,
33026
+ link: link3,
33027
+ className: cn(columnClassName, col.className),
33028
+ titleClassName,
33029
+ linkClassName
33030
+ },
33031
+ col.key ?? index3
33032
+ );
33033
+ })
33034
+ }
33035
+ );
33036
+ }
33037
+ function FooterBottom({
33038
+ copyright,
33039
+ legalLinks = [],
33040
+ bottomNote,
33041
+ navigate,
33042
+ classNames: classNames71
33043
+ }) {
33044
+ const hasLegal = legalLinks.length > 0;
33045
+ if (!copyright && !hasLegal && !bottomNote) return null;
33046
+ return /* @__PURE__ */ jsxRuntime.jsxs(
33047
+ "div",
33048
+ {
33049
+ className: cn(
33050
+ "mt-14 flex flex-col gap-4 pt-8",
33051
+ "border-t border-eui-dark-500/15 dark:border-eui-light-600/15",
33052
+ "md:flex-row md:items-center md:justify-between",
33053
+ classNames71?.bottom
33054
+ ),
33055
+ children: [
33056
+ copyright && /* @__PURE__ */ jsxRuntime.jsx(
33057
+ Caption,
33058
+ {
33059
+ className: cn("max-w-3xl leading-relaxed", classNames71?.copyright),
33060
+ children: copyright
33061
+ }
33062
+ ),
33063
+ (hasLegal || bottomNote) && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-wrap items-center gap-x-5 gap-y-2 md:justify-end", children: [
33064
+ legalLinks.map((item, index3) => {
33065
+ const useJsNav = Boolean(item.onClick) || Boolean(navigate) && Boolean(item.to);
33066
+ return /* @__PURE__ */ jsxRuntime.jsx(
33067
+ Link,
33068
+ {
33069
+ href: item.to || "#",
33070
+ target: item.external ? "blank" : "self",
33071
+ variant: "default",
33072
+ decoration: "noUnderline",
33073
+ onClick: useJsNav ? () => item.onClick ? item.onClick() : item.to && navigate?.(item.to) : void 0,
33074
+ styles: cn("whitespace-nowrap text-xs", classNames71?.legalLink),
33075
+ children: item.label
33076
+ },
33077
+ item.key ?? index3
33078
+ );
33079
+ }),
33080
+ bottomNote && /* @__PURE__ */ jsxRuntime.jsx(Caption, { children: bottomNote })
33081
+ ] })
33082
+ ]
33083
+ }
33084
+ );
33085
+ }
33086
+ function SiteFooter({
33087
+ brand,
33088
+ brandSrc,
33089
+ brandAlt,
33090
+ description,
33091
+ columns = [],
33092
+ socials = [],
33093
+ copyright,
33094
+ legalLinks = [],
33095
+ bottomNote,
33096
+ navigate,
33097
+ components,
33098
+ classNames: classNames71,
33099
+ className,
33100
+ styles,
33101
+ maxWidth = "max-w-7xl",
33102
+ showBrand = true,
33103
+ showColumns = true,
33104
+ showSocials = true,
33105
+ showBottom = true,
33106
+ children: children3
33107
+ }) {
33108
+ const Root = components?.root ?? Footer;
33109
+ const Container = components?.container;
33110
+ const BrandSlot = components?.brand ?? FooterBrand;
33111
+ const DescriptionSlot = components?.description ?? FooterDescription;
33112
+ const SocialsSlot = components?.socials ?? FooterSocials;
33113
+ const ColumnsSlot = components?.columns ?? FooterColumns;
33114
+ const BottomSlot = components?.bottom ?? FooterBottom;
33115
+ const hasBrandBlock = showBrand && (Boolean(brand) || Boolean(brandSrc) || Boolean(description) || showSocials && socials.length > 0);
33116
+ const hasColumns = showColumns && columns.length > 0;
33117
+ const brandBlock = hasBrandBlock ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("flex flex-col gap-6", classNames71?.brandBlock), children: [
33118
+ showBrand && (Boolean(brand) || Boolean(brandSrc)) && /* @__PURE__ */ jsxRuntime.jsx(BrandSlot, { brand, brandSrc, brandAlt }),
33119
+ description && /* @__PURE__ */ jsxRuntime.jsx(DescriptionSlot, { className: classNames71?.description, children: description }),
33120
+ showSocials && socials.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(
33121
+ SocialsSlot,
33122
+ {
33123
+ items: socials,
33124
+ social: components?.social,
33125
+ className: classNames71?.socials,
33126
+ itemClassName: classNames71?.social
33127
+ }
33128
+ )
33129
+ ] }) : null;
33130
+ const columnsBlock = hasColumns ? /* @__PURE__ */ jsxRuntime.jsx(
33131
+ ColumnsSlot,
33132
+ {
33133
+ columns,
33134
+ navigate,
33135
+ column: components?.column,
33136
+ link: components?.link,
33137
+ className: cn(classNames71?.columns, brandBlock && "lg:col-span-3"),
33138
+ columnClassName: classNames71?.column,
33139
+ titleClassName: classNames71?.columnTitle,
33140
+ linkClassName: classNames71?.link
33141
+ }
33142
+ ) : null;
33143
+ const topSection = children3 ?? (brandBlock || columnsBlock ? /* @__PURE__ */ jsxRuntime.jsxs(
33144
+ "div",
33145
+ {
33146
+ className: cn(
33147
+ "grid gap-12",
33148
+ brandBlock && columnsBlock && "lg:grid-cols-4",
33149
+ classNames71?.top
33150
+ ),
33151
+ children: [
33152
+ brandBlock,
33153
+ columnsBlock
33154
+ ]
33155
+ }
33156
+ ) : null);
33157
+ const content3 = /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
33158
+ topSection,
33159
+ showBottom && /* @__PURE__ */ jsxRuntime.jsx(
33160
+ BottomSlot,
33161
+ {
33162
+ copyright,
33163
+ legalLinks,
33164
+ bottomNote,
33165
+ navigate,
33166
+ classNames: classNames71
33167
+ }
33168
+ )
33169
+ ] });
33170
+ const containerClassName = cn(
33171
+ "mx-auto px-6 py-16 md:px-10 lg:px-16",
33172
+ maxWidth,
33173
+ classNames71?.container
33174
+ );
33175
+ return /* @__PURE__ */ jsxRuntime.jsx(Root, { styles: cn(styles, classNames71?.root, className), children: Container ? /* @__PURE__ */ jsxRuntime.jsx(Container, { className: containerClassName, children: content3 }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: containerClassName, children: content3 }) });
33176
+ }
33177
+
33178
+ // src/compositions/navigation/site-footer/index.tsx
33179
+ var SiteFooter2 = Object.assign(SiteFooter, {
33180
+ Brand: FooterBrand,
33181
+ Description: FooterDescription,
33182
+ Socials: FooterSocials,
33183
+ Social: FooterSocial,
33184
+ Columns: FooterColumns,
33185
+ Column: FooterColumn,
33186
+ Link: FooterLink,
33187
+ Bottom: FooterBottom
33188
+ });
32860
33189
  function Sidebar({
32861
33190
  items = [],
32862
33191
  navigate,
@@ -33157,7 +33486,7 @@ var TopNav = ({
33157
33486
  currentPath,
33158
33487
  navigate,
33159
33488
  components,
33160
- classNames: classNames73,
33489
+ classNames: classNames71,
33161
33490
  className
33162
33491
  }) => {
33163
33492
  const pathname = currentPath ?? (typeof window !== "undefined" ? window.location.pathname : "");
@@ -33209,8 +33538,8 @@ var TopNav = ({
33209
33538
  return /* @__PURE__ */ jsxRuntime.jsx(
33210
33539
  TNThemeProvider,
33211
33540
  {
33212
- value: { components: components || {}, classNames: classNames73 || {} },
33213
- children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("flex items-center", classNames73?.root, className), children: items.map(renderNode) })
33541
+ value: { components: components || {}, classNames: classNames71 || {} },
33542
+ children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("flex items-center", classNames71?.root, className), children: items.map(renderNode) })
33214
33543
  }
33215
33544
  );
33216
33545
  };
@@ -35393,11 +35722,11 @@ function addChildren(props, children3) {
35393
35722
  }
35394
35723
  }
35395
35724
  }
35396
- function productionCreate(_2, jsx256, jsxs127) {
35725
+ function productionCreate(_2, jsx265, jsxs130) {
35397
35726
  return create3;
35398
35727
  function create3(_3, type2, props, key) {
35399
35728
  const isStaticChildren = Array.isArray(props.children);
35400
- const fn = isStaticChildren ? jsxs127 : jsx256;
35729
+ const fn = isStaticChildren ? jsxs130 : jsx265;
35401
35730
  return key ? fn(type2, props, key) : fn(type2, props);
35402
35731
  }
35403
35732
  }
@@ -55428,7 +55757,7 @@ function MarkdownHeading({
55428
55757
  id: id2,
55429
55758
  level: typographyLevel,
55430
55759
  bold: true,
55431
- className: classNames69__default.default(
55760
+ className: classNames67__default.default(
55432
55761
  "eui-markdown-heading group relative scroll-mt-24 font-bold leading-tight text-gray-900 dark:text-gray-100",
55433
55762
  HEADING_STYLES[level],
55434
55763
  className
@@ -55591,18 +55920,18 @@ function powerSetPermutations(arr) {
55591
55920
  }
55592
55921
  }
55593
55922
  var classNameCombinations = {};
55594
- function getClassNameCombinations(classNames73) {
55595
- if (classNames73.length === 0 || classNames73.length === 1) return classNames73;
55596
- var key = classNames73.join(".");
55923
+ function getClassNameCombinations(classNames71) {
55924
+ if (classNames71.length === 0 || classNames71.length === 1) return classNames71;
55925
+ var key = classNames71.join(".");
55597
55926
  if (!classNameCombinations[key]) {
55598
- classNameCombinations[key] = powerSetPermutations(classNames73);
55927
+ classNameCombinations[key] = powerSetPermutations(classNames71);
55599
55928
  }
55600
55929
  return classNameCombinations[key];
55601
55930
  }
55602
- function createStyleObject(classNames73) {
55931
+ function createStyleObject(classNames71) {
55603
55932
  var elementStyle = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
55604
55933
  var stylesheet = arguments.length > 2 ? arguments[2] : void 0;
55605
- var nonTokenClassNames = classNames73.filter(function(className) {
55934
+ var nonTokenClassNames = classNames71.filter(function(className) {
55606
55935
  return className !== "token";
55607
55936
  });
55608
55937
  var classNamesCombinations = getClassNameCombinations(nonTokenClassNames);
@@ -55610,8 +55939,8 @@ function createStyleObject(classNames73) {
55610
55939
  return _objectSpread(_objectSpread({}, styleObject), stylesheet[className]);
55611
55940
  }, elementStyle);
55612
55941
  }
55613
- function createClassNameString(classNames73) {
55614
- return classNames73.join(" ");
55942
+ function createClassNameString(classNames71) {
55943
+ return classNames71.join(" ");
55615
55944
  }
55616
55945
  function createChildren2(stylesheet, useInlineStyles) {
55617
55946
  var childrenCount = 0;
@@ -55784,8 +56113,8 @@ function flattenCodeTree(tree) {
55784
56113
  }));
55785
56114
  } else if (node2.children) {
55786
56115
  var _node$properties;
55787
- var classNames73 = className.concat(((_node$properties = node2.properties) === null || _node$properties === void 0 ? void 0 : _node$properties.className) || []);
55788
- flattenCodeTree(node2.children, classNames73).forEach(function(i2) {
56116
+ var classNames71 = className.concat(((_node$properties = node2.properties) === null || _node$properties === void 0 ? void 0 : _node$properties.className) || []);
56117
+ flattenCodeTree(node2.children, classNames71).forEach(function(i2) {
55789
56118
  return newTree.push(i2);
55790
56119
  });
55791
56120
  }
@@ -56316,7 +56645,7 @@ var json_default = json;
56316
56645
 
56317
56646
  // node_modules/react-syntax-highlighter/dist/esm/languages/prism/jsx.js
56318
56647
  init_jsx();
56319
- var jsx_default = jsx217;
56648
+ var jsx_default = jsx226;
56320
56649
 
56321
56650
  // node_modules/react-syntax-highlighter/dist/esm/languages/prism/markup.js
56322
56651
  init_markup();
@@ -56449,7 +56778,7 @@ function MarkdownCodeBlock({
56449
56778
  "div",
56450
56779
  {
56451
56780
  ...props,
56452
- className: classNames69__default.default(
56781
+ className: classNames67__default.default(
56453
56782
  "eui-markdown-code my-6 overflow-hidden rounded-md border border-slate-700 bg-[#0d1117] text-slate-300",
56454
56783
  className
56455
56784
  ),
@@ -56520,7 +56849,7 @@ function MarkdownInlineCode({
56520
56849
  Code,
56521
56850
  {
56522
56851
  ...props,
56523
- className: classNames69__default.default(
56852
+ className: classNames67__default.default(
56524
56853
  "eui-markdown-inline-code whitespace-break-spaces rounded-md border border-gray-300/70 bg-gray-200/60 px-1.5 py-0.5 font-mono text-[0.875em] font-medium text-gray-900 dark:border-gray-600/70 dark:bg-gray-700/50 dark:text-gray-200",
56525
56854
  className
56526
56855
  ),
@@ -56561,7 +56890,7 @@ function MarkdownLink({
56561
56890
  href: safeHref,
56562
56891
  target: resolvedTarget,
56563
56892
  rel,
56564
- className: classNames69__default.default(
56893
+ className: classNames67__default.default(
56565
56894
  "eui-markdown-link font-medium text-blue-600 underline underline-offset-4 transition-colors hover:text-blue-700 dark:text-blue-400 dark:hover:text-blue-300",
56566
56895
  className
56567
56896
  ),
@@ -56596,7 +56925,7 @@ function MarkdownImage({
56596
56925
  title,
56597
56926
  loading: "lazy",
56598
56927
  decoding: "async",
56599
- className: classNames69__default.default(
56928
+ className: classNames67__default.default(
56600
56929
  "eui-markdown-image my-6 h-auto max-w-full rounded-md border border-gray-200 dark:border-gray-700",
56601
56930
  className
56602
56931
  )
@@ -56613,7 +56942,7 @@ function MarkdownTable({
56613
56942
  TableElement,
56614
56943
  {
56615
56944
  ...props,
56616
- className: classNames69__default.default(
56945
+ className: classNames67__default.default(
56617
56946
  "eui-markdown-table w-full border-collapse text-[0.925rem]",
56618
56947
  className
56619
56948
  ),
@@ -56630,7 +56959,7 @@ function MarkdownTableCell({
56630
56959
  TableCell,
56631
56960
  {
56632
56961
  ...props,
56633
- className: classNames69__default.default(
56962
+ className: classNames67__default.default(
56634
56963
  "eui-markdown-table-cell border-b border-r border-gray-200 p-3 text-left align-top last:border-r-0 dark:border-gray-700",
56635
56964
  className
56636
56965
  ),
@@ -56647,7 +56976,7 @@ function MarkdownTableHeaderCell({
56647
56976
  TableHeaderCell,
56648
56977
  {
56649
56978
  ...props,
56650
- className: classNames69__default.default(
56979
+ className: classNames67__default.default(
56651
56980
  "eui-markdown-table-header-cell border-b border-r border-gray-200 p-3 text-left align-top font-bold text-gray-900 last:border-r-0 dark:border-gray-700 dark:text-gray-100",
56652
56981
  className
56653
56982
  ),
@@ -56663,7 +56992,7 @@ function MarkdownTableHead({
56663
56992
  TableHead,
56664
56993
  {
56665
56994
  ...props,
56666
- className: classNames69__default.default(
56995
+ className: classNames67__default.default(
56667
56996
  "eui-markdown-table-head bg-gray-50 dark:bg-gray-900",
56668
56997
  className
56669
56998
  )
@@ -56678,7 +57007,7 @@ function MarkdownTableBody({
56678
57007
  TableBody,
56679
57008
  {
56680
57009
  ...props,
56681
- className: classNames69__default.default("eui-markdown-table-body", className)
57010
+ className: classNames67__default.default("eui-markdown-table-body", className)
56682
57011
  }
56683
57012
  );
56684
57013
  }
@@ -56690,7 +57019,7 @@ function MarkdownTableRow({
56690
57019
  TableRow,
56691
57020
  {
56692
57021
  ...props,
56693
- className: classNames69__default.default(
57022
+ className: classNames67__default.default(
56694
57023
  "eui-markdown-table-row even:bg-gray-50/70 dark:even:bg-gray-900/60",
56695
57024
  className
56696
57025
  )
@@ -56708,7 +57037,7 @@ function MarkdownBlockquote({
56708
57037
  {
56709
57038
  ...props,
56710
57039
  as: "blockquote",
56711
- className: classNames69__default.default(
57040
+ className: classNames67__default.default(
56712
57041
  "eui-markdown-blockquote my-6 border-l-4 border-gray-300 bg-transparent px-4 py-0 text-gray-600 [&>*:first-child]:mt-0 [&>*:last-child]:mb-0 dark:border-gray-700 dark:text-gray-400",
56713
57042
  className
56714
57043
  ),
@@ -56727,7 +57056,7 @@ function MarkdownParagraph({
56727
57056
  {
56728
57057
  ...props,
56729
57058
  level: 1,
56730
- className: classNames69__default.default("eui-markdown-paragraph my-4", className),
57059
+ className: classNames67__default.default("eui-markdown-paragraph my-4", className),
56731
57060
  children: /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: children3 })
56732
57061
  }
56733
57062
  );
@@ -56738,7 +57067,7 @@ function MarkdownStrong({ className, ...props }) {
56738
57067
  "strong",
56739
57068
  {
56740
57069
  ...props,
56741
- className: classNames69__default.default(
57070
+ className: classNames67__default.default(
56742
57071
  "eui-markdown-strong font-semibold text-gray-950 dark:text-gray-100",
56743
57072
  className
56744
57073
  )
@@ -56751,7 +57080,7 @@ function MarkdownEmphasis({ className, ...props }) {
56751
57080
  "em",
56752
57081
  {
56753
57082
  ...props,
56754
- className: classNames69__default.default("eui-markdown-emphasis italic", className)
57083
+ className: classNames67__default.default("eui-markdown-emphasis italic", className)
56755
57084
  }
56756
57085
  );
56757
57086
  }
@@ -56764,7 +57093,7 @@ function MarkdownStrikethrough({
56764
57093
  "del",
56765
57094
  {
56766
57095
  ...props,
56767
- className: classNames69__default.default(
57096
+ className: classNames67__default.default(
56768
57097
  "eui-markdown-strikethrough text-gray-500 dark:text-gray-400",
56769
57098
  className
56770
57099
  )
@@ -56825,7 +57154,7 @@ function MarkdownTaskCheckbox({
56825
57154
  "input",
56826
57155
  {
56827
57156
  ...props,
56828
- className: classNames69__default.default(
57157
+ className: classNames67__default.default(
56829
57158
  "eui-markdown-task-checkbox mr-2 translate-y-px accent-blue-600",
56830
57159
  className
56831
57160
  )
@@ -56841,7 +57170,7 @@ function MarkdownThematicBreak({
56841
57170
  "hr",
56842
57171
  {
56843
57172
  ...props,
56844
- className: classNames69__default.default(
57173
+ className: classNames67__default.default(
56845
57174
  "eui-markdown-thematic-break my-8 border-0 border-t border-gray-200 dark:border-gray-800",
56846
57175
  className
56847
57176
  )
@@ -56858,7 +57187,7 @@ function MarkdownDetails({ className, ...props }) {
56858
57187
  "details",
56859
57188
  {
56860
57189
  ...props,
56861
- className: classNames69__default.default(
57190
+ className: classNames67__default.default(
56862
57191
  "eui-markdown-details my-4 rounded-md border border-gray-200 bg-gray-50 px-4 py-3 dark:border-gray-800 dark:bg-gray-900",
56863
57192
  className
56864
57193
  )
@@ -56870,7 +57199,7 @@ function MarkdownSummary({ className, ...props }) {
56870
57199
  "summary",
56871
57200
  {
56872
57201
  ...props,
56873
- className: classNames69__default.default(
57202
+ className: classNames67__default.default(
56874
57203
  "eui-markdown-summary cursor-pointer font-semibold text-gray-950 dark:text-gray-100",
56875
57204
  className
56876
57205
  )
@@ -56882,7 +57211,7 @@ function MarkdownFigure({ className, ...props }) {
56882
57211
  "figure",
56883
57212
  {
56884
57213
  ...props,
56885
- className: classNames69__default.default("eui-markdown-figure my-6", className)
57214
+ className: classNames67__default.default("eui-markdown-figure my-6", className)
56886
57215
  }
56887
57216
  );
56888
57217
  }
@@ -56894,7 +57223,7 @@ function MarkdownFigcaption({
56894
57223
  return /* @__PURE__ */ jsxRuntime.jsx("figcaption", { ...props, className: "eui-markdown-figcaption mt-2 text-center", children: /* @__PURE__ */ jsxRuntime.jsx(
56895
57224
  Caption,
56896
57225
  {
56897
- className: classNames69__default.default(
57226
+ className: classNames67__default.default(
56898
57227
  "text-gray-500 opacity-100 dark:text-gray-400",
56899
57228
  className
56900
57229
  ),
@@ -57293,14 +57622,14 @@ function MarkdownRenderer({
57293
57622
  return /* @__PURE__ */ jsxRuntime.jsx(
57294
57623
  "div",
57295
57624
  {
57296
- className: classNames69__default.default(
57625
+ className: classNames67__default.default(
57297
57626
  "eui-markdown markdown-body break-words bg-transparent text-[0.95rem] leading-7 text-gray-800 dark:text-gray-300",
57298
57627
  className
57299
57628
  ),
57300
57629
  children: /* @__PURE__ */ jsxRuntime.jsx(
57301
57630
  "div",
57302
57631
  {
57303
- className: classNames69__default.default(
57632
+ className: classNames67__default.default(
57304
57633
  "[&>*:first-child]:mt-0 [&>*:last-child]:mb-0",
57305
57634
  contentClassName
57306
57635
  ),
@@ -57378,11 +57707,11 @@ function MarkdownTOCItem({
57378
57707
  onClick: () => onSelect?.(heading3),
57379
57708
  "aria-current": active ? "location" : void 0,
57380
57709
  title: label,
57381
- className: classNames69__default.default(
57710
+ className: classNames67__default.default(
57382
57711
  "eui-markdown-toc-item",
57383
57712
  "block w-full text-left text-sm transition-all ease-in-out duration-150",
57384
57713
  "hover:text-primary",
57385
- active ? classNames69__default.default("text-primary font-semibold underline", activeClassName) : classNames69__default.default("text-gray-500 dark:text-gray-400", inactiveClassName),
57714
+ active ? classNames67__default.default("text-primary font-semibold underline", activeClassName) : classNames67__default.default("text-gray-500 dark:text-gray-400", inactiveClassName),
57386
57715
  className
57387
57716
  ),
57388
57717
  style: {
@@ -57448,7 +57777,7 @@ function MarkdownTOC({
57448
57777
  return emptyState ? /* @__PURE__ */ jsxRuntime.jsx(
57449
57778
  "div",
57450
57779
  {
57451
- className: classNames69__default.default(
57780
+ className: classNames67__default.default(
57452
57781
  "eui-markdown-toc",
57453
57782
  "text-sm text-gray-500 dark:text-gray-400",
57454
57783
  className
@@ -57468,7 +57797,7 @@ function MarkdownTOC({
57468
57797
  {
57469
57798
  type: "button",
57470
57799
  onClick: () => setCollapsed((value) => !value),
57471
- className: classNames69__default.default(
57800
+ className: classNames67__default.default(
57472
57801
  "eui-markdown-toc-title",
57473
57802
  "flex w-full items-center justify-between gap-2 text-left",
57474
57803
  "text-sm font-semibold uppercase tracking-wide",
@@ -57481,7 +57810,7 @@ function MarkdownTOC({
57481
57810
  /* @__PURE__ */ jsxRuntime.jsx(
57482
57811
  "span",
57483
57812
  {
57484
- className: classNames69__default.default(
57813
+ className: classNames67__default.default(
57485
57814
  "text-xs opacity-60 transition-transform duration-150",
57486
57815
  !collapsed && "rotate-90"
57487
57816
  ),
@@ -57494,7 +57823,7 @@ function MarkdownTOC({
57494
57823
  ) : /* @__PURE__ */ jsxRuntime.jsx(
57495
57824
  "h2",
57496
57825
  {
57497
- className: classNames69__default.default(
57826
+ className: classNames67__default.default(
57498
57827
  "eui-markdown-toc-title",
57499
57828
  "text-sm font-semibold uppercase tracking-wide",
57500
57829
  "text-gray-900 dark:text-gray-100",
@@ -57506,7 +57835,7 @@ function MarkdownTOC({
57506
57835
  !collapsed ? /* @__PURE__ */ jsxRuntime.jsx(
57507
57836
  "nav",
57508
57837
  {
57509
- className: classNames69__default.default(
57838
+ className: classNames67__default.default(
57510
57839
  "eui-markdown-toc-list",
57511
57840
  "space-y-1",
57512
57841
  listClassName
@@ -57530,7 +57859,7 @@ function MarkdownTOC({
57530
57859
  }
57531
57860
  ) : null
57532
57861
  ] });
57533
- return /* @__PURE__ */ jsxRuntime.jsx("aside", { className: classNames69__default.default("eui-markdown-toc", "space-y-4", className), children: content3 });
57862
+ return /* @__PURE__ */ jsxRuntime.jsx("aside", { className: classNames67__default.default("eui-markdown-toc", "space-y-4", className), children: content3 });
57534
57863
  }
57535
57864
  var MarkdownTOC_default = MarkdownTOC;
57536
57865
  var DEFAULT_MARKDOWN_TOOLBAR_ACTIONS = [
@@ -57629,7 +57958,7 @@ function MarkdownToolbar({
57629
57958
  return /* @__PURE__ */ jsxRuntime.jsxs(
57630
57959
  "div",
57631
57960
  {
57632
- className: classNames69__default.default(
57961
+ className: classNames67__default.default(
57633
57962
  "eui-markdown-toolbar",
57634
57963
  "flex flex-wrap items-center gap-1 border-b border-gray-200 bg-gray-50 p-2",
57635
57964
  "dark:border-gray-700 dark:bg-gray-900",
@@ -57643,7 +57972,7 @@ function MarkdownToolbar({
57643
57972
  disabled: disabled || actionsDisabled,
57644
57973
  title: action.shortcut ? `${action.title || action.label} (${action.shortcut})` : action.title || action.label,
57645
57974
  onClick: () => onAction?.(action.id),
57646
- className: classNames69__default.default(
57975
+ className: classNames67__default.default(
57647
57976
  "eui-markdown-toolbar-button",
57648
57977
  "inline-flex items-center justify-center rounded border border-transparent",
57649
57978
  "text-gray-700 transition-colors hover:border-gray-300 hover:bg-white",
@@ -57663,7 +57992,7 @@ function MarkdownToolbar({
57663
57992
  disabled,
57664
57993
  onClick: onViewModeToggle,
57665
57994
  title: isPreviewMode ? "Switch to Markdown syntax" : "Switch to preview",
57666
- className: classNames69__default.default(
57995
+ className: classNames67__default.default(
57667
57996
  "eui-markdown-view-toggle",
57668
57997
  "inline-flex items-center justify-center rounded border font-medium transition-colors",
57669
57998
  "border-gray-300 bg-white text-gray-700 hover:bg-gray-100",
@@ -57920,7 +58249,7 @@ function MarkdownSourceEditor({
57920
58249
  return /* @__PURE__ */ jsxRuntime.jsxs(
57921
58250
  "div",
57922
58251
  {
57923
- className: classNames69__default.default(
58252
+ className: classNames67__default.default(
57924
58253
  "eui-markdown-editor",
57925
58254
  "overflow-hidden rounded border border-gray-300 bg-white",
57926
58255
  "dark:border-gray-700 dark:bg-gray-950",
@@ -57936,7 +58265,7 @@ function MarkdownSourceEditor({
57936
58265
  actionsDisabled: readOnly,
57937
58266
  viewMode: currentViewMode,
57938
58267
  showViewModeToggle,
57939
- className: classNames69__default.default(toolbarClassName, toolbarProps?.className),
58268
+ className: classNames67__default.default(toolbarClassName, toolbarProps?.className),
57940
58269
  onViewModeToggle: toggleViewMode,
57941
58270
  onAction: handleToolbarAction
57942
58271
  }
@@ -57944,7 +58273,7 @@ function MarkdownSourceEditor({
57944
58273
  currentViewMode === "preview" ? /* @__PURE__ */ jsxRuntime.jsx(
57945
58274
  "div",
57946
58275
  {
57947
- className: classNames69__default.default(
58276
+ className: classNames67__default.default(
57948
58277
  "eui-markdown-editor-preview",
57949
58278
  "min-h-[260px] p-4",
57950
58279
  previewClassName
@@ -57967,7 +58296,7 @@ function MarkdownSourceEditor({
57967
58296
  onChange: (event) => updateValue(event.target.value),
57968
58297
  onBlur,
57969
58298
  onKeyDown: handleKeyDown,
57970
- className: classNames69__default.default(
58299
+ className: classNames67__default.default(
57971
58300
  "eui-markdown-source-textarea",
57972
58301
  "block w-full resize-y border-0 bg-transparent p-4 font-mono text-sm leading-7",
57973
58302
  "text-gray-900 outline-none placeholder:text-gray-400",
@@ -57997,7 +58326,7 @@ function MarkdownPreviewPane({
57997
58326
  return /* @__PURE__ */ jsxRuntime.jsx(
57998
58327
  "div",
57999
58328
  {
58000
- className: classNames69__default.default(
58329
+ className: classNames67__default.default(
58001
58330
  "eui-markdown-preview-pane",
58002
58331
  "rounded border border-gray-300 bg-white p-4",
58003
58332
  "dark:border-gray-700 dark:bg-gray-950",
@@ -58047,7 +58376,7 @@ function MarkdownSplitEditor({
58047
58376
  return /* @__PURE__ */ jsxRuntime.jsxs(
58048
58377
  "div",
58049
58378
  {
58050
- className: classNames69__default.default(
58379
+ className: classNames67__default.default(
58051
58380
  "eui-markdown-split-editor",
58052
58381
  "grid gap-4",
58053
58382
  isHorizontal ? "grid-cols-1 lg:grid-cols-2" : "grid-cols-1",
@@ -58057,7 +58386,7 @@ function MarkdownSplitEditor({
58057
58386
  /* @__PURE__ */ jsxRuntime.jsxs(
58058
58387
  "div",
58059
58388
  {
58060
- className: classNames69__default.default(
58389
+ className: classNames67__default.default(
58061
58390
  "eui-markdown-split-source",
58062
58391
  "min-w-0 space-y-2",
58063
58392
  sourceWrapperClassName
@@ -58081,7 +58410,7 @@ function MarkdownSplitEditor({
58081
58410
  /* @__PURE__ */ jsxRuntime.jsxs(
58082
58411
  "div",
58083
58412
  {
58084
- className: classNames69__default.default(
58413
+ className: classNames67__default.default(
58085
58414
  "eui-markdown-split-preview",
58086
58415
  "min-w-0 space-y-2",
58087
58416
  previewWrapperClassName
@@ -58171,7 +58500,7 @@ function MarkdownField({
58171
58500
  return /* @__PURE__ */ jsxRuntime.jsxs(
58172
58501
  "div",
58173
58502
  {
58174
- className: classNames69__default.default(
58503
+ className: classNames67__default.default(
58175
58504
  "eui-markdown-field",
58176
58505
  "relative space-y-2",
58177
58506
  wrapperClassName
@@ -58181,7 +58510,7 @@ function MarkdownField({
58181
58510
  "label",
58182
58511
  {
58183
58512
  htmlFor: editorProps.id || field.name,
58184
- className: classNames69__default.default(
58513
+ className: classNames67__default.default(
58185
58514
  "block text-sm font-medium text-gray-700 dark:text-gray-200",
58186
58515
  labelClassName
58187
58516
  ),
@@ -58206,7 +58535,7 @@ function MarkdownField({
58206
58535
  helperText && !hasError ? /* @__PURE__ */ jsxRuntime.jsx(
58207
58536
  "p",
58208
58537
  {
58209
- className: classNames69__default.default(
58538
+ className: classNames67__default.default(
58210
58539
  "text-sm text-gray-500 dark:text-gray-400",
58211
58540
  helperTextClassName
58212
58541
  ),
@@ -58261,7 +58590,7 @@ function CodeMirrorMarkdownEditor({
58261
58590
  {
58262
58591
  id: id2,
58263
58592
  "data-name": name2,
58264
- className: classNames69__default.default(
58593
+ className: classNames67__default.default(
58265
58594
  "eui-markdown-adapter",
58266
58595
  "eui-markdown-codemirror-adapter",
58267
58596
  "overflow-hidden rounded border border-gray-300 bg-white",
@@ -58295,7 +58624,7 @@ function CodeMirrorMarkdownEditor({
58295
58624
  closeBrackets: true,
58296
58625
  bracketMatching: true
58297
58626
  },
58298
- className: classNames69__default.default("eui-markdown-codemirror", editorClassName),
58627
+ className: classNames67__default.default("eui-markdown-codemirror", editorClassName),
58299
58628
  onChange: updateValue,
58300
58629
  onBlur
58301
58630
  }
@@ -58396,7 +58725,7 @@ function createDefaultPlugins({
58396
58725
  ...showToolbar ? [
58397
58726
  editor.toolbarPlugin({
58398
58727
  toolbarContents: toolbarContents ?? DefaultToolbar,
58399
- toolbarClassName: classNames69__default.default(
58728
+ toolbarClassName: classNames67__default.default(
58400
58729
  "eui-markdown-mdx-toolbar",
58401
58730
  toolbarClassName
58402
58731
  ),
@@ -58516,7 +58845,7 @@ var MDXMarkdownEditor = React26.forwardRef(
58516
58845
  "aria-invalid": invalid || void 0,
58517
58846
  "data-theme": dark ? "dark" : void 0,
58518
58847
  onBlurCapture: handleBlur,
58519
- className: classNames69__default.default(
58848
+ className: classNames67__default.default(
58520
58849
  "eui-markdown-adapter",
58521
58850
  "eui-markdown-mdx-adapter",
58522
58851
  dark && ["dark", "dark-theme"],
@@ -58534,12 +58863,12 @@ var MDXMarkdownEditor = React26.forwardRef(
58534
58863
  markdown: currentValue ?? "",
58535
58864
  readOnly: disabled || readOnly,
58536
58865
  plugins: plugins ?? defaultPlugins,
58537
- className: classNames69__default.default(
58866
+ className: classNames67__default.default(
58538
58867
  "eui-markdown-mdx-editor",
58539
58868
  dark && ["dark", "dark-theme"],
58540
58869
  editorClassName
58541
58870
  ),
58542
- contentEditableClassName: classNames69__default.default(
58871
+ contentEditableClassName: classNames67__default.default(
58543
58872
  "eui-markdown-mdx-content",
58544
58873
  contentEditableClassName
58545
58874
  ),
@@ -58576,7 +58905,7 @@ function MDXMarkdownField({
58576
58905
  return /* @__PURE__ */ jsxRuntime.jsxs(
58577
58906
  "div",
58578
58907
  {
58579
- className: classNames69__default.default(
58908
+ className: classNames67__default.default(
58580
58909
  "eui-markdown-mdx-field",
58581
58910
  "relative space-y-2",
58582
58911
  wrapperClassName
@@ -58586,7 +58915,7 @@ function MDXMarkdownField({
58586
58915
  "label",
58587
58916
  {
58588
58917
  htmlFor: editorId,
58589
- className: classNames69__default.default(
58918
+ className: classNames67__default.default(
58590
58919
  "block text-sm font-medium text-gray-700 dark:text-gray-200",
58591
58920
  labelClassName
58592
58921
  ),
@@ -58620,7 +58949,7 @@ function MDXMarkdownField({
58620
58949
  "p",
58621
58950
  {
58622
58951
  id: helperId,
58623
- className: classNames69__default.default(
58952
+ className: classNames67__default.default(
58624
58953
  "text-sm text-gray-500 dark:text-gray-400",
58625
58954
  helperTextClassName
58626
58955
  ),
@@ -58680,10 +59009,10 @@ function MarkdownLayout({
58680
59009
  };
58681
59010
  const hasLeftToc = hasToc && tocPosition === "left";
58682
59011
  const hasRightToc = hasToc && tocPosition === "right";
58683
- return /* @__PURE__ */ jsxRuntime.jsx("div", { className: classNames69__default.default("eui-markdown-layout", "w-full", className), children: /* @__PURE__ */ jsxRuntime.jsxs(
59012
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: classNames67__default.default("eui-markdown-layout", "w-full", className), children: /* @__PURE__ */ jsxRuntime.jsxs(
58684
59013
  "div",
58685
59014
  {
58686
- className: classNames69__default.default(
59015
+ className: classNames67__default.default(
58687
59016
  "eui-markdown-layout-container",
58688
59017
  "mx-auto w-full px-4 sm:px-6 lg:px-8",
58689
59018
  containerClassName
@@ -58695,7 +59024,7 @@ function MarkdownLayout({
58695
59024
  header ? /* @__PURE__ */ jsxRuntime.jsx(
58696
59025
  "header",
58697
59026
  {
58698
- className: classNames69__default.default(
59027
+ className: classNames67__default.default(
58699
59028
  "eui-markdown-layout-header",
58700
59029
  "mb-8",
58701
59030
  headerClassName
@@ -58706,7 +59035,7 @@ function MarkdownLayout({
58706
59035
  /* @__PURE__ */ jsxRuntime.jsxs(
58707
59036
  "div",
58708
59037
  {
58709
- className: classNames69__default.default(
59038
+ className: classNames67__default.default(
58710
59039
  "eui-markdown-layout-grid",
58711
59040
  "grid grid-cols-1 gap-8",
58712
59041
  hasSidebar && hasToc && "xl:grid-cols-[16rem_minmax(0,1fr)_18rem]",
@@ -58719,7 +59048,7 @@ function MarkdownLayout({
58719
59048
  hasSidebar ? /* @__PURE__ */ jsxRuntime.jsx(
58720
59049
  "aside",
58721
59050
  {
58722
- className: classNames69__default.default(
59051
+ className: classNames67__default.default(
58723
59052
  "eui-markdown-layout-sidebar",
58724
59053
  "min-w-0",
58725
59054
  stickySidebar && "lg:sticky lg:self-start",
@@ -58732,7 +59061,7 @@ function MarkdownLayout({
58732
59061
  hasLeftToc ? /* @__PURE__ */ jsxRuntime.jsx(
58733
59062
  "aside",
58734
59063
  {
58735
- className: classNames69__default.default(
59064
+ className: classNames67__default.default(
58736
59065
  "eui-markdown-layout-toc",
58737
59066
  "min-w-0",
58738
59067
  stickyToc && "lg:sticky lg:self-start",
@@ -58745,7 +59074,7 @@ function MarkdownLayout({
58745
59074
  /* @__PURE__ */ jsxRuntime.jsx(
58746
59075
  "main",
58747
59076
  {
58748
- className: classNames69__default.default(
59077
+ className: classNames67__default.default(
58749
59078
  "eui-markdown-layout-content",
58750
59079
  "min-w-0",
58751
59080
  contentClassName
@@ -58756,7 +59085,7 @@ function MarkdownLayout({
58756
59085
  hasRightToc ? /* @__PURE__ */ jsxRuntime.jsx(
58757
59086
  "aside",
58758
59087
  {
58759
- className: classNames69__default.default(
59088
+ className: classNames67__default.default(
58760
59089
  "eui-markdown-layout-toc",
58761
59090
  "min-w-0",
58762
59091
  stickyToc && "lg:sticky lg:self-start",
@@ -58769,7 +59098,7 @@ function MarkdownLayout({
58769
59098
  hasAside ? /* @__PURE__ */ jsxRuntime.jsx(
58770
59099
  "aside",
58771
59100
  {
58772
- className: classNames69__default.default(
59101
+ className: classNames67__default.default(
58773
59102
  "eui-markdown-layout-aside",
58774
59103
  "min-w-0",
58775
59104
  stickyAside && "2xl:sticky 2xl:self-start",
@@ -58785,7 +59114,7 @@ function MarkdownLayout({
58785
59114
  footer2 ? /* @__PURE__ */ jsxRuntime.jsx(
58786
59115
  "footer",
58787
59116
  {
58788
- className: classNames69__default.default(
59117
+ className: classNames67__default.default(
58789
59118
  "eui-markdown-layout-footer",
58790
59119
  "mt-10",
58791
59120
  footerClassName
@@ -58822,7 +59151,7 @@ function MarkdownDocsLayoutContent({
58822
59151
  const resolvedHeader = header ?? (title || description || headerActions ? /* @__PURE__ */ jsxRuntime.jsx(
58823
59152
  "div",
58824
59153
  {
58825
- className: classNames69__default.default(
59154
+ className: classNames67__default.default(
58826
59155
  "eui-markdown-docs-header",
58827
59156
  "flex flex-col gap-4 border-b border-gray-200 pb-6",
58828
59157
  "dark:border-gray-700",
@@ -58833,7 +59162,7 @@ function MarkdownDocsLayoutContent({
58833
59162
  title ? /* @__PURE__ */ jsxRuntime.jsx(
58834
59163
  "h1",
58835
59164
  {
58836
- className: classNames69__default.default(
59165
+ className: classNames67__default.default(
58837
59166
  "eui-markdown-docs-title",
58838
59167
  "text-3xl font-bold tracking-tight text-gray-950",
58839
59168
  "dark:text-gray-50",
@@ -58845,7 +59174,7 @@ function MarkdownDocsLayoutContent({
58845
59174
  description ? /* @__PURE__ */ jsxRuntime.jsx(
58846
59175
  "div",
58847
59176
  {
58848
- className: classNames69__default.default(
59177
+ className: classNames67__default.default(
58849
59178
  "eui-markdown-docs-description",
58850
59179
  "max-w-3xl text-base leading-7 text-gray-600",
58851
59180
  "dark:text-gray-400",
@@ -58933,7 +59262,7 @@ function GenericLayout({
58933
59262
  return /* @__PURE__ */ jsxRuntime.jsx(ThemeProvider, { defaultTheme, children: /* @__PURE__ */ jsxRuntime.jsx(
58934
59263
  "div",
58935
59264
  {
58936
- className: classNames69__default.default({
59265
+ className: classNames67__default.default({
58937
59266
  [`${styles}`]: styles
58938
59267
  }),
58939
59268
  children: children3
@@ -58982,7 +59311,7 @@ function SidemenuLayout({ data, children: children3 }) {
58982
59311
  return /* @__PURE__ */ jsxRuntime.jsx(DefaultLayout_default, { children: /* @__PURE__ */ jsxRuntime.jsxs(
58983
59312
  "div",
58984
59313
  {
58985
- className: classNames69__default.default({
59314
+ className: classNames67__default.default({
58986
59315
  grid: true,
58987
59316
  "grid-cols-7 gap-10": !isMobile,
58988
59317
  "grid-cols-1 gap-": isMobile
@@ -59165,11 +59494,19 @@ exports.Flex = Flex;
59165
59494
  exports.FlexCol = FlexCol_default;
59166
59495
  exports.FlexRow = FlexRow_default;
59167
59496
  exports.Footer = Footer;
59497
+ exports.FooterBottom = FooterBottom;
59498
+ exports.FooterBrand = FooterBrand;
59499
+ exports.FooterColumn = FooterColumn;
59500
+ exports.FooterColumns = FooterColumns;
59501
+ exports.FooterDescription = FooterDescription;
59502
+ exports.FooterLink = FooterLink;
59168
59503
  exports.FooterNav = FooterNav_default;
59169
59504
  exports.FooterNavGroup = FooterNavGroup_default;
59170
59505
  exports.FooterNavItem = FooterNavItem;
59171
59506
  exports.FooterNavItemContext = FooterNavItemContext;
59172
59507
  exports.FooterNavItemTitle = FooterNavItemTitle;
59508
+ exports.FooterSocial = FooterSocial;
59509
+ exports.FooterSocials = FooterSocials;
59173
59510
  exports.Form = Form;
59174
59511
  exports.FormResponse = FormResponse;
59175
59512
  exports.GaugePlot = GaugePlot;
@@ -59282,6 +59619,7 @@ exports.ShowMore = ShowMore_default;
59282
59619
  exports.Sidebar = Sidebar_default;
59283
59620
  exports.SidebarLayout = SidebarLayout_default;
59284
59621
  exports.SidemenuLayout = SidemenuLayout_default;
59622
+ exports.SiteFooter = SiteFooter2;
59285
59623
  exports.Skeleton = Skeleton;
59286
59624
  exports.Slider = Slider_default;
59287
59625
  exports.Spinner = Spinner;