@withwiz/toolkit 0.7.1 → 0.9.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 (399) hide show
  1. package/README.ko.md +226 -0
  2. package/README.md +66 -44
  3. package/dist/{chunk-V6YD53NH.js → chunk-23LQJYZN.js} +5 -2
  4. package/dist/chunk-2JUFL4KX.js +41 -0
  5. package/dist/{chunk-ZTRASVGZ.js → chunk-34L7HTM7.js} +1 -1
  6. package/dist/{chunk-GSUCBWML.js → chunk-3RK3MKAR.js} +5 -2
  7. package/dist/{chunk-6JXHXIEH.js → chunk-3UIKCS56.js} +2 -2
  8. package/dist/{chunk-MWBEE6VI.js → chunk-4EXZ2SDV.js} +5 -5
  9. package/dist/{chunk-MNYVAEXK.js → chunk-4ROIPF33.js} +16 -3
  10. package/dist/{chunk-JKSABDFT.js → chunk-4TGPAUJV.js} +4 -4
  11. package/dist/{chunk-D2KXIKI4.js → chunk-4XPXZNBX.js} +18 -11
  12. package/dist/{chunk-LG3KM5V3.js → chunk-5I3EQHR4.js} +6 -2
  13. package/dist/chunk-63EKUOJH.js +72 -0
  14. package/dist/chunk-6A5JHOBB.js +134 -0
  15. package/dist/{chunk-N5VOFGF3.js → chunk-75UDFONR.js} +5 -4
  16. package/dist/{chunk-GORISA3L.js → chunk-7KIM5MHV.js} +1 -1
  17. package/dist/{chunk-4L6OSSSG.js → chunk-7S2PCYNT.js} +3 -3
  18. package/dist/{chunk-2SIBG5BG.js → chunk-7YWUKMZD.js} +7 -0
  19. package/dist/{chunk-7X2N4VZM.js → chunk-ATBYGPLP.js} +1 -1
  20. package/dist/{chunk-A74POWYY.js → chunk-B7AJJKOY.js} +1 -1
  21. package/dist/{chunk-W7PEL3DX.js → chunk-BRBOGLFT.js} +4 -4
  22. package/dist/{chunk-IOUNOHP7.js → chunk-BRFW2LL2.js} +1 -1
  23. package/dist/chunk-BTYH4MHU.js +118 -0
  24. package/dist/{chunk-I4NT6G2T.js → chunk-DRTJSTEV.js} +2 -2
  25. package/dist/{chunk-JIYLTMVL.js → chunk-DVCGAI5N.js} +2 -2
  26. package/dist/chunk-E4TKORMQ.js +59 -0
  27. package/dist/{chunk-AV7ELXHG.js → chunk-E5TDIRBJ.js} +2 -2
  28. package/dist/{chunk-UBASOMP5.js → chunk-HGVPZSWW.js} +18 -13
  29. package/dist/{chunk-7F5X6F7X.js → chunk-HV6A6Z5R.js} +1 -1
  30. package/dist/chunk-ILMPKSWS.js +125 -0
  31. package/dist/{chunk-J5NLAZV2.js → chunk-JHUWZ6YW.js} +2 -2
  32. package/dist/{chunk-LON5THYQ.js → chunk-KLMKCYIN.js} +1 -1
  33. package/dist/{chunk-4KJZRI74.js → chunk-KWUOLKDO.js} +1 -1
  34. package/dist/{chunk-GJO2MPC3.js → chunk-LCYDMYZS.js} +1 -1
  35. package/dist/{chunk-WIQAPWTY.js → chunk-LL3VWKY4.js} +1 -1
  36. package/dist/{chunk-IMAFMUZ7.js → chunk-LSS3GJUE.js} +3 -2
  37. package/dist/{chunk-2PFSRVVD.js → chunk-LWHLB2Y6.js} +84 -18
  38. package/dist/{chunk-BBE4RXR7.js → chunk-MTZXWVW3.js} +17 -6
  39. package/dist/{chunk-ORMEWXMH.js → chunk-N3ETBM74.js} +1 -14
  40. package/dist/{chunk-KYAHURXN.js → chunk-N3TCQ5BF.js} +4 -3
  41. package/dist/{chunk-HX4MPCVV.js → chunk-NTZBMWB6.js} +4 -4
  42. package/dist/{chunk-RJGYONRO.js → chunk-PRPMEHRE.js} +2 -2
  43. package/dist/{chunk-KG65BFPK.js → chunk-QAIN3WNN.js} +1 -1
  44. package/dist/{chunk-JJAIVUVD.js → chunk-R7EFDSPZ.js} +2 -2
  45. package/dist/{chunk-VJE4HA2C.js → chunk-RWCPRPEP.js} +3 -2
  46. package/dist/{chunk-B6L5XV7O.js → chunk-SCAFDDJP.js} +11 -11
  47. package/dist/{chunk-KXYDTC4A.js → chunk-SNFPZD6L.js} +11 -2
  48. package/dist/{chunk-B5VRZ2VJ.js → chunk-TNDEYJEL.js} +25 -6
  49. package/dist/{chunk-GDTZMX3L.js → chunk-TRGFXIEF.js} +1 -1
  50. package/dist/{chunk-JRORMRVN.js → chunk-U2TGXJ3A.js} +1 -1
  51. package/dist/{chunk-VNDL2E44.js → chunk-U52U5SK7.js} +2 -2
  52. package/dist/{chunk-54REXMTE.js → chunk-UWOWKOOQ.js} +3 -1
  53. package/dist/{chunk-4PROUAZ5.js → chunk-V3WZFUY3.js} +7 -7
  54. package/dist/{chunk-G4LJN4OZ.js → chunk-VH57Y5Z4.js} +1 -1
  55. package/dist/chunk-VQJY52YF.js +139 -0
  56. package/dist/{chunk-5S7M2AJL.js → chunk-VWAB4PM7.js} +1 -1
  57. package/dist/{chunk-AQZPGOEZ.js → chunk-VWKZMGPJ.js} +5 -4
  58. package/dist/{chunk-4K27YLAE.js → chunk-VZ2PQA4U.js} +2 -2
  59. package/dist/{chunk-ZOWEW4GY.js → chunk-WBHX4MJV.js} +2 -2
  60. package/dist/{chunk-G4SNTXJ3.js → chunk-WSHRBK6Y.js} +7 -6
  61. package/dist/{chunk-UMRKMF3E.js → chunk-WXOWI7BJ.js} +2 -2
  62. package/dist/chunk-XAGPZLRK.js +106 -0
  63. package/dist/{chunk-VPRTPW7C.js → chunk-XF3WUF3F.js} +2 -2
  64. package/dist/{chunk-6TRD7ZW4.js → chunk-XKIBJJA3.js} +25 -21
  65. package/dist/{chunk-ZLYBY3R4.js → chunk-XTGS6JJB.js} +10 -5
  66. package/dist/{chunk-BFZR62LZ.js → chunk-XXPB4C37.js} +7 -7
  67. package/dist/{chunk-LUIYCIF7.js → chunk-Y4ME3Q5K.js} +2 -2
  68. package/dist/{chunk-Q66VOVGN.js → chunk-Y4WPEIKW.js} +1 -1
  69. package/dist/{chunk-MREY2W7N.js → chunk-Y6CPPBJI.js} +1 -1
  70. package/dist/{chunk-6TUDUOGC.js → chunk-ZEHNCHIV.js} +2 -2
  71. package/dist/{chunk-D73ZJQMX.js → chunk-ZZABL54F.js} +13 -0
  72. package/dist/core/auth/adapters/sql/dialect.d.ts +21 -0
  73. package/dist/core/auth/adapters/sql/dialect.js +11 -0
  74. package/dist/core/auth/adapters/sql/email-token-repository.d.ts +17 -0
  75. package/dist/core/auth/adapters/sql/email-token-repository.js +9 -0
  76. package/dist/core/auth/adapters/sql/index.d.ts +7 -0
  77. package/dist/core/auth/adapters/sql/index.js +27 -0
  78. package/dist/core/auth/adapters/sql/oauth-account-repository.d.ts +18 -0
  79. package/dist/core/auth/adapters/sql/oauth-account-repository.js +9 -0
  80. package/dist/core/auth/adapters/sql/types.d.ts +73 -0
  81. package/dist/core/auth/adapters/sql/types.js +7 -0
  82. package/dist/core/auth/adapters/sql/user-repository.d.ts +20 -0
  83. package/dist/core/auth/adapters/sql/user-repository.js +9 -0
  84. package/dist/core/auth/config.d.ts +3 -0
  85. package/dist/core/auth/config.js +3 -3
  86. package/dist/core/auth/email/index.d.ts +3 -3
  87. package/dist/core/auth/email/index.js +3 -3
  88. package/dist/core/auth/email/sender.d.ts +1 -1
  89. package/dist/core/auth/email/sender.js +2 -2
  90. package/dist/core/auth/email/token-generator.d.ts +11 -0
  91. package/dist/core/auth/email/token-generator.js +2 -2
  92. package/dist/core/auth/errors/index.js +1 -1
  93. package/dist/core/auth/index.d.ts +11 -11
  94. package/dist/core/auth/index.js +23 -15
  95. package/dist/core/auth/jwt/client.js +3 -2
  96. package/dist/core/auth/jwt/cookie.d.ts +1 -1
  97. package/dist/core/auth/jwt/cookie.js +4 -4
  98. package/dist/core/auth/jwt/index.d.ts +41 -9
  99. package/dist/core/auth/jwt/index.js +6 -6
  100. package/dist/core/auth/jwt/types.d.ts +1 -1
  101. package/dist/core/auth/jwt/types.js +1 -1
  102. package/dist/core/auth/oauth/index.d.ts +6 -6
  103. package/dist/core/auth/oauth/index.js +5 -5
  104. package/dist/core/auth/oauth/providers/github.d.ts +1 -1
  105. package/dist/core/auth/oauth/providers/github.js +1 -1
  106. package/dist/core/auth/oauth/providers/google.d.ts +1 -1
  107. package/dist/core/auth/oauth/providers/google.js +1 -1
  108. package/dist/core/auth/oauth/providers/index.d.ts +5 -5
  109. package/dist/core/auth/oauth/providers/index.js +4 -4
  110. package/dist/core/auth/oauth/providers/kakao.d.ts +1 -1
  111. package/dist/core/auth/oauth/providers/kakao.js +1 -1
  112. package/dist/core/auth/oauth/providers/meta.d.ts +1 -1
  113. package/dist/core/auth/oauth/providers/meta.js +1 -1
  114. package/dist/core/auth/oauth/providers/microsoft.d.ts +1 -1
  115. package/dist/core/auth/oauth/providers/microsoft.js +1 -1
  116. package/dist/core/auth/oauth/state-cookie.js +1 -1
  117. package/dist/core/auth/password/client-helper.d.ts +9 -9
  118. package/dist/core/auth/password/client-helper.js +5 -3
  119. package/dist/core/auth/password/hasher.d.ts +83 -0
  120. package/dist/core/auth/password/hasher.js +14 -0
  121. package/dist/core/auth/password/index.d.ts +8 -6
  122. package/dist/core/auth/password/index.js +11 -2
  123. package/dist/core/auth/services/email-verification.service.d.ts +1 -1
  124. package/dist/core/auth/services/email-verification.service.js +3 -3
  125. package/dist/core/auth/services/index.d.ts +13 -12
  126. package/dist/core/auth/services/index.js +16 -16
  127. package/dist/core/auth/services/login.service.d.ts +15 -1
  128. package/dist/core/auth/services/login.service.js +6 -6
  129. package/dist/core/auth/services/oauth-callback.service.d.ts +7 -1
  130. package/dist/core/auth/services/oauth-callback.service.js +6 -6
  131. package/dist/core/auth/services/password-reset.service.d.ts +1 -1
  132. package/dist/core/auth/services/password-reset.service.js +3 -3
  133. package/dist/core/auth/services/refresh-token-store.d.ts +39 -0
  134. package/dist/core/auth/services/register.service.d.ts +1 -1
  135. package/dist/core/auth/services/register.service.js +3 -3
  136. package/dist/core/auth/services/token-refresh.service.d.ts +27 -1
  137. package/dist/core/auth/services/token-refresh.service.js +6 -6
  138. package/dist/core/auth/token-delivery.d.ts +47 -0
  139. package/dist/core/auth/token-delivery.js +14 -0
  140. package/dist/core/auth/types/index.d.ts +38 -4
  141. package/dist/core/auth/types/index.js +1 -1
  142. package/dist/core/cache/cache-config.js +4 -4
  143. package/dist/core/cache/cache-defaults.js +1 -1
  144. package/dist/core/cache/cache-env.d.ts +3 -3
  145. package/dist/core/cache/cache-env.js +3 -3
  146. package/dist/core/cache/cache-factory.d.ts +6 -6
  147. package/dist/core/cache/cache-factory.js +11 -11
  148. package/dist/core/cache/cache-invalidation.d.ts +4 -4
  149. package/dist/core/cache/cache-invalidation.js +12 -12
  150. package/dist/core/cache/cache-redis.js +5 -5
  151. package/dist/core/cache/cache-types.js +1 -1
  152. package/dist/core/cache/cache-wrapper.d.ts +1 -1
  153. package/dist/core/cache/cache-wrapper.js +12 -12
  154. package/dist/core/cache/cache.d.ts +2 -2
  155. package/dist/core/cache/cache.js +17 -17
  156. package/dist/core/cache/config.js +2 -2
  157. package/dist/core/cache/hybrid-cache-manager.d.ts +1 -1
  158. package/dist/core/cache/hybrid-cache-manager.js +7 -7
  159. package/dist/core/cache/index.d.ts +15 -15
  160. package/dist/core/cache/index.js +17 -17
  161. package/dist/core/cache/inmemory-cache-manager.d.ts +1 -1
  162. package/dist/core/cache/inmemory-cache-manager.js +3 -3
  163. package/dist/core/cache/noop-cache-manager.d.ts +1 -1
  164. package/dist/core/cache/noop-cache-manager.js +5 -5
  165. package/dist/core/cache/redis-cache-manager.d.ts +2 -2
  166. package/dist/core/cache/redis-cache-manager.js +6 -6
  167. package/dist/core/config/common.js +1 -1
  168. package/dist/core/config/errors.js +1 -1
  169. package/dist/core/config/registry.d.ts +7 -7
  170. package/dist/core/config/registry.js +1 -1
  171. package/dist/core/config/warn.js +1 -1
  172. package/dist/core/constants/error-codes.js +1 -1
  173. package/dist/core/constants/index.d.ts +5 -5
  174. package/dist/core/constants/index.js +10 -8
  175. package/dist/core/constants/messages.js +1 -1
  176. package/dist/core/constants/pagination.js +1 -1
  177. package/dist/core/constants/security.d.ts +15 -0
  178. package/dist/core/constants/security.js +4 -2
  179. package/dist/core/constants/validation.js +1 -1
  180. package/dist/core/cors/index.js +1 -1
  181. package/dist/core/error/app-error.d.ts +2 -2
  182. package/dist/core/error/app-error.js +1 -1
  183. package/dist/core/error/extract-error-info.js +1 -1
  184. package/dist/core/error/friendly-messages-v2.d.ts +3 -3
  185. package/dist/core/error/friendly-messages-v2.js +4 -4
  186. package/dist/core/error/friendly-messages.js +1 -1
  187. package/dist/core/error/index.d.ts +6 -6
  188. package/dist/core/error/index.js +4 -4
  189. package/dist/core/error/messages/en.d.ts +1 -1
  190. package/dist/core/error/messages/en.js +1 -1
  191. package/dist/core/error/messages/index.d.ts +2 -2
  192. package/dist/core/error/messages/index.js +3 -3
  193. package/dist/core/error/messages/ko.d.ts +1 -1
  194. package/dist/core/error/messages/ko.js +1 -1
  195. package/dist/core/geolocation/batch-processor.d.ts +1 -1
  196. package/dist/core/geolocation/batch-processor.js +3 -3
  197. package/dist/core/geolocation/config.js +1 -1
  198. package/dist/core/geolocation/index.d.ts +5 -5
  199. package/dist/core/geolocation/index.js +7 -7
  200. package/dist/core/geolocation/providers/base-provider.d.ts +2 -2
  201. package/dist/core/geolocation/providers/base-provider.js +1 -1
  202. package/dist/core/geolocation/providers/index.d.ts +6 -6
  203. package/dist/core/geolocation/providers/index.js +5 -5
  204. package/dist/core/geolocation/providers/ip-api-provider.d.ts +3 -3
  205. package/dist/core/geolocation/providers/ip-api-provider.js +1 -1
  206. package/dist/core/geolocation/providers/ipapi-co-provider.d.ts +3 -3
  207. package/dist/core/geolocation/providers/ipapi-co-provider.js +1 -1
  208. package/dist/core/geolocation/providers/ipgeolocation-provider.d.ts +3 -3
  209. package/dist/core/geolocation/providers/ipgeolocation-provider.js +1 -1
  210. package/dist/core/geolocation/providers/maxmind-provider.d.ts +3 -3
  211. package/dist/core/geolocation/providers/maxmind-provider.js +1 -1
  212. package/dist/core/logger/config.js +1 -1
  213. package/dist/core/logger/logger.js +2 -2
  214. package/dist/core/storage/config.js +1 -1
  215. package/dist/core/storage/r2-storage.js +1 -1
  216. package/dist/core/system/cpu.d.ts +1 -1
  217. package/dist/core/system/cpu.js +4 -4
  218. package/dist/core/system/disk.d.ts +1 -1
  219. package/dist/core/system/disk.js +4 -4
  220. package/dist/core/system/environment.d.ts +1 -1
  221. package/dist/core/system/environment.js +7 -7
  222. package/dist/core/system/health-check.d.ts +2 -2
  223. package/dist/core/system/health-check.js +5 -5
  224. package/dist/core/system/index.d.ts +7 -7
  225. package/dist/core/system/index.js +17 -17
  226. package/dist/core/system/memory.d.ts +1 -1
  227. package/dist/core/system/memory.js +4 -4
  228. package/dist/core/system/network.d.ts +1 -1
  229. package/dist/core/system/network.js +4 -4
  230. package/dist/core/system/utils.js +3 -3
  231. package/dist/core/types/geoip.d.ts +1 -1
  232. package/dist/core/types/qr-code.js +1 -1
  233. package/dist/core/utils/error-message-formatter.js +1 -1
  234. package/dist/core/utils/format-number.js +1 -1
  235. package/dist/core/utils/index.d.ts +3 -3
  236. package/dist/core/utils/index.js +9 -9
  237. package/dist/core/utils/input-validation.js +52 -16
  238. package/dist/core/utils/ip-utils.js +1 -1
  239. package/dist/core/utils/optimistic-lock.js +1 -1
  240. package/dist/core/utils/sanitizer.js +2 -2
  241. package/dist/core/utils/short-code-generator.js +1 -1
  242. package/dist/core/utils/timezone.js +121 -14
  243. package/dist/core/utils/type-guards.js +1 -1
  244. package/dist/core/utils/url-normalizer.js +1 -1
  245. package/dist/core/validators/index.d.ts +1 -1
  246. package/dist/core/validators/index.js +2 -2
  247. package/dist/core/validators/password-validator.d.ts +3 -3
  248. package/dist/core/validators/password-validator.js +2 -2
  249. package/dist/initialize.d.ts +10 -10
  250. package/dist/initialize.js +7 -7
  251. package/dist/next/auth-handlers/forgot-password.handler.d.ts +1 -1
  252. package/dist/next/auth-handlers/forgot-password.handler.js +4 -4
  253. package/dist/next/auth-handlers/index.d.ts +11 -11
  254. package/dist/next/auth-handlers/index.js +32 -31
  255. package/dist/next/auth-handlers/login.handler.d.ts +1 -1
  256. package/dist/next/auth-handlers/login.handler.js +7 -6
  257. package/dist/next/auth-handlers/logout.handler.d.ts +1 -1
  258. package/dist/next/auth-handlers/logout.handler.js +5 -5
  259. package/dist/next/auth-handlers/me.handler.d.ts +1 -1
  260. package/dist/next/auth-handlers/me.handler.js +7 -6
  261. package/dist/next/auth-handlers/oauth-authorize.handler.d.ts +1 -1
  262. package/dist/next/auth-handlers/oauth-authorize.handler.js +4 -4
  263. package/dist/next/auth-handlers/oauth-callback.handler.d.ts +1 -1
  264. package/dist/next/auth-handlers/oauth-callback.handler.js +9 -9
  265. package/dist/next/auth-handlers/refresh.handler.d.ts +1 -1
  266. package/dist/next/auth-handlers/refresh.handler.js +8 -7
  267. package/dist/next/auth-handlers/register.handler.d.ts +1 -1
  268. package/dist/next/auth-handlers/register.handler.js +4 -4
  269. package/dist/next/auth-handlers/reset-password.handler.d.ts +1 -1
  270. package/dist/next/auth-handlers/reset-password.handler.js +4 -4
  271. package/dist/next/auth-handlers/verify-email.handler.d.ts +1 -1
  272. package/dist/next/auth-handlers/verify-email.handler.js +4 -4
  273. package/dist/next/auth-types/handler-types.d.ts +5 -1
  274. package/dist/next/auth-types/handler-types.js +13 -1
  275. package/dist/next/auth-types/index.d.ts +1 -1
  276. package/dist/next/auth-types/index.js +13 -1
  277. package/dist/next/error/error-handler.js +3 -3
  278. package/dist/next/error/index.d.ts +3 -3
  279. package/dist/next/error/index.js +9 -9
  280. package/dist/next/error/locale-detector.d.ts +1 -1
  281. package/dist/next/error/locale-detector.js +1 -1
  282. package/dist/next/middleware/auth.d.ts +3 -3
  283. package/dist/next/middleware/auth.js +8 -7
  284. package/dist/next/middleware/cors.d.ts +2 -2
  285. package/dist/next/middleware/cors.js +3 -3
  286. package/dist/next/middleware/error-handler.d.ts +1 -1
  287. package/dist/next/middleware/error-handler.js +6 -6
  288. package/dist/next/middleware/index.d.ts +11 -11
  289. package/dist/next/middleware/index.js +19 -18
  290. package/dist/next/middleware/init-request.d.ts +1 -1
  291. package/dist/next/middleware/init-request.js +1 -1
  292. package/dist/next/middleware/middleware-chain.d.ts +1 -1
  293. package/dist/next/middleware/middleware-chain.js +3 -3
  294. package/dist/next/middleware/rate-limit.d.ts +2 -2
  295. package/dist/next/middleware/rate-limit.js +3 -3
  296. package/dist/next/middleware/response-logger.d.ts +1 -1
  297. package/dist/next/middleware/response-logger.js +3 -3
  298. package/dist/next/middleware/security.d.ts +1 -1
  299. package/dist/next/middleware/security.js +3 -3
  300. package/dist/next/middleware/types.d.ts +6 -3
  301. package/dist/next/middleware/wrappers.d.ts +2 -2
  302. package/dist/next/middleware/wrappers.js +18 -17
  303. package/dist/next/utils/api-helpers.d.ts +6 -2
  304. package/dist/next/utils/api-helpers.js +3 -2
  305. package/dist/next/utils/cors.js +2 -2
  306. package/dist/next/utils/csv-export-format.js +1 -1
  307. package/dist/next/utils/csv-export.js +3 -3
  308. package/dist/next/utils/error-processor.d.ts +1 -1
  309. package/dist/next/utils/error-processor.js +3 -3
  310. package/dist/next/utils/index.d.ts +5 -5
  311. package/dist/next/utils/index.js +28 -27
  312. package/dist/prisma/auth-adapter/index.d.ts +1 -1
  313. package/dist/prisma/auth-adapter/index.js +1 -1
  314. package/package.json +96 -52
  315. package/dist/chunk-2P4N4OK2.js +0 -150
  316. package/dist/chunk-4IQWQSEV.js +0 -27
  317. package/dist/chunk-4K76HG4V.js +0 -34
  318. package/dist/chunk-7EXSMZ2O.js +0 -29
  319. package/dist/chunk-7VXRBTRF.js +0 -110
  320. package/dist/chunk-ARXUKGZI.js +0 -58
  321. package/dist/chunk-B5OH43PR.js +0 -31
  322. package/dist/chunk-BW4QO7T6.js +0 -56
  323. package/dist/chunk-EK4TL7VW.js +0 -22
  324. package/dist/chunk-ERKJJDY6.js +0 -117
  325. package/dist/chunk-G4GT4X3J.js +0 -240
  326. package/dist/chunk-GPOSTBDQ.js +0 -193
  327. package/dist/chunk-IRUFNC4L.js +0 -26
  328. package/dist/chunk-J2MAXMIP.js +0 -105
  329. package/dist/chunk-MFMQO6IS.js +0 -127
  330. package/dist/chunk-PBQGXOVX.js +0 -31
  331. package/dist/chunk-STMAKLLG.js +0 -24
  332. package/dist/chunk-WP233RH2.js +0 -80
  333. package/dist/chunk-WWOYFWFB.js +0 -137
  334. package/dist/chunk-X7FGBUA4.js +0 -117
  335. package/dist/chunk-YSPIFSDI.js +0 -136
  336. package/dist/chunk-ZCLKRGZ4.js +0 -81
  337. package/dist/react/components/ui/Alert.d.ts +0 -12
  338. package/dist/react/components/ui/Alert.js +0 -10
  339. package/dist/react/components/ui/Badge.d.ts +0 -7
  340. package/dist/react/components/ui/Badge.js +0 -8
  341. package/dist/react/components/ui/Button.d.ts +0 -7
  342. package/dist/react/components/ui/Button.js +0 -8
  343. package/dist/react/components/ui/DataTable.d.ts +0 -8
  344. package/dist/react/components/ui/DataTable.js +0 -22
  345. package/dist/react/components/ui/DomainDisplay.d.ts +0 -12
  346. package/dist/react/components/ui/DomainDisplay.js +0 -31
  347. package/dist/react/components/ui/Input.d.ts +0 -5
  348. package/dist/react/components/ui/Input.js +0 -8
  349. package/dist/react/components/ui/Label.d.ts +0 -5
  350. package/dist/react/components/ui/Label.js +0 -8
  351. package/dist/react/components/ui/Pagination.d.ts +0 -42
  352. package/dist/react/components/ui/Pagination.js +0 -20
  353. package/dist/react/components/ui/Select.d.ts +0 -15
  354. package/dist/react/components/ui/Select.js +0 -27
  355. package/dist/react/components/ui/Skeleton.d.ts +0 -6
  356. package/dist/react/components/ui/Skeleton.js +0 -8
  357. package/dist/react/components/ui/TimezoneDisplay.d.ts +0 -22
  358. package/dist/react/components/ui/TimezoneDisplay.js +0 -83
  359. package/dist/react/components/ui/Tooltip.d.ts +0 -21
  360. package/dist/react/components/ui/Tooltip.js +0 -94
  361. package/dist/react/components/ui/data-table/DataTable.d.ts +0 -2
  362. package/dist/react/components/ui/data-table/DataTable.js +0 -22
  363. package/dist/react/components/ui/data-table/DataTableBody.d.ts +0 -19
  364. package/dist/react/components/ui/data-table/DataTableBody.js +0 -10
  365. package/dist/react/components/ui/data-table/DataTableBulkActions.d.ts +0 -17
  366. package/dist/react/components/ui/data-table/DataTableBulkActions.js +0 -12
  367. package/dist/react/components/ui/data-table/DataTableFilters.d.ts +0 -15
  368. package/dist/react/components/ui/data-table/DataTableFilters.js +0 -13
  369. package/dist/react/components/ui/data-table/DataTablePagination.d.ts +0 -10
  370. package/dist/react/components/ui/data-table/DataTablePagination.js +0 -11
  371. package/dist/react/components/ui/data-table/DataTableSearch.d.ts +0 -24
  372. package/dist/react/components/ui/data-table/DataTableSearch.js +0 -12
  373. package/dist/react/components/ui/data-table/index.d.ts +0 -13
  374. package/dist/react/components/ui/data-table/index.js +0 -42
  375. package/dist/react/components/ui/data-table/types.d.ts +0 -120
  376. package/dist/react/components/ui/data-table/types.js +0 -9
  377. package/dist/react/components/ui/loading-bar.d.ts +0 -20
  378. package/dist/react/components/ui/loading-bar.js +0 -15
  379. package/dist/react/error/error-display.d.ts +0 -48
  380. package/dist/react/error/error-display.js +0 -30
  381. package/dist/react/error/index.d.ts +0 -6
  382. package/dist/react/error/index.js +0 -30
  383. package/dist/react/hooks/useDataTable.d.ts +0 -96
  384. package/dist/react/hooks/useDataTable.js +0 -151
  385. package/dist/react/hooks/useDebounce.d.ts +0 -7
  386. package/dist/react/hooks/useDebounce.js +0 -7
  387. package/dist/react/hooks/useExitIntent.d.ts +0 -35
  388. package/dist/react/hooks/useExitIntent.js +0 -72
  389. package/dist/react/hooks/useTimezone.d.ts +0 -19
  390. package/dist/react/hooks/useTimezone.js +0 -11
  391. package/dist/react/utils/client-utils.d.ts +0 -3
  392. package/dist/react/utils/client-utils.js +0 -9
  393. package/dist/react/utils/qr-code.d.ts +0 -16
  394. package/dist/react/utils/qr-code.js +0 -215
  395. package/dist/{chunk-7PEVOMBO.js → chunk-AOWUPAPS.js} +0 -0
  396. package/dist/{chunk-VDRLJU6C.js → chunk-E2HYIONP.js} +3 -3
  397. package/dist/{chunk-7WG7XPXC.js → chunk-KKZCNF6U.js} +3 -3
  398. package/dist/{chunk-UQ3Z3ZAF.js → chunk-P7WHMKN5.js} +3 -3
  399. /package/dist/{chunk-M22Z2NO6.js → core/auth/services/refresh-token-store.js} +0 -0
