storemw-core-api 1.0.169 → 1.0.171

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 (166) hide show
  1. package/dist/app.js +20 -2
  2. package/dist/app.js.map +1 -1
  3. package/dist/controllers/access_control/accessControlRoleController.js +5 -1
  4. package/dist/controllers/access_control/accessControlRoleController.js.map +1 -1
  5. package/dist/controllers/index.js +1 -1
  6. package/dist/controllers/item/itemController.js +22 -10
  7. package/dist/controllers/item/itemController.js.map +1 -1
  8. package/dist/lib/route_factory/RouteFactory.d.ts +15 -0
  9. package/dist/lib/route_factory/RouteFactory.js +21 -0
  10. package/dist/lib/route_factory/RouteFactory.js.map +1 -0
  11. package/dist/lib/route_factory/index.d.ts +6 -0
  12. package/dist/lib/route_factory/index.js +11 -0
  13. package/dist/lib/route_factory/index.js.map +1 -0
  14. package/dist/lib/route_factory/routeRegistry.d.ts +8 -0
  15. package/dist/lib/route_factory/routeRegistry.js +5 -0
  16. package/dist/lib/route_factory/routeRegistry.js.map +1 -0
  17. package/dist/lib/route_factory/routeSpec.d.ts +36 -0
  18. package/dist/lib/route_factory/routeSpec.js +81 -0
  19. package/dist/lib/route_factory/routeSpec.js.map +1 -0
  20. package/dist/models/item/BrandModel.d.ts +34 -23
  21. package/dist/models/item/CategoryModel.d.ts +34 -23
  22. package/dist/models/item/ItemModel.d.ts +100 -78
  23. package/dist/models/item/ProductModel.d.ts +33 -33
  24. package/dist/models/item/UomModel.d.ts +44 -33
  25. package/dist/route_contracts/access_control/accessControlPoliciesRoutes.d.ts +2 -0
  26. package/dist/route_contracts/access_control/accessControlPoliciesRoutes.js +21 -0
  27. package/dist/route_contracts/access_control/accessControlPoliciesRoutes.js.map +1 -0
  28. package/dist/route_contracts/access_control/accessControlRoleRoutes.d.ts +2 -0
  29. package/dist/route_contracts/access_control/accessControlRoleRoutes.js +48 -0
  30. package/dist/route_contracts/access_control/accessControlRoleRoutes.js.map +1 -0
  31. package/dist/route_contracts/access_control/accessControlRolesRoutes.d.ts +2 -0
  32. package/dist/route_contracts/access_control/accessControlRolesRoutes.js +37 -0
  33. package/dist/route_contracts/access_control/accessControlRolesRoutes.js.map +1 -0
  34. package/dist/route_contracts/access_control/accessControlRoutes.d.ts +2 -0
  35. package/dist/route_contracts/access_control/accessControlRoutes.js +18 -0
  36. package/dist/route_contracts/access_control/accessControlRoutes.js.map +1 -0
  37. package/dist/route_contracts/access_control/accessControlUserRolesRoutes.d.ts +2 -0
  38. package/dist/route_contracts/access_control/accessControlUserRolesRoutes.js +21 -0
  39. package/dist/route_contracts/access_control/accessControlUserRolesRoutes.js.map +1 -0
  40. package/dist/route_contracts/auth/authRoutes.d.ts +2 -0
  41. package/dist/route_contracts/auth/authRoutes.js +23 -0
  42. package/dist/route_contracts/auth/authRoutes.js.map +1 -0
  43. package/dist/route_contracts/index.d.ts +2 -0
  44. package/dist/route_contracts/index.js +39 -0
  45. package/dist/route_contracts/index.js.map +1 -0
  46. package/dist/route_specs/access_control/accessControlPoliciesRouteSpecs.d.ts +2 -0
  47. package/dist/route_specs/access_control/accessControlPoliciesRouteSpecs.js +21 -0
  48. package/dist/route_specs/access_control/accessControlPoliciesRouteSpecs.js.map +1 -0
  49. package/dist/route_specs/access_control/accessControlRoleRouteSpecs.d.ts +2 -0
  50. package/dist/route_specs/access_control/accessControlRoleRouteSpecs.js +48 -0
  51. package/dist/route_specs/access_control/accessControlRoleRouteSpecs.js.map +1 -0
  52. package/dist/route_specs/access_control/accessControlRolesRouteSpecs.d.ts +2 -0
  53. package/dist/route_specs/access_control/accessControlRolesRouteSpecs.js +37 -0
  54. package/dist/route_specs/access_control/accessControlRolesRouteSpecs.js.map +1 -0
  55. package/dist/route_specs/access_control/accessControlRouteSpecs.d.ts +2 -0
  56. package/dist/route_specs/access_control/accessControlRouteSpecs.js +18 -0
  57. package/dist/route_specs/access_control/accessControlRouteSpecs.js.map +1 -0
  58. package/dist/route_specs/access_control/accessControlUserRolesRouteSpecs.d.ts +2 -0
  59. package/dist/route_specs/access_control/accessControlUserRolesRouteSpecs.js +21 -0
  60. package/dist/route_specs/access_control/accessControlUserRolesRouteSpecs.js.map +1 -0
  61. package/dist/route_specs/auth/authRouteSpec.d.ts +2 -0
  62. package/dist/route_specs/auth/authRouteSpec.js +23 -0
  63. package/dist/route_specs/auth/authRouteSpec.js.map +1 -0
  64. package/dist/route_specs/index.d.ts +2 -0
  65. package/dist/route_specs/index.js +39 -0
  66. package/dist/route_specs/index.js.map +1 -0
  67. package/dist/routes/index.d.ts +33 -33
  68. package/dist/routes/index.js +33 -34
  69. package/dist/routes/index.js.map +1 -1
  70. package/dist/schema/middleware/route/index.d.ts +2 -2
  71. package/dist/schema/middleware/route/index.js +2 -1
  72. package/dist/schema/middleware/route/index.js.map +1 -1
  73. package/dist/schema/middleware/route/schemaAccessControl.d.ts +9 -0
  74. package/dist/schema/middleware/route/schemaAccessControl.js +5 -1
  75. package/dist/schema/middleware/route/schemaAccessControl.js.map +1 -1
  76. package/dist/schema/payload/item/schemaItemBrand.d.ts +28 -14
  77. package/dist/schema/payload/item/schemaItemBrand.js +4 -2
  78. package/dist/schema/payload/item/schemaItemBrand.js.map +1 -1
  79. package/dist/schema/payload/item/schemaItemCategory.d.ts +28 -14
  80. package/dist/schema/payload/item/schemaItemCategory.js +4 -2
  81. package/dist/schema/payload/item/schemaItemCategory.js.map +1 -1
  82. package/dist/schema/payload/item/schemaItemItem.d.ts +65 -65
  83. package/dist/schema/payload/item/schemaItemItem.js +3 -3
  84. package/dist/schema/payload/item/schemaItemItem.js.map +1 -1
  85. package/dist/schema/payload/item/schemaItemProduct.d.ts +41 -41
  86. package/dist/schema/payload/item/schemaItemProduct.js +1 -1
  87. package/dist/schema/payload/item/schemaItemProduct.js.map +1 -1
  88. package/dist/schema/payload/item/schemaItemUom.d.ts +28 -14
  89. package/dist/schema/payload/item/schemaItemUom.js +4 -2
  90. package/dist/schema/payload/item/schemaItemUom.js.map +1 -1
  91. package/dist/services/item/ItemBrandService.d.ts +11 -6
  92. package/dist/services/item/ItemBrandService.js +35 -6
  93. package/dist/services/item/ItemBrandService.js.map +1 -1
  94. package/dist/services/item/ItemCategoryService.d.ts +11 -6
  95. package/dist/services/item/ItemCategoryService.js +37 -7
  96. package/dist/services/item/ItemCategoryService.js.map +1 -1
  97. package/dist/services/item/ItemItemService.d.ts +29 -23
  98. package/dist/services/item/ItemItemService.js +57 -16
  99. package/dist/services/item/ItemItemService.js.map +1 -1
  100. package/dist/services/item/ItemProductService.d.ts +9 -9
  101. package/dist/services/item/ItemProductService.js +11 -10
  102. package/dist/services/item/ItemProductService.js.map +1 -1
  103. package/dist/services/item/ItemService.js +39 -12
  104. package/dist/services/item/ItemService.js.map +1 -1
  105. package/dist/services/item/ItemUomService.d.ts +14 -9
  106. package/dist/services/item/ItemUomService.js +35 -5
  107. package/dist/services/item/ItemUomService.js.map +1 -1
  108. package/package.json +11 -1
  109. package/prisma/schema.prisma +101 -92
  110. package/dist/access_control/extra/index.d.ts +0 -2
  111. package/dist/access_control/extra/index.js +0 -7
  112. package/dist/access_control/extra/index.js.map +0 -1
  113. package/dist/access_control/extra/policies/administrator.d.ts +0 -3
  114. package/dist/access_control/extra/policies/administrator.js +0 -13
  115. package/dist/access_control/extra/policies/administrator.js.map +0 -1
  116. package/dist/access_control/extra/types.d.ts +0 -11
  117. package/dist/access_control/extra/types.js +0 -3
  118. package/dist/access_control/extra/types.js.map +0 -1
  119. package/dist/controllers/utils/changePasswordUtilController.d.ts +0 -3
  120. package/dist/controllers/utils/changePasswordUtilController.js +0 -55
  121. package/dist/controllers/utils/changePasswordUtilController.js.map +0 -1
  122. package/dist/global.d.ts +0 -5
  123. package/dist/global.js +0 -12
  124. package/dist/global.js.map +0 -1
  125. package/dist/helpers/unuse/prismaHelper.d.ts +0 -2
  126. package/dist/helpers/unuse/prismaHelper.js +0 -76
  127. package/dist/helpers/unuse/prismaHelper.js.map +0 -1
  128. package/dist/lib/global.d.ts +0 -5
  129. package/dist/lib/global.js +0 -12
  130. package/dist/lib/global.js.map +0 -1
  131. package/dist/middlewares/request/initialPrisma.d.ts +0 -9
  132. package/dist/middlewares/request/initialPrisma.js +0 -41
  133. package/dist/middlewares/request/initialPrisma.js.map +0 -1
  134. package/dist/middlewares/request/unuse/initialPrisma.d.ts +0 -9
  135. package/dist/middlewares/request/unuse/initialPrisma.js +0 -41
  136. package/dist/middlewares/request/unuse/initialPrisma.js.map +0 -1
  137. package/dist/middlewares/route/bk_validateDocument.d.ts +0 -2
  138. package/dist/middlewares/route/bk_validateDocument.js +0 -34
  139. package/dist/middlewares/route/bk_validateDocument.js.map +0 -1
  140. package/dist/middlewares/route/validateSchedulerLog.d.ts +0 -5
  141. package/dist/middlewares/route/validateSchedulerLog.js +0 -20
  142. package/dist/middlewares/route/validateSchedulerLog.js.map +0 -1
  143. package/dist/routes/access_control/accessControlsRoutes.d.ts +0 -3
  144. package/dist/routes/access_control/accessControlsRoutes.js +0 -12
  145. package/dist/routes/access_control/accessControlsRoutes.js.map +0 -1
  146. package/dist/routes/utils/changePasswordUtilRoutes.d.ts +0 -2
  147. package/dist/routes/utils/changePasswordUtilRoutes.js +0 -11
  148. package/dist/routes/utils/changePasswordUtilRoutes.js.map +0 -1
  149. package/dist/schema/common/unuse/response.d.ts +0 -54
  150. package/dist/schema/common/unuse/response.js +0 -23
  151. package/dist/schema/common/unuse/response.js.map +0 -1
  152. package/dist/schema/middleware/request/validateQuery_bk250827.d.ts +0 -27
  153. package/dist/schema/middleware/request/validateQuery_bk250827.js +0 -63
  154. package/dist/schema/middleware/request/validateQuery_bk250827.js.map +0 -1
  155. package/dist/schema/middleware/route/bk_schemaDocument.d.ts +0 -10
  156. package/dist/schema/middleware/route/bk_schemaDocument.js +0 -10
  157. package/dist/schema/middleware/route/bk_schemaDocument.js.map +0 -1
  158. package/dist/schema/middleware/route/schemaSchedulerLog.d.ts +0 -4
  159. package/dist/schema/middleware/route/schemaSchedulerLog.js +0 -10
  160. package/dist/schema/middleware/route/schemaSchedulerLog.js.map +0 -1
  161. package/dist/schema/payload/utils/schemaChangePasswordUtil.d.ts +0 -53
  162. package/dist/schema/payload/utils/schemaChangePasswordUtil.js +0 -18
  163. package/dist/schema/payload/utils/schemaChangePasswordUtil.js.map +0 -1
  164. package/dist/services/utils/ChangePasswordUtilService.d.ts +0 -13
  165. package/dist/services/utils/ChangePasswordUtilService.js +0 -78
  166. package/dist/services/utils/ChangePasswordUtilService.js.map +0 -1
package/dist/app.js CHANGED
@@ -6,8 +6,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const express_1 = __importDefault(require("express"));
7
7
  const path_1 = __importDefault(require("path"));
8
8
  const routes_1 = require("./routes");
9
+ const route_specs_1 = require("./route_specs");
9
10
  const request_1 = require("./middlewares/request");
10
11
  const common_1 = require("./middlewares/common");
12
+ const route_factory_1 = require("./lib/route_factory");
11
13
  const app = (0, express_1.default)();
12
14
  // Static Routes
13
15
  app.use('/public', express_1.default.static(path_1.default.join(__dirname, '..', 'public')));
@@ -24,8 +26,24 @@ app.use(express_1.default.urlencoded({ limit: '15mb', extended: true }));
24
26
  app.use((0, request_1.validateAuthorization)({
25
27
  excludedRoutes: []
26
28
  })); // Validate the Authorization
27
- app.use(["/auth"], routes_1.authRoutes);
28
- app.use(["/access_control"], routes_1.accessControlRoutes);
29
+ // app.use(["/auth"], authRoutes)
30
+ // app.use(["/access_control"], accessControlRoutes)
31
+ // registerRoute(app, authRoutes)
32
+ // registerRoute(app, accessControlRoutes)
33
+ // routeRegistrar(app, [
34
+ // authRoutes,
35
+ // accessControlRoutes
36
+ // ], {
37
+ // basePath: `/v1`
38
+ // })
39
+ const router = (0, route_factory_1.buildRouterFromRouteSpecs)([
40
+ ...route_specs_1.authRouteSpecs,
41
+ ...route_specs_1.accessControlRouteSpecs
42
+ ], {
43
+ // basePath: "my",
44
+ });
45
+ app.use(router);
46
+ // console.log(routeRegistry)
29
47
  app.use(["/access_key"], routes_1.accessKeyRoutes);
30
48
  app.use(["/access_keys"], routes_1.accessKeysRoutes);
31
49
  app.use(["/reset_password"], routes_1.resetPasswordRoutes);
