@withwiz/toolkit 0.4.1 → 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 (138) hide show
  1. package/dist/auth/adapters/prisma/index.d.ts +20 -4
  2. package/dist/auth/adapters/prisma/index.js +51 -61
  3. package/dist/auth/config.js +2 -2
  4. package/dist/auth/core/jwt/cookie.d.ts +1 -0
  5. package/dist/auth/core/jwt/cookie.js +3 -3
  6. package/dist/auth/core/jwt/index.d.ts +1 -1
  7. package/dist/auth/core/jwt/index.js +3 -3
  8. package/dist/auth/core/jwt/types.js +5 -7
  9. package/dist/auth/core/oauth/index.d.ts +17 -27
  10. package/dist/auth/core/oauth/index.js +18 -5
  11. package/dist/auth/core/oauth/providers/github.d.ts +12 -0
  12. package/dist/auth/core/oauth/providers/github.js +8 -0
  13. package/dist/auth/core/oauth/providers/google.d.ts +12 -0
  14. package/dist/auth/core/oauth/providers/google.js +8 -0
  15. package/dist/auth/core/oauth/providers/index.d.ts +3 -0
  16. package/dist/auth/core/oauth/providers/index.js +17 -0
  17. package/dist/auth/core/oauth/providers/kakao.d.ts +12 -0
  18. package/dist/auth/core/oauth/providers/kakao.js +8 -0
  19. package/dist/auth/core/password/client-helper.js +1 -1
  20. package/dist/auth/core/password/index.js +1 -1
  21. package/dist/auth/index.d.ts +2 -3
  22. package/dist/auth/index.js +23 -12
  23. package/dist/auth/types/index.d.ts +31 -31
  24. package/dist/auth/types/index.js +5 -7
  25. package/dist/cache/cache-config.js +4 -4
  26. package/dist/cache/cache-env.js +3 -3
  27. package/dist/cache/cache-factory.js +12 -12
  28. package/dist/cache/cache-invalidation.js +13 -13
  29. package/dist/cache/cache-redis.js +6 -6
  30. package/dist/cache/cache-wrapper.js +13 -13
  31. package/dist/cache/cache.js +20 -20
  32. package/dist/cache/hybrid-cache-manager.js +8 -8
  33. package/dist/cache/index.js +20 -20
  34. package/dist/cache/inmemory-cache-manager.js +5 -5
  35. package/dist/cache/noop-cache-manager.js +5 -5
  36. package/dist/cache/redis-cache-manager.js +7 -7
  37. package/dist/chunk-2QQNL4ND.js +62 -0
  38. package/dist/{chunk-5WP57PJK.js → chunk-3OZH2AMD.js} +7 -7
  39. package/dist/{chunk-WMQE2YK7.js → chunk-3WS5MO6P.js} +1 -1
  40. package/dist/{chunk-N3TAGJHR.js → chunk-4OCGUJL5.js} +2 -2
  41. package/dist/{chunk-GFAD4UAT.js → chunk-5HSGNXQ3.js} +1 -1
  42. package/dist/{chunk-NQQU6UFE.js → chunk-6OYE5XKI.js} +3 -3
  43. package/dist/{chunk-FD2TXDTO.js → chunk-6WI4HNAF.js} +2 -2
  44. package/dist/{chunk-J4TTSXDN.js → chunk-6XDE62WQ.js} +1 -1
  45. package/dist/{chunk-2VMTIYLX.js → chunk-7ZQQ6PJ4.js} +2 -2
  46. package/dist/{chunk-FUDEEQR3.js → chunk-D46PE6MU.js} +6 -6
  47. package/dist/{chunk-2F6KNGOD.js → chunk-DANUXNQU.js} +1 -1
  48. package/dist/{chunk-CRWMULHR.js → chunk-DSRRNRZW.js} +2 -2
  49. package/dist/{chunk-BJLLMVWW.js → chunk-ET6RH4LB.js} +1 -1
  50. package/dist/{chunk-OIRAH57Y.js → chunk-FNKFQFZJ.js} +1 -1
  51. package/dist/{chunk-S5UCZ2T3.js → chunk-G5WP3MJG.js} +1 -1
  52. package/dist/chunk-GBLNXNEH.js +64 -0
  53. package/dist/{chunk-HHCDMWEF.js → chunk-GCR4PGRY.js} +1 -1
  54. package/dist/{chunk-4HBAPPB2.js → chunk-HGLQXH4D.js} +2 -2
  55. package/dist/chunk-HZLJYEOO.js +92 -0
  56. package/dist/{chunk-LX2EYD74.js → chunk-I7NVWJ72.js} +2 -2
  57. package/dist/{chunk-X5RMDLLM.js → chunk-IEFYARHC.js} +2 -2
  58. package/dist/{chunk-3YUKCYHI.js → chunk-JY62DSMP.js} +8 -8
  59. package/dist/{chunk-G5OMETUS.js → chunk-LCKQOHXI.js} +1 -1
  60. package/dist/{chunk-GGSFZP6T.js → chunk-MF4CWGMB.js} +12 -12
  61. package/dist/{chunk-J5AISIJS.js → chunk-NDET73GO.js} +22 -18
  62. package/dist/{chunk-JOM3N4EJ.js → chunk-NGV527RO.js} +1 -1
  63. package/dist/{chunk-YSUL3SLC.js → chunk-OSDAP24S.js} +4 -4
  64. package/dist/{chunk-CUZPD3BF.js → chunk-PAYLVMZN.js} +2 -2
  65. package/dist/{chunk-6SOQUYOU.js → chunk-PYTRCD33.js} +2 -2
  66. package/dist/{chunk-6D3HHYER.js → chunk-QKC73SWB.js} +6 -12
  67. package/dist/{chunk-LFQ3IQQB.js → chunk-QO27AXIH.js} +2 -2
  68. package/dist/chunk-RVL5ROWQ.js +62 -0
  69. package/dist/{chunk-AQJAY5FA.js → chunk-S5KJZZKU.js} +1 -1
  70. package/dist/{chunk-K3HAYBWX.js → chunk-SNKCKED5.js} +1 -1
  71. package/dist/{chunk-N4D6OPPP.js → chunk-SUA4WQRN.js} +5 -3
  72. package/dist/chunk-T4MDCVUQ.js +0 -0
  73. package/dist/{chunk-L6AU74EI.js → chunk-TOVBPLHD.js} +3 -3
  74. package/dist/{chunk-7LJWRKDT.js → chunk-VIWM2ZZH.js} +1 -1
  75. package/dist/{chunk-KGHWGLED.js → chunk-W3IVVPS5.js} +4 -4
  76. package/dist/{chunk-3J7FDOCU.js → chunk-WBU53USI.js} +4 -4
  77. package/dist/{chunk-FPESPW6P.js → chunk-XA32Z2OV.js} +1 -1
  78. package/dist/{chunk-GQVBWZLH.js → chunk-Y22GDIM6.js} +2 -2
  79. package/dist/components/ui/DataTable.js +5 -5
  80. package/dist/components/ui/data-table/DataTable.js +5 -5
  81. package/dist/components/ui/data-table/DataTableFilters.js +2 -2
  82. package/dist/components/ui/data-table/DataTableSearch.js +2 -2
  83. package/dist/config/common.js +2 -2
  84. package/dist/constants/index.js +15 -15
  85. package/dist/error/error-display.js +2 -2
  86. package/dist/error/error-handler.js +5 -5
  87. package/dist/error/index.js +15 -15
  88. package/dist/geolocation/batch-processor.js +5 -5
  89. package/dist/geolocation/config.js +2 -2
  90. package/dist/geolocation/index.js +9 -9
  91. package/dist/geolocation/providers/index.js +5 -5
  92. package/dist/geolocation/providers/ipgeolocation-provider.js +3 -3
  93. package/dist/geolocation/providers/maxmind-provider.js +3 -3
  94. package/dist/initialize.js +9 -9
  95. package/dist/logger/config.js +2 -2
  96. package/dist/logger/logger.js +4 -4
  97. package/dist/middleware/auth.d.ts +1 -0
  98. package/dist/middleware/auth.js +9 -7
  99. package/dist/middleware/cors-config.js +2 -2
  100. package/dist/middleware/cors.js +6 -6
  101. package/dist/middleware/error-handler.js +7 -7
  102. package/dist/middleware/index.d.ts +1 -1
  103. package/dist/middleware/index.js +19 -17
  104. package/dist/middleware/middleware-chain.js +5 -5
  105. package/dist/middleware/rate-limit.d.ts +3 -7
  106. package/dist/middleware/rate-limit.js +5 -5
  107. package/dist/middleware/response-logger.js +5 -5
  108. package/dist/middleware/security.js +5 -5
  109. package/dist/middleware/types.d.ts +1 -1
  110. package/dist/middleware/wrappers.js +17 -17
  111. package/dist/storage/config.js +2 -2
  112. package/dist/storage/r2-storage.js +2 -2
  113. package/dist/system/cpu.js +6 -6
  114. package/dist/system/disk.js +6 -6
  115. package/dist/system/environment.js +8 -8
  116. package/dist/system/health-check.js +6 -6
  117. package/dist/system/index.js +13 -13
  118. package/dist/system/memory.js +6 -6
  119. package/dist/system/network.js +6 -6
  120. package/dist/system/utils.js +5 -5
  121. package/dist/types/geoip.d.ts +4 -4
  122. package/dist/types/qr-code.d.ts +20 -20
  123. package/dist/types/qr-code.js +4 -4
  124. package/dist/utils/cors.js +4 -4
  125. package/dist/utils/csv-export.js +5 -5
  126. package/dist/utils/error-processor.js +5 -5
  127. package/dist/utils/index.js +8 -8
  128. package/package.json +5 -1
  129. package/dist/chunk-V5K5FYU7.js +0 -200
  130. package/dist/{chunk-GFWGLWTS.js → chunk-23LXAAMU.js} +3 -3
  131. package/dist/{chunk-3CBGGMIY.js → chunk-2VNDWG6P.js} +3 -3
  132. package/dist/{chunk-OZE5KUS3.js → chunk-52BIDTZH.js} +3 -3
  133. package/dist/{chunk-OHBAELPZ.js → chunk-6O3I4ORK.js} +3 -3
  134. package/dist/{chunk-BJSEYZBH.js → chunk-I4UEUKSB.js} +3 -3
  135. package/dist/{chunk-SEZJN4TC.js → chunk-LJEGM4OO.js} +3 -3
  136. package/dist/{chunk-AYZJN32D.js → chunk-PL33DK2X.js} +3 -3
  137. package/dist/{chunk-KHYY4KCV.js → chunk-TH45RVP7.js} +3 -3
  138. package/dist/{chunk-SFPMFVSD.js → chunk-XICTHSUH.js} +3 -3