@@ -7,7 +7,7 @@ import {
7
7
  } from "../../chunk-C5CBJC6V.js";
8
8
  import "../../chunk-6J2EJVND.js";
9
9
  import "../../chunk-F3R3UYBF.js";
10
- import "../../chunk-ORMEWXMH.js";
10
+ import "../../chunk-N3ETBM74.js";
11
11
 
12
12
  // src/core/storage/r2-storage.ts
13
13
  import { S3Client, PutObjectCommand, DeleteObjectCommand, GetObjectCommand } from "@aws-sdk/client-s3";
@@ -1,2 +1,2 @@
1
- import { ICpuInfo } from './types';
1
+ import { ICpuInfo } from '@withwiz/toolkit/core/system/types';
2
2
  export declare function getCpuInfo(): Promise<ICpuInfo>;
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  getCpuInfo
3
- } from "../../chunk-I4NT6G2T.js";
4
- import "../../chunk-4KJZRI74.js";
5
- import "../../chunk-KG65BFPK.js";
3
+ } from "../../chunk-DRTJSTEV.js";
4
+ import "../../chunk-KWUOLKDO.js";
5
+ import "../../chunk-QAIN3WNN.js";
6
6
  import "../../chunk-IKZB26SK.js";
7
7
  import "../../chunk-6J2EJVND.js";
