@fuzionx/framework 0.1.42 → 0.1.44

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 (80) hide show
  1. package/README.md +501 -501
  2. package/bin/fx.js +12 -12
  3. package/cli/db-sync.js +100 -100
  4. package/cli/index.js +494 -494
  5. package/cli/templates/make/app/controllers/HomeController.js +14 -14
  6. package/cli/templates/make/app/routes/api.js +7 -7
  7. package/cli/templates/make/app/routes/web.js +5 -5
  8. package/cli/templates/make/app/views/default/errors/404.html +11 -11
  9. package/cli/templates/make/app/views/default/errors/500.html +14 -14
  10. package/cli/templates/make/app/views/default/layouts/main.html +22 -22
  11. package/cli/templates/make/app/views/default/pages/home.html +11 -11
  12. package/cli/templates/make/controller.js.tpl +40 -40
  13. package/cli/templates/make/event.js.tpl +8 -8
  14. package/cli/templates/make/job.js.tpl +10 -10
  15. package/cli/templates/make/middleware.js.tpl +10 -10
  16. package/cli/templates/make/model.js.tpl +15 -15
  17. package/cli/templates/make/service.js.tpl +15 -15
  18. package/cli/templates/make/task.js.tpl +15 -15
  19. package/cli/templates/make/test.js.tpl +7 -7
  20. package/cli/templates/make/worker.js.tpl +14 -14
  21. package/cli/templates/make/ws.js.tpl +18 -18
  22. package/index.js +67 -67
  23. package/lib/core/AppError.js +46 -46
  24. package/lib/core/Application.js +1006 -1006
  25. package/lib/core/AutoLoader.js +227 -227
  26. package/lib/core/Base.js +64 -64
  27. package/lib/core/Config.js +331 -228
  28. package/lib/core/Context.js +484 -484
  29. package/lib/database/ConnectionManager.js +208 -208
  30. package/lib/database/MariaModel.js +29 -29
  31. package/lib/database/Model.js +247 -247
  32. package/lib/database/ModelRegistry.js +72 -72
  33. package/lib/database/MongoModel.js +232 -232
  34. package/lib/database/Pagination.js +37 -37
  35. package/lib/database/PostgreModel.js +29 -29
  36. package/lib/database/QueryBuilder.js +172 -172
  37. package/lib/database/SQLiteModel.js +27 -27
  38. package/lib/database/SqlModel.js +257 -257
  39. package/lib/database/SqlQueryBuilder.js +332 -332
  40. package/lib/helpers/CryptoHelper.js +48 -48
  41. package/lib/helpers/FileHelper.js +61 -61
  42. package/lib/helpers/HashHelper.js +39 -39
  43. package/lib/helpers/I18nHelper.js +174 -174
  44. package/lib/helpers/Logger.js +108 -108
  45. package/lib/helpers/MediaHelper.js +84 -84
  46. package/lib/http/Controller.js +34 -34
  47. package/lib/http/ErrorHandler.js +136 -136
  48. package/lib/http/Middleware.js +43 -43
  49. package/lib/http/Router.js +109 -109
  50. package/lib/http/Validation.js +125 -125
  51. package/lib/middleware/apiAuth.js +79 -79
  52. package/lib/middleware/auth.js +42 -42
  53. package/lib/middleware/bodyParser.js +19 -19
  54. package/lib/middleware/cors.js +47 -47
  55. package/lib/middleware/csrf.js +32 -32
  56. package/lib/middleware/index.js +13 -13
  57. package/lib/middleware/session.js +27 -27
  58. package/lib/middleware/theme.js +20 -20
  59. package/lib/realtime/RoomManager.js +85 -85
  60. package/lib/realtime/WsHandler.js +107 -107
  61. package/lib/schedule/Job.js +38 -38
  62. package/lib/schedule/Queue.js +103 -103
  63. package/lib/schedule/Scheduler.js +171 -171
  64. package/lib/schedule/Task.js +39 -39
  65. package/lib/schedule/WorkerPool.js +225 -225
  66. package/lib/services/EventBus.js +94 -94
  67. package/lib/services/Service.js +261 -261
  68. package/lib/services/Storage.js +112 -112
  69. package/lib/utilities/ArrUtil.js +112 -112
  70. package/lib/utilities/DateUtil.js +98 -98
  71. package/lib/utilities/FunctionUtil.js +119 -119
  72. package/lib/utilities/NumUtil.js +75 -75
  73. package/lib/utilities/ObjectUtil.js +170 -170
  74. package/lib/utilities/PaginationUtil.js +81 -81
  75. package/lib/utilities/StrUtil.js +105 -105
  76. package/lib/utilities/index.js +18 -18
  77. package/lib/view/OpenAPI.js +231 -231
  78. package/lib/view/View.js +83 -83
  79. package/package.json +2 -2
  80. package/testing/index.js +232 -232
