@gofynd/fdk-client-javascript 1.4.2-beta.1 → 1.4.2-beta.10

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 (265) hide show
  1. package/README.md +1 -1
  2. package/package.json +3 -2
  3. package/sdk/application/ApplicationClient.js +20 -0
  4. package/sdk/application/Cart/CartApplicationClient.d.ts +1 -1
  5. package/sdk/application/Cart/CartApplicationClient.js +3 -5
  6. package/sdk/application/Cart/CartApplicationModel.d.ts +1634 -1742
  7. package/sdk/application/Cart/CartApplicationModel.js +1388 -1464
  8. package/sdk/application/Cart/CartApplicationValidator.d.ts +0 -4
  9. package/sdk/application/Cart/CartApplicationValidator.js +0 -4
  10. package/sdk/application/Catalog/CatalogApplicationClient.d.ts +6 -3
  11. package/sdk/application/Catalog/CatalogApplicationClient.js +20 -7
  12. package/sdk/application/Catalog/CatalogApplicationModel.d.ts +1917 -1917
  13. package/sdk/application/Catalog/CatalogApplicationModel.js +1613 -1613
  14. package/sdk/application/Catalog/CatalogApplicationValidator.d.ts +14 -0
  15. package/sdk/application/Catalog/CatalogApplicationValidator.js +6 -0
  16. package/sdk/application/Common/CommonApplicationModel.d.ts +235 -235
  17. package/sdk/application/Common/CommonApplicationModel.js +172 -172
  18. package/sdk/application/Communication/CommunicationApplicationModel.d.ts +72 -72
  19. package/sdk/application/Communication/CommunicationApplicationModel.js +64 -64
  20. package/sdk/application/Configuration/ConfigurationApplicationModel.d.ts +1492 -1626
  21. package/sdk/application/Configuration/ConfigurationApplicationModel.js +1038 -1180
  22. package/sdk/application/Content/ContentApplicationClient.d.ts +0 -36
  23. package/sdk/application/Content/ContentApplicationClient.js +0 -246
  24. package/sdk/application/Content/ContentApplicationModel.d.ts +546 -753
  25. package/sdk/application/Content/ContentApplicationModel.js +565 -817
  26. package/sdk/application/Content/ContentApplicationValidator.d.ts +1 -40
  27. package/sdk/application/Content/ContentApplicationValidator.js +0 -41
  28. package/sdk/application/FileStorage/FileStorageApplicationModel.d.ts +79 -79
  29. package/sdk/application/FileStorage/FileStorageApplicationModel.js +84 -84
  30. package/sdk/application/Lead/LeadApplicationModel.d.ts +417 -417
  31. package/sdk/application/Lead/LeadApplicationModel.js +301 -301
  32. package/sdk/application/Logistic/LogisticApplicationClient.d.ts +0 -67
  33. package/sdk/application/Logistic/LogisticApplicationClient.js +0 -547
  34. package/sdk/application/Logistic/LogisticApplicationModel.d.ts +257 -712
  35. package/sdk/application/Logistic/LogisticApplicationModel.js +267 -755
  36. package/sdk/application/Logistic/LogisticApplicationValidator.d.ts +1 -211
  37. package/sdk/application/Logistic/LogisticApplicationValidator.js +0 -131
  38. package/sdk/application/Order/OrderApplicationClient.d.ts +3 -3
  39. package/sdk/application/Order/OrderApplicationClient.js +8 -32
  40. package/sdk/application/Order/OrderApplicationModel.d.ts +845 -853
  41. package/sdk/application/Order/OrderApplicationModel.js +816 -824
  42. package/sdk/application/Order/OrderApplicationValidator.d.ts +0 -20
  43. package/sdk/application/Order/OrderApplicationValidator.js +0 -8
  44. package/sdk/application/Payment/PaymentApplicationClient.d.ts +2 -46
  45. package/sdk/application/Payment/PaymentApplicationClient.js +10 -341
  46. package/sdk/application/Payment/PaymentApplicationModel.d.ts +1892 -2199
  47. package/sdk/application/Payment/PaymentApplicationModel.js +1235 -1506
  48. package/sdk/application/Payment/PaymentApplicationValidator.d.ts +14 -59
  49. package/sdk/application/Payment/PaymentApplicationValidator.js +10 -64
  50. package/sdk/application/PosCart/PosCartApplicationModel.d.ts +1396 -1429
  51. package/sdk/application/PosCart/PosCartApplicationModel.js +1233 -1257
  52. package/sdk/application/Rewards/RewardsApplicationModel.d.ts +214 -214
  53. package/sdk/application/Rewards/RewardsApplicationModel.js +211 -211
  54. package/sdk/application/Share/ShareApplicationModel.d.ts +114 -114
  55. package/sdk/application/Share/ShareApplicationModel.js +121 -121
  56. package/sdk/application/Theme/ThemeApplicationClient.d.ts +1 -1
  57. package/sdk/application/Theme/ThemeApplicationClient.js +3 -7
  58. package/sdk/application/Theme/ThemeApplicationModel.d.ts +783 -969
  59. package/sdk/application/Theme/ThemeApplicationModel.js +571 -867
  60. package/sdk/application/Theme/ThemeApplicationValidator.d.ts +0 -10
  61. package/sdk/application/Theme/ThemeApplicationValidator.js +0 -4
  62. package/sdk/application/User/UserApplicationClient.d.ts +0 -33
  63. package/sdk/application/User/UserApplicationClient.js +0 -239
  64. package/sdk/application/User/UserApplicationModel.d.ts +753 -768
  65. package/sdk/application/User/UserApplicationModel.js +731 -755
  66. package/sdk/application/User/UserApplicationValidator.d.ts +1 -34
  67. package/sdk/application/User/UserApplicationValidator.js +0 -36
  68. package/sdk/common/Clickstream.d.ts +1 -0
  69. package/sdk/common/Clickstream.js +254 -0
  70. package/sdk/common/Utility.js +1 -4
  71. package/sdk/partner/FileStorage/FileStoragePartnerModel.d.ts +72 -60
  72. package/sdk/partner/FileStorage/FileStoragePartnerModel.js +70 -58
  73. package/sdk/partner/PartnerClient.d.ts +0 -6
  74. package/sdk/partner/PartnerClient.js +0 -9
  75. package/sdk/partner/Theme/ThemePartnerClient.d.ts +0 -10
  76. package/sdk/partner/Theme/ThemePartnerClient.js +0 -80
  77. package/sdk/partner/Theme/ThemePartnerModel.d.ts +1178 -1153
  78. package/sdk/partner/Theme/ThemePartnerModel.js +830 -974
  79. package/sdk/partner/Theme/ThemePartnerValidator.d.ts +0 -1
  80. package/sdk/partner/Theme/ThemePartnerValidator.js +0 -9
  81. package/sdk/partner/index.d.ts +0 -3
  82. package/sdk/partner/index.js +0 -6
  83. package/sdk/platform/AuditTrail/AuditTrailPlatformClient.js +2 -2
  84. package/sdk/platform/AuditTrail/AuditTrailPlatformModel.d.ts +123 -123
  85. package/sdk/platform/AuditTrail/AuditTrailPlatformModel.js +109 -109
  86. package/sdk/platform/Billing/BillingPlatformClient.d.ts +1 -11
  87. package/sdk/platform/Billing/BillingPlatformClient.js +3 -110
  88. package/sdk/platform/Billing/BillingPlatformModel.d.ts +734 -800
  89. package/sdk/platform/Billing/BillingPlatformModel.js +732 -810
  90. package/sdk/platform/Billing/BillingPlatformValidator.d.ts +4 -43
  91. package/sdk/platform/Billing/BillingPlatformValidator.js +2 -29
  92. package/sdk/platform/Cart/CartPlatformApplicationClient.d.ts +11 -1
  93. package/sdk/platform/Cart/CartPlatformApplicationClient.js +81 -7
  94. package/sdk/platform/Cart/CartPlatformApplicationValidator.d.ts +13 -5
  95. package/sdk/platform/Cart/CartPlatformApplicationValidator.js +12 -4
  96. package/sdk/platform/Cart/CartPlatformModel.d.ts +3223 -3328
  97. package/sdk/platform/Cart/CartPlatformModel.js +2875 -2946
  98. package/sdk/platform/Catalog/CatalogPlatformApplicationClient.d.ts +11 -15
  99. package/sdk/platform/Catalog/CatalogPlatformApplicationClient.js +21 -52
  100. package/sdk/platform/Catalog/CatalogPlatformApplicationValidator.d.ts +0 -27
  101. package/sdk/platform/Catalog/CatalogPlatformApplicationValidator.js +0 -11
  102. package/sdk/platform/Catalog/CatalogPlatformClient.d.ts +15 -27
  103. package/sdk/platform/Catalog/CatalogPlatformClient.js +93 -189
  104. package/sdk/platform/Catalog/CatalogPlatformModel.d.ts +617 -920
  105. package/sdk/platform/Catalog/CatalogPlatformModel.js +584 -919
  106. package/sdk/platform/Catalog/CatalogPlatformValidator.d.ts +27 -41
  107. package/sdk/platform/Catalog/CatalogPlatformValidator.js +19 -31
  108. package/sdk/platform/Common/CommonPlatformModel.d.ts +255 -255
  109. package/sdk/platform/Common/CommonPlatformModel.js +187 -187
  110. package/sdk/platform/Communication/CommunicationPlatformApplicationClient.d.ts +37 -139
  111. package/sdk/platform/Communication/CommunicationPlatformApplicationClient.js +52 -737
  112. package/sdk/platform/Communication/CommunicationPlatformApplicationValidator.d.ts +3 -133
  113. package/sdk/platform/Communication/CommunicationPlatformApplicationValidator.js +1 -113
  114. package/sdk/platform/Communication/CommunicationPlatformModel.d.ts +1079 -1228
  115. package/sdk/platform/Communication/CommunicationPlatformModel.js +1090 -1262
  116. package/sdk/platform/CompanyProfile/CompanyProfilePlatformClient.d.ts +2 -8
  117. package/sdk/platform/CompanyProfile/CompanyProfilePlatformClient.js +4 -32
  118. package/sdk/platform/CompanyProfile/CompanyProfilePlatformModel.d.ts +629 -658
  119. package/sdk/platform/CompanyProfile/CompanyProfilePlatformModel.js +641 -675
  120. package/sdk/platform/CompanyProfile/CompanyProfilePlatformValidator.d.ts +0 -14
  121. package/sdk/platform/CompanyProfile/CompanyProfilePlatformValidator.js +0 -6
  122. package/sdk/platform/Configuration/ConfigurationPlatformApplicationClient.d.ts +8 -8
  123. package/sdk/platform/Configuration/ConfigurationPlatformApplicationClient.js +4 -4
  124. package/sdk/platform/Configuration/ConfigurationPlatformModel.d.ts +2992 -3231
  125. package/sdk/platform/Configuration/ConfigurationPlatformModel.js +2092 -2303
  126. package/sdk/platform/Configuration/ConfigurationPlatformValidator.d.ts +2 -2
  127. package/sdk/platform/Configuration/ConfigurationPlatformValidator.js +2 -2
  128. package/sdk/platform/Content/ContentPlatformApplicationClient.d.ts +0 -391
  129. package/sdk/platform/Content/ContentPlatformApplicationClient.js +1074 -3656
  130. package/sdk/platform/Content/ContentPlatformApplicationValidator.d.ts +1 -351
  131. package/sdk/platform/Content/ContentPlatformApplicationValidator.js +0 -410
  132. package/sdk/platform/Content/ContentPlatformModel.d.ts +972 -2071
  133. package/sdk/platform/Content/ContentPlatformModel.js +1039 -2355
  134. package/sdk/platform/Discount/DiscountPlatformClient.d.ts +2 -2
  135. package/sdk/platform/Discount/DiscountPlatformClient.js +2 -2
  136. package/sdk/platform/Discount/DiscountPlatformModel.d.ts +174 -259
  137. package/sdk/platform/Discount/DiscountPlatformModel.js +163 -257
  138. package/sdk/platform/FileStorage/FileStoragePlatformApplicationClient.d.ts +6 -16
  139. package/sdk/platform/FileStorage/FileStoragePlatformApplicationClient.js +8 -117
  140. package/sdk/platform/FileStorage/FileStoragePlatformApplicationValidator.d.ts +4 -55
  141. package/sdk/platform/FileStorage/FileStoragePlatformApplicationValidator.js +2 -39
  142. package/sdk/platform/FileStorage/FileStoragePlatformModel.d.ts +821 -892
  143. package/sdk/platform/FileStorage/FileStoragePlatformModel.js +833 -901
  144. package/sdk/platform/Finance/FinancePlatformClient.d.ts +0 -33
  145. package/sdk/platform/Finance/FinancePlatformClient.js +0 -240
  146. package/sdk/platform/Finance/FinancePlatformModel.d.ts +910 -1056
  147. package/sdk/platform/Finance/FinancePlatformModel.js +884 -1070
  148. package/sdk/platform/Finance/FinancePlatformValidator.d.ts +1 -38
  149. package/sdk/platform/Finance/FinancePlatformValidator.js +0 -38
  150. package/sdk/platform/Inventory/InventoryPlatformModel.d.ts +942 -942
  151. package/sdk/platform/Inventory/InventoryPlatformModel.js +1003 -1003
  152. package/sdk/platform/Lead/LeadPlatformApplicationClient.d.ts +28 -38
  153. package/sdk/platform/Lead/LeadPlatformApplicationClient.js +56 -137
  154. package/sdk/platform/Lead/LeadPlatformApplicationValidator.d.ts +29 -41
  155. package/sdk/platform/Lead/LeadPlatformApplicationValidator.js +21 -33
  156. package/sdk/platform/Lead/LeadPlatformModel.d.ts +601 -610
  157. package/sdk/platform/Lead/LeadPlatformModel.js +457 -471
  158. package/sdk/platform/Order/OrderPlatformApplicationClient.d.ts +1 -11
  159. package/sdk/platform/Order/OrderPlatformApplicationClient.js +1 -93
  160. package/sdk/platform/Order/OrderPlatformApplicationValidator.d.ts +1 -28
  161. package/sdk/platform/Order/OrderPlatformApplicationValidator.js +0 -18
  162. package/sdk/platform/Order/OrderPlatformClient.d.ts +22 -143
  163. package/sdk/platform/Order/OrderPlatformClient.js +160 -1190
  164. package/sdk/platform/Order/OrderPlatformModel.d.ts +4451 -5275
  165. package/sdk/platform/Order/OrderPlatformModel.js +4039 -4994
  166. package/sdk/platform/Order/OrderPlatformValidator.d.ts +21 -257
  167. package/sdk/platform/Order/OrderPlatformValidator.js +15 -216
  168. package/sdk/platform/Partner/PartnerPlatformModel.d.ts +22 -22
  169. package/sdk/platform/Partner/PartnerPlatformModel.js +22 -22
  170. package/sdk/platform/Payment/PaymentPlatformApplicationClient.d.ts +13 -119
  171. package/sdk/platform/Payment/PaymentPlatformApplicationClient.js +40 -750
  172. package/sdk/platform/Payment/PaymentPlatformApplicationValidator.d.ts +7 -143
  173. package/sdk/platform/Payment/PaymentPlatformApplicationValidator.js +6 -133
  174. package/sdk/platform/Payment/PaymentPlatformClient.d.ts +1 -1
  175. package/sdk/platform/Payment/PaymentPlatformClient.js +1 -1
  176. package/sdk/platform/Payment/PaymentPlatformModel.d.ts +2067 -2929
  177. package/sdk/platform/Payment/PaymentPlatformModel.js +1427 -2090
  178. package/sdk/platform/PlatformApplicationClient.d.ts +2 -2
  179. package/sdk/platform/PlatformApplicationClient.js +4 -4
  180. package/sdk/platform/PlatformClient.d.ts +2 -4
  181. package/sdk/platform/PlatformClient.js +4 -8
  182. package/sdk/platform/Rewards/RewardsPlatformModel.d.ts +204 -204
  183. package/sdk/platform/Rewards/RewardsPlatformModel.js +199 -199
  184. package/sdk/platform/Serviceability/ServiceabilityPlatformApplicationClient.d.ts +66 -142
  185. package/sdk/platform/Serviceability/ServiceabilityPlatformApplicationClient.js +147 -645
  186. package/sdk/platform/Serviceability/ServiceabilityPlatformApplicationValidator.d.ts +63 -131
  187. package/sdk/platform/Serviceability/ServiceabilityPlatformApplicationValidator.js +47 -126
  188. package/sdk/platform/Serviceability/ServiceabilityPlatformClient.d.ts +105 -217
  189. package/sdk/platform/Serviceability/ServiceabilityPlatformClient.js +349 -1138
  190. package/sdk/platform/Serviceability/ServiceabilityPlatformModel.d.ts +989 -1588
  191. package/sdk/platform/Serviceability/ServiceabilityPlatformModel.js +977 -1695
  192. package/sdk/platform/Serviceability/ServiceabilityPlatformValidator.d.ts +133 -382
  193. package/sdk/platform/Serviceability/ServiceabilityPlatformValidator.js +102 -266
  194. package/sdk/platform/Share/SharePlatformModel.d.ts +147 -147
  195. package/sdk/platform/Share/SharePlatformModel.js +139 -139
  196. package/sdk/platform/Theme/ThemePlatformClient.d.ts +1 -11
  197. package/sdk/platform/Theme/ThemePlatformClient.js +3 -87
  198. package/sdk/platform/Theme/ThemePlatformModel.d.ts +765 -1133
  199. package/sdk/platform/Theme/ThemePlatformModel.js +561 -1009
  200. package/sdk/platform/Theme/ThemePlatformValidator.d.ts +4 -28
  201. package/sdk/platform/Theme/ThemePlatformValidator.js +2 -21
  202. package/sdk/platform/User/UserPlatformApplicationClient.d.ts +1 -116
  203. package/sdk/platform/User/UserPlatformApplicationClient.js +86 -932
  204. package/sdk/platform/User/UserPlatformApplicationValidator.d.ts +7 -224
  205. package/sdk/platform/User/UserPlatformApplicationValidator.js +5 -173
  206. package/sdk/platform/User/UserPlatformModel.d.ts +428 -765
  207. package/sdk/platform/User/UserPlatformModel.js +428 -679
  208. package/sdk/platform/Webhook/WebhookPlatformClient.d.ts +37 -45
  209. package/sdk/platform/Webhook/WebhookPlatformClient.js +57 -61
  210. package/sdk/platform/Webhook/WebhookPlatformModel.d.ts +403 -448
  211. package/sdk/platform/Webhook/WebhookPlatformModel.js +309 -369
  212. package/sdk/platform/Webhook/WebhookPlatformValidator.d.ts +10 -7
  213. package/sdk/platform/Webhook/WebhookPlatformValidator.js +6 -6
  214. package/sdk/platform/index.d.ts +1 -1
  215. package/sdk/platform/index.js +2 -2
  216. package/sdk/public/Configuration/ConfigurationPublicModel.d.ts +237 -237
  217. package/sdk/public/Configuration/ConfigurationPublicModel.js +174 -174
  218. package/sdk/public/Inventory/InventoryPublicModel.d.ts +237 -237
  219. package/sdk/public/Inventory/InventoryPublicModel.js +257 -257
  220. package/sdk/public/Partner/PartnerPublicModel.d.ts +104 -104
  221. package/sdk/public/Partner/PartnerPublicModel.js +113 -113
  222. package/sdk/public/PublicClient.d.ts +0 -4
  223. package/sdk/public/PublicClient.js +0 -8
  224. package/sdk/public/Webhook/WebhookPublicClient.d.ts +0 -33
  225. package/sdk/public/Webhook/WebhookPublicClient.js +0 -242
  226. package/sdk/public/Webhook/WebhookPublicModel.d.ts +15 -161
  227. package/sdk/public/Webhook/WebhookPublicModel.js +13 -189
  228. package/sdk/public/Webhook/WebhookPublicValidator.d.ts +1 -23
  229. package/sdk/public/Webhook/WebhookPublicValidator.js +0 -31
  230. package/sdk/public/index.d.ts +0 -2
  231. package/sdk/public/index.js +0 -4
  232. package/sdk/partner/Lead/LeadPartnerClient.d.ts +0 -125
  233. package/sdk/partner/Lead/LeadPartnerClient.js +0 -785
  234. package/sdk/partner/Lead/LeadPartnerModel.d.ts +0 -1127
  235. package/sdk/partner/Lead/LeadPartnerModel.js +0 -896
  236. package/sdk/partner/Lead/LeadPartnerValidator.d.ts +0 -12
  237. package/sdk/partner/Lead/LeadPartnerValidator.js +0 -67
  238. package/sdk/partner/Logistics/LogisticsPartnerClient.d.ts +0 -155
  239. package/sdk/partner/Logistics/LogisticsPartnerClient.js +0 -1195
  240. package/sdk/partner/Logistics/LogisticsPartnerModel.d.ts +0 -372
  241. package/sdk/partner/Logistics/LogisticsPartnerModel.js +0 -442
  242. package/sdk/partner/Logistics/LogisticsPartnerValidator.d.ts +0 -16
  243. package/sdk/partner/Logistics/LogisticsPartnerValidator.js +0 -123
  244. package/sdk/partner/Webhook/WebhookPartnerClient.d.ts +0 -99
  245. package/sdk/partner/Webhook/WebhookPartnerClient.js +0 -753
  246. package/sdk/partner/Webhook/WebhookPartnerModel.d.ts +0 -566
  247. package/sdk/partner/Webhook/WebhookPartnerModel.js +0 -583
  248. package/sdk/partner/Webhook/WebhookPartnerValidator.d.ts +0 -12
  249. package/sdk/partner/Webhook/WebhookPartnerValidator.js +0 -74
  250. package/sdk/platform/Content/ContentPlatformClient.d.ts +0 -277
  251. package/sdk/platform/Content/ContentPlatformClient.js +0 -2011
  252. package/sdk/platform/Content/ContentPlatformValidator.d.ts +0 -247
  253. package/sdk/platform/Content/ContentPlatformValidator.js +0 -319
  254. package/sdk/public/Billing/BillingPublicClient.d.ts +0 -23
  255. package/sdk/public/Billing/BillingPublicClient.js +0 -116
  256. package/sdk/public/Billing/BillingPublicModel.d.ts +0 -92
  257. package/sdk/public/Billing/BillingPublicModel.js +0 -96
  258. package/sdk/public/Billing/BillingPublicValidator.d.ts +0 -18
  259. package/sdk/public/Billing/BillingPublicValidator.js +0 -19
  260. package/sdk/public/Content/ContentPublicClient.d.ts +0 -22
  261. package/sdk/public/Content/ContentPublicClient.js +0 -114
  262. package/sdk/public/Content/ContentPublicModel.d.ts +0 -53
  263. package/sdk/public/Content/ContentPublicModel.js +0 -60
  264. package/sdk/public/Content/ContentPublicValidator.d.ts +0 -18
  265. package/sdk/public/Content/ContentPublicValidator.js +0 -19
