arkos 1.3.6-canary.2 → 1.3.7-beta

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 (59) hide show
  1. package/dist/cjs/app.js +1 -1
  2. package/dist/cjs/app.js.map +1 -1
  3. package/dist/cjs/modules/auth/auth.controller.js +1 -17
  4. package/dist/cjs/modules/auth/auth.controller.js.map +1 -1
  5. package/dist/cjs/modules/auth/auth.service.js +27 -0
  6. package/dist/cjs/modules/auth/auth.service.js.map +1 -1
  7. package/dist/cjs/modules/base/base.middlewares.js.map +1 -1
  8. package/dist/cjs/modules/base/utils/helpers/base.service.helpers.js +22 -6
  9. package/dist/cjs/modules/base/utils/helpers/base.service.helpers.js.map +1 -1
  10. package/dist/cjs/modules/debugger/debugger.service.js +11 -4
  11. package/dist/cjs/modules/debugger/debugger.service.js.map +1 -1
  12. package/dist/cjs/modules/error-handler/error-handler.controller.js +6 -1
  13. package/dist/cjs/modules/error-handler/error-handler.controller.js.map +1 -1
  14. package/dist/cjs/modules/file-upload/file-upload.router.js +2 -2
  15. package/dist/cjs/modules/file-upload/file-upload.router.js.map +1 -1
  16. package/dist/cjs/modules/file-upload/file-upload.service.js +27 -26
  17. package/dist/cjs/modules/file-upload/file-upload.service.js.map +1 -1
  18. package/dist/cjs/modules/swagger/swagger.router.js +6 -2
  19. package/dist/cjs/modules/swagger/swagger.router.js.map +1 -1
  20. package/dist/cjs/modules/swagger/utils/helpers/get-authentication-json-schema-paths.js +1 -1
  21. package/dist/cjs/modules/swagger/utils/helpers/get-authentication-json-schema-paths.js.map +1 -1
  22. package/dist/cjs/modules/swagger/utils/helpers/get-file-upload-json-schema-paths.js +419 -0
  23. package/dist/cjs/modules/swagger/utils/helpers/get-file-upload-json-schema-paths.js.map +1 -0
  24. package/dist/cjs/utils/cli/start.js +3 -2
  25. package/dist/cjs/utils/cli/start.js.map +1 -1
  26. package/dist/cjs/utils/cli/utils/cli.helpers.js +1 -1
  27. package/dist/cjs/utils/dotenv.helpers.js.map +1 -1
  28. package/dist/esm/app.js +1 -1
  29. package/dist/esm/app.js.map +1 -1
  30. package/dist/esm/modules/auth/auth.controller.js +2 -18
  31. package/dist/esm/modules/auth/auth.controller.js.map +1 -1
  32. package/dist/esm/modules/auth/auth.service.js +27 -0
  33. package/dist/esm/modules/auth/auth.service.js.map +1 -1
  34. package/dist/esm/modules/base/base.middlewares.js.map +1 -1
  35. package/dist/esm/modules/base/utils/helpers/base.service.helpers.js +22 -6
  36. package/dist/esm/modules/base/utils/helpers/base.service.helpers.js.map +1 -1
  37. package/dist/esm/modules/debugger/debugger.service.js +11 -4
  38. package/dist/esm/modules/debugger/debugger.service.js.map +1 -1
  39. package/dist/esm/modules/error-handler/error-handler.controller.js +6 -1
  40. package/dist/esm/modules/error-handler/error-handler.controller.js.map +1 -1
  41. package/dist/esm/modules/file-upload/file-upload.router.js +2 -2
  42. package/dist/esm/modules/file-upload/file-upload.router.js.map +1 -1
  43. package/dist/esm/modules/file-upload/file-upload.service.js +26 -25
  44. package/dist/esm/modules/file-upload/file-upload.service.js.map +1 -1
  45. package/dist/esm/modules/swagger/swagger.router.js +6 -2
  46. package/dist/esm/modules/swagger/swagger.router.js.map +1 -1
  47. package/dist/esm/modules/swagger/utils/helpers/get-authentication-json-schema-paths.js +1 -1
  48. package/dist/esm/modules/swagger/utils/helpers/get-authentication-json-schema-paths.js.map +1 -1
  49. package/dist/esm/modules/swagger/utils/helpers/get-file-upload-json-schema-paths.js +413 -0
  50. package/dist/esm/modules/swagger/utils/helpers/get-file-upload-json-schema-paths.js.map +1 -0
  51. package/dist/esm/utils/cli/start.js +3 -2
  52. package/dist/esm/utils/cli/start.js.map +1 -1
  53. package/dist/esm/utils/cli/utils/cli.helpers.js +1 -1
  54. package/dist/esm/utils/dotenv.helpers.js.map +1 -1
  55. package/dist/types/modules/auth/auth.service.d.ts +6 -0
  56. package/dist/types/modules/debugger/debugger.service.d.ts +1 -1
  57. package/dist/types/modules/file-upload/file-upload.service.d.ts +22 -0
  58. package/dist/types/modules/swagger/utils/helpers/get-file-upload-json-schema-paths.d.ts +3 -0
  59. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"dotenv.helpers.js","sourceRoot":"","sources":["../../../src/utils/dotenv.helpers.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,MAAM,MAAM,QAAQ,CAAC;AAW5B,MAAM,UAAU,wBAAwB;IACtC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;IACjC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1B,IAAI,UAAU,GAAa,EAAE,CAAC;IAG9B,MAAM,QAAQ,GAAG;QACf,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,eAAe,CAAC;QAClC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,QAAQ,GAAG,EAAE,CAAC;QAChC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,QAAQ,GAAG,QAAQ,CAAC;QACtC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,YAAY,CAAC;QAC/B,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC;KAC1B,CAAC;IAGF,QAAQ,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;QAC5B,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5B,IAAI,GAAG,KAAK,YAAY,IAAI,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC;gBACrD,OAAO,CAAC,IAAI,CACV,sBAAsB,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,sBAAsB,CACtE,CAAC;iBACC,CAAC;gBACJ,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;gBAEjE,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;oBACjB,OAAO,CAAC,IAAI,CAAC,0BAA0B,QAAQ,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;gBACnE,CAAC;;oBAAM,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACnC,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC;IAGH,MAAM,YAAY,GAAG,CAAC,cAAc,CAAC,CAAC;IACtC,MAAM,WAAW,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;IAE5E,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3B,OAAO,CAAC,KAAK,CACX,yCAAyC,EACzC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CACvB,CAAC;IAGJ,CAAC;IAED,IAAI,UAAU;QAAE,OAAO,UAAU,CAAC;AACpC,CAAC","sourcesContent":["import path from \"path\";\nimport fs from \"fs\";\nimport dotenv from \"dotenv\";\n\n/**\n * Loads environment variables in a prioritized order\n * 1. Base defaults (.env.defaults) - lowest priority\n * 2. Environment-specific (.env.{NODE_ENV})\n * 3. Environment-specific local (.env.{NODE_ENV}.local)\n * 4. Local environment overrides (.env.local)\n * 5. Main .env file (.env)\n * 6. Process environment variables - highest priority (already loaded by Node)\n */\nexport function loadEnvironmentVariables() {\n const ENV = process.env.NODE_ENV;\n const cwd = process.cwd();\n let loadedEnvs: string[] = [];\n\n // Define files in order of increasing priority\n const envFiles = [\n path.resolve(cwd, `.env.defaults`),\n path.resolve(cwd, `.env.${ENV}`),\n path.resolve(cwd, `.env.${ENV}.local`), // Environment-specific local overrides\n path.resolve(cwd, \".env.local\"),\n path.resolve(cwd, \".env\"),\n ];\n\n // Load each file if it exists\n envFiles.forEach((filePath) => {\n if (fs.existsSync(filePath)) {\n if (ENV === \"production\" && filePath.endsWith(\".local\"))\n console.info(\n `Skipping the local ${filePath.replace(cwd, \"\")} files in production`\n );\n else {\n const result = dotenv.config({ path: filePath, override: true });\n\n if (result.error) {\n console.warn(`Warning: Error loading ${filePath}`, result.error);\n } else loadedEnvs.push(filePath);\n }\n }\n });\n\n // Validate required environment variables if needed\n const requiredVars = [\"DATABASE_URL\"]; // Add your required vars\n const missingVars = requiredVars.filter((varName) => !process.env[varName]);\n\n if (missingVars.length > 0) {\n console.error(\n \"Missing required environment variables:\",\n missingVars.join(\", \")\n );\n // Optionally throw an error based on your framework's needs\n // throw new Error(`Missing required environment variables: ${missingVars.join(', ')}`);\n }\n\n if (loadedEnvs) return loadedEnvs;\n}\n"]}
