@gofynd/fdk-client-javascript 1.4.12-beta.1 → 1.4.13

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.
@@ -96,12 +96,15 @@ const Joi = require("joi");
96
96
 
97
97
  /**
98
98
  * @typedef ApplicationBrandJson
99
- * @property {Object} _custom_json
99
+ * @property {Object} _custom_json - A custom JSON object containing additional
100
+ * brand-specific configurations or data. The structure is flexible and may
101
+ * vary based on application needs.
100
102
  */
101
103
 
102
104
  /**
103
105
  * @typedef ApplicationCategoryJson
104
- * @property {Object} _custom_json
106
+ * @property {Object} _custom_json - A custom JSON object containing additional
107
+ * details or configurations specific to the application category.
105
108
  */
106
109
 
107
110
  /**
@@ -344,9 +347,12 @@ const Joi = require("joi");
344
347
 
345
348
  /**
346
349
  * @typedef BannerImage
347
- * @property {string} [aspect_ratio]
348
- * @property {string} [type]
349
- * @property {string} [url]
350
+ * @property {string} [aspect_ratio] - The aspect ratio of the banner image,
351
+ * typically represented as a ratio (e.g., '16:9' or '4:3').
352
+ * @property {string} [type] - The type of media, such as 'image' or 'banner',
353
+ * indicating the format of the banner.
354
+ * @property {string} [url] - The URL where the banner image is located,
355
+ * typically a web address pointing to the image resource.
350
356
  */
351
357
 
352
358
  /**
@@ -373,20 +379,79 @@ const Joi = require("joi");
373
379
  * @typedef BrandItem
374
380
  * @property {Action} [action]
375
381
  * @property {ImageUrls} [banners]
376
- * @property {string[]} [departments]
377
- * @property {string} [discount]
378
- * @property {Media2} [logo]
379
- * @property {string} [name]
380
- * @property {string} [slug]
381
- * @property {number} [uid]
382
+ * @property {string[]} [departments] - An array of department names or
383
+ * categories that the brand belongs to, represented as strings.
384
+ * @property {string} [discount] - A string representing the discount offered by
385
+ * the brand, such as percentage or amount off.
386
+ * @property {BrandMedia} [logo]
387
+ * @property {string} [name] - The name of the brand.
388
+ * @property {string} [slug] - A URL-friendly identifier for the brand, often
389
+ * used in website routing.
390
+ * @property {number} [uid] - A unique identifier for the brand, typically used
391
+ * for internal reference.
382
392
  */
383
393
 
384
394
  /**
385
395
  * @typedef BrandListingResponse
386
- * @property {BrandItem[]} [items]
396
+ * @property {BrandItem[]} [items] - An array of brand items, each containing
397
+ * detailed information about the brand, such as action, banners, departments,
398
+ * discount, logo, and other related fields.
387
399
  * @property {Page} page
388
400
  */
389
401
 
402
+ /**
403
+ * @typedef ApplicationBrandListingItemSchema
404
+ * @property {Object} [_custom_json] - Custom JSON object for additional data.
405
+ * @property {Object} [_locale_language] - Custom object for locale-specific
406
+ * language data.
407
+ * @property {string} [brand_banner_portrait_url] - URL of the brand's portrait banner.
408
+ * @property {string} [brand_banner_url] - URL of the brand's landscape banner.
409
+ * @property {string} [brand_logo_url] - URL of the brand's logo.
410
+ * @property {string} [description] - Description of the brand.
411
+ * @property {string} [name] - Name of the brand.
412
+ * @property {string} [slug_key] - Unique slug key for the brand.
413
+ * @property {number} [priority] - Priority of the brand in listing.
414
+ * @property {number} [uid] - Unique identifier of the brand.
415
+ * @property {string} [created_on] - Timestamp when the category was created.
416
+ * @property {string} [last_updated] - Timestamp when the category was created.
417
+ * @property {boolean} [is_active] - Indicates if the brand is active.
418
+ * @property {number[]} [departments] - List of department IDs associated with the brand.
419
+ * @property {string} [modified_on] - Timestamp when the brand was last modified.
420
+ * @property {boolean} [active] - Boolean indicating whether the brand is
421
+ * currently active or not.
422
+ */
423
+
424
+ /**
425
+ * @typedef ApplicationBrandListingSchema
426
+ * @property {ApplicationBrandListingItemSchema[]} [items]
427
+ * @property {Page} [page]
428
+ */
429
+
430
+ /**
431
+ * @typedef ApplicationCategoryListingSchema
432
+ * @property {ApplicationCategoryListingItemSchema[]} [items]
433
+ * @property {Page} [page]
434
+ */
435
+
436
+ /**
437
+ * @typedef ApplicationCategoryListingItemSchema
438
+ * @property {string} [name] - Name of the category.
439
+ * @property {string} [logo] - URL of the category's logo.
440
+ * @property {number[]} [departments] - List of department IDs.
441
+ * @property {string} [attr_name] - Attribute name of the category.
442
+ * @property {string} [landscape_url] - URL of the landscape banner.
443
+ * @property {string} [portrait_url] - URL of the portrait banner.
444
+ * @property {Object} [_custom_json] - Custom JSON object for additional data.
445
+ * @property {number} [priority] - Priority of the category.
446
+ * @property {CreatedBy} [created_by]
447
+ * @property {string} [created_on] - Timestamp when the category was created.
448
+ * @property {CreatedBy} [modified_by]
449
+ * @property {string} [modified_on] - Timestamp when the category was last modified.
450
+ * @property {string} [app_id] - Application ID associated with the category.
451
+ * @property {boolean} [is_active] - Indicates whether the category is active.
452
+ * @property {number} [uid] - Unique identifier of the category.
453
+ */
454
+
390
455
  /**
391
456
  * @typedef BrandMeta
392
457
  * @property {number} id
@@ -394,7 +459,7 @@ const Joi = require("joi");
394
459
  */
395
460
 
396
461
  /**
397
- * @typedef BrandMeta1
462
+ * @typedef InventoryBrandMeta
398
463
  * @property {number} [id]
399
464
  * @property {string} [name]
400
465
  */
@@ -497,19 +562,26 @@ const Joi = require("joi");
497
562
 
498
563
  /**
499
564
  * @typedef CatalogInsightBrand
500
- * @property {number} [article_freshness]
501
- * @property {number} [available_articles]
502
- * @property {number} [available_sizes]
503
- * @property {string} [name]
504
- * @property {number} [total_articles]
505
- * @property {number} [total_sizes]
565
+ * @property {number} [article_freshness] - The average freshness of the
566
+ * articles based on the time since they were added to the catalog.
567
+ * @property {number} [available_articles] - The number of articles that are
568
+ * currently available for purchase.
569
+ * @property {number} [available_sizes] - The total number of unique sizes
570
+ * available across all articles.
571
+ * @property {string} [name] - The name of the brand.
572
+ * @property {number} [total_articles] - The total number of articles listed
573
+ * under the brand.
574
+ * @property {number} [total_sizes] - The total number of sizes offered across
575
+ * all articles for the brand.
506
576
  */
507
577
 
