Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

react-scroll-parallax

Package Overview
Dependencies
Maintainers
1
Versions
109
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

react-scroll-parallax - npm Package Compare versions

Comparing version 3.4.2 to 3.4.3

dist/components/Parallax/Parallax.d.ts

5

dist/components/Parallax/index.d.ts

@@ -1,3 +0,2 @@

import { PropsWithChildren } from 'react';
import { ParallaxProps } from './types';
export declare function Parallax(props: PropsWithChildren<ParallaxProps>): JSX.Element;
export { Parallax } from './Parallax';
export * from './types';

6

dist/components/ParallaxBanner/index.d.ts

@@ -1,3 +0,3 @@

import { PropsWithChildren } from 'react';
import { ParallaxBannerProps } from './types';
export declare const ParallaxBanner: (props: PropsWithChildren<ParallaxBannerProps>) => JSX.Element;
export { ParallaxBanner } from './ParallaxBanner';
export { ParallaxBannerLayer } from './components/ParallaxBannerLayer';
export * from './types';

@@ -1,13 +0,2 @@

import { Component } from 'react';
import { ParallaxController, ScrollAxis } from 'parallax-controller';
import { ParallaxProviderProps } from './types';
export declare class ParallaxProvider extends Component<ParallaxProviderProps, {}> {
static defaultProps: {
scrollAxis: ScrollAxis;
};
controller: ParallaxController | null;
constructor(props: ParallaxProviderProps);
componentDidUpdate(prevProps: ParallaxProviderProps): void;
componentWillUnmount(): void;
render(): JSX.Element;
}
export { ParallaxProvider } from './ParallaxProvider';
export * from './types';

@@ -1,9 +0,6 @@

import { EasingPreset, EffectNumber, EffectString } from 'parallax-controller';
import { Parallax } from './components/Parallax';
import { ParallaxBanner } from './components/ParallaxBanner';
import { ParallaxBannerLayer } from './components/ParallaxBanner/components/ParallaxBannerLayer';
import { ParallaxProvider } from './components/ParallaxProvider';
import { ParallaxContext } from './context/ParallaxContext';
import { useParallax } from './hooks/useParallax';
import { useParallaxController } from './hooks/useParallaxController';
export { useParallax, useParallaxController, Parallax, ParallaxBanner, ParallaxBannerLayer, ParallaxProvider, ParallaxContext, EasingPreset, EffectNumber, EffectString, };
export { EasingPreset, EffectNumber, EffectString } from 'parallax-controller';
export * from './components/Parallax';
export * from './components/ParallaxBanner';
export * from './components/ParallaxProvider';
export * from './hooks';
export { ParallaxContext } from './context/ParallaxContext';

@@ -29,18 +29,2 @@ 'use strict';

