🔗
Linker Studio
  • Welcome!!
  • 🚀GETTING STARTED
    • Set up your custom project from Linker Studio
    • How to run the project
    • Linker Features
      • Glossary
      • Web
      • Mobile
        • Aggregators
        • Analytics
        • Authentication
        • BaaS
        • Carousel
        • Client Support
        • Error and Crash Reporting
        • Info Onboarding
        • KYC
        • Payroll
        • Pii Onboarding
        • Push Notifications - OneSignal
        • Settings
        • Subscriptions
      • Backend
        • Authentication
        • MFA
        • BaaS
        • Aggregators
        • Notifications
        • Payments
        • Deposit Switching
        • Support
        • Vault
        • Storage
        • Monitoring
        • Analytics
  • 🖥️WEB FEATURES
    • Page 2
  • 📱Mobile App Features
    • Project File Structure
    • Figma Tokens Integration
    • Core Module
      • Core UI Components
        • Atoms
        • Molecules
        • Organisms
        • Templates
      • Core Elements
      • Hooks
        • Force update
      • Endpoints used
      • States And Selectors
        • contentsDocuments
    • Modules
      • [New Feature Template]- Feature Name
        • UI Components - Template
          • Atoms
          • Molecules
          • Organisms
          • Templates
        • Hooks - Template
        • Endpoints Used
        • States and Selectors - Template
      • 📥KYC
        • Alloy
        • Baas
          • UI Components
            • Templates
          • Hooks - Template
          • Endpoints Used
          • States and Selectors - Template
        • common
          • UI Components
            • Templates
          • Endpoints Used
      • 🤝Aggregators
        • Plaid
          • Plaid/Rize notification before disabling account
      • 🤖Analytics
        • Amplitude
      • 🔐Authentication
        • Hooks
        • Auth0
          • Hooks
            • Login
            • Forgot password
          • 📧Verify Email
            • Hooks
        • Biometrics
          • Hooks
        • Auto Logout
        • States And Selectors
          • Authentication
      • 💰BaaS
        • Common
          • BaaS Navigation
          • External Accounts
          • UI Components
            • Molecules
            • Organisms
            • Templates
          • Hooks
            • Statements
            • Recurrent Transfers
            • Cards
              • Get Full Card
              • Lock and Unlock
              • Request Physical Debit Card
              • Reissue Debit Card
              • Set / Reset Debit Card Pin
            • Transfer
          • States And Selectors
            • Customer
            • Accounts
            • Cards
            • Transactions
          • Endpoints used
          • Constants
            • ACH_SERVICES
        • treasury
          • Constants
            • CONFIG_VALUES
      • 🛂Client Support
      • 🐛Error and Crash Reporting
        • Crashlytics
      • ℹ️Info Onboarding
        • States and Selectors
        • Hooks
          • Physical Card Request
      • 🌯Linker Wrapper
        • Linker Wrapper Messages Structure
        • Linker Wrapper Features
          • Push Notifications
            • Braze
          • In-App Purchase
      • 🛗MFA Verification Code
        • UI Components
          • Molecules
          • Templates
        • Hooks
        • Endpoints used
        • Configurable Constants
      • 🗞️Payroll
        • UI Components
          • Organisms
          • Templates
        • Hooks
        • States and Selectors
      • 📋PII Onboarding
        • UI Components
          • Atoms
          • Molecules
          • Organisms
          • Templates
        • Hooks
        • States and Selectors
      • 🔔Push Notifications
        • OneSignal
      • 🔧Settings
      • 🗄️Vault
        • VGS Show
        • VGS Collect
    • Cookbook
      • 🏦Neobank
        • Linked Functionalities
          • Edit Personal Details Linking
          • Request Physical Debit Card Linking
          • Get customer Data after SignUp/Login
  • ⛓️Backend API
    • Environments
    • Migrations
      • Configuration
      • Migration Commands
      • Base Model
      • Migration Structure
    • Seeds and Factories
      • Configuration
      • Seeds And Factories
    • SoftDelete
    • DB Fields Encryption
    • DB Structure
    • DB Configuration Table
      • API Endpoints
    • Orchestrator
    • Swagger
      • Setup
      • Decorators for Requests and Responses
      • Decorators for Controllers and HTTP Responses
      • Auth Decorator
      • Multiple Decorators
  • 🪙Finance Integrations
    • Recurring Transfers
      • Architecture
      • Jobs Server
      • Functionality
      • BaaS
        • Rize API Endpoints
        • Treasury Prime API Endpoints
        • Business Treasury Prime API Endpoints
    • BaaS
      • Rize
        • Env Variables
        • Rize API authentication
        • Onboarding
          • Customer Enrollment
          • Get Compliance Workflow
          • Acknowledge Compliance Workflow
          • Customer Complete Enrollment
        • KYC - Know Your Customer
          • Get KYC Documents
          • Upload KYC Document
        • Accounts
          • Get Customer Accounts
          • Get Customer Account By ID
          • Create Customer Account
          • Archive Customer Account
          • Get ACH Customer Accounts
        • Debit Cards
          • Get Debit Cards
          • Get Debit Card Image
          • Lock Debit Card
          • Unlock Debit Card
          • Create Physical Card
          • Activate Debit Card
          • Get Debit Card Set-Pin URL
          • Reissue Debit Card
        • Transactions
          • Get Transactions
        • Transfers
          • Internal Transfers
          • ACH transfers
        • Statements
          • Get Statements
          • Get Statement Document
        • Fake Transactions
        • Message Queue
        • Web Sockets
        • API Endpoints
          • Account Enums
          • Debit Card Enums
          • Transaction Enums
          • KYC Enums
      • Galileo
        • Environment Variables
        • Onboarding
          • Get Customer
          • Customer Enrollment
          • Customer Complete Enrollment
        • Customer Management
          • Get Profile
          • Update Profile
        • Accounts
        • Add Accounts
        • Card Management
          • Get Debit Cards
          • Get Image Card
          • Card Statuses
          • Debit Card Activation
          • Request Physical Card
          • Set PIN
          • Lock/Unlock
        • Transfer
        • Transactions
          • Get Transactions
          • Filter Transactions
        • ACH
          • Add ACH Account
          • Get ACH Accounts
          • Remove ACH Account
          • ACH Transactions
        • Statements
        • Plaid Integration
      • Synapse
        • Environment Variables
        • Terminology
        • Resources
        • API Endpoints
    • Aggregators
      • Add Account Service and new DB Table
      • Plaid
        • Plaid Configuration
        • Application Creation
        • Custom Application
        • Configure Single or Multi Accounts
        • Security Settings
        • Verification of Environment Variables
        • API Endpoints
        • Resources
        • Integrations
          • Rize
      • MX
        • Env Configuration
        • API Endpoints
  • 🔐Authentication
    • Auth0
      • Configuration
      • Protecting an endpoint
      • Email verification
      • API Reference
    • Twilio
      • 2FA
        • Verify Service Configuration
        • Verification Workflow
        • API Endpoints
  • 🪪 KYC
    • Persona
      • Configuration
      • Environment Variables
      • KYC Flow
  • ✉️ Mailings
    • Sendgrid
      • Configuration
      • Environment Variables
      • Send Email with Attachments
  • 🆘Supports
    • Zendesk
      • Configuration
      • API Endpoints
  • 📳NOTIFICATIONS
    • OneSignal
      • Schema
      • Setup
      • Environment Variables
      • API Endpoints
  • 🔐Security
    • VGS
      • Configuration
      • Rize Route Configuration
      • VGS Vault Basics
      • VGS Show
  • 🖥️MONITORING
    • New Relic
      • Configuration
      • Interceptor
  • 🧑‍🔧CONTENT ADMINISTRATOR
    • Notifications
    • Onboardings
      • DB Schema
      • Admin - API Endpoints
      • Client - API Endpoints
    • Documents
      • Document Category
      • Document
      • Client - API Endpoints
      • Admin - API Endpoints
    • App Versions
      • Device App Versions
      • API - Administrator
      • API - Client
  • 💵Payments
    • Stripe
      • Configuration
      • Customers
      • Sources
      • Authorization
      • Charges
      • API Endpoints
