@fesmex/models 0.1.22 → 0.1.24

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
+ Cart: () => Carts_default,
37
38
  Client: () => Clients_default,
38
39
  ClientAddress: () => ClientsAddress_default,
39
40
  ClientContact: () => ClientsContact_default,
@@ -220,7 +221,7 @@ var ClientsSalesEmployee_default = import_mongoose7.default.models.ClientSalesEm
220
221
  );
221
222
 
222
223
  // src/inventory/models/Article.ts
223
- var import_mongoose8 = require("mongoose");
224
+ var import_mongoose8 = __toESM(require("mongoose"), 1);
224
225
  var articleSchema = new import_mongoose8.Schema({
225
226
  article_number: { type: String, required: true, unique: true },
226
227
  // SAP ItemCode
@@ -232,26 +233,26 @@ var articleSchema = new import_mongoose8.Schema({
232
233
  created_at: { type: Date, default: Date.now },
233
234
  updated_at: { type: Date }
234
235
  });
235
- var Article_default = import_mongoose8.models.Article || (0, import_mongoose8.model)("Article", articleSchema, "articles");
236
+ var Article_default = import_mongoose8.default.models.Article || (0, import_mongoose8.model)("Article", articleSchema, "articles");
236
237
 
237
238
  // src/inventory/models/ArticleGroups.ts
238
- var import_mongoose9 = require("mongoose");
239
+ var import_mongoose9 = __toESM(require("mongoose"), 1);
239
240
  var articleGroupSchema = new import_mongoose9.Schema({
240
241
  name: { type: String, required: true },
241
242
  description: { type: String }
242
243
  });
243
- var ArticleGroups_default = import_mongoose9.models.ArticleGroup || (0, import_mongoose9.model)("ArticleGroup", articleGroupSchema, "article_groups");
244
+ var ArticleGroups_default = import_mongoose9.default.models.ArticleGroup || (0, import_mongoose9.model)("ArticleGroup", articleGroupSchema, "article_groups");
244
245
 
245
246
  // src/inventory/models/ArticleClasses.ts
246
- var import_mongoose10 = require("mongoose");
247
+ var import_mongoose10 = __toESM(require("mongoose"), 1);
247
248
  var articleClassSchema = new import_mongoose10.Schema({
248
249
  name: { type: String, required: true },
249
250
  description: { type: String }
250
251
  });
251
- var ArticleClasses_default = import_mongoose10.models.ArticleClass || (0, import_mongoose10.model)("ArticleClass", articleClassSchema, "article_classes");
252
+ var ArticleClasses_default = import_mongoose10.default.models.ArticleClass || (0, import_mongoose10.model)("ArticleClass", articleClassSchema, "article_classes");
252
253
 
253
254
  // src/inventory/models/ArticlePrices.ts
254
- var import_mongoose11 = require("mongoose");
255
+ var import_mongoose11 = __toESM(require("mongoose"), 1);
255
256
  var articlePriceSchema = new import_mongoose11.Schema({
256
257
  article_id: { type: import_mongoose11.Types.ObjectId, ref: "Article", required: true },
257
258
  price_list_id: { type: import_mongoose11.Types.ObjectId, ref: "PriceList", required: true },
@@ -262,19 +263,19 @@ var articlePriceSchema = new import_mongoose11.Schema({
262
263
  created_at: { type: Date, default: Date.now },
263
264
  updated_at: { type: Date }
264
265
  });
265
- var ArticlePrices_default = import_mongoose11.models.ArticlePrice || (0, import_mongoose11.model)("ArticlePrice", articlePriceSchema, "article_prices");
266
+ var ArticlePrices_default = import_mongoose11.default.models.ArticlePrice || (0, import_mongoose11.model)("ArticlePrice", articlePriceSchema, "article_prices");
266
267
 
267
268
  // src/inventory/models/Currencies.ts
268
- var import_mongoose12 = require("mongoose");
269
+ var import_mongoose12 = __toESM(require("mongoose"), 1);
269
270
  var currencySchema = new import_mongoose12.Schema({
270
271
  code: { type: String, required: true, unique: true },
271
272
  symbol: { type: String, required: true },
272
273
  name: { type: String, required: true }
273
274
  });
274
- var Currencies_default = import_mongoose12.models.Currency || (0, import_mongoose12.model)("Currency", currencySchema, "currencies");
275
+ var Currencies_default = import_mongoose12.default.models.Currency || (0, import_mongoose12.model)("Currency", currencySchema, "currencies");
275
276
 
276
277
  // src/inventory/models/Warehouses.ts
277
- var import_mongoose13 = require("mongoose");
278
+ var import_mongoose13 = __toESM(require("mongoose"), 1);
278
279
  var warehouseSchema = new import_mongoose13.Schema({
279
280
  code: { type: String, required: true, unique: true },
280
281
  name: { type: String, required: true },
@@ -282,10 +283,10 @@ var warehouseSchema = new import_mongoose13.Schema({
282
283
  created_at: { type: Date, default: Date.now },
283
284
  updated_at: { type: Date }
284
285
  });
285
- var Warehouses_default = import_mongoose13.models.Warehouse || (0, import_mongoose13.model)("Warehouse", warehouseSchema, "warehouses");
286
+ var Warehouses_default = import_mongoose13.default.models.Warehouse || (0, import_mongoose13.model)("Warehouse", warehouseSchema, "warehouses");
286
287
 
287
288
  // src/inventory/models/InventoryStocks.ts
288
- var import_mongoose14 = require("mongoose");
289
+ var import_mongoose14 = __toESM(require("mongoose"), 1);
289
290
  var inventoryStockSchema = new import_mongoose14.Schema({
290
291
  article_id: { type: import_mongoose14.Types.ObjectId, ref: "Article", required: true },
291
292
  warehouse_id: { type: import_mongoose14.Types.ObjectId, ref: "Warehouse", required: true },
@@ -294,20 +295,20 @@ var inventoryStockSchema = new import_mongoose14.Schema({
294
295
  max_stock: { type: Number },
295
296
  updated_at: { type: Date, default: Date.now }
296
297
  });
297
- var InventoryStocks_default = import_mongoose14.models.InventoryStock || (0, import_mongoose14.model)("InventoryStock", inventoryStockSchema, "inventory_stocks");
298
+ var InventoryStocks_default = import_mongoose14.default.models.InventoryStock || (0, import_mongoose14.model)("InventoryStock", inventoryStockSchema, "inventory_stocks");
298
299
 
299
300
  // src/inventory/models/PriceLists.ts
300
- var import_mongoose15 = require("mongoose");
301
+ var import_mongoose15 = __toESM(require("mongoose"), 1);
301
302
  var priceListSchema = new import_mongoose15.Schema({
302
303
  number: { type: String, required: true, unique: true },
303
304
  name: { type: String, required: true },
304
305
  created_at: { type: Date, default: Date.now },
305
306
  updated_at: { type: Date }
306
307
  });
307
- var PriceLists_default = import_mongoose15.models.PriceList || (0, import_mongoose15.model)("PriceList", priceListSchema, "price_lists");
308
+ var PriceLists_default = import_mongoose15.default.models.PriceList || (0, import_mongoose15.model)("PriceList", priceListSchema, "price_lists");
308
309
 
309
310
  // src/quotes/models/Quote.ts
310
- var import_mongoose16 = require("mongoose");
311
+ var import_mongoose16 = __toESM(require("mongoose"), 1);
311
312
  var QuoteStatus = /* @__PURE__ */ ((QuoteStatus2) => {
312
313
  QuoteStatus2["OPPORTUNITY"] = "OPPORTUNITY";
313
314
  QuoteStatus2["QUOTE"] = "QUOTE";
@@ -369,10 +370,10 @@ var quoteSchema = new import_mongoose16.Schema(
369
370
  },
370
371
  { timestamps: { createdAt: "created_at", updatedAt: "updated_at" } }
371
372
  );
372
- var Quote_default = import_mongoose16.models.Quote || (0, import_mongoose16.model)("Quote", quoteSchema, "quotes");
373
+ var Quote_default = import_mongoose16.default.models.Quote || (0, import_mongoose16.model)("Quote", quoteSchema, "quotes");
373
374
 
374
375
  // src/quotes/models/QuoteArticle.ts
375
- var import_mongoose17 = require("mongoose");
376
+ var import_mongoose17 = __toESM(require("mongoose"), 1);
376
377
  var quoteArticleSchema = new import_mongoose17.Schema(
377
378
  {
378
379
  quote_id: { type: import_mongoose17.Schema.Types.ObjectId, ref: "Quote", required: true },
@@ -391,10 +392,10 @@ var quoteArticleSchema = new import_mongoose17.Schema(
391
392
  },
392
393
  { timestamps: { createdAt: "created_at", updatedAt: "updated_at" } }
393
394
  );
394
- var QuoteArticle_default = import_mongoose17.models.QuoteArticle || (0, import_mongoose17.model)("QuoteArticle", quoteArticleSchema, "quote_articles");
395
+ var QuoteArticle_default = import_mongoose17.default.models.QuoteArticle || (0, import_mongoose17.model)("QuoteArticle", quoteArticleSchema, "quote_articles");
395
396
 
396
397
  // src/quotes/models/QuoteArticleExtra.ts
397
- var import_mongoose18 = require("mongoose");
398
+ var import_mongoose18 = __toESM(require("mongoose"), 1);
398
399
  var quoteArticleExtraSchema = new import_mongoose18.Schema(
399
400
  {
400
401
  quote_article_id: {
@@ -410,10 +411,10 @@ var quoteArticleExtraSchema = new import_mongoose18.Schema(
410
411
  },
411
412
  { timestamps: { createdAt: "created_at", updatedAt: "updated_at" } }
412
413
  );
413
- var QuoteArticleExtra_default = import_mongoose18.models.QuoteArticleExtra || (0, import_mongoose18.model)("QuoteArticleExtra", quoteArticleExtraSchema, "quote_article_extras");
414
+ var QuoteArticleExtra_default = import_mongoose18.default.models.QuoteArticleExtra || (0, import_mongoose18.model)("QuoteArticleExtra", quoteArticleExtraSchema, "quote_article_extras");
414
415
 
415
416
  // src/quotes/models/QuoteContact.ts
416
- var import_mongoose19 = require("mongoose");
417
+ var import_mongoose19 = __toESM(require("mongoose"), 1);
417
418
  var quoteContactSchema = new import_mongoose19.Schema({
418
419
  quote_id: { type: import_mongoose19.Schema.Types.ObjectId, ref: "Quote", required: true },
419
420
  name: String,
@@ -422,10 +423,10 @@ var quoteContactSchema = new import_mongoose19.Schema({
422
423
  pipedrive_id: String,
423
424
  created_at: { type: Date, default: Date.now }
424
425
  });
425
- var QuoteContact_default = import_mongoose19.models.QuoteContact || (0, import_mongoose19.model)("QuoteContact", quoteContactSchema, "quote_contacts");
426
+ var QuoteContact_default = import_mongoose19.default.models.QuoteContact || (0, import_mongoose19.model)("QuoteContact", quoteContactSchema, "quote_contacts");
426
427
 
427
428
  // src/quotes/models/QuoteTerm.ts
428
- var import_mongoose20 = require("mongoose");
429
+ var import_mongoose20 = __toESM(require("mongoose"), 1);
429
430
  var quoteTermSchema = new import_mongoose20.Schema(
430
431
  {
431
432
  title: String,
@@ -437,7 +438,7 @@ var quoteTermSchema = new import_mongoose20.Schema(
437
438
  },
438
439
  { timestamps: { createdAt: "created_at", updatedAt: "updated_at" } }
439
440
  );
440
- var QuoteTerm_default = import_mongoose20.models.QuoteTerm || (0, import_mongoose20.model)("QuoteTerm", quoteTermSchema, "quote_terms");
441
+ var QuoteTerm_default = import_mongoose20.default.models.QuoteTerm || (0, import_mongoose20.model)("QuoteTerm", quoteTermSchema, "quote_terms");
441
442
 
442
443
  // src/customers/models/Customers.ts
443
444
  var import_mongoose21 = __toESM(require("mongoose"), 1);
@@ -470,7 +471,8 @@ customerSchema.pre("save", async function(next) {
470
471
  }
471
472
  next();
472
473
  });
473
- var Customers_default = import_mongoose21.default.models.Customer || (0, import_mongoose21.model)("Customer", customerSchema, "customers");
474
+ var Customer = import_mongoose21.default.models.Customer || (0, import_mongoose21.model)("Customer", customerSchema, "customers");
475
+ var Customers_default = Customer;
474
476
 
475
477
  // src/customers/models/FiscalProfileType.ts
476
478
  var import_mongoose22 = __toESM(require("mongoose"), 1);
@@ -484,7 +486,8 @@ var fiscalProfileSchema = new import_mongoose22.Schema({
484
486
  created_at: { type: Date, default: Date.now },
485
487
  updated_at: { type: Date }
486
488
  });
487
- var FiscalProfileType_default = import_mongoose22.default.models.FiscalProfile || (0, import_mongoose22.model)("FiscalProfile", fiscalProfileSchema, "fiscal_profiles");
489
+ var FiscalProfile = import_mongoose22.default.models.FiscalProfile || (0, import_mongoose22.model)("FiscalProfile", fiscalProfileSchema, "fiscal_profiles");
490
+ var FiscalProfileType_default = FiscalProfile;
488
491
 
489
492
  // src/orders/models/Orders.ts
490
493
  var import_mongoose23 = __toESM(require("mongoose"), 1);
@@ -715,6 +718,27 @@ var announcementSchema = new import_mongoose27.Schema({
715
718
  }
716
719
  });
717
720
  var Announcements_default = import_mongoose27.default.models.Announcement || (0, import_mongoose27.model)("Announcement", announcementSchema, "announcements");
721
+
722
+ // src/carts/models/Carts.ts
723
+ var import_mongoose28 = __toESM(require("mongoose"), 1);
724
+ var cartItemSchema = new import_mongoose28.Schema(
725
+ {
726
+ article_id: { type: import_mongoose28.Types.ObjectId, ref: "Article", required: true },
727
+ quantity: { type: Number, required: true }
728
+ },
729
+ { _id: false }
730
+ );
731
+ var cartSchema = new import_mongoose28.Schema({
732
+ customer_id: {
733
+ type: import_mongoose28.Types.ObjectId,
734
+ ref: "Customer",
735
+ required: true,
736
+ unique: true
737
+ },
738
+ items: [cartItemSchema],
739
+ updated_at: { type: Date, default: Date.now }
740
+ });
741
+ var Carts_default = import_mongoose28.default.models.Cart || (0, import_mongoose28.model)("Cart", cartSchema, "carts");
718
742
  // Annotate the CommonJS export names for ESM import in node:
719
743
  0 && (module.exports = {
720
744
  Announcement,
@@ -722,6 +746,7 @@ var Announcements_default = import_mongoose27.default.models.Announcement || (0,
722
746
  ArticleClass,
723
747
  ArticleGroup,
724
748
  ArticlePrice,
749
+ Cart,
725
750
  Client,
726
751
  ClientAddress,
727
752
  ClientContact,
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts","../src/clients/models/Clients.ts","../src/clients/models/ClientsContact.ts","../src/clients/models/ClientsAddress.ts","../src/clients/models/ClientsPaymentMethod.ts","../src/clients/models/ClientsPaymentTerm.ts","../src/clients/models/ClientsPriceList.ts","../src/clients/models/ClientsSalesEmployee.ts","../src/inventory/models/Article.ts","../src/inventory/models/ArticleGroups.ts","../src/inventory/models/ArticleClasses.ts","../src/inventory/models/ArticlePrices.ts","../src/inventory/models/Currencies.ts","../src/inventory/models/Warehouses.ts","../src/inventory/models/InventoryStocks.ts","../src/inventory/models/PriceLists.ts","../src/quotes/models/Quote.ts","../src/quotes/models/QuoteArticle.ts","../src/quotes/models/QuoteArticleExtra.ts","../src/quotes/models/QuoteContact.ts","../src/quotes/models/QuoteTerm.ts","../src/customers/models/Customers.ts","../src/customers/models/FiscalProfileType.ts","../src/orders/models/Orders.ts","../src/orders/models/OrderStatusLogs.ts","../src/sap/models/SyncLog.ts","../src/announcements/models/Announcements.ts","../src/users/models/Users.ts"],"sourcesContent":["export * from \"./clients\"\nexport * from \"./inventory\"\nexport * from \"./quotes\"\nexport * from \"./customers\"\nexport * from \"./orders\"\nexport * from \"./sap\"\nexport * from \"./announcements\"\nexport * from \"./users\"\n","import mongoose, { Schema, model } from \"mongoose\"\n\nexport interface ClientType {\n\tsn_code?: string | null\n\tsn_name?: string | null\n\ttax_id?: string | null\n\tcurrency?: string | null\n\tphone_1?: string | null\n\temail?: string | null\n\tcomments?: string | null\n\tpipedrive_id?: string | null\n\tsap_id?: string | null\n\tdeleted_at?: Date | null\n\tdeleted_by?: string | null\n\tcreated_at?: Date\n\tupdated_at?: Date\n}\n\nconst clientSchema = new Schema<ClientType>(\n\t{\n\t\tsn_code: { type: String, index: true },\n\t\tsn_name: { type: String, required: true },\n\t\ttax_id: { type: String },\n\t\tcurrency: { type: String },\n\t\tphone_1: { type: String },\n\t\temail: { type: String },\n\t\tcomments: { type: String },\n\t\tpipedrive_id: { type: String },\n\t\tsap_id: { type: String },\n\t\tdeleted_at: { type: Date, default: null },\n\t\tdeleted_by: { type: String, default: null },\n\t},\n\t{ timestamps: { createdAt: \"created_at\", updatedAt: \"updated_at\" } }\n)\n\nexport default mongoose.models.Client || model<ClientType>(\"Client\", clientSchema, \"clients\")\n","import mongoose, { Schema, model, Types } from \"mongoose\"\n\nexport interface ClientContactType {\n\tclient_id: Types.ObjectId\n\tcontact_person_name?: string | null\n\tfirst_name?: string | null\n\tlast_name?: string | null\n\tcontact_phone?: string | null\n\tcontact_email?: string | null\n\tpipedrive_id?: string | null\n\tcreated_at?: Date\n\tupdated_at?: Date\n}\n\nconst clientContactSchema = new Schema<ClientContactType>(\n\t{\n\t\tclient_id: {\n\t\t\ttype: Schema.Types.ObjectId,\n\t\t\tref: \"Client\",\n\t\t\trequired: true,\n\t\t\tindex: true,\n\t\t},\n\t\tcontact_person_name: { type: String },\n\t\tfirst_name: { type: String },\n\t\tlast_name: { type: String },\n\t\tcontact_phone: { type: String },\n\t\tcontact_email: { type: String },\n\t\tpipedrive_id: { type: String },\n\t},\n\t{ timestamps: { createdAt: \"created_at\", updatedAt: \"updated_at\" } }\n)\n\nexport default mongoose.models.ClientContact || model<ClientContactType>(\"ClientContact\", clientContactSchema, \"client_contacts\")","import mongoose, { Schema, model, Types } from \"mongoose\"\n\nexport interface ClientAddressType {\n\tclient_id: Types.ObjectId\n\taddress_name?: string | null\n\tstreet?: string | null\n\tneighborhood?: string | null\n\tpostal_code?: string | null\n\tcity?: string | null\n\tstate?: string | null\n\tcountry?: string | null\n\tcreated_at?: Date\n\tupdated_at?: Date\n}\n\nconst clientAddressSchema = new Schema<ClientAddressType>(\n\t{\n\t\tclient_id: {\n\t\t\ttype: Schema.Types.ObjectId,\n\t\t\tref: \"Client\",\n\t\t\trequired: true,\n\t\t\tindex: true,\n\t\t},\n\t\taddress_name: { type: String },\n\t\tstreet: { type: String },\n\t\tneighborhood: { type: String },\n\t\tpostal_code: { type: String },\n\t\tcity: { type: String },\n\t\tstate: { type: String },\n\t\tcountry: { type: String },\n\t},\n\t{ timestamps: { createdAt: \"created_at\", updatedAt: \"updated_at\" } }\n)\n\nexport default mongoose.models.ClientAddress || model<ClientAddressType>(\n\t\"ClientAddress\",\n\tclientAddressSchema,\n\t\"client_addresses\"\n)\n","import mongoose, { Schema, model, Types } from \"mongoose\"\n\nexport interface ClientPaymentMethodType {\n\tclient_id: Types.ObjectId\n\tcode?: string | null\n\tdescription?: string | null\n\tcreated_at?: Date\n\tupdated_at?: Date\n}\n\nconst clientPaymentMethodSchema = new Schema<ClientPaymentMethodType>(\n\t{\n\t\tclient_id: {\n\t\t\ttype: Schema.Types.ObjectId,\n\t\t\tref: \"Client\",\n\t\t\trequired: true,\n\t\t\tunique: true,\n\t\t},\n\t\tcode: { type: String },\n\t\tdescription: { type: String },\n\t},\n\t{ timestamps: { createdAt: \"created_at\", updatedAt: \"updated_at\" } }\n)\n\nexport default mongoose.models.ClientPaymentMethod || model<ClientPaymentMethodType>(\n\t\"ClientPaymentMethod\",\n\tclientPaymentMethodSchema,\n\t\"client_payment_methods\"\n)\n","import mongoose, { Schema, model, Types } from \"mongoose\"\n\nexport interface ClientPaymentTermType {\n\tclient_id: Types.ObjectId\n\tcode?: string | null\n\tname?: string | null\n\tcreated_at?: Date\n\tupdated_at?: Date\n}\n\nconst clientPaymentTermSchema = new Schema<ClientPaymentTermType>(\n\t{\n\t\tclient_id: {\n\t\t\ttype: Schema.Types.ObjectId,\n\t\t\tref: \"Client\",\n\t\t\trequired: true,\n\t\t\tunique: true,\n\t\t},\n\t\tcode: { type: String },\n\t\tname: { type: String },\n\t},\n\t{ timestamps: { createdAt: \"created_at\", updatedAt: \"updated_at\" } }\n)\n\nexport default mongoose.models.ClientPaymentTerm || model<ClientPaymentTermType>(\n\t\"ClientPaymentTerm\",\n\tclientPaymentTermSchema,\n\t\"client_payment_terms\"\n)\n","import mongoose, { Schema, model, Types } from \"mongoose\"\n\nexport interface ClientPriceListType {\n\tclient_id: Types.ObjectId\n\tnumber?: string | null\n\tname?: string | null\n\tcreated_at?: Date\n\tupdated_at?: Date\n}\n\nconst clientPriceListSchema = new Schema<ClientPriceListType>(\n\t{\n\t\tclient_id: {\n\t\t\ttype: Schema.Types.ObjectId,\n\t\t\tref: \"Client\",\n\t\t\trequired: true,\n\t\t\tunique: true,\n\t\t},\n\t\tnumber: { type: String },\n\t\tname: { type: String },\n\t},\n\t{ timestamps: { createdAt: \"created_at\", updatedAt: \"updated_at\" } }\n)\n\nexport default mongoose.models.ClientPriceList || model<ClientPriceListType>(\n\t\"ClientPriceList\",\n\tclientPriceListSchema,\n\t\"client_price_lists\"\n)\n","import mongoose, { Schema, model, Types } from \"mongoose\"\n\nexport interface ClientSalesEmployeeType {\n\tclient_id: Types.ObjectId\n\temployee_code?: string | null\n\temployee_name?: string | null\n\tcreated_at?: Date\n\tupdated_at?: Date\n}\n\nconst clientSalesEmployeeSchema = new Schema<ClientSalesEmployeeType>(\n\t{\n\t\tclient_id: {\n\t\t\ttype: Schema.Types.ObjectId,\n\t\t\tref: \"Client\",\n\t\t\trequired: true,\n\t\t\tunique: true,\n\t\t},\n\t\temployee_code: { type: String },\n\t\temployee_name: { type: String },\n\t},\n\t{ timestamps: { createdAt: \"created_at\", updatedAt: \"updated_at\" } }\n)\n\nexport default mongoose.models.ClientSalesEmployee || model<ClientSalesEmployeeType>(\n\t\"ClientSalesEmployee\",\n\tclientSalesEmployeeSchema,\n\t\"client_sales_employees\"\n)\n","import { Schema, model, models, Types } from \"mongoose\"\n\nconst articleSchema = new Schema({\n\tarticle_number: { type: String, required: true, unique: true }, // SAP ItemCode\n\tdescription: { type: String, required: true },\n\tunit: { type: String, required: true },\n\tbrand: { type: String },\n\tmodel: { type: String },\n\tgroup_id: { type: Types.ObjectId, ref: \"ArticleGroup\", required: true },\n\tcreated_at: { type: Date, default: Date.now },\n\tupdated_at: { type: Date },\n})\n\nexport default models.Article || model(\"Article\", articleSchema, \"articles\")\n","import { Schema, model, models } from \"mongoose\"\n\nconst articleGroupSchema = new Schema({\n\tname: { type: String, required: true },\n\tdescription: { type: String },\n})\n\nexport default models.ArticleGroup || model(\"ArticleGroup\", articleGroupSchema, \"article_groups\")\n","import { Schema, model, models } from \"mongoose\"\n\nconst articleClassSchema = new Schema({\n\tname: { type: String, required: true },\n\tdescription: { type: String },\n})\n\nexport default models.ArticleClass || model(\"ArticleClass\", articleClassSchema, \"article_classes\")\n","import { Schema, model, models, Types } from \"mongoose\"\n\nconst articlePriceSchema = new Schema({\n\tarticle_id: { type: Types.ObjectId, ref: \"Article\", required: true },\n\tprice_list_id: { type: Types.ObjectId, ref: \"PriceList\", required: true },\n\tcurrency_id: { type: Types.ObjectId, ref: \"Currency\", required: true },\n\tprice: { type: Number, required: true },\n\tvalid_from: { type: Date },\n\tvalid_to: { type: Date },\n\tcreated_at: { type: Date, default: Date.now },\n\tupdated_at: { type: Date },\n})\n\nexport default models.ArticlePrice || model(\"ArticlePrice\", articlePriceSchema, \"article_prices\")\n","import { Schema, model, models } from \"mongoose\"\n\nconst currencySchema = new Schema({\n\tcode: { type: String, required: true, unique: true },\n\tsymbol: { type: String, required: true },\n\tname: { type: String, required: true },\n})\n\nexport default models.Currency || model(\"Currency\", currencySchema, \"currencies\")\n","import { Schema, model, models } from \"mongoose\"\n\nconst warehouseSchema = new Schema({\n\tcode: { type: String, required: true, unique: true },\n\tname: { type: String, required: true },\n\tlocation: { type: String },\n\tcreated_at: { type: Date, default: Date.now },\n\tupdated_at: { type: Date },\n})\n\nexport default models.Warehouse || model(\"Warehouse\", warehouseSchema, \"warehouses\")\n","import { Schema, model, models, Types } from \"mongoose\"\n\nconst inventoryStockSchema = new Schema({\n\tarticle_id: { type: Types.ObjectId, ref: \"Article\", required: true },\n\twarehouse_id: { type: Types.ObjectId, ref: \"Warehouse\", required: true },\n\tcount: { type: Number, required: true },\n\tmin_stock: { type: Number },\n\tmax_stock: { type: Number },\n\tupdated_at: { type: Date, default: Date.now },\n})\n\nexport default models.InventoryStock || model(\"InventoryStock\", inventoryStockSchema, \"inventory_stocks\")\n","import { Schema, model, models } from \"mongoose\"\n\nconst priceListSchema = new Schema({\n\tnumber: { type: String, required: true, unique: true },\n\tname: { type: String, required: true },\n\tcreated_at: { type: Date, default: Date.now },\n\tupdated_at: { type: Date },\n})\n\nexport default models.PriceList || model(\"PriceList\", priceListSchema, \"price_lists\")\n","import { Schema, model, models } from \"mongoose\"\n\nexport enum QuoteStatus {\n\tOPPORTUNITY = \"OPPORTUNITY\",\n\tQUOTE = \"QUOTE\",\n\tFOLLOWING = \"FOLLOWING\",\n\tNEGOTIATION = \"NEGOTIATION\",\n}\n\nexport enum Status {\n\tOPEN = \"OPEN\",\n\tWIN = \"WIN\",\n\tLOST = \"LOST\",\n\tDELETE = \"DELETE\",\n}\n\nexport enum CreatedMethod {\n\tMANUAL = \"MANUAL\",\n\tCSV = \"CSV\",\n}\n\nconst quoteSchema = new Schema(\n\t{\n\t\tquote_number: { type: Number, required: true },\n\t\tquote_revision: { type: Number, default: 0 },\n\t\tquote_ref: { type: String },\n\t\tcompany: { type: String },\n\t\tcompany_id: { type: Schema.Types.ObjectId, ref: \"Client\", required: true },\n\t\tcompany_pipedrive_id: { type: String },\n\t\tcontact_id: { type: Schema.Types.ObjectId, ref: \"ClientContact\" },\n\t\tproject_name: { type: String },\n\t\tproject_lab: { type: String },\n\t\tpayment_condition: { type: String },\n\t\tpayment_exp: { type: String },\n\t\tterms_ids: [{ type: Schema.Types.ObjectId, ref: \"QuoteTerm\" }],\n\t\tcurrency_id: { type: Schema.Types.ObjectId, ref: \"Currency\" },\n\t\tiva: { type: String },\n\t\tdate: { type: Date },\n\t\tstatus: { type: String, enum: Object.values(Status), default: Status.OPEN },\n\t\tquote_status: {\n\t\t\ttype: String,\n\t\t\tenum: Object.values(QuoteStatus),\n\t\t\tdefault: QuoteStatus.OPPORTUNITY,\n\t\t},\n\t\tsap_id: { type: String },\n\t\tsap_quotation_entry: { type: Number },\n\t\tsap_order_entry: { type: Number },\n\t\tpipedrive_id: { type: String },\n\t\tshould_sync: { type: Boolean, default: false },\n\t\tpdf_download_link: { type: String },\n\t\tnotes: { type: String },\n\t\tcreated_method: {\n\t\t\ttype: String,\n\t\t\tenum: Object.values(CreatedMethod),\n\t\t\tdefault: CreatedMethod.MANUAL,\n\t\t},\n\t\tcreated_by: { type: Schema.Types.ObjectId, ref: \"User\" },\n\t\tupdated_by: { type: Schema.Types.ObjectId, ref: \"User\" },\n\t\tdeleted_by: { type: Schema.Types.ObjectId, ref: \"User\" },\n\t\tdeleted_at: { type: Date },\n\t},\n\t{ timestamps: { createdAt: \"created_at\", updatedAt: \"updated_at\" } }\n)\n\nexport default models.Quote || model(\"Quote\", quoteSchema, \"quotes\")\n","import { Schema, model, models } from \"mongoose\"\n\nconst quoteArticleSchema = new Schema(\n\t{\n\t\tquote_id: { type: Schema.Types.ObjectId, ref: \"Quote\", required: true },\n\t\tarticle_id: { type: Schema.Types.ObjectId, ref: \"Article\" },\n\t\tarticle_number: { type: String },\n\t\tdescription: { type: String },\n\t\tdelivery: { type: String },\n\t\tquantity: { type: Number },\n\t\tprice: { type: Number },\n\t\tunit_price: { type: Number },\n\t\toriginal_price: { type: Number },\n\t\ttotal: { type: Number },\n\t\tutility: { type: Number },\n\t\ttype: { type: String },\n\t\textra_id: { type: Schema.Types.ObjectId, ref: \"QuoteArticleExtra\" },\n\t},\n\t{ timestamps: { createdAt: \"created_at\", updatedAt: \"updated_at\" } }\n)\n\nexport default models.QuoteArticle || model(\"QuoteArticle\", quoteArticleSchema, \"quote_articles\")\n","import { Schema, model, models } from \"mongoose\"\n\nconst quoteArticleExtraSchema = new Schema(\n\t{\n\t\tquote_article_id: {\n\t\t\ttype: Schema.Types.ObjectId,\n\t\t\tref: \"QuoteArticle\",\n\t\t\trequired: true,\n\t\t},\n\t\tmultiplier: Number,\n\t\tusa_freight: Number,\n\t\tusa_expenses: Number,\n\t\tduty: Number,\n\t\tmex_freight: Number,\n\t},\n\t{ timestamps: { createdAt: \"created_at\", updatedAt: \"updated_at\" } }\n)\n\nexport default models.QuoteArticleExtra || model(\"QuoteArticleExtra\", quoteArticleExtraSchema, \"quote_article_extras\")\n","import { Schema, model, models } from \"mongoose\"\n\nconst quoteContactSchema = new Schema({\n\tquote_id: { type: Schema.Types.ObjectId, ref: \"Quote\", required: true },\n\tname: String,\n\temail: String,\n\tmobile: String,\n\tpipedrive_id: String,\n\tcreated_at: { type: Date, default: Date.now },\n})\n\nexport default models.QuoteContact || model(\"QuoteContact\", quoteContactSchema, \"quote_contacts\")\n","import { Schema, model, models } from \"mongoose\"\n\nconst quoteTermSchema = new Schema(\n\t{\n\t\ttitle: String,\n\t\tcontent: { type: String, required: true },\n\t\tcategory: String,\n\t\tis_active: { type: Boolean, default: true },\n\t\tcreated_by: String,\n\t\tupdated_by: String,\n\t},\n\t{ timestamps: { createdAt: \"created_at\", updatedAt: \"updated_at\" } }\n)\n\nexport default models.QuoteTerm || model(\"QuoteTerm\", quoteTermSchema, \"quote_terms\")\n","import mongoose, { Schema, model } from \"mongoose\"\nimport bcrypt from \"bcryptjs\"\n\nexport enum CustomerStatus {\n\tACTIVE = \"active\",\n\tINACTIVE = \"inactive\",\n\tBANNED = \"banned\",\n}\n\nexport interface CustomerType {\n\tfirst_name: string\n\tlast_name: string\n\temail: string\n\tmobile?: string\n\tpassword: string\n\tstatus: CustomerStatus\n\tfiscal_profile_id?: mongoose.Types.ObjectId\n\tcreated_at: Date\n\tupdated_at?: Date\n\tdeleted_at?: Date\n}\n\nconst customerSchema = new Schema<CustomerType>({\n\tfirst_name: { type: String, required: true },\n\tlast_name: { type: String, required: true },\n\temail: { type: String, required: true, unique: true },\n\tmobile: { type: String },\n\tpassword: { type: String, required: true, select: false },\n\tstatus: {\n\t\ttype: String,\n\t\tenum: Object.values(CustomerStatus),\n\t\tdefault: CustomerStatus.ACTIVE,\n\t},\n\tfiscal_profile_id: { type: Schema.Types.ObjectId, ref: \"FiscalProfile\" },\n\tcreated_at: { type: Date, default: Date.now },\n\tupdated_at: { type: Date },\n\tdeleted_at: { type: Date },\n})\n\n// Hash password\ncustomerSchema.pre(\"save\", async function (next) {\n\tif (this.isModified(\"password\")) {\n\t\tthis.password = await bcrypt.hash(this.password, 12)\n\t}\n\tnext()\n})\n\nexport default mongoose.models.Customer || model<CustomerType>(\"Customer\", customerSchema, \"customers\")\n","import mongoose, { Schema, model } from \"mongoose\"\n\nexport interface FiscalProfileType {\n\tcustomer_id: mongoose.Types.ObjectId\n\trfc: string\n\trazon_social: string\n\tuso_cfdi: string\n\tregimen_fiscal: string\n\tcp: string // código postal\n\tcreated_at: Date\n\tupdated_at?: Date\n}\n\nconst fiscalProfileSchema = new Schema<FiscalProfileType>({\n\tcustomer_id: { type: Schema.Types.ObjectId, ref: \"Customer\", required: true },\n\trfc: { type: String, required: true },\n\trazon_social: { type: String, required: true },\n\tuso_cfdi: { type: String, required: true },\n\tregimen_fiscal: { type: String, required: true },\n\tcp: { type: String, required: true },\n\tcreated_at: { type: Date, default: Date.now },\n\tupdated_at: { type: Date },\n})\n\nexport default mongoose.models.FiscalProfile || model<FiscalProfileType>(\"FiscalProfile\", fiscalProfileSchema, \"fiscal_profiles\")\n","import mongoose, { Schema, model } from \"mongoose\"\n\nexport enum OrderStatus {\n\tPENDING = \"pending\",\n\tCONFIRMED = \"confirmed\",\n\tSHIPPED = \"shipped\",\n\tCANCELLED = \"cancelled\",\n\tCOMPLETED = \"completed\",\n}\n\nconst orderItemSchema = new Schema(\n\t{\n\t\tarticle_id: { type: Schema.Types.ObjectId, ref: \"Article\", required: true },\n\t\tquantity: { type: Number, required: true },\n\t\tunit_price: { type: Number, required: true },\n\t\ttotal: { type: Number, required: true },\n\t},\n\t{ _id: false }\n)\n\nconst orderSchema = new Schema({\n\tcustomer_id: { type: Schema.Types.ObjectId, ref: \"Customer\", required: true },\n\titems: [orderItemSchema],\n\tstatus: {\n\t\ttype: String,\n\t\tenum: Object.values(OrderStatus),\n\t\tdefault: OrderStatus.PENDING,\n\t},\n\ttracking_number: { type: String },\n\ttotal: { type: Number, required: true },\n\tnotes: { type: String },\n\tcreated_at: { type: Date, default: Date.now },\n\tupdated_at: { type: Date },\n})\n\nexport default mongoose.models.Order || model(\"Order\", orderSchema, \"orders\")\n","import mongoose, { Schema, model, Types } from \"mongoose\"\nimport { OrderStatus } from \"./Orders\"\n\nexport interface OrderStatusLogType {\n\torder_id: Types.ObjectId\n\tstatus: OrderStatus\n\tchanged_by: Types.ObjectId\n\tchanged_at: Date\n\tnote?: string\n}\n\nconst orderStatusLogSchema = new Schema<OrderStatusLogType>({\n\torder_id: {\n\t\ttype: Schema.Types.ObjectId,\n\t\tref: \"Order\",\n\t\trequired: true,\n\t},\n\tstatus: {\n\t\ttype: String,\n\t\tenum: Object.values(OrderStatus),\n\t\trequired: true,\n\t},\n\tchanged_by: {\n\t\ttype: Schema.Types.ObjectId,\n\t\tref: \"User\",\n\t\trequired: true,\n\t},\n\tchanged_at: {\n\t\ttype: Date,\n\t\tdefault: Date.now,\n\t},\n\tnote: {\n\t\ttype: String,\n\t},\n})\n\nexport default mongoose.models.OrderStatusLog || model<OrderStatusLogType>(\"OrderStatusLog\", orderStatusLogSchema, \"order_status_logs\")\n","import mongoose, { Schema, model, Document, Types } from \"mongoose\"\n\n/**\n * Sync Log Types\n */\nexport enum SyncLogType {\n\tSAP_QUOTATION = \"SAP_QUOTATION\",\n\tSAP_SALES_ORDER = \"SAP_SALES_ORDER\",\n\tPIPEDRIVE = \"PIPEDRIVE\",\n}\n\nexport enum SyncLogStatus {\n\tPENDING = \"PENDING\",\n\tSUCCESS = \"SUCCESS\",\n\tFAILED = \"FAILED\",\n\tRETRYING = \"RETRYING\",\n}\n\nexport enum SyncLogAction {\n\tCREATE = \"CREATE\",\n\tUPDATE = \"UPDATE\",\n\tDELETE = \"DELETE\",\n}\n\nexport interface ISyncLog extends Document {\n\t_id: Types.ObjectId\n\tentity_type: string\n\tentity_id: Types.ObjectId\n\tsync_type: SyncLogType\n\taction: SyncLogAction\n\tstatus: SyncLogStatus\n\terror_message?: string\n\terror_code?: string\n\terror_details?: Record<string, any>\n\trequest_payload?: Record<string, any>\n\tresponse_payload?: Record<string, any>\n\tretry_count: number\n\tmax_retries: number\n\tnext_retry_at?: Date\n\tcreated_at: Date\n\tupdated_at: Date\n\tresolved_at?: Date\n\tresolved_by?: Types.ObjectId\n}\n\nconst syncLogSchema = new Schema(\n\t{\n\t\tentity_type: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t\tindex: true,\n\t\t},\n\t\tentity_id: {\n\t\t\ttype: Schema.Types.ObjectId,\n\t\t\trequired: true,\n\t\t\tindex: true,\n\t\t},\n\t\tsync_type: {\n\t\t\ttype: String,\n\t\t\tenum: Object.values(SyncLogType),\n\t\t\trequired: true,\n\t\t\tindex: true,\n\t\t},\n\t\taction: {\n\t\t\ttype: String,\n\t\t\tenum: Object.values(SyncLogAction),\n\t\t\trequired: true,\n\t\t},\n\t\tstatus: {\n\t\t\ttype: String,\n\t\t\tenum: Object.values(SyncLogStatus),\n\t\t\tdefault: SyncLogStatus.PENDING,\n\t\t\tindex: true,\n\t\t},\n\t\terror_message: { type: String },\n\t\terror_code: { type: String },\n\t\terror_details: { type: Schema.Types.Mixed },\n\t\trequest_payload: { type: Schema.Types.Mixed },\n\t\tresponse_payload: { type: Schema.Types.Mixed },\n\t\tretry_count: { type: Number, default: 0 },\n\t\tmax_retries: { type: Number, default: 3 },\n\t\tnext_retry_at: { type: Date },\n\t\tresolved_at: { type: Date },\n\t\tresolved_by: { type: Schema.Types.ObjectId, ref: \"User\" },\n\t},\n\t{\n\t\ttimestamps: { createdAt: \"created_at\", updatedAt: \"updated_at\" },\n\t}\n)\n\nsyncLogSchema.index({ entity_type: 1, entity_id: 1, status: 1 })\nsyncLogSchema.index({ status: 1, next_retry_at: 1 })\n\nexport const SyncLog = mongoose.models.SyncLog || model<ISyncLog>(\"SyncLog\", syncLogSchema, \"sync_logs\")\n","import mongoose, { Schema, model } from \"mongoose\"\nimport { UserRole } from \"../../users/models/Users\"\n\nexport interface AnnouncementType {\n\tcreated_by: mongoose.Types.ObjectId\n\tupdated_by?: mongoose.Types.ObjectId\n\tdeleted_by?: mongoose.Types.ObjectId\n\n\tcreated_at: Date\n\tupdated_at?: Date\n\tdeleted_at?: Date\n\n\ttitle: string\n\ttext: string\n\troles: UserRole[]\n}\n\nconst announcementSchema = new Schema<AnnouncementType>({\n\tcreated_by: {\n\t\ttype: Schema.Types.ObjectId,\n\t\tref: \"User\",\n\t\trequired: true,\n\t},\n\tupdated_by: {\n\t\ttype: Schema.Types.ObjectId,\n\t\tref: \"User\",\n\t},\n\tdeleted_by: {\n\t\ttype: Schema.Types.ObjectId,\n\t\tref: \"User\",\n\t},\n\n\tcreated_at: {\n\t\ttype: Date,\n\t\tdefault: Date.now,\n\t},\n\tupdated_at: Date,\n\tdeleted_at: Date,\n\n\ttitle: {\n\t\ttype: String,\n\t\trequired: true,\n\t\ttrim: true,\n\t},\n\ttext: {\n\t\ttype: String,\n\t\trequired: true,\n\t\ttrim: true,\n\t},\n\troles: {\n\t\ttype: [String],\n\t\tenum: Object.values(UserRole),\n\t\trequired: true,\n\t\tvalidate: {\n\t\t\tvalidator: (roles: UserRole[]) => roles.length > 0,\n\t\t\tmessage: \"At least one user role must be assigned.\",\n\t\t},\n\t},\n})\n\nexport default mongoose.models.Announcement || model<AnnouncementType>(\"Announcement\", announcementSchema, \"announcements\")\n","import mongoose, { Schema, model } from \"mongoose\"\nimport bcrypt from \"bcryptjs\"\n\nexport enum UserRole {\n ADMIN = \"admin\",\n SALES = \"sales\",\n TECHNICIAN = \"technician\",\n WAREHOUSEMAN = \"warehouseman\",\n}\n\nexport enum UserStatus {\n ACTIVE = \"active\",\n INACTIVE = \"inactive\",\n SUSPENDED = \"suspended\",\n}\n\nexport interface UserType {\n first_name: string\n middle_name?: string\n last_name: string\n username: string\n password: string\n role: UserRole\n status: UserStatus\n email?: string\n mobile?: string\n pipedrive_id?: string\n sap_employee_id?: string\n sap_id?: string\n created_at: Date\n created_by?: mongoose.Types.ObjectId | string\n updated_at?: Date\n updated_by?: mongoose.Types.ObjectId\n deleted_at?: Date\n deleted_by?: mongoose.Types.ObjectId\n}\n\nconst usersSchema = new Schema<UserType>({\n first_name: { type: String, required: true },\n middle_name: { type: String },\n last_name: { type: String, required: true },\n username: { type: String, required: true, unique: true },\n password: { type: String, required: true, select: false },\n role: {\n type: String,\n enum: Object.values(UserRole),\n default: UserRole.SALES,\n },\n status: {\n type: String,\n enum: Object.values(UserStatus),\n default: UserStatus.ACTIVE,\n },\n email: { type: String },\n mobile: { type: String },\n pipedrive_id: { type: String },\n sap_id: { type: String },\n sap_employee_id: { type: String },\n created_at: { type: Date, default: Date.now },\n created_by: { type: Schema.Types.Mixed, ref: \"User\" },\n updated_at: { type: Date },\n updated_by: { type: Schema.Types.ObjectId, ref: \"User\" },\n deleted_at: { type: Date },\n deleted_by: { type: Schema.Types.ObjectId, ref: \"User\" },\n})\n\nusersSchema.pre(\"save\", async function (next) {\n if (this.isModified(\"password\")) {\n this.password = await bcrypt.hash(this.password, 12)\n }\n next()\n})\n\nexport default mongoose.models.User || model<UserType>(\"User\", usersSchema, \"users\")\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAA,sBAAwC;AAkBxC,IAAM,eAAe,IAAI;AAAA,EACxB;AAAA,IACC,SAAS,EAAE,MAAM,QAAQ,OAAO,KAAK;AAAA,IACrC,SAAS,EAAE,MAAM,QAAQ,UAAU,KAAK;AAAA,IACxC,QAAQ,EAAE,MAAM,OAAO;AAAA,IACvB,UAAU,EAAE,MAAM,OAAO;AAAA,IACzB,SAAS,EAAE,MAAM,OAAO;AAAA,IACxB,OAAO,EAAE,MAAM,OAAO;AAAA,IACtB,UAAU,EAAE,MAAM,OAAO;AAAA,IACzB,cAAc,EAAE,MAAM,OAAO;AAAA,IAC7B,QAAQ,EAAE,MAAM,OAAO;AAAA,IACvB,YAAY,EAAE,MAAM,MAAM,SAAS,KAAK;AAAA,IACxC,YAAY,EAAE,MAAM,QAAQ,SAAS,KAAK;AAAA,EAC3C;AAAA,EACA,EAAE,YAAY,EAAE,WAAW,cAAc,WAAW,aAAa,EAAE;AACpE;AAEA,IAAO,kBAAQ,gBAAAA,QAAS,OAAO,cAAU,uBAAkB,UAAU,cAAc,SAAS;;;ACnC5F,IAAAC,mBAA+C;AAc/C,IAAM,sBAAsB,IAAI;AAAA,EAC/B;AAAA,IACC,WAAW;AAAA,MACV,MAAM,wBAAO,MAAM;AAAA,MACnB,KAAK;AAAA,MACL,UAAU;AAAA,MACV,OAAO;AAAA,IACR;AAAA,IACA,qBAAqB,EAAE,MAAM,OAAO;AAAA,IACpC,YAAY,EAAE,MAAM,OAAO;AAAA,IAC3B,WAAW,EAAE,MAAM,OAAO;AAAA,IAC1B,eAAe,EAAE,MAAM,OAAO;AAAA,IAC9B,eAAe,EAAE,MAAM,OAAO;AAAA,IAC9B,cAAc,EAAE,MAAM,OAAO;AAAA,EAC9B;AAAA,EACA,EAAE,YAAY,EAAE,WAAW,cAAc,WAAW,aAAa,EAAE;AACpE;AAEA,IAAO,yBAAQ,iBAAAC,QAAS,OAAO,qBAAiB,wBAAyB,iBAAiB,qBAAqB,iBAAiB;;;AChChI,IAAAC,mBAA+C;AAe/C,IAAM,sBAAsB,IAAI;AAAA,EAC/B;AAAA,IACC,WAAW;AAAA,MACV,MAAM,wBAAO,MAAM;AAAA,MACnB,KAAK;AAAA,MACL,UAAU;AAAA,MACV,OAAO;AAAA,IACR;AAAA,IACA,cAAc,EAAE,MAAM,OAAO;AAAA,IAC7B,QAAQ,EAAE,MAAM,OAAO;AAAA,IACvB,cAAc,EAAE,MAAM,OAAO;AAAA,IAC7B,aAAa,EAAE,MAAM,OAAO;AAAA,IAC5B,MAAM,EAAE,MAAM,OAAO;AAAA,IACrB,OAAO,EAAE,MAAM,OAAO;AAAA,IACtB,SAAS,EAAE,MAAM,OAAO;AAAA,EACzB;AAAA,EACA,EAAE,YAAY,EAAE,WAAW,cAAc,WAAW,aAAa,EAAE;AACpE;AAEA,IAAO,yBAAQ,iBAAAC,QAAS,OAAO,qBAAiB;AAAA,EAC/C;AAAA,EACA;AAAA,EACA;AACD;;;ACtCA,IAAAC,mBAA+C;AAU/C,IAAM,4BAA4B,IAAI;AAAA,EACrC;AAAA,IACC,WAAW;AAAA,MACV,MAAM,wBAAO,MAAM;AAAA,MACnB,KAAK;AAAA,MACL,UAAU;AAAA,MACV,QAAQ;AAAA,IACT;AAAA,IACA,MAAM,EAAE,MAAM,OAAO;AAAA,IACrB,aAAa,EAAE,MAAM,OAAO;AAAA,EAC7B;AAAA,EACA,EAAE,YAAY,EAAE,WAAW,cAAc,WAAW,aAAa,EAAE;AACpE;AAEA,IAAO,+BAAQ,iBAAAC,QAAS,OAAO,2BAAuB;AAAA,EACrD;AAAA,EACA;AAAA,EACA;AACD;;;AC5BA,IAAAC,mBAA+C;AAU/C,IAAM,0BAA0B,IAAI;AAAA,EACnC;AAAA,IACC,WAAW;AAAA,MACV,MAAM,wBAAO,MAAM;AAAA,MACnB,KAAK;AAAA,MACL,UAAU;AAAA,MACV,QAAQ;AAAA,IACT;AAAA,IACA,MAAM,EAAE,MAAM,OAAO;AAAA,IACrB,MAAM,EAAE,MAAM,OAAO;AAAA,EACtB;AAAA,EACA,EAAE,YAAY,EAAE,WAAW,cAAc,WAAW,aAAa,EAAE;AACpE;AAEA,IAAO,6BAAQ,iBAAAC,QAAS,OAAO,yBAAqB;AAAA,EACnD;AAAA,EACA;AAAA,EACA;AACD;;;AC5BA,IAAAC,mBAA+C;AAU/C,IAAM,wBAAwB,IAAI;AAAA,EACjC;AAAA,IACC,WAAW;AAAA,MACV,MAAM,wBAAO,MAAM;AAAA,MACnB,KAAK;AAAA,MACL,UAAU;AAAA,MACV,QAAQ;AAAA,IACT;AAAA,IACA,QAAQ,EAAE,MAAM,OAAO;AAAA,IACvB,MAAM,EAAE,MAAM,OAAO;AAAA,EACtB;AAAA,EACA,EAAE,YAAY,EAAE,WAAW,cAAc,WAAW,aAAa,EAAE;AACpE;AAEA,IAAO,2BAAQ,iBAAAC,QAAS,OAAO,uBAAmB;AAAA,EACjD;AAAA,EACA;AAAA,EACA;AACD;;;AC5BA,IAAAC,mBAA+C;AAU/C,IAAM,4BAA4B,IAAI;AAAA,EACrC;AAAA,IACC,WAAW;AAAA,MACV,MAAM,wBAAO,MAAM;AAAA,MACnB,KAAK;AAAA,MACL,UAAU;AAAA,MACV,QAAQ;AAAA,IACT;AAAA,IACA,eAAe,EAAE,MAAM,OAAO;AAAA,IAC9B,eAAe,EAAE,MAAM,OAAO;AAAA,EAC/B;AAAA,EACA,EAAE,YAAY,EAAE,WAAW,cAAc,WAAW,aAAa,EAAE;AACpE;AAEA,IAAO,+BAAQ,iBAAAC,QAAS,OAAO,2BAAuB;AAAA,EACrD;AAAA,EACA;AAAA,EACA;AACD;;;AC5BA,IAAAC,mBAA6C;AAE7C,IAAM,gBAAgB,IAAI,wBAAO;AAAA,EAChC,gBAAgB,EAAE,MAAM,QAAQ,UAAU,MAAM,QAAQ,KAAK;AAAA;AAAA,EAC7D,aAAa,EAAE,MAAM,QAAQ,UAAU,KAAK;AAAA,EAC5C,MAAM,EAAE,MAAM,QAAQ,UAAU,KAAK;AAAA,EACrC,OAAO,EAAE,MAAM,OAAO;AAAA,EACtB,OAAO,EAAE,MAAM,OAAO;AAAA,EACtB,UAAU,EAAE,MAAM,uBAAM,UAAU,KAAK,gBAAgB,UAAU,KAAK;AAAA,EACtE,YAAY,EAAE,MAAM,MAAM,SAAS,KAAK,IAAI;AAAA,EAC5C,YAAY,EAAE,MAAM,KAAK;AAC1B,CAAC;AAED,IAAO,kBAAQ,wBAAO,eAAW,wBAAM,WAAW,eAAe,UAAU;;;ACb3E,IAAAC,mBAAsC;AAEtC,IAAM,qBAAqB,IAAI,wBAAO;AAAA,EACrC,MAAM,EAAE,MAAM,QAAQ,UAAU,KAAK;AAAA,EACrC,aAAa,EAAE,MAAM,OAAO;AAC7B,CAAC;AAED,IAAO,wBAAQ,wBAAO,oBAAgB,wBAAM,gBAAgB,oBAAoB,gBAAgB;;;ACPhG,IAAAC,oBAAsC;AAEtC,IAAM,qBAAqB,IAAI,yBAAO;AAAA,EACrC,MAAM,EAAE,MAAM,QAAQ,UAAU,KAAK;AAAA,EACrC,aAAa,EAAE,MAAM,OAAO;AAC7B,CAAC;AAED,IAAO,yBAAQ,yBAAO,oBAAgB,yBAAM,gBAAgB,oBAAoB,iBAAiB;;;ACPjG,IAAAC,oBAA6C;AAE7C,IAAM,qBAAqB,IAAI,yBAAO;AAAA,EACrC,YAAY,EAAE,MAAM,wBAAM,UAAU,KAAK,WAAW,UAAU,KAAK;AAAA,EACnE,eAAe,EAAE,MAAM,wBAAM,UAAU,KAAK,aAAa,UAAU,KAAK;AAAA,EACxE,aAAa,EAAE,MAAM,wBAAM,UAAU,KAAK,YAAY,UAAU,KAAK;AAAA,EACrE,OAAO,EAAE,MAAM,QAAQ,UAAU,KAAK;AAAA,EACtC,YAAY,EAAE,MAAM,KAAK;AAAA,EACzB,UAAU,EAAE,MAAM,KAAK;AAAA,EACvB,YAAY,EAAE,MAAM,MAAM,SAAS,KAAK,IAAI;AAAA,EAC5C,YAAY,EAAE,MAAM,KAAK;AAC1B,CAAC;AAED,IAAO,wBAAQ,yBAAO,oBAAgB,yBAAM,gBAAgB,oBAAoB,gBAAgB;;;ACbhG,IAAAC,oBAAsC;AAEtC,IAAM,iBAAiB,IAAI,yBAAO;AAAA,EACjC,MAAM,EAAE,MAAM,QAAQ,UAAU,MAAM,QAAQ,KAAK;AAAA,EACnD,QAAQ,EAAE,MAAM,QAAQ,UAAU,KAAK;AAAA,EACvC,MAAM,EAAE,MAAM,QAAQ,UAAU,KAAK;AACtC,CAAC;AAED,IAAO,qBAAQ,yBAAO,gBAAY,yBAAM,YAAY,gBAAgB,YAAY;;;ACRhF,IAAAC,oBAAsC;AAEtC,IAAM,kBAAkB,IAAI,yBAAO;AAAA,EAClC,MAAM,EAAE,MAAM,QAAQ,UAAU,MAAM,QAAQ,KAAK;AAAA,EACnD,MAAM,EAAE,MAAM,QAAQ,UAAU,KAAK;AAAA,EACrC,UAAU,EAAE,MAAM,OAAO;AAAA,EACzB,YAAY,EAAE,MAAM,MAAM,SAAS,KAAK,IAAI;AAAA,EAC5C,YAAY,EAAE,MAAM,KAAK;AAC1B,CAAC;AAED,IAAO,qBAAQ,yBAAO,iBAAa,yBAAM,aAAa,iBAAiB,YAAY;;;ACVnF,IAAAC,oBAA6C;AAE7C,IAAM,uBAAuB,IAAI,yBAAO;AAAA,EACvC,YAAY,EAAE,MAAM,wBAAM,UAAU,KAAK,WAAW,UAAU,KAAK;AAAA,EACnE,cAAc,EAAE,MAAM,wBAAM,UAAU,KAAK,aAAa,UAAU,KAAK;AAAA,EACvE,OAAO,EAAE,MAAM,QAAQ,UAAU,KAAK;AAAA,EACtC,WAAW,EAAE,MAAM,OAAO;AAAA,EAC1B,WAAW,EAAE,MAAM,OAAO;AAAA,EAC1B,YAAY,EAAE,MAAM,MAAM,SAAS,KAAK,IAAI;AAC7C,CAAC;AAED,IAAO,0BAAQ,yBAAO,sBAAkB,yBAAM,kBAAkB,sBAAsB,kBAAkB;;;ACXxG,IAAAC,oBAAsC;AAEtC,IAAM,kBAAkB,IAAI,yBAAO;AAAA,EAClC,QAAQ,EAAE,MAAM,QAAQ,UAAU,MAAM,QAAQ,KAAK;AAAA,EACrD,MAAM,EAAE,MAAM,QAAQ,UAAU,KAAK;AAAA,EACrC,YAAY,EAAE,MAAM,MAAM,SAAS,KAAK,IAAI;AAAA,EAC5C,YAAY,EAAE,MAAM,KAAK;AAC1B,CAAC;AAED,IAAO,qBAAQ,yBAAO,iBAAa,yBAAM,aAAa,iBAAiB,aAAa;;;ACTpF,IAAAC,oBAAsC;AAE/B,IAAK,cAAL,kBAAKC,iBAAL;AACN,EAAAA,aAAA,iBAAc;AACd,EAAAA,aAAA,WAAQ;AACR,EAAAA,aAAA,eAAY;AACZ,EAAAA,aAAA,iBAAc;AAJH,SAAAA;AAAA,GAAA;AAOL,IAAK,SAAL,kBAAKC,YAAL;AACN,EAAAA,QAAA,UAAO;AACP,EAAAA,QAAA,SAAM;AACN,EAAAA,QAAA,UAAO;AACP,EAAAA,QAAA,YAAS;AAJE,SAAAA;AAAA,GAAA;AAOL,IAAK,gBAAL,kBAAKC,mBAAL;AACN,EAAAA,eAAA,YAAS;AACT,EAAAA,eAAA,SAAM;AAFK,SAAAA;AAAA,GAAA;AAKZ,IAAM,cAAc,IAAI;AAAA,EACvB;AAAA,IACC,cAAc,EAAE,MAAM,QAAQ,UAAU,KAAK;AAAA,IAC7C,gBAAgB,EAAE,MAAM,QAAQ,SAAS,EAAE;AAAA,IAC3C,WAAW,EAAE,MAAM,OAAO;AAAA,IAC1B,SAAS,EAAE,MAAM,OAAO;AAAA,IACxB,YAAY,EAAE,MAAM,yBAAO,MAAM,UAAU,KAAK,UAAU,UAAU,KAAK;AAAA,IACzE,sBAAsB,EAAE,MAAM,OAAO;AAAA,IACrC,YAAY,EAAE,MAAM,yBAAO,MAAM,UAAU,KAAK,gBAAgB;AAAA,IAChE,cAAc,EAAE,MAAM,OAAO;AAAA,IAC7B,aAAa,EAAE,MAAM,OAAO;AAAA,IAC5B,mBAAmB,EAAE,MAAM,OAAO;AAAA,IAClC,aAAa,EAAE,MAAM,OAAO;AAAA,IAC5B,WAAW,CAAC,EAAE,MAAM,yBAAO,MAAM,UAAU,KAAK,YAAY,CAAC;AAAA,IAC7D,aAAa,EAAE,MAAM,yBAAO,MAAM,UAAU,KAAK,WAAW;AAAA,IAC5D,KAAK,EAAE,MAAM,OAAO;AAAA,IACpB,MAAM,EAAE,MAAM,KAAK;AAAA,IACnB,QAAQ,EAAE,MAAM,QAAQ,MAAM,OAAO,OAAO,MAAM,GAAG,SAAS,kBAAY;AAAA,IAC1E,cAAc;AAAA,MACb,MAAM;AAAA,MACN,MAAM,OAAO,OAAO,WAAW;AAAA,MAC/B,SAAS;AAAA,IACV;AAAA,IACA,QAAQ,EAAE,MAAM,OAAO;AAAA,IACvB,qBAAqB,EAAE,MAAM,OAAO;AAAA,IACpC,iBAAiB,EAAE,MAAM,OAAO;AAAA,IAChC,cAAc,EAAE,MAAM,OAAO;AAAA,IAC7B,aAAa,EAAE,MAAM,SAAS,SAAS,MAAM;AAAA,IAC7C,mBAAmB,EAAE,MAAM,OAAO;AAAA,IAClC,OAAO,EAAE,MAAM,OAAO;AAAA,IACtB,gBAAgB;AAAA,MACf,MAAM;AAAA,MACN,MAAM,OAAO,OAAO,aAAa;AAAA,MACjC,SAAS;AAAA,IACV;AAAA,IACA,YAAY,EAAE,MAAM,yBAAO,MAAM,UAAU,KAAK,OAAO;AAAA,IACvD,YAAY,EAAE,MAAM,yBAAO,MAAM,UAAU,KAAK,OAAO;AAAA,IACvD,YAAY,EAAE,MAAM,yBAAO,MAAM,UAAU,KAAK,OAAO;AAAA,IACvD,YAAY,EAAE,MAAM,KAAK;AAAA,EAC1B;AAAA,EACA,EAAE,YAAY,EAAE,WAAW,cAAc,WAAW,aAAa,EAAE;AACpE;AAEA,IAAO,gBAAQ,yBAAO,aAAS,yBAAM,SAAS,aAAa,QAAQ;;;AChEnE,IAAAC,oBAAsC;AAEtC,IAAM,qBAAqB,IAAI;AAAA,EAC9B;AAAA,IACC,UAAU,EAAE,MAAM,yBAAO,MAAM,UAAU,KAAK,SAAS,UAAU,KAAK;AAAA,IACtE,YAAY,EAAE,MAAM,yBAAO,MAAM,UAAU,KAAK,UAAU;AAAA,IAC1D,gBAAgB,EAAE,MAAM,OAAO;AAAA,IAC/B,aAAa,EAAE,MAAM,OAAO;AAAA,IAC5B,UAAU,EAAE,MAAM,OAAO;AAAA,IACzB,UAAU,EAAE,MAAM,OAAO;AAAA,IACzB,OAAO,EAAE,MAAM,OAAO;AAAA,IACtB,YAAY,EAAE,MAAM,OAAO;AAAA,IAC3B,gBAAgB,EAAE,MAAM,OAAO;AAAA,IAC/B,OAAO,EAAE,MAAM,OAAO;AAAA,IACtB,SAAS,EAAE,MAAM,OAAO;AAAA,IACxB,MAAM,EAAE,MAAM,OAAO;AAAA,IACrB,UAAU,EAAE,MAAM,yBAAO,MAAM,UAAU,KAAK,oBAAoB;AAAA,EACnE;AAAA,EACA,EAAE,YAAY,EAAE,WAAW,cAAc,WAAW,aAAa,EAAE;AACpE;AAEA,IAAO,uBAAQ,yBAAO,oBAAgB,yBAAM,gBAAgB,oBAAoB,gBAAgB;;;ACrBhG,IAAAC,oBAAsC;AAEtC,IAAM,0BAA0B,IAAI;AAAA,EACnC;AAAA,IACC,kBAAkB;AAAA,MACjB,MAAM,yBAAO,MAAM;AAAA,MACnB,KAAK;AAAA,MACL,UAAU;AAAA,IACX;AAAA,IACA,YAAY;AAAA,IACZ,aAAa;AAAA,IACb,cAAc;AAAA,IACd,MAAM;AAAA,IACN,aAAa;AAAA,EACd;AAAA,EACA,EAAE,YAAY,EAAE,WAAW,cAAc,WAAW,aAAa,EAAE;AACpE;AAEA,IAAO,4BAAQ,yBAAO,yBAAqB,yBAAM,qBAAqB,yBAAyB,sBAAsB;;;AClBrH,IAAAC,oBAAsC;AAEtC,IAAM,qBAAqB,IAAI,yBAAO;AAAA,EACrC,UAAU,EAAE,MAAM,yBAAO,MAAM,UAAU,KAAK,SAAS,UAAU,KAAK;AAAA,EACtE,MAAM;AAAA,EACN,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,cAAc;AAAA,EACd,YAAY,EAAE,MAAM,MAAM,SAAS,KAAK,IAAI;AAC7C,CAAC;AAED,IAAO,uBAAQ,yBAAO,oBAAgB,yBAAM,gBAAgB,oBAAoB,gBAAgB;;;ACXhG,IAAAC,oBAAsC;AAEtC,IAAM,kBAAkB,IAAI;AAAA,EAC3B;AAAA,IACC,OAAO;AAAA,IACP,SAAS,EAAE,MAAM,QAAQ,UAAU,KAAK;AAAA,IACxC,UAAU;AAAA,IACV,WAAW,EAAE,MAAM,SAAS,SAAS,KAAK;AAAA,IAC1C,YAAY;AAAA,IACZ,YAAY;AAAA,EACb;AAAA,EACA,EAAE,YAAY,EAAE,WAAW,cAAc,WAAW,aAAa,EAAE;AACpE;AAEA,IAAO,oBAAQ,yBAAO,iBAAa,yBAAM,aAAa,iBAAiB,aAAa;;;ACdpF,IAAAC,oBAAwC;AACxC,sBAAmB;AAEZ,IAAK,iBAAL,kBAAKC,oBAAL;AACN,EAAAA,gBAAA,YAAS;AACT,EAAAA,gBAAA,cAAW;AACX,EAAAA,gBAAA,YAAS;AAHE,SAAAA;AAAA,GAAA;AAmBZ,IAAM,iBAAiB,IAAI,yBAAqB;AAAA,EAC/C,YAAY,EAAE,MAAM,QAAQ,UAAU,KAAK;AAAA,EAC3C,WAAW,EAAE,MAAM,QAAQ,UAAU,KAAK;AAAA,EAC1C,OAAO,EAAE,MAAM,QAAQ,UAAU,MAAM,QAAQ,KAAK;AAAA,EACpD,QAAQ,EAAE,MAAM,OAAO;AAAA,EACvB,UAAU,EAAE,MAAM,QAAQ,UAAU,MAAM,QAAQ,MAAM;AAAA,EACxD,QAAQ;AAAA,IACP,MAAM;AAAA,IACN,MAAM,OAAO,OAAO,cAAc;AAAA,IAClC,SAAS;AAAA,EACV;AAAA,EACA,mBAAmB,EAAE,MAAM,yBAAO,MAAM,UAAU,KAAK,gBAAgB;AAAA,EACvE,YAAY,EAAE,MAAM,MAAM,SAAS,KAAK,IAAI;AAAA,EAC5C,YAAY,EAAE,MAAM,KAAK;AAAA,EACzB,YAAY,EAAE,MAAM,KAAK;AAC1B,CAAC;AAGD,eAAe,IAAI,QAAQ,eAAgB,MAAM;AAChD,MAAI,KAAK,WAAW,UAAU,GAAG;AAChC,SAAK,WAAW,MAAM,gBAAAC,QAAO,KAAK,KAAK,UAAU,EAAE;AAAA,EACpD;AACA,OAAK;AACN,CAAC;AAED,IAAO,oBAAQ,kBAAAC,QAAS,OAAO,gBAAY,yBAAoB,YAAY,gBAAgB,WAAW;;;AC/CtG,IAAAC,oBAAwC;AAaxC,IAAM,sBAAsB,IAAI,yBAA0B;AAAA,EACzD,aAAa,EAAE,MAAM,yBAAO,MAAM,UAAU,KAAK,YAAY,UAAU,KAAK;AAAA,EAC5E,KAAK,EAAE,MAAM,QAAQ,UAAU,KAAK;AAAA,EACpC,cAAc,EAAE,MAAM,QAAQ,UAAU,KAAK;AAAA,EAC7C,UAAU,EAAE,MAAM,QAAQ,UAAU,KAAK;AAAA,EACzC,gBAAgB,EAAE,MAAM,QAAQ,UAAU,KAAK;AAAA,EAC/C,IAAI,EAAE,MAAM,QAAQ,UAAU,KAAK;AAAA,EACnC,YAAY,EAAE,MAAM,MAAM,SAAS,KAAK,IAAI;AAAA,EAC5C,YAAY,EAAE,MAAM,KAAK;AAC1B,CAAC;AAED,IAAO,4BAAQ,kBAAAC,QAAS,OAAO,qBAAiB,yBAAyB,iBAAiB,qBAAqB,iBAAiB;;;ACxBhI,IAAAC,oBAAwC;AAEjC,IAAK,cAAL,kBAAKC,iBAAL;AACN,EAAAA,aAAA,aAAU;AACV,EAAAA,aAAA,eAAY;AACZ,EAAAA,aAAA,aAAU;AACV,EAAAA,aAAA,eAAY;AACZ,EAAAA,aAAA,eAAY;AALD,SAAAA;AAAA,GAAA;AAQZ,IAAM,kBAAkB,IAAI;AAAA,EAC3B;AAAA,IACC,YAAY,EAAE,MAAM,yBAAO,MAAM,UAAU,KAAK,WAAW,UAAU,KAAK;AAAA,IAC1E,UAAU,EAAE,MAAM,QAAQ,UAAU,KAAK;AAAA,IACzC,YAAY,EAAE,MAAM,QAAQ,UAAU,KAAK;AAAA,IAC3C,OAAO,EAAE,MAAM,QAAQ,UAAU,KAAK;AAAA,EACvC;AAAA,EACA,EAAE,KAAK,MAAM;AACd;AAEA,IAAM,cAAc,IAAI,yBAAO;AAAA,EAC9B,aAAa,EAAE,MAAM,yBAAO,MAAM,UAAU,KAAK,YAAY,UAAU,KAAK;AAAA,EAC5E,OAAO,CAAC,eAAe;AAAA,EACvB,QAAQ;AAAA,IACP,MAAM;AAAA,IACN,MAAM,OAAO,OAAO,WAAW;AAAA,IAC/B,SAAS;AAAA,EACV;AAAA,EACA,iBAAiB,EAAE,MAAM,OAAO;AAAA,EAChC,OAAO,EAAE,MAAM,QAAQ,UAAU,KAAK;AAAA,EACtC,OAAO,EAAE,MAAM,OAAO;AAAA,EACtB,YAAY,EAAE,MAAM,MAAM,SAAS,KAAK,IAAI;AAAA,EAC5C,YAAY,EAAE,MAAM,KAAK;AAC1B,CAAC;AAED,IAAO,iBAAQ,kBAAAC,QAAS,OAAO,aAAS,yBAAM,SAAS,aAAa,QAAQ;;;ACnC5E,IAAAC,oBAA+C;AAW/C,IAAM,uBAAuB,IAAI,yBAA2B;AAAA,EAC3D,UAAU;AAAA,IACT,MAAM,yBAAO,MAAM;AAAA,IACnB,KAAK;AAAA,IACL,UAAU;AAAA,EACX;AAAA,EACA,QAAQ;AAAA,IACP,MAAM;AAAA,IACN,MAAM,OAAO,OAAO,WAAW;AAAA,IAC/B,UAAU;AAAA,EACX;AAAA,EACA,YAAY;AAAA,IACX,MAAM,yBAAO,MAAM;AAAA,IACnB,KAAK;AAAA,IACL,UAAU;AAAA,EACX;AAAA,EACA,YAAY;AAAA,IACX,MAAM;AAAA,IACN,SAAS,KAAK;AAAA,EACf;AAAA,EACA,MAAM;AAAA,IACL,MAAM;AAAA,EACP;AACD,CAAC;AAED,IAAO,0BAAQ,kBAAAC,QAAS,OAAO,sBAAkB,yBAA0B,kBAAkB,sBAAsB,mBAAmB;;;ACpCtI,IAAAC,oBAAyD;AAKlD,IAAK,cAAL,kBAAKC,iBAAL;AACN,EAAAA,aAAA,mBAAgB;AAChB,EAAAA,aAAA,qBAAkB;AAClB,EAAAA,aAAA,eAAY;AAHD,SAAAA;AAAA,GAAA;AAML,IAAK,gBAAL,kBAAKC,mBAAL;AACN,EAAAA,eAAA,aAAU;AACV,EAAAA,eAAA,aAAU;AACV,EAAAA,eAAA,YAAS;AACT,EAAAA,eAAA,cAAW;AAJA,SAAAA;AAAA,GAAA;AAOL,IAAK,gBAAL,kBAAKC,mBAAL;AACN,EAAAA,eAAA,YAAS;AACT,EAAAA,eAAA,YAAS;AACT,EAAAA,eAAA,YAAS;AAHE,SAAAA;AAAA,GAAA;AA2BZ,IAAM,gBAAgB,IAAI;AAAA,EACzB;AAAA,IACC,aAAa;AAAA,MACZ,MAAM;AAAA,MACN,UAAU;AAAA,MACV,OAAO;AAAA,IACR;AAAA,IACA,WAAW;AAAA,MACV,MAAM,yBAAO,MAAM;AAAA,MACnB,UAAU;AAAA,MACV,OAAO;AAAA,IACR;AAAA,IACA,WAAW;AAAA,MACV,MAAM;AAAA,MACN,MAAM,OAAO,OAAO,WAAW;AAAA,MAC/B,UAAU;AAAA,MACV,OAAO;AAAA,IACR;AAAA,IACA,QAAQ;AAAA,MACP,MAAM;AAAA,MACN,MAAM,OAAO,OAAO,aAAa;AAAA,MACjC,UAAU;AAAA,IACX;AAAA,IACA,QAAQ;AAAA,MACP,MAAM;AAAA,MACN,MAAM,OAAO,OAAO,aAAa;AAAA,MACjC,SAAS;AAAA,MACT,OAAO;AAAA,IACR;AAAA,IACA,eAAe,EAAE,MAAM,OAAO;AAAA,IAC9B,YAAY,EAAE,MAAM,OAAO;AAAA,IAC3B,eAAe,EAAE,MAAM,yBAAO,MAAM,MAAM;AAAA,IAC1C,iBAAiB,EAAE,MAAM,yBAAO,MAAM,MAAM;AAAA,IAC5C,kBAAkB,EAAE,MAAM,yBAAO,MAAM,MAAM;AAAA,IAC7C,aAAa,EAAE,MAAM,QAAQ,SAAS,EAAE;AAAA,IACxC,aAAa,EAAE,MAAM,QAAQ,SAAS,EAAE;AAAA,IACxC,eAAe,EAAE,MAAM,KAAK;AAAA,IAC5B,aAAa,EAAE,MAAM,KAAK;AAAA,IAC1B,aAAa,EAAE,MAAM,yBAAO,MAAM,UAAU,KAAK,OAAO;AAAA,EACzD;AAAA,EACA;AAAA,IACC,YAAY,EAAE,WAAW,cAAc,WAAW,aAAa;AAAA,EAChE;AACD;AAEA,cAAc,MAAM,EAAE,aAAa,GAAG,WAAW,GAAG,QAAQ,EAAE,CAAC;AAC/D,cAAc,MAAM,EAAE,QAAQ,GAAG,eAAe,EAAE,CAAC;AAE5C,IAAM,UAAU,kBAAAC,QAAS,OAAO,eAAW,yBAAgB,WAAW,eAAe,WAAW;;;AC7FvG,IAAAC,oBAAwC;;;ACAxC,IAAAC,oBAAwC;AACxC,IAAAC,mBAAmB;AAEZ,IAAK,WAAL,kBAAKC,cAAL;AACH,EAAAA,UAAA,WAAQ;AACR,EAAAA,UAAA,WAAQ;AACR,EAAAA,UAAA,gBAAa;AACb,EAAAA,UAAA,kBAAe;AAJP,SAAAA;AAAA,GAAA;AAOL,IAAK,aAAL,kBAAKC,gBAAL;AACH,EAAAA,YAAA,YAAS;AACT,EAAAA,YAAA,cAAW;AACX,EAAAA,YAAA,eAAY;AAHJ,SAAAA;AAAA,GAAA;AA2BZ,IAAM,cAAc,IAAI,yBAAiB;AAAA,EACrC,YAAY,EAAE,MAAM,QAAQ,UAAU,KAAK;AAAA,EAC3C,aAAa,EAAE,MAAM,OAAO;AAAA,EAC5B,WAAW,EAAE,MAAM,QAAQ,UAAU,KAAK;AAAA,EAC1C,UAAU,EAAE,MAAM,QAAQ,UAAU,MAAM,QAAQ,KAAK;AAAA,EACvD,UAAU,EAAE,MAAM,QAAQ,UAAU,MAAM,QAAQ,MAAM;AAAA,EACxD,MAAM;AAAA,IACF,MAAM;AAAA,IACN,MAAM,OAAO,OAAO,QAAQ;AAAA,IAC5B,SAAS;AAAA,EACb;AAAA,EACA,QAAQ;AAAA,IACJ,MAAM;AAAA,IACN,MAAM,OAAO,OAAO,UAAU;AAAA,IAC9B,SAAS;AAAA,EACb;AAAA,EACA,OAAO,EAAE,MAAM,OAAO;AAAA,EACtB,QAAQ,EAAE,MAAM,OAAO;AAAA,EACvB,cAAc,EAAE,MAAM,OAAO;AAAA,EAC7B,QAAQ,EAAE,MAAM,OAAO;AAAA,EACvB,iBAAiB,EAAE,MAAM,OAAO;AAAA,EAChC,YAAY,EAAE,MAAM,MAAM,SAAS,KAAK,IAAI;AAAA,EAC5C,YAAY,EAAE,MAAM,yBAAO,MAAM,OAAO,KAAK,OAAO;AAAA,EACpD,YAAY,EAAE,MAAM,KAAK;AAAA,EACzB,YAAY,EAAE,MAAM,yBAAO,MAAM,UAAU,KAAK,OAAO;AAAA,EACvD,YAAY,EAAE,MAAM,KAAK;AAAA,EACzB,YAAY,EAAE,MAAM,yBAAO,MAAM,UAAU,KAAK,OAAO;AAC3D,CAAC;AAED,YAAY,IAAI,QAAQ,eAAgB,MAAM;AAC1C,MAAI,KAAK,WAAW,UAAU,GAAG;AAC7B,SAAK,WAAW,MAAM,iBAAAC,QAAO,KAAK,KAAK,UAAU,EAAE;AAAA,EACvD;AACA,OAAK;AACT,CAAC;AAED,IAAO,gBAAQ,kBAAAC,QAAS,OAAO,YAAQ,yBAAgB,QAAQ,aAAa,OAAO;;;ADxDnF,IAAM,qBAAqB,IAAI,yBAAyB;AAAA,EACvD,YAAY;AAAA,IACX,MAAM,yBAAO,MAAM;AAAA,IACnB,KAAK;AAAA,IACL,UAAU;AAAA,EACX;AAAA,EACA,YAAY;AAAA,IACX,MAAM,yBAAO,MAAM;AAAA,IACnB,KAAK;AAAA,EACN;AAAA,EACA,YAAY;AAAA,IACX,MAAM,yBAAO,MAAM;AAAA,IACnB,KAAK;AAAA,EACN;AAAA,EAEA,YAAY;AAAA,IACX,MAAM;AAAA,IACN,SAAS,KAAK;AAAA,EACf;AAAA,EACA,YAAY;AAAA,EACZ,YAAY;AAAA,EAEZ,OAAO;AAAA,IACN,MAAM;AAAA,IACN,UAAU;AAAA,IACV,MAAM;AAAA,EACP;AAAA,EACA,MAAM;AAAA,IACL,MAAM;AAAA,IACN,UAAU;AAAA,IACV,MAAM;AAAA,EACP;AAAA,EACA,OAAO;AAAA,IACN,MAAM,CAAC,MAAM;AAAA,IACb,MAAM,OAAO,OAAO,QAAQ;AAAA,IAC5B,UAAU;AAAA,IACV,UAAU;AAAA,MACT,WAAW,CAAC,UAAsB,MAAM,SAAS;AAAA,MACjD,SAAS;AAAA,IACV;AAAA,EACD;AACD,CAAC;AAED,IAAO,wBAAQ,kBAAAC,QAAS,OAAO,oBAAgB,yBAAwB,gBAAgB,oBAAoB,eAAe;","names":["mongoose","import_mongoose","mongoose","import_mongoose","mongoose","import_mongoose","mongoose","import_mongoose","mongoose","import_mongoose","mongoose","import_mongoose","mongoose","import_mongoose","import_mongoose","import_mongoose","import_mongoose","import_mongoose","import_mongoose","import_mongoose","import_mongoose","import_mongoose","QuoteStatus","Status","CreatedMethod","import_mongoose","import_mongoose","import_mongoose","import_mongoose","import_mongoose","CustomerStatus","bcrypt","mongoose","import_mongoose","mongoose","import_mongoose","OrderStatus","mongoose","import_mongoose","mongoose","import_mongoose","SyncLogType","SyncLogStatus","SyncLogAction","mongoose","import_mongoose","import_mongoose","import_bcryptjs","UserRole","UserStatus","bcrypt","mongoose","mongoose"]}
1
+ {"version":3,"sources":["../src/index.ts","../src/clients/models/Clients.ts","../src/clients/models/ClientsContact.ts","../src/clients/models/ClientsAddress.ts","../src/clients/models/ClientsPaymentMethod.ts","../src/clients/models/ClientsPaymentTerm.ts","../src/clients/models/ClientsPriceList.ts","../src/clients/models/ClientsSalesEmployee.ts","../src/inventory/models/Article.ts","../src/inventory/models/ArticleGroups.ts","../src/inventory/models/ArticleClasses.ts","../src/inventory/models/ArticlePrices.ts","../src/inventory/models/Currencies.ts","../src/inventory/models/Warehouses.ts","../src/inventory/models/InventoryStocks.ts","../src/inventory/models/PriceLists.ts","../src/quotes/models/Quote.ts","../src/quotes/models/QuoteArticle.ts","../src/quotes/models/QuoteArticleExtra.ts","../src/quotes/models/QuoteContact.ts","../src/quotes/models/QuoteTerm.ts","../src/customers/models/Customers.ts","../src/customers/models/FiscalProfileType.ts","../src/orders/models/Orders.ts","../src/orders/models/OrderStatusLogs.ts","../src/sap/models/SyncLog.ts","../src/announcements/models/Announcements.ts","../src/users/models/Users.ts","../src/carts/models/Carts.ts"],"sourcesContent":["export * from \"./clients\"\nexport * from \"./inventory\"\nexport * from \"./quotes\"\nexport * from \"./customers\"\nexport * from \"./orders\"\nexport * from \"./sap\"\nexport * from \"./announcements\"\nexport * from \"./users\"\nexport * from \"./carts\"\n","import mongoose, { Schema, model } from \"mongoose\"\n\nexport interface ClientType {\n\tsn_code?: string | null\n\tsn_name?: string | null\n\ttax_id?: string | null\n\tcurrency?: string | null\n\tphone_1?: string | null\n\temail?: string | null\n\tcomments?: string | null\n\tpipedrive_id?: string | null\n\tsap_id?: string | null\n\tdeleted_at?: Date | null\n\tdeleted_by?: string | null\n\tcreated_at?: Date\n\tupdated_at?: Date\n}\n\nconst clientSchema = new Schema<ClientType>(\n\t{\n\t\tsn_code: { type: String, index: true },\n\t\tsn_name: { type: String, required: true },\n\t\ttax_id: { type: String },\n\t\tcurrency: { type: String },\n\t\tphone_1: { type: String },\n\t\temail: { type: String },\n\t\tcomments: { type: String },\n\t\tpipedrive_id: { type: String },\n\t\tsap_id: { type: String },\n\t\tdeleted_at: { type: Date, default: null },\n\t\tdeleted_by: { type: String, default: null },\n\t},\n\t{ timestamps: { createdAt: \"created_at\", updatedAt: \"updated_at\" } }\n)\n\nexport default mongoose.models.Client || model<ClientType>(\"Client\", clientSchema, \"clients\")\n","import mongoose, { Schema, model, Types } from \"mongoose\"\n\nexport interface ClientContactType {\n\tclient_id: Types.ObjectId\n\tcontact_person_name?: string | null\n\tfirst_name?: string | null\n\tlast_name?: string | null\n\tcontact_phone?: string | null\n\tcontact_email?: string | null\n\tpipedrive_id?: string | null\n\tcreated_at?: Date\n\tupdated_at?: Date\n}\n\nconst clientContactSchema = new Schema<ClientContactType>(\n\t{\n\t\tclient_id: {\n\t\t\ttype: Schema.Types.ObjectId,\n\t\t\tref: \"Client\",\n\t\t\trequired: true,\n\t\t\tindex: true,\n\t\t},\n\t\tcontact_person_name: { type: String },\n\t\tfirst_name: { type: String },\n\t\tlast_name: { type: String },\n\t\tcontact_phone: { type: String },\n\t\tcontact_email: { type: String },\n\t\tpipedrive_id: { type: String },\n\t},\n\t{ timestamps: { createdAt: \"created_at\", updatedAt: \"updated_at\" } }\n)\n\nexport default mongoose.models.ClientContact || model<ClientContactType>(\"ClientContact\", clientContactSchema, \"client_contacts\")","import mongoose, { Schema, model, Types } from \"mongoose\"\n\nexport interface ClientAddressType {\n\tclient_id: Types.ObjectId\n\taddress_name?: string | null\n\tstreet?: string | null\n\tneighborhood?: string | null\n\tpostal_code?: string | null\n\tcity?: string | null\n\tstate?: string | null\n\tcountry?: string | null\n\tcreated_at?: Date\n\tupdated_at?: Date\n}\n\nconst clientAddressSchema = new Schema<ClientAddressType>(\n\t{\n\t\tclient_id: {\n\t\t\ttype: Schema.Types.ObjectId,\n\t\t\tref: \"Client\",\n\t\t\trequired: true,\n\t\t\tindex: true,\n\t\t},\n\t\taddress_name: { type: String },\n\t\tstreet: { type: String },\n\t\tneighborhood: { type: String },\n\t\tpostal_code: { type: String },\n\t\tcity: { type: String },\n\t\tstate: { type: String },\n\t\tcountry: { type: String },\n\t},\n\t{ timestamps: { createdAt: \"created_at\", updatedAt: \"updated_at\" } }\n)\n\nexport default mongoose.models.ClientAddress || model<ClientAddressType>(\n\t\"ClientAddress\",\n\tclientAddressSchema,\n\t\"client_addresses\"\n)\n","import mongoose, { Schema, model, Types } from \"mongoose\"\n\nexport interface ClientPaymentMethodType {\n\tclient_id: Types.ObjectId\n\tcode?: string | null\n\tdescription?: string | null\n\tcreated_at?: Date\n\tupdated_at?: Date\n}\n\nconst clientPaymentMethodSchema = new Schema<ClientPaymentMethodType>(\n\t{\n\t\tclient_id: {\n\t\t\ttype: Schema.Types.ObjectId,\n\t\t\tref: \"Client\",\n\t\t\trequired: true,\n\t\t\tunique: true,\n\t\t},\n\t\tcode: { type: String },\n\t\tdescription: { type: String },\n\t},\n\t{ timestamps: { createdAt: \"created_at\", updatedAt: \"updated_at\" } }\n)\n\nexport default mongoose.models.ClientPaymentMethod || model<ClientPaymentMethodType>(\n\t\"ClientPaymentMethod\",\n\tclientPaymentMethodSchema,\n\t\"client_payment_methods\"\n)\n","import mongoose, { Schema, model, Types } from \"mongoose\"\n\nexport interface ClientPaymentTermType {\n\tclient_id: Types.ObjectId\n\tcode?: string | null\n\tname?: string | null\n\tcreated_at?: Date\n\tupdated_at?: Date\n}\n\nconst clientPaymentTermSchema = new Schema<ClientPaymentTermType>(\n\t{\n\t\tclient_id: {\n\t\t\ttype: Schema.Types.ObjectId,\n\t\t\tref: \"Client\",\n\t\t\trequired: true,\n\t\t\tunique: true,\n\t\t},\n\t\tcode: { type: String },\n\t\tname: { type: String },\n\t},\n\t{ timestamps: { createdAt: \"created_at\", updatedAt: \"updated_at\" } }\n)\n\nexport default mongoose.models.ClientPaymentTerm || model<ClientPaymentTermType>(\n\t\"ClientPaymentTerm\",\n\tclientPaymentTermSchema,\n\t\"client_payment_terms\"\n)\n","import mongoose, { Schema, model, Types } from \"mongoose\"\n\nexport interface ClientPriceListType {\n\tclient_id: Types.ObjectId\n\tnumber?: string | null\n\tname?: string | null\n\tcreated_at?: Date\n\tupdated_at?: Date\n}\n\nconst clientPriceListSchema = new Schema<ClientPriceListType>(\n\t{\n\t\tclient_id: {\n\t\t\ttype: Schema.Types.ObjectId,\n\t\t\tref: \"Client\",\n\t\t\trequired: true,\n\t\t\tunique: true,\n\t\t},\n\t\tnumber: { type: String },\n\t\tname: { type: String },\n\t},\n\t{ timestamps: { createdAt: \"created_at\", updatedAt: \"updated_at\" } }\n)\n\nexport default mongoose.models.ClientPriceList || model<ClientPriceListType>(\n\t\"ClientPriceList\",\n\tclientPriceListSchema,\n\t\"client_price_lists\"\n)\n","import mongoose, { Schema, model, Types } from \"mongoose\"\n\nexport interface ClientSalesEmployeeType {\n\tclient_id: Types.ObjectId\n\temployee_code?: string | null\n\temployee_name?: string | null\n\tcreated_at?: Date\n\tupdated_at?: Date\n}\n\nconst clientSalesEmployeeSchema = new Schema<ClientSalesEmployeeType>(\n\t{\n\t\tclient_id: {\n\t\t\ttype: Schema.Types.ObjectId,\n\t\t\tref: \"Client\",\n\t\t\trequired: true,\n\t\t\tunique: true,\n\t\t},\n\t\temployee_code: { type: String },\n\t\temployee_name: { type: String },\n\t},\n\t{ timestamps: { createdAt: \"created_at\", updatedAt: \"updated_at\" } }\n)\n\nexport default mongoose.models.ClientSalesEmployee || model<ClientSalesEmployeeType>(\n\t\"ClientSalesEmployee\",\n\tclientSalesEmployeeSchema,\n\t\"client_sales_employees\"\n)\n","import mongoose, { Schema, model, Types } from \"mongoose\"\n\nconst articleSchema = new Schema({\n\tarticle_number: { type: String, required: true, unique: true }, // SAP ItemCode\n\tdescription: { type: String, required: true },\n\tunit: { type: String, required: true },\n\tbrand: { type: String },\n\tmodel: { type: String },\n\tgroup_id: { type: Types.ObjectId, ref: \"ArticleGroup\", required: true },\n\tcreated_at: { type: Date, default: Date.now },\n\tupdated_at: { type: Date },\n})\n\nexport default mongoose.models.Article || model(\"Article\", articleSchema, \"articles\")\n","import mongoose, { Schema, model } from \"mongoose\"\n\nconst articleGroupSchema = new Schema({\n\tname: { type: String, required: true },\n\tdescription: { type: String },\n})\n\nexport default mongoose.models.ArticleGroup || model(\"ArticleGroup\", articleGroupSchema, \"article_groups\")\n","import mongoose, { Schema, model } from \"mongoose\"\n\nconst articleClassSchema = new Schema({\n\tname: { type: String, required: true },\n\tdescription: { type: String },\n})\n\nexport default mongoose.models.ArticleClass || model(\"ArticleClass\", articleClassSchema, \"article_classes\")\n","import mongoose, { Schema, model, Types } from \"mongoose\"\n\nconst articlePriceSchema = new Schema({\n\tarticle_id: { type: Types.ObjectId, ref: \"Article\", required: true },\n\tprice_list_id: { type: Types.ObjectId, ref: \"PriceList\", required: true },\n\tcurrency_id: { type: Types.ObjectId, ref: \"Currency\", required: true },\n\tprice: { type: Number, required: true },\n\tvalid_from: { type: Date },\n\tvalid_to: { type: Date },\n\tcreated_at: { type: Date, default: Date.now },\n\tupdated_at: { type: Date },\n})\n\nexport default mongoose.models.ArticlePrice || model(\"ArticlePrice\", articlePriceSchema, \"article_prices\")\n","import mongoose, { Schema, model } from \"mongoose\"\n\nconst currencySchema = new Schema({\n\tcode: { type: String, required: true, unique: true },\n\tsymbol: { type: String, required: true },\n\tname: { type: String, required: true },\n})\n\nexport default mongoose.models.Currency || model(\"Currency\", currencySchema, \"currencies\")\n","import mongoose, { Schema, model } from \"mongoose\"\n\nconst warehouseSchema = new Schema({\n\tcode: { type: String, required: true, unique: true },\n\tname: { type: String, required: true },\n\tlocation: { type: String },\n\tcreated_at: { type: Date, default: Date.now },\n\tupdated_at: { type: Date },\n})\n\nexport default mongoose.models.Warehouse || model(\"Warehouse\", warehouseSchema, \"warehouses\")\n","import mongoose, { Schema, model, Types } from \"mongoose\"\n\nconst inventoryStockSchema = new Schema({\n\tarticle_id: { type: Types.ObjectId, ref: \"Article\", required: true },\n\twarehouse_id: { type: Types.ObjectId, ref: \"Warehouse\", required: true },\n\tcount: { type: Number, required: true },\n\tmin_stock: { type: Number },\n\tmax_stock: { type: Number },\n\tupdated_at: { type: Date, default: Date.now },\n})\n\nexport default mongoose.models.InventoryStock || model(\"InventoryStock\", inventoryStockSchema, \"inventory_stocks\")\n","import mongoose, { Schema, model } from \"mongoose\"\n\nconst priceListSchema = new Schema({\n\tnumber: { type: String, required: true, unique: true },\n\tname: { type: String, required: true },\n\tcreated_at: { type: Date, default: Date.now },\n\tupdated_at: { type: Date },\n})\n\nexport default mongoose.models.PriceList || model(\"PriceList\", priceListSchema, \"price_lists\")\n","import mongoose, { Schema, model } from \"mongoose\"\n\nexport enum QuoteStatus {\n\tOPPORTUNITY = \"OPPORTUNITY\",\n\tQUOTE = \"QUOTE\",\n\tFOLLOWING = \"FOLLOWING\",\n\tNEGOTIATION = \"NEGOTIATION\",\n}\n\nexport enum Status {\n\tOPEN = \"OPEN\",\n\tWIN = \"WIN\",\n\tLOST = \"LOST\",\n\tDELETE = \"DELETE\",\n}\n\nexport enum CreatedMethod {\n\tMANUAL = \"MANUAL\",\n\tCSV = \"CSV\",\n}\n\nconst quoteSchema = new Schema(\n\t{\n\t\tquote_number: { type: Number, required: true },\n\t\tquote_revision: { type: Number, default: 0 },\n\t\tquote_ref: { type: String },\n\t\tcompany: { type: String },\n\t\tcompany_id: { type: Schema.Types.ObjectId, ref: \"Client\", required: true },\n\t\tcompany_pipedrive_id: { type: String },\n\t\tcontact_id: { type: Schema.Types.ObjectId, ref: \"ClientContact\" },\n\t\tproject_name: { type: String },\n\t\tproject_lab: { type: String },\n\t\tpayment_condition: { type: String },\n\t\tpayment_exp: { type: String },\n\t\tterms_ids: [{ type: Schema.Types.ObjectId, ref: \"QuoteTerm\" }],\n\t\tcurrency_id: { type: Schema.Types.ObjectId, ref: \"Currency\" },\n\t\tiva: { type: String },\n\t\tdate: { type: Date },\n\t\tstatus: { type: String, enum: Object.values(Status), default: Status.OPEN },\n\t\tquote_status: {\n\t\t\ttype: String,\n\t\t\tenum: Object.values(QuoteStatus),\n\t\t\tdefault: QuoteStatus.OPPORTUNITY,\n\t\t},\n\t\tsap_id: { type: String },\n\t\tsap_quotation_entry: { type: Number },\n\t\tsap_order_entry: { type: Number },\n\t\tpipedrive_id: { type: String },\n\t\tshould_sync: { type: Boolean, default: false },\n\t\tpdf_download_link: { type: String },\n\t\tnotes: { type: String },\n\t\tcreated_method: {\n\t\t\ttype: String,\n\t\t\tenum: Object.values(CreatedMethod),\n\t\t\tdefault: CreatedMethod.MANUAL,\n\t\t},\n\t\tcreated_by: { type: Schema.Types.ObjectId, ref: \"User\" },\n\t\tupdated_by: { type: Schema.Types.ObjectId, ref: \"User\" },\n\t\tdeleted_by: { type: Schema.Types.ObjectId, ref: \"User\" },\n\t\tdeleted_at: { type: Date },\n\t},\n\t{ timestamps: { createdAt: \"created_at\", updatedAt: \"updated_at\" } }\n)\n\nexport default mongoose.models.Quote || model(\"Quote\", quoteSchema, \"quotes\")\n","import mongoose, { Schema, model } from \"mongoose\"\n\nconst quoteArticleSchema = new Schema(\n\t{\n\t\tquote_id: { type: Schema.Types.ObjectId, ref: \"Quote\", required: true },\n\t\tarticle_id: { type: Schema.Types.ObjectId, ref: \"Article\" },\n\t\tarticle_number: { type: String },\n\t\tdescription: { type: String },\n\t\tdelivery: { type: String },\n\t\tquantity: { type: Number },\n\t\tprice: { type: Number },\n\t\tunit_price: { type: Number },\n\t\toriginal_price: { type: Number },\n\t\ttotal: { type: Number },\n\t\tutility: { type: Number },\n\t\ttype: { type: String },\n\t\textra_id: { type: Schema.Types.ObjectId, ref: \"QuoteArticleExtra\" },\n\t},\n\t{ timestamps: { createdAt: \"created_at\", updatedAt: \"updated_at\" } }\n)\n\nexport default mongoose.models.QuoteArticle || model(\"QuoteArticle\", quoteArticleSchema, \"quote_articles\")\n","import mongoose, { Schema, model } from \"mongoose\"\n\nconst quoteArticleExtraSchema = new Schema(\n\t{\n\t\tquote_article_id: {\n\t\t\ttype: Schema.Types.ObjectId,\n\t\t\tref: \"QuoteArticle\",\n\t\t\trequired: true,\n\t\t},\n\t\tmultiplier: Number,\n\t\tusa_freight: Number,\n\t\tusa_expenses: Number,\n\t\tduty: Number,\n\t\tmex_freight: Number,\n\t},\n\t{ timestamps: { createdAt: \"created_at\", updatedAt: \"updated_at\" } }\n)\n\nexport default mongoose.models.QuoteArticleExtra || model(\"QuoteArticleExtra\", quoteArticleExtraSchema, \"quote_article_extras\")\n","import mongoose, { Schema, model } from \"mongoose\"\n\nconst quoteContactSchema = new Schema({\n\tquote_id: { type: Schema.Types.ObjectId, ref: \"Quote\", required: true },\n\tname: String,\n\temail: String,\n\tmobile: String,\n\tpipedrive_id: String,\n\tcreated_at: { type: Date, default: Date.now },\n})\n\nexport default mongoose.models.QuoteContact || model(\"QuoteContact\", quoteContactSchema, \"quote_contacts\")\n","import mongoose, { Schema, model } from \"mongoose\"\n\nconst quoteTermSchema = new Schema(\n\t{\n\t\ttitle: String,\n\t\tcontent: { type: String, required: true },\n\t\tcategory: String,\n\t\tis_active: { type: Boolean, default: true },\n\t\tcreated_by: String,\n\t\tupdated_by: String,\n\t},\n\t{ timestamps: { createdAt: \"created_at\", updatedAt: \"updated_at\" } }\n)\n\nexport default mongoose.models.QuoteTerm || model(\"QuoteTerm\", quoteTermSchema, \"quote_terms\")\n","import mongoose, {\n\tSchema,\n\tmodel,\n\ttype Model,\n\ttype HydratedDocument,\n\ttype Types,\n} from \"mongoose\";\nimport bcrypt from \"bcryptjs\";\n\nexport enum CustomerStatus {\n\tACTIVE = \"active\",\n\tINACTIVE = \"inactive\",\n\tBANNED = \"banned\",\n}\n\nexport interface CustomerType {\n\tfirst_name: string;\n\tlast_name: string;\n\temail: string;\n\tmobile?: string;\n\tpassword: string;\n\tstatus: CustomerStatus;\n\tfiscal_profile_id?: Types.ObjectId;\n\tcreated_at: Date;\n\tupdated_at?: Date;\n\tdeleted_at?: Date;\n}\n\nexport type CustomerDoc = HydratedDocument<CustomerType>;\nexport type CustomerModel = Model<CustomerType>;\n\nconst customerSchema = new Schema<CustomerType>({\n\tfirst_name: { type: String, required: true },\n\tlast_name: { type: String, required: true },\n\temail: { type: String, required: true, unique: true },\n\tmobile: { type: String },\n\tpassword: { type: String, required: true, select: false },\n\tstatus: {\n\t\ttype: String,\n\t\tenum: Object.values(CustomerStatus),\n\t\tdefault: CustomerStatus.ACTIVE,\n\t},\n\tfiscal_profile_id: { type: Schema.Types.ObjectId, ref: \"FiscalProfile\" },\n\tcreated_at: { type: Date, default: Date.now },\n\tupdated_at: { type: Date },\n\tdeleted_at: { type: Date },\n});\n\ncustomerSchema.pre(\"save\", async function (next) {\n\tif (this.isModified(\"password\")) {\n\t\tthis.password = await bcrypt.hash(this.password, 12);\n\t}\n\tnext();\n});\n\nconst Customer: CustomerModel =\n\t(mongoose.models.Customer as CustomerModel) ||\n\tmodel<CustomerType>(\"Customer\", customerSchema, \"customers\");\n\nexport default Customer;\n","import mongoose, { Schema, model, type Model, type HydratedDocument, type Types } from \"mongoose\";\n\nexport interface FiscalProfileType {\n\tcustomer_id: Types.ObjectId;\n\trfc: string;\n\trazon_social: string;\n\tuso_cfdi: string;\n\tregimen_fiscal: string;\n\tcp: string;\n\tcreated_at: Date;\n\tupdated_at?: Date;\n}\n\nexport type FiscalProfileDoc = HydratedDocument<FiscalProfileType>;\nexport type FiscalProfileModel = Model<FiscalProfileType>;\n\nconst fiscalProfileSchema = new Schema<FiscalProfileType>({\n\tcustomer_id: { type: Schema.Types.ObjectId, ref: \"Customer\", required: true },\n\trfc: { type: String, required: true },\n\trazon_social: { type: String, required: true },\n\tuso_cfdi: { type: String, required: true },\n\tregimen_fiscal: { type: String, required: true },\n\tcp: { type: String, required: true },\n\tcreated_at: { type: Date, default: Date.now },\n\tupdated_at: { type: Date },\n});\n\nconst FiscalProfile: FiscalProfileModel =\n\t(mongoose.models.FiscalProfile as FiscalProfileModel) ||\n\tmodel<FiscalProfileType>(\"FiscalProfile\", fiscalProfileSchema, \"fiscal_profiles\");\n\nexport default FiscalProfile;\n","import mongoose, { Schema, model } from \"mongoose\"\n\nexport enum OrderStatus {\n\tPENDING = \"pending\",\n\tCONFIRMED = \"confirmed\",\n\tSHIPPED = \"shipped\",\n\tCANCELLED = \"cancelled\",\n\tCOMPLETED = \"completed\",\n}\n\nconst orderItemSchema = new Schema(\n\t{\n\t\tarticle_id: { type: Schema.Types.ObjectId, ref: \"Article\", required: true },\n\t\tquantity: { type: Number, required: true },\n\t\tunit_price: { type: Number, required: true },\n\t\ttotal: { type: Number, required: true },\n\t},\n\t{ _id: false }\n)\n\nconst orderSchema = new Schema({\n\tcustomer_id: { type: Schema.Types.ObjectId, ref: \"Customer\", required: true },\n\titems: [orderItemSchema],\n\tstatus: {\n\t\ttype: String,\n\t\tenum: Object.values(OrderStatus),\n\t\tdefault: OrderStatus.PENDING,\n\t},\n\ttracking_number: { type: String },\n\ttotal: { type: Number, required: true },\n\tnotes: { type: String },\n\tcreated_at: { type: Date, default: Date.now },\n\tupdated_at: { type: Date },\n})\n\nexport default mongoose.models.Order || model(\"Order\", orderSchema, \"orders\")\n","import mongoose, { Schema, model, Types } from \"mongoose\"\nimport { OrderStatus } from \"./Orders\"\n\nexport interface OrderStatusLogType {\n\torder_id: Types.ObjectId\n\tstatus: OrderStatus\n\tchanged_by: Types.ObjectId\n\tchanged_at: Date\n\tnote?: string\n}\n\nconst orderStatusLogSchema = new Schema<OrderStatusLogType>({\n\torder_id: {\n\t\ttype: Schema.Types.ObjectId,\n\t\tref: \"Order\",\n\t\trequired: true,\n\t},\n\tstatus: {\n\t\ttype: String,\n\t\tenum: Object.values(OrderStatus),\n\t\trequired: true,\n\t},\n\tchanged_by: {\n\t\ttype: Schema.Types.ObjectId,\n\t\tref: \"User\",\n\t\trequired: true,\n\t},\n\tchanged_at: {\n\t\ttype: Date,\n\t\tdefault: Date.now,\n\t},\n\tnote: {\n\t\ttype: String,\n\t},\n})\n\nexport default mongoose.models.OrderStatusLog || model<OrderStatusLogType>(\"OrderStatusLog\", orderStatusLogSchema, \"order_status_logs\")\n","import mongoose, { Schema, model, Document, Types } from \"mongoose\"\n\n/**\n * Sync Log Types\n */\nexport enum SyncLogType {\n\tSAP_QUOTATION = \"SAP_QUOTATION\",\n\tSAP_SALES_ORDER = \"SAP_SALES_ORDER\",\n\tPIPEDRIVE = \"PIPEDRIVE\",\n}\n\nexport enum SyncLogStatus {\n\tPENDING = \"PENDING\",\n\tSUCCESS = \"SUCCESS\",\n\tFAILED = \"FAILED\",\n\tRETRYING = \"RETRYING\",\n}\n\nexport enum SyncLogAction {\n\tCREATE = \"CREATE\",\n\tUPDATE = \"UPDATE\",\n\tDELETE = \"DELETE\",\n}\n\nexport interface ISyncLog extends Document {\n\t_id: Types.ObjectId\n\tentity_type: string\n\tentity_id: Types.ObjectId\n\tsync_type: SyncLogType\n\taction: SyncLogAction\n\tstatus: SyncLogStatus\n\terror_message?: string\n\terror_code?: string\n\terror_details?: Record<string, any>\n\trequest_payload?: Record<string, any>\n\tresponse_payload?: Record<string, any>\n\tretry_count: number\n\tmax_retries: number\n\tnext_retry_at?: Date\n\tcreated_at: Date\n\tupdated_at: Date\n\tresolved_at?: Date\n\tresolved_by?: Types.ObjectId\n}\n\nconst syncLogSchema = new Schema(\n\t{\n\t\tentity_type: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t\tindex: true,\n\t\t},\n\t\tentity_id: {\n\t\t\ttype: Schema.Types.ObjectId,\n\t\t\trequired: true,\n\t\t\tindex: true,\n\t\t},\n\t\tsync_type: {\n\t\t\ttype: String,\n\t\t\tenum: Object.values(SyncLogType),\n\t\t\trequired: true,\n\t\t\tindex: true,\n\t\t},\n\t\taction: {\n\t\t\ttype: String,\n\t\t\tenum: Object.values(SyncLogAction),\n\t\t\trequired: true,\n\t\t},\n\t\tstatus: {\n\t\t\ttype: String,\n\t\t\tenum: Object.values(SyncLogStatus),\n\t\t\tdefault: SyncLogStatus.PENDING,\n\t\t\tindex: true,\n\t\t},\n\t\terror_message: { type: String },\n\t\terror_code: { type: String },\n\t\terror_details: { type: Schema.Types.Mixed },\n\t\trequest_payload: { type: Schema.Types.Mixed },\n\t\tresponse_payload: { type: Schema.Types.Mixed },\n\t\tretry_count: { type: Number, default: 0 },\n\t\tmax_retries: { type: Number, default: 3 },\n\t\tnext_retry_at: { type: Date },\n\t\tresolved_at: { type: Date },\n\t\tresolved_by: { type: Schema.Types.ObjectId, ref: \"User\" },\n\t},\n\t{\n\t\ttimestamps: { createdAt: \"created_at\", updatedAt: \"updated_at\" },\n\t}\n)\n\nsyncLogSchema.index({ entity_type: 1, entity_id: 1, status: 1 })\nsyncLogSchema.index({ status: 1, next_retry_at: 1 })\n\nexport const SyncLog = mongoose.models.SyncLog || model<ISyncLog>(\"SyncLog\", syncLogSchema, \"sync_logs\")\n","import mongoose, { Schema, model } from \"mongoose\"\nimport { UserRole } from \"../../users/models/Users\"\n\nexport interface AnnouncementType {\n\tcreated_by: mongoose.Types.ObjectId\n\tupdated_by?: mongoose.Types.ObjectId\n\tdeleted_by?: mongoose.Types.ObjectId\n\n\tcreated_at: Date\n\tupdated_at?: Date\n\tdeleted_at?: Date\n\n\ttitle: string\n\ttext: string\n\troles: UserRole[]\n}\n\nconst announcementSchema = new Schema<AnnouncementType>({\n\tcreated_by: {\n\t\ttype: Schema.Types.ObjectId,\n\t\tref: \"User\",\n\t\trequired: true,\n\t},\n\tupdated_by: {\n\t\ttype: Schema.Types.ObjectId,\n\t\tref: \"User\",\n\t},\n\tdeleted_by: {\n\t\ttype: Schema.Types.ObjectId,\n\t\tref: \"User\",\n\t},\n\n\tcreated_at: {\n\t\ttype: Date,\n\t\tdefault: Date.now,\n\t},\n\tupdated_at: Date,\n\tdeleted_at: Date,\n\n\ttitle: {\n\t\ttype: String,\n\t\trequired: true,\n\t\ttrim: true,\n\t},\n\ttext: {\n\t\ttype: String,\n\t\trequired: true,\n\t\ttrim: true,\n\t},\n\troles: {\n\t\ttype: [String],\n\t\tenum: Object.values(UserRole),\n\t\trequired: true,\n\t\tvalidate: {\n\t\t\tvalidator: (roles: UserRole[]) => roles.length > 0,\n\t\t\tmessage: \"At least one user role must be assigned.\",\n\t\t},\n\t},\n})\n\nexport default mongoose.models.Announcement || model<AnnouncementType>(\"Announcement\", announcementSchema, \"announcements\")\n","import mongoose, { Schema, model } from \"mongoose\"\nimport bcrypt from \"bcryptjs\"\n\nexport enum UserRole {\n ADMIN = \"admin\",\n SALES = \"sales\",\n TECHNICIAN = \"technician\",\n WAREHOUSEMAN = \"warehouseman\",\n}\n\nexport enum UserStatus {\n ACTIVE = \"active\",\n INACTIVE = \"inactive\",\n SUSPENDED = \"suspended\",\n}\n\nexport interface UserType {\n first_name: string\n middle_name?: string\n last_name: string\n username: string\n password: string\n role: UserRole\n status: UserStatus\n email?: string\n mobile?: string\n pipedrive_id?: string\n sap_employee_id?: string\n sap_id?: string\n created_at: Date\n created_by?: mongoose.Types.ObjectId | string\n updated_at?: Date\n updated_by?: mongoose.Types.ObjectId\n deleted_at?: Date\n deleted_by?: mongoose.Types.ObjectId\n}\n\nconst usersSchema = new Schema<UserType>({\n first_name: { type: String, required: true },\n middle_name: { type: String },\n last_name: { type: String, required: true },\n username: { type: String, required: true, unique: true },\n password: { type: String, required: true, select: false },\n role: {\n type: String,\n enum: Object.values(UserRole),\n default: UserRole.SALES,\n },\n status: {\n type: String,\n enum: Object.values(UserStatus),\n default: UserStatus.ACTIVE,\n },\n email: { type: String },\n mobile: { type: String },\n pipedrive_id: { type: String },\n sap_id: { type: String },\n sap_employee_id: { type: String },\n created_at: { type: Date, default: Date.now },\n created_by: { type: Schema.Types.Mixed, ref: \"User\" },\n updated_at: { type: Date },\n updated_by: { type: Schema.Types.ObjectId, ref: \"User\" },\n deleted_at: { type: Date },\n deleted_by: { type: Schema.Types.ObjectId, ref: \"User\" },\n})\n\nusersSchema.pre(\"save\", async function (next) {\n if (this.isModified(\"password\")) {\n this.password = await bcrypt.hash(this.password, 12)\n }\n next()\n})\n\nexport default mongoose.models.User || model<UserType>(\"User\", usersSchema, \"users\")\n","import mongoose, { Schema, model, Types } from \"mongoose\"\n\nexport interface CartItem {\n\tarticle_id: Schema.Types.ObjectId\n\tquantity: number\n}\n\nexport interface CartType {\n\tcustomer_id: Schema.Types.ObjectId\n\titems: CartItem[]\n\tupdated_at?: Date\n}\n\nconst cartItemSchema = new Schema<CartItem>(\n\t{\n\t\tarticle_id: { type: Types.ObjectId, ref: \"Article\", required: true },\n\t\tquantity: { type: Number, required: true },\n\t},\n\t{ _id: false }\n)\n\nconst cartSchema = new Schema<CartType>({\n\tcustomer_id: {\n\t\ttype: Types.ObjectId,\n\t\tref: \"Customer\",\n\t\trequired: true,\n\t\tunique: true,\n\t},\n\titems: [cartItemSchema],\n\tupdated_at: { type: Date, default: Date.now },\n})\n\nexport default mongoose.models.Cart || model<CartType>(\"Cart\", cartSchema, \"carts\")\n"],"mappings":"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","names":["mongoose","import_mongoose","mongoose","import_mongoose","mongoose","import_mongoose","mongoose","import_mongoose","mongoose","import_mongoose","mongoose","import_mongoose","mongoose","import_mongoose","mongoose","import_mongoose","mongoose","import_mongoose","mongoose","import_mongoose","mongoose","import_mongoose","mongoose","import_mongoose","mongoose","import_mongoose","mongoose","import_mongoose","mongoose","import_mongoose","QuoteStatus","Status","CreatedMethod","mongoose","import_mongoose","mongoose","import_mongoose","mongoose","import_mongoose","mongoose","import_mongoose","mongoose","import_mongoose","CustomerStatus","bcrypt","mongoose","import_mongoose","mongoose","import_mongoose","OrderStatus","mongoose","import_mongoose","mongoose","import_mongoose","SyncLogType","SyncLogStatus","SyncLogAction","mongoose","import_mongoose","import_mongoose","import_bcryptjs","UserRole","UserStatus","bcrypt","mongoose","mongoose","import_mongoose","mongoose"]}
package/dist/index.d.cts CHANGED
@@ -1,5 +1,4 @@
1
- import * as mongoose from 'mongoose';
2
- import mongoose__default, { Types, Document } from 'mongoose';
1
+ import mongoose, { Types, Model, HydratedDocument, Document } from 'mongoose';
3
2
 
4
3
  interface ClientType {
5
4
  sn_code?: string | null;
@@ -16,7 +15,7 @@ interface ClientType {
16
15
  created_at?: Date;
17
16
  updated_at?: Date;
18
17
  }
19
- declare const _default$p: mongoose__default.Model<any, {}, {}, {}, any, any>;
18
+ declare const _default$o: mongoose.Model<any, {}, {}, {}, any, any>;
20
19
 
21
20
  interface ClientContactType {
22
21
  client_id: Types.ObjectId;
@@ -29,7 +28,7 @@ interface ClientContactType {
29
28
  created_at?: Date;
30
29
  updated_at?: Date;
31
30
  }
32
- declare const _default$o: mongoose__default.Model<any, {}, {}, {}, any, any>;
31
+ declare const _default$n: mongoose.Model<any, {}, {}, {}, any, any>;
33
32
 
34
33
  interface ClientAddressType {
35
34
  client_id: Types.ObjectId;
@@ -43,7 +42,7 @@ interface ClientAddressType {
43
42
  created_at?: Date;
44
43
  updated_at?: Date;
45
44
  }
46
- declare const _default$n: mongoose__default.Model<any, {}, {}, {}, any, any>;
45
+ declare const _default$m: mongoose.Model<any, {}, {}, {}, any, any>;
47
46
 
48
47
  interface ClientPaymentMethodType {
49
48
  client_id: Types.ObjectId;
@@ -52,7 +51,7 @@ interface ClientPaymentMethodType {
52
51
  created_at?: Date;
53
52
  updated_at?: Date;
54
53
  }
55
- declare const _default$m: mongoose__default.Model<any, {}, {}, {}, any, any>;
54
+ declare const _default$l: mongoose.Model<any, {}, {}, {}, any, any>;
56
55
 
57
56
  interface ClientPaymentTermType {
58
57
  client_id: Types.ObjectId;
@@ -61,7 +60,7 @@ interface ClientPaymentTermType {
61
60
  created_at?: Date;
62
61
  updated_at?: Date;
63
62
  }
64
- declare const _default$l: mongoose__default.Model<any, {}, {}, {}, any, any>;
63
+ declare const _default$k: mongoose.Model<any, {}, {}, {}, any, any>;
65
64
 
66
65
  interface ClientPriceListType {
67
66
  client_id: Types.ObjectId;
@@ -70,7 +69,7 @@ interface ClientPriceListType {
70
69
  created_at?: Date;
71
70
  updated_at?: Date;
72
71
  }
73
- declare const _default$k: mongoose__default.Model<any, {}, {}, {}, any, any>;
72
+ declare const _default$j: mongoose.Model<any, {}, {}, {}, any, any>;
74
73
 
75
74
  interface ClientSalesEmployeeType {
76
75
  client_id: Types.ObjectId;
@@ -79,8 +78,6 @@ interface ClientSalesEmployeeType {
79
78
  created_at?: Date;
80
79
  updated_at?: Date;
81
80
  }
82
- declare const _default$j: mongoose__default.Model<any, {}, {}, {}, any, any>;
83
-
84
81
  declare const _default$i: mongoose.Model<any, {}, {}, {}, any, any>;
85
82
 
86
83
  declare const _default$h: mongoose.Model<any, {}, {}, {}, any, any>;
@@ -97,6 +94,8 @@ declare const _default$c: mongoose.Model<any, {}, {}, {}, any, any>;
97
94
 
98
95
  declare const _default$b: mongoose.Model<any, {}, {}, {}, any, any>;
99
96
 
97
+ declare const _default$a: mongoose.Model<any, {}, {}, {}, any, any>;
98
+
100
99
  declare enum QuoteStatus {
101
100
  OPPORTUNITY = "OPPORTUNITY",
102
101
  QUOTE = "QUOTE",
@@ -113,8 +112,6 @@ declare enum CreatedMethod {
113
112
  MANUAL = "MANUAL",
114
113
  CSV = "CSV"
115
114
  }
116
- declare const _default$a: mongoose.Model<any, {}, {}, {}, any, any>;
117
-
118
115
  declare const _default$9: mongoose.Model<any, {}, {}, {}, any, any>;
119
116
 
120
117
  declare const _default$8: mongoose.Model<any, {}, {}, {}, any, any>;
@@ -123,6 +120,8 @@ declare const _default$7: mongoose.Model<any, {}, {}, {}, any, any>;
123
120
 
124
121
  declare const _default$6: mongoose.Model<any, {}, {}, {}, any, any>;
125
122
 
123
+ declare const _default$5: mongoose.Model<any, {}, {}, {}, any, any>;
124
+
126
125
  declare enum CustomerStatus {
127
126
  ACTIVE = "active",
128
127
  INACTIVE = "inactive",
@@ -135,15 +134,17 @@ interface CustomerType {
135
134
  mobile?: string;
136
135
  password: string;
137
136
  status: CustomerStatus;
138
- fiscal_profile_id?: mongoose__default.Types.ObjectId;
137
+ fiscal_profile_id?: Types.ObjectId;
139
138
  created_at: Date;
140
139
  updated_at?: Date;
141
140
  deleted_at?: Date;
142
141
  }
143
- declare const _default$5: mongoose__default.Model<any, {}, {}, {}, any, any>;
142
+ type CustomerDoc = HydratedDocument<CustomerType>;
143
+ type CustomerModel = Model<CustomerType>;
144
+ declare const Customer: CustomerModel;
144
145
 
145
146
  interface FiscalProfileType {
146
- customer_id: mongoose__default.Types.ObjectId;
147
+ customer_id: Types.ObjectId;
147
148
  rfc: string;
148
149
  razon_social: string;
149
150
  uso_cfdi: string;
@@ -152,7 +153,9 @@ interface FiscalProfileType {
152
153
  created_at: Date;
153
154
  updated_at?: Date;
154
155
  }
155
- declare const _default$4: mongoose__default.Model<any, {}, {}, {}, any, any>;
156
+ type FiscalProfileDoc = HydratedDocument<FiscalProfileType>;
157
+ type FiscalProfileModel = Model<FiscalProfileType>;
158
+ declare const FiscalProfile: FiscalProfileModel;
156
159
 
157
160
  declare enum OrderStatus {
158
161
  PENDING = "pending",
@@ -161,7 +164,7 @@ declare enum OrderStatus {
161
164
  CANCELLED = "cancelled",
162
165
  COMPLETED = "completed"
163
166
  }
164
- declare const _default$3: mongoose__default.Model<any, {}, {}, {}, any, any>;
167
+ declare const _default$4: mongoose.Model<any, {}, {}, {}, any, any>;
165
168
 
166
169
  interface OrderStatusLogType {
167
170
  order_id: Types.ObjectId;
@@ -170,7 +173,7 @@ interface OrderStatusLogType {
170
173
  changed_at: Date;
171
174
  note?: string;
172
175
  }
173
- declare const _default$2: mongoose__default.Model<any, {}, {}, {}, any, any>;
176
+ declare const _default$3: mongoose.Model<any, {}, {}, {}, any, any>;
174
177
 
175
178
  /**
176
179
  * Sync Log Types
@@ -211,7 +214,7 @@ interface ISyncLog extends Document {
211
214
  resolved_at?: Date;
212
215
  resolved_by?: Types.ObjectId;
213
216
  }
214
- declare const SyncLog: mongoose__default.Model<any, {}, {}, {}, any, any>;
217
+ declare const SyncLog: mongoose.Model<any, {}, {}, {}, any, any>;
215
218
 
216
219
  declare enum UserRole {
217
220
  ADMIN = "admin",
@@ -238,18 +241,18 @@ interface UserType {
238
241
  sap_employee_id?: string;
239
242
  sap_id?: string;
240
243
  created_at: Date;
241
- created_by?: mongoose__default.Types.ObjectId | string;
244
+ created_by?: mongoose.Types.ObjectId | string;
242
245
  updated_at?: Date;
243
- updated_by?: mongoose__default.Types.ObjectId;
246
+ updated_by?: mongoose.Types.ObjectId;
244
247
  deleted_at?: Date;
245
- deleted_by?: mongoose__default.Types.ObjectId;
248
+ deleted_by?: mongoose.Types.ObjectId;
246
249
  }
247
- declare const _default$1: mongoose__default.Model<any, {}, {}, {}, any, any>;
250
+ declare const _default$2: mongoose.Model<any, {}, {}, {}, any, any>;
248
251
 
249
252
  interface AnnouncementType {
250
- created_by: mongoose__default.Types.ObjectId;
251
- updated_by?: mongoose__default.Types.ObjectId;
252
- deleted_by?: mongoose__default.Types.ObjectId;
253
+ created_by: mongoose.Types.ObjectId;
254
+ updated_by?: mongoose.Types.ObjectId;
255
+ deleted_by?: mongoose.Types.ObjectId;
253
256
  created_at: Date;
254
257
  updated_at?: Date;
255
258
  deleted_at?: Date;
@@ -257,6 +260,8 @@ interface AnnouncementType {
257
260
  text: string;
258
261
  roles: UserRole[];
259
262
  }
260
- declare const _default: mongoose__default.Model<any, {}, {}, {}, any, any>;
263
+ declare const _default$1: mongoose.Model<any, {}, {}, {}, any, any>;
264
+
265
+ declare const _default: mongoose.Model<any, {}, {}, {}, any, any>;
261
266
 
262
- export { _default as Announcement, type AnnouncementType, _default$i as Article, _default$g as ArticleClass, _default$h as ArticleGroup, _default$f as ArticlePrice, _default$p as Client, _default$n as ClientAddress, type ClientAddressType, _default$o as ClientContact, type ClientContactType, _default$m as ClientPaymentMethod, type ClientPaymentMethodType, _default$l as ClientPaymentTerm, type ClientPaymentTermType, _default$k as ClientPriceList, type ClientPriceListType, _default$j as ClientSalesEmployee, type ClientSalesEmployeeType, type ClientType, CreatedMethod, _default$e as Currency, _default$5 as Customer, CustomerStatus, type CustomerType, _default$4 as FiscalProfile, type FiscalProfileType, type ISyncLog, _default$c as InventoryStock, _default$3 as Order, OrderStatus, _default$2 as OrderStatusLog, type OrderStatusLogType, _default$b as PriceList, _default$a as Quote, _default$9 as QuoteArticle, _default$8 as QuoteArticleExtra, _default$7 as QuoteContact, QuoteStatus, _default$6 as QuoteTerm, Status, SyncLog, SyncLogAction, SyncLogStatus, SyncLogType, UserRole, UserStatus, type UserType, _default$1 as Users, _default$d as Warehouse };
267
+ export { _default$1 as Announcement, type AnnouncementType, _default$h as Article, _default$f as ArticleClass, _default$g as ArticleGroup, _default$e as ArticlePrice, _default as Cart, _default$o as Client, _default$m as ClientAddress, type ClientAddressType, _default$n as ClientContact, type ClientContactType, _default$l as ClientPaymentMethod, type ClientPaymentMethodType, _default$k as ClientPaymentTerm, type ClientPaymentTermType, _default$j as ClientPriceList, type ClientPriceListType, _default$i as ClientSalesEmployee, type ClientSalesEmployeeType, type ClientType, CreatedMethod, _default$d as Currency, Customer, type CustomerDoc, type CustomerModel, CustomerStatus, type CustomerType, FiscalProfile, type FiscalProfileDoc, type FiscalProfileModel, type FiscalProfileType, type ISyncLog, _default$b as InventoryStock, _default$4 as Order, OrderStatus, _default$3 as OrderStatusLog, type OrderStatusLogType, _default$a as PriceList, _default$9 as Quote, _default$8 as QuoteArticle, _default$7 as QuoteArticleExtra, _default$6 as QuoteContact, QuoteStatus, _default$5 as QuoteTerm, Status, SyncLog, SyncLogAction, SyncLogStatus, SyncLogType, UserRole, UserStatus, type UserType, _default$2 as Users, _default$c as Warehouse };