@gofynd/fdk-client-javascript 1.6.4 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (146) hide show
  1. package/README.md +1 -1
  2. package/package.json +1 -1
  3. package/sdk/application/Cart/CartApplicationClient.d.ts +5 -5
  4. package/sdk/application/Cart/CartApplicationClient.js +26 -268
  5. package/sdk/application/Catalog/CatalogApplicationClient.d.ts +20 -20
  6. package/sdk/application/Catalog/CatalogApplicationClient.js +98 -347
  7. package/sdk/application/Common/CommonApplicationClient.js +1 -16
  8. package/sdk/application/Communication/CommunicationApplicationClient.js +1 -24
  9. package/sdk/application/Configuration/ConfigurationApplicationClient.d.ts +24 -2
  10. package/sdk/application/Configuration/ConfigurationApplicationClient.js +58 -137
  11. package/sdk/application/Content/ContentApplicationClient.d.ts +47 -7
  12. package/sdk/application/Content/ContentApplicationClient.js +222 -191
  13. package/sdk/application/FileStorage/FileStorageApplicationClient.d.ts +2 -2
  14. package/sdk/application/FileStorage/FileStorageApplicationClient.js +11 -30
  15. package/sdk/application/Finance/FinanceApplicationClient.js +1 -16
  16. package/sdk/application/Lead/LeadApplicationClient.d.ts +4 -4
  17. package/sdk/application/Lead/LeadApplicationClient.js +21 -52
  18. package/sdk/application/Logistic/LogisticApplicationClient.d.ts +16 -56
  19. package/sdk/application/Logistic/LogisticApplicationClient.js +57 -332
  20. package/sdk/application/Order/OrderApplicationClient.d.ts +11 -11
  21. package/sdk/application/Order/OrderApplicationClient.js +68 -153
  22. package/sdk/application/Payment/PaymentApplicationClient.d.ts +2 -12
  23. package/sdk/application/Payment/PaymentApplicationClient.js +7 -487
  24. package/sdk/application/Rewards/RewardsApplicationClient.d.ts +1 -1
  25. package/sdk/application/Rewards/RewardsApplicationClient.js +6 -59
  26. package/sdk/application/Share/ShareApplicationClient.d.ts +4 -4
  27. package/sdk/application/Share/ShareApplicationClient.js +21 -75
  28. package/sdk/application/Theme/ThemeApplicationClient.d.ts +3 -3
  29. package/sdk/application/Theme/ThemeApplicationClient.js +19 -47
  30. package/sdk/application/User/UserApplicationClient.js +1 -407
  31. package/sdk/application/Webhook/WebhookApplicationClient.js +1 -8
  32. package/sdk/common/Utility.d.ts +1 -1
  33. package/sdk/common/Utility.js +4 -4
  34. package/sdk/common/Validator.d.ts +1 -0
  35. package/sdk/common/Validator.js +20 -0
  36. package/sdk/partner/FileStorage/FileStoragePartnerClient.d.ts +1 -55
  37. package/sdk/partner/FileStorage/FileStoragePartnerClient.js +1 -408
  38. package/sdk/partner/FileStorage/FileStoragePartnerValidator.d.ts +0 -5
  39. package/sdk/partner/FileStorage/FileStoragePartnerValidator.js +0 -37
  40. package/sdk/partner/Lead/LeadPartnerModel.d.ts +5 -0
  41. package/sdk/partner/Lead/LeadPartnerModel.js +2 -0
  42. package/sdk/partner/Logistics/LogisticsPartnerClient.d.ts +29 -25
  43. package/sdk/partner/Logistics/LogisticsPartnerClient.js +65 -42
  44. package/sdk/partner/Logistics/LogisticsPartnerModel.d.ts +1008 -794
  45. package/sdk/partner/Logistics/LogisticsPartnerModel.js +573 -460
  46. package/sdk/partner/Logistics/LogisticsPartnerValidator.js +10 -5
  47. package/sdk/partner/Webhook/WebhookPartnerModel.d.ts +5 -0
  48. package/sdk/partner/Webhook/WebhookPartnerModel.js +2 -0
  49. package/sdk/platform/Analytics/AnalyticsPlatformModel.d.ts +5 -0
  50. package/sdk/platform/Analytics/AnalyticsPlatformModel.js +2 -0
  51. package/sdk/platform/Cart/CartPlatformModel.d.ts +67 -9
  52. package/sdk/platform/Cart/CartPlatformModel.js +38 -5
  53. package/sdk/platform/Catalog/CatalogPlatformApplicationClient.js +1 -1
  54. package/sdk/platform/Catalog/CatalogPlatformClient.js +4 -4
  55. package/sdk/platform/Catalog/CatalogPlatformModel.d.ts +47 -13
  56. package/sdk/platform/Catalog/CatalogPlatformModel.js +29 -7
  57. package/sdk/platform/Communication/CommunicationPlatformApplicationClient.d.ts +2 -2
  58. package/sdk/platform/Communication/CommunicationPlatformApplicationClient.js +7 -4
  59. package/sdk/platform/Communication/CommunicationPlatformModel.d.ts +71 -7
  60. package/sdk/platform/Communication/CommunicationPlatformModel.js +70 -6
  61. package/sdk/platform/CompanyProfile/CompanyProfilePlatformClient.d.ts +0 -27
  62. package/sdk/platform/CompanyProfile/CompanyProfilePlatformClient.js +8 -60
  63. package/sdk/platform/CompanyProfile/CompanyProfilePlatformModel.d.ts +31 -20
  64. package/sdk/platform/CompanyProfile/CompanyProfilePlatformModel.js +18 -18
  65. package/sdk/platform/Configuration/ConfigurationPlatformApplicationClient.d.ts +1 -1
  66. package/sdk/platform/Configuration/ConfigurationPlatformApplicationClient.js +3 -3
  67. package/sdk/platform/Configuration/ConfigurationPlatformClient.d.ts +13 -0
  68. package/sdk/platform/Configuration/ConfigurationPlatformClient.js +30 -1
  69. package/sdk/platform/Configuration/ConfigurationPlatformModel.d.ts +68 -11
  70. package/sdk/platform/Configuration/ConfigurationPlatformModel.js +49 -7
  71. package/sdk/platform/Content/ContentPlatformApplicationClient.d.ts +169 -0
  72. package/sdk/platform/Content/ContentPlatformApplicationClient.js +1279 -132
  73. package/sdk/platform/Content/ContentPlatformApplicationValidator.d.ts +156 -1
  74. package/sdk/platform/Content/ContentPlatformApplicationValidator.js +180 -0
  75. package/sdk/platform/Content/ContentPlatformClient.d.ts +162 -0
  76. package/sdk/platform/Content/ContentPlatformClient.js +1697 -497
  77. package/sdk/platform/Content/ContentPlatformModel.d.ts +1053 -35
  78. package/sdk/platform/Content/ContentPlatformModel.js +717 -34
  79. package/sdk/platform/Content/ContentPlatformValidator.d.ts +127 -1
  80. package/sdk/platform/Content/ContentPlatformValidator.js +171 -0
  81. package/sdk/platform/Discount/DiscountPlatformClient.d.ts +34 -0
  82. package/sdk/platform/Discount/DiscountPlatformClient.js +59 -0
  83. package/sdk/platform/Discount/DiscountPlatformModel.d.ts +365 -93
  84. package/sdk/platform/Discount/DiscountPlatformModel.js +98 -93
  85. package/sdk/platform/Discount/DiscountPlatformValidator.d.ts +54 -34
  86. package/sdk/platform/Discount/DiscountPlatformValidator.js +27 -17
  87. package/sdk/platform/FileStorage/FileStoragePlatformApplicationClient.d.ts +0 -156
  88. package/sdk/platform/FileStorage/FileStoragePlatformApplicationClient.js +0 -1072
  89. package/sdk/platform/FileStorage/FileStoragePlatformApplicationValidator.d.ts +1 -137
  90. package/sdk/platform/FileStorage/FileStoragePlatformApplicationValidator.js +0 -173
  91. package/sdk/platform/FileStorage/FileStoragePlatformModel.d.ts +1 -1105
  92. package/sdk/platform/FileStorage/FileStoragePlatformModel.js +0 -1125
  93. package/sdk/platform/Lead/LeadPlatformModel.d.ts +5 -0
  94. package/sdk/platform/Lead/LeadPlatformModel.js +2 -0
  95. package/sdk/platform/Order/OrderPlatformApplicationClient.d.ts +0 -10
  96. package/sdk/platform/Order/OrderPlatformApplicationClient.js +0 -92
  97. package/sdk/platform/Order/OrderPlatformApplicationValidator.d.ts +1 -28
  98. package/sdk/platform/Order/OrderPlatformApplicationValidator.js +0 -18
  99. package/sdk/platform/Order/OrderPlatformClient.d.ts +212 -0
  100. package/sdk/platform/Order/OrderPlatformClient.js +397 -0
  101. package/sdk/platform/Order/OrderPlatformModel.d.ts +41 -9
  102. package/sdk/platform/Order/OrderPlatformModel.js +20 -7
  103. package/sdk/platform/Order/OrderPlatformValidator.d.ts +33 -1
  104. package/sdk/platform/Order/OrderPlatformValidator.js +20 -0
  105. package/sdk/platform/Partner/PartnerPlatformModel.d.ts +58 -10
  106. package/sdk/platform/Partner/PartnerPlatformModel.js +19 -10
  107. package/sdk/platform/Payment/PaymentPlatformModel.d.ts +12 -2
  108. package/sdk/platform/Payment/PaymentPlatformModel.js +8 -2
  109. package/sdk/platform/Rewards/RewardsPlatformModel.d.ts +5 -0
  110. package/sdk/platform/Rewards/RewardsPlatformModel.js +2 -0
  111. package/sdk/platform/Serviceability/ServiceabilityPlatformApplicationClient.d.ts +240 -24
  112. package/sdk/platform/Serviceability/ServiceabilityPlatformApplicationClient.js +1753 -277
  113. package/sdk/platform/Serviceability/ServiceabilityPlatformApplicationValidator.d.ts +320 -22
  114. package/sdk/platform/Serviceability/ServiceabilityPlatformApplicationValidator.js +269 -19
  115. package/sdk/platform/Serviceability/ServiceabilityPlatformClient.d.ts +53 -104
  116. package/sdk/platform/Serviceability/ServiceabilityPlatformClient.js +201 -629
  117. package/sdk/platform/Serviceability/ServiceabilityPlatformModel.d.ts +5720 -2891
  118. package/sdk/platform/Serviceability/ServiceabilityPlatformModel.js +3414 -2181
  119. package/sdk/platform/Serviceability/ServiceabilityPlatformValidator.d.ts +138 -216
  120. package/sdk/platform/Serviceability/ServiceabilityPlatformValidator.js +81 -148
  121. package/sdk/platform/Share/SharePlatformModel.d.ts +5 -0
  122. package/sdk/platform/Share/SharePlatformModel.js +2 -0
  123. package/sdk/platform/User/UserPlatformApplicationClient.d.ts +10 -0
  124. package/sdk/platform/User/UserPlatformApplicationClient.js +79 -0
  125. package/sdk/platform/User/UserPlatformApplicationValidator.d.ts +13 -1
  126. package/sdk/platform/User/UserPlatformApplicationValidator.js +12 -0
  127. package/sdk/platform/User/UserPlatformModel.d.ts +52 -1
  128. package/sdk/platform/User/UserPlatformModel.js +36 -0
  129. package/sdk/platform/Webhook/WebhookPlatformModel.d.ts +5 -0
  130. package/sdk/platform/Webhook/WebhookPlatformModel.js +2 -0
  131. package/sdk/public/Catalog/CatalogPublicClient.d.ts +1 -1
  132. package/sdk/public/Catalog/CatalogPublicClient.js +6 -11
  133. package/sdk/public/Configuration/ConfigurationPublicClient.js +1 -16
  134. package/sdk/public/Content/ContentPublicClient.d.ts +36 -3
  135. package/sdk/public/Content/ContentPublicClient.js +261 -104
  136. package/sdk/public/Content/ContentPublicModel.d.ts +155 -1
  137. package/sdk/public/Content/ContentPublicModel.js +102 -0
  138. package/sdk/public/Content/ContentPublicValidator.d.ts +18 -1
  139. package/sdk/public/Content/ContentPublicValidator.js +26 -0
  140. package/sdk/public/Partner/PartnerPublicClient.d.ts +1 -1
  141. package/sdk/public/Partner/PartnerPublicClient.js +6 -11
  142. package/sdk/public/Partner/PartnerPublicModel.d.ts +248 -72
  143. package/sdk/public/Partner/PartnerPublicModel.js +81 -71
  144. package/sdk/public/Partner/PartnerPublicValidator.d.ts +2 -2
  145. package/sdk/public/Partner/PartnerPublicValidator.js +1 -1
  146. package/sdk/public/Webhook/WebhookPublicClient.js +1 -40
