@mintlify/msft-sdk 1.1.9 → 1.1.11

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 (49) hide show
  1. package/dist/components/Api/ApiReferenceProvider.js +19 -0
  2. package/dist/components/Api/ApiReferenceProvider.js.map +1 -0
  3. package/dist/components/Api/MethodPill.js +21 -0
  4. package/dist/components/Api/MethodPill.js.map +1 -0
  5. package/dist/components/Api/colors.js +117 -0
  6. package/dist/components/Api/colors.js.map +1 -0
  7. package/dist/components/content-components/code-block.js +94 -66
  8. package/dist/components/content-components/code-block.js.map +1 -1
  9. package/dist/components/content-components/default-components.js +35 -61
  10. package/dist/components/content-components/default-components.js.map +1 -1
  11. package/dist/components/content-components/home.js +14 -14
  12. package/dist/components/content-components/home.js.map +1 -1
  13. package/dist/components/content-components/image.js +80 -0
  14. package/dist/components/content-components/image.js.map +1 -0
  15. package/dist/components/content-components/param-name.js.map +1 -1
  16. package/dist/components/content-components/table/index.js +1 -1
  17. package/dist/components/content-components/table/table-modal.js.map +1 -1
  18. package/dist/components/content-components/tabs/tab.js.map +1 -1
  19. package/dist/components/content-components/tabs/tabs.js +26 -22
  20. package/dist/components/content-components/tabs/tabs.js.map +1 -1
  21. package/dist/components/nav-tree/index.js +115 -103
  22. package/dist/components/nav-tree/index.js.map +1 -1
  23. package/dist/components/nav-tree/mobile-nav.js +23 -25
  24. package/dist/components/nav-tree/mobile-nav.js.map +1 -1
  25. package/dist/components/page-context-menu.js +72 -78
  26. package/dist/components/page-context-menu.js.map +1 -1
  27. package/dist/components/page.js +118 -0
  28. package/dist/components/page.js.map +1 -0
  29. package/dist/components/plain-text-page.js.map +1 -1
  30. package/dist/components/toc/index.js +8 -8
  31. package/dist/components/toc/index.js.map +1 -1
  32. package/dist/index.d.ts +227 -213
  33. package/dist/index.js +114 -36
  34. package/dist/index.js.map +1 -1
  35. package/dist/plugins/extract-headings.js +28 -0
  36. package/dist/plugins/extract-headings.js.map +1 -0
  37. package/dist/plugins/sanitize/rehype-unwrap-image-links.js.map +1 -1
  38. package/dist/styles.css +1 -1
  39. package/dist/utils/cn.js +5 -5
  40. package/dist/utils/cn.js.map +1 -1
  41. package/package.json +21 -2
  42. package/dist/components/docsLayout.js +0 -62
  43. package/dist/components/docsLayout.js.map +0 -1
  44. package/dist/components/docsPage.js +0 -133
  45. package/dist/components/docsPage.js.map +0 -1
  46. package/dist/components/nav-tree/dropdown-menu.js +0 -75
  47. package/dist/components/nav-tree/dropdown-menu.js.map +0 -1
  48. package/dist/node_modules/.pnpm/tailwind-merge@3.3.1/node_modules/tailwind-merge/dist/bundle-mjs.js +0 -2732
  49. package/dist/node_modules/.pnpm/tailwind-merge@3.3.1/node_modules/tailwind-merge/dist/bundle-mjs.js.map +0 -1
@@ -3,8 +3,8 @@ import { useComponents as e } from "../../context/components-context.js";
3
3
  import { FlowSparkleRegular as a, ChatSparkleRegular as r, AgentsRegular as s, DatabaseRegular as d } from "@fluentui/react-icons";