508
578
  /**
509
579
  * @typedef CatalogInsightItem
510
- * @property {number} [count]
511
- * @property {number} [out_of_stock_count]
512
- * @property {number} [sellable_count]
580
+ * @property {number} [count] - The total number of catalog items available.
581
+ * @property {number} [out_of_stock_count] - The number of items that are
582
+ * currently out of stock.
583
+ * @property {number} [sellable_count] - The number of items that are currently
584
+ * sellable (in stock).
513
585
  */
514
586
 
515
587
  /**
@@ -556,6 +628,7 @@ const Joi = require("joi");
556
628
 
557
629
  /**
558
630
  * @typedef CategoryItems
631
+ * @property {Object} [_custom_json]
559
632
  * @property {Action} [action]
560
633
  * @property {ImageUrls} [banners]
561
634
  * @property {Child[]} [childs]
@@ -566,8 +639,12 @@ const Joi = require("joi");
566
639
 
567
640
  /**
568
641
  * @typedef CategoryListingResponse
569
- * @property {DepartmentCategoryTree[]} [data]
570
- * @property {DepartmentIdentifier[]} [departments]
642
+ * @property {DepartmentCategoryTree[]} [data] - An array containing the
643
+ * department category trees, which provide hierarchical information about
644
+ * categories and their associated departments.
645
+ * @property {DepartmentIdentifier[]} [departments] - An array of department
646
+ * identifiers, each providing basic information like name, slug, and unique
647
+ * ID for departments within the catalog.
571
648
  */
572
649
 
573
650
  /**
@@ -595,19 +672,23 @@ const Joi = require("joi");
595
672
 
596
673
  /**
597
674
  * @typedef Child
598
- * @property {Object} [_custom_json]
675
+ * @property {Object} [_custom_json] - Custom JSON object to store additional
676
+ * data for the child.
599
677
  * @property {Action} [action]
600
678
  * @property {ImageUrls} [banners]
601
- * @property {SecondLevelChild[]} [childs]
602
- * @property {string} [name]
603
- * @property {string} [slug]
604
- * @property {number} [uid]
679
+ * @property {SecondLevelChild[]} [childs] - A list of second-level child
680
+ * elements under the current child.
681
+ * @property {string} [name] - Name of the child element.
682
+ * @property {string} [slug] - Slug or URL-friendly identifier for the child element.
683
+ * @property {number} [uid] - Unique identifier for the child element.
605
684
  */
606
685
 
607
686
  /**
608
687
  * @typedef CollectionBadge
609
- * @property {string} [color]
610
- * @property {string} [text]
688
+ * @property {string} [color] - The color of the badge displayed with the
689
+ * collection, typically represented as a string (e.g., a hex code or color name).
690
+ * @property {string} [text] - The text displayed on the badge, which may
691
+ * indicate a label or promotion related to the collection.
611
692
  */
612
693
 
613
694
  /**
@@ -618,26 +699,41 @@ const Joi = require("joi");
618
699
 
619
700
  /**
620
701
  * @typedef CollectionCreateResponse
621
- * @property {string} [uid]
622
- * @property {Object} [_schedule]
623
- * @property {boolean} [allow_facets]
624
- * @property {boolean} [allow_sort]
625
- * @property {string} [app_id]
626
- * @property {Object} [badge]
702
+ * @property {string} [uid] - Unique identifier for the collection.
703
+ * @property {CollectionSchedule} [_schedule]
704
+ * @property {boolean} [allow_facets] - Indicates whether facet-based filtering
705
+ * is allowed for the collection.
706
+ * @property {boolean} [allow_sort] - Indicates whether sorting options are
707
+ * allowed for the collection.
708
+ * @property {string} [app_id] - The application ID associated with the collection.
709
+ * @property {Object} [badge] - Details of the badge associated with the collection.
627
710
  * @property {ImageUrls} [banners]
628
- * @property {Object} [cron]
629
- * @property {string} [description]
630
- * @property {boolean} [is_active]
711
+ * @property {string} [description] - A description of the collection.
712
+ * @property {boolean} [is_active] - Indicates whether the collection is currently active.
631
713
  * @property {BannerImage} [logo]
632
- * @property {Object} [meta]
633
- * @property {string} [name]
634
- * @property {number} [priority]
635
- * @property {CollectionQuery[]} [query]
636
- * @property {string} [slug]
637
- * @property {string} [sort_on]
638
- * @property {string[]} [tag]
639
- * @property {string} [type]
640
- * @property {string[]} [visible_facets_keys]
714
+ * @property {Object} [meta] - Additional metadata related to the collection.
715
+ * @property {string} [name] - The name of the collection.
716
+ * @property {number} [priority] - The priority level of the collection, used to
717
+ * determine its display order.
718
+ * @property {CollectionQuery[]} [query] - Query objects that define how the
719
+ * collection's items are retrieved or filtered.
720
+ * @property {string} [slug] - The URL-friendly identifier for the collection.
721
+ * @property {string} [sort_on] - The default sorting order for items in the
722
+ * collection, e.g., 'popular'.
723
+ * @property {string[]} [tag] - Array of tags associated with the collection for
724
+ * categorization and filtering.
725
+ * @property {string} [type] - The type of collection, such as 'items' for
726
+ * manually added items or 'query' for dynamically fetched items.
727
+ * @property {string[]} [visible_facets_keys] - Keys of the facets that are
728
+ * visible and can be used for filtering the collection.
729
+ * @property {boolean} [published] - Indicates whether the collection is published.
730
+ * @property {string[]} [tags] - List of tags associated with the collection.
731
+ * @property {Action} [action]
732
+ * @property {Object} [_custom_json] - Custom JSON data for additional information.
733
+ * @property {Object} [_locale_language] - Locale language settings for the collection.
734
+ * @property {SeoDetail} [seo]
735
+ * @property {boolean} [is_visible] - Indicates if the collection is visible to users.
736
+ * @property {string} [id] - Unique identifier for the collection.
641
737
  */
642
738
 
643
739
  /**
@@ -665,8 +761,11 @@ const Joi = require("joi");
665
761
 
666
762
  /**
667
763
  * @typedef CollectionImage
668
- * @property {string} aspect_ratio
669
- * @property {string} url
764
+ * @property {string} aspect_ratio - The aspect ratio of the image, typically
765
+ * represented as a string (e.g., "16:9" or "4:3") to indicate the
766
+ * proportional relationship between the image's width and height.
767
+ * @property {string} url - The URL of the image, which provides the location
768
+ * where the image is hosted and can be accessed.
670
769
  */
671
770
 
672
771
  /**
@@ -688,22 +787,24 @@ const Joi = require("joi");
688
787
 
689
788
  /**
690
789
  * @typedef CollectionListingFilter
691
- * @property {CollectionListingFilterTag[]} [tags]
692
- * @property {CollectionListingFilterType[]} [type]
790
+ * @property {CollectionListingFilterTag[]} [tags] - A list of tags used to
791
+ * filter the collection listing.
792
+ * @property {CollectionListingFilterType[]} [type] - A list of types used to
793
+ * filter the collection listing.
693
794
  */
694
795
 
695
796
  /**
696
797
  * @typedef CollectionListingFilterTag
697
- * @property {string} [display]
698
- * @property {boolean} [is_selected]
699
- * @property {string} [name]
798
+ * @property {string} [display] - The display name of the tag for the collection listing.
799
+ * @property {boolean} [is_selected] - Indicates whether the tag is currently selected.
800
+ * @property {string} [name] - The name of the tag.
700
801
  */