@@ -996,6 +996,105 @@ class Order {
996
996
  return response;
997
997
  }
998
998
 
999
+ /**
1000
+ * @param {OrderPlatformValidator.FailedOrderLogsParam} arg - Arg object
1001
+ * @param {object} [arg.requestHeaders={}] - Request headers. Default is `{}`
1002
+ * @param {import("../PlatformAPIClient").Options} - Options
1003
+ * @returns {Promise<OrderPlatformModel.FailedOrderLogs>} - Success response
1004
+ * @name failedOrderLogs
1005
+ * @summary: List failed order logs
1006
+ * @description: Get failed order logs listing for filters based on order Id, user contact number, user email Id and sales channel Id. - Check out [method documentation](https://partners.fynd.com/help/docs/sdk/platform/order/failedOrderLogs/).
1007
+ */
1008
+ async failedOrderLogs(
1009
+ {
1010
+ applicationId,
1011
+ pageNo,
1012
+ pageSize,
1013
+ searchType,
1014
+ searchValue,
1015
+ requestHeaders,
1016
+ } = { requestHeaders: {} },
1017
+ { responseHeaders } = { responseHeaders: false }
1018
+ ) {
1019
+ const { error } = OrderPlatformValidator.failedOrderLogs().validate(
1020
+ {
1021
+ applicationId,
1022
+ pageNo,
1023
+ pageSize,
1024
+ searchType,
1025
+ searchValue,
1026
+ },
1027
+ { abortEarly: false, allowUnknown: true }
1028
+ );
1029
+ if (error) {
1030
+ return Promise.reject(new FDKClientValidationError(error));
1031
+ }
1032
+
1033
+ // Showing warrnings if extra unknown parameters are found
1034
+ const {
1035
+ error: warrning,
1036
+ } = OrderPlatformValidator.failedOrderLogs().validate(
1037
+ {
1038
+ applicationId,
1039
+ pageNo,
1040
+ pageSize,
1041
+ searchType,
1042
+ searchValue,
1043
+ },
1044
+ { abortEarly: false, allowUnknown: false }
1045
+ );
1046
+ if (warrning) {
1047
+ Logger({
1048
+ level: "WARN",
1049
+ message: `Parameter Validation warrnings for platform > Order > failedOrderLogs \n ${warrning}`,
1050
+ });
1051
+ }
1052
+
1053
+ const query_params = {};
1054
+ query_params["application_id"] = applicationId;
1055
+ query_params["page_no"] = pageNo;
1056
+ query_params["page_size"] = pageSize;
1057
+ query_params["search_type"] = searchType;
1058
+ query_params["search_value"] = searchValue;
1059
+
1060
+ const xHeaders = {};
1061
+
1062
+ const response = await PlatformAPIClient.execute(
1063
+ this.config,
1064
+ "get",
1065
+ `/service/platform/order-manage/v1.0/company/${this.config.companyId}/orders/failed`,
1066
+ query_params,
1067
+ undefined,
1068
+ { ...xHeaders, ...requestHeaders },
1069
+ { responseHeaders }
1070
+ );
1071
+
1072
+ let responseData = response;
1073
+ if (responseHeaders) {
1074
+ responseData = response[0];
1075
+ }
1076
+
1077
+ const {
1078
+ error: res_error,
1079
+ } = OrderPlatformModel.FailedOrderLogs().validate(responseData, {
1080
+ abortEarly: false,
1081
+ allowUnknown: true,
1082
+ });
1083
+
1084
+ if (res_error) {
1085
+ if (this.config.options.strictResponseCheck === true) {
1086
+ return Promise.reject(new FDKResponseValidationError(res_error));
1087
+ } else {
1088
+ Logger({
1089
+ level: "WARN",
1090
+ message: `Response Validation Warnings for platform > Order > failedOrderLogs \n ${res_error}`,
1091
+ });
1092
+ }
1093
+ }
1094
+
1095
+ return response;
1096
+ }
1097
+
999
1098
  /**
1000
1099
  * @param {OrderPlatformValidator.FetchRefundModeConfigParam} arg - Arg object
1001
1100
  * @param {object} [arg.requestHeaders={}] - Request headers. Default is `{}`
@@ -2982,6 +3081,129 @@ class Order {
2982
3081
  return response;
2983
3082
  }
2984
3083
 
3084
+ /**
3085
+ * @param {Object} arg - Arg object.
3086
+ * @param {string} [arg.lane] - Lane refers to a section where orders are
3087
+ * assigned, indicating its grouping.
3088
+ * @param {string} [arg.searchType] - Search_type refers to the field that
3089
+ * will be used as the target for the search operation.
3090
+ * @param {string} [arg.bagStatus] - Bag_status refers to status of the
3091
+ * entity. Filters orders based on the status.
3092
+ * @param {number} [arg.timeToDispatch] - Time_to_dispatch refers to
3093
+ * estimated SLA time.
3094
+ * @param {string} [arg.paymentMethods] - Comma separated values of payment
3095
+ * methods that were used to place order.
3096
+ * @param {string} [arg.tags] - Tags refers to additional descriptive labels
3097
+ * associated with the order
3098
+ * @param {string} [arg.searchValue] - Search_value is matched against the
3099
+ * field specified by the search_type
3100
+ * @param {string} [arg.fromDate] - Date time in UTC timezone as per ISO format.
3101
+ * @param {string} [arg.toDate] - Date time in UTC timezone as per ISO format.
3102
+ * @param {string} [arg.startDate] - Date time in UTC timezone as per ISO format.
3103
+ * @param {string} [arg.endDate] - Date time in UTC timezone as per ISO format.
3104
+ * @param {string} [arg.dpIds] - Delivery Partner IDs to which shipments are assigned.
3105
+ * @param {string} [arg.stores] - A comma-separated list of store IDs used
3106
+ * to filter results to only those related to specific stores.
3107
+ * @param {string} [arg.salesChannels] - A comma-separated list of sales
3108
+ * channel IDs to filter results based on the sales channels involved.
3109
+ * @param {number} [arg.pageSize] - Determines the number of results
3110
+ * returned per page.
3111
+ * @param {boolean} [arg.isPrioritySort] -
3112
+ * @param {string} [arg.customMeta] -
3113
+ * @param {boolean} [arg.myOrders] -
3114
+ * @param {boolean} [arg.showCrossCompanyData] - Flag to view cross &
3115
+ * non-cross company order
3116
+ * @param {string} [arg.customerId] - The unique identifier for the customer
3117
+ * associated with the query, useful for filtering results to a specific customer.
3118
+ * @param {string} [arg.orderType] -
3119
+ * @param {boolean} [arg.allowInactive] - Flag indicating whether inactive
3120
+ * shipments are allowed
3121
+ * @param {string} [arg.groupEntity] - Defines the grouping criterion for
3122
+ * retrieving shipments or orders. It specifies whether the results should
3123
+ * be organized based on shipment groups or order groups. For example,
3124
+ * using 'shipments' groups results by shipment, while an invalid value
3125
+ * like 'abcd' may not be recognized, leading to errors or default behavior.
3126
+ * @param {boolean} [arg.enforceDateFilter] - Applies a date filter for
3127
+ * listing orders. This is useful when fetching data for a specific date
3128
+ * range while performing searches.
3129
+ * @param {string} [arg.fulfillmentType] - Define the Fulfillment Type for
3130
+ * Listing Orders, This is use when we want to get list of shipments or
3131
+ * orders by cross store or cross company or fulfilling Store (by
3132
+ * default), this is also depends on the login user accessType and store access
3133
+ * @returns {Paginator<OrderPlatformModel.OrderListingResponseSchema>}
3134
+ * @summary: List orders
3135
+ * @description: Get a list of orders based on the filters provided.
3136
+ */
3137
+ getOrdersPaginator({
3138
+ lane,
3139
+ searchType,
3140
+ bagStatus,
3141
+ timeToDispatch,
3142
+ paymentMethods,
3143
+ tags,
3144
+ searchValue,
3145
+ fromDate,
3146
+ toDate,
3147
+ startDate,
3148
+ endDate,
3149
+ dpIds,
3150
+ stores,
3151
+ salesChannels,
3152
+ pageSize,
3153
+ isPrioritySort,
3154
+ customMeta,
3155
+ myOrders,
3156
+ showCrossCompanyData,
3157
+ customerId,
3158
+ orderType,
3159
+ allowInactive,
3160
+ groupEntity,
3161
+ enforceDateFilter,
3162
+ fulfillmentType,
3163
+ } = {}) {
3164
+ const paginator = new Paginator();
3165
+ const callback = async () => {
3166
+ const pageId = paginator.nextId;
3167
+ const pageNo = paginator.pageNo;
3168
+ const pageType = "number";
3169
+ const data = await this.getOrders({
3170
+ lane: lane,
3171
+ searchType: searchType,
3172
+ bagStatus: bagStatus,
3173
+ timeToDispatch: timeToDispatch,
3174
+ paymentMethods: paymentMethods,
3175
+ tags: tags,
3176
+ searchValue: searchValue,
3177
+ fromDate: fromDate,
3178
+ toDate: toDate,
3179
+ startDate: startDate,
3180
+ endDate: endDate,
3181
+ dpIds: dpIds,
3182
+ stores: stores,
3183
+ salesChannels: salesChannels,
3184
+ pageNo: pageNo,
3185
+ pageSize: pageSize,
3186
+ isPrioritySort: isPrioritySort,
3187
+ customMeta: customMeta,
3188
+ myOrders: myOrders,
3189
+ showCrossCompanyData: showCrossCompanyData,
3190
+ customerId: customerId,
3191
+ orderType: orderType,
3192
+ allowInactive: allowInactive,
3193
+ groupEntity: groupEntity,
3194
+ enforceDateFilter: enforceDateFilter,
3195
+ fulfillmentType: fulfillmentType,
3196
+ });
3197
+ paginator.setPaginator({
3198
+ hasNext: data.page.has_next ? true : false,
3199
+ nextId: data.page.next_id,
3200
+ });
3201
+ return data;
3202
+ };
3203
+ paginator.setCallback(callback.bind(this));
3204
+ return paginator;
3205
+ }
3206
+
2985
3207
  /**
2986
3208
  * @param {OrderPlatformValidator.GetRoleBasedActionsParam} arg - Arg object
2987
3209
  * @param {object} [arg.requestHeaders={}] - Request headers. Default is `{}`
@@ -3549,6 +3771,181 @@ class Order {
3549
3771
  return response;
3550
3772
  }
3551
3773
 
3774
+ /**
3775
+ * @param {Object} arg - Arg object.
3776
+ * @param {string} [arg.lane] - Name of lane for which data is to be fetched
3777
+ * @param {string} [arg.bagStatus] - Comma separated values of bag statuses.
3778
+ * @param {string} [arg.statusAssigned] - Used to filter shipments based on
3779
+ * status present in shipment_status_history. For more information on
3780
+ * these statuses, refer to the Fynd Partners documentation.
3781
+ * @param {boolean} [arg.statusOverrideLane] - Use this flag to fetch by
3782
+ * bag_status and override lane.
3783
+ * @param {number} [arg.timeToDispatch] - Indicates the time to dispatch.
3784
+ * @param {string} [arg.searchType] - Specifies the key used to determine
3785
+ * the type of search being performed.
3786
+ * @param {string} [arg.searchValue] - The value corresponding to the search
3787
+ * type, such as a specific shipment ID or order ID.
3788
+ * @param {string} [arg.fromDate] - Start Date in DD-MM-YYYY format
3789
+ * @param {string} [arg.toDate] - End Date in DD-MM-YYYY format
3790
+ * @param {string} [arg.startDate] - The UTC start date in ISO format
3791
+ * (YYYY-MM-DDTHH:MM:SSZ) for filtering results.
3792
+ * @param {string} [arg.endDate] - The UTC end date in ISO format
3793
+ * (YYYY-MM-DDTHH:MM:SSZ) for filtering results.
3794
+ * @param {string} [arg.statusAssignedStartDate] - Specifies the starting
3795
+ * UTC date and time (in ISO format, YYYY-MM-DDTHH:MM:SSZ) to define the
3796
+ * lower boundary for filtering shipments based on the `created_at`
3797
+ * timestamp of statuses in the shipment's status history. It allows
3798
+ * filtering statuses that were created within a specific time range.
3799
+ * @param {string} [arg.statusAssignedEndDate] - Specifies the ending UTC
3800
+ * date and time (in ISO format, YYYY-MM-DDTHH:MM:SSZ) to define the upper
3801
+ * boundary for filtering shipments based on the `created_at` timestamp of
3802
+ * statuses in the shipment's status history.
3803
+ * @param {string} [arg.dpIds] - A comma-separated list of delivery partner
3804
+ * IDs to filter results by specific delivery partners.
3805
+ * @param {string} [arg.stores] - A comma-separated list of store IDs used
3806
+ * to filter results to only those related to specific stores.
3807
+ * @param {string} [arg.salesChannels] - A comma-separated list of sales
3808
+ * channel IDs to filter results based on the sales channels involved.
3809
+ * @param {number} [arg.pageSize] - Determines the number of results
3810
+ * returned per page.
3811
+ * @param {boolean} [arg.fetchActiveShipment] - A boolean flag that
3812
+ * indicates whether to include only active shipments in the results.
3813
+ * @param {boolean} [arg.allowInactive] - A flag indicating whether to allow
3814
+ * the inclusion of inactive shipments in the results.
3815
+ * @param {boolean} [arg.excludeLockedShipments] - A flag to specify whether
3816
+ * to exclude shipments that are locked from the results.
3817
+ * @param {string} [arg.paymentMethods] - A comma-separated list of payment methods.
3818
+ * @param {string} [arg.channelShipmentId] - The shipment ID used in the
3819
+ * application, which can be used to reference specific shipments.
3820
+ * @param {string} [arg.channelOrderId] - The order ID used in the application.
3821
+ * @param {string} [arg.customMeta] - Custom metadata associated with the
3822
+ * query, allowing for additional filtering or information to be passed.
3823
+ * @param {string} [arg.orderingChannel] - The channel through which the
3824
+ * order was placed.
3825
+ * @param {string} [arg.companyAffiliateTag] - A tag used to identify the
3826
+ * company's affiliation for filtering or reporting purposes.
3827
+ * @param {boolean} [arg.myOrders] - A boolean flag indicating whether the
3828
+ * query should return only the user's orders.
3829
+ * @param {string} [arg.platformUserId] - The unique identifier of the user
3830
+ * on the platform, useful for filtering orders related to a specific user.
3831
+ * @param {string} [arg.sortType] - Determines the sorting order of the
3832
+ * results based on specific criteria.
3833
+ * @param {boolean} [arg.showCrossCompanyData] - A flag indicating whether
3834
+ * to include data from both cross-company and non-cross-company orders in
3835
+ * the results.
3836
+ * @param {string} [arg.tags] - A comma-separated list of tags associated
3837
+ * with the orders to filter results based on specific characteristics.
3838
+ * @param {string} [arg.customerId] - The unique identifier for the customer
3839
+ * associated with the query, useful for filtering results to a specific customer.
3840
+ * @param {string} [arg.orderType] - The type of order being queried.
3841
+ * @param {string} [arg.groupEntity] - Defines the grouping criterion for
3842
+ * retrieving shipments or orders. It specifies whether the results should
3843
+ * be organized based on shipment groups or order groups. For example,
3844
+ * using 'shipments' groups results by shipment, while an invalid value
3845
+ * like 'abcd' may not be recognized, leading to errors or default behavior.
3846
+ * @param {boolean} [arg.enforceDateFilter] - Applies a date filter for
3847
+ * listing shipments. This is useful when fetching data for a specific
3848
+ * date range while performing searches.
3849
+ * @param {string} [arg.fulfillmentType] - Define the Fulfillment Type for
3850
+ * Listing Orders, This is use when we want to get list of shipments or
3851
+ * orders by cross store or cross company or fulfilling Store (by
3852
+ * default), this is also depends on the login user accessType and store access
3853
+ * @returns {Paginator<OrderPlatformModel.ShipmentInternalPlatformViewResponseSchema>}
3854
+ * @summary: List shipments
3855
+ * @description: Get a list of shipments based on the filters provided
3856
+ */
3857
+ getShipmentsPaginator({
3858
+ lane,
3859
+ bagStatus,
3860
+ statusAssigned,
3861
+ statusOverrideLane,
3862
+ timeToDispatch,
3863
+ searchType,
3864
+ searchValue,
3865
+ fromDate,
3866
+ toDate,
3867
+ startDate,
3868
+ endDate,
3869
+ statusAssignedStartDate,
3870
+ statusAssignedEndDate,
3871
+ dpIds,
3872
+ stores,
3873
+ salesChannels,
3874
+ pageSize,
3875
+ fetchActiveShipment,
3876
+ allowInactive,
3877
+ excludeLockedShipments,
3878
+ paymentMethods,
3879
+ channelShipmentId,
3880
+ channelOrderId,
3881
+ customMeta,
3882
+ orderingChannel,
3883
+ companyAffiliateTag,
3884
+ myOrders,
3885
+ platformUserId,
3886
+ sortType,
3887
+ showCrossCompanyData,
3888
+ tags,
3889
+ customerId,
3890
+ orderType,
3891
+ groupEntity,
3892
+ enforceDateFilter,
3893
+ fulfillmentType,
3894
+ } = {}) {
3895
+ const paginator = new Paginator();
3896
+ const callback = async () => {
3897
+ const pageId = paginator.nextId;
3898
+ const pageNo = paginator.pageNo;
3899
+ const pageType = "number";
3900
+ const data = await this.getShipments({
3901
+ lane: lane,
3902
+ bagStatus: bagStatus,
3903
+ statusAssigned: statusAssigned,
3904
+ statusOverrideLane: statusOverrideLane,
3905
+ timeToDispatch: timeToDispatch,
3906
+ searchType: searchType,
3907
+ searchValue: searchValue,
3908
+ fromDate: fromDate,
3909
+ toDate: toDate,
3910
+ startDate: startDate,
3911
+ endDate: endDate,
3912
+ statusAssignedStartDate: statusAssignedStartDate,
3913
+ statusAssignedEndDate: statusAssignedEndDate,
3914
+ dpIds: dpIds,
3915
+ stores: stores,
3916
+ salesChannels: salesChannels,
3917
+ pageNo: pageNo,
3918
+ pageSize: pageSize,
3919
+ fetchActiveShipment: fetchActiveShipment,
3920
+ allowInactive: allowInactive,
3921
+ excludeLockedShipments: excludeLockedShipments,
3922
+ paymentMethods: paymentMethods,
3923
+ channelShipmentId: channelShipmentId,
3924
+ channelOrderId: channelOrderId,
3925
+ customMeta: customMeta,
3926
+ orderingChannel: orderingChannel,
3927
+ companyAffiliateTag: companyAffiliateTag,
3928
+ myOrders: myOrders,
3929
+ platformUserId: platformUserId,
3930
+ sortType: sortType,
3931
+ showCrossCompanyData: showCrossCompanyData,
3932
+ tags: tags,
3933
+ customerId: customerId,
3934
+ orderType: orderType,
3935
+ groupEntity: groupEntity,
3936
+ enforceDateFilter: enforceDateFilter,
3937
+ fulfillmentType: fulfillmentType,
3938
+ });
3939
+ paginator.setPaginator({
3940
+ hasNext: data.page.has_next ? true : false,
3941
+ nextId: data.page.next_id,
3942
+ });
3943
+ return data;
3944
+ };
3945
+ paginator.setCallback(callback.bind(this));
3946
+ return paginator;
3947
+ }
3948
+
3552
3949
  /**
3553
3950
  * @param {OrderPlatformValidator.GetStateManagerConfigParam} arg - Arg object
3554
3951
  * @param {object} [arg.requestHeaders={}] - Request headers. Default is `{}`
@@ -662,8 +662,8 @@ export = OrderPlatformModel;
662
662
  * @property {string} [text] - A reason for the activity or change.
663
663
  * @property {string} [category] - Category of the reason for the status change.
664
664
  * @property {string} [state] - Current state related to the reason.
665
- * @property {string} [dislay_name] - Display name of the reason for better user
666
- * understanding.
665
+ * @property {string} [display_name] - Display name of the reason for better
666
+ * user understanding.
667
667
  * @property {number} [code] - Unique code identifying the reason.
668
668
  * @property {number} [quantity] - Quantity related to the reason, if applicable.
669
669
  */
