@gofynd/fdk-client-javascript 1.4.8-beta.2 → 1.4.8

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 (198) hide show
  1. package/README.md +26 -1
  2. package/package.json +2 -2
  3. package/sdk/application/ApplicationClient.d.ts +8 -0
  4. package/sdk/application/ApplicationClient.js +14 -0
  5. package/sdk/application/Cart/CartApplicationClient.d.ts +20 -20
  6. package/sdk/application/Cart/CartApplicationClient.js +20 -20
  7. package/sdk/application/Cart/CartApplicationModel.d.ts +2446 -664
  8. package/sdk/application/Cart/CartApplicationModel.js +783 -552
  9. package/sdk/application/Cart/CartApplicationValidator.d.ts +268 -194
  10. package/sdk/application/Cart/CartApplicationValidator.js +100 -114
  11. package/sdk/application/Catalog/CatalogApplicationClient.d.ts +53 -53
  12. package/sdk/application/Catalog/CatalogApplicationClient.js +53 -53
  13. package/sdk/application/Catalog/CatalogApplicationModel.d.ts +2012 -503
  14. package/sdk/application/Catalog/CatalogApplicationModel.js +603 -453
  15. package/sdk/application/Catalog/CatalogApplicationValidator.d.ts +64 -64
  16. package/sdk/application/Catalog/CatalogApplicationValidator.js +32 -32
  17. package/sdk/application/Common/CommonApplicationClient.d.ts +2 -2
  18. package/sdk/application/Common/CommonApplicationClient.js +2 -2
  19. package/sdk/application/Common/CommonApplicationModel.d.ts +170 -90
  20. package/sdk/application/Common/CommonApplicationModel.js +59 -58
  21. package/sdk/application/Common/CommonApplicationValidator.d.ts +8 -5
  22. package/sdk/application/Common/CommonApplicationValidator.js +3 -3
  23. package/sdk/application/Communication/CommunicationApplicationClient.d.ts +2 -2
  24. package/sdk/application/Communication/CommunicationApplicationClient.js +2 -2
  25. package/sdk/application/Communication/CommunicationApplicationModel.d.ts +170 -35
  26. package/sdk/application/Communication/CommunicationApplicationModel.js +54 -33
  27. package/sdk/application/Configuration/ConfigurationApplicationClient.d.ts +15 -15
  28. package/sdk/application/Configuration/ConfigurationApplicationClient.js +15 -15
  29. package/sdk/application/Configuration/ConfigurationApplicationModel.d.ts +624 -443
  30. package/sdk/application/Configuration/ConfigurationApplicationModel.js +259 -248
  31. package/sdk/application/Configuration/ConfigurationApplicationValidator.d.ts +32 -24
  32. package/sdk/application/Configuration/ConfigurationApplicationValidator.js +14 -13
  33. package/sdk/application/Content/ContentApplicationClient.d.ts +16 -16
  34. package/sdk/application/Content/ContentApplicationClient.js +16 -16
  35. package/sdk/application/Content/ContentApplicationModel.d.ts +1206 -281
  36. package/sdk/application/Content/ContentApplicationModel.js +342 -276
  37. package/sdk/application/Content/ContentApplicationValidator.d.ts +28 -17
  38. package/sdk/application/Content/ContentApplicationValidator.js +11 -10
  39. package/sdk/application/FileStorage/FileStorageApplicationClient.d.ts +3 -3
  40. package/sdk/application/FileStorage/FileStorageApplicationClient.js +3 -3
  41. package/sdk/application/FileStorage/FileStorageApplicationModel.d.ts +146 -37
  42. package/sdk/application/FileStorage/FileStorageApplicationModel.js +38 -36
  43. package/sdk/application/Lead/LeadApplicationClient.d.ts +3 -3
  44. package/sdk/application/Lead/LeadApplicationClient.js +3 -3
  45. package/sdk/application/Lead/LeadApplicationModel.d.ts +195 -134
  46. package/sdk/application/Lead/LeadApplicationModel.js +110 -67
  47. package/sdk/application/Lead/LeadApplicationValidator.d.ts +8 -8
  48. package/sdk/application/Lead/LeadApplicationValidator.js +4 -4
  49. package/sdk/application/Logistic/LogisticApplicationClient.d.ts +10 -10
  50. package/sdk/application/Logistic/LogisticApplicationClient.js +10 -10
  51. package/sdk/application/Logistic/LogisticApplicationModel.d.ts +1039 -221
  52. package/sdk/application/Logistic/LogisticApplicationModel.js +342 -199
  53. package/sdk/application/Logistic/LogisticApplicationValidator.d.ts +76 -82
  54. package/sdk/application/Logistic/LogisticApplicationValidator.js +38 -41
  55. package/sdk/application/Order/OrderApplicationClient.d.ts +10 -10
  56. package/sdk/application/Order/OrderApplicationClient.js +10 -10
  57. package/sdk/application/Order/OrderApplicationModel.d.ts +1401 -324
  58. package/sdk/application/Order/OrderApplicationModel.js +392 -316
  59. package/sdk/application/Order/OrderApplicationValidator.d.ts +32 -30
  60. package/sdk/application/Order/OrderApplicationValidator.js +15 -14
  61. package/sdk/application/Payment/PaymentApplicationClient.d.ts +43 -43
  62. package/sdk/application/Payment/PaymentApplicationClient.js +43 -43
  63. package/sdk/application/Payment/PaymentApplicationModel.d.ts +1111 -1022
  64. package/sdk/application/Payment/PaymentApplicationModel.js +537 -521
  65. package/sdk/application/Payment/PaymentApplicationValidator.d.ts +82 -49
  66. package/sdk/application/Payment/PaymentApplicationValidator.js +30 -30
  67. package/sdk/application/Rewards/RewardsApplicationModel.d.ts +28 -7
  68. package/sdk/application/Rewards/RewardsApplicationModel.js +7 -7
  69. package/sdk/application/Share/ShareApplicationModel.d.ts +178 -38
  70. package/sdk/application/Share/ShareApplicationModel.js +53 -37
  71. package/sdk/application/Share/ShareApplicationValidator.d.ts +4 -2
  72. package/sdk/application/Share/ShareApplicationValidator.js +2 -1
  73. package/sdk/application/Theme/ThemeApplicationClient.d.ts +4 -4
  74. package/sdk/application/Theme/ThemeApplicationClient.js +14 -8
  75. package/sdk/application/Theme/ThemeApplicationModel.d.ts +528 -287
  76. package/sdk/application/Theme/ThemeApplicationModel.js +208 -172
  77. package/sdk/application/Theme/ThemeApplicationValidator.d.ts +17 -12
  78. package/sdk/application/Theme/ThemeApplicationValidator.js +8 -6
  79. package/sdk/application/User/UserApplicationClient.d.ts +36 -36
  80. package/sdk/application/User/UserApplicationClient.js +36 -36
  81. package/sdk/application/User/UserApplicationModel.d.ts +1062 -255
  82. package/sdk/application/User/UserApplicationModel.js +298 -244
  83. package/sdk/application/User/UserApplicationValidator.d.ts +80 -80
  84. package/sdk/application/User/UserApplicationValidator.js +40 -40
  85. package/sdk/application/Webhook/WebhookApplicationClient.d.ts +1 -1
  86. package/sdk/application/Webhook/WebhookApplicationClient.js +1 -1
  87. package/sdk/application/Webhook/WebhookApplicationModel.d.ts +20 -5
  88. package/sdk/application/Webhook/WebhookApplicationModel.js +5 -5
  89. package/sdk/common/Clickstream.js +95 -15
  90. package/sdk/common/Constant.d.ts +9 -0
  91. package/sdk/common/Constant.js +11 -0
  92. package/sdk/common/Utility.js +19 -0
  93. package/sdk/common/utils.js +8 -1
  94. package/sdk/partner/Lead/LeadPartnerModel.d.ts +28 -7
  95. package/sdk/partner/Lead/LeadPartnerModel.js +7 -7
  96. package/sdk/partner/Logistics/LogisticsPartnerModel.d.ts +75 -8
  97. package/sdk/partner/Logistics/LogisticsPartnerModel.js +59 -7
  98. package/sdk/partner/Logistics/LogisticsPartnerValidator.js +2 -2
  99. package/sdk/partner/PartnerClient.d.ts +8 -0
  100. package/sdk/partner/PartnerClient.js +14 -0
  101. package/sdk/partner/Theme/ThemePartnerClient.d.ts +20 -0
  102. package/sdk/partner/Theme/ThemePartnerClient.js +158 -0
  103. package/sdk/partner/Theme/ThemePartnerModel.d.ts +45 -6
  104. package/sdk/partner/Theme/ThemePartnerModel.js +33 -4
  105. package/sdk/partner/Theme/ThemePartnerValidator.d.ts +2 -0
  106. package/sdk/partner/Theme/ThemePartnerValidator.js +14 -0
  107. package/sdk/partner/Webhook/WebhookPartnerModel.d.ts +28 -7
  108. package/sdk/partner/Webhook/WebhookPartnerModel.js +7 -7
  109. package/sdk/platform/Analytics/AnalyticsPlatformModel.d.ts +28 -7
  110. package/sdk/platform/Analytics/AnalyticsPlatformModel.js +7 -7
  111. package/sdk/platform/Billing/BillingPlatformClient.d.ts +21 -10
  112. package/sdk/platform/Billing/BillingPlatformClient.js +167 -83
  113. package/sdk/platform/Billing/BillingPlatformModel.d.ts +2849 -565
  114. package/sdk/platform/Billing/BillingPlatformModel.js +935 -556
  115. package/sdk/platform/Billing/BillingPlatformValidator.d.ts +30 -14
  116. package/sdk/platform/Billing/BillingPlatformValidator.js +31 -16
  117. package/sdk/platform/Cart/CartPlatformModel.d.ts +28 -7
  118. package/sdk/platform/Cart/CartPlatformModel.js +8 -8
  119. package/sdk/platform/Catalog/CatalogPlatformApplicationClient.d.ts +1 -1
  120. package/sdk/platform/Catalog/CatalogPlatformApplicationClient.js +20 -0
  121. package/sdk/platform/Catalog/CatalogPlatformApplicationValidator.d.ts +37 -0
  122. package/sdk/platform/Catalog/CatalogPlatformApplicationValidator.js +16 -0
  123. package/sdk/platform/Catalog/CatalogPlatformClient.d.ts +12 -2
  124. package/sdk/platform/Catalog/CatalogPlatformClient.js +41 -1
  125. package/sdk/platform/Catalog/CatalogPlatformModel.d.ts +46 -12
  126. package/sdk/platform/Catalog/CatalogPlatformModel.js +14 -11
  127. package/sdk/platform/Catalog/CatalogPlatformValidator.d.ts +40 -0
  128. package/sdk/platform/Catalog/CatalogPlatformValidator.js +17 -0
  129. package/sdk/platform/Communication/CommunicationPlatformModel.d.ts +28 -7
  130. package/sdk/platform/Communication/CommunicationPlatformModel.js +7 -7
  131. package/sdk/platform/CompanyProfile/CompanyProfilePlatformModel.d.ts +28 -7
  132. package/sdk/platform/CompanyProfile/CompanyProfilePlatformModel.js +7 -7
  133. package/sdk/platform/Configuration/ConfigurationPlatformClient.d.ts +0 -97
  134. package/sdk/platform/Configuration/ConfigurationPlatformClient.js +77 -782
  135. package/sdk/platform/Configuration/ConfigurationPlatformModel.d.ts +24 -701
  136. package/sdk/platform/Configuration/ConfigurationPlatformModel.js +7 -539
  137. package/sdk/platform/Configuration/ConfigurationPlatformValidator.d.ts +1 -183
  138. package/sdk/platform/Configuration/ConfigurationPlatformValidator.js +0 -134
  139. package/sdk/platform/Content/ContentPlatformApplicationClient.d.ts +0 -10
  140. package/sdk/platform/Content/ContentPlatformApplicationClient.js +0 -79
  141. package/sdk/platform/Content/ContentPlatformApplicationValidator.d.ts +1 -15
  142. package/sdk/platform/Content/ContentPlatformApplicationValidator.js +0 -13
  143. package/sdk/platform/Content/ContentPlatformModel.d.ts +60 -17
  144. package/sdk/platform/Content/ContentPlatformModel.js +30 -15
  145. package/sdk/platform/Discount/DiscountPlatformModel.d.ts +28 -7
  146. package/sdk/platform/Discount/DiscountPlatformModel.js +7 -7
  147. package/sdk/platform/FileStorage/FileStoragePlatformModel.d.ts +127 -25
  148. package/sdk/platform/FileStorage/FileStoragePlatformModel.js +37 -25
  149. package/sdk/platform/Finance/FinancePlatformClient.d.ts +30 -30
  150. package/sdk/platform/Finance/FinancePlatformClient.js +30 -30
  151. package/sdk/platform/Finance/FinancePlatformModel.d.ts +1601 -348
  152. package/sdk/platform/Finance/FinancePlatformModel.js +488 -352
  153. package/sdk/platform/Lead/LeadPlatformModel.d.ts +28 -7
  154. package/sdk/platform/Lead/LeadPlatformModel.js +7 -7
  155. package/sdk/platform/Order/OrderPlatformClient.d.ts +22 -0
  156. package/sdk/platform/Order/OrderPlatformClient.js +165 -0
  157. package/sdk/platform/Order/OrderPlatformModel.d.ts +631 -39
  158. package/sdk/platform/Order/OrderPlatformModel.js +367 -41
  159. package/sdk/platform/Order/OrderPlatformValidator.d.ts +32 -1
  160. package/sdk/platform/Order/OrderPlatformValidator.js +28 -0
  161. package/sdk/platform/Payment/PaymentPlatformModel.d.ts +30 -9
  162. package/sdk/platform/Payment/PaymentPlatformModel.js +9 -9
  163. package/sdk/platform/PlatformClient.d.ts +8 -0
  164. package/sdk/platform/PlatformClient.js +14 -0
  165. package/sdk/platform/Rewards/RewardsPlatformModel.d.ts +28 -7
  166. package/sdk/platform/Rewards/RewardsPlatformModel.js +7 -7
  167. package/sdk/platform/Serviceability/ServiceabilityPlatformApplicationClient.d.ts +12 -9
  168. package/sdk/platform/Serviceability/ServiceabilityPlatformApplicationClient.js +12 -9
  169. package/sdk/platform/Serviceability/ServiceabilityPlatformClient.d.ts +1 -1
  170. package/sdk/platform/Serviceability/ServiceabilityPlatformClient.js +4 -4
  171. package/sdk/platform/Serviceability/ServiceabilityPlatformModel.d.ts +139 -22
  172. package/sdk/platform/Serviceability/ServiceabilityPlatformModel.js +98 -21
  173. package/sdk/platform/Serviceability/ServiceabilityPlatformValidator.d.ts +4 -4
  174. package/sdk/platform/Serviceability/ServiceabilityPlatformValidator.js +4 -4
  175. package/sdk/platform/Share/SharePlatformModel.d.ts +28 -7
  176. package/sdk/platform/Share/SharePlatformModel.js +7 -7
  177. package/sdk/platform/Theme/ThemePlatformModel.d.ts +18 -5
  178. package/sdk/platform/Theme/ThemePlatformModel.js +7 -4
  179. package/sdk/platform/User/UserPlatformModel.d.ts +18 -20
  180. package/sdk/platform/User/UserPlatformModel.js +9 -11
  181. package/sdk/platform/Webhook/WebhookPlatformModel.d.ts +54 -33
  182. package/sdk/platform/Webhook/WebhookPlatformModel.js +33 -33
  183. package/sdk/public/Billing/BillingPublicClient.d.ts +11 -0
  184. package/sdk/public/Billing/BillingPublicClient.js +80 -0
  185. package/sdk/public/Billing/BillingPublicModel.d.ts +584 -99
  186. package/sdk/public/Billing/BillingPublicModel.js +252 -87
  187. package/sdk/public/Billing/BillingPublicValidator.d.ts +10 -1
  188. package/sdk/public/Billing/BillingPublicValidator.js +12 -0
  189. package/sdk/public/PublicClient.d.ts +0 -2
  190. package/sdk/public/PublicClient.js +0 -4
  191. package/sdk/public/index.d.ts +0 -1
  192. package/sdk/public/index.js +0 -2
  193. package/sdk/public/Inventory/InventoryPublicClient.d.ts +0 -87
  194. package/sdk/public/Inventory/InventoryPublicClient.js +0 -529
  195. package/sdk/public/Inventory/InventoryPublicModel.d.ts +0 -393
  196. package/sdk/public/Inventory/InventoryPublicModel.js +0 -448
  197. package/sdk/public/Inventory/InventoryPublicValidator.d.ts +0 -91
  198. package/sdk/public/Inventory/InventoryPublicValidator.js +0 -85