@@ -10,15 +10,11 @@ export interface Logger {
10
10
  warn(message: string, meta?: any): void;
11
11
  error(message: string, meta?: any): void;
12
12
  }
13
- export declare enum UserRole {
14
- USER = "USER",
15
- ADMIN = "ADMIN"
16
- }
17
13
  export interface JWTPayload {
18
14
  id: string;
19
15
  userId: string;
20
16
  email: string;
21
- role: UserRole;
17
+ role: string;
22
18
  emailVerified?: Date | null;
23
19
  tokenType?: 'access' | 'refresh';
24
20
  iat?: number;
@@ -34,10 +30,12 @@ export interface JWTConfig {
34
30
  refreshTokenExpiry: string;
35
31
  algorithm: 'HS256' | 'HS384' | 'HS512';
36
32
  }
37
- export declare enum OAuthProvider {
38
- GOOGLE = "google",
39
- GITHUB = "github"
40
- }
33
+ export declare const OAUTH_PROVIDERS: {
34
+ readonly GOOGLE: "google";
35
+ readonly GITHUB: "github";
36
+ readonly KAKAO: "kakao";
37
+ };
38
+ export type OAuthProviderName = typeof OAUTH_PROVIDERS[keyof typeof OAUTH_PROVIDERS];
41
39
  export interface OAuthUserInfo {
42
40
  id: string;
43
41
  email: string;
@@ -52,17 +50,19 @@ export interface OAuthTokenResponse {
52
50
  refresh_token?: string;
53
51
  scope?: string;
54
52
  }
53
+ export interface OAuthProviderConfig {
54
+ clientId: string;
55
+ clientSecret: string;
56
+ redirectUri: string;
57
+ }
55
58
  export interface OAuthConfig {
56
- google?: {
57
- clientId: string;
58
- clientSecret: string;
59
- redirectUri: string;
60
- };
61
- github?: {
62
- clientId: string;
63
- clientSecret: string;
64
- redirectUri: string;
65
- };
59
+ providers: Record<string, OAuthProviderConfig>;
60
+ }
61
+ export interface IOAuthProviderAdapter {
62
+ readonly name: string;
63
+ getLoginUrl(config: OAuthProviderConfig, state?: string): string;
64
+ exchangeCodeForToken(config: OAuthProviderConfig, code: string): Promise<OAuthTokenResponse>;
65
+ getUserInfo(accessToken: string): Promise<OAuthUserInfo>;
66
66
  }
67
67
  export declare enum PasswordStrength {
68
68
  VERY_WEAK = "VERY_WEAK",
@@ -93,13 +93,13 @@ export declare enum TokenType {
93
93
  export interface BaseUser {
94
94
  id: string;
95
95
  email: string;
96
- name: string | null;
97
- role: UserRole;
98
- emailVerified: Date | null;
99
- isActive: boolean;
100
- image: string | null;
101
- createdAt: Date;
102
- updatedAt: Date;
96
+ name?: string | null;
97
+ role?: string;
98
+ emailVerified?: Date | null;
99
+ isActive?: boolean;
100
+ image?: string | null;
101
+ createdAt?: Date;
102
+ updatedAt?: Date;
103
103
  }
104
104
  export interface UserRepository {
105
105
  findById(id: string): Promise<BaseUser | null>;
@@ -114,7 +114,7 @@ export interface CreateUserData {
114
114
  email: string;
115
115
  password?: string | null;
116
116
  name?: string | null;
117
- role?: UserRole;
117
+ role?: string;
118
118
  emailVerified?: Date | null;
119
119
  image?: string | null;
120
120
  }
@@ -122,7 +122,7 @@ export interface UpdateUserData {
122
122
  email?: string;
123
123
  password?: string;
124
124
  name?: string | null;
125
- role?: UserRole;
125
+ role?: string;
126
126
  emailVerified?: Date | null;
127
127
  isActive?: boolean;
128
128
  image?: string | null;
@@ -130,7 +130,7 @@ export interface UpdateUserData {
130
130
  export interface OAuthAccount {
131
131
  id: string;
132
132
  userId: string;
133
- provider: OAuthProvider;
133
+ provider: string;
134
134
  providerAccountId: string;
135
135
  accessToken: string | null;
136
136
  refreshToken: string | null;
@@ -141,7 +141,7 @@ export interface OAuthAccount {
141
141
  updatedAt: Date;
142
142
  }
143
143
  export interface OAuthAccountRepository {
144
- findByProvider(provider: OAuthProvider, providerAccountId: string): Promise<OAuthAccount | null>;
144
+ findByProvider(provider: string, providerAccountId: string): Promise<OAuthAccount | null>;
145
145
  findByUserId(userId: string): Promise<OAuthAccount[]>;
146
146
  create(data: CreateOAuthAccountData): Promise<OAuthAccount>;
147
147
  update(id: string, data: UpdateOAuthAccountData): Promise<OAuthAccount>;
@@ -149,7 +149,7 @@ export interface OAuthAccountRepository {
149
149
  }
150
150
  export interface CreateOAuthAccountData {
151
151
  userId: string;
152
- provider: OAuthProvider;
152
+ provider: string;
153
153
  providerAccountId: string;
154
154
  accessToken?: string | null;
155
155
  refreshToken?: string | null;
@@ -1,13 +1,11 @@
1
1
  import {
2
- OAuthProvider,
2
+ OAUTH_PROVIDERS,
3
3
  PasswordStrength,
4
- TokenType,
5
- UserRole
6
- } from "../../chunk-6D3HHYER.js";
4
+ TokenType
5
+ } from "../../chunk-QKC73SWB.js";
7
6
  import "../../chunk-ORMEWXMH.js";
8
7
  export {
9
- OAuthProvider,
8
+ OAUTH_PROVIDERS,
10
9
  PasswordStrength,
11
- TokenType,
12
- UserRole
10
+ TokenType
13
11
  };
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  getCacheConfig,
3
3
  getCacheTTL
4
- } from "../chunk-7LJWRKDT.js";
5
- import "../chunk-BJLLMVWW.js";
4
+ } from "../chunk-VIWM2ZZH.js";
5
+ import "../chunk-ET6RH4LB.js";
6
6
  import "../chunk-UCIUAZQT.js";
7
- import "../chunk-SFPMFVSD.js";
8
- import "../chunk-K25ICPU4.js";
7
+ import "../chunk-XICTHSUH.js";
9
8
  import "../chunk-2QH66EVQ.js";
9
+ import "../chunk-K25ICPU4.js";
10
10
  import "../chunk-57W32BFZ.js";
11
11
  import "../chunk-ORMEWXMH.js";
12
12
  export {
@@ -6,11 +6,11 @@ import {
6
6
  getEnv,
7
7
  isCacheEnabled,
8
8
  validateRedisEnvironment
9
- } from "../chunk-BJLLMVWW.js";
9
+ } from "../chunk-ET6RH4LB.js";
10
10
  import "../chunk-UCIUAZQT.js";
11
- import "../chunk-SFPMFVSD.js";
12
- import "../chunk-K25ICPU4.js";
11
+ import "../chunk-XICTHSUH.js";
13
12
  import "../chunk-2QH66EVQ.js";
13
+ import "../chunk-K25ICPU4.js";
14
14
  import "../chunk-57W32BFZ.js";
15
15
  import "../chunk-ORMEWXMH.js";
16
16
  export {
@@ -3,24 +3,24 @@ import {
3
3
  geoCache,
4
4
  getCacheManager,
5
5
  getEffectiveCacheBackend
6
- } from "../chunk-GGSFZP6T.js";
7
- import "../chunk-CRWMULHR.js";
8
- import "../chunk-NQQU6UFE.js";
9
- import "../chunk-FUDEEQR3.js";
6
+ } from "../chunk-MF4CWGMB.js";
7
+ import "../chunk-D46PE6MU.js";
8
+ import "../chunk-6XDE62WQ.js";
9
+ import "../chunk-DSRRNRZW.js";
10
+ import "../chunk-6OYE5XKI.js";
10
11
  import {
11
12
  getRedisGlobalStatus,
12
13
  isRedisGloballyDisabled
13
- } from "../chunk-X5RMDLLM.js";
14
- import "../chunk-J4TTSXDN.js";
15
- import "../chunk-GQVBWZLH.js";
14
+ } from "../chunk-IEFYARHC.js";
15
+ import "../chunk-Y22GDIM6.js";
16
16
  import "../chunk-SS56XFLI.js";
17
- import "../chunk-OHBAELPZ.js";
18
- import "../chunk-7LJWRKDT.js";
19
- import "../chunk-BJLLMVWW.js";
17
+ import "../chunk-6O3I4ORK.js";
18
+ import "../chunk-VIWM2ZZH.js";
19
+ import "../chunk-ET6RH4LB.js";
20
20
  import "../chunk-UCIUAZQT.js";
21
- import "../chunk-SFPMFVSD.js";
22
- import "../chunk-K25ICPU4.js";
21
+ import "../chunk-XICTHSUH.js";
23
22
  import "../chunk-2QH66EVQ.js";
23
+ import "../chunk-K25ICPU4.js";
24
24
  import "../chunk-57W32BFZ.js";
25
25
  import "../chunk-ORMEWXMH.js";
26
26
  export {
@@ -3,22 +3,22 @@ import {
3
3
  deletePatternFromCache,
4
4
  deletePatternFromMultipleCaches,
5
5
  invalidateCache
6
- } from "../chunk-GFAD4UAT.js";
7
- import "../chunk-GGSFZP6T.js";
8
- import "../chunk-CRWMULHR.js";
9
- import "../chunk-NQQU6UFE.js";
10
- import "../chunk-FUDEEQR3.js";
11
- import "../chunk-X5RMDLLM.js";
12
- import "../chunk-J4TTSXDN.js";
13
- import "../chunk-GQVBWZLH.js";
6
+ } from "../chunk-5HSGNXQ3.js";
7
+ import "../chunk-MF4CWGMB.js";
8
+ import "../chunk-D46PE6MU.js";
9
+ import "../chunk-6XDE62WQ.js";
10
+ import "../chunk-DSRRNRZW.js";
11
+ import "../chunk-6OYE5XKI.js";
12
+ import "../chunk-IEFYARHC.js";
13
+ import "../chunk-Y22GDIM6.js";
14
14
  import "../chunk-SS56XFLI.js";
15
- import "../chunk-OHBAELPZ.js";
16
- import "../chunk-7LJWRKDT.js";
17
- import "../chunk-BJLLMVWW.js";
15
+ import "../chunk-6O3I4ORK.js";
16
+ import "../chunk-VIWM2ZZH.js";
17
+ import "../chunk-ET6RH4LB.js";
18
18
  import "../chunk-UCIUAZQT.js";
19
- import "../chunk-SFPMFVSD.js";
20
- import "../chunk-K25ICPU4.js";
19
+ import "../chunk-XICTHSUH.js";
21
20
  import "../chunk-2QH66EVQ.js";
21
+ import "../chunk-K25ICPU4.js";
22
22
  import "../chunk-57W32BFZ.js";
23
23
  import "../chunk-ORMEWXMH.js";
24
24
  export {
@@ -7,14 +7,14 @@ import {
7
7
  logRedisInitialization,
8
8
  notifyRedisError,
9
9
  resetRedisGlobalState
10
- } from "../chunk-X5RMDLLM.js";
11
- import "../chunk-GQVBWZLH.js";
12
- import "../chunk-OHBAELPZ.js";
13
- import "../chunk-BJLLMVWW.js";
10
+ } from "../chunk-IEFYARHC.js";
11
+ import "../chunk-Y22GDIM6.js";
12
+ import "../chunk-6O3I4ORK.js";
13
+ import "../chunk-ET6RH4LB.js";
14
14
  import "../chunk-UCIUAZQT.js";
15
- import "../chunk-SFPMFVSD.js";
16
- import "../chunk-K25ICPU4.js";
15
+ import "../chunk-XICTHSUH.js";
17
16
  import "../chunk-2QH66EVQ.js";
17
+ import "../chunk-K25ICPU4.js";
18
18
  import "../chunk-57W32BFZ.js";
19
19
  import "../chunk-ORMEWXMH.js";
20
20
  export {
@@ -2,22 +2,22 @@ import {
2
2
  cacheMetrics,
3
3
  getCacheBackendLabel,
4
4
  withCache
5
- } from "../chunk-YSUL3SLC.js";
6
- import "../chunk-GGSFZP6T.js";
7
- import "../chunk-CRWMULHR.js";
8
- import "../chunk-NQQU6UFE.js";
9
- import "../chunk-FUDEEQR3.js";
10
- import "../chunk-X5RMDLLM.js";
11
- import "../chunk-J4TTSXDN.js";
12
- import "../chunk-GQVBWZLH.js";
5
+ } from "../chunk-OSDAP24S.js";
6
+ import "../chunk-MF4CWGMB.js";
7
+ import "../chunk-D46PE6MU.js";
8
+ import "../chunk-6XDE62WQ.js";
9
+ import "../chunk-DSRRNRZW.js";
10
+ import "../chunk-6OYE5XKI.js";
11
+ import "../chunk-IEFYARHC.js";
12
+ import "../chunk-Y22GDIM6.js";
13
13
  import "../chunk-SS56XFLI.js";
14
- import "../chunk-OHBAELPZ.js";
15
- import "../chunk-7LJWRKDT.js";
16
- import "../chunk-BJLLMVWW.js";
14
+ import "../chunk-6O3I4ORK.js";
15
+ import "../chunk-VIWM2ZZH.js";
16
+ import "../chunk-ET6RH4LB.js";
17
17
  import "../chunk-UCIUAZQT.js";
18
- import "../chunk-SFPMFVSD.js";
19
- import "../chunk-K25ICPU4.js";
18
+ import "../chunk-XICTHSUH.js";
20
19
  import "../chunk-2QH66EVQ.js";
20
+ import "../chunk-K25ICPU4.js";
21
21
  import "../chunk-57W32BFZ.js";
22
22
  import "../chunk-ORMEWXMH.js";
23
23
  export {
@@ -1,26 +1,29 @@
1
1
  import "../chunk-EBUEBEJX.js";
2
+ import {
3
+ invalidateCache
4
+ } from "../chunk-5HSGNXQ3.js";
2
5
  import {
3
6
  cacheMetrics,
4
7
  withCache
5
- } from "../chunk-YSUL3SLC.js";
6
- import {
7
- invalidateCache
8
- } from "../chunk-GFAD4UAT.js";
8
+ } from "../chunk-OSDAP24S.js";
9
9
  import {
10
10
  cache,
11
11
  geoCache,
12
12
  getCacheManager,
13
13
  getEffectiveCacheBackend
14
- } from "../chunk-GGSFZP6T.js";
14
+ } from "../chunk-MF4CWGMB.js";
15
+ import {
16
+ HybridCacheManager
17
+ } from "../chunk-D46PE6MU.js";
18
+ import {
19
+ InMemoryCacheManager
20
+ } from "../chunk-6XDE62WQ.js";
15
21
  import {
16
22
  NoopCacheManager
17
- } from "../chunk-CRWMULHR.js";
23
+ } from "../chunk-DSRRNRZW.js";
18
24
  import {
19
25
  RedisCacheManager
20
- } from "../chunk-NQQU6UFE.js";
21
- import {
22
- HybridCacheManager
23
- } from "../chunk-FUDEEQR3.js";
26
+ } from "../chunk-6OYE5XKI.js";
24
27
  import {
25
28
  checkRedisConnection,
26
29
  getRedisClient,
@@ -30,32 +33,29 @@ import {
30
33
  logRedisInitialization,
31
34
  notifyRedisError,
32
35
  resetRedisGlobalState
33
- } from "../chunk-X5RMDLLM.js";
34
- import {
35
- InMemoryCacheManager
36
- } from "../chunk-J4TTSXDN.js";
37
- import "../chunk-GQVBWZLH.js";
36
+ } from "../chunk-IEFYARHC.js";
37
+ import "../chunk-Y22GDIM6.js";
38
38
  import "../chunk-SS56XFLI.js";
39
- import "../chunk-OHBAELPZ.js";
39
+ import "../chunk-6O3I4ORK.js";
40
40
  import {
41
41
  getCacheConfig,
42
42
  getCacheTTL
43
- } from "../chunk-7LJWRKDT.js";
43
+ } from "../chunk-VIWM2ZZH.js";
44
44
  import {
45
45
  getConfig,
46
46
  getENV,
47
47
  getEnv,
48
48
  isCacheEnabled,
49
49
  validateRedisEnvironment
50
- } from "../chunk-BJLLMVWW.js";
50
+ } from "../chunk-ET6RH4LB.js";
51
51
  import {
52
52
  getResolvedCacheConfig,
53
53
  initializeCache,
54
54
  resetCache
55
55
  } from "../chunk-UCIUAZQT.js";
56
- import "../chunk-SFPMFVSD.js";
57
- import "../chunk-K25ICPU4.js";
56
+ import "../chunk-XICTHSUH.js";
58
57
  import "../chunk-2QH66EVQ.js";
58
+ import "../chunk-K25ICPU4.js";
59
59
  import {
60
60
  CACHE_DURATION_DEFAULTS,
61
61
  CACHE_ENV_VARS,
@@ -1,16 +1,16 @@
1
1
  import {
2
2
  HybridCacheManager
3
- } from "../chunk-FUDEEQR3.js";
4
- import "../chunk-X5RMDLLM.js";
5
- import "../chunk-J4TTSXDN.js";
6
- import "../chunk-GQVBWZLH.js";
3
+ } from "../chunk-D46PE6MU.js";
4
+ import "../chunk-6XDE62WQ.js";
5
+ import "../chunk-IEFYARHC.js";
6
+ import "../chunk-Y22GDIM6.js";
7
7
  import "../chunk-SS56XFLI.js";
8
- import "../chunk-OHBAELPZ.js";
9
- import "../chunk-BJLLMVWW.js";
8
+ import "../chunk-6O3I4ORK.js";
9
+ import "../chunk-ET6RH4LB.js";
10
10
  import "../chunk-UCIUAZQT.js";
11
- import "../chunk-SFPMFVSD.js";
12
- import "../chunk-K25ICPU4.js";
11
+ import "../chunk-XICTHSUH.js";
13
12
  import "../chunk-2QH66EVQ.js";
13
+ import "../chunk-K25ICPU4.js";
14
14
  import "../chunk-57W32BFZ.js";
15
15
  import "../chunk-ORMEWXMH.js";
16
16
  export {
@@ -1,26 +1,29 @@
1
1
  import "../chunk-EBUEBEJX.js";
2
+ import {
3
+ invalidateCache
4
+ } from "../chunk-5HSGNXQ3.js";
2
5
  import {
3
6
  cacheMetrics,
4
7
  withCache
5
- } from "../chunk-YSUL3SLC.js";
6
- import {
7
- invalidateCache
8
- } from "../chunk-GFAD4UAT.js";
8
+ } from "../chunk-OSDAP24S.js";
9
9
  import {
10
10
  cache,
11
11
  geoCache,
12
12
  getCacheManager,
13
13
  getEffectiveCacheBackend
14
- } from "../chunk-GGSFZP6T.js";
14
+ } from "../chunk-MF4CWGMB.js";
15
+ import {
16
+ HybridCacheManager
17
+ } from "../chunk-D46PE6MU.js";
18
+ import {
19
+ InMemoryCacheManager
20
+ } from "../chunk-6XDE62WQ.js";
15
21
  import {
16
22
  NoopCacheManager
17
- } from "../chunk-CRWMULHR.js";
23
+ } from "../chunk-DSRRNRZW.js";
18
24
  import {
19
25
  RedisCacheManager
20
- } from "../chunk-NQQU6UFE.js";
21
- import {
22
- HybridCacheManager
23
- } from "../chunk-FUDEEQR3.js";
26
+ } from "../chunk-6OYE5XKI.js";
24
27
  import {
25
28
  checkRedisConnection,
26
29
  getRedisClient,
@@ -30,32 +33,29 @@ import {
30
33
  logRedisInitialization,
31
34
  notifyRedisError,
32
35
  resetRedisGlobalState
33
- } from "../chunk-X5RMDLLM.js";
34
- import {
35
- InMemoryCacheManager
36
- } from "../chunk-J4TTSXDN.js";
37
- import "../chunk-GQVBWZLH.js";
36
+ } from "../chunk-IEFYARHC.js";
37
+ import "../chunk-Y22GDIM6.js";
38
38
  import "../chunk-SS56XFLI.js";
