cineview 0.0.1-beta
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/LICENSE +21 -0
- package/README.md +102 -0
- package/README.zh-CN.md +102 -0
- package/dist/animations/animationParser.d.ts +24 -0
- package/dist/animations/composer.d.ts +13 -0
- package/dist/animations/presets/blink.d.ts +18 -0
- package/dist/animations/presets/blur.d.ts +18 -0
- package/dist/animations/presets/bounce.d.ts +18 -0
- package/dist/animations/presets/elastic.d.ts +23 -0
- package/dist/animations/presets/fade.d.ts +18 -0
- package/dist/animations/presets/flip.d.ts +18 -0
- package/dist/animations/presets/index.d.ts +38 -0
- package/dist/animations/presets/rotate.d.ts +23 -0
- package/dist/animations/presets/shake.d.ts +28 -0
- package/dist/animations/presets/slide.d.ts +23 -0
- package/dist/animations/presets/special.d.ts +38 -0
- package/dist/animations/presets/zoom.d.ts +23 -0
- package/dist/animations/registry.d.ts +51 -0
- package/dist/artifacts.json +40 -0
- package/dist/blink-BGmsrTwW.mjs +81 -0
- package/dist/blur-CQoB_VWp.mjs +52 -0
- package/dist/bounce-B_QJxgOq.mjs +64 -0
- package/dist/cineview-dev.css +2 -0
- package/dist/cineview-dev.es.mjs +2 -0
- package/dist/cineview-drag.umd.js +2 -0
- package/dist/cineview-scroll.umd.js +2 -0
- package/dist/cineview.es.mjs +2 -0
- package/dist/cineview.umd.js +2 -0
- package/dist/components/Animate/Animate.d.ts +67 -0
- package/dist/components/Animate/AnimateRenderBridge.d.ts +16 -0
- package/dist/components/Animate/AnimateVideo.d.ts +59 -0
- package/dist/components/Animate/StaggerContainer.d.ts +35 -0
- package/dist/components/Animate/__fixtures__/animate-media-public-path.fixture.d.ts +1 -0
- package/dist/components/Animate/animateInterpolation.d.ts +41 -0
- package/dist/components/Animate/animateRenderState.d.ts +23 -0
- package/dist/components/Animate/animateSemantics.d.ts +38 -0
- package/dist/components/Animate/animateTimeline.d.ts +14 -0
- package/dist/components/Animate/dragVisualState.d.ts +26 -0
- package/dist/components/Animate/index.d.ts +6 -0
- package/dist/components/Animate/useAnimateArrival.d.ts +35 -0
- package/dist/components/Animate/useAnimateDrag.d.ts +34 -0
- package/dist/components/Animate/useAnimatePublicTimeline.d.ts +16 -0
- package/dist/components/Animate/useAnimateScroll.d.ts +83 -0
- package/dist/components/Animate/useAnimatedPropertyLanes.d.ts +30 -0
- package/dist/components/Animate/visibilityScheduler.d.ts +12 -0
- package/dist/components/Cineview/Cineview.d.ts +46 -0
- package/dist/components/Cineview/CineviewDispatch.d.ts +2 -0
- package/dist/components/Cineview/DirectScrollCineview.d.ts +8 -0
- package/dist/components/Cineview/DragSceneStack.d.ts +55 -0
- package/dist/components/Cineview/ScrollSceneSlot.d.ts +42 -0
- package/dist/components/Cineview/ScrollSceneStack.d.ts +13 -0
- package/dist/components/Cineview/ScrollbarOverlay.d.ts +24 -0
- package/dist/components/Cineview/directScrollHelpers.d.ts +77 -0
- package/dist/components/Cineview/index.d.ts +5 -0
- package/dist/components/Cineview/preloadTargets.d.ts +18 -0
- package/dist/components/Cineview/regroupCallbacks.d.ts +10 -0
- package/dist/components/Cineview/useCineviewImperativeApi.d.ts +21 -0
- package/dist/components/Cineview/useNativeScrollController.d.ts +38 -0
- package/dist/components/Cineview/useScrollInputBindings.d.ts +9 -0
- package/dist/components/Cineview/useScrollSceneLayout.d.ts +24 -0
- package/dist/components/Cineview/useScrollSceneSnapshots.d.ts +32 -0
- package/dist/components/Cineview/useScrollViewport.d.ts +20 -0
- package/dist/components/Cineview/useScrollZoneRegistry.d.ts +35 -0
- package/dist/components/Container/Container.d.ts +2 -0
- package/dist/components/Container/index.d.ts +1 -0
- package/dist/components/Image/Image.d.ts +12 -0
- package/dist/components/Image/index.d.ts +2 -0
- package/dist/components/Position/Position.d.ts +13 -0
- package/dist/components/Position/index.d.ts +1 -0
- package/dist/components/Scene/Scene.d.ts +10 -0
- package/dist/components/Scene/SceneFixedLayer.d.ts +14 -0
- package/dist/components/Scene/__fixtures__/scene-grouped-public-path.fixture.d.ts +1 -0
- package/dist/components/Scene/dragPreparedState.d.ts +49 -0
- package/dist/components/Scene/helpers.d.ts +101 -0
- package/dist/components/Scene/index.d.ts +1 -0
- package/dist/components/Scene/sceneScrollBudget.d.ts +38 -0
- package/dist/components/Scene/sceneScrollRuntime.d.ts +65 -0
- package/dist/components/Scene/types.d.ts +189 -0
- package/dist/components/Scene/useDragSceneEngine.d.ts +67 -0
- package/dist/components/Scene/useElementTrack.d.ts +82 -0
- package/dist/components/Scene/useNativePointerDrag.d.ts +25 -0
- package/dist/components/Scene/useSceneAnimationRegistry.d.ts +56 -0
- package/dist/components/Scene/useScenePointerInput.d.ts +28 -0
- package/dist/components/Scene/useSceneRuntimeState.d.ts +17 -0
- package/dist/components/Scene/useSceneScrollTakeover.d.ts +13 -0
- package/dist/components/Scene/useScrollSceneEngine.d.ts +28 -0
- package/dist/components/runtime/runtimeContext.d.ts +14 -0
- package/dist/components/runtime/scrollExternalStore.d.ts +13 -0
- package/dist/components/runtime/scrollSceneFrameStore.d.ts +29 -0
- package/dist/context/CineviewContext.d.ts +25 -0
- package/dist/dev/PerfPanel.d.ts +16 -0
- package/dist/dev/index.d.ts +14 -0
- package/dist/dev/usePerfMonitor.d.ts +9 -0
- package/dist/drag-scene-engine-y8Wj9ivV.mjs +270 -0
- package/dist/elastic-CBP_FdRv.mjs +129 -0
- package/dist/element-track-Du10P12_.mjs +316 -0
- package/dist/entry-drag.d.ts +14 -0
- package/dist/entry-scroll.d.ts +14 -0
- package/dist/fade-DXxFsgxR.mjs +22 -0
- package/dist/flip-CrCoNIws.mjs +49 -0
- package/dist/hooks/imagePreloadCache.d.ts +4 -0
- package/dist/hooks/mediaPreloadCache.d.ts +31 -0
- package/dist/hooks/useFirstSceneEnter.d.ts +65 -0
- package/dist/hooks/useImagePreloader.d.ts +31 -0
- package/dist/hooks/usePrefersReducedMotion.d.ts +12 -0
- package/dist/hooks/useSceneManager.d.ts +79 -0
- package/dist/index.d.ts +17 -0
- package/dist/media/VideoFrameRenderer.d.ts +48 -0
- package/dist/media/videoPlaybackOwnership.d.ts +63 -0
- package/dist/performance-monitor-AlOOwzY_.mjs +73 -0
- package/dist/public-api.d.ts +12 -0
- package/dist/rotate-BMEBKDk5.mjs +69 -0
- package/dist/scene-animation-registry-8b0m_IaZ.mjs +422 -0
- package/dist/shake-BV6SdR9O.mjs +171 -0
- package/dist/slide-DWmVtj0L.mjs +63 -0
- package/dist/special-DDz8BopB.mjs +224 -0
- package/dist/types/index.d.ts +552 -0
- package/dist/utils/animationHelpers.d.ts +15 -0
- package/dist/utils/debounce.d.ts +18 -0
- package/dist/utils/devLog.d.ts +16 -0
- package/dist/utils/dragTimelineMapping.d.ts +30 -0
- package/dist/utils/gestureDetector.d.ts +67 -0
- package/dist/utils/performanceMonitor.d.ts +66 -0
- package/dist/utils/styleConvert.d.ts +7 -0
- package/dist/utils/useIsomorphicLayoutEffect.d.ts +22 -0
- package/dist/utils/useStructurallyStableValue.d.ts +5 -0
- package/dist/zoom-CuAthpqd.mjs +63 -0
- package/package.json +171 -0
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { GestureType } from '../types';
|
|
2
|
+
/**
|
|
3
|
+
* Gesture detection configuration
|
|
4
|
+
*/
|
|
5
|
+
interface GestureConfig {
|
|
6
|
+
minSwipeDistance?: number;
|
|
7
|
+
maxSwipeTime?: number;
|
|
8
|
+
direction?: 'x' | 'y' | 'both';
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Gesture detector class
|
|
12
|
+
*/
|
|
13
|
+
export declare class GestureDetector {
|
|
14
|
+
private startPos;
|
|
15
|
+
private config;
|
|
16
|
+
constructor(config?: GestureConfig);
|
|
17
|
+
/**
|
|
18
|
+
* Handle touch or mouse start event
|
|
19
|
+
*/
|
|
20
|
+
handleStart(event: TouchEvent | MouseEvent): void;
|
|
21
|
+
/**
|
|
22
|
+
* Handle touch or mouse end event
|
|
23
|
+
* @returns Detected gesture type
|
|
24
|
+
*/
|
|
25
|
+
handleEnd(event: TouchEvent | MouseEvent): GestureType;
|
|
26
|
+
/**
|
|
27
|
+
* Get current drag progress (0-1)
|
|
28
|
+
* @param event - Current event
|
|
29
|
+
* @param containerSize - Container size (width or height)
|
|
30
|
+
* @returns Drag progress
|
|
31
|
+
*/
|
|
32
|
+
getDragProgress(event: TouchEvent | MouseEvent, containerSize: number): number;
|
|
33
|
+
/**
|
|
34
|
+
* Reset gesture detector
|
|
35
|
+
*/
|
|
36
|
+
reset(): void;
|
|
37
|
+
/**
|
|
38
|
+
* Extract position from event
|
|
39
|
+
*/
|
|
40
|
+
private getPosition;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Create gesture detector
|
|
44
|
+
* @param config - Gesture detection configuration
|
|
45
|
+
* @returns Gesture detector instance
|
|
46
|
+
*/
|
|
47
|
+
export declare function createGestureDetector(config?: GestureConfig): GestureDetector;
|
|
48
|
+
/**
|
|
49
|
+
* Detect if device supports touch
|
|
50
|
+
*/
|
|
51
|
+
export declare function isTouchDevice(): boolean;
|
|
52
|
+
/**
|
|
53
|
+
* Simple gesture detection function
|
|
54
|
+
* @param start - Start position
|
|
55
|
+
* @param end - End position
|
|
56
|
+
* @param direction - Detection direction
|
|
57
|
+
* @param minDistance - Minimum swipe distance
|
|
58
|
+
* @returns Gesture type
|
|
59
|
+
*/
|
|
60
|
+
export declare function detectGesture(start: {
|
|
61
|
+
x: number;
|
|
62
|
+
y: number;
|
|
63
|
+
}, end: {
|
|
64
|
+
x: number;
|
|
65
|
+
y: number;
|
|
66
|
+
}, direction?: 'x' | 'y', minDistance?: number): GestureType;
|
|
67
|
+
export {};
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { PerformanceMetrics } from '../types';
|
|
2
|
+
export type { PerformanceMetrics };
|
|
3
|
+
export declare class PerformanceMonitor {
|
|
4
|
+
private frameCount;
|
|
5
|
+
private lastTime;
|
|
6
|
+
private frameTimes;
|
|
7
|
+
private memorySamples;
|
|
8
|
+
private lastMemorySampleTime;
|
|
9
|
+
private cachedMemoryUsage;
|
|
10
|
+
private cachedBundleSizeKb;
|
|
11
|
+
private rafId;
|
|
12
|
+
private isMonitoring;
|
|
13
|
+
private measure;
|
|
14
|
+
constructor();
|
|
15
|
+
/**
|
|
16
|
+
* Start performance monitoring
|
|
17
|
+
*/
|
|
18
|
+
start(): void;
|
|
19
|
+
/**
|
|
20
|
+
* Stop performance monitoring
|
|
21
|
+
*/
|
|
22
|
+
stop(): void;
|
|
23
|
+
/**
|
|
24
|
+
* Get current performance metrics
|
|
25
|
+
*/
|
|
26
|
+
getMetrics(): PerformanceMetrics;
|
|
27
|
+
/**
|
|
28
|
+
* Calculate average frame time
|
|
29
|
+
*/
|
|
30
|
+
private calculateAvgFrameTime;
|
|
31
|
+
/**
|
|
32
|
+
* Get memory usage (if browser supports it)
|
|
33
|
+
* @returns Memory usage in MB
|
|
34
|
+
*/
|
|
35
|
+
private getMemoryUsage;
|
|
36
|
+
private sampleMemory;
|
|
37
|
+
private getBundleSizeKb;
|
|
38
|
+
private estimateBundleSizeKb;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Create performance monitor instance
|
|
42
|
+
*/
|
|
43
|
+
export declare const createPerformanceMonitor: () => PerformanceMonitor;
|
|
44
|
+
export declare const performanceMonitor: PerformanceMonitor;
|
|
45
|
+
/**
|
|
46
|
+
* Acquire page-level performance monitoring for a mounted Cineview instance.
|
|
47
|
+
* First lease starts monitoring, stops only after last lease is released; release is idempotent.
|
|
48
|
+
*/
|
|
49
|
+
export declare const acquirePerformanceMonitoring: () => (() => void);
|
|
50
|
+
/**
|
|
51
|
+
* Start performance monitoring (using singleton)
|
|
52
|
+
*/
|
|
53
|
+
export declare const startPerformanceMonitoring: () => void;
|
|
54
|
+
/**
|
|
55
|
+
* Stop performance monitoring (using singleton)
|
|
56
|
+
*/
|
|
57
|
+
export declare const stopPerformanceMonitoring: () => void;
|
|
58
|
+
/**
|
|
59
|
+
* Get performance metrics (using singleton)
|
|
60
|
+
*/
|
|
61
|
+
export declare const getPerformanceMetrics: () => PerformanceMetrics;
|
|
62
|
+
/**
|
|
63
|
+
* Get global performance monitor instance
|
|
64
|
+
* @deprecated Use performanceMonitor singleton instead
|
|
65
|
+
*/
|
|
66
|
+
export declare const getGlobalPerformanceMonitor: () => PerformanceMonitor;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { CSSProperties } from 'react';
|
|
2
|
+
/** Single-ruler converter interface (avoids circular dependency on context). */
|
|
3
|
+
export interface ScaleConverter {
|
|
4
|
+
convert: (value: number) => number;
|
|
5
|
+
}
|
|
6
|
+
export declare const convertNumericStyleValue: (key: string, value: unknown, context: ScaleConverter | null) => unknown;
|
|
7
|
+
export declare const convertStyle: (style: CSSProperties | undefined, context: ScaleConverter | null) => CSSProperties | undefined;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { useEffect } from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* SSR-safe `useLayoutEffect`.
|
|
4
|
+
*
|
|
5
|
+
* Background: `useLayoutEffect` does not execute during server-side rendering,
|
|
6
|
+
* causing React to emit "useLayoutEffect does nothing on the server" warnings.
|
|
7
|
+
* For a library, this warning appears directly in the consumer's (Next.js / Remix, etc.)
|
|
8
|
+
* server console, even though the library itself has no layout measurements to perform.
|
|
9
|
+
*
|
|
10
|
+
* The fix is a standard community pattern: fall back to `useEffect` when DOM is absent.
|
|
11
|
+
* Neither hook executes on the server, so **client-side behavior is unchanged** — this
|
|
12
|
+
* only suppresses the meaningless server-side warning.
|
|
13
|
+
*
|
|
14
|
+
* Detection uses `typeof document !== 'undefined'` rather than `window`: both are absent
|
|
15
|
+
* in SSR scenarios, but `document` is the actual dependency for layout measurements,
|
|
16
|
+
* making it semantically more precise.
|
|
17
|
+
*
|
|
18
|
+
* Note: this constant is evaluated once at module load time. The library's entire output
|
|
19
|
+
* runs in either browser or server environment for its full lifecycle — there is no
|
|
20
|
+
* mid-execution DOM acquisition, so re-checking on every render is unnecessary.
|
|
21
|
+
*/
|
|
22
|
+
export declare const useIsomorphicLayoutEffect: typeof useEffect;
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
var a = {
|
|
2
|
+
"zoom-in": {
|
|
3
|
+
initial: {
|
|
4
|
+
scale: 0,
|
|
5
|
+
opacity: 0
|
|
6
|
+
},
|
|
7
|
+
animate: {
|
|
8
|
+
scale: 1,
|
|
9
|
+
opacity: 1
|
|
10
|
+
},
|
|
11
|
+
exit: {
|
|
12
|
+
scale: 0,
|
|
13
|
+
opacity: 0
|
|
14
|
+
}
|
|
15
|
+
},
|
|
16
|
+
"zoom-out": {
|
|
17
|
+
initial: {
|
|
18
|
+
scale: 1.5,
|
|
19
|
+
opacity: 0
|
|
20
|
+
},
|
|
21
|
+
animate: {
|
|
22
|
+
scale: 1,
|
|
23
|
+
opacity: 1
|
|
24
|
+
},
|
|
25
|
+
exit: {
|
|
26
|
+
scale: 1.5,
|
|
27
|
+
opacity: 0
|
|
28
|
+
}
|
|
29
|
+
},
|
|
30
|
+
"scale-up": {
|
|
31
|
+
initial: {
|
|
32
|
+
scale: 0.5,
|
|
33
|
+
opacity: 0
|
|
34
|
+
},
|
|
35
|
+
animate: {
|
|
36
|
+
scale: 1,
|
|
37
|
+
opacity: 1
|
|
38
|
+
},
|
|
39
|
+
exit: {
|
|
40
|
+
scale: 1.5,
|
|
41
|
+
opacity: 0
|
|
42
|
+
}
|
|
43
|
+
},
|
|
44
|
+
"scale-down": {
|
|
45
|
+
initial: {
|
|
46
|
+
scale: 1.5,
|
|
47
|
+
opacity: 0
|
|
48
|
+
},
|
|
49
|
+
animate: {
|
|
50
|
+
scale: 1,
|
|
51
|
+
opacity: 1
|
|
52
|
+
},
|
|
53
|
+
exit: {
|
|
54
|
+
scale: 0.5,
|
|
55
|
+
opacity: 0
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
};
|
|
59
|
+
export {
|
|
60
|
+
a as zoomAnimations
|
|
61
|
+
};
|
|
62
|
+
|
|
63
|
+
//# sourceMappingURL=zoom-CuAthpqd.mjs.map
|
package/package.json
ADDED
|
@@ -0,0 +1,171 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "cineview",
|
|
3
|
+
"version": "0.0.1-beta",
|
|
4
|
+
"description": "React UI framework for creating cinematic full-screen sliding pages",
|
|
5
|
+
"main": "dist/cineview.umd.js",
|
|
6
|
+
"module": "dist/cineview.es.mjs",
|
|
7
|
+
"types": "dist/index.d.ts",
|
|
8
|
+
"exports": {
|
|
9
|
+
".": {
|
|
10
|
+
"types": "./dist/index.d.ts",
|
|
11
|
+
"import": "./dist/cineview.es.mjs",
|
|
12
|
+
"require": "./dist/cineview.umd.js"
|
|
13
|
+
},
|
|
14
|
+
"./drag": {
|
|
15
|
+
"types": "./dist/entry-drag.d.ts",
|
|
16
|
+
"require": "./dist/cineview-drag.umd.js"
|
|
17
|
+
},
|
|
18
|
+
"./scroll": {
|
|
19
|
+
"types": "./dist/entry-scroll.d.ts",
|
|
20
|
+
"require": "./dist/cineview-scroll.umd.js"
|
|
21
|
+
},
|
|
22
|
+
"./dev": {
|
|
23
|
+
"types": "./dist/dev/index.d.ts",
|
|
24
|
+
"import": "./dist/cineview-dev.es.mjs"
|
|
25
|
+
},
|
|
26
|
+
"./dev/style.css": "./dist/cineview-dev.css"
|
|
27
|
+
},
|
|
28
|
+
"sideEffects": [
|
|
29
|
+
"**/*.css"
|
|
30
|
+
],
|
|
31
|
+
"files": [
|
|
32
|
+
"dist/**/*.js",
|
|
33
|
+
"dist/**/*.mjs",
|
|
34
|
+
"dist/**/*.d.ts",
|
|
35
|
+
"dist/**/*.css",
|
|
36
|
+
"dist/artifacts.json"
|
|
37
|
+
],
|
|
38
|
+
"scripts": {
|
|
39
|
+
"dev": "vite",
|
|
40
|
+
"build": "node scripts/build-all.mjs && node scripts/minify-library-entries.mjs",
|
|
41
|
+
"build:verify": "pnpm run build && node scripts/verify-build.js",
|
|
42
|
+
"preview": "vite preview",
|
|
43
|
+
"test": "jest",
|
|
44
|
+
"test:examples": "jest --runInBand src/__tests__/site/acceptanceFixtures.test.ts && pnpm --dir examples/minimal build",
|
|
45
|
+
"test:site-contracts": "jest --runInBand src/__tests__/site",
|
|
46
|
+
"test:browser": "pnpm build && pnpm --dir site acceptance:browser",
|
|
47
|
+
"quality:duplicates": "jscpd --config .jscpd.json src",
|
|
48
|
+
"verify:failure-injection": "node scripts/verify-failure-injection.js",
|
|
49
|
+
"verify:browser-failure-injection": "pnpm --dir site acceptance:failure-injection",
|
|
50
|
+
"test:watch": "jest --watch",
|
|
51
|
+
"test:coverage": "jest --coverage",
|
|
52
|
+
"test:coverage:framework": "jest --config jest.framework.config.js --coverage --runInBand && node scripts/write-coverage-badge.mjs",
|
|
53
|
+
"test:coverage:watch": "jest --coverage --watch",
|
|
54
|
+
"lint": "eslint src",
|
|
55
|
+
"lint:fix": "eslint src --fix",
|
|
56
|
+
"format": "pnpm format:framework && pnpm format:site",
|
|
57
|
+
"format:framework": "prettier --write \"src/**/*.{ts,tsx}\" \"examples/minimal/src/**/*.{ts,tsx}\" \".github/**/*.{yml,yaml}\" \"*.{ts,js,json,md}\" \"scripts/*.{js,mjs}\"",
|
|
58
|
+
"format:site": "prettier --write \"site/src/**/*.{ts,tsx,css}\" \"site/*.{ts,json,html}\" \"site/tools/{acceptance-drag,acceptance-scroll,profile-production,verify-browser-failure-injection}.mjs\"",
|
|
59
|
+
"format:check": "pnpm format:check:framework && pnpm format:check:site",
|
|
60
|
+
"format:check:framework": "prettier --check \"src/**/*.{ts,tsx}\" \"examples/minimal/src/**/*.{ts,tsx}\" \".github/**/*.{yml,yaml}\" \"*.{ts,js,json,md}\" \"scripts/*.{js,mjs}\"",
|
|
61
|
+
"format:check:site": "prettier --check \"site/src/**/*.{ts,tsx,css}\" \"site/*.{ts,json,html}\" \"site/tools/{acceptance-drag,acceptance-scroll,profile-production,verify-browser-failure-injection}.mjs\"",
|
|
62
|
+
"type-check": "tsc --noEmit",
|
|
63
|
+
"type-check:framework": "tsc -p tsconfig.framework.json --noEmit",
|
|
64
|
+
"type-check:site": "pnpm --dir site type-check",
|
|
65
|
+
"type-check:examples": "pnpm --dir examples/minimal type-check",
|
|
66
|
+
"prepublishOnly": "pnpm verify:framework:static",
|
|
67
|
+
"prepare": "husky",
|
|
68
|
+
"analyze": "vite build && open stats.html",
|
|
69
|
+
"lighthouse": "lighthouse http://localhost:3000 --view",
|
|
70
|
+
"verify:repository": "node scripts/verify-repository.mjs",
|
|
71
|
+
"verify:framework:static": "pnpm verify:repository && pnpm format:check:framework && pnpm type-check:framework && pnpm type-check:examples && pnpm lint && pnpm test:coverage:framework && pnpm test:examples && pnpm quality:duplicates && pnpm build:verify && pnpm verify:failure-injection",
|
|
72
|
+
"verify:framework": "pnpm verify:framework:static && pnpm test:browser && pnpm verify:browser-failure-injection",
|
|
73
|
+
"docs:style:static": "pnpm --dir site exec node tools/docs-style-probe.mjs --static",
|
|
74
|
+
"docs:style": "pnpm --dir site exec node tools/docs-style-probe.mjs",
|
|
75
|
+
"a11y:probe": "pnpm --dir site exec node tools/a11y-probe.mjs",
|
|
76
|
+
"verify:all": "pnpm verify:framework && pnpm format:check:site && pnpm type-check && pnpm type-check:site && pnpm test:site-contracts && pnpm docs:style:static",
|
|
77
|
+
"verify": "pnpm verify:all",
|
|
78
|
+
"docs:links": "node scripts/verify-documentation.mjs",
|
|
79
|
+
"audit:all": "node scripts/audit-all.mjs",
|
|
80
|
+
"profile:browser": "pnpm --dir site profile:browser"
|
|
81
|
+
},
|
|
82
|
+
"peerDependencies": {
|
|
83
|
+
"framer-motion": "^13.0.0",
|
|
84
|
+
"react": "^19.0.0",
|
|
85
|
+
"react-dom": "^19.0.0"
|
|
86
|
+
},
|
|
87
|
+
"devDependencies": {
|
|
88
|
+
"@eslint/js": "^10.0.1",
|
|
89
|
+
"@fast-check/jest": "^2.2.0",
|
|
90
|
+
"@testing-library/dom": "^10.4.1",
|
|
91
|
+
"@testing-library/jest-dom": "^7.0.1",
|
|
92
|
+
"@testing-library/react": "^16.3.3",
|
|
93
|
+
"@testing-library/user-event": "^14.0.0",
|
|
94
|
+
"@types/jest": "^30.0.0",
|
|
95
|
+
"@types/node": "^26.4.1",
|
|
96
|
+
"@types/react": "^19.0.0",
|
|
97
|
+
"@types/react-dom": "^19.0.0",
|
|
98
|
+
"@typescript-eslint/eslint-plugin": "^8.69.0",
|
|
99
|
+
"@typescript-eslint/parser": "^8.69.0",
|
|
100
|
+
"@vitejs/plugin-react": "^6.1.1",
|
|
101
|
+
"esbuild": "^0.28.2",
|
|
102
|
+
"eslint": "^10.9.1",
|
|
103
|
+
"eslint-config-prettier": "^10.1.8",
|
|
104
|
+
"eslint-plugin-react": "^7.0.0",
|
|
105
|
+
"eslint-plugin-react-hooks": "^7.1.1",
|
|
106
|
+
"fast-check": "^4.6.0",
|
|
107
|
+
"framer-motion": "^13.2.0",
|
|
108
|
+
"globals": "^16.5.0",
|
|
109
|
+
"husky": "^9.1.7",
|
|
110
|
+
"jest": "^30.5.1",
|
|
111
|
+
"jest-environment-jsdom": "^30.5.1",
|
|
112
|
+
"jscpd": "5.1.1",
|
|
113
|
+
"lint-staged": "^17.4.1",
|
|
114
|
+
"playwright": "^1.63.0",
|
|
115
|
+
"prettier": "^3.0.0",
|
|
116
|
+
"react": "^19.2.8",
|
|
117
|
+
"react-dom": "^19.2.8",
|
|
118
|
+
"rollup-plugin-visualizer": "^7.1.1",
|
|
119
|
+
"terser": "5.46.1",
|
|
120
|
+
"ts-jest": "^29.4.12",
|
|
121
|
+
"ts-prune": "^0.10.3",
|
|
122
|
+
"typescript": "^5.9.3",
|
|
123
|
+
"typescript-eslint": "^8.69.0",
|
|
124
|
+
"vite": "^8.2.2",
|
|
125
|
+
"vite-plugin-compression": "^0.5.0",
|
|
126
|
+
"vite-plugin-dts": "^5.1.0"
|
|
127
|
+
},
|
|
128
|
+
"keywords": [
|
|
129
|
+
"react",
|
|
130
|
+
"ui",
|
|
131
|
+
"framework",
|
|
132
|
+
"animation",
|
|
133
|
+
"fullscreen",
|
|
134
|
+
"slider",
|
|
135
|
+
"cinematic"
|
|
136
|
+
],
|
|
137
|
+
"author": "Alien.mu",
|
|
138
|
+
"license": "MIT",
|
|
139
|
+
"repository": {
|
|
140
|
+
"type": "git",
|
|
141
|
+
"url": "https://github.com/AlienMu/cineview.git"
|
|
142
|
+
},
|
|
143
|
+
"homepage": "https://cineview.pages.dev",
|
|
144
|
+
"bugs": {
|
|
145
|
+
"url": "https://github.com/AlienMu/cineview/issues"
|
|
146
|
+
},
|
|
147
|
+
"packageManager": "pnpm@10.22.0",
|
|
148
|
+
"browserslist": [
|
|
149
|
+
"chrome >= 85",
|
|
150
|
+
"edge >= 85",
|
|
151
|
+
"firefox >= 79",
|
|
152
|
+
"safari >= 14",
|
|
153
|
+
"ios_saf >= 14",
|
|
154
|
+
"not dead"
|
|
155
|
+
],
|
|
156
|
+
"engines": {
|
|
157
|
+
"node": ">=18.0.0"
|
|
158
|
+
},
|
|
159
|
+
"pnpm": {
|
|
160
|
+
"overrides": {
|
|
161
|
+
"minimatch": ">=3.1.3"
|
|
162
|
+
}
|
|
163
|
+
},
|
|
164
|
+
"devEngines": {
|
|
165
|
+
"runtime": {
|
|
166
|
+
"name": "node",
|
|
167
|
+
"version": "^22.22.1 || >=24.0.0",
|
|
168
|
+
"onFail": "error"
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
}
|