701
802
 
702
803
  /**
703
804
  * @typedef CollectionListingFilterType
704
- * @property {string} [display]
705
- * @property {boolean} [is_selected]
706
- * @property {string} [name]
805
+ * @property {string} [display] - The display name of the type for the collection listing.
806
+ * @property {boolean} [is_selected] - Indicates whether the type is currently selected.
807
+ * @property {string} [name] - The internal name of the type.
707
808
  */
708
809
 
709
810
  /**
@@ -716,11 +817,17 @@ const Joi = require("joi");
716
817
 
717
818
  /**
718
819
  * @typedef CollectionSchedule
719
- * @property {string} [cron]
720
- * @property {number} [duration]
721
- * @property {string} [end]
722
- * @property {NextSchedule[]} [next_schedule]
723
- * @property {string} [start]
820
+ * @property {string} [cron] - The cron expression that defines the scheduling
821
+ * pattern, allowing for tasks or events to be repeated at specific intervals
822
+ * (e.g., daily, weekly).
823
+ * @property {number} [duration] - The duration in seconds for which the
824
+ * collection is active or valid.
825
+ * @property {string} [end] - The end date and time for the collection's
826
+ * schedule, formatted as a date-time string.
827
+ * @property {NextSchedule[]} [next_schedule] - The next set of scheduled times
828
+ * when the collection will become active, based on the cron expression.
829
+ * @property {string} [start] - The start date and time for the collection's
830
+ * schedule, formatted as a date-time string.
724
831
  */
725
832
 
726
833
  /**
@@ -737,7 +844,7 @@ const Joi = require("joi");
737
844
  */
738
845
 
739
846
  /**
740
- * @typedef CompanyMeta1
847
+ * @typedef InventoryCompanyMeta
741
848
  * @property {number} [id]
742
849
  */
743
850
 
@@ -879,31 +986,45 @@ const Joi = require("joi");
879
986
 
880
987
  /**
881
988
  * @typedef CreateCollection
882
- * @property {Object} [_custom_json]
883
- * @property {Object} [_locale_language]
989
+ * @property {Object} [_custom_json] - Custom JSON data for the collection, used
990
+ * for any additional information.
991
+ * @property {Object} [_locale_language] - Locale-specific data for supporting
992
+ * multiple languages.
884
993
  * @property {CollectionSchedule} [_schedule]
885
- * @property {boolean} [allow_facets]
886
- * @property {boolean} [allow_sort]
887
- * @property {string} app_id
994
+ * @property {boolean} [allow_facets] - Indicates whether facet-based filtering
995
+ * is allowed for the collection.
996
+ * @property {boolean} [allow_sort] - Indicates whether sorting options are
997
+ * allowed for the collection.
998
+ * @property {string} app_id - The application ID associated with the collection.
888
999
  * @property {CollectionBadge} [badge]
889
1000
  * @property {CollectionBanner} banners
890
- * @property {UserInfo} [created_by]
891
- * @property {string} [description]
892
- * @property {boolean} [is_active]
893
- * @property {boolean} [is_visible]
1001
+ * @property {UserInfo} [created_by] - Information about the user who created
1002
+ * the collection.
1003
+ * @property {string} [description] - A description of the collection.
1004
+ * @property {boolean} [is_active] - Indicates whether the collection is currently active.
1005
+ * @property {boolean} [is_visible] - Indicates whether the collection is
1006
+ * visible to users.
894
1007
  * @property {CollectionImage} logo
895
- * @property {Object} [meta]
896
- * @property {UserInfo} [modified_by]
897
- * @property {string} name
898
- * @property {number} [priority]
899
- * @property {boolean} [published]
900
- * @property {CollectionQuery[]} [query]
1008
+ * @property {Object} [meta] - Additional metadata related to the collection.
1009
+ * @property {UserInfo} [modified_by] - Information about the user who last
1010
+ * modified the collection.
1011
+ * @property {string} name - The name of the collection.
1012
+ * @property {number} [priority] - The priority level of the collection, used to
1013
+ * determine its display order.
1014
+ * @property {boolean} [published] - Indicates whether the collection is
1015
+ * published and available to users.
1016
+ * @property {CollectionQuery[]} [query] - Query objects that define how the
1017
+ * collection's items are retrieved or filtered.
901
1018
  * @property {SeoDetail} [seo]
902
- * @property {string} slug
903
- * @property {string} [sort_on]
904
- * @property {string[]} [tags]
905
- * @property {string} type
906
- * @property {string[]} [visible_facets_keys]
1019
+ * @property {string} slug - The URL-friendly identifier for the collection.
1020
+ * @property {string} [sort_on] - The default sorting order for items in the
1021
+ * collection, e.g., 'popular'.
1022
+ * @property {string[]} [tags] - Array of tags associated with the collection
1023
+ * for categorization and filtering.
1024
+ * @property {string} type - The type of collection, either 'items' for manually
1025
+ * added items or 'query' for dynamically fetched items.
1026
+ * @property {string[]} [visible_facets_keys] - Keys of the facets that are
1027
+ * visible and can be used for filtering the collection.
907
1028
  */
908
1029
 
909
1030
  /**
@@ -1008,8 +1129,10 @@ const Joi = require("joi");
1008
1129
 
1009
1130
  /**
1010
1131
  * @typedef DepartmentCategoryTree
1011
- * @property {string} [department]
1012
- * @property {CategoryItems[]} [items]
1132
+ * @property {string} [department] - The name of the department that this
1133
+ * category tree belongs to, such as 'Men', 'Women', or 'Electronics'.
1134
+ * @property {CategoryItems[]} [items] - An array of categories that fall under
1135
+ * the specified department, each containing details about category items.
1013
1136
  */
1014
1137
 
1015
1138
  /**
@@ -1023,8 +1146,12 @@ const Joi = require("joi");
1023
1146
 
1024
1147
  /**
1025
1148
  * @typedef DepartmentIdentifier
1026
- * @property {string} [slug]
1027
- * @property {number} [uid]
1149
+ * @property {string} [name] - The name of the department, such as
1150
+ * 'Electronics', 'Apparel', or 'Home Appliances'.
1151
+ * @property {string} [slug] - A URL-friendly identifier for the department,
1152
+ * often used in creating department-specific links or routes.
1153
+ * @property {number} [uid] - A unique identifier for the department, used to
1154
+ * distinguish it from other departments in the system.
1028
1155
  */
1029
1156
 
1030
1157
  /**
@@ -1048,7 +1175,7 @@ const Joi = require("joi");
1048
1175
  */
1049
1176
 
1050
1177
  /**
1051
- * @typedef DimensionResponse1
1178
+ * @typedef InventoryDimensionResponse
1052
1179
  * @property {number} [height]
1053
1180
  * @property {number} [length]
1054
1181
  * @property {string} [unit]
@@ -1076,11 +1203,12 @@ const Joi = require("joi");
1076
1203
 
1077
1204
  /**
1078
1205
  * @typedef ErrorResponse
1079
- * @property {string} [code]
1080
- * @property {string} [error]
1081
- * @property {string} [message]
1082
- * @property {Object} [meta]
1083
- * @property {number} [status]
1206
+ * @property {string} [code] - A string representing the specific error code.
1207
+ * @property {string} [error] - A brief description of the error type.
1208
+ * @property {string} [message] - A detailed message explaining the error.
1209
+ * @property {Object} [meta] - Additional metadata or context about the error,
1210
+ * if available.
1211
+ * @property {number} [status] - The HTTP status code associated with the error.
1084
1212
  */