@@ -2413,9 +2413,9 @@ export = OrderPlatformModel;
2413
2413
  * met and optimizing logistics.
2414
2414
  * @property {QuestionSet[]} question_set - An array of question sets linked to
2415
2415
  * the reason, defining the questions to be answered.
2416
- * @property {Object} meta - Meta object of the reason. This contains any
2416
+ * @property {Object} [meta] - Meta object of the reason. This contains any
2417
2417
  * additional metadata that might be relevant to the reason.
2418
- * @property {boolean} is_active - Indicates whether the reason is currently
2418
+ * @property {boolean} [is_active] - Indicates whether the reason is currently
2419
2419
  * active. Active reasons are those that are currently in use within the system.
2420
2420
  */
2421
2421
  /**
@@ -2558,6 +2558,7 @@ export = OrderPlatformModel;
2558
2558
  * @property {number} [current] - The current page number.
2559
2559
  * @property {string} type - The type of the page, such as 'PageType'.
2560
2560
  * @property {number} [size] - The number of items per page.
2561
+ * @property {number} [page_size] - The number of items per page.
2561
2562
  */
2562
2563
  /**
2563
2564
  * @typedef BagReasonMeta
@@ -2709,6 +2710,7 @@ export = OrderPlatformModel;
2709
2710
  * @property {string} [uid] - A unique identifier for the user associated with
2710
2711
  * the address.
2711
2712
  * @property {string} [user_id] - The unique identifier of the user in the system.
2713
+ * @property {string} [code] - A unique identifier associated with store.
2712
2714
  */
