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