@cudenix/cudenix 0.0.2 → 0.0.4

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 (54) hide show
  1. package/dist/app.d.ts +10 -9
  2. package/dist/app.d.ts.map +1 -1
  3. package/dist/app.js +55 -33
  4. package/dist/app.js.map +1 -1
  5. package/dist/context.d.ts +4 -8
  6. package/dist/context.d.ts.map +1 -1
  7. package/dist/context.js +8 -7
  8. package/dist/context.js.map +1 -1
  9. package/dist/ecosystem/client/client.js +1 -1
  10. package/dist/ecosystem/client/client.js.map +1 -1
  11. package/dist/ecosystem/cluster/cluster.d.ts +1 -2
  12. package/dist/ecosystem/cluster/cluster.d.ts.map +1 -1
  13. package/dist/ecosystem/cluster/cluster.js +2 -6
  14. package/dist/ecosystem/cluster/cluster.js.map +1 -1
  15. package/dist/ecosystem/cors/cors.d.ts +30 -0
  16. package/dist/ecosystem/cors/cors.d.ts.map +1 -0
  17. package/dist/ecosystem/cors/cors.js +44 -0
  18. package/dist/ecosystem/cors/cors.js.map +1 -0
  19. package/dist/ecosystem/cors/index.d.ts +2 -0
  20. package/dist/ecosystem/cors/index.d.ts.map +1 -0
  21. package/dist/ecosystem/cors/index.js +2 -0
  22. package/dist/ecosystem/cors/index.js.map +1 -0
  23. package/dist/ecosystem/i18n/i18n.d.ts +5 -6
  24. package/dist/ecosystem/i18n/i18n.d.ts.map +1 -1
  25. package/dist/ecosystem/i18n/i18n.js +41 -77
  26. package/dist/ecosystem/i18n/i18n.js.map +1 -1
  27. package/dist/ecosystem/openapi/index.d.ts +2 -0
  28. package/dist/ecosystem/openapi/index.d.ts.map +1 -0
  29. package/dist/ecosystem/openapi/index.js +2 -0
  30. package/dist/ecosystem/openapi/index.js.map +1 -0
  31. package/dist/ecosystem/openapi/openapi.d.ts +39 -0
  32. package/dist/ecosystem/openapi/openapi.d.ts.map +1 -0
  33. package/dist/ecosystem/openapi/openapi.js +118 -0
  34. package/dist/ecosystem/openapi/openapi.js.map +1 -0
  35. package/dist/ecosystem/openapi/scalar.d.ts +2 -0
  36. package/dist/ecosystem/openapi/scalar.d.ts.map +1 -0
  37. package/dist/ecosystem/openapi/scalar.js +24 -0
  38. package/dist/ecosystem/openapi/scalar.js.map +1 -0
  39. package/dist/error.d.ts +2 -2
  40. package/dist/error.d.ts.map +1 -1
  41. package/dist/error.js +1 -1
  42. package/dist/error.js.map +1 -1
  43. package/dist/success.d.ts +2 -2
  44. package/dist/success.d.ts.map +1 -1
  45. package/dist/success.js +1 -1
  46. package/dist/success.js.map +1 -1
  47. package/dist/utils/regexp.d.ts.map +1 -1
  48. package/dist/utils/regexp.js +5 -5
  49. package/dist/utils/regexp.js.map +1 -1
  50. package/dist/validator.d.ts +2 -2
  51. package/dist/validator.d.ts.map +1 -1
  52. package/dist/validator.js +2 -1
  53. package/dist/validator.js.map +1 -1
  54. package/package.json +9 -1