2713
2715
  /**
2714
2716
  * @typedef ShipmentListingChannel
@@ -3577,6 +3579,8 @@ export = OrderPlatformModel;
3577
3579
  * at the ordering store.
3578
3580
  * @property {string} [state] - The state or region where the ordering store is situated.
3579
3581
  * @property {string} [city] - The city in which the ordering store is located.
3582
+ * @property {string} [name] - The name of the ordering store.
3583
+ * @property {string} [store_email] - The email address of the ordering store.
3580
3584
  */
3581
3585
  /**
3582
3586
  * @typedef DPDetailsData
@@ -3809,6 +3813,8 @@ export = OrderPlatformModel;
3809
3813
  * @property {string} [size] - The size of the article, which may be relevant
3810
3814
  * for clothing.
3811
3815
  * @property {string[]} [tags] - An array of tags associated with the article.
3816
+ * @property {Object} [_custom_json] - A custom JSON object containing
3817
+ * additional details or configurations specific to the article.
3812
3818
  */
3813
3819
  /**
3814
3820
  * @typedef OrderBrandName
@@ -4024,6 +4030,7 @@ export = OrderPlatformModel;
4024
4030
  * with a fulfilling store.
4025
4031
  * @property {string} state - The state or region where the fulfilling store is located.
4026
4032
  * @property {string} city - The city in which the fulfilling store is situated.
4033
+ * @property {string} [store_email] - The email address of the fulfilling store.
4027
4034
  */
