@asksable/site-connector 0.6.13 → 0.6.15

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 (2) hide show
  1. package/dist/styles.css +24 -11
  2. package/package.json +1 -1
package/dist/styles.css CHANGED
@@ -2727,15 +2727,19 @@
2727
2727
  @media (max-width: 1024px) {
2728
2728
  /* Lock the frame to a single height across all steps so the widget
2729
2729
  doesn't bounce as the user moves between services / date / etc.
2730
- Sized to fit the tallest step (date + time) with a little
2731
- breathing room above and below. Body scrolls internally when a
2732
- step exceeds it. */
2730
+ Host pages with their own header can set --bw-mobile-viewport-offset
2731
+ so the header + booking frame fit inside the visible viewport. */
2733
2732
  .bw {
2734
- /* svh (small viewport height) doesn't jump when iOS Safari's URL
2735
- bar toggles, unlike vh which uses the largest possible height
2736
- and overflows when bars become visible. */
2737
- min-height: 82svh;
2738
- max-height: 82svh;
2733
+ /* svh is the fallback for browsers without dvh support. */
2734
+ min-height: max(0px, calc(100svh - var(--bw-mobile-viewport-offset, 0px)));
2735
+ max-height: max(0px, calc(100svh - var(--bw-mobile-viewport-offset, 0px)));
2736
+ }
2737
+
2738
+ @supports (height: 100dvh) {
2739
+ .bw {
2740
+ min-height: max(0px, calc(100dvh - var(--bw-mobile-viewport-offset, 0px)));
2741
+ max-height: max(0px, calc(100dvh - var(--bw-mobile-viewport-offset, 0px)));
2742
+ }
2739
2743
  }
2740
2744
 
2741
2745
  /* Lock header/footer in the column so they never shrink under
@@ -2750,6 +2754,8 @@
2750
2754
  }
2751
2755
 
2752
2756
  .bw-body {
2757
+ flex: 1 1 auto;
2758
+ min-height: 0;
2753
2759
  overflow-y: auto;
2754
2760
  -webkit-overflow-scrolling: touch;
2755
2761
  overscroll-behavior: contain;
@@ -2766,8 +2772,15 @@
2766
2772
  }
2767
2773
 
2768
2774
  .bw-placeholder {
2769
- min-height: 82svh;
2770
- max-height: 82svh;
2775
+ min-height: max(0px, calc(100svh - var(--bw-mobile-viewport-offset, 0px)));
2776
+ max-height: max(0px, calc(100svh - var(--bw-mobile-viewport-offset, 0px)));
2777
+ }
2778
+
2779
+ @supports (height: 100dvh) {
2780
+ .bw-placeholder {
2781
+ min-height: max(0px, calc(100dvh - var(--bw-mobile-viewport-offset, 0px)));
2782
+ max-height: max(0px, calc(100dvh - var(--bw-mobile-viewport-offset, 0px)));
2783
+ }
2771
2784
  }
2772
2785
 
2773
2786
  .bw-placeholder-header {
@@ -3061,7 +3074,7 @@
3061
3074
  there's always real breathing room below the Confirm button.
3062
3075
  Host site MUST include `viewport-fit=cover` in its viewport
3063
3076
  meta for env(safe-area-inset-*) to be non-zero on iOS. */
3064
- margin-top: 16px;
3077
+ margin-top: auto;
3065
3078
  padding: 16px 24px max(24px, calc(env(safe-area-inset-bottom) + 16px));
3066
3079
  border-top: 1px solid var(--bw-border-light);
3067
3080
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@asksable/site-connector",
3
- "version": "0.6.13",
3
+ "version": "0.6.15",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "sideEffects": [