39
- import "../chunk-OHBAELPZ.js";
39
+ import "../chunk-6O3I4ORK.js";
40
40
  import {
41
41
  getCacheConfig,
42
42
  getCacheTTL
43
- } from "../chunk-7LJWRKDT.js";
43
+ } from "../chunk-VIWM2ZZH.js";
44
44
  import {
45
45
  getConfig,
46
46
  getENV,
47
47
  getEnv,
48
48
  isCacheEnabled,
49
49
  validateRedisEnvironment
50
- } from "../chunk-BJLLMVWW.js";
50
+ } from "../chunk-ET6RH4LB.js";
51
51
  import {
52
52
  getResolvedCacheConfig,
53
53
  initializeCache,
54
54
  resetCache
55
55
  } from "../chunk-UCIUAZQT.js";
56
- import "../chunk-SFPMFVSD.js";
57
- import "../chunk-K25ICPU4.js";
56
+ import "../chunk-XICTHSUH.js";
58
57
  import "../chunk-2QH66EVQ.js";
58
+ import "../chunk-K25ICPU4.js";
59
59
  import {
60
60
  CACHE_DURATION_DEFAULTS,
61
61
  CACHE_ENV_VARS,
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  InMemoryCacheManager
3
- } from "../chunk-J4TTSXDN.js";
4
- import "../chunk-GQVBWZLH.js";
3
+ } from "../chunk-6XDE62WQ.js";
4
+ import "../chunk-Y22GDIM6.js";
5
5
  import "../chunk-SS56XFLI.js";
