@designcrowd/library.brand-page 5.17.2 → 5.17.4

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.
Files changed (120) hide show
  1. package/lib/src/{CreatedOnBrandCrowd-de-de-DVbX019x.js → CreatedOnBrandCrowd-de-de-C_NzyXvG.js} +3 -3
  2. package/lib/src/{CreatedOnBrandCrowd-en-us-U7ZUILmi.js → CreatedOnBrandCrowd-en-us-DSmpdByg.js} +3 -3
  3. package/lib/src/{CreatedOnBrandCrowd-es-es-D97zjmv_.js → CreatedOnBrandCrowd-es-es-4O9ttd4y.js} +3 -3
  4. package/lib/src/{CreatedOnBrandCrowd-fr-fr-BuOAG7-D.js → CreatedOnBrandCrowd-fr-ca-DDr8rQHb.js} +3 -3
  5. package/lib/src/{CreatedOnBrandCrowd-fr-ca-BuOAG7-D.js → CreatedOnBrandCrowd-fr-fr-DDr8rQHb.js} +3 -3
  6. package/lib/src/{CreatedOnBrandCrowd-pt-pt-DMTRsNBz.js → CreatedOnBrandCrowd-pt-br-BUTVQ17i.js} +3 -3
  7. package/lib/src/{CreatedOnBrandCrowd-pt-br-DMTRsNBz.js → CreatedOnBrandCrowd-pt-pt-BUTVQ17i.js} +3 -3
  8. package/lib/src/{CreatedOnDcom-de-de-B_jbp2ga.js → CreatedOnDcom-de-de-thkGl7gg.js} +3 -3
  9. package/lib/src/{CreatedOnDcom-en-us-DQQQhn-z.js → CreatedOnDcom-en-us-DOgnHkVR.js} +3 -3
  10. package/lib/src/{CreatedOnDcom-es-es-q3MzWO6e.js → CreatedOnDcom-es-es-NyEB16vO.js} +3 -3
  11. package/lib/src/{CreatedOnDcom-fr-ca-Bep30mu7.js → CreatedOnDcom-fr-ca-Cd6WjWcu.js} +3 -3
  12. package/lib/src/{CreatedOnDcom-fr-fr-DTF8Zzzc.js → CreatedOnDcom-fr-fr-CDKX35U7.js} +3 -3
  13. package/lib/src/{CreatedOnDcom-pt-br-ByR1GU2L.js → CreatedOnDcom-pt-br-PbJzyRNp.js} +3 -3
  14. package/lib/src/{CreatedOnDcom-pt-pt-A0L4zTr0.js → CreatedOnDcom-pt-pt-tja7jglY.js} +3 -3
  15. package/lib/src/brand-page/clients/brand-page.client.d.ts +2 -1
  16. package/lib/src/brand-page/clients/brand-page.client.js +1 -0
  17. package/lib/src/brand-page/models/payment.model.d.ts +42 -0
  18. package/lib/src/brand-page/models/payment.model.js +9 -0
  19. package/lib/src/brand-page/utils/view-model.util.js +1 -0
  20. package/lib/src/brand-page/view-models.d.ts +1 -0
  21. package/lib/src/brand-page-maker/components/brand-page-maker/BrandPageMaker.mixin.d.ts +1 -1
  22. package/lib/src/brand-page-maker/components/brandpage-maker-page/BrandPageMakerPage.mixin.d.ts +1 -0
  23. package/lib/src/brand-page-maker/composables/useEventTracker.d.ts +2 -0
  24. package/lib/src/brand-page-maker/composables/useEventTracker.js +6 -0
  25. package/lib/src/brand-page-maker/constants/config-settings-constant.d.ts +1 -0
  26. package/lib/src/brand-page-maker/constants/config-settings-constant.js +7 -0
  27. package/lib/src/brand-page-maker/models/content-settings.js +1 -0
  28. package/lib/src/brand-page-maker/validators/section-button.validator.js +4 -1
  29. package/lib/src/bundled-translations-D5A4swr0.js +173 -0
  30. package/lib/src/bundled-translations.de-DE-Bq6H28Hz.js +173 -0
  31. package/lib/src/bundled-translations.es-ES-Bo-UGy51.js +173 -0
  32. package/lib/src/bundled-translations.fr-CA-7GXawEcN.js +173 -0
  33. package/lib/src/bundled-translations.fr-FR-DzVwt2U-.js +173 -0
  34. package/lib/src/bundled-translations.pt-BR-DSZZ-i-B.js +173 -0
  35. package/lib/src/bundled-translations.pt-PT-SNbEX0GM.js +173 -0
  36. package/lib/src/bundles/bundled-translations.de-DE.json +965 -1
  37. package/lib/src/bundles/bundled-translations.es-ES.json +965 -1
  38. package/lib/src/bundles/bundled-translations.fr-CA.json +965 -1
  39. package/lib/src/bundles/bundled-translations.fr-FR.json +965 -1
  40. package/lib/src/bundles/bundled-translations.json +965 -1
  41. package/lib/src/bundles/bundled-translations.pt-BR.json +965 -1
  42. package/lib/src/bundles/bundled-translations.pt-PT.json +965 -1
  43. package/lib/src/composables/useTranslate.d.ts +7 -1
  44. package/lib/src/composables/useTranslate.js +9 -1
  45. package/lib/src/css/library.brand-page-brandCrowd.min.css +76 -55
  46. package/lib/src/css/library.brand-page-brandPage.min.css +77 -57
  47. package/lib/src/css/library.brand-page-designCom.min.css +76 -55
  48. package/lib/src/css/library.brand-page-preview.min.css +76 -55
  49. package/lib/src/index.mjs +88 -87
  50. package/lib/src/{lib-CvEpWvWA.js → lib-DL-13itP.js} +24124 -23832
  51. package/lib/src/mockServiceWorker.js +1 -1
  52. package/lib/src/shared/content-settings/components/content-settings/ContentSettings.mixin.d.ts +1 -0
  53. package/lib/src/shared/content-settings/components/content-settings/ReplaceImageSettingsForContent.mixin.d.ts +1 -0
  54. package/lib/src/shared/content-settings/components/content-settings-item/ContentSettingsItem.mixin.d.ts +1 -0
  55. package/lib/src/shared/content-settings/components/content-settings-item/ContentSettingsItemField.mixin.js +14 -0
  56. package/lib/src/shared/content-settings/components/payment-config-field/payment-toggle-field/PaymentToggleField.mixin.d.ts +13 -1
  57. package/lib/src/shared/content-settings/components/payment-config-field/payment-toggle-field/PaymentToggleField.mixin.js +10 -0
  58. package/lib/src/shared/logo-settings/components/EditLogoSettings.mixin.d.ts +2 -1
  59. package/lib/src/shared/page-settings/components/page-settings/PageSettings.mixin.d.ts +1 -0
  60. package/lib/src/shared/publish-brand-page-with-state/PublishBrandPageModalWithState.mixin.d.ts +1 -0
  61. package/lib/src/shared/side-bar/components/SideBarTabButton.mixin.d.ts +1 -0
  62. package/lib/src/shared/style-settings/components/StyleSettings.mixin.d.ts +1 -0
  63. package/lib/src/shared/template-settings/components/TemplatesSettings.mixin.d.ts +2 -1
  64. package/package.json +1 -1
  65. package/src/brand-page/clients/brand-page.client.ts +3 -0
  66. package/src/brand-page/components/about-section/AboutSection.vue +7 -1
  67. package/src/brand-page/components/payment/RequestPaymentStripe.vue +381 -44
  68. package/src/brand-page/components/shop/PaymentModal.vue +7 -1
  69. package/src/brand-page/components/shop/PaymentShippingAddress.vue +297 -0
  70. package/src/brand-page/components/shop/Shop.vue +1 -0
  71. package/src/brand-page/components/shop/i18n/countries.de-DE.json +240 -0
  72. package/src/brand-page/components/shop/i18n/countries.es-ES.json +240 -0
  73. package/src/brand-page/components/shop/i18n/countries.fr-CA.json +240 -0
  74. package/src/brand-page/components/shop/i18n/countries.fr-FR.json +240 -0
  75. package/src/brand-page/components/shop/i18n/countries.json +240 -0
  76. package/src/brand-page/components/shop/i18n/countries.pt-BR.json +240 -0
  77. package/src/brand-page/components/shop/i18n/countries.pt-PT.json +240 -0
  78. package/src/brand-page/components/shop/i18n/payment-shipping-address.de-DE.json +18 -0
  79. package/src/brand-page/components/shop/i18n/payment-shipping-address.es-ES.json +18 -0
  80. package/src/brand-page/components/shop/i18n/payment-shipping-address.fr-CA.json +18 -0
  81. package/src/brand-page/components/shop/i18n/payment-shipping-address.fr-FR.json +18 -0
  82. package/src/brand-page/components/shop/i18n/payment-shipping-address.json +18 -0
  83. package/src/brand-page/components/shop/i18n/payment-shipping-address.pt-BR.json +18 -0
  84. package/src/brand-page/components/shop/i18n/payment-shipping-address.pt-PT.json +18 -0
  85. package/src/brand-page/models/payment.model.ts +24 -0
  86. package/src/brand-page/utils/view-model.util.ts +1 -0
  87. package/src/brand-page/view-models.ts +1 -0
  88. package/src/brand-page-maker/components/brand-page-maker/BrandPageMaker.vue +1 -1
  89. package/src/brand-page-maker/composables/useEventTracker.ts +6 -0
  90. package/src/brand-page-maker/constants/config-settings-constant.ts +8 -0
  91. package/src/brand-page-maker/models/content-settings.ts +1 -0
  92. package/src/brand-page-maker/validators/section-button.validator.ts +5 -1
  93. package/src/bundles/bundled-translations.de-DE.json +965 -1
  94. package/src/bundles/bundled-translations.es-ES.json +965 -1
  95. package/src/bundles/bundled-translations.fr-CA.json +965 -1
  96. package/src/bundles/bundled-translations.fr-FR.json +965 -1
  97. package/src/bundles/bundled-translations.json +965 -1
  98. package/src/bundles/bundled-translations.pt-BR.json +965 -1
  99. package/src/bundles/bundled-translations.pt-PT.json +965 -1
  100. package/src/composables/useTranslate.ts +15 -0
  101. package/src/shared/content-settings/components/content-settings/i18n/content-settings.de-DE.json +3 -1
  102. package/src/shared/content-settings/components/content-settings/i18n/content-settings.es-ES.json +3 -1
  103. package/src/shared/content-settings/components/content-settings/i18n/content-settings.fr-CA.json +3 -1
  104. package/src/shared/content-settings/components/content-settings/i18n/content-settings.fr-FR.json +3 -1
  105. package/src/shared/content-settings/components/content-settings/i18n/content-settings.json +3 -1
  106. package/src/shared/content-settings/components/content-settings/i18n/content-settings.pt-BR.json +3 -1
  107. package/src/shared/content-settings/components/content-settings/i18n/content-settings.pt-PT.json +3 -1
  108. package/src/shared/content-settings/components/content-settings-item/ContentSettingsItemField.mixin.ts +17 -0
  109. package/src/shared/content-settings/components/payment-config-field/payment-toggle-field/PaymentToggleField.mixin.ts +12 -0
  110. package/src/shared/content-settings/components/payment-config-field/payment-toggle-field/PaymentToggleField.vue +9 -1
  111. package/lib/src/brand-page/components/payment/RequestPaymentStripe.mixin.d.ts +0 -106
  112. package/lib/src/brand-page/components/payment/RequestPaymentStripe.mixin.js +0 -253
  113. package/lib/src/bundled-translations-B6qZE8LU.js +0 -169
  114. package/lib/src/bundled-translations.de-DE-CsU6YsZb.js +0 -169
  115. package/lib/src/bundled-translations.es-ES-unPBdcJx.js +0 -169
  116. package/lib/src/bundled-translations.fr-CA-Dpa2wEtC.js +0 -169
  117. package/lib/src/bundled-translations.fr-FR-BPloaUjN.js +0 -169
  118. package/lib/src/bundled-translations.pt-BR-CFRGdaDO.js +0 -169
  119. package/lib/src/bundled-translations.pt-PT-BHVYCE0K.js +0 -169
  120. package/src/brand-page/components/payment/RequestPaymentStripe.mixin.ts +0 -364