8
8
  import "../../chunk-F3R3UYBF.js";
9
- import "../../chunk-ORMEWXMH.js";
9
+ import "../../chunk-N3ETBM74.js";
10
10
  export {
11
11
  getCpuInfo
12
12
  };
@@ -1,2 +1,2 @@
1
- import { IDiskInfo } from './types';
1
+ import { IDiskInfo } from '@withwiz/toolkit/core/system/types';
2
2
  export declare function getDiskInfo(): Promise<IDiskInfo>;
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  getDiskInfo
3
- } from "../../chunk-AV7ELXHG.js";
4
- import "../../chunk-4KJZRI74.js";
5
- import "../../chunk-KG65BFPK.js";
3
+ } from "../../chunk-E5TDIRBJ.js";
4
+ import "../../chunk-KWUOLKDO.js";
5
+ import "../../chunk-QAIN3WNN.js";
6
6
  import "../../chunk-IKZB26SK.js";
7
7
  import "../../chunk-6J2EJVND.js";
8
8
  import "../../chunk-F3R3UYBF.js";
9
- import "../../chunk-ORMEWXMH.js";
9
+ import "../../chunk-N3ETBM74.js";
10
10
  export {
11
11
  getDiskInfo
12
12
  };
@@ -4,5 +4,5 @@
4
4
  * environment