Powered by GitBook
On this page
  • Action Bottom Sheet
  • Action Card Opacity Feedback
  • Backdrop
  • Badge
  • BodyText
  • Button
  • Card
  • Checkbox
  • Form
  • Heading
  • Horizontal Rule Text
  • Image Background
  • Indicator
  • Input
  • Item About
  • Loader
  • PDF Document Viewer
  • Radio Button
  • Switch
  • Web-View

Was this helpful?

  1. Mobile App Features
  2. Core Module
  3. Core UI Components

Atoms

PreviousCore UI ComponentsNextMolecules

Last updated 2 years ago

Was this helpful?

List of Atoms

Action Bottom Sheet

Shows options on a modal at the bottom of the screen.

All props are optional.

Prop Name
Type
Description

disabled

boolean

Disables all interactions for this component if it's true

backgroundColor

string

Background color of the sheet

title

string

Text for the title of the action bottom sheet

iconName

string

Name of the icon

onPressPrimary

() => void

Handler to be called when the user presses the primary button

onPressSecondary

() => void

Handler to be called when the user presses the secondary

onPressCancel

() => void

Handler to be called when the user presses cancel

titlePrimary

string

Primary title of the component

titleSecondary

string

Subtitle of the component

titleCancel

string

Title 'Cancel'

