@fesmex/models 0.1.54 → 0.1.56

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/index.cjs CHANGED
@@ -34,6 +34,7 @@ __export(index_exports, {
34
34
  ArticleClass: () => ArticleClasses_default,
35
35
  ArticleGroup: () => ArticleGroups_default,
36
36
  ArticlePrice: () => ArticlePrices_default,
37
+ ArticleView: () => ArticleViews_default,
37
38
  Cart: () => Carts_default,
38
39
  Category: () => Category_default,
39
40
  Client: () => Clients_default,
@@ -67,6 +68,7 @@ __export(index_exports, {
67
68
  QuoteStatus: () => QuoteStatus,
68
69
  QuoteTerm: () => QuoteTerm_default,
69
70
  RefreshToken: () => RefreshTokens_default,
71
+ State: () => State_default,
70
72
  Status: () => Status,
71
73
  SyncLog: () => SyncLog,
72
74
  SyncLogAction: () => SyncLogAction,
@@ -387,8 +389,20 @@ tagSchema.index({ is_active: 1 }, { name: "tags_active" });
387
389
  tagSchema.index({ type: 1 }, { name: "tags_type" });
388
390
  var Tag_default = import_mongoose17.default.models.Tag || (0, import_mongoose17.model)("Tag", tagSchema, "tags");
389
391
 
390
- // src/quotes/models/Quote.ts
392
+ // src/inventory/models/ArticleViews.ts
391
393
  var import_mongoose18 = __toESM(require("mongoose"), 1);
394
+ var articleViewSchema = new import_mongoose18.Schema(
395
+ {
396
+ article_id: { type: import_mongoose18.Schema.Types.ObjectId, ref: "Article", required: true },
397
+ visited_at: { type: Date, default: Date.now }
398
+ },
399
+ { collection: "article_views" }
400
+ );
401
+ var ArticleView = import_mongoose18.default.models.ArticleView || (0, import_mongoose18.model)("ArticleView", articleViewSchema);
402
+ var ArticleViews_default = ArticleView;
403
+
404
+ // src/quotes/models/Quote.ts
405
+ var import_mongoose19 = __toESM(require("mongoose"), 1);
392
406
  var QuoteStatus = /* @__PURE__ */ ((QuoteStatus2) => {
393
407
  QuoteStatus2["OPPORTUNITY"] = "OPPORTUNITY";
394
408
  QuoteStatus2["QUOTE"] = "QUOTE";
@@ -408,21 +422,21 @@ var CreatedMethod = /* @__PURE__ */ ((CreatedMethod2) => {
408
422
  CreatedMethod2["CSV"] = "CSV";
409
423
  return CreatedMethod2;
410
424
  })(CreatedMethod || {});
411
- var quoteSchema = new import_mongoose18.Schema(
425
+ var quoteSchema = new import_mongoose19.Schema(
412
426
  {
413
427
  quote_number: { type: Number, required: true },
414
428
  quote_revision: { type: Number, default: 0 },
415
429
  quote_ref: { type: String },
416
430
  company: { type: String },
417
- company_id: { type: import_mongoose18.Schema.Types.ObjectId, ref: "Client", required: true },
431
+ company_id: { type: import_mongoose19.Schema.Types.ObjectId, ref: "Client", required: true },
418
432
  company_pipedrive_id: { type: String },
419
- contact_id: { type: import_mongoose18.Schema.Types.ObjectId, ref: "ClientContact" },
433
+ contact_id: { type: import_mongoose19.Schema.Types.ObjectId, ref: "ClientContact" },
420
434
  project_name: { type: String },
421
435
  project_lab: { type: String },
422
436
  payment_condition: { type: String },
423
437
  payment_exp: { type: String },
424
- terms_ids: [{ type: import_mongoose18.Schema.Types.ObjectId, ref: "QuoteTerm" }],
425
- currency_id: { type: import_mongoose18.Schema.Types.ObjectId, ref: "Currency" },
438
+ terms_ids: [{ type: import_mongoose19.Schema.Types.ObjectId, ref: "QuoteTerm" }],
439
+ currency_id: { type: import_mongoose19.Schema.Types.ObjectId, ref: "Currency" },
426
440
  iva: { type: String },
427
441
  date: { type: Date },
428
442
  status: { type: String, enum: Object.values(Status), default: "OPEN" /* OPEN */ },
@@ -443,21 +457,21 @@ var quoteSchema = new import_mongoose18.Schema(
443
457
  enum: Object.values(CreatedMethod),
444
458
  default: "MANUAL" /* MANUAL */
445
459
  },
446
- created_by: { type: import_mongoose18.Schema.Types.ObjectId, ref: "User" },
447
- updated_by: { type: import_mongoose18.Schema.Types.ObjectId, ref: "User" },
448
- deleted_by: { type: import_mongoose18.Schema.Types.ObjectId, ref: "User" },
460
+ created_by: { type: import_mongoose19.Schema.Types.ObjectId, ref: "User" },
461
+ updated_by: { type: import_mongoose19.Schema.Types.ObjectId, ref: "User" },
462
+ deleted_by: { type: import_mongoose19.Schema.Types.ObjectId, ref: "User" },
449
463
  deleted_at: { type: Date }
450
464
  },
451
465
  { timestamps: { createdAt: "created_at", updatedAt: "updated_at" } }
452
466
  );
453
- var Quote_default = import_mongoose18.default.models.Quote || (0, import_mongoose18.model)("Quote", quoteSchema, "quotes");
467
+ var Quote_default = import_mongoose19.default.models.Quote || (0, import_mongoose19.model)("Quote", quoteSchema, "quotes");
454
468
 
455
469
  // src/quotes/models/QuoteArticle.ts
456
- var import_mongoose19 = __toESM(require("mongoose"), 1);
457
- var quoteArticleSchema = new import_mongoose19.Schema(
470
+ var import_mongoose20 = __toESM(require("mongoose"), 1);
471
+ var quoteArticleSchema = new import_mongoose20.Schema(
458
472
  {
459
- quote_id: { type: import_mongoose19.Schema.Types.ObjectId, ref: "Quote", required: true },
460
- article_id: { type: import_mongoose19.Schema.Types.ObjectId, ref: "Article" },
473
+ quote_id: { type: import_mongoose20.Schema.Types.ObjectId, ref: "Quote", required: true },
474
+ article_id: { type: import_mongoose20.Schema.Types.ObjectId, ref: "Article" },
461
475
  article_number: { type: String },
462
476
  description: { type: String },
463
477
  delivery: { type: String },
@@ -468,18 +482,18 @@ var quoteArticleSchema = new import_mongoose19.Schema(
468
482
  total: { type: Number },
469
483
  utility: { type: Number },
470
484
  type: { type: String },
471
- extra_id: { type: import_mongoose19.Schema.Types.ObjectId, ref: "QuoteArticleExtra" }
485
+ extra_id: { type: import_mongoose20.Schema.Types.ObjectId, ref: "QuoteArticleExtra" }
472
486
  },
473
487
  { timestamps: { createdAt: "created_at", updatedAt: "updated_at" } }
474
488
  );
475
- var QuoteArticle_default = import_mongoose19.default.models.QuoteArticle || (0, import_mongoose19.model)("QuoteArticle", quoteArticleSchema, "quote_articles");
489
+ var QuoteArticle_default = import_mongoose20.default.models.QuoteArticle || (0, import_mongoose20.model)("QuoteArticle", quoteArticleSchema, "quote_articles");
476
490
 
477
491
  // src/quotes/models/QuoteArticleExtra.ts
478
- var import_mongoose20 = __toESM(require("mongoose"), 1);
479
- var quoteArticleExtraSchema = new import_mongoose20.Schema(
492
+ var import_mongoose21 = __toESM(require("mongoose"), 1);
493
+ var quoteArticleExtraSchema = new import_mongoose21.Schema(
480
494
  {
481
495
  quote_article_id: {
482
- type: import_mongoose20.Schema.Types.ObjectId,
496
+ type: import_mongoose21.Schema.Types.ObjectId,
483
497
  ref: "QuoteArticle",
484
498
  required: true
485
499
  },
@@ -491,23 +505,23 @@ var quoteArticleExtraSchema = new import_mongoose20.Schema(
491
505
  },
492
506
  { timestamps: { createdAt: "created_at", updatedAt: "updated_at" } }
493
507
  );
494
- var QuoteArticleExtra_default = import_mongoose20.default.models.QuoteArticleExtra || (0, import_mongoose20.model)("QuoteArticleExtra", quoteArticleExtraSchema, "quote_article_extras");
508
+ var QuoteArticleExtra_default = import_mongoose21.default.models.QuoteArticleExtra || (0, import_mongoose21.model)("QuoteArticleExtra", quoteArticleExtraSchema, "quote_article_extras");
495
509
 
496
510
  // src/quotes/models/QuoteContact.ts
497
- var import_mongoose21 = __toESM(require("mongoose"), 1);
498
- var quoteContactSchema = new import_mongoose21.Schema({
499
- quote_id: { type: import_mongoose21.Schema.Types.ObjectId, ref: "Quote", required: true },
511
+ var import_mongoose22 = __toESM(require("mongoose"), 1);
512
+ var quoteContactSchema = new import_mongoose22.Schema({
513
+ quote_id: { type: import_mongoose22.Schema.Types.ObjectId, ref: "Quote", required: true },
500
514
  name: String,
501
515
  email: String,
502
516
  mobile: String,
503
517
  pipedrive_id: String,
504
518
  created_at: { type: Date, default: Date.now }
505
519
  });
506
- var QuoteContact_default = import_mongoose21.default.models.QuoteContact || (0, import_mongoose21.model)("QuoteContact", quoteContactSchema, "quote_contacts");
520
+ var QuoteContact_default = import_mongoose22.default.models.QuoteContact || (0, import_mongoose22.model)("QuoteContact", quoteContactSchema, "quote_contacts");
507
521
 
508
522
  // src/quotes/models/QuoteTerm.ts
509
- var import_mongoose22 = __toESM(require("mongoose"), 1);
510
- var quoteTermSchema = new import_mongoose22.Schema(
523
+ var import_mongoose23 = __toESM(require("mongoose"), 1);
524
+ var quoteTermSchema = new import_mongoose23.Schema(
511
525
  {
512
526
  title: String,
513
527
  content: { type: String, required: true },
@@ -518,10 +532,10 @@ var quoteTermSchema = new import_mongoose22.Schema(
518
532
  },
519
533
  { timestamps: { createdAt: "created_at", updatedAt: "updated_at" } }
520
534
  );
521
- var QuoteTerm_default = import_mongoose22.default.models.QuoteTerm || (0, import_mongoose22.model)("QuoteTerm", quoteTermSchema, "quote_terms");
535
+ var QuoteTerm_default = import_mongoose23.default.models.QuoteTerm || (0, import_mongoose23.model)("QuoteTerm", quoteTermSchema, "quote_terms");
522
536
 
523
537
  // src/customers/models/Customers.ts
524
- var import_mongoose23 = __toESM(require("mongoose"), 1);
538
+ var import_mongoose24 = __toESM(require("mongoose"), 1);
525
539
  var import_bcryptjs = __toESM(require("bcryptjs"), 1);
526
540
  var CustomerStatus = /* @__PURE__ */ ((CustomerStatus2) => {
527
541
  CustomerStatus2["ACTIVE"] = "active";
@@ -529,7 +543,7 @@ var CustomerStatus = /* @__PURE__ */ ((CustomerStatus2) => {
529
543
  CustomerStatus2["BANNED"] = "banned";
530
544
  return CustomerStatus2;
531
545
  })(CustomerStatus || {});
532
- var customerSchema = new import_mongoose23.Schema({
546
+ var customerSchema = new import_mongoose24.Schema({
533
547
  first_name: { type: String, required: true },
534
548
  last_name: { type: String, required: true },
535
549
  email: { type: String, required: true, unique: true },
@@ -540,7 +554,7 @@ var customerSchema = new import_mongoose23.Schema({
540
554
  enum: Object.values(CustomerStatus),
541
555
  default: "inactive" /* INACTIVE */
542
556
  },
543
- fiscal_profile_id: { type: import_mongoose23.Schema.Types.ObjectId, ref: "FiscalProfile" },
557
+ fiscal_profile_id: { type: import_mongoose24.Schema.Types.ObjectId, ref: "FiscalProfile" },
544
558
  created_at: { type: Date, default: Date.now },
545
559
  updated_at: { type: Date },
546
560
  deleted_at: { type: Date }
@@ -550,13 +564,13 @@ customerSchema.pre("save", async function() {
550
564
  this.password = await import_bcryptjs.default.hash(this.password, 12);
551
565
  }
552
566
  });
553
- var Customer = import_mongoose23.default.models.Customer || (0, import_mongoose23.model)("Customer", customerSchema, "customers");
567
+ var Customer = import_mongoose24.default.models.Customer || (0, import_mongoose24.model)("Customer", customerSchema, "customers");
554
568
  var Customers_default = Customer;
555
569
 
556
570
  // src/customers/models/FiscalProfileType.ts
557
- var import_mongoose24 = __toESM(require("mongoose"), 1);
558
- var fiscalProfileSchema = new import_mongoose24.Schema({
559
- customer_id: { type: import_mongoose24.Schema.Types.ObjectId, ref: "Customer", required: true },
571
+ var import_mongoose25 = __toESM(require("mongoose"), 1);
572
+ var fiscalProfileSchema = new import_mongoose25.Schema({
573
+ customer_id: { type: import_mongoose25.Schema.Types.ObjectId, ref: "Customer", required: true },
560
574
  rfc: { type: String, required: true },
561
575
  razon_social: { type: String, required: true },
562
576
  uso_cfdi: { type: String, required: true },
@@ -565,11 +579,11 @@ var fiscalProfileSchema = new import_mongoose24.Schema({
565
579
  created_at: { type: Date, default: Date.now },
566
580
  updated_at: { type: Date }
567
581
  });
568
- var FiscalProfile = import_mongoose24.default.models.FiscalProfile || (0, import_mongoose24.model)("FiscalProfile", fiscalProfileSchema, "fiscal_profiles");
582
+ var FiscalProfile = import_mongoose25.default.models.FiscalProfile || (0, import_mongoose25.model)("FiscalProfile", fiscalProfileSchema, "fiscal_profiles");
569
583
  var FiscalProfileType_default = FiscalProfile;
570
584
 
571
585
  // src/orders/models/Orders.ts
572
- var import_mongoose25 = __toESM(require("mongoose"), 1);
586
+ var import_mongoose26 = __toESM(require("mongoose"), 1);
573
587
  var OrderStatus = /* @__PURE__ */ ((OrderStatus2) => {
574
588
  OrderStatus2["PENDING"] = "pending";
575
589
  OrderStatus2["CONFIRMED"] = "confirmed";
@@ -590,7 +604,7 @@ var PaymentStatus = /* @__PURE__ */ ((PaymentStatus2) => {
590
604
  PaymentStatus2["REFUNDED"] = "REFUNDED";
591
605
  return PaymentStatus2;
592
606
  })(PaymentStatus || {});
593
- var shippingAddressSchema = new import_mongoose25.Schema(
607
+ var shippingAddressSchema = new import_mongoose26.Schema(
594
608
  {
595
609
  full_name: { type: String, required: true, trim: true },
596
610
  phone: { type: String, required: true, trim: true },
@@ -603,18 +617,18 @@ var shippingAddressSchema = new import_mongoose25.Schema(
603
617
  },
604
618
  { _id: false }
605
619
  );
606
- var orderItemSchema = new import_mongoose25.Schema(
620
+ var orderItemSchema = new import_mongoose26.Schema(
607
621
  {
608
- article_id: { type: import_mongoose25.Schema.Types.ObjectId, ref: "Article", required: true },
622
+ article_id: { type: import_mongoose26.Schema.Types.ObjectId, ref: "Article", required: true },
609
623
  quantity: { type: Number, required: true, min: 1 },
610
624
  unit_price: { type: Number, required: true, min: 0 },
611
625
  total: { type: Number, required: true, min: 0 }
612
626
  },
613
627
  { _id: false }
614
628
  );
615
- var orderSchema = new import_mongoose25.Schema(
629
+ var orderSchema = new import_mongoose26.Schema(
616
630
  {
617
- customer_id: { type: import_mongoose25.Schema.Types.ObjectId, ref: "Customer", required: true },
631
+ customer_id: { type: import_mongoose26.Schema.Types.ObjectId, ref: "Customer", required: true },
618
632
  items: { type: [orderItemSchema], required: true, default: [] },
619
633
  status: {
620
634
  type: String,
@@ -658,14 +672,14 @@ orderSchema.index(
658
672
  { "shipping_address.postal_code": 1, created_at: -1 },
659
673
  { name: "orders_postal_created" }
660
674
  );
661
- var Orders_default = import_mongoose25.default.models.Order || (0, import_mongoose25.model)("Order", orderSchema, "orders");
675
+ var Orders_default = import_mongoose26.default.models.Order || (0, import_mongoose26.model)("Order", orderSchema, "orders");
662
676
 
663
677
  // src/orders/models/OrderStatusLogs.ts
664
- var import_mongoose26 = __toESM(require("mongoose"), 1);
665
- var orderStatusLogSchema = new import_mongoose26.Schema(
678
+ var import_mongoose27 = __toESM(require("mongoose"), 1);
679
+ var orderStatusLogSchema = new import_mongoose27.Schema(
666
680
  {
667
681
  order_id: {
668
- type: import_mongoose26.Schema.Types.ObjectId,
682
+ type: import_mongoose27.Schema.Types.ObjectId,
669
683
  ref: "Order",
670
684
  required: true
671
685
  },
@@ -675,7 +689,7 @@ var orderStatusLogSchema = new import_mongoose26.Schema(
675
689
  required: true
676
690
  },
677
691
  changed_by: {
678
- type: import_mongoose26.Schema.Types.ObjectId,
692
+ type: import_mongoose27.Schema.Types.ObjectId,
679
693
  ref: "User",
680
694
  required: true
681
695
  },
@@ -698,10 +712,47 @@ orderStatusLogSchema.index(
698
712
  { changed_by: 1, changed_at: -1 },
699
713
  { name: "order_status_logs_changed_by_changed_at" }
700
714
  );
701
- var OrderStatusLogs_default = import_mongoose26.default.models.OrderStatusLog || (0, import_mongoose26.model)("OrderStatusLog", orderStatusLogSchema);
715
+ var OrderStatusLogs_default = import_mongoose27.default.models.OrderStatusLog || (0, import_mongoose27.model)("OrderStatusLog", orderStatusLogSchema);
716
+
717
+ // src/orders/models/State.ts
718
+ var import_mongoose28 = __toESM(require("mongoose"), 1);
719
+ var stateSchema = new import_mongoose28.Schema(
720
+ {
721
+ name: {
722
+ type: String,
723
+ required: true,
724
+ trim: true,
725
+ lowercase: true,
726
+ index: true
727
+ },
728
+ code: {
729
+ type: String,
730
+ trim: true,
731
+ uppercase: true,
732
+ sparse: true
733
+ },
734
+ percentage: {
735
+ type: Number,
736
+ required: true,
737
+ default: 0.1,
738
+ min: 0,
739
+ max: 1
740
+ },
741
+ is_active: {
742
+ type: Boolean,
743
+ default: true,
744
+ index: true
745
+ }
746
+ },
747
+ {
748
+ timestamps: { createdAt: "created_at", updatedAt: "updated_at" }
749
+ }
750
+ );
751
+ stateSchema.index({ name: 1, is_active: 1 }, { name: "states_name_active" });
752
+ var State_default = import_mongoose28.default.models.State || (0, import_mongoose28.model)("State", stateSchema, "states");
702
753
 
703
754
  // src/sap/models/SyncLog.ts
704
- var import_mongoose27 = __toESM(require("mongoose"), 1);
755
+ var import_mongoose29 = __toESM(require("mongoose"), 1);
705
756
  var SyncLogType = /* @__PURE__ */ ((SyncLogType2) => {
706
757
  SyncLogType2["SAP_QUOTATION"] = "SAP_QUOTATION";
707
758
  SyncLogType2["SAP_SALES_ORDER"] = "SAP_SALES_ORDER";
@@ -721,7 +772,7 @@ var SyncLogAction = /* @__PURE__ */ ((SyncLogAction2) => {
721
772
  SyncLogAction2["DELETE"] = "DELETE";
722
773
  return SyncLogAction2;
723
774
  })(SyncLogAction || {});
724
- var syncLogSchema = new import_mongoose27.Schema(
775
+ var syncLogSchema = new import_mongoose29.Schema(
725
776
  {
726
777
  entity_type: {
727
778
  type: String,
@@ -729,7 +780,7 @@ var syncLogSchema = new import_mongoose27.Schema(
729
780
  index: true
730
781
  },
731
782
  entity_id: {
732
- type: import_mongoose27.Schema.Types.ObjectId,
783
+ type: import_mongoose29.Schema.Types.ObjectId,
733
784
  required: true,
734
785
  index: true
735
786
  },
@@ -752,14 +803,14 @@ var syncLogSchema = new import_mongoose27.Schema(
752
803
  },
753
804
  error_message: { type: String },
754
805
  error_code: { type: String },
755
- error_details: { type: import_mongoose27.Schema.Types.Mixed },
756
- request_payload: { type: import_mongoose27.Schema.Types.Mixed },
757
- response_payload: { type: import_mongoose27.Schema.Types.Mixed },
806
+ error_details: { type: import_mongoose29.Schema.Types.Mixed },
807
+ request_payload: { type: import_mongoose29.Schema.Types.Mixed },
808
+ response_payload: { type: import_mongoose29.Schema.Types.Mixed },
758
809
  retry_count: { type: Number, default: 0 },
759
810
  max_retries: { type: Number, default: 3 },
760
811
  next_retry_at: { type: Date },
761
812
  resolved_at: { type: Date },
762
- resolved_by: { type: import_mongoose27.Schema.Types.ObjectId, ref: "User" }
813
+ resolved_by: { type: import_mongoose29.Schema.Types.ObjectId, ref: "User" }
763
814
  },
764
815
  {
765
816
  timestamps: { createdAt: "created_at", updatedAt: "updated_at" }
@@ -767,13 +818,13 @@ var syncLogSchema = new import_mongoose27.Schema(
767
818
  );
768
819
  syncLogSchema.index({ entity_type: 1, entity_id: 1, status: 1 });
769
820
  syncLogSchema.index({ status: 1, next_retry_at: 1 });
770
- var SyncLog = import_mongoose27.default.models.SyncLog || (0, import_mongoose27.model)("SyncLog", syncLogSchema, "sync_logs");
821
+ var SyncLog = import_mongoose29.default.models.SyncLog || (0, import_mongoose29.model)("SyncLog", syncLogSchema, "sync_logs");
771
822
 
772
823
  // src/announcements/models/Announcements.ts
773
- var import_mongoose29 = __toESM(require("mongoose"), 1);
824
+ var import_mongoose31 = __toESM(require("mongoose"), 1);
774
825
 
775
826
  // src/users/models/Users.ts
776
- var import_mongoose28 = __toESM(require("mongoose"), 1);
827
+ var import_mongoose30 = __toESM(require("mongoose"), 1);
777
828
  var import_bcryptjs2 = __toESM(require("bcryptjs"), 1);
778
829
  var UserRole = /* @__PURE__ */ ((UserRole2) => {
779
830
  UserRole2["ADMIN"] = "admin";
@@ -788,7 +839,7 @@ var UserStatus = /* @__PURE__ */ ((UserStatus2) => {
788
839
  UserStatus2["SUSPENDED"] = "suspended";
789
840
  return UserStatus2;
790
841
  })(UserStatus || {});
791
- var usersSchema = new import_mongoose28.Schema({
842
+ var usersSchema = new import_mongoose30.Schema({
792
843
  first_name: { type: String, required: true },
793
844
  middle_name: { type: String },
794
845
  last_name: { type: String, required: true },
@@ -810,32 +861,32 @@ var usersSchema = new import_mongoose28.Schema({
810
861
  sap_id: { type: String },
811
862
  sap_employee_id: { type: String },
812
863
  created_at: { type: Date, default: Date.now },
813
- created_by: { type: import_mongoose28.Schema.Types.Mixed, ref: "User" },
864
+ created_by: { type: import_mongoose30.Schema.Types.Mixed, ref: "User" },
814
865
  updated_at: { type: Date },
815
- updated_by: { type: import_mongoose28.Schema.Types.ObjectId, ref: "User" },
866
+ updated_by: { type: import_mongoose30.Schema.Types.ObjectId, ref: "User" },
816
867
  deleted_at: { type: Date },
817
- deleted_by: { type: import_mongoose28.Schema.Types.ObjectId, ref: "User" }
868
+ deleted_by: { type: import_mongoose30.Schema.Types.ObjectId, ref: "User" }
818
869
  });
819
870
  usersSchema.pre("save", async function() {
820
871
  if (this.isModified("password")) {
821
872
  this.password = await import_bcryptjs2.default.hash(this.password, 12);
822
873
  }
823
874
  });
824
- var Users_default = import_mongoose28.default.models.User || (0, import_mongoose28.model)("User", usersSchema, "users");
875
+ var Users_default = import_mongoose30.default.models.User || (0, import_mongoose30.model)("User", usersSchema, "users");
825
876
 
826
877
  // src/announcements/models/Announcements.ts
827
- var announcementSchema = new import_mongoose29.Schema({
878
+ var announcementSchema = new import_mongoose31.Schema({
828
879
  created_by: {
829
- type: import_mongoose29.Schema.Types.ObjectId,
880
+ type: import_mongoose31.Schema.Types.ObjectId,
830
881
  ref: "User",
831
882
  required: true
832
883
  },
833
884
  updated_by: {
834
- type: import_mongoose29.Schema.Types.ObjectId,
885
+ type: import_mongoose31.Schema.Types.ObjectId,
835
886
  ref: "User"
836
887
  },
837
888
  deleted_by: {
838
- type: import_mongoose29.Schema.Types.ObjectId,
889
+ type: import_mongoose31.Schema.Types.ObjectId,
839
890
  ref: "User"
840
891
  },
841
892
  created_at: {
@@ -864,13 +915,13 @@ var announcementSchema = new import_mongoose29.Schema({
864
915
  }
865
916
  }
866
917
  });
867
- var Announcements_default = import_mongoose29.default.models.Announcement || (0, import_mongoose29.model)("Announcement", announcementSchema, "announcements");
918
+ var Announcements_default = import_mongoose31.default.models.Announcement || (0, import_mongoose31.model)("Announcement", announcementSchema, "announcements");
868
919
 
869
920
  // src/carts/models/Carts.ts
870
- var import_mongoose30 = __toESM(require("mongoose"), 1);
871
- var cartItemSchema = new import_mongoose30.Schema(
921
+ var import_mongoose32 = __toESM(require("mongoose"), 1);
922
+ var cartItemSchema = new import_mongoose32.Schema(
872
923
  {
873
- article_id: { type: import_mongoose30.Types.ObjectId, ref: "Article", required: true },
924
+ article_id: { type: import_mongoose32.Types.ObjectId, ref: "Article", required: true },
874
925
  quantity: { type: Number, required: true, min: 1 },
875
926
  unit_price: { type: Number },
876
927
  line_subtotal: { type: Number },
@@ -878,10 +929,10 @@ var cartItemSchema = new import_mongoose30.Schema(
878
929
  },
879
930
  { _id: false }
880
931
  );
881
- var cartSchema = new import_mongoose30.Schema(
932
+ var cartSchema = new import_mongoose32.Schema(
882
933
  {
883
934
  customer_id: {
884
- type: import_mongoose30.Types.ObjectId,
935
+ type: import_mongoose32.Types.ObjectId,
885
936
  ref: "Customer",
886
937
  required: true
887
938
  },
@@ -891,7 +942,7 @@ var cartSchema = new import_mongoose30.Schema(
891
942
  default: "ACTIVE"
892
943
  },
893
944
  currency: { type: String, default: "MXN" },
894
- price_list_id: { type: import_mongoose30.Types.ObjectId, ref: "PriceList" },
945
+ price_list_id: { type: import_mongoose32.Types.ObjectId, ref: "PriceList" },
895
946
  expires_at: { type: Date },
896
947
  subtotal: { type: Number, default: 0 },
897
948
  items: { type: [cartItemSchema], default: [] }
@@ -902,12 +953,12 @@ var cartSchema = new import_mongoose30.Schema(
902
953
  );
903
954
  cartSchema.index({ customer_id: 1 }, { unique: true, name: "carts_customer_unique" });
904
955
  cartSchema.index({ updated_at: -1 }, { name: "carts_updated_at" });
905
- var Carts_default = import_mongoose30.default.models.Cart || (0, import_mongoose30.model)("Cart", cartSchema, "carts");
956
+ var Carts_default = import_mongoose32.default.models.Cart || (0, import_mongoose32.model)("Cart", cartSchema, "carts");
906
957
 
907
958
  // src/auth/models/RefreshTokens.ts
908
- var import_mongoose31 = __toESM(require("mongoose"), 1);
909
- var refreshTokenSchema = new import_mongoose31.Schema({
910
- customer_id: { type: import_mongoose31.Schema.Types.ObjectId, ref: "Customer", required: true },
959
+ var import_mongoose33 = __toESM(require("mongoose"), 1);
960
+ var refreshTokenSchema = new import_mongoose33.Schema({
961
+ customer_id: { type: import_mongoose33.Schema.Types.ObjectId, ref: "Customer", required: true },
911
962
  // Store only SHA-256 hash of the opaque refresh token (base64url). Never store the raw token.
912
963
  token_hash: { type: String, required: true },
913
964
  expires_at: { type: Date, required: true },
@@ -922,13 +973,13 @@ refreshTokenSchema.index({ customer_id: 1, expires_at: 1 });
922
973
  refreshTokenSchema.pre("save", function() {
923
974
  this.updated_at = /* @__PURE__ */ new Date();
924
975
  });
925
- var RefreshToken = import_mongoose31.default.models.RefreshToken || (0, import_mongoose31.model)("RefreshToken", refreshTokenSchema, "refresh_tokens");
976
+ var RefreshToken = import_mongoose33.default.models.RefreshToken || (0, import_mongoose33.model)("RefreshToken", refreshTokenSchema, "refresh_tokens");
926
977
  var RefreshTokens_default = RefreshToken;
927
978
 
928
979
  // src/auth/models/PasswordResetTokens.ts
929
- var import_mongoose32 = __toESM(require("mongoose"), 1);
930
- var passwordResetTokenSchema = new import_mongoose32.Schema({
931
- customer_id: { type: import_mongoose32.Schema.Types.ObjectId, ref: "Customer", required: true },
980
+ var import_mongoose34 = __toESM(require("mongoose"), 1);
981
+ var passwordResetTokenSchema = new import_mongoose34.Schema({
982
+ customer_id: { type: import_mongoose34.Schema.Types.ObjectId, ref: "Customer", required: true },
932
983
  // Store only SHA-256 hash of the opaque reset token (base64url). Never store the raw token.
933
984
  token_hash: { type: String, required: true },
934
985
  expires_at: { type: Date, required: true },
@@ -942,13 +993,13 @@ passwordResetTokenSchema.index({ customer_id: 1, expires_at: 1 });
942
993
  passwordResetTokenSchema.pre("save", function(next) {
943
994
  this.updated_at = /* @__PURE__ */ new Date();
944
995
  });
945
- var PasswordResetToken = import_mongoose32.default.models.PasswordResetToken || (0, import_mongoose32.model)("PasswordResetToken", passwordResetTokenSchema, "password_reset_tokens");
996
+ var PasswordResetToken = import_mongoose34.default.models.PasswordResetToken || (0, import_mongoose34.model)("PasswordResetToken", passwordResetTokenSchema, "password_reset_tokens");
946
997
  var PasswordResetTokens_default = PasswordResetToken;
947
998
 
948
999
  // src/auth/models/EmailVerificationTokens.ts
949
- var import_mongoose33 = __toESM(require("mongoose"), 1);
950
- var emailVerificationTokenSchema = new import_mongoose33.Schema({
951
- customer_id: { type: import_mongoose33.Schema.Types.ObjectId, ref: "Customer", required: true },
1000
+ var import_mongoose35 = __toESM(require("mongoose"), 1);
1001
+ var emailVerificationTokenSchema = new import_mongoose35.Schema({
1002
+ customer_id: { type: import_mongoose35.Schema.Types.ObjectId, ref: "Customer", required: true },
952
1003
  // Store only SHA-256 hash of the opaque email verification token. Never store the raw token.
953
1004
  token_hash: { type: String, required: true },
954
1005
  expires_at: { type: Date, required: true },
@@ -959,7 +1010,7 @@ var emailVerificationTokenSchema = new import_mongoose33.Schema({
959
1010
  emailVerificationTokenSchema.index({ token_hash: 1 }, { unique: true });
960
1011
  emailVerificationTokenSchema.index({ expires_at: 1 }, { expireAfterSeconds: 0 });
961
1012
  emailVerificationTokenSchema.index({ customer_id: 1, expires_at: 1 });
962
- var EmailVerificationToken = import_mongoose33.default.models.EmailVerificationToken || (0, import_mongoose33.model)(
1013
+ var EmailVerificationToken = import_mongoose35.default.models.EmailVerificationToken || (0, import_mongoose35.model)(
963
1014
  "EmailVerificationToken",
964
1015
  emailVerificationTokenSchema,
965
1016
  "email_verification_tokens"
@@ -967,7 +1018,7 @@ var EmailVerificationToken = import_mongoose33.default.models.EmailVerificationT
967
1018
  var EmailVerificationTokens_default = EmailVerificationToken;
968
1019
 
969
1020
  // src/payments/models/PaymentMethods.ts
970
- var import_mongoose34 = __toESM(require("mongoose"), 1);
1021
+ var import_mongoose36 = __toESM(require("mongoose"), 1);
971
1022
  var PaymentProvider = /* @__PURE__ */ ((PaymentProvider3) => {
972
1023
  PaymentProvider3["STRIPE"] = "stripe";
973
1024
  return PaymentProvider3;
@@ -979,9 +1030,9 @@ var PaymentMethodType = /* @__PURE__ */ ((PaymentMethodType2) => {
979
1030
  PaymentMethodType2["BANK_TRANSFER"] = "bank_transfer";
980
1031
  return PaymentMethodType2;
981
1032
  })(PaymentMethodType || {});
982
- var paymentMethodSchema = new import_mongoose34.Schema(
1033
+ var paymentMethodSchema = new import_mongoose36.Schema(
983
1034
  {
984
- customer_id: { type: import_mongoose34.Schema.Types.ObjectId, ref: "Customer", required: true },
1035
+ customer_id: { type: import_mongoose36.Schema.Types.ObjectId, ref: "Customer", required: true },
985
1036
  provider: {
986
1037
  type: String,
987
1038
  enum: Object.values(PaymentProvider),
@@ -1007,7 +1058,7 @@ var paymentMethodSchema = new import_mongoose34.Schema(
1007
1058
  },
1008
1059
  is_default: { type: Boolean, default: false },
1009
1060
  deleted_at: { type: Date },
1010
- deleted_by: { type: import_mongoose34.Schema.Types.ObjectId, ref: "User" }
1061
+ deleted_by: { type: import_mongoose36.Schema.Types.ObjectId, ref: "User" }
1011
1062
  },
1012
1063
  { timestamps: { createdAt: "created_at", updatedAt: "updated_at" } }
1013
1064
  );
@@ -1023,10 +1074,10 @@ paymentMethodSchema.index(
1023
1074
  { customer_id: 1, is_default: 1 },
1024
1075
  { name: "payment_methods_default_lookup" }
1025
1076
  );
1026
- var PaymentMethods_default = import_mongoose34.default.models.CustomerPaymentMethod || (0, import_mongoose34.model)("CustomerPaymentMethod", paymentMethodSchema, "customer_payment_methods");
1077
+ var PaymentMethods_default = import_mongoose36.default.models.CustomerPaymentMethod || (0, import_mongoose36.model)("CustomerPaymentMethod", paymentMethodSchema, "customer_payment_methods");
1027
1078
 
1028
1079
  // src/payments/models/Payments.ts
1029
- var import_mongoose35 = __toESM(require("mongoose"), 1);
1080
+ var import_mongoose37 = __toESM(require("mongoose"), 1);
1030
1081
  var PaymentProvider2 = /* @__PURE__ */ ((PaymentProvider3) => {
1031
1082
  PaymentProvider3["STRIPE"] = "stripe";
1032
1083
  return PaymentProvider3;
@@ -1046,11 +1097,11 @@ var TransactionMethod = /* @__PURE__ */ ((TransactionMethod2) => {
1046
1097
  TransactionMethod2["BANK_TRANSFER"] = "bank_transfer";
1047
1098
  return TransactionMethod2;
1048
1099
  })(TransactionMethod || {});
1049
- var orderPaymentSchema = new import_mongoose35.Schema(
1100
+ var orderPaymentSchema = new import_mongoose37.Schema(
1050
1101
  {
1051
- order_id: { type: import_mongoose35.Schema.Types.ObjectId, ref: "Order", required: true },
1052
- customer_id: { type: import_mongoose35.Schema.Types.ObjectId, ref: "Customer", required: true },
1053
- payment_method_id: { type: import_mongoose35.Schema.Types.ObjectId, ref: "ClientPaymentMethod" },
1102
+ order_id: { type: import_mongoose37.Schema.Types.ObjectId, ref: "Order", required: true },
1103
+ customer_id: { type: import_mongoose37.Schema.Types.ObjectId, ref: "Customer", required: true },
1104
+ payment_method_id: { type: import_mongoose37.Schema.Types.ObjectId, ref: "ClientPaymentMethod" },
1054
1105
  provider: {
1055
1106
  type: String,
1056
1107
  enum: Object.values(PaymentProvider2),
@@ -1073,7 +1124,7 @@ var orderPaymentSchema = new import_mongoose35.Schema(
1073
1124
  amount: { type: Number, required: true, min: 0 },
1074
1125
  currency: { type: String, required: true, default: "MXN" },
1075
1126
  deleted_at: { type: Date },
1076
- deleted_by: { type: import_mongoose35.Schema.Types.ObjectId, ref: "User" }
1127
+ deleted_by: { type: import_mongoose37.Schema.Types.ObjectId, ref: "User" }
1077
1128
  },
1078
1129
  { timestamps: { createdAt: "created_at", updatedAt: "updated_at" } }
1079
1130
  );
@@ -1097,7 +1148,7 @@ orderPaymentSchema.index(
1097
1148
  { provider_payment_id: 1 },
1098
1149
  { name: "order_payments_provider_payment_id" }
1099
1150
  );
1100
- var Payments_default = import_mongoose35.default.models.OrderPayment || (0, import_mongoose35.model)("OrderPayment", orderPaymentSchema, "order_payments");
1151
+ var Payments_default = import_mongoose37.default.models.OrderPayment || (0, import_mongoose37.model)("OrderPayment", orderPaymentSchema, "order_payments");
1101
1152
  // Annotate the CommonJS export names for ESM import in node:
1102
1153
  0 && (module.exports = {
1103
1154
  Announcement,
@@ -1105,6 +1156,7 @@ var Payments_default = import_mongoose35.default.models.OrderPayment || (0, impo
1105
1156
  ArticleClass,
1106
1157
  ArticleGroup,
1107
1158
  ArticlePrice,
1159
+ ArticleView,
1108
1160
  Cart,
1109
1161
  Category,
1110
1162
  Client,
@@ -1138,6 +1190,7 @@ var Payments_default = import_mongoose35.default.models.OrderPayment || (0, impo
1138
1190
  QuoteStatus,
1139
1191
  QuoteTerm,
1140
1192
  RefreshToken,
1193
+ State,
1141
1194
  Status,
1142
1195
  SyncLog,
1143
1196
  SyncLogAction,