@mmmmzxe/react-360-viewer 0.1.12 → 0.1.14

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 (45) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +54 -663
  3. package/dist/inject-styles.js +1 -1
  4. package/dist/styles.css +1 -1
  5. package/package.json +3 -3
  6. package/src/components/ui/Badge/index.tsx +0 -45
  7. package/src/components/ui/Button/index.tsx +0 -67
  8. package/src/components/ui/Card/index.tsx +0 -74
  9. package/src/components/ui/Item/index.tsx +0 -136
  10. package/src/components/ui/Label/index.tsx +0 -20
  11. package/src/components/ui/Popover/index.tsx +0 -56
  12. package/src/components/ui/Separator/index.tsx +0 -30
  13. package/src/components/ui/Spinner/index.tsx +0 -11
  14. package/src/components/utils/index.ts +0 -6
  15. package/src/constants/viewer360ClassNames.ts +0 -42
  16. package/src/constants/viewer360Config.ts +0 -11
  17. package/src/constants/viewer360Labels.ts +0 -14
  18. package/src/constants/viewer360MarkerLabels.ts +0 -3
  19. package/src/feature/Viewer360.test.tsx +0 -47
  20. package/src/feature/Viewer360.tsx +0 -223
  21. package/src/feature/Viewer360AddModeBanner.tsx +0 -20
  22. package/src/feature/Viewer360FrameIndicator.tsx +0 -20
  23. package/src/feature/Viewer360HotspotOverlay.tsx +0 -57
  24. package/src/feature/Viewer360LoadingOverlay.tsx +0 -28
  25. package/src/feature/Viewer360MarkerPin.tsx +0 -105
  26. package/src/feature/Viewer360Toolbar.tsx +0 -75
  27. package/src/helpers/adjustViewerZoom.test.ts +0 -29
  28. package/src/helpers/adjustViewerZoom.ts +0 -64
  29. package/src/helpers/computeDragFrameIndex.test.ts +0 -20
  30. package/src/helpers/computeDragFrameIndex.ts +0 -23
  31. package/src/helpers/computeViewerImageLayout.test.ts +0 -48
  32. package/src/helpers/computeViewerImageLayout.ts +0 -114
  33. package/src/helpers/computeViewerPanOffset.ts +0 -18
  34. package/src/helpers/markerHelpers.test.ts +0 -38
  35. package/src/helpers/markerHelpers.ts +0 -33
  36. package/src/helpers/viewer360PropsHelpers.ts +0 -46
  37. package/src/helpers/viewerHelpers.ts +0 -74
  38. package/src/hooks/useViewer360.ts +0 -306
  39. package/src/index.ts +0 -68
  40. package/src/styles.css +0 -80
  41. package/src/types/Viewer360Hotspot.ts +0 -67
  42. package/src/types/Viewer360Marker.ts +0 -52
  43. package/src/types/Viewer360Props.ts +0 -108
  44. package/src/types/index.ts +0 -30
  45. package/src/utils/index.ts +0 -6