5
5
  * - System
6
6
  */
7
- import { IEnvironmentInfo } from './types';
7
+ import { IEnvironmentInfo } from '@withwiz/toolkit/core/system/types';
8
8
  export declare function checkEnvironmentVariables(): IEnvironmentInfo[];
@@ -1,18 +1,18 @@
1
1
  import {
2
2
  checkEnvironmentVariables
3
- } from "../../chunk-4L6OSSSG.js";
4
- import "../../chunk-4KJZRI74.js";
3
+ } from "../../chunk-7S2PCYNT.js";
4
+ import "../../chunk-KWUOLKDO.js";
5
5
  import "../../chunk-CRJUFA73.js";
6
- import "../../chunk-KYAHURXN.js";
7
- import "../../chunk-2SIBG5BG.js";
8
- import "../../chunk-KG65BFPK.js";
6
+ import "../../chunk-N3TCQ5BF.js";
7
+ import "../../chunk-7YWUKMZD.js";
8
+ import "../../chunk-QAIN3WNN.js";
9
9
  import "../../chunk-IKZB26SK.js";
10
10
  import "../../chunk-PX535BHW.js";
11
- import "../../chunk-GORISA3L.js";
11
+ import "../../chunk-7KIM5MHV.js";
12
12
  import "../../chunk-6J2EJVND.js";
