constantia 1.0.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 (71) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +370 -0
  3. package/dist/adapters/express.d.ts +36 -0
  4. package/dist/adapters/express.d.ts.map +1 -0
  5. package/dist/adapters/express.js +494 -0
  6. package/dist/adapters/express.js.map +1 -0
  7. package/dist/adapters/index.d.ts +9 -0
  8. package/dist/adapters/index.d.ts.map +1 -0
  9. package/dist/adapters/index.js +3 -0
  10. package/dist/adapters/index.js.map +1 -0
  11. package/dist/adapters/validation.d.ts +3 -0
  12. package/dist/adapters/validation.d.ts.map +1 -0
  13. package/dist/adapters/validation.js +171 -0
  14. package/dist/adapters/validation.js.map +1 -0
  15. package/dist/context.d.ts +37 -0
  16. package/dist/context.d.ts.map +1 -0
  17. package/dist/context.js +24 -0
  18. package/dist/context.js.map +1 -0
  19. package/dist/controllers.d.ts +9 -0
  20. package/dist/controllers.d.ts.map +1 -0
  21. package/dist/controllers.js +28 -0
  22. package/dist/controllers.js.map +1 -0
  23. package/dist/decorators.d.ts +38 -0
  24. package/dist/decorators.d.ts.map +1 -0
  25. package/dist/decorators.js +232 -0
  26. package/dist/decorators.js.map +1 -0
  27. package/dist/errors/index.d.ts +26 -0
  28. package/dist/errors/index.d.ts.map +1 -0
  29. package/dist/errors/index.js +52 -0
  30. package/dist/errors/index.js.map +1 -0
  31. package/dist/index.d.ts +18 -0
  32. package/dist/index.d.ts.map +1 -0
  33. package/dist/index.js +19 -0
  34. package/dist/index.js.map +1 -0
  35. package/dist/logger.d.ts +11 -0
  36. package/dist/logger.d.ts.map +1 -0
  37. package/dist/logger.js +29 -0
  38. package/dist/logger.js.map +1 -0
  39. package/dist/metadata.d.ts +62 -0
  40. package/dist/metadata.d.ts.map +1 -0
  41. package/dist/metadata.js +304 -0
  42. package/dist/metadata.js.map +1 -0
  43. package/dist/openapi/helpers.d.ts +8 -0
  44. package/dist/openapi/helpers.d.ts.map +1 -0
  45. package/dist/openapi/helpers.js +343 -0
  46. package/dist/openapi/helpers.js.map +1 -0
  47. package/dist/openapi/index.d.ts +15 -0
  48. package/dist/openapi/index.d.ts.map +1 -0
  49. package/dist/openapi/index.js +134 -0
  50. package/dist/openapi/index.js.map +1 -0
  51. package/dist/openapi/types.d.ts +129 -0
  52. package/dist/openapi/types.d.ts.map +1 -0
  53. package/dist/openapi/types.js +34 -0
  54. package/dist/openapi/types.js.map +1 -0
  55. package/dist/types/files.d.ts +38 -0
  56. package/dist/types/files.d.ts.map +1 -0
  57. package/dist/types/files.js +50 -0
  58. package/dist/types/files.js.map +1 -0
  59. package/dist/types/index.d.ts +20 -0
  60. package/dist/types/index.d.ts.map +1 -0
  61. package/dist/types/index.js +121 -0
  62. package/dist/types/index.js.map +1 -0
  63. package/dist/types/middleware.d.ts +10 -0
  64. package/dist/types/middleware.d.ts.map +1 -0
  65. package/dist/types/middleware.js +16 -0
  66. package/dist/types/middleware.js.map +1 -0
  67. package/dist/types/stream.d.ts +29 -0
  68. package/dist/types/stream.d.ts.map +1 -0
  69. package/dist/types/stream.js +13 -0
  70. package/dist/types/stream.js.map +1 -0
  71. package/package.json +134 -0