@@ -2,78 +2,96 @@ const Joi = require("joi");
2
2
 
3
3
  /**
4
4
  * @typedef AllAvailablePageSchema
5
- * @property {AvailablePageSchema[]} [pages]
5
+ * @property {AvailablePageSchema[]} [pages] - List all the pages.
6
6
  */
7
7
 
8
8
  /**
9
9
  * @typedef AvailablePageSchema
10
- * @property {string} [value]
11
- * @property {string} [text]
12
- * @property {string} [path]
13
- * @property {string} [type]
14
- * @property {AvailablePageSchemaSections[]} [sections]
15
- * @property {AvailablePageSectionMetaAttributes[]} [sections_meta]
16
- * @property {string} [theme]
10
+ * @property {string} [value] - The name of the page. For example, 'about-us'.
11
+ * @property {string} [text] - The textual content associated with the page. For
12
+ * example, 'about us'.
13
+ * @property {string} [path] - The url path for the page. For example, 'about-us'.
14
+ * @property {string} [type] - The type of the page, which can be 'system',
15
+ * 'custom', or 'sections'.
16
+ * @property {AvailablePageSchemaSections[]} [sections] - An array of sections
17
+ * that make up the page.
18
+ * @property {AvailablePageSectionMetaAttributes[]} [sections_meta] - An array
19
+ * of metadata attributes for the sections of the page, each represented by an object.
20
+ * @property {string} [theme] - The unique identifier for the theme associated
21
+ * with the section.
17
22
  * @property {AvailablePageSeo} [seo]
18
- * @property {Object[]} [props]
19
- * @property {string} [_id]
23
+ * @property {Object[]} [props] - An array of properties associated with the
24
+ * object, where each property is represented as an object.
25
+ * @property {string} [_id] - The unique identifier for the object.
20
26
  */