4028
4035
  /**
4029
4036
  * @typedef ShipmentPayments
@@ -6169,10 +6176,10 @@ type HistoryReason = {
6169
6176
  */
6170
6177
  state?: string;
6171
6178
  /**
6172
- * - Display name of the reason for better user
6173
- * understanding.
6179
+ * - Display name of the reason for better
6180
+ * user understanding.
6174
6181
  */
6175
- dislay_name?: string;
6182
+ display_name?: string;
6176
6183
  /**
6177
6184
  * - Unique code identifying the reason.
6178
6185
  */
@@ -9723,12 +9730,12 @@ type Reason = {
9723
9730
  * - Meta object of the reason. This contains any
9724
9731
  * additional metadata that might be relevant to the reason.
9725
9732
  */
9726
- meta: any;
9733
+ meta?: any;
9727
9734
  /**
9728
9735
  * - Indicates whether the reason is currently
9729
9736
  * active. Active reasons are those that are currently in use within the system.
9730
9737
  */
9731
- is_active: boolean;
9738
+ is_active?: boolean;
9732
9739
  };
9733
9740
  /** @returns {Conditions} */
9734
9741
  declare function Conditions(): Conditions;
@@ -10046,6 +10053,10 @@ type Page = {
10046
10053
  * - The number of items per page.
10047
10054
  */
10048
10055
  size?: number;
10056
+ /**
10057
+ * - The number of items per page.
10058
+ */
10059
+ page_size?: number;
10049
10060
  };
