@designcrowd/library.brand-page 5.18.2 → 5.18.3-actionable-buttons-2

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 (78) hide show
  1. package/lib/src/{CreatedOnBrandCrowd-de-de-DB2oJ5vl.js → CreatedOnBrandCrowd-de-de-HPO35Atc.js} +1 -1
  2. package/lib/src/{CreatedOnBrandCrowd-en-us-fbk0Gf2G.js → CreatedOnBrandCrowd-en-us-Cl4aaalq.js} +1 -1
  3. package/lib/src/{CreatedOnBrandCrowd-es-es-Ch4Q9__I.js → CreatedOnBrandCrowd-es-es-B_2laZxX.js} +1 -1
  4. package/lib/src/{CreatedOnBrandCrowd-fr-fr-DaHJ6OMH.js → CreatedOnBrandCrowd-fr-ca-BTauzkB5.js} +1 -1
  5. package/lib/src/{CreatedOnBrandCrowd-fr-ca-DaHJ6OMH.js → CreatedOnBrandCrowd-fr-fr-BTauzkB5.js} +1 -1
  6. package/lib/src/{CreatedOnBrandCrowd-pt-pt-BgF8UCqy.js → CreatedOnBrandCrowd-pt-br-B0V4UZv3.js} +1 -1
  7. package/lib/src/{CreatedOnBrandCrowd-pt-br-BgF8UCqy.js → CreatedOnBrandCrowd-pt-pt-B0V4UZv3.js} +1 -1
  8. package/lib/src/{CreatedOnDcom-de-de-j3rcGaGp.js → CreatedOnDcom-de-de-DvX7MlWL.js} +1 -1
  9. package/lib/src/{CreatedOnDcom-en-us-Cx4eQPRU.js → CreatedOnDcom-en-us-BnXBQ4jL.js} +1 -1
  10. package/lib/src/{CreatedOnDcom-es-es-D-1APCL9.js → CreatedOnDcom-es-es-lKzARICU.js} +1 -1
  11. package/lib/src/{CreatedOnDcom-fr-ca-DAHdBw0D.js → CreatedOnDcom-fr-ca-BXBuLMp3.js} +1 -1
  12. package/lib/src/{CreatedOnDcom-fr-fr-BYAw2kXr.js → CreatedOnDcom-fr-fr-wUZo-ppX.js} +1 -1
  13. package/lib/src/{CreatedOnDcom-pt-br-CdSknjZg.js → CreatedOnDcom-pt-br-Dcpf3PTV.js} +1 -1
  14. package/lib/src/{CreatedOnDcom-pt-pt-DzyZ2j80.js → CreatedOnDcom-pt-pt-BUN3ynDi.js} +1 -1
  15. package/lib/src/brand-page-maker/composables/ai-chat/types.d.ts +3 -0
  16. package/lib/src/brand-page-maker/composables/ai-chat/ui-actions.d.ts +29 -0
  17. package/lib/src/brand-page-maker/composables/ai-chat/ui-actions.js +32 -0
  18. package/lib/src/brand-page-maker/composables/ai-chat/useAiWebsiteBuilderChat.js +201 -172
  19. package/lib/src/brand-page-maker/composables/useEventTracker.d.ts +1 -0
  20. package/lib/src/brand-page-maker/composables/useEventTracker.js +1 -0
  21. package/lib/src/{bundled-translations-CnareLWC.js → bundled-translations-B5Fkt3qd.js} +1 -1
  22. package/lib/src/{bundled-translations.de-DE-2Ys7epLO.js → bundled-translations.de-DE-DpdVePM9.js} +1 -1
  23. package/lib/src/bundled-translations.es-ES-BsIcrzZF.js +175 -0
  24. package/lib/src/bundled-translations.fr-CA-G1XCp2Qh.js +175 -0
  25. package/lib/src/bundled-translations.fr-FR-BdwLXOnB.js +175 -0
  26. package/lib/src/bundled-translations.pt-BR-Bvn5ePe7.js +175 -0
  27. package/lib/src/bundled-translations.pt-PT-CDtkb2k1.js +175 -0
  28. package/lib/src/bundles/bundled-translations.de-DE.json +2 -0
  29. package/lib/src/bundles/bundled-translations.es-ES.json +2 -0
  30. package/lib/src/bundles/bundled-translations.fr-CA.json +2 -0
  31. package/lib/src/bundles/bundled-translations.fr-FR.json +2 -0
  32. package/lib/src/bundles/bundled-translations.json +2 -0
  33. package/lib/src/bundles/bundled-translations.pt-BR.json +2 -0
  34. package/lib/src/bundles/bundled-translations.pt-PT.json +2 -0
  35. package/lib/src/css/library.brand-page-brandCrowd.min.css +102 -19
  36. package/lib/src/css/library.brand-page-brandPage.min.css +102 -19
  37. package/lib/src/css/library.brand-page-designCom.min.css +102 -19
  38. package/lib/src/css/library.brand-page-preview.min.css +102 -19
  39. package/lib/src/index.mjs +1 -1
  40. package/lib/src/{lib-mcvVokSM.js → lib-BP3rUcsW.js} +17328 -17189
  41. package/lib/src/plugins/google-maps-plugin/google-maps-plugin.d.ts +14 -2
  42. package/lib/src/plugins/google-maps-plugin/google-maps-plugin.js +43 -13
  43. package/package.json +2 -2
  44. package/src/brand-page-maker/components/ai-text-edit/AiActionButtons.vue +34 -7
  45. package/src/brand-page-maker/components/ai-text-edit/AiChatbox.vue +3 -0
  46. package/src/brand-page-maker/components/ai-text-edit/TextBubble.vue +7 -1
  47. package/src/brand-page-maker/components/ai-website-builder/AiWebsiteBuilder.vue +21 -1
  48. package/src/brand-page-maker/components/brandpage-settings/BrandPageSettings.vue +8 -0
  49. package/src/brand-page-maker/composables/ai-chat/types.ts +6 -0
  50. package/src/brand-page-maker/composables/ai-chat/ui-actions.test.ts +80 -0
  51. package/src/brand-page-maker/composables/ai-chat/ui-actions.ts +58 -0
  52. package/src/brand-page-maker/composables/ai-chat/useAiWebsiteBuilderChat.ts +305 -256
  53. package/src/brand-page-maker/composables/useEventTracker.ts +1 -0
  54. package/src/brand-page-maker/constants/i18n/constants.de-DE.json +2 -0
  55. package/src/brand-page-maker/constants/i18n/constants.es-ES.json +2 -0
  56. package/src/brand-page-maker/constants/i18n/constants.fr-CA.json +2 -0
  57. package/src/brand-page-maker/constants/i18n/constants.fr-FR.json +2 -0
  58. package/src/brand-page-maker/constants/i18n/constants.json +2 -0
  59. package/src/brand-page-maker/constants/i18n/constants.pt-BR.json +2 -0
  60. package/src/brand-page-maker/constants/i18n/constants.pt-PT.json +2 -0
  61. package/src/bundles/bundled-translations.de-DE.json +2 -0
  62. package/src/bundles/bundled-translations.es-ES.json +2 -0
  63. package/src/bundles/bundled-translations.fr-CA.json +2 -0
  64. package/src/bundles/bundled-translations.fr-FR.json +2 -0
  65. package/src/bundles/bundled-translations.json +2 -0
  66. package/src/bundles/bundled-translations.pt-BR.json +2 -0
  67. package/src/bundles/bundled-translations.pt-PT.json +2 -0
  68. package/src/plugins/google-maps-plugin/google-maps-plugin.ts +58 -18
  69. package/src/shared/content-settings/components/google-address-field/GoogleAddressField.vue +148 -15
  70. package/src/shared/font-family-selector/FontPicker.vue +91 -4
  71. package/lib/src/bundled-translations.es-ES-Cjp-G8rT.js +0 -175
  72. package/lib/src/bundled-translations.fr-CA-CsaW4Oae.js +0 -175
  73. package/lib/src/bundled-translations.fr-FR-DIT2dd8J.js +0 -175
  74. package/lib/src/bundled-translations.pt-BR-BamoBpDW.js +0 -175
  75. package/lib/src/bundled-translations.pt-PT-C9A4hY_e.js +0 -175
  76. package/lib/src/shared/content-settings/components/google-address-field/GoogleAddressField.mixin.d.ts +0 -54
  77. package/lib/src/shared/content-settings/components/google-address-field/GoogleAddressField.mixin.js +0 -67
  78. package/src/shared/content-settings/components/google-address-field/GoogleAddressField.mixin.ts +0 -84