21
27
 
22
28
  /**
23
29
  * @typedef AvailablePageSectionMetaAttributes
24
- * @property {Object} [attributes]
30
+ * @property {Object} [attributes] - A key-value pair object containing metadata
31
+ * attributes for the section.
25
32
  */
26
33
 
27
34
  /**
28
35
  * @typedef SEOMetaItem
29
- * @property {string} [title]
30
- * @property {SEOMetaItems[]} [items]
36
+ * @property {string} [title] - The title of the meta tag item.
37
+ * @property {SEOMetaItems[]} [items] - An array of items within the meta tag,
38
+ * each represented by an object.
31
39
  */
32
40
 
33
41
  /**
34
42
  * @typedef SEOMetaItems
35
- * @property {string} [key]
36
- * @property {string} [value]
43
+ * @property {string} [key] - The key of the meta tag item.
44
+ * @property {string} [value] - The value of the meta tag item.
37
45
  */
38
46
 
39
47
  /**
40
48
  * @typedef SEOSitemap
41
- * @property {number} [priority]
42
- * @property {string} [frequency]
49
+ * @property {number} [priority] - The priority of the page in the sitemap,
50
+ * typically a value between 0.0 And 1.0.
51
+ * @property {string} [frequency] - The frequency with which the content of the
52
+ * page is likely to change, such as 'always', 'hourly', 'daily', 'weekly',
53
+ * 'monthly', 'yearly', or 'never'.
43
54
  */
