@fjandin/react-shader 0.0.14 → 0.0.15
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/ReactShader.d.ts +1 -1
- package/dist/ReactShader.d.ts.map +1 -1
- package/dist/example/frontend.d.ts.map +1 -1
- package/dist/hooks/useWebGL.d.ts +1 -0
- package/dist/hooks/useWebGL.d.ts.map +1 -1
- package/dist/index.cjs +17 -1
- package/dist/index.js +17 -1
- package/dist/types.d.ts +1 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/ReactShader.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import type { ReactShaderProps } from "./types";
|
|
2
|
-
export declare function ReactShader({ className, fragment, vertex, uniforms, fullscreen, timeScale, onFrame, onClick, onMouseMove, onMouseDown, onMouseUp, }: ReactShaderProps): import("react/jsx-runtime").JSX.Element;
|
|
2
|
+
export declare function ReactShader({ className, fragment, vertex, uniforms, fullscreen, timeScale, onFrame, onClick, onMouseMove, onMouseDown, onMouseUp, onMouseWheel, }: ReactShaderProps): import("react/jsx-runtime").JSX.Element;
|
|
3
3
|
//# sourceMappingURL=ReactShader.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReactShader.d.ts","sourceRoot":"","sources":["../src/ReactShader.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAgC/C,wBAAgB,WAAW,CAAC,EAC1B,SAAS,EACT,QAAQ,EACR,MAAuB,EACvB,QAAQ,EACR,UAAkB,EAClB,SAAa,EACb,OAAO,EACP,OAAO,EACP,WAAW,EACX,WAAW,EACX,SAAS,
|
|
1
|
+
{"version":3,"file":"ReactShader.d.ts","sourceRoot":"","sources":["../src/ReactShader.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAgC/C,wBAAgB,WAAW,CAAC,EAC1B,SAAS,EACT,QAAQ,EACR,MAAuB,EACvB,QAAQ,EACR,UAAkB,EAClB,SAAa,EACb,OAAO,EACP,OAAO,EACP,WAAW,EACX,WAAW,EACX,SAAS,EACT,YAAY,GACb,EAAE,gBAAgB,2CA0DlB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"frontend.d.ts","sourceRoot":"","sources":["../../src/example/frontend.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,aAAa,CAAA;AAiHpB,wBAAgB,GAAG,
|
|
1
|
+
{"version":3,"file":"frontend.d.ts","sourceRoot":"","sources":["../../src/example/frontend.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,aAAa,CAAA;AAiHpB,wBAAgB,GAAG,4CAwGlB"}
|
package/dist/hooks/useWebGL.d.ts
CHANGED
|
@@ -9,6 +9,7 @@ interface UseWebGLOptions {
|
|
|
9
9
|
onMouseDown?: (info: FrameInfo) => void;
|
|
10
10
|
onMouseUp?: (info: FrameInfo) => void;
|
|
11
11
|
onMouseMove?: (info: FrameInfo) => void;
|
|
12
|
+
onMouseWheel?: (info: FrameInfo, wheelDelta: number) => void;
|
|
12
13
|
timeScale?: number;
|
|
13
14
|
}
|
|
14
15
|
export declare function useWebGL(options: UseWebGLOptions): {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useWebGL.d.ts","sourceRoot":"","sources":["../../src/hooks/useWebGL.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAKvD,UAAU,eAAe;IACvB,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;IACvC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAA;IAChC,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,CAAA;IACnC,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,CAAA;IACnC,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,CAAA;IACvC,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,CAAA;IACrC,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,CAAA;IACvC,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAwED,wBAAgB,QAAQ,CAAC,OAAO,EAAE,eAAe;;;
|
|
1
|
+
{"version":3,"file":"useWebGL.d.ts","sourceRoot":"","sources":["../../src/hooks/useWebGL.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAKvD,UAAU,eAAe;IACvB,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;IACvC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAA;IAChC,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,CAAA;IACnC,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,CAAA;IACnC,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,CAAA;IACvC,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,CAAA;IACrC,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,CAAA;IACvC,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,KAAK,IAAI,CAAA;IAC5D,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAwED,wBAAgB,QAAQ,CAAC,OAAO,EAAE,eAAe;;;EA0ShD"}
|
package/dist/index.cjs
CHANGED
|
@@ -424,6 +424,7 @@ function useWebGL(options) {
|
|
|
424
424
|
const onMouseDownRef = import_react.useRef(options.onMouseDown);
|
|
425
425
|
const onMouseUpRef = import_react.useRef(options.onMouseUp);
|
|
426
426
|
const onMouseMoveRef = import_react.useRef(options.onMouseMove);
|
|
427
|
+
const onMouseWheelRef = import_react.useRef(options.onMouseWheel);
|
|
427
428
|
const timeScaleRef = import_react.useRef(options.timeScale ?? 1);
|
|
428
429
|
const vertexRef = import_react.useRef(options.vertex);
|
|
429
430
|
const fragmentRef = import_react.useRef(options.fragment);
|
|
@@ -442,6 +443,7 @@ function useWebGL(options) {
|
|
|
442
443
|
onMouseDownRef.current = options.onMouseDown;
|
|
443
444
|
onMouseUpRef.current = options.onMouseUp;
|
|
444
445
|
onMouseMoveRef.current = options.onMouseMove;
|
|
446
|
+
onMouseWheelRef.current = options.onMouseWheel;
|
|
445
447
|
timeScaleRef.current = options.timeScale ?? 1;
|
|
446
448
|
vertexRef.current = options.vertex;
|
|
447
449
|
fragmentRef.current = options.fragment;
|
|
@@ -616,10 +618,21 @@ function useWebGL(options) {
|
|
|
616
618
|
mouseLeftDown: mouseLeftDownRef.current
|
|
617
619
|
});
|
|
618
620
|
};
|
|
621
|
+
const handleMouseWheel = (event) => {
|
|
622
|
+
onMouseWheelRef.current?.({
|
|
623
|
+
deltaTime: 0,
|
|
624
|
+
time: elapsedTimeRef.current,
|
|
625
|
+
resolution: [canvas.width, canvas.height],
|
|
626
|
+
mouse: mouseRef.current,
|
|
627
|
+
mouseNormalized: mouseNormalizedRef.current,
|
|
628
|
+
mouseLeftDown: mouseLeftDownRef.current
|
|
629
|
+
}, event.deltaY);
|
|
630
|
+
};
|
|
619
631
|
window.addEventListener("mousemove", handleMouseMove);
|
|
620
632
|
window.addEventListener("mousedown", handleMouseDown);
|
|
621
633
|
window.addEventListener("mouseup", handleMouseUp);
|
|
622
634
|
canvas.addEventListener("click", handleClick);
|
|
635
|
+
window.addEventListener("wheel", handleMouseWheel);
|
|
623
636
|
return () => {
|
|
624
637
|
resizeObserver.disconnect();
|
|
625
638
|
window.removeEventListener("scroll", updateRect);
|
|
@@ -627,6 +640,7 @@ function useWebGL(options) {
|
|
|
627
640
|
window.removeEventListener("mousedown", handleMouseDown);
|
|
628
641
|
window.removeEventListener("mouseup", handleMouseUp);
|
|
629
642
|
canvas.removeEventListener("click", handleClick);
|
|
643
|
+
window.removeEventListener("wheel", handleMouseWheel);
|
|
630
644
|
};
|
|
631
645
|
}, []);
|
|
632
646
|
return { canvasRef, mouseRef };
|
|
@@ -670,7 +684,8 @@ function ReactShader({
|
|
|
670
684
|
onClick,
|
|
671
685
|
onMouseMove,
|
|
672
686
|
onMouseDown,
|
|
673
|
-
onMouseUp
|
|
687
|
+
onMouseUp,
|
|
688
|
+
onMouseWheel
|
|
674
689
|
}) {
|
|
675
690
|
const [error, setError] = import_react2.useState(null);
|
|
676
691
|
const handleError = import_react2.useCallback((err) => {
|
|
@@ -690,6 +705,7 @@ function ReactShader({
|
|
|
690
705
|
onMouseMove,
|
|
691
706
|
onMouseDown,
|
|
692
707
|
onMouseUp,
|
|
708
|
+
onMouseWheel,
|
|
693
709
|
timeScale
|
|
694
710
|
});
|
|
695
711
|
const containerStyle = import_react2.useMemo(() => fullscreen ? FULLSCREEN_CONTAINER_STYLE : DEFAULT_CONTAINER_STYLE, [fullscreen]);
|
package/dist/index.js
CHANGED
|
@@ -384,6 +384,7 @@ function useWebGL(options) {
|
|
|
384
384
|
const onMouseDownRef = useRef(options.onMouseDown);
|
|
385
385
|
const onMouseUpRef = useRef(options.onMouseUp);
|
|
386
386
|
const onMouseMoveRef = useRef(options.onMouseMove);
|
|
387
|
+
const onMouseWheelRef = useRef(options.onMouseWheel);
|
|
387
388
|
const timeScaleRef = useRef(options.timeScale ?? 1);
|
|
388
389
|
const vertexRef = useRef(options.vertex);
|
|
389
390
|
const fragmentRef = useRef(options.fragment);
|
|
@@ -402,6 +403,7 @@ function useWebGL(options) {
|
|
|
402
403
|
onMouseDownRef.current = options.onMouseDown;
|
|
403
404
|
onMouseUpRef.current = options.onMouseUp;
|
|
404
405
|
onMouseMoveRef.current = options.onMouseMove;
|
|
406
|
+
onMouseWheelRef.current = options.onMouseWheel;
|
|
405
407
|
timeScaleRef.current = options.timeScale ?? 1;
|
|
406
408
|
vertexRef.current = options.vertex;
|
|
407
409
|
fragmentRef.current = options.fragment;
|
|
@@ -576,10 +578,21 @@ function useWebGL(options) {
|
|
|
576
578
|
mouseLeftDown: mouseLeftDownRef.current
|
|
577
579
|
});
|
|
578
580
|
};
|
|
581
|
+
const handleMouseWheel = (event) => {
|
|
582
|
+
onMouseWheelRef.current?.({
|
|
583
|
+
deltaTime: 0,
|
|
584
|
+
time: elapsedTimeRef.current,
|
|
585
|
+
resolution: [canvas.width, canvas.height],
|
|
586
|
+
mouse: mouseRef.current,
|
|
587
|
+
mouseNormalized: mouseNormalizedRef.current,
|
|
588
|
+
mouseLeftDown: mouseLeftDownRef.current
|
|
589
|
+
}, event.deltaY);
|
|
590
|
+
};
|
|
579
591
|
window.addEventListener("mousemove", handleMouseMove);
|
|
580
592
|
window.addEventListener("mousedown", handleMouseDown);
|
|
581
593
|
window.addEventListener("mouseup", handleMouseUp);
|
|
582
594
|
canvas.addEventListener("click", handleClick);
|
|
595
|
+
window.addEventListener("wheel", handleMouseWheel);
|
|
583
596
|
return () => {
|
|
584
597
|
resizeObserver.disconnect();
|
|
585
598
|
window.removeEventListener("scroll", updateRect);
|
|
@@ -587,6 +600,7 @@ function useWebGL(options) {
|
|
|
587
600
|
window.removeEventListener("mousedown", handleMouseDown);
|
|
588
601
|
window.removeEventListener("mouseup", handleMouseUp);
|
|
589
602
|
canvas.removeEventListener("click", handleClick);
|
|
603
|
+
window.removeEventListener("wheel", handleMouseWheel);
|
|
590
604
|
};
|
|
591
605
|
}, []);
|
|
592
606
|
return { canvasRef, mouseRef };
|
|
@@ -630,7 +644,8 @@ function ReactShader({
|
|
|
630
644
|
onClick,
|
|
631
645
|
onMouseMove,
|
|
632
646
|
onMouseDown,
|
|
633
|
-
onMouseUp
|
|
647
|
+
onMouseUp,
|
|
648
|
+
onMouseWheel
|
|
634
649
|
}) {
|
|
635
650
|
const [error, setError] = useState(null);
|
|
636
651
|
const handleError = useCallback2((err) => {
|
|
@@ -650,6 +665,7 @@ function ReactShader({
|
|
|
650
665
|
onMouseMove,
|
|
651
666
|
onMouseDown,
|
|
652
667
|
onMouseUp,
|
|
668
|
+
onMouseWheel,
|
|
653
669
|
timeScale
|
|
654
670
|
});
|
|
655
671
|
const containerStyle = useMemo(() => fullscreen ? FULLSCREEN_CONTAINER_STYLE : DEFAULT_CONTAINER_STYLE, [fullscreen]);
|
package/dist/types.d.ts
CHANGED
|
@@ -38,6 +38,7 @@ export interface ReactShaderProps {
|
|
|
38
38
|
onMouseMove?: (info: FrameInfo) => void;
|
|
39
39
|
onMouseDown?: (info: FrameInfo) => void;
|
|
40
40
|
onMouseUp?: (info: FrameInfo) => void;
|
|
41
|
+
onMouseWheel?: (info: FrameInfo, wheelDelta: number) => void;
|
|
41
42
|
}
|
|
42
43
|
export interface DefaultUniforms {
|
|
43
44
|
iTime: number;
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,IAAI,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;AACnC,MAAM,MAAM,IAAI,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;AAC3C,MAAM,MAAM,IAAI,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;AAEnD,MAAM,MAAM,UAAU,GAAG,MAAM,EAAE,CAAA;AACjC,MAAM,MAAM,SAAS,GAAG,IAAI,EAAE,CAAA;AAC9B,MAAM,MAAM,SAAS,GAAG,IAAI,EAAE,CAAA;AAC9B,MAAM,MAAM,SAAS,GAAG,IAAI,EAAE,CAAA;AAE9B,MAAM,MAAM,aAAa,GACrB,gBAAgB,GAChB,iBAAiB,GACjB,gBAAgB,GAChB,WAAW,GACX,SAAS,GACT,eAAe,CAAA;AAEnB,MAAM,MAAM,WAAW,GAAG,QAAQ,GAAG,OAAO,GAAG,QAAQ,CAAA;AACvD,MAAM,MAAM,gBAAgB,GAAG,SAAS,GAAG,QAAQ,GAAG,QAAQ,CAAA;AAC9D,MAAM,MAAM,gBAAgB,GAAG,SAAS,GAAG,QAAQ,CAAA;AAEnD,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,aAAa,CAAA;IACrB,KAAK,CAAC,EAAE,WAAW,CAAA;IACnB,KAAK,CAAC,EAAE,WAAW,CAAA;IACnB,SAAS,CAAC,EAAE,gBAAgB,CAAA;IAC5B,SAAS,CAAC,EAAE,gBAAgB,CAAA;IAC5B,KAAK,CAAC,EAAE,OAAO,CAAA;CAChB;AAED,MAAM,MAAM,YAAY,GACpB,MAAM,GACN,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,UAAU,GACV,SAAS,GACT,SAAS,GACT,SAAS,GACT,aAAa,GACb,cAAc,CAAA;AAElB,MAAM,WAAW,SAAS;IACxB,SAAS,EAAE,MAAM,CAAA;IACjB,IAAI,EAAE,MAAM,CAAA;IACZ,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC5B,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACvB,eAAe,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACjC,aAAa,EAAE,OAAO,CAAA;CACvB;AACD,MAAM,WAAW,gBAAgB;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;IACvC,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,CAAA;IACnC,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,CAAA;IACnC,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,CAAA;IACvC,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,CAAA;IACvC,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,CAAA;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,IAAI,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;AACnC,MAAM,MAAM,IAAI,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;AAC3C,MAAM,MAAM,IAAI,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;AAEnD,MAAM,MAAM,UAAU,GAAG,MAAM,EAAE,CAAA;AACjC,MAAM,MAAM,SAAS,GAAG,IAAI,EAAE,CAAA;AAC9B,MAAM,MAAM,SAAS,GAAG,IAAI,EAAE,CAAA;AAC9B,MAAM,MAAM,SAAS,GAAG,IAAI,EAAE,CAAA;AAE9B,MAAM,MAAM,aAAa,GACrB,gBAAgB,GAChB,iBAAiB,GACjB,gBAAgB,GAChB,WAAW,GACX,SAAS,GACT,eAAe,CAAA;AAEnB,MAAM,MAAM,WAAW,GAAG,QAAQ,GAAG,OAAO,GAAG,QAAQ,CAAA;AACvD,MAAM,MAAM,gBAAgB,GAAG,SAAS,GAAG,QAAQ,GAAG,QAAQ,CAAA;AAC9D,MAAM,MAAM,gBAAgB,GAAG,SAAS,GAAG,QAAQ,CAAA;AAEnD,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,aAAa,CAAA;IACrB,KAAK,CAAC,EAAE,WAAW,CAAA;IACnB,KAAK,CAAC,EAAE,WAAW,CAAA;IACnB,SAAS,CAAC,EAAE,gBAAgB,CAAA;IAC5B,SAAS,CAAC,EAAE,gBAAgB,CAAA;IAC5B,KAAK,CAAC,EAAE,OAAO,CAAA;CAChB;AAED,MAAM,MAAM,YAAY,GACpB,MAAM,GACN,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,UAAU,GACV,SAAS,GACT,SAAS,GACT,SAAS,GACT,aAAa,GACb,cAAc,CAAA;AAElB,MAAM,WAAW,SAAS;IACxB,SAAS,EAAE,MAAM,CAAA;IACjB,IAAI,EAAE,MAAM,CAAA;IACZ,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC5B,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACvB,eAAe,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACjC,aAAa,EAAE,OAAO,CAAA;CACvB;AACD,MAAM,WAAW,gBAAgB;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;IACvC,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,CAAA;IACnC,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,CAAA;IACnC,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,CAAA;IACvC,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,CAAA;IACvC,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,CAAA;IACrC,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,KAAK,IAAI,CAAA;CAC7D;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,IAAI,CAAA;IACZ,gBAAgB,EAAE,IAAI,CAAA;IACtB,cAAc,EAAE,MAAM,CAAA;IACtB,WAAW,EAAE,IAAI,CAAA;CAClB"}
|