@@ -2,6 +2,29 @@ import type { Content } from './content.model';
2
2
  import type { ProductModel } from './shop.model';
3
3
  import type { TextStyleDeclaration } from './styles.model';
4
4
 
5
+ export const STRIPE_ADDRESS_LIMITS = {
6
+ name: { min: 1, max: 350 },
7
+ line1: { min: 1, max: 200 },
8
+ line2: { min: 0, max: 200 },
9
+ city: { min: 0, max: 100 },
10
+ state: { min: 0, max: 100 },
11
+ postalCode: { min: 0, max: 20 },
12
+ country: { min: 2, max: 2 },
13
+ } as const;
14
+
15
+ export type StripeAddressField = keyof typeof STRIPE_ADDRESS_LIMITS;
16
+
17
+ export interface StripeShippingDetails {
18
+ name: string;
19
+ line1: string;
20
+ line2?: string;
21
+ city?: string;
22
+ state?: string;
23
+ postalCode?: string;
24
+ country: string;
25
+ phone?: string;
26
+ }
27
+
5
28
  export interface StripePaymentIntent {
6
29
  id: string;
7
30
  object: 'payment_intent';
@@ -129,6 +152,7 @@ export interface ShopContentConfig extends PaymentConfig {
129
152
  paymentOptionDisplayType: PaymentOptionDisplayType;
130
153
  paymentOptionImageType: PaymentOptionImageType;
131
154
  isCustomerRequestDetailsEnabled: boolean;
155
+ isShippingEnabled: boolean;
132
156
  }
133
157
 
134
158
  export interface ShopContent extends Content {
@@ -908,6 +908,7 @@ const mapToShopViewModel = (
908
908
  ...content.fillColor,
909
909
  },
910
910
  isFullWidth: true,
911
+ isShippingEnabled: content.shopPaymentConfig?.isShippingEnabled ?? false,
911
912
  },
912
913
  styles,
913
914
  );