44
55
 
45
56
  /**
46
57
  * @typedef SEObreadcrumb
47
- * @property {string} [url]
58
+ * @property {string} [url] - The url associated with the breadcrumb.
48
59
  * @property {Action} [action]
49
60
  */
50
61
 
51
62
  /**
52
63
  * @typedef Action
53
- * @property {string} [type]
64
+ * @property {string} [type] - Type of action to be taken e.g, page.
54
65
  * @property {ActionPage} [page]
55
66
  * @property {ActionPage} [popup]
56
67
  */
57
68
 
58
69
  /**
59
70
  * @typedef AvailablePageSeo
60
- * @property {string} [title]
61
- * @property {string} [description]
62
- * @property {string} [canonical_url]
63
- * @property {SEOMetaItem[]} [meta_tags]
71
+ * @property {string} [title] - The seo title of the page.
72
+ * @property {string} [description] - The seo description of the page.
73
+ * @property {string} [canonical_url] - The canonical url of the page.
74
+ * @property {SEOMetaItem[]} [meta_tags] - An array of meta tags for the page,
75
+ * each represented by an object.
64
76
  * @property {SEOSitemap} [sitemap]
65
- * @property {SEObreadcrumb[]} [breadcrumb]
66
- * @property {string} [_id]
77
+ * @property {SEObreadcrumb[]} [breadcrumb] - An array representing breadcrumb
78
+ * navigation, where each item provides information about a step in the
79
+ * navigation path.
80
+ * @property {string} [_id] - The unique identifier for the object.
67
81
  */
68
82
 
69
83
  /**
70
84
  * @typedef AvailablePageSchemaSections
71
- * @property {string} [name]
72
- * @property {string} [label]
73
- * @property {string} [source]
74
- * @property {Object} [props]
75
- * @property {Object[]} [blocks]
76
- * @property {Object} [preset]
85
+ * @property {string} [name] - The name of the section.
86
+ * @property {string} [label] - A label for the section, which can be used for
87
+ * display purposes.
88
+ * @property {string} [source] - The source of the section, for example, 'themebundle'.
89
+ * @property {Object} [props] - An object containing various properties
90
+ * associated with the section.
91
+ * @property {Object[]} [blocks] - An array of blocks within the section, where
92
+ * each block is represented as an object.
93
+ * @property {Object} [preset] - An object containing preset configurations for
94
+ * the section.
77
95
  * @property {AvailablePagePredicate} [predicate]
78
96
  */
79
97
 
@@ -84,63 +102,70 @@ const Joi = require("joi");
84
102
  * @property {AvailablePageRoutePredicate} [route]
85
103
  * @property {AvailablePageSchedulePredicate} [schedule]
86
104
  * @property {AvailablePagePlatformPredicate} [platform]
87
- * @property {string[]} [zones] - An array of zone ids associated with the section
105
+ * @property {string[]} [zones] - An array of zone ids associated with the section.
88
106
  */
89
107
 
90
108
  /**
91
109
  * @typedef AvailablePageScreenPredicate
92
- * @property {boolean} [mobile]
93
- * @property {boolean} [desktop]
94
- * @property {boolean} [tablet]
110
+ * @property {boolean} [mobile] - Indicates if the predicate applies to mobile screens.
111
+ * @property {boolean} [desktop] - Indicates if the predicate applies to desktop screens.
112
+ * @property {boolean} [tablet] - Indicates if the predicate applies to tablet screens.
95
113
  */
