promptarc 0.0.1 → 0.0.3

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 (304) hide show
  1. package/README.md +8 -8
  2. package/dist/bin.js +366 -0
  3. package/dist/web/.next/BUILD_ID +1 -1
  4. package/dist/web/.next/app-build-manifest.json +315 -175
  5. package/dist/web/.next/app-path-routes-manifest.json +28 -11
  6. package/dist/web/.next/build-manifest.json +14 -14
  7. package/dist/web/.next/prerender-manifest.json +89 -1
  8. package/dist/web/.next/required-server-files.json +0 -1
  9. package/dist/web/.next/routes-manifest.json +62 -0
  10. package/dist/web/.next/server/app/_not-found/page.js +2 -2
  11. package/dist/web/.next/server/app/_not-found/page.js.nft.json +1 -1
  12. package/dist/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  13. package/dist/web/.next/server/app/api/admin/backfill-ai/route.js +8 -0
  14. package/dist/web/.next/server/app/api/admin/backfill-ai/route.js.nft.json +1 -0
  15. package/dist/web/.next/server/app/api/admin/backfill-ai/route_client-reference-manifest.js +1 -0
  16. package/dist/web/.next/server/app/api/admin/backfill-search/route.js +1 -0
  17. package/dist/web/.next/server/app/api/admin/backfill-search/route.js.nft.json +1 -0
  18. package/dist/web/.next/server/app/api/admin/backfill-search/route_client-reference-manifest.js +1 -0
  19. package/dist/web/.next/server/app/api/ai/pr-summary/route.js +28 -0
  20. package/dist/web/.next/server/app/api/ai/pr-summary/route.js.nft.json +1 -0
  21. package/dist/web/.next/server/app/api/ai/pr-summary/route_client-reference-manifest.js +1 -0
  22. package/dist/web/.next/server/app/api/ai/pr-summary-local/route.js +28 -0
  23. package/dist/web/.next/server/app/api/ai/pr-summary-local/route.js.nft.json +1 -0
  24. package/dist/web/.next/server/app/api/ai/pr-summary-local/route_client-reference-manifest.js +1 -0
  25. package/dist/web/.next/server/app/api/ai/process/route.js +8 -0
  26. package/dist/web/.next/server/app/api/ai/process/route.js.nft.json +1 -0
  27. package/dist/web/.next/server/app/api/ai/process/route_client-reference-manifest.js +1 -0
  28. package/dist/web/.next/server/app/api/cli/download/route.js +1 -1
  29. package/dist/web/.next/server/app/api/cli/download/route.js.nft.json +1 -1
  30. package/dist/web/.next/server/app/api/cli/download/route_client-reference-manifest.js +1 -1
  31. package/dist/web/.next/server/app/api/cli/feedback/route.js +1 -0
  32. package/dist/web/.next/server/app/api/cli/feedback/route.js.nft.json +1 -0
  33. package/dist/web/.next/server/app/api/cli/feedback/route_client-reference-manifest.js +1 -0
  34. package/dist/web/.next/server/app/api/cli/init/route.js +1 -1
  35. package/dist/web/.next/server/app/api/cli/init/route.js.nft.json +1 -1
  36. package/dist/web/.next/server/app/api/cli/init/route_client-reference-manifest.js +1 -1
  37. package/dist/web/.next/server/app/api/cli/my-shares/route.js +1 -1
  38. package/dist/web/.next/server/app/api/cli/my-shares/route.js.nft.json +1 -1
  39. package/dist/web/.next/server/app/api/cli/my-shares/route_client-reference-manifest.js +1 -1
  40. package/dist/web/.next/server/app/api/cli/poll/route.js +1 -1
  41. package/dist/web/.next/server/app/api/cli/poll/route.js.nft.json +1 -1
  42. package/dist/web/.next/server/app/api/cli/poll/route_client-reference-manifest.js +1 -1
  43. package/dist/web/.next/server/app/api/cli/project-settings/route.js +1 -1
  44. package/dist/web/.next/server/app/api/cli/project-settings/route.js.nft.json +1 -1
  45. package/dist/web/.next/server/app/api/cli/project-settings/route_client-reference-manifest.js +1 -1
  46. package/dist/web/.next/server/app/api/cli/share-mutate/route.js +1 -1
  47. package/dist/web/.next/server/app/api/cli/share-mutate/route.js.nft.json +1 -1
  48. package/dist/web/.next/server/app/api/cli/share-mutate/route_client-reference-manifest.js +1 -1
  49. package/dist/web/.next/server/app/api/cli/sync-list/route.js +1 -1
  50. package/dist/web/.next/server/app/api/cli/sync-list/route.js.nft.json +1 -1
  51. package/dist/web/.next/server/app/api/cli/sync-list/route_client-reference-manifest.js +1 -1
  52. package/dist/web/.next/server/app/api/local/project-sessions/route.js +1 -1
  53. package/dist/web/.next/server/app/api/local/project-sessions/route.js.nft.json +1 -1
  54. package/dist/web/.next/server/app/api/local/project-sessions/route_client-reference-manifest.js +1 -1
  55. package/dist/web/.next/server/app/api/local/watch/route.js +2 -2
  56. package/dist/web/.next/server/app/api/local/watch/route.js.nft.json +1 -1
  57. package/dist/web/.next/server/app/api/local/watch/route_client-reference-manifest.js +1 -1
  58. package/dist/web/.next/server/app/api/search/route.js +1 -0
  59. package/dist/web/.next/server/app/api/search/route.js.nft.json +1 -0
  60. package/dist/web/.next/server/app/api/search/route_client-reference-manifest.js +1 -0
  61. package/dist/web/.next/server/app/api/search-index/route.js +1 -1
  62. package/dist/web/.next/server/app/api/search-index/route.js.nft.json +1 -1
  63. package/dist/web/.next/server/app/api/search-index/route_client-reference-manifest.js +1 -1
  64. package/dist/web/.next/server/app/api/share/download/[slug]/route.js +1 -0
  65. package/dist/web/.next/server/app/api/share/download/[slug]/route.js.nft.json +1 -0
  66. package/dist/web/.next/server/app/api/share/download/[slug]/route_client-reference-manifest.js +1 -0
  67. package/dist/web/.next/server/app/api/share/route.js +1 -1
  68. package/dist/web/.next/server/app/api/share/route.js.nft.json +1 -1
  69. package/dist/web/.next/server/app/api/share/route_client-reference-manifest.js +1 -1
  70. package/dist/web/.next/server/app/api/upload/route.js +3 -3
  71. package/dist/web/.next/server/app/api/upload/route.js.nft.json +1 -1
  72. package/dist/web/.next/server/app/api/upload/route_client-reference-manifest.js +1 -1
  73. package/dist/web/.next/server/app/auth/callback/route.js +1 -1
  74. package/dist/web/.next/server/app/auth/callback/route.js.nft.json +1 -1
  75. package/dist/web/.next/server/app/auth/callback/route_client-reference-manifest.js +1 -1
  76. package/dist/web/.next/server/app/auth/signout/route.js +1 -1
  77. package/dist/web/.next/server/app/auth/signout/route.js.nft.json +1 -1
  78. package/dist/web/.next/server/app/auth/signout/route_client-reference-manifest.js +1 -1
  79. package/dist/web/.next/server/app/blog/ai-coding-agents-2026/page.js +2 -0
  80. package/dist/web/.next/server/app/blog/ai-coding-agents-2026/page.js.nft.json +1 -0
  81. package/dist/web/.next/server/app/blog/ai-coding-agents-2026/page_client-reference-manifest.js +1 -0
  82. package/dist/web/.next/server/app/blog/page.js +2 -0
  83. package/dist/web/.next/server/app/blog/page.js.nft.json +1 -0
  84. package/dist/web/.next/server/app/blog/page_client-reference-manifest.js +1 -0
  85. package/dist/web/.next/server/app/cli/login/page.js +2 -2
  86. package/dist/web/.next/server/app/cli/login/page.js.nft.json +1 -1
  87. package/dist/web/.next/server/app/cli/login/page_client-reference-manifest.js +1 -1
  88. package/dist/web/.next/server/app/digest/page.js +2 -0
  89. package/dist/web/.next/server/app/digest/page.js.nft.json +1 -0
  90. package/dist/web/.next/server/app/digest/page_client-reference-manifest.js +1 -0
  91. package/dist/web/.next/server/app/feedback/page.js +2 -0
  92. package/dist/web/.next/server/app/feedback/page.js.nft.json +1 -0
  93. package/dist/web/.next/server/app/feedback/page_client-reference-manifest.js +1 -0
  94. package/dist/web/.next/server/app/my-projects/[projectKey]/page.js +2 -2
  95. package/dist/web/.next/server/app/my-projects/[projectKey]/page.js.nft.json +1 -1
  96. package/dist/web/.next/server/app/my-projects/[projectKey]/page_client-reference-manifest.js +1 -1
  97. package/dist/web/.next/server/app/my-projects/page.js +2 -2
  98. package/dist/web/.next/server/app/my-projects/page.js.nft.json +1 -1
  99. package/dist/web/.next/server/app/my-projects/page_client-reference-manifest.js +1 -1
  100. package/dist/web/.next/server/app/my-shares/page.js +2 -2
  101. package/dist/web/.next/server/app/my-shares/page.js.nft.json +1 -1
  102. package/dist/web/.next/server/app/my-shares/page_client-reference-manifest.js +1 -1
  103. package/dist/web/.next/server/app/opengraph-image/route.js +1 -71
  104. package/dist/web/.next/server/app/opengraph-image/route.js.nft.json +1 -0
  105. package/dist/web/.next/server/app/opengraph-image/route_client-reference-manifest.js +1 -1
  106. package/dist/web/.next/server/app/opengraph-image.body +0 -0
  107. package/dist/web/.next/server/app/opengraph-image.meta +1 -0
  108. package/dist/web/.next/server/app/page.js +2 -2
  109. package/dist/web/.next/server/app/page.js.nft.json +1 -1
  110. package/dist/web/.next/server/app/page_client-reference-manifest.js +1 -1
  111. package/dist/web/.next/server/app/privacy/page.js +2 -0
  112. package/dist/web/.next/server/app/privacy/page.js.nft.json +1 -0
  113. package/dist/web/.next/server/app/privacy/page_client-reference-manifest.js +1 -0
  114. package/dist/web/.next/server/app/projects/[id]/page.js +2 -2
  115. package/dist/web/.next/server/app/projects/[id]/page.js.nft.json +1 -1
  116. package/dist/web/.next/server/app/projects/[id]/page_client-reference-manifest.js +1 -1
  117. package/dist/web/.next/server/app/r/[slug]/opengraph-image/route.js +1 -1
  118. package/dist/web/.next/server/app/r/[slug]/opengraph-image/route.js.nft.json +1 -1
  119. package/dist/web/.next/server/app/r/[slug]/opengraph-image/route_client-reference-manifest.js +1 -1
  120. package/dist/web/.next/server/app/r/[slug]/page.js +2 -2
  121. package/dist/web/.next/server/app/r/[slug]/page.js.nft.json +1 -1
  122. package/dist/web/.next/server/app/r/[slug]/page_client-reference-manifest.js +1 -1
  123. package/dist/web/.next/server/app/robots.txt/route.js +16 -0
  124. package/dist/web/.next/server/app/robots.txt/route.js.nft.json +1 -0
  125. package/dist/web/.next/server/app/robots.txt/route_client-reference-manifest.js +1 -0
  126. package/dist/web/.next/server/app/robots.txt.body +9 -0
  127. package/dist/web/.next/server/app/robots.txt.meta +1 -0
  128. package/dist/web/.next/server/app/search/page.js +2 -0
  129. package/dist/web/.next/server/app/search/page.js.nft.json +1 -0
  130. package/dist/web/.next/server/app/search/page_client-reference-manifest.js +1 -0
  131. package/dist/web/.next/server/app/sessions/[projectId]/[sessionId]/page.js +2 -2
  132. package/dist/web/.next/server/app/sessions/[projectId]/[sessionId]/page.js.nft.json +1 -1
  133. package/dist/web/.next/server/app/sessions/[projectId]/[sessionId]/page_client-reference-manifest.js +1 -1
  134. package/dist/web/.next/server/app/sign-in/page.js +2 -2
  135. package/dist/web/.next/server/app/sign-in/page.js.nft.json +1 -1
  136. package/dist/web/.next/server/app/sign-in/page_client-reference-manifest.js +1 -1
  137. package/dist/web/.next/server/app/sitemap.xml/route.js +16 -0
  138. package/dist/web/.next/server/app/sitemap.xml/route.js.nft.json +1 -0
  139. package/dist/web/.next/server/app/sitemap.xml/route_client-reference-manifest.js +1 -0
  140. package/dist/web/.next/server/app/sitemap.xml.body +51 -0
  141. package/dist/web/.next/server/app/sitemap.xml.meta +1 -0
  142. package/dist/web/.next/server/app/terms/page.js +2 -0
  143. package/dist/web/.next/server/app/terms/page.js.nft.json +1 -0
  144. package/dist/web/.next/server/app/terms/page_client-reference-manifest.js +1 -0
  145. package/dist/web/.next/server/app-paths-manifest.json +28 -11
  146. package/dist/web/.next/server/chunks/1017.js +2 -0
  147. package/dist/web/.next/server/chunks/1134.js +8 -0
  148. package/dist/web/.next/server/chunks/1825.js +1 -0
  149. package/dist/web/.next/server/chunks/1924.js +1 -0
  150. package/dist/web/.next/server/chunks/1961.js +1 -0
  151. package/dist/web/.next/server/chunks/2678.js +5 -0
  152. package/dist/web/.next/server/chunks/{901.js → 2901.js} +1 -1
  153. package/dist/web/.next/server/chunks/{635.js → 3256.js} +1 -1
  154. package/dist/web/.next/server/chunks/3398.js +1 -0
  155. package/dist/web/.next/server/chunks/{500.js → 4500.js} +1 -1
  156. package/dist/web/.next/server/chunks/{985.js → 4985.js} +2 -2
  157. package/dist/web/.next/server/chunks/6227.js +1 -0
  158. package/dist/web/.next/server/chunks/8334.js +1 -0
  159. package/dist/web/.next/server/chunks/8632.js +2 -0
  160. package/dist/web/.next/server/chunks/{993.js → 9993.js} +1 -1
  161. package/dist/web/.next/server/functions-config-manifest.json +17 -2
  162. package/dist/web/.next/server/middleware-build-manifest.js +1 -1
  163. package/dist/web/.next/server/middleware-manifest.json +1 -43
  164. package/dist/web/.next/server/pages/500.html +1 -1
  165. package/dist/web/.next/server/pages/_document.js +1 -1
  166. package/dist/web/.next/server/pages/_document.js.nft.json +1 -1
  167. package/dist/web/.next/server/pages/_error.js +2 -2
  168. package/dist/web/.next/server/pages/_error.js.nft.json +1 -1
  169. package/dist/web/.next/server/pages-manifest.json +1 -1
  170. package/dist/web/.next/server/server-reference-manifest.js +1 -1
  171. package/dist/web/.next/server/server-reference-manifest.json +1 -1
  172. package/dist/web/.next/server/webpack-runtime.js +1 -1
  173. package/dist/web/.next/static/ABHGCNY7MSdkh00Z4Y8wS/_buildManifest.js +1 -0
  174. package/dist/web/.next/static/chunks/1029-12dc6d00537d43fd.js +1 -0
  175. package/dist/web/.next/static/chunks/4695-b52fc3d81451c3c3.js +1 -0
  176. package/dist/web/.next/static/chunks/552926ff-c5d04ae0c2d9f826.js +1 -0
  177. package/dist/web/.next/static/chunks/7200-4560b15b9cad37b3.js +1 -0
  178. package/dist/web/.next/static/chunks/app/_not-found/page-fd6592d30c58fa5e.js +1 -0
  179. package/dist/web/.next/static/chunks/app/api/admin/backfill-ai/route-fd6592d30c58fa5e.js +1 -0
  180. package/dist/web/.next/static/chunks/app/api/admin/backfill-search/route-fd6592d30c58fa5e.js +1 -0
  181. package/dist/web/.next/static/chunks/app/api/ai/pr-summary/route-fd6592d30c58fa5e.js +1 -0
  182. package/dist/web/.next/static/chunks/app/api/ai/pr-summary-local/route-fd6592d30c58fa5e.js +1 -0
  183. package/dist/web/.next/static/chunks/app/api/ai/process/route-fd6592d30c58fa5e.js +1 -0
  184. package/dist/web/.next/static/chunks/app/api/cli/download/route-fd6592d30c58fa5e.js +1 -0
  185. package/dist/web/.next/static/chunks/app/api/cli/feedback/route-fd6592d30c58fa5e.js +1 -0
  186. package/dist/web/.next/static/chunks/app/api/cli/init/route-fd6592d30c58fa5e.js +1 -0
  187. package/dist/web/.next/static/chunks/app/api/cli/my-shares/route-fd6592d30c58fa5e.js +1 -0
  188. package/dist/web/.next/static/chunks/app/api/cli/poll/route-fd6592d30c58fa5e.js +1 -0
  189. package/dist/web/.next/static/chunks/app/api/cli/project-settings/route-fd6592d30c58fa5e.js +1 -0
  190. package/dist/web/.next/static/chunks/app/api/cli/share-mutate/route-fd6592d30c58fa5e.js +1 -0
  191. package/dist/web/.next/static/chunks/app/api/cli/sync-list/route-fd6592d30c58fa5e.js +1 -0
  192. package/dist/web/.next/static/chunks/app/api/local/project-sessions/route-fd6592d30c58fa5e.js +1 -0
  193. package/dist/web/.next/static/chunks/app/api/local/watch/route-fd6592d30c58fa5e.js +1 -0
  194. package/dist/web/.next/static/chunks/app/api/search/route-fd6592d30c58fa5e.js +1 -0
  195. package/dist/web/.next/static/chunks/app/api/search-index/route-fd6592d30c58fa5e.js +1 -0
  196. package/dist/web/.next/static/chunks/app/api/share/download/[slug]/route-fd6592d30c58fa5e.js +1 -0
  197. package/dist/web/.next/static/chunks/app/api/share/route-fd6592d30c58fa5e.js +1 -0
  198. package/dist/web/.next/static/chunks/app/api/upload/route-fd6592d30c58fa5e.js +1 -0
  199. package/dist/web/.next/static/chunks/app/auth/callback/route-fd6592d30c58fa5e.js +1 -0
  200. package/dist/web/.next/static/chunks/app/auth/signout/route-fd6592d30c58fa5e.js +1 -0
  201. package/dist/web/.next/static/chunks/app/blog/ai-coding-agents-2026/page-fd6592d30c58fa5e.js +1 -0
  202. package/dist/web/.next/static/chunks/app/blog/layout-9b51270472318488.js +1 -0
  203. package/dist/web/.next/static/chunks/app/blog/page-8400ea4ac5a7eb44.js +1 -0
  204. package/dist/web/.next/static/chunks/app/cli/login/page-26287cfd64c0fb49.js +1 -0
  205. package/dist/web/.next/static/chunks/app/digest/page-8400ea4ac5a7eb44.js +1 -0
  206. package/dist/web/.next/static/chunks/app/feedback/page-55ef0005807f1cef.js +1 -0
  207. package/dist/web/.next/static/chunks/app/layout-aa56caf2bf5af86f.js +1 -0
  208. package/dist/web/.next/static/chunks/app/my-projects/[projectKey]/page-7c5f2badf689d2e8.js +1 -0
  209. package/dist/web/.next/static/chunks/app/my-projects/page-c0390151fd6332a0.js +1 -0
  210. package/dist/web/.next/static/chunks/app/my-shares/page-49c0112973401c14.js +1 -0
  211. package/dist/web/.next/static/chunks/app/not-found-8400ea4ac5a7eb44.js +1 -0
  212. package/dist/web/.next/static/chunks/app/opengraph-image/route-fd6592d30c58fa5e.js +1 -0
  213. package/dist/web/.next/static/chunks/app/page-f7b69fa944b46c20.js +1 -0
  214. package/dist/web/.next/static/chunks/app/privacy/page-9b51270472318488.js +1 -0
  215. package/dist/web/.next/static/chunks/app/projects/[id]/page-7dd46a825d03a7d9.js +1 -0
  216. package/dist/web/.next/static/chunks/app/r/[slug]/opengraph-image/route-fd6592d30c58fa5e.js +1 -0
  217. package/dist/web/.next/static/chunks/app/r/[slug]/page-6a0983805e048ac3.js +1 -0
  218. package/dist/web/.next/static/chunks/app/robots.txt/route-fd6592d30c58fa5e.js +1 -0
  219. package/dist/web/.next/static/chunks/app/search/page-c29f37dc2462b676.js +1 -0
  220. package/dist/web/.next/static/chunks/app/sessions/[projectId]/[sessionId]/page-87b4505dd32edb9d.js +1 -0
  221. package/dist/web/.next/static/chunks/app/sign-in/page-fea3971ff9237b72.js +1 -0
  222. package/dist/web/.next/static/chunks/app/sitemap.xml/route-fd6592d30c58fa5e.js +1 -0
  223. package/dist/web/.next/static/chunks/app/terms/page-9b51270472318488.js +1 -0
  224. package/dist/web/.next/static/chunks/d99d8e6a-55da88efbe15e3e1.js +1 -0
  225. package/dist/web/.next/static/chunks/framework-c1efa271b5a96d9d.js +1 -0
  226. package/dist/web/.next/static/chunks/main-app-70de904c7caade50.js +1 -0
  227. package/dist/web/.next/static/chunks/main-d211cddc79aac1cb.js +1 -0
  228. package/dist/web/.next/static/chunks/pages/{_app-42b849402a54b9e6.js → _app-701b0752a0d4c3a9.js} +1 -1
  229. package/dist/web/.next/static/chunks/pages/_error-327385abc873a736.js +1 -0
  230. package/dist/web/.next/static/chunks/{webpack-3a8b65d12c8eb987.js → webpack-3a446128dfa39f85.js} +1 -1
  231. package/dist/web/.next/static/css/b3ccdd7835e6edda.css +3 -0
  232. package/dist/web/node_modules/.pnpm/@swc+helpers@0.5.15/node_modules/@swc/helpers/_/_class_private_field_loose_base/package.json +4 -0
  233. package/dist/web/node_modules/.pnpm/@swc+helpers@0.5.15/node_modules/@swc/helpers/_/_class_private_field_loose_key/package.json +4 -0
  234. package/dist/web/node_modules/.pnpm/@swc+helpers@0.5.15/node_modules/@swc/helpers/_/_interop_require_default/package.json +4 -0
  235. package/dist/web/node_modules/.pnpm/@swc+helpers@0.5.15/node_modules/@swc/helpers/_/_interop_require_wildcard/package.json +4 -0
  236. package/dist/web/node_modules/.pnpm/@swc+helpers@0.5.15/node_modules/@swc/helpers/cjs/_class_private_field_loose_base.cjs +10 -0
  237. package/dist/web/node_modules/.pnpm/@swc+helpers@0.5.15/node_modules/@swc/helpers/cjs/_class_private_field_loose_key.cjs +8 -0
  238. package/dist/web/node_modules/.pnpm/@swc+helpers@0.5.15/node_modules/@swc/helpers/cjs/_interop_require_default.cjs +6 -0
  239. package/dist/web/node_modules/.pnpm/@swc+helpers@0.5.15/node_modules/@swc/helpers/cjs/_interop_require_wildcard.cjs +38 -0
  240. package/dist/web/node_modules/.pnpm/@swc+helpers@0.5.15/node_modules/@swc/helpers/package.json +471 -0
  241. package/dist/web/package.json +4 -1
  242. package/dist/web/public/apple-touch-icon.png +0 -0
  243. package/dist/web/public/favicon-16.png +0 -0
  244. package/dist/web/public/favicon-32.png +0 -0
  245. package/dist/web/public/icon-192.png +0 -0
  246. package/dist/web/public/icon-512.png +0 -0
  247. package/dist/web/public/logo.png +0 -0
  248. package/dist/web/server.js +1 -1
  249. package/package.json +5 -8
  250. package/dist/web/.next/server/app/opengraph-image/route.js.map +0 -1
  251. package/dist/web/.next/server/chunks/150.js +0 -1
  252. package/dist/web/.next/server/chunks/160.js +0 -2
  253. package/dist/web/.next/server/chunks/334.js +0 -1
  254. package/dist/web/.next/server/chunks/354.js +0 -1
  255. package/dist/web/.next/server/chunks/371.js +0 -1
  256. package/dist/web/.next/server/chunks/398.js +0 -1
  257. package/dist/web/.next/server/chunks/552.js +0 -2
  258. package/dist/web/.next/server/chunks/678.js +0 -5
  259. package/dist/web/.next/server/chunks/924.js +0 -1
  260. package/dist/web/.next/server/edge-chunks/asset_noto-sans-v27-latin-regular.5dda3fca77107598.ttf +0 -0
  261. package/dist/web/.next/server/edge-chunks/wasm_77d9faebf7af9e421806970ce10a58e9d83116d7.wasm +0 -0
  262. package/dist/web/.next/server/edge-chunks/wasm_ef4866ecae192fd87727067cf2c0c0cf9fb8b020.wasm +0 -0
  263. package/dist/web/.next/server/edge-runtime-webpack.js +0 -2
  264. package/dist/web/.next/server/interception-route-rewrite-manifest.js +0 -1
  265. package/dist/web/.next/static/05arLtyVtuaMhMczmbNEQ/_buildManifest.js +0 -1
  266. package/dist/web/.next/static/chunks/200-619918ea0fdbd6ff.js +0 -1
  267. package/dist/web/.next/static/chunks/29-73072d523fc7c3d6.js +0 -1
  268. package/dist/web/.next/static/chunks/552926ff-e8a371ec0133d0dc.js +0 -1
  269. package/dist/web/.next/static/chunks/695-00bca043953d4170.js +0 -1
  270. package/dist/web/.next/static/chunks/app/_not-found/page-28b9b6b1a849439f.js +0 -1
  271. package/dist/web/.next/static/chunks/app/api/cli/download/route-28b9b6b1a849439f.js +0 -1
  272. package/dist/web/.next/static/chunks/app/api/cli/init/route-28b9b6b1a849439f.js +0 -1
  273. package/dist/web/.next/static/chunks/app/api/cli/my-shares/route-28b9b6b1a849439f.js +0 -1
  274. package/dist/web/.next/static/chunks/app/api/cli/poll/route-28b9b6b1a849439f.js +0 -1
  275. package/dist/web/.next/static/chunks/app/api/cli/project-settings/route-28b9b6b1a849439f.js +0 -1
  276. package/dist/web/.next/static/chunks/app/api/cli/share-mutate/route-28b9b6b1a849439f.js +0 -1
  277. package/dist/web/.next/static/chunks/app/api/cli/sync-list/route-28b9b6b1a849439f.js +0 -1
  278. package/dist/web/.next/static/chunks/app/api/local/project-sessions/route-28b9b6b1a849439f.js +0 -1
  279. package/dist/web/.next/static/chunks/app/api/local/watch/route-28b9b6b1a849439f.js +0 -1
  280. package/dist/web/.next/static/chunks/app/api/search-index/route-28b9b6b1a849439f.js +0 -1
  281. package/dist/web/.next/static/chunks/app/api/share/route-28b9b6b1a849439f.js +0 -1
  282. package/dist/web/.next/static/chunks/app/api/upload/route-28b9b6b1a849439f.js +0 -1
  283. package/dist/web/.next/static/chunks/app/auth/callback/route-28b9b6b1a849439f.js +0 -1
  284. package/dist/web/.next/static/chunks/app/auth/signout/route-28b9b6b1a849439f.js +0 -1
  285. package/dist/web/.next/static/chunks/app/cli/login/page-647fd605d0fe2472.js +0 -1
  286. package/dist/web/.next/static/chunks/app/layout-f5666b9135264807.js +0 -1
  287. package/dist/web/.next/static/chunks/app/my-projects/[projectKey]/page-cb6e039c958bfc2c.js +0 -1
  288. package/dist/web/.next/static/chunks/app/my-projects/page-9f8ca9b85ceaf296.js +0 -1
  289. package/dist/web/.next/static/chunks/app/my-shares/page-cb6e039c958bfc2c.js +0 -1
  290. package/dist/web/.next/static/chunks/app/not-found-9f8ca9b85ceaf296.js +0 -1
  291. package/dist/web/.next/static/chunks/app/opengraph-image/route-28b9b6b1a849439f.js +0 -1
  292. package/dist/web/.next/static/chunks/app/page-5094c206f5c10164.js +0 -1
  293. package/dist/web/.next/static/chunks/app/projects/[id]/page-5094c206f5c10164.js +0 -1
  294. package/dist/web/.next/static/chunks/app/r/[slug]/opengraph-image/route-28b9b6b1a849439f.js +0 -1
  295. package/dist/web/.next/static/chunks/app/r/[slug]/page-65707eb198f673a1.js +0 -1
  296. package/dist/web/.next/static/chunks/app/sessions/[projectId]/[sessionId]/page-42e3ca6ddbc89891.js +0 -1
  297. package/dist/web/.next/static/chunks/app/sign-in/page-792d0d79889186cf.js +0 -1
  298. package/dist/web/.next/static/chunks/d99d8e6a-80443bd3c9d31f50.js +0 -1
  299. package/dist/web/.next/static/chunks/framework-39000e34f38d10f6.js +0 -1
  300. package/dist/web/.next/static/chunks/main-app-21e9441fa7ac15ef.js +0 -1
  301. package/dist/web/.next/static/chunks/main-f824d48fd7ff2e3b.js +0 -1
  302. package/dist/web/.next/static/chunks/pages/_error-412ff705bc5b0636.js +0 -1
  303. package/dist/web/.next/static/css/e3f901a57ca280a4.css +0 -3
  304. /package/dist/web/.next/static/{05arLtyVtuaMhMczmbNEQ → ABHGCNY7MSdkh00Z4Y8wS}/_ssgManifest.js +0 -0
