@seatlayer/js 0.10.0 → 0.10.1
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.
- package/dist/index.cjs +39 -13
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +39 -13
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
package/dist/index.cjs
CHANGED
|
@@ -485,15 +485,28 @@ var CSS = `
|
|
|
485
485
|
.sl-picker[data-layout="narrow"] .sl-zoom [data-ref="zin"],
|
|
486
486
|
.sl-picker[data-layout="narrow"] .sl-zoom [data-ref="zout"]{display:none}
|
|
487
487
|
|
|
488
|
-
/* bottom-sheet head: grab handle + one-line summary (narrow only)
|
|
489
|
-
|
|
490
|
-
|
|
488
|
+
/* bottom-sheet head: grab handle + one-line summary (narrow only). The WHOLE
|
|
489
|
+
head is the tap/swipe toggle target (min 44px), so it reads as one control. */
|
|
490
|
+
.sl-sheet-head{display:none;flex-direction:column;justify-content:center;padding:6px 16px 8px;min-height:44px;
|
|
491
|
+
cursor:pointer;touch-action:none;user-select:none;-webkit-user-select:none;flex:none}
|
|
491
492
|
.sl-picker[data-layout="narrow"] .sl-sheet-head{display:flex}
|
|
492
493
|
.sl-sheet-grab{width:36px;height:4px;border-radius:999px;background:var(--sl-muted);opacity:.55;margin:2px auto 7px}
|
|
493
|
-
.sl-sheet-
|
|
494
|
-
|
|
494
|
+
.sl-sheet-bar{display:flex;align-items:center;gap:10px;min-height:26px}
|
|
495
|
+
.sl-sheet-peek{display:flex;align-items:center;gap:7px;flex:1;min-width:0;font-size:13px;font-weight:700;color:var(--sl-text);
|
|
496
|
+
white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
|
|
495
497
|
.sl-sheet-peek .sub{color:var(--sl-muted);font-weight:600}
|
|
496
|
-
|
|
498
|
+
/* collapsed-peek "Continue" affordance: a real accent pill, not plain text */
|
|
499
|
+
.sl-sheet-peek .go{margin-left:auto;flex:none;display:inline-flex;align-items:center;min-height:30px;
|
|
500
|
+
padding:6px 13px;border-radius:999px;background:var(--sl-accent);color:var(--sl-accent-ink);
|
|
501
|
+
font-weight:800;font-size:12.5px}
|
|
502
|
+
/* state chevron: points UP while peeking, rotates to point DOWN when open.
|
|
503
|
+
Base keeps an explicit rotate(0) \u2014 transitioning to/from a bare 'none' leaves
|
|
504
|
+
the value stuck in some engines, so both endpoints must be real transforms. */
|
|
505
|
+
.sl-sheet-chevron{flex:none;display:flex;align-items:center;justify-content:center;color:var(--sl-muted);
|
|
506
|
+
transform:rotate(0deg);transition:transform .22s ease}
|
|
507
|
+
.sl-sheet-chevron svg{width:18px;height:18px;stroke:currentColor;stroke-width:2.4;fill:none;
|
|
508
|
+
stroke-linecap:round;stroke-linejoin:round}
|
|
509
|
+
.sl-picker[data-sheet="open"] .sl-sheet-chevron{transform:rotate(180deg)}
|
|
497
510
|
|
|
498
511
|
/* consolidated Filters row inside the sheet (a11y chips + colorblind toggle
|
|
499
512
|
dock here on narrow; they live on the map / zoom column on wide) */
|
|
@@ -542,10 +555,18 @@ var CSS = `
|
|
|
542
555
|
.sl-foot{padding:12px 16px 14px;border-top:1px solid var(--sl-line);flex:none}
|
|
543
556
|
.sl-total{display:flex;justify-content:space-between;align-items:center;font-size:13px;margin-bottom:10px}
|
|
544
557
|
.sl-total b{font-size:17px;font-variant-numeric:tabular-nums}
|
|
545
|
-
.sl-
|
|
546
|
-
|
|
547
|
-
.
|
|
548
|
-
.sl-cta:
|
|
558
|
+
/* Primary checkout CTA. Scoped under .sl-picker so it OUTWEIGHS the
|
|
559
|
+
'.sl-picker button' reset (0,1,1) \u2014 an unscoped '.sl-cta' (0,1,0) loses to it
|
|
560
|
+
and the button renders as plain text with no accent fill. */
|
|
561
|
+
.sl-picker .sl-cta{display:flex;align-items:center;justify-content:center;width:100%;min-height:44px;
|
|
562
|
+
padding:12px 16px;border-radius:var(--sl-r-sm);font-weight:800;font-size:14px;line-height:1.1;
|
|
563
|
+
background:var(--sl-accent);color:var(--sl-accent-ink);
|
|
564
|
+
transition:filter .15s,background .15s,color .15s,transform .06s}
|
|
565
|
+
.sl-picker .sl-cta:hover{filter:brightness(1.08)}
|
|
566
|
+
.sl-picker .sl-cta:active{transform:translateY(1px);filter:brightness(.94)}
|
|
567
|
+
/* Disabled ("Select seats"): quieter, but still a full-width button shape. */
|
|
568
|
+
.sl-picker .sl-cta:disabled{background:var(--sl-surface);color:var(--sl-muted);opacity:1;
|
|
569
|
+
cursor:not-allowed;filter:none;transform:none}
|
|
549
570
|
|
|
550
571
|
/* Chrome anchor regions (Feature 6) \u2014 every persistent map overlay is APPENDED
|
|
551
572
|
INTO one of these positioned flex containers and flows/stacks within it, so no
|
|
@@ -977,7 +998,12 @@ var SeatPicker = class _SeatPicker {
|
|
|
977
998
|
<div class="sl-side" data-ref="side">
|
|
978
999
|
<div class="sl-sheet-head" data-ref="sheetHead">
|
|
979
1000
|
<div class="sl-sheet-grab"></div>
|
|
980
|
-
<div class="sl-sheet-
|
|
1001
|
+
<div class="sl-sheet-bar">
|
|
1002
|
+
<div class="sl-sheet-peek" data-ref="peek"></div>
|
|
1003
|
+
<span class="sl-sheet-chevron" aria-hidden="true">
|
|
1004
|
+
<svg viewBox="0 0 24 24"><path d="M6 15l6-6 6 6"/></svg>
|
|
1005
|
+
</span>
|
|
1006
|
+
</div>
|
|
981
1007
|
</div>
|
|
982
1008
|
<div class="sl-sec sl-filtersec" data-ref="filtersSec">Filters</div>
|
|
983
1009
|
<div class="sl-filters" data-ref="filters"></div>
|
|
@@ -1895,10 +1921,10 @@ var SeatPicker = class _SeatPicker {
|
|
|
1895
1921
|
cta.textContent = this.hold ? "Continue to checkout" : count ? "Hold seats & checkout" : "Select seats";
|
|
1896
1922
|
if (this.els.peek) {
|
|
1897
1923
|
if (count) {
|
|
1898
|
-
this.els.peek.innerHTML = `<span>${count} ${count === 1 ? "ticket" : "tickets"} \xB7 ${this.money(total)}</span><span class="go">${this.hold ? "Continue
|
|
1924
|
+
this.els.peek.innerHTML = `<span>${count} ${count === 1 ? "ticket" : "tickets"} \xB7 ${this.money(total)}</span><span class="go">${this.hold ? "Continue" : "Review"}</span>`;
|
|
1899
1925
|
} else {
|
|
1900
1926
|
const prices = (this.controller.doc?.categories ?? []).map((c) => this.catPrice(c)).filter((p) => p != null);
|
|
1901
|
-
this.els.peek.innerHTML = (prices.length ? `<span>From ${this.money(Math.min(...prices))}</span>` : "<span>Pick your seats</span>") + `<span class="sub">\xB7 Best available</span
|
|
1927
|
+
this.els.peek.innerHTML = (prices.length ? `<span>From ${this.money(Math.min(...prices))}</span>` : "<span>Pick your seats</span>") + `<span class="sub">\xB7 Best available</span>`;
|
|
1902
1928
|
}
|
|
1903
1929
|
}
|
|
1904
1930
|
if (this.root?.dataset.layout === "narrow" && count > 0 && this.lastTrayCount === 0) {
|