@@ -1,18 +1,69 @@
1
1
  const Joi = require("joi");
2
2
 
3
3
  /**
4
- * @typedef Action
5
- * @property {ActionPage} [page]
6
- * @property {ActionPage} [popup]
7
- * @property {string} [type]
4
+ * @typedef ApplicationLegal
5
+ * @property {string} [application]
6
+ * @property {string} [tnc]
7
+ * @property {string} [policy]
8
+ * @property {string} [shipping]
9
+ * @property {string} [returns]
10
+ * @property {ApplicationLegalFAQ[]} [faq]
11
+ * @property {string} [_id]
12
+ * @property {string} [updated_at]
13
+ * @property {string} [created_at]
8
14
  */
9
15
 
10
16
  /**
11
- * @typedef ActionPage
12
- * @property {Object} [params]
13
- * @property {Object} [query]
14
- * @property {PageType} type
15
- * @property {string} [url]
17
+ * @typedef ApplicationLegalFAQ
18
+ * @property {string} [question]
19
+ * @property {string} [answer]
20
+ */
21
+
22
+ /**
23
+ * @typedef SeoComponent
24
+ * @property {SeoSchema} [seo]
25
+ */
26
+
27
+ /**
28
+ * @typedef SeoSchema
29
+ * @property {string} [app]
30
+ * @property {string} [_id]
31
+ * @property {string} [robots_txt]
32
+ * @property {boolean} [sitemap_enabled]
33
+ * @property {boolean} [cannonical_enabled]
34
+ * @property {CustomMetaTag[]} [custom_meta_tags]
35
+ * @property {Detail} [details]
36
+ * @property {string} [created_at]
37
+ * @property {string} [updated_at]
38
+ */
39
+
40
+ /**
41
+ * @typedef CustomMetaTag
42
+ * @property {string} [name]
43
+ * @property {string} [content]
44
+ * @property {string} [_id]
45
+ */
46
+
47
+ /**
48
+ * @typedef Detail
49
+ * @property {string} [title]
50
+ * @property {string} [description]
51
+ * @property {string} [image_url]
52
+ */
53
+
54
+ /**
55
+ * @typedef ScheduleSchema
56
+ * @property {string} [cron]
57
+ * @property {string} [start]
58
+ * @property {string} [end]
59
+ * @property {number} [duration]
60
+ * @property {NextSchedule[]} [next_schedule]
61
+ */
62
+
63
+ /**
64
+ * @typedef NextSchedule
65
+ * @property {string} [start]
66
+ * @property {string} [end]
16
67
  */
