diff --git a/CHANGELOG.md b/CHANGELOG.md index a24911da..bf3e6ffc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,29 +1,66 @@ -# CHANGE LOG (1.3.10-beta.1) - v1.8.7-prerelease-v1 +# CHANGE LOG (1.3.10-beta.2) - v1.8.7-prerelease-v2 ## Platform Client +### Discount + + + +#### createDiscount + +- ##### What's New + - [Added] property `zoneIds` of schema `CreateUpdateDiscount` in request body + + +#### updateDiscount + +- ##### What's New + - [Added] property `zoneIds` of schema `CreateUpdateDiscount` in request body + + ### Order +#### getShipments + +- ##### What's New + - [Added] property `items[].fulfillingStore.brandStoreTags[]` of schema `ShipmentItemFulFillingStore` in response with status code 200 + +- ##### What's Changed + - [Breaking] [Changed] Type from `string` to `array` of property `items[].fulfillingStore.brandStoreTags` of schema `ShipmentItemFulFillingStore` in response with status code 200 + + #### getShipmentById - ##### What's New - [Added] property `shipments[].bags[].affiliateBagDetails.affiliateMeta` of schema `AffiliateBagsDetails` in response with status code 200 + - [Added] property `shipments[].bags[].bagStatus` of schema `OrderBags` in response with status code 200 #### getOrderById - ##### What's New - [Added] property `shipments[].bags[].affiliateBagDetails.affiliateMeta` of schema `AffiliateBagsDetails` in response with status code 200 + - [Added] property `shipments[].bags[].bagStatus` of schema `OrderBags` in response with status code 200 #### getOrders - ##### What's New - [Added] property `items[].shipments[].bags[].affiliateBagDetails.affiliateMeta` of schema `AffiliateBagsDetails` in response with status code 200 + - [Added] property `items[].shipments[].bags[].bagStatus` of schema `OrderBags` in response with status code 200 + + +#### getApplicationShipments + +- ##### What's New + - [Added] property `items[].fulfillingStore.brandStoreTags[]` of schema `ShipmentItemFulFillingStore` in response with status code 200 + +- ##### What's Changed + - [Breaking] [Changed] Type from `string` to `array` of property `items[].fulfillingStore.brandStoreTags` of schema `ShipmentItemFulFillingStore` in response with status code 200 # CHANGE LOG (1.3.9) - fp-v1.8.6 diff --git a/README.md b/README.md index de38f7d2..afd984bf 100644 --- a/README.md +++ b/README.md @@ -14,7 +14,7 @@ Get started with the Java Development SDK for Fynd Platform com.github.gofynd fdk-client-java - 1.3.10-beta.1 + 1.3.10-beta.2 ``` diff --git a/documentation/application/CART.md b/documentation/application/CART.md index 869cd6d5..14b16dd0 100644 --- a/documentation/application/CART.md +++ b/documentation/application/CART.md @@ -6,6 +6,8 @@ ## Cart Methods Manages Cart, Coupons, Promotions, Checkout + +Default * [getCart](#getcart) * [getCartLastModified](#getcartlastmodified) * [addItems](#additems) @@ -37,9 +39,11 @@ Manages Cart, Coupons, Promotions, Checkout + ## Methods with example and description + ### getCart Fetch all items added to the cart @@ -8597,6 +8601,7 @@ Success. Returns the status of cart checkout. Refer `CartCheckoutResponseSchema` + ### Schemas diff --git a/documentation/application/CATALOG.md b/documentation/application/CATALOG.md index 8aa19ac0..0670176f 100644 --- a/documentation/application/CATALOG.md +++ b/documentation/application/CATALOG.md @@ -6,6 +6,8 @@ ## Catalog Methods Catalog API's allows you to access list of products, prices, seller details, similar features, variants and many more useful features. + +Default * [getProductDetailBySlug](#getproductdetailbyslug) * [getProductSizesBySlug](#getproductsizesbyslug) * [getProductComparisonBySlugs](#getproductcomparisonbyslugs) @@ -39,9 +41,11 @@ Catalog API's allows you to access list of products, prices, seller details, sim + ## Methods with example and description + ### getProductDetailBySlug Get a product @@ -7737,6 +7741,7 @@ Success. Returns a ProductSizeSellerV3 object. Check the example shown below or + ### Schemas diff --git a/documentation/application/COMMON.md b/documentation/application/COMMON.md index 7e541efb..9fe27fe3 100644 --- a/documentation/application/COMMON.md +++ b/documentation/application/COMMON.md @@ -6,14 +6,18 @@ ## Common Methods Application configuration apis + +Default * [searchApplication](#searchapplication) * [getLocations](#getlocations) + ## Methods with example and description + ### searchApplication Search Application @@ -184,6 +188,7 @@ Success + ### Schemas diff --git a/documentation/application/COMMUNICATION.md b/documentation/application/COMMUNICATION.md index 727ad780..2e2ca1f6 100644 --- a/documentation/application/COMMUNICATION.md +++ b/documentation/application/COMMUNICATION.md @@ -6,15 +6,19 @@ ## Communication Methods Manages email, sms, push notifications sent to users + +Default * [getCommunicationConsent](#getcommunicationconsent) * [upsertCommunicationConsent](#upsertcommunicationconsent) * [upsertAppPushtoken](#upsertapppushtoken) + ## Methods with example and description + ### getCommunicationConsent Get communication consent @@ -282,6 +286,7 @@ Success. Check the example shown below or refer `PushtokenRes` for more details. + ### Schemas diff --git a/documentation/application/CONFIGURATION.md b/documentation/application/CONFIGURATION.md index 81c0a020..0faf9282 100644 --- a/documentation/application/CONFIGURATION.md +++ b/documentation/application/CONFIGURATION.md @@ -6,6 +6,8 @@ ## Configuration Methods Application configuration apis + +Default * [getApplication](#getapplication) * [getOwnerInfo](#getownerinfo) * [getBasicDetails](#getbasicdetails) @@ -25,9 +27,11 @@ Application configuration apis + ## Methods with example and description + ### getApplication Get current sales channel details @@ -1383,6 +1387,7 @@ Success. Check the example shown below or refer `AppStaffResponse` for more deta + ### Schemas diff --git a/documentation/application/CONTENT.md b/documentation/application/CONTENT.md index 58a6bb96..a390bd0c 100644 --- a/documentation/application/CONTENT.md +++ b/documentation/application/CONTENT.md @@ -6,6 +6,8 @@ ## Content Methods Content System + +Default * [getAnnouncements](#getannouncements) * [getBlog](#getblog) * [getBlogs](#getblogs) @@ -28,9 +30,11 @@ Content System + ## Methods with example and description + ### getAnnouncements Get live announcements @@ -1770,6 +1774,7 @@ Success. Returns a list of pages along with their details. Check the example sho + ### Schemas diff --git a/documentation/application/FILESTORAGE.md b/documentation/application/FILESTORAGE.md index a1c538fe..fe267909 100644 --- a/documentation/application/FILESTORAGE.md +++ b/documentation/application/FILESTORAGE.md @@ -6,15 +6,19 @@ ## FileStorage Methods File Storage + +Default * [startUpload](#startupload) * [completeUpload](#completeupload) * [signUrls](#signurls) + ## Methods with example and description + ### startUpload Initiates an upload and returns a storage link that is valid for 30 minutes. You can use the storage link to make subsequent upload request with file buffer or blob. @@ -291,6 +295,7 @@ Success + ### Schemas diff --git a/documentation/application/LEAD.md b/documentation/application/LEAD.md index 6e002347..a85061b6 100644 --- a/documentation/application/LEAD.md +++ b/documentation/application/LEAD.md @@ -6,6 +6,8 @@ ## Lead Methods Handles communication between Staff and Users + +Default * [getTicket](#getticket) * [createHistory](#createhistory) * [createTicket](#createticket) @@ -16,9 +18,11 @@ Handles communication between Staff and Users + ## Methods with example and description + ### getTicket Get Ticket with the specific id @@ -1104,6 +1108,7 @@ Success + ### Schemas diff --git a/documentation/application/LOGISTIC.md b/documentation/application/LOGISTIC.md index 621d1d29..e6ac8ccc 100644 --- a/documentation/application/LOGISTIC.md +++ b/documentation/application/LOGISTIC.md @@ -6,6 +6,8 @@ ## Logistic Methods Logistics Promise Engine APIs allows you to configure zone, pincode, TAT, logistics and many more useful features. + +Default * [getPincodeCity](#getpincodecity) * [getTatProduct](#gettatproduct) * [getAllCountries](#getallcountries) @@ -14,9 +16,11 @@ Logistics Promise Engine APIs allows you to configure zone, pincode, TAT, logist + ## Methods with example and description + ### getPincodeCity Get Pincode API @@ -477,6 +481,7 @@ Response status_code + ### Schemas diff --git a/documentation/application/ORDER.md b/documentation/application/ORDER.md index bc6f3ee5..ba3f867d 100644 --- a/documentation/application/ORDER.md +++ b/documentation/application/ORDER.md @@ -6,6 +6,8 @@ ## Order Methods Handles all Application order and shipment api(s) + +Default * [getOrders](#getorders) * [getOrderById](#getorderbyid) * [getPosOrderById](#getposorderbyid) @@ -21,9 +23,11 @@ Handles all Application order and shipment api(s) + ## Methods with example and description + ### getOrders Get all orders @@ -2422,6 +2426,7 @@ Successfully updateShipmentStatus! + ### Schemas diff --git a/documentation/application/PAYMENT.md b/documentation/application/PAYMENT.md index a6d4c83e..ae2f35c8 100644 --- a/documentation/application/PAYMENT.md +++ b/documentation/application/PAYMENT.md @@ -6,6 +6,8 @@ ## Payment Methods Collect payment through many payment gateway i.e Stripe, Razorpay, Juspay etc.into Fynd or Self account + +Default * [getAggregatorsConfig](#getaggregatorsconfig) * [attachCardToCustomer](#attachcardtocustomer) * [getActiveCardAggregator](#getactivecardaggregator) @@ -51,9 +53,11 @@ Collect payment through many payment gateway i.e Stripe, Razorpay, Juspay etc.in + ## Methods with example and description + ### getAggregatorsConfig Get payment gateway keys @@ -3848,6 +3852,7 @@ Success. Returns the status of API. Check the example shown below or refer `Paid + ### Schemas diff --git a/documentation/application/POSCART.md b/documentation/application/POSCART.md index 1a7ef0a5..843bc615 100644 --- a/documentation/application/POSCART.md +++ b/documentation/application/POSCART.md @@ -6,6 +6,8 @@ ## PosCart Methods Cart APIs + +Default * [getCart](#getcart) * [getCartLastModified](#getcartlastmodified) * [addItems](#additems) @@ -36,9 +38,11 @@ Cart APIs + ## Methods with example and description + ### getCart Fetch all items added to the cart @@ -8671,6 +8675,7 @@ Success. Returns a merged or replaced cart as per the valid token. Refer `Shared + ### Schemas diff --git a/documentation/application/REWARDS.md b/documentation/application/REWARDS.md index ea5105a4..e1436c04 100644 --- a/documentation/application/REWARDS.md +++ b/documentation/application/REWARDS.md @@ -6,6 +6,8 @@ ## Rewards Methods Earn and redeem reward points + +Default * [getOfferByName](#getofferbyname) * [catalogueOrder](#catalogueorder) * [getUserPointsHistory](#getuserpointshistory) @@ -16,9 +18,11 @@ Earn and redeem reward points + ## Methods with example and description + ### getOfferByName Get offer by name @@ -623,6 +627,7 @@ Success. Check example below or refer `RedeemReferralCodeResponse` for more deta + ### Schemas diff --git a/documentation/application/SHARE.md b/documentation/application/SHARE.md index 75ea8076..38a5f4dc 100644 --- a/documentation/application/SHARE.md +++ b/documentation/application/SHARE.md @@ -6,6 +6,8 @@ ## Share Methods Short link and QR Code + +Default * [getApplicationQRCode](#getapplicationqrcode) * [getProductQRCodeBySlug](#getproductqrcodebyslug) * [getCollectionQRCodeBySlug](#getcollectionqrcodebyslug) @@ -16,9 +18,11 @@ Short link and QR Code + ## Methods with example and description + ### getApplicationQRCode Create QR Code of an app @@ -517,6 +521,7 @@ Success. Check the example shown below or refer `ShortLinkRes` for more details. + ### Schemas diff --git a/documentation/application/THEME.md b/documentation/application/THEME.md index ed253483..a4c8aeff 100644 --- a/documentation/application/THEME.md +++ b/documentation/application/THEME.md @@ -6,6 +6,8 @@ ## Theme Methods Responsible for Storefront + +Default * [getAllPages](#getallpages) * [getPage](#getpage) * [getAppliedTheme](#getappliedtheme) @@ -13,9 +15,11 @@ Responsible for Storefront + ## Methods with example and description + ### getAllPages Get all pages of a theme @@ -4867,6 +4871,7 @@ Success. Returns a JSON object of the theme. Check the example shown below or re + ### Schemas diff --git a/documentation/application/USER.md b/documentation/application/USER.md index 07b1306d..3fec4026 100644 --- a/documentation/application/USER.md +++ b/documentation/application/USER.md @@ -6,6 +6,8 @@ ## User Methods Authentication Service + +Default * [loginWithFacebook](#loginwithfacebook) * [loginWithGoogle](#loginwithgoogle) * [loginWithGoogleAndroid](#loginwithgoogleandroid) @@ -49,9 +51,11 @@ Authentication Service + ## Methods with example and description + ### loginWithFacebook Login or Register using Facebook @@ -3261,6 +3265,7 @@ Request body must contain an email ID. Refer `EditEmailRequestSchema` for more d + ### Schemas diff --git a/documentation/partner/FILESTORAGE.md b/documentation/partner/FILESTORAGE.md new file mode 100644 index 00000000..b7a432e6 --- /dev/null +++ b/documentation/partner/FILESTORAGE.md @@ -0,0 +1,453 @@ + + + + +##### [Back to Partner docs](./README.md) + +## FileStorage Methods +This service provides functionality to manage assets and generate pdf. You can upload the assets, get the cdn link for the assets, proxy the assets and many more things. + + +Default +* [startUpload](#startupload) +* [completeUpload](#completeupload) +* [browse](#browse) + + + + +## Methods with example and description + + + +### startUpload +This operation initiates upload and returns storage link which is valid for 30 Minutes. You can use that storage link to make subsequent upload request with file buffer or blob. + + + + +```java +partnerClient.filestorage.startUpload( namespace, organizationId, body body) { + //use response +} +``` + + + +| Argument | Type | Required | Description | +| --------- | ----- | -------- | ----------- | +| namespace | String | yes | Segregation of different types of files(products, orders, logistics etc), Required for validating the data of the file being uploaded, decides where exactly the file will be stored inside the storage bucket. | +| organizationId | Integer | yes | | +| body | [StartRequest](#StartRequest) | yes | Request body | + + +Uploads an arbitrarily sized buffer or blob. + +It has three Major Steps: +* Start +* Upload +* Complete + +### Start +Initiates the assets upload using `startUpload`. +It returns the storage link in response. + +### Upload +Use the storage link to upload a file (Buffer or Blob) to the File Storage. +Make a `PUT` request on storage link received from `startUpload` api with file (Buffer or Blob) as a request body. + +### Complete +After successfully upload, call `completeUpload` api to complete the upload process. +This operation will return the url for the uploaded file. + + +*Returned Response:* + + + + +[StartResponse](#StartResponse) + +Success. Returns a response containing relaving and absolute_url of storage service + + + + +
+  Examples: + + +
+  success + +```json +{ + "value": { + "file_name": "shirt.png", + "file_path": "/path/qwertyuiop-shirt.png", + "content_type": "image/png", + "method": "PUT", + "namespace": "products-item-images", + "operation": "putObject", + "tags": [ + "clothing", + "shirt" + ], + "size": 9999, + "cdn": { + "url": "https://xxx.xxx.xxx/products/pictures/free/original/qwertyuiop-shirt.png", + "absolute_url": "https://xxx.xxx.xxx/products/pictures/free/original/qwertyuiop-shirt.png", + "relative_url": "products/pictures/free/original/qwertyuiop-shirt.png" + }, + "upload": { + "expiry": 5000, + "url": "https://xxx.xxx.xxx/products/pictures/free/original/qwertyuiop-shirt.png?AWSAccessKeyId=xxx&Content-Type=image%2Fpng&Expires=5000&Signature=xxx&x-amz-acl=public-read" + } + } +} +``` +
+ +
+ + + + + + + + + +--- + + +### completeUpload +This will complete the upload process. After successfully uploading file, you can call this operation to complete the upload process. + + + + +```java +partnerClient.filestorage.completeUpload( namespace, organizationId, body body) { + //use response +} +``` + + + +| Argument | Type | Required | Description | +| --------- | ----- | -------- | ----------- | +| namespace | String | yes | Segregation of different types of files(products, orders, logistics etc), Required for validating the data of the file being uploaded, decides where exactly the file will be stored inside the storage bucket. | +| organizationId | Integer | yes | | +| body | [StartResponse](#StartResponse) | yes | Request body | + + +Uploads an arbitrarily sized buffer or blob. + +It has three Major Steps: +* Start +* Upload +* Complete + +### Start +Initiates the assets upload using `startUpload`. +It returns the storage link in response. + +### Upload +Use the storage link to upload a file (Buffer or Blob) to the File Storage. +Make a `PUT` request on storage link received from `startUpload` api with file (Buffer or Blob) as a request body. + +### Complete +After successfully upload, call `completeUpload` api to complete the upload process. +This operation will return the url for the uploaded file. + + +*Returned Response:* + + + + +[CompleteResponse](#CompleteResponse) + +Success + + + + +
+  Examples: + + +
+  success + +```json +{ + "value": { + "success": true, + "_id": "xxxxxxxxxxxxxxxxxxxxxx", + "file_name": "shirt.png", + "file_path": "/path/qwertyuiop-shirt.png", + "content_type": "image/png", + "namespace": "products-item-images", + "operation": "putObject", + "tags": [ + "clothing", + "shirt" + ], + "size": 9999, + "cdn": { + "url": "https://xxx.xxx.xxx/products/pictures/free/original/qwertyuiop-shirt.png", + "absolute_url": "https://xxx.xxx.xxx/products/pictures/free/original/qwertyuiop-shirt.png", + "relative_url": "products/pictures/free/original/qwertyuiop-shirt.png" + }, + "upload": { + "expiry": 5000, + "url": "https://xxx.xxx.xxx/products/pictures/free/original/qwertyuiop-shirt.png?AWSAccessKeyId=xxx&Content-Type=image%2Fpng&Expires=5000&Signature=xxx&x-amz-acl=public-read" + }, + "created_on": "2020-02-03T09:50:04.240Z", + "modified_on": "2020-02-03T09:50:04.240Z" + } +} +``` +
+ +
+ + + + + + + + + +--- + + +### browse +Browse Files + + + + +```java +partnerClient.filestorage.browse( namespace, organizationId, page, limit) { + //use response +} +``` + + + +| Argument | Type | Required | Description | +| --------- | ----- | -------- | ----------- | +| namespace | String | yes | Segregation of different types of files(products, orders, logistics etc), Required for validating the data of the file being uploaded, decides where exactly the file will be stored inside the storage bucket. | +| organizationId | Integer | yes | | +| applicationId | String | yes | | +| companyId | Integer | yes | | +| page | Integer? | no | page no | +| limit | Integer? | no | Limit | + + + +Browse Files + +*Returned Response:* + + + + +[Object](#Object) + +Success + + + + +
+  Examples: + + +
+  success + +```json +{ + "value": { + "items": [ + { + "_id": "64e1e6fe0153e1a6d3e101f4", + "file_name": "logo.png", + "file_path": "/brands/pictures/square-logo/original/uY0P_ZtIz-logo.png", + "success": true, + "namespace": "brand-square-logo", + "content_type": "image/png", + "size": 3298, + "operation": "putObject", + "tags": [], + "cdn": { + "url": "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/brands/pictures/square-logo/original/uY0P_ZtIz-logo.png", + "absolute_url": "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/brands/pictures/square-logo/original/uY0P_ZtIz-logo.png", + "relative_url": "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/brands/pictures/square-logo/original/uY0P_ZtIz-logo.png" + }, + "upload": { + "url": "https://fynd-staging-assets.s3-accelerate.amazonaws.com/addsale/brands/pictures/square-logo/original/uY0P_ZtIz-logo.png?Content-Type=image%2Fpng&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=%2F20230820%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20230820T101213Z&X-Amz-Expires=1800&X-Amz-Signature=04915b14aec15712abdea3c340d5dc43729e7c982a4994650488c0150c22b0ae&X-Amz-SignedHeaders=host%3Bx-amz-acl&x-amz-acl=public-read", + "expiry": 1800 + }, + "created_by": { + "username": "fp_sdet_gofynd_com_65071" + }, + "company_id": 6520, + "bucket_key": "addsale/brands/pictures/square-logo/original/uY0P_ZtIz-logo.png", + "createdAt": "2023-08-20T10:12:14.118Z", + "updatedAt": "2023-08-20T10:12:14.118Z", + "__v": 0 + } + ], + "page": { + "current": 1, + "has_previous": false, + "has_next": true, + "item_total": 481, + "type": "number" + } + } +} +``` +
+ +
+ + + + + + + + + +--- + + + + +### Schemas + + + + #### [CDN](#CDN) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | url | String | no | | + | absoluteUrl | String | no | | + | relativeUrl | String | no | | + +--- + + + + + #### [Upload](#Upload) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | expiry | Integer | no | | + | url | String | no | | + +--- + + + + + #### [StartResponse](#StartResponse) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | fileName | String | no | | + | filePath | String | no | | + | contentType | String | no | | + | method | String? | yes | | + | namespace | String | no | | + | operation | String | no | | + | size | Integer | no | | + | upload | [Upload](#Upload) | no | | + | cdn | [CDN](#CDN) | no | | + | tags | ArrayList? | yes | | + +--- + + + + + #### [Params](#Params) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | subpath | String? | yes | The subpath for the file. | + +--- + + + + + #### [StartRequest](#StartRequest) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | fileName | String | no | | + | contentType | String | no | | + | size | Integer | no | | + | tags | ArrayList? | yes | | + | params | [Params](#Params)? | yes | | + +--- + + + + + #### [CreatedBy](#CreatedBy) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | username | String? | yes | | + +--- + + + + + #### [CompleteResponse](#CompleteResponse) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | id | String | no | | + | fileName | String | no | | + | filePath | String | no | | + | contentType | String | no | | + | namespace | String | no | | + | operation | String | no | | + | size | Integer | no | | + | upload | [Upload](#Upload) | no | | + | cdn | [CDN](#CDN) | no | | + | success | Boolean | no | | + | tags | ArrayList? | yes | | + | createdOn | String | no | | + | modifiedOn | String | no | | + | createdBy | [CreatedBy](#CreatedBy)? | yes | | + +--- + + + + + #### [FailedResponse](#FailedResponse) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | message | String | no | | + +--- + + + diff --git a/documentation/partner/README.md b/documentation/partner/README.md new file mode 100644 index 00000000..14b4b0d0 --- /dev/null +++ b/documentation/partner/README.md @@ -0,0 +1,8 @@ +##### [Back to home](../../README.md) + +# FDK Partner Front API Documentaion + + +* [FileStorage](FILESTORAGE.md) - This service provides functionality to manage assets and generate pdf. You can upload the assets, get the cdn link for the assets, proxy the assets and many more things. + +* [Theme](THEME.md) - Responsible for partner theme submission \ No newline at end of file diff --git a/documentation/partner/THEME.md b/documentation/partner/THEME.md new file mode 100644 index 00000000..90a0771c --- /dev/null +++ b/documentation/partner/THEME.md @@ -0,0 +1,16930 @@ + + + + +##### [Back to Partner docs](./README.md) + +## Theme Methods +Responsible for partner theme submission + +Default +* [getAllPages](#getallpages) +* [createPage](#createpage) +* [updateMultiplePages](#updatemultiplepages) +* [getPage](#getpage) +* [updatePage](#updatepage) +* [deletePage](#deletepage) +* [getApplicationThemes](#getapplicationthemes) +* [getThemeById](#getthemebyid) +* [updateTheme](#updatetheme) +* [deleteTheme](#deletetheme) +* [getOrganizationThemes](#getorganizationthemes) +* [getOrganizationThemeDetails](#getorganizationthemedetails) +* [updateDraftTheme](#updatedrafttheme) +* [submitOrganizationTheme](#submitorganizationtheme) +* [deleteOrganizationTheme](#deleteorganizationtheme) +* [getLatestVersionOfThemeBySlug](#getlatestversionofthemebyslug) +* [createNewThemeInOrganization](#createnewthemeinorganization) +* [getThemeRejectionReasons](#getthemerejectionreasons) +* [getThemeVersions](#getthemeversions) + + + + +## Methods with example and description + + + +### getAllPages +Get all pages of a theme + + + + +```java +partnerClient.theme.getAllPages( themeId, organizationId) { + //use response +} +``` + + + +| Argument | Type | Required | Description | +| --------- | ----- | -------- | ----------- | +| companyId | Integer | yes | Company ID | +| applicationId | String | yes | Application ID | +| themeId | String | yes | ID of the theme to be retrieved | +| organizationId | String | yes | Organization ID | + + + +Use this API to retrieve all the available pages of a theme by its ID. + +*Returned Response:* + + + + +[AllAvailablePageSchema](#AllAvailablePageSchema) + +Success. Returns an array all the pages of the theme. Refer `AllAvailablePageSchema` for more details. + + + + +
+  Examples: + + +
+  All pages + +```json +{ + "value": { + "pages": [ + { + "path": "products", + "type": "system", + "seo": { + "title": "", + "description": "", + "_id": "60210832d7e981639e13f6b2" + }, + "_id": "60ab5ca6d572fed64294eb0e", + "value": "product-listing", + "text": "Product Listing", + "theme": "5fb3ee4194a5181feeeba8e5", + "sections_meta": [], + "__v": 9 + }, + { + "path": "collection", + "type": "system", + "seo": { + "title": "", + "description": "", + "_id": "60210832d7e981fc5d13f6b9" + }, + "_id": "60ab5ca6d572fed64294eaf9", + "text": "Collection Listing", + "value": "collection-listing", + "theme": "5fb3ee4194a5181feeeba8e5", + "sections_meta": [], + "__v": 9 + }, + { + "path": "compare", + "type": "system", + "seo": { + "title": "", + "description": "", + "_id": "60210832d7e981cbca13f6b1" + }, + "_id": "60ab5ca6d572fed64294eb0b", + "value": "compare-products", + "text": "Compare Products", + "theme": "5fb3ee4194a5181feeeba8e5", + "sections_meta": [], + "__v": 9 + }, + { + "path": "cart/bag", + "type": "system", + "seo": { + "title": "", + "description": "", + "_id": "60210832d7e9812fdf13f6ae" + }, + "_id": "60ab5ca6d572fed64294eb02", + "value": "cart-landing", + "text": "Cart Landing", + "theme": "5fb3ee4194a5181feeeba8e5", + "sections_meta": [], + "__v": 9 + }, + { + "path": "product", + "type": "system", + "seo": { + "title": "", + "description": "", + "_id": "60210832d7e9815c9713f6ab" + }, + "_id": "60ab5ca6d572fed64294eaf6", + "text": "Product Description", + "value": "product-description", + "theme": "5fb3ee4194a5181feeeba8e5", + "sections_meta": [], + "__v": 9 + }, + { + "path": "product/:slug/reviews", + "type": "system", + "seo": { + "title": "", + "description": "", + "_id": "60ab5ca6d572fed64294eb24" + }, + "_id": "60ab5ca6d572fed64294eb25", + "sections_meta": [], + "value": "product-reviews", + "text": "Product Reviews", + "theme": "5fb3ee4194a5181feeeba8e5", + "__v": 9 + }, + { + "path": "blog", + "type": "system", + "seo": { + "title": "", + "description": "", + "_id": "60ab5ca6d572fed64294eb22" + }, + "_id": "60ab5ca6d572fed64294eb23", + "sections_meta": [], + "value": "blog", + "text": "Blog", + "theme": "5fb3ee4194a5181feeeba8e5", + "__v": 9 + }, + { + "path": "sections/cookie", + "type": "sections", + "seo": { + "title": "", + "description": "", + "_id": "60210832d7e9814fed13f6b5" + }, + "_id": "60ab5ca6d572fed64294eb17", + "text": "cookie", + "value": "cookie", + "theme": "5fb3ee4194a5181feeeba8e5", + "sections_meta": [], + "__v": 9 + }, + { + "path": "sections/vivek", + "type": "sections", + "seo": { + "title": "", + "description": "", + "_id": "60210832d7e981b32713f6b6" + }, + "_id": "60ab5ca6d572fed64294eb1a", + "text": "vivek", + "value": "vivek", + "theme": "5fb3ee4194a5181feeeba8e5", + "sections_meta": [], + "__v": 9 + }, + { + "path": "about-us", + "type": "system", + "seo": { + "title": "", + "description": "", + "_id": "60ab5ca6d572fed64294eb28" + }, + "_id": "60ab5ca6d572fed64294eb29", + "sections_meta": [], + "value": "about-us", + "text": "About Us", + "theme": "5fb3ee4194a5181feeeba8e5", + "__v": 9 + }, + { + "path": "wishlist", + "type": "system", + "seo": { + "title": "", + "description": "", + "_id": "60210832d7e981dd2d13f6b3" + }, + "_id": "60ab5ca6d572fed64294eb11", + "value": "wishlist", + "text": "Wishlist", + "theme": "5fb3ee4194a5181feeeba8e5", + "sections_meta": [], + "__v": 9 + }, + { + "path": "product/:slug/add-review", + "type": "system", + "seo": { + "title": "", + "description": "", + "_id": "60ab5ca6d572fed64294eb26" + }, + "_id": "60ab5ca6d572fed64294eb27", + "sections_meta": [], + "value": "add-product-review", + "text": "Add Product Review", + "theme": "5fb3ee4194a5181feeeba8e5", + "__v": 9 + }, + { + "path": "brands", + "type": "system", + "seo": { + "title": "", + "description": "", + "_id": "60210832d7e981161a13f6ad" + }, + "_id": "60ab5ca6d572fed64294eaff", + "value": "brands", + "text": "Brands", + "theme": "5fb3ee4194a5181feeeba8e5", + "sections_meta": [], + "__v": 9 + }, + { + "path": "", + "type": "system", + "seo": { + "title": "", + "description": "", + "_id": "60210832d7e98115b013f6ac" + }, + "_id": "60ab5ca6d572fed64294eafc", + "value": "home", + "text": "Home", + "theme": "5fb3ee4194a5181feeeba8e5", + "sections_meta": [], + "__v": 9 + }, + { + "path": "collections", + "type": "system", + "seo": { + "title": "", + "description": "", + "_id": "60210832d7e981ad0b13f6b0" + }, + "_id": "60ab5ca6d572fed64294eb08", + "value": "collections", + "text": "Collections", + "theme": "5fb3ee4194a5181feeeba8e5", + "sections_meta": [], + "__v": 9 + }, + { + "path": "categories", + "type": "system", + "seo": { + "title": "", + "description": "", + "_id": "60210832d7e981872c13f6af" + }, + "_id": "60ab5ca6d572fed64294eb05", + "value": "categories", + "text": "Categories", + "theme": "5fb3ee4194a5181feeeba8e5", + "sections_meta": [], + "__v": 9 + }, + { + "path": "sections/test", + "type": "sections", + "seo": { + "title": "", + "description": "", + "_id": "60210832d7e98177f713f6b4" + }, + "_id": "60ab5ca6d572fed64294eb14", + "text": "Test", + "value": "test", + "theme": "5fb3ee4194a5181feeeba8e5", + "sections_meta": [], + "__v": 9 + }, + { + "path": "sections/vinit", + "type": "sections", + "seo": { + "title": "", + "description": "", + "_id": "60210832d7e98170b813f6b8" + }, + "_id": "60ab5ca6d572fed64294eb20", + "text": "vinit", + "value": "vinit", + "theme": "5fb3ee4194a5181feeeba8e5", + "sections_meta": [], + "__v": 9 + }, + { + "path": "sections/maggie", + "type": "sections", + "seo": { + "title": "", + "description": "", + "_id": "60210832d7e981469613f6b7" + }, + "_id": "60ab5ca6d572fed64294eb1d", + "text": "maggie", + "value": "maggie", + "theme": "5fb3ee4194a5181feeeba8e5", + "sections_meta": [], + "__v": 9 + } + ] + } +} +``` +
+ +
+ + + + + + + + + +--- + + +### createPage +Create a page + + + + +```java +partnerClient.theme.createPage( themeId, organizationId, body body) { + //use response +} +``` + + + +| Argument | Type | Required | Description | +| --------- | ----- | -------- | ----------- | +| companyId | Integer | yes | Company ID | +| applicationId | String | yes | Application ID | +| themeId | String | yes | ID of the theme | +| organizationId | String | yes | Organization ID | +| body | [AvailablePageSchema](#AvailablePageSchema) | yes | Request body | + + +Use this API to create a page for a theme by its ID. + +*Returned Response:* + + + + +[AvailablePageSchema](#AvailablePageSchema) + +Success. Returns the page of the theme. Refer `AvailablePageSchema` for more details. + + + + +
+  Examples: + + +
+  page + +```json +{ + "value": { + "path": "", + "type": "system", + "seo": { + "title": "", + "description": "", + "_id": "60210832d7e98115b013f6ac" + }, + "props": [], + "_id": "60ab5ca6d572fed64294eafc", + "sections": [ + { + "blocks": [], + "predicate": { + "screen": { + "mobile": false, + "desktop": false, + "tablet": false + }, + "user": { + "authenticated": true, + "anonymous": true + }, + "route": { + "selected": "none", + "exactURL": "", + "query": { + "utm": "facebook" + } + } + }, + "name": "customHtml", + "props": { + "code": { + "type": "code", + "value": "

" + } + } + }, + { + "blocks": [], + "predicate": { + "screen": { + "mobile": true, + "desktop": true, + "tablet": true + }, + "user": { + "authenticated": true, + "anonymous": true + }, + "route": { + "selected": "none", + "exactURL": "", + "query": { + "udm": "vivek" + } + } + }, + "name": "brands-listing", + "props": { + "title": { + "type": "text", + "value": "Popular rrrrr" + }, + "header": { + "type": "header" + }, + "brand_type": { + "value": "all", + "type": "radio" + }, + "department": { + "type": "department" + }, + "item_count": { + "value": 5, + "type": "range" + }, + "layout": { + "value": "horizontal", + "type": "select" + }, + "view_all": { + "value": false, + "type": "checkbox" + } + } + }, + { + "blocks": [ + { + "type": "product", + "name": "Product", + "props": { + "product": { + "type": "product" + } + } + }, + { + "type": "product", + "name": "Product", + "props": { + "product": { + "type": "product" + } + } + }, + { + "type": "product", + "name": "Product", + "props": { + "product": { + "type": "product" + } + } + }, + { + "type": "product", + "name": "Product", + "props": { + "product": { + "type": "product" + } + } + } + ], + "predicate": { + "screen": { + "mobile": true, + "desktop": true, + "tablet": true + }, + "user": { + "authenticated": false, + "anonymous": true + }, + "route": { + "selected": "none", + "exactURL": "" + } + }, + "name": "featuredProducts", + "props": { + "heading": { + "value": "Featured Products", + "type": "text" + }, + "item_count": { + "type": "range", + "value": 4 + }, + "full_width": { + "value": false, + "type": "checkbox" + } + }, + "preset": { + "blocks": [ + { + "name": "Product" + }, + { + "name": "Product" + }, + { + "name": "Product" + }, + { + "name": "Product" + } + ] + } + }, + { + "blocks": [], + "predicate": { + "screen": { + "mobile": true, + "desktop": true, + "tablet": true + }, + "user": { + "authenticated": true, + "anonymous": true + }, + "route": { + "selected": "none", + "exactURL": "", + "query": { + "": "" + } + } + }, + "name": "categoryListPage", + "props": { + "heading": { + "type": "text", + "value": "Explore Categories" + }, + "layout": { + "type": "select", + "value": "grid" + }, + "item_count": { + "value": 5, + "type": "range" + }, + "view_all": { + "value": false, + "type": "checkbox" + } + } + }, + { + "blocks": [], + "predicate": { + "screen": { + "mobile": true, + "desktop": true, + "tablet": true + }, + "user": { + "authenticated": true, + "anonymous": true + }, + "route": { + "selected": "none", + "exactURL": "", + "query": { + "": "" + } + } + }, + "name": "heroBanner", + "props": { + "ctaLink": { + "type": "url", + "value": "https://uniket.hostx0.de/about-us" + } + } + }, + { + "blocks": [], + "predicate": { + "screen": { + "mobile": true, + "desktop": true, + "tablet": true + }, + "user": { + "authenticated": true, + "anonymous": true + }, + "route": { + "selected": "none", + "exactURL": "", + "query": { + "": "" + } + } + }, + "name": "imageBanner", + "props": { + "image": { + "value": "", + "type": "image_picker" + }, + "full_width": { + "value": false, + "type": "checkbox" + }, + "overlayLayout": { + "value": "left", + "type": "select" + }, + "overlayImage": { + "value": "", + "type": "image_picker" + }, + "text": { + "value": "", + "type": "text" + }, + "text_color": { + "value": "#000", + "type": "color" + }, + "ctaLink": { + "value": "", + "type": "url" + }, + "ctaText": { + "value": "", + "type": "text" + }, + "layout": { + "type": "select", + "value": "full" + }, + "height": { + "type": "select", + "value": "h-auto" + } + } + }, + { + "blocks": [], + "predicate": { + "screen": { + "mobile": true, + "desktop": true, + "tablet": true + }, + "user": { + "authenticated": true, + "anonymous": true + }, + "route": { + "selected": "none", + "exactURL": "" + } + }, + "name": "brands-listing", + "props": { + "title": { + "type": "text", + "value": "asdfasdf" + }, + "header": { + "type": "header" + }, + "brand_type": { + "value": "all", + "type": "radio" + }, + "department": { + "type": "department" + }, + "item_count": { + "value": 5, + "type": "range" + }, + "layout": { + "value": "horizontal", + "type": "select" + }, + "view_all": { + "value": false, + "type": "checkbox" + } + } + } + ], + "value": "home", + "text": "Home", + "theme": "5fb3ee4194a5181feeeba8e5", + "sections_meta": [], + "__v": 9 + } +} +``` +
+ +
+ + + + + + + + + +--- + + +### updateMultiplePages +Update multiple pages of a theme + + + + +```java +partnerClient.theme.updateMultiplePages( themeId, organizationId, body body) { + //use response +} +``` + + + +| Argument | Type | Required | Description | +| --------- | ----- | -------- | ----------- | +| companyId | Integer | yes | Company ID | +| applicationId | String | yes | Application ID | +| themeId | String | yes | ID of the theme to be retrieved | +| organizationId | String | yes | Organization ID | +| body | [AllAvailablePageSchema](#AllAvailablePageSchema) | yes | Request body | + + +Use this API to update multiple pages of a theme by its ID. + +*Returned Response:* + + + + +[AllAvailablePageSchema](#AllAvailablePageSchema) + +Success. Returns an array all the pages of the theme. Refer `AllAvailablePageSchema` for more details. + + + + +
+  Examples: + + +
+  All pages + +```json +{ + "value": { + "pages": [ + { + "path": "products", + "type": "system", + "seo": { + "title": "", + "description": "", + "_id": "60210832d7e981639e13f6b2" + }, + "_id": "60ab5ca6d572fed64294eb0e", + "value": "product-listing", + "text": "Product Listing", + "theme": "5fb3ee4194a5181feeeba8e5", + "sections_meta": [], + "__v": 9 + }, + { + "path": "collection", + "type": "system", + "seo": { + "title": "", + "description": "", + "_id": "60210832d7e981fc5d13f6b9" + }, + "_id": "60ab5ca6d572fed64294eaf9", + "text": "Collection Listing", + "value": "collection-listing", + "theme": "5fb3ee4194a5181feeeba8e5", + "sections_meta": [], + "__v": 9 + }, + { + "path": "compare", + "type": "system", + "seo": { + "title": "", + "description": "", + "_id": "60210832d7e981cbca13f6b1" + }, + "_id": "60ab5ca6d572fed64294eb0b", + "value": "compare-products", + "text": "Compare Products", + "theme": "5fb3ee4194a5181feeeba8e5", + "sections_meta": [], + "__v": 9 + }, + { + "path": "cart/bag", + "type": "system", + "seo": { + "title": "", + "description": "", + "_id": "60210832d7e9812fdf13f6ae" + }, + "_id": "60ab5ca6d572fed64294eb02", + "value": "cart-landing", + "text": "Cart Landing", + "theme": "5fb3ee4194a5181feeeba8e5", + "sections_meta": [], + "__v": 9 + }, + { + "path": "product", + "type": "system", + "seo": { + "title": "", + "description": "", + "_id": "60210832d7e9815c9713f6ab" + }, + "_id": "60ab5ca6d572fed64294eaf6", + "text": "Product Description", + "value": "product-description", + "theme": "5fb3ee4194a5181feeeba8e5", + "sections_meta": [], + "__v": 9 + }, + { + "path": "product/:slug/reviews", + "type": "system", + "seo": { + "title": "", + "description": "", + "_id": "60ab5ca6d572fed64294eb24" + }, + "_id": "60ab5ca6d572fed64294eb25", + "sections_meta": [], + "value": "product-reviews", + "text": "Product Reviews", + "theme": "5fb3ee4194a5181feeeba8e5", + "__v": 9 + }, + { + "path": "blog", + "type": "system", + "seo": { + "title": "", + "description": "", + "_id": "60ab5ca6d572fed64294eb22" + }, + "_id": "60ab5ca6d572fed64294eb23", + "sections_meta": [], + "value": "blog", + "text": "Blog", + "theme": "5fb3ee4194a5181feeeba8e5", + "__v": 9 + }, + { + "path": "sections/cookie", + "type": "sections", + "seo": { + "title": "", + "description": "", + "_id": "60210832d7e9814fed13f6b5" + }, + "_id": "60ab5ca6d572fed64294eb17", + "text": "cookie", + "value": "cookie", + "theme": "5fb3ee4194a5181feeeba8e5", + "sections_meta": [], + "__v": 9 + }, + { + "path": "sections/vivek", + "type": "sections", + "seo": { + "title": "", + "description": "", + "_id": "60210832d7e981b32713f6b6" + }, + "_id": "60ab5ca6d572fed64294eb1a", + "text": "vivek", + "value": "vivek", + "theme": "5fb3ee4194a5181feeeba8e5", + "sections_meta": [], + "__v": 9 + }, + { + "path": "about-us", + "type": "system", + "seo": { + "title": "", + "description": "", + "_id": "60ab5ca6d572fed64294eb28" + }, + "_id": "60ab5ca6d572fed64294eb29", + "sections_meta": [], + "value": "about-us", + "text": "About Us", + "theme": "5fb3ee4194a5181feeeba8e5", + "__v": 9 + }, + { + "path": "wishlist", + "type": "system", + "seo": { + "title": "", + "description": "", + "_id": "60210832d7e981dd2d13f6b3" + }, + "_id": "60ab5ca6d572fed64294eb11", + "value": "wishlist", + "text": "Wishlist", + "theme": "5fb3ee4194a5181feeeba8e5", + "sections_meta": [], + "__v": 9 + }, + { + "path": "product/:slug/add-review", + "type": "system", + "seo": { + "title": "", + "description": "", + "_id": "60ab5ca6d572fed64294eb26" + }, + "_id": "60ab5ca6d572fed64294eb27", + "sections_meta": [], + "value": "add-product-review", + "text": "Add Product Review", + "theme": "5fb3ee4194a5181feeeba8e5", + "__v": 9 + }, + { + "path": "brands", + "type": "system", + "seo": { + "title": "", + "description": "", + "_id": "60210832d7e981161a13f6ad" + }, + "_id": "60ab5ca6d572fed64294eaff", + "value": "brands", + "text": "Brands", + "theme": "5fb3ee4194a5181feeeba8e5", + "sections_meta": [], + "__v": 9 + }, + { + "path": "", + "type": "system", + "seo": { + "title": "", + "description": "", + "_id": "60210832d7e98115b013f6ac" + }, + "_id": "60ab5ca6d572fed64294eafc", + "value": "home", + "text": "Home", + "theme": "5fb3ee4194a5181feeeba8e5", + "sections_meta": [], + "__v": 9 + }, + { + "path": "collections", + "type": "system", + "seo": { + "title": "", + "description": "", + "_id": "60210832d7e981ad0b13f6b0" + }, + "_id": "60ab5ca6d572fed64294eb08", + "value": "collections", + "text": "Collections", + "theme": "5fb3ee4194a5181feeeba8e5", + "sections_meta": [], + "__v": 9 + }, + { + "path": "categories", + "type": "system", + "seo": { + "title": "", + "description": "", + "_id": "60210832d7e981872c13f6af" + }, + "_id": "60ab5ca6d572fed64294eb05", + "value": "categories", + "text": "Categories", + "theme": "5fb3ee4194a5181feeeba8e5", + "sections_meta": [], + "__v": 9 + }, + { + "path": "sections/test", + "type": "sections", + "seo": { + "title": "", + "description": "", + "_id": "60210832d7e98177f713f6b4" + }, + "_id": "60ab5ca6d572fed64294eb14", + "text": "Test", + "value": "test", + "theme": "5fb3ee4194a5181feeeba8e5", + "sections_meta": [], + "__v": 9 + }, + { + "path": "sections/vinit", + "type": "sections", + "seo": { + "title": "", + "description": "", + "_id": "60210832d7e98170b813f6b8" + }, + "_id": "60ab5ca6d572fed64294eb20", + "text": "vinit", + "value": "vinit", + "theme": "5fb3ee4194a5181feeeba8e5", + "sections_meta": [], + "__v": 9 + }, + { + "path": "sections/maggie", + "type": "sections", + "seo": { + "title": "", + "description": "", + "_id": "60210832d7e981469613f6b7" + }, + "_id": "60ab5ca6d572fed64294eb1d", + "text": "maggie", + "value": "maggie", + "theme": "5fb3ee4194a5181feeeba8e5", + "sections_meta": [], + "__v": 9 + } + ] + } +} +``` +
+ +
+ + + + + + + + + +--- + + +### getPage +Get page of a theme + + + + +```java +partnerClient.theme.getPage( themeId, pageValue, organizationId) { + //use response +} +``` + + + +| Argument | Type | Required | Description | +| --------- | ----- | -------- | ----------- | +| companyId | Integer | yes | Company ID | +| applicationId | String | yes | Application ID | +| themeId | String | yes | ID of the theme to be retrieved | +| pageValue | String | yes | Value of the page to be retrieved | +| organizationId | String | yes | Organization ID | + + + +Use this API to retrieve a page of a theme. + +*Returned Response:* + + + + +[AvailablePageSchema](#AvailablePageSchema) + +Success. Returns an object of the page. Refer `AvailablePageSchema` for more details. + + + + +
+  Examples: + + +
+  Home page + +```json +{ + "value": { + "path": "", + "type": "system", + "seo": { + "title": "", + "description": "", + "_id": "60210832d7e98115b013f6ac" + }, + "props": [], + "_id": "60ab5ca6d572fed64294eafc", + "sections": [ + { + "blocks": [], + "predicate": { + "screen": { + "mobile": false, + "desktop": false, + "tablet": false + }, + "user": { + "authenticated": true, + "anonymous": true + }, + "route": { + "selected": "none", + "exactURL": "", + "query": { + "utm": "facebook" + } + } + }, + "name": "customHtml", + "props": { + "code": { + "type": "code", + "value": "

" + } + } + }, + { + "blocks": [], + "predicate": { + "screen": { + "mobile": true, + "desktop": true, + "tablet": true + }, + "user": { + "authenticated": true, + "anonymous": true + }, + "route": { + "selected": "none", + "exactURL": "", + "query": { + "udm": "vivek" + } + } + }, + "name": "brands-listing", + "props": { + "title": { + "type": "text", + "value": "Popular rrrrr" + }, + "header": { + "type": "header" + }, + "brand_type": { + "value": "all", + "type": "radio" + }, + "department": { + "type": "department" + }, + "item_count": { + "value": 5, + "type": "range" + }, + "layout": { + "value": "horizontal", + "type": "select" + }, + "view_all": { + "value": false, + "type": "checkbox" + } + } + }, + { + "blocks": [ + { + "type": "product", + "name": "Product", + "props": { + "product": { + "type": "product" + } + } + }, + { + "type": "product", + "name": "Product", + "props": { + "product": { + "type": "product" + } + } + }, + { + "type": "product", + "name": "Product", + "props": { + "product": { + "type": "product" + } + } + }, + { + "type": "product", + "name": "Product", + "props": { + "product": { + "type": "product" + } + } + } + ], + "predicate": { + "screen": { + "mobile": true, + "desktop": true, + "tablet": true + }, + "user": { + "authenticated": false, + "anonymous": true + }, + "route": { + "selected": "none", + "exactURL": "" + } + }, + "name": "featuredProducts", + "props": { + "heading": { + "value": "Featured Products", + "type": "text" + }, + "item_count": { + "type": "range", + "value": 4 + }, + "full_width": { + "value": false, + "type": "checkbox" + } + }, + "preset": { + "blocks": [ + { + "name": "Product" + }, + { + "name": "Product" + }, + { + "name": "Product" + }, + { + "name": "Product" + } + ] + } + }, + { + "blocks": [], + "predicate": { + "screen": { + "mobile": true, + "desktop": true, + "tablet": true + }, + "user": { + "authenticated": true, + "anonymous": true + }, + "route": { + "selected": "none", + "exactURL": "", + "query": { + "": "" + } + } + }, + "name": "categoryListPage", + "props": { + "heading": { + "type": "text", + "value": "Explore Categories" + }, + "layout": { + "type": "select", + "value": "grid" + }, + "item_count": { + "value": 5, + "type": "range" + }, + "view_all": { + "value": false, + "type": "checkbox" + } + } + }, + { + "blocks": [], + "predicate": { + "screen": { + "mobile": true, + "desktop": true, + "tablet": true + }, + "user": { + "authenticated": true, + "anonymous": true + }, + "route": { + "selected": "none", + "exactURL": "", + "query": { + "": "" + } + } + }, + "name": "heroBanner", + "props": { + "ctaLink": { + "type": "url", + "value": "https://uniket.hostx0.de/about-us" + } + } + }, + { + "blocks": [], + "predicate": { + "screen": { + "mobile": true, + "desktop": true, + "tablet": true + }, + "user": { + "authenticated": true, + "anonymous": true + }, + "route": { + "selected": "none", + "exactURL": "", + "query": { + "": "" + } + } + }, + "name": "imageBanner", + "props": { + "image": { + "value": "", + "type": "image_picker" + }, + "full_width": { + "value": false, + "type": "checkbox" + }, + "overlayLayout": { + "value": "left", + "type": "select" + }, + "overlayImage": { + "value": "", + "type": "image_picker" + }, + "text": { + "value": "", + "type": "text" + }, + "text_color": { + "value": "#000", + "type": "color" + }, + "ctaLink": { + "value": "", + "type": "url" + }, + "ctaText": { + "value": "", + "type": "text" + }, + "layout": { + "type": "select", + "value": "full" + }, + "height": { + "type": "select", + "value": "h-auto" + } + } + }, + { + "blocks": [], + "predicate": { + "screen": { + "mobile": true, + "desktop": true, + "tablet": true + }, + "user": { + "authenticated": true, + "anonymous": true + }, + "route": { + "selected": "none", + "exactURL": "" + } + }, + "name": "brands-listing", + "props": { + "title": { + "type": "text", + "value": "asdfasdf" + }, + "header": { + "type": "header" + }, + "brand_type": { + "value": "all", + "type": "radio" + }, + "department": { + "type": "department" + }, + "item_count": { + "value": 5, + "type": "range" + }, + "layout": { + "value": "horizontal", + "type": "select" + }, + "view_all": { + "value": false, + "type": "checkbox" + } + } + } + ], + "value": "home", + "text": "Home", + "theme": "5fb3ee4194a5181feeeba8e5", + "sections_meta": [], + "__v": 9 + } +} +``` +
+ +
+ + + + + + + + + +--- + + +### updatePage +Updates a page + + + + +```java +partnerClient.theme.updatePage( themeId, pageValue, organizationId, body body) { + //use response +} +``` + + + +| Argument | Type | Required | Description | +| --------- | ----- | -------- | ----------- | +| companyId | Integer | yes | Company ID | +| applicationId | String | yes | Application ID | +| themeId | String | yes | ID of the theme | +| pageValue | String | yes | Value of the page to be updated | +| organizationId | String | yes | Organization ID | +| body | [AvailablePageSchema](#AvailablePageSchema) | yes | Request body | + + +Use this API to update a page for a theme by its ID. + +*Returned Response:* + + + + +[AvailablePageSchema](#AvailablePageSchema) + +Success. Returns a the page of the theme. Refer `AvailablePageSchema` for more details. + + + + +
+  Examples: + + +
+  page + +```json +{ + "value": { + "path": "", + "type": "system", + "seo": { + "title": "", + "description": "", + "_id": "60210832d7e98115b013f6ac" + }, + "props": [], + "_id": "60ab5ca6d572fed64294eafc", + "sections": [ + { + "blocks": [], + "predicate": { + "screen": { + "mobile": false, + "desktop": false, + "tablet": false + }, + "user": { + "authenticated": true, + "anonymous": true + }, + "route": { + "selected": "none", + "exactURL": "", + "query": { + "utm": "facebook" + } + } + }, + "name": "customHtml", + "props": { + "code": { + "type": "code", + "value": "

" + } + } + }, + { + "blocks": [], + "predicate": { + "screen": { + "mobile": true, + "desktop": true, + "tablet": true + }, + "user": { + "authenticated": true, + "anonymous": true + }, + "route": { + "selected": "none", + "exactURL": "", + "query": { + "udm": "vivek" + } + } + }, + "name": "brands-listing", + "props": { + "title": { + "type": "text", + "value": "Popular rrrrr" + }, + "header": { + "type": "header" + }, + "brand_type": { + "value": "all", + "type": "radio" + }, + "department": { + "type": "department" + }, + "item_count": { + "value": 5, + "type": "range" + }, + "layout": { + "value": "horizontal", + "type": "select" + }, + "view_all": { + "value": false, + "type": "checkbox" + } + } + }, + { + "blocks": [ + { + "type": "product", + "name": "Product", + "props": { + "product": { + "type": "product" + } + } + }, + { + "type": "product", + "name": "Product", + "props": { + "product": { + "type": "product" + } + } + }, + { + "type": "product", + "name": "Product", + "props": { + "product": { + "type": "product" + } + } + }, + { + "type": "product", + "name": "Product", + "props": { + "product": { + "type": "product" + } + } + } + ], + "predicate": { + "screen": { + "mobile": true, + "desktop": true, + "tablet": true + }, + "user": { + "authenticated": false, + "anonymous": true + }, + "route": { + "selected": "none", + "exactURL": "" + } + }, + "name": "featuredProducts", + "props": { + "heading": { + "value": "Featured Products", + "type": "text" + }, + "item_count": { + "type": "range", + "value": 4 + }, + "full_width": { + "value": false, + "type": "checkbox" + } + }, + "preset": { + "blocks": [ + { + "name": "Product" + }, + { + "name": "Product" + }, + { + "name": "Product" + }, + { + "name": "Product" + } + ] + } + }, + { + "blocks": [], + "predicate": { + "screen": { + "mobile": true, + "desktop": true, + "tablet": true + }, + "user": { + "authenticated": true, + "anonymous": true + }, + "route": { + "selected": "none", + "exactURL": "", + "query": { + "": "" + } + } + }, + "name": "categoryListPage", + "props": { + "heading": { + "type": "text", + "value": "Explore Categories" + }, + "layout": { + "type": "select", + "value": "grid" + }, + "item_count": { + "value": 5, + "type": "range" + }, + "view_all": { + "value": false, + "type": "checkbox" + } + } + }, + { + "blocks": [], + "predicate": { + "screen": { + "mobile": true, + "desktop": true, + "tablet": true + }, + "user": { + "authenticated": true, + "anonymous": true + }, + "route": { + "selected": "none", + "exactURL": "", + "query": { + "": "" + } + } + }, + "name": "heroBanner", + "props": { + "ctaLink": { + "type": "url", + "value": "https://uniket.hostx0.de/about-us" + } + } + }, + { + "blocks": [], + "predicate": { + "screen": { + "mobile": true, + "desktop": true, + "tablet": true + }, + "user": { + "authenticated": true, + "anonymous": true + }, + "route": { + "selected": "none", + "exactURL": "", + "query": { + "": "" + } + } + }, + "name": "imageBanner", + "props": { + "image": { + "value": "", + "type": "image_picker" + }, + "full_width": { + "value": false, + "type": "checkbox" + }, + "overlayLayout": { + "value": "left", + "type": "select" + }, + "overlayImage": { + "value": "", + "type": "image_picker" + }, + "text": { + "value": "", + "type": "text" + }, + "text_color": { + "value": "#000", + "type": "color" + }, + "ctaLink": { + "value": "", + "type": "url" + }, + "ctaText": { + "value": "", + "type": "text" + }, + "layout": { + "type": "select", + "value": "full" + }, + "height": { + "type": "select", + "value": "h-auto" + } + } + }, + { + "blocks": [], + "predicate": { + "screen": { + "mobile": true, + "desktop": true, + "tablet": true + }, + "user": { + "authenticated": true, + "anonymous": true + }, + "route": { + "selected": "none", + "exactURL": "" + } + }, + "name": "brands-listing", + "props": { + "title": { + "type": "text", + "value": "asdfasdf" + }, + "header": { + "type": "header" + }, + "brand_type": { + "value": "all", + "type": "radio" + }, + "department": { + "type": "department" + }, + "item_count": { + "value": 5, + "type": "range" + }, + "layout": { + "value": "horizontal", + "type": "select" + }, + "view_all": { + "value": false, + "type": "checkbox" + } + } + } + ], + "value": "home", + "text": "Home", + "theme": "5fb3ee4194a5181feeeba8e5", + "sections_meta": [], + "__v": 9 + } +} +``` +
+ +
+ + + + + + + + + +--- + + +### deletePage +Deletes a page + + + + +```java +partnerClient.theme.deletePage( themeId, pageValue, organizationId) { + //use response +} +``` + + + +| Argument | Type | Required | Description | +| --------- | ----- | -------- | ----------- | +| companyId | Integer | yes | Company ID | +| applicationId | String | yes | Application ID | +| themeId | String | yes | ID of the theme | +| pageValue | String | yes | Value of the page to be updated | +| organizationId | String | yes | Organization ID | + + + +Use this API to delete a page for a theme by its ID and page_value. + +*Returned Response:* + + + + +[AvailablePageSchema](#AvailablePageSchema) + +Success. Returns a the page of the theme. Refer `AvailablePageSchema` for more details. + + + + +
+  Examples: + + +
+  page + +```json +{ + "value": { + "path": "", + "type": "system", + "seo": { + "title": "", + "description": "", + "_id": "60210832d7e98115b013f6ac" + }, + "props": [], + "_id": "60ab5ca6d572fed64294eafc", + "sections": [ + { + "blocks": [], + "predicate": { + "screen": { + "mobile": false, + "desktop": false, + "tablet": false + }, + "user": { + "authenticated": true, + "anonymous": true + }, + "route": { + "selected": "none", + "exactURL": "", + "query": { + "utm": "facebook" + } + } + }, + "name": "customHtml", + "props": { + "code": { + "type": "code", + "value": "

" + } + } + }, + { + "blocks": [], + "predicate": { + "screen": { + "mobile": true, + "desktop": true, + "tablet": true + }, + "user": { + "authenticated": true, + "anonymous": true + }, + "route": { + "selected": "none", + "exactURL": "", + "query": { + "udm": "vivek" + } + } + }, + "name": "brands-listing", + "props": { + "title": { + "type": "text", + "value": "Popular rrrrr" + }, + "header": { + "type": "header" + }, + "brand_type": { + "value": "all", + "type": "radio" + }, + "department": { + "type": "department" + }, + "item_count": { + "value": 5, + "type": "range" + }, + "layout": { + "value": "horizontal", + "type": "select" + }, + "view_all": { + "value": false, + "type": "checkbox" + } + } + }, + { + "blocks": [ + { + "type": "product", + "name": "Product", + "props": { + "product": { + "type": "product" + } + } + }, + { + "type": "product", + "name": "Product", + "props": { + "product": { + "type": "product" + } + } + }, + { + "type": "product", + "name": "Product", + "props": { + "product": { + "type": "product" + } + } + }, + { + "type": "product", + "name": "Product", + "props": { + "product": { + "type": "product" + } + } + } + ], + "predicate": { + "screen": { + "mobile": true, + "desktop": true, + "tablet": true + }, + "user": { + "authenticated": false, + "anonymous": true + }, + "route": { + "selected": "none", + "exactURL": "" + } + }, + "name": "featuredProducts", + "props": { + "heading": { + "value": "Featured Products", + "type": "text" + }, + "item_count": { + "type": "range", + "value": 4 + }, + "full_width": { + "value": false, + "type": "checkbox" + } + }, + "preset": { + "blocks": [ + { + "name": "Product" + }, + { + "name": "Product" + }, + { + "name": "Product" + }, + { + "name": "Product" + } + ] + } + }, + { + "blocks": [], + "predicate": { + "screen": { + "mobile": true, + "desktop": true, + "tablet": true + }, + "user": { + "authenticated": true, + "anonymous": true + }, + "route": { + "selected": "none", + "exactURL": "", + "query": { + "": "" + } + } + }, + "name": "categoryListPage", + "props": { + "heading": { + "type": "text", + "value": "Explore Categories" + }, + "layout": { + "type": "select", + "value": "grid" + }, + "item_count": { + "value": 5, + "type": "range" + }, + "view_all": { + "value": false, + "type": "checkbox" + } + } + }, + { + "blocks": [], + "predicate": { + "screen": { + "mobile": true, + "desktop": true, + "tablet": true + }, + "user": { + "authenticated": true, + "anonymous": true + }, + "route": { + "selected": "none", + "exactURL": "", + "query": { + "": "" + } + } + }, + "name": "heroBanner", + "props": { + "ctaLink": { + "type": "url", + "value": "https://uniket.hostx0.de/about-us" + } + } + }, + { + "blocks": [], + "predicate": { + "screen": { + "mobile": true, + "desktop": true, + "tablet": true + }, + "user": { + "authenticated": true, + "anonymous": true + }, + "route": { + "selected": "none", + "exactURL": "", + "query": { + "": "" + } + } + }, + "name": "imageBanner", + "props": { + "image": { + "value": "", + "type": "image_picker" + }, + "full_width": { + "value": false, + "type": "checkbox" + }, + "overlayLayout": { + "value": "left", + "type": "select" + }, + "overlayImage": { + "value": "", + "type": "image_picker" + }, + "text": { + "value": "", + "type": "text" + }, + "text_color": { + "value": "#000", + "type": "color" + }, + "ctaLink": { + "value": "", + "type": "url" + }, + "ctaText": { + "value": "", + "type": "text" + }, + "layout": { + "type": "select", + "value": "full" + }, + "height": { + "type": "select", + "value": "h-auto" + } + } + }, + { + "blocks": [], + "predicate": { + "screen": { + "mobile": true, + "desktop": true, + "tablet": true + }, + "user": { + "authenticated": true, + "anonymous": true + }, + "route": { + "selected": "none", + "exactURL": "" + } + }, + "name": "brands-listing", + "props": { + "title": { + "type": "text", + "value": "asdfasdf" + }, + "header": { + "type": "header" + }, + "brand_type": { + "value": "all", + "type": "radio" + }, + "department": { + "type": "department" + }, + "item_count": { + "value": 5, + "type": "range" + }, + "layout": { + "value": "horizontal", + "type": "select" + }, + "view_all": { + "value": false, + "type": "checkbox" + } + } + } + ], + "value": "home", + "text": "Home", + "theme": "5fb3ee4194a5181feeeba8e5", + "sections_meta": [], + "__v": 9 + } +} +``` +
+ +
+ + + + + + + + + +--- + + +### getApplicationThemes +Get all the themes for a specific application + + + + +```java +partnerClient.theme.getApplicationThemes( organizationId) { + //use response +} +``` + + + +| Argument | Type | Required | Description | +| --------- | ----- | -------- | ----------- | +| companyId | Integer | yes | The ID of the company | +| applicationId | String | yes | The ID of the application | +| organizationId | String | yes | Organization ID | + + + +Use this API to get list of theme + +*Returned Response:* + + + + +[List](#List) + +The list of themes for the application was fetched successfully. + + + + +
+  Examples: + + +
+  example1 + +```json +{ + "value": [ + { + "_id": "64be4423bc7b28003211322e", + "applied": false, + "is_private": false, + "tags": [], + "application_id": "6487ea376e1442284917c44e", + "marketplace_theme_id": "64be1f4cceb549012e93d5f4", + "meta": { + "payment": { + "is_paid": false, + "amount": 0 + }, + "description": "Indulge in the epitome of luxury with our expertly crafted theme, showcasing a high-end aesthetic that exudes elegance. Designed with meticulous attention to detail, our features are tailored to elevate your products and amplify your brand identity.", + "industry": [ + "Arts and crafts", + "Baby and kids", + "Books, music, and video" + ], + "release": { + "notes": "

Emerge release notes. Fyndx1 theme submission.

" + }, + "images": { + "desktop": "https://cdn.pixelbin.io/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/McHjwol_h-images_desktop.webp", + "mobile": "https://cdn.pixelbin.io/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/bq6gXrmVE-images_mobile.webp" + }, + "slug": "emerge" + }, + "name": "Emerge", + "template_theme_id": "64be1fdc2139f66b3ca2e94d", + "version": "1.0.153", + "styles": {}, + "created_at": "2023-07-24T09:28:03.845Z", + "updated_at": "2023-07-31T12:14:13.097Z", + "theme_type": "vue2", + "assets": { + "umd_js": { + "links": [ + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64b0eb01c35f990518880a82/theme/assets/yf7ijNZKa_themeBundle.umd.min.8.js", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64b0eb01c35f990518880a82/theme/assets/yf7ijNZKa_themeBundle.umd.min.cart.js", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64b0eb01c35f990518880a82/theme/assets/yf7ijNZKa_themeBundle.umd.min.extras.js", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64b0eb01c35f990518880a82/theme/assets/yf7ijNZKa_themeBundle.umd.min.products-listing.js", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64b0eb01c35f990518880a82/theme/assets/yf7ijNZKa_themeBundle.umd.min.products.js", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64b0eb01c35f990518880a82/theme/assets/yf7ijNZKa_themeBundle.umd.min.profile.js", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64b0eb01c35f990518880a82/theme/assets/yf7ijNZKa_themeBundle.umd.min.vendors_products-listing.js", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64b0eb01c35f990518880a82/theme/assets/yf7ijNZKa_themeBundle.umd.min.vendors_products.js", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64b0eb01c35f990518880a82/theme/assets/yf7ijNZKa_themeBundle.umd.min.js" + ], + "link": "" + }, + "common_js": { + "link": "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64b0eb01c35f990518880a82/theme/assets/yf7ijNZKa_themeBundle.common.js" + }, + "css": { + "links": [ + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64b0eb01c35f990518880a82/theme/assets/yf7ijNZKa_cart.1b038cd83e502f2d58bc.css", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64b0eb01c35f990518880a82/theme/assets/yf7ijNZKa_extras.f8a9789ae6a06b0bd503.css", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64b0eb01c35f990518880a82/theme/assets/yf7ijNZKa_products-listing.1d639747568baee211ba.css", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64b0eb01c35f990518880a82/theme/assets/yf7ijNZKa_products.c1f151d12b3f704fe028.css", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64b0eb01c35f990518880a82/theme/assets/yf7ijNZKa_profile.c9e6a92612e4b423dbd7.css", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64b0eb01c35f990518880a82/theme/assets/yf7ijNZKa_themeBundle.css", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64b0eb01c35f990518880a82/theme/assets/yf7ijNZKa_vendors_products-listing.c8fe85761d60286348e3.css" + ], + "link": "" + } + }, + "font": { + "variants": { + "light": { + "name": "300", + "file": "https://fonts.gstatic.com/s/poppins/v9/pxiByp8kv8JHgFVrLDz8V1tvFP-KUEg.ttf" + }, + "regular": { + "name": "regular", + "file": "https://fonts.gstatic.com/s/poppins/v9/pxiEyp8kv8JHgFVrFJDUc1NECPY.ttf" + }, + "medium": { + "name": "500", + "file": "https://fonts.gstatic.com/s/poppins/v9/pxiByp8kv8JHgFVrLGT9V1tvFP-KUEg.ttf" + }, + "semi_bold": { + "name": "600", + "file": "https://fonts.gstatic.com/s/poppins/v9/pxiByp8kv8JHgFVrLEj6V1tvFP-KUEg.ttf" + }, + "bold": { + "name": "700", + "file": "https://fonts.gstatic.com/s/poppins/v9/pxiByp8kv8JHgFVrLCz7V1tvFP-KUEg.ttf" + } + }, + "family": "Poppins" + }, + "config": { + "current": "Default", + "list": [ + { + "name": "Default", + "global_config": { + "static": { + "props": { + "colors": { + "primary_color": "#000000", + "secondary_color": "#000000", + "accent_color": "#000000", + "link_color": "#4499FF", + "button_secondary_color": "#000000", + "bg_color": "#F8F8F8" + }, + "auth": { + "show_header_auth": false, + "show_footer_auth": false + }, + "palette": { + "general_setting": { + "theme": { + "page_background": "#F3F3ED", + "theme_accent": "#E1D0C8" + }, + "text": { + "text_heading": "#26201A", + "text_body": "#3C3131", + "text_label": "#7D7676", + "text_secondary": "#9C9C9C" + }, + "button": { + "button_primary": "#4E3F09", + "button_secondary": "#FFFFFF", + "button_link": "#B1655B" + }, + "sale_discount": { + "sale_badge_background": "#FFFFFF", + "sale_badge_text": "#1C958F", + "sale_discount_text": "#1C958F", + "sale_timer": "#994449" + }, + "header": { + "header_background": "#F3F3ED", + "header_nav": "#261A1A", + "header_icon": "#261A1A" + }, + "footer": { + "footer_background": "#2C231E", + "footer_bottom_background": "#231812", + "footer_heading_text": "#FFFFFF", + "footer_body_text": "#FFFFFF", + "footer_icon": "#FFFFFF" + } + }, + "advance_setting": { + "overlay_popup": { + "dialog_backgroung": "#FFFFFF", + "overlay": "#14130E" + }, + "divider_stroke_highlight": { + "divider_strokes": "#D4D1D1", + "highlight": "#EDECE9" + }, + "user_alerts": { + "success_background": "#C2DBC9", + "success_text": "#1C958F", + "error_background": "#E6D5D5", + "error_text": "#B24141", + "info_background": "#EBD3BC", + "info_text": "#D28F51" + } + } + }, + "extension": { + "header_top": [], + "header_bottom": [], + "footer_top": [], + "footer_bottom": [] + } + } + }, + "custom": { + "props": { + "header_bg_color": "#ffffff", + "header_text_color": "#000000", + "header_border_color": "#e1e1e1", + "header_icon_color": "#000000", + "header_cart_notification_bg_color": "#e8a76c", + "header_cart_notification_text_color": "#ffffff", + "header_nav_hover_color": "#999999", + "button_primary_color": "#ffffff", + "button_primary_label_color": "#000000", + "button_add_to_cart_color": "#000000", + "button_add_to_cart_label_color": "#ffffff", + "button_secondary_color": "#000000", + "button_secondary_label_color": "#ffffff", + "button_tertiary_color": "#000000", + "button_tertiary_label_color": "#000000", + "button_tertiary_hover_color": "#000000", + "button_tertiary_hover_text_color": "#ffffff", + "text_heading_link_color": "#000000", + "text_body_color": "#000000", + "text_price_color": "#000000", + "text_sale_price_color": "#fb406b", + "text_strikethrough_price_color": "#9b9b9b", + "text_discount_color": "#ee478d", + "footer_bg_color": "#ffffff", + "footer_text_color": "#999999", + "footer_border_color": "#e1e1e1", + "footer_nav_hover_color": "#000000", + "disable_cart": false, + "is_menu_below_logo": false, + "menu_position": "left" + } + } + }, + "page": [] + }, + { + "name": "Dark", + "global_config": { + "static": { + "props": { + "colors": { + "primary_color": "#000000", + "secondary_color": "#000000", + "accent_color": "#000000", + "link_color": "#4499FF", + "button_secondary_color": "#000000", + "bg_color": "#F8F8F8" + }, + "auth": { + "show_header_auth": false, + "show_footer_auth": false + }, + "palette": { + "general_setting": { + "theme": { + "page_background": "#F3F3ED", + "theme_accent": "#E1D0C8" + }, + "text": { + "text_heading": "#26201A", + "text_body": "#3C3131", + "text_label": "#7D7676", + "text_secondary": "#9C9C9C" + }, + "button": { + "button_primary": "#4E3F09", + "button_secondary": "#FFFFFF", + "button_link": "#B1655B" + }, + "sale_discount": { + "sale_badge_background": "#FFFFFF", + "sale_badge_text": "#1C958F", + "sale_discount_text": "#1C958F", + "sale_timer": "#994449" + }, + "header": { + "header_background": "#F3F3ED", + "header_nav": "#261A1A", + "header_icon": "#261A1A" + }, + "footer": { + "footer_background": "#2C231E", + "footer_bottom_background": "#231812", + "footer_heading_text": "#FFFFFF", + "footer_body_text": "#FFFFFF", + "footer_icon": "#FFFFFF" + } + }, + "advance_setting": { + "overlay_popup": { + "dialog_backgroung": "#FFFFFF", + "overlay": "#14130E" + }, + "divider_stroke_highlight": { + "divider_strokes": "#D4D1D1", + "highlight": "#EDECE9" + }, + "user_alerts": { + "success_background": "#C2DBC9", + "success_text": "#1C958F", + "error_background": "#E6D5D5", + "error_text": "#B24141", + "info_background": "#EBD3BC", + "info_text": "#D28F51" + } + } + }, + "extension": { + "header_top": [], + "header_bottom": [], + "footer_top": [], + "footer_bottom": [] + } + } + }, + "custom": { + "props": { + "header_bg_color": "#2e3032", + "header_text_color": "#ffffff", + "header_border_color": "#FFFFFF", + "header_icon_color": "#ffffff", + "header_cart_notification_bg_color": "#FFFFFF", + "header_cart_notification_text_color": "#2e3032", + "header_nav_hover_color": "#000000", + "button_primary_color": "#000000", + "button_primary_label_color": "#ffffff", + "button_add_to_cart_color": "#000000", + "button_add_to_cart_label_color": "#ffffff", + "button_secondary_color": "#000000", + "button_secondary_label_color": "#ffffff", + "button_tertiary_color": "#000000", + "button_tertiary_label_color": "#000000", + "button_tertiary_hover_color": "#000000", + "button_tertiary_hover_text_color": "#ffffff", + "text_heading_link_color": "#000000", + "text_body_color": "#000000", + "text_price_color": "#000000", + "text_sale_price_color": "#fb406b", + "text_strikethrough_price_color": "#9b9b9b", + "text_discount_color": "#ee478d", + "footer_bg_color": "#2e3032", + "footer_text_color": "#ffffff", + "footer_border_color": "#FFFFFF", + "footer_nav_hover_color": "#ffffff" + } + } + }, + "page": [] + }, + { + "name": "Blue", + "global_config": { + "static": { + "props": { + "colors": { + "primary_color": "#000000", + "secondary_color": "#000000", + "accent_color": "#000000", + "link_color": "#4499FF", + "button_secondary_color": "#000000", + "bg_color": "#F8F8F8" + }, + "auth": { + "show_header_auth": false, + "show_footer_auth": false + }, + "palette": { + "general_setting": { + "theme": { + "page_background": "#F3F3ED", + "theme_accent": "#E1D0C8" + }, + "text": { + "text_heading": "#26201A", + "text_body": "#3C3131", + "text_label": "#7D7676", + "text_secondary": "#9C9C9C" + }, + "button": { + "button_primary": "#4E3F09", + "button_secondary": "#FFFFFF", + "button_link": "#B1655B" + }, + "sale_discount": { + "sale_badge_background": "#FFFFFF", + "sale_badge_text": "#1C958F", + "sale_discount_text": "#1C958F", + "sale_timer": "#994449" + }, + "header": { + "header_background": "#F3F3ED", + "header_nav": "#261A1A", + "header_icon": "#261A1A" + }, + "footer": { + "footer_background": "#2C231E", + "footer_bottom_background": "#231812", + "footer_heading_text": "#FFFFFF", + "footer_body_text": "#FFFFFF", + "footer_icon": "#FFFFFF" + } + }, + "advance_setting": { + "overlay_popup": { + "dialog_backgroung": "#FFFFFF", + "overlay": "#14130E" + }, + "divider_stroke_highlight": { + "divider_strokes": "#D4D1D1", + "highlight": "#EDECE9" + }, + "user_alerts": { + "success_background": "#C2DBC9", + "success_text": "#1C958F", + "error_background": "#E6D5D5", + "error_text": "#B24141", + "info_background": "#EBD3BC", + "info_text": "#D28F51" + } + } + }, + "extension": { + "header_top": [], + "header_bottom": [], + "footer_top": [], + "footer_bottom": [] + } + } + }, + "custom": { + "props": { + "header_bg_color": "#7f9ed0", + "header_text_color": "#FFFFFF", + "header_border_color": "#FFFFFF", + "header_icon_color": "#FFFFFF", + "header_cart_notification_bg_color": "#2e3032", + "header_cart_notification_text_color": "#FFFFFF", + "header_nav_hover_color": "#2e3032", + "button_primary_color": "#ffffff", + "button_primary_label_color": "#000000", + "button_add_to_cart_color": "#000000", + "button_add_to_cart_label_color": "#ffffff", + "button_secondary_color": "#000000", + "button_secondary_label_color": "#ffffff", + "button_tertiary_color": "#000000", + "button_tertiary_label_color": "#000000", + "button_tertiary_hover_color": "#000000", + "button_tertiary_hover_text_color": "#ffffff", + "text_heading_link_color": "#000000", + "text_body_color": "#000000", + "text_price_color": "#000000", + "text_sale_price_color": "#fb406b", + "text_strikethrough_price_color": "#9b9b9b", + "text_discount_color": "#ee478d", + "footer_bg_color": "#7f9ed0", + "footer_text_color": "#FFFFFF", + "footer_border_color": "#FFFFFF", + "footer_nav_hover_color": "#2e3032" + } + } + }, + "page": [] + } + ], + "preset": { + "pages": [ + { + "sections": [ + { + "blocks": [], + "predicate": { + "screen": { + "mobile": true, + "desktop": true, + "tablet": true + }, + "user": { + "authenticated": true, + "anonymous": true + }, + "route": { + "selected": "none", + "exact_url": "" + } + }, + "name": "hero_image", + "props": { + "image": { + "value": "", + "type": "image_picker" + }, + "overlay_layout": { + "type": "select", + "value": "center" + }, + "overlay_image": { + "value": "", + "type": "image_picker" + }, + "overlay_text": { + "value": "", + "type": "text" + }, + "text_color": { + "value": "#000", + "type": "color" + }, + "button_link": { + "type": "url", + "value": "" + }, + "button_text": { + "value": "Shop Now", + "type": "text" + }, + "full_width": { + "value": true, + "type": "checkbox" + } + } + }, + { + "blocks": [], + "predicate": { + "screen": { + "mobile": true, + "desktop": true, + "tablet": true + }, + "user": { + "authenticated": true, + "anonymous": true + }, + "route": { + "selected": "none", + "exact_url": "" + } + }, + "name": "image_slideshow", + "props": { + "autoplay": { + "value": false, + "type": "checkbox" + }, + "full_width": { + "value": false, + "type": "checkbox" + }, + "slide_height": { + "value": "adapt", + "type": "select" + }, + "slide_interval": { + "value": 2, + "type": "range" + }, + "title": { + "value": "Trending", + "type": "text" + } + }, + "preset": { + "blocks": [ + { + "name": "Slide" + }, + { + "name": "Slide" + }, + { + "name": "Slide" + } + ] + } + }, + { + "blocks": [ + { + "type": "gallery_image", + "name": "Image", + "props": { + "image": { + "type": "image_picker", + "value": "" + }, + "caption": { + "type": "text", + "value": "" + }, + "link": { + "type": "url", + "value": "" + } + } + }, + { + "type": "gallery_image", + "name": "Image", + "props": { + "image": { + "type": "image_picker", + "value": "" + }, + "caption": { + "type": "text", + "value": "" + }, + "link": { + "type": "url", + "value": "" + } + } + }, + { + "type": "gallery_image", + "name": "Image", + "props": { + "image": { + "type": "image_picker", + "value": "" + }, + "caption": { + "type": "text", + "value": "" + }, + "link": { + "type": "url", + "value": "" + } + } + }, + { + "type": "gallery_image", + "name": "Image", + "props": { + "image": { + "type": "image_picker", + "value": "" + }, + "caption": { + "type": "text", + "value": "" + }, + "link": { + "type": "url", + "value": "" + } + } + } + ], + "predicate": { + "screen": { + "mobile": true, + "desktop": true, + "tablet": true + }, + "user": { + "authenticated": true, + "anonymous": true + }, + "route": { + "selected": "none", + "exact_url": "" + } + }, + "name": "image_gallery", + "props": { + "title": { + "type": "text", + "value": "Popular Brands" + }, + "layout": { + "value": "grid", + "type": "select" + }, + "item_count": { + "value": 4, + "type": "range" + }, + "cta_text": { + "value": "", + "type": "text" + }, + "cta_link": { + "type": "url", + "value": "" + }, + "full_width": { + "value": false, + "type": "checkbox" + } + }, + "preset": { + "blocks": [ + { + "name": "Image" + }, + { + "name": "Image" + }, + { + "name": "Image" + }, + { + "name": "Image" + } + ] + } + }, + { + "blocks": [], + "predicate": { + "screen": { + "mobile": true, + "desktop": true, + "tablet": true + }, + "user": { + "authenticated": true, + "anonymous": true + }, + "route": { + "selected": "none", + "exact_url": "" + } + }, + "name": "brands_listing", + "props": { + "brand_type": { + "value": "all", + "type": "radio" + }, + "cta_text": { + "value": "View all", + "type": "text" + }, + "department": { + "type": "department" + }, + "header": { + "type": "header" + }, + "items_per_row": { + "value": 5, + "type": "range" + }, + "layout": { + "value": "horizontal", + "type": "select" + }, + "title": { + "type": "text", + "value": "Brands" + }, + "view_options": { + "value": "fullview", + "type": "select" + } + } + }, + { + "blocks": [ + { + "type": "testimonial", + "name": "Testimonial", + "props": { + "testimonialText": { + "type": "textarea", + "value": "" + }, + "author_name": { + "type": "text" + }, + "author_description": { + "type": "text", + "value": "" + }, + "author_image": { + "type": "image_picker", + "value": "" + } + } + }, + { + "type": "testimonial", + "name": "Testimonial", + "props": { + "testimonialText": { + "type": "textarea", + "value": "" + }, + "author_name": { + "type": "text" + }, + "author_description": { + "type": "text", + "value": "" + }, + "author_image": { + "type": "image_picker", + "value": "" + } + } + }, + { + "type": "testimonial", + "name": "Testimonial", + "props": { + "testimonialText": { + "type": "textarea", + "value": "" + }, + "author_name": { + "type": "text" + }, + "author_description": { + "type": "text", + "value": "" + }, + "author_image": { + "type": "image_picker", + "value": "" + } + } + } + ], + "predicate": { + "screen": { + "mobile": true, + "desktop": true, + "tablet": true + }, + "user": { + "authenticated": true, + "anonymous": true + }, + "route": { + "selected": "none", + "exact_url": "" + } + }, + "name": "testimonials", + "props": { + "autoplay": { + "value": false, + "type": "checkbox" + }, + "slide_interval": { + "value": 2, + "type": "range" + } + }, + "preset": { + "blocks": [ + { + "name": "Testimonial" + }, + { + "name": "Testimonial" + }, + { + "name": "Testimonial" + } + ] + } + } + ], + "value": "home" + } + ] + }, + "global_schema": { + "props": [ + { + "type": "checkbox", + "id": "disable_cart", + "category": "Colors", + "label": "header" + } + ] + } + }, + "available_sections": [ + { + "props": [ + { + "type": "url", + "id": "banner_link", + "label": "Redirect Link" + }, + { + "type": "checkbox", + "id": "full_width", + "label": "Full width", + "info": "Check to allow items to take entire width of the viewport" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + } + ], + "blocks": [], + "name": "application_banner", + "label": "Application Banner" + }, + { + "props": [ + { + "type": "text", + "id": "title", + "label": "Title" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + }, + { + "type": "header", + "id": "header", + "value": "Choose Brands to Show" + }, + { + "id": "view_options", + "type": "select", + "options": [ + { + "value": "logo", + "text": "Logo View" + }, + { + "value": "fullview", + "text": "Logo and Banner View" + } + ], + "label": "View Options", + "info": "Brand card view options" + }, + { + "type": "radio", + "id": "brand_type", + "options": [ + { + "value": "all", + "text": "All" + }, + { + "value": "department", + "text": "Department" + }, + { + "value": "handpicked", + "text": "Handpicked" + } + ] + }, + { + "type": "department", + "id": "department", + "label": "Department", + "info": "Select a department of brands", + "note": "Department only applies if 'department' type is selected" + }, + { + "type": "range", + "id": "items_per_row", + "min": 3, + "max": 5, + "step": 1, + "unit": "", + "label": "Items per row", + "info": "Maximum items allowed per row" + }, + { + "id": "layout", + "type": "select", + "options": [ + { + "value": "grid", + "text": "Grid View" + }, + { + "value": "horizontal", + "text": "Horizontal View" + } + ], + "label": "Layout", + "info": "Alignment of content" + }, + { + "type": "text", + "id": "cta_text", + "label": "CTA Text" + } + ], + "blocks": [ + { + "type": "brand_item", + "name": "Brand Item", + "props": [ + { + "type": "brand", + "id": "brand", + "label": "Select Brand" + } + ] + } + ], + "name": "brands_listing", + "label": "Brands Listing" + }, + { + "props": [ + { + "type": "text", + "id": "title", + "label": "Title" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + }, + { + "type": "radio", + "id": "collection_type", + "options": [ + { + "value": "all", + "text": "All" + }, + { + "value": "handpicked", + "text": "Handpicked" + } + ] + }, + { + "type": "text", + "id": "tags_filter", + "label": "Filter by tags", + "info": "Filter by Tags " + }, + { + "type": "range", + "id": "items_per_row", + "min": 3, + "max": 5, + "step": 1, + "unit": "", + "label": "Max items per row", + "info": "Maximum items allowed per row" + }, + { + "id": "layout", + "type": "select", + "options": [ + { + "value": "grid", + "text": "Grid View" + }, + { + "value": "horizontal", + "text": "Horizontal View" + } + ], + "label": "Layout", + "info": "Alignment of content" + }, + { + "type": "text", + "id": "cta_text", + "label": "CTA Text" + } + ], + "blocks": [ + { + "type": "collection-item", + "name": "collection Item", + "props": [ + { + "type": "collection", + "id": "collection", + "label": "Select Collection" + } + ] + } + ], + "name": "collections_listing", + "label": "Collections Listing" + }, + { + "props": [ + { + "type": "code", + "id": "code", + "label": "Custom HTML", + "info": "Add Your custom HTML Code below. You can also use the full screen icon to open a code editor and add your code" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + } + ], + "blocks": [], + "name": "custom_html", + "label": "Custom HTML" + }, + { + "props": [ + { + "type": "extension", + "id": "extension", + "label": "Extension Positions", + "info": "Handle extension in these positions", + "positions": [ + { + "value": "section_extension", + "text": "" + } + ] + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + } + ], + "blocks": [], + "name": "section_extension", + "label": "Extensions" + }, + { + "props": [ + { + "type": "text", + "id": "title", + "label": "Title" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + }, + { + "type": "collection", + "id": "collection", + "label": "Collection", + "info": "Select a collection to display its products" + }, + { + "type": "range", + "id": "items_per_row", + "min": 2, + "max": 5, + "step": 1, + "unit": "", + "label": "Products per row", + "info": "Maximum items allowed per row" + }, + { + "id": "layout", + "type": "select", + "options": [ + { + "value": "grid", + "text": "Grid View" + }, + { + "value": "horizontal", + "text": "Horizontal View" + } + ], + "label": "Layout", + "info": "Alignment of content" + }, + { + "type": "checkbox", + "id": "autoplay", + "label": "AutoPlay Slides", + "info": "Check to autoplay slides" + }, + { + "type": "range", + "id": "slide_interval", + "min": 1, + "max": 10, + "step": 1, + "unit": "sec", + "label": "Change slides after every", + "info": "Autoplay slide duration" + } + ], + "blocks": [], + "name": "featured_collection", + "label": "Featured Collection" + }, + { + "props": [ + { + "id": "image", + "type": "image_picker", + "label": "Hero Image" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + }, + { + "id": "overlay_layout", + "type": "select", + "options": [ + { + "value": "left", + "text": "Align Left" + }, + { + "value": "center", + "text": "Align Center" + }, + { + "value": "right", + "text": "Align Right" + } + ], + "label": "Overlay Layout", + "info": "Alignment of overlay content" + }, + { + "type": "image_picker", + "id": "overlay_image", + "label": "Overlay image", + "info": "Overlay Image" + }, + { + "type": "text", + "id": "overlay_text", + "label": "Overlay Text" + }, + { + "type": "color", + "id": "text_color", + "label": "Text Color" + }, + { + "type": "url", + "id": "button_link", + "label": "Redirect Link" + }, + { + "type": "text", + "id": "button_text", + "label": "Button Text" + }, + { + "type": "checkbox", + "id": "full_width", + "label": "Full width", + "info": "Check to allow items to take entire width of the viewport" + }, + { + "type": "checkbox", + "id": "fullscreen_image", + "label": "Fullscreen Banner ", + "info": "Check to allow items to take entire viewport" + } + ], + "blocks": [], + "name": "hero_image", + "label": "Hero Image" + }, + { + "props": [ + { + "type": "video", + "id": "videoFile", + "label": "Primary Video" + }, + { + "id": "videoUrl", + "type": "text", + "label": "Video URL", + "info": "Supports MP4 Video & Youtube Video URL" + }, + { + "type": "checkbox", + "id": "autoplay", + "label": "Autoplay", + "info": "Check to enable autoplay (Video will be muted if autoplay is active)" + }, + { + "type": "checkbox", + "id": "hidecontrols", + "label": "Hide Video Controls", + "info": "check to disable video controls" + }, + { + "type": "checkbox", + "id": "showloop", + "label": "Play Video in Loop", + "info": "check to disable Loop" + }, + { + "type": "text", + "id": "title", + "label": "Heading" + }, + { + "id": "coverUrl", + "type": "image_picker", + "label": "Thumbnail Image" + } + ], + "blocks": [], + "name": "hero_video-v2", + "label": "Hero Video V2" + }, + { + "props": [ + { + "id": "video_url", + "type": "text", + "label": "Video URL", + "info": "Supports MP4 Video & Youtube Video URL" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + }, + { + "type": "checkbox", + "id": "autoplay", + "label": "Autoplay", + "info": "Check to enable autoplay (Video will be muted if autoplay is active)" + }, + { + "type": "checkbox", + "id": "controls", + "label": "Video Controls", + "info": "Uncheck to disable video controls" + }, + { + "type": "checkbox", + "id": "full_width", + "label": "Full width", + "info": "Check to allow items to take entire width of the viewport" + }, + { + "type": "checkbox", + "id": "bg_video", + "label": "Video In Background", + "info": "Use video in background with overlay (Overlay Image & Video Controls will be disabled by default on website)" + }, + { + "type": "select", + "id": "size", + "options": [ + { + "value": "small", + "text": "Small" + }, + { + "value": "medium", + "text": "Medium" + }, + { + "value": "large", + "text": "Large" + }, + { + "value": "adapt", + "text": "Adapt" + }, + { + "value": "fullscreen", + "text": "Fullscreen" + } + ], + "label": "Video Height", + "info": "Height of Video" + }, + { + "type": "checkbox", + "id": "enable_overlay_image", + "label": "Enable Overlay Image" + }, + { + "id": "cover_url", + "type": "image_picker", + "label": "Video Overlay Image" + }, + { + "type": "checkbox", + "id": "enable_overlay_color", + "label": "Enable Overlay Colour" + }, + { + "type": "color", + "id": "overlay_color", + "label": "Overlay Color" + }, + { + "type": "range", + "id": "overlay_opacity", + "min": 0, + "max": 1, + "step": 0.1, + "unit": "", + "label": "Overlay Opacity" + }, + { + "type": "select", + "id": "overlay_size", + "options": [ + { + "value": "container", + "text": "Container (Default)" + }, + { + "value": "content", + "text": "Content" + } + ], + "label": "Overlay Size" + }, + { + "id": "overlay_position", + "type": "select", + "options": [ + { + "value": "top-left", + "text": "Top Left" + }, + { + "value": "top-center", + "text": "Top Center" + }, + { + "value": "top-right", + "text": "Top Right" + }, + { + "value": "center-left", + "text": "Center Left" + }, + { + "value": "center-center", + "text": "Center (Default)" + }, + { + "value": "center-right", + "text": "Center Right" + }, + { + "value": "bottom-left", + "text": "Bottom Left" + }, + { + "value": "bottom-center", + "text": "Bottom Center" + }, + { + "value": "bottom-right", + "text": "Bottom right" + } + ], + "label": "Overlay position", + "info": "Alignment of Overlay content(heading, sub-heading, button)" + }, + { + "type": "text", + "id": "heading", + "label": "Heading" + }, + { + "type": "color", + "id": "heading_color", + "label": "Heading Text Color" + }, + { + "type": "text", + "id": "sub_heading", + "label": "Sub-heading" + }, + { + "type": "color", + "id": "sub_heading_color", + "label": "Sub-heading Text Color" + }, + { + "type": "url", + "id": "button_link", + "label": "Redirect Link" + }, + { + "type": "text", + "id": "button_text", + "label": "Button Text" + } + ], + "blocks": [], + "name": "hero_video", + "label": "Hero Video" + }, + { + "props": [ + { + "type": "text", + "id": "title", + "label": "Title" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + }, + { + "id": "layout", + "type": "select", + "options": [ + { + "value": "grid", + "text": "Grid View" + }, + { + "value": "horizontal", + "text": "Horizontal View" + } + ], + "label": "Layout", + "info": "Alignment of content" + }, + { + "type": "range", + "id": "item_count", + "min": 3, + "max": 4, + "step": 1, + "unit": "", + "label": "No of items", + "info": "Maximum items allowed per row for Horizontal view, for gallery max 5 are viewable and only 5 blocks are required" + }, + { + "type": "text", + "id": "cta_text", + "label": "CTA Text" + }, + { + "type": "url", + "id": "cta_link", + "label": "CTA Link", + "info": "Link to redirect" + }, + { + "type": "checkbox", + "id": "full_width", + "label": "Full width", + "info": "Check to allow items to take entire width of the viewport" + } + ], + "blocks": [ + { + "type": "gallery_image", + "name": "Image", + "props": [ + { + "type": "image_picker", + "id": "image", + "label": "Gallery Image" + }, + { + "type": "text", + "id": "caption", + "label": "Image Caption" + }, + { + "type": "url", + "id": "link", + "label": "Link", + "info": "Link to redirect" + } + ] + } + ], + "name": "image_gallery", + "label": "Image Gallery", + "preset": { + "blocks": [ + { + "name": "Image" + }, + { + "name": "Image" + }, + { + "name": "Image" + }, + { + "name": "Image" + } + ] + } + }, + { + "props": [ + { + "type": "text", + "id": "title", + "label": "Title" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + }, + { + "type": "checkbox", + "id": "autoplay", + "label": "AutoPlay Slides", + "info": "Check to autoplay slides" + }, + { + "type": "range", + "id": "slide_interval", + "min": 1, + "max": 10, + "step": 1, + "unit": "sec", + "label": "Change slides after every", + "info": "Autoplay slide duration" + }, + { + "type": "select", + "id": "slide_height", + "options": [ + { + "value": "adapt", + "text": "Adapt to first image" + }, + { + "value": "small", + "text": "Small" + }, + { + "value": "medium", + "text": "Medium" + }, + { + "value": "large", + "text": "Large" + } + ], + "label": "Slide height", + "info": "Size of the slide" + }, + { + "type": "checkbox", + "id": "full_width", + "label": "Full width", + "info": "Check to allow items to take entire width of the viewport" + } + ], + "blocks": [ + { + "type": "image_slide", + "name": "Slide", + "props": [ + { + "type": "image_picker", + "id": "image", + "label": "Image" + }, + { + "type": "url", + "id": "slide_link", + "label": "Slide Link" + } + ] + } + ], + "name": "image_slideshow", + "label": "Image Slideshow", + "preset": { + "blocks": [ + { + "name": "Slide" + }, + { + "name": "Slide" + }, + { + "name": "Slide" + } + ] + } + }, + { + "props": [ + { + "type": "image_picker", + "id": "image", + "label": "Image" + }, + { + "id": "video", + "type": "url", + "label": "Video" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + }, + { + "id": "cover", + "type": "url", + "label": "Video Cover Image" + }, + { + "type": "select", + "id": "media_alignment", + "options": [ + { + "value": "left", + "text": "Left" + }, + { + "value": "center", + "text": "Center" + }, + { + "value": "right", + "text": "Right" + } + ], + "label": "Media Alignment" + }, + { + "type": "text", + "id": "heading", + "label": "Heading" + }, + { + "type": "text", + "id": "text Pair large text with an image to give focus to your chosen product, collection, or blog post. Add details on availability, style, or even provide a review.", + "label": "Text" + }, + { + "type": "select", + "id": "text_alignment", + "options": [ + { + "value": "left", + "text": "Left" + }, + { + "value": "center", + "text": "Center" + }, + { + "value": "right", + "text": "Right" + } + ], + "label": "Text Alignment" + } + ], + "blocks": [], + "name": "media_with_text", + "label": "Media with text" + }, + { + "props": [ + { + "type": "text", + "id": "title", + "label": "Title" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + }, + { + "type": "checkbox", + "id": "autoplay", + "label": "AutoPlay Slides" + }, + { + "type": "range", + "id": "slide_interval", + "min": 1, + "max": 10, + "step": 1, + "unit": "sec", + "label": "Change slides every" + } + ], + "blocks": [ + { + "type": "testimonial", + "name": "Testimonial", + "props": [ + { + "type": "textarea", + "id": "testimonialText", + "label": "Text for Testimonial", + "info": "Text for testimonial", + "placeholder": "Text" + }, + { + "type": "text", + "id": "author_name", + "label": "Author name" + }, + { + "type": "text", + "id": "author_description", + "label": "Author Description" + }, + { + "type": "image_picker", + "id": "author_image", + "label": "Author Image" + } + ] + } + ], + "name": "testimonials", + "label": "Testimonial", + "preset": { + "blocks": [ + { + "name": "Testimonial" + }, + { + "name": "Testimonial" + }, + { + "name": "Testimonial" + } + ] + } + } + ], + "src": "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64b0eb01c35f990518880a82/theme/assets/7yuL57qP2-archive.zip" + } + ] +} +``` +
+ +
+  example2 + +```json +{ + "value": [ + { + "_id": "64b91fe317422a1e1392f85b", + "applied": true, + "is_private": true, + "tags": [], + "name": "Astra", + "version": "1.0.11", + "application_id": "7487ea376e1442284917c44e", + "styles": {}, + "template_theme_id": "64be264c0347c5002279b75f", + "created_at": "2023-07-24T07:20:44.629Z", + "updated_at": "2023-08-01T11:09:25.857Z", + "theme_type": "vue2", + "assets": { + "umd_js": { + "links": [ + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/O3s2Kmnsc_themeBundle.umd.min.9.js", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/O3s2Kmnsc_themeBundle.umd.min.cart.js", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/O3s2Kmnsc_themeBundle.umd.min.extras.js", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/O3s2Kmnsc_themeBundle.umd.min.products-listing_profile.js", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/O3s2Kmnsc_themeBundle.umd.min.products-listing.js", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/O3s2Kmnsc_themeBundle.umd.min.products.js", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/O3s2Kmnsc_themeBundle.umd.min.profile.js", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/O3s2Kmnsc_themeBundle.umd.min.vendors_products-listing.js", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/O3s2Kmnsc_themeBundle.umd.min.vendors_products.js", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/O3s2Kmnsc_themeBundle.umd.min.js" + ], + "link": "" + }, + "common_js": { + "link": "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/O3s2Kmnsc_themeBundle.common.js" + }, + "css": { + "links": [ + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/O3s2Kmnsc_extras.8604b743eb82cd74e4bb.css", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/O3s2Kmnsc_products-listing_profile.944723408675f52ed297.css", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/O3s2Kmnsc_products-listing.ca493ea7d081b4b575f7.css", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/O3s2Kmnsc_products.2c64f7731dab64227f0b.css", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/O3s2Kmnsc_profile.1b1467735927e188d272.css", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/O3s2Kmnsc_themeBundle.css", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/O3s2Kmnsc_vendors_products-listing.c8fe85761d60286348e3.css" + ], + "link": "" + } + }, + "font": { + "variants": { + "light": { + "name": "300", + "file": "https://fonts.gstatic.com/s/poppins/v20/pxiByp8kv8JHgFVrLDz8V1tvFP-KUEg.ttf" + }, + "regular": { + "name": "regular", + "file": "https://fonts.gstatic.com/s/poppins/v20/pxiEyp8kv8JHgFVrFJDUc1NECPY.ttf" + }, + "medium": { + "name": "500", + "file": "https://fonts.gstatic.com/s/poppins/v20/pxiByp8kv8JHgFVrLGT9V1tvFP-KUEg.ttf" + }, + "semi_bold": { + "name": "600", + "file": "https://fonts.gstatic.com/s/poppins/v20/pxiByp8kv8JHgFVrLEj6V1tvFP-KUEg.ttf" + }, + "bold": { + "name": "700", + "file": "https://fonts.gstatic.com/s/poppins/v20/pxiByp8kv8JHgFVrLCz7V1tvFP-KUEg.ttf" + } + }, + "family": "Poppins" + }, + "config": { + "current": "Default", + "list": [ + { + "name": "Default", + "global_config": { + "static": { + "props": { + "colors": { + "primary_color": "#000000", + "secondary_color": "#000000", + "accent_color": "#000000", + "link_color": "#4499FF", + "button_secondary_color": "#000000", + "bg_color": "#F8F8F8" + }, + "auth": { + "show_header_auth": false, + "show_footer_auth": false + }, + "palette": { + "general_setting": { + "theme": { + "page_background": "#F3F3ED", + "theme_accent": "#E1D0C8" + }, + "text": { + "text_heading": "#26201A", + "text_body": "#3C3131", + "text_label": "#7D7676", + "text_secondary": "#9C9C9C" + }, + "button": { + "button_primary": "#4E3F09", + "button_secondary": "#FFFFFF", + "button_link": "#B1655B" + }, + "sale_discount": { + "sale_badge_background": "#FFFFFF", + "sale_badge_text": "#1C958F", + "sale_discount_text": "#1C958F", + "sale_timer": "#994449" + }, + "header": { + "header_background": "#F3F3ED", + "header_nav": "#261A1A", + "header_icon": "#261A1A" + }, + "footer": { + "footer_background": "#2C231E", + "footer_bottom_background": "#231812", + "footer_heading_text": "#FFFFFF", + "footer_body_text": "#FFFFFF", + "footer_icon": "#FFFFFF" + } + }, + "advance_setting": { + "overlay_popup": { + "dialog_backgroung": "#FFFFFF", + "overlay": "#14130E" + }, + "divider_stroke_highlight": { + "divider_strokes": "#D4D1D1", + "highlight": "#EDECE9" + }, + "user_alerts": { + "success_background": "#C2DBC9", + "success_text": "#1C958F", + "error_background": "#E6D5D5", + "error_text": "#B24141", + "info_background": "#EBD3BC", + "info_text": "#D28F51" + } + } + }, + "extension": { + "header_top": [], + "header_bottom": [], + "footer_top": [], + "footer_bottom": [] + } + } + }, + "custom": { + "props": { + "header_bg_color": "#ffffff", + "header_text_color": "#000000", + "header_border_color": "#e1e1e1", + "header_icon_color": "#000000", + "header_cart_notification_bg_color": "#e8a76c", + "header_cart_notification_text_color": "#ffffff", + "header_nav_hover_color": "#999999", + "button_primary_color": "#ffffff", + "button_primary_label_color": "#000000", + "button_add_to_cart_color": "#000000", + "button_add_to_cart_label_color": "#ffffff", + "button_secondary_color": "#000000", + "button_secondary_label_color": "#ffffff", + "button_tertiary_color": "#000000", + "button_tertiary_label_color": "#000000", + "button_tertiary_hover_color": "#000000", + "button_tertiary_hover_text_color": "#ffffff", + "text_heading_link_color": "#000000", + "text_body_color": "#000000", + "text_price_color": "#000000", + "text_sale_price_color": "#fb406b", + "text_strikethrough_price_color": "#9b9b9b", + "text_discount_color": "#ee478d", + "footer_bg_color": "#ffffff", + "footer_text_color": "#999999", + "footer_border_color": "#e1e1e1", + "footer_nav_hover_color": "#000000", + "disable_cart": false, + "is_menu_below_logo": false, + "menu_position": "left" + } + } + }, + "page": [] + }, + { + "name": "Dark", + "global_config": { + "static": { + "props": { + "colors": { + "primary_color": "#000000", + "secondary_color": "#000000", + "accent_color": "#000000", + "link_color": "#4499FF", + "button_secondary_color": "#000000", + "bg_color": "#F8F8F8" + }, + "auth": { + "show_header_auth": false, + "show_footer_auth": false + }, + "palette": { + "general_setting": { + "theme": { + "page_background": "#F3F3ED", + "theme_accent": "#E1D0C8" + }, + "text": { + "text_heading": "#26201A", + "text_body": "#3C3131", + "text_label": "#7D7676", + "text_secondary": "#9C9C9C" + }, + "button": { + "button_primary": "#4E3F09", + "button_secondary": "#FFFFFF", + "button_link": "#B1655B" + }, + "sale_discount": { + "sale_badge_background": "#FFFFFF", + "sale_badge_text": "#1C958F", + "sale_discount_text": "#1C958F", + "sale_timer": "#994449" + }, + "header": { + "header_background": "#F3F3ED", + "header_nav": "#261A1A", + "header_icon": "#261A1A" + }, + "footer": { + "footer_background": "#2C231E", + "footer_bottom_background": "#231812", + "footer_heading_text": "#FFFFFF", + "footer_body_text": "#FFFFFF", + "footer_icon": "#FFFFFF" + } + }, + "advance_setting": { + "overlay_popup": { + "dialog_backgroung": "#FFFFFF", + "overlay": "#14130E" + }, + "divider_stroke_highlight": { + "divider_strokes": "#D4D1D1", + "highlight": "#EDECE9" + }, + "user_alerts": { + "success_background": "#C2DBC9", + "success_text": "#1C958F", + "error_background": "#E6D5D5", + "error_text": "#B24141", + "info_background": "#EBD3BC", + "info_text": "#D28F51" + } + } + }, + "extension": { + "header_top": [], + "header_bottom": [], + "footer_top": [], + "footer_bottom": [] + } + } + }, + "custom": { + "props": { + "header_bg_color": "#2e3032", + "header_text_color": "#ffffff", + "header_border_color": "#FFFFFF", + "header_icon_color": "#ffffff", + "header_cart_notification_bg_color": "#FFFFFF", + "header_cart_notification_text_color": "#2e3032", + "header_nav_hover_color": "#000000", + "button_primary_color": "#000000", + "button_primary_label_color": "#ffffff", + "button_add_to_cart_color": "#000000", + "button_add_to_cart_label_color": "#ffffff", + "button_secondary_color": "#000000", + "button_secondary_label_color": "#ffffff", + "button_tertiary_color": "#000000", + "button_tertiary_label_color": "#000000", + "button_tertiary_hover_color": "#000000", + "button_tertiary_hover_text_color": "#ffffff", + "text_heading_link_color": "#000000", + "text_body_color": "#000000", + "text_price_color": "#000000", + "text_sale_price_color": "#fb406b", + "text_strikethrough_price_color": "#9b9b9b", + "text_discount_color": "#ee478d", + "footer_bg_color": "#2e3032", + "footer_text_color": "#ffffff", + "footer_border_color": "#FFFFFF", + "footer_nav_hover_color": "#ffffff" + } + } + }, + "page": [] + }, + { + "name": "Blue", + "global_config": { + "static": { + "props": { + "colors": { + "primary_color": "#000000", + "secondary_color": "#000000", + "accent_color": "#000000", + "link_color": "#4499FF", + "button_secondary_color": "#000000", + "bg_color": "#F8F8F8" + }, + "auth": { + "show_header_auth": false, + "show_footer_auth": false + }, + "palette": { + "general_setting": { + "theme": { + "page_background": "#F3F3ED", + "theme_accent": "#E1D0C8" + }, + "text": { + "text_heading": "#26201A", + "text_body": "#3C3131", + "text_label": "#7D7676", + "text_secondary": "#9C9C9C" + }, + "button": { + "button_primary": "#4E3F09", + "button_secondary": "#FFFFFF", + "button_link": "#B1655B" + }, + "sale_discount": { + "sale_badge_background": "#FFFFFF", + "sale_badge_text": "#1C958F", + "sale_discount_text": "#1C958F", + "sale_timer": "#994449" + }, + "header": { + "header_background": "#F3F3ED", + "header_nav": "#261A1A", + "header_icon": "#261A1A" + }, + "footer": { + "footer_background": "#2C231E", + "footer_bottom_background": "#231812", + "footer_heading_text": "#FFFFFF", + "footer_body_text": "#FFFFFF", + "footer_icon": "#FFFFFF" + } + }, + "advance_setting": { + "overlay_popup": { + "dialog_backgroung": "#FFFFFF", + "overlay": "#14130E" + }, + "divider_stroke_highlight": { + "divider_strokes": "#D4D1D1", + "highlight": "#EDECE9" + }, + "user_alerts": { + "success_background": "#C2DBC9", + "success_text": "#1C958F", + "error_background": "#E6D5D5", + "error_text": "#B24141", + "info_background": "#EBD3BC", + "info_text": "#D28F51" + } + } + }, + "extension": { + "header_top": [], + "header_bottom": [], + "footer_top": [], + "footer_bottom": [] + } + } + }, + "custom": { + "props": { + "header_bg_color": "#7f9ed0", + "header_text_color": "#FFFFFF", + "header_border_color": "#FFFFFF", + "header_icon_color": "#FFFFFF", + "header_cart_notification_bg_color": "#2e3032", + "header_cart_notification_text_color": "#FFFFFF", + "header_nav_hover_color": "#2e3032", + "button_primary_color": "#ffffff", + "button_primary_label_color": "#000000", + "button_add_to_cart_color": "#000000", + "button_add_to_cart_label_color": "#ffffff", + "button_secondary_color": "#000000", + "button_secondary_label_color": "#ffffff", + "button_tertiary_color": "#000000", + "button_tertiary_label_color": "#000000", + "button_tertiary_hover_color": "#000000", + "button_tertiary_hover_text_color": "#ffffff", + "text_heading_link_color": "#000000", + "text_body_color": "#000000", + "text_price_color": "#000000", + "text_sale_price_color": "#fb406b", + "text_strikethrough_price_color": "#9b9b9b", + "text_discount_color": "#ee478d", + "footer_bg_color": "#7f9ed0", + "footer_text_color": "#FFFFFF", + "footer_border_color": "#FFFFFF", + "footer_nav_hover_color": "#2e3032" + } + } + }, + "page": [] + } + ], + "preset": { + "pages": [ + { + "sections": [ + { + "blocks": [], + "predicate": { + "screen": { + "mobile": true, + "desktop": true, + "tablet": true + }, + "user": { + "authenticated": true, + "anonymous": true + }, + "route": { + "selected": "none", + "exact_url": "" + } + }, + "name": "hero_image", + "props": { + "image": { + "value": "", + "type": "image_picker" + }, + "overlay_layout": { + "type": "select", + "value": "center" + }, + "overlay_image": { + "value": "", + "type": "image_picker" + }, + "overlay_text": { + "value": "", + "type": "text" + }, + "text_color": { + "value": "#000", + "type": "color" + }, + "button_link": { + "type": "url", + "value": "" + }, + "button_text": { + "value": "Shop Now", + "type": "text" + }, + "full_width": { + "value": true, + "type": "checkbox" + } + } + }, + { + "blocks": [], + "predicate": { + "screen": { + "mobile": true, + "desktop": true, + "tablet": true + }, + "user": { + "authenticated": true, + "anonymous": true + }, + "route": { + "selected": "none", + "exact_url": "" + } + }, + "name": "image_slideshow", + "props": { + "autoplay": { + "value": false, + "type": "checkbox" + }, + "full_width": { + "value": false, + "type": "checkbox" + }, + "slide_height": { + "value": "adapt", + "type": "select" + }, + "slide_interval": { + "value": 2, + "type": "range" + }, + "title": { + "value": "Trending", + "type": "text" + } + }, + "preset": { + "blocks": [ + { + "name": "Slide" + }, + { + "name": "Slide" + }, + { + "name": "Slide" + } + ] + } + }, + { + "blocks": [ + { + "type": "gallery_image", + "name": "Image", + "props": { + "image": { + "type": "image_picker", + "value": "" + }, + "caption": { + "type": "text", + "value": "" + }, + "link": { + "type": "url", + "value": "" + } + } + }, + { + "type": "gallery_image", + "name": "Image", + "props": { + "image": { + "type": "image_picker", + "value": "" + }, + "caption": { + "type": "text", + "value": "" + }, + "link": { + "type": "url", + "value": "" + } + } + }, + { + "type": "gallery_image", + "name": "Image", + "props": { + "image": { + "type": "image_picker", + "value": "" + }, + "caption": { + "type": "text", + "value": "" + }, + "link": { + "type": "url", + "value": "" + } + } + }, + { + "type": "gallery_image", + "name": "Image", + "props": { + "image": { + "type": "image_picker", + "value": "" + }, + "caption": { + "type": "text", + "value": "" + }, + "link": { + "type": "url", + "value": "" + } + } + } + ], + "predicate": { + "screen": { + "mobile": true, + "desktop": true, + "tablet": true + }, + "user": { + "authenticated": true, + "anonymous": true + }, + "route": { + "selected": "none", + "exact_url": "" + } + }, + "name": "image_gallery", + "props": { + "title": { + "type": "text", + "value": "Popular Brands" + }, + "layout": { + "value": "grid", + "type": "select" + }, + "item_count": { + "value": 4, + "type": "range" + }, + "cta_text": { + "value": "", + "type": "text" + }, + "cta_link": { + "type": "url", + "value": "" + }, + "full_width": { + "value": false, + "type": "checkbox" + } + }, + "preset": { + "blocks": [ + { + "name": "Image" + }, + { + "name": "Image" + }, + { + "name": "Image" + }, + { + "name": "Image" + } + ] + } + }, + { + "blocks": [], + "predicate": { + "screen": { + "mobile": true, + "desktop": true, + "tablet": true + }, + "user": { + "authenticated": true, + "anonymous": true + }, + "route": { + "selected": "none", + "exact_url": "" + } + }, + "name": "brands_listing", + "props": { + "brand_type": { + "value": "all", + "type": "radio" + }, + "cta_text": { + "value": "View all", + "type": "text" + }, + "department": { + "type": "department" + }, + "header": { + "type": "header" + }, + "items_per_row": { + "value": 5, + "type": "range" + }, + "layout": { + "value": "horizontal", + "type": "select" + }, + "title": { + "type": "text", + "value": "Brands" + }, + "view_options": { + "value": "fullview", + "type": "select" + } + } + }, + { + "blocks": [ + { + "type": "testimonial", + "name": "Testimonial", + "props": { + "testimonialText": { + "type": "textarea", + "value": "" + }, + "author_name": { + "type": "text" + }, + "author_description": { + "type": "text", + "value": "" + }, + "author_image": { + "type": "image_picker", + "value": "" + } + } + }, + { + "type": "testimonial", + "name": "Testimonial", + "props": { + "testimonialText": { + "type": "textarea", + "value": "" + }, + "author_name": { + "type": "text" + }, + "author_description": { + "type": "text", + "value": "" + }, + "author_image": { + "type": "image_picker", + "value": "" + } + } + }, + { + "type": "testimonial", + "name": "Testimonial", + "props": { + "testimonialText": { + "type": "textarea", + "value": "" + }, + "author_name": { + "type": "text" + }, + "author_description": { + "type": "text", + "value": "" + }, + "author_image": { + "type": "image_picker", + "value": "" + } + } + } + ], + "predicate": { + "screen": { + "mobile": true, + "desktop": true, + "tablet": true + }, + "user": { + "authenticated": true, + "anonymous": true + }, + "route": { + "selected": "none", + "exact_url": "" + } + }, + "name": "testimonials", + "props": { + "autoplay": { + "value": false, + "type": "checkbox" + }, + "slide_interval": { + "value": 2, + "type": "range" + } + }, + "preset": { + "blocks": [ + { + "name": "Testimonial" + }, + { + "name": "Testimonial" + }, + { + "name": "Testimonial" + } + ] + } + } + ], + "value": "home" + } + ] + }, + "global_schema": { + "props": [ + { + "type": "checkbox", + "id": "disable_cart", + "category": "Colors", + "label": "header" + } + ] + } + }, + "available_sections": [ + { + "props": [ + { + "type": "url", + "id": "banner_link", + "label": "Redirect Link" + }, + { + "type": "checkbox", + "id": "full_width", + "label": "Full width", + "info": "Check to allow items to take entire width of the viewport" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + } + ], + "blocks": [], + "name": "application_banner", + "label": "Application Banner" + }, + { + "props": [ + { + "type": "text", + "id": "title", + "label": "Title" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + }, + { + "type": "header", + "id": "header", + "value": "Choose Brands to Show" + }, + { + "id": "view_options", + "type": "select", + "options": [ + { + "value": "logo", + "text": "Logo View" + }, + { + "value": "fullview", + "text": "Logo and Banner View" + } + ], + "label": "View Options", + "info": "Brand card view options" + }, + { + "type": "radio", + "id": "brand_type", + "options": [ + { + "value": "all", + "text": "All" + }, + { + "value": "department", + "text": "Department" + }, + { + "value": "handpicked", + "text": "Handpicked" + } + ] + }, + { + "type": "department", + "id": "department", + "label": "Department", + "info": "Select a department of brands", + "note": "Department only applies if 'department' type is selected" + }, + { + "type": "range", + "id": "items_per_row", + "min": 3, + "max": 5, + "step": 1, + "unit": "", + "label": "Items per row", + "info": "Maximum items allowed per row" + }, + { + "id": "layout", + "type": "select", + "options": [ + { + "value": "grid", + "text": "Grid View" + }, + { + "value": "horizontal", + "text": "Horizontal View" + } + ], + "label": "Layout", + "info": "Alignment of content" + }, + { + "type": "text", + "id": "cta_text", + "label": "CTA Text" + } + ], + "blocks": [ + { + "type": "brand_item", + "name": "Brand Item", + "props": [ + { + "type": "brand", + "id": "brand", + "label": "Select Brand" + } + ] + } + ], + "name": "brands_listing", + "label": "Brands Listing" + }, + { + "props": [ + { + "type": "text", + "id": "title", + "label": "Title" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + }, + { + "type": "radio", + "id": "collection_type", + "options": [ + { + "value": "all", + "text": "All" + }, + { + "value": "handpicked", + "text": "Handpicked" + } + ] + }, + { + "type": "text", + "id": "tags_filter", + "label": "Filter by tags", + "info": "Filter by Tags " + }, + { + "type": "range", + "id": "items_per_row", + "min": 3, + "max": 5, + "step": 1, + "unit": "", + "label": "Max items per row", + "info": "Maximum items allowed per row" + }, + { + "id": "layout", + "type": "select", + "options": [ + { + "value": "grid", + "text": "Grid View" + }, + { + "value": "horizontal", + "text": "Horizontal View" + } + ], + "label": "Layout", + "info": "Alignment of content" + }, + { + "type": "text", + "id": "cta_text", + "label": "CTA Text" + } + ], + "blocks": [ + { + "type": "collection-item", + "name": "collection Item", + "props": [ + { + "type": "collection", + "id": "collection", + "label": "Select Collection" + } + ] + } + ], + "name": "collections_listing", + "label": "Collections Listing" + }, + { + "props": [ + { + "type": "code", + "id": "code", + "label": "Custom HTML", + "info": "Add Your custom HTML Code below. You can also use the full screen icon to open a code editor and add your code" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + } + ], + "blocks": [], + "name": "custom_html", + "label": "Custom HTML" + }, + { + "props": [ + { + "type": "extension", + "id": "extension", + "label": "Extension Positions", + "info": "Handle extension in these positions", + "positions": [ + { + "value": "section_extension", + "text": "" + } + ] + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + } + ], + "blocks": [], + "name": "section_extension", + "label": "Extensions" + }, + { + "props": [ + { + "type": "text", + "id": "title", + "label": "Title" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + }, + { + "type": "collection", + "id": "collection", + "label": "Collection", + "info": "Select a collection to display its products" + }, + { + "type": "range", + "id": "items_per_row", + "min": 2, + "max": 5, + "step": 1, + "unit": "", + "label": "Products per row", + "info": "Maximum items allowed per row" + }, + { + "id": "layout", + "type": "select", + "options": [ + { + "value": "grid", + "text": "Grid View" + }, + { + "value": "horizontal", + "text": "Horizontal View" + } + ], + "label": "Layout", + "info": "Alignment of content" + }, + { + "type": "checkbox", + "id": "autoplay", + "label": "AutoPlay Slides", + "info": "Check to autoplay slides" + }, + { + "type": "range", + "id": "slide_interval", + "min": 1, + "max": 10, + "step": 1, + "unit": "sec", + "label": "Change slides after every", + "info": "Autoplay slide duration" + } + ], + "blocks": [], + "name": "featured_collection", + "label": "Featured Collection" + }, + { + "props": [ + { + "id": "image", + "type": "image_picker", + "label": "Hero Image" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + }, + { + "id": "overlay_layout", + "type": "select", + "options": [ + { + "value": "left", + "text": "Align Left" + }, + { + "value": "center", + "text": "Align Center" + }, + { + "value": "right", + "text": "Align Right" + } + ], + "label": "Overlay Layout", + "info": "Alignment of overlay content" + }, + { + "type": "image_picker", + "id": "overlay_image", + "label": "Overlay image", + "info": "Overlay Image" + }, + { + "type": "text", + "id": "overlay_text", + "label": "Overlay Text" + }, + { + "type": "color", + "id": "text_color", + "label": "Text Color" + }, + { + "type": "url", + "id": "button_link", + "label": "Redirect Link" + }, + { + "type": "text", + "id": "button_text", + "label": "Button Text" + }, + { + "type": "checkbox", + "id": "full_width", + "label": "Full width", + "info": "Check to allow items to take entire width of the viewport" + }, + { + "type": "checkbox", + "id": "fullscreen_image", + "label": "Fullscreen Banner ", + "info": "Check to allow items to take entire viewport" + } + ], + "blocks": [], + "name": "hero_image", + "label": "Hero Image" + }, + { + "props": [ + { + "type": "video", + "id": "videoFile", + "label": "Primary Video" + }, + { + "id": "videoUrl", + "type": "text", + "label": "Video URL", + "info": "Supports MP4 Video & Youtube Video URL" + }, + { + "type": "checkbox", + "id": "autoplay", + "label": "Autoplay", + "info": "Check to enable autoplay (Video will be muted if autoplay is active)" + }, + { + "type": "checkbox", + "id": "hidecontrols", + "label": "Hide Video Controls", + "info": "check to disable video controls" + }, + { + "type": "checkbox", + "id": "showloop", + "label": "Play Video in Loop", + "info": "check to disable Loop" + }, + { + "type": "text", + "id": "title", + "label": "Heading" + }, + { + "id": "coverUrl", + "type": "image_picker", + "label": "Thumbnail Image" + } + ], + "blocks": [], + "name": "hero_video-v2", + "label": "Hero Video V2" + }, + { + "props": [ + { + "id": "video_url", + "type": "text", + "label": "Video URL", + "info": "Supports MP4 Video & Youtube Video URL" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + }, + { + "type": "checkbox", + "id": "autoplay", + "label": "Autoplay", + "info": "Check to enable autoplay (Video will be muted if autoplay is active)" + }, + { + "type": "checkbox", + "id": "controls", + "label": "Video Controls", + "info": "Uncheck to disable video controls" + }, + { + "type": "checkbox", + "id": "full_width", + "label": "Full width", + "info": "Check to allow items to take entire width of the viewport" + }, + { + "type": "checkbox", + "id": "bg_video", + "label": "Video In Background", + "info": "Use video in background with overlay (Overlay Image & Video Controls will be disabled by default on website)" + }, + { + "type": "select", + "id": "size", + "options": [ + { + "value": "small", + "text": "Small" + }, + { + "value": "medium", + "text": "Medium" + }, + { + "value": "large", + "text": "Large" + }, + { + "value": "adapt", + "text": "Adapt" + }, + { + "value": "fullscreen", + "text": "Fullscreen" + } + ], + "label": "Video Height", + "info": "Height of Video" + }, + { + "type": "checkbox", + "id": "enable_overlay_image", + "label": "Enable Overlay Image" + }, + { + "id": "cover_url", + "type": "image_picker", + "label": "Video Overlay Image" + }, + { + "type": "checkbox", + "id": "enable_overlay_color", + "label": "Enable Overlay Colour" + }, + { + "type": "color", + "id": "overlay_color", + "label": "Overlay Color" + }, + { + "type": "range", + "id": "overlay_opacity", + "min": 0, + "max": 1, + "step": 0.1, + "unit": "", + "label": "Overlay Opacity" + }, + { + "type": "select", + "id": "overlay_size", + "options": [ + { + "value": "container", + "text": "Container (Default)" + }, + { + "value": "content", + "text": "Content" + } + ], + "label": "Overlay Size" + }, + { + "id": "overlay_position", + "type": "select", + "options": [ + { + "value": "top-left", + "text": "Top Left" + }, + { + "value": "top-center", + "text": "Top Center" + }, + { + "value": "top-right", + "text": "Top Right" + }, + { + "value": "center-left", + "text": "Center Left" + }, + { + "value": "center-center", + "text": "Center (Default)" + }, + { + "value": "center-right", + "text": "Center Right" + }, + { + "value": "bottom-left", + "text": "Bottom Left" + }, + { + "value": "bottom-center", + "text": "Bottom Center" + }, + { + "value": "bottom-right", + "text": "Bottom right" + } + ], + "label": "Overlay position", + "info": "Alignment of Overlay content(heading, sub-heading, button)" + }, + { + "type": "text", + "id": "heading", + "label": "Heading" + }, + { + "type": "color", + "id": "heading_color", + "label": "Heading Text Color" + }, + { + "type": "text", + "id": "sub_heading", + "label": "Sub-heading" + }, + { + "type": "color", + "id": "sub_heading_color", + "label": "Sub-heading Text Color" + }, + { + "type": "url", + "id": "button_link", + "label": "Redirect Link" + }, + { + "type": "text", + "id": "button_text", + "label": "Button Text" + } + ], + "blocks": [], + "name": "hero_video", + "label": "Hero Video" + }, + { + "props": [ + { + "type": "text", + "id": "title", + "label": "Title" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + }, + { + "id": "layout", + "type": "select", + "options": [ + { + "value": "grid", + "text": "Grid View" + }, + { + "value": "horizontal", + "text": "Horizontal View" + } + ], + "label": "Layout", + "info": "Alignment of content" + }, + { + "type": "range", + "id": "item_count", + "min": 3, + "max": 4, + "step": 1, + "unit": "", + "label": "No of items", + "info": "Maximum items allowed per row for Horizontal view, for gallery max 5 are viewable and only 5 blocks are required" + }, + { + "type": "text", + "id": "cta_text", + "label": "CTA Text" + }, + { + "type": "url", + "id": "cta_link", + "label": "CTA Link", + "info": "Link to redirect" + }, + { + "type": "checkbox", + "id": "full_width", + "label": "Full width", + "info": "Check to allow items to take entire width of the viewport" + } + ], + "blocks": [ + { + "type": "gallery_image", + "name": "Image", + "props": [ + { + "type": "image_picker", + "id": "image", + "label": "Gallery Image" + }, + { + "type": "text", + "id": "caption", + "label": "Image Caption" + }, + { + "type": "url", + "id": "link", + "label": "Link", + "info": "Link to redirect" + } + ] + } + ], + "name": "image_gallery", + "label": "Image Gallery", + "preset": { + "blocks": [ + { + "name": "Image" + }, + { + "name": "Image" + }, + { + "name": "Image" + }, + { + "name": "Image" + } + ] + } + }, + { + "props": [ + { + "type": "text", + "id": "title", + "label": "Title" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + }, + { + "type": "checkbox", + "id": "autoplay", + "label": "AutoPlay Slides", + "info": "Check to autoplay slides" + }, + { + "type": "range", + "id": "slide_interval", + "min": 1, + "max": 10, + "step": 1, + "unit": "sec", + "label": "Change slides after every", + "info": "Autoplay slide duration" + }, + { + "type": "select", + "id": "slide_height", + "options": [ + { + "value": "adapt", + "text": "Adapt to first image" + }, + { + "value": "small", + "text": "Small" + }, + { + "value": "medium", + "text": "Medium" + }, + { + "value": "large", + "text": "Large" + } + ], + "label": "Slide height", + "info": "Size of the slide" + }, + { + "type": "checkbox", + "id": "full_width", + "label": "Full width", + "info": "Check to allow items to take entire width of the viewport" + } + ], + "blocks": [ + { + "type": "image_slide", + "name": "Slide", + "props": [ + { + "type": "image_picker", + "id": "image", + "label": "Image" + }, + { + "type": "url", + "id": "slide_link", + "label": "Slide Link" + } + ] + } + ], + "name": "image_slideshow", + "label": "Image Slideshow", + "preset": { + "blocks": [ + { + "name": "Slide" + }, + { + "name": "Slide" + }, + { + "name": "Slide" + } + ] + } + }, + { + "props": [ + { + "type": "image_picker", + "id": "image", + "label": "Image" + }, + { + "id": "video", + "type": "url", + "label": "Video" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + }, + { + "id": "cover", + "type": "url", + "label": "Video Cover Image" + }, + { + "type": "select", + "id": "media_alignment", + "options": [ + { + "value": "left", + "text": "Left" + }, + { + "value": "center", + "text": "Center" + }, + { + "value": "right", + "text": "Right" + } + ], + "label": "Media Alignment" + }, + { + "type": "text", + "id": "heading", + "label": "Heading" + }, + { + "type": "text", + "id": "text Pair large text with an image to give focus to your chosen product, collection, or blog post. Add details on availability, style, or even provide a review.", + "label": "Text" + }, + { + "type": "select", + "id": "text_alignment", + "options": [ + { + "value": "left", + "text": "Left" + }, + { + "value": "center", + "text": "Center" + }, + { + "value": "right", + "text": "Right" + } + ], + "label": "Text Alignment" + } + ], + "blocks": [], + "name": "media_with_text", + "label": "Media with text" + }, + { + "props": [ + { + "type": "text", + "id": "title", + "label": "Title" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + }, + { + "type": "checkbox", + "id": "autoplay", + "label": "AutoPlay Slides" + }, + { + "type": "range", + "id": "slide_interval", + "min": 1, + "max": 10, + "step": 1, + "unit": "sec", + "label": "Change slides every" + } + ], + "blocks": [ + { + "type": "testimonial", + "name": "Testimonial", + "props": [ + { + "type": "textarea", + "id": "testimonialText", + "label": "Text for Testimonial", + "info": "Text for testimonial", + "placeholder": "Text" + }, + { + "type": "text", + "id": "author_name", + "label": "Author name" + }, + { + "type": "text", + "id": "author_description", + "label": "Author Description" + }, + { + "type": "image_picker", + "id": "author_image", + "label": "Author Image" + } + ] + } + ], + "name": "testimonials", + "label": "Testimonial", + "preset": { + "blocks": [ + { + "name": "Testimonial" + }, + { + "name": "Testimonial" + }, + { + "name": "Testimonial" + } + ] + } + } + ], + "src": "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/Gpbt5naNG-archive.zip" + } + ] +} +``` +
+ +
+ + + + + + + + + +--- + + +### getThemeById +Get Theme By Theme Id + + + + +```java +partnerClient.theme.getThemeById( themeId, organizationId) { + //use response +} +``` + + + +| Argument | Type | Required | Description | +| --------- | ----- | -------- | ----------- | +| companyId | Integer | yes | The ID of the company | +| applicationId | String | yes | The ID of the application | +| themeId | String | yes | The ID of the theme | +| organizationId | String | yes | Organization ID | + + + +Use this API to get theme details + +*Returned Response:* + + + + +[ThemesSchema](#ThemesSchema) + +The Details of themes for the application was fetched successfully. + + + + +
+  Example: + +```json + +``` +
+ + + + + + + + + +--- + + +### updateTheme +Update theme for a specific company and application + + + + +```java +partnerClient.theme.updateTheme( themeId, organizationId, body body) { + //use response +} +``` + + + +| Argument | Type | Required | Description | +| --------- | ----- | -------- | ----------- | +| companyId | Integer | yes | The ID of the company. | +| applicationId | String | yes | The ID of the application. | +| themeId | String | yes | The ID of the theme. | +| organizationId | String | yes | Organization ID | +| body | [UpdateThemeRequestBody](#UpdateThemeRequestBody) | yes | Request body | + + +Update theme for a specific company and application + +*Returned Response:* + + + + +[ThemesSchema](#ThemesSchema) + +Theme updated successfully + + + + +
+  Examples: + + +
+  example1 + +```json +{ + "value": { + "_id": "64be4423bc7b28003211322e", + "applied": false, + "is_private": false, + "tags": [], + "application_id": "6487ea376e1442284917c44e", + "marketplace_theme_id": "64be1f4cceb549012e93d5f4", + "meta": { + "payment": { + "is_paid": false, + "amount": 0 + }, + "description": "Indulge in the epitome of luxury with our expertly crafted theme, showcasing a high-end aesthetic that exudes elegance. Designed with meticulous attention to detail, our features are tailored to elevate your products and amplify your brand identity.", + "industry": [ + "Arts and crafts", + "Baby and kids", + "Books, music, and video" + ], + "release": { + "notes": "

Emerge release notes. Fyndx1 theme submission.

" + }, + "images": { + "desktop": "https://cdn.pixelbin.io/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/McHjwol_h-images_desktop.webp", + "mobile": "https://cdn.pixelbin.io/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/bq6gXrmVE-images_mobile.webp" + }, + "slug": "emerge" + }, + "name": "Emerge", + "template_theme_id": "64be1fdc2139f66b3ca2e94d", + "version": "1.0.153", + "styles": {}, + "created_at": "2023-07-24T09:28:03.845Z", + "updated_at": "2023-07-31T12:14:13.097Z", + "theme_type": "vue2", + "assets": { + "umd_js": { + "links": [ + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64b0eb01c35f990518880a82/theme/assets/yf7ijNZKa_themeBundle.umd.min.8.js", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64b0eb01c35f990518880a82/theme/assets/yf7ijNZKa_themeBundle.umd.min.cart.js", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64b0eb01c35f990518880a82/theme/assets/yf7ijNZKa_themeBundle.umd.min.extras.js", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64b0eb01c35f990518880a82/theme/assets/yf7ijNZKa_themeBundle.umd.min.products-listing.js", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64b0eb01c35f990518880a82/theme/assets/yf7ijNZKa_themeBundle.umd.min.products.js", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64b0eb01c35f990518880a82/theme/assets/yf7ijNZKa_themeBundle.umd.min.profile.js", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64b0eb01c35f990518880a82/theme/assets/yf7ijNZKa_themeBundle.umd.min.vendors_products-listing.js", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64b0eb01c35f990518880a82/theme/assets/yf7ijNZKa_themeBundle.umd.min.vendors_products.js", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64b0eb01c35f990518880a82/theme/assets/yf7ijNZKa_themeBundle.umd.min.js" + ], + "link": "" + }, + "common_js": { + "link": "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64b0eb01c35f990518880a82/theme/assets/yf7ijNZKa_themeBundle.common.js" + }, + "css": { + "links": [ + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64b0eb01c35f990518880a82/theme/assets/yf7ijNZKa_cart.1b038cd83e502f2d58bc.css", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64b0eb01c35f990518880a82/theme/assets/yf7ijNZKa_extras.f8a9789ae6a06b0bd503.css", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64b0eb01c35f990518880a82/theme/assets/yf7ijNZKa_products-listing.1d639747568baee211ba.css", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64b0eb01c35f990518880a82/theme/assets/yf7ijNZKa_products.c1f151d12b3f704fe028.css", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64b0eb01c35f990518880a82/theme/assets/yf7ijNZKa_profile.c9e6a92612e4b423dbd7.css", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64b0eb01c35f990518880a82/theme/assets/yf7ijNZKa_themeBundle.css", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64b0eb01c35f990518880a82/theme/assets/yf7ijNZKa_vendors_products-listing.c8fe85761d60286348e3.css" + ], + "link": "" + } + }, + "font": { + "variants": { + "light": { + "name": "300", + "file": "https://fonts.gstatic.com/s/poppins/v9/pxiByp8kv8JHgFVrLDz8V1tvFP-KUEg.ttf" + }, + "regular": { + "name": "regular", + "file": "https://fonts.gstatic.com/s/poppins/v9/pxiEyp8kv8JHgFVrFJDUc1NECPY.ttf" + }, + "medium": { + "name": "500", + "file": "https://fonts.gstatic.com/s/poppins/v9/pxiByp8kv8JHgFVrLGT9V1tvFP-KUEg.ttf" + }, + "semi_bold": { + "name": "600", + "file": "https://fonts.gstatic.com/s/poppins/v9/pxiByp8kv8JHgFVrLEj6V1tvFP-KUEg.ttf" + }, + "bold": { + "name": "700", + "file": "https://fonts.gstatic.com/s/poppins/v9/pxiByp8kv8JHgFVrLCz7V1tvFP-KUEg.ttf" + } + }, + "family": "Poppins" + }, + "config": { + "current": "Default", + "list": [ + { + "name": "Default", + "global_config": { + "static": { + "props": { + "colors": { + "primary_color": "#000000", + "secondary_color": "#000000", + "accent_color": "#000000", + "link_color": "#4499FF", + "button_secondary_color": "#000000", + "bg_color": "#F8F8F8" + }, + "auth": { + "show_header_auth": false, + "show_footer_auth": false + }, + "palette": { + "general_setting": { + "theme": { + "page_background": "#F3F3ED", + "theme_accent": "#E1D0C8" + }, + "text": { + "text_heading": "#26201A", + "text_body": "#3C3131", + "text_label": "#7D7676", + "text_secondary": "#9C9C9C" + }, + "button": { + "button_primary": "#4E3F09", + "button_secondary": "#FFFFFF", + "button_link": "#B1655B" + }, + "sale_discount": { + "sale_badge_background": "#FFFFFF", + "sale_badge_text": "#1C958F", + "sale_discount_text": "#1C958F", + "sale_timer": "#994449" + }, + "header": { + "header_background": "#F3F3ED", + "header_nav": "#261A1A", + "header_icon": "#261A1A" + }, + "footer": { + "footer_background": "#2C231E", + "footer_bottom_background": "#231812", + "footer_heading_text": "#FFFFFF", + "footer_body_text": "#FFFFFF", + "footer_icon": "#FFFFFF" + } + }, + "advance_setting": { + "overlay_popup": { + "dialog_backgroung": "#FFFFFF", + "overlay": "#14130E" + }, + "divider_stroke_highlight": { + "divider_strokes": "#D4D1D1", + "highlight": "#EDECE9" + }, + "user_alerts": { + "success_background": "#C2DBC9", + "success_text": "#1C958F", + "error_background": "#E6D5D5", + "error_text": "#B24141", + "info_background": "#EBD3BC", + "info_text": "#D28F51" + } + } + }, + "extension": { + "header_top": [], + "header_bottom": [], + "footer_top": [], + "footer_bottom": [] + } + } + }, + "custom": { + "props": { + "header_bg_color": "#ffffff", + "header_text_color": "#000000", + "header_border_color": "#e1e1e1", + "header_icon_color": "#000000", + "header_cart_notification_bg_color": "#e8a76c", + "header_cart_notification_text_color": "#ffffff", + "header_nav_hover_color": "#999999", + "button_primary_color": "#ffffff", + "button_primary_label_color": "#000000", + "button_add_to_cart_color": "#000000", + "button_add_to_cart_label_color": "#ffffff", + "button_secondary_color": "#000000", + "button_secondary_label_color": "#ffffff", + "button_tertiary_color": "#000000", + "button_tertiary_label_color": "#000000", + "button_tertiary_hover_color": "#000000", + "button_tertiary_hover_text_color": "#ffffff", + "text_heading_link_color": "#000000", + "text_body_color": "#000000", + "text_price_color": "#000000", + "text_sale_price_color": "#fb406b", + "text_strikethrough_price_color": "#9b9b9b", + "text_discount_color": "#ee478d", + "footer_bg_color": "#ffffff", + "footer_text_color": "#999999", + "footer_border_color": "#e1e1e1", + "footer_nav_hover_color": "#000000", + "disable_cart": false, + "is_menu_below_logo": false, + "menu_position": "left" + } + } + }, + "page": [] + }, + { + "name": "Dark", + "global_config": { + "static": { + "props": { + "colors": { + "primary_color": "#000000", + "secondary_color": "#000000", + "accent_color": "#000000", + "link_color": "#4499FF", + "button_secondary_color": "#000000", + "bg_color": "#F8F8F8" + }, + "auth": { + "show_header_auth": false, + "show_footer_auth": false + }, + "palette": { + "general_setting": { + "theme": { + "page_background": "#F3F3ED", + "theme_accent": "#E1D0C8" + }, + "text": { + "text_heading": "#26201A", + "text_body": "#3C3131", + "text_label": "#7D7676", + "text_secondary": "#9C9C9C" + }, + "button": { + "button_primary": "#4E3F09", + "button_secondary": "#FFFFFF", + "button_link": "#B1655B" + }, + "sale_discount": { + "sale_badge_background": "#FFFFFF", + "sale_badge_text": "#1C958F", + "sale_discount_text": "#1C958F", + "sale_timer": "#994449" + }, + "header": { + "header_background": "#F3F3ED", + "header_nav": "#261A1A", + "header_icon": "#261A1A" + }, + "footer": { + "footer_background": "#2C231E", + "footer_bottom_background": "#231812", + "footer_heading_text": "#FFFFFF", + "footer_body_text": "#FFFFFF", + "footer_icon": "#FFFFFF" + } + }, + "advance_setting": { + "overlay_popup": { + "dialog_backgroung": "#FFFFFF", + "overlay": "#14130E" + }, + "divider_stroke_highlight": { + "divider_strokes": "#D4D1D1", + "highlight": "#EDECE9" + }, + "user_alerts": { + "success_background": "#C2DBC9", + "success_text": "#1C958F", + "error_background": "#E6D5D5", + "error_text": "#B24141", + "info_background": "#EBD3BC", + "info_text": "#D28F51" + } + } + }, + "extension": { + "header_top": [], + "header_bottom": [], + "footer_top": [], + "footer_bottom": [] + } + } + }, + "custom": { + "props": { + "header_bg_color": "#2e3032", + "header_text_color": "#ffffff", + "header_border_color": "#FFFFFF", + "header_icon_color": "#ffffff", + "header_cart_notification_bg_color": "#FFFFFF", + "header_cart_notification_text_color": "#2e3032", + "header_nav_hover_color": "#000000", + "button_primary_color": "#000000", + "button_primary_label_color": "#ffffff", + "button_add_to_cart_color": "#000000", + "button_add_to_cart_label_color": "#ffffff", + "button_secondary_color": "#000000", + "button_secondary_label_color": "#ffffff", + "button_tertiary_color": "#000000", + "button_tertiary_label_color": "#000000", + "button_tertiary_hover_color": "#000000", + "button_tertiary_hover_text_color": "#ffffff", + "text_heading_link_color": "#000000", + "text_body_color": "#000000", + "text_price_color": "#000000", + "text_sale_price_color": "#fb406b", + "text_strikethrough_price_color": "#9b9b9b", + "text_discount_color": "#ee478d", + "footer_bg_color": "#2e3032", + "footer_text_color": "#ffffff", + "footer_border_color": "#FFFFFF", + "footer_nav_hover_color": "#ffffff" + } + } + }, + "page": [] + }, + { + "name": "Blue", + "global_config": { + "static": { + "props": { + "colors": { + "primary_color": "#000000", + "secondary_color": "#000000", + "accent_color": "#000000", + "link_color": "#4499FF", + "button_secondary_color": "#000000", + "bg_color": "#F8F8F8" + }, + "auth": { + "show_header_auth": false, + "show_footer_auth": false + }, + "palette": { + "general_setting": { + "theme": { + "page_background": "#F3F3ED", + "theme_accent": "#E1D0C8" + }, + "text": { + "text_heading": "#26201A", + "text_body": "#3C3131", + "text_label": "#7D7676", + "text_secondary": "#9C9C9C" + }, + "button": { + "button_primary": "#4E3F09", + "button_secondary": "#FFFFFF", + "button_link": "#B1655B" + }, + "sale_discount": { + "sale_badge_background": "#FFFFFF", + "sale_badge_text": "#1C958F", + "sale_discount_text": "#1C958F", + "sale_timer": "#994449" + }, + "header": { + "header_background": "#F3F3ED", + "header_nav": "#261A1A", + "header_icon": "#261A1A" + }, + "footer": { + "footer_background": "#2C231E", + "footer_bottom_background": "#231812", + "footer_heading_text": "#FFFFFF", + "footer_body_text": "#FFFFFF", + "footer_icon": "#FFFFFF" + } + }, + "advance_setting": { + "overlay_popup": { + "dialog_backgroung": "#FFFFFF", + "overlay": "#14130E" + }, + "divider_stroke_highlight": { + "divider_strokes": "#D4D1D1", + "highlight": "#EDECE9" + }, + "user_alerts": { + "success_background": "#C2DBC9", + "success_text": "#1C958F", + "error_background": "#E6D5D5", + "error_text": "#B24141", + "info_background": "#EBD3BC", + "info_text": "#D28F51" + } + } + }, + "extension": { + "header_top": [], + "header_bottom": [], + "footer_top": [], + "footer_bottom": [] + } + } + }, + "custom": { + "props": { + "header_bg_color": "#7f9ed0", + "header_text_color": "#FFFFFF", + "header_border_color": "#FFFFFF", + "header_icon_color": "#FFFFFF", + "header_cart_notification_bg_color": "#2e3032", + "header_cart_notification_text_color": "#FFFFFF", + "header_nav_hover_color": "#2e3032", + "button_primary_color": "#ffffff", + "button_primary_label_color": "#000000", + "button_add_to_cart_color": "#000000", + "button_add_to_cart_label_color": "#ffffff", + "button_secondary_color": "#000000", + "button_secondary_label_color": "#ffffff", + "button_tertiary_color": "#000000", + "button_tertiary_label_color": "#000000", + "button_tertiary_hover_color": "#000000", + "button_tertiary_hover_text_color": "#ffffff", + "text_heading_link_color": "#000000", + "text_body_color": "#000000", + "text_price_color": "#000000", + "text_sale_price_color": "#fb406b", + "text_strikethrough_price_color": "#9b9b9b", + "text_discount_color": "#ee478d", + "footer_bg_color": "#7f9ed0", + "footer_text_color": "#FFFFFF", + "footer_border_color": "#FFFFFF", + "footer_nav_hover_color": "#2e3032" + } + } + }, + "page": [] + } + ], + "preset": { + "pages": [ + { + "sections": [ + { + "blocks": [], + "predicate": { + "screen": { + "mobile": true, + "desktop": true, + "tablet": true + }, + "user": { + "authenticated": true, + "anonymous": true + }, + "route": { + "selected": "none", + "exact_url": "" + } + }, + "name": "hero_image", + "props": { + "image": { + "value": "", + "type": "image_picker" + }, + "overlay_layout": { + "type": "select", + "value": "center" + }, + "overlay_image": { + "value": "", + "type": "image_picker" + }, + "overlay_text": { + "value": "", + "type": "text" + }, + "text_color": { + "value": "#000", + "type": "color" + }, + "button_link": { + "type": "url", + "value": "" + }, + "button_text": { + "value": "Shop Now", + "type": "text" + }, + "full_width": { + "value": true, + "type": "checkbox" + } + } + }, + { + "blocks": [], + "predicate": { + "screen": { + "mobile": true, + "desktop": true, + "tablet": true + }, + "user": { + "authenticated": true, + "anonymous": true + }, + "route": { + "selected": "none", + "exact_url": "" + } + }, + "name": "image_slideshow", + "props": { + "autoplay": { + "value": false, + "type": "checkbox" + }, + "full_width": { + "value": false, + "type": "checkbox" + }, + "slide_height": { + "value": "adapt", + "type": "select" + }, + "slide_interval": { + "value": 2, + "type": "range" + }, + "title": { + "value": "Trending", + "type": "text" + } + }, + "preset": { + "blocks": [ + { + "name": "Slide" + }, + { + "name": "Slide" + }, + { + "name": "Slide" + } + ] + } + }, + { + "blocks": [ + { + "type": "gallery_image", + "name": "Image", + "props": { + "image": { + "type": "image_picker", + "value": "" + }, + "caption": { + "type": "text", + "value": "" + }, + "link": { + "type": "url", + "value": "" + } + } + }, + { + "type": "gallery_image", + "name": "Image", + "props": { + "image": { + "type": "image_picker", + "value": "" + }, + "caption": { + "type": "text", + "value": "" + }, + "link": { + "type": "url", + "value": "" + } + } + }, + { + "type": "gallery_image", + "name": "Image", + "props": { + "image": { + "type": "image_picker", + "value": "" + }, + "caption": { + "type": "text", + "value": "" + }, + "link": { + "type": "url", + "value": "" + } + } + }, + { + "type": "gallery_image", + "name": "Image", + "props": { + "image": { + "type": "image_picker", + "value": "" + }, + "caption": { + "type": "text", + "value": "" + }, + "link": { + "type": "url", + "value": "" + } + } + } + ], + "predicate": { + "screen": { + "mobile": true, + "desktop": true, + "tablet": true + }, + "user": { + "authenticated": true, + "anonymous": true + }, + "route": { + "selected": "none", + "exact_url": "" + } + }, + "name": "image_gallery", + "props": { + "title": { + "type": "text", + "value": "Popular Brands" + }, + "layout": { + "value": "grid", + "type": "select" + }, + "item_count": { + "value": 4, + "type": "range" + }, + "cta_text": { + "value": "", + "type": "text" + }, + "cta_link": { + "type": "url", + "value": "" + }, + "full_width": { + "value": false, + "type": "checkbox" + } + }, + "preset": { + "blocks": [ + { + "name": "Image" + }, + { + "name": "Image" + }, + { + "name": "Image" + }, + { + "name": "Image" + } + ] + } + }, + { + "blocks": [], + "predicate": { + "screen": { + "mobile": true, + "desktop": true, + "tablet": true + }, + "user": { + "authenticated": true, + "anonymous": true + }, + "route": { + "selected": "none", + "exact_url": "" + } + }, + "name": "brands_listing", + "props": { + "brand_type": { + "value": "all", + "type": "radio" + }, + "cta_text": { + "value": "View all", + "type": "text" + }, + "department": { + "type": "department" + }, + "header": { + "type": "header" + }, + "items_per_row": { + "value": 5, + "type": "range" + }, + "layout": { + "value": "horizontal", + "type": "select" + }, + "title": { + "type": "text", + "value": "Brands" + }, + "view_options": { + "value": "fullview", + "type": "select" + } + } + }, + { + "blocks": [ + { + "type": "testimonial", + "name": "Testimonial", + "props": { + "testimonialText": { + "type": "textarea", + "value": "" + }, + "author_name": { + "type": "text" + }, + "author_description": { + "type": "text", + "value": "" + }, + "author_image": { + "type": "image_picker", + "value": "" + } + } + }, + { + "type": "testimonial", + "name": "Testimonial", + "props": { + "testimonialText": { + "type": "textarea", + "value": "" + }, + "author_name": { + "type": "text" + }, + "author_description": { + "type": "text", + "value": "" + }, + "author_image": { + "type": "image_picker", + "value": "" + } + } + }, + { + "type": "testimonial", + "name": "Testimonial", + "props": { + "testimonialText": { + "type": "textarea", + "value": "" + }, + "author_name": { + "type": "text" + }, + "author_description": { + "type": "text", + "value": "" + }, + "author_image": { + "type": "image_picker", + "value": "" + } + } + } + ], + "predicate": { + "screen": { + "mobile": true, + "desktop": true, + "tablet": true + }, + "user": { + "authenticated": true, + "anonymous": true + }, + "route": { + "selected": "none", + "exact_url": "" + } + }, + "name": "testimonials", + "props": { + "autoplay": { + "value": false, + "type": "checkbox" + }, + "slide_interval": { + "value": 2, + "type": "range" + } + }, + "preset": { + "blocks": [ + { + "name": "Testimonial" + }, + { + "name": "Testimonial" + }, + { + "name": "Testimonial" + } + ] + } + } + ], + "value": "home" + } + ] + }, + "global_schema": { + "props": [ + { + "type": "checkbox", + "id": "disable_cart", + "category": "Colors", + "label": "header" + } + ] + } + }, + "available_sections": [ + { + "props": [ + { + "type": "url", + "id": "banner_link", + "label": "Redirect Link" + }, + { + "type": "checkbox", + "id": "full_width", + "label": "Full width", + "info": "Check to allow items to take entire width of the viewport" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + } + ], + "blocks": [], + "name": "application_banner", + "label": "Application Banner" + }, + { + "props": [ + { + "type": "text", + "id": "title", + "label": "Title" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + }, + { + "type": "header", + "id": "header", + "value": "Choose Brands to Show" + }, + { + "id": "view_options", + "type": "select", + "options": [ + { + "value": "logo", + "text": "Logo View" + }, + { + "value": "fullview", + "text": "Logo and Banner View" + } + ], + "label": "View Options", + "info": "Brand card view options" + }, + { + "type": "radio", + "id": "brand_type", + "options": [ + { + "value": "all", + "text": "All" + }, + { + "value": "department", + "text": "Department" + }, + { + "value": "handpicked", + "text": "Handpicked" + } + ] + }, + { + "type": "department", + "id": "department", + "label": "Department", + "info": "Select a department of brands", + "note": "Department only applies if 'department' type is selected" + }, + { + "type": "range", + "id": "items_per_row", + "min": 3, + "max": 5, + "step": 1, + "unit": "", + "label": "Items per row", + "info": "Maximum items allowed per row" + }, + { + "id": "layout", + "type": "select", + "options": [ + { + "value": "grid", + "text": "Grid View" + }, + { + "value": "horizontal", + "text": "Horizontal View" + } + ], + "label": "Layout", + "info": "Alignment of content" + }, + { + "type": "text", + "id": "cta_text", + "label": "CTA Text" + } + ], + "blocks": [ + { + "type": "brand_item", + "name": "Brand Item", + "props": [ + { + "type": "brand", + "id": "brand", + "label": "Select Brand" + } + ] + } + ], + "name": "brands_listing", + "label": "Brands Listing" + }, + { + "props": [ + { + "type": "text", + "id": "title", + "label": "Title" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + }, + { + "type": "radio", + "id": "collection_type", + "options": [ + { + "value": "all", + "text": "All" + }, + { + "value": "handpicked", + "text": "Handpicked" + } + ] + }, + { + "type": "text", + "id": "tags_filter", + "label": "Filter by tags", + "info": "Filter by Tags " + }, + { + "type": "range", + "id": "items_per_row", + "min": 3, + "max": 5, + "step": 1, + "unit": "", + "label": "Max items per row", + "info": "Maximum items allowed per row" + }, + { + "id": "layout", + "type": "select", + "options": [ + { + "value": "grid", + "text": "Grid View" + }, + { + "value": "horizontal", + "text": "Horizontal View" + } + ], + "label": "Layout", + "info": "Alignment of content" + }, + { + "type": "text", + "id": "cta_text", + "label": "CTA Text" + } + ], + "blocks": [ + { + "type": "collection-item", + "name": "collection Item", + "props": [ + { + "type": "collection", + "id": "collection", + "label": "Select Collection" + } + ] + } + ], + "name": "collections_listing", + "label": "Collections Listing" + }, + { + "props": [ + { + "type": "code", + "id": "code", + "label": "Custom HTML", + "info": "Add Your custom HTML Code below. You can also use the full screen icon to open a code editor and add your code" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + } + ], + "blocks": [], + "name": "custom_html", + "label": "Custom HTML" + }, + { + "props": [ + { + "type": "extension", + "id": "extension", + "label": "Extension Positions", + "info": "Handle extension in these positions", + "positions": [ + { + "value": "section_extension", + "text": "" + } + ] + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + } + ], + "blocks": [], + "name": "section_extension", + "label": "Extensions" + }, + { + "props": [ + { + "type": "text", + "id": "title", + "label": "Title" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + }, + { + "type": "collection", + "id": "collection", + "label": "Collection", + "info": "Select a collection to display its products" + }, + { + "type": "range", + "id": "items_per_row", + "min": 2, + "max": 5, + "step": 1, + "unit": "", + "label": "Products per row", + "info": "Maximum items allowed per row" + }, + { + "id": "layout", + "type": "select", + "options": [ + { + "value": "grid", + "text": "Grid View" + }, + { + "value": "horizontal", + "text": "Horizontal View" + } + ], + "label": "Layout", + "info": "Alignment of content" + }, + { + "type": "checkbox", + "id": "autoplay", + "label": "AutoPlay Slides", + "info": "Check to autoplay slides" + }, + { + "type": "range", + "id": "slide_interval", + "min": 1, + "max": 10, + "step": 1, + "unit": "sec", + "label": "Change slides after every", + "info": "Autoplay slide duration" + } + ], + "blocks": [], + "name": "featured_collection", + "label": "Featured Collection" + }, + { + "props": [ + { + "id": "image", + "type": "image_picker", + "label": "Hero Image" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + }, + { + "id": "overlay_layout", + "type": "select", + "options": [ + { + "value": "left", + "text": "Align Left" + }, + { + "value": "center", + "text": "Align Center" + }, + { + "value": "right", + "text": "Align Right" + } + ], + "label": "Overlay Layout", + "info": "Alignment of overlay content" + }, + { + "type": "image_picker", + "id": "overlay_image", + "label": "Overlay image", + "info": "Overlay Image" + }, + { + "type": "text", + "id": "overlay_text", + "label": "Overlay Text" + }, + { + "type": "color", + "id": "text_color", + "label": "Text Color" + }, + { + "type": "url", + "id": "button_link", + "label": "Redirect Link" + }, + { + "type": "text", + "id": "button_text", + "label": "Button Text" + }, + { + "type": "checkbox", + "id": "full_width", + "label": "Full width", + "info": "Check to allow items to take entire width of the viewport" + }, + { + "type": "checkbox", + "id": "fullscreen_image", + "label": "Fullscreen Banner ", + "info": "Check to allow items to take entire viewport" + } + ], + "blocks": [], + "name": "hero_image", + "label": "Hero Image" + }, + { + "props": [ + { + "type": "video", + "id": "videoFile", + "label": "Primary Video" + }, + { + "id": "videoUrl", + "type": "text", + "label": "Video URL", + "info": "Supports MP4 Video & Youtube Video URL" + }, + { + "type": "checkbox", + "id": "autoplay", + "label": "Autoplay", + "info": "Check to enable autoplay (Video will be muted if autoplay is active)" + }, + { + "type": "checkbox", + "id": "hidecontrols", + "label": "Hide Video Controls", + "info": "check to disable video controls" + }, + { + "type": "checkbox", + "id": "showloop", + "label": "Play Video in Loop", + "info": "check to disable Loop" + }, + { + "type": "text", + "id": "title", + "label": "Heading" + }, + { + "id": "coverUrl", + "type": "image_picker", + "label": "Thumbnail Image" + } + ], + "blocks": [], + "name": "hero_video-v2", + "label": "Hero Video V2" + }, + { + "props": [ + { + "id": "video_url", + "type": "text", + "label": "Video URL", + "info": "Supports MP4 Video & Youtube Video URL" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + }, + { + "type": "checkbox", + "id": "autoplay", + "label": "Autoplay", + "info": "Check to enable autoplay (Video will be muted if autoplay is active)" + }, + { + "type": "checkbox", + "id": "controls", + "label": "Video Controls", + "info": "Uncheck to disable video controls" + }, + { + "type": "checkbox", + "id": "full_width", + "label": "Full width", + "info": "Check to allow items to take entire width of the viewport" + }, + { + "type": "checkbox", + "id": "bg_video", + "label": "Video In Background", + "info": "Use video in background with overlay (Overlay Image & Video Controls will be disabled by default on website)" + }, + { + "type": "select", + "id": "size", + "options": [ + { + "value": "small", + "text": "Small" + }, + { + "value": "medium", + "text": "Medium" + }, + { + "value": "large", + "text": "Large" + }, + { + "value": "adapt", + "text": "Adapt" + }, + { + "value": "fullscreen", + "text": "Fullscreen" + } + ], + "label": "Video Height", + "info": "Height of Video" + }, + { + "type": "checkbox", + "id": "enable_overlay_image", + "label": "Enable Overlay Image" + }, + { + "id": "cover_url", + "type": "image_picker", + "label": "Video Overlay Image" + }, + { + "type": "checkbox", + "id": "enable_overlay_color", + "label": "Enable Overlay Colour" + }, + { + "type": "color", + "id": "overlay_color", + "label": "Overlay Color" + }, + { + "type": "range", + "id": "overlay_opacity", + "min": 0, + "max": 1, + "step": 0.1, + "unit": "", + "label": "Overlay Opacity" + }, + { + "type": "select", + "id": "overlay_size", + "options": [ + { + "value": "container", + "text": "Container (Default)" + }, + { + "value": "content", + "text": "Content" + } + ], + "label": "Overlay Size" + }, + { + "id": "overlay_position", + "type": "select", + "options": [ + { + "value": "top-left", + "text": "Top Left" + }, + { + "value": "top-center", + "text": "Top Center" + }, + { + "value": "top-right", + "text": "Top Right" + }, + { + "value": "center-left", + "text": "Center Left" + }, + { + "value": "center-center", + "text": "Center (Default)" + }, + { + "value": "center-right", + "text": "Center Right" + }, + { + "value": "bottom-left", + "text": "Bottom Left" + }, + { + "value": "bottom-center", + "text": "Bottom Center" + }, + { + "value": "bottom-right", + "text": "Bottom right" + } + ], + "label": "Overlay position", + "info": "Alignment of Overlay content(heading, sub-heading, button)" + }, + { + "type": "text", + "id": "heading", + "label": "Heading" + }, + { + "type": "color", + "id": "heading_color", + "label": "Heading Text Color" + }, + { + "type": "text", + "id": "sub_heading", + "label": "Sub-heading" + }, + { + "type": "color", + "id": "sub_heading_color", + "label": "Sub-heading Text Color" + }, + { + "type": "url", + "id": "button_link", + "label": "Redirect Link" + }, + { + "type": "text", + "id": "button_text", + "label": "Button Text" + } + ], + "blocks": [], + "name": "hero_video", + "label": "Hero Video" + }, + { + "props": [ + { + "type": "text", + "id": "title", + "label": "Title" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + }, + { + "id": "layout", + "type": "select", + "options": [ + { + "value": "grid", + "text": "Grid View" + }, + { + "value": "horizontal", + "text": "Horizontal View" + } + ], + "label": "Layout", + "info": "Alignment of content" + }, + { + "type": "range", + "id": "item_count", + "min": 3, + "max": 4, + "step": 1, + "unit": "", + "label": "No of items", + "info": "Maximum items allowed per row for Horizontal view, for gallery max 5 are viewable and only 5 blocks are required" + }, + { + "type": "text", + "id": "cta_text", + "label": "CTA Text" + }, + { + "type": "url", + "id": "cta_link", + "label": "CTA Link", + "info": "Link to redirect" + }, + { + "type": "checkbox", + "id": "full_width", + "label": "Full width", + "info": "Check to allow items to take entire width of the viewport" + } + ], + "blocks": [ + { + "type": "gallery_image", + "name": "Image", + "props": [ + { + "type": "image_picker", + "id": "image", + "label": "Gallery Image" + }, + { + "type": "text", + "id": "caption", + "label": "Image Caption" + }, + { + "type": "url", + "id": "link", + "label": "Link", + "info": "Link to redirect" + } + ] + } + ], + "name": "image_gallery", + "label": "Image Gallery", + "preset": { + "blocks": [ + { + "name": "Image" + }, + { + "name": "Image" + }, + { + "name": "Image" + }, + { + "name": "Image" + } + ] + } + }, + { + "props": [ + { + "type": "text", + "id": "title", + "label": "Title" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + }, + { + "type": "checkbox", + "id": "autoplay", + "label": "AutoPlay Slides", + "info": "Check to autoplay slides" + }, + { + "type": "range", + "id": "slide_interval", + "min": 1, + "max": 10, + "step": 1, + "unit": "sec", + "label": "Change slides after every", + "info": "Autoplay slide duration" + }, + { + "type": "select", + "id": "slide_height", + "options": [ + { + "value": "adapt", + "text": "Adapt to first image" + }, + { + "value": "small", + "text": "Small" + }, + { + "value": "medium", + "text": "Medium" + }, + { + "value": "large", + "text": "Large" + } + ], + "label": "Slide height", + "info": "Size of the slide" + }, + { + "type": "checkbox", + "id": "full_width", + "label": "Full width", + "info": "Check to allow items to take entire width of the viewport" + } + ], + "blocks": [ + { + "type": "image_slide", + "name": "Slide", + "props": [ + { + "type": "image_picker", + "id": "image", + "label": "Image" + }, + { + "type": "url", + "id": "slide_link", + "label": "Slide Link" + } + ] + } + ], + "name": "image_slideshow", + "label": "Image Slideshow", + "preset": { + "blocks": [ + { + "name": "Slide" + }, + { + "name": "Slide" + }, + { + "name": "Slide" + } + ] + } + }, + { + "props": [ + { + "type": "image_picker", + "id": "image", + "label": "Image" + }, + { + "id": "video", + "type": "url", + "label": "Video" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + }, + { + "id": "cover", + "type": "url", + "label": "Video Cover Image" + }, + { + "type": "select", + "id": "media_alignment", + "options": [ + { + "value": "left", + "text": "Left" + }, + { + "value": "center", + "text": "Center" + }, + { + "value": "right", + "text": "Right" + } + ], + "label": "Media Alignment" + }, + { + "type": "text", + "id": "heading", + "label": "Heading" + }, + { + "type": "text", + "id": "text Pair large text with an image to give focus to your chosen product, collection, or blog post. Add details on availability, style, or even provide a review.", + "label": "Text" + }, + { + "type": "select", + "id": "text_alignment", + "options": [ + { + "value": "left", + "text": "Left" + }, + { + "value": "center", + "text": "Center" + }, + { + "value": "right", + "text": "Right" + } + ], + "label": "Text Alignment" + } + ], + "blocks": [], + "name": "media_with_text", + "label": "Media with text" + }, + { + "props": [ + { + "type": "text", + "id": "title", + "label": "Title" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + }, + { + "type": "checkbox", + "id": "autoplay", + "label": "AutoPlay Slides" + }, + { + "type": "range", + "id": "slide_interval", + "min": 1, + "max": 10, + "step": 1, + "unit": "sec", + "label": "Change slides every" + } + ], + "blocks": [ + { + "type": "testimonial", + "name": "Testimonial", + "props": [ + { + "type": "textarea", + "id": "testimonialText", + "label": "Text for Testimonial", + "info": "Text for testimonial", + "placeholder": "Text" + }, + { + "type": "text", + "id": "author_name", + "label": "Author name" + }, + { + "type": "text", + "id": "author_description", + "label": "Author Description" + }, + { + "type": "image_picker", + "id": "author_image", + "label": "Author Image" + } + ] + } + ], + "name": "testimonials", + "label": "Testimonial", + "preset": { + "blocks": [ + { + "name": "Testimonial" + }, + { + "name": "Testimonial" + }, + { + "name": "Testimonial" + } + ] + } + } + ], + "src": "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64b0eb01c35f990518880a82/theme/assets/7yuL57qP2-archive.zip" + } +} +``` +
+ +
+  example2 + +```json +{ + "value": { + "_id": "64b91fe317422a1e1392f85b", + "applied": true, + "is_private": true, + "tags": [], + "name": "Astra", + "version": "1.0.11", + "application_id": "7487ea376e1442284917c44e", + "styles": {}, + "template_theme_id": "64be264c0347c5002279b75f", + "created_at": "2023-07-24T07:20:44.629Z", + "updated_at": "2023-08-01T11:09:25.857Z", + "theme_type": "vue2", + "assets": { + "umd_js": { + "links": [ + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/O3s2Kmnsc_themeBundle.umd.min.9.js", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/O3s2Kmnsc_themeBundle.umd.min.cart.js", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/O3s2Kmnsc_themeBundle.umd.min.extras.js", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/O3s2Kmnsc_themeBundle.umd.min.products-listing_profile.js", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/O3s2Kmnsc_themeBundle.umd.min.products-listing.js", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/O3s2Kmnsc_themeBundle.umd.min.products.js", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/O3s2Kmnsc_themeBundle.umd.min.profile.js", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/O3s2Kmnsc_themeBundle.umd.min.vendors_products-listing.js", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/O3s2Kmnsc_themeBundle.umd.min.vendors_products.js", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/O3s2Kmnsc_themeBundle.umd.min.js" + ], + "link": "" + }, + "common_js": { + "link": "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/O3s2Kmnsc_themeBundle.common.js" + }, + "css": { + "links": [ + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/O3s2Kmnsc_extras.8604b743eb82cd74e4bb.css", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/O3s2Kmnsc_products-listing_profile.944723408675f52ed297.css", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/O3s2Kmnsc_products-listing.ca493ea7d081b4b575f7.css", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/O3s2Kmnsc_products.2c64f7731dab64227f0b.css", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/O3s2Kmnsc_profile.1b1467735927e188d272.css", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/O3s2Kmnsc_themeBundle.css", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/O3s2Kmnsc_vendors_products-listing.c8fe85761d60286348e3.css" + ], + "link": "" + } + }, + "font": { + "variants": { + "light": { + "name": "300", + "file": "https://fonts.gstatic.com/s/poppins/v20/pxiByp8kv8JHgFVrLDz8V1tvFP-KUEg.ttf" + }, + "regular": { + "name": "regular", + "file": "https://fonts.gstatic.com/s/poppins/v20/pxiEyp8kv8JHgFVrFJDUc1NECPY.ttf" + }, + "medium": { + "name": "500", + "file": "https://fonts.gstatic.com/s/poppins/v20/pxiByp8kv8JHgFVrLGT9V1tvFP-KUEg.ttf" + }, + "semi_bold": { + "name": "600", + "file": "https://fonts.gstatic.com/s/poppins/v20/pxiByp8kv8JHgFVrLEj6V1tvFP-KUEg.ttf" + }, + "bold": { + "name": "700", + "file": "https://fonts.gstatic.com/s/poppins/v20/pxiByp8kv8JHgFVrLCz7V1tvFP-KUEg.ttf" + } + }, + "family": "Poppins" + }, + "config": { + "current": "Default", + "list": [ + { + "name": "Default", + "global_config": { + "static": { + "props": { + "colors": { + "primary_color": "#000000", + "secondary_color": "#000000", + "accent_color": "#000000", + "link_color": "#4499FF", + "button_secondary_color": "#000000", + "bg_color": "#F8F8F8" + }, + "auth": { + "show_header_auth": false, + "show_footer_auth": false + }, + "palette": { + "general_setting": { + "theme": { + "page_background": "#F3F3ED", + "theme_accent": "#E1D0C8" + }, + "text": { + "text_heading": "#26201A", + "text_body": "#3C3131", + "text_label": "#7D7676", + "text_secondary": "#9C9C9C" + }, + "button": { + "button_primary": "#4E3F09", + "button_secondary": "#FFFFFF", + "button_link": "#B1655B" + }, + "sale_discount": { + "sale_badge_background": "#FFFFFF", + "sale_badge_text": "#1C958F", + "sale_discount_text": "#1C958F", + "sale_timer": "#994449" + }, + "header": { + "header_background": "#F3F3ED", + "header_nav": "#261A1A", + "header_icon": "#261A1A" + }, + "footer": { + "footer_background": "#2C231E", + "footer_bottom_background": "#231812", + "footer_heading_text": "#FFFFFF", + "footer_body_text": "#FFFFFF", + "footer_icon": "#FFFFFF" + } + }, + "advance_setting": { + "overlay_popup": { + "dialog_backgroung": "#FFFFFF", + "overlay": "#14130E" + }, + "divider_stroke_highlight": { + "divider_strokes": "#D4D1D1", + "highlight": "#EDECE9" + }, + "user_alerts": { + "success_background": "#C2DBC9", + "success_text": "#1C958F", + "error_background": "#E6D5D5", + "error_text": "#B24141", + "info_background": "#EBD3BC", + "info_text": "#D28F51" + } + } + }, + "extension": { + "header_top": [], + "header_bottom": [], + "footer_top": [], + "footer_bottom": [] + } + } + }, + "custom": { + "props": { + "header_bg_color": "#ffffff", + "header_text_color": "#000000", + "header_border_color": "#e1e1e1", + "header_icon_color": "#000000", + "header_cart_notification_bg_color": "#e8a76c", + "header_cart_notification_text_color": "#ffffff", + "header_nav_hover_color": "#999999", + "button_primary_color": "#ffffff", + "button_primary_label_color": "#000000", + "button_add_to_cart_color": "#000000", + "button_add_to_cart_label_color": "#ffffff", + "button_secondary_color": "#000000", + "button_secondary_label_color": "#ffffff", + "button_tertiary_color": "#000000", + "button_tertiary_label_color": "#000000", + "button_tertiary_hover_color": "#000000", + "button_tertiary_hover_text_color": "#ffffff", + "text_heading_link_color": "#000000", + "text_body_color": "#000000", + "text_price_color": "#000000", + "text_sale_price_color": "#fb406b", + "text_strikethrough_price_color": "#9b9b9b", + "text_discount_color": "#ee478d", + "footer_bg_color": "#ffffff", + "footer_text_color": "#999999", + "footer_border_color": "#e1e1e1", + "footer_nav_hover_color": "#000000", + "disable_cart": false, + "is_menu_below_logo": false, + "menu_position": "left" + } + } + }, + "page": [] + }, + { + "name": "Dark", + "global_config": { + "static": { + "props": { + "colors": { + "primary_color": "#000000", + "secondary_color": "#000000", + "accent_color": "#000000", + "link_color": "#4499FF", + "button_secondary_color": "#000000", + "bg_color": "#F8F8F8" + }, + "auth": { + "show_header_auth": false, + "show_footer_auth": false + }, + "palette": { + "general_setting": { + "theme": { + "page_background": "#F3F3ED", + "theme_accent": "#E1D0C8" + }, + "text": { + "text_heading": "#26201A", + "text_body": "#3C3131", + "text_label": "#7D7676", + "text_secondary": "#9C9C9C" + }, + "button": { + "button_primary": "#4E3F09", + "button_secondary": "#FFFFFF", + "button_link": "#B1655B" + }, + "sale_discount": { + "sale_badge_background": "#FFFFFF", + "sale_badge_text": "#1C958F", + "sale_discount_text": "#1C958F", + "sale_timer": "#994449" + }, + "header": { + "header_background": "#F3F3ED", + "header_nav": "#261A1A", + "header_icon": "#261A1A" + }, + "footer": { + "footer_background": "#2C231E", + "footer_bottom_background": "#231812", + "footer_heading_text": "#FFFFFF", + "footer_body_text": "#FFFFFF", + "footer_icon": "#FFFFFF" + } + }, + "advance_setting": { + "overlay_popup": { + "dialog_backgroung": "#FFFFFF", + "overlay": "#14130E" + }, + "divider_stroke_highlight": { + "divider_strokes": "#D4D1D1", + "highlight": "#EDECE9" + }, + "user_alerts": { + "success_background": "#C2DBC9", + "success_text": "#1C958F", + "error_background": "#E6D5D5", + "error_text": "#B24141", + "info_background": "#EBD3BC", + "info_text": "#D28F51" + } + } + }, + "extension": { + "header_top": [], + "header_bottom": [], + "footer_top": [], + "footer_bottom": [] + } + } + }, + "custom": { + "props": { + "header_bg_color": "#2e3032", + "header_text_color": "#ffffff", + "header_border_color": "#FFFFFF", + "header_icon_color": "#ffffff", + "header_cart_notification_bg_color": "#FFFFFF", + "header_cart_notification_text_color": "#2e3032", + "header_nav_hover_color": "#000000", + "button_primary_color": "#000000", + "button_primary_label_color": "#ffffff", + "button_add_to_cart_color": "#000000", + "button_add_to_cart_label_color": "#ffffff", + "button_secondary_color": "#000000", + "button_secondary_label_color": "#ffffff", + "button_tertiary_color": "#000000", + "button_tertiary_label_color": "#000000", + "button_tertiary_hover_color": "#000000", + "button_tertiary_hover_text_color": "#ffffff", + "text_heading_link_color": "#000000", + "text_body_color": "#000000", + "text_price_color": "#000000", + "text_sale_price_color": "#fb406b", + "text_strikethrough_price_color": "#9b9b9b", + "text_discount_color": "#ee478d", + "footer_bg_color": "#2e3032", + "footer_text_color": "#ffffff", + "footer_border_color": "#FFFFFF", + "footer_nav_hover_color": "#ffffff" + } + } + }, + "page": [] + }, + { + "name": "Blue", + "global_config": { + "static": { + "props": { + "colors": { + "primary_color": "#000000", + "secondary_color": "#000000", + "accent_color": "#000000", + "link_color": "#4499FF", + "button_secondary_color": "#000000", + "bg_color": "#F8F8F8" + }, + "auth": { + "show_header_auth": false, + "show_footer_auth": false + }, + "palette": { + "general_setting": { + "theme": { + "page_background": "#F3F3ED", + "theme_accent": "#E1D0C8" + }, + "text": { + "text_heading": "#26201A", + "text_body": "#3C3131", + "text_label": "#7D7676", + "text_secondary": "#9C9C9C" + }, + "button": { + "button_primary": "#4E3F09", + "button_secondary": "#FFFFFF", + "button_link": "#B1655B" + }, + "sale_discount": { + "sale_badge_background": "#FFFFFF", + "sale_badge_text": "#1C958F", + "sale_discount_text": "#1C958F", + "sale_timer": "#994449" + }, + "header": { + "header_background": "#F3F3ED", + "header_nav": "#261A1A", + "header_icon": "#261A1A" + }, + "footer": { + "footer_background": "#2C231E", + "footer_bottom_background": "#231812", + "footer_heading_text": "#FFFFFF", + "footer_body_text": "#FFFFFF", + "footer_icon": "#FFFFFF" + } + }, + "advance_setting": { + "overlay_popup": { + "dialog_backgroung": "#FFFFFF", + "overlay": "#14130E" + }, + "divider_stroke_highlight": { + "divider_strokes": "#D4D1D1", + "highlight": "#EDECE9" + }, + "user_alerts": { + "success_background": "#C2DBC9", + "success_text": "#1C958F", + "error_background": "#E6D5D5", + "error_text": "#B24141", + "info_background": "#EBD3BC", + "info_text": "#D28F51" + } + } + }, + "extension": { + "header_top": [], + "header_bottom": [], + "footer_top": [], + "footer_bottom": [] + } + } + }, + "custom": { + "props": { + "header_bg_color": "#7f9ed0", + "header_text_color": "#FFFFFF", + "header_border_color": "#FFFFFF", + "header_icon_color": "#FFFFFF", + "header_cart_notification_bg_color": "#2e3032", + "header_cart_notification_text_color": "#FFFFFF", + "header_nav_hover_color": "#2e3032", + "button_primary_color": "#ffffff", + "button_primary_label_color": "#000000", + "button_add_to_cart_color": "#000000", + "button_add_to_cart_label_color": "#ffffff", + "button_secondary_color": "#000000", + "button_secondary_label_color": "#ffffff", + "button_tertiary_color": "#000000", + "button_tertiary_label_color": "#000000", + "button_tertiary_hover_color": "#000000", + "button_tertiary_hover_text_color": "#ffffff", + "text_heading_link_color": "#000000", + "text_body_color": "#000000", + "text_price_color": "#000000", + "text_sale_price_color": "#fb406b", + "text_strikethrough_price_color": "#9b9b9b", + "text_discount_color": "#ee478d", + "footer_bg_color": "#7f9ed0", + "footer_text_color": "#FFFFFF", + "footer_border_color": "#FFFFFF", + "footer_nav_hover_color": "#2e3032" + } + } + }, + "page": [] + } + ], + "preset": { + "pages": [ + { + "sections": [ + { + "blocks": [], + "predicate": { + "screen": { + "mobile": true, + "desktop": true, + "tablet": true + }, + "user": { + "authenticated": true, + "anonymous": true + }, + "route": { + "selected": "none", + "exact_url": "" + } + }, + "name": "hero_image", + "props": { + "image": { + "value": "", + "type": "image_picker" + }, + "overlay_layout": { + "type": "select", + "value": "center" + }, + "overlay_image": { + "value": "", + "type": "image_picker" + }, + "overlay_text": { + "value": "", + "type": "text" + }, + "text_color": { + "value": "#000", + "type": "color" + }, + "button_link": { + "type": "url", + "value": "" + }, + "button_text": { + "value": "Shop Now", + "type": "text" + }, + "full_width": { + "value": true, + "type": "checkbox" + } + } + }, + { + "blocks": [], + "predicate": { + "screen": { + "mobile": true, + "desktop": true, + "tablet": true + }, + "user": { + "authenticated": true, + "anonymous": true + }, + "route": { + "selected": "none", + "exact_url": "" + } + }, + "name": "image_slideshow", + "props": { + "autoplay": { + "value": false, + "type": "checkbox" + }, + "full_width": { + "value": false, + "type": "checkbox" + }, + "slide_height": { + "value": "adapt", + "type": "select" + }, + "slide_interval": { + "value": 2, + "type": "range" + }, + "title": { + "value": "Trending", + "type": "text" + } + }, + "preset": { + "blocks": [ + { + "name": "Slide" + }, + { + "name": "Slide" + }, + { + "name": "Slide" + } + ] + } + }, + { + "blocks": [ + { + "type": "gallery_image", + "name": "Image", + "props": { + "image": { + "type": "image_picker", + "value": "" + }, + "caption": { + "type": "text", + "value": "" + }, + "link": { + "type": "url", + "value": "" + } + } + }, + { + "type": "gallery_image", + "name": "Image", + "props": { + "image": { + "type": "image_picker", + "value": "" + }, + "caption": { + "type": "text", + "value": "" + }, + "link": { + "type": "url", + "value": "" + } + } + }, + { + "type": "gallery_image", + "name": "Image", + "props": { + "image": { + "type": "image_picker", + "value": "" + }, + "caption": { + "type": "text", + "value": "" + }, + "link": { + "type": "url", + "value": "" + } + } + }, + { + "type": "gallery_image", + "name": "Image", + "props": { + "image": { + "type": "image_picker", + "value": "" + }, + "caption": { + "type": "text", + "value": "" + }, + "link": { + "type": "url", + "value": "" + } + } + } + ], + "predicate": { + "screen": { + "mobile": true, + "desktop": true, + "tablet": true + }, + "user": { + "authenticated": true, + "anonymous": true + }, + "route": { + "selected": "none", + "exact_url": "" + } + }, + "name": "image_gallery", + "props": { + "title": { + "type": "text", + "value": "Popular Brands" + }, + "layout": { + "value": "grid", + "type": "select" + }, + "item_count": { + "value": 4, + "type": "range" + }, + "cta_text": { + "value": "", + "type": "text" + }, + "cta_link": { + "type": "url", + "value": "" + }, + "full_width": { + "value": false, + "type": "checkbox" + } + }, + "preset": { + "blocks": [ + { + "name": "Image" + }, + { + "name": "Image" + }, + { + "name": "Image" + }, + { + "name": "Image" + } + ] + } + }, + { + "blocks": [], + "predicate": { + "screen": { + "mobile": true, + "desktop": true, + "tablet": true + }, + "user": { + "authenticated": true, + "anonymous": true + }, + "route": { + "selected": "none", + "exact_url": "" + } + }, + "name": "brands_listing", + "props": { + "brand_type": { + "value": "all", + "type": "radio" + }, + "cta_text": { + "value": "View all", + "type": "text" + }, + "department": { + "type": "department" + }, + "header": { + "type": "header" + }, + "items_per_row": { + "value": 5, + "type": "range" + }, + "layout": { + "value": "horizontal", + "type": "select" + }, + "title": { + "type": "text", + "value": "Brands" + }, + "view_options": { + "value": "fullview", + "type": "select" + } + } + }, + { + "blocks": [ + { + "type": "testimonial", + "name": "Testimonial", + "props": { + "testimonialText": { + "type": "textarea", + "value": "" + }, + "author_name": { + "type": "text" + }, + "author_description": { + "type": "text", + "value": "" + }, + "author_image": { + "type": "image_picker", + "value": "" + } + } + }, + { + "type": "testimonial", + "name": "Testimonial", + "props": { + "testimonialText": { + "type": "textarea", + "value": "" + }, + "author_name": { + "type": "text" + }, + "author_description": { + "type": "text", + "value": "" + }, + "author_image": { + "type": "image_picker", + "value": "" + } + } + }, + { + "type": "testimonial", + "name": "Testimonial", + "props": { + "testimonialText": { + "type": "textarea", + "value": "" + }, + "author_name": { + "type": "text" + }, + "author_description": { + "type": "text", + "value": "" + }, + "author_image": { + "type": "image_picker", + "value": "" + } + } + } + ], + "predicate": { + "screen": { + "mobile": true, + "desktop": true, + "tablet": true + }, + "user": { + "authenticated": true, + "anonymous": true + }, + "route": { + "selected": "none", + "exact_url": "" + } + }, + "name": "testimonials", + "props": { + "autoplay": { + "value": false, + "type": "checkbox" + }, + "slide_interval": { + "value": 2, + "type": "range" + } + }, + "preset": { + "blocks": [ + { + "name": "Testimonial" + }, + { + "name": "Testimonial" + }, + { + "name": "Testimonial" + } + ] + } + } + ], + "value": "home" + } + ] + }, + "global_schema": { + "props": [ + { + "type": "checkbox", + "id": "disable_cart", + "category": "Colors", + "label": "header" + } + ] + } + }, + "available_sections": [ + { + "props": [ + { + "type": "url", + "id": "banner_link", + "label": "Redirect Link" + }, + { + "type": "checkbox", + "id": "full_width", + "label": "Full width", + "info": "Check to allow items to take entire width of the viewport" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + } + ], + "blocks": [], + "name": "application_banner", + "label": "Application Banner" + }, + { + "props": [ + { + "type": "text", + "id": "title", + "label": "Title" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + }, + { + "type": "header", + "id": "header", + "value": "Choose Brands to Show" + }, + { + "id": "view_options", + "type": "select", + "options": [ + { + "value": "logo", + "text": "Logo View" + }, + { + "value": "fullview", + "text": "Logo and Banner View" + } + ], + "label": "View Options", + "info": "Brand card view options" + }, + { + "type": "radio", + "id": "brand_type", + "options": [ + { + "value": "all", + "text": "All" + }, + { + "value": "department", + "text": "Department" + }, + { + "value": "handpicked", + "text": "Handpicked" + } + ] + }, + { + "type": "department", + "id": "department", + "label": "Department", + "info": "Select a department of brands", + "note": "Department only applies if 'department' type is selected" + }, + { + "type": "range", + "id": "items_per_row", + "min": 3, + "max": 5, + "step": 1, + "unit": "", + "label": "Items per row", + "info": "Maximum items allowed per row" + }, + { + "id": "layout", + "type": "select", + "options": [ + { + "value": "grid", + "text": "Grid View" + }, + { + "value": "horizontal", + "text": "Horizontal View" + } + ], + "label": "Layout", + "info": "Alignment of content" + }, + { + "type": "text", + "id": "cta_text", + "label": "CTA Text" + } + ], + "blocks": [ + { + "type": "brand_item", + "name": "Brand Item", + "props": [ + { + "type": "brand", + "id": "brand", + "label": "Select Brand" + } + ] + } + ], + "name": "brands_listing", + "label": "Brands Listing" + }, + { + "props": [ + { + "type": "text", + "id": "title", + "label": "Title" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + }, + { + "type": "radio", + "id": "collection_type", + "options": [ + { + "value": "all", + "text": "All" + }, + { + "value": "handpicked", + "text": "Handpicked" + } + ] + }, + { + "type": "text", + "id": "tags_filter", + "label": "Filter by tags", + "info": "Filter by Tags " + }, + { + "type": "range", + "id": "items_per_row", + "min": 3, + "max": 5, + "step": 1, + "unit": "", + "label": "Max items per row", + "info": "Maximum items allowed per row" + }, + { + "id": "layout", + "type": "select", + "options": [ + { + "value": "grid", + "text": "Grid View" + }, + { + "value": "horizontal", + "text": "Horizontal View" + } + ], + "label": "Layout", + "info": "Alignment of content" + }, + { + "type": "text", + "id": "cta_text", + "label": "CTA Text" + } + ], + "blocks": [ + { + "type": "collection-item", + "name": "collection Item", + "props": [ + { + "type": "collection", + "id": "collection", + "label": "Select Collection" + } + ] + } + ], + "name": "collections_listing", + "label": "Collections Listing" + }, + { + "props": [ + { + "type": "code", + "id": "code", + "label": "Custom HTML", + "info": "Add Your custom HTML Code below. You can also use the full screen icon to open a code editor and add your code" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + } + ], + "blocks": [], + "name": "custom_html", + "label": "Custom HTML" + }, + { + "props": [ + { + "type": "extension", + "id": "extension", + "label": "Extension Positions", + "info": "Handle extension in these positions", + "positions": [ + { + "value": "section_extension", + "text": "" + } + ] + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + } + ], + "blocks": [], + "name": "section_extension", + "label": "Extensions" + }, + { + "props": [ + { + "type": "text", + "id": "title", + "label": "Title" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + }, + { + "type": "collection", + "id": "collection", + "label": "Collection", + "info": "Select a collection to display its products" + }, + { + "type": "range", + "id": "items_per_row", + "min": 2, + "max": 5, + "step": 1, + "unit": "", + "label": "Products per row", + "info": "Maximum items allowed per row" + }, + { + "id": "layout", + "type": "select", + "options": [ + { + "value": "grid", + "text": "Grid View" + }, + { + "value": "horizontal", + "text": "Horizontal View" + } + ], + "label": "Layout", + "info": "Alignment of content" + }, + { + "type": "checkbox", + "id": "autoplay", + "label": "AutoPlay Slides", + "info": "Check to autoplay slides" + }, + { + "type": "range", + "id": "slide_interval", + "min": 1, + "max": 10, + "step": 1, + "unit": "sec", + "label": "Change slides after every", + "info": "Autoplay slide duration" + } + ], + "blocks": [], + "name": "featured_collection", + "label": "Featured Collection" + }, + { + "props": [ + { + "id": "image", + "type": "image_picker", + "label": "Hero Image" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + }, + { + "id": "overlay_layout", + "type": "select", + "options": [ + { + "value": "left", + "text": "Align Left" + }, + { + "value": "center", + "text": "Align Center" + }, + { + "value": "right", + "text": "Align Right" + } + ], + "label": "Overlay Layout", + "info": "Alignment of overlay content" + }, + { + "type": "image_picker", + "id": "overlay_image", + "label": "Overlay image", + "info": "Overlay Image" + }, + { + "type": "text", + "id": "overlay_text", + "label": "Overlay Text" + }, + { + "type": "color", + "id": "text_color", + "label": "Text Color" + }, + { + "type": "url", + "id": "button_link", + "label": "Redirect Link" + }, + { + "type": "text", + "id": "button_text", + "label": "Button Text" + }, + { + "type": "checkbox", + "id": "full_width", + "label": "Full width", + "info": "Check to allow items to take entire width of the viewport" + }, + { + "type": "checkbox", + "id": "fullscreen_image", + "label": "Fullscreen Banner ", + "info": "Check to allow items to take entire viewport" + } + ], + "blocks": [], + "name": "hero_image", + "label": "Hero Image" + }, + { + "props": [ + { + "type": "video", + "id": "videoFile", + "label": "Primary Video" + }, + { + "id": "videoUrl", + "type": "text", + "label": "Video URL", + "info": "Supports MP4 Video & Youtube Video URL" + }, + { + "type": "checkbox", + "id": "autoplay", + "label": "Autoplay", + "info": "Check to enable autoplay (Video will be muted if autoplay is active)" + }, + { + "type": "checkbox", + "id": "hidecontrols", + "label": "Hide Video Controls", + "info": "check to disable video controls" + }, + { + "type": "checkbox", + "id": "showloop", + "label": "Play Video in Loop", + "info": "check to disable Loop" + }, + { + "type": "text", + "id": "title", + "label": "Heading" + }, + { + "id": "coverUrl", + "type": "image_picker", + "label": "Thumbnail Image" + } + ], + "blocks": [], + "name": "hero_video-v2", + "label": "Hero Video V2" + }, + { + "props": [ + { + "id": "video_url", + "type": "text", + "label": "Video URL", + "info": "Supports MP4 Video & Youtube Video URL" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + }, + { + "type": "checkbox", + "id": "autoplay", + "label": "Autoplay", + "info": "Check to enable autoplay (Video will be muted if autoplay is active)" + }, + { + "type": "checkbox", + "id": "controls", + "label": "Video Controls", + "info": "Uncheck to disable video controls" + }, + { + "type": "checkbox", + "id": "full_width", + "label": "Full width", + "info": "Check to allow items to take entire width of the viewport" + }, + { + "type": "checkbox", + "id": "bg_video", + "label": "Video In Background", + "info": "Use video in background with overlay (Overlay Image & Video Controls will be disabled by default on website)" + }, + { + "type": "select", + "id": "size", + "options": [ + { + "value": "small", + "text": "Small" + }, + { + "value": "medium", + "text": "Medium" + }, + { + "value": "large", + "text": "Large" + }, + { + "value": "adapt", + "text": "Adapt" + }, + { + "value": "fullscreen", + "text": "Fullscreen" + } + ], + "label": "Video Height", + "info": "Height of Video" + }, + { + "type": "checkbox", + "id": "enable_overlay_image", + "label": "Enable Overlay Image" + }, + { + "id": "cover_url", + "type": "image_picker", + "label": "Video Overlay Image" + }, + { + "type": "checkbox", + "id": "enable_overlay_color", + "label": "Enable Overlay Colour" + }, + { + "type": "color", + "id": "overlay_color", + "label": "Overlay Color" + }, + { + "type": "range", + "id": "overlay_opacity", + "min": 0, + "max": 1, + "step": 0.1, + "unit": "", + "label": "Overlay Opacity" + }, + { + "type": "select", + "id": "overlay_size", + "options": [ + { + "value": "container", + "text": "Container (Default)" + }, + { + "value": "content", + "text": "Content" + } + ], + "label": "Overlay Size" + }, + { + "id": "overlay_position", + "type": "select", + "options": [ + { + "value": "top-left", + "text": "Top Left" + }, + { + "value": "top-center", + "text": "Top Center" + }, + { + "value": "top-right", + "text": "Top Right" + }, + { + "value": "center-left", + "text": "Center Left" + }, + { + "value": "center-center", + "text": "Center (Default)" + }, + { + "value": "center-right", + "text": "Center Right" + }, + { + "value": "bottom-left", + "text": "Bottom Left" + }, + { + "value": "bottom-center", + "text": "Bottom Center" + }, + { + "value": "bottom-right", + "text": "Bottom right" + } + ], + "label": "Overlay position", + "info": "Alignment of Overlay content(heading, sub-heading, button)" + }, + { + "type": "text", + "id": "heading", + "label": "Heading" + }, + { + "type": "color", + "id": "heading_color", + "label": "Heading Text Color" + }, + { + "type": "text", + "id": "sub_heading", + "label": "Sub-heading" + }, + { + "type": "color", + "id": "sub_heading_color", + "label": "Sub-heading Text Color" + }, + { + "type": "url", + "id": "button_link", + "label": "Redirect Link" + }, + { + "type": "text", + "id": "button_text", + "label": "Button Text" + } + ], + "blocks": [], + "name": "hero_video", + "label": "Hero Video" + }, + { + "props": [ + { + "type": "text", + "id": "title", + "label": "Title" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + }, + { + "id": "layout", + "type": "select", + "options": [ + { + "value": "grid", + "text": "Grid View" + }, + { + "value": "horizontal", + "text": "Horizontal View" + } + ], + "label": "Layout", + "info": "Alignment of content" + }, + { + "type": "range", + "id": "item_count", + "min": 3, + "max": 4, + "step": 1, + "unit": "", + "label": "No of items", + "info": "Maximum items allowed per row for Horizontal view, for gallery max 5 are viewable and only 5 blocks are required" + }, + { + "type": "text", + "id": "cta_text", + "label": "CTA Text" + }, + { + "type": "url", + "id": "cta_link", + "label": "CTA Link", + "info": "Link to redirect" + }, + { + "type": "checkbox", + "id": "full_width", + "label": "Full width", + "info": "Check to allow items to take entire width of the viewport" + } + ], + "blocks": [ + { + "type": "gallery_image", + "name": "Image", + "props": [ + { + "type": "image_picker", + "id": "image", + "label": "Gallery Image" + }, + { + "type": "text", + "id": "caption", + "label": "Image Caption" + }, + { + "type": "url", + "id": "link", + "label": "Link", + "info": "Link to redirect" + } + ] + } + ], + "name": "image_gallery", + "label": "Image Gallery", + "preset": { + "blocks": [ + { + "name": "Image" + }, + { + "name": "Image" + }, + { + "name": "Image" + }, + { + "name": "Image" + } + ] + } + }, + { + "props": [ + { + "type": "text", + "id": "title", + "label": "Title" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + }, + { + "type": "checkbox", + "id": "autoplay", + "label": "AutoPlay Slides", + "info": "Check to autoplay slides" + }, + { + "type": "range", + "id": "slide_interval", + "min": 1, + "max": 10, + "step": 1, + "unit": "sec", + "label": "Change slides after every", + "info": "Autoplay slide duration" + }, + { + "type": "select", + "id": "slide_height", + "options": [ + { + "value": "adapt", + "text": "Adapt to first image" + }, + { + "value": "small", + "text": "Small" + }, + { + "value": "medium", + "text": "Medium" + }, + { + "value": "large", + "text": "Large" + } + ], + "label": "Slide height", + "info": "Size of the slide" + }, + { + "type": "checkbox", + "id": "full_width", + "label": "Full width", + "info": "Check to allow items to take entire width of the viewport" + } + ], + "blocks": [ + { + "type": "image_slide", + "name": "Slide", + "props": [ + { + "type": "image_picker", + "id": "image", + "label": "Image" + }, + { + "type": "url", + "id": "slide_link", + "label": "Slide Link" + } + ] + } + ], + "name": "image_slideshow", + "label": "Image Slideshow", + "preset": { + "blocks": [ + { + "name": "Slide" + }, + { + "name": "Slide" + }, + { + "name": "Slide" + } + ] + } + }, + { + "props": [ + { + "type": "image_picker", + "id": "image", + "label": "Image" + }, + { + "id": "video", + "type": "url", + "label": "Video" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + }, + { + "id": "cover", + "type": "url", + "label": "Video Cover Image" + }, + { + "type": "select", + "id": "media_alignment", + "options": [ + { + "value": "left", + "text": "Left" + }, + { + "value": "center", + "text": "Center" + }, + { + "value": "right", + "text": "Right" + } + ], + "label": "Media Alignment" + }, + { + "type": "text", + "id": "heading", + "label": "Heading" + }, + { + "type": "text", + "id": "text Pair large text with an image to give focus to your chosen product, collection, or blog post. Add details on availability, style, or even provide a review.", + "label": "Text" + }, + { + "type": "select", + "id": "text_alignment", + "options": [ + { + "value": "left", + "text": "Left" + }, + { + "value": "center", + "text": "Center" + }, + { + "value": "right", + "text": "Right" + } + ], + "label": "Text Alignment" + } + ], + "blocks": [], + "name": "media_with_text", + "label": "Media with text" + }, + { + "props": [ + { + "type": "text", + "id": "title", + "label": "Title" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + }, + { + "type": "checkbox", + "id": "autoplay", + "label": "AutoPlay Slides" + }, + { + "type": "range", + "id": "slide_interval", + "min": 1, + "max": 10, + "step": 1, + "unit": "sec", + "label": "Change slides every" + } + ], + "blocks": [ + { + "type": "testimonial", + "name": "Testimonial", + "props": [ + { + "type": "textarea", + "id": "testimonialText", + "label": "Text for Testimonial", + "info": "Text for testimonial", + "placeholder": "Text" + }, + { + "type": "text", + "id": "author_name", + "label": "Author name" + }, + { + "type": "text", + "id": "author_description", + "label": "Author Description" + }, + { + "type": "image_picker", + "id": "author_image", + "label": "Author Image" + } + ] + } + ], + "name": "testimonials", + "label": "Testimonial", + "preset": { + "blocks": [ + { + "name": "Testimonial" + }, + { + "name": "Testimonial" + }, + { + "name": "Testimonial" + } + ] + } + } + ], + "src": "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/Gpbt5naNG-archive.zip" + } +} +``` +
+ +
+ + + + + + + + + +--- + + +### deleteTheme +Delete a theme + + + + +```java +partnerClient.theme.deleteTheme( themeId, organizationId) { + //use response +} +``` + + + +| Argument | Type | Required | Description | +| --------- | ----- | -------- | ----------- | +| companyId | Integer | yes | The ID of the company. | +| applicationId | String | yes | The ID of the application. | +| themeId | String | yes | The ID of the theme to be deleted. | +| organizationId | String | yes | Organization ID | + + + +This endpoint is used to delete a theme from the specified company and application. + +*Returned Response:* + + + + +[ThemesSchema](#ThemesSchema) + +Theme successfully deleted. + + + + +
+  Examples: + + +
+  example1 + +```json +{ + "value": { + "_id": "64be4423bc7b28003211322e", + "applied": false, + "is_private": false, + "tags": [], + "application_id": "6487ea376e1442284917c44e", + "marketplace_theme_id": "64be1f4cceb549012e93d5f4", + "meta": { + "payment": { + "is_paid": false, + "amount": 0 + }, + "description": "Indulge in the epitome of luxury with our expertly crafted theme, showcasing a high-end aesthetic that exudes elegance. Designed with meticulous attention to detail, our features are tailored to elevate your products and amplify your brand identity.", + "industry": [ + "Arts and crafts", + "Baby and kids", + "Books, music, and video" + ], + "release": { + "notes": "

Emerge release notes. Fyndx1 theme submission.

" + }, + "images": { + "desktop": "https://cdn.pixelbin.io/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/McHjwol_h-images_desktop.webp", + "mobile": "https://cdn.pixelbin.io/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/bq6gXrmVE-images_mobile.webp" + }, + "slug": "emerge" + }, + "name": "Emerge", + "template_theme_id": "64be1fdc2139f66b3ca2e94d", + "version": "1.0.153", + "styles": {}, + "created_at": "2023-07-24T09:28:03.845Z", + "updated_at": "2023-07-31T12:14:13.097Z", + "theme_type": "vue2", + "assets": { + "umd_js": { + "links": [ + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64b0eb01c35f990518880a82/theme/assets/yf7ijNZKa_themeBundle.umd.min.8.js", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64b0eb01c35f990518880a82/theme/assets/yf7ijNZKa_themeBundle.umd.min.cart.js", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64b0eb01c35f990518880a82/theme/assets/yf7ijNZKa_themeBundle.umd.min.extras.js", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64b0eb01c35f990518880a82/theme/assets/yf7ijNZKa_themeBundle.umd.min.products-listing.js", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64b0eb01c35f990518880a82/theme/assets/yf7ijNZKa_themeBundle.umd.min.products.js", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64b0eb01c35f990518880a82/theme/assets/yf7ijNZKa_themeBundle.umd.min.profile.js", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64b0eb01c35f990518880a82/theme/assets/yf7ijNZKa_themeBundle.umd.min.vendors_products-listing.js", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64b0eb01c35f990518880a82/theme/assets/yf7ijNZKa_themeBundle.umd.min.vendors_products.js", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64b0eb01c35f990518880a82/theme/assets/yf7ijNZKa_themeBundle.umd.min.js" + ], + "link": "" + }, + "common_js": { + "link": "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64b0eb01c35f990518880a82/theme/assets/yf7ijNZKa_themeBundle.common.js" + }, + "css": { + "links": [ + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64b0eb01c35f990518880a82/theme/assets/yf7ijNZKa_cart.1b038cd83e502f2d58bc.css", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64b0eb01c35f990518880a82/theme/assets/yf7ijNZKa_extras.f8a9789ae6a06b0bd503.css", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64b0eb01c35f990518880a82/theme/assets/yf7ijNZKa_products-listing.1d639747568baee211ba.css", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64b0eb01c35f990518880a82/theme/assets/yf7ijNZKa_products.c1f151d12b3f704fe028.css", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64b0eb01c35f990518880a82/theme/assets/yf7ijNZKa_profile.c9e6a92612e4b423dbd7.css", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64b0eb01c35f990518880a82/theme/assets/yf7ijNZKa_themeBundle.css", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64b0eb01c35f990518880a82/theme/assets/yf7ijNZKa_vendors_products-listing.c8fe85761d60286348e3.css" + ], + "link": "" + } + }, + "font": { + "variants": { + "light": { + "name": "300", + "file": "https://fonts.gstatic.com/s/poppins/v9/pxiByp8kv8JHgFVrLDz8V1tvFP-KUEg.ttf" + }, + "regular": { + "name": "regular", + "file": "https://fonts.gstatic.com/s/poppins/v9/pxiEyp8kv8JHgFVrFJDUc1NECPY.ttf" + }, + "medium": { + "name": "500", + "file": "https://fonts.gstatic.com/s/poppins/v9/pxiByp8kv8JHgFVrLGT9V1tvFP-KUEg.ttf" + }, + "semi_bold": { + "name": "600", + "file": "https://fonts.gstatic.com/s/poppins/v9/pxiByp8kv8JHgFVrLEj6V1tvFP-KUEg.ttf" + }, + "bold": { + "name": "700", + "file": "https://fonts.gstatic.com/s/poppins/v9/pxiByp8kv8JHgFVrLCz7V1tvFP-KUEg.ttf" + } + }, + "family": "Poppins" + }, + "config": { + "current": "Default", + "list": [ + { + "name": "Default", + "global_config": { + "static": { + "props": { + "colors": { + "primary_color": "#000000", + "secondary_color": "#000000", + "accent_color": "#000000", + "link_color": "#4499FF", + "button_secondary_color": "#000000", + "bg_color": "#F8F8F8" + }, + "auth": { + "show_header_auth": false, + "show_footer_auth": false + }, + "palette": { + "general_setting": { + "theme": { + "page_background": "#F3F3ED", + "theme_accent": "#E1D0C8" + }, + "text": { + "text_heading": "#26201A", + "text_body": "#3C3131", + "text_label": "#7D7676", + "text_secondary": "#9C9C9C" + }, + "button": { + "button_primary": "#4E3F09", + "button_secondary": "#FFFFFF", + "button_link": "#B1655B" + }, + "sale_discount": { + "sale_badge_background": "#FFFFFF", + "sale_badge_text": "#1C958F", + "sale_discount_text": "#1C958F", + "sale_timer": "#994449" + }, + "header": { + "header_background": "#F3F3ED", + "header_nav": "#261A1A", + "header_icon": "#261A1A" + }, + "footer": { + "footer_background": "#2C231E", + "footer_bottom_background": "#231812", + "footer_heading_text": "#FFFFFF", + "footer_body_text": "#FFFFFF", + "footer_icon": "#FFFFFF" + } + }, + "advance_setting": { + "overlay_popup": { + "dialog_backgroung": "#FFFFFF", + "overlay": "#14130E" + }, + "divider_stroke_highlight": { + "divider_strokes": "#D4D1D1", + "highlight": "#EDECE9" + }, + "user_alerts": { + "success_background": "#C2DBC9", + "success_text": "#1C958F", + "error_background": "#E6D5D5", + "error_text": "#B24141", + "info_background": "#EBD3BC", + "info_text": "#D28F51" + } + } + }, + "extension": { + "header_top": [], + "header_bottom": [], + "footer_top": [], + "footer_bottom": [] + } + } + }, + "custom": { + "props": { + "header_bg_color": "#ffffff", + "header_text_color": "#000000", + "header_border_color": "#e1e1e1", + "header_icon_color": "#000000", + "header_cart_notification_bg_color": "#e8a76c", + "header_cart_notification_text_color": "#ffffff", + "header_nav_hover_color": "#999999", + "button_primary_color": "#ffffff", + "button_primary_label_color": "#000000", + "button_add_to_cart_color": "#000000", + "button_add_to_cart_label_color": "#ffffff", + "button_secondary_color": "#000000", + "button_secondary_label_color": "#ffffff", + "button_tertiary_color": "#000000", + "button_tertiary_label_color": "#000000", + "button_tertiary_hover_color": "#000000", + "button_tertiary_hover_text_color": "#ffffff", + "text_heading_link_color": "#000000", + "text_body_color": "#000000", + "text_price_color": "#000000", + "text_sale_price_color": "#fb406b", + "text_strikethrough_price_color": "#9b9b9b", + "text_discount_color": "#ee478d", + "footer_bg_color": "#ffffff", + "footer_text_color": "#999999", + "footer_border_color": "#e1e1e1", + "footer_nav_hover_color": "#000000", + "disable_cart": false, + "is_menu_below_logo": false, + "menu_position": "left" + } + } + }, + "page": [] + }, + { + "name": "Dark", + "global_config": { + "static": { + "props": { + "colors": { + "primary_color": "#000000", + "secondary_color": "#000000", + "accent_color": "#000000", + "link_color": "#4499FF", + "button_secondary_color": "#000000", + "bg_color": "#F8F8F8" + }, + "auth": { + "show_header_auth": false, + "show_footer_auth": false + }, + "palette": { + "general_setting": { + "theme": { + "page_background": "#F3F3ED", + "theme_accent": "#E1D0C8" + }, + "text": { + "text_heading": "#26201A", + "text_body": "#3C3131", + "text_label": "#7D7676", + "text_secondary": "#9C9C9C" + }, + "button": { + "button_primary": "#4E3F09", + "button_secondary": "#FFFFFF", + "button_link": "#B1655B" + }, + "sale_discount": { + "sale_badge_background": "#FFFFFF", + "sale_badge_text": "#1C958F", + "sale_discount_text": "#1C958F", + "sale_timer": "#994449" + }, + "header": { + "header_background": "#F3F3ED", + "header_nav": "#261A1A", + "header_icon": "#261A1A" + }, + "footer": { + "footer_background": "#2C231E", + "footer_bottom_background": "#231812", + "footer_heading_text": "#FFFFFF", + "footer_body_text": "#FFFFFF", + "footer_icon": "#FFFFFF" + } + }, + "advance_setting": { + "overlay_popup": { + "dialog_backgroung": "#FFFFFF", + "overlay": "#14130E" + }, + "divider_stroke_highlight": { + "divider_strokes": "#D4D1D1", + "highlight": "#EDECE9" + }, + "user_alerts": { + "success_background": "#C2DBC9", + "success_text": "#1C958F", + "error_background": "#E6D5D5", + "error_text": "#B24141", + "info_background": "#EBD3BC", + "info_text": "#D28F51" + } + } + }, + "extension": { + "header_top": [], + "header_bottom": [], + "footer_top": [], + "footer_bottom": [] + } + } + }, + "custom": { + "props": { + "header_bg_color": "#2e3032", + "header_text_color": "#ffffff", + "header_border_color": "#FFFFFF", + "header_icon_color": "#ffffff", + "header_cart_notification_bg_color": "#FFFFFF", + "header_cart_notification_text_color": "#2e3032", + "header_nav_hover_color": "#000000", + "button_primary_color": "#000000", + "button_primary_label_color": "#ffffff", + "button_add_to_cart_color": "#000000", + "button_add_to_cart_label_color": "#ffffff", + "button_secondary_color": "#000000", + "button_secondary_label_color": "#ffffff", + "button_tertiary_color": "#000000", + "button_tertiary_label_color": "#000000", + "button_tertiary_hover_color": "#000000", + "button_tertiary_hover_text_color": "#ffffff", + "text_heading_link_color": "#000000", + "text_body_color": "#000000", + "text_price_color": "#000000", + "text_sale_price_color": "#fb406b", + "text_strikethrough_price_color": "#9b9b9b", + "text_discount_color": "#ee478d", + "footer_bg_color": "#2e3032", + "footer_text_color": "#ffffff", + "footer_border_color": "#FFFFFF", + "footer_nav_hover_color": "#ffffff" + } + } + }, + "page": [] + }, + { + "name": "Blue", + "global_config": { + "static": { + "props": { + "colors": { + "primary_color": "#000000", + "secondary_color": "#000000", + "accent_color": "#000000", + "link_color": "#4499FF", + "button_secondary_color": "#000000", + "bg_color": "#F8F8F8" + }, + "auth": { + "show_header_auth": false, + "show_footer_auth": false + }, + "palette": { + "general_setting": { + "theme": { + "page_background": "#F3F3ED", + "theme_accent": "#E1D0C8" + }, + "text": { + "text_heading": "#26201A", + "text_body": "#3C3131", + "text_label": "#7D7676", + "text_secondary": "#9C9C9C" + }, + "button": { + "button_primary": "#4E3F09", + "button_secondary": "#FFFFFF", + "button_link": "#B1655B" + }, + "sale_discount": { + "sale_badge_background": "#FFFFFF", + "sale_badge_text": "#1C958F", + "sale_discount_text": "#1C958F", + "sale_timer": "#994449" + }, + "header": { + "header_background": "#F3F3ED", + "header_nav": "#261A1A", + "header_icon": "#261A1A" + }, + "footer": { + "footer_background": "#2C231E", + "footer_bottom_background": "#231812", + "footer_heading_text": "#FFFFFF", + "footer_body_text": "#FFFFFF", + "footer_icon": "#FFFFFF" + } + }, + "advance_setting": { + "overlay_popup": { + "dialog_backgroung": "#FFFFFF", + "overlay": "#14130E" + }, + "divider_stroke_highlight": { + "divider_strokes": "#D4D1D1", + "highlight": "#EDECE9" + }, + "user_alerts": { + "success_background": "#C2DBC9", + "success_text": "#1C958F", + "error_background": "#E6D5D5", + "error_text": "#B24141", + "info_background": "#EBD3BC", + "info_text": "#D28F51" + } + } + }, + "extension": { + "header_top": [], + "header_bottom": [], + "footer_top": [], + "footer_bottom": [] + } + } + }, + "custom": { + "props": { + "header_bg_color": "#7f9ed0", + "header_text_color": "#FFFFFF", + "header_border_color": "#FFFFFF", + "header_icon_color": "#FFFFFF", + "header_cart_notification_bg_color": "#2e3032", + "header_cart_notification_text_color": "#FFFFFF", + "header_nav_hover_color": "#2e3032", + "button_primary_color": "#ffffff", + "button_primary_label_color": "#000000", + "button_add_to_cart_color": "#000000", + "button_add_to_cart_label_color": "#ffffff", + "button_secondary_color": "#000000", + "button_secondary_label_color": "#ffffff", + "button_tertiary_color": "#000000", + "button_tertiary_label_color": "#000000", + "button_tertiary_hover_color": "#000000", + "button_tertiary_hover_text_color": "#ffffff", + "text_heading_link_color": "#000000", + "text_body_color": "#000000", + "text_price_color": "#000000", + "text_sale_price_color": "#fb406b", + "text_strikethrough_price_color": "#9b9b9b", + "text_discount_color": "#ee478d", + "footer_bg_color": "#7f9ed0", + "footer_text_color": "#FFFFFF", + "footer_border_color": "#FFFFFF", + "footer_nav_hover_color": "#2e3032" + } + } + }, + "page": [] + } + ], + "preset": { + "pages": [ + { + "sections": [ + { + "blocks": [], + "predicate": { + "screen": { + "mobile": true, + "desktop": true, + "tablet": true + }, + "user": { + "authenticated": true, + "anonymous": true + }, + "route": { + "selected": "none", + "exact_url": "" + } + }, + "name": "hero_image", + "props": { + "image": { + "value": "", + "type": "image_picker" + }, + "overlay_layout": { + "type": "select", + "value": "center" + }, + "overlay_image": { + "value": "", + "type": "image_picker" + }, + "overlay_text": { + "value": "", + "type": "text" + }, + "text_color": { + "value": "#000", + "type": "color" + }, + "button_link": { + "type": "url", + "value": "" + }, + "button_text": { + "value": "Shop Now", + "type": "text" + }, + "full_width": { + "value": true, + "type": "checkbox" + } + } + }, + { + "blocks": [], + "predicate": { + "screen": { + "mobile": true, + "desktop": true, + "tablet": true + }, + "user": { + "authenticated": true, + "anonymous": true + }, + "route": { + "selected": "none", + "exact_url": "" + } + }, + "name": "image_slideshow", + "props": { + "autoplay": { + "value": false, + "type": "checkbox" + }, + "full_width": { + "value": false, + "type": "checkbox" + }, + "slide_height": { + "value": "adapt", + "type": "select" + }, + "slide_interval": { + "value": 2, + "type": "range" + }, + "title": { + "value": "Trending", + "type": "text" + } + }, + "preset": { + "blocks": [ + { + "name": "Slide" + }, + { + "name": "Slide" + }, + { + "name": "Slide" + } + ] + } + }, + { + "blocks": [ + { + "type": "gallery_image", + "name": "Image", + "props": { + "image": { + "type": "image_picker", + "value": "" + }, + "caption": { + "type": "text", + "value": "" + }, + "link": { + "type": "url", + "value": "" + } + } + }, + { + "type": "gallery_image", + "name": "Image", + "props": { + "image": { + "type": "image_picker", + "value": "" + }, + "caption": { + "type": "text", + "value": "" + }, + "link": { + "type": "url", + "value": "" + } + } + }, + { + "type": "gallery_image", + "name": "Image", + "props": { + "image": { + "type": "image_picker", + "value": "" + }, + "caption": { + "type": "text", + "value": "" + }, + "link": { + "type": "url", + "value": "" + } + } + }, + { + "type": "gallery_image", + "name": "Image", + "props": { + "image": { + "type": "image_picker", + "value": "" + }, + "caption": { + "type": "text", + "value": "" + }, + "link": { + "type": "url", + "value": "" + } + } + } + ], + "predicate": { + "screen": { + "mobile": true, + "desktop": true, + "tablet": true + }, + "user": { + "authenticated": true, + "anonymous": true + }, + "route": { + "selected": "none", + "exact_url": "" + } + }, + "name": "image_gallery", + "props": { + "title": { + "type": "text", + "value": "Popular Brands" + }, + "layout": { + "value": "grid", + "type": "select" + }, + "item_count": { + "value": 4, + "type": "range" + }, + "cta_text": { + "value": "", + "type": "text" + }, + "cta_link": { + "type": "url", + "value": "" + }, + "full_width": { + "value": false, + "type": "checkbox" + } + }, + "preset": { + "blocks": [ + { + "name": "Image" + }, + { + "name": "Image" + }, + { + "name": "Image" + }, + { + "name": "Image" + } + ] + } + }, + { + "blocks": [], + "predicate": { + "screen": { + "mobile": true, + "desktop": true, + "tablet": true + }, + "user": { + "authenticated": true, + "anonymous": true + }, + "route": { + "selected": "none", + "exact_url": "" + } + }, + "name": "brands_listing", + "props": { + "brand_type": { + "value": "all", + "type": "radio" + }, + "cta_text": { + "value": "View all", + "type": "text" + }, + "department": { + "type": "department" + }, + "header": { + "type": "header" + }, + "items_per_row": { + "value": 5, + "type": "range" + }, + "layout": { + "value": "horizontal", + "type": "select" + }, + "title": { + "type": "text", + "value": "Brands" + }, + "view_options": { + "value": "fullview", + "type": "select" + } + } + }, + { + "blocks": [ + { + "type": "testimonial", + "name": "Testimonial", + "props": { + "testimonialText": { + "type": "textarea", + "value": "" + }, + "author_name": { + "type": "text" + }, + "author_description": { + "type": "text", + "value": "" + }, + "author_image": { + "type": "image_picker", + "value": "" + } + } + }, + { + "type": "testimonial", + "name": "Testimonial", + "props": { + "testimonialText": { + "type": "textarea", + "value": "" + }, + "author_name": { + "type": "text" + }, + "author_description": { + "type": "text", + "value": "" + }, + "author_image": { + "type": "image_picker", + "value": "" + } + } + }, + { + "type": "testimonial", + "name": "Testimonial", + "props": { + "testimonialText": { + "type": "textarea", + "value": "" + }, + "author_name": { + "type": "text" + }, + "author_description": { + "type": "text", + "value": "" + }, + "author_image": { + "type": "image_picker", + "value": "" + } + } + } + ], + "predicate": { + "screen": { + "mobile": true, + "desktop": true, + "tablet": true + }, + "user": { + "authenticated": true, + "anonymous": true + }, + "route": { + "selected": "none", + "exact_url": "" + } + }, + "name": "testimonials", + "props": { + "autoplay": { + "value": false, + "type": "checkbox" + }, + "slide_interval": { + "value": 2, + "type": "range" + } + }, + "preset": { + "blocks": [ + { + "name": "Testimonial" + }, + { + "name": "Testimonial" + }, + { + "name": "Testimonial" + } + ] + } + } + ], + "value": "home" + } + ] + }, + "global_schema": { + "props": [ + { + "type": "checkbox", + "id": "disable_cart", + "category": "Colors", + "label": "header" + } + ] + } + }, + "available_sections": [ + { + "props": [ + { + "type": "url", + "id": "banner_link", + "label": "Redirect Link" + }, + { + "type": "checkbox", + "id": "full_width", + "label": "Full width", + "info": "Check to allow items to take entire width of the viewport" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + } + ], + "blocks": [], + "name": "application_banner", + "label": "Application Banner" + }, + { + "props": [ + { + "type": "text", + "id": "title", + "label": "Title" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + }, + { + "type": "header", + "id": "header", + "value": "Choose Brands to Show" + }, + { + "id": "view_options", + "type": "select", + "options": [ + { + "value": "logo", + "text": "Logo View" + }, + { + "value": "fullview", + "text": "Logo and Banner View" + } + ], + "label": "View Options", + "info": "Brand card view options" + }, + { + "type": "radio", + "id": "brand_type", + "options": [ + { + "value": "all", + "text": "All" + }, + { + "value": "department", + "text": "Department" + }, + { + "value": "handpicked", + "text": "Handpicked" + } + ] + }, + { + "type": "department", + "id": "department", + "label": "Department", + "info": "Select a department of brands", + "note": "Department only applies if 'department' type is selected" + }, + { + "type": "range", + "id": "items_per_row", + "min": 3, + "max": 5, + "step": 1, + "unit": "", + "label": "Items per row", + "info": "Maximum items allowed per row" + }, + { + "id": "layout", + "type": "select", + "options": [ + { + "value": "grid", + "text": "Grid View" + }, + { + "value": "horizontal", + "text": "Horizontal View" + } + ], + "label": "Layout", + "info": "Alignment of content" + }, + { + "type": "text", + "id": "cta_text", + "label": "CTA Text" + } + ], + "blocks": [ + { + "type": "brand_item", + "name": "Brand Item", + "props": [ + { + "type": "brand", + "id": "brand", + "label": "Select Brand" + } + ] + } + ], + "name": "brands_listing", + "label": "Brands Listing" + }, + { + "props": [ + { + "type": "text", + "id": "title", + "label": "Title" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + }, + { + "type": "radio", + "id": "collection_type", + "options": [ + { + "value": "all", + "text": "All" + }, + { + "value": "handpicked", + "text": "Handpicked" + } + ] + }, + { + "type": "text", + "id": "tags_filter", + "label": "Filter by tags", + "info": "Filter by Tags " + }, + { + "type": "range", + "id": "items_per_row", + "min": 3, + "max": 5, + "step": 1, + "unit": "", + "label": "Max items per row", + "info": "Maximum items allowed per row" + }, + { + "id": "layout", + "type": "select", + "options": [ + { + "value": "grid", + "text": "Grid View" + }, + { + "value": "horizontal", + "text": "Horizontal View" + } + ], + "label": "Layout", + "info": "Alignment of content" + }, + { + "type": "text", + "id": "cta_text", + "label": "CTA Text" + } + ], + "blocks": [ + { + "type": "collection-item", + "name": "collection Item", + "props": [ + { + "type": "collection", + "id": "collection", + "label": "Select Collection" + } + ] + } + ], + "name": "collections_listing", + "label": "Collections Listing" + }, + { + "props": [ + { + "type": "code", + "id": "code", + "label": "Custom HTML", + "info": "Add Your custom HTML Code below. You can also use the full screen icon to open a code editor and add your code" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + } + ], + "blocks": [], + "name": "custom_html", + "label": "Custom HTML" + }, + { + "props": [ + { + "type": "extension", + "id": "extension", + "label": "Extension Positions", + "info": "Handle extension in these positions", + "positions": [ + { + "value": "section_extension", + "text": "" + } + ] + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + } + ], + "blocks": [], + "name": "section_extension", + "label": "Extensions" + }, + { + "props": [ + { + "type": "text", + "id": "title", + "label": "Title" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + }, + { + "type": "collection", + "id": "collection", + "label": "Collection", + "info": "Select a collection to display its products" + }, + { + "type": "range", + "id": "items_per_row", + "min": 2, + "max": 5, + "step": 1, + "unit": "", + "label": "Products per row", + "info": "Maximum items allowed per row" + }, + { + "id": "layout", + "type": "select", + "options": [ + { + "value": "grid", + "text": "Grid View" + }, + { + "value": "horizontal", + "text": "Horizontal View" + } + ], + "label": "Layout", + "info": "Alignment of content" + }, + { + "type": "checkbox", + "id": "autoplay", + "label": "AutoPlay Slides", + "info": "Check to autoplay slides" + }, + { + "type": "range", + "id": "slide_interval", + "min": 1, + "max": 10, + "step": 1, + "unit": "sec", + "label": "Change slides after every", + "info": "Autoplay slide duration" + } + ], + "blocks": [], + "name": "featured_collection", + "label": "Featured Collection" + }, + { + "props": [ + { + "id": "image", + "type": "image_picker", + "label": "Hero Image" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + }, + { + "id": "overlay_layout", + "type": "select", + "options": [ + { + "value": "left", + "text": "Align Left" + }, + { + "value": "center", + "text": "Align Center" + }, + { + "value": "right", + "text": "Align Right" + } + ], + "label": "Overlay Layout", + "info": "Alignment of overlay content" + }, + { + "type": "image_picker", + "id": "overlay_image", + "label": "Overlay image", + "info": "Overlay Image" + }, + { + "type": "text", + "id": "overlay_text", + "label": "Overlay Text" + }, + { + "type": "color", + "id": "text_color", + "label": "Text Color" + }, + { + "type": "url", + "id": "button_link", + "label": "Redirect Link" + }, + { + "type": "text", + "id": "button_text", + "label": "Button Text" + }, + { + "type": "checkbox", + "id": "full_width", + "label": "Full width", + "info": "Check to allow items to take entire width of the viewport" + }, + { + "type": "checkbox", + "id": "fullscreen_image", + "label": "Fullscreen Banner ", + "info": "Check to allow items to take entire viewport" + } + ], + "blocks": [], + "name": "hero_image", + "label": "Hero Image" + }, + { + "props": [ + { + "type": "video", + "id": "videoFile", + "label": "Primary Video" + }, + { + "id": "videoUrl", + "type": "text", + "label": "Video URL", + "info": "Supports MP4 Video & Youtube Video URL" + }, + { + "type": "checkbox", + "id": "autoplay", + "label": "Autoplay", + "info": "Check to enable autoplay (Video will be muted if autoplay is active)" + }, + { + "type": "checkbox", + "id": "hidecontrols", + "label": "Hide Video Controls", + "info": "check to disable video controls" + }, + { + "type": "checkbox", + "id": "showloop", + "label": "Play Video in Loop", + "info": "check to disable Loop" + }, + { + "type": "text", + "id": "title", + "label": "Heading" + }, + { + "id": "coverUrl", + "type": "image_picker", + "label": "Thumbnail Image" + } + ], + "blocks": [], + "name": "hero_video-v2", + "label": "Hero Video V2" + }, + { + "props": [ + { + "id": "video_url", + "type": "text", + "label": "Video URL", + "info": "Supports MP4 Video & Youtube Video URL" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + }, + { + "type": "checkbox", + "id": "autoplay", + "label": "Autoplay", + "info": "Check to enable autoplay (Video will be muted if autoplay is active)" + }, + { + "type": "checkbox", + "id": "controls", + "label": "Video Controls", + "info": "Uncheck to disable video controls" + }, + { + "type": "checkbox", + "id": "full_width", + "label": "Full width", + "info": "Check to allow items to take entire width of the viewport" + }, + { + "type": "checkbox", + "id": "bg_video", + "label": "Video In Background", + "info": "Use video in background with overlay (Overlay Image & Video Controls will be disabled by default on website)" + }, + { + "type": "select", + "id": "size", + "options": [ + { + "value": "small", + "text": "Small" + }, + { + "value": "medium", + "text": "Medium" + }, + { + "value": "large", + "text": "Large" + }, + { + "value": "adapt", + "text": "Adapt" + }, + { + "value": "fullscreen", + "text": "Fullscreen" + } + ], + "label": "Video Height", + "info": "Height of Video" + }, + { + "type": "checkbox", + "id": "enable_overlay_image", + "label": "Enable Overlay Image" + }, + { + "id": "cover_url", + "type": "image_picker", + "label": "Video Overlay Image" + }, + { + "type": "checkbox", + "id": "enable_overlay_color", + "label": "Enable Overlay Colour" + }, + { + "type": "color", + "id": "overlay_color", + "label": "Overlay Color" + }, + { + "type": "range", + "id": "overlay_opacity", + "min": 0, + "max": 1, + "step": 0.1, + "unit": "", + "label": "Overlay Opacity" + }, + { + "type": "select", + "id": "overlay_size", + "options": [ + { + "value": "container", + "text": "Container (Default)" + }, + { + "value": "content", + "text": "Content" + } + ], + "label": "Overlay Size" + }, + { + "id": "overlay_position", + "type": "select", + "options": [ + { + "value": "top-left", + "text": "Top Left" + }, + { + "value": "top-center", + "text": "Top Center" + }, + { + "value": "top-right", + "text": "Top Right" + }, + { + "value": "center-left", + "text": "Center Left" + }, + { + "value": "center-center", + "text": "Center (Default)" + }, + { + "value": "center-right", + "text": "Center Right" + }, + { + "value": "bottom-left", + "text": "Bottom Left" + }, + { + "value": "bottom-center", + "text": "Bottom Center" + }, + { + "value": "bottom-right", + "text": "Bottom right" + } + ], + "label": "Overlay position", + "info": "Alignment of Overlay content(heading, sub-heading, button)" + }, + { + "type": "text", + "id": "heading", + "label": "Heading" + }, + { + "type": "color", + "id": "heading_color", + "label": "Heading Text Color" + }, + { + "type": "text", + "id": "sub_heading", + "label": "Sub-heading" + }, + { + "type": "color", + "id": "sub_heading_color", + "label": "Sub-heading Text Color" + }, + { + "type": "url", + "id": "button_link", + "label": "Redirect Link" + }, + { + "type": "text", + "id": "button_text", + "label": "Button Text" + } + ], + "blocks": [], + "name": "hero_video", + "label": "Hero Video" + }, + { + "props": [ + { + "type": "text", + "id": "title", + "label": "Title" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + }, + { + "id": "layout", + "type": "select", + "options": [ + { + "value": "grid", + "text": "Grid View" + }, + { + "value": "horizontal", + "text": "Horizontal View" + } + ], + "label": "Layout", + "info": "Alignment of content" + }, + { + "type": "range", + "id": "item_count", + "min": 3, + "max": 4, + "step": 1, + "unit": "", + "label": "No of items", + "info": "Maximum items allowed per row for Horizontal view, for gallery max 5 are viewable and only 5 blocks are required" + }, + { + "type": "text", + "id": "cta_text", + "label": "CTA Text" + }, + { + "type": "url", + "id": "cta_link", + "label": "CTA Link", + "info": "Link to redirect" + }, + { + "type": "checkbox", + "id": "full_width", + "label": "Full width", + "info": "Check to allow items to take entire width of the viewport" + } + ], + "blocks": [ + { + "type": "gallery_image", + "name": "Image", + "props": [ + { + "type": "image_picker", + "id": "image", + "label": "Gallery Image" + }, + { + "type": "text", + "id": "caption", + "label": "Image Caption" + }, + { + "type": "url", + "id": "link", + "label": "Link", + "info": "Link to redirect" + } + ] + } + ], + "name": "image_gallery", + "label": "Image Gallery", + "preset": { + "blocks": [ + { + "name": "Image" + }, + { + "name": "Image" + }, + { + "name": "Image" + }, + { + "name": "Image" + } + ] + } + }, + { + "props": [ + { + "type": "text", + "id": "title", + "label": "Title" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + }, + { + "type": "checkbox", + "id": "autoplay", + "label": "AutoPlay Slides", + "info": "Check to autoplay slides" + }, + { + "type": "range", + "id": "slide_interval", + "min": 1, + "max": 10, + "step": 1, + "unit": "sec", + "label": "Change slides after every", + "info": "Autoplay slide duration" + }, + { + "type": "select", + "id": "slide_height", + "options": [ + { + "value": "adapt", + "text": "Adapt to first image" + }, + { + "value": "small", + "text": "Small" + }, + { + "value": "medium", + "text": "Medium" + }, + { + "value": "large", + "text": "Large" + } + ], + "label": "Slide height", + "info": "Size of the slide" + }, + { + "type": "checkbox", + "id": "full_width", + "label": "Full width", + "info": "Check to allow items to take entire width of the viewport" + } + ], + "blocks": [ + { + "type": "image_slide", + "name": "Slide", + "props": [ + { + "type": "image_picker", + "id": "image", + "label": "Image" + }, + { + "type": "url", + "id": "slide_link", + "label": "Slide Link" + } + ] + } + ], + "name": "image_slideshow", + "label": "Image Slideshow", + "preset": { + "blocks": [ + { + "name": "Slide" + }, + { + "name": "Slide" + }, + { + "name": "Slide" + } + ] + } + }, + { + "props": [ + { + "type": "image_picker", + "id": "image", + "label": "Image" + }, + { + "id": "video", + "type": "url", + "label": "Video" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + }, + { + "id": "cover", + "type": "url", + "label": "Video Cover Image" + }, + { + "type": "select", + "id": "media_alignment", + "options": [ + { + "value": "left", + "text": "Left" + }, + { + "value": "center", + "text": "Center" + }, + { + "value": "right", + "text": "Right" + } + ], + "label": "Media Alignment" + }, + { + "type": "text", + "id": "heading", + "label": "Heading" + }, + { + "type": "text", + "id": "text Pair large text with an image to give focus to your chosen product, collection, or blog post. Add details on availability, style, or even provide a review.", + "label": "Text" + }, + { + "type": "select", + "id": "text_alignment", + "options": [ + { + "value": "left", + "text": "Left" + }, + { + "value": "center", + "text": "Center" + }, + { + "value": "right", + "text": "Right" + } + ], + "label": "Text Alignment" + } + ], + "blocks": [], + "name": "media_with_text", + "label": "Media with text" + }, + { + "props": [ + { + "type": "text", + "id": "title", + "label": "Title" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + }, + { + "type": "checkbox", + "id": "autoplay", + "label": "AutoPlay Slides" + }, + { + "type": "range", + "id": "slide_interval", + "min": 1, + "max": 10, + "step": 1, + "unit": "sec", + "label": "Change slides every" + } + ], + "blocks": [ + { + "type": "testimonial", + "name": "Testimonial", + "props": [ + { + "type": "textarea", + "id": "testimonialText", + "label": "Text for Testimonial", + "info": "Text for testimonial", + "placeholder": "Text" + }, + { + "type": "text", + "id": "author_name", + "label": "Author name" + }, + { + "type": "text", + "id": "author_description", + "label": "Author Description" + }, + { + "type": "image_picker", + "id": "author_image", + "label": "Author Image" + } + ] + } + ], + "name": "testimonials", + "label": "Testimonial", + "preset": { + "blocks": [ + { + "name": "Testimonial" + }, + { + "name": "Testimonial" + }, + { + "name": "Testimonial" + } + ] + } + } + ], + "src": "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64b0eb01c35f990518880a82/theme/assets/7yuL57qP2-archive.zip" + } +} +``` +
+ +
+  example2 + +```json +{ + "value": { + "_id": "64b91fe317422a1e1392f85b", + "applied": true, + "is_private": true, + "tags": [], + "name": "Astra", + "version": "1.0.11", + "application_id": "7487ea376e1442284917c44e", + "styles": {}, + "template_theme_id": "64be264c0347c5002279b75f", + "created_at": "2023-07-24T07:20:44.629Z", + "updated_at": "2023-08-01T11:09:25.857Z", + "theme_type": "vue2", + "assets": { + "umd_js": { + "links": [ + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/O3s2Kmnsc_themeBundle.umd.min.9.js", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/O3s2Kmnsc_themeBundle.umd.min.cart.js", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/O3s2Kmnsc_themeBundle.umd.min.extras.js", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/O3s2Kmnsc_themeBundle.umd.min.products-listing_profile.js", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/O3s2Kmnsc_themeBundle.umd.min.products-listing.js", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/O3s2Kmnsc_themeBundle.umd.min.products.js", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/O3s2Kmnsc_themeBundle.umd.min.profile.js", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/O3s2Kmnsc_themeBundle.umd.min.vendors_products-listing.js", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/O3s2Kmnsc_themeBundle.umd.min.vendors_products.js", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/O3s2Kmnsc_themeBundle.umd.min.js" + ], + "link": "" + }, + "common_js": { + "link": "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/O3s2Kmnsc_themeBundle.common.js" + }, + "css": { + "links": [ + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/O3s2Kmnsc_extras.8604b743eb82cd74e4bb.css", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/O3s2Kmnsc_products-listing_profile.944723408675f52ed297.css", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/O3s2Kmnsc_products-listing.ca493ea7d081b4b575f7.css", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/O3s2Kmnsc_products.2c64f7731dab64227f0b.css", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/O3s2Kmnsc_profile.1b1467735927e188d272.css", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/O3s2Kmnsc_themeBundle.css", + "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/O3s2Kmnsc_vendors_products-listing.c8fe85761d60286348e3.css" + ], + "link": "" + } + }, + "font": { + "variants": { + "light": { + "name": "300", + "file": "https://fonts.gstatic.com/s/poppins/v20/pxiByp8kv8JHgFVrLDz8V1tvFP-KUEg.ttf" + }, + "regular": { + "name": "regular", + "file": "https://fonts.gstatic.com/s/poppins/v20/pxiEyp8kv8JHgFVrFJDUc1NECPY.ttf" + }, + "medium": { + "name": "500", + "file": "https://fonts.gstatic.com/s/poppins/v20/pxiByp8kv8JHgFVrLGT9V1tvFP-KUEg.ttf" + }, + "semi_bold": { + "name": "600", + "file": "https://fonts.gstatic.com/s/poppins/v20/pxiByp8kv8JHgFVrLEj6V1tvFP-KUEg.ttf" + }, + "bold": { + "name": "700", + "file": "https://fonts.gstatic.com/s/poppins/v20/pxiByp8kv8JHgFVrLCz7V1tvFP-KUEg.ttf" + } + }, + "family": "Poppins" + }, + "config": { + "current": "Default", + "list": [ + { + "name": "Default", + "global_config": { + "static": { + "props": { + "colors": { + "primary_color": "#000000", + "secondary_color": "#000000", + "accent_color": "#000000", + "link_color": "#4499FF", + "button_secondary_color": "#000000", + "bg_color": "#F8F8F8" + }, + "auth": { + "show_header_auth": false, + "show_footer_auth": false + }, + "palette": { + "general_setting": { + "theme": { + "page_background": "#F3F3ED", + "theme_accent": "#E1D0C8" + }, + "text": { + "text_heading": "#26201A", + "text_body": "#3C3131", + "text_label": "#7D7676", + "text_secondary": "#9C9C9C" + }, + "button": { + "button_primary": "#4E3F09", + "button_secondary": "#FFFFFF", + "button_link": "#B1655B" + }, + "sale_discount": { + "sale_badge_background": "#FFFFFF", + "sale_badge_text": "#1C958F", + "sale_discount_text": "#1C958F", + "sale_timer": "#994449" + }, + "header": { + "header_background": "#F3F3ED", + "header_nav": "#261A1A", + "header_icon": "#261A1A" + }, + "footer": { + "footer_background": "#2C231E", + "footer_bottom_background": "#231812", + "footer_heading_text": "#FFFFFF", + "footer_body_text": "#FFFFFF", + "footer_icon": "#FFFFFF" + } + }, + "advance_setting": { + "overlay_popup": { + "dialog_backgroung": "#FFFFFF", + "overlay": "#14130E" + }, + "divider_stroke_highlight": { + "divider_strokes": "#D4D1D1", + "highlight": "#EDECE9" + }, + "user_alerts": { + "success_background": "#C2DBC9", + "success_text": "#1C958F", + "error_background": "#E6D5D5", + "error_text": "#B24141", + "info_background": "#EBD3BC", + "info_text": "#D28F51" + } + } + }, + "extension": { + "header_top": [], + "header_bottom": [], + "footer_top": [], + "footer_bottom": [] + } + } + }, + "custom": { + "props": { + "header_bg_color": "#ffffff", + "header_text_color": "#000000", + "header_border_color": "#e1e1e1", + "header_icon_color": "#000000", + "header_cart_notification_bg_color": "#e8a76c", + "header_cart_notification_text_color": "#ffffff", + "header_nav_hover_color": "#999999", + "button_primary_color": "#ffffff", + "button_primary_label_color": "#000000", + "button_add_to_cart_color": "#000000", + "button_add_to_cart_label_color": "#ffffff", + "button_secondary_color": "#000000", + "button_secondary_label_color": "#ffffff", + "button_tertiary_color": "#000000", + "button_tertiary_label_color": "#000000", + "button_tertiary_hover_color": "#000000", + "button_tertiary_hover_text_color": "#ffffff", + "text_heading_link_color": "#000000", + "text_body_color": "#000000", + "text_price_color": "#000000", + "text_sale_price_color": "#fb406b", + "text_strikethrough_price_color": "#9b9b9b", + "text_discount_color": "#ee478d", + "footer_bg_color": "#ffffff", + "footer_text_color": "#999999", + "footer_border_color": "#e1e1e1", + "footer_nav_hover_color": "#000000", + "disable_cart": false, + "is_menu_below_logo": false, + "menu_position": "left" + } + } + }, + "page": [] + }, + { + "name": "Dark", + "global_config": { + "static": { + "props": { + "colors": { + "primary_color": "#000000", + "secondary_color": "#000000", + "accent_color": "#000000", + "link_color": "#4499FF", + "button_secondary_color": "#000000", + "bg_color": "#F8F8F8" + }, + "auth": { + "show_header_auth": false, + "show_footer_auth": false + }, + "palette": { + "general_setting": { + "theme": { + "page_background": "#F3F3ED", + "theme_accent": "#E1D0C8" + }, + "text": { + "text_heading": "#26201A", + "text_body": "#3C3131", + "text_label": "#7D7676", + "text_secondary": "#9C9C9C" + }, + "button": { + "button_primary": "#4E3F09", + "button_secondary": "#FFFFFF", + "button_link": "#B1655B" + }, + "sale_discount": { + "sale_badge_background": "#FFFFFF", + "sale_badge_text": "#1C958F", + "sale_discount_text": "#1C958F", + "sale_timer": "#994449" + }, + "header": { + "header_background": "#F3F3ED", + "header_nav": "#261A1A", + "header_icon": "#261A1A" + }, + "footer": { + "footer_background": "#2C231E", + "footer_bottom_background": "#231812", + "footer_heading_text": "#FFFFFF", + "footer_body_text": "#FFFFFF", + "footer_icon": "#FFFFFF" + } + }, + "advance_setting": { + "overlay_popup": { + "dialog_backgroung": "#FFFFFF", + "overlay": "#14130E" + }, + "divider_stroke_highlight": { + "divider_strokes": "#D4D1D1", + "highlight": "#EDECE9" + }, + "user_alerts": { + "success_background": "#C2DBC9", + "success_text": "#1C958F", + "error_background": "#E6D5D5", + "error_text": "#B24141", + "info_background": "#EBD3BC", + "info_text": "#D28F51" + } + } + }, + "extension": { + "header_top": [], + "header_bottom": [], + "footer_top": [], + "footer_bottom": [] + } + } + }, + "custom": { + "props": { + "header_bg_color": "#2e3032", + "header_text_color": "#ffffff", + "header_border_color": "#FFFFFF", + "header_icon_color": "#ffffff", + "header_cart_notification_bg_color": "#FFFFFF", + "header_cart_notification_text_color": "#2e3032", + "header_nav_hover_color": "#000000", + "button_primary_color": "#000000", + "button_primary_label_color": "#ffffff", + "button_add_to_cart_color": "#000000", + "button_add_to_cart_label_color": "#ffffff", + "button_secondary_color": "#000000", + "button_secondary_label_color": "#ffffff", + "button_tertiary_color": "#000000", + "button_tertiary_label_color": "#000000", + "button_tertiary_hover_color": "#000000", + "button_tertiary_hover_text_color": "#ffffff", + "text_heading_link_color": "#000000", + "text_body_color": "#000000", + "text_price_color": "#000000", + "text_sale_price_color": "#fb406b", + "text_strikethrough_price_color": "#9b9b9b", + "text_discount_color": "#ee478d", + "footer_bg_color": "#2e3032", + "footer_text_color": "#ffffff", + "footer_border_color": "#FFFFFF", + "footer_nav_hover_color": "#ffffff" + } + } + }, + "page": [] + }, + { + "name": "Blue", + "global_config": { + "static": { + "props": { + "colors": { + "primary_color": "#000000", + "secondary_color": "#000000", + "accent_color": "#000000", + "link_color": "#4499FF", + "button_secondary_color": "#000000", + "bg_color": "#F8F8F8" + }, + "auth": { + "show_header_auth": false, + "show_footer_auth": false + }, + "palette": { + "general_setting": { + "theme": { + "page_background": "#F3F3ED", + "theme_accent": "#E1D0C8" + }, + "text": { + "text_heading": "#26201A", + "text_body": "#3C3131", + "text_label": "#7D7676", + "text_secondary": "#9C9C9C" + }, + "button": { + "button_primary": "#4E3F09", + "button_secondary": "#FFFFFF", + "button_link": "#B1655B" + }, + "sale_discount": { + "sale_badge_background": "#FFFFFF", + "sale_badge_text": "#1C958F", + "sale_discount_text": "#1C958F", + "sale_timer": "#994449" + }, + "header": { + "header_background": "#F3F3ED", + "header_nav": "#261A1A", + "header_icon": "#261A1A" + }, + "footer": { + "footer_background": "#2C231E", + "footer_bottom_background": "#231812", + "footer_heading_text": "#FFFFFF", + "footer_body_text": "#FFFFFF", + "footer_icon": "#FFFFFF" + } + }, + "advance_setting": { + "overlay_popup": { + "dialog_backgroung": "#FFFFFF", + "overlay": "#14130E" + }, + "divider_stroke_highlight": { + "divider_strokes": "#D4D1D1", + "highlight": "#EDECE9" + }, + "user_alerts": { + "success_background": "#C2DBC9", + "success_text": "#1C958F", + "error_background": "#E6D5D5", + "error_text": "#B24141", + "info_background": "#EBD3BC", + "info_text": "#D28F51" + } + } + }, + "extension": { + "header_top": [], + "header_bottom": [], + "footer_top": [], + "footer_bottom": [] + } + } + }, + "custom": { + "props": { + "header_bg_color": "#7f9ed0", + "header_text_color": "#FFFFFF", + "header_border_color": "#FFFFFF", + "header_icon_color": "#FFFFFF", + "header_cart_notification_bg_color": "#2e3032", + "header_cart_notification_text_color": "#FFFFFF", + "header_nav_hover_color": "#2e3032", + "button_primary_color": "#ffffff", + "button_primary_label_color": "#000000", + "button_add_to_cart_color": "#000000", + "button_add_to_cart_label_color": "#ffffff", + "button_secondary_color": "#000000", + "button_secondary_label_color": "#ffffff", + "button_tertiary_color": "#000000", + "button_tertiary_label_color": "#000000", + "button_tertiary_hover_color": "#000000", + "button_tertiary_hover_text_color": "#ffffff", + "text_heading_link_color": "#000000", + "text_body_color": "#000000", + "text_price_color": "#000000", + "text_sale_price_color": "#fb406b", + "text_strikethrough_price_color": "#9b9b9b", + "text_discount_color": "#ee478d", + "footer_bg_color": "#7f9ed0", + "footer_text_color": "#FFFFFF", + "footer_border_color": "#FFFFFF", + "footer_nav_hover_color": "#2e3032" + } + } + }, + "page": [] + } + ], + "preset": { + "pages": [ + { + "sections": [ + { + "blocks": [], + "predicate": { + "screen": { + "mobile": true, + "desktop": true, + "tablet": true + }, + "user": { + "authenticated": true, + "anonymous": true + }, + "route": { + "selected": "none", + "exact_url": "" + } + }, + "name": "hero_image", + "props": { + "image": { + "value": "", + "type": "image_picker" + }, + "overlay_layout": { + "type": "select", + "value": "center" + }, + "overlay_image": { + "value": "", + "type": "image_picker" + }, + "overlay_text": { + "value": "", + "type": "text" + }, + "text_color": { + "value": "#000", + "type": "color" + }, + "button_link": { + "type": "url", + "value": "" + }, + "button_text": { + "value": "Shop Now", + "type": "text" + }, + "full_width": { + "value": true, + "type": "checkbox" + } + } + }, + { + "blocks": [], + "predicate": { + "screen": { + "mobile": true, + "desktop": true, + "tablet": true + }, + "user": { + "authenticated": true, + "anonymous": true + }, + "route": { + "selected": "none", + "exact_url": "" + } + }, + "name": "image_slideshow", + "props": { + "autoplay": { + "value": false, + "type": "checkbox" + }, + "full_width": { + "value": false, + "type": "checkbox" + }, + "slide_height": { + "value": "adapt", + "type": "select" + }, + "slide_interval": { + "value": 2, + "type": "range" + }, + "title": { + "value": "Trending", + "type": "text" + } + }, + "preset": { + "blocks": [ + { + "name": "Slide" + }, + { + "name": "Slide" + }, + { + "name": "Slide" + } + ] + } + }, + { + "blocks": [ + { + "type": "gallery_image", + "name": "Image", + "props": { + "image": { + "type": "image_picker", + "value": "" + }, + "caption": { + "type": "text", + "value": "" + }, + "link": { + "type": "url", + "value": "" + } + } + }, + { + "type": "gallery_image", + "name": "Image", + "props": { + "image": { + "type": "image_picker", + "value": "" + }, + "caption": { + "type": "text", + "value": "" + }, + "link": { + "type": "url", + "value": "" + } + } + }, + { + "type": "gallery_image", + "name": "Image", + "props": { + "image": { + "type": "image_picker", + "value": "" + }, + "caption": { + "type": "text", + "value": "" + }, + "link": { + "type": "url", + "value": "" + } + } + }, + { + "type": "gallery_image", + "name": "Image", + "props": { + "image": { + "type": "image_picker", + "value": "" + }, + "caption": { + "type": "text", + "value": "" + }, + "link": { + "type": "url", + "value": "" + } + } + } + ], + "predicate": { + "screen": { + "mobile": true, + "desktop": true, + "tablet": true + }, + "user": { + "authenticated": true, + "anonymous": true + }, + "route": { + "selected": "none", + "exact_url": "" + } + }, + "name": "image_gallery", + "props": { + "title": { + "type": "text", + "value": "Popular Brands" + }, + "layout": { + "value": "grid", + "type": "select" + }, + "item_count": { + "value": 4, + "type": "range" + }, + "cta_text": { + "value": "", + "type": "text" + }, + "cta_link": { + "type": "url", + "value": "" + }, + "full_width": { + "value": false, + "type": "checkbox" + } + }, + "preset": { + "blocks": [ + { + "name": "Image" + }, + { + "name": "Image" + }, + { + "name": "Image" + }, + { + "name": "Image" + } + ] + } + }, + { + "blocks": [], + "predicate": { + "screen": { + "mobile": true, + "desktop": true, + "tablet": true + }, + "user": { + "authenticated": true, + "anonymous": true + }, + "route": { + "selected": "none", + "exact_url": "" + } + }, + "name": "brands_listing", + "props": { + "brand_type": { + "value": "all", + "type": "radio" + }, + "cta_text": { + "value": "View all", + "type": "text" + }, + "department": { + "type": "department" + }, + "header": { + "type": "header" + }, + "items_per_row": { + "value": 5, + "type": "range" + }, + "layout": { + "value": "horizontal", + "type": "select" + }, + "title": { + "type": "text", + "value": "Brands" + }, + "view_options": { + "value": "fullview", + "type": "select" + } + } + }, + { + "blocks": [ + { + "type": "testimonial", + "name": "Testimonial", + "props": { + "testimonialText": { + "type": "textarea", + "value": "" + }, + "author_name": { + "type": "text" + }, + "author_description": { + "type": "text", + "value": "" + }, + "author_image": { + "type": "image_picker", + "value": "" + } + } + }, + { + "type": "testimonial", + "name": "Testimonial", + "props": { + "testimonialText": { + "type": "textarea", + "value": "" + }, + "author_name": { + "type": "text" + }, + "author_description": { + "type": "text", + "value": "" + }, + "author_image": { + "type": "image_picker", + "value": "" + } + } + }, + { + "type": "testimonial", + "name": "Testimonial", + "props": { + "testimonialText": { + "type": "textarea", + "value": "" + }, + "author_name": { + "type": "text" + }, + "author_description": { + "type": "text", + "value": "" + }, + "author_image": { + "type": "image_picker", + "value": "" + } + } + } + ], + "predicate": { + "screen": { + "mobile": true, + "desktop": true, + "tablet": true + }, + "user": { + "authenticated": true, + "anonymous": true + }, + "route": { + "selected": "none", + "exact_url": "" + } + }, + "name": "testimonials", + "props": { + "autoplay": { + "value": false, + "type": "checkbox" + }, + "slide_interval": { + "value": 2, + "type": "range" + } + }, + "preset": { + "blocks": [ + { + "name": "Testimonial" + }, + { + "name": "Testimonial" + }, + { + "name": "Testimonial" + } + ] + } + } + ], + "value": "home" + } + ] + }, + "global_schema": { + "props": [ + { + "type": "checkbox", + "id": "disable_cart", + "category": "Colors", + "label": "header" + } + ] + } + }, + "available_sections": [ + { + "props": [ + { + "type": "url", + "id": "banner_link", + "label": "Redirect Link" + }, + { + "type": "checkbox", + "id": "full_width", + "label": "Full width", + "info": "Check to allow items to take entire width of the viewport" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + } + ], + "blocks": [], + "name": "application_banner", + "label": "Application Banner" + }, + { + "props": [ + { + "type": "text", + "id": "title", + "label": "Title" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + }, + { + "type": "header", + "id": "header", + "value": "Choose Brands to Show" + }, + { + "id": "view_options", + "type": "select", + "options": [ + { + "value": "logo", + "text": "Logo View" + }, + { + "value": "fullview", + "text": "Logo and Banner View" + } + ], + "label": "View Options", + "info": "Brand card view options" + }, + { + "type": "radio", + "id": "brand_type", + "options": [ + { + "value": "all", + "text": "All" + }, + { + "value": "department", + "text": "Department" + }, + { + "value": "handpicked", + "text": "Handpicked" + } + ] + }, + { + "type": "department", + "id": "department", + "label": "Department", + "info": "Select a department of brands", + "note": "Department only applies if 'department' type is selected" + }, + { + "type": "range", + "id": "items_per_row", + "min": 3, + "max": 5, + "step": 1, + "unit": "", + "label": "Items per row", + "info": "Maximum items allowed per row" + }, + { + "id": "layout", + "type": "select", + "options": [ + { + "value": "grid", + "text": "Grid View" + }, + { + "value": "horizontal", + "text": "Horizontal View" + } + ], + "label": "Layout", + "info": "Alignment of content" + }, + { + "type": "text", + "id": "cta_text", + "label": "CTA Text" + } + ], + "blocks": [ + { + "type": "brand_item", + "name": "Brand Item", + "props": [ + { + "type": "brand", + "id": "brand", + "label": "Select Brand" + } + ] + } + ], + "name": "brands_listing", + "label": "Brands Listing" + }, + { + "props": [ + { + "type": "text", + "id": "title", + "label": "Title" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + }, + { + "type": "radio", + "id": "collection_type", + "options": [ + { + "value": "all", + "text": "All" + }, + { + "value": "handpicked", + "text": "Handpicked" + } + ] + }, + { + "type": "text", + "id": "tags_filter", + "label": "Filter by tags", + "info": "Filter by Tags " + }, + { + "type": "range", + "id": "items_per_row", + "min": 3, + "max": 5, + "step": 1, + "unit": "", + "label": "Max items per row", + "info": "Maximum items allowed per row" + }, + { + "id": "layout", + "type": "select", + "options": [ + { + "value": "grid", + "text": "Grid View" + }, + { + "value": "horizontal", + "text": "Horizontal View" + } + ], + "label": "Layout", + "info": "Alignment of content" + }, + { + "type": "text", + "id": "cta_text", + "label": "CTA Text" + } + ], + "blocks": [ + { + "type": "collection-item", + "name": "collection Item", + "props": [ + { + "type": "collection", + "id": "collection", + "label": "Select Collection" + } + ] + } + ], + "name": "collections_listing", + "label": "Collections Listing" + }, + { + "props": [ + { + "type": "code", + "id": "code", + "label": "Custom HTML", + "info": "Add Your custom HTML Code below. You can also use the full screen icon to open a code editor and add your code" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + } + ], + "blocks": [], + "name": "custom_html", + "label": "Custom HTML" + }, + { + "props": [ + { + "type": "extension", + "id": "extension", + "label": "Extension Positions", + "info": "Handle extension in these positions", + "positions": [ + { + "value": "section_extension", + "text": "" + } + ] + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + } + ], + "blocks": [], + "name": "section_extension", + "label": "Extensions" + }, + { + "props": [ + { + "type": "text", + "id": "title", + "label": "Title" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + }, + { + "type": "collection", + "id": "collection", + "label": "Collection", + "info": "Select a collection to display its products" + }, + { + "type": "range", + "id": "items_per_row", + "min": 2, + "max": 5, + "step": 1, + "unit": "", + "label": "Products per row", + "info": "Maximum items allowed per row" + }, + { + "id": "layout", + "type": "select", + "options": [ + { + "value": "grid", + "text": "Grid View" + }, + { + "value": "horizontal", + "text": "Horizontal View" + } + ], + "label": "Layout", + "info": "Alignment of content" + }, + { + "type": "checkbox", + "id": "autoplay", + "label": "AutoPlay Slides", + "info": "Check to autoplay slides" + }, + { + "type": "range", + "id": "slide_interval", + "min": 1, + "max": 10, + "step": 1, + "unit": "sec", + "label": "Change slides after every", + "info": "Autoplay slide duration" + } + ], + "blocks": [], + "name": "featured_collection", + "label": "Featured Collection" + }, + { + "props": [ + { + "id": "image", + "type": "image_picker", + "label": "Hero Image" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + }, + { + "id": "overlay_layout", + "type": "select", + "options": [ + { + "value": "left", + "text": "Align Left" + }, + { + "value": "center", + "text": "Align Center" + }, + { + "value": "right", + "text": "Align Right" + } + ], + "label": "Overlay Layout", + "info": "Alignment of overlay content" + }, + { + "type": "image_picker", + "id": "overlay_image", + "label": "Overlay image", + "info": "Overlay Image" + }, + { + "type": "text", + "id": "overlay_text", + "label": "Overlay Text" + }, + { + "type": "color", + "id": "text_color", + "label": "Text Color" + }, + { + "type": "url", + "id": "button_link", + "label": "Redirect Link" + }, + { + "type": "text", + "id": "button_text", + "label": "Button Text" + }, + { + "type": "checkbox", + "id": "full_width", + "label": "Full width", + "info": "Check to allow items to take entire width of the viewport" + }, + { + "type": "checkbox", + "id": "fullscreen_image", + "label": "Fullscreen Banner ", + "info": "Check to allow items to take entire viewport" + } + ], + "blocks": [], + "name": "hero_image", + "label": "Hero Image" + }, + { + "props": [ + { + "type": "video", + "id": "videoFile", + "label": "Primary Video" + }, + { + "id": "videoUrl", + "type": "text", + "label": "Video URL", + "info": "Supports MP4 Video & Youtube Video URL" + }, + { + "type": "checkbox", + "id": "autoplay", + "label": "Autoplay", + "info": "Check to enable autoplay (Video will be muted if autoplay is active)" + }, + { + "type": "checkbox", + "id": "hidecontrols", + "label": "Hide Video Controls", + "info": "check to disable video controls" + }, + { + "type": "checkbox", + "id": "showloop", + "label": "Play Video in Loop", + "info": "check to disable Loop" + }, + { + "type": "text", + "id": "title", + "label": "Heading" + }, + { + "id": "coverUrl", + "type": "image_picker", + "label": "Thumbnail Image" + } + ], + "blocks": [], + "name": "hero_video-v2", + "label": "Hero Video V2" + }, + { + "props": [ + { + "id": "video_url", + "type": "text", + "label": "Video URL", + "info": "Supports MP4 Video & Youtube Video URL" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + }, + { + "type": "checkbox", + "id": "autoplay", + "label": "Autoplay", + "info": "Check to enable autoplay (Video will be muted if autoplay is active)" + }, + { + "type": "checkbox", + "id": "controls", + "label": "Video Controls", + "info": "Uncheck to disable video controls" + }, + { + "type": "checkbox", + "id": "full_width", + "label": "Full width", + "info": "Check to allow items to take entire width of the viewport" + }, + { + "type": "checkbox", + "id": "bg_video", + "label": "Video In Background", + "info": "Use video in background with overlay (Overlay Image & Video Controls will be disabled by default on website)" + }, + { + "type": "select", + "id": "size", + "options": [ + { + "value": "small", + "text": "Small" + }, + { + "value": "medium", + "text": "Medium" + }, + { + "value": "large", + "text": "Large" + }, + { + "value": "adapt", + "text": "Adapt" + }, + { + "value": "fullscreen", + "text": "Fullscreen" + } + ], + "label": "Video Height", + "info": "Height of Video" + }, + { + "type": "checkbox", + "id": "enable_overlay_image", + "label": "Enable Overlay Image" + }, + { + "id": "cover_url", + "type": "image_picker", + "label": "Video Overlay Image" + }, + { + "type": "checkbox", + "id": "enable_overlay_color", + "label": "Enable Overlay Colour" + }, + { + "type": "color", + "id": "overlay_color", + "label": "Overlay Color" + }, + { + "type": "range", + "id": "overlay_opacity", + "min": 0, + "max": 1, + "step": 0.1, + "unit": "", + "label": "Overlay Opacity" + }, + { + "type": "select", + "id": "overlay_size", + "options": [ + { + "value": "container", + "text": "Container (Default)" + }, + { + "value": "content", + "text": "Content" + } + ], + "label": "Overlay Size" + }, + { + "id": "overlay_position", + "type": "select", + "options": [ + { + "value": "top-left", + "text": "Top Left" + }, + { + "value": "top-center", + "text": "Top Center" + }, + { + "value": "top-right", + "text": "Top Right" + }, + { + "value": "center-left", + "text": "Center Left" + }, + { + "value": "center-center", + "text": "Center (Default)" + }, + { + "value": "center-right", + "text": "Center Right" + }, + { + "value": "bottom-left", + "text": "Bottom Left" + }, + { + "value": "bottom-center", + "text": "Bottom Center" + }, + { + "value": "bottom-right", + "text": "Bottom right" + } + ], + "label": "Overlay position", + "info": "Alignment of Overlay content(heading, sub-heading, button)" + }, + { + "type": "text", + "id": "heading", + "label": "Heading" + }, + { + "type": "color", + "id": "heading_color", + "label": "Heading Text Color" + }, + { + "type": "text", + "id": "sub_heading", + "label": "Sub-heading" + }, + { + "type": "color", + "id": "sub_heading_color", + "label": "Sub-heading Text Color" + }, + { + "type": "url", + "id": "button_link", + "label": "Redirect Link" + }, + { + "type": "text", + "id": "button_text", + "label": "Button Text" + } + ], + "blocks": [], + "name": "hero_video", + "label": "Hero Video" + }, + { + "props": [ + { + "type": "text", + "id": "title", + "label": "Title" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + }, + { + "id": "layout", + "type": "select", + "options": [ + { + "value": "grid", + "text": "Grid View" + }, + { + "value": "horizontal", + "text": "Horizontal View" + } + ], + "label": "Layout", + "info": "Alignment of content" + }, + { + "type": "range", + "id": "item_count", + "min": 3, + "max": 4, + "step": 1, + "unit": "", + "label": "No of items", + "info": "Maximum items allowed per row for Horizontal view, for gallery max 5 are viewable and only 5 blocks are required" + }, + { + "type": "text", + "id": "cta_text", + "label": "CTA Text" + }, + { + "type": "url", + "id": "cta_link", + "label": "CTA Link", + "info": "Link to redirect" + }, + { + "type": "checkbox", + "id": "full_width", + "label": "Full width", + "info": "Check to allow items to take entire width of the viewport" + } + ], + "blocks": [ + { + "type": "gallery_image", + "name": "Image", + "props": [ + { + "type": "image_picker", + "id": "image", + "label": "Gallery Image" + }, + { + "type": "text", + "id": "caption", + "label": "Image Caption" + }, + { + "type": "url", + "id": "link", + "label": "Link", + "info": "Link to redirect" + } + ] + } + ], + "name": "image_gallery", + "label": "Image Gallery", + "preset": { + "blocks": [ + { + "name": "Image" + }, + { + "name": "Image" + }, + { + "name": "Image" + }, + { + "name": "Image" + } + ] + } + }, + { + "props": [ + { + "type": "text", + "id": "title", + "label": "Title" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + }, + { + "type": "checkbox", + "id": "autoplay", + "label": "AutoPlay Slides", + "info": "Check to autoplay slides" + }, + { + "type": "range", + "id": "slide_interval", + "min": 1, + "max": 10, + "step": 1, + "unit": "sec", + "label": "Change slides after every", + "info": "Autoplay slide duration" + }, + { + "type": "select", + "id": "slide_height", + "options": [ + { + "value": "adapt", + "text": "Adapt to first image" + }, + { + "value": "small", + "text": "Small" + }, + { + "value": "medium", + "text": "Medium" + }, + { + "value": "large", + "text": "Large" + } + ], + "label": "Slide height", + "info": "Size of the slide" + }, + { + "type": "checkbox", + "id": "full_width", + "label": "Full width", + "info": "Check to allow items to take entire width of the viewport" + } + ], + "blocks": [ + { + "type": "image_slide", + "name": "Slide", + "props": [ + { + "type": "image_picker", + "id": "image", + "label": "Image" + }, + { + "type": "url", + "id": "slide_link", + "label": "Slide Link" + } + ] + } + ], + "name": "image_slideshow", + "label": "Image Slideshow", + "preset": { + "blocks": [ + { + "name": "Slide" + }, + { + "name": "Slide" + }, + { + "name": "Slide" + } + ] + } + }, + { + "props": [ + { + "type": "image_picker", + "id": "image", + "label": "Image" + }, + { + "id": "video", + "type": "url", + "label": "Video" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + }, + { + "id": "cover", + "type": "url", + "label": "Video Cover Image" + }, + { + "type": "select", + "id": "media_alignment", + "options": [ + { + "value": "left", + "text": "Left" + }, + { + "value": "center", + "text": "Center" + }, + { + "value": "right", + "text": "Right" + } + ], + "label": "Media Alignment" + }, + { + "type": "text", + "id": "heading", + "label": "Heading" + }, + { + "type": "text", + "id": "text Pair large text with an image to give focus to your chosen product, collection, or blog post. Add details on availability, style, or even provide a review.", + "label": "Text" + }, + { + "type": "select", + "id": "text_alignment", + "options": [ + { + "value": "left", + "text": "Left" + }, + { + "value": "center", + "text": "Center" + }, + { + "value": "right", + "text": "Right" + } + ], + "label": "Text Alignment" + } + ], + "blocks": [], + "name": "media_with_text", + "label": "Media with text" + }, + { + "props": [ + { + "type": "text", + "id": "title", + "label": "Title" + }, + { + "type": "range", + "id": "margin_top", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Top Margin" + }, + { + "type": "range", + "id": "margin_bottom", + "min": 0, + "max": 1000, + "step": 1, + "unit": "px", + "label": "Section Bottom Margin" + }, + { + "type": "checkbox", + "id": "autoplay", + "label": "AutoPlay Slides" + }, + { + "type": "range", + "id": "slide_interval", + "min": 1, + "max": 10, + "step": 1, + "unit": "sec", + "label": "Change slides every" + } + ], + "blocks": [ + { + "type": "testimonial", + "name": "Testimonial", + "props": [ + { + "type": "textarea", + "id": "testimonialText", + "label": "Text for Testimonial", + "info": "Text for testimonial", + "placeholder": "Text" + }, + { + "type": "text", + "id": "author_name", + "label": "Author name" + }, + { + "type": "text", + "id": "author_description", + "label": "Author Description" + }, + { + "type": "image_picker", + "id": "author_image", + "label": "Author Image" + } + ] + } + ], + "name": "testimonials", + "label": "Testimonial", + "preset": { + "blocks": [ + { + "name": "Testimonial" + }, + { + "name": "Testimonial" + }, + { + "name": "Testimonial" + } + ] + } + } + ], + "src": "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/organization/64aec4634bc407961ed265c5/theme/assets/Gpbt5naNG-archive.zip" + } +} +``` +
+ +
+ + + + + + + + + +--- + + +### getOrganizationThemes +Get organization's themes + + + + +```java +partnerClient.theme.getOrganizationThemes( organizationId, status, pageSize, pageNo) { + //use response +} +``` + + + +| Argument | Type | Required | Description | +| --------- | ----- | -------- | ----------- | +| organizationId | String | yes | Id of your organization | +| status | String? | no | The status of the theme | +| pageSize | Integer? | no | Number of themes per page | +| pageNo | Integer? | no | Page number to retrieve | + + + +Get organization's themes + +*Returned Response:* + + + + +[MarketplaceThemeSchema](#MarketplaceThemeSchema) + +Successful operation + + + + +
+  Example: + +```json + +``` +
+ + + + + + + + + +--- + + +### getOrganizationThemeDetails +Get theme details for an organization + + + + +```java +partnerClient.theme.getOrganizationThemeDetails( organizationId, themeId) { + //use response +} +``` + + + +| Argument | Type | Required | Description | +| --------- | ----- | -------- | ----------- | +| organizationId | String | yes | The ID of the organization | +| themeId | String | yes | The ID of the theme | + + + +Fetches the theme details for a specific organization and theme ID + +*Returned Response:* + + + + +[MarketplaceTheme](#MarketplaceTheme) + +Successful response + + + + +
+  Example: + +```json + +``` +
+ + + + + + + + + +--- + + +### updateDraftTheme +Update theme draft/submitted + + + + +```java +partnerClient.theme.updateDraftTheme( organizationId, themeId, body body) { + //use response +} +``` + + + +| Argument | Type | Required | Description | +| --------- | ----- | -------- | ----------- | +| organizationId | String | yes | The ID of the organization | +| themeId | String | yes | The ID of the theme | +| body | [MarketplaceTheme](#MarketplaceTheme) | yes | Request body | + + +Update theme draft/submitted + +*Returned Response:* + + + + +[MarketplaceTheme](#MarketplaceTheme) + +Theme updated successfully + + + + +
+  Examples: + + +
+  example1 + +```json +{ + "value": { + "_id": "64be51bee7048a025f4fb0b8", + "payment": { + "is_paid": false, + "amount": 0 + }, + "contact": { + "developer_contact": [ + "test@gofynd.com" + ], + "seller_contact": "test@gofynd.com" + }, + "industry": [ + "Business equipment and supplies", + "Books, music, and video", + "Clothing" + ], + "is_update": false, + "is_default": false, + "name": "White-Splash", + "tagline": "Where Style Meets Artistry", + "description": "Kartmax is the perfect theme to get you started with your store. Capture audiences' attention through captivating layouts inspired by editorial design, striking typography, and impactful hero sections. Embrace a contemporary narrative that exudes personality and brings your content to life.", + "catalog_size": { + "min": 200, + "max": 0 + }, + "images": { + "desktop": "https://cdn.pixelbin.io/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/EXo5oubRa-desktop.png", + "mobile": "https://cdn.pixelbin.io/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/PY-1mmO03-mobile.png" + }, + "carousel": [ + { + "desktop": "https://cdn.pixelbin.io/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/EXo5oubRa-desktop.png", + "mobile": "https://cdn.pixelbin.io/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/fhPI_ADIa-carousel_mobile_0.png" + }, + { + "desktop": "https://cdn.pixelbin.io/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/EXo5oubRa-desktop.png", + "mobile": "https://cdn.pixelbin.io/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/u3zWsTqM5-carousel_mobile_1.png" + }, + { + "desktop": "https://cdn.pixelbin.io/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/EXo5oubRa-desktop.png", + "mobile": "https://cdn.pixelbin.io/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/fhPI_ADIa-carousel_mobile_0.png" + }, + { + "desktop": "https://cdn.pixelbin.io/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/EXo5oubRa-desktop.png", + "mobile": "https://cdn.pixelbin.io/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/fhPI_ADIa-carousel_mobile_0.png" + } + ], + "src": "https://cdn.pixelbin.io/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/general/free/original/zrIW3mA4G-White-Splash_1.0.157.zip", + "explore": { + "title": "Elevate Your Shopping Experience", + "description": "Designed to cater to extensive carts and inventories, featuring a prominent search bar and the choice for a permanently visible cart sidebar." + }, + "features": [ + { + "category": "Home Sections", + "list": [ + { + "label": "Video", + "description": "Video as a section" + }, + { + "label": "Carousel", + "description": "Carousel as a section" + } + ] + }, + { + "category": "Authentication", + "list": [ + { + "label": "Standard Login Interface", + "description": "Deafult Login Interface, use this if you have not implmented custom login interface for login, register flows inside your theme code." + }, + { + "label": "Login with Email", + "description": "This is be default available in Standard Login Interface. If custom login interface is used, check your implmentation." + }, + { + "label": "Login with Mobile Number", + "description": "This is be default available in Standard Login Interface. If custom login interface is used, check your implmentation." + }, + { + "label": "Voice OTP", + "description": "This is be default available in Standard Login Interface. If custom login interface is used, check your implmentation." + }, + { + "label": "Social Media login", + "description": "This is be default available in Standard Login Interface. If custom login interface is used, check your implmentation." + } + ] + }, + { + "category": "Cart & Checkout", + "list": [ + { + "label": "Guest Checkout", + "description": "Enables customer to buy a product without login" + }, + { + "label": "Customized Cart", + "description": "--" + } + ] + }, + { + "category": "Product Description", + "list": [ + { + "label": "Buy Now", + "description": "Buy Now flow support along with Add to Cart" + }, + { + "label": "Product Videos", + "description": "Videos present in product catalog can be shown" + }, + { + "label": "3D Model of Product", + "description": "3D Models present in product catalog can be shown" + }, + { + "label": "Product Variants", + "description": "Show variants of a particular product" + }, + { + "label": "Extension Support", + "description": "Supports various extensions made for Prdouct Page" + }, + { + "label": "Default Size Selection", + "description": "By default select one size" + }, + { + "label": "Product Highlights", + "description": "Show highlights added in the cartalog" + }, + { + "label": "Short Description", + "description": "Show short description from catalog in PDP" + } + ] + }, + { + "category": "Product Listing", + "list": [ + { + "label": "Infinite Scroll", + "description": "Infinite scrolling support using lazy loady" + }, + { + "label": "Discount Badges", + "description": "Show discount or custom badges on Product tiles" + }, + { + "label": "Product Variants", + "description": "Supports showcase various variants on the listing itself" + } + ] + }, + { + "category": "Navigation", + "list": [ + { + "label": "Customizable Navigation Menu", + "description": "Customize Navigation Menu to accomodate multiple desings" + } + ] + }, + { + "category": "SEO", + "list": [ + { + "label": "alt text", + "description": "Alt text data received in API is used on Product Images" + } + ] + } + ], + "highlights": [ + { + "title": "Styles and Colours", + "description": "With custom colours and styles, you can modify the appearance of your entire store or particular sections for specific events, marketing drives, or whenever des", + "image": "https://cdn.pixelbin.io/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/xD9aRhQIO-highlight_0.png" + }, + { + "title": "Enhanced Navigation and Menu:", + "description": "Unleash the full potential of your header by showcasing images, videos, products, and collections in an enhanced dropdown menu. Improve the browsing experience ", + "image": "https://cdn.pixelbin.io/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/xD9aRhQIO-highlight_0.png" + } + ], + "variations": [ + { + "name": "default", + "color": "#35919b", + "demo_url": "nx7zjzx4i.hostx1.de", + "images": { + "desktop": "https://cdn.pixelbin.io/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/EXo5oubRa-desktop.png", + "mobile": "https://cdn.pixelbin.io/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/PY-1mmO03-mobile.png" + } + } + ], + "documentation": { + "notes": "

White splash user documentation

", + "url": "" + }, + "status": "published", + "step": 7, + "comments": { + "developer_remark": "White Splash fyndx1 theme submission", + "reviewer_feedback": "" + }, + "release": { + "version": "1.0.157", + "notes": "

White-splash release notes. Fyndx1 theme submission.

" + }, + "slug": "white-splash", + "organization_id": "64aec4634bc407961ed265c5", + "user_id": "ce6432937739e49875dedae0", + "created_at": "2023-07-24T10:26:06.612Z", + "updated_at": "2023-07-24T10:26:37.894Z", + "template_theme_id": "64be51dd44650d20b5b15f18", + "theme_type": "vue2" + } +} +``` +
+ +
+  example2 + +```json +{ + "value": { + "catalog_size": { + "min": 0, + "max": 0 + }, + "payment": { + "is_paid": false, + "amount": 0 + }, + "explore": { + "title": "", + "description": "" + }, + "documentation": { + "notes": "", + "url": "" + }, + "contact": { + "developer_contact": [], + "seller_contact": "" + }, + "comments": { + "developer_remark": "", + "reviewer_feedback": "" + }, + "release": { + "version": "1.0.0", + "notes": "

Release note test

" + }, + "industry": [], + "is_update": false, + "is_default": false, + "theme_type": "vue2", + "_id": "64cb9d131239c4e21fa0e7a3", + "name": "X1 Sanity Test", + "tagline": "test", + "description": "test", + "images": { + "desktop": "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/IiBdydAkw-EXo5oubRa-desktop.png", + "mobile": "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/ZTATfW8Oe-PY-1mmO03-mobile.png" + }, + "carousel": [ + { + "desktop": "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/1U3wS93Kx-carousel_desktop_0.png", + "mobile": "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/xoLlqTg6W-carousel_mobile_0.png" + }, + { + "desktop": "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/1U3wS93Kx-carousel_desktop_0.png", + "mobile": "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/xoLlqTg6W-carousel_mobile_0.png" + }, + { + "desktop": "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/1U3wS93Kx-carousel_desktop_0.png", + "mobile": "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/xoLlqTg6W-carousel_mobile_0.png" + }, + { + "desktop": "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/1U3wS93Kx-carousel_desktop_0.png", + "mobile": "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/xoLlqTg6W-carousel_mobile_0.png" + } + ], + "src": "https://cdn.fynd.com/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/general/free/original/jMpHx4fM7-Archive.zip", + "features": [ + { + "category": "", + "list": [] + } + ], + "highlights": [ + { + "title": "", + "description": "", + "image": "" + } + ], + "variations": [ + { + "name": "default", + "color": "#35919b", + "demo_url": "", + "images": { + "desktop": "", + "mobile": "" + } + } + ], + "status": "draft", + "step": 2, + "slug": "x1-sanity-test", + "organization_id": "64aec4634bc407961ed265c5", + "user_id": "6c62ef5b0770d76cabdc24c3", + "created_at": "2023-08-03T12:26:59.652Z", + "updated_at": "2023-08-05T08:59:06.697Z", + "id": "64cb9d131239c4e21fa0e7a3" + } +} +``` +
+ +
+ + + + + + + + + +--- + + +### submitOrganizationTheme +Submit a theme + + + + +```java +partnerClient.theme.submitOrganizationTheme( organizationId, themeId, body body) { + //use response +} +``` + + + +| Argument | Type | Required | Description | +| --------- | ----- | -------- | ----------- | +| organizationId | String | yes | The ID of the organization | +| themeId | String | yes | The ID of the theme | +| body | [MarketplaceTheme](#MarketplaceTheme) | yes | Request body | + + +Use this api to Submit a theme + +*Returned Response:* + + + + +[MarketplaceTheme](#MarketplaceTheme) + +Theme updated successfully + + + + +
+  Examples: + + +
+  example1 + +```json +{ + "value": { + "_id": "64be51bee7048a025f4fb0b8", + "payment": { + "is_paid": false, + "amount": 0 + }, + "contact": { + "developer_contact": [ + "test@gofynd.com" + ], + "seller_contact": "test@gofynd.com" + }, + "industry": [ + "Business equipment and supplies", + "Books, music, and video", + "Clothing" + ], + "is_update": false, + "is_default": false, + "name": "White-Splash", + "tagline": "Where Style Meets Artistry", + "description": "Kartmax is the perfect theme to get you started with your store. Capture audiences' attention through captivating layouts inspired by editorial design, striking typography, and impactful hero sections. Embrace a contemporary narrative that exudes personality and brings your content to life.", + "catalog_size": { + "min": 200, + "max": 0 + }, + "images": { + "desktop": "https://cdn.pixelbin.io/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/EXo5oubRa-desktop.png", + "mobile": "https://cdn.pixelbin.io/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/PY-1mmO03-mobile.png" + }, + "carousel": [ + { + "desktop": "https://cdn.pixelbin.io/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/EXo5oubRa-desktop.png", + "mobile": "https://cdn.pixelbin.io/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/fhPI_ADIa-carousel_mobile_0.png" + }, + { + "desktop": "https://cdn.pixelbin.io/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/EXo5oubRa-desktop.png", + "mobile": "https://cdn.pixelbin.io/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/u3zWsTqM5-carousel_mobile_1.png" + }, + { + "desktop": "https://cdn.pixelbin.io/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/EXo5oubRa-desktop.png", + "mobile": "https://cdn.pixelbin.io/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/fhPI_ADIa-carousel_mobile_0.png" + }, + { + "desktop": "https://cdn.pixelbin.io/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/EXo5oubRa-desktop.png", + "mobile": "https://cdn.pixelbin.io/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/fhPI_ADIa-carousel_mobile_0.png" + } + ], + "src": "https://cdn.pixelbin.io/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/general/free/original/zrIW3mA4G-White-Splash_1.0.157.zip", + "explore": { + "title": "Elevate Your Shopping Experience", + "description": "Designed to cater to extensive carts and inventories, featuring a prominent search bar and the choice for a permanently visible cart sidebar." + }, + "features": [ + { + "category": "Home Sections", + "list": [ + { + "label": "Video", + "description": "Video as a section" + }, + { + "label": "Carousel", + "description": "Carousel as a section" + } + ] + }, + { + "category": "Authentication", + "list": [ + { + "label": "Standard Login Interface", + "description": "Deafult Login Interface, use this if you have not implmented custom login interface for login, register flows inside your theme code." + }, + { + "label": "Login with Email", + "description": "This is be default available in Standard Login Interface. If custom login interface is used, check your implmentation." + }, + { + "label": "Login with Mobile Number", + "description": "This is be default available in Standard Login Interface. If custom login interface is used, check your implmentation." + }, + { + "label": "Voice OTP", + "description": "This is be default available in Standard Login Interface. If custom login interface is used, check your implmentation." + }, + { + "label": "Social Media login", + "description": "This is be default available in Standard Login Interface. If custom login interface is used, check your implmentation." + } + ] + }, + { + "category": "Cart & Checkout", + "list": [ + { + "label": "Guest Checkout", + "description": "Enables customer to buy a product without login" + }, + { + "label": "Customized Cart", + "description": "--" + } + ] + }, + { + "category": "Product Description", + "list": [ + { + "label": "Buy Now", + "description": "Buy Now flow support along with Add to Cart" + }, + { + "label": "Product Videos", + "description": "Videos present in product catalog can be shown" + }, + { + "label": "3D Model of Product", + "description": "3D Models present in product catalog can be shown" + }, + { + "label": "Product Variants", + "description": "Show variants of a particular product" + }, + { + "label": "Extension Support", + "description": "Supports various extensions made for Prdouct Page" + }, + { + "label": "Default Size Selection", + "description": "By default select one size" + }, + { + "label": "Product Highlights", + "description": "Show highlights added in the cartalog" + }, + { + "label": "Short Description", + "description": "Show short description from catalog in PDP" + } + ] + }, + { + "category": "Product Listing", + "list": [ + { + "label": "Infinite Scroll", + "description": "Infinite scrolling support using lazy loady" + }, + { + "label": "Discount Badges", + "description": "Show discount or custom badges on Product tiles" + }, + { + "label": "Product Variants", + "description": "Supports showcase various variants on the listing itself" + } + ] + }, + { + "category": "Navigation", + "list": [ + { + "label": "Customizable Navigation Menu", + "description": "Customize Navigation Menu to accomodate multiple desings" + } + ] + }, + { + "category": "SEO", + "list": [ + { + "label": "alt text", + "description": "Alt text data received in API is used on Product Images" + } + ] + } + ], + "highlights": [ + { + "title": "Styles and Colours", + "description": "With custom colours and styles, you can modify the appearance of your entire store or particular sections for specific events, marketing drives, or whenever des", + "image": "https://cdn.pixelbin.io/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/xD9aRhQIO-highlight_0.png" + }, + { + "title": "Enhanced Navigation and Menu:", + "description": "Unleash the full potential of your header by showcasing images, videos, products, and collections in an enhanced dropdown menu. Improve the browsing experience ", + "image": "https://cdn.pixelbin.io/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/xD9aRhQIO-highlight_0.png" + } + ], + "variations": [ + { + "name": "default", + "color": "#35919b", + "demo_url": "nx7zjzx4i.hostx1.de", + "images": { + "desktop": "https://cdn.pixelbin.io/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/EXo5oubRa-desktop.png", + "mobile": "https://cdn.pixelbin.io/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/PY-1mmO03-mobile.png" + } + } + ], + "documentation": { + "notes": "

White splash user documentation

", + "url": "" + }, + "status": "published", + "step": 7, + "comments": { + "developer_remark": "White Splash fyndx1 theme submission", + "reviewer_feedback": "" + }, + "release": { + "version": "1.0.157", + "notes": "

White-splash release notes. Fyndx1 theme submission.

" + }, + "slug": "white-splash", + "organization_id": "64aec4634bc407961ed265c5", + "user_id": "ce6432937739e49875dedae0", + "created_at": "2023-07-24T10:26:06.612Z", + "updated_at": "2023-07-24T10:26:37.894Z", + "template_theme_id": "64be51dd44650d20b5b15f18", + "theme_type": "vue2" + } +} +``` +
+ +
+ + + + + + + + + +--- + + +### deleteOrganizationTheme +Delete a theme + + + + +```java +partnerClient.theme.deleteOrganizationTheme( organizationId, themeId) { + //use response +} +``` + + + +| Argument | Type | Required | Description | +| --------- | ----- | -------- | ----------- | +| organizationId | String | yes | The ID of the organization | +| themeId | String | yes | The ID of the theme | + + + +This endpoint allows you to delete a theme by providing the organization and theme IDs. + +*Returned Response:* + + + + +[MarketplaceTheme](#MarketplaceTheme) + +Successful deletion of the theme + + + + +
+  Example: + +```json + +``` +
+ + + + + + + + + +--- + + +### getLatestVersionOfThemeBySlug +Get latest version of specified theme + + + + +```java +partnerClient.theme.getLatestVersionOfThemeBySlug( organizationId, slugName) { + //use response +} +``` + + + +| Argument | Type | Required | Description | +| --------- | ----- | -------- | ----------- | +| organizationId | String | yes | The ID of the organization | +| slugName | String | yes | Slug of theme | + + + +Use this api to get latest version of specified theme + +*Returned Response:* + + + + +[List](#List) + +Successful operation + + + + +
+  Example: + +```json + +``` +
+ + + + + + + + + +--- + + +### createNewThemeInOrganization +Create a new theme for the organization + + + + +```java +partnerClient.theme.createNewThemeInOrganization( organizationId, slug, body body) { + //use response +} +``` + + + +| Argument | Type | Required | Description | +| --------- | ----- | -------- | ----------- | +| organizationId | String | yes | The ID of the organization | +| slug | String? | no | The slug of the theme. | +| body | [MarketplaceTheme](#MarketplaceTheme) | yes | Request body | + + +Use this api to create a new theme for the organization + +*Returned Response:* + + + + +[MarketplaceTheme](#MarketplaceTheme) + +Theme updated successfully + + + + +
+  Examples: + + +
+  example1 + +```json +{ + "value": { + "_id": "64be51bee7048a025f4fb0b8", + "payment": { + "is_paid": false, + "amount": 0 + }, + "contact": { + "developer_contact": [ + "test@gofynd.com" + ], + "seller_contact": "test@gofynd.com" + }, + "industry": [ + "Business equipment and supplies", + "Books, music, and video", + "Clothing" + ], + "is_update": false, + "is_default": false, + "name": "White-Splash", + "tagline": "Where Style Meets Artistry", + "description": "Kartmax is the perfect theme to get you started with your store. Capture audiences' attention through captivating layouts inspired by editorial design, striking typography, and impactful hero sections. Embrace a contemporary narrative that exudes personality and brings your content to life.", + "catalog_size": { + "min": 200, + "max": 0 + }, + "images": { + "desktop": "https://cdn.pixelbin.io/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/EXo5oubRa-desktop.png", + "mobile": "https://cdn.pixelbin.io/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/PY-1mmO03-mobile.png" + }, + "carousel": [ + { + "desktop": "https://cdn.pixelbin.io/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/EXo5oubRa-desktop.png", + "mobile": "https://cdn.pixelbin.io/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/fhPI_ADIa-carousel_mobile_0.png" + }, + { + "desktop": "https://cdn.pixelbin.io/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/EXo5oubRa-desktop.png", + "mobile": "https://cdn.pixelbin.io/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/u3zWsTqM5-carousel_mobile_1.png" + }, + { + "desktop": "https://cdn.pixelbin.io/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/EXo5oubRa-desktop.png", + "mobile": "https://cdn.pixelbin.io/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/fhPI_ADIa-carousel_mobile_0.png" + }, + { + "desktop": "https://cdn.pixelbin.io/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/EXo5oubRa-desktop.png", + "mobile": "https://cdn.pixelbin.io/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/fhPI_ADIa-carousel_mobile_0.png" + } + ], + "src": "https://cdn.pixelbin.io/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/general/free/original/zrIW3mA4G-White-Splash_1.0.157.zip", + "explore": { + "title": "Elevate Your Shopping Experience", + "description": "Designed to cater to extensive carts and inventories, featuring a prominent search bar and the choice for a permanently visible cart sidebar." + }, + "features": [ + { + "category": "Home Sections", + "list": [ + { + "label": "Video", + "description": "Video as a section" + }, + { + "label": "Carousel", + "description": "Carousel as a section" + } + ] + }, + { + "category": "Authentication", + "list": [ + { + "label": "Standard Login Interface", + "description": "Deafult Login Interface, use this if you have not implmented custom login interface for login, register flows inside your theme code." + }, + { + "label": "Login with Email", + "description": "This is be default available in Standard Login Interface. If custom login interface is used, check your implmentation." + }, + { + "label": "Login with Mobile Number", + "description": "This is be default available in Standard Login Interface. If custom login interface is used, check your implmentation." + }, + { + "label": "Voice OTP", + "description": "This is be default available in Standard Login Interface. If custom login interface is used, check your implmentation." + }, + { + "label": "Social Media login", + "description": "This is be default available in Standard Login Interface. If custom login interface is used, check your implmentation." + } + ] + }, + { + "category": "Cart & Checkout", + "list": [ + { + "label": "Guest Checkout", + "description": "Enables customer to buy a product without login" + }, + { + "label": "Customized Cart", + "description": "--" + } + ] + }, + { + "category": "Product Description", + "list": [ + { + "label": "Buy Now", + "description": "Buy Now flow support along with Add to Cart" + }, + { + "label": "Product Videos", + "description": "Videos present in product catalog can be shown" + }, + { + "label": "3D Model of Product", + "description": "3D Models present in product catalog can be shown" + }, + { + "label": "Product Variants", + "description": "Show variants of a particular product" + }, + { + "label": "Extension Support", + "description": "Supports various extensions made for Prdouct Page" + }, + { + "label": "Default Size Selection", + "description": "By default select one size" + }, + { + "label": "Product Highlights", + "description": "Show highlights added in the cartalog" + }, + { + "label": "Short Description", + "description": "Show short description from catalog in PDP" + } + ] + }, + { + "category": "Product Listing", + "list": [ + { + "label": "Infinite Scroll", + "description": "Infinite scrolling support using lazy loady" + }, + { + "label": "Discount Badges", + "description": "Show discount or custom badges on Product tiles" + }, + { + "label": "Product Variants", + "description": "Supports showcase various variants on the listing itself" + } + ] + }, + { + "category": "Navigation", + "list": [ + { + "label": "Customizable Navigation Menu", + "description": "Customize Navigation Menu to accomodate multiple desings" + } + ] + }, + { + "category": "SEO", + "list": [ + { + "label": "alt text", + "description": "Alt text data received in API is used on Product Images" + } + ] + } + ], + "highlights": [ + { + "title": "Styles and Colours", + "description": "With custom colours and styles, you can modify the appearance of your entire store or particular sections for specific events, marketing drives, or whenever des", + "image": "https://cdn.pixelbin.io/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/xD9aRhQIO-highlight_0.png" + }, + { + "title": "Enhanced Navigation and Menu:", + "description": "Unleash the full potential of your header by showcasing images, videos, products, and collections in an enhanced dropdown menu. Improve the browsing experience ", + "image": "https://cdn.pixelbin.io/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/xD9aRhQIO-highlight_0.png" + } + ], + "variations": [ + { + "name": "default", + "color": "#35919b", + "demo_url": "nx7zjzx4i.hostx1.de", + "images": { + "desktop": "https://cdn.pixelbin.io/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/EXo5oubRa-desktop.png", + "mobile": "https://cdn.pixelbin.io/v2/falling-surf-7c8bb8/fyndnp/wrkr/addsale/misc/pictures/free-icon/original/PY-1mmO03-mobile.png" + } + } + ], + "documentation": { + "notes": "

White splash user documentation

", + "url": "" + }, + "status": "published", + "step": 7, + "comments": { + "developer_remark": "White Splash fyndx1 theme submission", + "reviewer_feedback": "" + }, + "release": { + "version": "1.0.157", + "notes": "

White-splash release notes. Fyndx1 theme submission.

" + }, + "slug": "white-splash", + "organization_id": "64aec4634bc407961ed265c5", + "user_id": "ce6432937739e49875dedae0", + "created_at": "2023-07-24T10:26:06.612Z", + "updated_at": "2023-07-24T10:26:37.894Z", + "template_theme_id": "64be51dd44650d20b5b15f18", + "theme_type": "vue2" + } +} +``` +
+ +
+ + + + + + + + + +--- + + +### getThemeRejectionReasons +Get theme rejection reasons + + + + +```java +partnerClient.theme.getThemeRejectionReasons( organizationId, themeId) { + //use response +} +``` + + + +| Argument | Type | Required | Description | +| --------- | ----- | -------- | ----------- | +| organizationId | String | yes | The ID of the organization | +| themeId | String | yes | The ID of the theme | + + + +Use this api to get theme rejection reasons + +*Returned Response:* + + + + +[ThemeRejectionReasons](#ThemeRejectionReasons) + +Theme rejection reasons retrieved successfully + + + + +
+  Example: + +```json + +``` +
+ + + + + + + + + +--- + + +### getThemeVersions +Get theme versions + + + + +```java +partnerClient.theme.getThemeVersions( organizationId, themeSlug, pageSize, pageNo) { + //use response +} +``` + + + +| Argument | Type | Required | Description | +| --------- | ----- | -------- | ----------- | +| organizationId | String | yes | The ID of the organization. | +| themeSlug | String | yes | The slug of the theme. | +| pageSize | Integer? | no | The number of items to return per page. | +| pageNo | Integer? | no | The page number to return. | + + + +Retrieve a list of theme versions for a specific theme in an organization. + +*Returned Response:* + + + + +[MarketplaceThemeSchema](#MarketplaceThemeSchema) + +Successful operation. + + + + +
+  Example: + +```json + +``` +
+ + + + + + + + + +--- + + + + +### Schemas + + + + #### [AvailablePageSchema](#AvailablePageSchema) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | value | String? | yes | | + | text | String? | yes | | + | path | String? | yes | | + | type | String? | yes | | + | sections | ArrayList<[AvailablePageSchemaSections](#AvailablePageSchemaSections)>? | yes | | + | sectionsMeta | ArrayList<[AvailablePageSectionMetaAttributes](#AvailablePageSectionMetaAttributes)>? | yes | | + | theme | String? | yes | | + | seo | [AvailablePageSeo](#AvailablePageSeo)? | yes | | + | props | ArrayList>? | yes | | + | id | String? | yes | | + +--- + + + + + #### [AvailablePageSectionMetaAttributes](#AvailablePageSectionMetaAttributes) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | attributes | HashMap? | yes | | + +--- + + + + + #### [AvailablePageSeo](#AvailablePageSeo) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | title | String? | yes | | + | description | String? | yes | | + | id | String? | yes | | + +--- + + + + + #### [AvailablePageSchemaSections](#AvailablePageSchemaSections) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | name | String? | yes | | + | label | String? | yes | | + | props | HashMap? | yes | | + | blocks | ArrayList>? | yes | | + | preset | HashMap? | yes | | + | predicate | [AvailablePagePredicate](#AvailablePagePredicate)? | yes | | + +--- + + + + + #### [AvailablePageScreenPredicate](#AvailablePageScreenPredicate) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | mobile | Boolean? | yes | | + | desktop | Boolean? | yes | | + | tablet | Boolean? | yes | | + +--- + + + + + #### [AvailablePageUserPredicate](#AvailablePageUserPredicate) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | authenticated | Boolean? | yes | | + | anonymous | Boolean? | yes | | + +--- + + + + + #### [AvailablePageRoutePredicate](#AvailablePageRoutePredicate) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | selected | String? | yes | | + | exactUrl | String? | yes | | + | query | HashMap? | yes | | + +--- + + + + + #### [AvailablePagePredicate](#AvailablePagePredicate) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | screen | [AvailablePageScreenPredicate](#AvailablePageScreenPredicate)? | yes | | + | user | [AvailablePageUserPredicate](#AvailablePageUserPredicate)? | yes | | + | route | [AvailablePageRoutePredicate](#AvailablePageRoutePredicate)? | yes | | + +--- + + + + + #### [MarketplaceThemeSchema](#MarketplaceThemeSchema) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | themes | ArrayList<[MarketplaceTheme](#MarketplaceTheme)>? | yes | | + | page | [PaginationSchema](#PaginationSchema)? | yes | | + +--- + + + + + #### [MarketplaceTheme](#MarketplaceTheme) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | id | String? | yes | Theme ID | + | payment | [PaymentInfo](#PaymentInfo)? | yes | | + | contact | [ContactInfo](#ContactInfo)? | yes | | + | industry | ArrayList? | yes | Industries the theme is suitable for | + | isUpdate | Boolean? | yes | Indicates if the theme is an update | + | isDefault | Boolean? | yes | Indicates if the theme is a default theme | + | name | String? | yes | Theme name | + | tagline | String? | yes | Theme tagline | + | description | String? | yes | Theme description | + | catalogSize | [CatalogSize](#CatalogSize)? | yes | | + | images | [MarketplaceThemeImages](#MarketplaceThemeImages)? | yes | | + | carousel | ArrayList<[CarouselItem](#CarouselItem)>? | yes | | + | src | String? | yes | Theme source URL | + | explore | [ExploreInfo](#ExploreInfo)? | yes | | + | features | ArrayList<[Feature](#Feature)>? | yes | | + | highlights | ArrayList<[Highlight](#Highlight)>? | yes | | + | variations | ArrayList<[Variation](#Variation)>? | yes | | + | documentation | [Documentation](#Documentation)? | yes | | + | status | String? | yes | Theme status | + | step | Integer? | yes | Theme step | + | comments | [Comments](#Comments)? | yes | | + | release | [Release](#Release)? | yes | | + | slug | String? | yes | Theme slug | + | organizationId | String? | yes | Organization ID | + | userId | String? | yes | User ID | + | createdAt | String? | yes | Theme creation timestamp | + | updatedAt | String? | yes | Theme update timestamp | + | templateThemeId | String? | yes | Template theme ID | + +--- + + + + + #### [PaymentInfo](#PaymentInfo) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | isPaid | Boolean? | yes | Indicates if the theme is paid | + | amount | Double? | yes | Amount of payment | + +--- + + + + + #### [ContactInfo](#ContactInfo) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | developerContact | ArrayList? | yes | Developer contact information | + | sellerContact | String? | yes | Seller contact information | + +--- + + + + + #### [CatalogSize](#CatalogSize) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | min | Integer? | yes | Minimum catalog size | + | max | Integer? | yes | Maximum catalog size | + +--- + + + + + #### [MarketplaceThemeImages](#MarketplaceThemeImages) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | desktop | String? | yes | Desktop theme image URL | + | mobile | String? | yes | Mobile theme image URL | + +--- + + + + + #### [CarouselItem](#CarouselItem) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | desktop | String? | yes | Desktop carousel image URL | + | mobile | String? | yes | Mobile carousel image URL | + +--- + + + + + #### [ExploreInfo](#ExploreInfo) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | title | String? | yes | Explore feature title | + | description | String? | yes | Explore feature description | + +--- + + + + + #### [Feature](#Feature) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | category | String? | yes | Feature category | + | list | ArrayList<[FeatureItem](#FeatureItem)>? | yes | | + +--- + + + + + #### [FeatureItem](#FeatureItem) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | label | String? | yes | Feature label | + | description | String? | yes | Feature description | + +--- + + + + + #### [Highlight](#Highlight) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | title | String? | yes | Highlight title | + | description | String? | yes | Highlight description | + | image | String? | yes | Highlight image URL | + +--- + + + + + #### [Variation](#Variation) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | name | String? | yes | Variation name | + | color | String? | yes | Variation color | + | demoUrl | String? | yes | Variation demo URL | + | images | [MarketplaceThemeImages](#MarketplaceThemeImages)? | yes | | + +--- + + + + + #### [Documentation](#Documentation) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | notes | String? | yes | Documentation notes | + | url | String? | yes | Documentation URL | + +--- + + + + + #### [Comments](#Comments) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | developerRemark | String? | yes | Developer remark | + | reviewerFeedback | String? | yes | Reviewer feedback | + +--- + + + + + #### [ThemeRejectionReasons](#ThemeRejectionReasons) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | id | String | no | The ID of the theme rejection reasons object | + | message | String? | yes | A general message about the rejection reasons | + | themeId | String | no | The ID of the rejected theme | + | organizationId | String | no | The ID of the organization | + | adminId | String | no | The ID of the admin who rejected the theme | + | userId | String | no | The ID of the user who submitted the theme | + | status | String | no | The status of the theme (e.g., rejected) | + | rejectionReasons | HashMap> | no | | + | createdAt | String? | yes | The date and time when the theme rejection reasons object was created | + | updatedAt | String? | yes | The date and time when the theme rejection reasons object was last updated | + +--- + + + + + #### [AllAvailablePageSchema](#AllAvailablePageSchema) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | pages | ArrayList<[AvailablePageSchema](#AvailablePageSchema)>? | yes | | + +--- + + + + + #### [PaginationSchema](#PaginationSchema) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | size | Integer? | yes | | + | itemTotal | Integer? | yes | | + | hasNext | Boolean? | yes | | + | type | String? | yes | | + | current | Integer? | yes | | + +--- + + + + + #### [BlitzkriegApiErrorSchema](#BlitzkriegApiErrorSchema) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | message | String? | yes | | + +--- + + + + + #### [BlitzkriegInternalServerErrorSchema](#BlitzkriegInternalServerErrorSchema) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | message | String? | yes | | + +--- + + + + + #### [ThemesSchema](#ThemesSchema) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | font | [Font](#Font)? | yes | | + | config | [Config](#Config)? | yes | | + | applied | Boolean? | yes | Whether the theme has been applied or not | + | isPrivate | Boolean? | yes | Whether the theme is private or not | + | tags | ArrayList? | yes | An array of tags associated with the theme | + | id | String? | yes | The unique identifier of the theme | + | applicationId | String? | yes | The ID of the application | + | marketplaceThemeId | String? | yes | The ID of the theme in the marketplace | + | meta | [Meta](#Meta)? | yes | | + | name | String? | yes | The name of the theme | + | templateThemeId | String? | yes | The ID of the template theme | + | version | String? | yes | The version of the theme | + | styles | HashMap? | yes | The styles associated with the theme | + | createdAt | String? | yes | The creation timestamp of the theme | + | updatedAt | String? | yes | The last update timestamp of the theme | + | assets | [Assets](#Assets)? | yes | | + | availableSections | ArrayList<[SectionItem](#SectionItem)>? | yes | Available sections information | + +--- + + + + + #### [Font](#Font) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | variants | [FontVariants](#FontVariants) | no | | + | family | String | no | The font family | + +--- + + + + + #### [FontVariants](#FontVariants) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | light | [FontVariant](#FontVariant)? | yes | | + | regular | [FontVariant](#FontVariant)? | yes | | + | medium | [FontVariant](#FontVariant)? | yes | | + | semiBold | [FontVariant](#FontVariant)? | yes | | + | bold | [FontVariant](#FontVariant)? | yes | | + +--- + + + + + #### [FontVariant](#FontVariant) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | name | String | no | The name of the font variant | + | file | String | no | The URL of the font file | + +--- + + + + + #### [Config](#Config) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | current | String | no | The current configuration | + | list | ArrayList<[ThemeConfiguration](#ThemeConfiguration)> | no | A list of configurations | + | globalSchema | [GlobalSchema](#GlobalSchema)? | yes | | + | preset | [Preset](#Preset)? | yes | | + +--- + + + + + #### [ThemeConfiguration](#ThemeConfiguration) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | name | String? | yes | The name of the configuration | + | globalConfig | [GlobalConfig](#GlobalConfig)? | yes | | + | custom | [CustomConfig](#CustomConfig)? | yes | | + | page | ArrayList? | yes | An array of pages | + +--- + + + + + #### [CustomConfig](#CustomConfig) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | props | [CustomProps](#CustomProps)? | yes | | + +--- + + + + + #### [CustomProps](#CustomProps) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | headerBgColor | String? | yes | The header background color | + | headerTextColor | String? | yes | The header text color | + | headerBorderColor | String? | yes | The header border color | + | headerIconColor | String? | yes | The header icon color | + | headerCartNotificationBgColor | String? | yes | The header cart notification background color | + | headerCartNotificationTextColor | String? | yes | The header cart notification text color | + | headerNavHoverColor | String? | yes | The header navigation hover color | + | buttonPrimaryColor | String? | yes | The primary button color | + | buttonPrimaryLabelColor | String? | yes | The primary button label color | + | buttonAddToCartColor | String? | yes | The add to cart button color | + | buttonAddToCartLabelColor | String? | yes | The add to cart button label color | + | buttonSecondaryColor | String? | yes | The secondary button color | + | buttonSecondaryLabelColor | String? | yes | The secondary button label color | + | buttonTertiaryColor | String? | yes | The tertiary button color | + | buttonTertiaryLabelColor | String? | yes | The tertiary button label color | + | buttonTertiaryHoverColor | String? | yes | The tertiary button hover color | + | buttonTertiaryHoverTextColor | String? | yes | The tertiary button hover text color | + | textHeadingLinkColor | String? | yes | The text heading link color | + | textBodyColor | String? | yes | The text body color | + | textPriceColor | String? | yes | The text price color | + | textSalePriceColor | String? | yes | The text sale price color | + | textStrikethroughPriceColor | String? | yes | The text strikethrough price color | + | textDiscountColor | String? | yes | The text discount color | + | footerBgColor | String? | yes | The footer background color | + | footerTextColor | String? | yes | The footer text color | + | footerBorderColor | String? | yes | The footer border color | + | footerNavHoverColor | String? | yes | The footer navigation hover color | + | disableCart | Boolean? | yes | Whether to disable the cart or not | + | isMenuBelowLogo | Boolean? | yes | Whether the menu is below the logo or not | + | menuPosition | String? | yes | The position of the menu | + +--- + + + + + #### [GlobalConfig](#GlobalConfig) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | statics | [StaticConfig](#StaticConfig)? | yes | | + | auth | [AuthConfig](#AuthConfig)? | yes | | + | palette | [PaletteConfig](#PaletteConfig)? | yes | | + +--- + + + + + #### [PaletteConfig](#PaletteConfig) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | generalSetting | [GeneralSetting](#GeneralSetting)? | yes | | + | advanceSetting | [AdvanceSetting](#AdvanceSetting)? | yes | | + +--- + + + + + #### [GeneralSetting](#GeneralSetting) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | theme | [ThemeSetting](#ThemeSetting)? | yes | | + | text | [TextSetting](#TextSetting)? | yes | | + | button | [ButtonSetting](#ButtonSetting)? | yes | | + | saleDiscount | [SaleDiscountSetting](#SaleDiscountSetting)? | yes | | + | header | [HeaderSetting](#HeaderSetting)? | yes | | + | footer | [FooterSetting](#FooterSetting)? | yes | | + +--- + + + + + #### [AdvanceSetting](#AdvanceSetting) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | overlayPopup | [OverlayPopupSetting](#OverlayPopupSetting)? | yes | | + | dividerStrokeHighlight | [DividerStrokeHighlightSetting](#DividerStrokeHighlightSetting)? | yes | | + | userAlerts | [UserAlertsSetting](#UserAlertsSetting)? | yes | | + +--- + + + + + #### [UserAlertsSetting](#UserAlertsSetting) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | successBackground | String? | yes | The success background color | + | successText | String? | yes | The success text color | + | errorBackground | String? | yes | The error background color | + | errorText | String? | yes | The error text color | + | infoBackground | String? | yes | The info background color | + | infoText | String? | yes | The info text color | + +--- + + + + + #### [ThemeSetting](#ThemeSetting) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | pageBackground | String? | yes | The page background color | + | themeAccent | String? | yes | The theme accent color | + +--- + + + + + #### [TextSetting](#TextSetting) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | textHeading | String? | yes | The text heading color | + | textBody | String? | yes | The text body color | + | textLabel | String? | yes | The text label color | + | textSecondary | String? | yes | The secondary text color | + +--- + + + + + #### [ButtonSetting](#ButtonSetting) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | buttonPrimary | String? | yes | The primary button color | + | buttonSecondary | String? | yes | The secondary button color | + | buttonLink | String? | yes | The button link color | + +--- + + + + + #### [SaleDiscountSetting](#SaleDiscountSetting) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | saleBadgeBackground | String? | yes | The sale badge background color | + | saleBadgeText | String? | yes | The sale badge text color | + | saleDiscountText | String? | yes | The sale discount text color | + | saleTimer | String? | yes | The sale timer color | + +--- + + + + + #### [HeaderSetting](#HeaderSetting) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | headerBackground | String? | yes | The header background color | + | headerNav | String? | yes | The header navigation color | + | headerIcon | String? | yes | The header icon color | + +--- + + + + + #### [FooterSetting](#FooterSetting) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | footerBackground | String? | yes | The footer background color | + | footerBottomBackground | String? | yes | The footer bottom background color | + | footerHeadingText | String? | yes | The footer heading text color | + | footerBodyText | String? | yes | The footer body text color | + | footerIcon | String? | yes | The footer icon color | + +--- + + + + + #### [OverlayPopupSetting](#OverlayPopupSetting) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | dialogBackgroung | String? | yes | The dialog background color | + | overlay | String? | yes | The overlay color | + +--- + + + + + #### [DividerStrokeHighlightSetting](#DividerStrokeHighlightSetting) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | dividerStrokes | String? | yes | The divider strokes color | + | highlight | String? | yes | The highlight color | + +--- + + + + + #### [StaticConfig](#StaticConfig) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | props | [StaticProps](#StaticProps)? | yes | | + +--- + + + + + #### [StaticProps](#StaticProps) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | colors | [Colors](#Colors)? | yes | | + | auth | [AuthConfig](#AuthConfig)? | yes | | + +--- + + + + + #### [AuthConfig](#AuthConfig) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | showHeaderAuth | Boolean? | yes | Whether to show header authentication or not | + | showFooterAuth | Boolean? | yes | Whether to show footer authentication or not | + +--- + + + + + #### [Colors](#Colors) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | primaryColor | String? | yes | The primary color | + | secondaryColor | String? | yes | The secondary color | + | accentColor | String? | yes | The accent color | + | linkColor | String? | yes | The link color | + | buttonSecondaryColor | String? | yes | The secondary button color | + | bgColor | String? | yes | The background color | + +--- + + + + + #### [Meta](#Meta) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | payment | [ThemePayment](#ThemePayment)? | yes | | + | description | String? | yes | The description of the theme | + | industry | ArrayList? | yes | An array of industries associated with the theme | + | release | [Release](#Release)? | yes | | + | images | [Images](#Images)? | yes | | + | slug | String? | yes | The slug of the theme | + | name | String? | yes | The name of the theme | + +--- + + + + + #### [ThemePayment](#ThemePayment) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | isPaid | Boolean? | yes | Whether the theme is paid or not | + | amount | Double? | yes | The amount of the theme | + +--- + + + + + #### [Release](#Release) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | notes | String? | yes | The release notes of the theme | + | version | String? | yes | The version of the theme | + +--- + + + + + #### [Images](#Images) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | desktop | String? | yes | The URL of the desktop image | + | mobile | String? | yes | The URL of the mobile image | + +--- + + + + + #### [Assets](#Assets) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | umdJs | [UMDJs](#UMDJs)? | yes | | + | commonJs | [CommonJS](#CommonJS)? | yes | | + | css | [CSS](#CSS)? | yes | | + +--- + + + + + #### [UMDJs](#UMDJs) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | links | ArrayList? | yes | | + +--- + + + + + #### [CommonJS](#CommonJS) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | link | String? | yes | | + +--- + + + + + #### [CSS](#CSS) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | links | ArrayList? | yes | | + +--- + + + + + #### [SectionItem](#SectionItem) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | props | ArrayList? | yes | | + | blocks | ArrayList? | yes | Blocks | + | name | String? | yes | Name of the section | + | label | String? | yes | Label for the section | + +--- + + + + + #### [GlobalSchema](#GlobalSchema) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | props | ArrayList<[Prop](#Prop)>? | yes | | + +--- + + + + + #### [Prop](#Prop) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | type | String? | yes | The type of the property | + | category | String? | yes | The category of the property | + | id | String? | yes | The ID of the property | + | label | String? | yes | The label of the property | + | info | String? | yes | Additional information about the property | + +--- + + + + + #### [Preset](#Preset) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | pages | ArrayList<[Page](#Page)>? | yes | | + +--- + + + + + #### [Page](#Page) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | sections | ArrayList<[Section](#Section)>? | yes | | + | value | String? | yes | The value of the page. | + +--- + + + + + #### [SectionProps](#SectionProps) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | title | [TextProp](#TextProp)? | yes | | + | itemMargin | [TextProp](#TextProp)? | yes | | + | autoplay | [CheckboxProp](#CheckboxProp)? | yes | | + | slideInterval | [RangeProp](#RangeProp)? | yes | | + +--- + + + + + #### [SectionPreset](#SectionPreset) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | blocks | ArrayList<[Block](#Block)>? | yes | | + +--- + + + + + #### [ImagePickerProp](#ImagePickerProp) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | type | String? | yes | The type of the property. | + | value | String? | yes | The value of the image picker property. | + +--- + + + + + #### [UrlProp](#UrlProp) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | type | String? | yes | The type of the property. | + | value | String? | yes | The value of the URL property. | + +--- + + + + + #### [BlockProps](#BlockProps) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | image | [ImagePickerProp](#ImagePickerProp)? | yes | | + | slideLink | [UrlProp](#UrlProp)? | yes | | + +--- + + + + + #### [TextProp](#TextProp) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | value | String? | yes | The value of the text property. | + | type | String? | yes | The type of the property. | + +--- + + + + + #### [CheckboxProp](#CheckboxProp) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | value | Boolean? | yes | The value of the checkbox property. | + | type | String? | yes | The type of the property. | + +--- + + + + + #### [RangeProp](#RangeProp) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | value | Integer? | yes | The value of the range property. | + | type | String? | yes | The type of the property. | + +--- + + + + + #### [Section](#Section) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | blocks | ArrayList<[Block](#Block)>? | yes | | + | predicate | [Predicate](#Predicate)? | yes | | + | name | String? | yes | The name of the section. | + | props | [SectionProps](#SectionProps)? | yes | | + | preset | [SectionPreset](#SectionPreset)? | yes | | + +--- + + + + + #### [Block](#Block) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | type | String? | yes | The type of the block. | + | name | String? | yes | The name of the block. | + | props | [BlockProps](#BlockProps)? | yes | | + +--- + + + + + #### [Predicate](#Predicate) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | screen | [Screen](#Screen)? | yes | | + | user | [ThemeUserSchema](#ThemeUserSchema)? | yes | | + | route | [Route](#Route)? | yes | | + +--- + + + + + #### [Screen](#Screen) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | mobile | Boolean? | yes | True if the screen is a mobile device. | + | desktop | Boolean? | yes | True if the screen is a desktop device. | + | tablet | Boolean? | yes | True if the screen is a tablet device. | + +--- + + + + + #### [ThemeUserSchema](#ThemeUserSchema) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | authenticated | Boolean? | yes | True if the user is authenticated. | + | anonymous | Boolean? | yes | True if the user is anonymous. | + +--- + + + + + #### [Route](#Route) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | selected | String? | yes | The selected route. | + | exactUrl | String? | yes | The exact URL of the route. | + +--- + + + + + #### [UpdateThemeRequestBody](#UpdateThemeRequestBody) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | config | [Config](#Config)? | yes | | + | font | [Font](#Font)? | yes | | + +--- + + + diff --git a/documentation/platform/AUDITTRAIL.md b/documentation/platform/AUDITTRAIL.md index 8043cda2..e26266f0 100644 --- a/documentation/platform/AUDITTRAIL.md +++ b/documentation/platform/AUDITTRAIL.md @@ -6,6 +6,8 @@ ## AuditTrail Methods Audit Logging Service that logs the crucial updates on the Platform + +Default * [getAuditLogs](#getauditlogs) * [createAuditLog](#createauditlog) * [getAuditLog](#getauditlog) @@ -13,9 +15,11 @@ Audit Logging Service that logs the crucial updates on the Platform + ## Methods with example and description + ### getAuditLogs Get paginated audit logs @@ -374,6 +378,7 @@ Success + ### Schemas diff --git a/documentation/platform/BILLING.md b/documentation/platform/BILLING.md index e69adfe6..106bf069 100644 --- a/documentation/platform/BILLING.md +++ b/documentation/platform/BILLING.md @@ -6,6 +6,8 @@ ## Billing Methods Handle platform subscription + +Default * [checkCouponValidity](#checkcouponvalidity) * [createSubscriptionCharge](#createsubscriptioncharge) * [getSubscriptionCharge](#getsubscriptioncharge) @@ -26,9 +28,11 @@ Handle platform subscription + ## Methods with example and description + ### checkCouponValidity Check coupon validity @@ -2482,6 +2486,7 @@ Success + ### Schemas diff --git a/documentation/platform/CART.md b/documentation/platform/CART.md index b8535501..b09778c0 100644 --- a/documentation/platform/CART.md +++ b/documentation/platform/CART.md @@ -6,6 +6,8 @@ ## Cart Methods Cart APIs + +Default * [getCoupons](#getcoupons) * [createCoupon](#createcoupon) * [getCouponById](#getcouponbyid) @@ -66,9 +68,11 @@ Cart APIs + ## Methods with example and description + ### getCoupons Get with single coupon details or coupon list @@ -12695,6 +12699,7 @@ Success. Returns a Cart object as shown below. Refer `CartDetailResponse` for mo + ### Schemas diff --git a/documentation/platform/CATALOG.md b/documentation/platform/CATALOG.md index 207d07c1..0431cd76 100644 --- a/documentation/platform/CATALOG.md +++ b/documentation/platform/CATALOG.md @@ -6,6 +6,8 @@ ## Catalog Methods Catalog - Platform Front API's' API's allows you to access list of products, prices, seller details, similar features, variants and many more useful features. + +Default * [getCatalogInsights](#getcataloginsights) * [getApplicationBrandListing](#getapplicationbrandlisting) * [updateAppBrand](#updateappbrand) @@ -150,9 +152,11 @@ Catalog - Platform Front API's' API's allows you to access list of products, pri + ## Methods with example and description + ### getCatalogInsights Analytics data of catalog and inventory. @@ -16729,6 +16733,7 @@ Returns a success response + ### Schemas diff --git a/documentation/platform/COMMON.md b/documentation/platform/COMMON.md index 53fa8275..1f2c5be7 100644 --- a/documentation/platform/COMMON.md +++ b/documentation/platform/COMMON.md @@ -6,14 +6,18 @@ ## Common Methods Application configuration apis + +Default * [searchApplication](#searchapplication) * [getLocations](#getlocations) + ## Methods with example and description + ### searchApplication Search Application @@ -184,6 +188,7 @@ Success + ### Schemas diff --git a/documentation/platform/COMMUNICATION.md b/documentation/platform/COMMUNICATION.md index 318d4b9b..648f5de2 100644 --- a/documentation/platform/COMMUNICATION.md +++ b/documentation/platform/COMMUNICATION.md @@ -6,6 +6,8 @@ ## Communication Methods Manages email, sms, push notifications sent to users + +Default * [getAppProviders](#getappproviders) * [updateAppProviders](#updateappproviders) * [getGlobalProviders](#getglobalproviders) @@ -69,9 +71,11 @@ Manages email, sms, push notifications sent to users + ## Methods with example and description + ### getAppProviders Get app providers @@ -5724,6 +5728,7 @@ Success + ### Schemas diff --git a/documentation/platform/COMPANYPROFILE.md b/documentation/platform/COMPANYPROFILE.md index 9bcfd136..e0c08828 100644 --- a/documentation/platform/COMPANYPROFILE.md +++ b/documentation/platform/COMPANYPROFILE.md @@ -6,6 +6,8 @@ ## CompanyProfile Methods Catalog CBS - platform Front API's + +Default * [cbsOnboardGet](#cbsonboardget) * [updateCompany](#updatecompany) * [getCompanyMetrics](#getcompanymetrics) @@ -23,9 +25,11 @@ Catalog CBS - platform Front API's + ## Methods with example and description + ### cbsOnboardGet Get company profile @@ -1394,6 +1398,7 @@ Tags list. See example below or refer `StoreTagsResponseSchema` for details + ### Schemas diff --git a/documentation/platform/CONFIGURATION.md b/documentation/platform/CONFIGURATION.md index 60b52a5f..cb425a09 100644 --- a/documentation/platform/CONFIGURATION.md +++ b/documentation/platform/CONFIGURATION.md @@ -6,6 +6,8 @@ ## Configuration Methods Application configuration apis + +Default * [getBuildConfig](#getbuildconfig) * [updateBuildConfig](#updatebuildconfig) * [getPreviousVersions](#getpreviousversions) @@ -59,9 +61,11 @@ Application configuration apis + ## Methods with example and description + ### getBuildConfig Get configuration of latest mobile build @@ -5070,6 +5074,7 @@ Success + ### Schemas diff --git a/documentation/platform/CONTENT.md b/documentation/platform/CONTENT.md index db6bf60e..5b7e4d39 100644 --- a/documentation/platform/CONTENT.md +++ b/documentation/platform/CONTENT.md @@ -6,6 +6,8 @@ ## Content Methods Content System + +Default * [getAnnouncementsList](#getannouncementslist) * [createAnnouncement](#createannouncement) * [getAnnouncementById](#getannouncementbyid) @@ -78,9 +80,11 @@ Content System + ## Methods with example and description + ### getAnnouncementsList Get a list of announcements @@ -7488,6 +7492,7 @@ Success. Returns a JSON object of components. Refer `PageSchema` for more detail + ### Schemas diff --git a/documentation/platform/DISCOUNT.md b/documentation/platform/DISCOUNT.md index 2042691a..a3fd53f1 100644 --- a/documentation/platform/DISCOUNT.md +++ b/documentation/platform/DISCOUNT.md @@ -6,6 +6,8 @@ ## Discount Methods Discount + +Default * [getDiscounts](#getdiscounts) * [createDiscount](#creatediscount) * [getDiscount](#getdiscount) @@ -20,9 +22,11 @@ Discount + ## Methods with example and description + ### getDiscounts Fetch discount list. @@ -625,6 +629,7 @@ Success + ### Schemas @@ -657,6 +662,7 @@ Success | filePath | String? | yes | | | brandIds | ArrayList? | yes | | | storeIds | ArrayList? | yes | | + | zoneIds | ArrayList? | yes | | | validity | [ValidityObject](#ValidityObject) | no | | | discountMeta | [DiscountMeta](#DiscountMeta)? | yes | | diff --git a/documentation/platform/FILESTORAGE.md b/documentation/platform/FILESTORAGE.md index 2a502633..880ca2db 100644 --- a/documentation/platform/FILESTORAGE.md +++ b/documentation/platform/FILESTORAGE.md @@ -7,6 +7,8 @@ ## FileStorage Methods This service provides functionality to manage assets and generate pdf. You can upload the assets, get the cdn link for the assets, proxy the assets and many more things. + +Default * [startUpload](#startupload) * [completeUpload](#completeupload) * [appStartUpload](#appstartupload) @@ -27,9 +29,11 @@ This service provides functionality to manage assets and generate pdf. You can u + ## Methods with example and description + ### startUpload This operation initiates upload and returns storage link which is valid for 30 Minutes. You can use that storage link to make subsequent upload request with file buffer or blob. @@ -1784,6 +1788,7 @@ Kafka response published to generate payment receipt + ### Schemas diff --git a/documentation/platform/FINANCE.md b/documentation/platform/FINANCE.md index fd3a6e78..e3cc6792 100644 --- a/documentation/platform/FINANCE.md +++ b/documentation/platform/FINANCE.md @@ -6,6 +6,8 @@ ## Finance Methods Handles all finance related activities + +Default * [generateReport](#generatereport) * [downloadReport](#downloadreport) * [getData](#getdata) @@ -33,9 +35,11 @@ Handles all finance related activities + ## Methods with example and description + ### generateReport Generate finance reports. @@ -2159,6 +2163,7 @@ Success + ### Schemas diff --git a/documentation/platform/INVENTORY.md b/documentation/platform/INVENTORY.md index 86031681..440082b2 100644 --- a/documentation/platform/INVENTORY.md +++ b/documentation/platform/INVENTORY.md @@ -6,6 +6,8 @@ ## Inventory Methods Catalog - Platform Front API's' API's allows you to access list of products, prices, seller details, similar features, variants and many more useful features. + +Default * [getJobsByCompany](#getjobsbycompany) * [updateJob](#updatejob) * [createJob](#createjob) @@ -21,9 +23,11 @@ Catalog - Platform Front API's' API's allows you to access list of products, pri + ## Methods with example and description + ### getJobsByCompany Get Job Configs For A Company @@ -677,6 +681,7 @@ Successful operation + ### Schemas diff --git a/documentation/platform/LEAD.md b/documentation/platform/LEAD.md index 10cbdd95..f609a60a 100644 --- a/documentation/platform/LEAD.md +++ b/documentation/platform/LEAD.md @@ -6,6 +6,8 @@ ## Lead Methods Handles communication between Administrator + +Default * [getPlatformTickets](#getplatformtickets) * [createTicket](#createticket) * [getTickets](#gettickets) @@ -33,9 +35,11 @@ Handles communication between Administrator + ## Methods with example and description + ### getPlatformTickets Gets the list of company level tickets and/or ticket filters depending on query params @@ -3939,6 +3943,7 @@ Success + ### Schemas diff --git a/documentation/platform/ORDER.md b/documentation/platform/ORDER.md index e55ce016..20848846 100644 --- a/documentation/platform/ORDER.md +++ b/documentation/platform/ORDER.md @@ -6,6 +6,8 @@ ## Order Methods Handles all platform order and shipment api(s) + +Default * [invalidateShipmentCache](#invalidateshipmentcache) * [reassignLocation](#reassignlocation) * [updateShipmentLock](#updateshipmentlock) @@ -57,9 +59,11 @@ Handles all platform order and shipment api(s) + ## Methods with example and description + ### invalidateShipmentCache @@ -4859,6 +4863,7 @@ We are processing the request! + ### Schemas @@ -7365,7 +7370,7 @@ We are processing the request! | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | | phone | String? | yes | | - | brandStoreTags | String? | yes | | + | brandStoreTags | ArrayList? | yes | | | pincode | String? | yes | | | meta | HashMap? | yes | | | address | String? | yes | | @@ -8083,6 +8088,7 @@ We are processing the request! | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | | gstDetails | [GSTDetailsData](#GSTDetailsData)? | yes | | + | bagStatus | ArrayList<[BagStatusHistory](#BagStatusHistory)>? | yes | | | parentPromoBags | HashMap? | yes | | | financialBreakup | [FinancialBreakup](#FinancialBreakup)? | yes | | | bagConfigs | [BagConfigs](#BagConfigs)? | yes | | diff --git a/documentation/platform/PARTNER.md b/documentation/platform/PARTNER.md index 95976128..74bb56f7 100644 --- a/documentation/platform/PARTNER.md +++ b/documentation/platform/PARTNER.md @@ -6,14 +6,18 @@ ## Partner Methods Partner configuration apis + +Default * [addProxyPath](#addproxypath) * [removeProxyPath](#removeproxypath) + ## Methods with example and description + ### addProxyPath Create proxy URL for the external URL @@ -147,6 +151,7 @@ Success + ### Schemas diff --git a/documentation/platform/PAYMENT.md b/documentation/platform/PAYMENT.md index a307602c..a7c01025 100644 --- a/documentation/platform/PAYMENT.md +++ b/documentation/platform/PAYMENT.md @@ -6,6 +6,8 @@ ## Payment Methods Collect payment through many payment gateway i.e Stripe, Razorpay, Juspay etc.into Fynd or Self account + +Default * [getBrandPaymentGatewayConfig](#getbrandpaymentgatewayconfig) * [saveBrandPaymentGatewayConfig](#savebrandpaymentgatewayconfig) * [getPaymentModeRoutes](#getpaymentmoderoutes) @@ -61,9 +63,11 @@ Collect payment through many payment gateway i.e Stripe, Razorpay, Juspay etc.in + ## Methods with example and description + ### getBrandPaymentGatewayConfig Get All Brand Payment Gateway Config Secret @@ -6314,6 +6318,7 @@ Success. Returns the status of Update or not. Check the example shown below or r + ### Schemas diff --git a/documentation/platform/REWARDS.md b/documentation/platform/REWARDS.md index 8719cafb..e2c08452 100644 --- a/documentation/platform/REWARDS.md +++ b/documentation/platform/REWARDS.md @@ -6,6 +6,8 @@ ## Rewards Methods Earn and redeem reward points + +Default * [showGiveaways](#showgiveaways) * [saveGiveAway](#savegiveaway) * [getGiveawayById](#getgiveawaybyid) @@ -21,9 +23,11 @@ Earn and redeem reward points + ## Methods with example and description + ### showGiveaways List of giveaways of the current application. @@ -1290,6 +1294,7 @@ ok + ### Schemas diff --git a/documentation/platform/SERVICEABILITY.md b/documentation/platform/SERVICEABILITY.md index e830448a..691af160 100644 --- a/documentation/platform/SERVICEABILITY.md +++ b/documentation/platform/SERVICEABILITY.md @@ -6,6 +6,8 @@ ## Serviceability Methods Logistics Configuration API's allows you to configure zone, application logistics and many more useful features. + +Default * [getApplicationServiceability](#getapplicationserviceability) * [updateApplicationServiceability](#updateapplicationserviceability) * [getEntityRegionView](#getentityregionview) @@ -41,9 +43,11 @@ Logistics Configuration API's allows you to configure zone, application logistic + ## Methods with example and description + ### getApplicationServiceability Zone configuration of application. @@ -2050,6 +2054,7 @@ Response Data + ### Schemas diff --git a/documentation/platform/SHARE.md b/documentation/platform/SHARE.md index 2b913f3b..16ba0eba 100644 --- a/documentation/platform/SHARE.md +++ b/documentation/platform/SHARE.md @@ -6,6 +6,8 @@ ## Share Methods Short link and QR Code + +Default * [createShortLink](#createshortlink) * [getShortLinks](#getshortlinks) * [getShortLinkByHash](#getshortlinkbyhash) @@ -14,9 +16,11 @@ Short link and QR Code + ## Methods with example and description + ### createShortLink Create short link @@ -467,6 +471,7 @@ Successful retrieval of click statistics. + ### Schemas diff --git a/documentation/platform/THEME.md b/documentation/platform/THEME.md index 921f72e7..a58ef250 100644 --- a/documentation/platform/THEME.md +++ b/documentation/platform/THEME.md @@ -6,6 +6,8 @@ ## Theme Methods Responsible for themes + +Default * [getAllPages](#getallpages) * [createPage](#createpage) * [updateMultiplePages](#updatemultiplepages) @@ -40,9 +42,11 @@ Responsible for themes + ## Methods with example and description + ### getAllPages Get all pages of a theme @@ -43441,6 +43445,7 @@ Successful upgrade + ### Schemas diff --git a/documentation/platform/USER.md b/documentation/platform/USER.md index 22d8ab6c..c7c78aa6 100644 --- a/documentation/platform/USER.md +++ b/documentation/platform/USER.md @@ -6,6 +6,8 @@ ## User Methods Authentication Service + +Default * [getCustomers](#getcustomers) * [searchUsers](#searchusers) * [createUser](#createuser) @@ -27,9 +29,11 @@ Authentication Service + ## Methods with example and description + ### getCustomers Get a list of customers @@ -1514,6 +1518,7 @@ Success. returns updated User Group. `UserGroupResponseSchema` for more details. + ### Schemas diff --git a/documentation/platform/WEBHOOK.md b/documentation/platform/WEBHOOK.md index 49a43940..4577ce15 100644 --- a/documentation/platform/WEBHOOK.md +++ b/documentation/platform/WEBHOOK.md @@ -6,6 +6,8 @@ ## Webhook Methods This service provides functionality to emits different events to the subscribed webhook url's. It auto retry three times for all the failed events after certain interval as well as you can also retry manually the failed events and can view the reports. + +Default * [manualRetryOfFailedEvent](#manualretryoffailedevent) * [getEventCounts](#geteventcounts) * [getManualRetryStatus](#getmanualretrystatus) @@ -25,9 +27,11 @@ This service provides functionality to emits different events to the subscribed + ## Methods with example and description + ### manualRetryOfFailedEvent Initiate a manual retry for event processing. @@ -1553,6 +1557,7 @@ Success + ### Schemas diff --git a/documentation/public/CONFIGURATION.md b/documentation/public/CONFIGURATION.md index b622ae4a..8fa73442 100644 --- a/documentation/public/CONFIGURATION.md +++ b/documentation/public/CONFIGURATION.md @@ -6,14 +6,18 @@ ## Configuration Methods Application configuration apis + +Default * [searchApplication](#searchapplication) * [getLocations](#getlocations) + ## Methods with example and description + ### searchApplication Search Application @@ -184,6 +188,7 @@ Success + ### Schemas diff --git a/documentation/public/INVENTORY.md b/documentation/public/INVENTORY.md index 973bccec..faa6ea35 100644 --- a/documentation/public/INVENTORY.md +++ b/documentation/public/INVENTORY.md @@ -6,6 +6,8 @@ ## Inventory Methods Inventory Swoop API's + +Default * [getJobCodesMetrics](#getjobcodesmetrics) * [saveJobCodesMetrics](#savejobcodesmetrics) * [getConfigByApiKey](#getconfigbyapikey) @@ -15,9 +17,11 @@ Inventory Swoop API's + ## Methods with example and description + ### getJobCodesMetrics Find all the JobCodes from Metrics Collection based on the field Values @@ -339,6 +343,7 @@ Successful operation + ### Schemas diff --git a/documentation/public/PARTNER.md b/documentation/public/PARTNER.md index 5be63c5f..aa732b1e 100644 --- a/documentation/public/PARTNER.md +++ b/documentation/public/PARTNER.md @@ -6,13 +6,17 @@ ## Partner Methods Partner configuration apis + +Default * [getPanelExtensionDetails](#getpanelextensiondetails) + ## Methods with example and description + ### getPanelExtensionDetails Get extension details @@ -162,6 +166,7 @@ Success + ### Schemas diff --git a/documentation/public/WEBHOOK.md b/documentation/public/WEBHOOK.md index 4dc9ef5a..531ea645 100644 --- a/documentation/public/WEBHOOK.md +++ b/documentation/public/WEBHOOK.md @@ -6,14 +6,18 @@ ## Webhook Methods Webhook dispatcher with retry and one event to many subscriber vice versa + +Default * [fetchAllWebhookEvents](#fetchallwebhookevents) * [queryWebhookEventDetails](#querywebhookeventdetails) + ## Methods with example and description + ### fetchAllWebhookEvents Get All Webhook Events @@ -115,6 +119,7 @@ Success + ### Schemas diff --git a/pom.xml b/pom.xml index 3cb43e42..67609241 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ com.github.gofynd fynd-client-java - 1.3.10-beta.1 + 1.3.10-beta.2 org.springframework.boot @@ -16,7 +16,7 @@ 2.9.0 3.14.9 - 1.18.24 + 1.18.30 1.9 3.12.0 1.3.2 diff --git a/src/main/java/com/sdk/application/ApplicationHeaderInterceptor.java b/src/main/java/com/sdk/application/ApplicationHeaderInterceptor.java index e898d037..b7609542 100644 --- a/src/main/java/com/sdk/application/ApplicationHeaderInterceptor.java +++ b/src/main/java/com/sdk/application/ApplicationHeaderInterceptor.java @@ -39,6 +39,6 @@ private Request.Builder buildHeaders(Request request, String bearerToken) { .addHeader("User-Agent", applicationConfig.getUserAgent()) .addHeader("Accept-Language", "en-IN") .addHeader("Authorization", "Bearer "+bearerToken) - .addHeader("x-fp-sdk-version", "1.3.10-beta.1"); + .addHeader("x-fp-sdk-version", "1.3.10-beta.2"); } } diff --git a/src/main/java/com/sdk/partner/AccessTokenInterceptor.java b/src/main/java/com/sdk/partner/AccessTokenInterceptor.java new file mode 100644 index 00000000..9818e1d7 --- /dev/null +++ b/src/main/java/com/sdk/partner/AccessTokenInterceptor.java @@ -0,0 +1,42 @@ +package com.sdk.partner; + +import okhttp3.Interceptor; +import okhttp3.Request; +import okhttp3.Response; + +import com.sdk.partner.*; +import org.springframework.beans.factory.annotation.Value; + +import java.io.IOException; +import java.util.Base64; +import java.util.*; + + +public class AccessTokenInterceptor implements Interceptor { + + private PartnerConfig partnerConfig; + + public AccessTokenInterceptor(PartnerConfig partnerConfig) { + this.partnerConfig = partnerConfig; + } + + @Override + public Response intercept(Chain chain) throws IOException { + okhttp3.Request original = chain.request(); + okhttp3.Request.Builder builder = original.newBuilder() + .addHeader("Authorization", "Bearer "+ partnerConfig.getPartnerOauthClient().getToken()) + .addHeader("Content-Type", "application/x-www-form-urlencoded") + .addHeader("x-fp-sdk-version", "1.3.10-beta.2"); + if (!partnerConfig.getExtraHeaders().isEmpty()) { + HashMap extraHeaders = partnerConfig.getExtraHeaders(); + for(Map.Entry entry:extraHeaders.entrySet()){ + builder.addHeader(entry.getKey(),entry.getValue()); + } + } + okhttp3.Request request = builder.build(); + return chain.proceed(request); + } + + + +} \ No newline at end of file diff --git a/src/main/java/com/sdk/partner/PartnerClient.java b/src/main/java/com/sdk/partner/PartnerClient.java new file mode 100644 index 00000000..8da9fa9e --- /dev/null +++ b/src/main/java/com/sdk/partner/PartnerClient.java @@ -0,0 +1,39 @@ +package com.sdk.partner; + +import lombok.Getter; +import lombok.Setter; + + +import com.sdk.partner.filestorage.FileStoragePartnerService; + +import com.sdk.partner.theme.ThemePartnerService; + + + +@Getter +@Setter +public class PartnerClient { + + private PartnerConfig config; + + + public FileStoragePartnerService fileStorage; + + public ThemePartnerService theme; + + + public PartnerClient(PartnerConfig config) + { + this.config = config; + + this.fileStorage = new FileStoragePartnerService(config); + + this.theme = new ThemePartnerService(config); + + } + + public void setExtraHeader(String key, String value){ + this.config.getExtraHeaders().put(key, value); + } + +} \ No newline at end of file diff --git a/src/main/java/com/sdk/partner/PartnerConfig.java b/src/main/java/com/sdk/partner/PartnerConfig.java new file mode 100644 index 00000000..f86bd938 --- /dev/null +++ b/src/main/java/com/sdk/partner/PartnerConfig.java @@ -0,0 +1,50 @@ +package com.sdk.partner; + +import com.sdk.common.model.AccessTokenDto; +import lombok.Getter; +import lombok.Setter; + +import java.net.CookieStore; +import java.util.Objects; +import java.util.HashMap; +import java.util.List; + +@Getter +@Setter +public final class PartnerConfig { + private String organizationId; + private String domain = "https://api.fynd.com"; + private String apiKey; + private String apiSecret; + private Boolean useAutoRenewTimer; + private CookieStore persistentCookieStore; + private PartnerOauthClient partnerOauthClient; + private HashMap extraHeaders = new HashMap<>(); + + public PartnerConfig(String organizationId, String apiKey, String apiSecret, String domain, boolean useAutoRenewTimer) { + if (Objects.isNull(organizationId)) { + throw new IllegalArgumentException("Please enter Valid Organization ID"); + } + this.organizationId = organizationId; + this.apiKey = apiKey; + this.apiSecret = apiSecret; + this.domain = domain; + this.useAutoRenewTimer = useAutoRenewTimer; + this.partnerOauthClient = new PartnerOauthClient(this); + } + + public PartnerConfig(String organizationId, String apiKey, String apiSecret, String domain) { + if (Objects.isNull(organizationId)) { + throw new IllegalArgumentException("Please enter Valid Organization ID"); + } + this.organizationId = organizationId; + this.apiKey = apiKey; + this.apiSecret = apiSecret; + this.domain = domain; + this.partnerOauthClient = new PartnerOauthClient(this); + } + + public AccessTokenDto getAccessToken() { + return this.partnerOauthClient.getRawToken(); + } +} diff --git a/src/main/java/com/sdk/partner/PartnerHeaderInterceptor.java b/src/main/java/com/sdk/partner/PartnerHeaderInterceptor.java new file mode 100644 index 00000000..924babcd --- /dev/null +++ b/src/main/java/com/sdk/partner/PartnerHeaderInterceptor.java @@ -0,0 +1,43 @@ +package com.sdk.partner; + +import com.sdk.partner.PartnerConfig; +import okhttp3.Interceptor; +import okhttp3.Request; +import okhttp3.Response; + +import java.io.IOException; +import java.util.Base64; +import java.util.*; + +public class PartnerHeaderInterceptor implements Interceptor { + + private PartnerConfig partnerConfig; + + public PartnerHeaderInterceptor(PartnerConfig partnerConfig) { + this.partnerConfig = partnerConfig; + } + + @Override + public Response intercept(Chain chain) throws IOException { + String bearerToken = Base64.getEncoder().encodeToString((partnerConfig.getApiKey()+":"+ partnerConfig.getApiSecret()).getBytes()); + Request request = chain.request(); + Request.Builder builder = buildHeaders(request, bearerToken); + if (!partnerConfig.getExtraHeaders().isEmpty()) { + HashMap extraHeaders = partnerConfig.getExtraHeaders(); + for(Map.Entry entry:extraHeaders.entrySet()){ + builder.addHeader(entry.getKey(),entry.getValue()); + } + } + return chain.proceed(builder.build()); + } + + private Request.Builder buildHeaders(Request request, String bearerToken) { + return request + .newBuilder() + .addHeader("Accept-Language", "en-IN") + .addHeader("Authorization", "Basic "+ bearerToken) + .addHeader("Content-Type","application/x-www-form-urlencoded") + .addHeader("x-fp-sdk-version", "1.3.10-beta.2"); + } + +} diff --git a/src/main/java/com/sdk/partner/PartnerOauthClient.java b/src/main/java/com/sdk/partner/PartnerOauthClient.java new file mode 100644 index 00000000..abf10c0a --- /dev/null +++ b/src/main/java/com/sdk/partner/PartnerOauthClient.java @@ -0,0 +1,307 @@ +package com.sdk.partner; + +import com.sdk.common.*; +import com.sdk.common.model.AccessResponse; +import com.sdk.common.model.AccessTokenDto; +import com.sdk.common.model.FDKError; +import com.sdk.common.model.FDKTokenIssueError; +import lombok.Getter; +import lombok.Setter; +import lombok.extern.slf4j.Slf4j; +import okhttp3.Interceptor; +import okhttp3.Request; +import org.apache.commons.lang3.RandomStringUtils; +import org.apache.commons.lang3.StringUtils; +import org.springframework.util.ObjectUtils; +import retrofit2.Call; +import retrofit2.Response; +import retrofit2.http.FieldMap; +import retrofit2.http.FormUrlEncoded; +import retrofit2.http.POST; +import retrofit2.http.Url; + +import java.io.IOException; +import java.util.*; +import java.util.concurrent.TimeUnit; + +interface TokenApiList { + @FormUrlEncoded + @POST + Call getAccessToken(@Url String slug, @FieldMap HashMap map); +} + +@Getter +@Setter +@Slf4j +public class PartnerOauthClient { + + private static final String URI = "/service/panel/authentication/v1.0/organization/"; + + PartnerConfig config; + + RetrofitServiceFactory retrofitServiceFactory; + + String token; + + String refreshToken; + + AccessTokenDto rawToken; + + long tokenExpiresIn; + + long tokenExpiresAt; + + Boolean useAutoRenewTimer; + + PartnerOauthClient(PartnerConfig config) { + this.config = config; + this.refreshToken = ""; + this.retrofitServiceFactory = new RetrofitServiceFactory(); + this.tokenExpiresAt = 0; + this.useAutoRenewTimer = Objects.nonNull( + config.getUseAutoRenewTimer()) ? config.getUseAutoRenewTimer() : Boolean.TRUE; + } + + private void getAccessToken() { + if (this.useAutoRenewTimer.equals(Boolean.FALSE) && StringUtils.isNotEmpty(this.refreshToken) + && isTokenExpired(120)) { + try { + // Check if token is about to expire in less than 2 mins. + // Renew if to be expired and auto renew timer is not enabled. + renewAccesstoken(); + } catch (Exception e) { + log.error("Exception in renewing Access Token", e); + } + } + } + + // default TTL checked 0 seconds + public boolean isTokenExpired(int ttl) { + long currentTimestamp = (new Date()).getTime(); + // Check if token is about to expire in less than 2 mins + return ((tokenExpiresAt - currentTimestamp) / 1000) < ttl; + } + + public void setToken(AccessTokenDto accessTokenDto) { + this.rawToken = accessTokenDto; + this.tokenExpiresIn = accessTokenDto.getExpiresIn(); + this.token = accessTokenDto.getAccessToken(); + this.refreshToken = ObjectUtils.isEmpty( + accessTokenDto.getRefreshToken()) ? "" : accessTokenDto.getRefreshToken(); + if (!ObjectUtils.isEmpty(this.refreshToken) && this.useAutoRenewTimer.equals(Boolean.TRUE)) { + this.retryOAuthTokenTimer(accessTokenDto.getExpiresIn()); + } + } + + private void retryOAuthTokenTimer(long expiresIn) { + try { + if (expiresIn > 60) { + renewAccesstoken(); + } + } catch (Exception e) { + throw new FDKError(e.getMessage()); + } + } + + public String getAuthorizationURL(List scope, String redirectUri, String state, boolean isOnline) { + String apiKey = config.getApiKey(); + if (ObjectUtils.isEmpty(apiKey)) { + throw new FDKError("API Key missing in config"); + } + state = StringUtils.isNotEmpty(state) ? state : getRandomState(); + String accessMode = isOnline ? "online" : "offline"; + String query = "client_id=" + apiKey + "&scope=" + String.join(",", scope) + + "&redirect_uri=" + redirectUri + "&state=" + state + "&access_mode=" + accessMode + + "&response_type=code"; + + var queryString = config.getDomain() + URI + config.getOrganizationId() + "/oauth/authorize?" + query; + Request request = new Request.Builder().url(queryString) + .get() + .build(); + request = new RequestSigner(request).sign(true); + return request.url() + .toString(); + } + + private String getRandomState() { + return RandomStringUtils.randomAlphanumeric(15) + .toUpperCase(); + } + + public AccessTokenDto renewAccesstoken() throws IOException { + + HashMap body = new HashMap<>(); + body.put(Fields.GRANT_TYPE, GrantType.REFRESH_TOKEN.toString() + .toLowerCase()); + body.put(Fields.REFRESH_CODE, this.refreshToken); + + String url = config.getDomain() + URI + config.getOrganizationId() + "/oauth/token"; + AccessTokenDto newToken = getToken(body, url); + setToken(newToken); + if (Objects.nonNull(newToken.getExpiresAt())) { + Long tokenExpires = newToken.getExpiresAt(); + newToken.setExpiresAt(tokenExpires); + this.tokenExpiresAt = tokenExpires; + } else { + newToken.setExpiresAt((new Date()).getTime() + (this.tokenExpiresIn * 1000L)); + this.tokenExpiresAt = (new Date()).getTime() + (this.tokenExpiresIn * 1000L); + } + + return newToken; + } + + public void verifyCallback(String authorizationCode) throws IOException { + HashMap body = new HashMap<>(); + body.put(Fields.GRANT_TYPE, GrantType.AUTHORIZATION_CODE.toString() + .toLowerCase()); + body.put(Fields.CODE, authorizationCode); + String url = config.getDomain() + URI + config.getOrganizationId() + "/oauth/token"; + AccessTokenDto newToken = getToken(body, url); + setToken(newToken); + if (Objects.nonNull(newToken.getExpiresAt())) { + Long tokenExpires = newToken.getExpiresAt(); + newToken.setExpiresAt(tokenExpires); + this.tokenExpiresAt = tokenExpires; + } else { + newToken.setExpiresAt((new Date()).getTime() + (this.tokenExpiresIn * 1000L)); + this.tokenExpiresAt = (new Date()).getTime() + (this.tokenExpiresIn * 1000L); + } + + } + + public boolean isAccessTokenValid() { + return !ObjectUtils.isEmpty(this.token) && this.rawToken.getExpiresIn() > 0; + } + + public AccessTokenDto getOfflineAccessToken(String scopes, String code) { + try { + HashMap body = new HashMap<>(); + body.put(Fields.GRANT_TYPE, GrantType.AUTHORIZATION_CODE.toString() + .toLowerCase()); + body.put(Fields.CODE, code); + body.put(Fields.CLIENT_ID, config.getApiKey()); + body.put(Fields.CLIENT_SECRET, config.getApiSecret()); + body.put(Fields.SCOPE, scopes); + String url = config.getDomain() + URI + config.getOrganizationId() + "/oauth/offline-token"; + AccessTokenDto offlineToken = getOfflineToken(body, url); + setToken(offlineToken); + if (Objects.nonNull(offlineToken.getExpiresAt())) { + Long tokenExpires = offlineToken.getExpiresAt(); + offlineToken.setExpiresAt(tokenExpires); + this.tokenExpiresAt = tokenExpires; + } else { + offlineToken.setExpiresAt((new Date()).getTime() + (this.tokenExpiresIn * 1000L)); + this.tokenExpiresAt = (new Date()).getTime() + (this.tokenExpiresIn * 1000L); + } + + return offlineToken; + } catch (Exception e) { + log.error("Exception in getting Offline Token", e); + throw new FDKTokenIssueError(e.getMessage()); + } + } + + private AccessTokenDto getOfflineToken(HashMap body, String url) throws IOException { + TokenApiList tokenApiList = generateOfflineTokenApiList(); + Response response = tokenApiList.getAccessToken(url, body) + .execute(); + if (response.isSuccessful() && !ObjectUtils.isEmpty(response.body())) { + return convertToDto(response.body()); + } + return new AccessTokenDto(); + } + + private AccessTokenDto convertToDto(AccessResponse accessResponse) { + AccessTokenDto accessTokenDto = new AccessTokenDto(); + accessTokenDto.setAccessToken(accessResponse.getAccessToken()); + accessTokenDto.setExpiresIn(accessResponse.getExpiresIn()); + accessTokenDto.setCurrentUser(accessResponse.getCurrentUser()); + accessTokenDto.setRefreshToken(accessResponse.getRefreshToken()); + return accessTokenDto; + } + + private AccessTokenDto getToken(HashMap body, String url) throws IOException { + TokenApiList tokenApiList = generateTokenApiList(); + Response response = tokenApiList.getAccessToken(url, body) + .execute(); + if (response.isSuccessful() && !ObjectUtils.isEmpty(response.body())) { + return convertToDto(response.body()); + } + return new AccessTokenDto(); + } + + private TokenApiList generateOfflineTokenApiList() { + List interceptorList = new ArrayList<>(); + interceptorList.add(new PartnerHeaderInterceptor(config)); + interceptorList.add(new RequestSignerInterceptor()); + // interceptorList.add(new ExtensionLibInterceptor(config)); + return retrofitServiceFactory.createService(config.getDomain(), TokenApiList.class, interceptorList); + } + + private TokenApiList generateTokenApiList() { + List interceptorList = new ArrayList<>(); + interceptorList.add(new PartnerHeaderInterceptor(config)); + interceptorList.add(new RequestSignerInterceptor()); + return retrofitServiceFactory.createService(config.getDomain(), TokenApiList.class, interceptorList); + } + + public AccessTokenDto getAccessTokenObj(String grant_type, String refresh_token, String code) throws IOException{ + HashMap body = new HashMap<>(); + body.put(Fields.GRANT_TYPE, grant_type); + if (grant_type.equalsIgnoreCase(GrantType.REFRESH_TOKEN.getMessage())) { + body.put(Fields.REFRESH_CODE, refresh_token); + } else if (grant_type.equalsIgnoreCase(GrantType.AUTHORIZATION_CODE.getMessage())) { + body.put(Fields.CODE, code); + } + return getAccessTokenDto(body); + } + + public AccessTokenDto getAccessTokenObj(String grant_type) throws IOException{ + return getAccessTokenObj(grant_type, null,null); + } + + public void setTokenNew(AccessTokenDto accessTokenDto) { + this.rawToken = accessTokenDto; + this.tokenExpiresIn = accessTokenDto.getExpiresIn(); + this.token = accessTokenDto.getAccessToken(); + this.refreshToken = ObjectUtils.isEmpty( + accessTokenDto.getRefreshToken()) ? "" : accessTokenDto.getRefreshToken(); + } + + private AccessTokenDto getAccessTokenDto(HashMap body) throws IOException { + String url = config.getDomain() + URI + config.getOrganizationId() + "/oauth/token"; + AccessTokenDto newToken = getToken(body, url); + if (Objects.nonNull(newToken.getExpiresAt())) { + Long tokenExpires = newToken.getExpiresAt(); + newToken.setExpiresAt(tokenExpires); + this.tokenExpiresAt = tokenExpires; + } else { + newToken.setExpiresAt((new Date()).getTime() + (this.tokenExpiresIn * 1000L)); + this.tokenExpiresAt = (new Date()).getTime() + (this.tokenExpiresIn * 1000L); + } + setTokenNew(newToken); + return newToken; + } + + @Getter + enum GrantType { + AUTHORIZATION_CODE("authorization_code"), + REFRESH_TOKEN("refresh_token"); + + private String message; + + GrantType(String message) { + this.message = message; + } + + } + + interface Fields { + String GRANT_TYPE = "grant_type"; + String CODE = "code"; + String REFRESH_CODE = "refresh_token"; + String CLIENT_ID = "client_id"; + String CLIENT_SECRET = "client_secret"; + String SCOPE = "scope"; + } +} \ No newline at end of file diff --git a/src/main/java/com/sdk/partner/filestorage/FileStoragePartnerApiList.java b/src/main/java/com/sdk/partner/filestorage/FileStoragePartnerApiList.java new file mode 100644 index 00000000..b82f4706 --- /dev/null +++ b/src/main/java/com/sdk/partner/filestorage/FileStoragePartnerApiList.java @@ -0,0 +1,17 @@ +package com.sdk.partner.filestorage; + +import retrofit2.http.*; +import retrofit2.Call; +import java.util.*; + +interface FileStoragePartnerApiList { + + @POST ("/service/partner/assets/v1.0/organization/{organization_id}/namespaces/{namespace}/upload/start") + Call startUpload(@Path("namespace") String namespace, @Path("organization_id") Integer organizationId, @Body FileStoragePartnerModels.StartRequest payload, @HeaderMap Map requestHeaders); + + @POST ("/service/partner/assets/v1.0/organization/{organization_id}/namespaces/{namespace}/upload/complete") + Call completeUpload(@Path("namespace") String namespace, @Path("organization_id") Integer organizationId, @Body FileStoragePartnerModels.StartResponse payload, @HeaderMap Map requestHeaders); + + @GET ("/service/partner/assets/v1.0/organization/{organization_id}/company/{company_id}/application/{application_id}/namespaces/{namespace}/browse") + Call browse(@Path("namespace") String namespace, @Path("organization_id") Integer organizationId, @Path("application_id") String applicationId, @Path("company_id") Integer companyId, @Query("page") Integer page, @Query("limit") Integer limit, @HeaderMap Map requestHeaders); +} \ No newline at end of file diff --git a/src/main/java/com/sdk/partner/filestorage/FileStoragePartnerModels.java b/src/main/java/com/sdk/partner/filestorage/FileStoragePartnerModels.java new file mode 100644 index 00000000..0ffafc3f --- /dev/null +++ b/src/main/java/com/sdk/partner/filestorage/FileStoragePartnerModels.java @@ -0,0 +1,392 @@ + + +package com.sdk.partner.filestorage; + +import com.fasterxml.jackson.annotation.*; +import com.sdk.common.Constant; +import com.sdk.common.Utility; +import lombok.*; +import java.net.MalformedURLException; +import java.net.URL; +import java.util.*; + +public class FileStoragePartnerModels{ + + +/* + Model: CDN +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class CDN{ + + + + + + + + @JsonProperty("url") + private String url; + + + + + @JsonProperty("absolute_url") + private String absoluteUrl; + + + + + @JsonProperty("relative_url") + private String relativeUrl; + + + +} + + +/* + Model: Upload +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class Upload{ + + + + + + + + @JsonProperty("expiry") + private Integer expiry; + + + + + @JsonProperty("url") + private String url; + + + +} + + +/* + Model: StartResponse +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class StartResponse{ + + + + + + + + @JsonProperty("file_name") + private String fileName; + + + + + @JsonProperty("file_path") + private String filePath; + + + + + @JsonProperty("content_type") + private String contentType; + + + + + @JsonProperty("method") + private String method; + + + + + @JsonProperty("namespace") + private String namespace; + + + + + @JsonProperty("operation") + private String operation; + + + + + @JsonProperty("size") + private Integer size; + + + + + @JsonProperty("upload") + private Upload upload; + + + + + @JsonProperty("cdn") + private CDN cdn; + + + + + @JsonProperty("tags") + private List tags; + + + +} + + +/* + Model: Params +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class Params{ + + + + + + + + @JsonProperty("subpath") + private String subpath; + + + +} + + +/* + Model: StartRequest +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class StartRequest{ + + + + + + + + @JsonProperty("file_name") + private String fileName; + + + + + @JsonProperty("content_type") + private String contentType; + + + + + @JsonProperty("size") + private Integer size; + + + + + @JsonProperty("tags") + private List tags; + + + + + @JsonProperty("params") + private Params params; + + + +} + + +/* + Model: CreatedBy +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class CreatedBy{ + + + + + + + + @JsonProperty("username") + private String username; + + + +} + + +/* + Model: CompleteResponse +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class CompleteResponse{ + + + + + + + + @JsonProperty("_id") + private String id; + + + + + @JsonProperty("file_name") + private String fileName; + + + + + @JsonProperty("file_path") + private String filePath; + + + + + @JsonProperty("content_type") + private String contentType; + + + + + @JsonProperty("namespace") + private String namespace; + + + + + @JsonProperty("operation") + private String operation; + + + + + @JsonProperty("size") + private Integer size; + + + + + @JsonProperty("upload") + private Upload upload; + + + + + @JsonProperty("cdn") + private CDN cdn; + + + + + @JsonProperty("success") + private Boolean success; + + + + + @JsonProperty("tags") + private List tags; + + + + + @JsonProperty("created_on") + private String createdOn; + + + + + @JsonProperty("modified_on") + private String modifiedOn; + + + + + @JsonProperty("created_by") + private CreatedBy createdBy; + + + +} + + +/* + Model: FailedResponse +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class FailedResponse{ + + + + + + + + @JsonProperty("message") + private String message; + + + +} + + + + +} \ No newline at end of file diff --git a/src/main/java/com/sdk/partner/filestorage/FileStoragePartnerService.java b/src/main/java/com/sdk/partner/filestorage/FileStoragePartnerService.java new file mode 100644 index 00000000..d606f9b2 --- /dev/null +++ b/src/main/java/com/sdk/partner/filestorage/FileStoragePartnerService.java @@ -0,0 +1,136 @@ +package com.sdk.partner.filestorage; + +import com.sdk.common.*; +import com.sdk.common.model.FDKException; +import com.sdk.common.model.FDKServerResponseError; +import okhttp3.Interceptor; +import retrofit2.Response; + +import java.io.IOException; +import java.net.CookieStore; +import java.util.*; + +import com.sdk.partner.*; + + +public class FileStoragePartnerService { + private PartnerConfig partnerConfig; + + private RetrofitServiceFactory retrofitServiceFactory; + + private String organizationId; + + private FileStoragePartnerApiList filestoragePartnerApiList; + + public FileStoragePartnerService(PartnerConfig partnerConfig) { + this.partnerConfig = partnerConfig; + this.retrofitServiceFactory = new RetrofitServiceFactory(); + this.organizationId = this.partnerConfig.getOrganizationId(); + this.filestoragePartnerApiList = generateFileStoragePartnerApiList(this.partnerConfig.getPersistentCookieStore()); + } + + private FileStoragePartnerApiList generateFileStoragePartnerApiList(CookieStore cookieStore) { + List interceptorList = new ArrayList<>(); + interceptorList.add(new AccessTokenInterceptor(partnerConfig)); + interceptorList.add(new RequestSignerInterceptor()); + return retrofitServiceFactory.createService(partnerConfig.getDomain(),FileStoragePartnerApiList.class, interceptorList, cookieStore); + } + + + + + + + + + + + + + + + + + + public FileStoragePartnerModels.StartResponse startUpload(String namespace, FileStoragePartnerModels.StartRequest body) throws FDKServerResponseError, FDKException { + return this.startUpload(namespace, body, new HashMap<>()); + } + + public FileStoragePartnerModels.StartResponse startUpload(String namespace, FileStoragePartnerModels.StartRequest body, Map requestHeaders) throws FDKServerResponseError, FDKException { + if (this.partnerConfig.getPartnerOauthClient().isAccessTokenValid()) { + Response response = null; + try { + response = filestoragePartnerApiList.startUpload(namespace, this.organizationId, body, requestHeaders).execute(); + if (!response.isSuccessful()) { + throw new FDKServerResponseError(response.code(), + response.errorBody() != null ? response.errorBody().string() : Fields.UNKNOWN_ERROR, + response.headers() != null ? response.headers().toString() : Fields.UNKNOWN_ERROR, + response.raw() != null ? response.raw().request().method() : Fields.UNKNOWN_ERROR, + response.raw() != null ? response.raw().request().url().toString() : Fields.UNKNOWN_ERROR, + response.raw() != null && response.raw().request().body() != null ? response.raw().request().body().toString() : Fields.UNKNOWN_ERROR, + response.raw() != null ? response.raw().request().headers().toString() : Fields.UNKNOWN_ERROR); + } + } catch (IOException e) { + throw new FDKException(e.getMessage() != null ? e.getMessage() : Fields.UNKNOWN_ERROR, e); + } + return response.body(); + } else { + return null; + } + } + + + + + + + + + + + + + + + + + + + public FileStoragePartnerModels.CompleteResponse completeUpload(String namespace, FileStoragePartnerModels.StartResponse body) throws FDKServerResponseError, FDKException { + return this.completeUpload(namespace, body, new HashMap<>()); + } + + public FileStoragePartnerModels.CompleteResponse completeUpload(String namespace, FileStoragePartnerModels.StartResponse body, Map requestHeaders) throws FDKServerResponseError, FDKException { + if (this.partnerConfig.getPartnerOauthClient().isAccessTokenValid()) { + Response response = null; + try { + response = filestoragePartnerApiList.completeUpload(namespace, this.organizationId, body, requestHeaders).execute(); + if (!response.isSuccessful()) { + throw new FDKServerResponseError(response.code(), + response.errorBody() != null ? response.errorBody().string() : Fields.UNKNOWN_ERROR, + response.headers() != null ? response.headers().toString() : Fields.UNKNOWN_ERROR, + response.raw() != null ? response.raw().request().method() : Fields.UNKNOWN_ERROR, + response.raw() != null ? response.raw().request().url().toString() : Fields.UNKNOWN_ERROR, + response.raw() != null && response.raw().request().body() != null ? response.raw().request().body().toString() : Fields.UNKNOWN_ERROR, + response.raw() != null ? response.raw().request().headers().toString() : Fields.UNKNOWN_ERROR); + } + } catch (IOException e) { + throw new FDKException(e.getMessage() != null ? e.getMessage() : Fields.UNKNOWN_ERROR, e); + } + return response.body(); + } else { + return null; + } + } + + + + + + + +private interface Fields { + String UNKNOWN_ERROR = "Unknown error"; +} + +} \ No newline at end of file diff --git a/src/main/java/com/sdk/partner/theme/ThemePartnerApiList.java b/src/main/java/com/sdk/partner/theme/ThemePartnerApiList.java new file mode 100644 index 00000000..848b7771 --- /dev/null +++ b/src/main/java/com/sdk/partner/theme/ThemePartnerApiList.java @@ -0,0 +1,65 @@ +package com.sdk.partner.theme; + +import retrofit2.http.*; +import retrofit2.Call; +import java.util.*; + +interface ThemePartnerApiList { + + @GET ("/service/partner/theme/v1.0/organization/{organization_id}/company/{company_id}/application/{application_id}/{theme_id}/page") + Call getAllPages(@Path("company_id") Integer companyId, @Path("application_id") String applicationId, @Path("theme_id") String themeId, @Path("organization_id") String organizationId, @HeaderMap Map requestHeaders); + + @POST ("/service/partner/theme/v1.0/organization/{organization_id}/company/{company_id}/application/{application_id}/{theme_id}/page") + Call createPage(@Path("company_id") Integer companyId, @Path("application_id") String applicationId, @Path("theme_id") String themeId, @Path("organization_id") String organizationId, @Body ThemePartnerModels.AvailablePageSchema payload, @HeaderMap Map requestHeaders); + + @PUT ("/service/partner/theme/v1.0/organization/{organization_id}/company/{company_id}/application/{application_id}/{theme_id}/page") + Call updateMultiplePages(@Path("company_id") Integer companyId, @Path("application_id") String applicationId, @Path("theme_id") String themeId, @Path("organization_id") String organizationId, @Body ThemePartnerModels.AllAvailablePageSchema payload, @HeaderMap Map requestHeaders); + + @GET ("/service/partner/theme/v1.0/organization/{organization_id}/company/{company_id}/application/{application_id}/{theme_id}/{page_value}") + Call getPage(@Path("company_id") Integer companyId, @Path("application_id") String applicationId, @Path("theme_id") String themeId, @Path("page_value") String pageValue, @Path("organization_id") String organizationId, @HeaderMap Map requestHeaders); + + @PUT ("/service/partner/theme/v1.0/organization/{organization_id}/company/{company_id}/application/{application_id}/{theme_id}/{page_value}") + Call updatePage(@Path("company_id") Integer companyId, @Path("application_id") String applicationId, @Path("theme_id") String themeId, @Path("page_value") String pageValue, @Path("organization_id") String organizationId, @Body ThemePartnerModels.AvailablePageSchema payload, @HeaderMap Map requestHeaders); + + @DELETE ("/service/partner/theme/v1.0/organization/{organization_id}/company/{company_id}/application/{application_id}/{theme_id}/{page_value}") + Call deletePage(@Path("company_id") Integer companyId, @Path("application_id") String applicationId, @Path("theme_id") String themeId, @Path("page_value") String pageValue, @Path("organization_id") String organizationId, @HeaderMap Map requestHeaders); + + @GET ("/service/partner/theme/v2.0/organization/{organization_id}/company/{company_id}/application/{application_id}/themes") + Call> getApplicationThemes(@Path("company_id") Integer companyId, @Path("application_id") String applicationId, @Path("organization_id") String organizationId, @HeaderMap Map requestHeaders); + + @GET ("/service/partner/theme/v2.0/organization/{organization_id}/company/{company_id}/application/{application_id}/{theme_id}") + Call getThemeById(@Path("company_id") Integer companyId, @Path("application_id") String applicationId, @Path("theme_id") String themeId, @Path("organization_id") String organizationId, @HeaderMap Map requestHeaders); + + @PUT ("/service/partner/theme/v2.0/organization/{organization_id}/company/{company_id}/application/{application_id}/{theme_id}") + Call updateTheme(@Path("company_id") Integer companyId, @Path("application_id") String applicationId, @Path("theme_id") String themeId, @Path("organization_id") String organizationId, @Body ThemePartnerModels.UpdateThemeRequestBody payload, @HeaderMap Map requestHeaders); + + @DELETE ("/service/partner/theme/v2.0/organization/{organization_id}/company/{company_id}/application/{application_id}/{theme_id}") + Call deleteTheme(@Path("company_id") Integer companyId, @Path("application_id") String applicationId, @Path("theme_id") String themeId, @Path("organization_id") String organizationId, @HeaderMap Map requestHeaders); + + @GET ("/service/partner/theme/v1.0/organization/{organization_id}/themes") + Call getOrganizationThemes(@Path("organization_id") String organizationId, @Query("status") String status, @Query("page_size") Integer pageSize, @Query("page_no") Integer pageNo, @HeaderMap Map requestHeaders); + + @GET ("/service/partner/theme/v1.0/organization/{organization_id}/theme/{theme_id}") + Call getOrganizationThemeDetails(@Path("organization_id") String organizationId, @Path("theme_id") String themeId, @HeaderMap Map requestHeaders); + + @PATCH ("/service/partner/theme/v1.0/organization/{organization_id}/theme/{theme_id}") + Call updateDraftTheme(@Path("organization_id") String organizationId, @Path("theme_id") String themeId, @Body ThemePartnerModels.MarketplaceTheme payload, @HeaderMap Map requestHeaders); + + @PUT ("/service/partner/theme/v1.0/organization/{organization_id}/theme/{theme_id}") + Call submitOrganizationTheme(@Path("organization_id") String organizationId, @Path("theme_id") String themeId, @Body ThemePartnerModels.MarketplaceTheme payload, @HeaderMap Map requestHeaders); + + @DELETE ("/service/partner/theme/v1.0/organization/{organization_id}/theme/{theme_id}") + Call deleteOrganizationTheme(@Path("organization_id") String organizationId, @Path("theme_id") String themeId, @HeaderMap Map requestHeaders); + + @GET ("/service/partner/theme/v1.0/organization/{organization_id}/{slug_name}/latest") + Call> getLatestVersionOfThemeBySlug(@Path("organization_id") String organizationId, @Path("slug_name") String slugName, @HeaderMap Map requestHeaders); + + @POST ("/service/partner/theme/v1.0/organization/{organization_id}/theme") + Call createNewThemeInOrganization(@Path("organization_id") String organizationId, @Query("slug") String slug, @Body ThemePartnerModels.MarketplaceTheme payload, @HeaderMap Map requestHeaders); + + @GET ("/service/partner/theme/v1.0/organization/{organization_id}/theme/{theme_id}/reasons") + Call getThemeRejectionReasons(@Path("organization_id") String organizationId, @Path("theme_id") String themeId, @HeaderMap Map requestHeaders); + + @GET ("/service/partner/theme/v1.0/organization/{organization_id}/theme/{theme_slug}/versions") + Call getThemeVersions(@Path("organization_id") String organizationId, @Path("theme_slug") String themeSlug, @Query("page_size") Integer pageSize, @Query("page_no") Integer pageNo, @HeaderMap Map requestHeaders); +} \ No newline at end of file diff --git a/src/main/java/com/sdk/partner/theme/ThemePartnerModels.java b/src/main/java/com/sdk/partner/theme/ThemePartnerModels.java new file mode 100644 index 00000000..9026d8ee --- /dev/null +++ b/src/main/java/com/sdk/partner/theme/ThemePartnerModels.java @@ -0,0 +1,3314 @@ + + +package com.sdk.partner.theme; + +import com.fasterxml.jackson.annotation.*; +import com.sdk.common.Constant; +import com.sdk.common.Utility; +import lombok.*; +import java.net.MalformedURLException; +import java.net.URL; +import java.util.*; + +public class ThemePartnerModels{ + + +/* + Model: AvailablePageSchema +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class AvailablePageSchema{ + + + + + + + + @JsonProperty("value") + private String value; + + + + + @JsonProperty("text") + private String text; + + + + + @JsonProperty("path") + private String path; + + + + + @JsonProperty("type") + private String type; + + + + + @JsonProperty("sections") + private List sections; + + + + + @JsonProperty("sections_meta") + private List sectionsMeta; + + + + + @JsonProperty("theme") + private String theme; + + + + + @JsonProperty("seo") + private AvailablePageSeo seo; + + + + + @JsonProperty("props") + private List props; + + + + + @JsonProperty("_id") + private String id; + + + +} + + +/* + Model: AvailablePageSectionMetaAttributes +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class AvailablePageSectionMetaAttributes{ + + + + + + + + @JsonProperty("attributes") + private Object attributes; + + + +} + + +/* + Model: AvailablePageSeo +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class AvailablePageSeo{ + + + + + + + + @JsonProperty("title") + private String title; + + + + + @JsonProperty("description") + private String description; + + + + + @JsonProperty("_id") + private String id; + + + +} + + +/* + Model: AvailablePageSchemaSections +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class AvailablePageSchemaSections{ + + + + + + + + @JsonProperty("name") + private String name; + + + + + @JsonProperty("label") + private String label; + + + + + @JsonProperty("props") + private Object props; + + + + + @JsonProperty("blocks") + private List blocks; + + + + + @JsonProperty("preset") + private Object preset; + + + + + @JsonProperty("predicate") + private AvailablePagePredicate predicate; + + + +} + + +/* + Model: AvailablePageScreenPredicate +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class AvailablePageScreenPredicate{ + + + + + + + + @JsonProperty("mobile") + private Boolean mobile; + + + + + @JsonProperty("desktop") + private Boolean desktop; + + + + + @JsonProperty("tablet") + private Boolean tablet; + + + +} + + +/* + Model: AvailablePageUserPredicate +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class AvailablePageUserPredicate{ + + + + + + + + @JsonProperty("authenticated") + private Boolean authenticated; + + + + + @JsonProperty("anonymous") + private Boolean anonymous; + + + +} + + +/* + Model: AvailablePageRoutePredicate +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class AvailablePageRoutePredicate{ + + + + + + + + @JsonProperty("selected") + private String selected; + + + + + @JsonProperty("exact_url") + private String exactUrl; + + + + + @JsonProperty("query") + private Object query; + + + +} + + +/* + Model: AvailablePagePredicate +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class AvailablePagePredicate{ + + + + + + + + @JsonProperty("screen") + private AvailablePageScreenPredicate screen; + + + + + @JsonProperty("user") + private AvailablePageUserPredicate user; + + + + + @JsonProperty("route") + private AvailablePageRoutePredicate route; + + + +} + + +/* + Model: MarketplaceThemeSchema +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class MarketplaceThemeSchema{ + + + + + + + + @JsonProperty("themes") + private List themes; + + + + + @JsonProperty("page") + private PaginationSchema page; + + + +} + + +/* + Model: MarketplaceTheme +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class MarketplaceTheme{ + + + + + + + + @JsonProperty("_id") + private String id; + + + + + @JsonProperty("payment") + private PaymentInfo payment; + + + + + @JsonProperty("contact") + private ContactInfo contact; + + + + + @JsonProperty("industry") + private List industry; + + + + + @JsonProperty("is_update") + private Boolean isUpdate; + + + + + @JsonProperty("is_default") + private Boolean isDefault; + + + + + @JsonProperty("name") + private String name; + + + + + @JsonProperty("tagline") + private String tagline; + + + + + @JsonProperty("description") + private String description; + + + + + @JsonProperty("catalog_size") + private CatalogSize catalogSize; + + + + + @JsonProperty("images") + private MarketplaceThemeImages images; + + + + + @JsonProperty("carousel") + private List carousel; + + + + + @JsonProperty("src") + private String src; + + + + + @JsonProperty("explore") + private ExploreInfo explore; + + + + + @JsonProperty("features") + private List features; + + + + + @JsonProperty("highlights") + private List highlights; + + + + + @JsonProperty("variations") + private List variations; + + + + + @JsonProperty("documentation") + private Documentation documentation; + + + + + @JsonProperty("status") + private String status; + + + + + @JsonProperty("step") + private Integer step; + + + + + @JsonProperty("comments") + private Comments comments; + + + + + @JsonProperty("release") + private Release release; + + + + + @JsonProperty("slug") + private String slug; + + + + + @JsonProperty("organization_id") + private String organizationId; + + + + + @JsonProperty("user_id") + private String userId; + + + + + @JsonProperty("created_at") + private String createdAt; + + + + + @JsonProperty("updated_at") + private String updatedAt; + + + + + @JsonProperty("template_theme_id") + private String templateThemeId; + + + +} + + +/* + Model: PaymentInfo +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class PaymentInfo{ + + + + + + + + @JsonProperty("is_paid") + private Boolean isPaid; + + + + + @JsonProperty("amount") + private Double amount; + + + +} + + +/* + Model: ContactInfo +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class ContactInfo{ + + + + + + + + @JsonProperty("developer_contact") + private List developerContact; + + + + + @JsonProperty("seller_contact") + private String sellerContact; + + + +} + + +/* + Model: CatalogSize +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class CatalogSize{ + + + + + + + + @JsonProperty("min") + private Integer min; + + + + + @JsonProperty("max") + private Integer max; + + + +} + + +/* + Model: MarketplaceThemeImages +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class MarketplaceThemeImages{ + + + + + + + + @JsonProperty("desktop") + private String desktop; + + + + + @JsonProperty("mobile") + private String mobile; + + + +} + + +/* + Model: CarouselItem +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class CarouselItem{ + + + + + + + + @JsonProperty("desktop") + private String desktop; + + + + + @JsonProperty("mobile") + private String mobile; + + + +} + + +/* + Model: ExploreInfo +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class ExploreInfo{ + + + + + + + + @JsonProperty("title") + private String title; + + + + + @JsonProperty("description") + private String description; + + + +} + + +/* + Model: Feature +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class Feature{ + + + + + + + + @JsonProperty("category") + private String category; + + + + + @JsonProperty("list") + private List list; + + + +} + + +/* + Model: FeatureItem +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class FeatureItem{ + + + + + + + + @JsonProperty("label") + private String label; + + + + + @JsonProperty("description") + private String description; + + + +} + + +/* + Model: Highlight +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class Highlight{ + + + + + + + + @JsonProperty("title") + private String title; + + + + + @JsonProperty("description") + private String description; + + + + + @JsonProperty("image") + private String image; + + + +} + + +/* + Model: Variation +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class Variation{ + + + + + + + + @JsonProperty("name") + private String name; + + + + + @JsonProperty("color") + private String color; + + + + + @JsonProperty("demo_url") + private String demoUrl; + + + + + @JsonProperty("images") + private MarketplaceThemeImages images; + + + +} + + +/* + Model: Documentation +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class Documentation{ + + + + + + + + @JsonProperty("notes") + private String notes; + + + + + @JsonProperty("url") + private String url; + + + +} + + +/* + Model: Comments +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class Comments{ + + + + + + + + @JsonProperty("developer_remark") + private String developerRemark; + + + + + @JsonProperty("reviewer_feedback") + private String reviewerFeedback; + + + +} + + +/* + Model: ThemeRejectionReasons +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class ThemeRejectionReasons{ + + + + + + + + @JsonProperty("_id") + private String id; + + + + + @JsonProperty("message") + private String message; + + + + + @JsonProperty("theme_id") + private String themeId; + + + + + @JsonProperty("organization_id") + private String organizationId; + + + + + @JsonProperty("admin_id") + private String adminId; + + + + + @JsonProperty("user_id") + private String userId; + + + + + @JsonProperty("status") + private String status; + + + + + @JsonProperty("rejection_reasons") + private HashMap rejectionReasons; + + + + + @JsonProperty("created_at") + private String createdAt; + + + + + @JsonProperty("updated_at") + private String updatedAt; + + + +} + + +/* + Model: AllAvailablePageSchema +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class AllAvailablePageSchema{ + + + + + + + + @JsonProperty("pages") + private List pages; + + + +} + + +/* + Model: PaginationSchema +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class PaginationSchema{ + + + + + + + + @JsonProperty("size") + private Integer size; + + + + + @JsonProperty("item_total") + private Integer itemTotal; + + + + + @JsonProperty("has_next") + private Boolean hasNext; + + + + + @JsonProperty("type") + private String type; + + + + + @JsonProperty("current") + private Integer current; + + + +} + + +/* + Model: BlitzkriegApiErrorSchema +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class BlitzkriegApiErrorSchema{ + + + + + + + + @JsonProperty("message") + private String message; + + + +} + + +/* + Model: BlitzkriegInternalServerErrorSchema +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class BlitzkriegInternalServerErrorSchema{ + + + + + + + + @JsonProperty("message") + private String message; + + + +} + + +/* + Model: ThemesSchema +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class ThemesSchema{ + + + + + + + + @JsonProperty("font") + private Font font; + + + + + @JsonProperty("config") + private Config config; + + + + + @JsonProperty("applied") + private Boolean applied; + + + + + @JsonProperty("is_private") + private Boolean isPrivate; + + + + + @JsonProperty("tags") + private List tags; + + + + + @JsonProperty("_id") + private String id; + + + + + @JsonProperty("application_id") + private String applicationId; + + + + + @JsonProperty("marketplace_theme_id") + private String marketplaceThemeId; + + + + + @JsonProperty("meta") + private Meta meta; + + + + + @JsonProperty("name") + private String name; + + + + + @JsonProperty("template_theme_id") + private String templateThemeId; + + + + + @JsonProperty("version") + private String version; + + + + + @JsonProperty("styles") + private Object styles; + + + + + @JsonProperty("created_at") + private String createdAt; + + + + + @JsonProperty("updated_at") + private String updatedAt; + + + + + @JsonProperty("assets") + private Assets assets; + + + + + @JsonProperty("available_sections") + private List availableSections; + + + +} + + +/* + Model: Font +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class Font{ + + + + + + + + @JsonProperty("variants") + private FontVariants variants; + + + + + @JsonProperty("family") + private String family; + + + +} + + +/* + Model: FontVariants +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class FontVariants{ + + + + + + + + @JsonProperty("light") + private FontVariant light; + + + + + @JsonProperty("regular") + private FontVariant regular; + + + + + @JsonProperty("medium") + private FontVariant medium; + + + + + @JsonProperty("semi_bold") + private FontVariant semiBold; + + + + + @JsonProperty("bold") + private FontVariant bold; + + + +} + + +/* + Model: FontVariant +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class FontVariant{ + + + + + + + + @JsonProperty("name") + private String name; + + + + + @JsonProperty("file") + private String file; + + + +} + + +/* + Model: Config +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class Config{ + + + + + + + + @JsonProperty("current") + private String current; + + + + + @JsonProperty("list") + private List list; + + + + + @JsonProperty("global_schema") + private GlobalSchema globalSchema; + + + + + @JsonProperty("preset") + private Preset preset; + + + +} + + +/* + Model: ThemeConfiguration +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class ThemeConfiguration{ + + + + + + + + @JsonProperty("name") + private String name; + + + + + @JsonProperty("global_config") + private GlobalConfig globalConfig; + + + + + @JsonProperty("custom") + private CustomConfig custom; + + + + + @JsonProperty("page") + private List page; + + + +} + + +/* + Model: CustomConfig +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class CustomConfig{ + + + + + + + + @JsonProperty("props") + private CustomProps props; + + + +} + + +/* + Model: CustomProps +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class CustomProps{ + + + + + + + + @JsonProperty("header_bg_color") + private String headerBgColor; + + + + + @JsonProperty("header_text_color") + private String headerTextColor; + + + + + @JsonProperty("header_border_color") + private String headerBorderColor; + + + + + @JsonProperty("header_icon_color") + private String headerIconColor; + + + + + @JsonProperty("header_cart_notification_bg_color") + private String headerCartNotificationBgColor; + + + + + @JsonProperty("header_cart_notification_text_color") + private String headerCartNotificationTextColor; + + + + + @JsonProperty("header_nav_hover_color") + private String headerNavHoverColor; + + + + + @JsonProperty("button_primary_color") + private String buttonPrimaryColor; + + + + + @JsonProperty("button_primary_label_color") + private String buttonPrimaryLabelColor; + + + + + @JsonProperty("button_add_to_cart_color") + private String buttonAddToCartColor; + + + + + @JsonProperty("button_add_to_cart_label_color") + private String buttonAddToCartLabelColor; + + + + + @JsonProperty("button_secondary_color") + private String buttonSecondaryColor; + + + + + @JsonProperty("button_secondary_label_color") + private String buttonSecondaryLabelColor; + + + + + @JsonProperty("button_tertiary_color") + private String buttonTertiaryColor; + + + + + @JsonProperty("button_tertiary_label_color") + private String buttonTertiaryLabelColor; + + + + + @JsonProperty("button_tertiary_hover_color") + private String buttonTertiaryHoverColor; + + + + + @JsonProperty("button_tertiary_hover_text_color") + private String buttonTertiaryHoverTextColor; + + + + + @JsonProperty("text_heading_link_color") + private String textHeadingLinkColor; + + + + + @JsonProperty("text_body_color") + private String textBodyColor; + + + + + @JsonProperty("text_price_color") + private String textPriceColor; + + + + + @JsonProperty("text_sale_price_color") + private String textSalePriceColor; + + + + + @JsonProperty("text_strikethrough_price_color") + private String textStrikethroughPriceColor; + + + + + @JsonProperty("text_discount_color") + private String textDiscountColor; + + + + + @JsonProperty("footer_bg_color") + private String footerBgColor; + + + + + @JsonProperty("footer_text_color") + private String footerTextColor; + + + + + @JsonProperty("footer_border_color") + private String footerBorderColor; + + + + + @JsonProperty("footer_nav_hover_color") + private String footerNavHoverColor; + + + + + @JsonProperty("disable_cart") + private Boolean disableCart; + + + + + @JsonProperty("is_menu_below_logo") + private Boolean isMenuBelowLogo; + + + + + @JsonProperty("menu_position") + private String menuPosition; + + + +} + + +/* + Model: GlobalConfig +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class GlobalConfig{ + + + + + + + + @JsonProperty("statics") + private StaticConfig statics; + + + + + @JsonProperty("auth") + private AuthConfig auth; + + + + + @JsonProperty("palette") + private PaletteConfig palette; + + + +} + + +/* + Model: PaletteConfig +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class PaletteConfig{ + + + + + + + + @JsonProperty("general_setting") + private GeneralSetting generalSetting; + + + + + @JsonProperty("advance_setting") + private AdvanceSetting advanceSetting; + + + +} + + +/* + Model: GeneralSetting +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class GeneralSetting{ + + + + + + + + @JsonProperty("theme") + private ThemeSetting theme; + + + + + @JsonProperty("text") + private TextSetting text; + + + + + @JsonProperty("button") + private ButtonSetting button; + + + + + @JsonProperty("sale_discount") + private SaleDiscountSetting saleDiscount; + + + + + @JsonProperty("header") + private HeaderSetting header; + + + + + @JsonProperty("footer") + private FooterSetting footer; + + + +} + + +/* + Model: AdvanceSetting +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class AdvanceSetting{ + + + + + + + + @JsonProperty("overlay_popup") + private OverlayPopupSetting overlayPopup; + + + + + @JsonProperty("divider_stroke_highlight") + private DividerStrokeHighlightSetting dividerStrokeHighlight; + + + + + @JsonProperty("user_alerts") + private UserAlertsSetting userAlerts; + + + +} + + +/* + Model: UserAlertsSetting +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class UserAlertsSetting{ + + + + + + + + @JsonProperty("success_background") + private String successBackground; + + + + + @JsonProperty("success_text") + private String successText; + + + + + @JsonProperty("error_background") + private String errorBackground; + + + + + @JsonProperty("error_text") + private String errorText; + + + + + @JsonProperty("info_background") + private String infoBackground; + + + + + @JsonProperty("info_text") + private String infoText; + + + +} + + +/* + Model: ThemeSetting +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class ThemeSetting{ + + + + + + + + @JsonProperty("page_background") + private String pageBackground; + + + + + @JsonProperty("theme_accent") + private String themeAccent; + + + +} + + +/* + Model: TextSetting +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class TextSetting{ + + + + + + + + @JsonProperty("text_heading") + private String textHeading; + + + + + @JsonProperty("text_body") + private String textBody; + + + + + @JsonProperty("text_label") + private String textLabel; + + + + + @JsonProperty("text_secondary") + private String textSecondary; + + + +} + + +/* + Model: ButtonSetting +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class ButtonSetting{ + + + + + + + + @JsonProperty("button_primary") + private String buttonPrimary; + + + + + @JsonProperty("button_secondary") + private String buttonSecondary; + + + + + @JsonProperty("button_link") + private String buttonLink; + + + +} + + +/* + Model: SaleDiscountSetting +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class SaleDiscountSetting{ + + + + + + + + @JsonProperty("sale_badge_background") + private String saleBadgeBackground; + + + + + @JsonProperty("sale_badge_text") + private String saleBadgeText; + + + + + @JsonProperty("sale_discount_text") + private String saleDiscountText; + + + + + @JsonProperty("sale_timer") + private String saleTimer; + + + +} + + +/* + Model: HeaderSetting +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class HeaderSetting{ + + + + + + + + @JsonProperty("header_background") + private String headerBackground; + + + + + @JsonProperty("header_nav") + private String headerNav; + + + + + @JsonProperty("header_icon") + private String headerIcon; + + + +} + + +/* + Model: FooterSetting +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class FooterSetting{ + + + + + + + + @JsonProperty("footer_background") + private String footerBackground; + + + + + @JsonProperty("footer_bottom_background") + private String footerBottomBackground; + + + + + @JsonProperty("footer_heading_text") + private String footerHeadingText; + + + + + @JsonProperty("footer_body_text") + private String footerBodyText; + + + + + @JsonProperty("footer_icon") + private String footerIcon; + + + +} + + +/* + Model: OverlayPopupSetting +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class OverlayPopupSetting{ + + + + + + + + @JsonProperty("dialog_backgroung") + private String dialogBackgroung; + + + + + @JsonProperty("overlay") + private String overlay; + + + +} + + +/* + Model: DividerStrokeHighlightSetting +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class DividerStrokeHighlightSetting{ + + + + + + + + @JsonProperty("divider_strokes") + private String dividerStrokes; + + + + + @JsonProperty("highlight") + private String highlight; + + + +} + + +/* + Model: StaticConfig +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class StaticConfig{ + + + + + + + + @JsonProperty("props") + private StaticProps props; + + + +} + + +/* + Model: StaticProps +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class StaticProps{ + + + + + + + + @JsonProperty("colors") + private Colors colors; + + + + + @JsonProperty("auth") + private AuthConfig auth; + + + +} + + +/* + Model: AuthConfig +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class AuthConfig{ + + + + + + + + @JsonProperty("show_header_auth") + private Boolean showHeaderAuth; + + + + + @JsonProperty("show_footer_auth") + private Boolean showFooterAuth; + + + +} + + +/* + Model: Colors +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class Colors{ + + + + + + + + @JsonProperty("primary_color") + private String primaryColor; + + + + + @JsonProperty("secondary_color") + private String secondaryColor; + + + + + @JsonProperty("accent_color") + private String accentColor; + + + + + @JsonProperty("link_color") + private String linkColor; + + + + + @JsonProperty("button_secondary_color") + private String buttonSecondaryColor; + + + + + @JsonProperty("bg_color") + private String bgColor; + + + +} + + +/* + Model: Meta +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class Meta{ + + + + + + + + @JsonProperty("payment") + private ThemePayment payment; + + + + + @JsonProperty("description") + private String description; + + + + + @JsonProperty("industry") + private List industry; + + + + + @JsonProperty("release") + private Release release; + + + + + @JsonProperty("images") + private Images images; + + + + + @JsonProperty("slug") + private String slug; + + + + + @JsonProperty("name") + private String name; + + + +} + + +/* + Model: ThemePayment +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class ThemePayment{ + + + + + + + + @JsonProperty("is_paid") + private Boolean isPaid; + + + + + @JsonProperty("amount") + private Double amount; + + + +} + + +/* + Model: Release +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class Release{ + + + + + + + + @JsonProperty("notes") + private String notes; + + + + + @JsonProperty("version") + private String version; + + + +} + + +/* + Model: Images +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class Images{ + + + + + + + + @JsonProperty("desktop") + private String desktop; + + + + + @JsonProperty("mobile") + private String mobile; + + + +} + + +/* + Model: Assets +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class Assets{ + + + + + + + + @JsonProperty("umd_js") + private UMDJs umdJs; + + + + + @JsonProperty("common_js") + private CommonJS commonJs; + + + + + @JsonProperty("css") + private CSS css; + + + +} + + +/* + Model: UMDJs +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class UMDJs{ + + + + + + + + @JsonProperty("links") + private List links; + + + +} + + +/* + Model: CommonJS +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class CommonJS{ + + + + + + + + @JsonProperty("link") + private String link; + + + +} + + +/* + Model: CSS +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class CSS{ + + + + + + + + @JsonProperty("links") + private List links; + + + +} + + +/* + Model: SectionItem +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class SectionItem{ + + + + + + + + @JsonProperty("props") + private List props; + + + + + @JsonProperty("blocks") + private List blocks; + + + + + @JsonProperty("name") + private String name; + + + + + @JsonProperty("label") + private String label; + + + +} + + +/* + Model: GlobalSchema +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class GlobalSchema{ + + + + + + + + @JsonProperty("props") + private List props; + + + +} + + +/* + Model: Prop +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class Prop{ + + + + + + + + @JsonProperty("type") + private String type; + + + + + @JsonProperty("category") + private String category; + + + + + @JsonProperty("id") + private String id; + + + + + @JsonProperty("label") + private String label; + + + + + @JsonProperty("info") + private String info; + + + +} + + +/* + Model: Preset +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class Preset{ + + + + + + + + @JsonProperty("pages") + private List pages; + + + +} + + +/* + Model: Page +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class Page{ + + + + + + + + @JsonProperty("sections") + private List
sections; + + + + + @JsonProperty("value") + private String value; + + + +} + + +/* + Model: SectionProps +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class SectionProps{ + + + + + + + + @JsonProperty("title") + private TextProp title; + + + + + @JsonProperty("item_margin") + private TextProp itemMargin; + + + + + @JsonProperty("autoplay") + private CheckboxProp autoplay; + + + + + @JsonProperty("slide_interval") + private RangeProp slideInterval; + + + +} + + +/* + Model: SectionPreset +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class SectionPreset{ + + + + + + + + @JsonProperty("blocks") + private List blocks; + + + +} + + +/* + Model: ImagePickerProp +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class ImagePickerProp{ + + + + + + + + @JsonProperty("type") + private String type; + + + + + @JsonProperty("value") + private String value; + + + +} + + +/* + Model: UrlProp +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class UrlProp{ + + + + + + + + @JsonProperty("type") + private String type; + + + + + @JsonProperty("value") + private String value; + + + +} + + +/* + Model: BlockProps +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class BlockProps{ + + + + + + + + @JsonProperty("image") + private ImagePickerProp image; + + + + + @JsonProperty("slide_link") + private UrlProp slideLink; + + + +} + + +/* + Model: TextProp +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class TextProp{ + + + + + + + + @JsonProperty("value") + private String value; + + + + + @JsonProperty("type") + private String type; + + + +} + + +/* + Model: CheckboxProp +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class CheckboxProp{ + + + + + + + + @JsonProperty("value") + private Boolean value; + + + + + @JsonProperty("type") + private String type; + + + +} + + +/* + Model: RangeProp +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class RangeProp{ + + + + + + + + @JsonProperty("value") + private Integer value; + + + + + @JsonProperty("type") + private String type; + + + +} + + +/* + Model: Section +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class Section{ + + + + + + + + @JsonProperty("blocks") + private List blocks; + + + + + @JsonProperty("predicate") + private Predicate predicate; + + + + + @JsonProperty("name") + private String name; + + + + + @JsonProperty("props") + private SectionProps props; + + + + + @JsonProperty("preset") + private SectionPreset preset; + + + +} + + +/* + Model: Block +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class Block{ + + + + + + + + @JsonProperty("type") + private String type; + + + + + @JsonProperty("name") + private String name; + + + + + @JsonProperty("props") + private BlockProps props; + + + +} + + +/* + Model: Predicate +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class Predicate{ + + + + + + + + @JsonProperty("screen") + private Screen screen; + + + + + @JsonProperty("user") + private ThemeUserSchema user; + + + + + @JsonProperty("route") + private Route route; + + + +} + + +/* + Model: Screen +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class Screen{ + + + + + + + + @JsonProperty("mobile") + private Boolean mobile; + + + + + @JsonProperty("desktop") + private Boolean desktop; + + + + + @JsonProperty("tablet") + private Boolean tablet; + + + +} + + +/* + Model: ThemeUserSchema +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class ThemeUserSchema{ + + + + + + + + @JsonProperty("authenticated") + private Boolean authenticated; + + + + + @JsonProperty("anonymous") + private Boolean anonymous; + + + +} + + +/* + Model: Route +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class Route{ + + + + + + + + @JsonProperty("selected") + private String selected; + + + + + @JsonProperty("exact_url") + private String exactUrl; + + + +} + + +/* + Model: UpdateThemeRequestBody +*/ +@AllArgsConstructor +@NoArgsConstructor +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class UpdateThemeRequestBody{ + + + + + + + + @JsonProperty("config") + private Config config; + + + + + @JsonProperty("font") + private Font font; + + + +} + + + + +} \ No newline at end of file diff --git a/src/main/java/com/sdk/partner/theme/ThemePartnerService.java b/src/main/java/com/sdk/partner/theme/ThemePartnerService.java new file mode 100644 index 00000000..4189b3bf --- /dev/null +++ b/src/main/java/com/sdk/partner/theme/ThemePartnerService.java @@ -0,0 +1,478 @@ +package com.sdk.partner.theme; + +import com.sdk.common.*; +import com.sdk.common.model.FDKException; +import com.sdk.common.model.FDKServerResponseError; +import okhttp3.Interceptor; +import retrofit2.Response; + +import java.io.IOException; +import java.net.CookieStore; +import java.util.*; + +import com.sdk.partner.*; + + +public class ThemePartnerService { + private PartnerConfig partnerConfig; + + private RetrofitServiceFactory retrofitServiceFactory; + + private String organizationId; + + private ThemePartnerApiList themePartnerApiList; + + public ThemePartnerService(PartnerConfig partnerConfig) { + this.partnerConfig = partnerConfig; + this.retrofitServiceFactory = new RetrofitServiceFactory(); + this.organizationId = this.partnerConfig.getOrganizationId(); + this.themePartnerApiList = generateThemePartnerApiList(this.partnerConfig.getPersistentCookieStore()); + } + + private ThemePartnerApiList generateThemePartnerApiList(CookieStore cookieStore) { + List interceptorList = new ArrayList<>(); + interceptorList.add(new AccessTokenInterceptor(partnerConfig)); + interceptorList.add(new RequestSignerInterceptor()); + return retrofitServiceFactory.createService(partnerConfig.getDomain(),ThemePartnerApiList.class, interceptorList, cookieStore); + } + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + public ThemePartnerModels.MarketplaceThemeSchema getOrganizationThemes(String status, Integer pageSize, Integer pageNo) throws FDKServerResponseError, FDKException { + return this.getOrganizationThemes(status, pageSize, pageNo, new HashMap<>()); + } + + public ThemePartnerModels.MarketplaceThemeSchema getOrganizationThemes(String status, Integer pageSize, Integer pageNo, Map requestHeaders) throws FDKServerResponseError, FDKException { + if (this.partnerConfig.getPartnerOauthClient().isAccessTokenValid()) { + Response response = null; + try { + response = themePartnerApiList.getOrganizationThemes(this.organizationId, status, pageSize, pageNo, requestHeaders).execute(); + if (!response.isSuccessful()) { + throw new FDKServerResponseError(response.code(), + response.errorBody() != null ? response.errorBody().string() : Fields.UNKNOWN_ERROR, + response.headers() != null ? response.headers().toString() : Fields.UNKNOWN_ERROR, + response.raw() != null ? response.raw().request().method() : Fields.UNKNOWN_ERROR, + response.raw() != null ? response.raw().request().url().toString() : Fields.UNKNOWN_ERROR, + response.raw() != null && response.raw().request().body() != null ? response.raw().request().body().toString() : Fields.UNKNOWN_ERROR, + response.raw() != null ? response.raw().request().headers().toString() : Fields.UNKNOWN_ERROR); + } + } catch (IOException e) { + throw new FDKException(e.getMessage() != null ? e.getMessage() : Fields.UNKNOWN_ERROR, e); + } + return response.body(); + } else { + return null; + } + } + + + + + + + + + + + + + + + + + + + public ThemePartnerModels.MarketplaceTheme getOrganizationThemeDetails(String themeId) throws FDKServerResponseError, FDKException { + return this.getOrganizationThemeDetails(themeId, new HashMap<>()); + } + + public ThemePartnerModels.MarketplaceTheme getOrganizationThemeDetails(String themeId, Map requestHeaders) throws FDKServerResponseError, FDKException { + if (this.partnerConfig.getPartnerOauthClient().isAccessTokenValid()) { + Response response = null; + try { + response = themePartnerApiList.getOrganizationThemeDetails(this.organizationId, themeId, requestHeaders).execute(); + if (!response.isSuccessful()) { + throw new FDKServerResponseError(response.code(), + response.errorBody() != null ? response.errorBody().string() : Fields.UNKNOWN_ERROR, + response.headers() != null ? response.headers().toString() : Fields.UNKNOWN_ERROR, + response.raw() != null ? response.raw().request().method() : Fields.UNKNOWN_ERROR, + response.raw() != null ? response.raw().request().url().toString() : Fields.UNKNOWN_ERROR, + response.raw() != null && response.raw().request().body() != null ? response.raw().request().body().toString() : Fields.UNKNOWN_ERROR, + response.raw() != null ? response.raw().request().headers().toString() : Fields.UNKNOWN_ERROR); + } + } catch (IOException e) { + throw new FDKException(e.getMessage() != null ? e.getMessage() : Fields.UNKNOWN_ERROR, e); + } + return response.body(); + } else { + return null; + } + } + + + + + + + + + + + + + + + + + + + public ThemePartnerModels.MarketplaceTheme updateDraftTheme(String themeId, ThemePartnerModels.MarketplaceTheme body) throws FDKServerResponseError, FDKException { + return this.updateDraftTheme(themeId, body, new HashMap<>()); + } + + public ThemePartnerModels.MarketplaceTheme updateDraftTheme(String themeId, ThemePartnerModels.MarketplaceTheme body, Map requestHeaders) throws FDKServerResponseError, FDKException { + if (this.partnerConfig.getPartnerOauthClient().isAccessTokenValid()) { + Response response = null; + try { + response = themePartnerApiList.updateDraftTheme(this.organizationId, themeId, body, requestHeaders).execute(); + if (!response.isSuccessful()) { + throw new FDKServerResponseError(response.code(), + response.errorBody() != null ? response.errorBody().string() : Fields.UNKNOWN_ERROR, + response.headers() != null ? response.headers().toString() : Fields.UNKNOWN_ERROR, + response.raw() != null ? response.raw().request().method() : Fields.UNKNOWN_ERROR, + response.raw() != null ? response.raw().request().url().toString() : Fields.UNKNOWN_ERROR, + response.raw() != null && response.raw().request().body() != null ? response.raw().request().body().toString() : Fields.UNKNOWN_ERROR, + response.raw() != null ? response.raw().request().headers().toString() : Fields.UNKNOWN_ERROR); + } + } catch (IOException e) { + throw new FDKException(e.getMessage() != null ? e.getMessage() : Fields.UNKNOWN_ERROR, e); + } + return response.body(); + } else { + return null; + } + } + + + + + + + + + + + + + + + + + + + public ThemePartnerModels.MarketplaceTheme submitOrganizationTheme(String themeId, ThemePartnerModels.MarketplaceTheme body) throws FDKServerResponseError, FDKException { + return this.submitOrganizationTheme(themeId, body, new HashMap<>()); + } + + public ThemePartnerModels.MarketplaceTheme submitOrganizationTheme(String themeId, ThemePartnerModels.MarketplaceTheme body, Map requestHeaders) throws FDKServerResponseError, FDKException { + if (this.partnerConfig.getPartnerOauthClient().isAccessTokenValid()) { + Response response = null; + try { + response = themePartnerApiList.submitOrganizationTheme(this.organizationId, themeId, body, requestHeaders).execute(); + if (!response.isSuccessful()) { + throw new FDKServerResponseError(response.code(), + response.errorBody() != null ? response.errorBody().string() : Fields.UNKNOWN_ERROR, + response.headers() != null ? response.headers().toString() : Fields.UNKNOWN_ERROR, + response.raw() != null ? response.raw().request().method() : Fields.UNKNOWN_ERROR, + response.raw() != null ? response.raw().request().url().toString() : Fields.UNKNOWN_ERROR, + response.raw() != null && response.raw().request().body() != null ? response.raw().request().body().toString() : Fields.UNKNOWN_ERROR, + response.raw() != null ? response.raw().request().headers().toString() : Fields.UNKNOWN_ERROR); + } + } catch (IOException e) { + throw new FDKException(e.getMessage() != null ? e.getMessage() : Fields.UNKNOWN_ERROR, e); + } + return response.body(); + } else { + return null; + } + } + + + + + + + + + + + + + + + + + + + public ThemePartnerModels.MarketplaceTheme deleteOrganizationTheme(String themeId) throws FDKServerResponseError, FDKException { + return this.deleteOrganizationTheme(themeId, new HashMap<>()); + } + + public ThemePartnerModels.MarketplaceTheme deleteOrganizationTheme(String themeId, Map requestHeaders) throws FDKServerResponseError, FDKException { + if (this.partnerConfig.getPartnerOauthClient().isAccessTokenValid()) { + Response response = null; + try { + response = themePartnerApiList.deleteOrganizationTheme(this.organizationId, themeId, requestHeaders).execute(); + if (!response.isSuccessful()) { + throw new FDKServerResponseError(response.code(), + response.errorBody() != null ? response.errorBody().string() : Fields.UNKNOWN_ERROR, + response.headers() != null ? response.headers().toString() : Fields.UNKNOWN_ERROR, + response.raw() != null ? response.raw().request().method() : Fields.UNKNOWN_ERROR, + response.raw() != null ? response.raw().request().url().toString() : Fields.UNKNOWN_ERROR, + response.raw() != null && response.raw().request().body() != null ? response.raw().request().body().toString() : Fields.UNKNOWN_ERROR, + response.raw() != null ? response.raw().request().headers().toString() : Fields.UNKNOWN_ERROR); + } + } catch (IOException e) { + throw new FDKException(e.getMessage() != null ? e.getMessage() : Fields.UNKNOWN_ERROR, e); + } + return response.body(); + } else { + return null; + } + } + + + + + + + + + + + + + + + + + + + public List getLatestVersionOfThemeBySlug(String slugName) throws FDKServerResponseError, FDKException { + return this.getLatestVersionOfThemeBySlug(slugName, new HashMap<>()); + } + + public List getLatestVersionOfThemeBySlug(String slugName, Map requestHeaders) throws FDKServerResponseError, FDKException { + if (this.partnerConfig.getPartnerOauthClient().isAccessTokenValid()) { + Response> response = null; + try { + response = themePartnerApiList.getLatestVersionOfThemeBySlug(this.organizationId, slugName, requestHeaders).execute(); + if (!response.isSuccessful()) { + throw new FDKServerResponseError(response.code(), + response.errorBody() != null ? response.errorBody().string() : Fields.UNKNOWN_ERROR, + response.headers() != null ? response.headers().toString() : Fields.UNKNOWN_ERROR, + response.raw() != null ? response.raw().request().method() : Fields.UNKNOWN_ERROR, + response.raw() != null ? response.raw().request().url().toString() : Fields.UNKNOWN_ERROR, + response.raw() != null && response.raw().request().body() != null ? response.raw().request().body().toString() : Fields.UNKNOWN_ERROR, + response.raw() != null ? response.raw().request().headers().toString() : Fields.UNKNOWN_ERROR); + } + } catch (IOException e) { + throw new FDKException(e.getMessage() != null ? e.getMessage() : Fields.UNKNOWN_ERROR, e); + } + return response.body(); + } else { + return null; + } + } + + + + + + + + + + + + + + + + + + + public ThemePartnerModels.MarketplaceTheme createNewThemeInOrganization(String slug, ThemePartnerModels.MarketplaceTheme body) throws FDKServerResponseError, FDKException { + return this.createNewThemeInOrganization(slug, body, new HashMap<>()); + } + + public ThemePartnerModels.MarketplaceTheme createNewThemeInOrganization(String slug, ThemePartnerModels.MarketplaceTheme body, Map requestHeaders) throws FDKServerResponseError, FDKException { + if (this.partnerConfig.getPartnerOauthClient().isAccessTokenValid()) { + Response response = null; + try { + response = themePartnerApiList.createNewThemeInOrganization(this.organizationId, slug, body, requestHeaders).execute(); + if (!response.isSuccessful()) { + throw new FDKServerResponseError(response.code(), + response.errorBody() != null ? response.errorBody().string() : Fields.UNKNOWN_ERROR, + response.headers() != null ? response.headers().toString() : Fields.UNKNOWN_ERROR, + response.raw() != null ? response.raw().request().method() : Fields.UNKNOWN_ERROR, + response.raw() != null ? response.raw().request().url().toString() : Fields.UNKNOWN_ERROR, + response.raw() != null && response.raw().request().body() != null ? response.raw().request().body().toString() : Fields.UNKNOWN_ERROR, + response.raw() != null ? response.raw().request().headers().toString() : Fields.UNKNOWN_ERROR); + } + } catch (IOException e) { + throw new FDKException(e.getMessage() != null ? e.getMessage() : Fields.UNKNOWN_ERROR, e); + } + return response.body(); + } else { + return null; + } + } + + + + + + + + + + + + + + + + + + + public ThemePartnerModels.ThemeRejectionReasons getThemeRejectionReasons(String themeId) throws FDKServerResponseError, FDKException { + return this.getThemeRejectionReasons(themeId, new HashMap<>()); + } + + public ThemePartnerModels.ThemeRejectionReasons getThemeRejectionReasons(String themeId, Map requestHeaders) throws FDKServerResponseError, FDKException { + if (this.partnerConfig.getPartnerOauthClient().isAccessTokenValid()) { + Response response = null; + try { + response = themePartnerApiList.getThemeRejectionReasons(this.organizationId, themeId, requestHeaders).execute(); + if (!response.isSuccessful()) { + throw new FDKServerResponseError(response.code(), + response.errorBody() != null ? response.errorBody().string() : Fields.UNKNOWN_ERROR, + response.headers() != null ? response.headers().toString() : Fields.UNKNOWN_ERROR, + response.raw() != null ? response.raw().request().method() : Fields.UNKNOWN_ERROR, + response.raw() != null ? response.raw().request().url().toString() : Fields.UNKNOWN_ERROR, + response.raw() != null && response.raw().request().body() != null ? response.raw().request().body().toString() : Fields.UNKNOWN_ERROR, + response.raw() != null ? response.raw().request().headers().toString() : Fields.UNKNOWN_ERROR); + } + } catch (IOException e) { + throw new FDKException(e.getMessage() != null ? e.getMessage() : Fields.UNKNOWN_ERROR, e); + } + return response.body(); + } else { + return null; + } + } + + + + + + + + + + + + + + + + + + + + + + + + + + + public ThemePartnerModels.MarketplaceThemeSchema getThemeVersions(String themeSlug, Integer pageSize, Integer pageNo) throws FDKServerResponseError, FDKException { + return this.getThemeVersions(themeSlug, pageSize, pageNo, new HashMap<>()); + } + + public ThemePartnerModels.MarketplaceThemeSchema getThemeVersions(String themeSlug, Integer pageSize, Integer pageNo, Map requestHeaders) throws FDKServerResponseError, FDKException { + if (this.partnerConfig.getPartnerOauthClient().isAccessTokenValid()) { + Response response = null; + try { + response = themePartnerApiList.getThemeVersions(this.organizationId, themeSlug, pageSize, pageNo, requestHeaders).execute(); + if (!response.isSuccessful()) { + throw new FDKServerResponseError(response.code(), + response.errorBody() != null ? response.errorBody().string() : Fields.UNKNOWN_ERROR, + response.headers() != null ? response.headers().toString() : Fields.UNKNOWN_ERROR, + response.raw() != null ? response.raw().request().method() : Fields.UNKNOWN_ERROR, + response.raw() != null ? response.raw().request().url().toString() : Fields.UNKNOWN_ERROR, + response.raw() != null && response.raw().request().body() != null ? response.raw().request().body().toString() : Fields.UNKNOWN_ERROR, + response.raw() != null ? response.raw().request().headers().toString() : Fields.UNKNOWN_ERROR); + } + } catch (IOException e) { + throw new FDKException(e.getMessage() != null ? e.getMessage() : Fields.UNKNOWN_ERROR, e); + } + return response.body(); + } else { + return null; + } + } + + + + + +private interface Fields { + String UNKNOWN_ERROR = "Unknown error"; +} + +} \ No newline at end of file diff --git a/src/main/java/com/sdk/platform/AccessTokenInterceptor.java b/src/main/java/com/sdk/platform/AccessTokenInterceptor.java index 2fa78bb8..d6730b6b 100644 --- a/src/main/java/com/sdk/platform/AccessTokenInterceptor.java +++ b/src/main/java/com/sdk/platform/AccessTokenInterceptor.java @@ -26,7 +26,7 @@ public Response intercept(Chain chain) throws IOException { okhttp3.Request.Builder builder = original.newBuilder() .addHeader("Authorization", "Bearer "+ platformConfig.getPlatformOauthClient().getToken()) .addHeader("Content-Type", "application/x-www-form-urlencoded") - .addHeader("x-fp-sdk-version", "1.3.10-beta.1"); + .addHeader("x-fp-sdk-version", "1.3.10-beta.2"); if (!platformConfig.getExtraHeaders().isEmpty()) { HashMap extraHeaders = platformConfig.getExtraHeaders(); for(Map.Entry entry:extraHeaders.entrySet()){ diff --git a/src/main/java/com/sdk/platform/PlatformHeaderInterceptor.java b/src/main/java/com/sdk/platform/PlatformHeaderInterceptor.java index b547a39f..07e7759b 100644 --- a/src/main/java/com/sdk/platform/PlatformHeaderInterceptor.java +++ b/src/main/java/com/sdk/platform/PlatformHeaderInterceptor.java @@ -37,7 +37,7 @@ private Request.Builder buildHeaders(Request request, String bearerToken) { .addHeader("Accept-Language", "en-IN") .addHeader("Authorization", "Basic "+ bearerToken) .addHeader("Content-Type","application/x-www-form-urlencoded") - .addHeader("x-fp-sdk-version", "1.3.10-beta.1"); + .addHeader("x-fp-sdk-version", "1.3.10-beta.2"); } } diff --git a/src/main/java/com/sdk/platform/discount/DiscountPlatformModels.java b/src/main/java/com/sdk/platform/discount/DiscountPlatformModels.java index 62814c26..4cd3b7cd 100644 --- a/src/main/java/com/sdk/platform/discount/DiscountPlatformModels.java +++ b/src/main/java/com/sdk/platform/discount/DiscountPlatformModels.java @@ -133,6 +133,12 @@ public static class CreateUpdateDiscount{ + @JsonProperty("zone_ids") + private List zoneIds; + + + + @JsonProperty("validity") private ValidityObject validity; diff --git a/src/main/java/com/sdk/platform/order/OrderPlatformModels.java b/src/main/java/com/sdk/platform/order/OrderPlatformModels.java index b414d2f3..f345a600 100644 --- a/src/main/java/com/sdk/platform/order/OrderPlatformModels.java +++ b/src/main/java/com/sdk/platform/order/OrderPlatformModels.java @@ -8254,7 +8254,7 @@ public static class ShipmentItemFulFillingStore{ @JsonProperty("brand_store_tags") - private String brandStoreTags; + private List brandStoreTags; @@ -10927,6 +10927,12 @@ public static class OrderBags{ + @JsonProperty("bag_status") + private List bagStatus; + + + + @JsonProperty("parent_promo_bags") private Object parentPromoBags; diff --git a/src/main/java/com/sdk/universal/PublicHeaderInterceptor.java b/src/main/java/com/sdk/universal/PublicHeaderInterceptor.java index 870760a7..7e3715d2 100644 --- a/src/main/java/com/sdk/universal/PublicHeaderInterceptor.java +++ b/src/main/java/com/sdk/universal/PublicHeaderInterceptor.java @@ -38,6 +38,6 @@ private Request.Builder buildHeaders(Request request, String bearerToken) { .addHeader("User-Agent", publicConfig.getUserAgent()) .addHeader("Accept-Language", "en-IN") .addHeader("Authorization", "Bearer "+bearerToken) - .addHeader("x-fp-sdk-version", "1.3.10-beta.1"); + .addHeader("x-fp-sdk-version", "1.3.10-beta.2"); } } \ No newline at end of file