@@ -1,108 +0,0 @@
1
- import type { CSSProperties, MouseEvent, ReactNode } from 'react';
2
-
3
- import type {
4
- Viewer360Hotspot,
5
- Viewer360HotspotPosition,
6
- Viewer360HotspotRenderProps,
7
- Viewer360OverlayRenderProps,
8
- Viewer360ToolbarRenderProps,
9
- } from './Viewer360Hotspot';
10
- import type { Viewer360HotspotPinOptions } from './Viewer360Marker';
11
-
12
- export type Viewer360ClassNames = {
13
- root?: string;
14
- viewport?: string;
15
- canvas?: string;
16
- overlay?: string;
17
- loading?: string;
18
- loadingText?: string;
19
- frameIndicator?: string;
20
- hotspotModeBanner?: string;
21
- toolbar?: string;
22
- dragHint?: string;
23
- controls?: string;
24
- controlButton?: string;
25
- controlButtonActive?: string;
26
- controlButtonDisabled?: string;
27
- zoomDisplay?: string;
28
- divider?: string;
29
- };
30
-
31
- export type Viewer360Labels = {
32
- loading?: string;
33
- dragHint?: string;
34
- frameIndicator?: (params: { current: number; total: number; label?: string }) => string;
35
- zoom?: (percent: number) => string;
36
- hotspotModeActive?: string;
37
- addHotspot?: string;
38
- zoomIn?: string;
39
- zoomOut?: string;
40
- resetView?: string;
41
- deleteMarker?: string;
42
- };
43
-
44
- export type Viewer360Theme = {
45
- '--viewer-bg'?: string;
46
- '--viewer-border'?: string;
47
- '--viewer-text'?: string;
48
- '--viewer-muted'?: string;
49
- '--viewer-accent'?: string;
50
- '--viewer-accent-foreground'?: string;
51
- '--viewer-control-bg'?: string;
52
- '--viewer-control-border'?: string;
53
- '--viewer-hotspot-banner-bg'?: string;
54
- '--viewer-hotspot-banner-border'?: string;
55
- '--viewer-hotspot-banner-text'?: string;
56
- };
57
-
58
- export type Viewer360Props<TData = unknown> = {
59
- frames: import('./Viewer360Hotspot').Viewer360Frame[];
60
- currentFrameIndex?: number;
61
- defaultFrameIndex?: number;
62
- onFrameChange?: (index: number) => void;
63
- config?: import('./Viewer360Hotspot').Viewer360Config;
64
- className?: string;
65
- classNames?: Viewer360ClassNames;
66
- style?: CSSProperties;
67
- theme?: Viewer360Theme;
68
- labels?: Viewer360Labels;
69
- aspectRatio?: string;
70
- showZoomControls?: boolean;
71
- showResetControl?: boolean;
72
- showFrameIndicator?: boolean;
73
- showDragHint?: boolean;
74
- showHotspotModeControl?: boolean;
75
- hotspotPin?: Viewer360HotspotPinOptions<TData>;
76
- hotspots?: Viewer360Hotspot<TData>[];
77
- renderHotspot?: (props: Viewer360HotspotRenderProps<TData>) => ReactNode;
78
- renderLoading?: () => ReactNode;
79
- renderFrameIndicator?: (props: Viewer360OverlayRenderProps) => ReactNode;
80
- renderHotspotModeBanner?: (props: Pick<Viewer360OverlayRenderProps, 'labels'>) => ReactNode;
81
- renderToolbar?: (props: Viewer360ToolbarRenderProps) => ReactNode;
82
- onHotspotClick?: (hotspot: Viewer360Hotspot<TData>, event: MouseEvent<HTMLDivElement>) => void;
83
- hotspotMode?: boolean;
84
- defaultHotspotMode?: boolean;
85
- onHotspotModeChange?: (active: boolean) => void;
86
- onHotspotAdd?: (position: Viewer360HotspotPosition) => void;
87
- children?: ReactNode;
88
- };
89
-
90
- export type {
91
- Viewer360Hotspot,
92
- Viewer360HotspotPosition,
93
- Viewer360HotspotRenderProps,
94
- Viewer360OverlayRenderProps,
95
- Viewer360ToolbarRenderProps,
96
- Viewer360Config,
97
- Viewer360Frame,
98
- Viewer360PanOffset,
99
- } from './Viewer360Hotspot';
100
-
101
- export type {
102
- Viewer360HotspotPinOptions,
103
- Viewer360Marker,
104
- Viewer360MarkerPinClassNames,
105
- Viewer360MarkerPinLabels,
106
- Viewer360MarkerPinProps,
107
- Viewer360MarkerPinRenderProps,
108
- } from './Viewer360Marker';
@@ -1,30 +0,0 @@
1
- export { defaultViewer360Config } from '../constants/viewer360Config';
2
- export { defaultViewer360Labels } from '../constants/viewer360Labels';
3
- export { defaultViewer360MarkerPinLabels } from '../constants/viewer360MarkerLabels';
4
- export {
5
- defaultViewer360ClassNames,
6
- defaultViewer360MarkerPinClassNames,
7
- viewer360ClassNames,
8
- viewer360MarkerPinClassNames,
9
- } from '../constants/viewer360ClassNames';
10
-
11
- export type {
12
- Viewer360ClassNames,
13
- Viewer360Config,
14
- Viewer360Frame,
15
- Viewer360Hotspot,
16
- Viewer360HotspotPinOptions,
17
- Viewer360HotspotPosition,
18
- Viewer360HotspotRenderProps,
19
- Viewer360Labels,
20
- Viewer360Marker,
21
- Viewer360MarkerPinClassNames,
22
- Viewer360MarkerPinLabels,
23
- Viewer360MarkerPinProps,
24
- Viewer360MarkerPinRenderProps,
25
- Viewer360OverlayRenderProps,
26
- Viewer360PanOffset,
27
- Viewer360Props,
28
- Viewer360Theme,
29
- Viewer360ToolbarRenderProps,
30
- } from './Viewer360Props';
@@ -1,6 +0,0 @@
1
- import clsx, { type ClassValue } from 'clsx';
2
- import { twMerge } from 'tailwind-merge';
3
-
4
- export function cn(...inputs: ClassValue[]): string {
5
- return twMerge(clsx(inputs));
6
- }