@@ -3568,6 +3568,45 @@ a.maker-anchor {
3568
3568
  -webkit-transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
3569
3569
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
3570
3570
  }
3571
+ .placeholder\:tw-text-grayscale-600::-webkit-input-placeholder {
3572
+ --tw-text-opacity: 1;
3573
+ color: rgb(94 94 94 / var(--tw-text-opacity));
3574
+ }
3575
+ .placeholder\:tw-text-grayscale-600::-moz-placeholder {
3576
+ --tw-text-opacity: 1;
3577
+ color: rgb(94 94 94 / var(--tw-text-opacity));
3578
+ }
3579
+ .placeholder\:tw-text-grayscale-600:-ms-input-placeholder {
3580
+ --tw-text-opacity: 1;
3581
+ color: rgb(94 94 94 / var(--tw-text-opacity));
3582
+ }
3583
+ .placeholder\:tw-text-grayscale-600::-ms-input-placeholder {
3584
+ --tw-text-opacity: 1;
3585
+ color: rgb(94 94 94 / var(--tw-text-opacity));
3586
+ }
3587
+ .placeholder\:tw-text-grayscale-600::placeholder {
3588
+ --tw-text-opacity: 1;
3589
+ color: rgb(94 94 94 / var(--tw-text-opacity));
3590
+ }
3591
+ .placeholder\:tw-opacity-50::-webkit-input-placeholder {
3592
+ opacity: 0.5;
3593
+ }
3594
+ .placeholder\:tw-opacity-50::-moz-placeholder {
3595
+ opacity: 0.5;
3596
+ }
3597
+ .placeholder\:tw-opacity-50:-ms-input-placeholder {
3598
+ opacity: 0.5;
3599
+ }
3600
+ .placeholder\:tw-opacity-50::-ms-input-placeholder {
3601
+ opacity: 0.5;
3602
+ }
3603
+ .placeholder\:tw-opacity-50::placeholder {
3604
+ opacity: 0.5;
3605
+ }
3606
+ .focus-within\:tw-border-grayscale-600:focus-within {
3607
+ --tw-border-opacity: 1;
3608
+ border-color: rgb(94 94 94 / var(--tw-border-opacity));
3609
+ }
3571
3610
  @media (hover: hover) and (pointer: fine) {
3572
3611
 
3573
3612
  .hover\:tw-cursor-pointer:hover {
@@ -8934,6 +8973,29 @@ body {
8934
8973
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1)
8935
8974
  }
8936
8975
 
8976
+ /* The widget renders its own input inside a closed shadow DOM. We style the box
8977
+ on the host via Tailwind classes (see HOST_INPUT_CLASSES) and normalise the
8978
+ exposed parts here:
8979
+ - force the light theme (the widget otherwise follows the OS color-scheme and
8980
+ renders dark inside our always-light panel);
8981
+ - make the inner input inherit the host's font/colour and drop its own
8982
+ padding (the host provides px-4/py-2);
8983
+ - hide the widget's focus-ring so focus is shown by the host border darkening,
8984
+ matching our other inputs. */
8985
+ [data-component='google-address-field'] gmp-place-autocomplete {
8986
+ color-scheme: light;
8987
+ }
8988
+ [data-component='google-address-field'] gmp-place-autocomplete::part(input) {
8989
+ padding: 0;
8990
+ background: transparent;
8991
+ color: inherit;
8992
+ font: inherit;
8993
+ }
8994
+ [data-component='google-address-field']
8995
+ gmp-place-autocomplete::part(focus-ring) {
8996
+ display: none;
8997
+ }
8998
+
8937
8999
  .c-gallery-figure[data-v-b07a625b] {
8938
9000
 
8939
9001
  position: relative;
@@ -9098,14 +9160,26 @@ body {
9098
9160
  min-width: 33.333333%
9099
9161
  }
9100
9162
 
9101
- .font-list[data-v-65616ad0] {
9163
+ .font-list[data-v-d11f2982] {
9102
9164
  scrollbar-width: none; /* Firefox */
9103
9165
  -ms-overflow-style: none; /* IE/Edge */
9104
9166
  }
9105
- .font-list[data-v-65616ad0]::-webkit-scrollbar {
9167
+ .font-list[data-v-d11f2982]::-webkit-scrollbar {
9106
9168
  display: none; /* Chrome, Safari, Opera */
9107
9169
  }
9108
9170
 
9171
+ /*
9172
+ * Skip layout + paint for off-screen rows. Each row renders an inline-SVG
9173
+ * preview; with ~130 rows this defers the bulk of the open-time cost to
9174
+ * only the visible window. Rows are uniform height, so the intrinsic-size
9175
+ * estimate keeps the scrollbar and scrollToSelectedFont accurate. Nodes
9176
+ * stay in the DOM, so find-in-page / a11y / selectors are unaffected.
9177
+ */
9178
+ .font-list-item[data-v-d11f2982] {
9179
+ content-visibility: auto;
9180
+ contain-intrinsic-size: auto 36px;
9181
+ }
9182
+
9109
9183
  .rich-text-editor[data-v-c2f90d30]:focus-within {
9110
9184
  --tw-border-opacity: 1;
9111
9185
  border-color: rgb(94 94 94 / var(--tw-border-opacity));
@@ -9620,10 +9694,19 @@ input.dynamic-width-input[data-v-97be2e87]:focus {
9620
9694
  position: absolute
9621
9695
  }
9622
9696
 
9623
- .section[data-v-d5301e0e] {
9697
+ .section[data-v-97daf54f] {
9624
9698
  margin-bottom: 1.5rem
9625
9699
  }
9626
9700
 
9701
+ /* The upgrade glyph (`upgrade-alt`) is a hairline faceted gem that barely reads
9702
+ at button size. Give it a stroke in the current text colour so the icon is
9703
+ distinguishable from afar. Scoped to the CTA button via the `ai-cta-button`
9704
+ class passed to the design-system Button. */
9705
+ [data-v-4067f968] .ai-cta-button svg path {
9706
+ stroke: currentColor;
9707
+ stroke-width: 1;
9708
+ }
9709
+
9627
9710
  .shimmer-text[data-v-7a203d2a] {
9628
9711
  background: -webkit-gradient(
9629
9712
  linear,
@@ -9716,16 +9799,16 @@ to {
9716
9799
  }
9717
9800
  }
9718
9801
 
9719
- .typing-cursor[data-v-32d97597] {
9720
- -webkit-animation: blink-32d97597 1s infinite;
9721
- animation: blink-32d97597 1s infinite;
9802
+ .typing-cursor[data-v-d24ad0e3] {
9803
+ -webkit-animation: blink-d24ad0e3 1s infinite;
9804
+ animation: blink-d24ad0e3 1s infinite;
9722
9805
  }
9723
- .bubble-ai[data-v-32d97597] {
9806
+ .bubble-ai[data-v-d24ad0e3] {
9724
9807
  background-color: #eceefe;
9725
9808
  border-color: #798bf9;
9726
9809
  color: #171717;
9727
9810
  }
9728
- @-webkit-keyframes blink-32d97597 {
9811
+ @-webkit-keyframes blink-d24ad0e3 {
9729
9812
  0%,
9730
9813
  50% {
9731
9814
  opacity: 1;
@@ -9735,7 +9818,7 @@ to {
9735
9818
  opacity: 0;
9736
9819
  }
9737
9820
  }
9738
- @keyframes blink-32d97597 {
9821
+ @keyframes blink-d24ad0e3 {
9739
9822
  0%,
9740
9823
  50% {
9741
9824
  opacity: 1;
@@ -9745,7 +9828,7 @@ to {
9745
9828
  opacity: 0;
9746
9829
  }
9747
9830
  }
9748
- .shimmer-text[data-v-32d97597] {
9831
+ .shimmer-text[data-v-d24ad0e3] {
9749
9832
  background: -webkit-gradient(
9750
9833
  linear,
9751
9834
  left top, right top,
@@ -9767,10 +9850,10 @@ to {
9767
9850
  -webkit-background-clip: text;
9768
9851
  -webkit-text-fill-color: transparent;
9769
9852
  background-clip: text;
9770
- -webkit-animation: shimmer-slide-32d97597 4s linear infinite;
9771
- animation: shimmer-slide-32d97597 4s linear infinite;
9853
+ -webkit-animation: shimmer-slide-d24ad0e3 4s linear infinite;
9854
+ animation: shimmer-slide-d24ad0e3 4s linear infinite;
9772
9855
  }
9773
- @-webkit-keyframes shimmer-slide-32d97597 {
9856
+ @-webkit-keyframes shimmer-slide-d24ad0e3 {
9774
9857
  from {
9775
9858
  background-position: 200% center;
9776
9859
  }
@@ -9778,7 +9861,7 @@ to {
9778
9861
  background-position: -200% center;
9779
9862
  }
9780
9863
  }
9781
- @keyframes shimmer-slide-32d97597 {
9864
+ @keyframes shimmer-slide-d24ad0e3 {
9782
9865
  from {
9783
9866
  background-position: 200% center;
9784
9867
  }
@@ -9787,7 +9870,7 @@ to {
9787
9870
  }
9788
9871
  }
9789
9872
 
9790
- .suggested-prompts-container[data-v-51b6c6a0] {
9873
+ .suggested-prompts-container[data-v-08af5c64] {
9791
9874
  display: -webkit-box;
9792
9875
  display: -ms-flexbox;
9793
9876
  display: flex;
@@ -9799,10 +9882,10 @@ to {
9799
9882
  scrollbar-width: none; /* Firefox */
9800
9883
  -ms-overflow-style: none; /* IE and Edge */
9801
9884
  }
9802
- .suggested-prompts-container[data-v-51b6c6a0]::-webkit-scrollbar {
9885
+ .suggested-prompts-container[data-v-08af5c64]::-webkit-scrollbar {
9803
9886
  display: none; /* Chrome, Safari, Opera */
9804
9887
  }
9805
- .chatbox-textarea[data-v-51b6c6a0]:focus {
9888
+ .chatbox-textarea[data-v-08af5c64]:focus {
9806
9889
  -webkit-box-shadow:
9807
9890
  0 4px 6px -1px rgb(0 0 0 / 0.1),
9808
9891
  0 2px 4px -2px rgb(0 0 0 / 0.1);
@@ -9811,10 +9894,10 @@ to {
9811
9894
  0 2px 4px -2px rgb(0 0 0 / 0.1);
9812
9895
  border-color: var(--tw-grayscale-300, #d1d5db);
9813
9896
  }
9814
- [data-v-51b6c6a0] .btn-no-padding {
9897
+ [data-v-08af5c64] .btn-no-padding {
9815
9898
  padding: 0 !important;
9816
9899
  }
9817
- .disabled-button[data-v-51b6c6a0] button {
9900
+ .disabled-button[data-v-08af5c64] button {
9818
9901
  background-color: rgb(229 231 235) !important;
9819
9902
  cursor: not-allowed !important;
9820
9903
  opacity: 0.6 !important;
@@ -3331,6 +3331,45 @@ a:not(.tw-lowercase) {
3331
3331
  -webkit-transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
3332
3332
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1)
3333
3333
  }
3334
+ .placeholder\:tw-text-grayscale-600::-webkit-input-placeholder {
3335
+ --tw-text-opacity: 1;
3336
+ color: rgb(96 96 96 / var(--tw-text-opacity))
3337
+ }
3338
+ .placeholder\:tw-text-grayscale-600::-moz-placeholder {
3339
+ --tw-text-opacity: 1;
3340
+ color: rgb(96 96 96 / var(--tw-text-opacity))
3341
+ }
3342
+ .placeholder\:tw-text-grayscale-600:-ms-input-placeholder {
3343
+ --tw-text-opacity: 1;
3344
+ color: rgb(96 96 96 / var(--tw-text-opacity))
3345
+ }
3346
+ .placeholder\:tw-text-grayscale-600::-ms-input-placeholder {
3347
+ --tw-text-opacity: 1;
3348
+ color: rgb(96 96 96 / var(--tw-text-opacity))
3349
+ }
3350
+ .placeholder\:tw-text-grayscale-600::placeholder {
3351
+ --tw-text-opacity: 1;
3352
+ color: rgb(96 96 96 / var(--tw-text-opacity))
3353
+ }
3354
+ .placeholder\:tw-opacity-50::-webkit-input-placeholder {
3355
+ opacity: 0.5
3356
+ }
3357
+ .placeholder\:tw-opacity-50::-moz-placeholder {
3358
+ opacity: 0.5
3359
+ }
3360
+ .placeholder\:tw-opacity-50:-ms-input-placeholder {
3361
+ opacity: 0.5
3362
+ }
3363
+ .placeholder\:tw-opacity-50::-ms-input-placeholder {
3364
+ opacity: 0.5
3365
+ }
3366
+ .placeholder\:tw-opacity-50::placeholder {
3367
+ opacity: 0.5
3368
+ }
3369
+ .focus-within\:tw-border-grayscale-600:focus-within {
3370
+ --tw-border-opacity: 1;
3371
+ border-color: rgb(96 96 96 / var(--tw-border-opacity))
3372
+ }
3334
3373
  @media (hover: hover) and (pointer: fine) {
3335
3374
  .hover\:tw-cursor-pointer:hover {
3336
3375
  cursor: pointer
@@ -8630,6 +8669,29 @@ body {
8630
8669
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1)
8631
8670
  }
8632
8671
 
8672
+ /* The widget renders its own input inside a closed shadow DOM. We style the box
8673
+ on the host via Tailwind classes (see HOST_INPUT_CLASSES) and normalise the
8674
+ exposed parts here:
8675
+ - force the light theme (the widget otherwise follows the OS color-scheme and
8676
+ renders dark inside our always-light panel);
8677
+ - make the inner input inherit the host's font/colour and drop its own
8678
+ padding (the host provides px-4/py-2);
8679
+ - hide the widget's focus-ring so focus is shown by the host border darkening,
8680
+ matching our other inputs. */
8681
+ [data-component='google-address-field'] gmp-place-autocomplete {
8682
+ color-scheme: light;
8683
+ }
8684
+ [data-component='google-address-field'] gmp-place-autocomplete::part(input) {
8685
+ padding: 0;
8686
+ background: transparent;
8687
+ color: inherit;
8688
+ font: inherit;
8689
+ }
8690
+ [data-component='google-address-field']
8691
+ gmp-place-autocomplete::part(focus-ring) {
8692
+ display: none;
8693
+ }
8694
+
8633
8695
  .c-gallery-figure[data-v-b07a625b] {
8634
8696
 
8635
8697
  position: relative;
@@ -8794,14 +8856,26 @@ body {
8794
8856
  min-width: 33.333333%
8795
8857
  }
8796
8858
 
8797
- .font-list[data-v-65616ad0] {
8859
+ .font-list[data-v-d11f2982] {
8798
8860
  scrollbar-width: none; /* Firefox */
8799
8861
  -ms-overflow-style: none; /* IE/Edge */
8800
8862
  }
8801
- .font-list[data-v-65616ad0]::-webkit-scrollbar {
8863
+ .font-list[data-v-d11f2982]::-webkit-scrollbar {
8802
8864
  display: none; /* Chrome, Safari, Opera */
8803
8865
  }
8804
8866
 
8867
+ /*
8868
+ * Skip layout + paint for off-screen rows. Each row renders an inline-SVG
8869
+ * preview; with ~130 rows this defers the bulk of the open-time cost to
8870
+ * only the visible window. Rows are uniform height, so the intrinsic-size
8871
+ * estimate keeps the scrollbar and scrollToSelectedFont accurate. Nodes
8872
+ * stay in the DOM, so find-in-page / a11y / selectors are unaffected.
8873
+ */
8874
+ .font-list-item[data-v-d11f2982] {
8875
+ content-visibility: auto;
8876
+ contain-intrinsic-size: auto 36px;
8877
+ }
8878
+
8805
8879
  .rich-text-editor[data-v-c2f90d30]:focus-within {
8806
8880
  --tw-border-opacity: 1;
8807
8881
  border-color: rgb(96 96 96 / var(--tw-border-opacity));
@@ -9316,10 +9390,19 @@ input.dynamic-width-input[data-v-97be2e87]:focus {
9316
9390
  position: absolute
9317
9391
  }
9318
9392
 
9319
- .section[data-v-d5301e0e] {
9393
+ .section[data-v-97daf54f] {
9320
9394
  margin-bottom: 1.5rem
9321
9395
  }
9322
9396
 
9397
+ /* The upgrade glyph (`upgrade-alt`) is a hairline faceted gem that barely reads
9398
+ at button size. Give it a stroke in the current text colour so the icon is
9399
+ distinguishable from afar. Scoped to the CTA button via the `ai-cta-button`
9400
+ class passed to the design-system Button. */
9401
+ [data-v-4067f968] .ai-cta-button svg path {
9402
+ stroke: currentColor;
9403
+ stroke-width: 1;
9404
+ }
9405
+
9323
9406
  .shimmer-text[data-v-7a203d2a] {
9324
9407
  background: -webkit-gradient(
9325
9408
  linear,
@@ -9412,16 +9495,16 @@ to {
9412
9495
  }
9413
9496
  }
9414
9497
 
9415
- .typing-cursor[data-v-32d97597] {
9416
- -webkit-animation: blink-32d97597 1s infinite;
9417
- animation: blink-32d97597 1s infinite;
9498
+ .typing-cursor[data-v-d24ad0e3] {
9499
+ -webkit-animation: blink-d24ad0e3 1s infinite;
9500
+ animation: blink-d24ad0e3 1s infinite;
9418
9501
  }
9419
- .bubble-ai[data-v-32d97597] {
9502
+ .bubble-ai[data-v-d24ad0e3] {
9420
9503
  background-color: #eceefe;
9421
9504
  border-color: #798bf9;
9422
9505
  color: #171717;
9423
9506
  }
9424
- @-webkit-keyframes blink-32d97597 {
9507
+ @-webkit-keyframes blink-d24ad0e3 {
9425
9508
  0%,
9426
9509
  50% {
9427
9510
  opacity: 1;
@@ -9431,7 +9514,7 @@ to {
9431
9514
  opacity: 0;
9432
9515
  }
9433
9516
  }
9434
- @keyframes blink-32d97597 {
9517
+ @keyframes blink-d24ad0e3 {
9435
9518
  0%,
9436
9519
  50% {
9437
9520
  opacity: 1;
@@ -9441,7 +9524,7 @@ to {
9441
9524
  opacity: 0;
9442
9525
  }
9443
9526
  }
9444
- .shimmer-text[data-v-32d97597] {
9527
+ .shimmer-text[data-v-d24ad0e3] {
9445
9528
  background: -webkit-gradient(
9446
9529
  linear,
9447
9530
  left top, right top,
@@ -9463,10 +9546,10 @@ to {
9463
9546
  -webkit-background-clip: text;
9464
9547
  -webkit-text-fill-color: transparent;
9465
9548
  background-clip: text;
9466
- -webkit-animation: shimmer-slide-32d97597 4s linear infinite;
9467
- animation: shimmer-slide-32d97597 4s linear infinite;
9549
+ -webkit-animation: shimmer-slide-d24ad0e3 4s linear infinite;
9550
+ animation: shimmer-slide-d24ad0e3 4s linear infinite;
9468
9551
  }
9469
- @-webkit-keyframes shimmer-slide-32d97597 {
9552
+ @-webkit-keyframes shimmer-slide-d24ad0e3 {
9470
9553
  from {
9471
9554
  background-position: 200% center;
9472
9555
  }
@@ -9474,7 +9557,7 @@ to {
9474
9557
  background-position: -200% center;
9475
9558
  }
9476
9559
  }
9477
- @keyframes shimmer-slide-32d97597 {
9560
+ @keyframes shimmer-slide-d24ad0e3 {
9478
9561
  from {
9479
9562
  background-position: 200% center;
9480
9563
  }
@@ -9483,7 +9566,7 @@ to {
9483
9566
  }
9484
9567
  }
9485
9568
 
9486
- .suggested-prompts-container[data-v-51b6c6a0] {
9569
+ .suggested-prompts-container[data-v-08af5c64] {
9487
9570
  display: -webkit-box;
9488
9571
  display: -ms-flexbox;
9489
9572
  display: flex;
@@ -9495,10 +9578,10 @@ to {
9495
9578
  scrollbar-width: none; /* Firefox */
9496
9579
  -ms-overflow-style: none; /* IE and Edge */
9497
9580
  }
9498
- .suggested-prompts-container[data-v-51b6c6a0]::-webkit-scrollbar {
9581
+ .suggested-prompts-container[data-v-08af5c64]::-webkit-scrollbar {
9499
9582
  display: none; /* Chrome, Safari, Opera */
9500
9583
  }
9501
- .chatbox-textarea[data-v-51b6c6a0]:focus {
9584
+ .chatbox-textarea[data-v-08af5c64]:focus {
9502
9585
  -webkit-box-shadow:
9503
9586
  0 4px 6px -1px rgb(0 0 0 / 0.1),
9504
9587
  0 2px 4px -2px rgb(0 0 0 / 0.1);
@@ -9507,10 +9590,10 @@ to {
9507
9590
  0 2px 4px -2px rgb(0 0 0 / 0.1);
9508
9591
  border-color: var(--tw-grayscale-300, #d1d5db);
9509
9592
  }
9510
- [data-v-51b6c6a0] .btn-no-padding {
9593
+ [data-v-08af5c64] .btn-no-padding {
9511
9594
  padding: 0 !important;
9512
9595
  }
9513
- .disabled-button[data-v-51b6c6a0] button {
9596
+ .disabled-button[data-v-08af5c64] button {
9514
9597
  background-color: rgb(229 231 235) !important;
9515
9598
  cursor: not-allowed !important;
9516
9599
  opacity: 0.6 !important;
@@ -3145,6 +3145,45 @@ a.maker-anchor {
3145
3145
  -webkit-transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
3146
3146
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1)
3147
3147
  }
3148
+ .bp .placeholder\:tw-text-grayscale-600::-webkit-input-placeholder {
3149
+ --tw-text-opacity: 1;
3150
+ color: rgb(94 94 94 / var(--tw-text-opacity))
3151
+ }
3152
+ .bp .placeholder\:tw-text-grayscale-600::-moz-placeholder {
3153
+ --tw-text-opacity: 1;
3154
+ color: rgb(94 94 94 / var(--tw-text-opacity))
3155
+ }
3156
+ .bp .placeholder\:tw-text-grayscale-600:-ms-input-placeholder {
3157
+ --tw-text-opacity: 1;
3158
+ color: rgb(94 94 94 / var(--tw-text-opacity))
3159
+ }
3160
+ .bp .placeholder\:tw-text-grayscale-600::-ms-input-placeholder {
3161
+ --tw-text-opacity: 1;
3162
+ color: rgb(94 94 94 / var(--tw-text-opacity))
3163
+ }
3164
+ .bp .placeholder\:tw-text-grayscale-600::placeholder {
3165
+ --tw-text-opacity: 1;
3166
+ color: rgb(94 94 94 / var(--tw-text-opacity))
3167
+ }
3168
+ .bp .placeholder\:tw-opacity-50::-webkit-input-placeholder {
3169
+ opacity: 0.5
3170
+ }
3171
+ .bp .placeholder\:tw-opacity-50::-moz-placeholder {
3172
+ opacity: 0.5
3173
+ }
3174
+ .bp .placeholder\:tw-opacity-50:-ms-input-placeholder {
3175
+ opacity: 0.5
3176
+ }
3177
+ .bp .placeholder\:tw-opacity-50::-ms-input-placeholder {
3178
+ opacity: 0.5
3179
+ }
3180
+ .bp .placeholder\:tw-opacity-50::placeholder {
3181
+ opacity: 0.5
3182
+ }
3183
+ .bp .focus-within\:tw-border-grayscale-600:focus-within {
3184
+ --tw-border-opacity: 1;
3185
+ border-color: rgb(94 94 94 / var(--tw-border-opacity))
3186
+ }
3148
3187
  @media (hover: hover) and (pointer: fine) {
3149
3188
  .bp .hover\:tw-cursor-pointer:hover {
3150
3189
  cursor: pointer
@@ -8344,6 +8383,29 @@ to {
8344
8383
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1)
8345
8384
  }
8346
8385
 
8386
+ /* The widget renders its own input inside a closed shadow DOM. We style the box
8387
+ on the host via Tailwind classes (see HOST_INPUT_CLASSES) and normalise the
8388
+ exposed parts here:
8389
+ - force the light theme (the widget otherwise follows the OS color-scheme and
8390
+ renders dark inside our always-light panel);
8391
+ - make the inner input inherit the host's font/colour and drop its own
8392
+ padding (the host provides px-4/py-2);
8393
+ - hide the widget's focus-ring so focus is shown by the host border darkening,
8394
+ matching our other inputs. */
8395
+ [data-component='google-address-field'] gmp-place-autocomplete {
8396
+ color-scheme: light;
8397
+ }
8398
+ [data-component='google-address-field'] gmp-place-autocomplete::part(input) {
8399
+ padding: 0;
8400
+ background: transparent;
8401
+ color: inherit;
8402
+ font: inherit;
8403
+ }
8404
+ [data-component='google-address-field']
8405
+ gmp-place-autocomplete::part(focus-ring) {
8406
+ display: none;
8407
+ }
8408
+
8347
8409
  .bp .c-gallery-figure[data-v-b07a625b] {
8348
8410
 
8349
8411
  position: relative;
@@ -8508,14 +8570,26 @@ to {
8508
8570
  min-width: 33.333333%
8509
8571
  }
8510
8572
 
8511
- .bp .font-list[data-v-65616ad0] {
8573
+ .bp .font-list[data-v-d11f2982] {
8512
8574
  scrollbar-width: none; /* Firefox */
8513
8575
  -ms-overflow-style: none; /* IE/Edge */
8514
8576
  }
8515
- .bp .font-list[data-v-65616ad0]::-webkit-scrollbar {
8577
+ .bp .font-list[data-v-d11f2982]::-webkit-scrollbar {
8516
8578
  display: none; /* Chrome, Safari, Opera */
8517
8579
  }
8518
8580
 
8581
+ /*
8582
+ * Skip layout + paint for off-screen rows. Each row renders an inline-SVG
8583
+ * preview; with ~130 rows this defers the bulk of the open-time cost to
8584
+ * only the visible window. Rows are uniform height, so the intrinsic-size
8585
+ * estimate keeps the scrollbar and scrollToSelectedFont accurate. Nodes
8586
+ * stay in the DOM, so find-in-page / a11y / selectors are unaffected.
8587
+ */
8588
+ .bp .font-list-item[data-v-d11f2982] {
8589
+ content-visibility: auto;
8590
+ contain-intrinsic-size: auto 36px;
8591
+ }
8592
+
8519
8593
  .bp .rich-text-editor[data-v-c2f90d30]:focus-within {
8520
8594
  --tw-border-opacity: 1;
8521
8595
  border-color: rgb(94 94 94 / var(--tw-border-opacity));
@@ -9030,10 +9104,19 @@ input.dynamic-width-input[data-v-97be2e87]:focus {
9030
9104
  position: absolute
9031
9105
  }
9032
9106
 
9033
- .bp .section[data-v-d5301e0e] {
9107
+ .bp .section[data-v-97daf54f] {
9034
9108
  margin-bottom: 1.5rem
9035
9109
  }
9036
9110
 
9111
+ /* The upgrade glyph (`upgrade-alt`) is a hairline faceted gem that barely reads
9112
+ at button size. Give it a stroke in the current text colour so the icon is
9113
+ distinguishable from afar. Scoped to the CTA button via the `ai-cta-button`
9114
+ class passed to the design-system Button. */
9115
+ [data-v-4067f968] .ai-cta-button svg path {
9116
+ stroke: currentColor;
9117
+ stroke-width: 1;
9118
+ }
9119
+
9037
9120
  .bp .shimmer-text[data-v-7a203d2a] {
9038
9121
  background: -webkit-gradient(
9039
9122
  linear,
@@ -9126,16 +9209,16 @@ to {
9126
9209
  }
9127
9210
  }
9128
9211
 
9129
- .bp .typing-cursor[data-v-32d97597] {
9130
- -webkit-animation: blink-32d97597 1s infinite;
9131
- animation: blink-32d97597 1s infinite;
9212
+ .bp .typing-cursor[data-v-d24ad0e3] {
9213
+ -webkit-animation: blink-d24ad0e3 1s infinite;
9214
+ animation: blink-d24ad0e3 1s infinite;
9132
9215
  }
9133
- .bp .bubble-ai[data-v-32d97597] {
9216
+ .bp .bubble-ai[data-v-d24ad0e3] {
9134
9217
  background-color: #eceefe;
9135
9218
  border-color: #798bf9;
9136
9219
  color: #171717;
9137
9220
  }
9138
- @-webkit-keyframes blink-32d97597 {
9221
+ @-webkit-keyframes blink-d24ad0e3 {
9139
9222
  0%,
9140
9223
  50% {
9141
9224
  opacity: 1;
@@ -9145,7 +9228,7 @@ to {
9145
9228
  opacity: 0;
9146
9229
  }
9147
9230
  }
9148
- @keyframes blink-32d97597 {
9231
+ @keyframes blink-d24ad0e3 {
9149
9232
  0%,
9150
9233
  50% {
9151
9234
  opacity: 1;
@@ -9155,7 +9238,7 @@ to {
9155
9238
  opacity: 0;
9156
9239
  }
9157
9240
  }
9158
- .bp .shimmer-text[data-v-32d97597] {
9241
+ .bp .shimmer-text[data-v-d24ad0e3] {
9159
9242
  background: -webkit-gradient(
9160
9243
  linear,
9161
9244
  left top, right top,
@@ -9177,10 +9260,10 @@ to {
9177
9260
  -webkit-background-clip: text;
9178
9261
  -webkit-text-fill-color: transparent;
9179
9262
  background-clip: text;
9180
- -webkit-animation: shimmer-slide-32d97597 4s linear infinite;
9181
- animation: shimmer-slide-32d97597 4s linear infinite;
9263
+ -webkit-animation: shimmer-slide-d24ad0e3 4s linear infinite;
9264
+ animation: shimmer-slide-d24ad0e3 4s linear infinite;
9182
9265
  }
9183
- @-webkit-keyframes shimmer-slide-32d97597 {
9266
+ @-webkit-keyframes shimmer-slide-d24ad0e3 {
9184
9267
  from {
9185
9268
  background-position: 200% center;
9186
9269
  }
@@ -9188,7 +9271,7 @@ to {
9188
9271
  background-position: -200% center;
9189
9272
  }
9190
9273
  }
9191
- @keyframes shimmer-slide-32d97597 {
9274
+ @keyframes shimmer-slide-d24ad0e3 {
9192
9275
  from {
9193
9276
  background-position: 200% center;
9194
9277
  }
@@ -9197,7 +9280,7 @@ to {
9197
9280
  }
9198
9281
  }
9199
9282
 
9200
- .bp .suggested-prompts-container[data-v-51b6c6a0] {
9283
+ .bp .suggested-prompts-container[data-v-08af5c64] {
9201
9284
  display: -webkit-box;
9202
9285
  display: -ms-flexbox;
9203
9286
  display: flex;
@@ -9209,10 +9292,10 @@ to {
9209
9292
  scrollbar-width: none; /* Firefox */
9210
9293
  -ms-overflow-style: none; /* IE and Edge */
9211
9294
  }
9212
- .bp .suggested-prompts-container[data-v-51b6c6a0]::-webkit-scrollbar {
9295
+ .bp .suggested-prompts-container[data-v-08af5c64]::-webkit-scrollbar {
9213
9296
  display: none; /* Chrome, Safari, Opera */
9214
9297
  }
9215
- .bp .chatbox-textarea[data-v-51b6c6a0]:focus {
9298
+ .bp .chatbox-textarea[data-v-08af5c64]:focus {
9216
9299
  -webkit-box-shadow:
9217
9300
  0 4px 6px -1px rgb(0 0 0 / 0.1),
9218
9301
  0 2px 4px -2px rgb(0 0 0 / 0.1);
@@ -9221,10 +9304,10 @@ to {
9221
9304
  0 2px 4px -2px rgb(0 0 0 / 0.1);
9222
9305
  border-color: var(--tw-grayscale-300, #d1d5db);
9223
9306
  }
9224
- [data-v-51b6c6a0] .btn-no-padding {
9307
+ [data-v-08af5c64] .btn-no-padding {
9225
9308
  padding: 0 !important;
9226
9309
  }
9227
- .bp .disabled-button[data-v-51b6c6a0] button {
9310
+ .bp .disabled-button[data-v-08af5c64] button {
9228
9311
  background-color: rgb(229 231 235) !important;
9229
9312
  cursor: not-allowed !important;
9230
9313
  opacity: 0.6 !important;
package/lib/src/index.mjs CHANGED
@@ -1,4 +1,4 @@
1
- import { A as E, a as T, b as s, c as I, d as S, e as N, f as e, B as A, g as O, h as C, i as G, j as D, k as P, l as t, m as R, n as L, o as M, p as o, q as r, r as b, s as n, t as F, u as i, v as l, w as g, x as B, y as c, z as Y, C as U, D as d, E as u, F as H, G as p, H as y, I as K, J as k, K as m, L as V, M as X, N as h, O as v, P as W, Q as f, R as x, S as z, T as w, U as Z, V as j, W as Q, X as q, Y as J, Z as $, $ as aa, a0 as _a, a1 as Ea, a2 as Ta, a3 as sa, a4 as Ia, a5 as Sa, a6 as Na, a7 as ea, a8 as Aa, a9 as Oa, aa as Ca, ab as Ga, ac as Da, ad as Pa, ae as ta, af as Ra, ag as La, ah as Ma, ai as oa, aj as ra, ak as ba, al as na, am as Fa, an as ia, ao as la, ap as ga, aq as Ba, ar as ca, as as Ya, at as Ua, au as da, av as ua, aw as Ha, ax as pa, ay as ya, az as Ka, aA as ka, aB as ma, aC as Va, aD as Xa, aE as ha, aF as va, aG as Wa, aH as fa, aI as xa, aJ as za, aK as wa, aL as Za, aM as ja, aN as Qa, aO as qa, aP as Ja, aQ as $a, aR as a_, aS as __, aT as E_, aU as T_, aV as s_, aW as I_, aX as S_, aY as N_, aZ as e_, a_ as A_, a$ as O_, b0 as C_, b1 as G_, b2 as D_, b3 as P_, b4 as t_, b5 as R_, b6 as L_, b7 as M_, b8 as o_, b9 as r_, ba as b_, bb as n_, bc as F_, bd as i_, be as l_, bf as g_, bg as B_, bh as c_, bi as Y_, bj as U_, bk as d_, bl as u_, bm as H_, bn as p_, bo as y_, bp as K_, bq as k_, br as m_, bs as V_, bt as X_, bu as h_, bv as v_, bw as W_, bx as f_, by as x_, bz as z_, bA as w_, bB as Z_, bC as j_, bD as Q_, bE as q_, bF as J_, bG as $_, bH as aE, bI as _E, bJ as EE, bK as TE, bL as sE, bM as IE, bN as SE, bO as NE, bP as eE, bQ as AE, bR as OE, bS as CE, bT as GE, bU as DE, bV as PE, bW as tE, bX as RE, bY as LE, bZ as ME, b_ as oE, b$ as rE, c0 as bE, c1 as nE, c2 as FE, c3 as iE, c4 as lE, c5 as gE, c6 as BE, c7 as cE, c8 as YE, c9 as UE, ca as dE, cb as uE, cc as HE, cd as pE, ce as yE, cf as KE, cg as kE, ch as mE, ci as VE, cj as XE, ck as hE, cl as vE, cm as WE, cn as fE, co as xE } from "./lib-mcvVokSM.js";
1
+ import { A as E, a as T, b as s, c as I, d as S, e as N, f as e, B as A, g as O, h as C, i as G, j as D, k as P, l as t, m as R, n as L, o as M, p as o, q as r, r as b, s as n, t as F, u as i, v as l, w as g, x as B, y as c, z as Y, C as U, D as d, E as u, F as H, G as p, H as y, I as K, J as k, K as m, L as V, M as X, N as h, O as v, P as W, Q as f, R as x, S as z, T as w, U as Z, V as j, W as Q, X as q, Y as J, Z as $, $ as aa, a0 as _a, a1 as Ea, a2 as Ta, a3 as sa, a4 as Ia, a5 as Sa, a6 as Na, a7 as ea, a8 as Aa, a9 as Oa, aa as Ca, ab as Ga, ac as Da, ad as Pa, ae as ta, af as Ra, ag as La, ah as Ma, ai as oa, aj as ra, ak as ba, al as na, am as Fa, an as ia, ao as la, ap as ga, aq as Ba, ar as ca, as as Ya, at as Ua, au as da, av as ua, aw as Ha, ax as pa, ay as ya, az as Ka, aA as ka, aB as ma, aC as Va, aD as Xa, aE as ha, aF as va, aG as Wa, aH as fa, aI as xa, aJ as za, aK as wa, aL as Za, aM as ja, aN as Qa, aO as qa, aP as Ja, aQ as $a, aR as a_, aS as __, aT as E_, aU as T_, aV as s_, aW as I_, aX as S_, aY as N_, aZ as e_, a_ as A_, a$ as O_, b0 as C_, b1 as G_, b2 as D_, b3 as P_, b4 as t_, b5 as R_, b6 as L_, b7 as M_, b8 as o_, b9 as r_, ba as b_, bb as n_, bc as F_, bd as i_, be as l_, bf as g_, bg as B_, bh as c_, bi as Y_, bj as U_, bk as d_, bl as u_, bm as H_, bn as p_, bo as y_, bp as K_, bq as k_, br as m_, bs as V_, bt as X_, bu as h_, bv as v_, bw as W_, bx as f_, by as x_, bz as z_, bA as w_, bB as Z_, bC as j_, bD as Q_, bE as q_, bF as J_, bG as $_, bH as aE, bI as _E, bJ as EE, bK as TE, bL as sE, bM as IE, bN as SE, bO as NE, bP as eE, bQ as AE, bR as OE, bS as CE, bT as GE, bU as DE, bV as PE, bW as tE, bX as RE, bY as LE, bZ as ME, b_ as oE, b$ as rE, c0 as bE, c1 as nE, c2 as FE, c3 as iE, c4 as lE, c5 as gE, c6 as BE, c7 as cE, c8 as YE, c9 as UE, ca as dE, cb as uE, cc as HE, cd as pE, ce as yE, cf as KE, cg as kE, ch as mE, ci as VE, cj as XE, ck as hE, cl as vE, cm as WE, cn as fE, co as xE } from "./lib-BP3rUcsW.js";
2
2
  import { createPinia as wE, setActivePinia as ZE } from "pinia";
3
3
  export {
4
4
  E as ABOUT_SECTION_SETTINGS_CONFIG,