@lyxa.ai/core 1.0.363 → 1.0.381-alpha.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/dist/libraries/mongo/models/category.model.d.ts +0 -1
- package/dist/libraries/mongo/models/category.model.js +1 -32
- package/dist/libraries/mongo/models/category.model.js.map +1 -1
- package/dist/libraries/mongo/models/embedded/shop-document.model.d.ts +0 -1
- package/dist/libraries/mongo/models/embedded/shop-document.model.js +0 -5
- package/dist/libraries/mongo/models/embedded/shop-document.model.js.map +1 -1
- package/dist/libraries/mongo/models/finance-settlement.model.d.ts +0 -1
- package/dist/libraries/mongo/models/finance-settlement.model.js +1 -12
- package/dist/libraries/mongo/models/finance-settlement.model.js.map +1 -1
- package/dist/libraries/mongo/models/index.d.ts +3 -0
- package/dist/libraries/mongo/models/index.js +5 -2
- package/dist/libraries/mongo/models/index.js.map +1 -1
- package/dist/libraries/mongo/models/line-item.model.d.ts +4 -2
- package/dist/libraries/mongo/models/line-item.model.js +12 -1
- package/dist/libraries/mongo/models/line-item.model.js.map +1 -1
- package/dist/libraries/mongo/models/order-delivery.model.d.ts +19 -0
- package/dist/libraries/mongo/models/order-delivery.model.js +87 -0
- package/dist/libraries/mongo/models/order-delivery.model.js.map +1 -0
- package/dist/libraries/mongo/models/order.model.d.ts +5 -11
- package/dist/libraries/mongo/models/order.model.js +29 -42
- package/dist/libraries/mongo/models/order.model.js.map +1 -1
- package/dist/libraries/mongo/models/service-promotion.model.d.ts +0 -1
- package/dist/libraries/mongo/models/service-promotion.model.js +0 -5
- package/dist/libraries/mongo/models/service-promotion.model.js.map +1 -1
- package/dist/libraries/mongo/models/user.model.d.ts +1 -1
- package/dist/libraries/mongo/repositories/index.d.ts +0 -0
- package/dist/libraries/mongo/repositories/index.js +2 -0
- package/dist/libraries/mongo/repositories/index.js.map +1 -0
- package/dist/libraries/mongo/repositories/optimized-product.repository.d.ts +0 -0
- package/dist/libraries/mongo/repositories/optimized-product.repository.js +2 -0
- package/dist/libraries/mongo/repositories/optimized-product.repository.js.map +1 -0
- package/dist/libraries/mongo/repositories/optimized-product.service.d.ts +0 -0
- package/dist/libraries/mongo/repositories/optimized-product.service.js +2 -0
- package/dist/libraries/mongo/repositories/optimized-product.service.js.map +1 -0
- package/dist/libraries/mongo/repositories/product-benchmark.d.ts +0 -0
- package/dist/libraries/mongo/repositories/product-benchmark.js +2 -0
- package/dist/libraries/mongo/repositories/product-benchmark.js.map +1 -0
- package/dist/libraries/mongo/repositories/product-query-optimizer.d.ts +0 -0
- package/dist/libraries/mongo/repositories/product-query-optimizer.js +2 -0
- package/dist/libraries/mongo/repositories/product-query-optimizer.js.map +1 -0
- package/dist/libraries/mongo/repositories/product.repository.d.ts +0 -0
- package/dist/libraries/mongo/repositories/product.repository.js +2 -0
- package/dist/libraries/mongo/repositories/product.repository.js.map +1 -0
- package/dist/libraries/mongo/repositories/test-optimized-product.d.ts +0 -0
- package/dist/libraries/mongo/repositories/test-optimized-product.js +2 -0
- package/dist/libraries/mongo/repositories/test-optimized-product.js.map +1 -0
- package/dist/libraries/mongo/utilities/uniqueIdHooks.d.ts +1 -1
- package/dist/libraries/mongo/utilities/uniqueIdHooks.js +2 -2
- package/dist/libraries/mongo/utilities/uniqueIdHooks.js.map +1 -1
- package/dist/libraries/socket/SocketEmitEvent.d.ts +3 -3
- package/dist/libraries/socket/SocketEmitEvent.js +5 -5
- package/dist/libraries/socket/SocketEmitEvent.js.map +1 -1
- package/dist/libraries/socket/index.d.ts +1 -2
- package/dist/libraries/socket/index.js +1 -2
- package/dist/libraries/socket/index.js.map +1 -1
- package/dist/libraries/socket/socket-publisher.d.ts +11 -0
- package/dist/libraries/socket/socket-publisher.js +36 -0
- package/dist/libraries/socket/socket-publisher.js.map +1 -0
- package/dist/types/README.md +1 -1
- package/dist/types/package.json +1 -1
- package/dist/types/utilities/enum.d.ts +12 -27
- package/dist/types/utilities/enum.js +15 -32
- package/dist/types/utilities/enum.js.map +1 -1
- package/dist/types/utilities/validation/common-validation.d.ts +2 -91
- package/dist/types/utilities/validation/common-validation.js +1 -2
- package/dist/types/utilities/validation/common-validation.js.map +1 -1
- package/dist/types/utilities/validation/global-validation.d.ts +14 -38
- package/dist/utilities/enum.d.ts +12 -27
- package/dist/utilities/enum.js +15 -32
- package/dist/utilities/enum.js.map +1 -1
- package/dist/utilities/validation/common-validation.d.ts +2 -91
- package/dist/utilities/validation/common-validation.js +1 -2
- package/dist/utilities/validation/common-validation.js.map +1 -1
- package/dist/utilities/validation/global-validation.d.ts +14 -38
- package/package.json +3 -3
- package/dist/libraries/socket/socket.types.d.ts +0 -25
- package/dist/libraries/socket/socket.types.js +0 -4
- package/dist/libraries/socket/socket.types.js.map +0 -1
- package/dist/libraries/socket/socket.utils.d.ts +0 -24
- package/dist/libraries/socket/socket.utils.js +0 -62
- package/dist/libraries/socket/socket.utils.js.map +0 -1
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.OrderDelivery = void 0;
|
|
13
|
+
const typegoose_1 = require("@typegoose/typegoose");
|
|
14
|
+
const defaultClasses_1 = require("@typegoose/typegoose/lib/defaultClasses");
|
|
15
|
+
const order_model_1 = require("./order.model");
|
|
16
|
+
const rider_model_1 = require("./rider.model");
|
|
17
|
+
const rider_assignment_model_1 = require("./embedded/rider-assignment-model");
|
|
18
|
+
const trip_leg_mode_1 = require("./embedded/trip-leg.mode");
|
|
19
|
+
let OrderDelivery = class OrderDelivery extends defaultClasses_1.TimeStamps {
|
|
20
|
+
order;
|
|
21
|
+
rider;
|
|
22
|
+
riderAssignments;
|
|
23
|
+
estimatedPickupTime;
|
|
24
|
+
actualPickupTime;
|
|
25
|
+
searchingStartTime;
|
|
26
|
+
totalSearchAttempts;
|
|
27
|
+
lastSearchRadiusInKm;
|
|
28
|
+
note;
|
|
29
|
+
tripSummary;
|
|
30
|
+
image;
|
|
31
|
+
};
|
|
32
|
+
exports.OrderDelivery = OrderDelivery;
|
|
33
|
+
__decorate([
|
|
34
|
+
(0, typegoose_1.prop)({ ref: () => order_model_1.Order, required: true, index: true, unique: true }),
|
|
35
|
+
__metadata("design:type", Object)
|
|
36
|
+
], OrderDelivery.prototype, "order", void 0);
|
|
37
|
+
__decorate([
|
|
38
|
+
(0, typegoose_1.prop)({ ref: () => rider_model_1.Rider }),
|
|
39
|
+
__metadata("design:type", Object)
|
|
40
|
+
], OrderDelivery.prototype, "rider", void 0);
|
|
41
|
+
__decorate([
|
|
42
|
+
(0, typegoose_1.prop)({ type: () => [rider_assignment_model_1.RiderAssignment], default: [] }),
|
|
43
|
+
__metadata("design:type", Array)
|
|
44
|
+
], OrderDelivery.prototype, "riderAssignments", void 0);
|
|
45
|
+
__decorate([
|
|
46
|
+
(0, typegoose_1.prop)(),
|
|
47
|
+
__metadata("design:type", Date)
|
|
48
|
+
], OrderDelivery.prototype, "estimatedPickupTime", void 0);
|
|
49
|
+
__decorate([
|
|
50
|
+
(0, typegoose_1.prop)(),
|
|
51
|
+
__metadata("design:type", Date)
|
|
52
|
+
], OrderDelivery.prototype, "actualPickupTime", void 0);
|
|
53
|
+
__decorate([
|
|
54
|
+
(0, typegoose_1.prop)({ default: Date.now }),
|
|
55
|
+
__metadata("design:type", Date)
|
|
56
|
+
], OrderDelivery.prototype, "searchingStartTime", void 0);
|
|
57
|
+
__decorate([
|
|
58
|
+
(0, typegoose_1.prop)({ type: Number, default: 0 }),
|
|
59
|
+
__metadata("design:type", Number)
|
|
60
|
+
], OrderDelivery.prototype, "totalSearchAttempts", void 0);
|
|
61
|
+
__decorate([
|
|
62
|
+
(0, typegoose_1.prop)({ type: Number, default: 0 }),
|
|
63
|
+
__metadata("design:type", Number)
|
|
64
|
+
], OrderDelivery.prototype, "lastSearchRadiusInKm", void 0);
|
|
65
|
+
__decorate([
|
|
66
|
+
(0, typegoose_1.prop)({ type: String }),
|
|
67
|
+
__metadata("design:type", String)
|
|
68
|
+
], OrderDelivery.prototype, "note", void 0);
|
|
69
|
+
__decorate([
|
|
70
|
+
(0, typegoose_1.prop)({ type: () => [trip_leg_mode_1.TripLeg], default: [] }),
|
|
71
|
+
__metadata("design:type", Array)
|
|
72
|
+
], OrderDelivery.prototype, "tripSummary", void 0);
|
|
73
|
+
__decorate([
|
|
74
|
+
(0, typegoose_1.prop)({ type: String }),
|
|
75
|
+
__metadata("design:type", String)
|
|
76
|
+
], OrderDelivery.prototype, "image", void 0);
|
|
77
|
+
exports.OrderDelivery = OrderDelivery = __decorate([
|
|
78
|
+
(0, typegoose_1.modelOptions)({
|
|
79
|
+
schemaOptions: {
|
|
80
|
+
timestamps: true,
|
|
81
|
+
toJSON: { virtuals: true },
|
|
82
|
+
toObject: { virtuals: true },
|
|
83
|
+
collection: 'orderDeliveries',
|
|
84
|
+
},
|
|
85
|
+
})
|
|
86
|
+
], OrderDelivery);
|
|
87
|
+
//# sourceMappingURL=order-delivery.model.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"order-delivery.model.js","sourceRoot":"/","sources":["libraries/mongo/models/order-delivery.model.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,oDAAyE;AACzE,4EAAqE;AACrE,+CAAsC;AACtC,+CAAsC;AACtC,8EAAoE;AACpE,4DAAmD;AAU5C,IAAM,aAAa,GAAnB,MAAM,aAAc,SAAQ,2BAAU;IAE5C,KAAK,CAAa;IAGlB,KAAK,CAAc;IAGnB,gBAAgB,CAAoB;IAGpC,mBAAmB,CAAQ;IAG3B,gBAAgB,CAAQ;IAGxB,kBAAkB,CAAQ;IAG1B,mBAAmB,CAAU;IAG7B,oBAAoB,CAAU;IAG9B,IAAI,CAAU;IAGd,WAAW,CAAY;IAGvB,KAAK,CAAU;CACf,CAAA;AAjCY,sCAAa;AAEzB;IADC,IAAA,gBAAI,EAAC,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,mBAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;;4CACpD;AAGlB;IADC,IAAA,gBAAI,EAAC,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,mBAAK,EAAE,CAAC;;4CACR;AAGnB;IADC,IAAA,gBAAI,EAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,wCAAe,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;;uDACjB;AAGpC;IADC,IAAA,gBAAI,GAAE;8BACe,IAAI;0DAAC;AAG3B;IADC,IAAA,gBAAI,GAAE;8BACY,IAAI;uDAAC;AAGxB;IADC,IAAA,gBAAI,EAAC,EAAE,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;8BACP,IAAI;yDAAC;AAG1B;IADC,IAAA,gBAAI,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;;0DACN;AAG7B;IADC,IAAA,gBAAI,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;;2DACL;AAG9B;IADC,IAAA,gBAAI,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;2CACT;AAGd;IADC,IAAA,gBAAI,EAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,uBAAO,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;;kDACtB;AAGvB;IADC,IAAA,gBAAI,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;4CACR;wBAhCH,aAAa;IARzB,IAAA,wBAAY,EAAC;QACb,aAAa,EAAE;YACd,UAAU,EAAE,IAAI;YAChB,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;YAC1B,QAAQ,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;YAC5B,UAAU,EAAE,iBAAiB;SAC7B;KACD,CAAC;GACW,aAAa,CAiCzB","sourcesContent":["import { modelOptions, mongoose, prop, Ref } from '@typegoose/typegoose';\nimport { TimeStamps } from '@typegoose/typegoose/lib/defaultClasses';\nimport { Order } from './order.model';\nimport { Rider } from './rider.model';\nimport { RiderAssignment } from './embedded/rider-assignment-model';\nimport { TripLeg } from './embedded/trip-leg.mode';\n\n@modelOptions({\n\tschemaOptions: {\n\t\ttimestamps: true,\n\t\ttoJSON: { virtuals: true },\n\t\ttoObject: { virtuals: true },\n\t\tcollection: 'orderDeliveries',\n\t},\n})\nexport class OrderDelivery extends TimeStamps {\n\t@prop({ ref: () => Order, required: true, index: true, unique: true })\n\torder: Ref<Order>;\n\n\t@prop({ ref: () => Rider })\n\trider?: Ref<Rider>;\n\n\t@prop({ type: () => [RiderAssignment], default: [] })\n\triderAssignments: RiderAssignment[];\n\n\t@prop()\n\testimatedPickupTime?: Date;\n\n\t@prop()\n\tactualPickupTime?: Date;\n\n\t@prop({ default: Date.now })\n\tsearchingStartTime?: Date;\n\n\t@prop({ type: Number, default: 0 })\n\ttotalSearchAttempts?: number;\n\n\t@prop({ type: Number, default: 0 })\n\tlastSearchRadiusInKm?: number;\n\n\t@prop({ type: String })\n\tnote?: string;\n\n\t@prop({ type: () => [TripLeg], default: [] })\n\ttripSummary: TripLeg[];\n\n\t@prop({ type: String })\n\timage?: string;\n}\n"]}
|
|
@@ -1,13 +1,12 @@
|
|
|
1
1
|
import { Ref } from '@typegoose/typegoose';
|
|
2
2
|
import { TimeStamps } from '@typegoose/typegoose/lib/defaultClasses';
|
|
3
|
-
import { FlagType, OrderType } from '../../../utilities/enum';
|
|
3
|
+
import { FlagType, LateOrderReason, OrderType, UrgentOrderReason } from '../../../utilities/enum';
|
|
4
4
|
import { OrderCancel } from './embedded/order-cancel.model';
|
|
5
5
|
import { Rider } from './rider.model';
|
|
6
6
|
import { DeliveryFeeInformation } from './embedded/order-delivery-information.model';
|
|
7
|
-
import {
|
|
7
|
+
import { OrderDelivery } from './order-delivery.model';
|
|
8
8
|
import { Flag } from './flag.model';
|
|
9
9
|
import { Review } from './review.model';
|
|
10
|
-
import { TripLeg } from './embedded/trip-leg.mode';
|
|
11
10
|
export declare class Order extends TimeStamps {
|
|
12
11
|
orderId: string;
|
|
13
12
|
orderType?: OrderType;
|
|
@@ -22,7 +21,9 @@ export declare class Order extends TimeStamps {
|
|
|
22
21
|
scheduledFor?: Date;
|
|
23
22
|
orderCancel?: OrderCancel;
|
|
24
23
|
isLateOrder?: boolean;
|
|
24
|
+
lateOrderReasons?: LateOrderReason[];
|
|
25
25
|
isUrgentOrder?: boolean;
|
|
26
|
+
urgentOrderReasons?: UrgentOrderReason[];
|
|
26
27
|
processedAt?: Date;
|
|
27
28
|
pinCode: number;
|
|
28
29
|
isOrderReviewed?: boolean;
|
|
@@ -34,12 +35,5 @@ export declare class Order extends TimeStamps {
|
|
|
34
35
|
flagTypes?: FlagType[];
|
|
35
36
|
flaggedAt?: Date;
|
|
36
37
|
flags: Ref<Flag>[];
|
|
37
|
-
|
|
38
|
-
estimatedPickupTime?: Date;
|
|
39
|
-
actualPickupTime?: Date;
|
|
40
|
-
searchingStartTime?: Date;
|
|
41
|
-
totalSearchAttempts?: number;
|
|
42
|
-
lastSearchRadiusInKm?: number;
|
|
43
|
-
tripSummary: TripLeg[];
|
|
44
|
-
image?: string;
|
|
38
|
+
orderDelivery: Ref<OrderDelivery>;
|
|
45
39
|
}
|
|
@@ -16,10 +16,9 @@ const enum_1 = require("../../../utilities/enum");
|
|
|
16
16
|
const order_cancel_model_1 = require("./embedded/order-cancel.model");
|
|
17
17
|
const rider_model_1 = require("./rider.model");
|
|
18
18
|
const order_delivery_information_model_1 = require("./embedded/order-delivery-information.model");
|
|
19
|
-
const
|
|
19
|
+
const order_delivery_model_1 = require("./order-delivery.model");
|
|
20
20
|
const flag_model_1 = require("./flag.model");
|
|
21
21
|
const review_model_1 = require("./review.model");
|
|
22
|
-
const trip_leg_mode_1 = require("./embedded/trip-leg.mode");
|
|
23
22
|
let Order = class Order extends defaultClasses_1.TimeStamps {
|
|
24
23
|
orderId;
|
|
25
24
|
orderType;
|
|
@@ -34,7 +33,9 @@ let Order = class Order extends defaultClasses_1.TimeStamps {
|
|
|
34
33
|
scheduledFor;
|
|
35
34
|
orderCancel;
|
|
36
35
|
isLateOrder;
|
|
36
|
+
lateOrderReasons;
|
|
37
37
|
isUrgentOrder;
|
|
38
|
+
urgentOrderReasons;
|
|
38
39
|
processedAt;
|
|
39
40
|
pinCode;
|
|
40
41
|
isOrderReviewed;
|
|
@@ -46,14 +47,7 @@ let Order = class Order extends defaultClasses_1.TimeStamps {
|
|
|
46
47
|
flagTypes;
|
|
47
48
|
flaggedAt;
|
|
48
49
|
flags;
|
|
49
|
-
|
|
50
|
-
estimatedPickupTime;
|
|
51
|
-
actualPickupTime;
|
|
52
|
-
searchingStartTime;
|
|
53
|
-
totalSearchAttempts;
|
|
54
|
-
lastSearchRadiusInKm;
|
|
55
|
-
tripSummary;
|
|
56
|
-
image;
|
|
50
|
+
orderDelivery;
|
|
57
51
|
};
|
|
58
52
|
exports.Order = Order;
|
|
59
53
|
__decorate([
|
|
@@ -108,10 +102,26 @@ __decorate([
|
|
|
108
102
|
(0, typegoose_1.prop)({ type: Boolean, default: false }),
|
|
109
103
|
__metadata("design:type", Boolean)
|
|
110
104
|
], Order.prototype, "isLateOrder", void 0);
|
|
105
|
+
__decorate([
|
|
106
|
+
(0, typegoose_1.prop)({
|
|
107
|
+
type: [String],
|
|
108
|
+
enum: enum_1.LateOrderReason,
|
|
109
|
+
default: [],
|
|
110
|
+
}),
|
|
111
|
+
__metadata("design:type", Array)
|
|
112
|
+
], Order.prototype, "lateOrderReasons", void 0);
|
|
111
113
|
__decorate([
|
|
112
114
|
(0, typegoose_1.prop)({ type: Boolean, default: false }),
|
|
113
115
|
__metadata("design:type", Boolean)
|
|
114
116
|
], Order.prototype, "isUrgentOrder", void 0);
|
|
117
|
+
__decorate([
|
|
118
|
+
(0, typegoose_1.prop)({
|
|
119
|
+
type: [String],
|
|
120
|
+
enum: enum_1.UrgentOrderReason,
|
|
121
|
+
default: [],
|
|
122
|
+
}),
|
|
123
|
+
__metadata("design:type", Array)
|
|
124
|
+
], Order.prototype, "urgentOrderReasons", void 0);
|
|
115
125
|
__decorate([
|
|
116
126
|
(0, typegoose_1.prop)({ type: Date, default: new Date() }),
|
|
117
127
|
__metadata("design:type", Date)
|
|
@@ -162,7 +172,7 @@ __decorate([
|
|
|
162
172
|
__metadata("design:type", Array)
|
|
163
173
|
], Order.prototype, "flagTypes", void 0);
|
|
164
174
|
__decorate([
|
|
165
|
-
(0, typegoose_1.prop)({ type: Date }),
|
|
175
|
+
(0, typegoose_1.prop)({ type: Date, default: new Date() }),
|
|
166
176
|
__metadata("design:type", Date)
|
|
167
177
|
], Order.prototype, "flaggedAt", void 0);
|
|
168
178
|
__decorate([
|
|
@@ -174,37 +184,14 @@ __decorate([
|
|
|
174
184
|
__metadata("design:type", Array)
|
|
175
185
|
], Order.prototype, "flags", void 0);
|
|
176
186
|
__decorate([
|
|
177
|
-
(0, typegoose_1.prop)({
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
(0, typegoose_1.prop)(),
|
|
186
|
-
__metadata("design:type", Date)
|
|
187
|
-
], Order.prototype, "actualPickupTime", void 0);
|
|
188
|
-
__decorate([
|
|
189
|
-
(0, typegoose_1.prop)({ default: Date.now }),
|
|
190
|
-
__metadata("design:type", Date)
|
|
191
|
-
], Order.prototype, "searchingStartTime", void 0);
|
|
192
|
-
__decorate([
|
|
193
|
-
(0, typegoose_1.prop)({ type: Number, default: 0 }),
|
|
194
|
-
__metadata("design:type", Number)
|
|
195
|
-
], Order.prototype, "totalSearchAttempts", void 0);
|
|
196
|
-
__decorate([
|
|
197
|
-
(0, typegoose_1.prop)({ type: Number, default: 0 }),
|
|
198
|
-
__metadata("design:type", Number)
|
|
199
|
-
], Order.prototype, "lastSearchRadiusInKm", void 0);
|
|
200
|
-
__decorate([
|
|
201
|
-
(0, typegoose_1.prop)({ type: () => [trip_leg_mode_1.TripLeg], default: [] }),
|
|
202
|
-
__metadata("design:type", Array)
|
|
203
|
-
], Order.prototype, "tripSummary", void 0);
|
|
204
|
-
__decorate([
|
|
205
|
-
(0, typegoose_1.prop)({ type: String }),
|
|
206
|
-
__metadata("design:type", String)
|
|
207
|
-
], Order.prototype, "image", void 0);
|
|
187
|
+
(0, typegoose_1.prop)({
|
|
188
|
+
ref: () => order_delivery_model_1.OrderDelivery,
|
|
189
|
+
foreignField: 'order',
|
|
190
|
+
localField: '_id',
|
|
191
|
+
justOne: true,
|
|
192
|
+
}),
|
|
193
|
+
__metadata("design:type", Object)
|
|
194
|
+
], Order.prototype, "orderDelivery", void 0);
|
|
208
195
|
exports.Order = Order = __decorate([
|
|
209
196
|
(0, typegoose_1.modelOptions)({
|
|
210
197
|
schemaOptions: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"order.model.js","sourceRoot":"/","sources":["libraries/mongo/models/order.model.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,oDAAgF;AAChF,4EAAqE;AACrE,
|
|
1
|
+
{"version":3,"file":"order.model.js","sourceRoot":"/","sources":["libraries/mongo/models/order.model.ts"],"names":[],"mappings":"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","sourcesContent":["import { prop, Ref, modelOptions, Severity, index } from '@typegoose/typegoose';\nimport { TimeStamps } from '@typegoose/typegoose/lib/defaultClasses';\nimport { FlagType, LateOrderReason, OrderType, UrgentOrderReason } from '../../../utilities/enum';\nimport { OrderCancel } from './embedded/order-cancel.model';\nimport { Rider } from './rider.model';\nimport { DeliveryFeeInformation } from './embedded/order-delivery-information.model';\nimport { OrderDelivery } from './order-delivery.model';\nimport { Flag } from './flag.model';\nimport { Review } from './review.model';\n\n@modelOptions({\n\tschemaOptions: {\n\t\tcollection: 'orders',\n\t\tdiscriminatorKey: 'orderType',\n\t\ttoJSON: { virtuals: true },\n\t\ttoObject: { virtuals: true },\n\t},\n\toptions: { allowMixed: Severity.ALLOW },\n})\n@index({ 'deliveryAddress.location': '2dsphere' })\n@index({ user: 1, status: 1, processedAt: -1 })\n@index({ shop: 1, status: 1, processedAt: -1 })\n@index({ parent: 1, status: 1, processedAt: -1 })\n@index({ orderType: 1, status: 1, processedAt: -1 })\n@index({ orderType: 1, status: 1, isEndorseLossApplied: 1, processedAt: -1 })\n@index({ itemType: 1, status: 1, isEndorseLossApplied: 1, processedAt: -1 })\n@index({ shop: 1, status: 1, isEndorseLossApplied: 1, processedAt: -1 })\n@index({ parent: 1, status: 1, isEndorseLossApplied: 1, processedAt: -1 })\n@index({ rider: 1, status: 1, isEndorseLossApplied: 1, processedAt: -1 })\nexport class Order extends TimeStamps {\n\t@prop({ required: true, type: String, unique: true })\n\tpublic orderId: string;\n\n\t@prop({ type: String, enum: OrderType, default: OrderType.REGULAR })\n\tpublic orderType?: OrderType;\n\n\t@prop({ ref: () => Rider, index: true })\n\tpublic rider?: Ref<Rider>;\n\n\t@prop({ type: () => DeliveryFeeInformation })\n\tpublic deliveryFeeInformation?: DeliveryFeeInformation;\n\n\t@prop({ type: Date })\n\tpublic estimatedDeliveredTime: Date;\n\n\t@prop({ type: Number })\n\tpublic estimatedDeliveredTimeInMinutes: number;\n\n\t@prop({ type: Date })\n\tpublic deliveredAt: Date;\n\n\t@prop({ type: Number })\n\tpublic deliveredTimeInMinutes: number;\n\n\t@prop({ type: String })\n\tpublic instruction?: string;\n\n\t@prop({ type: String })\n\tpublic note?: string;\n\n\t@prop({ type: Date })\n\tpublic scheduledFor?: Date;\n\n\t@prop({ type: () => OrderCancel })\n\tpublic orderCancel?: OrderCancel;\n\n\t@prop({ type: Boolean, default: false })\n\tpublic isLateOrder?: boolean;\n\n\t@prop({\n\t\ttype: [String],\n\t\tenum: LateOrderReason,\n\t\tdefault: [],\n\t})\n\tpublic lateOrderReasons?: LateOrderReason[];\n\n\t@prop({ type: Boolean, default: false })\n\tpublic isUrgentOrder?: boolean;\n\n\t@prop({\n\t\ttype: [String],\n\t\tenum: UrgentOrderReason,\n\t\tdefault: [],\n\t})\n\tpublic urgentOrderReasons?: UrgentOrderReason[];\n\n\t@prop({ type: Date, default: new Date() })\n\tpublic processedAt?: Date;\n\n\t@prop({\n\t\ttype: Number,\n\t\trequired: true,\n\t\tmin: 1000,\n\t\tmax: 9999,\n\t\tvalidate: {\n\t\t\tvalidator: (v: number) => Number.isInteger(v),\n\t\t\tmessage: 'Pin code must be an integer',\n\t\t},\n\t})\n\tpublic pinCode!: number;\n\n\t// Review feature\n\t@prop({ type: Boolean, default: false })\n\tpublic isOrderReviewed?: boolean;\n\n\t@prop({ type: Boolean, default: false })\n\tpublic isReviewNotificationSent?: boolean;\n\n\t@prop({ type: Boolean, default: false })\n\tpublic isLowRated?: boolean;\n\n\t@prop({ type: Boolean, default: false })\n\tpublic isResolved?: boolean;\n\n\t@prop({\n\t\tref: () => Review,\n\t\tforeignField: 'order',\n\t\tlocalField: '_id',\n\t})\n\tpublic reviews: Ref<Review>[];\n\n\t// Flag feature\n\t@prop({ type: Boolean, default: false })\n\tpublic isFlagged?: boolean;\n\n\t@prop({ type: [String], enum: FlagType, default: [] })\n\tpublic flagTypes?: FlagType[];\n\n\t@prop({ type: Date, default: new Date() })\n\tpublic flaggedAt?: Date;\n\n\t@prop({\n\t\tref: () => Flag,\n\t\tforeignField: 'order',\n\t\tlocalField: '_id',\n\t})\n\tpublic flags: Ref<Flag>[];\n\n\t@prop({\n\t\tref: () => OrderDelivery,\n\t\tforeignField: 'order',\n\t\tlocalField: '_id',\n\t\tjustOne: true,\n\t})\n\tpublic orderDelivery: Ref<OrderDelivery>;\n}\n"]}
|
|
@@ -25,7 +25,6 @@ let ServicePromotion = class ServicePromotion {
|
|
|
25
25
|
slotRanges;
|
|
26
26
|
spendLimit;
|
|
27
27
|
spendAmount;
|
|
28
|
-
maxDiscountPerOrder;
|
|
29
28
|
valueType;
|
|
30
29
|
value;
|
|
31
30
|
deactivationReason;
|
|
@@ -68,10 +67,6 @@ __decorate([
|
|
|
68
67
|
(0, typegoose_1.prop)({ type: Number, default: 0, min: 0 }),
|
|
69
68
|
__metadata("design:type", Number)
|
|
70
69
|
], ServicePromotion.prototype, "spendAmount", void 0);
|
|
71
|
-
__decorate([
|
|
72
|
-
(0, typegoose_1.prop)({ type: Number }),
|
|
73
|
-
__metadata("design:type", Number)
|
|
74
|
-
], ServicePromotion.prototype, "maxDiscountPerOrder", void 0);
|
|
75
70
|
__decorate([
|
|
76
71
|
(0, typegoose_1.prop)({ type: String, enum: enum_1.ValueType }),
|
|
77
72
|
__metadata("design:type", String)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service-promotion.model.js","sourceRoot":"/","sources":["libraries/mongo/models/service-promotion.model.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,oDAA+D;AAC/D,iDAAwC;AACxC,kDAAoF;AACpF,gFAAsE;AACtE,mEAAyD;AACzD,8DAAwD;AAGjD,IAAM,gBAAgB,GAAtB,MAAM,gBAAgB;IAElB,MAAM,CAAe;IAGrB,aAAa,CAAiB;IAO9B,MAAM,CAAmB;IAGzB,QAAQ,CAAoB;IAG5B,eAAe,CAAwB;IAGvC,UAAU,CAAkB;IAG5B,UAAU,CAAU;IAGpB,WAAW,CAAU;IAGrB,
|
|
1
|
+
{"version":3,"file":"service-promotion.model.js","sourceRoot":"/","sources":["libraries/mongo/models/service-promotion.model.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,oDAA+D;AAC/D,iDAAwC;AACxC,kDAAoF;AACpF,gFAAsE;AACtE,mEAAyD;AACzD,8DAAwD;AAGjD,IAAM,gBAAgB,GAAtB,MAAM,gBAAgB;IAElB,MAAM,CAAe;IAGrB,aAAa,CAAiB;IAO9B,MAAM,CAAmB;IAGzB,QAAQ,CAAoB;IAG5B,eAAe,CAAwB;IAGvC,UAAU,CAAkB;IAG5B,UAAU,CAAU;IAGpB,WAAW,CAAU;IAGrB,SAAS,CAAa;IAGtB,KAAK,CAAU;IAGf,kBAAkB,CAAU;IAG5B,WAAW,CAAU;CAC/B,CAAA;AAxCY,4CAAgB;AAElB;IADN,IAAA,gBAAI,EAAC,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,qBAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;gDAChB;AAGrB;IADN,IAAA,gBAAI,EAAC,EAAE,IAAI,EAAE,oBAAa,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;uDACT;AAO9B;IALN,IAAA,gBAAI,EAAC;QACF,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,sBAAe;QACrB,OAAO,EAAE,sBAAe,CAAC,MAAM;KAClC,CAAC;;gDAC8B;AAGzB;IADN,IAAA,gBAAI,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,4CAAiB,EAAE,CAAC;8BAChC,4CAAiB;kDAAA;AAG5B;IADN,IAAA,gBAAI,EAAC,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,sCAAc,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;yDACN;AAGvC;IADN,IAAA,gBAAI,EAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,8BAAY,CAAC,EAAE,CAAC;;oDACF;AAG5B;IADN,IAAA,gBAAI,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC;;oDACJ;AAGpB;IADN,IAAA,gBAAI,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC;;qDACf;AAGrB;IADN,IAAA,gBAAI,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,gBAAS,EAAE,CAAC;;mDACX;AAGtB;IADN,IAAA,gBAAI,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;+CACD;AAGf;IADN,IAAA,gBAAI,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;4DACY;AAG5B;IADN,IAAA,gBAAI,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC;;qDACvB;2BAvCnB,gBAAgB;IAD5B,IAAA,wBAAY,EAAC,EAAE,aAAa,EAAE,EAAE,UAAU,EAAE,mBAAmB,EAAE,EAAE,CAAC;GACxD,gBAAgB,CAwC5B","sourcesContent":["import { modelOptions, prop, Ref } from '@typegoose/typegoose';\nimport { Vendor } from './vendor.model';\nimport { MarketingStatus, PromotionType, ValueType } from '../../../utilities/enum';\nimport { PromotionDuration } from './shared/promotion-duration.model';\nimport { ServicePackage } from './service-package.model';\nimport { StartEndTime } from './shared/work-hour.model';\n\n@modelOptions({ schemaOptions: { collection: 'servicePromotions' } })\nexport class ServicePromotion {\n @prop({ ref: () => Vendor, required: true })\n public vendor!: Ref<Vendor>;\n\n @prop({ enum: PromotionType, required: true })\n public promotionType!: PromotionType;\n\n @prop({\n type: String,\n enum: MarketingStatus,\n default: MarketingStatus.ACTIVE,\n })\n public status?: MarketingStatus; \n\n @prop({ required: true, type: PromotionDuration })\n public duration!: PromotionDuration\n\n @prop({ ref: () => ServicePackage, required: true })\n public servicePackages?: Ref<ServicePackage>[]\n\n @prop({ type: () => [StartEndTime] })\n public slotRanges?: StartEndTime[];\n\n @prop({ type: Number, min: 0 })\n public spendLimit?: number;\n\n @prop({ type: Number, default: 0, min: 0 })\n public spendAmount?: number;\n\n @prop({ type: String, enum: ValueType })\n public valueType?: ValueType;\n\n @prop({ type: Number })\n public value?: number;\n\n @prop({ type: String })\n public deactivationReason?: string;\n\n @prop({ type: String, trim: true, maxlength: 500 })\n public description?: string;\n}\n"]}
|
|
@@ -31,7 +31,7 @@ export declare class User extends TimeStamps {
|
|
|
31
31
|
isPhoneVerified?: boolean;
|
|
32
32
|
onlineStatus?: OnlineStatus;
|
|
33
33
|
fcmTokens?: string[];
|
|
34
|
-
static updateWallet(this: ReturnModelType<typeof User>, userId: string, amount: number): Promise<(import("mongoose").Document<unknown, import("@typegoose/typegoose/lib/types").BeAnObject, User, import("@typegoose/typegoose/lib/types").BeAnyObject> & Omit<User & {
|
|
34
|
+
static updateWallet(this: ReturnModelType<typeof User>, userId: string, amount: number): Promise<(import("mongoose").Document<unknown, import("@typegoose/typegoose/lib/types").BeAnObject, User, import("@typegoose/typegoose/lib/types").BeAnyObject, {}> & Omit<User & {
|
|
35
35
|
_id: import("mongoose").Types.ObjectId;
|
|
36
36
|
} & {
|
|
37
37
|
__v: number;
|
|
File without changes
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"/","sources":["libraries/mongo/repositories/index.ts"],"names":[],"mappings":"","sourcesContent":[""]}
|
|
File without changes
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"optimized-product.repository.js","sourceRoot":"/","sources":["libraries/mongo/repositories/optimized-product.repository.ts"],"names":[],"mappings":"","sourcesContent":[""]}
|
|
File without changes
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"optimized-product.service.js","sourceRoot":"/","sources":["libraries/mongo/repositories/optimized-product.service.ts"],"names":[],"mappings":"","sourcesContent":[""]}
|
|
File without changes
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"product-benchmark.js","sourceRoot":"/","sources":["libraries/mongo/repositories/product-benchmark.ts"],"names":[],"mappings":"","sourcesContent":[""]}
|
|
File without changes
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"product-query-optimizer.js","sourceRoot":"/","sources":["libraries/mongo/repositories/product-query-optimizer.ts"],"names":[],"mappings":"","sourcesContent":[""]}
|
|
File without changes
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"product.repository.js","sourceRoot":"/","sources":["libraries/mongo/repositories/product.repository.ts"],"names":[],"mappings":"","sourcesContent":[""]}
|
|
File without changes
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"test-optimized-product.js","sourceRoot":"/","sources":["libraries/mongo/repositories/test-optimized-product.ts"],"names":[],"mappings":"","sourcesContent":[""]}
|
|
@@ -2,5 +2,5 @@ import { Document } from 'mongoose';
|
|
|
2
2
|
interface BaseDoc extends Document {
|
|
3
3
|
[field: string]: any;
|
|
4
4
|
}
|
|
5
|
-
export declare function handlePreSaveForUniqueId<T extends BaseDoc>(this: T, Model: any, field: string
|
|
5
|
+
export declare function handlePreSaveForUniqueId<T extends BaseDoc>(this: T, Model: any, field: string): Promise<void>;
|
|
6
6
|
export {};
|
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.handlePreSaveForUniqueId = handlePreSaveForUniqueId;
|
|
4
4
|
const nanoid_1 = require("nanoid");
|
|
5
|
-
|
|
5
|
+
const nanoid = (0, nanoid_1.customAlphabet)('0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ', 6);
|
|
6
|
+
async function handlePreSaveForUniqueId(Model, field) {
|
|
6
7
|
if (this[field])
|
|
7
8
|
return;
|
|
8
|
-
const nanoid = (0, nanoid_1.customAlphabet)('0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ', length);
|
|
9
9
|
let uniqueId = null;
|
|
10
10
|
let exists = true;
|
|
11
11
|
while (exists) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"uniqueIdHooks.js","sourceRoot":"/","sources":["libraries/mongo/utilities/uniqueIdHooks.ts"],"names":[],"mappings":";;AAiBA,
|
|
1
|
+
{"version":3,"file":"uniqueIdHooks.js","sourceRoot":"/","sources":["libraries/mongo/utilities/uniqueIdHooks.ts"],"names":[],"mappings":";;AAiBA,4DAmBC;AApCD,mCAAwC;AAIxC,MAAM,MAAM,GAAG,IAAA,uBAAc,EAAC,gEAAgE,EAAE,CAAC,CAAC,CAAC;AAa5F,KAAK,UAAU,wBAAwB,CAE7C,KAAU,EACV,KAAa;IAGb,IAAI,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO;IAExB,IAAI,QAAQ,GAAkB,IAAI,CAAC;IACnC,IAAI,MAAM,GAAG,IAAI,CAAC;IAGlB,OAAO,MAAM,EAAE,CAAC;QACf,QAAQ,GAAG,MAAM,EAAE,CAAC;QACpB,MAAM,GAAG,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAoB,CAAC,CAAC,CAAC;IAC1E,CAAC;IAGD,IAAI,CAAC,GAAG,CAAC,KAAe,EAAE,QAAQ,CAAC,CAAC;AACrC,CAAC","sourcesContent":["import { customAlphabet } from 'nanoid';\nimport { Document, FilterQuery } from 'mongoose';\n\n// Nanoid generator: 6-character alphanumeric\nconst nanoid = customAlphabet('0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ', 6);\n\ninterface BaseDoc extends Document {\n\t[field: string]: any; // allow dynamic field access\n}\n\n/**\n * Pre-save hook handler to ensure a unique ID for a given field\n *\n * @param this Current document being saved\n * @param Model The Mongoose model\n * @param field The field that should have a unique ID\n */\nexport async function handlePreSaveForUniqueId<T extends BaseDoc>(\n\tthis: T,\n\tModel: any,\n\tfield: string\n): Promise<void> {\n\t// Skip if already has a value\n\tif (this[field]) return;\n\n\tlet uniqueId: string | null = null;\n\tlet exists = true;\n\n\t// Keep generating until unique\n\twhile (exists) {\n\t\tuniqueId = nanoid();\n\t\texists = !!(await Model.exists({ [field]: uniqueId } as FilterQuery<T>));\n\t}\n\n\t// Assign the unique ID to the field\n\tthis.set(field as string, uniqueId);\n}\n"]}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { BaseEvent } from '../event/BaseEvent';
|
|
2
2
|
export type SocketEventParams<TData = any> = {
|
|
3
|
-
|
|
4
|
-
|
|
3
|
+
eventType: string;
|
|
4
|
+
userIds: string[];
|
|
5
5
|
data: TData;
|
|
6
6
|
};
|
|
7
7
|
export declare class SocketEmitEvent<TPayload = any> extends BaseEvent<SocketEventParams<TPayload>> {
|
|
8
|
-
constructor(
|
|
8
|
+
constructor(instanceId: string, parameters: SocketEventParams<TPayload>);
|
|
9
9
|
}
|
|
@@ -13,17 +13,17 @@ exports.SocketEmitEvent = void 0;
|
|
|
13
13
|
const BaseEvent_1 = require("../event/BaseEvent");
|
|
14
14
|
const metadata_1 = require("../event/decorators/metadata");
|
|
15
15
|
let SocketEmitEvent = class SocketEmitEvent extends BaseEvent_1.BaseEvent {
|
|
16
|
-
constructor(
|
|
17
|
-
super(
|
|
16
|
+
constructor(instanceId, parameters) {
|
|
17
|
+
super(`socket.emit.${instanceId}`, parameters);
|
|
18
18
|
}
|
|
19
19
|
};
|
|
20
20
|
exports.SocketEmitEvent = SocketEmitEvent;
|
|
21
21
|
exports.SocketEmitEvent = SocketEmitEvent = __decorate([
|
|
22
22
|
(0, metadata_1.EventMetadata)('socket.emit', [
|
|
23
|
-
{ name: '
|
|
23
|
+
{ name: 'eventType', type: 'string' },
|
|
24
|
+
{ name: 'userIds', type: 'array' },
|
|
24
25
|
{ name: 'data', type: 'object' },
|
|
25
|
-
{ name: 'socketEmitType', type: 'string' },
|
|
26
26
|
]),
|
|
27
|
-
__metadata("design:paramtypes", [String,
|
|
27
|
+
__metadata("design:paramtypes", [String, Object])
|
|
28
28
|
], SocketEmitEvent);
|
|
29
29
|
//# sourceMappingURL=SocketEmitEvent.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SocketEmitEvent.js","sourceRoot":"/","sources":["libraries/socket/SocketEmitEvent.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,kDAA+C;AAC/C,2DAA6D;AAatD,IAAM,eAAe,GAArB,MAAM,eAAgC,SAAQ,qBAAsC;IAC1F,YAAY,
|
|
1
|
+
{"version":3,"file":"SocketEmitEvent.js","sourceRoot":"/","sources":["libraries/socket/SocketEmitEvent.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,kDAA+C;AAC/C,2DAA6D;AAatD,IAAM,eAAe,GAArB,MAAM,eAAgC,SAAQ,qBAAsC;IAC1F,YAAY,UAAkB,EAAE,UAAuC;QACtE,KAAK,CAAC,eAAe,UAAU,EAAE,EAAE,UAAU,CAAC,CAAC;IAChD,CAAC;CACD,CAAA;AAJY,0CAAe;0BAAf,eAAe;IAL3B,IAAA,wBAAa,EAAC,aAAa,EAAE;QAC7B,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE;QACrC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE;QAClC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE;KAChC,CAAC;;GACW,eAAe,CAI3B","sourcesContent":["import { BaseEvent } from '../event/BaseEvent';\nimport { EventMetadata } from '../event/decorators/metadata';\n\nexport type SocketEventParams<TData = any> = {\n\teventType: string;\n\tuserIds: string[];\n\tdata: TData;\n};\n\n@EventMetadata('socket.emit', [\n\t{ name: 'eventType', type: 'string' },\n\t{ name: 'userIds', type: 'array' },\n\t{ name: 'data', type: 'object' },\n])\nexport class SocketEmitEvent<TPayload = any> extends BaseEvent<SocketEventParams<TPayload>> {\n\tconstructor(instanceId: string, parameters: SocketEventParams<TPayload>) {\n\t\tsuper(`socket.emit.${instanceId}`, parameters);\n\t}\n}\n"]}
|
|
@@ -15,6 +15,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
__exportStar(require("./SocketEmitEvent"), exports);
|
|
18
|
-
__exportStar(require("./socket
|
|
19
|
-
__exportStar(require("./socket.types"), exports);
|
|
18
|
+
__exportStar(require("./socket-publisher"), exports);
|
|
20
19
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"/","sources":["libraries/socket/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oDAAkC;AAClC,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"/","sources":["libraries/socket/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oDAAkC;AAClC,qDAAmC","sourcesContent":["export * from './SocketEmitEvent';\nexport * from './socket-publisher';\n"]}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { RedisService } from "../redis";
|
|
2
|
+
export interface InstanceRecipients {
|
|
3
|
+
instanceId: string;
|
|
4
|
+
usersId: string[];
|
|
5
|
+
}
|
|
6
|
+
export declare function getInstanceRecipientsMap(redis: RedisService, userIds: string[]): Promise<InstanceRecipients[]>;
|
|
7
|
+
export declare function publishToRecipients({ recipientIds, eventType, data, }: {
|
|
8
|
+
recipientIds: string[];
|
|
9
|
+
eventType: string;
|
|
10
|
+
data: any;
|
|
11
|
+
}): Promise<void>;
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getInstanceRecipientsMap = getInstanceRecipientsMap;
|
|
4
|
+
exports.publishToRecipients = publishToRecipients;
|
|
5
|
+
const __1 = require("../..");
|
|
6
|
+
const event_1 = require("../event");
|
|
7
|
+
const SocketEmitEvent_1 = require("./SocketEmitEvent");
|
|
8
|
+
async function getInstanceRecipientsMap(redis, userIds) {
|
|
9
|
+
const instanceMap = {};
|
|
10
|
+
for (const userId of userIds) {
|
|
11
|
+
const instanceIds = await redis.redisClient.smembers(`user:${userId}:instances`);
|
|
12
|
+
for (const instanceId of instanceIds) {
|
|
13
|
+
if (!instanceMap[instanceId]) {
|
|
14
|
+
instanceMap[instanceId] = [];
|
|
15
|
+
}
|
|
16
|
+
instanceMap[instanceId].push(userId);
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
return Object.entries(instanceMap).map(([instanceId, usersId]) => ({ instanceId, usersId }));
|
|
20
|
+
}
|
|
21
|
+
async function publishToRecipients({ recipientIds, eventType, data, }) {
|
|
22
|
+
if (!recipientIds.length)
|
|
23
|
+
return;
|
|
24
|
+
const redisService = (0, __1.getLibraries)().getRedisService();
|
|
25
|
+
const instanceRecipientsArr = await getInstanceRecipientsMap(redisService, recipientIds);
|
|
26
|
+
const timestamp = new Date().toISOString();
|
|
27
|
+
await Promise.all(instanceRecipientsArr.map(({ instanceId, usersId }) => {
|
|
28
|
+
const event = new SocketEmitEvent_1.SocketEmitEvent(instanceId, {
|
|
29
|
+
eventType,
|
|
30
|
+
userIds: usersId,
|
|
31
|
+
data: { ...data, timestamp },
|
|
32
|
+
});
|
|
33
|
+
return (0, event_1.publishEvent)(event);
|
|
34
|
+
}));
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=socket-publisher.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"socket-publisher.js","sourceRoot":"/","sources":["libraries/socket/socket-publisher.ts"],"names":[],"mappings":";;AAWA,4DAeC;AAED,kDAyBC;AArDD,6BAAqC;AACrC,oCAAwC;AACxC,uDAAoD;AAS7C,KAAK,UAAU,wBAAwB,CAC7C,KAAmB,EACnB,OAAiB;IAEjB,MAAM,WAAW,GAA6B,EAAE,CAAC;IACjD,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC9B,MAAM,WAAW,GAAG,MAAM,KAAK,CAAC,WAAW,CAAC,QAAQ,CAAC,QAAQ,MAAM,YAAY,CAAC,CAAC;QACjF,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;YACtC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC9B,WAAW,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC;YAC9B,CAAC;YACD,WAAW,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACtC,CAAC;IACF,CAAC;IACD,OAAO,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;AAC9F,CAAC;AAEM,KAAK,UAAU,mBAAmB,CAAC,EACzC,YAAY,EACZ,SAAS,EACT,IAAI,GAKJ;IACA,IAAI,CAAC,YAAY,CAAC,MAAM;QAAE,OAAO;IAEjC,MAAM,YAAY,GAAG,IAAA,gBAAY,GAAE,CAAC,eAAe,EAAE,CAAC;IACtD,MAAM,qBAAqB,GAAG,MAAM,wBAAwB,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;IACzF,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAE3C,MAAM,OAAO,CAAC,GAAG,CAChB,qBAAqB,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE,EAAE,EAAE;QACrD,MAAM,KAAK,GAAG,IAAI,iCAAe,CAAC,UAAU,EAAE;YAC7C,SAAS;YACT,OAAO,EAAE,OAAO;YAChB,IAAI,EAAE,EAAE,GAAG,IAAI,EAAE,SAAS,EAAE;SAC5B,CAAC,CAAC;QACH,OAAO,IAAA,oBAAY,EAAC,KAAK,CAAC,CAAC;IAC5B,CAAC,CAAC,CACF,CAAC;AACH,CAAC","sourcesContent":["import { getLibraries } from \"../..\";\nimport { publishEvent } from \"../event\";\nimport { SocketEmitEvent } from \"./SocketEmitEvent\";\nimport { RedisService } from \"../redis\";\n\nexport interface InstanceRecipients {\n\tinstanceId: string;\n\tusersId: string[];\n}\n\n \nexport async function getInstanceRecipientsMap(\n\tredis: RedisService,\n\tuserIds: string[]\n): Promise<InstanceRecipients[]> {\n\tconst instanceMap: Record<string, string[]> = {};\n\tfor (const userId of userIds) {\n\t\tconst instanceIds = await redis.redisClient.smembers(`user:${userId}:instances`);\n\t\tfor (const instanceId of instanceIds) {\n\t\t\tif (!instanceMap[instanceId]) {\n\t\t\t\tinstanceMap[instanceId] = [];\n\t\t\t}\n\t\t\tinstanceMap[instanceId].push(userId);\n\t\t}\n\t}\n\treturn Object.entries(instanceMap).map(([instanceId, usersId]) => ({ instanceId, usersId }));\n}\n\nexport async function publishToRecipients({\n\trecipientIds,\n\teventType,\n\tdata,\n}: {\n\trecipientIds: string[];\n\teventType: string;\n\tdata: any;\n}) {\n\tif (!recipientIds.length) return;\n\n\tconst redisService = getLibraries().getRedisService();\n\tconst instanceRecipientsArr = await getInstanceRecipientsMap(redisService, recipientIds);\n\tconst timestamp = new Date().toISOString();\n\n\tawait Promise.all(\n\t\tinstanceRecipientsArr.map(({ instanceId, usersId }) => {\n\t\t\tconst event = new SocketEmitEvent(instanceId, {\n\t\t\t\teventType,\n\t\t\t\tuserIds: usersId,\n\t\t\t\tdata: { ...data, timestamp },\n\t\t\t});\n\t\t\treturn publishEvent(event);\n\t\t})\n\t);\n}\n"]}
|
package/dist/types/README.md
CHANGED
package/dist/types/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lyxa.ai/types",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.381-alpha.0",
|
|
4
4
|
"description": "Lyxa type definitions and validation schemas for both frontend and backend",
|
|
5
5
|
"author": "elie <42282499+Internalizable@users.noreply.github.com>",
|
|
6
6
|
"license": "MIT",
|