UNPKG

@carbon/react

Version:

React components for the Carbon Design System

49 lines (47 loc) 1.49 kB
/** * Copyright IBM Corp. 2016, 2026 * * This source code is licensed under the Apache-2.0 license found in the * LICENSE file in the root directory of this source tree. */ const require_runtime = require("../../_virtual/_rolldown/runtime.js"); const require_TextDirectionContext = require("./TextDirectionContext.js"); let react = require("react"); react = require_runtime.__toESM(react); let prop_types = require("prop-types"); prop_types = require_runtime.__toESM(prop_types); let react_jsx_runtime = require("react/jsx-runtime"); //#region src/components/Text/TextDirection.tsx /** * Copyright IBM Corp. 2016, 2026 * * This source code is licensed under the Apache-2.0 license found in the * LICENSE file in the root directory of this source tree. */ const TextDirection = ({ children, dir = "auto", getTextDirection }) => { const savedCallback = (0, react.useRef)(getTextDirection); const value = (0, react.useMemo)(() => { return { direction: dir, getTextDirection: savedCallback }; }, [dir]); (0, react.useEffect)(() => { savedCallback.current = getTextDirection; }, [getTextDirection]); return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_TextDirectionContext.TextDirectionContext.Provider, { value, children }); }; TextDirection.propTypes = { children: prop_types.default.node, dir: prop_types.default.oneOf([ "ltr", "rtl", "auto" ]), getTextDirection: prop_types.default.func }; //#endregion exports.TextDirection = TextDirection;