6
- import "../chunk-OHBAELPZ.js";
7
- import "../chunk-SFPMFVSD.js";
8
- import "../chunk-K25ICPU4.js";
6
+ import "../chunk-6O3I4ORK.js";
7
+ import "../chunk-XICTHSUH.js";
9
8
  import "../chunk-2QH66EVQ.js";
9
+ import "../chunk-K25ICPU4.js";
10
10
  import "../chunk-ORMEWXMH.js";
11
11
  export {
12
12
  InMemoryCacheManager
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  NoopCacheManager
3
- } from "../chunk-CRWMULHR.js";
4
- import "../chunk-7LJWRKDT.js";
5
- import "../chunk-BJLLMVWW.js";
3
+ } from "../chunk-DSRRNRZW.js";
4
+ import "../chunk-VIWM2ZZH.js";
5
+ import "../chunk-ET6RH4LB.js";
6
6
  import "../chunk-UCIUAZQT.js";
7
- import "../chunk-SFPMFVSD.js";
8
- import "../chunk-K25ICPU4.js";
7
+ import "../chunk-XICTHSUH.js";
9
8
  import "../chunk-2QH66EVQ.js";
9
+ import "../chunk-K25ICPU4.js";
10
10
  import "../chunk-57W32BFZ.js";
11
11
  import "../chunk-ORMEWXMH.js";
