@lerianstudio/sindarian-server 1.0.0-beta.1

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 (134) hide show
  1. package/README.md +0 -0
  2. package/dist/constants/http-methods.d.ts +8 -0
  3. package/dist/constants/http-methods.d.ts.map +1 -0
  4. package/dist/constants/http-methods.js +12 -0
  5. package/dist/constants/http-methods.js.map +1 -0
  6. package/dist/constants/http-status.d.ts +57 -0
  7. package/dist/constants/http-status.d.ts.map +1 -0
  8. package/dist/constants/http-status.js +61 -0
  9. package/dist/constants/http-status.js.map +1 -0
  10. package/dist/constants/index.d.ts +3 -0
  11. package/dist/constants/index.d.ts.map +1 -0
  12. package/dist/constants/index.js +19 -0
  13. package/dist/constants/index.js.map +1 -0
  14. package/dist/constants/keys.d.ts +17 -0
  15. package/dist/constants/keys.d.ts.map +1 -0
  16. package/dist/constants/keys.js +20 -0
  17. package/dist/constants/keys.js.map +1 -0
  18. package/dist/controllers/base-controller.d.ts +5 -0
  19. package/dist/controllers/base-controller.d.ts.map +1 -0
  20. package/dist/controllers/base-controller.js +22 -0
  21. package/dist/controllers/base-controller.js.map +1 -0
  22. package/dist/controllers/decorators/body-decorator.d.ts +25 -0
  23. package/dist/controllers/decorators/body-decorator.d.ts.map +1 -0
  24. package/dist/controllers/decorators/body-decorator.js +65 -0
  25. package/dist/controllers/decorators/body-decorator.js.map +1 -0
  26. package/dist/controllers/decorators/controller-decorator.d.ts +18 -0
  27. package/dist/controllers/decorators/controller-decorator.d.ts.map +1 -0
  28. package/dist/controllers/decorators/controller-decorator.js +89 -0
  29. package/dist/controllers/decorators/controller-decorator.js.map +1 -0
  30. package/dist/controllers/decorators/index.d.ts +7 -0
  31. package/dist/controllers/decorators/index.d.ts.map +1 -0
  32. package/dist/controllers/decorators/index.js +20 -0
  33. package/dist/controllers/decorators/index.js.map +1 -0
  34. package/dist/controllers/decorators/param-decorator.d.ts +21 -0
  35. package/dist/controllers/decorators/param-decorator.d.ts.map +1 -0
  36. package/dist/controllers/decorators/param-decorator.js +56 -0
  37. package/dist/controllers/decorators/param-decorator.js.map +1 -0
  38. package/dist/controllers/decorators/query-decorator.d.ts +26 -0
  39. package/dist/controllers/decorators/query-decorator.d.ts.map +1 -0
  40. package/dist/controllers/decorators/query-decorator.js +62 -0
  41. package/dist/controllers/decorators/query-decorator.js.map +1 -0
  42. package/dist/controllers/decorators/request-decorator.d.ts +24 -0
  43. package/dist/controllers/decorators/request-decorator.d.ts.map +1 -0
  44. package/dist/controllers/decorators/request-decorator.js +39 -0
  45. package/dist/controllers/decorators/request-decorator.js.map +1 -0
  46. package/dist/controllers/decorators/route-decorator.d.ts +43 -0
  47. package/dist/controllers/decorators/route-decorator.d.ts.map +1 -0
  48. package/dist/controllers/decorators/route-decorator.js +91 -0
  49. package/dist/controllers/decorators/route-decorator.js.map +1 -0
  50. package/dist/controllers/index.d.ts +3 -0
  51. package/dist/controllers/index.d.ts.map +1 -0
  52. package/dist/controllers/index.js +19 -0
  53. package/dist/controllers/index.js.map +1 -0
  54. package/dist/dependency-injection/container.d.ts +33 -0
  55. package/dist/dependency-injection/container.d.ts.map +1 -0
  56. package/dist/dependency-injection/container.js +59 -0
  57. package/dist/dependency-injection/container.js.map +1 -0
  58. package/dist/dependency-injection/index.d.ts +3 -0
  59. package/dist/dependency-injection/index.d.ts.map +1 -0
  60. package/dist/dependency-injection/index.js +22 -0
  61. package/dist/dependency-injection/index.js.map +1 -0
  62. package/dist/exceptions/api-exception.d.ts +38 -0
  63. package/dist/exceptions/api-exception.d.ts.map +1 -0
  64. package/dist/exceptions/api-exception.js +70 -0
  65. package/dist/exceptions/api-exception.js.map +1 -0
  66. package/dist/exceptions/http-exception.d.ts +16 -0
  67. package/dist/exceptions/http-exception.d.ts.map +1 -0
  68. package/dist/exceptions/http-exception.js +27 -0
  69. package/dist/exceptions/http-exception.js.map +1 -0
  70. package/dist/exceptions/index.d.ts +3 -0
  71. package/dist/exceptions/index.d.ts.map +1 -0
  72. package/dist/exceptions/index.js +19 -0
  73. package/dist/exceptions/index.js.map +1 -0
  74. package/dist/index.d.ts +9 -0
  75. package/dist/index.d.ts.map +1 -0
  76. package/dist/index.js +30 -0
  77. package/dist/index.js.map +1 -0
  78. package/dist/interceptor/decorators/use-interceptor.d.ts +3 -0
  79. package/dist/interceptor/decorators/use-interceptor.d.ts.map +1 -0
  80. package/dist/interceptor/decorators/use-interceptor.js +9 -0
  81. package/dist/interceptor/decorators/use-interceptor.js.map +1 -0
  82. package/dist/interceptor/interceptor.d.ts +8 -0
  83. package/dist/interceptor/interceptor.d.ts.map +1 -0
  84. package/dist/interceptor/interceptor.js +7 -0
  85. package/dist/interceptor/interceptor.js.map +1 -0
  86. package/dist/modules/index.d.ts +2 -0
  87. package/dist/modules/index.d.ts.map +1 -0
  88. package/dist/modules/index.js +18 -0
  89. package/dist/modules/index.js.map +1 -0
  90. package/dist/modules/module-decorator.d.ts +22 -0
  91. package/dist/modules/module-decorator.d.ts.map +1 -0
  92. package/dist/modules/module-decorator.js +86 -0
  93. package/dist/modules/module-decorator.js.map +1 -0
  94. package/dist/server/index.d.ts +2 -0
  95. package/dist/server/index.d.ts.map +1 -0
  96. package/dist/server/index.js +18 -0
  97. package/dist/server/index.js.map +1 -0
  98. package/dist/server/server-factory.d.ts +47 -0
  99. package/dist/server/server-factory.d.ts.map +1 -0
  100. package/dist/server/server-factory.js +131 -0
  101. package/dist/server/server-factory.js.map +1 -0
  102. package/dist/services/request.d.ts +7 -0
  103. package/dist/services/request.d.ts.map +1 -0
  104. package/dist/services/request.js +32 -0
  105. package/dist/services/request.js.map +1 -0
  106. package/dist/types/class.d.ts +4 -0
  107. package/dist/types/class.d.ts.map +1 -0
  108. package/dist/types/class.js +3 -0
  109. package/dist/types/class.js.map +1 -0
  110. package/dist/utils/apply-decorators.d.ts +13 -0
  111. package/dist/utils/apply-decorators.d.ts.map +1 -0
  112. package/dist/utils/apply-decorators.js +28 -0
  113. package/dist/utils/apply-decorators.js.map +1 -0
  114. package/dist/utils/class/get-class-methods.d.ts +7 -0
  115. package/dist/utils/class/get-class-methods.d.ts.map +1 -0
  116. package/dist/utils/class/get-class-methods.js +14 -0
  117. package/dist/utils/class/get-class-methods.js.map +1 -0
  118. package/dist/utils/nextjs/get-next-arguments.d.ts +3 -0
  119. package/dist/utils/nextjs/get-next-arguments.d.ts.map +1 -0
  120. package/dist/utils/nextjs/get-next-arguments.js +21 -0
  121. package/dist/utils/nextjs/get-next-arguments.js.map +1 -0
  122. package/dist/utils/url/index.d.ts +1 -0
  123. package/dist/utils/url/index.d.ts.map +1 -0
  124. package/dist/utils/url/index.js +2 -0
  125. package/dist/utils/url/index.js.map +1 -0
  126. package/dist/utils/url/url-join.d.ts +7 -0
  127. package/dist/utils/url/url-join.d.ts.map +1 -0
  128. package/dist/utils/url/url-join.js +17 -0
  129. package/dist/utils/url/url-join.js.map +1 -0
  130. package/dist/utils/url/url-match.d.ts +8 -0
  131. package/dist/utils/url/url-match.d.ts.map +1 -0
  132. package/dist/utils/url/url-match.js +15 -0
  133. package/dist/utils/url/url-match.js.map +1 -0
  134. package/package.json +46 -0
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.applyDecorators = applyDecorators;
4
+ /**
5
+ * Function that returns a new decorator that applies all decorators provided by param
6
+ *
7
+ * Useful to build new decorators (or a decorator factory) encapsulating multiple decorators related with the same feature
8
+ *
9
+ * From: https://github.com/nestjs/nest/blob/master/packages/common/decorators/apply-decorators.d.ts
10
+ *
11
+ * @param decorators one or more decorators (e.g., `ApplyGuard(...)`)
12
+ *
13
+ * @publicApi
14
+ */
15
+ function applyDecorators(...decorators) {
16
+ return (target, propertyKey, descriptor) => {
17
+ for (const decorator of decorators) {
18
+ if (target instanceof Function && !descriptor) {
19
+ ;
20
+ decorator(target);
21
+ continue;
22
+ }
23
+ ;
24
+ decorator(target, propertyKey, descriptor);
25
+ }
26
+ };
27
+ }
28
+ //# sourceMappingURL=apply-decorators.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"apply-decorators.js","sourceRoot":"","sources":["../../src/utils/apply-decorators.ts"],"names":[],"mappings":";;AAWA,0CAoBC;AA/BD;;;;;;;;;;GAUG;AACH,SAAgB,eAAe,CAC7B,GAAG,UAAuE;IAE1E,OAAO,CACL,MAA0B,EAC1B,WAA6B,EAC7B,UAAuC,EACvC,EAAE;QACF,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;YACnC,IAAI,MAAM,YAAY,QAAQ,IAAI,CAAC,UAAU,EAAE,CAAC;gBAC9C,CAAC;gBAAC,SAA4B,CAAC,MAAM,CAAC,CAAA;gBACtC,SAAQ;YACV,CAAC;YACD,CAAC;YAAC,SAAiD,CACjD,MAAM,EACN,WAAY,EACZ,UAAW,CACZ,CAAA;QACH,CAAC;IACH,CAAC,CAAA;AACH,CAAC"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Get the methods of a class
3
+ * @param target - The class to get the methods from
4
+ * @returns The methods of the class
5
+ */
6
+ export declare function getClassMethods(target: Function): string[];
7
+ //# sourceMappingURL=get-class-methods.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-class-methods.d.ts","sourceRoot":"","sources":["../../../src/utils/class/get-class-methods.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,QAAQ,YAQ/C"}
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getClassMethods = getClassMethods;
4
+ /**
5
+ * Get the methods of a class
6
+ * @param target - The class to get the methods from
7
+ * @returns The methods of the class
8
+ */
9
+ function getClassMethods(target) {
10
+ const prototype = target.prototype;
11
+ const methodNames = Object.getOwnPropertyNames(prototype).filter((name) => typeof prototype[name] === 'function' && name !== 'constructor');
12
+ return methodNames;
13
+ }
14
+ //# sourceMappingURL=get-class-methods.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-class-methods.js","sourceRoot":"","sources":["../../../src/utils/class/get-class-methods.ts"],"names":[],"mappings":";;AAKA,0CAQC;AAbD;;;;GAIG;AACH,SAAgB,eAAe,CAAC,MAAgB;IAC9C,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAA;IAElC,MAAM,WAAW,GAAG,MAAM,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC,MAAM,CAC9D,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,SAAS,CAAC,IAAI,CAAC,KAAK,UAAU,IAAI,IAAI,KAAK,aAAa,CAC1E,CAAA;IAED,OAAO,WAAW,CAAA;AACpB,CAAC"}
@@ -0,0 +1,3 @@
1
+ export declare function getNextRequestArgument(args: any[]): any;
2
+ export declare function getNextParamArgument(args: any[]): Promise<any>;
3
+ //# sourceMappingURL=get-next-arguments.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-next-arguments.d.ts","sourceRoot":"","sources":["../../../src/utils/nextjs/get-next-arguments.ts"],"names":[],"mappings":"AAAA,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,GAAG,EAAE,OAMjD;AAED,wBAAsB,oBAAoB,CAAC,IAAI,EAAE,GAAG,EAAE,gBAWrD"}
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getNextRequestArgument = getNextRequestArgument;
4
+ exports.getNextParamArgument = getNextParamArgument;
5
+ function getNextRequestArgument(args) {
6
+ if (!args) {
7
+ return undefined;
8
+ }
9
+ return args[0];
10
+ }
11
+ async function getNextParamArgument(args) {
12
+ if (!args) {
13
+ return undefined;
14
+ }
15
+ if (!args[1] || !('params' in args[1])) {
16
+ return undefined;
17
+ }
18
+ // args[1].params is a Promise in Next.js App Router
19
+ return await args[1].params;
20
+ }
21
+ //# sourceMappingURL=get-next-arguments.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-next-arguments.js","sourceRoot":"","sources":["../../../src/utils/nextjs/get-next-arguments.ts"],"names":[],"mappings":";;AAAA,wDAMC;AAED,oDAWC;AAnBD,SAAgB,sBAAsB,CAAC,IAAW;IAChD,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,SAAS,CAAA;IAClB,CAAC;IAED,OAAO,IAAI,CAAC,CAAC,CAAC,CAAA;AAChB,CAAC;AAEM,KAAK,UAAU,oBAAoB,CAAC,IAAW;IACpD,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,SAAS,CAAA;IAClB,CAAC;IAED,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACvC,OAAO,SAAS,CAAA;IAClB,CAAC;IAED,oDAAoD;IACpD,OAAO,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAA;AAC7B,CAAC"}
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/url/index.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/url/index.ts"],"names":[],"mappings":""}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Join multiple URL parts with a slash
3
+ * @param args - The URL parts to join
4
+ * @returns The joined URL
5
+ */
6
+ export declare function urlJoin(...args: string[]): string;
7
+ //# sourceMappingURL=url-join.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"url-join.d.ts","sourceRoot":"","sources":["../../../src/utils/url/url-join.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,wBAAgB,OAAO,CAAC,GAAG,IAAI,EAAE,MAAM,EAAE,UAQxC"}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.urlJoin = urlJoin;
4
+ /**
5
+ * Join multiple URL parts with a slash
6
+ * @param args - The URL parts to join
7
+ * @returns The joined URL
8
+ */
9
+ function urlJoin(...args) {
10
+ if (args.length === 0)
11
+ return '/';
12
+ const cleaned = args
13
+ .map((pathPart) => pathPart.replace(/(^\/+|\/+$)/g, ''))
14
+ .filter(Boolean);
15
+ return cleaned.length > 0 ? '/' + cleaned.join('/') : '/';
16
+ }
17
+ //# sourceMappingURL=url-join.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"url-join.js","sourceRoot":"","sources":["../../../src/utils/url/url-join.ts"],"names":[],"mappings":";;AAKA,0BAQC;AAbD;;;;GAIG;AACH,SAAgB,OAAO,CAAC,GAAG,IAAc;IACvC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,GAAG,CAAA;IAEjC,MAAM,OAAO,GAAG,IAAI;SACjB,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;SACvD,MAAM,CAAC,OAAO,CAAC,CAAA;IAElB,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAA;AAC3D,CAAC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Check if a pathname matches a route
3
+ * @param pathname - The pathname to check
4
+ * @param route - The route to check against
5
+ * @returns True if the pathname matches the route, false otherwise
6
+ */
7
+ export declare function urlMatch(pathname: string, route: string): boolean;
8
+ //# sourceMappingURL=url-match.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"url-match.d.ts","sourceRoot":"","sources":["../../../src/utils/url/url-match.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AACH,wBAAgB,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,WAGvD"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.urlMatch = urlMatch;
4
+ const path_to_regexp_1 = require("path-to-regexp");
5
+ /**
6
+ * Check if a pathname matches a route
7
+ * @param pathname - The pathname to check
8
+ * @param route - The route to check against
9
+ * @returns True if the pathname matches the route, false otherwise
10
+ */
11
+ function urlMatch(pathname, route) {
12
+ const { regexp } = (0, path_to_regexp_1.pathToRegexp)(route);
13
+ return regexp.test(pathname);
14
+ }
15
+ //# sourceMappingURL=url-match.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"url-match.js","sourceRoot":"","sources":["../../../src/utils/url/url-match.ts"],"names":[],"mappings":";;AAQA,4BAGC;AAXD,mDAA6C;AAE7C;;;;;GAKG;AACH,SAAgB,QAAQ,CAAC,QAAgB,EAAE,KAAa;IACtD,MAAM,EAAE,MAAM,EAAE,GAAG,IAAA,6BAAY,EAAC,KAAK,CAAC,CAAA;IACtC,OAAO,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;AAC9B,CAAC"}
package/package.json ADDED
@@ -0,0 +1,46 @@
1
+ {
2
+ "name": "@lerianstudio/sindarian-server",
3
+ "version": "1.0.0-beta.1",
4
+ "description": "Sindarian Server",
5
+ "license": "ISC",
6
+ "author": {
7
+ "name": "Lerian Studio",
8
+ "email": "contato@lerian.studio",
9
+ "url": "https://lerian.studio"
10
+ },
11
+ "repository": {
12
+ "type": "git",
13
+ "url": "https://github.com/LerianStudio/console-sdk.git",
14
+ "directory": "packages/sindarian-server"
15
+ },
16
+ "type": "commonjs",
17
+ "main": "dist/index.js",
18
+ "types": "dist/index.d.ts",
19
+ "files": [
20
+ "dist"
21
+ ],
22
+ "scripts": {
23
+ "build": "tsc && npm run build:paths",
24
+ "build:paths": "tsc-alias -p tsconfig.json",
25
+ "test": "jest",
26
+ "test:e2e": "cd test && npm run test",
27
+ "lint": "eslint . --fix",
28
+ "lint:check": "eslint ."
29
+ },
30
+ "dependencies": {
31
+ "@lerianstudio/lib-logs": ">=1.1.0",
32
+ "path-to-regexp": "^8.2.0"
33
+ },
34
+ "peerDependencies": {
35
+ "reflect-metadata": ">=0.2.2",
36
+ "inversify": ">=7.7.0",
37
+ "next": ">=15.4.0",
38
+ "zod": ">=4.0.0"
39
+ },
40
+ "devDependencies": {
41
+ "tsc-alias": "^1.8.16"
42
+ },
43
+ "publishConfig": {
44
+ "access": "public"
45
+ }
46
+ }