17
68
 
18
69
  /**
@@ -22,31 +73,21 @@ const Joi = require("joi");
22
73
  */
23
74
 
24
75
  /**
25
- * @typedef AnnouncementsResponseSchema
26
- * @property {Object} [announcements]
27
- * @property {string[]} [refresh_pages] - List of page slugs on which
28
- * announcement should be fetched as soon as they are loaded
29
- * @property {number} [refresh_rate] - Number of seconds after which api should
30
- * hit again to fetch new announcements
76
+ * @typedef ScheduleStartSchema
77
+ * @property {string} [start]
78
+ * @property {string} [end]
31
79
  */
32
80
 
33
81
  /**
34
- * @typedef ApplicationLegal
35
- * @property {string} [_id]
36
- * @property {string} [application]
37
- * @property {string} [created_at]
38
- * @property {ApplicationLegalFAQ[]} [faq]
39
- * @property {string} [policy]
40
- * @property {string} [returns]
41
- * @property {string} [shipping]
42
- * @property {string} [tnc]
43
- * @property {string} [updated_at]
82
+ * @typedef BlogGetResponse
83
+ * @property {BlogSchema[]} [items]
84
+ * @property {Page} [page]
44
85
  */
45
86
 
46
87
  /**
47
- * @typedef ApplicationLegalFAQ
48
- * @property {string} [answer]
49
- * @property {string} [question]
88
+ * @typedef ResourceContent
89
+ * @property {string} [type]
90
+ * @property {string} [value]
50
91
  */
51
92
 
52
93
  /**
@@ -63,183 +104,132 @@ const Joi = require("joi");
63
104
  * @property {string} [name]
64
105
  */
65
106
 
66
- /**
67
- * @typedef BlogGetResponse
68
- * @property {BlogSchema[]} [items]
69
- * @property {Page} [page]
70
- */
71
-
72
107
  /**
73
108
  * @typedef BlogSchema
74
- * @property {Object} [_custom_json]
75
109
  * @property {string} [_id]
76
- * @property {CronSchedule} [_schedule]
110
+ * @property {Object} [_custom_json]
77
111
  * @property {string} [application]
78
112
  * @property {boolean} [archived]
79
113
  * @property {Author} [author]
80
114
  * @property {ResourceContent[]} [content]
81
- * @property {DateMeta} [date_meta]
82
115
  * @property {Asset} [feature_image]
83
116
  * @property {boolean} [published]
84
117
  * @property {string} [reading_time]
85
- * @property {SEO} [seo]
86
118
  * @property {string} [slug]
87
119
  * @property {string[]} [tags]
120
+ * @property {SEO} [seo]
121
+ * @property {CronSchedule} [_schedule]
88
122
  * @property {string} [title]
123
+ * @property {DateMeta} [date_meta]
89
124
  */
90
125
 
91
126
  /**
92
- * @typedef CategorySchema
93
- * @property {Object} [_custom_json]
94
- * @property {string} [_id]
95
- * @property {string} [application]
96
- * @property {string[]} [children]
127
+ * @typedef SEO
97
128
  * @property {string} [description]
98
- * @property {string} [icon_url]
99
- * @property {number} [index]
100
- * @property {string} [slug]
129
+ * @property {SEOImage} [image]
101
130
  * @property {string} [title]
102
131
  */
103
132
 
104
133
  /**
105
- * @typedef ChildrenSchema
106
- * @property {string} [_id]
107
- * @property {string} [answer]
108
- * @property {string} [application]
109
- * @property {string} [question]
110
- * @property {string} [slug]
111
- */
112
-
113
- /**
114
- * @typedef CommonError
115
- * @property {string} [message]
116
- */
117
-
118
- /**
119
- * @typedef ConfigurationSchema
120
- * @property {number} [duration]
121
- * @property {number} [sleep_time]
122
- * @property {string} [slide_direction]
123
- * @property {boolean} [start_on_launch]
124
- */
125
-
126
- /**
127
- * @typedef ContactSchema
128
- * @property {EmailSchema} [email]
129
- * @property {PhoneSchema} [phone]
134
+ * @typedef SEOImage
135
+ * @property {string} [url]
130
136
  */
131
137
 
132
138
  /**
133
- * @typedef ContentAPIError
134
- * @property {string} [code]
135
- * @property {string} [exception]
136
- * @property {string} [info]
137
- * @property {string} [message]
138
- * @property {Object} [meta]
139
- * @property {string} [request_id]
140
- * @property {string} [stack_trace]
141
- * @property {number} [status]
139
+ * @typedef DateMeta
140
+ * @property {string} [created_on]
141
+ * @property {string} [modified_on]
142
142
  */
143
143
 
144
144
  /**
145
- * @typedef CreatedBySchema
146
- * @property {string} [id]
145
+ * @typedef LocaleLanguage
146
+ * @property {Language} [hi]
147
+ * @property {Language} [ar]
148
+ * @property {Language} [en_us]
147
149
  */
148
150
 
149
151
  /**
150
- * @typedef CronSchedule
151
- * @property {string} [cron]
152
- * @property {number} [duration]
153
- * @property {string} [end]
154
- * @property {string} [start]
152
+ * @typedef Language
153
+ * @property {string} [display]
155
154
  */
156
155
 
157
156
  /**
158
- * @typedef CustomFieldSchema
159
- * @property {string} [_id]
160
- * @property {string} [application_id]
161
- * @property {string} [company_id]
162
- * @property {string} [created_at]
163
- * @property {string} [created_by]
164
- * @property {string} [creator]
165
- * @property {string} [definition_id]
166
- * @property {boolean} [has_invalid_values]
167
- * @property {Object[]} [invalid_value_errors]
168
- * @property {boolean} [is_deleted]
169
- * @property {string} [key]
170
- * @property {boolean} [multi_value]
171
- * @property {string} [namespace]
172
- * @property {string} [resource]
173
- * @property {string} [resource_id]
157
+ * @typedef Action
158
+ * @property {ActionPage} [page]
159
+ * @property {ActionPage} [popup]
174
160
  * @property {string} [type]
175
- * @property {string} [updated_at]
176
- * @property {CustomFieldValue[]} [value]
177
161
  */
178
162
 
179
163
  /**
180
- * @typedef CustomFieldsResponseByResourceIdSchema
181
- * @property {CustomFieldSchema[]} [items]
182
- */
183
-
184
- /**
185
- * @typedef CustomFieldValue
186
- * @property {Object} [value]
164
+ * @typedef ActionPage
165
+ * @property {Object} [params]
166
+ * @property {Object} [query]
167
+ * @property {string} [url]
168
+ * @property {PageType} type
187
169
  */
188
170
 
189
171
  /**
190
- * @typedef CustomMetaTag
191
- * @property {string} [_id]
192
- * @property {string} [content]
193
- * @property {string} [name]
172
+ * @typedef NavigationReference
173
+ * @property {string[]} [acl]
174
+ * @property {string[]} [tags]
175
+ * @property {LocaleLanguage} [_locale_language]
176
+ * @property {string} [image]
177
+ * @property {string} [type]
178
+ * @property {Action} [action]
179
+ * @property {boolean} [active]
180
+ * @property {string} [display]
181
+ * @property {number} [sort_order]
182
+ * @property {NavigationReference[]} [sub_navigation]
194
183
  */
195
184
 
196
185
  /**
197
- * @typedef CustomObjectByIdSchema
198
- * @property {string} [_id]
199
- * @property {CustomObjectListItemDefinationSchema} [definition]
200
- * @property {string} [display_name]
201
- * @property {CustomObjectFieldSchema[]} [fields]
202
- * @property {Object[]} [references]
203
- * @property {string} [status]
186
+ * @typedef ConfigurationSchema
187
+ * @property {number} [sleep_time]
188
+ * @property {boolean} [start_on_launch]
189
+ * @property {number} [duration]
190
+ * @property {string} [slide_direction]
204
191
  */
205
192
 
206
193
  /**
207
- * @typedef CustomObjectFieldSchema
208
- * @property {string} [_id]
209
- * @property {string} [definition_id]
210
- * @property {string} [key]
194
+ * @typedef SlideshowMedia
211
195
  * @property {string} [type]
212
- * @property {CustomObjectFieldValue[]} [value]
196
+ * @property {string} [url]
197
+ * @property {string} [bg_color]
198
+ * @property {number} [duration]
199
+ * @property {boolean} [auto_decide_duration]
200
+ * @property {Action} [action]
213
201
  */
214
202
 
215
203
  /**
216
- * @typedef CustomObjectFieldValue
217
- * @property {Object} [value]
204
+ * @typedef AnnouncementsResponseSchema
205
+ * @property {Object} [announcements]
206
+ * @property {number} [refresh_rate] - Number of seconds after which api should
207
+ * hit again to fetch new announcements
208
+ * @property {string[]} [refresh_pages] - List of page slugs on which
209
+ * announcement should be fetched as soon as they are loaded
218
210
  */
219
211
 
220
212
  /**
221
- * @typedef CustomObjectListItemDefinationSchema
222
- * @property {string} [_id]
223
- * @property {string} [name]
224
- * @property {string} [type]
213
+ * @typedef FaqResponseSchema
214
+ * @property {FaqSchema[]} [faqs]
225
215
  */
226
216
 
227
217
  /**
228
218
  * @typedef DataLoaderSchema
229
- * @property {DataLoaderSourceSchema} [__source]
230
- * @property {string} [_id]
231
- * @property {string} [content]
232
219
  * @property {string} [name]
233
- * @property {string} [operation_id]
234
220
  * @property {string} [service]
221
+ * @property {string} [operation_id]
235
222
  * @property {string} [type]
236
223
  * @property {string} [url]
224
+ * @property {string} [content]
225
+ * @property {DataLoaderSourceSchema} [__source]
226
+ * @property {string} [_id]
237
227
  */
238
228
 
239
229
  /**
240
230
  * @typedef DataLoaderSourceSchema
241
- * @property {string} [id]
242
231
  * @property {string} [type]
232
+ * @property {string} [id]
243
233
  */
244
234
 
245
235
  /**
@@ -248,58 +238,72 @@ const Joi = require("joi");
248
238
  */
249
239
 
250
240
  /**
251
- * @typedef DateMeta
252
- * @property {string} [created_on]
253
- * @property {string} [modified_on]
241
+ * @typedef ContentAPIError
242
+ * @property {string} [message]
243
+ * @property {number} [status]
244
+ * @property {string} [code]
245
+ * @property {string} [exception]
246
+ * @property {string} [info]
247
+ * @property {string} [request_id]
248
+ * @property {string} [stack_trace]
249
+ * @property {Object} [meta]
254
250
  */
255
251
 
256
252
  /**
257
- * @typedef Detail
258
- * @property {string} [description]
259
- * @property {string} [image_url]
260
- * @property {string} [title]
253
+ * @typedef CommonError
254
+ * @property {string} [message]
261
255
  */
262
256
 
263
257
  /**
264
- * @typedef EmailProperties
265
- * @property {string} [key]
266
- * @property {string} [value]
258
+ * @typedef CategorySchema
259
+ * @property {number} [index]
260
+ * @property {string} [title]
261
+ * @property {string} [description]
262
+ * @property {string[]} [children]
263
+ * @property {string} [_id]
264
+ * @property {string} [slug]
265
+ * @property {string} [application]
266
+ * @property {string} [icon_url]
267
+ * @property {Object} [_custom_json]
267
268
  */
268
269
 
269
270
  /**
270
- * @typedef EmailSchema
271
- * @property {boolean} [active]
272
- * @property {EmailProperties[]} [email]
271
+ * @typedef ChildrenSchema
272
+ * @property {string} [question]
273
+ * @property {string} [answer]
274
+ * @property {string} [slug]
275
+ * @property {string} [application]
276
+ * @property {string} [_id]
273
277
  */
274
278
 
275
279
  /**
276
280
  * @typedef FAQCategorySchema
277
- * @property {Object} [_custom_json]
281
+ * @property {number} [index]
282
+ * @property {string} [title]
283
+ * @property {string} [description]
284
+ * @property {ChildrenSchema[]} [children]
278
285
  * @property {string} [_id]
286
+ * @property {string} [slug]
279
287
  * @property {string} [application]
280
- * @property {ChildrenSchema[]} [children]
281
- * @property {string} [description]
282
288
  * @property {string} [icon_url]
283
- * @property {number} [index]
284
- * @property {string} [slug]
285
- * @property {string} [title]
286
- */
287
-
288
- /**
289
- * @typedef FaqResponseSchema
290
- * @property {FaqSchema[]} [faqs]
289
+ * @property {Object} [_custom_json]
291
290
  */
292
291
 
293
292
  /**
294
293
  * @typedef FaqSchema
295
- * @property {string} [_id]
296
- * @property {string} [answer]
294
+ * @property {string} [slug]
297
295
  * @property {string} [application]
296
+ * @property {string} [_id]
298
297
  * @property {string} [question]
299
- * @property {string} [slug]
298
+ * @property {string} [answer]
300
299
  * @property {string[]} [tags]
301
300
  */
302
301
 
302
+ /**
303
+ * @typedef GetFaqSchema
304
+ * @property {FaqSchema[]} [faqs]
305
+ */
306
+
303
307
  /**
304
308
  * @typedef GetFaqCategoriesSchema
305
309
  * @property {CategorySchema[]} [categories]
@@ -311,33 +315,27 @@ const Joi = require("joi");
311
315
  */
312
316
 
313
317
  /**
314
- * @typedef GetFaqSchema
315
- * @property {FaqSchema[]} [faqs]
318
+ * @typedef Page
319
+ * @property {number} [item_total]
320
+ * @property {string} [next_id]
321
+ * @property {boolean} [has_previous]
322
+ * @property {boolean} [has_next]
323
+ * @property {number} [current]
324
+ * @property {string} type
325
+ * @property {number} [size]
316
326
  */
317
327
 
318
328
  /**
319
329
  * @typedef LandingPageSchema
320
- * @property {Object} [_custom_json]
321
- * @property {string} [_id]
330
+ * @property {string} [slug]
322
331
  * @property {Action} [action]
323
- * @property {string} [application]
324
- * @property {boolean} [archived]
332
+ * @property {string[]} [platform]
325
333
  * @property {CreatedBySchema} [created_by]
326
334
  * @property {DateMeta} [date_meta]
327
- * @property {string[]} [platform]
328
- * @property {string} [slug]
329
- */
330
-
331
- /**
332
- * @typedef Language
333
- * @property {string} [display]
334
- */
335
-
336
- /**
337
- * @typedef LocaleLanguage
338
- * @property {Language} [ar]
339
- * @property {Language} [en_us]
340
- * @property {Language} [hi]
335
+ * @property {string} [_id]
336
+ * @property {string} [application]
337
+ * @property {boolean} [archived]
338
+ * @property {Object} [_custom_json]
341
339
  */
342
340
 
343
341
  /**
@@ -347,17 +345,9 @@ const Joi = require("joi");
347
345
  */
348
346
 
349
347
  /**
350
- * @typedef NavigationReference
351
- * @property {LocaleLanguage} [_locale_language]
352
- * @property {string[]} [acl]
353
- * @property {Action} [action]
354
- * @property {boolean} [active]
355
- * @property {string} [display]
356
- * @property {string} [image]
357
- * @property {number} [sort_order]
358
- * @property {NavigationReference[]} [sub_navigation]
359
- * @property {string[]} [tags]
360
- * @property {string} [type]
348
+ * @typedef Orientation
349
+ * @property {string[]} [portrait]
350
+ * @property {string[]} [landscape]
361
351
  */
362
352
 
363
353
  /**
@@ -365,37 +355,14 @@ const Joi = require("joi");
365
355
  * @property {string} [_id]
366
356
  * @property {string} [application]
367
357
  * @property {boolean} [archived]
358
+ * @property {string} [name]
359
+ * @property {string} [slug]
360
+ * @property {string[]} [platform]
368
361
  * @property {CreatedBySchema} [created_by]
369
362
  * @property {DateMeta} [date_meta]
370
- * @property {string} [name]
371
- * @property {NavigationReference[]} [navigation]
372
363
  * @property {Orientation} [orientation]
373
- * @property {string[]} [platform]
374
- * @property {string} [slug]
375
364
  * @property {number} [version]
376
- */
377
-
378
- /**
379
- * @typedef NextSchedule
380
- * @property {string} [end]
381
- * @property {string} [start]
382
- */
383
-
384
- /**
385
- * @typedef Orientation
386
- * @property {string[]} [landscape]
387
- * @property {string[]} [portrait]
388
- */
389
-
390
- /**
391
- * @typedef Page
392
- * @property {number} [current]
393
- * @property {boolean} [has_next]
394
- * @property {boolean} [has_previous]
395
- * @property {number} [item_total]
396
- * @property {string} [next_id]
397
- * @property {number} [size]
398
- * @property {string} type
365
+ * @property {NavigationReference[]} [navigation]
399
366
  */
400
367
 
401
368
  /**
@@ -406,11 +373,8 @@ const Joi = require("joi");
406
373
 
407
374
  /**
408
375
  * @typedef PageSchema
409
- * @property {Object} [_custom_json]
410
376
  * @property {string} [_id]
411
- * @property {ScheduleSchema} [_schedule]
412
377
  * @property {string} [application]
413
- * @property {boolean} [archived]
414
378
  * @property {string[]} [component_ids] - Components can be used to store
415
379
  * multiple components
416
380
  * @property {Object[]} [content]
@@ -419,195 +383,121 @@ const Joi = require("joi");
419
383
  * @property {DateMeta} [date_meta]
420
384
  * @property {string} [description]
421
385
  * @property {Asset} [feature_image]
422
- * @property {string} [orientation]
423
386
  * @property {Object[]} [page_meta]
387
+ * @property {ScheduleSchema} [_schedule]
388
+ * @property {Object} [_custom_json]
389
+ * @property {string} [orientation]
424
390
  * @property {string} [platform]
425
391
  * @property {boolean} [published]
426
- * @property {SEO} [seo]
427
392
  * @property {string} [slug]
428
393
  * @property {string[]} [tags]
429
394
  * @property {string} [title]
430
395
  * @property {string} [type]
396
+ * @property {SEO} [seo]
431
397
  * @property {Object} [visibility]
398
+ * @property {boolean} [archived]
432
399
  */
433
400
 
434
401
  /**
435
- * @typedef PhoneProperties
436
- * @property {string} [code]
437
- * @property {string} [key]
438
- * @property {string} [number]
439
- */
440
-
441
- /**
442
- * @typedef PhoneSchema
443
- * @property {boolean} [active]
444
- * @property {PhoneProperties[]} [phone]
445
- */
446
-
447
- /**
448
- * @typedef ResourceContent
449
- * @property {string} [type]
450
- * @property {string} [value]
402
+ * @typedef CreatedBySchema
403
+ * @property {string} [id]
451
404
  */
452
405
 
453
406
  /**
454
- * @typedef ScheduleSchema
407
+ * @typedef CronSchedule
455
408
  * @property {string} [cron]
456
- * @property {number} [duration]
457
- * @property {string} [end]
458
- * @property {NextSchedule[]} [next_schedule]
459
409
  * @property {string} [start]
460
- */
461
-
462
- /**
463
- * @typedef ScheduleStartSchema
464
410
  * @property {string} [end]
465
- * @property {string} [start]
466
- */
467
-
468
- /**
469
- * @typedef SEO
470
- * @property {SEObreadcrumb[]} [breadcrumb]
471
- * @property {string} [canonical_url]
472
- * @property {string} [description]
473
- * @property {SEOImage} [image]
474
- * @property {SEOMetaItem[]} [meta_tags]
475
- * @property {SEOSitemap} [sitemap]
476
- * @property {string} [title]
477
- */
478
-
479
- /**
480
- * @typedef SEObreadcrumb
481
- * @property {Action} [action]
482
- * @property {string} [url]
483
- */
484
-
485
- /**
486
- * @typedef SeoComponent
487
- * @property {SeoSchema} [seo]
488
- */
489
-
490
- /**
491
- * @typedef SEOImage
492
- * @property {string} [url]
493
- */
494
-
495
- /**
496
- * @typedef SEOMetaItem
497
- * @property {SEOMetaItems[]} [items]
498
- * @property {string} [title]
411
+ * @property {number} [duration]
499
412
  */
500
413
 
501
414
  /**
502
- * @typedef SEOMetaItems
503
- * @property {string} [key]
504
- * @property {string} [value]
415
+ * @typedef SlideshowGetResponse
416
+ * @property {SlideshowSchema[]} [items]
417
+ * @property {Page} [page]
505
418
  */
506
419
 
507
420
  /**
508
- * @typedef SeoSchema
421
+ * @typedef SlideshowSchema
509
422
  * @property {string} [_id]
510
- * @property {string} [additonal_sitemap]
511
- * @property {string} [app]
512
- * @property {boolean} [cannonical_enabled]
513
- * @property {string} [created_at]
514
- * @property {CustomMetaTag[]} [custom_meta_tags]
515
- * @property {Detail} [details]
516
- * @property {string} [robots_txt]
517
- * @property {boolean} [sitemap_enabled]
518
- * @property {string} [updated_at]
519
- */
520
-
521
- /**
522
- * @typedef SeoSchemaComponent
523
- * @property {SEOSchemaMarkupTemplate[]} [items]
423
+ * @property {string} [slug]
424
+ * @property {DateMeta} [date_meta]
425
+ * @property {string} [application]
426
+ * @property {string} [platform]
427
+ * @property {ConfigurationSchema} [configuration]
428
+ * @property {SlideshowMedia[]} [media]
429
+ * @property {boolean} [active]
430
+ * @property {boolean} [archived]
431
+ * @property {Object} [_custom_json]
524
432
  */
525
433
 
