@easyweb/rabbitmq-utils 1.0.17 → 1.0.19
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/events/routing-keys.d.ts +2 -0
- package/dist/events/routing-keys.d.ts.map +1 -1
- package/dist/events/routing-keys.js +2 -0
- package/dist/events/routing-keys.js.map +1 -1
- package/dist/events/types/billing-events.d.ts +47 -5
- package/dist/events/types/billing-events.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -28,9 +28,11 @@ export declare enum RoutingKeys {
|
|
|
28
28
|
PAYMENT_FAILED = "billing.payment.failed",
|
|
29
29
|
DOMAIN_PROCESS = "billing.domain.process",// worker: register/transfer/renew
|
|
30
30
|
DOMAIN_ACTIVATED = "billing.domain.activated",
|
|
31
|
+
DOMAIN_SUBSCRIPTION_CYCLE = "billing.domain.subscription.cycle",// worker: renew domain on annual cycle
|
|
31
32
|
ORDER_CREATED = "billing.order.created",
|
|
32
33
|
ORDER_PAID = "billing.order.paid",// worker: kirim email konfirmasi
|
|
33
34
|
DOMAIN_BYOD_CREATED = "billing.domain.byod.created",
|
|
35
|
+
EMAIL_PROVISION = "billing.email.provision",// worker: provision/renew mailboxes on OpenProvider
|
|
34
36
|
PROJECT_CREATED = "website.project.created",
|
|
35
37
|
PROJECT_APPROVED = "website.project.approved",
|
|
36
38
|
PROJECT_DEPLOYED = "website.project.deployed",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"routing-keys.d.ts","sourceRoot":"","sources":["../../src/events/routing-keys.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,oBAAY,WAAW;IACrB,cAAc,wBAAwB;IACtC,cAAc,wBAAwB;IAEtC,sBAAsB,gCAAgC;IACtD,sBAAsB,gCAAgC;IAEtD,uBAAuB,iCAAiC;IAExD,eAAe,yBAAyB;IAExC,gBAAgB,0BAA0B;IAC1C,gBAAgB,0BAA0B;IAE1C,YAAY,sBAAsB;IAClC,cAAc,wBAAwB;IAEtC,gBAAgB,6BAA6B;IAC7C,mBAAmB,gCAAgC,CAAE,8BAA8B;IACnF,oBAAoB,iCAAiC;IACrD,sBAAsB,mCAAmC;IACzD,qBAAqB,kCAAkC;IACvD,qBAAqB,kCAAkC;IACvD,YAAY,yBAAyB;IACrC,cAAc,2BAA2B;IAEzC,cAAc,2BAA2B,CAAE,kCAAkC;IAC7E,gBAAgB,6BAA6B;IAC7C,aAAa,0BAA0B;IACvC,UAAU,uBAAuB,CAAE,iCAAiC;IACpE,mBAAmB,gCAAgC;
|
|
1
|
+
{"version":3,"file":"routing-keys.d.ts","sourceRoot":"","sources":["../../src/events/routing-keys.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,oBAAY,WAAW;IACrB,cAAc,wBAAwB;IACtC,cAAc,wBAAwB;IAEtC,sBAAsB,gCAAgC;IACtD,sBAAsB,gCAAgC;IAEtD,uBAAuB,iCAAiC;IAExD,eAAe,yBAAyB;IAExC,gBAAgB,0BAA0B;IAC1C,gBAAgB,0BAA0B;IAE1C,YAAY,sBAAsB;IAClC,cAAc,wBAAwB;IAEtC,gBAAgB,6BAA6B;IAC7C,mBAAmB,gCAAgC,CAAE,8BAA8B;IACnF,oBAAoB,iCAAiC;IACrD,sBAAsB,mCAAmC;IACzD,qBAAqB,kCAAkC;IACvD,qBAAqB,kCAAkC;IACvD,YAAY,yBAAyB;IACrC,cAAc,2BAA2B;IAEzC,cAAc,2BAA2B,CAAE,kCAAkC;IAC7E,gBAAgB,6BAA6B;IAC7C,yBAAyB,sCAAsC,CAAE,uCAAuC;IACxG,aAAa,0BAA0B;IACvC,UAAU,uBAAuB,CAAE,iCAAiC;IACpE,mBAAmB,gCAAgC;IACnD,eAAe,4BAA4B,CAAE,oDAAoD;IAEjG,eAAe,4BAA4B;IAC3C,gBAAgB,6BAA6B;IAC7C,gBAAgB,6BAA6B;IAC7C,cAAc,2BAA2B;IACzC,gBAAgB,6BAA6B;IAE7C,wBAAwB,qCAAqC;CAC9D"}
|
|
@@ -32,9 +32,11 @@ var RoutingKeys;
|
|
|
32
32
|
RoutingKeys["PAYMENT_FAILED"] = "billing.payment.failed";
|
|
33
33
|
RoutingKeys["DOMAIN_PROCESS"] = "billing.domain.process";
|
|
34
34
|
RoutingKeys["DOMAIN_ACTIVATED"] = "billing.domain.activated";
|
|
35
|
+
RoutingKeys["DOMAIN_SUBSCRIPTION_CYCLE"] = "billing.domain.subscription.cycle";
|
|
35
36
|
RoutingKeys["ORDER_CREATED"] = "billing.order.created";
|
|
36
37
|
RoutingKeys["ORDER_PAID"] = "billing.order.paid";
|
|
37
38
|
RoutingKeys["DOMAIN_BYOD_CREATED"] = "billing.domain.byod.created";
|
|
39
|
+
RoutingKeys["EMAIL_PROVISION"] = "billing.email.provision";
|
|
38
40
|
RoutingKeys["PROJECT_CREATED"] = "website.project.created";
|
|
39
41
|
RoutingKeys["PROJECT_APPROVED"] = "website.project.approved";
|
|
40
42
|
RoutingKeys["PROJECT_DEPLOYED"] = "website.project.deployed";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"routing-keys.js","sourceRoot":"","sources":["../../src/events/routing-keys.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;GAQG;AACH,IAAY,
|
|
1
|
+
{"version":3,"file":"routing-keys.js","sourceRoot":"","sources":["../../src/events/routing-keys.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;GAQG;AACH,IAAY,WAyCX;AAzCD,WAAY,WAAW;IACrB,qDAAsC,CAAA;IACtC,qDAAsC,CAAA;IAEtC,qEAAsD,CAAA;IACtD,qEAAsD,CAAA;IAEtD,uEAAwD,CAAA;IAExD,uDAAwC,CAAA;IAExC,yDAA0C,CAAA;IAC1C,yDAA0C,CAAA;IAE1C,iDAAkC,CAAA;IAClC,qDAAsC,CAAA;IAEtC,4DAA6C,CAAA;IAC7C,kEAAmD,CAAA;IACnD,oEAAqD,CAAA;IACrD,wEAAyD,CAAA;IACzD,sEAAuD,CAAA;IACvD,sEAAuD,CAAA;IACvD,oDAAqC,CAAA;IACrC,wDAAyC,CAAA;IAEzC,wDAAyC,CAAA;IACzC,4DAA6C,CAAA;IAC7C,8EAA+D,CAAA;IAC/D,sDAAuC,CAAA;IACvC,gDAAiC,CAAA;IACjC,kEAAmD,CAAA;IACnD,0DAA2C,CAAA;IAE3C,0DAA2C,CAAA;IAC3C,4DAA6C,CAAA;IAC7C,4DAA6C,CAAA;IAC7C,wDAAyC,CAAA;IACzC,4DAA6C,CAAA;IAE7C,4EAA6D,CAAA;AAC/D,CAAC,EAzCW,WAAW,2BAAX,WAAW,QAyCtB"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Exchanges } from "../exchanges";
|
|
2
2
|
import { RoutingKeys } from "../routing-keys";
|
|
3
3
|
export type PlanType = "MONTHLY" | "ANNUAL";
|
|
4
|
+
export type SubscriptionType = "WEBSITE" | "DOMAIN" | "EMAIL";
|
|
4
5
|
export type DomainMode = "REGISTER" | "TRANSFER" | "RENEW" | "BYOD";
|
|
5
6
|
export type DomainStatus = "CREATED" | "PENDING_REGISTRATION" | "REGISTERING" | "ACTIVE" | "TRANSFERRING" | "FAILED" | "PENDING_NAMESERVER_UPDATE";
|
|
6
7
|
export type AddonCode = "PROFESSIONAL_EMAIL" | "INITIAL_DESIGN_FEE";
|
|
@@ -22,7 +23,9 @@ export interface SubscriptionCreatedEvent {
|
|
|
22
23
|
data: {
|
|
23
24
|
externalUserId: string;
|
|
24
25
|
subscriptionId: string;
|
|
25
|
-
projectId
|
|
26
|
+
projectId?: string | null;
|
|
27
|
+
subscriptionType?: SubscriptionType;
|
|
28
|
+
domainName?: string;
|
|
26
29
|
};
|
|
27
30
|
}
|
|
28
31
|
export interface SubscriptionActivatedEvent {
|
|
@@ -31,7 +34,8 @@ export interface SubscriptionActivatedEvent {
|
|
|
31
34
|
data: {
|
|
32
35
|
externalUserId: string;
|
|
33
36
|
subscriptionId: string;
|
|
34
|
-
projectId
|
|
37
|
+
projectId?: string | null;
|
|
38
|
+
subscriptionType?: SubscriptionType;
|
|
35
39
|
activatedAt: Date;
|
|
36
40
|
addons?: AddonItem[];
|
|
37
41
|
};
|
|
@@ -42,7 +46,8 @@ export interface SubscriptionCanceledEvent {
|
|
|
42
46
|
data: {
|
|
43
47
|
externalUserId: string;
|
|
44
48
|
subscriptionId: string;
|
|
45
|
-
projectId
|
|
49
|
+
projectId?: string | null;
|
|
50
|
+
subscriptionType?: SubscriptionType;
|
|
46
51
|
canceledAt: Date;
|
|
47
52
|
};
|
|
48
53
|
}
|
|
@@ -57,8 +62,12 @@ export interface InvoicePaidEvent {
|
|
|
57
62
|
};
|
|
58
63
|
}
|
|
59
64
|
/**
|
|
60
|
-
* Dipublish oleh XenditWebhookService saat invoice.paid untuk item
|
|
65
|
+
* Dipublish oleh XenditWebhookService saat invoice.paid untuk item *_SUBSCRIPTION.
|
|
61
66
|
* Dikonsumsi oleh SubscriptionCreateSubscriber → buat Xendit recurring plan.
|
|
67
|
+
* subscriptionType menentukan branch logic di createPlan():
|
|
68
|
+
* WEBSITE → website plan (projectId required)
|
|
69
|
+
* DOMAIN → annual domain plan (projectId optional, domainName required)
|
|
70
|
+
* EMAIL → email mailbox plan (projectId null, domainName + emailQuantity required)
|
|
62
71
|
*/
|
|
63
72
|
export interface SubscriptionCreateEvent {
|
|
64
73
|
exchange: Exchanges.PaymentService;
|
|
@@ -66,12 +75,45 @@ export interface SubscriptionCreateEvent {
|
|
|
66
75
|
data: {
|
|
67
76
|
orderId: string;
|
|
68
77
|
externalUserId: string;
|
|
69
|
-
projectId
|
|
78
|
+
projectId?: string | null;
|
|
70
79
|
planType: PlanType;
|
|
71
80
|
email: string;
|
|
72
81
|
name?: string;
|
|
73
82
|
paymentTokenId?: string | null;
|
|
74
83
|
addons?: AddonItem[];
|
|
84
|
+
subscriptionType?: SubscriptionType;
|
|
85
|
+
domainName?: string;
|
|
86
|
+
emailQuantity?: number;
|
|
87
|
+
};
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Dipublish setelah EMAIL subscription berhasil dibuat di Xendit.
|
|
91
|
+
* Dikonsumsi oleh EmailProvisionSubscriber → provision mailbox di OpenProvider.
|
|
92
|
+
*/
|
|
93
|
+
export interface EmailProvisionEvent {
|
|
94
|
+
exchange: Exchanges.PaymentService;
|
|
95
|
+
routingKey: RoutingKeys.EMAIL_PROVISION;
|
|
96
|
+
data: {
|
|
97
|
+
subscriptionId: string;
|
|
98
|
+
externalUserId: string;
|
|
99
|
+
domainName: string;
|
|
100
|
+
quantity: number;
|
|
101
|
+
planType: PlanType;
|
|
102
|
+
orderId?: string;
|
|
103
|
+
};
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* Dipublish oleh XenditWebhookService saat recurring cycle DOMAIN subscription berhasil dibayar.
|
|
107
|
+
* Dikonsumsi oleh DomainSubscriptionCycleSubscriber → renew domain di RNA.
|
|
108
|
+
*/
|
|
109
|
+
export interface DomainSubscriptionCycleEvent {
|
|
110
|
+
exchange: Exchanges.PaymentService;
|
|
111
|
+
routingKey: RoutingKeys.DOMAIN_SUBSCRIPTION_CYCLE;
|
|
112
|
+
data: {
|
|
113
|
+
subscriptionId: string;
|
|
114
|
+
domainName: string;
|
|
115
|
+
rnaCustomerId: number;
|
|
116
|
+
years: number;
|
|
75
117
|
};
|
|
76
118
|
}
|
|
77
119
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"billing-events.d.ts","sourceRoot":"","sources":["../../../src/events/types/billing-events.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C,MAAM,MAAM,QAAQ,GAAG,SAAS,GAAG,QAAQ,CAAC;AAC5C,MAAM,MAAM,UAAU,GAAG,UAAU,GAAG,UAAU,GAAG,OAAO,GAAG,MAAM,CAAC;AACpE,MAAM,MAAM,YAAY,GACpB,SAAS,GACT,sBAAsB,GACtB,aAAa,GACb,QAAQ,GACR,cAAc,GACd,QAAQ,GACR,2BAA2B,CAAC;AAChC,MAAM,MAAM,SAAS,GAAG,oBAAoB,GAAG,oBAAoB,CAAC;AAEpE,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,SAAS,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;CAClB;AACD,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,SAAS,CAAC,cAAc,CAAC;IACnC,UAAU,EAAE,WAAW,CAAC,gBAAgB,CAAC;IACzC,IAAI,EAAE;QACJ,UAAU,EAAE,MAAM,CAAC;QACnB,cAAc,EAAE,MAAM,CAAC;KACxB,CAAC;CACH;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,EAAE,SAAS,CAAC,cAAc,CAAC;IACnC,UAAU,EAAE,WAAW,CAAC,oBAAoB,CAAC;IAC7C,IAAI,EAAE;QACJ,cAAc,EAAE,MAAM,CAAC;QACvB,cAAc,EAAE,MAAM,CAAC;QACvB,SAAS,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"billing-events.d.ts","sourceRoot":"","sources":["../../../src/events/types/billing-events.ts"],"names":[],"mappings":"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"}
|