13
13
  import "../../chunk-F3R3UYBF.js";
14
14
  import "../../chunk-ERFD6YAW.js";
15
- import "../../chunk-ORMEWXMH.js";
15
+ import "../../chunk-N3ETBM74.js";
16
16
  export {
17
17
  checkEnvironmentVariables
18
18
  };
@@ -7,7 +7,7 @@
7
7
  *
8
8
  * ⚠️ CONDITIONAL: prismaClient가 제공되지 않으면 DB 체크 스킵
9
9
  */
10
- import { IServiceInfo } from './types';
10
+ import { IServiceInfo } from '@withwiz/toolkit/core/system/types';
11
11
  /**
12
12
  * 서비스 헬스 체크
13
13
  *
@@ -17,7 +17,7 @@ import { IServiceInfo } from './types';
17
17
  * @example
18
18
  * ```typescript
19
19
  * // From your project
20
- * import { checkServiceHealth } from '@withwiz/core/system/health-check';
20
+ * import { checkServiceHealth } from '@withwiz/toolkit/core/system/health-check';
21
21
  * import { prisma } from '<your-project>/prisma';
22
22
  *
23
23
  * const status = await checkServiceHealth(prisma);
@@ -1,15 +1,15 @@
1
1
  import {
2
2
  checkServiceHealth
3
- } from "../../chunk-MWBEE6VI.js";
3
+ } from "../../chunk-4EXZ2SDV.js";
4
+ import "../../chunk-KWUOLKDO.js";
4
5
  import "../../chunk-PBVP7CFZ.js";
5
- import "../../chunk-4KJZRI74.js";
6
- import "../../chunk-KG65BFPK.js";
6
+ import "../../chunk-QAIN3WNN.js";
7
7
  import "../../chunk-IKZB26SK.js";
8
- import "../../chunk-GORISA3L.js";
8
+ import "../../chunk-7KIM5MHV.js";
9
9
  import "../../chunk-6J2EJVND.js";
10
10
  import "../../chunk-F3R3UYBF.js";
11
11
  import "../../chunk-ERFD6YAW.js";
12
- import "../../chunk-ORMEWXMH.js";
12
+ import "../../chunk-N3ETBM74.js";
13
13
  export {
14
14
  checkServiceHealth
15
15
  };
@@ -4,7 +4,7 @@
4
4
  * index
5
5
  * - System
6
6
  */
7
- import { ISystemInfo } from './types';
7
+ import { ISystemInfo } from '@withwiz/toolkit/core/system/types';
8
8
  /**
9
9
  * 전체 시스템 정보를 수집하는 메인 함수
10
10
  * Linux와 macOS 플랫폼별로 최적화된 시스템 리소스 조회
@@ -43,9 +43,9 @@ export declare function getSimpleSystemInfo(): Promise<{
43
43
  /**
44
44
  * 특정 시스템 리소스만 조회하는 함수들
45
45
  */
