glasswork 0.1.1 → 0.2.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 (120) hide show
  1. package/dist/config/config-service.d.ts +101 -0
  2. package/dist/config/config-service.d.ts.map +1 -0
  3. package/dist/config/config-service.js +164 -0
  4. package/dist/config/config-service.js.map +1 -0
  5. package/dist/config/helpers.d.ts +101 -0
  6. package/dist/config/helpers.d.ts.map +1 -0
  7. package/dist/config/helpers.js +122 -0
  8. package/dist/config/helpers.js.map +1 -0
  9. package/dist/config/index.d.ts +39 -0
  10. package/dist/config/index.d.ts.map +1 -0
  11. package/dist/config/index.js +41 -0
  12. package/dist/config/index.js.map +1 -0
  13. package/dist/config/providers.d.ts +163 -0
  14. package/dist/config/providers.d.ts.map +1 -0
  15. package/dist/config/providers.js +188 -0
  16. package/dist/config/providers.js.map +1 -0
  17. package/dist/config/types.d.ts +98 -0
  18. package/dist/config/types.d.ts.map +1 -0
  19. package/dist/config/types.js +7 -0
  20. package/dist/config/types.js.map +1 -0
  21. package/dist/core/bootstrap.js +9 -3
  22. package/dist/core/bootstrap.js.map +1 -1
  23. package/dist/core/types.d.ts +2 -1
  24. package/dist/core/types.d.ts.map +1 -1
  25. package/dist/http/errors.d.ts +39 -0
  26. package/dist/http/errors.d.ts.map +1 -1
  27. package/dist/http/errors.js +78 -0
  28. package/dist/http/errors.js.map +1 -1
  29. package/dist/http/route-helpers.d.ts +13 -6
  30. package/dist/http/route-helpers.d.ts.map +1 -1
  31. package/dist/http/route-helpers.js +29 -1
  32. package/dist/http/route-helpers.js.map +1 -1
  33. package/dist/index.d.ts +5 -3
  34. package/dist/index.d.ts.map +1 -1
  35. package/dist/index.js +9 -5
  36. package/dist/index.js.map +1 -1
  37. package/dist/middleware/rate-limit.d.ts.map +1 -1
  38. package/dist/middleware/rate-limit.js +2 -16
  39. package/dist/middleware/rate-limit.js.map +1 -1
  40. package/dist/openapi/openapi.d.ts +1 -1
  41. package/dist/openapi/openapi.d.ts.map +1 -1
  42. package/dist/openapi/openapi.js +21 -3
  43. package/dist/openapi/openapi.js.map +1 -1
  44. package/package.json +22 -1
  45. package/dist/bootstrap.d.ts +0 -55
  46. package/dist/bootstrap.d.ts.map +0 -1
  47. package/dist/bootstrap.js +0 -359
  48. package/dist/bootstrap.js.map +0 -1
  49. package/dist/environment.d.ts +0 -21
  50. package/dist/environment.d.ts.map +0 -1
  51. package/dist/environment.js +0 -29
  52. package/dist/environment.js.map +0 -1
  53. package/dist/error-handler.d.ts +0 -33
  54. package/dist/error-handler.d.ts.map +0 -1
  55. package/dist/error-handler.js +0 -53
  56. package/dist/error-handler.js.map +0 -1
  57. package/dist/errors.d.ts +0 -36
  58. package/dist/errors.d.ts.map +0 -1
  59. package/dist/errors.js +0 -65
  60. package/dist/errors.js.map +0 -1
  61. package/dist/get-client-ip.d.ts +0 -24
  62. package/dist/get-client-ip.d.ts.map +0 -1
  63. package/dist/get-client-ip.js +0 -49
  64. package/dist/get-client-ip.js.map +0 -1
  65. package/dist/logger.d.ts +0 -37
  66. package/dist/logger.d.ts.map +0 -1
  67. package/dist/logger.js +0 -52
  68. package/dist/logger.js.map +0 -1
  69. package/dist/module.d.ts +0 -21
  70. package/dist/module.d.ts.map +0 -1
  71. package/dist/module.js +0 -85
  72. package/dist/module.js.map +0 -1
  73. package/dist/omit.d.ts +0 -20
  74. package/dist/omit.d.ts.map +0 -1
  75. package/dist/omit.js +0 -28
  76. package/dist/omit.js.map +0 -1
  77. package/dist/openapi-defaults.d.ts +0 -11
  78. package/dist/openapi-defaults.d.ts.map +0 -1
  79. package/dist/openapi-defaults.js +0 -127
  80. package/dist/openapi-defaults.js.map +0 -1
  81. package/dist/openapi-hooks.d.ts +0 -14
  82. package/dist/openapi-hooks.d.ts.map +0 -1
  83. package/dist/openapi-hooks.js +0 -80
  84. package/dist/openapi-hooks.js.map +0 -1
  85. package/dist/openapi.d.ts +0 -24
  86. package/dist/openapi.d.ts.map +0 -1
  87. package/dist/openapi.js +0 -106
  88. package/dist/openapi.js.map +0 -1
  89. package/dist/pagination.d.ts +0 -48
  90. package/dist/pagination.d.ts.map +0 -1
  91. package/dist/pagination.js +0 -43
  92. package/dist/pagination.js.map +0 -1
  93. package/dist/pick.d.ts +0 -20
  94. package/dist/pick.d.ts.map +0 -1
  95. package/dist/pick.js +0 -28
  96. package/dist/pick.js.map +0 -1
  97. package/dist/rate-limit.d.ts +0 -7
  98. package/dist/rate-limit.d.ts.map +0 -1
  99. package/dist/rate-limit.js +0 -180
  100. package/dist/rate-limit.js.map +0 -1
  101. package/dist/route-helpers.d.ts +0 -172
  102. package/dist/route-helpers.d.ts.map +0 -1
  103. package/dist/route-helpers.js +0 -249
  104. package/dist/route-helpers.js.map +0 -1
  105. package/dist/serialize-dates.d.ts +0 -27
  106. package/dist/serialize-dates.d.ts.map +0 -1
  107. package/dist/serialize-dates.js +0 -39
  108. package/dist/serialize-dates.js.map +0 -1
  109. package/dist/testing.d.ts +0 -87
  110. package/dist/testing.d.ts.map +0 -1
  111. package/dist/testing.js +0 -94
  112. package/dist/testing.js.map +0 -1
  113. package/dist/types.d.ts +0 -273
  114. package/dist/types.d.ts.map +0 -1
  115. package/dist/types.js +0 -2
  116. package/dist/types.js.map +0 -1
  117. package/dist/utils.d.ts +0 -9
  118. package/dist/utils.d.ts.map +0 -1
  119. package/dist/utils.js +0 -31
  120. package/dist/utils.js.map +0 -1
