@neonxp/compose (0.0.6)

Published 2024-01-05 04:10:14 +03:00 by NeonXP in NeonXP/compose

Installation

@neonxp:registry=
npm install @neonxp/compose@0.0.6
"@neonxp/compose": "0.0.6"

About this package

compose

Simple provider compose for new React useContext Api, unstated-next or same.

Usage

unstated-next:

import React, { useState } from 'react';
import { createContainer } from 'unstated-next';

import { Compose } from 'provider-compose'; // <---

const useProvider1 = () => {
  const [a, setA] = useState(0);
  return { a, setA }
}

const Provider1 = createContainer(useProvider1);

const ComponentA = (props) => {
  const { a, setA } = Provider1.useContainer()
  return <button onClick={() => setA(a + 1)}>A={a}</button>
}
const useProvider2 = () => {
  const [b, setB] = useState(0);
  return { b, setB }
}

const Provider2 = createContainer(useProvider2);

const ComponentB = (props) => {
  const { b, setB } = Provider2.useContainer()
  return <button onClick={() => setB(b + 1)}>B={b}</button>
}

const store = [Provider1.Provider, Provider2.Provider];  // <---

export default () => (
  <Compose providers={store}>  // <---
    <ComponentA />
    <ComponentB />
  </Compose>
)

Dependencies

Development Dependencies

ID Version
@rollup/plugin-commonjs ^25.0.7
@rollup/plugin-node-resolve ^15.2.3
rollup ^4.3.0
rollup-plugin-peer-deps-external ^2.2.4

Peer Dependencies

ID Version
react *
unstated-next ^1.1.0

Keywords

unstated react context state-management library
Details
npm
2024-01-05 04:10:14 +03:00
53
Alexander NeonXP Kiryukhin
MIT
latest
1.5 KiB
Assets (1)
Versions (1) View all
0.0.6 2024-01-05