@authticon/client 0.0.0-beta37 → 0.0.0-beta39

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 (263) hide show
  1. package/README.md +375 -0
  2. package/dist/TokenStorage.d.ts +6 -18
  3. package/dist/TokenStorage.d.ts.map +1 -1
  4. package/dist/TokenStorage.js +83 -135
  5. package/dist/TokenStorage.js.map +1 -1
  6. package/dist/TokenVerifier.d.ts +3 -10
  7. package/dist/TokenVerifier.d.ts.map +1 -1
  8. package/dist/TokenVerifier.js +39 -46
  9. package/dist/TokenVerifier.js.map +1 -1
  10. package/dist/admin.d.ts +2 -0
  11. package/dist/admin.d.ts.map +1 -0
  12. package/dist/admin.js +2 -0
  13. package/dist/admin.js.map +1 -0
  14. package/dist/adminClient.d.ts +104 -0
  15. package/dist/adminClient.d.ts.map +1 -0
  16. package/dist/adminClient.js +108 -0
  17. package/dist/adminClient.js.map +1 -0
  18. package/dist/apiClient.d.ts +8 -0
  19. package/dist/apiClient.d.ts.map +1 -0
  20. package/dist/apiClient.js +18 -0
  21. package/dist/apiClient.js.map +1 -0
  22. package/dist/authClient.d.ts +42 -0
  23. package/dist/authClient.d.ts.map +1 -0
  24. package/dist/authClient.js +75 -0
  25. package/dist/authClient.js.map +1 -0
  26. package/dist/authticon.d.ts +88 -0
  27. package/dist/authticon.d.ts.map +1 -0
  28. package/dist/authticon.js +24 -0
  29. package/dist/authticon.js.map +1 -0
  30. package/dist/browser.d.ts +91 -0
  31. package/dist/browser.d.ts.map +1 -0
  32. package/dist/browser.js +7 -0
  33. package/dist/browser.js.map +1 -0
  34. package/dist/clients/admin.d.ts +106 -0
  35. package/dist/clients/admin.d.ts.map +1 -0
  36. package/dist/clients/admin.js +126 -0
  37. package/dist/clients/admin.js.map +1 -0
  38. package/dist/clients/auth.d.ts +42 -0
  39. package/dist/clients/auth.d.ts.map +1 -0
  40. package/dist/clients/auth.js +74 -0
  41. package/dist/clients/auth.js.map +1 -0
  42. package/dist/clients/base.d.ts +8 -0
  43. package/dist/clients/base.d.ts.map +1 -0
  44. package/dist/clients/base.js +18 -0
  45. package/dist/clients/base.js.map +1 -0
  46. package/dist/clients/generated/client/client.gen.d.ts +3 -0
  47. package/dist/clients/generated/client/client.gen.d.ts.map +1 -0
  48. package/dist/clients/generated/client/client.gen.js +236 -0
  49. package/dist/clients/generated/client/client.gen.js.map +1 -0
  50. package/dist/clients/generated/client/index.d.ts +9 -0
  51. package/dist/clients/generated/client/index.d.ts.map +1 -0
  52. package/dist/clients/generated/client/index.js +7 -0
  53. package/dist/clients/generated/client/index.js.map +1 -0
  54. package/dist/clients/generated/client/types.gen.d.ts +118 -0
  55. package/dist/clients/generated/client/types.gen.d.ts.map +1 -0
  56. package/dist/clients/generated/client/types.gen.js +3 -0
  57. package/dist/clients/generated/client/types.gen.js.map +1 -0
  58. package/dist/clients/generated/client/utils.gen.d.ts +34 -0
  59. package/dist/clients/generated/client/utils.gen.d.ts.map +1 -0
  60. package/dist/clients/generated/client/utils.gen.js +229 -0
  61. package/dist/clients/generated/client/utils.gen.js.map +1 -0
  62. package/dist/clients/generated/client.gen.d.ts +13 -0
  63. package/dist/clients/generated/client.gen.d.ts.map +1 -0
  64. package/dist/clients/generated/client.gen.js +4 -0
  65. package/dist/clients/generated/client.gen.js.map +1 -0
  66. package/dist/clients/generated/core/auth.gen.d.ts +19 -0
  67. package/dist/clients/generated/core/auth.gen.d.ts.map +1 -0
  68. package/dist/clients/generated/core/auth.gen.js +15 -0
  69. package/dist/clients/generated/core/auth.gen.js.map +1 -0
  70. package/dist/clients/generated/core/bodySerializer.gen.d.ts +26 -0
  71. package/dist/clients/generated/core/bodySerializer.gen.d.ts.map +1 -0
  72. package/dist/clients/generated/core/bodySerializer.gen.js +58 -0
  73. package/dist/clients/generated/core/bodySerializer.gen.js.map +1 -0
  74. package/dist/clients/generated/core/params.gen.d.ts +44 -0
  75. package/dist/clients/generated/core/params.gen.d.ts.map +1 -0
  76. package/dist/clients/generated/core/params.gen.js +101 -0
  77. package/dist/clients/generated/core/params.gen.js.map +1 -0
  78. package/dist/clients/generated/core/pathSerializer.gen.d.ts +34 -0
  79. package/dist/clients/generated/core/pathSerializer.gen.d.ts.map +1 -0
  80. package/dist/clients/generated/core/pathSerializer.gen.js +107 -0
  81. package/dist/clients/generated/core/pathSerializer.gen.js.map +1 -0
  82. package/dist/clients/generated/core/queryKeySerializer.gen.d.ts +19 -0
  83. package/dist/clients/generated/core/queryKeySerializer.gen.d.ts.map +1 -0
  84. package/dist/clients/generated/core/queryKeySerializer.gen.js +93 -0
  85. package/dist/clients/generated/core/queryKeySerializer.gen.js.map +1 -0
  86. package/dist/clients/generated/core/serverSentEvents.gen.d.ts +72 -0
  87. package/dist/clients/generated/core/serverSentEvents.gen.d.ts.map +1 -0
  88. package/dist/clients/generated/core/serverSentEvents.gen.js +134 -0
  89. package/dist/clients/generated/core/serverSentEvents.gen.js.map +1 -0
  90. package/dist/clients/generated/core/types.gen.d.ts +79 -0
  91. package/dist/clients/generated/core/types.gen.d.ts.map +1 -0
  92. package/dist/clients/generated/core/types.gen.js +3 -0
  93. package/dist/clients/generated/core/types.gen.js.map +1 -0
  94. package/dist/clients/generated/core/utils.gen.d.ts +20 -0
  95. package/dist/clients/generated/core/utils.gen.d.ts.map +1 -0
  96. package/dist/clients/generated/core/utils.gen.js +88 -0
  97. package/dist/clients/generated/core/utils.gen.js.map +1 -0
  98. package/dist/clients/generated/index.d.ts +3 -0
  99. package/dist/clients/generated/index.d.ts.map +1 -0
  100. package/dist/clients/generated/index.js +3 -0
  101. package/dist/clients/generated/index.js.map +1 -0
  102. package/dist/clients/generated/sdk.gen.d.ts +164 -0
  103. package/dist/clients/generated/sdk.gen.d.ts.map +1 -0
  104. package/dist/clients/generated/sdk.gen.js +415 -0
  105. package/dist/clients/generated/sdk.gen.js.map +1 -0
  106. package/dist/clients/generated/types.gen.d.ts +1234 -0
  107. package/dist/clients/generated/types.gen.d.ts.map +1 -0
  108. package/dist/clients/generated/types.gen.js +3 -0
  109. package/dist/clients/generated/types.gen.js.map +1 -0
  110. package/dist/clients/user.d.ts +44 -0
  111. package/dist/clients/user.d.ts.map +1 -0
  112. package/dist/clients/user.js +68 -0
  113. package/dist/clients/user.js.map +1 -0
  114. package/dist/cookies/browser.d.ts +3 -0
  115. package/dist/cookies/browser.d.ts.map +1 -0
  116. package/dist/cookies/browser.js +31 -0
  117. package/dist/cookies/browser.js.map +1 -0
  118. package/dist/cookies/node.d.ts +8 -0
  119. package/dist/cookies/node.d.ts.map +1 -0
  120. package/dist/cookies/node.js +50 -0
  121. package/dist/cookies/node.js.map +1 -0
  122. package/dist/createSessionUser.d.ts +3 -0
  123. package/dist/createSessionUser.d.ts.map +1 -0
  124. package/dist/createSessionUser.js +15 -0
  125. package/dist/createSessionUser.js.map +1 -0
  126. package/dist/errors.d.ts +3 -3
  127. package/dist/errors.d.ts.map +1 -1
  128. package/dist/errors.js +4 -4
  129. package/dist/errors.js.map +1 -1
  130. package/dist/generated/client/client.gen.d.ts.map +1 -1
  131. package/dist/generated/client/client.gen.js +151 -50
  132. package/dist/generated/client/client.gen.js.map +1 -1
  133. package/dist/generated/client/index.d.ts +2 -2
  134. package/dist/generated/client/index.d.ts.map +1 -1
  135. package/dist/generated/client/index.js +1 -1
  136. package/dist/generated/client/index.js.map +1 -1
  137. package/dist/generated/client/types.gen.d.ts +53 -24
  138. package/dist/generated/client/types.gen.d.ts.map +1 -1
  139. package/dist/generated/client/utils.gen.d.ts +25 -6
  140. package/dist/generated/client/utils.gen.d.ts.map +1 -1
  141. package/dist/generated/client/utils.gen.js +117 -57
  142. package/dist/generated/client/utils.gen.js.map +1 -1
  143. package/dist/generated/client.gen.js +1 -1
  144. package/dist/generated/index.d.ts +2 -2
  145. package/dist/generated/index.d.ts.map +1 -1
  146. package/dist/generated/index.js +1 -1
  147. package/dist/generated/index.js.map +1 -1
  148. package/dist/generated/sdk.gen.d.ts +149 -43
  149. package/dist/generated/sdk.gen.d.ts.map +1 -1
  150. package/dist/generated/sdk.gen.js +231 -153
  151. package/dist/generated/sdk.gen.js.map +1 -1
  152. package/dist/generated/types.gen.d.ts +613 -738
  153. package/dist/generated/types.gen.d.ts.map +1 -1
  154. package/dist/index.d.ts +1 -9
  155. package/dist/index.d.ts.map +1 -1
  156. package/dist/index.js +1 -8
  157. package/dist/index.js.map +1 -1
  158. package/dist/node.d.ts +169 -0
  159. package/dist/node.d.ts.map +1 -0
  160. package/dist/node.js +46 -0
  161. package/dist/node.js.map +1 -0
  162. package/dist/session.d.ts +57 -0
  163. package/dist/session.d.ts.map +1 -0
  164. package/dist/session.js +273 -0
  165. package/dist/session.js.map +1 -0
  166. package/dist/sessionClient.d.ts +53 -0
  167. package/dist/sessionClient.d.ts.map +1 -0
  168. package/dist/sessionClient.js +267 -0
  169. package/dist/sessionClient.js.map +1 -0
  170. package/dist/{TokenManager.d.ts → tokens.d.ts} +17 -22
  171. package/dist/tokens.d.ts.map +1 -0
  172. package/dist/tokens.js +188 -0
  173. package/dist/tokens.js.map +1 -0
  174. package/dist/types.d.ts +31 -5
  175. package/dist/types.d.ts.map +1 -1
  176. package/dist/userClient.d.ts +41 -0
  177. package/dist/userClient.d.ts.map +1 -0
  178. package/dist/userClient.js +64 -0
  179. package/dist/userClient.js.map +1 -0
  180. package/package.json +22 -8
  181. package/dist/Acccount.d.ts +0 -9
  182. package/dist/Acccount.d.ts.map +0 -1
  183. package/dist/Acccount.js +0 -22
  184. package/dist/Acccount.js.map +0 -1
  185. package/dist/Auth.d.ts +0 -29
  186. package/dist/Auth.d.ts.map +0 -1
  187. package/dist/Auth.js +0 -47
  188. package/dist/Auth.js.map +0 -1
  189. package/dist/Authticon.d.ts +0 -207
  190. package/dist/Authticon.d.ts.map +0 -1
  191. package/dist/Authticon.js +0 -127
  192. package/dist/Authticon.js.map +0 -1
  193. package/dist/BrowserCookieAdapter.d.ts +0 -13
  194. package/dist/BrowserCookieAdapter.d.ts.map +0 -1
  195. package/dist/BrowserCookieAdapter.js +0 -18
  196. package/dist/BrowserCookieAdapter.js.map +0 -1
  197. package/dist/BrowserCookieAdapter.test.d.ts +0 -2
  198. package/dist/BrowserCookieAdapter.test.d.ts.map +0 -1
  199. package/dist/BrowserCookieAdapter.test.js +0 -145
  200. package/dist/BrowserCookieAdapter.test.js.map +0 -1
  201. package/dist/Challange.d.ts +0 -8
  202. package/dist/Challange.d.ts.map +0 -1
  203. package/dist/Challange.js +0 -24
  204. package/dist/Challange.js.map +0 -1
  205. package/dist/CookieStorageAdapter.test.d.ts +0 -2
  206. package/dist/CookieStorageAdapter.test.d.ts.map +0 -1
  207. package/dist/CookieStorageAdapter.test.js +0 -137
  208. package/dist/CookieStorageAdapter.test.js.map +0 -1
  209. package/dist/InMemoryCacheAdapter.test.d.ts +0 -2
  210. package/dist/InMemoryCacheAdapter.test.d.ts.map +0 -1
  211. package/dist/InMemoryCacheAdapter.test.js +0 -38
  212. package/dist/InMemoryCacheAdapter.test.js.map +0 -1
  213. package/dist/RemixCookieAdapter.d.ts +0 -12
  214. package/dist/RemixCookieAdapter.d.ts.map +0 -1
  215. package/dist/RemixCookieAdapter.js +0 -25
  216. package/dist/RemixCookieAdapter.js.map +0 -1
  217. package/dist/RemixCookieAdapter.test.d.ts +0 -2
  218. package/dist/RemixCookieAdapter.test.d.ts.map +0 -1
  219. package/dist/RemixCookieAdapter.test.js +0 -136
  220. package/dist/RemixCookieAdapter.test.js.map +0 -1
  221. package/dist/Session.d.ts +0 -10
  222. package/dist/Session.d.ts.map +0 -1
  223. package/dist/Session.js +0 -16
  224. package/dist/Session.js.map +0 -1
  225. package/dist/TokenManager.d.ts.map +0 -1
  226. package/dist/TokenManager.js +0 -49
  227. package/dist/TokenManager.js.map +0 -1
  228. package/dist/TokenManager.test.d.ts +0 -2
  229. package/dist/TokenManager.test.d.ts.map +0 -1
  230. package/dist/TokenManager.test.js +0 -120
  231. package/dist/TokenManager.test.js.map +0 -1
  232. package/dist/TokenStorage.test.d.ts +0 -2
  233. package/dist/TokenStorage.test.d.ts.map +0 -1
  234. package/dist/TokenStorage.test.js +0 -318
  235. package/dist/TokenStorage.test.js.map +0 -1
  236. package/dist/TokenVerifier.test.d.ts +0 -2
  237. package/dist/TokenVerifier.test.d.ts.map +0 -1
  238. package/dist/TokenVerifier.test.js +0 -139
  239. package/dist/TokenVerifier.test.js.map +0 -1
  240. package/dist/TwoFa.d.ts +0 -26
  241. package/dist/TwoFa.d.ts.map +0 -1
  242. package/dist/TwoFa.js +0 -55
  243. package/dist/TwoFa.js.map +0 -1
  244. package/dist/User.d.ts +0 -25
  245. package/dist/User.d.ts.map +0 -1
  246. package/dist/User.js +0 -27
  247. package/dist/User.js.map +0 -1
  248. package/dist/Users.d.ts +0 -68
  249. package/dist/Users.d.ts.map +0 -1
  250. package/dist/Users.js +0 -64
  251. package/dist/Users.js.map +0 -1
  252. package/dist/cookie-utils.d.ts +0 -5
  253. package/dist/cookie-utils.d.ts.map +0 -1
  254. package/dist/cookie-utils.js +0 -33
  255. package/dist/cookie-utils.js.map +0 -1
  256. package/dist/errors.test.d.ts +0 -2
  257. package/dist/errors.test.d.ts.map +0 -1
  258. package/dist/errors.test.js +0 -99
  259. package/dist/errors.test.js.map +0 -1
  260. package/dist/user.d.ts +0 -117
  261. package/dist/user.d.ts.map +0 -1
  262. package/dist/user.js +0 -84
  263. package/dist/user.js.map +0 -1
