@xyd-js/atlas 0.0.0-build

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 (66) hide show
  1. package/.babelrc +6 -0
  2. package/.storybook/index.css +6 -0
  3. package/.storybook/main.ts +19 -0
  4. package/.storybook/preview.ts +17 -0
  5. package/.storybook/public/fonts/fustat-ext-500.woff2 +0 -0
  6. package/.storybook/public/fonts/fustat-ext-600.woff2 +0 -0
  7. package/.storybook/public/fonts/fustat-ext-700.woff2 +0 -0
  8. package/.storybook/public/fonts/fustat-regular.woff2 +0 -0
  9. package/CHANGELOG.md +13 -0
  10. package/LICENSE +21 -0
  11. package/README.md +3 -0
  12. package/declarations.d.ts +4 -0
  13. package/dist/VideoGuide-BLUkXIOB-Dk2lkn4r.js +4 -0
  14. package/dist/VideoGuide-BLUkXIOB-Dk2lkn4r.js.map +1 -0
  15. package/dist/index.css +48 -0
  16. package/dist/index.d.ts +38 -0
  17. package/dist/index.js +2 -0
  18. package/dist/index.js.map +1 -0
  19. package/dist/styles.css +104 -0
  20. package/dist/tokens.css +60 -0
  21. package/dist/xydPlugin.d.ts +5 -0
  22. package/dist/xydPlugin.js +2 -0
  23. package/dist/xydPlugin.js.map +1 -0
  24. package/index.ts +2 -0
  25. package/package.json +68 -0
  26. package/packages/xyd-plugin/SidebarItem.tsx +27 -0
  27. package/packages/xyd-plugin/index.ts +20 -0
  28. package/postcss.config.cjs +5 -0
  29. package/rollup.config.js +120 -0
  30. package/src/components/ApiRef/ApiRefItem/ApiRefItem.styles.tsx +110 -0
  31. package/src/components/ApiRef/ApiRefItem/ApiRefItem.tsx +557 -0
  32. package/src/components/ApiRef/ApiRefItem/index.ts +7 -0
  33. package/src/components/ApiRef/ApiRefProperties/ApiRefProperties.styles.tsx +202 -0
  34. package/src/components/ApiRef/ApiRefProperties/ApiRefProperties.tsx +665 -0
  35. package/src/components/ApiRef/ApiRefProperties/index.ts +7 -0
  36. package/src/components/ApiRef/ApiRefSamples/ApiRefSamples.styles.tsx +28 -0
  37. package/src/components/ApiRef/ApiRefSamples/ApiRefSamples.tsx +69 -0
  38. package/src/components/ApiRef/ApiRefSamples/index.ts +7 -0
  39. package/src/components/ApiRef/index.ts +5 -0
  40. package/src/components/Atlas/Atlas.styles.tsx +5 -0
  41. package/src/components/Atlas/Atlas.tsx +43 -0
  42. package/src/components/Atlas/AtlasContext.tsx +47 -0
  43. package/src/components/Atlas/AtlasDecorator.styles.ts +22 -0
  44. package/src/components/Atlas/AtlasDecorator.tsx +15 -0
  45. package/src/components/Atlas/AtlasLazy/AtlasLazy.styles.tsx +9 -0
  46. package/src/components/Atlas/AtlasLazy/AtlasLazy.tsx +42 -0
  47. package/src/components/Atlas/AtlasLazy/hooks.ts +29 -0
  48. package/src/components/Atlas/AtlasLazy/index.ts +7 -0
  49. package/src/components/Atlas/AtlasPrimary.tsx +21 -0
  50. package/src/components/Atlas/AtlasSecondary.tsx +148 -0
  51. package/src/components/Atlas/index.ts +7 -0
  52. package/src/components/Atlas/types.ts +11 -0
  53. package/src/components/Code/CodeSampleButtons/CodeSampleButtons.styles.tsx +58 -0
  54. package/src/components/Code/CodeSampleButtons/CodeSampleButtons.tsx +97 -0
  55. package/src/components/Code/CodeSampleButtons/index.ts +7 -0
  56. package/src/components/Code/index.ts +2 -0
  57. package/src/components/Icon/index.tsx +386 -0
  58. package/src/docs/AtlasExample/AtlasExample.stories.tsx +47 -0
  59. package/src/docs/AtlasExample/todo-app.uniform.json +625 -0
  60. package/src/docs/AtlasExample/uniform-to-references.ts +101 -0
  61. package/src/styles/styles.css +104 -0
  62. package/src/styles/tokens.css +60 -0
  63. package/src/utils/mdx.ts +2 -0
  64. package/tsconfig.json +51 -0
  65. package/types.d.ts +22 -0
  66. package/vite.config.ts +25 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../xyd-components/dist/useUXClick-WHliHcAg.js","../src/components/ApiRef/ApiRefItem/ApiRefItem.styles.tsx","../src/components/Atlas/AtlasContext.tsx","../src/components/ApiRef/ApiRefItem/ApiRefItem.tsx","../src/components/ApiRef/ApiRefProperties/ApiRefProperties.styles.tsx","../src/components/ApiRef/ApiRefProperties/ApiRefProperties.tsx","../../xyd-components/dist/coder/themes/cosmo.js","../../xyd-components/dist/CodeSample-Dq1qE5TX.js","../../xyd-components/dist/useUXScrollDepth-uidVGyZB.js","../src/components/Code/CodeSampleButtons/CodeSampleButtons.styles.tsx","../src/components/Code/CodeSampleButtons/CodeSampleButtons.tsx","../src/components/ApiRef/ApiRefSamples/ApiRefSamples.styles.tsx","../src/components/ApiRef/ApiRefSamples/ApiRefSamples.tsx","../src/components/Atlas/AtlasLazy/AtlasLazy.tsx","../src/components/Atlas/AtlasLazy/AtlasLazy.styles.tsx","../src/components/Atlas/AtlasDecorator.styles.ts","../src/components/Atlas/AtlasDecorator.tsx","../src/components/Atlas/AtlasPrimary.tsx","../src/components/Icon/index.tsx","../src/components/Atlas/AtlasSecondary.tsx","../src/components/Atlas/Atlas.tsx","../src/components/Atlas/Atlas.styles.tsx"],"sourcesContent":["import{a as r}from\"./_rollupPluginBabelHelpers-DOxGmVNp.js\";import{useState as a}from\"react\";function o(o,t,e){var n=a(!1),u=r(n,2),i=u[0],l=u[1];return function(r){var a=!i;l(a);var n=e();a?o(n):t(n)}}export{o as u};\n//# sourceMappingURL=useUXClick-WHliHcAg.js.map\n","import { css } from \"@linaria/core\";\n\nexport const ApiRefItemTitleHost = css`\n font-weight: var(--xyd-font-weight-normal);\n`;\n\nexport const ApiRefItemTitleLink = css`\n`;\n\nexport const ApiRefItemNavbarHost = css`\n margin: 20px 0px;\n`;\n\nexport const ApiRefItemNavbarContainer = css`\n background: linear-gradient(45deg, var(--XydAtlas-Component-ApiRef-Item__background-navbar) 0%, var(--XydAtlas-Component-ApiRef-Item__background-navbar) 100%);\n padding: 8px;\n border: 1px solid var(--XydAtlas-Component-ApiRef-Item__color-border);\n border-radius: 8px;\n display: flex;\n gap: 4px;\n overflow: scroll;\n`;\n\nexport const ApiRefItemNavbarLabel = css`\n color: var(--XydAtlas-Component-ApiRef-Item__color-navbar);\n margin-right: 4px;\n`;\n\nexport const ApiRefItemNavbarSubtitle = css`\n display: flex;\n letter-spacing: 1px;\n white-space: nowrap;\n text-overflow: ellipsis;\n`;\n\nexport const ApiRefItemHost = css`\n display: flex;\n flex-direction: column;\n gap: 16px;\n padding-bottom: 25px;\n\n &[data-has-examples=\"true\"] {\n atlas-apiref-item-showcase {\n display: grid;\n gap: 100px;\n grid-template-columns: repeat(2, minmax(0, 1fr));\n\n @media (max-width: 768px) {\n display: flex;\n flex-direction: column;\n gap: 16px;\n }\n }\n }\n`;\n\nexport const ApiRefItemGrid = css`\n align-items: normal;\n\n @media (max-width: 1280px) {\n xyd-grid-decorator {\n --cols: 1;\n }\n }\n`;\n\nexport const ApiRefItemDefinitionsHost = css`\n`;\n\nexport const ApiRefItemDefinitionsItem = css`\n display: flex;\n flex-direction: column;\n gap: 25px;\n margin-bottom: 25px;\n\n margin-top: var(--space-xxlarge);\n\n [part=\"controls\"] {\n display: flex;\n align-items: center;\n gap: 16px;\n }\n\n > [part=\"header\"] {\n h2, h3, h4, h5, h6 {\n margin: 0;\n }\n\n border-bottom: 1px solid var(--XydAtlas-Component-ApiRef-Item__color-border);\n\n display: grid;\n grid-template-columns: 1fr auto;\n align-items: center;\n gap: 16px;\n\n > :first-child {\n justify-self: start;\n }\n\n > :not(:first-child) {\n justify-self: end;\n }\n }\n`;\n\nexport const DefinitionBody = css`\n display: flex;\n flex-direction: column;\n gap: 15px;\n`","import { createContext, useContext } from \"react\";\n\nimport { type Theme } from \"@code-hike/lighter\";\n\nexport interface VariantToggleConfig {\n key: string;\n defaultValue: string;\n}\n\nexport const AtlasContext = createContext<{\n syntaxHighlight: Theme | null,\n baseMatch?: string,\n variantToggles?: VariantToggleConfig[], // Array of toggle configurations\n Link?: any\n}>({\n syntaxHighlight: null\n})\n\nexport function useSyntaxHighlight() {\n const context = useContext(AtlasContext)\n\n if (!context) {\n throw new Error(\"useSyntaxHighlight must be used within a AtlasContext\")\n }\n\n return context.syntaxHighlight\n}\n\nexport function useBaseMatch() {\n const context = useContext(AtlasContext)\n\n if (!context) {\n throw new Error(\"useBaseMatch must be used within a AtlasContext\")\n }\n\n return context.baseMatch\n}\n\nexport function useVariantToggles() {\n const context = useContext(AtlasContext)\n\n if (!context) {\n throw new Error(\"useVariantToggles must be used within a AtlasContext\")\n }\n\n return context.variantToggles || []\n}","import React, {createContext, useContext, useState, useCallback, useEffect} from \"react\";\n\nimport {\n Definition,\n DefinitionVariant,\n Meta,\n OpenAPIReferenceContext,\n Reference,\n ReferenceCategory\n} from \"@xyd-js/uniform\";\nimport {Heading, Code, Badge, Text} from \"@xyd-js/components/writer\";\n\nimport {\n ApiRefProperties,\n ApiRefSamples\n} from \"@/components/ApiRef\";\nimport * as cn from \"@/components/ApiRef/ApiRefItem/ApiRefItem.styles\";\nimport {useVariantToggles, type VariantToggleConfig} from \"@/components/Atlas/AtlasContext\";\n\nexport interface ApiRefItemProps {\n reference: Reference\n kind?: \"secondary\"\n}\n\n// TODO: context with current referene?\nexport function ApiRefItem({\n kind,\n reference\n }: ApiRefItemProps) {\n const hasExamples = reference.examples?.groups?.length || false\n\n let header: React.ReactNode | null = <$IntroHeader reference={reference}/>\n let examples: React.ReactNode | null = <ApiRefSamples examples={reference.examples}/>\n\n if (kind === \"secondary\") {\n header = null\n examples = null\n }\n\n return <atlas-apiref-item\n data-has-examples={hasExamples ? \"true\" : undefined}\n className={cn.ApiRefItemHost}\n >\n <atlas-apiref-item-showcase className={cn.ApiRefItemGrid}>\n <div>\n {header}\n <$Definitions\n kind={kind}\n reference={reference}\n />\n </div>\n\n {examples}\n </atlas-apiref-item-showcase>\n </atlas-apiref-item>\n}\n\nfunction $IntroHeader({reference}: ApiRefItemProps) {\n let topNavbar;\n\n switch (reference?.category) {\n case ReferenceCategory.REST: {\n const ctx = reference.context as OpenAPIReferenceContext\n\n if (!ctx || !ctx.method || !ctx.fullPath) {\n break;\n }\n\n // TODO: finish subitlte from ref\n topNavbar = <$Navbar\n label={ctx.method}\n subtitle={`${ctx.fullPath}`}\n matchSubtitle={ctx.path}\n />\n break;\n }\n }\n return <>\n <$Title title={reference.title}/>\n\n {topNavbar}\n\n {reference.description}\n </>\n}\n\nfunction $Authorization({reference}: ApiRefItemProps) {\n if (!reference.context) {\n return null;\n }\n\n const context = reference.context as OpenAPIReferenceContext;\n\n if (!context.scopes || !context.scopes.length) {\n return null;\n }\n\n return <div>\n <div className={cn.ApiRefItemDefinitionsItem}>\n <div part=\"header\">\n <$Subtitle title=\"Scopes\"/>\n </div>\n\n <$DefinitionBody definition={{\n title: \"\",\n properties: [],\n description: <>\n Required scopes: {context.scopes.map(s => <Code>{s}</Code>)}\n </>\n }}\n />\n </div>\n </div>\n}\n\nconst VariantContext = createContext<{\n setVariant: (variant: DefinitionVariant) => void,\n variant?: DefinitionVariant,\n variantToggles: VariantToggleConfig[],\n selectedValues: Record<string, string>,\n setSelectedValue: (key: string, value: string) => void,\n variants: DefinitionVariant[],\n}>({\n variant: undefined,\n setVariant: () => {\n },\n variantToggles: [],\n selectedValues: {},\n setSelectedValue: () => {\n },\n variants: [],\n});\n\nfunction $Definitions({\n kind,\n reference\n }: ApiRefItemProps) {\n let argDefinition: Definition | undefined\n let definitions = reference?.definitions || []\n\n if (reference?.category === ReferenceCategory.GRAPHQL) {\n const gqlDefinitions: Definition[] = []\n\n // First find the arguments definition\n reference?.definitions?.forEach(definition => {\n const foundArgs = definition?.meta?.find(meta => {\n return meta.name === \"type\" && meta.value === \"arguments\"\n })\n\n if (foundArgs) {\n argDefinition = definition\n } else {\n gqlDefinitions.push(definition)\n }\n })\n\n // Process each definition to merge argument properties\n definitions = gqlDefinitions\n .filter(definition => definition?.properties?.length)\n .map(definition => {\n if (!definition.properties?.length) return definition\n\n // For each property in the definition\n const updatedProperties = definition.properties.map(prop => {\n // Find matching variant in argDefinition by symbolName\n const matchingVariant = argDefinition?.variants?.find(variant => {\n const symbolMeta = variant.meta?.find(m => m.name === 'symbolName')\n return symbolMeta?.value === prop.name\n })\n\n if (matchingVariant) {\n // Add meta flag to indicate this property has arguments, but only if it doesn't already have it\n const meta = prop.meta || []\n if (!meta.some(m => m.name === 'hasArguments')) {\n meta.push({\n name: 'hasArguments', // TODO: better solution in the future\n value: 'true'\n })\n }\n\n // Merge properties from the matching variant\n return {\n ...prop,\n meta,\n properties: matchingVariant.properties || []\n }\n }\n\n return prop\n })\n\n return {\n ...definition,\n properties: updatedProperties\n }\n })\n }\n\n return <atlas-apiref-definitions className={cn.ApiRefItemDefinitionsHost}>\n <$Authorization reference={reference}/>\n\n {definitions?.map((definition, i) => {\n if (kind === \"secondary\") {\n return <$DefinitionBody key={i} definition={definition}/>\n }\n\n return <$VariantsProvider key={i} definition={definition}>\n <div>\n {\n definition?.title ? <div key={i} className={cn.ApiRefItemDefinitionsItem}>\n <div part=\"header\">\n <$Subtitle title={definition.title}/>\n <div part=\"controls\">\n <$VariantSelects/>\n </div>\n </div>\n\n <$DefinitionBody definition={definition}/>\n </div> : null\n }\n </div>\n </$VariantsProvider>\n })}\n </atlas-apiref-definitions>\n}\n\nfunction $VariantsProvider({definition, children}: {\n definition: Definition,\n children: React.ReactNode\n}) {\n const variants = definition.variants || [];\n const variantMetas = variants.reduce((acc, variant) => {\n const allMetaNames = variant.meta?.reduce((metaAcc, meta) => ({\n ...metaAcc,\n [meta.name]: 1,\n }), {}) || {}\n \n \n return {\n ...acc,\n ...allMetaNames,\n }\n }, {});\n const variantToggles = (useVariantToggles() || []).filter(toggle => variantMetas[toggle.key])\n\n const [selectedValues, setSelectedValues] = useState<Record<string, string>>(() => {\n const initial: Record<string, string> = {};\n variantToggles.forEach(toggle => {\n initial[toggle.key] = toggle.defaultValue;\n });\n return initial;\n });\n\n const setSelectedValue = useCallback((key: string, value: string) => {\n setSelectedValues(prev => ({...prev, [key]: value}));\n }, []);\n\n\n const [variant, setVariant] = useState<DefinitionVariant | undefined>(() => {\n return findMatchingVariant(variants, selectedValues);\n });\n\n useEffect(() => {\n const newVariant = findMatchingVariant(variants, selectedValues);\n setVariant(newVariant);\n }, [selectedValues, variants]);\n\n return <VariantContext.Provider value={{\n variant,\n setVariant,\n variantToggles,\n selectedValues,\n setSelectedValue,\n variants,\n }}>\n {children}\n </VariantContext.Provider>\n}\n\nfunction findMatchingVariant(variants: DefinitionVariant[], selectedValues: Record<string, string>): DefinitionVariant | undefined {\n const matchingVariant = variants.find(variant => {\n const matches = Object.entries(selectedValues).every(([key, value]) => {\n if (!value) return true; // Skip empty values\n const meta = variant.meta?.find(m => m.name === key);\n return meta?.value === value;\n });\n return matches;\n });\n\n return matchingVariant || variants[0];\n}\n\nfunction $VariantSelects() {\n const {variantToggles, selectedValues, setSelectedValue, variants} = useContext(VariantContext);\n\n if (!variants?.length) return null;\n\n // Create selects based on variantToggles\n return (\n <div className={\"\"}>\n {variantToggles.map((toggle, index) => {\n // Get all unique values for this toggle\n const availableValues = Array.from(new Set(\n variants.map(v => {\n const meta = v.meta?.find(m => m.name === toggle.key);\n return meta?.value as string;\n }).filter(Boolean)\n )).sort();\n\n // Get available values based on other selected values\n const filteredValues = availableValues.filter(value => {\n // For the first toggle, show all values\n if (index === 0) return true;\n\n // For other toggles, check if there's a variant with this value and all previous selected values\n return variants.some(variant => {\n // First check if this variant has the value we're checking\n const hasValue = variant.meta?.some(m => m.name === toggle.key && m.value === value);\n if (!hasValue) return false;\n\n // Then check if it matches all previous selected values\n return variantToggles.slice(0, index).every(prevToggle => {\n const selectedValue = selectedValues[prevToggle.key];\n if (!selectedValue) return true; // Skip empty values\n\n const meta = variant.meta?.find(m => m.name === prevToggle.key);\n return meta?.value === selectedValue;\n });\n });\n });\n\n // If no values available, use the current value\n const displayValues = filteredValues.length > 0 ? filteredValues :\n (selectedValues[toggle.key] ? [selectedValues[toggle.key]] : availableValues);\n\n return (\n <select\n key={toggle.key}\n value={selectedValues[toggle.key] || ''}\n onChange={(e) => {\n const newValue = e.target.value;\n setSelectedValue(toggle.key, newValue);\n\n // For the first toggle (status), check if current content type is still valid\n if (index === 0 && variantToggles.length > 1) {\n const contentTypeKey = variantToggles[1].key;\n const currentContentType = selectedValues[contentTypeKey];\n\n if (currentContentType) {\n // Check if current content type is valid for new status\n const isValid = variants.some(variant => {\n const statusMeta = variant.meta?.find(m => m.name === toggle.key);\n const contentTypeMeta = variant.meta?.find(m => m.name === contentTypeKey);\n return statusMeta?.value === newValue && contentTypeMeta?.value === currentContentType;\n });\n\n // If not valid, reset content type\n if (!isValid) {\n setSelectedValue(contentTypeKey, '');\n }\n }\n } else if (index < variantToggles.length - 1) {\n // For other toggles, reset all toggles after this one\n // Only if there are toggles after this one\n variantToggles.slice(index + 1).forEach(nextToggle => {\n setSelectedValue(nextToggle.key, '');\n });\n }\n }}\n >\n {displayValues.map(value => (\n <option key={value} value={value}>\n {value}\n </option>\n ))}\n </select>\n );\n })}\n </div>\n );\n}\n\ninterface DefinitionBodyProps {\n definition: Definition\n}\n\nfunction $DefinitionBody(props: DefinitionBodyProps) {\n const {definition} = props;\n const {variant} = useContext(VariantContext);\n\n let apiRefProperties: React.ReactNode | null = null;\n\n if (variant) {\n if (variant.properties?.length) {\n apiRefProperties = <ApiRefProperties properties={variant.properties}/>;\n } else if (variant.rootProperty) {\n apiRefProperties = <ApiRefProperties properties={[variant.rootProperty]}/>;\n }\n } else {\n if (definition.properties?.length) {\n apiRefProperties = <ApiRefProperties properties={definition.properties}/>;\n } else if (definition.rootProperty) {\n apiRefProperties = <ApiRefProperties properties={[definition.rootProperty]}/>;\n }\n }\n\n const getMetaInfo = (meta: Meta[] | undefined) => {\n if (!meta?.length) return null;\n\n const minimum = meta.find(m => m.name === 'minimum')?.value;\n const maximum = meta.find(m => m.name === 'maximum')?.value;\n const example = meta.find(m => m.name === 'example')?.value;\n\n const rangeInfo: string[] = [];\n if (minimum !== undefined && maximum !== undefined) {\n rangeInfo.push(`Required range: ${minimum} <= x <= ${maximum}`);\n } else if (minimum !== undefined) {\n rangeInfo.push(`Required range: x >= ${minimum}`);\n } else if (maximum !== undefined) {\n rangeInfo.push(`Required range: x <= ${maximum}`);\n }\n\n const exampleInfo = example ? [`Examples:`, `\"${example}\"`] : [];\n\n return [...rangeInfo, ...exampleInfo].length > 0 ? (\n <div style={{\n marginTop: '1rem',\n marginBottom: '1rem',\n color: 'var(--color-text-secondary)',\n fontSize: '0.875rem'\n }}>\n {rangeInfo.map((info, i) => (\n <div key={`range-${i}`}>{info}</div>\n ))}\n {exampleInfo.length > 0 && (\n <>\n <div>{exampleInfo[0]}</div>\n <div>{exampleInfo[1]}</div>\n </>\n )}\n </div>\n ) : null;\n };\n\n const metaInfo = variant ? getMetaInfo(variant.meta) : getMetaInfo(definition.meta);\n const description = variant ? variant.description : definition.description;\n const metaDescription = definitionMetaDescription(variant ? variant : definition);\n\n return <div className={cn.DefinitionBody}>\n {\n description && <div>\n {description}\n </div>\n }\n {\n metaDescription && <div>\n {metaDescription}\n </div>\n }\n\n {metaInfo}\n\n {apiRefProperties}\n </div>\n}\n\ninterface NavbarProps {\n label: string\n subtitle: string\n matchSubtitle?: string\n}\n\nfunction $Navbar({label, subtitle, matchSubtitle}: NavbarProps) {\n const renderSubtitle = () => {\n if (!matchSubtitle) {\n return subtitle;\n }\n\n const index = subtitle.indexOf(matchSubtitle);\n if (index === -1) {\n return subtitle;\n }\n\n const before = subtitle.substring(0, index);\n const match = subtitle.substring(index, index + matchSubtitle.length);\n const after = subtitle.substring(index + matchSubtitle.length);\n\n return (\n <>\n {before}\n <Text as=\"span\" weight=\"bold\">\n {match}\n </Text>\n {after}\n </>\n );\n };\n\n const handleClick = (e: React.MouseEvent) => {\n const target = e.target as HTMLElement;\n const range = document.createRange();\n range.selectNodeContents(target);\n const selection = window.getSelection();\n if (selection) {\n selection.removeAllRanges();\n selection.addRange(range);\n }\n };\n\n return <>\n <div className={cn.ApiRefItemNavbarHost}>\n <div className={cn.ApiRefItemNavbarContainer}>\n <div className={cn.ApiRefItemNavbarLabel}>\n {/* TODO: in the future not only for REST */}\n <div data-active=\"true\" data-atlas-oas-method={label.toUpperCase()}>\n <Badge size=\"xs\">\n {label.toUpperCase()}\n </Badge>\n </div>\n </div>\n <div \n className={cn.ApiRefItemNavbarSubtitle}\n onClick={handleClick}\n >\n {renderSubtitle()}\n </div>\n </div>\n </div>\n </>\n}\n\nfunction $Title({title}: { title: string }) {\n return <>\n <Heading size={1}>\n {title}\n </Heading>\n </>\n}\n\nfunction $Subtitle({title}: { title: string }) {\n return <>\n <Heading size={3}>\n {title}\n </Heading>\n </>\n}\n\nfunction definitionMetaDescription(definition: Definition | DefinitionVariant): string {\n if (definition.meta?.length) {\n const descriptionMeta = definition.meta.find(meta => meta.name === 'definitionDescription');\n if (descriptionMeta) {\n return descriptionMeta.value as string || \"\";\n }\n }\n\n return \"\";\n}","import { css } from \"@linaria/core\";\n\nexport const ApiRefPropertiesUlHost = css`\n display: flex;\n flex-wrap: wrap;\n flex-direction: column;\n\n list-style: none;\n border: none;\n`;\n\nexport const ApiRefPropertiesLiHost = css`\n margin: 0;\n padding: 20px 0px;\n border-bottom: 1px solid var(--dark32);\n\n &:first-child {\n padding-top: 0;\n }\n\n &:last-child {\n padding-bottom: 0;\n border-bottom: none;\n }\n`;\n\nexport const ApiRefPropertiesDescriptionHost = css`\n display: flex;\n flex-direction: column;\n gap: 15px;\n\n color: var(--XydAtlas-Component-ApiRef-Properties__color-description);\n\n p {\n color: var(--XydAtlas-Component-ApiRef-Properties__color-description);\n }\n`;\n\nexport const ApiRefPropertiesDlHost = css`\n position: relative;\n display: flex;\n align-items: center;\n justify-content: flex-start;\n flex-wrap: wrap;\n gap: 10px;\n\n margin: 4px 0;\n\n dd {\n margin-inline-start: 0px;\n }\n`;\n\nexport const ApiRefPropertiesPropNameCodeHost = css`\n display: inline-flex;\n padding: 4px 0;\n font-weight: var(--xyd-font-weight-semibold);\n color: var(--XydAtlas-Component-ApiRef-Properties__color-propName);\n\n &[data-parent-choice-type=\"true\"] {\n font-weight: var(--xyd-font-weight-normal);\n }\n`;\n\nexport const ApiRefPropertiesPropTypeCodeHost = css`\n display: inline-flex;\n padding: 4px 0;\n border-radius: 4px;\n color: var(--XydAtlas-Component-ApiRef-Properties__color-propType);\n`;\n\nexport const ApiRefPropertiesPropTypeCodeLink = css`\n color: var(--XydAtlas-Component-ApiRef-Properties__color--active);\n text-decoration: underline;\n \n &:hover {\n text-decoration: none;\n color: var(--XydAtlas-Sys-Color-Primary--hover);\n }\n`;\n\nexport const ApiRefPropertiesSubPropsHost = css`\n padding: 8px;\n border-style: none;\n display: none;\n`;\n\nexport const ApiRefPropertiesSubPropsHostExpanded = css`\n display: unset;\n`;\n\nexport const ApiRefPropertiesSubPropsBox = css`\n`;\n\nexport const ApiRefPropertiesSubPropsUl = css`\n display: flex;\n flex-wrap: wrap;\n flex-direction: column;\n gap: 16px;\n\n padding: 0;\n margin: 0;\n\n list-style: none;\n\n border: none;\n border-left: 1px solid var(--XydAtlas-Component-ApiRef-Properties__color-border);\n`;\n\nexport const ApiRefPropertiesSubPropsLi = css`\n padding: 0 16px;\n`;\n\nexport const ApiRefPropertiesPropToggleHost = css`\n display: flex;\n align-items: center;\n padding: 0;\n margin-top: 5px;\n\n background: none;\n outline: inherit;\n border: none;\n\n cursor: pointer;\n color: inherit;\n\n svg {\n font-size: var(--xyd-font-size-small);\n }\n\n &:hover {\n svg {\n transition: all ease-in .1s;\n color: var(--XydAtlas-Component-ApiRef-Properties__color--active);\n }\n }\n`;\n\nexport const ApiRefPropertiesPropToggleLink = css`\n text-decoration: none;\n cursor: pointer;\n margin-left: 4px;\n\n &:hover {\n transition: all ease-in .1s;\n color: var(--XydAtlas-Component-ApiRef-Properties__color--active);\n }\n`;\n\nexport const globals = css`\n :global() {\n atlas-apiref-propmeta { // TODO: !!! BETTER API !!! - FOR CUSTOM COMPONENTS\n font-size: var(--xyd-font-size-xsmall);\n line-height: var(--xyd-line-height-xsmall);\n\n\n code {\n display: inline-flex;\n padding: 4px 0;\n border-radius: 4px;\n color: var(--XydAtlas-Component-ApiRef-Properties__color-propType);\n }\n &[data-name=\"required\"] {\n code {\n color: var(--xyd-text-color--error);\n }\n }\n\n a {\n color: var(--XydAtlas-Component-ApiRef-Properties__color--active);\n text-decoration: underline;\n \n &:hover {\n text-decoration: none;\n color: var(--XydAtlas-Sys-Color-Primary--hover);\n }\n }\n }\n }\n`;\n\nexport const ApiRefPropertiesMetaInfoHost = css`\n display: flex;\n flex-direction: column;\n gap: 4px;\n\n [part=\"examples\"] {\n display: inline;\n\n span {\n margin-right: 2px;\n }\n }\n\n [part=\"examples-list\"] {\n display: inline;\n\n xyd-badge {\n margin-right: 2px;\n }\n }\n`;","import React, { useContext, useState } from \"react\";\nimport { DEFINED_DEFINITION_PROPERTY_TYPE, DefinitionProperty, DefinitionPropertyMeta } from \"@xyd-js/uniform\";\n\nimport * as cn from \"./ApiRefProperties.styles\";\nimport { AtlasContext, useBaseMatch } from \"@/components/Atlas/AtlasContext\";\nimport { Badge } from \"@xyd-js/components/writer\";\n\nexport interface ApiRefPropertiesProps {\n properties: DefinitionProperty[]\n}\n\n// TODO: in the future configurable\nconst HIDE_INTERNAL = true\n\nexport function ApiRefProperties({ properties }: ApiRefPropertiesProps) {\n return <ul className={cn.ApiRefPropertiesUlHost}>\n {\n filterProperties(properties)?.map((property, i) => {\n const propName = property.name\n const propValue = property.type\n const propertyProperties = propProperties(property)\n const description = property.ofProperty?.description || property.description || \"\"\n const metaInfo = renderMetaInfo(property.meta)\n\n return <li className={cn.ApiRefPropertiesLiHost} key={i}>\n {\n propName || propValue ?\n <dl className={cn.ApiRefPropertiesDlHost}>\n <PropName property={property} meta={property.meta || []} />\n <PropType\n property={property}\n />\n <PropMetaList\n metas={property.meta || []}\n />\n </dl> : null\n }\n\n {\n description || metaInfo ? <div className={cn.ApiRefPropertiesDescriptionHost}>\n <>\n <div>\n {description}\n </div>\n <div>\n {renderMetaInfo(property.meta)}\n </div>\n </>\n </div> : null\n }\n\n {\n propertyProperties?.length > 0 ?\n <SubProperties\n parent={property}\n properties={propertyProperties}\n /> : null\n }\n </li>\n })\n }\n </ul>\n}\n\n\ninterface PropNameProps {\n property: DefinitionProperty\n meta: DefinitionPropertyMeta[]\n parentChoiceType?: boolean\n}\n\nfunction PropName(props: PropNameProps) {\n const value = props.property.name\n\n if (!value) {\n return null\n }\n\n return <atlas-apiref-propname>\n <dd>\n <code\n data-parent-choice-type={props.parentChoiceType ? \"true\" : undefined}\n className={cn.ApiRefPropertiesPropNameCodeHost}\n >{value}</code>\n </dd>\n </atlas-apiref-propname>\n}\n\ninterface PropTypeProps {\n property: DefinitionProperty\n}\n\nfunction PropType({ property }: PropTypeProps) {\n const { Link = \"a\" } = useContext(AtlasContext)\n const href = useSymbolLink(property)\n\n const symbol = resolvePropertySymbol(property)\n\n let propSymbol: string | React.ReactNode = symbol\n\n if (!propSymbol) {\n return null\n }\n\n if (href) {\n propSymbol = <Link className={cn.ApiRefPropertiesPropTypeCodeLink} href={href}>{propSymbol}</Link>\n }\n\n return <atlas-apiref-proptype>\n <dd>\n <code className={cn.ApiRefPropertiesPropTypeCodeHost}>\n {propSymbol}\n </code>\n </dd>\n </atlas-apiref-proptype>\n}\n\nexport interface PropMetaProps extends DefinitionPropertyMeta {\n href?: string\n}\n\nfunction PropMeta(props: PropMetaProps) {\n let valueText = props.value\n\n switch (props.name) {\n case \"required\":\n valueText = \"Required\"\n break\n case \"deprecated\":\n valueText = \"Deprecated\"\n break\n case \"defaults\":\n valueText = `Defaults: ${props.value}`\n break\n case \"nullable\":\n return null\n case \"enum-type\":\n return null\n case \"minimum\":\n return null\n case \"maximum\":\n return null\n case \"example\":\n return null\n case \"examples\":\n return null\n case \"internal\":\n return null\n case \"hasArguments\":\n return null\n }\n\n return <atlas-apiref-propmeta data-name={props.name} data-value={props.value}>\n <dd>\n <code>\n {\n props.href\n ? <a href={props.href}>{valueText}</a>\n : valueText\n }\n </code>\n </dd>\n </atlas-apiref-propmeta>\n}\n\nexport interface PropMetaListProps {\n metas: PropMetaProps[]\n}\n\nfunction PropMetaList({ metas }: PropMetaListProps) {\n const order = { deprecated: 0, required: 1, defaults: 2 };\n\n const sortedMetas = [...metas].sort((a, b) => {\n return (order[a.name as keyof typeof order] ?? 3) - (order[b.name as keyof typeof order] ?? 3);\n });\n\n return <>\n {\n sortedMetas.map((meta, i) => (\n <PropMeta\n key={i}\n {...meta}\n />\n ))\n }\n </>\n}\n\ninterface SubPropertiesProps {\n parent: DefinitionProperty\n\n properties: DefinitionProperty[]\n}\n\nfunction SubProperties({ parent, properties }: SubPropertiesProps) {\n const [expanded, setExpanded] = useState(false)\n\n // Get the actual properties to display\n const foundProperties = filterProperties(properties || [])\n\n const choiceType = isChoiceType(parent)\n const noChildProps = function () {\n if (parent?.type === DEFINED_DEFINITION_PROPERTY_TYPE.ENUM) {\n return false\n }\n\n return foundProperties.every(prop => {\n if (prop.ofProperty) {\n return false\n }\n\n return !(prop.properties?.length ?? 0)\n })\n }()\n\n if (choiceType && noChildProps) {\n return null\n }\n\n const hasArguments = parent.meta?.some(m => m.name === 'hasArguments' && m.value === 'true')\n\n return <>\n {foundProperties?.length ? <PropToggle\n choiceType={choiceType}\n isArgument={hasArguments}\n onClick={() => setExpanded(!expanded)}\n isExpanded={expanded}\n /> : null}\n\n <div\n className={`${cn.ApiRefPropertiesSubPropsHost} ${expanded && cn.ApiRefPropertiesSubPropsHostExpanded}`}\n >\n <div className={cn.ApiRefPropertiesSubPropsBox}>\n <ul role=\"list\" className={cn.ApiRefPropertiesSubPropsUl}>\n {\n foundProperties?.map((prop, i) => {\n const propName = prop.name\n const propValue = prop.type\n const properties = propProperties(prop)\n const description = prop.ofProperty?.description || prop.description || \"\"\n const metaInfo = renderMetaInfo(prop.meta)\n\n return <li className={cn.ApiRefPropertiesSubPropsLi} key={i}>\n {\n propName || propValue ?\n <dl className={cn.ApiRefPropertiesDlHost}>\n <PropName\n property={prop}\n meta={prop.meta || []}\n parentChoiceType={choiceType || !!hasArguments}\n />\n <PropType\n property={prop}\n />\n <PropMetaList\n metas={prop.meta || []}\n />\n </dl> : null\n }\n\n {\n description || metaInfo\n ? <div className={cn.ApiRefPropertiesDescriptionHost}>\n <>\n <div>\n {description}\n </div>\n <div>\n {renderMetaInfo(prop.meta)}\n </div>\n </>\n </div>\n : null\n }\n {\n properties?.length ?\n <SubProperties\n parent={prop}\n properties={properties}\n /> : null\n }\n </li>\n })\n }\n </ul>\n </div>\n </div>\n </>\n}\n\n\ninterface PropsToggleProps {\n isExpanded: boolean\n choiceType: boolean\n isArgument?: boolean\n onClick: () => void\n}\n\nfunction PropToggle(\n props: PropsToggleProps\n) {\n let text = props.isExpanded ? 'Hide properties' : 'Show properties'\n\n if (props.choiceType) {\n text = props.isExpanded ? 'Hide possible types' : 'Show possible types'\n } else if (props.isArgument) {\n text = props.isExpanded ? 'Hide possible arguments' : 'Show possible arguments'\n }\n\n return (\n <button\n aria-expanded={props.isExpanded}\n aria-controls=\"chat/object-usage_table\"\n onClick={props.onClick}\n className={cn.ApiRefPropertiesPropToggleHost}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"1em\"\n height=\"1em\"\n fill=\"currentColor\"\n viewBox=\"0 0 24 24\"\n >\n <path\n fillRule=\"evenodd\"\n d={\n props.isExpanded\n ? \"M12 8a1 1 0 0 1 .707.293l7 7a1 1 0 0 1-1.414 1.414L12 10.414l-6.293 6.293a1 1 0 0 1-1.414-1.414l7-7A1 1 0 0 1 12 8Z\"\n : \"M4.293 8.293a1 1 0 0 1 1.414 0L12 14.586l6.293-6.293a1 1 0 1 1 1.414 1.414l-7 7a1 1 0 0 1-1.414 0l-7-7a1 1 0 0 1 0-1.414Z\"\n }\n clipRule=\"evenodd\"\n />\n </svg>\n <span className={cn.ApiRefPropertiesPropToggleLink}>\n {text}\n </span>\n </button>\n )\n}\n\nfunction isChoiceType(property: DefinitionProperty) {\n if (property.ofProperty) {\n return isChoiceType(property.ofProperty)\n }\n\n return [\n DEFINED_DEFINITION_PROPERTY_TYPE.UNION,\n DEFINED_DEFINITION_PROPERTY_TYPE.XOR,\n DEFINED_DEFINITION_PROPERTY_TYPE.ENUM,\n ].includes(property.type as DEFINED_DEFINITION_PROPERTY_TYPE)\n}\n\nfunction useSymbolLink(property: DefinitionProperty) {\n const baseMatch = useBaseMatch()\n\n if (!property?.symbolDef?.canonical?.length) {\n return \"\"\n }\n\n let symbolLink = property.symbolDef.canonical\n\n if (!Array.isArray(symbolLink)) { // TODO: support array of canonicals\n if (!symbolLink.startsWith(\"/\")) {\n symbolLink = \"/\" + symbolLink\n }\n\n return `${baseMatch}${symbolLink}`;\n } else {\n console.warn(\"Multiple canonical links found for property\", property.name, property.symbolDef.canonical)\n }\n\n return \"\"\n}\n\nfunction propProperties(prop: DefinitionProperty): DefinitionProperty[] {\n if (prop.properties?.length) {\n return prop.properties\n }\n\n if (prop.ofProperty) {\n return propProperties(prop.ofProperty)\n }\n\n return []\n}\n\nfunction filterProperties(properties: DefinitionProperty[]): DefinitionProperty[] {\n return properties.filter(property => {\n if (property?.meta?.some(m => m.name === \"internal\" && m.value === \"true\")) {\n if (HIDE_INTERNAL) {\n return false\n }\n }\n\n return true\n })\n}\n\nfunction resolvePropertySymbol(property: DefinitionProperty): string {\n function resolvePropertySymbolInner(property: DefinitionProperty) {\n if (property?.ofProperty) {\n switch (property.ofProperty.type) {\n case DEFINED_DEFINITION_PROPERTY_TYPE.ARRAY: {\n let ofOfSymbols: string[] = []\n\n if (property.type) {\n ofOfSymbols.push(property.type)\n }\n\n if (property.ofProperty.ofProperty) {\n const symbol = groupSymbol(property.ofProperty.ofProperty)\n\n if (symbol) {\n ofOfSymbols.push(symbol)\n }\n }\n\n const atomicDefinedSymbol = atomicDefinedPropertySymbol(property.ofProperty)\n const ofPrefix = [\n atomicDefinedSymbol,\n \"of\"\n ]\n\n return [\n [\n ...ofPrefix,\n ...ofOfSymbols\n ].join(\" \")\n ]\n }\n case DEFINED_DEFINITION_PROPERTY_TYPE.UNION:\n case DEFINED_DEFINITION_PROPERTY_TYPE.ENUM:\n case DEFINED_DEFINITION_PROPERTY_TYPE.XOR: {\n if (property.ofProperty.properties?.length) {\n const atomicDefinedSymbol = atomicDefinedPropertySymbol(property)\n\n if (atomicDefinedSymbol) {\n const unionSymbol = groupSymbol({\n name: \"\",\n description: \"\",\n type: DEFINED_DEFINITION_PROPERTY_TYPE.UNION,\n properties: property.ofProperty.properties || [],\n })\n\n if (unionSymbol?.length && unionSymbol.includes(\"$$\")) {\n return [atomicDefinedSymbol]\n }\n\n return [\n [\n atomicDefinedSymbol,\n \"of\",\n unionSymbol\n ].join(\" \")\n ]\n }\n\n return [\n property.type,\n groupSymbol(property.ofProperty)\n ]\n }\n\n if (property.ofProperty?.ofProperty) {\n return [property.ofProperty?.ofProperty?.type]\n }\n\n return []\n }\n default: {\n if (!property.ofProperty.name) {\n const defined = atomicDefinedPropertySymbol(property)\n const symbol = atomicPropertySymbol(property)\n\n if (symbol.startsWith(\"$$\")) {\n return [property.ofProperty.type]\n }\n\n const chains = [\n symbol\n ]\n\n if (defined) {\n chains.push(\"of\")\n }\n\n chains.push(\n groupSymbol(property.ofProperty)\n )\n\n return chains\n }\n\n return [\n property.ofProperty.type\n ]\n }\n }\n }\n\n switch (property.type) {\n case DEFINED_DEFINITION_PROPERTY_TYPE.UNION, DEFINED_DEFINITION_PROPERTY_TYPE.XOR: {\n if (property.properties?.length) {\n const respMap = {}\n let resp: string[] = []\n for (const prop of property.properties) {\n let symbols = resolvePropertySymbolInner(prop)\n\n if (prop.ofProperty && symbols.length > 1) {\n symbols = [[\n symbols[0],\n ...symbols.slice(1, symbols.length),\n ].join(\"\")]\n }\n\n resp.push(...symbols)\n }\n\n let hasOr = false // TODO: in the future better\n for (const symbol of resp) {\n if (symbol.trim() === \"or\") {\n hasOr = true\n break\n }\n respMap[symbol] = true\n }\n\n if (!hasOr) {\n resp = Object.keys(respMap)\n }\n\n return [resp.join(\" or \")]\n }\n\n break\n }\n\n case DEFINED_DEFINITION_PROPERTY_TYPE.ARRAY: {\n return [\"array\"]\n }\n\n case DEFINED_DEFINITION_PROPERTY_TYPE.ENUM: {\n return [\"enum\"]\n }\n }\n\n if (property.type?.startsWith(\"$$\")) {\n return []\n }\n\n return [property.type]\n }\n\n const symbolsParts = resolvePropertySymbolInner(property)\n if (nullableProperty(property)) {\n if (symbolsParts.length) {\n symbolsParts.push(\"or\", \"null\")\n } else {\n symbolsParts.push(\"null\")\n }\n }\n\n return symbolsParts.join(\" \")\n}\n\nfunction atomicDefinedPropertySymbol(property: DefinitionProperty): string {\n switch (property.type) {\n case DEFINED_DEFINITION_PROPERTY_TYPE.ARRAY: {\n return \"array\"\n }\n case DEFINED_DEFINITION_PROPERTY_TYPE.UNION:\n case DEFINED_DEFINITION_PROPERTY_TYPE.ENUM:\n case DEFINED_DEFINITION_PROPERTY_TYPE.XOR: {\n return \"\"\n }\n\n default: {\n return \"\"\n }\n }\n}\n\nfunction groupSymbol(property: DefinitionProperty) {\n const symbol = resolvePropertySymbol(property)\n if (symbol?.startsWith(\"$$\")) {\n return \"\"\n }\n\n return symbol\n}\n\nfunction atomicPropertySymbol(property: DefinitionProperty): string {\n const defined = atomicDefinedPropertySymbol(property)\n\n if (!defined) {\n return property.type\n }\n\n return defined\n}\n\nfunction nullableProperty(property: DefinitionProperty): boolean {\n return property.meta?.some(m => m.name === \"nullable\" && m.value === \"true\") || false\n}\n\nfunction renderMetaInfo(meta: DefinitionPropertyMeta[] | undefined) {\n if (!meta?.length) return null;\n\n const minimum = meta.find(m => m.name === 'minimum')?.value;\n const maximum = meta.find(m => m.name === 'maximum')?.value;\n const example = meta.find(m => m.name === 'example')?.value;\n const examples = meta.find(m => m.name === 'examples')?.value;\n\n const rangeInfo: React.ReactNode[] = [];\n if (minimum !== undefined && maximum !== undefined) {\n rangeInfo.push(\n <div>\n Required range: <Badge>\n {`${minimum} <= x <= ${maximum}`}\n </Badge>\n </div>\n );\n } else if (minimum !== undefined) {\n rangeInfo.push(\n <div>\n Required range: <Badge>\n {`x >= ${minimum}`}\n </Badge>\n </div>\n );\n } else if (maximum !== undefined) {\n rangeInfo.push(\n <div>\n Required range: <Badge>\n {`x <= ${maximum}`}\n </Badge>\n </div>\n );\n }\n\n const exampleInfo = example || examples ? <div part=\"examples\">\n <span>Examples:</span>\n {\n example ? <Badge>{`${example}`}</Badge> : null\n }\n {\n Array.isArray(examples) && <div part=\"examples-list\">\n {examples.map((example, i) => (\n <Badge key={`example-${i}`}>{`${example}`}</Badge>\n ))}\n </div>\n }\n </div> : null\n\n if (!rangeInfo?.length && !exampleInfo) {\n return null\n }\n \n return <atlas-apiref-meta-info className={cn.ApiRefPropertiesMetaInfoHost}>\n {rangeInfo?.map((info, i) => (\n <div key={`range-${i}`}>{info}</div>\n ))}\n {exampleInfo}\n </atlas-apiref-meta-info>\n}","var t={name:\"cosmo\",type:\"from-css\",colors:{\"list.focusForeground\":\"var(--syntax1)\",\"scrollbar.shadow\":\"var(--syntax2)\",\"tab.activeBorder\":\"var(--syntax1)\",\"widget.shadow\":\"var(--syntax2)\",\"activityBar.border\":\"var(--syntax3)\",\"editorGroup.border\":\"var(--syntax3)\",\"editorGroupHeader.tabsBorder\":\"var(--syntax3)\",\"editorWidget.border\":\"var(--syntax3)\",\"editorWidget.resizeBorder\":\"var(--syntax3)\",\"input.border\":\"var(--syntax3)\",\"notificationCenter.border\":\"var(--syntax3)\",\"notifications.border\":\"var(--syntax3)\",\"panel.border\":\"var(--syntax3)\",\"sideBar.border\":\"var(--syntax3)\",\"statusBar.border\":\"var(--syntax3)\",\"tab.border\":\"var(--syntax3)\",\"activityBar.background\":\"var(--syntax4)\",\"statusBar.background\":\"var(--syntax4)\",\"statusBar.noFolderBackground\":\"var(--syntax4)\",\"statusBar.debuggingBackground\":\"var(--syntax4)\",\"editorGroupHeader.tabsBackground\":\"var(--syntax5)\",\"editorWidget.background\":\"var(--syntax5)\",\"sideBar.background\":\"var(--syntax5)\",\"sideBarSectionHeader.background\":\"var(--syntax5)\",\"tab.inactiveBackground\":\"var(--syntax5)\",\"activityBarBadge.background\":\"var(--syntax6)\",\"activityBar.foreground\":\"var(--syntax6)\",\"statusBar.foreground\":\"var(--syntax7)\",\"input.placeholderForeground\":\"var(--syntax8)\",\"editorLineNumber.foreground\":\"var(--syntax9)\",\"editorLineNumber.activeForeground\":\"var(--syntax6)\",foreground:\"var(--syntax6)\",\"panelTitle.activeForeground\":\"var(--syntax6)\",\"sideBarTitle.foreground\":\"var(--syntax6)\",\"sideBarSectionHeader.foreground\":\"var(--syntax6)\",\"panelTitle.inactiveForeground\":\"var(--syntax10)\",\"tab.inactiveForeground\":\"var(--syntax10)\",\"list.highlightForeground\":\"var(--syntax10)\",\"editor.lineHighlightBackground\":\"var(--syntax11)\",focusBorder:\"var(--syntax12)\",\"button.background\":\"var(--syntax13)\",\"list.activeSelectionBackground\":\"var(--syntax13)\",\"list.focusBackground\":\"var(--syntax13)\",\"selection.background\":\"#B3D7FF\",\"list.inactiveSelectionBackground\":\"var(--syntax14)\",\"terminal.ansiBlack\":\"var(--syntax15)\",\"terminal.ansiBrightBlack\":\"var(--syntax15)\",\"terminal.ansiRed\":\"var(--syntax16)\",\"terminal.ansiBrightRed\":\"var(--syntax16)\",\"terminal.ansiGreen\":\"var(--syntax17)\",\"terminal.ansiBrightGreen\":\"var(--syntax17)\",\"terminal.ansiYellow\":\"var(--syntax18)\",\"terminal.ansiBrightYellow\":\"var(--syntax18)\",\"terminal.ansiBlue\":\"var(--syntax19)\",\"terminal.ansiBrightBlue\":\"var(--syntax19)\",\"terminal.ansiMagenta\":\"var(--syntax20)\",\"terminal.ansiBrightMagenta\":\"var(--syntax20)\",\"terminal.ansiCyan\":\"var(--syntax21)\",\"terminal.ansiBrightCyan\":\"var(--syntax21)\"},tokenColors:[{scope:\"new.expr entity.name\",settings:{foreground:\"var(--syntax22)\"}},{name:\"Comments\",scope:[\"comment\",\"comment storage.type\"],settings:{foreground:\"var(--syntax23)\",fontStyle:\"italic\"}},{name:\"CSS\",scope:[\"entity.other.attribute-name.pseudo-class.css\",\"entity.other.attribute-name.pseudo-class.scss\",\"entity.other.attribute-name.pseudo-element.css\",\"entity.other.attribute-name.pseudo-element.scss\",\"support.function.calc.css\",\"support.function.calc.scss\",\"support.type.property-name.css\",\"support.type.property-name.scss\",\"support.type.vendored.property-name.css\",\"support.type.vendored.property-name.scss\",\"meta.property-value.css support.constant\",\"meta.property-value.scss support.constant\",\"meta.property-value.css support.constant.property-value\",\"meta.property-value.scss support.constant.property-value\",\"support.function.transform.css\",\"support.function.transform.scss\"],settings:{foreground:\"var(--syntax20)\"}},{name:\"Decorator\",scope:[\"meta.decorator\",\"meta.decorator punctuation.decorator\",\"meta.decorator variable.other.readwrite\",\"meta.decorator meta.function-call entity.name.function\"],settings:{foreground:\"var(--syntax18)\"}},{name:\"Doctype\",scope:[\"meta.tag.sgml.html\"],settings:{foreground:\"var(--syntax9)\"}},{name:\"Functions\",scope:[\"entity.name.function\",\"support.function\"],settings:{foreground:\"var(--syntax24)\"}},{name:\"Keys\",scope:[\"meta.property-list meta.property-name\",\"support.type.property-name\",\"support.type.map.key\",\"entity.name.tag.yaml\"],settings:{foreground:\"var(--syntax24)\"}},{name:\"Keywords\",scope:[\"keyword.control\",\"keyword.declaration\",\"keyword.expressions-and-types\",\"keyword.operator.new\",\"keyword.reserved\",\"keyword.statement\",\"storage.type\",\"storage.modifier\",\"constant.language\",\"variable.language.super\",\"variable.language.this\",\"text.html entity.name.tag\",\"meta.tag entity.name.tag\",\"meta.tag support.class\",\"string.regexp keyword.other\"],settings:{foreground:\"var(--syntax25)\",fontStyle:\"bold\"}},{name:\"Operators\",scope:[\"storage.type.function.arrow\",\"meta.template.expression punctuation\",\"punctuation.separator.key-value\",\"meta.object-literal.key meta.brace.square\",\"meta.template.expression keyword.operator\",\"keyword.operator.or.regexp\",\"keyword.operator.quantifier\",\"punctuation.definition.group.regexp\",\"punctuation.definition.character-class\"],settings:{foreground:\"var(--syntax15)\"}},{scope:[\"meta.tag entity.other.attribute-name\",\"constant.character.escape.backslash\"],settings:{foreground:\"var(--syntax26)\"}},{name:\"Numbers\",scope:[\"constant.numeric\",\"keyword.other.unit\",\"constant.other.color\"],settings:{foreground:\"var(--syntax19)\"}},{name:\"Strings\",scope:[\"string\",\"variable.parameter.url.scss\",\"markup.heading.markdown\",\"beginning.punctuation.definition.list.markdown\",\"meta.template.expression meta.embedded punctuation.definition.string.begin\",\"meta.template.expression meta.embedded punctuation.definition.string.end\"],settings:{foreground:\"var(--syntax27)\"}},{name:\"Types\",scope:[\"meta.type\",\"meta.return.type\",\"entity.name.type\",\"support.type.primitive\"],settings:{foreground:\"var(--syntax22)\"}},{scope:[\"meta.objectliteral variable.other.object\",\"entity.name.type.module\",\"entity.other.inherited-class\",\"variable.scss\",\"variable.other.bracket.shell\",\"entity.name.function.scss\"],settings:{foreground:\"var(--syntax21)\"}},{scope:[\"keyword.control.at-rule\",\"meta.import variable.other.readwrite\",\"meta.definition.variable variable.other.readwrite\",\"meta.definition.variable variable.other.constant\",\"meta.template.expression variable.other.readwrite\",\"meta.template.expression variable.other.constant\",\"support.constant.property-value\"],settings:{foreground:\"var(--syntax15)\"}},{scope:[\"variable.other.property\",\"variable.other.object.property\",\"support.variable.property\"],settings:{foreground:\"var(--syntax22)\"}}]};export{t as default};\n//# sourceMappingURL=cosmo.js.map\n","import e,{useRef as n,forwardRef as t,useState as r,useEffect as a,createContext as o,use as i,Suspense as l,useContext as c}from\"react\";import{_ as s,I as u,a as d}from\"./Icon-Cc24dmoE.js\";import{f,b as m,_ as v,g as h,h as p,i as g,a as y,j as b,k}from\"./_rollupPluginBabelHelpers-DOxGmVNp.js\";import{u as E,T as x}from\"./TabsAnalytics-Hbe8Rs6o.js\";import{extractAnnotations as j,highlight as w,LANG_NAMES as N}from\"@code-hike/lighter\";import _ from\"./coder/themes/cosmo.js\";import{UXNode as S}from\"openux-js\";import{u as O,E as C}from\"./useUXEvents-Dlr3yNx3.js\";import{u as A}from\"./useUXScrollDepth-uidVGyZB.js\";import{Tabs as L}from\"radix-ui\";import{CheckCheck as T,Copy as I}from\"lucide-react\";function z(e,n,t){return P.apply(this,arguments)}function P(){return P=f(m().m(function e(n,t,r){var a,o,i,l,c;return m().w(function(e){for(;;)switch(e.n){case 0:return a=[],o=n,e.n=1,R(o,t,r);case 1:return i=e.v,l=i.code,c=i.annotations,a=[].concat(v(a),v(c)),o=l,e.a(2,{code:o,annotations:a})}},e)})),P.apply(this,arguments)}function R(e,n){return M.apply(this,arguments)}function M(){return M=f(m().m(function e(n,t){var r,a,o,i,l,c=arguments;return m().w(function(e){for(;;)switch(e.n){case 0:return r=c.length>2&&void 0!==c[2]?c[2]:\"!\",a=function(e){var n,t=\"(?:\\\\\\\\.|[^\\\\\\\\/])+\",a=new RegExp(\"\\\\s*(\".concat(r,\"?[\\\\w-]+)?(\\\\[\\\\/\").concat(t,\"\\\\/[a-zA-Z]*\\\\])(.*)$\")),o=new RegExp(\"\\\\s*(\".concat(r,\"?[\\\\w-]+)?(\\\\(\\\\/\").concat(t,\"\\\\/[a-zA-Z]*\\\\))(.*)$\")),i=new RegExp(\"\\\\s*(\".concat(r,\"?[\\\\w-]+)?(\\\\([^\\\\)]*\\\\)|\\\\[[^\\\\]]*\\\\])?(.*)$\")),l=e.match(a)||e.match(o)||e.match(i);if(!l)return null;var c=l[1],s=l[2],u=null===(n=l[3])||void 0===n?void 0:n.trim();return c&&c.startsWith(r)?{name:c.slice(r.length),rangeString:s,query:u}:null},e.n=1,j(n,t,a);case 1:return o=e.v,i=o.code,l=o.annotations,e.a(2,{code:i,annotations:l})}},e)})),M.apply(this,arguments)}function q(e){return!$(e)}function $(e){return e.hasOwnProperty(\"lineNumber\")}function H(e){return\"string\"==typeof e}var B=[\"color\"];function D(e,n){return U.apply(this,arguments)}function U(){return U=f(m().m(function e(n,t){var r,a,o,i,l,c,s,u,d,f,v,p,g,y,b=arguments;return m().w(function(e){for(;;)switch(e.n){case 0:return r=b.length>2&&void 0!==b[2]?b[2]:{},a=n.value,o=n.lang,i=void 0===o?\"txt\":o,N.includes(i)||(console.warn('Code Hike warning: Unknown language \"'.concat(i,'\"')),i=\"txt\"),e.n=1,z(a,i,r.annotationPrefix||\"!\");case 1:return l=e.v,c=l.code,s=l.annotations,e.n=2,w(c,i,t,{annotations:[],scopes:!1});case 2:return u=e.v,d=u.lines,f=u.lang,v=u.style,p=F(d),g=X(p),y=G(g),e.a(2,h(h({},n),{},{code:c,tokens:y,lang:f,annotations:W(s),themeName:\"string\"==typeof t?t:(null==t?void 0:t.name)||\"unknown\",style:v}))}},e)})),U.apply(this,arguments)}function W(e){var n,t=[],r=p(e);try{for(r.s();!(n=r.n()).done;){var a,o=n.value,i=o.name,l=o.query,c=o.ranges,s=p(c);try{for(s.s();!(a=s.n()).done;){var u=a.value;if(u.lineNumber){var d=u.lineNumber,f=u.fromColumn,m=u.toColumn;t.push({name:i,query:l,lineNumber:d,fromColumn:f,toColumn:m})}else{var v=u.fromLineNumber,h=u.toLineNumber;t.push({name:i,query:l,fromLineNumber:v,toLineNumber:h})}}}catch(e){s.e(e)}finally{s.f()}}}catch(e){r.e(e)}finally{r.f()}return t}function F(e){var n=[];return e.forEach(function(t,r){if(\"lines\"in t)throw new Error(\"Shouldnt be groups\");var a=function(e){return e.map(function(e){if(\"tokens\"in e)throw new Error(\"Shouldnt be groups\");var n=[e.content],t=e.style||{},r=t.color,a=g(t,B);return n.push(r),Object.keys(a).length&&n.push(a),n})}(t.tokens);n.push.apply(n,v(a)),r<e.length-1&&n.push(\"\\n\")}),n}function X(e){var n=[];return e.forEach(function(e){if(H(e))n.push(e);else{var t=function(e){var n=e.trim(),t=e.slice(0,e.indexOf(n)),r=e.slice(e.indexOf(n)+n.length);return[t,n,r]}(e[0]),r=y(t,3),a=r[0],o=r[1],i=r[2];if((null==a?void 0:a.length)&&n.push(a),o.length){var l=v(e);l[0]=o,n.push(l)}(null==i?void 0:i.length)&&n.push(i)}}),n}function G(e){var n=[];return e.forEach(function(e){if(H(e)){var t=n[n.length-1];t&&H(t)?n[n.length-1]+=e:\"\"!==e&&n.push(e)}else e[0].length>0&&n.push(e)}),n}var V,J={exports:{}},K={};var Y,Z,Q={};function ee(){return Y||(Y=1,\"production\"!==process.env.NODE_ENV&&function(){function n(e){if(null==e)return null;if(\"function\"==typeof e)return e.$$typeof===N?null:e.displayName||e.name||null;if(\"string\"==typeof e)return e;switch(e){case m:return\"Fragment\";case h:return\"Profiler\";case v:return\"StrictMode\";case k:return\"Suspense\";case E:return\"SuspenseList\";case w:return\"Activity\"}if(\"object\"===b(e))switch(\"number\"==typeof e.tag&&console.error(\"Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue.\"),e.$$typeof){case f:return\"Portal\";case g:return(e.displayName||\"Context\")+\".Provider\";case p:return(e._context.displayName||\"Context\")+\".Consumer\";case y:var t=e.render;return(e=e.displayName)||(e=\"\"!==(e=t.displayName||t.name||\"\")?\"ForwardRef(\"+e+\")\":\"ForwardRef\"),e;case x:return null!==(t=e.displayName||null)?t:n(e.type)||\"Memo\";case j:t=e._payload,e=e._init;try{return n(e(t))}catch(e){}}return null}function t(e){return\"\"+e}function r(e){try{t(e);var n=!1}catch(e){n=!0}if(n){var r=(n=console).error,a=\"function\"==typeof Symbol&&Symbol.toStringTag&&e[Symbol.toStringTag]||e.constructor.name||\"Object\";return r.call(n,\"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.\",a),t(e)}}function a(e){if(e===m)return\"<>\";if(\"object\"===b(e)&&null!==e&&e.$$typeof===j)return\"<...>\";try{var t=n(e);return t?\"<\"+t+\">\":\"<...>\"}catch(e){return\"<...>\"}}function o(){return Error(\"react-stack-top-frame\")}function i(){var e=n(this.type);return A[e]||(A[e]=!0,console.error(\"Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.\")),void 0!==(e=this.props.ref)?e:null}function l(e,t,a,o,l,u,f,m){var v,h=t.children;if(void 0!==h)if(o)if(O(h)){for(o=0;o<h.length;o++)c(h[o]);Object.freeze&&Object.freeze(h)}else console.error(\"React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.\");else c(h);if(S.call(t,\"key\")){h=n(e);var p=Object.keys(t).filter(function(e){return\"key\"!==e});o=0<p.length?\"{key: someKey, \"+p.join(\": ..., \")+\": ...}\":\"{key: someKey}\",I[h+o]||(p=0<p.length?\"{\"+p.join(\": ..., \")+\": ...}\":\"{}\",console.error('A props object containing a \"key\" prop is being spread into JSX:\\n let props = %s;\\n <%s {...props} />\\nReact keys must be passed directly to JSX without using spread:\\n let props = %s;\\n <%s key={someKey} {...props} />',o,h,p,h),I[h+o]=!0)}if(h=null,void 0!==a&&(r(a),h=\"\"+a),function(e){if(S.call(e,\"key\")){var n=Object.getOwnPropertyDescriptor(e,\"key\").get;if(n&&n.isReactWarning)return!1}return void 0!==e.key}(t)&&(r(t.key),h=\"\"+t.key),\"key\"in t)for(var g in a={},t)\"key\"!==g&&(a[g]=t[g]);else a=t;return h&&function(e,n){function t(){s||(s=!0,console.error(\"%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)\",n))}t.isReactWarning=!0,Object.defineProperty(e,\"key\",{get:t,configurable:!0})}(a,\"function\"==typeof e?e.displayName||e.name||\"Unknown\":e),function(e,n,t,r,a,o,l,c){return t=o.ref,e={$$typeof:d,type:e,key:n,props:o,_owner:a},null!==(void 0!==t?t:null)?Object.defineProperty(e,\"ref\",{enumerable:!1,get:i}):Object.defineProperty(e,\"ref\",{enumerable:!1,value:null}),e._store={},Object.defineProperty(e._store,\"validated\",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(e,\"_debugInfo\",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(e,\"_debugStack\",{configurable:!1,enumerable:!1,writable:!0,value:l}),Object.defineProperty(e,\"_debugTask\",{configurable:!1,enumerable:!1,writable:!0,value:c}),Object.freeze&&(Object.freeze(e.props),Object.freeze(e)),e}(e,h,u,0,null===(v=_.A)?null:v.getOwner(),a,f,m)}function c(e){\"object\"===b(e)&&null!==e&&e.$$typeof===d&&e._store&&(e._store.validated=1)}var s,u=e,d=Symbol.for(\"react.transitional.element\"),f=Symbol.for(\"react.portal\"),m=Symbol.for(\"react.fragment\"),v=Symbol.for(\"react.strict_mode\"),h=Symbol.for(\"react.profiler\"),p=Symbol.for(\"react.consumer\"),g=Symbol.for(\"react.context\"),y=Symbol.for(\"react.forward_ref\"),k=Symbol.for(\"react.suspense\"),E=Symbol.for(\"react.suspense_list\"),x=Symbol.for(\"react.memo\"),j=Symbol.for(\"react.lazy\"),w=Symbol.for(\"react.activity\"),N=Symbol.for(\"react.client.reference\"),_=u.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,S=Object.prototype.hasOwnProperty,O=Array.isArray,C=console.createTask?console.createTask:function(){return null},A={},L=(u={react_stack_bottom_frame:function(e){return e()}}).react_stack_bottom_frame.bind(u,o)(),T=C(a(o)),I={};Q.Fragment=m,Q.jsx=function(e,n,t,r,o){var i=1e4>_.recentlyCreatedOwnerStacks++;return l(e,n,t,!1,0,o,i?Error(\"react-stack-top-frame\"):L,i?C(a(e)):T)},Q.jsxs=function(e,n,t,r,o){var i=1e4>_.recentlyCreatedOwnerStacks++;return l(e,n,t,!0,0,o,i?Error(\"react-stack-top-frame\"):L,i?C(a(e)):T)}}()),Q}var ne=(Z||(Z=1,\"production\"===process.env.NODE_ENV?J.exports=function(){if(V)return K;V=1;var e=Symbol.for(\"react.transitional.element\"),n=Symbol.for(\"react.fragment\");function t(n,t,r){var a=null;if(void 0!==r&&(a=\"\"+r),void 0!==t.key&&(a=\"\"+t.key),\"key\"in t)for(var o in r={},t)\"key\"!==o&&(r[o]=t[o]);else r=t;return t=r.ref,{$$typeof:e,type:n,key:a,ref:void 0!==t?t:null,props:r}}return K.Fragment=n,K.jsx=t,K.jsxs=t,K}():J.exports=ee()),J.exports);function te(e,n,t){if(\"children\"===n)e.children=t||e.children;else if(\"_ref\"===n)e._ref=t||e._ref;else if(\"data\"===n)e.data=e.data?h(h({},e.data),t):t;else if(\"className\"===n)e.className=[e.className,t].join(\" \").trim();else if(\"style\"===n)e.style=h(h({},e.style),t);else if(\"function\"==typeof t){var r=e[n];e[n]=r?function(){r.apply(void 0,arguments),t.apply(void 0,arguments)}:t}else{if(void 0===t||\"object\"!==b(t)&&t===e[n])return;if(n in e)throw new Error(\"Didn’t know how to merge prop '\".concat(n,\"'. \")+\"Only 'className', 'style', and event handlers are supported\");e[n]=t}}function re(){for(var e=arguments.length,n=new Array(e),t=0;t<e;t++)n[t]=arguments[t];return 1===n.length?n[0]:n.reduce(function(e,n){for(var t in n)te(e,t,n[t]);return e},{})}var ae=[\"merge\"],oe=[\"_stack\"],ie=[\"_ref\",\"data\",\"children\"],le=[\"merge\"],ce=[\"_stack\"],se=[\"lineNumber\",\"totalLines\",\"indentation\",\"data\",\"annotation\"],ue=[\"merge\"],de=[\"_stack\"],fe=[\"value\",\"data\"],me=function(e){var n=re(e.merge,g(e,ae)),t=n._stack,r=g(n,oe),a=k(t),o=a[0],i=a.slice(1);if(o)return ne.jsx(o,h({_stack:i},r));var l=r._ref;r.data;var c=r.children,s=g(r,ie);return ne.jsx(\"pre\",h(h({},s),{},{ref:l,\"data-ch\":!0,children:ne.jsx(\"div\",{style:{minWidth:\"fit-content\"},children:c})}))},ve=function(e){var n=re(e.merge,g(e,le)),t=n._stack,r=g(n,ce),a=k(t),o=a[0],i=a.slice(1);if(o){var l=o.Component,c=o.annotation;return ne.jsx(l,h(h({_stack:i},r),{},{annotation:c}))}r.lineNumber,r.totalLines,r.indentation,r.data,r.annotation;var s=g(r,se);return ne.jsx(\"div\",h({},s))},he=function(e){var n=re(e.merge,g(e,ue)),t=n._stack,r=g(n,de),a=k(t),o=a[0],i=a.slice(1);if(o){var l=o.Component,c=o.annotation;return ne.jsx(l,h(h({_stack:i},r),{},{annotation:c}))}var s=r.value;r.data;var u=g(r,fe);return ne.jsx(\"span\",h(h({},u),{},{children:s}))},pe=function(e){var t=n(null),r=e._ref||t;return ne.jsx(me,{merge:e,_ref:r})};function ge(e,n){var t=[n.fromColumn,n.toColumn],r=ye(e,t[0]);r=ye(r,t[1]+1);var a=[],o=[],i=[];return r.forEach(function(e){e.range[1]<t[0]?a.push(e):e.range[0]>t[1]?i.push(e):o.push(e)}),[].concat(a,[{annotation:n,content:o,range:[o[0].range[0],o[o.length-1].range[1]]}],i)}function ye(e,n){var t=e.findIndex(function(e){return e.range[0]<n&&n<=e.range[1]});if(-1===t)return e;var r=e[t];if(be(r)){var a,o=ye(r.content,n),i=[],l=[],c=p(o);try{for(c.s();!(a=c.n()).done;){var s=a.value;s.range[1]<n?i.push(s):l.push(s)}}catch(e){c.e(e)}finally{c.f()}return[].concat(v(e.slice(0,t)),[h(h({},r),{},{content:i,range:[r.range[0],n-1]}),h(h({},r),{},{content:l,range:[n,r.range[1]]})],v(e.slice(t+1)))}return[].concat(v(e.slice(0,t)),[h(h({},r),{},{value:r.value.slice(0,n-r.range[0]),range:[r.range[0],n-1]}),h(h({},r),{},{value:r.value.slice(n-r.range[0]),range:[n,r.range[1]]})],v(e.slice(t+1)))}function be(e){return void 0!==e.content}function ke(e){var n=e.content,t=e.handlers,r=e.annotationStack;return n.map(function(e,n){return be(e)?ne.jsx(xe,{annotationStack:r,handlers:t,group:e},n):e.style?ne.jsx(Ee,{annotationStack:r,handlers:t,token:e},n):e.value})}function Ee(e){var n=e.handlers,t=e.token,r=function(e,n){var t=[];return e.forEach(function(e){var r=e.name,a=e.Token,o=e.AnnotatedToken,i=n.filter(function(e){return e.name===r});o&&i.forEach(function(e){return t.push({Component:o,annotation:e})}),a&&(i.length||t.push({Component:a}),i.forEach(function(e){return t.push({Component:a,annotation:e})}))}),t}(n,e.annotationStack);return ne.jsx(he,{merge:{_stack:r,style:t.style,value:t.value}})}function xe(e){var n,t=e.group,r=e.handlers,a=e.annotationStack,o=t.annotation,i=t.content,l=o.name,c=ke({content:i,handlers:r,annotationStack:[].concat(v(a),[o])}),s=null===(n=r.find(function(e){return e.name===l}))||void 0===n?void 0:n.Inline;return s?ne.jsx(s,{annotation:o,children:c}):c}function je(e,n){var t=[n.fromLineNumber,n.toLineNumber],r=we(e,t[0]);r=we(r,t[1]+1);var a=[],o=[],i=[];return r.forEach(function(e){e.range[1]<t[0]?a.push(e):e.range[0]>t[1]?i.push(e):o.push(e)}),[].concat(a,[{annotation:n,lines:o,range:[o[0].range[0],o[o.length-1].range[1]]}],i)}function we(e,n){var t=e.findIndex(function(e){return Ne(e)&&e.range[0]<n&&n<=e.range[1]});if(-1===t)return e;var r=e[t],a=we(r.lines,n),o=[],i=[];return a.forEach(function(e){e.range[1]<n?o.push(e):i.push(e)}),[].concat(v(e.slice(0,t)),[h(h({},r),{},{lines:o,range:[r.range[0],n-1]}),h(h({},r),{},{lines:i,range:[n,r.range[1]]})],v(e.slice(t+1)))}function Ne(e){return void 0!==e.annotation}function _e(e){var n=e.linesOrGroups,t=e.handlers,r=e.inlineAnnotations,a=e.annotationStack,o=void 0===a?[]:a;return n.map(function(e){return Ne(e)?ne.jsx(Oe,{group:e,handlers:t,inlineAnnotations:r,annotationStack:o},e.range[0]):ne.jsx(Se,{line:e,handlers:t,inlineAnnotations:r,annotationStack:o},e.lineNumber)})}function Se(e){var n=e.line,t=e.handlers,r=e.inlineAnnotations,a=e.annotationStack,o=void 0===a?[]:a,i=n.lineNumber,l=n.totalLines,c=n.indentation,s=r.filter(function(e){return e.lineNumber===i}),u=function(e,n){for(var t=e,r=n.length-1;r>=0;r--)t=ge(t,n[r]);return t}(n.tokens,s),d=function(e,n){var t=[];return e.forEach(function(e){var r=e.name,a=e.Line,o=e.AnnotatedLine,i=n.filter(function(e){return e.name===r});o&&i.forEach(function(e){t.push({Component:o,annotation:e})}),a&&(i.length||t.push({Component:a}),i.forEach(function(e){t.push({Component:a,annotation:e})}))}),t}(t,o),f=ke({content:u,handlers:t,annotationStack:o}),m={lineNumber:i,indentation:c,totalLines:l,_stack:d};return ne.jsx(ve,{merge:m,children:f},i)}function Oe(e){var n,t=e.group,r=e.handlers,a=e.inlineAnnotations,o=e.annotationStack,i=t.annotation,l=t.lines,c=i.name,s=null===(n=r.find(function(e){return e.name===c}))||void 0===n?void 0:n.Block,u=_e({linesOrGroups:l,handlers:r,inlineAnnotations:a,annotationStack:[].concat(v(o),[i])});return s?ne.jsx(s,{annotation:i,children:u}):u}var Ce=[\"code\",\"handlers\"],Ae=t(function(e,n){var t=e.code,r=e.handlers,a=void 0===r?[]:r,o=g(e,Ce),i=t.tokens,l=t.themeName,c=t.lang,s=t.annotations;if(!i)throw new Error(\"Missing tokens in code block. Use the `highlight` function to generate the tokens.\");a.filter(function(e){return e.transform}).forEach(function(e){s=s.flatMap(function(n){return e.name!=n.name?n:e.transform(n)||[]})});var u=new Set(s.map(function(e){return e.name})),d=a.filter(function(e){return!e.onlyIfAnnotated||u.has(e.name)}),f=function(e){var n=e.map(function(e){return e.Pre}).filter(Boolean),t=e.map(function(e){return e.PreWithRef}).filter(Boolean);t.length>0&&t.unshift(pe);return[].concat(v(n),v(t))}(d),m={_stack:f,_ref:n};return ne.jsx(me,h(h({merge:m,\"data-theme\":l,\"data-lang\":c},o),{},{children:ne.jsx(Le,{tokens:i,handlers:d,annotations:s})}))});function Le(e){var n=e.tokens,t=e.handlers,r=e.annotations,a=function(e){for(var n=[[]],t=e.slice(),r=1;t.length;){var a=t.shift();if(\"string\"==typeof a){var o=a.split(\"\\n\"),i=k(o),l=i[0],c=i.slice(1);if(l){var s=r;r+=l.length,n[n.length-1].push({value:l,range:[s,r]})}c.length&&(n[n.length-1].push({value:\"\\n\",range:[r,r+1]}),n.push([]),r=1,t.unshift(c.join(\"\\n\")))}else{var u=y(a,3),d=u[0],f=u[1],m=u[2],v=void 0===m?{}:m,p=r;r+=d.length,n[n.length-1].push({value:d,style:h({color:f},v),range:[p,r]})}}var g=n.length;return n.map(function(e,n){var t,r,a;return{tokens:e,range:[n+1,n+1],lineNumber:n+1,indentation:(null===(a=null===(r=null===(t=e[0])||void 0===t?void 0:t.value)||void 0===r?void 0:r.replace(/\\t/g,\" \").match(/^\\s*/))||void 0===a?void 0:a[0].length)||0,totalLines:g}})}(n),o=r.filter(q),i=r.filter($),l=function(e,n){for(var t=e,r=n.length-1;r>=0;r--)t=je(t,n[r]);return t}(a,o);return _e({linesOrGroups:l,handlers:t,inlineAnnotations:i})}function Te(n){var t=n.size,r=void 0===t?\"medium\":t,a=n.className;return e.createElement(\"xyd-loader\",{\"data-size\":r,className:\" \".concat(\"lr0mq4l\",\" \").concat(a||\"\",\" \")},e.createElement(\"div\",{part:\"dots\"},e.createElement(\"div\",{part:\"dot\"}),e.createElement(\"div\",{part:\"dot\"}),e.createElement(\"div\",{part:\"dot\"})))}var Ie=o({highlighted:[]});function ze(){return i(Ie)}function Pe(n){var t,o=r(h(n.codeblocks)),i=y(o,2),l=i[0],c=i[1],u=r(!0),d=y(u,2),f=d[0],v=d[1];function h(e){return e?e.map(function(e){var n;return e.highlighted&&e.highlighted.tokens?Object.assign(Object.assign({},e.highlighted),{meta:(null===(n=e.highlighted)||void 0===n?void 0:n.meta)||e.meta,title:e.title}):null}).filter(Boolean):[]}a(function(){c(h(n.codeblocks))},[n.codeblocks]),a(function(){n.codeblocks&&(n.codeblocks.some(function(e){return!e.highlighted||!e.highlighted.tokens})&&function(){s(this,void 0,void 0,m().m(function e(){var t;return m().w(function(e){for(;;)switch(e.n){case 0:if(n.codeblocks){e.n=1;break}return e.a(2);case 1:if(!n.codeblocks.every(function(e){return e.highlighted})){e.n=2;break}return e.a(2);case 2:return e.n=3,Re(n.codeblocks,n.theme||_);case 3:t=e.v,c(t),v(!1);case 4:return e.a(2)}},e)}))}())},[n.codeblocks]);var p=e.createElement(Ie,{value:{highlighted:l||[]}},n.children);return(null===(t=n.codeblocks)||void 0===t?void 0:t.every(function(e){return e.highlighted}))?p:f?e.createElement(Te,null):p}function Re(e,n){return s(this,void 0,void 0,m().m(function t(){return m().w(function(t){for(;;)switch(t.n){case 0:return t.n=1,Promise.all(null==e?void 0:e.map(function(e){return D(e,n)}));case 1:return t.a(2,t.v)}},t)}))}var Me=\"cwih9s3\";function qe(){return e.createElement(\"xyd-code-loader\",{className:Me},e.createElement(Te,null))}var $e=e.createContext({ref:{current:null},setActiveTab:function(){},setActiveExample:function(){}});function He(){return e.useContext($e)}function Be(t){var o=t.children,i=n(null),l=r(\"\"),c=y(l,2),s=c[0],u=c[1],d=r(\"\"),f=y(d,2),m=f[0],v=f[1],h=E();return a(function(){v(h.value)},[h.value]),e.createElement($e,{value:{ref:i,setActiveTab:u,setActiveExample:v}},e.createElement(S,{name:\"CodeSample\",props:{tab:s,example:m,code:\"\"}},e.createElement(De,null,o)))}function De(e){var n,t,r=e.children;return n=E(),t=O(),a(function(){var e=n.tabsRef.current;if(e)return e.addEventListener(C,r),function(){e.removeEventListener(C,r)};function r(e){var n=e.detail.value;t.docs.code.example_change({example:n})}},[n.tabsRef.current]),function(){var e=He(),n=O();A(e.ref,{onDepthReached:function(e){100===e&&n.docs.code.scroll_100({}),n.docs.code.scroll_depth({depth:e})}})}(),r}function Ue(n){return e.createElement(l,{fallback:e.createElement(qe,null)},e.createElement(Pe,{codeblocks:n.codeblocks,theme:n.theme},n.children))}function We(){return e.createElement(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",viewBox:\"0 0 24 24\",strokeWidth:3,stroke:\"currentColor\",fill:\"none\",width:16,strokeLinecap:\"round\",strokeLinejoin:\"round\"},e.createElement(\"path\",{stroke:\"none\",d:\"M0 0h24v24H0z\",fill:\"none\"}),e.createElement(\"path\",{d:\"M12 12l8 -4.5\"}),e.createElement(\"path\",{d:\"M12 12v9\"}),e.createElement(\"path\",{d:\"M12 12l-8 -4.5\"}),e.createElement(\"path\",{d:\"M12 12l8 4.5\"}),e.createElement(\"path\",{d:\"M12 3v9\"}),e.createElement(\"path\",{d:\"M12 12l-8 4.5\"}))}Ue.LineNumber=function(n){return n.children&&n.children.length?e.createElement(\"xyd-code-linenumber\",{className:\"lyawwu4\",style:{minWidth:\"\".concat(n.width,\"ch\")}},e.createElement(\"span\",{part:\"line-number\"},n.lineNumber),e.createElement(ve,{merge:n})):null},Ue.Mark=function(n){var t,r,a,o;return e.createElement(\"xyd-code-mark\",{\"data-diff\":(null===(t=n.annotation)||void 0===t?void 0:t.diff)?\"true\":void 0,\"data-query\":(null===(r=n.annotation)||void 0===r?void 0:r.diff)&&(null===(a=n.annotation)||void 0===a?void 0:a.query)?null===(o=n.annotation)||void 0===o?void 0:o.query:void 0,\"data-annotated\":String(!!n.annotation),className:\"\".concat(\"m1i5ism5\")},e.createElement(ve,{part:\"line\",merge:n}))},Ue.MarkInline=function(n){var t,r,a,o;return e.createElement(\"xyd-code-mark-inline\",{\"data-diff\":(null===(t=n.annotation)||void 0===t?void 0:t.diff)?\"true\":void 0,\"data-query\":(null===(r=n.annotation)||void 0===r?void 0:r.diff)&&(null===(a=n.annotation)||void 0===a?void 0:a.query)?null===(o=n.annotation)||void 0===o?void 0:o.query:void 0,className:\"m1fnx2sm\"},n.children)},Ue.Bg=function(n){return e.createElement(\"xyd-code-bg\",{\"data-annotated\":String(!!n.annotation),className:\"\".concat(\"b83ezas\")},n.children)},Ue.Pre=function(n){var t=He(),r=n.size,a=n.className,o=n.codeblock,i=n.handlers;!function(e){var n=e.tokens[e.tokens.length-1];\"string\"!=typeof n||\" \"!==n&&\"\\n\"!==n||e.tokens.pop()}(o);var l=null;return(n.descriptionHead||n.descriptionContent)&&(l=e.createElement(\"div\",{part:\"code-description\",className:\"c1sbwmbs\"},e.createElement(\"div\",null,n.descriptionIcon?e.createElement(u,{name:n.descriptionIcon,size:16}):e.createElement(We,null)),e.createElement(\"div\",null,e.createElement(x,{weight:\"bold\"},n.descriptionHead),e.createElement(\"span\",null,n.descriptionContent)))),e.createElement(\"xyd-code-pre\",null,e.createElement(Ae,{part:\"pre\",\"data-size\":r,style:(null==o?void 0:o.style)||(null==o?void 0:o.style),className:\"\".concat(Me,\" \").concat(a||\"\"),code:o,handlers:i,ref:t.ref}),l)};var Fe={mark:{name:\"mark\",Line:function(n){return e.createElement(Ue.Mark,Object.assign({},n))},Inline:function(n){return e.createElement(Ue.MarkInline,Object.assign({},n))}},bg:{name:\"bg\",Inline:function(n){return e.createElement(Ue.Bg,Object.assign({},n))}},lineNumbers:{name:\"line-numbers\",Line:function(n){n.annotation;var t=d(n,[\"annotation\"]);return e.createElement(Ue.LineNumber,Object.assign({},t))}},diff:{name:\"diff\",onlyIfAnnotated:!0,transform:function(e){return[e,Object.assign(Object.assign({},e),{name:\"mark\",query:e.query,diff:!0})]},Line:function(n){var t=n.annotation,r=d(n,[\"annotation\"]);return e.createElement(e.Fragment,null,e.createElement(\"div\",null,null==t?void 0:t.query),e.createElement(ve,{merge:r}))}}};function Xe(n){var t=n.text,a=r(!1),o=y(a,2),i=o[0],l=o[1],c=O();return e.createElement(\"xyd-code-copy\",null,e.createElement(\"button\",{part:\"button\",className:\"ccde3ii\",\"aria-label\":\"Copy to clipboard\",onClick:function(){navigator.clipboard.writeText(t),l(!0),c.docs.code.copy({code:t}),setTimeout(function(){l(!1)},1200)}},i?e.createElement(T,{size:16}):e.createElement(I,{size:16})))}function Ge(n){return function(t){var o,i,l,c,s,u,d=1===(null===(o=null==t?void 0:t.highlighted)||void 0===o?void 0:o.length)&&!t.description,f=(null===(i=t.highlighted[0])||void 0===i?void 0:i.meta)||(null===(l=t.highlighted[0])||void 0===l?void 0:l.lang),m=r(f),v=y(m,2),h=v[0],p=v[1],g=He(),b=O();return a(function(){p(f)},[f]),a(function(){g.setActiveTab(h)},[]),0===(null===(c=null==t?void 0:t.highlighted)||void 0===c?void 0:c.length)?null:e.createElement(\"xyd-codetabs\",{className:\"\".concat(\"c1dmvxug\",\" \").concat(t.className||\"\")},e.createElement(L.Root,{part:\"root\",\"data-single\":String(d),\"data-nodescription\":t.description?void 0:\"true\",className:\"\".concat(\"c1pb9ov9\"),style:null===(s=t.highlighted[0])||void 0===s?void 0:s.style,value:h,onValueChange:function(e){p(e),g.setActiveTab(e),b.docs.code.tab_change({tab:e})}},e.createElement(Ve,{description:t.description,highlighted:t.highlighted}),null===(u=t.highlighted)||void 0===u?void 0:u.map(function(t,r){return e.createElement(L.Content,{value:t.meta||t.lang,key:r},e.createElement(n,{style:(null==t?void 0:t.style)||(null==t?void 0:t.style),codeblock:t}))})))}}function Ve(n){var t,r=1===(null===(t=null==n?void 0:n.highlighted)||void 0===t?void 0:t.length)&&!n.description,a=n.highlighted.filter(function(e,n,t){return n===t.findIndex(function(n){return(n.meta||n.lang)===(e.meta||e.lang)})});return e.createElement(\"xyd-codetabs-languages\",{\"data-single\":String(r),className:\"\\n \".concat(\"caeqccf\",\"\\n \")},n.description&&e.createElement(\"div\",{part:\"description\"},e.createElement(\"div\",{part:\"description-item\"},n.description)),e.createElement(L.List,{part:\"languages-list\"},null==a?void 0:a.map(function(n,t){var a=n.meta,o=n.lang;return r?null:e.createElement(L.Trigger,{part:\"language-trigger\",value:a||o,key:t},a||o)})),e.createElement(\"div\",{part:\"copy\"},null==a?void 0:a.map(function(n,t){return e.createElement(L.Content,{value:n.meta||n.lang,asChild:!0,key:t},e.createElement(Xe,{text:n.value}))})))}var Je=o({lines:void 0,scroll:void 0});function Ke(n){var t=n.children,r=n.lines,a=n.scroll;return e.createElement(Je.Provider,{value:{lines:r,scroll:a}},t)}var Ye=e.createContext({});function Ze(n){return e.createElement(Be,null,e.createElement(Ue,{codeblocks:n.codeblocks,theme:n.theme},e.createElement(Qe,Object.assign({},n))))}function Qe(n){var t,r=ze().highlighted,a=c(Je);if(\"secondary\"===n.kind)return e.createElement(Ye,{value:{size:n.size,lineNumbers:n.lineNumbers,descriptionHead:n.descriptionHead,descriptionContent:n.descriptionContent,descriptionIcon:n.descriptionIcon}},e.createElement(Ue.Pre,{codeblock:r[0],handlers:[Fe.mark,Fe.bg,Fe.lineNumbers]}));var o=void 0;\"string\"==typeof n.size?o=n.size:\"boolean\"!=typeof a.scroll||a.scroll||(o=\"full\");var i=null!==(t=n.lineNumbers)&&void 0!==t?t:a.lines;return e.createElement(Ye,{value:{size:o,lineNumbers:i,descriptionHead:n.descriptionHead,descriptionContent:n.descriptionContent,descriptionIcon:n.descriptionIcon}},e.createElement(en,{description:n.description,highlighted:r,controlByMeta:n.controlByMeta}))}var en=Ge(function(n){var t=e.useContext(Ye),r=t.lineNumbers,a=t.size,o=t.descriptionHead,i=t.descriptionContent,l=t.descriptionIcon,c=[Fe.mark,Fe.bg,Fe.diff];return r&&c.push(Fe.lineNumbers),e.createElement(Ue.Pre,Object.assign({},n,{descriptionHead:o,descriptionContent:i,descriptionIcon:l,size:a,handlers:c}))});export{Ue as C,Fe as a,qe as b,Ze as c,Pe as d,Ke as e,ze as u,Ge as w};\n//# sourceMappingURL=CodeSample-Dq1qE5TX.js.map\n","import{useRef as r,useEffect as e}from\"react\";function n(n){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},o=t.thresholds,c=void 0===o?[25,50,75,100]:o,i=t.onDepthReached,u=r(new Set);e(function(){if(n.current){var r=n.current;return r.addEventListener(\"scroll\",e),function(){r.removeEventListener(\"scroll\",e)}}function e(){var r=n.current;if(r){var e=r.scrollTop,t=r.scrollHeight-r.clientHeight;if(!(t<=0)){var o=Math.round(e/t*100);c.forEach(function(r){o>=r&&!u.current.has(r)&&(u.current.add(r),null==i||i(r))})}}}},[n.current,c,i])}export{n as u};\n//# sourceMappingURL=useUXScrollDepth-uidVGyZB.js.map\n","import {css} from \"@linaria/core\";\n\nexport const CodeSampleButtonsHost = css`\n position: relative;\n max-width: 100%;\n`;\n\nexport const CodeSampleButtonsContainer = css`\n display: inline-flex;\n width: 100%;\n align-items: center;\n border-radius: 8px;\n background-color: var(--XydAtlas-Component-Code-SampleButtons__color-containerBackground);\n`;\n\nexport const CodeSampleButtonsArrowHost = css`\n padding: 8px;\n background-color: var(--white, #ffffff);\n box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);\n`;\n\nexport const CodeSampleButtonsArrowIcon = css`\n width: 16px;\n height: 16px;\n`;\n\nexport const CodeSampleButtonsScrollerHost = css`\n overflow-x: auto;\n flex-grow: 1;\n font-weight: var(--xyd-font-weight-semibold);\n`;\n\nexport const CodeSampleButtonsScrollerContainer = css`\n display: inline-flex;\n gap: 4px;\n padding: 4px;\n margin-left: 4px;\n`;\n\nexport const CodeSampleButtonsButtonHost = css`\n padding: 4px 16px;\n border-radius: 0.375rem;\n white-space: nowrap;\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 300ms;\n color: var(--XydAtlas-Component-Code-SampleButtons__color);\n \n &:hover {\n color: var(--XydAtlas-Component-Code-SampleButtons__color--active);\n }\n`;\n\nexport const CodeSampleButtonsButtonActive = css`\n color: var(--XydAtlas-Component-Code-SampleButtons__color--active);\n background-color: var(--XydAtlas-Component-Code-SampleButtons__color-background--active);\n box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);\n`;","import React, {useState, useRef, useEffect} from 'react'\nimport {ChevronLeft, ChevronRight} from \"lucide-react\"\n\nimport {Example} from \"@xyd-js/uniform\";\n\nimport * as cn from \"./CodeSampleButtons.styles\";\n\nexport interface CodeExampleButtonsProps {\n examples: Example[]\n activeExample: Example | null\n onClick: (example: Example) => void\n}\n\nexport function CodeExampleButtons({examples, activeExample, onClick}: CodeExampleButtonsProps) {\n const [showLeftArrow, setShowLeftArrow] = useState(false)\n const [showRightArrow, setShowRightArrow] = useState(false)\n const scrollContainerRef = useRef<HTMLDivElement>(null)\n\n const handleScroll = () => {\n if (scrollContainerRef.current) {\n const {scrollLeft, scrollWidth, clientWidth} = scrollContainerRef.current\n setShowLeftArrow(scrollLeft > 0)\n setShowRightArrow(scrollLeft < scrollWidth - clientWidth)\n }\n }\n\n useEffect(() => {\n handleScroll()\n window.addEventListener('resize', handleScroll)\n return () => window.removeEventListener('resize', handleScroll)\n }, [])\n\n const scroll = (direction: 'left' | 'right') => {\n if (scrollContainerRef.current) {\n const scrollAmount = direction === 'left' ? -200 : 200\n scrollContainerRef.current.scrollBy({left: scrollAmount, behavior: 'smooth'})\n }\n }\n\n return (\n <div className={cn.CodeSampleButtonsHost}>\n <div className={cn.CodeSampleButtonsContainer}>\n {showLeftArrow && (\n <button\n onClick={() => scroll('left')}\n className={cn.CodeSampleButtonsArrowHost}\n >\n <ChevronLeft className={cn.CodeSampleButtonsArrowIcon}/>\n </button>\n )}\n <div\n ref={scrollContainerRef}\n onScroll={handleScroll}\n className={cn.CodeSampleButtonsScrollerHost}\n >\n <div className={cn.CodeSampleButtonsScrollerContainer}>\n {examples?.map((example) => (\n <SampleButton\n key={example.codeblock.title}\n onClick={() => onClick(example)}\n example={example}\n activeExample={activeExample}\n >\n {(example.codeblock.title || null)}\n </SampleButton>\n ))}\n </div>\n </div>\n {showRightArrow && (\n <button\n onClick={() => scroll('right')}\n className={cn.CodeSampleButtonsArrowHost}\n >\n <ChevronRight className={cn.CodeSampleButtonsArrowIcon}/>\n </button>\n )}\n </div>\n </div>\n )\n}\n\nfunction SampleButton({onClick, children, activeExample, example}: {\n onClick: () => void,\n children: React.ReactNode,\n example: Example,\n activeExample: Example | null,\n}) {\n const markExampleAsActive = (activeExample?.description && activeExample?.description === example?.description) ||\n (activeExample?.codeblock?.title && activeExample?.codeblock?.title === example.codeblock.title)\n\n return <button\n onClick={onClick}\n className={`${cn.CodeSampleButtonsButtonHost} ${markExampleAsActive && cn.CodeSampleButtonsButtonActive}`}\n >\n {children}\n </button>\n}\n","import {css} from \"@linaria/core\";\n\nexport const ApiRefSamplesContainerHost = css`\n height: fit-content;\n display: flex;\n gap: 32px;\n flex-direction: column;\n position: relative;\n top: var(--sidebar-subheader-top, 12px);\n\n @media (min-width: 1280px) {\n position: sticky;\n }\n\n &:first-child {\n margin-top: 0;\n }\n\n &:last-child {\n margin-bottom: 0;\n }\n`;\n\nexport const ApiRefSamplesGroupHost = css`\n gap: 10px;\n display: flex;\n flex-direction: column;\n`;","import React, { useState, useMemo } from \"react\";\nimport { UXNode } from \"openux-js\";\n\nimport { ExampleRoot } from \"@xyd-js/uniform\";\nimport { CodeSample, type CodeThemeBlockProps } from \"@xyd-js/components/coder\";\n\nimport { CodeExampleButtons } from \"@/components/Code\";\nimport { useSyntaxHighlight } from \"@/components/Atlas/AtlasContext\";\n\nimport * as cn from \"./ApiRefSamples.styles\";\n\nexport interface ApiRefSamplesProps {\n examples: ExampleRoot\n}\n\nexport function ApiRefSamples({ examples }: ApiRefSamplesProps) {\n const syntaxHighlight = useSyntaxHighlight()\n const [activeExampleIndices, setActiveExampleIndices] = useState<Record<number, number>>({})\n\n const handleExampleChange = (groupIndex: number, exampleIndex: number) => {\n setActiveExampleIndices(prev => ({\n ...prev,\n [groupIndex]: exampleIndex\n }))\n }\n\n return <atlas-apiref-samples className={cn.ApiRefSamplesContainerHost}>\n {\n examples.groups?.map(({ description, examples: example }, i) => {\n const activeExampleIndex = activeExampleIndices[i] || 0\n const activeExample = example[activeExampleIndex]\n\n const codeblocks = activeExample?.codeblock?.tabs?.map(tab => ({\n value: String(tab.code || \"\"),\n lang: String(tab.language || \"\"),\n meta: String(tab.context || \"\"),\n highlighted: tab.highlighted\n } as CodeThemeBlockProps)) || []\n\n return <UXNode\n name=\"APIRefSample\"\n props={activeExample}\n >\n <div key={i} className={cn.ApiRefSamplesGroupHost}>\n {\n example?.length > 1\n ? <CodeExampleButtons\n activeExample={activeExample}\n examples={example}\n onClick={(ex) => {\n const index = example.findIndex(e => e === ex)\n handleExampleChange(i, index)\n }}\n />\n : null\n }\n <CodeSample\n name={String(i)}\n description={description || \"\"}\n codeblocks={codeblocks}\n theme={syntaxHighlight || undefined}\n // controlByMeta\n />\n </div>\n </UXNode>\n })\n }\n </atlas-apiref-samples>\n}","import React, {useEffect, useRef} from \"react\";\n\nimport {Reference} from \"@xyd-js/uniform\";\n\nimport {ApiRefItem} from \"@/components/ApiRef\";\n\nimport * as cn from \"./AtlasLazy.styles\";\n\nexport interface AtlasLazyProps {\n references: Reference[]\n urlPrefix: string\n slug: string,\n onLoaded?: () => void\n}\n\nexport function AtlasLazy(props: AtlasLazyProps) {\n return props.references?.map((reference: any, i: number) => <>\n <div\n key={i}\n // TODO: slug should be passed from reference or somrthing\n // ref={`api-reference/${reference.title}` === slug ? targetRef : null} // Attach ref to the 30th item\n className={`${cn.AtlasLazyItemHost} ${i === 0 && cn.AtlasLazyItemFirst}`}\n // TODO: slug prefix props\n data-slug={`${props.urlPrefix}/${reference.canonical?.title}`}\n >\n <ItemWrapper\n reference={reference}\n onLoad={i === props.references.length - 1 ? props.onLoaded : null}\n />\n </div>\n </>)\n}\n\nfunction ItemWrapper({reference, onLoad}) {\n useEffect(() => {\n onLoad && onLoad()\n }, []);\n\n return <>\n <ApiRefItem reference={reference}/>\n </>\n}","import {css} from \"@linaria/core\";\n\nexport const AtlasLazyItemHost = css`\n padding: 16px 0;\n`;\n\nexport const AtlasLazyItemFirst = css`\n padding: 4px 0;\n`;","import { css } from \"@linaria/core\";\n\nexport default {\n AtlasDecoratorHost: css`\n @layer templates {\n atlas-apiref-proptype {\n font-size: var(--xyd-font-size-xsmall);\n line-height: var(--xyd-line-height-xsmall);\n }\n\n atlas-apiref-item-showcase {\n font-size: var(--xyd-font-size-small);\n line-height: var(--xyd-line-height-medium);\n\n p {\n font-size: var(--xyd-font-size-small);\n line-height: var(--xyd-line-height-medium);\n }\n }\n }\n `\n}\n","import React from 'react'\n\nimport cn from \"./AtlasDecorator.styles\";\n\ninterface AtlasDecoratorProps {\n children: React.ReactNode\n}\n\nexport function AtlasDecorator({ children }: AtlasDecoratorProps) {\n return <atlas-decorator\n className={cn.AtlasDecoratorHost}\n >\n {children}\n </atlas-decorator>\n}\n","import React, {} from \"react\";\n\nimport {ApiRefItem} from \"@/components/ApiRef\";\n\nimport {MDXCommonAtlasProps} from \"./types\";\n\nexport function AtlasPrimary<T>(props: MDXCommonAtlasProps<T>) {\n return <>\n {\n props.references?.map((reference, i) =>\n <ApiRefItem\n key={i}\n reference={{\n ...reference\n }}\n kind={props.apiRefItemKind || undefined}\n />\n )\n }\n </>\n}","import * as React from \"react\"\n\nexport function IconSessionReplay() {\n return <svg\n width={24}\n height={24}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22Z\"\n stroke=\"black\"\n strokeWidth={2}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n <path\n d=\"M10 8L16 12L10 16V8Z\"\n stroke=\"black\"\n strokeWidth={2}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n}\n\nexport function IconMetrics() {\n return <svg\n width={24}\n height={24}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M21 7L13.2273 14.9167L9.13636 10.75L3 17\"\n stroke=\"black\"\n strokeWidth={2}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n <path\n d=\"M16 7H21V12\"\n stroke=\"black\"\n strokeWidth={2}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n}\n\nexport function IconFunnels() {\n return <svg\n width={24}\n height={24}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M12 20L12 10\"\n stroke=\"black\"\n strokeWidth={2}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n <path\n d=\"M6 20L6 4\"\n stroke=\"black\"\n strokeWidth={2}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n <path\n d=\"M18 20L18 16\"\n stroke=\"black\"\n strokeWidth={2}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n}\n\nexport function IconCode() {\n return <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" width={24} height={24}>\n <path\n fillRule=\"evenodd\"\n d=\"M14.447 7.106a1 1 0 0 1 .447 1.341l-4 8a1 1 0 1 1-1.788-.894l4-8a1 1 0 0 1 1.341-.447ZM6.6 7.2a1 1 0 0 1 .2 1.4L4.25 12l2.55 3.4a1 1 0 0 1-1.6 1.2l-3-4a1 1 0 0 1 0-1.2l3-4a1 1 0 0 1 1.4-.2Zm10.8 0a1 1 0 0 1 1.4.2l3 4a1 1 0 0 1 0 1.2l-3 4a1 1 0 0 1-1.6-1.2l2.55-3.4-2.55-3.4a1 1 0 0 1 .2-1.4Z\"\n clipRule=\"evenodd\"\n />\n </svg>\n}\n\nexport function IconCustomEvent() {\n return <svg\n width={24}\n height={24}\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M3.66179 8.03142L6.54954 1.79004C6.63136 1.6132 6.80847 1.5 7.00333 1.5H10.7236C11.0872 1.5 11.3292 1.87581 11.1788 2.20685L9.18871 6.58625C9.03827 6.9173 9.28029 7.2931 9.64391 7.2931L11.589 7.2931C12.0146 7.2931 12.2456 7.79098 11.9708 8.11596L6.77738 14.2573C6.4593 14.6334 5.84636 14.3715 5.89839 13.8816L6.3857 9.2942C6.41708 8.99882 6.18554 8.74138 5.8885 8.74138H4.11558C3.75048 8.74138 3.50848 8.36278 3.66179 8.03142Z\"\n stroke=\"black\"\n strokeWidth={1.2}\n strokeLinejoin=\"round\"\n />\n </svg>\n}\n\nexport function IconAlert() {\n return <svg\n width={24}\n height={24}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M18 8C18 6.4087 17.3679 4.88258 16.2426 3.75736C15.1174 2.63214 13.5913 2 12 2C10.4087 2 8.88258 2.63214 7.75736 3.75736C6.63214 4.88258 6 6.4087 6 8C6 15 3 17 3 17H21C21 17 18 15 18 8Z\"\n stroke=\"black\"\n strokeWidth={2}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n <path\n d=\"M13.73 21C13.5542 21.3031 13.3019 21.5547 12.9982 21.7295C12.6946 21.9044 12.3504 21.9965 12 21.9965C11.6496 21.9965 11.3054 21.9044 11.0018 21.7295C10.6982 21.5547 10.4458 21.3031 10.27 21\"\n stroke=\"black\"\n strokeWidth={2}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n}\n\nexport function IconBrowser() {\n return <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={24}\n height={24}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n >\n <path\n d=\"M22 9H2M2 7.8L2 16.2C2 17.8802 2 18.7202 2.32698 19.362C2.6146 19.9265 3.07354 20.3854 3.63803 20.673C4.27976 21 5.11984 21 6.8 21H17.2C18.8802 21 19.7202 21 20.362 20.673C20.9265 20.3854 21.3854 19.9265 21.673 19.362C22 18.7202 22 17.8802 22 16.2V7.8C22 6.11984 22 5.27977 21.673 4.63803C21.3854 4.07354 20.9265 3.6146 20.362 3.32698C19.7202 3 18.8802 3 17.2 3L6.8 3C5.11984 3 4.27976 3 3.63803 3.32698C3.07354 3.6146 2.6146 4.07354 2.32698 4.63803C2 5.27976 2 6.11984 2 7.8Z\"\n stroke=\"#000000\"\n strokeWidth={2}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n}\n\nexport function IconREST() {\n return <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={24}\n height={24}\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n >\n <path\n fill=\"#000000\"\n fillRule=\"evenodd\"\n d=\"M.5 2.75a2.25 2.25 0 114.28.97l1.345 1.344.284-.284a2.25 2.25 0 013.182 0l.284.284 1.344-1.344a2.25 2.25 0 111.06 1.06l-1.343 1.345.284.284a2.25 2.25 0 010 3.182l-.284.284 1.344 1.344a2.25 2.25 0 11-1.06 1.06l-1.345-1.343-.284.284a2.25 2.25 0 01-3.182 0l-.284-.284-1.344 1.344a2.25 2.25 0 11-1.06-1.06l1.343-1.345-.284-.284a2.25 2.25 0 010-3.182l.284-.284L3.72 4.781A2.25 2.25 0 01.5 2.75zM2.75 2a.75.75 0 100 1.5.75.75 0 000-1.5zm0 10.5a.75.75 0 100 1.5.75.75 0 000-1.5zm9.75.75a.75.75 0 111.5 0 .75.75 0 01-1.5 0zM13.25 2a.75.75 0 100 1.5.75.75 0 000-1.5zM7.47 5.841a.75.75 0 011.06 0L10.16 7.47a.75.75 0 010 1.06L8.53 10.16a.75.75 0 01-1.06 0L5.84 8.53a.75.75 0 010-1.06L7.47 5.84z\"\n clipRule=\"evenodd\"\n />\n </svg>\n}\n\nexport function IconGraphQL() {\n return <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n fill=\"#000\"\n width={24}\n height={24}\n viewBox=\"0 0 32 32\"\n >\n <path\n d=\"M18.734 3.667l6.578 3.802c1.089-1.146 2.901-1.193 4.047-0.104 0.193 0.188 0.365 0.401 0.5 0.635 0.786 1.37 0.313 3.12-1.063 3.906-0.229 0.13-0.479 0.234-0.745 0.297v7.599c1.531 0.365 2.474 1.896 2.109 3.427-0.063 0.271-0.172 0.531-0.307 0.771-0.792 1.365-2.536 1.833-3.906 1.042-0.26-0.146-0.5-0.344-0.698-0.568l-6.542 3.776c0.495 1.495-0.318 3.109-1.813 3.604-0.292 0.099-0.594 0.146-0.896 0.146-1.573 0-2.854-1.271-2.854-2.849 0-0.271 0.042-0.547 0.12-0.813l-6.583-3.797c-1.089 1.141-2.896 1.188-4.036 0.094-1.135-1.089-1.177-2.891-0.094-4.031 0.38-0.396 0.865-0.677 1.396-0.807v-7.599c-1.531-0.365-2.479-1.906-2.109-3.443 0.063-0.266 0.167-0.521 0.302-0.755 0.786-1.365 2.536-1.833 3.901-1.042 0.234 0.135 0.453 0.302 0.641 0.5l6.583-3.797c-0.448-1.51 0.417-3.099 1.922-3.542 0.26-0.083 0.536-0.12 0.813-0.12 1.573 0 2.854 1.271 2.854 2.844 0 0.281-0.042 0.557-0.12 0.823zM18.047 4.839c-0.026 0.026-0.047 0.052-0.078 0.078l8.615 14.917c0.036-0.010 0.078-0.021 0.109-0.031v-7.609c-1.526-0.375-2.453-1.922-2.073-3.448 0.005-0.031 0.016-0.068 0.021-0.099zM14.026 4.917l-0.078-0.078-6.594 3.802c0.438 1.51-0.438 3.089-1.948 3.526-0.036 0.010-0.068 0.016-0.104 0.026v7.609l0.115 0.031 8.615-14.917zM16.797 5.594c-0.521 0.146-1.073 0.146-1.589 0l-8.615 14.917c0.391 0.375 0.667 0.859 0.802 1.391h17.214c0.13-0.531 0.406-1.016 0.802-1.396zM18.109 27.229l6.552-3.786c-0.021-0.063-0.036-0.125-0.052-0.188h-17.219l-0.031 0.109 6.589 3.802c0.516-0.536 1.245-0.87 2.052-0.87 0.839 0 1.589 0.359 2.109 0.932z\" />\n </svg>\n}\n\nexport function IconWebhooks() {\n return <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlnsXlink=\"http://www.w3.org/1999/xlink\"\n width={24}\n height={24}\n viewBox=\"-10 -5 1034 1034\"\n >\n <path\n fill=\"#000000\"\n d=\"M482 226h-1l-10 2q-33 4 -64.5 18.5t-55.5 38.5q-41 37 -57 91q-9 30 -8 63t12 63q17 45 52 78l13 12l-83 135q-26 -1 -45 7q-30 13 -45 40q-7 15 -9 31t2 32q8 30 33 48q15 10 33 14.5t36 2t34.5 -12.5t27.5 -25q12 -17 14.5 -39t-5.5 -41q-1 -5 -7 -14l-3 -6l118 -192 q6 -9 8 -14l-10 -3q-9 -2 -13 -4q-23 -10 -41.5 -27.5t-28.5 -39.5q-17 -36 -9 -75q4 -23 17 -43t31 -34q37 -27 82 -27q27 -1 52.5 9.5t44.5 30.5q17 16 26.5 38.5t10.5 45.5q0 17 -6 42l70 19l8 1q14 -43 7 -86q-4 -33 -19.5 -63.5t-39.5 -53.5q-42 -42 -103 -56 q-6 -2 -18 -4l-14 -2h-37zM500 350q-17 0 -34 7t-30.5 20.5t-19.5 31.5q-8 20 -4 44q3 18 14 34t28 25q24 15 56 13q3 4 5 8l112 191q3 6 6 9q27 -26 58.5 -35.5t65 -3.5t58.5 26q32 25 43.5 61.5t0.5 73.5q-8 28 -28.5 50t-48.5 33q-31 13 -66.5 8.5t-63.5 -24.5 q-4 -3 -13 -10l-5 -6q-4 3 -11 10l-47 46q23 23 52 38.5t61 21.5l22 4h39l28 -5q64 -13 110 -60q22 -22 36.5 -50.5t19.5 -59.5q5 -36 -2 -71.5t-25 -64.5t-44 -51t-57 -35q-34 -14 -70.5 -16t-71.5 7l-17 5l-81 -137q13 -19 16 -37q5 -32 -13 -60q-16 -25 -44 -35 q-17 -6 -35 -6zM218 614q-58 13 -100 53q-47 44 -61 105l-4 24v37l2 11q2 13 4 20q7 31 24.5 59t42.5 49q50 41 115 49q38 4 76 -4.5t70 -28.5q53 -34 78 -91q7 -17 14 -45q6 -1 18 0l125 2q14 0 20 1q11 20 25 31t31.5 16t35.5 4q28 -3 50 -20q27 -21 32 -54 q2 -17 -1.5 -33t-13.5 -30q-16 -22 -41 -32q-17 -7 -35.5 -6.5t-35.5 7.5q-28 12 -43 37l-3 6q-14 0 -42 -1l-113 -1q-15 -1 -43 -1l-50 -1l3 17q8 43 -13 81q-14 27 -40 45t-57 22q-35 6 -70 -7.5t-57 -42.5q-28 -35 -27 -79q1 -37 23 -69q13 -19 32 -32t41 -19l9 -3z\"\n />\n </svg>\n}\n\nexport function IconJSBrowser() {\n return <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 448 512\"\n width={24}\n height={24}\n >\n <path\n d=\"M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM243.8 381.4c0 43.6-25.6 63.5-62.9 63.5-33.7 0-53.2-17.4-63.2-38.5l34.3-20.7c6.6 11.7 12.6 21.6 27.1 21.6 13.8 0 22.6-5.4 22.6-26.5V237.7h42.1v143.7zm99.6 63.5c-39.1 0-64.4-18.6-76.7-43l34.3-19.8c9 14.7 20.8 25.6 41.5 25.6 17.4 0 28.6-8.7 28.6-20.8 0-14.4-11.4-19.5-30.7-28l-10.5-4.5c-30.4-12.9-50.5-29.2-50.5-63.5 0-31.6 24.1-55.6 61.6-55.6 26.8 0 46 9.3 59.8 33.7L368 290c-7.2-12.9-15-18-27.1-18-12.3 0-20.1 7.8-20.1 18 0 12.6 7.8 17.7 25.9 25.6l10.5 4.5c35.8 15.3 55.9 31 55.9 66.2 0 37.8-29.8 58.6-69.7 58.6z\" />\n </svg>\n}\n\nexport function IconJSNode() {\n return <svg\n width={24}\n height={24}\n xmlns=\"http://www.w3.org/2000/svg\"\n data-name=\"Layer 1\"\n viewBox=\"0 0 109 122.88\"\n >\n <defs>\n <style>{\".cls-1{fill-rule:evenodd;}\"}</style>\n </defs>\n <title>{\"node-js-black\"}</title>\n <path\n className=\"cls-1\"\n d=\"M68.43,87.08c-19.7,0-23.83-9-23.83-16.63a1.3,1.3,0,0,1,1.3-1.3h5.82A1.3,1.3,0,0,1,53,70.25c.88,5.93,3.49,8.92,15.41,8.92C77.9,79.17,81.93,77,81.93,72c0-2.9-1.15-5-15.89-6.49-12.33-1.22-20-3.93-20-13.8,0-9.08,7.66-14.49,20.5-14.49,14.42,0,21.56,5,22.46,15.76a1.31,1.31,0,0,1-.35,1,1.35,1.35,0,0,1-1,.42H81.9a1.29,1.29,0,0,1-1.26-1c-1.41-6.23-4.81-8.23-14.07-8.23C56.21,45.15,55,48.76,55,51.46c0,3.28,1.42,4.24,15.4,6.09S90.82,62,90.82,71.71,82.64,87.14,68.37,87.14l.06-.06Zm-13.91,35.8a9.45,9.45,0,0,1-4.72-1.26l-15-8.9c-2.25-1.26-1.15-1.7-.41-2a30.38,30.38,0,0,0,6.8-3.1,1.15,1.15,0,0,1,1.12.08l11.55,6.85a1.51,1.51,0,0,0,1.4,0l45-26a1.42,1.42,0,0,0,.69-1.22V35.43a1.44,1.44,0,0,0-.7-1.24l-45-26a1.38,1.38,0,0,0-1.39,0l-45,26a1.42,1.42,0,0,0-.71,1.23v52a1.39,1.39,0,0,0,.7,1.21l12.33,7.12C27.85,99.06,32,95.11,32,91.15V39.86a1.29,1.29,0,0,1,1.31-1.3H39a1.29,1.29,0,0,1,1.3,1.3V91.17c0,8.93-4.87,14-13.33,14-2.6,0-4.66,0-10.38-2.82L4.72,95.59A9.51,9.51,0,0,1,0,87.38v-52a9.47,9.47,0,0,1,4.72-8.21l45.07-26a9.89,9.89,0,0,1,9.47,0l45,26A9.49,9.49,0,0,1,109,35.43v52a9.54,9.54,0,0,1-4.72,8.21l-45,26a9.5,9.5,0,0,1-4.74,1.26v0Zm0,0Z\"\n />\n </svg>\n}\n\nexport function IconStorybook() {\n return <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n fill=\"#000000\"\n width={24}\n height={24}\n viewBox=\"0 0 32 32\"\n >\n <path\n d=\"M21.786 0.318l-0.161 3.615c-0.005 0.203 0.229 0.328 0.391 0.203l1.411-1.068 1.198 0.932c0.156 0.104 0.365 0 0.375-0.188l-0.135-3.677 1.776-0.135c0.922-0.063 1.708 0.672 1.708 1.599v28.802c0 0.917-0.766 1.646-1.682 1.599l-21.469-0.958c-0.833-0.036-1.505-0.708-1.531-1.547l-1-26.401c-0.052-0.885 0.62-1.646 1.505-1.693l17.599-1.109zM17.693 12.401c0 0.625 4.214 0.318 4.786-0.109 0-4.266-2.292-6.521-6.479-6.521-4.198 0-6.531 2.297-6.531 5.724 0 5.932 8 6.036 8 9.276 0 0.938-0.427 1.469-1.401 1.469-1.281 0-1.802-0.651-1.734-2.88 0-0.479-4.865-0.641-5.026 0-0.359 5.375 2.974 6.932 6.797 6.932 3.724 0 6.63-1.984 6.63-5.573 0-6.359-8.135-6.188-8.135-9.333 0-1.292 0.964-1.464 1.505-1.464 0.604 0 1.667 0.094 1.589 2.49z\" />\n </svg>\n}\n\nexport function IconReactRouter() {\n return <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={24}\n height={24}\n viewBox=\"0 0 602 360\"\n fill=\"none\"\n >\n <path\n d=\"M480.96 180C480.96 196.572 474.239 211.572 463.357 222.42C452.475 233.28 437.445 240 420.84 240C404.235 240 389.205 246.708 378.335 257.568C367.453 268.428 360.72 283.428 360.72 300C360.72 316.572 353.999 331.572 343.117 342.42C332.235 353.28 317.205 360 300.6 360C283.995 360 268.965 353.28 258.095 342.42C247.213 331.572 240.48 316.572 240.48 300C240.48 283.428 247.213 268.428 258.095 257.568C268.965 246.708 283.995 240 300.6 240C317.205 240 332.235 233.28 343.117 222.42C353.999 211.572 360.72 196.572 360.72 180C360.72 146.856 333.81 120 300.6 120C283.995 120 268.965 113.28 258.095 102.42C247.213 91.572 240.48 76.572 240.48 60C240.48 43.428 247.213 28.428 258.095 17.568C268.965 6.708 283.995 0 300.6 0C333.81 0 360.72 26.856 360.72 60C360.72 76.572 367.453 91.572 378.335 102.42C389.205 113.28 404.235 120 420.84 120C454.05 120 480.96 146.856 480.96 180Z\"\n fill=\"#121212\"\n />\n <path\n d=\"M240.48 180C240.48 146.862 213.563 120 180.36 120C147.157 120 120.24 146.862 120.24 180C120.24 213.137 147.157 240 180.36 240C213.563 240 240.48 213.137 240.48 180Z\"\n fill=\"#121212\"\n />\n <path\n d=\"M120.24 300C120.24 266.863 93.3234 240 60.12 240C26.9166 240 0 266.863 0 300C0 333.138 26.9166 360 60.12 360C93.3234 360 120.24 333.138 120.24 300Z\"\n fill=\"#121212\"\n />\n <path\n d=\"M601.2 300C601.2 266.863 574.283 240 541.08 240C507.877 240 480.96 266.863 480.96 300C480.96 333.138 507.877 360 541.08 360C574.283 360 601.2 333.138 601.2 300Z\"\n fill=\"#121212\"\n />\n </svg>\n}\n\nexport function IconNextJS() {\n return <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={24}\n height={24}\n viewBox=\"0 0 15 15\"\n fill=\"none\"\n >\n <path\n d=\"M4.5 4.5L4.90534 4.20725C4.77836 4.03144 4.55252 3.95753 4.34617 4.02425C4.13981 4.09098 4 4.28313 4 4.5H4.5ZM7.5 14C3.91015 14 1 11.0899 1 7.5H0C0 11.6421 3.35786 15 7.5 15V14ZM14 7.5C14 11.0899 11.0899 14 7.5 14V15C11.6421 15 15 11.6421 15 7.5H14ZM7.5 1C11.0899 1 14 3.91015 14 7.5H15C15 3.35786 11.6421 0 7.5 0V1ZM7.5 0C3.35786 0 0 3.35786 0 7.5H1C1 3.91015 3.91015 1 7.5 1V0ZM5 12V4.5H4V12H5ZM4.09466 4.79275L10.5947 13.7927L11.4053 13.2073L4.90534 4.20725L4.09466 4.79275ZM10 4V10H11V4H10Z\"\n fill=\"#000000\"\n />\n </svg>\n}\n\nexport function IconAppTemplate() {\n return <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 80 80\"\n fill=\"none\"\n >\n <g clipPath=\"url(#clip0_202_147)\">\n <path d=\"M0 55.3333H80\" stroke=\"black\" strokeWidth={0.506667} />\n <path d=\"M0 40H80\" stroke=\"black\" strokeWidth={0.506667} />\n <path d=\"M0 24.6667H80\" stroke=\"black\" strokeWidth={0.506667} />\n <path d=\"M55.3334 80V0\" stroke=\"black\" strokeWidth={0.506667} />\n <path d=\"M40 80V0\" stroke=\"black\" strokeWidth={0.506667} />\n <path d=\"M24.6666 80V0\" stroke=\"black\" strokeWidth={0.506667} />\n <path d=\"M80 80L0 0\" stroke=\"black\" strokeWidth={0.506667} />\n <path d=\"M0 80L80 0\" stroke=\"black\" strokeWidth={0.506667} />\n <rect\n x={5.33337}\n y={5.33333}\n width={69.3333}\n height={69.3333}\n stroke=\"black\"\n strokeWidth={0.506667}\n />\n <circle\n cx={40}\n cy={40}\n r={15.3333}\n stroke=\"black\"\n strokeWidth={0.506667}\n />\n <circle cx={40} cy={40} r={22} stroke=\"black\" strokeWidth={0.506667} />\n <circle\n cx={40}\n cy={40}\n r={34.6667}\n stroke=\"black\"\n strokeWidth={0.506667}\n />\n </g>\n <rect\n x={0.253333}\n y={0.253333}\n width={79.4933}\n height={79.4933}\n rx={17.08}\n stroke=\"black\"\n strokeWidth={0.506667}\n />\n <defs>\n <clipPath id=\"clip0_202_147\">\n <rect width={80} height={80} rx={17.3333} fill=\"white\" />\n </clipPath>\n </defs>\n </svg>\n}\n\nexport function IconQuote() {\n return <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n width=\"1em\"\n height=\"1em\"\n stroke=\"currentColor\"\n fill=\"currentColor\"\n >\n <path d=\"M14 17h3l2-4V7h-6v6h3M6 17h3l2-4V7H5v6h3z\" />\n </svg>\n}\n\nexport function IconCopy() {\n return <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"1em\"\n height=\"1em\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth={2}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <rect width={14} height={14} x={8} y={8} rx={2} ry={2} />\n <path d=\"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2\" />\n </svg>\n}\nexport function IconCheck() {\n return <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"1em\"\n height=\"1em\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth={2}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <path d=\"M18 6 7 17l-5-5\" />\n <path d=\"m22 10-7.5 7.5L13 16\" />\n </svg>\n}","import * as React from \"react\"\n\nimport {type Theme} from \"@code-hike/lighter\";\n\nimport {\n Heading,\n Table,\n Details,\n Code,\n} from \"@xyd-js/components/writer\";\nimport {CodeSample} from \"@xyd-js/components/coder\";\n\nimport {MDXCommonAtlasProps} from \"@/components/Atlas/types\";\nimport {useSyntaxHighlight} from \"./AtlasContext\";\nimport {IconQuote} from \"@/components/Icon\";\n\n// TODO: interface should be imported from somewhere\ninterface CodeSourceContext {\n fileName: string;\n fileFullPath: string;\n sourcecode: string;\n}\n\nconst MAX_REFERENCES = 2;\n\ninterface ReferenceItemProps {\n reference: any;\n index: number;\n syntaxHighlight: Theme | null;\n}\n\n\nexport function AtlasSecondary<T>({references}: MDXCommonAtlasProps<T>) {\n const syntaxHighlight = useSyntaxHighlight()\n\n if (!references) return null;\n\n const initialReferences = references.slice(0, MAX_REFERENCES);\n const remainingReferences = references.slice(MAX_REFERENCES);\n\n const showMoreText = remainingReferences.length > 0 ?\n `Show more (${remainingReferences.length}) reference${remainingReferences.length === 1 ? '' : 's'}` :\n '';\n\n return (\n <>\n {initialReferences.map((reference, i) => (\n <$ReferenceItem\n key={i}\n reference={reference}\n index={i}\n syntaxHighlight={syntaxHighlight}\n />\n ))}\n\n {remainingReferences.length > 0 && (\n <Details\n label={showMoreText}\n >\n {remainingReferences.map((reference, i) => (\n <$ReferenceItem\n key={i + MAX_REFERENCES}\n reference={reference}\n index={i + MAX_REFERENCES}\n syntaxHighlight={syntaxHighlight}\n />\n ))}\n </Details>\n )}\n </>\n )\n}\n\nfunction $ReferenceItem({reference, index, syntaxHighlight}: ReferenceItemProps) {\n return (\n <React.Fragment key={index}>\n <Heading size={3}>\n {reference.title}\n </Heading>\n\n {/*<p>*/}\n {/* {uniformChild(reference.description)}*/}\n {/*</p>*/}\n\n {\n reference.context?.fileName && <Details\n label=\"\"\n kind=\"tertiary\"\n title={<>\n Source code in <Code>{reference.context.fileFullPath}</Code>\n </>}\n icon={<IconQuote/>}>\n <CodeSample\n name={reference.context.fileName}\n description={reference.context.sourcecode.description}\n theme={syntaxHighlight || undefined}\n codeblocks={[\n {\n lang: reference.context.sourcecode.lang,\n meta: \"\",\n value: reference.context.sourcecode.code\n }\n ]}\n />\n {/* {parseChild(reference.context.sourcecode)} */}\n </Details>\n }\n\n {\n reference.definitions.map((definition: any, index: number) => {\n return (\n <React.Fragment key={index}>\n <Heading size={4}>\n {definition.title}\n </Heading>\n <Table>\n <Table.Head>\n <Table.Tr>\n <Table.Th>Name</Table.Th>\n <Table.Th>Type</Table.Th>\n <Table.Th>Description</Table.Th>\n </Table.Tr>\n </Table.Head>\n <Table.Body>\n {definition.properties?.map((property: any, propIndex: number) => (\n <Table.Tr key={propIndex}>\n <Table.Td>\n <Code>{property.name}</Code>\n </Table.Td>\n <Table.Td>\n <Code>{property.type}</Code>\n </Table.Td>\n <Table.Td muted>\n {property.description}\n </Table.Td>\n </Table.Tr>\n ))}\n </Table.Body>\n </Table>\n </React.Fragment>\n )\n })\n }\n\n <br/>\n </React.Fragment>\n )\n}\n","import React from \"react\";\n\nimport { MDXCommonAtlasProps } from \"./types\";\nimport { AtlasDecorator } from \"./AtlasDecorator\";\nimport { AtlasPrimary } from \"./AtlasPrimary\";\nimport { AtlasSecondary } from \"./AtlasSecondary\";\n\nimport * as cn from \"./Atlas.styles\";\n\ninterface AtlasProps<T> extends MDXCommonAtlasProps<T> {\n kind: \"secondary\" | \"primary\" | undefined | null\n}\n\nexport function Atlas<T>(props: AtlasProps<T>) {\n let AtlasComponent: React.FC<MDXCommonAtlasProps<T>>;\n\n if (props.kind === \"secondary\") {\n AtlasComponent = AtlasSecondary;\n } else {\n AtlasComponent = AtlasPrimary;\n }\n\n let references = props.references\n {\n // TODO: find better solution - if we pass from md then its string\n if (references && typeof references === \"string\") { // TODO: DO IT BETTER\n try {\n references = JSON.parse(references)\n } catch (error) {\n console.error(\"Error parsing references\", error)\n }\n }\n }\n\n return <AtlasDecorator>\n <div className={cn.AtlasHost}>\n <AtlasComponent\n references={references}\n apiRefItemKind={props.apiRefItemKind}\n />\n </div>\n </AtlasDecorator>\n}","import {css} from \"@linaria/core\";\n\nexport const AtlasHost = css`\n width: 100%;\n`;\n"],"names":["o","t","e","n","a","u","r","i","l","ApiRefItemDefinitionsItem","AtlasContext","createContext","syntaxHighlight","useSyntaxHighlight","context","useContext","Error","ApiRefItem","_ref","kind","reference","hasExamples","_b","examples","_a","groups","length","header","React","createElement","$IntroHeader","ApiRefSamples","undefined","className","$Definitions","_ref2","topNavbar","category","ReferenceCategory","REST","ctx","method","fullPath","$Navbar","label","subtitle","concat","matchSubtitle","path","Fragment","$Title","title","description","$Authorization","_ref3","scopes","cn","part","$Subtitle","$DefinitionBody","definition","properties","map","s","Code","VariantContext","variant","setVariant","variantToggles","selectedValues","setSelectedValue","variants","_ref4","argDefinition","definitions","GRAPHQL","gqlDefinitions","forEach","meta","find","name","value","push","filter","updatedProperties","prop","matchingVariant","symbolMeta","m","some","Object","assign","key","$VariantsProvider","$VariantSelects","_ref5","children","variantMetas","reduce","acc","allMetaNames","metaAcc","_defineProperty","useVariantToggles","toggle","_useState","useState","initial","defaultValue","_useState2","_slicedToArray","setSelectedValues","useCallback","prev","_useState3","findMatchingVariant","_useState4","useEffect","newVariant","Provider","entries","every","_ref6","_ref7","_useContext","index","availableValues","Array","from","Set","v","Boolean","sort","filteredValues","slice","prevToggle","selectedValue","displayValues","onChange","newValue","target","contentTypeKey","currentContentType","statusMeta","contentTypeMeta","nextToggle","props","apiRefProperties","ApiRefProperties","rootProperty","getMetaInfo","minimum","maximum","example","_c","rangeInfo","exampleInfo","style","marginTop","marginBottom","color","fontSize","info","metaInfo","metaDescription","descriptionMeta","definitionMetaDescription","_ref8","toUpperCase","Badge","size","onClick","range","document","createRange","selectNodeContents","selection","window","getSelection","removeAllRanges","addRange","indexOf","before","substring","match","after","Text","as","weight","renderSubtitle","_ref9","Heading","_ref0","ApiRefPropertiesUlHost","ApiRefPropertiesLiHost","ApiRefPropertiesDescriptionHost","ApiRefPropertiesDlHost","ApiRefPropertiesPropNameCodeHost","ApiRefPropertiesPropTypeCodeHost","ApiRefPropertiesPropTypeCodeLink","ApiRefPropertiesSubPropsHost","ApiRefPropertiesSubPropsHostExpanded","ApiRefPropertiesSubPropsBox","ApiRefPropertiesSubPropsUl","ApiRefPropertiesSubPropsLi","ApiRefPropertiesPropToggleHost","ApiRefPropertiesPropToggleLink","ApiRefPropertiesMetaInfoHost","filterProperties","property","propName","propValue","type","propertyProperties","propProperties","ofProperty","renderMetaInfo","PropName","PropType","PropMetaList","metas","SubProperties","parent","parentChoiceType","_useContext$Link","Link","href","baseMatch","useBaseMatch","symbolDef","canonical","symbolLink","isArray","startsWith","console","warn","useSymbolLink","propSymbol","resolvePropertySymbol","PropMeta","valueText","order","deprecated","required","defaults","sortedMetas","_toConsumableArray","b","_extends","expanded","setExpanded","foundProperties","choiceType","isChoiceType","noChildProps","DEFINED_DEFINITION_PROPERTY_TYPE","ENUM","hasArguments","PropToggle","isArgument","isExpanded","role","text","xmlns","width","height","fill","viewBox","fillRule","d","clipRule","UNION","XOR","includes","symbolsParts","resolvePropertySymbolInner","ARRAY","ofOfSymbols","symbol","groupSymbol","atomicDefinedSymbol","atomicDefinedPropertySymbol","join","unionSymbol","_d","defined","atomicPropertySymbol","chains","_e","_step","respMap","resp","_iterator","_createForOfIteratorHelper","done","_resp","symbols","apply","err","f","_step2","hasOr","_iterator2","trim","keys","_f","nullableProperty","colors","foreground","focusBorder","tokenColors","scope","settings","fontStyle","z","P","this","arguments","c","w","R","code","annotations","M","RegExp","rangeString","query","j","thresholds","onDepthReached","current","addEventListener","removeEventListener","scrollTop","scrollHeight","clientHeight","Math","round","has","add","CodeSampleButtonsHost","CodeSampleButtonsContainer","CodeSampleButtonsArrowHost","CodeSampleButtonsArrowIcon","CodeSampleButtonsScrollerHost","CodeSampleButtonsScrollerContainer","CodeSampleButtonsButtonHost","CodeSampleButtonsButtonActive","CodeExampleButtons","activeExample","showLeftArrow","setShowLeftArrow","showRightArrow","setShowRightArrow","scrollContainerRef","useRef","handleScroll","_scrollContainerRef$c","scrollLeft","scrollWidth","clientWidth","scroll","direction","scrollAmount","scrollBy","left","behavior","ChevronLeft","ref","onScroll","SampleButton","codeblock","ChevronRight","markExampleAsActive","ApiRefSamplesContainerHost","ApiRefSamplesGroupHost","activeExampleIndices","setActiveExampleIndices","activeExampleIndex","codeblocks","tabs","tab","String","lang","language","highlighted","UXNode","ex","groupIndex","exampleIndex","findIndex","CodeSample","theme","AtlasLazy","references","urlPrefix","ItemWrapper","onLoad","onLoaded","AtlasDecorator","AtlasPrimary","apiRefItemKind","IconQuote","stroke","AtlasSecondary","initialReferences","remainingReferences","showMoreText","$ReferenceItem","Details","fileName","fileFullPath","icon","sourcecode","Table","Head","Tr","Th","Body","propIndex","Td","muted","Atlas","AtlasComponent","JSON","parse","error"],"mappings":"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"}