package/dist/app.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"app.js","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":"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","sourcesContent":["import express from \"express\"\nimport path from \"path\";\n\nimport {\n // fileRoutes,\n // filesRoutes,\n // ocrRoutes,\n authRoutes,\n accessControlRoutes,\n accessKeyRoutes,\n accessKeysRoutes,\n resetPasswordRoutes,\n oneTimeCodeRoutes,\n oneTimeCodesRoutes,\n userRoutes,\n usersRoutes,\n userMeRoutes,\n businessRoutes,\n businessesRoutes,\n accountRoutes,\n accountsRoutes,\n subscriptionsRoutes,\n schedulersRoutes,\n fileRoutes,\n filesRoutes,\n userBranchRoutes,\n userBranchesRoutes,\n documentRoutes,\n documentsRoutes,\n repositoryRoutes,\n repositoriesRoutes,\n itemRoutes,\n itemsRoutes,\n regionRoutes,\n regionsRoutes,\n locationRoutes,\n locationsRoutes,\n injectionFieldRoutes,\n injectionFieldsRoutes,\n // changePasswordUtilRoutes,\n accessKeyUtilRoutes\n} from \"@/routes\"\n\nimport { validateHeader, validateAuthorization, validateCors } from \"@/middlewares/request\"\nimport { errorHandler } from \"./middlewares/common\";\n\nconst app = express();\n\n// Static Routes\napp.use('/public', express.static(path.join(__dirname, '..', 'public')));\n\n// Enable CORS for all origins\napp.use(validateCors);\n\n// Register global check headers handler\napp.use(validateHeader);\n\n// Middleware\napp.use(express.json({ limit: '15mb' }));\napp.use(express.urlencoded({ limit: '15mb', extended: true }));\n\n// Initial Prisma\n// app.use(initialPrisma)\n\n// Protected Routes\napp.use(validateAuthorization({\n excludedRoutes: []\n})); // Validate the Authorization\n\napp.use([\"/auth\"], authRoutes)\napp.use([\"/access_control\"], accessControlRoutes)\napp.use([\"/access_key\"], accessKeyRoutes)\napp.use([\"/access_keys\"], accessKeysRoutes)\napp.use([\"/reset_password\"], resetPasswordRoutes)\napp.use([\"/one_time_code\"], oneTimeCodeRoutes)\napp.use([\"/one_time_codes\"], oneTimeCodesRoutes)\napp.use([\"/account\"], accountRoutes)\napp.use([\"/accounts\"], accountsRoutes)\napp.use([\"/user\"], userRoutes)\napp.use([\"/users\"], usersRoutes)\napp.use([\"/user/me\"], userMeRoutes)\napp.use([\"/user_branch\"], userBranchRoutes)\napp.use([\"/user_branches\"], userBranchesRoutes)\napp.use([\"/document\"], documentRoutes)\napp.use([\"/documents\"], documentsRoutes)\napp.use([\"/repository\"], repositoryRoutes)\napp.use([\"/repositories\"], repositoriesRoutes)\napp.use([\"/item\"], itemRoutes)\napp.use([\"/items\"], itemsRoutes)\napp.use([\"/file\"], fileRoutes)\napp.use([\"/files\"], filesRoutes)\napp.use([\"/region\"], regionRoutes)\napp.use([\"/regions\"], regionsRoutes)\napp.use([\"/location\"], locationRoutes)\napp.use([\"/locations\"], locationsRoutes)\napp.use([\"/injection_field\"], injectionFieldRoutes)\napp.use([\"/injection_fields\"], injectionFieldsRoutes)\napp.use([\"/account\"], accountRoutes)\napp.use([\"/accounts\"], accountsRoutes)\napp.use([\"/subscriptions\"], subscriptionsRoutes)\napp.use([\"/business\"], businessRoutes)\napp.use([\"/businesses\"], businessesRoutes)\napp.use([\"/scheduler\"], schedulersRoutes)\n\n// app.use([\"/utils\"], changePasswordUtilRoutes)\napp.use([\"/utils\"], accessKeyUtilRoutes)\n\n// Global error handler\napp.use(errorHandler)\n\nexport default app;"]}
1
+ {"version":3,"file":"app.js","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":"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","sourcesContent":["import express from \"express\"\nimport path from \"path\";\n\nimport {\n accessKeyRoutes,\n accessKeysRoutes,\n resetPasswordRoutes,\n oneTimeCodeRoutes,\n oneTimeCodesRoutes,\n userRoutes,\n usersRoutes,\n userMeRoutes,\n businessRoutes,\n businessesRoutes,\n accountRoutes,\n accountsRoutes,\n subscriptionsRoutes,\n schedulersRoutes,\n fileRoutes,\n filesRoutes,\n userBranchRoutes,\n userBranchesRoutes,\n documentRoutes,\n documentsRoutes,\n repositoryRoutes,\n repositoriesRoutes,\n itemRoutes,\n itemsRoutes,\n regionRoutes,\n regionsRoutes,\n locationRoutes,\n locationsRoutes,\n injectionFieldRoutes,\n injectionFieldsRoutes,\n accessKeyUtilRoutes\n} from \"@/routes\"\n\nimport {\n authRouteSpecs,\n accessControlRouteSpecs\n} from \"@/route_specs\"\n\nimport { validateHeader, validateAuthorization, validateCors } from \"@/middlewares/request\"\nimport { errorHandler } from \"./middlewares/common\";\nimport { buildRouterFromRouteSpecs, routeRegistrar, routeRegistry } from \"@/lib/route_factory\";\n\nconst app = express();\n\n// Static Routes\napp.use('/public', express.static(path.join(__dirname, '..', 'public')));\n\n// Enable CORS for all origins\napp.use(validateCors);\n\n// Register global check headers handler\napp.use(validateHeader);\n\n// Middleware\napp.use(express.json({ limit: '15mb' }));\napp.use(express.urlencoded({ limit: '15mb', extended: true }));\n\n// Initial Prisma\n// app.use(initialPrisma)\n\n// Protected Routes\napp.use(validateAuthorization({\n excludedRoutes: []\n})); // Validate the Authorization\n\n// app.use([\"/auth\"], authRoutes)\n// app.use([\"/access_control\"], accessControlRoutes)\n\n// registerRoute(app, authRoutes)\n// registerRoute(app, accessControlRoutes)\n\n// routeRegistrar(app, [\n// authRoutes,\n// accessControlRoutes\n// ], {\n// basePath: `/v1`\n// })\n\nconst router = buildRouterFromRouteSpecs(\n [\n ...authRouteSpecs,\n ...accessControlRouteSpecs\n ],\n {\n // basePath: \"my\",\n }\n)\napp.use(router)\n\n// console.log(routeRegistry)\n\napp.use([\"/access_key\"], accessKeyRoutes)\napp.use([\"/access_keys\"], accessKeysRoutes)\napp.use([\"/reset_password\"], resetPasswordRoutes)\napp.use([\"/one_time_code\"], oneTimeCodeRoutes)\napp.use([\"/one_time_codes\"], oneTimeCodesRoutes)\napp.use([\"/account\"], accountRoutes)\napp.use([\"/accounts\"], accountsRoutes)\napp.use([\"/user\"], userRoutes)\napp.use([\"/users\"], usersRoutes)\napp.use([\"/user/me\"], userMeRoutes)\napp.use([\"/user_branch\"], userBranchRoutes)\napp.use([\"/user_branches\"], userBranchesRoutes)\napp.use([\"/document\"], documentRoutes)\napp.use([\"/documents\"], documentsRoutes)\napp.use([\"/repository\"], repositoryRoutes)\napp.use([\"/repositories\"], repositoriesRoutes)\napp.use([\"/item\"], itemRoutes)\napp.use([\"/items\"], itemsRoutes)\napp.use([\"/file\"], fileRoutes)\napp.use([\"/files\"], filesRoutes)\napp.use([\"/region\"], regionRoutes)\napp.use([\"/regions\"], regionsRoutes)\napp.use([\"/location\"], locationRoutes)\napp.use([\"/locations\"], locationsRoutes)\napp.use([\"/injection_field\"], injectionFieldRoutes)\napp.use([\"/injection_fields\"], injectionFieldsRoutes)\napp.use([\"/account\"], accountRoutes)\napp.use([\"/accounts\"], accountsRoutes)\napp.use([\"/subscriptions\"], subscriptionsRoutes)\napp.use([\"/business\"], businessRoutes)\napp.use([\"/businesses\"], businessesRoutes)\napp.use([\"/scheduler\"], schedulersRoutes)\n\n// app.use([\"/utils\"], changePasswordUtilRoutes)\napp.use([\"/utils\"], accessKeyUtilRoutes)\n\n// Global error handler\napp.use(errorHandler)\n\nexport default app;"]}
@@ -4,6 +4,7 @@ exports.deleteAccessControlRoles = exports.listAccessControlRoles = exports.upda
4
4
  const utils_1 = require("../../utils");
5
5
  const services_1 = require("../../services");
6
6
  const payload_1 = require("../../schema/payload");
