@lyxa.ai/core 1.0.73 → 1.0.74

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.
@@ -0,0 +1,9 @@
1
+ import { TimeStamps } from '@typegoose/typegoose/lib/defaultClasses';
2
+ import { ItemType, SectionType, Status } from '../../../utilities/enum';
3
+ export declare class AppScreenSetting extends TimeStamps {
4
+ itemType: ItemType;
5
+ section: SectionType;
6
+ alias: string;
7
+ status?: Status;
8
+ sortingOrder?: number;
9
+ }
@@ -0,0 +1,72 @@
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.AppScreenSetting = void 0;
13
+ const typegoose_1 = require("@typegoose/typegoose");
14
+ const defaultClasses_1 = require("@typegoose/typegoose/lib/defaultClasses");
15
+ const enum_1 = require("../../../utilities/enum");
16
+ const _1 = require(".");
17
+ let AppScreenSetting = class AppScreenSetting extends defaultClasses_1.TimeStamps {
18
+ itemType;
19
+ section;
20
+ alias;
21
+ status;
22
+ sortingOrder;
23
+ };
24
+ exports.AppScreenSetting = AppScreenSetting;
25
+ __decorate([
26
+ (0, typegoose_1.prop)({ required: true, type: String, enum: enum_1.ItemType }),
27
+ __metadata("design:type", String)
28
+ ], AppScreenSetting.prototype, "itemType", void 0);
29
+ __decorate([
30
+ (0, typegoose_1.prop)({ required: true, type: String, enum: enum_1.SectionType }),
31
+ __metadata("design:type", String)
32
+ ], AppScreenSetting.prototype, "section", void 0);
33
+ __decorate([
34
+ (0, typegoose_1.prop)({ required: true, type: String }),
35
+ __metadata("design:type", String)
36
+ ], AppScreenSetting.prototype, "alias", void 0);
37
+ __decorate([
38
+ (0, typegoose_1.prop)({ type: String, enum: enum_1.Status, default: enum_1.Status.ACTIVE }),
39
+ __metadata("design:type", String)
40
+ ], AppScreenSetting.prototype, "status", void 0);
41
+ __decorate([
42
+ (0, typegoose_1.prop)({ type: Number }),
43
+ __metadata("design:type", Number)
44
+ ], AppScreenSetting.prototype, "sortingOrder", void 0);
45
+ exports.AppScreenSetting = AppScreenSetting = __decorate([
46
+ (0, typegoose_1.modelOptions)({ schemaOptions: { collection: 'appScreenSettings' } }),
47
+ (0, typegoose_1.pre)('save', async function (next) {
48
+ if (this.isNew || typeof this.sortingOrder === 'undefined') {
49
+ try {
50
+ const maxSortingOrder = await _1.AppScreenSettingModel.aggregate([
51
+ {
52
+ $match: {
53
+ deletedAt: null,
54
+ },
55
+ },
56
+ {
57
+ $group: {
58
+ _id: null,
59
+ maxSortingOrder: { $max: '$sortingOrder' },
60
+ },
61
+ },
62
+ ]).exec();
63
+ this.sortingOrder = (maxSortingOrder[0]?.maxSortingOrder ?? -1) + 1;
64
+ }
65
+ catch (error) {
66
+ return next(error);
67
+ }
68
+ }
69
+ next();
70
+ })
71
+ ], AppScreenSetting);
72
+ //# sourceMappingURL=app-screen-setting.model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app-screen-setting.model.js","sourceRoot":"/","sources":["libraries/mongo/models/app-screen-setting.model.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,oDAA+D;AAC/D,4EAAqE;AACrE,kDAAwE;AACxE,wBAA0C;AA8BnC,IAAM,gBAAgB,GAAtB,MAAM,gBAAiB,SAAQ,2BAAU;IAExC,QAAQ,CAAY;IAGpB,OAAO,CAAe;IAGtB,KAAK,CAAU;IAGf,MAAM,CAAU;IAGhB,YAAY,CAAU;CAC7B,CAAA;AAfY,4CAAgB;AAErB;IADN,IAAA,gBAAI,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,eAAQ,EAAE,CAAC;;kDAC5B;AAGpB;IADN,IAAA,gBAAI,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,kBAAW,EAAE,CAAC;;iDAC7B;AAGtB;IADN,IAAA,gBAAI,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;+CACjB;AAGf;IADN,IAAA,gBAAI,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,aAAM,EAAE,OAAO,EAAE,aAAM,CAAC,MAAM,EAAE,CAAC;;gDACtC;AAGhB;IADN,IAAA,gBAAI,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;sDACM;2BAdjB,gBAAgB;IA5B5B,IAAA,wBAAY,EAAC,EAAE,aAAa,EAAE,EAAE,UAAU,EAAE,mBAAmB,EAAE,EAAE,CAAC;IACpE,IAAA,eAAG,EAAmB,MAAM,EAAE,KAAK,WAAW,IAAI;QAElD,IAAI,IAAI,CAAC,KAAK,IAAI,OAAO,IAAI,CAAC,YAAY,KAAK,WAAW,EAAE,CAAC;YAC5D,IAAI,CAAC;gBAEJ,MAAM,eAAe,GAAG,MAAM,wBAAqB,CAAC,SAAS,CAA8B;oBAC1F;wBACC,MAAM,EAAE;4BACP,SAAS,EAAE,IAAI;yBACf;qBACD;oBACD;wBACC,MAAM,EAAE;4BACP,GAAG,EAAE,IAAI;4BACT,eAAe,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE;yBAC1C;qBACD;iBACD,CAAC,CAAC,IAAI,EAAE,CAAC;gBAGV,IAAI,CAAC,YAAY,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,eAAe,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;YACrE,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAChB,OAAO,IAAI,CAAC,KAAc,CAAC,CAAC;YAC7B,CAAC;QACF,CAAC;QACD,IAAI,EAAE,CAAC;IACR,CAAC,CAAC;GACW,gBAAgB,CAe5B","sourcesContent":["import { modelOptions, pre, prop } from '@typegoose/typegoose';\nimport { TimeStamps } from '@typegoose/typegoose/lib/defaultClasses';\nimport { ItemType, SectionType, Status } from '../../../utilities/enum';\nimport { AppScreenSettingModel } from '.';\n\n@modelOptions({ schemaOptions: { collection: 'appScreenSettings' } })\n@pre<AppScreenSetting>('save', async function (next) {\n\t// Only set sortingOrder if it's a new document or sortingOrder is not set\n\tif (this.isNew || typeof this.sortingOrder === 'undefined') {\n\t\ttry {\n\t\t\t// Find the maximum sortingOrder that aren't deleted\n\t\t\tconst maxSortingOrder = await AppScreenSettingModel.aggregate<{ maxSortingOrder: number }>([\n\t\t\t\t{\n\t\t\t\t\t$match: {\n\t\t\t\t\t\tdeletedAt: null,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t$group: {\n\t\t\t\t\t\t_id: null,\n\t\t\t\t\t\tmaxSortingOrder: { $max: '$sortingOrder' },\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t]).exec();\n\n\t\t\t// Set the new sortingOrder to max + 1 (or 0 if no items found)\n\t\t\tthis.sortingOrder = (maxSortingOrder[0]?.maxSortingOrder ?? -1) + 1;\n\t\t} catch (error) {\n\t\t\treturn next(error as Error);\n\t\t}\n\t}\n\tnext();\n})\nexport class AppScreenSetting extends TimeStamps {\n\t@prop({ required: true, type: String, enum: ItemType })\n\tpublic itemType!: ItemType;\n\n\t@prop({ required: true, type: String, enum: SectionType })\n\tpublic section!: SectionType;\n\n\t@prop({ required: true, type: String })\n\tpublic alias!: string;\n\n\t@prop({ type: String, enum: Status, default: Status.ACTIVE })\n\tpublic status?: Status;\n\n\t@prop({ type: Number })\n\tpublic sortingOrder?: number;\n}\n"]}
@@ -0,0 +1,17 @@
1
+ import { Ref } from '@typegoose/typegoose';
2
+ import { TimeStamps } from '@typegoose/typegoose/lib/defaultClasses';
3
+ import { Order } from './order.model';
4
+ import { PaymentMethod, PaymentStatus } from '../../../utilities/enum';
5
+ import { PaymentInformation } from './embedded/payment-infromation.model';
6
+ import { PaymentAttempt } from './embedded/payment-attempt.model';
7
+ export declare class OrderPayment extends TimeStamps {
8
+ order: Ref<Order>;
9
+ paymentMethod?: PaymentMethod;
10
+ paymentInformation?: PaymentInformation;
11
+ status?: PaymentStatus;
12
+ receiptUrl?: string;
13
+ attempts?: PaymentAttempt[];
14
+ currency: string;
15
+ amount: number;
16
+ secondaryAmount?: number;
17
+ }
@@ -0,0 +1,84 @@
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.OrderPayment = 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 enum_1 = require("../../../utilities/enum");
17
+ const payment_infromation_model_1 = require("./embedded/payment-infromation.model");
18
+ const payment_attempt_model_1 = require("./embedded/payment-attempt.model");
19
+ let OrderPayment = class OrderPayment extends defaultClasses_1.TimeStamps {
20
+ order;
21
+ paymentMethod;
22
+ paymentInformation;
23
+ status;
24
+ receiptUrl;
25
+ attempts;
26
+ currency;
27
+ amount;
28
+ secondaryAmount;
29
+ };
30
+ exports.OrderPayment = OrderPayment;
31
+ __decorate([
32
+ (0, typegoose_1.prop)({ required: true, ref: () => order_model_1.Order, index: true, unique: true }),
33
+ __metadata("design:type", Object)
34
+ ], OrderPayment.prototype, "order", void 0);
35
+ __decorate([
36
+ (0, typegoose_1.prop)({ type: String, enum: enum_1.PaymentMethod, default: enum_1.PaymentMethod.CASH }),
37
+ __metadata("design:type", String)
38
+ ], OrderPayment.prototype, "paymentMethod", void 0);
39
+ __decorate([
40
+ (0, typegoose_1.prop)({ type: () => payment_infromation_model_1.PaymentInformation }),
41
+ __metadata("design:type", payment_infromation_model_1.PaymentInformation)
42
+ ], OrderPayment.prototype, "paymentInformation", void 0);
43
+ __decorate([
44
+ (0, typegoose_1.prop)({ type: String, enum: enum_1.PaymentStatus, default: enum_1.PaymentStatus.PENDING }),
45
+ __metadata("design:type", String)
46
+ ], OrderPayment.prototype, "status", void 0);
47
+ __decorate([
48
+ (0, typegoose_1.prop)(),
49
+ __metadata("design:type", String)
50
+ ], OrderPayment.prototype, "receiptUrl", void 0);
51
+ __decorate([
52
+ (0, typegoose_1.prop)({ type: [payment_attempt_model_1.PaymentAttempt], default: [] }),
53
+ __metadata("design:type", Array)
54
+ ], OrderPayment.prototype, "attempts", void 0);
55
+ __decorate([
56
+ (0, typegoose_1.prop)({ type: String }),
57
+ __metadata("design:type", String)
58
+ ], OrderPayment.prototype, "currency", void 0);
59
+ __decorate([
60
+ (0, typegoose_1.prop)({ required: true, type: Number }),
61
+ __metadata("design:type", Number)
62
+ ], OrderPayment.prototype, "amount", void 0);
63
+ __decorate([
64
+ (0, typegoose_1.prop)({ type: Number }),
65
+ __metadata("design:type", Number)
66
+ ], OrderPayment.prototype, "secondaryAmount", void 0);
67
+ exports.OrderPayment = OrderPayment = __decorate([
68
+ (0, typegoose_1.modelOptions)({
69
+ schemaOptions: {
70
+ timestamps: true,
71
+ collection: 'orderPayments',
72
+ toJSON: { virtuals: true },
73
+ toObject: { virtuals: true },
74
+ },
75
+ options: {
76
+ allowMixed: typegoose_1.Severity.ALLOW,
77
+ },
78
+ }),
79
+ (0, typegoose_1.index)({ order: 1 }),
80
+ (0, typegoose_1.index)({ status: 1 }),
81
+ (0, typegoose_1.index)({ paymentMethod: 1 }),
82
+ (0, typegoose_1.index)({ createdAt: -1 })
83
+ ], OrderPayment);
84
+ //# sourceMappingURL=order-payment.model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"order-payment.model.js","sourceRoot":"/","sources":["libraries/mongo/models/order-payment.model.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,oDAAgF;AAChF,4EAAqE;AACrE,+CAAsC;AACtC,kDAAuE;AACvE,oFAA0E;AAC1E,4EAAkE;AAiB3D,IAAM,YAAY,GAAlB,MAAM,YAAa,SAAQ,2BAAU;IAE3C,KAAK,CAAa;IAGlB,aAAa,CAAiB;IAG9B,kBAAkB,CAAsB;IAGxC,MAAM,CAAiB;IAGvB,UAAU,CAAU;IAGpB,QAAQ,CAAoB;IAG5B,QAAQ,CAAS;IAGjB,MAAM,CAAS;IAGf,eAAe,CAAU;CACzB,CAAA;AA3BY,oCAAY;AAExB;IADC,IAAA,gBAAI,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,mBAAK,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;;2CACpD;AAGlB;IADC,IAAA,gBAAI,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,oBAAa,EAAE,OAAO,EAAE,oBAAa,CAAC,IAAI,EAAE,CAAC;;mDAC3C;AAG9B;IADC,IAAA,gBAAI,EAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,8CAAkB,EAAE,CAAC;8BACpB,8CAAkB;wDAAC;AAGxC;IADC,IAAA,gBAAI,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,oBAAa,EAAE,OAAO,EAAE,oBAAa,CAAC,OAAO,EAAE,CAAC;;4CACrD;AAGvB;IADC,IAAA,gBAAI,GAAE;;gDACa;AAGpB;IADC,IAAA,gBAAI,EAAC,EAAE,IAAI,EAAE,CAAC,sCAAc,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;;8CAClB;AAG5B;IADC,IAAA,gBAAI,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;8CACN;AAGjB;IADC,IAAA,gBAAI,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;4CACxB;AAGf;IADC,IAAA,gBAAI,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;qDACE;uBA1Bb,YAAY;IAfxB,IAAA,wBAAY,EAAC;QACb,aAAa,EAAE;YACd,UAAU,EAAE,IAAI;YAChB,UAAU,EAAE,eAAe;YAC3B,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;YAC1B,QAAQ,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;SAC5B;QACD,OAAO,EAAE;YACR,UAAU,EAAE,oBAAQ,CAAC,KAAK;SAC1B;KACD,CAAC;IACD,IAAA,iBAAK,EAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IACnB,IAAA,iBAAK,EAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;IACpB,IAAA,iBAAK,EAAC,EAAE,aAAa,EAAE,CAAC,EAAE,CAAC;IAC3B,IAAA,iBAAK,EAAC,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE,CAAC;GACZ,YAAY,CA2BxB","sourcesContent":["import { index, modelOptions, prop, Ref, Severity } from '@typegoose/typegoose';\nimport { TimeStamps } from '@typegoose/typegoose/lib/defaultClasses';\nimport { Order } from './order.model';\nimport { PaymentMethod, PaymentStatus } from '../../../utilities/enum';\nimport { PaymentInformation } from './embedded/payment-infromation.model';\nimport { PaymentAttempt } from './embedded/payment-attempt.model';\n\n@modelOptions({\n\tschemaOptions: {\n\t\ttimestamps: true,\n\t\tcollection: 'orderPayments',\n\t\ttoJSON: { virtuals: true },\n\t\ttoObject: { virtuals: true },\n\t},\n\toptions: {\n\t\tallowMixed: Severity.ALLOW,\n\t},\n})\n@index({ order: 1 })\n@index({ status: 1 })\n@index({ paymentMethod: 1 })\n@index({ createdAt: -1 })\nexport class OrderPayment extends TimeStamps {\n\t@prop({ required: true, ref: () => Order, index: true, unique: true })\n\torder: Ref<Order>;\n\n\t@prop({ type: String, enum: PaymentMethod, default: PaymentMethod.CASH })\n\tpaymentMethod?: PaymentMethod;\n\n\t@prop({ type: () => PaymentInformation })\n\tpaymentInformation?: PaymentInformation;\n\n\t@prop({ type: String, enum: PaymentStatus, default: PaymentStatus.PENDING })\n\tstatus?: PaymentStatus;\n\n\t@prop()\n\treceiptUrl?: string;\n\n\t@prop({ type: [PaymentAttempt], default: [] })\n\tattempts?: PaymentAttempt[];\n\n\t@prop({ type: String })\n\tcurrency: string;\n\n\t@prop({ required: true, type: Number })\n\tamount: number;\n\n\t@prop({ type: Number })\n\tsecondaryAmount?: number;\n}\n"]}
@@ -8,12 +8,17 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
8
8
  var __metadata = (this && this.__metadata) || function (k, v) {
9
9
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
10
  };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
