@a-type/ui 6.1.31 → 6.1.33

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.
@@ -16,7 +16,7 @@ export const LightboxContent = (props) => {
16
16
  };
17
17
  const LightboxContentInner = withClassName('div', cls.contentInner);
18
18
  function LightboxDefault({ children, }) {
19
- return (_jsxs(Dialog.Root, { children: [_jsx(Dialog.Trigger, { render: children }), _jsxs(Dialog.Portal, { children: [_jsx(LightboxOverlay, {}), _jsx(LightboxContent, { children: children })] })] }));
19
+ return (_jsxs(Dialog.Root, { children: [_jsx(Dialog.Trigger, { nativeButton: false, render: children }), _jsxs(Dialog.Portal, { children: [_jsx(LightboxOverlay, {}), _jsx(LightboxContent, { children: children })] })] }));
20
20
  }
21
21
  const LightboxImage = withClassName('img', cls.image);
22
22
  export const Lightbox = Object.assign(LightboxDefault, {
@@ -1 +1 @@
1
- {"version":3,"file":"Lightbox.js","sourceRoot":"","sources":["../../../src/components/lightbox/Lightbox.tsx"],"names":[],"mappings":";AAAA,OAAO,EACN,MAAM,GAGN,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AACvC,OAAO,GAAG,MAAM,uBAAuB,CAAC;AAMxC,MAAM,CAAC,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC;AACxC,MAAM,CAAC,MAAM,eAAe,GAAG,aAAa,CAAC,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;AAC1E,MAAM,CAAC,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC;AAC5C,MAAM,CAAC,MAAM,aAAa,GAAG,GAAG,EAAE,CAAC,CAClC,KAAC,MAAM,CAAC,KAAK,IAAC,SAAS,EAAE,GAAG,CAAC,KAAK,yBAAyB,CAC3D,CAAC;AACF,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,KAAuB,EAAE,EAAE,CAAC,CACzD,KAAC,MAAM,CAAC,KAAK,oBACR,KAAK,IACT,MAAM,EACL,KAAC,MAAM,kBAAY,OAAO,YACzB,KAAC,IAAI,IAAC,IAAI,EAAC,GAAG,GAAG,GACT,EAEV,SAAS,EAAE,GAAG,CAAC,KAAK,IACnB,CACF,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,aAAa,CAAC,MAAM,CAAC,QAAQ,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;AAE3E,MAAM,CAAC,MAAM,mBAAmB,GAAG,aAAa,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC;AAChF,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,KAAuB,EAAE,EAAE;IAC1D,OAAO,CACN,MAAC,mBAAmB,oBAAK,KAAK,eAC7B,KAAC,aAAa,KAAG,EACjB,KAAC,aAAa,IAAC,SAAS,EAAE,GAAG,CAAC,iBAAiB,GAAI,EACnD,KAAC,oBAAoB,cAAE,KAAK,CAAC,QAAQ,GAAwB,KACxC,CACtB,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,oBAAoB,GAAG,aAAa,CAAC,KAAK,EAAE,GAAG,CAAC,YAAY,CAAC,CAAC;AAEpE,SAAS,eAAe,CAAC,EACxB,QAAQ,GAGR;IACA,OAAO,CACN,MAAC,MAAM,CAAC,IAAI,eACX,KAAC,MAAM,CAAC,OAAO,IAAC,MAAM,EAAE,QAAQ,GAAmB,EACnD,MAAC,MAAM,CAAC,MAAM,eACb,KAAC,eAAe,KAAG,EACnB,KAAC,eAAe,cAAE,QAAQ,GAAmB,IAC9B,IACH,CACd,CAAC;AACH,CAAC;AAED,MAAM,aAAa,GAAG,aAAa,CAAC,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;AAEtD,MAAM,CAAC,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,eAAe,EAAE;IACtD,OAAO,EAAE,eAAe;IACxB,OAAO,EAAE,eAAe;IACxB,KAAK,EAAE,aAAa;IACpB,IAAI,EAAE,YAAY;IAClB,OAAO,EAAE,eAAe;IACxB,KAAK,EAAE,aAAa;IACpB,KAAK,EAAE,aAAa;IACpB,MAAM,EAAE,cAAc;CACtB,CAAC,CAAC"}
1
+ {"version":3,"file":"Lightbox.js","sourceRoot":"","sources":["../../../src/components/lightbox/Lightbox.tsx"],"names":[],"mappings":";AAAA,OAAO,EACN,MAAM,GAGN,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AACvC,OAAO,GAAG,MAAM,uBAAuB,CAAC;AAMxC,MAAM,CAAC,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC;AACxC,MAAM,CAAC,MAAM,eAAe,GAAG,aAAa,CAAC,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;AAC1E,MAAM,CAAC,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC;AAC5C,MAAM,CAAC,MAAM,aAAa,GAAG,GAAG,EAAE,CAAC,CAClC,KAAC,MAAM,CAAC,KAAK,IAAC,SAAS,EAAE,GAAG,CAAC,KAAK,yBAAyB,CAC3D,CAAC;AACF,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,KAAuB,EAAE,EAAE,CAAC,CACzD,KAAC,MAAM,CAAC,KAAK,oBACR,KAAK,IACT,MAAM,EACL,KAAC,MAAM,kBAAY,OAAO,YACzB,KAAC,IAAI,IAAC,IAAI,EAAC,GAAG,GAAG,GACT,EAEV,SAAS,EAAE,GAAG,CAAC,KAAK,IACnB,CACF,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,aAAa,CAAC,MAAM,CAAC,QAAQ,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;AAE3E,MAAM,CAAC,MAAM,mBAAmB,GAAG,aAAa,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC;AAChF,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,KAAuB,EAAE,EAAE;IAC1D,OAAO,CACN,MAAC,mBAAmB,oBAAK,KAAK,eAC7B,KAAC,aAAa,KAAG,EACjB,KAAC,aAAa,IAAC,SAAS,EAAE,GAAG,CAAC,iBAAiB,GAAI,EACnD,KAAC,oBAAoB,cAAE,KAAK,CAAC,QAAQ,GAAwB,KACxC,CACtB,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,oBAAoB,GAAG,aAAa,CAAC,KAAK,EAAE,GAAG,CAAC,YAAY,CAAC,CAAC;AAEpE,SAAS,eAAe,CAAC,EACxB,QAAQ,GAGR;IACA,OAAO,CACN,MAAC,MAAM,CAAC,IAAI,eACX,KAAC,MAAM,CAAC,OAAO,IAAC,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,GAAmB,EACxE,MAAC,MAAM,CAAC,MAAM,eACb,KAAC,eAAe,KAAG,EACnB,KAAC,eAAe,cAAE,QAAQ,GAAmB,IAC9B,IACH,CACd,CAAC;AACH,CAAC;AAED,MAAM,aAAa,GAAG,aAAa,CAAC,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;AAEtD,MAAM,CAAC,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,eAAe,EAAE;IACtD,OAAO,EAAE,eAAe;IACxB,OAAO,EAAE,eAAe;IACxB,KAAK,EAAE,aAAa;IACpB,IAAI,EAAE,YAAY;IAClB,OAAO,EAAE,eAAe;IACxB,KAAK,EAAE,aAAa;IACpB,KAAK,EAAE,aAAa;IACpB,MAAM,EAAE,cAAc;CACtB,CAAC,CAAC"}
@@ -1,23 +1,14 @@
1
1
  @layer components {.trigger {
2
2
  cursor: pointer;
3
-
4
- &:focus {
5
- outline: none;
6
- }
7
-
8
- &:focus-visible {
9
- @apply --mx-shadow;
10
- --mx-ring-value: --fn-focus-ring();
11
- border-radius: var(--m-action-rd);
12
- }
3
+ @apply --mx-focus;
13
4
  }
14
5
 
15
6
  .title {
16
7
  position: absolute;
17
- width: 1px;
18
- height: 1px;
8
+ width: --fn-literal(1px);
9
+ height: --fn-literal(1px);
19
10
  padding: 0;
20
- margin: -1px;
11
+ margin: --fn-literal(-1px);
21
12
  overflow: hidden;
22
13
  clip: rect(0, 0, 0, 0);
23
14
  white-space: nowrap;
@@ -40,7 +31,8 @@
40
31
  @apply --mx-bg(var(--m-gray-ink));
41
32
  @apply --mx-bg-faded(50%);
42
33
 
43
- &[data-state='closed'] {
34
+ &[data-starting-style],
35
+ &[data-ending-style] {
44
36
  opacity: 0;
45
37
  }
46
38
  }
@@ -70,7 +62,8 @@
70
62
  opacity 0.2s ease,
71
63
  transform 0.2s ease;
72
64
 
73
- &[data-state='closed'] {
65
+ &[data-starting-style],
66
+ &[data-ending-style] {
74
67
  opacity: 0;
75
68
  transform: translate(-50%, -45%) scale(0.95);
76
69
  }
@@ -11,6 +11,10 @@ declare const meta: {
11
11
  expanded: boolean;
12
12
  };
13
13
  };
14
+ args: {
15
+ onCenterChange: undefined;
16
+ onZoomChange: undefined;
17
+ };
14
18
  };
15
19
  export default meta;
16
20
  type Story = StoryObj<typeof Viewport>;
@@ -9,11 +9,15 @@ const meta = {
9
9
  parameters: {
10
10
  controls: { expanded: true },
11
11
  },
12
+ args: {
13
+ onCenterChange: undefined,
14
+ onZoomChange: undefined,
15
+ },
12
16
  };
13
17
  export default meta;
14
18
  const CenterButton = () => {
15
19
  const viewport = useViewport();
16
- return (_jsx(Button, { emphasis: "ghost", size: "small", onClick: () => viewport.recenter(), children: _jsx(Icon, { name: "locate" }) }));
20
+ return (_jsx(Button, { emphasis: "ghost", size: "small", onClick: () => viewport.recenter(), "aria-label": "Center", children: _jsx(Icon, { name: "locate" }) }));
17
21
  };
18
22
  export const Default = {
19
23
  render(args) {
@@ -1 +1 @@
1
- {"version":3,"file":"Viewport.stories.js","sourceRoot":"","sources":["../../../src/components/viewport/Viewport.stories.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEnD,MAAM,IAAI,GAAG;IACZ,KAAK,EAAE,qBAAqB;IAC5B,SAAS,EAAE,QAAQ;IACnB,UAAU,EAAE;QACX,QAAQ,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;KAC5B;CAC+B,CAAC;AAElC,eAAe,IAAI,CAAC;AAIpB,MAAM,YAAY,GAAG,GAAG,EAAE;IACzB,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAE/B,OAAO,CACN,KAAC,MAAM,IAAC,QAAQ,EAAC,OAAO,EAAC,IAAI,EAAC,OAAO,EAAC,OAAO,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,YACvE,KAAC,IAAI,IAAC,IAAI,EAAC,QAAQ,GAAG,GACd,CACT,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,OAAO,GAAU;IAC7B,MAAM,CAAC,IAAI;QACV,OAAO,CACN,MAAC,QAAQ,kBACR,KAAK,EAAE;gBACN,MAAM,EAAE,GAAG;gBACX,KAAK,EAAE,MAAM;aACb,IACG,IAAI,eAER,cAAK,GAAG,EAAC,mDAAmD,GAAG,EAC/D,KAAC,QAAQ,CAAC,OAAO,cAChB,KAAC,QAAQ,CAAC,YAAY,KAAG,GACP,EACnB,KAAC,QAAQ,CAAC,OAAO,IAAC,QAAQ,EAAC,cAAc,YACxC,KAAC,YAAY,KAAG,GACE,KACT,CACX,CAAC;IACH,CAAC;CACD,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAU;IACnC,MAAM,CAAC,IAAI;QACV,OAAO,CACN,MAAC,QAAQ,kBACR,KAAK,EAAE;gBACN,MAAM,EAAE,GAAG;gBACX,KAAK,EAAE,MAAM;aACb,EACD,WAAW,EAAE,GAAG,EAChB,OAAO,EAAE,IAAI,EACb,OAAO,EAAE,EAAE,IACP,IAAI,eAER,cACC,GAAG,EAAC,mDAAmD,EACvD,KAAK,EAAE,EAAE,GACR,EACF,KAAC,QAAQ,CAAC,OAAO,cAChB,KAAC,QAAQ,CAAC,YAAY,KAAG,GACP,EACnB,KAAC,QAAQ,CAAC,OAAO,IAAC,QAAQ,EAAC,cAAc,YACxC,KAAC,YAAY,KAAG,GACE,KACT,CACX,CAAC;IACH,CAAC;CACD,CAAC"}
1
+ {"version":3,"file":"Viewport.stories.js","sourceRoot":"","sources":["../../../src/components/viewport/Viewport.stories.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEnD,MAAM,IAAI,GAAG;IACZ,KAAK,EAAE,qBAAqB;IAC5B,SAAS,EAAE,QAAQ;IACnB,UAAU,EAAE;QACX,QAAQ,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;KAC5B;IACD,IAAI,EAAE;QACL,cAAc,EAAE,SAAS;QACzB,YAAY,EAAE,SAAS;KACvB;CAC+B,CAAC;AAElC,eAAe,IAAI,CAAC;AAIpB,MAAM,YAAY,GAAG,GAAG,EAAE;IACzB,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAE/B,OAAO,CACN,KAAC,MAAM,IACN,QAAQ,EAAC,OAAO,EAChB,IAAI,EAAC,OAAO,EACZ,OAAO,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,gBACvB,QAAQ,YAEnB,KAAC,IAAI,IAAC,IAAI,EAAC,QAAQ,GAAG,GACd,CACT,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,OAAO,GAAU;IAC7B,MAAM,CAAC,IAAI;QACV,OAAO,CACN,MAAC,QAAQ,kBACR,KAAK,EAAE;gBACN,MAAM,EAAE,GAAG;gBACX,KAAK,EAAE,MAAM;aACb,IACG,IAAI,eAER,cAAK,GAAG,EAAC,mDAAmD,GAAG,EAC/D,KAAC,QAAQ,CAAC,OAAO,cAChB,KAAC,QAAQ,CAAC,YAAY,KAAG,GACP,EACnB,KAAC,QAAQ,CAAC,OAAO,IAAC,QAAQ,EAAC,cAAc,YACxC,KAAC,YAAY,KAAG,GACE,KACT,CACX,CAAC;IACH,CAAC;CACD,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAU;IACnC,MAAM,CAAC,IAAI;QACV,OAAO,CACN,MAAC,QAAQ,kBACR,KAAK,EAAE;gBACN,MAAM,EAAE,GAAG;gBACX,KAAK,EAAE,MAAM;aACb,EACD,WAAW,EAAE,GAAG,EAChB,OAAO,EAAE,IAAI,EACb,OAAO,EAAE,EAAE,IACP,IAAI,eAER,cACC,GAAG,EAAC,mDAAmD,EACvD,KAAK,EAAE,EAAE,GACR,EACF,KAAC,QAAQ,CAAC,OAAO,cAChB,KAAC,QAAQ,CAAC,YAAY,KAAG,GACP,EACnB,KAAC,QAAQ,CAAC,OAAO,IAAC,QAAQ,EAAC,cAAc,YACxC,KAAC,YAAY,KAAG,GACE,KACT,CACX,CAAC;IACH,CAAC;CACD,CAAC"}
@@ -1,6 +1,6 @@
1
- import { HTMLMotionProps } from 'motion/react';
1
+ import { ComponentProps } from 'react';
2
2
  import { ViewportState } from './ViewportState.js';
3
- export interface ViewportContentProps extends Omit<HTMLMotionProps<'div'>, 'viewport'> {
3
+ export interface ViewportContentProps extends Omit<ComponentProps<'div'>, 'viewport'> {
4
4
  viewport: ViewportState;
5
5
  }
6
6
  export declare function ViewportContent({ viewport, children, className, ...rest }: ViewportContentProps): import("react/jsx-runtime").JSX.Element;
@@ -12,53 +12,47 @@ var __rest = (this && this.__rest) || function (s, e) {
12
12
  import { jsx as _jsx } from "react/jsx-runtime";
13
13
  import { preventDefault } from '@a-type/utils';
14
14
  import clsx from 'clsx';
15
- import { motion, useMotionTemplate, useSpring, } from 'motion/react';
16
- import { useEffect, useRef } from 'react';
15
+ import { useCallback, useEffect, useRef } from 'react';
17
16
  import useMergedRef from '../../hooks/useMergedRef.js';
18
17
  import cls from './ViewportContent.module.css';
19
- const PAN_SPRING_CONFIG = {
20
- mass: 0.2,
21
- bounce: 0.05,
22
- };
23
- const ZOOM_SPRING_CONFIG = {
24
- mass: 0.5,
25
- bounce: 0.1,
26
- };
27
18
  export function ViewportContent(_a) {
28
19
  var { viewport, children, className } = _a, rest = __rest(_a, ["viewport", "children", "className"]);
29
20
  const internalRef = useRef(null);
30
- const centerX = useSpring(viewport.panPosition.x, PAN_SPRING_CONFIG);
31
- const centerY = useSpring(viewport.panPosition.y, PAN_SPRING_CONFIG);
32
- const zoom = useSpring(viewport.zoom, ZOOM_SPRING_CONFIG);
33
- useEffect(() => viewport.subscribe('centerChanged', (center, origin) => {
34
- if (origin === 'direct') {
35
- centerX.jump(-center.x);
36
- centerY.jump(-center.y);
21
+ const setPosition = useCallback(({ x, y, zoom }, immediate) => {
22
+ const current = internalRef.current;
23
+ if (current) {
24
+ if (immediate) {
25
+ current.style.setProperty('transition', 'none');
26
+ requestAnimationFrame(() => {
27
+ current.style.removeProperty('transition');
28
+ });
29
+ }
30
+ else {
31
+ current.style.removeProperty('transition');
32
+ }
33
+ if (x !== undefined) {
34
+ current.style.setProperty('--center-x', `${-x}px`);
35
+ }
36
+ if (y !== undefined) {
37
+ current.style.setProperty('--center-y', `${-y}px`);
38
+ }
39
+ if (zoom !== undefined) {
40
+ current.style.setProperty('--zoom', `${zoom}`);
41
+ }
37
42
  }
38
- else {
39
- centerX.set(-center.x);
40
- centerY.set(-center.y);
41
- }
42
- }), [viewport, centerX, centerY]);
43
+ }, []);
44
+ useEffect(() => viewport.subscribe('centerChanged', (center, origin) => {
45
+ setPosition({ x: center.x, y: center.y }, origin === 'direct');
46
+ }), [viewport]);
43
47
  useEffect(() => viewport.subscribe('zoomChanged', (zoomValue, origin) => {
44
- if (origin === 'direct') {
45
- zoom.jump(zoomValue);
46
- }
47
- else {
48
- zoom.set(zoomValue);
49
- }
50
- if (internalRef.current) {
51
- // disabled: this is causing recalculate style :(
52
- //internalRef.current.style.setProperty('--zoom', zoomValue.toString());
53
- }
54
- }), [viewport, zoom, internalRef]);
48
+ setPosition({ zoom: zoomValue }, origin === 'direct');
49
+ }), [viewport, internalRef]);
55
50
  useEffect(() => viewport.subscribe('zoomSettled', (zoom) => {
56
51
  if (internalRef.current) {
57
52
  internalRef.current.style.setProperty('--zoom-settled', zoom.toString());
58
53
  }
59
54
  }), [viewport, internalRef]);
60
55
  const finalRef = useMergedRef(viewport.bindContent, internalRef);
61
- const transform = useMotionTemplate `translate3d(calc(var(--root-width,0)/2), calc(var(--root-height,0)/2), 0) translate3d(-50%, -50%, 0) scale(${zoom}) translate3d(${centerX}px, ${centerY}px, 0)`;
62
- return (_jsx(motion.div, Object.assign({}, rest, { className: clsx(cls.root, className), ref: finalRef, style: { transform }, onDragStartCapture: preventDefault, onDrag: preventDefault, onDragEnd: preventDefault, children: children })));
56
+ return (_jsx("div", Object.assign({}, rest, { className: clsx(cls.root, className), ref: finalRef, onDragStartCapture: preventDefault, onDrag: preventDefault, onDragEnd: preventDefault, children: children })));
63
57
  }
64
58
  //# sourceMappingURL=ViewportContent.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ViewportContent.js","sourceRoot":"","sources":["../../../src/components/viewport/ViewportContent.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ViewportContent.js","sourceRoot":"","sources":["../../../src/components/viewport/ViewportContent.tsx"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAkB,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AACvE,OAAO,YAAY,MAAM,6BAA6B,CAAC;AACvD,OAAO,GAAG,MAAM,8BAA8B,CAAC;AAQ/C,MAAM,UAAU,eAAe,CAAC,EAKT;QALS,EAC/B,QAAQ,EACR,QAAQ,EACR,SAAS,OAEa,EADnB,IAAI,cAJwB,qCAK/B,CADO;IAEP,MAAM,WAAW,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IAEjD,MAAM,WAAW,GAAG,WAAW,CAC9B,CACC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAA6C,EACzD,SAAkB,EACjB,EAAE;QACH,MAAM,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC;QACpC,IAAI,OAAO,EAAE,CAAC;YACb,IAAI,SAAS,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;gBAChD,qBAAqB,CAAC,GAAG,EAAE;oBAC1B,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;gBAC5C,CAAC,CAAC,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACP,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;YAC5C,CAAC;YACD,IAAI,CAAC,KAAK,SAAS,EAAE,CAAC;gBACrB,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC;YACpD,CAAC;YACD,IAAI,CAAC,KAAK,SAAS,EAAE,CAAC;gBACrB,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC;YACpD,CAAC;YACD,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;gBACxB,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,QAAQ,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC;YAChD,CAAC;QACF,CAAC;IACF,CAAC,EACD,EAAE,CACF,CAAC;IAEF,SAAS,CACR,GAAG,EAAE,CACJ,QAAQ,CAAC,SAAS,CAAC,eAAe,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE;QACtD,WAAW,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,EAAE,EAAE,MAAM,KAAK,QAAQ,CAAC,CAAC;IAChE,CAAC,CAAC,EACH,CAAC,QAAQ,CAAC,CACV,CAAC;IACF,SAAS,CACR,GAAG,EAAE,CACJ,QAAQ,CAAC,SAAS,CAAC,aAAa,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE;QACvD,WAAW,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,MAAM,KAAK,QAAQ,CAAC,CAAC;IACvD,CAAC,CAAC,EACH,CAAC,QAAQ,EAAE,WAAW,CAAC,CACvB,CAAC;IAEF,SAAS,CACR,GAAG,EAAE,CACJ,QAAQ,CAAC,SAAS,CAAC,aAAa,EAAE,CAAC,IAAI,EAAE,EAAE;QAC1C,IAAI,WAAW,CAAC,OAAO,EAAE,CAAC;YACzB,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,CACpC,gBAAgB,EAChB,IAAI,CAAC,QAAQ,EAAE,CACf,CAAC;QACH,CAAC;IACF,CAAC,CAAC,EACH,CAAC,QAAQ,EAAE,WAAW,CAAC,CACvB,CAAC;IAEF,MAAM,QAAQ,GAAG,YAAY,CAC5B,QAAQ,CAAC,WAAW,EACpB,WAAW,CACX,CAAC;IAEF,OAAO,CACN,8BACK,IAAI,IACR,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,SAAS,CAAC,EACpC,GAAG,EAAE,QAAQ,EACb,kBAAkB,EAAE,cAAc,EAClC,MAAM,EAAE,cAAc,EACtB,SAAS,EAAE,cAAc,YAExB,QAAQ,IACJ,CACN,CAAC;AACH,CAAC"}
@@ -5,5 +5,34 @@
5
5
  user-select: none;
6
6
  overflow: visible;
7
7
  overscroll-behavior: none;
8
+ transition: transform var(--m-dur-long) var(--m-ease-out-loose);
9
+ will-change: transform;
10
+
11
+ --zoom: 1;
12
+ --center-x: 0px;
13
+ --center-y: 0px;
14
+ transform: translate3d(
15
+ calc(var(--root-width, 0px) / 2),
16
+ calc(var(--root-height, 0px) / 2),
17
+ 0
18
+ )
19
+ translate3d(-50%, -50%, 0) scale(var(--zoom))
20
+ translate3d(var(--center-x), var(--center-y), 0);
21
+ }
22
+
23
+ @property --zoom {
24
+ syntax: '<number>';
25
+ initial-value: 1;
26
+ inherits: false;
27
+ }
28
+ @property --center-x {
29
+ syntax: '<length>';
30
+ initial-value: 0px;
31
+ inherits: false;
32
+ }
33
+ @property --center-y {
34
+ syntax: '<length>';
35
+ initial-value: 0px;
36
+ inherits: false;
8
37
  }
9
38
  }
@@ -324,7 +324,6 @@ export class ViewportState extends EventSubscriber {
324
324
  }
325
325
  };
326
326
  this.setPan = (worldPosition, details) => {
327
- console.log('Setting pan to:', worldPosition);
328
327
  // worldPosition.x += this.contentOffset.x;
329
328
  // worldPosition.y += this.contentOffset.y;
330
329
  this.rawPan(worldPosition, details);
@@ -1 +1 @@
1
- {"version":3,"file":"ViewportState.js","sourceRoot":"","sources":["../../../src/components/viewport/ViewportState.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ViewportState.js","sourceRoot":"","sources":["../../../src/components/viewport/ViewportState.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,7 @@ var __rest = (this && this.__rest) || function (s, e) {
10
10
  return t;
11
11
  };
12
12
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
13
+ import { stopPropagation } from '@a-type/utils';
13
14
  import clsx from 'clsx';
14
15
  import { Box } from '../box/Box.js';
15
16
  import { Button } from '../button/Button.js';
@@ -31,6 +32,6 @@ export function ViewportZoomControls(_a) {
31
32
  const reset = () => {
32
33
  viewport.fitEverythingOnScreen({ origin: 'control' });
33
34
  };
34
- return (_jsxs(Box, Object.assign({ gap: true, col: true, className: clsx(className) }, props, { children: [fit && (_jsx(Button, { emphasis: "ghost", size: "small", onClick: reset, children: _jsx(Icon, { name: "maximize" }) })), zoomIn && (_jsx(Button, { emphasis: "ghost", size: "small", onClick: doZoomIn, children: _jsx(Icon, { name: "zoomIn" }) })), zoomOut && (_jsx(Button, { emphasis: "ghost", size: "small", onClick: doZoomOut, children: _jsx(Icon, { name: "zoomOut" }) }))] })));
35
+ return (_jsxs(Box, Object.assign({ gap: true, col: true, className: clsx(className), onPointerDown: stopPropagation, onPointerMove: stopPropagation, onPointerUp: stopPropagation }, props, { children: [fit && (_jsx(Button, { emphasis: "ghost", size: "small", onClick: reset, "aria-label": "Fit to screen", children: _jsx(Icon, { name: "maximize" }) })), zoomIn && (_jsx(Button, { emphasis: "ghost", size: "small", onClick: doZoomIn, "aria-label": "Zoom in", children: _jsx(Icon, { name: "zoomIn" }) })), zoomOut && (_jsx(Button, { emphasis: "ghost", size: "small", onClick: doZoomOut, "aria-label": "Zoom out", children: _jsx(Icon, { name: "zoomOut" }) }))] })));
35
36
  }
36
37
  //# sourceMappingURL=ViewportZoomControls.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ViewportZoomControls.js","sourceRoot":"","sources":["../../../src/components/viewport/ViewportZoomControls.tsx"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,GAAG,EAAY,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEnD,MAAM,UAAU,oBAAoB,CAAC,EAUpC;QAVoC,EACpC,SAAS,EACT,MAAM,GAAG,IAAI,EACb,OAAO,GAAG,IAAI,EACd,GAAG,GAAG,IAAI,OAMV,EALG,KAAK,cAL4B,yCAMpC,CADQ;IAMR,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAC/B,MAAM,QAAQ,GAAG,GAAG,EAAE;QACrB,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,GAAG,EAAE;YAChC,MAAM,EAAE,SAAS;SACjB,CAAC,CAAC;IACJ,CAAC,CAAC;IACF,MAAM,SAAS,GAAG,GAAG,EAAE;QACtB,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,GAAG,EAAE;YAChC,MAAM,EAAE,SAAS;SACjB,CAAC,CAAC;IACJ,CAAC,CAAC;IACF,MAAM,KAAK,GAAG,GAAG,EAAE;QAClB,QAAQ,CAAC,qBAAqB,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;IACvD,CAAC,CAAC;IACF,OAAO,CACN,MAAC,GAAG,kBAAC,GAAG,QAAC,GAAG,QAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,IAAM,KAAK,eAChD,GAAG,IAAI,CACP,KAAC,MAAM,IAAC,QAAQ,EAAC,OAAO,EAAC,IAAI,EAAC,OAAO,EAAC,OAAO,EAAE,KAAK,YACnD,KAAC,IAAI,IAAC,IAAI,EAAC,UAAU,GAAG,GAChB,CACT,EACA,MAAM,IAAI,CACV,KAAC,MAAM,IAAC,QAAQ,EAAC,OAAO,EAAC,IAAI,EAAC,OAAO,EAAC,OAAO,EAAE,QAAQ,YACtD,KAAC,IAAI,IAAC,IAAI,EAAC,QAAQ,GAAG,GACd,CACT,EACA,OAAO,IAAI,CACX,KAAC,MAAM,IAAC,QAAQ,EAAC,OAAO,EAAC,IAAI,EAAC,OAAO,EAAC,OAAO,EAAE,SAAS,YACvD,KAAC,IAAI,IAAC,IAAI,EAAC,SAAS,GAAG,GACf,CACT,KACI,CACN,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"ViewportZoomControls.js","sourceRoot":"","sources":["../../../src/components/viewport/ViewportZoomControls.tsx"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,GAAG,EAAY,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEnD,MAAM,UAAU,oBAAoB,CAAC,EAUpC;QAVoC,EACpC,SAAS,EACT,MAAM,GAAG,IAAI,EACb,OAAO,GAAG,IAAI,EACd,GAAG,GAAG,IAAI,OAMV,EALG,KAAK,cAL4B,yCAMpC,CADQ;IAMR,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAC/B,MAAM,QAAQ,GAAG,GAAG,EAAE;QACrB,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,GAAG,EAAE;YAChC,MAAM,EAAE,SAAS;SACjB,CAAC,CAAC;IACJ,CAAC,CAAC;IACF,MAAM,SAAS,GAAG,GAAG,EAAE;QACtB,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,GAAG,EAAE;YAChC,MAAM,EAAE,SAAS;SACjB,CAAC,CAAC;IACJ,CAAC,CAAC;IACF,MAAM,KAAK,GAAG,GAAG,EAAE;QAClB,QAAQ,CAAC,qBAAqB,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;IACvD,CAAC,CAAC;IACF,OAAO,CACN,MAAC,GAAG,kBACH,GAAG,QACH,GAAG,QACH,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,EAC1B,aAAa,EAAE,eAAe,EAC9B,aAAa,EAAE,eAAe,EAC9B,WAAW,EAAE,eAAe,IACxB,KAAK,eAER,GAAG,IAAI,CACP,KAAC,MAAM,IACN,QAAQ,EAAC,OAAO,EAChB,IAAI,EAAC,OAAO,EACZ,OAAO,EAAE,KAAK,gBACH,eAAe,YAE1B,KAAC,IAAI,IAAC,IAAI,EAAC,UAAU,GAAG,GAChB,CACT,EACA,MAAM,IAAI,CACV,KAAC,MAAM,IACN,QAAQ,EAAC,OAAO,EAChB,IAAI,EAAC,OAAO,EACZ,OAAO,EAAE,QAAQ,gBACN,SAAS,YAEpB,KAAC,IAAI,IAAC,IAAI,EAAC,QAAQ,GAAG,GACd,CACT,EACA,OAAO,IAAI,CACX,KAAC,MAAM,IACN,QAAQ,EAAC,OAAO,EAChB,IAAI,EAAC,OAAO,EACZ,OAAO,EAAE,SAAS,gBACP,UAAU,YAErB,KAAC,IAAI,IAAC,IAAI,EAAC,SAAS,GAAG,GACf,CACT,KACI,CACN,CAAC;AACH,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@a-type/ui",
3
- "version": "6.1.31",
3
+ "version": "6.1.33",
4
4
  "type": "module",
5
5
  "repository": {
6
6
  "url": "https://github.com/a-type/ui"
@@ -50,7 +50,6 @@
50
50
  "date-fns": "^4.1.0",
51
51
  "formik": "^2.4.6",
52
52
  "frimousse": "^0.2.0",
53
- "motion": "^12.23.6",
54
53
  "pluralize": "^8.0.0",
55
54
  "valtio": "^2.1.4"
56
55
  },
@@ -1,23 +1,14 @@
1
1
  .trigger {
2
2
  cursor: pointer;
3
-
4
- &:focus {
5
- outline: none;
6
- }
7
-
8
- &:focus-visible {
9
- @apply --mx-shadow;
10
- --mx-ring-value: --fn-focus-ring();
11
- border-radius: var(--m-action-rd);
12
- }
3
+ @apply --mx-focus;
13
4
  }
14
5
 
15
6
  .title {
16
7
  position: absolute;
17
- width: 1px;
18
- height: 1px;
8
+ width: --fn-literal(1px);
9
+ height: --fn-literal(1px);
19
10
  padding: 0;
20
- margin: -1px;
11
+ margin: --fn-literal(-1px);
21
12
  overflow: hidden;
22
13
  clip: rect(0, 0, 0, 0);
23
14
  white-space: nowrap;
@@ -40,7 +31,8 @@
40
31
  @apply --mx-bg(var(--m-gray-ink));
41
32
  @apply --mx-bg-faded(50%);
42
33
 
43
- &[data-state='closed'] {
34
+ &[data-starting-style],
35
+ &[data-ending-style] {
44
36
  opacity: 0;
45
37
  }
46
38
  }
@@ -70,7 +62,8 @@
70
62
  opacity 0.2s ease,
71
63
  transform 0.2s ease;
72
64
 
73
- &[data-state='closed'] {
65
+ &[data-starting-style],
66
+ &[data-ending-style] {
74
67
  opacity: 0;
75
68
  transform: translate(-50%, -45%) scale(0.95);
76
69
  }
@@ -53,7 +53,7 @@ function LightboxDefault({
53
53
  }) {
54
54
  return (
55
55
  <Dialog.Root>
56
- <Dialog.Trigger render={children}></Dialog.Trigger>
56
+ <Dialog.Trigger nativeButton={false} render={children}></Dialog.Trigger>
57
57
  <Dialog.Portal>
58
58
  <LightboxOverlay />
59
59
  <LightboxContent>{children}</LightboxContent>
@@ -10,6 +10,10 @@ const meta = {
10
10
  parameters: {
11
11
  controls: { expanded: true },
12
12
  },
13
+ args: {
14
+ onCenterChange: undefined,
15
+ onZoomChange: undefined,
16
+ },
13
17
  } satisfies Meta<typeof Viewport>;
14
18
 
15
19
  export default meta;
@@ -20,7 +24,12 @@ const CenterButton = () => {
20
24
  const viewport = useViewport();
21
25
 
22
26
  return (
23
- <Button emphasis="ghost" size="small" onClick={() => viewport.recenter()}>
27
+ <Button
28
+ emphasis="ghost"
29
+ size="small"
30
+ onClick={() => viewport.recenter()}
31
+ aria-label="Center"
32
+ >
24
33
  <Icon name="locate" />
25
34
  </Button>
26
35
  );
@@ -5,4 +5,33 @@
5
5
  user-select: none;
6
6
  overflow: visible;
7
7
  overscroll-behavior: none;
8
+ transition: transform var(--m-dur-long) var(--m-ease-out-loose);
9
+ will-change: transform;
10
+
11
+ --zoom: 1;
12
+ --center-x: 0px;
13
+ --center-y: 0px;
14
+ transform: translate3d(
15
+ calc(var(--root-width, 0px) / 2),
16
+ calc(var(--root-height, 0px) / 2),
17
+ 0
18
+ )
19
+ translate3d(-50%, -50%, 0) scale(var(--zoom))
20
+ translate3d(var(--center-x), var(--center-y), 0);
21
+ }
22
+
23
+ @property --zoom {
24
+ syntax: '<number>';
25
+ initial-value: 1;
26
+ inherits: false;
27
+ }
28
+ @property --center-x {
29
+ syntax: '<length>';
30
+ initial-value: 0px;
31
+ inherits: false;
32
+ }
33
+ @property --center-y {
34
+ syntax: '<length>';
35
+ initial-value: 0px;
36
+ inherits: false;
8
37
  }
@@ -1,31 +1,15 @@
1
1
  import { preventDefault } from '@a-type/utils';
2
2
  import clsx from 'clsx';
3
- import {
4
- HTMLMotionProps,
5
- motion,
6
- SpringOptions,
7
- useMotionTemplate,
8
- useSpring,
9
- } from 'motion/react';
10
- import { useEffect, useRef } from 'react';
3
+ import { ComponentProps, useCallback, useEffect, useRef } from 'react';
11
4
  import useMergedRef from '../../hooks/useMergedRef.js';
12
5
  import cls from './ViewportContent.module.css';
13
6
  import { ViewportState } from './ViewportState.js';
14
7
 
15
8
  export interface ViewportContentProps
16
- extends Omit<HTMLMotionProps<'div'>, 'viewport'> {
9
+ extends Omit<ComponentProps<'div'>, 'viewport'> {
17
10
  viewport: ViewportState;
18
11
  }
19
12
 
20
- const PAN_SPRING_CONFIG: SpringOptions = {
21
- mass: 0.2,
22
- bounce: 0.05,
23
- };
24
- const ZOOM_SPRING_CONFIG: SpringOptions = {
25
- mass: 0.5,
26
- bounce: 0.1,
27
- };
28
-
29
13
  export function ViewportContent({
30
14
  viewport,
31
15
  children,
@@ -34,37 +18,48 @@ export function ViewportContent({
34
18
  }: ViewportContentProps) {
35
19
  const internalRef = useRef<HTMLDivElement>(null);
36
20
 
37
- const centerX = useSpring(viewport.panPosition.x, PAN_SPRING_CONFIG);
38
- const centerY = useSpring(viewport.panPosition.y, PAN_SPRING_CONFIG);
39
- const zoom = useSpring(viewport.zoom, ZOOM_SPRING_CONFIG);
21
+ const setPosition = useCallback(
22
+ (
23
+ { x, y, zoom }: { x?: number; y?: number; zoom?: number },
24
+ immediate: boolean,
25
+ ) => {
26
+ const current = internalRef.current;
27
+ if (current) {
28
+ if (immediate) {
29
+ current.style.setProperty('transition', 'none');
30
+ requestAnimationFrame(() => {
31
+ current.style.removeProperty('transition');
32
+ });
33
+ } else {
34
+ current.style.removeProperty('transition');
35
+ }
36
+ if (x !== undefined) {
37
+ current.style.setProperty('--center-x', `${-x}px`);
38
+ }
39
+ if (y !== undefined) {
40
+ current.style.setProperty('--center-y', `${-y}px`);
41
+ }
42
+ if (zoom !== undefined) {
43
+ current.style.setProperty('--zoom', `${zoom}`);
44
+ }
45
+ }
46
+ },
47
+ [],
48
+ );
40
49
 
41
50
  useEffect(
42
51
  () =>
43
52
  viewport.subscribe('centerChanged', (center, origin) => {
44
- if (origin === 'direct') {
45
- centerX.jump(-center.x);
46
- centerY.jump(-center.y);
47
- } else {
48
- centerX.set(-center.x);
49
- centerY.set(-center.y);
50
- }
53
+ setPosition({ x: center.x, y: center.y }, origin === 'direct');
51
54
  }),
52
- [viewport, centerX, centerY],
55
+ [viewport],
53
56
  );
54
57
  useEffect(
55
58
  () =>
56
59
  viewport.subscribe('zoomChanged', (zoomValue, origin) => {
57
- if (origin === 'direct') {
58
- zoom.jump(zoomValue);
59
- } else {
60
- zoom.set(zoomValue);
61
- }
62
- if (internalRef.current) {
63
- // disabled: this is causing recalculate style :(
64
- //internalRef.current.style.setProperty('--zoom', zoomValue.toString());
65
- }
60
+ setPosition({ zoom: zoomValue }, origin === 'direct');
66
61
  }),
67
- [viewport, zoom, internalRef],
62
+ [viewport, internalRef],
68
63
  );
69
64
 
70
65
  useEffect(
@@ -85,19 +80,16 @@ export function ViewportContent({
85
80
  internalRef,
86
81
  );
87
82
 
88
- const transform = useMotionTemplate`translate3d(calc(var(--root-width,0)/2), calc(var(--root-height,0)/2), 0) translate3d(-50%, -50%, 0) scale(${zoom}) translate3d(${centerX}px, ${centerY}px, 0)`;
89
-
90
83
  return (
91
- <motion.div
84
+ <div
92
85
  {...rest}
93
86
  className={clsx(cls.root, className)}
94
87
  ref={finalRef}
95
- style={{ transform }}
96
88
  onDragStartCapture={preventDefault}
97
89
  onDrag={preventDefault}
98
90
  onDragEnd={preventDefault}
99
91
  >
100
92
  {children}
101
- </motion.div>
93
+ </div>
102
94
  );
103
95
  }
@@ -601,7 +601,6 @@ export class ViewportState extends EventSubscriber<ViewportEvents> {
601
601
  gestureComplete?: boolean;
602
602
  },
603
603
  ) => {
604
- console.log('Setting pan to:', worldPosition);
605
604
  // worldPosition.x += this.contentOffset.x;
606
605
  // worldPosition.y += this.contentOffset.y;
607
606
  this.rawPan(worldPosition, details);
@@ -1,3 +1,4 @@
1
+ import { stopPropagation } from '@a-type/utils';
1
2
  import clsx from 'clsx';
2
3
  import { Box, BoxProps } from '../box/Box.js';
3
4
  import { Button } from '../button/Button.js';
@@ -30,19 +31,42 @@ export function ViewportZoomControls({
30
31
  viewport.fitEverythingOnScreen({ origin: 'control' });
31
32
  };
32
33
  return (
33
- <Box gap col className={clsx(className)} {...props}>
34
+ <Box
35
+ gap
36
+ col
37
+ className={clsx(className)}
38
+ onPointerDown={stopPropagation}
39
+ onPointerMove={stopPropagation}
40
+ onPointerUp={stopPropagation}
41
+ {...props}
42
+ >
34
43
  {fit && (
35
- <Button emphasis="ghost" size="small" onClick={reset}>
44
+ <Button
45
+ emphasis="ghost"
46
+ size="small"
47
+ onClick={reset}
48
+ aria-label="Fit to screen"
49
+ >
36
50
  <Icon name="maximize" />
37
51
  </Button>
38
52
  )}
39
53
  {zoomIn && (
40
- <Button emphasis="ghost" size="small" onClick={doZoomIn}>
54
+ <Button
55
+ emphasis="ghost"
56
+ size="small"
57
+ onClick={doZoomIn}
58
+ aria-label="Zoom in"
59
+ >
41
60
  <Icon name="zoomIn" />
42
61
  </Button>
43
62
  )}
44
63
  {zoomOut && (
45
- <Button emphasis="ghost" size="small" onClick={doZoomOut}>
64
+ <Button
65
+ emphasis="ghost"
66
+ size="small"
67
+ onClick={doZoomOut}
68
+ aria-label="Zoom out"
69
+ >
46
70
  <Icon name="zoomOut" />
47
71
  </Button>
48
72
  )}