arkos 1.4.0-canary.92 → 1.4.1-canary.2

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 (151) hide show
  1. package/dist/cjs/app.js +1 -1
  2. package/dist/cjs/app.js.map +1 -1
  3. package/dist/cjs/exports/index.js.map +1 -1
  4. package/dist/cjs/modules/auth/auth.controller.js +1 -1
  5. package/dist/cjs/modules/auth/auth.controller.js.map +1 -1
  6. package/dist/cjs/modules/auth/auth.service.js +2 -3
  7. package/dist/cjs/modules/auth/auth.service.js.map +1 -1
  8. package/dist/cjs/modules/auth/utils/services/auth-action.service.js +50 -8
  9. package/dist/cjs/modules/auth/utils/services/auth-action.service.js.map +1 -1
  10. package/dist/cjs/modules/base/base.controller.js +6 -3
  11. package/dist/cjs/modules/base/base.controller.js.map +1 -1
  12. package/dist/cjs/modules/base/base.middlewares.js +8 -4
  13. package/dist/cjs/modules/base/base.middlewares.js.map +1 -1
  14. package/dist/cjs/modules/error-handler/error-handler.controller.js +2 -2
  15. package/dist/cjs/modules/error-handler/error-handler.controller.js.map +1 -1
  16. package/dist/cjs/modules/error-handler/utils/catch-async.js.map +1 -1
  17. package/dist/cjs/modules/swagger/swagger.router.js +6 -4
  18. package/dist/cjs/modules/swagger/swagger.router.js.map +1 -1
  19. package/dist/cjs/modules/swagger/utils/built-in-route-path-object-manager.js +7 -0
  20. package/dist/cjs/modules/swagger/utils/built-in-route-path-object-manager.js.map +1 -0
  21. package/dist/cjs/modules/swagger/utils/helpers/get-authentication-json-schema-paths.js +308 -183
  22. package/dist/cjs/modules/swagger/utils/helpers/get-authentication-json-schema-paths.js.map +1 -1
  23. package/dist/cjs/modules/swagger/utils/helpers/get-file-upload-json-schema-paths.js +357 -288
  24. package/dist/cjs/modules/swagger/utils/helpers/get-file-upload-json-schema-paths.js.map +1 -1
  25. package/dist/cjs/modules/swagger/utils/helpers/get-swagger-default-configs.js +1 -5
  26. package/dist/cjs/modules/swagger/utils/helpers/get-swagger-default-configs.js.map +1 -1
  27. package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/prisma-models/generate-prisma-model-main-routes-paths.js +280 -243
  28. package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/prisma-models/generate-prisma-model-main-routes-paths.js.map +1 -1
  29. package/dist/cjs/modules/swagger/utils/helpers/swagger.router.helpers.js +8 -6
  30. package/dist/cjs/modules/swagger/utils/helpers/swagger.router.helpers.js.map +1 -1
  31. package/dist/cjs/server.js +17 -15
  32. package/dist/cjs/server.js.map +1 -1
  33. package/dist/cjs/types/index.js.map +1 -1
  34. package/dist/cjs/types/new-arkos-config.js.map +1 -1
  35. package/dist/cjs/utils/arkos-router/index.js +32 -5
  36. package/dist/cjs/utils/arkos-router/index.js.map +1 -1
  37. package/dist/cjs/utils/arkos-router/types/index.js.map +1 -1
  38. package/dist/cjs/utils/arkos-router/utils/helpers/index.js +11 -0
  39. package/dist/cjs/utils/arkos-router/utils/helpers/index.js.map +1 -1
  40. package/dist/cjs/utils/cli/dev.js +12 -53
  41. package/dist/cjs/utils/cli/dev.js.map +1 -1
  42. package/dist/cjs/utils/cli/export-auth-action.js +1 -1
  43. package/dist/cjs/utils/cli/export-auth-action.js.map +1 -1
  44. package/dist/cjs/utils/cli/generate.js +3 -3
  45. package/dist/cjs/utils/cli/generate.js.map +1 -1
  46. package/dist/cjs/utils/cli/index.js +1 -1
  47. package/dist/cjs/utils/cli/index.js.map +1 -1
  48. package/dist/cjs/utils/cli/start.js +14 -10
  49. package/dist/cjs/utils/cli/start.js.map +1 -1
  50. package/dist/cjs/utils/cli/utils/cli.helpers.js +1 -1
  51. package/dist/cjs/utils/cli/utils/runtime-cli-commander.js +51 -6
  52. package/dist/cjs/utils/cli/utils/runtime-cli-commander.js.map +1 -1
  53. package/dist/cjs/utils/cli/utils/template-generator/templates/class-validator/create-dto-template.js +3 -3
  54. package/dist/cjs/utils/cli/utils/template-generator/templates/class-validator/create-dto-template.js.map +1 -1
  55. package/dist/cjs/utils/cli/utils/template-generator/templates/class-validator/update-dto-template.js +3 -3
  56. package/dist/cjs/utils/cli/utils/template-generator/templates/class-validator/update-dto-template.js.map +1 -1
  57. package/dist/cjs/utils/cli/utils/template-generator/templates/middlewares-template.js +6 -3
  58. package/dist/cjs/utils/cli/utils/template-generator/templates/middlewares-template.js.map +1 -1
  59. package/dist/cjs/utils/cli/utils/template-generator/templates/router-template.js +3 -1
  60. package/dist/cjs/utils/cli/utils/template-generator/templates/router-template.js.map +1 -1
  61. package/dist/cjs/utils/dotenv.helpers.js +10 -6
  62. package/dist/cjs/utils/dotenv.helpers.js.map +1 -1
  63. package/dist/cjs/utils/helpers/api.features.helpers.js +174 -81
  64. package/dist/cjs/utils/helpers/api.features.helpers.js.map +1 -1
  65. package/dist/cjs/utils/helpers/prisma.helpers.js +40 -1
  66. package/dist/cjs/utils/helpers/prisma.helpers.js.map +1 -1
  67. package/dist/cjs/utils/helpers/routers.helpers.js +0 -1
  68. package/dist/cjs/utils/helpers/routers.helpers.js.map +1 -1
  69. package/dist/esm/app.js +1 -1
  70. package/dist/esm/app.js.map +1 -1
  71. package/dist/esm/exports/index.js.map +1 -1
  72. package/dist/esm/modules/auth/auth.controller.js +1 -1
  73. package/dist/esm/modules/auth/auth.controller.js.map +1 -1
  74. package/dist/esm/modules/auth/auth.service.js +3 -4
  75. package/dist/esm/modules/auth/auth.service.js.map +1 -1
  76. package/dist/esm/modules/auth/utils/services/auth-action.service.js +50 -5
  77. package/dist/esm/modules/auth/utils/services/auth-action.service.js.map +1 -1
  78. package/dist/esm/modules/base/base.controller.js +6 -3
  79. package/dist/esm/modules/base/base.controller.js.map +1 -1
  80. package/dist/esm/modules/base/base.middlewares.js +8 -4
  81. package/dist/esm/modules/base/base.middlewares.js.map +1 -1
  82. package/dist/esm/modules/error-handler/error-handler.controller.js +2 -2
  83. package/dist/esm/modules/error-handler/error-handler.controller.js.map +1 -1
  84. package/dist/esm/modules/error-handler/utils/catch-async.js.map +1 -1
  85. package/dist/esm/modules/swagger/swagger.router.js +6 -4
  86. package/dist/esm/modules/swagger/swagger.router.js.map +1 -1
  87. package/dist/esm/modules/swagger/utils/built-in-route-path-object-manager.js +5 -0
  88. package/dist/esm/modules/swagger/utils/built-in-route-path-object-manager.js.map +1 -0
  89. package/dist/esm/modules/swagger/utils/helpers/get-authentication-json-schema-paths.js +308 -183
  90. package/dist/esm/modules/swagger/utils/helpers/get-authentication-json-schema-paths.js.map +1 -1
  91. package/dist/esm/modules/swagger/utils/helpers/get-file-upload-json-schema-paths.js +357 -288
  92. package/dist/esm/modules/swagger/utils/helpers/get-file-upload-json-schema-paths.js.map +1 -1
  93. package/dist/esm/modules/swagger/utils/helpers/get-swagger-default-configs.js +1 -2
  94. package/dist/esm/modules/swagger/utils/helpers/get-swagger-default-configs.js.map +1 -1
  95. package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/prisma-models/generate-prisma-model-main-routes-paths.js +280 -243
  96. package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/prisma-models/generate-prisma-model-main-routes-paths.js.map +1 -1
  97. package/dist/esm/modules/swagger/utils/helpers/swagger.router.helpers.js +8 -6
  98. package/dist/esm/modules/swagger/utils/helpers/swagger.router.helpers.js.map +1 -1
  99. package/dist/esm/server.js +17 -15
  100. package/dist/esm/server.js.map +1 -1
  101. package/dist/esm/types/index.js.map +1 -1
  102. package/dist/esm/types/new-arkos-config.js.map +1 -1
  103. package/dist/esm/utils/arkos-router/index.js +33 -6
  104. package/dist/esm/utils/arkos-router/index.js.map +1 -1
  105. package/dist/esm/utils/arkos-router/types/index.js.map +1 -1
  106. package/dist/esm/utils/arkos-router/utils/helpers/index.js +10 -0
  107. package/dist/esm/utils/arkos-router/utils/helpers/index.js.map +1 -1
  108. package/dist/esm/utils/cli/dev.js +13 -54
  109. package/dist/esm/utils/cli/dev.js.map +1 -1
  110. package/dist/esm/utils/cli/export-auth-action.js +1 -1
  111. package/dist/esm/utils/cli/export-auth-action.js.map +1 -1
  112. package/dist/esm/utils/cli/generate.js +3 -3
  113. package/dist/esm/utils/cli/generate.js.map +1 -1
  114. package/dist/esm/utils/cli/index.js +1 -1
  115. package/dist/esm/utils/cli/index.js.map +1 -1
  116. package/dist/esm/utils/cli/start.js +14 -10
  117. package/dist/esm/utils/cli/start.js.map +1 -1
  118. package/dist/esm/utils/cli/utils/cli.helpers.js +1 -1
  119. package/dist/esm/utils/cli/utils/runtime-cli-commander.js +52 -7
  120. package/dist/esm/utils/cli/utils/runtime-cli-commander.js.map +1 -1
  121. package/dist/esm/utils/cli/utils/template-generator/templates/class-validator/create-dto-template.js +3 -3
  122. package/dist/esm/utils/cli/utils/template-generator/templates/class-validator/create-dto-template.js.map +1 -1
  123. package/dist/esm/utils/cli/utils/template-generator/templates/class-validator/update-dto-template.js +3 -3
  124. package/dist/esm/utils/cli/utils/template-generator/templates/class-validator/update-dto-template.js.map +1 -1
  125. package/dist/esm/utils/cli/utils/template-generator/templates/middlewares-template.js +6 -3
  126. package/dist/esm/utils/cli/utils/template-generator/templates/middlewares-template.js.map +1 -1
  127. package/dist/esm/utils/cli/utils/template-generator/templates/router-template.js +3 -1
  128. package/dist/esm/utils/cli/utils/template-generator/templates/router-template.js.map +1 -1
  129. package/dist/esm/utils/dotenv.helpers.js +10 -6
  130. package/dist/esm/utils/dotenv.helpers.js.map +1 -1
  131. package/dist/esm/utils/helpers/api.features.helpers.js +174 -81
  132. package/dist/esm/utils/helpers/api.features.helpers.js.map +1 -1
  133. package/dist/esm/utils/helpers/prisma.helpers.js +39 -1
  134. package/dist/esm/utils/helpers/prisma.helpers.js.map +1 -1
  135. package/dist/esm/utils/helpers/routers.helpers.js +0 -1
  136. package/dist/esm/utils/helpers/routers.helpers.js.map +1 -1
  137. package/dist/types/exports/index.d.ts +2 -1
  138. package/dist/types/modules/auth/auth.router.d.ts +1 -1
  139. package/dist/types/modules/auth/auth.service.d.ts +2 -2
  140. package/dist/types/modules/base/base.router.d.ts +1 -1
  141. package/dist/types/modules/swagger/utils/built-in-route-path-object-manager.d.ts +4 -0
  142. package/dist/types/modules/swagger/utils/helpers/get-authentication-json-schema-paths.d.ts +1 -1
  143. package/dist/types/modules/swagger/utils/helpers/get-file-upload-json-schema-paths.d.ts +1 -1
  144. package/dist/types/modules/swagger/utils/helpers/json-schema-generators/prisma-models/generate-prisma-model-main-routes-paths.d.ts +1 -1
  145. package/dist/types/modules/swagger/utils/helpers/swagger.router.helpers.d.ts +1 -1
  146. package/dist/types/types/index.d.ts +5 -5
  147. package/dist/types/types/new-arkos-config.d.ts +1 -1
  148. package/dist/types/utils/arkos-router/types/index.d.ts +15 -14
  149. package/dist/types/utils/arkos-router/utils/helpers/index.d.ts +1 -0
  150. package/dist/types/utils/helpers/prisma.helpers.d.ts +1 -0
  151. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"get-file-upload-json-schema-paths.js","sourceRoot":"","sources":["../../../../../../src/modules/swagger/utils/helpers/get-file-upload-json-schema-paths.ts"],"names":[],"mappings":"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","sourcesContent":["import { OpenAPIV3 } from \"openapi-types\";\nimport { ArkosConfig, RouterConfig } from \"../../../../exports\";\nimport { getModuleComponents } from \"../../../../utils/dynamic-loader\";\nimport { isEndpointDisabled } from \"../../../base/utils/helpers/base.router.helpers\";\nimport deepmerge from \"../../../../utils/helpers/deepmerge.helper\";\nimport { fileUploadDefaultRestrictions } from \"../../../file-upload/file-upload.service\";\n\nexport default function getFileUploadJsonSchemaPaths(arkosConfig: ArkosConfig) {\n const paths: OpenAPIV3.PathsObject = {};\n\n if (!arkosConfig.fileUpload) return paths;\n\n const FileUploadModuleComponents = getModuleComponents(\"file-upload\");\n const routerConfig = FileUploadModuleComponents?.router\n ?.config as RouterConfig<\"file-upload\">;\n const authConfigs = FileUploadModuleComponents?.authConfigs;\n\n if (routerConfig?.disable === true) return paths;\n\n const isFileUploadEndpointDisabled = (endpoint: string): boolean => {\n return isEndpointDisabled(routerConfig, endpoint as any);\n };\n\n const basePathname = arkosConfig.fileUpload?.baseRoute || \"/api/uploads/\";\n const baseUploadDir = arkosConfig.fileUpload?.baseUploadDir || \"uploads\";\n\n const restrictions = deepmerge(\n fileUploadDefaultRestrictions,\n arkosConfig.fileUpload?.restrictions || {}\n );\n\n const formatBytes = (bytes: number): string => {\n if (bytes === 0) return \"0 Bytes\";\n const k = 1024;\n const sizes = [\"Bytes\", \"KB\", \"MB\", \"GB\"];\n const i = Math.floor(Math.log(bytes) / Math.log(k));\n return Math.round((bytes / Math.pow(k, i)) * 100) / 100 + \" \" + sizes[i];\n };\n\n const getFileTypeDescription = (fileType: string): string => {\n const restriction = restrictions[fileType as keyof typeof restrictions];\n if (!restriction) return \"\";\n\n const maxSize = formatBytes(restriction.maxSize!);\n const maxCount = restriction.maxCount;\n const formats = restriction.supportedFilesRegex\n ?.toString()\n .replace(/\\|/g, \", \")\n .replace(/\\//g, \"\")\n .replace(/\\.\\*/g, \"any format\");\n\n return `Maximum file size: ${maxSize}. Maximum files per upload: ${maxCount}. Supported formats: ${formats}`;\n };\n\n const shouldIncludeSecurity = (\n action: \"View\" | \"Create\" | \"Update\" | \"Delete\"\n ): boolean => {\n const authControl = authConfigs?.authenticationControl;\n if (!authControl) return false;\n\n if (typeof authControl === \"boolean\") return authControl;\n if (typeof authControl === \"object\") {\n return authControl[action] === true;\n }\n\n return false;\n };\n\n if (!isFileUploadEndpointDisabled(\"findFile\")) {\n const cleanBasePath = basePathname.endsWith(\"/\")\n ? basePathname.slice(0, -1)\n : basePathname;\n\n paths[`${cleanBasePath}/{filePath*}`] = {\n get: {\n tags: [\"File Upload\"],\n summary: \"Retrieve uploaded file\",\n description: `Serves static files from the upload directory (${baseUploadDir}). This endpoint uses wildcard path matching to serve files from any subdirectory.`,\n operationId: \"findFile\",\n ...(shouldIncludeSecurity(\"View\") && {\n security: [{ BearerAuth: [] }],\n }),\n parameters: [\n {\n name: \"filePath\",\n in: \"path\",\n required: true,\n schema: { type: \"string\" },\n description:\n \"Path to the file including file type directory (e.g., images/photo.jpg, videos/clip.mp4)\",\n },\n ],\n responses: {\n \"200\": {\n description: \"File retrieved successfully\",\n content: {\n \"application/octet-stream\": {\n schema: {\n type: \"string\",\n format: \"binary\",\n },\n },\n },\n },\n \"404\": {\n description: \"File not found\",\n },\n ...(shouldIncludeSecurity(\"View\") && {\n \"401\": { description: \"Authentication required\" },\n \"403\": { description: \"Insufficient permissions to view files\" },\n }),\n },\n },\n };\n }\n\n if (!isFileUploadEndpointDisabled(\"uploadFile\")) {\n const cleanBasePath = basePathname.endsWith(\"/\")\n ? basePathname.slice(0, -1)\n : basePathname;\n\n paths[`${cleanBasePath}/{fileType}`] = {\n post: {\n tags: [\"File Upload\"],\n summary: \"Upload file(s)\",\n description:\n \"Upload one or multiple files. Supports image processing options for image uploads.\",\n operationId: \"uploadFile\",\n ...(shouldIncludeSecurity(\"Create\") && {\n security: [{ BearerAuth: [] }],\n }),\n parameters: [\n {\n name: \"fileType\",\n in: \"path\",\n required: true,\n schema: {\n type: \"string\",\n enum: [\"images\", \"videos\", \"documents\", \"files\"],\n },\n description: \"Type of file being uploaded\",\n },\n {\n name: \"format\",\n in: \"query\",\n required: false,\n schema: {\n type: \"string\",\n enum: [\"jpeg\", \"jpg\", \"png\", \"webp\", \"gif\", \"avif\"],\n },\n description:\n \"Image format for conversion (only applicable for fileType=images)\",\n },\n {\n name: \"width\",\n in: \"query\",\n required: false,\n schema: { type: \"integer\", minimum: 1 },\n description:\n \"Target width for image resize (only applicable for fileType=images)\",\n },\n {\n name: \"height\",\n in: \"query\",\n required: false,\n schema: { type: \"integer\", minimum: 1 },\n description:\n \"Target height for image resize (only applicable for fileType=images)\",\n },\n {\n name: \"resizeTo\",\n in: \"query\",\n required: false,\n schema: {\n type: \"string\",\n enum: [\"cover\", \"contain\", \"fill\", \"inside\", \"outside\"],\n },\n description:\n \"Resize strategy (only applicable for fileType=images)\",\n },\n ],\n requestBody: {\n required: true,\n content: {\n \"multipart/form-data\": {\n schema: {\n type: \"object\",\n properties: {\n images: {\n type: \"array\",\n items: { type: \"string\", format: \"binary\" },\n description: getFileTypeDescription(\"images\"),\n },\n videos: {\n type: \"array\",\n items: { type: \"string\", format: \"binary\" },\n description: getFileTypeDescription(\"videos\"),\n },\n documents: {\n type: \"array\",\n items: { type: \"string\", format: \"binary\" },\n description: getFileTypeDescription(\"documents\"),\n },\n files: {\n type: \"array\",\n items: { type: \"string\", format: \"binary\" },\n description: getFileTypeDescription(\"files\"),\n },\n },\n },\n },\n },\n },\n responses: {\n \"200\": {\n description: \"File(s) uploaded successfully\",\n content: {\n \"application/json\": {\n schema: {\n type: \"object\",\n properties: {\n success: { type: \"boolean\", example: true },\n data: {\n oneOf: [\n { type: \"string\", description: \"URL of uploaded file\" },\n {\n type: \"array\",\n items: { type: \"string\" },\n description: \"URLs of uploaded files\",\n },\n ],\n },\n message: { type: \"string\" },\n },\n },\n },\n },\n },\n \"400\": {\n description:\n \"Invalid file type, size limit exceeded, or no file uploaded\",\n },\n ...(shouldIncludeSecurity(\"Create\") && {\n \"401\": { description: \"Authentication required\" },\n \"403\": { description: \"Insufficient permissions to upload files\" },\n }),\n },\n },\n };\n }\n\n if (!isFileUploadEndpointDisabled(\"updateFile\")) {\n const cleanBasePath = basePathname.endsWith(\"/\")\n ? basePathname.slice(0, -1)\n : basePathname;\n\n paths[`${cleanBasePath}/{fileType}/{fileName}`] = {\n ...(paths[`${cleanBasePath}/{fileType}/{fileName}`] || {}),\n patch: {\n tags: [\"File Upload\"],\n summary: \"Update existing file\",\n description:\n \"Replace an existing file with a new one. Deletes the old file and uploads the new one.\",\n operationId: \"updateFile\",\n ...(shouldIncludeSecurity(\"Update\") && {\n security: [{ BearerAuth: [] }],\n }),\n parameters: [\n {\n name: \"fileType\",\n in: \"path\",\n required: true,\n schema: {\n type: \"string\",\n enum: [\"images\", \"videos\", \"documents\", \"files\"],\n },\n description: \"Type of file being updated\",\n },\n {\n name: \"fileName\",\n in: \"path\",\n required: true,\n schema: { type: \"string\" },\n description: \"Name of the file to update\",\n },\n {\n name: \"format\",\n in: \"query\",\n required: false,\n schema: {\n type: \"string\",\n enum: [\"jpeg\", \"jpg\", \"png\", \"webp\", \"gif\", \"avif\"],\n },\n description:\n \"Image format for conversion (only applicable for fileType=images)\",\n },\n {\n name: \"width\",\n in: \"query\",\n required: false,\n schema: { type: \"integer\", minimum: 1 },\n description:\n \"Target width for image resize (only applicable for fileType=images)\",\n },\n {\n name: \"height\",\n in: \"query\",\n required: false,\n schema: { type: \"integer\", minimum: 1 },\n description:\n \"Target height for image resize (only applicable for fileType=images)\",\n },\n {\n name: \"resizeTo\",\n in: \"query\",\n required: false,\n schema: {\n type: \"string\",\n enum: [\"cover\", \"contain\", \"fill\", \"inside\", \"outside\"],\n },\n description:\n \"Resize strategy (only applicable for fileType=images)\",\n },\n ],\n requestBody: {\n required: true,\n content: {\n \"multipart/form-data\": {\n schema: {\n type: \"object\",\n properties: {\n images: {\n type: \"array\",\n items: { type: \"string\", format: \"binary\" },\n description: getFileTypeDescription(\"images\"),\n },\n videos: {\n type: \"array\",\n items: { type: \"string\", format: \"binary\" },\n description: getFileTypeDescription(\"videos\"),\n },\n documents: {\n type: \"array\",\n items: { type: \"string\", format: \"binary\" },\n description: getFileTypeDescription(\"documents\"),\n },\n files: {\n type: \"array\",\n items: { type: \"string\", format: \"binary\" },\n description: getFileTypeDescription(\"files\"),\n },\n },\n },\n },\n },\n },\n responses: {\n \"200\": {\n description: \"File updated successfully\",\n content: {\n \"application/json\": {\n schema: {\n type: \"object\",\n properties: {\n success: { type: \"boolean\", example: true },\n data: {\n oneOf: [\n { type: \"string\", description: \"URL of updated file\" },\n {\n type: \"array\",\n items: { type: \"string\" },\n description: \"URLs of updated files\",\n },\n ],\n },\n message: { type: \"string\" },\n },\n },\n },\n },\n },\n \"400\": {\n description:\n \"Invalid file type, size limit exceeded, or no file uploaded\",\n },\n \"404\": {\n description: \"Original file not found\",\n },\n ...(shouldIncludeSecurity(\"Update\") && {\n \"401\": { description: \"Authentication required\" },\n \"403\": { description: \"Insufficient permissions to update files\" },\n }),\n },\n },\n };\n }\n\n if (!isFileUploadEndpointDisabled(\"deleteFile\")) {\n const cleanBasePath = basePathname.endsWith(\"/\")\n ? basePathname.slice(0, -1)\n : basePathname;\n\n if (!paths[`${cleanBasePath}/{fileType}/{fileName}`]) {\n paths[`${cleanBasePath}/{fileType}/{fileName}`] = {};\n }\n\n paths[`${cleanBasePath}/{fileType}/{fileName}`]!.delete = {\n tags: [\"File Upload\"],\n summary: \"Delete file\",\n description: \"Delete an uploaded file from the server\",\n operationId: \"deleteFile\",\n ...(shouldIncludeSecurity(\"Delete\") && {\n security: [{ BearerAuth: [] }],\n }),\n parameters: [\n {\n name: \"fileType\",\n in: \"path\",\n required: true,\n schema: {\n type: \"string\",\n enum: [\"images\", \"videos\", \"documents\", \"files\"],\n },\n description: \"Type of file being deleted\",\n },\n {\n name: \"fileName\",\n in: \"path\",\n required: true,\n schema: { type: \"string\" },\n description: \"Name of the file to delete\",\n },\n ],\n responses: {\n \"204\": {\n description: \"File deleted successfully\",\n },\n \"404\": {\n description: \"File not found\",\n },\n ...(shouldIncludeSecurity(\"Delete\") && {\n \"401\": { description: \"Authentication required\" },\n \"403\": { description: \"Insufficient permissions to delete files\" },\n }),\n },\n };\n }\n\n return paths;\n}\n"]}
