@thryveai/theme-interfaces 2.7.13 → 2.7.15-3.beta
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/dist/index.d.ts +10 -4
- package/dist/index.js +7 -1
- package/dist/interfaces/admin-settings-interfaces.d.ts +16 -6
- package/dist/interfaces/default-settings.interfaces.d.ts +3 -79
- package/dist/interfaces/default-settings.interfaces.js +0 -1
- package/dist/interfaces/default-theme.interface.d.ts +34 -0
- package/dist/interfaces/icons.interfaces.d.ts +4 -3
- package/dist/interfaces/retailer-settings.interfaces.d.ts +169 -14
- package/dist/interfaces/shared-settings-interfaces.d.ts +5 -0
- package/dist/interfaces/shared-settings-interfaces.js +2 -0
- package/dist/interfaces/shared-settings.interfaces.d.ts +51 -0
- package/dist/interfaces/shared-settings.interfaces.js +2 -0
- package/dist/interfaces/theme.interfaces.d.ts +23 -0
- package/dist/mobile/interfaces/mobile-retailer-settings.interfaces.d.ts +1 -0
- package/dist/mobile/reactnative/MobileDefaultSettings.d.ts +5 -1
- package/dist/mobile/reactnative/MobileDefaultSettings.js +15 -1
- package/dist/mobile/reactnative/MobileSettingsTemplate.AdminUi.js +84 -5
- package/dist/storefront/SFUISettingsTemplate.AdminUi.js +220 -15
- package/dist/storefront/SFUISharedSettingsTemplate.AdminUi.d.ts +4 -0
- package/dist/storefront/SFUISharedSettingsTemplate.AdminUi.js +168 -0
- package/dist/storefront/contentEngineComponents.d.ts +13 -11
- package/dist/storefront/contentEngineComponents.js +13 -11
- package/dist/storefront/defaultIconsStorefront.js +171 -146
- package/dist/storefront/defaultImagesStorefront.js +4 -0
- package/dist/storefront/defaultSettingsStorefront.js +113 -15
- package/dist/storefront/defaultSharedSettings.d.ts +3 -0
- package/dist/storefront/defaultSharedSettings.js +39 -0
- package/dist/storefront/defaultThemeStorefront.js +45 -0
- package/dist/storefront/productBadgeAttributes.d.ts +1 -1
- package/dist/storefront/productBadgeAttributes.js +4 -0
- package/dist/sts/STSImagesTemplate.AdminUi.js +22 -0
- package/package.json +9 -3
- package/README.md +0 -29
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
import { CMSNames } from "../storefront/contentEngineComponents";
|
|
2
2
|
import { ProductAttributes } from "../storefront/productBadgeAttributes";
|
|
3
3
|
import { IconNames, PaymentCards } from "./icons.interfaces";
|
|
4
|
+
import { NumberRange } from "./theme.interfaces";
|
|
4
5
|
export interface IRetailerSettings {
|
|
5
6
|
accountPage?: IAccountPageSettings;
|
|
6
7
|
additionalCharges?: boolean;
|
|
8
|
+
subscriptions?: boolean;
|
|
9
|
+
creditBalance?: boolean;
|
|
7
10
|
addresses?: {
|
|
8
11
|
addressValidationTypes?: IAddressValidationTypes;
|
|
9
12
|
canadianAddressCompleteKey?: string | undefined;
|
|
@@ -35,10 +38,10 @@ export interface IRetailerSettings {
|
|
|
35
38
|
documentTitle?: string;
|
|
36
39
|
eircode?: string | null;
|
|
37
40
|
enable3dSecure?: boolean;
|
|
38
|
-
|
|
39
|
-
enableNewFacetView?: boolean;
|
|
41
|
+
googleTranslateWidget?: IGoogleTranslateWidget;
|
|
40
42
|
enableNewsletterSignup?: boolean;
|
|
41
43
|
enableNotifications?: boolean;
|
|
44
|
+
enableRecipeSearch?: boolean;
|
|
42
45
|
entryModalVersion?: IEntryModalVersion;
|
|
43
46
|
hideAlcoholRule?: IShoppingRuleControl;
|
|
44
47
|
errorLoggingLevel?: ILoggingLevel;
|
|
@@ -82,6 +85,7 @@ export interface IRetailerSettings {
|
|
|
82
85
|
secondTierAuthorization?: ISecondTierAuthorization;
|
|
83
86
|
showCheckoutPromoCode?: boolean;
|
|
84
87
|
showImgOnOrder?: boolean;
|
|
88
|
+
showRewardPromoChangeTimeslotMsg?: boolean;
|
|
85
89
|
siteSettings?: ISiteSettings;
|
|
86
90
|
smartBanner?: ISmartBanner;
|
|
87
91
|
smsNotifications?: ISMSConfig;
|
|
@@ -108,6 +112,7 @@ export interface ISiteSettings {
|
|
|
108
112
|
export interface IVouchers {
|
|
109
113
|
enabled: boolean;
|
|
110
114
|
reCaptcha: boolean;
|
|
115
|
+
manualVouchers: boolean;
|
|
111
116
|
}
|
|
112
117
|
export interface IPromotionCalculator {
|
|
113
118
|
bundlePromotionCalculator: boolean;
|
|
@@ -119,7 +124,12 @@ export interface IGiftCards {
|
|
|
119
124
|
pinInputValidation: string;
|
|
120
125
|
reCaptcha: boolean;
|
|
121
126
|
}
|
|
122
|
-
export declare type IEntryModalVersion = "entry" | "geolocation";
|
|
127
|
+
export declare type IEntryModalVersion = "entry" | "geolocation" | "skipStoreSelection";
|
|
128
|
+
export interface IProdX {
|
|
129
|
+
enabled: boolean;
|
|
130
|
+
catalogId: string;
|
|
131
|
+
test: boolean;
|
|
132
|
+
}
|
|
123
133
|
export interface ISmartBanner {
|
|
124
134
|
enabled: boolean;
|
|
125
135
|
title: string;
|
|
@@ -166,15 +176,25 @@ export interface IFlippConfig {
|
|
|
166
176
|
useRequestedDomain: boolean;
|
|
167
177
|
}
|
|
168
178
|
export interface IFlippConfigV2 {
|
|
169
|
-
version: 2;
|
|
170
|
-
retailer: string;
|
|
171
|
-
merchantId: string;
|
|
172
179
|
accessToken: string;
|
|
173
|
-
zoom: number;
|
|
174
|
-
locale: string;
|
|
175
180
|
hideHeader: boolean;
|
|
181
|
+
locale: string;
|
|
182
|
+
merchantId: string;
|
|
183
|
+
retailer: string;
|
|
184
|
+
slideOutView: boolean;
|
|
185
|
+
version: 2;
|
|
186
|
+
zoom: number;
|
|
187
|
+
excludeFlyer?: string;
|
|
176
188
|
}
|
|
177
189
|
export declare type IFlippScriptUrls = "circulars.priceritemarketplace" | "circulars.dearbornmarket" | "flyers.v8.commerce.mi9cloud" | "flyers.stg.v8.mywebgrocer" | "flyers.saveonfoods";
|
|
190
|
+
export interface IRedPepperConfig {
|
|
191
|
+
locale: string;
|
|
192
|
+
zoom: number;
|
|
193
|
+
clientId?: string;
|
|
194
|
+
clientUrl?: string;
|
|
195
|
+
storeValue?: string;
|
|
196
|
+
flyerSkuKey?: string;
|
|
197
|
+
}
|
|
178
198
|
export declare type IAllSettings = {
|
|
179
199
|
[envName in IEnvNames]: IRetailerSettings;
|
|
180
200
|
};
|
|
@@ -192,10 +212,15 @@ export interface ITimeslotModalSettings {
|
|
|
192
212
|
timeslotRequiredToAddToCart: boolean;
|
|
193
213
|
timeslotRequiredToViewCartReview: boolean;
|
|
194
214
|
timeslotRequiredToViewCheckout: boolean;
|
|
215
|
+
enableSelectToContinueText: boolean;
|
|
195
216
|
}
|
|
196
217
|
export declare type IAdvertsData = {
|
|
197
218
|
[screen in IScreenType]?: string;
|
|
198
219
|
};
|
|
220
|
+
export declare type IEmailCartOrShoppingList = {
|
|
221
|
+
enabled: boolean;
|
|
222
|
+
messageField: boolean;
|
|
223
|
+
};
|
|
199
224
|
export declare type IAdvertSettings = {
|
|
200
225
|
page_homepage?: IAdvertLeaderboards;
|
|
201
226
|
page_search?: IAdvertLeaderboards & IAdvertProductGrid & IAdvertSkyScrapers;
|
|
@@ -218,11 +243,34 @@ export interface IAdvertProductGrid {
|
|
|
218
243
|
export interface IAdvertSkyScrapers {
|
|
219
244
|
skyscrapers?: IAdvertsData;
|
|
220
245
|
}
|
|
246
|
+
export interface IBarcodeOptions {
|
|
247
|
+
width?: number;
|
|
248
|
+
height?: number;
|
|
249
|
+
format?: "CODE39" | "CODE128" | "EAN13" | "ITF14" | "MSI" | "pharmacode" | "codabar" | "upc";
|
|
250
|
+
displayValue?: boolean;
|
|
251
|
+
fontOptions?: string;
|
|
252
|
+
font?: string;
|
|
253
|
+
textAlign?: string;
|
|
254
|
+
textPosition?: string;
|
|
255
|
+
textMargin?: number;
|
|
256
|
+
fontSize?: number;
|
|
257
|
+
background?: string;
|
|
258
|
+
lineColor?: string;
|
|
259
|
+
margin?: number;
|
|
260
|
+
marginTop?: number;
|
|
261
|
+
marginBottom?: number;
|
|
262
|
+
marginLeft?: number;
|
|
263
|
+
marginRight?: number;
|
|
264
|
+
}
|
|
265
|
+
export interface IBarcodeSettings {
|
|
266
|
+
enabled: boolean;
|
|
267
|
+
}
|
|
221
268
|
export interface IGoogleAutocompleteSettings {
|
|
222
269
|
types?: IGoogleAutocompleteTypes;
|
|
223
270
|
bounds?: IGoogleAutocompleteBounds;
|
|
224
271
|
strictBounds?: boolean;
|
|
225
272
|
restrictCountries?: string[];
|
|
273
|
+
minCharLength?: number;
|
|
226
274
|
}
|
|
227
275
|
export interface IGoogleAutocompleteBounds {
|
|
228
276
|
east_longitude: number;
|
|
@@ -236,8 +284,8 @@ export interface ICtaButtons {
|
|
|
236
284
|
iconName: IconNames;
|
|
237
285
|
}
|
|
238
286
|
export interface IProductAttributesLayout {
|
|
239
|
-
legacyAttributes: boolean;
|
|
240
287
|
attributesRank: ProductAttributes[];
|
|
288
|
+
excludedAttributes: ProductAttributes[];
|
|
241
289
|
}
|
|
242
290
|
export interface IPdpNutritionLink {
|
|
243
291
|
href: string | null;
|
|
@@ -281,6 +329,7 @@ export interface IAddressesSettingsV2 {
|
|
|
281
329
|
addressProfileName: string | null;
|
|
282
330
|
};
|
|
283
331
|
useAddressValidation: boolean;
|
|
332
|
+
fixOldAddresses: boolean;
|
|
284
333
|
}
|
|
285
334
|
export interface ICartSummaryV2 {
|
|
286
335
|
showTaxTotal: boolean;
|
|
@@ -295,9 +344,12 @@ export interface ICheckoutSettingsV2 {
|
|
|
295
344
|
checkoutValidation: ICheckoutValidation;
|
|
296
345
|
forceDeliverySection: boolean;
|
|
297
346
|
enableInterimModal: boolean;
|
|
347
|
+
smsOptIn: boolean;
|
|
298
348
|
}
|
|
299
349
|
export interface IFeaturesV2 {
|
|
300
350
|
additionalCharges: boolean;
|
|
351
|
+
creditBalance: boolean;
|
|
352
|
+
subscriptions: boolean;
|
|
301
353
|
clientCache: boolean;
|
|
302
354
|
vouchers: IVouchers;
|
|
303
355
|
promotionDetailsPage: IPromotionCalculator;
|
|
@@ -310,10 +362,11 @@ export interface IFeaturesV2 {
|
|
|
310
362
|
allowPastPurchases: boolean;
|
|
311
363
|
advertSettings: IAdvertSettings;
|
|
312
364
|
ebtPayments: boolean;
|
|
313
|
-
|
|
314
|
-
|
|
365
|
+
emailCartOrShoppingList: IEmailCartOrShoppingList;
|
|
366
|
+
googleTranslateWidget: IGoogleTranslateWidget;
|
|
315
367
|
enableNewsletterSignup: boolean;
|
|
316
368
|
enableNotifications: boolean;
|
|
369
|
+
enableRecipeSearch: boolean;
|
|
317
370
|
externalStoreSelectorUrl: {
|
|
318
371
|
enabled: boolean;
|
|
319
372
|
url: string;
|
|
@@ -325,16 +378,25 @@ export interface IFeaturesV2 {
|
|
|
325
378
|
enabled: boolean;
|
|
326
379
|
url: string;
|
|
327
380
|
};
|
|
381
|
+
recipeLegacyShareLink: boolean;
|
|
328
382
|
registrationFields: IRegistrationField[];
|
|
329
383
|
secondTierAuthorization?: ISecondTierAuthorization;
|
|
330
384
|
showCheckoutPromoCode: boolean;
|
|
331
385
|
showImgOnOrder: boolean;
|
|
386
|
+
showRewardPromoChangeTimeslotMsg: boolean;
|
|
332
387
|
smsNotifications: ISMSConfig;
|
|
333
388
|
specialRequestItems: boolean;
|
|
334
389
|
couponGallery: ICouponGalleryLayout;
|
|
335
390
|
gsaSupportedBrowser: boolean;
|
|
391
|
+
acquiaAuthService: boolean;
|
|
392
|
+
}
|
|
393
|
+
export interface IGoogleTranslateWidget {
|
|
394
|
+
enabled: boolean;
|
|
395
|
+
position: "header" | "footer";
|
|
396
|
+
inlineLayout: "horizontal" | "vertical";
|
|
336
397
|
}
|
|
337
398
|
export interface IPdpSettingsV2 {
|
|
399
|
+
externalContent: IExternalContentProps;
|
|
338
400
|
nutritionZone: INutritionZone;
|
|
339
401
|
nutritionLink: IPdpNutritionLink;
|
|
340
402
|
pdpDetailsLayout: IProductDetailsPageLayout;
|
|
@@ -347,17 +409,27 @@ export interface IProductCardSettingsV2 {
|
|
|
347
409
|
productCardTitleHeight: number;
|
|
348
410
|
productCards: IProductCardsProps;
|
|
349
411
|
}
|
|
412
|
+
export interface ICookiePro {
|
|
413
|
+
enabled: boolean;
|
|
414
|
+
src: string;
|
|
415
|
+
domain: string;
|
|
416
|
+
}
|
|
350
417
|
export interface ISiteSettingsV2 {
|
|
351
418
|
clientSideOrderModify: boolean;
|
|
419
|
+
cookiePro: ICookiePro;
|
|
352
420
|
anonymousCart: boolean;
|
|
353
421
|
ctaButtons: ICtaButtons | null | undefined;
|
|
354
|
-
|
|
422
|
+
cmsLazyLoadRows: number;
|
|
423
|
+
daysToRemainSignedIn: NumberRange<1, 999>;
|
|
355
424
|
defaultCountry: IDefaultCounty;
|
|
425
|
+
defaultLanguage: string;
|
|
356
426
|
defaultSearchParams: IDefaultSearchParams;
|
|
357
427
|
defaultShoppingMode: "pickup" | "planning" | "delivery";
|
|
358
428
|
defaultStoreLocation: IDefaultStoreLocation;
|
|
359
429
|
defaultTabView: "listView" | "mapView";
|
|
430
|
+
showChangeCustomerEmail: boolean;
|
|
360
431
|
disableTprPrice: boolean;
|
|
432
|
+
mobileViewCardLayout: IMobileViewCardLayout;
|
|
361
433
|
footerVersion: IFooterTypes;
|
|
362
434
|
googleAutocompleteSettings: IGoogleAutocompleteSettings;
|
|
363
435
|
gtmId: string;
|
|
@@ -376,6 +448,19 @@ export interface ISiteSettingsV2 {
|
|
|
376
448
|
subHeaderHeight: number;
|
|
377
449
|
timeslotModalSettings: ITimeslotModalSettings;
|
|
378
450
|
useContentEngineV2Components: IUseContentEngineV2Components;
|
|
451
|
+
isLegacyProductURL: boolean;
|
|
452
|
+
headerLinks: IHeaderLinksLayout;
|
|
453
|
+
useAdsV1: boolean;
|
|
454
|
+
advertProductView: boolean;
|
|
455
|
+
showCartValueOnMobile: boolean;
|
|
456
|
+
scrollToTopButton: IScrollToTopButton;
|
|
457
|
+
clientRenderCoupons: boolean;
|
|
458
|
+
showShopAllLink: IShowShopAllLink;
|
|
459
|
+
showEmptyMiniList: boolean;
|
|
460
|
+
}
|
|
461
|
+
export interface IHeaderLinksLayout {
|
|
462
|
+
enabled: boolean;
|
|
463
|
+
dimension: number;
|
|
379
464
|
}
|
|
380
465
|
export interface IWelcomeModalV2 {
|
|
381
466
|
label: string;
|
|
@@ -383,6 +468,12 @@ export interface IWelcomeModalV2 {
|
|
|
383
468
|
target: LinkTarget;
|
|
384
469
|
icon: string;
|
|
385
470
|
}
|
|
471
|
+
export interface IIntegrationSettings {
|
|
472
|
+
prodX: IProdX;
|
|
473
|
+
}
|
|
474
|
+
export interface IPerformanceSettingsV2 {
|
|
475
|
+
vouchersLongTimeout: boolean;
|
|
476
|
+
}
|
|
386
477
|
export declare type IUseContentEngineV2Components = {
|
|
387
478
|
[key in CMSNames]: boolean;
|
|
388
479
|
};
|
|
@@ -410,6 +501,7 @@ export interface IAddressValidationTypes {
|
|
|
410
501
|
phoneNumber: IValidationType[];
|
|
411
502
|
postCode: IValidationType[];
|
|
412
503
|
smsNumber: IValidationType[];
|
|
504
|
+
deliveryModalZipCodeValidation: IValidationType[];
|
|
413
505
|
}
|
|
414
506
|
export interface IDefaultSearchParams {
|
|
415
507
|
q: string;
|
|
@@ -434,8 +526,13 @@ export interface IRestrictMapPlaces {
|
|
|
434
526
|
totalTake: number;
|
|
435
527
|
};
|
|
436
528
|
}
|
|
437
|
-
export declare type IValidationType = IValidateDateRange | IValidateLength | IValidateMultipleLengths | "alphaNumeric" | "alphaOnly" | "anyPhone" | "auPhone" | "auPostCode" | "auState" | "caPhone" | "caPostCode" | "caProvince" | "correctDate" | "email" | "ieCounty" | "iePhone" | "iePostCode" | "luhnValidation" | "noSpecialChar" | "numericOnly" | "password" | "required" | "usMobileNumber" | "usPhone" | "usPhone10Digits" | "usPostCode" | "usState" | "notWhiteSpacesOnly" | "NAPhone";
|
|
529
|
+
export declare type IValidationType = IValidateDateRange | IValidateLength | IValidateMultipleLengths | "alphaNumeric" | "alphaOnly" | "alphaOnlyNoDots" | "anyPhone" | "auPhone" | "auPostCode" | "auState" | "caPhone" | "caPostCode" | "caProvince" | "correctDate" | "email" | "ieCounty" | "iePhone" | "iePostCode" | "luhnValidation" | "noSpecialChar" | "numericOnly" | "password" | "required" | "usMobileNumber" | "usPhone" | "usPhone10Digits" | "usPostCode" | "usState" | "notWhiteSpacesOnly" | "NAPhone";
|
|
438
530
|
export declare type IEnvNames = "dev" | "de2" | "qat" | "qa2" | "int" | "in2" | "lod" | "lo2" | "stg" | "st2" | "stagingConfig" | "productionConfig";
|
|
531
|
+
export declare type IFlyerProviders = "flipp" | "redPepper";
|
|
532
|
+
export interface IExternalContentProps {
|
|
533
|
+
enabled: boolean;
|
|
534
|
+
contentProviders: IDefaultExternal[];
|
|
535
|
+
}
|
|
439
536
|
export declare type INutritionZone = "us" | "eu" | "au" | "ca";
|
|
440
537
|
export declare type IFooterTypes = "default" | "version2" | "version3" | "version4" | "version5" | "version6";
|
|
441
538
|
export declare type IValidateLength = {
|
|
@@ -458,6 +555,8 @@ export interface IRegistrationField {
|
|
|
458
555
|
placeholder: string;
|
|
459
556
|
designVersion: IRegistrationFieldTypes;
|
|
460
557
|
validationTypes: IValidationType[];
|
|
558
|
+
alwaysVisible?: boolean;
|
|
559
|
+
editable?: boolean;
|
|
461
560
|
}
|
|
462
561
|
export interface ICheckoutValidation {
|
|
463
562
|
instructions: IValidationType[];
|
|
@@ -467,6 +566,7 @@ export interface ICheckoutValidation {
|
|
|
467
566
|
export interface ISearchPreview {
|
|
468
567
|
suggestions: boolean;
|
|
469
568
|
products: boolean;
|
|
569
|
+
recipes: boolean;
|
|
470
570
|
}
|
|
471
571
|
export interface ISearchPreviewVisibility {
|
|
472
572
|
desktop?: ISearchPreview;
|
|
@@ -481,6 +581,7 @@ export interface IAdminOnlyV2 {
|
|
|
481
581
|
}
|
|
482
582
|
export interface IAccountPageV2 {
|
|
483
583
|
loyaltyTab: {
|
|
584
|
+
barcodeSettings: IBarcodeSettings;
|
|
484
585
|
disabledEdit?: boolean;
|
|
485
586
|
enabled: boolean;
|
|
486
587
|
loyaltyNumberLength: number;
|
|
@@ -495,7 +596,29 @@ export interface IAccountPageV2 {
|
|
|
495
596
|
profileTab: {
|
|
496
597
|
deleteAccountButton: boolean;
|
|
497
598
|
};
|
|
599
|
+
secondStepRegistration: {
|
|
600
|
+
businessAccount: IBusinessAccountObject;
|
|
601
|
+
};
|
|
602
|
+
}
|
|
603
|
+
export interface IBusinessAccountObject {
|
|
604
|
+
enabled: boolean;
|
|
605
|
+
fields: {
|
|
606
|
+
title: {
|
|
607
|
+
enabled: boolean;
|
|
608
|
+
validationTypes: IValidationType[];
|
|
609
|
+
};
|
|
610
|
+
company: {
|
|
611
|
+
enabled: boolean;
|
|
612
|
+
validationTypes: IValidationType[];
|
|
613
|
+
};
|
|
614
|
+
typeOfBusiness: {
|
|
615
|
+
enabled: boolean;
|
|
616
|
+
options: ITypesOfBusiness[];
|
|
617
|
+
validationTypes: IValidationType[];
|
|
618
|
+
};
|
|
619
|
+
};
|
|
498
620
|
}
|
|
621
|
+
export declare type ITypesOfBusiness = "foodService" | "education" | "youthSports" | "administrationOffice" | "nonProfit";
|
|
499
622
|
export interface IGlobalAnimations {
|
|
500
623
|
confetti: ILayoutAnimationsConfetti;
|
|
501
624
|
}
|
|
@@ -532,16 +655,31 @@ export interface IProductCardsProps {
|
|
|
532
655
|
export interface IProductCardV2ComponentProps {
|
|
533
656
|
promotionLabel: IProductCardV2PromotionLabelsSettings;
|
|
534
657
|
recommendedLabel: IProductCardV2RecommendedLabelSettings;
|
|
658
|
+
productAttributes: IProductCardV2ProductAttributes;
|
|
659
|
+
}
|
|
660
|
+
export interface IProductCardV2ProductAttributes {
|
|
661
|
+
iconOpacity: number;
|
|
535
662
|
}
|
|
536
663
|
export interface IProductCardV2RecommendedLabelSettings {
|
|
537
664
|
enabled: boolean;
|
|
538
665
|
}
|
|
539
666
|
export interface IProductCardV2PromotionLabelsSettings {
|
|
540
667
|
showLines: number;
|
|
541
|
-
|
|
668
|
+
labelSource: "name" | "description";
|
|
669
|
+
labelsLimit: number;
|
|
670
|
+
labelsPriority: ILabelConfig[];
|
|
671
|
+
}
|
|
672
|
+
export declare type ILabelConfig = {
|
|
673
|
+
_type: "pointPromo" | "promo";
|
|
674
|
+
limit: number;
|
|
675
|
+
} | {
|
|
676
|
+
_type: "tprPromo";
|
|
677
|
+
};
|
|
542
678
|
export declare type IProductCardLayouts = {
|
|
543
679
|
ContainersGrid: "default" | "pce-centered" | "prs-labels";
|
|
544
680
|
ContainersCarousel: "default" | "pce-centered" | "prs-labels";
|
|
681
|
+
FlyerCard: "default" | "detailed";
|
|
682
|
+
SimplifiedCarousel: "default";
|
|
545
683
|
};
|
|
546
684
|
export declare type IProductCardLayoutObjects<T> = {
|
|
547
685
|
[Place in keyof IProductCardLayouts]: {
|
|
@@ -571,3 +709,20 @@ export interface IMaintainCustomerPreferences {
|
|
|
571
709
|
optInMarketingPreferences: boolean;
|
|
572
710
|
selectOptInMarketingPreferencesStore: boolean;
|
|
573
711
|
}
|
|
712
|
+
export interface IDefaultExternal {
|
|
713
|
+
provider: "brandbank" | "syndigo";
|
|
714
|
+
}
|
|
715
|
+
export interface IMobileViewCardLayout {
|
|
716
|
+
enabled: boolean;
|
|
717
|
+
defaultView: "List" | "Grid";
|
|
718
|
+
}
|
|
719
|
+
export interface IScrollToTopButton {
|
|
720
|
+
enabled: boolean;
|
|
721
|
+
percentOffset: {
|
|
722
|
+
right: number;
|
|
723
|
+
bottom: number;
|
|
724
|
+
};
|
|
725
|
+
}
|
|
726
|
+
export interface IShowShopAllLink {
|
|
727
|
+
enabled: boolean;
|
|
728
|
+
}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { IPartialKeys, ITemplateObject } from "./admin-settings-interfaces";
|
|
2
|
+
import { ISharedSettings } from "./shared-settings.interfaces";
|
|
3
|
+
declare type IAdminSharedSettings = IPartialKeys<ISharedSettings>;
|
|
4
|
+
export declare type IAdminSharedSettingsTemplate = ITemplateObject<IAdminSharedSettings>;
|
|
5
|
+
export {};
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { IAdminOnlyV2, IFlippConfig, IFlippConfigV2, IFlyerProviders, IRedPepperConfig } from "./retailer-settings.interfaces";
|
|
2
|
+
import { IDateFormat } from "./theme.interfaces";
|
|
3
|
+
export interface ISharedSettings {
|
|
4
|
+
features: ISharedFeatures;
|
|
5
|
+
checkout: ISharedCheckout;
|
|
6
|
+
general: ISharedGeneral;
|
|
7
|
+
adminPanelOnly: IAdminOnlyV2;
|
|
8
|
+
}
|
|
9
|
+
export interface ISharedFeatures {
|
|
10
|
+
recommendedSubstitutions: IRecommendedSubstitutions;
|
|
11
|
+
multilingual: boolean;
|
|
12
|
+
specialRequestItems: ISpecialRequestItems;
|
|
13
|
+
couponGallery: ICouponGallery;
|
|
14
|
+
flyerConfiguration: IFlyerConfiguration | null;
|
|
15
|
+
}
|
|
16
|
+
export interface ISharedCheckout {
|
|
17
|
+
preserveOrderNote: IOrderInstructions;
|
|
18
|
+
}
|
|
19
|
+
interface IOrderInstructions {
|
|
20
|
+
enabled: boolean;
|
|
21
|
+
}
|
|
22
|
+
export interface IRecommendedSubstitutions {
|
|
23
|
+
enable: boolean;
|
|
24
|
+
search: {
|
|
25
|
+
enable: boolean;
|
|
26
|
+
};
|
|
27
|
+
stores: string[];
|
|
28
|
+
locationId: string;
|
|
29
|
+
}
|
|
30
|
+
export interface ISpecialRequestItems {
|
|
31
|
+
enable: boolean;
|
|
32
|
+
excludeStores: string[];
|
|
33
|
+
}
|
|
34
|
+
export interface ICouponGallery {
|
|
35
|
+
enabled: boolean;
|
|
36
|
+
showClipAllCouponsButton: boolean;
|
|
37
|
+
}
|
|
38
|
+
export interface ISharedGeneral {
|
|
39
|
+
enableStoreSelectorList: boolean;
|
|
40
|
+
skipStoreSelection: boolean;
|
|
41
|
+
addressConfirmationModal: boolean;
|
|
42
|
+
dateOfBirthInputFormat: IDateFormat;
|
|
43
|
+
wasComparisonPrice: boolean;
|
|
44
|
+
}
|
|
45
|
+
export interface IFlyerConfiguration {
|
|
46
|
+
enabled: boolean;
|
|
47
|
+
flyerProvider: IFlyerProviders;
|
|
48
|
+
flipp: IFlippConfig | IFlippConfigV2 | null;
|
|
49
|
+
redPepper: IRedPepperConfig | null;
|
|
50
|
+
}
|
|
51
|
+
export {};
|
|
@@ -38,6 +38,7 @@ export interface IThemeImages {
|
|
|
38
38
|
loyaltyCard?: string;
|
|
39
39
|
sts?: string;
|
|
40
40
|
stsMobile?: string;
|
|
41
|
+
stsAlt?: string;
|
|
41
42
|
};
|
|
42
43
|
stsCheckBox?: {
|
|
43
44
|
empty?: string;
|
|
@@ -54,6 +55,10 @@ export interface IThemeImages {
|
|
|
54
55
|
};
|
|
55
56
|
verifySiteImage?: string;
|
|
56
57
|
favicons?: IThemeFavicons;
|
|
58
|
+
banner?: {
|
|
59
|
+
src?: string;
|
|
60
|
+
alt?: string;
|
|
61
|
+
};
|
|
57
62
|
}
|
|
58
63
|
export interface IThemeInterface {
|
|
59
64
|
colors?: {
|
|
@@ -162,6 +167,10 @@ export interface IThemeInterface {
|
|
|
162
167
|
color?: string;
|
|
163
168
|
bgColor?: string;
|
|
164
169
|
};
|
|
170
|
+
cartCurrency?: {
|
|
171
|
+
color?: string;
|
|
172
|
+
bgColor?: string;
|
|
173
|
+
};
|
|
165
174
|
};
|
|
166
175
|
notifications?: {
|
|
167
176
|
counter: {
|
|
@@ -464,6 +473,17 @@ export interface IThemeInterface {
|
|
|
464
473
|
default?: string;
|
|
465
474
|
disabled?: string;
|
|
466
475
|
};
|
|
476
|
+
cms?: {
|
|
477
|
+
heading: {
|
|
478
|
+
color: string;
|
|
479
|
+
};
|
|
480
|
+
subheading: {
|
|
481
|
+
color: string;
|
|
482
|
+
};
|
|
483
|
+
bodyText: {
|
|
484
|
+
color: string;
|
|
485
|
+
};
|
|
486
|
+
};
|
|
467
487
|
logoHeight?: IThemeLogoHeights;
|
|
468
488
|
stsThemeStyles?: ISTSThemeInterface;
|
|
469
489
|
stsLogoWidth?: string;
|
|
@@ -692,4 +712,7 @@ export interface IEmbeddedFontSource {
|
|
|
692
712
|
url?: string;
|
|
693
713
|
format?: string;
|
|
694
714
|
}
|
|
715
|
+
declare type Enumerate<N extends number, Acc extends number[] = []> = Acc["length"] extends N ? Acc[number] : Enumerate<N, [...Acc, Acc["length"]]>;
|
|
716
|
+
export declare type NumberRange<F extends number, T extends number> = Exclude<Enumerate<T>, Enumerate<F>>;
|
|
717
|
+
export declare type IDateFormat = "DD/MM/YYYY" | "MM/DD/YYYY";
|
|
695
718
|
export {};
|
|
@@ -15,6 +15,7 @@ export interface IMobileSettings {
|
|
|
15
15
|
enableDeleteAccount: boolean;
|
|
16
16
|
enableEarlyTimeSlotSelection: boolean;
|
|
17
17
|
enableFirstIntentModal: boolean;
|
|
18
|
+
enableEmailShoppingItemsMessageField: boolean;
|
|
18
19
|
enableGetDeliveryMoreStores: boolean;
|
|
19
20
|
enableGiftCards: boolean;
|
|
20
21
|
enableInStoreOrders: boolean;
|
|
@@ -1,2 +1,6 @@
|
|
|
1
1
|
import { IMobileSettings } from "../interfaces/mobile-retailer-settings.interfaces";
|
|
2
|
-
|
|
2
|
+
declare type RecursivePartial<T> = {
|
|
3
|
+
[P in keyof T]?: T[P] extends (infer U)[] ? RecursivePartial<U>[] : T[P] extends object ? RecursivePartial<T[P]> : T[P];
|
|
4
|
+
};
|
|
5
|
+
export declare const MobileDefaultSettings: RecursivePartial<IMobileSettings>;
|
|
6
|
+
export {};
|
|
@@ -3,6 +3,20 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.MobileDefaultSettings = void 0;
|
|
4
4
|
exports.MobileDefaultSettings = {
|
|
5
5
|
features: {
|
|
6
|
-
|
|
6
|
+
enableCircularsForCorporateStore: false,
|
|
7
|
+
enableCouponRecommendedTag: true,
|
|
8
|
+
enableDeleteAccount: true,
|
|
9
|
+
enableEarlyTimeSlotSelection: false,
|
|
10
|
+
enableFirstIntentModal: false,
|
|
11
|
+
enableGetDeliveryMoreStores: false,
|
|
12
|
+
enableGiftCards: false,
|
|
13
|
+
enableInStoreOrders: false,
|
|
14
|
+
enableInterim: false,
|
|
15
|
+
enableMissedPromotions: false,
|
|
16
|
+
enableOnboarding: true,
|
|
17
|
+
enableProductInfiniteScroll: false,
|
|
18
|
+
enablePromoCode: true,
|
|
19
|
+
enableSearchPreviewTopCategories: false,
|
|
20
|
+
enableEmailShoppingItemsMessageField: false,
|
|
7
21
|
},
|
|
8
22
|
};
|
|
@@ -3,12 +3,91 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.AdminSettingsTemplateMobile = void 0;
|
|
4
4
|
exports.AdminSettingsTemplateMobile = {
|
|
5
5
|
features: {
|
|
6
|
-
title: "",
|
|
7
|
-
description: "",
|
|
6
|
+
title: "App Features",
|
|
7
|
+
description: "Configurable features of the app",
|
|
8
8
|
value: {
|
|
9
|
-
|
|
10
|
-
description: "",
|
|
11
|
-
title: "
|
|
9
|
+
enableCircularsForCorporateStore: {
|
|
10
|
+
description: "Should show circulars for a corporate store?",
|
|
11
|
+
title: "Enable Circulars For Circular Store",
|
|
12
|
+
helpLink: "",
|
|
13
|
+
type: "checkbox",
|
|
14
|
+
},
|
|
15
|
+
enableCouponRecommendedTag: {
|
|
16
|
+
description: "Should show coupon recommended tag?",
|
|
17
|
+
title: "Enable Coupon Recommended Tag",
|
|
18
|
+
helpLink: "",
|
|
19
|
+
type: "checkbox",
|
|
20
|
+
},
|
|
21
|
+
enableDeleteAccount: {
|
|
22
|
+
description: "Should show delete account button?",
|
|
23
|
+
title: "Enable Delete Account",
|
|
24
|
+
helpLink: "",
|
|
25
|
+
type: "checkbox",
|
|
26
|
+
},
|
|
27
|
+
enableEarlyTimeSlotSelection: {
|
|
28
|
+
description: "Should allow early time slot selection?",
|
|
29
|
+
title: "Enable Early Time Slot Selection",
|
|
30
|
+
helpLink: "",
|
|
31
|
+
type: "checkbox",
|
|
32
|
+
},
|
|
33
|
+
enableFirstIntentModal: {
|
|
34
|
+
description: "Should show the first intent model (after welcome screens)?",
|
|
35
|
+
title: "Enable First Intent Modal",
|
|
36
|
+
helpLink: "",
|
|
37
|
+
type: "checkbox",
|
|
38
|
+
},
|
|
39
|
+
enableGetDeliveryMoreStores: {
|
|
40
|
+
description: "Should show a list of stores for delivery?",
|
|
41
|
+
title: "Enable Get Delivery More Stores",
|
|
42
|
+
helpLink: "",
|
|
43
|
+
type: "checkbox",
|
|
44
|
+
},
|
|
45
|
+
enableGiftCards: {
|
|
46
|
+
description: "Should show the option to add gift cards?",
|
|
47
|
+
title: "Enable Gift Cards",
|
|
48
|
+
helpLink: "",
|
|
49
|
+
type: "checkbox",
|
|
50
|
+
},
|
|
51
|
+
enableInStoreOrders: {
|
|
52
|
+
description: "Should show in-store orders?",
|
|
53
|
+
title: "Enable In Store Orders",
|
|
54
|
+
helpLink: "",
|
|
55
|
+
type: "checkbox",
|
|
56
|
+
},
|
|
57
|
+
enableInterim: {
|
|
58
|
+
description: "Should show the interim (forgotten anything) modal before checkout?",
|
|
59
|
+
title: "Enable Interim Modal",
|
|
60
|
+
helpLink: "",
|
|
61
|
+
type: "checkbox",
|
|
62
|
+
},
|
|
63
|
+
enableMissedPromotions: {
|
|
64
|
+
description: "Should show missed promotions (cms component)?",
|
|
65
|
+
title: "Enable Missed Promotions",
|
|
66
|
+
helpLink: "",
|
|
67
|
+
type: "checkbox",
|
|
68
|
+
},
|
|
69
|
+
enableOnboarding: {
|
|
70
|
+
description: "Should show the onboarding (welcome) screen?",
|
|
71
|
+
title: "Enable Onboarding",
|
|
72
|
+
helpLink: "",
|
|
73
|
+
type: "checkbox",
|
|
74
|
+
},
|
|
75
|
+
enableProductInfiniteScroll: {
|
|
76
|
+
description: "Should infinitely scroll all products (no load more button)?",
|
|
77
|
+
title: "Enable Product Infinite Scroll",
|
|
78
|
+
helpLink: "",
|
|
79
|
+
type: "checkbox",
|
|
80
|
+
},
|
|
81
|
+
enablePromoCode: {
|
|
82
|
+
description: "Should show the option to use a promo code?",
|
|
83
|
+
title: "Enable Promo Code",
|
|
84
|
+
helpLink: "",
|
|
85
|
+
type: "checkbox",
|
|
86
|
+
},
|
|
87
|
+
enableSearchPreviewTopCategories: {
|
|
88
|
+
description: "Should search product by top categories?",
|
|
89
|
+
title: "Enable Search Preview Top Categories",
|
|
90
|
+
helpLink: "",
|
|
12
91
|
type: "checkbox",
|
|
13
92
|
},
|
|
14
93
|
},
|