@@ -1,46 +1,46 @@
1
- /**
2
- * AppError — 프레임워크 에러 타입
3
- *
4
- * HTTP 상태 코드 + 추가 데이터를 포함하는 에러.
5
- * ServiceError, ValidationError 등의 기반 클래스.
6
- *
7
- * @see docs/framework/08-error-handling.md
8
- */
9
- export default class AppError extends Error {
10
- /**
11
- * @param {string} message - 에러 메시지
12
- * @param {number} [status=500] - HTTP 상태 코드
13
- * @param {object|null} [data=null] - 추가 데이터 (validation errors 등)
14
- */
15
- constructor(message, status = 500, data = null) {
16
- super(message);
17
- this.name = 'AppError';
18
- this.status = status;
19
- this.data = data;
20
- }
21
- }
22
-
23
- /**
24
- * ServiceError — 비즈니스 로직 에러 (400/403/404)
25
- */
26
- export class ServiceError extends AppError {
27
- constructor(message, status = 400, data = null) {
28
- super(message, status, data);
29
- this.name = 'ServiceError';
30
- }
31
- }
32
-
33
- /**
34
- * ValidationError — 입력 검증 실패 (422)
35
- */
36
- export class ValidationError extends AppError {
37
- /**
38
- * @param {string} message - 에러 메시지
39
- * @param {object} fields - 필드별 에러 메시지 { email: '필수 입력', name: '2자 이상' }
40
- */
41
- constructor(message = 'Validation failed', fields = {}) {
42
- super(message, 422, { fields });
43
- this.name = 'ValidationError';
44
- this.fields = fields;
45
- }
46
- }
1
+ /**
2
+ * AppError — 프레임워크 에러 타입
3
+ *
4
+ * HTTP 상태 코드 + 추가 데이터를 포함하는 에러.
5
+ * ServiceError, ValidationError 등의 기반 클래스.
6
+ *
7
+ * @see docs/framework/08-error-handling.md
8
+ */
9
+ export default class AppError extends Error {
10
+ /**
11
+ * @param {string} message - 에러 메시지
12
+ * @param {number} [status=500] - HTTP 상태 코드
13
+ * @param {object|null} [data=null] - 추가 데이터 (validation errors 등)
14
+ */
15
+ constructor(message, status = 500, data = null) {
16
+ super(message);
17
+ this.name = 'AppError';
18
+ this.status = status;
19
+ this.data = data;
20
+ }
21
+ }
22
+
23
+ /**
24
+ * ServiceError — 비즈니스 로직 에러 (400/403/404)
25
+ */
26
+ export class ServiceError extends AppError {
27
+ constructor(message, status = 400, data = null) {
28
+ super(message, status, data);
29
+ this.name = 'ServiceError';
30
+ }
31
+ }
32
+
33
+ /**
34
+ * ValidationError — 입력 검증 실패 (422)
35
+ */
36
+ export class ValidationError extends AppError {
37
+ /**
38
+ * @param {string} message - 에러 메시지
39
+ * @param {object} fields - 필드별 에러 메시지 { email: '필수 입력', name: '2자 이상' }
40
+ */
41
+ constructor(message = 'Validation failed', fields = {}) {
42
+ super(message, 422, { fields });
43
+ this.name = 'ValidationError';
44
+ this.fields = fields;
45
+ }
46
+ }