@tinyrack/tinyauth-server 0.4.0 → 0.5.0

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 (176) hide show
  1. package/dist/entities/background-job.entity.d.ts.map +1 -1
  2. package/dist/entities/background-job.entity.js +15 -3
  3. package/dist/entities/background-job.entity.js.map +1 -1
  4. package/dist/entities/oauth-client.entity.d.ts +147 -0
  5. package/dist/entities/oauth-client.entity.d.ts.map +1 -1
  6. package/dist/entities/oauth-client.entity.js +10 -0
  7. package/dist/entities/oauth-client.entity.js.map +1 -1
  8. package/dist/entities/oauth-code.entity.d.ts +147 -0
  9. package/dist/entities/oauth-code.entity.d.ts.map +1 -1
  10. package/dist/entities/oauth-device-code.entity.d.ts +1737 -0
  11. package/dist/entities/oauth-device-code.entity.d.ts.map +1 -0
  12. package/dist/entities/oauth-device-code.entity.js +61 -0
  13. package/dist/entities/oauth-device-code.entity.js.map +1 -0
  14. package/dist/entities/revoked-token.entity.d.ts +147 -0
  15. package/dist/entities/revoked-token.entity.d.ts.map +1 -1
  16. package/dist/entities/scheduler-job.entity.d.ts.map +1 -1
  17. package/dist/entities/scheduler-job.entity.js +10 -2
  18. package/dist/entities/scheduler-job.entity.js.map +1 -1
  19. package/dist/entities/user-consent.entity.d.ts +147 -0
  20. package/dist/entities/user-consent.entity.d.ts.map +1 -1
  21. package/dist/entities/user-oauth.entity.d.ts.map +1 -1
  22. package/dist/entities/user-oauth.entity.js +2 -1
  23. package/dist/entities/user-oauth.entity.js.map +1 -1
  24. package/dist/entrypoints/app.d.ts +126 -19
  25. package/dist/entrypoints/app.d.ts.map +1 -1
  26. package/dist/entrypoints/app.js +72 -5
  27. package/dist/entrypoints/app.js.map +1 -1
  28. package/dist/entrypoints/database/postgres/cli.js +5 -5
  29. package/dist/entrypoints/database/postgres/cli.js.map +1 -1
  30. package/dist/entrypoints/database/postgres/compiled-functions.d.ts +146 -94
  31. package/dist/entrypoints/database/postgres/compiled-functions.d.ts.map +1 -1
  32. package/dist/entrypoints/database/postgres/compiled-functions.js +881 -122
  33. package/dist/entrypoints/database/postgres/compiled-functions.js.map +1 -1
  34. package/dist/entrypoints/database/sqlite/cli.js +2 -2
  35. package/dist/entrypoints/database/sqlite/cli.js.map +1 -1
  36. package/dist/entrypoints/database/sqlite/compiled-functions.d.ts +146 -94
  37. package/dist/entrypoints/database/sqlite/compiled-functions.d.ts.map +1 -1
  38. package/dist/entrypoints/database/sqlite/compiled-functions.js +881 -122
  39. package/dist/entrypoints/database/sqlite/compiled-functions.js.map +1 -1
  40. package/dist/lib/config/client.d.ts +8 -0
  41. package/dist/lib/config/client.d.ts.map +1 -1
  42. package/dist/lib/config/client.js +62 -2
  43. package/dist/lib/config/client.js.map +1 -1
  44. package/dist/lib/config/resolved.d.ts +4 -0
  45. package/dist/lib/config/resolved.d.ts.map +1 -1
  46. package/dist/lib/config/security.d.ts.map +1 -1
  47. package/dist/lib/config/security.js +25 -2
  48. package/dist/lib/config/security.js.map +1 -1
  49. package/dist/lib/crypto.d.ts.map +1 -1
  50. package/dist/lib/crypto.js +11 -1
  51. package/dist/lib/crypto.js.map +1 -1
  52. package/dist/lib/database/entities.d.ts.map +1 -1
  53. package/dist/lib/database/entities.js +2 -0
  54. package/dist/lib/database/entities.js.map +1 -1
  55. package/dist/lib/escape-html.d.ts +7 -0
  56. package/dist/lib/escape-html.d.ts.map +1 -0
  57. package/dist/lib/escape-html.js +14 -0
  58. package/dist/lib/escape-html.js.map +1 -0
  59. package/dist/migrations/postgres/Migration20260619075007.d.ts +6 -0
  60. package/dist/migrations/postgres/Migration20260619075007.d.ts.map +1 -0
  61. package/dist/migrations/postgres/Migration20260619075007.js +86 -0
  62. package/dist/migrations/postgres/Migration20260619075007.js.map +1 -0
  63. package/dist/migrations/postgres/Migration20260619191600_unique_oauth_client_client_id.d.ts +6 -0
  64. package/dist/migrations/postgres/Migration20260619191600_unique_oauth_client_client_id.d.ts.map +1 -0
  65. package/dist/migrations/postgres/Migration20260619191600_unique_oauth_client_client_id.js +12 -0
  66. package/dist/migrations/postgres/Migration20260619191600_unique_oauth_client_client_id.js.map +1 -0
  67. package/dist/migrations/postgres/index.d.ts.map +1 -1
  68. package/dist/migrations/postgres/index.js +4 -0
  69. package/dist/migrations/postgres/index.js.map +1 -1
  70. package/dist/migrations/sqlite/Migration20260619075330.d.ts +6 -0
  71. package/dist/migrations/sqlite/Migration20260619075330.d.ts.map +1 -0
  72. package/dist/migrations/sqlite/Migration20260619075330.js +57 -0
  73. package/dist/migrations/sqlite/Migration20260619075330.js.map +1 -0
  74. package/dist/migrations/sqlite/Migration20260619191600_unique_oauth_client_client_id.d.ts +6 -0
  75. package/dist/migrations/sqlite/Migration20260619191600_unique_oauth_client_client_id.d.ts.map +1 -0
  76. package/dist/migrations/sqlite/Migration20260619191600_unique_oauth_client_client_id.js +12 -0
  77. package/dist/migrations/sqlite/Migration20260619191600_unique_oauth_client_client_id.js.map +1 -0
  78. package/dist/migrations/sqlite/index.d.ts.map +1 -1
  79. package/dist/migrations/sqlite/index.js +4 -0
  80. package/dist/migrations/sqlite/index.js.map +1 -1
  81. package/dist/repositories/oauth-device-code.repository.d.ts +20 -0
  82. package/dist/repositories/oauth-device-code.repository.d.ts.map +1 -0
  83. package/dist/repositories/oauth-device-code.repository.js +55 -0
  84. package/dist/repositories/oauth-device-code.repository.js.map +1 -0
  85. package/dist/routes/.well-known/index.d.ts +29 -3
  86. package/dist/routes/.well-known/index.d.ts.map +1 -1
  87. package/dist/routes/.well-known/openid-configuration/get.d.ts +30 -4
  88. package/dist/routes/.well-known/openid-configuration/get.d.ts.map +1 -1
  89. package/dist/routes/.well-known/openid-configuration/get.js +5 -2
  90. package/dist/routes/.well-known/openid-configuration/get.js.map +1 -1
  91. package/dist/routes/index.d.ts +123 -18
  92. package/dist/routes/index.d.ts.map +1 -1
  93. package/dist/routes/oauth/.well-known/openid-configuration/get.d.ts +33 -0
  94. package/dist/routes/oauth/.well-known/openid-configuration/get.d.ts.map +1 -1
  95. package/dist/routes/oauth/.well-known/openid-configuration/get.js +78 -44
  96. package/dist/routes/oauth/.well-known/openid-configuration/get.js.map +1 -1
  97. package/dist/routes/oauth/authorize/get.d.ts +8 -26
  98. package/dist/routes/oauth/authorize/get.d.ts.map +1 -1
  99. package/dist/routes/oauth/authorize/get.js +34 -3
  100. package/dist/routes/oauth/authorize/get.js.map +1 -1
  101. package/dist/routes/oauth/cors.d.ts +9 -0
  102. package/dist/routes/oauth/cors.d.ts.map +1 -0
  103. package/dist/routes/oauth/cors.js +50 -0
  104. package/dist/routes/oauth/cors.js.map +1 -0
  105. package/dist/routes/oauth/device/get-post.d.ts +28 -0
  106. package/dist/routes/oauth/device/get-post.d.ts.map +1 -0
  107. package/dist/routes/oauth/device/get-post.js +67 -0
  108. package/dist/routes/oauth/device/get-post.js.map +1 -0
  109. package/dist/routes/oauth/device-authorization/post.d.ts +25 -0
  110. package/dist/routes/oauth/device-authorization/post.d.ts.map +1 -0
  111. package/dist/routes/oauth/device-authorization/post.js +87 -0
  112. package/dist/routes/oauth/device-authorization/post.js.map +1 -0
  113. package/dist/routes/oauth/end-session/get.d.ts +34 -0
  114. package/dist/routes/oauth/end-session/get.d.ts.map +1 -0
  115. package/dist/routes/oauth/end-session/get.js +74 -0
  116. package/dist/routes/oauth/end-session/get.js.map +1 -0
  117. package/dist/routes/oauth/index.d.ts +95 -16
  118. package/dist/routes/oauth/index.d.ts.map +1 -1
  119. package/dist/routes/oauth/index.js +8 -0
  120. package/dist/routes/oauth/index.js.map +1 -1
  121. package/dist/routes/oauth/introspect/post.d.ts.map +1 -1
  122. package/dist/routes/oauth/introspect/post.js +2 -0
  123. package/dist/routes/oauth/introspect/post.js.map +1 -1
  124. package/dist/routes/oauth/revoke/post.d.ts.map +1 -1
  125. package/dist/routes/oauth/revoke/post.js +2 -0
  126. package/dist/routes/oauth/revoke/post.js.map +1 -1
  127. package/dist/routes/oauth/token/post.d.ts +2 -0
  128. package/dist/routes/oauth/token/post.d.ts.map +1 -1
  129. package/dist/routes/oauth/token/post.js +46 -0
  130. package/dist/routes/oauth/token/post.js.map +1 -1
  131. package/dist/routes/oauth/userinfo/get.d.ts +16 -4
  132. package/dist/routes/oauth/userinfo/get.d.ts.map +1 -1
  133. package/dist/routes/oauth/userinfo/get.js +50 -30
  134. package/dist/routes/oauth/userinfo/get.js.map +1 -1
  135. package/dist/schemas/error.d.ts +100 -0
  136. package/dist/schemas/error.d.ts.map +1 -1
  137. package/dist/schemas/error.js +4 -0
  138. package/dist/schemas/error.js.map +1 -1
  139. package/dist/schemas/field.d.ts +2 -0
  140. package/dist/schemas/field.d.ts.map +1 -1
  141. package/dist/schemas/field.js +6 -1
  142. package/dist/schemas/field.js.map +1 -1
  143. package/dist/schemas/response.d.ts +2 -0
  144. package/dist/schemas/response.d.ts.map +1 -1
  145. package/dist/schemas/response.js +4 -0
  146. package/dist/schemas/response.js.map +1 -1
  147. package/dist/seeders/config.seeder.js +2 -0
  148. package/dist/seeders/config.seeder.js.map +1 -1
  149. package/dist/services/container.d.ts +3 -1
  150. package/dist/services/container.d.ts.map +1 -1
  151. package/dist/services/jwt.service.d.ts +4 -0
  152. package/dist/services/jwt.service.d.ts.map +1 -1
  153. package/dist/services/jwt.service.js +27 -6
  154. package/dist/services/jwt.service.js.map +1 -1
  155. package/dist/services/mikro.service.d.ts +2 -0
  156. package/dist/services/mikro.service.d.ts.map +1 -1
  157. package/dist/services/mikro.service.js +3 -0
  158. package/dist/services/mikro.service.js.map +1 -1
  159. package/dist/services/oauth-authorize.service.d.ts +9 -1
  160. package/dist/services/oauth-authorize.service.d.ts.map +1 -1
  161. package/dist/services/oauth-authorize.service.js +109 -17
  162. package/dist/services/oauth-authorize.service.js.map +1 -1
  163. package/dist/services/oauth-client.service.d.ts +3 -0
  164. package/dist/services/oauth-client.service.d.ts.map +1 -1
  165. package/dist/services/oauth-client.service.js +16 -0
  166. package/dist/services/oauth-client.service.js.map +1 -1
  167. package/dist/services/oauth-token.service.d.ts +11 -0
  168. package/dist/services/oauth-token.service.d.ts.map +1 -1
  169. package/dist/services/oauth-token.service.js +69 -1
  170. package/dist/services/oauth-token.service.js.map +1 -1
  171. package/dist/services/security.service.d.ts +1 -1
  172. package/dist/services/security.service.d.ts.map +1 -1
  173. package/dist/services/security.service.js +2 -0
  174. package/dist/services/security.service.js.map +1 -1
  175. package/package.json +3 -3
  176. package/readme.md +5 -1