1
+ {"version":3,"file":"dotenv.helpers.js","sourceRoot":"","sources":["../../../src/utils/dotenv.helpers.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,MAAM,MAAM,QAAQ,CAAC;AAW5B,MAAM,UAAU,wBAAwB;IACtC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;IACjC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1B,IAAI,UAAU,GAAa,EAAE,CAAC;IAE9B,MAAM,QAAQ,GAAG;QACf,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,eAAe,CAAC;QAClC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,QAAQ,GAAG,EAAE,CAAC;QAChC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,QAAQ,GAAG,QAAQ,CAAC;QACtC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,YAAY,CAAC;QAC/B,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC;KAC1B,CAAC;IAEF,QAAQ,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;QAC5B,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5B,IAAI,GAAG,KAAK,YAAY,IAAI,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC;gBACrD,OAAO,CAAC,IAAI,CACV,sBAAsB,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,sBAAsB,CACtE,CAAC;iBACC,CAAC;gBACJ,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;gBAEjE,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;oBACjB,OAAO,CAAC,IAAI,CAAC,0BAA0B,QAAQ,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;gBACnE,CAAC;;oBAAM,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACnC,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,MAAM,YAAY,GAAG,CAAC,cAAc,CAAC,CAAC;IACtC,MAAM,WAAW,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;IAE5E,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3B,OAAO,CAAC,KAAK,CACX,yCAAyC,EACzC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CACvB,CAAC;IAEJ,CAAC;IAED,IAAI,UAAU;QAAE,OAAO,UAAU,CAAC;AACpC,CAAC","sourcesContent":["import path from \"path\";\nimport fs from \"fs\";\nimport dotenv from \"dotenv\";\n\n/**\n * Loads environment variables in a prioritized order\n * 1. Base defaults (.env.defaults) - lowest priority\n * 2. Environment-specific (.env.{NODE_ENV})\n * 3. Environment-specific local (.env.{NODE_ENV}.local)\n * 4. Local environment overrides (.env.local)\n * 5. Main .env file (.env)\n * 6. Process environment variables - highest priority (already loaded by Node)\n */\nexport function loadEnvironmentVariables() {\n const ENV = process.env.NODE_ENV;\n const cwd = process.cwd();\n let loadedEnvs: string[] = [];\n\n const envFiles = [\n path.resolve(cwd, `.env.defaults`),\n path.resolve(cwd, `.env.${ENV}`),\n path.resolve(cwd, `.env.${ENV}.local`),\n path.resolve(cwd, \".env.local\"),\n path.resolve(cwd, \".env\"),\n ];\n\n envFiles.forEach((filePath) => {\n if (fs.existsSync(filePath)) {\n if (ENV === \"production\" && filePath.endsWith(\".local\"))\n console.info(\n `Skipping the local ${filePath.replace(cwd, \"\")} files in production`\n );\n else {\n const result = dotenv.config({ path: filePath, override: true });\n\n if (result.error) {\n console.warn(`Warning: Error loading ${filePath}`, result.error);\n } else loadedEnvs.push(filePath);\n }\n }\n });\n\n const requiredVars = [\"DATABASE_URL\"];\n const missingVars = requiredVars.filter((varName) => !process.env[varName]);\n\n if (missingVars.length > 0) {\n console.error(\n \"Missing required environment variables:\",\n missingVars.join(\", \")\n );\n // throw new Error(`Missing required environment variables: ${missingVars.join(', ')}`);\n }\n\n if (loadedEnvs) return loadedEnvs;\n}\n"]}
@@ -5,6 +5,12 @@ import { MsDuration } from "./utils/helpers/auth.controller.helpers";
5
5
  export declare class AuthService {
6
6
  actionsPerResource: Record<string, Set<string>>;
7
7
  signJwtToken(id: number | string, expiresIn?: MsDuration | number, secret?: string): string;
8
+ getJwtCookieOptions(req: ArkosRequest): {
9
+ expires: Date;
10
+ httpOnly: boolean;
11
+ secure: boolean;
12
+ sameSite: "lax" | "strict" | "none";
13
+ };
8
14
  isPasswordHashed(password: string): boolean;
9
15
  isCorrectPassword(candidatePassword: string, userPassword: string): Promise<boolean>;
10
16
  hashPassword(password: string): Promise<string>;
@@ -9,7 +9,7 @@ declare class DebuggerService {
9
9
  components: ModuleComponents;
10
10
  }[]): void;
11
11
  handleTransformedQueryLog(transformedQuery: Record<string, any>): void;
12
- logLevel2RequestInfo(req: ArkosRequest, _: ArkosResponse, next: ArkosNextFunction): void;
12
+ logRequestInfo(req: ArkosRequest, _: ArkosResponse, next: ArkosNextFunction): void;
13
13
  }