11
14
  Object.defineProperty(exports, "__esModule", { value: true });
12
15
  exports.Payout = void 0;
13
16
  const typegoose_1 = require("@typegoose/typegoose");
14
17
  const defaultClasses_1 = require("@typegoose/typegoose/lib/defaultClasses");
15
18
  const enum_1 = require("../../../utilities/enum");
16
19
  const duration_model_1 = require("./shared/duration.model");
20
+ const dayjs_1 = __importDefault(require("dayjs"));
21
+ const _1 = require(".");
17
22
  let Payout = class Payout extends defaultClasses_1.TimeStamps {
18
23
  invoiceNumber;
19
24
  payoutType;
@@ -24,7 +29,7 @@ let Payout = class Payout extends defaultClasses_1.TimeStamps {
24
29
  };
25
30
  exports.Payout = Payout;
26
31
  __decorate([
27
- (0, typegoose_1.prop)({ required: true, type: String, index: true }),
32
+ (0, typegoose_1.prop)({ type: String, index: true, unique: true }),
28
33
  __metadata("design:type", String)
29
34
  ], Payout.prototype, "invoiceNumber", void 0);
30
35
  __decorate([
@@ -48,6 +53,31 @@ __decorate([
48
53
  __metadata("design:type", String)
49
54
  ], Payout.prototype, "revokedReason", void 0);
50
55
  exports.Payout = Payout = __decorate([
51
- (0, typegoose_1.modelOptions)({ schemaOptions: { collection: 'payouts', discriminatorKey: 'payoutType' } })
56
+ (0, typegoose_1.modelOptions)({ schemaOptions: { collection: 'payouts', discriminatorKey: 'payoutType' } }),
57
+ (0, typegoose_1.pre)('save', async function (next) {
58
+ if (this.invoiceNumber)
59
+ return next();
60
+ const now = (0, dayjs_1.default)();
61
+ const year = now.format('YY');
62
+ const month = now.format('MM');
63
+ const startOfYear = now.startOf('year').toDate();
64
+ const endOfYear = now.endOf('year').toDate();
65
+ const lastPayout = await _1.PayoutModel.findOne({
66
+ createdAt: { $gte: startOfYear, $lte: endOfYear },
67
+ invoiceNumber: { $regex: `^${month}${year}` },
68
+ })
69
+ .sort({ invoiceNumber: -1 })
70
+ .select('invoiceNumber')
71
+ .lean();
72
+ let sequence = 1;
73
+ if (lastPayout && lastPayout.invoiceNumber) {
74
+ const lastSeq = parseInt(lastPayout.invoiceNumber.slice(4), 10);
75
+ sequence = lastSeq + 1;
76
+ }
77
+ const invoiceNumber = `${month}${year}${sequence.toString().padStart(4, '0')}`;
78
+ this.invoiceNumber = invoiceNumber;
79
+ next();
80
+ }),
81
+ (0, typegoose_1.Index)({ createdAt: 1, invoiceNumber: -1, deletedAt: 1 })
52
82
  ], Payout);
53
83
  //# sourceMappingURL=payout.model.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"payout.model.js","sourceRoot":"/","sources":["libraries/mongo/models/payout.model.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,oDAA0D;AAC1D,4EAAqE;AACrE,kDAAmE;AACnE,4DAAmD;AAG5C,IAAM,MAAM,GAAZ,MAAM,MAAO,SAAQ,2BAAU;IAE9B,aAAa,CAAU;IAGvB,UAAU,CAAc;IAGxB,MAAM,CAAgB;IAGtB,aAAa,CAAY;IAGzB,OAAO,CAAQ;IAGf,aAAa,CAAU;CAC9B,CAAA;AAlBY,wBAAM;AAEX;IADN,IAAA,gBAAI,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;;6CACtB;AAGvB;IADN,IAAA,gBAAI,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAU,EAAE,OAAO,EAAE,iBAAU,CAAC,IAAI,EAAE,CAAC;;0CACpC;AAGxB;IADN,IAAA,gBAAI,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,mBAAY,EAAE,OAAO,EAAE,mBAAY,CAAC,MAAM,EAAE,CAAC;;sCAC5C;AAGtB;IADN,IAAA,gBAAI,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,yBAAQ,EAAE,CAAC;8BAClB,yBAAQ;6CAAC;AAGzB;IADN,IAAA,gBAAI,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;8BACpB,IAAI;uCAAC;AAGf;IADN,IAAA,gBAAI,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;6CACO;iBAjBlB,MAAM;IADlB,IAAA,wBAAY,EAAC,EAAE,aAAa,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE,gBAAgB,EAAE,YAAY,EAAE,EAAE,CAAC;GAC9E,MAAM,CAkBlB","sourcesContent":["import { modelOptions, prop } from '@typegoose/typegoose';\nimport { TimeStamps } from '@typegoose/typegoose/lib/defaultClasses';\nimport { PayoutStatus, PayoutType } from '../../../utilities/enum';\nimport { Duration } from './shared/duration.model';\n\n@modelOptions({ schemaOptions: { collection: 'payouts', discriminatorKey: 'payoutType' } })\nexport class Payout extends TimeStamps {\n\t@prop({ required: true, type: String, index: true })\n\tpublic invoiceNumber!: string;\n\n\t@prop({ type: String, enum: PayoutType, default: PayoutType.SHOP })\n\tpublic payoutType?: PayoutType;\n\n\t@prop({ type: String, enum: PayoutStatus, default: PayoutStatus.UNPAID })\n\tpublic status?: PayoutStatus;\n\n\t@prop({ required: true, type: Duration })\n\tpublic billingPeriod!: Duration;\n\n\t@prop({ required: true, type: Date })\n\tpublic dueDate!: Date;\n\n\t@prop({ type: String })\n\tpublic revokedReason?: string;\n}\n"]}
1
+ {"version":3,"file":"payout.model.js","sourceRoot":"/","sources":["libraries/mongo/models/payout.model.ts"],"names":[],"mappings":"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","sourcesContent":["import { Index, modelOptions, pre, prop } from '@typegoose/typegoose';\nimport { TimeStamps } from '@typegoose/typegoose/lib/defaultClasses';\nimport { PayoutStatus, PayoutType } from '../../../utilities/enum';\nimport { Duration } from './shared/duration.model';\nimport dayjs from 'dayjs';\nimport { PayoutModel } from '.';\n\n@modelOptions({ schemaOptions: { collection: 'payouts', discriminatorKey: 'payoutType' } })\n@pre<Payout>('save', async function (next) {\n\tif (this.invoiceNumber) return next(); // Skip if already has invoice number\n\n\tconst now = dayjs();\n\tconst year = now.format('YY'); // last two digits\n\tconst month = now.format('MM');\n\n\tconst startOfYear = now.startOf('year').toDate();\n\tconst endOfYear = now.endOf('year').toDate();\n\n\t// Find last invoice in current year\n\tconst lastPayout = await PayoutModel.findOne({\n\t\tcreatedAt: { $gte: startOfYear, $lte: endOfYear },\n\t\tinvoiceNumber: { $regex: `^${month}${year}` },\n\t})\n\t\t.sort({ invoiceNumber: -1 })\n\t\t.select('invoiceNumber')\n\t\t.lean();\n\n\tlet sequence = 1;\n\tif (lastPayout && lastPayout.invoiceNumber) {\n\t\tconst lastSeq = parseInt(lastPayout.invoiceNumber.slice(4), 10);\n\t\tsequence = lastSeq + 1;\n\t}\n\n\tconst invoiceNumber = `${month}${year}${sequence.toString().padStart(4, '0')}`;\n\tthis.invoiceNumber = invoiceNumber;\n\n\tnext();\n})\n@Index({ createdAt: 1, invoiceNumber: -1, deletedAt: 1 })\nexport class Payout extends TimeStamps {\n\t@prop({ type: String, index: true, unique: true })\n\tpublic invoiceNumber!: string;\n\n\t@prop({ type: String, enum: PayoutType, default: PayoutType.SHOP })\n\tpublic payoutType?: PayoutType;\n\n\t@prop({ type: String, enum: PayoutStatus, default: PayoutStatus.UNPAID })\n\tpublic status?: PayoutStatus;\n\n\t@prop({ required: true, type: Duration })\n\tpublic billingPeriod!: Duration;\n\n\t@prop({ required: true, type: Date })\n\tpublic dueDate!: Date;\n\n\t@prop({ type: String })\n\tpublic revokedReason?: string;\n}\n"]}
@@ -0,0 +1,7 @@
1
+ import { OrderFinance } from '../order-finance.model';
2
+ import { OrderType } from '../../../../utilities/enum';
3
+ import { CourierOrderProfit } from '../embedded/profit.model';
4
+ export declare class CourierOrderFinance extends OrderFinance {
5
+ orderType: OrderType.COURIER;
6
+ companyProfit?: CourierOrderProfit;
7
+ }
@@ -0,0 +1,26 @@
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.CourierOrderFinance = void 0;
13
+ const typegoose_1 = require("@typegoose/typegoose");
14
+ const order_finance_model_1 = require("../order-finance.model");
15
+ const enum_1 = require("../../../../utilities/enum");
16
+ const profit_model_1 = require("../embedded/profit.model");
17
+ class CourierOrderFinance extends order_finance_model_1.OrderFinance {
18
+ orderType = enum_1.OrderType.COURIER;
19
+ companyProfit;
20
+ }
21
+ exports.CourierOrderFinance = CourierOrderFinance;
22
+ __decorate([
23
+ (0, typegoose_1.prop)({ type: () => profit_model_1.CourierOrderProfit }),
24
+ __metadata("design:type", profit_model_1.CourierOrderProfit)
25
+ ], CourierOrderFinance.prototype, "companyProfit", void 0);
26
+ //# sourceMappingURL=courier-order-finance.model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"courier-order-finance.model.js","sourceRoot":"/","sources":["libraries/mongo/models/providers/courier-order-finance.model.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,oDAA4C;AAC5C,gEAAsD;AACtD,qDAAuD;AACvD,2DAA8D;AAE9D,MAAa,mBAAoB,SAAQ,kCAAY;IAC7C,SAAS,GAAG,gBAAS,CAAC,OAAgB,CAAC;IAGvC,aAAa,CAAsB;CAC1C;AALD,kDAKC;AADO;IADN,IAAA,gBAAI,EAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,iCAAkB,EAAE,CAAC;8BAClB,iCAAkB;0DAAC","sourcesContent":["import { prop } from '@typegoose/typegoose';\nimport { OrderFinance } from '../order-finance.model';\nimport { OrderType } from '../../../../utilities/enum';\nimport { CourierOrderProfit } from '../embedded/profit.model';\n\nexport class CourierOrderFinance extends OrderFinance {\n\tpublic orderType = OrderType.COURIER as const;\n\n\t@prop({ type: () => CourierOrderProfit })\n\tpublic companyProfit?: CourierOrderProfit;\n}\n"]}
@@ -0,0 +1,25 @@
1
+ import { Ref } from '@typegoose/typegoose';
2
+ import { OrderFinance } from '../order-finance.model';
3
+ import { ItemType, OrderType } from '../../../../utilities/enum';
4
+ import { RegularOrderProfit } from '../embedded/profit.model';
5
+ import { Vat } from '../embedded/vat.model';
6
+ import { CouponDetails, LoyaltyPoint, MarketingCut } from '../embedded/marketing-cut.model';
7
+ import { Parent } from '../parent.model';
8
+ import { Shop } from '../shop.model';
9
+ export declare class RegularOrderFinance extends OrderFinance {
10
+ orderType: OrderType.REGULAR;
11
+ parent: Ref<Parent>;
12
+ shop: Ref<Shop>;
13
+ itemType: ItemType;
14
+ isShopDelivery?: boolean;
15
+ companyProfit?: RegularOrderProfit;
16
+ shopProfit?: RegularOrderProfit;
17
+ vat?: Vat;
18
+ discount?: MarketingCut;
19
+ buy1get1?: MarketingCut;
20
+ loyaltyPoint?: LoyaltyPoint;
21
+ coupon?: CouponDetails;
22
+ freeDelivery?: MarketingCut;
23
+ replacementOrder?: MarketingCut;
24
+ endorseLoss?: MarketingCut;
25
+ }
@@ -0,0 +1,95 @@
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.RegularOrderFinance = void 0;
13
+ const typegoose_1 = require("@typegoose/typegoose");
14
+ const order_finance_model_1 = require("../order-finance.model");
15
+ const enum_1 = require("../../../../utilities/enum");
16
+ const profit_model_1 = require("../embedded/profit.model");
17
+ const vat_model_1 = require("../embedded/vat.model");
18
+ const marketing_cut_model_1 = require("../embedded/marketing-cut.model");
19
+ const parent_model_1 = require("../parent.model");
20
+ const shop_model_1 = require("../shop.model");
21
+ class RegularOrderFinance extends order_finance_model_1.OrderFinance {
22
+ orderType = enum_1.OrderType.REGULAR;
23
+ parent;
24
+ shop;
25
+ itemType;
26
+ isShopDelivery;
27
+ companyProfit;
28
+ shopProfit;
29
+ vat;
30
+ discount;
31
+ buy1get1;
32
+ loyaltyPoint;
33
+ coupon;
34
+ freeDelivery;
35
+ replacementOrder;
36
+ endorseLoss;
37
+ }
38
+ exports.RegularOrderFinance = RegularOrderFinance;
39
+ __decorate([
40
+ (0, typegoose_1.prop)({ required: true, ref: () => parent_model_1.Parent, index: true }),
41
+ __metadata("design:type", Object)
42
+ ], RegularOrderFinance.prototype, "parent", void 0);
43
+ __decorate([
44
+ (0, typegoose_1.prop)({ required: true, ref: () => shop_model_1.Shop, index: true }),
45
+ __metadata("design:type", Object)
46
+ ], RegularOrderFinance.prototype, "shop", void 0);
47
+ __decorate([
48
+ (0, typegoose_1.prop)({ required: true, type: String, enum: enum_1.ItemType, index: true }),
49
+ __metadata("design:type", String)
50
+ ], RegularOrderFinance.prototype, "itemType", void 0);
51
+ __decorate([
52
+ (0, typegoose_1.prop)({ type: Boolean, default: false }),
53
+ __metadata("design:type", Boolean)
54
+ ], RegularOrderFinance.prototype, "isShopDelivery", void 0);
55
+ __decorate([
56
+ (0, typegoose_1.prop)({ type: () => profit_model_1.RegularOrderProfit }),
57
+ __metadata("design:type", profit_model_1.RegularOrderProfit)
58
+ ], RegularOrderFinance.prototype, "companyProfit", void 0);
59
+ __decorate([
60
+ (0, typegoose_1.prop)({ type: () => profit_model_1.RegularOrderProfit }),
61
+ __metadata("design:type", profit_model_1.RegularOrderProfit)
62
+ ], RegularOrderFinance.prototype, "shopProfit", void 0);
63
+ __decorate([
64
+ (0, typegoose_1.prop)({ type: () => vat_model_1.Vat }),
65
+ __metadata("design:type", vat_model_1.Vat)
66
+ ], RegularOrderFinance.prototype, "vat", void 0);
67
+ __decorate([
68
+ (0, typegoose_1.prop)({ type: () => marketing_cut_model_1.MarketingCut }),
69
+ __metadata("design:type", marketing_cut_model_1.MarketingCut)
70
+ ], RegularOrderFinance.prototype, "discount", void 0);
71
+ __decorate([
72
+ (0, typegoose_1.prop)({ type: () => marketing_cut_model_1.MarketingCut }),
73
+ __metadata("design:type", marketing_cut_model_1.MarketingCut)
74
+ ], RegularOrderFinance.prototype, "buy1get1", void 0);
75
+ __decorate([
76
+ (0, typegoose_1.prop)({ type: () => marketing_cut_model_1.LoyaltyPoint }),
77
+ __metadata("design:type", marketing_cut_model_1.LoyaltyPoint)
78
+ ], RegularOrderFinance.prototype, "loyaltyPoint", void 0);
79
+ __decorate([
80
+ (0, typegoose_1.prop)({ type: () => marketing_cut_model_1.CouponDetails }),
81
+ __metadata("design:type", marketing_cut_model_1.CouponDetails)
82
+ ], RegularOrderFinance.prototype, "coupon", void 0);
83
+ __decorate([
84
+ (0, typegoose_1.prop)({ type: () => marketing_cut_model_1.MarketingCut }),
85
+ __metadata("design:type", marketing_cut_model_1.MarketingCut)
86
+ ], RegularOrderFinance.prototype, "freeDelivery", void 0);
87
+ __decorate([
88
+ (0, typegoose_1.prop)({ type: () => marketing_cut_model_1.MarketingCut }),
89
+ __metadata("design:type", marketing_cut_model_1.MarketingCut)
90
+ ], RegularOrderFinance.prototype, "replacementOrder", void 0);
91
+ __decorate([
92
+ (0, typegoose_1.prop)({ type: () => marketing_cut_model_1.MarketingCut }),
93
+ __metadata("design:type", marketing_cut_model_1.MarketingCut)
94
+ ], RegularOrderFinance.prototype, "endorseLoss", void 0);
95
+ //# sourceMappingURL=regular-order-finance.model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"regular-order-finance.model.js","sourceRoot":"/","sources":["libraries/mongo/models/providers/regular-order-finance.model.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,oDAAiD;AACjD,gEAAsD;AACtD,qDAAiE;AACjE,2DAA8D;AAC9D,qDAA4C;AAC5C,yEAA4F;AAC5F,kDAAyC;AACzC,8CAAqC;AAErC,MAAa,mBAAoB,SAAQ,kCAAY;IAC7C,SAAS,GAAG,gBAAS,CAAC,OAAgB,CAAC;IAGvC,MAAM,CAAe;IAGrB,IAAI,CAAa;IAGjB,QAAQ,CAAY;IAGpB,cAAc,CAAW;IAGzB,aAAa,CAAsB;IAGnC,UAAU,CAAsB;IAGhC,GAAG,CAAO;IAGV,QAAQ,CAAgB;IAGxB,QAAQ,CAAgB;IAGxB,YAAY,CAAgB;IAG5B,MAAM,CAAiB;IAGvB,YAAY,CAAgB;IAG5B,gBAAgB,CAAgB;IAGhC,WAAW,CAAgB;CAClC;AA5CD,kDA4CC;AAxCO;IADN,IAAA,gBAAI,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,qBAAM,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;;mDAC7B;AAGrB;IADN,IAAA,gBAAI,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,iBAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;;iDAC/B;AAGjB;IADN,IAAA,gBAAI,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,eAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;;qDACzC;AAGpB;IADN,IAAA,gBAAI,EAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;;2DACR;AAGzB;IADN,IAAA,gBAAI,EAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,iCAAkB,EAAE,CAAC;8BAClB,iCAAkB;0DAAC;AAGnC;IADN,IAAA,gBAAI,EAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,iCAAkB,EAAE,CAAC;8BACrB,iCAAkB;uDAAC;AAGhC;IADN,IAAA,gBAAI,EAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,eAAG,EAAE,CAAC;8BACb,eAAG;gDAAC;AAGV;IADN,IAAA,gBAAI,EAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,kCAAY,EAAE,CAAC;8BACjB,kCAAY;qDAAC;AAGxB;IADN,IAAA,gBAAI,EAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,kCAAY,EAAE,CAAC;8BACjB,kCAAY;qDAAC;AAGxB;IADN,IAAA,gBAAI,EAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,kCAAY,EAAE,CAAC;8BACb,kCAAY;yDAAC;AAG5B;IADN,IAAA,gBAAI,EAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,mCAAa,EAAE,CAAC;8BACpB,mCAAa;mDAAC;AAGvB;IADN,IAAA,gBAAI,EAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,kCAAY,EAAE,CAAC;8BACb,kCAAY;yDAAC;AAG5B;IADN,IAAA,gBAAI,EAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,kCAAY,EAAE,CAAC;8BACT,kCAAY;6DAAC;AAGhC;IADN,IAAA,gBAAI,EAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,kCAAY,EAAE,CAAC;8BACd,kCAAY;wDAAC","sourcesContent":["import { prop, Ref } from '@typegoose/typegoose';\nimport { OrderFinance } from '../order-finance.model';\nimport { ItemType, OrderType } from '../../../../utilities/enum';\nimport { RegularOrderProfit } from '../embedded/profit.model';\nimport { Vat } from '../embedded/vat.model';\nimport { CouponDetails, LoyaltyPoint, MarketingCut } from '../embedded/marketing-cut.model';\nimport { Parent } from '../parent.model';\nimport { Shop } from '../shop.model';\n\nexport class RegularOrderFinance extends OrderFinance {\n\tpublic orderType = OrderType.REGULAR as const;\n\n\t@prop({ required: true, ref: () => Parent, index: true })\n\tpublic parent!: Ref<Parent>;\n\n\t@prop({ required: true, ref: () => Shop, index: true })\n\tpublic shop!: Ref<Shop>;\n\n\t@prop({ required: true, type: String, enum: ItemType, index: true })\n\tpublic itemType!: ItemType;\n\n\t@prop({ type: Boolean, default: false })\n\tpublic isShopDelivery?: boolean;\n\n\t@prop({ type: () => RegularOrderProfit })\n\tpublic companyProfit?: RegularOrderProfit;\n\n\t@prop({ type: () => RegularOrderProfit })\n\tpublic shopProfit?: RegularOrderProfit;\n\n\t@prop({ type: () => Vat })\n\tpublic vat?: Vat;\n\n\t@prop({ type: () => MarketingCut })\n\tpublic discount?: MarketingCut;\n\n\t@prop({ type: () => MarketingCut })\n\tpublic buy1get1?: MarketingCut;\n\n\t@prop({ type: () => LoyaltyPoint })\n\tpublic loyaltyPoint?: LoyaltyPoint;\n\n\t@prop({ type: () => CouponDetails })\n\tpublic coupon?: CouponDetails;\n\n\t@prop({ type: () => MarketingCut })\n\tpublic freeDelivery?: MarketingCut;\n\n\t@prop({ type: () => MarketingCut })\n\tpublic replacementOrder?: MarketingCut;\n\n\t@prop({ type: () => MarketingCut })\n\tpublic endorseLoss?: MarketingCut;\n}\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lyxa.ai/core",
3
- "version": "1.0.73",
3
+ "version": "1.0.74",
4
4
  "description": "The Core system of the Lyxa services.",
5
5
  "author": "elie <42282499+Internalizable@users.noreply.github.com>",
6
6
  "license": "MIT",
@@ -26,6 +26,7 @@
26
26
  "@types/twilio": "^3.19.3",
27
27
  "amqplib": "^0.10.5",
28
28
  "bcryptjs": "^3.0.2",
29
+ "dayjs": "^1.11.13",
29
30
  "firebase": "^11.1.0",
30
31
  "firebase-admin": "^13.0.1",
31
32
  "ioredis": "^5.4.1",