Files
better-auth/docs/components/icons/plugins.tsx
T

555 lines
25 KiB
TypeScript

import {
Book,
BotIcon,
FileBoxIcon,
FlaskConical,
Key,
KeyRound,
Mail,
Mailbox,
Phone,
ScanFace,
UserCircle,
UserSquare2,
Users2,
Zap,
} from "lucide-react";
export const pluginIcons = {
plugins2FA: () => <ScanFace className="w-4 h-4" />,
pluginsUsername: () => <UserSquare2 className="w-4 h-4" />,
pluginsAnonymous: () => <UserCircle className="w-4 h-4" />,
pluginsPhoneNumber: () => <Phone className="w-4 h-4" />,
pluginsMagicLink: () => <Mailbox className="w-4 h-4" />,
pluginsEmailOTP: () => <Mail className="w-4 h-4" />,
pluginsPasskey: () => (
<svg
xmlns="http://www.w3.org/2000/svg"
width="1.2em"
height="1.2em"
viewBox="0 0 24 24"
>
<path
className="fill-foreground"
d="M3.25 9.65q-.175-.125-.213-.312t.113-.388q1.55-2.125 3.888-3.3t4.987-1.175q2.65 0 5 1.138T20.95 8.9q.175.225.113.4t-.213.3q-.15.125-.35.113t-.35-.213q-1.375-1.95-3.537-2.987t-4.588-1.038q-2.425 0-4.55 1.038T3.95 9.5q-.15.225-.35.25t-.35-.1m11.6 12.325q-2.6-.65-4.25-2.588T8.95 14.65q0-1.25.9-2.1t2.175-.85q1.275 0 2.175.85t.9 2.1q0 .825.625 1.388t1.475.562q.85 0 1.45-.562t.6-1.388q0-2.9-2.125-4.875T12.05 7.8q-2.95 0-5.075 1.975t-2.125 4.85q0 .6.113 1.5t.537 2.1q.075.225-.012.4t-.288.25q-.2.075-.387-.012t-.263-.288q-.375-.975-.537-1.937T3.85 14.65q0-3.325 2.413-5.575t5.762-2.25q3.375 0 5.8 2.25t2.425 5.575q0 1.25-.887 2.087t-2.163.838q-1.275 0-2.187-.837T14.1 14.65q0-.825-.612-1.388t-1.463-.562q-.85 0-1.463.563T9.95 14.65q0 2.425 1.438 4.05t3.712 2.275q.225.075.3.25t.025.375q-.05.175-.2.3t-.375.075M6.5 4.425q-.2.125-.4.063t-.3-.263q-.1-.2-.05-.362T6 3.575q1.4-.75 2.925-1.15t3.1-.4q1.6 0 3.125.388t2.95 1.112q.225.125.263.3t-.038.35q-.075.175-.25.275t-.425-.025q-1.325-.675-2.738-1.037t-2.887-.363q-1.45 0-2.85.338T6.5 4.425m2.95 17.2q-1.475-1.55-2.262-3.162T6.4 14.65q0-2.275 1.65-3.838t3.975-1.562q2.325 0 4 1.563T17.7 14.65q0 .225-.137.363t-.363.137q-.2 0-.35-.137t-.15-.363q0-1.875-1.388-3.137t-3.287-1.263q-1.9 0-3.262 1.263T7.4 14.65q0 2.025.7 3.438t2.05 2.837q.15.15.15.35t-.15.35q-.15.15-.35.15t-.35-.15m7.55-1.7q-2.225 0-3.863-1.5T11.5 14.65q0-.2.138-.35t.362-.15q.225 0 .363.15t.137.35q0 1.875 1.35 3.075t3.15 1.2q.15 0 .425-.025t.575-.075q.225-.05.388.063t.212.337q.05.2-.075.35t-.325.2q-.45.125-.787.138t-.413.012"
></path>
</svg>
),
pluginsGenericOAuth: () => (
<svg
xmlns="http://www.w3.org/2000/svg"
width="1.2em"
height="1.2em"
viewBox="0 0 24 24"
>
<g
fill="none"
stroke="currentColor"
strokeLinecap="round"
strokeLinejoin="round"
strokeWidth="2"
>
<path d="M2 12a10 10 0 1 0 20 0a10 10 0 1 0-20 0"></path>
<path d="M12.556 6c.65 0 1.235.373 1.508.947l2.839 7.848a1.646 1.646 0 0 1-1.01 2.108a1.673 1.673 0 0 1-2.068-.851L13.365 15h-2.73l-.398.905A1.67 1.67 0 0 1 8.26 16.95l-.153-.047a1.647 1.647 0 0 1-1.056-1.956l2.824-7.852a1.66 1.66 0 0 1 1.409-1.087z"></path>
</g>
</svg>
),
pluginsOneTap: () => (
<svg
xmlns="http://www.w3.org/2000/svg"
width="1.2em"
height="1.2em"
viewBox="0 0 14 14"
>
<path
fill="currentColor"
fillRule="evenodd"
d="M3.254 4.361a2.861 2.861 0 1 1 5.647.651a.75.75 0 0 0 1.461.34a4.361 4.361 0 1 0-8.495 0a.75.75 0 0 0 1.461-.34a3 3 0 0 1-.074-.651m1.63 5.335V4.26a1.26 1.26 0 0 1 2.518 0v4.077h2.464a2.573 2.573 0 0 1 2.573 2.573V13a1 1 0 0 1-1 1H4.83a1 1 0 0 1-.823-.433l-.764-1.11a1.715 1.715 0 0 1 1.097-2.66l.543-.102Z"
clipRule="evenodd"
></path>
</svg>
),
pluginsSIWE: () => (
<svg
xmlns="http://www.w3.org/2000/svg"
width="1.2em"
height="1.2em"
viewBox="0 0 24 24"
>
<path
fill="currentColor"
d="m11.944 17.97-7.364-4.35 7.363 10.38 7.37-10.38-7.372 4.35zm.112-17.97-7.366 12.223 7.365 4.354 7.365-4.35z"
/>
</svg>
),
pluginsAdmin: () => (
<svg
xmlns="http://www.w3.org/2000/svg"
width="1.2em"
height="1.2em"
viewBox="0 0 24 24"
>
<path
className="fill-current"
d="M12 23C6.443 21.765 2 16.522 2 11V5l10-4l10 4v6c0 5.524-4.443 10.765-10 12M4 6v5a10.58 10.58 0 0 0 8 10a10.58 10.58 0 0 0 8-10V6l-8-3Z"
></path>
<circle cx="12" cy="8.5" r="2.5" className="fill-current"></circle>
<path
className="fill-current"
d="M7 15a5.78 5.78 0 0 0 5 3a5.78 5.78 0 0 0 5-3c-.025-1.896-3.342-3-5-3c-1.667 0-4.975 1.104-5 3"
></path>
</svg>
),
pluginsAgentAuth: () => <BotIcon className="size-4" />,
pluginsAPIKey: () => <KeyRound className="size-4" />,
pluginsAPIKeyAdvanced: () => <Zap className="size-4" />,
pluginsAPIKeyReference: () => (
<svg
xmlns="http://www.w3.org/2000/svg"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
strokeWidth="2"
strokeLinecap="round"
strokeLinejoin="round"
className="size-4"
>
<path d="M20 11v6" />
<path d="M20 13h2" />
<path d="M3 21v-2a4 4 0 0 1 4-4h6a4 4 0 0 1 2.072.578" />
<circle cx="10" cy="7" r="4" />
<circle cx="20" cy="19" r="2" />
</svg>
),
pluginsMCP: () => (
<svg
width="1.2em"
height="1.2em"
viewBox="0 0 156 173"
fill="none"
xmlns="http://www.w3.org/2000/svg"
>
<path
d="M6 80.9117L73.8822 13.0294C83.255 3.65685 98.451 3.65685 107.823 13.0294C117.196 22.4019 117.196 37.598 107.823 46.9706L56.5581 98.2359"
stroke="currentColor"
strokeWidth="12"
strokeLinecap="round"
/>
<path
d="M57.2652 97.5289L107.823 46.9706C117.196 37.598 132.392 37.598 141.765 46.9706L142.118 47.324C151.491 56.6966 151.491 71.8926 142.118 81.2651L80.7248 142.659C77.6006 145.783 77.6006 150.848 80.7248 153.972L93.331 166.579"
stroke="currentColor"
strokeWidth="12"
strokeLinecap="round"
/>
<path
d="M90.853 29.9999L40.6482 80.2045C31.2756 89.5768 31.2756 104.773 40.6482 114.146C50.0208 123.518 65.2167 123.518 74.5893 114.146L124.794 63.941"
stroke="currentColor"
strokeWidth="12"
strokeLinecap="round"
/>
</svg>
),
pluginsCIMD: () => <FileBoxIcon className="size-4" />,
pluginsOrganization: () => <Users2 className="w-4 h-4" />,
pluginsOIDCProvider: () => (
<svg
xmlns="http://www.w3.org/2000/svg"
width="1.2em"
height="1.2em"
viewBox="0 0 32 32"
>
<path
fill="currentColor"
d="M16 2a8 8 0 1 0 8 8a8.01 8.01 0 0 0-8-8m5.91 7h-2.438a15.3 15.3 0 0 0-.791-4.36A6.01 6.01 0 0 1 21.91 9m-5.888 6.999h-.008c-.38-.12-1.309-1.821-1.479-4.999h2.93c-.17 3.176-1.094 4.877-1.443 4.999M14.535 9c.17-3.176 1.094-4.877 1.443-4.999h.008c.38.12 1.309 1.821 1.479 4.999zM13.32 4.64A15.3 15.3 0 0 0 12.528 9H10.09a6.01 6.01 0 0 1 3.23-4.36M10.09 11h2.437a15.3 15.3 0 0 0 .792 4.36A6.01 6.01 0 0 1 10.09 11m8.59 4.36a15.3 15.3 0 0 0 .792-4.36h2.438a6.01 6.01 0 0 1-3.23 4.36M28 30H4a2 2 0 0 1-2-2v-6a2 2 0 0 1 2-2h24a2 2 0 0 1 2 2v6a2 2 0 0 1-2 2M4 22v6h24v-6z"
></path>
<circle cx="7" cy="25" r="1" fill="currentColor"></circle>
</svg>
),
pluginsOAuthProvider: () => (
<svg
width="1.2em"
height="1.2em"
viewBox="0 0 32 32"
fill="none"
xmlns="http://www.w3.org/2000/svg"
>
<path
d="M5.58932 10H25.0587M5.58932 15.3333H25.0587M11.3333 3.8V16.6667M19.3333 3.8V16.6667M24.588 16.6667L24.8872 15.819C25.6073 13.7791 25.6074 11.5542 24.8875 9.51427C24.0261 7.07316 22.203 5.09102 19.8423 4.02882L19.5388 3.89227C16.8643 2.68886 13.8024 2.68886 11.1278 3.89227L10.8243 4.02882C8.46365 5.09102 6.64058 7.07316 5.77913 9.51427C5.05924 11.5542 5.05934 13.7791 5.77942 15.819L6.07866 16.6667M27.1926 20.5963C28.096 21.048 28.6667 21.9714 28.6667 22.9814V23.0186C28.6667 24.0286 28.096 24.952 27.1926 25.4037C26.4418 25.7791 25.5582 25.7791 24.8074 25.4037C23.904 24.952 23.3333 24.0286 23.3333 23.0186V22.9814C23.3333 21.9714 23.904 21.048 24.8074 20.5963C25.5582 20.2209 26.4418 20.2209 27.1926 20.5963ZM16.5259 20.5963C17.4293 21.048 18 21.9714 18 22.9814V23.0186C18 24.0286 17.4293 24.952 16.5259 25.4037C15.7752 25.7791 14.8915 25.7791 14.1408 25.4037C13.2373 24.952 12.6667 24.0286 12.6667 23.0186V22.9814C12.6667 21.9714 13.2373 21.048 14.1408 20.5963C14.8915 20.2209 15.7752 20.2209 16.5259 20.5963ZM22 29.7836C22 30.6395 22.6938 31.3333 23.5497 31.3333H28.4503C29.3062 31.3333 30 30.6395 30 29.7836C30 29.1166 29.5732 28.5244 28.9403 28.3135L27.2649 27.755C26.4438 27.4813 25.5561 27.4813 24.7351 27.755L23.0596 28.3135C22.4268 28.5244 22 29.1166 22 29.7836ZM11.3333 29.7836C11.3333 30.6395 12.0271 31.3333 12.883 31.3333H17.7836C18.6395 31.3333 19.3333 30.6395 19.3333 29.7836C19.3333 29.1166 18.9065 28.5244 18.2737 28.3135L16.5982 27.755C15.7772 27.4813 14.8895 27.4813 14.0684 27.755L12.393 28.3135C11.7602 28.5244 11.3333 29.1166 11.3333 29.7836ZM0.666656 29.7836C0.666656 30.6395 1.36048 31.3333 2.21636 31.3333H7.11695C7.97283 31.3333 8.66666 30.6395 8.66666 29.7836C8.66666 29.1166 8.23982 28.5244 7.60701 28.3135L5.93157 27.755C5.1105 27.4813 4.22281 27.4813 3.40174 27.755L1.7263 28.3135C1.09349 28.5244 0.666656 29.1166 0.666656 29.7836ZM3.47409 20.5963C4.22483 20.2209 5.10849 20.2209 5.85923 20.5963C6.76265 21.048 7.33332 21.9714 7.33332 22.9814V23.0186C7.33332 24.0286 6.76265 24.952 5.85923 25.4037C5.10849 25.7791 4.22483 25.7791 3.47409 25.4037C2.57066 24.952 1.99999 24.0286 1.99999 23.0186V22.9814C1.99999 21.9714 2.57066 21.048 3.47409 20.5963Z"
stroke="currentColor"
strokeWidth="1.33333"
strokeMiterlimit="10"
strokeLinecap="round"
strokeLinejoin="round"
/>
</svg>
),
pluginsSSO: () => (
<svg
xmlns="http://www.w3.org/2000/svg"
width="1.2em"
height="1.2em"
viewBox="0 0 32 32"
>
<path
fill="currentColor"
d="M8 8h2v4H8zm0 6h2v4H8zm6-6h2v4h-2zm0 6h2v4h-2zm-6 6h2v4H8zm6 0h2v4h-2z"
></path>
<path
fill="currentColor"
d="M30 14a2 2 0 0 0-2-2h-6V4a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2v26h28ZM4 4h16v24H4Zm18 24V14h6v14Z"
></path>
</svg>
),
pluginsSCIM: () => (
<svg
xmlns="http://www.w3.org/2000/svg"
width="1.2em"
height="1.2em"
viewBox="0 0 24 24"
>
<path
fill="currentColor"
d="M2 19.5v-2h1.425q-1.175-1.05-1.8-2.488T1 12q0-2.675 1.675-4.737T7 4.65V6.7q-1.8.5-2.9 1.963T3 11.975q0 1.25.525 2.338T5 16.2v-1.7h2v5zm8-.15V17.3q1.8-.5 2.9-1.963t1.1-3.312q0-1.25-.525-2.337T12 7.8v1.7h-2v-5h5v2h-1.425q1.175 1.05 1.8 2.488T16 12q0 2.675-1.675 4.738T10 19.35m9.5.65L16 16.5l1.425-1.4l1.075 1.075V4h2v12.2l1.1-1.1l1.4 1.4z"
/>
</svg>
),
pluginsSCIMGroupsAndRoles: () => <Users2 className="size-4" />,
pluginsSCIMReference: () => <Book className="size-4" />,
pluginsBearer: () => <Key className="w-4 h-4" />,
pluginsDeviceAuthorization: () => (
<svg
xmlns="http://www.w3.org/2000/svg"
width="1.2em"
height="1.2em"
viewBox="0 0 24 24"
>
<path
fill="currentColor"
d="M20 18c1.1 0 1.99-.9 1.99-2L22 6c0-1.1-.9-2-2-2H4c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2H0v2h24v-2zM4 6h16v10H4z"
/>
</svg>
),
pluginsCaptcha: () => (
<svg
xmlns="http://www.w3.org/2000/svg"
width="1.2em"
height="1.2em"
viewBox="0 0 48 48"
>
<path
fill="currentColor"
d="M38.023 18.932A6.3 6.3 0 0 0 42.505 13c0-4.056-2.9-7-8.238-7a14.3 14.3 0 0 0-6.829 1.665.369.369 0 0 0-.171.383v2.732c0 .171.043.212.256.129A11.552 11.552 0 0 1 33.669 9.2c3.756 0 5.336 1.834 5.336 4.224 0 2.732-2.3 4.183-6.061 4.183h-1.58c-.213 0-.256.129-.256.3V20.6c0 .171.086.256.3.256H33.2c4.225 0 7.042 1.537 7.042 4.951 0 2.691-1.878 4.993-6.487 4.993a18.98 18.98 0 0 1-6.655-1.748 10.11 10.11 0 0 0 .882-4.107c0-6.281-4.631-8.511-8.6-8.511A16.789 16.789 0 0 0 12 18.379V3a1 1 0 0 0-1-1l-1.99.007a1 1 0 0 0-.795.4L4.4 5.453a2 2 0 0 0-.4 1.2v.331a1 1 0 0 0 1 1h3v19a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1v-4.91a14.046 14.046 0 0 1 6.709-2.012c3.4 0 5.469 1.661 5.469 5 0 2.566-1.252 5.06-5.065 9.273a65.711 65.711 0 0 1-6.849 6.719.666.666 0 0 0-.226.558v1.891c0 .43.283.492.451.492H28.2c.317 0 .416-.113.531-.4l.627-2.6a.362.362 0 0 0-.046-.324.479.479 0 0 0-.4-.137h-5.795c-3.224 0-3.886 0-5.152.082a40.482 40.482 0 0 0 4.957-5.367c1-1.222 1.855-2.33 2.586-3.4A22.187 22.187 0 0 0 33.8 34c5.763 0 10.074-2.945 10.074-8.2-.003-4.395-3.374-6.315-5.851-6.868Z"
/>
</svg>
),
pluginsHaveIBeenPwned: () => <p className="text-xs">';--</p>,
pluginsI18n: () => (
<svg
xmlns="http://www.w3.org/2000/svg"
width="1.2em"
height="1.2em"
viewBox="0 0 24 24"
>
<path
fill="currentColor"
d="m12.87 15.07l-2.54-2.51l.03-.03A17.5 17.5 0 0 0 14.07 6H17V4h-7V2H8v2H1v2h11.17C11.5 7.92 10.44 9.75 9 11.35C8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5l3.11 3.11zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2zm-2.62 7l1.62-4.33L19.12 17z"
/>
</svg>
),
pluginsLastLoginMethod: () => (
<svg
xmlns="http://www.w3.org/2000/svg"
width="1.2em"
height="1.2em"
viewBox="0 0 256 256"
>
<path
fill="currentColor"
d="m141.66 133.66l-40 40A8 8 0 0 1 88 168v-32H24a8 8 0 0 1 0-16h64V88a8 8 0 0 1 13.66-5.66l40 40a8 8 0 0 1 0 11.32M200 32h-64a8 8 0 0 0 0 16h56v160h-56a8 8 0 0 0 0 16h64a8 8 0 0 0 8-8V40a8 8 0 0 0-8-8"
/>
</svg>
),
pluginsMultiSession: () => (
<svg
xmlns="http://www.w3.org/2000/svg"
width="1.2em"
height="1.2em"
viewBox="0 0 24 24"
>
<path
fill="currentColor"
d="M16.885 13.616q-.82 0-1.41-.591t-.59-1.41t.59-1.41t1.41-.59q.819 0 1.41.59q.59.591.59 1.41q0 .82-.59 1.41q-.591.59-1.41.59m-4.5 5v-.9q0-.465.232-.843q.232-.379.66-.545q.845-.356 1.748-.534q.904-.177 1.86-.177q.916 0 1.821.177q.905.178 1.786.534q.428.166.66.545q.232.378.232.844v.9zm-2.77-7.23q-1.237 0-2.118-.882t-.881-2.118t.88-2.12t2.12-.88t2.118.88t.882 2.12t-.882 2.118t-2.118.882m-7 7.23V16.97q0-.648.357-1.192q.358-.544.973-.804q1.327-.673 2.756-1.015t2.914-.342q.605 0 1.211.063t1.212.167l-.427.446l-.427.447q-.393-.077-.785-.1t-.784-.023q-1.354 0-2.675.292t-2.518.942q-.327.183-.567.456t-.24.663v.646h6v1zm7-8.23q.825 0 1.412-.588t.588-1.412t-.588-1.413t-1.412-.587t-1.413.587t-.587 1.413t.587 1.412t1.413.588"
></path>
</svg>
),
pluginsOAuthProxy: () => (
<svg
xmlns="http://www.w3.org/2000/svg"
width="1.2em"
height="1.2em"
viewBox="0 0 32 32"
>
<path
fill="currentColor"
d="M6 30h20a2 2 0 0 0 2-2v-6a2 2 0 0 0-2-2H6a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2m0-8h20v6H6z"
></path>
<circle cx="9" cy="25" r="1" fill="currentColor"></circle>
<path
fill="currentColor"
d="m26 2l-1.41 1.41L27.17 6h-4.855A6.984 6.984 0 0 0 9.08 10H4.83l2.58-2.59L6 6l-5 5l5 5l1.41-1.41L4.83 12h4.855A6.984 6.984 0 0 0 22.92 8h4.25l-2.58 2.59L26 12l5-5Zm-5 7a4.983 4.983 0 0 1-8.974 3H16v-2h-4.899a4.985 4.985 0 0 1 8.874-4H16v2h4.899A5 5 0 0 1 21 9"
></path>
</svg>
),
pluginsOneTimeToken: () => (
<svg
xmlns="http://www.w3.org/2000/svg"
width="1em"
height="1em"
viewBox="0 0 14 14"
>
<path
fill="none"
stroke="currentColor"
strokeLinecap="round"
strokeLinejoin="round"
d="M.5 7A6.5 6.5 0 1 0 7 .5V7Zm2.96-3.54L2.4 2.4"
></path>
</svg>
),
pluginsOpenAPI: () => (
<svg
xmlns="http://www.w3.org/2000/svg"
width="1.1em"
height="1.1em"
viewBox="0 0 32 32"
>
<path
fill="currentColor"
d="M16 0C7.177 0 0 7.177 0 16s7.177 16 16 16s16-7.177 16-16S24.823 0 16 0m0 1.527c7.995 0 14.473 6.479 14.473 14.473S23.994 30.473 16 30.473S1.527 23.994 1.527 16S8.006 1.527 16 1.527m-4.839 6.296c-.188-.005-.375 0-.568.005c-1.307.079-2.093.693-2.312 1.964c-.151.891-.125 1.796-.188 2.692a9 9 0 0 1-.156 1.38c-.177.813-.525 1.068-1.353 1.109q-.167.018-.324.057v1.948c1.5.073 1.704.605 1.823 2.172c.048.573-.015 1.147.021 1.719q.042.816.208 1.6c.344 1.432 1.745 1.911 3.433 1.624V22.38c-.272 0-.511.005-.74 0c-.579-.016-.792-.161-.844-.713c-.079-.713-.057-1.437-.099-2.156c-.089-1.339-.235-2.651-1.541-3.5c.672-.495 1.161-1.084 1.312-1.865c.109-.547.177-1.099.219-1.651s-.025-1.12.021-1.667c.077-.885.135-1.249 1.197-1.213c.161 0 .317-.021.495-.036V7.834c-.213 0-.411-.005-.604-.011m10.126.016a5.4 5.4 0 0 0-1.089.079v1.697c.329 0 .584 0 .833.005c.439.005.772.177.813.661c.041.443.041.891.083 1.339c.089.896.136 1.796.292 2.677c.136.724.636 1.265 1.255 1.713c-1.088.729-1.411 1.776-1.463 2.953c-.032.801-.052 1.615-.093 2.427c-.037.74-.297.979-1.043.995c-.208.011-.411.027-.64.041v1.74c.432 0 .833.027 1.235 0c1.239-.073 1.995-.677 2.239-1.885a15 15 0 0 0 .183-2.005c.041-.615.036-1.235.099-1.844c.093-.953.532-1.349 1.484-1.411q.133-.018.267-.057v-1.953c-.161-.021-.271-.037-.391-.041c-.713-.032-1.068-.272-1.251-.948a6.6 6.6 0 0 1-.197-1.324c-.052-.823-.047-1.656-.099-2.479c-.109-1.588-1.063-2.339-2.516-2.38zm-9.188 7.036c-1.432 0-1.536 2.109-.115 2.245h.079a1.103 1.103 0 0 0 1.167-1.037v-.061a1.13 1.13 0 0 0-1.104-1.147zm3.88 0a1.083 1.083 0 0 0-1.115 1.043c0 .036 0 .067.005.104c0 .672.459 1.099 1.147 1.099c.677 0 1.104-.443 1.104-1.136c-.005-.672-.459-1.115-1.141-1.109zm3.948 0a1.15 1.15 0 0 0-1.167 1.115c0 .625.505 1.131 1.136 1.131h.011c.567.099 1.135-.448 1.172-1.104c.031-.609-.521-1.141-1.152-1.141z"
></path>
</svg>
),
pluginsJWT: () => (
<svg
xmlns="http://www.w3.org/2000/svg"
width="1em"
height="1em"
viewBox="0 0 256 257"
>
<path
className="opacity-70 fill-current"
d="M147.386 69.071L147.129 0h-38.515l.257 69.071l19.257 26.448zm-38.515 118.371v69.328h38.515v-69.328l-19.258-26.447z"
></path>
<path
className="opacity-70 fill-current"
d="m147.386 187.442l40.57 55.976l31.069-22.596l-40.57-55.975l-31.069-10.015zM108.871 69.071L68.044 13.095L36.975 35.691l40.57 55.976l31.326 10.014z"
></path>
<path
className="opacity-70 fill-current"
d="M77.545 91.667L11.811 70.355L0 106.816l65.733 21.569l31.069-10.271zm81.653 46.732l19.257 26.448l65.734 21.311L256 149.697l-65.733-21.312z"
></path>
<path
className="fill-current"
d="M190.267 128.385L256 106.816l-11.811-36.461l-65.734 21.312l-19.257 26.447zm-124.534 0L0 149.697l11.811 36.461l65.734-21.311l19.257-26.448z"
></path>
<path
className="fill-current"
d="m77.545 164.847l-40.57 55.975l31.069 22.596l40.827-55.976v-32.61zm100.91-73.18l40.57-55.976l-31.069-22.596l-40.57 55.976v32.61z"
></path>
</svg>
),
pluginsTestUtils: () => <FlaskConical className="w-4 h-4" />,
pluginsStripe: () => (
<svg
xmlns="http://www.w3.org/2000/svg"
width="1.2em"
height="1.2em"
viewBox="0 0 24 24"
>
<path
fill="none"
stroke="currentColor"
strokeLinecap="round"
strokeLinejoin="round"
strokeWidth="2"
d="M11.453 8.056c0-.623.518-.979 1.442-.979c1.69 0 3.41.343 4.605.923l.5-4c-.948-.449-2.82-1-5.5-1c-1.895 0-3.373.087-4.5 1c-1.172.956-2 2.33-2 4c0 3.03 1.958 4.906 5 6c1.961.69 3 .743 3 1.5c0 .735-.851 1.5-2 1.5c-1.423 0-3.963-.609-5.5-1.5l-.5 4c1.321.734 3.474 1.5 6 1.5c2 0 3.957-.468 5.084-1.36C18.347 18.661 19 17.372 19 15.5c0-3.096-1.915-4.547-5-5.637c-1.646-.605-2.544-1.07-2.544-1.807z"
></path>
</svg>
),
pluginsPolar: () => (
<svg
width="1.2em"
height="1.2em"
viewBox="0 0 280 350"
fill="none"
xmlns="http://www.w3.org/2000/svg"
className="size-4"
>
<g transform="translate(30, 20)">
<path
fillRule="evenodd"
clipRule="evenodd"
d="M64.8636 269.177C130.906 313.882 220.684 296.585 265.388 230.543C310.094 164.501 292.798 74.723 226.756 30.0179C160.714 -14.6872 70.935 2.60972 26.2299 68.6516C-18.4753 134.693 -1.17834 224.472 64.8636 269.177ZM84.0172 270.357C144.43 301.264 221.064 272.251 255.187 205.557C289.309 138.861 267.997 59.7378 207.584 28.8301C147.173 -2.0774 70.5375 26.9345 36.4152 93.63C2.29299 160.325 23.6051 239.448 84.0172 270.357Z"
fill="currentColor"
/>
<path
fillRule="evenodd"
clipRule="evenodd"
d="M101.233 286.13C155.766 303.879 219.918 256.991 244.522 181.401C269.124 105.812 244.86 30.146 190.327 12.3967C135.794 -5.35246 71.6428 41.5362 47.04 117.126C22.4374 192.715 46.7007 268.381 101.233 286.13ZM117.915 280.385C164.066 290.229 213.97 239.649 229.378 167.414C244.784 95.1779 219.862 28.6392 173.71 18.7955C127.559 8.95174 77.6556 59.5307 62.2482 131.767C46.841 204.002 71.7639 270.541 117.915 280.385Z"
fill="currentColor"
/>
<path
fillRule="evenodd"
clipRule="evenodd"
d="M130.567 292.297C167.056 296.192 203.471 235.332 211.903 156.36C220.336 77.3886 197.592 10.2109 161.104 6.3148C124.616 2.41866 88.2006 63.2795 79.7681 142.251C71.3357 221.222 94.0792 288.401 130.567 292.297ZM147.642 268.26C174.048 267.843 194.616 214.386 193.58 148.861C192.546 83.3351 170.299 30.5544 143.893 30.9716C117.486 31.3889 96.9186 84.8459 97.9538 150.372C98.9891 215.897 121.235 268.677 147.642 268.26Z"
fill="currentColor"
/>
</g>
</svg>
),
pluginsAutumn: () => (
<svg
xmlns="http://www.w3.org/2000/svg"
viewBox="0 0 24 24"
width="1.2em"
height="1.2em"
>
<path
d="M3.292,20.708a1,1,0,0,1,0-1.411L6.12,16.469A8.041,8.041,0,0,1,8.03,7.041C13.072,2,20.9,3.1,20.9,3.1S22,10.928,16.959,15.97a8.041,8.041,0,0,1-9.428,1.91L4.7,20.708A1,1,0,0,1,3.292,20.708Z"
fill="currentColor"
></path>
</svg>
),
pluginsDodoPayments: () => (
<svg
width="1.2em"
height="1.2em"
viewBox="0 0 261 261"
fill="none"
xmlns="http://www.w3.org/2000/svg"
>
<path
d="M130.208 0C58.2986 0 0 58.2986 0 130.208C0 202.118 58.2986 260.417 130.208 260.417C202.118 260.417 260.417 202.118 260.417 130.208C260.417 58.2986 202.118 0 130.208 0Z"
fill="currentColor"
/>
<mask
id="mask0_27_29"
maskUnits="userSpaceOnUse"
x="39"
y="58"
width="196"
height="164"
>
<path
d="M234.375 58.5941H39.0624V221.355H234.375V58.5941Z"
fill="white"
/>
</mask>
<g mask="url(#mask0_27_29)">
<path
d="M114.67 96.1455H114.584C109.202 94.6003 103.507 97.6906 101.684 102.795C99.6704 108.281 102.865 114.566 108.507 116.302C122.327 120.225 128.264 100.416 114.67 96.1455Z"
className="fill-background"
/>
<path
d="M232.448 124.149C214.653 85.1729 157.882 101.301 152.639 91.093C137.275 66.9784 108.594 53.4368 77.5873 60.4159C72.813 58.5062 56.372 57.9854 45.747 64.6694L52.1532 67.4993C52.6393 67.7076 52.5005 67.6555 53.2123 67.9159C56.1116 69.0097 55.6081 68.6972 53.5248 69.843C48.7505 72.6382 42.7956 75.8847 39.0803 80.7631C39.2366 80.9888 47.2574 82.9159 47.2574 82.9159C47.3963 82.9507 48.8893 83.1069 48.5595 83.7666C22.3268 125.19 66.563 187.708 88.0387 221.353H150.209C140.608 204.166 129.636 180.711 133.386 164.791C134.063 161.909 134.931 158.246 138.473 157.76C147.032 156.388 158.49 156.51 166.65 155.59C166.65 155.59 166.69 155.59 166.771 155.59C168.507 155.503 211.007 150.103 221.181 176.596C222.049 179.027 224.046 177.447 224.844 175.85C232.431 160.763 237.327 137.013 232.483 124.166L232.448 124.149ZM163.837 111.353C160.851 116.683 158.82 123.61 158.299 129.652C158.021 133.489 158.421 137.274 158.803 141.11C159.011 143.228 159.028 145.902 157.327 147.291C155.851 148.541 153.403 148.662 150.938 148.836C138.837 148.784 109.323 148.836 97.9518 141.093L97.8824 141.041C81.3373 130.954 72.4831 108.176 82.3095 90.4854C85.4866 84.4784 91.3373 80.5722 98.0039 79.0965C106.58 77.1347 116.025 78.593 123.681 82.6034C126.806 84.1833 130.539 86.2666 133.386 88.6625C139.028 93.593 143.855 98.7145 151.25 100.294C154.653 101.267 158.195 101.128 161.598 101.822C167.969 103.35 166.372 106.978 163.82 111.319L163.837 111.353Z"
className="fill-background"
/>
</g>
</svg>
),
pluginsCreem: () => (
<svg
width="1.2em"
height="1.2em"
viewBox="0 0 54 47"
xmlns="http://www.w3.org/2000/svg"
preserveAspectRatio="xMidYMid meet"
>
<path
d="M7.44678 1H1L26.9696 46L53 1H9.39298L26.9696 31.4858L30.193 26.0202L19.0632 6.7085H43.3298L26.9696 34.8866L7.44678 1Z"
fill="currentColor"
/>
</svg>
),
pluginsChargebee: () => (
<svg
xmlns="http://www.w3.org/2000/svg"
width="1.2em"
height="1.2em"
viewBox="0 0 232 235"
fill="currentColor"
>
<path d="M77.18,117.82,231.85,80.94V.73h-80.2Z" />
<path d="M.54,116.41a115.52,115.52,0,0,0,3.38,27.83l73.27-26.42L3.31,91.16A117.15,117.15,0,0,0,.54,116.39Z" />
<path d="M27.78,41.84l49.38,76L99.93,1.88a115.43,115.43,0,0,0-72.15,40Z" />
<path d="M77.18,117.82l154.67,36.86v80.2h-80.2Z" />
<path d="M27.79,193.78l49.38-76L99.91,233.71a115.42,115.42,0,0,1-72.14-40Z" />
</svg>
),
pluginsCommet: () => (
<svg
width="1.2em"
height="1.2em"
viewBox="50 55.5 400 400"
fill="none"
xmlns="http://www.w3.org/2000/svg"
>
<mask
id="commet-mark"
maskUnits="userSpaceOnUse"
x="0"
y="0"
width="500"
height="500"
>
<rect width="500" height="500" fill="white" />
<rect
width="253.649"
height="17.0192"
transform="matrix(0.718749 0.695269 -0.64697 0.762515 143.458 243.867)"
fill="black"
/>
</mask>
<g mask="url(#commet-mark)" fill="currentColor">
<path d="M250 71L356.521 255.5H143.479L250 71Z" />
<path d="M250 440L356.521 255.5H143.479L250 440Z" />
</g>
</svg>
),
pluginsDub: () => (
<svg
width="1.2em"
height="1.2em"
viewBox="0 0 65 64"
fill="none"
xmlns="http://www.w3.org/2000/svg"
>
<path
fillRule="evenodd"
clipRule="evenodd"
d="M32.5 64C50.1731 64 64.5 49.6731 64.5 32C64.5 20.1555 58.0648 9.81393 48.5 4.28099V31.9999V47.9998H40.5V45.8594C38.1466 47.2207 35.4143 47.9999 32.5 47.9999C23.6634 47.9999 16.5 40.8364 16.5 31.9999C16.5 23.1633 23.6634 15.9999 32.5 15.9999C35.4143 15.9999 38.1466 16.779 40.5 18.1404V1.00812C37.943 0.350018 35.2624 0 32.5 0C14.8269 0 0.500038 14.3269 0.500038 32C0.500038 49.6731 14.8269 64 32.5 64Z"
fill="currentColor"
/>
</svg>
),
pluginsCommunityPlugins: () => (
<svg
xmlns="http://www.w3.org/2000/svg"
width="1em"
height="1em"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
strokeWidth="2"
strokeLinecap="round"
strokeLinejoin="round"
className="lucide lucide-users"
>
<path d="M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2" />
<circle cx="9" cy="7" r="4" />
<path d="M22 21v-2a4 4 0 0 0-3-3.87" />
<path d="M16 3.13a4 4 0 0 1 0 7.75" />
</svg>
),
} as const;