@withwiz/toolkit 0.3.2 → 0.4.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 (51) hide show
  1. package/dist/auth/core/jwt/cookie.d.ts +21 -0
  2. package/dist/auth/core/jwt/cookie.js +9 -0
  3. package/dist/auth/core/jwt/index.d.ts +2 -0
  4. package/dist/auth/core/jwt/index.js +8 -2
  5. package/dist/auth/index.js +18 -17
  6. package/dist/{chunk-E54MAI4I.js → chunk-2F6KNGOD.js} +2 -2
  7. package/dist/{chunk-BKJPYZYO.js → chunk-3YUKCYHI.js} +4 -4
  8. package/dist/{chunk-S54PFAEU.js → chunk-7VTBRP5M.js} +2 -2
  9. package/dist/chunk-AJLUPYCQ.js +50 -0
  10. package/dist/{chunk-HCF3C3AQ.js → chunk-AKD4YMJU.js} +0 -61
  11. package/dist/{chunk-6MI4XLWC.js → chunk-AQJAY5FA.js} +2 -2
  12. package/dist/{chunk-TQJDNWBL.js → chunk-BJSEYZBH.js} +3 -3
  13. package/dist/{chunk-KXXROUA5.js → chunk-EOEMOXNT.js} +1 -44
  14. package/dist/{chunk-A6V6XVPZ.js → chunk-J5AISIJS.js} +18 -12
  15. package/dist/{chunk-Y2JYA2AR.js → chunk-JNJALNRR.js} +2 -2
  16. package/dist/{chunk-2KDLKHTO.js → chunk-L6AU74EI.js} +2 -14
  17. package/dist/{chunk-IYXMGIEP.js → chunk-ON4ENPUS.js} +0 -61
  18. package/dist/{chunk-SNVGJPPX.js → chunk-SNTLJ646.js} +0 -80
  19. package/dist/{chunk-7JWIX5BS.js → chunk-WMJ5M45N.js} +1 -1
  20. package/dist/{chunk-QVWDWROP.js → chunk-WMQE2YK7.js} +58 -0
  21. package/dist/{chunk-NQS7UT6X.js → chunk-YP5SAHAP.js} +4 -4
  22. package/dist/constants/error-codes.d.ts +0 -78
  23. package/dist/constants/error-codes.js +1 -1
  24. package/dist/constants/index.js +23 -23
  25. package/dist/error/app-error.d.ts +3 -16
  26. package/dist/error/app-error.js +2 -2
  27. package/dist/error/error-display.js +7 -7
  28. package/dist/error/error-handler.d.ts +0 -24
  29. package/dist/error/error-handler.js +3 -3
  30. package/dist/error/friendly-messages-v2.js +5 -5
  31. package/dist/error/friendly-messages.js +1 -15
  32. package/dist/error/index.js +8 -8
  33. package/dist/error/messages/en.js +1 -1
  34. package/dist/error/messages/index.js +3 -3
  35. package/dist/error/messages/ko.js +1 -1
  36. package/dist/middleware/auth.d.ts +5 -2
  37. package/dist/middleware/auth.js +5 -4
  38. package/dist/middleware/error-handler.js +7 -7
  39. package/dist/middleware/index.d.ts +1 -1
  40. package/dist/middleware/index.js +15 -12
  41. package/dist/middleware/rate-limit.js +3 -3
  42. package/dist/middleware/security.d.ts +4 -0
  43. package/dist/middleware/security.js +3 -1
  44. package/dist/middleware/wrappers.js +13 -12
  45. package/dist/storage/r2-storage.js +2 -2
  46. package/dist/utils/api-helpers.js +2 -2
  47. package/dist/utils/error-processor.js +3 -3
  48. package/dist/utils/index.js +4 -4
  49. package/dist/utils/optimistic-lock.js +2 -2
  50. package/package.json +1 -1
  51. /package/dist/{chunk-R6YVUU6I.js → chunk-3GAY2T2A.js} +0 -0