@@ -0,0 +1,34 @@
1
+ const __ΩOmit = ['T', 'K', () => __ΩPick, () => __ΩExclude, 'Omit', 'b!b"e!!e!!ge!"o$#o##w%y'];
2
+ const __ΩPick = ['T', 'K', 'Pick', 'l+e#!e"!fRb!b"Pde""N#!w#y'];
3
+ const __ΩExclude = ['T', 'U', 'Exclude', 'l6!Re$!RPe#!e$"qk#%QRb!b"Pde"!p)w#y'];
4
+ const __ΩOpenAPISpec = ['openapi', () => __ΩInfoObject, 'info', () => __ΩPathsObject, 'paths', () => __ΩComponentsObject, 'components', 'name', 'description', 'tags', () => __ΩServerObject, 'servers', 'OpenAPISpec', 'P&4!n"4#n$4%n&4\'8P&4(&4)8MF4*8n+F4,8Mw-y'];
5
+ export { __ΩOpenAPISpec as __ΩOpenAPISpec };
6
+ const __ΩInfoObject = ['title', 'version', 'description', 'InfoObject', 'P&4!&4"&4#8Mw$y'];
7
+ export { __ΩInfoObject as __ΩInfoObject };
8
+ const __ΩPathsObject = [() => __ΩPathItemObject, 'PathsObject', 'P&n!LMw"y'];
9
+ export { __ΩPathsObject as __ΩPathsObject };
10
+ const __ΩPathItemObject = [() => __ΩOperationObject, 'get', () => __ΩOperationObject, 'put', () => __ΩOperationObject, 'post', () => __ΩOperationObject, 'delete', () => __ΩOperationObject, 'patch', () => __ΩParameterObject, () => __ΩReferenceObject, 'parameters', 'PathItemObject', 'Pn!4"8n#4$8n%4&8n\'4(8n)4*8Pn+n,JF4-8Mw.y'];
11
+ export { __ΩPathItemObject as __ΩPathItemObject };
12
+ const __ΩOperationObject = ['tags', 'summary', 'description', 'operationId', () => __ΩParameterObject, () => __ΩReferenceObject, 'parameters', () => __ΩRequestBodyObject, () => __ΩReferenceObject, 'requestBody', () => __ΩResponsesObject, 'responses', 'deprecated', 'OperationObject', 'P&F4!8&4"8&4#8&4$8Pn%n&JF4\'8Pn(n)J4*8n+4,)4-8Mw.y'];
13
+ export { __ΩOperationObject as __ΩOperationObject };
14
+ const __ΩParameterObject = ['name', "query", "header", "path", "cookie", 'in', 'description', 'required', 'deprecated', 'allowEmptyValue', () => __ΩSchemaObject, () => __ΩReferenceObject, 'schema', 'ParameterObject', 'P&4!P.".#.$.%J4&&4\'8)4(8)4)8)4*8Pn+n,J4-8Mw.y'];
15
+ export { __ΩParameterObject as __ΩParameterObject };
16
+ const __ΩRequestBodyObject = ['description', () => __ΩMediaTypeObject, 'content', 'required', 'RequestBodyObject', 'P&4!8P&n"LM4#)4$8Mw%y'];
17
+ export { __ΩRequestBodyObject as __ΩRequestBodyObject };
18
+ const __ΩMediaTypeObject = [() => __ΩSchemaObject, () => __ΩReferenceObject, 'schema', 'MediaTypeObject', 'PPn!n"J4#8Mw$y'];
19
+ export { __ΩMediaTypeObject as __ΩMediaTypeObject };
20
+ const __ΩResponsesObject = [() => __ΩResponseObject, () => __ΩReferenceObject, 'default', () => __ΩResponseObject, () => __ΩReferenceObject, 'ResponsesObject', 'PPn!n"J4#8&Pn$n%-JLMw&y'];
21
+ export { __ΩResponsesObject as __ΩResponsesObject };
22
+ const __ΩResponseObject = ['description', () => __ΩHeaderObject, () => __ΩReferenceObject, 'headers', () => __ΩMediaTypeObject, 'content', 'ResponseObject', 'P&4!P&Pn"n#JLM4$8P&n%LM4&8Mw\'y'];
23
+ export { __ΩResponseObject as __ΩResponseObject };
24
+ const __ΩSchemaObject = ["string", "number", "integer", "boolean", "array", "object", 'type', 'format', 0, () => __ΩReferenceObject, 'items', 0, () => __ΩReferenceObject, 'properties', 'required', 'nullable', 0, () => __ΩReferenceObject, 'oneOf', 0, () => __ΩReferenceObject, 'allOf', 0, () => __ΩReferenceObject, 'anyOf', 'description', 'example', 'minItems', 'maxItems', 0, () => __ΩReferenceObject, 'additionalProperties', 'SchemaObject', 'PP.!.".#.$.%.&J4\'8&4(8Pn)n*J4+8P&Pn,n-JLM4.8&F4/8)408Pn1n2JF438Pn4n5JF468Pn7n8JF498&4:8#4;8\'4<8\'4=8P)n>n?J4@8MwAy'];
25
+ export { __ΩSchemaObject as __ΩSchemaObject };
26
+ const __ΩComponentsObject = [() => __ΩSchemaObject, () => __ΩReferenceObject, 'schemas', () => __ΩResponseObject, () => __ΩReferenceObject, 'responses', () => __ΩParameterObject, () => __ΩReferenceObject, 'parameters', () => __ΩRequestBodyObject, () => __ΩReferenceObject, 'requestBodies', () => __ΩHeaderObject, () => __ΩReferenceObject, 'headers', 'ComponentsObject', 'PP&Pn!n"JLM4#8P&Pn$n%JLM4&8P&Pn\'n(JLM4)8P&Pn*n+JLM4,8P&Pn-n.JLM4/8Mw0y'];
27
+ export { __ΩComponentsObject as __ΩComponentsObject };
28
+ const __ΩServerObject = ['url', 'description', 'ServerObject', 'P&4!&4"8Mw#y'];
29
+ export { __ΩServerObject as __ΩServerObject };
30
+ const __ΩHeaderObject = [() => __ΩOmit, () => __ΩParameterObject, "name", "in", 'HeaderObject', 'Pn"P.#.$Jo!#Mw%y'];
31
+ export { __ΩHeaderObject as __ΩHeaderObject };
32
+ const __ΩReferenceObject = ['$ref', 'ReferenceObject', 'P&4!Mw"y'];
33
+ export { __ΩReferenceObject as __ΩReferenceObject };
34
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/openapi/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,38 @@
1
+ import type { ReadStream } from 'fs';
2
+ export declare class File implements IFile {
3
+ md5: string;
4
+ name: string;
5
+ size: number;
6
+ mimetype: string;
7
+ tempFilePath: string;
8
+ mv: (path: string, cb: (err: Error) => void) => void;
9
+ static beingUsed: string[];
10
+ constructor(file: FileInput);
11
+ getstream(): ReadStream;
12
+ keepAlive(): void;
13
+ cleanup(): void;
14
+ }
15
+ export interface FileInput {
16
+ md5: string;
17
+ name: string;
18
+ data: Buffer;
19
+ size: number;
20
+ mimetype: string;
21
+ truncated: boolean;
22
+ tempFilePath: string;
23
+ mv: (path: string, cb: (err: Error) => void) => void;
24
+ }
25
+ export interface IFile {
26
+ md5: string;
27
+ name: string;
28
+ size: number;
29
+ mimetype: string;
30
+ cleanup: () => void;
31
+ tempFilePath: string;
32
+ keepAlive: () => void;
33
+ getstream: () => ReadStream;
34
+ mv: (path: string, cb: (err: Error) => void) => void;
35
+ }
36
+ export declare type __ΩFileInput = any[];
37
+ export declare type __ΩIFile = any[];
38
+ //# sourceMappingURL=files.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"files.d.ts","sourceRoot":"","sources":["../../src/types/files.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAErC,qBAAa,IAAK,YAAW,KAAK;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,EAAE,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,GAAG,EAAE,KAAK,KAAK,IAAI,KAAK,IAAI,CAAC;IAErD,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,CAAM;gBAEpB,IAAI,EAAE,SAAS;IAcpB,SAAS,IAAI,UAAU;IAIvB,SAAS,IAAI,IAAI;IAIjB,OAAO,IAAI,IAAI;CAOzB;AAED,MAAM,WAAW,SAAS;IACtB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,EAAE,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,GAAG,EAAE,KAAK,KAAK,IAAI,KAAK,IAAI,CAAC;CACxD;AAED,MAAM,WAAW,KAAK;IAClB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,SAAS,EAAE,MAAM,UAAU,CAAC;IAC5B,EAAE,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,GAAG,EAAE,KAAK,KAAK,IAAI,KAAK,IAAI,CAAC;CACxD"}
@@ -0,0 +1,50 @@
1
+ const __ΩError = ['name', 'message', 'stack', 'Error', 'P&4!&4"&4#8Mw$y'];
2
+ function __assignType(fn, args) {
3
+ fn.__type = args;
4
+ return fn;
5
+ }
6
+ import fs from 'fs';
7
+ export class File {
8
+ md5;
9
+ name;
10
+ size;
11
+ mimetype;
12
+ tempFilePath;
13
+ mv;
14
+ static beingUsed = [];
15
+ constructor(file) {
16
+ if (file.data !== undefined && file.data.length !== 0)
17
+ throw new Error('Buffer data should be an empty buffer');
18
+ if (!file.tempFilePath)
19
+ throw new Error('tempFilePath is required');
20
+ if (file.truncated)
21
+ throw new Error('File is truncated');
22
+ this.md5 = file.md5;
23
+ this.name = file.name;
24
+ this.size = file.size;
25
+ this.mimetype = file.mimetype;
26
+ this.tempFilePath = file.tempFilePath;
27
+ this.mv = file.mv;
28
+ }
29
+ getstream() {
30
+ return fs.createReadStream(this.tempFilePath);
31
+ }
32
+ keepAlive() {
33
+ File.beingUsed.push(this.md5);
34
+ }
35
+ cleanup() {
36
+ if (!this.tempFilePath)
37
+ return;
38
+ fs.unlink(this.tempFilePath, __assignType((err) => {
39
+ if (err)
40
+ throw err;
41
+ File.beingUsed = File.beingUsed.filter(__assignType((md5) => md5 !== this.md5, ['md5', '', 'P"2!"/"']));
42
+ }, ['err', '', 'P"2!"/"']));
43
+ }
44
+ static __type = ['md5', 'name', 'size', 'mimetype', 'tempFilePath', 'path', () => __ΩError, 'err', '', 'cb', 'mv', 'beingUsed', function () { return []; }, () => __ΩFileInput, 'file', 'constructor', 'getstream', 'keepAlive', 'cleanup', () => __ΩIFile, 'File', '&3!&3"\'3#&3$&3%P&2&Pn\'2($/)2*$/)3+&F3,s>-Pn.2/"00P!01P$02P$035n4x"w5'];
45
+ }
46
+ const __ΩFileInput = ['md5', 'name', 'data', 'size', 'mimetype', 'truncated', 'tempFilePath', 'path', () => __ΩError, 'err', '', 'cb', 'mv', 'FileInput', 'P&4!&4"!4#\'4$&4%)4&&4\'P&2(Pn)2*$/+2,$/+4-Mw.y'];
47
+ export { __ΩFileInput as __ΩFileInput };
48
+ const __ΩIFile = ['md5', 'name', 'size', 'mimetype', '', 'cleanup', 'tempFilePath', 'keepAlive', 'getstream', 'path', () => __ΩError, 'err', 'cb', 'mv', 'IFile', 'P&4!&4"\'4#&4$P$/%4&&4\'P$/%4(P!/%4)P&2*Pn+2,$/%2-$/%4.Mw/y'];
49
+ export { __ΩIFile as __ΩIFile };
50
+ //# sourceMappingURL=files.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"files.js","sourceRoot":"","sources":["../../src/types/files.ts"],"names":[],"mappings":";;;;;AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AAGpB,MAAM,OAAO,IAAI;IACb,GAAG,CAAS;IACZ,IAAI,CAAS;IACb,IAAI,CAAS;IACb,QAAQ,CAAS;IACjB,YAAY,CAAS;IACrB,EAAE,CAAmD;IAErD,MAAM,CAAC,SAAS,GAAa,EAAE,CAAC;IAEhC,YAAY,IAAe;QACvB,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC;YACjD,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;QAC7D,IAAI,CAAC,IAAI,CAAC,YAAY;YAAE,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;QACpE,IAAI,IAAI,CAAC,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;QAEzD,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;QACpB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACtB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACtB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC9B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;QACtC,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC;IACtB,CAAC;IAEM,SAAS;QACZ,OAAO,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAClD,CAAC;IAEM,SAAS;QACZ,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAClC,CAAC;IAEM,OAAO;QACV,IAAI,CAAC,IAAI,CAAC,YAAY;YAAE,OAAO;QAC/B,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,eAAE,CAAC,GAAG,EAAE,EAAE;YACjC,IAAI,GAAG;gBAAE,MAAM,GAAG,CAAC;YACnB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,cAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,IAAI,CAAC,GAAG,0BAAC,CAAC;QACtE,CAAC,0BAAC,CAAC;IACP,CAAC;yJA9B4B,EAAE"}
@@ -0,0 +1,20 @@
1
+ import { ReflectionClass, type Type } from '@deepkit/type';
2
+ declare const extractMethodReturnSchema: (objectClass: Parameters<typeof ReflectionClass.from>[0], methodName: string | symbol) => SchemaType;
3
+ declare const reflectionToSchema: (ref: ReturnType<typeof ReflectionClass.from> | Type) => SchemaType;
4
+ declare const reflectionTypeToSchema: (t: Type) => SchemaType;
5
+ interface SchemaType {
6
+ type: 'string' | 'number' | 'boolean' | 'array' | 'object' | 'null' | 'file' | 'union' | 'dataStream' | 'fileStream' | 'void' | 'tuple';
7
+ format?: string;
8
+ items?: SchemaType;
9
+ elements?: SchemaType[];
10
+ required?: string[];
11
+ oneOf?: SchemaType[];
12
+ properties?: Record<string, SchemaType>;
13
+ }
14
+ export type { SchemaType };
15
+ declare const extractParameterSchema: (target: object, propertyKey: string | symbol, parameterIndex: number) => [schema: SchemaType, required: boolean];
16
+ export { extractMethodReturnSchema, reflectionToSchema, reflectionTypeToSchema, extractParameterSchema, };
17
+ export * from './files.js';
18
+ export * from './stream.js';
19
+ export * from './middleware.js';
20
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,eAAe,EAGf,KAAK,IAAI,EACZ,MAAM,eAAe,CAAC;AAEvB,QAAA,MAAM,yBAAyB,gBACd,UAAU,CAAC,OAAO,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,cAC3C,MAAM,GAAG,MAAM,KAC5B,UAaF,CAAC;AAEF,QAAA,MAAM,kBAAkB,QACf,UAAU,CAAC,OAAO,eAAe,CAAC,IAAI,CAAC,GAAG,IAAI,KACpD,UA0BF,CAAC;AAEF,QAAA,MAAM,sBAAsB,MAAO,IAAI,KAAG,UA8DzC,CAAC;AAEF,UAAU,UAAU;IAChB,IAAI,EACE,QAAQ,GACR,QAAQ,GACR,SAAS,GACT,OAAO,GACP,QAAQ,GACR,MAAM,GACN,MAAM,GACN,OAAO,GACP,YAAY,GACZ,YAAY,GACZ,MAAM,GACN,OAAO,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,QAAQ,CAAC,EAAE,UAAU,EAAE,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,KAAK,CAAC,EAAE,UAAU,EAAE,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;CAC3C;AAED,YAAY,EAAE,UAAU,EAAE,CAAC;AAE3B,QAAA,MAAM,sBAAsB,WAChB,MAAM,eACD,MAAM,GAAG,MAAM,kBACZ,MAAM,KACvB,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,CA0BxC,CAAC;AAEF,OAAO,EACH,yBAAyB,EACzB,kBAAkB,EAClB,sBAAsB,EACtB,sBAAsB,GACzB,CAAC;AAEF,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC"}
@@ -0,0 +1,121 @@
1
+ const __ΩParameters = ['T', 'args', '', 'Parameters', 'l>e"!R!RPde#!Ph"!@2""/#qk#\'QRb!Pde"!p)w$y'];
2
+ const __ΩReturnType = ['T', 'args', '', 'ReturnType', 'l>e"!R"RPde#!P"@2"h"!/#qk#\'QRb!Pde"!p)w$y'];
3
+ const __ΩRecord = ['K', 'T', 'Record', 'l\'e#"Rb!b"Pde"!N#!w#y'];
4
+ function __assignType(fn, args) {
5
+ fn.__type = args;
6
+ return fn;
7
+ }
8
+ import { ReflectionClass, ReflectionKind, } from '@deepkit/type';
9
+ const extractMethodReturnSchema = __assignType((objectClass, methodName) => {
10
+ const reflection = ReflectionClass.from(objectClass);
11
+ const methodReflection = reflection.getMethod(methodName);
12
+ if (!methodReflection)
13
+ throw new Error(`Method ${String(methodName)} not found in reflection.`);
14
+ const returnType = methodReflection.getReturnType();
15
+ return reflectionTypeToSchema(returnType);
16
+ }, [() => __ΩParameters, () => ReflectionClass.from, 0, 'objectClass', 'methodName', () => __ΩSchemaType, '', 'Pi"o!".#f2$P&+J2%n&/\'']);
17
+ const reflectionToSchema = __assignType((ref) => {
18
+ if ('kind' in ref)
19
+ return reflectionTypeToSchema(ref);
20
+ const props = {};
21
+ const required = [];
22
+ for (const p of ref.getProperties()) {
23
+ if (p.name === 'ISASTREAMFILEONLYFORFRAMEWORK')
24
+ return { type: 'fileStream' };
25
+ if (p.name === 'ISASTREAMDATAONLYFORFRAMEWORK')
26
+ return { type: 'dataStream' };
27
+ const propSchema = reflectionTypeToSchema(p.type);
28
+ if (propSchema !== undefined) {
29
+ props[p.name] = propSchema;
30
+ if (!p.isOptional()) {
31
+ required.push(p.name);
32
+ }
33
+ }
34
+ }
35
+ return {
36
+ type: 'object',
37
+ properties: props,
38
+ required: required.length > 0 ? required : undefined,
39
+ };
40
+ }, [() => __ΩReturnType, () => ReflectionClass.from, 'Type', 'ref', () => __ΩSchemaType, '', 'PPi"o!""w#J2$n%/&']);
41
+ const reflectionTypeToSchema = __assignType((t) => {
42
+ switch (t.kind) {
43
+ case ReflectionKind.string:
44
+ return { type: 'string' };
45
+ case ReflectionKind.number:
46
+ return { type: 'number' };
47
+ case ReflectionKind.boolean:
48
+ return { type: 'boolean' };
49
+ case ReflectionKind.array:
50
+ return {
51
+ type: 'array',
52
+ items: reflectionTypeToSchema(t.type),
53
+ };
54
+ case ReflectionKind.objectLiteral: {
55
+ const nestedRef = ReflectionClass.from(t);
56
+ return reflectionToSchema(nestedRef);
57
+ }
58
+ case ReflectionKind.class: {
59
+ if (t.classType === Date) {
60
+ return { type: 'string', format: 'date-time' };
61
+ }
62
+ const nestedRef = ReflectionClass.from(t);
63
+ return reflectionToSchema(nestedRef);
64
+ }
65
+ case ReflectionKind.promise:
66
+ return reflectionTypeToSchema(t.type);
67
+ case ReflectionKind.union: {
68
+ const types = t.types.map(__assignType((subType) => reflectionTypeToSchema(subType), ['subType', '', 'P"2!"/"']));
69
+ return { oneOf: types, type: 'union' };
70
+ }
71
+ case ReflectionKind.literal:
72
+ return { type: 'string' };
73
+ case ReflectionKind.tuple: {
74
+ const elements = t.types.map(__assignType((elementType) => reflectionTypeToSchema(elementType), ['elementType', '', 'P"2!"/"']));
75
+ return {
76
+ type: 'tuple',
77
+ elements: elements,
78
+ };
79
+ }
80
+ case ReflectionKind.tupleMember:
81
+ return reflectionTypeToSchema(t.type);
82
+ case ReflectionKind.never:
83
+ return { type: 'null' };
84
+ case ReflectionKind.undefined:
85
+ return { type: 'null' };
86
+ case ReflectionKind.null:
87
+ return { type: 'null' };
88
+ case ReflectionKind.void:
89
+ return { type: 'null' };
90
+ case ReflectionKind.any:
91
+ if (t.parent?.kind === ReflectionKind.property) {
92
+ return undefined;
93
+ }
94
+ throw new Error('Raw "any" type is not supported');
95
+ default:
96
+ throw new Error(`Unsupported type ${t.kind} of type ${t}`);
97
+ }
98
+ }, ['Type', 't', () => __ΩSchemaType, '', 'P"w!2"n#/$']);
99
+ const __ΩSchemaType = ["string", "number", "boolean", "array", "object", "null", "file", "union", "dataStream", "fileStream", "void", "tuple", 'type', 'format', 0, 'items', 0, 'elements', 'required', 0, 'oneOf', () => __ΩRecord, 0, 'properties', 'SchemaType', 'PP.!.".#.$.%.&.\'.(.).*.+.,J4-&4.8n/408n1F428&F438n4F458&n7o6#488Mw9y'];
100
+ const extractParameterSchema = __assignType((target, propertyKey, parameterIndex) => {
101
+ // @ts-expect-error - accessing constructor from prototype
102
+ const reflection = ReflectionClass.from(target.constructor);
103
+ const methodReflection = reflection.getMethod(propertyKey);
104
+ if (!methodReflection) {
105
+ throw new Error(`Method ${String(propertyKey)} not found in reflection`);
106
+ }
107
+ const parameters = methodReflection.parameters;
108
+ if (!parameters || parameters.length <= parameterIndex) {
109
+ throw new Error(`Parameter at index ${parameterIndex} not found in method ${String(propertyKey)}`);
110
+ }
111
+ const parameter = parameters[parameterIndex];
112
+ if (!parameter || !parameter.type) {
113
+ throw new Error(`Type information not found for parameter at index ${parameterIndex} in method ${String(propertyKey)}`);
114
+ }
115
+ return [reflectionTypeToSchema(parameter.type), !parameter.isOptional()];
116
+ }, ['target', 'propertyKey', 'parameterIndex', () => __ΩSchemaType, 'schema', 'required', '', 'P%2!P&+J2"\'2#Pn$I%)I&G/\'']);
117
+ export { extractMethodReturnSchema, reflectionToSchema, reflectionTypeToSchema, extractParameterSchema, };
118
+ export * from './files.js';
119
+ export * from './stream.js';
120
+ export * from './middleware.js';
121
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import { Context } from '../context.js';
2
+ export type Middleware = (ctx: Context, next: () => Promise<void>) => unknown;
3
+ export interface MiddlewareFactory {
4
+ (...args: unknown[]): Middleware;
5
+ isFactory: true;
6
+ }
7
+ export declare const createMiddlewareFactory: (factory: (...args: unknown[]) => Middleware) => MiddlewareFactory;
8
+ export declare type __ΩMiddleware = any[];
9
+ export declare type __ΩMiddlewareFactory = any[];
10
+ //# sourceMappingURL=middleware.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"middleware.d.ts","sourceRoot":"","sources":["../../src/types/middleware.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAErC,MAAM,MAAM,UAAU,GAAG,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC;AAE9E,MAAM,WAAW,iBAAiB;IAC9B,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,UAAU,CAAC;IACjC,SAAS,EAAE,IAAI,CAAC;CACnB;AAED,eAAO,MAAM,uBAAuB,YACvB,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,UAAU,KAC5C,iBAIF,CAAC"}
@@ -0,0 +1,16 @@
1
+ /*@ts-ignore*/
2
+ import { __ΩContext } from '../context.js';
3
+ function __assignType(fn, args) {
4
+ fn.__type = args;
5
+ return fn;
6
+ }
7
+ const __ΩMiddleware = [() => __ΩContext, 'ctx', '', 'next', 'Middleware', 'Pn!2"P$`/#2$#/#w%y'];
8
+ export { __ΩMiddleware as __ΩMiddleware };
9
+ const __ΩMiddlewareFactory = ['args', () => __ΩMiddleware, '', true, 'isFactory', 'MiddlewareFactory', 'PP#@2!n"v#.$4%Mw&y'];
10
+ export { __ΩMiddlewareFactory as __ΩMiddlewareFactory };
11
+ export const createMiddlewareFactory = __assignType((factory) => {
12
+ const middlewareFactory = factory;
13
+ middlewareFactory.isFactory = true;
14
+ return middlewareFactory;
15
+ }, ['args', () => __ΩMiddleware, '', 'factory', () => __ΩMiddlewareFactory, 'PP#@2!n"/#2$n%/#']);
16
+ //# sourceMappingURL=middleware.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"middleware.js","sourceRoot":"","sources":["../../src/types/middleware.ts"],"names":[],"mappings":";2BAAwB,YAAY;;;;;;;;;AASpC,MAAM,CAAC,MAAM,uBAAuB,gBAAG,CACnC,OAA2C,EAC1B,EAAE;IACnB,MAAM,iBAAiB,GAAG,OAA4B,CAAC;IACvD,iBAAiB,CAAC,SAAS,GAAG,IAAI,CAAC;IACnC,OAAO,iBAAiB,CAAC;AAC7B,CAAC,+FAAA,CAAC"}
@@ -0,0 +1,29 @@
1
+ import { Readable } from 'stream';
2
+ export interface DataStreamResponse<T> {
3
+ type: 'dataStream';
4
+ contentType: string;
5
+ stream: AsyncIterable<T>;
6
+ ISASTREAMDATAONLYFORFRAMEWORK: true;
7
+ }
8
+ export interface FileStreamResponse {
9
+ type: 'fileStream';
10
+ stream: Readable;
11
+ filename: string;
12
+ contentType: string;
13
+ cacheControl?: string;
14
+ contentLength?: number;
15
+ range?: {
16
+ start: number;
17
+ end: number;
18
+ };
19
+ ISASTREAMFILEONLYFORFRAMEWORK: true;
20
+ }
21
+ export interface StreamOptions {
22
+ contentType?: string;
23
+ downloadName?: string;
24
+ contentDisposition?: 'inline' | 'attachment';
25
+ }
26
+ export declare type __ΩDataStreamResponse = any[];
27
+ export declare type __ΩFileStreamResponse = any[];
28
+ export declare type __ΩStreamOptions = any[];
29
+ //# sourceMappingURL=stream.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stream.d.ts","sourceRoot":"","sources":["../../src/types/stream.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAElC,MAAM,WAAW,kBAAkB,CAAC,CAAC;IACjC,IAAI,EAAE,YAAY,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC;IACzB,6BAA6B,EAAE,IAAI,CAAC;CACvC;AAED,MAAM,WAAW,kBAAkB;IAC/B,IAAI,EAAE,YAAY,CAAC;IACnB,MAAM,EAAE,QAAQ,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE;QACJ,KAAK,EAAE,MAAM,CAAC;QACd,GAAG,EAAE,MAAM,CAAC;KACf,CAAC;IACF,6BAA6B,EAAE,IAAI,CAAC;CACvC;AAED,MAAM,WAAW,aAAa;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kBAAkB,CAAC,EAAE,QAAQ,GAAG,YAAY,CAAC;CAChD"}
@@ -0,0 +1,13 @@
1
+ const __ΩAsyncIterable = ['T', 'TReturn', 'TNext', () => __ΩAsyncIterator, () => Symbol.asyncIterator, 'AsyncIterable', 'b!"c""c#PPe#!e#"e##o$$1%Mw&y'];
2
+ const __ΩAsyncIterator = ['T', 'TReturn', 'TNext', 'param0', () => __ΩIteratorResult, 'next', () => __ΩPromiseLike, 'value', () => __ΩIteratorResult, 'return', 'e', () => __ΩIteratorResult, 'throw', 'AsyncIterator', 'b!"c""c#PPPPGPe%#GJ@2$e#!e#"o%#`1&PPe$"e$"o\'"J2(8e#!e#"o)#`1*P"2+8e#!e#"o,#`1-Mw.y'];
3
+ const __ΩIteratorResult = ['T', 'TReturn', () => __ΩIteratorYieldResult, () => __ΩIteratorReturnResult, 'IteratorResult', 'b!"c"Pe"!o#"e""o$"Jw%y'];
4
+ const __ΩPromiseLike = ['T', 'value', 0, '', 'onfulfilled', 'reason', 0, 'onrejected', 0, 'then', 'PromiseLike', 'b!PPPPe%!2"P""o#"J/$-,J2%8PP"2&P""o\'"J/$-,J2(8P""Jo)"1*Mw+y'];
5
+ const __ΩIteratorYieldResult = ['TYield', false, 'done', 'value', 'IteratorYieldResult', 'b!P."4#8e"!4$Mw%y'];
6
+ const __ΩIteratorReturnResult = ['TReturn', true, 'done', 'value', 'IteratorReturnResult', 'b!P."4#e"!4$Mw%y'];
7
+ const __ΩDataStreamResponse = ['T', "dataStream", 'type', 'contentType', () => __ΩAsyncIterable, 'stream', true, 'ISASTREAMDATAONLYFORFRAMEWORK', 'DataStreamResponse', 'b!P."4#&4$e"!o%"4&.\'4(Mw)y'];
8
+ export { __ΩDataStreamResponse as __ΩDataStreamResponse };
9
+ const __ΩFileStreamResponse = ["fileStream", 'type', 'stream', 'filename', 'contentType', 'cacheControl', 'contentLength', 'start', 'end', 'range', true, 'ISASTREAMFILEONLYFORFRAMEWORK', 'FileStreamResponse', 'P.!4"!4#&4$&4%&4&8\'4\'8P\'4(\'4)M4*8.+4,Mw-y'];
10
+ export { __ΩFileStreamResponse as __ΩFileStreamResponse };
11
+ const __ΩStreamOptions = ['contentType', 'downloadName', "inline", "attachment", 'contentDisposition', 'StreamOptions', 'P&4!8&4"8P.#.$J4%8Mw&y'];
12
+ export { __ΩStreamOptions as __ΩStreamOptions };
13
+ //# sourceMappingURL=stream.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stream.js","sourceRoot":"","sources":["../../src/types/stream.ts"],"names":[],"mappings":""}
package/package.json ADDED
@@ -0,0 +1,134 @@
1
+ {
2
+ "name": "constantia",
3
+ "version": "1.0.0",
4
+ "description": "A decorator-based, type-safe web framework for building self-documenting APIs with automatic OpenAPI generation",
5
+ "type": "module",
6
+ "main": "dist/index.js",
7
+ "module": "dist/index.js",
8
+ "types": "dist/index.d.ts",
9
+ "exports": {
10
+ ".": {
11
+ "types": "./dist/index.d.ts",
12
+ "import": "./dist/index.js",
13
+ "require": "./dist/index.cjs"
14
+ },
15
+ "./express": {
16
+ "types": "./dist/adapters/express.d.ts",
17
+ "import": "./dist/adapters/express.js",
18
+ "require": "./dist/adapters/express.cjs"
19
+ },
20
+ "./errors": {
21
+ "types": "./dist/errors/index.d.ts",
22
+ "import": "./dist/errors/index.js",
23
+ "require": "./dist/errors/index.cjs"
24
+ },
25
+ "./types": {
26
+ "types": "./dist/types/index.d.ts",
27
+ "import": "./dist/types/index.js",
28
+ "require": "./dist/types/index.cjs"
29
+ },
30
+ "./package.json": "./package.json"
31
+ },
32
+ "files": [
33
+ "dist"
34
+ ],
35
+ "scripts": {
36
+ "clean": "rimraf dist tsconfig.tsbuildinfo",
37
+ "build": "pnpm clean && pnpm lint && pnpm build:tsc",
38
+ "build:tsc": "tsc -p ./tsconfig.json && tsc-alias -p tsconfig.json --resolve-full-paths",
39
+ "dev": "pnpm clean && nodemon --watch \"src/**/*.ts\" --ext \"ts\" --exec \"pnpm build:tsc\"",
40
+ "lint": "tsc --noEmit && eslint --max-warnings 0",
41
+ "lint:fix": "tsc --noEmit && eslint --fix",
42
+ "format": "prettier --check './**/*.{js,jsx,ts,tsx,css,md,json}' --config ./.prettierrc",
43
+ "format:fix": "prettier --write './**/*.{js,jsx,ts,tsx,css,md,json}' --config ./.prettierrc",
44
+ "test": "cross-env NODE_OPTIONS=--experimental-vm-modules jest",
45
+ "test:coverage": "cross-env NODE_OPTIONS=--experimental-vm-modules jest --coverage",
46
+ "postinstall": "node_modules/.bin/deepkit-type-install",
47
+ "prepare": "husky"
48
+ },
49
+ "keywords": [
50
+ "typescript",
51
+ "framework",
52
+ "express",
53
+ "decorators",
54
+ "openapi",
55
+ "swagger",
56
+ "api",
57
+ "rest",
58
+ "type-safe",
59
+ "validation",
60
+ "web-framework"
61
+ ],
62
+ "author": "Sperid Labs",
63
+ "license": "MIT",
64
+ "repository": {
65
+ "type": "git",
66
+ "url": "git+https://github.com/speridlabs/constantia.git"
67
+ },
68
+ "bugs": {
69
+ "url": "https://github.com/speridlabs/constantia/issues"
70
+ },
71
+ "homepage": "https://github.com/speridlabs/constantia#readme",
72
+ "devDependencies": {
73
+ "@commitlint/cli": "^19.8.1",
74
+ "@commitlint/config-conventional": "^19.8.1",
75
+ "@deepkit/type-compiler": "1.0.1-alpha.155",
76
+ "@eslint/eslintrc": "^3.3.1",
77
+ "@eslint/js": "^9.26.0",
78
+ "@semantic-release/changelog": "^6.0.3",
79
+ "@semantic-release/commit-analyzer": "^13.0.1",
80
+ "@semantic-release/git": "^10.0.1",
81
+ "@semantic-release/github": "^11.0.2",
82
+ "@semantic-release/npm": "^12.0.1",
83
+ "@semantic-release/release-notes-generator": "^14.0.3",
84
+ "@types/express": "^5.0.0",
85
+ "@types/express-fileupload": "^1.5.1",
86
+ "@types/jest": "^29.5.14",
87
+ "@types/node": "20",
88
+ "@typescript-eslint/eslint-plugin": "8.31.1",
89
+ "@typescript-eslint/parser": "8.31.1",
90
+ "conventional-changelog-conventionalcommits": "^8.0.0",
91
+ "cross-env": "^7.0.3",
92
+ "eslint": "^9.23.0",
93
+ "eslint-config-prettier": "^10.1.1",
94
+ "eslint-plugin-prettier": "^5.2.5",
95
+ "globals": "^16.0.0",
96
+ "husky": "^9.1.7",
97
+ "jest": "^29.7.0",
98
+ "lint-staged": "^16.1.5",
99
+ "nodemon": "^3.1.9",
100
+ "prettier": "3.3.3",
101
+ "rimraf": "^6.0.1",
102
+ "semantic-release": "^24.2.3",
103
+ "ts-jest": "^29.3.3",
104
+ "ts-node": "^10.9.2",
105
+ "tsc-alias": "^1.8.10",
106
+ "tsconfig-paths": "^4.2.0",
107
+ "typescript": "5.6.3"
108
+ },
109
+ "dependencies": {
110
+ "@deepkit/type": "1.0.1-alpha.155",
111
+ "busboy": "^1.6.0",
112
+ "express": "^4.21.1",
113
+ "express-fileupload": "^1.5.1",
114
+ "reflect-metadata": "^0.2.2"
115
+ },
116
+ "peerDependencies": {
117
+ "express": ">=4.0.0"
118
+ },
119
+ "peerDependenciesMeta": {
120
+ "express": {
121
+ "optional": true
122
+ }
123
+ },
124
+ "pnpm": {
125
+ "onlyBuiltDependencies": [
126
+ "@deepkit/type-compiler"
127
+ ]
128
+ },
129
+ "lint-staged": {
130
+ "src/**/*.{ts,tsx,html,js,jsx,json,yml}": [
131
+ "prettier --write"
132
+ ]
133
+ }
134
+ }