{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "codex-logo",
  "title": "Codex Logo",
  "description": "OpenAI Codex coding agent logo with mono, color, and wordmark variants",
  "dependencies": [],
  "registryDependencies": [],
  "files": [
    {
      "path": "registry/default/blocks/logos/codex-logo/components/logos/codex.tsx",
      "content": "const COLORS = {\n  dark: \"#FFFFFF\",\n  light: \"#000000\",\n};\n\nconst ICON_PATH =\n  \"M8.086.457a6.105 6.105 0 013.046-.415c1.333.153 2.521.72 3.564 1.7a.117.117 0 00.107.029c1.408-.346 2.762-.224 4.061.366l.063.03.154.076c1.357.703 2.33 1.77 2.918 3.198.278.679.418 1.388.421 2.126a5.655 5.655 0 01-.18 1.631.167.167 0 00.04.155 5.982 5.982 0 011.578 2.891c.385 1.901-.01 3.615-1.183 5.14l-.182.22a6.063 6.063 0 01-2.934 1.851.162.162 0 00-.108.102c-.255.736-.511 1.364-.987 1.992-1.199 1.582-2.962 2.462-4.948 2.451-1.583-.008-2.986-.587-4.21-1.736a.145.145 0 00-.14-.032c-.518.167-1.04.191-1.604.185a5.924 5.924 0 01-2.595-.622 6.058 6.058 0 01-2.146-1.781c-.203-.269-.404-.522-.551-.821a7.74 7.74 0 01-.495-1.283 6.11 6.11 0 01-.017-3.064.166.166 0 00.008-.074.115.115 0 00-.037-.064 5.958 5.958 0 01-1.38-2.202 5.196 5.196 0 01-.333-1.589 6.915 6.915 0 01.188-2.132c.45-1.484 1.309-2.648 2.577-3.493.282-.188.55-.334.802-.438.286-.12.573-.22.861-.304a.129.129 0 00.087-.087A6.016 6.016 0 015.635 2.31C6.315 1.464 7.132.846 8.086.457zm-.804 7.85a.848.848 0 00-1.473.842l1.694 2.965-1.688 2.848a.849.849 0 001.46.864l1.94-3.272a.849.849 0 00.007-.854l-1.94-3.393zm5.446 6.24a.849.849 0 000 1.695h4.848a.849.849 0 000-1.696h-4.848z\";\n\nconst TEXT_PATH =\n  \"M79.915 14.964l-5.53-7.548h3.33l3.88 5.256 3.88-5.256h3.24l-5.5 7.486 5.683 7.792h-3.361l-4.003-5.5-4.064 5.5H74.2l5.715-7.73zM66.368 23c-1.345 0-2.567-.326-3.667-.978-1.08-.652-1.935-1.579-2.567-2.78-.631-1.203-.947-2.608-.947-4.217 0-1.59.316-2.974.947-4.156.652-1.202 1.518-2.129 2.597-2.78 1.08-.652 2.272-.978 3.575-.978 1.813 0 3.33.55 4.553 1.65 1.222 1.1 1.956 2.597 2.2 4.491.082.693.112 1.477.092 2.353H62.09c.06 1.548.489 2.76 1.283 3.636.815.876 1.793 1.314 2.933 1.314h.184c.855 0 1.599-.224 2.23-.672.632-.448 1.06-1.06 1.284-1.833h2.933a6.147 6.147 0 01-2.322 3.575C69.433 22.54 68.018 23 66.368 23zm3.819-9.687c-.082-1.16-.469-2.077-1.161-2.75-.693-.692-1.558-1.038-2.597-1.038h-.214c-.978 0-1.844.315-2.597.947-.734.611-1.212 1.558-1.437 2.841h8.006zM47.834 23c-1.324 0-2.516-.326-3.575-.978-1.039-.652-1.854-1.579-2.444-2.78-.591-1.202-.887-2.598-.887-4.187 0-1.588.306-2.984.917-4.186.611-1.201 1.446-2.128 2.506-2.78 1.08-.652 2.281-.978 3.605-.978 1.08 0 2.047.224 2.903.672.855.449 1.497 1.019 1.925 1.711V1.306h2.903v21.388h-2.903v-2.108c-.408.672-1.06 1.242-1.956 1.711-.896.469-1.894.703-2.994.703zm.58-2.475c.856 0 1.62-.234 2.292-.703.672-.468 1.192-1.11 1.558-1.925.387-.835.58-1.782.58-2.841 0-1.06-.193-1.997-.58-2.812-.366-.835-.886-1.487-1.558-1.955a3.911 3.911 0 00-2.292-.703h-.183c-1.304 0-2.363.51-3.178 1.528-.794 1.018-1.191 2.332-1.191 3.941 0 1.61.397 2.924 1.191 3.942.815 1.019 1.874 1.528 3.178 1.528h.183zM31.022 23c-1.406 0-2.679-.337-3.82-1.009a7.367 7.367 0 01-2.688-2.841c-.652-1.223-.978-2.587-.978-4.095 0-1.507.326-2.862.978-4.064.651-1.222 1.548-2.17 2.688-2.841 1.141-.693 2.414-1.04 3.82-1.04 1.405 0 2.668.347 3.789 1.04 1.14.672 2.037 1.62 2.688 2.841.652 1.202.978 2.557.978 4.064 0 1.508-.326 2.872-.977 4.095a7.367 7.367 0 01-2.69 2.841C33.69 22.663 32.428 23 31.023 23zm.06-2.476c.857 0 1.62-.224 2.293-.672.672-.468 1.201-1.11 1.589-1.925.386-.835.58-1.792.58-2.872 0-1.08-.194-2.027-.58-2.841-.388-.836-.917-1.477-1.59-1.925a3.911 3.911 0 00-2.291-.703H30.9c-1.304 0-2.373.51-3.209 1.528-.814.998-1.222 2.312-1.222 3.941 0 1.63.407 2.954 1.222 3.972.835.998 1.905 1.497 3.209 1.497h.183zM12.053 23c-2.037 0-3.82-.469-5.348-1.406-1.507-.957-2.668-2.271-3.483-3.941S2 14.098 2 12c0-2.098.407-3.982 1.222-5.653.835-1.67 2.017-2.974 3.545-3.91C8.294 1.478 10.057 1 12.053 1c1.609 0 3.055.316 4.338.947 1.304.611 2.363 1.477 3.178 2.597.815 1.1 1.304 2.374 1.467 3.82h-3.117c-.244-1.365-.876-2.465-1.894-3.3-1.019-.856-2.302-1.283-3.85-1.283h-.245c-1.385 0-2.597.356-3.636 1.069-1.039.713-1.833 1.69-2.383 2.933-.55 1.243-.825 2.648-.825 4.217 0 1.568.275 2.974.825 4.216.55 1.243 1.344 2.22 2.383 2.934 1.04.713 2.251 1.07 3.636 1.07h.245c1.548 0 2.831-.418 3.85-1.254 1.039-.855 1.68-1.976 1.925-3.36h3.086c-.184 1.446-.683 2.729-1.497 3.85-.795 1.12-1.844 1.996-3.148 2.627-1.303.611-2.75.917-4.338.917z\";\n\nconst COLOR_ICON_PATH =\n  \"M9.064 3.344a4.578 4.578 0 012.285-.312c1 .115 1.891.54 2.673 1.275.01.01.024.017.037.021a.09.09 0 00.043 0 4.55 4.55 0 013.046.275l.047.022.116.057a4.581 4.581 0 012.188 2.399c.209.51.313 1.041.315 1.595a4.24 4.24 0 01-.134 1.223.123.123 0 00.03.115c.594.607.988 1.33 1.183 2.17.289 1.425-.007 2.71-.887 3.854l-.136.166a4.548 4.548 0 01-2.201 1.388.123.123 0 00-.081.076c-.191.551-.383 1.023-.74 1.494-.9 1.187-2.222 1.846-3.711 1.838-1.187-.006-2.239-.44-3.157-1.302a.107.107 0 00-.105-.024c-.388.125-.78.143-1.204.138a4.441 4.441 0 01-1.945-.466 4.544 4.544 0 01-1.61-1.335c-.152-.202-.303-.392-.414-.617a5.81 5.81 0 01-.37-.961 4.582 4.582 0 01-.014-2.298.124.124 0 00.006-.056.085.085 0 00-.027-.048 4.467 4.467 0 01-1.034-1.651 3.896 3.896 0 01-.251-1.192 5.189 5.189 0 01.141-1.6c.337-1.112.982-1.985 1.933-2.618.212-.141.413-.251.601-.33.215-.089.43-.164.646-.227a.098.098 0 00.065-.066 4.51 4.51 0 01.829-1.615 4.535 4.535 0 011.837-1.388zm3.482 10.565a.637.637 0 000 1.272h3.636a.637.637 0 100-1.272h-3.636zM8.462 9.23a.637.637 0 00-1.106.631l1.272 2.224-1.266 2.136a.636.636 0 101.095.649l1.454-2.455a.636.636 0 00.005-.64L8.462 9.23z\";\n\nfunction GradientDef({ id }: { id: string }) {\n  return (\n    <defs>\n      <linearGradient\n        gradientUnits=\"userSpaceOnUse\"\n        id={id}\n        x1=\"12\"\n        x2=\"12\"\n        y1=\"3\"\n        y2=\"21\"\n      >\n        <stop stopColor=\"#B1A7FF\" />\n        <stop offset=\".5\" stopColor=\"#7A9DFF\" />\n        <stop offset=\"1\" stopColor=\"#3941FF\" />\n      </linearGradient>\n    </defs>\n  );\n}\n\nexport function CodexLogo({\n  className,\n  variant = \"icon\",\n  mode = \"dark\",\n}: {\n  className?: string;\n  variant?: \"icon\" | \"icon-color\" | \"wordmark\" | \"logo\" | \"logo-color\";\n  mode?: \"dark\" | \"light\";\n}) {\n  const color = COLORS[mode];\n\n  if (variant === \"icon\") {\n    return (\n      <svg\n        role=\"img\"\n        viewBox=\"0 0 24 24\"\n        xmlns=\"http://www.w3.org/2000/svg\"\n        className={className}\n        fillRule=\"evenodd\"\n        clipRule=\"evenodd\"\n      >\n        <title>Codex</title>\n        <path d={ICON_PATH} fill={color} />\n      </svg>\n    );\n  }\n\n  if (variant === \"icon-color\") {\n    return (\n      <svg\n        role=\"img\"\n        viewBox=\"3 3 18 18\"\n        xmlns=\"http://www.w3.org/2000/svg\"\n        className={className}\n      >\n        <title>Codex</title>\n        <GradientDef id=\"codex-icon-gradient\" />\n        <path d={COLOR_ICON_PATH} fill=\"url(#codex-icon-gradient)\" />\n      </svg>\n    );\n  }\n\n  if (variant === \"wordmark\") {\n    return (\n      <svg\n        role=\"img\"\n        viewBox=\"0 0 91 24\"\n        xmlns=\"http://www.w3.org/2000/svg\"\n        className={className}\n        fillRule=\"evenodd\"\n        clipRule=\"evenodd\"\n      >\n        <title>Codex</title>\n        <path d={TEXT_PATH} fill={color} />\n      </svg>\n    );\n  }\n\n  if (variant === \"logo-color\") {\n    return (\n      <svg\n        role=\"img\"\n        viewBox=\"0 0 120 24\"\n        xmlns=\"http://www.w3.org/2000/svg\"\n        className={className}\n      >\n        <title>Codex</title>\n        <defs>\n          <linearGradient\n            gradientUnits=\"userSpaceOnUse\"\n            id=\"codex-logo-gradient\"\n            x1=\"12\"\n            x2=\"12\"\n            y1=\"0\"\n            y2=\"24\"\n          >\n            <stop stopColor=\"#B1A7FF\" />\n            <stop offset=\".5\" stopColor=\"#7A9DFF\" />\n            <stop offset=\"1\" stopColor=\"#3941FF\" />\n          </linearGradient>\n        </defs>\n        <g transform=\"translate(-4, -4) scale(1.333)\">\n          <path d={COLOR_ICON_PATH} fill=\"url(#codex-logo-gradient)\" />\n        </g>\n        <path d={TEXT_PATH} fill={color} transform=\"translate(29, 0)\" />\n      </svg>\n    );\n  }\n\n  return (\n    <svg\n      role=\"img\"\n      viewBox=\"0 0 120 24\"\n      xmlns=\"http://www.w3.org/2000/svg\"\n      className={className}\n      fillRule=\"evenodd\"\n      clipRule=\"evenodd\"\n    >\n      <title>Codex</title>\n      <path d={ICON_PATH} fill={color} />\n      <path d={TEXT_PATH} fill={color} transform=\"translate(29, 0)\" />\n    </svg>\n  );\n}\n",
      "type": "registry:component"
    }
  ],
  "meta": {
    "hasVariants": true,
    "variants": [
      "icon",
      "icon-color",
      "wordmark",
      "logo",
      "logo-color"
    ],
    "variantTypes": {
      "base": [
        "icon",
        "icon-color",
        "wordmark",
        "logo",
        "logo-color"
      ],
      "modes": [
        "dark",
        "light"
      ]
    }
  },
  "docs": "OpenAI Codex logo with 5 base variants (icon mono, icon color with gradient, wordmark, logo combine, logo combine color) and 2 modes (dark, light) = 10 total combinations. Features purple-to-blue gradient for color variants.",
  "categories": [
    "AI",
    "logo",
    "brand"
  ],
  "type": "registry:ui"
}