1
+ {"version":3,"file":"get-file-upload-json-schema-paths.js","sourceRoot":"","sources":["../../../../../../src/modules/swagger/utils/helpers/get-file-upload-json-schema-paths.ts"],"names":[],"mappings":"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","sourcesContent":["import { OpenAPIV3 } from \"openapi-types\";\nimport { ArkosConfig, RouterConfig } from \"../../../../exports\";\nimport { getModuleComponents } from \"../../../../utils/dynamic-loader\";\nimport { isEndpointDisabled } from \"../../../base/utils/helpers/base.router.helpers\";\nimport deepmerge from \"../../../../utils/helpers/deepmerge.helper\";\nimport { fileUploadDefaultRestrictions } from \"../../../file-upload/file-upload.service\";\n\nexport default function getFileUploadJsonSchemaPaths(\n arkosConfig: ArkosConfig,\n existingPaths: OpenAPIV3.PathsObject\n) {\n const paths: OpenAPIV3.PathsObject = { ...existingPaths };\n\n if (!arkosConfig.fileUpload) return paths;\n\n const FileUploadModuleComponents = getModuleComponents(\"file-upload\");\n const routerConfig = FileUploadModuleComponents?.router\n ?.config as RouterConfig<\"file-upload\">;\n const authConfigs = FileUploadModuleComponents?.authConfigs;\n\n if (routerConfig?.disable === true) return paths;\n\n const isFileUploadEndpointDisabled = (endpoint: string): boolean => {\n return isEndpointDisabled(routerConfig, endpoint as any);\n };\n\n const basePathname = arkosConfig.fileUpload?.baseRoute || \"/api/uploads/\";\n const baseUploadDir = arkosConfig.fileUpload?.baseUploadDir || \"uploads\";\n\n const restrictions = deepmerge(\n fileUploadDefaultRestrictions,\n arkosConfig.fileUpload?.restrictions || {}\n );\n\n const formatBytes = (bytes: number): string => {\n if (bytes === 0) return \"0 Bytes\";\n const k = 1024;\n const sizes = [\"Bytes\", \"KB\", \"MB\", \"GB\"];\n const i = Math.floor(Math.log(bytes) / Math.log(k));\n return Math.round((bytes / Math.pow(k, i)) * 100) / 100 + \" \" + sizes[i];\n };\n\n const getFileTypeDescription = (fileType: string): string => {\n const restriction = restrictions[fileType as keyof typeof restrictions];\n if (!restriction) return \"\";\n\n const maxSize = formatBytes(restriction.maxSize!);\n const maxCount = restriction.maxCount;\n const formats = restriction.supportedFilesRegex\n ?.toString()\n .replace(/\\|/g, \", \")\n .replace(/\\//g, \"\")\n .replace(/\\.\\*/g, \"any format\");\n\n return `Maximum file size: ${maxSize}. Maximum files per upload: ${maxCount}. Supported formats: ${formats}`;\n };\n\n const shouldIncludeSecurity = (\n action: \"View\" | \"Create\" | \"Update\" | \"Delete\"\n ): boolean => {\n const authControl = authConfigs?.authenticationControl;\n if (!authControl) return false;\n\n if (typeof authControl === \"boolean\") return authControl;\n if (typeof authControl === \"object\") {\n return authControl[action] === true;\n }\n\n return false;\n };\n\n // Find File - GET /{filePath*}\n if (!isFileUploadEndpointDisabled(\"findFile\")) {\n const cleanBasePath = basePathname.endsWith(\"/\")\n ? basePathname.slice(0, -1)\n : basePathname;\n const pathname = `${cleanBasePath}/{filePath*}`;\n\n if (!paths[pathname]) paths[pathname] = {};\n const currentPath = paths[pathname]!.get;\n\n const defaultParameters: OpenAPIV3.ParameterObject[] = [\n {\n name: \"filePath\",\n in: \"path\",\n required: true,\n schema: { type: \"string\" },\n description:\n \"Path to the file including file type directory (e.g., images/photo.jpg, videos/clip.mp4)\",\n },\n ];\n\n const existingParams =\n (currentPath?.parameters as OpenAPIV3.ParameterObject[]) || [];\n const existingParamKeys = new Set(\n existingParams.map((p) => `${p.in}-${p.name}`)\n );\n\n const mergedParameters = [\n ...existingParams,\n ...defaultParameters.filter(\n (p) => !existingParamKeys.has(`${p.in}-${p.name}`)\n ),\n ];\n\n const defaultSpec = {\n tags: [\"File Upload\", ...(currentPath?.tags || [])].filter(\n (tag) => tag !== \"Defaults\"\n ),\n summary:\n currentPath?.summary === pathname || !currentPath?.summary\n ? \"Retrieve uploaded file\"\n : currentPath?.summary,\n description:\n currentPath?.description ||\n `Serves static files from the upload directory (${baseUploadDir}). This endpoint uses wildcard path matching to serve files from any subdirectory.`,\n operationId: currentPath?.operationId || \"findFile\",\n ...(shouldIncludeSecurity(\"View\") && {\n security: [{ BearerAuth: [] }],\n }),\n parameters: mergedParameters,\n responses: {\n ...(currentPath?.responses || {}),\n \"200\": currentPath?.responses?.[\"200\"] || {\n description: \"File retrieved successfully\",\n content: {\n \"application/octet-stream\": {\n schema: {\n type: \"string\",\n format: \"binary\",\n },\n },\n },\n },\n \"404\": currentPath?.responses?.[\"404\"] || {\n description: \"File not found\",\n },\n ...(shouldIncludeSecurity(\"View\") && {\n \"401\": currentPath?.responses?.[\"401\"] || {\n description: \"Authentication required\",\n },\n \"403\": currentPath?.responses?.[\"403\"] || {\n description: \"Insufficient permissions to view files\",\n },\n }),\n },\n };\n\n paths[pathname]!.get = { ...(currentPath || {}), ...defaultSpec };\n }\n\n // Upload File - POST /{fileType}\n if (!isFileUploadEndpointDisabled(\"uploadFile\")) {\n const cleanBasePath = basePathname.endsWith(\"/\")\n ? basePathname.slice(0, -1)\n : basePathname;\n const pathname = `${cleanBasePath}/{fileType}`;\n\n if (!paths[pathname]) paths[pathname] = {};\n const currentPath = paths[pathname]!.post;\n\n const defaultParameters: OpenAPIV3.ParameterObject[] = [\n {\n name: \"fileType\",\n in: \"path\",\n required: true,\n schema: {\n type: \"string\",\n enum: [\"images\", \"videos\", \"documents\", \"files\"],\n },\n description: \"Type of file being uploaded\",\n },\n {\n name: \"format\",\n in: \"query\",\n required: false,\n schema: {\n type: \"string\",\n enum: [\"jpeg\", \"jpg\", \"png\", \"webp\", \"gif\", \"avif\"],\n },\n description:\n \"Image format for conversion (only applicable for fileType=images)\",\n },\n {\n name: \"width\",\n in: \"query\",\n required: false,\n schema: { type: \"integer\", minimum: 1 },\n description:\n \"Target width for image resize (only applicable for fileType=images)\",\n },\n {\n name: \"height\",\n in: \"query\",\n required: false,\n schema: { type: \"integer\", minimum: 1 },\n description:\n \"Target height for image resize (only applicable for fileType=images)\",\n },\n {\n name: \"resizeTo\",\n in: \"query\",\n required: false,\n schema: {\n type: \"string\",\n enum: [\"cover\", \"contain\", \"fill\", \"inside\", \"outside\"],\n },\n description: \"Resize strategy (only applicable for fileType=images)\",\n },\n ];\n\n const existingParams =\n (currentPath?.parameters as OpenAPIV3.ParameterObject[]) || [];\n const existingParamKeys = new Set(\n existingParams.map((p) => `${p.in}-${p.name}`)\n );\n\n const mergedParameters = [\n ...existingParams,\n ...defaultParameters.filter(\n (p) => !existingParamKeys.has(`${p.in}-${p.name}`)\n ),\n ];\n\n const defaultSpec = {\n tags: [\"File Upload\", ...(currentPath?.tags || [])].filter(\n (tag) => tag !== \"Defaults\"\n ),\n summary:\n currentPath?.summary === pathname || !currentPath?.summary\n ? \"Upload file(s)\"\n : currentPath?.summary,\n description:\n currentPath?.description ||\n \"Upload one or multiple files. Supports image processing options for image uploads.\",\n operationId: currentPath?.operationId || \"uploadFile\",\n ...(shouldIncludeSecurity(\"Create\") && {\n security: [{ BearerAuth: [] }],\n }),\n parameters: mergedParameters,\n requestBody: currentPath?.requestBody || {\n required: true,\n content: {\n \"multipart/form-data\": {\n schema: {\n type: \"object\",\n properties: {\n images: {\n type: \"array\",\n items: { type: \"string\", format: \"binary\" },\n description: getFileTypeDescription(\"images\"),\n },\n videos: {\n type: \"array\",\n items: { type: \"string\", format: \"binary\" },\n description: getFileTypeDescription(\"videos\"),\n },\n documents: {\n type: \"array\",\n items: { type: \"string\", format: \"binary\" },\n description: getFileTypeDescription(\"documents\"),\n },\n files: {\n type: \"array\",\n items: { type: \"string\", format: \"binary\" },\n description: getFileTypeDescription(\"files\"),\n },\n },\n },\n },\n },\n },\n responses: {\n ...(currentPath?.responses || {}),\n \"200\": currentPath?.responses?.[\"200\"] || {\n description: \"File(s) uploaded successfully\",\n content: {\n \"application/json\": {\n schema: {\n type: \"object\",\n properties: {\n success: { type: \"boolean\", example: true },\n data: {\n oneOf: [\n { type: \"string\", description: \"URL of uploaded file\" },\n {\n type: \"array\",\n items: { type: \"string\" },\n description: \"URLs of uploaded files\",\n },\n ],\n },\n message: { type: \"string\" },\n },\n },\n },\n },\n },\n \"400\": currentPath?.responses?.[\"400\"] || {\n description:\n \"Invalid file type, size limit exceeded, or no file uploaded\",\n },\n ...(shouldIncludeSecurity(\"Create\") && {\n \"401\": currentPath?.responses?.[\"401\"] || {\n description: \"Authentication required\",\n },\n \"403\": currentPath?.responses?.[\"403\"] || {\n description: \"Insufficient permissions to upload files\",\n },\n }),\n },\n };\n\n paths[pathname]!.post = { ...(currentPath || {}), ...defaultSpec };\n }\n\n // Update File - PATCH /{fileType}/{fileName}\n if (!isFileUploadEndpointDisabled(\"updateFile\")) {\n const cleanBasePath = basePathname.endsWith(\"/\")\n ? basePathname.slice(0, -1)\n : basePathname;\n const pathname = `${cleanBasePath}/{fileType}/{fileName}`;\n\n if (!paths[pathname]) paths[pathname] = {};\n const currentPath = paths[pathname]!.patch;\n\n const defaultParameters: OpenAPIV3.ParameterObject[] = [\n {\n name: \"fileType\",\n in: \"path\",\n required: true,\n schema: {\n type: \"string\",\n enum: [\"images\", \"videos\", \"documents\", \"files\"],\n },\n description: \"Type of file being updated\",\n },\n {\n name: \"fileName\",\n in: \"path\",\n required: true,\n schema: { type: \"string\" },\n description: \"Name of the file to update\",\n },\n {\n name: \"format\",\n in: \"query\",\n required: false,\n schema: {\n type: \"string\",\n enum: [\"jpeg\", \"jpg\", \"png\", \"webp\", \"gif\", \"avif\"],\n },\n description:\n \"Image format for conversion (only applicable for fileType=images)\",\n },\n {\n name: \"width\",\n in: \"query\",\n required: false,\n schema: { type: \"integer\", minimum: 1 },\n description:\n \"Target width for image resize (only applicable for fileType=images)\",\n },\n {\n name: \"height\",\n in: \"query\",\n required: false,\n schema: { type: \"integer\", minimum: 1 },\n description:\n \"Target height for image resize (only applicable for fileType=images)\",\n },\n {\n name: \"resizeTo\",\n in: \"query\",\n required: false,\n schema: {\n type: \"string\",\n enum: [\"cover\", \"contain\", \"fill\", \"inside\", \"outside\"],\n },\n description: \"Resize strategy (only applicable for fileType=images)\",\n },\n ];\n\n const existingParams =\n (currentPath?.parameters as OpenAPIV3.ParameterObject[]) || [];\n const existingParamKeys = new Set(\n existingParams.map((p) => `${p.in}-${p.name}`)\n );\n\n const mergedParameters = [\n ...existingParams,\n ...defaultParameters.filter(\n (p) => !existingParamKeys.has(`${p.in}-${p.name}`)\n ),\n ];\n\n const defaultSpec = {\n tags: [\"File Upload\", ...(currentPath?.tags || [])].filter(\n (tag) => tag !== \"Defaults\"\n ),\n summary:\n currentPath?.summary === pathname || !currentPath?.summary\n ? \"Update existing file\"\n : currentPath?.summary,\n description:\n currentPath?.description ||\n \"Replace an existing file with a new one. Deletes the old file and uploads the new one.\",\n operationId: currentPath?.operationId || \"updateFile\",\n ...(shouldIncludeSecurity(\"Update\") && {\n security: [{ BearerAuth: [] }],\n }),\n parameters: mergedParameters,\n requestBody: currentPath?.requestBody || {\n required: true,\n content: {\n \"multipart/form-data\": {\n schema: {\n type: \"object\",\n properties: {\n images: {\n type: \"array\",\n items: { type: \"string\", format: \"binary\" },\n description: getFileTypeDescription(\"images\"),\n },\n videos: {\n type: \"array\",\n items: { type: \"string\", format: \"binary\" },\n description: getFileTypeDescription(\"videos\"),\n },\n documents: {\n type: \"array\",\n items: { type: \"string\", format: \"binary\" },\n description: getFileTypeDescription(\"documents\"),\n },\n files: {\n type: \"array\",\n items: { type: \"string\", format: \"binary\" },\n description: getFileTypeDescription(\"files\"),\n },\n },\n },\n },\n },\n },\n responses: {\n ...(currentPath?.responses || {}),\n \"200\": currentPath?.responses?.[\"200\"] || {\n description: \"File updated successfully\",\n content: {\n \"application/json\": {\n schema: {\n type: \"object\",\n properties: {\n success: { type: \"boolean\", example: true },\n data: {\n oneOf: [\n { type: \"string\", description: \"URL of updated file\" },\n {\n type: \"array\",\n items: { type: \"string\" },\n description: \"URLs of updated files\",\n },\n ],\n },\n message: { type: \"string\" },\n },\n },\n },\n },\n },\n \"400\": currentPath?.responses?.[\"400\"] || {\n description:\n \"Invalid file type, size limit exceeded, or no file uploaded\",\n },\n \"404\": currentPath?.responses?.[\"404\"] || {\n description: \"Original file not found\",\n },\n ...(shouldIncludeSecurity(\"Update\") && {\n \"401\": currentPath?.responses?.[\"401\"] || {\n description: \"Authentication required\",\n },\n \"403\": currentPath?.responses?.[\"403\"] || {\n description: \"Insufficient permissions to update files\",\n },\n }),\n },\n };\n\n paths[pathname]!.patch = { ...(currentPath || {}), ...defaultSpec };\n }\n\n // Delete File - DELETE /{fileType}/{fileName}\n if (!isFileUploadEndpointDisabled(\"deleteFile\")) {\n const cleanBasePath = basePathname.endsWith(\"/\")\n ? basePathname.slice(0, -1)\n : basePathname;\n const pathname = `${cleanBasePath}/{fileType}/{fileName}`;\n\n if (!paths[pathname]) paths[pathname] = {};\n const currentPath = paths[pathname]!.delete;\n\n const defaultParameters: OpenAPIV3.ParameterObject[] = [\n {\n name: \"fileType\",\n in: \"path\",\n required: true,\n schema: {\n type: \"string\",\n enum: [\"images\", \"videos\", \"documents\", \"files\"],\n },\n description: \"Type of file being deleted\",\n },\n {\n name: \"fileName\",\n in: \"path\",\n required: true,\n schema: { type: \"string\" },\n description: \"Name of the file to delete\",\n },\n ];\n\n const existingParams =\n (currentPath?.parameters as OpenAPIV3.ParameterObject[]) || [];\n const existingParamKeys = new Set(\n existingParams.map((p) => `${p.in}-${p.name}`)\n );\n\n const mergedParameters = [\n ...existingParams,\n ...defaultParameters.filter(\n (p) => !existingParamKeys.has(`${p.in}-${p.name}`)\n ),\n ];\n\n const defaultSpec = {\n tags: [\"File Upload\", ...(currentPath?.tags || [])].filter(\n (tag) => tag !== \"Defaults\"\n ),\n summary:\n currentPath?.summary === pathname || !currentPath?.summary\n ? \"Delete file\"\n : currentPath?.summary,\n description:\n currentPath?.description || \"Delete an uploaded file from the server\",\n operationId: currentPath?.operationId || \"deleteFile\",\n ...(shouldIncludeSecurity(\"Delete\") && {\n security: [{ BearerAuth: [] }],\n }),\n parameters: mergedParameters,\n responses: {\n ...(currentPath?.responses || {}),\n \"204\": currentPath?.responses?.[\"204\"] || {\n description: \"File deleted successfully\",\n },\n \"404\": currentPath?.responses?.[\"404\"] || {\n description: \"File not found\",\n },\n ...(shouldIncludeSecurity(\"Delete\") && {\n \"401\": currentPath?.responses?.[\"401\"] || {\n description: \"Authentication required\",\n },\n \"403\": currentPath?.responses?.[\"403\"] || {\n description: \"Insufficient permissions to delete files\",\n },\n }),\n },\n };\n\n paths[pathname]!.delete = { ...(currentPath || {}), ...defaultSpec };\n }\n\n return paths;\n}\n"]}
@@ -1,13 +1,9 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
3
  exports.default = getSwaggerDefaultConfig;
