@cabin-id/nextjs 0.1.7 → 0.2.1

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 (250) hide show
  1. package/dist/cjs/api/{getUserInfo.js → endpoints/AbstractApi.js} +14 -18
  2. package/dist/cjs/api/endpoints/AbstractApi.js.map +1 -0
  3. package/dist/cjs/api/endpoints/UserApi.js +40 -0
  4. package/dist/cjs/api/endpoints/UserApi.js.map +1 -0
  5. package/dist/cjs/api/endpoints/index.js +32 -0
  6. package/dist/cjs/api/endpoints/index.js.map +1 -0
  7. package/dist/cjs/api/factory.js +60 -0
  8. package/dist/cjs/api/factory.js.map +1 -0
  9. package/dist/cjs/api/request.js +97 -0
  10. package/dist/cjs/api/request.js.map +1 -0
  11. package/dist/cjs/component.client.js +2 -2
  12. package/dist/cjs/component.client.js.map +1 -1
  13. package/dist/cjs/component.server.js +5 -2
  14. package/dist/cjs/component.server.js.map +1 -1
  15. package/dist/cjs/components/SignInButton.js +15 -6
  16. package/dist/cjs/components/SignInButton.js.map +1 -1
  17. package/dist/cjs/constants.js +20 -19
  18. package/dist/cjs/constants.js.map +1 -1
  19. package/dist/cjs/hooks/createContextAndHook.js +62 -0
  20. package/dist/cjs/hooks/createContextAndHook.js.map +1 -0
  21. package/dist/cjs/hooks/useSafeLayoutEffect.js +40 -0
  22. package/dist/cjs/hooks/useSafeLayoutEffect.js.map +1 -0
  23. package/dist/cjs/hooks/useUser.js +24 -16
  24. package/dist/cjs/hooks/useUser.js.map +1 -1
  25. package/dist/cjs/index.js +2 -2
  26. package/dist/cjs/index.js.map +1 -1
  27. package/dist/cjs/provider/context.js +62 -0
  28. package/dist/cjs/provider/context.js.map +1 -0
  29. package/dist/cjs/provider/core.provider.js +49 -0
  30. package/dist/cjs/provider/core.provider.js.map +1 -0
  31. package/dist/cjs/{client/provider.js → provider/main.provider.js} +9 -21
  32. package/dist/cjs/provider/main.provider.js.map +1 -0
  33. package/dist/cjs/server/auth.js +31 -7
  34. package/dist/cjs/server/auth.js.map +1 -1
  35. package/dist/cjs/{client/request.js → server/client.js} +12 -20
  36. package/dist/cjs/server/client.js.map +1 -0
  37. package/dist/cjs/server/createGetAuth.js +45 -0
  38. package/dist/cjs/server/createGetAuth.js.map +1 -0
  39. package/dist/cjs/server/createRedirect.js +36 -35
  40. package/dist/cjs/server/createRedirect.js.map +1 -1
  41. package/dist/cjs/server/errors.js +110 -0
  42. package/dist/cjs/server/errors.js.map +1 -0
  43. package/dist/cjs/server/getCurrentUser.js +3 -10
  44. package/dist/cjs/server/getCurrentUser.js.map +1 -1
  45. package/dist/cjs/server/index.js +32 -0
  46. package/dist/cjs/server/index.js.map +1 -0
  47. package/dist/cjs/server/middleware.js +122 -102
  48. package/dist/cjs/server/middleware.js.map +1 -1
  49. package/dist/cjs/server/protect.js +69 -0
  50. package/dist/cjs/server/protect.js.map +1 -0
  51. package/dist/cjs/server/routeMatcher.js.map +1 -1
  52. package/dist/cjs/server/serverRedirectWithAuth.js +2 -2
  53. package/dist/cjs/server/serverRedirectWithAuth.js.map +1 -1
  54. package/dist/cjs/server/type.js.map +1 -1
  55. package/dist/cjs/server/utils.js +58 -0
  56. package/dist/cjs/server/utils.js.map +1 -1
  57. package/dist/cjs/styles/global.css +30 -2
  58. package/dist/cjs/styles/global.css.map +1 -1
  59. package/dist/cjs/tokens/authObjects.js +45 -0
  60. package/dist/cjs/tokens/authObjects.js.map +1 -0
  61. package/dist/cjs/tokens/authStatus.js +86 -0
  62. package/dist/cjs/tokens/authStatus.js.map +1 -0
  63. package/dist/cjs/tokens/authenticateContext.js +69 -0
  64. package/dist/cjs/tokens/authenticateContext.js.map +1 -0
  65. package/dist/cjs/tokens/cabinIdRequest.js +79 -0
  66. package/dist/cjs/tokens/cabinIdRequest.js.map +1 -0
  67. package/dist/cjs/tokens/cabinIdUrl.js +36 -0
  68. package/dist/cjs/tokens/cabinIdUrl.js.map +1 -0
  69. package/dist/cjs/tokens/request.js +58 -0
  70. package/dist/cjs/tokens/request.js.map +1 -0
  71. package/dist/cjs/types.js.map +1 -1
  72. package/dist/cjs/utils/createCabinIdClient.js +38 -0
  73. package/dist/cjs/utils/createCabinIdClient.js.map +1 -0
  74. package/dist/cjs/utils/http.js +31 -0
  75. package/dist/cjs/utils/http.js.map +1 -0
  76. package/dist/cjs/utils/initial.js +51 -0
  77. package/dist/cjs/utils/initial.js.map +1 -0
  78. package/dist/cjs/utils.js +10 -0
  79. package/dist/cjs/utils.js.map +1 -1
  80. package/dist/esm/api/endpoints/AbstractApi.js +14 -0
  81. package/dist/esm/api/endpoints/AbstractApi.js.map +1 -0
  82. package/dist/esm/api/endpoints/UserApi.js +16 -0
  83. package/dist/esm/api/endpoints/UserApi.js.map +1 -0
  84. package/dist/esm/api/endpoints/index.js +7 -0
  85. package/dist/esm/api/endpoints/index.js.map +1 -0
  86. package/dist/esm/api/factory.js +35 -0
  87. package/dist/esm/api/factory.js.map +1 -0
  88. package/dist/esm/api/request.js +63 -0
  89. package/dist/esm/api/request.js.map +1 -0
  90. package/dist/esm/component.client.js +1 -1
  91. package/dist/esm/component.client.js.map +1 -1
  92. package/dist/esm/component.server.js +3 -1
  93. package/dist/esm/component.server.js.map +1 -1
  94. package/dist/esm/components/SignInButton.js +17 -8
  95. package/dist/esm/components/SignInButton.js.map +1 -1
  96. package/dist/esm/constants.js +16 -15
  97. package/dist/esm/constants.js.map +1 -1
  98. package/dist/esm/hooks/createContextAndHook.js +27 -0
  99. package/dist/esm/hooks/createContextAndHook.js.map +1 -0
  100. package/dist/esm/hooks/useSafeLayoutEffect.js +6 -0
  101. package/dist/esm/hooks/useSafeLayoutEffect.js.map +1 -0
  102. package/dist/esm/hooks/useUser.js +27 -6
  103. package/dist/esm/hooks/useUser.js.map +1 -1
  104. package/dist/esm/index.js +1 -1
  105. package/dist/esm/index.js.map +1 -1
  106. package/dist/esm/provider/context.js +24 -0
  107. package/dist/esm/provider/context.js.map +1 -0
  108. package/dist/esm/provider/core.provider.js +15 -0
  109. package/dist/esm/provider/core.provider.js.map +1 -0
  110. package/dist/esm/provider/main.provider.js +11 -0
  111. package/dist/esm/provider/main.provider.js.map +1 -0
  112. package/dist/esm/server/auth.js +32 -8
  113. package/dist/esm/server/auth.js.map +1 -1
  114. package/dist/esm/server/client.js +11 -0
  115. package/dist/esm/server/client.js.map +1 -0
  116. package/dist/esm/server/createGetAuth.js +23 -0
  117. package/dist/esm/server/createGetAuth.js.map +1 -0
  118. package/dist/esm/server/createRedirect.js +36 -35
  119. package/dist/esm/server/createRedirect.js.map +1 -1
  120. package/dist/esm/server/errors.js +78 -0
  121. package/dist/esm/server/errors.js.map +1 -0
  122. package/dist/esm/server/getCurrentUser.js +3 -10
  123. package/dist/esm/server/getCurrentUser.js.map +1 -1
  124. package/dist/esm/server/index.js +7 -0
  125. package/dist/esm/server/index.js.map +1 -0
  126. package/dist/esm/server/middleware.js +125 -106
  127. package/dist/esm/server/middleware.js.map +1 -1
  128. package/dist/esm/server/protect.js +45 -0
  129. package/dist/esm/server/protect.js.map +1 -0
  130. package/dist/esm/server/routeMatcher.js.map +1 -1
  131. package/dist/esm/server/serverRedirectWithAuth.js +2 -2
  132. package/dist/esm/server/serverRedirectWithAuth.js.map +1 -1
  133. package/dist/esm/server/utils.js +54 -1
  134. package/dist/esm/server/utils.js.map +1 -1
  135. package/dist/esm/styles/global.css +30 -2
  136. package/dist/esm/styles/global.css.map +1 -1
  137. package/dist/esm/tokens/authObjects.js +20 -0
  138. package/dist/esm/tokens/authObjects.js.map +1 -0
  139. package/dist/esm/tokens/authStatus.js +59 -0
  140. package/dist/esm/tokens/authStatus.js.map +1 -0
  141. package/dist/esm/tokens/authenticateContext.js +45 -0
  142. package/dist/esm/tokens/authenticateContext.js.map +1 -0
  143. package/dist/esm/tokens/cabinIdRequest.js +55 -0
  144. package/dist/esm/tokens/cabinIdRequest.js.map +1 -0
  145. package/dist/esm/tokens/cabinIdUrl.js +12 -0
  146. package/dist/esm/tokens/cabinIdUrl.js.map +1 -0
  147. package/dist/esm/tokens/request.js +34 -0
  148. package/dist/esm/tokens/request.js.map +1 -0
  149. package/dist/esm/utils/createCabinIdClient.js +17 -0
  150. package/dist/esm/utils/createCabinIdClient.js.map +1 -0
  151. package/dist/esm/utils/http.js +7 -0
  152. package/dist/esm/utils/http.js.map +1 -0
  153. package/dist/esm/utils/initial.js +26 -0
  154. package/dist/esm/utils/initial.js.map +1 -0
  155. package/dist/esm/utils.js +9 -0
  156. package/dist/esm/utils.js.map +1 -1
  157. package/dist/types/api/endpoints/AbstractApi.d.ts +7 -0
  158. package/dist/types/api/endpoints/AbstractApi.d.ts.map +1 -0
  159. package/dist/types/api/endpoints/UserApi.d.ts +6 -0
  160. package/dist/types/api/endpoints/UserApi.d.ts.map +1 -0
  161. package/dist/types/api/endpoints/index.d.ts +3 -0
  162. package/dist/types/api/endpoints/index.d.ts.map +1 -0
  163. package/dist/types/api/factory.d.ts +35 -0
  164. package/dist/types/api/factory.d.ts.map +1 -0
  165. package/dist/types/api/request.d.ts +33 -0
  166. package/dist/types/api/request.d.ts.map +1 -0
  167. package/dist/types/component.client.d.ts +1 -1
  168. package/dist/types/component.client.d.ts.map +1 -1
  169. package/dist/types/component.server.d.ts +1 -0
  170. package/dist/types/component.server.d.ts.map +1 -1
  171. package/dist/types/components/SignInButton.d.ts.map +1 -1
  172. package/dist/types/constants.d.ts +11 -10
  173. package/dist/types/constants.d.ts.map +1 -1
  174. package/dist/types/hooks/createContextAndHook.d.ts +18 -0
  175. package/dist/types/hooks/createContextAndHook.d.ts.map +1 -0
  176. package/dist/types/hooks/useSafeLayoutEffect.d.ts +3 -0
  177. package/dist/types/hooks/useSafeLayoutEffect.d.ts.map +1 -0
  178. package/dist/types/hooks/useUser.d.ts +35 -1
  179. package/dist/types/hooks/useUser.d.ts.map +1 -1
  180. package/dist/types/index.d.ts +1 -1
  181. package/dist/types/index.d.ts.map +1 -1
  182. package/dist/types/provider/context.d.ts +15 -0
  183. package/dist/types/provider/context.d.ts.map +1 -0
  184. package/dist/types/provider/core.provider.d.ts +6 -0
  185. package/dist/types/provider/core.provider.d.ts.map +1 -0
  186. package/dist/types/provider/main.provider.d.ts +5 -0
  187. package/dist/types/provider/main.provider.d.ts.map +1 -0
  188. package/dist/types/server/auth.d.ts +10 -3
  189. package/dist/types/server/auth.d.ts.map +1 -1
  190. package/dist/types/server/client.d.ts +3 -0
  191. package/dist/types/server/client.d.ts.map +1 -0
  192. package/dist/types/server/createGetAuth.d.ts +5 -0
  193. package/dist/types/server/createGetAuth.d.ts.map +1 -0
  194. package/dist/types/server/createRedirect.d.ts.map +1 -1
  195. package/dist/types/server/errors.d.ts +10 -0
  196. package/dist/types/server/errors.d.ts.map +1 -0
  197. package/dist/types/server/getCurrentUser.d.ts.map +1 -1
  198. package/dist/types/server/index.d.ts +3 -0
  199. package/dist/types/server/index.d.ts.map +1 -0
  200. package/dist/types/server/middleware.d.ts +22 -77
  201. package/dist/types/server/middleware.d.ts.map +1 -1
  202. package/dist/types/server/protect.d.ts +34 -0
  203. package/dist/types/server/protect.d.ts.map +1 -0
  204. package/dist/types/server/routeMatcher.d.ts +4 -4
  205. package/dist/types/server/routeMatcher.d.ts.map +1 -1
  206. package/dist/types/server/serverRedirectWithAuth.d.ts +2 -1
  207. package/dist/types/server/serverRedirectWithAuth.d.ts.map +1 -1
  208. package/dist/types/server/type.d.ts +10 -1
  209. package/dist/types/server/type.d.ts.map +1 -1
  210. package/dist/types/server/utils.d.ts +10 -3
  211. package/dist/types/server/utils.d.ts.map +1 -1
  212. package/dist/types/tokens/authObjects.d.ts +37 -0
  213. package/dist/types/tokens/authObjects.d.ts.map +1 -0
  214. package/dist/types/tokens/authStatus.d.ts +51 -0
  215. package/dist/types/tokens/authStatus.d.ts.map +1 -0
  216. package/dist/types/tokens/authenticateContext.d.ts +40 -0
  217. package/dist/types/tokens/authenticateContext.d.ts.map +1 -0
  218. package/dist/types/tokens/cabinIdRequest.d.ts +24 -0
  219. package/dist/types/tokens/cabinIdRequest.d.ts.map +1 -0
  220. package/dist/types/tokens/cabinIdUrl.d.ts +18 -0
  221. package/dist/types/tokens/cabinIdUrl.d.ts.map +1 -0
  222. package/dist/types/tokens/request.d.ts +4 -0
  223. package/dist/types/tokens/request.d.ts.map +1 -0
  224. package/dist/types/types.d.ts +1 -3
  225. package/dist/types/types.d.ts.map +1 -1
  226. package/dist/types/utils/createCabinIdClient.d.ts +5 -0
  227. package/dist/types/utils/createCabinIdClient.d.ts.map +1 -0
  228. package/dist/types/utils/http.d.ts +4 -0
  229. package/dist/types/utils/http.d.ts.map +1 -0
  230. package/dist/types/utils/initial.d.ts +8 -0
  231. package/dist/types/utils/initial.d.ts.map +1 -0
  232. package/dist/types/utils.d.ts +1 -0
  233. package/dist/types/utils.d.ts.map +1 -1
  234. package/package.json +7 -4
  235. package/server/package.json +5 -0
  236. package/dist/cjs/api/getUserInfo.js.map +0 -1
  237. package/dist/cjs/client/provider.js.map +0 -1
  238. package/dist/cjs/client/request.js.map +0 -1
  239. package/dist/esm/api/getUserInfo.js +0 -18
  240. package/dist/esm/api/getUserInfo.js.map +0 -1
  241. package/dist/esm/client/provider.js +0 -22
  242. package/dist/esm/client/provider.js.map +0 -1
  243. package/dist/esm/client/request.js +0 -19
  244. package/dist/esm/client/request.js.map +0 -1
  245. package/dist/types/api/getUserInfo.d.ts +0 -2
  246. package/dist/types/api/getUserInfo.d.ts.map +0 -1
  247. package/dist/types/client/provider.d.ts +0 -7
  248. package/dist/types/client/provider.d.ts.map +0 -1
  249. package/dist/types/client/request.d.ts +0 -3
  250. package/dist/types/client/request.d.ts.map +0 -1