package/dist/types.d.ts DELETED
@@ -1,273 +0,0 @@
1
- import type { AwilixContainer } from 'awilix';
2
- import type { ErrorHandler, Hono } from 'hono';
3
- /**
4
- * Service lifetime scope for dependency injection
5
- */
6
- export type ServiceScope = 'SINGLETON' | 'SCOPED' | 'TRANSIENT';
7
- /**
8
- * Constructor type for class providers
9
- *
10
- * We use `any[]` for constructor arguments because in dependency injection,
11
- * we can't know at compile time what arguments will be injected - that's
12
- * determined by the DI container at runtime. This is a legitimate use of `any`.
13
- */
14
- export type Constructor<T = unknown> = new (...args: any[]) => T;
15
- /**
16
- * Provider configuration for dependency injection
17
- */
18
- export type ProviderConfig = Constructor | {
19
- provide: string | Constructor;
20
- useClass: Constructor;
21
- scope?: ServiceScope;
22
- } | {
23
- provide: string;
24
- useValue: unknown;
25
- } | {
26
- provide: string;
27
- useFactory: (container: unknown) => unknown;
28
- inject?: string[];
29
- };
30
- /**
31
- * Route factory function that receives Hono router and services
32
- */
33
- export type RouteFactory = (router: Hono, services: Record<string, unknown>) => void;
34
- /**
35
- * Module configuration
36
- */
37
- export interface ModuleConfig {
38
- /**
39
- * Unique module name
40
- */
41
- name: string;
42
- /**
43
- * Base path for routes (e.g., 'auth' becomes /api/auth)
44
- */
45
- basePath?: string;
46
- /**
47
- * Service providers to register
48
- */
49
- providers?: ProviderConfig[];
50
- /**
51
- * Modules to import (access their exported providers)
52
- */
53
- imports?: ModuleConfig[];
54
- /**
55
- * Providers to export (available to importing modules)
56
- */
57
- exports?: (Constructor | string)[];
58
- /**
59
- * Route factory function
60
- */
61
- routes?: RouteFactory;
62
- }
63
- /**
64
- * Environment type for conditional behavior
65
- */
66
- export type Environment = 'development' | 'production' | 'test';
67
- /**
68
- * OpenAPI documentation configuration
69
- */
70
- export interface OpenAPIDocumentation {
71
- info: {
72
- title: string;
73
- version: string;
74
- description?: string;
75
- contact?: {
76
- name?: string;
77
- email?: string;
78
- url?: string;
79
- };
80
- };
81
- tags?: Array<{
82
- name: string;
83
- description?: string;
84
- }>;
85
- servers?: Array<{
86
- url: string;
87
- description?: string;
88
- }>;
89
- components?: Record<string, unknown>;
90
- }
91
- /**
92
- * Hook function for customizing OpenAPI responses
93
- *
94
- * Receives the response object and context, returns modified response.
95
- * This allows both framework and applications to add headers, modify
96
- * descriptions, etc. globally across all routes.
97
- */
98
- export type OpenAPIResponseHook = (response: {
99
- description: string;
100
- headers?: Record<string, {
101
- $ref: string;
102
- }>;
103
- content?: Record<string, unknown>;
104
- }, context: {
105
- statusCode: string;
106
- routeConfig: {
107
- public?: boolean;
108
- paginate?: boolean;
109
- tags?: string[];
110
- summary?: string;
111
- };
112
- }) => {
113
- description: string;
114
- headers?: Record<string, {
115
- $ref: string;
116
- }>;
117
- content?: Record<string, unknown>;
118
- };
119
- /**
120
- * OpenAPI configuration options
121
- */
122
- export interface OpenAPIOptions {
123
- /**
124
- * Whether to enable OpenAPI generation
125
- */
126
- enabled?: boolean;
127
- /**
128
- * Serve OpenAPI specs at /api/openapi.json (default: true in development)
129
- */
130
- serveSpecs?: boolean;
131
- /**
132
- * Serve Swagger UI at /api (default: true in development)
133
- */
134
- serveUI?: boolean;
135
- /**
136
- * Write OpenAPI specs to file (path relative to cwd)
137
- */
138
- writeToFile?: string;
139
- /**
140
- * OpenAPI documentation
141
- */
142
- documentation?: OpenAPIDocumentation;
143
- /**
144
- * Response hooks for customizing OpenAPI responses
145
- *
146
- * Hooks are applied in order to each response object.
147
- * Use this to add custom headers, modify descriptions, etc.
148
- */
149
- responseHooks?: OpenAPIResponseHook[];
150
- }
151
- /**
152
- * Rate limiting storage backend
153
- */
154
- export type RateLimitStorage = 'memory' | 'dynamodb';
155
- /**
156
- * Rate limiting configuration
157
- */
158
- export interface RateLimitOptions {
159
- /**
160
- * Whether rate limiting is enabled
161
- */
162
- enabled: boolean;
163
- /**
164
- * Storage backend
165
- */
166
- storage: RateLimitStorage;
167
- /**
168
- * Rate limit window in milliseconds (default: 60000 = 1 minute)
169
- */
170
- windowMs?: number;
171
- /**
172
- * Maximum requests per window (default: 100)
173
- */
174
- maxRequests?: number;
175
- /**
176
- * DynamoDB configuration (required if storage is 'dynamodb')
177
- */
178
- dynamodb?: {
179
- tableName: string;
180
- region?: string;
181
- };
182
- }
183
- /**
184
- * Middleware configuration options
185
- */
186
- export interface MiddlewareOptions {
187
- /**
188
- * Enable request ID middleware
189
- * @default true
190
- */
191
- requestId?: boolean;
192
- /**
193
- * Enable secure headers middleware
194
- * @default true in production
195
- */
196
- secureHeaders?: boolean;
197
- /**
198
- * CORS configuration
199
- */
200
- cors?: {
201
- origin: string | string[];
202
- credentials?: boolean;
203
- };
204
- }
205
- /**
206
- * Logger configuration options
207
- */
208
- export interface LoggerOptions {
209
- /**
210
- * Enable HTTP request logging
211
- * @default true
212
- */
213
- enabled?: boolean;
214
- /**
215
- * Use plain logger (no ANSI colors) for Lambda/CloudWatch
216
- * Auto-detected based on environment if not specified
217
- */
218
- plain?: boolean;
219
- }
220
- /**
221
- * Bootstrap options
222
- */
223
- export interface BootstrapOptions {
224
- /**
225
- * Environment (auto-detected from NODE_ENV if not provided)
226
- */
227
- environment?: Environment;
228
- /**
229
- * API base path (default: '/api')
230
- */
231
- apiBasePath?: string;
232
- /**
233
- * Error handler middleware
234
- * Set to false to disable default error handler
235
- * Provide a custom ErrorHandler to override
236
- * @default Glasswork's default error handler
237
- */
238
- errorHandler?: ErrorHandler | false;
239
- /**
240
- * OpenAPI configuration
241
- */
242
- openapi?: OpenAPIOptions;
243
- /**
244
- * Rate limiting configuration
245
- */
246
- rateLimit?: RateLimitOptions;
247
- /**
248
- * Common middleware configuration
249
- */
250
- middleware?: MiddlewareOptions;
251
- /**
252
- * Logger configuration
253
- */
254
- logger?: LoggerOptions;
255
- /**
256
- * Enable debug logging
257
- */
258
- debug?: boolean;
259
- }
260
- /**
261
- * Bootstrap result
262
- */
263
- export interface BootstrapResult {
264
- /**
265
- * Hono application instance
266
- */
267
- app: Hono;
268
- /**
269
- * Awilix container (fully accessible)
270
- */
271
- container: AwilixContainer;
272
- }
273
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/types.js DELETED
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=types.js.map
package/dist/types.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""}
package/dist/utils.d.ts DELETED
@@ -1,9 +0,0 @@
1
- /**
2
- * Deep merge objects (simple implementation for small objects)
3
- */
4
- export declare function deepMerge<T extends Record<string, unknown>>(...objects: (T | Record<string, unknown>)[]): T;
5
- /**
6
- * Omit keys from an object
7
- */
8
- export declare function omit<T extends Record<string, unknown>, K extends keyof T>(obj: T, keys: K[]): Omit<T, K>;
9
- //# sourceMappingURL=utils.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,wBAAgB,SAAS,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACzD,GAAG,OAAO,EAAE,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EAAE,GAC1C,CAAC,CAqBH;AAED;;GAEG;AACH,wBAAgB,IAAI,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,EACvE,GAAG,EAAE,CAAC,EACN,IAAI,EAAE,CAAC,EAAE,GACR,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAMZ"}
package/dist/utils.js DELETED
@@ -1,31 +0,0 @@
1
- /**
2
- * Deep merge objects (simple implementation for small objects)
3
- */
4
- export function deepMerge(...objects) {
5
- const result = {};
6
- for (const obj of objects) {
7
- for (const key in obj) {
8
- if (Object.hasOwn(obj, key)) {
9
- const value = obj[key];
10
- if (value && typeof value === 'object' && !Array.isArray(value)) {
11
- result[key] = deepMerge(result[key] || {}, value);
12
- }
13
- else {
14
- result[key] = value;
15
- }
16
- }
17
- }
18
- }
19
- return result;
20
- }
21
- /**
22
- * Omit keys from an object
23
- */
24
- export function omit(obj, keys) {
25
- const result = { ...obj };
26
- for (const key of keys) {
27
- delete result[key];
28
- }
29
- return result;
30
- }
31
- //# sourceMappingURL=utils.js.map
package/dist/utils.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,UAAU,SAAS,CACvB,GAAG,OAAwC;IAE3C,MAAM,MAAM,GAA4B,EAAE,CAAC;IAE3C,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;QAC1B,KAAK,MAAM,GAAG,IAAI,GAAG,EAAE,CAAC;YACtB,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC;gBAC5B,MAAM,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;gBAEvB,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;oBAChE,MAAM,CAAC,GAAG,CAAC,GAAG,SAAS,CACpB,MAAM,CAAC,GAAG,CAA6B,IAAI,EAAE,EAC9C,KAAgC,CACjC,CAAC;gBACJ,CAAC;qBAAM,CAAC;oBACN,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;gBACtB,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,MAAW,CAAC;AACrB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,IAAI,CAClB,GAAM,EACN,IAAS;IAET,MAAM,MAAM,GAAG,EAAE,GAAG,GAAG,EAAE,CAAC;IAC1B,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC;IACrB,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}