Skip to content

Instantly share code, notes, and snippets.

import {useFocusEffect} from '@react-navigation/native';
import {Box, IconButton, Text} from 'components';
import {Theme} from 'core/styles';
import {useGetSessions} from 'hooks';
import useInAppPurchase from 'hooks/iap';
import LottieView from 'lottie-react-native';
import {useAppNavigation} from 'navigation/hooks/useAppNavigation';
import {useAuth} from 'pods/auth/context';
import {useOnboarding} from 'pods/onboarding/context';
import {SoundEquilizer} from 'pods/session/assets';
import React, {useCallback, useEffect} from 'react';
import {
Text,
View,
StyleSheet,
TouchableOpacity,
ActivityIndicator,
ImageBackground,
GestureResponderEvent,
useWindowDimensions,
import React, {useEffect, useRef, useState} from 'react';
import {useSafeAreaInsets} from 'react-native-safe-area-context';
import {
Canvas,
RoundedRect,
RadialGradient,
BackdropBlur,
Fill,
vec,
Rect,
const ANIMATION_DURATION = 1000;
const ImageView = ({ url }: { url: string }) => {
return (
<Reanimated.Image
source={{ uri: url }}
style={[styles.video]}
exiting={FadeOut.duration(ANIMATION_DURATION)}
/>
);
};
import React from 'react';
import {StyleSheet} from 'react-native';
import {Box, Text, TouchableOpacity} from '@components/atoms';
import {CollapsibleBox, RotaryIcon, ShadowBox} from '@components/molecules';
import {useSwitch} from '@hooks';
import {useTheme} from '@theme';
import {DashboardServiceItem} from '@types';
import ChevronUp from '@svg/chevron-up.svg';
import React, {useCallback} from 'react';
import {Alert} from 'react-native';
import {GUIDES} from '@features/guide/const';
import {useTranslations} from '@hooks';
import {RootStackScreenProps, RouteNames} from '@navigation';
import {
setShouldRefresh,
useAppDispatch,
useAwardConsultantMutation,
/* eslint-disable react-hooks/exhaustive-deps */
import React, {useEffect} from 'react';
import {Box, Text} from '@components/atoms';
import {Divider} from '@components/molecules';
import {useOnboarding} from '@features/home/hooks';
import {
useDataRefetch,
useDateFormatter,
useSteps,
import React from 'react';
import {StyleSheet} from 'react-native';
import {Box, Text, TouchableOpacity} from '@components/atoms';
import {CollapsibleBox, RotaryIcon, ShadowBox} from '@components/molecules';
import {useSwitch} from '@hooks';
import {useTheme} from '@theme';
import {DashboardServiceItem} from '@types';
import ChevronUp from '@svg/chevron-up.svg';
import React from 'react';
import {Box} from '@components/atoms';
import {Divider} from '@components/molecules';
import {getServiceStatus} from '@features/journey/utils';
import {useSteps, useTranslations} from '@hooks';
import {OptionItem} from '@types';
import {JourneyBlock, Service} from '../organisms';
async function addClubsStoragePolicy() {
const policyQuery = `
CREATE POLICY "clubs_custom_policy"
ON storage.objects
FOR SELECT USING (
(bucket_id = 'clubs'::text) AND
(EXISTS (
SELECT 1
FROM (permissions
JOIN users ON ((users.id = permissions.user_id)))