UNPKG

recoil

Version:

Recoil - A state management library for React

145 lines (121 loc) 4.2 kB
/** * Copyright (c) Facebook, Inc. and its affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. * * @emails oncall+recoil * @flow strict-local * @format */ 'use strict'; export type { PersistenceType } from './core/Recoil_Node'; export type { RecoilValue, RecoilState, RecoilValueReadOnly } from './core/Recoil_RecoilValue'; export type { MutableSnapshot, Snapshot, SnapshotID } from './core/Recoil_Snapshot'; export type { SetterOrUpdater } from './hooks/Recoil_Hooks'; export type { RecoilCallbackInterface } from './hooks/Recoil_useRecoilCallback'; export type { RecoilBridge } from './hooks/Recoil_useRecoilBridgeAcrossReactRoots'; export type { Loadable } from './adt/Recoil_Loadable'; export type { AtomEffect, PersistenceSettings } from './recoil_values/Recoil_atom'; export type { TransactionInterface } from './core/Recoil_AtomicUpdates'; export type { GetRecoilValue, SetRecoilState, ResetRecoilState } from './recoil_values/Recoil_callbackTypes'; export type { Parameter, SelectorFamilyOptions } from './recoil_values/Recoil_selectorFamily'; const { RecoilLoadable } = require('./adt/Recoil_Loadable'); const { DefaultValue } = require('./core/Recoil_Node'); const { RecoilRoot } = require('./core/Recoil_RecoilRoot.react'); const { isRecoilValue } = require('./core/Recoil_RecoilValue'); const { retentionZone } = require('./core/Recoil_RetentionZone'); const { freshSnapshot } = require('./core/Recoil_Snapshot'); const { useRecoilState, useRecoilStateLoadable, useRecoilValue, useRecoilValueLoadable, useResetRecoilState, useSetRecoilState, useSetUnvalidatedAtomValues } = require('./hooks/Recoil_Hooks'); const { useGotoRecoilSnapshot, useRecoilSnapshot, useRecoilTransactionObserver, useTransactionObservation_DEPRECATED } = require('./hooks/Recoil_SnapshotHooks'); const useGetRecoilValueInfo = require('./hooks/Recoil_useGetRecoilValueInfo'); const useRecoilBridgeAcrossReactRoots = require('./hooks/Recoil_useRecoilBridgeAcrossReactRoots'); const useRecoilCallback = require('./hooks/Recoil_useRecoilCallback'); const useRecoilRefresher = require('./hooks/Recoil_useRecoilRefresher'); const useRecoilTransaction = require('./hooks/Recoil_useRecoilTransaction'); const useRetain = require('./hooks/Recoil_useRetain'); const atom = require('./recoil_values/Recoil_atom'); const atomFamily = require('./recoil_values/Recoil_atomFamily'); const constSelector = require('./recoil_values/Recoil_constSelector'); const errorSelector = require('./recoil_values/Recoil_errorSelector'); const readOnlySelector = require('./recoil_values/Recoil_readOnlySelector'); const selector = require('./recoil_values/Recoil_selector'); const selectorFamily = require('./recoil_values/Recoil_selectorFamily'); const { noWait, waitForAll, waitForAllSettled, waitForAny, waitForNone } = require('./recoil_values/Recoil_WaitFor'); module.exports = { // Types DefaultValue, isRecoilValue, RecoilLoadable, // Recoil Root RecoilRoot, useRecoilBridgeAcrossReactRoots_UNSTABLE: useRecoilBridgeAcrossReactRoots, // Atoms/Selectors atom, selector, // Convenience Atoms/Selectors atomFamily, selectorFamily, constSelector, errorSelector, readOnlySelector, // Concurrency Helpers for Atoms/Selectors noWait, waitForNone, waitForAny, waitForAll, waitForAllSettled, // Hooks for Atoms/Selectors useRecoilValue, useRecoilValueLoadable, useRecoilState, useRecoilStateLoadable, useSetRecoilState, useResetRecoilState, useGetRecoilValueInfo_UNSTABLE: useGetRecoilValueInfo, useRecoilRefresher_UNSTABLE: useRecoilRefresher, // Hooks for complex operations useRecoilCallback, useRecoilTransaction_UNSTABLE: useRecoilTransaction, // Snapshots useGotoRecoilSnapshot, useRecoilSnapshot, useRecoilTransactionObserver_UNSTABLE: useRecoilTransactionObserver, useTransactionObservation_UNSTABLE: useTransactionObservation_DEPRECATED, useSetUnvalidatedAtomValues_UNSTABLE: useSetUnvalidatedAtomValues, snapshot_UNSTABLE: freshSnapshot, // Memory Management useRetain, retentionZone };