526
434
  /**
527
- * @typedef SEOSchemaMarkupTemplate
528
- * @property {boolean} [active]
435
+ * @typedef Support
436
+ * @property {boolean} [created]
437
+ * @property {string} [_id]
438
+ * @property {string} [config_type]
529
439
  * @property {string} [application]
530
440
  * @property {string} [created_at]
531
- * @property {string} [description]
532
- * @property {string} [id]
533
- * @property {string} [page_type]
534
- * @property {string} [schema]
535
- * @property {string} [title]
536
441
  * @property {string} [updated_at]
442
+ * @property {ContactSchema} [contact]
537
443
  */
538
444
 
539
445
  /**
540
- * @typedef SEOSitemap
541
- * @property {string} [frequency]
542
- * @property {number} [priority]
446
+ * @typedef PhoneProperties
447
+ * @property {string} [key]
448
+ * @property {string} [code]
449
+ * @property {string} [number]
543
450
  */
544
451
 
545
452
  /**
546
- * @typedef SlideshowGetResponse
547
- * @property {SlideshowSchema[]} [items]
548
- * @property {Page} [page]
453
+ * @typedef PhoneSchema
454
+ * @property {boolean} [active]
455
+ * @property {PhoneProperties[]} [phone]
549
456
  */
550
457
 
551
458
  /**
552
- * @typedef SlideshowMedia
553
- * @property {Action} [action]
554
- * @property {boolean} [auto_decide_duration]
555
- * @property {string} [bg_color]
556
- * @property {number} [duration]
557
- * @property {string} [type]
558
- * @property {string} [url]
459
+ * @typedef EmailProperties
460
+ * @property {string} [key]
461
+ * @property {string} [value]
559
462
  */
560
463
 
561
464
  /**
562
- * @typedef SlideshowSchema
563
- * @property {Object} [_custom_json]
564
- * @property {string} [_id]
465
+ * @typedef EmailSchema
565
466
  * @property {boolean} [active]
566
- * @property {string} [application]
567
- * @property {boolean} [archived]
568
- * @property {ConfigurationSchema} [configuration]
569
- * @property {DateMeta} [date_meta]
570
- * @property {SlideshowMedia[]} [media]
571
- * @property {string} [platform]
572
- * @property {string} [slug]
467
+ * @property {EmailProperties[]} [email]
573
468
  */
574
469
 
575
470
  /**
576
- * @typedef Support
577
- * @property {string} [_id]
471
+ * @typedef ContactSchema
472
+ * @property {PhoneSchema} [phone]
473
+ * @property {EmailSchema} [email]
474
+ */
475
+
476
+ /**
477
+ * @typedef TagsSchema
578
478
  * @property {string} [application]
579
- * @property {string} [config_type]
580
- * @property {ContactSchema} [contact]
581
- * @property {boolean} [created]
582
- * @property {string} [created_at]
583
- * @property {string} [updated_at]
479
+ * @property {string} [_id]
480
+ * @property {TagSchema[]} [tags]
584
481
  */
585
482
 
586
483
  /**
587
484
  * @typedef TagSchema
588
- * @property {TagSourceSchema} [__source]
485
+ * @property {string} [name]
486
+ * @property {string} [url]
487
+ * @property {string} [type]
488
+ * @property {string} [sub_type]
589
489
  * @property {string} [_id]
490
+ * @property {string} [position]
590
491
  * @property {Object} [attributes]
591
492
  * @property {string} [content]
592
- * @property {string} [name]
593
493
  * @property {Object[]} [pages]
594
- * @property {string} [position]
595
- * @property {string} [sub_type]
596
- * @property {string} [type]
597
- * @property {string} [url]
494
+ * @property {TagSourceSchema} [__source]
598
495
  */
599
496
 
600
497
  /**
601
498
  * @typedef TagSourceSchema
602
- * @property {string} [id]
603
499
  * @property {string} [type]
604
- */
605
-
606
- /**
607
- * @typedef TagsSchema
608
- * @property {string} [_id]
609
- * @property {string} [application]
610
- * @property {TagSchema[]} [tags]
500
+ * @property {string} [id]
611
501
  */
612
502
 
613
503
  /**
@@ -660,28 +550,87 @@ const Joi = require("joi");
660
550
  */
661
551
 
