UNPKG

@blocklet/ui-react

Version:

Some useful front-end web components that can be used in Blocklets.

42 lines (41 loc) 1.1 kB
import { jsx as f } from "react/jsx-runtime"; import { createContext as g, useState as i, use as p, useMemo as C, useEffect as m } from "react"; import { SessionContext as y } from "@arcblock/did-connect/lib/Session"; const d = g({}), { Provider: w, Consumer: U } = d; function h({ children: n }) { const [S] = i(!1), { session: a } = p(y), { user: e } = a, [s, t] = i(), c = C(() => e?.didSpace?.endpoint, [e?.didSpace]); m(() => { t(e?.didSpace); }, [e?.didSpace]); const u = async () => { t(void 0); }, r = (o) => { }; return /* @__PURE__ */ f( w, { value: { loading: S, spaceGateway: s, session: a, deleteSpaceGateway: u, updateSpaceGateway: async (o) => { t(o), await r(o.endpoint); }, storageEndpoint: c, settingStorageEndpoint: r, hasStorageEndpoint: !!(c && s) }, children: n } ); } function P() { return p(d); } export { U as ConfigUserSpaceConsumer, d as ConfigUserSpaceContext, h as ConfigUserSpaceProvider, P as useConfigUserSpaceContext };