1085
1213
 
1086
1214
  /**
@@ -1254,40 +1382,54 @@ const Joi = require("joi");
1254
1382
 
1255
1383
  /**
1256
1384
  * @typedef GetCollectionDetailNest
1257
- * @property {Object} [_schedule]
1385
+ * @property {CollectionSchedule} [_schedule]
1258
1386
  * @property {Action} [action]
1259
- * @property {boolean} [allow_facets]
1260
- * @property {boolean} [allow_sort]
1261
- * @property {string} [app_id]
1262
- * @property {Object} [badge]
1387
+ * @property {boolean} [allow_facets] - Indicates whether facets are allowed for
1388
+ * filtering the collection.
1389
+ * @property {boolean} [allow_sort] - Indicates whether sorting options are
1390
+ * allowed for the collection.
1391
+ * @property {string} [app_id] - The application ID associated with the collection.
1392
+ * @property {CollectionBadge} [badge]
1263
1393
  * @property {ImageUrls} [banners]
1264
- * @property {Object} [cron]
1265
- * @property {string} [description]
1266
- * @property {boolean} [is_active]
1394
+ * @property {string} [description] - A description of the collection.
1395
+ * @property {boolean} [is_active] - Indicates whether the collection is currently active.
1267
1396
  * @property {Media} [logo]
1268
- * @property {Object} [meta]
1269
- * @property {string} [name]
1270
- * @property {number} [priority]
1271
- * @property {CollectionQuery[]} [query]
1272
- * @property {string} [slug]
1273
- * @property {string[]} [tag]
1274
- * @property {string} [type]
1275
- * @property {string} [uid]
1276
- * @property {string[]} [visible_facets_keys]
1397
+ * @property {Object} [meta] - Additional metadata related to the collection.
1398
+ * @property {string} [name] - The name of the collection.
1399
+ * @property {number} [priority] - The priority level of the collection in the
1400
+ * display list.
1401
+ * @property {CollectionQuery[]} [query] - Array of queries that define how the
1402
+ * collection is fetched or filtered.
1403
+ * @property {string} [slug] - The URL-friendly identifier of the collection.
1404
+ * @property {string[]} [tag] - Array of tags associated with the collection.
1405
+ * @property {string} [type] - The type of collection, such as manual or automated.
1406
+ * @property {string} [uid] - The unique identifier for the collection.
1407
+ * @property {string[]} [visible_facets_keys] - List of facet keys that are
1408
+ * visible for filtering the collection.
1409
+ * @property {string} [_id] - Internal identifier for the collection.
1410
+ * @property {boolean} [published] - Indicates if the collection is published.
1411
+ * @property {string[]} [tags] - Tags associated with the collection.
1412
+ * @property {string} [sort_on] - Sort criteria for the collection.
1413
+ * @property {Object} [_custom_json] - Custom JSON data for the collection.
1414
+ * @property {Object} [_locale_language] - Locale-specific language settings.
1415
+ * @property {SeoDetail} [seo]
1416
+ * @property {boolean} [is_visible] - Indicates if the collection is visible.
1277
1417
  */
1278
1418
 
1279
1419
  /**
1280
1420
  * @typedef GetCollectionItemsResponse
1281
- * @property {ProductFilters[]} [filters]
1282
- * @property {ProductListingDetail[]} [items]
1421
+ * @property {ProductFilters[]} [filters] - An array of filters applicable to
1422
+ * the products in the collection.
1423
+ * @property {ProductListingDetail[]} [items] - List of product details in the collection.
1283
1424
  * @property {Page} [page]
1284
- * @property {ProductSortOn[]} [sort_on]
1425
+ * @property {ProductSortOn[]} [sort_on] - Sorting options available for the
1426
+ * products in the collection.
1285
1427
  */
1286
1428
 
1287
1429
  /**
1288
1430
  * @typedef GetCollectionListingResponse
1289
1431
  * @property {CollectionListingFilter} [filters]
1290
- * @property {GetCollectionDetailNest[]} [items]
1432
+ * @property {GetCollectionDetailNest[]} [items] - Array of nested collection details.
1291
1433
  * @property {Page} [page]
1292
1434
  */
1293
1435
 
@@ -1363,12 +1505,12 @@ const Joi = require("joi");
1363
1505
 
1364
1506
  /**
1365
1507
  * @typedef GetDepartment
1366
- * @property {UserSerializer1} [created_by]
1508
+ * @property {RequestUserSerializer} [created_by]
1367
1509
  * @property {string} [created_on]
1368
1510
  * @property {boolean} [is_active]
1369
1511
  * @property {string} [item_type]
1370
1512
  * @property {string} [logo]
1371
- * @property {UserSerializer1} [modified_by]
1513
+ * @property {RequestUserSerializer} [modified_by]
1372
1514
  * @property {string} [modified_on]
1373
1515
  * @property {string} [name]
1374
1516
  * @property {number} [page_no]
@@ -1382,24 +1524,24 @@ const Joi = require("joi");
1382
1524
 
1383
1525
  /**
1384
1526
  * @typedef GetInventories
1385
- * @property {BrandMeta1} [brand]
1386
- * @property {CompanyMeta1} [company]
1527
+ * @property {InventoryBrandMeta} [brand]
1528
+ * @property {InventoryCompanyMeta} [company]
1387
1529
  * @property {string} [country_of_origin]
1388
- * @property {UserSerializer1} [created_by]
1530
+ * @property {RequestUserSerializer} [created_by]
1389
1531
  * @property {DateMeta} [date_meta]
1390
- * @property {DimensionResponse1} [dimension]
1532
+ * @property {InventoryDimensionResponse} [dimension]
1391
1533
  * @property {string} [expiration_date]
1392
1534
  * @property {string} [id]
1393
1535
  * @property {Object} [identifier]
1394
1536
  * @property {string} [inventory_updated_on]
1395
1537
  * @property {boolean} [is_set]
1396
1538
  * @property {number} [item_id]
1397
- * @property {ManufacturerResponse1} [manufacturer]
1398
- * @property {UserSerializer1} [modified_by]
1539
+ * @property {InventoryManufacturerResponse} [manufacturer]
1540
+ * @property {RequestUserSerializer} [modified_by]
1399
1541
  * @property {Object} [platforms]
1400
1542
  * @property {PriceArticle} [price]
1401
1543
  * @property {QuantitiesArticle} [quantities]
1402
- * @property {ReturnConfig2} [return_config]
1544
+ * @property {ReturnConfig} [return_config]
1403
1545
  * @property {string} [seller_identifier]
1404
1546
  * @property {string} [size]
1405
1547
  * @property {string} [stage]
@@ -1409,9 +1551,9 @@ const Joi = require("joi");
1409
1551
  * @property {number} [total_quantity]
1410
1552
  * @property {string} [trace_id]
1411
1553
  * @property {boolean} [track_inventory]
1412
- * @property {Trader2[]} [trader]
1554
+ * @property {TraderResponse[]} [trader]
1413
1555
  * @property {string} [uid]
1414
- * @property {WeightResponse1} [weight]
1556
+ * @property {InventoryWeightResponse} [weight]
1415
1557
  */
