@withwiz/toolkit 0.1.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 (380) hide show
  1. package/README.md +162 -0
  2. package/dist/auth/adapters/prisma/index.d.ts +43 -0
  3. package/dist/auth/adapters/prisma/index.js +284 -0
  4. package/dist/auth/core/email/token-generator.d.ts +43 -0
  5. package/dist/auth/core/email/token-generator.js +7 -0
  6. package/dist/auth/core/jwt/client.d.ts +87 -0
  7. package/dist/auth/core/jwt/client.js +36 -0
  8. package/dist/auth/core/jwt/index.d.ts +110 -0
  9. package/dist/auth/core/jwt/index.js +10 -0
  10. package/dist/auth/core/jwt/types.d.ts +6 -0
  11. package/dist/auth/core/jwt/types.js +13 -0
  12. package/dist/auth/core/oauth/index.d.ts +51 -0
  13. package/dist/auth/core/oauth/index.js +12 -0
  14. package/dist/auth/core/password/client-helper.d.ts +44 -0
  15. package/dist/auth/core/password/client-helper.js +28 -0
  16. package/dist/auth/core/password/index.d.ts +71 -0
  17. package/dist/auth/core/password/index.js +14 -0
  18. package/dist/auth/errors/index.d.ts +49 -0
  19. package/dist/auth/errors/index.js +17 -0
  20. package/dist/auth/index.d.ts +21 -0
  21. package/dist/auth/index.js +97 -0
  22. package/dist/auth/types/index.d.ts +213 -0
  23. package/dist/auth/types/index.js +13 -0
  24. package/dist/cache/cache-config.d.ts +73 -0
  25. package/dist/cache/cache-config.js +12 -0
  26. package/dist/cache/cache-defaults.d.ts +141 -0
  27. package/dist/cache/cache-defaults.js +33 -0
  28. package/dist/cache/cache-env.d.ts +75 -0
  29. package/dist/cache/cache-env.js +25 -0
  30. package/dist/cache/cache-factory.d.ts +34 -0
  31. package/dist/cache/cache-factory.js +28 -0
  32. package/dist/cache/cache-invalidation.d.ts +90 -0
  33. package/dist/cache/cache-invalidation.js +24 -0
  34. package/dist/cache/cache-keys-legacy.d.ts +35 -0
  35. package/dist/cache/cache-keys-legacy.js +7 -0
  36. package/dist/cache/cache-redis.d.ts +74 -0
  37. package/dist/cache/cache-redis.js +24 -0
  38. package/dist/cache/cache-types.d.ts +151 -0
  39. package/dist/cache/cache-types.js +9 -0
  40. package/dist/cache/cache-wrapper.d.ts +27 -0
  41. package/dist/cache/cache-wrapper.js +22 -0
  42. package/dist/cache/cache.d.ts +14 -0
  43. package/dist/cache/cache.js +112 -0
  44. package/dist/cache/hybrid-cache-manager.d.ts +148 -0
  45. package/dist/cache/hybrid-cache-manager.js +13 -0
  46. package/dist/cache/index.d.ts +21 -0
  47. package/dist/cache/index.js +112 -0
  48. package/dist/cache/inmemory-cache-manager.d.ts +163 -0
  49. package/dist/cache/inmemory-cache-manager.js +9 -0
  50. package/dist/cache/noop-cache-manager.d.ts +36 -0
  51. package/dist/cache/noop-cache-manager.js +11 -0
  52. package/dist/cache/redis-cache-manager.d.ts +34 -0
  53. package/dist/cache/redis-cache-manager.js +11 -0
  54. package/dist/chunk-26Y7VEYG.js +93 -0
  55. package/dist/chunk-2DVWSDST.js +119 -0
  56. package/dist/chunk-2KAPUVIS.js +155 -0
  57. package/dist/chunk-2TO7WUKK.js +93 -0
  58. package/dist/chunk-34WAGUT5.js +117 -0
  59. package/dist/chunk-3DZA6AGS.js +120 -0
  60. package/dist/chunk-4DPSCTX4.js +212 -0
  61. package/dist/chunk-4KJXENRM.js +64 -0
  62. package/dist/chunk-4NWJ3WCZ.js +28 -0
  63. package/dist/chunk-4ODT3Q4A.js +86 -0
  64. package/dist/chunk-5ATB5D6S.js +40 -0
  65. package/dist/chunk-62FLBG6B.js +34 -0
  66. package/dist/chunk-62Q7DN5G.js +25 -0
  67. package/dist/chunk-65LHDFU3.js +242 -0
  68. package/dist/chunk-6C7HQIX4.js +13 -0
  69. package/dist/chunk-6D3HHYER.js +32 -0
  70. package/dist/chunk-6LTZCXNC.js +326 -0
  71. package/dist/chunk-7VJNLGAS.js +110 -0
  72. package/dist/chunk-7XFHGAJP.js +0 -0
  73. package/dist/chunk-A6EAAWMK.js +50 -0
  74. package/dist/chunk-AHDPGRXS.js +51 -0
  75. package/dist/chunk-AIH3F7JV.js +76 -0
  76. package/dist/chunk-AIHQBQ3E.js +109 -0
  77. package/dist/chunk-BKGVSC6S.js +152 -0
  78. package/dist/chunk-COK4ZXNG.js +0 -0
  79. package/dist/chunk-DEEJBDJE.js +47 -0
  80. package/dist/chunk-DH2ZHGW2.js +53 -0
  81. package/dist/chunk-EBUEBEJX.js +0 -0
  82. package/dist/chunk-EEUBKZV4.js +54 -0
  83. package/dist/chunk-EQYTE7WD.js +139 -0
  84. package/dist/chunk-EUQATJLI.js +180 -0
  85. package/dist/chunk-EZC6ETFW.js +80 -0
  86. package/dist/chunk-EZR55KV2.js +249 -0
  87. package/dist/chunk-F6LCSFSU.js +31 -0
  88. package/dist/chunk-FOKAATUQ.js +62 -0
  89. package/dist/chunk-FW3IEJ7H.js +71 -0
  90. package/dist/chunk-G26T2PRQ.js +53 -0
  91. package/dist/chunk-G4NI37NN.js +257 -0
  92. package/dist/chunk-GCZOXUDV.js +132 -0
  93. package/dist/chunk-GDWEDUHO.js +55 -0
  94. package/dist/chunk-GL2NANFH.js +434 -0
  95. package/dist/chunk-GPBOMJSZ.js +136 -0
  96. package/dist/chunk-H5I5GWAA.js +94 -0
  97. package/dist/chunk-HGC4CCKB.js +29 -0
  98. package/dist/chunk-HV3DGSSH.js +447 -0
  99. package/dist/chunk-I47QEDTX.js +193 -0
  100. package/dist/chunk-IAJNC34M.js +102 -0
  101. package/dist/chunk-IHXRF3BH.js +215 -0
  102. package/dist/chunk-IJEZ7G7S.js +26 -0
  103. package/dist/chunk-IQQKKUAV.js +151 -0
  104. package/dist/chunk-JBCDEAMW.js +35 -0
  105. package/dist/chunk-JLLMTTQ4.js +75 -0
  106. package/dist/chunk-JS5VI3OW.js +143 -0
  107. package/dist/chunk-KAWVMIRJ.js +44 -0
  108. package/dist/chunk-KMCJIL57.js +214 -0
  109. package/dist/chunk-KWTBD4CM.js +145 -0
  110. package/dist/chunk-KXAWBFJN.js +310 -0
  111. package/dist/chunk-L25BNU3E.js +56 -0
  112. package/dist/chunk-L76O3X3D.js +197 -0
  113. package/dist/chunk-LNV2E4I6.js +63 -0
  114. package/dist/chunk-MLGO3HLS.js +329 -0
  115. package/dist/chunk-MRJE6OX5.js +22 -0
  116. package/dist/chunk-MYLGYX4K.js +57 -0
  117. package/dist/chunk-N4YGR5WH.js +310 -0
  118. package/dist/chunk-OIVXOT2X.js +80 -0
  119. package/dist/chunk-ORMEWXMH.js +37 -0
  120. package/dist/chunk-POKGHK3L.js +57 -0
  121. package/dist/chunk-Q7IP4JMW.js +69 -0
  122. package/dist/chunk-RJUVBBZG.js +27 -0
  123. package/dist/chunk-S73334QY.js +89 -0
  124. package/dist/chunk-SLG26KHZ.js +101 -0
  125. package/dist/chunk-SR65BF6X.js +82 -0
  126. package/dist/chunk-SS56XFLI.js +19 -0
  127. package/dist/chunk-T3LJYAMO.js +277 -0
  128. package/dist/chunk-TDZJ6SAI.js +34 -0
  129. package/dist/chunk-TEIYA7U4.js +72 -0
  130. package/dist/chunk-TMVS4F7E.js +88 -0
  131. package/dist/chunk-TRBKJ7JT.js +137 -0
  132. package/dist/chunk-TXGNSECL.js +84 -0
  133. package/dist/chunk-TZAP5T4N.js +188 -0
  134. package/dist/chunk-UCYQNHST.js +24 -0
  135. package/dist/chunk-ULF5RDDX.js +0 -0
  136. package/dist/chunk-UXQRU3EM.js +167 -0
  137. package/dist/chunk-V5K5FYU7.js +200 -0
  138. package/dist/chunk-VDXB5DCY.js +68 -0
  139. package/dist/chunk-VSGKVZB4.js +47 -0
  140. package/dist/chunk-VWODEQ5C.js +204 -0
  141. package/dist/chunk-WDUFQFDP.js +193 -0
  142. package/dist/chunk-WHR7HPWF.js +126 -0
  143. package/dist/chunk-WSQMXMTL.js +122 -0
  144. package/dist/chunk-XHZ5L4FO.js +103 -0
  145. package/dist/chunk-XPASCCUA.js +404 -0
  146. package/dist/chunk-XRRPEBKB.js +231 -0
  147. package/dist/chunk-Y2TUZFCP.js +0 -0
  148. package/dist/chunk-Y3OTJH2S.js +473 -0
  149. package/dist/chunk-YBSHN67U.js +161 -0
  150. package/dist/chunk-YJ3TLEW3.js +100 -0
  151. package/dist/chunk-YJWLWUFK.js +105 -0
  152. package/dist/chunk-Z4D4CMDA.js +488 -0
  153. package/dist/chunk-ZHVUK5OY.js +314 -0
  154. package/dist/chunk-ZTN4X5FN.js +29 -0
  155. package/dist/chunk-ZZIKRBJU.js +96 -0
  156. package/dist/components/ui/Alert.d.ts +12 -0
  157. package/dist/components/ui/Alert.js +10 -0
  158. package/dist/components/ui/Badge.d.ts +7 -0
  159. package/dist/components/ui/Badge.js +8 -0
  160. package/dist/components/ui/Button.d.ts +7 -0
  161. package/dist/components/ui/Button.js +8 -0
  162. package/dist/components/ui/DataTable.d.ts +103 -0
  163. package/dist/components/ui/DataTable.js +606 -0
  164. package/dist/components/ui/DomainDisplay.d.ts +12 -0
  165. package/dist/components/ui/DomainDisplay.js +31 -0
  166. package/dist/components/ui/Input.d.ts +5 -0
  167. package/dist/components/ui/Input.js +8 -0
  168. package/dist/components/ui/Label.d.ts +5 -0
  169. package/dist/components/ui/Label.js +8 -0
  170. package/dist/components/ui/Pagination.d.ts +42 -0
  171. package/dist/components/ui/Pagination.js +20 -0
  172. package/dist/components/ui/Select.d.ts +15 -0
  173. package/dist/components/ui/Select.js +27 -0
  174. package/dist/components/ui/Skeleton.d.ts +6 -0
  175. package/dist/components/ui/Skeleton.js +8 -0
  176. package/dist/components/ui/TimezoneDisplay.d.ts +22 -0
  177. package/dist/components/ui/TimezoneDisplay.js +83 -0
  178. package/dist/components/ui/Tooltip.d.ts +21 -0
  179. package/dist/components/ui/Tooltip.js +94 -0
  180. package/dist/components/ui/WorldMapChart.d.ts +17 -0
  181. package/dist/components/ui/WorldMapChart.js +250 -0
  182. package/dist/components/ui/loading-bar.d.ts +20 -0
  183. package/dist/components/ui/loading-bar.js +15 -0
  184. package/dist/constants/error-codes.d.ts +389 -0
  185. package/dist/constants/error-codes.js +27 -0
  186. package/dist/constants/index.d.ts +11 -0
  187. package/dist/constants/index.js +85 -0
  188. package/dist/constants/messages.d.ts +83 -0
  189. package/dist/constants/messages.js +13 -0
  190. package/dist/constants/pagination.d.ts +43 -0
  191. package/dist/constants/pagination.js +15 -0
  192. package/dist/constants/security.d.ts +66 -0
  193. package/dist/constants/security.js +23 -0
  194. package/dist/constants/validation.d.ts +60 -0
  195. package/dist/constants/validation.js +19 -0
  196. package/dist/error/ErrorBoundary.d.ts +47 -0
  197. package/dist/error/app-error.d.ts +144 -0
  198. package/dist/error/app-error.js +10 -0
  199. package/dist/error/components/EmptyState.d.ts +50 -0
  200. package/dist/error/components/ErrorAlert.d.ts +50 -0
  201. package/dist/error/components/ErrorPage.d.ts +39 -0
  202. package/dist/error/components/LoadingState.d.ts +37 -0
  203. package/dist/error/components/index.d.ts +13 -0
  204. package/dist/error/components/index.js +18 -0
  205. package/dist/error/core/locale-detector.d.ts +44 -0
  206. package/dist/error/core/locale-detector.js +9 -0
  207. package/dist/error/error-display.d.ts +55 -0
  208. package/dist/error/error-display.js +24 -0
  209. package/dist/error/error-handler.d.ts +118 -0
  210. package/dist/error/error-handler.js +18 -0
  211. package/dist/error/friendly-messages-v2.d.ts +46 -0
  212. package/dist/error/friendly-messages-v2.js +15 -0
  213. package/dist/error/friendly-messages.d.ts +22 -0
  214. package/dist/error/friendly-messages.js +12 -0
  215. package/dist/error/hooks/index.d.ts +7 -0
  216. package/dist/error/hooks/index.js +14 -0
  217. package/dist/error/hooks/useErrorHandler.d.ts +67 -0
  218. package/dist/error/hooks/useErrorHandler.js +14 -0
  219. package/dist/error/index.d.ts +26 -0
  220. package/dist/error/index.js +289 -0
  221. package/dist/error/logging/error-logger.d.ts +77 -0
  222. package/dist/error/logging/error-logger.js +10 -0
  223. package/dist/error/logging/index.d.ts +9 -0
  224. package/dist/error/logging/index.js +35 -0
  225. package/dist/error/logging/transports/base.d.ts +30 -0
  226. package/dist/error/logging/transports/base.js +7 -0
  227. package/dist/error/logging/transports/console.d.ts +40 -0
  228. package/dist/error/logging/transports/console.js +9 -0
  229. package/dist/error/logging/transports/file.d.ts +49 -0
  230. package/dist/error/logging/transports/file.js +8 -0
  231. package/dist/error/logging/transports/index.d.ts +12 -0
  232. package/dist/error/logging/transports/index.js +25 -0
  233. package/dist/error/logging/transports/sentry.d.ts +44 -0
  234. package/dist/error/logging/transports/sentry.js +9 -0
  235. package/dist/error/logging/transports/slack.d.ts +51 -0
  236. package/dist/error/logging/transports/slack.js +9 -0
  237. package/dist/error/logging/types.d.ts +83 -0
  238. package/dist/error/logging/types.js +7 -0
  239. package/dist/error/messages/en.d.ts +5 -0
  240. package/dist/error/messages/en.js +7 -0
  241. package/dist/error/messages/index.d.ts +40 -0
  242. package/dist/error/messages/index.js +17 -0
  243. package/dist/error/messages/ko.d.ts +5 -0
  244. package/dist/error/messages/ko.js +7 -0
  245. package/dist/error/messages/types.d.ts +30 -0
  246. package/dist/error/messages/types.js +0 -0
  247. package/dist/error/recovery/circuit-breaker.d.ts +85 -0
  248. package/dist/error/recovery/circuit-breaker.js +9 -0
  249. package/dist/error/recovery/degradation.d.ts +56 -0
  250. package/dist/error/recovery/degradation.js +7 -0
  251. package/dist/error/recovery/fallback.d.ts +55 -0
  252. package/dist/error/recovery/fallback.js +11 -0
  253. package/dist/error/recovery/index.d.ts +12 -0
  254. package/dist/error/recovery/index.js +26 -0
  255. package/dist/error/recovery/retry.d.ts +44 -0
  256. package/dist/error/recovery/retry.js +7 -0
  257. package/dist/geolocation/batch-processor.d.ts +33 -0
  258. package/dist/geolocation/batch-processor.js +10 -0
  259. package/dist/geolocation/index.d.ts +14 -0
  260. package/dist/geolocation/index.js +36 -0
  261. package/dist/geolocation/providers/base-provider.d.ts +33 -0
  262. package/dist/geolocation/providers/base-provider.js +9 -0
  263. package/dist/geolocation/providers/index.d.ts +54 -0
  264. package/dist/geolocation/providers/index.js +29 -0
  265. package/dist/geolocation/providers/ip-api-provider.d.ts +17 -0
  266. package/dist/geolocation/providers/ip-api-provider.js +8 -0
  267. package/dist/geolocation/providers/ipapi-co-provider.d.ts +17 -0
  268. package/dist/geolocation/providers/ipapi-co-provider.js +8 -0
  269. package/dist/geolocation/providers/ipgeolocation-provider.d.ts +18 -0
  270. package/dist/geolocation/providers/ipgeolocation-provider.js +8 -0
  271. package/dist/geolocation/providers/maxmind-provider.d.ts +18 -0
  272. package/dist/geolocation/providers/maxmind-provider.js +8 -0
  273. package/dist/hooks/useDataTable.d.ts +51 -0
  274. package/dist/hooks/useDataTable.js +149 -0
  275. package/dist/hooks/useDebounce.d.ts +7 -0
  276. package/dist/hooks/useDebounce.js +7 -0
  277. package/dist/hooks/useExitIntent.d.ts +35 -0
  278. package/dist/hooks/useExitIntent.js +72 -0
  279. package/dist/hooks/useTimezone.d.ts +19 -0
  280. package/dist/hooks/useTimezone.js +11 -0
  281. package/dist/logger/logger.d.ts +11 -0
  282. package/dist/logger/logger.js +17 -0
  283. package/dist/middleware/auth.d.ts +87 -0
  284. package/dist/middleware/auth.js +20 -0
  285. package/dist/middleware/cors.d.ts +30 -0
  286. package/dist/middleware/cors.js +10 -0
  287. package/dist/middleware/error-handler.d.ts +23 -0
  288. package/dist/middleware/error-handler.js +13 -0
  289. package/dist/middleware/index.d.ts +16 -0
  290. package/dist/middleware/index.js +72 -0
  291. package/dist/middleware/init-request.d.ts +18 -0
  292. package/dist/middleware/init-request.js +8 -0
  293. package/dist/middleware/middleware-chain.d.ts +53 -0
  294. package/dist/middleware/middleware-chain.js +8 -0
  295. package/dist/middleware/rate-limit.d.ts +82 -0
  296. package/dist/middleware/rate-limit.js +14 -0
  297. package/dist/middleware/response-logger.d.ts +22 -0
  298. package/dist/middleware/response-logger.js +8 -0
  299. package/dist/middleware/security.d.ts +31 -0
  300. package/dist/middleware/security.js +9 -0
  301. package/dist/middleware/types.d.ts +45 -0
  302. package/dist/middleware/types.js +0 -0
  303. package/dist/middleware/wrappers.d.ts +91 -0
  304. package/dist/middleware/wrappers.js +32 -0
  305. package/dist/storage/r2-storage.d.ts +38 -0
  306. package/dist/storage/r2-storage.js +105 -0
  307. package/dist/system/cpu.d.ts +2 -0
  308. package/dist/system/cpu.js +9 -0
  309. package/dist/system/disk.d.ts +2 -0
  310. package/dist/system/disk.js +9 -0
  311. package/dist/system/environment.d.ts +8 -0
  312. package/dist/system/environment.js +9 -0
  313. package/dist/system/health-check.d.ts +26 -0
  314. package/dist/system/health-check.js +10 -0
  315. package/dist/system/index.d.ts +51 -0
  316. package/dist/system/index.js +194 -0
  317. package/dist/system/memory.d.ts +2 -0
  318. package/dist/system/memory.js +9 -0
  319. package/dist/system/network.d.ts +2 -0
  320. package/dist/system/network.js +9 -0
  321. package/dist/system/types.d.ts +93 -0
  322. package/dist/system/types.js +0 -0
  323. package/dist/system/utils.d.ts +12 -0
  324. package/dist/system/utils.js +26 -0
  325. package/dist/types/api.d.ts +80 -0
  326. package/dist/types/api.js +0 -0
  327. package/dist/types/database.d.ts +38 -0
  328. package/dist/types/database.js +0 -0
  329. package/dist/types/env.d.ts +105 -0
  330. package/dist/types/env.js +0 -0
  331. package/dist/types/geoip.d.ts +152 -0
  332. package/dist/types/geoip.js +0 -0
  333. package/dist/types/i18n.d.ts +11 -0
  334. package/dist/types/i18n.js +0 -0
  335. package/dist/types/qr-code.d.ts +139 -0
  336. package/dist/types/qr-code.js +75 -0
  337. package/dist/types/user.d.ts +54 -0
  338. package/dist/types/user.js +0 -0
  339. package/dist/utils/api-helpers.d.ts +147 -0
  340. package/dist/utils/api-helpers.js +30 -0
  341. package/dist/utils/client/client-utils.d.ts +3 -0
  342. package/dist/utils/client/client-utils.js +9 -0
  343. package/dist/utils/client/qr-code.d.ts +16 -0
  344. package/dist/utils/client/qr-code.js +215 -0
  345. package/dist/utils/cors.d.ts +40 -0
  346. package/dist/utils/cors.js +21 -0
  347. package/dist/utils/csv-export.d.ts +97 -0
  348. package/dist/utils/csv-export.js +20 -0
  349. package/dist/utils/error-message-formatter.d.ts +17 -0
  350. package/dist/utils/error-message-formatter.js +11 -0
  351. package/dist/utils/error-processor.d.ts +70 -0
  352. package/dist/utils/error-processor.js +34 -0
  353. package/dist/utils/format-number.d.ts +17 -0
  354. package/dist/utils/format-number.js +9 -0
  355. package/dist/utils/index.d.ts +13 -0
  356. package/dist/utils/index.js +160 -0
  357. package/dist/utils/input-validation.d.ts +88 -0
  358. package/dist/utils/input-validation.js +223 -0
  359. package/dist/utils/ip-utils.d.ts +15 -0
  360. package/dist/utils/ip-utils.js +91 -0
  361. package/dist/utils/optimistic-lock.d.ts +27 -0
  362. package/dist/utils/optimistic-lock.js +16 -0
  363. package/dist/utils/sanitizer.d.ts +72 -0
  364. package/dist/utils/sanitizer.js +19 -0
  365. package/dist/utils/shared-utils.d.ts +25 -0
  366. package/dist/utils/shared-utils.js +43 -0
  367. package/dist/utils/short-code-generator.d.ts +24 -0
  368. package/dist/utils/short-code-generator.js +9 -0
  369. package/dist/utils/timezone.d.ts +56 -0
  370. package/dist/utils/timezone.js +29 -0
  371. package/dist/utils/type-guards.d.ts +164 -0
  372. package/dist/utils/type-guards.js +59 -0
  373. package/dist/utils/url-normalizer.d.ts +53 -0
  374. package/dist/utils/url-normalizer.js +21 -0
  375. package/dist/validators/index.d.ts +7 -0
  376. package/dist/validators/index.js +13 -0
  377. package/dist/validators/password-validator.d.ts +86 -0
  378. package/dist/validators/password-validator.js +13 -0
  379. package/dist/world_countries-C2WUL2CQ.js +279 -0
  380. package/package.json +129 -0
