Skip to content

Instantly share code, notes, and snippets.

import React, {useCallback, useEffect, useState} from 'react';
import {Image, StyleSheet, Text, View, TouchableOpacity} from 'react-native';
import {initStripe, useStripe} from '@stripe/stripe-react-native';
import {COMPANY} from '@env';
import {colors} from './colors';
import Button from './button';
import {getPaymentIntent, getPublishableKey} from './stripeHelper';
import {AccountSettingsHelpers} from '../setting';
import {RootNavigation} from '../navigation/RootNavigation';
@abdullahIsa
abdullahIsa / MEMOIZE.md
Created December 13, 2022 03:14 — forked from mrousavy/MEMOIZE.md
Memoize!!! 💾 - a react (native) performance guide
In computing, memoization or memoisation
is an optimization technique used primarily
to speed up computer programs by storing
the results of expensive function calls and  
returning the cached result when the same
inputs occur again.                                         
                                                     — wikipedia
@abdullahIsa
abdullahIsa / FlashListCollapsibleTabView.js
Created August 7, 2022 04:43
FlashListCollapsibleTabView
import React from 'react';
import {useWindowDimensions} from 'react-native';
import {TabBar, SceneMap} from 'react-native-tab-view';
import {HScrollView} from 'react-native-head-tab-view';
import {CollapsibleHeaderTabView} from 'react-native-tab-view-collapsible-header';
import Feeds from './feeds';
import SocialProfileHeader from './profileHeader';
const FirstRoute = () => (
<HScrollView index={0}>
@abdullahIsa
abdullahIsa / readme.md
Created August 5, 2022 20:35 — forked from benstr/readme.md
Gist Markdown Cheatsheet

#Heading 1 ##Heading 2 ###Heading 3 ####Heading 4 #####Heading 5 ######Heading 6


Paragraph

@abdullahIsa
abdullahIsa / FlashListMessagesRender.js
Last active August 5, 2022 20:44
FlashListMessagesRender
import React, {useCallback, useMemo} from 'react';
import {View} from 'react-native';
import {OptimizedHeavyScreen} from 'react-navigation-heavy-screen';
import {toJS} from 'mobx';
import {observer} from 'mobx-react-lite';
import {ViewabilityTrackerFlatlist} from './viewabilityTracker/viewability-tracker-flashist';
import {useChatStore} from '../store/chatStoreProvider';
import {UserContextProvider} from '../../user/userHook';
import {useMessagesRenderHook} from './messagesRenderHook';
import {generateMessages} from './messageBrainer';
import { createContext, forwardRef, useCallback, useMemo } from "react";
import { FlatList, FlatListProps, ViewToken } from "react-native";
import Animated, { useSharedValue } from "react-native-reanimated";
const MAX_VIEWABLE_ITEMS = 4;
type ViewabilityItemsContextType = string[];
export const ViewabilityItemsContext = createContext<
Animated.SharedValue<ViewabilityItemsContextType>
import React, {useMemo, useRef, useState} from 'react';
import {replaceMentionValues} from 'react-native-controlled-mentions';
import {useChatStore} from '../store/chatStoreProvider';
const giveMessage = message => {
var noMessage = message === undefined || message === null || message === '';
return noMessage === true
? undefined
: replaceMentionValues(message, value => value.original);
@abdullahIsa
abdullahIsa / react-native-animated_twitter-profile.jsx
Created September 14, 2021 18:44 — forked from eveningkid/react-native-animated_twitter-profile.jsx
React Native Animated: Twitter Profile Example
// Expo SDK41
// expo-blur: ~9.0.3
import React, { useRef } from 'react';
import {
Animated,
Image,
ImageBackground,
ScrollView,
StatusBar,