@koala-ts/framework 2.2.4 → 2.3.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 (36) hide show
  1. package/dist/Application/ApplicationFactory.d.ts.map +1 -1
  2. package/dist/Application/ApplicationFactory.js +5 -1
  3. package/dist/Application/ApplicationFactory.js.map +1 -1
  4. package/dist/Application/ApplicationFactory.test.js +13 -0
  5. package/dist/Application/ApplicationFactory.test.js.map +1 -1
  6. package/dist/Config/types.d.ts +2 -0
  7. package/dist/Config/types.d.ts.map +1 -1
  8. package/dist/Http/Error/index.d.ts +2 -0
  9. package/dist/Http/Error/index.d.ts.map +1 -0
  10. package/dist/Http/Error/index.js +2 -0
  11. package/dist/Http/Error/index.js.map +1 -0
  12. package/dist/Http/Error/types.d.ts +4 -0
  13. package/dist/Http/Error/types.d.ts.map +1 -0
  14. package/dist/Http/Error/types.js +4 -0
  15. package/dist/Http/Error/types.js.map +1 -0
  16. package/dist/Http/Files/StaticFilesMiddleware.d.ts +4 -0
  17. package/dist/Http/Files/StaticFilesMiddleware.d.ts.map +1 -0
  18. package/dist/Http/Files/StaticFilesMiddleware.js +18 -0
  19. package/dist/Http/Files/StaticFilesMiddleware.js.map +1 -0
  20. package/dist/Http/Files/StaticFilesMiddleware.test.d.ts +2 -0
  21. package/dist/Http/Files/StaticFilesMiddleware.test.d.ts.map +1 -0
  22. package/dist/Http/Files/StaticFilesMiddleware.test.js +33 -0
  23. package/dist/Http/Files/StaticFilesMiddleware.test.js.map +1 -0
  24. package/dist/Http/Files/index.d.ts +3 -0
  25. package/dist/Http/Files/index.d.ts.map +1 -0
  26. package/dist/Http/Files/index.js +3 -0
  27. package/dist/Http/Files/index.js.map +1 -0
  28. package/dist/Http/Files/types.d.ts +5 -0
  29. package/dist/Http/Files/types.d.ts.map +1 -0
  30. package/dist/Http/Files/types.js +1 -0
  31. package/dist/Http/Files/types.js.map +1 -0
  32. package/dist/Http/types.d.ts +4 -0
  33. package/dist/Http/types.d.ts.map +1 -0
  34. package/dist/Http/types.js +1 -0
  35. package/dist/Http/types.js.map +1 -0
  36. package/package.json +3 -2
