sceneLinkageDrawerContext.ts 707 Bytes
import type { ComputedRef, InjectionKey } from 'vue';
import { createContext, useContext } from '/@/hooks/core/useContext';

export interface SceneLinkageDrawerContextProps {
  organizationId: ComputedRef<string | undefined>;
  disabledDrawer: ComputedRef<boolean>;
  ruleChainId: ComputedRef<string | undefined>;
}

const key: InjectionKey<SceneLinkageDrawerContextProps> = Symbol('scene-linkage-drawer-context');

export function createSceneLinkageDrawerContext(context: SceneLinkageDrawerContextProps) {
  return createContext<SceneLinkageDrawerContextProps>(context, key, { native: true });
}

export function useSceneLinkageDrawerContext() {
  return useContext<SceneLinkageDrawerContextProps>(key);
}