@@ -1,207 +0,0 @@
1
- import type { Logger } from "pino";
2
- import { Account } from "./Acccount.js";
3
- import { Auth } from "./Auth.js";
4
- import { Challange } from "./Challange.js";
5
- import type { PostApiV1AuthLoginData } from "./generated/index.js";
6
- import { Session } from "./Session.js";
7
- import { TokenManager } from "./TokenManager.js";
8
- import { TwoFa } from "./TwoFa.js";
9
- import type { CacheAdapter, CookieAdapter, TokenStorageOptions } from "./types.js";
10
- import { Users } from "./Users.js";
11
- type ClientOptions<C extends CookieAdapter> = {
12
- apiKey: string;
13
- baseURL?: string;
14
- jwksUrl?: string;
15
- jwksCacheTtlMs?: number;
16
- cache?: CacheAdapter;
17
- cookies?: C;
18
- tokenStorage?: TokenStorageOptions;
19
- logger?: Logger;
20
- };
21
- export declare class Authticon<Payload extends Record<string, any>, C extends CookieAdapter> {
22
- private readonly client;
23
- readonly auth: Auth;
24
- readonly users: Users;
25
- readonly tokens: TokenManager<Payload>;
26
- readonly twoFa: TwoFa;
27
- readonly account: Account;
28
- readonly challange: Challange;
29
- readonly session: Session;
30
- readonly logger?: Logger;
31
- private readonly cookiesAdapter?;
32
- constructor(options: ClientOptions<C>);
33
- hasSession(): string | false | null;
34
- verifyToken(): Promise<import("./types.js").AccessTokenPayload<Payload>>;
35
- getUser(): Promise<import("./types.js").JWTPayload & Payload & {
36
- isLoggedByAdmin: boolean;
37
- isGuest: boolean;
38
- refreshSession: () => Promise<void>;
39
- logout: () => Promise<void>;
40
- loginAs: (targetUserId: string) => Promise<void>;
41
- backToAdmin: () => Promise<import("./types.js").JWTPayload & Payload & /*elided*/ any>;
42
- update: (data: import("./generated/types.gen.js").PatchApiV1UsersByIdData["body"]) => Promise<{
43
- id: string;
44
- }>;
45
- challanges: {
46
- hasAny: () => boolean;
47
- first: () => "verifyTwoFa" | "setTwoFa" | "resetPassword" | "setPassword" | undefined;
48
- all: () => ("verifyTwoFa" | "setTwoFa" | "resetPassword" | "setPassword")[];
49
- has: (type: import("./types.js").Challange) => boolean;
50
- completeTwoFa: (code: string, rememberMe?: boolean) => Promise<void>;
51
- };
52
- account: {
53
- changeEmail: (newEmail: string) => Promise<null>;
54
- changePassword: (newPassword: string, oldPassword: string) => Promise<null>;
55
- };
56
- twoFa: {
57
- getSettings: () => Promise<{
58
- isEnabled: boolean;
59
- type: string | null;
60
- }>;
61
- getSecret: () => Promise<{
62
- secret: string;
63
- uri: string;
64
- }>;
65
- enablePhone: () => Promise<{
66
- success: boolean;
67
- }>;
68
- enableEmail: () => Promise<{
69
- success: boolean;
70
- }>;
71
- enableApp: (code: string) => Promise<{
72
- success: boolean;
73
- }>;
74
- disable: (code: string) => Promise<{
75
- success: boolean;
76
- }>;
77
- };
78
- challange: {
79
- startPhone: (phone: string) => Promise<null>;
80
- completePhone: (phone: string, code: string) => Promise<null>;
81
- };
82
- authticon: {
83
- sessionId: string;
84
- userId: string;
85
- projectId: string;
86
- role: "guest" | "user";
87
- challanges: import("./types.js").Challange[];
88
- isLoggedByAdmin: boolean;
89
- };
90
- }>;
91
- cookies(): C;
92
- login(params: Omit<PostApiV1AuthLoginData["body"], "deviceId">): Promise<import("./types.js").JWTPayload & Payload & {
93
- isLoggedByAdmin: boolean;
94
- isGuest: boolean;
95
- refreshSession: () => Promise<void>;
96
- logout: () => Promise<void>;
97
- loginAs: (targetUserId: string) => Promise<void>;
98
- backToAdmin: () => Promise<import("./types.js").JWTPayload & Payload & /*elided*/ any>;
99
- update: (data: import("./generated/types.gen.js").PatchApiV1UsersByIdData["body"]) => Promise<{
100
- id: string;
101
- }>;
102
- challanges: {
103
- hasAny: () => boolean;
104
- first: () => "verifyTwoFa" | "setTwoFa" | "resetPassword" | "setPassword" | undefined;
105
- all: () => ("verifyTwoFa" | "setTwoFa" | "resetPassword" | "setPassword")[];
106
- has: (type: import("./types.js").Challange) => boolean;
107
- completeTwoFa: (code: string, rememberMe?: boolean) => Promise<void>;
108
- };
109
- account: {
110
- changeEmail: (newEmail: string) => Promise<null>;
111
- changePassword: (newPassword: string, oldPassword: string) => Promise<null>;
112
- };
113
- twoFa: {
114
- getSettings: () => Promise<{
115
- isEnabled: boolean;
116
- type: string | null;
117
- }>;
118
- getSecret: () => Promise<{
119
- secret: string;
120
- uri: string;
121
- }>;
122
- enablePhone: () => Promise<{
123
- success: boolean;
124
- }>;
125
- enableEmail: () => Promise<{
126
- success: boolean;
127
- }>;
128
- enableApp: (code: string) => Promise<{
129
- success: boolean;
130
- }>;
131
- disable: (code: string) => Promise<{
132
- success: boolean;
133
- }>;
134
- };
135
- challange: {
136
- startPhone: (phone: string) => Promise<null>;
137
- completePhone: (phone: string, code: string) => Promise<null>;
138
- };
139
- authticon: {
140
- sessionId: string;
141
- userId: string;
142
- projectId: string;
143
- role: "guest" | "user";
144
- challanges: import("./types.js").Challange[];
145
- isLoggedByAdmin: boolean;
146
- };
147
- }>;
148
- backToAdmin(): Promise<import("./types.js").JWTPayload & Payload & {
149
- isLoggedByAdmin: boolean;
150
- isGuest: boolean;
151
- refreshSession: () => Promise<void>;
152
- logout: () => Promise<void>;
153
- loginAs: (targetUserId: string) => Promise<void>;
154
- backToAdmin: () => Promise<import("./types.js").JWTPayload & Payload & /*elided*/ any>;
155
- update: (data: import("./generated/types.gen.js").PatchApiV1UsersByIdData["body"]) => Promise<{
156
- id: string;
157
- }>;
158
- challanges: {
159
- hasAny: () => boolean;
160
- first: () => "verifyTwoFa" | "setTwoFa" | "resetPassword" | "setPassword" | undefined;
161
- all: () => ("verifyTwoFa" | "setTwoFa" | "resetPassword" | "setPassword")[];
162
- has: (type: import("./types.js").Challange) => boolean;
163
- completeTwoFa: (code: string, rememberMe?: boolean) => Promise<void>;
164
- };
165
- account: {
166
- changeEmail: (newEmail: string) => Promise<null>;
167
- changePassword: (newPassword: string, oldPassword: string) => Promise<null>;
168
- };
169
- twoFa: {
170
- getSettings: () => Promise<{
171
- isEnabled: boolean;
172
- type: string | null;
173
- }>;
174
- getSecret: () => Promise<{
175
- secret: string;
176
- uri: string;
177
- }>;
178
- enablePhone: () => Promise<{
179
- success: boolean;
180
- }>;
181
- enableEmail: () => Promise<{
182
- success: boolean;
183
- }>;
184
- enableApp: (code: string) => Promise<{
185
- success: boolean;
186
- }>;
187
- disable: (code: string) => Promise<{
188
- success: boolean;
189
- }>;
190
- };
191
- challange: {
192
- startPhone: (phone: string) => Promise<null>;
193
- completePhone: (phone: string, code: string) => Promise<null>;
194
- };
195
- authticon: {
196
- sessionId: string;
197
- userId: string;
198
- projectId: string;
199
- role: "guest" | "user";
200
- challanges: import("./types.js").Challange[];
201
- isLoggedByAdmin: boolean;
202
- };
203
- }>;
204
- }
205
- export declare function createAuthticon<Payload extends Record<string, any> = Record<string, any>, C extends CookieAdapter = CookieAdapter>(options: ClientOptions<C>): Authticon<Payload, C>;
206
- export {};
207
- //# sourceMappingURL=Authticon.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Authticon.d.ts","sourceRoot":"","sources":["../src/Authticon.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AACnC,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAO3C,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AACnE,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,KAAK,EACV,YAAY,EACZ,aAAa,EACb,mBAAmB,EACpB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEnC,KAAK,aAAa,CAAC,CAAC,SAAS,aAAa,IAAI;IAC5C,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,OAAO,CAAC,EAAE,CAAC,CAAC;IACZ,YAAY,CAAC,EAAE,mBAAmB,CAAC;IACnC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,qBAAa,SAAS,CACpB,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACnC,CAAC,SAAS,aAAa;IAEvB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;IACpB,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;IACvC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;IAC9B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAI;gBAExB,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC;IAyE9B,UAAU;IAIJ,WAAW;IAgBX,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAMb,OAAO;IAOD,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,EAAE,UAAU,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAiB9D,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAWzB;AAED,wBAAgB,eAAe,CAC7B,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACzD,CAAC,SAAS,aAAa,GAAG,aAAa,EACvC,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC,yBAE1B"}
package/dist/Authticon.js DELETED
@@ -1,127 +0,0 @@
1
- import axios from "axios";
2
- import { Account } from "./Acccount.js";
3
- import { Auth } from "./Auth.js";
4
- import { Challange } from "./Challange.js";
5
- import { AuthticonApiError, AuthticonError, isAuthticonTokenError, } from "./errors.js";
6
- import { createClient } from "./generated/client/index.js";
7
- import { Session } from "./Session.js";
8
- import { TokenManager } from "./TokenManager.js";
9
- import { TwoFa } from "./TwoFa.js";
10
- import { createAuthticonUser } from "./user.js";
11
- import { Users } from "./Users.js";
12
- export class Authticon {
13
- client;
14
- auth;
15
- users;
16
- tokens;
17
- twoFa;
18
- account;
19
- challange;
20
- session;
21
- logger;
22
- cookiesAdapter;
23
- constructor(options) {
24
- const baseURL = options.baseURL ?? "https://authticon.com";
25
- this.logger = options.logger?.child({ authticon: "client" });
26
- const axiosClient = axios.create({
27
- baseURL,
28
- headers: {
29
- "x-api-key": options.apiKey,
30
- },
31
- });
32
- axiosClient.interceptors.response.use((response) => {
33
- const request = response.config;
34
- this.logger?.debug({
35
- request: { url: request.url, method: request.method },
36
- response: { status: response.status },
37
- }, "Response received");
38
- return response;
39
- }, (error) => {
40
- const request = error.config;
41
- this.logger?.error({
42
- request: { url: request.url, method: request.method },
43
- response: error.response
44
- ? { status: error.response.status, data: error.response.data }
45
- : undefined,
46
- error: error.message,
47
- }, "Error received");
48
- return Promise.reject(new AuthticonApiError(error.message, error.status, error));
49
- });
50
- this.client = createClient({
51
- axios: axiosClient,
52
- throwOnError: true,
53
- });
54
- this.cookiesAdapter = options.cookies;
55
- this.auth = new Auth(this.client);
56
- this.users = new Users(this.client);
57
- this.twoFa = new TwoFa(this.client);
58
- this.account = new Account(this.client);
59
- this.challange = new Challange(this.client);
60
- this.session = new Session(this.client);
61
- const jwksUrl = options.jwksUrl ?? `${new URL(baseURL).origin}/.well-known/jwks.json`;
62
- this.tokens = new TokenManager(this.client, {
63
- jwksUrl,
64
- jwksCacheTtlMs: options.jwksCacheTtlMs,
65
- cache: options.cache,
66
- cookies: options.cookies,
67
- storage: options.tokenStorage,
68
- }, this.logger?.child({ authticon: "token-manager" }));
69
- }
70
- hasSession() {
71
- return this.tokens.hasStorage() && this.tokens.getAccessToken();
72
- }
73
- async verifyToken() {
74
- try {
75
- await this.tokens.verifyToken();
76
- }
77
- catch (error) {
78
- if (isAuthticonTokenError(error, "ERR_JWT_EXPIRED")) {
79
- this.logger?.debug("Token expired, refreshing");
80
- const result = await this.auth.refresh(this.tokens.getRefreshToken());
81
- this.tokens.setAccessToken(result.accessToken);
82
- }
83
- else {
84
- throw error;
85
- }
86
- }
87
- return this.tokens.verifyToken();
88
- }
89
- async getUser() {
90
- const payload = await this.verifyToken();
91
- const logger = this.logger?.child({ authticon: "user" });
92
- return createAuthticonUser(this, payload, logger);
93
- }
94
- cookies() {
95
- if (!this.cookiesAdapter) {
96
- throw new AuthticonError("Cookies not set");
97
- }
98
- return this.cookiesAdapter;
99
- }
100
- async login(params) {
101
- const deviceId = this.tokens.getDeviceId() ?? undefined;
102
- const rememberToken = this.tokens.getRememberToken() ?? undefined;
103
- this.logger?.debug({ email: params.email, rememberMe: !!rememberToken, deviceId }, "Logging in");
104
- const result = await this.auth.login({
105
- ...params,
106
- deviceId,
107
- rememberToken,
108
- });
109
- this.tokens.save(result);
110
- return this.getUser();
111
- }
112
- async backToAdmin() {
113
- const adminRefreshToken = this.tokens.getAdminRefreshToken();
114
- if (!adminRefreshToken) {
115
- throw new AuthticonError("Admin refresh token not found");
116
- }
117
- const result = await this.auth.refresh(adminRefreshToken);
118
- this.tokens.setAccessToken(result.accessToken);
119
- this.tokens.setRefreshToken(adminRefreshToken);
120
- this.tokens.clearAdminRefreshToken();
121
- return this.getUser();
122
- }
123
- }
124
- export function createAuthticon(options) {
125
- return new Authticon(options);
126
- }
127
- //# sourceMappingURL=Authticon.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Authticon.js","sourceRoot":"","sources":["../src/Authticon.ts"],"names":[],"mappings":"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"}
@@ -1,13 +0,0 @@
1
- import type { CookieAdapter, CookieRemoveOptions, CookieSetOptions } from "./types.js";
2
- type DocumentLike = {
3
- cookie: string;
4
- };
5
- export declare class BrowserCookieAdapter implements CookieAdapter {
6
- private readonly doc;
7
- constructor(doc?: DocumentLike);
8
- readonly get: (name: string) => string | null;
9
- readonly set: (name: string, value: string, options: CookieSetOptions) => void;
10
- readonly remove: (name: string, options: CookieRemoveOptions) => void;
11
- }
12
- export {};
13
- //# sourceMappingURL=BrowserCookieAdapter.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"BrowserCookieAdapter.d.ts","sourceRoot":"","sources":["../src/BrowserCookieAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EACb,mBAAmB,EACnB,gBAAgB,EACjB,MAAM,YAAY,CAAC;AAOpB,KAAK,YAAY,GAAG;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAEvC,qBAAa,oBAAqB,YAAW,aAAa;IAC5C,OAAO,CAAC,QAAQ,CAAC,GAAG;gBAAH,GAAG,GAAE,YAAuB;IAEzD,QAAQ,CAAC,GAAG,GAAI,MAAM,MAAM,KAAG,MAAM,GAAG,IAAI,CAG1C;IAEF,QAAQ,CAAC,GAAG,GACV,MAAM,MAAM,EACZ,OAAO,MAAM,EACb,SAAS,gBAAgB,KACxB,IAAI,CAEL;IAEF,QAAQ,CAAC,MAAM,GAAI,MAAM,MAAM,EAAE,SAAS,mBAAmB,KAAG,IAAI,CAElE;CACH"}
@@ -1,18 +0,0 @@
1
- import { parseCookies, serializeCookie, serializeRemoveCookie, } from "./cookie-utils.js";
2
- export class BrowserCookieAdapter {
3
- doc;
4
- constructor(doc = document) {
5
- this.doc = doc;
6
- }
7
- get = (name) => {
8
- const cookies = parseCookies(this.doc.cookie);
9
- return cookies.get(name) ?? null;
10
- };
11
- set = (name, value, options) => {
12
- this.doc.cookie = serializeCookie(name, value, options);
13
- };
14
- remove = (name, options) => {
15
- this.doc.cookie = serializeRemoveCookie(name, options);
16
- };
17
- }
18
- //# sourceMappingURL=BrowserCookieAdapter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"BrowserCookieAdapter.js","sourceRoot":"","sources":["../src/BrowserCookieAdapter.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,YAAY,EACZ,eAAe,EACf,qBAAqB,GACtB,MAAM,mBAAmB,CAAC;AAI3B,MAAM,OAAO,oBAAoB;IACF;IAA7B,YAA6B,MAAoB,QAAQ;QAA5B,QAAG,GAAH,GAAG,CAAyB;IAAG,CAAC;IAEpD,GAAG,GAAG,CAAC,IAAY,EAAiB,EAAE;QAC7C,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC9C,OAAO,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC;IACnC,CAAC,CAAC;IAEO,GAAG,GAAG,CACb,IAAY,EACZ,KAAa,EACb,OAAyB,EACnB,EAAE;QACR,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,eAAe,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IAC1D,CAAC,CAAC;IAEO,MAAM,GAAG,CAAC,IAAY,EAAE,OAA4B,EAAQ,EAAE;QACrE,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,qBAAqB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACzD,CAAC,CAAC;CACH"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=BrowserCookieAdapter.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"BrowserCookieAdapter.test.d.ts","sourceRoot":"","sources":["../src/BrowserCookieAdapter.test.ts"],"names":[],"mappings":""}
@@ -1,145 +0,0 @@
1
- import { describe, it, expect, beforeEach } from "vitest";
2
- import { BrowserCookieAdapter } from "./BrowserCookieAdapter.js";
3
- const createMockDocument = (initialCookie = "") => {
4
- const cookies = new Map();
5
- if (initialCookie) {
6
- initialCookie.split(";").forEach((pair) => {
7
- const [key, ...rest] = pair.trim().split("=");
8
- if (key)
9
- cookies.set(key, rest.join("="));
10
- });
11
- }
12
- return {
13
- get cookie() {
14
- return [...cookies.entries()]
15
- .map(([k, v]) => `${k}=${v}`)
16
- .join("; ");
17
- },
18
- set cookie(value) {
19
- const [nameValue] = value.split(";");
20
- const eqIndex = nameValue.indexOf("=");
21
- const name = nameValue.slice(0, eqIndex);
22
- const val = nameValue.slice(eqIndex + 1);
23
- if (value.includes("Max-Age=0")) {
24
- cookies.delete(name);
25
- }
26
- else {
27
- cookies.set(name, val);
28
- }
29
- },
30
- };
31
- };
32
- describe("BrowserCookieAdapter", () => {
33
- let doc;
34
- beforeEach(() => {
35
- doc = createMockDocument();
36
- });
37
- describe("get", () => {
38
- it("should return cookie value by name", () => {
39
- doc = createMockDocument("token=abc123; other=xyz");
40
- const adapter = new BrowserCookieAdapter(doc);
41
- expect(adapter.get("token")).toBe("abc123");
42
- });
43
- it("should return null for missing cookie", () => {
44
- doc = createMockDocument("other=xyz");
45
- const adapter = new BrowserCookieAdapter(doc);
46
- expect(adapter.get("token")).toBeNull();
47
- });
48
- it("should decode URI-encoded values", () => {
49
- doc = createMockDocument("token=a%3Db%3Bc");
50
- const adapter = new BrowserCookieAdapter(doc);
51
- expect(adapter.get("token")).toBe("a=b;c");
52
- });
53
- it("should return null when cookie string is empty", () => {
54
- const adapter = new BrowserCookieAdapter(doc);
55
- expect(adapter.get("token")).toBeNull();
56
- });
57
- });
58
- describe("set", () => {
59
- it("should write cookie with all options", () => {
60
- const writes = [];
61
- const trackingDoc = {
62
- _c: "",
63
- get cookie() { return this._c; },
64
- set cookie(v) { writes.push(v); this._c = v; },
65
- };
66
- const adapter = new BrowserCookieAdapter(trackingDoc);
67
- adapter.set("token", "abc", {
68
- path: "/app",
69
- domain: ".example.com",
70
- secure: true,
71
- sameSite: "Strict",
72
- maxAge: 3600,
73
- });
74
- expect(writes[0]).toContain("token=abc");
75
- expect(writes[0]).toContain("Path=/app");
76
- expect(writes[0]).toContain("Domain=.example.com");
77
- expect(writes[0]).toContain("Secure");
78
- expect(writes[0]).toContain("SameSite=Strict");
79
- expect(writes[0]).toContain("Max-Age=3600");
80
- });
81
- it("should omit Secure when secure is false", () => {
82
- const writes = [];
83
- const trackingDoc = {
84
- _c: "",
85
- get cookie() { return this._c; },
86
- set cookie(v) { writes.push(v); this._c = v; },
87
- };
88
- const adapter = new BrowserCookieAdapter(trackingDoc);
89
- adapter.set("token", "abc", {
90
- path: "/",
91
- secure: false,
92
- sameSite: "Lax",
93
- maxAge: 900,
94
- });
95
- expect(writes[0]).not.toContain("Secure");
96
- });
97
- it("should omit Domain when not specified", () => {
98
- const writes = [];
99
- const trackingDoc = {
100
- _c: "",
101
- get cookie() { return this._c; },
102
- set cookie(v) { writes.push(v); this._c = v; },
103
- };
104
- const adapter = new BrowserCookieAdapter(trackingDoc);
105
- adapter.set("token", "abc", {
106
- path: "/",
107
- secure: true,
108
- sameSite: "Lax",
109
- maxAge: 900,
110
- });
111
- expect(writes[0]).not.toContain("Domain");
112
- });
113
- it("should encode special characters in value", () => {
114
- const adapter = new BrowserCookieAdapter(doc);
115
- adapter.set("token", "a=b;c", {
116
- path: "/",
117
- secure: true,
118
- sameSite: "Lax",
119
- maxAge: 900,
120
- });
121
- expect(adapter.get("token")).toBe("a=b;c");
122
- });
123
- });
124
- describe("remove", () => {
125
- it("should remove cookie by setting Max-Age=0", () => {
126
- doc = createMockDocument("token=abc");
127
- const adapter = new BrowserCookieAdapter(doc);
128
- adapter.remove("token", { path: "/" });
129
- expect(adapter.get("token")).toBeNull();
130
- });
131
- it("should include domain in removal cookie", () => {
132
- const writes = [];
133
- const trackingDoc = {
134
- _c: "token=abc",
135
- get cookie() { return this._c; },
136
- set cookie(v) { writes.push(v); this._c = v; },
137
- };
138
- const adapter = new BrowserCookieAdapter(trackingDoc);
139
- adapter.remove("token", { path: "/", domain: ".example.com" });
140
- expect(writes[0]).toContain("Max-Age=0");
141
- expect(writes[0]).toContain("Domain=.example.com");
142
- });
143
- });
144
- });
145
- //# sourceMappingURL=BrowserCookieAdapter.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"BrowserCookieAdapter.test.js","sourceRoot":"","sources":["../src/BrowserCookieAdapter.test.ts"],"names":[],"mappings":"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"}
@@ -1,8 +0,0 @@
1
- import type { Client } from "./generated/client/index.js";
2
- export declare class Challange {
3
- private readonly client;
4
- constructor(client: Client);
5
- startPhone(userId: string, phone: string): Promise<null>;
6
- completePhone(userId: string, phone: string, code: string): Promise<null>;
7
- }
8
- //# sourceMappingURL=Challange.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Challange.d.ts","sourceRoot":"","sources":["../src/Challange.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAC;AAO1D,qBAAa,SAAS;IACR,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAAN,MAAM,EAAE,MAAM;IAErC,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IASxC,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;CAUhE"}
package/dist/Challange.js DELETED
@@ -1,24 +0,0 @@
1
- import { patchApiV1UsersByUserIdChallangePhone, postApiV1SessionsBySessionIdChallangesTwoFa, postApiV1UsersByUserIdChallangePhone, } from "./generated/index.js";
2
- export class Challange {
3
- client;
4
- constructor(client) {
5
- this.client = client;
6
- }
7
- async startPhone(userId, phone) {
8
- const { data } = await postApiV1UsersByUserIdChallangePhone({
9
- client: this.client,
10
- path: { userId },
11
- body: { phone },
12
- });
13
- return data;
14
- }
15
- async completePhone(userId, phone, code) {
16
- const { data } = await patchApiV1UsersByUserIdChallangePhone({
17
- client: this.client,
18
- path: { userId },
19
- body: { phone, code },
20
- });
21
- return data;
22
- }
23
- }
24
- //# sourceMappingURL=Challange.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Challange.js","sourceRoot":"","sources":["../src/Challange.ts"],"names":[],"mappings":"AACA,OAAO,EACL,qCAAqC,EACrC,2CAA2C,EAC3C,oCAAoC,GACrC,MAAM,sBAAsB,CAAC;AAE9B,MAAM,OAAO,SAAS;IACS;IAA7B,YAA6B,MAAc;QAAd,WAAM,GAAN,MAAM,CAAQ;IAAG,CAAC;IAE/C,KAAK,CAAC,UAAU,CAAC,MAAc,EAAE,KAAa;QAC5C,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,oCAAoC,CAAC;YAC1D,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,IAAI,EAAE,EAAE,MAAM,EAAE;YAChB,IAAI,EAAE,EAAE,KAAK,EAAE;SAChB,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,MAAc,EAAE,KAAa,EAAE,IAAY;QAC7D,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,qCAAqC,CAAC;YAC3D,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,IAAI,EAAE,EAAE,MAAM,EAAE;YAChB,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;SACtB,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;CAGF"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=CookieStorageAdapter.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CookieStorageAdapter.test.d.ts","sourceRoot":"","sources":["../src/CookieStorageAdapter.test.ts"],"names":[],"mappings":""}