14
14
  declare const debuggerService: DebuggerService;
15
15
  export default debuggerService;
@@ -28,3 +28,25 @@ export declare const getFileUploadServices: () => {
28
28
  documentUploadService: FileUploadService;
29
29
  fileUploadService: FileUploadService;
30
30
  };
31
+ export declare const fileUploadDefaultRestrictions: {
32
+ images: {
33
+ maxCount: number;
34
+ maxSize: number;
35
+ supportedFilesRegex: RegExp;
36
+ };
37
+ videos: {
38
+ maxCount: number;
39
+ maxSize: number;
40
+ supportedFilesRegex: RegExp;
41
+ };
42
+ documents: {
43
+ maxCount: number;
44
+ maxSize: number;
45
+ supportedFilesRegex: RegExp;
46
+ };
47
+ files: {
48
+ maxCount: number;
49
+ maxSize: number;
50
+ supportedFilesRegex: RegExp;
51
+ };
52
+ };
@@ -0,0 +1,3 @@
1
+ import { OpenAPIV3 } from "openapi-types";
2
+ import { ArkosConfig } from "../../../../exports";
3
+ export default function getFileUploadJsonSchemaPaths(arkosConfig: ArkosConfig): OpenAPIV3.PathsObject<{}, {}>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "arkos",
3
- "version": "1.3.6-canary.2",
3
+ "version": "1.3.7-beta",
4
4
  "description": "The Express & Prisma RESTful Framework",
5
5
  "main": "dist/cjs/exports/index.js",
6
6
  "module": "dist/esm/exports/index.js",