UNPKG

@datalayer/core

Version:
45 lines (44 loc) 1.66 kB
/* * Copyright (c) 2023-2025 Datalayer, Inc. * Distributed under the terms of the Modified BSD License. */ import { createStore } from 'zustand/vanilla'; import { useStore } from 'zustand'; import { coreStore } from './substates/CoreState'; import { cellStore } from './substates/CellState'; import { documentStore } from './substates/DocumentState'; import { gradeStore } from './substates/GradeState'; import { iamStore } from './substates/IAMState'; import { runtimesStore } from './substates/RuntimesState'; import { layoutStore } from './substates/LayoutState'; import { nbformatStore } from './substates/NbformatState'; import { organizationStore } from './substates/OrganizationState'; import { spaceStore } from './substates/SpaceState'; import { surveysStore } from './substates/SurveysState'; import { teamStore } from './substates/TeamState'; import { isDevDeployment } from '../utils'; export const runStore = createStore((set, get) => ({ version: '', setVersion: version => { if (version && !get().version) { set(state => ({ version })); } }, isDev: isDevDeployment(), core: coreStore.getState, cell: cellStore.getState, document: documentStore.getState, grade: gradeStore.getState, iam: iamStore.getState, kernels: runtimesStore.getState, layout: layoutStore.getState, nbformat: nbformatStore.getState, organization: organizationStore.getState, space: spaceStore.getState, success: surveysStore.getState, team: teamStore.getState, })); export function useRunStore(selector) { return useStore(runStore, selector); } export default useRunStore;