96
114
 
97
115
  /**
98
116
  * @typedef AvailablePageUserPredicate
99
- * @property {boolean} [authenticated]
100
- * @property {boolean} [anonymous]
117
+ * @property {boolean} [authenticated] - Indicates if the predicate applies to
118
+ * authenticated users.
119
+ * @property {boolean} [anonymous] - Indicates if the predicate applies to
120
+ * anonymous users.
101
121
  */
102
122
 
103
123
  /**
104
124
  * @typedef AvailablePageRoutePredicate
105
- * @property {string} [selected]
106
- * @property {string} [exact_url]
107
- * @property {Object} [query]
125
+ * @property {string} [selected] - Specifies the type of route selection, which
126
+ * can be 'none', 'exact', or 'query'.
127
+ * @property {string} [exact_url] - The exact url for the route when 'selected'
128
+ * is set to 'exact'.
129
+ * @property {Object} [query] - An object representing query parameters for the
130
+ * route when 'selected' is set to 'query'.
108
131
  */
109
132
 
110
133
  /**
111
134
  * @typedef AvailablePageSchedulePredicate
112
- * @property {string} [cron]
113
- * @property {string} [start]
114
- * @property {string} [end]
135
+ * @property {string} [cron] - A cron expression specifying the schedule for the
136
+ * predicate.
137
+ * @property {string} [start] - The start date and time for the schedule, in iso
138
+ * 8601 format.
139
+ * @property {string} [end] - The end date and time for the schedule, in iso 8601 format.
115
140
  */
116
141
 
117
142
  /**
118
143
  * @typedef ThemesSchema
119
144
  * @property {Font} [font]
120
145
  * @property {Config} [config]
121
- * @property {boolean} [applied] - Whether the theme has been applied or not
122
- * @property {boolean} [is_private] - Whether the theme is private or not
123
- * @property {string[]} [tags] - An array of tags associated with the theme
124
- * @property {string} [_id] - The unique identifier of the theme
125
- * @property {string} [application_id] - The ID of the application
126
- * @property {string} [marketplace_theme_id] - The ID of the theme in the marketplace
146
+ * @property {boolean} [applied] - Whether the theme has been applied or not.
147
+ * @property {boolean} [is_private] - Whether the theme is private or not.
148
+ * @property {string[]} [tags] - An array of tags associated with the theme.
149
+ * @property {string} [_id] - The unique identifier of the theme.
150
+ * @property {string} [application_id] - The id of the application.
151
+ * @property {string} [marketplace_theme_id] - The id of the theme in the marketplace.
127
152
  * @property {ThemeMeta} [meta]
128
- * @property {string} [name] - The name of the theme
129
- * @property {string} [template_theme_id] - The ID of the template theme
130
- * @property {string} [version] - The version of the theme
131
- * @property {Object} [styles] - The styles associated with the theme
132
- * @property {string} [created_at] - The creation timestamp of the theme
133
- * @property {string} [updated_at] - The last update timestamp of the theme
153
+ * @property {string} [name] - The name of the theme.
154
+ * @property {string} [template_theme_id] - The id of the template theme.
155
+ * @property {string} [version] - The version of the theme.
156
+ * @property {Object} [styles] - The styles associated with the theme.
157
+ * @property {string} [created_at] - The creation timestamp of the theme.
158
+ * @property {string} [updated_at] - The last update timestamp of the theme.
134
159
  * @property {Assets} [assets]
135
- * @property {SectionItem[]} [available_sections] - Available sections information
136
- * @property {string} [theme_type]
137
- * @property {number} [company_id] - The company id in which sales channel exists
160
+ * @property {SectionItem[]} [available_sections] - Available sections information.
161
+ * @property {string} [theme_type] - The theme or category type associated with the page.
162
+ * @property {number} [company_id] - The company id in which sales channel exists.
138
163
  */
139
164
 
140
165
  /**
141
166
  * @typedef Font
142
167
  * @property {FontVariants} variants
143
- * @property {string} family - The font family
168
+ * @property {string} family - The font family.
144
169
  */
145
170
 
146
171
  /**
@@ -154,23 +179,25 @@ const Joi = require("joi");
154
179
 
155
180
  /**
156
181
  * @typedef FontVariant
157
- * @property {string} name - The name of the font variant
158
- * @property {string} file - The URL of the font file
182
+ * @property {string} name - The name of the font variant.
183
+ * @property {string} file - The url of the font file.
159
184
  */
160
185
 
161
186
  /**
162
187
  * @typedef Config
163
- * @property {string} current - The current configuration
164
- * @property {ThemeConfiguration[]} list - A list of configurations
188
+ * @property {string} current - The current configuration.
189
+ * @property {ThemeConfiguration[]} list - A list of configurations.
165
190
  * @property {GlobalSchema} [global_schema]
166
191
  * @property {Preset} [preset]
167
192
  */
168
193
 
169
194
  /**
170
195
  * @typedef ThemeConfiguration
171
- * @property {string} [name] - The name of the configuration
172
- * @property {Object} [global_config]
173
- * @property {string[]} [page] - An array of pages
196
+ * @property {string} [name] - The name of the configuration.
197
+ * @property {Object} [global_config] - A global configuration object containing
198
+ * various settings for the theme.
199
+ * @property {string[]} [page] - An array of pages associated with the theme
200
+ * configuration.
174
201
  */
175
202
 