1416
1558
 
1417
1559
  /**
@@ -2198,7 +2340,7 @@ const Joi = require("joi");
2198
2340
  */
2199
2341
 
2200
2342
  /**
2201
- * @typedef ManufacturerResponse1
2343
+ * @typedef InventoryManufacturerResponse
2202
2344
  * @property {string} [address]
2203
2345
  * @property {boolean} [is_default]
2204
2346
  * @property {string} [name]
@@ -2225,6 +2367,16 @@ const Joi = require("joi");
2225
2367
  * @property {string} [url]
2226
2368
  */
2227
2369
 
2370
+ /**
2371
+ * @typedef BrandMedia
2372
+ * @property {string} [aspect_ratio] - The aspect ratio of the media, typically
2373
+ * represented as a string like '16:9' or '4:3'.
2374
+ * @property {string} [type] - The type of media, such as 'image', 'video', or
2375
+ * 'audio', describing the content format.
2376
+ * @property {string} [url] - The URL where the media file is hosted, typically
2377
+ * a link to an image or video resource.
2378
+ */
2379
+
2228
2380
  /**
2229
2381
  * @typedef Meta
2230
2382
  * @property {Object} [headers]
@@ -2285,8 +2437,8 @@ const Joi = require("joi");
2285
2437
 
2286
2438
  /**
2287
2439
  * @typedef NextSchedule
2288
- * @property {string} [end]
2289
- * @property {string} [start]
2440
+ * @property {string} [end] - The end time of the schedule.
2441
+ * @property {string} [start] - The start time of the schedule.
2290
2442
  */
2291
2443
 
2292
2444
  /**
@@ -2368,16 +2520,6 @@ const Joi = require("joi");
2368
2520
  * @property {number} [size] - It is the size of each page.
2369
2521
  */
2370
2522
 
2371
- /**
2372
- * @typedef PageResponse1
2373
- * @property {number} [current]
2374
- * @property {boolean} [has_next]
2375
- * @property {boolean} [has_previous]
2376
- * @property {number} [item_total]
2377
- * @property {number} [size]
2378
- * @property {string} [type]
2379
- */
2380
-
2381
2523
  /**
2382
2524
  * @typedef PageResponseType
2383
2525
  * @property {number} current
@@ -3063,38 +3205,44 @@ const Joi = require("joi");
3063
3205
 
3064
3206
  /**
3065
3207
  * @typedef Sitemap
3066
- * @property {number} [priority]
3067
- * @property {string} [frequency]
3208
+ * @property {number} [priority] - Indicates the priority of this URL relative
3209
+ * to other URLs on the site. A value between 0.0 and 1.0, where 1.0 is the
3210
+ * highest priority.
3211
+ * @property {string} [frequency] - How frequently the content at the URL is
3212
+ * likely to change.
3068
3213
  */
3069
3214
 
3070
3215
  /**
3071
3216
  * @typedef ApplicationItemSeoAction
3072
- * @property {Object} [page]
3073
- * @property {string} type
3217
+ * @property {Object} [page] - Details of the page associated with this SEO action.
3218
+ * @property {string} type - Type of action, such as navigation or redirection.
3074
3219
  */
3075
3220
 
3076
3221
  /**
3077
3222
  * @typedef ApplicationItemSeoBreadcrumbs
3078
- * @property {string} [url]
3079
- * @property {ApplicationItemSeoAction[]} [action]
3223
+ * @property {string} [url] - The URL that this breadcrumb points to.
3224
+ * @property {ApplicationItemSeoAction[]} [action] - The actions available for
3225
+ * this breadcrumb, defining what happens when it's clicked or interacted with.
3080
3226
  */
3081
3227
 
3082
3228
  /**
3083
3229
  * @typedef ApplicationItemSeoMetaTagItem
3084
- * @property {string} key
3085
- * @property {string} value
3230
+ * @property {string} key - The name of the meta tag.
3231
+ * @property {string} value - The value associated with the meta tag.
3086
3232
  */
3087
3233
 
3088
3234
  /**
3089
3235
  * @typedef ApplicationItemSeoMetaTags
3090
- * @property {string} title
3091
- * @property {ApplicationItemSeoMetaTagItem[]} [items]
3236
+ * @property {string} title - The title for this set of meta tags.
3237
+ * @property {ApplicationItemSeoMetaTagItem[]} [items] - A list of meta tag
3238
+ * items, each defined by key-value pairs.
3092
3239
  */
3093
3240
 
3094
3241
  /**
3095
3242
  * @typedef Metatags
3096
- * @property {string} [title]
3097
- * @property {ApplicationItemSeoMetaTagItem[]} [items]
3243
+ * @property {string} [title] - The title or heading for the meta tags section.
3244
+ * @property {ApplicationItemSeoMetaTagItem[]} [items] - An array of meta tag
3245
+ * items, each consisting of key-value pairs.
3098
3246
  */
3099
3247
 
3100
3248
  /**
@@ -3131,13 +3279,16 @@ const Joi = require("joi");
3131
3279
 
3132
3280
  /**
3133
3281
  * @typedef SecondLevelChild
3134
- * @property {Object} [_custom_json]
3282
+ * @property {Object} [_custom_json] - Custom JSON object to store additional
3283
+ * data for the second-level child.
3135
3284
  * @property {Action} [action]
3136
3285
  * @property {ImageUrls} [banners]
3137
- * @property {ThirdLevelChild[]} [childs]
3138
- * @property {string} [name]
3139
- * @property {string} [slug]
3140
- * @property {number} [uid]
3286
+ * @property {ThirdLevelChild[]} [childs] - A list of third-level child elements
3287
+ * under the second-level child.
3288
+ * @property {string} [name] - Name of the second-level child element.
3289
+ * @property {string} [slug] - Slug or URL-friendly identifier for the
3290
+ * second-level child element.
3291
+ * @property {number} [uid] - Unique identifier for the second-level child element.
3141
3292
  */
3142
3293
 
3143
3294
  /**
@@ -3148,12 +3299,20 @@ const Joi = require("joi");
3148
3299
 
3149
3300
  /**
3150
3301
  * @typedef SeoDetail
3151
- * @property {string} [description]
3152
- * @property {string} [title]
3153
- * @property {Object} [sitemap]
3154
- * @property {ApplicationItemSeoBreadcrumbs[]} [breadcrumbs]
3155
- * @property {Metatags[]} [meta_tags]
3156
- * @property {string} [canonical_url]
3302
+ * @property {string} [description] - SEO meta description for the item or
3303
+ * collection. This is used to describe the content for search engines.
3304
+ * @property {string} [title] - SEO meta title for the item or collection. It is
3305
+ * used as the title that appears in search results.
3306
+ * @property {Object} [sitemap] - Information regarding the sitemap
3307
+ * configuration for the item or collection.
3308
+ * @property {ApplicationItemSeoBreadcrumbs[]} [breadcrumbs] - List of
3309
+ * breadcrumbs for navigation, showing the hierarchy of pages leading to the
3310
+ * current page.
3311
+ * @property {Metatags[]} [meta_tags] - An array of meta tags, each containing
3312
+ * key-value pairs for various SEO meta tags used to enhance search visibility.
3313
+ * @property {string} [canonical_url] - The canonical URL for the item or
3314
+ * collection, which tells search engines the preferred version of the URL to
3315
+ * avoid duplicate content issues.
3157
3316
  */