modalHeight

number

The height of the action bottom sheet

<ActionBottomSheet
   ref={actionBottomSheetRef.current[1]}
   disabled=false
   title='Example'
   description=''Description'
   titlePrimary='Title'
   onPressPrimary={() => null}
   titleCancel='Cancel'
   onPressCancel={() => actionBottomSheetRef.current[1].current?.close()}
/>

Action Card Opacity Feedback

Displays information, can include content and actions about a single subject. Style may differ depending on parameter.

Prop Name
Type
Description

children

JSX.Element | JSX.Element[] (optional)

Children of the component (if there are any)

withShadow

boolean (optional)

If true, adds a shadow effect to the outline of the card.

containerStyles

ViewStyle (optional)

The component's container style

backgroundColor

string (optional)

Background color of the card

borderRadius

number (optional)

Radius if the card's border

onPress

() => void (optional)

Handler to be called when the user presses the card

interactable

boolean

If true, enables interaction to the component

<ActionCardOpacityFeedback
   onPress={() => void}
   interactable={true}
   containerStyles={style}>
   <View> 
       {children}
   </View>
</ActionCardOpacityFeedback>

Backdrop

Dims the area behind a component that has to be focused on.

Prop Name
Type
Description

onDismiss

() => void

Function that will be called once the backdrop has been dismissed

backdropStyle

ViewStyle (optional)

Style applied to the backdrop

<Backdrop onDismiss={onDismiss} backdropStyle={backdropStyle} />

Badge

Component used to communicate a numerical value or to indicate the status of an item to the user.

All props are optional.

Prop Name
Type
Descripiton

children

string

Children of the component

containerStyle

ViewStyle

Style applied to the container

textStyle

TextStyle

Style applied to the text

<Badge containerStyle={componentsDemoStyles.badge}>
    Example
</Badge>

BodyText

Displays words and characters at various sizes. The styles of text are based on figma tokens (size, color, font)

This extends TextProps.

Prop Name
Type
Description

type

BodyType

Size of the text. This can be s1, s2, s3, s4 or s5.

<BodyText
   type="s4"
   style={style}>
   Text example
</BodyText>

Button

Touchable element that when it is clicked, does a specific action. Color (primary or secondary) may change according to tokens.

Prop Name
Type
Description

text

string

Text displayed in the button

type

buttonType (optional)

Type of the button, it can be 'primary', 'secondary', 'primaryText' or 'secondaryText'

withShadow

boolean (optional)

If true, applies a shadow at the outline of the button

containerStyle

ViewStyle (optional)

The component's container style

accessoryLeft

string | JSX.Element (optional)

Icon located to the left of the button

accessoryRight

string | JSX.Element (optional)

Icon located to the right of the button

iconStyle

TextStyle (optional)

Style applied to the icon

analyticsParams

ParamsTrackAnalytics (optional)

Analytics for the button component

onPress

() => void (optional)

Function called when the button is pressed

disabledWithoutStyle

boolean (optional)

If true, disables all interactions for this component without the applying style

Primary

Secondary

<Button
   text="Button with Icon"
   type="secondary"
   disabled={false}
   accessoryRight="arrow-up-circle"
   containerStyle={style}
   withShadow
   onPress={() => null}
/>

Card

Displays information, can contain content and actions about a single subject. Style may differ depending on parameter.

All props are optional.

Prop Name
Type
Description

children

JSX.Element | JSX.Element[]

Children of the component

withShadow

boolean

If true, applies a shadow at the outline of the card

containerStyles

ViewStyle

The component's container style

backgroundColor

string

Background color of the card

borderRadius

number

Radius for the border of the card

onPress

() => void

Function called when the card is pressed

disabled

boolean

If true, disables all interactions for this component

cardAnalyticsParams

ParamsTrackAnalytics

