@mintlify/components 1.0.0 → 1.0.2

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 (237) hide show
  1. package/dist/components/accordion/accordion-cover.d.ts +12 -0
  2. package/dist/components/accordion/accordion-cover.d.ts.map +1 -0
  3. package/dist/components/accordion/accordion-cover.js +28 -28
  4. package/dist/components/accordion/accordion-group.d.ts +9 -0
  5. package/dist/components/accordion/accordion-group.d.ts.map +1 -0
  6. package/dist/components/accordion/accordion-group.js +1 -1
  7. package/dist/components/accordion/accordion-url-utils.d.ts +5 -0
  8. package/dist/components/accordion/accordion-url-utils.d.ts.map +1 -0
  9. package/dist/components/accordion/accordion.d.ts +35 -0
  10. package/dist/components/accordion/accordion.d.ts.map +1 -0
  11. package/dist/components/accordion/accordion.js +72 -65
  12. package/dist/components/accordion/index.d.ts +7 -0
  13. package/dist/components/accordion/index.d.ts.map +1 -0
  14. package/dist/components/badge/badge.d.ts +29 -0
  15. package/dist/components/badge/badge.d.ts.map +1 -0
  16. package/dist/components/badge/badge.js +18 -18
  17. package/dist/components/badge/index.d.ts +3 -0
  18. package/dist/components/badge/index.d.ts.map +1 -0
  19. package/dist/components/callout/callout.d.ts +24 -0
  20. package/dist/components/callout/callout.d.ts.map +1 -0
  21. package/dist/components/callout/callout.js +46 -46
  22. package/dist/components/callout/index.d.ts +3 -0
  23. package/dist/components/callout/index.d.ts.map +1 -0
  24. package/dist/components/card/card.d.ts +34 -0
  25. package/dist/components/card/card.d.ts.map +1 -0
  26. package/dist/components/card/card.js +59 -59
  27. package/dist/components/card/index.d.ts +3 -0
  28. package/dist/components/card/index.d.ts.map +1 -0
  29. package/dist/components/code-block/base-code-block.d.ts +9 -0
  30. package/dist/components/code-block/base-code-block.d.ts.map +1 -0
  31. package/dist/components/code-block/code-block.d.ts +74 -0
  32. package/dist/components/code-block/code-block.d.ts.map +1 -0
  33. package/dist/components/code-block/code-block.js +34 -34
  34. package/dist/components/code-block/code-footer.d.ts +8 -0
  35. package/dist/components/code-block/code-footer.d.ts.map +1 -0
  36. package/dist/components/code-block/code-footer.js +9 -9
  37. package/dist/components/code-block/code-header.d.ts +11 -0
  38. package/dist/components/code-block/code-header.d.ts.map +1 -0
  39. package/dist/components/code-block/code-header.js +20 -20
  40. package/dist/components/code-block/copy-button.d.ts +16 -0
  41. package/dist/components/code-block/copy-button.d.ts.map +1 -0
  42. package/dist/components/code-block/index.d.ts +5 -0
  43. package/dist/components/code-block/index.d.ts.map +1 -0
  44. package/dist/components/code-block/story-utils.d.ts +13 -0
  45. package/dist/components/code-block/story-utils.d.ts.map +1 -0
  46. package/dist/components/code-group/code-group.d.ts +23 -0
  47. package/dist/components/code-group/code-group.d.ts.map +1 -0
  48. package/dist/components/code-group/code-group.js +72 -72
  49. package/dist/components/code-group/code-select-dropdown.d.ts +10 -0
  50. package/dist/components/code-group/code-select-dropdown.d.ts.map +1 -0
  51. package/dist/components/code-group/code-snippet.d.ts +13 -0
  52. package/dist/components/code-group/code-snippet.d.ts.map +1 -0
  53. package/dist/components/code-group/dropdown.d.ts +34 -0
  54. package/dist/components/code-group/dropdown.d.ts.map +1 -0
  55. package/dist/components/code-group/dropdown.js +47 -47
  56. package/dist/components/code-group/index.d.ts +3 -0
  57. package/dist/components/code-group/index.d.ts.map +1 -0
  58. package/dist/components/code-group/language-dropdown.d.ts +10 -0
  59. package/dist/components/code-group/language-dropdown.d.ts.map +1 -0
  60. package/dist/components/code-group/language-dropdown.js +39 -39
  61. package/dist/components/code-group/language-icon.d.ts +7 -0
  62. package/dist/components/code-group/language-icon.d.ts.map +1 -0
  63. package/dist/components/color/color.d.ts +28 -0
  64. package/dist/components/color/color.d.ts.map +1 -0
  65. package/dist/components/color/color.js +37 -37
  66. package/dist/components/color/constants.d.ts +5 -0
  67. package/dist/components/color/constants.d.ts.map +1 -0
  68. package/dist/components/color/index.d.ts +4 -0
  69. package/dist/components/color/index.d.ts.map +1 -0
  70. package/dist/components/columns/columns.d.ts +11 -0
  71. package/dist/components/columns/columns.d.ts.map +1 -0
  72. package/dist/components/columns/constants.d.ts +5 -0
  73. package/dist/components/columns/constants.d.ts.map +1 -0
  74. package/dist/components/columns/index.d.ts +3 -0
  75. package/dist/components/columns/index.d.ts.map +1 -0
  76. package/dist/components/expandable/expandable.d.ts +21 -0
  77. package/dist/components/expandable/expandable.d.ts.map +1 -0
  78. package/dist/components/expandable/expandable.js +46 -46
  79. package/dist/components/expandable/index.d.ts +3 -0
  80. package/dist/components/expandable/index.d.ts.map +1 -0
  81. package/dist/components/frame/frame.d.ts +14 -0
  82. package/dist/components/frame/frame.d.ts.map +1 -0
  83. package/dist/components/frame/frame.js +21 -21
  84. package/dist/components/frame/index.d.ts +3 -0
  85. package/dist/components/frame/index.d.ts.map +1 -0
  86. package/dist/components/icon/icon.d.ts +19 -0
  87. package/dist/components/icon/icon.d.ts.map +1 -0
  88. package/dist/components/icon/icon.js +24 -24
  89. package/dist/components/icon/index.d.ts +3 -0
  90. package/dist/components/icon/index.d.ts.map +1 -0
  91. package/dist/components/index.d.ts +22 -0
  92. package/dist/components/index.d.ts.map +1 -0
  93. package/dist/components/mermaid/index.d.ts +7 -0
  94. package/dist/components/mermaid/index.d.ts.map +1 -0
  95. package/dist/components/mermaid/mermaid.d.ts +12 -0
  96. package/dist/components/mermaid/mermaid.d.ts.map +1 -0
  97. package/dist/components/mermaid/mermaid.js +38 -31
  98. package/dist/components/mermaid/use-pan-zoom.d.ts +13 -0
  99. package/dist/components/mermaid/use-pan-zoom.d.ts.map +1 -0
  100. package/dist/components/mermaid/zoom-controls.d.ts +13 -0
  101. package/dist/components/mermaid/zoom-controls.d.ts.map +1 -0
  102. package/dist/components/mermaid/zoom-controls.js +32 -32
  103. package/dist/components/panel/index.d.ts +3 -0
  104. package/dist/components/panel/index.d.ts.map +1 -0
  105. package/dist/components/panel/panel.d.ts +6 -0
  106. package/dist/components/panel/panel.d.ts.map +1 -0
  107. package/dist/components/property/index.d.ts +3 -0
  108. package/dist/components/property/index.d.ts.map +1 -0
  109. package/dist/components/property/param-head.d.ts +5 -0
  110. package/dist/components/property/param-head.d.ts.map +1 -0
  111. package/dist/components/property/param-head.js +40 -40
  112. package/dist/components/property/pills.d.ts +15 -0
  113. package/dist/components/property/pills.d.ts.map +1 -0
  114. package/dist/components/property/pills.js +13 -13
  115. package/dist/components/property/property.d.ts +24 -0
  116. package/dist/components/property/property.d.ts.map +1 -0
  117. package/dist/components/property/property.js +33 -33
  118. package/dist/components/steps/constants.d.ts +5 -0
  119. package/dist/components/steps/constants.d.ts.map +1 -0
  120. package/dist/components/steps/index.d.ts +5 -0
  121. package/dist/components/steps/index.d.ts.map +1 -0
  122. package/dist/components/steps/steps.d.ts +35 -0
  123. package/dist/components/steps/steps.d.ts.map +1 -0
  124. package/dist/components/steps/steps.js +157 -59
  125. package/dist/components/tabs/index.d.ts +3 -0
  126. package/dist/components/tabs/index.d.ts.map +1 -0
  127. package/dist/components/tabs/tabs.d.ts +36 -0
  128. package/dist/components/tabs/tabs.d.ts.map +1 -0
  129. package/dist/components/tabs/tabs.js +84 -78
  130. package/dist/components/tile/index.d.ts +3 -0
  131. package/dist/components/tile/index.d.ts.map +1 -0
  132. package/dist/components/tile/tile.d.ts +11 -0
  133. package/dist/components/tile/tile.d.ts.map +1 -0
  134. package/dist/components/tile/tile.js +27 -27
  135. package/dist/components/tooltip/index.d.ts +3 -0
  136. package/dist/components/tooltip/index.d.ts.map +1 -0
  137. package/dist/components/tooltip/tooltip.d.ts +14 -0
  138. package/dist/components/tooltip/tooltip.d.ts.map +1 -0
  139. package/dist/components/tooltip/tooltip.js +95 -84
  140. package/dist/components/tree/context.d.ts +9 -0
  141. package/dist/components/tree/context.d.ts.map +1 -0
  142. package/dist/components/tree/file.d.ts +7 -0
  143. package/dist/components/tree/file.d.ts.map +1 -0
  144. package/dist/components/tree/file.js +9 -9
  145. package/dist/components/tree/folder.d.ts +11 -0
  146. package/dist/components/tree/folder.d.ts.map +1 -0
  147. package/dist/components/tree/folder.js +21 -21
  148. package/dist/components/tree/index.d.ts +9 -0
  149. package/dist/components/tree/index.d.ts.map +1 -0
  150. package/dist/components/tree/root.d.ts +9 -0
  151. package/dist/components/tree/root.d.ts.map +1 -0
  152. package/dist/components/tree/tree-level-context.d.ts +8 -0
  153. package/dist/components/tree/tree-level-context.d.ts.map +1 -0
  154. package/dist/components/tree/use-tree-level.d.ts +3 -0
  155. package/dist/components/tree/use-tree-level.d.ts.map +1 -0
  156. package/dist/components/tree/utils.d.ts +9 -0
  157. package/dist/components/tree/utils.d.ts.map +1 -0
  158. package/dist/components/update/index.d.ts +3 -0
  159. package/dist/components/update/index.d.ts.map +1 -0
  160. package/dist/components/update/update.d.ts +22 -0
  161. package/dist/components/update/update.d.ts.map +1 -0
  162. package/dist/components/update/update.js +21 -21
  163. package/dist/components/view/index.d.ts +3 -0
  164. package/dist/components/view/index.d.ts.map +1 -0
  165. package/dist/components/view/view.d.ts +12 -0
  166. package/dist/components/view/view.d.ts.map +1 -0
  167. package/dist/components/view/view.js +29 -23
  168. package/dist/constants/brands.d.ts +3 -0
  169. package/dist/constants/brands.d.ts.map +1 -0
  170. package/dist/constants/index.d.ts +7 -0
  171. package/dist/constants/index.d.ts.map +1 -0
  172. package/dist/constants/selectors.d.ts +126 -0
  173. package/dist/constants/selectors.d.ts.map +1 -0
  174. package/dist/hooks/index.d.ts +2 -0
  175. package/dist/hooks/index.d.ts.map +1 -0
  176. package/dist/hooks/use-expandable-memory.d.ts +8 -0
  177. package/dist/hooks/use-expandable-memory.d.ts.map +1 -0
  178. package/dist/hooks/use-expandable.d.ts +13 -0
  179. package/dist/hooks/use-expandable.d.ts.map +1 -0
  180. package/dist/hooks/use-get-shiki-highlighted-html.d.ts +4 -0
  181. package/dist/hooks/use-get-shiki-highlighted-html.d.ts.map +1 -0
  182. package/dist/hooks/use-has-hover.d.ts +3 -0
  183. package/dist/hooks/use-has-hover.d.ts.map +1 -0
  184. package/dist/hooks/use-is-dark-theme.d.ts +5 -0
  185. package/dist/hooks/use-is-dark-theme.d.ts.map +1 -0
  186. package/dist/hooks/use-isomorphic-layout-effect.d.ts +4 -0
  187. package/dist/hooks/use-isomorphic-layout-effect.d.ts.map +1 -0
  188. package/dist/icons/index.d.ts +21 -0
  189. package/dist/icons/index.d.ts.map +1 -0
  190. package/dist/icons/index.js +2 -2
  191. package/dist/index.d.ts +3 -565
  192. package/dist/index.d.ts.map +1 -0
  193. package/dist/plugins/bg-grid.d.ts +3 -0
  194. package/dist/plugins/bg-grid.d.ts.map +1 -0
  195. package/dist/plugins/scrollbar.d.ts +3 -0
  196. package/dist/plugins/scrollbar.d.ts.map +1 -0
  197. package/dist/styles.css +2 -0
  198. package/dist/utils/cn.d.ts +4 -0
  199. package/dist/utils/cn.d.ts.map +1 -0
  200. package/dist/utils/copy-to-clipboard.d.ts +5 -0
  201. package/dist/utils/copy-to-clipboard.d.ts.map +1 -0
  202. package/dist/utils/enhance-video-props.d.ts +4 -0
  203. package/dist/utils/enhance-video-props.d.ts.map +1 -0
  204. package/dist/utils/get-node-text.d.ts +3 -0
  205. package/dist/utils/get-node-text.d.ts.map +1 -0
  206. package/dist/utils/icon-utils.d.ts +19 -0
  207. package/dist/utils/icon-utils.d.ts.map +1 -0
  208. package/dist/utils/is-absolute-url.d.ts +5 -0
  209. package/dist/utils/is-absolute-url.d.ts.map +1 -0
  210. package/dist/utils/is-remote-url.d.ts +3 -0
  211. package/dist/utils/is-remote-url.d.ts.map +1 -0
  212. package/dist/utils/make-marker-ids-unique.d.ts +3 -0
  213. package/dist/utils/make-marker-ids-unique.d.ts.map +1 -0
  214. package/dist/utils/make-marker-ids-unique.js +42 -0
  215. package/dist/utils/render-as-child.d.ts +4 -0
  216. package/dist/utils/render-as-child.d.ts.map +1 -0
  217. package/dist/utils/shiki/code-styling.d.ts +12 -0
  218. package/dist/utils/shiki/code-styling.d.ts.map +1 -0
  219. package/dist/utils/shiki/constants.d.ts +23 -0
  220. package/dist/utils/shiki/constants.d.ts.map +1 -0
  221. package/dist/utils/shiki/get-code-styling.d.ts +10 -0
  222. package/dist/utils/shiki/get-code-styling.d.ts.map +1 -0
  223. package/dist/utils/shiki/get-shiki-background-colors.d.ts +21 -0
  224. package/dist/utils/shiki/get-shiki-background-colors.d.ts.map +1 -0
  225. package/dist/utils/shiki/index.d.ts +31 -0
  226. package/dist/utils/shiki/index.d.ts.map +1 -0
  227. package/dist/utils/shiki/lib.d.ts +6 -0
  228. package/dist/utils/shiki/lib.d.ts.map +1 -0
  229. package/dist/utils/shiki/shiki-themes.d.ts +3 -0
  230. package/dist/utils/shiki/shiki-themes.d.ts.map +1 -0
  231. package/dist/utils/shiki/snippet-presets.d.ts +28 -0
  232. package/dist/utils/shiki/snippet-presets.d.ts.map +1 -0
  233. package/dist/utils/shiki/worker-client.d.ts +10 -0
  234. package/dist/utils/shiki/worker-client.d.ts.map +1 -0
  235. package/dist/utils/slugify.d.ts +3 -0
  236. package/dist/utils/slugify.d.ts.map +1 -0
  237. package/package.json +4 -2