function _inheritsLoose(subClass, superClass) {
subClass.prototype = Object.create(superClass.prototype);
subClass.prototype.constructor = subClass;
_setPrototypeOf(subClass, superClass);
}
function _setPrototypeOf(o, p) {
_setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {
o.__proto__ = p;
return o;
};
return _setPrototypeOf(o, p);
}
function _objectWithoutPropertiesLoose(source, excluded) {

@@ -378,61 +362,36 @@ if (source == null) return {};

var ParallaxProvider = /*#__PURE__*/function (_Component) {
_inheritsLoose(ParallaxProvider, _Component);
function ParallaxProvider(props) {
var controller = React.useRef(createController({
scrollAxis: props.scrollAxis || parallaxController.ScrollAxis.vertical,
scrollContainer: props.scrollContainer,
disabled: props.isDisabled
})); // update scroll container
function ParallaxProvider(props) {
var _this;
React.useEffect(function () {
if (props.scrollContainer && controller.current) {
controller.current.updateScrollContainer(props.scrollContainer);
}
}, [props.scrollContainer, controller.current]); // disable/enable parallax
_this = _Component.call(this, props) || this;
_this.controller = createController({
scrollAxis: props.scrollAxis,
scrollContainer: props.scrollContainer,
disabled: props.isDisabled
});
return _this;
}
var _proto = ParallaxProvider.prototype;
_proto.componentDidUpdate = function componentDidUpdate(prevProps) {
if (prevProps.scrollContainer !== this.props.scrollContainer && this.props.scrollContainer) {
var _this$controller;
(_this$controller = this.controller) == null ? void 0 : _this$controller.updateScrollContainer(this.props.scrollContainer);
React.useEffect(function () {
if (props.isDisabled && controller.current) {
controller.current.disableParallaxController();
}
if (prevProps.isDisabled !== this.props.isDisabled) {
if (this.props.isDisabled) {
var _this$controller2;
(_this$controller2 = this.controller) == null ? void 0 : _this$controller2.disableParallaxController();
}
if (!this.props.isDisabled) {
var _this$controller3;
(_this$controller3 = this.controller) == null ? void 0 : _this$controller3.enableParallaxController();
}
if (!props.isDisabled && controller.current) {
controller.current.enableParallaxController();
}
};
}, [props.isDisabled, controller.current]); // remove the controller when unmounting
_proto.componentWillUnmount = function componentWillUnmount() {
// @ts-ignore
this.controller = this.controller.destroy();
};
React.useEffect(function () {
return function () {
(controller == null ? void 0 : controller.current) && (controller == null ? void 0 : controller.current.destroy());
controller.current = null;
};
}, []);
return React__default.createElement(ParallaxContext.Provider, {
value: controller.current
}, props.children);
}
_proto.render = function render() {
var children = this.props.children;
return (// @ts-ignore
React__default.createElement(ParallaxContext.Provider, {
value: this.controller
}, children)
);
};
return ParallaxProvider;
}(React.Component);
ParallaxProvider.defaultProps = {
scrollAxis: parallaxController.ScrollAxis.vertical
};
Object.defineProperty(exports, 'EasingPreset', {

@@ -439,0 +398,0 @@ enumerable: true,

@@ -1,2 +0,2 @@

"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,t=require("parallax-controller"),r=require("react"),n=(e=r)&&"object"==typeof e&&"default"in e?e.default:e;function a(){return(a=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e}).apply(this,arguments)}function l(e,t){return(l=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function o(e,t){if(null==e)return{};var r,n,a={},l=Object.keys(e);for(n=0;n<l.length;n++)t.indexOf(r=l[n])>=0||(a[r]=e[r]);return a}var s=["disabled","easing","endScroll","onChange","onEnter","onExit","onProgressChange","opacity","rootMargin","rotate","rotateX","rotateY","rotateZ","scale","scaleX","scaleY","scaleZ","shouldAlwaysCompleteAnimation","shouldDisableScalingTranslations","speed","startScroll","targetElement","translateX","translateY"];function i(e){var t,r=e.disabled,n=e.easing,a=e.endScroll,l=e.onChange,i=e.onEnter,c=e.onExit,u=e.onProgressChange,d=e.opacity,p=e.rootMargin,f=e.rotate,h=e.rotateX,g=e.rotateY,x=e.rotateZ,m=e.scale,v=e.scaleX,b=e.scaleY,y=e.scaleZ,E=e.shouldAlwaysCompleteAnimation,P=e.shouldDisableScalingTranslations,C=e.speed,w=e.startScroll,S=e.targetElement,A=e.translateX,Y=e.translateY,O=o(e,s);return{parallaxProps:(t={disabled:r,easing:n,endScroll:a,onChange:l,onEnter:i,onExit:c,onProgressChange:u,opacity:d,rootMargin:p,rotate:f,rotateX:h,rotateY:g,rotateZ:x,scale:m,scaleX:v,scaleY:b,scaleZ:y,shouldAlwaysCompleteAnimation:E,shouldDisableScalingTranslations:P,speed:C,startScroll:w,targetElement:S,translateX:A,translateY:Y},Object.keys(t).forEach((function(e){return void 0===t[e]&&delete t[e]})),t),rest:O}}var c=n.createContext(null);function u(){var e=r.useContext(c);if("undefined"==typeof window)return null;if(!e)throw new Error("Could not find `react-scroll-parallax` context value. Please ensure the component is wrapped in a <ParallaxProvider>");return e}function d(e){var n=u(),a=r.useRef(null),l=i(e).parallaxProps;!function(e){r.useEffect((function(){if(!("undefined"==typeof window||e||e instanceof t.ParallaxController))throw new Error("Must wrap your application's <Parallax /> components in a <ParallaxProvider />.")}),[e])}(n);var o=r.useState(),s=o[0],c=o[1];return r.useEffect((function(){var e;if(!(a.current instanceof HTMLElement))throw new Error("You must assign the ref returned by the useParallax() hook to an HTML Element.");return e=null==n?void 0:n.createElement({el:a.current,props:l}),c(e),function(){e&&(null==n||n.removeElementById(e.id))}}),[]),r.useEffect((function(){s&&(e.disabled?(null==n||n.resetElementStyles(s),null==n||n.updateElementPropsById(s.id,l)):null==n||n.updateElementPropsById(s.id,l))}),[e.disabled,e.easing,e.endScroll,e.onChange,e.onEnter,e.onExit,e.onProgressChange,e.opacity,e.rootMargin,e.rotate,e.rotateX,e.rotateY,e.rotateZ,e.scale,e.scaleX,e.scaleY,e.scaleZ,e.shouldAlwaysCompleteAnimation,e.shouldDisableScalingTranslations,e.speed,e.startScroll,e.targetElement,e.translateX,e.translateY]),{ref:a,controller:n,element:s}}var p={height:0},f=["children","disabled","style","expanded","image","testId"],h={position:"absolute",top:0,left:0,right:0,bottom:0},g=function(e){var r,l=i(e),s=l.parallaxProps,c=l.rest,u=c.style,g=c.expanded,x=void 0===g||g,m=c.testId,v=o(c,f),b=(r=e).image?{backgroundImage:"url("+r.image+")",backgroundPosition:"center",backgroundSize:"cover"}:{},y=x?function(e){if(Array.isArray(e.translateY)){var r=t.parseValueAndUnit(e.translateY[0]),n=t.parseValueAndUnit(e.translateY[1]);if("px"===r.unit&&"px"===n.unit)return{top:-1*Math.abs(n.value)+"px",bottom:-1*Math.abs(r.value)+"px"};if("%"===r.unit&&"%"===n.unit){var a,l,o=null!=(a=null==(l=e.targetElement)?void 0:l.getBoundingClientRect())?a:p;return{top:-1*Math.abs(.01*o.height*n.value)+"px",bottom:-1*Math.abs(.01*o.height*r.value)+"px"}}}if(e.speed){var s=10*Math.abs(e.speed||0)*-1;return{top:s+"px",bottom:s+"px"}}return{}}(e):{},E=d(a({targetElement:e.targetElement,shouldDisableScalingTranslations:!0},s));return n.createElement("div",Object.assign({"data-testid":m,ref:E.ref,style:a({},b,h,y,u)},v),c.children)},x=["disabled","style","layers"],m={position:"relative",overflow:"hidden",width:"100%"},v=function(e){var r,a;function o(r){var n;return(n=e.call(this,r)||this).controller="undefined"==typeof window?null:t.ParallaxController.init({scrollAxis:r.scrollAxis,scrollContainer:r.scrollContainer,disabled:r.isDisabled}),n}a=e,(r=o).prototype=Object.create(a.prototype),r.prototype.constructor=r,l(r,a);var s=o.prototype;return s.componentDidUpdate=function(e){var t,r,n;e.scrollContainer!==this.props.scrollContainer&&this.props.scrollContainer&&(null==(t=this.controller)||t.updateScrollContainer(this.props.scrollContainer)),e.isDisabled!==this.props.isDisabled&&(this.props.isDisabled&&(null==(r=this.controller)||r.disableParallaxController()),this.props.isDisabled||null==(n=this.controller)||n.enableParallaxController())},s.componentWillUnmount=function(){this.controller=this.controller.destroy()},s.render=function(){return n.createElement(c.Provider,{value:this.controller},this.props.children)},o}(r.Component);v.defaultProps={scrollAxis:t.ScrollAxis.vertical},Object.defineProperty(exports,"EasingPreset",{enumerable:!0,get:function(){return t.EasingPreset}}),exports.Parallax=function(e){var t=i(e),r=t.rest,a=d(t.parallaxProps);return n.createElement("div",Object.assign({ref:a.ref},r),e.children)},exports.ParallaxBanner=function(e){var t=r.useState(null),l=t[0],s=t[1],i=r.useRef(null);r.useEffect((function(){s(i.current)}),[]);var c=e.style,u=e.layers,d=void 0===u?[]:u,p=o(e,x);return n.createElement("div",Object.assign({ref:i,style:a({},m,c)},p),l&&d&&d.length>0?d.map((function(e,t){return n.createElement(g,Object.assign({},e,{targetElement:l,key:"layer-"+t,testId:"layer-"+t}))})):null,l?n.Children.map(e.children,(function(e){return(null==e?void 0:e.type)===g?n.cloneElement(e,{targetElement:l}):e})):null)},exports.ParallaxBannerLayer=g,exports.ParallaxContext=c,exports.ParallaxProvider=v,exports.useParallax=d,exports.useParallaxController=u;
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,t=require("parallax-controller"),r=require("react"),n=(e=r)&&"object"==typeof e&&"default"in e?e.default:e;function a(){return(a=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e}).apply(this,arguments)}function l(e,t){if(null==e)return{};var r,n,a={},l=Object.keys(e);for(n=0;n<l.length;n++)t.indexOf(r=l[n])>=0||(a[r]=e[r]);return a}var o=["disabled","easing","endScroll","onChange","onEnter","onExit","onProgressChange","opacity","rootMargin","rotate","rotateX","rotateY","rotateZ","scale","scaleX","scaleY","scaleZ","shouldAlwaysCompleteAnimation","shouldDisableScalingTranslations","speed","startScroll","targetElement","translateX","translateY"];function s(e){var t,r=e.disabled,n=e.easing,a=e.endScroll,s=e.onChange,i=e.onEnter,u=e.onExit,c=e.onProgressChange,d=e.opacity,f=e.rootMargin,p=e.rotate,g=e.rotateX,x=e.rotateY,h=e.rotateZ,v=e.scale,m=e.scaleX,b=e.scaleY,E=e.scaleZ,y=e.shouldAlwaysCompleteAnimation,P=e.shouldDisableScalingTranslations,C=e.speed,w=e.startScroll,S=e.targetElement,Y=e.translateX,A=e.translateY,M=l(e,o);return{parallaxProps:(t={disabled:r,easing:n,endScroll:a,onChange:s,onEnter:i,onExit:u,onProgressChange:c,opacity:d,rootMargin:f,rotate:p,rotateX:g,rotateY:x,rotateZ:h,scale:v,scaleX:m,scaleY:b,scaleZ:E,shouldAlwaysCompleteAnimation:y,shouldDisableScalingTranslations:P,speed:C,startScroll:w,targetElement:S,translateX:Y,translateY:A},Object.keys(t).forEach((function(e){return void 0===t[e]&&delete t[e]})),t),rest:M}}var i=n.createContext(null);function u(){var e=r.useContext(i);if("undefined"==typeof window)return null;if(!e)throw new Error("Could not find `react-scroll-parallax` context value. Please ensure the component is wrapped in a <ParallaxProvider>");return e}function c(e){var n=u(),a=r.useRef(null),l=s(e).parallaxProps;!function(e){r.useEffect((function(){if(!("undefined"==typeof window||e||e instanceof t.ParallaxController))throw new Error("Must wrap your application's <Parallax /> components in a <ParallaxProvider />.")}),[e])}(n);var o=r.useState(),i=o[0],c=o[1];return r.useEffect((function(){var e;if(!(a.current instanceof HTMLElement))throw new Error("You must assign the ref returned by the useParallax() hook to an HTML Element.");return e=null==n?void 0:n.createElement({el:a.current,props:l}),c(e),function(){e&&(null==n||n.removeElementById(e.id))}}),[]),r.useEffect((function(){i&&(e.disabled?(null==n||n.resetElementStyles(i),null==n||n.updateElementPropsById(i.id,l)):null==n||n.updateElementPropsById(i.id,l))}),[e.disabled,e.easing,e.endScroll,e.onChange,e.onEnter,e.onExit,e.onProgressChange,e.opacity,e.rootMargin,e.rotate,e.rotateX,e.rotateY,e.rotateZ,e.scale,e.scaleX,e.scaleY,e.scaleZ,e.shouldAlwaysCompleteAnimation,e.shouldDisableScalingTranslations,e.speed,e.startScroll,e.targetElement,e.translateX,e.translateY]),{ref:a,controller:n,element:i}}var d={height:0},f=["children","disabled","style","expanded","image","testId"],p={position:"absolute",top:0,left:0,right:0,bottom:0},g=function(e){var r,o=s(e),i=o.parallaxProps,u=o.rest,g=u.style,x=u.expanded,h=void 0===x||x,v=u.testId,m=l(u,f),b=(r=e).image?{backgroundImage:"url("+r.image+")",backgroundPosition:"center",backgroundSize:"cover"}:{},E=h?function(e){if(Array.isArray(e.translateY)){var r=t.parseValueAndUnit(e.translateY[0]),n=t.parseValueAndUnit(e.translateY[1]);if("px"===r.unit&&"px"===n.unit)return{top:-1*Math.abs(n.value)+"px",bottom:-1*Math.abs(r.value)+"px"};if("%"===r.unit&&"%"===n.unit){var a,l,o=null!=(a=null==(l=e.targetElement)?void 0:l.getBoundingClientRect())?a:d;return{top:-1*Math.abs(.01*o.height*n.value)+"px",bottom:-1*Math.abs(.01*o.height*r.value)+"px"}}}if(e.speed){var s=10*Math.abs(e.speed||0)*-1;return{top:s+"px",bottom:s+"px"}}return{}}(e):{},y=c(a({targetElement:e.targetElement,shouldDisableScalingTranslations:!0},i));return n.createElement("div",Object.assign({"data-testid":v,ref:y.ref,style:a({},b,p,E,g)},m),u.children)},x=["disabled","style","layers"],h={position:"relative",overflow:"hidden",width:"100%"};Object.defineProperty(exports,"EasingPreset",{enumerable:!0,get:function(){return t.EasingPreset}}),exports.Parallax=function(e){var t=s(e),r=t.rest,a=c(t.parallaxProps);return n.createElement("div",Object.assign({ref:a.ref},r),e.children)},exports.ParallaxBanner=function(e){var t=r.useState(null),o=t[0],s=t[1],i=r.useRef(null);r.useEffect((function(){s(i.current)}),[]);var u=e.style,c=e.layers,d=void 0===c?[]:c,f=l(e,x);return n.createElement("div",Object.assign({ref:i,style:a({},h,u)},f),o&&d&&d.length>0?d.map((function(e,t){return n.createElement(g,Object.assign({},e,{targetElement:o,key:"layer-"+t,testId:"layer-"+t}))})):null,o?n.Children.map(e.children,(function(e){return(null==e?void 0:e.type)===g?n.cloneElement(e,{targetElement:o}):e})):null)},exports.ParallaxBannerLayer=g,exports.ParallaxContext=i,exports.ParallaxProvider=function(e){var a=r.useRef("undefined"==typeof window?null:t.ParallaxController.init({scrollAxis:e.scrollAxis||t.ScrollAxis.vertical,scrollContainer:e.scrollContainer,disabled:e.isDisabled}));return r.useEffect((function(){e.scrollContainer&&a.current&&a.current.updateScrollContainer(e.scrollContainer)}),[e.scrollContainer,a.current]),r.useEffect((function(){e.isDisabled&&a.current&&a.current.disableParallaxController(),!e.isDisabled&&a.current&&a.current.enableParallaxController()}),[e.isDisabled,a.current]),r.useEffect((function(){return function(){(null==a?void 0:a.current)&&(null==a||a.current.destroy()),a.current=null}}),[]),n.createElement(i.Provider,{value:a.current},e.children)},exports.useParallax=c,exports.useParallaxController=u;
//# sourceMappingURL=react-scroll-parallax.cjs.production.min.js.map
import { ParallaxController, parseValueAndUnit, ScrollAxis } from 'parallax-controller';
export { EasingPreset } from 'parallax-controller';
import React, { useEffect, useContext, useRef, useState, Component } from 'react';
import React, { useEffect, useContext, useRef, useState } from 'react';

@@ -23,18 +23,2 @@ function _extends() {

function _inheritsLoose(subClass, superClass) {
subClass.prototype = Object.create(superClass.prototype);
subClass.prototype.constructor = subClass;
_setPrototypeOf(subClass, superClass);
}
function _setPrototypeOf(o, p) {
_setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {
o.__proto__ = p;
return o;
};
return _setPrototypeOf(o, p);
}
function _objectWithoutPropertiesLoose(source, excluded) {

@@ -372,62 +356,37 @@ if (source == null) return {};

var ParallaxProvider = /*#__PURE__*/function (_Component) {
_inheritsLoose(ParallaxProvider, _Component);
function ParallaxProvider(props) {
var controller = useRef(createController({
scrollAxis: props.scrollAxis || ScrollAxis.vertical,
scrollContainer: props.scrollContainer,
disabled: props.isDisabled
})); // update scroll container
function ParallaxProvider(props) {
var _this;
useEffect(function () {
if (props.scrollContainer && controller.current) {
controller.current.updateScrollContainer(props.scrollContainer);
}
}, [props.scrollContainer, controller.current]); // disable/enable parallax
_this = _Component.call(this, props) || this;
_this.controller = createController({
scrollAxis: props.scrollAxis,
scrollContainer: props.scrollContainer,
disabled: props.isDisabled
});
return _this;
}
var _proto = ParallaxProvider.prototype;
_proto.componentDidUpdate = function componentDidUpdate(prevProps) {
if (prevProps.scrollContainer !== this.props.scrollContainer && this.props.scrollContainer) {
var _this$controller;
(_this$controller = this.controller) == null ? void 0 : _this$controller.updateScrollContainer(this.props.scrollContainer);
useEffect(function () {
if (props.isDisabled && controller.current) {
controller.current.disableParallaxController();
}
if (prevProps.isDisabled !== this.props.isDisabled) {
if (this.props.isDisabled) {
var _this$controller2;
(_this$controller2 = this.controller) == null ? void 0 : _this$controller2.disableParallaxController();
}
if (!this.props.isDisabled) {
var _this$controller3;
(_this$controller3 = this.controller) == null ? void 0 : _this$controller3.enableParallaxController();
}
if (!props.isDisabled && controller.current) {
controller.current.enableParallaxController();
}
};
}, [props.isDisabled, controller.current]); // remove the controller when unmounting
_proto.componentWillUnmount = function componentWillUnmount() {
// @ts-ignore
this.controller = this.controller.destroy();
};
useEffect(function () {
return function () {
(controller == null ? void 0 : controller.current) && (controller == null ? void 0 : controller.current.destroy());
controller.current = null;
};
}, []);
return React.createElement(ParallaxContext.Provider, {
value: controller.current
}, props.children);
}
_proto.render = function render() {
var children = this.props.children;
return (// @ts-ignore
React.createElement(ParallaxContext.Provider, {
value: this.controller
}, children)
);
};
return ParallaxProvider;
}(Component);
ParallaxProvider.defaultProps = {
scrollAxis: ScrollAxis.vertical
};
export { Parallax, ParallaxBanner, ParallaxBannerLayer, ParallaxContext, ParallaxProvider, useParallax, useParallaxController };
//# sourceMappingURL=react-scroll-parallax.esm.js.map
{
"name": "react-scroll-parallax",
"version": "3.4.2",
"version": "3.4.3",
"description": "React hooks and components to create parallax scroll effects for banners, images or any other DOM elements.",

@@ -5,0 +5,0 @@ "keywords": [

@@ -1,22 +0,7 @@

import { EasingPreset, EffectNumber, EffectString } from 'parallax-controller';
export { EasingPreset, EffectNumber, EffectString } from 'parallax-controller';
import { Parallax } from './components/Parallax';
import { ParallaxBanner } from './components/ParallaxBanner';
import { ParallaxBannerLayer } from './components/ParallaxBanner/components/ParallaxBannerLayer';
import { ParallaxProvider } from './components/ParallaxProvider';
import { ParallaxContext } from './context/ParallaxContext';
import { useParallax } from './hooks/useParallax';
import { useParallaxController } from './hooks/useParallaxController';
export {
useParallax,
useParallaxController,
Parallax,
ParallaxBanner,
ParallaxBannerLayer,
ParallaxProvider,
ParallaxContext,
EasingPreset,
EffectNumber,
EffectString,
};
export * from './components/Parallax';
export * from './components/ParallaxBanner';
export * from './components/ParallaxProvider';
export * from './hooks';
export { ParallaxContext } from './context/ParallaxContext';

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc