Files
bigcapital/packages/webapp/src/components/Guards/EnsureSubscriptionsIsInactive.tsx
2023-02-03 01:02:31 +02:00

33 lines
802 B
TypeScript

// @ts-nocheck
import React from 'react';
import { includes } from 'lodash';
import { compose } from '@/utils';
import { Redirect } from 'react-router-dom';
import withSubscriptions from '@/containers/Subscriptions/withSubscriptionss';
/**
* Ensures the given subscription type is active or redirect to the given route.
*/
function EnsureSubscriptionsIsInactive({
children,
subscriptionType = 'main',
redirectTo = '/billing',
routePath,
exclude,
isSubscriptionsInactive,
}) {
return !isSubscriptionsInactive || includes(exclude, routePath) ? (
children
) : (
<Redirect to={{ pathname: redirectTo }} />
);
}
export default compose(
withSubscriptions(
({ isSubscriptionsInactive }) => ({ isSubscriptionsInactive }),
'main',
),
)(EnsureSubscriptionsIsInactive);