@@ -1,76 +1,76 @@
1
1
  import { jsxs as T, jsx as s } from "react/jsx-runtime";
2
- import { useMemo as g } from "react";
3
- import { MAX_DEFAULT_VALUE_LENGTH as y } from "../../constants/index.js";
4
- import { Classes as N } from "../../constants/selectors.js";
5
- import { cn as U } from "../../utils/cn.js";
6
- import { ParamHead as j } from "./param-head.js";
7
- const F = "Navigate to header", h = "default", O = "required", R = "deprecated", k = ({
2
+ import { useMemo as N } from "react";
3
+ import { MAX_DEFAULT_VALUE_LENGTH as U } from "../../constants/index.js";
4
+ import { Classes as j } from "../../constants/selectors.js";
5
+ import { cn as F } from "../../utils/cn.js";
6
+ import { ParamHead as g } from "./param-head.js";
7
+ const h = "Navigate to header", y = "default", O = "required", R = "deprecated", k = ({
8
8
  name: n,
9
9
  type: i,
10
10
  location: c,
11
11
  hidden: m,
12
- default: r,
13
- required: a,
14
- deprecated: p,
15
- children: e,
16
- id: d,
17
- pre: l,
18
- post: E,
12
+ default: t,
13
+ required: p,
14
+ deprecated: d,
15
+ children: r,
16
+ id: l,
17
+ pre: E,
18
+ post: a,
19
19
  className: A,
20
20
  onMount: f,
21
- navigateToHeaderAriaLabel: L = F,
22
- defaultLabel: _ = h,
21
+ navigateToHeaderAriaLabel: L = h,
22
+ defaultLabel: _ = y,
23
23
  requiredLabel: u = O,
24
24
  deprecatedLabel: b = R
25
25
  }) => {
26
- const D = g(() => {
27
- if (r !== null && typeof r == "object" && Object.values(r).some(
26
+ const D = N(() => {
27
+ if (t !== null && typeof t == "object" && Object.values(t).some(
28
28
  (o) => o !== null && typeof o == "object"
29
29
  ))
30
30
  return null;
31
31
  try {
32
- const t = JSON.stringify(r);
33
- if (t && t.length > 0 && t.length < y)
34
- return t;
32
+ const e = JSON.stringify(t);
33
+ if (e && e.length > 0 && e.length < U)
34
+ return e;
35
35
  } catch {
36
36
  return null;
37
37
  }
38
38
  return null;
39
- }, [r]);
39
+ }, [t]);
40
40
  return m ? null : /* @__PURE__ */ T(
41
41
  "div",
42
42
  {
43
- className: U(
44
- N.Field,
45
- "my-2.5 border-gray-50 border-b pt-2.5 pb-5 dark:border-gray-800/50",
43
+ className: F(
44
+ j.Field,
45
+ "my-2.5 border-stone-50 border-b pt-2.5 pb-5 dark:border-stone-800/50",
46
46
  A
47
47
  ),
48
48
  children: [
49
49
  /* @__PURE__ */ s(
50
- j,
50
+ g,
51
51
  {
52
52
  default: D,
53
53
  defaultLabel: _,
54
- deprecated: p,
54
+ deprecated: d,
55
55
  deprecatedLabel: b,
56
- id: d,
56
+ id: l,
57
57
  location: c,
58
58
  name: n,
59
59
  navigateToHeaderAriaLabel: L,
60
60
  onMount: f,
61
- post: E,
62
- pre: l,
63
- required: a,
61
+ post: a,
62
+ pre: E,
63
+ required: p,
64
64
  requiredLabel: u,
65
65
  type: i
66
66
  }
67
67
  ),
68
- e && /* @__PURE__ */ s(
68
+ r && /* @__PURE__ */ s(
69
69
  "div",
70
70
  {
71
- className: "prose-sm prose-gray dark:prose-invert mt-4 [&_.prose>p:first-child]:mt-0 [&_.prose>p:last-child]:mb-0",
71
+ className: "prose-sm prose-stone dark:prose-invert mt-4 [&_.prose>p:first-child]:mt-0 [&_.prose>p:last-child]:mb-0",
72
72
  "data-component-part": "field-content",
73
- children: e
73
+ children: r
74
74
  }
75
75
  )
76
76
  ]
@@ -0,0 +1,5 @@
1
+ declare const STEP_TITLE_SIZES: readonly ["p", "h2", "h3", "h4"];
2
+ type StepTitleSize = (typeof STEP_TITLE_SIZES)[number];
3
+ export { STEP_TITLE_SIZES };
4
+ export type { StepTitleSize };
5
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/components/steps/constants.ts"],"names":[],"mappings":"AAAA,QAAA,MAAM,gBAAgB,kCAAmC,CAAC;AAC1D,KAAK,aAAa,GAAG,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEvD,OAAO,EAAE,gBAAgB,EAAE,CAAC;AAC5B,YAAY,EAAE,aAAa,EAAE,CAAC"}
@@ -0,0 +1,5 @@
1
+ export type { StepTitleSize } from './constants';
2
+ export { STEP_TITLE_SIZES } from './constants';
3
+ export type { StepsItemProps, StepsProps } from './steps';
4
+ export { Steps } from './steps';
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/steps/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/C,YAAY,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC1D,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC"}
@@ -0,0 +1,35 @@
1
+ import { default as React, ReactNode } from 'react';
2
+ import { Rect } from 'react-use-rect';
3
+ import { IconLibrary, IconType } from '../../utils/icon-utils';
4
+ import { StepTitleSize } from './constants';
5
+ type Numberish = number | `${number}`;
6
+ type StepsItemProps = {
7
+ icon?: ReactNode | string;
8
+ stepNumber?: Numberish;
9
+ iconType?: IconType;
10
+ iconLibrary?: IconLibrary;
11
+ title: string | ReactNode;
12
+ children?: string | ReactNode;
13
+ titleSize?: StepTitleSize;
14
+ className?: string;
15
+ isLast?: boolean;
16
+ id?: string;
17
+ noAnchor?: boolean;
18
+ scrollElementIntoView?: (id: string) => void;
19
+ onCopyAnchorLink?: (id: string | undefined) => void;
20
+ onRegisterHeading?: (id: string, rect: Rect) => void;
21
+ onUnregisterHeading?: (id: string) => void;
22
+ _hasContext?: boolean;
23
+ };
24
+ type StepsProps = {
25
+ children: React.ReactElement<StepsItemProps> | React.ReactElement<StepsItemProps>[];
26
+ titleSize?: StepTitleSize;
27
+ className?: string;
28
+ };
29
+ declare const Steps: {
30
+ ({ children, titleSize, className }: StepsProps): import("react/jsx-runtime").JSX.Element;
31
+ Item: ({ stepNumber, icon, iconType, iconLibrary, title, children, titleSize, className, isLast, id, noAnchor, scrollElementIntoView, onRegisterHeading, onUnregisterHeading, _hasContext, onCopyAnchorLink, }: StepsItemProps) => import("react/jsx-runtime").JSX.Element;
32
+ };
33
+ export { Steps };
34
+ export type { StepsItemProps, StepsProps };
35
+ //# sourceMappingURL=steps.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"steps.d.ts","sourceRoot":"","sources":["../../../src/components/steps/steps.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,KAAK,SAAS,EAAoC,MAAM,OAAO,CAAC;AACzE,OAAO,EAAE,KAAK,IAAI,EAAW,MAAM,gBAAgB,CAAC;AAMpD,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,EAAoB,KAAK,aAAa,EAAE,MAAM,aAAa,CAAC;AAEnE,KAAK,SAAS,GAAG,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC;AAEtC,KAAK,cAAc,GAAG;IACpB,IAAI,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IAC1B,UAAU,CAAC,EAAE,SAAS,CAAC;IACvB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,qBAAqB,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7C,gBAAgB,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,GAAG,SAAS,KAAK,IAAI,CAAC;IACpD,iBAAiB,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;IACrD,mBAAmB,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3C,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB,CAAC;AAqOF,KAAK,UAAU,GAAG;IAChB,QAAQ,EACJ,KAAK,CAAC,YAAY,CAAC,cAAc,CAAC,GAClC,KAAK,CAAC,YAAY,CAAC,cAAc,CAAC,EAAE,CAAC;IACzC,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,QAAA,MAAM,KAAK;yCAAwC,UAAU;oNA1N1D,cAAc;CAkPhB,CAAC;AAIF,OAAO,EAAE,KAAK,EAAE,CAAC;AACjB,YAAY,EAAE,cAAc,EAAE,UAAU,EAAE,CAAC"}
@@ -1,92 +1,190 @@
1
- import { jsx as e, jsxs as c } from "react/jsx-runtime";
2
- import { Classes as d } from "../../constants/selectors.js";
3
- import { cn as o } from "../../utils/cn.js";
4
- import { STEP_TITLE_SIZES as y } from "./constants.js";
5
- import { Icon as v } from "../icon/icon.js";
6
- const h = ({
7
- stepNumber: a = 1,
8
- icon: r,
9
- iconType: m,
10
- iconLibrary: n,
11
- title: t,
12
- children: s,
13
- titleSize: i = "p",
14
- className: b,
15
- isLast: f = !1
1
+ import { jsx as t, jsxs as w } from "react/jsx-runtime";
2
+ import { useState as E, useCallback as z, useEffect as C } from "react";
3
+ import { useRect as O } from "../../node_modules/.pnpm/react-use-rect@2.0.6_react@18.3.1/node_modules/react-use-rect/dist/index.esm.js";
4
+ import { Classes as j } from "../../constants/selectors.js";
5
+ import { LinkIcon as Z } from "../../icons/index.js";
6
+ import { cn as r } from "../../utils/cn.js";
7
+ import { copyToClipboard as _ } from "../../utils/copy-to-clipboard.js";
8
+ import { STEP_TITLE_SIZES as q } from "./constants.js";
9
+ import { Icon as F } from "../icon/icon.js";
10
+ const M = ({
11
+ stepNumber: c = 1,
12
+ icon: o,
13
+ iconType: v,
14
+ iconLibrary: m,
15
+ title: s,
16
+ children: n,
17
+ titleSize: k = "p",
18
+ className: $,
19
+ isLast: P = !1,
20
+ id: e,
21
+ noAnchor: l = !1,
22
+ scrollElementIntoView: N,
23
+ onRegisterHeading: i,
24
+ onUnregisterHeading: f,
25
+ _hasContext: y,
26
+ onCopyAnchorLink: u
16
27
  }) => {
17
- const g = y.includes(i) ? i : "p", u = typeof r == "string" ? /* @__PURE__ */ e(
18
- v,
28
+ const [x, R] = E(null), [S, B] = E(!1), [D] = O(R), I = q.includes(k) ? k : "p", p = ["h2", "h3"].includes(I), T = z(async () => {
29
+ if (!p || l || !e || typeof window > "u")
30
+ return;
31
+ await _(
32
+ `${window.location.href.split("#")[0]}#${encodeURIComponent(e)}`
33
+ ) === "success" && (window.location.hash = encodeURIComponent(e), u == null || u(e));
34
+ }, [p, e, l, u]);
35
+ C(() => {
36
+ if (y && e && x)
37
+ return i == null || i(e, x), () => {
38
+ f == null || f(e);
39
+ };
40
+ }, [x, e, y, i, f]), C(() => {
41
+ if (!(!e || l))
42
+ try {
43
+ decodeURIComponent(window.location.hash.substring(1)) === e && (N == null || N(e));
44
+ } catch {
45
+ }
46
+ }, []);
47
+ const d = z(
48
+ (a) => {
49
+ !p || l || !e || B(a);
50
+ },
51
+ [p, l, e]
52
+ ), h = {
53
+ onMouseEnter: () => d(!0),
54
+ onMouseLeave: () => d(!1),
55
+ onClick: T
56
+ }, L = typeof o == "string" ? /* @__PURE__ */ t(
57
+ F,
19
58
  {
20
- className: "size-3 bg-gray-900 dark:bg-gray-50",
21
- icon: r,
22
- iconLibrary: n,
23
- iconType: m,
59
+ className: "size-3 bg-stone-900 dark:bg-stone-50",
60
+ icon: o,
61
+ iconLibrary: m,
62
+ iconType: v,
24
63
  overrideColor: !0,
25
64
  overrideSize: !0
26
65
  }
27
- ) : r ?? Number(a);
66
+ ) : o ?? Number(c);
28
67
  return (
29
68
  // biome-ignore lint/a11y/useSemanticElements: TODO
30
- /* @__PURE__ */ c(
69
+ /* @__PURE__ */ w(
31
70
  "div",
32
71
  {
33
- className: o(
34
- d.Step,
72
+ className: r(
73
+ j.Step,
35
74
  "group/step relative flex items-start pb-5",
36
- b
75
+ $
37
76
  ),
38
77
  "data-component-part": "step-item",
78
+ id: e,
79
+ ref: D,
39
80
  role: "listitem",
40
81
  children: [
41
- /* @__PURE__ */ e(
82
+ /* @__PURE__ */ t(
42
83
  "div",
43
84
  {
44
- className: o(
85
+ className: r(
45
86
  "absolute top-11 h-[calc(100%-2.75rem)] w-px",
46
- f ? 'bg-linear-to-b from-gray-200 via-80% via-gray-200 to-transparent group-has-[[data-component-part="step-content"]:empty]/step:hidden dark:from-white/10 dark:via-white/10' : "bg-gray-200/70 dark:bg-white/10"
87
+ P ? 'bg-linear-to-b from-stone-200 via-80% via-stone-200 to-transparent group-has-[[data-component-part="step-content"]:empty]/step:hidden dark:from-white/10 dark:via-white/10' : "bg-stone-200/70 dark:bg-white/10"
47
88
  ),
48
89
  contentEditable: !1,
49
90
  "data-component-part": "step-line"
50
91
  }
51
92
  ),
52
- /* @__PURE__ */ e(
93
+ /* @__PURE__ */ t(
53
94
  "div",
54
95
  {
55
96
  className: "absolute ml-[-13px] py-2",
56
97
  contentEditable: !1,
57
98
  "data-component-part": "step-number",
58
- children: /* @__PURE__ */ e("div", { className: "flex size-7 shrink-0 items-center justify-center rounded-full bg-gray-50 font-semibold text-gray-900 text-xs dark:bg-white/10 dark:text-gray-50", children: u })
99
+ children: /* @__PURE__ */ w(
100
+ "div",
101
+ {
102
+ className: "relative flex size-7 shrink-0 items-center justify-center rounded-full bg-stone-50 font-semibold text-stone-900 text-xs dark:bg-white/10 dark:text-stone-50",
103
+ onMouseEnter: () => d(!0),
104
+ onMouseLeave: () => d(!1),
105
+ children: [
106
+ /* @__PURE__ */ t("div", { className: r(S && "opacity-0"), children: L }),
107
+ p && !l && e && /* @__PURE__ */ t(
108
+ "div",
109
+ {
110
+ className: "absolute",
111
+ "data-component-part": "step-number-anchor-link",
112
+ children: /* @__PURE__ */ t(
113
+ "a",
114
+ {
115
+ "aria-label": "Navigate to header",
116
+ className: r(
117
+ "flex items-center border-0 opacity-0",
118
+ S && "opacity-100"
119
+ ),
120
+ href: `#${encodeURIComponent(e)}`,
121
+ onClick: (a) => {
122
+ a.preventDefault(), T();
123
+ },
124
+ children: /* @__PURE__ */ t("div", { className: "flex size-6 items-center justify-center", children: /* @__PURE__ */ t(Z, {}) })
125
+ }
126
+ )
127
+ }
128
+ )
129
+ ]
130
+ }
131
+ )
59
132
  }
60
133
  ),
61
- /* @__PURE__ */ c("div", { className: "w-full overflow-hidden pr-px pl-8", children: [
62
- !!t && (() => {
63
- const l = "mt-2 text-gray-900 dark:text-gray-200", p = {
134
+ /* @__PURE__ */ w("div", { className: "w-full overflow-hidden pr-px pl-8", children: [
135
+ !!s && (() => {
136
+ const a = "mt-2 text-stone-900 dark:text-stone-200", b = {
64
137
  contentEditable: !1,
65
138
  "data-component-part": "step-title"
66
139
  };
67
140
  return {
68
- p: /* @__PURE__ */ e(
141
+ p: /* @__PURE__ */ t(
69
142
  "p",
70
143
  {
71
- className: o(
72
- l,
144
+ className: r(
145
+ a,
73
146
  "prose dark:prose-invert font-semibold"
74
147
  ),
75
- ...p,
76
- children: t
148
+ ...b,
149
+ ...h,
150
+ children: s
77
151
  }
78
152
  ),
79
- h2: /* @__PURE__ */ e("h2", { className: l, ...p, children: t }),
80
- h3: /* @__PURE__ */ e("h3", { className: l, ...p, children: t }),
81
- h4: /* @__PURE__ */ e("h4", { className: l, ...p, children: t })
82
- }[g];
153
+ h2: /* @__PURE__ */ t(
154
+ "h2",
155
+ {
156
+ className: a,
157
+ ...b,
158
+ ...h,
159
+ children: s
160
+ }
161
+ ),
162
+ h3: /* @__PURE__ */ t(
163
+ "h3",
164
+ {
165
+ className: a,
166
+ ...b,
167
+ ...h,
168
+ children: s
169
+ }
170
+ ),
171
+ h4: /* @__PURE__ */ t(
172
+ "h4",
173
+ {
174
+ className: a,
175
+ ...b,
176
+ ...h,
177
+ children: s
178
+ }
179
+ )
180
+ }[I];
83
181
  })(),
84
- /* @__PURE__ */ e(
182
+ /* @__PURE__ */ t(
85
183
  "div",
86
184
  {
87
- className: o("prose dark:prose-invert", !t && "mt-2"),
185
+ className: r("prose dark:prose-invert", !s && "mt-2"),
88
186
  "data-component-part": "step-content",
89
- children: s
187
+ children: n
90
188
  }
91
189
  )
92
190
  ] })
@@ -94,33 +192,33 @@ const h = ({
94
192
  }
95
193
  )
96
194
  );
97
- }, N = ({ children: a, titleSize: r, className: m }) => {
98
- const n = (Array.isArray(a) ? a : [a]).filter(
195
+ }, G = ({ children: c, titleSize: o, className: v }) => {
196
+ const m = (Array.isArray(c) ? c : [c]).filter(
99
197
  Boolean
100
198
  );
101
199
  return (
102
200
  // biome-ignore lint/a11y/useSemanticElements: TODO
103
- /* @__PURE__ */ e(
201
+ /* @__PURE__ */ t(
104
202
  "div",
105
203
  {
106
- className: o(d.Steps, "mt-10 mb-6 ml-3.5", m),
204
+ className: r(j.Steps, "mt-10 mb-6 ml-3.5", v),
107
205
  "data-component-part": "steps",
108
206
  role: "list",
109
- children: n.map(({ props: t }, s) => /* @__PURE__ */ e(
110
- h,
207
+ children: m.map(({ props: s }, n) => /* @__PURE__ */ t(
208
+ M,
111
209
  {
112
- ...t,
113
- isLast: s === n.length - 1,
114
- stepNumber: t.stepNumber ?? s + 1,
115
- titleSize: t.titleSize ?? r
210
+ ...s,
211
+ isLast: n === m.length - 1,
212
+ stepNumber: s.stepNumber ?? n + 1,
213
+ titleSize: s.titleSize ?? o
116
214
  },
117
- `step-${s}`
215
+ `step-${n}`
118
216
  ))
119
217
  }
120
218
  )
121
219
  );
122
220
  };
123
- N.Item = h;
221
+ G.Item = M;
124
222
  export {
125
- N as Steps
223
+ G as Steps
126
224
  };
@@ -0,0 +1,3 @@
1
+ export type { TabsItemProps, TabsProps } from './tabs';
2
+ export { Tabs } from './tabs';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/tabs/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACvD,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC"}
@@ -0,0 +1,36 @@
1
+ import { ReactElement, ReactNode, RefObject } from 'react';
2
+ import { CHILD_HEADING_IDS_ATTRIBUTE, CHILD_TAB_IDS_ATTRIBUTE } from '../../constants';
3
+ import { IconLibrary, IconType } from '../../utils/icon-utils';
4
+ type TabsItemProps = {
5
+ id?: string;
6
+ title: string;
7
+ icon?: string;
8
+ iconType?: IconType;
9
+ iconLibrary?: IconLibrary;
10
+ children?: ReactNode;
11
+ [CHILD_TAB_IDS_ATTRIBUTE]?: string;
12
+ [CHILD_HEADING_IDS_ATTRIBUTE]?: string;
13
+ };
14
+ /**
15
+ * Mint app integration:
16
+ * - Wrap with useTabState hook for URL hash sync, tab sync across components, and localStorage persistence
17
+ * - useTabState provides: activeIndex, setActiveIndex (handles hash/sync/persist updates)
18
+ * - Connect onTabChange to setActiveIndex for full integration
19
+ * - Pass panelsRef and use it to implement findInPanels callback for useTabState
20
+ * - The component renders role="tabpanel" and aria-controls attributes that useTabState's
21
+ * findAndActivateTabContainingElement() uses for DOM-based navigation
22
+ */
23
+ type TabsProps = {
24
+ children: ReactElement<TabsItemProps> | ReactElement<TabsItemProps>[];
25
+ defaultTabIndex?: number;
26
+ onTabChange?: (tabIndex: number) => void;
27
+ className?: string;
28
+ borderBottom?: boolean;
29
+ ariaLabel?: string;
30
+ panelsRef?: RefObject<HTMLDivElement>;
31
+ };
32
+ export declare const Tabs: (({ children, defaultTabIndex, onTabChange, className, borderBottom, ariaLabel, panelsRef, }: TabsProps) => import("react/jsx-runtime").JSX.Element) & {
33
+ Item: ({ children }: TabsItemProps) => import("react/jsx-runtime").JSX.Element;
34
+ };
35
+ export type { TabsProps, TabsItemProps };
36
+ //# sourceMappingURL=tabs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tabs.d.ts","sourceRoot":"","sources":["../../../src/components/tabs/tabs.tsx"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,YAAY,EACjB,KAAK,SAAS,EACd,KAAK,SAAS,EAOf,MAAM,OAAO,CAAC;AAEf,OAAO,EACL,2BAA2B,EAC3B,uBAAuB,EACxB,MAAM,aAAa,CAAC;AAGrB,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAKhE,KAAK,aAAa,GAAG;IACnB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,CAAC,uBAAuB,CAAC,CAAC,EAAE,MAAM,CAAC;IACnC,CAAC,2BAA2B,CAAC,CAAC,EAAE,MAAM,CAAC;CACxC,CAAC;AAMF;;;;;;;;GAQG;AACH,KAAK,SAAS,GAAG;IACf,QAAQ,EAAE,YAAY,CAAC,aAAa,CAAC,GAAG,YAAY,CAAC,aAAa,CAAC,EAAE,CAAC;IACtE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,SAAS,CAAC,cAAc,CAAC,CAAC;CACvC,CAAC;AAwMF,eAAO,MAAM,IAAI,gGA9Ld,SAAS;yBA/BoB,aAAa;CA+N3C,CAAC;AAEH,YAAY,EAAE,SAAS,EAAE,aAAa,EAAE,CAAC"}