7
+ const middleware_1 = require("../../schema/middleware");
7
8
  const getRootName = (toSingular) => {
8
9
  let rootName = toSingular ? "access_control_role" : "access_control_roles";
9
10
  return rootName;
@@ -13,11 +14,14 @@ const getAccessControlRole = async (req, res, next) => {
13
14
  try {
14
15
  const { roleId } = req.params;
15
16
  // const requestQuery = req.query as unknown as QueryList;
17
+ let request = middleware_1.schemaRouteAccessControlGetRole.parse({
18
+ roleId
19
+ });
16
20
  const accessControlRoleService = (0, services_1.AccessControlRoleService)({
17
21
  ...(0, utils_1.getDefaultServiceProps)(req),
18
22
  // userType: requestUserType
19
23
  });
20
- const data = await accessControlRoleService.getAccessControlRole({ id: Number(roleId) });
24
+ const data = await accessControlRoleService.getAccessControlRole({ id: Number(request.roleId) });
21
25
  return (0, utils_1.sendSuccess)(res, data, "Retrieved successfully", getRootName(true));
22
26
  }
23
27
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"accessControlRoleController.js","sourceRoot":"","sources":["../../../src/controllers/access_control/accessControlRoleController.ts"],"names":[],"mappings":"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","sourcesContent":["import { Request, Response, NextFunction } from \"express\";\n\nimport { getDefaultServiceProps, sendSuccess, sendError, HTTP_STATUS } from \"@/utils\"\n\nimport { QueryList } from \"@/schema/middleware/route\";\n\nimport { AccessControlRoleService, AccessControlRoleCreateProps, UserType, AccessControlRoleUpdateProps } from \"@/services\"\nimport {\n schemaAccessControlRoleCreatePayload,\n schemaAccessControlRoleUpdatePayload,\n schemaAccessControlRoleDeletePayload,\n} from \"@/schema/payload\";\n\nconst getRootName = (toSingular: boolean) => {\n\n let rootName = toSingular ? \"access_control_role\" : \"access_control_roles\";\n\n return rootName\n}\n\n/** access_control/role/:roleId : get role */\nexport const getAccessControlRole = async (req: Request, res: Response, next: NextFunction): Promise<any> => {\n try {\n\n const { roleId } = req.params;\n // const requestQuery = req.query as unknown as QueryList;\n\n const accessControlRoleService = AccessControlRoleService({\n ...getDefaultServiceProps(req),\n // userType: requestUserType\n })\n\n const data = await accessControlRoleService.getAccessControlRole({ id: Number(roleId) })\n\n return sendSuccess(res, data, \"Retrieved successfully\", getRootName(true));\n\n } catch (error: any) {\n next(error)\n }\n}\n\n/** access_control/role : create role */\nexport const createAccessControlRole = async (req: Request, res: Response, next: NextFunction): Promise<void> => {\n try {\n\n const accessControlRoleService = AccessControlRoleService({\n ...getDefaultServiceProps(req),\n })\n\n let response: any = {}\n\n let reqScope = req.body.scope\n let reqPayload = req.body.payload\n\n let request = schemaAccessControlRoleCreatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n role: {\n name: reqPayload.role.name,\n description: reqPayload.role.description,\n userType: reqPayload.role.user_type,\n permissionKeys: reqPayload.role.permission_keys,\n status: reqPayload.role.status\n }\n }\n })\n\n let payload: AccessControlRoleCreateProps = {\n // userType: requestUserType,\n data: {\n name: request.payload.role.name,\n userType: request.payload.role.userType as UserType,\n description: request.payload.role.description,\n permissionKeys: request.payload.role.permissionKeys,\n status: Boolean(request.payload.role.status)\n }\n }\n\n response = {\n [`${getRootName(true)}`]: await accessControlRoleService.createAccessControlRole(payload)\n }\n\n sendSuccess(res, response, `Role created successfully`)\n\n } catch (error: any) {\n next(error)\n }\n};\n\n/** access_control/role/:roleId : update role */\nexport const updateAccessControlRole = async (req: Request, res: Response, next: NextFunction): Promise<void> => {\n try {\n\n const { roleId } = req.params;\n\n const accessControlRoleService = AccessControlRoleService({\n ...getDefaultServiceProps(req),\n })\n\n let response: any = {}\n\n let reqScope = req.body.scope\n let reqPayload = req.body.payload\n\n\n let request = schemaAccessControlRoleUpdatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n role: {\n name: reqPayload.role.name,\n description: reqPayload.role.description,\n // userType: reqPayload.role.user_type,\n permissionKeys: reqPayload.role.permission_keys,\n status: reqPayload.role.status\n }\n }\n })\n\n let payload: AccessControlRoleUpdateProps = {\n roleId: Number(roleId),\n data: {\n name: request.payload.role.name,\n description: request.payload.role.description,\n // userType: request.payload.role.userType as UserType,\n permissionKeys: request.payload.role.permissionKeys,\n status: Boolean(request.payload.role.status)\n }\n }\n\n response = {\n [`${getRootName(true)}`]: await accessControlRoleService.updateAccessControlRole(payload)\n }\n\n sendSuccess(res, response, `Role updated successfully`)\n\n } catch (error: any) {\n next(error)\n }\n};\n\n/** access_control/roles : list roles */\nexport const listAccessControlRoles = async (req: Request, res: Response, next: NextFunction): Promise<any> => {\n\n try {\n\n const requestQuery = req.query as unknown as QueryList;\n\n const accessControlRoleService = AccessControlRoleService({\n ...getDefaultServiceProps(req),\n })\n\n const { data, total } = await accessControlRoleService.listAccessControlRoles({\n ...requestQuery\n });\n\n let response = {\n [`${getRootName(false)}`]: data,\n total,\n }\n\n return sendSuccess(res, response, \"Retrieved successfully\");\n\n } catch (error: any) {\n next(error)\n }\n};\n\n/** access_control/roles/delete : delete roles */\nexport const deleteAccessControlRoles = async (req: Request, res: Response, next: NextFunction): Promise<any> => {\n\n try {\n\n const request = schemaAccessControlRoleDeletePayload.parse(req.body)\n\n const accessControlRoleService = AccessControlRoleService({\n ...getDefaultServiceProps(req),\n })\n\n const payload = {\n roleIds: request.payload.ids.map(i => BigInt(i))\n }\n\n const data = await accessControlRoleService.removeAccessControlRoles(payload);\n\n return sendSuccess(res, data, \"Deleted\", getRootName(false));\n\n } catch (error: any) {\n next(error)\n }\n};\n"]}
1
+ {"version":3,"file":"accessControlRoleController.js","sourceRoot":"","sources":["../../../src/controllers/access_control/accessControlRoleController.ts"],"names":[],"mappings":"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","sourcesContent":["import { Request, Response, NextFunction } from \"express\";\n\nimport { getDefaultServiceProps, sendSuccess, sendError, HTTP_STATUS } from \"@/utils\"\n\nimport { QueryList } from \"@/schema/middleware/route\";\n\nimport { AccessControlRoleService, AccessControlRoleCreateProps, UserType, AccessControlRoleUpdateProps } from \"@/services\"\nimport {\n schemaAccessControlRoleCreatePayload,\n schemaAccessControlRoleUpdatePayload,\n schemaAccessControlRoleDeletePayload\n} from \"@/schema/payload\";\nimport {\n schemaRouteAccessControlGetRole\n} from \"@/schema/middleware\";\n\nconst getRootName = (toSingular: boolean) => {\n\n let rootName = toSingular ? \"access_control_role\" : \"access_control_roles\";\n\n return rootName\n}\n\n/** access_control/role/:roleId : get role */\nexport const getAccessControlRole = async (req: Request, res: Response, next: NextFunction): Promise<any> => {\n try {\n\n const { roleId } = req.params;\n // const requestQuery = req.query as unknown as QueryList;\n\n let request = schemaRouteAccessControlGetRole.parse({\n roleId\n })\n\n const accessControlRoleService = AccessControlRoleService({\n ...getDefaultServiceProps(req),\n // userType: requestUserType\n })\n\n const data = await accessControlRoleService.getAccessControlRole({ id: Number(request.roleId) })\n\n return sendSuccess(res, data, \"Retrieved successfully\", getRootName(true));\n\n } catch (error: any) {\n next(error)\n }\n}\n\n/** access_control/role : create role */\nexport const createAccessControlRole = async (req: Request, res: Response, next: NextFunction): Promise<void> => {\n try {\n\n const accessControlRoleService = AccessControlRoleService({\n ...getDefaultServiceProps(req),\n })\n\n let response: any = {}\n\n let reqScope = req.body.scope\n let reqPayload = req.body.payload\n\n let request = schemaAccessControlRoleCreatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n role: {\n name: reqPayload.role.name,\n description: reqPayload.role.description,\n userType: reqPayload.role.user_type,\n permissionKeys: reqPayload.role.permission_keys,\n status: reqPayload.role.status\n }\n }\n })\n\n let payload: AccessControlRoleCreateProps = {\n // userType: requestUserType,\n data: {\n name: request.payload.role.name,\n userType: request.payload.role.userType as UserType,\n description: request.payload.role.description,\n permissionKeys: request.payload.role.permissionKeys,\n status: Boolean(request.payload.role.status)\n }\n }\n\n response = {\n [`${getRootName(true)}`]: await accessControlRoleService.createAccessControlRole(payload)\n }\n\n sendSuccess(res, response, `Role created successfully`)\n\n } catch (error: any) {\n next(error)\n }\n};\n\n/** access_control/role/:roleId : update role */\nexport const updateAccessControlRole = async (req: Request, res: Response, next: NextFunction): Promise<void> => {\n try {\n\n const { roleId } = req.params;\n\n const accessControlRoleService = AccessControlRoleService({\n ...getDefaultServiceProps(req),\n })\n\n let response: any = {}\n\n let reqScope = req.body.scope\n let reqPayload = req.body.payload\n\n\n let request = schemaAccessControlRoleUpdatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n role: {\n name: reqPayload.role.name,\n description: reqPayload.role.description,\n // userType: reqPayload.role.user_type,\n permissionKeys: reqPayload.role.permission_keys,\n status: reqPayload.role.status\n }\n }\n })\n\n let payload: AccessControlRoleUpdateProps = {\n roleId: Number(roleId),\n data: {\n name: request.payload.role.name,\n description: request.payload.role.description,\n // userType: request.payload.role.userType as UserType,\n permissionKeys: request.payload.role.permissionKeys,\n status: Boolean(request.payload.role.status)\n }\n }\n\n response = {\n [`${getRootName(true)}`]: await accessControlRoleService.updateAccessControlRole(payload)\n }\n\n sendSuccess(res, response, `Role updated successfully`)\n\n } catch (error: any) {\n next(error)\n }\n};\n\n/** access_control/roles : list roles */\nexport const listAccessControlRoles = async (req: Request, res: Response, next: NextFunction): Promise<any> => {\n\n try {\n\n const requestQuery = req.query as unknown as QueryList;\n\n const accessControlRoleService = AccessControlRoleService({\n ...getDefaultServiceProps(req),\n })\n\n const { data, total } = await accessControlRoleService.listAccessControlRoles({\n ...requestQuery\n });\n\n let response = {\n [`${getRootName(false)}`]: data,\n total,\n }\n\n return sendSuccess(res, response, \"Retrieved successfully\");\n\n } catch (error: any) {\n next(error)\n }\n};\n\n/** access_control/roles/delete : delete roles */\nexport const deleteAccessControlRoles = async (req: Request, res: Response, next: NextFunction): Promise<any> => {\n\n try {\n\n const request = schemaAccessControlRoleDeletePayload.parse(req.body)\n\n const accessControlRoleService = AccessControlRoleService({\n ...getDefaultServiceProps(req),\n })\n\n const payload = {\n roleIds: request.payload.ids.map(i => BigInt(i))\n }\n\n const data = await accessControlRoleService.removeAccessControlRoles(payload);\n\n return sendSuccess(res, data, \"Deleted\", getRootName(false));\n\n } catch (error: any) {\n next(error)\n }\n};\n"]}
@@ -127,7 +127,7 @@ Object.defineProperty(exports, "listSchedulerRequests", { enumerable: true, get:
127
127
  Object.defineProperty(exports, "deleteSchedulerRequests", { enumerable: true, get: function () { return schedulerRequestController_1.deleteSchedulerRequests; } });
128
128
  var schedulerSqlController_1 = require("../controllers/scheduler/schedulerSqlController");
129
129
  Object.defineProperty(exports, "executeSchedulerSql", { enumerable: true, get: function () { return schedulerSqlController_1.executeSchedulerSql; } });
130
- // export { changePasswordUtil } from '../controllers/utils/changePasswordUtilController';
130
+ // export { changePasswordUtil } from '@/controllers/utils/changePasswordUtilController';
131
131
  var accessKeyUtilController_1 = require("../controllers/utils/accessKeyUtilController");
132
132
  Object.defineProperty(exports, "validateAccessKeyUtil", { enumerable: true, get: function () { return accessKeyUtilController_1.validateAccessKeyUtil; } });
133
133
  Object.defineProperty(exports, "getAccountOwnerAccessKeyUtil", { enumerable: true, get: function () { return accessKeyUtilController_1.getAccountOwnerAccessKeyUtil; } });
@@ -80,7 +80,7 @@ const createItem = async (req, res, next) => {
80
80
  itemDescription: reqPayload.item.item_description,
81
81
  remark: reqPayload.item.remark,
82
82
  cost: reqPayload.item.cost,
83
- uomPrice: reqPayload.item.uom_price,
83
+ itemPrice: reqPayload.item.item_price,
84
84
  floorPrice: reqPayload.item.floor_price,
85
85
  grossWeight: reqPayload.item.gross_weight,
86
86
  volumeWeight: reqPayload.item.volume_weight,
@@ -113,7 +113,7 @@ const createItem = async (req, res, next) => {
113
113
  itemDescription: request.payload.item.itemDescription,
114
114
  remark: request.payload.item.remark,
115
115
  cost: request.payload.item.cost,
116
- uomPrice: request.payload.item.uomPrice,
116
+ itemPrice: request.payload.item.itemPrice,
117
117
  floorPrice: request.payload.item.floorPrice,
118
118
  grossWeight: request.payload.item.grossWeight,
119
119
  volumeWeight: request.payload.item.volumeWeight,
@@ -145,7 +145,7 @@ const createItem = async (req, res, next) => {
145
145
  itemDescription: reqPayload.item.item_description,
146
146
  remark: reqPayload.item.remark,
147
147
  cost: reqPayload.item.cost,
148
- uomPrice: reqPayload.item.uom_price,
148
+ itemPrice: reqPayload.item.item_price,
149
149
  floorPrice: reqPayload.item.floor_price,
150
150
  grossWeight: reqPayload.item.gross_weight,
151
151
  volumeWeight: reqPayload.item.volume_weight,
@@ -169,7 +169,7 @@ const createItem = async (req, res, next) => {
169
169
  itemDescription: request.payload.item.itemDescription,
170
170
  remark: request.payload.item.remark,
171
171
  cost: request.payload.item.cost,
172
- uomPrice: request.payload.item.uomPrice,
172
+ itemPrice: request.payload.item.itemPrice,
173
173
  floorPrice: request.payload.item.floorPrice,
174
174
  grossWeight: request.payload.item.grossWeight,
175
175
  volumeWeight: request.payload.item.volumeWeight,
@@ -195,6 +195,7 @@ const createItem = async (req, res, next) => {
195
195
  item_category: {
196
196
  parent_category_id: reqPayload.item_category.parent_category_id,
197
197
  name: reqPayload.item_category.name,
198
+ code: reqPayload.item_category.code,
198
199
  description: reqPayload.item_category.description,
199
200
  status: reqPayload.item_category.status
200
201
  }
@@ -207,6 +208,7 @@ const createItem = async (req, res, next) => {
207
208
  description: request.payload.item_category.description,
208
209
  status: Boolean(request.payload.item_category.status),
209
210
  name: request.payload.item_category.name,
211
+ code: request.payload.item_category.code,
210
212
  parentCategoryId: Number(request.payload.item_category.parent_category_id)
211
213
  }
212
214
  }
@@ -224,6 +226,7 @@ const createItem = async (req, res, next) => {
224
226
  payload: {
225
227
  item_brand: {
226
228
  name: reqPayload.item_brand.name,
229
+ code: reqPayload.item_brand.code,
227
230
  description: reqPayload.item_brand.description,
228
231
  status: reqPayload.item_brand.status
229
232
  }
@@ -233,9 +236,10 @@ const createItem = async (req, res, next) => {
233
236
  itemType: requestItemType,
234
237
  data: {
235
238
  brand: {
239
+ name: request.payload.item_brand.name,
240
+ code: request.payload.item_brand.code,
236
241
  description: request.payload.item_brand.description,
237
242
  status: Boolean(request.payload.item_brand.status),
238
- name: request.payload.item_brand.name
239
243
  }
240
244
  }
241
245
  };
@@ -252,6 +256,7 @@ const createItem = async (req, res, next) => {
252
256
  payload: {
253
257
  item_uom: {
254
258
  name: reqPayload.item_uom.name,
259
+ code: reqPayload.item_uom.code,
255
260
  description: reqPayload.item_uom.description,
256
261
  status: reqPayload.item_uom.status,
257
262
  metric_type: reqPayload.item_uom.metric_type,
@@ -264,9 +269,10 @@ const createItem = async (req, res, next) => {
264
269
  itemType: requestItemType,
265
270
  data: {
266
271
  uom: {
272
+ name: request.payload.item_uom.name,
273
+ code: request.payload.item_uom.code,
267
274
  description: request.payload.item_uom.description,
268
275
  status: Boolean(request.payload.item_uom.status),
269
- name: request.payload.item_uom.name,
270
276
  metricType: reqPayload.item_uom.metric_type,
271
277
  metricTypeDisplayName: reqPayload.item_uom.metric_type_display_name,
272
278
  decimalDigit: reqPayload.item_uom.decimal_digit,
@@ -351,7 +357,7 @@ const updateItem = async (req, res, next) => {
351
357
  itemDescription: reqPayload.item.item_description,
352
358
  remark: reqPayload.item.remark,
353
359
  cost: reqPayload.item.cost,
354
- uomPrice: reqPayload.item.uom_price,
360
+ itemPrice: reqPayload.item.item_price,
355
361
  floorPrice: reqPayload.item.floor_price,
356
362
  grossWeight: reqPayload.item.gross_weight,
357
363
  volumeWeight: reqPayload.item.volume_weight,
@@ -376,7 +382,7 @@ const updateItem = async (req, res, next) => {
376
382
  itemDescription: request.payload.item.itemDescription,
377
383
  remark: request.payload.item.remark,
378
384
  cost: request.payload.item.cost,
379
- uomPrice: request.payload.item.uomPrice,
385
+ itemPrice: request.payload.item.itemPrice,
380
386
  floorPrice: request.payload.item.floorPrice,
381
387
  grossWeight: request.payload.item.grossWeight,
382
388
  volumeWeight: request.payload.item.volumeWeight,
@@ -402,6 +408,7 @@ const updateItem = async (req, res, next) => {
402
408
  item_category: {
403
409
  parent_category_id: reqPayload.item_category.parent_category_id,
404
410
  name: reqPayload.item_category.name,
411
+ ...(reqPayload.item_category?.code ? { code: reqPayload.item_category.code } : {}),
405
412
  description: reqPayload.item_category.description,
406
413
  status: reqPayload.item_category.status
407
414
  }
@@ -415,6 +422,7 @@ const updateItem = async (req, res, next) => {
415
422
  description: request.payload.item_category.description,
416
423
  status: Boolean(request.payload.item_category.status),
417
424
  name: request.payload.item_category.name,
425
+ ...(request.payload.item_category?.code ? { code: request.payload.item_category.code } : {}),
418
426
  parentCategoryId: Number(request.payload.item_category.parent_category_id)
419
427
  }
420
428
  }
@@ -432,6 +440,7 @@ const updateItem = async (req, res, next) => {
432
440
  payload: {
433
441
  item_brand: {
434
442
  name: reqPayload.item_brand.name,
443
+ ...(reqPayload.item_brand?.code ? { code: reqPayload.item_brand.code } : {}),
435
444
  description: reqPayload.item_brand.description,
436
445
  status: reqPayload.item_brand.status
437
446
  }
@@ -442,9 +451,10 @@ const updateItem = async (req, res, next) => {
442
451
  itemType: requestItemType,
443
452
  data: {
444
453
  brand: {
454
+ name: request.payload.item_brand.name,
455
+ ...(request.payload.item_brand?.code ? { code: request.payload.item_brand.code } : {}),
445
456
  description: request.payload.item_brand.description,
446
457
  status: Boolean(request.payload.item_brand.status),
447
- name: request.payload.item_brand.name,
448
458
  }
449
459
  }
450
460
  };
@@ -461,6 +471,7 @@ const updateItem = async (req, res, next) => {
461
471
  payload: {
462
472
  item_uom: {
463
473
  name: reqPayload.item_uom.name,
474
+ ...(reqPayload.item_uom?.code ? { code: reqPayload.item_uom.code } : {}),
464
475
  description: reqPayload.item_uom.description,
465
476
  status: reqPayload.item_uom.status,
466
477
  metric_type: reqPayload.item_uom.metric_type,
@@ -474,9 +485,10 @@ const updateItem = async (req, res, next) => {
474
485
  itemType: requestItemType,
475
486
  data: {
476
487
  uom: {
488
+ name: request.payload.item_uom.name,
489
+ ...(request.payload.item_uom?.code ? { code: request.payload.item_uom.code } : {}),
477
490
  description: request.payload.item_uom.description,
478
491
  status: Boolean(request.payload.item_uom.status),
479
- name: request.payload.item_uom.name,
480
492
  metricType: reqPayload.item_uom.metric_type,
481
493
  metricTypeDisplayName: reqPayload.item_uom.metric_type_display_name,
482
494
  decimalDigit: reqPayload.item_uom.decimal_digit,
@@ -1 +1 @@
1
- {"version":3,"file":"itemController.js","sourceRoot":"","sources":["../../../src/controllers/item/itemController.ts"],"names":[],"mappings":";;;AAoCA,0BAmBC;AArDD,mCAAqF;AAErF,yCAAsG;AACtG,8CAY0B;AAG1B,MAAM,WAAW,GAAG,CAAC,eAA6C,EAAE,UAAmB,EAAE,EAAE;IAEvF,IAAI,QAAQ,GAAQ,EAAE,CAAA;IAEtB,QAAQ,eAAe,EAAE,CAAC;QACtB,KAAK,MAAM;YAAE,QAAQ,GAAG,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;YAAC,MAAM;QAC7D,KAAK,SAAS;YAAE,QAAQ,GAAG,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC;YAAC,MAAM;QACtE,KAAK,UAAU;YAAE,QAAQ,GAAG,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,YAAY,CAAC;YAAC,MAAM;QAC1E,KAAK,OAAO;YAAE,QAAQ,GAAG,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC;YAAC,MAAM;QAChE,KAAK,KAAK;YAAE,QAAQ,GAAG,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;YAAC,MAAM;IAC9D,CAAC;IAED,OAAO,QAAQ,CAAA;AACnB,CAAC,CAAA;AAED,wCAAwC;AACjC,KAAK,UAAU,OAAO,CAAC,GAAY,EAAE,GAAa,EAAE,IAAkB;IACzE,IAAI,CAAC;QAED,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;QACxC,MAAM,YAAY,GAAG,GAAG,CAAC,KAA6B,CAAC;QACvD,MAAM,eAAe,GAAG,QAAwC,CAAC;QAEjE,MAAM,WAAW,GAAG,IAAA,sBAAW,EAAC;YAC5B,GAAG,IAAA,8BAAsB,EAAC,GAAG,CAAC;YAC9B,QAAQ,EAAE,eAAe;SAC5B,CAAC,CAAA;QAEF,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,YAAY,CAAC,SAAS,EAAE,CAAC,CAAA;QAEjG,OAAO,IAAA,mBAAW,EAAC,GAAG,EAAE,IAAI,EAAE,wBAAwB,EAAE,WAAW,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC,CAAC;IAEhG,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QAClB,IAAI,CAAC,KAAK,CAAC,CAAA;IACf,CAAC;AACL,CAAC;AAED,yBAAyB;AAClB,MAAM,UAAU,GAAG,KAAK,EAAE,GAAY,EAAE,GAAa,EAAE,IAAkB,EAAiB,EAAE;IAC/F,IAAI,CAAC;QAED,MAAM,eAAe,GAAG,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,MAAsC,CAAA;QAE7E,MAAM,WAAW,GAAG,IAAA,sBAAW,EAAC;YAC5B,GAAG,IAAA,8BAAsB,EAAC,GAAG,CAAC;YAC9B,QAAQ,EAAE,eAAe;SAC5B,CAAC,CAAA;QAEF,IAAI,QAAQ,GAAQ,EAAE,CAAA;QAEtB,IAAI,QAAQ,GAAG,GAAG,CAAC,IAAI,CAAC,KAAK,CAAA;QAC7B,IAAI,UAAU,GAAG,GAAG,CAAC,IAAI,CAAC,OAAO,CAAA;QAEjC,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;YAEhC,IAAI,OAAO,GAAG,wCAA8B,CAAC,KAAK,CAAC;gBAC/C,KAAK,EAAE;oBACH,MAAM,EAAE,QAAQ,CAAC,MAAM;oBACvB,MAAM,EAAE,QAAQ,CAAC,MAAM;iBAC1B;gBACD,OAAO,EAAE;oBACL,OAAO,EAAE;wBACL,WAAW,EAAE,UAAU,CAAC,OAAO,CAAC,YAAY;wBAC5C,WAAW,EAAE,UAAU,CAAC,OAAO,CAAC,YAAY;wBAC5C,KAAK,EAAE,UAAU,CAAC,OAAO,CAAC,KAAK;wBAC/B,WAAW,EAAE,UAAU,CAAC,OAAO,CAAC,WAAW;wBAC3C,UAAU,EAAE,UAAU,CAAC,OAAO,CAAC,WAAW;wBAC1C,OAAO,EAAE,UAAU,CAAC,OAAO,CAAC,QAAQ;wBACpC,OAAO,EAAE,UAAU,CAAC,OAAO,CAAC,OAAO;wBACnC,MAAM,EAAE,UAAU,CAAC,OAAO,CAAC,MAAM;qBACpC;oBACD,IAAI,EAAE;wBACF,SAAS,EAAE,UAAU,CAAC,IAAI,CAAC,UAAU;wBACrC,QAAQ,EAAE,UAAU,CAAC,IAAI,CAAC,SAAS;wBACnC,KAAK,EAAE,UAAU,CAAC,IAAI,CAAC,MAAM;wBAC7B,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,MAAM;wBAC9B,SAAS,EAAE,UAAU,CAAC,IAAI,CAAC,UAAU;wBACrC,eAAe,EAAE,UAAU,CAAC,IAAI,CAAC,gBAAgB;wBACjD,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,MAAM;wBAC9B,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI;wBAC1B,QAAQ,EAAE,UAAU,CAAC,IAAI,CAAC,SAAS;wBACnC,UAAU,EAAE,UAAU,CAAC,IAAI,CAAC,WAAW;wBACvC,WAAW,EAAE,UAAU,CAAC,IAAI,CAAC,YAAY;wBACzC,YAAY,EAAE,UAAU,CAAC,IAAI,CAAC,aAAa;wBAC3C,SAAS,EAAE,UAAU,CAAC,IAAI,CAAC,UAAU;wBACrC,cAAc,EAAE,UAAU,CAAC,IAAI,CAAC,eAAe;wBAC/C,eAAe,EAAE,UAAU,CAAC,IAAI,CAAC,gBAAgB;wBACjD,eAAe,EAAE,UAAU,CAAC,IAAI,CAAC,gBAAgB;wBACjD,GAAG,EAAE,UAAU,CAAC,IAAI,CAAC,GAAG;qBAC3B;iBACJ;aACJ,CAAC,CAAA;YAEF,IAAI,OAAO,GAAoB;gBAC3B,QAAQ,EAAE,eAAe;gBACzB,IAAI,EAAE;oBACF,OAAO,EAAE;wBACL,WAAW,EAAE,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW;wBAChD,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO;wBACxC,UAAU,EAAE,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU;wBAC9C,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK;wBACpC,WAAW,EAAE,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW;wBAChD,WAAW,EAAE,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW;wBAChD,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC;wBAC/C,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO;qBAC3C;oBACD,IAAI,EAAE;wBACF,QAAQ,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ;wBACvC,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK;wBACjC,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC;wBAE5C,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC;wBAClD,eAAe,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe;wBACrD,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM;wBACnC,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI;wBAC/B,QAAQ,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ;wBAEvC,UAAU,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU;wBAC3C,WAAW,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW;wBAC7C,YAAY,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY;wBAC/C,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS;wBACzC,cAAc,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc;wBAEnD,eAAe,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe;wBACrD,eAAe,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe;wBACrD,GAAG,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG;qBAChC;iBACJ;aACJ,CAAA;YAED,QAAQ,GAAG;gBACP,CAAC,GAAG,WAAW,CAAC,eAAe,EAAE,IAAI,CAAC,EAAE,CAAC,EAAE,MAAM,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC;aACnF,CAAA;QACL,CAAC;QAED,IAAI,eAAe,KAAK,MAAM,EAAE,CAAC;YAE7B,IAAI,OAAO,GAAG,qCAA2B,CAAC,KAAK,CAAC;gBAC5C,KAAK,EAAE;oBACH,MAAM,EAAE,QAAQ,CAAC,MAAM;oBACvB,MAAM,EAAE,QAAQ,CAAC,MAAM;iBAC1B;gBACD,OAAO,EAAE;oBACL,IAAI,EAAE;wBACF,SAAS,EAAE,UAAU,CAAC,IAAI,CAAC,UAAU;wBACrC,QAAQ,EAAE,UAAU,CAAC,IAAI,CAAC,SAAS;wBACnC,KAAK,EAAE,UAAU,CAAC,IAAI,CAAC,MAAM;wBAC7B,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,MAAM;wBAC9B,SAAS,EAAE,UAAU,CAAC,IAAI,CAAC,UAAU;wBACrC,eAAe,EAAE,UAAU,CAAC,IAAI,CAAC,gBAAgB;wBACjD,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,MAAM;wBAC9B,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI;wBAC1B,QAAQ,EAAE,UAAU,CAAC,IAAI,CAAC,SAAS;wBACnC,UAAU,EAAE,UAAU,CAAC,IAAI,CAAC,WAAW;wBACvC,WAAW,EAAE,UAAU,CAAC,IAAI,CAAC,YAAY;wBACzC,YAAY,EAAE,UAAU,CAAC,IAAI,CAAC,aAAa;wBAC3C,SAAS,EAAE,UAAU,CAAC,IAAI,CAAC,UAAU;wBACrC,cAAc,EAAE,UAAU,CAAC,IAAI,CAAC,eAAe;wBAC/C,eAAe,EAAE,UAAU,CAAC,IAAI,CAAC,gBAAgB;wBACjD,eAAe,EAAE,UAAU,CAAC,IAAI,CAAC,gBAAgB;wBACjD,GAAG,EAAE,UAAU,CAAC,IAAI,CAAC,GAAG;qBAC3B;iBACJ;aACJ,CAAC,CAAA;YAEF,IAAI,OAAO,GAAoB;gBAC3B,QAAQ,EAAE,eAAe;gBACzB,IAAI,EAAE;oBACF,IAAI,EAAE;wBACF,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS;wBACzC,QAAQ,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ;wBACvC,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK;wBACjC,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC;wBAE5C,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC;wBAClD,eAAe,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe;wBACrD,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM;wBACnC,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI;wBAC/B,QAAQ,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ;wBAEvC,UAAU,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU;wBAC3C,WAAW,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW;wBAC7C,YAAY,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY;wBAC/C,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS;wBACzC,cAAc,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc;wBAEnD,eAAe,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe;wBACrD,eAAe,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe;wBACrD,GAAG,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG;qBAChC;iBACJ;aACJ,CAAA;YAED,QAAQ,GAAG;gBACP,CAAC,GAAG,WAAW,CAAC,eAAe,EAAE,IAAI,CAAC,EAAE,CAAC,EAAE,MAAM,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC;aACnF,CAAA;QACL,CAAC;QAED,IAAI,eAAe,KAAK,UAAU,EAAE,CAAC;YAEjC,IAAI,OAAO,GAAG,yCAA+B,CAAC,KAAK,CAAC;gBAChD,KAAK,EAAE;oBACH,MAAM,EAAE,QAAQ,CAAC,MAAM;oBACvB,MAAM,EAAE,QAAQ,CAAC,MAAM;iBAC1B;gBACD,OAAO,EAAE;oBACL,aAAa,EAAE;wBACX,kBAAkB,EAAE,UAAU,CAAC,aAAa,CAAC,kBAAkB;wBAC/D,IAAI,EAAE,UAAU,CAAC,aAAa,CAAC,IAAI;wBACnC,WAAW,EAAE,UAAU,CAAC,aAAa,CAAC,WAAW;wBACjD,MAAM,EAAE,UAAU,CAAC,aAAa,CAAC,MAAM;qBAC1C;iBACJ;aACJ,CAAC,CAAA;YAEF,IAAI,OAAO,GAAoB;gBAC3B,QAAQ,EAAE,eAAe;gBACzB,IAAI,EAAE;oBACF,QAAQ,EAAE;wBACN,WAAW,EAAE,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,WAAW;wBACtD,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC;wBACrD,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI;wBACxC,gBAAgB,EAAE,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,kBAAkB,CAAC;qBAC7E;iBACJ;aACJ,CAAA;YAED,QAAQ,GAAG;gBACP,CAAC,GAAG,WAAW,CAAC,eAAe,EAAE,IAAI,CAAC,EAAE,CAAC,EAAE,MAAM,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC;aACnF,CAAA;QACL,CAAC;QAED,IAAI,eAAe,KAAK,OAAO,EAAE,CAAC;YAE9B,IAAI,OAAO,GAAG,sCAA4B,CAAC,KAAK,CAAC;gBAC7C,KAAK,EAAE;oBACH,MAAM,EAAE,QAAQ,CAAC,MAAM;oBACvB,MAAM,EAAE,QAAQ,CAAC,MAAM;iBAC1B;gBACD,OAAO,EAAE;oBACL,UAAU,EAAE;wBACR,IAAI,EAAE,UAAU,CAAC,UAAU,CAAC,IAAI;wBAChC,WAAW,EAAE,UAAU,CAAC,UAAU,CAAC,WAAW;wBAC9C,MAAM,EAAE,UAAU,CAAC,UAAU,CAAC,MAAM;qBACvC;iBACJ;aACJ,CAAC,CAAA;YAEF,IAAI,OAAO,GAAoB;gBAC3B,QAAQ,EAAE,eAAe;gBACzB,IAAI,EAAE;oBACF,KAAK,EAAE;wBACH,WAAW,EAAE,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,WAAW;wBACnD,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC;wBAClD,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI;qBACxC;iBACJ;aACJ,CAAA;YAED,QAAQ,GAAG;gBACP,CAAC,GAAG,WAAW,CAAC,eAAe,EAAE,IAAI,CAAC,EAAE,CAAC,EAAE,MAAM,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC;aACnF,CAAA;QACL,CAAC;QAED,IAAI,eAAe,KAAK,KAAK,EAAE,CAAC;YAE5B,IAAI,OAAO,GAAG,oCAA0B,CAAC,KAAK,CAAC;gBAC3C,KAAK,EAAE;oBACH,MAAM,EAAE,QAAQ,CAAC,MAAM;oBACvB,MAAM,EAAE,QAAQ,CAAC,MAAM;iBAC1B;gBACD,OAAO,EAAE;oBACL,QAAQ,EAAE;wBACN,IAAI,EAAE,UAAU,CAAC,QAAQ,CAAC,IAAI;wBAC9B,WAAW,EAAE,UAAU,CAAC,QAAQ,CAAC,WAAW;wBAC5C,MAAM,EAAE,UAAU,CAAC,QAAQ,CAAC,MAAM;wBAClC,WAAW,EAAE,UAAU,CAAC,QAAQ,CAAC,WAAW;wBAC5C,wBAAwB,EAAE,UAAU,CAAC,QAAQ,CAAC,wBAAwB;wBACtE,aAAa,EAAE,UAAU,CAAC,QAAQ,CAAC,aAAa;qBACnD;iBACJ;aACJ,CAAC,CAAA;YAEF,IAAI,OAAO,GAAoB;gBAC3B,QAAQ,EAAE,eAAe;gBACzB,IAAI,EAAE;oBACF,GAAG,EAAE;wBACD,WAAW,EAAE,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW;wBACjD,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;wBAChD,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI;wBACnC,UAAU,EAAE,UAAU,CAAC,QAAQ,CAAC,WAAW;wBAC3C,qBAAqB,EAAE,UAAU,CAAC,QAAQ,CAAC,wBAAwB;wBACnE,YAAY,EAAE,UAAU,CAAC,QAAQ,CAAC,aAAa;qBAClD;iBACJ;aACJ,CAAA;YAED,QAAQ,GAAG;gBACP,CAAC,GAAG,WAAW,CAAC,eAAe,EAAE,IAAI,CAAC,EAAE,CAAC,EAAE,MAAM,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC;aACnF,CAAA;QACL,CAAC;QAED,IAAA,mBAAW,EAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,eAAe,wBAAwB,CAAC,CAAA;IAE/E,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QAClB,IAAI,CAAC,KAAK,CAAC,CAAA;IACf,CAAC;AACL,CAAC,CAAC;AA7QW,QAAA,UAAU,cA6QrB;AAEF,iCAAiC;AAC1B,MAAM,UAAU,GAAG,KAAK,EAAE,GAAY,EAAE,GAAa,EAAE,IAAkB,EAAiB,EAAE;IAC/F,IAAI,CAAC;QAED,MAAM,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;QAC9B,MAAM,eAAe,GAAG,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,MAAsC,CAAA;QAE7E,MAAM,WAAW,GAAG,IAAA,sBAAW,EAAC;YAC5B,GAAG,IAAA,8BAAsB,EAAC,GAAG,CAAC;YAC9B,QAAQ,EAAE,eAAe;SAC5B,CAAC,CAAA;QAEF,IAAI,QAAQ,GAAQ,EAAE,CAAA;QAEtB,IAAI,QAAQ,GAAG,GAAG,CAAC,IAAI,CAAC,KAAK,CAAA;QAC7B,IAAI,UAAU,GAAG,GAAG,CAAC,IAAI,CAAC,OAAO,CAAA;QAEjC,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;YAEhC,IAAI,OAAO,GAAG,wCAA8B,CAAC,KAAK,CAAC;gBAC/C,KAAK,EAAE;oBACH,MAAM,EAAE,QAAQ,CAAC,MAAM;oBACvB,MAAM,EAAE,QAAQ,CAAC,MAAM;iBAC1B;gBACD,OAAO,EAAE;oBACL,OAAO,EAAE;wBACL,WAAW,EAAE,UAAU,CAAC,OAAO,CAAC,YAAY;wBAC5C,WAAW,EAAE,UAAU,CAAC,OAAO,CAAC,YAAY;wBAC5C,KAAK,EAAE,UAAU,CAAC,OAAO,CAAC,KAAK;wBAC/B,WAAW,EAAE,UAAU,CAAC,OAAO,CAAC,WAAW;wBAC3C,UAAU,EAAE,UAAU,CAAC,OAAO,CAAC,WAAW;wBAC1C,OAAO,EAAE,UAAU,CAAC,OAAO,CAAC,QAAQ;wBACpC,OAAO,EAAE,UAAU,CAAC,OAAO,CAAC,OAAO;wBACnC,MAAM,EAAE,UAAU,CAAC,OAAO,CAAC,MAAM;qBACpC;iBACJ;aACJ,CAAC,CAAA;YAEF,IAAI,OAAO,GAAoB;gBAC3B,EAAE,EAAE,MAAM,CAAC,MAAM,CAAC;gBAClB,QAAQ,EAAE,eAAe;gBACzB,IAAI,EAAE;oBACF,OAAO,EAAE;wBACL,WAAW,EAAE,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW;wBAChD,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO;wBACxC,UAAU,EAAE,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU;wBAC9C,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK;wBACpC,WAAW,EAAE,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW;wBAChD,WAAW,EAAE,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW;wBAChD,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC;wBAC/C,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO;qBAC3C;iBACJ;aACJ,CAAA;YAED,QAAQ,GAAG;gBACP,CAAC,GAAG,WAAW,CAAC,eAAe,EAAE,IAAI,CAAC,EAAE,CAAC,EAAE,MAAM,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC;aACnF,CAAA;QACL,CAAC;QAED,IAAI,eAAe,KAAK,MAAM,EAAE,CAAC;YAE7B,IAAI,OAAO,GAAG,qCAA2B,CAAC,KAAK,CAAC;gBAC5C,KAAK,EAAE;oBACH,MAAM,EAAE,QAAQ,CAAC,MAAM;oBACvB,MAAM,EAAE,QAAQ,CAAC,MAAM;iBAC1B;gBACD,OAAO,EAAE;oBACL,IAAI,EAAE;wBACF,yCAAyC;wBACzC,iCAAiC;wBACjC,QAAQ,EAAE,UAAU,CAAC,IAAI,CAAC,SAAS;wBACnC,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,MAAM;wBAC9B,SAAS,EAAE,UAAU,CAAC,IAAI,CAAC,UAAU;wBACrC,eAAe,EAAE,UAAU,CAAC,IAAI,CAAC,gBAAgB;wBACjD,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,MAAM;wBAC9B,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI;wBAC1B,QAAQ,EAAE,UAAU,CAAC,IAAI,CAAC,SAAS;wBACnC,UAAU,EAAE,UAAU,CAAC,IAAI,CAAC,WAAW;wBACvC,WAAW,EAAE,UAAU,CAAC,IAAI,CAAC,YAAY;wBACzC,YAAY,EAAE,UAAU,CAAC,IAAI,CAAC,aAAa;wBAC3C,SAAS,EAAE,UAAU,CAAC,IAAI,CAAC,UAAU;wBACrC,cAAc,EAAE,UAAU,CAAC,IAAI,CAAC,eAAe;wBAC/C,eAAe,EAAE,UAAU,CAAC,IAAI,CAAC,gBAAgB;wBACjD,eAAe,EAAE,UAAU,CAAC,IAAI,CAAC,gBAAgB;wBACjD,GAAG,EAAE,UAAU,CAAC,IAAI,CAAC,GAAG;qBAC3B;iBACJ;aACJ,CAAC,CAAA;YAEF,IAAI,OAAO,GAAoB;gBAC3B,EAAE,EAAE,MAAM,CAAC,MAAM,CAAC;gBAClB,QAAQ,EAAE,eAAe;gBACzB,IAAI,EAAE;oBACF,IAAI,EAAE;wBACF,6CAA6C;wBAC7C,qCAAqC;wBACrC,QAAQ,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ;wBACvC,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC;wBAE5C,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC;wBAClD,eAAe,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe;wBACrD,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM;wBACnC,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI;wBAC/B,QAAQ,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ;wBAEvC,UAAU,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU;wBAC3C,WAAW,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW;wBAC7C,YAAY,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY;wBAC/C,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS;wBACzC,cAAc,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc;wBAEnD,eAAe,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe;wBACrD,eAAe,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe;wBACrD,GAAG,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG;qBAChC;iBACJ;aACJ,CAAA;YAED,QAAQ,GAAG;gBACP,CAAC,GAAG,WAAW,CAAC,eAAe,EAAE,IAAI,CAAC,EAAE,CAAC,EAAE,MAAM,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC;aACnF,CAAA;QACL,CAAC;QAED,IAAI,eAAe,KAAK,UAAU,EAAE,CAAC;YAEjC,IAAI,OAAO,GAAG,yCAA+B,CAAC,KAAK,CAAC;gBAChD,KAAK,EAAE;oBACH,MAAM,EAAE,QAAQ,CAAC,MAAM;oBACvB,MAAM,EAAE,QAAQ,CAAC,MAAM;iBAC1B;gBACD,OAAO,EAAE;oBACL,aAAa,EAAE;wBACX,kBAAkB,EAAE,UAAU,CAAC,aAAa,CAAC,kBAAkB;wBAC/D,IAAI,EAAE,UAAU,CAAC,aAAa,CAAC,IAAI;wBACnC,WAAW,EAAE,UAAU,CAAC,aAAa,CAAC,WAAW;wBACjD,MAAM,EAAE,UAAU,CAAC,aAAa,CAAC,MAAM;qBAC1C;iBACJ;aACJ,CAAC,CAAA;YAEF,IAAI,OAAO,GAAoB;gBAC3B,EAAE,EAAE,MAAM,CAAC,MAAM,CAAC;gBAClB,QAAQ,EAAE,eAAe;gBACzB,IAAI,EAAE;oBACF,QAAQ,EAAE;wBACN,WAAW,EAAE,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,WAAW;wBACtD,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC;wBACrD,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI;wBACxC,gBAAgB,EAAE,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,kBAAkB,CAAC;qBAC7E;iBACJ;aACJ,CAAA;YAED,QAAQ,GAAG;gBACP,CAAC,GAAG,WAAW,CAAC,eAAe,EAAE,IAAI,CAAC,EAAE,CAAC,EAAE,MAAM,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC;aACnF,CAAA;QACL,CAAC;QAED,IAAI,eAAe,KAAK,OAAO,EAAE,CAAC;YAE9B,IAAI,OAAO,GAAG,sCAA4B,CAAC,KAAK,CAAC;gBAC7C,KAAK,EAAE;oBACH,MAAM,EAAE,QAAQ,CAAC,MAAM;oBACvB,MAAM,EAAE,QAAQ,CAAC,MAAM;iBAC1B;gBACD,OAAO,EAAE;oBACL,UAAU,EAAE;wBACR,IAAI,EAAE,UAAU,CAAC,UAAU,CAAC,IAAI;wBAChC,WAAW,EAAE,UAAU,CAAC,UAAU,CAAC,WAAW;wBAC9C,MAAM,EAAE,UAAU,CAAC,UAAU,CAAC,MAAM;qBACvC;iBACJ;aACJ,CAAC,CAAA;YAEF,IAAI,OAAO,GAAoB;gBAC3B,EAAE,EAAE,MAAM,CAAC,MAAM,CAAC;gBAClB,QAAQ,EAAE,eAAe;gBACzB,IAAI,EAAE;oBACF,KAAK,EAAE;wBACH,WAAW,EAAE,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,WAAW;wBACnD,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC;wBAClD,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI;qBACxC;iBACJ;aACJ,CAAA;YAED,QAAQ,GAAG;gBACP,CAAC,GAAG,WAAW,CAAC,eAAe,EAAE,IAAI,CAAC,EAAE,CAAC,EAAE,MAAM,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC;aACnF,CAAA;QACL,CAAC;QAED,IAAI,eAAe,KAAK,KAAK,EAAE,CAAC;YAE5B,IAAI,OAAO,GAAG,oCAA0B,CAAC,KAAK,CAAC;gBAC3C,KAAK,EAAE;oBACH,MAAM,EAAE,QAAQ,CAAC,MAAM;oBACvB,MAAM,EAAE,QAAQ,CAAC,MAAM;iBAC1B;gBACD,OAAO,EAAE;oBACL,QAAQ,EAAE;wBACN,IAAI,EAAE,UAAU,CAAC,QAAQ,CAAC,IAAI;wBAC9B,WAAW,EAAE,UAAU,CAAC,QAAQ,CAAC,WAAW;wBAC5C,MAAM,EAAE,UAAU,CAAC,QAAQ,CAAC,MAAM;wBAClC,WAAW,EAAE,UAAU,CAAC,QAAQ,CAAC,WAAW;wBAC5C,wBAAwB,EAAE,UAAU,CAAC,QAAQ,CAAC,wBAAwB;wBACtE,aAAa,EAAE,UAAU,CAAC,QAAQ,CAAC,aAAa;qBACnD;iBACJ;aACJ,CAAC,CAAA;YAEF,IAAI,OAAO,GAAoB;gBAC3B,EAAE,EAAE,MAAM,CAAC,MAAM,CAAC;gBAClB,QAAQ,EAAE,eAAe;gBACzB,IAAI,EAAE;oBACF,GAAG,EAAE;wBACD,WAAW,EAAE,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW;wBACjD,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;wBAChD,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI;wBACnC,UAAU,EAAE,UAAU,CAAC,QAAQ,CAAC,WAAW;wBAC3C,qBAAqB,EAAE,UAAU,CAAC,QAAQ,CAAC,wBAAwB;wBACnE,YAAY,EAAE,UAAU,CAAC,QAAQ,CAAC,aAAa;qBAClD;iBACJ;aACJ,CAAA;YAED,QAAQ,GAAG;gBACP,CAAC,GAAG,WAAW,CAAC,eAAe,EAAE,IAAI,CAAC,EAAE,CAAC,EAAE,MAAM,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC;aACnF,CAAA;QACL,CAAC;QAED,IAAA,mBAAW,EAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,eAAe,wBAAwB,CAAC,CAAA;IAE/E,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QAClB,IAAI,CAAC,KAAK,CAAC,CAAA;IACf,CAAC;AACL,CAAC,CAAC;AA3OW,QAAA,UAAU,cA2OrB;AAEF,yBAAyB;AAClB,MAAM,SAAS,GAAG,KAAK,EAAE,GAAY,EAAE,GAAa,EAAE,IAAkB,EAAgB,EAAE;IAE7F,IAAI,CAAC;QAED,MAAM,YAAY,GAAG,GAAG,CAAC,KAA6B,CAAC;QACvD,MAAM,eAAe,GAAG,GAAG,CAAC,MAAM,CAAC,QAAwC,CAAC;QAE5E,MAAM,WAAW,GAAG,IAAA,sBAAW,EAAC;YAC5B,GAAG,IAAA,8BAAsB,EAAC,GAAG,CAAC;YAC9B,QAAQ,EAAE,eAAe;SAC5B,CAAC,CAAA;QAEF,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,WAAW,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;QAElE,IAAI,QAAQ,GAAG;YACX,CAAC,GAAG,WAAW,CAAC,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,EAAE,IAAI;YAChD,KAAK;SACR,CAAA;QAED,OAAO,IAAA,mBAAW,EAAC,GAAG,EAAE,QAAQ,EAAE,wBAAwB,CAAC,CAAC;IAEhE,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QAClB,IAAI,CAAC,KAAK,CAAC,CAAA;IACf,CAAC;AACL,CAAC,CAAC;AAxBW,QAAA,SAAS,aAwBpB;AAEF,kCAAkC;AAC3B,MAAM,WAAW,GAAG,KAAK,EAAE,GAAY,EAAE,GAAa,EAAE,IAAkB,EAAgB,EAAE;IAE/F,IAAI,CAAC;QAED,MAAM,eAAe,GAAG,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,MAAsC,CAAA;QAC7E,0DAA0D;QAC1D,kDAAkD;QAElD,MAAM,OAAO,GAAG,iCAAuB,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QAEvD,MAAM,WAAW,GAAG,IAAA,sBAAW,EAAC;YAC5B,GAAG,IAAA,8BAAsB,EAAC,GAAG,CAAC;YAC9B,QAAQ,EAAE,eAAe;SAC5B,CAAC,CAAA;QAEF,MAAM,OAAO,GAAG;YACZ,GAAG,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;SACtD,CAAA;QAED,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAEpD,OAAO,IAAA,mBAAW,EAAC,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC,CAAC;IAElF,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QAClB,IAAI,CAAC,KAAK,CAAC,CAAA;IACf,CAAC;AACL,CAAC,CAAC;AA1BW,QAAA,WAAW,eA0BtB;AAEF,sDAAsD;AAC/C,MAAM,gBAAgB,GAAG,KAAK,EAAE,GAAY,EAAE,GAAa,EAAE,IAAkB,EAAgB,EAAE;IAEpG,IAAI,CAAC;QAED,MAAM,YAAY,GAAG,GAAG,CAAC,KAA6B,CAAC;QACvD,MAAM,eAAe,GAAG,GAAG,CAAC,MAAM,CAAC,QAAwC,CAAC;QAE5E,MAAM,WAAW,GAAG,IAAA,sBAAW,EAAC;YAC5B,GAAG,IAAA,8BAAsB,EAAC,GAAG,CAAC;YAC9B,QAAQ,EAAE,eAAe;SAC5B,CAAC,CAAA;QAEF,MAAM,IAAI,GAAG,WAAW,CAAC,gBAAgB,EAAE,CAAC;QAE5C,IAAI,QAAQ,GAAG;YACX,UAAU,EAAE,IAAI;SACnB,CAAA;QAED,OAAO,IAAA,mBAAW,EAAC,GAAG,EAAE,QAAQ,EAAE,wBAAwB,CAAC,CAAC;IAEhE,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QAClB,IAAI,CAAC,KAAK,CAAC,CAAA;IACf,CAAC;AACL,CAAC,CAAC;AAvBW,QAAA,gBAAgB,oBAuB3B","sourcesContent":["import { Request, Response, NextFunction } from \"express\";\n\nimport { getDefaultServiceProps, sendSuccess, sendError, HTTP_STATUS } from \"@/utils\"\n\nimport { ItemService, ItemType, ItemCreateProps, ItemServiceProps, ItemUpdateProps } from \"@/services\"\nimport {\n schemaItemItemCreatePayload,\n schemaItemItemUpdatePayload,\n schemaItemBrandCreatePayload,\n schemaItemBrandUpdatePayload,\n schemaItemCategoryCreatePayload,\n schemaItemCategoryUpdatePayload,\n schemaItemUomCreatePayload,\n schemaItemUomUpdatePayload,\n schemaItemDeletePayload,\n schemaItemProductUpdatePayload,\n schemaItemProductCreatePayload\n} from \"@/schema/payload\";\nimport { QueryList } from \"@/schema/middleware/route\";\n\nconst getRootName = (requestItemType: ItemServiceProps[\"itemType\"], toSingular: boolean) => {\n\n let rootName: any = ``\n\n switch (requestItemType) {\n case \"item\": rootName = toSingular ? \"item\" : \"items\"; break;\n case \"product\": rootName = toSingular ? \"product\" : \"products\"; break;\n case \"category\": rootName = toSingular ? \"category\" : \"categories\"; break;\n case \"brand\": rootName = toSingular ? \"brand\" : \"brands\"; break;\n case \"uom\": rootName = toSingular ? \"uom\" : \"uoms\"; break;\n }\n\n return rootName\n}\n\n/** item/:itemType/:itemId : get item */\nexport async function getItem(req: Request, res: Response, next: NextFunction): Promise<any> {\n try {\n\n const { itemId, itemType } = req.params;\n const requestQuery = req.query as unknown as QueryList;\n const requestItemType = itemType as ItemServiceProps[\"itemType\"];\n\n const itemService = ItemService({\n ...getDefaultServiceProps(req),\n itemType: requestItemType\n })\n\n const data = await itemService.getItem({ id: Number(itemId), datatypes: requestQuery.datatypes })\n\n return sendSuccess(res, data, \"Retrieved successfully\", getRootName(requestItemType, true));\n\n } catch (error: any) {\n next(error)\n }\n}\n\n/** item : create item */\nexport const createItem = async (req: Request, res: Response, next: NextFunction): Promise<void> => {\n try {\n\n const requestItemType = req.body.scope.target as ItemServiceProps[\"itemType\"]\n\n const itemService = ItemService({\n ...getDefaultServiceProps(req),\n itemType: requestItemType\n })\n\n let response: any = {}\n\n let reqScope = req.body.scope\n let reqPayload = req.body.payload\n\n if (requestItemType === \"product\") {\n\n let request = schemaItemProductCreatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n product: {\n productName: reqPayload.product.product_name,\n productCode: reqPayload.product.product_code,\n model: reqPayload.product.model,\n description: reqPayload.product.description,\n categoryId: reqPayload.product.category_id,\n brandId: reqPayload.product.brand_id,\n summary: reqPayload.product.summary,\n status: reqPayload.product.status,\n },\n item: {\n productId: reqPayload.item.product_id,\n itemCode: reqPayload.item.item_code,\n uomId: reqPayload.item.uom_id,\n status: reqPayload.item.status,\n isPackage: reqPayload.item.is_package,\n itemDescription: reqPayload.item.item_description,\n remark: reqPayload.item.remark,\n cost: reqPayload.item.cost,\n uomPrice: reqPayload.item.uom_price,\n floorPrice: reqPayload.item.floor_price,\n grossWeight: reqPayload.item.gross_weight,\n volumeWeight: reqPayload.item.volume_weight,\n netWeight: reqPayload.item.net_weight,\n dimensionWidth: reqPayload.item.dimension_width,\n dimensionHeight: reqPayload.item.dimension_height,\n dimensionLength: reqPayload.item.dimension_length,\n cbm: reqPayload.item.cbm,\n }\n }\n })\n\n let payload: ItemCreateProps = {\n itemType: requestItemType,\n data: {\n product: {\n productName: request.payload.product.productName,\n brandId: request.payload.product.brandId,\n categoryId: request.payload.product.categoryId,\n model: request.payload.product.model,\n description: request.payload.product.description,\n productCode: request.payload.product.productCode,\n status: Boolean(request.payload.product.status),\n summary: request.payload.product.summary,\n },\n item: {\n itemCode: request.payload.item.itemCode,\n uomId: request.payload.item.uomId,\n status: Boolean(request.payload.item.status),\n\n isPackage: Boolean(request.payload.item.isPackage),\n itemDescription: request.payload.item.itemDescription,\n remark: request.payload.item.remark,\n cost: request.payload.item.cost,\n uomPrice: request.payload.item.uomPrice,\n\n floorPrice: request.payload.item.floorPrice,\n grossWeight: request.payload.item.grossWeight,\n volumeWeight: request.payload.item.volumeWeight,\n netWeight: request.payload.item.netWeight,\n dimensionWidth: request.payload.item.dimensionWidth,\n\n dimensionHeight: request.payload.item.dimensionHeight,\n dimensionLength: request.payload.item.dimensionLength,\n cbm: request.payload.item.cbm,\n }\n }\n }\n\n response = {\n [`${getRootName(requestItemType, true)}`]: await itemService.createItem(payload)\n }\n }\n\n if (requestItemType === \"item\") {\n\n let request = schemaItemItemCreatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n item: {\n productId: reqPayload.item.product_id,\n itemCode: reqPayload.item.item_code,\n uomId: reqPayload.item.uom_id,\n status: reqPayload.item.status,\n isPackage: reqPayload.item.is_package,\n itemDescription: reqPayload.item.item_description,\n remark: reqPayload.item.remark,\n cost: reqPayload.item.cost,\n uomPrice: reqPayload.item.uom_price,\n floorPrice: reqPayload.item.floor_price,\n grossWeight: reqPayload.item.gross_weight,\n volumeWeight: reqPayload.item.volume_weight,\n netWeight: reqPayload.item.net_weight,\n dimensionWidth: reqPayload.item.dimension_width,\n dimensionHeight: reqPayload.item.dimension_height,\n dimensionLength: reqPayload.item.dimension_length,\n cbm: reqPayload.item.cbm,\n }\n }\n })\n\n let payload: ItemCreateProps = {\n itemType: requestItemType,\n data: {\n item: {\n productId: request.payload.item.productId,\n itemCode: request.payload.item.itemCode,\n uomId: request.payload.item.uomId,\n status: Boolean(request.payload.item.status),\n\n isPackage: Boolean(request.payload.item.isPackage),\n itemDescription: request.payload.item.itemDescription,\n remark: request.payload.item.remark,\n cost: request.payload.item.cost,\n uomPrice: request.payload.item.uomPrice,\n\n floorPrice: request.payload.item.floorPrice,\n grossWeight: request.payload.item.grossWeight,\n volumeWeight: request.payload.item.volumeWeight,\n netWeight: request.payload.item.netWeight,\n dimensionWidth: request.payload.item.dimensionWidth,\n\n dimensionHeight: request.payload.item.dimensionHeight,\n dimensionLength: request.payload.item.dimensionLength,\n cbm: request.payload.item.cbm,\n }\n }\n }\n\n response = {\n [`${getRootName(requestItemType, true)}`]: await itemService.createItem(payload)\n }\n }\n\n if (requestItemType === \"category\") {\n\n let request = schemaItemCategoryCreatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n item_category: {\n parent_category_id: reqPayload.item_category.parent_category_id,\n name: reqPayload.item_category.name,\n description: reqPayload.item_category.description,\n status: reqPayload.item_category.status\n }\n }\n })\n\n let payload: ItemCreateProps = {\n itemType: requestItemType,\n data: {\n category: {\n description: request.payload.item_category.description,\n status: Boolean(request.payload.item_category.status),\n name: request.payload.item_category.name,\n parentCategoryId: Number(request.payload.item_category.parent_category_id)\n }\n }\n }\n\n response = {\n [`${getRootName(requestItemType, true)}`]: await itemService.createItem(payload)\n }\n }\n\n if (requestItemType === \"brand\") {\n\n let request = schemaItemBrandCreatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n item_brand: {\n name: reqPayload.item_brand.name,\n description: reqPayload.item_brand.description,\n status: reqPayload.item_brand.status\n }\n }\n })\n\n let payload: ItemCreateProps = {\n itemType: requestItemType,\n data: {\n brand: {\n description: request.payload.item_brand.description,\n status: Boolean(request.payload.item_brand.status),\n name: request.payload.item_brand.name\n }\n }\n }\n\n response = {\n [`${getRootName(requestItemType, true)}`]: await itemService.createItem(payload)\n }\n }\n\n if (requestItemType === \"uom\") {\n\n let request = schemaItemUomCreatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n item_uom: {\n name: reqPayload.item_uom.name,\n description: reqPayload.item_uom.description,\n status: reqPayload.item_uom.status,\n metric_type: reqPayload.item_uom.metric_type,\n metric_type_display_name: reqPayload.item_uom.metric_type_display_name,\n decimal_digit: reqPayload.item_uom.decimal_digit,\n }\n }\n })\n\n let payload: ItemCreateProps = {\n itemType: requestItemType,\n data: {\n uom: {\n description: request.payload.item_uom.description,\n status: Boolean(request.payload.item_uom.status),\n name: request.payload.item_uom.name,\n metricType: reqPayload.item_uom.metric_type,\n metricTypeDisplayName: reqPayload.item_uom.metric_type_display_name,\n decimalDigit: reqPayload.item_uom.decimal_digit,\n }\n }\n }\n\n response = {\n [`${getRootName(requestItemType, true)}`]: await itemService.createItem(payload)\n }\n }\n\n sendSuccess(res, response, `Item(${requestItemType}) created successfully`)\n\n } catch (error: any) {\n next(error)\n }\n};\n\n/** item/:itemId : update item */\nexport const updateItem = async (req: Request, res: Response, next: NextFunction): Promise<void> => {\n try {\n\n const { itemId } = req.params;\n const requestItemType = req.body.scope.target as ItemServiceProps[\"itemType\"]\n\n const itemService = ItemService({\n ...getDefaultServiceProps(req),\n itemType: requestItemType\n })\n\n let response: any = {}\n\n let reqScope = req.body.scope\n let reqPayload = req.body.payload\n\n if (requestItemType === \"product\") {\n\n let request = schemaItemProductUpdatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n product: {\n productName: reqPayload.product.product_name,\n productCode: reqPayload.product.product_code,\n model: reqPayload.product.model,\n description: reqPayload.product.description,\n categoryId: reqPayload.product.category_id,\n brandId: reqPayload.product.brand_id,\n summary: reqPayload.product.summary,\n status: reqPayload.product.status,\n }\n }\n })\n\n let payload: ItemUpdateProps = {\n id: Number(itemId),\n itemType: requestItemType,\n data: {\n product: {\n productName: request.payload.product.productName,\n brandId: request.payload.product.brandId,\n categoryId: request.payload.product.categoryId,\n model: request.payload.product.model,\n description: request.payload.product.description,\n productCode: request.payload.product.productCode,\n status: Boolean(request.payload.product.status),\n summary: request.payload.product.summary,\n }\n }\n }\n\n response = {\n [`${getRootName(requestItemType, true)}`]: await itemService.updateItem(payload)\n }\n }\n\n if (requestItemType === \"item\") {\n\n let request = schemaItemItemUpdatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n item: {\n // productId: reqPayload.item.product_id,\n // uomId: reqPayload.item.uom_id,\n itemCode: reqPayload.item.item_code,\n status: reqPayload.item.status,\n isPackage: reqPayload.item.is_package,\n itemDescription: reqPayload.item.item_description,\n remark: reqPayload.item.remark,\n cost: reqPayload.item.cost,\n uomPrice: reqPayload.item.uom_price,\n floorPrice: reqPayload.item.floor_price,\n grossWeight: reqPayload.item.gross_weight,\n volumeWeight: reqPayload.item.volume_weight,\n netWeight: reqPayload.item.net_weight,\n dimensionWidth: reqPayload.item.dimension_width,\n dimensionHeight: reqPayload.item.dimension_height,\n dimensionLength: reqPayload.item.dimension_length,\n cbm: reqPayload.item.cbm,\n }\n }\n })\n\n let payload: ItemUpdateProps = {\n id: Number(itemId),\n itemType: requestItemType,\n data: {\n item: {\n // productId: request.payload.item.productId,\n // uomId: request.payload.item.uomId,\n itemCode: request.payload.item.itemCode,\n status: Boolean(request.payload.item.status),\n\n isPackage: Boolean(request.payload.item.isPackage),\n itemDescription: request.payload.item.itemDescription,\n remark: request.payload.item.remark,\n cost: request.payload.item.cost,\n uomPrice: request.payload.item.uomPrice,\n\n floorPrice: request.payload.item.floorPrice,\n grossWeight: request.payload.item.grossWeight,\n volumeWeight: request.payload.item.volumeWeight,\n netWeight: request.payload.item.netWeight,\n dimensionWidth: request.payload.item.dimensionWidth,\n\n dimensionHeight: request.payload.item.dimensionHeight,\n dimensionLength: request.payload.item.dimensionLength,\n cbm: request.payload.item.cbm,\n }\n }\n }\n\n response = {\n [`${getRootName(requestItemType, true)}`]: await itemService.updateItem(payload)\n }\n }\n\n if (requestItemType === \"category\") {\n\n let request = schemaItemCategoryUpdatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n item_category: {\n parent_category_id: reqPayload.item_category.parent_category_id,\n name: reqPayload.item_category.name,\n description: reqPayload.item_category.description,\n status: reqPayload.item_category.status\n }\n }\n })\n\n let payload: ItemUpdateProps = {\n id: Number(itemId),\n itemType: requestItemType,\n data: {\n category: {\n description: request.payload.item_category.description,\n status: Boolean(request.payload.item_category.status),\n name: request.payload.item_category.name,\n parentCategoryId: Number(request.payload.item_category.parent_category_id)\n }\n }\n }\n\n response = {\n [`${getRootName(requestItemType, true)}`]: await itemService.updateItem(payload)\n }\n }\n\n if (requestItemType === \"brand\") {\n\n let request = schemaItemBrandUpdatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n item_brand: {\n name: reqPayload.item_brand.name,\n description: reqPayload.item_brand.description,\n status: reqPayload.item_brand.status\n }\n }\n })\n\n let payload: ItemUpdateProps = {\n id: Number(itemId),\n itemType: requestItemType,\n data: {\n brand: {\n description: request.payload.item_brand.description,\n status: Boolean(request.payload.item_brand.status),\n name: request.payload.item_brand.name,\n }\n }\n }\n\n response = {\n [`${getRootName(requestItemType, true)}`]: await itemService.updateItem(payload)\n }\n }\n\n if (requestItemType === \"uom\") {\n\n let request = schemaItemUomUpdatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n item_uom: {\n name: reqPayload.item_uom.name,\n description: reqPayload.item_uom.description,\n status: reqPayload.item_uom.status,\n metric_type: reqPayload.item_uom.metric_type,\n metric_type_display_name: reqPayload.item_uom.metric_type_display_name,\n decimal_digit: reqPayload.item_uom.decimal_digit,\n }\n }\n })\n\n let payload: ItemUpdateProps = {\n id: Number(itemId),\n itemType: requestItemType,\n data: {\n uom: {\n description: request.payload.item_uom.description,\n status: Boolean(request.payload.item_uom.status),\n name: request.payload.item_uom.name,\n metricType: reqPayload.item_uom.metric_type,\n metricTypeDisplayName: reqPayload.item_uom.metric_type_display_name,\n decimalDigit: reqPayload.item_uom.decimal_digit,\n }\n }\n }\n\n response = {\n [`${getRootName(requestItemType, true)}`]: await itemService.updateItem(payload)\n }\n }\n\n sendSuccess(res, response, `Item(${requestItemType}) updated successfully`)\n\n } catch (error: any) {\n next(error)\n }\n};\n\n/** items : list items */\nexport const listItems = async (req: Request, res: Response, next: NextFunction): Promise<any> => {\n\n try {\n\n const requestQuery = req.query as unknown as QueryList;\n const requestItemType = req.params.itemType as ItemServiceProps[\"itemType\"];\n\n const itemService = ItemService({\n ...getDefaultServiceProps(req),\n itemType: requestItemType\n })\n\n const { data, total } = await itemService.listItems(requestQuery);\n\n let response = {\n [`${getRootName(requestItemType, false)}`]: data,\n total,\n }\n\n return sendSuccess(res, response, \"Retrieved successfully\");\n\n } catch (error: any) {\n next(error)\n }\n};\n\n/** items/delete : delete items */\nexport const deleteItems = async (req: Request, res: Response, next: NextFunction): Promise<any> => {\n\n try {\n\n const requestItemType = req.body.scope.target as ItemServiceProps[\"itemType\"]\n // const requestQuery = req.query as unknown as QueryList;\n // const requestFileId = Number(req.params.fileId)\n\n const request = schemaItemDeletePayload.parse(req.body)\n\n const itemService = ItemService({\n ...getDefaultServiceProps(req),\n itemType: requestItemType\n })\n\n const payload = {\n ids: request.payload.ids.map((i: any) => BigInt(i))\n }\n\n const data = await itemService.removeItems(payload);\n\n return sendSuccess(res, data, \"Deleted\", getRootName(requestItemType, false));\n\n } catch (error: any) {\n next(error)\n }\n};\n\n/** item/data_types/:itemType : get item data types */\nexport const getItemDataTypes = async (req: Request, res: Response, next: NextFunction): Promise<any> => {\n\n try {\n\n const requestQuery = req.query as unknown as QueryList;\n const requestItemType = req.params.itemType as ItemServiceProps[\"itemType\"];\n\n const itemService = ItemService({\n ...getDefaultServiceProps(req),\n itemType: requestItemType\n })\n\n const data = itemService.getItemDataTypes();\n\n let response = {\n data_types: data\n }\n\n return sendSuccess(res, response, \"Retrieved successfully\");\n\n } catch (error: any) {\n next(error)\n }\n};\n"]}
1
+ {"version":3,"file":"itemController.js","sourceRoot":"","sources":["../../../src/controllers/item/itemController.ts"],"names":[],"mappings":"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","sourcesContent":["import { Request, Response, NextFunction } from \"express\";\n\nimport { getDefaultServiceProps, sendSuccess, sendError, HTTP_STATUS } from \"@/utils\"\n\nimport { ItemService, ItemType, ItemCreateProps, ItemServiceProps, ItemUpdateProps } from \"@/services\"\nimport {\n schemaItemItemCreatePayload,\n schemaItemItemUpdatePayload,\n schemaItemBrandCreatePayload,\n schemaItemBrandUpdatePayload,\n schemaItemCategoryCreatePayload,\n schemaItemCategoryUpdatePayload,\n schemaItemUomCreatePayload,\n schemaItemUomUpdatePayload,\n schemaItemDeletePayload,\n schemaItemProductUpdatePayload,\n schemaItemProductCreatePayload\n} from \"@/schema/payload\";\nimport { QueryList } from \"@/schema/middleware/route\";\n\nconst getRootName = (requestItemType: ItemServiceProps[\"itemType\"], toSingular: boolean) => {\n\n let rootName: any = ``\n\n switch (requestItemType) {\n case \"item\": rootName = toSingular ? \"item\" : \"items\"; break;\n case \"product\": rootName = toSingular ? \"product\" : \"products\"; break;\n case \"category\": rootName = toSingular ? \"category\" : \"categories\"; break;\n case \"brand\": rootName = toSingular ? \"brand\" : \"brands\"; break;\n case \"uom\": rootName = toSingular ? \"uom\" : \"uoms\"; break;\n }\n\n return rootName\n}\n\n/** item/:itemType/:itemId : get item */\nexport async function getItem(req: Request, res: Response, next: NextFunction): Promise<any> {\n try {\n\n const { itemId, itemType } = req.params;\n const requestQuery = req.query as unknown as QueryList;\n const requestItemType = itemType as ItemServiceProps[\"itemType\"];\n\n const itemService = ItemService({\n ...getDefaultServiceProps(req),\n itemType: requestItemType\n })\n\n const data = await itemService.getItem({ id: Number(itemId), datatypes: requestQuery.datatypes })\n\n return sendSuccess(res, data, \"Retrieved successfully\", getRootName(requestItemType, true));\n\n } catch (error: any) {\n next(error)\n }\n}\n\n/** item : create item */\nexport const createItem = async (req: Request, res: Response, next: NextFunction): Promise<void> => {\n try {\n\n const requestItemType = req.body.scope.target as ItemServiceProps[\"itemType\"]\n\n const itemService = ItemService({\n ...getDefaultServiceProps(req),\n itemType: requestItemType\n })\n\n let response: any = {}\n\n let reqScope = req.body.scope\n let reqPayload = req.body.payload\n\n if (requestItemType === \"product\") {\n\n let request = schemaItemProductCreatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n product: {\n productName: reqPayload.product.product_name,\n productCode: reqPayload.product.product_code,\n model: reqPayload.product.model,\n description: reqPayload.product.description,\n categoryId: reqPayload.product.category_id,\n brandId: reqPayload.product.brand_id,\n summary: reqPayload.product.summary,\n status: reqPayload.product.status,\n },\n item: {\n productId: reqPayload.item.product_id,\n itemCode: reqPayload.item.item_code,\n uomId: reqPayload.item.uom_id,\n status: reqPayload.item.status,\n isPackage: reqPayload.item.is_package,\n itemDescription: reqPayload.item.item_description,\n remark: reqPayload.item.remark,\n cost: reqPayload.item.cost,\n itemPrice: reqPayload.item.item_price,\n floorPrice: reqPayload.item.floor_price,\n grossWeight: reqPayload.item.gross_weight,\n volumeWeight: reqPayload.item.volume_weight,\n netWeight: reqPayload.item.net_weight,\n dimensionWidth: reqPayload.item.dimension_width,\n dimensionHeight: reqPayload.item.dimension_height,\n dimensionLength: reqPayload.item.dimension_length,\n cbm: reqPayload.item.cbm,\n }\n }\n })\n\n let payload: ItemCreateProps = {\n itemType: requestItemType,\n data: {\n product: {\n productName: request.payload.product.productName,\n brandId: request.payload.product.brandId,\n categoryId: request.payload.product.categoryId,\n model: request.payload.product.model,\n description: request.payload.product.description,\n productCode: request.payload.product.productCode,\n status: Boolean(request.payload.product.status),\n summary: request.payload.product.summary,\n },\n item: {\n itemCode: request.payload.item.itemCode,\n uomId: request.payload.item.uomId,\n status: Boolean(request.payload.item.status),\n\n isPackage: Boolean(request.payload.item.isPackage),\n itemDescription: request.payload.item.itemDescription,\n remark: request.payload.item.remark,\n cost: request.payload.item.cost,\n itemPrice: request.payload.item.itemPrice,\n\n floorPrice: request.payload.item.floorPrice,\n grossWeight: request.payload.item.grossWeight,\n volumeWeight: request.payload.item.volumeWeight,\n netWeight: request.payload.item.netWeight,\n dimensionWidth: request.payload.item.dimensionWidth,\n\n dimensionHeight: request.payload.item.dimensionHeight,\n dimensionLength: request.payload.item.dimensionLength,\n cbm: request.payload.item.cbm,\n }\n }\n }\n\n response = {\n [`${getRootName(requestItemType, true)}`]: await itemService.createItem(payload)\n }\n }\n\n if (requestItemType === \"item\") {\n\n let request = schemaItemItemCreatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n item: {\n productId: reqPayload.item.product_id,\n itemCode: reqPayload.item.item_code,\n uomId: reqPayload.item.uom_id,\n status: reqPayload.item.status,\n isPackage: reqPayload.item.is_package,\n itemDescription: reqPayload.item.item_description,\n remark: reqPayload.item.remark,\n cost: reqPayload.item.cost,\n itemPrice: reqPayload.item.item_price,\n floorPrice: reqPayload.item.floor_price,\n grossWeight: reqPayload.item.gross_weight,\n volumeWeight: reqPayload.item.volume_weight,\n netWeight: reqPayload.item.net_weight,\n dimensionWidth: reqPayload.item.dimension_width,\n dimensionHeight: reqPayload.item.dimension_height,\n dimensionLength: reqPayload.item.dimension_length,\n cbm: reqPayload.item.cbm,\n }\n }\n })\n\n let payload: ItemCreateProps = {\n itemType: requestItemType,\n data: {\n item: {\n productId: request.payload.item.productId,\n itemCode: request.payload.item.itemCode,\n uomId: request.payload.item.uomId,\n status: Boolean(request.payload.item.status),\n\n isPackage: Boolean(request.payload.item.isPackage),\n itemDescription: request.payload.item.itemDescription,\n remark: request.payload.item.remark,\n cost: request.payload.item.cost,\n itemPrice: request.payload.item.itemPrice,\n\n floorPrice: request.payload.item.floorPrice,\n grossWeight: request.payload.item.grossWeight,\n volumeWeight: request.payload.item.volumeWeight,\n netWeight: request.payload.item.netWeight,\n dimensionWidth: request.payload.item.dimensionWidth,\n\n dimensionHeight: request.payload.item.dimensionHeight,\n dimensionLength: request.payload.item.dimensionLength,\n cbm: request.payload.item.cbm,\n }\n }\n }\n\n response = {\n [`${getRootName(requestItemType, true)}`]: await itemService.createItem(payload)\n }\n }\n\n if (requestItemType === \"category\") {\n\n let request = schemaItemCategoryCreatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n item_category: {\n parent_category_id: reqPayload.item_category.parent_category_id,\n name: reqPayload.item_category.name,\n code: reqPayload.item_category.code,\n description: reqPayload.item_category.description,\n status: reqPayload.item_category.status\n }\n }\n })\n\n let payload: ItemCreateProps = {\n itemType: requestItemType,\n data: {\n category: {\n description: request.payload.item_category.description,\n status: Boolean(request.payload.item_category.status),\n name: request.payload.item_category.name,\n code: request.payload.item_category.code,\n parentCategoryId: Number(request.payload.item_category.parent_category_id)\n }\n }\n }\n\n response = {\n [`${getRootName(requestItemType, true)}`]: await itemService.createItem(payload)\n }\n }\n\n if (requestItemType === \"brand\") {\n\n let request = schemaItemBrandCreatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n item_brand: {\n name: reqPayload.item_brand.name,\n code: reqPayload.item_brand.code,\n description: reqPayload.item_brand.description,\n status: reqPayload.item_brand.status\n }\n }\n })\n\n let payload: ItemCreateProps = {\n itemType: requestItemType,\n data: {\n brand: {\n name: request.payload.item_brand.name,\n code: request.payload.item_brand.code,\n description: request.payload.item_brand.description,\n status: Boolean(request.payload.item_brand.status),\n }\n }\n }\n\n response = {\n [`${getRootName(requestItemType, true)}`]: await itemService.createItem(payload)\n }\n }\n\n if (requestItemType === \"uom\") {\n\n let request = schemaItemUomCreatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n item_uom: {\n name: reqPayload.item_uom.name,\n code: reqPayload.item_uom.code,\n description: reqPayload.item_uom.description,\n status: reqPayload.item_uom.status,\n metric_type: reqPayload.item_uom.metric_type,\n metric_type_display_name: reqPayload.item_uom.metric_type_display_name,\n decimal_digit: reqPayload.item_uom.decimal_digit,\n }\n }\n })\n\n let payload: ItemCreateProps = {\n itemType: requestItemType,\n data: {\n uom: {\n name: request.payload.item_uom.name,\n code: request.payload.item_uom.code,\n description: request.payload.item_uom.description,\n status: Boolean(request.payload.item_uom.status),\n metricType: reqPayload.item_uom.metric_type,\n metricTypeDisplayName: reqPayload.item_uom.metric_type_display_name,\n decimalDigit: reqPayload.item_uom.decimal_digit,\n }\n }\n }\n\n response = {\n [`${getRootName(requestItemType, true)}`]: await itemService.createItem(payload)\n }\n }\n\n sendSuccess(res, response, `Item(${requestItemType}) created successfully`)\n\n } catch (error: any) {\n next(error)\n }\n};\n\n/** item/:itemId : update item */\nexport const updateItem = async (req: Request, res: Response, next: NextFunction): Promise<void> => {\n try {\n\n const { itemId } = req.params;\n const requestItemType = req.body.scope.target as ItemServiceProps[\"itemType\"]\n\n const itemService = ItemService({\n ...getDefaultServiceProps(req),\n itemType: requestItemType\n })\n\n let response: any = {}\n\n let reqScope = req.body.scope\n let reqPayload = req.body.payload\n\n if (requestItemType === \"product\") {\n\n let request = schemaItemProductUpdatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n product: {\n productName: reqPayload.product.product_name,\n productCode: reqPayload.product.product_code,\n model: reqPayload.product.model,\n description: reqPayload.product.description,\n categoryId: reqPayload.product.category_id,\n brandId: reqPayload.product.brand_id,\n summary: reqPayload.product.summary,\n status: reqPayload.product.status,\n }\n }\n })\n\n let payload: ItemUpdateProps = {\n id: Number(itemId),\n itemType: requestItemType,\n data: {\n product: {\n productName: request.payload.product.productName,\n brandId: request.payload.product.brandId,\n categoryId: request.payload.product.categoryId,\n model: request.payload.product.model,\n description: request.payload.product.description,\n productCode: request.payload.product.productCode,\n status: Boolean(request.payload.product.status),\n summary: request.payload.product.summary,\n }\n }\n }\n\n response = {\n [`${getRootName(requestItemType, true)}`]: await itemService.updateItem(payload)\n }\n }\n\n if (requestItemType === \"item\") {\n\n let request = schemaItemItemUpdatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n item: {\n // productId: reqPayload.item.product_id,\n // uomId: reqPayload.item.uom_id,\n itemCode: reqPayload.item.item_code,\n status: reqPayload.item.status,\n isPackage: reqPayload.item.is_package,\n itemDescription: reqPayload.item.item_description,\n remark: reqPayload.item.remark,\n cost: reqPayload.item.cost,\n itemPrice: reqPayload.item.item_price,\n floorPrice: reqPayload.item.floor_price,\n grossWeight: reqPayload.item.gross_weight,\n volumeWeight: reqPayload.item.volume_weight,\n netWeight: reqPayload.item.net_weight,\n dimensionWidth: reqPayload.item.dimension_width,\n dimensionHeight: reqPayload.item.dimension_height,\n dimensionLength: reqPayload.item.dimension_length,\n cbm: reqPayload.item.cbm,\n }\n }\n })\n\n let payload: ItemUpdateProps = {\n id: Number(itemId),\n itemType: requestItemType,\n data: {\n item: {\n // productId: request.payload.item.productId,\n // uomId: request.payload.item.uomId,\n itemCode: request.payload.item.itemCode,\n status: Boolean(request.payload.item.status),\n\n isPackage: Boolean(request.payload.item.isPackage),\n itemDescription: request.payload.item.itemDescription,\n remark: request.payload.item.remark,\n cost: request.payload.item.cost,\n itemPrice: request.payload.item.itemPrice,\n\n floorPrice: request.payload.item.floorPrice,\n grossWeight: request.payload.item.grossWeight,\n volumeWeight: request.payload.item.volumeWeight,\n netWeight: request.payload.item.netWeight,\n dimensionWidth: request.payload.item.dimensionWidth,\n\n dimensionHeight: request.payload.item.dimensionHeight,\n dimensionLength: request.payload.item.dimensionLength,\n cbm: request.payload.item.cbm,\n }\n }\n }\n\n response = {\n [`${getRootName(requestItemType, true)}`]: await itemService.updateItem(payload)\n }\n }\n\n if (requestItemType === \"category\") {\n\n let request = schemaItemCategoryUpdatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n item_category: {\n parent_category_id: reqPayload.item_category.parent_category_id,\n name: reqPayload.item_category.name,\n ...(reqPayload.item_category?.code ? { code: reqPayload.item_category.code } : {}),\n description: reqPayload.item_category.description,\n status: reqPayload.item_category.status\n }\n }\n })\n\n let payload: ItemUpdateProps = {\n id: Number(itemId),\n itemType: requestItemType,\n data: {\n category: {\n description: request.payload.item_category.description,\n status: Boolean(request.payload.item_category.status),\n name: request.payload.item_category.name,\n ...(request.payload.item_category?.code ? { code: request.payload.item_category.code } : {}),\n parentCategoryId: Number(request.payload.item_category.parent_category_id)\n }\n }\n }\n\n response = {\n [`${getRootName(requestItemType, true)}`]: await itemService.updateItem(payload)\n }\n }\n\n if (requestItemType === \"brand\") {\n\n let request = schemaItemBrandUpdatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n item_brand: {\n name: reqPayload.item_brand.name,\n ...(reqPayload.item_brand?.code ? { code: reqPayload.item_brand.code } : {}),\n description: reqPayload.item_brand.description,\n status: reqPayload.item_brand.status\n }\n }\n })\n\n let payload: ItemUpdateProps = {\n id: Number(itemId),\n itemType: requestItemType,\n data: {\n brand: {\n name: request.payload.item_brand.name,\n ...(request.payload.item_brand?.code ? { code: request.payload.item_brand.code } : {}),\n description: request.payload.item_brand.description,\n status: Boolean(request.payload.item_brand.status),\n }\n }\n }\n\n response = {\n [`${getRootName(requestItemType, true)}`]: await itemService.updateItem(payload)\n }\n }\n\n if (requestItemType === \"uom\") {\n\n let request = schemaItemUomUpdatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n item_uom: {\n name: reqPayload.item_uom.name,\n ...(reqPayload.item_uom?.code ? { code: reqPayload.item_uom.code } : {}),\n description: reqPayload.item_uom.description,\n status: reqPayload.item_uom.status,\n metric_type: reqPayload.item_uom.metric_type,\n metric_type_display_name: reqPayload.item_uom.metric_type_display_name,\n decimal_digit: reqPayload.item_uom.decimal_digit,\n }\n }\n })\n\n let payload: ItemUpdateProps = {\n id: Number(itemId),\n itemType: requestItemType,\n data: {\n uom: {\n name: request.payload.item_uom.name,\n ...(request.payload.item_uom?.code ? { code: request.payload.item_uom.code } : {}),\n description: request.payload.item_uom.description,\n status: Boolean(request.payload.item_uom.status),\n metricType: reqPayload.item_uom.metric_type,\n metricTypeDisplayName: reqPayload.item_uom.metric_type_display_name,\n decimalDigit: reqPayload.item_uom.decimal_digit,\n }\n }\n }\n\n response = {\n [`${getRootName(requestItemType, true)}`]: await itemService.updateItem(payload)\n }\n }\n\n sendSuccess(res, response, `Item(${requestItemType}) updated successfully`)\n\n } catch (error: any) {\n next(error)\n }\n};\n\n/** items : list items */\nexport const listItems = async (req: Request, res: Response, next: NextFunction): Promise<any> => {\n\n try {\n\n const requestQuery = req.query as unknown as QueryList;\n const requestItemType = req.params.itemType as ItemServiceProps[\"itemType\"];\n\n const itemService = ItemService({\n ...getDefaultServiceProps(req),\n itemType: requestItemType\n })\n\n const { data, total } = await itemService.listItems(requestQuery);\n\n let response = {\n [`${getRootName(requestItemType, false)}`]: data,\n total,\n }\n\n return sendSuccess(res, response, \"Retrieved successfully\");\n\n } catch (error: any) {\n next(error)\n }\n};\n\n/** items/delete : delete items */\nexport const deleteItems = async (req: Request, res: Response, next: NextFunction): Promise<any> => {\n\n try {\n\n const requestItemType = req.body.scope.target as ItemServiceProps[\"itemType\"]\n // const requestQuery = req.query as unknown as QueryList;\n // const requestFileId = Number(req.params.fileId)\n\n const request = schemaItemDeletePayload.parse(req.body)\n\n const itemService = ItemService({\n ...getDefaultServiceProps(req),\n itemType: requestItemType\n })\n\n const payload = {\n ids: request.payload.ids.map((i: any) => BigInt(i))\n }\n\n const data = await itemService.removeItems(payload);\n\n return sendSuccess(res, data, \"Deleted\", getRootName(requestItemType, false));\n\n } catch (error: any) {\n next(error)\n }\n};\n\n/** item/data_types/:itemType : get item data types */\nexport const getItemDataTypes = async (req: Request, res: Response, next: NextFunction): Promise<any> => {\n\n try {\n\n const requestQuery = req.query as unknown as QueryList;\n const requestItemType = req.params.itemType as ItemServiceProps[\"itemType\"];\n\n const itemService = ItemService({\n ...getDefaultServiceProps(req),\n itemType: requestItemType\n })\n\n const data = itemService.getItemDataTypes();\n\n let response = {\n data_types: data\n }\n\n return sendSuccess(res, response, \"Retrieved successfully\");\n\n } catch (error: any) {\n next(error)\n }\n};\n"]}
@@ -0,0 +1,15 @@
1
+ import type { Express } from "express";
2
+ import type { Router } from "express";
3
+ export type RouteConfig = {
4
+ path: string;
5
+ router: Router;
6
+ };
7
+ export type RegisterRouteOptions = {
8
+ path?: string;
9
+ };
10
+ /** ===== Single Route Register ===== */
11
+ export declare const registerRoute: (app: Express, route: RouteConfig, options?: RegisterRouteOptions) => void;
12
+ /** ===== Batch Route Registrar ===== */
13
+ export declare const routeRegistrar: (app: Express, routes: RouteConfig[], options?: {
14
+ basePath?: string;
15
+ }) => void;
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.routeRegistrar = exports.registerRoute = void 0;
4
+ /** ===== Single Route Register ===== */
5
+ const registerRoute = (app, route, options) => {
6
+ const finalPath = options?.path ?? route.path;
7
+ console.log('finalPath', finalPath);
8
+ app.use(finalPath, route.router);
9
+ };
10
+ exports.registerRoute = registerRoute;
11
+ /** ===== Batch Route Registrar ===== */
12
+ const routeRegistrar = (app, routes, options) => {
13
+ routes.forEach((route) => {
14
+ const fullPath = options?.basePath
15
+ ? `${options.basePath}${route.path}`
16
+ : route.path;
17
+ (0, exports.registerRoute)(app, route, { path: fullPath });
18
+ });
19
+ };
20
+ exports.routeRegistrar = routeRegistrar;
21
+ //# sourceMappingURL=RouteFactory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RouteFactory.js","sourceRoot":"","sources":["../../../src/lib/route_factory/RouteFactory.ts"],"names":[],"mappings":";;;AAcA,wCAAwC;AACjC,MAAM,aAAa,GAAG,CACzB,GAAY,EACZ,KAAkB,EAClB,OAA8B,EAChC,EAAE;IACA,MAAM,SAAS,GAAG,OAAO,EAAE,IAAI,IAAI,KAAK,CAAC,IAAI,CAAA;IAC7C,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,SAAS,CAAC,CAAA;IACnC,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,CAAC,MAAM,CAAC,CAAA;AACpC,CAAC,CAAA;AARY,QAAA,aAAa,iBAQzB;AAED,wCAAwC;AACjC,MAAM,cAAc,GAAG,CAC1B,GAAY,EACZ,MAAqB,EACrB,OAA+B,EACjC,EAAE;IACA,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;QACrB,MAAM,QAAQ,GAAG,OAAO,EAAE,QAAQ;YAC9B,CAAC,CAAC,GAAG,OAAO,CAAC,QAAQ,GAAG,KAAK,CAAC,IAAI,EAAE;YACpC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAA;QAEhB,IAAA,qBAAa,EAAC,GAAG,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAA;IACjD,CAAC,CAAC,CAAA;AACN,CAAC,CAAA;AAZY,QAAA,cAAc,kBAY1B","sourcesContent":["import type { Express } from \"express\"\nimport type { Router } from \"express\"\n\nexport type RouteConfig = {\n path: string\n router: Router\n // scope?: string\n // module?: string\n}\n\nexport type RegisterRouteOptions = {\n path?: string\n}\n\n/** ===== Single Route Register ===== */\nexport const registerRoute = (\n app: Express,\n route: RouteConfig,\n options?: RegisterRouteOptions\n) => {\n const finalPath = options?.path ?? route.path\n console.log('finalPath', finalPath)\n app.use(finalPath, route.router)\n}\n\n/** ===== Batch Route Registrar ===== */\nexport const routeRegistrar = (\n app: Express,\n routes: RouteConfig[],\n options?: { basePath?: string }\n) => {\n routes.forEach((route) => {\n const fullPath = options?.basePath\n ? `${options.basePath}${route.path}`\n : route.path\n\n registerRoute(app, route, { path: fullPath })\n })\n}"]}
@@ -0,0 +1,6 @@
1
+ export { registerRoute, routeRegistrar } from "./RouteFactory";
2
+ export type { RouteConfig } from "./RouteFactory";
3
+ export { routeRegistry } from "./routeRegistry";
4
+ export type { RegisteredRoute } from "./routeRegistry";
5
+ export { buildRouterFromRouteSpecs } from "./routeSpec";
6
+ export type { RouteSpec } from "./routeSpec";
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.buildRouterFromRouteSpecs = exports.routeRegistry = exports.routeRegistrar = exports.registerRoute = void 0;
4
+ var RouteFactory_1 = require("./RouteFactory");
5
+ Object.defineProperty(exports, "registerRoute", { enumerable: true, get: function () { return RouteFactory_1.registerRoute; } });
6
+ Object.defineProperty(exports, "routeRegistrar", { enumerable: true, get: function () { return RouteFactory_1.routeRegistrar; } });
7
+ var routeRegistry_1 = require("./routeRegistry");
8
+ Object.defineProperty(exports, "routeRegistry", { enumerable: true, get: function () { return routeRegistry_1.routeRegistry; } });
9
+ var routeSpec_1 = require("./routeSpec");
10
+ Object.defineProperty(exports, "buildRouterFromRouteSpecs", { enumerable: true, get: function () { return routeSpec_1.buildRouterFromRouteSpecs; } });
11
+ //# sourceMappingURL=index.js.map