Skip to content

Base utility for building a modal dialog for collecting information in React

License

Notifications You must be signed in to change notification settings

rhdeck/react-modal-base

Repository files navigation

Template for making easy-to-work-with tempates

ts-template

Usage

  1. Copy this template
  2. Clone to a local directory (eg git clone https://github.com/me/my-repository/ && cd my-repository)
  3. Run yarn && yarn setup to initialize the node package (Get rid of template strings - and this readme!)
  4. Happy Coding!

Useful Scripts

  1. yarn build will build using typescript pre-configured to node-compatible defaults
  2. yarn docs will auto-generate a README.md that starts with TOP.md, then adds CLI documentation (via commanderdoc) for any tool you have set up, and then library documentation after that.
  3. yarn test is pre-configured to test for typescript errors
  4. yarn watch will watch the codebase for changes and rebuild (using livelink)

Git code protections

  1. git commit will be blocked on the main branch unless you set the environment variable ALLOWMAIN=1 Branch commits and PRs are thus encouraged
  2. git commit also tests messages for meeting the commitline standard conventions.
  3. git commit blocks pushes that do not pass yarn test (as a base case, they must pass typescript compilation)
  4. npm publish will always rebuild the code, the documentation, and push those changes back to the repository.
  5. npm publish will only publish the lib and src directories - any others are no

A note on "main"

I made a deliberate choice to change the primary branch from master to main for reasons that are obvious to some. This repository endeavors to make that just automatic.

PRs and feedback welcome via GitHub issues.

@raydeck/react-modal-base - v4.0.0

Globals

@raydeck/react-modal-base - v4.0.0

Index

Interfaces

Functions

Functions

makeDeferred

makeDeferred<T>(): DeferredType<T>

Defined in index.tsx:14

Type parameters:

Name
T

Returns: DeferredType<T>


makeDialog

makeDialog<PromiseType, ArgsType>(__namedParameters: { Dialog: FC<ArgsType & ContextType<PromiseType> & { reject?: undefined | (reason?: any) => void ; resolve?: undefined | (arg?: PromiseType) => void }> ; useSetValue: () => ArgsType ; useSetContext: (__namedParameters: {}) => void }): [FC, () => [(arg: Partial<ArgsType>) => Promise<PromiseType | undefined>, (arg?: PromiseType) => void], (C: FC) => FC]

Defined in index.tsx:29

Type parameters:

Name Type
PromiseType -
ArgsType BaseType

Parameters:

Name Type
__namedParameters { Dialog: FC<ArgsType & ContextType<PromiseType> & { reject?: undefined | (reason?: any) => void ; resolve?: undefined | (arg?: PromiseType) => void }> ; useSetValue: () => ArgsType ; useSetContext: (__namedParameters: {}) => void }

Returns: [FC, () => [(arg: Partial<ArgsType>) => Promise<PromiseType | undefined>, (arg?: PromiseType) => void], (C: FC) => FC]

@raydeck/react-modal-base - v4.0.0

Globals / BaseType

Interface: BaseType

Hierarchy

@raydeck/react-modal-base - v4.0.0

Globals / ContextType

Interface: ContextType<PromiseType>

Type parameters

  • PromiseType

Hierarchy

Index

Properties

Properties

deferred

Optional deferred: DeferredType<PromiseType>

Defined in index.tsx:26


isOpen

isOpen: boolean

Defined in index.tsx:24


setDeferred

Optional setDeferred: undefined | (deferred: DeferredType<PromiseType>) => void

Defined in index.tsx:27


setIsOpen

setIsOpen: (isOpen: boolean) => void

Defined in index.tsx:25

@raydeck/react-modal-base - v4.0.0

Globals / DeferredType

Interface: DeferredType<T>

Type parameters

  • T

Hierarchy

  • DeferredType

Index

Properties

Properties

promise

Optional promise: Promise<T>

Defined in index.tsx:12


reject

Optional reject: undefined | (reason?: any) => void

Defined in index.tsx:11


resolve

Optional resolve: undefined | (arg?: T) => void

Defined in index.tsx:10

About

Base utility for building a modal dialog for collecting information in React

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages