UNPKG

@cosva-lab/form-builder

Version:
29 lines (27 loc) 1.4 kB
import CircularIndeterminate from "../../Loading/index.mjs"; import React from "react"; import Grow from "@mui/material/Grow"; //#region src/contexts/GlobalTranslate/index.tsx const Animation = ({ children }) => /* @__PURE__ */ React.createElement(Grow, { in: true, style: { transformOrigin: "0 0 0" }, timeout: 1e3 }, children); const GlobalTranslateContext = React.createContext(({ message }) => message); const useGlobalTranslate = () => React.useContext(GlobalTranslateContext); const GlobalTranslateProvider = ({ children, translator }) => /* @__PURE__ */ React.createElement(GlobalTranslateContext.Provider, { value: translator }, children); const FieldTranslateConsumer = GlobalTranslateContext.Consumer; const Comp = (props) => { const translate = useGlobalTranslate(); return /* @__PURE__ */ React.createElement("span", null, translate(props)); }; const GlobalTranslate = (props) => { const { styles, ...rest } = props; return /* @__PURE__ */ React.createElement(React.Suspense, { fallback: /* @__PURE__ */ React.createElement(Animation, null, /* @__PURE__ */ React.createElement("div", { style: { ...styles, display: "flex", justifyContent: "center" } }, /* @__PURE__ */ React.createElement(CircularIndeterminate, { size: 20 }))) }, /* @__PURE__ */ React.createElement(Comp, rest)); }; //#endregion export { GlobalTranslate, GlobalTranslateProvider, useGlobalTranslate };