@@ -8,31 +8,31 @@ import {
8
8
  getErrorIcon,
9
9
  handleApiResponse,
10
10
  showFriendlyError
11
- } from "../chunk-TQJDNWBL.js";
11
+ } from "../chunk-BJSEYZBH.js";
12
12
  import {
13
13
  AUTH_ERROR_CODE_MAP,
14
14
  ErrorResponse,
15
15
  errorToResponse,
16
16
  processError,
17
17
  withErrorHandler
18
- } from "../chunk-2KDLKHTO.js";
18
+ } from "../chunk-L6AU74EI.js";
19
19
  import {
20
20
  AppError
21
- } from "../chunk-KXXROUA5.js";
21
+ } from "../chunk-EOEMOXNT.js";
22
22
  import {
23
23
  formatFriendlyError,
24
24
  getErrorDisplayInfo,
25
25
  getFriendlyMessage
26
- } from "../chunk-S54PFAEU.js";
26
+ } from "../chunk-7VTBRP5M.js";
27
27
  import {
28
28
  getAllMessages,
29
29
  getErrorMessage,
30
30
  hasMessage,
31
31
  isLocaleSupported,
32
32
  supportedLocales
33
- } from "../chunk-Y2JYA2AR.js";
34
- import "../chunk-HCF3C3AQ.js";
35
- import "../chunk-IYXMGIEP.js";
33
+ } from "../chunk-JNJALNRR.js";
34
+ import "../chunk-AKD4YMJU.js";
35
+ import "../chunk-ON4ENPUS.js";
36
36
  import {
37
37
  ERROR_CODES,
38
38
  HTTP_STATUS,
@@ -46,7 +46,7 @@ import {
46
46
  getErrorInfo,
47
47
  getHttpStatus,
48
48
  getLogLevel
49
- } from "../chunk-SNVGJPPX.js";
49
+ } from "../chunk-SNTLJ646.js";
50
50
  import "../chunk-AIH3F7JV.js";
51
51
  import "../chunk-GQVBWZLH.js";
52
52
  import "../chunk-OHBAELPZ.js";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  enMessages
3
- } from "../../chunk-HCF3C3AQ.js";
3
+ } from "../../chunk-AKD4YMJU.js";
4
4
  import "../../chunk-ORMEWXMH.js";
5
5
  export {
6
6
  enMessages
@@ -4,9 +4,9 @@ import {
4
4
  hasMessage,
5
5
  isLocaleSupported,
6
6
  supportedLocales
7
- } from "../../chunk-Y2JYA2AR.js";
8
- import "../../chunk-HCF3C3AQ.js";
9
- import "../../chunk-IYXMGIEP.js";
7
+ } from "../../chunk-JNJALNRR.js";
8
+ import "../../chunk-AKD4YMJU.js";
9
+ import "../../chunk-ON4ENPUS.js";
10
10
  import "../../chunk-ORMEWXMH.js";
11
11
  export {
12
12
  getAllMessages,
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  koMessages
3
- } from "../../chunk-IYXMGIEP.js";
3
+ } from "../../chunk-ON4ENPUS.js";
4
4
  import "../../chunk-ORMEWXMH.js";