@@ -1 +1 @@
1
- {"version":3,"file":"ApplicationFactory.d.ts","sourceRoot":"","sources":["../../src/Application/ApplicationFactory.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,SAAS,CAAC;AAE3C,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,UAAU,CAAC;AAI5C,wBAAgB,MAAM,CAAC,MAAM,EAAE,WAAW,GAAG,WAAW,CASvD"}
1
+ {"version":3,"file":"ApplicationFactory.d.ts","sourceRoot":"","sources":["../../src/Application/ApplicationFactory.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,SAAS,CAAC;AAE3C,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,UAAU,CAAC;AAK5C,wBAAgB,MAAM,CAAC,MAAM,EAAE,WAAW,GAAG,WAAW,CAcvD"}
@@ -2,6 +2,7 @@ import Router from '@koa/router';
2
2
  import Koa from 'koa';
3
3
  import { koaBody } from 'koa-body';
4
4
  import { extendResponse } from '../Application/Response.js';
5
+ import { serveStaticFiles } from '../Http/Files/index.js';
5
6
  import { getRoutes } from '../Routing/index.js';
6
7
  export function create(config) {
7
8
  const app = new Koa();
@@ -9,7 +10,10 @@ export function create(config) {
9
10
  app.use(extendResponse);
10
11
  if (undefined !== config.globalMiddleware)
11
12
  registerGlobalMiddleware(app, config.globalMiddleware);
12
- app.use(createRouter().routes());
13
+ app.use(serveStaticFiles(config.staticFiles));
14
+ const router = createRouter();
15
+ app.use(router.routes());
16
+ app.use(router.allowedMethods());
13
17
  return app;
14
18
  }
15
19
  function createRouter() {
@@ -1 +1 @@
1
- {"version":3,"file":"ApplicationFactory.js","sourceRoot":"","sources":["../../src/Application/ApplicationFactory.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,GAAgE,MAAM,KAAK,CAAC;AACnF,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAEnC,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAGxD,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAEtC,MAAM,UAAU,MAAM,CAAC,MAAmB;IACxC,MAAM,GAAG,GAAG,IAAI,GAAG,EAAiB,CAAC;IACrC,GAAG,CAAC,KAAK,GAAG,GAAG,CAAC,OAAO,CAAC;IAExB,GAAG,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IACxB,IAAI,SAAS,KAAK,MAAM,CAAC,gBAAgB;QAAE,wBAAwB,CAAC,GAAG,EAAE,MAAM,CAAC,gBAAgB,CAAC,CAAC;IAClG,GAAG,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC;IAEjC,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,YAAY;IACnB,MAAM,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;IAE5B,KAAK,MAAM,KAAK,IAAI,SAAS,EAAE,EAAE,CAAC;QAChC,MAAM,eAAe,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QAE/D,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;YACnC,MAAM,eAAe,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC;YAC7G,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,GAAI,eAA0E,CAAC,CAAC;QAC7G,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,wBAAwB,CAAC,GAAgB,EAAE,UAA4B;IAC9E,KAAK,MAAM,EAAE,IAAI,UAAU,EAAE,CAAC;QAC5B,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACd,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"ApplicationFactory.js","sourceRoot":"","sources":["../../src/Application/ApplicationFactory.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,GAAgE,MAAM,KAAK,CAAC;AACnF,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAEnC,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAGxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAEtC,MAAM,UAAU,MAAM,CAAC,MAAmB;IACxC,MAAM,GAAG,GAAG,IAAI,GAAG,EAAiB,CAAC;IACrC,GAAG,CAAC,KAAK,GAAG,GAAG,CAAC,OAAO,CAAC;IAExB,GAAG,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IACxB,IAAI,SAAS,KAAK,MAAM,CAAC,gBAAgB;QAAE,wBAAwB,CAAC,GAAG,EAAE,MAAM,CAAC,gBAAgB,CAAC,CAAC;IAElG,GAAG,CAAC,GAAG,CAAC,gBAAgB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;IAE9C,MAAM,MAAM,GAAG,YAAY,EAAE,CAAC;IAC9B,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;IACzB,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC,CAAC;IAEjC,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,YAAY;IACnB,MAAM,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;IAE5B,KAAK,MAAM,KAAK,IAAI,SAAS,EAAE,EAAE,CAAC;QAChC,MAAM,eAAe,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QAE/D,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;YACnC,MAAM,eAAe,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC;YAC7G,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,GAAI,eAA0E,CAAC,CAAC;QAC7G,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,wBAAwB,CAAC,GAAgB,EAAE,UAA4B;IAC9E,KAAK,MAAM,EAAE,IAAI,UAAU,EAAE,CAAC;QAC5B,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACd,CAAC;AACH,CAAC"}
@@ -161,4 +161,17 @@ describe('Global Middleware', () => {
161
161
  expect(middlewareFn).toHaveBeenCalled();
162
162
  });
163
163
  });
164
+ describe('Serving Static Files', () => {
165
+ test('it should serve public static files', async () => {
166
+ const config = {
167
+ staticFiles: {
168
+ root: 'tests/fixtures',
169
+ },
170
+ };
171
+ const testAgent = createTestAgent(config);
172
+ const response = await testAgent.get('/sample.txt');
173
+ expect(response.status).toBe(200);
174
+ expect(response.text).toBe('Howdy!\n');
175
+ });
176
+ });
164
177
  //# sourceMappingURL=ApplicationFactory.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ApplicationFactory.test.js","sourceRoot":"","sources":["../../src/Application/ApplicationFactory.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ApplicationFactory.test.js","sourceRoot":"","sources":["../../src/Application/ApplicationFactory.test.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,9 @@
1
1
  import { type HttpMiddleware } from '../Http/index.js';
2
+ import { type StaticFilesOptions } from '../Http/Files/index.js';
2
3
  export type Controller = new (...args: unknown[]) => unknown;
3
4
  export interface KoalaConfig {
4
5
  controllers: Controller[];
5
6
  globalMiddleware?: HttpMiddleware[];
7
+ staticFiles?: StaticFilesOptions;
6
8
  }
7
9
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/Config/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAE7C,MAAM,MAAM,UAAU,GAAG,KAAI,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,CAAC;AAE5D,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,UAAU,EAAE,CAAC;IAC1B,gBAAgB,CAAC,EAAE,cAAc,EAAE,CAAC;CACrC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/Config/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAC7C,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAEvD,MAAM,MAAM,UAAU,GAAG,KAAI,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,CAAC;AAE5D,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,UAAU,EAAE,CAAC;IAC1B,gBAAgB,CAAC,EAAE,cAAc,EAAE,CAAC;IACpC,WAAW,CAAC,EAAE,kBAAkB,CAAC;CAClC"}
@@ -0,0 +1,2 @@
1
+ export * from './types.js';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/Http/Error/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './types.js';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/Http/Error/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { HttpError as KoaHttpError } from 'koa';
2
+ export declare class HttpError extends KoaHttpError {
3
+ }
4
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/Http/Error/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,IAAI,YAAY,EAAE,MAAM,KAAK,CAAC;AAEhD,qBAAa,SAAU,SAAQ,YAAY;CAC1C"}
@@ -0,0 +1,4 @@
1
+ import { HttpError as KoaHttpError } from 'koa';
2
+ export class HttpError extends KoaHttpError {
3
+ }
4
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/Http/Error/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,IAAI,YAAY,EAAE,MAAM,KAAK,CAAC;AAEhD,MAAM,OAAO,SAAU,SAAQ,YAAY;CAC1C"}
@@ -0,0 +1,4 @@
1
+ import { type HttpMiddleware } from '../../Http/index.js';
2
+ import { type StaticFilesOptions } from '../../Http/Files/types.js';
3
+ export declare function serveStaticFiles(options?: StaticFilesOptions): HttpMiddleware;
4
+ //# sourceMappingURL=StaticFilesMiddleware.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StaticFilesMiddleware.d.ts","sourceRoot":"","sources":["../../../src/Http/Files/StaticFilesMiddleware.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,cAAc,EAAuC,MAAM,QAAQ,CAAC;AAElF,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAO7D,wBAAgB,gBAAgB,CAAC,OAAO,CAAC,EAAE,kBAAkB,GAAG,cAAc,CAS7E"}
@@ -0,0 +1,18 @@
1
+ import { send } from '@koa/send';
2
+ const defaultOptions = {
3
+ root: 'public',
4
+ index: 'index.html',
5
+ };
6
+ export function serveStaticFiles(options) {
7
+ return async function staticFilesMiddleware(scope, next) {
8
+ try {
9
+ await send(scope, scope.path, options ?? defaultOptions);
10
+ }
11
+ catch (error) {
12
+ if (error.status !== 404)
13
+ throw error;
14
+ await next();
15
+ }
16
+ };
17
+ }
18
+ //# sourceMappingURL=StaticFilesMiddleware.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StaticFilesMiddleware.js","sourceRoot":"","sources":["../../../src/Http/Files/StaticFilesMiddleware.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAKjC,MAAM,cAAc,GAAuB;IACzC,IAAI,EAAE,QAAQ;IACd,KAAK,EAAE,YAAY;CACpB,CAAC;AAEF,MAAM,UAAU,gBAAgB,CAAC,OAA4B;IAC3D,OAAO,KAAK,UAAU,qBAAqB,CAAC,KAAgB,EAAE,IAAoB;QAChF,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,OAAO,IAAI,cAAc,CAAC,CAAC;QAC3D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAK,KAAmB,CAAC,MAAM,KAAK,GAAG;gBAAE,MAAM,KAAK,CAAC;YACrD,MAAM,IAAI,EAAE,CAAC;QACf,CAAC;IACH,CAAC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=StaticFilesMiddleware.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StaticFilesMiddleware.test.d.ts","sourceRoot":"","sources":["../../../src/Http/Files/StaticFilesMiddleware.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,33 @@
1
+ import { describe, expect, it, vi } from 'vitest';
2
+ import { serveStaticFiles } from '../../Http/Files/StaticFilesMiddleware.js';
3
+ vi.mock('@koa/send', () => ({
4
+ send: vi.fn(),
5
+ }));
6
+ describe('Static Files middleware', () => {
7
+ it('should delegate calls to koa send', async () => {
8
+ const { send } = await import('@koa/send');
9
+ const scope = { path: '/test-path' };
10
+ const next = vi.fn();
11
+ const defaultOptions = { root: 'public', index: 'index.html' };
12
+ await serveStaticFiles()(scope, next);
13
+ expect(send).toHaveBeenCalledWith(scope, scope.path, defaultOptions);
14
+ expect(next).not.toHaveBeenCalled();
15
+ });
16
+ it('should rethrow non-404 errors', async () => {
17
+ const { send } = await import('@koa/send');
18
+ send.mockRejectedValueOnce({ status: 500 });
19
+ const scope = { path: '/test-path' };
20
+ const next = vi.fn();
21
+ await expect(serveStaticFiles()(scope, next)).rejects.toEqual({ status: 500 });
22
+ expect(next).not.toHaveBeenCalled();
23
+ });
24
+ it('should call next on 404 errors', async () => {
25
+ const { send } = await import('@koa/send');
26
+ send.mockRejectedValueOnce({ status: 404 });
27
+ const scope = { path: '/test-path' };
28
+ const next = vi.fn();
29
+ await serveStaticFiles()(scope, next);
30
+ expect(next).toHaveBeenCalled();
31
+ });
32
+ });
33
+ //# sourceMappingURL=StaticFilesMiddleware.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StaticFilesMiddleware.test.js","sourceRoot":"","sources":["../../../src/Http/Files/StaticFilesMiddleware.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAa,EAAE,EAAE,MAAM,QAAQ,CAAC;AAE7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAEtE,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC;IAC1B,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE;CACd,CAAC,CAAC,CAAC;AAEJ,QAAQ,CAAC,yBAAyB,EAAE,GAAG,EAAE;IACvC,EAAE,CAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;QACjD,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,CAAC;QAC3C,MAAM,KAAK,GAAG,EAAE,IAAI,EAAE,YAAY,EAAe,CAAC;QAClD,MAAM,IAAI,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QACrB,MAAM,cAAc,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC;QAE/D,MAAM,gBAAgB,EAAE,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QAEtC,MAAM,CAAC,IAAI,CAAC,CAAC,oBAAoB,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;QACrE,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+BAA+B,EAAE,KAAK,IAAI,EAAE;QAC7C,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,CAAC;QAC1C,IAAa,CAAC,qBAAqB,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;QACtD,MAAM,KAAK,GAAG,EAAE,IAAI,EAAE,YAAY,EAAe,CAAC;QAClD,MAAM,IAAI,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QAErB,MAAM,MAAM,CAAC,gBAAgB,EAAE,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;QAC/E,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gCAAgC,EAAE,KAAK,IAAI,EAAE;QAC9C,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,CAAC;QAC1C,IAAa,CAAC,qBAAqB,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;QACtD,MAAM,KAAK,GAAG,EAAE,IAAI,EAAE,YAAY,EAAe,CAAC;QAClD,MAAM,IAAI,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QAErB,MAAM,gBAAgB,EAAE,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QAEtC,MAAM,CAAC,IAAI,CAAC,CAAC,gBAAgB,EAAE,CAAC;IAClC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,3 @@
1
+ export * from './types.js';
2
+ export * from './StaticFilesMiddleware.js';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/Http/Files/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,yBAAyB,CAAC"}
@@ -0,0 +1,3 @@
1
+ export * from './types.js';
2
+ export * from './StaticFilesMiddleware.js';
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/Http/Files/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,yBAAyB,CAAC"}
@@ -0,0 +1,5 @@
1
+ export interface StaticFilesOptions {
2
+ root: string;
3
+ index: string;
4
+ }
5
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/Http/Files/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf"}
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/Http/Files/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,4 @@
1
+ export type * from './Request/index.js';
2
+ export type * from './Response/index.js';
3
+ export type * from './Scope/index.js';
4
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/Http/types.ts"],"names":[],"mappings":"AAAA,mBAAmB,WAAW,CAAC;AAC/B,mBAAmB,YAAY,CAAC;AAChC,mBAAmB,SAAS,CAAC"}
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/Http/types.ts"],"names":[],"mappings":""}
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@koala-ts/framework",
3
3
  "main": "dist/index.js",
4
4
  "type": "module",
5
- "version": "2.2.4",
5
+ "version": "2.3.0",
6
6
  "description": "A NodeJS framework for lazy developers",
7
7
  "keywords": [
8
8
  "koala",
@@ -37,6 +37,7 @@
37
37
  },
38
38
  "dependencies": {
39
39
  "@koa/router": "^14.0.0",
40
+ "@koa/send": "^6.0.0",
40
41
  "@types/koa": "^3.0.0",
41
42
  "@types/koa__router": "^12.0.4",
42
43
  "@types/stack-trace": "^0.0.33",
@@ -44,7 +45,7 @@
44
45
  "dotenv": "^17.2.3",
45
46
  "dotenv-expand": "^12.0.3",
46
47
  "koa": "^3.0.3",
47
- "koa-body": "^6.0.1",
48
+ "koa-body": "^7.0.0",
48
49
  "reflect-metadata": "^0.2.2",
49
50
  "supertest": "^7.1.4"
50
51
  },