@thryveai/theme-interfaces 1.5.24-beta1 → 1.5.24-beta2

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.
@@ -140,20 +140,7 @@ export interface IDefaultThemeInterface {
140
140
  };
141
141
  headerActionLinks: IHeaderActionLinksProps;
142
142
  headerLinks: IHeaderLinksProps;
143
- departments: {
144
- backgroundColor: {
145
- active: string;
146
- static: string;
147
- };
148
- color: {
149
- static: string;
150
- hover: string;
151
- };
152
- iconColor: {
153
- static: string;
154
- hover: string;
155
- };
156
- };
143
+ departments: IHeaderDepartments;
157
144
  badge: {
158
145
  cart: {
159
146
  color: string;
@@ -583,6 +570,21 @@ interface IHeaderLinksProps extends INavStyles, INavActiveColors {
583
570
  interface IHeaderActionLinksProps extends IHeaderLinksProps {
584
571
  fontFamily: string;
585
572
  }
573
+ interface IHeaderDepartments {
574
+ wrapCategoryTitle: boolean;
575
+ backgroundColor: {
576
+ active: string;
577
+ static: string;
578
+ };
579
+ color: {
580
+ static: string;
581
+ hover: string;
582
+ };
583
+ iconColor: {
584
+ static: string;
585
+ hover: string;
586
+ };
587
+ }
586
588
  interface IMinimalHeaderProps extends INavStyles {
587
589
  iconColor: string;
588
590
  }
@@ -0,0 +1,3 @@
1
+ import { IDefaultRetailerSettings } from "./retailer-settings.interfaces";
2
+ declare const defaultConfig: IDefaultRetailerSettings;
3
+ export default defaultConfig;
@@ -0,0 +1,215 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var defaultConfig = {
4
+ adminPanelOnly: {
5
+ bannerName: "Wynshop New Retailer",
6
+ logoUrl: "https://wynshop.com/wp-content/uploads/2021/08/xWynshop_Font_logo_150x39.png.pagespeed.ic.3j0jIxPBvP.webp 1x",
7
+ },
8
+ advertSettings: {},
9
+ timeslotModalSettings: {
10
+ showOnAddToCart: false,
11
+ timeslotRequiredToAddToCart: false,
12
+ timeslotRequiredToViewCartReview: false,
13
+ },
14
+ accountPage: {
15
+ loyaltyTab: {
16
+ disabledEdit: false,
17
+ enabled: false,
18
+ loyaltyNumberLength: 11,
19
+ loyaltyNumberPrefix: "",
20
+ loyaltyValidationType: [],
21
+ },
22
+ },
23
+ additionalCharges: false,
24
+ addresses: {
25
+ addressValidationTypes: {
26
+ addressLine1: ["alphaNumeric", "required"],
27
+ addressLine2: ["alphaNumeric"],
28
+ city: ["alphaNumeric", "required"],
29
+ countyProvinceState: ["usState", "required"],
30
+ familyName: ["alphaOnly", "required"],
31
+ firstName: ["alphaOnly", "required"],
32
+ instructions: ["alphaNumeric"],
33
+ phoneNumber: ["usPhone", "required"],
34
+ postCode: ["usPostCode", "required"],
35
+ },
36
+ canadianAddressCompleteKey: undefined,
37
+ eircodeUrl: undefined,
38
+ integration: {
39
+ addNewAddressUrl: undefined,
40
+ deleteAddressUrl: undefined,
41
+ editAddressUrl: undefined,
42
+ },
43
+ useAddressValidation: true,
44
+ },
45
+ addressValidationTypes: {
46
+ addressLine1: ["alphaNumeric", "required"],
47
+ addressLine2: ["alphaNumeric"],
48
+ city: ["alphaNumeric", "required"],
49
+ countyProvinceState: ["usState", "required"],
50
+ familyName: ["alphaOnly", "required"],
51
+ firstName: ["alphaOnly", "required"],
52
+ instructions: ["alphaNumeric"],
53
+ phoneNumber: ["usPhone", "required"],
54
+ postCode: ["usPostCode", "required"],
55
+ },
56
+ addressIntegration: {
57
+ enabled: false,
58
+ addressFinderType: "AUS",
59
+ getAddressesUrl: "https://api.addressfinder.io/api/au/address/autocomplete/?key={AUS_ADDRESS_SERVICE_KEY}&secret={AUS_ADDRESS_SERVICE_SECRET}&q={searchQuery}&format=json&gnaf=1",
60
+ getLocationUrl: "https://api.addressfinder.io/api/au/address/metadata/?key={AUS_ADDRESS_SERVICE_KEY}&secret={AUS_ADDRESS_SERVICE_SECRET}&format=json&id={id}&au_paf=0&gps=0",
61
+ },
62
+ allowInStorePurchases: false,
63
+ allowPastPurchases: true,
64
+ buildNumber: "default",
65
+ cacheTimeMins: 1,
66
+ canadianAddressCompleteKey: undefined,
67
+ checkoutV1: false,
68
+ favoritesV1: false,
69
+ checkout: {
70
+ numericPhonePayload: false,
71
+ },
72
+ checkoutValidation: {
73
+ instructions: ["alphaNumeric"],
74
+ phoneNumber: ["usPhone", "required"],
75
+ smsNumber: [],
76
+ },
77
+ ctaButtons: null,
78
+ defaultCountry: "USA",
79
+ defaultSearchParams: {
80
+ page: "1",
81
+ q: "*",
82
+ skip: "0",
83
+ take: "30",
84
+ },
85
+ defaultShoppingMode: "pickup",
86
+ defaultStoreLocation: {
87
+ latitude: 0,
88
+ longitude: 0,
89
+ },
90
+ disableAddressOnDelivery: false,
91
+ disableTprPrice: false,
92
+ documentTitle: "ThryveAI Commerce",
93
+ eircode: undefined,
94
+ enable3dSecure: false,
95
+ enableGoogleTranslate: false,
96
+ enableNewsletterSignup: false,
97
+ enableNotifications: false,
98
+ enableVouchers: false,
99
+ errorLoggingLevel: "error",
100
+ externalStoreSelectorUrl: undefined,
101
+ features: { clientCache: false },
102
+ flipp: null,
103
+ gtmId: undefined,
104
+ hideTaxOnSummary: false,
105
+ houseAccountRegExValidation: ".",
106
+ idpTarget: "_self",
107
+ idpUrl: undefined,
108
+ instacartUrl: undefined,
109
+ isPlanningOnly: false,
110
+ layout: {
111
+ footerVersion: "default",
112
+ },
113
+ limitProductCardTitleHeight: true,
114
+ loggingLevelClient: "error",
115
+ loggingLevelServer: "error",
116
+ mainHeaderHeight: 110,
117
+ mapZoom: 8,
118
+ minimumCreditCardAmount: 1.0,
119
+ nutritionZone: "us",
120
+ paymentCards: {
121
+ AmExpCard: true,
122
+ DiscoverCard: true,
123
+ MasterCard: true,
124
+ VisaCard: true,
125
+ },
126
+ pdpDetailsLayout: {
127
+ desktop: { left: [], right: [] },
128
+ mobile: { left: [], right: [] },
129
+ },
130
+ productCardTitleHeight: 40,
131
+ registrationFields: [],
132
+ retailerCountry: "us",
133
+ retailerName: "default",
134
+ daysToRemainSignedIn: 30,
135
+ searchPreview: {
136
+ desktop: {
137
+ products: true,
138
+ suggestions: true,
139
+ },
140
+ mobile: {
141
+ products: true,
142
+ suggestions: true,
143
+ },
144
+ },
145
+ secondTierAuthorization: undefined,
146
+ showCheckoutPromoCode: true,
147
+ showImgOnOrder: false,
148
+ smsNotifications: {
149
+ enabled: false,
150
+ getEnrollmentUrl: "",
151
+ postEnrollmentUrl: "",
152
+ },
153
+ subHeaderHeight: 0,
154
+ promoTemplateVersion: 1,
155
+ useAddressValidation: true,
156
+ restrictMapPlacesResults: {
157
+ fetchNearStoresSettings: {
158
+ kmRange: 20,
159
+ totalTake: 30,
160
+ },
161
+ },
162
+ globalAnimations: {
163
+ confetti: {
164
+ enableConfettiAnimation: true,
165
+ },
166
+ },
167
+ googleAutocompleteSettings: {},
168
+ productCardv2: false,
169
+ productCards: {
170
+ gridRowLength: {
171
+ desktop: 5,
172
+ tablet: 3,
173
+ mobile: 1,
174
+ },
175
+ carouselsRowLength: {
176
+ desktop: 6,
177
+ tablet: 4,
178
+ mobile: 1,
179
+ },
180
+ productCard: {
181
+ enabled: false,
182
+ layouts: {
183
+ ContainersGrid: "default",
184
+ ContainersCarousel: "default",
185
+ },
186
+ },
187
+ },
188
+ sodiumWarning: {
189
+ isEnabled: false,
190
+ threshold: 2300,
191
+ },
192
+ specialRequestItems: false,
193
+ smartbanner: {
194
+ enabled: false,
195
+ author: "",
196
+ button: "",
197
+ buttonUrlApple: "",
198
+ buttonUrlGoogle: "",
199
+ closeLabel: "",
200
+ iconApple: "",
201
+ iconGoogle: "",
202
+ price: "",
203
+ priceSuffixApple: "",
204
+ priceSuffixGoogle: "",
205
+ title: "",
206
+ },
207
+ layouts: {
208
+ cartSummary: {
209
+ showTaxTotal: true,
210
+ showTaxGroups: true,
211
+ },
212
+ couponGallery: { enabled: false, galleryIsIframe: false },
213
+ },
214
+ };
215
+ exports.default = defaultConfig;
package/index.d.ts CHANGED
@@ -3,7 +3,9 @@ import { IIconsObject, PaymentTypesLogos, PaymentCards, IconNames, IconNamesToFi
3
3
  import { ITheme, IThemeScripts, IThemeImages, IThemeMetadata, IThemeFavicons, IThemeLogoPosition, IThemeLogoHeightsProps, IThemeLogoHeights, ISTSThemeInterface, IThemeFavicon, IThemeMetadataItem, IThemeInterface, IGlobalTheme, IColors, IInitializedEmptyTheme, IThemeAnimationConfettiPlaces, IThemeGlobalAnimations, IThemeAnimationsConfettiPlacesTypes, IThemeAnimationsConfettiProps, IEmbeddedFont, IEmbeddedFontSource } from "./theme.interfaces";
4
4
  import { IDefaultTheme, IDefaultThemeScripts, IDefaultThemeImages, IDefaultThemeMetadata, IDefaultThemeFavicons, IDefaultThemeLogoPosition, IDefaultThemeLogoHeightsProps, IDefaultThemeLogoHeights, ISTSDefaultThemeInterface, IDefaultThemeFavicon, IDefaultThemeMetadataItem, IDefaultThemeInterface, IGlobalDefaultTheme, IDefaultColors, IInitializedEmptyDefaultTheme, IDefaultThemeAnimationConfettiPlaces, IDefaultThemeGlobalAnimations, IDefaultThemeAnimationsConfettiPlacesTypes, IDefaultThemeAnimationsConfettiProps, IDefaultEmbeddedFont, IDefaultEmbeddedFontSource } from "./default-theme.interface";
5
5
  import AdminSettingsTemplate from "./admin-settings-template";
6
+ import defaultConfig from "./default.config";
6
7
  export { IDefaultTheme, IDefaultThemeScripts, IDefaultThemeImages, IDefaultThemeMetadata, IDefaultThemeFavicons, IDefaultThemeLogoPosition, IDefaultThemeLogoHeightsProps, IDefaultThemeLogoHeights, ISTSDefaultThemeInterface, IDefaultThemeFavicon, IDefaultThemeMetadataItem, IDefaultThemeInterface, IGlobalDefaultTheme, IDefaultColors, IInitializedEmptyDefaultTheme, IDefaultThemeAnimationConfettiPlaces, IDefaultThemeGlobalAnimations, IDefaultThemeAnimationsConfettiPlacesTypes, IDefaultThemeAnimationsConfettiProps, IDefaultEmbeddedFont, IDefaultEmbeddedFontSource, ITheme, IThemeScripts, IThemeImages, IThemeMetadata, IThemeFavicons, IThemeLogoPosition, IThemeLogoHeightsProps, IThemeLogoHeights, ISTSThemeInterface, IThemeFavicon, IThemeMetadataItem, IThemeInterface, IGlobalTheme, IColors, IInitializedEmptyTheme, IThemeAnimationConfettiPlaces, IThemeGlobalAnimations, IThemeAnimationsConfettiPlacesTypes, IThemeAnimationsConfettiProps, IEmbeddedFont, IEmbeddedFontSource, };
7
8
  export { IIconsObject, PaymentTypesLogos, PaymentCards, IconNames, IconNamesToFiles, };
8
9
  export { IRetailerSettings, ISecondTierAuthorization, IFlippConfig, IFlippConfigV2, IFlippScriptUrls, IAllSettings, ISMSConfig, IDefaultRetailerSettings, ICtaButtons, IAddressesSettings, IAccountPageSettings, ILayoutSettings, ILoggingLevel, IDefaultSearchParams, IDefaultStoreLocation, IDefaultCounty, IRetailerCountry, IRestrictMapPlaces, IValidationType, INutritionZone, IFooterTypes, IRegistrationFieldTypes, IRegistrationFieldNames, IValidateLength, IValidateDateRange, IRegistrationField, ICheckoutValidation, ISearchPreviewVisibility, IPaymentCards, IGlobalAnimations, ILayoutAnimationsConfetti, IGlobalCheckoutProps, IAddressIntegration, IAddressFinderType, };
9
10
  export { AdminSettingsTemplate };
11
+ export { defaultConfig };
package/index.js CHANGED
@@ -1,7 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.AdminSettingsTemplate = exports.IconNamesToFiles = void 0;
3
+ exports.defaultConfig = exports.AdminSettingsTemplate = exports.IconNamesToFiles = void 0;
4
4
  var icons_interfaces_1 = require("./icons.interfaces");
5
5
  Object.defineProperty(exports, "IconNamesToFiles", { enumerable: true, get: function () { return icons_interfaces_1.IconNamesToFiles; } });
6
6
  var admin_settings_template_1 = require("./admin-settings-template");
7
7
  exports.AdminSettingsTemplate = admin_settings_template_1.default;
8
+ var default_config_1 = require("./default.config");
9
+ exports.defaultConfig = default_config_1.default;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@thryveai/theme-interfaces",
3
- "version": "1.5.24-beta1",
3
+ "version": "1.5.24-beta2",
4
4
  "description": "Shared Interfaces for all ThryveAi storefront retailer themes.",
5
5
  "scripts": {
6
6
  "build": "tsc",
@@ -2,8 +2,6 @@ import { IconNames, PaymentCards } from "./icons.interfaces";
2
2
  export interface IRetailerSettings {
3
3
  accountPage?: IAccountPageSettings;
4
4
  additionalCharges?: boolean;
5
- advertSettings?: IAdvertSettings;
6
- TimeslotModalSettings?: ITimeslotModalSettings;
7
5
  addresses?: {
8
6
  addressValidationTypes?: IAddressValidationTypes;
9
7
  canadianAddressCompleteKey?: string | undefined;
@@ -15,8 +13,10 @@ export interface IRetailerSettings {
15
13
  };
16
14
  useAddressValidation?: boolean;
17
15
  };
16
+ TimeslotModalSettings?: ITimeslotModalSettings;
18
17
  addressIntegration?: IAddressIntegration;
19
18
  addressValidationTypes?: IAddressValidationTypes;
19
+ advertSettings?: IAdvertSettings;
20
20
  allowInStorePurchases?: boolean;
21
21
  allowPastPurchases?: boolean;
22
22
  buildNumber: string;
@@ -44,6 +44,7 @@ export interface IRetailerSettings {
44
44
  externalApps?: IExternalApps;
45
45
  externalStoreSelectorUrl?: string | undefined;
46
46
  favoritesV1?: boolean;
47
+ featureSwitch?: IFeatureSwitch;
47
48
  flipp?: IFlippConfig | IFlippConfigV2 | null;
48
49
  globalAnimations?: IGlobalAnimations;
49
50
  googleAutocompleteSettings?: IGoogleAutocompleteSettings;
@@ -55,6 +56,7 @@ export interface IRetailerSettings {
55
56
  instacartUrl?: string | undefined;
56
57
  isPlanningOnly?: boolean;
57
58
  layout?: ILayoutSettings;
59
+ layouts?: IGlobalLayouts;
58
60
  limitProductCardTitleHeight?: boolean;
59
61
  loggingLevelClient?: ILoggingLevel;
60
62
  loggingLevelServer?: ILoggingLevel;
@@ -65,6 +67,8 @@ export interface IRetailerSettings {
65
67
  paymentCards?: IPaymentCards;
66
68
  pdpDetailsLayout?: IProductDetailsPageLayout;
67
69
  productCardTitleHeight?: number;
70
+ productCards?: IProductCardsProps;
71
+ productCardv2?: boolean;
68
72
  promoTemplateVersion?: number;
69
73
  registrationFields?: IRegistrationField[];
70
74
  restrictMapPlacesResults?: IRestrictMapPlaces;
@@ -74,15 +78,12 @@ export interface IRetailerSettings {
74
78
  secondTierAuthorization?: ISecondTierAuthorization;
75
79
  showCheckoutPromoCode?: boolean;
76
80
  showImgOnOrder?: boolean;
81
+ smartBanner?: ISmartBanner;
77
82
  smsNotifications?: ISMSConfig;
78
83
  sodiumWarning?: ISodiumWarning;
79
84
  specialRequestItems?: boolean;
80
85
  subHeaderHeight?: number;
81
86
  useAddressValidation?: boolean;
82
- productCards?: IProductCardsProps;
83
- layouts?: IGlobalLayouts;
84
- smartBanner?: ISmartBanner;
85
- featureSwitch?: IFeatureSwitch;
86
87
  }
87
88
  export interface IFeatureSwitch {
88
89
  clientCache?: boolean;
@@ -181,6 +182,10 @@ export interface IAdvertSkyScrapers {
181
182
  skyscrapers?: IAdvertsData;
182
183
  }
183
184
  export interface IDefaultRetailerSettings {
185
+ adminPanelOnly: {
186
+ bannerName: string;
187
+ logoUrl: string;
188
+ };
184
189
  accountPage: IAccountPageSettings;
185
190
  additionalCharges: boolean;
186
191
  addressIntegration: IAddressIntegration;
@@ -213,6 +218,7 @@ export interface IDefaultRetailerSettings {
213
218
  errorLoggingLevel: ILoggingLevel;
214
219
  externalStoreSelectorUrl: string | undefined;
215
220
  favoritesV1: boolean;
221
+ features: IFeatureSwitch;
216
222
  flipp: IFlippConfig | IFlippConfigV2 | null;
217
223
  globalAnimations: IGlobalAnimations;
218
224
  googleAutocompleteSettings: IGoogleAutocompleteSettings;
@@ -224,6 +230,7 @@ export interface IDefaultRetailerSettings {
224
230
  instacartUrl: string | undefined;
225
231
  isPlanningOnly: boolean;
226
232
  layout: ILayoutSettings;
233
+ layouts: IGlobalLayouts;
227
234
  limitProductCardTitleHeight: boolean;
228
235
  loggingLevelClient: ILoggingLevel;
229
236
  loggingLevelServer: ILoggingLevel;
@@ -234,6 +241,8 @@ export interface IDefaultRetailerSettings {
234
241
  paymentCards: IPaymentCards;
235
242
  pdpDetailsLayout: IProductDetailsPageLayout;
236
243
  productCardTitleHeight: number;
244
+ productCards: IProductCardsProps;
245
+ productCardv2: boolean;
237
246
  promoTemplateVersion: number;
238
247
  registrationFields: IRegistrationField[];
239
248
  restrictMapPlacesResults: IRestrictMapPlaces;
@@ -243,16 +252,13 @@ export interface IDefaultRetailerSettings {
243
252
  secondTierAuthorization?: ISecondTierAuthorization;
244
253
  showCheckoutPromoCode: boolean;
245
254
  showImgOnOrder: boolean;
255
+ smartbanner: ISmartBanner;
246
256
  smsNotifications: ISMSConfig;
247
257
  sodiumWarning: ISodiumWarning;
248
258
  specialRequestItems: boolean;
249
259
  subHeaderHeight: number;
250
260
  timeslotModalSettings: ITimeslotModalSettings;
251
261
  useAddressValidation: boolean;
252
- productCards: IProductCardsProps;
253
- layouts: IGlobalLayouts;
254
- smartbanner: ISmartBanner;
255
- features: IFeatureSwitch;
256
262
  }
257
263
  export interface IGoogleAutocompleteSettings {
258
264
  types?: IGoogleAutocompleteTypes;
@@ -141,6 +141,7 @@ export interface IThemeInterface {
141
141
  headerActionLinks?: IHeaderActionLinksProps;
142
142
  headerLinks?: IHeaderLinksProps;
143
143
  departments?: {
144
+ wrapCategoryTitle?: boolean;
144
145
  backgroundColor?: {
145
146
  active?: string;
146
147
  static?: string;