Analytics for the card component

<Card containerStyles={style} onPress={event}>
   <View style={style}>
      <BodyText type="s5" style={textStyle}>
          {text}
      </BodyText>
   </View>
</Card>

Checkbox

Allows the user to complete a task that involves making choices such as selecting options.

All props are optional.

Prop Name
Type
Description

text

string

Text displayed for the checkbox

checkboxStyle

ViewStyle

Style applied to the checkbox

containerStyle

ViewStyle

Style applied to the container

textStyle

TextStyle

Style applied to the text

onPressLink

() => void

Handler called when the checkbox is pressed

accessoryRight

JSX.Element | JSX.Element[]

Right icon for the checkbox

<Checkbox
   boxType="square"
   text="Checkbox text"
   value={isCheckboxEnabled}
   onValueChange={setIsCheckboxEnabled}
   containerStyle={style}
/>

Form

Wrapper component for form items (inputs, buttons, labels, etc).

All props are optional.

Prop Name
Type
Description

withScroll

boolean

If true, enables scrolling

showsVerticalScrollIndicator

boolean

If true, shows a vertical scroll indicator

keyboardVerticalOffset

number

Vertical offset for the keyboard

children

JSX.Element | JSX.Element[]

Children for the component

<Form>
   <View style={formDemoStyles.container}>
      <Input
          label={strings.componentsDemo.inputName}
          containerStyle={formDemoStyles.marginBottom}
          {...getNameInputProps()}
          required
          error={nameInputError}
          onError={setNameInputError}
          value={nameInput}
          onChangeText={setNameInput}
      />
      <Input
          label={strings.componentsDemo.inputEmail}
          containerStyle={formDemoStyles.marginBottom}
          {...getEmailInputProps()}
          required
          error={emailInputError}
          onError={setEmailInputError}
          value={emailInput}
          onChangeText={setEmailInput}
      />
      <Button
          text={strings.formDemo.submit}
          disabled={isButtonDisabled()}
          containerStyle={formDemoStyles.marginBottom}
          onPress={() => setIsLoading(true)}
       />
   </View>
</Form>

Heading

Displays words and characters at various sizes used as headings.

Prop Name
Type
Description

type

HeadingTypes

The HeadingTypes are 's1' | 's2' | 's3' | 's4'

<Heading type="s4">Example</Heading>

Horizontal Rule Text

Component that displays text horizontally.

All props are required.

Prop Name
Type
Description

text

string

Text displayed in the horizontal rule text

containerStyle

ViewStyle

The component's container style

<HorizontalRuleText
   text={strings.signInScreen.horizontalRuleText}
   containerStyle={SignInScreenStyles(theme).horizontalRule}
/>

Image Background

Displays an image as background.

All props are optional.

Prop Name
Type
Description

children

JSX.Element

Children for the component

imageBackground

React.ReactNode

The background image

// Some code

Indicator

Component used to indicate which part or page of a process the user is currently on.

Prop Name
Type
Description

activeColor

string (optinal)

Color to display as the active indicator

inactiveColor

string (optinal)

Color to display as the inactive indicator

activeIndex

number

Index for the active indicator

count

number

Count of the where it is on the indicating process

<Indicator
   count={indicatorsLength}
   activeColor={theme.color.action.tertiary[400]}
   inactiveColor={theme.color.action.tertiary[100]}
   activeIndex={currentScreen}
/>

Input

Allows users to enter text.

All props are optional

Prop Name
Type
Description

label

string

Text displayed as label

labelStyle

ViewStyle

Style applied to the label

inputStyle

ViewStyle

Style applied to the input

containerStyle

ViewStyle

Style applied to the container

inputContainerStyle

ViewStyle

Style applied to the input container

primary

boolean

If true, it will be a primary input

withSuccess

boolean

If true, success state will be triggered

withError

boolean

If true, error state will be triggered

disabled

boolean

If true, disables interaction with the input

accessoryLeft

string

Name of icon to the left of the input

onAccessoryLeftPress

() => void

Function called when accessory left is pressed

accessoryRight

string

Name of icon to the right of the input

onAccessoryRightPress

() => void

Function called when accessory right is pressed

iconStyle

TextStyle

Style applied to the icon

required

boolean

If true, input must be filled

value

string

Value to show for the input

regexp

RegExp

Regular expression

formatMessage

string

String validation if the message needs formatting

error

string | null

Text to display as the message error

onError

(error: string | null) => void

Function called when an error occurs

onChangeText

((text: string) => void) | undefined

Function called when the input's text changes

secureTextEntry

boolean

If true, the text input obscures the text entered so that sensitive text like passwords stay secure.

toggleEntryVisibilityOnLeftPress

boolean

If true, the input entry will be visible on left press

toggleEntryVisibilityOnRightPress

boolean

If true, the input entry will be visible on right press

onHandleEndEditing

() => void

Function that is called when text input ends

placeholderColor

string

Color of the placeholder string

isDatePickerInput

boolean

If true, the input will be a date picker

canClean

boolean

If true, a clean button will be rendered inside the input so it can be cleared

<Input
   placeholder="Placeholder Text"
   label="Label Text"
   containerStyle={style}
   accessoryLeft="home"
   onAccessoryLeftPress={() => console.log('Hello!')}
   canClean={false}
/>

Item About

Component used in the About Screen to display information.

All props are required.

Prop Name
Type
Description

label

string

Text displayed as the label of the component

value

string

Text displayed as the value

<ItemAbout value={version} label={strings.about.labelVersion} />

Loader

Displays a loading indicator.

All props are optional.

Prop Name
Type
Description

containerStyle

ViewStyle

The component's container style

lottieSource

string

Source for the lottie that is going to be used as loader

<Loader
   containerStyle={componentsDemoStyles.loaderLottie}
   lottieSource="lottie source"
/>

PDF Document Viewer

Prop Name
Type
Description

url

string

URL to open the PDF

containerStyle

ViewStyle (optional)

The component's container style

contentStyle

ViewStyle (optional)

The component's content style

onError

(error: object) => void (optional)

Invoked on load error

<PdfDocumentViewer
   url={'https://www.clickdimensions.com/links/TestPDFfile.pdf'}
/>

Tips for creating a friendly mobile PDF document:

  • Use bold text and 30 pt font for headlines.

  • Use 26 pt font for paragraph text.

  • Opt for single columns of text where possible.

  • Apply .25 margins all around to give yourself room to work.

  • Keep document files small in size for quicker load times.

Radio Button

Allows the user to complete a task that involves making choices such as selecting options.

Prop Name
Type
Description

id

string

id given to the radio button

text

string

Text displayed in the radio button

selectedValue

string | null

Value of the radio button

radioButtonStyle

ViewStyle (optional)

Style applied to the radio button

textStyle

TextStyle (optional)

Style applied to the text displayed

setSelectedValue

React.Dispatch<React.SetStateAction<string | null>>

Used to set the value of the radio button

onPress

({id, text}: OptionRadioButton) => void

Function to execute on press

<RadioButton
   key={id}
   selectedValue={selectedValue}
   setSelectedValue={setSelectedValue}
   radioButtonStyle={radioButtonStyle}
   textStyle={textStyle}
   {...radioButton}
   onPress={onPress}
/>

Switch

A boolean control component which sets its value to true or false when pressed.

This props extend the React Native SwitchPropsRN

All props are optional.

Prop Name
Type
Description

thumbColor

ColorValue

Color of the foreground switch grip

trackColor

ColorValue

Custom colors for the switch track.

value

boolean

The value of the switch. If true, the switch will be turned on. Default value is false.

onValueChange

() -> void

Invoked when the user tries to change the value of the switch. Receives the new value as an argument.

disabled

boolean

Disables interaction for the component

style

ViewStyle

Style of the component

ios_backgroundColor

ColorValue

Background of the switch. Only available on iOS.

<Switch
   onValueChange={setIsDisabled}
   value={isDisabled}
   style={componentsDemoStyles.marginBottom}
/>

Web-View

Renders web content in a native view.

Prop Name
Type
Description

url

string

URL to open the Web-View

onError

() => void (optional)

Invoked when there is an error opening the url

<WebView url={'https://www.linkerfinance.com'} />

Implements library to display a PDF document through a URL.

📱
react-native-pdf
Action Bottom Sheet
Action Card Opacity
Backdrop
Badge
Body Text
Button
Card
Checkbox
Form
Heading
Horizontal Rule Text
Image Background
Indicator
Input
Item About
Loader
PDF Document Viewer
Radio Button
Switch
Web-View
Badge
Example Card for "Add Account"
Unchecked
Checked
Click on the image to see it bigger
Indicator
Empty
Filled and not selected
Filled and selected
With error
With success
Disabled
Linker Spinner
Unchecked
Checked
Active
Inactive
Disabled