@@ -1,6 +1,7 @@
1
1
  import { stringToBytes, toArrayBuffer, toBase64Url } from "../lib/base64url.js";
2
2
  import { validatePKCE } from "../lib/pkce.js";
3
3
  import { e } from "../schemas/error.js";
4
+ const DEVICE_CODE_POLL_INTERVAL_SECONDS = 5;
4
5
  /**
5
6
  * OAuth Token Service
6
7
  *
@@ -18,6 +19,7 @@ export class OAuthTokenService {
18
19
  jwtService;
19
20
  securityService;
20
21
  refreshRotationLocks = new Map();
22
+ devicePollTimestamps = new Map();
21
23
  constructor(config, mikro, userService, oauthClientService, jwtService, securityService) {
22
24
  this.config = config;
23
25
  this.mikro = mikro;
@@ -131,6 +133,66 @@ export class OAuthTokenService {
131
133
  }
132
134
  return this.refreshAccessTokenLocked(params);
133
135
  }
136
+ async issueClientCredentialsToken(params) {
137
+ const scopeString = params.scope.join(' ');
138
+ const accessToken = await this.jwtService.signAccessToken({
139
+ typ: 'access_token',
140
+ sub: params.clientId,
141
+ client_id: params.clientId,
142
+ grant_type: 'client_credentials',
143
+ scope: scopeString,
144
+ aud: this.config.server.public_origin,
145
+ grant_id: crypto.randomUUID(),
146
+ });
147
+ return {
148
+ access_token: accessToken,
149
+ token_type: 'Bearer',
150
+ expires_in: this.config.tokens.access_token_ttl,
151
+ scope: scopeString,
152
+ };
153
+ }
154
+ async exchangeDeviceCode(params) {
155
+ const client = await this.oauthClientService.findByClientId(params.clientId);
156
+ const deviceCodeHash = await this.securityService.hashOpaqueToken('oauth-device-code', params.deviceCode);
157
+ const deviceCode = await this.mikro.oauthDeviceCode.findByClientAndDeviceCodeHash(client.id, deviceCodeHash);
158
+ if (!deviceCode || deviceCode.expiresAt < new Date()) {
159
+ this.devicePollTimestamps.delete(deviceCodeHash);
160
+ throw new e.InvalidDeviceCode.Error();
161
+ }
162
+ if (!deviceCode.authorizedUser) {
163
+ const now = Date.now();
164
+ const lastPolledAt = this.devicePollTimestamps.get(deviceCodeHash);
165
+ if (lastPolledAt !== undefined &&
166
+ now - lastPolledAt < DEVICE_CODE_POLL_INTERVAL_SECONDS * 1000) {
167
+ this.devicePollTimestamps.set(deviceCodeHash, now);
168
+ throw new e.SlowDown.Error();
169
+ }
170
+ this.devicePollTimestamps.set(deviceCodeHash, now);
171
+ throw new e.AuthorizationPending.Error();
172
+ }
173
+ this.devicePollTimestamps.delete(deviceCodeHash);
174
+ const consumedAt = new Date();
175
+ const consumed = await this.mikro.oauthDeviceCode.consumeAuthorizedDeviceCode(deviceCode.id, consumedAt);
176
+ if (!consumed) {
177
+ throw new e.InvalidDeviceCode.Error();
178
+ }
179
+ deviceCode.consumedAt = consumedAt;
180
+ await this.mikro.em.populate(deviceCode, ['authorizedUser']);
181
+ const user = deviceCode.authorizedUser;
182
+ if (!user) {
183
+ throw new e.AuthorizationPending.Error();
184
+ }
185
+ return this.buildTokenResponse({
186
+ userSub: user.sub,
187
+ userEmail: user.email,
188
+ userEmailVerified: user.email_verified,
189
+ clientId: client.clientId,
190
+ scope: deviceCode.scope,
191
+ issueRefreshToken: client.grantTypes.includes('refresh_token') &&
192
+ deviceCode.scope.includes('offline_access'),
193
+ authTime: Math.floor((deviceCode.authorizedAt?.getTime() ?? Date.now()) / 1000),
194
+ });
195
+ }
134
196
  async refreshAccessTokenLocked(params) {
135
197
  const { refreshToken, clientId } = params;
136
198
  // 1. Verify refresh token (also checks revocation)
@@ -152,6 +214,12 @@ export class OAuthTokenService {
152
214
  const userData = await this.userService.userEntityToSessionUser(userEntity);
153
215
  // 4. Get client info
154
216
  const client = await this.oauthClientService.findByClientId(clientId);
217
+ const refreshTokenScopes = refreshPayload.scope.split(' ');
218
+ const requestedScopes = params.scope ?? refreshTokenScopes;
219
+ const invalidScopes = requestedScopes.filter((scope) => !refreshTokenScopes.includes(scope));
220
+ if (invalidScopes.length > 0) {
221
+ throw new e.InvalidScope.Error({ invalidScopes });
222
+ }
155
223
  // 5. Refresh Token Rotation: Revoke the old refresh token
156
224
  // This is a security best practice per OAuth 2.0 Security BCP §4.14.2
157
225
  // If an attacker tries to use a stolen refresh token after the legitimate
@@ -177,7 +245,7 @@ export class OAuthTokenService {
177
245
  userEmail: userData.email,
178
246
  userEmailVerified: userData.email_verified,
179
247
  clientId: client.clientId,
180
- scope: refreshPayload.scope.split(' '),
248
+ scope: requestedScopes,
181
249
  issueRefreshToken: true,
182
250
  grantId: refreshPayload.grant_id,
183
251
  });
@@ -1 +1 @@
1
- {"version":3,"file":"oauth-token.service.js","sourceRoot":"","sources":["../../src/services/oauth-token.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAEhF,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,CAAC,EAAE,MAAM,qBAAqB,CAAC;AAkFxC;;;;;;;;GAQG;AACH,MAAM,OAAO,iBAAiB;IACX,MAAM,CAAwB;IAC9B,KAAK,CAAe;IACpB,WAAW,CAAc;IACzB,kBAAkB,CAAqB;IACvC,UAAU,CAAa;IACvB,eAAe,CAAkB;IACjC,oBAAoB,GAAG,IAAI,GAAG,EAAyB,CAAC;IACzE,YACE,MAA6B,EAC7B,KAAmB,EACnB,WAAwB,EACxB,kBAAsC,EACtC,UAAsB,EACtB,eAAgC;QAEhC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;QAC7C,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;IACzC,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,KAAK,CAAC,yBAAyB,CAAC,MAAoC;QAClE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,YAAY,EAAE,GAAG,MAAM,CAAC;QAE7D,iFAAiF;QACjF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;QAEtE,+CAA+C;QAC/C,uDAAuD;QACvD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,eAAe,CACzD,YAAY,EACZ,IAAI,CACL,CAAC;QACF,MAAM,UAAU,GACd,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,iCAAiC,CAC1D,MAAM,CAAC,EAAE,EACT,QAAQ,CACT,CAAC;QAEJ,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,IAAI,CAAC,CAAC,wBAAwB,CAAC,KAAK,EAAE,CAAC;QAC/C,CAAC;QAED,IAAI,UAAU,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,EAAE,CAAC;YACtC,MAAM,IAAI,CAAC,CAAC,wBAAwB,CAAC,KAAK,EAAE,CAAC;QAC/C,CAAC;QAED,UAAU,CAAC,UAAU,GAAG,IAAI,IAAI,EAAE,CAAC;QACnC,MAAM,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;QAE5B,4BAA4B;QAC5B,MAAM,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;QAEnD,qDAAqD;QACrD,wDAAwD;QACxD,IAAI,UAAU,CAAC,WAAW,KAAK,WAAW,EAAE,CAAC;YAC3C,MAAM,IAAI,CAAC,CAAC,mBAAmB,CAAC,KAAK,EAAE,CAAC;QAC1C,CAAC;QAED,kEAAkE;QAClE,yEAAyE;QACzE,0EAA0E;QAC1E,2EAA2E;QAC3E,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,CAAC;YAC9B,IAAI,MAAM,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC3D,MAAM,IAAI,CAAC,CAAC,mBAAmB,CAAC,KAAK,EAAE,CAAC;YAC1C,CAAC;QACH,CAAC;aAAM,CAAC;YACN,IAAI,UAAU,CAAC,mBAAmB,KAAK,MAAM,EAAE,CAAC;gBAC9C,MAAM,IAAI,CAAC,CAAC,mBAAmB,CAAC,KAAK,EAAE,CAAC;YAC1C,CAAC;YAED,IAAI,CAAC,YAAY,EAAE,CAAC;gBAClB,MAAM,IAAI,CAAC,CAAC,mBAAmB,CAAC,KAAK,EAAE,CAAC;YAC1C,CAAC;YAED,MAAM,WAAW,GAAG,MAAM,YAAY,CACpC,YAAY,EACZ,UAAU,CAAC,aAAa,EACxB,UAAU,CAAC,mBAAmB,CAC/B,CAAC;YAEF,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjB,MAAM,IAAI,CAAC,CAAC,mBAAmB,CAAC,KAAK,EAAE,CAAC;YAC1C,CAAC;QACH,CAAC;QAED,gDAAgD;QAChD,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QAC1C,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,IAAI,CAAC,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;QACnC,CAAC;QAED,0BAA0B;QAC1B,OAAO,IAAI,CAAC,kBAAkB,CAAC;YAC7B,OAAO,EAAE,IAAI,CAAC,GAAG;YACjB,SAAS,EAAE,IAAI,CAAC,KAAK;YACrB,iBAAiB,EAAE,IAAI,CAAC,cAAc;YACtC,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,KAAK,EAAE,UAAU,CAAC,KAAK;YACvB,iBAAiB,EACf,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,eAAe,CAAC;gBAC3C,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC,gBAAgB,CAAC;YAC7C,KAAK,EAAE,UAAU,CAAC,KAAK;YACvB,gEAAgE;YAChE,sEAAsE;YACtE,GAAG,CAAC,UAAU,CAAC,QAAQ,IAAI,IAAI,IAAI;gBACjC,QAAQ,EAAE,UAAU,CAAC,QAAQ;aAC9B,CAAC;SACH,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACH,KAAK,CAAC,kBAAkB,CAAC,MAA+B;QACtD,MAAM,mBAAmB,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,CACrD,MAAM,CAAC,YAAY,CACpB,CAAC;QACF,MAAM,eAAe,GACnB,OAAO,mBAAmB,EAAE,GAAG,KAAK,QAAQ;YAC1C,CAAC,CAAC,mBAAmB,CAAC,GAAG;YACzB,CAAC,CAAC,SAAS,CAAC;QAEhB,IAAI,eAAe,EAAE,CAAC;YACpB,OAAO,IAAI,CAAC,4BAA4B,CAAC,eAAe,EAAE,GAAG,EAAE,CAC7D,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,CACtC,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,CAAC;IAC/C,CAAC;IAEO,KAAK,CAAC,wBAAwB,CAAC,MAA+B;QACpE,MAAM,EAAE,YAAY,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC;QAE1C,mDAAmD;QACnD,IAAI,cAAmC,CAAC;QACxC,IAAI,CAAC;YACH,cAAc,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAC;QAC1E,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,CAAC,gCAAgC,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;YACpE,MAAM,KAAK,CAAC;QACd,CAAC;QAED,8CAA8C;QAC9C,wDAAwD;QACxD,IAAI,cAAc,CAAC,SAAS,KAAK,QAAQ,EAAE,CAAC;YAC1C,MAAM,IAAI,CAAC,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;QACvC,CAAC;QAED,mDAAmD;QACnD,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;QACzE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,uBAAuB,CAAC,UAAU,CAAC,CAAC;QAE5E,qBAAqB;QACrB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;QAEtE,0DAA0D;QAC1D,sEAAsE;QACtE,0EAA0E;QAC1E,mEAAmE;QACnE,IAAI,CAAC,cAAc,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,CAAC;YAC/C,MAAM,IAAI,CAAC,CAAC,mBAAmB,CAAC,KAAK,EAAE,CAAC;QAC1C,CAAC;QAED,MAAM,qBAAqB,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,eAAe,CACzE;YACE,GAAG,EAAE,cAAc,CAAC,GAAG;YACvB,UAAU,EAAE,eAAe;YAC3B,QAAQ,EAAE,MAAM,CAAC,EAAE,EAAE,yBAAyB;YAC9C,OAAO,EAAE,QAAQ,CAAC,GAAG;YACrB,UAAU,EAAE,IAAI,IAAI,CAAC,cAAc,CAAC,GAAG,GAAG,IAAI,CAAC;SAChD,CACF,CAAC;QAEF,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAC3B,MAAM,IAAI,CAAC,wBAAwB,CAAC,cAAc,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;YAC/D,MAAM,IAAI,CAAC,CAAC,mBAAmB,CAAC,KAAK,EAAE,CAAC;QAC1C,CAAC;QAED,6DAA6D;QAC7D,6BAA6B;QAC7B,OAAO,IAAI,CAAC,kBAAkB,CAAC;YAC7B,OAAO,EAAE,QAAQ,CAAC,GAAG;YACrB,SAAS,EAAE,QAAQ,CAAC,KAAK;YACzB,iBAAiB,EAAE,QAAQ,CAAC,cAAc;YAC1C,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,KAAK,EAAE,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC;YACtC,iBAAiB,EAAE,IAAI;YACvB,OAAO,EAAE,cAAc,CAAC,QAAQ;SACjC,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,eAAe,CACnB,KAAa,EACb,aAAgD,EAChD,kBAA2B;QAE3B,sDAAsD;QACtD,IAAI,OAAO,GAAoD,IAAI,CAAC;QACpE,IAAI,SAAS,GAA4C,IAAI,CAAC;QAE9D,iEAAiE;QACjE,IAAI,aAAa,KAAK,cAAc,EAAE,CAAC;YACrC,IAAI,CAAC;gBACH,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;gBACzD,SAAS,GAAG,cAAc,CAAC;YAC7B,CAAC;YAAC,MAAM,CAAC;gBACP,iCAAiC;gBACjC,IAAI,CAAC;oBACH,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;oBAC1D,SAAS,GAAG,eAAe,CAAC;gBAC9B,CAAC;gBAAC,MAAM,CAAC;oBACP,wCAAwC;gBAC1C,CAAC;YACH,CAAC;QACH,CAAC;aAAM,IAAI,aAAa,KAAK,eAAe,EAAE,CAAC;YAC7C,IAAI,CAAC;gBACH,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;gBAC1D,SAAS,GAAG,eAAe,CAAC;YAC9B,CAAC;YAAC,MAAM,CAAC;gBACP,gCAAgC;gBAChC,IAAI,CAAC;oBACH,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;oBACzD,SAAS,GAAG,cAAc,CAAC;gBAC7B,CAAC;gBAAC,MAAM,CAAC;oBACP,wCAAwC;gBAC1C,CAAC;YACH,CAAC;QACH,CAAC;aAAM,CAAC;YACN,sCAAsC;YACtC,IAAI,CAAC;gBACH,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;gBACzD,SAAS,GAAG,cAAc,CAAC;YAC7B,CAAC;YAAC,MAAM,CAAC;gBACP,IAAI,CAAC;oBACH,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;oBAC1D,SAAS,GAAG,eAAe,CAAC;gBAC9B,CAAC;gBAAC,MAAM,CAAC;oBACP,wCAAwC;gBAC1C,CAAC;YACH,CAAC;QACH,CAAC;QAED,uDAAuD;QACvD,IAAI,OAAO,IAAI,SAAS,EAAE,CAAC;YACzB,IAAI,kBAAkB,IAAI,OAAO,CAAC,SAAS,KAAK,kBAAkB,EAAE,CAAC;gBACnE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;YAC3B,CAAC;YAED,OAAO;gBACL,MAAM,EAAE,IAAI;gBACZ,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,UAAU,EAAE,QAAQ;gBACpB,GAAG,CAAC,OAAO,CAAC,GAAG,KAAK,SAAS,IAAI,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC;gBACtD,GAAG,CAAC,OAAO,CAAC,GAAG,KAAK,SAAS,IAAI,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC;gBACtD,GAAG,EAAE,OAAO,CAAC,GAAG;gBAChB,GAAG,CAAC,OAAO,CAAC,GAAG,KAAK,SAAS,IAAI,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC;gBACtD,GAAG,CAAC,OAAO,CAAC,GAAG,KAAK,SAAS,IAAI,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC;aACvD,CAAC;QACJ,CAAC;QAED,mDAAmD;QACnD,6EAA6E;QAC7E,gFAAgF;QAChF,2EAA2E;QAC3E,iCAAiC;QACjC,OAAO;YACL,MAAM,EAAE,KAAK;SACd,CAAC;IACJ,CAAC;IAED;;;;;;;;;;OAUG;IACH,KAAK,CAAC,WAAW,CACf,KAAa,EACb,aAAgD,EAChD,kBAA2B;QAE3B,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,wBAAwB,CACtD,KAAK,EACL,aAAa,CACd,CAAC;QAEF,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,OAAO;QACT,CAAC;QAED,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,YAAY,CAAC;QAE5C,IAAI,kBAAkB,IAAI,OAAO,CAAC,SAAS,KAAK,kBAAkB,EAAE,CAAC;YACnE,OAAO;QACT,CAAC;QAED,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;QAC7B,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACjB,OAAO;QACT,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC;QAEvC,2BAA2B;QAC3B,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QACtE,IAAI,gBAAgB,EAAE,CAAC;YACrB,OAAO;QACT,CAAC;QAED,uDAAuD;QACvD,kFAAkF;QAClF,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QACvE,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC;YACxD,QAAQ,EAAE,OAAO,CAAC,SAAS;SAC5B,CAAC,CAAC;QAEH,IAAI,CAAC,UAAU,IAAI,CAAC,YAAY,EAAE,CAAC;YACjC,4EAA4E;YAC5E,OAAO;QACT,CAAC;QAED,0DAA0D;QAC1D,MAAM,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,WAAW,CAAC;YACxC,GAAG;YACH,UAAU,EAAE,SAAS;YACrB,QAAQ,EAAE,YAAY,CAAC,EAAE,EAAE,2BAA2B;YACtD,OAAO,EAAE,UAAU,CAAC,GAAG;YACvB,UAAU,EAAE,SAAS;SACtB,CAAC,CAAC;QAEH,IAAI,SAAS,KAAK,eAAe,EAAE,CAAC;YAClC,MAAM,IAAI,CAAC,wBAAwB,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC,CAAC;QAChE,CAAC;QAED,qEAAqE;QACrE,sEAAsE;QACtE,oEAAoE;QACpE,0CAA0C;QAC1C,EAAE;QACF,4EAA4E;QAC5E,0EAA0E;QAC1E,gFAAgF;IAClF,CAAC;IAEO,KAAK,CAAC,4BAA4B,CACxC,eAAuB,EACvB,SAA2B;QAE3B,MAAM,YAAY,GAAG,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QACpE,IAAI,WAAW,GAAe,GAAG,EAAE,GAAE,CAAC,CAAC;QACvC,MAAM,WAAW,GAAG,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;YAChD,WAAW,GAAG,OAAO,CAAC;QACxB,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,eAAe,EAAE,WAAW,CAAC,CAAC;QAE5D,IAAI,YAAY,EAAE,CAAC;YACjB,MAAM,YAAY,CAAC;QACrB,CAAC;QAED,IAAI,CAAC;YACH,OAAO,MAAM,SAAS,EAAE,CAAC;QAC3B,CAAC;gBAAS,CAAC;YACT,WAAW,EAAE,CAAC;YACd,IAAI,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,eAAe,CAAC,KAAK,WAAW,EAAE,CAAC;gBACnE,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;YACpD,CAAC;QACH,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,gCAAgC,CAC5C,YAAoB,EACpB,QAAgB;QAEhB,IAAI,CAAC;YACH,MAAM,cAAc,GAClB,MAAM,IAAI,CAAC,UAAU,CAAC,mCAAmC,CAAC,YAAY,CAAC,CAAC;YAE1E,IAAI,cAAc,CAAC,SAAS,KAAK,QAAQ,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,CAAC;gBACjE,OAAO;YACT,CAAC;YAED,MAAM,qBAAqB,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,SAAS,CACnE,cAAc,CAAC,GAAG,CACnB,CAAC;YACF,IAAI,CAAC,qBAAqB,EAAE,CAAC;gBAC3B,OAAO;YACT,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;YACtE,MAAM,IAAI,CAAC,wBAAwB,CAAC,cAAc,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;QACjE,CAAC;QAAC,MAAM,CAAC;YACP,0EAA0E;QAC5E,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,wBAAwB,CACpC,OAAiD,EACjD,cAAsB;QAEtB,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;YACtC,OAAO;QACT,CAAC;QAED,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC;QAC1C,MAAM,eAAe,GACnB,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAE3D,MAAM,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,WAAW,CAAC;YACxC,OAAO,EAAE,OAAO,CAAC,QAAQ;YACzB,QAAQ,EAAE,cAAc;YACxB,OAAO,EAAE,OAAO,CAAC,GAAG;YACpB,UAAU,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,eAAe,CAAC,CAAC;SAChE,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,wBAAwB,CACpC,KAAa,EACb,aAAgD;QAQhD,MAAM,iBAAiB,GAAG,KAAK,IAG5B,EAAE,CAAC,CAAC;YACL,OAAO,EAAE,MAAM,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,KAAK,CAAC;YACvD,SAAS,EAAE,cAAc;SAC1B,CAAC,CAAC;QACH,MAAM,kBAAkB,GAAG,KAAK,IAG7B,EAAE,CAAC,CAAC;YACL,OAAO,EAAE,MAAM,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,KAAK,CAAC;YACxD,SAAS,EAAE,eAAe;SAC3B,CAAC,CAAC;QAEH,MAAM,QAAQ,GACZ,aAAa,KAAK,eAAe;YAC/B,CAAC,CAAC,CAAC,kBAAkB,EAAE,iBAAiB,CAAC;YACzC,CAAC,CAAC,CAAC,iBAAiB,EAAE,kBAAkB,CAAC,CAAC;QAE9C,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAC/B,IAAI,CAAC;gBACH,OAAO,MAAM,OAAO,EAAE,CAAC;YACzB,CAAC;YAAC,MAAM,CAAC;gBACP,4EAA4E;YAC9E,CAAC;QACH,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;;;;;;;;OASG;IACK,KAAK,CAAC,aAAa,CAAC,WAAmB;QAC7C,mCAAmC;QACnC,MAAM,IAAI,GAAG,IAAI,UAAU,CACzB,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,CACxB,SAAS,EACT,aAAa,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC,CAC1C,CACF,CAAC;QACF,4DAA4D;QAC5D,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC;QACpD,mBAAmB;QACnB,OAAO,WAAW,CAAC,QAAQ,CAAC,CAAC;IAC/B,CAAC;IAED;;;;;OAKG;IACK,KAAK,CAAC,kBAAkB,CAAC,MAWhC;QACC,MAAM,EACJ,OAAO,EACP,SAAS,EACT,iBAAiB,EACjB,QAAQ,EACR,KAAK,EACL,iBAAiB,EACjB,OAAO,GAAG,MAAM,CAAC,UAAU,EAAE,EAC7B,KAAK,EACL,QAAQ,GACT,GAAG,MAAM,CAAC;QAEX,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAEpC,wCAAwC;QACxC,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC;YACxD,GAAG,EAAE,cAAc;YACnB,GAAG,EAAE,OAAO;YACZ,SAAS,EAAE,QAAQ;YACnB,KAAK,EAAE,WAAW;YAClB,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,aAAa;YACrC,QAAQ,EAAE,OAAO;SAClB,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAkB;YAC9B,YAAY,EAAE,WAAW;YACzB,UAAU,EAAE,QAAQ;YACpB,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,gBAAgB;YAC/C,KAAK,EAAE,WAAW;SACnB,CAAC;QAEF,IAAI,iBAAiB,EAAE,CAAC;YACtB,QAAQ,CAAC,aAAa,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC;gBAC9D,GAAG,EAAE,eAAe;gBACpB,GAAG,EAAE,OAAO;gBACZ,SAAS,EAAE,QAAQ;gBACnB,KAAK,EAAE,WAAW;gBAClB,QAAQ,EAAE,OAAO;aAClB,CAAC,CAAC;QACL,CAAC;QAED,mDAAmD;QACnD,IAAI,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC7B,MAAM,cAAc,GAShB;gBACF,GAAG,EAAE,OAAO;gBACZ,GAAG,EAAE,QAAQ;aACd,CAAC;YAEF,IAAI,KAAK,EAAE,CAAC;gBACV,cAAc,CAAC,KAAK,GAAG,KAAK,CAAC;YAC/B,CAAC;YAED,8CAA8C;YAC9C,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAC3B,cAAc,CAAC,SAAS,GAAG,QAAQ,CAAC;YACtC,CAAC;YAED,2CAA2C;YAC3C,oEAAoE;YACpE,wEAAwE;YACxE,cAAc,CAAC,OAAO,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;YAE/D,IAAI,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC5B,cAAc,CAAC,KAAK,GAAG,SAAS,CAAC;gBACjC,cAAc,CAAC,cAAc,GAAG,iBAAiB,CAAC;YACpD,CAAC;YAED,IAAI,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC9B,cAAc,CAAC,IAAI,GAAG,SAAS,CAAC;YAClC,CAAC;YAED,QAAQ,CAAC,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;QACxE,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;CACF"}
1
+ {"version":3,"file":"oauth-token.service.js","sourceRoot":"","sources":["../../src/services/oauth-token.service.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import type { TinyAuthRuntimeConfig } from '../lib/config/index.ts';
2
- export type OpaquePurpose = 'oauth-code' | 'totp-recovery';
2
+ export type OpaquePurpose = 'oauth-code' | 'oauth-device-code' | 'oauth-device-user-code' | 'totp-recovery';
3
3
  export declare class SecurityService {
4
4
  private readonly hashMasterSecret;
5
5
  private readonly pbkdf2Iterations;
@@ -1 +1 @@
1
- {"version":3,"file":"security.service.d.ts","sourceRoot":"","sources":["../../src/services/security.service.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAoBpE,MAAM,MAAM,aAAa,GAAG,YAAY,GAAG,eAAe,CAAC;AAU3D,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAa;IAC9C,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAS;IAC1C,OAAO,CAAC,QAAQ,CAAC,eAAe,CAA2C;gBAExD,MAAM,EAAE,qBAAqB;YAUlC,iBAAiB;YAiBjB,gBAAgB;YAyBhB,kBAAkB;IAyBnB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAI/C,cAAc,CACzB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,OAAO,CAAC;IAIN,gBAAgB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAIvD,kBAAkB,CAC7B,IAAI,EAAE,MAAM,EACZ,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,OAAO,CAAC;IAIN,eAAe,CAC1B,OAAO,EAAE,aAAa,EACtB,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,MAAM,CAAC;CAUnB"}
1
+ {"version":3,"file":"security.service.d.ts","sourceRoot":"","sources":["../../src/services/security.service.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAoBpE,MAAM,MAAM,aAAa,GACrB,YAAY,GACZ,mBAAmB,GACnB,wBAAwB,GACxB,eAAe,CAAC;AAYpB,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAa;IAC9C,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAS;IAC1C,OAAO,CAAC,QAAQ,CAAC,eAAe,CAA2C;gBAExD,MAAM,EAAE,qBAAqB;YAUlC,iBAAiB;YAiBjB,gBAAgB;YAyBhB,kBAAkB;IAyBnB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAI/C,cAAc,CACzB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,OAAO,CAAC;IAIN,gBAAgB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAIvD,kBAAkB,CAC7B,IAAI,EAAE,MAAM,EACZ,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,OAAO,CAAC;IAIN,eAAe,CAC1B,OAAO,EAAE,aAAa,EACtB,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,MAAM,CAAC;CAUnB"}
@@ -10,6 +10,8 @@ const PURPOSE_LABELS = {
10
10
  password: 'password-v1',
11
11
  'client-secret': 'client-secret-v1',
12
12
  'oauth-code': 'oauth-code-v1',
13
+ 'oauth-device-code': 'oauth-device-code-v1',
14
+ 'oauth-device-user-code': 'oauth-device-user-code-v1',
13
15
  'totp-recovery': 'totp-recovery-v1',
14
16
  };
15
17
  export class SecurityService {
@@ -1 +1 @@
1
- {"version":3,"file":"security.service.js","sourceRoot":"","sources":["../../src/services/security.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"security.service.js","sourceRoot":"","sources":["../../src/services/security.service.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tinyrack/tinyauth-server",
3
- "version": "0.4.0",
3
+ "version": "0.5.0",
4
4
  "type": "module",
5
5
  "description": "OpenID Connect Provider with OAuth2 support",
6
6
  "license": "MIT",
@@ -144,7 +144,7 @@
144
144
  "mikro-orm:compile:postgres": "mikro-orm compile --config ./src/entrypoints/database/postgres/cli.ts",
145
145
  "mikro-orm:compile:sqlite": "mikro-orm compile --config ./src/entrypoints/database/sqlite/cli.ts",
146
146
  "mikro-orm:debug": "mikro-orm debug",
147
- "mikro-orm:migration:create:postgres": "node ./scripts/mikro-orm-configured.mjs ./src/entrypoints/database/postgres/cli.ts migration:create",
148
- "mikro-orm:migration:create:sqlite": "node ./scripts/mikro-orm-configured.mjs ./src/entrypoints/database/sqlite/cli.ts migration:create"
147
+ "mikro-orm:migration:create:postgres": "node ./scripts/create-migration-with-baseline.mjs postgres",
148
+ "mikro-orm:migration:create:sqlite": "node ./scripts/create-migration-with-baseline.mjs sqlite"
149
149
  }
150
150
  }
package/readme.md CHANGED
@@ -22,7 +22,7 @@ It supports OAuth2/OIDC authorization code flows, PKCE, password login, passkeys
22
22
 
23
23
  ## Features
24
24
 
25
- - **OIDC/OAuth2 provider** with authorization code flow, PKCE, discovery, token, userinfo, introspection, and revocation endpoints
25
+ - **OIDC/OAuth2 provider** with authorization code flow, PKCE, discovery, token, userinfo, introspection, revocation, RP-initiated logout, client credentials, and device authorization endpoints
26
26
  - **Multiple sign-in methods** including password, passkeys/WebAuthn, GitHub, Google, Apple, and generic OAuth/OIDC providers
27
27
  - **Two-factor authentication** with TOTP and passkey-based second factors
28
28
  - **Config-driven deployment** through a single YAML file
@@ -98,6 +98,10 @@ Verify the OIDC discovery endpoint:
98
98
  curl http://localhost:8080/.well-known/openid-configuration
99
99
  ```
100
100
 
101
+ OAuth/OIDC error responses from OAuth endpoints include the standard `error` and `error_description` fields for client compatibility. TinyAuth also preserves its internal `code` and `message` fields for existing API consumers.
102
+
103
+ TinyAuth only advertises implemented provider capabilities in discovery metadata. Register `client_credentials` only for confidential clients with a `client_secret`, and register `urn:ietf:params:oauth:grant-type:device_code` only for clients that should use the device authorization flow.
104
+
101
105
  ## Examples
102
106
 
103
107
  - `examples/clients/nextjs-ssr` — Next.js OIDC client with server-side token handling