@@ -0,0 +1,104 @@
1
+ @layer overrides {
2
+ :root {
3
+ --oas-method-get-color: #15803d;
4
+ --oas-method-get-bg: rgba(74, 222, 128, .2);
5
+ --oas-method-get-color--active: var(--white);
6
+ --oas-method-get-bg--active: #2ab673;
7
+
8
+ --oas-method-post-color: #1D4ED8;
9
+ --oas-method-post-bg: rgba(96, 165, 250, .2);
10
+ --oas-method-post-color--active: var(--white);
11
+ --oas-method-post-bg--active: #3064e3;
12
+
13
+ --oas-method-put-color: #C28C30;
14
+ --oas-method-put-bg: rgba(250, 204, 21, .2);
15
+ --oas-method-put-color--active: var(--white);
16
+ --oas-method-put-bg--active: #C28C30;
17
+
18
+ --oas-method-delete-color: #B91C1C;
19
+ --oas-method-delete-bg: rgba(248, 114, 114, 0.2);
20
+ --oas-method-delete-color--active: var(--white);
21
+ --oas-method-delete-bg--active: #cb3a32;
22
+
23
+ --oas-method-patch-color: #c2410c;
24
+ --oas-method-patch-bg: rgba(251, 146, 60, .2);
25
+ --oas-method-patch-color--active: var(--white);
26
+ --oas-method-patch-bg--active: #DA622B;
27
+ }
28
+
29
+ /* HTTP Method Colors */
30
+ [data-atlas-oas-method="GET"] {
31
+ /* --method-color: var(--oas-method-get-color); */
32
+ /* --method-bg: var(--oas-method-get-bg); */
33
+
34
+ --method-color: var(--oas-method-get-color);
35
+ --method-bg: unset;
36
+
37
+ /* &[data-active="true"] {
38
+ --method-bg: var(--oas-method-get-bg--active);
39
+ --method-color: var(--oas-method-get-color--active);
40
+ } */
41
+ }
42
+
43
+ [data-atlas-oas-method="POST"] {
44
+ /* --method-color: var(--oas-method-post-color); */
45
+ /* --method-bg: var(--oas-method-post-bg); */
46
+
47
+ --method-color: var(--oas-method-post-color);
48
+ --method-bg: unset;
49
+
50
+ /* &[data-active="true"] {
51
+ --method-bg: var(--oas-method-post-bg--active);
52
+ --method-color: var(--oas-method-post-color--active);
53
+ } */
54
+ }
55
+
56
+ [data-atlas-oas-method="PUT"] {
57
+ /* --method-color: var(--oas-method-put-color); */
58
+ /* --method-bg: var(--oas-method-put-bg); */
59
+
60
+ --method-color: var(--oas-method-put-color);
61
+ --method-bg: unset;
62
+
63
+ /* &[data-active="true"] {
64
+ --method-bg: var(--oas-method-put-bg--active);
65
+ --method-color: var(--oas-method-put-color--active);
66
+ } */
67
+ }
68
+
69
+ [data-atlas-oas-method="DELETE"] {
70
+ /* --method-color: var(--oas-method-delete-color); */
71
+ /* --method-bg: var(--oas-method-delete-bg); */
72
+
73
+ --method-color: var(--oas-method-delete-color);
74
+ --method-bg: unset;
75
+
76
+ /* &[data-active="true"] {
77
+ --method-bg: var(--oas-method-delete-bg--active);
78
+ --method-color: var(--oas-method-delete-color--active);
79
+ } */
80
+ }
81
+
82
+ [data-atlas-oas-method="PATCH"] {
83
+ /* --method-color: var(--oas-method-patch-color); */
84
+ /* --method-bg: var(--oas-method-patch-bg); */
85
+
86
+ --method-color: var(--oas-method-patch-color);
87
+ --method-bg: unset;
88
+
89
+ /* &[data-active="true"] {
90
+ --method-bg: var(--oas-method-patch-bg--active);
91
+ --method-color: var(--oas-method-patch-color--active);
92
+ } */
93
+ }
94
+
95
+ [data-atlas-oas-method] {
96
+ color: var(--method-color);
97
+ }
98
+
99
+ [data-atlas-oas-method] xyd-badge {
100
+ background-color: var(--method-bg);
101
+ color: var(--method-color);
102
+ font-weight: var(--xyd-font-weight-bold);
103
+ }
104
+ }
@@ -0,0 +1,60 @@
1
+ :root {
2
+ /* Ref tokens - Base values */
3
+ --XydAtlas-Ref-Palette-White: #FFFFFF;
4
+
5
+ --XydAtlas-Ref-Palette-Primary-60: #7051d4;
6
+ --XydAtlas-Ref-Palette-Primary-70: #6045b9;
7
+ --XydAtlas-Ref-Palette-Primary-80: #4f399e;
8
+
9
+ --XydAtlas-Ref-Palette-Neutral-10: #F8F9FA;
10
+ --XydAtlas-Ref-Palette-Neutral-20: #F1F3F5;
11
+ --XydAtlas-Ref-Palette-Neutral-30: #E9ECEF;
12
+ --XydAtlas-Ref-Palette-Neutral-40: #DEE2E6;
13
+ --XydAtlas-Ref-Palette-Neutral-70: #6C757D;
14
+ --XydAtlas-Ref-Palette-Neutral-80: #495057;
15
+ --XydAtlas-Ref-Palette-Neutral-100: #212529;
16
+
17
+ /* System tokens - Semantic values */
18
+ --XydAtlas-Sys-Color-Primary: var(--XydAtlas-Ref-Palette-Primary-60);
19
+ --XydAtlas-Sys-Color-Primary--hover: var(--XydAtlas-Ref-Palette-Primary-70);
20
+ --XydAtlas-Sys-Color-Primary--active: var(--XydAtlas-Ref-Palette-Primary-80);
21
+
22
+ --XydAtlas-Sys-Color-Surface: var(--XydAtlas-Ref-Palette-Neutral-10);
23
+ --XydAtlas-Sys-Color-Surface--hover: var(--XydAtlas-Ref-Palette-Neutral-20);
24
+ --XydAtlas-Sys-Color-Surface--active: var(--XydAtlas-Ref-Palette-Neutral-30);
25
+
26
+ --XydAtlas-Sys-Color-Text-Primary: var(--XydAtlas-Ref-Palette-Neutral-100);
27
+ --XydAtlas-Sys-Color-Text-Secondary: var(--XydAtlas-Ref-Palette-Neutral-80);
28
+ --XydAtlas-Sys-Color-Text-Tertiary: var(--XydAtlas-Ref-Palette-Neutral-70);
29
+
30
+ --XydAtlas-Sys-Color-Border: var(--XydAtlas-Ref-Palette-Neutral-30);
31
+ --XydAtlas-Sys-Color-Border--hover: var(--XydAtlas-Ref-Palette-Neutral-40);
32
+ --XydAtlas-Sys-Color-Border--active: var(--XydAtlas-Ref-Palette-Primary-60);
33
+
34
+ /* Component tokens - Specific component values */
35
+ /* ApiRef Properties */
36
+ --XydAtlas-Component-ApiRef-Properties__color-description: var(--XydAtlas-Sys-Color-Text-Secondary);
37
+ --XydAtlas-Component-ApiRef-Properties__color-propName: var(--XydAtlas-Sys-Color-Text-Primary);
38
+ --XydAtlas-Component-ApiRef-Properties__color-propType: var(--XydAtlas-Sys-Color-Text-Tertiary);
39
+ --XydAtlas-Component-ApiRef-Properties__color--active: var(--XydAtlas-Sys-Color-Primary);
40
+ --XydAtlas-Component-ApiRef-Properties__color-border: var(--XydAtlas-Sys-Color-Border);
41
+
42
+ /* ApiRef Item */
43
+ --XydAtlas-Component-ApiRef-Item__color-border: var(--XydAtlas-Sys-Color-Border);
44
+ --XydAtlas-Component-ApiRef-Item__color-navbar: var(--XydAtlas-Sys-Color-Text-Secondary);
45
+ --XydAtlas-Component-ApiRef-Item__background-navbar: var(--XydAtlas-Ref-Palette-Neutral-10);
46
+
47
+ /* Code Sample */
48
+ --XydAtlas-Component-Code-Sample__color-border: var(--XydAtlas-Sys-Color-Border);
49
+ --XydAtlas-Component-Code-Sample__color: var(--XydAtlas-Sys-Color-Text-Secondary);
50
+ --XydAtlas-Component-Code-Sample__color--active: var(--XydAtlas-Sys-Color-Primary);
51
+ --XydAtlas-Component-Code-Sample__color-background: var(--XydAtlas-Sys-Color-Surface--hover);
52
+ --XydAtlas-Component-Code-Sample__color-markBorder--active: var(--XydAtlas-Sys-Color-Primary);
53
+ --XydAtlas-Component-Code-Sample__color-markBackground--active: var(--XydAtlas-Sys-Color-Surface--hover);
54
+
55
+ /* Code Sample Buttons */
56
+ --XydAtlas-Component-Code-SampleButtons__color-containerBackground: var(--XydAtlas-Sys-Color-Surface);
57
+ --XydAtlas-Component-Code-SampleButtons__color-background--active: var(--XydAtlas-Ref-Palette-White);
58
+ --XydAtlas-Component-Code-SampleButtons__color: var(--XydAtlas-Sys-Color-Text-Primary);
59
+ --XydAtlas-Component-Code-SampleButtons__color--active: var(--XydAtlas-Sys-Color-Text-Primary);
60
+ }
@@ -0,0 +1,5 @@
1
+ import { Plugin } from '@xyd-js/plugins';
2
+
3
+ declare function XydAtlasPlugin(): Plugin;
4
+
5
+ export { XydAtlasPlugin as default };
@@ -0,0 +1,2 @@
1
+ import{SurfaceTarget as e}from"@xyd-js/framework";import{a as t,b as i}from"./VideoGuide-BLUkXIOB-Dk2lkn4r.js";import r from"react";import"radix-ui";import"lucide-react";import"openux-js";function a(e){var a,o=(null===(a=null==e?void 0:e.pageMeta)||void 0===a?void 0:a.openapi)||"",n=o.includes("#")?o.split("#"):["",o],u=t(n,2);u[0];var d=u[1],l=(void 0===d?"":d).split(" "),s=t(l,1)[0],m=void 0===s?"":s;if(!m)return null;if(m.includes("components/schemas"))return null;var p=m.toUpperCase();return"DELETE"===m&&(p="DEL"),r.createElement("div",{"data-active":(null==e?void 0:e.active)?"true":void 0,"data-atlas-oas-method":m},r.createElement(i,{size:"xs"},p))}function o(){return function(t){return{name:"atlas-xyd-plugin",customComponents:{AtlasSidebarItemRight:{component:a,surface:e.SidebarItemRight}}}}}export{o as default};
2
+ //# sourceMappingURL=xydPlugin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"xydPlugin.js","sources":["../packages/xyd-plugin/SidebarItem.tsx","../packages/xyd-plugin/index.ts"],"sourcesContent":["import React from \"react\"\n\nimport { Badge } from \"@xyd-js/components/writer\"\n\nexport function SidebarItemRight(props: any) {\n const openapi = props?.pageMeta?.openapi || \"\"\n const [_, region = \"\"] = openapi.includes(\"#\") ? openapi.split(\"#\") : [\"\", openapi]\n const [method = \"\"] = region.split(\" \")\n\n if (!method) {\n return null\n }\n if (method.includes(\"components/schemas\")) {\n return null\n }\n\n let methodText = method.toUpperCase()\n if (method === \"DELETE\") {\n methodText = \"DEL\"\n }\n\n return <div data-active={props?.active ? \"true\" : undefined} data-atlas-oas-method={method}>\n <Badge size=\"xs\">\n {methodText}\n </Badge>\n </div>\n}","import { Settings } from \"@xyd-js/core\"\nimport { Plugin } from \"@xyd-js/plugins\"\nimport { SurfaceTarget } from \"@xyd-js/framework\"\n\nimport { SidebarItemRight } from \"./SidebarItem\"\n\nexport default function XydAtlasPlugin(): Plugin {\n return function (settings: Settings) {\n return {\n name: \"atlas-xyd-plugin\",\n customComponents: {\n AtlasSidebarItemRight: {\n component: SidebarItemRight,\n surface: SurfaceTarget.SidebarItemRight,\n }\n }\n }\n }\n}\n\n"],"names":["SidebarItemRight","props","openapi","_a","pageMeta","_ref","includes","split","_ref2","_slicedToArray","_ref2$","_region$split","_region$split2$","method","methodText","toUpperCase","React","createElement","active","undefined","Badge","size","XydAtlasPlugin","settings","name","customComponents","AtlasSidebarItemRight","component","surface","SurfaceTarget"],"mappings":"4LAIM,SAAUA,EAAiBC,SACvBC,GAAyB,QAAfC,EAAAF,aAAK,EAALA,EAAOG,gBAAQ,IAAAD,OAAA,EAAAA,EAAED,UAAW,GAC5CG,EAAyBH,EAAQI,SAAS,KAAOJ,EAAQK,MAAM,KAAO,CAAC,GAAIL,GAAQM,EAAAC,EAAAJ,EAAA,GAA3EG,EAAA,GAAAE,IAAAA,EAAAF,EAAA,GACRG,QADgB,IAAAD,EAAG,GAAEA,GACQH,MAAM,KAAIK,EAAAH,EAAAE,EAAA,GAAA,GAAhCE,OAAM,IAAAD,EAAG,GAAEA,EAElB,IAAKC,EACD,OAAO,KAEX,GAAIA,EAAOP,SAAS,sBAChB,OAAO,KAGX,IAAIQ,EAAaD,EAAOE,cAKxB,MAJe,WAAXF,IACAC,EAAa,OAGVE,EAAAC,cAAA,MAAA,CAAK,eAAahB,aAAK,EAALA,EAAOiB,QAAS,YAASC,EAAW,wBAAuBN,GAChFG,EAAAC,cAACG,EAAK,CAACC,KAAK,MACPP,GAGb,CCpBc,SAAUQ,IACpB,OAAO,SAAUC,GACb,MAAO,CACHC,KAAM,mBACNC,iBAAkB,CACdC,sBAAuB,CACnBC,UAAW3B,EACX4B,QAASC,EAAc7B,mBAIvC,CACJ"}
package/index.ts ADDED
@@ -0,0 +1,2 @@
1
+ export * from "./src/components/Atlas"
2
+