storemw-core-api 1.0.147 → 1.0.148
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.
- package/dist/app.js +1 -0
- package/dist/app.js.map +1 -1
- package/dist/controllers/index.d.ts +1 -0
- package/dist/controllers/index.js +6 -1
- package/dist/controllers/index.js.map +1 -1
- package/dist/controllers/scheduler/schedulerLogController.d.ts +9 -0
- package/dist/controllers/scheduler/schedulerLogController.js +133 -0
- package/dist/controllers/scheduler/schedulerLogController.js.map +1 -0
- package/dist/middlewares/route/index.d.ts +1 -0
- package/dist/middlewares/route/index.js +7 -2
- package/dist/middlewares/route/index.js.map +1 -1
- package/dist/middlewares/route/validateSchedulerLog.d.ts +5 -0
- package/dist/middlewares/route/validateSchedulerLog.js +20 -0
- package/dist/middlewares/route/validateSchedulerLog.js.map +1 -0
- package/dist/models/index.d.ts +2 -0
- package/dist/models/index.js +4 -1
- package/dist/models/index.js.map +1 -1
- package/dist/models/scheduler/SchedulerLogModel.d.ts +371 -0
- package/dist/models/scheduler/SchedulerLogModel.js +13 -0
- package/dist/models/scheduler/SchedulerLogModel.js.map +1 -0
- package/dist/routes/index.d.ts +1 -0
- package/dist/routes/index.js +3 -1
- package/dist/routes/index.js.map +1 -1
- package/dist/routes/scheduler/schedulerLogRoutes.d.ts +2 -0
- package/dist/routes/scheduler/schedulerLogRoutes.js +13 -0
- package/dist/routes/scheduler/schedulerLogRoutes.js.map +1 -0
- package/dist/routes/scheduler/schedulerLogsRoutes.d.ts +2 -0
- package/dist/routes/scheduler/schedulerLogsRoutes.js +13 -0
- package/dist/routes/scheduler/schedulerLogsRoutes.js.map +1 -0
- package/dist/routes/scheduler/schedulersRoutes.d.ts +2 -0
- package/dist/routes/scheduler/schedulersRoutes.js +12 -0
- package/dist/routes/scheduler/schedulersRoutes.js.map +1 -0
- package/dist/schema/middleware/route/index.d.ts +2 -0
- package/dist/schema/middleware/route/index.js +3 -1
- package/dist/schema/middleware/route/index.js.map +1 -1
- package/dist/schema/middleware/route/schemaSchedulerLog.d.ts +4 -0
- package/dist/schema/middleware/route/schemaSchedulerLog.js +10 -0
- package/dist/schema/middleware/route/schemaSchedulerLog.js.map +1 -0
- package/dist/schema/payload/index.d.ts +2 -0
- package/dist/schema/payload/index.js +4 -1
- package/dist/schema/payload/index.js.map +1 -1
- package/dist/schema/payload/scheduler/schemaSchedulerLog.d.ts +267 -0
- package/dist/schema/payload/scheduler/schemaSchedulerLog.js +48 -0
- package/dist/schema/payload/scheduler/schemaSchedulerLog.js.map +1 -0
- package/dist/services/file/FileService.js.map +1 -1
- package/dist/services/index.d.ts +2 -0
- package/dist/services/index.js +4 -1
- package/dist/services/index.js.map +1 -1
- package/dist/services/scheduler/SchedulerLogService.d.ts +101 -0
- package/dist/services/scheduler/SchedulerLogService.js +146 -0
- package/dist/services/scheduler/SchedulerLogService.js.map +1 -0
- package/package.json +1 -1
- package/prisma/schema.prisma +30 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/schema/payload/index.ts"],"names":[],"mappings":"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","sourcesContent":["export { schemaAuthTokenPayload, schemaAuthTokenOptionalAccountPayload, schemaAuthTokenOperatorPayload } from \"./auth/schemaAuthToken\";\nexport type { SchemaAuthTokenPayload, SchemaAuthTokenOptionalAccountPayload, SchemaAuthTokenOperatorPayload } from \"./auth/schemaAuthToken\";\n\nexport { schemaAccessKeyCreatePayload, schemaAccessKeyRevokePayload } from \"./access_key/schemaAccessKey\";\nexport type { SchemaAccessKeyCreatePayload, SchemaAccessKeyRevokePayload } from \"./access_key/schemaAccessKey\";\n\nexport { schemaResetPasswordRequestPayload, schemaResetPasswordValidateCodePayload, schemaResetPasswordPerformPayload } from \"./reset_password/schemaResetPassword\";\nexport type { SchemaResetPasswordRequestPayload, SchemaResetPasswordValidateCodePayload, SchemaResetPasswordPerformPayload } from \"./reset_password/schemaResetPassword\";\n\nexport { schemaAccountCreatePayload, schemaAccountUpdatePayload, schemaAccountDeletePayload } from \"./account/schemaAccount\";\nexport type { SchemaAccountCreatePayload, SchemaAccountUpdatePayload, SchemaAccountDeletePayload } from \"./account/schemaAccount\";\n\nexport { schemaBusinessCreatePayload, schemaBusiness, schemaBusinessUpdatePayload, schemaBusinessDeletePayload } from \"./business/schemaBusiness\";\nexport type { SchemaBusinessCreatePayload, SchemaBusinessUpdatePayload, SchemaBusinessDeletePayload } from \"./business/schemaBusiness\";\n\nexport { schemaSubscribePlanCreatePayload, schemaSubscribePlanUpdatePayload, schemaSubscribePlanDeletePayload } from \"./subscription/schemaSubscribePlan\";\nexport type { SchemaSubscribePlanCreatePayload, SchemaSubscribePlanUpdatePayload, SchemaSubscribePlanDeletePayload } from \"./subscription/schemaSubscribePlan\";\nexport { schemaAccountSubscribeCreatePayload, schemaAccountSubscribeCancelPayload } from \"./subscription/schemaAccountSubscribe\";\nexport type { SchemaAccountSubscribeCreatePayload, SchemaAccountSubscribeCancelPayload } from \"./subscription/schemaAccountSubscribe\";\n\nexport { schemaUserDeletePayload, schemaUserCredential } from \"./user/schemaUser\";\nexport type { SchemaUserDeletePayload } from \"./user/schemaUser\";\nexport { schemaUserMeChangePasswordPayload, schemaUserMeUpdatePayload } from \"./user/schemaUserMe\";\nexport type { SchemaUserMeChangePasswordPayload, SchemaUserMeUpdatePayload } from \"./user/schemaUserMe\";\nexport { schemaUserOperatorCreatePayload, schemaUserOperatorUpdatePayload } from \"./user/schemaUserOperator\";\nexport type { SchemaUserOperatorCreatePayload, SchemaUserOperatorUpdatePayload } from \"./user/schemaUserOperator\";\nexport { schemaUserCustomerCreatePayload, schemaUserCustomerUpdatePayload } from \"./user/schemaUserCustomer\";\nexport type { SchemaUserCustomerCreatePayload, SchemaUserCustomerUpdatePayload } from \"./user/schemaUserCustomer\";\nexport { schemaUserRetailerCreatePayload, schemaUserRetailerUpdatePayload } from \"./user/schemaUserRetailer\";\nexport type { SchemaUserRetailerCreatePayload, SchemaUserRetailerUpdatePayload } from \"./user/schemaUserRetailer\";\nexport { schemaUserAdministratorCreatePayload, schemaUserAdministratorUpdatePayload } from \"./user/schemaUserAdministrator\";\nexport type { SchemaUserAdministratorCreatePayload, SchemaUserAdministratorUpdatePayload } from \"./user/schemaUserAdministrator\";\nexport { schemaUserWorkerCreatePayload, schemaUserWorkerUpdatePayload } from \"./user/schemaUserWorker\";\nexport type { SchemaUserWorkerCreatePayload, SchemaUserWorkerUpdatePayload } from \"./user/schemaUserWorker\";\nexport { schemaUserDriverCreatePayload, schemaUserDriverUpdatePayload } from \"./user/schemaUserDriver\";\nexport type { SchemaUserDriverCreatePayload, SchemaUserDriverUpdatePayload } from \"./user/schemaUserDriver\";\nexport { schemaUserMemberCreatePayload, schemaUserMemberUpdatePayload } from \"./user/schemaUserMember\";\nexport type { SchemaUserMemberCreatePayload, SchemaUserMemberUpdatePayload } from \"./user/schemaUserMember\";\nexport { schemaUserAgentCreatePayload, schemaUserAgentUpdatePayload } from \"./user/schemaUserAgent\";\nexport type { SchemaUserAgentCreatePayload, SchemaUserAgentUpdatePayload } from \"./user/schemaUserAgent\";\n\nexport { schemaFileUploadPayload, schemaFileDeletePayload } from \"./file/schemaFile\";\nexport type { SchemaFileUploadPayload, SchemaFileDeletePayload } from \"./file/schemaFile\";\n\nexport { schemaDocumentDeletePayload, eNumDocumentTypes } from \"./document/schemaDocument\";\nexport type { SchemaDocumentDeletePayload } from \"./document/schemaDocument\";\nexport { schemaDocumentSalesOrderCreatePayload, schemaDocumentSalesOrderUpdatePayload } from \"./document/schemaDocumentSalesOrder\";\nexport type { SchemaDocumentSalesOrderCreatePayload, SchemaDocumentSalesOrderUpdatePayload } from \"./document/schemaDocumentSalesOrder\";\nexport { schemaDocumentProformaSalesCreatePayload, schemaDocumentProformaSalesUpdatePayload } from \"./document/schemaDocumentProformaSales\";\nexport type { SchemaDocumentProformaSalesCreatePayload, SchemaDocumentProformaSalesUpdatePayload } from \"./document/schemaDocumentProformaSales\";\nexport { schemaDocumentDeliveryOrderCreatePayload, schemaDocumentDeliveryOrderUpdatePayload } from \"./document/schemaDocumentDeliveryOrder\";\nexport type { SchemaDocumentDeliveryOrderCreatePayload, SchemaDocumentDeliveryOrderUpdatePayload } from \"./document/schemaDocumentDeliveryOrder\";\nexport { schemaDocumentReplacementDeliveryOrderCreatePayload, schemaDocumentReplacementDeliveryOrderUpdatePayload } from \"./document/schemaDocumentReplacementDeliveryOrder\";\nexport type { SchemaDocumentReplacementDeliveryOrderCreatePayload, SchemaDocumentReplacementDeliveryOrderUpdatePayload } from \"./document/schemaDocumentReplacementDeliveryOrder\";\nexport { schemaDocumentCashSalesCreatePayload, schemaDocumentCashSalesUpdatePayload } from \"./document/schemaDocumentCashSales\";\nexport type { SchemaDocumentCashSalesCreatePayload, SchemaDocumentCashSalesUpdatePayload } from \"./document/schemaDocumentCashSales\";\nexport { schemaDocumentTripOrderCreatePayload, schemaDocumentTripOrderUpdatePayload } from \"./document/schemaDocumentTripOrder\";\nexport type { SchemaDocumentTripOrderCreatePayload, SchemaDocumentTripOrderUpdatePayload } from \"./document/schemaDocumentTripOrder\";\n\nexport { schemaItemDeletePayload } from \"./item/schemaItem\";\nexport type { SchemaItemDeletePayload } from \"./item/schemaItem\";\nexport { schemaItemProductCreatePayload, schemaItemProductUpdatePayload } from \"./item/schemaItemProduct\";\nexport type { SchemaItemProductCreatePayload, SchemaItemProductUpdatePayload } from \"./item/schemaItemProduct\";\nexport { schemaItemItemCreatePayload, schemaItemItemUpdatePayload, schemaItemItem } from \"./item/schemaItemItem\";\nexport type { SchemaItemItemCreatePayload, SchemaItemItemUpdatePayload } from \"./item/schemaItemItem\";\nexport { schemaItemCategoryCreatePayload, schemaItemCategoryUpdatePayload } from \"./item/schemaItemCategory\";\nexport type { SchemaItemCategoryCreatePayload, SchemaItemCategoryUpdatePayload } from \"./item/schemaItemCategory\";\nexport { schemaItemBrandCreatePayload, schemaItemBrandUpdatePayload } from \"./item/schemaItemBrand\";\nexport type { SchemaItemBrandCreatePayload, SchemaItemBrandUpdatePayload } from \"./item/schemaItemBrand\";\nexport { schemaItemUomCreatePayload, schemaItemUomUpdatePayload } from \"./item/schemaItemUom\";\nexport type { SchemaItemUomCreatePayload, SchemaItemUomUpdatePayload } from \"./item/schemaItemUom\";\n\nexport { schemaLocationLocationCreatePayload, schemaLocationLocationUpdatePayload, schemaLocationLocationDeletePayload, } from \"./location/schemaLocationLocation\";\nexport type { SchemaLocationLocationCreatePayload, SchemaLocationLocationUpdatePayload, SchemaLocationLocationDeletePayload } from \"./location/schemaLocationLocation\";\nexport { schemaLocationRackCreatePayload, schemaLocationRackUpdatePayload, schemaLocationRackDeletePayload, } from \"./location/schemaLocationRack\";\nexport type { SchemaLocationRackCreatePayload, SchemaLocationRackUpdatePayload, SchemaLocationRackDeletePayload } from \"./location/schemaLocationRack\";\nexport { schemaLocationSlotCreatePayload, schemaLocationSlotUpdatePayload, schemaLocationSlotDeletePayload, schemaSlot } from \"./location/schemaLocationSlot\";\nexport type { SchemaLocationSlotCreatePayload, SchemaLocationSlotUpdatePayload, SchemaLocationSlotDeletePayload } from \"./location/schemaLocationSlot\";\n\nexport { schemaInjectionFieldReplacePayload, schemaInjectionFieldCreatePayload, schemaInjectionFieldDeletePayload } from \"./injection_field/schemaInjectionField\";\nexport type { SchemaInjectionFieldReplacePayload, SchemaInjectionFieldCreatePayload, SchemaInjectionFieldDeletePayload } from \"./injection_field/schemaInjectionField\";\n\nexport { schemaRegionCountryCreatePayload, schemaRegionCountryUpdatePayload, schemaRegionCountryDeletePayload } from \"./region/schemaRegionCountry\";\nexport type { SchemaRegionCountryCreatePayload, SchemaRegionCountryDeletePayload } from \"./region/schemaRegionCountry\";\nexport { schemaRegionStateCreatePayload, schemaRegionStateDeletePayload, schemaRegionStateUpdatePayload } from \"./region/schemaRegionState\";\nexport type { SchemaRegionStateCreatePayload, SchemaRegionStateDeletePayload } from \"./region/schemaRegionState\";\nexport { schemaRegionAreaCreatePayload, schemaRegionAreaDeletePayload, schemaRegionAreaUpdatePayload, } from \"./region/schemaRegionArea\";\nexport type { SchemaRegionAreaCreatePayload, SchemaRegionAreaDeletePayload, SchemaRegionAreaUpdatePayload } from \"./region/schemaRegionArea\";\n\n// export { schemaChangePasswordUtilPayload } from \"./utils/unuse/schemaChangePasswordUtil\";\n// export type { SchemaChangePasswordUtilPayload } from \"./utils/unuse/schemaChangePasswordUtil\";\nexport { schemaAccessKeyUtilValidatePayload, schemaAccessKeyUtilAccountOwnerPayload } from \"./utils/schemaAccessKeyUtil\";\nexport type { SchemaAccessKeyUtilValidatePayload, SchemaAccessKeyUtilAccountOwnerPayload } from \"./utils/schemaAccessKeyUtil\";"]}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/schema/payload/index.ts"],"names":[],"mappings":"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","sourcesContent":["export { schemaAuthTokenPayload, schemaAuthTokenOptionalAccountPayload, schemaAuthTokenOperatorPayload } from \"./auth/schemaAuthToken\";\nexport type { SchemaAuthTokenPayload, SchemaAuthTokenOptionalAccountPayload, SchemaAuthTokenOperatorPayload } from \"./auth/schemaAuthToken\";\n\nexport { schemaAccessKeyCreatePayload, schemaAccessKeyRevokePayload } from \"./access_key/schemaAccessKey\";\nexport type { SchemaAccessKeyCreatePayload, SchemaAccessKeyRevokePayload } from \"./access_key/schemaAccessKey\";\n\nexport { schemaResetPasswordRequestPayload, schemaResetPasswordValidateCodePayload, schemaResetPasswordPerformPayload } from \"./reset_password/schemaResetPassword\";\nexport type { SchemaResetPasswordRequestPayload, SchemaResetPasswordValidateCodePayload, SchemaResetPasswordPerformPayload } from \"./reset_password/schemaResetPassword\";\n\nexport { schemaAccountCreatePayload, schemaAccountUpdatePayload, schemaAccountDeletePayload } from \"./account/schemaAccount\";\nexport type { SchemaAccountCreatePayload, SchemaAccountUpdatePayload, SchemaAccountDeletePayload } from \"./account/schemaAccount\";\n\nexport { schemaBusinessCreatePayload, schemaBusiness, schemaBusinessUpdatePayload, schemaBusinessDeletePayload } from \"./business/schemaBusiness\";\nexport type { SchemaBusinessCreatePayload, SchemaBusinessUpdatePayload, SchemaBusinessDeletePayload } from \"./business/schemaBusiness\";\n\nexport { schemaSubscribePlanCreatePayload, schemaSubscribePlanUpdatePayload, schemaSubscribePlanDeletePayload } from \"./subscription/schemaSubscribePlan\";\nexport type { SchemaSubscribePlanCreatePayload, SchemaSubscribePlanUpdatePayload, SchemaSubscribePlanDeletePayload } from \"./subscription/schemaSubscribePlan\";\nexport { schemaAccountSubscribeCreatePayload, schemaAccountSubscribeCancelPayload } from \"./subscription/schemaAccountSubscribe\";\nexport type { SchemaAccountSubscribeCreatePayload, SchemaAccountSubscribeCancelPayload } from \"./subscription/schemaAccountSubscribe\";\n\nexport { schemaUserDeletePayload, schemaUserCredential } from \"./user/schemaUser\";\nexport type { SchemaUserDeletePayload } from \"./user/schemaUser\";\nexport { schemaUserMeChangePasswordPayload, schemaUserMeUpdatePayload } from \"./user/schemaUserMe\";\nexport type { SchemaUserMeChangePasswordPayload, SchemaUserMeUpdatePayload } from \"./user/schemaUserMe\";\nexport { schemaUserOperatorCreatePayload, schemaUserOperatorUpdatePayload } from \"./user/schemaUserOperator\";\nexport type { SchemaUserOperatorCreatePayload, SchemaUserOperatorUpdatePayload } from \"./user/schemaUserOperator\";\nexport { schemaUserCustomerCreatePayload, schemaUserCustomerUpdatePayload } from \"./user/schemaUserCustomer\";\nexport type { SchemaUserCustomerCreatePayload, SchemaUserCustomerUpdatePayload } from \"./user/schemaUserCustomer\";\nexport { schemaUserRetailerCreatePayload, schemaUserRetailerUpdatePayload } from \"./user/schemaUserRetailer\";\nexport type { SchemaUserRetailerCreatePayload, SchemaUserRetailerUpdatePayload } from \"./user/schemaUserRetailer\";\nexport { schemaUserAdministratorCreatePayload, schemaUserAdministratorUpdatePayload } from \"./user/schemaUserAdministrator\";\nexport type { SchemaUserAdministratorCreatePayload, SchemaUserAdministratorUpdatePayload } from \"./user/schemaUserAdministrator\";\nexport { schemaUserWorkerCreatePayload, schemaUserWorkerUpdatePayload } from \"./user/schemaUserWorker\";\nexport type { SchemaUserWorkerCreatePayload, SchemaUserWorkerUpdatePayload } from \"./user/schemaUserWorker\";\nexport { schemaUserDriverCreatePayload, schemaUserDriverUpdatePayload } from \"./user/schemaUserDriver\";\nexport type { SchemaUserDriverCreatePayload, SchemaUserDriverUpdatePayload } from \"./user/schemaUserDriver\";\nexport { schemaUserMemberCreatePayload, schemaUserMemberUpdatePayload } from \"./user/schemaUserMember\";\nexport type { SchemaUserMemberCreatePayload, SchemaUserMemberUpdatePayload } from \"./user/schemaUserMember\";\nexport { schemaUserAgentCreatePayload, schemaUserAgentUpdatePayload } from \"./user/schemaUserAgent\";\nexport type { SchemaUserAgentCreatePayload, SchemaUserAgentUpdatePayload } from \"./user/schemaUserAgent\";\n\nexport { schemaFileUploadPayload, schemaFileDeletePayload } from \"./file/schemaFile\";\nexport type { SchemaFileUploadPayload, SchemaFileDeletePayload } from \"./file/schemaFile\";\n\nexport { schemaDocumentDeletePayload, eNumDocumentTypes } from \"./document/schemaDocument\";\nexport type { SchemaDocumentDeletePayload } from \"./document/schemaDocument\";\nexport { schemaDocumentSalesOrderCreatePayload, schemaDocumentSalesOrderUpdatePayload } from \"./document/schemaDocumentSalesOrder\";\nexport type { SchemaDocumentSalesOrderCreatePayload, SchemaDocumentSalesOrderUpdatePayload } from \"./document/schemaDocumentSalesOrder\";\nexport { schemaDocumentProformaSalesCreatePayload, schemaDocumentProformaSalesUpdatePayload } from \"./document/schemaDocumentProformaSales\";\nexport type { SchemaDocumentProformaSalesCreatePayload, SchemaDocumentProformaSalesUpdatePayload } from \"./document/schemaDocumentProformaSales\";\nexport { schemaDocumentDeliveryOrderCreatePayload, schemaDocumentDeliveryOrderUpdatePayload } from \"./document/schemaDocumentDeliveryOrder\";\nexport type { SchemaDocumentDeliveryOrderCreatePayload, SchemaDocumentDeliveryOrderUpdatePayload } from \"./document/schemaDocumentDeliveryOrder\";\nexport { schemaDocumentReplacementDeliveryOrderCreatePayload, schemaDocumentReplacementDeliveryOrderUpdatePayload } from \"./document/schemaDocumentReplacementDeliveryOrder\";\nexport type { SchemaDocumentReplacementDeliveryOrderCreatePayload, SchemaDocumentReplacementDeliveryOrderUpdatePayload } from \"./document/schemaDocumentReplacementDeliveryOrder\";\nexport { schemaDocumentCashSalesCreatePayload, schemaDocumentCashSalesUpdatePayload } from \"./document/schemaDocumentCashSales\";\nexport type { SchemaDocumentCashSalesCreatePayload, SchemaDocumentCashSalesUpdatePayload } from \"./document/schemaDocumentCashSales\";\nexport { schemaDocumentTripOrderCreatePayload, schemaDocumentTripOrderUpdatePayload } from \"./document/schemaDocumentTripOrder\";\nexport type { SchemaDocumentTripOrderCreatePayload, SchemaDocumentTripOrderUpdatePayload } from \"./document/schemaDocumentTripOrder\";\n\nexport { schemaItemDeletePayload } from \"./item/schemaItem\";\nexport type { SchemaItemDeletePayload } from \"./item/schemaItem\";\nexport { schemaItemProductCreatePayload, schemaItemProductUpdatePayload } from \"./item/schemaItemProduct\";\nexport type { SchemaItemProductCreatePayload, SchemaItemProductUpdatePayload } from \"./item/schemaItemProduct\";\nexport { schemaItemItemCreatePayload, schemaItemItemUpdatePayload, schemaItemItem } from \"./item/schemaItemItem\";\nexport type { SchemaItemItemCreatePayload, SchemaItemItemUpdatePayload } from \"./item/schemaItemItem\";\nexport { schemaItemCategoryCreatePayload, schemaItemCategoryUpdatePayload } from \"./item/schemaItemCategory\";\nexport type { SchemaItemCategoryCreatePayload, SchemaItemCategoryUpdatePayload } from \"./item/schemaItemCategory\";\nexport { schemaItemBrandCreatePayload, schemaItemBrandUpdatePayload } from \"./item/schemaItemBrand\";\nexport type { SchemaItemBrandCreatePayload, SchemaItemBrandUpdatePayload } from \"./item/schemaItemBrand\";\nexport { schemaItemUomCreatePayload, schemaItemUomUpdatePayload } from \"./item/schemaItemUom\";\nexport type { SchemaItemUomCreatePayload, SchemaItemUomUpdatePayload } from \"./item/schemaItemUom\";\n\nexport { schemaLocationLocationCreatePayload, schemaLocationLocationUpdatePayload, schemaLocationLocationDeletePayload, } from \"./location/schemaLocationLocation\";\nexport type { SchemaLocationLocationCreatePayload, SchemaLocationLocationUpdatePayload, SchemaLocationLocationDeletePayload } from \"./location/schemaLocationLocation\";\nexport { schemaLocationRackCreatePayload, schemaLocationRackUpdatePayload, schemaLocationRackDeletePayload, } from \"./location/schemaLocationRack\";\nexport type { SchemaLocationRackCreatePayload, SchemaLocationRackUpdatePayload, SchemaLocationRackDeletePayload } from \"./location/schemaLocationRack\";\nexport { schemaLocationSlotCreatePayload, schemaLocationSlotUpdatePayload, schemaLocationSlotDeletePayload, schemaSlot } from \"./location/schemaLocationSlot\";\nexport type { SchemaLocationSlotCreatePayload, SchemaLocationSlotUpdatePayload, SchemaLocationSlotDeletePayload } from \"./location/schemaLocationSlot\";\n\nexport { schemaInjectionFieldReplacePayload, schemaInjectionFieldCreatePayload, schemaInjectionFieldDeletePayload } from \"./injection_field/schemaInjectionField\";\nexport type { SchemaInjectionFieldReplacePayload, SchemaInjectionFieldCreatePayload, SchemaInjectionFieldDeletePayload } from \"./injection_field/schemaInjectionField\";\n\nexport { schemaRegionCountryCreatePayload, schemaRegionCountryUpdatePayload, schemaRegionCountryDeletePayload } from \"./region/schemaRegionCountry\";\nexport type { SchemaRegionCountryCreatePayload, SchemaRegionCountryDeletePayload } from \"./region/schemaRegionCountry\";\nexport { schemaRegionStateCreatePayload, schemaRegionStateDeletePayload, schemaRegionStateUpdatePayload } from \"./region/schemaRegionState\";\nexport type { SchemaRegionStateCreatePayload, SchemaRegionStateDeletePayload } from \"./region/schemaRegionState\";\nexport { schemaRegionAreaCreatePayload, schemaRegionAreaDeletePayload, schemaRegionAreaUpdatePayload, } from \"./region/schemaRegionArea\";\nexport type { SchemaRegionAreaCreatePayload, SchemaRegionAreaDeletePayload, SchemaRegionAreaUpdatePayload } from \"./region/schemaRegionArea\";\n\nexport { schemaSchedulerLogCreatePayload, schemaSchedulerLogDeletePayload } from \"./scheduler/schemaSchedulerLog\";\nexport type { SchemaSchedulerLogCreatePayload, SchedulerLogFlowTypeEnum, SchemaSchedulerLogDeletePayload } from \"./scheduler/schemaSchedulerLog\";\n\n// export { schemaChangePasswordUtilPayload } from \"./utils/unuse/schemaChangePasswordUtil\";\n// export type { SchemaChangePasswordUtilPayload } from \"./utils/unuse/schemaChangePasswordUtil\";\nexport { schemaAccessKeyUtilValidatePayload, schemaAccessKeyUtilAccountOwnerPayload } from \"./utils/schemaAccessKeyUtil\";\nexport type { SchemaAccessKeyUtilValidatePayload, SchemaAccessKeyUtilAccountOwnerPayload } from \"./utils/schemaAccessKeyUtil\";"]}
|
|
@@ -0,0 +1,267 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
export declare const SchedulerLogFlowTypeEnum: z.ZodEnum<["in", "out"]>;
|
|
3
|
+
export declare const schemaSchedulerLog: z.ZodObject<{
|
|
4
|
+
schedulerTaskId: z.ZodNumber;
|
|
5
|
+
flowType: z.ZodEnum<["in", "out"]>;
|
|
6
|
+
fieldRef: z.ZodString;
|
|
7
|
+
fieldModule: z.ZodString;
|
|
8
|
+
sourceType: z.ZodString;
|
|
9
|
+
sourceEntityId: z.ZodString;
|
|
10
|
+
sourceEntityLabel: z.ZodString;
|
|
11
|
+
sourceEntityData: z.ZodString;
|
|
12
|
+
destinationType: z.ZodString;
|
|
13
|
+
destinationEntityId: z.ZodString;
|
|
14
|
+
destinationEntityLabel: z.ZodString;
|
|
15
|
+
destinationSubmitPayload: z.ZodString;
|
|
16
|
+
destinationSubmitResponse: z.ZodString;
|
|
17
|
+
logAction: z.ZodString;
|
|
18
|
+
logLabel: z.ZodString;
|
|
19
|
+
logStatus: z.ZodBoolean;
|
|
20
|
+
logMessage: z.ZodString;
|
|
21
|
+
}, "strip", z.ZodTypeAny, {
|
|
22
|
+
schedulerTaskId: number;
|
|
23
|
+
flowType: "in" | "out";
|
|
24
|
+
fieldRef: string;
|
|
25
|
+
fieldModule: string;
|
|
26
|
+
sourceType: string;
|
|
27
|
+
sourceEntityId: string;
|
|
28
|
+
sourceEntityLabel: string;
|
|
29
|
+
sourceEntityData: string;
|
|
30
|
+
destinationType: string;
|
|
31
|
+
destinationEntityId: string;
|
|
32
|
+
destinationEntityLabel: string;
|
|
33
|
+
destinationSubmitPayload: string;
|
|
34
|
+
destinationSubmitResponse: string;
|
|
35
|
+
logAction: string;
|
|
36
|
+
logLabel: string;
|
|
37
|
+
logStatus: boolean;
|
|
38
|
+
logMessage: string;
|
|
39
|
+
}, {
|
|
40
|
+
schedulerTaskId: number;
|
|
41
|
+
flowType: "in" | "out";
|
|
42
|
+
fieldRef: string;
|
|
43
|
+
fieldModule: string;
|
|
44
|
+
sourceType: string;
|
|
45
|
+
sourceEntityId: string;
|
|
46
|
+
sourceEntityLabel: string;
|
|
47
|
+
sourceEntityData: string;
|
|
48
|
+
destinationType: string;
|
|
49
|
+
destinationEntityId: string;
|
|
50
|
+
destinationEntityLabel: string;
|
|
51
|
+
destinationSubmitPayload: string;
|
|
52
|
+
destinationSubmitResponse: string;
|
|
53
|
+
logAction: string;
|
|
54
|
+
logLabel: string;
|
|
55
|
+
logStatus: boolean;
|
|
56
|
+
logMessage: string;
|
|
57
|
+
}>;
|
|
58
|
+
export declare const schemaSchedulerLogScope: z.ZodObject<{
|
|
59
|
+
target: z.ZodLiteral<"scheduler_log">;
|
|
60
|
+
action: z.ZodString;
|
|
61
|
+
}, "strip", z.ZodTypeAny, {
|
|
62
|
+
target: "scheduler_log";
|
|
63
|
+
action: string;
|
|
64
|
+
}, {
|
|
65
|
+
target: "scheduler_log";
|
|
66
|
+
action: string;
|
|
67
|
+
}>;
|
|
68
|
+
/** Create */
|
|
69
|
+
export declare const schemaSchedulerLogCreatePayload: z.ZodObject<{
|
|
70
|
+
scope: z.ZodObject<{
|
|
71
|
+
target: z.ZodLiteral<"scheduler_log">;
|
|
72
|
+
action: z.ZodString;
|
|
73
|
+
}, "strip", z.ZodTypeAny, {
|
|
74
|
+
target: "scheduler_log";
|
|
75
|
+
action: string;
|
|
76
|
+
}, {
|
|
77
|
+
target: "scheduler_log";
|
|
78
|
+
action: string;
|
|
79
|
+
}>;
|
|
80
|
+
payload: z.ZodObject<{
|
|
81
|
+
schedulerLog: z.ZodObject<{
|
|
82
|
+
schedulerTaskId: z.ZodNumber;
|
|
83
|
+
flowType: z.ZodEnum<["in", "out"]>;
|
|
84
|
+
fieldRef: z.ZodString;
|
|
85
|
+
fieldModule: z.ZodString;
|
|
86
|
+
sourceType: z.ZodString;
|
|
87
|
+
sourceEntityId: z.ZodString;
|
|
88
|
+
sourceEntityLabel: z.ZodString;
|
|
89
|
+
sourceEntityData: z.ZodString;
|
|
90
|
+
destinationType: z.ZodString;
|
|
91
|
+
destinationEntityId: z.ZodString;
|
|
92
|
+
destinationEntityLabel: z.ZodString;
|
|
93
|
+
destinationSubmitPayload: z.ZodString;
|
|
94
|
+
destinationSubmitResponse: z.ZodString;
|
|
95
|
+
logAction: z.ZodString;
|
|
96
|
+
logLabel: z.ZodString;
|
|
97
|
+
logStatus: z.ZodBoolean;
|
|
98
|
+
logMessage: z.ZodString;
|
|
99
|
+
}, "strip", z.ZodTypeAny, {
|
|
100
|
+
schedulerTaskId: number;
|
|
101
|
+
flowType: "in" | "out";
|
|
102
|
+
fieldRef: string;
|
|
103
|
+
fieldModule: string;
|
|
104
|
+
sourceType: string;
|
|
105
|
+
sourceEntityId: string;
|
|
106
|
+
sourceEntityLabel: string;
|
|
107
|
+
sourceEntityData: string;
|
|
108
|
+
destinationType: string;
|
|
109
|
+
destinationEntityId: string;
|
|
110
|
+
destinationEntityLabel: string;
|
|
111
|
+
destinationSubmitPayload: string;
|
|
112
|
+
destinationSubmitResponse: string;
|
|
113
|
+
logAction: string;
|
|
114
|
+
logLabel: string;
|
|
115
|
+
logStatus: boolean;
|
|
116
|
+
logMessage: string;
|
|
117
|
+
}, {
|
|
118
|
+
schedulerTaskId: number;
|
|
119
|
+
flowType: "in" | "out";
|
|
120
|
+
fieldRef: string;
|
|
121
|
+
fieldModule: string;
|
|
122
|
+
sourceType: string;
|
|
123
|
+
sourceEntityId: string;
|
|
124
|
+
sourceEntityLabel: string;
|
|
125
|
+
sourceEntityData: string;
|
|
126
|
+
destinationType: string;
|
|
127
|
+
destinationEntityId: string;
|
|
128
|
+
destinationEntityLabel: string;
|
|
129
|
+
destinationSubmitPayload: string;
|
|
130
|
+
destinationSubmitResponse: string;
|
|
131
|
+
logAction: string;
|
|
132
|
+
logLabel: string;
|
|
133
|
+
logStatus: boolean;
|
|
134
|
+
logMessage: string;
|
|
135
|
+
}>;
|
|
136
|
+
}, "strip", z.ZodTypeAny, {
|
|
137
|
+
schedulerLog: {
|
|
138
|
+
schedulerTaskId: number;
|
|
139
|
+
flowType: "in" | "out";
|
|
140
|
+
fieldRef: string;
|
|
141
|
+
fieldModule: string;
|
|
142
|
+
sourceType: string;
|
|
143
|
+
sourceEntityId: string;
|
|
144
|
+
sourceEntityLabel: string;
|
|
145
|
+
sourceEntityData: string;
|
|
146
|
+
destinationType: string;
|
|
147
|
+
destinationEntityId: string;
|
|
148
|
+
destinationEntityLabel: string;
|
|
149
|
+
destinationSubmitPayload: string;
|
|
150
|
+
destinationSubmitResponse: string;
|
|
151
|
+
logAction: string;
|
|
152
|
+
logLabel: string;
|
|
153
|
+
logStatus: boolean;
|
|
154
|
+
logMessage: string;
|
|
155
|
+
};
|
|
156
|
+
}, {
|
|
157
|
+
schedulerLog: {
|
|
158
|
+
schedulerTaskId: number;
|
|
159
|
+
flowType: "in" | "out";
|
|
160
|
+
fieldRef: string;
|
|
161
|
+
fieldModule: string;
|
|
162
|
+
sourceType: string;
|
|
163
|
+
sourceEntityId: string;
|
|
164
|
+
sourceEntityLabel: string;
|
|
165
|
+
sourceEntityData: string;
|
|
166
|
+
destinationType: string;
|
|
167
|
+
destinationEntityId: string;
|
|
168
|
+
destinationEntityLabel: string;
|
|
169
|
+
destinationSubmitPayload: string;
|
|
170
|
+
destinationSubmitResponse: string;
|
|
171
|
+
logAction: string;
|
|
172
|
+
logLabel: string;
|
|
173
|
+
logStatus: boolean;
|
|
174
|
+
logMessage: string;
|
|
175
|
+
};
|
|
176
|
+
}>;
|
|
177
|
+
}, "strip", z.ZodTypeAny, {
|
|
178
|
+
scope: {
|
|
179
|
+
target: "scheduler_log";
|
|
180
|
+
action: string;
|
|
181
|
+
};
|
|
182
|
+
payload: {
|
|
183
|
+
schedulerLog: {
|
|
184
|
+
schedulerTaskId: number;
|
|
185
|
+
flowType: "in" | "out";
|
|
186
|
+
fieldRef: string;
|
|
187
|
+
fieldModule: string;
|
|
188
|
+
sourceType: string;
|
|
189
|
+
sourceEntityId: string;
|
|
190
|
+
sourceEntityLabel: string;
|
|
191
|
+
sourceEntityData: string;
|
|
192
|
+
destinationType: string;
|
|
193
|
+
destinationEntityId: string;
|
|
194
|
+
destinationEntityLabel: string;
|
|
195
|
+
destinationSubmitPayload: string;
|
|
196
|
+
destinationSubmitResponse: string;
|
|
197
|
+
logAction: string;
|
|
198
|
+
logLabel: string;
|
|
199
|
+
logStatus: boolean;
|
|
200
|
+
logMessage: string;
|
|
201
|
+
};
|
|
202
|
+
};
|
|
203
|
+
}, {
|
|
204
|
+
scope: {
|
|
205
|
+
target: "scheduler_log";
|
|
206
|
+
action: string;
|
|
207
|
+
};
|
|
208
|
+
payload: {
|
|
209
|
+
schedulerLog: {
|
|
210
|
+
schedulerTaskId: number;
|
|
211
|
+
flowType: "in" | "out";
|
|
212
|
+
fieldRef: string;
|
|
213
|
+
fieldModule: string;
|
|
214
|
+
sourceType: string;
|
|
215
|
+
sourceEntityId: string;
|
|
216
|
+
sourceEntityLabel: string;
|
|
217
|
+
sourceEntityData: string;
|
|
218
|
+
destinationType: string;
|
|
219
|
+
destinationEntityId: string;
|
|
220
|
+
destinationEntityLabel: string;
|
|
221
|
+
destinationSubmitPayload: string;
|
|
222
|
+
destinationSubmitResponse: string;
|
|
223
|
+
logAction: string;
|
|
224
|
+
logLabel: string;
|
|
225
|
+
logStatus: boolean;
|
|
226
|
+
logMessage: string;
|
|
227
|
+
};
|
|
228
|
+
};
|
|
229
|
+
}>;
|
|
230
|
+
export type SchemaSchedulerLogCreatePayload = z.infer<typeof schemaSchedulerLogCreatePayload>;
|
|
231
|
+
/** Delete */
|
|
232
|
+
export declare const schemaSchedulerLogDeletePayload: z.ZodObject<{
|
|
233
|
+
scope: z.ZodObject<{
|
|
234
|
+
target: z.ZodLiteral<"scheduler_log">;
|
|
235
|
+
action: z.ZodString;
|
|
236
|
+
}, "strip", z.ZodTypeAny, {
|
|
237
|
+
target: "scheduler_log";
|
|
238
|
+
action: string;
|
|
239
|
+
}, {
|
|
240
|
+
target: "scheduler_log";
|
|
241
|
+
action: string;
|
|
242
|
+
}>;
|
|
243
|
+
payload: z.ZodObject<{
|
|
244
|
+
ids: z.ZodArray<z.ZodNumber, "many">;
|
|
245
|
+
}, "strip", z.ZodTypeAny, {
|
|
246
|
+
ids: number[];
|
|
247
|
+
}, {
|
|
248
|
+
ids: number[];
|
|
249
|
+
}>;
|
|
250
|
+
}, "strip", z.ZodTypeAny, {
|
|
251
|
+
scope: {
|
|
252
|
+
target: "scheduler_log";
|
|
253
|
+
action: string;
|
|
254
|
+
};
|
|
255
|
+
payload: {
|
|
256
|
+
ids: number[];
|
|
257
|
+
};
|
|
258
|
+
}, {
|
|
259
|
+
scope: {
|
|
260
|
+
target: "scheduler_log";
|
|
261
|
+
action: string;
|
|
262
|
+
};
|
|
263
|
+
payload: {
|
|
264
|
+
ids: number[];
|
|
265
|
+
};
|
|
266
|
+
}>;
|
|
267
|
+
export type SchemaSchedulerLogDeletePayload = z.infer<typeof schemaSchedulerLogDeletePayload>;
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.schemaSchedulerLogDeletePayload = exports.schemaSchedulerLogCreatePayload = exports.schemaSchedulerLogScope = exports.schemaSchedulerLog = exports.SchedulerLogFlowTypeEnum = void 0;
|
|
4
|
+
const zod_1 = require("zod");
|
|
5
|
+
// Hardcoded enum (safe and type-safe)
|
|
6
|
+
exports.SchedulerLogFlowTypeEnum = zod_1.z.enum(["in", "out"], {
|
|
7
|
+
errorMap: () => ({
|
|
8
|
+
message: 'Invalid flowType. Allowed values: "in" or "out"',
|
|
9
|
+
}),
|
|
10
|
+
});
|
|
11
|
+
exports.schemaSchedulerLog = zod_1.z.object({
|
|
12
|
+
schedulerTaskId: zod_1.z.number(),
|
|
13
|
+
flowType: exports.SchedulerLogFlowTypeEnum,
|
|
14
|
+
fieldRef: zod_1.z.string().min(1, "field_ref is required"),
|
|
15
|
+
fieldModule: zod_1.z.string().min(1, "field_module is required"),
|
|
16
|
+
sourceType: zod_1.z.string(),
|
|
17
|
+
sourceEntityId: zod_1.z.string(),
|
|
18
|
+
sourceEntityLabel: zod_1.z.string(),
|
|
19
|
+
sourceEntityData: zod_1.z.string(),
|
|
20
|
+
destinationType: zod_1.z.string(),
|
|
21
|
+
destinationEntityId: zod_1.z.string(),
|
|
22
|
+
destinationEntityLabel: zod_1.z.string(),
|
|
23
|
+
destinationSubmitPayload: zod_1.z.string(),
|
|
24
|
+
destinationSubmitResponse: zod_1.z.string(),
|
|
25
|
+
logAction: zod_1.z.string(),
|
|
26
|
+
logLabel: zod_1.z.string(),
|
|
27
|
+
logStatus: zod_1.z.boolean(),
|
|
28
|
+
logMessage: zod_1.z.string()
|
|
29
|
+
});
|
|
30
|
+
exports.schemaSchedulerLogScope = zod_1.z.object({
|
|
31
|
+
target: zod_1.z.literal("scheduler_log"),
|
|
32
|
+
action: zod_1.z.string(),
|
|
33
|
+
});
|
|
34
|
+
/** Create */
|
|
35
|
+
exports.schemaSchedulerLogCreatePayload = zod_1.z.object({
|
|
36
|
+
scope: exports.schemaSchedulerLogScope,
|
|
37
|
+
payload: zod_1.z.object({
|
|
38
|
+
schedulerLog: exports.schemaSchedulerLog
|
|
39
|
+
})
|
|
40
|
+
});
|
|
41
|
+
/** Delete */
|
|
42
|
+
exports.schemaSchedulerLogDeletePayload = zod_1.z.object({
|
|
43
|
+
scope: exports.schemaSchedulerLogScope,
|
|
44
|
+
payload: zod_1.z.object({
|
|
45
|
+
ids: zod_1.z.array(zod_1.z.number()).min(1, "ids must contain at least one number"),
|
|
46
|
+
}),
|
|
47
|
+
});
|
|
48
|
+
//# sourceMappingURL=schemaSchedulerLog.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schemaSchedulerLog.js","sourceRoot":"","sources":["../../../../src/schema/payload/scheduler/schemaSchedulerLog.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AAIxB,sCAAsC;AACzB,QAAA,wBAAwB,GAAG,OAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE;IAC1D,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC;QACb,OAAO,EAAE,iDAAiD;KAC7D,CAAC;CACL,CAAC,CAAC;AAEU,QAAA,kBAAkB,GAAG,OAAC,CAAC,MAAM,CAAC;IACvC,eAAe,EAAE,OAAC,CAAC,MAAM,EAAE;IAC3B,QAAQ,EAAE,gCAAwB;IAClC,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,uBAAuB,CAAC;IACpD,WAAW,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,0BAA0B,CAAC;IAE1D,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE;IACtB,cAAc,EAAE,OAAC,CAAC,MAAM,EAAE;IAC1B,iBAAiB,EAAE,OAAC,CAAC,MAAM,EAAE;IAC7B,gBAAgB,EAAE,OAAC,CAAC,MAAM,EAAE;IAE5B,eAAe,EAAE,OAAC,CAAC,MAAM,EAAE;IAC3B,mBAAmB,EAAE,OAAC,CAAC,MAAM,EAAE;IAC/B,sBAAsB,EAAE,OAAC,CAAC,MAAM,EAAE;IAClC,wBAAwB,EAAE,OAAC,CAAC,MAAM,EAAE;IACpC,yBAAyB,EAAE,OAAC,CAAC,MAAM,EAAE;IAErC,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE;IACrB,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE;IACpB,SAAS,EAAE,OAAC,CAAC,OAAO,EAAE;IACtB,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE;CACzB,CAAC,CAAA;AAEW,QAAA,uBAAuB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC5C,MAAM,EAAE,OAAC,CAAC,OAAO,CAAC,eAAe,CAAC;IAClC,MAAM,EAAE,OAAC,CAAC,MAAM,EAAE;CACrB,CAAC,CAAA;AAEF,aAAa;AACA,QAAA,+BAA+B,GAAG,OAAC,CAAC,MAAM,CAAC;IACpD,KAAK,EAAE,+BAAuB;IAC9B,OAAO,EAAE,OAAC,CAAC,MAAM,CAAC;QACd,YAAY,EAAE,0BAAkB;KACnC,CAAC;CACL,CAAC,CAAC;AAIH,aAAa;AACA,QAAA,+BAA+B,GAAG,OAAC,CAAC,MAAM,CAAC;IACpD,KAAK,EAAE,+BAAuB;IAC9B,OAAO,EAAE,OAAC,CAAC,MAAM,CAAC;QACd,GAAG,EAAE,OAAC,CAAC,KAAK,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,sCAAsC,CAAC;KAC1E,CAAC;CACL,CAAC,CAAC","sourcesContent":["import { z } from \"zod\";\n\nimport { _, dayjs } from \"@/utils\";\n\n// Hardcoded enum (safe and type-safe)\nexport const SchedulerLogFlowTypeEnum = z.enum([\"in\", \"out\"], {\n errorMap: () => ({\n message: 'Invalid flowType. Allowed values: \"in\" or \"out\"',\n }),\n});\n\nexport const schemaSchedulerLog = z.object({\n schedulerTaskId: z.number(),\n flowType: SchedulerLogFlowTypeEnum,\n fieldRef: z.string().min(1, \"field_ref is required\"),\n fieldModule: z.string().min(1, \"field_module is required\"),\n\n sourceType: z.string(),\n sourceEntityId: z.string(),\n sourceEntityLabel: z.string(),\n sourceEntityData: z.string(),\n\n destinationType: z.string(),\n destinationEntityId: z.string(),\n destinationEntityLabel: z.string(),\n destinationSubmitPayload: z.string(),\n destinationSubmitResponse: z.string(),\n\n logAction: z.string(),\n logLabel: z.string(),\n logStatus: z.boolean(),\n logMessage: z.string()\n})\n\nexport const schemaSchedulerLogScope = z.object({\n target: z.literal(\"scheduler_log\"),\n action: z.string(),\n})\n\n/** Create */\nexport const schemaSchedulerLogCreatePayload = z.object({\n scope: schemaSchedulerLogScope,\n payload: z.object({\n schedulerLog: schemaSchedulerLog\n })\n});\n\nexport type SchemaSchedulerLogCreatePayload = z.infer<typeof schemaSchedulerLogCreatePayload>;\n\n/** Delete */\nexport const schemaSchedulerLogDeletePayload = z.object({\n scope: schemaSchedulerLogScope,\n payload: z.object({\n ids: z.array(z.number()).min(1, \"ids must contain at least one number\"),\n }),\n});\n\nexport type SchemaSchedulerLogDeletePayload = z.infer<typeof schemaSchedulerLogDeletePayload>;"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FileService.js","sourceRoot":"","sources":["../../../src/services/file/FileService.ts"],"names":[],"mappings":"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","sourcesContent":["import { _, logError, throwError, generateFileThumbnailBuffer } from \"@/utils\";\n\nimport path from \"path\";\n\nimport {\n FileModel,\n ModelFileFields,\n} from \"@/models\";\n\nimport { FileLocalProviderOptions, FileLocalStorageProvider, FileLocalUploadFileProps } from \"./FileLocalStorageProvider\"\nimport { FileGoogleCloudProviderOptions, FileGoogleCloudStorageProvider, FileGoogleCloudUploadFileProps } from \"./FileGoogleCloudStorageProvider\"\nimport { FileAwsS3ProviderOptions, FileAwsS3StorageProvider, FileAwsS3UploadFileProps } from \"./FileAwsS3StorageProvider\"\nimport { getFileStorageProvider, FileStorageProviderType } from \"./FileStorageProviderRegistry\";\n\nimport { InjectionFieldModuleRef } from \"@/services\"\n\nimport { QueryList, QueryGet } from \"@/schema/common\";\n\nimport { DefaultServiceProps } from \"@/utils\";\n\nimport { getFileSqlRelationMaps, buildSqlSelect, buildSqlLimitOffset, buildSqlOrderBy, getListWithCount } from \"@/lib\";\n\nimport {\n buildFileMainSqlSelect,\n buildFileDefaultSqlSelect\n} from \"@/lib\";\n\nimport { FileImageCompressionOptions, compressImageBuffer } from \"./ImageCompression\";\nexport { FileImageCompressionOptions } from \"./ImageCompression\"\nimport { FileVideoCompressionOptions, compressVideoBuffer } from \"./VideoCompression\";\nimport { FeatureFileStorageOptions, FeatureFileStorageProps, FeatureFileStorageStartUploadProps, FileStorageHook } from \"@/features\";\nexport { FileVideoCompressionOptions } from \"./VideoCompression\"\n\nexport { FileStorageProviderType } from \"./FileStorageProviderRegistry\";\nexport { FileLocalProviderOptions } from \"./FileLocalStorageProvider\";\nexport { FileGoogleCloudProviderOptions } from \"./FileGoogleCloudStorageProvider\";\nexport { FileAwsS3ProviderOptions } from \"./FileAwsS3StorageProvider\";\n\nexport const fileDataTypes = {\n}\n\nexport type FileModuleRef = InjectionFieldModuleRef\n\nexport type FileDataType = keyof typeof fileDataTypes;\n\nexport type FileServiceProps = DefaultServiceProps & {\n};\n\nexport type FileCategoryName =\n | \"image\"\n | \"video\"\n | \"audio\"\n | \"document\"\n | \"archive\"\n | \"code\"\n | \"other\";\n\n\nexport type FileGetProps = Omit<QueryGet, \"datatypes\"> & {\n id: number,\n // datatypes: FileDataType[]\n};\n\nexport type FileGetUsageSummaryProps = {\n accountId: number,\n};\n\nexport type FileListProps = Omit<QueryList, \"datatypes\"> & {\n // datatypes: FileDataType[]\n}\n\nexport type FileRemoveProps = {\n fileIds: BigInt[],\n // storageProviderOptions: any\n storageSetup?: FeatureFileStorageOptions\n};\n\nexport type File = {\n tagName: string;\n description: string;\n folderPath: string;\n assetUrl: string;\n thumbnailUrl: string;\n assetPath: string;\n fileLabel: string;\n fileName: string;\n contentType: string;\n fileCategoryName: string;\n inputType: string;\n inputFileSizeBytes: number;\n inputFileName: string;\n fileSizeBytes: number;\n fileDurationSeconds: number;\n fileCompressFormat: string;\n storageProviderName: string;\n foldernameDay: number;\n foldernameMonth: number;\n foldernameYear: number;\n batchCode: string;\n referId1: number;\n referId2: number;\n referLabel1: string;\n referLabel2: string;\n remark: string;\n}\n\nexport type FileUploadItem = {\n buffer: Buffer; // Raw file data\n originalName: string; // Client filename\n mimeType: string; // e.g. \"image/png\"\n sizeBytes: number; // File size in bytes\n // providerName?: FileStorageProviderType; // optional: override global provider\n};\n\n\nexport type FileCreateProps = {\n data: File & {\n fieldRef: FileModuleRef[\"field_ref\"],\n fieldModule: FileModuleRef[\"field_module\"]\n }\n}\n\nexport type FileUploadProps = FileModuleRef & {\n description?: string,\n tagName?: string,\n label?: string,\n refId: number\n refId2?: number\n refLabel?: string\n refLabel2?: string\n remark: string\n foldernameDate?: string,\n files: FileUploadItem[]\n storageSetup?: FeatureFileStorageOptions\n}\n\nlet mainSqlSelect = buildFileMainSqlSelect()\nlet defaultSqlSelect = buildFileDefaultSqlSelect()\n\nconst { relationKeys, sqlRelationMaps } = getFileSqlRelationMaps(``)\n\nconst getCreatePayload = (data: FileCreateProps[\"data\"]) => {\n\n return {\n // [`${ModelFileFields.file_id}`]: fileType,\n [`${ModelFileFields.asset_path}`]: data.assetPath,\n [`${ModelFileFields.asset_url}`]: data.assetUrl,\n [`${ModelFileFields.thumbnail_url}`]: data.thumbnailUrl,\n [`${ModelFileFields.batch_code}`]: data.batchCode,\n [`${ModelFileFields.content_type}`]: data.contentType,\n [`${ModelFileFields.file_category_name}`]: data.fileCategoryName,\n [`${ModelFileFields.field_module}`]: data.fieldModule,\n [`${ModelFileFields.field_ref}`]: data.fieldRef,\n [`${ModelFileFields.file_compress_format}`]: data.fileCompressFormat,\n [`${ModelFileFields.file_label}`]: data.fileLabel,\n [`${ModelFileFields.file_name}`]: data.fileName,\n [`${ModelFileFields.file_size_bytes}`]: data.fileSizeBytes,\n [`${ModelFileFields.file_duration_seconds}`]: data.fileDurationSeconds,\n [`${ModelFileFields.tag_name}`]: data.tagName,\n [`${ModelFileFields.description}`]: data.description,\n [`${ModelFileFields.foldername_day}`]: Number(data.foldernameDay),\n [`${ModelFileFields.foldername_month}`]: Number(data.foldernameMonth),\n [`${ModelFileFields.foldername_year}`]: Number(data.foldernameYear),\n [`${ModelFileFields.input_file_name}`]: data.inputFileName,\n [`${ModelFileFields.input_file_size_bytes}`]: data.inputFileSizeBytes,\n [`${ModelFileFields.input_type}`]: data.inputType,\n [`${ModelFileFields.refer_id_1}`]: data.referId1,\n [`${ModelFileFields.refer_id_2}`]: data.referId2,\n [`${ModelFileFields.refer_label_1}`]: data.referLabel1,\n [`${ModelFileFields.refer_label_2}`]: data.referLabel2,\n [`${ModelFileFields.remark}`]: data.remark,\n [`${ModelFileFields.storage_provider_name}`]: data.storageProviderName,\n }\n\n}\n\nexport const getFileCategoryNameByMimeType = (mimeType: string): FileCategoryName => {\n const lower = mimeType.toLowerCase();\n\n if (lower.startsWith(\"image/\")) return \"image\";\n if (lower.startsWith(\"video/\")) return \"video\";\n if (lower.startsWith(\"audio/\")) return \"audio\";\n\n // Edge-case audio MIME types\n if ([\"application/ogg\"].includes(lower)) return \"audio\";\n\n if (\n lower.startsWith(\"text/\") ||\n [\n \"application/pdf\",\n \"application/msword\",\n \"application/vnd.openxmlformats-officedocument.wordprocessingml.document\",\n \"application/vnd.ms-excel\",\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet\",\n \"application/vnd.ms-powerpoint\",\n \"application/vnd.openxmlformats-officedocument.presentationml.presentation\",\n \"application/rtf\",\n ].includes(lower)\n ) {\n return \"document\";\n }\n\n if (\n [\n \"application/zip\",\n \"application/x-7z-compressed\",\n \"application/x-rar-compressed\",\n \"application/x-tar\",\n \"application/gzip\",\n ].includes(lower)\n ) {\n return \"archive\";\n }\n\n if (\n lower.startsWith(\"application/json\") ||\n lower.startsWith(\"application/javascript\") ||\n lower.startsWith(\"text/html\") ||\n lower.startsWith(\"text/css\") ||\n lower.startsWith(\"text/x-python\") ||\n lower.startsWith(\"text/x-c\") ||\n lower.startsWith(\"text/x-java\")\n ) {\n return \"code\";\n }\n\n return \"other\";\n};\n\nexport const FileService = (props: FileServiceProps) => {\n\n const {\n ...rest\n } = props\n\n const fileModel = FileModel({ ...rest })\n\n const fileGoogleCloudStorageProvider = FileGoogleCloudStorageProvider({\n basePath: ``,\n bucketName: ``\n })\n\n const fileAwsS3StorageProvider = FileAwsS3StorageProvider({\n basePath: ``,\n bucketName: ``\n })\n\n const fileLocalStorageProvider = FileLocalStorageProvider({})\n\n const thumbnailOptions = {\n suffix: \"-thumb\",\n ext: \"jpg\",\n mimeType: \"image/jpeg\",\n }\n\n const initBatchCode = () => {\n return `${Date.now()}_${_.random(0, 999)}`;\n }\n\n const getStorageSetup = async (overrideStorageSetup?: FeatureFileStorageOptions) => {\n\n const hookSetup = overrideStorageSetup ?\n overrideStorageSetup\n :\n await FileStorageHook.onSetup()\n\n if (hookSetup.storageType === \"local\") {\n return {\n storageConfiguration: hookSetup.storageConfiguration,\n storageProviderName: hookSetup.storageType,\n storageProviderOptions: {\n // basePath: `${config.FILE_STORAGE_LOCAL_BASE_PATH}`,\n basePath: `${hookSetup.localStorageOptions.basePath}`,\n // publicBaseUrl: `${config.FILE_STORAGE_LOCAL_BASE_URL}`,\n publicBaseUrl: `${hookSetup.localStorageOptions.baseUrl}`,\n // skipFoldernameByModuleRef: Boolean(config.FILE_STORAGE_LOCAL_SKIP_FOLDERNAME_MODULE_REF),\n skipFoldernameByModuleRef: Boolean(hookSetup.localStorageOptions.skipFolderNameModuleRef),\n // skipFoldernameByDate: Boolean(config.FILE_STORAGE_LOCAL_SKIP_FOLDERNAME_YEAR_MONTH)\n skipFoldernameByDate: Boolean(hookSetup.localStorageOptions.skipFolderNameYearMonth)\n }\n }\n }\n\n if (hookSetup.storageType === \"gcloud\") {\n return {\n storageConfiguration: hookSetup.storageConfiguration,\n storageProviderName: hookSetup.storageType,\n storageProviderOptions: {\n // basePath: `${config.FILE_STORAGE_GCLOUD_BASE_PATH}`,\n basePath: `${hookSetup.gcloudStorageOptions.basePath}`,\n // publicBaseUrl: `${config.FILE_STORAGE_GCLOUD_BASE_URL}`,\n publicBaseUrl: `${hookSetup.gcloudStorageOptions.baseUrl}`,\n // bucketName: `${config.FILE_STORAGE_GCLOUD_BUCKET_NAME}`,\n bucketName: `${hookSetup.gcloudStorageOptions.bucketName}`,\n // credentials: `${path.resolve(process.cwd(), `${config.FILE_STORAGE_GCLOUD_CREDENTIAL_PATH}`)}`,\n credentials: `${path.resolve(process.cwd(), `${hookSetup.gcloudStorageOptions.credentialPath}`)}`,\n // skipFoldernameByModuleRef: Boolean(config.FILE_STORAGE_GCLOUD_SKIP_FOLDERNAME_MODULE_REF),\n skipFoldernameByModuleRef: Boolean(hookSetup.gcloudStorageOptions.skipFolderNameModuleRef),\n // skipFoldernameByDate: Boolean(config.FILE_STORAGE_GCLOUD_SKIP_FOLDERNAME_YEAR_MONTH)\n skipFoldernameByDate: Boolean(hookSetup.gcloudStorageOptions.skipFolderNameYearMonth)\n }\n\n }\n }\n\n if (hookSetup.storageType === \"aws\") {\n return {\n storageConfiguration: hookSetup.storageConfiguration,\n storageProviderName: hookSetup.storageType,\n storageProviderOptions: {\n basePath: `${hookSetup.awsStorageOptions.basePath}`,\n publicBaseUrl: `${hookSetup.awsStorageOptions.baseUrl}`,\n bucketName: `${hookSetup.awsStorageOptions.bucketName}`,\n region: hookSetup.awsStorageOptions?.region ?? \"\",\n credentials: {\n accessKeyId: hookSetup.awsStorageOptions.credentials.accessKeyId,\n secretAccessKey: hookSetup.awsStorageOptions.credentials.secretAccessKey,\n },\n skipFoldernameByModuleRef: Boolean(hookSetup.awsStorageOptions.skipFolderNameModuleRef),\n skipFoldernameByDate: Boolean(hookSetup.awsStorageOptions.skipFolderNameYearMonth)\n }\n\n }\n }\n\n throw new Error(\"Unsupported storage type\")\n }\n\n const uploadFiles = async ({\n field_ref = \"item\",\n field_module = \"item\",\n tagName,\n label,\n refId,\n refId2,\n refLabel,\n refLabel2,\n remark,\n description,\n foldernameDate,\n files = [],\n storageSetup\n }: FileUploadProps) => {\n\n const {\n storageProviderName,\n storageProviderOptions,\n storageConfiguration\n } = await getStorageSetup(storageSetup)\n\n // get the correct provider\n const provider = await getFileStorageProvider(storageProviderName, storageProviderOptions);\n\n // Image Compression\n const imageCompressionOptions: FileImageCompressionOptions | undefined\n = storageConfiguration?.imageMaxWidth && storageConfiguration?.imageMaxWidth\n ? {\n maxWidth: Number(storageConfiguration.imageMaxWidth),\n quality: Number(storageConfiguration.imageQuality),\n }\n : undefined;\n\n // Video Compression\n const videoCompressionOptions: FileVideoCompressionOptions | undefined =\n storageConfiguration?.videoCRF &&\n storageConfiguration?.videoPreset &&\n storageConfiguration?.videoResolution\n ? {\n crf: Number(storageConfiguration.videoCRF),\n preset: storageConfiguration.videoPreset as FileVideoCompressionOptions[\"preset\"],\n resolution: Number(storageConfiguration.videoResolution),\n }\n : undefined;\n\n const allResponses = []\n\n const batchCode = initBatchCode();\n\n const fileLabel = label ?? \"\"\n const referId1 = refId ?? 0\n const referId2 = refId2 ?? 0\n const referLabel1 = refLabel ?? \"\"\n const referLabel2 = refLabel2 ?? \"\"\n const fileRemark = remark ?? \"\"\n\n for (const file of files) {\n\n let bufferToUpload = file.buffer;\n let mimeType = file.mimeType ?? \"\"\n let sizeBytes = file?.sizeBytes\n let fileOriginalName = file.originalName;\n\n let outputSizeBytes = sizeBytes // output file size\n let fileCompressFormat = `` // output image compress\n\n const fileCategoryName = getFileCategoryNameByMimeType(mimeType)\n\n // const ext = file.originalName?.split(\".\").pop()?.toLowerCase() ?? \"\";\n\n // Image :: Only compress if image and options provided\n if (fileCategoryName === \"image\" && imageCompressionOptions) {\n const compressed = await compressImageBuffer(\n bufferToUpload,\n mimeType,\n imageCompressionOptions\n );\n\n fileCompressFormat = compressed.compressFormat,\n bufferToUpload = compressed.buffer;\n outputSizeBytes = compressed.sizeBytes; // update the file size\n }\n\n // Vide :: Only compress if video and options provided\n if (fileCategoryName === \"video\" && videoCompressionOptions) {\n const compressed = await compressVideoBuffer(\n bufferToUpload,\n mimeType,\n videoCompressionOptions\n );\n\n fileCompressFormat = compressed.compressFormat,\n bufferToUpload = compressed.buffer;\n outputSizeBytes = compressed.sizeBytes; // update the file size\n }\n\n // generate thumbnail buffer\n const bufferThumbnail = await generateFileThumbnailBuffer(bufferToUpload, mimeType)\n\n // Call the consumer hook, if registered\n if (FileStorageHook.onStartUpload) {\n\n await FileStorageHook.onStartUpload({\n defaultServiceProps: rest,\n callbackParams: {\n fieldRef: field_ref,\n fieldModule: field_module,\n tagName,\n label,\n refId,\n refId2,\n refLabel,\n refLabel2,\n remark,\n description,\n foldernameDate,\n file,\n storageProviderName,\n storageProviderOptions,\n fileCategoryName,\n batchCode,\n mimeType,\n bufferFilebuffer: bufferToUpload,\n bufferFileThumbnail: bufferThumbnail?.buffer,\n outputSizeBytes,\n fileCompressFormat: fileCompressFormat ? JSON.parse(fileCompressFormat) : \"\",\n imageCompressionOptions,\n videoCompressionOptions\n }\n })\n }\n\n // upload using the provider - buffer\n const uploadResult = await provider.uploadFile({\n field_ref,\n field_module,\n buffer: bufferToUpload,\n bufferThumbnail: bufferThumbnail.buffer,\n thumbnailOptions,\n ...(foldernameDate ? { foldernameDate } : {}),\n mimeType,\n fileName: fileOriginalName\n } as FileModuleRef & (\n FileLocalUploadFileProps |\n FileGoogleCloudUploadFileProps |\n FileAwsS3UploadFileProps\n ));\n\n const fieldRef = field_ref\n const fieldModule = field_module\n\n const fileName = uploadResult?.filename ?? \"\"\n const contentType = mimeType ?? \"\"\n const folderPath = uploadResult.assetPath ?? \"\"\n const assetUrl = uploadResult.assetUrl ?? \"\"\n const thumbnailUrl = uploadResult?.thumbnailUrl ?? \"\"\n const assetPath = uploadResult.assetPath ?? \"\"\n\n const fileDurationSeconds = bufferThumbnail?.durationSeconds ?? 0\n\n const inputType = `buffer`\n const inputFileSizeBytes = sizeBytes ?? 0\n const inputFileName = fileOriginalName ?? \"\"\n\n const fileSizeBytes = outputSizeBytes ?? 0\n // const fileCompressFormat = ``\n\n const foldernameDay = uploadResult?.folderName?.day ?? \"\"\n const foldernameMonth = uploadResult?.folderName?.month ?? \"\"\n const foldernameYear = uploadResult?.folderName?.year ?? \"\"\n\n const payload: FileCreateProps = {\n data: {\n fieldRef,\n fieldModule,\n tagName,\n description,\n remark: fileRemark,\n folderPath,\n assetUrl,\n thumbnailUrl,\n assetPath,\n fileLabel,\n fileName,\n fileCategoryName,\n contentType,\n inputType,\n inputFileSizeBytes,\n inputFileName,\n fileSizeBytes,\n fileDurationSeconds,\n fileCompressFormat,\n storageProviderName,\n foldernameDay,\n foldernameMonth,\n foldernameYear,\n batchCode,\n referId1,\n referId2,\n referLabel1,\n referLabel2\n } as FileCreateProps[\"data\"],\n };\n\n let responseFile = await createFile(payload);\n\n // Call the consumer hook, if registered\n if (FileStorageHook.onSuccessUpload) {\n await FileStorageHook.onSuccessUpload({\n defaultServiceProps: rest,\n callbackParams: {\n fileId: Number(responseFile?.file_id),\n fileThumbnailUrl: thumbnailUrl,\n fileAssetUrl: assetUrl,\n fileDurationSeconds,\n fieldRef: field_ref,\n fieldModule: field_module,\n tagName,\n label,\n refId,\n refId2,\n refLabel,\n refLabel2,\n remark,\n description,\n foldernameDate,\n file,\n storageProviderName,\n storageProviderOptions,\n fileCategoryName,\n batchCode,\n mimeType,\n bufferFilebuffer: bufferToUpload,\n bufferFileThumbnail: bufferThumbnail.buffer,\n outputSizeBytes,\n fileCompressFormat: fileCompressFormat ? JSON.parse(fileCompressFormat) : \"\",\n imageCompressionOptions,\n videoCompressionOptions\n }\n })\n }\n\n allResponses.push(responseFile)\n }\n\n return allResponses\n\n }\n\n // private\n const createFile = async ({ data }: FileCreateProps) => {\n\n const _data = getCreatePayload(data)\n\n if (!_data) {\n throw new Error(`Invalid create file payload: ${JSON.stringify(_data)}`);\n }\n\n const response = await fileModel.create({ data: _data })\n\n const newFileId = response?.file_id ?? \"\"\n\n return newFileId ? await getFile({ id: Number(newFileId) }) : null\n\n }\n\n const getFile = async ({ id }: FileGetProps) => {\n\n let { data } = await listFiles({\n limit: 1,\n offset: 0,\n filters: [{ field: `${ModelFileFields.file_id}`, operator: \"=\", value: id }],\n sortfield: `${ModelFileFields.file_id}`,\n sortorder: \"ASC\"\n })\n\n return data[0] ?? null;\n\n };\n\n const listFiles = async ({ limit, offset, filters = [], sortfield, sortorder }: FileListProps) => {\n\n let sqlSelect: string[] = []\n let sqlRelation: string[] = []\n let sqlGroupBy: string[] = []\n\n let sqlSelectAgg: string[] = []\n let sqlRelationAgg: string[] = []\n\n sqlSelect = [\n buildSqlSelect(``, mainSqlSelect),\n buildSqlSelect(``, defaultSqlSelect)\n ]\n\n sqlRelation = [\n sqlRelationMaps.creator,\n sqlRelationMaps.updater\n ]\n\n // sqlRelationAgg = []\n\n sqlGroupBy = [\n ...Object.keys(mainSqlSelect),\n ...Object.keys(defaultSqlSelect)\n ]\n\n let filterColumns = {\n ...mainSqlSelect,\n ...defaultSqlSelect\n }\n\n let sqlWhere = [\n `mainfile.isdelete = false`,\n `mainfile.istrash = false`,\n // `LOWER(mainfile.doc_type) = LOWER('${documentTypeKey}')`\n ]\n\n let sqlOrderby = buildSqlOrderBy(sortfield, sortorder)\n let sqlLimitOffset = buildSqlLimitOffset(limit, offset)\n\n // get the listing data & count\n const { data, total } = await getListWithCount({\n model: fileModel,\n tableName: \"files\",\n mainAlias: \"mainfile\",\n countKey: `${ModelFileFields.file_id}`,\n accountId: rest.accountId,\n sqlRelationMaps,\n filters,\n filterColumns,\n sqlSelect,\n sqlSelectAgg,\n sqlRelation,\n sqlRelationAgg,\n sqlWhere,\n sqlGroupBy,\n sqlOrderby,\n sqlLimitOffset\n })\n\n const response = {\n data,\n total\n }\n\n return response\n\n };\n\n const removeFiles = async ({ fileIds, storageSetup }: FileRemoveProps) => {\n\n const {\n // storageProviderName,\n storageProviderOptions\n } = await getStorageSetup(storageSetup)\n\n if (!fileIds.length) throwError('fileIds is required');\n\n const filesToDelete = await fileModel.list({\n where: {\n file_id: { in: fileIds }\n }\n });\n\n // console.log('filesToDelete', filesToDelete)\n\n let providerResponse: any[] = []\n\n // 2️⃣ Delete the physical files\n for (const file of filesToDelete) {\n\n // check the provider to choose delete method\n const storageProviderName = file.storage_provider_name as FileStorageProviderType\n const assetUrl = file.asset_url\n const thumbnailUrl = file.thumbnail_url ?? \"\"\n const assetPath = file.asset_path\n\n if (storageProviderName === \"local\" && assetPath) {\n\n try {\n providerResponse.push(\n await fileLocalStorageProvider.removeFile(assetPath, thumbnailOptions)\n )\n } catch (err) {\n providerResponse.push(\n `Failed to delete from Local: ${assetUrl}`\n )\n }\n\n }\n\n if (storageProviderName === \"gcloud\" && assetUrl) {\n\n try {\n providerResponse.push(\n await fileGoogleCloudStorageProvider.removeFile(assetUrl, thumbnailUrl, storageProviderOptions.credentials as any)\n )\n } catch (err) {\n providerResponse.push(\n `Failed to delete from GCloud: ${assetUrl}`\n )\n }\n\n }\n\n if (storageProviderName === \"aws\" && assetUrl) {\n\n try {\n providerResponse.push(\n await fileAwsS3StorageProvider.removeFile(assetUrl, thumbnailUrl)\n )\n } catch (err) {\n providerResponse.push(\n `Failed to delete from Aws S3: ${assetUrl}`\n )\n }\n\n }\n\n }\n\n // remove files\n const response = await fileModel.remove({ where: { [`${ModelFileFields.file_id}`]: { in: fileIds } } });\n\n return {\n files: response,\n providerResponse\n }\n };\n\n const getFileUsageSummary = async ({ accountId = 0 }: FileGetUsageSummaryProps) => {\n\n const summaryCount = await fileModel.aggregate({\n field: `file_id`,\n operation: `count`,\n where: {\n [`${ModelFileFields.accountid}`]: accountId,\n [`${ModelFileFields.istrash}`]: false,\n [`${ModelFileFields.isdelete}`]: false,\n }\n });\n\n const summarySize = await fileModel.aggregate({\n field: `file_size_bytes`,\n operation: `sum`,\n where: {\n [`${ModelFileFields.accountid}`]: accountId,\n [`${ModelFileFields.istrash}`]: false,\n [`${ModelFileFields.isdelete}`]: false,\n }\n });\n\n const totalFiles = summaryCount ?? 0;\n const totalBytes = summarySize ?? 0;\n // const totalFiles = summary._count.id;\n\n // Optional: convert bytes to MB or GB\n const totalMB = totalBytes / (1024 * 1024);\n const totalGB = totalBytes / (1024 * 1024 * 1024);\n\n return {\n totalFiles,\n totalBytes,\n totalMB: parseFloat(totalMB.toFixed(2)), // now decimal\n totalGB: parseFloat(totalGB.toFixed(2)), // now decimal\n };\n }\n\n // const getDataTypes = () => {\n // return Object.values(fileDataTypes);\n // }\n\n return {\n uploadFiles,\n // createFile,\n // updateFile,\n getFile,\n listFiles,\n removeFiles,\n // getDataTypes,\n getFileUsageSummary\n }\n\n}\n\n"]}
|
|
1
|
+
{"version":3,"file":"FileService.js","sourceRoot":"","sources":["../../../src/services/file/FileService.ts"],"names":[],"mappings":"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","sourcesContent":["import { _, logError, throwError, generateFileThumbnailBuffer } from \"@/utils\";\n\nimport path from \"path\";\n\nimport {\n FileModel,\n ModelFileFields,\n} from \"@/models\";\n\nimport { FileLocalProviderOptions, FileLocalStorageProvider, FileLocalUploadFileProps } from \"./FileLocalStorageProvider\"\nimport { FileGoogleCloudProviderOptions, FileGoogleCloudStorageProvider, FileGoogleCloudUploadFileProps } from \"./FileGoogleCloudStorageProvider\"\nimport { FileAwsS3ProviderOptions, FileAwsS3StorageProvider, FileAwsS3UploadFileProps } from \"./FileAwsS3StorageProvider\"\nimport { getFileStorageProvider, FileStorageProviderType } from \"./FileStorageProviderRegistry\";\n\nimport { InjectionFieldModuleRef } from \"@/services\"\n\nimport { QueryList, QueryGet } from \"@/schema/common\";\n\nimport { DefaultServiceProps } from \"@/utils\";\n\nimport { getFileSqlRelationMaps, buildSqlSelect, buildSqlLimitOffset, buildSqlOrderBy, getListWithCount } from \"@/lib\";\n\nimport {\n buildFileMainSqlSelect,\n buildFileDefaultSqlSelect\n} from \"@/lib\";\n\nimport { FileImageCompressionOptions, compressImageBuffer } from \"./ImageCompression\";\nexport { FileImageCompressionOptions } from \"./ImageCompression\"\nimport { FileVideoCompressionOptions, compressVideoBuffer } from \"./VideoCompression\";\nimport { FeatureFileStorageOptions, FileStorageHook } from \"@/features\";\nexport { FileVideoCompressionOptions } from \"./VideoCompression\"\n\nexport { FileStorageProviderType } from \"./FileStorageProviderRegistry\";\nexport { FileLocalProviderOptions } from \"./FileLocalStorageProvider\";\nexport { FileGoogleCloudProviderOptions } from \"./FileGoogleCloudStorageProvider\";\nexport { FileAwsS3ProviderOptions } from \"./FileAwsS3StorageProvider\";\n\nexport const fileDataTypes = {\n}\n\nexport type FileModuleRef = InjectionFieldModuleRef\n\nexport type FileDataType = keyof typeof fileDataTypes;\n\nexport type FileServiceProps = DefaultServiceProps & {\n};\n\nexport type FileCategoryName =\n | \"image\"\n | \"video\"\n | \"audio\"\n | \"document\"\n | \"archive\"\n | \"code\"\n | \"other\";\n\n\nexport type FileGetProps = Omit<QueryGet, \"datatypes\"> & {\n id: number,\n // datatypes: FileDataType[]\n};\n\nexport type FileGetUsageSummaryProps = {\n accountId: number,\n};\n\nexport type FileListProps = Omit<QueryList, \"datatypes\"> & {\n // datatypes: FileDataType[]\n}\n\nexport type FileRemoveProps = {\n fileIds: BigInt[],\n // storageProviderOptions: any\n storageSetup?: FeatureFileStorageOptions\n};\n\nexport type File = {\n tagName: string;\n description: string;\n folderPath: string;\n assetUrl: string;\n thumbnailUrl: string;\n assetPath: string;\n fileLabel: string;\n fileName: string;\n contentType: string;\n fileCategoryName: string;\n inputType: string;\n inputFileSizeBytes: number;\n inputFileName: string;\n fileSizeBytes: number;\n fileDurationSeconds: number;\n fileCompressFormat: string;\n storageProviderName: string;\n foldernameDay: number;\n foldernameMonth: number;\n foldernameYear: number;\n batchCode: string;\n referId1: number;\n referId2: number;\n referLabel1: string;\n referLabel2: string;\n remark: string;\n}\n\nexport type FileUploadItem = {\n buffer: Buffer; // Raw file data\n originalName: string; // Client filename\n mimeType: string; // e.g. \"image/png\"\n sizeBytes: number; // File size in bytes\n // providerName?: FileStorageProviderType; // optional: override global provider\n};\n\n\nexport type FileCreateProps = {\n data: File & {\n fieldRef: FileModuleRef[\"field_ref\"],\n fieldModule: FileModuleRef[\"field_module\"]\n }\n}\n\nexport type FileUploadProps = FileModuleRef & {\n description?: string,\n tagName?: string,\n label?: string,\n refId: number\n refId2?: number\n refLabel?: string\n refLabel2?: string\n remark: string\n foldernameDate?: string,\n files: FileUploadItem[]\n storageSetup?: FeatureFileStorageOptions\n}\n\nlet mainSqlSelect = buildFileMainSqlSelect()\nlet defaultSqlSelect = buildFileDefaultSqlSelect()\n\nconst { relationKeys, sqlRelationMaps } = getFileSqlRelationMaps(``)\n\nconst getCreatePayload = (data: FileCreateProps[\"data\"]) => {\n\n return {\n // [`${ModelFileFields.file_id}`]: fileType,\n [`${ModelFileFields.asset_path}`]: data.assetPath,\n [`${ModelFileFields.asset_url}`]: data.assetUrl,\n [`${ModelFileFields.thumbnail_url}`]: data.thumbnailUrl,\n [`${ModelFileFields.batch_code}`]: data.batchCode,\n [`${ModelFileFields.content_type}`]: data.contentType,\n [`${ModelFileFields.file_category_name}`]: data.fileCategoryName,\n [`${ModelFileFields.field_module}`]: data.fieldModule,\n [`${ModelFileFields.field_ref}`]: data.fieldRef,\n [`${ModelFileFields.file_compress_format}`]: data.fileCompressFormat,\n [`${ModelFileFields.file_label}`]: data.fileLabel,\n [`${ModelFileFields.file_name}`]: data.fileName,\n [`${ModelFileFields.file_size_bytes}`]: data.fileSizeBytes,\n [`${ModelFileFields.file_duration_seconds}`]: data.fileDurationSeconds,\n [`${ModelFileFields.tag_name}`]: data.tagName,\n [`${ModelFileFields.description}`]: data.description,\n [`${ModelFileFields.foldername_day}`]: Number(data.foldernameDay),\n [`${ModelFileFields.foldername_month}`]: Number(data.foldernameMonth),\n [`${ModelFileFields.foldername_year}`]: Number(data.foldernameYear),\n [`${ModelFileFields.input_file_name}`]: data.inputFileName,\n [`${ModelFileFields.input_file_size_bytes}`]: data.inputFileSizeBytes,\n [`${ModelFileFields.input_type}`]: data.inputType,\n [`${ModelFileFields.refer_id_1}`]: data.referId1,\n [`${ModelFileFields.refer_id_2}`]: data.referId2,\n [`${ModelFileFields.refer_label_1}`]: data.referLabel1,\n [`${ModelFileFields.refer_label_2}`]: data.referLabel2,\n [`${ModelFileFields.remark}`]: data.remark,\n [`${ModelFileFields.storage_provider_name}`]: data.storageProviderName,\n }\n\n}\n\nexport const getFileCategoryNameByMimeType = (mimeType: string): FileCategoryName => {\n const lower = mimeType.toLowerCase();\n\n if (lower.startsWith(\"image/\")) return \"image\";\n if (lower.startsWith(\"video/\")) return \"video\";\n if (lower.startsWith(\"audio/\")) return \"audio\";\n\n // Edge-case audio MIME types\n if ([\"application/ogg\"].includes(lower)) return \"audio\";\n\n if (\n lower.startsWith(\"text/\") ||\n [\n \"application/pdf\",\n \"application/msword\",\n \"application/vnd.openxmlformats-officedocument.wordprocessingml.document\",\n \"application/vnd.ms-excel\",\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet\",\n \"application/vnd.ms-powerpoint\",\n \"application/vnd.openxmlformats-officedocument.presentationml.presentation\",\n \"application/rtf\",\n ].includes(lower)\n ) {\n return \"document\";\n }\n\n if (\n [\n \"application/zip\",\n \"application/x-7z-compressed\",\n \"application/x-rar-compressed\",\n \"application/x-tar\",\n \"application/gzip\",\n ].includes(lower)\n ) {\n return \"archive\";\n }\n\n if (\n lower.startsWith(\"application/json\") ||\n lower.startsWith(\"application/javascript\") ||\n lower.startsWith(\"text/html\") ||\n lower.startsWith(\"text/css\") ||\n lower.startsWith(\"text/x-python\") ||\n lower.startsWith(\"text/x-c\") ||\n lower.startsWith(\"text/x-java\")\n ) {\n return \"code\";\n }\n\n return \"other\";\n};\n\nexport const FileService = (props: FileServiceProps) => {\n\n const {\n ...rest\n } = props\n\n const fileModel = FileModel({ ...rest })\n\n const fileGoogleCloudStorageProvider = FileGoogleCloudStorageProvider({\n basePath: ``,\n bucketName: ``\n })\n\n const fileAwsS3StorageProvider = FileAwsS3StorageProvider({\n basePath: ``,\n bucketName: ``\n })\n\n const fileLocalStorageProvider = FileLocalStorageProvider({})\n\n const thumbnailOptions = {\n suffix: \"-thumb\",\n ext: \"jpg\",\n mimeType: \"image/jpeg\",\n }\n\n const initBatchCode = () => {\n return `${Date.now()}_${_.random(0, 999)}`;\n }\n\n const getStorageSetup = async (overrideStorageSetup?: FeatureFileStorageOptions) => {\n\n const hookSetup = overrideStorageSetup ?\n overrideStorageSetup\n :\n await FileStorageHook.onSetup()\n\n if (hookSetup.storageType === \"local\") {\n return {\n storageConfiguration: hookSetup.storageConfiguration,\n storageProviderName: hookSetup.storageType,\n storageProviderOptions: {\n // basePath: `${config.FILE_STORAGE_LOCAL_BASE_PATH}`,\n basePath: `${hookSetup.localStorageOptions.basePath}`,\n // publicBaseUrl: `${config.FILE_STORAGE_LOCAL_BASE_URL}`,\n publicBaseUrl: `${hookSetup.localStorageOptions.baseUrl}`,\n // skipFoldernameByModuleRef: Boolean(config.FILE_STORAGE_LOCAL_SKIP_FOLDERNAME_MODULE_REF),\n skipFoldernameByModuleRef: Boolean(hookSetup.localStorageOptions.skipFolderNameModuleRef),\n // skipFoldernameByDate: Boolean(config.FILE_STORAGE_LOCAL_SKIP_FOLDERNAME_YEAR_MONTH)\n skipFoldernameByDate: Boolean(hookSetup.localStorageOptions.skipFolderNameYearMonth)\n }\n }\n }\n\n if (hookSetup.storageType === \"gcloud\") {\n return {\n storageConfiguration: hookSetup.storageConfiguration,\n storageProviderName: hookSetup.storageType,\n storageProviderOptions: {\n // basePath: `${config.FILE_STORAGE_GCLOUD_BASE_PATH}`,\n basePath: `${hookSetup.gcloudStorageOptions.basePath}`,\n // publicBaseUrl: `${config.FILE_STORAGE_GCLOUD_BASE_URL}`,\n publicBaseUrl: `${hookSetup.gcloudStorageOptions.baseUrl}`,\n // bucketName: `${config.FILE_STORAGE_GCLOUD_BUCKET_NAME}`,\n bucketName: `${hookSetup.gcloudStorageOptions.bucketName}`,\n // credentials: `${path.resolve(process.cwd(), `${config.FILE_STORAGE_GCLOUD_CREDENTIAL_PATH}`)}`,\n credentials: `${path.resolve(process.cwd(), `${hookSetup.gcloudStorageOptions.credentialPath}`)}`,\n // skipFoldernameByModuleRef: Boolean(config.FILE_STORAGE_GCLOUD_SKIP_FOLDERNAME_MODULE_REF),\n skipFoldernameByModuleRef: Boolean(hookSetup.gcloudStorageOptions.skipFolderNameModuleRef),\n // skipFoldernameByDate: Boolean(config.FILE_STORAGE_GCLOUD_SKIP_FOLDERNAME_YEAR_MONTH)\n skipFoldernameByDate: Boolean(hookSetup.gcloudStorageOptions.skipFolderNameYearMonth)\n }\n\n }\n }\n\n if (hookSetup.storageType === \"aws\") {\n return {\n storageConfiguration: hookSetup.storageConfiguration,\n storageProviderName: hookSetup.storageType,\n storageProviderOptions: {\n basePath: `${hookSetup.awsStorageOptions.basePath}`,\n publicBaseUrl: `${hookSetup.awsStorageOptions.baseUrl}`,\n bucketName: `${hookSetup.awsStorageOptions.bucketName}`,\n region: hookSetup.awsStorageOptions?.region ?? \"\",\n credentials: {\n accessKeyId: hookSetup.awsStorageOptions.credentials.accessKeyId,\n secretAccessKey: hookSetup.awsStorageOptions.credentials.secretAccessKey,\n },\n skipFoldernameByModuleRef: Boolean(hookSetup.awsStorageOptions.skipFolderNameModuleRef),\n skipFoldernameByDate: Boolean(hookSetup.awsStorageOptions.skipFolderNameYearMonth)\n }\n\n }\n }\n\n throw new Error(\"Unsupported storage type\")\n }\n\n const uploadFiles = async ({\n field_ref = \"item\",\n field_module = \"item\",\n tagName,\n label,\n refId,\n refId2,\n refLabel,\n refLabel2,\n remark,\n description,\n foldernameDate,\n files = [],\n storageSetup\n }: FileUploadProps) => {\n\n const {\n storageProviderName,\n storageProviderOptions,\n storageConfiguration\n } = await getStorageSetup(storageSetup)\n\n // get the correct provider\n const provider = await getFileStorageProvider(storageProviderName, storageProviderOptions);\n\n // Image Compression\n const imageCompressionOptions: FileImageCompressionOptions | undefined\n = storageConfiguration?.imageMaxWidth && storageConfiguration?.imageMaxWidth\n ? {\n maxWidth: Number(storageConfiguration.imageMaxWidth),\n quality: Number(storageConfiguration.imageQuality),\n }\n : undefined;\n\n // Video Compression\n const videoCompressionOptions: FileVideoCompressionOptions | undefined =\n storageConfiguration?.videoCRF &&\n storageConfiguration?.videoPreset &&\n storageConfiguration?.videoResolution\n ? {\n crf: Number(storageConfiguration.videoCRF),\n preset: storageConfiguration.videoPreset as FileVideoCompressionOptions[\"preset\"],\n resolution: Number(storageConfiguration.videoResolution),\n }\n : undefined;\n\n const allResponses = []\n\n const batchCode = initBatchCode();\n\n const fileLabel = label ?? \"\"\n const referId1 = refId ?? 0\n const referId2 = refId2 ?? 0\n const referLabel1 = refLabel ?? \"\"\n const referLabel2 = refLabel2 ?? \"\"\n const fileRemark = remark ?? \"\"\n\n for (const file of files) {\n\n let bufferToUpload = file.buffer;\n let mimeType = file.mimeType ?? \"\"\n let sizeBytes = file?.sizeBytes\n let fileOriginalName = file.originalName;\n\n let outputSizeBytes = sizeBytes // output file size\n let fileCompressFormat = `` // output image compress\n\n const fileCategoryName = getFileCategoryNameByMimeType(mimeType)\n\n // const ext = file.originalName?.split(\".\").pop()?.toLowerCase() ?? \"\";\n\n // Image :: Only compress if image and options provided\n if (fileCategoryName === \"image\" && imageCompressionOptions) {\n const compressed = await compressImageBuffer(\n bufferToUpload,\n mimeType,\n imageCompressionOptions\n );\n\n fileCompressFormat = compressed.compressFormat,\n bufferToUpload = compressed.buffer;\n outputSizeBytes = compressed.sizeBytes; // update the file size\n }\n\n // Vide :: Only compress if video and options provided\n if (fileCategoryName === \"video\" && videoCompressionOptions) {\n const compressed = await compressVideoBuffer(\n bufferToUpload,\n mimeType,\n videoCompressionOptions\n );\n\n fileCompressFormat = compressed.compressFormat,\n bufferToUpload = compressed.buffer;\n outputSizeBytes = compressed.sizeBytes; // update the file size\n }\n\n // generate thumbnail buffer\n const bufferThumbnail = await generateFileThumbnailBuffer(bufferToUpload, mimeType)\n\n // Call the consumer hook, if registered\n if (FileStorageHook.onStartUpload) {\n\n await FileStorageHook.onStartUpload({\n defaultServiceProps: rest,\n callbackParams: {\n fieldRef: field_ref,\n fieldModule: field_module,\n tagName,\n label,\n refId,\n refId2,\n refLabel,\n refLabel2,\n remark,\n description,\n foldernameDate,\n file,\n storageProviderName,\n storageProviderOptions,\n fileCategoryName,\n batchCode,\n mimeType,\n bufferFilebuffer: bufferToUpload,\n bufferFileThumbnail: bufferThumbnail?.buffer,\n outputSizeBytes,\n fileCompressFormat: fileCompressFormat ? JSON.parse(fileCompressFormat) : \"\",\n imageCompressionOptions,\n videoCompressionOptions\n }\n })\n }\n\n // upload using the provider - buffer\n const uploadResult = await provider.uploadFile({\n field_ref,\n field_module,\n buffer: bufferToUpload,\n bufferThumbnail: bufferThumbnail.buffer,\n thumbnailOptions,\n ...(foldernameDate ? { foldernameDate } : {}),\n mimeType,\n fileName: fileOriginalName\n } as FileModuleRef & (\n FileLocalUploadFileProps |\n FileGoogleCloudUploadFileProps |\n FileAwsS3UploadFileProps\n ));\n\n const fieldRef = field_ref\n const fieldModule = field_module\n\n const fileName = uploadResult?.filename ?? \"\"\n const contentType = mimeType ?? \"\"\n const folderPath = uploadResult.assetPath ?? \"\"\n const assetUrl = uploadResult.assetUrl ?? \"\"\n const thumbnailUrl = uploadResult?.thumbnailUrl ?? \"\"\n const assetPath = uploadResult.assetPath ?? \"\"\n\n const fileDurationSeconds = bufferThumbnail?.durationSeconds ?? 0\n\n const inputType = `buffer`\n const inputFileSizeBytes = sizeBytes ?? 0\n const inputFileName = fileOriginalName ?? \"\"\n\n const fileSizeBytes = outputSizeBytes ?? 0\n // const fileCompressFormat = ``\n\n const foldernameDay = uploadResult?.folderName?.day ?? \"\"\n const foldernameMonth = uploadResult?.folderName?.month ?? \"\"\n const foldernameYear = uploadResult?.folderName?.year ?? \"\"\n\n const payload: FileCreateProps = {\n data: {\n fieldRef,\n fieldModule,\n tagName,\n description,\n remark: fileRemark,\n folderPath,\n assetUrl,\n thumbnailUrl,\n assetPath,\n fileLabel,\n fileName,\n fileCategoryName,\n contentType,\n inputType,\n inputFileSizeBytes,\n inputFileName,\n fileSizeBytes,\n fileDurationSeconds,\n fileCompressFormat,\n storageProviderName,\n foldernameDay,\n foldernameMonth,\n foldernameYear,\n batchCode,\n referId1,\n referId2,\n referLabel1,\n referLabel2\n } as FileCreateProps[\"data\"],\n };\n\n let responseFile = await createFile(payload);\n\n // Call the consumer hook, if registered\n if (FileStorageHook.onSuccessUpload) {\n await FileStorageHook.onSuccessUpload({\n defaultServiceProps: rest,\n callbackParams: {\n fileId: Number(responseFile?.file_id),\n fileThumbnailUrl: thumbnailUrl,\n fileAssetUrl: assetUrl,\n fileDurationSeconds,\n fieldRef: field_ref,\n fieldModule: field_module,\n tagName,\n label,\n refId,\n refId2,\n refLabel,\n refLabel2,\n remark,\n description,\n foldernameDate,\n file,\n storageProviderName,\n storageProviderOptions,\n fileCategoryName,\n batchCode,\n mimeType,\n bufferFilebuffer: bufferToUpload,\n bufferFileThumbnail: bufferThumbnail.buffer,\n outputSizeBytes,\n fileCompressFormat: fileCompressFormat ? JSON.parse(fileCompressFormat) : \"\",\n imageCompressionOptions,\n videoCompressionOptions\n }\n })\n }\n\n allResponses.push(responseFile)\n }\n\n return allResponses\n\n }\n\n // private\n const createFile = async ({ data }: FileCreateProps) => {\n\n const _data = getCreatePayload(data)\n\n if (!_data) {\n throw new Error(`Invalid create file payload: ${JSON.stringify(_data)}`);\n }\n\n const response = await fileModel.create({ data: _data })\n\n const newFileId = response?.file_id ?? \"\"\n\n return newFileId ? await getFile({ id: Number(newFileId) }) : null\n\n }\n\n const getFile = async ({ id }: FileGetProps) => {\n\n let { data } = await listFiles({\n limit: 1,\n offset: 0,\n filters: [{ field: `${ModelFileFields.file_id}`, operator: \"=\", value: id }],\n sortfield: `${ModelFileFields.file_id}`,\n sortorder: \"ASC\"\n })\n\n return data[0] ?? null;\n\n };\n\n const listFiles = async ({ limit, offset, filters = [], sortfield, sortorder }: FileListProps) => {\n\n let sqlSelect: string[] = []\n let sqlRelation: string[] = []\n let sqlGroupBy: string[] = []\n\n let sqlSelectAgg: string[] = []\n let sqlRelationAgg: string[] = []\n\n sqlSelect = [\n buildSqlSelect(``, mainSqlSelect),\n buildSqlSelect(``, defaultSqlSelect)\n ]\n\n sqlRelation = [\n sqlRelationMaps.creator,\n sqlRelationMaps.updater\n ]\n\n // sqlRelationAgg = []\n\n sqlGroupBy = [\n ...Object.keys(mainSqlSelect),\n ...Object.keys(defaultSqlSelect)\n ]\n\n let filterColumns = {\n ...mainSqlSelect,\n ...defaultSqlSelect\n }\n\n let sqlWhere = [\n `mainfile.isdelete = false`,\n `mainfile.istrash = false`,\n // `LOWER(mainfile.doc_type) = LOWER('${documentTypeKey}')`\n ]\n\n let sqlOrderby = buildSqlOrderBy(sortfield, sortorder)\n let sqlLimitOffset = buildSqlLimitOffset(limit, offset)\n\n // get the listing data & count\n const { data, total } = await getListWithCount({\n model: fileModel,\n tableName: \"files\",\n mainAlias: \"mainfile\",\n countKey: `${ModelFileFields.file_id}`,\n accountId: rest.accountId,\n sqlRelationMaps,\n filters,\n filterColumns,\n sqlSelect,\n sqlSelectAgg,\n sqlRelation,\n sqlRelationAgg,\n sqlWhere,\n sqlGroupBy,\n sqlOrderby,\n sqlLimitOffset\n })\n\n const response = {\n data,\n total\n }\n\n return response\n\n };\n\n const removeFiles = async ({ fileIds, storageSetup }: FileRemoveProps) => {\n\n const {\n // storageProviderName,\n storageProviderOptions\n } = await getStorageSetup(storageSetup)\n\n if (!fileIds.length) throwError('fileIds is required');\n\n const filesToDelete = await fileModel.list({\n where: {\n file_id: { in: fileIds }\n }\n });\n\n // console.log('filesToDelete', filesToDelete)\n\n let providerResponse: any[] = []\n\n // 2️⃣ Delete the physical files\n for (const file of filesToDelete) {\n\n // check the provider to choose delete method\n const storageProviderName = file.storage_provider_name as FileStorageProviderType\n const assetUrl = file.asset_url\n const thumbnailUrl = file.thumbnail_url ?? \"\"\n const assetPath = file.asset_path\n\n if (storageProviderName === \"local\" && assetPath) {\n\n try {\n providerResponse.push(\n await fileLocalStorageProvider.removeFile(assetPath, thumbnailOptions)\n )\n } catch (err) {\n providerResponse.push(\n `Failed to delete from Local: ${assetUrl}`\n )\n }\n\n }\n\n if (storageProviderName === \"gcloud\" && assetUrl) {\n\n try {\n providerResponse.push(\n await fileGoogleCloudStorageProvider.removeFile(assetUrl, thumbnailUrl, storageProviderOptions.credentials as any)\n )\n } catch (err) {\n providerResponse.push(\n `Failed to delete from GCloud: ${assetUrl}`\n )\n }\n\n }\n\n if (storageProviderName === \"aws\" && assetUrl) {\n\n try {\n providerResponse.push(\n await fileAwsS3StorageProvider.removeFile(assetUrl, thumbnailUrl)\n )\n } catch (err) {\n providerResponse.push(\n `Failed to delete from Aws S3: ${assetUrl}`\n )\n }\n\n }\n\n }\n\n // remove files\n const response = await fileModel.remove({ where: { [`${ModelFileFields.file_id}`]: { in: fileIds } } });\n\n return {\n files: response,\n providerResponse\n }\n };\n\n const getFileUsageSummary = async ({ accountId = 0 }: FileGetUsageSummaryProps) => {\n\n const summaryCount = await fileModel.aggregate({\n field: `file_id`,\n operation: `count`,\n where: {\n [`${ModelFileFields.accountid}`]: accountId,\n [`${ModelFileFields.istrash}`]: false,\n [`${ModelFileFields.isdelete}`]: false,\n }\n });\n\n const summarySize = await fileModel.aggregate({\n field: `file_size_bytes`,\n operation: `sum`,\n where: {\n [`${ModelFileFields.accountid}`]: accountId,\n [`${ModelFileFields.istrash}`]: false,\n [`${ModelFileFields.isdelete}`]: false,\n }\n });\n\n const totalFiles = summaryCount ?? 0;\n const totalBytes = summarySize ?? 0;\n // const totalFiles = summary._count.id;\n\n // Optional: convert bytes to MB or GB\n const totalMB = totalBytes / (1024 * 1024);\n const totalGB = totalBytes / (1024 * 1024 * 1024);\n\n return {\n totalFiles,\n totalBytes,\n totalMB: parseFloat(totalMB.toFixed(2)), // now decimal\n totalGB: parseFloat(totalGB.toFixed(2)), // now decimal\n };\n }\n\n // const getDataTypes = () => {\n // return Object.values(fileDataTypes);\n // }\n\n return {\n uploadFiles,\n // createFile,\n // updateFile,\n getFile,\n listFiles,\n removeFiles,\n // getDataTypes,\n getFileUsageSummary\n }\n\n}\n\n"]}
|
package/dist/services/index.d.ts
CHANGED
|
@@ -38,5 +38,7 @@ export { OneTimeCodeService, oneTimeCodeTypes, oneTimeCodePurposeTypes, oneTimeC
|
|
|
38
38
|
export type { OneTimeCodeModuleRef, OneTimeCodeType, OneTimeCodePurposeType, OneTimeCodeStatus, OneTimeCodeServiceProps, OneTimeCodeCreateProps } from "../services/one_time_code/OneTimeCodeService";
|
|
39
39
|
export { SmtpEmailService } from "../services/gateway/SmtpEmailService";
|
|
40
40
|
export type { SmtpEmailServiceProps, SmtpEmailSendProps, SmtpEmailTransporterOptions } from "../services/gateway/SmtpEmailService";
|
|
41
|
+
export { SchedulerLogService, schedulerLogTypes } from "../services/scheduler/SchedulerLogService";
|
|
42
|
+
export type { SchedulerLogServiceProps, SchedulerLogFlowType, SchedulerLogModuleRef, SchedulerLogRemoveProps, SchedulerLogCreateProps, SchedulerLogListProps, SchedulerLogGetProps } from "../services/scheduler/SchedulerLogService";
|
|
41
43
|
export { AccessKeyUtilService } from "../services/utils/AccessKeyUtilService";
|
|
42
44
|
export type { AccessKeyUtilServiceProps, AccessKeyUtilValidateProps, AccessKeyUtilAccountOwnerProps } from "../services/utils/AccessKeyUtilService";
|