@hexclave/react 1.0.0 → 1.0.2

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 (395) hide show
  1. package/README.md +7 -23
  2. package/dist/components/api-key-dialogs.js +18 -18
  3. package/dist/components/api-key-dialogs.js.map +1 -1
  4. package/dist/components/api-key-table.js +19 -19
  5. package/dist/components/api-key-table.js.map +1 -1
  6. package/dist/components/credential-sign-in.js +12 -12
  7. package/dist/components/credential-sign-in.js.map +1 -1
  8. package/dist/components/credential-sign-up.js +19 -19
  9. package/dist/components/credential-sign-up.js.map +1 -1
  10. package/dist/components/elements/separator-with-text.js +3 -3
  11. package/dist/components/elements/separator-with-text.js.map +1 -1
  12. package/dist/components/elements/sidebar-layout.js +15 -15
  13. package/dist/components/elements/sidebar-layout.js.map +1 -1
  14. package/dist/components/elements/user-avatar.js +3 -3
  15. package/dist/components/elements/user-avatar.js.map +1 -1
  16. package/dist/components/link.js +2 -2
  17. package/dist/components/link.js.map +1 -1
  18. package/dist/components/magic-link-sign-in.js +17 -17
  19. package/dist/components/magic-link-sign-in.js.map +1 -1
  20. package/dist/components/message-cards/known-error-message-card.js +2 -2
  21. package/dist/components/message-cards/known-error-message-card.js.map +1 -1
  22. package/dist/components/message-cards/message-card.js +4 -4
  23. package/dist/components/message-cards/message-card.js.map +1 -1
  24. package/dist/components/message-cards/predefined-message-card.js +2 -2
  25. package/dist/components/message-cards/predefined-message-card.js.map +1 -1
  26. package/dist/components/oauth-button.d.ts.map +1 -1
  27. package/dist/components/oauth-button.js +15 -15
  28. package/dist/components/oauth-button.js.map +1 -1
  29. package/dist/components/passkey-button.js +2 -2
  30. package/dist/components/passkey-button.js.map +1 -1
  31. package/dist/components/profile-image-editor.js +9 -9
  32. package/dist/components/profile-image-editor.js.map +1 -1
  33. package/dist/components/selected-team-switcher.js +4 -4
  34. package/dist/components/selected-team-switcher.js.map +1 -1
  35. package/dist/components/team-icon.js +4 -4
  36. package/dist/components/team-icon.js.map +1 -1
  37. package/dist/components/team-switcher.js +21 -21
  38. package/dist/components/team-switcher.js.map +1 -1
  39. package/dist/components/user-button.js +13 -13
  40. package/dist/components/user-button.js.map +1 -1
  41. package/dist/components-page/account-settings/active-sessions/active-sessions-page.js +32 -32
  42. package/dist/components-page/account-settings/active-sessions/active-sessions-page.js.map +1 -1
  43. package/dist/components-page/account-settings/api-keys/api-keys-page.js +2 -2
  44. package/dist/components-page/account-settings/api-keys/api-keys-page.js.map +1 -1
  45. package/dist/components-page/account-settings/editable-text.js +5 -5
  46. package/dist/components-page/account-settings/editable-text.js.map +1 -1
  47. package/dist/components-page/account-settings/email-and-auth/emails-section.js +22 -22
  48. package/dist/components-page/account-settings/email-and-auth/emails-section.js.map +1 -1
  49. package/dist/components-page/account-settings/email-and-auth/mfa-section.js +18 -18
  50. package/dist/components-page/account-settings/email-and-auth/mfa-section.js.map +1 -1
  51. package/dist/components-page/account-settings/email-and-auth/otp-section.js +9 -9
  52. package/dist/components-page/account-settings/email-and-auth/otp-section.js.map +1 -1
  53. package/dist/components-page/account-settings/email-and-auth/passkey-section.js +10 -10
  54. package/dist/components-page/account-settings/email-and-auth/passkey-section.js.map +1 -1
  55. package/dist/components-page/account-settings/email-and-auth/password-section.js +25 -25
  56. package/dist/components-page/account-settings/email-and-auth/password-section.js.map +1 -1
  57. package/dist/components-page/account-settings/notifications/notifications-page.js +6 -6
  58. package/dist/components-page/account-settings/notifications/notifications-page.js.map +1 -1
  59. package/dist/components-page/account-settings/payments/payments-panel.js +53 -53
  60. package/dist/components-page/account-settings/payments/payments-panel.js.map +1 -1
  61. package/dist/components-page/account-settings/profile-page/profile-page.js +1 -1
  62. package/dist/components-page/account-settings/section.js +4 -4
  63. package/dist/components-page/account-settings/section.js.map +1 -1
  64. package/dist/components-page/account-settings/settings/delete-account-section.js +7 -7
  65. package/dist/components-page/account-settings/settings/delete-account-section.js.map +1 -1
  66. package/dist/components-page/account-settings/settings/sign-out-section.js +2 -2
  67. package/dist/components-page/account-settings/settings/sign-out-section.js.map +1 -1
  68. package/dist/components-page/account-settings/teams/leave-team-section.js +5 -5
  69. package/dist/components-page/account-settings/teams/leave-team-section.js.map +1 -1
  70. package/dist/components-page/account-settings/teams/team-api-keys-section.js +4 -4
  71. package/dist/components-page/account-settings/teams/team-api-keys-section.js.map +1 -1
  72. package/dist/components-page/account-settings/teams/team-creation-page.js +8 -8
  73. package/dist/components-page/account-settings/teams/team-creation-page.js.map +1 -1
  74. package/dist/components-page/account-settings/teams/team-member-invitation-section.js +21 -21
  75. package/dist/components-page/account-settings/teams/team-member-invitation-section.js.map +1 -1
  76. package/dist/components-page/account-settings/teams/team-member-list-section.js +5 -5
  77. package/dist/components-page/account-settings/teams/team-member-list-section.js.map +1 -1
  78. package/dist/components-page/account-settings.js +22 -22
  79. package/dist/components-page/account-settings.js.map +1 -1
  80. package/dist/components-page/auth-page.js +23 -23
  81. package/dist/components-page/auth-page.js.map +1 -1
  82. package/dist/components-page/cli-auth-confirm.js +10 -10
  83. package/dist/components-page/cli-auth-confirm.js.map +1 -1
  84. package/dist/components-page/cli-auth-confirm.test.js +4 -4
  85. package/dist/components-page/cli-auth-confirm.test.js.map +1 -1
  86. package/dist/components-page/email-verification.js +6 -6
  87. package/dist/components-page/email-verification.js.map +1 -1
  88. package/dist/components-page/error-page.js +11 -11
  89. package/dist/components-page/error-page.js.map +1 -1
  90. package/dist/components-page/forgot-password.js +11 -11
  91. package/dist/components-page/forgot-password.js.map +1 -1
  92. package/dist/components-page/magic-link-callback.js +8 -8
  93. package/dist/components-page/magic-link-callback.js.map +1 -1
  94. package/dist/components-page/mfa.js +13 -13
  95. package/dist/components-page/mfa.js.map +1 -1
  96. package/dist/components-page/oauth-callback.js +9 -9
  97. package/dist/components-page/oauth-callback.js.map +1 -1
  98. package/dist/components-page/onboarding.js +11 -11
  99. package/dist/components-page/onboarding.js.map +1 -1
  100. package/dist/components-page/password-reset.js +27 -27
  101. package/dist/components-page/password-reset.js.map +1 -1
  102. package/dist/components-page/section.js +1 -1
  103. package/dist/components-page/sign-out.js +4 -4
  104. package/dist/components-page/sign-out.js.map +1 -1
  105. package/dist/components-page/stack-handler-client.js +14 -10
  106. package/dist/components-page/stack-handler-client.js.map +1 -1
  107. package/dist/components-page/stack-handler.d.ts +14 -9
  108. package/dist/components-page/stack-handler.d.ts.map +1 -1
  109. package/dist/components-page/stack-handler.js +8 -2
  110. package/dist/components-page/stack-handler.js.map +1 -1
  111. package/dist/components-page/team-creation.js +9 -9
  112. package/dist/components-page/team-creation.js.map +1 -1
  113. package/dist/components-page/team-invitation.js +20 -20
  114. package/dist/components-page/team-invitation.js.map +1 -1
  115. package/dist/dev-tool/dev-tool-core.d.ts.map +1 -1
  116. package/dist/dev-tool/dev-tool-core.js +25 -25
  117. package/dist/dev-tool/dev-tool-core.js.map +1 -1
  118. package/dist/dev-tool/dev-tool-trigger-position.test.js +1 -1
  119. package/dist/dev-tool/index.js +6 -6
  120. package/dist/dev-tool/index.js.map +1 -1
  121. package/dist/esm/components/api-key-dialogs.js +2 -2
  122. package/dist/esm/components/api-key-dialogs.js.map +1 -1
  123. package/dist/esm/components/api-key-table.js.map +1 -1
  124. package/dist/esm/components/credential-sign-in.js +1 -1
  125. package/dist/esm/components/credential-sign-in.js.map +1 -1
  126. package/dist/esm/components/credential-sign-up.js +1 -1
  127. package/dist/esm/components/credential-sign-up.js.map +1 -1
  128. package/dist/esm/components/elements/separator-with-text.js.map +1 -1
  129. package/dist/esm/components/elements/sidebar-layout.js.map +1 -1
  130. package/dist/esm/components/elements/user-avatar.js.map +1 -1
  131. package/dist/esm/components/link.js.map +1 -1
  132. package/dist/esm/components/magic-link-sign-in.js +1 -1
  133. package/dist/esm/components/magic-link-sign-in.js.map +1 -1
  134. package/dist/esm/components/message-cards/known-error-message-card.js.map +1 -1
  135. package/dist/esm/components/message-cards/message-card.js.map +1 -1
  136. package/dist/esm/components/message-cards/predefined-message-card.js.map +1 -1
  137. package/dist/esm/components/oauth-button.d.ts.map +1 -1
  138. package/dist/esm/components/oauth-button.js.map +1 -1
  139. package/dist/esm/components/passkey-button.js.map +1 -1
  140. package/dist/esm/components/profile-image-editor.js.map +1 -1
  141. package/dist/esm/components/selected-team-switcher.js.map +1 -1
  142. package/dist/esm/components/team-icon.js.map +1 -1
  143. package/dist/esm/components/team-switcher.js +1 -1
  144. package/dist/esm/components/team-switcher.js.map +1 -1
  145. package/dist/esm/components/user-button.js.map +1 -1
  146. package/dist/esm/components-page/account-settings/active-sessions/active-sessions-page.js +1 -1
  147. package/dist/esm/components-page/account-settings/active-sessions/active-sessions-page.js.map +1 -1
  148. package/dist/esm/components-page/account-settings/api-keys/api-keys-page.js.map +1 -1
  149. package/dist/esm/components-page/account-settings/editable-text.js.map +1 -1
  150. package/dist/esm/components-page/account-settings/email-and-auth/emails-section.js +2 -2
  151. package/dist/esm/components-page/account-settings/email-and-auth/emails-section.js.map +1 -1
  152. package/dist/esm/components-page/account-settings/email-and-auth/mfa-section.js +2 -2
  153. package/dist/esm/components-page/account-settings/email-and-auth/mfa-section.js.map +1 -1
  154. package/dist/esm/components-page/account-settings/email-and-auth/otp-section.js.map +1 -1
  155. package/dist/esm/components-page/account-settings/email-and-auth/passkey-section.js +1 -1
  156. package/dist/esm/components-page/account-settings/email-and-auth/passkey-section.js.map +1 -1
  157. package/dist/esm/components-page/account-settings/email-and-auth/password-section.js +3 -3
  158. package/dist/esm/components-page/account-settings/email-and-auth/password-section.js.map +1 -1
  159. package/dist/esm/components-page/account-settings/notifications/notifications-page.js.map +1 -1
  160. package/dist/esm/components-page/account-settings/payments/payments-panel.js +1 -1
  161. package/dist/esm/components-page/account-settings/payments/payments-panel.js.map +1 -1
  162. package/dist/esm/components-page/account-settings/profile-page/profile-page.js +1 -1
  163. package/dist/esm/components-page/account-settings/section.js.map +1 -1
  164. package/dist/esm/components-page/account-settings/settings/delete-account-section.js.map +1 -1
  165. package/dist/esm/components-page/account-settings/settings/sign-out-section.js.map +1 -1
  166. package/dist/esm/components-page/account-settings/teams/leave-team-section.js.map +1 -1
  167. package/dist/esm/components-page/account-settings/teams/team-api-keys-section.js.map +1 -1
  168. package/dist/esm/components-page/account-settings/teams/team-creation-page.js +2 -2
  169. package/dist/esm/components-page/account-settings/teams/team-creation-page.js.map +1 -1
  170. package/dist/esm/components-page/account-settings/teams/team-member-invitation-section.js +2 -2
  171. package/dist/esm/components-page/account-settings/teams/team-member-invitation-section.js.map +1 -1
  172. package/dist/esm/components-page/account-settings/teams/team-member-list-section.js.map +1 -1
  173. package/dist/esm/components-page/account-settings.js.map +1 -1
  174. package/dist/esm/components-page/auth-page.js.map +1 -1
  175. package/dist/esm/components-page/cli-auth-confirm.js +1 -1
  176. package/dist/esm/components-page/cli-auth-confirm.js.map +1 -1
  177. package/dist/esm/components-page/cli-auth-confirm.test.js +2 -2
  178. package/dist/esm/components-page/cli-auth-confirm.test.js.map +1 -1
  179. package/dist/esm/components-page/email-verification.js.map +1 -1
  180. package/dist/esm/components-page/error-page.js.map +1 -1
  181. package/dist/esm/components-page/forgot-password.js +1 -1
  182. package/dist/esm/components-page/forgot-password.js.map +1 -1
  183. package/dist/esm/components-page/magic-link-callback.js.map +1 -1
  184. package/dist/esm/components-page/mfa.js.map +1 -1
  185. package/dist/esm/components-page/oauth-callback.js +1 -1
  186. package/dist/esm/components-page/oauth-callback.js.map +1 -1
  187. package/dist/esm/components-page/onboarding.js +1 -1
  188. package/dist/esm/components-page/onboarding.js.map +1 -1
  189. package/dist/esm/components-page/password-reset.js +1 -1
  190. package/dist/esm/components-page/password-reset.js.map +1 -1
  191. package/dist/esm/components-page/sign-out.js.map +1 -1
  192. package/dist/esm/components-page/stack-handler-client.js +9 -5
  193. package/dist/esm/components-page/stack-handler-client.js.map +1 -1
  194. package/dist/esm/components-page/stack-handler.d.ts +13 -9
  195. package/dist/esm/components-page/stack-handler.d.ts.map +1 -1
  196. package/dist/esm/components-page/stack-handler.js +5 -2
  197. package/dist/esm/components-page/stack-handler.js.map +1 -1
  198. package/dist/esm/components-page/team-creation.js +1 -1
  199. package/dist/esm/components-page/team-creation.js.map +1 -1
  200. package/dist/esm/components-page/team-invitation.js.map +1 -1
  201. package/dist/esm/dev-tool/dev-tool-core.d.ts.map +1 -1
  202. package/dist/esm/dev-tool/dev-tool-core.js +4 -4
  203. package/dist/esm/dev-tool/dev-tool-core.js.map +1 -1
  204. package/dist/esm/dev-tool/dev-tool-trigger-position.test.js +1 -1
  205. package/dist/esm/dev-tool/index.js +1 -1
  206. package/dist/esm/dev-tool/index.js.map +1 -1
  207. package/dist/esm/generated/global-css.d.ts +1 -1
  208. package/dist/esm/generated/global-css.js +1 -1
  209. package/dist/esm/generated/global-css.js.map +1 -1
  210. package/dist/esm/generated/quetzal-translations.d.ts +2 -2
  211. package/dist/esm/generated/quetzal-translations.js.map +1 -1
  212. package/dist/esm/index.d.ts +5 -5
  213. package/dist/esm/index.js +5 -6
  214. package/dist/esm/integrations/convex.js.map +1 -1
  215. package/dist/esm/lib/auth.js +1 -1
  216. package/dist/esm/lib/auth.js.map +1 -1
  217. package/dist/esm/lib/auth.test.js +1 -1
  218. package/dist/esm/lib/auth.test.js.map +1 -1
  219. package/dist/esm/lib/cookie.js.map +1 -1
  220. package/dist/esm/lib/hooks.d.ts +11 -1
  221. package/dist/esm/lib/hooks.d.ts.map +1 -1
  222. package/dist/esm/lib/hooks.js +19 -9
  223. package/dist/esm/lib/hooks.js.map +1 -1
  224. package/dist/esm/lib/stack-app/api-keys/index.js.map +1 -1
  225. package/dist/esm/lib/stack-app/apps/implementations/admin-app-impl.d.ts +11 -11
  226. package/dist/esm/lib/stack-app/apps/implementations/admin-app-impl.d.ts.map +1 -1
  227. package/dist/esm/lib/stack-app/apps/implementations/admin-app-impl.js +3 -1
  228. package/dist/esm/lib/stack-app/apps/implementations/admin-app-impl.js.map +1 -1
  229. package/dist/esm/lib/stack-app/apps/implementations/client-app-impl.cross-domain.test.js +67 -1
  230. package/dist/esm/lib/stack-app/apps/implementations/client-app-impl.cross-domain.test.js.map +1 -1
  231. package/dist/esm/lib/stack-app/apps/implementations/client-app-impl.d.ts +4 -3
  232. package/dist/esm/lib/stack-app/apps/implementations/client-app-impl.d.ts.map +1 -1
  233. package/dist/esm/lib/stack-app/apps/implementations/client-app-impl.js +21 -5
  234. package/dist/esm/lib/stack-app/apps/implementations/client-app-impl.js.map +1 -1
  235. package/dist/esm/lib/stack-app/apps/implementations/common.d.ts.map +1 -1
  236. package/dist/esm/lib/stack-app/apps/implementations/common.js +4 -4
  237. package/dist/esm/lib/stack-app/apps/implementations/common.js.map +1 -1
  238. package/dist/esm/lib/stack-app/apps/implementations/event-tracker.js.map +1 -1
  239. package/dist/esm/lib/stack-app/apps/implementations/event-tracker.test.js.map +1 -1
  240. package/dist/esm/lib/stack-app/apps/implementations/index.js.map +1 -1
  241. package/dist/esm/lib/stack-app/apps/implementations/redirect-page-urls.js +1 -1
  242. package/dist/esm/lib/stack-app/apps/implementations/redirect-page-urls.js.map +1 -1
  243. package/dist/esm/lib/stack-app/apps/implementations/server-app-impl.js +1 -1
  244. package/dist/esm/lib/stack-app/apps/implementations/server-app-impl.js.map +1 -1
  245. package/dist/esm/lib/stack-app/apps/implementations/session-replay.d.ts.map +1 -1
  246. package/dist/esm/lib/stack-app/apps/implementations/session-replay.js +3 -2
  247. package/dist/esm/lib/stack-app/apps/implementations/session-replay.js.map +1 -1
  248. package/dist/esm/lib/stack-app/apps/interfaces/admin-app.d.ts +4 -0
  249. package/dist/esm/lib/stack-app/apps/interfaces/admin-app.d.ts.map +1 -1
  250. package/dist/esm/lib/stack-app/apps/interfaces/admin-app.js +1 -0
  251. package/dist/esm/lib/stack-app/apps/interfaces/admin-app.js.map +1 -1
  252. package/dist/esm/lib/stack-app/apps/interfaces/client-app.d.ts +5 -0
  253. package/dist/esm/lib/stack-app/apps/interfaces/client-app.d.ts.map +1 -1
  254. package/dist/esm/lib/stack-app/apps/interfaces/client-app.js +1 -0
  255. package/dist/esm/lib/stack-app/apps/interfaces/client-app.js.map +1 -1
  256. package/dist/esm/lib/stack-app/apps/interfaces/server-app.d.ts +4 -0
  257. package/dist/esm/lib/stack-app/apps/interfaces/server-app.d.ts.map +1 -1
  258. package/dist/esm/lib/stack-app/apps/interfaces/server-app.js +1 -0
  259. package/dist/esm/lib/stack-app/apps/interfaces/server-app.js.map +1 -1
  260. package/dist/esm/lib/stack-app/common.js.map +1 -1
  261. package/dist/esm/lib/stack-app/contact-channels/index.js.map +1 -1
  262. package/dist/esm/lib/stack-app/email-templates/index.js.map +1 -1
  263. package/dist/esm/lib/stack-app/internal-api-keys/index.js.map +1 -1
  264. package/dist/esm/lib/stack-app/permissions/index.js.map +1 -1
  265. package/dist/esm/lib/stack-app/projects/index.js.map +1 -1
  266. package/dist/esm/lib/stack-app/teams/index.js.map +1 -1
  267. package/dist/esm/lib/stack-app/url-targets.js.map +1 -1
  268. package/dist/esm/lib/stack-app/url-targets.test.js +1 -1
  269. package/dist/esm/lib/stack-app/url-targets.test.js.map +1 -1
  270. package/dist/esm/lib/stack-app/users/index.js.map +1 -1
  271. package/dist/esm/providers/stack-context.d.ts +3 -2
  272. package/dist/esm/providers/stack-context.d.ts.map +1 -1
  273. package/dist/esm/providers/stack-context.js +3 -1
  274. package/dist/esm/providers/stack-context.js.map +1 -1
  275. package/dist/esm/providers/stack-provider-client.js.map +1 -1
  276. package/dist/esm/providers/stack-provider.d.ts +5 -1
  277. package/dist/esm/providers/stack-provider.d.ts.map +1 -1
  278. package/dist/esm/providers/stack-provider.js +5 -1
  279. package/dist/esm/providers/stack-provider.js.map +1 -1
  280. package/dist/esm/providers/theme-provider.d.ts +6 -2
  281. package/dist/esm/providers/theme-provider.d.ts.map +1 -1
  282. package/dist/esm/providers/theme-provider.js +6 -2
  283. package/dist/esm/providers/theme-provider.js.map +1 -1
  284. package/dist/esm/providers/translation-provider-client.d.ts +4 -3
  285. package/dist/esm/providers/translation-provider-client.d.ts.map +1 -1
  286. package/dist/esm/providers/translation-provider-client.js +4 -2
  287. package/dist/esm/providers/translation-provider-client.js.map +1 -1
  288. package/dist/esm/providers/translation-provider.js.map +1 -1
  289. package/dist/esm/utils/url.js.map +1 -1
  290. package/dist/generated/global-css.d.ts +1 -1
  291. package/dist/generated/global-css.js +1 -1
  292. package/dist/generated/global-css.js.map +1 -1
  293. package/dist/generated/quetzal-translations.d.ts +2 -2
  294. package/dist/generated/quetzal-translations.js +16 -16
  295. package/dist/generated/quetzal-translations.js.map +1 -1
  296. package/dist/index.d.ts +6 -6
  297. package/dist/index.js +9 -12
  298. package/dist/integrations/convex/component/convex.config.d.ts +1 -1
  299. package/dist/integrations/convex.js +5 -5
  300. package/dist/integrations/convex.js.map +1 -1
  301. package/dist/lib/auth.js +12 -12
  302. package/dist/lib/auth.js.map +1 -1
  303. package/dist/lib/auth.test.js +2 -2
  304. package/dist/lib/auth.test.js.map +1 -1
  305. package/dist/lib/cookie.js +9 -9
  306. package/dist/lib/cookie.js.map +1 -1
  307. package/dist/lib/hooks.d.ts +11 -1
  308. package/dist/lib/hooks.d.ts.map +1 -1
  309. package/dist/lib/hooks.js +19 -8
  310. package/dist/lib/hooks.js.map +1 -1
  311. package/dist/lib/stack-app/api-keys/index.js +2 -2
  312. package/dist/lib/stack-app/api-keys/index.js.map +1 -1
  313. package/dist/lib/stack-app/apps/implementations/admin-app-impl.d.ts +11 -11
  314. package/dist/lib/stack-app/apps/implementations/admin-app-impl.d.ts.map +1 -1
  315. package/dist/lib/stack-app/apps/implementations/admin-app-impl.js +39 -37
  316. package/dist/lib/stack-app/apps/implementations/admin-app-impl.js.map +1 -1
  317. package/dist/lib/stack-app/apps/implementations/client-app-impl.cross-domain.test.js +66 -0
  318. package/dist/lib/stack-app/apps/implementations/client-app-impl.cross-domain.test.js.map +1 -1
  319. package/dist/lib/stack-app/apps/implementations/client-app-impl.d.ts +4 -3
  320. package/dist/lib/stack-app/apps/implementations/client-app-impl.d.ts.map +1 -1
  321. package/dist/lib/stack-app/apps/implementations/client-app-impl.js +224 -208
  322. package/dist/lib/stack-app/apps/implementations/client-app-impl.js.map +1 -1
  323. package/dist/lib/stack-app/apps/implementations/common.d.ts.map +1 -1
  324. package/dist/lib/stack-app/apps/implementations/common.js +30 -30
  325. package/dist/lib/stack-app/apps/implementations/common.js.map +1 -1
  326. package/dist/lib/stack-app/apps/implementations/event-tracker.js +7 -7
  327. package/dist/lib/stack-app/apps/implementations/event-tracker.js.map +1 -1
  328. package/dist/lib/stack-app/apps/implementations/event-tracker.test.js +3 -3
  329. package/dist/lib/stack-app/apps/implementations/event-tracker.test.js.map +1 -1
  330. package/dist/lib/stack-app/apps/implementations/index.js +4 -4
  331. package/dist/lib/stack-app/apps/implementations/index.js.map +1 -1
  332. package/dist/lib/stack-app/apps/implementations/redirect-page-urls.js +8 -8
  333. package/dist/lib/stack-app/apps/implementations/redirect-page-urls.js.map +1 -1
  334. package/dist/lib/stack-app/apps/implementations/server-app-impl.js +70 -70
  335. package/dist/lib/stack-app/apps/implementations/server-app-impl.js.map +1 -1
  336. package/dist/lib/stack-app/apps/implementations/session-replay.d.ts.map +1 -1
  337. package/dist/lib/stack-app/apps/implementations/session-replay.js +13 -12
  338. package/dist/lib/stack-app/apps/implementations/session-replay.js.map +1 -1
  339. package/dist/lib/stack-app/apps/interfaces/admin-app.d.ts +4 -0
  340. package/dist/lib/stack-app/apps/interfaces/admin-app.d.ts.map +1 -1
  341. package/dist/lib/stack-app/apps/interfaces/admin-app.js +1 -0
  342. package/dist/lib/stack-app/apps/interfaces/admin-app.js.map +1 -1
  343. package/dist/lib/stack-app/apps/interfaces/client-app.d.ts +5 -0
  344. package/dist/lib/stack-app/apps/interfaces/client-app.d.ts.map +1 -1
  345. package/dist/lib/stack-app/apps/interfaces/client-app.js +1 -0
  346. package/dist/lib/stack-app/apps/interfaces/client-app.js.map +1 -1
  347. package/dist/lib/stack-app/apps/interfaces/server-app.d.ts +5 -1
  348. package/dist/lib/stack-app/apps/interfaces/server-app.d.ts.map +1 -1
  349. package/dist/lib/stack-app/apps/interfaces/server-app.js +1 -0
  350. package/dist/lib/stack-app/apps/interfaces/server-app.js.map +1 -1
  351. package/dist/lib/stack-app/common.d.ts +1 -1
  352. package/dist/lib/stack-app/common.js.map +1 -1
  353. package/dist/lib/stack-app/contact-channels/index.js.map +1 -1
  354. package/dist/lib/stack-app/email-templates/index.js.map +1 -1
  355. package/dist/lib/stack-app/internal-api-keys/index.js.map +1 -1
  356. package/dist/lib/stack-app/permissions/index.js.map +1 -1
  357. package/dist/lib/stack-app/projects/index.js.map +1 -1
  358. package/dist/lib/stack-app/teams/index.js.map +1 -1
  359. package/dist/lib/stack-app/url-targets.js +6 -6
  360. package/dist/lib/stack-app/url-targets.js.map +1 -1
  361. package/dist/lib/stack-app/url-targets.test.js +1 -1
  362. package/dist/lib/stack-app/url-targets.test.js.map +1 -1
  363. package/dist/lib/stack-app/users/index.js +3 -3
  364. package/dist/lib/stack-app/users/index.js.map +1 -1
  365. package/dist/providers/stack-context.d.ts +3 -2
  366. package/dist/providers/stack-context.d.ts.map +1 -1
  367. package/dist/providers/stack-context.js +3 -1
  368. package/dist/providers/stack-context.js.map +1 -1
  369. package/dist/providers/stack-provider-client.js +2 -2
  370. package/dist/providers/stack-provider-client.js.map +1 -1
  371. package/dist/providers/stack-provider.d.ts +6 -1
  372. package/dist/providers/stack-provider.d.ts.map +1 -1
  373. package/dist/providers/stack-provider.js +8 -1
  374. package/dist/providers/stack-provider.js.map +1 -1
  375. package/dist/providers/theme-provider.d.ts +6 -2
  376. package/dist/providers/theme-provider.d.ts.map +1 -1
  377. package/dist/providers/theme-provider.js +10 -5
  378. package/dist/providers/theme-provider.js.map +1 -1
  379. package/dist/providers/translation-provider-client.d.ts +4 -3
  380. package/dist/providers/translation-provider-client.d.ts.map +1 -1
  381. package/dist/providers/translation-provider-client.js +4 -1
  382. package/dist/providers/translation-provider-client.js.map +1 -1
  383. package/dist/providers/translation-provider.js +2 -2
  384. package/dist/providers/translation-provider.js.map +1 -1
  385. package/dist/{storage-DxMLntUt.d.ts → storage-kTmOAWHW.d.ts} +1 -1
  386. package/dist/{storage-DxMLntUt.d.ts.map → storage-kTmOAWHW.d.ts.map} +1 -1
  387. package/dist/utils/url.js +2 -2
  388. package/dist/utils/url.js.map +1 -1
  389. package/package.json +6 -6
  390. package/dist/esm/internal/deprecation-warning.d.ts +0 -1
  391. package/dist/esm/internal/deprecation-warning.js +0 -24
  392. package/dist/esm/internal/deprecation-warning.js.map +0 -1
  393. package/dist/internal/deprecation-warning.d.ts +0 -1
  394. package/dist/internal/deprecation-warning.js +0 -24
  395. package/dist/internal/deprecation-warning.js.map +0 -1
