@gofynd/fdk-client-javascript 1.4.0-beta.1 → 1.4.0-beta.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/package.json +1 -1
- package/sdk/application/Cart/CartApplicationModel.d.ts +2 -0
- package/sdk/application/Cart/CartApplicationModel.js +2 -0
- package/sdk/application/Order/OrderApplicationModel.d.ts +2 -0
- package/sdk/application/Order/OrderApplicationModel.js +2 -0
- package/sdk/partner/Theme/ThemePartnerModel.d.ts +240 -315
- package/sdk/partner/Theme/ThemePartnerModel.js +332 -222
- package/sdk/platform/Cart/CartPlatformApplicationClient.js +4 -1
- package/sdk/platform/Catalog/CatalogPlatformApplicationClient.js +4 -1
- package/sdk/platform/Catalog/CatalogPlatformClient.d.ts +2 -12
- package/sdk/platform/Catalog/CatalogPlatformClient.js +17 -87
- package/sdk/platform/Catalog/CatalogPlatformValidator.d.ts +11 -25
- package/sdk/platform/Catalog/CatalogPlatformValidator.js +4 -17
- package/sdk/platform/Communication/CommunicationPlatformApplicationClient.d.ts +1 -1
- package/sdk/platform/Communication/CommunicationPlatformApplicationClient.js +8 -2
- package/sdk/platform/Communication/CommunicationPlatformApplicationValidator.d.ts +5 -0
- package/sdk/platform/Communication/CommunicationPlatformApplicationValidator.js +2 -0
- package/sdk/platform/Configuration/ConfigurationPlatformApplicationClient.js +4 -1
- package/sdk/platform/Content/ContentPlatformApplicationClient.js +4 -1
- package/sdk/platform/Discount/DiscountPlatformModel.d.ts +2 -0
- package/sdk/platform/Discount/DiscountPlatformModel.js +2 -0
- package/sdk/platform/FileStorage/FileStoragePlatformApplicationClient.js +4 -1
- package/sdk/platform/FileStorage/FileStoragePlatformModel.d.ts +116 -44
- package/sdk/platform/FileStorage/FileStoragePlatformModel.js +120 -54
- package/sdk/platform/Lead/LeadPlatformApplicationClient.js +4 -1
- package/sdk/platform/Order/OrderPlatformApplicationClient.d.ts +0 -12
- package/sdk/platform/Order/OrderPlatformApplicationClient.js +4 -86
- package/sdk/platform/Order/OrderPlatformApplicationValidator.d.ts +1 -12
- package/sdk/platform/Order/OrderPlatformApplicationValidator.js +0 -14
- package/sdk/platform/Order/OrderPlatformClient.d.ts +11 -61
- package/sdk/platform/Order/OrderPlatformClient.js +87 -481
- package/sdk/platform/Order/OrderPlatformModel.d.ts +442 -171
- package/sdk/platform/Order/OrderPlatformModel.js +483 -169
- package/sdk/platform/Order/OrderPlatformValidator.d.ts +22 -69
- package/sdk/platform/Order/OrderPlatformValidator.js +17 -79
- package/sdk/platform/Partner/PartnerPlatformApplicationClient.js +4 -1
- package/sdk/platform/Payment/PaymentPlatformApplicationClient.js +4 -1
- package/sdk/platform/Rewards/RewardsPlatformApplicationClient.js +4 -1
- package/sdk/platform/Serviceability/ServiceabilityPlatformApplicationClient.js +4 -1
- package/sdk/platform/Share/SharePlatformApplicationClient.js +4 -1
- package/sdk/platform/Theme/ThemePlatformApplicationClient.js +4 -1
- package/sdk/platform/Theme/ThemePlatformModel.d.ts +103 -21
- package/sdk/platform/Theme/ThemePlatformModel.js +108 -20
- package/sdk/platform/User/UserPlatformApplicationClient.js +4 -1
- package/sdk/platform/Webhook/WebhookPlatformClient.d.ts +2 -2
- package/sdk/platform/Webhook/WebhookPlatformClient.js +4 -2
- package/sdk/platform/Webhook/WebhookPlatformModel.d.ts +21 -27
- package/sdk/platform/Webhook/WebhookPlatformModel.js +30 -27
|
@@ -1,10 +1,18 @@
|
|
|
1
1
|
const Joi = require("joi");
|
|
2
2
|
|
|
3
3
|
/**
|
|
4
|
-
* @typedef
|
|
5
|
-
* @property {
|
|
6
|
-
* @property {
|
|
7
|
-
* @property {
|
|
4
|
+
* @typedef Action
|
|
5
|
+
* @property {ActionPage} [page]
|
|
6
|
+
* @property {ActionPage} [popup]
|
|
7
|
+
* @property {string} [type]
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* @typedef ActionPage
|
|
12
|
+
* @property {Object} [params]
|
|
13
|
+
* @property {Object} [query]
|
|
14
|
+
* @property {PageType} type
|
|
15
|
+
* @property {string} [url]
|
|
8
16
|
*/
|
|
9
17
|
|
|
10
18
|
/**
|
|
@@ -20,16 +28,20 @@ const Joi = require("joi");
|
|
|
20
28
|
*/
|
|
21
29
|
|
|
22
30
|
/**
|
|
23
|
-
* @typedef
|
|
24
|
-
* @property {boolean} [
|
|
25
|
-
* @property {boolean} [
|
|
31
|
+
* @typedef AvailablePagePlatformPredicate
|
|
32
|
+
* @property {boolean} [android] - Section visibility on android platform
|
|
33
|
+
* @property {boolean} [ios] - Section visibility on ios platform
|
|
34
|
+
* @property {boolean} [web] - Section visibility on web platform
|
|
26
35
|
*/
|
|
27
36
|
|
|
28
37
|
/**
|
|
29
38
|
* @typedef AvailablePagePredicate
|
|
39
|
+
* @property {AvailablePagePlatformPredicate} [platform]
|
|
30
40
|
* @property {AvailablePageRoutePredicate} [route]
|
|
41
|
+
* @property {AvailablePageSchedulePredicate} [schedule]
|
|
31
42
|
* @property {AvailablePageScreenPredicate} [screen]
|
|
32
43
|
* @property {AvailablePageUserPredicate} [user]
|
|
44
|
+
* @property {string[]} [zones] - An array of zone ids associated with the section
|
|
33
45
|
*/
|
|
34
46
|
|
|
35
47
|
/**
|
|
@@ -39,9 +51,17 @@ const Joi = require("joi");
|
|
|
39
51
|
* @property {string} [selected]
|
|
40
52
|
*/
|
|
41
53
|
|
|
54
|
+
/**
|
|
55
|
+
* @typedef AvailablePageSchedulePredicate
|
|
56
|
+
* @property {string} [cron]
|
|
57
|
+
* @property {string} [end]
|
|
58
|
+
* @property {string} [start]
|
|
59
|
+
*/
|
|
60
|
+
|
|
42
61
|
/**
|
|
43
62
|
* @typedef AvailablePageSchema
|
|
44
63
|
* @property {string} [_id]
|
|
64
|
+
* @property {string} [created_at] - The creation timestamp of the page
|
|
45
65
|
* @property {string} [path]
|
|
46
66
|
* @property {Object[]} [props]
|
|
47
67
|
* @property {AvailablePageSchemaSections[]} [sections]
|
|
@@ -50,6 +70,7 @@ const Joi = require("joi");
|
|
|
50
70
|
* @property {string} [text]
|
|
51
71
|
* @property {string} [theme]
|
|
52
72
|
* @property {string} [type]
|
|
73
|
+
* @property {string} [updated_at] - The last update timestamp of the page
|
|
53
74
|
* @property {string} [value]
|
|
54
75
|
*/
|
|
55
76
|
|
|
@@ -61,6 +82,7 @@ const Joi = require("joi");
|
|
|
61
82
|
* @property {AvailablePagePredicate} [predicate]
|
|
62
83
|
* @property {Object} [preset]
|
|
63
84
|
* @property {Object} [props]
|
|
85
|
+
* @property {string} [source]
|
|
64
86
|
*/
|
|
65
87
|
|
|
66
88
|
/**
|
|
@@ -78,7 +100,10 @@ const Joi = require("joi");
|
|
|
78
100
|
/**
|
|
79
101
|
* @typedef AvailablePageSeo
|
|
80
102
|
* @property {string} [_id]
|
|
103
|
+
* @property {SEObreadcrumb[]} [breadcrumb]
|
|
81
104
|
* @property {string} [description]
|
|
105
|
+
* @property {SEOMetaItem[]} [meta_tags]
|
|
106
|
+
* @property {SEOSitemap} [sitemap]
|
|
82
107
|
* @property {string} [title]
|
|
83
108
|
*/
|
|
84
109
|
|
|
@@ -111,13 +136,6 @@ const Joi = require("joi");
|
|
|
111
136
|
* @property {UrlProp} [slide_link]
|
|
112
137
|
*/
|
|
113
138
|
|
|
114
|
-
/**
|
|
115
|
-
* @typedef ButtonSetting
|
|
116
|
-
* @property {string} [button_link] - The button link color
|
|
117
|
-
* @property {string} [button_primary] - The primary button color
|
|
118
|
-
* @property {string} [button_secondary] - The secondary button color
|
|
119
|
-
*/
|
|
120
|
-
|
|
121
139
|
/**
|
|
122
140
|
* @typedef CarouselItem
|
|
123
141
|
* @property {string} [desktop] - Desktop carousel image URL
|
|
@@ -136,16 +154,6 @@ const Joi = require("joi");
|
|
|
136
154
|
* @property {boolean} [value] - The value of the checkbox property.
|
|
137
155
|
*/
|
|
138
156
|
|
|
139
|
-
/**
|
|
140
|
-
* @typedef Colors
|
|
141
|
-
* @property {string} [accent_color] - The accent color
|
|
142
|
-
* @property {string} [bg_color] - The background color
|
|
143
|
-
* @property {string} [button_secondary_color] - The secondary button color
|
|
144
|
-
* @property {string} [link_color] - The link color
|
|
145
|
-
* @property {string} [primary_color] - The primary color
|
|
146
|
-
* @property {string} [secondary_color] - The secondary color
|
|
147
|
-
*/
|
|
148
|
-
|
|
149
157
|
/**
|
|
150
158
|
* @typedef Comments
|
|
151
159
|
* @property {string} [developer_remark] - Developer remark
|
|
@@ -186,6 +194,7 @@ const Joi = require("joi");
|
|
|
186
194
|
|
|
187
195
|
/**
|
|
188
196
|
* @typedef CSS
|
|
197
|
+
* @property {string} [link]
|
|
189
198
|
* @property {string[]} [links]
|
|
190
199
|
*/
|
|
191
200
|
|
|
@@ -234,9 +243,9 @@ const Joi = require("joi");
|
|
|
234
243
|
*/
|
|
235
244
|
|
|
236
245
|
/**
|
|
237
|
-
* @typedef
|
|
238
|
-
* @property {string} [divider_strokes]
|
|
239
|
-
* @property {string} [highlight]
|
|
246
|
+
* @typedef DividerStrokeHighlight
|
|
247
|
+
* @property {string} [divider_strokes]
|
|
248
|
+
* @property {string} [highlight]
|
|
240
249
|
*/
|
|
241
250
|
|
|
242
251
|
/**
|
|
@@ -284,44 +293,11 @@ const Joi = require("joi");
|
|
|
284
293
|
* @property {FontVariant} [semi_bold]
|
|
285
294
|
*/
|
|
286
295
|
|
|
287
|
-
/**
|
|
288
|
-
* @typedef FooterSetting
|
|
289
|
-
* @property {string} [footer_background] - The footer background color
|
|
290
|
-
* @property {string} [footer_body_text] - The footer body text color
|
|
291
|
-
* @property {string} [footer_bottom_background] - The footer bottom background color
|
|
292
|
-
* @property {string} [footer_heading_text] - The footer heading text color
|
|
293
|
-
* @property {string} [footer_icon] - The footer icon color
|
|
294
|
-
*/
|
|
295
|
-
|
|
296
|
-
/**
|
|
297
|
-
* @typedef GeneralSetting
|
|
298
|
-
* @property {ButtonSetting} [button]
|
|
299
|
-
* @property {FooterSetting} [footer]
|
|
300
|
-
* @property {HeaderSetting} [header]
|
|
301
|
-
* @property {SaleDiscountSetting} [sale_discount]
|
|
302
|
-
* @property {TextSetting} [text]
|
|
303
|
-
* @property {ThemeSetting} [theme]
|
|
304
|
-
*/
|
|
305
|
-
|
|
306
|
-
/**
|
|
307
|
-
* @typedef GlobalConfig
|
|
308
|
-
* @property {AuthConfig} [auth]
|
|
309
|
-
* @property {PaletteConfig} [palette]
|
|
310
|
-
* @property {StaticConfig} [statics]
|
|
311
|
-
*/
|
|
312
|
-
|
|
313
296
|
/**
|
|
314
297
|
* @typedef GlobalSchema
|
|
315
298
|
* @property {Prop[]} [props]
|
|
316
299
|
*/
|
|
317
300
|
|
|
318
|
-
/**
|
|
319
|
-
* @typedef HeaderSetting
|
|
320
|
-
* @property {string} [header_background] - The header background color
|
|
321
|
-
* @property {string} [header_icon] - The header icon color
|
|
322
|
-
* @property {string} [header_nav] - The header navigation color
|
|
323
|
-
*/
|
|
324
|
-
|
|
325
301
|
/**
|
|
326
302
|
* @typedef Highlight
|
|
327
303
|
* @property {string} [description] - Highlight description
|
|
@@ -386,9 +362,15 @@ const Joi = require("joi");
|
|
|
386
362
|
*/
|
|
387
363
|
|
|
388
364
|
/**
|
|
389
|
-
* @typedef
|
|
390
|
-
* @property {
|
|
391
|
-
* @property {
|
|
365
|
+
* @typedef OrderTracking
|
|
366
|
+
* @property {boolean} [show_footer]
|
|
367
|
+
* @property {boolean} [show_header]
|
|
368
|
+
*/
|
|
369
|
+
|
|
370
|
+
/**
|
|
371
|
+
* @typedef OverlayPopup
|
|
372
|
+
* @property {string} [dialog_backgroung]
|
|
373
|
+
* @property {string} [overlay]
|
|
392
374
|
*/
|
|
393
375
|
|
|
394
376
|
/**
|
|
@@ -411,12 +393,6 @@ const Joi = require("joi");
|
|
|
411
393
|
* @property {string} [type]
|
|
412
394
|
*/
|
|
413
395
|
|
|
414
|
-
/**
|
|
415
|
-
* @typedef PaletteConfig
|
|
416
|
-
* @property {AdvanceSetting} [advance_setting]
|
|
417
|
-
* @property {GeneralSetting} [general_setting]
|
|
418
|
-
*/
|
|
419
|
-
|
|
420
396
|
/**
|
|
421
397
|
* @typedef PaymentInfo
|
|
422
398
|
* @property {number} [amount] - Amount of payment
|
|
@@ -442,6 +418,7 @@ const Joi = require("joi");
|
|
|
442
418
|
* @property {string} [info] - Additional information about the property
|
|
443
419
|
* @property {string} [label] - The label of the property
|
|
444
420
|
* @property {string} [type] - The type of the property
|
|
421
|
+
* @property {string} [value] - The value of the property
|
|
445
422
|
*/
|
|
446
423
|
|
|
447
424
|
/**
|
|
@@ -462,14 +439,6 @@ const Joi = require("joi");
|
|
|
462
439
|
* @property {string} [selected] - The selected route.
|
|
463
440
|
*/
|
|
464
441
|
|
|
465
|
-
/**
|
|
466
|
-
* @typedef SaleDiscountSetting
|
|
467
|
-
* @property {string} [sale_badge_background] - The sale badge background color
|
|
468
|
-
* @property {string} [sale_badge_text] - The sale badge text color
|
|
469
|
-
* @property {string} [sale_discount_text] - The sale discount text color
|
|
470
|
-
* @property {string} [sale_timer] - The sale timer color
|
|
471
|
-
*/
|
|
472
|
-
|
|
473
442
|
/**
|
|
474
443
|
* @typedef Screen
|
|
475
444
|
* @property {boolean} [desktop] - True if the screen is a desktop device.
|
|
@@ -508,14 +477,27 @@ const Joi = require("joi");
|
|
|
508
477
|
*/
|
|
509
478
|
|
|
510
479
|
/**
|
|
511
|
-
* @typedef
|
|
512
|
-
* @property {
|
|
480
|
+
* @typedef SEObreadcrumb
|
|
481
|
+
* @property {Action} [action]
|
|
482
|
+
* @property {string} [url]
|
|
483
|
+
*/
|
|
484
|
+
|
|
485
|
+
/**
|
|
486
|
+
* @typedef SEOMetaItem
|
|
487
|
+
* @property {SEOMetaItems[]} [items]
|
|
488
|
+
* @property {string} [title]
|
|
489
|
+
*/
|
|
490
|
+
|
|
491
|
+
/**
|
|
492
|
+
* @typedef SEOMetaItems
|
|
493
|
+
* @property {string} [key]
|
|
494
|
+
* @property {string} [value]
|
|
513
495
|
*/
|
|
514
496
|
|
|
515
497
|
/**
|
|
516
|
-
* @typedef
|
|
517
|
-
* @property {
|
|
518
|
-
* @property {
|
|
498
|
+
* @typedef SEOSitemap
|
|
499
|
+
* @property {string} [frequency]
|
|
500
|
+
* @property {number} [priority]
|
|
519
501
|
*/
|
|
520
502
|
|
|
521
503
|
/**
|
|
@@ -525,19 +507,21 @@ const Joi = require("joi");
|
|
|
525
507
|
*/
|
|
526
508
|
|
|
527
509
|
/**
|
|
528
|
-
* @typedef
|
|
529
|
-
* @property {string} [
|
|
530
|
-
* @property {
|
|
531
|
-
|
|
532
|
-
|
|
510
|
+
* @typedef ThemeConfigListPage
|
|
511
|
+
* @property {string} [page] - Name of the page
|
|
512
|
+
* @property {ThemeConfigListPageSettingsProps} [settings]
|
|
513
|
+
*/
|
|
514
|
+
|
|
515
|
+
/**
|
|
516
|
+
* @typedef ThemeConfigListPageSettingsProps
|
|
517
|
+
* @property {Object} [props]
|
|
533
518
|
*/
|
|
534
519
|
|
|
535
520
|
/**
|
|
536
521
|
* @typedef ThemeConfiguration
|
|
537
|
-
* @property {
|
|
538
|
-
* @property {GlobalConfig} [global_config]
|
|
522
|
+
* @property {Object} [global_config]
|
|
539
523
|
* @property {string} [name] - The name of the configuration
|
|
540
|
-
* @property {
|
|
524
|
+
* @property {ThemeConfigListPage[]} [page] - An array of pages
|
|
541
525
|
*/
|
|
542
526
|
|
|
543
527
|
/**
|
|
@@ -573,12 +557,6 @@ const Joi = require("joi");
|
|
|
573
557
|
* @property {string} user_id - The ID of the user who submitted the theme
|
|
574
558
|
*/
|
|
575
559
|
|
|
576
|
-
/**
|
|
577
|
-
* @typedef ThemeSetting
|
|
578
|
-
* @property {string} [page_background] - The page background color
|
|
579
|
-
* @property {string} [theme_accent] - The theme accent color
|
|
580
|
-
*/
|
|
581
|
-
|
|
582
560
|
/**
|
|
583
561
|
* @typedef ThemesSchema
|
|
584
562
|
* @property {string} [_id] - The unique identifier of the theme
|
|
@@ -594,6 +572,7 @@ const Joi = require("joi");
|
|
|
594
572
|
* @property {string} [marketplace_theme_id] - The ID of the theme in the marketplace
|
|
595
573
|
* @property {ThemeMeta} [meta]
|
|
596
574
|
* @property {string} [name] - The name of the theme
|
|
575
|
+
* @property {string} [src]
|
|
597
576
|
* @property {Object} [styles] - The styles associated with the theme
|
|
598
577
|
* @property {string[]} [tags] - An array of tags associated with the theme
|
|
599
578
|
* @property {string} [template_theme_id] - The ID of the template theme
|
|
@@ -610,6 +589,7 @@ const Joi = require("joi");
|
|
|
610
589
|
|
|
611
590
|
/**
|
|
612
591
|
* @typedef UMDJs
|
|
592
|
+
* @property {string} [link]
|
|
613
593
|
* @property {string[]} [links]
|
|
614
594
|
*/
|
|
615
595
|
|
|
@@ -626,13 +606,13 @@ const Joi = require("joi");
|
|
|
626
606
|
*/
|
|
627
607
|
|
|
628
608
|
/**
|
|
629
|
-
* @typedef
|
|
630
|
-
* @property {string} [error_background]
|
|
631
|
-
* @property {string} [error_text]
|
|
632
|
-
* @property {string} [info_background]
|
|
633
|
-
* @property {string} [info_text]
|
|
634
|
-
* @property {string} [success_background]
|
|
635
|
-
* @property {string} [success_text]
|
|
609
|
+
* @typedef UserAlerts
|
|
610
|
+
* @property {string} [error_background]
|
|
611
|
+
* @property {string} [error_text]
|
|
612
|
+
* @property {string} [info_background]
|
|
613
|
+
* @property {string} [info_text]
|
|
614
|
+
* @property {string} [success_background]
|
|
615
|
+
* @property {string} [success_text]
|
|
636
616
|
*/
|
|
637
617
|
|
|
638
618
|
/**
|
|
@@ -643,13 +623,78 @@ const Joi = require("joi");
|
|
|
643
623
|
* @property {string} [name] - Variation name
|
|
644
624
|
*/
|
|
645
625
|
|
|
626
|
+
/**
|
|
627
|
+
* @typedef {| "about-us"
|
|
628
|
+
* | "addresses"
|
|
629
|
+
* | "blog"
|
|
630
|
+
* | "brands"
|
|
631
|
+
* | "cards"
|
|
632
|
+
* | "cart"
|
|
633
|
+
* | "categories"
|
|
634
|
+
* | "brand"
|
|
635
|
+
* | "category"
|
|
636
|
+
* | "collection"
|
|
637
|
+
* | "collections"
|
|
638
|
+
* | "contact-us"
|
|
639
|
+
* | "external"
|
|
640
|
+
* | "faq"
|
|
641
|
+
* | "freshchat"
|
|
642
|
+
* | "home"
|
|
643
|
+
* | "notification-settings"
|
|
644
|
+
* | "orders"
|
|
645
|
+
* | "page"
|
|
646
|
+
* | "policy"
|
|
647
|
+
* | "product"
|
|
648
|
+
* | "product-request"
|
|
649
|
+
* | "products"
|
|
650
|
+
* | "profile"
|
|
651
|
+
* | "profile-order-shipment"
|
|
652
|
+
* | "profile-basic"
|
|
653
|
+
* | "profile-company"
|
|
654
|
+
* | "profile-emails"
|
|
655
|
+
* | "profile-phones"
|
|
656
|
+
* | "rate-us"
|
|
657
|
+
* | "refer-earn"
|
|
658
|
+
* | "settings"
|
|
659
|
+
* | "shared-cart"
|
|
660
|
+
* | "tnc"
|
|
661
|
+
* | "track-order"
|
|
662
|
+
* | "wishlist"
|
|
663
|
+
* | "sections"
|
|
664
|
+
* | "form"
|
|
665
|
+
* | "cart-delivery"
|
|
666
|
+
* | "cart-payment"
|
|
667
|
+
* | "cart-review"
|
|
668
|
+
* | "login"
|
|
669
|
+
* | "register"
|
|
670
|
+
* | "shipping-policy"
|
|
671
|
+
* | "return-policy"
|
|
672
|
+
* | "order-status"} PageType
|
|
673
|
+
*/
|
|
674
|
+
|
|
646
675
|
class ThemePartnerModel {
|
|
647
|
-
/** @returns {
|
|
648
|
-
static
|
|
676
|
+
/** @returns {Action} */
|
|
677
|
+
static Action() {
|
|
649
678
|
return Joi.object({
|
|
650
|
-
|
|
651
|
-
|
|
652
|
-
|
|
679
|
+
page: ThemePartnerModel.ActionPage(),
|
|
680
|
+
popup: ThemePartnerModel.ActionPage(),
|
|
681
|
+
type: Joi.string().allow(""),
|
|
682
|
+
});
|
|
683
|
+
}
|
|
684
|
+
|
|
685
|
+
/** @returns {ActionPage} */
|
|
686
|
+
static ActionPage() {
|
|
687
|
+
return Joi.object({
|
|
688
|
+
params: Joi.object().pattern(
|
|
689
|
+
/\S/,
|
|
690
|
+
Joi.array().items(Joi.string().allow(""))
|
|
691
|
+
),
|
|
692
|
+
query: Joi.object().pattern(
|
|
693
|
+
/\S/,
|
|
694
|
+
Joi.array().items(Joi.string().allow(""))
|
|
695
|
+
),
|
|
696
|
+
type: ThemePartnerModel.PageType().required(),
|
|
697
|
+
url: Joi.string().allow(""),
|
|
653
698
|
});
|
|
654
699
|
}
|
|
655
700
|
|
|
@@ -669,20 +714,24 @@ class ThemePartnerModel {
|
|
|
669
714
|
});
|
|
670
715
|
}
|
|
671
716
|
|
|
672
|
-
/** @returns {
|
|
673
|
-
static
|
|
717
|
+
/** @returns {AvailablePagePlatformPredicate} */
|
|
718
|
+
static AvailablePagePlatformPredicate() {
|
|
674
719
|
return Joi.object({
|
|
675
|
-
|
|
676
|
-
|
|
720
|
+
android: Joi.boolean(),
|
|
721
|
+
ios: Joi.boolean(),
|
|
722
|
+
web: Joi.boolean(),
|
|
677
723
|
});
|
|
678
724
|
}
|
|
679
725
|
|
|
680
726
|
/** @returns {AvailablePagePredicate} */
|
|
681
727
|
static AvailablePagePredicate() {
|
|
682
728
|
return Joi.object({
|
|
729
|
+
platform: ThemePartnerModel.AvailablePagePlatformPredicate(),
|
|
683
730
|
route: ThemePartnerModel.AvailablePageRoutePredicate(),
|
|
731
|
+
schedule: ThemePartnerModel.AvailablePageSchedulePredicate(),
|
|
684
732
|
screen: ThemePartnerModel.AvailablePageScreenPredicate(),
|
|
685
733
|
user: ThemePartnerModel.AvailablePageUserPredicate(),
|
|
734
|
+
zones: Joi.array().items(Joi.string().allow("")),
|
|
686
735
|
});
|
|
687
736
|
}
|
|
688
737
|
|
|
@@ -695,10 +744,20 @@ class ThemePartnerModel {
|
|
|
695
744
|
});
|
|
696
745
|
}
|
|
697
746
|
|
|
747
|
+
/** @returns {AvailablePageSchedulePredicate} */
|
|
748
|
+
static AvailablePageSchedulePredicate() {
|
|
749
|
+
return Joi.object({
|
|
750
|
+
cron: Joi.string().allow(""),
|
|
751
|
+
end: Joi.string().allow(""),
|
|
752
|
+
start: Joi.string().allow(""),
|
|
753
|
+
});
|
|
754
|
+
}
|
|
755
|
+
|
|
698
756
|
/** @returns {AvailablePageSchema} */
|
|
699
757
|
static AvailablePageSchema() {
|
|
700
758
|
return Joi.object({
|
|
701
759
|
_id: Joi.string().allow(""),
|
|
760
|
+
created_at: Joi.string().allow(""),
|
|
702
761
|
path: Joi.string().allow(""),
|
|
703
762
|
props: Joi.array().items(Joi.any()),
|
|
704
763
|
sections: Joi.array().items(
|
|
@@ -711,6 +770,7 @@ class ThemePartnerModel {
|
|
|
711
770
|
text: Joi.string().allow(""),
|
|
712
771
|
theme: Joi.string().allow(""),
|
|
713
772
|
type: Joi.string().allow(""),
|
|
773
|
+
updated_at: Joi.string().allow(""),
|
|
714
774
|
value: Joi.string().allow(""),
|
|
715
775
|
});
|
|
716
776
|
}
|
|
@@ -724,6 +784,7 @@ class ThemePartnerModel {
|
|
|
724
784
|
predicate: ThemePartnerModel.AvailablePagePredicate(),
|
|
725
785
|
preset: Joi.any(),
|
|
726
786
|
props: Joi.any(),
|
|
787
|
+
source: Joi.string().allow(""),
|
|
727
788
|
});
|
|
728
789
|
}
|
|
729
790
|
|
|
@@ -747,7 +808,10 @@ class ThemePartnerModel {
|
|
|
747
808
|
static AvailablePageSeo() {
|
|
748
809
|
return Joi.object({
|
|
749
810
|
_id: Joi.string().allow(""),
|
|
811
|
+
breadcrumb: Joi.array().items(ThemePartnerModel.SEObreadcrumb()),
|
|
750
812
|
description: Joi.string().allow(""),
|
|
813
|
+
meta_tags: Joi.array().items(ThemePartnerModel.SEOMetaItem()),
|
|
814
|
+
sitemap: ThemePartnerModel.SEOSitemap(),
|
|
751
815
|
title: Joi.string().allow(""),
|
|
752
816
|
});
|
|
753
817
|
}
|
|
@@ -791,15 +855,6 @@ class ThemePartnerModel {
|
|
|
791
855
|
});
|
|
792
856
|
}
|
|
793
857
|
|
|
794
|
-
/** @returns {ButtonSetting} */
|
|
795
|
-
static ButtonSetting() {
|
|
796
|
-
return Joi.object({
|
|
797
|
-
button_link: Joi.string().allow(""),
|
|
798
|
-
button_primary: Joi.string().allow(""),
|
|
799
|
-
button_secondary: Joi.string().allow(""),
|
|
800
|
-
});
|
|
801
|
-
}
|
|
802
|
-
|
|
803
858
|
/** @returns {CarouselItem} */
|
|
804
859
|
static CarouselItem() {
|
|
805
860
|
return Joi.object({
|
|
@@ -824,18 +879,6 @@ class ThemePartnerModel {
|
|
|
824
879
|
});
|
|
825
880
|
}
|
|
826
881
|
|
|
827
|
-
/** @returns {Colors} */
|
|
828
|
-
static Colors() {
|
|
829
|
-
return Joi.object({
|
|
830
|
-
accent_color: Joi.string().allow(""),
|
|
831
|
-
bg_color: Joi.string().allow(""),
|
|
832
|
-
button_secondary_color: Joi.string().allow(""),
|
|
833
|
-
link_color: Joi.string().allow(""),
|
|
834
|
-
primary_color: Joi.string().allow(""),
|
|
835
|
-
secondary_color: Joi.string().allow(""),
|
|
836
|
-
});
|
|
837
|
-
}
|
|
838
|
-
|
|
839
882
|
/** @returns {Comments} */
|
|
840
883
|
static Comments() {
|
|
841
884
|
return Joi.object({
|
|
@@ -891,6 +934,7 @@ class ThemePartnerModel {
|
|
|
891
934
|
/** @returns {CSS} */
|
|
892
935
|
static CSS() {
|
|
893
936
|
return Joi.object({
|
|
937
|
+
link: Joi.string().allow(""),
|
|
894
938
|
links: Joi.array().items(Joi.string().allow("")),
|
|
895
939
|
});
|
|
896
940
|
}
|
|
@@ -938,8 +982,8 @@ class ThemePartnerModel {
|
|
|
938
982
|
});
|
|
939
983
|
}
|
|
940
984
|
|
|
941
|
-
/** @returns {
|
|
942
|
-
static
|
|
985
|
+
/** @returns {DividerStrokeHighlight} */
|
|
986
|
+
static DividerStrokeHighlight() {
|
|
943
987
|
return Joi.object({
|
|
944
988
|
divider_strokes: Joi.string().allow(""),
|
|
945
989
|
highlight: Joi.string().allow(""),
|
|
@@ -1005,38 +1049,6 @@ class ThemePartnerModel {
|
|
|
1005
1049
|
});
|
|
1006
1050
|
}
|
|
1007
1051
|
|
|
1008
|
-
/** @returns {FooterSetting} */
|
|
1009
|
-
static FooterSetting() {
|
|
1010
|
-
return Joi.object({
|
|
1011
|
-
footer_background: Joi.string().allow(""),
|
|
1012
|
-
footer_body_text: Joi.string().allow(""),
|
|
1013
|
-
footer_bottom_background: Joi.string().allow(""),
|
|
1014
|
-
footer_heading_text: Joi.string().allow(""),
|
|
1015
|
-
footer_icon: Joi.string().allow(""),
|
|
1016
|
-
});
|
|
1017
|
-
}
|
|
1018
|
-
|
|
1019
|
-
/** @returns {GeneralSetting} */
|
|
1020
|
-
static GeneralSetting() {
|
|
1021
|
-
return Joi.object({
|
|
1022
|
-
button: ThemePartnerModel.ButtonSetting(),
|
|
1023
|
-
footer: ThemePartnerModel.FooterSetting(),
|
|
1024
|
-
header: ThemePartnerModel.HeaderSetting(),
|
|
1025
|
-
sale_discount: ThemePartnerModel.SaleDiscountSetting(),
|
|
1026
|
-
text: ThemePartnerModel.TextSetting(),
|
|
1027
|
-
theme: ThemePartnerModel.ThemeSetting(),
|
|
1028
|
-
});
|
|
1029
|
-
}
|
|
1030
|
-
|
|
1031
|
-
/** @returns {GlobalConfig} */
|
|
1032
|
-
static GlobalConfig() {
|
|
1033
|
-
return Joi.object({
|
|
1034
|
-
auth: ThemePartnerModel.AuthConfig(),
|
|
1035
|
-
palette: ThemePartnerModel.PaletteConfig(),
|
|
1036
|
-
statics: ThemePartnerModel.StaticConfig(),
|
|
1037
|
-
});
|
|
1038
|
-
}
|
|
1039
|
-
|
|
1040
1052
|
/** @returns {GlobalSchema} */
|
|
1041
1053
|
static GlobalSchema() {
|
|
1042
1054
|
return Joi.object({
|
|
@@ -1044,15 +1056,6 @@ class ThemePartnerModel {
|
|
|
1044
1056
|
});
|
|
1045
1057
|
}
|
|
1046
1058
|
|
|
1047
|
-
/** @returns {HeaderSetting} */
|
|
1048
|
-
static HeaderSetting() {
|
|
1049
|
-
return Joi.object({
|
|
1050
|
-
header_background: Joi.string().allow(""),
|
|
1051
|
-
header_icon: Joi.string().allow(""),
|
|
1052
|
-
header_nav: Joi.string().allow(""),
|
|
1053
|
-
});
|
|
1054
|
-
}
|
|
1055
|
-
|
|
1056
1059
|
/** @returns {Highlight} */
|
|
1057
1060
|
static Highlight() {
|
|
1058
1061
|
return Joi.object({
|
|
@@ -1128,8 +1131,16 @@ class ThemePartnerModel {
|
|
|
1128
1131
|
});
|
|
1129
1132
|
}
|
|
1130
1133
|
|
|
1131
|
-
/** @returns {
|
|
1132
|
-
static
|
|
1134
|
+
/** @returns {OrderTracking} */
|
|
1135
|
+
static OrderTracking() {
|
|
1136
|
+
return Joi.object({
|
|
1137
|
+
show_footer: Joi.boolean(),
|
|
1138
|
+
show_header: Joi.boolean(),
|
|
1139
|
+
});
|
|
1140
|
+
}
|
|
1141
|
+
|
|
1142
|
+
/** @returns {OverlayPopup} */
|
|
1143
|
+
static OverlayPopup() {
|
|
1133
1144
|
return Joi.object({
|
|
1134
1145
|
dialog_backgroung: Joi.string().allow(""),
|
|
1135
1146
|
overlay: Joi.string().allow(""),
|
|
@@ -1160,14 +1171,6 @@ class ThemePartnerModel {
|
|
|
1160
1171
|
});
|
|
1161
1172
|
}
|
|
1162
1173
|
|
|
1163
|
-
/** @returns {PaletteConfig} */
|
|
1164
|
-
static PaletteConfig() {
|
|
1165
|
-
return Joi.object({
|
|
1166
|
-
advance_setting: ThemePartnerModel.AdvanceSetting(),
|
|
1167
|
-
general_setting: ThemePartnerModel.GeneralSetting(),
|
|
1168
|
-
});
|
|
1169
|
-
}
|
|
1170
|
-
|
|
1171
1174
|
/** @returns {PaymentInfo} */
|
|
1172
1175
|
static PaymentInfo() {
|
|
1173
1176
|
return Joi.object({
|
|
@@ -1200,6 +1203,7 @@ class ThemePartnerModel {
|
|
|
1200
1203
|
info: Joi.string().allow(""),
|
|
1201
1204
|
label: Joi.string().allow(""),
|
|
1202
1205
|
type: Joi.string().allow(""),
|
|
1206
|
+
value: Joi.string().allow(""),
|
|
1203
1207
|
});
|
|
1204
1208
|
}
|
|
1205
1209
|
|
|
@@ -1227,16 +1231,6 @@ class ThemePartnerModel {
|
|
|
1227
1231
|
});
|
|
1228
1232
|
}
|
|
1229
1233
|
|
|
1230
|
-
/** @returns {SaleDiscountSetting} */
|
|
1231
|
-
static SaleDiscountSetting() {
|
|
1232
|
-
return Joi.object({
|
|
1233
|
-
sale_badge_background: Joi.string().allow(""),
|
|
1234
|
-
sale_badge_text: Joi.string().allow(""),
|
|
1235
|
-
sale_discount_text: Joi.string().allow(""),
|
|
1236
|
-
sale_timer: Joi.string().allow(""),
|
|
1237
|
-
});
|
|
1238
|
-
}
|
|
1239
|
-
|
|
1240
1234
|
/** @returns {Screen} */
|
|
1241
1235
|
static Screen() {
|
|
1242
1236
|
return Joi.object({
|
|
@@ -1284,18 +1278,35 @@ class ThemePartnerModel {
|
|
|
1284
1278
|
});
|
|
1285
1279
|
}
|
|
1286
1280
|
|
|
1287
|
-
/** @returns {
|
|
1288
|
-
static
|
|
1281
|
+
/** @returns {SEObreadcrumb} */
|
|
1282
|
+
static SEObreadcrumb() {
|
|
1289
1283
|
return Joi.object({
|
|
1290
|
-
|
|
1284
|
+
action: ThemePartnerModel.Action(),
|
|
1285
|
+
url: Joi.string().allow(""),
|
|
1291
1286
|
});
|
|
1292
1287
|
}
|
|
1293
1288
|
|
|
1294
|
-
/** @returns {
|
|
1295
|
-
static
|
|
1289
|
+
/** @returns {SEOMetaItem} */
|
|
1290
|
+
static SEOMetaItem() {
|
|
1296
1291
|
return Joi.object({
|
|
1297
|
-
|
|
1298
|
-
|
|
1292
|
+
items: Joi.array().items(ThemePartnerModel.SEOMetaItems()),
|
|
1293
|
+
title: Joi.string().allow(""),
|
|
1294
|
+
});
|
|
1295
|
+
}
|
|
1296
|
+
|
|
1297
|
+
/** @returns {SEOMetaItems} */
|
|
1298
|
+
static SEOMetaItems() {
|
|
1299
|
+
return Joi.object({
|
|
1300
|
+
key: Joi.string().allow(""),
|
|
1301
|
+
value: Joi.string().allow(""),
|
|
1302
|
+
});
|
|
1303
|
+
}
|
|
1304
|
+
|
|
1305
|
+
/** @returns {SEOSitemap} */
|
|
1306
|
+
static SEOSitemap() {
|
|
1307
|
+
return Joi.object({
|
|
1308
|
+
frequency: Joi.string().allow(""),
|
|
1309
|
+
priority: Joi.number(),
|
|
1299
1310
|
});
|
|
1300
1311
|
}
|
|
1301
1312
|
|
|
@@ -1307,23 +1318,27 @@ class ThemePartnerModel {
|
|
|
1307
1318
|
});
|
|
1308
1319
|
}
|
|
1309
1320
|
|
|
1310
|
-
/** @returns {
|
|
1311
|
-
static
|
|
1321
|
+
/** @returns {ThemeConfigListPage} */
|
|
1322
|
+
static ThemeConfigListPage() {
|
|
1323
|
+
return Joi.object({
|
|
1324
|
+
page: Joi.string().allow(""),
|
|
1325
|
+
settings: ThemePartnerModel.ThemeConfigListPageSettingsProps(),
|
|
1326
|
+
});
|
|
1327
|
+
}
|
|
1328
|
+
|
|
1329
|
+
/** @returns {ThemeConfigListPageSettingsProps} */
|
|
1330
|
+
static ThemeConfigListPageSettingsProps() {
|
|
1312
1331
|
return Joi.object({
|
|
1313
|
-
|
|
1314
|
-
text_heading: Joi.string().allow(""),
|
|
1315
|
-
text_label: Joi.string().allow(""),
|
|
1316
|
-
text_secondary: Joi.string().allow(""),
|
|
1332
|
+
props: Joi.any(),
|
|
1317
1333
|
});
|
|
1318
1334
|
}
|
|
1319
1335
|
|
|
1320
1336
|
/** @returns {ThemeConfiguration} */
|
|
1321
1337
|
static ThemeConfiguration() {
|
|
1322
1338
|
return Joi.object({
|
|
1323
|
-
|
|
1324
|
-
global_config: ThemePartnerModel.GlobalConfig(),
|
|
1339
|
+
global_config: Joi.any(),
|
|
1325
1340
|
name: Joi.string().allow(""),
|
|
1326
|
-
page: Joi.array().items(
|
|
1341
|
+
page: Joi.array().items(ThemePartnerModel.ThemeConfigListPage()),
|
|
1327
1342
|
});
|
|
1328
1343
|
}
|
|
1329
1344
|
|
|
@@ -1364,14 +1379,6 @@ class ThemePartnerModel {
|
|
|
1364
1379
|
});
|
|
1365
1380
|
}
|
|
1366
1381
|
|
|
1367
|
-
/** @returns {ThemeSetting} */
|
|
1368
|
-
static ThemeSetting() {
|
|
1369
|
-
return Joi.object({
|
|
1370
|
-
page_background: Joi.string().allow(""),
|
|
1371
|
-
theme_accent: Joi.string().allow(""),
|
|
1372
|
-
});
|
|
1373
|
-
}
|
|
1374
|
-
|
|
1375
1382
|
/** @returns {ThemesSchema} */
|
|
1376
1383
|
static ThemesSchema() {
|
|
1377
1384
|
return Joi.object({
|
|
@@ -1388,6 +1395,7 @@ class ThemePartnerModel {
|
|
|
1388
1395
|
marketplace_theme_id: Joi.string().allow(""),
|
|
1389
1396
|
meta: ThemePartnerModel.ThemeMeta(),
|
|
1390
1397
|
name: Joi.string().allow(""),
|
|
1398
|
+
src: Joi.string().allow(""),
|
|
1391
1399
|
styles: Joi.any(),
|
|
1392
1400
|
tags: Joi.array().items(Joi.string().allow("")),
|
|
1393
1401
|
template_theme_id: Joi.string().allow(""),
|
|
@@ -1408,6 +1416,7 @@ class ThemePartnerModel {
|
|
|
1408
1416
|
/** @returns {UMDJs} */
|
|
1409
1417
|
static UMDJs() {
|
|
1410
1418
|
return Joi.object({
|
|
1419
|
+
link: Joi.string().allow(""),
|
|
1411
1420
|
links: Joi.array().items(Joi.string().allow("")),
|
|
1412
1421
|
});
|
|
1413
1422
|
}
|
|
@@ -1428,8 +1437,8 @@ class ThemePartnerModel {
|
|
|
1428
1437
|
});
|
|
1429
1438
|
}
|
|
1430
1439
|
|
|
1431
|
-
/** @returns {
|
|
1432
|
-
static
|
|
1440
|
+
/** @returns {UserAlerts} */
|
|
1441
|
+
static UserAlerts() {
|
|
1433
1442
|
return Joi.object({
|
|
1434
1443
|
error_background: Joi.string().allow(""),
|
|
1435
1444
|
error_text: Joi.string().allow(""),
|
|
@@ -1449,5 +1458,106 @@ class ThemePartnerModel {
|
|
|
1449
1458
|
name: Joi.string().allow(""),
|
|
1450
1459
|
});
|
|
1451
1460
|
}
|
|
1461
|
+
|
|
1462
|
+
/**
|
|
1463
|
+
* Enum: PageType Used By: Theme
|
|
1464
|
+
*
|
|
1465
|
+
* @returns {PageType}
|
|
1466
|
+
*/
|
|
1467
|
+
static PageType() {
|
|
1468
|
+
return Joi.string().valid(
|
|
1469
|
+
"about-us",
|
|
1470
|
+
|
|
1471
|
+
"addresses",
|
|
1472
|
+
|
|
1473
|
+
"blog",
|
|
1474
|
+
|
|
1475
|
+
"brands",
|
|
1476
|
+
|
|
1477
|
+
"cards",
|
|
1478
|
+
|
|
1479
|
+
"cart",
|
|
1480
|
+
|
|
1481
|
+
"categories",
|
|
1482
|
+
|
|
1483
|
+
"brand",
|
|
1484
|
+
|
|
1485
|
+
"category",
|
|
1486
|
+
|
|
1487
|
+
"collection",
|
|
1488
|
+
|
|
1489
|
+
"collections",
|
|
1490
|
+
|
|
1491
|
+
"contact-us",
|
|
1492
|
+
|
|
1493
|
+
"external",
|
|
1494
|
+
|
|
1495
|
+
"faq",
|
|
1496
|
+
|
|
1497
|
+
"freshchat",
|
|
1498
|
+
|
|
1499
|
+
"home",
|
|
1500
|
+
|
|
1501
|
+
"notification-settings",
|
|
1502
|
+
|
|
1503
|
+
"orders",
|
|
1504
|
+
|
|
1505
|
+
"page",
|
|
1506
|
+
|
|
1507
|
+
"policy",
|
|
1508
|
+
|
|
1509
|
+
"product",
|
|
1510
|
+
|
|
1511
|
+
"product-request",
|
|
1512
|
+
|
|
1513
|
+
"products",
|
|
1514
|
+
|
|
1515
|
+
"profile",
|
|
1516
|
+
|
|
1517
|
+
"profile-order-shipment",
|
|
1518
|
+
|
|
1519
|
+
"profile-basic",
|
|
1520
|
+
|
|
1521
|
+
"profile-company",
|
|
1522
|
+
|
|
1523
|
+
"profile-emails",
|
|
1524
|
+
|
|
1525
|
+
"profile-phones",
|
|
1526
|
+
|
|
1527
|
+
"rate-us",
|
|
1528
|
+
|
|
1529
|
+
"refer-earn",
|
|
1530
|
+
|
|
1531
|
+
"settings",
|
|
1532
|
+
|
|
1533
|
+
"shared-cart",
|
|
1534
|
+
|
|
1535
|
+
"tnc",
|
|
1536
|
+
|
|
1537
|
+
"track-order",
|
|
1538
|
+
|
|
1539
|
+
"wishlist",
|
|
1540
|
+
|
|
1541
|
+
"sections",
|
|
1542
|
+
|
|
1543
|
+
"form",
|
|
1544
|
+
|
|
1545
|
+
"cart-delivery",
|
|
1546
|
+
|
|
1547
|
+
"cart-payment",
|
|
1548
|
+
|
|
1549
|
+
"cart-review",
|
|
1550
|
+
|
|
1551
|
+
"login",
|
|
1552
|
+
|
|
1553
|
+
"register",
|
|
1554
|
+
|
|
1555
|
+
"shipping-policy",
|
|
1556
|
+
|
|
1557
|
+
"return-policy",
|
|
1558
|
+
|
|
1559
|
+
"order-status"
|
|
1560
|
+
);
|
|
1561
|
+
}
|
|
1452
1562
|
}
|
|
1453
1563
|
module.exports = ThemePartnerModel;
|