@@ -1,2 +0,0 @@
1
- (()=>{"use strict";var a={},b={};function c(d){var e=b[d];if(void 0!==e)return e.exports;var f=b[d]={exports:{}},g=!0;try{a[d](f,f.exports,c),g=!1}finally{g&&delete b[d]}return f.exports}c.m=a,c.amdO={},(()=>{var a=[];c.O=(b,d,e,f)=>{if(d){f=f||0;for(var g=a.length;g>0&&a[g-1][2]>f;g--)a[g]=a[g-1];a[g]=[d,e,f];return}for(var h=1/0,g=0;g<a.length;g++){for(var[d,e,f]=a[g],i=!0,j=0;j<d.length;j++)(!1&f||h>=f)&&Object.keys(c.O).every(a=>c.O[a](d[j]))?d.splice(j--,1):(i=!1,f<h&&(h=f));if(i){a.splice(g--,1);var k=e();void 0!==k&&(b=k)}}return b}})(),c.n=a=>{var b=a&&a.__esModule?()=>a.default:()=>a;return c.d(b,{a:b}),b},c.d=(a,b)=>{for(var d in b)c.o(b,d)&&!c.o(a,d)&&Object.defineProperty(a,d,{enumerable:!0,get:b[d]})},c.e=()=>Promise.resolve(),c.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||Function("return this")()}catch(a){if("object"==typeof window)return window}}(),c.o=(a,b)=>Object.prototype.hasOwnProperty.call(a,b),c.r=a=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(a,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(a,"__esModule",{value:!0})},c.U=function(a){var b=new URL(a,"x:/"),c={};for(var d in b)c[d]=b[d];for(var d in c.href=a,c.pathname=a.replace(/[?#].*/,""),c.origin=c.protocol="",c.toString=c.toJSON=()=>a,c)Object.defineProperty(this,d,{enumerable:!0,configurable:!0,value:c[d]})},c.U.prototype=URL.prototype,(()=>{var a={149:0};c.O.j=b=>0===a[b];var b=(b,d)=>{var e,f,[g,h,i]=d,j=0;if(g.some(b=>0!==a[b])){for(e in h)c.o(h,e)&&(c.m[e]=h[e]);if(i)var k=i(c)}for(b&&b(d);j<g.length;j++)f=g[j],c.o(a,f)&&a[f]&&a[f][0](),a[f]=0;return c.O(k)},d=self.webpackChunk_N_E=self.webpackChunk_N_E||[];d.forEach(b.bind(null,0)),d.push=b.bind(null,d.push.bind(d))})()})();
2
- //# sourceMappingURL=edge-runtime-webpack.js.map
@@ -1 +0,0 @@
1
- self.__INTERCEPTION_ROUTE_REWRITE_MANIFEST="[]";
@@ -1 +0,0 @@
1
- self.__BUILD_MANIFEST=function(e,r,t,_){return{__rewrites:{afterFiles:[],beforeFiles:[],fallback:[]},__routerFilterStatic:{numItems:21,errorRate:1e-4,numBits:403,numHashes:14,bitArray:[1,0,0,e,1,r,r,e,r,e,e,r,e,r,r,r,e,r,r,e,e,e,e,r,e,e,r,r,e,e,r,e,e,e,e,e,r,r,e,e,e,e,r,e,e,r,e,e,r,e,e,r,r,e,e,e,e,r,r,r,e,r,r,e,r,r,e,e,r,e,r,r,r,r,e,e,r,r,e,e,r,e,r,r,e,r,r,e,e,e,e,r,r,r,r,r,r,r,r,r,r,r,e,e,r,r,r,e,e,e,r,r,e,e,e,e,e,e,e,r,r,e,r,e,e,e,e,r,r,e,r,r,e,e,r,e,r,e,r,e,r,e,r,r,e,e,e,e,r,e,r,e,e,e,r,e,r,e,e,e,e,r,r,e,e,e,r,e,e,e,e,e,r,r,r,r,e,r,e,e,r,r,r,r,e,r,r,r,e,e,r,r,r,r,e,e,e,e,e,e,r,e,e,e,r,e,e,e,r,r,e,e,e,e,r,r,r,e,e,r,r,r,r,e,e,r,r,r,e,r,e,r,r,e,e,r,r,e,r,r,r,e,r,e,r,r,e,e,r,e,r,r,r,r,e,r,r,r,e,e,e,e,e,r,r,e,e,e,e,r,e,r,e,r,e,e,r,e,r,r,r,r,e,e,r,r,r,e,e,e,e,r,r,e,r,r,r,e,e,e,r,r,e,r,e,e,e,r,r,e,r,e,r,r,r,r,r,e,e,r,r,r,e,e,e,r,e,e,e,e,e,r,e,r,e,r,e,r,r,r,r,e,r,e,r,e,r,e,e,r,e,r,r,e,r,r,e,e,r,e,r,r,e,r,e,r,r,r,r,r,e,e,e,r,r,r,e,r,r,e,e,e,e,r,r,e,r,r,r,e,e,e,r,e,e,e,r,e,r,r,e,r,e]},__routerFilterDynamic:{numItems:4,errorRate:1e-4,numBits:77,numHashes:14,bitArray:[r,r,e,e,e,e,r,r,r,e,e,r,r,r,e,e,e,e,r,e,r,e,e,r,r,r,e,r,r,e,r,r,r,e,e,e,e,e,r,e,r,e,r,r,r,e,r,e,e,e,r,r,r,r,r,r,r,r,e,r,e,r,e,r,r,r,e,r,e,e,r,e,e,r,e,e,r]},"/_error":["static/chunks/pages/_error-412ff705bc5b0636.js"],sortedPages:["/_app","/_error"]}}(0,1,1e-4,14),self.__BUILD_MANIFEST_CB&&self.__BUILD_MANIFEST_CB();
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[200],{1525:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"errorOnce",{enumerable:!0,get:function(){return r}});let r=e=>{}},1528:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),!function(e,t){for(var r in t)Object.defineProperty(e,r,{enumerable:!0,get:t[r]})}(t,{DecodeError:function(){return h},MiddlewareNotFoundError:function(){return P},MissingStaticPage:function(){return m},NormalizeError:function(){return y},PageNotFoundError:function(){return g},SP:function(){return p},ST:function(){return d},WEB_VITALS:function(){return r},execOnce:function(){return n},getDisplayName:function(){return l},getLocationOrigin:function(){return a},getURL:function(){return i},isAbsoluteUrl:function(){return u},isResSent:function(){return s},loadGetInitialProps:function(){return f},normalizeRepeatedSlashes:function(){return c},stringifyError:function(){return b}});let r=["CLS","FCP","FID","INP","LCP","TTFB"];function n(e){let t,r=!1;return function(){for(var n=arguments.length,o=Array(n),u=0;u<n;u++)o[u]=arguments[u];return r||(r=!0,t=e(...o)),t}}let o=/^[a-zA-Z][a-zA-Z\d+\-.]*?:/,u=e=>o.test(e);function a(){let{protocol:e,hostname:t,port:r}=window.location;return e+"//"+t+(r?":"+r:"")}function i(){let{href:e}=window.location,t=a();return e.substring(t.length)}function l(e){return"string"==typeof e?e:e.displayName||e.name||"Unknown"}function s(e){return e.finished||e.headersSent}function c(e){let t=e.split("?");return t[0].replace(/\\/g,"/").replace(/\/\/+/g,"/")+(t[1]?"?"+t.slice(1).join("?"):"")}async function f(e,t){let r=t.res||t.ctx&&t.ctx.res;if(!e.getInitialProps)return t.ctx&&t.Component?{pageProps:await f(t.Component,t.ctx)}:{};let n=await e.getInitialProps(t);if(r&&s(r))return n;if(!n)throw Object.defineProperty(Error('"'+l(e)+'.getInitialProps()" should resolve to an object. But found "'+n+'" instead.'),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});return n}let p="undefined"!=typeof performance,d=p&&["mark","measure","getEntriesByName"].every(e=>"function"==typeof performance[e]);class h extends Error{}class y extends Error{}class g extends Error{constructor(e){super(),this.code="ENOENT",this.name="PageNotFoundError",this.message="Cannot find module for page: "+e}}class m extends Error{constructor(e,t){super(),this.message="Failed to load static file for page: "+e+" "+t}}class P extends Error{constructor(){super(),this.code="ENOENT",this.message="Cannot find the middleware module"}}function b(e){return JSON.stringify({message:e.message,stack:e.stack})}},1932:(e,t,r)=>{var n=r(2892);r.o(n,"useParams")&&r.d(t,{useParams:function(){return n.useParams}}),r.o(n,"usePathname")&&r.d(t,{usePathname:function(){return n.usePathname}}),r.o(n,"useRouter")&&r.d(t,{useRouter:function(){return n.useRouter}}),r.o(n,"useSearchParams")&&r.d(t,{useSearchParams:function(){return n.useSearchParams}})},2742:(e,t)=>{function r(e){let t={};for(let[r,n]of e.entries()){let e=t[r];void 0===e?t[r]=n:Array.isArray(e)?e.push(n):t[r]=[e,n]}return t}function n(e){return"string"==typeof e?e:("number"!=typeof e||isNaN(e))&&"boolean"!=typeof e?"":String(e)}function o(e){let t=new URLSearchParams;for(let[r,o]of Object.entries(e))if(Array.isArray(o))for(let e of o)t.append(r,n(e));else t.set(r,n(o));return t}function u(e){for(var t=arguments.length,r=Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];for(let t of r){for(let r of t.keys())e.delete(r);for(let[r,n]of t.entries())e.append(r,n)}return e}Object.defineProperty(t,"__esModule",{value:!0}),!function(e,t){for(var r in t)Object.defineProperty(e,r,{enumerable:!0,get:t[r]})}(t,{assign:function(){return u},searchParamsToUrlQuery:function(){return r},urlQueryToSearchParams:function(){return o}})},3483:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),!function(e,t){for(var r in t)Object.defineProperty(e,r,{enumerable:!0,get:t[r]})}(t,{default:function(){return g},useLinkStatus:function(){return P}});let n=r(5552),o=r(655),u=n._(r(4519)),a=r(7174),i=r(3232),l=r(9744),s=r(1528),c=r(10);r(1293);let f=r(7099),p=r(4367),d=r(6943);r(1525);let h=r(5712);function y(e){return"string"==typeof e?e:(0,a.formatUrl)(e)}function g(e){var t;let r,n,a,[g,P]=(0,u.useOptimistic)(f.IDLE_LINK_STATUS),b=(0,u.useRef)(null),{href:_,as:v,children:E,prefetch:O=null,passHref:j,replace:S,shallow:C,scroll:N,onClick:T,onMouseEnter:R,onTouchStart:x,legacyBehavior:A=!1,onNavigate:M,ref:L,unstable_dynamicOnHover:k,...I}=e;r=E,A&&("string"==typeof r||"number"==typeof r)&&(r=(0,o.jsx)("a",{children:r}));let U=u.default.useContext(i.AppRouterContext),w=!1!==O,F=!1!==O?null===(t=O)||"auto"===t?h.FetchStrategy.PPR:h.FetchStrategy.Full:h.FetchStrategy.PPR,{href:D,as:K}=u.default.useMemo(()=>{let e=y(_);return{href:e,as:v?y(v):e}},[_,v]);A&&(n=u.default.Children.only(r));let B=A?n&&"object"==typeof n&&n.ref:L,z=u.default.useCallback(e=>(null!==U&&(b.current=(0,f.mountLinkInstance)(e,D,U,F,w,P)),()=>{b.current&&((0,f.unmountLinkForCurrentNavigation)(b.current),b.current=null),(0,f.unmountPrefetchableInstance)(e)}),[w,D,U,F,P]),Q={ref:(0,l.useMergedRef)(z,B),onClick(e){A||"function"!=typeof T||T(e),A&&n.props&&"function"==typeof n.props.onClick&&n.props.onClick(e),U&&(e.defaultPrevented||function(e,t,r,n,o,a,i){let{nodeName:l}=e.currentTarget;if(!("A"===l.toUpperCase()&&function(e){let t=e.currentTarget.getAttribute("target");return t&&"_self"!==t||e.metaKey||e.ctrlKey||e.shiftKey||e.altKey||e.nativeEvent&&2===e.nativeEvent.which}(e)||e.currentTarget.hasAttribute("download"))){if(!(0,p.isLocalURL)(t)){o&&(e.preventDefault(),location.replace(t));return}if(e.preventDefault(),i){let e=!1;if(i({preventDefault:()=>{e=!0}}),e)return}u.default.startTransition(()=>{(0,d.dispatchNavigateAction)(r||t,o?"replace":"push",null==a||a,n.current)})}}(e,D,K,b,S,N,M))},onMouseEnter(e){A||"function"!=typeof R||R(e),A&&n.props&&"function"==typeof n.props.onMouseEnter&&n.props.onMouseEnter(e),U&&w&&(0,f.onNavigationIntent)(e.currentTarget,!0===k)},onTouchStart:function(e){A||"function"!=typeof x||x(e),A&&n.props&&"function"==typeof n.props.onTouchStart&&n.props.onTouchStart(e),U&&w&&(0,f.onNavigationIntent)(e.currentTarget,!0===k)}};return(0,s.isAbsoluteUrl)(K)?Q.href=K:A&&!j&&("a"!==n.type||"href"in n.props)||(Q.href=(0,c.addBasePath)(K)),a=A?u.default.cloneElement(n,Q):(0,o.jsx)("a",{...I,...Q,children:r}),(0,o.jsx)(m.Provider,{value:g,children:a})}let m=(0,u.createContext)(f.IDLE_LINK_STATUS),P=()=>(0,u.useContext)(m);("function"==typeof t.default||"object"==typeof t.default&&null!==t.default)&&void 0===t.default.__esModule&&(Object.defineProperty(t.default,"__esModule",{value:!0}),Object.assign(t.default,t),e.exports=t.default)},4367:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"isLocalURL",{enumerable:!0,get:function(){return u}});let n=r(1528),o=r(4145);function u(e){if(!(0,n.isAbsoluteUrl)(e))return!0;try{let t=(0,n.getLocationOrigin)(),r=new URL(e,t);return r.origin===t&&(0,o.hasBasePath)(r.pathname)}catch(e){return!1}}},7174:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),!function(e,t){for(var r in t)Object.defineProperty(e,r,{enumerable:!0,get:t[r]})}(t,{formatUrl:function(){return u},formatWithValidation:function(){return i},urlObjectKeys:function(){return a}});let n=r(5552)._(r(2742)),o=/https?|ftp|gopher|file/;function u(e){let{auth:t,hostname:r}=e,u=e.protocol||"",a=e.pathname||"",i=e.hash||"",l=e.query||"",s=!1;t=t?encodeURIComponent(t).replace(/%3A/i,":")+"@":"",e.host?s=t+e.host:r&&(s=t+(~r.indexOf(":")?"["+r+"]":r),e.port&&(s+=":"+e.port)),l&&"object"==typeof l&&(l=String(n.urlQueryToSearchParams(l)));let c=e.search||l&&"?"+l||"";return u&&!u.endsWith(":")&&(u+=":"),e.slashes||(!u||o.test(u))&&!1!==s?(s="//"+(s||""),a&&"/"!==a[0]&&(a="/"+a)):s||(s=""),i&&"#"!==i[0]&&(i="#"+i),c&&"?"!==c[0]&&(c="?"+c),""+u+s+(a=a.replace(/[?#]/g,encodeURIComponent))+(c=c.replace("#","%23"))+i}let a=["auth","hash","host","hostname","href","path","pathname","port","protocol","query","search","slashes"];function i(e){return u(e)}},9744:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"useMergedRef",{enumerable:!0,get:function(){return o}});let n=r(4519);function o(e,t){let r=(0,n.useRef)(null),o=(0,n.useRef)(null);return(0,n.useCallback)(n=>{if(null===n){let e=r.current;e&&(r.current=null,e());let t=o.current;t&&(o.current=null,t())}else e&&(r.current=u(e,n)),t&&(o.current=u(t,n))},[e,t])}function u(e,t){if("function"!=typeof e)return e.current=t,()=>{e.current=null};{let r=e(t);return"function"==typeof r?r:()=>e(null)}}("function"==typeof t.default||"object"==typeof t.default&&null!==t.default)&&void 0===t.default.__esModule&&(Object.defineProperty(t.default,"__esModule",{value:!0}),Object.assign(t.default,t),e.exports=t.default)}}]);
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[29],{1123:(e,t,r)=>{r.d(t,{CommandPalette:()=>i});var s=r(655),n=r(4519),l=r(1932);function i(){let[e,t]=(0,n.useState)(!1),[r,i]=(0,n.useState)(""),[o,a]=(0,n.useState)(null),[u,x]=(0,n.useState)(!1),[h,f]=(0,n.useState)(null),[m,p]=(0,n.useState)(0),k=(0,n.useRef)(null),b=(0,l.useRouter)();(0,n.useEffect)(()=>{function r(r){if((r.metaKey||r.ctrlKey)&&"k"===r.key.toLowerCase()){r.preventDefault(),t(e=>!e);return}"Escape"===r.key&&e&&(r.preventDefault(),t(!1))}return window.addEventListener("keydown",r),()=>window.removeEventListener("keydown",r)},[e]),(0,n.useEffect)(()=>{!e||o||u||(x(!0),fetch("/api/search-index").then(e=>{if(!e.ok)throw Error("Failed: ".concat(e.status));return e.json()}).then(e=>{a(e),f(null)}).catch(e=>f(String(e))).finally(()=>x(!1)))},[e,o,u]),(0,n.useEffect)(()=>{e?(requestAnimationFrame(()=>{var e;return null==(e=k.current)?void 0:e.focus()}),p(0)):i("")},[e]);let v=(0,n.useMemo)(()=>o?function(e,t,r){let s=t.trim().toLowerCase();if(0===s.length)return e.slice(0,Math.min(50,20));let n=s.split(/\s+/),l=[];for(let t of e){let e=0,r=!0;for(let s of n){let n=t.haystack.indexOf(s);if(-1===n){r=!1;break}e+=1e3-Math.min(n,999),(0===n||" "===t.haystack[n-1])&&(e+=200)}r&&("prompt"===t.kind&&(e+=50),"session"===t.kind&&(e+=30),l.push({entry:t,score:e}))}return l.sort((e,t)=>t.score-e.score),l.slice(0,r).map(e=>e.entry)}(o.entries,r,50):[],[o,r]),j=(0,n.useMemo)(()=>(function(e){let t=[{kind:"session",items:[]},{kind:"prompt",items:[]},{kind:"project",items:[]}];for(let r of e){let e=t.find(e=>e.kind===r.kind);null==e||e.items.push(r)}return t.filter(e=>e.items.length>0)})(v),[v]);return((0,n.useEffect)(()=>{p(0)},[r]),e)?(0,s.jsx)("div",{className:"fixed inset-0 z-50 flex items-start justify-center bg-black/60 px-4 pt-[12vh]",onClick:()=>t(!1),children:(0,s.jsxs)("div",{className:"w-full max-w-2xl overflow-hidden rounded-xl border border-surface-border bg-surface-1 shadow-2xl",onClick:e=>e.stopPropagation(),children:[(0,s.jsxs)("div",{className:"flex items-center gap-3 border-b border-surface-border px-4 py-3",children:[(0,s.jsx)(d,{}),(0,s.jsx)("input",{ref:k,value:r,onChange:e=>i(e.target.value),onKeyDown:function(e){if(0!==v.length){if("ArrowDown"===e.key)e.preventDefault(),p(e=>(e+1)%v.length);else if("ArrowUp"===e.key)e.preventDefault(),p(e=>(e-1+v.length)%v.length);else if("Enter"===e.key){e.preventDefault();let r=v[m];r&&(t(!1),b.push(r.href))}}},placeholder:u?"Loading index…":o?"Search ".concat(o.entryCount.toLocaleString()," prompts and sessions…"):"Search…",className:"flex-1 bg-transparent text-sm text-ink-1 placeholder:text-ink-3 focus:outline-none"}),(0,s.jsx)("kbd",{className:"kbd",children:"Esc"})]}),(0,s.jsxs)("div",{className:"max-h-[60vh] overflow-y-auto py-1",children:[h?(0,s.jsx)("div",{className:"px-4 py-6 text-sm text-danger",children:h}):null,h||u||0!==v.length||!(r.length>0)?null:(0,s.jsxs)("div",{className:"px-4 py-6 text-center text-sm text-ink-3",children:["No matches for “",r,"”"]}),h||u||0!==r.length||!o?null:(0,s.jsx)("div",{className:"px-4 py-6 text-center text-sm text-ink-3",children:"Start typing to search."}),j.map(e=>{var r;let{kind:n,items:l}=e;return(0,s.jsx)(c,{kind:n,items:l,activeId:null==(r=v[m])?void 0:r.id,onSelect:e=>{t(!1),b.push(e)}},n)})]}),(0,s.jsxs)("div",{className:"flex items-center justify-between border-t border-surface-border px-4 py-2 text-2xs text-ink-3",children:[(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)("kbd",{className:"kbd",children:"↑"}),(0,s.jsx)("kbd",{className:"kbd",children:"↓"}),(0,s.jsx)("span",{children:"navigate"}),(0,s.jsx)("span",{children:"\xb7"}),(0,s.jsx)("kbd",{className:"kbd",children:"↵"}),(0,s.jsx)("span",{children:"open"})]}),(0,s.jsx)("div",{children:o?"".concat(o.entryCount.toLocaleString()," indexed"):null})]})]})}):null}let o={prompt:"Prompts",session:"Sessions",project:"Projects"};function c(e){let{kind:t,items:r,activeId:n,onSelect:l}=e;return 0===r.length?null:(0,s.jsxs)("div",{className:"px-1 pb-1",children:[(0,s.jsx)("div",{className:"px-3 py-1.5 text-2xs font-medium uppercase tracking-wider text-ink-4",children:o[t]}),(0,s.jsx)("ul",{children:r.map(e=>{let r=e.id===n;return(0,s.jsx)("li",{children:(0,s.jsxs)("button",{type:"button",onClick:()=>l(e.href),className:"group flex w-full items-center gap-3 rounded-md px-3 py-2 text-left text-sm ".concat(r?"bg-accent-soft text-ink-0":"text-ink-1 hover:bg-surface-2"),children:[(0,s.jsx)(a,{kind:t}),(0,s.jsx)("span",{className:"line-clamp-1 flex-1 truncate",children:e.title}),e.subtitle?(0,s.jsx)("span",{className:"shrink-0 text-2xs text-ink-3",children:e.subtitle}):null]})},e.id)})})]})}function a(e){let{kind:t}=e,r="h-4 w-4 shrink-0 text-ink-3";switch(t){case"prompt":return(0,s.jsx)("svg",{viewBox:"0 0 16 16",fill:"none",className:r,children:(0,s.jsx)("path",{d:"M3 4h10M3 8h6M3 12h10",stroke:"currentColor",strokeWidth:"1.4",strokeLinecap:"round"})});case"session":return(0,s.jsxs)("svg",{viewBox:"0 0 16 16",fill:"none",className:r,children:[(0,s.jsx)("rect",{x:"2.5",y:"3.5",width:"11",height:"9",rx:"1.5",stroke:"currentColor",strokeWidth:"1.4"}),(0,s.jsx)("path",{d:"M5 7h6M5 10h4",stroke:"currentColor",strokeWidth:"1.4",strokeLinecap:"round"})]});case"project":return(0,s.jsx)("svg",{viewBox:"0 0 16 16",fill:"none",className:r,children:(0,s.jsx)("path",{d:"M2.5 5.5C2.5 4.67 3.17 4 4 4h3l1.5 1.5H12c.83 0 1.5.67 1.5 1.5v4c0 .83-.67 1.5-1.5 1.5H4c-.83 0-1.5-.67-1.5-1.5v-5z",stroke:"currentColor",strokeWidth:"1.4"})})}}function d(){return(0,s.jsxs)("svg",{width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",className:"text-ink-3",children:[(0,s.jsx)("circle",{cx:"6",cy:"6",r:"4",stroke:"currentColor",strokeWidth:"1.4"}),(0,s.jsx)("path",{d:"M9.5 9.5L12 12",stroke:"currentColor",strokeWidth:"1.4",strokeLinecap:"round"})]})}},4059:(e,t,r)=>{r.d(t,{UserMenu:()=>o});var s=r(655),n=r(3483),l=r.n(n),i=r(4519);function o(e){var t,r,n;let{user:o}=e,[c,a]=(0,i.useState)(!1),d=(0,i.useRef)(null);(0,i.useEffect)(()=>{function e(e){d.current&&!d.current.contains(e.target)&&a(!1)}function t(e){"Escape"===e.key&&a(!1)}return document.addEventListener("mousedown",e),document.addEventListener("keydown",t),()=>{document.removeEventListener("mousedown",e),document.removeEventListener("keydown",t)}},[]);let u=null!=(n=null!=(r=o.login)?r:null==(t=o.email)?void 0:t.split("@")[0])?n:"You",x=u.charAt(0).toUpperCase()||"U";return(0,s.jsxs)("div",{ref:d,className:"relative",children:[(0,s.jsx)("button",{type:"button",onClick:()=>a(e=>!e),className:"flex h-7 w-7 items-center justify-center rounded-full border border-surface-border bg-surface-1 text-2xs font-semibold text-ink-1 hover:border-surface-4 focus:outline-none focus:ring-2 focus:ring-accent/40","aria-label":"Account menu",children:o.avatarUrl?(0,s.jsx)("img",{src:o.avatarUrl,alt:"",className:"h-7 w-7 rounded-full object-cover"}):(0,s.jsx)("span",{children:x})}),c?(0,s.jsxs)("div",{className:"absolute right-0 top-9 w-56 overflow-hidden rounded-lg border border-surface-border bg-surface-1 shadow-xl",children:[(0,s.jsxs)("div",{className:"border-b border-surface-border px-3 py-3",children:[(0,s.jsx)("div",{className:"text-2xs font-medium text-ink-3",children:"Signed in as"}),(0,s.jsx)("div",{className:"mt-0.5 truncate text-sm font-semibold text-ink-1",children:u}),o.email?(0,s.jsx)("div",{className:"truncate text-2xs text-ink-3",children:o.email}):null]}),(0,s.jsxs)("ul",{className:"py-1 text-sm",children:[(0,s.jsx)("li",{children:(0,s.jsx)(l(),{href:"/my-projects",onClick:()=>a(!1),className:"block px-3 py-1.5 text-ink-1 hover:bg-surface-2",children:"My projects"})}),(0,s.jsx)("li",{children:(0,s.jsx)(l(),{href:"/my-shares",onClick:()=>a(!1),className:"block px-3 py-1.5 text-ink-1 hover:bg-surface-2",children:"My shares"})})]}),(0,s.jsx)("form",{action:"/auth/signout",method:"POST",className:"border-t border-surface-border",children:(0,s.jsx)("button",{type:"submit",className:"block w-full px-3 py-2 text-left text-sm text-ink-2 hover:bg-surface-2 hover:text-ink-1",children:"Sign out"})})]}):null]})}},6597:(e,t,r)=>{r.d(t,{SearchTrigger:()=>n});var s=r(655);function n(){return(0,s.jsxs)("button",{type:"button",onClick:()=>{window.dispatchEvent(new KeyboardEvent("keydown",{key:"k",metaKey:!0,bubbles:!0}))},className:"flex items-center gap-2 rounded-md border border-surface-border bg-surface-1 px-2 py-1 text-2xs text-ink-3 hover:border-surface-4 hover:text-ink-1","aria-label":"Open search",children:[(0,s.jsxs)("svg",{width:"11",height:"11",viewBox:"0 0 14 14",fill:"none",children:[(0,s.jsx)("circle",{cx:"6",cy:"6",r:"4",stroke:"currentColor",strokeWidth:"1.4"}),(0,s.jsx)("path",{d:"M9.5 9.5L12 12",stroke:"currentColor",strokeWidth:"1.4",strokeLinecap:"round"})]}),(0,s.jsx)("span",{className:"hidden sm:inline",children:"Search"}),(0,s.jsx)("span",{className:"kbd",children:"⌘K"})]})}}}]);
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[994],{6485:(e,t,s)=>{s.d(t,{A:()=>p});var r=s(1556),i=s(6129),a=s(4495),n=s(4824),o=s(5509),l=s(1583),u=s(6084),h=s(519),c=s(4464),d=s(6120),_=s(6345),w=s(7236);(0,h.V)();let g={url:i.nf,storageKey:i.AQ,autoRefreshToken:!0,persistSession:!0,detectSessionInUrl:!0,headers:i.Rn,flowType:"implicit",debug:!1,hasCustomAuthorizationHeader:!1,throwOnError:!1,lockAcquireTimeout:5e3,skipAutoInitialize:!1};async function f(e,t,s){return await s()}let y={};class b{get jwks(){var e,t;return null!=(t=null==(e=y[this.storageKey])?void 0:e.jwks)?t:{keys:[]}}set jwks(e){y[this.storageKey]=Object.assign(Object.assign({},y[this.storageKey]),{jwks:e})}get jwks_cached_at(){var e,t;return null!=(t=null==(e=y[this.storageKey])?void 0:e.cachedAt)?t:Number.MIN_SAFE_INTEGER}set jwks_cached_at(e){y[this.storageKey]=Object.assign(Object.assign({},y[this.storageKey]),{cachedAt:e})}constructor(e){var t,s,i;this.userStorage=null,this.memoryStorage=null,this.stateChangeEmitters=new Map,this.autoRefreshTicker=null,this.autoRefreshTickTimeout=null,this.visibilityChangedCallback=null,this.refreshingDeferred=null,this.initializePromise=null,this.detectSessionInUrl=!0,this.hasCustomAuthorizationHeader=!1,this.suppressGetSessionWarning=!1,this.lockAcquired=!1,this.pendingInLock=[],this.broadcastChannel=null,this.logger=console.log;let a=Object.assign(Object.assign({},g),e);if(this.storageKey=a.storageKey,this.instanceID=null!=(t=b.nextInstanceID[this.storageKey])?t:0,b.nextInstanceID[this.storageKey]=this.instanceID+1,this.logDebugMessages=!!a.debug,"function"==typeof a.debug&&(this.logger=a.debug),this.instanceID>0&&(0,o.Bd)()){let e=`${this._logPrefix()} Multiple GoTrueClient instances detected in the same browser context. It is not an error, but this should be avoided as it may produce undefined behavior when used concurrently under the same storage key.`;console.warn(e),this.logDebugMessages&&console.trace(e)}if(this.persistSession=a.persistSession,this.autoRefreshToken=a.autoRefreshToken,this.admin=new r.A({url:a.url,headers:a.headers,fetch:a.fetch}),this.url=a.url,this.headers=a.headers,this.fetch=(0,o.lA)(a.fetch),this.lock=a.lock||f,this.detectSessionInUrl=a.detectSessionInUrl,this.flowType=a.flowType,this.hasCustomAuthorizationHeader=a.hasCustomAuthorizationHeader,this.throwOnError=a.throwOnError,this.lockAcquireTimeout=a.lockAcquireTimeout,a.lock?this.lock=a.lock:this.persistSession&&(0,o.Bd)()&&(null==(s=null==globalThis?void 0:globalThis.navigator)?void 0:s.locks)?this.lock=u.JS:this.lock=f,this.jwks||(this.jwks={keys:[]},this.jwks_cached_at=Number.MIN_SAFE_INTEGER),this.mfa={verify:this._verify.bind(this),enroll:this._enroll.bind(this),unenroll:this._unenroll.bind(this),challenge:this._challenge.bind(this),listFactors:this._listFactors.bind(this),challengeAndVerify:this._challengeAndVerify.bind(this),getAuthenticatorAssuranceLevel:this._getAuthenticatorAssuranceLevel.bind(this),webauthn:new w.H1(this)},this.oauth={getAuthorizationDetails:this._getAuthorizationDetails.bind(this),approveAuthorization:this._approveAuthorization.bind(this),denyAuthorization:this._denyAuthorization.bind(this),listGrants:this._listOAuthGrants.bind(this),revokeGrant:this._revokeOAuthGrant.bind(this)},this.persistSession?(a.storage?this.storage=a.storage:(0,o.LJ)()?this.storage=globalThis.localStorage:(this.memoryStorage={},this.storage=(0,l.r)(this.memoryStorage)),a.userStorage&&(this.userStorage=a.userStorage)):(this.memoryStorage={},this.storage=(0,l.r)(this.memoryStorage)),(0,o.Bd)()&&globalThis.BroadcastChannel&&this.persistSession&&this.storageKey){try{this.broadcastChannel=new globalThis.BroadcastChannel(this.storageKey)}catch(e){console.error("Failed to create a new BroadcastChannel, multi-tab state changes will not be available",e)}null==(i=this.broadcastChannel)||i.addEventListener("message",async e=>{this._debug("received broadcast notification from other tab or client",e);try{await this._notifyAllSubscribers(e.data.event,e.data.session,!1)}catch(e){this._debug("#broadcastChannel","error",e)}})}a.skipAutoInitialize||this.initialize().catch(e=>{this._debug("#initialize()","error",e)})}isThrowOnErrorEnabled(){return this.throwOnError}_returnResult(e){if(this.throwOnError&&e&&e.error)throw e.error;return e}_logPrefix(){return`GoTrueClient@${this.storageKey}:${this.instanceID} (${c.r}) ${new Date().toISOString()}`}_debug(...e){return this.logDebugMessages&&this.logger(this._logPrefix(),...e),this}async initialize(){return this.initializePromise||(this.initializePromise=(async()=>await this._acquireLock(this.lockAcquireTimeout,async()=>await this._initialize()))()),await this.initializePromise}async _initialize(){var e;try{let t={},s="none";if((0,o.Bd)()&&(t=(0,o.XR)(window.location.href),this._isImplicitGrantCallback(t)?s="implicit":await this._isPKCECallback(t)&&(s="pkce")),(0,o.Bd)()&&this.detectSessionInUrl&&"none"!==s){let{data:r,error:i}=await this._getSessionFromURL(t,s);if(i){(this._debug("#_initialize()","error detecting session from URL",i),(0,a.MJ)(i))&&(null==(e=i.details)||e.code);return{error:i}}let{session:n,redirectType:o}=r;return this._debug("#_initialize()","detected session in URL",n,"redirect type",o),await this._saveSession(n),setTimeout(async()=>{"recovery"===o?await this._notifyAllSubscribers("PASSWORD_RECOVERY",n):await this._notifyAllSubscribers("SIGNED_IN",n)},0),{error:null}}return await this._recoverAndRefresh(),{error:null}}catch(e){if((0,a.HY)(e))return this._returnResult({error:e});return this._returnResult({error:new a.HU("Unexpected error during initialization",e)})}finally{await this._handleVisibilityChange(),this._debug("#_initialize()","end")}}async signInAnonymously(e){var t,s,r;try{let{data:i,error:a}=await (0,n.vE)(this.fetch,"POST",`${this.url}/signup`,{headers:this.headers,body:{data:null!=(s=null==(t=null==e?void 0:e.options)?void 0:t.data)?s:{},gotrue_meta_security:{captcha_token:null==(r=null==e?void 0:e.options)?void 0:r.captchaToken}},xform:n.R_});if(a||!i)return this._returnResult({data:{user:null,session:null},error:a});let o=i.session,l=i.user;return i.session&&(await this._saveSession(i.session),await this._notifyAllSubscribers("SIGNED_IN",o)),this._returnResult({data:{user:l,session:o},error:null})}catch(e){if((0,a.HY)(e))return this._returnResult({data:{user:null,session:null},error:e});throw e}}async signUp(e){var t,s,r;try{let i;if("email"in e){let{email:s,password:r,options:a}=e,l=null,u=null;"pkce"===this.flowType&&([l,u]=await (0,o.dS)(this.storage,this.storageKey)),i=await (0,n.vE)(this.fetch,"POST",`${this.url}/signup`,{headers:this.headers,redirectTo:null==a?void 0:a.emailRedirectTo,body:{email:s,password:r,data:null!=(t=null==a?void 0:a.data)?t:{},gotrue_meta_security:{captcha_token:null==a?void 0:a.captchaToken},code_challenge:l,code_challenge_method:u},xform:n.R_})}else if("phone"in e){let{phone:t,password:a,options:o}=e;i=await (0,n.vE)(this.fetch,"POST",`${this.url}/signup`,{headers:this.headers,body:{phone:t,password:a,data:null!=(s=null==o?void 0:o.data)?s:{},channel:null!=(r=null==o?void 0:o.channel)?r:"sms",gotrue_meta_security:{captcha_token:null==o?void 0:o.captchaToken}},xform:n.R_})}else throw new a.U_("You must provide either an email or phone number and a password");let{data:l,error:u}=i;if(u||!l)return await (0,o.Gb)(this.storage,`${this.storageKey}-code-verifier`),this._returnResult({data:{user:null,session:null},error:u});let h=l.session,c=l.user;return l.session&&(await this._saveSession(l.session),await this._notifyAllSubscribers("SIGNED_IN",h)),this._returnResult({data:{user:c,session:h},error:null})}catch(e){if(await (0,o.Gb)(this.storage,`${this.storageKey}-code-verifier`),(0,a.HY)(e))return this._returnResult({data:{user:null,session:null},error:e});throw e}}async signInWithPassword(e){try{let t;if("email"in e){let{email:s,password:r,options:i}=e;t=await (0,n.vE)(this.fetch,"POST",`${this.url}/token?grant_type=password`,{headers:this.headers,body:{email:s,password:r,gotrue_meta_security:{captcha_token:null==i?void 0:i.captchaToken}},xform:n.GC})}else if("phone"in e){let{phone:s,password:r,options:i}=e;t=await (0,n.vE)(this.fetch,"POST",`${this.url}/token?grant_type=password`,{headers:this.headers,body:{phone:s,password:r,gotrue_meta_security:{captcha_token:null==i?void 0:i.captchaToken}},xform:n.GC})}else throw new a.U_("You must provide either an email or phone number and a password");let{data:s,error:r}=t;if(r)return this._returnResult({data:{user:null,session:null},error:r});if(!s||!s.session||!s.user){let e=new a.Ox;return this._returnResult({data:{user:null,session:null},error:e})}return s.session&&(await this._saveSession(s.session),await this._notifyAllSubscribers("SIGNED_IN",s.session)),this._returnResult({data:Object.assign({user:s.user,session:s.session},s.weak_password?{weakPassword:s.weak_password}:null),error:r})}catch(e){if((0,a.HY)(e))return this._returnResult({data:{user:null,session:null},error:e});throw e}}async signInWithOAuth(e){var t,s,r,i;return await this._handleProviderSignIn(e.provider,{redirectTo:null==(t=e.options)?void 0:t.redirectTo,scopes:null==(s=e.options)?void 0:s.scopes,queryParams:null==(r=e.options)?void 0:r.queryParams,skipBrowserRedirect:null==(i=e.options)?void 0:i.skipBrowserRedirect})}async exchangeCodeForSession(e){return await this.initializePromise,this._acquireLock(this.lockAcquireTimeout,async()=>this._exchangeCodeForSession(e))}async signInWithWeb3(e){let{chain:t}=e;switch(t){case"ethereum":return await this.signInWithEthereum(e);case"solana":return await this.signInWithSolana(e);default:throw Error(`@supabase/auth-js: Unsupported chain "${t}"`)}}async signInWithEthereum(e){var t,s,r,i,l,u,h,c,d,w,g;let f,y;if("message"in e)f=e.message,y=e.signature;else{let a,{chain:n,wallet:w,statement:g,options:b}=e;if((0,o.Bd)())if("object"==typeof w)a=w;else{let e=window;if("ethereum"in e&&"object"==typeof e.ethereum&&"request"in e.ethereum&&"function"==typeof e.ethereum.request)a=e.ethereum;else throw Error("@supabase/auth-js: No compatible Ethereum wallet interface on the window object (window.ethereum) detected. Make sure the user already has a wallet installed and connected for this app. Prefer passing the wallet interface object directly to signInWithWeb3({ chain: 'ethereum', wallet: resolvedUserWallet }) instead.")}else{if("object"!=typeof w||!(null==b?void 0:b.url))throw Error("@supabase/auth-js: Both wallet and url must be specified in non-browser environments.");a=w}let p=new URL(null!=(t=null==b?void 0:b.url)?t:window.location.href),v=await a.request({method:"eth_requestAccounts"}).then(e=>e).catch(()=>{throw Error("@supabase/auth-js: Wallet method eth_requestAccounts is missing or invalid")});if(!v||0===v.length)throw Error("@supabase/auth-js: No accounts available. Please ensure the wallet is connected.");let k=(0,_.bv)(v[0]),m=null==(s=null==b?void 0:b.signInWithEthereum)?void 0:s.chainId;if(!m){let e=await a.request({method:"eth_chainId"});m=(0,_.aD)(e)}let S={domain:p.host,address:k,statement:g,uri:p.href,version:"1",chainId:m,nonce:null==(r=null==b?void 0:b.signInWithEthereum)?void 0:r.nonce,issuedAt:null!=(l=null==(i=null==b?void 0:b.signInWithEthereum)?void 0:i.issuedAt)?l:new Date,expirationTime:null==(u=null==b?void 0:b.signInWithEthereum)?void 0:u.expirationTime,notBefore:null==(h=null==b?void 0:b.signInWithEthereum)?void 0:h.notBefore,requestId:null==(c=null==b?void 0:b.signInWithEthereum)?void 0:c.requestId,resources:null==(d=null==b?void 0:b.signInWithEthereum)?void 0:d.resources};f=(0,_.ob)(S),y=await a.request({method:"personal_sign",params:[(0,_.nj)(f),k]})}try{let{data:t,error:s}=await (0,n.vE)(this.fetch,"POST",`${this.url}/token?grant_type=web3`,{headers:this.headers,body:Object.assign({chain:"ethereum",message:f,signature:y},(null==(w=e.options)?void 0:w.captchaToken)?{gotrue_meta_security:{captcha_token:null==(g=e.options)?void 0:g.captchaToken}}:null),xform:n.R_});if(s)throw s;if(!t||!t.session||!t.user){let e=new a.Ox;return this._returnResult({data:{user:null,session:null},error:e})}return t.session&&(await this._saveSession(t.session),await this._notifyAllSubscribers("SIGNED_IN",t.session)),this._returnResult({data:Object.assign({},t),error:s})}catch(e){if((0,a.HY)(e))return this._returnResult({data:{user:null,session:null},error:e});throw e}}async signInWithSolana(e){var t,s,r,i,l,u,h,c,_,w,g,f;let y,b;if("message"in e)y=e.message,b=e.signature;else{let a,{chain:n,wallet:d,statement:g,options:f}=e;if((0,o.Bd)())if("object"==typeof d)a=d;else{let e=window;if("solana"in e&&"object"==typeof e.solana&&("signIn"in e.solana&&"function"==typeof e.solana.signIn||"signMessage"in e.solana&&"function"==typeof e.solana.signMessage))a=e.solana;else throw Error("@supabase/auth-js: No compatible Solana wallet interface on the window object (window.solana) detected. Make sure the user already has a wallet installed and connected for this app. Prefer passing the wallet interface object directly to signInWithWeb3({ chain: 'solana', wallet: resolvedUserWallet }) instead.")}else{if("object"!=typeof d||!(null==f?void 0:f.url))throw Error("@supabase/auth-js: Both wallet and url must be specified in non-browser environments.");a=d}let p=new URL(null!=(t=null==f?void 0:f.url)?t:window.location.href);if("signIn"in a&&a.signIn){let e,t=await a.signIn(Object.assign(Object.assign(Object.assign({issuedAt:new Date().toISOString()},null==f?void 0:f.signInWithSolana),{version:"1",domain:p.host,uri:p.href}),g?{statement:g}:null));if(Array.isArray(t)&&t[0]&&"object"==typeof t[0])e=t[0];else if(t&&"object"==typeof t&&"signedMessage"in t&&"signature"in t)e=t;else throw Error("@supabase/auth-js: Wallet method signIn() returned unrecognized value");if("signedMessage"in e&&"signature"in e&&("string"==typeof e.signedMessage||e.signedMessage instanceof Uint8Array)&&e.signature instanceof Uint8Array)y="string"==typeof e.signedMessage?e.signedMessage:new TextDecoder().decode(e.signedMessage),b=e.signature;else throw Error("@supabase/auth-js: Wallet method signIn() API returned object without signedMessage and signature fields")}else{if(!("signMessage"in a)||"function"!=typeof a.signMessage||!("publicKey"in a)||"object"!=typeof a||!a.publicKey||!("toBase58"in a.publicKey)||"function"!=typeof a.publicKey.toBase58)throw Error("@supabase/auth-js: Wallet does not have a compatible signMessage() and publicKey.toBase58() API");y=[`${p.host} wants you to sign in with your Solana account:`,a.publicKey.toBase58(),...g?["",g,""]:[""],"Version: 1",`URI: ${p.href}`,`Issued At: ${null!=(r=null==(s=null==f?void 0:f.signInWithSolana)?void 0:s.issuedAt)?r:new Date().toISOString()}`,...(null==(i=null==f?void 0:f.signInWithSolana)?void 0:i.notBefore)?[`Not Before: ${f.signInWithSolana.notBefore}`]:[],...(null==(l=null==f?void 0:f.signInWithSolana)?void 0:l.expirationTime)?[`Expiration Time: ${f.signInWithSolana.expirationTime}`]:[],...(null==(u=null==f?void 0:f.signInWithSolana)?void 0:u.chainId)?[`Chain ID: ${f.signInWithSolana.chainId}`]:[],...(null==(h=null==f?void 0:f.signInWithSolana)?void 0:h.nonce)?[`Nonce: ${f.signInWithSolana.nonce}`]:[],...(null==(c=null==f?void 0:f.signInWithSolana)?void 0:c.requestId)?[`Request ID: ${f.signInWithSolana.requestId}`]:[],...(null==(w=null==(_=null==f?void 0:f.signInWithSolana)?void 0:_.resources)?void 0:w.length)?["Resources",...f.signInWithSolana.resources.map(e=>`- ${e}`)]:[]].join("\n");let e=await a.signMessage(new TextEncoder().encode(y),"utf8");if(!e||!(e instanceof Uint8Array))throw Error("@supabase/auth-js: Wallet signMessage() API returned an recognized value");b=e}}try{let{data:t,error:s}=await (0,n.vE)(this.fetch,"POST",`${this.url}/token?grant_type=web3`,{headers:this.headers,body:Object.assign({chain:"solana",message:y,signature:(0,d.no)(b)},(null==(g=e.options)?void 0:g.captchaToken)?{gotrue_meta_security:{captcha_token:null==(f=e.options)?void 0:f.captchaToken}}:null),xform:n.R_});if(s)throw s;if(!t||!t.session||!t.user){let e=new a.Ox;return this._returnResult({data:{user:null,session:null},error:e})}return t.session&&(await this._saveSession(t.session),await this._notifyAllSubscribers("SIGNED_IN",t.session)),this._returnResult({data:Object.assign({},t),error:s})}catch(e){if((0,a.HY)(e))return this._returnResult({data:{user:null,session:null},error:e});throw e}}async _exchangeCodeForSession(e){let t=await (0,o.U9)(this.storage,`${this.storageKey}-code-verifier`),[s,r]=(null!=t?t:"").split("/");try{if(!s&&"pkce"===this.flowType)throw new a.lh;let{data:t,error:i}=await (0,n.vE)(this.fetch,"POST",`${this.url}/token?grant_type=pkce`,{headers:this.headers,body:{auth_code:e,code_verifier:s},xform:n.R_});if(await (0,o.Gb)(this.storage,`${this.storageKey}-code-verifier`),i)throw i;if(!t||!t.session||!t.user){let e=new a.Ox;return this._returnResult({data:{user:null,session:null,redirectType:null},error:e})}return t.session&&(await this._saveSession(t.session),await this._notifyAllSubscribers("SIGNED_IN",t.session)),this._returnResult({data:Object.assign(Object.assign({},t),{redirectType:null!=r?r:null}),error:i})}catch(e){if(await (0,o.Gb)(this.storage,`${this.storageKey}-code-verifier`),(0,a.HY)(e))return this._returnResult({data:{user:null,session:null,redirectType:null},error:e});throw e}}async signInWithIdToken(e){try{let{options:t,provider:s,token:r,access_token:i,nonce:o}=e,{data:l,error:u}=await (0,n.vE)(this.fetch,"POST",`${this.url}/token?grant_type=id_token`,{headers:this.headers,body:{provider:s,id_token:r,access_token:i,nonce:o,gotrue_meta_security:{captcha_token:null==t?void 0:t.captchaToken}},xform:n.R_});if(u)return this._returnResult({data:{user:null,session:null},error:u});if(!l||!l.session||!l.user){let e=new a.Ox;return this._returnResult({data:{user:null,session:null},error:e})}return l.session&&(await this._saveSession(l.session),await this._notifyAllSubscribers("SIGNED_IN",l.session)),this._returnResult({data:l,error:u})}catch(e){if((0,a.HY)(e))return this._returnResult({data:{user:null,session:null},error:e});throw e}}async signInWithOtp(e){var t,s,r,i,l;try{if("email"in e){let{email:r,options:i}=e,a=null,l=null;"pkce"===this.flowType&&([a,l]=await (0,o.dS)(this.storage,this.storageKey));let{error:u}=await (0,n.vE)(this.fetch,"POST",`${this.url}/otp`,{headers:this.headers,body:{email:r,data:null!=(t=null==i?void 0:i.data)?t:{},create_user:null==(s=null==i?void 0:i.shouldCreateUser)||s,gotrue_meta_security:{captcha_token:null==i?void 0:i.captchaToken},code_challenge:a,code_challenge_method:l},redirectTo:null==i?void 0:i.emailRedirectTo});return this._returnResult({data:{user:null,session:null},error:u})}if("phone"in e){let{phone:t,options:s}=e,{data:a,error:o}=await (0,n.vE)(this.fetch,"POST",`${this.url}/otp`,{headers:this.headers,body:{phone:t,data:null!=(r=null==s?void 0:s.data)?r:{},create_user:null==(i=null==s?void 0:s.shouldCreateUser)||i,gotrue_meta_security:{captcha_token:null==s?void 0:s.captchaToken},channel:null!=(l=null==s?void 0:s.channel)?l:"sms"}});return this._returnResult({data:{user:null,session:null,messageId:null==a?void 0:a.message_id},error:o})}throw new a.U_("You must provide either an email or phone number.")}catch(e){if(await (0,o.Gb)(this.storage,`${this.storageKey}-code-verifier`),(0,a.HY)(e))return this._returnResult({data:{user:null,session:null},error:e});throw e}}async verifyOtp(e){var t,s;try{let r,i;"options"in e&&(r=null==(t=e.options)?void 0:t.redirectTo,i=null==(s=e.options)?void 0:s.captchaToken);let{data:a,error:o}=await (0,n.vE)(this.fetch,"POST",`${this.url}/verify`,{headers:this.headers,body:Object.assign(Object.assign({},e),{gotrue_meta_security:{captcha_token:i}}),redirectTo:r,xform:n.R_});if(o)throw o;if(!a)throw Error("An error occurred on token verification.");let l=a.session,u=a.user;return(null==l?void 0:l.access_token)&&(await this._saveSession(l),await this._notifyAllSubscribers("recovery"==e.type?"PASSWORD_RECOVERY":"SIGNED_IN",l)),this._returnResult({data:{user:u,session:l},error:null})}catch(e){if((0,a.HY)(e))return this._returnResult({data:{user:null,session:null},error:e});throw e}}async signInWithSSO(e){var t,s,r,i,l;try{let a=null,u=null;"pkce"===this.flowType&&([a,u]=await (0,o.dS)(this.storage,this.storageKey));let h=await (0,n.vE)(this.fetch,"POST",`${this.url}/sso`,{body:Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},"providerId"in e?{provider_id:e.providerId}:null),"domain"in e?{domain:e.domain}:null),{redirect_to:null!=(s=null==(t=e.options)?void 0:t.redirectTo)?s:void 0}),(null==(r=null==e?void 0:e.options)?void 0:r.captchaToken)?{gotrue_meta_security:{captcha_token:e.options.captchaToken}}:null),{skip_http_redirect:!0,code_challenge:a,code_challenge_method:u}),headers:this.headers,xform:n.c2});return(null==(i=h.data)?void 0:i.url)&&(0,o.Bd)()&&!(null==(l=e.options)?void 0:l.skipBrowserRedirect)&&window.location.assign(h.data.url),this._returnResult(h)}catch(e){if(await (0,o.Gb)(this.storage,`${this.storageKey}-code-verifier`),(0,a.HY)(e))return this._returnResult({data:null,error:e});throw e}}async reauthenticate(){return await this.initializePromise,await this._acquireLock(this.lockAcquireTimeout,async()=>await this._reauthenticate())}async _reauthenticate(){try{return await this._useSession(async e=>{let{data:{session:t},error:s}=e;if(s)throw s;if(!t)throw new a.jG;let{error:r}=await (0,n.vE)(this.fetch,"GET",`${this.url}/reauthenticate`,{headers:this.headers,jwt:t.access_token});return this._returnResult({data:{user:null,session:null},error:r})})}catch(e){if((0,a.HY)(e))return this._returnResult({data:{user:null,session:null},error:e});throw e}}async resend(e){try{let t=`${this.url}/resend`;if("email"in e){let{email:s,type:r,options:i}=e,{error:a}=await (0,n.vE)(this.fetch,"POST",t,{headers:this.headers,body:{email:s,type:r,gotrue_meta_security:{captcha_token:null==i?void 0:i.captchaToken}},redirectTo:null==i?void 0:i.emailRedirectTo});return this._returnResult({data:{user:null,session:null},error:a})}if("phone"in e){let{phone:s,type:r,options:i}=e,{data:a,error:o}=await (0,n.vE)(this.fetch,"POST",t,{headers:this.headers,body:{phone:s,type:r,gotrue_meta_security:{captcha_token:null==i?void 0:i.captchaToken}}});return this._returnResult({data:{user:null,session:null,messageId:null==a?void 0:a.message_id},error:o})}throw new a.U_("You must provide either an email or phone number and a type")}catch(e){if((0,a.HY)(e))return this._returnResult({data:{user:null,session:null},error:e});throw e}}async getSession(){return await this.initializePromise,await this._acquireLock(this.lockAcquireTimeout,async()=>this._useSession(async e=>e))}async _acquireLock(e,t){this._debug("#_acquireLock","begin",e);try{if(this.lockAcquired){let e=this.pendingInLock.length?this.pendingInLock[this.pendingInLock.length-1]:Promise.resolve(),s=(async()=>(await e,await t()))();return this.pendingInLock.push((async()=>{try{await s}catch(e){}})()),s}return await this.lock(`lock:${this.storageKey}`,e,async()=>{this._debug("#_acquireLock","lock acquired for storage key",this.storageKey);try{this.lockAcquired=!0;let e=t();for(this.pendingInLock.push((async()=>{try{await e}catch(e){}})()),await e;this.pendingInLock.length;){let e=[...this.pendingInLock];await Promise.all(e),this.pendingInLock.splice(0,e.length)}return await e}finally{this._debug("#_acquireLock","lock released for storage key",this.storageKey),this.lockAcquired=!1}})}finally{this._debug("#_acquireLock","end")}}async _useSession(e){this._debug("#_useSession","begin");try{let t=await this.__loadSession();return await e(t)}finally{this._debug("#_useSession","end")}}async __loadSession(){this._debug("#__loadSession()","begin"),this.lockAcquired||this._debug("#__loadSession()","used outside of an acquired lock!",Error().stack);try{let e=null,t=await (0,o.U9)(this.storage,this.storageKey);if(this._debug("#getSession()","session from storage",t),null!==t&&(this._isValidSession(t)?e=t:(this._debug("#getSession()","session from storage is not valid"),await this._removeSession())),!e)return{data:{session:null},error:null};let s=!!e.expires_at&&1e3*e.expires_at-Date.now()<i.CT;if(this._debug("#__loadSession()",`session has${s?"":" not"} expired`,"expires_at",e.expires_at),!s){if(this.userStorage){let t=await (0,o.U9)(this.userStorage,this.storageKey+"-user");(null==t?void 0:t.user)?e.user=t.user:e.user=(0,o.QE)()}if(this.storage.isServer&&e.user&&!e.user.__isUserNotAvailableProxy){let t={value:this.suppressGetSessionWarning};e.user=(0,o.uO)(e.user,t),t.value&&(this.suppressGetSessionWarning=!0)}return{data:{session:e},error:null}}let{data:r,error:a}=await this._callRefreshToken(e.refresh_token);if(a)return this._returnResult({data:{session:null},error:a});return this._returnResult({data:{session:r},error:null})}finally{this._debug("#__loadSession()","end")}}async getUser(e){if(e)return await this._getUser(e);await this.initializePromise;let t=await this._acquireLock(this.lockAcquireTimeout,async()=>await this._getUser());return t.data.user&&(this.suppressGetSessionWarning=!0),t}async _getUser(e){try{if(e)return await (0,n.vE)(this.fetch,"GET",`${this.url}/user`,{headers:this.headers,jwt:e,xform:n.Cl});return await this._useSession(async e=>{var t,s,r;let{data:i,error:o}=e;if(o)throw o;return(null==(t=i.session)?void 0:t.access_token)||this.hasCustomAuthorizationHeader?await (0,n.vE)(this.fetch,"GET",`${this.url}/user`,{headers:this.headers,jwt:null!=(r=null==(s=i.session)?void 0:s.access_token)?r:void 0,xform:n.Cl}):{data:{user:null},error:new a.jG}})}catch(e){if((0,a.HY)(e))return(0,a.zq)(e)&&(await this._removeSession(),await (0,o.Gb)(this.storage,`${this.storageKey}-code-verifier`)),this._returnResult({data:{user:null},error:e});throw e}}async updateUser(e,t={}){return await this.initializePromise,await this._acquireLock(this.lockAcquireTimeout,async()=>await this._updateUser(e,t))}async _updateUser(e,t={}){try{return await this._useSession(async s=>{let{data:r,error:i}=s;if(i)throw i;if(!r.session)throw new a.jG;let l=r.session,u=null,h=null;"pkce"===this.flowType&&null!=e.email&&([u,h]=await (0,o.dS)(this.storage,this.storageKey));let{data:c,error:d}=await (0,n.vE)(this.fetch,"PUT",`${this.url}/user`,{headers:this.headers,redirectTo:null==t?void 0:t.emailRedirectTo,body:Object.assign(Object.assign({},e),{code_challenge:u,code_challenge_method:h}),jwt:l.access_token,xform:n.Cl});if(d)throw d;return l.user=c.user,await this._saveSession(l),await this._notifyAllSubscribers("USER_UPDATED",l),this._returnResult({data:{user:l.user},error:null})})}catch(e){if(await (0,o.Gb)(this.storage,`${this.storageKey}-code-verifier`),(0,a.HY)(e))return this._returnResult({data:{user:null},error:e});throw e}}async setSession(e){return await this.initializePromise,await this._acquireLock(this.lockAcquireTimeout,async()=>await this._setSession(e))}async _setSession(e){try{if(!e.access_token||!e.refresh_token)throw new a.jG;let t=Date.now()/1e3,s=t,r=!0,i=null,{payload:n}=(0,o.Cq)(e.access_token);if(n.exp&&(r=(s=n.exp)<=t),r){let{data:t,error:s}=await this._callRefreshToken(e.refresh_token);if(s)return this._returnResult({data:{user:null,session:null},error:s});if(!t)return{data:{user:null,session:null},error:null};i=t}else{let{data:r,error:a}=await this._getUser(e.access_token);if(a)return this._returnResult({data:{user:null,session:null},error:a});i={access_token:e.access_token,refresh_token:e.refresh_token,user:r.user,token_type:"bearer",expires_in:s-t,expires_at:s},await this._saveSession(i),await this._notifyAllSubscribers("SIGNED_IN",i)}return this._returnResult({data:{user:i.user,session:i},error:null})}catch(e){if((0,a.HY)(e))return this._returnResult({data:{session:null,user:null},error:e});throw e}}async refreshSession(e){return await this.initializePromise,await this._acquireLock(this.lockAcquireTimeout,async()=>await this._refreshSession(e))}async _refreshSession(e){try{return await this._useSession(async t=>{var s;if(!e){let{data:r,error:i}=t;if(i)throw i;e=null!=(s=r.session)?s:void 0}if(!(null==e?void 0:e.refresh_token))throw new a.jG;let{data:r,error:i}=await this._callRefreshToken(e.refresh_token);return i?this._returnResult({data:{user:null,session:null},error:i}):r?this._returnResult({data:{user:r.user,session:r},error:null}):this._returnResult({data:{user:null,session:null},error:null})})}catch(e){if((0,a.HY)(e))return this._returnResult({data:{user:null,session:null},error:e});throw e}}async _getSessionFromURL(e,t){try{if(!(0,o.Bd)())throw new a.MR("No browser detected.");if(e.error||e.error_description||e.error_code)throw new a.MR(e.error_description||"Error in URL with unspecified error_description",{error:e.error||"unspecified_error",code:e.error_code||"unspecified_code"});switch(t){case"implicit":if("pkce"===this.flowType)throw new a.Uw("Not a valid PKCE flow url.");break;case"pkce":if("implicit"===this.flowType)throw new a.MR("Not a valid implicit grant flow url.")}if("pkce"===t){if(this._debug("#_initialize()","begin","is PKCE flow",!0),!e.code)throw new a.Uw("No code detected.");let{data:t,error:s}=await this._exchangeCodeForSession(e.code);if(s)throw s;let r=new URL(window.location.href);return r.searchParams.delete("code"),window.history.replaceState(window.history.state,"",r.toString()),{data:{session:t.session,redirectType:null},error:null}}let{provider_token:s,provider_refresh_token:r,access_token:n,refresh_token:l,expires_in:u,expires_at:h,token_type:c}=e;if(!n||!u||!l||!c)throw new a.MR("No session defined in URL");let d=Math.round(Date.now()/1e3),_=parseInt(u),w=d+_;h&&(w=parseInt(h));let g=w-d;1e3*g<=i.a4&&console.warn(`@supabase/gotrue-js: Session as retrieved from URL expires in ${g}s, should have been closer to ${_}s`);let f=w-_;d-f>=120?console.warn("@supabase/gotrue-js: Session as retrieved from URL was issued over 120s ago, URL could be stale",f,w,d):d-f<0&&console.warn("@supabase/gotrue-js: Session as retrieved from URL was issued in the future? Check the device clock for skew",f,w,d);let{data:y,error:b}=await this._getUser(n);if(b)throw b;let p={provider_token:s,provider_refresh_token:r,access_token:n,expires_in:_,expires_at:w,refresh_token:l,token_type:c,user:y.user};return window.location.hash="",this._debug("#_getSessionFromURL()","clearing window.location.hash"),this._returnResult({data:{session:p,redirectType:e.type},error:null})}catch(e){if((0,a.HY)(e))return this._returnResult({data:{session:null,redirectType:null},error:e});throw e}}_isImplicitGrantCallback(e){return"function"==typeof this.detectSessionInUrl?this.detectSessionInUrl(new URL(window.location.href),e):!!(e.access_token||e.error_description)}async _isPKCECallback(e){let t=await (0,o.U9)(this.storage,`${this.storageKey}-code-verifier`);return!!(e.code&&t)}async signOut(e={scope:"global"}){return await this.initializePromise,await this._acquireLock(this.lockAcquireTimeout,async()=>await this._signOut(e))}async _signOut({scope:e}={scope:"global"}){return await this._useSession(async t=>{var s;let{data:r,error:i}=t;if(i&&!(0,a.zq)(i))return this._returnResult({error:i});let n=null==(s=r.session)?void 0:s.access_token;if(n){let{error:t}=await this.admin.signOut(n,e);if(t&&!((0,a.NA)(t)&&(404===t.status||401===t.status||403===t.status)||(0,a.zq)(t)))return this._returnResult({error:t})}return"others"!==e&&(await this._removeSession(),await (0,o.Gb)(this.storage,`${this.storageKey}-code-verifier`)),this._returnResult({error:null})})}onAuthStateChange(e){let t=(0,o.KY)(),s={id:t,callback:e,unsubscribe:()=>{this._debug("#unsubscribe()","state change callback with id removed",t),this.stateChangeEmitters.delete(t)}};return this._debug("#onAuthStateChange()","registered callback with id",t),this.stateChangeEmitters.set(t,s),(async()=>{await this.initializePromise,await this._acquireLock(this.lockAcquireTimeout,async()=>{this._emitInitialSession(t)})})(),{data:{subscription:s}}}async _emitInitialSession(e){return await this._useSession(async t=>{var s,r;try{let{data:{session:r},error:i}=t;if(i)throw i;await (null==(s=this.stateChangeEmitters.get(e))?void 0:s.callback("INITIAL_SESSION",r)),this._debug("INITIAL_SESSION","callback id",e,"session",r)}catch(t){await (null==(r=this.stateChangeEmitters.get(e))?void 0:r.callback("INITIAL_SESSION",null)),this._debug("INITIAL_SESSION","callback id",e,"error",t),(0,a.zq)(t)?console.warn(t):console.error(t)}})}async resetPasswordForEmail(e,t={}){let s=null,r=null;"pkce"===this.flowType&&([s,r]=await (0,o.dS)(this.storage,this.storageKey,!0));try{return await (0,n.vE)(this.fetch,"POST",`${this.url}/recover`,{body:{email:e,code_challenge:s,code_challenge_method:r,gotrue_meta_security:{captcha_token:t.captchaToken}},headers:this.headers,redirectTo:t.redirectTo})}catch(e){if(await (0,o.Gb)(this.storage,`${this.storageKey}-code-verifier`),(0,a.HY)(e))return this._returnResult({data:null,error:e});throw e}}async getUserIdentities(){var e;try{let{data:t,error:s}=await this.getUser();if(s)throw s;return this._returnResult({data:{identities:null!=(e=t.user.identities)?e:[]},error:null})}catch(e){if((0,a.HY)(e))return this._returnResult({data:null,error:e});throw e}}async linkIdentity(e){return"token"in e?this.linkIdentityIdToken(e):this.linkIdentityOAuth(e)}async linkIdentityOAuth(e){var t;try{let{data:s,error:r}=await this._useSession(async t=>{var s,r,i,a,o;let{data:l,error:u}=t;if(u)throw u;let h=await this._getUrlForProvider(`${this.url}/user/identities/authorize`,e.provider,{redirectTo:null==(s=e.options)?void 0:s.redirectTo,scopes:null==(r=e.options)?void 0:r.scopes,queryParams:null==(i=e.options)?void 0:i.queryParams,skipBrowserRedirect:!0});return await (0,n.vE)(this.fetch,"GET",h,{headers:this.headers,jwt:null!=(o=null==(a=l.session)?void 0:a.access_token)?o:void 0})});if(r)throw r;return!(0,o.Bd)()||(null==(t=e.options)?void 0:t.skipBrowserRedirect)||window.location.assign(null==s?void 0:s.url),this._returnResult({data:{provider:e.provider,url:null==s?void 0:s.url},error:null})}catch(t){if((0,a.HY)(t))return this._returnResult({data:{provider:e.provider,url:null},error:t});throw t}}async linkIdentityIdToken(e){return await this._useSession(async t=>{var s;try{let{error:r,data:{session:i}}=t;if(r)throw r;let{options:o,provider:l,token:u,access_token:h,nonce:c}=e,{data:d,error:_}=await (0,n.vE)(this.fetch,"POST",`${this.url}/token?grant_type=id_token`,{headers:this.headers,jwt:null!=(s=null==i?void 0:i.access_token)?s:void 0,body:{provider:l,id_token:u,access_token:h,nonce:c,link_identity:!0,gotrue_meta_security:{captcha_token:null==o?void 0:o.captchaToken}},xform:n.R_});if(_)return this._returnResult({data:{user:null,session:null},error:_});if(!d||!d.session||!d.user)return this._returnResult({data:{user:null,session:null},error:new a.Ox});return d.session&&(await this._saveSession(d.session),await this._notifyAllSubscribers("USER_UPDATED",d.session)),this._returnResult({data:d,error:_})}catch(e){if(await (0,o.Gb)(this.storage,`${this.storageKey}-code-verifier`),(0,a.HY)(e))return this._returnResult({data:{user:null,session:null},error:e});throw e}})}async unlinkIdentity(e){try{return await this._useSession(async t=>{var s,r;let{data:i,error:a}=t;if(a)throw a;return await (0,n.vE)(this.fetch,"DELETE",`${this.url}/user/identities/${e.identity_id}`,{headers:this.headers,jwt:null!=(r=null==(s=i.session)?void 0:s.access_token)?r:void 0})})}catch(e){if((0,a.HY)(e))return this._returnResult({data:null,error:e});throw e}}async _refreshAccessToken(e){let t=`#_refreshAccessToken(${e.substring(0,5)}...)`;this._debug(t,"begin");try{let s=Date.now();return await (0,o.PB)(async s=>(s>0&&await (0,o.yy)(200*Math.pow(2,s-1)),this._debug(t,"refreshing attempt",s),await (0,n.vE)(this.fetch,"POST",`${this.url}/token?grant_type=refresh_token`,{body:{refresh_token:e},headers:this.headers,xform:n.R_})),(e,t)=>{let r=200*Math.pow(2,e);return t&&(0,a.Fw)(t)&&Date.now()+r-s<i.a4})}catch(e){if(this._debug(t,"error",e),(0,a.HY)(e))return this._returnResult({data:{session:null,user:null},error:e});throw e}finally{this._debug(t,"end")}}_isValidSession(e){return"object"==typeof e&&null!==e&&"access_token"in e&&"refresh_token"in e&&"expires_at"in e}async _handleProviderSignIn(e,t){let s=await this._getUrlForProvider(`${this.url}/authorize`,e,{redirectTo:t.redirectTo,scopes:t.scopes,queryParams:t.queryParams});return this._debug("#_handleProviderSignIn()","provider",e,"options",t,"url",s),(0,o.Bd)()&&!t.skipBrowserRedirect&&window.location.assign(s),{data:{provider:e,url:s},error:null}}async _recoverAndRefresh(){var e,t;let s="#_recoverAndRefresh()";this._debug(s,"begin");try{let r=await (0,o.U9)(this.storage,this.storageKey);if(r&&this.userStorage){let t=await (0,o.U9)(this.userStorage,this.storageKey+"-user");!this.storage.isServer&&Object.is(this.storage,this.userStorage)&&!t&&(t={user:r.user},await (0,o.Oi)(this.userStorage,this.storageKey+"-user",t)),r.user=null!=(e=null==t?void 0:t.user)?e:(0,o.QE)()}else if(r&&!r.user&&!r.user){let e=await (0,o.U9)(this.storage,this.storageKey+"-user");e&&(null==e?void 0:e.user)?(r.user=e.user,await (0,o.Gb)(this.storage,this.storageKey+"-user"),await (0,o.Oi)(this.storage,this.storageKey,r)):r.user=(0,o.QE)()}if(this._debug(s,"session from storage",r),!this._isValidSession(r)){this._debug(s,"session is not valid"),null!==r&&await this._removeSession();return}let n=(null!=(t=r.expires_at)?t:1/0)*1e3-Date.now()<i.CT;if(this._debug(s,`session has${n?"":" not"} expired with margin of ${i.CT}s`),n){if(this.autoRefreshToken&&r.refresh_token){let{error:e}=await this._callRefreshToken(r.refresh_token);e&&(console.error(e),(0,a.Fw)(e)||(this._debug(s,"refresh failed with a non-retryable error, removing the session",e),await this._removeSession()))}}else if(r.user&&!0===r.user.__isUserNotAvailableProxy)try{let{data:e,error:t}=await this._getUser(r.access_token);!t&&(null==e?void 0:e.user)?(r.user=e.user,await this._saveSession(r),await this._notifyAllSubscribers("SIGNED_IN",r)):this._debug(s,"could not get user data, skipping SIGNED_IN notification")}catch(e){console.error("Error getting user data:",e),this._debug(s,"error getting user data, skipping SIGNED_IN notification",e)}else await this._notifyAllSubscribers("SIGNED_IN",r)}catch(e){this._debug(s,"error",e),console.error(e);return}finally{this._debug(s,"end")}}async _callRefreshToken(e){var t,s;if(!e)throw new a.jG;if(this.refreshingDeferred)return this.refreshingDeferred.promise;let r=`#_callRefreshToken(${e.substring(0,5)}...)`;this._debug(r,"begin");try{this.refreshingDeferred=new o.cY;let{data:t,error:s}=await this._refreshAccessToken(e);if(s)throw s;if(!t.session)throw new a.jG;await this._saveSession(t.session),await this._notifyAllSubscribers("TOKEN_REFRESHED",t.session);let r={data:t.session,error:null};return this.refreshingDeferred.resolve(r),r}catch(e){if(this._debug(r,"error",e),(0,a.HY)(e)){let s={data:null,error:e};return(0,a.Fw)(e)||await this._removeSession(),null==(t=this.refreshingDeferred)||t.resolve(s),s}throw null==(s=this.refreshingDeferred)||s.reject(e),e}finally{this.refreshingDeferred=null,this._debug(r,"end")}}async _notifyAllSubscribers(e,t,s=!0){let r=`#_notifyAllSubscribers(${e})`;this._debug(r,"begin",t,`broadcast = ${s}`);try{this.broadcastChannel&&s&&this.broadcastChannel.postMessage({event:e,session:t});let r=[],i=Array.from(this.stateChangeEmitters.values()).map(async s=>{try{await s.callback(e,t)}catch(e){r.push(e)}});if(await Promise.all(i),r.length>0){for(let e=0;e<r.length;e+=1)console.error(r[e]);throw r[0]}}finally{this._debug(r,"end")}}async _saveSession(e){this._debug("#_saveSession()",e),this.suppressGetSessionWarning=!0,await (0,o.Gb)(this.storage,`${this.storageKey}-code-verifier`);let t=Object.assign({},e),s=t.user&&!0===t.user.__isUserNotAvailableProxy;if(this.userStorage){!s&&t.user&&await (0,o.Oi)(this.userStorage,this.storageKey+"-user",{user:t.user});let e=Object.assign({},t);delete e.user;let r=(0,o.Go)(e);await (0,o.Oi)(this.storage,this.storageKey,r)}else{let e=(0,o.Go)(t);await (0,o.Oi)(this.storage,this.storageKey,e)}}async _removeSession(){this._debug("#_removeSession()"),this.suppressGetSessionWarning=!1,await (0,o.Gb)(this.storage,this.storageKey),await (0,o.Gb)(this.storage,this.storageKey+"-code-verifier"),await (0,o.Gb)(this.storage,this.storageKey+"-user"),this.userStorage&&await (0,o.Gb)(this.userStorage,this.storageKey+"-user"),await this._notifyAllSubscribers("SIGNED_OUT",null)}_removeVisibilityChangedCallback(){this._debug("#_removeVisibilityChangedCallback()");let e=this.visibilityChangedCallback;this.visibilityChangedCallback=null;try{e&&(0,o.Bd)()&&(null==window?void 0:window.removeEventListener)&&window.removeEventListener("visibilitychange",e)}catch(e){console.error("removing visibilitychange callback failed",e)}}async _startAutoRefresh(){await this._stopAutoRefresh(),this._debug("#_startAutoRefresh()");let e=setInterval(()=>this._autoRefreshTokenTick(),i.a4);this.autoRefreshTicker=e,e&&"object"==typeof e&&"function"==typeof e.unref?e.unref():"undefined"!=typeof Deno&&"function"==typeof Deno.unrefTimer&&Deno.unrefTimer(e);let t=setTimeout(async()=>{await this.initializePromise,await this._autoRefreshTokenTick()},0);this.autoRefreshTickTimeout=t,t&&"object"==typeof t&&"function"==typeof t.unref?t.unref():"undefined"!=typeof Deno&&"function"==typeof Deno.unrefTimer&&Deno.unrefTimer(t)}async _stopAutoRefresh(){this._debug("#_stopAutoRefresh()");let e=this.autoRefreshTicker;this.autoRefreshTicker=null,e&&clearInterval(e);let t=this.autoRefreshTickTimeout;this.autoRefreshTickTimeout=null,t&&clearTimeout(t)}async startAutoRefresh(){this._removeVisibilityChangedCallback(),await this._startAutoRefresh()}async stopAutoRefresh(){this._removeVisibilityChangedCallback(),await this._stopAutoRefresh()}async _autoRefreshTokenTick(){this._debug("#_autoRefreshTokenTick()","begin");try{await this._acquireLock(0,async()=>{try{let e=Date.now();try{return await this._useSession(async t=>{let{data:{session:s}}=t;if(!s||!s.refresh_token||!s.expires_at)return void this._debug("#_autoRefreshTokenTick()","no session");let r=Math.floor((1e3*s.expires_at-e)/i.a4);this._debug("#_autoRefreshTokenTick()",`access token expires in ${r} ticks, a tick lasts ${i.a4}ms, refresh threshold is ${i.YI} ticks`),r<=i.YI&&await this._callRefreshToken(s.refresh_token)})}catch(e){console.error("Auto refresh tick failed with error. This is likely a transient error.",e)}}finally{this._debug("#_autoRefreshTokenTick()","end")}})}catch(e){if(e.isAcquireTimeout||e instanceof u.nb)this._debug("auto refresh token tick lock not available");else throw e}}async _handleVisibilityChange(){if(this._debug("#_handleVisibilityChange()"),!(0,o.Bd)()||!(null==window?void 0:window.addEventListener))return this.autoRefreshToken&&this.startAutoRefresh(),!1;try{this.visibilityChangedCallback=async()=>{try{await this._onVisibilityChanged(!1)}catch(e){this._debug("#visibilityChangedCallback","error",e)}},null==window||window.addEventListener("visibilitychange",this.visibilityChangedCallback),await this._onVisibilityChanged(!0)}catch(e){console.error("_handleVisibilityChange",e)}}async _onVisibilityChanged(e){let t=`#_onVisibilityChanged(${e})`;this._debug(t,"visibilityState",document.visibilityState),"visible"===document.visibilityState?(this.autoRefreshToken&&this._startAutoRefresh(),e||(await this.initializePromise,await this._acquireLock(this.lockAcquireTimeout,async()=>{if("visible"!==document.visibilityState)return void this._debug(t,"acquired the lock to recover the session, but the browser visibilityState is no longer visible, aborting");await this._recoverAndRefresh()}))):"hidden"===document.visibilityState&&this.autoRefreshToken&&this._stopAutoRefresh()}async _getUrlForProvider(e,t,s){let r=[`provider=${encodeURIComponent(t)}`];if((null==s?void 0:s.redirectTo)&&r.push(`redirect_to=${encodeURIComponent(s.redirectTo)}`),(null==s?void 0:s.scopes)&&r.push(`scopes=${encodeURIComponent(s.scopes)}`),"pkce"===this.flowType){let[e,t]=await (0,o.dS)(this.storage,this.storageKey),s=new URLSearchParams({code_challenge:`${encodeURIComponent(e)}`,code_challenge_method:`${encodeURIComponent(t)}`});r.push(s.toString())}if(null==s?void 0:s.queryParams){let e=new URLSearchParams(s.queryParams);r.push(e.toString())}return(null==s?void 0:s.skipBrowserRedirect)&&r.push(`skip_http_redirect=${s.skipBrowserRedirect}`),`${e}?${r.join("&")}`}async _unenroll(e){try{return await this._useSession(async t=>{var s;let{data:r,error:i}=t;return i?this._returnResult({data:null,error:i}):await (0,n.vE)(this.fetch,"DELETE",`${this.url}/factors/${e.factorId}`,{headers:this.headers,jwt:null==(s=null==r?void 0:r.session)?void 0:s.access_token})})}catch(e){if((0,a.HY)(e))return this._returnResult({data:null,error:e});throw e}}async _enroll(e){try{return await this._useSession(async t=>{var s,r;let{data:i,error:a}=t;if(a)return this._returnResult({data:null,error:a});let o=Object.assign({friendly_name:e.friendlyName,factor_type:e.factorType},"phone"===e.factorType?{phone:e.phone}:"totp"===e.factorType?{issuer:e.issuer}:{}),{data:l,error:u}=await (0,n.vE)(this.fetch,"POST",`${this.url}/factors`,{body:o,headers:this.headers,jwt:null==(s=null==i?void 0:i.session)?void 0:s.access_token});return u?this._returnResult({data:null,error:u}):("totp"===e.factorType&&"totp"===l.type&&(null==(r=null==l?void 0:l.totp)?void 0:r.qr_code)&&(l.totp.qr_code=`data:image/svg+xml;utf-8,${l.totp.qr_code}`),this._returnResult({data:l,error:null}))})}catch(e){if((0,a.HY)(e))return this._returnResult({data:null,error:e});throw e}}async _verify(e){return this._acquireLock(this.lockAcquireTimeout,async()=>{try{return await this._useSession(async t=>{var s;let{data:r,error:i}=t;if(i)return this._returnResult({data:null,error:i});let a=Object.assign({challenge_id:e.challengeId},"webauthn"in e?{webauthn:Object.assign(Object.assign({},e.webauthn),{credential_response:"create"===e.webauthn.type?(0,w.sy)(e.webauthn.credential_response):(0,w.CP)(e.webauthn.credential_response)})}:{code:e.code}),{data:o,error:l}=await (0,n.vE)(this.fetch,"POST",`${this.url}/factors/${e.factorId}/verify`,{body:a,headers:this.headers,jwt:null==(s=null==r?void 0:r.session)?void 0:s.access_token});return l?this._returnResult({data:null,error:l}):(await this._saveSession(Object.assign({expires_at:Math.round(Date.now()/1e3)+o.expires_in},o)),await this._notifyAllSubscribers("MFA_CHALLENGE_VERIFIED",o),this._returnResult({data:o,error:l}))})}catch(e){if((0,a.HY)(e))return this._returnResult({data:null,error:e});throw e}})}async _challenge(e){return this._acquireLock(this.lockAcquireTimeout,async()=>{try{return await this._useSession(async t=>{var s;let{data:r,error:i}=t;if(i)return this._returnResult({data:null,error:i});let a=await (0,n.vE)(this.fetch,"POST",`${this.url}/factors/${e.factorId}/challenge`,{body:e,headers:this.headers,jwt:null==(s=null==r?void 0:r.session)?void 0:s.access_token});if(a.error)return a;let{data:o}=a;if("webauthn"!==o.type)return{data:o,error:null};switch(o.webauthn.type){case"create":return{data:Object.assign(Object.assign({},o),{webauthn:Object.assign(Object.assign({},o.webauthn),{credential_options:Object.assign(Object.assign({},o.webauthn.credential_options),{publicKey:(0,w.sC)(o.webauthn.credential_options.publicKey)})})}),error:null};case"request":return{data:Object.assign(Object.assign({},o),{webauthn:Object.assign(Object.assign({},o.webauthn),{credential_options:Object.assign(Object.assign({},o.webauthn.credential_options),{publicKey:(0,w.KE)(o.webauthn.credential_options.publicKey)})})}),error:null}}})}catch(e){if((0,a.HY)(e))return this._returnResult({data:null,error:e});throw e}})}async _challengeAndVerify(e){let{data:t,error:s}=await this._challenge({factorId:e.factorId});return s?this._returnResult({data:null,error:s}):await this._verify({factorId:e.factorId,challengeId:t.id,code:e.code})}async _listFactors(){var e;let{data:{user:t},error:s}=await this.getUser();if(s)return{data:null,error:s};let r={all:[],phone:[],totp:[],webauthn:[]};for(let s of null!=(e=null==t?void 0:t.factors)?e:[])r.all.push(s),"verified"===s.status&&r[s.factor_type].push(s);return{data:r,error:null}}async _getAuthenticatorAssuranceLevel(e){var t,s,r,i;if(e)try{let{payload:r}=(0,o.Cq)(e),i=null;r.aal&&(i=r.aal);let a=i,{data:{user:n},error:l}=await this.getUser(e);if(l)return this._returnResult({data:null,error:l});(null!=(s=null==(t=null==n?void 0:n.factors)?void 0:t.filter(e=>"verified"===e.status))?s:[]).length>0&&(a="aal2");let u=r.amr||[];return{data:{currentLevel:i,nextLevel:a,currentAuthenticationMethods:u},error:null}}catch(e){if((0,a.HY)(e))return this._returnResult({data:null,error:e});throw e}let{data:{session:n},error:l}=await this.getSession();if(l)return this._returnResult({data:null,error:l});if(!n)return{data:{currentLevel:null,nextLevel:null,currentAuthenticationMethods:[]},error:null};let{payload:u}=(0,o.Cq)(n.access_token),h=null;u.aal&&(h=u.aal);let c=h;return(null!=(i=null==(r=n.user.factors)?void 0:r.filter(e=>"verified"===e.status))?i:[]).length>0&&(c="aal2"),{data:{currentLevel:h,nextLevel:c,currentAuthenticationMethods:u.amr||[]},error:null}}async _getAuthorizationDetails(e){try{return await this._useSession(async t=>{let{data:{session:s},error:r}=t;return r?this._returnResult({data:null,error:r}):s?await (0,n.vE)(this.fetch,"GET",`${this.url}/oauth/authorizations/${e}`,{headers:this.headers,jwt:s.access_token,xform:e=>({data:e,error:null})}):this._returnResult({data:null,error:new a.jG})})}catch(e){if((0,a.HY)(e))return this._returnResult({data:null,error:e});throw e}}async _approveAuthorization(e,t){try{return await this._useSession(async s=>{let{data:{session:r},error:i}=s;if(i)return this._returnResult({data:null,error:i});if(!r)return this._returnResult({data:null,error:new a.jG});let l=await (0,n.vE)(this.fetch,"POST",`${this.url}/oauth/authorizations/${e}/consent`,{headers:this.headers,jwt:r.access_token,body:{action:"approve"},xform:e=>({data:e,error:null})});return l.data&&l.data.redirect_url&&(0,o.Bd)()&&!(null==t?void 0:t.skipBrowserRedirect)&&window.location.assign(l.data.redirect_url),l})}catch(e){if((0,a.HY)(e))return this._returnResult({data:null,error:e});throw e}}async _denyAuthorization(e,t){try{return await this._useSession(async s=>{let{data:{session:r},error:i}=s;if(i)return this._returnResult({data:null,error:i});if(!r)return this._returnResult({data:null,error:new a.jG});let l=await (0,n.vE)(this.fetch,"POST",`${this.url}/oauth/authorizations/${e}/consent`,{headers:this.headers,jwt:r.access_token,body:{action:"deny"},xform:e=>({data:e,error:null})});return l.data&&l.data.redirect_url&&(0,o.Bd)()&&!(null==t?void 0:t.skipBrowserRedirect)&&window.location.assign(l.data.redirect_url),l})}catch(e){if((0,a.HY)(e))return this._returnResult({data:null,error:e});throw e}}async _listOAuthGrants(){try{return await this._useSession(async e=>{let{data:{session:t},error:s}=e;return s?this._returnResult({data:null,error:s}):t?await (0,n.vE)(this.fetch,"GET",`${this.url}/user/oauth/grants`,{headers:this.headers,jwt:t.access_token,xform:e=>({data:e,error:null})}):this._returnResult({data:null,error:new a.jG})})}catch(e){if((0,a.HY)(e))return this._returnResult({data:null,error:e});throw e}}async _revokeOAuthGrant(e){try{return await this._useSession(async t=>{let{data:{session:s},error:r}=t;return r?this._returnResult({data:null,error:r}):s?(await (0,n.vE)(this.fetch,"DELETE",`${this.url}/user/oauth/grants`,{headers:this.headers,jwt:s.access_token,query:{client_id:e.clientId},noResolveJson:!0}),{data:{},error:null}):this._returnResult({data:null,error:new a.jG})})}catch(e){if((0,a.HY)(e))return this._returnResult({data:null,error:e});throw e}}async fetchJwk(e,t={keys:[]}){let s=t.keys.find(t=>t.kid===e);if(s)return s;let r=Date.now();if((s=this.jwks.keys.find(t=>t.kid===e))&&this.jwks_cached_at+i.$W>r)return s;let{data:a,error:o}=await (0,n.vE)(this.fetch,"GET",`${this.url}/.well-known/jwks.json`,{headers:this.headers});if(o)throw o;return a.keys&&0!==a.keys.length&&(this.jwks=a,this.jwks_cached_at=r,s=a.keys.find(t=>t.kid===e))?s:null}async getClaims(e,t={}){try{let s=e;if(!s){let{data:e,error:t}=await this.getSession();if(t||!e.session)return this._returnResult({data:null,error:t});s=e.session.access_token}let{header:r,payload:i,signature:n,raw:{header:l,payload:u}}=(0,o.Cq)(s);(null==t?void 0:t.allowExpired)||(0,o.c2)(i.exp);let h=!r.alg||r.alg.startsWith("HS")||!r.kid||!("crypto"in globalThis&&"subtle"in globalThis.crypto)?null:await this.fetchJwk(r.kid,(null==t?void 0:t.keys)?{keys:t.keys}:null==t?void 0:t.jwks);if(!h){let{error:e}=await this.getUser(s);if(e)throw e;return{data:{claims:i,header:r,signature:n},error:null}}let c=(0,o.K8)(r.alg),_=await crypto.subtle.importKey("jwk",h,c,!0,["verify"]);if(!await crypto.subtle.verify(c,_,n,(0,d.Al)(`${l}.${u}`)))throw new a.xL("Invalid JWT signature");return{data:{claims:i,header:r,signature:n},error:null}}catch(e){if((0,a.HY)(e))return this._returnResult({data:null,error:e});throw e}}}b.nextInstanceID={};let p=b}}]);