@@ -2,10 +2,10 @@ export declare const API_URL = "https://api.cabinid.dev/";
2
2
  export declare const API_VERSION = "v1";
3
3
  export declare const PUBLISHABLE_KEY: string;
4
4
  export declare const SECRET_KEY: string;
5
- export declare const CUSTOM_SIGN_IN_URL: string;
6
- export declare const CUSTOM_SIGN_Up_URL: string;
7
- export declare const CUSTOM_AFTER_SIGN_IN_URL: string;
8
- export declare const CUSTOM_AFTER_SIGN_UP_URL: string;
5
+ export declare const SIGN_IN_URL: string;
6
+ export declare const SIGN_UP_URL: string;
7
+ export declare const AFTER_SIGN_IN_URL: string;
8
+ export declare const AFTER_SIGN_UP_URL: string;
9
9
  export declare const baseApiUrl: string;
10
10
  export declare const frontendApi: string | null;
11
11
  /**
@@ -13,12 +13,12 @@ export declare const frontendApi: string | null;
13
13
  */
14
14
  export declare const constants: {
15
15
  readonly Attributes: {
16
- readonly AuthToken: "__clerkAuthToken";
17
- readonly AuthSignature: "__clerkAuthSignature";
18
- readonly AuthStatus: "__clerkAuthStatus";
19
- readonly AuthReason: "__clerkAuthReason";
20
- readonly AuthMessage: "__clerkAuthMessage";
21
- readonly ClerkUrl: "__clerkUrl";
16
+ readonly AuthToken: "__cabinIdAuthToken";
17
+ readonly AuthSignature: "__cabinIdAuthSignature";
18
+ readonly AuthStatus: "__cabinIdAuthStatus";
19
+ readonly AuthReason: "__cabinIdAuthReason";
20
+ readonly AuthMessage: "__cabinIdAuthMessage";
21
+ readonly CabinIdUrl: "__cabinIdUrl";
22
22
  };
23
23
  readonly Cookies: {
24
24
  readonly Session: "__session";
@@ -54,6 +54,7 @@ export declare const constants: {
54
54
  readonly QueryParams: {
55
55
  readonly UserId: "user_id";
56
56
  readonly Token: "token";
57
+ readonly CabinIdRedirectUrl: "__cabin_id_redirect_url";
57
58
  };
58
59
  readonly NextHeaders: {
59
60
  readonly NextRewrite: "x-middleware-rewrite";
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,OAAO,6BAA6B,CAAC;AAElD,eAAO,MAAM,WAAW,OAAO,CAAC;AAChC,eAAO,MAAM,eAAe,QACyB,CAAC;AACtD,eAAO,MAAM,UAAU,QAAyC,CAAC;AACjE,eAAO,MAAM,kBAAkB,QACsB,CAAC;AACtD,eAAO,MAAM,kBAAkB,QACsB,CAAC;AACtD,eAAO,MAAM,wBAAwB,QACqB,CAAC;AAC3D,eAAO,MAAM,wBAAwB,QACqB,CAAC;AAE3D,eAAO,MAAM,UAAU,QAAkC,CAAC;AAC1D,eAAO,MAAM,WAAW,eAAuC,CAAC;AA6DhE;;GAEG;AACH,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAOZ,CAAC;AAEX,MAAM,MAAM,SAAS,GAAG,OAAO,SAAS,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,OAAO,6BAA6B,CAAC;AAElD,eAAO,MAAM,WAAW,OAAO,CAAC;AAChC,eAAO,MAAM,eAAe,QACyB,CAAC;AACtD,eAAO,MAAM,UAAU,QAAyC,CAAC;AACjE,eAAO,MAAM,WAAW,QAC6B,CAAC;AACtD,eAAO,MAAM,WAAW,QAC6B,CAAC;AACtD,eAAO,MAAM,iBAAiB,QAC4B,CAAC;AAC3D,eAAO,MAAM,iBAAiB,QAC4B,CAAC;AAE3D,eAAO,MAAM,UAAU,QAAkC,CAAC;AAC1D,eAAO,MAAM,WAAW,eAAuC,CAAC;AA8DhE;;GAEG;AACH,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAOZ,CAAC;AAEX,MAAM,MAAM,SAAS,GAAG,OAAO,SAAS,CAAC"}
@@ -0,0 +1,18 @@
1
+ import React from 'react';
2
+ export declare function assertContextExists(contextVal: unknown, msgOrCtx: string | React.Context<any>): asserts contextVal;
3
+ type Options = {
4
+ assertCtxFn?: (v: unknown, msg: string) => void;
5
+ };
6
+ type ContextOf<T> = React.Context<{
7
+ value: T;
8
+ } | undefined>;
9
+ type UseCtxFn<T> = () => T;
10
+ /**
11
+ * Creates and returns a Context and two hooks that return the context value.
12
+ * The Context type is derived from the type passed in by the user.
13
+ * The first hook returned guarantees that the context exists so the returned value is always CtxValue
14
+ * The second hook makes no guarantees, so the returned value can be CtxValue | undefined
15
+ */
16
+ export declare const createContextAndHook: <CtxVal>(displayName: string, options?: Options) => [ContextOf<CtxVal>, UseCtxFn<CtxVal>, UseCtxFn<CtxVal | Partial<CtxVal>>];
17
+ export {};
18
+ //# sourceMappingURL=createContextAndHook.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createContextAndHook.d.ts","sourceRoot":"","sources":["../../../src/hooks/createContextAndHook.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,UAAU,CAIlH;AAED,KAAK,OAAO,GAAG;IAAE,WAAW,CAAC,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,IAAI,CAAA;CAAE,CAAC;AACnE,KAAK,SAAS,CAAC,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC;IAAE,KAAK,EAAE,CAAC,CAAA;CAAE,GAAG,SAAS,CAAC,CAAC;AAC5D,KAAK,QAAQ,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC;AAE3B;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB,wBAClB,MAAM,YACT,OAAO,KAChB,CAAC,UAAU,MAAM,CAAC,EAAE,SAAS,MAAM,CAAC,EAAE,SAAS,MAAM,GAAG,QAAQ,MAAM,CAAC,CAAC,CAiB1E,CAAC"}
@@ -0,0 +1,3 @@
1
+ import React from 'react';
2
+ export declare const useSafeLayoutEffect: typeof React.useEffect;
3
+ //# sourceMappingURL=useSafeLayoutEffect.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useSafeLayoutEffect.d.ts","sourceRoot":"","sources":["../../../src/hooks/useSafeLayoutEffect.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,eAAO,MAAM,mBAAmB,wBAA0E,CAAC"}
@@ -1,2 +1,36 @@
1
- export declare const useUser: () => import("../types").User | null;
1
+ import { User } from '../types';
2
+ export type SignOutCallback = () => void | Promise<any>;
3
+ export type SignOutOptions = {
4
+ /**
5
+ * Specify a specific session to sign out. Useful for
6
+ * multi-session applications.
7
+ */
8
+ sessionId?: string;
9
+ /**
10
+ * Specify a redirect URL to navigate after sign out is complete.
11
+ */
12
+ redirectUrl?: string;
13
+ };
14
+ export interface SignOut {
15
+ (options?: SignOutOptions): Promise<void>;
16
+ (signOutCallback?: SignOutCallback, options?: SignOutOptions): Promise<void>;
17
+ }
18
+ type UseUserReturn = {
19
+ isLoaded: false;
20
+ isSignedIn: undefined;
21
+ user: undefined;
22
+ signOut: SignOut;
23
+ } | {
24
+ isLoaded: true;
25
+ isSignedIn: false;
26
+ user: null;
27
+ signOut: SignOut;
28
+ } | {
29
+ isLoaded: true;
30
+ isSignedIn: true;
31
+ user: User;
32
+ signOut: SignOut;
33
+ };
34
+ export declare const useUser: () => UseUserReturn;
35
+ export {};
2
36
  //# sourceMappingURL=useUser.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useUser.d.ts","sourceRoot":"","sources":["../../../src/hooks/useUser.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,OAAO,sCAMnB,CAAC"}
1
+ {"version":3,"file":"useUser.d.ts","sourceRoot":"","sources":["../../../src/hooks/useUser.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAIhC,MAAM,MAAM,eAAe,GAAG,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;AAExD,MAAM,MAAM,cAAc,GAAG;IAC3B;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,MAAM,WAAW,OAAO;IACtB,CAAC,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE1C,CAAC,eAAe,CAAC,EAAE,eAAe,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9E;AAED,KAAK,aAAa,GACd;IACE,QAAQ,EAAE,KAAK,CAAC;IAChB,UAAU,EAAE,SAAS,CAAC;IACtB,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;CAClB,GACD;IAAE,QAAQ,EAAE,IAAI,CAAC;IAAC,UAAU,EAAE,KAAK,CAAC;IAAC,IAAI,EAAE,IAAI,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,GACnE;IACE,QAAQ,EAAE,IAAI,CAAC;IACf,UAAU,EAAE,IAAI,CAAC;IACjB,IAAI,EAAE,IAAI,CAAC;IACX,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC;AAEN,eAAO,MAAM,OAAO,QAAO,aA2B1B,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import './styles/global.css';
2
2
  export { auth } from './server/auth';
3
3
  export { currentUser } from './server/getCurrentUser';
4
- export { CabinIDProvider } from './client/provider';
4
+ export { CabinIDProvider } from './provider/main.provider';
5
5
  export { useUser } from './hooks';
6
6
  export { authMiddleware } from './server/middleware';
7
7
  export { SignInButton } from './components';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,qBAAqB,CAAC;AAE7B,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,qBAAqB,CAAC;AAE7B,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC"}
@@ -0,0 +1,15 @@
1
+ import React from 'react';
2
+ import { User } from '../types';
3
+ export type LoadedCabinId = {
4
+ user: User | null;
5
+ userId: string | null;
6
+ };
7
+ declare const CabinIdInstanceContext: React.Context<{
8
+ value: LoadedCabinId;
9
+ } | undefined>, useCabinIDInstanceContext: () => LoadedCabinId;
10
+ declare const UserContext: React.Context<{
11
+ value: User | null | undefined;
12
+ } | undefined>, useUserContext: () => User | null | undefined;
13
+ declare function useAssertWrappedByCabinIdProvider(displayNameOrFn: string | (() => void)): void;
14
+ export { CabinIdInstanceContext, UserContext, useCabinIDInstanceContext, useUserContext, useAssertWrappedByCabinIdProvider, };
15
+ //# sourceMappingURL=context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/provider/context.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAEhC,MAAM,MAAM,aAAa,GAAG;IAC1B,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;IAClB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB,CAAC;AAEF,QAAA,MAAO,sBAAsB;;gBAAE,yBAAyB,qBACO,CAAC;AAChE,QAAA,MAAO,WAAW;;gBAAE,cAAc,+BAElB,CAAC;AAEjB,iBAAS,iCAAiC,CACxC,eAAe,EAAE,MAAM,GAAG,CAAC,MAAM,IAAI,CAAC,GACrC,IAAI,CAaN;AAED,OAAO,EACL,sBAAsB,EACtB,WAAW,EACX,yBAAyB,EACzB,cAAc,EACd,iCAAiC,GAClC,CAAC"}
@@ -0,0 +1,6 @@
1
+ import React from 'react';
2
+ import type { PropsWithChildren } from 'react';
3
+ import { LoadedCabinId } from './context';
4
+ declare const CabinIDCoreProvider: ({ children, ...rest }: PropsWithChildren<LoadedCabinId>) => React.JSX.Element;
5
+ export { CabinIDCoreProvider };
6
+ //# sourceMappingURL=core.provider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core.provider.d.ts","sourceRoot":"","sources":["../../../src/provider/core.provider.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAC/C,OAAO,EAA0B,aAAa,EAAe,MAAM,WAAW,CAAC;AAE/E,QAAA,MAAM,mBAAmB,0BAGtB,kBAAkB,aAAa,CAAC,sBAUlC,CAAC;AAEF,OAAO,EAAE,mBAAmB,EAAE,CAAC"}
@@ -0,0 +1,5 @@
1
+ import React from 'react';
2
+ import type { PropsWithChildren } from 'react';
3
+ declare const CabinIDProvider: ({ children }: PropsWithChildren<any>) => Promise<React.JSX.Element>;
4
+ export { CabinIDProvider };
5
+ //# sourceMappingURL=main.provider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"main.provider.d.ts","sourceRoot":"","sources":["../../../src/provider/main.provider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAI/C,QAAA,MAAM,eAAe,iBAAwB,kBAAkB,GAAG,CAAC,+BAGlE,CAAC;AAEF,OAAO,EAAE,eAAe,EAAE,CAAC"}
@@ -1,4 +1,11 @@
1
- export declare const auth: () => Promise<{
2
- userId: string | null;
3
- }>;
1
+ import { redirect } from 'next/navigation';
2
+ import { AuthObject } from '../tokens/authObjects';
3
+ import { RedirectFun } from './createRedirect';
4
+ import { AuthProtect } from './protect';
5
+ type Auth = AuthObject & {
6
+ protect: AuthProtect;
7
+ redirectToSignIn: RedirectFun<ReturnType<typeof redirect>>;
8
+ };
9
+ export declare const auth: () => Auth;
10
+ export {};
4
11
  //# sourceMappingURL=auth.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../src/server/auth.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,IAAI;;EAKhB,CAAC"}
1
+ {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../src/server/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAkB,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAiB,MAAM,WAAW,CAAC;AAMvD,KAAK,IAAI,GAAG,UAAU,GAAG;IACvB,OAAO,EAAE,WAAW,CAAC;IACrB,gBAAgB,EAAE,WAAW,CAAC,UAAU,CAAC,OAAO,QAAQ,CAAC,CAAC,CAAC;CAC5D,CAAC;AAEF,eAAO,MAAM,IAAI,QAAO,IAgCvB,CAAC"}
@@ -0,0 +1,3 @@
1
+ declare const cabinIdClient: import("../utils/createCabinIdClient").CabinIdClient;
2
+ export { cabinIdClient };
3
+ //# sourceMappingURL=client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/server/client.ts"],"names":[],"mappings":"AAGA,QAAA,MAAM,aAAa,sDAIjB,CAAC;AAEH,OAAO,EAAE,aAAa,EAAE,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { AuthObject } from '../tokens/authObjects';
2
+ import { RequestLike } from './type';
3
+ export declare const createGetAuth: () => (req: RequestLike) => AuthObject;
4
+ export declare const getAuth: (req: RequestLike) => AuthObject;
5
+ //# sourceMappingURL=createGetAuth.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createGetAuth.d.ts","sourceRoot":"","sources":["../../../src/server/createGetAuth.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EAGX,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAErC,eAAO,MAAM,aAAa,cAElB,WAAW,KAAG,UAWnB,CAAC;AAEJ,eAAO,MAAM,OAAO,QAbZ,WAAW,KAAG,UAagB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"createRedirect.d.ts","sourceRoot":"","sources":["../../../src/server/createRedirect.ts"],"names":[],"mappings":"AAEA,KAAK,eAAe,CAAC,cAAc,IAAI,CAAC,GAAG,EAAE,MAAM,KAAK,cAAc,CAAC;AACvE,KAAK,gBAAgB,GAAG;IAAE,aAAa,CAAC,EAAE,MAAM,GAAG,GAAG,GAAG,IAAI,CAAA;CAAE,CAAC;AAChE,MAAM,MAAM,WAAW,CAAC,UAAU,IAAI,CAAC,MAAM,CAAC,EAAE,gBAAgB,KAAK,UAAU,CAAC;AAiDhF;;GAEG;AACH,KAAK,cAAc,GAAG,CAAC,UAAU,EAAE,MAAM,EAAE;IACzC,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,eAAe,CAAC,UAAU,CAAC,CAAC;IAC7C,OAAO,EAAE,GAAG,GAAG,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,GAAG,GAAG,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,GAAG,GAAG,MAAM,CAAC;CAC1B,KAAK;IACJ,gBAAgB,EAAE,WAAW,CAAC,UAAU,CAAC,CAAC;IAC1C,gBAAgB,EAAE,WAAW,CAAC,UAAU,CAAC,CAAC;CAC3C,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,cA+B5B,CAAC"}
1
+ {"version":3,"file":"createRedirect.d.ts","sourceRoot":"","sources":["../../../src/server/createRedirect.ts"],"names":[],"mappings":"AAEA,KAAK,eAAe,CAAC,cAAc,IAAI,CAAC,GAAG,EAAE,MAAM,KAAK,cAAc,CAAC;AACvE,KAAK,gBAAgB,GAAG;IAAE,aAAa,CAAC,EAAE,MAAM,GAAG,GAAG,GAAG,IAAI,CAAA;CAAE,CAAC;AAChE,MAAM,MAAM,WAAW,CAAC,UAAU,IAAI,CAAC,MAAM,CAAC,EAAE,gBAAgB,KAAK,UAAU,CAAC;AAuChF;;GAEG;AACH,KAAK,cAAc,GAAG,CAAC,UAAU,EAAE,MAAM,EAAE;IACzC,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,eAAe,CAAC,UAAU,CAAC,CAAC;IAC7C,OAAO,EAAE,GAAG,GAAG,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,GAAG,GAAG,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,GAAG,GAAG,MAAM,CAAC;CAC1B,KAAK;IACJ,gBAAgB,EAAE,WAAW,CAAC,UAAU,CAAC,CAAC;IAC1C,gBAAgB,EAAE,WAAW,CAAC,UAAU,CAAC,CAAC;CAC3C,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,cA0C5B,CAAC"}
@@ -0,0 +1,10 @@
1
+ export declare const missingDomainAndProxy = "\nMissing domain and proxyUrl. A satellite application needs to specify a domain or a proxyUrl.\n\n1) With middleware\n e.g. export default clerkMiddleware({domain:'YOUR_DOMAIN',isSatellite:true}); // or the deprecated authMiddleware()\n2) With environment variables e.g.\n NEXT_PUBLIC_CLERK_DOMAIN='YOUR_DOMAIN'\n NEXT_PUBLIC_CLERK_IS_SATELLITE='true'\n ";
2
+ export declare const missingSignInUrlInDev = "\nInvalid signInUrl. A satellite application requires a signInUrl for development instances.\nCheck if signInUrl is missing from your configuration or if it is not an absolute URL\n\n1) With middleware\n e.g. export default clerkMiddleware({signInUrl:'SOME_URL', isSatellite:true}); // or the deprecated authMiddleware()\n2) With environment variables e.g.\n NEXT_PUBLIC_CLERK_SIGN_IN_URL='SOME_URL'\n NEXT_PUBLIC_CLERK_IS_SATELLITE='true'";
3
+ export declare const receivedRequestForIgnoredRoute: (url: string, matcher: string) => string;
4
+ export declare const getAuthAuthHeaderMissing: () => string;
5
+ export declare const authAuthHeaderMissing: (helperName?: string) => string;
6
+ export declare const clockSkewDetected: (verifyMessage: string) => string;
7
+ export declare const infiniteRedirectLoopDetected: () => string;
8
+ export declare const informAboutProtectedRouteInfo: (path: string, hasPublicRoutes: boolean, hasIgnoredRoutes: boolean, isApiRoute: boolean, defaultIgnoredRoutes: string[]) => string;
9
+ export declare const authSignatureInvalid = "Clerk: Unable to verify request, this usually means the Clerk middleware did not run. Ensure Clerk's middleware is properly integrated and matches the current route. For more information, see: https://clerk.com/docs/nextjs/middleware. (code=auth_signature_invalid)";
10
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../src/server/errors.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,qBAAqB,gXAQ9B,CAAC;AAEL,eAAO,MAAM,qBAAqB,kcAQO,CAAC;AAE1C,eAAO,MAAM,8BAA8B,QAAS,MAAM,WAAW,MAAM,WAQ1E,CAAC;AAEF,eAAO,MAAM,wBAAwB,cAAyC,CAAC;AAE/E,eAAO,MAAM,qBAAqB,iCAKjC,CAAC;AAEF,eAAO,MAAM,iBAAiB,kBAAmB,MAAM,WAOtC,CAAC;AAElB,eAAO,MAAM,4BAA4B,cAYxC,CAAC;AAEF,eAAO,MAAM,6BAA6B,SAClC,MAAM,mBACK,OAAO,oBACN,OAAO,cACb,OAAO,wBACG,MAAM,EAAE,WA6B/B,CAAC;AAEF,eAAO,MAAM,oBAAoB,6QAA6Q,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"getCurrentUser.d.ts","sourceRoot":"","sources":["../../../src/server/getCurrentUser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAKhC,wBAAsB,WAAW,IAAI,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,CAaxD"}
1
+ {"version":3,"file":"getCurrentUser.d.ts","sourceRoot":"","sources":["../../../src/server/getCurrentUser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAIhC,wBAAsB,WAAW,IAAI,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,CAIxD"}
@@ -0,0 +1,3 @@
1
+ export { auth } from './auth';
2
+ export { createRouteMatcher } from './routeMatcher';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/server/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC"}
@@ -1,88 +1,33 @@
1
- import { NextFetchEvent, NextMiddleware, NextResponse } from 'next/server';
2
- import { NextRequest } from 'next/server';
3
- import { createRouteMatcher, RouteMatcherParam } from './routeMatcher';
4
- import { NextMiddlewareReturn } from './type';
5
- type BeforeAuthHandler = (req: NextRequest, evt: NextFetchEvent) => NextMiddlewareReturn | false | Promise<false>;
6
- type AfterAuthHandler = (auth: {
7
- isPublicRoute: boolean;
8
- isApiRoute: boolean;
9
- }, req: NextRequest, evt: NextFetchEvent) => NextMiddlewareReturn;
10
- export type AuthenticateRequestOptions = {
11
- publishableKey?: string;
12
- secretKey?: string;
13
- domain?: string;
14
- isSatellite?: boolean;
15
- proxyUrl?: string;
16
- signInUrl?: string;
17
- signUpUrl?: string;
18
- afterSignInUrl?: string;
19
- afterSignUpUrl?: string;
1
+ import { NextMiddleware } from 'next/server';
2
+ import { NextMiddlewareEvtParam, NextMiddlewareRequestParam, NextMiddlewareReturn } from './type';
3
+ import { AuthProtect } from './protect';
4
+ import { RedirectFun } from './createRedirect';
5
+ import { AuthObject } from '../tokens/authObjects';
6
+ import { AuthenticateRequestOptions } from '../api/factory';
7
+ export type CabinIdMiddlewareAuthObject = AuthObject & {
8
+ protect: AuthProtect;
9
+ redirectToSignIn: RedirectFun<Response>;
20
10
  };
21
- type AuthMiddlewareParams = AuthenticateRequestOptions & {
22
- /**
23
- * A function that is called before the authentication middleware is executed.
24
- * If a redirect response is returned, the middleware will respect it and redirect the user.
25
- * If false is returned, the auth middleware will not execute and the request will be handled as if the auth middleware was not present.
26
- */
27
- beforeAuth?: BeforeAuthHandler;
28
- /**
29
- * A function that is called after the authentication middleware is executed.
30
- * This function has access to the auth object and can be used to execute logic based on the auth state.
31
- */
32
- afterAuth?: AfterAuthHandler;
11
+ export type CabinIdMiddlewareAuth = () => CabinIdMiddlewareAuthObject;
12
+ export interface AuthMiddleware {
33
13
  /**
34
- * A list of routes that should be accessible without authentication.
35
- * You can use glob patterns to match multiple routes or a function to match against the request object.
36
- * Path patterns and regular expressions are supported, for example: `['/foo', '/bar(.*)'] or `[/^\/foo\/.*$/]`
37
- * The sign in and sign up URLs are included by default, unless a function is provided.
38
- * For more information, see: https://clerk.com/docs
14
+ * @example
15
+ * export default clerkMiddleware((auth, request, event) => { ... }, options);
39
16
  */
40
- publicRoutes?: RouteMatcherParam;
17
+ (handler: CabinIdMiddlewareHandler, options?: CabinIdMiddlewareOptions): NextMiddleware;
41
18
  /**
42
- * A list of routes that should be ignored by the middleware.
43
- * This list typically includes routes for static files or Next.js internals.
44
- * For improved performance, these routes should be skipped using the default config.matcher instead.
19
+ * @example
20
+ * export default clerkMiddleware(options);
45
21
  */
46
- ignoredRoutes?: IgnoredRoutesParam;
22
+ (options?: CabinIdMiddlewareOptions): NextMiddleware;
47
23
  /**
48
- * A list of routes that should be treated as API endpoints.
49
- * When user is signed out, the middleware will return a 401 response for these routes, instead of redirecting the user.
50
- *
51
- * If omitted, the following heuristics will be used to determine an API endpoint:
52
- * - The route path is ['/api/(.*)', '/trpc/(.*)'],
53
- * - or the request has `Content-Type` set to `application/json`,
54
- * - or the request method is not one of: `GET`, `OPTIONS` ,` HEAD`
55
- *
56
- * @default undefined
24
+ * @example
25
+ * export default clerkMiddleware;
57
26
  */
58
- apiRoutes?: ApiRoutesParam;
59
- };
60
- export interface AuthMiddleware {
61
- (params?: AuthMiddlewareParams): NextMiddleware;
27
+ (request: NextMiddlewareRequestParam, event: NextMiddlewareEvtParam): NextMiddlewareReturn;
62
28
  }
63
- /**
64
- * The default ideal matcher that excludes the _next directory (internals) and all static files,
65
- * but it will match the root route (/) and any routes that start with /api or /trpc.
66
- */
67
- export declare const DEFAULT_CONFIG_MATCHER: string[];
68
- /**
69
- * Any routes matching this path will be ignored by the middleware.
70
- * This is the inverted version of DEFAULT_CONFIG_MATCHER.
71
- */
72
- export declare const DEFAULT_IGNORED_ROUTES: string[];
73
- /**
74
- * Any routes matching this path will be treated as API endpoints by the middleware.
75
- */
76
- export declare const DEFAULT_API_ROUTES: string[];
77
- type IgnoredRoutesParam = Array<RegExp | string> | RegExp | string | ((req: NextRequest) => boolean);
78
- type ApiRoutesParam = IgnoredRoutesParam;
29
+ type CabinIdMiddlewareHandler = (auth: CabinIdMiddlewareAuth, request: NextMiddlewareRequestParam, event: NextMiddlewareEvtParam) => NextMiddlewareReturn;
30
+ export type CabinIdMiddlewareOptions = AuthenticateRequestOptions;
79
31
  declare const authMiddleware: AuthMiddleware;
80
- declare const createApiRoutes: (apiRoutes: RouteMatcherParam | undefined) => ((req: NextRequest) => boolean);
81
- export declare const createDefaultAfterAuth: (isPublicRoute: ReturnType<typeof createRouteMatcher>, isApiRoute: ReturnType<typeof createApiRoutes>, options: {
82
- signInUrl: string;
83
- signUpUrl: string;
84
- publishableKey: string;
85
- secretKey: string;
86
- }) => (auth: any, req: NextRequest) => NextResponse<unknown>;
87
32
  export { authMiddleware };
88
33
  //# sourceMappingURL=middleware.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"middleware.d.ts","sourceRoot":"","sources":["../../../src/server/middleware.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3E,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAS1C,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAOvE,OAAO,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AAK9C,KAAK,iBAAiB,GAAG,CACvB,GAAG,EAAE,WAAW,EAChB,GAAG,EAAE,cAAc,KAChB,oBAAoB,GAAG,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;AAEnD,KAAK,gBAAgB,GAAG,CACtB,IAAI,EAAE;IAAE,aAAa,EAAE,OAAO,CAAC;IAAC,UAAU,EAAE,OAAO,CAAA;CAAE,EACrD,GAAG,EAAE,WAAW,EAChB,GAAG,EAAE,cAAc,KAChB,oBAAoB,CAAC;AAE1B,MAAM,MAAM,0BAA0B,GAAG;IACvC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,KAAK,oBAAoB,GAAG,0BAA0B,GAAG;IACvD;;;;OAIG;IACH,UAAU,CAAC,EAAE,iBAAiB,CAAC;IAC/B;;;OAGG;IACH,SAAS,CAAC,EAAE,gBAAgB,CAAC;IAC7B;;;;;;OAMG;IACH,YAAY,CAAC,EAAE,iBAAiB,CAAC;IACjC;;;;OAIG;IACH,aAAa,CAAC,EAAE,kBAAkB,CAAC;IACnC;;;;;;;;;;OAUG;IACH,SAAS,CAAC,EAAE,cAAc,CAAC;CAC5B,CAAC;AAEF,MAAM,WAAW,cAAc;IAC7B,CAAC,MAAM,CAAC,EAAE,oBAAoB,GAAG,cAAc,CAAC;CACjD;AAED;;;GAGG;AACH,eAAO,MAAM,sBAAsB,UAIlC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,sBAAsB,UAA4C,CAAC;AAChF;;GAEG;AACH,eAAO,MAAM,kBAAkB,UAA8B,CAAC;AAE9D,KAAK,kBAAkB,GACnB,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,GACtB,MAAM,GACN,MAAM,GACN,CAAC,CAAC,GAAG,EAAE,WAAW,KAAK,OAAO,CAAC,CAAC;AAEpC,KAAK,cAAc,GAAG,kBAAkB,CAAC;AAEzC,QAAA,MAAM,cAAc,EAAE,cAwGrB,CAAC;AAgDF,QAAA,MAAM,eAAe,cACR,iBAAiB,GAAG,SAAS,KACvC,CAAC,CAAC,GAAG,EAAE,WAAW,KAAK,OAAO,CAShC,CAAC;AAEF,eAAO,MAAM,sBAAsB,kBAClB,WAAW,yBAAyB,CAAC,cACxC,WAAW,sBAAsB,CAAC,WACrC;IACP,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;CACnB,YAEa,GAAG,OAAO,WAAW,0BAiBpC,CAAC;AAyBF,OAAO,EAAE,cAAc,EAAE,CAAC"}
1
+ {"version":3,"file":"middleware.d.ts","sourceRoot":"","sources":["../../../src/server/middleware.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAgB,MAAM,aAAa,CAAC;AAS3D,OAAO,EACL,sBAAsB,EACtB,0BAA0B,EAC1B,oBAAoB,EACrB,MAAM,QAAQ,CAAC;AAGhB,OAAO,EAAE,WAAW,EAAiB,MAAM,WAAW,CAAC;AACvD,OAAO,EAAkB,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAG/D,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAEnD,OAAO,EAAE,0BAA0B,EAAE,MAAM,gBAAgB,CAAC;AAQ5D,MAAM,MAAM,2BAA2B,GAAG,UAAU,GAAG;IACrD,OAAO,EAAE,WAAW,CAAC;IACrB,gBAAgB,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC;CACzC,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG,MAAM,2BAA2B,CAAC;AAEtE,MAAM,WAAW,cAAc;IAC7B;;;OAGG;IACH,CACE,OAAO,EAAE,wBAAwB,EACjC,OAAO,CAAC,EAAE,wBAAwB,GACjC,cAAc,CAAC;IAClB;;;OAGG;IACH,CAAC,OAAO,CAAC,EAAE,wBAAwB,GAAG,cAAc,CAAC;IACrD;;;OAGG;IACH,CACE,OAAO,EAAE,0BAA0B,EACnC,KAAK,EAAE,sBAAsB,GAC5B,oBAAoB,CAAC;CACzB;AAED,KAAK,wBAAwB,GAAG,CAC9B,IAAI,EAAE,qBAAqB,EAC3B,OAAO,EAAE,0BAA0B,EACnC,KAAK,EAAE,sBAAsB,KAC1B,oBAAoB,CAAC;AAE1B,MAAM,MAAM,wBAAwB,GAAG,0BAA0B,CAAC;AAuBlE,QAAA,MAAM,cAAc,EAAE,cA2GrB,CAAC;AAEF,OAAO,EAAE,cAAc,EAAE,CAAC"}
@@ -0,0 +1,34 @@
1
+ import { AuthObject, SignedInAuthObject } from '../tokens/authObjects';
2
+ import { RedirectFun } from './createRedirect';
3
+ type AuthProtectOptions = {
4
+ unauthorizedUrl?: string;
5
+ unauthenticatedUrl?: string;
6
+ };
7
+ /**
8
+ * Throws a Nextjs notFound error if user is not authenticated or authorized.
9
+ */
10
+ export interface AuthProtect {
11
+ (options?: AuthProtectOptions): SignedInAuthObject;
12
+ }
13
+ export declare const createProtect: (opts: {
14
+ request: Request;
15
+ authObject: AuthObject;
16
+ /**
17
+ * middleware and pages throw a notFound error if signed out
18
+ * but the middleware needs to throw an error it can catch
19
+ * use this callback to customise the behavior
20
+ */
21
+ notFound: () => never;
22
+ /**
23
+ * see {@link notFound} above
24
+ */
25
+ redirect: (url: string) => void;
26
+ /**
27
+ * protect() in middleware redirects to signInUrl if signed out
28
+ * protect() in pages throws a notFound error if signed out
29
+ * use this callback to customise the behavior
30
+ */
31
+ redirectToSignIn: RedirectFun<unknown>;
32
+ }) => AuthProtect;
33
+ export {};
34
+ //# sourceMappingURL=protect.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"protect.d.ts","sourceRoot":"","sources":["../../../src/server/protect.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAEvE,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,KAAK,kBAAkB,GAAG;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,WAAW;IAW1B,CAAC,OAAO,CAAC,EAAE,kBAAkB,GAAG,kBAAkB,CAAC;CACpD;AAED,eAAO,MAAM,aAAa,SAAU;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,UAAU,CAAC;IACvB;;;;OAIG;IACH,QAAQ,EAAE,MAAM,KAAK,CAAC;IACtB;;OAEG;IACH,QAAQ,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC;;;;OAIG;IACH,gBAAgB,EAAE,YAAY,OAAO,CAAC,CAAC;CACxC,KAAG,WA+DH,CAAC"}
@@ -1,8 +1,8 @@
1
- import type Link from "next/link";
2
- import type { NextRequest } from "next/server";
3
- import type { Autocomplete } from "../types";
1
+ import type Link from 'next/link';
2
+ import type { NextRequest } from 'next/server';
3
+ import type { Autocomplete } from '../types';
4
4
  type WithPathPatternWildcard<T> = `${T & string}(.*)`;
5
- type NextTypedRoute<T = Parameters<typeof Link>["0"]["href"]> = T extends string ? T : never;
5
+ type NextTypedRoute<T = Parameters<typeof Link>['0']['href']> = T extends string ? T : never;
6
6
  type RouteMatcherWithNextTypedRoutes = Autocomplete<WithPathPatternWildcard<NextTypedRoute> | NextTypedRoute>;
7
7
  export type RouteMatcherParam = Array<RegExp | RouteMatcherWithNextTypedRoutes> | RegExp | RouteMatcherWithNextTypedRoutes | ((req: NextRequest) => boolean);
8
8
  export declare const createRouteMatcher: (routes: RouteMatcherParam) => (req: NextRequest) => boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"routeMatcher.d.ts","sourceRoot":"","sources":["../../../src/server/routeMatcher.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAG7C,KAAK,uBAAuB,CAAC,CAAC,IAAI,GAAG,CAAC,GAAG,MAAM,MAAM,CAAC;AACtD,KAAK,cAAc,CAAC,CAAC,GAAG,UAAU,CAAC,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,MAAM,GAC5E,CAAC,GACD,KAAK,CAAC;AAEV,KAAK,+BAA+B,GAAG,YAAY,CACjD,uBAAuB,CAAC,cAAc,CAAC,GAAG,cAAc,CACzD,CAAC;AAEF,MAAM,MAAM,iBAAiB,GACzB,KAAK,CAAC,MAAM,GAAG,+BAA+B,CAAC,GAC/C,MAAM,GACN,+BAA+B,GAC/B,CAAC,CAAC,GAAG,EAAE,WAAW,KAAK,OAAO,CAAC,CAAC;AAEpC,eAAO,MAAM,kBAAkB,WAAY,iBAAiB,WAE3C,WAAW,YAO3B,CAAC"}
1
+ {"version":3,"file":"routeMatcher.d.ts","sourceRoot":"","sources":["../../../src/server/routeMatcher.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAG7C,KAAK,uBAAuB,CAAC,CAAC,IAAI,GAAG,CAAC,GAAG,MAAM,MAAM,CAAC;AACtD,KAAK,cAAc,CAAC,CAAC,GAAG,UAAU,CAAC,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,MAAM,GAC5E,CAAC,GACD,KAAK,CAAC;AAEV,KAAK,+BAA+B,GAAG,YAAY,CACjD,uBAAuB,CAAC,cAAc,CAAC,GAAG,cAAc,CACzD,CAAC;AAEF,MAAM,MAAM,iBAAiB,GACzB,KAAK,CAAC,MAAM,GAAG,+BAA+B,CAAC,GAC/C,MAAM,GACN,+BAA+B,GAC/B,CAAC,CAAC,GAAG,EAAE,WAAW,KAAK,OAAO,CAAC,CAAC;AAEpC,eAAO,MAAM,kBAAkB,WAAY,iBAAiB,WAE3C,WAAW,YAM3B,CAAC"}
@@ -1,2 +1,3 @@
1
- export declare const serverRedirectWithAuth: (res: Response) => Response;
1
+ import { CabinIdRequest } from 'src/tokens/cabinIdRequest';
2
+ export declare const serverRedirectWithAuth: (cabinIdRequest: CabinIdRequest, res: Response) => Response;
2
3
  //# sourceMappingURL=serverRedirectWithAuth.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"serverRedirectWithAuth.d.ts","sourceRoot":"","sources":["../../../src/server/serverRedirectWithAuth.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,sBAAsB,QAAS,QAAQ,aAUnD,CAAC"}
1
+ {"version":3,"file":"serverRedirectWithAuth.d.ts","sourceRoot":"","sources":["../../../src/server/serverRedirectWithAuth.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAE3D,eAAO,MAAM,sBAAsB,mBACjB,cAAc,OACzB,QAAQ,aAed,CAAC"}
@@ -1,5 +1,14 @@
1
- import { NextMiddleware } from "next/server";
1
+ /// <reference types="node" />
2
+ import type { IncomingMessage } from 'http';
3
+ import type { NextApiRequest } from 'next';
4
+ import type { NextApiRequestCookies } from 'next/dist/server/api-utils';
5
+ import type { NextMiddleware, NextRequest } from 'next/server';
6
+ type GsspRequest = IncomingMessage & {
7
+ cookies: NextApiRequestCookies;
8
+ };
9
+ export type RequestLike = NextRequest | NextApiRequest | GsspRequest;
2
10
  export type NextMiddlewareRequestParam = Parameters<NextMiddleware>['0'];
3
11
  export type NextMiddlewareEvtParam = Parameters<NextMiddleware>['1'];
4
12
  export type NextMiddlewareReturn = ReturnType<NextMiddleware>;
13
+ export {};
5
14
  //# sourceMappingURL=type.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../../../src/server/type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7C,MAAM,MAAM,0BAA0B,GAAG,UAAU,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,CAAC;AACzE,MAAM,MAAM,sBAAsB,GAAG,UAAU,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,CAAC;AACrE,MAAM,MAAM,oBAAoB,GAAG,UAAU,CAAC,cAAc,CAAC,CAAC"}
1
+ {"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../../../src/server/type.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,MAAM,CAAC;AAC5C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,MAAM,CAAC;AAC3C,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACxE,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAG/D,KAAK,WAAW,GAAG,eAAe,GAAG;IAAE,OAAO,EAAE,qBAAqB,CAAA;CAAE,CAAC;AAExE,MAAM,MAAM,WAAW,GAAG,WAAW,GAAG,cAAc,GAAG,WAAW,CAAC;AAErE,MAAM,MAAM,0BAA0B,GAAG,UAAU,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,CAAC;AACzE,MAAM,MAAM,sBAAsB,GAAG,UAAU,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,CAAC;AACrE,MAAM,MAAM,oBAAoB,GAAG,UAAU,CAAC,cAAc,CAAC,CAAC"}
@@ -1,10 +1,17 @@
1
- import { NextResponse } from 'next/server';
2
- import type { NextRequest } from 'next/server';
1
+ import { NextResponse, NextRequest } from 'next/server';
2
+ import { constants } from '../constants';
3
+ import { CabinIdRequest } from '../tokens/cabinIdRequest';
4
+ import { RequestLike } from './type';
3
5
  export declare function assertKey(key: string, onError: () => never): string;
4
6
  export declare const apiEndpointUnauthorizedNextResponse: () => NextResponse<null>;
5
7
  export declare const redirectAdapter: (url: string | URL) => NextResponse<unknown>;
6
8
  export declare const setRequestHeadersOnNextResponse: (res: NextResponse | Response, req: Request, newHeaders: Record<string, string>) => void;
7
9
  type RequestState = any;
8
- export declare function decorateRequest(req: NextRequest, res: Response, requestState: RequestState, secretKey: string): Response;
10
+ export declare function decorateRequest(req: CabinIdRequest, res: Response, requestState: RequestState, secretKey: string): Response;
11
+ export declare const buildRequestLike: () => NextRequest;
12
+ export declare function getCustomAttributeFromRequest(req: RequestLike, key: string): string | null | undefined;
13
+ export declare function getAuthKeyFromRequest(req: RequestLike, key: keyof typeof constants.Attributes): string | null | undefined;
14
+ export declare function getHeader(req: RequestLike, name: string): string | null | undefined;
15
+ export declare function getCookie(req: RequestLike, name: string): string | undefined;
9
16
  export {};
10
17
  //# sourceMappingURL=utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/server/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAG/C,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,GAAG,MAAM,CAMnE;AAED,eAAO,MAAM,mCAAmC,0BAE/C,CAAC;AAEF,eAAO,MAAM,eAAe,QAAS,MAAM,GAAG,GAAG,0BAIhD,CAAC;AAKF,eAAO,MAAM,+BAA+B,QACrC,YAAY,GAAG,QAAQ,OACvB,OAAO,cACA,OAAO,MAAM,EAAE,MAAM,CAAC,SAoBnC,CAAC;AASF,KAAK,YAAY,GAAG,GAAG,CAAC;AAGxB,wBAAgB,eAAe,CAC7B,GAAG,EAAE,WAAW,EAChB,GAAG,EAAE,QAAQ,EACb,YAAY,EAAE,YAAY,EAC1B,SAAS,EAAE,MAAM,GAChB,QAAQ,CAiDV"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/server/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAErC,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,GAAG,MAAM,CAMnE;AAED,eAAO,MAAM,mCAAmC,0BAE/C,CAAC;AAEF,eAAO,MAAM,eAAe,QAAS,MAAM,GAAG,GAAG,0BAIhD,CAAC;AAKF,eAAO,MAAM,+BAA+B,QACrC,YAAY,GAAG,QAAQ,OACvB,OAAO,cACA,OAAO,MAAM,EAAE,MAAM,CAAC,SAoBnC,CAAC;AASF,KAAK,YAAY,GAAG,GAAG,CAAC;AAGxB,wBAAgB,eAAe,CAC7B,GAAG,EAAE,cAAc,EACnB,GAAG,EAAE,QAAQ,EACb,YAAY,EAAE,YAAY,EAC1B,SAAS,EAAE,MAAM,GAChB,QAAQ,CAkDV;AAED,eAAO,MAAM,gBAAgB,mBA0B5B,CAAC;AAEF,wBAAgB,6BAA6B,CAC3C,GAAG,EAAE,WAAW,EAChB,GAAG,EAAE,MAAM,GACV,MAAM,GAAG,IAAI,GAAG,SAAS,CAG3B;AAED,wBAAgB,qBAAqB,CACnC,GAAG,EAAE,WAAW,EAChB,GAAG,EAAE,MAAM,OAAO,SAAS,CAAC,UAAU,GACrC,MAAM,GAAG,IAAI,GAAG,SAAS,CAK3B;AAED,wBAAgB,SAAS,CACvB,GAAG,EAAE,WAAW,EAChB,IAAI,EAAE,MAAM,GACX,MAAM,GAAG,IAAI,GAAG,SAAS,CAa3B;AAeD,wBAAgB,SAAS,CAAC,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAkB5E"}
@@ -0,0 +1,37 @@
1
+ import { CreateBackendApiOptions } from '../api/factory';
2
+ /**
3
+ * @internal
4
+ */
5
+ export type SignedInAuthObjectOptions = CreateBackendApiOptions & {
6
+ token: string;
7
+ };
8
+ /**
9
+ * @internal
10
+ */
11
+ export type SignedInAuthObject = {
12
+ userId: string;
13
+ sessionToken: string;
14
+ };
15
+ /**
16
+ * @internal
17
+ */
18
+ export type SignedOutAuthObject = {
19
+ userId: null;
20
+ sessionToken: null;
21
+ };
22
+ /**
23
+ * @internal
24
+ */
25
+ export type AuthObject = SignedInAuthObject | SignedOutAuthObject;
26
+ /**
27
+ * @internal
28
+ */
29
+ export declare function signedInAuthObject({ userId, sessionToken, }: {
30
+ userId: string;
31
+ sessionToken: string;
32
+ }): SignedInAuthObject;
33
+ /**
34
+ * @internal
35
+ */
36
+ export declare function signedOutAuthObject(): SignedOutAuthObject;
37
+ //# sourceMappingURL=authObjects.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"authObjects.d.ts","sourceRoot":"","sources":["../../../src/tokens/authObjects.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AAEzD;;GAEG;AACH,MAAM,MAAM,yBAAyB,GAAG,uBAAuB,GAAG;IAChE,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAChC,MAAM,EAAE,IAAI,CAAC;IACb,YAAY,EAAE,IAAI,CAAC;CACpB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,kBAAkB,GAAG,mBAAmB,CAAC;AAElE;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,EACjC,MAAM,EACN,YAAY,GACb,EAAE;IACD,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;CACtB,GAAG,kBAAkB,CAKrB;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,mBAAmB,CAKzD"}
@@ -0,0 +1,51 @@
1
+ import type { SignedInAuthObject, SignedOutAuthObject } from './authObjects';
2
+ import { AuthenticateContext } from './authenticateContext';
3
+ export declare const AuthStatus: {
4
+ readonly SignedIn: "signed-in";
5
+ readonly SignedOut: "signed-out";
6
+ readonly Handshake: "handshake";
7
+ };
8
+ export type AuthStatus = (typeof AuthStatus)[keyof typeof AuthStatus];
9
+ export type SignedInState = {
10
+ status: typeof AuthStatus.SignedIn;
11
+ proxyUrl?: string;
12
+ publishableKey: string;
13
+ signInUrl: string;
14
+ signUpUrl: string;
15
+ afterSignInUrl: string;
16
+ afterSignUpUrl: string;
17
+ isSignedIn: true;
18
+ toAuth: () => SignedInAuthObject;
19
+ headers: Headers;
20
+ token: string;
21
+ };
22
+ export type SignedOutState = {
23
+ status: typeof AuthStatus.SignedOut;
24
+ proxyUrl?: string;
25
+ publishableKey: string;
26
+ signInUrl: string;
27
+ signUpUrl: string;
28
+ afterSignInUrl: string;
29
+ afterSignUpUrl: string;
30
+ isSignedIn: false;
31
+ toAuth: () => SignedOutAuthObject;
32
+ headers: Headers;
33
+ token: null;
34
+ };
35
+ export declare const AuthErrorReason: {
36
+ readonly ClientUATWithoutSessionToken: "client-uat-but-no-session-token";
37
+ readonly DevBrowserMissing: "dev-browser-missing";
38
+ readonly DevBrowserSync: "dev-browser-sync";
39
+ readonly PrimaryRespondsToSyncing: "primary-responds-to-syncing";
40
+ readonly SatelliteCookieNeedsSyncing: "satellite-needs-syncing";
41
+ readonly SessionTokenAndUATMissing: "session-token-and-uat-missing";
42
+ readonly SessionTokenMissing: "session-token-missing";
43
+ readonly SessionTokenOutdated: "session-token-outdated";
44
+ readonly SessionTokenWithoutClientUAT: "session-token-but-no-client-uat";
45
+ readonly UnexpectedError: "unexpected-error";
46
+ };
47
+ export type AuthErrorReason = (typeof AuthErrorReason)[keyof typeof AuthErrorReason];
48
+ export type RequestState = SignedInState | SignedOutState;
49
+ export declare function signedIn(authenticateContext: AuthenticateContext, headers: Headers | undefined, token: string): SignedInState;
50
+ export declare function signedOut(authenticateContext: AuthenticateContext, headers?: Headers): SignedOutState;
51
+ //# sourceMappingURL=authStatus.d.ts.map