12
12
  export {
@@ -1,14 +1,14 @@
1
1
  import {
2
2
  RedisCacheManager
3
- } from "../chunk-NQQU6UFE.js";
4
- import "../chunk-X5RMDLLM.js";
5
- import "../chunk-GQVBWZLH.js";
6
- import "../chunk-OHBAELPZ.js";
7
- import "../chunk-BJLLMVWW.js";
3
+ } from "../chunk-6OYE5XKI.js";
4
+ import "../chunk-IEFYARHC.js";
5
+ import "../chunk-Y22GDIM6.js";
6
+ import "../chunk-6O3I4ORK.js";
7
+ import "../chunk-ET6RH4LB.js";
8
8
  import "../chunk-UCIUAZQT.js";
9
- import "../chunk-SFPMFVSD.js";
10
- import "../chunk-K25ICPU4.js";
9
+ import "../chunk-XICTHSUH.js";
11
10
  import "../chunk-2QH66EVQ.js";
11
+ import "../chunk-K25ICPU4.js";
12
12
  import "../chunk-57W32BFZ.js";
13
13
  import "../chunk-ORMEWXMH.js";
14
14
  export {
@@ -0,0 +1,62 @@
1
+ import {
2
+ OAuthError
3
+ } from "./chunk-AIH3F7JV.js";
4
+
5
+ // src/auth/core/oauth/providers/kakao.ts
6
+ var KakaoOAuthProvider = class {
7
+ constructor() {
8
+ this.name = "kakao";
9
+ }
10
+ getLoginUrl(config, state) {
11
+ const params = new URLSearchParams({
12
+ client_id: config.clientId,
13
+ redirect_uri: config.redirectUri,
14
+ response_type: "code",
15
+ scope: "profile_nickname profile_image account_email"
16
+ });
17
+ if (state) {
18
+ params.set("state", state);
19
+ }
20
+ return `https://kauth.kakao.com/oauth/authorize?${params.toString()}`;
21
+ }
22
+ async exchangeCodeForToken(config, code) {
23
+ const response = await fetch("https://kauth.kakao.com/oauth/token", {
24
+ method: "POST",
25
+ headers: { "Content-Type": "application/x-www-form-urlencoded" },
26
+ body: new URLSearchParams({
27
+ client_id: config.clientId,
28
+ client_secret: config.clientSecret,
29
+ code,
30
+ grant_type: "authorization_code",
31
+ redirect_uri: config.redirectUri
32
+ })
33
+ });
34
+ if (!response.ok) {
35
+ const errorData = await response.text();
36
+ throw new OAuthError(`Kakao token exchange failed: ${errorData}`, "TOKEN_EXCHANGE_FAILED");
37
+ }
38
+ return response.json();
39
+ }
40
+ async getUserInfo(accessToken) {
41
+ const response = await fetch("https://kapi.kakao.com/v2/user/me", {
42
+ headers: { Authorization: `Bearer ${accessToken}` }
43
+ });
44
+ if (!response.ok) {
45
+ throw new OAuthError("Failed to get Kakao user info", "USER_INFO_FAILED");
46
+ }
47
+ const data = await response.json();
48
+ const account = data.kakao_account || {};
49
+ const profile = account.profile || {};
50
+ return {
51
+ id: data.id.toString(),
52
+ email: account.email,
53
+ name: profile.nickname || null,
54
+ image: profile.profile_image_url || null,
55
+ emailVerified: account.is_email_verified || false
56
+ };
57
+ }
58
+ };
59
+
60
+ export {
61
+ KakaoOAuthProvider
62
+ };
@@ -1,26 +1,26 @@
1
1
  import {
2
2
  MiddlewareChain
3
- } from "./chunk-FPESPW6P.js";
3
+ } from "./chunk-XA32Z2OV.js";
4
4
  import {
5
5
  rateLimitMiddleware
6
- } from "./chunk-AQJAY5FA.js";
6
+ } from "./chunk-S5KJZZKU.js";
7
7
  import {
8
8
  responseLoggerMiddleware
9
- } from "./chunk-OIRAH57Y.js";
9
+ } from "./chunk-FNKFQFZJ.js";
10
10
  import {
11
11
  securityMiddleware
12
- } from "./chunk-WMQE2YK7.js";
12
+ } from "./chunk-3WS5MO6P.js";
13
13
  import {
14
14
  adminMiddleware,
15
15
  authMiddleware,
16
16
  optionalAuthMiddleware
17
- } from "./chunk-J5AISIJS.js";
17
+ } from "./chunk-NDET73GO.js";
18
18
  import {
19
19
  corsMiddleware
20
- } from "./chunk-KGHWGLED.js";
20
+ } from "./chunk-W3IVVPS5.js";
21
21
  import {
22
22
  errorHandlerMiddleware
23
- } from "./chunk-3YUKCYHI.js";
23
+ } from "./chunk-JY62DSMP.js";
24
24
  import {
25
25
  initRequestMiddleware
26
26
  } from "./chunk-62Q7DN5G.js";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  logger
3
- } from "./chunk-GQVBWZLH.js";
3
+ } from "./chunk-Y22GDIM6.js";
4
4
 
5
5
  // src/middleware/security.ts
6
6
  import { NextResponse } from "next/server";