@thryveai/theme-interfaces 1.4.4 → 1.4.8-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.
@@ -0,0 +1,49 @@
1
+ import { IDefaultCounty, IValidationType } from "./retailer-settings.interfaces";
2
+ export interface IAdminSettingsTemplate {
3
+ accountPage: {
4
+ loyaltyTab: {
5
+ disabledEdit: IAdminControl;
6
+ enabled: IAdminControl;
7
+ loyaltyNumberLength: IAdminControl;
8
+ loyaltyNumberPrefix: IAdminControl;
9
+ loyaltyValidationType: IAdminControl;
10
+ };
11
+ optional: boolean;
12
+ };
13
+ addressValidationTypes: IAdminControl;
14
+ allowInStorePurchases: IAdminControl;
15
+ allowPastPurchases: IAdminControl;
16
+ checkoutV1: IAdminControl;
17
+ defaultCountry: IAdminControl;
18
+ disableTprPrice: IAdminControl;
19
+ documentTitle: IAdminControl;
20
+ enable3dSecure: IAdminControl;
21
+ enableGoogleTranslate: IAdminControl;
22
+ enableNewsletterSignup: IAdminControl;
23
+ enableNotifications?: IAdminControl;
24
+ favoritesV1: IAdminControl;
25
+ flipp: IAdminControl;
26
+ hideTaxOnSummary: IAdminControl;
27
+ houseAccountRegExValidation: IAdminControl;
28
+ isPlanningOnly: IAdminControl;
29
+ limitProductCardTitleHeight: IAdminControl;
30
+ mainHeaderHeight: IAdminControl;
31
+ mapZoom: IAdminControl;
32
+ minimumCreditCardAmount: IAdminControl;
33
+ retailerName: IAdminControl;
34
+ showCheckoutPromoCode: IAdminControl;
35
+ showImgOnOrder: IAdminControl;
36
+ subHeaderHeight: IAdminControl;
37
+ useAddressValidation: IAdminControl;
38
+ }
39
+ export interface IAdminControl {
40
+ title: string;
41
+ description: string;
42
+ helpLink?: string;
43
+ type: IAdminControlType;
44
+ options?: string[] | number[] | IDefaultCounty[] | IValidationType[];
45
+ value?: {
46
+ [key: string]: IAdminControl;
47
+ };
48
+ }
49
+ export declare type IAdminControlType = "checkbox" | "dropdown" | "inputChar" | "inputNumber" | "multiDropdown" | "nullObject" | "object";
@@ -0,0 +1,3 @@
1
+ import { IAdminSettingsTemplate } from "./admin-settings-interfaces";
2
+ export declare const AdminSettingsTemplate: IAdminSettingsTemplate;
3
+ export default AdminSettingsTemplate;
@@ -90,17 +90,32 @@ export interface IDefaultThemeInterface {
90
90
  borderRadius: string;
91
91
  clearBtnColor: string;
92
92
  searchButton: {
93
- static: {
94
- color: string;
95
- backgroundColor: string;
93
+ desktop: {
94
+ static: {
95
+ color: string;
96
+ backgroundColor: string;
97
+ };
98
+ hover: {
99
+ color: string;
100
+ backgroundColor: string;
101
+ };
102
+ clicked: {
103
+ color: string;
104
+ backgroundColor: string;
105
+ };
96
106
  };
97
- hover: {
98
- color: string;
99
- backgroundColor: string;
107
+ tablet: {
108
+ static: {
109
+ color: string;
110
+ };
111
+ clicked: {
112
+ color: string;
113
+ };
100
114
  };
101
- clicked: {
102
- color: string;
103
- backgroundColor: string;
115
+ mobile: {
116
+ static: {
117
+ color: string;
118
+ };
104
119
  };
105
120
  };
106
121
  suggestions: {
@@ -0,0 +1,3 @@
1
+ import { IDefaultRetailerSettings } from "./retailer-settings.interfaces";
2
+ declare const defaultConfig: IDefaultRetailerSettings;
3
+ export default defaultConfig;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@thryveai/theme-interfaces",
3
- "version": "1.4.4",
3
+ "version": "1.4.8-beta",
4
4
  "description": "Shared Interfaces for all ThryveAi storefront retailer themes.",
5
5
  "scripts": {
6
6
  "build": "tsc",
@@ -2,6 +2,7 @@ import { IconNames, PaymentCards } from "./icons.interfaces";
2
2
  export interface IRetailerSettings {
3
3
  accountPage?: IAccountPageSettings;
4
4
  advertSettings?: IAdvertSettings;
5
+ TimeslotModalSettings?: ITimeslotModalSettings;
5
6
  addresses?: {
6
7
  addressValidationTypes?: IAddressValidationTypes;
7
8
  canadianAddressCompleteKey?: string | undefined;
@@ -24,6 +25,7 @@ export interface IRetailerSettings {
24
25
  checkoutV1?: boolean;
25
26
  checkoutValidation?: ICheckoutValidation;
26
27
  ctaButtons?: ICtaButtons;
28
+ daysToRemainSignedIn?: number;
27
29
  defaultCountry?: IDefaultCounty;
28
30
  defaultSearchParams?: IDefaultSearchParams;
29
31
  defaultShoppingMode?: "pickup" | "planning" | "delivery";
@@ -56,10 +58,12 @@ export interface IRetailerSettings {
56
58
  minimumCreditCardAmount?: number;
57
59
  nutritionZone?: INutritionZone;
58
60
  paymentCards?: IPaymentCards;
61
+ pdpDetailsLayout?: IPdpDetailsLayout;
59
62
  productCardTitleHeight?: number;
60
63
  promoTemplateVersion?: number;
61
64
  registrationFields?: IRegistrationField[];
62
65
  restrictMapPlacesResults?: IRestrictMapPlaces;
66
+ googleAutocompleteSettings?: IGoogleAutocompleteSettings;
63
67
  retailerCountry?: IRetailerCountry;
64
68
  retailerName: string;
65
69
  searchPreview?: ISearchPreviewVisibility;
@@ -70,6 +74,7 @@ export interface IRetailerSettings {
70
74
  subHeaderHeight?: number;
71
75
  useAddressValidation?: boolean;
72
76
  externalApps?: IExternalApps;
77
+ productCardv2?: boolean;
73
78
  }
74
79
  export interface IExternalApps {
75
80
  sts?: IExternalAppSTS;
@@ -108,6 +113,11 @@ export interface IPageAdvertsRow {
108
113
  [row: number]: IAdvertsData;
109
114
  }
110
115
  export declare type IScreenType = "mobile" | "tablet" | "desktop";
116
+ export interface ITimeslotModalSettings {
117
+ showOnAddToCart: boolean;
118
+ timeslotRequiredToAddToCart: boolean;
119
+ timeslotRequiredToViewCartReview: boolean;
120
+ }
111
121
  export declare type IAdvertsData = {
112
122
  [screen in IScreenType]?: string;
113
123
  };
@@ -139,6 +149,7 @@ export interface IDefaultRetailerSettings {
139
149
  addressValidationTypes: IAddressValidationTypes;
140
150
  addresses: IAddressesSettings;
141
151
  advertSettings: IAdvertSettings;
152
+ timeslotModalSettings: ITimeslotModalSettings;
142
153
  allowInStorePurchases: boolean;
143
154
  allowPastPurchases: boolean;
144
155
  buildNumber: string;
@@ -148,6 +159,7 @@ export interface IDefaultRetailerSettings {
148
159
  checkoutV1: boolean;
149
160
  checkoutValidation: ICheckoutValidation;
150
161
  ctaButtons: ICtaButtons | null | undefined;
162
+ daysToRemainSignedIn: number;
151
163
  defaultCountry: IDefaultCounty;
152
164
  defaultSearchParams: IDefaultSearchParams;
153
165
  defaultShoppingMode: "pickup" | "planning" | "delivery";
@@ -180,10 +192,12 @@ export interface IDefaultRetailerSettings {
180
192
  minimumCreditCardAmount: number;
181
193
  nutritionZone: INutritionZone;
182
194
  paymentCards: IPaymentCards;
195
+ pdpDetailsLayout: IPdpDetailsLayout;
183
196
  productCardTitleHeight: number;
184
197
  promoTemplateVersion: number;
185
198
  registrationFields: IRegistrationField[];
186
199
  restrictMapPlacesResults: IRestrictMapPlaces;
200
+ googleAutocompleteSettings: IGoogleAutocompleteSettings;
187
201
  retailerCountry: IRetailerCountry;
188
202
  retailerName: string;
189
203
  searchPreview: ISearchPreviewVisibility;
@@ -193,7 +207,21 @@ export interface IDefaultRetailerSettings {
193
207
  smsNotifications: ISMSConfig;
194
208
  subHeaderHeight: number;
195
209
  useAddressValidation: boolean;
210
+ productCardv2: boolean;
211
+ }
212
+ export interface IGoogleAutocompleteSettings {
213
+ types?: IGoogleAutocompleteTypes;
214
+ bounds?: IGoogleAutocompleteBounds;
215
+ strictBounds?: boolean;
216
+ restrictCountries?: string[];
196
217
  }
218
+ interface IGoogleAutocompleteBounds {
219
+ south_latitude: number;
220
+ west_longitude: number;
221
+ north_latitude: number;
222
+ east_longitude: number;
223
+ }
224
+ declare type IGoogleAutocompleteTypes = "geocode" | "address" | "establishment" | "(regions)" | "(cities)";
197
225
  export interface ICtaButtons {
198
226
  iconAlignment: "left" | "right" | null;
199
227
  iconName: IconNames;
@@ -309,4 +337,9 @@ export interface IAddressIntegration {
309
337
  addressFinderType: IAddressFinderType;
310
338
  }
311
339
  export declare type IAddressFinderType = "AUS" | "EU" | "IE" | "US" | "UK" | "CA";
340
+ export interface IPdpDetailsLayout {
341
+ desktop: string[];
342
+ mobileTab1: string[];
343
+ mobileTab2: string[];
344
+ }
312
345
  export {};
@@ -90,17 +90,32 @@ export interface IThemeInterface {
90
90
  borderRadius?: string;
91
91
  clearBtnColor?: string;
92
92
  searchButton?: {
93
- static?: {
94
- color?: string;
95
- backgroundColor?: string;
93
+ desktop?: {
94
+ static?: {
95
+ color?: string;
96
+ backgroundColor?: string;
97
+ };
98
+ hover?: {
99
+ color?: string;
100
+ backgroundColor?: string;
101
+ };
102
+ clicked?: {
103
+ color?: string;
104
+ backgroundColor?: string;
105
+ };
96
106
  };
97
- hover?: {
98
- color?: string;
99
- backgroundColor?: string;
107
+ tablet?: {
108
+ static?: {
109
+ color?: string;
110
+ };
111
+ clicked?: {
112
+ color?: string;
113
+ };
100
114
  };
101
- clicked?: {
102
- color?: string;
103
- backgroundColor?: string;
115
+ mobile?: {
116
+ static?: {
117
+ color?: string;
118
+ };
104
119
  };
105
120
  };
106
121
  suggestions?: {