10050
10061
  /** @returns {BagReasonMeta} */
10051
10062
  declare function BagReasonMeta(): BagReasonMeta;
@@ -10404,6 +10415,10 @@ type Address = {
10404
10415
  * - The unique identifier of the user in the system.
10405
10416
  */
10406
10417
  user_id?: string;
10418
+ /**
10419
+ * - A unique identifier associated with store.
10420
+ */
10421
+ code?: string;
10407
10422
  };
10408
10423
  /** @returns {ShipmentListingChannel} */
10409
10424
  declare function ShipmentListingChannel(): ShipmentListingChannel;
@@ -12296,6 +12311,14 @@ type OrderingStoreDetails = {
12296
12311
  * - The city in which the ordering store is located.
12297
12312
  */
12298
12313
  city?: string;
12314
+ /**
12315
+ * - The name of the ordering store.
12316
+ */
12317
+ name?: string;
12318
+ /**
12319
+ * - The email address of the ordering store.
12320
+ */
12321
+ store_email?: string;
12299
12322
  };
12300
12323
  /** @returns {DPDetailsData} */
12301
12324
  declare function DPDetailsData(): DPDetailsData;
@@ -12832,6 +12855,11 @@ type OrderBagArticle = {
12832
12855
  * - An array of tags associated with the article.
12833
12856
  */
12834
12857
  tags?: string[];
12858
+ /**
12859
+ * - A custom JSON object containing
12860
+ * additional details or configurations specific to the article.
12861
+ */
12862
+ _custom_json?: any;
12835
12863
  };