package/dist/index.d.ts CHANGED
@@ -19,10 +19,10 @@ import { CliAuthConfirmation, CliAuthConfirmationState, CliAuthConfirmationStatu
19
19
  import { EmailVerification } from "./components-page/email-verification.js";
20
20
  import { ForgotPassword } from "./components-page/forgot-password.js";
21
21
  import { PasswordReset } from "./components-page/password-reset.js";
22
- import StackHandler from "./components-page/stack-handler.js";
23
- import { useStackApp, useUser } from "./lib/hooks.js";
24
- import ReactStackProvider from "./providers/stack-provider.js";
25
- import { StackTheme } from "./providers/theme-provider.js";
22
+ import { HexclaveHandler, StackHandler } from "./components-page/stack-handler.js";
23
+ import { useHexclaveApp, useStackApp, useUser } from "./lib/hooks.js";
24
+ import { HexclaveProvider, StackProvider } from "./providers/stack-provider.js";
25
+ import { HexclaveTheme, StackTheme } from "./providers/theme-provider.js";
26
26
  import { AuthPage } from "./components-page/auth-page.js";
27
27
  import { SignIn } from "./components-page/sign-in.js";
28
28
  import { SignUp } from "./components-page/sign-up.js";
@@ -36,5 +36,5 @@ import { OAuthButtonGroup } from "./components/oauth-button-group.js";
36
36
  import { SelectedTeamSwitcher } from "./components/selected-team-switcher.js";
37
37
  import { TeamSwitcher } from "./components/team-switcher.js";
38
38
  import { UserButton } from "./components/user-button.js";
39
- import { StackConfig, StackConfig as HexclaveConfig, defineStackConfig, defineStackConfig as defineHexclaveConfig } from "@hexclave/shared/config";
40
- export { AccountSettings, AdminDomainConfig, AdminEmailConfig, AdminEmailOutbox, AdminEmailOutboxRecipient, AdminEmailOutboxSimpleStatus, AdminEmailOutboxStatus, AdminOAuthProviderConfig, AdminOwnedProject, AdminProject, AdminProjectConfig, AdminProjectConfigUpdateOptions, AdminProjectCreateOptions, AdminProjectPermission, AdminProjectPermissionDefinition, AdminProjectPermissionDefinitionCreateOptions, AdminProjectPermissionDefinitionUpdateOptions, AdminProjectUpdateOptions, AdminSendAttemptError, AdminSentEmail, AdminTeamPermission, AdminTeamPermissionDefinition, AdminTeamPermissionDefinitionCreateOptions, AdminTeamPermissionDefinitionUpdateOptions, type AnalyticsOptions, type AnalyticsReplayOptions, Auth, AuthPage, CliAuthConfirmation, type CliAuthConfirmationState, type CliAuthConfirmationStatus, Connection, ContactChannel, CredentialSignIn, CredentialSignUp, CurrentInternalServerUser, CurrentInternalUser, CurrentServerUser, CurrentUser, EditableTeamMemberProfile, EmailOutboxListOptions, EmailOutboxListResult, EmailOutboxUpdateOptions, EmailVerification, ForgotPassword, GetCurrentUserOptions, GetCurrentUserOptions as GetUserOptions, HandlerUrlOptions, HandlerUrls, HexclaveAdminApp, HexclaveAdminAppConstructor, HexclaveAdminAppConstructorOptions, HexclaveClientApp, HexclaveClientAppConstructor, HexclaveClientAppConstructorOptions, HexclaveClientAppJson, type HexclaveConfig, StackHandler as HexclaveHandler, StackHandler, ReactStackProvider as HexclaveProvider, ReactStackProvider as StackProvider, HexclaveServerApp, HexclaveServerAppConstructor, HexclaveServerAppConstructorOptions, StackTheme as HexclaveTheme, StackTheme, InternalApiKey, InternalApiKeyBase, InternalApiKeyBaseCrudRead, InternalApiKeyCreateOptions, InternalApiKeyFirstView, MagicLinkSignIn, MessageCard, OAuthButton, OAuthButtonGroup, OAuthConnection, OAuthProvider, OAuthProviderConfig, OAuthScopesOnSignIn, PasswordReset, Project, ProjectConfig, PushedConfigSource, ReceivedTeamInvitation, ResolvedHandlerUrls, SelectedTeamSwitcher, SentTeamInvitation, ServerContactChannel, ServerListUsersOptions, ServerOAuthProvider, ServerTeam, ServerTeamCreateOptions, ServerTeamMemberProfile, ServerTeamUpdateOptions, ServerTeamUser, ServerUser, SignIn, SignUp, StackAdminApp, StackAdminAppConstructor, StackAdminAppConstructorOptions, StackClientApp, StackClientAppConstructor, StackClientAppConstructorOptions, StackClientAppJson, type StackConfig, StackServerApp, StackServerAppConstructor, StackServerAppConstructorOptions, Team, TeamCreateOptions, TeamInvitation, TeamMemberProfile, TeamSwitcher, TeamUpdateOptions, TeamUser, User, UserAvatar, UserButton, defineHexclaveConfig, defineStackConfig, getConvexProvidersConfig, getPagePrompt, stackAppInternalsSymbol, useCliAuthConfirmation, useStackApp as useHexclaveApp, useStackApp, useUser };
39
+ import { HexclaveConfig, StackConfig, defineHexclaveConfig, defineStackConfig } from "@hexclave/shared/config";
40
+ export { AccountSettings, AdminDomainConfig, AdminEmailConfig, AdminEmailOutbox, AdminEmailOutboxRecipient, AdminEmailOutboxSimpleStatus, AdminEmailOutboxStatus, AdminOAuthProviderConfig, AdminOwnedProject, AdminProject, AdminProjectConfig, AdminProjectConfigUpdateOptions, AdminProjectCreateOptions, AdminProjectPermission, AdminProjectPermissionDefinition, AdminProjectPermissionDefinitionCreateOptions, AdminProjectPermissionDefinitionUpdateOptions, AdminProjectUpdateOptions, AdminSendAttemptError, AdminSentEmail, AdminTeamPermission, AdminTeamPermissionDefinition, AdminTeamPermissionDefinitionCreateOptions, AdminTeamPermissionDefinitionUpdateOptions, type AnalyticsOptions, type AnalyticsReplayOptions, Auth, AuthPage, CliAuthConfirmation, type CliAuthConfirmationState, type CliAuthConfirmationStatus, Connection, ContactChannel, CredentialSignIn, CredentialSignUp, CurrentInternalServerUser, CurrentInternalUser, CurrentServerUser, CurrentUser, EditableTeamMemberProfile, EmailOutboxListOptions, EmailOutboxListResult, EmailOutboxUpdateOptions, EmailVerification, ForgotPassword, GetCurrentUserOptions, GetCurrentUserOptions as GetUserOptions, HandlerUrlOptions, HandlerUrls, HexclaveAdminApp, HexclaveAdminAppConstructor, HexclaveAdminAppConstructorOptions, HexclaveClientApp, HexclaveClientAppConstructor, HexclaveClientAppConstructorOptions, HexclaveClientAppJson, type HexclaveConfig, HexclaveHandler, HexclaveProvider, HexclaveServerApp, HexclaveServerAppConstructor, HexclaveServerAppConstructorOptions, HexclaveTheme, InternalApiKey, InternalApiKeyBase, InternalApiKeyBaseCrudRead, InternalApiKeyCreateOptions, InternalApiKeyFirstView, MagicLinkSignIn, MessageCard, OAuthButton, OAuthButtonGroup, OAuthConnection, OAuthProvider, OAuthProviderConfig, OAuthScopesOnSignIn, PasswordReset, Project, ProjectConfig, PushedConfigSource, ReceivedTeamInvitation, ResolvedHandlerUrls, SelectedTeamSwitcher, SentTeamInvitation, ServerContactChannel, ServerListUsersOptions, ServerOAuthProvider, ServerTeam, ServerTeamCreateOptions, ServerTeamMemberProfile, ServerTeamUpdateOptions, ServerTeamUser, ServerUser, SignIn, SignUp, StackAdminApp, StackAdminAppConstructor, StackAdminAppConstructorOptions, StackClientApp, StackClientAppConstructor, StackClientAppConstructorOptions, StackClientAppJson, type StackConfig, StackHandler, StackProvider, StackServerApp, StackServerAppConstructor, StackServerAppConstructorOptions, StackTheme, Team, TeamCreateOptions, TeamInvitation, TeamMemberProfile, TeamSwitcher, TeamUpdateOptions, TeamUser, User, UserAvatar, UserButton, defineHexclaveConfig, defineStackConfig, getConvexProvidersConfig, getPagePrompt, stackAppInternalsSymbol, useCliAuthConfirmation, useHexclaveApp, useStackApp, useUser };
package/dist/index.js CHANGED
@@ -1,13 +1,10 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
2
2
  const require_chunk = require('./chunk-BE-pF4vm.js');
3
- require("./internal/deprecation-warning.js");
4
3
  let __integrations_convex_js = require("./integrations/convex.js");
5
- let _stackframe_stack_shared_config = require("@hexclave/shared/config");
4
+ let _hexclave_shared_config = require("@hexclave/shared/config");
6
5
  let __components_page_stack_handler_js = require("./components-page/stack-handler.js");
7
- __components_page_stack_handler_js = require_chunk.__toESM(__components_page_stack_handler_js);
8
6
  let __lib_hooks_js = require("./lib/hooks.js");
9
7
  let __providers_stack_provider_js = require("./providers/stack-provider.js");
10
- __providers_stack_provider_js = require_chunk.__toESM(__providers_stack_provider_js);
11
8
  let __providers_theme_provider_js = require("./providers/theme-provider.js");
12
9
  let __components_page_account_settings_js = require("./components-page/account-settings.js");
13
10
  let __components_page_auth_page_js = require("./components-page/auth-page.js");
@@ -73,19 +70,19 @@ Object.defineProperty(exports, 'ForgotPassword', {
73
70
  Object.defineProperty(exports, 'HexclaveHandler', {
74
71
  enumerable: true,
75
72
  get: function () {
76
- return __components_page_stack_handler_js.default;
73
+ return __components_page_stack_handler_js.HexclaveHandler;
77
74
  }
78
75
  });
79
76
  Object.defineProperty(exports, 'HexclaveProvider', {
80
77
  enumerable: true,
81
78
  get: function () {
82
- return __providers_stack_provider_js.default;
79
+ return __providers_stack_provider_js.HexclaveProvider;
83
80
  }
84
81
  });
85
82
  Object.defineProperty(exports, 'HexclaveTheme', {
86
83
  enumerable: true,
87
84
  get: function () {
88
- return __providers_theme_provider_js.StackTheme;
85
+ return __providers_theme_provider_js.HexclaveTheme;
89
86
  }
90
87
  });
91
88
  Object.defineProperty(exports, 'MagicLinkSignIn', {
@@ -139,13 +136,13 @@ Object.defineProperty(exports, 'SignUp', {
139
136
  Object.defineProperty(exports, 'StackHandler', {
140
137
  enumerable: true,
141
138
  get: function () {
142
- return __components_page_stack_handler_js.default;
139
+ return __components_page_stack_handler_js.StackHandler;
143
140
  }
144
141
  });
145
142
  Object.defineProperty(exports, 'StackProvider', {
146
143
  enumerable: true,
147
144
  get: function () {
148
- return __providers_stack_provider_js.default;
145
+ return __providers_stack_provider_js.StackProvider;
149
146
  }
150
147
  });
151
148
  Object.defineProperty(exports, 'StackTheme', {
@@ -175,13 +172,13 @@ Object.defineProperty(exports, 'UserButton', {
175
172
  Object.defineProperty(exports, 'defineHexclaveConfig', {
176
173
  enumerable: true,
177
174
  get: function () {
178
- return _stackframe_stack_shared_config.defineStackConfig;
175
+ return _hexclave_shared_config.defineHexclaveConfig;
179
176
  }
180
177
  });
181
178
  Object.defineProperty(exports, 'defineStackConfig', {
182
179
  enumerable: true,
183
180
  get: function () {
184
- return _stackframe_stack_shared_config.defineStackConfig;
181
+ return _hexclave_shared_config.defineStackConfig;
185
182
  }
186
183
  });
187
184
  Object.defineProperty(exports, 'getConvexProvidersConfig', {
@@ -199,7 +196,7 @@ Object.defineProperty(exports, 'useCliAuthConfirmation', {
199
196
  Object.defineProperty(exports, 'useHexclaveApp', {
200
197
  enumerable: true,
201
198
  get: function () {
202
- return __lib_hooks_js.useStackApp;
199
+ return __lib_hooks_js.useHexclaveApp;
203
200
  }
204
201
  });
205
202
  Object.defineProperty(exports, 'useStackApp', {
@@ -1,4 +1,4 @@
1
- import { n as FunctionReference } from "../../../storage-DxMLntUt.js";
1
+ import { n as FunctionReference } from "../../../storage-kTmOAWHW.js";
2
2
 
3
3
  //#region ../../node_modules/.pnpm/convex@1.27.0_react@19.2.1/node_modules/convex/dist/cjs-types/server/components/index.d.ts
4
4
  interface ComponentExports {
@@ -1,6 +1,6 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
2
2
  const require_chunk = require('../chunk-BE-pF4vm.js');
3
- let _stackframe_stack_shared_dist_utils_urls = require("@hexclave/shared/dist/utils/urls");
3
+ let _hexclave_shared_dist_utils_urls = require("@hexclave/shared/dist/utils/urls");
4
4
  let ___lib_stack_app_apps_implementations_common_js = require("../lib/stack-app/apps/implementations/common.js");
5
5
 
6
6
  //#region src/integrations/convex.ts
@@ -9,13 +9,13 @@ function getConvexProvidersConfig(options) {
9
9
  const projectId = options.projectId;
10
10
  return [{
11
11
  type: "customJwt",
12
- issuer: new URL(_stackframe_stack_shared_dist_utils_urls.urlString`/api/v1/projects/${projectId}`, baseUrl),
13
- jwks: new URL(_stackframe_stack_shared_dist_utils_urls.urlString`/api/v1/projects/${projectId}/.well-known/jwks.json`, baseUrl),
12
+ issuer: new URL(_hexclave_shared_dist_utils_urls.urlString`/api/v1/projects/${projectId}`, baseUrl),
13
+ jwks: new URL(_hexclave_shared_dist_utils_urls.urlString`/api/v1/projects/${projectId}/.well-known/jwks.json`, baseUrl),
14
14
  algorithm: "ES256"
15
15
  }, {
16
16
  type: "customJwt",
17
- issuer: new URL(_stackframe_stack_shared_dist_utils_urls.urlString`/api/v1/projects-anonymous-users/${projectId}`, baseUrl),
18
- jwks: new URL(_stackframe_stack_shared_dist_utils_urls.urlString`/api/v1/projects/${projectId}/.well-known/jwks.json?include_anonymous=true`, baseUrl),
17
+ issuer: new URL(_hexclave_shared_dist_utils_urls.urlString`/api/v1/projects-anonymous-users/${projectId}`, baseUrl),
18
+ jwks: new URL(_hexclave_shared_dist_utils_urls.urlString`/api/v1/projects/${projectId}/.well-known/jwks.json?include_anonymous=true`, baseUrl),
19
19
  algorithm: "ES256"
20
20
  }];
21
21
  }
@@ -1 +1 @@
1
- {"version":3,"file":"convex.js","names":["defaultBaseUrl"],"sources":["../../src/integrations/convex.ts"],"sourcesContent":["\n//===========================================\n// THIS FILE IS AUTO-GENERATED FROM TEMPLATE. DO NOT EDIT IT DIRECTLY, INSTEAD EDIT THE CORRESPONDING FILE IN packages/template\n//===========================================\nimport { urlString } from \"@stackframe/stack-shared/dist/utils/urls\";\nimport { defaultBaseUrl } from \"../lib/stack-app/apps/implementations/common\";\n\nexport function getConvexProvidersConfig(options: {\n baseUrl?: string,\n projectId: string,\n}) {\n const baseUrl = options.baseUrl || defaultBaseUrl;\n const projectId = options.projectId;\n return [\n {\n type: \"customJwt\",\n issuer: new URL(urlString`/api/v1/projects/${projectId}`, baseUrl),\n jwks: new URL(urlString`/api/v1/projects/${projectId}/.well-known/jwks.json`, baseUrl),\n algorithm: \"ES256\",\n },\n {\n type: \"customJwt\",\n issuer: new URL(urlString`/api/v1/projects-anonymous-users/${projectId}`, baseUrl),\n jwks: new URL(urlString`/api/v1/projects/${projectId}/.well-known/jwks.json?include_anonymous=true`, baseUrl),\n algorithm: \"ES256\",\n },\n ];\n}\n"],"mappings":";;;;;;AAOA,SAAgB,yBAAyB,SAGtC;CACD,MAAM,UAAU,QAAQ,WAAWA;CACnC,MAAM,YAAY,QAAQ;AAC1B,QAAO,CACL;EACE,MAAM;EACN,QAAQ,IAAI,IAAI,kDAAS,oBAAoB,aAAa,QAAQ;EAClE,MAAM,IAAI,IAAI,kDAAS,oBAAoB,UAAU,yBAAyB,QAAQ;EACtF,WAAW;EACZ,EACD;EACE,MAAM;EACN,QAAQ,IAAI,IAAI,kDAAS,oCAAoC,aAAa,QAAQ;EAClF,MAAM,IAAI,IAAI,kDAAS,oBAAoB,UAAU,gDAAgD,QAAQ;EAC7G,WAAW;EACZ,CACF"}
1
+ {"version":3,"file":"convex.js","names":["defaultBaseUrl"],"sources":["../../src/integrations/convex.ts"],"sourcesContent":["\n//===========================================\n// THIS FILE IS AUTO-GENERATED FROM TEMPLATE. DO NOT EDIT IT DIRECTLY, INSTEAD EDIT THE CORRESPONDING FILE IN packages/template\n//===========================================\nimport { urlString } from \"@hexclave/shared/dist/utils/urls\";\nimport { defaultBaseUrl } from \"../lib/stack-app/apps/implementations/common\";\n\nexport function getConvexProvidersConfig(options: {\n baseUrl?: string,\n projectId: string,\n}) {\n const baseUrl = options.baseUrl || defaultBaseUrl;\n const projectId = options.projectId;\n return [\n {\n type: \"customJwt\",\n issuer: new URL(urlString`/api/v1/projects/${projectId}`, baseUrl),\n jwks: new URL(urlString`/api/v1/projects/${projectId}/.well-known/jwks.json`, baseUrl),\n algorithm: \"ES256\",\n },\n {\n type: \"customJwt\",\n issuer: new URL(urlString`/api/v1/projects-anonymous-users/${projectId}`, baseUrl),\n jwks: new URL(urlString`/api/v1/projects/${projectId}/.well-known/jwks.json?include_anonymous=true`, baseUrl),\n algorithm: \"ES256\",\n },\n ];\n}\n"],"mappings":";;;;;;AAOA,SAAgB,yBAAyB,SAGtC;CACD,MAAM,UAAU,QAAQ,WAAWA;CACnC,MAAM,YAAY,QAAQ;AAC1B,QAAO,CACL;EACE,MAAM;EACN,QAAQ,IAAI,IAAI,0CAAS,oBAAoB,aAAa,QAAQ;EAClE,MAAM,IAAI,IAAI,0CAAS,oBAAoB,UAAU,yBAAyB,QAAQ;EACtF,WAAW;EACZ,EACD;EACE,MAAM;EACN,QAAQ,IAAI,IAAI,0CAAS,oCAAoC,aAAa,QAAQ;EAClF,MAAM,IAAI,IAAI,0CAAS,oBAAoB,UAAU,gDAAgD,QAAQ;EAC7G,WAAW;EACZ,CACF"}
package/dist/lib/auth.js CHANGED
@@ -1,9 +1,9 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
2
2
  const require_chunk = require('../chunk-BE-pF4vm.js');
3
- let _stackframe_stack_shared_dist_utils_errors = require("@hexclave/shared/dist/utils/errors");
4
- let _stackframe_stack_shared = require("@hexclave/shared");
5
- let _stackframe_stack_shared_dist_utils_strings = require("@hexclave/shared/dist/utils/strings");
6
- let _stackframe_stack_shared_dist_utils_results = require("@hexclave/shared/dist/utils/results");
3
+ let _hexclave_shared_dist_utils_errors = require("@hexclave/shared/dist/utils/errors");
4
+ let _hexclave_shared = require("@hexclave/shared");
5
+ let _hexclave_shared_dist_utils_results = require("@hexclave/shared/dist/utils/results");
6
+ let _hexclave_shared_dist_utils_strings = require("@hexclave/shared/dist/utils/strings");
7
7
  let ___utils_url_js = require("../utils/url.js");
8
8
  let __cookie_js = require("./cookie.js");
9
9
 
@@ -40,7 +40,7 @@ function consumeOAuthCallbackQueryParams(options) {
40
40
  if (details) try {
41
41
  detailsJson = JSON.parse(details);
42
42
  } catch (error) {
43
- throw new _stackframe_stack_shared_dist_utils_errors.HexclaveAssertionError("OAuth callback returned malformed known-error details", {
43
+ throw new _hexclave_shared_dist_utils_errors.HexclaveAssertionError("OAuth callback returned malformed known-error details", {
44
44
  details,
45
45
  cause: error
46
46
  });
@@ -50,7 +50,7 @@ function consumeOAuthCallbackQueryParams(options) {
50
50
  window.history.replaceState({}, "", newUrl.toString());
51
51
  return {
52
52
  type: "known-error",
53
- error: _stackframe_stack_shared.KnownError.fromJson({
53
+ error: _hexclave_shared.KnownError.fromJson({
54
54
  code: knownErrorCode,
55
55
  message: knownErrorMessage,
56
56
  details: detailsJson
@@ -61,10 +61,10 @@ function consumeOAuthCallbackQueryParams(options) {
61
61
  if (!options?.dontWarnAboutMissingQueryParams) console.warn(/* @__PURE__ */ new Error(`Missing required query parameter on OAuth callback: ${param}. Maybe you opened or reloaded the oauth-callback page from your history?`));
62
62
  return null;
63
63
  }
64
- const expectedState = originalUrl.searchParams.get("state") ?? (0, _stackframe_stack_shared_dist_utils_errors.throwErr)("This should never happen; isn't state required above?");
64
+ const expectedState = originalUrl.searchParams.get("state") ?? (0, _hexclave_shared_dist_utils_errors.throwErr)("This should never happen; isn't state required above?");
65
65
  const cookieResult = (0, __cookie_js.consumeVerifierAndStateCookie)(expectedState);
66
66
  if (!cookieResult) {
67
- console.warn(_stackframe_stack_shared_dist_utils_strings.deindent`
67
+ console.warn(_hexclave_shared_dist_utils_strings.deindent`
68
68
  Stack found an outer OAuth callback state in the query parameters, but not in cookies.
69
69
 
70
70
  This could have multiple reasons:
@@ -90,18 +90,18 @@ function consumeOAuthCallbackQueryParams(options) {
90
90
  }
91
91
  async function callOAuthCallback(iface, redirectUrl, options) {
92
92
  const consumed = consumeOAuthCallbackQueryParams(options);
93
- if (!consumed) return _stackframe_stack_shared_dist_utils_results.Result.ok(void 0);
93
+ if (!consumed) return _hexclave_shared_dist_utils_results.Result.ok(void 0);
94
94
  if (consumed.type === "known-error") throw consumed.error;
95
95
  try {
96
- return _stackframe_stack_shared_dist_utils_results.Result.ok(await iface.callOAuthCallback({
96
+ return _hexclave_shared_dist_utils_results.Result.ok(await iface.callOAuthCallback({
97
97
  oauthParams: consumed.originalUrl.searchParams,
98
98
  redirectUri: (0, ___utils_url_js.constructRedirectUrl)(redirectUrl, "redirectUri"),
99
99
  codeVerifier: consumed.codeVerifier,
100
100
  state: consumed.state
101
101
  }));
102
102
  } catch (e) {
103
- if (_stackframe_stack_shared.KnownError.isKnownError(e)) throw e;
104
- throw new _stackframe_stack_shared_dist_utils_errors.HexclaveAssertionError("Error signing in during OAuth callback. Please try again.", { cause: e });
103
+ if (_hexclave_shared.KnownError.isKnownError(e)) throw e;
104
+ throw new _hexclave_shared_dist_utils_errors.HexclaveAssertionError("Error signing in during OAuth callback. Please try again.", { cause: e });
105
105
  }
106
106
  }
107
107
 
@@ -1 +1 @@
1
- {"version":3,"file":"auth.js","names":["HexclaveAssertionError","KnownError","Result"],"sources":["../../src/lib/auth.ts"],"sourcesContent":["\n//===========================================\n// THIS FILE IS AUTO-GENERATED FROM TEMPLATE. DO NOT EDIT IT DIRECTLY, INSTEAD EDIT THE CORRESPONDING FILE IN packages/template\n//===========================================\nimport { KnownError, HexclaveClientInterface } from \"@stackframe/stack-shared\";\nimport { InternalSession } from \"@stackframe/stack-shared/dist/sessions\";\nimport { HexclaveAssertionError, throwErr } from \"@stackframe/stack-shared/dist/utils/errors\";\nimport { Result } from \"@stackframe/stack-shared/dist/utils/results\";\nimport { deindent } from \"@stackframe/stack-shared/dist/utils/strings\";\nimport { constructRedirectUrl } from \"../utils/url\";\nimport { consumeVerifierAndStateCookie, saveVerifierAndState } from \"./cookie\";\nexport async function getNewOAuthProviderOrScopeUrl(\n iface: HexclaveClientInterface,\n options: {\n provider: string,\n redirectUrl: string,\n errorRedirectUrl: string,\n providerScope?: string,\n },\n session: InternalSession,\n): Promise<string> {\n const { codeChallenge, state } = await saveVerifierAndState();\n return await iface.getOAuthUrl({\n provider: options.provider,\n redirectUrl: constructRedirectUrl(options.redirectUrl, \"redirectUrl\"),\n errorRedirectUrl: constructRedirectUrl(options.errorRedirectUrl, \"errorRedirectUrl\"),\n afterCallbackRedirectUrl: constructRedirectUrl(window.location.href, \"afterCallbackRedirectUrl\"),\n codeChallenge,\n state,\n type: \"link\",\n session,\n providerScope: options.providerScope,\n });\n}\n\n/**\n * Checks if the current URL has the query parameters for an OAuth callback, and if so, removes them.\n *\n * Must be synchronous for the logic in callOAuthCallback to work without race conditions.\n */\ntype OAuthCallbackConsumptionResult =\n | {\n type: \"oauth-response\",\n originalUrl: URL,\n codeVerifier: string,\n state: string,\n }\n | {\n type: \"known-error\",\n error: KnownError,\n };\n\nfunction consumeOAuthCallbackQueryParams(options?: {\n dontWarnAboutMissingQueryParams?: boolean,\n}): OAuthCallbackConsumptionResult | null {\n const oauthErrorParams = [\"error\", \"error_description\", \"errorCode\", \"message\", \"details\"] as const;\n const requiredParams = [\"code\", \"state\"];\n const originalUrl = new URL(window.location.href);\n const knownErrorCode = originalUrl.searchParams.get(\"errorCode\");\n const knownErrorMessage = originalUrl.searchParams.get(\"message\");\n if (knownErrorCode && knownErrorMessage) {\n const details = originalUrl.searchParams.get(\"details\");\n let detailsJson = {};\n if (details) {\n try {\n detailsJson = JSON.parse(details);\n } catch (error) {\n throw new HexclaveAssertionError(\"OAuth callback returned malformed known-error details\", {\n details,\n cause: error,\n });\n }\n }\n\n const newUrl = new URL(originalUrl);\n for (const param of oauthErrorParams) {\n newUrl.searchParams.delete(param);\n }\n window.history.replaceState({}, \"\", newUrl.toString());\n\n return {\n type: \"known-error\",\n error: KnownError.fromJson({\n code: knownErrorCode,\n message: knownErrorMessage,\n details: detailsJson,\n }),\n };\n }\n\n for (const param of requiredParams) {\n if (!originalUrl.searchParams.has(param)) {\n if (!options?.dontWarnAboutMissingQueryParams) {\n console.warn(new Error(`Missing required query parameter on OAuth callback: ${param}. Maybe you opened or reloaded the oauth-callback page from your history?`));\n }\n return null;\n }\n }\n\n const expectedState = originalUrl.searchParams.get(\"state\") ?? throwErr(\"This should never happen; isn't state required above?\");\n const cookieResult = consumeVerifierAndStateCookie(expectedState);\n\n if (!cookieResult) {\n // If the state can't be found in the cookies, then the callback wasn't meant for us.\n // Maybe the website uses another OAuth library?\n console.warn(deindent`\n Stack found an outer OAuth callback state in the query parameters, but not in cookies.\n\n This could have multiple reasons:\n - The cookie expired, because the OAuth flow took too long.\n - The user's browser deleted the cookie, either manually or because of a very strict cookie policy.\n - The cookie was already consumed by this page, and the user already logged in.\n - You are using another OAuth client library with the same callback URL as Stack.\n - The user opened the OAuth callback page from their history.\n\n Either way, it is probably safe to ignore this warning unless you are debugging an OAuth issue.\n `);\n return null;\n }\n\n\n const newUrl = new URL(originalUrl);\n for (const param of requiredParams) {\n newUrl.searchParams.delete(param);\n }\n\n // let's get rid of the authorization code in the history as we\n // don't redirect to `redirectUrl` if there's a validation error\n // (as the redirectUrl might be malicious!).\n //\n // We use history.replaceState instead of location.assign(...) to\n // prevent an unnecessary reload\n window.history.replaceState({}, \"\", newUrl.toString());\n\n return {\n type: \"oauth-response\",\n originalUrl,\n codeVerifier: cookieResult.codeVerifier,\n state: expectedState,\n };\n}\n\nexport async function callOAuthCallback(\n iface: HexclaveClientInterface,\n redirectUrl: string,\n options?: {\n dontWarnAboutMissingQueryParams?: boolean,\n },\n) {\n // note: this part of the function (until the return) needs\n // to be synchronous, to prevent race conditions when\n // callOAuthCallback is called multiple times in parallel\n const consumed = consumeOAuthCallbackQueryParams(options);\n if (!consumed) return Result.ok(undefined);\n if (consumed.type === \"known-error\") {\n throw consumed.error;\n }\n\n // the rest can be asynchronous (we now know that we are the\n // intended recipient of the callback, and the only instance\n // of callOAuthCallback that's running)\n try {\n return Result.ok(await iface.callOAuthCallback({\n oauthParams: consumed.originalUrl.searchParams,\n redirectUri: constructRedirectUrl(redirectUrl, \"redirectUri\"),\n codeVerifier: consumed.codeVerifier,\n state: consumed.state,\n }));\n } catch (e) {\n if (KnownError.isKnownError(e)) {\n throw e;\n }\n throw new HexclaveAssertionError(\"Error signing in during OAuth callback. Please try again.\", { cause: e });\n }\n}\n"],"mappings":";;;;;;;;;;AAWA,eAAsB,8BACpB,OACA,SAMA,SACiB;CACjB,MAAM,EAAE,eAAe,UAAU,6CAA4B;AAC7D,QAAO,MAAM,MAAM,YAAY;EAC7B,UAAU,QAAQ;EAClB,uDAAkC,QAAQ,aAAa,cAAc;EACrE,4DAAuC,QAAQ,kBAAkB,mBAAmB;EACpF,oEAA+C,OAAO,SAAS,MAAM,2BAA2B;EAChG;EACA;EACA,MAAM;EACN;EACA,eAAe,QAAQ;EACxB,CAAC;;AAoBJ,SAAS,gCAAgC,SAEC;CACxC,MAAM,mBAAmB;EAAC;EAAS;EAAqB;EAAa;EAAW;EAAU;CAC1F,MAAM,iBAAiB,CAAC,QAAQ,QAAQ;CACxC,MAAM,cAAc,IAAI,IAAI,OAAO,SAAS,KAAK;CACjD,MAAM,iBAAiB,YAAY,aAAa,IAAI,YAAY;CAChE,MAAM,oBAAoB,YAAY,aAAa,IAAI,UAAU;AACjE,KAAI,kBAAkB,mBAAmB;EACvC,MAAM,UAAU,YAAY,aAAa,IAAI,UAAU;EACvD,IAAI,cAAc,EAAE;AACpB,MAAI,QACF,KAAI;AACF,iBAAc,KAAK,MAAM,QAAQ;WAC1B,OAAO;AACd,SAAM,IAAIA,kEAAuB,yDAAyD;IACxF;IACA,OAAO;IACR,CAAC;;EAIN,MAAM,SAAS,IAAI,IAAI,YAAY;AACnC,OAAK,MAAM,SAAS,iBAClB,QAAO,aAAa,OAAO,MAAM;AAEnC,SAAO,QAAQ,aAAa,EAAE,EAAE,IAAI,OAAO,UAAU,CAAC;AAEtD,SAAO;GACL,MAAM;GACN,OAAOC,oCAAW,SAAS;IACzB,MAAM;IACN,SAAS;IACT,SAAS;IACV,CAAC;GACH;;AAGH,MAAK,MAAM,SAAS,eAClB,KAAI,CAAC,YAAY,aAAa,IAAI,MAAM,EAAE;AACxC,MAAI,CAAC,SAAS,gCACZ,SAAQ,qBAAK,IAAI,MAAM,uDAAuD,MAAM,2EAA2E,CAAC;AAElK,SAAO;;CAIX,MAAM,gBAAgB,YAAY,aAAa,IAAI,QAAQ,6DAAa,wDAAwD;CAChI,MAAM,8DAA6C,cAAc;AAEjE,KAAI,CAAC,cAAc;AAGjB,UAAQ,KAAK,oDAAQ;;;;;;;;;;;MAWnB;AACF,SAAO;;CAIT,MAAM,SAAS,IAAI,IAAI,YAAY;AACnC,MAAK,MAAM,SAAS,eAClB,QAAO,aAAa,OAAO,MAAM;AASnC,QAAO,QAAQ,aAAa,EAAE,EAAE,IAAI,OAAO,UAAU,CAAC;AAEtD,QAAO;EACL,MAAM;EACN;EACA,cAAc,aAAa;EAC3B,OAAO;EACR;;AAGH,eAAsB,kBACpB,OACA,aACA,SAGA;CAIA,MAAM,WAAW,gCAAgC,QAAQ;AACzD,KAAI,CAAC,SAAU,QAAOC,mDAAO,GAAG,OAAU;AAC1C,KAAI,SAAS,SAAS,cACpB,OAAM,SAAS;AAMjB,KAAI;AACF,SAAOA,mDAAO,GAAG,MAAM,MAAM,kBAAkB;GAC7C,aAAa,SAAS,YAAY;GAClC,uDAAkC,aAAa,cAAc;GAC7D,cAAc,SAAS;GACvB,OAAO,SAAS;GACjB,CAAC,CAAC;UACI,GAAG;AACV,MAAID,oCAAW,aAAa,EAAE,CAC5B,OAAM;AAER,QAAM,IAAID,kEAAuB,6DAA6D,EAAE,OAAO,GAAG,CAAC"}
1
+ {"version":3,"file":"auth.js","names":["HexclaveAssertionError","KnownError","Result"],"sources":["../../src/lib/auth.ts"],"sourcesContent":["\n//===========================================\n// THIS FILE IS AUTO-GENERATED FROM TEMPLATE. DO NOT EDIT IT DIRECTLY, INSTEAD EDIT THE CORRESPONDING FILE IN packages/template\n//===========================================\nimport { KnownError, HexclaveClientInterface } from \"@hexclave/shared\";\nimport { InternalSession } from \"@hexclave/shared/dist/sessions\";\nimport { HexclaveAssertionError, throwErr } from \"@hexclave/shared/dist/utils/errors\";\nimport { Result } from \"@hexclave/shared/dist/utils/results\";\nimport { deindent } from \"@hexclave/shared/dist/utils/strings\";\nimport { constructRedirectUrl } from \"../utils/url\";\nimport { consumeVerifierAndStateCookie, saveVerifierAndState } from \"./cookie\";\nexport async function getNewOAuthProviderOrScopeUrl(\n iface: HexclaveClientInterface,\n options: {\n provider: string,\n redirectUrl: string,\n errorRedirectUrl: string,\n providerScope?: string,\n },\n session: InternalSession,\n): Promise<string> {\n const { codeChallenge, state } = await saveVerifierAndState();\n return await iface.getOAuthUrl({\n provider: options.provider,\n redirectUrl: constructRedirectUrl(options.redirectUrl, \"redirectUrl\"),\n errorRedirectUrl: constructRedirectUrl(options.errorRedirectUrl, \"errorRedirectUrl\"),\n afterCallbackRedirectUrl: constructRedirectUrl(window.location.href, \"afterCallbackRedirectUrl\"),\n codeChallenge,\n state,\n type: \"link\",\n session,\n providerScope: options.providerScope,\n });\n}\n\n/**\n * Checks if the current URL has the query parameters for an OAuth callback, and if so, removes them.\n *\n * Must be synchronous for the logic in callOAuthCallback to work without race conditions.\n */\ntype OAuthCallbackConsumptionResult =\n | {\n type: \"oauth-response\",\n originalUrl: URL,\n codeVerifier: string,\n state: string,\n }\n | {\n type: \"known-error\",\n error: KnownError,\n };\n\nfunction consumeOAuthCallbackQueryParams(options?: {\n dontWarnAboutMissingQueryParams?: boolean,\n}): OAuthCallbackConsumptionResult | null {\n const oauthErrorParams = [\"error\", \"error_description\", \"errorCode\", \"message\", \"details\"] as const;\n const requiredParams = [\"code\", \"state\"];\n const originalUrl = new URL(window.location.href);\n const knownErrorCode = originalUrl.searchParams.get(\"errorCode\");\n const knownErrorMessage = originalUrl.searchParams.get(\"message\");\n if (knownErrorCode && knownErrorMessage) {\n const details = originalUrl.searchParams.get(\"details\");\n let detailsJson = {};\n if (details) {\n try {\n detailsJson = JSON.parse(details);\n } catch (error) {\n throw new HexclaveAssertionError(\"OAuth callback returned malformed known-error details\", {\n details,\n cause: error,\n });\n }\n }\n\n const newUrl = new URL(originalUrl);\n for (const param of oauthErrorParams) {\n newUrl.searchParams.delete(param);\n }\n window.history.replaceState({}, \"\", newUrl.toString());\n\n return {\n type: \"known-error\",\n error: KnownError.fromJson({\n code: knownErrorCode,\n message: knownErrorMessage,\n details: detailsJson,\n }),\n };\n }\n\n for (const param of requiredParams) {\n if (!originalUrl.searchParams.has(param)) {\n if (!options?.dontWarnAboutMissingQueryParams) {\n console.warn(new Error(`Missing required query parameter on OAuth callback: ${param}. Maybe you opened or reloaded the oauth-callback page from your history?`));\n }\n return null;\n }\n }\n\n const expectedState = originalUrl.searchParams.get(\"state\") ?? throwErr(\"This should never happen; isn't state required above?\");\n const cookieResult = consumeVerifierAndStateCookie(expectedState);\n\n if (!cookieResult) {\n // If the state can't be found in the cookies, then the callback wasn't meant for us.\n // Maybe the website uses another OAuth library?\n console.warn(deindent`\n Stack found an outer OAuth callback state in the query parameters, but not in cookies.\n\n This could have multiple reasons:\n - The cookie expired, because the OAuth flow took too long.\n - The user's browser deleted the cookie, either manually or because of a very strict cookie policy.\n - The cookie was already consumed by this page, and the user already logged in.\n - You are using another OAuth client library with the same callback URL as Stack.\n - The user opened the OAuth callback page from their history.\n\n Either way, it is probably safe to ignore this warning unless you are debugging an OAuth issue.\n `);\n return null;\n }\n\n\n const newUrl = new URL(originalUrl);\n for (const param of requiredParams) {\n newUrl.searchParams.delete(param);\n }\n\n // let's get rid of the authorization code in the history as we\n // don't redirect to `redirectUrl` if there's a validation error\n // (as the redirectUrl might be malicious!).\n //\n // We use history.replaceState instead of location.assign(...) to\n // prevent an unnecessary reload\n window.history.replaceState({}, \"\", newUrl.toString());\n\n return {\n type: \"oauth-response\",\n originalUrl,\n codeVerifier: cookieResult.codeVerifier,\n state: expectedState,\n };\n}\n\nexport async function callOAuthCallback(\n iface: HexclaveClientInterface,\n redirectUrl: string,\n options?: {\n dontWarnAboutMissingQueryParams?: boolean,\n },\n) {\n // note: this part of the function (until the return) needs\n // to be synchronous, to prevent race conditions when\n // callOAuthCallback is called multiple times in parallel\n const consumed = consumeOAuthCallbackQueryParams(options);\n if (!consumed) return Result.ok(undefined);\n if (consumed.type === \"known-error\") {\n throw consumed.error;\n }\n\n // the rest can be asynchronous (we now know that we are the\n // intended recipient of the callback, and the only instance\n // of callOAuthCallback that's running)\n try {\n return Result.ok(await iface.callOAuthCallback({\n oauthParams: consumed.originalUrl.searchParams,\n redirectUri: constructRedirectUrl(redirectUrl, \"redirectUri\"),\n codeVerifier: consumed.codeVerifier,\n state: consumed.state,\n }));\n } catch (e) {\n if (KnownError.isKnownError(e)) {\n throw e;\n }\n throw new HexclaveAssertionError(\"Error signing in during OAuth callback. Please try again.\", { cause: e });\n }\n}\n"],"mappings":";;;;;;;;;;AAWA,eAAsB,8BACpB,OACA,SAMA,SACiB;CACjB,MAAM,EAAE,eAAe,UAAU,6CAA4B;AAC7D,QAAO,MAAM,MAAM,YAAY;EAC7B,UAAU,QAAQ;EAClB,uDAAkC,QAAQ,aAAa,cAAc;EACrE,4DAAuC,QAAQ,kBAAkB,mBAAmB;EACpF,oEAA+C,OAAO,SAAS,MAAM,2BAA2B;EAChG;EACA;EACA,MAAM;EACN;EACA,eAAe,QAAQ;EACxB,CAAC;;AAoBJ,SAAS,gCAAgC,SAEC;CACxC,MAAM,mBAAmB;EAAC;EAAS;EAAqB;EAAa;EAAW;EAAU;CAC1F,MAAM,iBAAiB,CAAC,QAAQ,QAAQ;CACxC,MAAM,cAAc,IAAI,IAAI,OAAO,SAAS,KAAK;CACjD,MAAM,iBAAiB,YAAY,aAAa,IAAI,YAAY;CAChE,MAAM,oBAAoB,YAAY,aAAa,IAAI,UAAU;AACjE,KAAI,kBAAkB,mBAAmB;EACvC,MAAM,UAAU,YAAY,aAAa,IAAI,UAAU;EACvD,IAAI,cAAc,EAAE;AACpB,MAAI,QACF,KAAI;AACF,iBAAc,KAAK,MAAM,QAAQ;WAC1B,OAAO;AACd,SAAM,IAAIA,0DAAuB,yDAAyD;IACxF;IACA,OAAO;IACR,CAAC;;EAIN,MAAM,SAAS,IAAI,IAAI,YAAY;AACnC,OAAK,MAAM,SAAS,iBAClB,QAAO,aAAa,OAAO,MAAM;AAEnC,SAAO,QAAQ,aAAa,EAAE,EAAE,IAAI,OAAO,UAAU,CAAC;AAEtD,SAAO;GACL,MAAM;GACN,OAAOC,4BAAW,SAAS;IACzB,MAAM;IACN,SAAS;IACT,SAAS;IACV,CAAC;GACH;;AAGH,MAAK,MAAM,SAAS,eAClB,KAAI,CAAC,YAAY,aAAa,IAAI,MAAM,EAAE;AACxC,MAAI,CAAC,SAAS,gCACZ,SAAQ,qBAAK,IAAI,MAAM,uDAAuD,MAAM,2EAA2E,CAAC;AAElK,SAAO;;CAIX,MAAM,gBAAgB,YAAY,aAAa,IAAI,QAAQ,qDAAa,wDAAwD;CAChI,MAAM,8DAA6C,cAAc;AAEjE,KAAI,CAAC,cAAc;AAGjB,UAAQ,KAAK,4CAAQ;;;;;;;;;;;MAWnB;AACF,SAAO;;CAIT,MAAM,SAAS,IAAI,IAAI,YAAY;AACnC,MAAK,MAAM,SAAS,eAClB,QAAO,aAAa,OAAO,MAAM;AASnC,QAAO,QAAQ,aAAa,EAAE,EAAE,IAAI,OAAO,UAAU,CAAC;AAEtD,QAAO;EACL,MAAM;EACN;EACA,cAAc,aAAa;EAC3B,OAAO;EACR;;AAGH,eAAsB,kBACpB,OACA,aACA,SAGA;CAIA,MAAM,WAAW,gCAAgC,QAAQ;AACzD,KAAI,CAAC,SAAU,QAAOC,2CAAO,GAAG,OAAU;AAC1C,KAAI,SAAS,SAAS,cACpB,OAAM,SAAS;AAMjB,KAAI;AACF,SAAOA,2CAAO,GAAG,MAAM,MAAM,kBAAkB;GAC7C,aAAa,SAAS,YAAY;GAClC,uDAAkC,aAAa,cAAc;GAC7D,cAAc,SAAS;GACvB,OAAO,SAAS;GACjB,CAAC,CAAC;UACI,GAAG;AACV,MAAID,4BAAW,aAAa,EAAE,CAC5B,OAAM;AAER,QAAM,IAAID,0DAAuB,6DAA6D,EAAE,OAAO,GAAG,CAAC"}
@@ -1,6 +1,6 @@
1
1
  const require_chunk = require('../chunk-BE-pF4vm.js');
2
+ let _hexclave_shared = require("@hexclave/shared");
2
3
  let vitest = require("vitest");
3
- let _stackframe_stack_shared = require("@hexclave/shared");
4
4
  let __auth_js = require("./auth.js");
5
5
 
6
6
  //#region src/lib/auth.test.ts
@@ -17,7 +17,7 @@ vitest.vi.mock("./cookie", async (importOriginal) => {
17
17
  (0, vitest.describe)("getNewOAuthProviderOrScopeUrl", () => {
18
18
  (0, vitest.it)("returns the OAuth URL without performing navigation", async () => {
19
19
  window.history.replaceState({}, "", "/account?after_auth_return_to=%2Fsettings");
20
- const iface = new _stackframe_stack_shared.HexclaveClientInterface({
20
+ const iface = new _hexclave_shared.HexclaveClientInterface({
21
21
  clientVersion: "test",
22
22
  getBaseUrl: () => "https://api.example.com",
23
23
  getApiUrls: () => ["https://api.example.com"],
@@ -1 +1 @@
1
- {"version":3,"file":"auth.test.js","names":["vi","HexclaveClientInterface"],"sources":["../../src/lib/auth.test.ts"],"sourcesContent":["\n//===========================================\n// THIS FILE IS AUTO-GENERATED FROM TEMPLATE. DO NOT EDIT IT DIRECTLY, INSTEAD EDIT THE CORRESPONDING FILE IN packages/template\n//===========================================\n// @vitest-environment jsdom\n\nimport { HexclaveClientInterface } from \"@stackframe/stack-shared\";\nimport { describe, expect, it, vi } from \"vitest\";\nimport { getNewOAuthProviderOrScopeUrl } from \"./auth\";\n\nvi.mock(\"./cookie\", async (importOriginal) => {\n const actual = await importOriginal<typeof import(\"./cookie\")>();\n return {\n ...actual,\n saveVerifierAndState: async () => ({\n codeChallenge: \"<stripped code challenge>\",\n state: \"<stripped state>\",\n }),\n };\n});\n\ndescribe(\"getNewOAuthProviderOrScopeUrl\", () => {\n it(\"returns the OAuth URL without performing navigation\", async () => {\n window.history.replaceState({}, \"\", \"/account?after_auth_return_to=%2Fsettings\");\n\n const iface = new HexclaveClientInterface({\n clientVersion: \"test\",\n getBaseUrl: () => \"https://api.example.com\",\n getApiUrls: () => [\"https://api.example.com\"],\n extraRequestHeaders: {},\n projectId: \"00000000-0000-4000-8000-000000000000\",\n publishableClientKey: \"pck_test\",\n });\n const session = iface.createSession({ refreshToken: null, accessToken: null });\n\n const location = await getNewOAuthProviderOrScopeUrl(\n iface,\n {\n provider: \"github\",\n redirectUrl: \"/handler/oauth-callback\",\n errorRedirectUrl: \"/handler/error\",\n providerScope: \"repo user\",\n },\n session,\n );\n\n const url = new URL(location);\n expect(`${url.origin}${url.pathname}`).toBe(\"https://api.example.com/api/v1/auth/oauth/authorize/github\");\n expect(Object.fromEntries(url.searchParams.entries())).toMatchInlineSnapshot(`\n {\n \"after_callback_redirect_url\": \"http://localhost:3000/account?after_auth_return_to=%2Fsettings\",\n \"client_id\": \"00000000-0000-4000-8000-000000000000\",\n \"client_secret\": \"pck_test\",\n \"code_challenge\": \"<stripped code challenge>\",\n \"code_challenge_method\": \"S256\",\n \"error_redirect_url\": \"http://localhost:3000/handler/error?after_auth_return_to=%2Fsettings\",\n \"grant_type\": \"authorization_code\",\n \"provider_scope\": \"repo user\",\n \"redirect_uri\": \"http://localhost:3000/handler/oauth-callback?after_auth_return_to=%2Fsettings\",\n \"response_type\": \"code\",\n \"scope\": \"legacy\",\n \"state\": \"<stripped state>\",\n \"type\": \"link\",\n }\n `);\n });\n});\n"],"mappings":";;;;;;;AAUAA,UAAG,KAAK,YAAY,OAAO,mBAAmB;AAE5C,QAAO;EACL,GAFa,MAAM,gBAA2C;EAG9D,sBAAsB,aAAa;GACjC,eAAe;GACf,OAAO;GACR;EACF;EACD;qBAEO,uCAAuC;AAC9C,gBAAG,uDAAuD,YAAY;AACpE,SAAO,QAAQ,aAAa,EAAE,EAAE,IAAI,4CAA4C;EAEhF,MAAM,QAAQ,IAAIC,iDAAwB;GACxC,eAAe;GACf,kBAAkB;GAClB,kBAAkB,CAAC,0BAA0B;GAC7C,qBAAqB,EAAE;GACvB,WAAW;GACX,sBAAsB;GACvB,CAAC;EAGF,MAAM,WAAW,mDACf,OACA;GACE,UAAU;GACV,aAAa;GACb,kBAAkB;GAClB,eAAe;GAChB,EATa,MAAM,cAAc;GAAE,cAAc;GAAM,aAAa;GAAM,CAAC,CAW7E;EAED,MAAM,MAAM,IAAI,IAAI,SAAS;AAC7B,qBAAO,GAAG,IAAI,SAAS,IAAI,WAAW,CAAC,KAAK,6DAA6D;AACzG,qBAAO,OAAO,YAAY,IAAI,aAAa,SAAS,CAAC,CAAC,CAAC,sBAAsB;;;;;;;;;;;;;;;;MAgB3E;GACF;EACF"}
1
+ {"version":3,"file":"auth.test.js","names":["vi","HexclaveClientInterface"],"sources":["../../src/lib/auth.test.ts"],"sourcesContent":["\n//===========================================\n// THIS FILE IS AUTO-GENERATED FROM TEMPLATE. DO NOT EDIT IT DIRECTLY, INSTEAD EDIT THE CORRESPONDING FILE IN packages/template\n//===========================================\n// @vitest-environment jsdom\n\nimport { HexclaveClientInterface } from \"@hexclave/shared\";\nimport { describe, expect, it, vi } from \"vitest\";\nimport { getNewOAuthProviderOrScopeUrl } from \"./auth\";\n\nvi.mock(\"./cookie\", async (importOriginal) => {\n const actual = await importOriginal<typeof import(\"./cookie\")>();\n return {\n ...actual,\n saveVerifierAndState: async () => ({\n codeChallenge: \"<stripped code challenge>\",\n state: \"<stripped state>\",\n }),\n };\n});\n\ndescribe(\"getNewOAuthProviderOrScopeUrl\", () => {\n it(\"returns the OAuth URL without performing navigation\", async () => {\n window.history.replaceState({}, \"\", \"/account?after_auth_return_to=%2Fsettings\");\n\n const iface = new HexclaveClientInterface({\n clientVersion: \"test\",\n getBaseUrl: () => \"https://api.example.com\",\n getApiUrls: () => [\"https://api.example.com\"],\n extraRequestHeaders: {},\n projectId: \"00000000-0000-4000-8000-000000000000\",\n publishableClientKey: \"pck_test\",\n });\n const session = iface.createSession({ refreshToken: null, accessToken: null });\n\n const location = await getNewOAuthProviderOrScopeUrl(\n iface,\n {\n provider: \"github\",\n redirectUrl: \"/handler/oauth-callback\",\n errorRedirectUrl: \"/handler/error\",\n providerScope: \"repo user\",\n },\n session,\n );\n\n const url = new URL(location);\n expect(`${url.origin}${url.pathname}`).toBe(\"https://api.example.com/api/v1/auth/oauth/authorize/github\");\n expect(Object.fromEntries(url.searchParams.entries())).toMatchInlineSnapshot(`\n {\n \"after_callback_redirect_url\": \"http://localhost:3000/account?after_auth_return_to=%2Fsettings\",\n \"client_id\": \"00000000-0000-4000-8000-000000000000\",\n \"client_secret\": \"pck_test\",\n \"code_challenge\": \"<stripped code challenge>\",\n \"code_challenge_method\": \"S256\",\n \"error_redirect_url\": \"http://localhost:3000/handler/error?after_auth_return_to=%2Fsettings\",\n \"grant_type\": \"authorization_code\",\n \"provider_scope\": \"repo user\",\n \"redirect_uri\": \"http://localhost:3000/handler/oauth-callback?after_auth_return_to=%2Fsettings\",\n \"response_type\": \"code\",\n \"scope\": \"legacy\",\n \"state\": \"<stripped state>\",\n \"type\": \"link\",\n }\n `);\n });\n});\n"],"mappings":";;;;;;;AAUAA,UAAG,KAAK,YAAY,OAAO,mBAAmB;AAE5C,QAAO;EACL,GAFa,MAAM,gBAA2C;EAG9D,sBAAsB,aAAa;GACjC,eAAe;GACf,OAAO;GACR;EACF;EACD;qBAEO,uCAAuC;AAC9C,gBAAG,uDAAuD,YAAY;AACpE,SAAO,QAAQ,aAAa,EAAE,EAAE,IAAI,4CAA4C;EAEhF,MAAM,QAAQ,IAAIC,yCAAwB;GACxC,eAAe;GACf,kBAAkB;GAClB,kBAAkB,CAAC,0BAA0B;GAC7C,qBAAqB,EAAE;GACvB,WAAW;GACX,sBAAsB;GACvB,CAAC;EAGF,MAAM,WAAW,mDACf,OACA;GACE,UAAU;GACV,aAAa;GACb,kBAAkB;GAClB,eAAe;GAChB,EATa,MAAM,cAAc;GAAE,cAAc;GAAM,aAAa;GAAM,CAAC,CAW7E;EAED,MAAM,MAAM,IAAI,IAAI,SAAS;AAC7B,qBAAO,GAAG,IAAI,SAAS,IAAI,WAAW,CAAC,KAAK,6DAA6D;AACzG,qBAAO,OAAO,YAAY,IAAI,aAAa,SAAS,CAAC,CAAC,CAAC,sBAAsB;;;;;;;;;;;;;;;;MAgB3E;GACF;EACF"}
@@ -1,7 +1,7 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
2
2
  const require_chunk = require('../chunk-BE-pF4vm.js');
3
- let _stackframe_stack_shared_dist_utils_errors = require("@hexclave/shared/dist/utils/errors");
4
- let _stackframe_stack_shared_dist_utils_env = require("@hexclave/shared/dist/utils/env");
3
+ let _hexclave_shared_dist_utils_errors = require("@hexclave/shared/dist/utils/errors");
4
+ let _hexclave_shared_dist_utils_env = require("@hexclave/shared/dist/utils/env");
5
5
  let js_cookie = require("js-cookie");
6
6
  js_cookie = require_chunk.__toESM(js_cookie);
7
7
 
@@ -116,11 +116,11 @@ const token68ParamRE = new RegExp("^(" + token68Match + ")(?:$|[,\\s])(.*)");
116
116
  //#endregion
117
117
  //#region src/lib/cookie.ts
118
118
  function ensureClient() {
119
- if (!(0, _stackframe_stack_shared_dist_utils_env.isBrowserLike)()) throw new Error("cookieClient functions can only be called in a browser environment, yet window is undefined");
119
+ if (!(0, _hexclave_shared_dist_utils_env.isBrowserLike)()) throw new Error("cookieClient functions can only be called in a browser environment, yet window is undefined");
120
120
  }
121
121
  async function createPlaceholderCookieHelper() {
122
122
  function throwError() {
123
- throw new _stackframe_stack_shared_dist_utils_errors.HexclaveAssertionError("Throwing cookie helper is just a placeholder. This should never be called");
123
+ throw new _hexclave_shared_dist_utils_errors.HexclaveAssertionError("Throwing cookie helper is just a placeholder. This should never be called");
124
124
  }
125
125
  return {
126
126
  get: throwError,
@@ -134,16 +134,16 @@ function requiresSecureAttribute(name) {
134
134
  return name.startsWith("__Host-");
135
135
  }
136
136
  function validateCookieOptions(name, options) {
137
- if (requiresSecureAttribute(name) && options.domain !== void 0) throw new _stackframe_stack_shared_dist_utils_errors.HexclaveAssertionError("__Host- cookies must not specify a Domain attribute");
137
+ if (requiresSecureAttribute(name) && options.domain !== void 0) throw new _hexclave_shared_dist_utils_errors.HexclaveAssertionError("__Host- cookies must not specify a Domain attribute");
138
138
  }
139
139
  async function createCookieHelper() {
140
- if ((0, _stackframe_stack_shared_dist_utils_env.isBrowserLike)()) return createBrowserCookieHelper();
140
+ if ((0, _hexclave_shared_dist_utils_env.isBrowserLike)()) return createBrowserCookieHelper();
141
141
  else return await createPlaceholderCookieHelper();
142
142
  }
143
143
  function createCookieHelperSync() {
144
- if ((0, _stackframe_stack_shared_dist_utils_env.isBrowserLike)()) return createBrowserCookieHelper();
144
+ if ((0, _hexclave_shared_dist_utils_env.isBrowserLike)()) return createBrowserCookieHelper();
145
145
  function throwError() {
146
- throw new _stackframe_stack_shared_dist_utils_errors.HexclaveAssertionError("Synchronous server cookie helpers are not available on this platform");
146
+ throw new _hexclave_shared_dist_utils_errors.HexclaveAssertionError("Synchronous server cookie helpers are not available on this platform");
147
147
  }
148
148
  return {
149
149
  get: throwError,
@@ -181,7 +181,7 @@ async function getCookie(name) {
181
181
  return (await createCookieHelper()).get(name);
182
182
  }
183
183
  async function isSecure() {
184
- if ((0, _stackframe_stack_shared_dist_utils_env.isBrowserLike)()) return determineSecureFromClientContext();
184
+ if ((0, _hexclave_shared_dist_utils_env.isBrowserLike)()) return determineSecureFromClientContext();
185
185
  return false;
186
186
  }
187
187
  function determineSecureFromClientContext() {