@goweekdays/core 2.8.0 → 2.9.0
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/CHANGELOG.md +6 -0
- package/dist/index.d.ts +85 -2
- package/dist/index.js +3017 -2062
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +2976 -2009
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
package/dist/index.d.ts
CHANGED
|
@@ -4,6 +4,7 @@ import * as mongodb from 'mongodb';
|
|
|
4
4
|
import { ObjectId, ClientSession, Db, Collection } from 'mongodb';
|
|
5
5
|
import * as bson from 'bson';
|
|
6
6
|
import { z } from 'zod';
|
|
7
|
+
import * as _paypal_paypal_server_sdk from '@paypal/paypal-server-sdk';
|
|
7
8
|
|
|
8
9
|
declare function useAuthService(): {
|
|
9
10
|
login: ({ email, password }?: {
|
|
@@ -394,6 +395,7 @@ declare function useOrgRepo(): {
|
|
|
394
395
|
getByName: (name: string) => Promise<TOrg | null>;
|
|
395
396
|
getByEmail: (email: string) => Promise<TOrg | null>;
|
|
396
397
|
updateById: (_id: string | ObjectId, options: Pick<TOrg, "name" | "description" | "email" | "contact">) => Promise<void>;
|
|
398
|
+
updateStatusById: (_id: string | ObjectId, status: string, session?: ClientSession) => Promise<string>;
|
|
397
399
|
};
|
|
398
400
|
|
|
399
401
|
declare function useOrgService(): {
|
|
@@ -637,6 +639,35 @@ declare function useUtilController(): {
|
|
|
637
639
|
|
|
638
640
|
declare const transactionSchema: Joi.ObjectSchema<any>;
|
|
639
641
|
|
|
642
|
+
interface PaypalWebhookHeaders {
|
|
643
|
+
"paypal-auth-algo"?: string;
|
|
644
|
+
"paypal-cert-url": string;
|
|
645
|
+
"paypal-transmission-id": string;
|
|
646
|
+
"paypal-transmission-sig": string;
|
|
647
|
+
"paypal-transmission-time": string;
|
|
648
|
+
}
|
|
649
|
+
declare function usePaypalService(): {
|
|
650
|
+
addOrder: ({ amount, currency, customId, returnUrl, cancelUrl, action, }?: {
|
|
651
|
+
amount?: number | undefined;
|
|
652
|
+
currency?: string | undefined;
|
|
653
|
+
customId?: string | undefined;
|
|
654
|
+
returnUrl?: string | undefined;
|
|
655
|
+
cancelUrl?: string | undefined;
|
|
656
|
+
action?: string | undefined;
|
|
657
|
+
}) => Promise<_paypal_paypal_server_sdk.ApiResponse<_paypal_paypal_server_sdk.Order>>;
|
|
658
|
+
captureOrder: (id: string) => Promise<_paypal_paypal_server_sdk.ApiResponse<_paypal_paypal_server_sdk.Order>>;
|
|
659
|
+
verifySignature: (rawBody: Buffer | string, headers: PaypalWebhookHeaders, webhookId?: string) => Promise<boolean>;
|
|
660
|
+
createInvoice: (value: {
|
|
661
|
+
email: string;
|
|
662
|
+
amount: number;
|
|
663
|
+
currency: string;
|
|
664
|
+
note?: string;
|
|
665
|
+
title: string;
|
|
666
|
+
dueDate?: string;
|
|
667
|
+
}) => Promise<any>;
|
|
668
|
+
sendInvoice: (invoiceId: string) => Promise<any>;
|
|
669
|
+
};
|
|
670
|
+
|
|
640
671
|
type TVerificationMetadata = {
|
|
641
672
|
name?: string;
|
|
642
673
|
app?: string;
|
|
@@ -794,6 +825,7 @@ type TSubscription = {
|
|
|
794
825
|
currency: string;
|
|
795
826
|
billingCycle: "monthly" | "yearly";
|
|
796
827
|
promoCode?: string;
|
|
828
|
+
retry?: number;
|
|
797
829
|
status?: string;
|
|
798
830
|
nextBillingDate: Date | string;
|
|
799
831
|
createdAt?: Date | string;
|
|
@@ -817,11 +849,17 @@ declare function useSubscriptionRepo(): {
|
|
|
817
849
|
getById: (_id: string | ObjectId) => Promise<TSubscription | null>;
|
|
818
850
|
deleteById: (_id: string | ObjectId) => Promise<string>;
|
|
819
851
|
updateById: (_id: string | ObjectId, options: {
|
|
820
|
-
seats
|
|
852
|
+
seats?: number;
|
|
821
853
|
paidSeats?: number;
|
|
822
854
|
amount?: number;
|
|
823
855
|
promoCode?: string;
|
|
856
|
+
status?: string;
|
|
857
|
+
nextBillingDate?: Date;
|
|
824
858
|
}, session?: ClientSession) => Promise<string>;
|
|
859
|
+
getByStatus: (status?: string, limit?: number, retry?: number) => Promise<TSubscription[]>;
|
|
860
|
+
updateStatusById: (_id: string | ObjectId, status: string, session?: ClientSession) => Promise<string>;
|
|
861
|
+
updateRetryById: (_id: string | ObjectId, retry: number, session?: ClientSession) => Promise<string>;
|
|
862
|
+
getOverdueForSuspension: (limit?: number, daysOverdue?: number) => Promise<TSubscription[]>;
|
|
825
863
|
};
|
|
826
864
|
|
|
827
865
|
declare function useSubscriptionController(): {
|
|
@@ -831,6 +869,20 @@ declare function useSubscriptionController(): {
|
|
|
831
869
|
updateSeats: (req: Request, res: Response, next: NextFunction) => Promise<void>;
|
|
832
870
|
};
|
|
833
871
|
|
|
872
|
+
declare function useSubscriptionService(): {
|
|
873
|
+
updateSeats: ({ id, user, amount, seats, }?: {
|
|
874
|
+
id?: string | undefined;
|
|
875
|
+
user?: string | undefined;
|
|
876
|
+
amount?: number | undefined;
|
|
877
|
+
seats?: number | undefined;
|
|
878
|
+
}) => Promise<string>;
|
|
879
|
+
processInvoices: () => Promise<void>;
|
|
880
|
+
processSuspensions: () => Promise<void>;
|
|
881
|
+
scheduleInvoiceProcessing: () => void;
|
|
882
|
+
scheduleSuspensionProcessing: () => void;
|
|
883
|
+
processPaidInvoice: (invoiceId: string) => Promise<string>;
|
|
884
|
+
};
|
|
885
|
+
|
|
834
886
|
type TSubscriptionTransaction = {
|
|
835
887
|
_id?: ObjectId;
|
|
836
888
|
subscription: string | ObjectId;
|
|
@@ -1023,16 +1075,43 @@ type TJobPost = {
|
|
|
1023
1075
|
deletedAt?: Date;
|
|
1024
1076
|
};
|
|
1025
1077
|
declare const schemaJobPost: Joi.ObjectSchema<any>;
|
|
1078
|
+
declare const schemaJobPostUpdate: Joi.ObjectSchema<any>;
|
|
1026
1079
|
declare function modelJobPost(value: TJobPost): TJobPost;
|
|
1027
1080
|
|
|
1028
1081
|
declare function useJobPostController(): {
|
|
1029
1082
|
add: (req: Request, res: Response, next: NextFunction) => Promise<void>;
|
|
1083
|
+
getAll: (req: Request, res: Response, next: NextFunction) => Promise<void>;
|
|
1084
|
+
getJobPostsByOrg: (req: Request, res: Response, next: NextFunction) => Promise<void>;
|
|
1085
|
+
getById: (req: Request, res: Response, next: NextFunction) => Promise<void>;
|
|
1086
|
+
updateById: (req: Request, res: Response, next: NextFunction) => Promise<void>;
|
|
1030
1087
|
deleteById: (req: Request, res: Response, next: NextFunction) => Promise<void>;
|
|
1031
1088
|
};
|
|
1032
1089
|
|
|
1033
1090
|
declare function useJobPostRepo(): {
|
|
1034
1091
|
createIndexes: () => Promise<string>;
|
|
1035
1092
|
add: (value: TJobPost, session?: ClientSession) => Promise<ObjectId>;
|
|
1093
|
+
getAll: ({ search, page, limit, status, }?: {
|
|
1094
|
+
search?: string | undefined;
|
|
1095
|
+
page?: number | undefined;
|
|
1096
|
+
limit?: number | undefined;
|
|
1097
|
+
status?: string | undefined;
|
|
1098
|
+
}) => Promise<Record<string, any>>;
|
|
1099
|
+
getJobPostsByOrg: ({ search, page, limit, org, status, }?: {
|
|
1100
|
+
org: string | ObjectId;
|
|
1101
|
+
page: number;
|
|
1102
|
+
limit?: number | undefined;
|
|
1103
|
+
search?: string | undefined;
|
|
1104
|
+
status?: string | undefined;
|
|
1105
|
+
}) => Promise<{
|
|
1106
|
+
items: any[];
|
|
1107
|
+
pages: number;
|
|
1108
|
+
pageRange: string;
|
|
1109
|
+
} | {
|
|
1110
|
+
_id: ObjectId;
|
|
1111
|
+
name: string;
|
|
1112
|
+
}[]>;
|
|
1113
|
+
getById: (_id: string | ObjectId) => Promise<TJobPost>;
|
|
1114
|
+
updateById: (_id: string | ObjectId, options: Pick<TJobPost, "title" | "setup" | "location" | "type" | "description">) => Promise<string>;
|
|
1036
1115
|
deleteById: (_id: string | ObjectId, session?: ClientSession) => Promise<string>;
|
|
1037
1116
|
};
|
|
1038
1117
|
|
|
@@ -1050,6 +1129,8 @@ type TLedgerBill = {
|
|
|
1050
1129
|
status: "pending" | "paid" | "overdue";
|
|
1051
1130
|
billingFrom?: string | Date;
|
|
1052
1131
|
billingTo?: string | Date;
|
|
1132
|
+
payerViewUrl?: string;
|
|
1133
|
+
invoice?: string;
|
|
1053
1134
|
paidAt?: string | Date;
|
|
1054
1135
|
dueDate?: string | Date;
|
|
1055
1136
|
createdAt?: string | Date;
|
|
@@ -1072,7 +1153,9 @@ declare function useLedgerBillingRepo(): {
|
|
|
1072
1153
|
status?: string | undefined;
|
|
1073
1154
|
}) => Promise<Record<string, any>>;
|
|
1074
1155
|
getById: (_id: string | ObjectId) => Promise<TLedgerBill | null>;
|
|
1156
|
+
getByInvoice: (invoice: string) => Promise<TLedgerBill | null>;
|
|
1075
1157
|
getSummary: (status: string, org: string | ObjectId) => Promise<bson.Document>;
|
|
1158
|
+
updateStatusById: (_id: string | ObjectId, status: string, session?: ClientSession) => Promise<boolean>;
|
|
1076
1159
|
};
|
|
1077
1160
|
|
|
1078
1161
|
declare function useLedgerBillingController(): {
|
|
@@ -1120,4 +1203,4 @@ declare const XENDIT_BASE_URL: string;
|
|
|
1120
1203
|
declare const DOMAIN: string;
|
|
1121
1204
|
declare const APP_ORG: string;
|
|
1122
1205
|
|
|
1123
|
-
export { ACCESS_TOKEN_EXPIRY, ACCESS_TOKEN_SECRET, APP_ACCOUNT, APP_MAIN, APP_ORG, DEFAULT_USER_EMAIL, DEFAULT_USER_FIRST_NAME, DEFAULT_USER_LAST_NAME, DEFAULT_USER_PASSWORD, DOMAIN, MAILER_EMAIL, MAILER_PASSWORD, MAILER_TRANSPORT_HOST, MAILER_TRANSPORT_PORT, MAILER_TRANSPORT_SECURE, MBuilding, MBuildingUnit, MFile, MONGO_DB, MONGO_URI, PAYPAL_API_URL, PAYPAL_CLIENT_ID, PAYPAL_CLIENT_SECRET, PAYPAL_WEBHOOK_ID, PORT, REDIS_HOST, REDIS_PASSWORD, REDIS_PORT, REFRESH_TOKEN_EXPIRY, REFRESH_TOKEN_SECRET, SECRET_KEY, SPACES_ACCESS_KEY, SPACES_BUCKET, SPACES_ENDPOINT, SPACES_REGION, SPACES_SECRET_KEY, TApp, TBuilding, TBuildingUnit, TCounter, TFile, TJobPost, TLedgerBill, TMember, TOrg, TPermission, TPermissionGroup, TPlan, TPromo, TRole, TSubscription, TSubscriptionTransaction, TUser, TVerification, TVerificationMetadata, VERIFICATION_FORGET_PASSWORD_DURATION, VERIFICATION_USER_INVITE_DURATION, XENDIT_BASE_URL, XENDIT_SECRET_KEY, currencies, isDev, ledgerBillStatuses, ledgerBillTypes, modelApp, modelJobPost, modelLedgerBill, modelMember, modelOrg, modelPermission, modelPermissionGroup, modelPlan, modelPromo, modelRole, modelSubscription, modelSubscriptionTransaction, modelUser, modelVerification, schemaApp, schemaAppUpdate, schemaBuilding, schemaBuildingUnit, schemaInviteMember, schemaJobPost, schemaLedgerBill, schemaLedgerBillingSummary, schemaMember, schemaMemberRole, schemaMemberStatus, schemaOrg, schemaOrgAdd, schemaOrgUpdate, schemaPermission, schemaPermissionGroup, schemaPermissionGroupUpdate, schemaPermissionUpdate, schemaPlan, schemaPromo, schemaRole, schemaRoleUpdate, schemaSubscription, schemaSubscriptionSeats, schemaSubscriptionTransaction, schemaSubscriptionUpdate, schemaUpdateOptions, schemaUser, schemaVerification, transactionSchema, useAppController, useAppRepo, useAppService, useAuthController, useAuthService, useBuildingController, useBuildingRepo, useBuildingService, useBuildingUnitController, useBuildingUnitRepo, useBuildingUnitService, useCounterModel, useCounterRepo, useFileController, useFileRepo, useFileService, useGitHubService, useJobPostController, useJobPostRepo, useJobPostService, useLedgerBillingController, useLedgerBillingRepo, useMemberController, useMemberRepo, useOrgController, useOrgRepo, useOrgService, usePermissionController, usePermissionGroupController, usePermissionGroupRepo, usePermissionGroupService, usePermissionRepo, usePermissionService, usePlanController, usePlanRepo, usePlanService, usePromoRepo, useRoleController, useRoleRepo, useRoleService, useSubscriptionController, useSubscriptionRepo, useSubscriptionTransactionController, useSubscriptionTransactionRepo, useUserController, useUserRepo, useUserService, useUtilController, useVerificationController, useVerificationRepo, useVerificationService };
|
|
1206
|
+
export { ACCESS_TOKEN_EXPIRY, ACCESS_TOKEN_SECRET, APP_ACCOUNT, APP_MAIN, APP_ORG, DEFAULT_USER_EMAIL, DEFAULT_USER_FIRST_NAME, DEFAULT_USER_LAST_NAME, DEFAULT_USER_PASSWORD, DOMAIN, MAILER_EMAIL, MAILER_PASSWORD, MAILER_TRANSPORT_HOST, MAILER_TRANSPORT_PORT, MAILER_TRANSPORT_SECURE, MBuilding, MBuildingUnit, MFile, MONGO_DB, MONGO_URI, PAYPAL_API_URL, PAYPAL_CLIENT_ID, PAYPAL_CLIENT_SECRET, PAYPAL_WEBHOOK_ID, PORT, PaypalWebhookHeaders, REDIS_HOST, REDIS_PASSWORD, REDIS_PORT, REFRESH_TOKEN_EXPIRY, REFRESH_TOKEN_SECRET, SECRET_KEY, SPACES_ACCESS_KEY, SPACES_BUCKET, SPACES_ENDPOINT, SPACES_REGION, SPACES_SECRET_KEY, TApp, TBuilding, TBuildingUnit, TCounter, TFile, TJobPost, TLedgerBill, TMember, TOrg, TPermission, TPermissionGroup, TPlan, TPromo, TRole, TSubscription, TSubscriptionTransaction, TUser, TVerification, TVerificationMetadata, VERIFICATION_FORGET_PASSWORD_DURATION, VERIFICATION_USER_INVITE_DURATION, XENDIT_BASE_URL, XENDIT_SECRET_KEY, currencies, isDev, ledgerBillStatuses, ledgerBillTypes, modelApp, modelJobPost, modelLedgerBill, modelMember, modelOrg, modelPermission, modelPermissionGroup, modelPlan, modelPromo, modelRole, modelSubscription, modelSubscriptionTransaction, modelUser, modelVerification, schemaApp, schemaAppUpdate, schemaBuilding, schemaBuildingUnit, schemaInviteMember, schemaJobPost, schemaJobPostUpdate, schemaLedgerBill, schemaLedgerBillingSummary, schemaMember, schemaMemberRole, schemaMemberStatus, schemaOrg, schemaOrgAdd, schemaOrgUpdate, schemaPermission, schemaPermissionGroup, schemaPermissionGroupUpdate, schemaPermissionUpdate, schemaPlan, schemaPromo, schemaRole, schemaRoleUpdate, schemaSubscription, schemaSubscriptionSeats, schemaSubscriptionTransaction, schemaSubscriptionUpdate, schemaUpdateOptions, schemaUser, schemaVerification, transactionSchema, useAppController, useAppRepo, useAppService, useAuthController, useAuthService, useBuildingController, useBuildingRepo, useBuildingService, useBuildingUnitController, useBuildingUnitRepo, useBuildingUnitService, useCounterModel, useCounterRepo, useFileController, useFileRepo, useFileService, useGitHubService, useJobPostController, useJobPostRepo, useJobPostService, useLedgerBillingController, useLedgerBillingRepo, useMemberController, useMemberRepo, useOrgController, useOrgRepo, useOrgService, usePaypalService, usePermissionController, usePermissionGroupController, usePermissionGroupRepo, usePermissionGroupService, usePermissionRepo, usePermissionService, usePlanController, usePlanRepo, usePlanService, usePromoRepo, useRoleController, useRoleRepo, useRoleService, useSubscriptionController, useSubscriptionRepo, useSubscriptionService, useSubscriptionTransactionController, useSubscriptionTransactionRepo, useUserController, useUserRepo, useUserService, useUtilController, useVerificationController, useVerificationRepo, useVerificationService };
|