12836
12864
  /** @returns {OrderBrandName} */
12837
12865
  declare function OrderBrandName(): OrderBrandName;
@@ -13270,6 +13298,10 @@ type FulfillingStore = {
13270
13298
  * - The city in which the fulfilling store is situated.
13271
13299
  */
13272
13300
  city: string;
13301
+ /**
13302
+ * - The email address of the fulfilling store.
13303
+ */
13304
+ store_email?: string;
13273
13305
  };
13274
13306
  /** @returns {ShipmentPayments} */
13275
13307
  declare function ShipmentPayments(): ShipmentPayments;
@@ -734,8 +734,8 @@ const Joi = require("joi");
734
734
  * @property {string} [text] - A reason for the activity or change.
735
735
  * @property {string} [category] - Category of the reason for the status change.
736
736
  * @property {string} [state] - Current state related to the reason.
737
- * @property {string} [dislay_name] - Display name of the reason for better user
738
- * understanding.
737
+ * @property {string} [display_name] - Display name of the reason for better
738
+ * user understanding.
739
739
  * @property {number} [code] - Unique code identifying the reason.
740
740
  * @property {number} [quantity] - Quantity related to the reason, if applicable.
741
741
  */
@@ -2632,9 +2632,9 @@ const Joi = require("joi");
2632
2632
  * met and optimizing logistics.
