@xyd-js/atlas 0.1.0-xyd.16 → 0.1.0-xyd.18

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 (65) hide show
  1. package/.storybook/index.css +1 -2
  2. package/.storybook/preview.ts +1 -2
  3. package/CHANGELOG.md +22 -0
  4. package/dist/Update-BlhP2VFR-COLbZvRj.js +4 -0
  5. package/dist/Update-BlhP2VFR-COLbZvRj.js.map +1 -0
  6. package/dist/Update-CMM38Snc-COLbZvRj.js +4 -0
  7. package/dist/Update-CMM38Snc-COLbZvRj.js.map +1 -0
  8. package/dist/Update-D5e_yqty-COLbZvRj.js +4 -0
  9. package/dist/Update-D5e_yqty-COLbZvRj.js.map +1 -0
  10. package/dist/index.css +47 -58
  11. package/dist/index.d.ts +30 -11
  12. package/dist/index.js +1 -1
  13. package/dist/index.js.map +1 -1
  14. package/dist/styles.css +89 -0
  15. package/dist/tokens.css +5 -2
  16. package/dist/xydPlugin.d.ts +5 -0
  17. package/dist/xydPlugin.js +2 -0
  18. package/dist/xydPlugin.js.map +1 -0
  19. package/index.ts +2 -1
  20. package/package.json +12 -9
  21. package/packages/xyd-plugin/SidebarItem.tsx +27 -0
  22. package/packages/xyd-plugin/index.ts +19 -0
  23. package/rollup.config.js +27 -25
  24. package/src/components/ApiRef/ApiRefItem/ApiRefItem.styles.tsx +60 -17
  25. package/src/components/ApiRef/ApiRefItem/ApiRefItem.tsx +508 -49
  26. package/src/components/ApiRef/ApiRefProperties/ApiRefProperties.styles.tsx +73 -16
  27. package/src/components/ApiRef/ApiRefProperties/ApiRefProperties.tsx +574 -56
  28. package/src/components/ApiRef/ApiRefSamples/ApiRefSamples.styles.tsx +2 -1
  29. package/src/components/ApiRef/ApiRefSamples/ApiRefSamples.tsx +37 -19
  30. package/src/components/Atlas/Atlas.styles.tsx +1 -1
  31. package/src/components/Atlas/Atlas.tsx +35 -19
  32. package/src/components/Atlas/AtlasContext.tsx +47 -0
  33. package/src/components/Atlas/AtlasDecorator.styles.ts +22 -0
  34. package/src/components/Atlas/AtlasDecorator.tsx +15 -0
  35. package/src/components/Atlas/AtlasLazy/AtlasLazy.tsx +2 -2
  36. package/src/components/Atlas/AtlasPrimary.tsx +21 -0
  37. package/src/components/Atlas/AtlasSecondary.tsx +148 -0
  38. package/src/components/Atlas/index.ts +6 -2
  39. package/src/components/Atlas/types.ts +11 -0
  40. package/src/components/Code/CodeSampleButtons/CodeSampleButtons.styles.tsx +4 -5
  41. package/src/components/Code/CodeSampleButtons/CodeSampleButtons.tsx +6 -8
  42. package/src/components/Code/index.ts +0 -4
  43. package/src/components/Icon/index.tsx +384 -0
  44. package/src/styles/styles.css +89 -0
  45. package/src/styles/tokens.css +5 -2
  46. package/src/utils/mdx.ts +0 -29
  47. package/tsconfig.json +6 -2
  48. package/types.d.ts +22 -0
  49. package/dist/CodeSample-CVki5fdQ-CI-Jdg_T.js +0 -2
  50. package/dist/CodeSample-CVki5fdQ-CI-Jdg_T.js.map +0 -1
  51. package/dist/CodeSample-Dkob5gWa-CI-Jdg_T.js +0 -2
  52. package/dist/CodeSample-Dkob5gWa-CI-Jdg_T.js.map +0 -1
  53. package/dist/atlas-index.d.ts +0 -15
  54. package/dist/atlas-index.js +0 -2
  55. package/dist/atlas-index.js.map +0 -1
  56. package/packages/atlas-index/AtlasIndex.tsx +0 -79
  57. package/packages/atlas-index/index.ts +0 -3
  58. package/src/components/Code/CodeCopy/CodeCopy.styles.tsx +0 -17
  59. package/src/components/Code/CodeCopy/CodeCopy.tsx +0 -30
  60. package/src/components/Code/CodeCopy/index.ts +0 -7
  61. package/src/components/Code/CodeSample/CodeSample.styles.tsx +0 -131
  62. package/src/components/Code/CodeSample/CodeSample.tsx +0 -143
  63. package/src/components/Code/CodeSample/index.ts +0 -8
  64. package/src/components/Code/CodeSample/withLocalStored.tsx +0 -52
  65. package/src/components/Code/default-theme.ts +0 -266
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../src/components/ApiRef/ApiRefItem/ApiRefItem.tsx","../src/components/ApiRef/ApiRefItem/ApiRefItem.styles.tsx","../src/components/ApiRef/ApiRefProperties/ApiRefProperties.styles.tsx","../src/components/ApiRef/ApiRefProperties/ApiRefProperties.tsx","../src/components/Code/CodeCopy/CodeCopy.styles.tsx","../src/components/Code/CodeCopy/CodeCopy.tsx","../../../node_modules/.pnpm/@rollup+plugin-typescript@12.1.2_rollup@4.39.0_tslib@2.8.1_typescript@5.8.3/node_modules/tslib/tslib.es6.js","../../../node_modules/.pnpm/codehike@1.0.5/node_modules/codehike/dist/code/extract-annotations.js","../../../node_modules/.pnpm/codehike@1.0.5/node_modules/codehike/dist/code/types.js","../../../node_modules/.pnpm/codehike@1.0.5/node_modules/codehike/dist/code/highlight.js","../../../node_modules/.pnpm/react@19.0.0/node_modules/react/cjs/react-jsx-runtime.development.js","../../../node_modules/.pnpm/react@19.0.0/node_modules/react/jsx-runtime.js","../../../node_modules/.pnpm/react@19.0.0/node_modules/react/cjs/react-jsx-runtime.production.js","../../../node_modules/.pnpm/codehike@1.0.5/node_modules/codehike/dist/code/merge-props.js","../../../node_modules/.pnpm/codehike@1.0.5/node_modules/codehike/dist/code/inner.js","../../../node_modules/.pnpm/codehike@1.0.5/node_modules/codehike/dist/code/pre-ref.js","../../../node_modules/.pnpm/codehike@1.0.5/node_modules/codehike/dist/code/tokens.js","../../../node_modules/.pnpm/codehike@1.0.5/node_modules/codehike/dist/code/inline.js","../../../node_modules/.pnpm/codehike@1.0.5/node_modules/codehike/dist/code/lines.js","../../../node_modules/.pnpm/codehike@1.0.5/node_modules/codehike/dist/code/block.js","../../../node_modules/.pnpm/codehike@1.0.5/node_modules/codehike/dist/code/pre.js","../src/components/Code/default-theme.ts","../src/components/Code/CodeSample/CodeSample.styles.tsx","../src/components/Code/CodeSample/withLocalStored.tsx","../src/components/Code/CodeSample/CodeSample.tsx","../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/Atlas.tsx","../src/components/Atlas/Atlas.styles.tsx","../src/components/Atlas/AtlasLazy/AtlasLazy.tsx","../src/components/Atlas/AtlasLazy/AtlasLazy.styles.tsx"],"sourcesContent":["import React from \"react\";\n\nimport {OpenAPIReferenceContext, Reference, ReferenceCategory} from \"@xyd-js/uniform\";\n\nimport {MDXReference} from \"@/utils/mdx\";\nimport {\n ApiRefProperties,\n ApiRefSamples\n} from \"@/components/ApiRef\";\nimport * as cn from \"@/components/ApiRef/ApiRefItem/ApiRefItem.styles\";\n\nexport interface ApiRefItemProps {\n reference: MDXReference<Reference>\n}\n\n// TODO: context with current referene?\nexport function ApiRefItem({reference}: ApiRefItemProps) {\n let topNavbar;\n\n switch (reference?.category?.title) {\n case ReferenceCategory.REST: {\n const ctx = reference.context as MDXReference<OpenAPIReferenceContext>\n\n if (!ctx || !ctx.method || !ctx.path || !ctx.path.title) {\n break;\n }\n // TODO: finish subitlte from ref\n topNavbar = <Navbar\n label={ctx.method.title}\n subtitle={`${decodeURIComponent(ctx.path.title)}`}\n />\n break;\n }\n }\n\n return <div className={cn.ApiRefItemHost}>\n <Title title={reference.title || \"\"}/>\n\n {topNavbar}\n\n {reference.description.children}\n\n <div className={cn.ApiRefItemGrid}>\n <Properties reference={reference}/>\n {reference.examples && <ApiRefSamples examples={reference.examples}/>}\n </div>\n\n </div>\n}\n\nfunction Properties({reference}: ApiRefItemProps) {\n return <div className={cn.ApiRefItemPropertiesHost}>\n {reference?.definitions?.map((definition, i) => <div key={i}>\n {\n definition.properties?.length && <div key={i} className={cn.ApiRefItemPropertiesItem}>\n <Subtitle title={definition.title.title}/>\n\n <ApiRefProperties properties={definition.properties}/>\n </div>\n }\n </div>)}\n </div>\n}\n\nfunction Navbar({label, subtitle}: { label: string, subtitle: string }) {\n return <>\n <div className={cn.ApiRefItemNavbarHost}>\n <span className={cn.ApiRefItemNavbarContainer}>\n <span className={cn.ApiRefItemNavbarLabel}>\n {label.toUpperCase()}\n </span>\n <span>\n {subtitle}\n </span>\n </span>\n </div>\n </>\n}\n\nfunction Title({title}: { title: string }) {\n return <>\n <h1 className={cn.ApiRefItemTitleHost}>\n <a className={cn.ApiRefItemTitleLink}>\n {title}\n </a>\n </h1>\n </>\n}\n\nfunction Subtitle({title}: { title: string }) {\n return <>\n <h1 className={cn.ApiRefItemSubtitleHost}>\n <a className={cn.ApiRefItemSubtitleLink}>\n {title}\n </a>\n </h1>\n </>\n}","import {css} from \"@linaria/core\";\n\nexport const ApiRefItemTitleHost = css`\n font-size: 30px;\n font-weight: 400;\n`;\n\nexport const ApiRefItemTitleLink = css`\n`;\n\nexport const ApiRefItemNavbarHost = css`\n`;\n\nexport const ApiRefItemNavbarContainer = css`\n background: linear-gradient(45deg, rgb(247, 247, 248) 0%, rgb(247, 247, 248) 100%);\n padding: 8px;\n border: 1px solid var(--XydAtlas-Component-ApiRef-Item__color-border);\n border-radius: 8px;\n font-size: 13px;\n`;\n\nexport const ApiRefItemNavbarLabel = css`\n color: var(--XydAtlas-Component-ApiRef-Item__color-navbar);\n margin-right: 4px;\n`;\n\nexport const ApiRefItemHost = css`\n display: flex;\n flex-direction: column;\n gap: 16px;\n padding-bottom: 25px;\n`;\n\nexport const ApiRefItemGrid = css`\n display: grid;\n grid-template-columns: repeat(2, minmax(0, 1fr));\n align-items: normal;\n gap: 100px;\n`;\n\nexport const ApiRefItemPropertiesHost = css`\n`;\n\nexport const ApiRefItemPropertiesItem = css`\n display: flex;\n flex-direction: column;\n gap: 25px;\n margin-bottom: 25px;\n`;\n\nexport const ApiRefItemSubtitleHost = css`\n font-size: 15px;\n font-weight: 600;\n`;\n\nexport const ApiRefItemSubtitleLink = css`\n text-decoration: none;\n`;\n\n","import {css} from \"@linaria/core\";\n\nexport const ApiRefPropertiesUlHost = 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`;\n\nexport const ApiRefPropertiesLiHost = css`\n margin: 0;\n padding: 0;\n\n &:first-child {\n padding-top: 0;\n }\n\n &:last-child {\n padding-bottom: 0;\n }\n`;\n\nexport const ApiRefPropertiesDescriptionHost = css`\n font-size: 14px;\n line-height: 22px;\n color: var(--XydAtlas-Component-ApiRef-Properties__color-description);\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: 8px 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: 600;\n font-size: 13px;\n color: var(--XydAtlas-Component-ApiRef-Properties__color-propName);\n`;\n\nexport const ApiRefPropertiesPropTypeCodeHost = css`\n display: inline-flex;\n padding: 4px 0;\n border-radius: 4px;\n font-size: 10px;\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: 16px;\n\n background: none;\n outline: inherit;\n border: none;\n\n cursor: pointer;\n color: inherit;\n\n font-size: 13px;\n\n svg {\n font-size: 13px;\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`;","import React, {useState} from \"react\";\nimport {DefinitionProperty} from \"@xyd-js/uniform\";\n\nimport {MDXReference, mdxValue} from \"@/utils/mdx\"\nimport * as cn from \"./ApiRefProperties.styles\";\n\nexport interface ApiRefPropertiesProps {\n properties: MDXReference<DefinitionProperty[]>\n}\n\nexport function ApiRefProperties({properties}: ApiRefPropertiesProps) {\n return <ul className={cn.ApiRefPropertiesUlHost}>\n {\n properties?.map((property, i) => (\n <li className={cn.ApiRefPropertiesLiHost} key={i}>\n <dl className={cn.ApiRefPropertiesDlHost}>\n <PropName name=\"name\" value={mdxValue(property.name)}/>\n <PropType\n name=\"type\"\n value={mdxValue(property.type)}\n href={propertyTypeHref(property)}\n />\n </dl>\n <div className={cn.ApiRefPropertiesDescriptionHost}>\n {property.children}\n </div>\n {\n property.properties ?\n <SubProperties\n properties={property.properties as MDXReference<DefinitionProperty>[]}\n /> : null\n }\n </li>\n ))\n }\n </ul>\n}\n\nfunction PropName({name, value}: { name: string, value: string }) {\n return <>\n <dd>\n <code className={cn.ApiRefPropertiesPropNameCodeHost}>{value}</code>\n </dd>\n </>\n}\n\nfunction PropType({name, value, href}: { name: string, value: string, href?: string }) {\n return <>\n <dd>\n <code className={cn.ApiRefPropertiesPropTypeCodeHost}>\n {\n href\n ? <a className={cn.ApiRefPropertiesPropTypeCodeLink} href={href}>{value}</a>\n : value\n }\n </code>\n </dd>\n </>\n}\n\nfunction SubProperties({properties}: { properties: MDXReference<DefinitionProperty>[] }) {\n const [expanded, setExpanded] = useState(false)\n\n return <>\n <PropToggle\n onClick={() => setExpanded(!expanded)}\n isExpanded={expanded}\n />\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 properties?.map((prop, i) => {\n return <li className={cn.ApiRefPropertiesSubPropsLi} key={i}>\n <dl className={cn.ApiRefPropertiesDlHost}>\n <PropName name=\"name\" value={mdxValue(prop.name)}/>\n <PropType\n name=\"type\"\n value={mdxValue(prop.type)}\n href={propertyTypeHref(prop)}\n />\n </dl>\n <div className={cn.ApiRefPropertiesDescriptionHost}>\n {prop.children}\n </div>\n {\n prop.properties ?\n <SubProperties\n properties={prop.properties as MDXReference<DefinitionProperty>[]}/> : null\n }\n </li>\n })\n }\n </ul>\n </div>\n </div>\n </>\n}\n\ninterface PropsToggleProps {\n isExpanded: boolean\n onClick: () => void\n}\n\nfunction PropToggle(props: PropsToggleProps) {\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}>{props.isExpanded ? 'Hide properties' : 'Show properties'}</span>\n </button>\n )\n}\n\nfunction propertyTypeHref(property: MDXReference<DefinitionProperty>) {\n if (property?.context?.graphqlBuiltInType?.title === \"true\") { // graphqlBuiltInType should be a boolean\n return undefined\n }\n\n // TODO: FINISH SLUG\n return property.context?.graphqlTypeShort?.title\n ? `/docs/api/graphql/${property.context?.graphqlTypeShort?.title}-${mdxValue(property.context?.graphqlTypeFlat?.title)}`\n : undefined\n}","import {css} from \"@linaria/core\";\n\nexport const CodeCopyHost = css`\n display: flex;\n align-items: center;\n justify-content: center;\n\n padding: 8px;\n\n border-radius: 6px;\n\n cursor: pointer;\n\n &:hover {\n background: var(--XydAtlas-Component-Code-Copy__color-background--active);\n }\n`; ","import React, {useState} from \"react\"\nimport {Copy, CopyCheck, CheckCheck} from \"lucide-react\"\n\nimport * as cn from \"./CodeCopy.styles\"\n\nexport interface CodeCopyProps {\n text: string\n}\n\nexport function CodeCopy({text}: CodeCopyProps) {\n const [copied, setCopied] = useState(false)\n\n function onClick() {\n navigator.clipboard.writeText(text)\n setCopied(true)\n setTimeout(() => {\n setCopied(false)\n }, 1200)\n }\n\n return (\n <button\n aria-label=\"Copy to clipboard\"\n onClick={onClick}\n className={cn.CodeCopyHost}\n >\n {copied ? <CheckCheck size={16}/> : <Copy size={16}/>}\n </button>\n )\n}","/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol, Iterator */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === \"function\" ? Iterator : Object).prototype);\r\n return g.next = verb(0), g[\"throw\"] = verb(1), g[\"return\"] = verb(2), typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = Object.create((typeof AsyncIterator === \"function\" ? AsyncIterator : Object).prototype), verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\r\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nvar ownKeys = function(o) {\r\n ownKeys = Object.getOwnPropertyNames || function (o) {\r\n var ar = [];\r\n for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;\r\n return ar;\r\n };\r\n return ownKeys(o);\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== \"default\") __createBinding(result, mod, k[i]);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport function __addDisposableResource(env, value, async) {\r\n if (value !== null && value !== void 0) {\r\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\r\n var dispose, inner;\r\n if (async) {\r\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\r\n dispose = value[Symbol.asyncDispose];\r\n }\r\n if (dispose === void 0) {\r\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\r\n dispose = value[Symbol.dispose];\r\n if (async) inner = dispose;\r\n }\r\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\r\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\r\n env.stack.push({ value: value, dispose: dispose, async: async });\r\n }\r\n else if (async) {\r\n env.stack.push({ async: true });\r\n }\r\n return value;\r\n\r\n}\r\n\r\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\r\n\r\nexport function __disposeResources(env) {\r\n function fail(e) {\r\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\r\n env.hasError = true;\r\n }\r\n var r, s = 0;\r\n function next() {\r\n while (r = env.stack.pop()) {\r\n try {\r\n if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);\r\n if (r.dispose) {\r\n var result = r.dispose.call(r.value);\r\n if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\r\n }\r\n else s |= 1;\r\n }\r\n catch (e) {\r\n fail(e);\r\n }\r\n }\r\n if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();\r\n if (env.hasError) throw env.error;\r\n }\r\n return next();\r\n}\r\n\r\nexport function __rewriteRelativeImportExtension(path, preserveJsx) {\r\n if (typeof path === \"string\" && /^\\.\\.?\\//.test(path)) {\r\n return path.replace(/\\.(tsx)$|((?:\\.d)?)((?:\\.[^./]+?)?)\\.([cm]?)ts$/i, function (m, tsx, d, ext, cm) {\r\n return tsx ? preserveJsx ? \".jsx\" : \".js\" : d && (!ext || !cm) ? m : (d + ext + \".\" + cm.toLowerCase() + \"js\");\r\n });\r\n }\r\n return path;\r\n}\r\n\r\nexport default {\r\n __extends: __extends,\r\n __assign: __assign,\r\n __rest: __rest,\r\n __decorate: __decorate,\r\n __param: __param,\r\n __esDecorate: __esDecorate,\r\n __runInitializers: __runInitializers,\r\n __propKey: __propKey,\r\n __setFunctionName: __setFunctionName,\r\n __metadata: __metadata,\r\n __awaiter: __awaiter,\r\n __generator: __generator,\r\n __createBinding: __createBinding,\r\n __exportStar: __exportStar,\r\n __values: __values,\r\n __read: __read,\r\n __spread: __spread,\r\n __spreadArrays: __spreadArrays,\r\n __spreadArray: __spreadArray,\r\n __await: __await,\r\n __asyncGenerator: __asyncGenerator,\r\n __asyncDelegator: __asyncDelegator,\r\n __asyncValues: __asyncValues,\r\n __makeTemplateObject: __makeTemplateObject,\r\n __importStar: __importStar,\r\n __importDefault: __importDefault,\r\n __classPrivateFieldGet: __classPrivateFieldGet,\r\n __classPrivateFieldSet: __classPrivateFieldSet,\r\n __classPrivateFieldIn: __classPrivateFieldIn,\r\n __addDisposableResource: __addDisposableResource,\r\n __disposeResources: __disposeResources,\r\n __rewriteRelativeImportExtension: __rewriteRelativeImportExtension,\r\n};\r\n","import { extractAnnotations } from \"@code-hike/lighter\";\nexport async function splitAnnotationsAndCode(code, lang, annotationPrefix) {\n let annotations = [];\n let codeWithoutAnnotations = code;\n const { code: newCode, annotations: newAnnotations } = await extractCommentAnnotations(codeWithoutAnnotations, lang, annotationPrefix);\n annotations = [...annotations, ...newAnnotations];\n codeWithoutAnnotations = newCode;\n return { code: codeWithoutAnnotations, annotations };\n}\nasync function extractCommentAnnotations(code, lang, annotationPrefix = \"!\") {\n const extractor = (comment) => {\n var _a;\n // const regex = /\\s*(!?[\\w-]+)?(\\([^\\)]*\\)|\\[[^\\]]*\\])?(.*)$/\n const regex = new RegExp(`\\\\s*(${annotationPrefix}?[\\\\w-]+)?(\\\\([^\\\\)]*\\\\)|\\\\[[^\\\\]]*\\\\])?(.*)$`);\n const match = comment.match(regex);\n if (!match) {\n return null;\n }\n const name = match[1];\n const rangeString = match[2];\n const query = (_a = match[3]) === null || _a === void 0 ? void 0 : _a.trim();\n if (!name || !name.startsWith(annotationPrefix)) {\n return null;\n }\n return {\n name: name.slice(annotationPrefix.length),\n rangeString,\n query,\n };\n };\n const { code: codeWithoutComments, annotations } = await extractAnnotations(code, lang, extractor);\n return { code: codeWithoutComments, annotations };\n}\n","export function isBlockAnnotation(annotation) {\n return !isInlineAnnotation(annotation);\n}\nexport function isInlineAnnotation(annotation) {\n return annotation.hasOwnProperty(\"lineNumber\");\n}\nexport function isWhitespace(token) {\n return typeof token === \"string\";\n}\n","import { splitAnnotationsAndCode } from \"./extract-annotations.js\";\nimport { isWhitespace, } from \"./types.js\";\nimport { highlight as lighter, LANG_NAMES, } from \"@code-hike/lighter\";\nexport async function highlight(data, theme, config = {}) {\n let { value, lang = \"txt\" } = data;\n if (!LANG_NAMES.includes(lang)) {\n console.warn(`Code Hike warning: Unknown language \"${lang}\"`);\n lang = \"txt\";\n }\n const { code, annotations } = await splitAnnotationsAndCode(value, lang, config.annotationPrefix || \"!\");\n const { lines, lang: lighterLang, style, } = await lighter(code, lang, theme, {\n annotations: [],\n scopes: false, // true for better token transitions, but breaks css themes\n });\n const tokens = joinLines(lines);\n // split surrounding whitespace for each token\n const splitTokens = splitWhitespace(tokens);\n // join consecutive whitespace tokens\n const joinedTokens = joinWhitespace(splitTokens);\n return {\n ...data,\n code,\n tokens: joinedTokens,\n lang: lighterLang,\n annotations: compatAnnotations(annotations),\n themeName: typeof theme === \"string\" ? theme : (theme === null || theme === void 0 ? void 0 : theme.name) || \"unknown\",\n style,\n };\n}\nfunction compatAnnotations(annotations) {\n const newAnnotations = [];\n for (const a of annotations) {\n const { name, query, ranges } = a;\n for (const r of ranges) {\n if (r.lineNumber) {\n const { lineNumber, fromColumn, toColumn } = r;\n newAnnotations.push({\n name,\n query,\n lineNumber,\n fromColumn,\n toColumn,\n });\n }\n else {\n const { fromLineNumber, toLineNumber } = r;\n newAnnotations.push({\n name,\n query,\n fromLineNumber,\n toLineNumber,\n });\n }\n }\n }\n return newAnnotations;\n}\n// group the Lines into one array\nfunction joinLines(lines) {\n const joinedTokens = [];\n lines.forEach((lineOrGroup, i) => {\n if (\"lines\" in lineOrGroup) {\n throw new Error(\"Shouldnt be groups\");\n }\n else {\n const tokens = joinTokens(lineOrGroup.tokens);\n joinedTokens.push(...tokens);\n if (i < lines.length - 1) {\n joinedTokens.push(\"\\n\");\n }\n }\n });\n return joinedTokens;\n}\nfunction joinTokens(tokens) {\n return tokens.map((tokenOrGroup) => {\n if (\"tokens\" in tokenOrGroup) {\n throw new Error(\"Shouldnt be groups\");\n }\n else {\n const t = [tokenOrGroup.content];\n const { color, ...rest } = tokenOrGroup.style || {};\n t.push(color);\n if (Object.keys(rest).length) {\n t.push(rest);\n }\n return t;\n }\n });\n}\nfunction splitWhitespace(tokens) {\n const ejected = [];\n tokens.forEach((tokenOrGroup) => {\n if (isWhitespace(tokenOrGroup)) {\n ejected.push(tokenOrGroup);\n }\n else {\n const [before, content, after] = splitSurroundingWhitespace(tokenOrGroup[0]);\n if (before === null || before === void 0 ? void 0 : before.length) {\n ejected.push(before);\n }\n if (content.length) {\n const copy = [...tokenOrGroup];\n copy[0] = content;\n ejected.push(copy);\n }\n if (after === null || after === void 0 ? void 0 : after.length) {\n ejected.push(after);\n }\n }\n });\n return ejected;\n}\nfunction joinWhitespace(tokens) {\n const joinedTokens = [];\n tokens.forEach((tokenOrGroup) => {\n if (isWhitespace(tokenOrGroup)) {\n let last = joinedTokens[joinedTokens.length - 1];\n if (last && isWhitespace(last)) {\n joinedTokens[joinedTokens.length - 1] += tokenOrGroup;\n }\n else if (tokenOrGroup !== \"\") {\n joinedTokens.push(tokenOrGroup);\n }\n }\n else if (tokenOrGroup[0].length > 0) {\n joinedTokens.push(tokenOrGroup);\n }\n });\n return joinedTokens;\n}\n// splits \" \\t foo bar \\n\" into [\" \\t \",\"foo bar\",\" \\n\"]\n// \"foo bar\" -> [\"\",\"foo bar\",\"\"]\nfunction splitSurroundingWhitespace(content) {\n const trimmed = content.trim();\n const before = content.slice(0, content.indexOf(trimmed));\n const after = content.slice(content.indexOf(trimmed) + trimmed.length);\n return [before, trimmed, after];\n}\n","/**\n * @license React\n * react-jsx-runtime.development.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\n\"production\" !== process.env.NODE_ENV &&\n (function () {\n function getComponentNameFromType(type) {\n if (null == type) return null;\n if (\"function\" === typeof type)\n return type.$$typeof === REACT_CLIENT_REFERENCE$2\n ? null\n : type.displayName || type.name || null;\n if (\"string\" === typeof type) return type;\n switch (type) {\n case REACT_FRAGMENT_TYPE:\n return \"Fragment\";\n case REACT_PORTAL_TYPE:\n return \"Portal\";\n case REACT_PROFILER_TYPE:\n return \"Profiler\";\n case REACT_STRICT_MODE_TYPE:\n return \"StrictMode\";\n case REACT_SUSPENSE_TYPE:\n return \"Suspense\";\n case REACT_SUSPENSE_LIST_TYPE:\n return \"SuspenseList\";\n }\n if (\"object\" === typeof type)\n switch (\n (\"number\" === typeof type.tag &&\n console.error(\n \"Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue.\"\n ),\n type.$$typeof)\n ) {\n case REACT_CONTEXT_TYPE:\n return (type.displayName || \"Context\") + \".Provider\";\n case REACT_CONSUMER_TYPE:\n return (type._context.displayName || \"Context\") + \".Consumer\";\n case REACT_FORWARD_REF_TYPE:\n var innerType = type.render;\n type = type.displayName;\n type ||\n ((type = innerType.displayName || innerType.name || \"\"),\n (type = \"\" !== type ? \"ForwardRef(\" + type + \")\" : \"ForwardRef\"));\n return type;\n case REACT_MEMO_TYPE:\n return (\n (innerType = type.displayName || null),\n null !== innerType\n ? innerType\n : getComponentNameFromType(type.type) || \"Memo\"\n );\n case REACT_LAZY_TYPE:\n innerType = type._payload;\n type = type._init;\n try {\n return getComponentNameFromType(type(innerType));\n } catch (x) {}\n }\n return null;\n }\n function testStringCoercion(value) {\n return \"\" + value;\n }\n function checkKeyStringCoercion(value) {\n try {\n testStringCoercion(value);\n var JSCompiler_inline_result = !1;\n } catch (e) {\n JSCompiler_inline_result = !0;\n }\n if (JSCompiler_inline_result) {\n JSCompiler_inline_result = console;\n var JSCompiler_temp_const = JSCompiler_inline_result.error;\n var JSCompiler_inline_result$jscomp$0 =\n (\"function\" === typeof Symbol &&\n Symbol.toStringTag &&\n value[Symbol.toStringTag]) ||\n value.constructor.name ||\n \"Object\";\n JSCompiler_temp_const.call(\n JSCompiler_inline_result,\n \"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.\",\n JSCompiler_inline_result$jscomp$0\n );\n return testStringCoercion(value);\n }\n }\n function disabledLog() {}\n function disableLogs() {\n if (0 === disabledDepth) {\n prevLog = console.log;\n prevInfo = console.info;\n prevWarn = console.warn;\n prevError = console.error;\n prevGroup = console.group;\n prevGroupCollapsed = console.groupCollapsed;\n prevGroupEnd = console.groupEnd;\n var props = {\n configurable: !0,\n enumerable: !0,\n value: disabledLog,\n writable: !0\n };\n Object.defineProperties(console, {\n info: props,\n log: props,\n warn: props,\n error: props,\n group: props,\n groupCollapsed: props,\n groupEnd: props\n });\n }\n disabledDepth++;\n }\n function reenableLogs() {\n disabledDepth--;\n if (0 === disabledDepth) {\n var props = { configurable: !0, enumerable: !0, writable: !0 };\n Object.defineProperties(console, {\n log: assign({}, props, { value: prevLog }),\n info: assign({}, props, { value: prevInfo }),\n warn: assign({}, props, { value: prevWarn }),\n error: assign({}, props, { value: prevError }),\n group: assign({}, props, { value: prevGroup }),\n groupCollapsed: assign({}, props, { value: prevGroupCollapsed }),\n groupEnd: assign({}, props, { value: prevGroupEnd })\n });\n }\n 0 > disabledDepth &&\n console.error(\n \"disabledDepth fell below zero. This is a bug in React. Please file an issue.\"\n );\n }\n function describeBuiltInComponentFrame(name) {\n if (void 0 === prefix)\n try {\n throw Error();\n } catch (x) {\n var match = x.stack.trim().match(/\\n( *(at )?)/);\n prefix = (match && match[1]) || \"\";\n suffix =\n -1 < x.stack.indexOf(\"\\n at\")\n ? \" (<anonymous>)\"\n : -1 < x.stack.indexOf(\"@\")\n ? \"@unknown:0:0\"\n : \"\";\n }\n return \"\\n\" + prefix + name + suffix;\n }\n function describeNativeComponentFrame(fn, construct) {\n if (!fn || reentry) return \"\";\n var frame = componentFrameCache.get(fn);\n if (void 0 !== frame) return frame;\n reentry = !0;\n frame = Error.prepareStackTrace;\n Error.prepareStackTrace = void 0;\n var previousDispatcher = null;\n previousDispatcher = ReactSharedInternals.H;\n ReactSharedInternals.H = null;\n disableLogs();\n try {\n var RunInRootFrame = {\n DetermineComponentFrameRoot: function () {\n try {\n if (construct) {\n var Fake = function () {\n throw Error();\n };\n Object.defineProperty(Fake.prototype, \"props\", {\n set: function () {\n throw Error();\n }\n });\n if (\"object\" === typeof Reflect && Reflect.construct) {\n try {\n Reflect.construct(Fake, []);\n } catch (x) {\n var control = x;\n }\n Reflect.construct(fn, [], Fake);\n } else {\n try {\n Fake.call();\n } catch (x$0) {\n control = x$0;\n }\n fn.call(Fake.prototype);\n }\n } else {\n try {\n throw Error();\n } catch (x$1) {\n control = x$1;\n }\n (Fake = fn()) &&\n \"function\" === typeof Fake.catch &&\n Fake.catch(function () {});\n }\n } catch (sample) {\n if (sample && control && \"string\" === typeof sample.stack)\n return [sample.stack, control.stack];\n }\n return [null, null];\n }\n };\n RunInRootFrame.DetermineComponentFrameRoot.displayName =\n \"DetermineComponentFrameRoot\";\n var namePropDescriptor = Object.getOwnPropertyDescriptor(\n RunInRootFrame.DetermineComponentFrameRoot,\n \"name\"\n );\n namePropDescriptor &&\n namePropDescriptor.configurable &&\n Object.defineProperty(\n RunInRootFrame.DetermineComponentFrameRoot,\n \"name\",\n { value: \"DetermineComponentFrameRoot\" }\n );\n var _RunInRootFrame$Deter =\n RunInRootFrame.DetermineComponentFrameRoot(),\n sampleStack = _RunInRootFrame$Deter[0],\n controlStack = _RunInRootFrame$Deter[1];\n if (sampleStack && controlStack) {\n var sampleLines = sampleStack.split(\"\\n\"),\n controlLines = controlStack.split(\"\\n\");\n for (\n _RunInRootFrame$Deter = namePropDescriptor = 0;\n namePropDescriptor < sampleLines.length &&\n !sampleLines[namePropDescriptor].includes(\n \"DetermineComponentFrameRoot\"\n );\n\n )\n namePropDescriptor++;\n for (\n ;\n _RunInRootFrame$Deter < controlLines.length &&\n !controlLines[_RunInRootFrame$Deter].includes(\n \"DetermineComponentFrameRoot\"\n );\n\n )\n _RunInRootFrame$Deter++;\n if (\n namePropDescriptor === sampleLines.length ||\n _RunInRootFrame$Deter === controlLines.length\n )\n for (\n namePropDescriptor = sampleLines.length - 1,\n _RunInRootFrame$Deter = controlLines.length - 1;\n 1 <= namePropDescriptor &&\n 0 <= _RunInRootFrame$Deter &&\n sampleLines[namePropDescriptor] !==\n controlLines[_RunInRootFrame$Deter];\n\n )\n _RunInRootFrame$Deter--;\n for (\n ;\n 1 <= namePropDescriptor && 0 <= _RunInRootFrame$Deter;\n namePropDescriptor--, _RunInRootFrame$Deter--\n )\n if (\n sampleLines[namePropDescriptor] !==\n controlLines[_RunInRootFrame$Deter]\n ) {\n if (1 !== namePropDescriptor || 1 !== _RunInRootFrame$Deter) {\n do\n if (\n (namePropDescriptor--,\n _RunInRootFrame$Deter--,\n 0 > _RunInRootFrame$Deter ||\n sampleLines[namePropDescriptor] !==\n controlLines[_RunInRootFrame$Deter])\n ) {\n var _frame =\n \"\\n\" +\n sampleLines[namePropDescriptor].replace(\n \" at new \",\n \" at \"\n );\n fn.displayName &&\n _frame.includes(\"<anonymous>\") &&\n (_frame = _frame.replace(\"<anonymous>\", fn.displayName));\n \"function\" === typeof fn &&\n componentFrameCache.set(fn, _frame);\n return _frame;\n }\n while (1 <= namePropDescriptor && 0 <= _RunInRootFrame$Deter);\n }\n break;\n }\n }\n } finally {\n (reentry = !1),\n (ReactSharedInternals.H = previousDispatcher),\n reenableLogs(),\n (Error.prepareStackTrace = frame);\n }\n sampleLines = (sampleLines = fn ? fn.displayName || fn.name : \"\")\n ? describeBuiltInComponentFrame(sampleLines)\n : \"\";\n \"function\" === typeof fn && componentFrameCache.set(fn, sampleLines);\n return sampleLines;\n }\n function describeUnknownElementTypeFrameInDEV(type) {\n if (null == type) return \"\";\n if (\"function\" === typeof type) {\n var prototype = type.prototype;\n return describeNativeComponentFrame(\n type,\n !(!prototype || !prototype.isReactComponent)\n );\n }\n if (\"string\" === typeof type) return describeBuiltInComponentFrame(type);\n switch (type) {\n case REACT_SUSPENSE_TYPE:\n return describeBuiltInComponentFrame(\"Suspense\");\n case REACT_SUSPENSE_LIST_TYPE:\n return describeBuiltInComponentFrame(\"SuspenseList\");\n }\n if (\"object\" === typeof type)\n switch (type.$$typeof) {\n case REACT_FORWARD_REF_TYPE:\n return (type = describeNativeComponentFrame(type.render, !1)), type;\n case REACT_MEMO_TYPE:\n return describeUnknownElementTypeFrameInDEV(type.type);\n case REACT_LAZY_TYPE:\n prototype = type._payload;\n type = type._init;\n try {\n return describeUnknownElementTypeFrameInDEV(type(prototype));\n } catch (x) {}\n }\n return \"\";\n }\n function getOwner() {\n var dispatcher = ReactSharedInternals.A;\n return null === dispatcher ? null : dispatcher.getOwner();\n }\n function hasValidKey(config) {\n if (hasOwnProperty.call(config, \"key\")) {\n var getter = Object.getOwnPropertyDescriptor(config, \"key\").get;\n if (getter && getter.isReactWarning) return !1;\n }\n return void 0 !== config.key;\n }\n function defineKeyPropWarningGetter(props, displayName) {\n function warnAboutAccessingKey() {\n specialPropKeyWarningShown ||\n ((specialPropKeyWarningShown = !0),\n console.error(\n \"%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 displayName\n ));\n }\n warnAboutAccessingKey.isReactWarning = !0;\n Object.defineProperty(props, \"key\", {\n get: warnAboutAccessingKey,\n configurable: !0\n });\n }\n function elementRefGetterWithDeprecationWarning() {\n var componentName = getComponentNameFromType(this.type);\n didWarnAboutElementRef[componentName] ||\n ((didWarnAboutElementRef[componentName] = !0),\n console.error(\n \"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.\"\n ));\n componentName = this.props.ref;\n return void 0 !== componentName ? componentName : null;\n }\n function ReactElement(type, key, self, source, owner, props) {\n self = props.ref;\n type = {\n $$typeof: REACT_ELEMENT_TYPE,\n type: type,\n key: key,\n props: props,\n _owner: owner\n };\n null !== (void 0 !== self ? self : null)\n ? Object.defineProperty(type, \"ref\", {\n enumerable: !1,\n get: elementRefGetterWithDeprecationWarning\n })\n : Object.defineProperty(type, \"ref\", { enumerable: !1, value: null });\n type._store = {};\n Object.defineProperty(type._store, \"validated\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: 0\n });\n Object.defineProperty(type, \"_debugInfo\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: null\n });\n Object.freeze && (Object.freeze(type.props), Object.freeze(type));\n return type;\n }\n function jsxDEVImpl(\n type,\n config,\n maybeKey,\n isStaticChildren,\n source,\n self\n ) {\n if (\n \"string\" === typeof type ||\n \"function\" === typeof type ||\n type === REACT_FRAGMENT_TYPE ||\n type === REACT_PROFILER_TYPE ||\n type === REACT_STRICT_MODE_TYPE ||\n type === REACT_SUSPENSE_TYPE ||\n type === REACT_SUSPENSE_LIST_TYPE ||\n type === REACT_OFFSCREEN_TYPE ||\n (\"object\" === typeof type &&\n null !== type &&\n (type.$$typeof === REACT_LAZY_TYPE ||\n type.$$typeof === REACT_MEMO_TYPE ||\n type.$$typeof === REACT_CONTEXT_TYPE ||\n type.$$typeof === REACT_CONSUMER_TYPE ||\n type.$$typeof === REACT_FORWARD_REF_TYPE ||\n type.$$typeof === REACT_CLIENT_REFERENCE$1 ||\n void 0 !== type.getModuleId))\n ) {\n var children = config.children;\n if (void 0 !== children)\n if (isStaticChildren)\n if (isArrayImpl(children)) {\n for (\n isStaticChildren = 0;\n isStaticChildren < children.length;\n isStaticChildren++\n )\n validateChildKeys(children[isStaticChildren], type);\n Object.freeze && Object.freeze(children);\n } else\n console.error(\n \"React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.\"\n );\n else validateChildKeys(children, type);\n } else {\n children = \"\";\n if (\n void 0 === type ||\n (\"object\" === typeof type &&\n null !== type &&\n 0 === Object.keys(type).length)\n )\n children +=\n \" You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports.\";\n null === type\n ? (isStaticChildren = \"null\")\n : isArrayImpl(type)\n ? (isStaticChildren = \"array\")\n : void 0 !== type && type.$$typeof === REACT_ELEMENT_TYPE\n ? ((isStaticChildren =\n \"<\" +\n (getComponentNameFromType(type.type) || \"Unknown\") +\n \" />\"),\n (children =\n \" Did you accidentally export a JSX literal instead of a component?\"))\n : (isStaticChildren = typeof type);\n console.error(\n \"React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s\",\n isStaticChildren,\n children\n );\n }\n if (hasOwnProperty.call(config, \"key\")) {\n children = getComponentNameFromType(type);\n var keys = Object.keys(config).filter(function (k) {\n return \"key\" !== k;\n });\n isStaticChildren =\n 0 < keys.length\n ? \"{key: someKey, \" + keys.join(\": ..., \") + \": ...}\"\n : \"{key: someKey}\";\n didWarnAboutKeySpread[children + isStaticChildren] ||\n ((keys =\n 0 < keys.length ? \"{\" + keys.join(\": ..., \") + \": ...}\" : \"{}\"),\n console.error(\n '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} />',\n isStaticChildren,\n children,\n keys,\n children\n ),\n (didWarnAboutKeySpread[children + isStaticChildren] = !0));\n }\n children = null;\n void 0 !== maybeKey &&\n (checkKeyStringCoercion(maybeKey), (children = \"\" + maybeKey));\n hasValidKey(config) &&\n (checkKeyStringCoercion(config.key), (children = \"\" + config.key));\n if (\"key\" in config) {\n maybeKey = {};\n for (var propName in config)\n \"key\" !== propName && (maybeKey[propName] = config[propName]);\n } else maybeKey = config;\n children &&\n defineKeyPropWarningGetter(\n maybeKey,\n \"function\" === typeof type\n ? type.displayName || type.name || \"Unknown\"\n : type\n );\n return ReactElement(type, children, self, source, getOwner(), maybeKey);\n }\n function validateChildKeys(node, parentType) {\n if (\n \"object\" === typeof node &&\n node &&\n node.$$typeof !== REACT_CLIENT_REFERENCE\n )\n if (isArrayImpl(node))\n for (var i = 0; i < node.length; i++) {\n var child = node[i];\n isValidElement(child) && validateExplicitKey(child, parentType);\n }\n else if (isValidElement(node))\n node._store && (node._store.validated = 1);\n else if (\n (null === node || \"object\" !== typeof node\n ? (i = null)\n : ((i =\n (MAYBE_ITERATOR_SYMBOL && node[MAYBE_ITERATOR_SYMBOL]) ||\n node[\"@@iterator\"]),\n (i = \"function\" === typeof i ? i : null)),\n \"function\" === typeof i &&\n i !== node.entries &&\n ((i = i.call(node)), i !== node))\n )\n for (; !(node = i.next()).done; )\n isValidElement(node.value) &&\n validateExplicitKey(node.value, parentType);\n }\n function isValidElement(object) {\n return (\n \"object\" === typeof object &&\n null !== object &&\n object.$$typeof === REACT_ELEMENT_TYPE\n );\n }\n function validateExplicitKey(element, parentType) {\n if (\n element._store &&\n !element._store.validated &&\n null == element.key &&\n ((element._store.validated = 1),\n (parentType = getCurrentComponentErrorInfo(parentType)),\n !ownerHasKeyUseWarning[parentType])\n ) {\n ownerHasKeyUseWarning[parentType] = !0;\n var childOwner = \"\";\n element &&\n null != element._owner &&\n element._owner !== getOwner() &&\n ((childOwner = null),\n \"number\" === typeof element._owner.tag\n ? (childOwner = getComponentNameFromType(element._owner.type))\n : \"string\" === typeof element._owner.name &&\n (childOwner = element._owner.name),\n (childOwner = \" It was passed a child from \" + childOwner + \".\"));\n var prevGetCurrentStack = ReactSharedInternals.getCurrentStack;\n ReactSharedInternals.getCurrentStack = function () {\n var stack = describeUnknownElementTypeFrameInDEV(element.type);\n prevGetCurrentStack && (stack += prevGetCurrentStack() || \"\");\n return stack;\n };\n console.error(\n 'Each child in a list should have a unique \"key\" prop.%s%s See https://react.dev/link/warning-keys for more information.',\n parentType,\n childOwner\n );\n ReactSharedInternals.getCurrentStack = prevGetCurrentStack;\n }\n }\n function getCurrentComponentErrorInfo(parentType) {\n var info = \"\",\n owner = getOwner();\n owner &&\n (owner = getComponentNameFromType(owner.type)) &&\n (info = \"\\n\\nCheck the render method of `\" + owner + \"`.\");\n info ||\n ((parentType = getComponentNameFromType(parentType)) &&\n (info =\n \"\\n\\nCheck the top-level render call using <\" + parentType + \">.\"));\n return info;\n }\n var React = require(\"react\"),\n REACT_ELEMENT_TYPE = Symbol.for(\"react.transitional.element\"),\n REACT_PORTAL_TYPE = Symbol.for(\"react.portal\"),\n REACT_FRAGMENT_TYPE = Symbol.for(\"react.fragment\"),\n REACT_STRICT_MODE_TYPE = Symbol.for(\"react.strict_mode\"),\n REACT_PROFILER_TYPE = Symbol.for(\"react.profiler\");\n Symbol.for(\"react.provider\");\n var REACT_CONSUMER_TYPE = Symbol.for(\"react.consumer\"),\n REACT_CONTEXT_TYPE = Symbol.for(\"react.context\"),\n REACT_FORWARD_REF_TYPE = Symbol.for(\"react.forward_ref\"),\n REACT_SUSPENSE_TYPE = Symbol.for(\"react.suspense\"),\n REACT_SUSPENSE_LIST_TYPE = Symbol.for(\"react.suspense_list\"),\n REACT_MEMO_TYPE = Symbol.for(\"react.memo\"),\n REACT_LAZY_TYPE = Symbol.for(\"react.lazy\"),\n REACT_OFFSCREEN_TYPE = Symbol.for(\"react.offscreen\"),\n MAYBE_ITERATOR_SYMBOL = Symbol.iterator,\n REACT_CLIENT_REFERENCE$2 = Symbol.for(\"react.client.reference\"),\n ReactSharedInternals =\n React.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,\n hasOwnProperty = Object.prototype.hasOwnProperty,\n assign = Object.assign,\n REACT_CLIENT_REFERENCE$1 = Symbol.for(\"react.client.reference\"),\n isArrayImpl = Array.isArray,\n disabledDepth = 0,\n prevLog,\n prevInfo,\n prevWarn,\n prevError,\n prevGroup,\n prevGroupCollapsed,\n prevGroupEnd;\n disabledLog.__reactDisabledLog = !0;\n var prefix,\n suffix,\n reentry = !1;\n var componentFrameCache = new (\n \"function\" === typeof WeakMap ? WeakMap : Map\n )();\n var REACT_CLIENT_REFERENCE = Symbol.for(\"react.client.reference\"),\n specialPropKeyWarningShown;\n var didWarnAboutElementRef = {};\n var didWarnAboutKeySpread = {},\n ownerHasKeyUseWarning = {};\n exports.Fragment = REACT_FRAGMENT_TYPE;\n exports.jsx = function (type, config, maybeKey, source, self) {\n return jsxDEVImpl(type, config, maybeKey, !1, source, self);\n };\n exports.jsxs = function (type, config, maybeKey, source, self) {\n return jsxDEVImpl(type, config, maybeKey, !0, source, self);\n };\n })();\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-jsx-runtime.production.js');\n} else {\n module.exports = require('./cjs/react-jsx-runtime.development.js');\n}\n","/**\n * @license React\n * react-jsx-runtime.production.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\nvar REACT_ELEMENT_TYPE = Symbol.for(\"react.transitional.element\"),\n REACT_FRAGMENT_TYPE = Symbol.for(\"react.fragment\");\nfunction jsxProd(type, config, maybeKey) {\n var key = null;\n void 0 !== maybeKey && (key = \"\" + maybeKey);\n void 0 !== config.key && (key = \"\" + config.key);\n if (\"key\" in config) {\n maybeKey = {};\n for (var propName in config)\n \"key\" !== propName && (maybeKey[propName] = config[propName]);\n } else maybeKey = config;\n config = maybeKey.ref;\n return {\n $$typeof: REACT_ELEMENT_TYPE,\n type: type,\n key: key,\n ref: void 0 !== config ? config : null,\n props: maybeKey\n };\n}\nexports.Fragment = REACT_FRAGMENT_TYPE;\nexports.jsx = jsxProd;\nexports.jsxs = jsxProd;\n","// Based on https://github.com/andrewbranch/merge-props\n// MIT License Andrew Branch\nfunction pushProp(target, key, value) {\n if (key === \"children\") {\n target.children = value || target.children;\n }\n else if (key === \"_ref\") {\n target._ref = value || target._ref;\n }\n else if (key === \"data\") {\n target.data = target.data ? { ...target.data, ...value } : value;\n }\n else if (key === \"className\") {\n target.className = [target.className, value].join(\" \").trim();\n }\n else if (key === \"style\") {\n target.style = { ...target.style, ...value };\n }\n else if (typeof value === \"function\") {\n const oldFn = target[key];\n target[key] = oldFn\n ? (...args) => {\n oldFn(...args);\n value(...args);\n }\n : value;\n }\n else if (\n // skip merging undefined values\n value === undefined ||\n // skip if both value are the same primitive value\n (typeof value !== \"object\" && value === target[key])) {\n return;\n }\n else if (!(key in target)) {\n target[key] = value;\n }\n else {\n throw new Error(`Didn’t know how to merge prop '${key}'. ` +\n `Only 'className', 'style', and event handlers are supported`);\n }\n}\n/**\n * Merges sets of props together:\n * - duplicate `className` props get concatenated\n * - duplicate `style` props get shallow merged (later props have precedence for conflicting rules)\n * - duplicate functions (to be used for event handlers) get called in order from left to right\n * @param props Sets of props to merge together. Later props have precedence.\n */\nexport function mergeProps(...props) {\n if (props.length === 1) {\n return props[0];\n }\n return props.reduce((merged, ps) => {\n for (const key in ps) {\n pushProp(merged, key, ps[key]);\n }\n return merged;\n }, {});\n}\n","import { jsx as _jsx } from \"react/jsx-runtime\";\nimport { mergeProps } from \"./merge-props.js\";\nexport const InnerPre = ({ merge, ...rest }) => {\n const { _stack, ...result } = mergeProps(merge, rest);\n const [Next, ...stack] = _stack;\n if (Next) {\n return _jsx(Next, { _stack: stack, ...result });\n }\n else {\n const { _ref, data, children, ...props } = result;\n return (_jsx(\"pre\", { ...props, ref: _ref, \"data-ch\": true, children: _jsx(\"div\", { style: { minWidth: \"fit-content\" }, children: children }) }));\n }\n};\nexport function getPreRef(props) {\n const p = props;\n if (!(p === null || p === void 0 ? void 0 : p._ref)) {\n throw new Error(\"`getPreRef` can only be used inside `PreWithRef`\");\n }\n return p === null || p === void 0 ? void 0 : p._ref;\n}\nexport const InnerLine = ({ merge, ...rest }) => {\n const { _stack, ...result } = mergeProps(merge, rest);\n const [next, ...stack] = _stack;\n if (next) {\n const { Component, annotation } = next;\n return _jsx(Component, { _stack: stack, ...result, annotation: annotation });\n }\n else {\n const { lineNumber, totalLines, indentation, data, annotation, ...props } = result;\n return _jsx(\"div\", { ...props });\n }\n};\nexport const InnerToken = ({ merge, ...rest }) => {\n const { _stack, ...result } = mergeProps(merge, rest);\n const [next, ...stack] = _stack;\n if (next) {\n const { Component, annotation } = next;\n return _jsx(Component, { _stack: stack, ...result, annotation: annotation });\n }\n else {\n const { value, data, ...props } = result;\n return _jsx(\"span\", { ...props, children: value });\n }\n};\n","\"use client\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { useRef } from \"react\";\nimport { InnerPre } from \"./inner.js\";\nexport const AddRefIfNedded = (props) => {\n const innerRef = useRef(null);\n const ref = props._ref || innerRef;\n // @ts-ignore\n return _jsx(InnerPre, { merge: props, _ref: ref });\n};\n","export function toLineContent(tokens, annotations) {\n let content = tokens;\n for (let i = annotations.length - 1; i >= 0; i--) {\n const annotation = annotations[i];\n content = applyInlineAnnotation(content, annotation);\n }\n return content;\n}\nfunction applyInlineAnnotation(lineContent, annotation) {\n const { fromColumn, toColumn } = annotation;\n const range = [fromColumn, toColumn];\n let content = splitContent(lineContent, range[0]);\n content = splitContent(content, range[1] + 1);\n let before = [];\n let inside = [];\n let after = [];\n content.forEach((item) => {\n if (item.range[1] < range[0]) {\n before.push(item);\n }\n else if (item.range[0] > range[1]) {\n after.push(item);\n }\n else {\n inside.push(item);\n }\n });\n return [\n ...before,\n {\n annotation,\n content: inside,\n range: [inside[0].range[0], inside[inside.length - 1].range[1]],\n },\n ...after,\n ];\n}\n// split any group or content that spans across the given column number\nfunction splitContent(lineContent, n) {\n const index = lineContent.findIndex((token) => token.range[0] < n && n <= token.range[1]);\n if (index === -1) {\n return lineContent;\n }\n const item = lineContent[index];\n if (isGroup(item)) {\n const content = splitContent(item.content, n);\n let before = [];\n let after = [];\n for (const token of content) {\n if (token.range[1] < n) {\n before.push(token);\n }\n else {\n after.push(token);\n }\n }\n return [\n ...lineContent.slice(0, index),\n {\n ...item,\n content: before,\n range: [item.range[0], n - 1],\n },\n {\n ...item,\n content: after,\n range: [n, item.range[1]],\n },\n ...lineContent.slice(index + 1),\n ];\n }\n // split token\n return [\n ...lineContent.slice(0, index),\n {\n ...item,\n value: item.value.slice(0, n - item.range[0]),\n range: [item.range[0], n - 1],\n },\n {\n ...item,\n value: item.value.slice(n - item.range[0]),\n range: [n, item.range[1]],\n },\n ...lineContent.slice(index + 1),\n ];\n}\nexport function isGroup(token) {\n return token.content !== undefined;\n}\n","import { jsx as _jsx } from \"react/jsx-runtime\";\nimport { InnerToken } from \"./inner.js\";\nimport { isGroup } from \"./tokens.js\";\nexport function renderLineContent({ content, handlers, annotationStack, }) {\n return content.map((item, i) => isGroup(item) ? (_jsx(InlinedTokens, { annotationStack: annotationStack, handlers: handlers, group: item }, i)) : item.style ? (_jsx(FinalToken, { annotationStack: annotationStack, handlers: handlers, token: item }, i)) : (\n // whitespace\n item.value));\n}\nfunction FinalToken({ handlers, token, annotationStack, }) {\n const stack = buildTokenStack(handlers, annotationStack);\n return (_jsx(InnerToken, { merge: { _stack: stack, style: token.style, value: token.value } }));\n}\nfunction InlinedTokens({ group, handlers, annotationStack, }) {\n var _a;\n const { annotation, content } = group;\n const { name } = annotation;\n const children = renderLineContent({\n content,\n handlers,\n annotationStack: [...annotationStack, annotation],\n });\n const Component = (_a = handlers.find((c) => c.name === name)) === null || _a === void 0 ? void 0 : _a.Inline;\n return Component ? (_jsx(Component, { annotation: annotation, children: children })) : (children);\n}\nfunction buildTokenStack(handlers, annotationStack) {\n const stack = [];\n handlers.forEach(({ name, Token, AnnotatedToken }) => {\n const annotations = annotationStack.filter((a) => a.name === name);\n if (AnnotatedToken) {\n annotations.forEach((annotation) => stack.push({ Component: AnnotatedToken, annotation }));\n }\n if (Token) {\n if (!annotations.length) {\n stack.push({ Component: Token });\n }\n annotations.forEach((annotation) => stack.push({ Component: Token, annotation }));\n }\n });\n return stack;\n}\n","const TAB_TO_SPACES = \" \";\nexport function toLines(tokens) {\n const lines = [[]];\n const tokenStack = tokens.slice();\n let col = 1;\n while (tokenStack.length) {\n const token = tokenStack.shift();\n if (typeof token === \"string\") {\n const [value, ...tail] = token.split(\"\\n\");\n if (value) {\n let start = col;\n col += value.length;\n lines[lines.length - 1].push({\n value,\n range: [start, col],\n });\n }\n if (tail.length) {\n lines[lines.length - 1].push({\n value: \"\\n\",\n range: [col, col + 1],\n });\n lines.push([]);\n col = 1;\n tokenStack.unshift(tail.join(\"\\n\"));\n }\n }\n else {\n const [value, color, rest = {}] = token;\n let start = col;\n col += value.length;\n lines[lines.length - 1].push({\n value,\n style: { color, ...rest },\n range: [start, col],\n });\n }\n }\n const totalLines = lines.length;\n return lines.map((tokens, i) => {\n var _a, _b, _c;\n return ({\n tokens,\n range: [i + 1, i + 1],\n lineNumber: i + 1,\n indentation: ((_c = (_b = (_a = tokens[0]) === null || _a === void 0 ? void 0 : _a.value) === null || _b === void 0 ? void 0 : _b.replace(/\\t/g, TAB_TO_SPACES).match(/^\\s*/)) === null || _c === void 0 ? void 0 : _c[0].length) || 0,\n totalLines,\n });\n });\n}\nexport function toLineGroups(lines, annotations) {\n let groups = lines;\n for (let i = annotations.length - 1; i >= 0; i--) {\n const annotation = annotations[i];\n groups = applyBlockAnnotation(groups, annotation);\n }\n return groups;\n}\nfunction applyBlockAnnotation(lines, annotation) {\n const { fromLineNumber, toLineNumber } = annotation;\n const range = [fromLineNumber, toLineNumber];\n let groups = splitGroups(lines, range[0]);\n groups = splitGroups(groups, range[1] + 1);\n let before = [];\n let inside = [];\n let after = [];\n groups.forEach((group) => {\n if (group.range[1] < range[0]) {\n before.push(group);\n }\n else if (group.range[0] > range[1]) {\n after.push(group);\n }\n else {\n inside.push(group);\n }\n });\n return [\n ...before,\n {\n annotation,\n lines: inside,\n range: [inside[0].range[0], inside[inside.length - 1].range[1]],\n },\n ...after,\n ];\n}\nfunction splitGroups(groups, lineNumber) {\n const index = groups.findIndex((group) => {\n return (isGroup(group) &&\n group.range[0] < lineNumber &&\n lineNumber <= group.range[1]);\n });\n if (index === -1) {\n return groups;\n }\n const group = groups[index];\n const lines = splitGroups(group.lines, lineNumber);\n let before = [];\n let after = [];\n lines.forEach((lineOrGroup) => {\n if (lineOrGroup.range[1] < lineNumber) {\n before.push(lineOrGroup);\n }\n else {\n after.push(lineOrGroup);\n }\n });\n return [\n ...groups.slice(0, index),\n { ...group, lines: before, range: [group.range[0], lineNumber - 1] },\n { ...group, lines: after, range: [lineNumber, group.range[1]] },\n ...groups.slice(index + 1),\n ];\n}\nexport function isGroup(item) {\n return item.annotation !== undefined;\n}\n","import { jsx as _jsx } from \"react/jsx-runtime\";\nimport { renderLineContent } from \"./inline.js\";\nimport { isGroup } from \"./lines.js\";\nimport { toLineContent } from \"./tokens.js\";\nimport { InnerLine } from \"./inner.js\";\nexport function renderLines({ linesOrGroups, handlers, inlineAnnotations, annotationStack = [], }) {\n return linesOrGroups.map((group) => isGroup(group) ? (_jsx(LineBlock, { group: group, handlers: handlers, inlineAnnotations: inlineAnnotations, annotationStack: annotationStack }, group.range[0])) : (_jsx(Line, { line: group, handlers: handlers, inlineAnnotations: inlineAnnotations, annotationStack: annotationStack }, group.lineNumber)));\n}\nfunction Line({ line, handlers, inlineAnnotations, annotationStack = [], }) {\n const { lineNumber, totalLines, indentation } = line;\n const lineAnnotations = inlineAnnotations.filter((annotation) => annotation.lineNumber === lineNumber);\n const lineContent = toLineContent(line.tokens, lineAnnotations);\n const stack = buildLineStack(handlers, annotationStack);\n let children = renderLineContent({\n content: lineContent,\n handlers,\n annotationStack,\n });\n const merge = { lineNumber, indentation, totalLines, _stack: stack };\n return (_jsx(InnerLine, { merge: merge, children: children }, lineNumber));\n}\n// A group of lines targeted by a block annotation\nfunction LineBlock({ group, handlers, inlineAnnotations, annotationStack, }) {\n var _a;\n const { annotation, lines } = group;\n const { name } = annotation;\n const Component = (_a = handlers.find((c) => c.name === name)) === null || _a === void 0 ? void 0 : _a.Block;\n const children = renderLines({\n linesOrGroups: lines,\n handlers,\n inlineAnnotations,\n annotationStack: [...annotationStack, annotation],\n });\n return Component ? (_jsx(Component, { annotation: annotation, children: children })) : (children);\n}\nfunction buildLineStack(handlers, annotationStack) {\n const stack = [];\n handlers.forEach(({ name, Line, AnnotatedLine }) => {\n const annotations = annotationStack.filter((a) => a.name === name);\n if (AnnotatedLine) {\n annotations.forEach((annotation) => {\n stack.push({ Component: AnnotatedLine, annotation });\n });\n }\n if (Line) {\n if (!annotations.length) {\n stack.push({ Component: Line });\n }\n annotations.forEach((annotation) => {\n stack.push({ Component: Line, annotation });\n });\n }\n });\n return stack;\n}\n","import { jsx as _jsx } from \"react/jsx-runtime\";\nimport { forwardRef } from \"react\";\nimport { isBlockAnnotation, isInlineAnnotation, } from \"./types.js\";\nimport { AddRefIfNedded } from \"./pre-ref.js\";\nimport { renderLines } from \"./block.js\";\nimport { toLineGroups, toLines } from \"./lines.js\";\nimport { InnerPre } from \"./inner.js\";\nexport const Inline = ({ code, ...rest }) => {\n let { tokens } = code;\n if (!tokens) {\n throw new Error(\"Missing tokens in inline code. Use the `highlight` function to generate the tokens.\");\n }\n return (_jsx(\"code\", { ...rest, children: tokens.map((t, i) => {\n if (typeof t === \"string\") {\n return t;\n }\n const [value, color, rest = {}] = t;\n return (_jsx(\"span\", { style: { color, ...rest }, children: value }, i));\n }) }));\n};\nexport const Pre = forwardRef(({ code, handlers = [], ...rest }, ref) => {\n let { tokens, themeName, lang, annotations } = code;\n if (!tokens) {\n throw new Error(\"Missing tokens in code block. Use the `highlight` function to generate the tokens.\");\n }\n handlers\n .filter((c) => c.transform)\n .forEach((c) => {\n annotations = annotations.flatMap((a) => c.name != a.name ? a : c.transform(a) || []);\n });\n const annotationNames = new Set(annotations.map((a) => a.name));\n const hs = handlers.filter((h) => !h.onlyIfAnnotated || annotationNames.has(h.name));\n const stack = buildPreStack(hs);\n const merge = { _stack: stack, _ref: ref };\n return (_jsx(InnerPre, { merge: merge, \"data-theme\": themeName, \"data-lang\": lang, ...rest, children: _jsx(PreContent, { tokens: tokens, handlers: hs, annotations: annotations }) }));\n});\nfunction PreContent({ tokens, handlers, annotations, }) {\n const lines = toLines(tokens);\n const blockAnnotations = annotations.filter(isBlockAnnotation);\n const inlineAnnotations = annotations.filter(isInlineAnnotation);\n const groups = toLineGroups(lines, blockAnnotations);\n return renderLines({\n linesOrGroups: groups,\n handlers,\n inlineAnnotations,\n });\n}\nfunction buildPreStack(handlers) {\n const noRefStack = handlers.map(({ Pre }) => Pre).filter(Boolean);\n const refStack = handlers.map(({ PreWithRef }) => PreWithRef).filter(Boolean);\n if (refStack.length > 0) {\n refStack.unshift(AddRefIfNedded);\n }\n return [...noRefStack, ...refStack];\n}\n","// from: https://marketplace.visualstudio.com/items?itemName=smockle.xcode-default-theme\n\nimport {Theme} from \"@code-hike/lighter\";\n\nexport const theme: Theme = {\n type: \"light\",\n colors: {\n \"list.focusForeground\": \"#FFFFFF\",\n \"scrollbar.shadow\": \"#ffffff00\",\n \"tab.activeBorder\": \"#ffffff\",\n \"widget.shadow\": \"#ffffff00\",\n \"activityBar.border\": \"#D9D7D5\",\n \"editorGroup.border\": \"#D9D7D5\",\n \"editorGroupHeader.tabsBorder\": \"#D9D7D5\",\n \"editorWidget.border\": \"#D9D7D5\",\n \"editorWidget.resizeBorder\": \"#D9D7D5\",\n \"input.border\": \"#D9D7D5\",\n \"notificationCenter.border\": \"#D9D7D5\",\n \"notifications.border\": \"#D9D7D5\",\n \"panel.border\": \"#D9D7D5\",\n \"sideBar.border\": \"#D9D7D5\",\n \"statusBar.border\": \"#D9D7D5\",\n \"tab.border\": \"#D9D7D5\",\n \"activityBar.background\": \"#ECECEC\",\n \"statusBar.background\": \"#ECECEC\",\n \"statusBar.noFolderBackground\": \"#ECECEC\",\n \"statusBar.debuggingBackground\": \"#ECECEC\",\n \"editorGroupHeader.tabsBackground\": \"#F5F5F5\",\n \"editorWidget.background\": \"#F5F5F5\",\n \"sideBar.background\": \"#F5F5F5\",\n \"sideBarSectionHeader.background\": \"#F5F5F5\",\n \"tab.inactiveBackground\": \"#F5F5F5\",\n \"activityBarBadge.background\": \"#282828\",\n \"activityBar.foreground\": \"#282828\",\n \"statusBar.foreground\": \"#565456\",\n \"input.placeholderForeground\": \"#C7C6C5\",\n \"editorLineNumber.foreground\": \"#A6A6A6\",\n \"editorLineNumber.activeForeground\": \"#282828\",\n foreground: \"#282828\",\n \"panelTitle.activeForeground\": \"#282828\",\n \"sideBarTitle.foreground\": \"#282828\",\n \"sideBarSectionHeader.foreground\": \"#282828\",\n \"panelTitle.inactiveForeground\": \"#242424\",\n \"tab.inactiveForeground\": \"#242424\",\n \"list.highlightForeground\": \"#242424\",\n \"editor.lineHighlightBackground\": \"#EEF5FE\",\n focusBorder: \"#82ADF3\",\n \"button.background\": \"#3C93FD\",\n \"list.activeSelectionBackground\": \"#3C93FD\",\n \"list.focusBackground\": \"#3C93FD\",\n \"selection.background\": \"#B3D7FF\",\n \"list.inactiveSelectionBackground\": \"#CECECE\",\n \"terminal.ansiBlack\": \"#000000\",\n \"terminal.ansiBrightBlack\": \"#000000\",\n \"terminal.ansiRed\": \"#C41A16\",\n \"terminal.ansiBrightRed\": \"#C41A16\",\n \"terminal.ansiGreen\": \"#007400\",\n \"terminal.ansiBrightGreen\": \"#007400\",\n \"terminal.ansiYellow\": \"#643820\",\n \"terminal.ansiBrightYellow\": \"#643820\",\n \"terminal.ansiBlue\": \"#272AD8\",\n \"terminal.ansiBrightBlue\": \"#272AD8\",\n \"terminal.ansiMagenta\": \"#AA0D91\",\n \"terminal.ansiBrightMagenta\": \"#AA0D91\",\n \"terminal.ansiCyan\": \"#3F6E74\",\n \"terminal.ansiBrightCyan\": \"#3F6E74\",\n },\n tokenColors: [\n {\n scope: \"new.expr entity.name\",\n settings: {\n foreground: \"#713DA9\",\n },\n },\n {\n name: \"Comments\",\n scope: [\"comment\", \"comment storage.type\"],\n settings: {\n foreground: \"#536579\",\n fontStyle: \"italic\",\n },\n },\n {\n name: \"CSS\",\n scope: [\n \"entity.other.attribute-name.pseudo-class.css\",\n \"entity.other.attribute-name.pseudo-class.scss\",\n \"entity.other.attribute-name.pseudo-element.css\",\n \"entity.other.attribute-name.pseudo-element.scss\",\n \"support.function.calc.css\",\n \"support.function.calc.scss\",\n \"support.type.property-name.css\",\n \"support.type.property-name.scss\",\n \"support.type.vendored.property-name.css\",\n \"support.type.vendored.property-name.scss\",\n \"meta.property-value.css support.constant\",\n \"meta.property-value.scss support.constant\",\n \"meta.property-value.css support.constant.property-value\",\n \"meta.property-value.scss support.constant.property-value\",\n \"support.function.transform.css\",\n \"support.function.transform.scss\",\n ],\n settings: {\n foreground: \"#AA0D91\",\n },\n },\n {\n name: \"Decorator\",\n scope: [\n \"meta.decorator\",\n \"meta.decorator punctuation.decorator\",\n \"meta.decorator variable.other.readwrite\",\n \"meta.decorator meta.function-call entity.name.function\",\n ],\n settings: {\n foreground: \"#643820\",\n },\n },\n {\n name: \"Doctype\",\n scope: [\"meta.tag.sgml.html\"],\n settings: {\n foreground: \"#A6A6A6\",\n },\n },\n {\n name: \"Functions\",\n scope: [\"entity.name.function\", \"support.function\"],\n settings: {\n foreground: \"#7051d4\",\n },\n },\n {\n name: \"Keys\",\n scope: [\n \"meta.property-list meta.property-name\",\n \"support.type.property-name\",\n \"support.type.map.key\",\n \"entity.name.tag.yaml\",\n ],\n settings: {\n foreground: \"#7051d4\",\n },\n },\n {\n name: \"Keywords\",\n scope: [\n \"keyword.control\",\n \"keyword.declaration\",\n \"keyword.expressions-and-types\",\n \"keyword.operator.new\",\n \"keyword.reserved\",\n \"keyword.statement\",\n \"storage.type\",\n \"storage.modifier\",\n \"constant.language\",\n \"variable.language.super\",\n \"variable.language.this\",\n \"text.html entity.name.tag\",\n \"meta.tag entity.name.tag\",\n \"meta.tag support.class\",\n \"string.regexp keyword.other\",\n ],\n settings: {\n foreground: \"#AD3DA4\",\n fontStyle: \"bold\",\n },\n },\n {\n name: \"Operators\",\n scope: [\n \"storage.type.function.arrow\",\n \"meta.template.expression punctuation\",\n \"punctuation.separator.key-value\",\n \"meta.object-literal.key meta.brace.square\",\n \"meta.template.expression keyword.operator\",\n \"keyword.operator.or.regexp\",\n \"keyword.operator.quantifier\",\n \"punctuation.definition.group.regexp\",\n \"punctuation.definition.character-class\",\n ],\n settings: {\n foreground: \"#000000\",\n },\n },\n {\n scope: [\n \"meta.tag entity.other.attribute-name\",\n \"constant.character.escape.backslash\",\n ],\n settings: {\n foreground: \"#816927\",\n },\n },\n {\n name: \"Numbers\",\n scope: [\"constant.numeric\", \"keyword.other.unit\", \"constant.other.color\"],\n settings: {\n foreground: \"#272AD8\",\n },\n },\n {\n name: \"Strings\",\n scope: [\n \"string\",\n \"variable.parameter.url.scss\",\n \"markup.heading.markdown\",\n \"beginning.punctuation.definition.list.markdown\",\n \"meta.template.expression meta.embedded punctuation.definition.string.begin\",\n \"meta.template.expression meta.embedded punctuation.definition.string.end\",\n ],\n settings: {\n foreground: \"#D12F1B\",\n },\n },\n {\n name: \"Types\",\n scope: [\n \"meta.type\",\n \"meta.return.type\",\n \"entity.name.type\",\n \"support.type.primitive\",\n ],\n settings: {\n foreground: \"#713DA9\",\n },\n },\n {\n scope: [\n \"meta.objectliteral variable.other.object\",\n \"entity.name.type.module\",\n \"entity.other.inherited-class\",\n \"variable.scss\",\n \"variable.other.bracket.shell\",\n \"entity.name.function.scss\",\n ],\n settings: {\n foreground: \"#3F6E74\",\n },\n },\n {\n scope: [\n \"keyword.control.at-rule\",\n \"meta.import variable.other.readwrite\",\n \"meta.definition.variable variable.other.readwrite\",\n \"meta.definition.variable variable.other.constant\",\n \"meta.template.expression variable.other.readwrite\",\n \"meta.template.expression variable.other.constant\",\n \"support.constant.property-value\",\n ],\n settings: {\n foreground: \"#000000\",\n },\n },\n {\n scope: [\n \"variable.other.property\",\n \"variable.other.object.property\",\n \"support.variable.property\",\n ],\n settings: {\n foreground: \"#713DA9\",\n },\n },\n ],\n}","import {css} from \"@linaria/core\";\n\nexport const CodeSampleHost = css`\n flex: 1 1 0;\n overflow: hidden;\n min-width: 0;\n max-width: 512px;\n\n border: 1px solid var(--XydAtlas-Component-Code-Sample__color-border);\n border-radius: 16px;\n`;\n\nexport const CodeSampleLanguagesHost = css`\n display: flex;\n flex: 1 1 0%;\n padding: 8px 0px;\n\n background: linear-gradient(45deg, rgb(247, 247, 248) 0%, rgb(247, 247, 248) 100%) !important;\n\n border-top-right-radius: 10px;\n border-top-left-radius: 10px;\n border-bottom: 0px;\n\n min-width: 0;\n`;\n\nexport const CodeSampleLanguagesList = css`\n display: flex;\n flex-grow: 1;\n justify-content: end;\n gap: 8px;\n padding: 0 10px;\n`;\n\nexport const CodeSampleLanguagesButton = css`\n all: unset;\n\n cursor: pointer;\n\n display: flex;\n align-items: center;\n justify-content: center;\n\n border-radius: 6px;\n padding: 6px;\n\n font-size: 14px;\n color: var(--XydAtlas-Component-Code-Sample__color);\n\n &[data-state=\"active\"] {\n color: var(--XydAtlas-Component-Code-Sample__color--active);\n border-bottom: 1px solid var(--XydAtlas-Component-Code-Sample__color--active);\n border-bottom-left-radius: 0px;\n border-bottom-right-radius: 0px;\n }\n\n &:hover {\n transition: ease-in 0.1s;\n background: var(--XydAtlas-Component-Code-Sample__color-background);\n }\n`;\n\nexport const CodeSampleLanguagesDescription = css`\n display: flex;\n align-items: center;\n gap: 4px;\n\n font-size: 14px;\n color: var(--XydAtlas-Component-Code-Sample__color);\n\n margin-left: 4px;\n margin-right: 4px;\n`;\n\nexport const CodeSampleLanguagesDescriptionItem = css`\n display: flex;\n padding-left: 16px;\n padding-right: 16px;\n flex: 1 1 0%;\n gap: 16px;\n border-radius: 4px;\n`;\n\nexport const CodeSampleLanguagesCopy = css`\n display: flex;\n padding-left: 8px;\n padding-right: 8px;\n align-items: center;\n`;\n\nexport const CodeSampleCodeHost = css`\n max-height: 400px;\n background: linear-gradient(45deg, rgb(247, 247, 248) 0%, rgb(247, 247, 248) 100%) !important;\n\n margin: 0;\n padding: 8px 16px;\n\n border-top: 1px solid var(--XydAtlas-Component-Code-Sample__color-border);\n border-bottom-left-radius: 10px;\n border-bottom-right-radius: 10px;\n\n font-size: 14px;\n line-height: 20px;\n white-space: pre-wrap;\n word-break: break-all;\n\n overflow-y: scroll;\n`;\n\nexport const CodeSampleMarkHost = css`\n display: flex;\n border-left-width: 4px;\n border-color: transparent;\n margin: 4px 0;\n`;\n\nexport const CodeSampleMarkLine = css`\n flex: 1 1 0%;\n`;\n\nexport const CodeSampleMarkAnnotated = css`\n border-color: var(--XydAtlas-Component-Code-Sample__color-markBorder--active);\n background-color: var(--XydAtlas-Component-Code-Sample__color-markBackground--active);\n`;\n\nexport const CodeSampleLineNumberHost = css`\n margin: 0 4px;\n //text-align: right;\n user-select: none;\n opacity: 0.5;\n`;","import React, {useState, useEffect} from \"react\"\n\nexport interface CodeTabsProps {\n localStorageKey: string\n defaultValue: string\n className: string\n style: any\n\n children: React.ReactNode\n}\n\n// TODO: interface\nexport function withLocalStored(Component: any) {\n return function LocalStored(props: CodeTabsProps) {\n const [value, setValue] = useState(\n typeof localStorage !== \"undefined\"\n ? localStorage?.getItem(props.localStorageKey) || props.defaultValue\n : props.defaultValue,\n )\n\n useEffect(() => {\n const handler = (e: StorageEvent) => {\n if (e.key === props.localStorageKey) {\n setValue(e.newValue || props.defaultValue)\n }\n }\n window.addEventListener(\"storage\", handler)\n return () => {\n window.removeEventListener(\"storage\", handler)\n }\n }, [props.localStorageKey])\n\n function onValueChange(value: string) {\n localStorage.setItem(props.localStorageKey, value)\n window.dispatchEvent(\n new StorageEvent(\"storage\", {\n key: props.localStorageKey,\n newValue: value,\n }),\n )\n }\n\n return (\n <Component\n onValueChange={onValueChange}\n value={value}\n >\n {props.children}\n </Component>\n )\n }\n}\n","import React, {useEffect, useState} from \"react\";\nimport * as TabsPrimitive from \"@radix-ui/react-tabs\"; // TODO: remove and use separation\nimport {\n AnnotationHandler,\n InnerLine,\n Pre,\n highlight,\n HighlightedCode,\n} from \"codehike/code\"\n\nimport {\n CodeCopy,\n} from \"@/components/Code\";\nimport {theme as defaultTheme} from \"@/components/Code/default-theme\" // TODO: support multiple themes\nimport {withLocalStored} from \"@/components/Code/CodeSample/withLocalStored\";\nimport * as cn from \"./CodeSample.styles\";\nimport {CodeLoader} from \"@xyd-js/components/coder\";\n\n// TODO: try to use codehiki in build time / ASYNC !!! - we need rr server-components\n// TODO: separate highlight\n\nexport interface MDXCodeSampleBlock {\n /** This is the raw code. May include annotation comments. */\n value: string;\n /** The programming language. */\n lang: string;\n /** Metadata string (the content after the language name in a markdown codeblock). */\n meta: string;\n}\n\nexport interface CodeSampleProps {\n name: string;\n description: string;\n codeblocks: MDXCodeSampleBlock[];\n}\n\nconst $$LocalStoredTab = withLocalStored(TabsPrimitive.Root);\n\nexport function CodeSample(props: CodeSampleProps) {\n const [highlighted, setHighlighted] = useState<HighlightedCode[]>([]);\n\n useEffect(() => {\n async function fetchHighlight() {\n const result = await Promise.all(\n props.codeblocks?.map((codeblock) => highlight(codeblock, defaultTheme))\n );\n\n setHighlighted(result);\n }\n\n fetchHighlight();\n }, [props.codeblocks]);\n\n if (highlighted.length === 0) {\n return <CodeLoader/>\n }\n\n if (!highlighted) {\n return <CodeLoader/>\n }\n\n return (\n <$$LocalStoredTab\n className={cn.CodeSampleHost}\n style={highlighted[0]?.style}\n localStorageKey={`preferredLanguage[${name}]`}\n defaultValue={highlighted[0]?.meta}\n >\n <div className={cn.CodeSampleLanguagesHost}>\n <$Description description={props.description}/>\n\n <TabsPrimitive.List className={cn.CodeSampleLanguagesList}>\n {props.codeblocks?.map(({meta}, i) => (\n <TabsPrimitive.Trigger value={meta!} key={i} className={cn.CodeSampleLanguagesButton}>\n {meta}\n </TabsPrimitive.Trigger>\n ))}\n </TabsPrimitive.List>\n\n <div className={cn.CodeSampleLanguagesCopy}>\n {props.codeblocks?.map((codeblock, i) => (\n <TabsPrimitive.Content value={codeblock.meta!} asChild key={i}>\n <CodeCopy text={codeblock.value}/>\n </TabsPrimitive.Content>\n ))}\n </div>\n </div>\n\n {highlighted?.map((codeblock, i) => (\n <TabsPrimitive.Content value={codeblock.meta} key={i}>\n <Pre\n className={cn.CodeSampleCodeHost}\n style={codeblock?.style || codeblock?.style}\n code={codeblock}\n handlers={[mark, lineNumber]}\n />\n </TabsPrimitive.Content>\n ))}\n </$$LocalStoredTab>\n )\n}\n\nfunction $Description(props: { description: string }) {\n return <div className={cn.CodeSampleLanguagesDescription}>\n <div className={cn.CodeSampleLanguagesDescriptionItem}>\n {props.description}\n </div>\n </div>\n}\n\nconst mark: AnnotationHandler = {\n name: \"Mark\",\n Line: ({annotation, ...props}) => {\n return (\n <div className={`${cn.CodeSampleMarkHost} ${annotation && cn.CodeSampleMarkAnnotated}`}>\n <InnerLine\n merge={props}\n className={cn.CodeSampleMarkLine}\n />\n </div>\n )\n },\n}\n\nconst lineNumber: AnnotationHandler = {\n name: \"LineNumber\",\n Line: ({annotation, ...props}) => {\n const width = props.totalLines.toString().length + 1\n\n return (\n <>\n <span\n style={{minWidth: `${width}ch`}}\n className={cn.CodeSampleLineNumberHost}\n >\n {props.lineNumber}\n </span>\n <InnerLine merge={props}/>\n </>\n )\n },\n}\n\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: flex;\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: #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`;\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: 0.5rem 1rem;\n border-radius: 0.375rem;\n font-size: 0.875rem;\n line-height: 1.25rem;\n font-weight: 500;\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 {MDXReference, mdxValue} from \"@/utils/mdx\";\n\nimport * as cn from \"./CodeSampleButtons.styles\";\n\nexport interface CodeExampleButtonsProps {\n examples: MDXReference<Example[]>\n activeExample: MDXReference<Example> | null\n onClick: (example: MDXReference<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 {mdxValue(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: MDXReference<Example>,\n activeExample: MDXReference<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 position: sticky;\n top: 6rem;\n display: flex;\n gap: 32px;\n flex-direction: column;\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 {Example, ExampleRoot} from \"@xyd-js/uniform\";\nimport React, {useState} from \"react\";\n\nimport {MDXReference} from \"@/utils/mdx\"\nimport {CodeExampleButtons, CodeSample} from \"@/components/Code\";\nimport type {MDXCodeSampleBlock} from \"@/components/Code/CodeSample/CodeSample\";\n\nimport * as cn from \"./ApiRefSamples.styles\";\n\nexport interface ApiRefSamplesProps {\n examples: MDXReference<ExampleRoot>\n}\n\nexport function ApiRefSamples({examples}: ApiRefSamplesProps) {\n return <div className={cn.ApiRefSamplesContainerHost}>\n {\n examples.groups?.map(({description, examples}, i) => {\n const [activeExample, setActiveExample] = useState<MDXReference<Example> | null>(examples?.[0])\n\n const codeblocks = activeExample?.codeblock?.tabs?.map(tab => {\n return tab.code as unknown as MDXCodeSampleBlock // TODO: because atlas use mdx uniform reference - we need to unify it !!!\n })\n\n return <div key={i} className={cn.ApiRefSamplesGroupHost}>\n {\n examples?.length > 1\n ? <CodeExampleButtons\n activeExample={activeExample}\n examples={examples}\n onClick={(example) => {\n setActiveExample(example)\n }}\n />\n : null\n }\n <CodeSample\n name={String(i)}\n description={description?.title || \"\"}\n codeblocks={codeblocks || []}\n />\n </div>\n })\n }\n </div>\n}","import React from \"react\";\n\nimport {Reference} from \"@xyd-js/uniform\";\n\nimport {MDXReference} from \"@/utils/mdx\";\nimport {ApiRefItem} from \"@/components/ApiRef\";\n\nimport * as cn from \"@/components/Atlas/Atlas.styles\";\n\nexport interface AtlasProps {\n references: MDXReference<Reference[]> | []\n}\n\nexport function Atlas(props: AtlasProps) {\n return <div className={cn.AtlasHost}>\n {\n props.references?.map((reference, i) => <div key={i}>\n <ApiRefItem\n reference={{\n ...reference\n }}\n />\n </div>\n )\n }\n </div>\n}","import {css} from \"@linaria/core\";\n\nexport const AtlasHost = css`\n width: 100%;\n`;","import React, {useEffect, useRef} from \"react\";\n\nimport {Reference} from \"@xyd-js/uniform\";\n\nimport {MDXReference} from \"@/utils/mdx\";\nimport {ApiRefItem} from \"@/components/ApiRef\";\nimport * as cn from \"./AtlasLazy.styles\";\n\nexport interface AtlasLazyProps {\n references: MDXReference<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`;"],"names":["ApiRefItem","_ref","topNavbar","reference","_a","category","title","ReferenceCategory","REST","ctx","context","method","path","React","createElement","Navbar","label","subtitle","concat","decodeURIComponent","className","Title","description","children","Properties","examples","ApiRefSamples","_ref2","definitions","map","definition","i","key","properties","length","Subtitle","ApiRefProperties","_ref3","Fragment","toUpperCase","_ref4","_ref5","ApiRefPropertiesUlHost","ApiRefPropertiesLiHost","ApiRefPropertiesDescriptionHost","ApiRefPropertiesDlHost","ApiRefPropertiesPropNameCodeHost","ApiRefPropertiesPropTypeCodeHost","ApiRefPropertiesPropTypeCodeLink","ApiRefPropertiesSubPropsHost","ApiRefPropertiesSubPropsHostExpanded","ApiRefPropertiesSubPropsBox","ApiRefPropertiesSubPropsUl","ApiRefPropertiesSubPropsLi","ApiRefPropertiesPropToggleHost","ApiRefPropertiesPropToggleLink","cn","property","PropName","name","value","mdxValue","PropType","type","href","propertyTypeHref","SubProperties","_useState","useState","_useState2","_slicedToArray","expanded","setExpanded","PropToggle","onClick","isExpanded","role","prop","props","xmlns","width","height","fill","viewBox","fillRule","d","clipRule","_b","graphqlBuiltInType","_c","graphqlTypeShort","_d","_f","_e","_h","_g","graphqlTypeFlat","undefined","CodeCopyHost","CodeCopy","text","copied","setCopied","navigator","clipboard","writeText","setTimeout","CheckCheck","size","Copy","__rest","s","e","t","p","Object","prototype","hasOwnProperty","call","indexOf","getOwnPropertySymbols","propertyIsEnumerable","__awaiter","thisArg","_arguments","P","generator","Promise","resolve","reject","fulfilled","step","next","rejected","result","done","then","apply","splitAnnotationsAndCode","_x","_x2","_x3","_splitAnnotationsAndCode","this","arguments","_asyncToGenerator","_regeneratorRuntime","mark","_callee","code","lang","annotationPrefix","annotations","codeWithoutAnnotations","_yield$extractComment","newCode","newAnnotations","wrap","_context","prev","extractCommentAnnotations","sent","_toConsumableArray","abrupt","stop","_x4","_x5","_extractCommentAnnotations","_callee2","extractor","_yield$extractAnnotat","codeWithoutComments","_args2","_context2","comment","regex","RegExp","match","rangeString","query","trim","startsWith","slice","extractAnnotations","isBlockAnnotation","annotation","isInlineAnnotation","isWhitespace","token","SuppressedError","highlight","_highlight","data","theme","config","_data$lang","_yield$splitAnnotatio","_yield$lighter","lines","lighterLang","style","tokens","splitTokens","joinedTokens","_args","LANG_NAMES","includes","console","warn","lighter","scopes","joinLines","splitWhitespace","joinWhitespace","_objectSpread","compatAnnotations","themeName","_step","_iterator","_createForOfIteratorHelper","n","_step2","a","ranges","_iterator2","r","lineNumber","fromColumn","toColumn","push","fromLineNumber","toLineNumber","err","f","forEach","lineOrGroup","Error","tokenOrGroup","content","color","rest","_objectWithoutProperties","_excluded","keys","joinTokens","ejected","_splitSurroundingWhit","trimmed","before","after","splitSurroundingWhitespace","_splitSurroundingWhit2","copy","last","process","env","NODE_ENV","getComponentNameFromType","$$typeof","REACT_CLIENT_REFERENCE$2","displayName","REACT_FRAGMENT_TYPE","REACT_PORTAL_TYPE","REACT_PROFILER_TYPE","REACT_STRICT_MODE_TYPE","REACT_SUSPENSE_TYPE","REACT_SUSPENSE_LIST_TYPE","_typeof","tag","error","REACT_CONTEXT_TYPE","REACT_CONSUMER_TYPE","REACT_FORWARD_REF_TYPE","innerType","render","REACT_MEMO_TYPE","REACT_LAZY_TYPE","_payload","_init","x","testStringCoercion","checkKeyStringCoercion","JSCompiler_inline_result","JSCompiler_temp_const","JSCompiler_inline_result$jscomp$0","Symbol","toStringTag","constructor","disabledLog","describeBuiltInComponentFrame","prefix","stack","suffix","describeNativeComponentFrame","fn","construct","reentry","frame","componentFrameCache","get","prepareStackTrace","previousDispatcher","ReactSharedInternals","H","disabledDepth","prevLog","log","prevInfo","info","prevWarn","prevError","prevGroup","group","prevGroupCollapsed","groupCollapsed","prevGroupEnd","groupEnd","configurable","enumerable","writable","defineProperties","disableLogs","RunInRootFrame","DetermineComponentFrameRoot","Fake","defineProperty","set","Reflect","control","x$0","x$1","sample","namePropDescriptor","getOwnPropertyDescriptor","_RunInRootFrame$Deter","sampleStack","controlStack","sampleLines","split","controlLines","_frame","replace","assign","reenableLogs","describeUnknownElementTypeFrameInDEV","isReactComponent","getOwner","dispatcher","A","elementRefGetterWithDeprecationWarning","componentName","didWarnAboutElementRef","ref","jsxDEVImpl","maybeKey","isStaticChildren","source","self","REACT_OFFSCREEN_TYPE","REACT_CLIENT_REFERENCE$1","getModuleId","isArrayImpl","validateChildKeys","freeze","REACT_ELEMENT_TYPE","filter","k","join","didWarnAboutKeySpread","getter","isReactWarning","hasValidKey","propName","warnAboutAccessingKey","specialPropKeyWarningShown","defineKeyPropWarningGetter","owner","_owner","_store","ReactElement","node","parentType","REACT_CLIENT_REFERENCE","child","isValidElement","validateExplicitKey","validated","MAYBE_ITERATOR_SYMBOL","entries","object","element","getCurrentComponentErrorInfo","ownerHasKeyUseWarning","childOwner","prevGetCurrentStack","getCurrentStack","require$$0","iterator","__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE","Array","isArray","__reactDisabledLog","WeakMap","Map","reactJsxRuntime_development","jsx","jsxs","jsxRuntimeModule","exports","jsxProd","reactJsxRuntime_production","require$$1","pushProp","target","oldFn","mergeProps","_len","_key","reduce","merged","ps","InnerPre","_mergeProps","merge","_stack","_excluded2","_stack2","_toArray","Next","_jsx","_excluded3","minWidth","InnerLine","_mergeProps2","_excluded4","_excluded5","_stack3","Component","totalLines","indentation","_excluded6","InnerToken","_mergeProps3","_excluded7","_excluded8","_stack4","_excluded9","AddRefIfNedded","innerRef","useRef","applyInlineAnnotation","lineContent","range","splitContent","inside","item","index","findIndex","isGroup","renderLineContent","handlers","annotationStack","InlinedTokens","FinalToken","Token","AnnotatedToken","buildTokenStack","find","c","Inline","applyBlockAnnotation","groups","splitGroups","renderLines","linesOrGroups","inlineAnnotations","_ref$annotationStack","LineBlock","Line","line","_ref2$annotationStack","lineAnnotations","toLineContent","AnnotatedLine","buildLineStack","Block","Pre","forwardRef","_ref2$handlers","transform","flatMap","annotationNames","Set","hs","h","onlyIfAnnotated","has","noRefStack","Boolean","refStack","PreWithRef","unshift","buildPreStack","PreContent","tokenStack","col","shift","_token$split","_token$split2","tail","start","_token","_token$","toLines","blockAnnotations","toLineGroups","colors","foreground","focusBorder","tokenColors","scope","settings","fontStyle","CodeSampleHost","CodeSampleLanguagesHost","CodeSampleLanguagesList","CodeSampleLanguagesButton","CodeSampleLanguagesDescription","CodeSampleLanguagesDescriptionItem","CodeSampleLanguagesCopy","CodeSampleCodeHost","$$LocalStoredTab","TabsPrimitive","Root","localStorage","getItem","localStorageKey","defaultValue","setValue","useEffect","handler","newValue","window","addEventListener","removeEventListener","onValueChange","setItem","dispatchEvent","StorageEvent","CodeSample","highlighted","setHighlighted","all","codeblocks","codeblock","defaultTheme","fetchHighlight","CodeLoader","meta","$Description","List","Trigger","Content","asChild","toString","CodeSampleButtonsHost","CodeSampleButtonsContainer","CodeSampleButtonsArrowHost","CodeSampleButtonsArrowIcon","CodeSampleButtonsScrollerHost","CodeSampleButtonsScrollerContainer","CodeSampleButtonsButtonHost","CodeSampleButtonsButtonActive","CodeExampleButtons","activeExample","showLeftArrow","setShowLeftArrow","_useState3","_useState4","showRightArrow","setShowRightArrow","scrollContainerRef","handleScroll","current","_scrollContainerRef$c","scrollLeft","scrollWidth","clientWidth","scroll","direction","scrollAmount","scrollBy","left","behavior","ChevronLeft","onScroll","example","SampleButton","ChevronRight","markExampleAsActive","ApiRefSamplesContainerHost","ApiRefSamplesGroupHost","setActiveExample","tabs","tab","String","Atlas","references","AtlasLazy","urlPrefix","canonical","ItemWrapper","onLoad","onLoaded"],"mappings":"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","x_google_ignoreList":[6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]}
1
+ {"version":3,"file":"index.js","sources":["../../xyd-components/dist/Text-QH4jjPUM.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-light.js","../../xyd-components/dist/CodeSample-GbqwRbcO.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 from\"react\";function i(i){var e=i.size,t=void 0===e?\"medium\":e,d=i.kind,n=void 0===d?\"default\":d,o=i.weight,c=void 0===o?\"normal\":o,r=i.children,l=i.className,m=i.id,s=i.onClick,v=i.as,k=(void 0===v?\"p\":v)||\"p\";return a.createElement(k,{className:\"\".concat(\"tn8a2d4\",\" \").concat(l||\"\"),\"data-size\":t,\"data-kind\":n,\"data-weight\":c,onClick:s,id:m},r)}export{i as T};\n//# sourceMappingURL=Text-QH4jjPUM.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: 767px) {\n grid-template-columns: 1fr;\n }\n }\n }\n`;\n\nexport const ApiRefItemGrid = css`\n align-items: normal;\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 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=\"extra-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\" 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: 16px;\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 e={name:\"cosmo-light\",type:\"light\",colors:{\"list.focusForeground\":\"#FFFFFF\",\"scrollbar.shadow\":\"#ffffff00\",\"tab.activeBorder\":\"#ffffff\",\"widget.shadow\":\"#ffffff00\",\"activityBar.border\":\"#D9D7D5\",\"editorGroup.border\":\"#D9D7D5\",\"editorGroupHeader.tabsBorder\":\"#D9D7D5\",\"editorWidget.border\":\"#D9D7D5\",\"editorWidget.resizeBorder\":\"#D9D7D5\",\"input.border\":\"#D9D7D5\",\"notificationCenter.border\":\"#D9D7D5\",\"notifications.border\":\"#D9D7D5\",\"panel.border\":\"#D9D7D5\",\"sideBar.border\":\"#D9D7D5\",\"statusBar.border\":\"#D9D7D5\",\"tab.border\":\"#D9D7D5\",\"activityBar.background\":\"#ECECEC\",\"statusBar.background\":\"#ECECEC\",\"statusBar.noFolderBackground\":\"#ECECEC\",\"statusBar.debuggingBackground\":\"#ECECEC\",\"editorGroupHeader.tabsBackground\":\"#F5F5F5\",\"editorWidget.background\":\"#F5F5F5\",\"sideBar.background\":\"#F5F5F5\",\"sideBarSectionHeader.background\":\"#F5F5F5\",\"tab.inactiveBackground\":\"#F5F5F5\",\"activityBarBadge.background\":\"#282828\",\"activityBar.foreground\":\"#282828\",\"statusBar.foreground\":\"#565456\",\"input.placeholderForeground\":\"#C7C6C5\",\"editorLineNumber.foreground\":\"#A6A6A6\",\"editorLineNumber.activeForeground\":\"#282828\",foreground:\"#282828\",\"panelTitle.activeForeground\":\"#282828\",\"sideBarTitle.foreground\":\"#282828\",\"sideBarSectionHeader.foreground\":\"#282828\",\"panelTitle.inactiveForeground\":\"#242424\",\"tab.inactiveForeground\":\"#242424\",\"list.highlightForeground\":\"#242424\",\"editor.lineHighlightBackground\":\"#EEF5FE\",focusBorder:\"#82ADF3\",\"button.background\":\"#3C93FD\",\"list.activeSelectionBackground\":\"#3C93FD\",\"list.focusBackground\":\"#3C93FD\",\"selection.background\":\"#B3D7FF\",\"list.inactiveSelectionBackground\":\"#CECECE\",\"terminal.ansiBlack\":\"#000000\",\"terminal.ansiBrightBlack\":\"#000000\",\"terminal.ansiRed\":\"#C41A16\",\"terminal.ansiBrightRed\":\"#C41A16\",\"terminal.ansiGreen\":\"#007400\",\"terminal.ansiBrightGreen\":\"#007400\",\"terminal.ansiYellow\":\"#643820\",\"terminal.ansiBrightYellow\":\"#643820\",\"terminal.ansiBlue\":\"#272AD8\",\"terminal.ansiBrightBlue\":\"#272AD8\",\"terminal.ansiMagenta\":\"#AA0D91\",\"terminal.ansiBrightMagenta\":\"#AA0D91\",\"terminal.ansiCyan\":\"#3F6E74\",\"terminal.ansiBrightCyan\":\"#3F6E74\"},tokenColors:[{scope:\"new.expr entity.name\",settings:{foreground:\"#713DA9\"}},{name:\"Comments\",scope:[\"comment\",\"comment storage.type\"],settings:{foreground:\"#536579\",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:\"#AA0D91\"}},{name:\"Decorator\",scope:[\"meta.decorator\",\"meta.decorator punctuation.decorator\",\"meta.decorator variable.other.readwrite\",\"meta.decorator meta.function-call entity.name.function\"],settings:{foreground:\"#643820\"}},{name:\"Doctype\",scope:[\"meta.tag.sgml.html\"],settings:{foreground:\"#A6A6A6\"}},{name:\"Functions\",scope:[\"entity.name.function\",\"support.function\"],settings:{foreground:\"#7051d4\"}},{name:\"Keys\",scope:[\"meta.property-list meta.property-name\",\"support.type.property-name\",\"support.type.map.key\",\"entity.name.tag.yaml\"],settings:{foreground:\"#7051d4\"}},{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:\"#AD3DA4\",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:\"#000000\"}},{scope:[\"meta.tag entity.other.attribute-name\",\"constant.character.escape.backslash\"],settings:{foreground:\"#816927\"}},{name:\"Numbers\",scope:[\"constant.numeric\",\"keyword.other.unit\",\"constant.other.color\"],settings:{foreground:\"#272AD8\"}},{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:\"#D12F1B\"}},{name:\"Types\",scope:[\"meta.type\",\"meta.return.type\",\"entity.name.type\",\"support.type.primitive\"],settings:{foreground:\"#713DA9\"}},{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:\"#3F6E74\"}},{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:\"#000000\"}},{scope:[\"variable.other.property\",\"variable.other.object.property\",\"support.variable.property\"],settings:{foreground:\"#713DA9\"}}]};export{e as default};\n//# sourceMappingURL=cosmo-light.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,a as u}from\"./tslib.es6-DwnOrHRg.js\";import{f as d,b as f,_ as m,g as h,h as v,i as p,a as g,j as y,k as b}from\"./_rollupPluginBabelHelpers-CiqSP2w-.js\";import{T as k}from\"./Text-QH4jjPUM.js\";import{extractAnnotations as E,highlight as w,LANG_NAMES as j}from\"@code-hike/lighter\";import x from\"./coder/themes/cosmo-light.js\";import{I as N}from\"./Icon-BoKcRZAF.js\";import{Tabs as S}from\"radix-ui\";import{CheckCheck as _,Copy as O}from\"lucide-react\";function C(e,n,t){return I.apply(this,arguments)}function I(){return I=d(f().m(function e(n,t,r){var a,o,i,l,c;return f().w(function(e){for(;;)switch(e.n){case 0:return a=[],o=n,e.n=1,z(o,t,r);case 1:return i=e.v,l=i.code,c=i.annotations,a=[].concat(m(a),m(c)),o=l,e.a(2,{code:o,annotations:a})}},e)})),I.apply(this,arguments)}function z(e,n){return A.apply(this,arguments)}function A(){return A=d(f().m(function e(n,t){var r,a,o,i,l,c=arguments;return f().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,E(n,t,a);case 1:return o=e.v,i=o.code,l=o.annotations,e.a(2,{code:i,annotations:l})}},e)})),A.apply(this,arguments)}function L(e){return!P(e)}function P(e){return e.hasOwnProperty(\"lineNumber\")}function T(e){return\"string\"==typeof e}var R=[\"color\"];function M(e,n){return q.apply(this,arguments)}function q(){return q=d(f().m(function e(n,t){var r,a,o,i,l,c,s,u,d,m,v,p,g,y,b=arguments;return f().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,j.includes(i)||(console.warn('Code Hike warning: Unknown language \"'.concat(i,'\"')),i=\"txt\"),e.n=1,C(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,m=u.lang,v=u.style,p=H(d),g=B(p),y=W(g),e.a(2,h(h({},n),{},{code:c,tokens:y,lang:m,annotations:$(s),themeName:\"string\"==typeof t?t:(null==t?void 0:t.name)||\"unknown\",style:v}))}},e)})),q.apply(this,arguments)}function $(e){var n,t=[],r=v(e);try{for(r.s();!(n=r.n()).done;){var a,o=n.value,i=o.name,l=o.query,c=o.ranges,s=v(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 h=u.fromLineNumber,p=u.toLineNumber;t.push({name:i,query:l,fromLineNumber:h,toLineNumber:p})}}}catch(e){s.e(e)}finally{s.f()}}}catch(e){r.e(e)}finally{r.f()}return t}function H(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=p(t,R);return n.push(r),Object.keys(a).length&&n.push(a),n})}(t.tokens);n.push.apply(n,m(a)),r<e.length-1&&n.push(\"\\n\")}),n}function B(e){var n=[];return e.forEach(function(e){if(T(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=g(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=m(e);l[0]=o,n.push(l)}(null==i?void 0:i.length)&&n.push(i)}}),n}function W(e){var n=[];return e.forEach(function(e){if(T(e)){var t=n[n.length-1];t&&T(t)?n[n.length-1]+=e:\"\"!==e&&n.push(e)}else e[0].length>0&&n.push(e)}),n}var D,F={exports:{}},U={};var G,V,J={};function K(){return G||(G=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 v:return\"Profiler\";case h:return\"StrictMode\";case k:return\"Suspense\";case E:return\"SuspenseList\";case x:return\"Activity\"}if(\"object\"===y(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 b:var t=e.render;return(e=e.displayName)||(e=\"\"!==(e=t.displayName||t.name||\"\")?\"ForwardRef(\"+e+\")\":\"ForwardRef\"),e;case w: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\"===y(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 I[e]||(I[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 h,v=t.children;if(void 0!==v)if(o)if(O(v)){for(o=0;o<v.length;o++)c(v[o]);Object.freeze&&Object.freeze(v)}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(v);if(_.call(t,\"key\")){v=n(e);var p=Object.keys(t).filter(function(e){return\"key\"!==e});o=0<p.length?\"{key: someKey, \"+p.join(\": ..., \")+\": ...}\":\"{key: someKey}\",L[v+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,v,p,v),L[v+o]=!0)}if(v=null,void 0!==a&&(r(a),v=\"\"+a),function(e){if(_.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),v=\"\"+t.key),\"key\"in t)for(var g in a={},t)\"key\"!==g&&(a[g]=t[g]);else a=t;return v&&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,v,u,0,null===(h=S.A)?null:h.getOwner(),a,f,m)}function c(e){\"object\"===y(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\"),h=Symbol.for(\"react.strict_mode\"),v=Symbol.for(\"react.profiler\"),p=Symbol.for(\"react.consumer\"),g=Symbol.for(\"react.context\"),b=Symbol.for(\"react.forward_ref\"),k=Symbol.for(\"react.suspense\"),E=Symbol.for(\"react.suspense_list\"),w=Symbol.for(\"react.memo\"),j=Symbol.for(\"react.lazy\"),x=Symbol.for(\"react.activity\"),N=Symbol.for(\"react.client.reference\"),S=u.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,_=Object.prototype.hasOwnProperty,O=Array.isArray,C=console.createTask?console.createTask:function(){return null},I={},z=(u={\"react-stack-bottom-frame\":function(e){return e()}})[\"react-stack-bottom-frame\"].bind(u,o)(),A=C(a(o)),L={};J.Fragment=m,J.jsx=function(e,n,t,r,o){var i=1e4>S.recentlyCreatedOwnerStacks++;return l(e,n,t,!1,0,o,i?Error(\"react-stack-top-frame\"):z,i?C(a(e)):A)},J.jsxs=function(e,n,t,r,o){var i=1e4>S.recentlyCreatedOwnerStacks++;return l(e,n,t,!0,0,o,i?Error(\"react-stack-top-frame\"):z,i?C(a(e)):A)}}()),J}var X=(V||(V=1,\"production\"===process.env.NODE_ENV?F.exports=function(){if(D)return U;D=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 U.Fragment=n,U.jsx=t,U.jsxs=t,U}():F.exports=K()),F.exports);function Y(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\"!==y(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 Z(){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)Y(e,t,n[t]);return e},{})}var Q=[\"merge\"],ee=[\"_stack\"],ne=[\"_ref\",\"data\",\"children\"],te=[\"merge\"],re=[\"_stack\"],ae=[\"lineNumber\",\"totalLines\",\"indentation\",\"data\",\"annotation\"],oe=[\"merge\"],ie=[\"_stack\"],le=[\"value\",\"data\"],ce=function(e){var n=Z(e.merge,p(e,Q)),t=n._stack,r=p(n,ee),a=b(t),o=a[0],i=a.slice(1);if(o)return X.jsx(o,h({_stack:i},r));var l=r._ref;r.data;var c=r.children,s=p(r,ne);return X.jsx(\"pre\",h(h({},s),{},{ref:l,\"data-ch\":!0,children:X.jsx(\"div\",{style:{minWidth:\"fit-content\"},children:c})}))},se=function(e){var n=Z(e.merge,p(e,te)),t=n._stack,r=p(n,re),a=b(t),o=a[0],i=a.slice(1);if(o){var l=o.Component,c=o.annotation;return X.jsx(l,h(h({_stack:i},r),{},{annotation:c}))}r.lineNumber,r.totalLines,r.indentation,r.data,r.annotation;var s=p(r,ae);return X.jsx(\"div\",h({},s))},ue=function(e){var n=Z(e.merge,p(e,oe)),t=n._stack,r=p(n,ie),a=b(t),o=a[0],i=a.slice(1);if(o){var l=o.Component,c=o.annotation;return X.jsx(l,h(h({_stack:i},r),{},{annotation:c}))}var s=r.value;r.data;var u=p(r,le);return X.jsx(\"span\",h(h({},u),{},{children:s}))},de=function(e){var t=n(null),r=e._ref||t;return X.jsx(ce,{merge:e,_ref:r})};function fe(e,n){var t=[n.fromColumn,n.toColumn],r=me(e,t[0]);r=me(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 me(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(he(r)){var a,o=me(r.content,n),i=[],l=[],c=v(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(m(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]]})],m(e.slice(t+1)))}return[].concat(m(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]]})],m(e.slice(t+1)))}function he(e){return void 0!==e.content}function ve(e){var n=e.content,t=e.handlers,r=e.annotationStack;return n.map(function(e,n){return he(e)?X.jsx(ge,{annotationStack:r,handlers:t,group:e},n):e.style?X.jsx(pe,{annotationStack:r,handlers:t,token:e},n):e.value})}function pe(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 X.jsx(ue,{merge:{_stack:r,style:t.style,value:t.value}})}function ge(e){var n,t=e.group,r=e.handlers,a=e.annotationStack,o=t.annotation,i=t.content,l=o.name,c=ve({content:i,handlers:r,annotationStack:[].concat(m(a),[o])}),s=null===(n=r.find(function(e){return e.name===l}))||void 0===n?void 0:n.Inline;return s?X.jsx(s,{annotation:o,children:c}):c}function ye(e,n){var t=[n.fromLineNumber,n.toLineNumber],r=be(e,t[0]);r=be(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 be(e,n){var t=e.findIndex(function(e){return ke(e)&&e.range[0]<n&&n<=e.range[1]});if(-1===t)return e;var r=e[t],a=be(r.lines,n),o=[],i=[];return a.forEach(function(e){e.range[1]<n?o.push(e):i.push(e)}),[].concat(m(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]]})],m(e.slice(t+1)))}function ke(e){return void 0!==e.annotation}function Ee(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 ke(e)?X.jsx(je,{group:e,handlers:t,inlineAnnotations:r,annotationStack:o},e.range[0]):X.jsx(we,{line:e,handlers:t,inlineAnnotations:r,annotationStack:o},e.lineNumber)})}function we(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=fe(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=ve({content:u,handlers:t,annotationStack:o}),m={lineNumber:i,indentation:c,totalLines:l,_stack:d};return X.jsx(se,{merge:m,children:f},i)}function je(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=Ee({linesOrGroups:l,handlers:r,inlineAnnotations:a,annotationStack:[].concat(m(o),[i])});return s?X.jsx(s,{annotation:i,children:u}):u}var xe=[\"code\",\"handlers\"],Ne=t(function(e,n){var t=e.code,r=e.handlers,a=void 0===r?[]:r,o=p(e,xe),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(de);return[].concat(m(n),m(t))}(d),v={_stack:f,_ref:n};return X.jsx(ce,h(h({merge:v,\"data-theme\":l,\"data-lang\":c},o),{},{children:X.jsx(Se,{tokens:i,handlers:d,annotations:s})}))});function Se(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=b(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=g(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 y=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:y}})}(n),o=r.filter(L),i=r.filter(P),l=function(e,n){for(var t=e,r=n.length-1;r>=0;r--)t=ye(t,n[r]);return t}(a,o);return Ee({linesOrGroups:l,handlers:t,inlineAnnotations:i})}function _e(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 Oe=o({highlighted:[]});function Ce(){return i(Oe)}function Ie(n){var t,o=r(v(n.codeblocks)),i=g(o,2),l=i[0],c=i[1],u=r(!0),d=g(u,2),m=d[0],h=d[1];function v(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}):null}).filter(Boolean):[]}a(function(){c(v(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,f().m(function e(){var t;return f().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,ze(n.codeblocks,n.theme||x);case 3:t=e.v,c(t),h(!1);case 4:return e.a(2)}},e)}))}())},[n.codeblocks]);var p=e.createElement(Oe,{value:{highlighted:l||[]}},n.children);return(null===(t=n.codeblocks)||void 0===t?void 0:t.every(function(e){return e.highlighted}))?p:m?e.createElement(_e,null):p}function ze(e,n){return s(this,void 0,void 0,f().m(function t(){return f().w(function(t){for(;;)switch(t.n){case 0:return t.n=1,Promise.all(null==e?void 0:e.map(function(e){return M(e,n)}));case 1:return t.a(2,t.v)}},t)}))}var Ae=\"cwih9s3\";function Le(){return e.createElement(\"xyd-code-loader\",{className:Ae},e.createElement(_e,null))}function Pe(n){return e.createElement(l,{fallback:e.createElement(Le,null)},e.createElement(Ie,{codeblocks:n.codeblocks,theme:n.theme},n.children))}function Te(){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\"}))}Pe.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(se,{merge:n})):null},Pe.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(se,{part:\"line\",merge:n}))},Pe.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)},Pe.Bg=function(n){return e.createElement(\"xyd-code-bg\",{\"data-annotated\":String(!!n.annotation),className:\"\".concat(\"b83ezas\")},n.children)},Pe.Pre=function(n){var t=n.size,r=n.className,a=n.codeblock,o=n.handlers;!function(e){var n=e.tokens[e.tokens.length-1];\"string\"!=typeof n||\" \"!==n&&\"\\n\"!==n||e.tokens.pop()}(a);var i=null;return(n.descriptionHead||n.descriptionContent)&&(i=e.createElement(\"div\",{className:\"c1sbwmbs\"},e.createElement(\"div\",null,n.descriptionIcon?e.createElement(N,{name:n.descriptionIcon,size:16}):e.createElement(Te,null)),e.createElement(\"div\",null,e.createElement(k,{weight:\"bold\"},n.descriptionHead),e.createElement(\"span\",null,n.descriptionContent)))),e.createElement(\"xyd-code-pre\",null,e.createElement(Ne,{part:\"pre\",\"data-size\":t,style:(null==a?void 0:a.style)||(null==a?void 0:a.style),className:\"\".concat(Ae,\" \").concat(r||\"\"),code:a,handlers:o}),i)};var Re={mark:{name:\"mark\",Line:function(n){return e.createElement(Pe.Mark,Object.assign({},n))},Inline:function(n){return e.createElement(Pe.MarkInline,Object.assign({},n))}},bg:{name:\"bg\",Inline:function(n){return e.createElement(Pe.Bg,Object.assign({},n))}},lineNumbers:{name:\"line-numbers\",Line:function(n){n.annotation;var t=u(n,[\"annotation\"]);return e.createElement(Pe.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=u(n,[\"annotation\"]);return e.createElement(e.Fragment,null,e.createElement(\"div\",null,null==t?void 0:t.query),e.createElement(se,{merge:r}))}}};function Me(n){var t=n.text,a=r(!1),o=g(a,2),i=o[0],l=o[1];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),setTimeout(function(){l(!1)},1200)}},i?e.createElement(_,{size:16}):e.createElement(O,{size:16})))}function qe(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),h=g(m,2),v=h[0],p=h[1];return a(function(){p(f)},[f]),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(S.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:v,onValueChange:p},e.createElement($e,{description:t.description,highlighted:t.highlighted}),null===(u=t.highlighted)||void 0===u?void 0:u.map(function(t,r){return e.createElement(S.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 $e(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(S.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(S.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(S.Content,{value:n.meta||n.lang,asChild:!0,key:t},e.createElement(Me,{text:n.value}))})))}var He=o({lines:void 0,scroll:void 0});function Be(n){var t=n.children,r=n.lines,a=n.scroll;return e.createElement(He.Provider,{value:{lines:r,scroll:a}},t)}var We=e.createContext({});function De(n){return e.createElement(Pe,{codeblocks:n.codeblocks,theme:n.theme},e.createElement(Fe,Object.assign({},n)))}function Fe(n){var t,r=Ce().highlighted,a=c(He);if(\"secondary\"===n.kind)return e.createElement(We,{value:{size:n.size,lineNumbers:n.lineNumbers,descriptionHead:n.descriptionHead,descriptionContent:n.descriptionContent,descriptionIcon:n.descriptionIcon}},e.createElement(Pe.Pre,{codeblock:r[0],handlers:[Re.mark,Re.bg,Re.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(We,{value:{size:o,lineNumbers:i,descriptionHead:n.descriptionHead,descriptionContent:n.descriptionContent,descriptionIcon:n.descriptionIcon}},e.createElement(Ue,{description:n.description,highlighted:r,controlByMeta:n.controlByMeta}))}var Ue=qe(function(n){var t=e.useContext(We),r=t.lineNumbers,a=t.size,o=t.descriptionHead,i=t.descriptionContent,l=t.descriptionIcon,c=[Re.mark,Re.bg,Re.diff];return r&&c.push(Re.lineNumbers),e.createElement(Pe.Pre,Object.assign({},n,{descriptionHead:o,descriptionContent:i,descriptionIcon:l,size:a,handlers:c}))});export{Pe as C,Re as a,Le as b,De as c,Ie as d,Be as e,Ce as u,qe as w};\n//# sourceMappingURL=CodeSample-GbqwRbcO.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: #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 position: sticky;\n top: 12px;\n display: flex;\n gap: 32px;\n flex-direction: column;\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\";\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 <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 })\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}","export 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":["i","e","size","t","d","kind","n","o","weight","c","r","children","l","className","m","id","s","onClick","v","as","k","a","createElement","concat","ApiRefItemDefinitionsItem","AtlasContext","createContext","syntaxHighlight","useSyntaxHighlight","context","useContext","Error","ApiRefItem","_ref","reference","hasExamples","_b","examples","_a","groups","length","header","React","$IntroHeader","ApiRefSamples","undefined","$Definitions","_ref2","topNavbar","category","ReferenceCategory","REST","ctx","method","fullPath","$Navbar","label","subtitle","matchSubtitle","path","Fragment","$Title","title","description","$Authorization","_ref3","scopes","cn","part","$Subtitle","$DefinitionBody","definition","properties","map","Code","VariantContext","variant","setVariant","variantToggles","selectedValues","setSelectedValue","variants","_ref4","argDefinition","definitions","GRAPHQL","gqlDefinitions","forEach","meta","find","name","value","push","filter","updatedProperties","prop","matchingVariant","symbolMeta","some","Object","assign","$VariantsProvider","key","$VariantSelects","_ref5","variantMetas","reduce","acc","allMetaNames","metaAcc","_defineProperty","useVariantToggles","toggle","_useState","useState","initial","defaultValue","_useState2","_slicedToArray","setSelectedValues","useCallback","prev","_useState3","findMatchingVariant","_useState4","useEffect","newVariant","Provider","matches","entries","every","_ref6","_ref7","_useContext","index","availableValues","Array","from","Set","Boolean","sort","filteredValues","hasValue","slice","prevToggle","selectedValue","displayValues","onChange","newValue","target","contentTypeKey","currentContentType","isValid","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","range","document","createRange","selectNodeContents","selection","window","getSelection","removeAllRanges","addRange","indexOf","before","substring","match","after","Text","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","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","C","I","this","arguments","w","z","code","annotations","A","RegExp","u","rangeString","query","E","CodeSampleButtonsHost","CodeSampleButtonsContainer","CodeSampleButtonsArrowHost","CodeSampleButtonsArrowIcon","CodeSampleButtonsScrollerHost","CodeSampleButtonsScrollerContainer","CodeSampleButtonsButtonHost","CodeSampleButtonsButtonActive","CodeExampleButtons","activeExample","showLeftArrow","setShowLeftArrow","showRightArrow","setShowRightArrow","scrollContainerRef","useRef","handleScroll","current","_scrollContainerRef$c","scrollLeft","scrollWidth","clientWidth","addEventListener","removeEventListener","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","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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"}