176
203
  /**
@@ -180,41 +207,41 @@ const Joi = require("joi");
180
207
 
181
208
  /**
182
209
  * @typedef CustomProps
183
- * @property {string} [header_bg_color] - The header background color
184
- * @property {string} [header_text_color] - The header text color
185
- * @property {string} [header_border_color] - The header border color
186
- * @property {string} [header_icon_color] - The header icon color
210
+ * @property {string} [header_bg_color] - The header background color.
211
+ * @property {string} [header_text_color] - The header text color.
212
+ * @property {string} [header_border_color] - The header border color.
213
+ * @property {string} [header_icon_color] - The header icon color.
187
214
  * @property {string} [header_cart_notification_bg_color] - The header cart
188
- * notification background color
215
+ * notification background color.
189
216
  * @property {string} [header_cart_notification_text_color] - The header cart
190
- * notification text color
191
- * @property {string} [header_nav_hover_color] - The header navigation hover color
192
- * @property {string} [button_primary_color] - The primary button color
193
- * @property {string} [button_primary_label_color] - The primary button label color
194
- * @property {string} [button_add_to_cart_color] - The add to cart button color
217
+ * notification text color.
218
+ * @property {string} [header_nav_hover_color] - The header navigation hover color.
219
+ * @property {string} [button_primary_color] - The primary button color.
220
+ * @property {string} [button_primary_label_color] - The primary button label color.
221
+ * @property {string} [button_add_to_cart_color] - The add to cart button color.
195
222
  * @property {string} [button_add_to_cart_label_color] - The add to cart button
196
- * label color
197
- * @property {string} [button_secondary_color] - The secondary button color
198
- * @property {string} [button_secondary_label_color] - The secondary button label color
199
- * @property {string} [button_tertiary_color] - The tertiary button color
200
- * @property {string} [button_tertiary_label_color] - The tertiary button label color
201
- * @property {string} [button_tertiary_hover_color] - The tertiary button hover color
223
+ * label color.
224
+ * @property {string} [button_secondary_color] - The secondary button color.
225
+ * @property {string} [button_secondary_label_color] - The secondary button label color.
226
+ * @property {string} [button_tertiary_color] - The tertiary button color.
227
+ * @property {string} [button_tertiary_label_color] - The tertiary button label color.
228
+ * @property {string} [button_tertiary_hover_color] - The tertiary button hover color.
202
229
  * @property {string} [button_tertiary_hover_text_color] - The tertiary button
203
- * hover text color
204
- * @property {string} [text_heading_link_color] - The text heading link color
205
- * @property {string} [text_body_color] - The text body color
206
- * @property {string} [text_price_color] - The text price color
207
- * @property {string} [text_sale_price_color] - The text sale price color
230
+ * hover text color.
231
+ * @property {string} [text_heading_link_color] - The text heading link color.
232
+ * @property {string} [text_body_color] - The text body color.
233
+ * @property {string} [text_price_color] - The text price color.
234
+ * @property {string} [text_sale_price_color] - The text sale price color.
208
235
  * @property {string} [text_strikethrough_price_color] - The text strikethrough
209
- * price color
210
- * @property {string} [text_discount_color] - The text discount color
211
- * @property {string} [footer_bg_color] - The footer background color
212
- * @property {string} [footer_text_color] - The footer text color
213
- * @property {string} [footer_border_color] - The footer border color
214
- * @property {string} [footer_nav_hover_color] - The footer navigation hover color
215
- * @property {boolean} [disable_cart] - Whether to disable the cart or not
216
- * @property {boolean} [is_menu_below_logo] - Whether the menu is below the logo or not
217
- * @property {string} [menu_position] - The position of the menu
236
+ * price color.
237
+ * @property {string} [text_discount_color] - The text discount color.
238
+ * @property {string} [footer_bg_color] - The footer background color.
239
+ * @property {string} [footer_text_color] - The footer text color.
240
+ * @property {string} [footer_border_color] - The footer border color.
241
+ * @property {string} [footer_nav_hover_color] - The footer navigation hover color.
242
+ * @property {boolean} [disable_cart] - Whether to disable the cart or not.
243
+ * @property {boolean} [is_menu_below_logo] - Whether the menu is below the logo or not.
244
+ * @property {string} [menu_position] - The position of the menu.
218
245
  */
219
246
 
220
247
  /**
@@ -242,69 +269,69 @@ const Joi = require("joi");
242
269
 
243
270
  /**
244
271
  * @typedef UserAlertsSetting
245
- * @property {string} [success_background] - The success background color
246
- * @property {string} [success_text] - The success text color
247
- * @property {string} [error_background] - The error background color
248
- * @property {string} [error_text] - The error text color
249
- * @property {string} [info_background] - The info background color
250
- * @property {string} [info_text] - The info text color
272
+ * @property {string} [success_background] - The success background color.
273
+ * @property {string} [success_text] - The success text color.
274
+ * @property {string} [error_background] - The error background color.
275
+ * @property {string} [error_text] - The error text color.
276
+ * @property {string} [info_background] - The info background color.
277
+ * @property {string} [info_text] - The info text color.
251
278
  */
252
279
 
253
280
  /**
254
281
  * @typedef ThemeSetting
255
- * @property {string} [page_background] - The page background color
256
- * @property {string} [theme_accent] - The theme accent color
282
+ * @property {string} [page_background] - The page background color.
283
+ * @property {string} [theme_accent] - The theme accent color.
257
284
  */
258
285
 
259
286
  /**
260
287
  * @typedef TextSetting
261
- * @property {string} [text_heading] - The text heading color
262
- * @property {string} [text_body] - The text body color
263
- * @property {string} [text_label] - The text label color
264
- * @property {string} [text_secondary] - The secondary text color
288
+ * @property {string} [text_heading] - The text heading color.
289
+ * @property {string} [text_body] - The text body color.
290
+ * @property {string} [text_label] - The text label color.
291
+ * @property {string} [text_secondary] - The secondary text color.
265
292
  */
266
293
 
267
294
  /**
268
295
  * @typedef ButtonSetting
269
- * @property {string} [button_primary] - The primary button color
270
- * @property {string} [button_secondary] - The secondary button color
271
- * @property {string} [button_link] - The button link color
296
+ * @property {string} [button_primary] - The primary button color.
297
+ * @property {string} [button_secondary] - The secondary button color.
298
+ * @property {string} [button_link] - The button link color.
272
299
  */