2633
2633
  * @property {QuestionSet[]} question_set - An array of question sets linked to
2634
2634
  * the reason, defining the questions to be answered.
2635
- * @property {Object} meta - Meta object of the reason. This contains any
2635
+ * @property {Object} [meta] - Meta object of the reason. This contains any
2636
2636
  * additional metadata that might be relevant to the reason.
2637
- * @property {boolean} is_active - Indicates whether the reason is currently
2637
+ * @property {boolean} [is_active] - Indicates whether the reason is currently
2638
2638
  * active. Active reasons are those that are currently in use within the system.
2639
2639
  */
2640
2640
 
@@ -2791,6 +2791,7 @@ const Joi = require("joi");
2791
2791
  * @property {number} [current] - The current page number.
2792
2792
  * @property {string} type - The type of the page, such as 'PageType'.
2793
2793
  * @property {number} [size] - The number of items per page.
2794
+ * @property {number} [page_size] - The number of items per page.
2794
2795
  */
2795
2796
 
2796
2797
  /**
@@ -2949,6 +2950,7 @@ const Joi = require("joi");
2949
2950
  * @property {string} [uid] - A unique identifier for the user associated with
2950
2951
  * the address.
2951
2952
  * @property {string} [user_id] - The unique identifier of the user in the system.
2953
+ * @property {string} [code] - A unique identifier associated with store.
2952
2954
  */
2953
2955
 
2954
2956
  /**
@@ -3858,6 +3860,8 @@ const Joi = require("joi");
3858
3860
  * at the ordering store.
3859
3861
  * @property {string} [state] - The state or region where the ordering store is situated.
3860
3862
  * @property {string} [city] - The city in which the ordering store is located.
3863
+ * @property {string} [name] - The name of the ordering store.
3864
+ * @property {string} [store_email] - The email address of the ordering store.
3861
3865
  */
3862
3866
 
3863
3867
  /**
@@ -4103,6 +4107,8 @@ const Joi = require("joi");
4103
4107
  * @property {string} [size] - The size of the article, which may be relevant
4104
4108
  * for clothing.
4105
4109
  * @property {string[]} [tags] - An array of tags associated with the article.
4110
+ * @property {Object} [_custom_json] - A custom JSON object containing
4111
+ * additional details or configurations specific to the article.
4106
4112
  */
4107
4113
 
4108
4114
  /**
@@ -4332,6 +4338,7 @@ const Joi = require("joi");
4332
4338
  * with a fulfilling store.
4333
4339
  * @property {string} state - The state or region where the fulfilling store is located.
4334
4340
  * @property {string} city - The city in which the fulfilling store is situated.
4341
+ * @property {string} [store_email] - The email address of the fulfilling store.
4335
4342
  */
4336
4343
 
4337
4344
  /**
@@ -6032,7 +6039,7 @@ class OrderPlatformModel {
6032
6039
  text: Joi.string().allow("").allow(null),
6033
6040
  category: Joi.string().allow("").allow(null),
6034
6041
  state: Joi.string().allow("").allow(null),
6035
- dislay_name: Joi.string().allow("").allow(null),
6042
+ display_name: Joi.string().allow("").allow(null),
6036
6043
  code: Joi.number().allow(null),
6037
6044
  quantity: Joi.number().allow(null),
6038
6045
  });
@@ -7727,8 +7734,8 @@ class OrderPlatformModel {
7727
7734
  question_set: Joi.array()
7728
7735
  .items(OrderPlatformModel.QuestionSet())
7729
7736
  .required(),
7730
- meta: Joi.object().pattern(/\S/, Joi.any()).required(),
7731
- is_active: Joi.boolean().required(),
7737
+ meta: Joi.object().pattern(/\S/, Joi.any()),
7738
+ is_active: Joi.boolean(),
7732
7739
  }).id("Reason");
7733
7740
  }
7734
7741
 
@@ -7875,6 +7882,7 @@ class OrderPlatformModel {
7875
7882
  current: Joi.number(),
7876
7883
  type: Joi.string().allow("").required(),
7877
7884
  size: Joi.number(),
7885
+ page_size: Joi.number(),
7878
7886
  });
7879
7887
  }
7880
7888
 
@@ -7985,6 +7993,7 @@ class OrderPlatformModel {
7985
7993
  state_code: Joi.string().allow(""),
7986
7994
  uid: Joi.string().allow(""),
7987
7995
  user_id: Joi.string().allow(""),
7996
+ code: Joi.string().allow("").allow(null),
7988
7997
  }).allow(null);
7989
7998
  }
7990
7999
 
@@ -8620,6 +8629,8 @@ class OrderPlatformModel {
8620
8629
  contact_person: Joi.string().allow("").allow(null),
8621
8630
  state: Joi.string().allow("").allow(null),
8622
8631
  city: Joi.string().allow("").allow(null),
8632
+ name: Joi.string().allow("").allow(null),
8633
+ store_email: Joi.string().allow("").allow(null),
8623
8634
  });
8624
8635
  }
8625
8636
 
@@ -8807,6 +8818,7 @@ class OrderPlatformModel {
8807
8818
  uid: Joi.string().allow("").allow(null),
8808
8819
  size: Joi.string().allow("").allow(null),
8809
8820
  tags: Joi.array().items(Joi.string().allow("")).allow(null, ""),
8821
+ _custom_json: Joi.object().pattern(/\S/, Joi.any()).allow(null, ""),
8810
8822
  });
8811
8823
  }
8812
8824
 
@@ -8992,6 +9004,7 @@ class OrderPlatformModel {
8992
9004
  contact_person: Joi.string().allow("").required(),
8993
9005
  state: Joi.string().allow("").required(),
8994
9006
  city: Joi.string().allow("").required(),
9007
+ store_email: Joi.string().allow("").allow(null),
8995
9008
  });
8996
9009
  }
8997
9010