@@ -1 +1 @@
1
- {"version":3,"file":"i18n.d.ts","sourceRoot":"","sources":["../../../src/ecosystem/i18n/i18n.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAKjC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAE9D,UAAU,WAAW;IACpB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,WAAW,GAAG,CAAC,MAAM,GAAG,WAAW,CAAC,EAAE,CAAC;CAC/D;AAED,UAAU,IAAI;IACb,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,YAAY,EAAE,WAAW,CAAC;CAC1B;AAED,UAAU,gBAAiB,SAAQ,IAAI,CAAC,IAAI,EAAE,QAAQ,GAAG,QAAQ,CAAC;IACjE,KAAK,CAAC,EAAE,OAAO,CAAC;CAChB;AAiED,wBAAgB,SAAS,CACxB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,gBAAgB,UAEH,GAAG,YA+B1B;AAED,eAAO,MAAM,UAAU;;;GAuBtB,CAAC;AAEF,eAAO,MAAM,IAAI;;wBASV,gBAAgB;CAEtB,CAAC"}
1
+ {"version":3,"file":"i18n.d.ts","sourceRoot":"","sources":["../../../src/ecosystem/i18n/i18n.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAIjC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAE9D,UAAU,WAAW;IACpB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,WAAW,GAAG,CAAC,MAAM,GAAG,WAAW,CAAC,EAAE,CAAC;CAC/D;AAED,UAAU,IAAI;IACb,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,YAAY,EAAE,WAAW,CAAC;CAC1B;AAED,UAAU,gBAAiB,SAAQ,IAAI,CAAC,IAAI,EAAE,QAAQ,GAAG,QAAQ,CAAC;CAAG;AAErE,eAAO,MAAM,IAAI;gBACJ,MAAM,YAAY,MAAM,YAAY,gBAAgB,UAClC,GAAG;;;;;;wBA0E3B,gBAAgB;CAEtB,CAAC"}
@@ -1,87 +1,51 @@
1
- import { readFileSync, readdirSync, watch, writeFileSync } from "node:fs";
1
+ import { readdir } from "node:fs/promises";
2
+ import { module } from "../../module.js";
2
3
  import { getRequestContext } from "../../storage.js";
3
4
  import { Empty } from "../../utils/empty.js";
4
5
  import { getCookies } from "../../utils/get-cookies.js";
5
- const loadTranslation = (path, language) => {
6
- return JSON.parse(readFileSync(`${path}/${language}/${language}.json`, "utf8"));
7
- };
8
- const writeTypes = (path, translations) => {
9
- writeFileSync(`${path}/types.d.ts`, `import '@cudenix/cudenix/i18n'; declare module '@cudenix/cudenix/i18n' { export interface I18nTranslations ${JSON.stringify(translations)}; };`);
10
- };
11
- const watchChanges = (memory, path) => {
12
- const event = watch(path, {
13
- recursive: true,
14
- }, (event, filename) => {
15
- if (event !== "change" || !filename) {
16
- return;
17
- }
18
- const language = filename.split("/").pop()?.split(".")[0];
19
- if (!language ||
20
- memory.get("i18n").languages.indexOf(language) === -1) {
21
- return;
22
- }
23
- const translation = loadTranslation(memory.get("i18n").path, language);
24
- if (Bun.deepEquals(memory.get("i18n").translations[language], translation)) {
25
- return;
26
- }
27
- memory.get("i18n").translations[language] = translation;
28
- if (language === memory.get("i18n").language) {
29
- writeTypes(memory.get("i18n").path, translation);
30
- }
31
- });
32
- process.on("SIGINT", () => {
33
- event.removeAllListeners();
34
- event.close();
35
- process.exit(0);
36
- });
37
- };
38
- export function i18nAddon(path, language, options) {
39
- return function () {
40
- const languages = readdirSync(path, {
41
- withFileTypes: true,
42
- })
43
- .filter((directory) => directory.isDirectory())
44
- .map((directory) => directory.name);
45
- this.memory.set("i18n", {
46
- ...options,
47
- language,
48
- path,
49
- languages,
50
- translations: new Empty(),
51
- });
52
- for (let i = 0; i < languages.length; i++) {
53
- this.memory.get("i18n").translations[languages[i]] =
54
- loadTranslation(path, languages[i]);
55
- }
56
- writeTypes(path, this.memory.get("i18n").translations[language]);
57
- if (options?.watch) {
58
- watchChanges(this.memory, path);
59
- }
60
- return "i18n";
61
- };
62
- }
63
- export const i18nModule = async () => {
64
- const module = (await import("../../module.js")).module;
65
- return module().middleware((context, next) => {
66
- const i18n = context.memory.get("i18n");
67
- if (!i18n) {
68
- return next();
69
- }
70
- const acceptLanguage = getCookies(context.request.raw.headers)["Accept-Language"] ??
71
- context.request.raw.headers.get("Accept-Language");
72
- const language = i18n.languages.includes(acceptLanguage)
73
- ? acceptLanguage
74
- : i18n.language;
75
- context.store.i18n = {
76
- language,
77
- };
78
- return next();
79
- });
80
- };
81
6
  export const i18n = {
7
+ addon(path, language, options) {
8
+ return async function () {
9
+ const directories = await readdir(path, {
10
+ withFileTypes: true,
11
+ });
12
+ const languages = directories
13
+ .filter((directory) => directory.isDirectory())
14
+ .map((directory) => directory.name);
15
+ this.memory.set("i18n", {
16
+ ...options,
17
+ language,
18
+ path,
19
+ languages,
20
+ translations: new Empty(),
21
+ });
22
+ for (let i = 0; i < languages.length; i++) {
23
+ this.memory.get("i18n").translations[languages[i]] =
24
+ await Bun.file(`${path}/${languages[i]}/${languages[i]}.json`).json();
25
+ }
26
+ await Bun.write(`${path}/types.d.ts`, `import '@cudenix/cudenix/i18n'; declare module '@cudenix/cudenix/i18n' { export interface I18nTranslations ${JSON.stringify(this.memory.get("i18n").translations[language])}; };`);
27
+ return "i18n";
28
+ };
29
+ },
82
30
  get language() {
83
31
  return getRequestContext()?.store.i18n?.language;
84
32
  },
33
+ module() {
34
+ return module().middleware(({ memory, request: { raw: { headers }, }, store, }, next) => {
35
+ const i18n = memory.get("i18n");
36
+ if (!i18n) {
37
+ return next();
38
+ }
39
+ const language = getCookies(headers)[i18n.cookie ?? "Accept-Language"] ??
40
+ headers.get(i18n.header ?? "Accept-Language");
41
+ store.i18n = {
42
+ language: i18n.languages.includes(language)
43
+ ? language
44
+ : i18n.language,
45
+ };
46
+ return next();
47
+ });
48
+ },
85
49
  get translate() {
86
50
  const context = getRequestContext();
87
51
  return context?.memory.get("i18n")?.translations[(context?.store).i18n.language];
@@ -1 +1 @@
1
- {"version":3,"file":"i18n.js","sourceRoot":"","sources":["../../../src/ecosystem/i18n/i18n.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"i18n.js","sourceRoot":"","sources":["../../../src/ecosystem/i18n/i18n.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export * from "../../ecosystem/openapi/openapi.js";
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ecosystem/openapi/index.ts"],"names":[],"mappings":"AAAA,cAAc,6BAA6B,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from "../../ecosystem/openapi/openapi.js";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ecosystem/openapi/index.ts"],"names":[],"mappings":"AAAA,cAAc,6BAA6B,CAAC"}
@@ -0,0 +1,39 @@
1
+ import { type App } from "../../index.js";
2
+ type AddonToJsonSchema = (schema: any) => Record<string, unknown>;
3
+ interface AddonOptions {
4
+ description?: string;
5
+ title?: string;
6
+ version?: string;
7
+ }
8
+ interface ModuleOptions {
9
+ path?: `/${string}`;
10
+ }
11
+ export declare const openapi: {
12
+ addon(toJsonSchema: AddonToJsonSchema, options?: AddonOptions): (this: App) => string;
13
+ module(options?: ModuleOptions): import("../../module.js").Module<{}, "/", {
14
+ [x: string]: {
15
+ get: {
16
+ method: "GET";
17
+ path: `/${string}`;
18
+ request: import("../../index.js").MergeInferValidatorRequest<{}, import("../../index.js").DeepInferValidatorInput<Partial<import("../../index.js").ValidatorRequest<unknown, unknown, unknown, unknown, unknown>>>>;
19
+ response: import("../../index.js").Success<string, 200>;
20
+ };
21
+ };
22
+ } & {
23
+ [x: string]: {
24
+ json: {
25
+ get: {
26
+ method: "GET";
27
+ path: `/${string}/json`;
28
+ request: import("../../index.js").MergeInferValidatorRequest<{}, import("../../index.js").DeepInferValidatorInput<Partial<import("../../index.js").ValidatorRequest<unknown, unknown, unknown, unknown, unknown>>>>;
29
+ response: import("../../index.js").Success<string, 200>;
30
+ };
31
+ };
32
+ };
33
+ }, {}, {}, {
34
+ inputs: NonNullable<unknown>;
35
+ outputs: NonNullable<unknown>;
36
+ }>;
37
+ };
38
+ export {};
39
+ //# sourceMappingURL=openapi.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"openapi.d.ts","sourceRoot":"","sources":["../../../src/ecosystem/openapi/openapi.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,GAAG,EAAW,MAAM,SAAS,CAAC;AAI5C,KAAK,iBAAiB,GAAG,CAAC,MAAM,EAAE,GAAG,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAElE,UAAU,YAAY;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,UAAU,aAAa;IACtB,IAAI,CAAC,EAAE,IAAI,MAAM,EAAE,CAAC;CACpB;AAID,eAAO,MAAM,OAAO;wBACC,iBAAiB,YAAY,YAAY,UACrC,GAAG;qBA8IV,aAAa;;;;;;;;;;;;;;;;;;;;;;;;CAoB9B,CAAC"}
@@ -0,0 +1,118 @@
1
+ import { scalar } from "../../ecosystem/openapi/scalar.js";
2
+ import { success } from "../../index.js";
3
+ import { module } from "../../module.js";
4
+ import { Empty } from "../../utils/empty.js";
5
+ const endWithSRegexp = /s$/;
6
+ export const openapi = {
7
+ addon(toJsonSchema, options) {
8
+ return function () {
9
+ const paths = new Empty();
10
+ const methods = Array.from(this.endpoints.keys());
11
+ for (let i = 0; i < methods.length; i++) {
12
+ const endpoints = this.endpoints.get(methods[i]);
13
+ for (let j = 0; j < endpoints.length; j++) {
14
+ const endpoint = endpoints[j];
15
+ const path = endpoint.path
16
+ .replace(/:(\w+)/g, "{$1}")
17
+ .replace(/\.{3}(\w+)/g, "{$1}");
18
+ const operation = new Empty();
19
+ for (let k = 0; k < endpoint.chain.length; k++) {
20
+ const link = endpoint.chain[k];
21
+ if (link.type !== "VALIDATOR") {
22
+ continue;
23
+ }
24
+ const keys = Object.keys(link.request);
25
+ for (let l = 0; l < keys.length; l++) {
26
+ const key = keys[l];
27
+ if (!link.request[key]) {
28
+ continue;
29
+ }
30
+ if (key !== "body") {
31
+ const _in = key.replace(endWithSRegexp, "");
32
+ const schema = toJsonSchema(link.request[key]);
33
+ operation.parameters ??= [];
34
+ if (schema.type === "object") {
35
+ const keys = Object.keys(schema.properties);
36
+ for (let m = 0; m < keys.length; m++) {
37
+ const property = schema.properties[keys[m]];
38
+ operation.parameters.push({
39
+ in: _in,
40
+ name: keys[m],
41
+ schema: property,
42
+ required: schema.required?.includes(keys[m]) ?? false,
43
+ });
44
+ }
45
+ continue;
46
+ }
47
+ operation.parameters.push({
48
+ in: _in,
49
+ schema,
50
+ });
51
+ continue;
52
+ }
53
+ operation.requestBody ??= {
54
+ content: new Empty(),
55
+ };
56
+ const contentType = [
57
+ "application/json",
58
+ "multipart/form-data",
59
+ "text/plain",
60
+ ];
61
+ for (let m = 0; m < contentType.length; m++) {
62
+ operation.requestBody
63
+ .content[contentType[m]] = {
64
+ schema: toJsonSchema(link.request[key]),
65
+ };
66
+ }
67
+ }
68
+ }
69
+ const params = endpoint.path.match(/(?::|\.{3})(\w+)\??/g);
70
+ if (params) {
71
+ for (let k = 0; k < params.length; k++) {
72
+ const param = params[k];
73
+ const name = param.replace(/^[:.]*/g, "").replace("?", "");
74
+ if (operation.parameters?.some((parameter) => parameter.in === "path" && parameter.name === name)) {
75
+ continue;
76
+ }
77
+ operation.parameters ??= [];
78
+ operation.parameters.push({
79
+ in: "path",
80
+ name,
81
+ required: !param.endsWith("?"),
82
+ schema: {
83
+ pattern: param.startsWith("...") ? ".*" : undefined,
84
+ type: "string",
85
+ },
86
+ });
87
+ }
88
+ }
89
+ paths[path] ??= {};
90
+ paths[path][methods[i].toLowerCase()] =
91
+ operation;
92
+ }
93
+ }
94
+ this.memory.set("openapi", {
95
+ paths,
96
+ info: {
97
+ title: options?.title ?? "Cudenix Documentation",
98
+ description: options?.description ?? "Cudenix Documentation",
99
+ version: options?.version ?? "1.0.0",
100
+ },
101
+ openapi: "3.1.0",
102
+ });
103
+ return "openapi";
104
+ };
105
+ },
106
+ module(options) {
107
+ const url = `${options?.path ?? "/openapi"}`;
108
+ return module()
109
+ .route("GET", url, ({ memory, response: { headers } }) => {
110
+ headers.set("content-type", "text/html");
111
+ return success(scalar("Cudenix Documentation", JSON.stringify(memory.get("openapi")), JSON.stringify({})));
112
+ })
113
+ .route("GET", `${url}/json`, ({ memory }) => {
114
+ return success(JSON.stringify(memory.get("openapi")));
115
+ });
116
+ },
117
+ };
118
+ //# sourceMappingURL=openapi.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"openapi.js","sourceRoot":"","sources":["../../../src/ecosystem/openapi/openapi.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare const scalar: (title: string, spec: string, configuration: string) => string;
2
+ //# sourceMappingURL=scalar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scalar.d.ts","sourceRoot":"","sources":["../../../src/ecosystem/openapi/scalar.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,MAAM,UAAW,MAAM,QAAQ,MAAM,iBAAiB,MAAM,WAsBxE,CAAC"}
@@ -0,0 +1,24 @@
1
+ export const scalar = (title, spec, configuration) => {
2
+ return `<!DOCTYPE html>
3
+ <html>
4
+ <head>
5
+ <title>${title}</title>
6
+
7
+ <meta charset="utf-8" />
8
+ <meta name="viewport" content="width=device-width, initial-scale=1" />
9
+ </head>
10
+
11
+ <body>
12
+ <script id="api-reference" type="application/json">
13
+ ${spec}
14
+ </script>
15
+
16
+ <script>
17
+ document.getElementById("api-reference").dataset.configuration = '${configuration}';
18
+ </script>
19
+
20
+ <script src="https://cdn.jsdelivr.net/npm/@scalar/api-reference"></script>
21
+ </body>
22
+ </html>`;
23
+ };
24
+ //# sourceMappingURL=scalar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scalar.js","sourceRoot":"","sources":["../../../src/ecosystem/openapi/scalar.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,KAAa,EAAE,IAAY,EAAE,aAAqB,EAAE,EAAE;IAC5E,OAAO;;;qBAGa,KAAK;;;;;;;;kBAQR,IAAI;;;;oFAI8D,aAAa;;;;;YAKrF,CAAC;AACb,CAAC,CAAC"}
package/dist/error.d.ts CHANGED
@@ -15,8 +15,8 @@ export interface Error<Content, Status extends number> {
15
15
  success: false;
16
16
  }
17
17
  export type AnyError = Error<any, any>;
18
- type Constructor = new (content: unknown, status: number) => AnyError;
18
+ type Constructor = new (content: unknown, status?: number) => AnyError;
19
19
  export declare const Error: Constructor;
20
- export declare const error: <const Content, const Status extends number>(content: Content, status: Status) => Error<Content, Status>;
20
+ export declare const error: <const Content, const Status extends number = 400>(content: Content, status?: Status) => Error<Content, Status>;
21
21
  export {};
22
22
  //# sourceMappingURL=error.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../src/error.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAE9C,MAAM,MAAM,WAAW,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;AAExD,MAAM,MAAM,WAAW,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;AAExD,MAAM,MAAM,cAAc,CAAC,KAAK,SAAS,QAAQ,IAAI;KACnD,GAAG,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,KAAK;CAC/B,CAAC;AAEF,MAAM,MAAM,WAAW,CAAC,MAAM,EAAE,KAAK,IAAI;KACvC,GAAG,IAAI,MAAM,MAAM,GAAG,MAAM,KAAK,GAAG,GAAG,SAAS,MAAM,MAAM,GAC1D,GAAG,SAAS,MAAM,KAAK,GACtB;SACC,IAAI,IACF,MAAM,MAAM,CAAC,GAAG,CAAC,GACjB,MAAM,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,SAAS,MAAM,MAAM,CAAC,GAAG,CAAC,GACjD,IAAI,SAAS,MAAM,KAAK,CAAC,GAAG,CAAC,GAC5B,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GACpC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAClB,IAAI,SAAS,MAAM,KAAK,CAAC,GAAG,CAAC,GAC5B,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAChB,KAAK;KACT,GACA,MAAM,CAAC,GAAG,CAAC,GACZ,GAAG,SAAS,MAAM,KAAK,GACtB,KAAK,CAAC,GAAG,CAAC,GACV,KAAK;CACT,CAAC;AAEF,MAAM,WAAW,KAAK,CAAC,OAAO,EAAE,MAAM,SAAS,MAAM;IACpD,OAAO,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,KAAK,CAAC;CACf;AAED,MAAM,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;AAEvC,KAAK,WAAW,GAAG,KAAK,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,KAAK,QAAQ,CAAC;AAEtE,eAAO,MAAM,KAAK,EAQF,WAAW,CAAC;AAE5B,eAAO,MAAM,KAAK,SAAU,OAAO,QAAQ,MAAM,SAAS,MAAM,WACtD,OAAO,UACR,MAAM,KACoB,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC"}
1
+ {"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../src/error.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAE9C,MAAM,MAAM,WAAW,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;AAExD,MAAM,MAAM,WAAW,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;AAExD,MAAM,MAAM,cAAc,CAAC,KAAK,SAAS,QAAQ,IAAI;KACnD,GAAG,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,KAAK;CAC/B,CAAC;AAEF,MAAM,MAAM,WAAW,CAAC,MAAM,EAAE,KAAK,IAAI;KACvC,GAAG,IAAI,MAAM,MAAM,GAAG,MAAM,KAAK,GAAG,GAAG,SAAS,MAAM,MAAM,GAC1D,GAAG,SAAS,MAAM,KAAK,GACtB;SACC,IAAI,IACF,MAAM,MAAM,CAAC,GAAG,CAAC,GACjB,MAAM,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,SAAS,MAAM,MAAM,CAAC,GAAG,CAAC,GACjD,IAAI,SAAS,MAAM,KAAK,CAAC,GAAG,CAAC,GAC5B,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GACpC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAClB,IAAI,SAAS,MAAM,KAAK,CAAC,GAAG,CAAC,GAC5B,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAChB,KAAK;KACT,GACA,MAAM,CAAC,GAAG,CAAC,GACZ,GAAG,SAAS,MAAM,KAAK,GACtB,KAAK,CAAC,GAAG,CAAC,GACV,KAAK;CACT,CAAC;AAEF,MAAM,WAAW,KAAK,CAAC,OAAO,EAAE,MAAM,SAAS,MAAM;IACpD,OAAO,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,KAAK,CAAC;CACf;AAED,MAAM,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;AAEvC,KAAK,WAAW,GAAG,KAAK,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,MAAM,KAAK,QAAQ,CAAC;AAEvE,eAAO,MAAM,KAAK,EAIF,WAAW,CAAC;AAE5B,eAAO,MAAM,KAAK,SAAU,OAAO,QAAQ,MAAM,SAAS,MAAM,iBACtD,OAAO,WACP,MAAM,KACmB,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC"}
package/dist/error.js CHANGED
@@ -1,4 +1,4 @@
1
- export const Error = function (content, status) {
1
+ export const Error = function (content, status = 400) {
2
2
  this.content = content;
3
3
  this.status = status;
4
4
  this.success = false;
package/dist/error.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"error.js","sourceRoot":"","sources":["../src/error.ts"],"names":[],"mappings":"AAwCA,MAAM,CAAC,MAAM,KAAK,GAAG,UAEpB,OAAgB,EAChB,MAAc;IAEd,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACvB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACrB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;AACtB,CAA2B,CAAC;AAE5B,MAAM,CAAC,MAAM,KAAK,GAAG,CACpB,OAAgB,EAChB,MAAc,EACb,EAAE,CAAC,IAAI,KAAK,CAAC,OAAO,EAAE,MAAM,CAA2B,CAAC"}
1
+ {"version":3,"file":"error.js","sourceRoot":"","sources":["../src/error.ts"],"names":[],"mappings":"AAwCA,MAAM,CAAC,MAAM,KAAK,GAAG,UAA0B,OAAgB,EAAE,MAAM,GAAG,GAAG;IAC5E,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACvB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACrB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;AACtB,CAA2B,CAAC;AAE5B,MAAM,CAAC,MAAM,KAAK,GAAG,CACpB,OAAgB,EAChB,MAAe,EACd,EAAE,CAAC,IAAI,KAAK,CAAC,OAAO,EAAE,MAAM,CAA2B,CAAC"}
package/dist/success.d.ts CHANGED
@@ -14,8 +14,8 @@ export interface Success<Content, Status extends number> {
14
14
  success: true;
15
15
  }
16
16
  export type AnySuccess = Success<any, any>;
17
- type Constructor = new (content: unknown, status: number) => AnySuccess;
17
+ type Constructor = new (content: unknown, status?: number) => AnySuccess;
18
18
  export declare const Success: Constructor;
19
- export declare const success: <const Content, const Status extends number>(content: Content, status: Status) => Success<Content, Status>;
19
+ export declare const success: <const Content, const Status extends number = 200>(content: Content, status?: Status) => Success<Content, Status>;
20
20
  export {};
21
21
  //# sourceMappingURL=success.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"success.d.ts","sourceRoot":"","sources":["../src/success.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAE9C,MAAM,MAAM,aAAa,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;AAE5D,MAAM,MAAM,gBAAgB,CAAC,OAAO,SAAS,UAAU,IAAI;KACzD,GAAG,IAAI,OAAO,CAAC,QAAQ,CAAC,GAAG,OAAO;CACnC,CAAC;AAEF,MAAM,MAAM,cAAc,CAAC,SAAS,EAAE,OAAO,IAAI;KAC/C,GAAG,IAAI,MAAM,SAAS,GAAG,MAAM,OAAO,GAAG,GAAG,SAAS,MAAM,SAAS,GAClE,GAAG,SAAS,MAAM,OAAO,GACxB;SACC,IAAI,IACF,MAAM,SAAS,CAAC,GAAG,CAAC,GACpB,MAAM,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI,SAAS,MAAM,SAAS,CAAC,GAAG,CAAC,GACtD,IAAI,SAAS,MAAM,OAAO,CAAC,GAAG,CAAC,GAC9B,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GACzC,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GACrB,IAAI,SAAS,MAAM,OAAO,CAAC,GAAG,CAAC,GAC9B,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAClB,KAAK;KACT,GACA,SAAS,CAAC,GAAG,CAAC,GACf,GAAG,SAAS,MAAM,OAAO,GACxB,OAAO,CAAC,GAAG,CAAC,GACZ,KAAK;CACT,CAAC;AAEF,MAAM,WAAW,OAAO,CAAC,OAAO,EAAE,MAAM,SAAS,MAAM;IACtD,OAAO,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,IAAI,CAAC;CACd;AAED,MAAM,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;AAE3C,KAAK,WAAW,GAAG,KAAK,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,KAAK,UAAU,CAAC;AAExE,eAAO,MAAM,OAAO,EAQJ,WAAW,CAAC;AAE5B,eAAO,MAAM,OAAO,SAAU,OAAO,QAAQ,MAAM,SAAS,MAAM,WACxD,OAAO,UACR,MAAM,KACsB,OAAO,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC"}
1
+ {"version":3,"file":"success.d.ts","sourceRoot":"","sources":["../src/success.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAE9C,MAAM,MAAM,aAAa,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;AAE5D,MAAM,MAAM,gBAAgB,CAAC,OAAO,SAAS,UAAU,IAAI;KACzD,GAAG,IAAI,OAAO,CAAC,QAAQ,CAAC,GAAG,OAAO;CACnC,CAAC;AAEF,MAAM,MAAM,cAAc,CAAC,SAAS,EAAE,OAAO,IAAI;KAC/C,GAAG,IAAI,MAAM,SAAS,GAAG,MAAM,OAAO,GAAG,GAAG,SAAS,MAAM,SAAS,GAClE,GAAG,SAAS,MAAM,OAAO,GACxB;SACC,IAAI,IACF,MAAM,SAAS,CAAC,GAAG,CAAC,GACpB,MAAM,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI,SAAS,MAAM,SAAS,CAAC,GAAG,CAAC,GACtD,IAAI,SAAS,MAAM,OAAO,CAAC,GAAG,CAAC,GAC9B,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GACzC,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GACrB,IAAI,SAAS,MAAM,OAAO,CAAC,GAAG,CAAC,GAC9B,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAClB,KAAK;KACT,GACA,SAAS,CAAC,GAAG,CAAC,GACf,GAAG,SAAS,MAAM,OAAO,GACxB,OAAO,CAAC,GAAG,CAAC,GACZ,KAAK;CACT,CAAC;AAEF,MAAM,WAAW,OAAO,CAAC,OAAO,EAAE,MAAM,SAAS,MAAM;IACtD,OAAO,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,IAAI,CAAC;CACd;AAED,MAAM,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;AAE3C,KAAK,WAAW,GAAG,KAAK,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,MAAM,KAAK,UAAU,CAAC;AAEzE,eAAO,MAAM,OAAO,EAQJ,WAAW,CAAC;AAE5B,eAAO,MAAM,OAAO,SAAU,OAAO,QAAQ,MAAM,SAAS,MAAM,iBACxD,OAAO,WACP,MAAM,KACqB,OAAO,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC"}
package/dist/success.js CHANGED
@@ -1,4 +1,4 @@
1
- export const Success = function (content, status) {
1
+ export const Success = function (content, status = 200) {
2
2
  this.content = content;
3
3
  this.status = status;
4
4
  this.success = true;
@@ -1 +1 @@
1
- {"version":3,"file":"success.js","sourceRoot":"","sources":["../src/success.ts"],"names":[],"mappings":"AAsCA,MAAM,CAAC,MAAM,OAAO,GAAG,UAEtB,OAAgB,EAChB,MAAc;IAEd,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACvB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACrB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;AACrB,CAA2B,CAAC;AAE5B,MAAM,CAAC,MAAM,OAAO,GAAG,CACtB,OAAgB,EAChB,MAAc,EACb,EAAE,CAAC,IAAI,OAAO,CAAC,OAAO,EAAE,MAAM,CAA6B,CAAC"}
1
+ {"version":3,"file":"success.js","sourceRoot":"","sources":["../src/success.ts"],"names":[],"mappings":"AAsCA,MAAM,CAAC,MAAM,OAAO,GAAG,UAEtB,OAAgB,EAChB,MAAM,GAAG,GAAG;IAEZ,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACvB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACrB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;AACrB,CAA2B,CAAC;AAE5B,MAAM,CAAC,MAAM,OAAO,GAAG,CACtB,OAAgB,EAChB,MAAe,EACd,EAAE,CAAC,IAAI,OAAO,CAAC,OAAO,EAAE,MAAM,CAA6B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"regexp.d.ts","sourceRoot":"","sources":["../../src/utils/regexp.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,0BAA0B,QAAQ,CAAC;AAChD,eAAO,MAAM,iBAAiB,QAA2B,CAAC;AAC1D,eAAO,MAAM,qBAAqB,QAAO,CAAC;AAC1C,eAAO,MAAM,wBAAwB,QAAW,CAAC;AACjD,eAAO,MAAM,oBAAoB,QAAqC,CAAC;AACvE,eAAO,MAAM,uBAAuB,QAA2C,CAAC;AAChF,eAAO,MAAM,uBAAuB,QAA2C,CAAC;AAChF,eAAO,MAAM,sBAAsB,QAAyC,CAAC;AAC7E,eAAO,MAAM,qBAAqB,QAAuC,CAAC;AAE1E,eAAO,MAAM,YAAY,SAAU,MAAM,yCAsCxC,CAAC"}
1
+ {"version":3,"file":"regexp.d.ts","sourceRoot":"","sources":["../../src/utils/regexp.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,0BAA0B,QAAQ,CAAC;AAChD,eAAO,MAAM,iBAAiB,QAA2B,CAAC;AAC1D,eAAO,MAAM,qBAAqB,QAAO,CAAC;AAC1C,eAAO,MAAM,wBAAwB,QAAW,CAAC;AACjD,eAAO,MAAM,oBAAoB,QAAc,CAAC;AAChD,eAAO,MAAM,uBAAuB,QAAiB,CAAC;AACtD,eAAO,MAAM,uBAAuB,QAAiB,CAAC;AACtD,eAAO,MAAM,sBAAsB,QAAgB,CAAC;AACpD,eAAO,MAAM,qBAAqB,QAAe,CAAC;AAElD,eAAO,MAAM,YAAY,SAAU,MAAM,yCAsCxC,CAAC"}
@@ -2,11 +2,11 @@ export const endsWithQuestionMarkRegexp = /\?$/;
2
2
  export const getUrlQueryRegexp = /[?&]([^=#]+)=([^&#]*)/g;
3
3
  export const startsWithColonRegexp = /^:/;
4
4
  export const startsWithEllipsisRegexp = /^\.{3}/;
5
- export const useContextBodyRegexp = /\{[^}]*\bbody\b[^}]*\}|\.body\b/m;
6
- export const useContextCookiesRegexp = /\{[^}]*\bcookies\b[^}]*\}|\.cookies\b/m;
7
- export const useContextHeadersRegexp = /\{[^}]*\bheaders\b[^}]*\}|\.headers\b/m;
8
- export const useContextParamsRegexp = /\{[^}]*\bparams\b[^}]*\}|\.params\b/m;
9
- export const useContextQueryRegexp = /\{[^}]*\bquery\b[^}]*\}|\.query\b/m;
5
+ export const useContextBodyRegexp = /\bbody\b/m;
6
+ export const useContextCookiesRegexp = /\bcookies\b/m;
7
+ export const useContextHeadersRegexp = /\bheaders\b/m;
8
+ export const useContextParamsRegexp = /\bparams\b/m;
9
+ export const useContextQueryRegexp = /\bquery\b/m;
10
10
  export const pathToRegexp = (path, captureParamGroups = false) => {
11
11
  let pattern = "()";
12
12
  if (path === "/") {
@@ -1 +1 @@
1
- {"version":3,"file":"regexp.js","sourceRoot":"","sources":["../../src/utils/regexp.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,0BAA0B,GAAG,KAAK,CAAC;AAChD,MAAM,CAAC,MAAM,iBAAiB,GAAG,wBAAwB,CAAC;AAC1D,MAAM,CAAC,MAAM,qBAAqB,GAAG,IAAI,CAAC;AAC1C,MAAM,CAAC,MAAM,wBAAwB,GAAG,QAAQ,CAAC;AACjD,MAAM,CAAC,MAAM,oBAAoB,GAAG,kCAAkC,CAAC;AACvE,MAAM,CAAC,MAAM,uBAAuB,GAAG,wCAAwC,CAAC;AAChF,MAAM,CAAC,MAAM,uBAAuB,GAAG,wCAAwC,CAAC;AAChF,MAAM,CAAC,MAAM,sBAAsB,GAAG,sCAAsC,CAAC;AAC7E,MAAM,CAAC,MAAM,qBAAqB,GAAG,oCAAoC,CAAC;AAE1E,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,IAAY,EAAE,kBAAkB,GAAG,KAAK,EAAE,EAAE;IACxE,IAAI,OAAO,GAAG,IAAI,CAAC;IAEnB,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;QAClB,OAAO,GAAG,OAAO,KAAK,CAAC;IACxB,CAAC;IAED,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAEjC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC1C,IAAI,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QAE1B,IAAI,CAAC,OAAO,EAAE,CAAC;YACd,SAAS;QACV,CAAC;QAED,MAAM,UAAU,GAAG,0BAA0B,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAE5D,IAAI,UAAU,EAAE,CAAC;YAChB,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAChC,CAAC;QAED,IAAI,qBAAqB,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YACzC,OAAO,GAAG,MAAM,kBAAkB,CAAC,CAAC,CAAC,MAAM,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,aAAa,kBAAkB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QACjH,CAAC;aAAM,IAAI,wBAAwB,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YACnD,OAAO,GAAG,MAAM,kBAAkB,CAAC,CAAC,CAAC,MAAM,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,iCAAiC,kBAAkB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QACrI,CAAC;aAAM,CAAC;YACP,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;QACzB,CAAC;QAED,IAAI,UAAU,EAAE,CAAC;YAChB,OAAO,GAAG,MAAM,OAAO,IAAI,CAAC;QAC7B,CAAC;QAED,OAAO,GAAG,GAAG,OAAO,GAAG,OAAO,EAAE,CAAC;IAClC,CAAC;IAED,OAAO,OAAO,CAAC;AAChB,CAAC,CAAC"}
1
+ {"version":3,"file":"regexp.js","sourceRoot":"","sources":["../../src/utils/regexp.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,0BAA0B,GAAG,KAAK,CAAC;AAChD,MAAM,CAAC,MAAM,iBAAiB,GAAG,wBAAwB,CAAC;AAC1D,MAAM,CAAC,MAAM,qBAAqB,GAAG,IAAI,CAAC;AAC1C,MAAM,CAAC,MAAM,wBAAwB,GAAG,QAAQ,CAAC;AACjD,MAAM,CAAC,MAAM,oBAAoB,GAAG,WAAW,CAAC;AAChD,MAAM,CAAC,MAAM,uBAAuB,GAAG,cAAc,CAAC;AACtD,MAAM,CAAC,MAAM,uBAAuB,GAAG,cAAc,CAAC;AACtD,MAAM,CAAC,MAAM,sBAAsB,GAAG,aAAa,CAAC;AACpD,MAAM,CAAC,MAAM,qBAAqB,GAAG,YAAY,CAAC;AAElD,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,IAAY,EAAE,kBAAkB,GAAG,KAAK,EAAE,EAAE;IACxE,IAAI,OAAO,GAAG,IAAI,CAAC;IAEnB,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;QAClB,OAAO,GAAG,OAAO,KAAK,CAAC;IACxB,CAAC;IAED,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAEjC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC1C,IAAI,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QAE1B,IAAI,CAAC,OAAO,EAAE,CAAC;YACd,SAAS;QACV,CAAC;QAED,MAAM,UAAU,GAAG,0BAA0B,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAE5D,IAAI,UAAU,EAAE,CAAC;YAChB,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAChC,CAAC;QAED,IAAI,qBAAqB,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YACzC,OAAO,GAAG,MAAM,kBAAkB,CAAC,CAAC,CAAC,MAAM,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,aAAa,kBAAkB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QACjH,CAAC;aAAM,IAAI,wBAAwB,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YACnD,OAAO,GAAG,MAAM,kBAAkB,CAAC,CAAC,CAAC,MAAM,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,iCAAiC,kBAAkB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QACrI,CAAC;aAAM,CAAC;YACP,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;QACzB,CAAC;QAED,IAAI,UAAU,EAAE,CAAC;YAChB,OAAO,GAAG,MAAM,OAAO,IAAI,CAAC;QAC7B,CAAC;QAED,OAAO,GAAG,GAAG,OAAO,GAAG,OAAO,EAAE,CAAC;IAClC,CAAC;IAED,OAAO,OAAO,CAAC;AAChB,CAAC,CAAC"}
@@ -2,7 +2,7 @@ import type { App } from "./app.js";
2
2
  import type { Error } from "./error.js";
3
3
  import type { ConditionallyOmit, ExtendsType, MaybePromise } from "./types/index.js";
4
4
  import type { InferValidatorError, InferValidatorInput, InferValidatorOutput } from "@cudenix/cudenix";
5
- export type ValidatorConfigValidator = (schema: any, input: unknown, type: keyof ValidatorRequest) => MaybePromise<{
5
+ export type ValidatorAddon = (schema: any, input: unknown, type: keyof ValidatorRequest) => MaybePromise<{
6
6
  content: unknown;
7
7
  success: boolean;
8
8
  }>;
@@ -52,6 +52,6 @@ export type AnyValidatorOptions = ValidatorOptions<any>;
52
52
  type Constructor = new (options: AnyValidatorOptions) => AnyValidator;
53
53
  export declare const Validator: Constructor;
54
54
  export declare const validator: <const Request extends Partial<ValidatorRequest>>(options: ValidatorOptions<Request>) => Validator<Request>;
55
- export declare function validatorConfig(validator: ValidatorConfigValidator): (this: App) => void;
55
+ export declare function validatorAddon(validator: ValidatorAddon): (this: App) => string;
56
56
  export {};
57
57
  //# sourceMappingURL=validator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"validator.d.ts","sourceRoot":"","sources":["../src/validator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validator.d.ts","sourceRoot":"","sources":["../src/validator.ts"],"names":[],"mappings":"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"}
package/dist/validator.js CHANGED
@@ -3,9 +3,10 @@ export const Validator = function ({ request }) {
3
3
  this.type = "VALIDATOR";
4
4
  };
5
5
  export const validator = (options) => new Validator(options);
6
- export function validatorConfig(validator) {
6
+ export function validatorAddon(validator) {
7
7
  return function () {
8
8
  this.memory.set("validator", validator);
9
+ return "validator";
9
10
  };
10
11
  }
11
12
  //# sourceMappingURL=validator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"validator.js","sourceRoot":"","sources":["../src/validator.ts"],"names":[],"mappings":"AAuFA,MAAM,CAAC,MAAM,SAAS,GAAG,UAExB,EAAE,OAAO,EAAuB;IAEhC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACvB,IAAI,CAAC,IAAI,GAAG,WAAW,CAAC;AACzB,CAA2B,CAAC;AAE5B,MAAM,CAAC,MAAM,SAAS,GAAG,CACxB,OAAkC,EACjC,EAAE,CAAC,IAAI,SAAS,CAAC,OAAO,CAAuB,CAAC;AAElD,MAAM,UAAU,eAAe,CAAC,SAAmC;IAClE,OAAO;QACN,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;IACzC,CAAC,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"validator.js","sourceRoot":"","sources":["../src/validator.ts"],"names":[],"mappings":"AAuFA,MAAM,CAAC,MAAM,SAAS,GAAG,UAExB,EAAE,OAAO,EAAuB;IAEhC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACvB,IAAI,CAAC,IAAI,GAAG,WAAW,CAAC;AACzB,CAA2B,CAAC;AAE5B,MAAM,CAAC,MAAM,SAAS,GAAG,CACxB,OAAkC,EACjC,EAAE,CAAC,IAAI,SAAS,CAAC,OAAO,CAAuB,CAAC;AAElD,MAAM,UAAU,cAAc,CAAC,SAAyB;IACvD,OAAO;QACN,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;QAExC,OAAO,WAAW,CAAC;IACpB,CAAC,CAAC;AACH,CAAC"}
package/package.json CHANGED
@@ -25,6 +25,10 @@
25
25
  "types": "./dist/ecosystem/cluster/index.d.ts",
26
26
  "import": "./dist/ecosystem/cluster/index.js"
27
27
  },
28
+ "./cors": {
29
+ "types": "./dist/ecosystem/cors/index.d.ts",
30
+ "import": "./dist/ecosystem/cors/index.js"
31
+ },
28
32
  "./events": {
29
33
  "types": "./dist/ecosystem/events/index.d.ts",
30
34
  "import": "./dist/ecosystem/events/index.js"
@@ -32,6 +36,10 @@
32
36
  "./i18n": {
33
37
  "types": "./dist/ecosystem/i18n/index.d.ts",
34
38
  "import": "./dist/ecosystem/i18n/index.js"
39
+ },
40
+ "./openapi": {
41
+ "types": "./dist/ecosystem/openapi/index.d.ts",
42
+ "import": "./dist/ecosystem/openapi/index.js"
35
43
  }
36
44
  },
37
45
  "files": ["dist"],
@@ -71,5 +79,5 @@
71
79
  "sideEffects": false,
72
80
  "type": "module",
73
81
  "types": "dist/index.d.ts",
74
- "version": "0.0.2"
82
+ "version": "0.0.4"
75
83
  }