5
5
  export {
6
6
  koMessages
@@ -46,7 +46,8 @@ export declare function initializeAuthMiddleware(): boolean;
46
46
  /**
47
47
  * 인증 미들웨어
48
48
  *
49
- * Authorization 헤더에서 JWT 토큰을 추출하고 검증합니다.
49
+ * 쿠키(access_token) 또는 Authorization 헤더에서 JWT 토큰을 추출하고 검증합니다.
50
+ * 쿠키를 우선 확인하며, 없을 경우 Authorization 헤더로 폴백합니다 (OAPI 호환).
50
51
  * 검증된 사용자 정보를 context.user에 추가합니다.
51
52
  *
52
53
  * @example
@@ -59,7 +60,9 @@ export declare const authMiddleware: TApiMiddleware;
59
60
  /**
60
61
  * 선택적 인증 미들웨어
61
62
  *
62
- * Authorization 헤더가 있으면 JWT 토큰을 검증하고 context.user를 설정합니다.
63
+ * 쿠키(access_token) 또는 Authorization 헤더가 있으면 JWT 토큰을 검증하고
64
+ * context.user를 설정합니다. 쿠키를 우선 확인하며, 없을 경우 Authorization
65
+ * 헤더로 폴백합니다 (OAPI 호환).
63
66
  * 토큰이 없거나 유효하지 않아도 에러를 발생시키지 않고 계속 진행합니다.
64
67
  * 공개 API이지만 로그인 사용자를 선택적으로 인식해야 하는 경우에 사용합니다.
65
68
  *
@@ -4,11 +4,12 @@ import {
4
4
  initializeAuthMiddleware,
5
5
  optionalAuthMiddleware,
6
6
  setAccessTokenBlacklistChecker
7
- } from "../chunk-A6V6XVPZ.js";
8
- import "../chunk-KXXROUA5.js";
9
- import "../chunk-SNVGJPPX.js";
7
+ } from "../chunk-J5AISIJS.js";
8
+ import "../chunk-EOEMOXNT.js";
9
+ import "../chunk-SNTLJ646.js";
10
10
  import "../chunk-OZE5KUS3.js";
11
- import "../chunk-R6YVUU6I.js";
11
+ import "../chunk-3GAY2T2A.js";
12
+ import "../chunk-AJLUPYCQ.js";
12
13
  import "../chunk-AIH3F7JV.js";
13
14
  import "../chunk-GQVBWZLH.js";
14
15
  import "../chunk-OHBAELPZ.js";
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  errorHandlerMiddleware
3
- } from "../chunk-BKJPYZYO.js";
4
- import "../chunk-2KDLKHTO.js";
5
- import "../chunk-KXXROUA5.js";
6
- import "../chunk-Y2JYA2AR.js";
7
- import "../chunk-HCF3C3AQ.js";
8
- import "../chunk-IYXMGIEP.js";
9
- import "../chunk-SNVGJPPX.js";
3
+ } from "../chunk-3YUKCYHI.js";
4
+ import "../chunk-L6AU74EI.js";
5
+ import "../chunk-EOEMOXNT.js";
6
+ import "../chunk-JNJALNRR.js";
7
+ import "../chunk-AKD4YMJU.js";
8
+ import "../chunk-ON4ENPUS.js";
9
+ import "../chunk-SNTLJ646.js";
10
10
  import "../chunk-AIH3F7JV.js";
11
11
  import "../chunk-GQVBWZLH.js";
12
12
  import "../chunk-OHBAELPZ.js";
@@ -12,5 +12,5 @@ export { rateLimitMiddleware, createRateLimitMiddleware, setRateLimitAdapter } f
12
12
  export { errorHandlerMiddleware } from './error-handler';
13
13
  export { responseLoggerMiddleware } from './response-logger';
14
14
  export { corsMiddleware, validateCorsConfiguration } from './cors';
15
- export { securityMiddleware, validateSecurityConfiguration } from './security';
15
+ export { securityMiddleware, validateSecurityConfiguration, setAllowedOrigins } from './security';
16
16
  export { withPublicApi, withAuthApi, withAdminApi, withOptionalAuthApi, withCustomApi, } from './wrappers';
@@ -4,7 +4,7 @@ import {
4
4
  withCustomApi,
5
5
  withOptionalAuthApi,
6
6
  withPublicApi
7
- } from "../chunk-NQS7UT6X.js";
7
+ } from "../chunk-YP5SAHAP.js";
8
8
  import {
9
9
  initRequestMiddleware
10
10
  } from "../chunk-62Q7DN5G.js";
@@ -15,38 +15,40 @@ import {
15
15
  createRateLimitMiddleware,
16
16
  rateLimitMiddleware,
17
17
  setRateLimitAdapter
18
- } from "../chunk-6MI4XLWC.js";
18
+ } from "../chunk-AQJAY5FA.js";
19
19
  import {
20
20
  responseLoggerMiddleware
21
21
  } from "../chunk-OIRAH57Y.js";
22
22
  import {
23
23
  securityMiddleware,
24
+ setAllowedOrigins,
24
25
  validateSecurityConfiguration
25
- } from "../chunk-QVWDWROP.js";
26
+ } from "../chunk-WMQE2YK7.js";
26
27
  import {
27
28
  adminMiddleware,
28
29
  authMiddleware,
29
30
  initializeAuthMiddleware,
30
31
  optionalAuthMiddleware,
31
32
  setAccessTokenBlacklistChecker
32
- } from "../chunk-A6V6XVPZ.js";
33
+ } from "../chunk-J5AISIJS.js";
33
34
  import {
34
35
  corsMiddleware,
35
36
  validateCorsConfiguration
36
37
  } from "../chunk-KGHWGLED.js";
37
38
  import {
38
39
  errorHandlerMiddleware
39
- } from "../chunk-BKJPYZYO.js";
40
+ } from "../chunk-3YUKCYHI.js";
40
41
  import "../chunk-XHZ5L4FO.js";
41
- import "../chunk-2KDLKHTO.js";
42
- import "../chunk-KXXROUA5.js";
43
- import "../chunk-Y2JYA2AR.js";
44
- import "../chunk-HCF3C3AQ.js";
45
- import "../chunk-IYXMGIEP.js";
46
- import "../chunk-SNVGJPPX.js";
42
+ import "../chunk-L6AU74EI.js";
43
+ import "../chunk-EOEMOXNT.js";
44
+ import "../chunk-JNJALNRR.js";
45
+ import "../chunk-AKD4YMJU.js";
46
+ import "../chunk-ON4ENPUS.js";
47
+ import "../chunk-SNTLJ646.js";
47
48
  import "../chunk-GFWGLWTS.js";
48
49
  import "../chunk-OZE5KUS3.js";
49
- import "../chunk-R6YVUU6I.js";
50
+ import "../chunk-3GAY2T2A.js";
51
+ import "../chunk-AJLUPYCQ.js";
50
52
  import "../chunk-AIH3F7JV.js";
51
53
  import "../chunk-GQVBWZLH.js";
52
54
  import "../chunk-OHBAELPZ.js";
@@ -68,6 +70,7 @@ export {
68
70
  responseLoggerMiddleware,
69
71
  securityMiddleware,
70
72
  setAccessTokenBlacklistChecker,
73
+ setAllowedOrigins,
71
74
  setRateLimitAdapter,
72
75
  validateCorsConfiguration,
73
76
  validateSecurityConfiguration,
@@ -2,9 +2,9 @@ import {
2
2
  createRateLimitMiddleware,
3
3
  rateLimitMiddleware,
4
4
  setRateLimitAdapter
5
- } from "../chunk-6MI4XLWC.js";
6
- import "../chunk-KXXROUA5.js";
7
- import "../chunk-SNVGJPPX.js";
5
+ } from "../chunk-AQJAY5FA.js";
6
+ import "../chunk-EOEMOXNT.js";
7
+ import "../chunk-SNTLJ646.js";
8
8
  import "../chunk-GQVBWZLH.js";
9
9
  import "../chunk-OHBAELPZ.js";
10
10
  import "../chunk-SFPMFVSD.js";
@@ -6,6 +6,10 @@
6
6
  * - 보안 헤더 강화
7
7
  */
8
8
  import type { TApiMiddleware } from './types';
9
+ declare global {
10
+ var __withwiz_allowed_origins: string[] | undefined;
11
+ }
12
+ export declare function setAllowedOrigins(origins: string[]): void;
9
13
  /**
10
14
  * 보안 미들웨어
11
15
  *
@@ -1,7 +1,8 @@
1
1
  import {
2
2
  securityMiddleware,
3
+ setAllowedOrigins,
3
4
  validateSecurityConfiguration
4
- } from "../chunk-QVWDWROP.js";
5
+ } from "../chunk-WMQE2YK7.js";
5
6
  import "../chunk-GQVBWZLH.js";
6
7
  import "../chunk-OHBAELPZ.js";
7
8
  import "../chunk-SFPMFVSD.js";
@@ -10,5 +11,6 @@ import "../chunk-2QH66EVQ.js";
10
11
  import "../chunk-ORMEWXMH.js";
11
12
  export {
12
13
  securityMiddleware,
14
+ setAllowedOrigins,
13
15
  validateSecurityConfiguration
14
16
  };
@@ -4,25 +4,26 @@ import {
4
4
  withCustomApi,
5
5
  withOptionalAuthApi,
6
6
  withPublicApi
7
- } from "../chunk-NQS7UT6X.js";
7
+ } from "../chunk-YP5SAHAP.js";
8
8
  import "../chunk-62Q7DN5G.js";
9
9
  import "../chunk-FPESPW6P.js";
10
- import "../chunk-6MI4XLWC.js";
10
+ import "../chunk-AQJAY5FA.js";
11
11
  import "../chunk-OIRAH57Y.js";
12
- import "../chunk-QVWDWROP.js";
13
- import "../chunk-A6V6XVPZ.js";
12
+ import "../chunk-WMQE2YK7.js";
13
+ import "../chunk-J5AISIJS.js";
14
14
  import "../chunk-KGHWGLED.js";
15
- import "../chunk-BKJPYZYO.js";
15
+ import "../chunk-3YUKCYHI.js";
16
16
  import "../chunk-XHZ5L4FO.js";
17
- import "../chunk-2KDLKHTO.js";
18
- import "../chunk-KXXROUA5.js";
19
- import "../chunk-Y2JYA2AR.js";
20
- import "../chunk-HCF3C3AQ.js";
21
- import "../chunk-IYXMGIEP.js";
22
- import "../chunk-SNVGJPPX.js";
17
+ import "../chunk-L6AU74EI.js";
18
+ import "../chunk-EOEMOXNT.js";
19
+ import "../chunk-JNJALNRR.js";
20
+ import "../chunk-AKD4YMJU.js";
21
+ import "../chunk-ON4ENPUS.js";
22
+ import "../chunk-SNTLJ646.js";
23
23
  import "../chunk-GFWGLWTS.js";
24
24
  import "../chunk-OZE5KUS3.js";
25
- import "../chunk-R6YVUU6I.js";
25
+ import "../chunk-3GAY2T2A.js";
26
+ import "../chunk-AJLUPYCQ.js";
26
27
  import "../chunk-AIH3F7JV.js";
27
28
  import "../chunk-GQVBWZLH.js";
28
29
  import "../chunk-OHBAELPZ.js";
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  AppError
3
- } from "../chunk-KXXROUA5.js";
4
- import "../chunk-SNVGJPPX.js";
3
+ } from "../chunk-EOEMOXNT.js";
4
+ import "../chunk-SNTLJ646.js";
5
5
  import {
6
6
  getStorageConfig
7
7
  } from "../chunk-AYZJN32D.js";
@@ -11,8 +11,8 @@ import {
11
11
  parseSort,
12
12
  requireAdmin,
13
13
  validateAndParse
14
- } from "../chunk-7JWIX5BS.js";
15
- import "../chunk-SNVGJPPX.js";
14
+ } from "../chunk-WMJ5M45N.js";
15
+ import "../chunk-SNTLJ646.js";
16
16
  import "../chunk-ORMEWXMH.js";
17
17
  export {
18
18
  createPaginatedResponse,
@@ -12,9 +12,9 @@ import {
12
12
  throwUnauthorizedError,
13
13
  throwValidationError,
14
14
  withErrorHandling
15
- } from "../chunk-E54MAI4I.js";
16
- import "../chunk-KXXROUA5.js";
17
- import "../chunk-SNVGJPPX.js";
15
+ } from "../chunk-2F6KNGOD.js";
16
+ import "../chunk-EOEMOXNT.js";
17
+ import "../chunk-SNTLJ646.js";
18
18
  import "../chunk-GQVBWZLH.js";
19
19
  import "../chunk-OHBAELPZ.js";
20
20
  import "../chunk-SFPMFVSD.js";
@@ -47,7 +47,7 @@ import {
47
47
  parseSort,
48
48
  requireAdmin,
49
49
  validateAndParse
50
- } from "../chunk-7JWIX5BS.js";
50
+ } from "../chunk-WMJ5M45N.js";
51
51
  import {
52
52
  getAllowedOrigins,
53
53
  getCorsConfig,
@@ -80,9 +80,9 @@ import {
80
80
  throwUnauthorizedError,
81
81
  throwValidationError,
82
82
  withErrorHandling
83
- } from "../chunk-E54MAI4I.js";
84
- import "../chunk-KXXROUA5.js";
85
- import "../chunk-SNVGJPPX.js";
83
+ } from "../chunk-2F6KNGOD.js";
84
+ import "../chunk-EOEMOXNT.js";
85
+ import "../chunk-SNTLJ646.js";
86
86
  import "../chunk-GFWGLWTS.js";
87
87
  import "../chunk-GQVBWZLH.js";
88
88
  import "../chunk-OHBAELPZ.js";
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  AppError
3
- } from "../chunk-KXXROUA5.js";
4
- import "../chunk-SNVGJPPX.js";
3
+ } from "../chunk-EOEMOXNT.js";
4
+ import "../chunk-SNTLJ646.js";
5
5
  import "../chunk-ORMEWXMH.js";
6
6
 
7
7
  // src/utils/optimistic-lock.ts
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@withwiz/toolkit",
3
- "version": "0.3.2",
3
+ "version": "0.4.0",
4
4
  "description": "Shared utility library for withwiz projects",
5
5
  "license": "MIT",
6
6
  "private": false,
File without changes