273
300
 
274
301
  /**
275
302
  * @typedef SaleDiscountSetting
276
- * @property {string} [sale_badge_background] - The sale badge background color
277
- * @property {string} [sale_badge_text] - The sale badge text color
278
- * @property {string} [sale_discount_text] - The sale discount text color
279
- * @property {string} [sale_timer] - The sale timer color
303
+ * @property {string} [sale_badge_background] - The sale badge background color.
304
+ * @property {string} [sale_badge_text] - The sale badge text color.
305
+ * @property {string} [sale_discount_text] - The sale discount text color.
306
+ * @property {string} [sale_timer] - The sale timer color.
280
307
  */
281
308
 
282
309
  /**
283
310
  * @typedef HeaderSetting
284
- * @property {string} [header_background] - The header background color
285
- * @property {string} [header_nav] - The header navigation color
286
- * @property {string} [header_icon] - The header icon color
311
+ * @property {string} [header_background] - The header background color.
312
+ * @property {string} [header_nav] - The header navigation color.
313
+ * @property {string} [header_icon] - The header icon color.
287
314
  */
288
315
 
289
316
  /**
290
317
  * @typedef FooterSetting
291
- * @property {string} [footer_background] - The footer background color
292
- * @property {string} [footer_bottom_background] - The footer bottom background color
293
- * @property {string} [footer_heading_text] - The footer heading text color
294
- * @property {string} [footer_body_text] - The footer body text color
295
- * @property {string} [footer_icon] - The footer icon color
318
+ * @property {string} [footer_background] - The footer background color.
319
+ * @property {string} [footer_bottom_background] - The footer bottom background color.
320
+ * @property {string} [footer_heading_text] - The footer heading text color.
321
+ * @property {string} [footer_body_text] - The footer body text color.
322
+ * @property {string} [footer_icon] - The footer icon color.
296
323
  */
297
324
 
298
325
  /**
299
326
  * @typedef OverlayPopupSetting
300
- * @property {string} [dialog_backgroung] - The dialog background color
301
- * @property {string} [overlay] - The overlay color
327
+ * @property {string} [dialog_backgroung] - The dialog background color.
328
+ * @property {string} [overlay] - The overlay color.
302
329
  */
303
330
 
304
331
  /**
305
332
  * @typedef DividerStrokeHighlightSetting
306
- * @property {string} [divider_strokes] - The divider strokes color
307
- * @property {string} [highlight] - The highlight color
333
+ * @property {string} [divider_strokes] - The divider strokes color.
334
+ * @property {string} [highlight] - The highlight color.
308
335
  */
309
336
 
310
337
  /**
@@ -321,18 +348,18 @@ const Joi = require("joi");
321
348
 
322
349
  /**
323
350
  * @typedef Colors
324
- * @property {string} [primary_color] - The primary color
325
- * @property {string} [secondary_color] - The secondary color
326
- * @property {string} [accent_color] - The accent color
327
- * @property {string} [link_color] - The link color
328
- * @property {string} [button_secondary_color] - The secondary button color
329
- * @property {string} [bg_color] - The background color
351
+ * @property {string} [primary_color] - The primary color.
352
+ * @property {string} [secondary_color] - The secondary color.
353
+ * @property {string} [accent_color] - The accent color.
354
+ * @property {string} [link_color] - The link color.
355
+ * @property {string} [button_secondary_color] - The secondary button color.
356
+ * @property {string} [bg_color] - The background color.
330
357
  */
331
358
 
332
359
  /**
333
360
  * @typedef AuthConfig
334
- * @property {boolean} [show_header_auth] - Whether to show header authentication or not
335
- * @property {boolean} [show_footer_auth] - Whether to show footer authentication or not
361
+ * @property {boolean} [show_header_auth] - Whether to show header authentication or not.
362
+ * @property {boolean} [show_footer_auth] - Whether to show footer authentication or not.
336
363
  */
337
364
 
338
365
  /**
@@ -344,30 +371,30 @@ const Joi = require("joi");
344
371
  /**
345
372
  * @typedef ThemeMeta
346
373
  * @property {ThemePayment} [payment]
347
- * @property {string} [description] - The description of the theme
348
- * @property {string[]} [industry] - An array of industries associated with the theme
374
+ * @property {string} [description] - The description of the theme.
375
+ * @property {string[]} [industry] - An array of industries associated with the theme.
349
376
  * @property {Release} [release]
350
377
  * @property {Images} [images]
351
- * @property {string} [slug] - The slug of the theme
352
- * @property {string} [name] - The name of the theme
378
+ * @property {string} [slug] - The slug of the theme.
379
+ * @property {string} [name] - The name of the theme.
353
380
  */
354
381
 
355
382
  /**
356
383
  * @typedef ThemePayment
357
- * @property {boolean} [is_paid] - Whether the theme is paid or not
358
- * @property {number} [amount] - The amount of the theme
384
+ * @property {boolean} [is_paid] - Whether the theme is paid or not.
385
+ * @property {number} [amount] - The amount of the theme.
359
386
  */
360
387
 
361
388
  /**
362
389
  * @typedef Release
363
- * @property {string} [notes] - The release notes of the theme
364
- * @property {string} [version] - The version of the theme
390
+ * @property {string} [notes] - The release notes of the theme.
391
+ * @property {string} [version] - The version of the theme.
365
392
  */
366
393
 
367
394
  /**
368
395
  * @typedef Images
369
- * @property {string} [desktop] - The URL of the desktop image
370
- * @property {string} [mobile] - The URL of the mobile image
396
+ * @property {string} [desktop] - The url of the desktop image.
397
+ * @property {string} [mobile] - The url of the mobile image.
371
398
  */
372
399
 
373
400
  /**
@@ -379,49 +406,53 @@ const Joi = require("joi");
379
406
 
380
407
  /**
381
408
  * @typedef UMDJs
382
- * @property {string[]} [links]
409
+ * @property {string[]} [links] - An array of strings representing urls or links.
383
410
  */