4
4
  const f = () => {
5
5
  const { LinkComponent: m } = e(), i = m || "a";
6
- return /* @__PURE__ */ n("div", { className: "mint:w-full mint:max-w-none !mint:m-0 !mint:p-0 mint:font-['Aptos',sans-serif] mint:box-border mint:relative mint:[&_*]:box-border", children: [
7
- /* @__PURE__ */ n("section", { className: "mint:relative mint:left-[-4rem] mint:top-[-2rem] mint:min-h-[316px] mint:h-[316px] mint:m-0 mint:p-12 mint:pr-16 mint:w-[calc(100%+8rem)] mint:flex mint:items-start mint:justify-start mint:gap-16 !mint:bg-[#fafafa] dark:!mint:bg-[#141414] mint:overflow-hidden", children: [
6
+ return /* @__PURE__ */ n("div", { className: "mint:w-full mint:max-w-none mint:!m-0 mint:!p-0 mint:font-['Aptos',sans-serif] mint:box-border mint:relative mint:[&_*]:box-border", children: [
7
+ /* @__PURE__ */ n("section", { className: "mint:relative mint:left-[-4rem] mint:top-[-2rem] mint:min-h-[316px] mint:h-[316px] mint:m-0 mint:p-12 mint:pr-16 mint:w-[calc(100%+8rem)] mint:flex mint:items-start mint:justify-start mint:gap-16 mint:!bg-[#fafafa] mint:dark:!bg-[#141414] mint:overflow-hidden", children: [
8
8
  /* @__PURE__ */ t(
9
9
  "div",
10
10
  {
@@ -112,7 +112,7 @@ const f = () => {
112
112
  /* @__PURE__ */ t(
113
113
  "img",
114
114
  {
115
- className: "mint:block dark:!mint:hidden mint:w-8 mint:h-8",
115
+ className: "mint:block mint:dark:!hidden mint:w-8 mint:h-8",
116
116
  src: "https://mintlify-assets.b-cdn.net/azure-ai-foundry/Github.svg",
117
117
  alt: "GitHub"
118
118
  }
@@ -120,7 +120,7 @@ const f = () => {
120
120
  /* @__PURE__ */ t(
121
121
  "img",
122
122
  {
123
- className: "!mint:hidden dark:!mint:block mint:w-8 mint:h-8",
123
+ className: "mint:!hidden mint:dark:!block mint:w-8 mint:h-8",
124
124
  src: "https://mintlify-assets.b-cdn.net/azure-ai-foundry/Github-dark.svg",
125
125
  alt: "GitHub"
126
126
  }
@@ -139,7 +139,7 @@ const f = () => {
139
139
  /* @__PURE__ */ t(
140
140
  "img",
141
141
  {
142
- className: "mint:block dark:!mint:hidden mint:w-full mint:h-full",
142
+ className: "mint:block mint:dark:!hidden mint:w-full mint:h-full",
143
143
  src: "https://mintlify-assets.b-cdn.net/azure-ai-foundry/Open.svg",
144
144
  alt: "External link"
145
145
  }
@@ -147,7 +147,7 @@ const f = () => {
147
147
  /* @__PURE__ */ t(
148
148
  "img",
149
149
  {
150
- className: "!mint:hidden dark:!mint:block mint:w-full mint:h-full",
150
+ className: "mint:!hidden mint:dark:!block mint:w-full mint:h-full",
151
151
  src: "https://mintlify-assets.b-cdn.net/azure-ai-foundry/Open%20(1).svg",
152
152
  alt: "External link"
153
153
  }
@@ -167,7 +167,7 @@ const f = () => {
167
167
  /* @__PURE__ */ t(
168
168
  "img",
169
169
  {
170
- className: "mint:block dark:!mint:hidden mint:w-8 mint:h-8",
170
+ className: "mint:block mint:dark:!hidden mint:w-8 mint:h-8",
171
171
  src: "https://mintlify-assets.b-cdn.net/azure-ai-foundry/Discord_Light.svg",
172
172
  alt: "Discord"
173
173
  }
@@ -175,7 +175,7 @@ const f = () => {
175
175
  /* @__PURE__ */ t(
176
176
  "img",
177
177
  {
178
- className: "!mint:hidden dark:!mint:block mint:w-8 mint:h-8",
178
+ className: "mint:!hidden mint:dark:!block mint:w-8 mint:h-8",
179
179
  src: "https://mintlify-assets.b-cdn.net/azure-ai-foundry/Discord_Dark.svg",
180
180
  alt: "Discord"
181
181
  }
@@ -194,7 +194,7 @@ const f = () => {
194
194
  /* @__PURE__ */ t(
195
195
  "img",
196
196
  {
197
- className: "mint:block dark:!mint:hidden mint:w-full mint:h-full",
197
+ className: "mint:block mint:dark:!hidden mint:w-full mint:h-full",
198
198
  src: "https://mintlify-assets.b-cdn.net/azure-ai-foundry/Open.svg",
199
199
  alt: "External link"
200
200
  }
@@ -202,7 +202,7 @@ const f = () => {
202
202
  /* @__PURE__ */ t(
203
203
  "img",
204
204
  {
205
- className: "!mint:hidden dark:!mint:block mint:w-full mint:h-full",
205
+ className: "mint:!hidden mint:dark:!block mint:w-full mint:h-full",
206
206
  src: "https://mintlify-assets.b-cdn.net/azure-ai-foundry/Open%20(1).svg",
207
207
  alt: "External link"
208
208
  }
@@ -222,7 +222,7 @@ const f = () => {
222
222
  /* @__PURE__ */ t(
223
223
  "img",
224
224
  {
225
- className: "mint:block dark:!mint:hidden mint:w-8 mint:h-8",
225
+ className: "mint:block mint:dark:!hidden mint:w-8 mint:h-8",
226
226
  src: "https://mintlify-assets.b-cdn.net/azure-ai-foundry/Shape.svg",
227
227
  alt: "Blog"
228
228
  }
@@ -230,7 +230,7 @@ const f = () => {
230
230
  /* @__PURE__ */ t(
231
231
  "img",
232
232
  {
233
- className: "!mint:hidden dark:!mint:block mint:w-8 mint:h-8",
233
+ className: "mint:!hidden mint:dark:!block mint:w-8 mint:h-8",
234
234
  src: "https://mintlify-assets.b-cdn.net/azure-ai-foundry/Shape%20(1).svg",
235
235
  alt: "Blog"
236
236
  }
@@ -249,7 +249,7 @@ const f = () => {
249
249
  /* @__PURE__ */ t(
250
250
  "img",
251
251
  {
252
- className: "mint:block dark:!mint:hidden mint:w-full mint:h-full",
252
+ className: "mint:block mint:dark:!hidden mint:w-full mint:h-full",
253
253
  src: "https://mintlify-assets.b-cdn.net/azure-ai-foundry/Open.svg",
254
254
  alt: "External link"
255
255
  }
@@ -257,7 +257,7 @@ const f = () => {
257
257
  /* @__PURE__ */ t(
258
258
  "img",
259
259
  {
260
- className: "!mint:hidden dark:!mint:block mint:w-full mint:h-full",
260
+ className: "mint:!hidden mint:dark:!block mint:w-full mint:h-full",
261
261
  src: "https://mintlify-assets.b-cdn.net/azure-ai-foundry/Open%20(1).svg",
262
262
  alt: "External link"
263
263
  }
@@ -1 +1 @@
1
- {"version":3,"file":"home.js","sources":["../../../src/components/content-components/home.tsx"],"sourcesContent":["import React from \"react\";\nimport { useComponents } from \"../../context/components-context\";\nimport {\n AgentsRegular,\n FlowSparkleRegular,\n ChatSparkleRegular,\n DatabaseRegular,\n} from \"@fluentui/react-icons\";\n\nexport const Home = () => {\n const { LinkComponent } = useComponents();\n const LinkElement = LinkComponent || \"a\";\n\n return (\n <div className=\"mint:w-full mint:max-w-none !mint:m-0 !mint:p-0 mint:font-['Aptos',sans-serif] mint:box-border mint:relative mint:[&_*]:box-border\">\n <section className=\"mint:relative mint:left-[-4rem] mint:top-[-2rem] mint:min-h-[316px] mint:h-[316px] mint:m-0 mint:p-12 mint:pr-16 mint:w-[calc(100%+8rem)] mint:flex mint:items-start mint:justify-start mint:gap-16 !mint:bg-[#fafafa] dark:!mint:bg-[#141414] mint:overflow-hidden\">\n <div\n className=\"mint:block mint:dark:hidden mint:absolute mint:top-0 mint:left-0 mint:right-0 mint:bottom-0 mint:bg-cover mint:bg-center mint:bg-no-repeat mint:pointer-events-none\"\n style={{\n backgroundImage:\n \"url(https://mintlify-assets.b-cdn.net/azure-ai-foundry/landing-background-light.svg)\",\n height: \"24rem\",\n }}\n />\n <div\n className=\"mint:hidden mint:dark:block mint:absolute mint:top-0 mint:left-0 mint:right-0 mint:bottom-0 mint:bg-cover mint:bg-center mint:bg-no-repeat mint:pointer-events-none\"\n style={{\n backgroundImage:\n \"url(https://mintlify-assets.b-cdn.net/azure-ai-foundry/landing-background-dark.svg)\",\n height: \"24rem\",\n }}\n />\n <div className=\"mint:relative mint:flex mint:flex-col mint:gap-4 mint:z-[1] mint:flex-1 mint:max-w-[450px] mint:ml-[8.5rem] mint:mt-8\">\n <h1 className=\"mint:text-[28px] mint:font-normal mint:text-[#242424] mint:dark:text-white mint:m-0 mint:leading-9\">\n Foundry quick start\n </h1>\n <p className=\"mint:text-sm mint:text-[#424242] mint:dark:text-[#d6d6d6] mint:leading-5 mint:m-0\">\n Learn how to get started with Azure AI Foundry by <br /> creating a\n project, deploying a model, and running <br /> your first chat\n completion.\n </p>\n <button className=\"mint:bg-[#643fb2] mint:hover:bg-[#7450d0] mint:text-white mint:py-1 mint:px-3 mint:rounded-lg mint:text-xs mint:font-normal mint:rounded-full mint:border-none mint:cursor-pointer mint:w-fit\">\n Get started\n </button>\n </div>\n </section>\n\n <section className=\"mint:mb-16 mint:mt-4 mint:px-12 mint:flex mint:flex-col mint:items-center\">\n <h2 className=\"mint:text-[20px] mint:font-semibold mint:font-['Aptos_SemiBold',sans-serif] mint:text-[#242424] mint:dark:text-white mint:m-0 mint:w-full mint:max-w-[800px] mint:text-left\">\n Learn more\n </h2>\n <div className=\"mint:grid mint:grid-cols-2 mint:gap-3 mint:mt-4 mint:max-w-[800px]\">\n <div className=\"mint:bg-[#fafafa] mint:dark:bg-[#1a1a1a] mint:border mint:border-[#f0f0f0] mint:dark:border-[#3d3d3d] mint:rounded-xl mint:p-6 mint:flex mint:flex-col mint:gap-2 mint:transition-all mint:duration-200 mint:hover:shadow-[0_4px_12px_rgba(0,0,0,0.1)] mint:dark:hover:shadow-[0_4px_12px_rgba(0,0,0,0.3)] mint:hover:border-[rgba(99,102,241,0.3)]\">\n <div className=\"mint:text-[2rem] mint:mb-2 mint:w-12 mint:h-12 mint:bg-[#f3f4f6] mint:dark:bg-black mint:rounded-lg mint:flex mint:items-center mint:justify-center mint:[&>svg]:w-6 mint:[&>svg]:h-6\">\n <FlowSparkleRegular />\n </div>\n <h3 className=\"mint:text-sm mint:font-semibold mint:font-['Aptos_SemiBold',sans-serif] mint:text-[#141414] mint:dark:text-white mint:m-0\">\n Build your first AI app\n </h3>\n <p className=\"mint:text-sm mint:font-normal mint:text-[#616161] mint:dark:text-[#adadad] mint:font-['Aptos',sans-serif] mint:leading-5 mint:-mt-1 mint:m-0\">\n Create a Foundry project and deploy a model. Includes SDK samples\n for multiple programming languages.\n </p>\n </div>\n\n <div className=\"mint:bg-[#fafafa] mint:dark:bg-[#1a1a1a] mint:border mint:border-[#f0f0f0] mint:dark:border-[#3d3d3d] mint:rounded-xl mint:p-6 mint:flex mint:flex-col mint:gap-2 mint:transition-all mint:duration-200 mint:hover:shadow-[0_4px_12px_rgba(0,0,0,0.1)] mint:dark:hover:shadow-[0_4px_12px_rgba(0,0,0,0.3)] mint:hover:border-[rgba(99,102,241,0.3)]\">\n <div className=\"mint:text-[2rem] mint:mb-2 mint:w-12 mint:h-12 mint:bg-[#f3f4f6] mint:dark:bg-black mint:rounded-lg mint:flex mint:items-center mint:justify-center mint:[&>svg]:w-6 mint:[&>svg]:h-6\">\n <ChatSparkleRegular />\n </div>\n <h3 className=\"mint:text-sm mint:font-semibold mint:font-['Aptos_SemiBold',sans-serif] mint:text-[#141414] mint:dark:text-white mint:m-0\">\n Get answers in chat playground\n </h3>\n <p className=\"mint:text-sm mint:font-normal mint:text-[#616161] mint:dark:text-[#adadad] mint:font-['Aptos',sans-serif] mint:leading-5 mint:-mt-1 mint:m-0\">\n Interact with deployed models in the playground. Configure prompts\n and test responses in a no-code UI.\n </p>\n </div>\n\n <div className=\"mint:bg-[#fafafa] mint:dark:bg-[#1a1a1a] mint:border mint:border-[#f0f0f0] mint:dark:border-[#3d3d3d] mint:rounded-xl mint:p-6 mint:flex mint:flex-col mint:gap-2 mint:transition-all mint:duration-200 mint:hover:shadow-[0_4px_12px_rgba(0,0,0,0.1)] mint:dark:hover:shadow-[0_4px_12px_rgba(0,0,0,0.3)] mint:hover:border-[rgba(99,102,241,0.3)]\">\n <div className=\"mint:text-[2rem] mint:mb-2 mint:w-12 mint:h-12 mint:bg-[#f3f4f6] mint:dark:bg-black mint:rounded-lg mint:flex mint:items-center mint:justify-center mint:[&>svg]:w-6 mint:[&>svg]:h-6\">\n <AgentsRegular />\n </div>\n <h3 className=\"mint:text-sm mint:font-semibold mint:font-['Aptos_SemiBold',sans-serif] mint:text-[#141414] mint:dark:text-white mint:m-0\">\n Develop an AI agent\n </h3>\n <p className=\"mint:text-sm mint:font-normal mint:text-[#616161] mint:dark:text-[#adadad] mint:font-['Aptos',sans-serif] mint:leading-5 mint:-mt-1 mint:m-0\">\n Launch image generation models in Foundry playground. Easily\n integrate with code samples.\n </p>\n </div>\n\n <div className=\"mint:bg-[#fafafa] mint:dark:bg-[#1a1a1a] mint:border mint:border-[#f0f0f0] mint:dark:border-[#3d3d3d] mint:rounded-xl mint:p-6 mint:flex mint:flex-col mint:gap-2 mint:transition-all mint:duration-200 mint:hover:shadow-[0_4px_12px_rgba(0,0,0,0.1)] mint:dark:hover:shadow-[0_4px_12px_rgba(0,0,0,0.3)] mint:hover:border-[rgba(99,102,241,0.3)]\">\n <div className=\"mint:text-[2rem] mint:mb-2 mint:w-12 mint:h-12 mint:bg-[#f3f4f6] mint:dark:bg-black mint:rounded-lg mint:flex mint:items-center mint:justify-center mint:[&>svg]:w-6 mint:[&>svg]:h-6\">\n <DatabaseRegular />\n </div>\n <h3 className=\"mint:text-sm mint:font-semibold mint:font-['Aptos_SemiBold',sans-serif] mint:text-[#141414] mint:dark:text-white mint:m-0\">\n Generate Images with Azure OpenAI\n </h3>\n <p className=\"mint:text-sm mint:font-normal mint:text-[#616161] mint:dark:text-[#adadad] mint:font-['Aptos',sans-serif] mint:leading-5 mint:-mt-1 mint:m-0\">\n Deploy image generation models in Foundry playground. Includes\n code samples for quick integration.\n </p>\n </div>\n </div>\n </section>\n\n <section className=\"mint:mb-16 mint:px-12 mint:flex mint:flex-col mint:items-center\">\n <div className=\"mint:flex mint:justify-between mint:items-center mint:w-full mint:max-w-[800px] mint:mb-1\">\n <h2 className=\"mint:text-[20px] mint:font-semibold mint:font-['Aptos_SemiBold',sans-serif] mint:text-[#242424] mint:dark:text-white mint:m-0 mint:w-full mint:max-w-[800px] mint:text-left\">\n Explore models from popular providers\n </h2>\n <button className=\"mint:bg-transparent mint:text-[#242424] mint:dark:text-white mint:dark:border-[#666] mint:py-[0.15rem] mint:px-2 mint:rounded-full mint:text-xs mint:font-normal mint:border mint:border-[#d1d1d1] mint:cursor-pointer mint:whitespace-nowrap mint:transition-all mint:duration-200 mint:hover:bg-[#e0e0e1] mint:dark:hover:bg-[#171717]\">\n View all models\n </button>\n </div>\n <div className=\"mint:flex mint:gap-3 mint:mt-4 mint:mb-4 mint:max-w-[800px]\">\n <div className=\"mint:bg-[linear-gradient(to_bottom,rgba(255,255,255,0.7),rgba(255,255,255,0.7)),linear-gradient(135deg,#8251EE_0%,#E1CEFC_100%)] mint:dark:bg-[linear-gradient(to_bottom,rgba(0,0,0,0.6),rgba(0,0,0,0.6)),linear-gradient(135deg,#8251EE_0%,#E1CEFC_100%)] mint:dark:border-[rgba(255,255,255,0.07)] mint:rounded-xl mint:pt-6 mint:px-6 mint:pb-6 mint:h-[200px] mint:flex-1 mint:flex mint:flex-col mint:transition-all mint:duration-200 mint:box-border\">\n <div className=\"mint:w-12 mint:h-12 mint:bg-[#f3f4f6] mint:dark:bg-[#1f1f1f] mint:rounded-lg mint:flex mint:items-center mint:justify-center mint:text-[2rem] mint:text-white\">\n <img\n className=\"mint:w-8 mint:h-8 mint:object-contain\"\n src=\"https://mintlify-assets.b-cdn.net/azure-ai-foundry/Open%20AI%20logo.svg\"\n alt=\"OpenAI\"\n />\n </div>\n <h3 className=\"mint:text-sm mint:font-semibold mint:font-['Aptos_SemiBold',sans-serif] mint:leading-5 mint:text-black mint:dark:text-white mint:mt-4 mint:mb-0\">\n GPT-5\n </h3>\n <p className=\"mint:text-sm mint:font-normal mint:leading-5 mint:text-black mint:dark:text-[rgba(255,255,255,0.9)] mint:mt-2 mint:mb-0\">\n GPT-5 unifies frontier reasoning and advanced coding with\n high-performance\n </p>\n </div>\n\n <div className=\"mint:bg-[linear-gradient(to_bottom,rgba(255,255,255,0.7),rgba(255,255,255,0.7)),linear-gradient(135deg,#8251EE_0%,#E1CEFC_100%)] mint:dark:bg-[linear-gradient(to_bottom,rgba(0,0,0,0.6),rgba(0,0,0,0.6)),linear-gradient(135deg,#8251EE_0%,#E1CEFC_100%)] mint:dark:border-[rgba(255,255,255,0.07)] mint:rounded-xl mint:pt-6 mint:px-6 mint:pb-6 mint:h-[200px] mint:flex-1 mint:flex mint:flex-col mint:transition-all mint:duration-200 mint:box-border\">\n <div className=\"mint:w-12 mint:h-12 mint:bg-[#f3f4f6] mint:dark:bg-[#1f1f1f] mint:rounded-lg mint:flex mint:items-center mint:justify-center mint:text-[2rem] mint:text-white\">\n <img\n className=\"mint:w-8 mint:h-8 mint:object-contain\"\n src=\"https://mintlify-assets.b-cdn.net/azure-ai-foundry/DeepSeek.svg\"\n alt=\"DeepSeek\"\n />\n </div>\n <h3 className=\"mint:text-sm mint:font-semibold mint:font-['Aptos_SemiBold',sans-serif] mint:leading-5 mint:text-black mint:dark:text-white mint:mt-4 mint:mb-0\">\n Introducing DeepSeek-R1-0528\n </h3>\n <p className=\"mint:text-sm mint:font-normal mint:leading-5 mint:text-black mint:dark:text-[rgba(255,255,255,0.9)] mint:mt-2 mint:mb-0\">\n Improved reasoning, fewer hallucinations, better coding and\n functions\n </p>\n </div>\n\n <div className=\"mint:bg-[linear-gradient(to_bottom,rgba(255,255,255,0.7),rgba(255,255,255,0.7)),linear-gradient(135deg,#8251EE_0%,#E1CEFC_100%)] mint:dark:bg-[linear-gradient(to_bottom,rgba(0,0,0,0.6),rgba(0,0,0,0.6)),linear-gradient(135deg,#8251EE_0%,#E1CEFC_100%)] mint:dark:border-[rgba(255,255,255,0.07)] mint:rounded-xl mint:pt-6 mint:px-6 mint:pb-6 mint:h-[200px] mint:flex-1 mint:flex mint:flex-col mint:transition-all mint:duration-200 mint:box-border\">\n <div className=\"mint:w-12 mint:h-12 mint:bg-[#f3f4f6] mint:dark:bg-[#1f1f1f] mint:rounded-lg mint:flex mint:items-center mint:justify-center mint:text-[2rem] mint:text-white\">\n <img\n className=\"mint:w-8 mint:h-8 mint:object-contain\"\n src=\"https://mintlify-assets.b-cdn.net/azure-ai-foundry/Open%20AI%20logo.svg\"\n alt=\"Sora\"\n />\n </div>\n <h3 className=\"mint:text-sm mint:font-semibold mint:font-['Aptos_SemiBold',sans-serif] mint:leading-5 mint:text-black mint:dark:text-white mint:mt-4 mint:mb-0\">\n Sora\n </h3>\n <p className=\"mint:text-sm mint:font-normal mint:leading-5 mint:text-black mint:dark:text-[rgba(255,255,255,0.9)] mint:mt-2 mint:mb-0\">\n Generate up to 20s 1080p videos with Sora and its unique API:\n text-to-video now, image...\n </p>\n </div>\n </div>\n </section>\n\n <section className=\"mint:flex mint:gap-12 mint:flex-wrap mint:justify-center mint:px-8 mint:mt-8 mint:mb-8\">\n <div className=\"mint:flex mint:flex-col mint:items-center mint:text-center\">\n <div className=\"mint:mb-8 mint:w-8 mint:h-8\">\n <img\n className=\"mint:block dark:!mint:hidden mint:w-8 mint:h-8\"\n src=\"https://mintlify-assets.b-cdn.net/azure-ai-foundry/Github.svg\"\n alt=\"GitHub\"\n />\n <img\n className=\"!mint:hidden dark:!mint:block mint:w-8 mint:h-8\"\n src=\"https://mintlify-assets.b-cdn.net/azure-ai-foundry/Github-dark.svg\"\n alt=\"GitHub\"\n />\n </div>\n <LinkElement\n href=\"https://github.com/azure-ai-foundry\"\n className=\"mint:text-sm mint:font-medium mint:font-['Aptos_SemiBold',sans-serif] mint:text-[#643fb2] mint:dark:text-[#c9aaf9] mint:no-underline mint:inline-flex mint:items-center mint:justify-center mint:gap-1 mint:transition-colors mint:duration-200 mint:hover:text-[#4f46e5] mint:dark:hover:text-[#a5b4fc]\"\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n >\n GitHub\n <div className=\"mint:w-3.5 mint:h-3.5 mint:flex-shrink-0 mint:flex mint:items-center mint:justify-center\">\n <img\n className=\"mint:block dark:!mint:hidden mint:w-full mint:h-full\"\n src=\"https://mintlify-assets.b-cdn.net/azure-ai-foundry/Open.svg\"\n alt=\"External link\"\n />\n <img\n className=\"!mint:hidden dark:!mint:block mint:w-full mint:h-full\"\n src=\"https://mintlify-assets.b-cdn.net/azure-ai-foundry/Open%20(1).svg\"\n alt=\"External link\"\n />\n </div>\n </LinkElement>\n <p className=\"mint:text-sm mint:text-[#424242] mint:dark:text-[#d6d6d6] mint:leading-[1.5] mint:m-0 mint:max-w-[300px]\">\n Get the latest SDK updates and <br /> code samples on GitHub.\n </p>\n </div>\n <div className=\"mint:flex mint:flex-col mint:items-center mint:text-center\">\n <div className=\"mint:mb-8 mint:w-8 mint:h-8\">\n <img\n className=\"mint:block dark:!mint:hidden mint:w-8 mint:h-8\"\n src=\"https://mintlify-assets.b-cdn.net/azure-ai-foundry/Discord_Light.svg\"\n alt=\"Discord\"\n />\n <img\n className=\"!mint:hidden dark:!mint:block mint:w-8 mint:h-8\"\n src=\"https://mintlify-assets.b-cdn.net/azure-ai-foundry/Discord_Dark.svg\"\n alt=\"Discord\"\n />\n </div>\n <LinkElement\n href=\"https://discord.com/invite/azureaifoundry\"\n className=\"mint:text-sm mint:font-medium mint:font-['Aptos_SemiBold',sans-serif] mint:text-[#643fb2] mint:dark:text-[#c9aaf9] mint:no-underline mint:inline-flex mint:items-center mint:justify-center mint:gap-1 mint:transition-colors mint:duration-200 mint:hover:text-[#4f46e5] mint:dark:hover:text-[#a5b4fc]\"\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n >\n Discord\n <div className=\"mint:w-3.5 mint:h-3.5 mint:flex-shrink-0 mint:flex mint:items-center mint:justify-center\">\n <img\n className=\"mint:block dark:!mint:hidden mint:w-full mint:h-full\"\n src=\"https://mintlify-assets.b-cdn.net/azure-ai-foundry/Open.svg\"\n alt=\"External link\"\n />\n <img\n className=\"!mint:hidden dark:!mint:block mint:w-full mint:h-full\"\n src=\"https://mintlify-assets.b-cdn.net/azure-ai-foundry/Open%20(1).svg\"\n alt=\"External link\"\n />\n </div>\n </LinkElement>\n <p className=\"mint:text-sm mint:text-[#424242] mint:dark:text-[#d6d6d6] mint:leading-[1.5] mint:m-0 mint:max-w-[300px]\">\n Have questions? Join and connect <br /> with our Discord community.\n </p>\n </div>\n <div className=\"mint:flex mint:flex-col mint:items-center mint:text-center\">\n <div className=\"mint:mb-8 mint:w-8 mint:h-8\">\n <img\n className=\"mint:block dark:!mint:hidden mint:w-8 mint:h-8\"\n src=\"https://mintlify-assets.b-cdn.net/azure-ai-foundry/Shape.svg\"\n alt=\"Blog\"\n />\n <img\n className=\"!mint:hidden dark:!mint:block mint:w-8 mint:h-8\"\n src=\"https://mintlify-assets.b-cdn.net/azure-ai-foundry/Shape%20(1).svg\"\n alt=\"Blog\"\n />\n </div>\n <LinkElement\n href=\"https://devblogs.microsoft.com/foundry/\"\n className=\"mint:text-sm mint:font-medium mint:font-['Aptos_SemiBold',sans-serif] mint:text-[#643fb2] mint:dark:text-[#c9aaf9] mint:no-underline mint:inline-flex mint:items-center mint:justify-center mint:gap-1 mint:transition-colors mint:duration-200 mint:hover:text-[#4f46e5] mint:dark:hover:text-[#a5b4fc]\"\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n >\n Blog\n <div className=\"mint:w-3.5 mint:h-3.5 mint:flex-shrink-0 mint:flex mint:items-center mint:justify-center\">\n <img\n className=\"mint:block dark:!mint:hidden mint:w-full mint:h-full\"\n src=\"https://mintlify-assets.b-cdn.net/azure-ai-foundry/Open.svg\"\n alt=\"External link\"\n />\n <img\n className=\"!mint:hidden dark:!mint:block mint:w-full mint:h-full\"\n src=\"https://mintlify-assets.b-cdn.net/azure-ai-foundry/Open%20(1).svg\"\n alt=\"External link\"\n />\n </div>\n </LinkElement>\n <p className=\"mint:text-sm mint:text-[#424242] mint:dark:text-[#d6d6d6] mint:leading-[1.5] mint:m-0 mint:max-w-[300px]\">\n Read updates and insights on <br /> Foundry DevBlog.\n </p>\n </div>\n </section>\n </div>\n );\n};\n"],"names":["Home","LinkComponent","useComponents","LinkElement","jsxs","jsx","FlowSparkleRegular","ChatSparkleRegular","AgentsRegular","DatabaseRegular"],"mappings":"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"}
1
+ {"version":3,"file":"home.js","sources":["../../../src/components/content-components/home.tsx"],"sourcesContent":["import React from \"react\";\nimport { useComponents } from \"../../context/components-context\";\nimport {\n AgentsRegular,\n FlowSparkleRegular,\n ChatSparkleRegular,\n DatabaseRegular,\n} from \"@fluentui/react-icons\";\nimport { cn } from \"../../utils/cn\";\n\nexport const Home = () => {\n const { LinkComponent } = useComponents();\n const LinkElement = LinkComponent || \"a\";\n\n return (\n <div className=\"mint:w-full mint:max-w-none mint:!m-0 mint:!p-0 mint:font-['Aptos',sans-serif] mint:box-border mint:relative mint:[&_*]:box-border\">\n <section className=\"mint:relative mint:left-[-4rem] mint:top-[-2rem] mint:min-h-[316px] mint:h-[316px] mint:m-0 mint:p-12 mint:pr-16 mint:w-[calc(100%+8rem)] mint:flex mint:items-start mint:justify-start mint:gap-16 mint:!bg-[#fafafa] mint:dark:!bg-[#141414] mint:overflow-hidden\">\n <div\n className=\"mint:block mint:dark:hidden mint:absolute mint:top-0 mint:left-0 mint:right-0 mint:bottom-0 mint:bg-cover mint:bg-center mint:bg-no-repeat mint:pointer-events-none\"\n style={{\n backgroundImage:\n \"url(https://mintlify-assets.b-cdn.net/azure-ai-foundry/landing-background-light.svg)\",\n height: \"24rem\",\n }}\n />\n <div\n className=\"mint:hidden mint:dark:block mint:absolute mint:top-0 mint:left-0 mint:right-0 mint:bottom-0 mint:bg-cover mint:bg-center mint:bg-no-repeat mint:pointer-events-none\"\n style={{\n backgroundImage:\n \"url(https://mintlify-assets.b-cdn.net/azure-ai-foundry/landing-background-dark.svg)\",\n height: \"24rem\",\n }}\n />\n <div className=\"mint:relative mint:flex mint:flex-col mint:gap-4 mint:z-[1] mint:flex-1 mint:max-w-[450px] mint:ml-[8.5rem] mint:mt-8\">\n <h1 className=\"mint:text-[28px] mint:font-normal mint:text-[#242424] mint:dark:text-white mint:m-0 mint:leading-9\">\n Foundry quick start\n </h1>\n <p className=\"mint:text-sm mint:text-[#424242] mint:dark:text-[#d6d6d6] mint:leading-5 mint:m-0\">\n Learn how to get started with Azure AI Foundry by <br /> creating a\n project, deploying a model, and running <br /> your first chat\n completion.\n </p>\n <button className=\"mint:bg-[#643fb2] mint:hover:bg-[#7450d0] mint:text-white mint:py-1 mint:px-3 mint:rounded-lg mint:text-xs mint:font-normal mint:rounded-full mint:border-none mint:cursor-pointer mint:w-fit\">\n Get started\n </button>\n </div>\n </section>\n\n <section className=\"mint:mb-16 mint:mt-4 mint:px-12 mint:flex mint:flex-col mint:items-center\">\n <h2 className=\"mint:text-[20px] mint:font-semibold mint:font-['Aptos_SemiBold',sans-serif] mint:text-[#242424] mint:dark:text-white mint:m-0 mint:w-full mint:max-w-[800px] mint:text-left\">\n Learn more\n </h2>\n <div className=\"mint:grid mint:grid-cols-2 mint:gap-3 mint:mt-4 mint:max-w-[800px]\">\n <div className=\"mint:bg-[#fafafa] mint:dark:bg-[#1a1a1a] mint:border mint:border-[#f0f0f0] mint:dark:border-[#3d3d3d] mint:rounded-xl mint:p-6 mint:flex mint:flex-col mint:gap-2 mint:transition-all mint:duration-200 mint:hover:shadow-[0_4px_12px_rgba(0,0,0,0.1)] mint:dark:hover:shadow-[0_4px_12px_rgba(0,0,0,0.3)] mint:hover:border-[rgba(99,102,241,0.3)]\">\n <div className=\"mint:text-[2rem] mint:mb-2 mint:w-12 mint:h-12 mint:bg-[#f3f4f6] mint:dark:bg-black mint:rounded-lg mint:flex mint:items-center mint:justify-center mint:[&>svg]:w-6 mint:[&>svg]:h-6\">\n <FlowSparkleRegular />\n </div>\n <h3 className=\"mint:text-sm mint:font-semibold mint:font-['Aptos_SemiBold',sans-serif] mint:text-[#141414] mint:dark:text-white mint:m-0\">\n Build your first AI app\n </h3>\n <p className=\"mint:text-sm mint:font-normal mint:text-[#616161] mint:dark:text-[#adadad] mint:font-['Aptos',sans-serif] mint:leading-5 mint:-mt-1 mint:m-0\">\n Create a Foundry project and deploy a model. Includes SDK samples\n for multiple programming languages.\n </p>\n </div>\n\n <div className=\"mint:bg-[#fafafa] mint:dark:bg-[#1a1a1a] mint:border mint:border-[#f0f0f0] mint:dark:border-[#3d3d3d] mint:rounded-xl mint:p-6 mint:flex mint:flex-col mint:gap-2 mint:transition-all mint:duration-200 mint:hover:shadow-[0_4px_12px_rgba(0,0,0,0.1)] mint:dark:hover:shadow-[0_4px_12px_rgba(0,0,0,0.3)] mint:hover:border-[rgba(99,102,241,0.3)]\">\n <div className=\"mint:text-[2rem] mint:mb-2 mint:w-12 mint:h-12 mint:bg-[#f3f4f6] mint:dark:bg-black mint:rounded-lg mint:flex mint:items-center mint:justify-center mint:[&>svg]:w-6 mint:[&>svg]:h-6\">\n <ChatSparkleRegular />\n </div>\n <h3 className=\"mint:text-sm mint:font-semibold mint:font-['Aptos_SemiBold',sans-serif] mint:text-[#141414] mint:dark:text-white mint:m-0\">\n Get answers in chat playground\n </h3>\n <p className=\"mint:text-sm mint:font-normal mint:text-[#616161] mint:dark:text-[#adadad] mint:font-['Aptos',sans-serif] mint:leading-5 mint:-mt-1 mint:m-0\">\n Interact with deployed models in the playground. Configure prompts\n and test responses in a no-code UI.\n </p>\n </div>\n\n <div className=\"mint:bg-[#fafafa] mint:dark:bg-[#1a1a1a] mint:border mint:border-[#f0f0f0] mint:dark:border-[#3d3d3d] mint:rounded-xl mint:p-6 mint:flex mint:flex-col mint:gap-2 mint:transition-all mint:duration-200 mint:hover:shadow-[0_4px_12px_rgba(0,0,0,0.1)] mint:dark:hover:shadow-[0_4px_12px_rgba(0,0,0,0.3)] mint:hover:border-[rgba(99,102,241,0.3)]\">\n <div className=\"mint:text-[2rem] mint:mb-2 mint:w-12 mint:h-12 mint:bg-[#f3f4f6] mint:dark:bg-black mint:rounded-lg mint:flex mint:items-center mint:justify-center mint:[&>svg]:w-6 mint:[&>svg]:h-6\">\n <AgentsRegular />\n </div>\n <h3 className=\"mint:text-sm mint:font-semibold mint:font-['Aptos_SemiBold',sans-serif] mint:text-[#141414] mint:dark:text-white mint:m-0\">\n Develop an AI agent\n </h3>\n <p className=\"mint:text-sm mint:font-normal mint:text-[#616161] mint:dark:text-[#adadad] mint:font-['Aptos',sans-serif] mint:leading-5 mint:-mt-1 mint:m-0\">\n Launch image generation models in Foundry playground. Easily\n integrate with code samples.\n </p>\n </div>\n\n <div className=\"mint:bg-[#fafafa] mint:dark:bg-[#1a1a1a] mint:border mint:border-[#f0f0f0] mint:dark:border-[#3d3d3d] mint:rounded-xl mint:p-6 mint:flex mint:flex-col mint:gap-2 mint:transition-all mint:duration-200 mint:hover:shadow-[0_4px_12px_rgba(0,0,0,0.1)] mint:dark:hover:shadow-[0_4px_12px_rgba(0,0,0,0.3)] mint:hover:border-[rgba(99,102,241,0.3)]\">\n <div className=\"mint:text-[2rem] mint:mb-2 mint:w-12 mint:h-12 mint:bg-[#f3f4f6] mint:dark:bg-black mint:rounded-lg mint:flex mint:items-center mint:justify-center mint:[&>svg]:w-6 mint:[&>svg]:h-6\">\n <DatabaseRegular />\n </div>\n <h3 className=\"mint:text-sm mint:font-semibold mint:font-['Aptos_SemiBold',sans-serif] mint:text-[#141414] mint:dark:text-white mint:m-0\">\n Generate Images with Azure OpenAI\n </h3>\n <p className=\"mint:text-sm mint:font-normal mint:text-[#616161] mint:dark:text-[#adadad] mint:font-['Aptos',sans-serif] mint:leading-5 mint:-mt-1 mint:m-0\">\n Deploy image generation models in Foundry playground. Includes\n code samples for quick integration.\n </p>\n </div>\n </div>\n </section>\n\n <section className=\"mint:mb-16 mint:px-12 mint:flex mint:flex-col mint:items-center\">\n <div className=\"mint:flex mint:justify-between mint:items-center mint:w-full mint:max-w-[800px] mint:mb-1\">\n <h2 className=\"mint:text-[20px] mint:font-semibold mint:font-['Aptos_SemiBold',sans-serif] mint:text-[#242424] mint:dark:text-white mint:m-0 mint:w-full mint:max-w-[800px] mint:text-left\">\n Explore models from popular providers\n </h2>\n <button className=\"mint:bg-transparent mint:text-[#242424] mint:dark:text-white mint:dark:border-[#666] mint:py-[0.15rem] mint:px-2 mint:rounded-full mint:text-xs mint:font-normal mint:border mint:border-[#d1d1d1] mint:cursor-pointer mint:whitespace-nowrap mint:transition-all mint:duration-200 mint:hover:bg-[#e0e0e1] mint:dark:hover:bg-[#171717]\">\n View all models\n </button>\n </div>\n <div className=\"mint:flex mint:gap-3 mint:mt-4 mint:mb-4 mint:max-w-[800px]\">\n <div className=\"mint:bg-[linear-gradient(to_bottom,rgba(255,255,255,0.7),rgba(255,255,255,0.7)),linear-gradient(135deg,#8251EE_0%,#E1CEFC_100%)] mint:dark:bg-[linear-gradient(to_bottom,rgba(0,0,0,0.6),rgba(0,0,0,0.6)),linear-gradient(135deg,#8251EE_0%,#E1CEFC_100%)] mint:dark:border-[rgba(255,255,255,0.07)] mint:rounded-xl mint:pt-6 mint:px-6 mint:pb-6 mint:h-[200px] mint:flex-1 mint:flex mint:flex-col mint:transition-all mint:duration-200 mint:box-border\">\n <div className=\"mint:w-12 mint:h-12 mint:bg-[#f3f4f6] mint:dark:bg-[#1f1f1f] mint:rounded-lg mint:flex mint:items-center mint:justify-center mint:text-[2rem] mint:text-white\">\n <img\n className=\"mint:w-8 mint:h-8 mint:object-contain\"\n src=\"https://mintlify-assets.b-cdn.net/azure-ai-foundry/Open%20AI%20logo.svg\"\n alt=\"OpenAI\"\n />\n </div>\n <h3 className=\"mint:text-sm mint:font-semibold mint:font-['Aptos_SemiBold',sans-serif] mint:leading-5 mint:text-black mint:dark:text-white mint:mt-4 mint:mb-0\">\n GPT-5\n </h3>\n <p className=\"mint:text-sm mint:font-normal mint:leading-5 mint:text-black mint:dark:text-[rgba(255,255,255,0.9)] mint:mt-2 mint:mb-0\">\n GPT-5 unifies frontier reasoning and advanced coding with\n high-performance\n </p>\n </div>\n\n <div className=\"mint:bg-[linear-gradient(to_bottom,rgba(255,255,255,0.7),rgba(255,255,255,0.7)),linear-gradient(135deg,#8251EE_0%,#E1CEFC_100%)] mint:dark:bg-[linear-gradient(to_bottom,rgba(0,0,0,0.6),rgba(0,0,0,0.6)),linear-gradient(135deg,#8251EE_0%,#E1CEFC_100%)] mint:dark:border-[rgba(255,255,255,0.07)] mint:rounded-xl mint:pt-6 mint:px-6 mint:pb-6 mint:h-[200px] mint:flex-1 mint:flex mint:flex-col mint:transition-all mint:duration-200 mint:box-border\">\n <div className=\"mint:w-12 mint:h-12 mint:bg-[#f3f4f6] mint:dark:bg-[#1f1f1f] mint:rounded-lg mint:flex mint:items-center mint:justify-center mint:text-[2rem] mint:text-white\">\n <img\n className=\"mint:w-8 mint:h-8 mint:object-contain\"\n src=\"https://mintlify-assets.b-cdn.net/azure-ai-foundry/DeepSeek.svg\"\n alt=\"DeepSeek\"\n />\n </div>\n <h3 className=\"mint:text-sm mint:font-semibold mint:font-['Aptos_SemiBold',sans-serif] mint:leading-5 mint:text-black mint:dark:text-white mint:mt-4 mint:mb-0\">\n Introducing DeepSeek-R1-0528\n </h3>\n <p className=\"mint:text-sm mint:font-normal mint:leading-5 mint:text-black mint:dark:text-[rgba(255,255,255,0.9)] mint:mt-2 mint:mb-0\">\n Improved reasoning, fewer hallucinations, better coding and\n functions\n </p>\n </div>\n\n <div className=\"mint:bg-[linear-gradient(to_bottom,rgba(255,255,255,0.7),rgba(255,255,255,0.7)),linear-gradient(135deg,#8251EE_0%,#E1CEFC_100%)] mint:dark:bg-[linear-gradient(to_bottom,rgba(0,0,0,0.6),rgba(0,0,0,0.6)),linear-gradient(135deg,#8251EE_0%,#E1CEFC_100%)] mint:dark:border-[rgba(255,255,255,0.07)] mint:rounded-xl mint:pt-6 mint:px-6 mint:pb-6 mint:h-[200px] mint:flex-1 mint:flex mint:flex-col mint:transition-all mint:duration-200 mint:box-border\">\n <div className=\"mint:w-12 mint:h-12 mint:bg-[#f3f4f6] mint:dark:bg-[#1f1f1f] mint:rounded-lg mint:flex mint:items-center mint:justify-center mint:text-[2rem] mint:text-white\">\n <img\n className=\"mint:w-8 mint:h-8 mint:object-contain\"\n src=\"https://mintlify-assets.b-cdn.net/azure-ai-foundry/Open%20AI%20logo.svg\"\n alt=\"Sora\"\n />\n </div>\n <h3 className=\"mint:text-sm mint:font-semibold mint:font-['Aptos_SemiBold',sans-serif] mint:leading-5 mint:text-black mint:dark:text-white mint:mt-4 mint:mb-0\">\n Sora\n </h3>\n <p className=\"mint:text-sm mint:font-normal mint:leading-5 mint:text-black mint:dark:text-[rgba(255,255,255,0.9)] mint:mt-2 mint:mb-0\">\n Generate up to 20s 1080p videos with Sora and its unique API:\n text-to-video now, image...\n </p>\n </div>\n </div>\n </section>\n\n <section className=\"mint:flex mint:gap-12 mint:flex-wrap mint:justify-center mint:px-8 mint:mt-8 mint:mb-8\">\n <div className=\"mint:flex mint:flex-col mint:items-center mint:text-center\">\n <div className=\"mint:mb-8 mint:w-8 mint:h-8\">\n <img\n className=\"mint:block mint:dark:!hidden mint:w-8 mint:h-8\"\n src=\"https://mintlify-assets.b-cdn.net/azure-ai-foundry/Github.svg\"\n alt=\"GitHub\"\n />\n <img\n className=\"mint:!hidden mint:dark:!block mint:w-8 mint:h-8\"\n src=\"https://mintlify-assets.b-cdn.net/azure-ai-foundry/Github-dark.svg\"\n alt=\"GitHub\"\n />\n </div>\n <LinkElement\n href=\"https://github.com/azure-ai-foundry\"\n className=\"mint:text-sm mint:font-medium mint:font-['Aptos_SemiBold',sans-serif] mint:text-[#643fb2] mint:dark:text-[#c9aaf9] mint:no-underline mint:inline-flex mint:items-center mint:justify-center mint:gap-1 mint:transition-colors mint:duration-200 mint:hover:text-[#4f46e5] mint:dark:hover:text-[#a5b4fc]\"\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n >\n GitHub\n <div className=\"mint:w-3.5 mint:h-3.5 mint:flex-shrink-0 mint:flex mint:items-center mint:justify-center\">\n <img\n className=\"mint:block mint:dark:!hidden mint:w-full mint:h-full\"\n src=\"https://mintlify-assets.b-cdn.net/azure-ai-foundry/Open.svg\"\n alt=\"External link\"\n />\n <img\n className=\"mint:!hidden mint:dark:!block mint:w-full mint:h-full\"\n src=\"https://mintlify-assets.b-cdn.net/azure-ai-foundry/Open%20(1).svg\"\n alt=\"External link\"\n />\n </div>\n </LinkElement>\n <p className=\"mint:text-sm mint:text-[#424242] mint:dark:text-[#d6d6d6] mint:leading-[1.5] mint:m-0 mint:max-w-[300px]\">\n Get the latest SDK updates and <br /> code samples on GitHub.\n </p>\n </div>\n <div className=\"mint:flex mint:flex-col mint:items-center mint:text-center\">\n <div className=\"mint:mb-8 mint:w-8 mint:h-8\">\n <img\n className=\"mint:block mint:dark:!hidden mint:w-8 mint:h-8\"\n src=\"https://mintlify-assets.b-cdn.net/azure-ai-foundry/Discord_Light.svg\"\n alt=\"Discord\"\n />\n <img\n className=\"mint:!hidden mint:dark:!block mint:w-8 mint:h-8\"\n src=\"https://mintlify-assets.b-cdn.net/azure-ai-foundry/Discord_Dark.svg\"\n alt=\"Discord\"\n />\n </div>\n <LinkElement\n href=\"https://discord.com/invite/azureaifoundry\"\n className=\"mint:text-sm mint:font-medium mint:font-['Aptos_SemiBold',sans-serif] mint:text-[#643fb2] mint:dark:text-[#c9aaf9] mint:no-underline mint:inline-flex mint:items-center mint:justify-center mint:gap-1 mint:transition-colors mint:duration-200 mint:hover:text-[#4f46e5] mint:dark:hover:text-[#a5b4fc]\"\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n >\n Discord\n <div className=\"mint:w-3.5 mint:h-3.5 mint:flex-shrink-0 mint:flex mint:items-center mint:justify-center\">\n <img\n className=\"mint:block mint:dark:!hidden mint:w-full mint:h-full\"\n src=\"https://mintlify-assets.b-cdn.net/azure-ai-foundry/Open.svg\"\n alt=\"External link\"\n />\n <img\n className=\"mint:!hidden mint:dark:!block mint:w-full mint:h-full\"\n src=\"https://mintlify-assets.b-cdn.net/azure-ai-foundry/Open%20(1).svg\"\n alt=\"External link\"\n />\n </div>\n </LinkElement>\n <p className=\"mint:text-sm mint:text-[#424242] mint:dark:text-[#d6d6d6] mint:leading-[1.5] mint:m-0 mint:max-w-[300px]\">\n Have questions? Join and connect <br /> with our Discord community.\n </p>\n </div>\n <div className=\"mint:flex mint:flex-col mint:items-center mint:text-center\">\n <div className=\"mint:mb-8 mint:w-8 mint:h-8\">\n <img\n className=\"mint:block mint:dark:!hidden mint:w-8 mint:h-8\"\n src=\"https://mintlify-assets.b-cdn.net/azure-ai-foundry/Shape.svg\"\n alt=\"Blog\"\n />\n <img\n className=\"mint:!hidden mint:dark:!block mint:w-8 mint:h-8\"\n src=\"https://mintlify-assets.b-cdn.net/azure-ai-foundry/Shape%20(1).svg\"\n alt=\"Blog\"\n />\n </div>\n <LinkElement\n href=\"https://devblogs.microsoft.com/foundry/\"\n className=\"mint:text-sm mint:font-medium mint:font-['Aptos_SemiBold',sans-serif] mint:text-[#643fb2] mint:dark:text-[#c9aaf9] mint:no-underline mint:inline-flex mint:items-center mint:justify-center mint:gap-1 mint:transition-colors mint:duration-200 mint:hover:text-[#4f46e5] mint:dark:hover:text-[#a5b4fc]\"\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n >\n Blog\n <div className=\"mint:w-3.5 mint:h-3.5 mint:flex-shrink-0 mint:flex mint:items-center mint:justify-center\">\n <img\n className=\"mint:block mint:dark:!hidden mint:w-full mint:h-full\"\n src=\"https://mintlify-assets.b-cdn.net/azure-ai-foundry/Open.svg\"\n alt=\"External link\"\n />\n <img\n className=\"mint:!hidden mint:dark:!block mint:w-full mint:h-full\"\n src=\"https://mintlify-assets.b-cdn.net/azure-ai-foundry/Open%20(1).svg\"\n alt=\"External link\"\n />\n </div>\n </LinkElement>\n <p className=\"mint:text-sm mint:text-[#424242] mint:dark:text-[#d6d6d6] mint:leading-[1.5] mint:m-0 mint:max-w-[300px]\">\n Read updates and insights on <br /> Foundry DevBlog.\n </p>\n </div>\n </section>\n </div>\n );\n};\n"],"names":["Home","LinkComponent","useComponents","LinkElement","jsxs","jsx","FlowSparkleRegular","ChatSparkleRegular","AgentsRegular","DatabaseRegular"],"mappings":"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"}
@@ -0,0 +1,80 @@
1
+ import { jsxs as d, Fragment as u, jsx as l } from "react/jsx-runtime";
2
+ import { useState as f, useRef as o, useEffect as r } from "react";
3
+ import { cn as v } from "../../utils/cn.js";
4
+ function w({ isOpen: e, onClose: n, src: i, alt: m }) {
5
+ const c = o(null), a = o(null);
6
+ return r(() => {
7
+ var t;
8
+ return e ? (a.current = document.activeElement, document.body.style.overflow = "hidden") : (document.body.style.overflow = "unset", (t = a.current) == null || t.focus()), () => {
9
+ document.body.style.overflow = "unset";
10
+ };
11
+ }, [e]), r(() => {
12
+ const t = (s) => {
13
+ s.key === "Escape" && n();
14
+ };
15
+ return e && window.addEventListener("keydown", t), () => {
16
+ window.removeEventListener("keydown", t);
17
+ };
18
+ }, [e, n]), e ? /* @__PURE__ */ l(
19
+ "div",
20
+ {
21
+ className: "mint:fixed mint:inset-0 mint:flex mint:items-center mint:justify-center mint:p-4 mint:bg-black/80 mint:backdrop-blur-sm",
22
+ onClick: n,
23
+ role: "dialog",
24
+ "aria-modal": "true",
25
+ "aria-label": "Expanded image view",
26
+ style: { zIndex: 9999 },
27
+ children: /* @__PURE__ */ l(
28
+ "div",
29
+ {
30
+ ref: c,
31
+ className: "mint:relative mint:max-w-[95vw] mint:max-h-[95vh] mint:flex mint:items-center mint:justify-center",
32
+ onClick: (t) => t.stopPropagation(),
33
+ children: /* @__PURE__ */ l(
34
+ "img",
35
+ {
36
+ src: i,
37
+ alt: m,
38
+ className: "mint:max-w-full mint:max-h-[95vh] mint:object-contain mint:rounded-lg"
39
+ }
40
+ )
41
+ }
42
+ )
43
+ }
44
+ ) : null;
45
+ }
46
+ function g(e) {
47
+ const [n, i] = f(!1);
48
+ return /* @__PURE__ */ d(u, { children: [
49
+ /* @__PURE__ */ l(
50
+ "img",
51
+ {
52
+ ...e,
53
+ className: v(
54
+ "mint:max-w-full mint:h-auto mint:object-contain mint:cursor-zoom-in mint:rounded-lg",
55
+ e.className
56
+ ),
57
+ onClick: () => i(!0),
58
+ onKeyDown: (m) => {
59
+ (m.key === "Enter" || m.key === " ") && (m.preventDefault(), i(!0));
60
+ },
61
+ tabIndex: 0,
62
+ role: "button",
63
+ "aria-label": `${e.alt || "Image"} - Click to enlarge`
64
+ }
65
+ ),
66
+ e.src && /* @__PURE__ */ l(
67
+ w,
68
+ {
69
+ isOpen: n,
70
+ onClose: () => i(!1),
71
+ src: e.src,
72
+ alt: e.alt || ""
73
+ }
74
+ )
75
+ ] });
76
+ }
77
+ export {
78
+ g as Image
79
+ };
80
+ //# sourceMappingURL=image.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"image.js","sources":["../../../src/components/content-components/image.tsx"],"sourcesContent":["import React, { useState, useEffect, useRef } from \"react\";\nimport { cn } from \"../../utils/cn\";\n\ninterface ImageModalProps {\n isOpen: boolean;\n onClose: () => void;\n src: string;\n alt: string;\n}\n\nfunction ImageModal({ isOpen, onClose, src, alt }: ImageModalProps) {\n const modalRef = useRef<HTMLDivElement>(null);\n const previousActiveElement = useRef<HTMLElement | null>(null);\n\n useEffect(() => {\n if (isOpen) {\n previousActiveElement.current = document.activeElement as HTMLElement;\n document.body.style.overflow = \"hidden\";\n } else {\n document.body.style.overflow = \"unset\";\n previousActiveElement.current?.focus();\n }\n\n return () => {\n document.body.style.overflow = \"unset\";\n };\n }, [isOpen]);\n\n useEffect(() => {\n const handleEscape = (e: KeyboardEvent) => {\n if (e.key === \"Escape\") {\n onClose();\n }\n };\n\n if (isOpen) {\n window.addEventListener(\"keydown\", handleEscape);\n }\n\n return () => {\n window.removeEventListener(\"keydown\", handleEscape);\n };\n }, [isOpen, onClose]);\n\n if (!isOpen) return null;\n\n return (\n <div\n className=\"mint:fixed mint:inset-0 mint:flex mint:items-center mint:justify-center mint:p-4 mint:bg-black/80 mint:backdrop-blur-sm\"\n onClick={onClose}\n role=\"dialog\"\n aria-modal=\"true\"\n aria-label=\"Expanded image view\"\n style={{ zIndex: 9999 }}\n >\n <div\n ref={modalRef}\n className=\"mint:relative mint:max-w-[95vw] mint:max-h-[95vh] mint:flex mint:items-center mint:justify-center\"\n onClick={(e) => e.stopPropagation()}\n >\n <img\n src={src}\n alt={alt}\n className=\"mint:max-w-full mint:max-h-[95vh] mint:object-contain mint:rounded-lg\"\n />\n </div>\n </div>\n );\n}\n\nexport function Image(props: React.ImgHTMLAttributes<HTMLImageElement>) {\n const [isModalOpen, setIsModalOpen] = useState(false);\n\n return (\n <>\n <img\n {...props}\n className={cn(\n \"mint:max-w-full mint:h-auto mint:object-contain mint:cursor-zoom-in mint:rounded-lg\",\n props.className\n )}\n onClick={() => setIsModalOpen(true)}\n onKeyDown={(e) => {\n if (e.key === \"Enter\" || e.key === \" \") {\n e.preventDefault();\n setIsModalOpen(true);\n }\n }}\n tabIndex={0}\n role=\"button\"\n aria-label={`${props.alt || \"Image\"} - Click to enlarge`}\n />\n {props.src && (\n <ImageModal\n isOpen={isModalOpen}\n onClose={() => setIsModalOpen(false)}\n src={props.src}\n alt={props.alt || \"\"}\n />\n )}\n </>\n );\n}\n"],"names":["ImageModal","isOpen","onClose","src","alt","modalRef","useRef","previousActiveElement","useEffect","_a","handleEscape","e","jsx","Image","props","isModalOpen","setIsModalOpen","useState","jsxs","Fragment","cn"],"mappings":";;;AAUA,SAASA,EAAW,EAAE,QAAAC,GAAQ,SAAAC,GAAS,KAAAC,GAAK,KAAAC,KAAwB;AAClE,QAAMC,IAAWC,EAAuB,IAAI,GACtCC,IAAwBD,EAA2B,IAAI;AAgC7D,SA9BAE,EAAU,MAAM;;AACd,WAAIP,KACFM,EAAsB,UAAU,SAAS,eACzC,SAAS,KAAK,MAAM,WAAW,aAE/B,SAAS,KAAK,MAAM,WAAW,UAC/BE,IAAAF,EAAsB,YAAtB,QAAAE,EAA+B,UAG1B,MAAM;AACX,eAAS,KAAK,MAAM,WAAW;AAAA,IACjC;AAAA,EACF,GAAG,CAACR,CAAM,CAAC,GAEXO,EAAU,MAAM;AACd,UAAME,IAAe,CAACC,MAAqB;AACzC,MAAIA,EAAE,QAAQ,YACZT,EAAA;AAAA,IAEJ;AAEA,WAAID,KACF,OAAO,iBAAiB,WAAWS,CAAY,GAG1C,MAAM;AACX,aAAO,oBAAoB,WAAWA,CAAY;AAAA,IACpD;AAAA,EACF,GAAG,CAACT,GAAQC,CAAO,CAAC,GAEfD,IAGH,gBAAAW;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAU;AAAA,MACV,SAASV;AAAA,MACT,MAAK;AAAA,MACL,cAAW;AAAA,MACX,cAAW;AAAA,MACX,OAAO,EAAE,QAAQ,KAAA;AAAA,MAEjB,UAAA,gBAAAU;AAAA,QAAC;AAAA,QAAA;AAAA,UACC,KAAKP;AAAA,UACL,WAAU;AAAA,UACV,SAAS,CAACM,MAAMA,EAAE,gBAAA;AAAA,UAElB,UAAA,gBAAAC;AAAA,YAAC;AAAA,YAAA;AAAA,cACC,KAAAT;AAAA,cACA,KAAAC;AAAA,cACA,WAAU;AAAA,YAAA;AAAA,UAAA;AAAA,QACZ;AAAA,MAAA;AAAA,IACF;AAAA,EAAA,IArBgB;AAwBtB;AAEO,SAASS,EAAMC,GAAkD;AACtE,QAAM,CAACC,GAAaC,CAAc,IAAIC,EAAS,EAAK;AAEpD,SACE,gBAAAC,EAAAC,GAAA,EACE,UAAA;AAAA,IAAA,gBAAAP;AAAA,MAAC;AAAA,MAAA;AAAA,QACE,GAAGE;AAAA,QACJ,WAAWM;AAAA,UACT;AAAA,UACAN,EAAM;AAAA,QAAA;AAAA,QAER,SAAS,MAAME,EAAe,EAAI;AAAA,QAClC,WAAW,CAACL,MAAM;AAChB,WAAIA,EAAE,QAAQ,WAAWA,EAAE,QAAQ,SACjCA,EAAE,eAAA,GACFK,EAAe,EAAI;AAAA,QAEvB;AAAA,QACA,UAAU;AAAA,QACV,MAAK;AAAA,QACL,cAAY,GAAGF,EAAM,OAAO,OAAO;AAAA,MAAA;AAAA,IAAA;AAAA,IAEpCA,EAAM,OACL,gBAAAF;AAAA,MAACZ;AAAA,MAAA;AAAA,QACC,QAAQe;AAAA,QACR,SAAS,MAAMC,EAAe,EAAK;AAAA,QACnC,KAAKF,EAAM;AAAA,QACX,KAAKA,EAAM,OAAO;AAAA,MAAA;AAAA,IAAA;AAAA,EACpB,GAEJ;AAEJ;"}
@@ -1 +1 @@
1
- {"version":3,"file":"param-name.js","sources":["../../../src/components/content-components/param-name.tsx"],"sourcesContent":["interface ParamNameProps {\n children: React.ReactNode;\n}\n\nexport function ParamName({ children }: ParamNameProps) {\n return (\n <span className=\"not-prose mint:inline-block mint:mt-2 mint:mr-1 mint:px-1.5 mint:py-0.5 mint:text-sm mint:font-semibold mint:font-mono mint:rounded mint:bg-gray-100 mint:dark:bg-[#2d2d2d]\">\n {children}\n </span>\n );\n}\n"],"names":["ParamName","children","jsx"],"mappings":";AAIO,SAASA,EAAU,EAAE,UAAAC,KAA4B;AACtD,SACE,gBAAAC,EAAC,QAAA,EAAK,WAAU,+KACb,UAAAD,EAAA,CACH;AAEJ;"}
1
+ {"version":3,"file":"param-name.js","sources":["../../../src/components/content-components/param-name.tsx"],"sourcesContent":["import { cn } from \"../../utils/cn\";\ninterface ParamNameProps {\n children: React.ReactNode;\n}\n\nexport function ParamName({ children }: ParamNameProps) {\n return (\n <span className=\"not-prose mint:inline-block mint:mt-2 mint:mr-1 mint:px-1.5 mint:py-0.5 mint:text-sm mint:font-semibold mint:font-mono mint:rounded mint:bg-gray-100 mint:dark:bg-[#2d2d2d]\">\n {children}\n </span>\n );\n}\n"],"names":["ParamName","children","jsx"],"mappings":";AAKO,SAASA,EAAU,EAAE,UAAAC,KAA4B;AACtD,SACE,gBAAAC,EAAC,QAAA,EAAK,WAAU,+KACb,UAAAD,EAAA,CACH;AAEJ;"}
@@ -1,4 +1,4 @@
1
- import { jsx as r, jsxs as d, Fragment as c } from "react/jsx-runtime";
1
+ import { jsxs as d, Fragment as c, jsx as r } from "react/jsx-runtime";
2
2
  import * as i from "react";
3
3
  import { useState as f } from "react";
4
4
  import { TableModal as g } from "./table-modal.js";
@@ -1 +1 @@
1
- {"version":3,"file":"table-modal.js","sources":["../../../../src/components/content-components/table/table-modal.tsx"],"sourcesContent":["import React, { useEffect, useRef } from \"react\";\nimport { Dismiss20Regular } from \"@fluentui/react-icons\";\n\ninterface TableModalProps {\n isOpen: boolean;\n onClose: () => void;\n children: React.ReactNode;\n}\n\nexport function TableModal({ isOpen, onClose, children }: TableModalProps) {\n const modalRef = useRef<HTMLDivElement>(null);\n const closeButtonRef = useRef<HTMLButtonElement>(null);\n const previousActiveElement = useRef<HTMLElement | null>(null);\n\n useEffect(() => {\n if (isOpen) {\n previousActiveElement.current = document.activeElement as HTMLElement;\n document.body.style.overflow = \"hidden\";\n closeButtonRef.current?.focus();\n } else {\n document.body.style.overflow = \"unset\";\n previousActiveElement.current?.focus();\n }\n\n return () => {\n document.body.style.overflow = \"unset\";\n };\n }, [isOpen]);\n\n useEffect(() => {\n const handleEscape = (e: KeyboardEvent) => {\n if (e.key === \"Escape\") {\n onClose();\n }\n };\n\n if (isOpen) {\n window.addEventListener(\"keydown\", handleEscape);\n }\n\n return () => {\n window.removeEventListener(\"keydown\", handleEscape);\n };\n }, [isOpen, onClose]);\n\n useEffect(() => {\n if (!isOpen || !modalRef.current) return;\n\n const modal = modalRef.current;\n const focusableElements = modal.querySelectorAll<HTMLElement>(\n 'button, [href], input, select, textarea, [tabindex]:not([tabindex=\"-1\"])'\n );\n const firstFocusable = focusableElements[0];\n const lastFocusable = focusableElements[focusableElements.length - 1];\n\n const handleTabKey = (e: KeyboardEvent) => {\n if (e.key !== \"Tab\") return;\n\n if (e.shiftKey) {\n if (document.activeElement === firstFocusable) {\n e.preventDefault();\n lastFocusable?.focus();\n }\n } else {\n if (document.activeElement === lastFocusable) {\n e.preventDefault();\n firstFocusable?.focus();\n }\n }\n };\n\n modal.addEventListener(\"keydown\", handleTabKey as EventListener);\n return () => {\n modal.removeEventListener(\"keydown\", handleTabKey as EventListener);\n };\n }, [isOpen]);\n\n if (!isOpen) return null;\n\n return (\n <div\n className=\"mint:fixed mint:inset-0 mint:z-50 mint:flex mint:items-center mint:justify-center mint:p-4 mint:backdrop-blur-sm\"\n onClick={onClose}\n role=\"dialog\"\n aria-modal=\"true\"\n aria-labelledby=\"table-modal-title\"\n >\n <div\n ref={modalRef}\n className=\"mint:relative mint:w-full mint:max-w-screen-2xl mint:max-h-[90vh] mint:overflow-auto mint:bg-white mint:rounded-2xl mint:shadow-[0_25px_50px_-12px_rgba(0,0,0,0.25)] mint:border mint:border-gray-200 mint:dark:bg-[#1f1f1f] mint:dark:border-white/10\"\n onClick={(e) => e.stopPropagation()}\n >\n <div className=\"mint:sticky mint:top-0 mint:right-0 mint:z-10 mint:flex mint:justify-end mint:p-2 mint:pr-4 mint:backdrop-blur-sm\">\n <button\n ref={closeButtonRef}\n onClick={onClose}\n className=\"mint:p-2 mint:rounded-lg mint:bg-transparent mint:border-none mint:cursor-pointer mint:hover:bg-gray-100 mint:dark:hover:bg-[#141414]\"\n aria-label=\"Close table expanded view\"\n >\n <Dismiss20Regular className=\"mint:h-5 mint:w-5 mint:text-gray-700 mint:dark:text-white\" />\n </button>\n </div>\n <div className=\"mint:px-6 mint:py-4\" id=\"table-modal-title\">\n {children}\n </div>\n </div>\n </div>\n );\n}\n"],"names":["TableModal","isOpen","onClose","children","modalRef","useRef","closeButtonRef","previousActiveElement","useEffect","_a","_b","handleEscape","modal","focusableElements","firstFocusable","lastFocusable","handleTabKey","e","jsx","jsxs","Dismiss20Regular"],"mappings":";;;AASO,SAASA,EAAW,EAAE,QAAAC,GAAQ,SAAAC,GAAS,UAAAC,KAA6B;AACzE,QAAMC,IAAWC,EAAuB,IAAI,GACtCC,IAAiBD,EAA0B,IAAI,GAC/CE,IAAwBF,EAA2B,IAAI;AAiE7D,SA/DAG,EAAU,MAAM;;AACd,WAAIP,KACFM,EAAsB,UAAU,SAAS,eACzC,SAAS,KAAK,MAAM,WAAW,WAC/BE,IAAAH,EAAe,YAAf,QAAAG,EAAwB,YAExB,SAAS,KAAK,MAAM,WAAW,UAC/BC,IAAAH,EAAsB,YAAtB,QAAAG,EAA+B,UAG1B,MAAM;AACX,eAAS,KAAK,MAAM,WAAW;AAAA,IACjC;AAAA,EACF,GAAG,CAACT,CAAM,CAAC,GAEXO,EAAU,MAAM;AACd,UAAMG,IAAe,CAAC,MAAqB;AACzC,MAAI,EAAE,QAAQ,YACZT,EAAA;AAAA,IAEJ;AAEA,WAAID,KACF,OAAO,iBAAiB,WAAWU,CAAY,GAG1C,MAAM;AACX,aAAO,oBAAoB,WAAWA,CAAY;AAAA,IACpD;AAAA,EACF,GAAG,CAACV,GAAQC,CAAO,CAAC,GAEpBM,EAAU,MAAM;AACd,QAAI,CAACP,KAAU,CAACG,EAAS,QAAS;AAElC,UAAMQ,IAAQR,EAAS,SACjBS,IAAoBD,EAAM;AAAA,MAC9B;AAAA,IAAA,GAEIE,IAAiBD,EAAkB,CAAC,GACpCE,IAAgBF,EAAkBA,EAAkB,SAAS,CAAC,GAE9DG,IAAe,CAACC,MAAqB;AACzC,MAAIA,EAAE,QAAQ,UAEVA,EAAE,WACA,SAAS,kBAAkBH,MAC7BG,EAAE,eAAA,GACFF,KAAA,QAAAA,EAAe,WAGb,SAAS,kBAAkBA,MAC7BE,EAAE,eAAA,GACFH,KAAA,QAAAA,EAAgB;AAAA,IAGtB;AAEA,WAAAF,EAAM,iBAAiB,WAAWI,CAA6B,GACxD,MAAM;AACX,MAAAJ,EAAM,oBAAoB,WAAWI,CAA6B;AAAA,IACpE;AAAA,EACF,GAAG,CAACf,CAAM,CAAC,GAENA,IAGH,gBAAAiB;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAU;AAAA,MACV,SAAShB;AAAA,MACT,MAAK;AAAA,MACL,cAAW;AAAA,MACX,mBAAgB;AAAA,MAEhB,UAAA,gBAAAiB;AAAA,QAAC;AAAA,QAAA;AAAA,UACC,KAAKf;AAAA,UACL,WAAU;AAAA,UACV,SAAS,CAACa,MAAMA,EAAE,gBAAA;AAAA,UAElB,UAAA;AAAA,YAAA,gBAAAC,EAAC,OAAA,EAAI,WAAU,qHACb,UAAA,gBAAAA;AAAA,cAAC;AAAA,cAAA;AAAA,gBACC,KAAKZ;AAAA,gBACL,SAASJ;AAAA,gBACT,WAAU;AAAA,gBACV,cAAW;AAAA,gBAEX,UAAA,gBAAAgB,EAACE,GAAA,EAAiB,WAAU,4DAAA,CAA4D;AAAA,cAAA;AAAA,YAAA,GAE5F;AAAA,8BACC,OAAA,EAAI,WAAU,uBAAsB,IAAG,qBACrC,UAAAjB,EAAA,CACH;AAAA,UAAA;AAAA,QAAA;AAAA,MAAA;AAAA,IACF;AAAA,EAAA,IA5BgB;AA+BtB;"}
1
+ {"version":3,"file":"table-modal.js","sources":["../../../../src/components/content-components/table/table-modal.tsx"],"sourcesContent":["import React, { useEffect, useRef } from \"react\";\nimport { Dismiss20Regular } from \"@fluentui/react-icons\";\nimport { cn } from \"../../../utils/cn\";\n\ninterface TableModalProps {\n isOpen: boolean;\n onClose: () => void;\n children: React.ReactNode;\n}\n\nexport function TableModal({ isOpen, onClose, children }: TableModalProps) {\n const modalRef = useRef<HTMLDivElement>(null);\n const closeButtonRef = useRef<HTMLButtonElement>(null);\n const previousActiveElement = useRef<HTMLElement | null>(null);\n\n useEffect(() => {\n if (isOpen) {\n previousActiveElement.current = document.activeElement as HTMLElement;\n document.body.style.overflow = \"hidden\";\n closeButtonRef.current?.focus();\n } else {\n document.body.style.overflow = \"unset\";\n previousActiveElement.current?.focus();\n }\n\n return () => {\n document.body.style.overflow = \"unset\";\n };\n }, [isOpen]);\n\n useEffect(() => {\n const handleEscape = (e: KeyboardEvent) => {\n if (e.key === \"Escape\") {\n onClose();\n }\n };\n\n if (isOpen) {\n window.addEventListener(\"keydown\", handleEscape);\n }\n\n return () => {\n window.removeEventListener(\"keydown\", handleEscape);\n };\n }, [isOpen, onClose]);\n\n useEffect(() => {\n if (!isOpen || !modalRef.current) return;\n\n const modal = modalRef.current;\n const focusableElements = modal.querySelectorAll<HTMLElement>(\n 'button, [href], input, select, textarea, [tabindex]:not([tabindex=\"-1\"])'\n );\n const firstFocusable = focusableElements[0];\n const lastFocusable = focusableElements[focusableElements.length - 1];\n\n const handleTabKey = (e: KeyboardEvent) => {\n if (e.key !== \"Tab\") return;\n\n if (e.shiftKey) {\n if (document.activeElement === firstFocusable) {\n e.preventDefault();\n lastFocusable?.focus();\n }\n } else {\n if (document.activeElement === lastFocusable) {\n e.preventDefault();\n firstFocusable?.focus();\n }\n }\n };\n\n modal.addEventListener(\"keydown\", handleTabKey as EventListener);\n return () => {\n modal.removeEventListener(\"keydown\", handleTabKey as EventListener);\n };\n }, [isOpen]);\n\n if (!isOpen) return null;\n\n return (\n <div\n className=\"mint:fixed mint:inset-0 mint:z-50 mint:flex mint:items-center mint:justify-center mint:p-4 mint:backdrop-blur-sm\"\n onClick={onClose}\n role=\"dialog\"\n aria-modal=\"true\"\n aria-labelledby=\"table-modal-title\"\n >\n <div\n ref={modalRef}\n className=\"mint:relative mint:w-full mint:max-w-screen-2xl mint:max-h-[90vh] mint:overflow-auto mint:bg-white mint:rounded-2xl mint:shadow-[0_25px_50px_-12px_rgba(0,0,0,0.25)] mint:border mint:border-gray-200 mint:dark:bg-[#1f1f1f] mint:dark:border-white/10\"\n onClick={(e) => e.stopPropagation()}\n >\n <div className=\"mint:sticky mint:top-0 mint:right-0 mint:z-10 mint:flex mint:justify-end mint:p-2 mint:pr-4 mint:backdrop-blur-sm\">\n <button\n ref={closeButtonRef}\n onClick={onClose}\n className=\"mint:p-2 mint:rounded-lg mint:bg-transparent mint:border-none mint:cursor-pointer mint:hover:bg-gray-100 mint:dark:hover:bg-[#141414]\"\n aria-label=\"Close table expanded view\"\n >\n <Dismiss20Regular className=\"mint:h-5 mint:w-5 mint:text-gray-700 mint:dark:text-white\" />\n </button>\n </div>\n <div className=\"mint:px-6 mint:py-4\" id=\"table-modal-title\">\n {children}\n </div>\n </div>\n </div>\n );\n}\n"],"names":["TableModal","isOpen","onClose","children","modalRef","useRef","closeButtonRef","previousActiveElement","useEffect","_a","_b","handleEscape","modal","focusableElements","firstFocusable","lastFocusable","handleTabKey","e","jsx","jsxs","Dismiss20Regular"],"mappings":";;;AAUO,SAASA,EAAW,EAAE,QAAAC,GAAQ,SAAAC,GAAS,UAAAC,KAA6B;AACzE,QAAMC,IAAWC,EAAuB,IAAI,GACtCC,IAAiBD,EAA0B,IAAI,GAC/CE,IAAwBF,EAA2B,IAAI;AAiE7D,SA/DAG,EAAU,MAAM;;AACd,WAAIP,KACFM,EAAsB,UAAU,SAAS,eACzC,SAAS,KAAK,MAAM,WAAW,WAC/BE,IAAAH,EAAe,YAAf,QAAAG,EAAwB,YAExB,SAAS,KAAK,MAAM,WAAW,UAC/BC,IAAAH,EAAsB,YAAtB,QAAAG,EAA+B,UAG1B,MAAM;AACX,eAAS,KAAK,MAAM,WAAW;AAAA,IACjC;AAAA,EACF,GAAG,CAACT,CAAM,CAAC,GAEXO,EAAU,MAAM;AACd,UAAMG,IAAe,CAAC,MAAqB;AACzC,MAAI,EAAE,QAAQ,YACZT,EAAA;AAAA,IAEJ;AAEA,WAAID,KACF,OAAO,iBAAiB,WAAWU,CAAY,GAG1C,MAAM;AACX,aAAO,oBAAoB,WAAWA,CAAY;AAAA,IACpD;AAAA,EACF,GAAG,CAACV,GAAQC,CAAO,CAAC,GAEpBM,EAAU,MAAM;AACd,QAAI,CAACP,KAAU,CAACG,EAAS,QAAS;AAElC,UAAMQ,IAAQR,EAAS,SACjBS,IAAoBD,EAAM;AAAA,MAC9B;AAAA,IAAA,GAEIE,IAAiBD,EAAkB,CAAC,GACpCE,IAAgBF,EAAkBA,EAAkB,SAAS,CAAC,GAE9DG,IAAe,CAACC,MAAqB;AACzC,MAAIA,EAAE,QAAQ,UAEVA,EAAE,WACA,SAAS,kBAAkBH,MAC7BG,EAAE,eAAA,GACFF,KAAA,QAAAA,EAAe,WAGb,SAAS,kBAAkBA,MAC7BE,EAAE,eAAA,GACFH,KAAA,QAAAA,EAAgB;AAAA,IAGtB;AAEA,WAAAF,EAAM,iBAAiB,WAAWI,CAA6B,GACxD,MAAM;AACX,MAAAJ,EAAM,oBAAoB,WAAWI,CAA6B;AAAA,IACpE;AAAA,EACF,GAAG,CAACf,CAAM,CAAC,GAENA,IAGH,gBAAAiB;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAU;AAAA,MACV,SAAShB;AAAA,MACT,MAAK;AAAA,MACL,cAAW;AAAA,MACX,mBAAgB;AAAA,MAEhB,UAAA,gBAAAiB;AAAA,QAAC;AAAA,QAAA;AAAA,UACC,KAAKf;AAAA,UACL,WAAU;AAAA,UACV,SAAS,CAACa,MAAMA,EAAE,gBAAA;AAAA,UAElB,UAAA;AAAA,YAAA,gBAAAC,EAAC,OAAA,EAAI,WAAU,qHACb,UAAA,gBAAAA;AAAA,cAAC;AAAA,cAAA;AAAA,gBACC,KAAKZ;AAAA,gBACL,SAASJ;AAAA,gBACT,WAAU;AAAA,gBACV,cAAW;AAAA,gBAEX,UAAA,gBAAAgB,EAACE,GAAA,EAAiB,WAAU,4DAAA,CAA4D;AAAA,cAAA;AAAA,YAAA,GAE5F;AAAA,8BACC,OAAA,EAAI,WAAU,uBAAsB,IAAG,qBACrC,UAAAjB,EAAA,CACH;AAAA,UAAA;AAAA,QAAA;AAAA,MAAA;AAAA,IACF;AAAA,EAAA,IA5BgB;AA+BtB;"}
@@ -1 +1 @@
1
- {"version":3,"file":"tab.js","sources":["../../../../src/components/content-components/tabs/tab.tsx"],"sourcesContent":["import React from \"react\";\n\ninterface TabProps {\n title: string;\n icon?: string;\n children: React.ReactNode;\n}\n\nexport function Tab({ children }: TabProps) {\n return <>{children}</>;\n}\n"],"names":["Tab","children"],"mappings":";AAQO,SAASA,EAAI,EAAE,UAAAC,KAAsB;AAC1C,gCAAU,UAAAA,GAAS;AACrB;"}
1
+ {"version":3,"file":"tab.js","sources":["../../../../src/components/content-components/tabs/tab.tsx"],"sourcesContent":["import React from \"react\";\n\ninterface TabProps {\n title: string;\n icon?: string;\n children?: React.ReactNode;\n}\n\nexport function Tab({ children }: TabProps) {\n return <>{children}</>;\n}\n"],"names":["Tab","children"],"mappings":";AAQO,SAASA,EAAI,EAAE,UAAAC,KAAsB;AAC1C,gCAAU,UAAAA,GAAS;AACrB;"}
@@ -1,17 +1,17 @@
1
- import { jsx as a, jsxs as d } from "react/jsx-runtime";
2
- import s, { useState as g, useRef as v, useEffect as y } from "react";
3
- import { cn as u } from "../../../utils/cn.js";
4
- const k = s.createContext({
1
+ import { jsx as a, jsxs as p } from "react/jsx-runtime";
2
+ import s, { useState as k, useRef as w, useEffect as x } from "react";
3
+ import { cn as f } from "../../../utils/cn.js";
4
+ const A = s.createContext({
5
5
  activeTab: 0,
6
6
  setActiveTab: () => {
7
7
  }
8
8
  });
9
- function T({ children: f, defaultTab: p = 0 }) {
10
- const [o, m] = g(p), l = v([]), r = s.Children.toArray(f);
11
- y(() => {
9
+ function E({ children: h, defaultTab: v = 0, defaultTabIndex: y, className: g, onClickTab: m, onChange: c }) {
10
+ const [o, b] = k(y ?? v), l = w([]), r = s.Children.toArray(h);
11
+ x(() => {
12
12
  l.current = l.current.slice(0, r.length);
13
13
  }, [r.length]);
14
- const h = (e, t) => {
14
+ const _ = (e, t) => {
15
15
  var i;
16
16
  let n = t;
17
17
  switch (e.key) {
@@ -30,9 +30,9 @@ function T({ children: f, defaultTab: p = 0 }) {
30
30
  default:
31
31
  return;
32
32
  }
33
- m(n), (i = l.current[n]) == null || i.focus();
33
+ b(n), (i = l.current[n]) == null || i.focus();
34
34
  };
35
- return /* @__PURE__ */ a(k.Provider, { value: { activeTab: o, setActiveTab: m }, children: /* @__PURE__ */ d("div", { className: "mint:my-6", children: [
35
+ return /* @__PURE__ */ a(A.Provider, { value: { activeTab: o, setActiveTab: b }, children: /* @__PURE__ */ p("div", { className: f("mint:my-6", g), children: [
36
36
  /* @__PURE__ */ a(
37
37
  "div",
38
38
  {
@@ -41,23 +41,27 @@ function T({ children: f, defaultTab: p = 0 }) {
41
41
  className: "mint:flex mint:gap-1 mint:border-b mint:border-gray-200 mint:mb-4 mint:overflow-x-auto mint:dark:border-b-gray-700",
42
42
  children: r.map((e, t) => {
43
43
  if (!s.isValidElement(e)) return null;
44
- const n = e.props.title || `Tab ${t + 1}`, i = e.props.icon, c = o === t;
44
+ const n = e.props.title || `Tab ${t + 1}`, i = e.props.icon, d = o === t;
45
45
  return /* @__PURE__ */ a(
46
46
  "button",
47
47
  {
48
- ref: (b) => l.current[t] = b,
48
+ ref: (u) => {
49
+ l.current[t] = u;
50
+ },
49
51
  role: "tab",
50
- "aria-selected": c,
52
+ "aria-selected": d,
51
53
  "aria-controls": `tabpanel-${t}`,
52
54
  id: `tab-${t}`,
53
- tabIndex: c ? 0 : -1,
54
- onClick: () => m(t),
55
- onKeyDown: (b) => h(b, t),
56
- className: u(
55
+ tabIndex: d ? 0 : -1,
56
+ onClick: () => {
57
+ b(t), m == null || m(t), c == null || c(t);
58
+ },
59
+ onKeyDown: (u) => _(u, t),
60
+ className: f(
57
61
  "mint:px-4 mint:py-2 mint:text-sm mint:font-medium mint:border-0 mint:border-b-2 mint:rounded-t mint:bg-transparent mint:cursor-pointer mint:transition-all mint:duration-150 mint:focus:outline-none mint:focus-visible:shadow-[0_0_0_2px_#fff,0_0_0_4px_#75b6e7] mint:focus-visible:outline-offset-2",
58
- c ? "mint:border-b-[#0078d4] mint:text-[#0078d4] mint:dark:border-b-[#75b6e7] mint:dark:text-[#75b6e7]" : "mint:border-b-transparent mint:text-gray-600 mint:hover:text-gray-900 mint:hover:border-b-gray-300 mint:dark:text-gray-400 mint:dark:hover:text-gray-200 mint:dark:hover:border-b-gray-600"
62
+ d ? "mint:border-b-[#0078d4] mint:text-[#0078d4] mint:dark:border-b-[#75b6e7] mint:dark:text-[#75b6e7]" : "mint:border-b-transparent mint:text-gray-600 mint:hover:text-gray-900 mint:hover:border-b-gray-300 mint:dark:text-gray-400 mint:dark:hover:text-gray-200 mint:dark:hover:border-b-gray-600"
59
63
  ),
60
- children: /* @__PURE__ */ d("span", { className: "mint:flex mint:items-center mint:gap-2", children: [
64
+ children: /* @__PURE__ */ p("span", { className: "mint:flex mint:items-center mint:gap-2", children: [
61
65
  i && /* @__PURE__ */ a("span", { "aria-hidden": "true", children: i }),
62
66
  n
63
67
  ] })
@@ -75,7 +79,7 @@ function T({ children: f, defaultTab: p = 0 }) {
75
79
  "aria-labelledby": `tab-${t}`,
76
80
  tabIndex: 0,
77
81
  hidden: o !== t,
78
- className: u(
82
+ className: f(
79
83
  "mint:outline-none",
80
84
  o !== t && "mint:hidden"
81
85
  ),
@@ -86,7 +90,7 @@ function T({ children: f, defaultTab: p = 0 }) {
86
90
  ] }) });
87
91
  }
88
92
  export {
89
- T as Tabs,
90
- k as TabsContext
93
+ E as Tabs,
94
+ A as TabsContext
91
95
  };
92
96
  //# sourceMappingURL=tabs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tabs.js","sources":["../../../../src/components/content-components/tabs/tabs.tsx"],"sourcesContent":["import React, { useState, useRef, useEffect } from \"react\";\nimport { cn } from \"../../../utils/cn\";\n\ninterface TabsProps {\n children: React.ReactNode;\n defaultTab?: number;\n}\n\ninterface TabsContextValue {\n activeTab: number;\n setActiveTab: (index: number) => void;\n}\n\nexport const TabsContext = React.createContext<TabsContextValue>({\n activeTab: 0,\n setActiveTab: () => {},\n});\n\nexport function Tabs({ children, defaultTab = 0 }: TabsProps) {\n const [activeTab, setActiveTab] = useState(defaultTab);\n const tabRefs = useRef<(HTMLButtonElement | null)[]>([]);\n\n const tabs = React.Children.toArray(children);\n\n useEffect(() => {\n tabRefs.current = tabRefs.current.slice(0, tabs.length);\n }, [tabs.length]);\n\n const handleKeyDown = (event: React.KeyboardEvent, currentIndex: number) => {\n let newIndex = currentIndex;\n\n switch (event.key) {\n case \"ArrowRight\":\n event.preventDefault();\n newIndex = (currentIndex + 1) % tabs.length;\n break;\n case \"ArrowLeft\":\n event.preventDefault();\n newIndex = (currentIndex - 1 + tabs.length) % tabs.length;\n break;\n case \"Home\":\n event.preventDefault();\n newIndex = 0;\n break;\n case \"End\":\n event.preventDefault();\n newIndex = tabs.length - 1;\n break;\n default:\n return;\n }\n\n setActiveTab(newIndex);\n tabRefs.current[newIndex]?.focus();\n };\n\n return (\n <TabsContext.Provider value={{ activeTab, setActiveTab }}>\n <div className=\"mint:my-6\">\n <div\n role=\"tablist\"\n aria-label=\"Content tabs\"\n className=\"mint:flex mint:gap-1 mint:border-b mint:border-gray-200 mint:mb-4 mint:overflow-x-auto mint:dark:border-b-gray-700\"\n >\n {tabs.map((tab, index) => {\n if (!React.isValidElement(tab)) return null;\n const title = tab.props.title || `Tab ${index + 1}`;\n const icon = tab.props.icon;\n const isActive = activeTab === index;\n\n return (\n <button\n key={index}\n ref={(el) => (tabRefs.current[index] = el)}\n role=\"tab\"\n aria-selected={isActive}\n aria-controls={`tabpanel-${index}`}\n id={`tab-${index}`}\n tabIndex={isActive ? 0 : -1}\n onClick={() => setActiveTab(index)}\n onKeyDown={(e) => handleKeyDown(e, index)}\n className={cn(\n \"mint:px-4 mint:py-2 mint:text-sm mint:font-medium mint:border-0 mint:border-b-2 mint:rounded-t mint:bg-transparent mint:cursor-pointer mint:transition-all mint:duration-150 mint:focus:outline-none mint:focus-visible:shadow-[0_0_0_2px_#fff,0_0_0_4px_#75b6e7] mint:focus-visible:outline-offset-2\",\n isActive\n ? \"mint:border-b-[#0078d4] mint:text-[#0078d4] mint:dark:border-b-[#75b6e7] mint:dark:text-[#75b6e7]\"\n : \"mint:border-b-transparent mint:text-gray-600 mint:hover:text-gray-900 mint:hover:border-b-gray-300 mint:dark:text-gray-400 mint:dark:hover:text-gray-200 mint:dark:hover:border-b-gray-600\"\n )}\n >\n <span className=\"mint:flex mint:items-center mint:gap-2\">\n {icon && <span aria-hidden=\"true\">{icon}</span>}\n {title}\n </span>\n </button>\n );\n })}\n </div>\n\n <div>\n {tabs.map((tab, index) => (\n <div\n key={index}\n role=\"tabpanel\"\n id={`tabpanel-${index}`}\n aria-labelledby={`tab-${index}`}\n tabIndex={0}\n hidden={activeTab !== index}\n className={cn(\n \"mint:outline-none\",\n activeTab !== index && \"mint:hidden\"\n )}\n >\n {React.isValidElement(tab) ? tab.props.children : null}\n </div>\n ))}\n </div>\n </div>\n </TabsContext.Provider>\n );\n}\n"],"names":["TabsContext","React","Tabs","children","defaultTab","activeTab","setActiveTab","useState","tabRefs","useRef","tabs","useEffect","handleKeyDown","event","currentIndex","newIndex","_a","jsx","jsxs","tab","index","title","icon","isActive","el","e","cn"],"mappings":"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"}
1
+ {"version":3,"file":"tabs.js","sources":["../../../../src/components/content-components/tabs/tabs.tsx"],"sourcesContent":["import React, { useState, useRef, useEffect } from \"react\";\nimport { cn } from \"../../../utils/cn\";\n\ninterface TabsProps {\n children: React.ReactNode;\n defaultTab?: number;\n defaultTabIndex?: number;\n className?: string;\n onClickTab?: (index: number) => void;\n onChange?: (index: number) => void;\n}\n\ninterface TabsContextValue {\n activeTab: number;\n setActiveTab: (index: number) => void;\n}\n\nexport const TabsContext = React.createContext<TabsContextValue>({\n activeTab: 0,\n setActiveTab: () => {},\n});\n\nexport function Tabs({ children, defaultTab = 0, defaultTabIndex, className, onClickTab, onChange }: TabsProps) {\n const [activeTab, setActiveTab] = useState(defaultTabIndex ?? defaultTab);\n const tabRefs = useRef<(HTMLButtonElement | null)[]>([]);\n\n const tabs = React.Children.toArray(children);\n\n useEffect(() => {\n tabRefs.current = tabRefs.current.slice(0, tabs.length);\n }, [tabs.length]);\n\n const handleKeyDown = (event: React.KeyboardEvent, currentIndex: number) => {\n let newIndex = currentIndex;\n\n switch (event.key) {\n case \"ArrowRight\":\n event.preventDefault();\n newIndex = (currentIndex + 1) % tabs.length;\n break;\n case \"ArrowLeft\":\n event.preventDefault();\n newIndex = (currentIndex - 1 + tabs.length) % tabs.length;\n break;\n case \"Home\":\n event.preventDefault();\n newIndex = 0;\n break;\n case \"End\":\n event.preventDefault();\n newIndex = tabs.length - 1;\n break;\n default:\n return;\n }\n\n setActiveTab(newIndex);\n tabRefs.current[newIndex]?.focus();\n };\n\n return (\n <TabsContext.Provider value={{ activeTab, setActiveTab }}>\n <div className={cn(\"mint:my-6\", className)}>\n <div\n role=\"tablist\"\n aria-label=\"Content tabs\"\n className=\"mint:flex mint:gap-1 mint:border-b mint:border-gray-200 mint:mb-4 mint:overflow-x-auto mint:dark:border-b-gray-700\"\n >\n {tabs.map((tab, index) => {\n if (!React.isValidElement(tab)) return null;\n const title = tab.props.title || `Tab ${index + 1}`;\n const icon = tab.props.icon;\n const isActive = activeTab === index;\n\n return (\n <button\n key={index}\n ref={(el) => {tabRefs.current[index] = el}}\n role=\"tab\"\n aria-selected={isActive}\n aria-controls={`tabpanel-${index}`}\n id={`tab-${index}`}\n tabIndex={isActive ? 0 : -1}\n onClick={() => {\n setActiveTab(index);\n onClickTab?.(index);\n onChange?.(index);\n }}\n onKeyDown={(e) => handleKeyDown(e, index)}\n className={cn(\n \"mint:px-4 mint:py-2 mint:text-sm mint:font-medium mint:border-0 mint:border-b-2 mint:rounded-t mint:bg-transparent mint:cursor-pointer mint:transition-all mint:duration-150 mint:focus:outline-none mint:focus-visible:shadow-[0_0_0_2px_#fff,0_0_0_4px_#75b6e7] mint:focus-visible:outline-offset-2\",\n isActive\n ? \"mint:border-b-[#0078d4] mint:text-[#0078d4] mint:dark:border-b-[#75b6e7] mint:dark:text-[#75b6e7]\"\n : \"mint:border-b-transparent mint:text-gray-600 mint:hover:text-gray-900 mint:hover:border-b-gray-300 mint:dark:text-gray-400 mint:dark:hover:text-gray-200 mint:dark:hover:border-b-gray-600\"\n )}\n >\n <span className=\"mint:flex mint:items-center mint:gap-2\">\n {icon && <span aria-hidden=\"true\">{icon}</span>}\n {title}\n </span>\n </button>\n );\n })}\n </div>\n\n <div>\n {tabs.map((tab, index) => (\n <div\n key={index}\n role=\"tabpanel\"\n id={`tabpanel-${index}`}\n aria-labelledby={`tab-${index}`}\n tabIndex={0}\n hidden={activeTab !== index}\n className={cn(\n \"mint:outline-none\",\n activeTab !== index && \"mint:hidden\"\n )}\n >\n {React.isValidElement(tab) ? tab.props.children : null}\n </div>\n ))}\n </div>\n </div>\n </TabsContext.Provider>\n );\n}\n"],"names":["TabsContext","React","Tabs","children","defaultTab","defaultTabIndex","className","onClickTab","onChange","activeTab","setActiveTab","useState","tabRefs","useRef","tabs","useEffect","handleKeyDown","event","currentIndex","newIndex","_a","jsx","cn","tab","index","title","icon","isActive","el","e","jsxs"],"mappings":"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"}