662
552
  class ContentApplicationModel {
663
- /** @returns {Action} */
664
- static Action() {
553
+ /** @returns {ApplicationLegal} */
554
+ static ApplicationLegal() {
665
555
  return Joi.object({
666
- page: ContentApplicationModel.ActionPage(),
667
- popup: ContentApplicationModel.ActionPage(),
668
- type: Joi.string().allow(""),
556
+ application: Joi.string().allow(""),
557
+ tnc: Joi.string().allow(""),
558
+ policy: Joi.string().allow(""),
559
+ shipping: Joi.string().allow(""),
560
+ returns: Joi.string().allow(""),
561
+ faq: Joi.array().items(ContentApplicationModel.ApplicationLegalFAQ()),
562
+ _id: Joi.string().allow(""),
563
+ updated_at: Joi.string().allow(""),
564
+ created_at: Joi.string().allow(""),
669
565
  });
670
566
  }
671
567
 
672
- /** @returns {ActionPage} */
673
- static ActionPage() {
568
+ /** @returns {ApplicationLegalFAQ} */
569
+ static ApplicationLegalFAQ() {
674
570
  return Joi.object({
675
- params: Joi.object().pattern(
676
- /\S/,
677
- Joi.array().items(Joi.string().allow(""))
678
- ),
679
- query: Joi.object().pattern(
680
- /\S/,
681
- Joi.array().items(Joi.string().allow(""))
571
+ question: Joi.string().allow(""),
572
+ answer: Joi.string().allow(""),
573
+ });
574
+ }
575
+
576
+ /** @returns {SeoComponent} */
577
+ static SeoComponent() {
578
+ return Joi.object({
579
+ seo: ContentApplicationModel.SeoSchema(),
580
+ });
581
+ }
582
+
583
+ /** @returns {SeoSchema} */
584
+ static SeoSchema() {
585
+ return Joi.object({
586
+ app: Joi.string().allow(""),
587
+ _id: Joi.string().allow(""),
588
+ robots_txt: Joi.string().allow(""),
589
+ sitemap_enabled: Joi.boolean(),
590
+ cannonical_enabled: Joi.boolean(),
591
+ custom_meta_tags: Joi.array().items(
592
+ ContentApplicationModel.CustomMetaTag()
682
593
  ),
683
- type: ContentApplicationModel.PageType().required(),
684
- url: Joi.string().allow(""),
594
+ details: ContentApplicationModel.Detail(),
595
+ created_at: Joi.string().allow(""),
596
+ updated_at: Joi.string().allow(""),
597
+ });
598
+ }
599
+
600
+ /** @returns {CustomMetaTag} */
601
+ static CustomMetaTag() {
602
+ return Joi.object({
603
+ name: Joi.string().allow(""),
604
+ content: Joi.string().allow(""),
605
+ _id: Joi.string().allow(""),
606
+ });
607
+ }
608
+
609
+ /** @returns {Detail} */
610
+ static Detail() {
611
+ return Joi.object({
612
+ title: Joi.string().allow(""),
613
+ description: Joi.string().allow(""),
614
+ image_url: Joi.string().allow(""),
615
+ });
616
+ }
617
+
618
+ /** @returns {ScheduleSchema} */
619
+ static ScheduleSchema() {
620
+ return Joi.object({
621
+ cron: Joi.string().allow(""),
622
+ start: Joi.string().allow(""),
623
+ end: Joi.string().allow(""),
624
+ duration: Joi.number(),
625
+ next_schedule: Joi.array().items(ContentApplicationModel.NextSchedule()),
626
+ });
627
+ }
628
+
629
+ /** @returns {NextSchedule} */
630
+ static NextSchedule() {
631
+ return Joi.object({
632
+ start: Joi.string().allow(""),
633
+ end: Joi.string().allow(""),
685
634
  });
686
635
  }
687
636
 
@@ -693,38 +642,27 @@ class ContentApplicationModel {
693
642
  });
694
643
  }
695
644
 
696
- /** @returns {AnnouncementsResponseSchema} */
697
- static AnnouncementsResponseSchema() {
645
+ /** @returns {ScheduleStartSchema} */
646
+ static ScheduleStartSchema() {
698
647
  return Joi.object({
699
- announcements: Joi.object().pattern(
700
- /\S/,
701
- Joi.array().items(ContentApplicationModel.AnnouncementSchema())
702
- ),
703
- refresh_pages: Joi.array().items(Joi.string().allow("")),
704
- refresh_rate: Joi.number(),
648
+ start: Joi.string().allow(""),
649
+ end: Joi.string().allow(""),
705
650
  });
706
651
  }
707
652
 
708
- /** @returns {ApplicationLegal} */
709
- static ApplicationLegal() {
653
+ /** @returns {BlogGetResponse} */
654
+ static BlogGetResponse() {
710
655
  return Joi.object({
711
- _id: Joi.string().allow(""),
712
- application: Joi.string().allow(""),
713
- created_at: Joi.string().allow(""),
714
- faq: Joi.array().items(ContentApplicationModel.ApplicationLegalFAQ()),
715
- policy: Joi.string().allow(""),
716
- returns: Joi.string().allow(""),
717
- shipping: Joi.string().allow(""),
718
- tnc: Joi.string().allow(""),
719
- updated_at: Joi.string().allow(""),
656
+ items: Joi.array().items(ContentApplicationModel.BlogSchema()),
657
+ page: ContentApplicationModel.Page(),
720
658
  });
721
659
  }
722
660
 
723
- /** @returns {ApplicationLegalFAQ} */
724
- static ApplicationLegalFAQ() {
661
+ /** @returns {ResourceContent} */
662
+ static ResourceContent() {
725
663
  return Joi.object({
726
- answer: Joi.string().allow(""),
727
- question: Joi.string().allow(""),
664
+ type: Joi.string().allow(""),
665
+ value: Joi.string().allow(""),
728
666
  });
729
667
  }
730
668
 
@@ -746,226 +684,168 @@ class ContentApplicationModel {
746
684
  });
747
685
  }
748
686
 
749
- /** @returns {BlogGetResponse} */
750
- static BlogGetResponse() {
751
- return Joi.object({
752
- items: Joi.array().items(ContentApplicationModel.BlogSchema()),
753
- page: ContentApplicationModel.Page(),
754
- });
755
- }
756
-
757
687
  /** @returns {BlogSchema} */
758
688
  static BlogSchema() {
759
689
  return Joi.object({
760
- _custom_json: Joi.any(),
761
690
  _id: Joi.string().allow(""),
762
- _schedule: ContentApplicationModel.CronSchedule(),
691
+ _custom_json: Joi.any(),
763
692
  application: Joi.string().allow(""),
764
693
  archived: Joi.boolean(),
765
694
  author: ContentApplicationModel.Author(),
766
695
  content: Joi.array().items(ContentApplicationModel.ResourceContent()),
767
- date_meta: ContentApplicationModel.DateMeta(),
768
696
  feature_image: ContentApplicationModel.Asset(),
769
697
  published: Joi.boolean(),
770
698
  reading_time: Joi.string().allow(""),
771
- seo: ContentApplicationModel.SEO(),
772
699
  slug: Joi.string().allow(""),
773
700
  tags: Joi.array().items(Joi.string().allow("")),
701
+ seo: ContentApplicationModel.SEO(),
702
+ _schedule: ContentApplicationModel.CronSchedule(),
774
703
  title: Joi.string().allow(""),
704
+ date_meta: ContentApplicationModel.DateMeta(),
775
705
  });
776
706
  }
777
707
 
778
- /** @returns {CategorySchema} */
779
- static CategorySchema() {
708
+ /** @returns {SEO} */
709
+ static SEO() {
780
710
  return Joi.object({
781
- _custom_json: Joi.any(),
782
- _id: Joi.string().allow(""),
783
- application: Joi.string().allow(""),
784
- children: Joi.array().items(Joi.string().allow("")),
785
711
  description: Joi.string().allow(""),
786
- icon_url: Joi.string().allow(""),
787
- index: Joi.number(),
788
- slug: Joi.string().allow(""),
789
- title: Joi.string().allow(""),
790
- });
791
- }
792
-
793
- /** @returns {ChildrenSchema} */
794
- static ChildrenSchema() {
795
- return Joi.object({
796
- _id: Joi.string().allow(""),
797
- answer: Joi.string().allow(""),
798
- application: Joi.string().allow(""),
799
- question: Joi.string().allow(""),
800
- slug: Joi.string().allow(""),
801
- });
802
- }
803
-
804
- /** @returns {CommonError} */
805
- static CommonError() {
806
- return Joi.object({
807
- message: Joi.string().allow(""),
808
- });
809
- }
810
-
811
- /** @returns {ConfigurationSchema} */
812
- static ConfigurationSchema() {
813
- return Joi.object({
814
- duration: Joi.number(),
815
- sleep_time: Joi.number(),
816
- slide_direction: Joi.string().allow(""),
817
- start_on_launch: Joi.boolean(),
818
- });
819
- }
820
-
821
- /** @returns {ContactSchema} */
822
- static ContactSchema() {
823
- return Joi.object({
824
- email: ContentApplicationModel.EmailSchema(),
825
- phone: ContentApplicationModel.PhoneSchema(),
826
- });
827
- }
828
-
829
- /** @returns {ContentAPIError} */
830
- static ContentAPIError() {
831
- return Joi.object({
832
- code: Joi.string().allow(""),
833
- exception: Joi.string().allow(""),
834
- info: Joi.string().allow(""),
835
- message: Joi.string().allow(""),
836
- meta: Joi.any(),
837
- request_id: Joi.string().allow(""),
838
- stack_trace: Joi.string().allow(""),
839
- status: Joi.number(),
712
+ image: ContentApplicationModel.SEOImage(),
713
+ title: Joi.string().allow(""),
840
714
  });
841
715
  }
842
716
 
843
- /** @returns {CreatedBySchema} */
844
- static CreatedBySchema() {
717
+ /** @returns {SEOImage} */
718
+ static SEOImage() {
845
719
  return Joi.object({
846
- id: Joi.string().allow(""),
720
+ url: Joi.string().allow(""),
847
721
  });
848
722
  }
849
723
 
850
- /** @returns {CronSchedule} */
851
- static CronSchedule() {
724
+ /** @returns {DateMeta} */
725
+ static DateMeta() {
852
726
  return Joi.object({
853
- cron: Joi.string().allow(""),
854
- duration: Joi.number(),
855
- end: Joi.string().allow(""),
856
- start: Joi.string().allow(""),
727
+ created_on: Joi.string().allow(""),
728
+ modified_on: Joi.string().allow(""),
857
729
  });
858
730
  }
859
731
 
860
- /** @returns {CustomFieldSchema} */
861
- static CustomFieldSchema() {
732
+ /** @returns {LocaleLanguage} */
733
+ static LocaleLanguage() {
862
734
  return Joi.object({
863
- _id: Joi.string().allow(""),
864
- application_id: Joi.string().allow(""),
865
- company_id: Joi.string().allow(""),
866
- created_at: Joi.string().allow(""),
867
- created_by: Joi.string().allow(""),
868
- creator: Joi.string().allow(""),
869
- definition_id: Joi.string().allow(""),
870
- has_invalid_values: Joi.boolean(),
871
- invalid_value_errors: Joi.array().items(Joi.any()),
872
- is_deleted: Joi.boolean(),
873
- key: Joi.string().allow(""),
874
- multi_value: Joi.boolean(),
875
- namespace: Joi.string().allow(""),
876
- resource: Joi.string().allow(""),
877
- resource_id: Joi.string().allow(""),
878
- type: Joi.string().allow(""),
879
- updated_at: Joi.string().allow(""),
880
- value: Joi.array().items(ContentApplicationModel.CustomFieldValue()),
735
+ hi: ContentApplicationModel.Language(),
736
+ ar: ContentApplicationModel.Language(),
737
+ en_us: ContentApplicationModel.Language(),
881
738
  });
882
739
  }
883
740
 
884
- /** @returns {CustomFieldsResponseByResourceIdSchema} */
885
- static CustomFieldsResponseByResourceIdSchema() {
741
+ /** @returns {Language} */
742
+ static Language() {
886
743
  return Joi.object({
887
- items: Joi.array().items(ContentApplicationModel.CustomFieldSchema()),
744
+ display: Joi.string().allow(""),
888
745
  });
889
746
  }
890
747
 
891
- /** @returns {CustomFieldValue} */
892
- static CustomFieldValue() {
748
+ /** @returns {Action} */
749
+ static Action() {
893
750
  return Joi.object({
894
- value: Joi.any(),
751
+ page: ContentApplicationModel.ActionPage(),
752
+ popup: ContentApplicationModel.ActionPage(),
753
+ type: Joi.string().allow(""),
895
754
  });
896
755
  }
897
756
 
898
- /** @returns {CustomMetaTag} */
899
- static CustomMetaTag() {
757
+ /** @returns {ActionPage} */
758
+ static ActionPage() {
900
759
  return Joi.object({
901
- _id: Joi.string().allow(""),
902
- content: Joi.string().allow(""),
903
- name: Joi.string().allow(""),
760
+ params: Joi.object().pattern(
761
+ /\S/,
762
+ Joi.array().items(Joi.string().allow(""))
763
+ ),
764
+ query: Joi.object().pattern(
765
+ /\S/,
766
+ Joi.array().items(Joi.string().allow(""))
767
+ ),
768
+ url: Joi.string().allow(""),
769
+ type: ContentApplicationModel.PageType().required(),
904
770
  });
905
771
  }
906
772
 
907
- /** @returns {CustomObjectByIdSchema} */
908
- static CustomObjectByIdSchema() {
773
+ /** @returns {NavigationReference} */
774
+ static NavigationReference() {
909
775
  return Joi.object({
910
- _id: Joi.string().allow(""),
911
- definition: ContentApplicationModel.CustomObjectListItemDefinationSchema(),
912
- display_name: Joi.string().allow(""),
913
- fields: Joi.array().items(
914
- ContentApplicationModel.CustomObjectFieldSchema()
915
- ),
916
- references: Joi.array().items(Joi.any()),
917
- status: Joi.string().allow(""),
776
+ acl: Joi.array().items(Joi.string().allow("")),
777
+ tags: Joi.array().items(Joi.string().allow("")),
778
+ _locale_language: ContentApplicationModel.LocaleLanguage(),
779
+ image: Joi.string().allow(""),
780
+ type: Joi.string().allow(""),
781
+ action: ContentApplicationModel.Action(),
782
+ active: Joi.boolean(),
783
+ display: Joi.string().allow(""),
784
+ sort_order: Joi.number(),
785
+ sub_navigation: Joi.array().items(Joi.link("#NavigationReference")),
786
+ }).id("NavigationReference");
787
+ }
788
+
789
+ /** @returns {ConfigurationSchema} */
790
+ static ConfigurationSchema() {
791
+ return Joi.object({
792
+ sleep_time: Joi.number(),
793
+ start_on_launch: Joi.boolean(),
794
+ duration: Joi.number(),
795
+ slide_direction: Joi.string().allow(""),
918
796
  });
919
797
  }
920
798
 
921
- /** @returns {CustomObjectFieldSchema} */
922
- static CustomObjectFieldSchema() {
799
+ /** @returns {SlideshowMedia} */
800
+ static SlideshowMedia() {
923
801
  return Joi.object({
924
- _id: Joi.string().allow(""),
925
- definition_id: Joi.string().allow(""),
926
- key: Joi.string().allow(""),
927
802
  type: Joi.string().allow(""),
928
- value: Joi.array().items(
929
- ContentApplicationModel.CustomObjectFieldValue()
930
- ),
803
+ url: Joi.string().allow(""),
804
+ bg_color: Joi.string().allow(""),
805
+ duration: Joi.number(),
806
+ auto_decide_duration: Joi.boolean(),
807
+ action: ContentApplicationModel.Action(),
931
808
  });
932
809
  }
933
810
 
934
- /** @returns {CustomObjectFieldValue} */
935
- static CustomObjectFieldValue() {
811
+ /** @returns {AnnouncementsResponseSchema} */
812
+ static AnnouncementsResponseSchema() {
936
813
  return Joi.object({
937
- value: Joi.any(),
814
+ announcements: Joi.object().pattern(
815
+ /\S/,
816
+ Joi.array().items(ContentApplicationModel.AnnouncementSchema())
817
+ ),
818
+ refresh_rate: Joi.number(),
819
+ refresh_pages: Joi.array().items(Joi.string().allow("")),
938
820
  });
939
821
  }
940
822
 
941
- /** @returns {CustomObjectListItemDefinationSchema} */
942
- static CustomObjectListItemDefinationSchema() {
823
+ /** @returns {FaqResponseSchema} */
824
+ static FaqResponseSchema() {
943
825
  return Joi.object({
944
- _id: Joi.string().allow(""),
945
- name: Joi.string().allow(""),
946
- type: Joi.string().allow(""),
826
+ faqs: Joi.array().items(ContentApplicationModel.FaqSchema()),
947
827
  });
948
828
  }
949
829
 
950
830
  /** @returns {DataLoaderSchema} */
951
831
  static DataLoaderSchema() {
952
832
  return Joi.object({
953
- __source: ContentApplicationModel.DataLoaderSourceSchema(),
954
- _id: Joi.string().allow(""),
955
- content: Joi.string().allow(""),
956
833
  name: Joi.string().allow(""),
957
- operation_id: Joi.string().allow(""),
958
834
  service: Joi.string().allow(""),
835
+ operation_id: Joi.string().allow(""),
959
836
  type: Joi.string().allow(""),
960
837
  url: Joi.string().allow(""),
838
+ content: Joi.string().allow(""),
839
+ __source: ContentApplicationModel.DataLoaderSourceSchema(),
840
+ _id: Joi.string().allow(""),
961
841
  });
962
842
  }
963
843
 
964
844
  /** @returns {DataLoaderSourceSchema} */
965
845
  static DataLoaderSourceSchema() {
966
846
  return Joi.object({
967
- id: Joi.string().allow(""),
968
847
  type: Joi.string().allow(""),
848
+ id: Joi.string().allow(""),
969
849
  });
970
850
  }
971
851
 
@@ -976,87 +856,80 @@ class ContentApplicationModel {
976
856
  });
977
857
  }
978
858
 
979
- /** @returns {DateMeta} */
980
- static DateMeta() {
859
+ /** @returns {ContentAPIError} */
860
+ static ContentAPIError() {
981
861
  return Joi.object({
982
- created_on: Joi.string().allow(""),
983
- modified_on: Joi.string().allow(""),
862
+ message: Joi.string().allow(""),
863
+ status: Joi.number(),
864
+ code: Joi.string().allow(""),
865
+ exception: Joi.string().allow(""),
866
+ info: Joi.string().allow(""),
867
+ request_id: Joi.string().allow(""),
868
+ stack_trace: Joi.string().allow(""),
869
+ meta: Joi.any(),
984
870
  });
985
871
  }
986
872
 
987
- /** @returns {Detail} */
988
- static Detail() {
873
+ /** @returns {CommonError} */
874
+ static CommonError() {
989
875
  return Joi.object({
990
- description: Joi.string().allow(""),
991
- image_url: Joi.string().allow(""),
992
- title: Joi.string().allow(""),
876
+ message: Joi.string().allow(""),
993
877
  });
994
878
  }
995
879
 
996
- /** @returns {EmailProperties} */
997
- static EmailProperties() {
880
+ /** @returns {CategorySchema} */
881
+ static CategorySchema() {
998
882
  return Joi.object({
999
- key: Joi.string().allow(""),
1000
- value: Joi.string().allow(""),
883
+ index: Joi.number(),
884
+ title: Joi.string().allow(""),
885
+ description: Joi.string().allow(""),
886
+ children: Joi.array().items(Joi.string().allow("")),
887
+ _id: Joi.string().allow(""),
888
+ slug: Joi.string().allow(""),
889
+ application: Joi.string().allow(""),
890
+ icon_url: Joi.string().allow(""),
891
+ _custom_json: Joi.any(),
1001
892
  });
1002
893
  }
1003
894
 
1004
- /** @returns {EmailSchema} */
1005
- static EmailSchema() {
895
+ /** @returns {ChildrenSchema} */
896
+ static ChildrenSchema() {
1006
897
  return Joi.object({
1007
- active: Joi.boolean(),
1008
- email: Joi.array().items(ContentApplicationModel.EmailProperties()),
898
+ question: Joi.string().allow(""),
899
+ answer: Joi.string().allow(""),
900
+ slug: Joi.string().allow(""),
901
+ application: Joi.string().allow(""),
902
+ _id: Joi.string().allow(""),
1009
903
  });
1010
904
  }
1011
905
 
1012
906
  /** @returns {FAQCategorySchema} */
1013
907
  static FAQCategorySchema() {
1014
908
  return Joi.object({
1015
- _custom_json: Joi.any(),
909
+ index: Joi.number(),
910
+ title: Joi.string().allow(""),
911
+ description: Joi.string().allow(""),
912
+ children: Joi.array().items(ContentApplicationModel.ChildrenSchema()),
1016
913
  _id: Joi.string().allow(""),
914
+ slug: Joi.string().allow(""),
1017
915
  application: Joi.string().allow(""),
1018
- children: Joi.array().items(ContentApplicationModel.ChildrenSchema()),
1019
- description: Joi.string().allow(""),
1020
916
  icon_url: Joi.string().allow(""),
1021
- index: Joi.number(),
1022
- slug: Joi.string().allow(""),
1023
- title: Joi.string().allow(""),
1024
- });
1025
- }
1026
-
1027
- /** @returns {FaqResponseSchema} */
1028
- static FaqResponseSchema() {
1029
- return Joi.object({
1030
- faqs: Joi.array().items(ContentApplicationModel.FaqSchema()),
917
+ _custom_json: Joi.any(),
1031
918
  });
1032
919
  }
1033
920
 
1034
921
  /** @returns {FaqSchema} */
1035
922
  static FaqSchema() {
1036
923
  return Joi.object({
1037
- _id: Joi.string().allow(""),
1038
- answer: Joi.string().allow(""),
924
+ slug: Joi.string().allow(""),
1039
925
  application: Joi.string().allow(""),
926
+ _id: Joi.string().allow(""),
1040
927
  question: Joi.string().allow(""),
1041
- slug: Joi.string().allow(""),
928
+ answer: Joi.string().allow(""),
1042
929
  tags: Joi.array().items(Joi.string().allow("")),
1043
930
  });
1044
931
  }
1045
932
 
1046
- /** @returns {GetFaqCategoriesSchema} */
1047
- static GetFaqCategoriesSchema() {
1048
- return Joi.object({
1049
- categories: Joi.array().items(ContentApplicationModel.CategorySchema()),
1050
- });
1051
- }
1052
-
1053
- /** @returns {GetFaqCategoryBySlugSchema} */
1054
- static GetFaqCategoryBySlugSchema() {
1055
- return Joi.object({
1056
- category: ContentApplicationModel.FAQCategorySchema(),
1057
- });
1058
- }
1059
-
1060
933
  /** @returns {GetFaqSchema} */
1061
934
  static GetFaqSchema() {
1062
935
  return Joi.object({
@@ -1064,106 +937,80 @@ class ContentApplicationModel {
1064
937
  });
1065
938
  }
1066
939
 
1067
- /** @returns {LandingPageSchema} */
1068
- static LandingPageSchema() {
1069
- return Joi.object({
1070
- _custom_json: Joi.any(),
1071
- _id: Joi.string().allow(""),
1072
- action: ContentApplicationModel.Action(),
1073
- application: Joi.string().allow(""),
1074
- archived: Joi.boolean(),
1075
- created_by: ContentApplicationModel.CreatedBySchema(),
1076
- date_meta: ContentApplicationModel.DateMeta(),
1077
- platform: Joi.array().items(Joi.string().allow("")),
1078
- slug: Joi.string().allow(""),
1079
- });
1080
- }
1081
-
1082
- /** @returns {Language} */
1083
- static Language() {
1084
- return Joi.object({
1085
- display: Joi.string().allow(""),
1086
- });
1087
- }
1088
-
1089
- /** @returns {LocaleLanguage} */
1090
- static LocaleLanguage() {
940
+ /** @returns {GetFaqCategoriesSchema} */
941
+ static GetFaqCategoriesSchema() {
1091
942
  return Joi.object({
1092
- ar: ContentApplicationModel.Language(),
1093
- en_us: ContentApplicationModel.Language(),
1094
- hi: ContentApplicationModel.Language(),
943
+ categories: Joi.array().items(ContentApplicationModel.CategorySchema()),
1095
944
  });
1096
945
  }
1097
946
 
1098
- /** @returns {NavigationGetResponse} */
1099
- static NavigationGetResponse() {
947
+ /** @returns {GetFaqCategoryBySlugSchema} */
948
+ static GetFaqCategoryBySlugSchema() {
1100
949
  return Joi.object({
1101
- items: Joi.array().items(ContentApplicationModel.NavigationSchema()),
1102
- page: ContentApplicationModel.Page(),
950
+ category: ContentApplicationModel.FAQCategorySchema(),
1103
951
  });
1104
952
  }
1105
953
 
1106
- /** @returns {NavigationReference} */
1107
- static NavigationReference() {
954
+ /** @returns {Page} */
955
+ static Page() {
1108
956
  return Joi.object({
1109
- _locale_language: ContentApplicationModel.LocaleLanguage(),
1110
- acl: Joi.array().items(Joi.string().allow("")),
1111
- action: ContentApplicationModel.Action(),
1112
- active: Joi.boolean(),
1113
- display: Joi.string().allow(""),
1114
- image: Joi.string().allow(""),
1115
- sort_order: Joi.number(),
1116
- sub_navigation: Joi.array().items(Joi.link("#NavigationReference")),
1117
- tags: Joi.array().items(Joi.string().allow("")),
1118
- type: Joi.string().allow(""),
1119
- }).id("NavigationReference");
957
+ item_total: Joi.number(),
958
+ next_id: Joi.string().allow(""),
959
+ has_previous: Joi.boolean(),
960
+ has_next: Joi.boolean(),
961
+ current: Joi.number(),
962
+ type: Joi.string().allow("").required(),
963
+ size: Joi.number(),
964
+ });
1120
965
  }
1121
966
 
1122
- /** @returns {NavigationSchema} */
1123
- static NavigationSchema() {
967
+ /** @returns {LandingPageSchema} */
968
+ static LandingPageSchema() {
1124
969
  return Joi.object({
970
+ slug: Joi.string().allow(""),
971
+ action: ContentApplicationModel.Action(),
972
+ platform: Joi.array().items(Joi.string().allow("")),
973
+ created_by: ContentApplicationModel.CreatedBySchema(),
974
+ date_meta: ContentApplicationModel.DateMeta(),
1125
975
  _id: Joi.string().allow(""),
1126
976
  application: Joi.string().allow(""),
1127
977
  archived: Joi.boolean(),
1128
- created_by: ContentApplicationModel.CreatedBySchema(),
1129
- date_meta: ContentApplicationModel.DateMeta(),
1130
- name: Joi.string().allow(""),
1131
- navigation: Joi.array().items(
1132
- ContentApplicationModel.NavigationReference()
1133
- ),
1134
- orientation: ContentApplicationModel.Orientation(),
1135
- platform: Joi.array().items(Joi.string().allow("")),
1136
- slug: Joi.string().allow(""),
1137
- version: Joi.number(),
978
+ _custom_json: Joi.any(),
1138
979
  });
1139
980
  }
1140
981
 
1141
- /** @returns {NextSchedule} */
1142
- static NextSchedule() {
982
+ /** @returns {NavigationGetResponse} */
983
+ static NavigationGetResponse() {
1143
984
  return Joi.object({
1144
- end: Joi.string().allow(""),
1145
- start: Joi.string().allow(""),
985
+ items: Joi.array().items(ContentApplicationModel.NavigationSchema()),
986
+ page: ContentApplicationModel.Page(),
1146
987
  });
1147
988
  }
1148
989
 
1149
990
  /** @returns {Orientation} */
1150
991
  static Orientation() {
1151
992
  return Joi.object({
1152
- landscape: Joi.array().items(Joi.string().allow("")),
1153
993
  portrait: Joi.array().items(Joi.string().allow("")),
994
+ landscape: Joi.array().items(Joi.string().allow("")),
1154
995
  });
1155
996
  }
1156
997
 
1157
- /** @returns {Page} */
1158
- static Page() {
998
+ /** @returns {NavigationSchema} */
999
+ static NavigationSchema() {
1159
1000
  return Joi.object({
1160
- current: Joi.number(),
1161
- has_next: Joi.boolean(),
1162
- has_previous: Joi.boolean(),
1163
- item_total: Joi.number(),
1164
- next_id: Joi.string().allow(""),
1165
- size: Joi.number(),
1166
- type: Joi.string().allow("").required(),
1001
+ _id: Joi.string().allow(""),
1002
+ application: Joi.string().allow(""),
1003
+ archived: Joi.boolean(),
1004
+ name: Joi.string().allow(""),
1005
+ slug: Joi.string().allow(""),
1006
+ platform: Joi.array().items(Joi.string().allow("")),
1007
+ created_by: ContentApplicationModel.CreatedBySchema(),
1008
+ date_meta: ContentApplicationModel.DateMeta(),
1009
+ orientation: ContentApplicationModel.Orientation(),
1010
+ version: Joi.number(),
1011
+ navigation: Joi.array().items(
1012
+ ContentApplicationModel.NavigationReference()
1013
+ ),
1167
1014
  });
1168
1015
  }
1169
1016
 
@@ -1178,11 +1025,8 @@ class ContentApplicationModel {
1178
1025
  /** @returns {PageSchema} */
1179
1026
  static PageSchema() {
1180
1027
  return Joi.object({
1181
- _custom_json: Joi.any(),
1182
1028
  _id: Joi.string().allow(""),
1183
- _schedule: ContentApplicationModel.ScheduleSchema(),
1184
1029
  application: Joi.string().allow(""),
1185
- archived: Joi.boolean(),
1186
1030
  component_ids: Joi.array().items(Joi.string().allow("")),
1187
1031
  content: Joi.array().items(Joi.any()),
1188
1032
  content_path: Joi.string().allow(""),
@@ -1190,243 +1034,147 @@ class ContentApplicationModel {
1190
1034
  date_meta: ContentApplicationModel.DateMeta(),
1191
1035
  description: Joi.string().allow(""),
1192
1036
  feature_image: ContentApplicationModel.Asset(),
1193
- orientation: Joi.string().allow(""),
1194
1037
  page_meta: Joi.array().items(Joi.any()),
1038
+ _schedule: ContentApplicationModel.ScheduleSchema(),
1039
+ _custom_json: Joi.any(),
1040
+ orientation: Joi.string().allow(""),
1195
1041
  platform: Joi.string().allow(""),
1196
1042
  published: Joi.boolean(),
1197
- seo: ContentApplicationModel.SEO(),
1198
1043
  slug: Joi.string().allow(""),
1199
1044
  tags: Joi.array().items(Joi.string().allow("")),
1200
1045
  title: Joi.string().allow(""),
1201
1046
  type: Joi.string().allow(""),
1047
+ seo: ContentApplicationModel.SEO(),
1202
1048
  visibility: Joi.any(),
1049
+ archived: Joi.boolean(),
1203
1050
  });
1204
1051
  }
1205
1052
 
1206
- /** @returns {PhoneProperties} */
1207
- static PhoneProperties() {
1208
- return Joi.object({
1209
- code: Joi.string().allow(""),
1210
- key: Joi.string().allow(""),
1211
- number: Joi.string().allow(""),
1212
- });
1213
- }
1214
-
1215
- /** @returns {PhoneSchema} */
1216
- static PhoneSchema() {
1217
- return Joi.object({
1218
- active: Joi.boolean(),
1219
- phone: Joi.array().items(ContentApplicationModel.PhoneProperties()),
1220
- });
1221
- }
1222
-
1223
- /** @returns {ResourceContent} */
1224
- static ResourceContent() {
1053
+ /** @returns {CreatedBySchema} */
1054
+ static CreatedBySchema() {
1225
1055
  return Joi.object({
1226
- type: Joi.string().allow(""),
1227
- value: Joi.string().allow(""),
1056
+ id: Joi.string().allow(""),
1228
1057
  });
1229
1058
  }
1230
1059
 
1231
- /** @returns {ScheduleSchema} */
1232
- static ScheduleSchema() {
1060
+ /** @returns {CronSchedule} */
1061
+ static CronSchedule() {
1233
1062
  return Joi.object({
1234
1063
  cron: Joi.string().allow(""),
1235
- duration: Joi.number(),
1236
- end: Joi.string().allow(""),
1237
- next_schedule: Joi.array().items(ContentApplicationModel.NextSchedule()),
1238
1064
  start: Joi.string().allow(""),
1239
- });
1240
- }
1241
-
1242
- /** @returns {ScheduleStartSchema} */
1243
- static ScheduleStartSchema() {
1244
- return Joi.object({
1245
1065
  end: Joi.string().allow(""),
1246
- start: Joi.string().allow(""),
1247
- });
1248
- }
1249
-
1250
- /** @returns {SEO} */
1251
- static SEO() {
1252
- return Joi.object({
1253
- breadcrumb: Joi.array().items(ContentApplicationModel.SEObreadcrumb()),
1254
- canonical_url: Joi.string().allow(""),
1255
- description: Joi.string().allow(""),
1256
- image: ContentApplicationModel.SEOImage(),
1257
- meta_tags: Joi.array().items(ContentApplicationModel.SEOMetaItem()),
1258
- sitemap: ContentApplicationModel.SEOSitemap(),
1259
- title: Joi.string().allow(""),
1260
- });
1261
- }
1262
-
1263
- /** @returns {SEObreadcrumb} */
1264
- static SEObreadcrumb() {
1265
- return Joi.object({
1266
- action: ContentApplicationModel.Action(),
1267
- url: Joi.string().allow(""),
1268
- });
1269
- }
1270
-
1271
- /** @returns {SeoComponent} */
1272
- static SeoComponent() {
1273
- return Joi.object({
1274
- seo: ContentApplicationModel.SeoSchema(),
1275
- });
1276
- }
1277
-
1278
- /** @returns {SEOImage} */
1279
- static SEOImage() {
1280
- return Joi.object({
1281
- url: Joi.string().allow(""),
1066
+ duration: Joi.number(),
1282
1067
  });
1283
1068
  }
1284
1069
 
1285
- /** @returns {SEOMetaItem} */
1286
- static SEOMetaItem() {
1070
+ /** @returns {SlideshowGetResponse} */
1071
+ static SlideshowGetResponse() {
1287
1072
  return Joi.object({
1288
- items: Joi.array().items(ContentApplicationModel.SEOMetaItems()),
1289
- title: Joi.string().allow(""),
1073
+ items: Joi.array().items(ContentApplicationModel.SlideshowSchema()),
1074
+ page: ContentApplicationModel.Page(),
1290
1075
  });
1291
1076
  }
1292
1077
 
1293
- /** @returns {SEOMetaItems} */
1294
- static SEOMetaItems() {
1078
+ /** @returns {SlideshowSchema} */
1079
+ static SlideshowSchema() {
1295
1080
  return Joi.object({
1296
- key: Joi.string().allow(""),
1297
- value: Joi.string().allow(""),
1081
+ _id: Joi.string().allow(""),
1082
+ slug: Joi.string().allow(""),
1083
+ date_meta: ContentApplicationModel.DateMeta(),
1084
+ application: Joi.string().allow(""),
1085
+ platform: Joi.string().allow(""),
1086
+ configuration: ContentApplicationModel.ConfigurationSchema(),
1087
+ media: Joi.array().items(ContentApplicationModel.SlideshowMedia()),
1088
+ active: Joi.boolean(),
1089
+ archived: Joi.boolean(),
1090
+ _custom_json: Joi.any(),
1298
1091
  });
1299
1092
  }
1300
1093
 
1301
- /** @returns {SeoSchema} */
1302
- static SeoSchema() {
1094
+ /** @returns {Support} */
1095
+ static Support() {
1303
1096
  return Joi.object({
1097
+ created: Joi.boolean(),
1304
1098
  _id: Joi.string().allow(""),
1305
- additonal_sitemap: Joi.string().allow(""),
1306
- app: Joi.string().allow(""),
1307
- cannonical_enabled: Joi.boolean(),
1099
+ config_type: Joi.string().allow(""),
1100
+ application: Joi.string().allow(""),
1308
1101
  created_at: Joi.string().allow(""),
1309
- custom_meta_tags: Joi.array().items(
1310
- ContentApplicationModel.CustomMetaTag()
1311
- ),
1312
- details: ContentApplicationModel.Detail(),
1313
- robots_txt: Joi.string().allow(""),
1314
- sitemap_enabled: Joi.boolean(),
1315
1102
  updated_at: Joi.string().allow(""),
1103
+ contact: ContentApplicationModel.ContactSchema(),
1316
1104
  });
1317
1105
  }
1318
1106
 
1319
- /** @returns {SeoSchemaComponent} */
1320
- static SeoSchemaComponent() {
1107
+ /** @returns {PhoneProperties} */
1108
+ static PhoneProperties() {
1321
1109
  return Joi.object({
1322
- items: Joi.array().items(
1323
- ContentApplicationModel.SEOSchemaMarkupTemplate()
1324
- ),
1110
+ key: Joi.string().allow(""),
1111
+ code: Joi.string().allow(""),
1112
+ number: Joi.string().allow(""),
1325
1113
  });
1326
1114
  }
1327
1115
 
1328
- /** @returns {SEOSchemaMarkupTemplate} */
1329
- static SEOSchemaMarkupTemplate() {
1116
+ /** @returns {PhoneSchema} */
1117
+ static PhoneSchema() {
1330
1118
  return Joi.object({
1331
1119
  active: Joi.boolean(),
1332
- application: Joi.string().allow(""),
1333
- created_at: Joi.string().allow(""),
1334
- description: Joi.string().allow(""),
1335
- id: Joi.string().allow(""),
1336
- page_type: Joi.string().allow(""),
1337
- schema: Joi.string().allow(""),
1338
- title: Joi.string().allow(""),
1339
- updated_at: Joi.string().allow(""),
1120
+ phone: Joi.array().items(ContentApplicationModel.PhoneProperties()),
1340
1121
  });
1341
1122
  }
1342
1123
 
1343
- /** @returns {SEOSitemap} */
1344
- static SEOSitemap() {
1124
+ /** @returns {EmailProperties} */
1125
+ static EmailProperties() {
1345
1126
  return Joi.object({
1346
- frequency: Joi.string().allow(""),
1347
- priority: Joi.number(),
1127
+ key: Joi.string().allow(""),
1128
+ value: Joi.string().allow(""),
1348
1129
  });
1349
1130
  }
1350
1131
 
1351
- /** @returns {SlideshowGetResponse} */
1352
- static SlideshowGetResponse() {
1132
+ /** @returns {EmailSchema} */
1133
+ static EmailSchema() {
1353
1134
  return Joi.object({
1354
- items: Joi.array().items(ContentApplicationModel.SlideshowSchema()),
1355
- page: ContentApplicationModel.Page(),
1135
+ active: Joi.boolean(),
1136
+ email: Joi.array().items(ContentApplicationModel.EmailProperties()),
1356
1137
  });
1357
1138
  }
1358
1139
 
1359
- /** @returns {SlideshowMedia} */
1360
- static SlideshowMedia() {
1140
+ /** @returns {ContactSchema} */
1141
+ static ContactSchema() {
1361
1142
  return Joi.object({
1362
- action: ContentApplicationModel.Action(),
1363
- auto_decide_duration: Joi.boolean(),
1364
- bg_color: Joi.string().allow(""),
1365
- duration: Joi.number(),
1366
- type: Joi.string().allow(""),
1367
- url: Joi.string().allow(""),
1143
+ phone: ContentApplicationModel.PhoneSchema(),
1144
+ email: ContentApplicationModel.EmailSchema(),
1368
1145
  });
1369
1146
  }
1370
1147
 
1371
- /** @returns {SlideshowSchema} */
1372
- static SlideshowSchema() {
1148
+ /** @returns {TagsSchema} */
1149
+ static TagsSchema() {
1373
1150
  return Joi.object({
1374
- _custom_json: Joi.any(),
1375
- _id: Joi.string().allow(""),
1376
- active: Joi.boolean(),
1377
1151
  application: Joi.string().allow(""),
1378
- archived: Joi.boolean(),
1379
- configuration: ContentApplicationModel.ConfigurationSchema(),
1380
- date_meta: ContentApplicationModel.DateMeta(),
1381
- media: Joi.array().items(ContentApplicationModel.SlideshowMedia()),
1382
- platform: Joi.string().allow(""),
1383
- slug: Joi.string().allow(""),
1384
- });
1385
- }
1386
-
1387
- /** @returns {Support} */
1388
- static Support() {
1389
- return Joi.object({
1390
1152
  _id: Joi.string().allow(""),
1391
- application: Joi.string().allow(""),
1392
- config_type: Joi.string().allow(""),
1393
- contact: ContentApplicationModel.ContactSchema(),
1394
- created: Joi.boolean(),
1395
- created_at: Joi.string().allow(""),
1396
- updated_at: Joi.string().allow(""),
1153
+ tags: Joi.array().items(ContentApplicationModel.TagSchema()),
1397
1154
  });
1398
1155
  }
1399
1156
 
1400
1157
  /** @returns {TagSchema} */
1401
1158
  static TagSchema() {
1402
1159
  return Joi.object({
1403
- __source: ContentApplicationModel.TagSourceSchema(),
1160
+ name: Joi.string().allow(""),
1161
+ url: Joi.string().allow(""),
1162
+ type: Joi.string().allow(""),
1163
+ sub_type: Joi.string().allow(""),
1404
1164
  _id: Joi.string().allow(""),
1165
+ position: Joi.string().allow(""),
1405
1166
  attributes: Joi.any(),
1406
1167
  content: Joi.string().allow(""),
1407
- name: Joi.string().allow(""),
1408
1168
  pages: Joi.array().items(Joi.any()),
1409
- position: Joi.string().allow(""),
1410
- sub_type: Joi.string().allow(""),
1411
- type: Joi.string().allow(""),
1412
- url: Joi.string().allow(""),
1169
+ __source: ContentApplicationModel.TagSourceSchema(),
1413
1170
  });
1414
1171
  }
1415
1172
 
1416
1173
  /** @returns {TagSourceSchema} */
1417
1174
  static TagSourceSchema() {
1418
1175
  return Joi.object({
1419
- id: Joi.string().allow(""),
1420
1176
  type: Joi.string().allow(""),
1421
- });
1422
- }
1423
-
1424
- /** @returns {TagsSchema} */
1425
- static TagsSchema() {
1426
- return Joi.object({
1427
- _id: Joi.string().allow(""),
1428
- application: Joi.string().allow(""),
1429
- tags: Joi.array().items(ContentApplicationModel.TagSchema()),
1177
+ id: Joi.string().allow(""),
1430
1178
  });
1431
1179
  }
1432
1180