@@ -162,6 +162,7 @@ export interface ShopViewModel
162
162
  Omit<ShopContent, 'type'> {
163
163
  buttonStyles: ButtonStyles;
164
164
  isFullWidth: boolean;
165
+ isShippingEnabled: boolean;
165
166
  }
166
167
 
167
168
  export interface ContactFormViewModel
@@ -258,7 +258,7 @@ export default {
258
258
  }
259
259
 
260
260
  .c-save-bar {
261
- @apply tw-absolute tw-top-0 tw-left-0 tw-w-full tw-p-4 tw-box-border tw-z-20 tw-transition-all tw-duration-300 tw-ease-out tw-transform tw--translate-y-1/2 tw-opacity-0;
261
+ @apply tw-absolute tw-top-0 tw-left-0 tw-w-full tw-p-4 tw-box-border tw-z-[100] tw-transition-all tw-duration-300 tw-ease-out tw-transform tw--translate-y-1/2 tw-opacity-0;
262
262
  }
263
263
 
264
264
  .c-save-bar--visible {
@@ -72,6 +72,7 @@ export const EVENTS = {
72
72
  WEBSITE_MAKER_DIGITAL_BUSINESS_CARDS_HIDE_POPUP:
73
73
  'website_maker_digital_business_cards_hide_popup',
74
74
  WEBSITE_MAKER_GETTY_VIDEO: 'website_maker_getty_video',
75
+ WEBSITE_MAKER_SHIPPING_TOGGLE: 'website_maker_shipping_toggle',
75
76
  };
76
77
 
77
78
  export const SELECT_LOCATIONS = {
@@ -408,6 +409,11 @@ const useEventTracker = () => {
408
409
  },
409
410
  ...gettyVideoEvents,
410
411
  ...publishedWebsiteEvents,
412
+ sendShippingToggleEvent: (isEnabled: boolean) => {
413
+ _publishEvent(EVENTS.WEBSITE_MAKER_SHIPPING_TOGGLE, {
414
+ is_enabled: isEnabled,
415
+ });
416
+ },
411
417
  };
412
418
  };