46
- export { getCpuInfo } from './cpu';
47
- export { getMemoryInfo } from './memory';
48
- export { getDiskInfo } from './disk';
49
- export { getNetworkInfo } from './network';
50
- export { checkEnvironmentVariables } from './environment';
51
- export { checkServiceHealth } from './health-check';
46
+ export { getCpuInfo } from '@withwiz/toolkit/core/system/cpu';
47
+ export { getMemoryInfo } from '@withwiz/toolkit/core/system/memory';
48
+ export { getDiskInfo } from '@withwiz/toolkit/core/system/disk';
49
+ export { getNetworkInfo } from '@withwiz/toolkit/core/system/network';
50
+ export { checkEnvironmentVariables } from '@withwiz/toolkit/core/system/environment';
51
+ export { checkServiceHealth } from '@withwiz/toolkit/core/system/health-check';
@@ -1,39 +1,39 @@
1
- import {
2
- getMemoryInfo
3
- } from "../../chunk-VNDL2E44.js";
4
- import {
5
- getNetworkInfo
6
- } from "../../chunk-ZOWEW4GY.js";
7
1
  import {
8
2
  getCpuInfo
9
- } from "../../chunk-I4NT6G2T.js";
3
+ } from "../../chunk-DRTJSTEV.js";
10
4
  import {
11
5
  getDiskInfo
12
- } from "../../chunk-AV7ELXHG.js";
6
+ } from "../../chunk-E5TDIRBJ.js";
13
7
  import {
14
8
  checkEnvironmentVariables
15
- } from "../../chunk-4L6OSSSG.js";
9
+ } from "../../chunk-7S2PCYNT.js";
16
10
  import {
17
11
  checkServiceHealth
18
- } from "../../chunk-MWBEE6VI.js";
19
- import "../../chunk-PBVP7CFZ.js";
12
+ } from "../../chunk-4EXZ2SDV.js";
13
+ import {
14
+ getMemoryInfo
15
+ } from "../../chunk-U52U5SK7.js";
16
+ import {
17
+ getNetworkInfo
18
+ } from "../../chunk-WBHX4MJV.js";
20
19
  import {
21
20
  getPlatform,
22
21
  getRecommendedCommands
23
- } from "../../chunk-4KJZRI74.js";
22
+ } from "../../chunk-KWUOLKDO.js";
23
+ import "../../chunk-PBVP7CFZ.js";
24
24
  import "../../chunk-CRJUFA73.js";
25
- import "../../chunk-KYAHURXN.js";
26
- import "../../chunk-2SIBG5BG.js";
25
+ import "../../chunk-N3TCQ5BF.js";
26
+ import "../../chunk-7YWUKMZD.js";
27
27
  import {
28
28
  logger
29
- } from "../../chunk-KG65BFPK.js";
29
+ } from "../../chunk-QAIN3WNN.js";
30
30
  import "../../chunk-IKZB26SK.js";
31
31
  import "../../chunk-PX535BHW.js";
32
- import "../../chunk-GORISA3L.js";
32
+ import "../../chunk-7KIM5MHV.js";
33
33
  import "../../chunk-6J2EJVND.js";
34
34
  import "../../chunk-F3R3UYBF.js";
35
35
  import "../../chunk-ERFD6YAW.js";
36
- import "../../chunk-ORMEWXMH.js";
36
+ import "../../chunk-N3ETBM74.js";
37
37
 
38
38
  // src/core/system/index.ts
39
39
  import os from "os";
@@ -1,2 +1,2 @@
1
- import { IMemoryInfo } from './types';
1
+ import { IMemoryInfo } from '@withwiz/toolkit/core/system/types';
2
2
  export declare function getMemoryInfo(): Promise<IMemoryInfo>;
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  getMemoryInfo
3
- } from "../../chunk-VNDL2E44.js";
4
- import "../../chunk-4KJZRI74.js";
5
- import "../../chunk-KG65BFPK.js";
3
+ } from "../../chunk-U52U5SK7.js";
4
+ import "../../chunk-KWUOLKDO.js";
5
+ import "../../chunk-QAIN3WNN.js";
6
6
  import "../../chunk-IKZB26SK.js";
7
7
  import "../../chunk-6J2EJVND.js";
8
8
  import "../../chunk-F3R3UYBF.js";
9
- import "../../chunk-ORMEWXMH.js";
9
+ import "../../chunk-N3ETBM74.js";
10
10
  export {
11
11
  getMemoryInfo
12
12
  };
@@ -1,2 +1,2 @@
1
- import { INetworkInfo } from './types';
1
+ import { INetworkInfo } from '@withwiz/toolkit/core/system/types';
2
2
  export declare function getNetworkInfo(): Promise<INetworkInfo>;
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  getNetworkInfo
3
- } from "../../chunk-ZOWEW4GY.js";
4
- import "../../chunk-4KJZRI74.js";
5
- import "../../chunk-KG65BFPK.js";
3
+ } from "../../chunk-WBHX4MJV.js";
4
+ import "../../chunk-KWUOLKDO.js";
5
+ import "../../chunk-QAIN3WNN.js";
6
6
  import "../../chunk-IKZB26SK.js";
7
7
  import "../../chunk-6J2EJVND.js";
8
8
  import "../../chunk-F3R3UYBF.js";
9
- import "../../chunk-ORMEWXMH.js";
9
+ import "../../chunk-N3ETBM74.js";
10
10
  export {
11
11
  getNetworkInfo
12
12
  };
@@ -9,12 +9,12 @@ import {
9
9
  runMacCommand,
10
10
  runPlatformCommand,
11
11
  runSafeCommand
12
- } from "../../chunk-4KJZRI74.js";
13
- import "../../chunk-KG65BFPK.js";
12
+ } from "../../chunk-KWUOLKDO.js";
13
+ import "../../chunk-QAIN3WNN.js";
14
14
  import "../../chunk-IKZB26SK.js";
15
15
  import "../../chunk-6J2EJVND.js";
16
16
  import "../../chunk-F3R3UYBF.js";
17
- import "../../chunk-ORMEWXMH.js";
17
+ import "../../chunk-N3ETBM74.js";
18
18
  export {
19
19
  commandExists,
20
20
  convertToBytes,
@@ -1,4 +1,4 @@
1
- import type { IGeoLocationData, IDatabaseService, ICacheService } from './database';
1
+ import type { IGeoLocationData, IDatabaseService, ICacheService } from '@withwiz/toolkit/core/types/database';
2
2
  export interface IGeoIPConfig {
3
3
  cacheEnabled: boolean;
4
4
  cacheTTL: number;
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  __spreadProps,
3
3
  __spreadValues
4
- } from "../../chunk-ORMEWXMH.js";
4
+ } from "../../chunk-N3ETBM74.js";
5
5
 
6
6
  // src/core/types/qr-code.ts