@@ -0,0 +1,389 @@
1
+ /**
2
+ * Error Code Constant Definitions
3
+ * All API errors use these constants for consistency.
4
+ *
5
+ * Error Code Format: 5-digit HTTP extended code (XXXYY)
6
+ * - XXX: HTTP status code (400, 401, 403, 404, 409, 422, 429, 500, 503)
7
+ * - YY: Detail sequence (01~99)
8
+ *
9
+ * Categories:
10
+ * - 400xx: Validation errors
11
+ * - 401xx: Authentication errors
12
+ * - 403xx (01-09): Permission errors
13
+ * - 403xx (71-79): Security errors
14
+ * - 404xx: Resource not found
15
+ * - 409xx: Conflict
16
+ * - 422xx: Business logic errors
17
+ * - 429xx: Rate Limit
18
+ * - 500xx: Server errors
19
+ * - 503xx: Service unavailable
20
+ */
21
+ export declare const HTTP_STATUS: {
22
+ readonly OK: 200;
23
+ readonly CREATED: 201;
24
+ readonly NO_CONTENT: 204;
25
+ readonly BAD_REQUEST: 400;
26
+ readonly UNAUTHORIZED: 401;
27
+ readonly FORBIDDEN: 403;
28
+ readonly NOT_FOUND: 404;
29
+ readonly CONFLICT: 409;
30
+ readonly UNPROCESSABLE_ENTITY: 422;
31
+ readonly TOO_MANY_REQUESTS: 429;
32
+ readonly INTERNAL_SERVER_ERROR: 500;
33
+ readonly SERVICE_UNAVAILABLE: 503;
34
+ };
35
+ export declare const ERROR_CODES: {
36
+ readonly VALIDATION_ERROR: {
37
+ readonly code: 40001;
38
+ readonly key: "VALIDATION_ERROR";
39
+ readonly status: 400;
40
+ readonly message: "Invalid input values.";
41
+ };
42
+ readonly BAD_REQUEST: {
43
+ readonly code: 40002;
44
+ readonly key: "BAD_REQUEST";
45
+ readonly status: 400;
46
+ readonly message: "Invalid request.";
47
+ };
48
+ readonly INVALID_INPUT: {
49
+ readonly code: 40003;
50
+ readonly key: "INVALID_INPUT";
51
+ readonly status: 400;
52
+ readonly message: "Invalid input.";
53
+ };
54
+ readonly MISSING_REQUIRED_FIELD: {
55
+ readonly code: 40004;
56
+ readonly key: "MISSING_REQUIRED_FIELD";
57
+ readonly status: 400;
58
+ readonly message: "Required field is missing.";
59
+ };
60
+ readonly INVALID_URL_FORMAT: {
61
+ readonly code: 40005;
62
+ readonly key: "INVALID_URL_FORMAT";
63
+ readonly status: 400;
64
+ readonly message: "Invalid URL format.";
65
+ };
66
+ readonly INVALID_EMAIL_FORMAT: {
67
+ readonly code: 40006;
68
+ readonly key: "INVALID_EMAIL_FORMAT";
69
+ readonly status: 400;
70
+ readonly message: "Invalid email format.";
71
+ };
72
+ readonly PASSWORD_TOO_WEAK: {
73
+ readonly code: 40007;
74
+ readonly key: "PASSWORD_TOO_WEAK";
75
+ readonly status: 400;
76
+ readonly message: "Password is too weak.";
77
+ };
78
+ readonly INVALID_ALIAS_FORMAT: {
79
+ readonly code: 40008;
80
+ readonly key: "INVALID_ALIAS_FORMAT";
81
+ readonly status: 400;
82
+ readonly message: "Alias can only contain English letters, numbers, -, and _.";
83
+ };
84
+ readonly UNAUTHORIZED: {
85
+ readonly code: 40101;
86
+ readonly key: "UNAUTHORIZED";
87
+ readonly status: 401;
88
+ readonly message: "Authentication required.";
89
+ };
90
+ readonly INVALID_TOKEN: {
91
+ readonly code: 40102;
92
+ readonly key: "INVALID_TOKEN";
93
+ readonly status: 401;
94
+ readonly message: "Invalid token.";
95
+ };
96
+ readonly TOKEN_EXPIRED: {
97
+ readonly code: 40103;
98
+ readonly key: "TOKEN_EXPIRED";
99
+ readonly status: 401;
100
+ readonly message: "Token has expired.";
101
+ };
102
+ readonly INVALID_CREDENTIALS: {
103
+ readonly code: 40106;
104
+ readonly key: "INVALID_CREDENTIALS";
105
+ readonly status: 401;
106
+ readonly message: "Invalid email or password.";
107
+ };
108
+ readonly SESSION_EXPIRED: {
109
+ readonly code: 40107;
110
+ readonly key: "SESSION_EXPIRED";
111
+ readonly status: 401;
112
+ readonly message: "Session has expired.";
113
+ };
114
+ readonly FORBIDDEN: {
115
+ readonly code: 40304;
116
+ readonly key: "FORBIDDEN";
117
+ readonly status: 403;
118
+ readonly message: "Access denied.";
119
+ };
120
+ readonly EMAIL_NOT_VERIFIED: {
121
+ readonly code: 40305;
122
+ readonly key: "EMAIL_NOT_VERIFIED";
123
+ readonly status: 403;
124
+ readonly message: "Email verification required.";
125
+ };
126
+ readonly ACCOUNT_DISABLED: {
127
+ readonly code: 40308;
128
+ readonly key: "ACCOUNT_DISABLED";
129
+ readonly status: 403;
130
+ readonly message: "Account is disabled.";
131
+ };
132
+ readonly ACCOUNT_LOCKED: {
133
+ readonly code: 40309;
134
+ readonly key: "ACCOUNT_LOCKED";
135
+ readonly status: 403;
136
+ readonly message: "Account is locked.";
137
+ };
138
+ readonly NOT_FOUND: {
139
+ readonly code: 40401;
140
+ readonly key: "NOT_FOUND";
141
+ readonly status: 404;
142
+ readonly message: "Requested resource not found.";
143
+ };
144
+ readonly USER_NOT_FOUND: {
145
+ readonly code: 40402;
146
+ readonly key: "USER_NOT_FOUND";
147
+ readonly status: 404;
148
+ readonly message: "User not found.";
149
+ };
150
+ readonly LINK_NOT_FOUND: {
151
+ readonly code: 40403;
152
+ readonly key: "LINK_NOT_FOUND";
153
+ readonly status: 404;
154
+ readonly message: "Link not found.";
155
+ };
156
+ readonly TAG_NOT_FOUND: {
157
+ readonly code: 40408;
158
+ readonly key: "TAG_NOT_FOUND";
159
+ readonly status: 404;
160
+ readonly message: "Tag not found.";
161
+ };
162
+ readonly FAVORITE_NOT_FOUND: {
163
+ readonly code: 40409;
164
+ readonly key: "FAVORITE_NOT_FOUND";
165
+ readonly status: 404;
166
+ readonly message: "Favorite not found.";
167
+ };
168
+ readonly GROUP_NOT_FOUND: {
169
+ readonly code: 40410;
170
+ readonly key: "GROUP_NOT_FOUND";
171
+ readonly status: 404;
172
+ readonly message: "Group not found.";
173
+ };
174
+ readonly CONFLICT: {
175
+ readonly code: 40904;
176
+ readonly key: "CONFLICT";
177
+ readonly status: 409;
178
+ readonly message: "Resource conflict occurred.";
179
+ };
180
+ readonly DUPLICATE_RESOURCE: {
181
+ readonly code: 40905;
182
+ readonly key: "DUPLICATE_RESOURCE";
183
+ readonly status: 409;
184
+ readonly message: "Resource already exists.";
185
+ };
186
+ readonly EMAIL_ALREADY_EXISTS: {
187
+ readonly code: 40906;
188
+ readonly key: "EMAIL_ALREADY_EXISTS";
189
+ readonly status: 409;
190
+ readonly message: "Email is already registered.";
191
+ };
192
+ readonly ALIAS_ALREADY_EXISTS: {
193
+ readonly code: 40907;
194
+ readonly key: "ALIAS_ALREADY_EXISTS";
195
+ readonly status: 409;
196
+ readonly message: "Alias is already in use.";
197
+ };
198
+ readonly BUSINESS_RULE_VIOLATION: {
199
+ readonly code: 42201;
200
+ readonly key: "BUSINESS_RULE_VIOLATION";
201
+ readonly status: 422;
202
+ readonly message: "Unable to process the request.";
203
+ };
204
+ readonly INVALID_OPERATION: {
205
+ readonly code: 42202;
206
+ readonly key: "INVALID_OPERATION";
207
+ readonly status: 422;
208
+ readonly message: "Invalid operation.";
209
+ };
210
+ readonly QUOTA_EXCEEDED: {
211
+ readonly code: 42203;
212
+ readonly key: "QUOTA_EXCEEDED";
213
+ readonly status: 422;
214
+ readonly message: "Usage quota exceeded.";
215
+ };
216
+ readonly LINK_EXPIRED: {
217
+ readonly code: 42204;
218
+ readonly key: "LINK_EXPIRED";
219
+ readonly status: 422;
220
+ readonly message: "Link has expired.";
221
+ };
222
+ readonly LINK_INACTIVE: {
223
+ readonly code: 42205;
224
+ readonly key: "LINK_INACTIVE";
225
+ readonly status: 422;
226
+ readonly message: "Link is inactive.";
227
+ };
228
+ readonly LINK_PASSWORD_REQUIRED: {
229
+ readonly code: 42206;
230
+ readonly key: "LINK_PASSWORD_REQUIRED";
231
+ readonly status: 422;
232
+ readonly message: "Link password is required.";
233
+ };
234
+ readonly LINK_PASSWORD_INCORRECT: {
235
+ readonly code: 42207;
236
+ readonly key: "LINK_PASSWORD_INCORRECT";
237
+ readonly status: 422;
238
+ readonly message: "Incorrect link password.";
239
+ };
240
+ readonly RESERVED_WORD_USED: {
241
+ readonly code: 42208;
242
+ readonly key: "RESERVED_WORD_USED";
243
+ readonly status: 422;
244
+ readonly message: "Reserved words cannot be used as aliases.";
245
+ };
246
+ readonly ALREADY_FAVORITED: {
247
+ readonly code: 42209;
248
+ readonly key: "ALREADY_FAVORITED";
249
+ readonly status: 422;
250
+ readonly message: "Already added to favorites.";
251
+ };
252
+ readonly CANNOT_DELETE_OWN_ACCOUNT: {
253
+ readonly code: 42210;
254
+ readonly key: "CANNOT_DELETE_OWN_ACCOUNT";
255
+ readonly status: 422;
256
+ readonly message: "You cannot delete your own account.";
257
+ };
258
+ readonly FILE_TOO_LARGE: {
259
+ readonly code: 42211;
260
+ readonly key: "FILE_TOO_LARGE";
261
+ readonly status: 422;
262
+ readonly message: "File size exceeds the limit.";
263
+ };
264
+ readonly UNSUPPORTED_FILE_TYPE: {
265
+ readonly code: 42212;
266
+ readonly key: "UNSUPPORTED_FILE_TYPE";
267
+ readonly status: 422;
268
+ readonly message: "Unsupported file type.";
269
+ };
270
+ readonly RATE_LIMIT_EXCEEDED: {
271
+ readonly code: 42901;
272
+ readonly key: "RATE_LIMIT_EXCEEDED";
273
+ readonly status: 429;
274
+ readonly message: "Too many requests. Please try again later.";
275
+ };
276
+ readonly DAILY_LIMIT_EXCEEDED: {
277
+ readonly code: 42902;
278
+ readonly key: "DAILY_LIMIT_EXCEEDED";
279
+ readonly status: 429;
280
+ readonly message: "Daily limit exceeded.";
281
+ };
282
+ readonly API_QUOTA_EXCEEDED: {
283
+ readonly code: 42903;
284
+ readonly key: "API_QUOTA_EXCEEDED";
285
+ readonly status: 429;
286
+ readonly message: "API quota exceeded.";
287
+ };
288
+ readonly INTERNAL_SERVER_ERROR: {
289
+ readonly code: 50001;
290
+ readonly key: "INTERNAL_SERVER_ERROR";
291
+ readonly status: 500;
292
+ readonly message: "Internal server error occurred.";
293
+ };
294
+ readonly SERVER_ERROR: {
295
+ readonly code: 50002;
296
+ readonly key: "SERVER_ERROR";
297
+ readonly status: 500;
298
+ readonly message: "A temporary error occurred.";
299
+ };
300
+ readonly DATABASE_ERROR: {
301
+ readonly code: 50003;
302
+ readonly key: "DATABASE_ERROR";
303
+ readonly status: 500;
304
+ readonly message: "An error occurred during data processing.";
305
+ };
306
+ readonly EMAIL_SEND_FAILED: {
307
+ readonly code: 50006;
308
+ readonly key: "EMAIL_SEND_FAILED";
309
+ readonly status: 500;
310
+ readonly message: "Failed to send email.";
311
+ };
312
+ readonly CACHE_ERROR: {
313
+ readonly code: 50007;
314
+ readonly key: "CACHE_ERROR";
315
+ readonly status: 500;
316
+ readonly message: "An error occurred during cache processing.";
317
+ };
318
+ readonly FILE_UPLOAD_FAILED: {
319
+ readonly code: 50008;
320
+ readonly key: "FILE_UPLOAD_FAILED";
321
+ readonly status: 500;
322
+ readonly message: "Failed to upload file.";
323
+ };
324
+ readonly EXTERNAL_SERVICE_ERROR: {
325
+ readonly code: 50304;
326
+ readonly key: "EXTERNAL_SERVICE_ERROR";
327
+ readonly status: 503;
328
+ readonly message: "Unable to connect to external service.";
329
+ };
330
+ readonly SERVICE_UNAVAILABLE: {
331
+ readonly code: 50305;
332
+ readonly key: "SERVICE_UNAVAILABLE";
333
+ readonly status: 503;
334
+ readonly message: "Service is temporarily unavailable.";
335
+ };
336
+ readonly ACCESS_BLOCKED: {
337
+ readonly code: 40371;
338
+ readonly key: "ACCESS_BLOCKED";
339
+ readonly status: 403;
340
+ readonly message: "Blocked due to security policy.";
341
+ };
342
+ readonly SECURITY_VALIDATION_FAILED: {
343
+ readonly code: 40372;
344
+ readonly key: "SECURITY_VALIDATION_FAILED";
345
+ readonly status: 403;
346
+ readonly message: "Security validation failed.";
347
+ };
348
+ readonly BLOCKED_URL: {
349
+ readonly code: 40373;
350
+ readonly key: "BLOCKED_URL";
351
+ readonly status: 403;
352
+ readonly message: "Blocked URL.";
353
+ };
354
+ readonly SUSPICIOUS_ACTIVITY: {
355
+ readonly code: 40374;
356
+ readonly key: "SUSPICIOUS_ACTIVITY";
357
+ readonly status: 403;
358
+ readonly message: "Suspicious activity detected.";
359
+ };
360
+ readonly IP_BLOCKED: {
361
+ readonly code: 40375;
362
+ readonly key: "IP_BLOCKED";
363
+ readonly status: 403;
364
+ readonly message: "IP is blocked.";
365
+ };
366
+ readonly CORS_VIOLATION: {
367
+ readonly code: 40376;
368
+ readonly key: "CORS_VIOLATION";
369
+ readonly status: 403;
370
+ readonly message: "CORS policy violation.";
371
+ };
372
+ };
373
+ export type ErrorCodeKey = keyof typeof ERROR_CODES;
374
+ export type ErrorCodeValue = (typeof ERROR_CODES)[ErrorCodeKey];
375
+ export interface IErrorCodeInfo {
376
+ code: number;
377
+ key: string;
378
+ status: number;
379
+ message: string;
380
+ }
381
+ export declare function getErrorInfo(codeKey: ErrorCodeKey): IErrorCodeInfo;
382
+ export declare function getErrorByCode(code: number): IErrorCodeInfo | null;
383
+ export declare function getHttpStatus(code: number): number;
384
+ export declare function getErrorCategory(code: number): "validation" | "auth" | "permission" | "resource" | "conflict" | "business" | "rateLimit" | "server" | "security" | "unknown";
385
+ export declare function getDefaultErrorMessage(status: number): string;
386
+ export declare function getLogLevel(status: number): "debug" | "info" | "warn" | "error";
387
+ export declare function getAllErrorCodes(): IErrorCodeInfo[];
388
+ export declare function getErrorCodesByCategory(category: "validation" | "auth" | "permission" | "resource" | "conflict" | "business" | "rateLimit" | "server" | "security"): IErrorCodeInfo[];
389
+ export declare function formatErrorMessage(code: number, customMessage?: string): string;
@@ -0,0 +1,27 @@
1
+ import {
2
+ ERROR_CODES,
3
+ HTTP_STATUS,
4
+ formatErrorMessage,
5
+ getAllErrorCodes,
6
+ getDefaultErrorMessage,
7
+ getErrorByCode,
8
+ getErrorCategory,
9
+ getErrorCodesByCategory,
10
+ getErrorInfo,
11
+ getHttpStatus,
12
+ getLogLevel
13
+ } from "../chunk-Y3OTJH2S.js";
14
+ import "../chunk-ORMEWXMH.js";
15
+ export {
16
+ ERROR_CODES,
17
+ HTTP_STATUS,
18
+ formatErrorMessage,
19
+ getAllErrorCodes,
20
+ getDefaultErrorMessage,
21
+ getErrorByCode,
22
+ getErrorCategory,
23
+ getErrorCodesByCategory,
24
+ getErrorInfo,
25
+ getHttpStatus,
26
+ getLogLevel
27
+ };
@@ -0,0 +1,11 @@
1
+ /**
2
+ * @withwiz/constants
3
+ *
4
+ * 범용 상수 모듈
5
+ * 프로젝트 독립적인 상수들을 제공합니다.
6
+ */
7
+ export * from './error-codes';
8
+ export * from './pagination';
9
+ export * from './security';
10
+ export * from './validation';
11
+ export * from './messages';
@@ -0,0 +1,85 @@
1
+ import {
2
+ GENERIC_CONFIRM_MESSAGES,
3
+ GENERIC_ERROR_MESSAGES,
4
+ GENERIC_INFO_MESSAGES,
5
+ GENERIC_SUCCESS_MESSAGES
6
+ } from "../chunk-2TO7WUKK.js";
7
+ import {
8
+ DATE_RANGE,
9
+ FILTER_OPTIONS,
10
+ PAGE_SIZES,
11
+ PAGINATION,
12
+ SORT_OPTIONS
13
+ } from "../chunk-VDXB5DCY.js";
14
+ import {
15
+ API_KEY,
16
+ CSRF,
17
+ EMAIL_VERIFICATION,
18
+ JWT_DEFAULTS,
19
+ MAGIC_LINK,
20
+ OAUTH,
21
+ PASSWORD_RESET,
22
+ SECURITY_HEADERS,
23
+ SESSION
24
+ } from "../chunk-JLLMTTQ4.js";
25
+ import {
26
+ DATE,
27
+ FILE_UPLOAD,
28
+ NUMERIC,
29
+ PASSWORD,
30
+ TEXT,
31
+ URL,
32
+ USER_INPUT
33
+ } from "../chunk-LNV2E4I6.js";
34
+ import {
35
+ ERROR_CODES,
36
+ HTTP_STATUS,
37
+ formatErrorMessage,
38
+ getAllErrorCodes,
39
+ getDefaultErrorMessage,
40
+ getErrorByCode,
41
+ getErrorCategory,
42
+ getErrorCodesByCategory,
43
+ getErrorInfo,
44
+ getHttpStatus,
45
+ getLogLevel
46
+ } from "../chunk-Y3OTJH2S.js";
47
+ import "../chunk-ORMEWXMH.js";
48
+ export {
49
+ API_KEY,
50
+ CSRF,
51
+ DATE,
52
+ DATE_RANGE,
53
+ EMAIL_VERIFICATION,
54
+ ERROR_CODES,
55
+ FILE_UPLOAD,
56
+ FILTER_OPTIONS,
57
+ GENERIC_CONFIRM_MESSAGES,
58
+ GENERIC_ERROR_MESSAGES,
59
+ GENERIC_INFO_MESSAGES,
60
+ GENERIC_SUCCESS_MESSAGES,
61
+ HTTP_STATUS,
62
+ JWT_DEFAULTS,
63
+ MAGIC_LINK,
64
+ NUMERIC,
65
+ OAUTH,
66
+ PAGE_SIZES,
67
+ PAGINATION,
68
+ PASSWORD,
69
+ PASSWORD_RESET,
70
+ SECURITY_HEADERS,
71
+ SESSION,
72
+ SORT_OPTIONS,
73
+ TEXT,
74
+ URL,
75
+ USER_INPUT,
76
+ formatErrorMessage,
77
+ getAllErrorCodes,
78
+ getDefaultErrorMessage,
79
+ getErrorByCode,
80
+ getErrorCategory,
81
+ getErrorCodesByCategory,
82
+ getErrorInfo,
83
+ getHttpStatus,
84
+ getLogLevel
85
+ };
@@ -0,0 +1,83 @@
1
+ /**
2
+ * 범용 메시지 상수
3
+ *
4
+ * 프로젝트 독립적인 에러, 성공, 정보 메시지
5
+ */
6
+ export declare const GENERIC_ERROR_MESSAGES: {
7
+ readonly AUTH: {
8
+ readonly UNAUTHORIZED: "Authentication required";
9
+ readonly INVALID_TOKEN: "Invalid or expired token";
10
+ readonly TOKEN_EXPIRED: "Token has expired";
11
+ readonly INVALID_CREDENTIALS: "Invalid email or password";
12
+ readonly EMAIL_NOT_VERIFIED: "Email verification required";
13
+ readonly ACCOUNT_DISABLED: "Account is disabled";
14
+ readonly ADMIN_REQUIRED: "Admin privileges required";
15
+ readonly PASSWORD_NOT_SET: "Password not set. Please use OAuth login or set a password first.";
16
+ };
17
+ readonly RESOURCE: {
18
+ readonly NOT_FOUND: "Resource not found";
19
+ readonly USER_NOT_FOUND: "User not found";
20
+ };
21
+ readonly VALIDATION: {
22
+ readonly INVALID_INPUT: "Invalid input data";
23
+ readonly REQUIRED_FIELD: "This field is required";
24
+ readonly INVALID_EMAIL: "Please enter a valid email address";
25
+ readonly INVALID_URL: "Please enter a valid URL";
26
+ readonly PASSWORD_TOO_SHORT: "Password must be at least 8 characters";
27
+ readonly PASSWORD_TOO_LONG: "Password must be 128 characters or less";
28
+ readonly PASSWORD_REQUIRED: "Password is required";
29
+ readonly INVALID_FORMAT: "Invalid format";
30
+ };
31
+ readonly SERVER: {
32
+ readonly INTERNAL_ERROR: "Internal server error";
33
+ readonly SERVER_ERROR: "Server error occurred";
34
+ readonly DATABASE_ERROR: "Database error occurred";
35
+ readonly EXTERNAL_SERVICE_ERROR: "External service unavailable";
36
+ readonly SERVICE_UNAVAILABLE: "Service temporarily unavailable";
37
+ };
38
+ readonly RATE_LIMIT: {
39
+ readonly EXCEEDED: "Too many requests. Please try again later.";
40
+ readonly TRY_AGAIN_LATER: "Please try again in {seconds} seconds";
41
+ };
42
+ readonly SECURITY: {
43
+ readonly CORS_VIOLATION: "CORS policy violation";
44
+ readonly CSRF_VALIDATION_FAILED: "CSRF validation failed";
45
+ readonly FORBIDDEN: "Access denied";
46
+ };
47
+ };
48
+ export declare const GENERIC_SUCCESS_MESSAGES: {
49
+ readonly AUTH: {
50
+ readonly LOGIN_SUCCESS: "Login successful";
51
+ readonly LOGOUT_SUCCESS: "Logout successful";
52
+ readonly REGISTER_SUCCESS: "Registration successful";
53
+ readonly PASSWORD_CHANGED: "Password changed successfully";
54
+ readonly EMAIL_VERIFIED: "Email verified successfully";
55
+ readonly PASSWORD_RESET_SENT: "Password reset email sent";
56
+ };
57
+ readonly RESOURCE: {
58
+ readonly CREATED: "Resource created successfully";
59
+ readonly UPDATED: "Resource updated successfully";
60
+ readonly DELETED: "Resource deleted successfully";
61
+ };
62
+ readonly GENERAL: {
63
+ readonly OPERATION_SUCCESS: "Operation completed successfully";
64
+ readonly SAVED: "Changes saved successfully";
65
+ readonly SENT: "Sent successfully";
66
+ };
67
+ };
68
+ export declare const GENERIC_CONFIRM_MESSAGES: {
69
+ readonly DELETE: "Are you sure you want to delete this?";
70
+ readonly LOGOUT: "Are you sure you want to logout?";
71
+ readonly DISCARD_CHANGES: "Are you sure you want to discard changes?";
72
+ readonly DEACTIVATE: "Are you sure you want to deactivate this?";
73
+ };
74
+ export declare const GENERIC_INFO_MESSAGES: {
75
+ readonly NO_DATA: "No data available";
76
+ readonly LOADING: "Loading...";
77
+ readonly PROCESSING: "Processing...";
78
+ readonly PLEASE_WAIT: "Please wait...";
79
+ readonly NO_RESULTS: "No results found";
80
+ readonly EMPTY_LIST: "The list is empty";
81
+ };
82
+ export type GenericErrorMessageKey = keyof typeof GENERIC_ERROR_MESSAGES;
83
+ export type GenericSuccessMessageKey = keyof typeof GENERIC_SUCCESS_MESSAGES;
@@ -0,0 +1,13 @@
1
+ import {
2
+ GENERIC_CONFIRM_MESSAGES,
3
+ GENERIC_ERROR_MESSAGES,
4
+ GENERIC_INFO_MESSAGES,
5
+ GENERIC_SUCCESS_MESSAGES
6
+ } from "../chunk-2TO7WUKK.js";
7
+ import "../chunk-ORMEWXMH.js";
8
+ export {
9
+ GENERIC_CONFIRM_MESSAGES,
10
+ GENERIC_ERROR_MESSAGES,
11
+ GENERIC_INFO_MESSAGES,
12
+ GENERIC_SUCCESS_MESSAGES
13
+ };
@@ -0,0 +1,43 @@
1
+ /**
2
+ * 페이지네이션 관련 상수
3
+ */
4
+ export declare const PAGINATION: {
5
+ readonly DEFAULT_PAGE_SIZE: 10;
6
+ readonly MAX_PAGE_SIZE: 100;
7
+ readonly MIN_PAGE_SIZE: 1;
8
+ readonly DEFAULT_PAGE: 1;
9
+ };
10
+ export declare const PAGE_SIZES: {
11
+ readonly LINKS: 10;
12
+ readonly USERS: 20;
13
+ readonly RESERVED_WORDS: 20;
14
+ readonly NOTICES: 10;
15
+ readonly TAGS: 50;
16
+ readonly CLICK_HISTORY: 50;
17
+ readonly ACTIVITY: 20;
18
+ readonly SEARCH_RESULTS: 10;
19
+ };
20
+ export declare const SORT_OPTIONS: {
21
+ readonly DEFAULT_FIELD: "createdAt";
22
+ readonly DEFAULT_ORDER: "desc";
23
+ readonly ALLOWED_ORDERS: readonly ["asc", "desc"];
24
+ };
25
+ export declare const FILTER_OPTIONS: {
26
+ readonly DEFAULT: "all";
27
+ readonly ACTIVE_FILTER: {
28
+ readonly ALL: "all";
29
+ readonly ACTIVE: "active";
30
+ readonly INACTIVE: "inactive";
31
+ };
32
+ readonly PUBLIC_FILTER: {
33
+ readonly ALL: "all";
34
+ readonly PUBLIC: "public";
35
+ readonly PRIVATE: "private";
36
+ };
37
+ };
38
+ export declare const DATE_RANGE: {
39
+ readonly LAST_7_DAYS: 7;
40
+ readonly LAST_30_DAYS: 30;
41
+ readonly LAST_90_DAYS: 90;
42
+ readonly LAST_365_DAYS: 365;
43
+ };
@@ -0,0 +1,15 @@
1
+ import {
2
+ DATE_RANGE,
3
+ FILTER_OPTIONS,
4
+ PAGE_SIZES,
5
+ PAGINATION,
6
+ SORT_OPTIONS
7
+ } from "../chunk-VDXB5DCY.js";
8
+ import "../chunk-ORMEWXMH.js";
9
+ export {
10
+ DATE_RANGE,
11
+ FILTER_OPTIONS,
12
+ PAGE_SIZES,
13
+ PAGINATION,
14
+ SORT_OPTIONS
15
+ };