7
4
  const text_helpers_1 = require("../../../../utils/helpers/text.helpers");
8
- const port_and_host_allocator_1 = __importDefault(require("../../../../utils/features/port-and-host-allocator"));
9
5
  function getSwaggerDefaultConfig(defaultModelsPaths, defaultJsonSchemas) {
10
- const portAndHost = port_and_host_allocator_1.default;
6
+ const portAndHost = { port: process.env.__PORT, host: process.env.__HOST };
11
7
  return {
12
8
  endpoint: "/docs",
13
9
  mode: "prisma",
@@ -1 +1 @@
1
- {"version":3,"file":"get-swagger-default-configs.js","sourceRoot":"","sources":["../../../../../../src/modules/swagger/utils/helpers/get-swagger-default-configs.ts"],"names":[],"mappings":";;;;;AAKA,0CA2DC;AA9DD,yEAAoE;AACpE,iHAAsF;AAEtF,SAAwB,uBAAuB,CAC7C,kBAAuC,EACvC,kBAAiD;IAEjD,MAAM,WAAW,GAAG,iCAAoB,CAAC;IAEzC,OAAO;QACL,QAAQ,EAAE,OAAO;QACjB,IAAI,EAAE,QAAQ;QACd,MAAM,EAAE,KAAK;QACb,OAAO,EAAE;YACP,UAAU,EAAE;gBACV,OAAO,EAAE,OAAO;gBAChB,IAAI,EAAE;oBACJ,KAAK,EAAE,qBAAqB;oBAC5B,OAAO,EAAE,OAAO;oBAChB,WAAW,EACT,sFAAsF;iBACzF;gBACD,OAAO,EAAE;oBACP;wBACE,GAAG,EAAE,UAAU,CAAC,SAAS,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAK,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,IAAI,WAAW,CAAC,IAAI,EAAE;wBACvI,WAAW,EAAE,SAAS,IAAA,yBAAU,EAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,aAAa,CAAC,SAAS;qBACjF;iBACF;gBACD,KAAK,EAAE,kBAAkB;gBACzB,UAAU,EAAE;oBACV,OAAO,EAAE,kBAAkB,IAAI,EAAE;oBACjC,eAAe,EAAE;wBACf,UAAU,EAAE;4BACV,IAAI,EAAE,MAAM;4BACZ,MAAM,EAAE,QAAQ;4BAChB,YAAY,EAAE,KAAK;yBACpB;qBACF;iBACF;gBACD,QAAQ,EAAE,EAAE;aACb;YACD,IAAI,EAAE;gBACJ,gCAAgC;gBAChC,mCAAmC;aACpC;YACD,WAAW,EAAE,IAAI;YACjB,eAAe,EAAE,IAAI;YACrB,oBAAoB,EAAE,KAAK;SAC5B;QACD,+BAA+B,EAAE;YAC/B,KAAK,EAAE,WAAW;YAClB,QAAQ,EAAE,IAAI;YACd,MAAM,EAAE,QAAQ;YAChB,WAAW,EAAE,IAAI;YACjB,kBAAkB,EAAE,KAAK;YACzB,QAAQ,EAAE;gBACR,KAAK,EAAE,4BAA4B;gBACnC,WAAW,EAAE,yCAAyC;aACvD;YACD,SAAS,EAAE,4BAA4B;SACxC;KACwB,CAAC;AAC9B,CAAC","sourcesContent":["import { OpenAPIV3 } from \"openapi-types\";\nimport { ArkosConfig } from \"../../../../exports\";\nimport { capitalize } from \"../../../../utils/helpers/text.helpers\";\nimport portAndHostAllocator from \"../../../../utils/features/port-and-host-allocator\";\n\nexport default function getSwaggerDefaultConfig(\n defaultModelsPaths: Record<string, any>,\n defaultJsonSchemas: OpenAPIV3.PathsObject<{}, {}>\n) {\n const portAndHost = portAndHostAllocator;\n\n return {\n endpoint: \"/docs\",\n mode: \"prisma\",\n strict: false,\n options: {\n definition: {\n openapi: \"3.0.0\",\n info: {\n title: \"Powered By Arkos.js\",\n version: \"1.0.0\",\n description:\n \"This API was automatically generated by Arkos.js, read more about at www.arkosjs.com\",\n },\n servers: [\n {\n url: `http://${[\"0.0.0.0\", \"localhost\", \"127.0.0.1\"].includes(portAndHost.host!) ? \"localhost\" : portAndHost.host}:${portAndHost.port}`,\n description: `Local ${capitalize(process.env.NODE_ENV || \"development\")} Server`,\n },\n ],\n paths: defaultModelsPaths,\n components: {\n schemas: defaultJsonSchemas || {},\n securitySchemes: {\n BearerAuth: {\n type: \"http\",\n scheme: \"bearer\",\n bearerFormat: \"JWT\",\n },\n },\n },\n security: [],\n },\n apis: [\n \"./src/routers/*.router.{ts,js}\",\n \"./src/modules/**/*.router.{ts,js}\",\n ],\n deepLinking: true,\n tryItOutEnabled: true,\n persistAuthorization: false,\n },\n scalarApiReferenceConfiguration: {\n theme: \"deepSpace\",\n darkMode: true,\n layout: \"modern\",\n showSidebar: true,\n hideDownloadButton: false,\n metaData: {\n title: \"Arkos.js API Documentation\",\n description: \"API documentation generated by Arkos.js\",\n },\n pageTitle: \"Arkos.js API Documentation\",\n },\n } as ArkosConfig[\"swagger\"];\n}\n"]}
1
+ {"version":3,"file":"get-swagger-default-configs.js","sourceRoot":"","sources":["../../../../../../src/modules/swagger/utils/helpers/get-swagger-default-configs.ts"],"names":[],"mappings":";;AAIA,0CA2DC;AA7DD,yEAAoE;AAEpE,SAAwB,uBAAuB,CAC7C,kBAAuC,EACvC,kBAAiD;IAEjD,MAAM,WAAW,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,MAAO,EAAE,CAAC;IAE5E,OAAO;QACL,QAAQ,EAAE,OAAO;QACjB,IAAI,EAAE,QAAQ;QACd,MAAM,EAAE,KAAK;QACb,OAAO,EAAE;YACP,UAAU,EAAE;gBACV,OAAO,EAAE,OAAO;gBAChB,IAAI,EAAE;oBACJ,KAAK,EAAE,qBAAqB;oBAC5B,OAAO,EAAE,OAAO;oBAChB,WAAW,EACT,sFAAsF;iBACzF;gBACD,OAAO,EAAE;oBACP;wBACE,GAAG,EAAE,UAAU,CAAC,SAAS,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAK,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,IAAI,WAAW,CAAC,IAAI,EAAE;wBACvI,WAAW,EAAE,SAAS,IAAA,yBAAU,EAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,aAAa,CAAC,SAAS;qBACjF;iBACF;gBACD,KAAK,EAAE,kBAAkB;gBACzB,UAAU,EAAE;oBACV,OAAO,EAAE,kBAAkB,IAAI,EAAE;oBACjC,eAAe,EAAE;wBACf,UAAU,EAAE;4BACV,IAAI,EAAE,MAAM;4BACZ,MAAM,EAAE,QAAQ;4BAChB,YAAY,EAAE,KAAK;yBACpB;qBACF;iBACF;gBACD,QAAQ,EAAE,EAAE;aACb;YACD,IAAI,EAAE;gBACJ,gCAAgC;gBAChC,mCAAmC;aACpC;YACD,WAAW,EAAE,IAAI;YACjB,eAAe,EAAE,IAAI;YACrB,oBAAoB,EAAE,KAAK;SAC5B;QACD,+BAA+B,EAAE;YAC/B,KAAK,EAAE,WAAW;YAClB,QAAQ,EAAE,IAAI;YACd,MAAM,EAAE,QAAQ;YAChB,WAAW,EAAE,IAAI;YACjB,kBAAkB,EAAE,KAAK;YACzB,QAAQ,EAAE;gBACR,KAAK,EAAE,4BAA4B;gBACnC,WAAW,EAAE,yCAAyC;aACvD;YACD,SAAS,EAAE,4BAA4B;SACxC;KACwB,CAAC;AAC9B,CAAC","sourcesContent":["import { OpenAPIV3 } from \"openapi-types\";\nimport { ArkosConfig } from \"../../../../exports\";\nimport { capitalize } from \"../../../../utils/helpers/text.helpers\";\n\nexport default function getSwaggerDefaultConfig(\n defaultModelsPaths: Record<string, any>,\n defaultJsonSchemas: OpenAPIV3.PathsObject<{}, {}>\n) {\n const portAndHost = { port: process.env.__PORT, host: process.env.__HOST! };\n\n return {\n endpoint: \"/docs\",\n mode: \"prisma\",\n strict: false,\n options: {\n definition: {\n openapi: \"3.0.0\",\n info: {\n title: \"Powered By Arkos.js\",\n version: \"1.0.0\",\n description:\n \"This API was automatically generated by Arkos.js, read more about at www.arkosjs.com\",\n },\n servers: [\n {\n url: `http://${[\"0.0.0.0\", \"localhost\", \"127.0.0.1\"].includes(portAndHost.host!) ? \"localhost\" : portAndHost.host}:${portAndHost.port}`,\n description: `Local ${capitalize(process.env.NODE_ENV || \"development\")} Server`,\n },\n ],\n paths: defaultModelsPaths,\n components: {\n schemas: defaultJsonSchemas || {},\n securitySchemes: {\n BearerAuth: {\n type: \"http\",\n scheme: \"bearer\",\n bearerFormat: \"JWT\",\n },\n },\n },\n security: [],\n },\n apis: [\n \"./src/routers/*.router.{ts,js}\",\n \"./src/modules/**/*.router.{ts,js}\",\n ],\n deepLinking: true,\n tryItOutEnabled: true,\n persistAuthorization: false,\n },\n scalarApiReferenceConfiguration: {\n theme: \"deepSpace\",\n darkMode: true,\n layout: \"modern\",\n showSidebar: true,\n hideDownloadButton: false,\n metaData: {\n title: \"Arkos.js API Documentation\",\n description: \"API documentation generated by Arkos.js\",\n },\n pageTitle: \"Arkos.js API Documentation\",\n },\n } as ArkosConfig[\"swagger\"];\n}\n"]}