3158
3317
 
3159
3318
  /**
@@ -3251,9 +3410,10 @@ const Joi = require("joi");
3251
3410
  */
3252
3411
 
3253
3412
  /**
3254
- * @typedef SuccessResponse1
3255
- * @property {boolean} [success]
3256
- * @property {number} [uid]
3413
+ * @typedef SuccessResponseObject
3414
+ * @property {boolean} [success] - Indicates whether the operation was successful or not.
3415
+ * @property {number} [uid] - A unique identifier associated with the successful
3416
+ * operation.
3257
3417
  */
3258
3418
 
3259
3419
  /**
@@ -3314,13 +3474,16 @@ const Joi = require("joi");
3314
3474
 
3315
3475
  /**
3316
3476
  * @typedef ThirdLevelChild
3317
- * @property {Object} [_custom_json]
3477
+ * @property {Object} [_custom_json] - Custom JSON object to store additional
3478
+ * data for the third-level child.
3318
3479
  * @property {Action} [action]
3319
3480
  * @property {ImageUrls} [banners]
3320
- * @property {Object[]} [childs]
3321
- * @property {string} [name]
3322
- * @property {string} [slug]
3323
- * @property {number} [uid]
3481
+ * @property {Object[]} [childs] - A list of further nested child elements under
3482
+ * the third-level child (if applicable).
3483
+ * @property {string} [name] - Name of the third-level child element.
3484
+ * @property {string} [slug] - Slug or URL-friendly identifier for the
3485
+ * third-level child element.
3486
+ * @property {number} [uid] - Unique identifier for the third-level child element.
3324
3487
  */
3325
3488
 
3326
3489
  /**
@@ -3338,7 +3501,7 @@ const Joi = require("joi");
3338
3501
  */
3339
3502
 
3340
3503
  /**
3341
- * @typedef Trader2
3504
+ * @typedef TraderResponse
3342
3505
  * @property {string[]} [address]
3343
3506
  * @property {string} [name]
3344
3507
  * @property {string} [type]
@@ -3358,7 +3521,7 @@ const Joi = require("joi");
3358
3521
  * @property {boolean} [is_visible]
3359
3522
  * @property {CollectionImage} [logo]
3360
3523
  * @property {Object} [meta]
3361
- * @property {string} [modified_by] - User info.
3524
+ * @property {UserInfo} [modified_by]
3362
3525
  * @property {string} [name]
3363
3526
  * @property {number} [priority]
3364
3527
  * @property {boolean} [published]
@@ -3455,7 +3618,7 @@ const Joi = require("joi");
3455
3618
  */
3456
3619
 
3457
3620
  /**
3458
- * @typedef UserSerializer1
3621
+ * @typedef RequestUserSerializer
3459
3622
  * @property {string} [_id]
3460
3623
  * @property {string} [contact]
3461
3624
  * @property {string} [uid]
@@ -3522,7 +3685,7 @@ const Joi = require("joi");
3522
3685
  */
3523
3686
 
3524
3687
  /**
3525
- * @typedef WeightResponse1
3688
+ * @typedef InventoryWeightResponse
3526
3689
  * @property {number} [shipping]
3527
3690
  * @property {string} [unit]
3528
3691
  */
@@ -4105,7 +4268,7 @@ class CatalogPlatformModel {
4105
4268
  banners: CatalogPlatformModel.ImageUrls(),
4106
4269
  departments: Joi.array().items(Joi.string().allow("")),
4107
4270
  discount: Joi.string().allow(""),
4108
- logo: CatalogPlatformModel.Media2(),
4271
+ logo: CatalogPlatformModel.BrandMedia(),
4109
4272
  name: Joi.string().allow(""),
4110
4273
  slug: Joi.string().allow(""),
4111
4274
  uid: Joi.number(),
@@ -4120,6 +4283,69 @@ class CatalogPlatformModel {
4120
4283
  });
4121
4284
  }
4122
4285
 
4286
+ /** @returns {ApplicationBrandListingItemSchema} */
4287
+ static ApplicationBrandListingItemSchema() {
4288
+ return Joi.object({
4289
+ _custom_json: Joi.object().pattern(/\S/, Joi.any()),
4290
+ _locale_language: Joi.object().pattern(/\S/, Joi.any()),
4291
+ brand_banner_portrait_url: Joi.string().allow(""),
4292
+ brand_banner_url: Joi.string().allow(""),
4293
+ brand_logo_url: Joi.string().allow(""),
4294
+ description: Joi.string().allow(""),
4295
+ name: Joi.string().allow(""),
4296
+ slug_key: Joi.string().allow(""),
4297
+ priority: Joi.number(),
4298
+ uid: Joi.number(),
4299
+ created_on: Joi.string().allow(""),
4300
+ last_updated: Joi.string().allow(""),
4301
+ is_active: Joi.boolean(),
4302
+ departments: Joi.array().items(Joi.number()),
4303
+ modified_on: Joi.string().allow(""),
4304
+ active: Joi.boolean(),
4305
+ });
4306
+ }
4307
+
4308
+ /** @returns {ApplicationBrandListingSchema} */
4309
+ static ApplicationBrandListingSchema() {
4310
+ return Joi.object({
4311
+ items: Joi.array().items(
4312
+ CatalogPlatformModel.ApplicationBrandListingItemSchema()
4313
+ ),
4314
+ page: CatalogPlatformModel.Page(),
4315
+ });
4316
+ }
4317
+
4318
+ /** @returns {ApplicationCategoryListingSchema} */
4319
+ static ApplicationCategoryListingSchema() {
4320
+ return Joi.object({
4321
+ items: Joi.array().items(
4322
+ CatalogPlatformModel.ApplicationCategoryListingItemSchema()
4323
+ ),
4324
+ page: CatalogPlatformModel.Page(),
4325
+ });
4326
+ }
4327
+
4328
+ /** @returns {ApplicationCategoryListingItemSchema} */
4329
+ static ApplicationCategoryListingItemSchema() {
4330
+ return Joi.object({
4331
+ name: Joi.string().allow(""),
4332
+ logo: Joi.string().allow(""),
4333
+ departments: Joi.array().items(Joi.number()),
4334
+ attr_name: Joi.string().allow(""),
4335
+ landscape_url: Joi.string().allow(""),
4336
+ portrait_url: Joi.string().allow(""),
4337
+ _custom_json: Joi.object().pattern(/\S/, Joi.any()),
4338
+ priority: Joi.number(),
4339
+ created_by: CatalogPlatformModel.CreatedBy(),
4340
+ created_on: Joi.string().allow(""),
4341
+ modified_by: CatalogPlatformModel.CreatedBy(),
4342
+ modified_on: Joi.string().allow(""),
4343
+ app_id: Joi.string().allow(""),
4344
+ is_active: Joi.boolean(),
4345
+ uid: Joi.number(),
4346
+ });
4347
+ }
4348
+
4123
4349
  /** @returns {BrandMeta} */