7
7
  var DEFAULT_QR_SETTINGS = {
@@ -3,7 +3,7 @@ import {
3
3
  formatGenericError,
4
4
  formatRedisError
5
5
  } from "../../chunk-PBVP7CFZ.js";
6
- import "../../chunk-ORMEWXMH.js";
6
+ import "../../chunk-N3ETBM74.js";
7
7
  export {
8
8
  formatDatabaseError,
9
9
  formatGenericError,
@@ -1,4 +1,4 @@
1
- import "../../chunk-ORMEWXMH.js";
1
+ import "../../chunk-N3ETBM74.js";
2
2
 
3
3
  // src/core/utils/format-number.ts
4
4
  function formatNumber(num) {
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * 프레임워크 독립적인 재사용 가능한 함수들.
5
5
  * Next.js 응답 헬퍼는 @withwiz/toolkit/next/utils,
6
- * 브라우저 전용 헬퍼는 @withwiz/toolkit/react/utils 참조.
6
+ * 브라우저 전용 헬퍼는 @withwiz/ui/react/utils 참조.
7
7
  */
8
- export * from './sanitizer';
9
- export * from './type-guards';
8
+ export * from '@withwiz/toolkit/core/utils/sanitizer';
9
+ export * from '@withwiz/toolkit/core/utils/type-guards';
@@ -1,11 +1,3 @@
1
- import {
2
- removeEventHandlers,
3
- sanitizeArray,
4
- sanitizeHtml,
5
- sanitizeInput,
6
- sanitizeObjectFields,
7
- sanitizeUrl
8
- } from "../../chunk-GSUCBWML.js";
9
1
  import {
10
2
  isApiErrorResponse,
11
3
  isApiSuccessResponse,
@@ -34,7 +26,15 @@ import {
34
26
  isValidJSON,
35
27
  isValidUrl
36
28
  } from "../../chunk-4ETAGZIT.js";
37
- import "../../chunk-ORMEWXMH.js";
29
+ import {
30
+ removeEventHandlers,
31
+ sanitizeArray,
32
+ sanitizeHtml,
33
+ sanitizeInput,
34
+ sanitizeObjectFields,
35
+ sanitizeUrl
36
+ } from "../../chunk-3RK3MKAR.js";
37
+ import "../../chunk-N3ETBM74.js";
38
38
  export {
39
39
  isApiErrorResponse,
40
40
  isApiSuccessResponse,
@@ -1,4 +1,4 @@
1
- import "../../chunk-ORMEWXMH.js";
1
+ import "../../chunk-N3ETBM74.js";
2
2
 
3
3
  // src/core/utils/input-validation.ts
4
4
  var DANGEROUS_URL_SCHEMES = [
@@ -25,6 +25,32 @@ var ALLOWED_URL_SCHEMES = [
25
25
  "tel:",
26
26
  "sms:"
27
27
  ];
28
+ function isPrivateV4(a, b) {
29
+ if (a === 0) return true;
30
+ if (a === 127) return true;
31
+ if (a === 10) return true;
32
+ if (a === 169 && b === 254) return true;
33
+ if (a === 192 && b === 168) return true;
34
+ if (a === 172 && b >= 16 && b <= 31) return true;
35
+ return false;
36
+ }
37
+ function isInternalHost(hostname) {
38
+ let h = hostname.toLowerCase();
39
+ if (h.startsWith("[") && h.endsWith("]")) h = h.slice(1, -1);
40
+ if (h === "localhost" || h.endsWith(".localhost")) return true;
41
+ if (h.includes(":")) {
42
+ if (h === "::1" || h === "::") return true;
43
+ if (/^f[cd]/.test(h) || /^fe[89ab]/.test(h)) return true;
44
+ return false;
45
+ }
46
+ const v4 = h.match(/^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/);
47
+ if (v4) {
48
+ const o = v4.slice(1, 5).map(Number);
49
+ if (o.some((n) => n > 255)) return false;
50
+ return isPrivateV4(o[0], o[1]);
51
+ }
52
+ return false;
53
+ }
28
54
  function validateURL(url, options = {}) {
29
55
  const {
30
56
  allowedSchemes = ALLOWED_URL_SCHEMES,
@@ -58,7 +84,7 @@ function validateURL(url, options = {}) {
58
84
  try {
59
85
  const urlToParse = hasProtocol ? trimmedUrl : `https://${trimmedUrl}`;
60
86
  const parsed = new URL(urlToParse);
61
- if (!allowLocalhost && (parsed.hostname === "localhost" || parsed.hostname === "127.0.0.1")) {
87
+ if (!allowLocalhost && isInternalHost(parsed.hostname)) {
62
88
  return { valid: false, error: "Internal URLs are not allowed" };
63
89
  }
64
90
  return {
@@ -123,19 +149,29 @@ function detectSQLInjection(input) {
123
149
  return false;
124
150
  }
125
151
  const sqlPatterns = [
126
- /(\b(SELECT|INSERT|UPDATE|DELETE|DROP|CREATE|ALTER|EXEC|EXECUTE|UNION|DECLARE)\b)/gi,
127
- /--/g,
128
- // SQL 주석
129
- /\/\*/g,
130
- // SQL 블록 주석
131
- /;.*?/g,
132
- // 세미콜론 (쿼리 구분)
133
- /'\s*(OR|AND)\s*'?\d/gi,
134
- // ' OR 1=1
135
- /\bxp_\w+/gi,
136
- // SQL Server 확장 프로시저
137
- /\bsp_\w+/gi
138
- // SQL Server 저장 프로시저
152
+ /\bSELECT\b[\s\S]+\bFROM\b/i,
153
+ // SELECT ... FROM
154
+ /\bINSERT\b[\s\S]+\bINTO\b/i,
155
+ // INSERT INTO
156
+ /\bUPDATE\b[\s\S]+\bSET\b/i,
157
+ // UPDATE ... SET
158
+ /\bDELETE\b[\s\S]+\bFROM\b/i,
159
+ // DELETE FROM
160
+ /\b(?:DROP|ALTER|CREATE|TRUNCATE)\s+(?:TABLE|DATABASE|INDEX|VIEW|SCHEMA|COLUMN)\b/i,
161
+ /\bUNION\b[\s\S]*?\bSELECT\b/i,
162
+ // UNION SELECT
163
+ /\b(?:EXEC|EXECUTE)\s*\(/i,
164
+ // exec(
165
+ /'\s*(?:--|#|;)/,
166
+ // 따옴표 뒤 주석/종결 (admin'--)
167
+ /\/\*[\s\S]*?\*\//,
168
+ // 블록 주석
169
+ /'\s*(?:OR|AND)\s+'?\d/i,
170
+ // ' OR 1
171
+ /;\s*(?:SELECT|INSERT|UPDATE|DELETE|DROP|CREATE|ALTER|EXEC|UNION)\b/i,
172
+ // 스택 쿼리
173
+ /\b(?:xp_|sp_)\w+/i
174
+ // SQL Server 프로시저
139
175
  ];
140
176
  return sqlPatterns.some((pattern) => pattern.test(input));
141
177
  }
@@ -205,7 +241,7 @@ function validateInput(input, type) {
205
241
  if (detectXSS(input)) {
206
242
  return { valid: false, error: "Dangerous HTML pattern detected" };
207
243
  }
208
- return { valid: true, sanitized: input };
244
+ return { valid: true, sanitized: escapeHTML(input) };
209
245
  default:
210
246
  return { valid: false, error: "Unknown input type" };
211
247
  }
@@ -1,4 +1,4 @@
1
- import "../../chunk-ORMEWXMH.js";
1
+ import "../../chunk-N3ETBM74.js";
2
2
 
3
3
  // src/core/utils/ip-utils.ts
4
4
  function isPrivateIP(ip) {
@@ -2,7 +2,7 @@ import {
2
2
  AppError
3
3
  } from "../../chunk-ATAQRXTH.js";
4
4
  import "../../chunk-XQIAXMRY.js";
5
- import "../../chunk-ORMEWXMH.js";
5
+ import "../../chunk-N3ETBM74.js";
6
6
 
7
7
  // src/core/utils/optimistic-lock.ts
8
8
  async function withOptimisticLock(updateFn, entityName = "Record") {
@@ -6,8 +6,8 @@ import {
6
6
  sanitizeObjectFields,
7
7
  sanitizeUrl,
8
8
  sanitizer_default
9
- } from "../../chunk-GSUCBWML.js";
10
- import "../../chunk-ORMEWXMH.js";
9
+ } from "../../chunk-3RK3MKAR.js";
10
+ import "../../chunk-N3ETBM74.js";
11
11
  export {
12
12
  sanitizer_default as default,
13
13
  removeEventHandlers,
@@ -1,4 +1,4 @@
1
- import "../../chunk-ORMEWXMH.js";
1
+ import "../../chunk-N3ETBM74.js";
2
2
 
3
3
  // src/core/utils/short-code-generator.ts
4
4
  import { randomBytes } from "crypto";
@@ -1,18 +1,125 @@
1
1
  import {
2
- formatFullDateTime,
3
- formatSimpleDate,
4
- formatSimpleTime,
5
- formatTableDateTime,
6
- formatUserFriendlyDate,
7
- getCurrentUTC,
8
- getRelativeTime,
9
- getTimezoneOffset,
10
- getUserTimezone,
11
- localToUTC,
12
- toUTCISOString,
13
- utcToLocal
14
- } from "../../chunk-WWOYFWFB.js";
15
- import "../../chunk-ORMEWXMH.js";
2
+ __spreadValues
3
+ } from "../../chunk-N3ETBM74.js";
4
+
5
+ // src/core/utils/timezone.ts
6
+ function getCurrentUTC() {
7
+ return /* @__PURE__ */ new Date();
8
+ }
9
+ function utcToLocal(utcDate, timezone) {
10
+ const date = new Date(utcDate);
11
+ if (timezone) {
12
+ return new Date(date.toLocaleString("en-US", { timeZone: timezone }));
13
+ }
14
+ return date;
15
+ }
16
+ function localToUTC(localDate) {
17
+ const date = new Date(localDate);
18
+ return new Date(date.getTime() - date.getTimezoneOffset() * 6e4);
19
+ }
20
+ function formatUserFriendlyDate(date, options) {
21
+ const dateObj = new Date(date);
22
+ const defaultOptions = __spreadValues({
23
+ year: "numeric",
24
+ month: "long",
25
+ day: "numeric",
26
+ hour: "2-digit",
27
+ minute: "2-digit",
28
+ timeZoneName: "short",
29
+ hour12: false
30
+ }, options);
31
+ return dateObj.toLocaleDateString(void 0, defaultOptions);
32
+ }
33
+ function formatSimpleDate(date) {
34
+ const dateObj = new Date(date);
35
+ return dateObj.toLocaleDateString(void 0, {
36
+ year: "numeric",
37
+ month: "2-digit",
38
+ day: "2-digit"
39
+ });
40
+ }
41
+ function formatSimpleTime(date) {
42
+ const dateObj = new Date(date);
43
+ return dateObj.toLocaleTimeString(void 0, {
44
+ hour: "2-digit",
45
+ minute: "2-digit",
46
+ second: "2-digit",
47
+ hour12: false
48
+ });
49
+ }
50
+ function formatFullDateTime(date) {
51
+ const dateObj = new Date(date);
52
+ const dateStr = dateObj.toLocaleDateString(void 0, {
53
+ year: "numeric",
54
+ month: "2-digit",
55
+ day: "2-digit"
56
+ });
57
+ const timeStr = dateObj.toLocaleTimeString(void 0, {
58
+ hour: "2-digit",
59
+ minute: "2-digit",
60
+ second: "2-digit",
61
+ hour12: false
62
+ });
63
+ return `${dateStr} ${timeStr}`;
64
+ }
65
+ function formatTableDateTime(date) {
66
+ const dateObj = new Date(date);
67
+ return {
68
+ date: dateObj.toLocaleDateString(void 0, {
69
+ year: "numeric",
70
+ month: "2-digit",
71
+ day: "2-digit"
72
+ }),
73
+ time: dateObj.toLocaleTimeString(void 0, {
74
+ hour: "2-digit",
75
+ minute: "2-digit",
76
+ second: "2-digit",
77
+ hour12: false
78
+ })
79
+ };
80
+ }
81
+ function getRelativeTime(date) {
82
+ const now = /* @__PURE__ */ new Date();
83
+ const targetDate = new Date(date);
84
+ const diffInSeconds = Math.floor(
85
+ (now.getTime() - targetDate.getTime()) / 1e3
86
+ );
87
+ if (diffInSeconds < 60) {
88
+ return "just now";
89
+ }
90
+ const diffInMinutes = Math.floor(diffInSeconds / 60);
91
+ if (diffInMinutes < 60) {
92
+ return `${diffInMinutes}m ago`;
93
+ }
94
+ const diffInHours = Math.floor(diffInMinutes / 60);
95
+ if (diffInHours < 24) {
96
+ return `${diffInHours}h ago`;
97
+ }
98
+ const diffInDays = Math.floor(diffInHours / 24);
99
+ if (diffInDays < 7) {
100
+ return `${diffInDays}d ago`;
101
+ }
102
+ const diffInWeeks = Math.floor(diffInDays / 7);
103
+ if (diffInWeeks < 4) {
104
+ return `${diffInWeeks}w ago`;
105
+ }
106
+ const diffInMonths = Math.floor(diffInDays / 30);
107
+ if (diffInMonths < 12) {
108
+ return `${diffInMonths}mo ago`;
109
+ }
110
+ const diffInYears = Math.floor(diffInDays / 365);
111
+ return `${diffInYears}y ago`;
112
+ }
113
+ function getUserTimezone() {
114
+ return Intl.DateTimeFormat().resolvedOptions().timeZone;
115
+ }
116
+ function getTimezoneOffset() {
117
+ return (/* @__PURE__ */ new Date()).getTimezoneOffset();
118
+ }
119
+ function toUTCISOString(date) {
120
+ const dateObj = new Date(date);
121
+ return dateObj.toISOString();
122
+ }
16
123
  export {
17
124
  formatFullDateTime,
18
125
  formatSimpleDate,
@@ -27,7 +27,7 @@ import {
27
27
  isValidUrl,
28
28
  type_guards_default
29
29
  } from "../../chunk-4ETAGZIT.js";
30
- import "../../chunk-ORMEWXMH.js";
30
+ import "../../chunk-N3ETBM74.js";
31
31
  export {
32
32
  type_guards_default as default,
33
33
  isApiErrorResponse,
@@ -1,4 +1,4 @@
1
- import "../../chunk-ORMEWXMH.js";
1
+ import "../../chunk-N3ETBM74.js";
2
2
 
3
3
  // src/core/utils/url-normalizer.ts
4
4
  var SUPPORTED_SCHEMES = [
@@ -4,4 +4,4 @@
4
4
  * 범용 유효성 검사 모듈
5
5
  * 프로젝트 독립적인 검증 기능을 제공합니다.
6
6
  */
7
- export { PasswordValidator, PasswordStrength, defaultPasswordSchema, strongPasswordSchema, type IPasswordValidationResult, type IPasswordValidationOptions, } from './password-validator';
7
+ export { PasswordValidator, PasswordStrength, defaultPasswordSchema, strongPasswordSchema, type IPasswordValidationResult, type IPasswordValidationOptions, } from '@withwiz/toolkit/core/validators/password-validator';