@gofynd/fdk-client-javascript 1.2.0 → 1.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +44 -7
- package/package.json +1 -2
- package/sdk/application/ApplicationAPIClient.d.ts +3 -3
- package/sdk/application/ApplicationAPIClient.js +6 -4
- package/sdk/application/ApplicationClient.d.ts +2 -3
- package/sdk/application/ApplicationClient.js +1 -45
- package/sdk/application/ApplicationConfig.d.ts +46 -6
- package/sdk/application/ApplicationConfig.js +15 -16
- package/sdk/application/Cart/CartApplicationClient.d.ts +61 -33
- package/sdk/application/Cart/CartApplicationClient.js +225 -134
- package/sdk/application/Cart/CartApplicationModel.d.ts +4 -4
- package/sdk/application/Cart/CartApplicationModel.js +4 -4
- package/sdk/application/Catalog/CatalogApplicationClient.d.ts +61 -30
- package/sdk/application/Catalog/CatalogApplicationClient.js +234 -146
- package/sdk/application/Catalog/CatalogApplicationModel.d.ts +115 -13
- package/sdk/application/Catalog/CatalogApplicationModel.js +77 -12
- package/sdk/application/Common/CommonApplicationClient.d.ts +5 -3
- package/sdk/application/Common/CommonApplicationClient.js +13 -11
- package/sdk/application/Common/CommonApplicationModel.d.ts +3 -83
- package/sdk/application/Common/CommonApplicationModel.js +2 -58
- package/sdk/application/Communication/CommunicationApplicationClient.d.ts +9 -3
- package/sdk/application/Communication/CommunicationApplicationClient.js +25 -13
- package/sdk/application/Communication/CommunicationApplicationModel.d.ts +1 -34
- package/sdk/application/Communication/CommunicationApplicationModel.js +0 -36
- package/sdk/application/Configuration/ConfigurationApplicationClient.d.ts +46 -16
- package/sdk/application/Configuration/ConfigurationApplicationClient.js +144 -68
- package/sdk/application/Configuration/ConfigurationApplicationModel.d.ts +1 -219
- package/sdk/application/Configuration/ConfigurationApplicationModel.js +0 -226
- package/sdk/application/Content/ContentApplicationClient.d.ts +49 -21
- package/sdk/application/Content/ContentApplicationClient.js +159 -80
- package/sdk/application/Content/ContentApplicationModel.d.ts +5 -622
- package/sdk/application/Content/ContentApplicationModel.js +11 -763
- package/sdk/application/FileStorage/FileStorageApplicationClient.d.ts +6 -3
- package/sdk/application/FileStorage/FileStorageApplicationClient.js +20 -14
- package/sdk/application/FileStorage/FileStorageApplicationModel.d.ts +1 -152
- package/sdk/application/FileStorage/FileStorageApplicationModel.js +0 -180
- package/sdk/application/Lead/LeadApplicationClient.d.ts +14 -7
- package/sdk/application/Lead/LeadApplicationClient.js +50 -31
- package/sdk/application/Lead/LeadApplicationModel.d.ts +22 -741
- package/sdk/application/Lead/LeadApplicationModel.js +21 -481
- package/sdk/application/Logistic/LogisticApplicationClient.d.ts +11 -5
- package/sdk/application/Logistic/LogisticApplicationClient.js +41 -20
- package/sdk/application/Order/OrderApplicationClient.d.ts +24 -12
- package/sdk/application/Order/OrderApplicationClient.js +88 -56
- package/sdk/application/Payment/PaymentApplicationClient.d.ts +91 -42
- package/sdk/application/Payment/PaymentApplicationClient.js +293 -194
- package/sdk/application/Payment/PaymentApplicationModel.d.ts +36 -36
- package/sdk/application/Payment/PaymentApplicationModel.js +36 -36
- package/sdk/application/PosCart/PosCartApplicationClient.d.ts +59 -32
- package/sdk/application/PosCart/PosCartApplicationClient.js +214 -130
- package/sdk/application/PosCart/PosCartApplicationModel.d.ts +2 -2
- package/sdk/application/PosCart/PosCartApplicationModel.js +2 -2
- package/sdk/application/Rewards/RewardsApplicationClient.d.ts +16 -7
- package/sdk/application/Rewards/RewardsApplicationClient.js +56 -29
- package/sdk/application/Share/ShareApplicationClient.d.ts +15 -7
- package/sdk/application/Share/ShareApplicationClient.js +51 -31
- package/sdk/application/Share/ShareApplicationModel.d.ts +1 -33
- package/sdk/application/Share/ShareApplicationModel.js +0 -38
- package/sdk/application/Theme/ThemeApplicationClient.d.ts +9 -4
- package/sdk/application/Theme/ThemeApplicationClient.js +35 -18
- package/sdk/application/Theme/ThemeApplicationModel.d.ts +982 -312
- package/sdk/application/Theme/ThemeApplicationModel.js +621 -284
- package/sdk/application/User/UserApplicationClient.d.ts +74 -35
- package/sdk/application/User/UserApplicationClient.js +252 -161
- package/sdk/application/User/UserApplicationModel.d.ts +3 -401
- package/sdk/application/User/UserApplicationModel.js +2 -490
- package/sdk/common/AxiosHelper.js +1 -2
- package/sdk/common/FDKError.d.ts +3 -0
- package/sdk/common/FDKError.js +8 -0
- package/sdk/common/utils.d.ts +3 -0
- package/sdk/common/utils.js +29 -0
- package/sdk/partner/PartnerAPIClient.d.ts +5 -4
- package/sdk/partner/PartnerAPIClient.js +7 -4
- package/sdk/partner/PartnerClient.d.ts +2 -0
- package/sdk/partner/PartnerClient.js +3 -0
- package/sdk/partner/Theme/ThemePartnerClient.d.ts +299 -0
- package/sdk/partner/Theme/ThemePartnerClient.js +768 -0
- package/sdk/partner/Theme/ThemePartnerModel.d.ts +1706 -0
- package/sdk/partner/Theme/ThemePartnerModel.js +1409 -0
- package/sdk/partner/Theme/ThemePartnerValidator.d.ts +22 -0
- package/sdk/partner/Theme/ThemePartnerValidator.js +157 -0
- package/sdk/partner/index.d.ts +3 -1
- package/sdk/partner/index.js +3 -1
- package/sdk/platform/AuditTrail/AuditTrailPlatformClient.d.ts +8 -4
- package/sdk/platform/AuditTrail/AuditTrailPlatformClient.js +38 -16
- package/sdk/platform/AuditTrail/AuditTrailPlatformModel.d.ts +1 -13
- package/sdk/platform/AuditTrail/AuditTrailPlatformModel.js +0 -12
- package/sdk/platform/AuditTrail/AuditTrailPlatformValidator.d.ts +10 -0
- package/sdk/platform/AuditTrail/AuditTrailPlatformValidator.js +4 -0
- package/sdk/platform/Billing/BillingPlatformClient.d.ts +59 -14
- package/sdk/platform/Billing/BillingPlatformClient.js +315 -64
- package/sdk/platform/Billing/BillingPlatformModel.d.ts +56 -196
- package/sdk/platform/Billing/BillingPlatformModel.js +63 -217
- package/sdk/platform/Billing/BillingPlatformValidator.d.ts +23 -1
- package/sdk/platform/Billing/BillingPlatformValidator.js +31 -0
- package/sdk/platform/Cart/CartPlatformApplicationClient.d.ts +124 -63
- package/sdk/platform/Cart/CartPlatformApplicationClient.js +431 -265
- package/sdk/platform/Cart/CartPlatformModel.d.ts +253 -53
- package/sdk/platform/Cart/CartPlatformModel.js +104 -54
- package/sdk/platform/Catalog/CatalogPlatformApplicationClient.d.ts +120 -53
- package/sdk/platform/Catalog/CatalogPlatformApplicationClient.js +398 -247
- package/sdk/platform/Catalog/CatalogPlatformClient.d.ts +155 -78
- package/sdk/platform/Catalog/CatalogPlatformClient.js +561 -355
- package/sdk/platform/Catalog/CatalogPlatformModel.d.ts +10 -12
- package/sdk/platform/Catalog/CatalogPlatformModel.js +10 -12
- package/sdk/platform/Catalog/CatalogPlatformValidator.d.ts +30 -0
- package/sdk/platform/Catalog/CatalogPlatformValidator.js +13 -0
- package/sdk/platform/Common/CommonPlatformClient.d.ts +5 -3
- package/sdk/platform/Common/CommonPlatformClient.js +13 -11
- package/sdk/platform/Common/CommonPlatformModel.d.ts +39 -64
- package/sdk/platform/Common/CommonPlatformModel.js +23 -57
- package/sdk/platform/Common/CommonPlatformValidator.d.ts +5 -10
- package/sdk/platform/Common/CommonPlatformValidator.js +3 -4
- package/sdk/platform/Communication/CommunicationPlatformApplicationClient.d.ts +370 -120
- package/sdk/platform/Communication/CommunicationPlatformApplicationClient.js +2328 -888
- package/sdk/platform/Communication/CommunicationPlatformApplicationValidator.d.ts +143 -24
- package/sdk/platform/Communication/CommunicationPlatformApplicationValidator.js +179 -15
- package/sdk/platform/Communication/CommunicationPlatformClient.d.ts +2 -1
- package/sdk/platform/Communication/CommunicationPlatformClient.js +6 -5
- package/sdk/platform/Communication/CommunicationPlatformModel.d.ts +386 -308
- package/sdk/platform/Communication/CommunicationPlatformModel.js +415 -355
- package/sdk/platform/CompanyProfile/CompanyProfilePlatformClient.d.ts +38 -13
- package/sdk/platform/CompanyProfile/CompanyProfilePlatformClient.js +171 -57
- package/sdk/platform/CompanyProfile/CompanyProfilePlatformModel.d.ts +53 -1
- package/sdk/platform/CompanyProfile/CompanyProfilePlatformModel.js +54 -0
- package/sdk/platform/CompanyProfile/CompanyProfilePlatformValidator.d.ts +5 -1
- package/sdk/platform/CompanyProfile/CompanyProfilePlatformValidator.js +7 -0
- package/sdk/platform/Configuration/ConfigurationPlatformApplicationClient.d.ts +96 -29
- package/sdk/platform/Configuration/ConfigurationPlatformApplicationClient.js +311 -126
- package/sdk/platform/Configuration/ConfigurationPlatformApplicationValidator.d.ts +5 -1
- package/sdk/platform/Configuration/ConfigurationPlatformApplicationValidator.js +7 -0
- package/sdk/platform/Configuration/ConfigurationPlatformClient.d.ts +36 -18
- package/sdk/platform/Configuration/ConfigurationPlatformClient.js +121 -86
- package/sdk/platform/Configuration/ConfigurationPlatformModel.d.ts +13 -180
- package/sdk/platform/Configuration/ConfigurationPlatformModel.js +5 -113
- package/sdk/platform/Content/ContentPlatformApplicationClient.d.ts +162 -70
- package/sdk/platform/Content/ContentPlatformApplicationClient.js +528 -309
- package/sdk/platform/Content/ContentPlatformModel.d.ts +9 -198
- package/sdk/platform/Content/ContentPlatformModel.js +8 -231
- package/sdk/platform/Discount/DiscountPlatformClient.d.ts +48 -11
- package/sdk/platform/Discount/DiscountPlatformClient.js +142 -48
- package/sdk/platform/Discount/DiscountPlatformModel.d.ts +40 -1
- package/sdk/platform/Discount/DiscountPlatformModel.js +27 -0
- package/sdk/platform/FileStorage/FileStoragePlatformApplicationClient.d.ts +84 -18
- package/sdk/platform/FileStorage/FileStoragePlatformApplicationClient.js +486 -53
- package/sdk/platform/FileStorage/FileStoragePlatformApplicationValidator.d.ts +71 -7
- package/sdk/platform/FileStorage/FileStoragePlatformApplicationValidator.js +81 -5
- package/sdk/platform/FileStorage/FileStoragePlatformClient.d.ts +13 -18
- package/sdk/platform/FileStorage/FileStoragePlatformClient.js +58 -65
- package/sdk/platform/FileStorage/FileStoragePlatformModel.d.ts +198 -71
- package/sdk/platform/FileStorage/FileStoragePlatformModel.js +212 -64
- package/sdk/platform/FileStorage/FileStoragePlatformValidator.d.ts +18 -10
- package/sdk/platform/FileStorage/FileStoragePlatformValidator.js +11 -6
- package/sdk/platform/Finance/FinancePlatformClient.d.ts +177 -40
- package/sdk/platform/Finance/FinancePlatformClient.js +1028 -132
- package/sdk/platform/Finance/FinancePlatformModel.d.ts +670 -22
- package/sdk/platform/Finance/FinancePlatformModel.js +809 -23
- package/sdk/platform/Finance/FinancePlatformValidator.d.ts +111 -1
- package/sdk/platform/Finance/FinancePlatformValidator.js +134 -0
- package/sdk/platform/Inventory/InventoryPlatformClient.d.ts +24 -12
- package/sdk/platform/Inventory/InventoryPlatformClient.js +94 -52
- package/sdk/platform/Lead/LeadPlatformApplicationClient.d.ts +27 -13
- package/sdk/platform/Lead/LeadPlatformApplicationClient.js +101 -55
- package/sdk/platform/Lead/LeadPlatformClient.d.ts +50 -39
- package/sdk/platform/Lead/LeadPlatformClient.js +171 -112
- package/sdk/platform/Lead/LeadPlatformModel.d.ts +32 -390
- package/sdk/platform/Lead/LeadPlatformModel.js +31 -214
- package/sdk/platform/Lead/LeadPlatformValidator.d.ts +33 -33
- package/sdk/platform/Lead/LeadPlatformValidator.js +23 -23
- package/sdk/platform/OAuthClient.js +6 -2
- package/sdk/platform/Order/OrderPlatformApplicationClient.d.ts +4 -2
- package/sdk/platform/Order/OrderPlatformApplicationClient.js +12 -10
- package/sdk/platform/Order/OrderPlatformClient.d.ts +165 -71
- package/sdk/platform/Order/OrderPlatformClient.js +738 -205
- package/sdk/platform/Order/OrderPlatformModel.d.ts +261 -3
- package/sdk/platform/Order/OrderPlatformModel.js +225 -2
- package/sdk/platform/Order/OrderPlatformValidator.d.ts +104 -3
- package/sdk/platform/Order/OrderPlatformValidator.js +85 -2
- package/sdk/platform/Partner/PartnerPlatformApplicationClient.d.ts +4 -22
- package/sdk/platform/Partner/PartnerPlatformApplicationClient.js +12 -159
- package/sdk/platform/Partner/PartnerPlatformApplicationValidator.d.ts +1 -30
- package/sdk/platform/Partner/PartnerPlatformApplicationValidator.js +0 -26
- package/sdk/platform/Partner/PartnerPlatformModel.d.ts +1 -690
- package/sdk/platform/Partner/PartnerPlatformModel.js +0 -809
- package/sdk/platform/Payment/PaymentPlatformApplicationClient.d.ts +167 -32
- package/sdk/platform/Payment/PaymentPlatformApplicationClient.js +793 -145
- package/sdk/platform/Payment/PaymentPlatformApplicationValidator.d.ts +91 -1
- package/sdk/platform/Payment/PaymentPlatformApplicationValidator.js +91 -0
- package/sdk/platform/Payment/PaymentPlatformClient.d.ts +20 -10
- package/sdk/platform/Payment/PaymentPlatformClient.js +68 -47
- package/sdk/platform/Payment/PaymentPlatformModel.d.ts +549 -7
- package/sdk/platform/Payment/PaymentPlatformModel.js +305 -6
- package/sdk/platform/PlatformAPIClient.d.ts +3 -3
- package/sdk/platform/PlatformAPIClient.js +2 -2
- package/sdk/platform/PlatformClient.d.ts +2 -2
- package/sdk/platform/PlatformClient.js +4 -4
- package/sdk/platform/Rewards/RewardsPlatformApplicationClient.d.ts +28 -12
- package/sdk/platform/Rewards/RewardsPlatformApplicationClient.js +90 -53
- package/sdk/platform/Rewards/RewardsPlatformModel.d.ts +1 -12
- package/sdk/platform/Rewards/RewardsPlatformModel.js +0 -14
- package/sdk/platform/Serviceability/ServiceabilityPlatformApplicationClient.d.ts +62 -26
- package/sdk/platform/Serviceability/ServiceabilityPlatformApplicationClient.js +210 -93
- package/sdk/platform/Serviceability/ServiceabilityPlatformApplicationValidator.d.ts +20 -11
- package/sdk/platform/Serviceability/ServiceabilityPlatformApplicationValidator.js +23 -11
- package/sdk/platform/Serviceability/ServiceabilityPlatformClient.d.ts +36 -18
- package/sdk/platform/Serviceability/ServiceabilityPlatformClient.js +142 -78
- package/sdk/platform/Serviceability/ServiceabilityPlatformModel.d.ts +12 -3
- package/sdk/platform/Serviceability/ServiceabilityPlatformModel.js +14 -2
- package/sdk/platform/Share/SharePlatformApplicationClient.d.ts +10 -26
- package/sdk/platform/Share/SharePlatformApplicationClient.js +36 -67
- package/sdk/platform/Share/SharePlatformModel.d.ts +4 -4
- package/sdk/platform/Share/SharePlatformModel.js +4 -4
- package/sdk/platform/Theme/ThemePlatformApplicationClient.d.ts +127 -57
- package/sdk/platform/Theme/ThemePlatformApplicationClient.js +564 -189
- package/sdk/platform/Theme/ThemePlatformApplicationValidator.d.ts +63 -26
- package/sdk/platform/Theme/ThemePlatformApplicationValidator.js +62 -22
- package/sdk/platform/Theme/ThemePlatformClient.d.ts +37 -0
- package/sdk/platform/Theme/ThemePlatformClient.js +235 -0
- package/sdk/platform/Theme/ThemePlatformModel.d.ts +1167 -261
- package/sdk/platform/Theme/ThemePlatformModel.js +801 -244
- package/sdk/platform/Theme/ThemePlatformValidator.d.ts +32 -0
- package/sdk/platform/Theme/ThemePlatformValidator.js +38 -0
- package/sdk/platform/User/UserPlatformApplicationClient.d.ts +35 -17
- package/sdk/platform/User/UserPlatformApplicationClient.js +132 -73
- package/sdk/platform/User/UserPlatformApplicationValidator.d.ts +7 -0
- package/sdk/platform/User/UserPlatformApplicationValidator.js +3 -0
- package/sdk/platform/User/UserPlatformModel.d.ts +1 -738
- package/sdk/platform/User/UserPlatformModel.js +3 -899
- package/sdk/platform/Webhook/WebhookPlatformClient.d.ts +120 -7
- package/sdk/platform/Webhook/WebhookPlatformClient.js +799 -41
- package/sdk/platform/Webhook/WebhookPlatformModel.d.ts +476 -86
- package/sdk/platform/Webhook/WebhookPlatformModel.js +388 -89
- package/sdk/platform/Webhook/WebhookPlatformValidator.d.ts +96 -9
- package/sdk/platform/Webhook/WebhookPlatformValidator.js +117 -5
- package/sdk/public/Configuration/ConfigurationPublicClient.d.ts +5 -3
- package/sdk/public/Configuration/ConfigurationPublicClient.js +13 -11
- package/sdk/public/Configuration/ConfigurationPublicModel.d.ts +3 -106
- package/sdk/public/Configuration/ConfigurationPublicModel.js +2 -59
- package/sdk/public/Inventory/InventoryPublicClient.d.ts +12 -6
- package/sdk/public/Inventory/InventoryPublicClient.js +42 -27
- package/sdk/public/Partner/PartnerPublicClient.d.ts +22 -0
- package/sdk/public/Partner/PartnerPublicClient.js +110 -0
- package/sdk/public/Partner/PartnerPublicModel.d.ts +240 -0
- package/sdk/public/Partner/PartnerPublicModel.js +280 -0
- package/sdk/public/Partner/PartnerPublicValidator.d.ts +18 -0
- package/sdk/public/Partner/PartnerPublicValidator.js +19 -0
- package/sdk/public/PublicAPIClient.d.ts +14 -1
- package/sdk/public/PublicAPIClient.js +7 -1
- package/sdk/public/PublicClient.d.ts +2 -0
- package/sdk/public/PublicClient.js +4 -0
- package/sdk/public/Webhook/WebhookPublicClient.d.ts +5 -2
- package/sdk/public/Webhook/WebhookPublicClient.js +15 -9
- package/sdk/public/Webhook/WebhookPublicModel.d.ts +1 -191
- package/sdk/public/Webhook/WebhookPublicModel.js +0 -229
- package/sdk/public/index.d.ts +1 -0
- package/sdk/public/index.js +2 -0
- package/sdk/application/ApplicationModels.d.ts +0 -48
- package/sdk/application/ApplicationModels.js +0 -38
- package/sdk/platform/Partner/PartnerPlatformClient.d.ts +0 -106
- package/sdk/platform/Partner/PartnerPlatformClient.js +0 -878
- package/sdk/platform/Partner/PartnerPlatformValidator.d.ts +0 -208
- package/sdk/platform/Partner/PartnerPlatformValidator.js +0 -169
|
@@ -0,0 +1,1409 @@
|
|
|
1
|
+
const Joi = require("joi");
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @typedef AdvanceSetting
|
|
5
|
+
* @property {DividerStrokeHighlightSetting} [divider_stroke_highlight]
|
|
6
|
+
* @property {OverlayPopupSetting} [overlay_popup]
|
|
7
|
+
* @property {UserAlertsSetting} [user_alerts]
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* @typedef AllAvailablePageSchema
|
|
12
|
+
* @property {AvailablePageSchema[]} [pages]
|
|
13
|
+
*/
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* @typedef Assets
|
|
17
|
+
* @property {CommonJS} [common_js]
|
|
18
|
+
* @property {CSS} [css]
|
|
19
|
+
* @property {UMDJs} [umd_js]
|
|
20
|
+
*/
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* @typedef AuthConfig
|
|
24
|
+
* @property {boolean} [show_footer_auth] - Whether to show footer authentication or not
|
|
25
|
+
* @property {boolean} [show_header_auth] - Whether to show header authentication or not
|
|
26
|
+
*/
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* @typedef AvailablePagePredicate
|
|
30
|
+
* @property {AvailablePageRoutePredicate} [route]
|
|
31
|
+
* @property {AvailablePageScreenPredicate} [screen]
|
|
32
|
+
* @property {AvailablePageUserPredicate} [user]
|
|
33
|
+
*/
|
|
34
|
+
|
|
35
|
+
/**
|
|
36
|
+
* @typedef AvailablePageRoutePredicate
|
|
37
|
+
* @property {string} [exact_url]
|
|
38
|
+
* @property {Object} [query]
|
|
39
|
+
* @property {string} [selected]
|
|
40
|
+
*/
|
|
41
|
+
|
|
42
|
+
/**
|
|
43
|
+
* @typedef AvailablePageSchema
|
|
44
|
+
* @property {string} [_id]
|
|
45
|
+
* @property {string} [path]
|
|
46
|
+
* @property {Object[]} [props]
|
|
47
|
+
* @property {AvailablePageSchemaSections[]} [sections]
|
|
48
|
+
* @property {AvailablePageSectionMetaAttributes[]} [sections_meta]
|
|
49
|
+
* @property {AvailablePageSeo} [seo]
|
|
50
|
+
* @property {string} [text]
|
|
51
|
+
* @property {string} [theme]
|
|
52
|
+
* @property {string} [type]
|
|
53
|
+
* @property {string} [value]
|
|
54
|
+
*/
|
|
55
|
+
|
|
56
|
+
/**
|
|
57
|
+
* @typedef AvailablePageSchemaSections
|
|
58
|
+
* @property {Object[]} [blocks]
|
|
59
|
+
* @property {string} [label]
|
|
60
|
+
* @property {string} [name]
|
|
61
|
+
* @property {AvailablePagePredicate} [predicate]
|
|
62
|
+
* @property {Object} [preset]
|
|
63
|
+
* @property {Object} [props]
|
|
64
|
+
*/
|
|
65
|
+
|
|
66
|
+
/**
|
|
67
|
+
* @typedef AvailablePageScreenPredicate
|
|
68
|
+
* @property {boolean} [desktop]
|
|
69
|
+
* @property {boolean} [mobile]
|
|
70
|
+
* @property {boolean} [tablet]
|
|
71
|
+
*/
|
|
72
|
+
|
|
73
|
+
/**
|
|
74
|
+
* @typedef AvailablePageSectionMetaAttributes
|
|
75
|
+
* @property {Object} [attributes]
|
|
76
|
+
*/
|
|
77
|
+
|
|
78
|
+
/**
|
|
79
|
+
* @typedef AvailablePageSeo
|
|
80
|
+
* @property {string} [_id]
|
|
81
|
+
* @property {string} [description]
|
|
82
|
+
* @property {string} [title]
|
|
83
|
+
*/
|
|
84
|
+
|
|
85
|
+
/**
|
|
86
|
+
* @typedef AvailablePageUserPredicate
|
|
87
|
+
* @property {boolean} [anonymous]
|
|
88
|
+
* @property {boolean} [authenticated]
|
|
89
|
+
*/
|
|
90
|
+
|
|
91
|
+
/**
|
|
92
|
+
* @typedef BlitzkriegApiErrorSchema
|
|
93
|
+
* @property {string} [message]
|
|
94
|
+
*/
|
|
95
|
+
|
|
96
|
+
/**
|
|
97
|
+
* @typedef BlitzkriegInternalServerErrorSchema
|
|
98
|
+
* @property {string} [message]
|
|
99
|
+
*/
|
|
100
|
+
|
|
101
|
+
/**
|
|
102
|
+
* @typedef Block
|
|
103
|
+
* @property {string} [name] - The name of the block.
|
|
104
|
+
* @property {BlockProps} [props]
|
|
105
|
+
* @property {string} [type] - The type of the block.
|
|
106
|
+
*/
|
|
107
|
+
|
|
108
|
+
/**
|
|
109
|
+
* @typedef BlockProps
|
|
110
|
+
* @property {ImagePickerProp} [image]
|
|
111
|
+
* @property {UrlProp} [slide_link]
|
|
112
|
+
*/
|
|
113
|
+
|
|
114
|
+
/**
|
|
115
|
+
* @typedef ButtonSetting
|
|
116
|
+
* @property {string} [button_link] - The button link color
|
|
117
|
+
* @property {string} [button_primary] - The primary button color
|
|
118
|
+
* @property {string} [button_secondary] - The secondary button color
|
|
119
|
+
*/
|
|
120
|
+
|
|
121
|
+
/**
|
|
122
|
+
* @typedef CarouselItem
|
|
123
|
+
* @property {string} [desktop] - Desktop carousel image URL
|
|
124
|
+
* @property {string} [mobile] - Mobile carousel image URL
|
|
125
|
+
*/
|
|
126
|
+
|
|
127
|
+
/**
|
|
128
|
+
* @typedef CatalogSize
|
|
129
|
+
* @property {number} [max] - Maximum catalog size
|
|
130
|
+
* @property {number} [min] - Minimum catalog size
|
|
131
|
+
*/
|
|
132
|
+
|
|
133
|
+
/**
|
|
134
|
+
* @typedef CheckboxProp
|
|
135
|
+
* @property {string} [type] - The type of the property.
|
|
136
|
+
* @property {boolean} [value] - The value of the checkbox property.
|
|
137
|
+
*/
|
|
138
|
+
|
|
139
|
+
/**
|
|
140
|
+
* @typedef Colors
|
|
141
|
+
* @property {string} [accent_color] - The accent color
|
|
142
|
+
* @property {string} [bg_color] - The background color
|
|
143
|
+
* @property {string} [button_secondary_color] - The secondary button color
|
|
144
|
+
* @property {string} [link_color] - The link color
|
|
145
|
+
* @property {string} [primary_color] - The primary color
|
|
146
|
+
* @property {string} [secondary_color] - The secondary color
|
|
147
|
+
*/
|
|
148
|
+
|
|
149
|
+
/**
|
|
150
|
+
* @typedef Comments
|
|
151
|
+
* @property {string} [developer_remark] - Developer remark
|
|
152
|
+
* @property {string} [reviewer_feedback] - Reviewer feedback
|
|
153
|
+
*/
|
|
154
|
+
|
|
155
|
+
/**
|
|
156
|
+
* @typedef CommonJS
|
|
157
|
+
* @property {string} [link]
|
|
158
|
+
*/
|
|
159
|
+
|
|
160
|
+
/**
|
|
161
|
+
* @typedef Config
|
|
162
|
+
* @property {string} current - The current configuration
|
|
163
|
+
* @property {GlobalSchema} [global_schema]
|
|
164
|
+
* @property {ThemeConfiguration[]} list - A list of configurations
|
|
165
|
+
* @property {Preset} [preset]
|
|
166
|
+
*/
|
|
167
|
+
|
|
168
|
+
/**
|
|
169
|
+
* @typedef ContactInfo
|
|
170
|
+
* @property {string[]} [developer_contact] - Developer contact information
|
|
171
|
+
* @property {string} [seller_contact] - Seller contact information
|
|
172
|
+
*/
|
|
173
|
+
|
|
174
|
+
/**
|
|
175
|
+
* @typedef CSS
|
|
176
|
+
* @property {string[]} [links]
|
|
177
|
+
*/
|
|
178
|
+
|
|
179
|
+
/**
|
|
180
|
+
* @typedef CustomConfig
|
|
181
|
+
* @property {CustomProps} [props]
|
|
182
|
+
*/
|
|
183
|
+
|
|
184
|
+
/**
|
|
185
|
+
* @typedef CustomProps
|
|
186
|
+
* @property {string} [button_add_to_cart_color] - The add to cart button color
|
|
187
|
+
* @property {string} [button_add_to_cart_label_color] - The add to cart button
|
|
188
|
+
* label color
|
|
189
|
+
* @property {string} [button_primary_color] - The primary button color
|
|
190
|
+
* @property {string} [button_primary_label_color] - The primary button label color
|
|
191
|
+
* @property {string} [button_secondary_color] - The secondary button color
|
|
192
|
+
* @property {string} [button_secondary_label_color] - The secondary button label color
|
|
193
|
+
* @property {string} [button_tertiary_color] - The tertiary button color
|
|
194
|
+
* @property {string} [button_tertiary_hover_color] - The tertiary button hover color
|
|
195
|
+
* @property {string} [button_tertiary_hover_text_color] - The tertiary button
|
|
196
|
+
* hover text color
|
|
197
|
+
* @property {string} [button_tertiary_label_color] - The tertiary button label color
|
|
198
|
+
* @property {boolean} [disable_cart] - Whether to disable the cart or not
|
|
199
|
+
* @property {string} [footer_bg_color] - The footer background color
|
|
200
|
+
* @property {string} [footer_border_color] - The footer border color
|
|
201
|
+
* @property {string} [footer_nav_hover_color] - The footer navigation hover color
|
|
202
|
+
* @property {string} [footer_text_color] - The footer text color
|
|
203
|
+
* @property {string} [header_bg_color] - The header background color
|
|
204
|
+
* @property {string} [header_border_color] - The header border color
|
|
205
|
+
* @property {string} [header_cart_notification_bg_color] - The header cart
|
|
206
|
+
* notification background color
|
|
207
|
+
* @property {string} [header_cart_notification_text_color] - The header cart
|
|
208
|
+
* notification text color
|
|
209
|
+
* @property {string} [header_icon_color] - The header icon color
|
|
210
|
+
* @property {string} [header_nav_hover_color] - The header navigation hover color
|
|
211
|
+
* @property {string} [header_text_color] - The header text color
|
|
212
|
+
* @property {boolean} [is_menu_below_logo] - Whether the menu is below the logo or not
|
|
213
|
+
* @property {string} [menu_position] - The position of the menu
|
|
214
|
+
* @property {string} [text_body_color] - The text body color
|
|
215
|
+
* @property {string} [text_discount_color] - The text discount color
|
|
216
|
+
* @property {string} [text_heading_link_color] - The text heading link color
|
|
217
|
+
* @property {string} [text_price_color] - The text price color
|
|
218
|
+
* @property {string} [text_sale_price_color] - The text sale price color
|
|
219
|
+
* @property {string} [text_strikethrough_price_color] - The text strikethrough
|
|
220
|
+
* price color
|
|
221
|
+
*/
|
|
222
|
+
|
|
223
|
+
/**
|
|
224
|
+
* @typedef DividerStrokeHighlightSetting
|
|
225
|
+
* @property {string} [divider_strokes] - The divider strokes color
|
|
226
|
+
* @property {string} [highlight] - The highlight color
|
|
227
|
+
*/
|
|
228
|
+
|
|
229
|
+
/**
|
|
230
|
+
* @typedef Documentation
|
|
231
|
+
* @property {string} [notes] - Documentation notes
|
|
232
|
+
* @property {string} [url] - Documentation URL
|
|
233
|
+
*/
|
|
234
|
+
|
|
235
|
+
/**
|
|
236
|
+
* @typedef ExploreInfo
|
|
237
|
+
* @property {string} [description] - Explore feature description
|
|
238
|
+
* @property {string} [title] - Explore feature title
|
|
239
|
+
*/
|
|
240
|
+
|
|
241
|
+
/**
|
|
242
|
+
* @typedef Feature
|
|
243
|
+
* @property {string} [category] - Feature category
|
|
244
|
+
* @property {FeatureItem[]} [list]
|
|
245
|
+
*/
|
|
246
|
+
|
|
247
|
+
/**
|
|
248
|
+
* @typedef FeatureItem
|
|
249
|
+
* @property {string} [description] - Feature description
|
|
250
|
+
* @property {string} [label] - Feature label
|
|
251
|
+
*/
|
|
252
|
+
|
|
253
|
+
/**
|
|
254
|
+
* @typedef Font
|
|
255
|
+
* @property {string} family - The font family
|
|
256
|
+
* @property {FontVariants} variants
|
|
257
|
+
*/
|
|
258
|
+
|
|
259
|
+
/**
|
|
260
|
+
* @typedef FontVariant
|
|
261
|
+
* @property {string} file - The URL of the font file
|
|
262
|
+
* @property {string} name - The name of the font variant
|
|
263
|
+
*/
|
|
264
|
+
|
|
265
|
+
/**
|
|
266
|
+
* @typedef FontVariants
|
|
267
|
+
* @property {FontVariant} [bold]
|
|
268
|
+
* @property {FontVariant} [light]
|
|
269
|
+
* @property {FontVariant} [medium]
|
|
270
|
+
* @property {FontVariant} [regular]
|
|
271
|
+
* @property {FontVariant} [semi_bold]
|
|
272
|
+
*/
|
|
273
|
+
|
|
274
|
+
/**
|
|
275
|
+
* @typedef FooterSetting
|
|
276
|
+
* @property {string} [footer_background] - The footer background color
|
|
277
|
+
* @property {string} [footer_body_text] - The footer body text color
|
|
278
|
+
* @property {string} [footer_bottom_background] - The footer bottom background color
|
|
279
|
+
* @property {string} [footer_heading_text] - The footer heading text color
|
|
280
|
+
* @property {string} [footer_icon] - The footer icon color
|
|
281
|
+
*/
|
|
282
|
+
|
|
283
|
+
/**
|
|
284
|
+
* @typedef GeneralSetting
|
|
285
|
+
* @property {ButtonSetting} [button]
|
|
286
|
+
* @property {FooterSetting} [footer]
|
|
287
|
+
* @property {HeaderSetting} [header]
|
|
288
|
+
* @property {SaleDiscountSetting} [sale_discount]
|
|
289
|
+
* @property {TextSetting} [text]
|
|
290
|
+
* @property {ThemeSetting} [theme]
|
|
291
|
+
*/
|
|
292
|
+
|
|
293
|
+
/**
|
|
294
|
+
* @typedef GlobalConfig
|
|
295
|
+
* @property {AuthConfig} [auth]
|
|
296
|
+
* @property {PaletteConfig} [palette]
|
|
297
|
+
* @property {StaticConfig} [statics]
|
|
298
|
+
*/
|
|
299
|
+
|
|
300
|
+
/**
|
|
301
|
+
* @typedef GlobalSchema
|
|
302
|
+
* @property {Prop[]} [props]
|
|
303
|
+
*/
|
|
304
|
+
|
|
305
|
+
/**
|
|
306
|
+
* @typedef HeaderSetting
|
|
307
|
+
* @property {string} [header_background] - The header background color
|
|
308
|
+
* @property {string} [header_icon] - The header icon color
|
|
309
|
+
* @property {string} [header_nav] - The header navigation color
|
|
310
|
+
*/
|
|
311
|
+
|
|
312
|
+
/**
|
|
313
|
+
* @typedef Highlight
|
|
314
|
+
* @property {string} [description] - Highlight description
|
|
315
|
+
* @property {string} [image] - Highlight image URL
|
|
316
|
+
* @property {string} [title] - Highlight title
|
|
317
|
+
*/
|
|
318
|
+
|
|
319
|
+
/**
|
|
320
|
+
* @typedef ImagePickerProp
|
|
321
|
+
* @property {string} [type] - The type of the property.
|
|
322
|
+
* @property {string} [value] - The value of the image picker property.
|
|
323
|
+
*/
|
|
324
|
+
|
|
325
|
+
/**
|
|
326
|
+
* @typedef Images
|
|
327
|
+
* @property {string} [desktop] - The URL of the desktop image
|
|
328
|
+
* @property {string} [mobile] - The URL of the mobile image
|
|
329
|
+
*/
|
|
330
|
+
|
|
331
|
+
/**
|
|
332
|
+
* @typedef MarketplaceTheme
|
|
333
|
+
* @property {string} [_id] - Theme ID
|
|
334
|
+
* @property {CarouselItem[]} [carousel]
|
|
335
|
+
* @property {CatalogSize} [catalog_size]
|
|
336
|
+
* @property {Comments} [comments]
|
|
337
|
+
* @property {ContactInfo} [contact]
|
|
338
|
+
* @property {string} [created_at] - Theme creation timestamp
|
|
339
|
+
* @property {string} [description] - Theme description
|
|
340
|
+
* @property {Documentation} [documentation]
|
|
341
|
+
* @property {ExploreInfo} [explore]
|
|
342
|
+
* @property {Feature[]} [features]
|
|
343
|
+
* @property {Highlight[]} [highlights]
|
|
344
|
+
* @property {MarketplaceThemeImages} [images]
|
|
345
|
+
* @property {string[]} [industry] - Industries the theme is suitable for
|
|
346
|
+
* @property {boolean} [is_default] - Indicates if the theme is a default theme
|
|
347
|
+
* @property {boolean} [is_update] - Indicates if the theme is an update
|
|
348
|
+
* @property {string} [name] - Theme name
|
|
349
|
+
* @property {string} [organization_id] - Organization ID
|
|
350
|
+
* @property {PaymentInfo} [payment]
|
|
351
|
+
* @property {Release} [release]
|
|
352
|
+
* @property {string} [slug] - Theme slug
|
|
353
|
+
* @property {string} [src] - Theme source URL
|
|
354
|
+
* @property {string} [status] - Theme status
|
|
355
|
+
* @property {number} [step] - Theme step
|
|
356
|
+
* @property {string} [tagline] - Theme tagline
|
|
357
|
+
* @property {string} [template_theme_id] - Template theme ID
|
|
358
|
+
* @property {string} [updated_at] - Theme update timestamp
|
|
359
|
+
* @property {string} [user_id] - User ID
|
|
360
|
+
* @property {Variation[]} [variations]
|
|
361
|
+
*/
|
|
362
|
+
|
|
363
|
+
/**
|
|
364
|
+
* @typedef MarketplaceThemeImages
|
|
365
|
+
* @property {string} [desktop] - Desktop theme image URL
|
|
366
|
+
* @property {string} [mobile] - Mobile theme image URL
|
|
367
|
+
*/
|
|
368
|
+
|
|
369
|
+
/**
|
|
370
|
+
* @typedef MarketplaceThemeSchema
|
|
371
|
+
* @property {PaginationSchema} [page]
|
|
372
|
+
* @property {MarketplaceTheme[]} [themes]
|
|
373
|
+
*/
|
|
374
|
+
|
|
375
|
+
/**
|
|
376
|
+
* @typedef Meta
|
|
377
|
+
* @property {string} [description] - The description of the theme
|
|
378
|
+
* @property {Images} [images]
|
|
379
|
+
* @property {string[]} [industry] - An array of industries associated with the theme
|
|
380
|
+
* @property {string} [name] - The name of the theme
|
|
381
|
+
* @property {ThemePayment} [payment]
|
|
382
|
+
* @property {Release} [release]
|
|
383
|
+
* @property {string} [slug] - The slug of the theme
|
|
384
|
+
*/
|
|
385
|
+
|
|
386
|
+
/**
|
|
387
|
+
* @typedef OverlayPopupSetting
|
|
388
|
+
* @property {string} [dialog_backgroung] - The dialog background color
|
|
389
|
+
* @property {string} [overlay] - The overlay color
|
|
390
|
+
*/
|
|
391
|
+
|
|
392
|
+
/**
|
|
393
|
+
* @typedef Page
|
|
394
|
+
* @property {Section[]} [sections]
|
|
395
|
+
* @property {string} [value] - The value of the page.
|
|
396
|
+
*/
|
|
397
|
+
|
|
398
|
+
/**
|
|
399
|
+
* @typedef PaginationSchema
|
|
400
|
+
* @property {number} [current]
|
|
401
|
+
* @property {boolean} [has_next]
|
|
402
|
+
* @property {number} [item_total]
|
|
403
|
+
* @property {number} [size]
|
|
404
|
+
* @property {string} [type]
|
|
405
|
+
*/
|
|
406
|
+
|
|
407
|
+
/**
|
|
408
|
+
* @typedef PaletteConfig
|
|
409
|
+
* @property {AdvanceSetting} [advance_setting]
|
|
410
|
+
* @property {GeneralSetting} [general_setting]
|
|
411
|
+
*/
|
|
412
|
+
|
|
413
|
+
/**
|
|
414
|
+
* @typedef PaymentInfo
|
|
415
|
+
* @property {number} [amount] - Amount of payment
|
|
416
|
+
* @property {boolean} [is_paid] - Indicates if the theme is paid
|
|
417
|
+
*/
|
|
418
|
+
|
|
419
|
+
/**
|
|
420
|
+
* @typedef Predicate
|
|
421
|
+
* @property {Route} [route]
|
|
422
|
+
* @property {Screen} [screen]
|
|
423
|
+
* @property {ThemeUserSchema} [user]
|
|
424
|
+
*/
|
|
425
|
+
|
|
426
|
+
/**
|
|
427
|
+
* @typedef Preset
|
|
428
|
+
* @property {Page[]} [pages]
|
|
429
|
+
*/
|
|
430
|
+
|
|
431
|
+
/**
|
|
432
|
+
* @typedef Prop
|
|
433
|
+
* @property {string} [category] - The category of the property
|
|
434
|
+
* @property {string} [id] - The ID of the property
|
|
435
|
+
* @property {string} [info] - Additional information about the property
|
|
436
|
+
* @property {string} [label] - The label of the property
|
|
437
|
+
* @property {string} [type] - The type of the property
|
|
438
|
+
*/
|
|
439
|
+
|
|
440
|
+
/**
|
|
441
|
+
* @typedef RangeProp
|
|
442
|
+
* @property {string} [type] - The type of the property.
|
|
443
|
+
* @property {number} [value] - The value of the range property.
|
|
444
|
+
*/
|
|
445
|
+
|
|
446
|
+
/**
|
|
447
|
+
* @typedef Release
|
|
448
|
+
* @property {string} [notes] - The release notes of the theme
|
|
449
|
+
* @property {string} [version] - The version of the theme
|
|
450
|
+
*/
|
|
451
|
+
|
|
452
|
+
/**
|
|
453
|
+
* @typedef Route
|
|
454
|
+
* @property {string} [exact_url] - The exact URL of the route.
|
|
455
|
+
* @property {string} [selected] - The selected route.
|
|
456
|
+
*/
|
|
457
|
+
|
|
458
|
+
/**
|
|
459
|
+
* @typedef SaleDiscountSetting
|
|
460
|
+
* @property {string} [sale_badge_background] - The sale badge background color
|
|
461
|
+
* @property {string} [sale_badge_text] - The sale badge text color
|
|
462
|
+
* @property {string} [sale_discount_text] - The sale discount text color
|
|
463
|
+
* @property {string} [sale_timer] - The sale timer color
|
|
464
|
+
*/
|
|
465
|
+
|
|
466
|
+
/**
|
|
467
|
+
* @typedef Screen
|
|
468
|
+
* @property {boolean} [desktop] - True if the screen is a desktop device.
|
|
469
|
+
* @property {boolean} [mobile] - True if the screen is a mobile device.
|
|
470
|
+
* @property {boolean} [tablet] - True if the screen is a tablet device.
|
|
471
|
+
*/
|
|
472
|
+
|
|
473
|
+
/**
|
|
474
|
+
* @typedef Section
|
|
475
|
+
* @property {Block[]} [blocks]
|
|
476
|
+
* @property {string} [name] - The name of the section.
|
|
477
|
+
* @property {Predicate} [predicate]
|
|
478
|
+
* @property {SectionPreset} [preset]
|
|
479
|
+
* @property {SectionProps} [props]
|
|
480
|
+
*/
|
|
481
|
+
|
|
482
|
+
/**
|
|
483
|
+
* @typedef SectionItem
|
|
484
|
+
* @property {Object[]} [blocks] - Blocks
|
|
485
|
+
* @property {string} [label] - Label for the section
|
|
486
|
+
* @property {string} [name] - Name of the section
|
|
487
|
+
* @property {Object[]} [props]
|
|
488
|
+
*/
|
|
489
|
+
|
|
490
|
+
/**
|
|
491
|
+
* @typedef SectionPreset
|
|
492
|
+
* @property {Block[]} [blocks]
|
|
493
|
+
*/
|
|
494
|
+
|
|
495
|
+
/**
|
|
496
|
+
* @typedef SectionProps
|
|
497
|
+
* @property {CheckboxProp} [autoplay]
|
|
498
|
+
* @property {TextProp} [item_margin]
|
|
499
|
+
* @property {RangeProp} [slide_interval]
|
|
500
|
+
* @property {TextProp} [title]
|
|
501
|
+
*/
|
|
502
|
+
|
|
503
|
+
/**
|
|
504
|
+
* @typedef StaticConfig
|
|
505
|
+
* @property {StaticProps} [props]
|
|
506
|
+
*/
|
|
507
|
+
|
|
508
|
+
/**
|
|
509
|
+
* @typedef StaticProps
|
|
510
|
+
* @property {AuthConfig} [auth]
|
|
511
|
+
* @property {Colors} [colors]
|
|
512
|
+
*/
|
|
513
|
+
|
|
514
|
+
/**
|
|
515
|
+
* @typedef TextProp
|
|
516
|
+
* @property {string} [type] - The type of the property.
|
|
517
|
+
* @property {string} [value] - The value of the text property.
|
|
518
|
+
*/
|
|
519
|
+
|
|
520
|
+
/**
|
|
521
|
+
* @typedef TextSetting
|
|
522
|
+
* @property {string} [text_body] - The text body color
|
|
523
|
+
* @property {string} [text_heading] - The text heading color
|
|
524
|
+
* @property {string} [text_label] - The text label color
|
|
525
|
+
* @property {string} [text_secondary] - The secondary text color
|
|
526
|
+
*/
|
|
527
|
+
|
|
528
|
+
/**
|
|
529
|
+
* @typedef ThemeConfiguration
|
|
530
|
+
* @property {CustomConfig} [custom]
|
|
531
|
+
* @property {GlobalConfig} [global_config]
|
|
532
|
+
* @property {string} [name] - The name of the configuration
|
|
533
|
+
* @property {string[]} [page] - An array of pages
|
|
534
|
+
*/
|
|
535
|
+
|
|
536
|
+
/**
|
|
537
|
+
* @typedef ThemePayment
|
|
538
|
+
* @property {number} [amount] - The amount of the theme
|
|
539
|
+
* @property {boolean} [is_paid] - Whether the theme is paid or not
|
|
540
|
+
*/
|
|
541
|
+
|
|
542
|
+
/**
|
|
543
|
+
* @typedef ThemeRejectionReasons
|
|
544
|
+
* @property {string} _id - The ID of the theme rejection reasons object
|
|
545
|
+
* @property {string} admin_id - The ID of the admin who rejected the theme
|
|
546
|
+
* @property {string} [created_at] - The date and time when the theme rejection
|
|
547
|
+
* reasons object was created
|
|
548
|
+
* @property {string} [message] - A general message about the rejection reasons
|
|
549
|
+
* @property {string} organization_id - The ID of the organization
|
|
550
|
+
* @property {Object} rejection_reasons
|
|
551
|
+
* @property {string} status - The status of the theme (e.g., rejected)
|
|
552
|
+
* @property {string} theme_id - The ID of the rejected theme
|
|
553
|
+
* @property {string} [updated_at] - The date and time when the theme rejection
|
|
554
|
+
* reasons object was last updated
|
|
555
|
+
* @property {string} user_id - The ID of the user who submitted the theme
|
|
556
|
+
*/
|
|
557
|
+
|
|
558
|
+
/**
|
|
559
|
+
* @typedef ThemeSetting
|
|
560
|
+
* @property {string} [page_background] - The page background color
|
|
561
|
+
* @property {string} [theme_accent] - The theme accent color
|
|
562
|
+
*/
|
|
563
|
+
|
|
564
|
+
/**
|
|
565
|
+
* @typedef ThemesSchema
|
|
566
|
+
* @property {string} [_id] - The unique identifier of the theme
|
|
567
|
+
* @property {string} [application_id] - The ID of the application
|
|
568
|
+
* @property {boolean} [applied] - Whether the theme has been applied or not
|
|
569
|
+
* @property {Assets} [assets]
|
|
570
|
+
* @property {SectionItem[]} [available_sections] - Available sections information
|
|
571
|
+
* @property {Config} [config]
|
|
572
|
+
* @property {string} [created_at] - The creation timestamp of the theme
|
|
573
|
+
* @property {Font} [font]
|
|
574
|
+
* @property {boolean} [is_private] - Whether the theme is private or not
|
|
575
|
+
* @property {string} [marketplace_theme_id] - The ID of the theme in the marketplace
|
|
576
|
+
* @property {Meta} [meta]
|
|
577
|
+
* @property {string} [name] - The name of the theme
|
|
578
|
+
* @property {Object} [styles] - The styles associated with the theme
|
|
579
|
+
* @property {string[]} [tags] - An array of tags associated with the theme
|
|
580
|
+
* @property {string} [template_theme_id] - The ID of the template theme
|
|
581
|
+
* @property {string} [updated_at] - The last update timestamp of the theme
|
|
582
|
+
* @property {string} [version] - The version of the theme
|
|
583
|
+
*/
|
|
584
|
+
|
|
585
|
+
/**
|
|
586
|
+
* @typedef ThemeUserSchema
|
|
587
|
+
* @property {boolean} [anonymous] - True if the user is anonymous.
|
|
588
|
+
* @property {boolean} [authenticated] - True if the user is authenticated.
|
|
589
|
+
*/
|
|
590
|
+
|
|
591
|
+
/**
|
|
592
|
+
* @typedef UMDJs
|
|
593
|
+
* @property {string[]} [links]
|
|
594
|
+
*/
|
|
595
|
+
|
|
596
|
+
/**
|
|
597
|
+
* @typedef UpdateThemeRequestBody
|
|
598
|
+
* @property {Config} [config]
|
|
599
|
+
* @property {Font} [font]
|
|
600
|
+
*/
|
|
601
|
+
|
|
602
|
+
/**
|
|
603
|
+
* @typedef UrlProp
|
|
604
|
+
* @property {string} [type] - The type of the property.
|
|
605
|
+
* @property {string} [value] - The value of the URL property.
|
|
606
|
+
*/
|
|
607
|
+
|
|
608
|
+
/**
|
|
609
|
+
* @typedef UserAlertsSetting
|
|
610
|
+
* @property {string} [error_background] - The error background color
|
|
611
|
+
* @property {string} [error_text] - The error text color
|
|
612
|
+
* @property {string} [info_background] - The info background color
|
|
613
|
+
* @property {string} [info_text] - The info text color
|
|
614
|
+
* @property {string} [success_background] - The success background color
|
|
615
|
+
* @property {string} [success_text] - The success text color
|
|
616
|
+
*/
|
|
617
|
+
|
|
618
|
+
/**
|
|
619
|
+
* @typedef Variation
|
|
620
|
+
* @property {string} [color] - Variation color
|
|
621
|
+
* @property {string} [demo_url] - Variation demo URL
|
|
622
|
+
* @property {MarketplaceThemeImages} [images]
|
|
623
|
+
* @property {string} [name] - Variation name
|
|
624
|
+
*/
|
|
625
|
+
|
|
626
|
+
class ThemePartnerModel {
|
|
627
|
+
/** @returns {AdvanceSetting} */
|
|
628
|
+
static AdvanceSetting() {
|
|
629
|
+
return Joi.object({
|
|
630
|
+
divider_stroke_highlight: ThemePartnerModel.DividerStrokeHighlightSetting(),
|
|
631
|
+
overlay_popup: ThemePartnerModel.OverlayPopupSetting(),
|
|
632
|
+
user_alerts: ThemePartnerModel.UserAlertsSetting(),
|
|
633
|
+
});
|
|
634
|
+
}
|
|
635
|
+
|
|
636
|
+
/** @returns {AllAvailablePageSchema} */
|
|
637
|
+
static AllAvailablePageSchema() {
|
|
638
|
+
return Joi.object({
|
|
639
|
+
pages: Joi.array().items(ThemePartnerModel.AvailablePageSchema()),
|
|
640
|
+
});
|
|
641
|
+
}
|
|
642
|
+
|
|
643
|
+
/** @returns {Assets} */
|
|
644
|
+
static Assets() {
|
|
645
|
+
return Joi.object({
|
|
646
|
+
common_js: ThemePartnerModel.CommonJS(),
|
|
647
|
+
css: ThemePartnerModel.CSS(),
|
|
648
|
+
umd_js: ThemePartnerModel.UMDJs(),
|
|
649
|
+
});
|
|
650
|
+
}
|
|
651
|
+
|
|
652
|
+
/** @returns {AuthConfig} */
|
|
653
|
+
static AuthConfig() {
|
|
654
|
+
return Joi.object({
|
|
655
|
+
show_footer_auth: Joi.boolean(),
|
|
656
|
+
show_header_auth: Joi.boolean(),
|
|
657
|
+
});
|
|
658
|
+
}
|
|
659
|
+
|
|
660
|
+
/** @returns {AvailablePagePredicate} */
|
|
661
|
+
static AvailablePagePredicate() {
|
|
662
|
+
return Joi.object({
|
|
663
|
+
route: ThemePartnerModel.AvailablePageRoutePredicate(),
|
|
664
|
+
screen: ThemePartnerModel.AvailablePageScreenPredicate(),
|
|
665
|
+
user: ThemePartnerModel.AvailablePageUserPredicate(),
|
|
666
|
+
});
|
|
667
|
+
}
|
|
668
|
+
|
|
669
|
+
/** @returns {AvailablePageRoutePredicate} */
|
|
670
|
+
static AvailablePageRoutePredicate() {
|
|
671
|
+
return Joi.object({
|
|
672
|
+
exact_url: Joi.string().allow(""),
|
|
673
|
+
query: Joi.any(),
|
|
674
|
+
selected: Joi.string().allow(""),
|
|
675
|
+
});
|
|
676
|
+
}
|
|
677
|
+
|
|
678
|
+
/** @returns {AvailablePageSchema} */
|
|
679
|
+
static AvailablePageSchema() {
|
|
680
|
+
return Joi.object({
|
|
681
|
+
_id: Joi.string().allow(""),
|
|
682
|
+
path: Joi.string().allow(""),
|
|
683
|
+
props: Joi.array().items(Joi.any()),
|
|
684
|
+
sections: Joi.array().items(
|
|
685
|
+
ThemePartnerModel.AvailablePageSchemaSections()
|
|
686
|
+
),
|
|
687
|
+
sections_meta: Joi.array().items(
|
|
688
|
+
ThemePartnerModel.AvailablePageSectionMetaAttributes()
|
|
689
|
+
),
|
|
690
|
+
seo: ThemePartnerModel.AvailablePageSeo(),
|
|
691
|
+
text: Joi.string().allow(""),
|
|
692
|
+
theme: Joi.string().allow(""),
|
|
693
|
+
type: Joi.string().allow(""),
|
|
694
|
+
value: Joi.string().allow(""),
|
|
695
|
+
});
|
|
696
|
+
}
|
|
697
|
+
|
|
698
|
+
/** @returns {AvailablePageSchemaSections} */
|
|
699
|
+
static AvailablePageSchemaSections() {
|
|
700
|
+
return Joi.object({
|
|
701
|
+
blocks: Joi.array().items(Joi.any()),
|
|
702
|
+
label: Joi.string().allow(""),
|
|
703
|
+
name: Joi.string().allow(""),
|
|
704
|
+
predicate: ThemePartnerModel.AvailablePagePredicate(),
|
|
705
|
+
preset: Joi.any(),
|
|
706
|
+
props: Joi.any(),
|
|
707
|
+
});
|
|
708
|
+
}
|
|
709
|
+
|
|
710
|
+
/** @returns {AvailablePageScreenPredicate} */
|
|
711
|
+
static AvailablePageScreenPredicate() {
|
|
712
|
+
return Joi.object({
|
|
713
|
+
desktop: Joi.boolean(),
|
|
714
|
+
mobile: Joi.boolean(),
|
|
715
|
+
tablet: Joi.boolean(),
|
|
716
|
+
});
|
|
717
|
+
}
|
|
718
|
+
|
|
719
|
+
/** @returns {AvailablePageSectionMetaAttributes} */
|
|
720
|
+
static AvailablePageSectionMetaAttributes() {
|
|
721
|
+
return Joi.object({
|
|
722
|
+
attributes: Joi.any(),
|
|
723
|
+
});
|
|
724
|
+
}
|
|
725
|
+
|
|
726
|
+
/** @returns {AvailablePageSeo} */
|
|
727
|
+
static AvailablePageSeo() {
|
|
728
|
+
return Joi.object({
|
|
729
|
+
_id: Joi.string().allow(""),
|
|
730
|
+
description: Joi.string().allow(""),
|
|
731
|
+
title: Joi.string().allow(""),
|
|
732
|
+
});
|
|
733
|
+
}
|
|
734
|
+
|
|
735
|
+
/** @returns {AvailablePageUserPredicate} */
|
|
736
|
+
static AvailablePageUserPredicate() {
|
|
737
|
+
return Joi.object({
|
|
738
|
+
anonymous: Joi.boolean(),
|
|
739
|
+
authenticated: Joi.boolean(),
|
|
740
|
+
});
|
|
741
|
+
}
|
|
742
|
+
|
|
743
|
+
/** @returns {BlitzkriegApiErrorSchema} */
|
|
744
|
+
static BlitzkriegApiErrorSchema() {
|
|
745
|
+
return Joi.object({
|
|
746
|
+
message: Joi.string().allow(""),
|
|
747
|
+
});
|
|
748
|
+
}
|
|
749
|
+
|
|
750
|
+
/** @returns {BlitzkriegInternalServerErrorSchema} */
|
|
751
|
+
static BlitzkriegInternalServerErrorSchema() {
|
|
752
|
+
return Joi.object({
|
|
753
|
+
message: Joi.string().allow(""),
|
|
754
|
+
});
|
|
755
|
+
}
|
|
756
|
+
|
|
757
|
+
/** @returns {Block} */
|
|
758
|
+
static Block() {
|
|
759
|
+
return Joi.object({
|
|
760
|
+
name: Joi.string().allow(""),
|
|
761
|
+
props: ThemePartnerModel.BlockProps(),
|
|
762
|
+
type: Joi.string().allow(""),
|
|
763
|
+
});
|
|
764
|
+
}
|
|
765
|
+
|
|
766
|
+
/** @returns {BlockProps} */
|
|
767
|
+
static BlockProps() {
|
|
768
|
+
return Joi.object({
|
|
769
|
+
image: ThemePartnerModel.ImagePickerProp(),
|
|
770
|
+
slide_link: ThemePartnerModel.UrlProp(),
|
|
771
|
+
});
|
|
772
|
+
}
|
|
773
|
+
|
|
774
|
+
/** @returns {ButtonSetting} */
|
|
775
|
+
static ButtonSetting() {
|
|
776
|
+
return Joi.object({
|
|
777
|
+
button_link: Joi.string().allow(""),
|
|
778
|
+
button_primary: Joi.string().allow(""),
|
|
779
|
+
button_secondary: Joi.string().allow(""),
|
|
780
|
+
});
|
|
781
|
+
}
|
|
782
|
+
|
|
783
|
+
/** @returns {CarouselItem} */
|
|
784
|
+
static CarouselItem() {
|
|
785
|
+
return Joi.object({
|
|
786
|
+
desktop: Joi.string().allow(""),
|
|
787
|
+
mobile: Joi.string().allow(""),
|
|
788
|
+
});
|
|
789
|
+
}
|
|
790
|
+
|
|
791
|
+
/** @returns {CatalogSize} */
|
|
792
|
+
static CatalogSize() {
|
|
793
|
+
return Joi.object({
|
|
794
|
+
max: Joi.number(),
|
|
795
|
+
min: Joi.number(),
|
|
796
|
+
});
|
|
797
|
+
}
|
|
798
|
+
|
|
799
|
+
/** @returns {CheckboxProp} */
|
|
800
|
+
static CheckboxProp() {
|
|
801
|
+
return Joi.object({
|
|
802
|
+
type: Joi.string().allow(""),
|
|
803
|
+
value: Joi.boolean(),
|
|
804
|
+
});
|
|
805
|
+
}
|
|
806
|
+
|
|
807
|
+
/** @returns {Colors} */
|
|
808
|
+
static Colors() {
|
|
809
|
+
return Joi.object({
|
|
810
|
+
accent_color: Joi.string().allow(""),
|
|
811
|
+
bg_color: Joi.string().allow(""),
|
|
812
|
+
button_secondary_color: Joi.string().allow(""),
|
|
813
|
+
link_color: Joi.string().allow(""),
|
|
814
|
+
primary_color: Joi.string().allow(""),
|
|
815
|
+
secondary_color: Joi.string().allow(""),
|
|
816
|
+
});
|
|
817
|
+
}
|
|
818
|
+
|
|
819
|
+
/** @returns {Comments} */
|
|
820
|
+
static Comments() {
|
|
821
|
+
return Joi.object({
|
|
822
|
+
developer_remark: Joi.string().allow(""),
|
|
823
|
+
reviewer_feedback: Joi.string().allow(""),
|
|
824
|
+
});
|
|
825
|
+
}
|
|
826
|
+
|
|
827
|
+
/** @returns {CommonJS} */
|
|
828
|
+
static CommonJS() {
|
|
829
|
+
return Joi.object({
|
|
830
|
+
link: Joi.string().allow(""),
|
|
831
|
+
});
|
|
832
|
+
}
|
|
833
|
+
|
|
834
|
+
/** @returns {Config} */
|
|
835
|
+
static Config() {
|
|
836
|
+
return Joi.object({
|
|
837
|
+
current: Joi.string().allow("").required(),
|
|
838
|
+
global_schema: ThemePartnerModel.GlobalSchema(),
|
|
839
|
+
list: Joi.array()
|
|
840
|
+
.items(ThemePartnerModel.ThemeConfiguration())
|
|
841
|
+
.required(),
|
|
842
|
+
preset: ThemePartnerModel.Preset(),
|
|
843
|
+
});
|
|
844
|
+
}
|
|
845
|
+
|
|
846
|
+
/** @returns {ContactInfo} */
|
|
847
|
+
static ContactInfo() {
|
|
848
|
+
return Joi.object({
|
|
849
|
+
developer_contact: Joi.array().items(Joi.string().allow("")),
|
|
850
|
+
seller_contact: Joi.string().allow(""),
|
|
851
|
+
});
|
|
852
|
+
}
|
|
853
|
+
|
|
854
|
+
/** @returns {CSS} */
|
|
855
|
+
static CSS() {
|
|
856
|
+
return Joi.object({
|
|
857
|
+
links: Joi.array().items(Joi.string().allow("")),
|
|
858
|
+
});
|
|
859
|
+
}
|
|
860
|
+
|
|
861
|
+
/** @returns {CustomConfig} */
|
|
862
|
+
static CustomConfig() {
|
|
863
|
+
return Joi.object({
|
|
864
|
+
props: ThemePartnerModel.CustomProps(),
|
|
865
|
+
});
|
|
866
|
+
}
|
|
867
|
+
|
|
868
|
+
/** @returns {CustomProps} */
|
|
869
|
+
static CustomProps() {
|
|
870
|
+
return Joi.object({
|
|
871
|
+
button_add_to_cart_color: Joi.string().allow(""),
|
|
872
|
+
button_add_to_cart_label_color: Joi.string().allow(""),
|
|
873
|
+
button_primary_color: Joi.string().allow(""),
|
|
874
|
+
button_primary_label_color: Joi.string().allow(""),
|
|
875
|
+
button_secondary_color: Joi.string().allow(""),
|
|
876
|
+
button_secondary_label_color: Joi.string().allow(""),
|
|
877
|
+
button_tertiary_color: Joi.string().allow(""),
|
|
878
|
+
button_tertiary_hover_color: Joi.string().allow(""),
|
|
879
|
+
button_tertiary_hover_text_color: Joi.string().allow(""),
|
|
880
|
+
button_tertiary_label_color: Joi.string().allow(""),
|
|
881
|
+
disable_cart: Joi.boolean(),
|
|
882
|
+
footer_bg_color: Joi.string().allow(""),
|
|
883
|
+
footer_border_color: Joi.string().allow(""),
|
|
884
|
+
footer_nav_hover_color: Joi.string().allow(""),
|
|
885
|
+
footer_text_color: Joi.string().allow(""),
|
|
886
|
+
header_bg_color: Joi.string().allow(""),
|
|
887
|
+
header_border_color: Joi.string().allow(""),
|
|
888
|
+
header_cart_notification_bg_color: Joi.string().allow(""),
|
|
889
|
+
header_cart_notification_text_color: Joi.string().allow(""),
|
|
890
|
+
header_icon_color: Joi.string().allow(""),
|
|
891
|
+
header_nav_hover_color: Joi.string().allow(""),
|
|
892
|
+
header_text_color: Joi.string().allow(""),
|
|
893
|
+
is_menu_below_logo: Joi.boolean(),
|
|
894
|
+
menu_position: Joi.string().allow(""),
|
|
895
|
+
text_body_color: Joi.string().allow(""),
|
|
896
|
+
text_discount_color: Joi.string().allow(""),
|
|
897
|
+
text_heading_link_color: Joi.string().allow(""),
|
|
898
|
+
text_price_color: Joi.string().allow(""),
|
|
899
|
+
text_sale_price_color: Joi.string().allow(""),
|
|
900
|
+
text_strikethrough_price_color: Joi.string().allow(""),
|
|
901
|
+
});
|
|
902
|
+
}
|
|
903
|
+
|
|
904
|
+
/** @returns {DividerStrokeHighlightSetting} */
|
|
905
|
+
static DividerStrokeHighlightSetting() {
|
|
906
|
+
return Joi.object({
|
|
907
|
+
divider_strokes: Joi.string().allow(""),
|
|
908
|
+
highlight: Joi.string().allow(""),
|
|
909
|
+
});
|
|
910
|
+
}
|
|
911
|
+
|
|
912
|
+
/** @returns {Documentation} */
|
|
913
|
+
static Documentation() {
|
|
914
|
+
return Joi.object({
|
|
915
|
+
notes: Joi.string().allow(""),
|
|
916
|
+
url: Joi.string().allow(""),
|
|
917
|
+
});
|
|
918
|
+
}
|
|
919
|
+
|
|
920
|
+
/** @returns {ExploreInfo} */
|
|
921
|
+
static ExploreInfo() {
|
|
922
|
+
return Joi.object({
|
|
923
|
+
description: Joi.string().allow(""),
|
|
924
|
+
title: Joi.string().allow(""),
|
|
925
|
+
});
|
|
926
|
+
}
|
|
927
|
+
|
|
928
|
+
/** @returns {Feature} */
|
|
929
|
+
static Feature() {
|
|
930
|
+
return Joi.object({
|
|
931
|
+
category: Joi.string().allow(""),
|
|
932
|
+
list: Joi.array().items(ThemePartnerModel.FeatureItem()),
|
|
933
|
+
});
|
|
934
|
+
}
|
|
935
|
+
|
|
936
|
+
/** @returns {FeatureItem} */
|
|
937
|
+
static FeatureItem() {
|
|
938
|
+
return Joi.object({
|
|
939
|
+
description: Joi.string().allow(""),
|
|
940
|
+
label: Joi.string().allow(""),
|
|
941
|
+
});
|
|
942
|
+
}
|
|
943
|
+
|
|
944
|
+
/** @returns {Font} */
|
|
945
|
+
static Font() {
|
|
946
|
+
return Joi.object({
|
|
947
|
+
family: Joi.string().allow("").required(),
|
|
948
|
+
variants: ThemePartnerModel.FontVariants().required(),
|
|
949
|
+
});
|
|
950
|
+
}
|
|
951
|
+
|
|
952
|
+
/** @returns {FontVariant} */
|
|
953
|
+
static FontVariant() {
|
|
954
|
+
return Joi.object({
|
|
955
|
+
file: Joi.string().allow("").required(),
|
|
956
|
+
name: Joi.string().allow("").required(),
|
|
957
|
+
});
|
|
958
|
+
}
|
|
959
|
+
|
|
960
|
+
/** @returns {FontVariants} */
|
|
961
|
+
static FontVariants() {
|
|
962
|
+
return Joi.object({
|
|
963
|
+
bold: ThemePartnerModel.FontVariant(),
|
|
964
|
+
light: ThemePartnerModel.FontVariant(),
|
|
965
|
+
medium: ThemePartnerModel.FontVariant(),
|
|
966
|
+
regular: ThemePartnerModel.FontVariant(),
|
|
967
|
+
semi_bold: ThemePartnerModel.FontVariant(),
|
|
968
|
+
});
|
|
969
|
+
}
|
|
970
|
+
|
|
971
|
+
/** @returns {FooterSetting} */
|
|
972
|
+
static FooterSetting() {
|
|
973
|
+
return Joi.object({
|
|
974
|
+
footer_background: Joi.string().allow(""),
|
|
975
|
+
footer_body_text: Joi.string().allow(""),
|
|
976
|
+
footer_bottom_background: Joi.string().allow(""),
|
|
977
|
+
footer_heading_text: Joi.string().allow(""),
|
|
978
|
+
footer_icon: Joi.string().allow(""),
|
|
979
|
+
});
|
|
980
|
+
}
|
|
981
|
+
|
|
982
|
+
/** @returns {GeneralSetting} */
|
|
983
|
+
static GeneralSetting() {
|
|
984
|
+
return Joi.object({
|
|
985
|
+
button: ThemePartnerModel.ButtonSetting(),
|
|
986
|
+
footer: ThemePartnerModel.FooterSetting(),
|
|
987
|
+
header: ThemePartnerModel.HeaderSetting(),
|
|
988
|
+
sale_discount: ThemePartnerModel.SaleDiscountSetting(),
|
|
989
|
+
text: ThemePartnerModel.TextSetting(),
|
|
990
|
+
theme: ThemePartnerModel.ThemeSetting(),
|
|
991
|
+
});
|
|
992
|
+
}
|
|
993
|
+
|
|
994
|
+
/** @returns {GlobalConfig} */
|
|
995
|
+
static GlobalConfig() {
|
|
996
|
+
return Joi.object({
|
|
997
|
+
auth: ThemePartnerModel.AuthConfig(),
|
|
998
|
+
palette: ThemePartnerModel.PaletteConfig(),
|
|
999
|
+
statics: ThemePartnerModel.StaticConfig(),
|
|
1000
|
+
});
|
|
1001
|
+
}
|
|
1002
|
+
|
|
1003
|
+
/** @returns {GlobalSchema} */
|
|
1004
|
+
static GlobalSchema() {
|
|
1005
|
+
return Joi.object({
|
|
1006
|
+
props: Joi.array().items(ThemePartnerModel.Prop()),
|
|
1007
|
+
});
|
|
1008
|
+
}
|
|
1009
|
+
|
|
1010
|
+
/** @returns {HeaderSetting} */
|
|
1011
|
+
static HeaderSetting() {
|
|
1012
|
+
return Joi.object({
|
|
1013
|
+
header_background: Joi.string().allow(""),
|
|
1014
|
+
header_icon: Joi.string().allow(""),
|
|
1015
|
+
header_nav: Joi.string().allow(""),
|
|
1016
|
+
});
|
|
1017
|
+
}
|
|
1018
|
+
|
|
1019
|
+
/** @returns {Highlight} */
|
|
1020
|
+
static Highlight() {
|
|
1021
|
+
return Joi.object({
|
|
1022
|
+
description: Joi.string().allow(""),
|
|
1023
|
+
image: Joi.string().allow(""),
|
|
1024
|
+
title: Joi.string().allow(""),
|
|
1025
|
+
});
|
|
1026
|
+
}
|
|
1027
|
+
|
|
1028
|
+
/** @returns {ImagePickerProp} */
|
|
1029
|
+
static ImagePickerProp() {
|
|
1030
|
+
return Joi.object({
|
|
1031
|
+
type: Joi.string().allow(""),
|
|
1032
|
+
value: Joi.string().allow(""),
|
|
1033
|
+
});
|
|
1034
|
+
}
|
|
1035
|
+
|
|
1036
|
+
/** @returns {Images} */
|
|
1037
|
+
static Images() {
|
|
1038
|
+
return Joi.object({
|
|
1039
|
+
desktop: Joi.string().allow(""),
|
|
1040
|
+
mobile: Joi.string().allow(""),
|
|
1041
|
+
});
|
|
1042
|
+
}
|
|
1043
|
+
|
|
1044
|
+
/** @returns {MarketplaceTheme} */
|
|
1045
|
+
static MarketplaceTheme() {
|
|
1046
|
+
return Joi.object({
|
|
1047
|
+
_id: Joi.string().allow(""),
|
|
1048
|
+
carousel: Joi.array().items(ThemePartnerModel.CarouselItem()),
|
|
1049
|
+
catalog_size: ThemePartnerModel.CatalogSize(),
|
|
1050
|
+
comments: ThemePartnerModel.Comments(),
|
|
1051
|
+
contact: ThemePartnerModel.ContactInfo(),
|
|
1052
|
+
created_at: Joi.string().allow(""),
|
|
1053
|
+
description: Joi.string().allow(""),
|
|
1054
|
+
documentation: ThemePartnerModel.Documentation(),
|
|
1055
|
+
explore: ThemePartnerModel.ExploreInfo(),
|
|
1056
|
+
features: Joi.array().items(ThemePartnerModel.Feature()),
|
|
1057
|
+
highlights: Joi.array().items(ThemePartnerModel.Highlight()),
|
|
1058
|
+
images: ThemePartnerModel.MarketplaceThemeImages(),
|
|
1059
|
+
industry: Joi.array().items(Joi.string().allow("")),
|
|
1060
|
+
is_default: Joi.boolean(),
|
|
1061
|
+
is_update: Joi.boolean(),
|
|
1062
|
+
name: Joi.string().allow(""),
|
|
1063
|
+
organization_id: Joi.string().allow(""),
|
|
1064
|
+
payment: ThemePartnerModel.PaymentInfo(),
|
|
1065
|
+
release: ThemePartnerModel.Release(),
|
|
1066
|
+
slug: Joi.string().allow(""),
|
|
1067
|
+
src: Joi.string().allow(""),
|
|
1068
|
+
status: Joi.string().allow(""),
|
|
1069
|
+
step: Joi.number(),
|
|
1070
|
+
tagline: Joi.string().allow(""),
|
|
1071
|
+
template_theme_id: Joi.string().allow(""),
|
|
1072
|
+
updated_at: Joi.string().allow(""),
|
|
1073
|
+
user_id: Joi.string().allow(""),
|
|
1074
|
+
variations: Joi.array().items(ThemePartnerModel.Variation()),
|
|
1075
|
+
});
|
|
1076
|
+
}
|
|
1077
|
+
|
|
1078
|
+
/** @returns {MarketplaceThemeImages} */
|
|
1079
|
+
static MarketplaceThemeImages() {
|
|
1080
|
+
return Joi.object({
|
|
1081
|
+
desktop: Joi.string().allow(""),
|
|
1082
|
+
mobile: Joi.string().allow(""),
|
|
1083
|
+
});
|
|
1084
|
+
}
|
|
1085
|
+
|
|
1086
|
+
/** @returns {MarketplaceThemeSchema} */
|
|
1087
|
+
static MarketplaceThemeSchema() {
|
|
1088
|
+
return Joi.object({
|
|
1089
|
+
page: ThemePartnerModel.PaginationSchema(),
|
|
1090
|
+
themes: Joi.array().items(ThemePartnerModel.MarketplaceTheme()),
|
|
1091
|
+
});
|
|
1092
|
+
}
|
|
1093
|
+
|
|
1094
|
+
/** @returns {Meta} */
|
|
1095
|
+
static Meta() {
|
|
1096
|
+
return Joi.object({
|
|
1097
|
+
description: Joi.string().allow(""),
|
|
1098
|
+
images: ThemePartnerModel.Images(),
|
|
1099
|
+
industry: Joi.array().items(Joi.string().allow("")),
|
|
1100
|
+
name: Joi.string().allow(""),
|
|
1101
|
+
payment: ThemePartnerModel.ThemePayment(),
|
|
1102
|
+
release: ThemePartnerModel.Release(),
|
|
1103
|
+
slug: Joi.string().allow(""),
|
|
1104
|
+
});
|
|
1105
|
+
}
|
|
1106
|
+
|
|
1107
|
+
/** @returns {OverlayPopupSetting} */
|
|
1108
|
+
static OverlayPopupSetting() {
|
|
1109
|
+
return Joi.object({
|
|
1110
|
+
dialog_backgroung: Joi.string().allow(""),
|
|
1111
|
+
overlay: Joi.string().allow(""),
|
|
1112
|
+
});
|
|
1113
|
+
}
|
|
1114
|
+
|
|
1115
|
+
/** @returns {Page} */
|
|
1116
|
+
static Page() {
|
|
1117
|
+
return Joi.object({
|
|
1118
|
+
sections: Joi.array().items(ThemePartnerModel.Section()),
|
|
1119
|
+
value: Joi.string().allow(""),
|
|
1120
|
+
});
|
|
1121
|
+
}
|
|
1122
|
+
|
|
1123
|
+
/** @returns {PaginationSchema} */
|
|
1124
|
+
static PaginationSchema() {
|
|
1125
|
+
return Joi.object({
|
|
1126
|
+
current: Joi.number(),
|
|
1127
|
+
has_next: Joi.boolean(),
|
|
1128
|
+
item_total: Joi.number(),
|
|
1129
|
+
size: Joi.number(),
|
|
1130
|
+
type: Joi.string().allow(""),
|
|
1131
|
+
});
|
|
1132
|
+
}
|
|
1133
|
+
|
|
1134
|
+
/** @returns {PaletteConfig} */
|
|
1135
|
+
static PaletteConfig() {
|
|
1136
|
+
return Joi.object({
|
|
1137
|
+
advance_setting: ThemePartnerModel.AdvanceSetting(),
|
|
1138
|
+
general_setting: ThemePartnerModel.GeneralSetting(),
|
|
1139
|
+
});
|
|
1140
|
+
}
|
|
1141
|
+
|
|
1142
|
+
/** @returns {PaymentInfo} */
|
|
1143
|
+
static PaymentInfo() {
|
|
1144
|
+
return Joi.object({
|
|
1145
|
+
amount: Joi.number(),
|
|
1146
|
+
is_paid: Joi.boolean(),
|
|
1147
|
+
});
|
|
1148
|
+
}
|
|
1149
|
+
|
|
1150
|
+
/** @returns {Predicate} */
|
|
1151
|
+
static Predicate() {
|
|
1152
|
+
return Joi.object({
|
|
1153
|
+
route: ThemePartnerModel.Route(),
|
|
1154
|
+
screen: ThemePartnerModel.Screen(),
|
|
1155
|
+
user: ThemePartnerModel.ThemeUserSchema(),
|
|
1156
|
+
});
|
|
1157
|
+
}
|
|
1158
|
+
|
|
1159
|
+
/** @returns {Preset} */
|
|
1160
|
+
static Preset() {
|
|
1161
|
+
return Joi.object({
|
|
1162
|
+
pages: Joi.array().items(ThemePartnerModel.Page()),
|
|
1163
|
+
});
|
|
1164
|
+
}
|
|
1165
|
+
|
|
1166
|
+
/** @returns {Prop} */
|
|
1167
|
+
static Prop() {
|
|
1168
|
+
return Joi.object({
|
|
1169
|
+
category: Joi.string().allow(""),
|
|
1170
|
+
id: Joi.string().allow(""),
|
|
1171
|
+
info: Joi.string().allow(""),
|
|
1172
|
+
label: Joi.string().allow(""),
|
|
1173
|
+
type: Joi.string().allow(""),
|
|
1174
|
+
});
|
|
1175
|
+
}
|
|
1176
|
+
|
|
1177
|
+
/** @returns {RangeProp} */
|
|
1178
|
+
static RangeProp() {
|
|
1179
|
+
return Joi.object({
|
|
1180
|
+
type: Joi.string().allow(""),
|
|
1181
|
+
value: Joi.number(),
|
|
1182
|
+
});
|
|
1183
|
+
}
|
|
1184
|
+
|
|
1185
|
+
/** @returns {Release} */
|
|
1186
|
+
static Release() {
|
|
1187
|
+
return Joi.object({
|
|
1188
|
+
notes: Joi.string().allow(""),
|
|
1189
|
+
version: Joi.string().allow(""),
|
|
1190
|
+
});
|
|
1191
|
+
}
|
|
1192
|
+
|
|
1193
|
+
/** @returns {Route} */
|
|
1194
|
+
static Route() {
|
|
1195
|
+
return Joi.object({
|
|
1196
|
+
exact_url: Joi.string().allow(""),
|
|
1197
|
+
selected: Joi.string().allow(""),
|
|
1198
|
+
});
|
|
1199
|
+
}
|
|
1200
|
+
|
|
1201
|
+
/** @returns {SaleDiscountSetting} */
|
|
1202
|
+
static SaleDiscountSetting() {
|
|
1203
|
+
return Joi.object({
|
|
1204
|
+
sale_badge_background: Joi.string().allow(""),
|
|
1205
|
+
sale_badge_text: Joi.string().allow(""),
|
|
1206
|
+
sale_discount_text: Joi.string().allow(""),
|
|
1207
|
+
sale_timer: Joi.string().allow(""),
|
|
1208
|
+
});
|
|
1209
|
+
}
|
|
1210
|
+
|
|
1211
|
+
/** @returns {Screen} */
|
|
1212
|
+
static Screen() {
|
|
1213
|
+
return Joi.object({
|
|
1214
|
+
desktop: Joi.boolean(),
|
|
1215
|
+
mobile: Joi.boolean(),
|
|
1216
|
+
tablet: Joi.boolean(),
|
|
1217
|
+
});
|
|
1218
|
+
}
|
|
1219
|
+
|
|
1220
|
+
/** @returns {Section} */
|
|
1221
|
+
static Section() {
|
|
1222
|
+
return Joi.object({
|
|
1223
|
+
blocks: Joi.array().items(ThemePartnerModel.Block()),
|
|
1224
|
+
name: Joi.string().allow(""),
|
|
1225
|
+
predicate: ThemePartnerModel.Predicate(),
|
|
1226
|
+
preset: ThemePartnerModel.SectionPreset(),
|
|
1227
|
+
props: ThemePartnerModel.SectionProps(),
|
|
1228
|
+
});
|
|
1229
|
+
}
|
|
1230
|
+
|
|
1231
|
+
/** @returns {SectionItem} */
|
|
1232
|
+
static SectionItem() {
|
|
1233
|
+
return Joi.object({
|
|
1234
|
+
blocks: Joi.array().items(Joi.any()),
|
|
1235
|
+
label: Joi.string().allow(""),
|
|
1236
|
+
name: Joi.string().allow(""),
|
|
1237
|
+
props: Joi.array().items(Joi.any()),
|
|
1238
|
+
});
|
|
1239
|
+
}
|
|
1240
|
+
|
|
1241
|
+
/** @returns {SectionPreset} */
|
|
1242
|
+
static SectionPreset() {
|
|
1243
|
+
return Joi.object({
|
|
1244
|
+
blocks: Joi.array().items(ThemePartnerModel.Block()),
|
|
1245
|
+
});
|
|
1246
|
+
}
|
|
1247
|
+
|
|
1248
|
+
/** @returns {SectionProps} */
|
|
1249
|
+
static SectionProps() {
|
|
1250
|
+
return Joi.object({
|
|
1251
|
+
autoplay: ThemePartnerModel.CheckboxProp(),
|
|
1252
|
+
item_margin: ThemePartnerModel.TextProp(),
|
|
1253
|
+
slide_interval: ThemePartnerModel.RangeProp(),
|
|
1254
|
+
title: ThemePartnerModel.TextProp(),
|
|
1255
|
+
});
|
|
1256
|
+
}
|
|
1257
|
+
|
|
1258
|
+
/** @returns {StaticConfig} */
|
|
1259
|
+
static StaticConfig() {
|
|
1260
|
+
return Joi.object({
|
|
1261
|
+
props: ThemePartnerModel.StaticProps(),
|
|
1262
|
+
});
|
|
1263
|
+
}
|
|
1264
|
+
|
|
1265
|
+
/** @returns {StaticProps} */
|
|
1266
|
+
static StaticProps() {
|
|
1267
|
+
return Joi.object({
|
|
1268
|
+
auth: ThemePartnerModel.AuthConfig(),
|
|
1269
|
+
colors: ThemePartnerModel.Colors(),
|
|
1270
|
+
});
|
|
1271
|
+
}
|
|
1272
|
+
|
|
1273
|
+
/** @returns {TextProp} */
|
|
1274
|
+
static TextProp() {
|
|
1275
|
+
return Joi.object({
|
|
1276
|
+
type: Joi.string().allow(""),
|
|
1277
|
+
value: Joi.string().allow(""),
|
|
1278
|
+
});
|
|
1279
|
+
}
|
|
1280
|
+
|
|
1281
|
+
/** @returns {TextSetting} */
|
|
1282
|
+
static TextSetting() {
|
|
1283
|
+
return Joi.object({
|
|
1284
|
+
text_body: Joi.string().allow(""),
|
|
1285
|
+
text_heading: Joi.string().allow(""),
|
|
1286
|
+
text_label: Joi.string().allow(""),
|
|
1287
|
+
text_secondary: Joi.string().allow(""),
|
|
1288
|
+
});
|
|
1289
|
+
}
|
|
1290
|
+
|
|
1291
|
+
/** @returns {ThemeConfiguration} */
|
|
1292
|
+
static ThemeConfiguration() {
|
|
1293
|
+
return Joi.object({
|
|
1294
|
+
custom: ThemePartnerModel.CustomConfig(),
|
|
1295
|
+
global_config: ThemePartnerModel.GlobalConfig(),
|
|
1296
|
+
name: Joi.string().allow(""),
|
|
1297
|
+
page: Joi.array().items(Joi.string().allow("")),
|
|
1298
|
+
});
|
|
1299
|
+
}
|
|
1300
|
+
|
|
1301
|
+
/** @returns {ThemePayment} */
|
|
1302
|
+
static ThemePayment() {
|
|
1303
|
+
return Joi.object({
|
|
1304
|
+
amount: Joi.number(),
|
|
1305
|
+
is_paid: Joi.boolean(),
|
|
1306
|
+
});
|
|
1307
|
+
}
|
|
1308
|
+
|
|
1309
|
+
/** @returns {ThemeRejectionReasons} */
|
|
1310
|
+
static ThemeRejectionReasons() {
|
|
1311
|
+
return Joi.object({
|
|
1312
|
+
_id: Joi.string().allow("").required(),
|
|
1313
|
+
admin_id: Joi.string().allow("").required(),
|
|
1314
|
+
created_at: Joi.string().allow(""),
|
|
1315
|
+
message: Joi.string().allow(""),
|
|
1316
|
+
organization_id: Joi.string().allow("").required(),
|
|
1317
|
+
rejection_reasons: Joi.object().pattern(/\S/, Joi.any()).required(),
|
|
1318
|
+
status: Joi.string().allow("").required(),
|
|
1319
|
+
theme_id: Joi.string().allow("").required(),
|
|
1320
|
+
updated_at: Joi.string().allow(""),
|
|
1321
|
+
user_id: Joi.string().allow("").required(),
|
|
1322
|
+
});
|
|
1323
|
+
}
|
|
1324
|
+
|
|
1325
|
+
/** @returns {ThemeSetting} */
|
|
1326
|
+
static ThemeSetting() {
|
|
1327
|
+
return Joi.object({
|
|
1328
|
+
page_background: Joi.string().allow(""),
|
|
1329
|
+
theme_accent: Joi.string().allow(""),
|
|
1330
|
+
});
|
|
1331
|
+
}
|
|
1332
|
+
|
|
1333
|
+
/** @returns {ThemesSchema} */
|
|
1334
|
+
static ThemesSchema() {
|
|
1335
|
+
return Joi.object({
|
|
1336
|
+
_id: Joi.string().allow(""),
|
|
1337
|
+
application_id: Joi.string().allow(""),
|
|
1338
|
+
applied: Joi.boolean(),
|
|
1339
|
+
assets: ThemePartnerModel.Assets(),
|
|
1340
|
+
available_sections: Joi.array().items(ThemePartnerModel.SectionItem()),
|
|
1341
|
+
config: ThemePartnerModel.Config(),
|
|
1342
|
+
created_at: Joi.string().allow(""),
|
|
1343
|
+
font: ThemePartnerModel.Font(),
|
|
1344
|
+
is_private: Joi.boolean(),
|
|
1345
|
+
marketplace_theme_id: Joi.string().allow(""),
|
|
1346
|
+
meta: ThemePartnerModel.Meta(),
|
|
1347
|
+
name: Joi.string().allow(""),
|
|
1348
|
+
styles: Joi.any(),
|
|
1349
|
+
tags: Joi.array().items(Joi.string().allow("")),
|
|
1350
|
+
template_theme_id: Joi.string().allow(""),
|
|
1351
|
+
updated_at: Joi.string().allow(""),
|
|
1352
|
+
version: Joi.string().allow(""),
|
|
1353
|
+
});
|
|
1354
|
+
}
|
|
1355
|
+
|
|
1356
|
+
/** @returns {ThemeUserSchema} */
|
|
1357
|
+
static ThemeUserSchema() {
|
|
1358
|
+
return Joi.object({
|
|
1359
|
+
anonymous: Joi.boolean(),
|
|
1360
|
+
authenticated: Joi.boolean(),
|
|
1361
|
+
});
|
|
1362
|
+
}
|
|
1363
|
+
|
|
1364
|
+
/** @returns {UMDJs} */
|
|
1365
|
+
static UMDJs() {
|
|
1366
|
+
return Joi.object({
|
|
1367
|
+
links: Joi.array().items(Joi.string().allow("")),
|
|
1368
|
+
});
|
|
1369
|
+
}
|
|
1370
|
+
|
|
1371
|
+
/** @returns {UpdateThemeRequestBody} */
|
|
1372
|
+
static UpdateThemeRequestBody() {
|
|
1373
|
+
return Joi.object({
|
|
1374
|
+
config: ThemePartnerModel.Config(),
|
|
1375
|
+
font: ThemePartnerModel.Font(),
|
|
1376
|
+
});
|
|
1377
|
+
}
|
|
1378
|
+
|
|
1379
|
+
/** @returns {UrlProp} */
|
|
1380
|
+
static UrlProp() {
|
|
1381
|
+
return Joi.object({
|
|
1382
|
+
type: Joi.string().allow(""),
|
|
1383
|
+
value: Joi.string().allow(""),
|
|
1384
|
+
});
|
|
1385
|
+
}
|
|
1386
|
+
|
|
1387
|
+
/** @returns {UserAlertsSetting} */
|
|
1388
|
+
static UserAlertsSetting() {
|
|
1389
|
+
return Joi.object({
|
|
1390
|
+
error_background: Joi.string().allow(""),
|
|
1391
|
+
error_text: Joi.string().allow(""),
|
|
1392
|
+
info_background: Joi.string().allow(""),
|
|
1393
|
+
info_text: Joi.string().allow(""),
|
|
1394
|
+
success_background: Joi.string().allow(""),
|
|
1395
|
+
success_text: Joi.string().allow(""),
|
|
1396
|
+
});
|
|
1397
|
+
}
|
|
1398
|
+
|
|
1399
|
+
/** @returns {Variation} */
|
|
1400
|
+
static Variation() {
|
|
1401
|
+
return Joi.object({
|
|
1402
|
+
color: Joi.string().allow(""),
|
|
1403
|
+
demo_url: Joi.string().allow(""),
|
|
1404
|
+
images: ThemePartnerModel.MarketplaceThemeImages(),
|
|
1405
|
+
name: Joi.string().allow(""),
|
|
1406
|
+
});
|
|
1407
|
+
}
|
|
1408
|
+
}
|
|
1409
|
+
module.exports = ThemePartnerModel;
|