@roadiehq/backstage-plugin-travis-ci
Version:
25 lines (22 loc) • 880 B
JavaScript
import { jsx, Fragment } from 'react/jsx-runtime';
import { createContext, useEffect } from 'react';
import { travisCIApiRef } from '../api/index.esm.js';
import { useLocalStorage } from 'react-use';
const StateContext = createContext(
[]
);
const STORAGE_KEY = `${travisCIApiRef.id}.settings`;
const ContextProvider = ({ entity, children }) => {
const [settings, setSettings] = useLocalStorage(STORAGE_KEY, { entity });
if (settings === void 0) {
throw new Error("Firebase functions plugin settings is undefined");
}
useEffect(() => {
if (settings.entity !== entity) {
setSettings({ entity });
}
}, [entity]);
return /* @__PURE__ */ jsx(StateContext.Provider, { value: [settings, setSettings], children: /* @__PURE__ */ jsx(Fragment, { children }) });
};
export { ContextProvider, StateContext };
//# sourceMappingURL=ContextProvider.esm.js.map