@kerusiweb/react 3.0.0 → 3.1.0

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.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-seat-cards.js","sourceRoot":"","sources":["../src/use-seat-cards.tsx"],"names":[],"mappings":"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"}
@@ -5,6 +5,11 @@ export interface UseViewportOptions {
5
5
  enabled: boolean;
6
6
  maxZoom: number;
7
7
  onViewportChange?: (viewport: KerusiViewport) => void;
8
+ /**
9
+ * Called when a pan, pinch or wheel zoom begins, so a seat hover can be cleared
10
+ * for the duration (D10). Not called for the buttons and keys.
11
+ */
12
+ onGestureStart?: () => void;
8
13
  }
9
14
  /** The slice of a key event {@link ViewportControls.handleKeyDown} reads. */
10
15
  export interface ViewportKeyEvent {
@@ -44,5 +49,5 @@ export interface ViewportControls {
44
49
  * a page zoom, and the click that ends a drag must be stopped in the capture
45
50
  * phase, before it reaches the seat.
46
51
  */
47
- export declare function useViewport({ enabled, maxZoom, onViewportChange, }: UseViewportOptions): ViewportControls;
52
+ export declare function useViewport({ enabled, maxZoom, onViewportChange, onGestureStart, }: UseViewportOptions): ViewportControls;
48
53
  //# sourceMappingURL=use-viewport.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"use-viewport.d.ts","sourceRoot":"","sources":["../src/use-viewport.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAGV,cAAc,EACd,cAAc,EAEd,YAAY,EACZ,YAAY,EACb,MAAM,iBAAiB,CAAC;AAEzB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,MAAM,WAAW,kBAAkB;IACjC,yFAAyF;IACzF,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,gBAAgB,CAAC,EAAE,CAAC,QAAQ,EAAE,cAAc,KAAK,IAAI,CAAC;CACvD;AAED,6EAA6E;AAC7E,MAAM,WAAW,gBAAgB;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,EAAE,WAAW,GAAG,IAAI,CAAC;CAC5B;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,cAAc,CAAC;IACzB,8FAA8F;IAC9F,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,cAAc,CAAC;IACvB,qCAAqC;IACrC,OAAO,EAAE,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IAC1C,yDAAyD;IACzD,UAAU,EAAE,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IAC7C,MAAM,IAAI,IAAI,CAAC;IACf,OAAO,IAAI,IAAI,CAAC;IAChB,SAAS,IAAI,IAAI,CAAC;IAClB,4FAA4F;IAC5F,gBAAgB,CAAC,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,YAAY,GAAG,IAAI,CAAC;IACjE,8CAA8C;IAC9C,UAAU,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,GAAG,IAAI,CAAC;IACvC,0FAA0F;IAC1F,aAAa,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC;CACjD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,WAAW,CAAC,EAC1B,OAAO,EACP,OAAO,EACP,gBAAgB,GACjB,EAAE,kBAAkB,GAAG,gBAAgB,CA0WvC"}
1
+ {"version":3,"file":"use-viewport.d.ts","sourceRoot":"","sources":["../src/use-viewport.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAGV,cAAc,EACd,cAAc,EAEd,YAAY,EACZ,YAAY,EACb,MAAM,iBAAiB,CAAC;AAEzB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,MAAM,WAAW,kBAAkB;IACjC,yFAAyF;IACzF,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,gBAAgB,CAAC,EAAE,CAAC,QAAQ,EAAE,cAAc,KAAK,IAAI,CAAC;IACtD;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;CAC7B;AAED,6EAA6E;AAC7E,MAAM,WAAW,gBAAgB;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,EAAE,WAAW,GAAG,IAAI,CAAC;CAC5B;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,cAAc,CAAC;IACzB,8FAA8F;IAC9F,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,cAAc,CAAC;IACvB,qCAAqC;IACrC,OAAO,EAAE,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IAC1C,yDAAyD;IACzD,UAAU,EAAE,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IAC7C,MAAM,IAAI,IAAI,CAAC;IACf,OAAO,IAAI,IAAI,CAAC;IAChB,SAAS,IAAI,IAAI,CAAC;IAClB,4FAA4F;IAC5F,gBAAgB,CAAC,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,YAAY,GAAG,IAAI,CAAC;IACjE,8CAA8C;IAC9C,UAAU,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,GAAG,IAAI,CAAC;IACvC,0FAA0F;IAC1F,aAAa,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC;CACjD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,WAAW,CAAC,EAC1B,OAAO,EACP,OAAO,EACP,gBAAgB,EAChB,cAAc,GACf,EAAE,kBAAkB,GAAG,gBAAgB,CA6WvC"}
@@ -11,7 +11,7 @@ import { useCallback, useEffect, useMemo, useRef, useState } from 'react';
11
11
  * a page zoom, and the click that ends a drag must be stopped in the capture
12
12
  * phase, before it reaches the seat.
13
13
  */
14
- export function useViewport({ enabled, maxZoom, onViewportChange, }) {
14
+ export function useViewport({ enabled, maxZoom, onViewportChange, onGestureStart, }) {
15
15
  const limits = useMemo(() => zoomLimits(maxZoom), [maxZoom]);
16
16
  const [viewport, setViewport] = useState(FIT_VIEWPORT);
17
17
  const [animated, setAnimated] = useState(false);
@@ -22,8 +22,8 @@ export function useViewport({ enabled, maxZoom, onViewportChange, }) {
22
22
  * re-renders, and each must start from the one before.
23
23
  */
24
24
  const viewportRef = useRef(FIT_VIEWPORT);
25
- const settings = useRef({ enabled, limits, onViewportChange });
26
- settings.current = { enabled, limits, onViewportChange };
25
+ const settings = useRef({ enabled, limits, onViewportChange, onGestureStart });
26
+ settings.current = { enabled, limits, onViewportChange, onGestureStart };
27
27
  const commit = useCallback((next, animate) => {
28
28
  if (viewportsEqual(next, viewportRef.current)) {
29
29
  return;
@@ -132,6 +132,7 @@ export function useViewport({ enabled, maxZoom, onViewportChange, }) {
132
132
  // Capture only once a tap has become a gesture: capturing on `down` would
133
133
  // retarget the tap's click away from the seat.
134
134
  if (result.capture) {
135
+ settings.current.onGestureStart?.();
135
136
  for (const id of result.state.ids) {
136
137
  try {
137
138
  view.setPointerCapture(id);
@@ -180,6 +181,7 @@ export function useViewport({ enabled, maxZoom, onViewportChange, }) {
180
181
  return; // A plain wheel is the page's to scroll.
181
182
  }
182
183
  e.preventDefault();
184
+ settings.current.onGestureStart?.();
183
185
  commit(zoomViewportBy(viewportRef.current, factor, containerPoint(e), measured.content, measured.container, settings.current.limits), false);
184
186
  };
185
187
  // Safari reports a trackpad pinch as gesture events, not Ctrl + wheel.
@@ -194,6 +196,7 @@ export function useViewport({ enabled, maxZoom, onViewportChange, }) {
194
196
  if (!gestureBase || !measured) {
195
197
  return;
196
198
  }
199
+ settings.current.onGestureStart?.();
197
200
  commit(zoomViewportTo(gestureBase, gestureBase.zoom * scale, containerPoint({ clientX, clientY }), measured.content, measured.container, settings.current.limits), false);
198
201
  };
199
202
  const onGestureEnd = (e) => {
@@ -1 +1 @@
1
- {"version":3,"file":"use-viewport.js","sourceRoot":"","sources":["../src/use-viewport.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"use-viewport.js","sourceRoot":"","sources":["../src/use-viewport.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EACnB,aAAa,EACb,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,gBAAgB,EAChB,aAAa,EACb,UAAU,EACV,YAAY,EACZ,eAAe,EACf,cAAc,EACd,eAAe,EACf,UAAU,EACV,cAAc,EACd,cAAc,GACf,MAAM,iBAAiB,CAAC;AAUzB,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AA4C1E;;;;;;;;;;GAUG;AACH,MAAM,UAAU,WAAW,CAAC,EAC1B,OAAO,EACP,OAAO,EACP,gBAAgB,EAChB,cAAc,GACK;IACnB,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAC7D,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAiB,YAAY,CAAC,CAAC;IACvE,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAChD,MAAM,OAAO,GAAG,MAAM,CAAwB,IAAI,CAAC,CAAC;IACpD,MAAM,UAAU,GAAG,MAAM,CAAwB,IAAI,CAAC,CAAC;IAEvD;;;OAGG;IACH,MAAM,WAAW,GAAG,MAAM,CAAiB,YAAY,CAAC,CAAC;IACzD,MAAM,QAAQ,GAAG,MAAM,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,cAAc,EAAE,CAAC,CAAC;IAC/E,QAAQ,CAAC,OAAO,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,cAAc,EAAE,CAAC;IAEzE,MAAM,MAAM,GAAG,WAAW,CAAC,CAAC,IAAoB,EAAE,OAAgB,EAAE,EAAE;QACpE,IAAI,cAAc,CAAC,IAAI,EAAE,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC;YAC9C,OAAO;QACT,CAAC;QACD,WAAW,CAAC,OAAO,GAAG,IAAI,CAAC;QAC3B,WAAW,CAAC,OAAO,CAAC,CAAC;QACrB,WAAW,CAAC,IAAI,CAAC,CAAC;QAClB,QAAQ,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC,IAAI,CAAC,CAAC;IAC5C,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,mFAAmF;IACnF,MAAM,OAAO,GAAG,WAAW,CAAC,GAA8D,EAAE;QAC1F,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC;QAC7B,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC;QACnC,IAAI,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACtB,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO;YACL,SAAS,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,CAAC,YAAY,EAAE;YACjE,OAAO,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,YAAY,EAAE;SACtE,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,QAAQ,GAAG,WAAW,CAC1B,CAAC,SAAiB,EAAE,EAAE;QACpB,MAAM,QAAQ,GAAG,OAAO,EAAE,CAAC;QAC3B,IAAI,QAAQ,IAAI,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YACzC,MAAM,CACJ,YAAY,CACV,WAAW,CAAC,OAAO,EACnB,SAAS,EACT,QAAQ,CAAC,OAAO,EAChB,QAAQ,CAAC,SAAS,EAClB,QAAQ,CAAC,OAAO,CAAC,MAAM,CACxB,EACD,IAAI,CACL,CAAC;QACJ,CAAC;IACH,CAAC,EACD,CAAC,MAAM,EAAE,OAAO,CAAC,CAClB,CAAC;IAEF,MAAM,MAAM,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC1D,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAE5D,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE;QACjC,MAAM,QAAQ,GAAG,OAAO,EAAE,CAAC;QAC3B,IAAI,QAAQ,IAAI,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YACzC,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,CAAC;QAC3F,CAAC;IACH,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAEtB,MAAM,gBAAgB,GAAG,WAAW,CAClC,CAAC,IAAkB,EAAE,MAAoB,EAAE,EAAE;QAC3C,MAAM,QAAQ,GAAG,OAAO,EAAE,CAAC;QAC3B,IAAI,CAAC,QAAQ,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC;YACvF,OAAO;QACT,CAAC;QACD,uEAAuE;QACvE,sEAAsE;QACtE,kEAAkE;QAClE,MAAM,KAAK,GAAG;YACZ,KAAK,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,MAAM;YAC/D,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC,MAAM;SAChC,CAAC;QACF,MAAM,CACJ,eAAe,CACb,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EACxC,QAAQ,CAAC,OAAO,EAChB,QAAQ,CAAC,SAAS,EAClB,SAAS,EACT,QAAQ,CAAC,OAAO,CAAC,MAAM,CACxB,EACD,IAAI,CACL,CAAC;IACJ,CAAC,EACD,CAAC,MAAM,EAAE,OAAO,CAAC,CAClB,CAAC;IAEF,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,EAAE;QAC/B,MAAM,QAAQ,GAAG,OAAO,EAAE,CAAC;QAC3B,IAAI,QAAQ,IAAI,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YACzC,MAAM,CACJ,aAAa,CACX,WAAW,CAAC,OAAO,EACnB,QAAQ,CAAC,OAAO,EAChB,QAAQ,CAAC,SAAS,EAClB,QAAQ,CAAC,OAAO,CAAC,MAAM,CACxB,EACD,KAAK,CACN,CAAC;QACJ,CAAC;IACH,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAEtB,6EAA6E;IAC7E,4BAA4B;IAC5B,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO;QACT,CAAC;QACD,OAAO,EAAE,CAAC;QACV,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC;QAC7B,IAAI,CAAC,IAAI,IAAI,OAAO,cAAc,KAAK,WAAW,EAAE,CAAC;YACnD,OAAO;QACT,CAAC;QACD,MAAM,QAAQ,GAAG,IAAI,cAAc,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;QACrD,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACvB,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;YACvB,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QACvC,CAAC;QACD,OAAO,GAAG,EAAE,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;IACrC,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAE/B,wDAAwD;IACxD,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,OAAO,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC;YACnE,WAAW,CAAC,OAAO,GAAG,YAAY,CAAC;YACnC,WAAW,CAAC,YAAY,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAEd,6EAA6E;IAE7E,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC;QAC7B,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC;YACtB,OAAO;QACT,CAAC;QAED,IAAI,OAAO,GAAiB,YAAY,CAAC;QACzC,IAAI,aAAa,GAAG,KAAK,CAAC;QAC1B,IAAI,WAAW,GAA0B,IAAI,CAAC;QAE9C,MAAM,cAAc,GAAG,CAAC,KAA2C,EAAiB,EAAE;YACpF,MAAM,GAAG,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAC;YACzC,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC,OAAO,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,EAAE,KAAK,CAAC,OAAO,GAAG,GAAG,CAAC,GAAG,EAAE,CAAC;QACrE,CAAC,CAAC;QAEF,MAAM,IAAI,GAAG,CAAC,KAAmB,EAAE,EAAE;YACnC,MAAM,QAAQ,GAAG,OAAO,EAAE,CAAC;YAC3B,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,OAAO;YACT,CAAC;YACD,MAAM,MAAM,GAAG,aAAa,CAAC,OAAO,EAAE,KAAK,EAAE;gBAC3C,QAAQ,EAAE,WAAW,CAAC,OAAO;gBAC7B,OAAO,EAAE,QAAQ,CAAC,OAAO;gBACzB,SAAS,EAAE,QAAQ,CAAC,SAAS;gBAC7B,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC,MAAM;aAChC,CAAC,CAAC;YACH,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC;YAEvB,0EAA0E;YAC1E,+CAA+C;YAC/C,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,QAAQ,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC;gBACpC,KAAK,MAAM,EAAE,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;oBAClC,IAAI,CAAC;wBACH,IAAI,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;oBAC7B,CAAC;oBAAC,MAAM,CAAC;wBACP,0DAA0D;oBAC5D,CAAC;gBACH,CAAC;YACH,CAAC;YACD,IAAI,MAAM,CAAC,QAAQ,KAAK,WAAW,CAAC,OAAO,EAAE,CAAC;gBAC5C,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;YACjC,CAAC;YACD,IAAI,MAAM,CAAC,aAAa,EAAE,CAAC;gBACzB,iFAAiF;gBACjF,aAAa,GAAG,IAAI,CAAC;gBACrB,UAAU,CAAC,GAAG,EAAE;oBACd,aAAa,GAAG,KAAK,CAAC;gBACxB,CAAC,CAAC,CAAC;YACL,CAAC;QACH,CAAC,CAAC;QAEF,MAAM,aAAa,GAAG,CAAC,CAAe,EAAE,EAAE;YACxC,IAAI,CAAC,CAAC,WAAW,KAAK,OAAO,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAChD,OAAO;YACT,CAAC;YACD,aAAa,GAAG,KAAK,CAAC;YACtB,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACpE,CAAC,CAAC;QACF,MAAM,aAAa,GAAG,CAAC,CAAe,EAAE,EAAE;YACxC,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC3B,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACpE,CAAC;QACH,CAAC,CAAC;QACF,MAAM,WAAW,GAAG,CAAC,CAAe,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;QAC/E,MAAM,eAAe,GAAG,CAAC,CAAe,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;QAEvF,MAAM,OAAO,GAAG,CAAC,CAAQ,EAAE,EAAE;YAC3B,IAAI,aAAa,EAAE,CAAC;gBAClB,aAAa,GAAG,KAAK,CAAC;gBACtB,CAAC,CAAC,eAAe,EAAE,CAAC;gBACpB,CAAC,CAAC,cAAc,EAAE,CAAC;YACrB,CAAC;QACH,CAAC,CAAC;QAEF,MAAM,OAAO,GAAG,CAAC,CAAa,EAAE,EAAE;YAChC,MAAM,MAAM,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC;YAClC,MAAM,QAAQ,GAAG,OAAO,EAAE,CAAC;YAC3B,IAAI,MAAM,KAAK,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACjC,OAAO,CAAC,yCAAyC;YACnD,CAAC;YACD,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,QAAQ,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC;YACpC,MAAM,CACJ,cAAc,CACZ,WAAW,CAAC,OAAO,EACnB,MAAM,EACN,cAAc,CAAC,CAAC,CAAC,EACjB,QAAQ,CAAC,OAAO,EAChB,QAAQ,CAAC,SAAS,EAClB,QAAQ,CAAC,OAAO,CAAC,MAAM,CACxB,EACD,KAAK,CACN,CAAC;QACJ,CAAC,CAAC;QAEF,uEAAuE;QACvE,MAAM,cAAc,GAAG,CAAC,CAAQ,EAAE,EAAE;YAClC,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,WAAW,GAAG,WAAW,CAAC,OAAO,CAAC;QACpC,CAAC,CAAC;QACF,MAAM,eAAe,GAAG,CAAC,CAAQ,EAAE,EAAE;YACnC,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,MAAM,QAAQ,GAAG,OAAO,EAAE,CAAC;YAC3B,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,CAInC,CAAC;YACF,IAAI,CAAC,WAAW,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAC9B,OAAO;YACT,CAAC;YACD,QAAQ,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC;YACpC,MAAM,CACJ,cAAc,CACZ,WAAW,EACX,WAAW,CAAC,IAAI,GAAG,KAAK,EACxB,cAAc,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,EACpC,QAAQ,CAAC,OAAO,EAChB,QAAQ,CAAC,SAAS,EAClB,QAAQ,CAAC,OAAO,CAAC,MAAM,CACxB,EACD,KAAK,CACN,CAAC;QACJ,CAAC,CAAC;QACF,MAAM,YAAY,GAAG,CAAC,CAAQ,EAAE,EAAE;YAChC,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,WAAW,GAAG,IAAI,CAAC;QACrB,CAAC,CAAC;QAEF,MAAM,SAAS,GAAiE;YAC9E,CAAC,aAAa,EAAE,aAA8B,EAAE,KAAK,CAAC;YACtD,CAAC,aAAa,EAAE,aAA8B,EAAE,KAAK,CAAC;YACtD,CAAC,WAAW,EAAE,WAA4B,EAAE,KAAK,CAAC;YAClD,CAAC,eAAe,EAAE,eAAgC,EAAE,KAAK,CAAC;YAC1D,CAAC,OAAO,EAAE,OAAwB,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;YACvD,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC;YACxB,CAAC,cAAc,EAAE,cAAc,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;YACpD,CAAC,eAAe,EAAE,eAAe,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;YACtD,CAAC,YAAY,EAAE,YAAY,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;SACjD,CAAC;QACF,KAAK,MAAM,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,IAAI,SAAS,EAAE,CAAC;YAClD,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;QACjD,CAAC;QACD,OAAO,GAAG,EAAE;YACV,KAAK,MAAM,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,IAAI,SAAS,EAAE,CAAC;gBAClD,IAAI,CAAC,mBAAmB,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;YACpD,CAAC;QACH,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAE/B,6EAA6E;IAE7E,MAAM,aAAa,GAAG,WAAW,CAC/B,CAAC,KAAuB,EAAW,EAAE;QACnC,MAAM,QAAQ,GAAG,OAAO,EAAE,CAAC;QAC3B,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC3C,OAAO,KAAK,CAAC;QACf,CAAC;QACD,MAAM,IAAI,GAAG,gBAAgB,CAC3B,WAAW,CAAC,OAAO,EACnB;YACE,GAAG,EAAE,KAAK,CAAC,GAAG;YACd,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,eAAe,EAAE,KAAK,CAAC,MAAM,KAAK,OAAO,CAAC,OAAO;SAClD,EACD,QAAQ,CAAC,OAAO,EAChB,QAAQ,CAAC,SAAS,EAClB,QAAQ,CAAC,OAAO,CAAC,MAAM,CACxB,CAAC;QACF,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO,KAAK,CAAC;QACf,CAAC;QACD,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACnB,OAAO,IAAI,CAAC;IACd,CAAC,EACD,CAAC,MAAM,EAAE,OAAO,CAAC,CAClB,CAAC;IAEF;;;OAGG;IACH,MAAM,UAAU,GAAG,WAAW,CAC5B,CAAC,IAAoB,EAAE,EAAE;QACvB,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC;QAC7B,MAAM,QAAQ,GAAG,OAAO,EAAE,CAAC;QAC3B,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;YACtF,OAAO;QACT,CAAC;QACD,MAAM,IAAI,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC1C,MAAM,KAAK,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC3C,MAAM,CACJ,UAAU,CACR,WAAW,CAAC,OAAO,EACnB;YACE,CAAC,EAAE,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI;YACzB,CAAC,EAAE,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG;YACvB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB,EACD,QAAQ,CAAC,OAAO,EAChB,QAAQ,CAAC,SAAS,EAClB,SAAS,EACT,QAAQ,CAAC,OAAO,CAAC,MAAM,CACxB,EACD,IAAI,CACL,CAAC;IACJ,CAAC,EACD,CAAC,MAAM,EAAE,OAAO,CAAC,CAClB,CAAC;IAEF,OAAO;QACL,QAAQ;QACR,QAAQ;QACR,MAAM;QACN,OAAO;QACP,UAAU;QACV,MAAM;QACN,OAAO;QACP,SAAS;QACT,gBAAgB;QAChB,UAAU;QACV,aAAa;KACd,CAAC;AACJ,CAAC;AAED,gGAAgG;AAChG,SAAS,cAAc,CAAC,IAAa;IACnC,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACxC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kerusiweb/react",
3
- "version": "3.0.0",
3
+ "version": "3.1.0",
4
4
  "description": "A React seat-map component that renders Kerusi Seat Map & Availability Format documents as interactive, accessible inline SVG.",
5
5
  "keywords": [
6
6
  "react",
@@ -43,7 +43,7 @@
43
43
  "styles.css"
44
44
  ],
45
45
  "peerDependencies": {
46
- "@kerusiweb/core": "^3.0.0",
46
+ "@kerusiweb/core": "^3.1.0",
47
47
  "react": "^18.3.0 || ^19.0.0"
48
48
  },
49
49
  "publishConfig": {
package/styles.css CHANGED
@@ -14,6 +14,8 @@
14
14
  /* --- the map ------------------------------------------------------------- */
15
15
 
16
16
  .kerusi-seatmap {
17
+ /* The containing block for a seat card, which is positioned in the map's root. */
18
+ position: relative;
17
19
  display: flex;
18
20
  flex-direction: column;
19
21
  gap: 1.25rem;
@@ -257,12 +259,34 @@
257
259
  gap: 1.25rem;
258
260
  }
259
261
 
262
+ /* One grouped bar rather than four loose squares. Every measure and colour is a
263
+ `--kerusi-control-*` token so a host can restyle it from its own stylesheet;
264
+ the private `--kc-*` values below only resolve the tiers once. The `*-input`
265
+ colours are the `[colors]` palette, written inline by the component. */
260
266
  .kerusi-toolbar {
267
+ --kc-size: var(--kerusi-control-size, 2rem);
268
+ --kc-bg: var(--kerusi-control-bg, var(--kerusi-control-bg-input));
269
+ --kc-fg: var(--kerusi-control-fg, var(--kerusi-control-fg-input));
270
+ --kc-border: var(
271
+ --kerusi-control-border,
272
+ color-mix(in srgb, var(--kerusi-control-border-input) 40%, transparent)
273
+ );
261
274
  display: flex;
262
- gap: 0.35rem;
263
275
  align-self: flex-end;
264
276
  /* Stays put under a maximized map's scrolling stage. */
265
277
  flex: none;
278
+ box-sizing: border-box;
279
+ border: 1px solid var(--kc-border);
280
+ border-radius: var(--kerusi-control-radius, 0.5rem);
281
+ overflow: hidden;
282
+ box-shadow: var(--kerusi-control-shadow, 0 1px 3px rgb(0 0 0 / 0.14));
283
+ }
284
+
285
+ /* A fingertip needs more than a cursor does: keep the 44px target on touch. */
286
+ @media (pointer: coarse) {
287
+ .kerusi-toolbar {
288
+ --kc-size: var(--kerusi-control-size, 2.75rem);
289
+ }
266
290
  }
267
291
 
268
292
  .kerusi-control {
@@ -270,35 +294,55 @@
270
294
  align-items: center;
271
295
  justify-content: center;
272
296
  box-sizing: border-box;
273
- /* 44px: a comfortable touch target on the phones this exists for. */
274
- width: 2.75rem;
275
- height: 2.75rem;
297
+ width: var(--kc-size);
298
+ height: var(--kc-size);
276
299
  padding: 0;
277
- border: 1px solid;
278
- border-radius: 0.4rem;
300
+ border: 0;
301
+ border-radius: 0;
302
+ background: var(--kc-bg);
303
+ color: var(--kc-fg);
279
304
  font: inherit;
280
305
  cursor: pointer;
306
+ transition: background-color 120ms ease-out;
307
+ }
308
+
309
+ .kerusi-control + .kerusi-control {
310
+ border-inline-start: 1px solid var(--kc-border);
311
+ }
312
+
313
+ .kerusi-control:hover {
314
+ background: var(--kerusi-control-hover-bg, color-mix(in srgb, var(--kc-fg) 10%, var(--kc-bg)));
315
+ }
316
+
317
+ .kerusi-control:active {
318
+ background: var(--kerusi-control-hover-bg, color-mix(in srgb, var(--kc-fg) 18%, var(--kc-bg)));
281
319
  }
282
320
 
283
321
  /* `aria-disabled`, not `disabled`: a disabled button drops out of the tab order,
284
322
  and pressing "zoom in" until the ceiling would throw focus away mid-press. */
285
323
  .kerusi-control[aria-disabled='true'] {
286
- opacity: 0.45;
324
+ opacity: 0.4;
287
325
  cursor: default;
326
+ background: var(--kc-bg);
288
327
  }
289
328
 
290
329
  .kerusi-control svg {
291
- width: 1.4rem;
292
- height: 1.4rem;
330
+ width: var(--kerusi-control-icon-size, 1rem);
331
+ height: var(--kerusi-control-icon-size, 1rem);
293
332
  fill: none;
294
333
  stroke: currentColor;
295
- stroke-width: 2;
334
+ stroke-width: var(--kerusi-control-icon-stroke, 1.75);
296
335
  stroke-linecap: round;
297
336
  stroke-linejoin: round;
298
337
  pointer-events: none;
299
338
  }
300
339
 
301
- .kerusi-control:focus-visible,
340
+ /* Inset, so the bar's `overflow: hidden` does not clip it. */
341
+ .kerusi-control:focus-visible {
342
+ outline: 2px solid var(--kerusi-focus-ring, var(--kerusi-focus-ring-input, currentColor));
343
+ outline-offset: -2px;
344
+ }
345
+
302
346
  .kerusi-viewport:focus-visible {
303
347
  outline: 2px solid var(--kerusi-focus-ring, var(--kerusi-focus-ring-input, currentColor));
304
348
  outline-offset: 2px;
@@ -369,3 +413,129 @@
369
413
  .kerusi-seatmap--maximized .kerusi-viewport__content {
370
414
  width: min(100cqw, 100cqh * var(--kerusi-canvas-aspect, 1));
371
415
  }
416
+
417
+ /* --- seat cards -------------------------------------------------------------
418
+ Only when `renderHoverCard` or `renderClickCard` is set; a map without them
419
+ renders none of these elements. The card is positioned by the component
420
+ (`left`, `top`, `data-placement`); this file owns what it looks like by
421
+ default, entirely through custom properties, so a consumer restyles it from
422
+ their own stylesheet without `!important` (D11):
423
+
424
+ --kerusi-seat-card-bg, -fg, -border, -radius, -shadow, -padding, -max-width,
425
+ -font, -offset, -arrow-size, -z-index
426
+
427
+ None is set here on `.kerusi-seatmap`, so a value set on the map or any
428
+ ancestor wins. The same rules as the Angular component's stylesheet. */
429
+
430
+ :where(.kerusi-seat-card) {
431
+ position: absolute;
432
+ z-index: var(--kerusi-seat-card-z-index, 10);
433
+ box-sizing: border-box;
434
+ max-width: min(var(--kerusi-seat-card-max-width, 280px), 100%);
435
+ padding: var(--kerusi-seat-card-padding, 8px 12px);
436
+ border: var(--kerusi-seat-card-border, 1px solid rgb(0 0 0 / 0.12));
437
+ border-radius: var(--kerusi-seat-card-radius, 8px);
438
+ background: var(--kerusi-seat-card-bg, var(--kerusi-element-bg, #fff));
439
+ color: var(--kerusi-seat-card-fg, var(--kerusi-element-fg, #1a1d24));
440
+ box-shadow: var(--kerusi-seat-card-shadow, 0 4px 14px rgb(0 0 0 / 0.16));
441
+ font: var(--kerusi-seat-card-font, inherit);
442
+ text-align: start;
443
+ /* Text in a card can be selected and its links followed. */
444
+ user-select: text;
445
+ -webkit-user-select: text;
446
+ animation: kerusi-seat-card-in 120ms ease-out;
447
+ }
448
+
449
+ :where(.kerusi-seat-card):focus-visible {
450
+ outline: 2px solid var(--kerusi-focus-ring, var(--kerusi-focus-ring-input, currentColor));
451
+ outline-offset: 2px;
452
+ }
453
+
454
+ :where(.kerusi-seat-card__body) {
455
+ min-width: 0;
456
+ overflow-wrap: anywhere;
457
+ }
458
+
459
+ /* No chrome: the consumer's content is the card. Only positioning is left. */
460
+ :where(.kerusi-seat-card--bare) {
461
+ padding: 0;
462
+ border: 0;
463
+ border-radius: 0;
464
+ background: none;
465
+ box-shadow: none;
466
+ }
467
+
468
+ /* The arrow is a square turned 45 degrees and centred on the card's edge that
469
+ faces the seat, so half of it shows. `--kerusi-seat-card-arrow-shift` is how
470
+ far along that edge, set inline from the placement. Its background covers the
471
+ card's own border where they meet; only the two sides that point out are
472
+ drawn, from the same border token as the card. The component leaves the arrow
473
+ out when `--kerusi-seat-card-arrow-size` is `0`. */
474
+ :where(.kerusi-seat-card__arrow) {
475
+ position: absolute;
476
+ box-sizing: border-box;
477
+ width: calc(var(--kerusi-seat-card-arrow-size, 6px) * 1.4142);
478
+ height: calc(var(--kerusi-seat-card-arrow-size, 6px) * 1.4142);
479
+ background: inherit;
480
+ pointer-events: none;
481
+ }
482
+
483
+ /* The card is above the seat: the arrow is on its bottom edge, pointing down. */
484
+ :where(.kerusi-seat-card[data-placement='top'] .kerusi-seat-card__arrow) {
485
+ bottom: 0;
486
+ left: var(--kerusi-seat-card-arrow-shift);
487
+ transform: translate(-50%, 50%) rotate(45deg);
488
+ border-right: var(--kerusi-seat-card-border, 1px solid rgb(0 0 0 / 0.12));
489
+ border-bottom: var(--kerusi-seat-card-border, 1px solid rgb(0 0 0 / 0.12));
490
+ }
491
+
492
+ :where(.kerusi-seat-card[data-placement='bottom'] .kerusi-seat-card__arrow) {
493
+ top: 0;
494
+ left: var(--kerusi-seat-card-arrow-shift);
495
+ transform: translate(-50%, -50%) rotate(45deg);
496
+ border-top: var(--kerusi-seat-card-border, 1px solid rgb(0 0 0 / 0.12));
497
+ border-left: var(--kerusi-seat-card-border, 1px solid rgb(0 0 0 / 0.12));
498
+ }
499
+
500
+ :where(.kerusi-seat-card[data-placement='left'] .kerusi-seat-card__arrow) {
501
+ right: 0;
502
+ top: var(--kerusi-seat-card-arrow-shift);
503
+ transform: translate(50%, -50%) rotate(45deg);
504
+ border-top: var(--kerusi-seat-card-border, 1px solid rgb(0 0 0 / 0.12));
505
+ border-right: var(--kerusi-seat-card-border, 1px solid rgb(0 0 0 / 0.12));
506
+ }
507
+
508
+ :where(.kerusi-seat-card[data-placement='right'] .kerusi-seat-card__arrow) {
509
+ left: 0;
510
+ top: var(--kerusi-seat-card-arrow-shift);
511
+ transform: translate(-50%, -50%) rotate(45deg);
512
+ border-bottom: var(--kerusi-seat-card-border, 1px solid rgb(0 0 0 / 0.12));
513
+ border-left: var(--kerusi-seat-card-border, 1px solid rgb(0 0 0 / 0.12));
514
+ }
515
+
516
+ /* A short fade and settle, from the side the card grows out of. */
517
+ :where(.kerusi-seat-card[data-placement='top']) {
518
+ transform-origin: bottom center;
519
+ }
520
+ :where(.kerusi-seat-card[data-placement='bottom']) {
521
+ transform-origin: top center;
522
+ }
523
+ :where(.kerusi-seat-card[data-placement='left']) {
524
+ transform-origin: center right;
525
+ }
526
+ :where(.kerusi-seat-card[data-placement='right']) {
527
+ transform-origin: center left;
528
+ }
529
+
530
+ @keyframes kerusi-seat-card-in {
531
+ from {
532
+ opacity: 0;
533
+ transform: scale(0.96);
534
+ }
535
+ }
536
+
537
+ @media (prefers-reduced-motion: reduce) {
538
+ :where(.kerusi-seat-card) {
539
+ animation: none;
540
+ }
541
+ }