384
411
 
385
412
  /**
386
413
  * @typedef CommonJS
387
- * @property {string} [link]
414
+ * @property {string} [link] - A string representing the url or link to the
415
+ * commonjs module.
388
416
  */
389
417
 
390
418
  /**
391
419
  * @typedef CSS
392
- * @property {string[]} [links]
420
+ * @property {string[]} [links] - An array of strings representing urls for css assets.
393
421
  */
394
422
 
395
423
  /**
396
424
  * @typedef SectionItem
397
- * @property {Object[]} [props]
398
- * @property {Object[]} [blocks] - Blocks
399
- * @property {string} [name] - Name of the section
400
- * @property {string} [label] - Label for the section
425
+ * @property {Object[]} [props] - An array of objects representing properties or
426
+ * attributes of the section item.
427
+ * @property {Object[]} [blocks] - An array having blocks of the section.
428
+ * @property {string} [name] - Name of the section.
429
+ * @property {string} [label] - Label for the section.
401
430
  */
402
431
 
403
432
  /**
404
433
  * @typedef GlobalSchema
405
- * @property {Prop[]} [props]
434
+ * @property {Prop[]} [props] - An array of properties associated with the
435
+ * global schema, where each property is represented by an object.
406
436
  */
407
437
 
408
438
  /**
409
439
  * @typedef Prop
410
- * @property {string} [type] - The type of the property
411
- * @property {string} [category] - The category of the property
412
- * @property {string} [id] - The ID of the property
413
- * @property {string} [label] - The label of the property
414
- * @property {string} [info] - Additional information about the property
440
+ * @property {string} [type] - The type of the property.
441
+ * @property {string} [category] - The category of the property.
442
+ * @property {string} [id] - The id of the property.
443
+ * @property {string} [label] - The label of the property.
444
+ * @property {string} [info] - Additional information about the property.
415
445
  */
416
446
 
417
447
  /**
418
448
  * @typedef Preset
419
- * @property {Page[]} [pages]
449
+ * @property {Page[]} [pages] - An array of pages included in the preset, each
450
+ * represented by an object.
420
451
  */
421
452
 
422
453
  /**
423
454
  * @typedef Page
424
- * @property {Section[]} [sections]
455
+ * @property {Section[]} [sections] - An array of sections included in the page.
425
456
  * @property {string} [value] - The value of the page.
426
457
  */
427
458
 
@@ -435,7 +466,7 @@ const Joi = require("joi");
435
466
 
436
467
  /**
437
468
  * @typedef SectionPreset
438
- * @property {Block[]} [blocks]
469
+ * @property {Block[]} [blocks] - An array of blocks included in the section preset.
439
470
  */
440
471
 
441
472
  /**
@@ -447,7 +478,7 @@ const Joi = require("joi");
447
478
  /**
448
479
  * @typedef UrlProp
449
480
  * @property {string} [type] - The type of the property.
450
- * @property {string} [value] - The value of the URL property.
481
+ * @property {string} [value] - The value of the url property.
451
482
  */
452
483
 
453
484
  /**
@@ -476,7 +507,8 @@ const Joi = require("joi");
476
507
 
477
508
  /**
478
509
  * @typedef Section
479
- * @property {Block[]} [blocks]
510
+ * @property {Block[]} [blocks] - An array of blocks included in the section,
511
+ * each represented by an object conforming to the block schema.
480
512
  * @property {Predicate} [predicate]
481
513
  * @property {string} [name] - The name of the section.
482
514
  * @property {SectionProps} [props]
@@ -513,31 +545,32 @@ const Joi = require("joi");
513
545
  /**
514
546
  * @typedef Route
515
547
  * @property {string} [selected] - The selected route.
516
- * @property {string} [exact_url] - The exact URL of the route.
548
+ * @property {string} [exact_url] - The exact url of the route.
517
549
  */
518
550
 
519
551
  /**
520
552
  * @typedef AvailablePagePlatformPredicate
521
- * @property {boolean} [ios] - Section visibility on ios platform
522
- * @property {boolean} [android] - Section visibility on android platform
523
- * @property {boolean} [web] - Section visibility on web platform
553
+ * @property {boolean} [ios] - Section visibility on ios platform.
554
+ * @property {boolean} [android] - Section visibility on android platform.
555
+ * @property {boolean} [web] - Section visibility on web platform.
524
556
  */
525
557
 
526
558
  /**
527
559
  * @typedef BlitzkriegInternalServerErrorSchema
528
- * @property {string} [message]
560
+ * @property {string} [message] - A descriptive message detailing the internal
561
+ * server error.
529
562
  */
530
563
 
531
564
  /**
532
565
  * @typedef BlitzkriegApiErrorSchema
533
- * @property {string} [message]
566
+ * @property {string} [message] - A descriptive message detailing the api error.
534
567
  */
535
568
 
536
569
  /**
537
570
  * @typedef ActionPage
538
- * @property {Object} [params]
539
- * @property {Object} [query]
540
- * @property {string} [url]
571
+ * @property {Object} [params] - Parameters that should be considered in path.
572
+ * @property {Object} [query] - Query parameter if any to be added to the action.
573
+ * @property {string} [url] - The URL for the action.
541
574
  * @property {PageType} type
542
575
  */
543
576
 
@@ -553,6 +586,7 @@ const Joi = require("joi");
553
586
  * | "category"
554
587
  * | "collection"
555
588
  * | "collections"
589
+ * | "custom"
556
590
  * | "contact-us"
557
591
  * | "external"
558
592
  * | "faq"
@@ -1312,6 +1346,8 @@ class ThemeApplicationModel {
1312
1346
 
1313
1347
  "collections",
1314
1348
 
1349
+ "custom",
1350
+
1315
1351
  "contact-us",
1316
1352
 
1317
1353
  "external",