@polar-sh/better-auth
Version:
Polar integration for better-auth
1 lines • 2.3 kB
Source Map (JSON)
{"version":3,"sources":["../src/client.ts"],"sourcesContent":["import { PolarEmbedCheckout } from \"@polar-sh/checkout/embed\";\nimport type { PolarEmbedCheckout as PolarEmbedCheckoutType } from \"@polar-sh/checkout/embed\";\nimport type { BetterAuthClientPlugin } from \"better-auth\";\nimport type { BetterFetchOption } from \"better-auth/client\";\nimport type { CheckoutParams } from \"./plugins/checkout\";\nimport type { polar } from \"./server\";\n\nexport type { PolarEmbedCheckoutType as PolarEmbedCheckout };\n\nexport const polarClient = () => {\n\treturn {\n\t\tid: \"polar-client\",\n\t\t$InferServerPlugin: {} as ReturnType<typeof polar>,\n\t\tgetActions: ($fetch) => {\n\t\t\treturn {\n\t\t\t\tcheckoutEmbed: async (\n\t\t\t\t\tdata: Omit<CheckoutParams, \"redirect\" | \"embedOrigin\">,\n\t\t\t\t\tfetchOptions?: BetterFetchOption,\n\t\t\t\t): Promise<PolarEmbedCheckoutType> => {\n\t\t\t\t\tconst res = await $fetch(\"/checkout\", {\n\t\t\t\t\t\tmethod: \"POST\",\n\t\t\t\t\t\tbody: {\n\t\t\t\t\t\t\t...data,\n\t\t\t\t\t\t\tredirect: false,\n\t\t\t\t\t\t\tembedOrigin: window.location.origin,\n\t\t\t\t\t\t},\n\t\t\t\t\t\t...fetchOptions,\n\t\t\t\t\t});\n\n\t\t\t\t\tif (res.error) {\n\t\t\t\t\t\tthrow new Error(res.error.message);\n\t\t\t\t\t}\n\n\t\t\t\t\tconst checkout = res.data as { url: string };\n\n\t\t\t\t\tconst theme =\n\t\t\t\t\t\t(new URL(checkout.url).searchParams.get(\"theme\") as\n\t\t\t\t\t\t\t| \"light\"\n\t\t\t\t\t\t\t| \"dark\"\n\t\t\t\t\t\t\t| undefined) ?? \"light\";\n\n\t\t\t\t\treturn await PolarEmbedCheckout.create(checkout.url, { theme });\n\t\t\t\t},\n\t\t\t};\n\t\t},\n\t} satisfies BetterAuthClientPlugin;\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAmC;AAS5B,IAAM,cAAc,MAAM;AAChC,SAAO;AAAA,IACN,IAAI;AAAA,IACJ,oBAAoB,CAAC;AAAA,IACrB,YAAY,CAAC,WAAW;AACvB,aAAO;AAAA,QACN,eAAe,OACd,MACA,iBACqC;AACrC,gBAAM,MAAM,MAAM,OAAO,aAAa;AAAA,YACrC,QAAQ;AAAA,YACR,MAAM;AAAA,cACL,GAAG;AAAA,cACH,UAAU;AAAA,cACV,aAAa,OAAO,SAAS;AAAA,YAC9B;AAAA,YACA,GAAG;AAAA,UACJ,CAAC;AAED,cAAI,IAAI,OAAO;AACd,kBAAM,IAAI,MAAM,IAAI,MAAM,OAAO;AAAA,UAClC;AAEA,gBAAM,WAAW,IAAI;AAErB,gBAAM,QACJ,IAAI,IAAI,SAAS,GAAG,EAAE,aAAa,IAAI,OAAO,KAG9B;AAElB,iBAAO,MAAM,gCAAmB,OAAO,SAAS,KAAK,EAAE,MAAM,CAAC;AAAA,QAC/D;AAAA,MACD;AAAA,IACD;AAAA,EACD;AACD;","names":[]}