413
419
 
@@ -2960,6 +2960,7 @@ export const SHOP_SECTION_SETTINGS_CONFIG = (): ContentSettingsConfig<
2960
2960
  ShopContent,
2961
2961
  {
2962
2962
  paymentConfig: any;
2963
+ isShippingEnabled: boolean;
2963
2964
  }
2964
2965
  > => ({
2965
2966
  category: 'monetize',
@@ -3045,6 +3046,13 @@ export const SHOP_SECTION_SETTINGS_CONFIG = (): ContentSettingsConfig<
3045
3046
  groupId: REQUEST_PAYMENT_GROUPS.settings,
3046
3047
  overrideValueFieldName: 'shopPaymentConfig',
3047
3048
  },
3049
+ isShippingEnabled: {
3050
+ type: 'payment-toggle',
3051
+ groupId: REQUEST_PAYMENT_GROUPS.settings,
3052
+ overrideValueFieldName: 'shopPaymentConfig',
3053
+ label: contentSettingsTr(`shippingLabel`),
3054
+ placeholder: contentSettingsTr(`shippingPlaceholder`),
3055
+ },
3048
3056
  fillColor: {
3049
3057
  type: 'color',
3050
3058
  groupId: REQUEST_PAYMENT_GROUPS.style,
@@ -388,6 +388,7 @@ export const createInitialShopContent = (
388
388
  shopPaymentConfig: {
389
389
  paymentOptions: [],
390
390
  isCustomerRequestDetailsEnabled: false,
391
+ isShippingEnabled: false,
391
392
  paymentOptionDisplayType: PAYMENT_OPTION_DISPLAY_TYPES.text,
392
393
  paymentOptionImageType: PAYMENT_OPTION_IMAGE_TYPES.auto,
393
394
  },
@@ -14,6 +14,10 @@ const MISSING_BUTTON_TEL_MESSAGE = () => validatorTr('invalidTelMessage');
14
14
 
15
15
  const MISSING_PAGE_SLUG_MESSAGE = () => validatorTr('selectAPage');
16
16
 
17
+ const containsAtSymbol = (value: unknown): boolean => {
18
+ return typeof value === 'string' && value.includes('@');
19
+ };
20
+
17
21
  export const textValidator: ContentValidator<BannerSectionContent> = (
18
22
  section,
19
23
  ): ValidateResult => {
@@ -39,7 +43,7 @@ export const urlValidator: ContentValidator<
39
43
  > = (section): ValidateResult => {
40
44
  if (
41
45
  section.buttonLinkType === BUTTON_LINK_TYPE.url &&
42
- !isURL(section.url) &&
46
+ (!isURL(section.url) || containsAtSymbol(section.url)) &&
43
47
  section.buttonText !== false &&
44
48
  section.buttonText?.length > 0
45
49
  ) {