4124
4350
  static BrandMeta() {
4125
4351
  return Joi.object({
@@ -4128,8 +4354,8 @@ class CatalogPlatformModel {
4128
4354
  });
4129
4355
  }
4130
4356
 
4131
- /** @returns {BrandMeta1} */
4132
- static BrandMeta1() {
4357
+ /** @returns {InventoryBrandMeta} */
4358
+ static InventoryBrandMeta() {
4133
4359
  return Joi.object({
4134
4360
  id: Joi.number(),
4135
4361
  name: Joi.string().allow(""),
@@ -4317,6 +4543,7 @@ class CatalogPlatformModel {
4317
4543
  /** @returns {CategoryItems} */
4318
4544
  static CategoryItems() {
4319
4545
  return Joi.object({
4546
+ _custom_json: Joi.any().allow(null),
4320
4547
  action: CatalogPlatformModel.Action(),
4321
4548
  banners: CatalogPlatformModel.ImageUrls(),
4322
4549
  childs: Joi.array().items(CatalogPlatformModel.Child()),
@@ -4394,13 +4621,12 @@ class CatalogPlatformModel {
4394
4621
  static CollectionCreateResponse() {
4395
4622
  return Joi.object({
4396
4623
  uid: Joi.string().allow(""),
4397
- _schedule: Joi.any(),
4624
+ _schedule: CatalogPlatformModel.CollectionSchedule(),
4398
4625
  allow_facets: Joi.boolean(),
4399
4626
  allow_sort: Joi.boolean(),
4400
4627
  app_id: Joi.string().allow(""),
4401
4628
  badge: Joi.any(),
4402
4629
  banners: CatalogPlatformModel.ImageUrls(),
4403
- cron: Joi.any(),
4404
4630
  description: Joi.string().allow(""),
4405
4631
  is_active: Joi.boolean(),
4406
4632
  logo: CatalogPlatformModel.BannerImage(),
@@ -4413,6 +4639,14 @@ class CatalogPlatformModel {
4413
4639
  tag: Joi.array().items(Joi.string().allow("")),
4414
4640
  type: Joi.string().allow(""),
4415
4641
  visible_facets_keys: Joi.array().items(Joi.string().allow("")),
4642
+ published: Joi.boolean(),
4643
+ tags: Joi.array().items(Joi.string().allow("")),
4644
+ action: CatalogPlatformModel.Action(),
4645
+ _custom_json: Joi.object().pattern(/\S/, Joi.any()),
4646
+ _locale_language: Joi.object().pattern(/\S/, Joi.any()),
4647
+ seo: CatalogPlatformModel.SeoDetail(),
4648
+ is_visible: Joi.boolean(),
4649
+ id: Joi.string().allow(""),
4416
4650
  });
4417
4651
  }
4418
4652
 
@@ -4537,8 +4771,8 @@ class CatalogPlatformModel {
4537
4771
  });
4538
4772
  }
4539
4773
 
4540
- /** @returns {CompanyMeta1} */
4541
- static CompanyMeta1() {
4774
+ /** @returns {InventoryCompanyMeta} */
4775
+ static InventoryCompanyMeta() {
4542
4776
  return Joi.object({
4543
4777
  id: Joi.number(),
4544
4778
  });
@@ -4728,7 +4962,7 @@ class CatalogPlatformModel {
4728
4962
  static CreateCollection() {
4729
4963
  return Joi.object({
4730
4964
  _custom_json: Joi.any(),
4731
- _locale_language: Joi.any(),
4965
+ _locale_language: Joi.object().pattern(/\S/, Joi.any()),
4732
4966
  _schedule: CatalogPlatformModel.CollectionSchedule(),
4733
4967
  allow_facets: Joi.boolean(),
4734
4968
  allow_sort: Joi.boolean(),
@@ -4897,6 +5131,7 @@ class CatalogPlatformModel {
4897
5131
  /** @returns {DepartmentIdentifier} */
4898
5132
  static DepartmentIdentifier() {
4899
5133
  return Joi.object({
5134
+ name: Joi.string().allow(""),
4900
5135
  slug: Joi.string().allow(""),
4901
5136
  uid: Joi.number(),
4902
5137
  });
@@ -4928,8 +5163,8 @@ class CatalogPlatformModel {
4928
5163
  });
4929
5164
  }
4930
5165
 
4931
- /** @returns {DimensionResponse1} */
4932
- static DimensionResponse1() {
5166
+ /** @returns {InventoryDimensionResponse} */
5167
+ static InventoryDimensionResponse() {
4933
5168
  return Joi.object({
4934
5169
  height: Joi.number(),
4935
5170
  length: Joi.number(),
@@ -5172,14 +5407,13 @@ class CatalogPlatformModel {
5172
5407
  /** @returns {GetCollectionDetailNest} */
5173
5408
  static GetCollectionDetailNest() {
5174
5409
  return Joi.object({
5175
- _schedule: Joi.any(),
5410
+ _schedule: CatalogPlatformModel.CollectionSchedule(),
5176
5411
  action: CatalogPlatformModel.Action(),
5177
5412
  allow_facets: Joi.boolean(),
5178
5413
  allow_sort: Joi.boolean(),
5179
5414
  app_id: Joi.string().allow(""),
5180
- badge: Joi.any(),
5415
+ badge: CatalogPlatformModel.CollectionBadge(),
5181
5416
  banners: CatalogPlatformModel.ImageUrls(),
5182
- cron: Joi.any(),
5183
5417
  description: Joi.string().allow(""),
5184
5418
  is_active: Joi.boolean(),
5185
5419
  logo: CatalogPlatformModel.Media(),
@@ -5192,6 +5426,14 @@ class CatalogPlatformModel {
5192
5426
  type: Joi.string().allow(""),
5193
5427
  uid: Joi.string().allow(""),
5194
5428
  visible_facets_keys: Joi.array().items(Joi.string().allow("")),
5429
+ _id: Joi.string().allow(""),
5430
+ published: Joi.boolean(),
5431
+ tags: Joi.array().items(Joi.string().allow("")),
5432
+ sort_on: Joi.string().allow(""),
5433
+ _custom_json: Joi.any(),
5434
+ _locale_language: Joi.any(),
5435
+ seo: CatalogPlatformModel.SeoDetail(),
5436
+ is_visible: Joi.boolean(),
5195
5437
  });
5196
5438
  }
5197
5439
 
@@ -5305,12 +5547,12 @@ class CatalogPlatformModel {
5305
5547
  /** @returns {GetDepartment} */
5306
5548
  static GetDepartment() {
5307
5549
  return Joi.object({
5308
- created_by: CatalogPlatformModel.UserSerializer1(),
5550
+ created_by: CatalogPlatformModel.RequestUserSerializer(),
5309
5551
  created_on: Joi.string().allow(""),
5310
5552
  is_active: Joi.boolean(),
5311
5553
  item_type: Joi.string().allow(""),
5312
5554
  logo: Joi.string().allow(""),
5313
- modified_by: CatalogPlatformModel.UserSerializer1(),
5555
+ modified_by: CatalogPlatformModel.RequestUserSerializer(),
5314
5556
  modified_on: Joi.string().allow(""),
5315
5557
  name: Joi.string().allow(""),
5316
5558
  page_no: Joi.number(),
@@ -5326,24 +5568,24 @@ class CatalogPlatformModel {
5326
5568
  /** @returns {GetInventories} */
5327
5569
  static GetInventories() {
5328
5570
  return Joi.object({
5329
- brand: CatalogPlatformModel.BrandMeta1(),
5330
- company: CatalogPlatformModel.CompanyMeta1(),
5571
+ brand: CatalogPlatformModel.InventoryBrandMeta(),
5572
+ company: CatalogPlatformModel.InventoryCompanyMeta(),
5331
5573
  country_of_origin: Joi.string().allow(""),
5332
- created_by: CatalogPlatformModel.UserSerializer1(),
5574
+ created_by: CatalogPlatformModel.RequestUserSerializer(),
5333
5575
  date_meta: CatalogPlatformModel.DateMeta(),
5334
- dimension: CatalogPlatformModel.DimensionResponse1(),
5576
+ dimension: CatalogPlatformModel.InventoryDimensionResponse(),
5335
5577
  expiration_date: Joi.string().allow(""),
5336
5578
  id: Joi.string().allow(""),
5337
5579
  identifier: Joi.any(),
5338
5580
  inventory_updated_on: Joi.string().allow(""),
5339
5581
  is_set: Joi.boolean(),
5340
5582
  item_id: Joi.number(),
5341
- manufacturer: CatalogPlatformModel.ManufacturerResponse1(),
5342
- modified_by: CatalogPlatformModel.UserSerializer1(),
5583
+ manufacturer: CatalogPlatformModel.InventoryManufacturerResponse(),
5584
+ modified_by: CatalogPlatformModel.RequestUserSerializer(),
5343
5585
  platforms: Joi.any(),
5344
5586
  price: CatalogPlatformModel.PriceArticle(),
5345
5587
  quantities: CatalogPlatformModel.QuantitiesArticle(),
5346
- return_config: CatalogPlatformModel.ReturnConfig2(),
5588
+ return_config: CatalogPlatformModel.ReturnConfig(),
5347
5589
  seller_identifier: Joi.string().allow(""),
5348
5590
  size: Joi.string().allow(""),
5349
5591
  stage: Joi.string().allow(""),
@@ -5353,9 +5595,9 @@ class CatalogPlatformModel {
5353
5595
  total_quantity: Joi.number(),
5354
5596
  trace_id: Joi.string().allow(""),
5355
5597
  track_inventory: Joi.boolean(),
5356
- trader: Joi.array().items(CatalogPlatformModel.Trader2()),
5598
+ trader: Joi.array().items(CatalogPlatformModel.TraderResponse()),
5357
5599
  uid: Joi.string().allow(""),
5358
- weight: CatalogPlatformModel.WeightResponse1(),
5600
+ weight: CatalogPlatformModel.InventoryWeightResponse(),
5359
5601
  });
5360
5602
  }
5361
5603
 
@@ -6268,8 +6510,8 @@ class CatalogPlatformModel {
6268
6510
  });
6269
6511
  }
6270
6512
 
6271
- /** @returns {ManufacturerResponse1} */
6272
- static ManufacturerResponse1() {
6513
+ /** @returns {InventoryManufacturerResponse} */
6514
+ static InventoryManufacturerResponse() {
6273
6515
  return Joi.object({
6274
6516
  address: Joi.string().allow(""),
6275
6517
  is_default: Joi.boolean(),
@@ -6304,6 +6546,15 @@ class CatalogPlatformModel {
6304
6546
  });
6305
6547
  }
6306
6548
 
6549
+ /** @returns {BrandMedia} */
6550
+ static BrandMedia() {
6551
+ return Joi.object({
6552
+ aspect_ratio: Joi.string().allow(""),
6553
+ type: Joi.string().allow(""),
6554
+ url: Joi.string().allow(""),
6555
+ });
6556
+ }
6557
+
6307
6558
  /** @returns {Meta} */
6308
6559
  static Meta() {
6309
6560
  return Joi.object({
@@ -6484,18 +6735,6 @@ class CatalogPlatformModel {
6484
6735
  });
6485
6736
  }
6486
6737
 
6487
- /** @returns {PageResponse1} */
6488
- static PageResponse1() {
6489
- return Joi.object({
6490
- current: Joi.number(),
6491
- has_next: Joi.boolean(),
6492
- has_previous: Joi.boolean(),
6493
- item_total: Joi.number(),
6494
- size: Joi.number(),
6495
- type: Joi.string().allow(""),
6496
- });
6497
- }
6498
-
6499
6738
  /** @returns {PageResponseType} */
6500
6739
  static PageResponseType() {
6501
6740
  return Joi.object({
@@ -7546,8 +7785,8 @@ class CatalogPlatformModel {
7546
7785
  });
7547
7786
  }
7548
7787
 
7549
- /** @returns {SuccessResponse1} */
7550
- static SuccessResponse1() {
7788
+ /** @returns {SuccessResponseObject} */
7789
+ static SuccessResponseObject() {
7551
7790
  return Joi.object({
7552
7791
  success: Joi.boolean(),
7553
7792
  uid: Joi.number(),
@@ -7655,8 +7894,8 @@ class CatalogPlatformModel {
7655
7894
  });
7656
7895
  }
7657
7896
 
7658
- /** @returns {Trader2} */
7659
- static Trader2() {
7897
+ /** @returns {TraderResponse} */
7898
+ static TraderResponse() {
7660
7899
  return Joi.object({
7661
7900
  address: Joi.array().items(Joi.string().allow("")),
7662
7901
  name: Joi.string().allow(""),
@@ -7679,7 +7918,7 @@ class CatalogPlatformModel {
7679
7918
  is_visible: Joi.boolean(),
7680
7919
  logo: CatalogPlatformModel.CollectionImage(),
7681
7920
  meta: Joi.any(),
7682
- modified_by: Joi.string().allow("").allow(null),
7921
+ modified_by: CatalogPlatformModel.UserInfo(),
7683
7922
  name: Joi.string().allow(""),
7684
7923
  priority: Joi.number(),
7685
7924
  published: Joi.boolean(),
@@ -7789,8 +8028,8 @@ class CatalogPlatformModel {
7789
8028
  });
7790
8029
  }
7791
8030
 
7792
- /** @returns {UserSerializer1} */
7793
- static UserSerializer1() {
8031
+ /** @returns {RequestUserSerializer} */
8032
+ static RequestUserSerializer() {
7794
8033
  return Joi.object({
7795
8034
  _id: Joi.string().allow(""),
7796
8035
  contact: Joi.string().allow(""),
@@ -7872,8 +8111,8 @@ class CatalogPlatformModel {
7872
8111
  });
7873
8112
  }
7874
8113
 
7875
- /** @returns {WeightResponse1} */
7876
- static WeightResponse1() {
8114
+ /** @returns {InventoryWeightResponse} */
8115
+ static InventoryWeightResponse() {
7877
8116
  return Joi.object({
7878
8117
  shipping: Joi.number(),
7879
8118
  unit: Joi.string().allow(""),