UNPKG

@wordpress/element

Version:
420 lines (381 loc) 9.26 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); Object.defineProperty(exports, "Children", { enumerable: true, get: function () { return _react.Children; } }); Object.defineProperty(exports, "Component", { enumerable: true, get: function () { return _react.Component; } }); Object.defineProperty(exports, "Fragment", { enumerable: true, get: function () { return _react.Fragment; } }); Object.defineProperty(exports, "PureComponent", { enumerable: true, get: function () { return _react.PureComponent; } }); Object.defineProperty(exports, "StrictMode", { enumerable: true, get: function () { return _react.StrictMode; } }); Object.defineProperty(exports, "Suspense", { enumerable: true, get: function () { return _react.Suspense; } }); Object.defineProperty(exports, "cloneElement", { enumerable: true, get: function () { return _react.cloneElement; } }); exports.concatChildren = concatChildren; Object.defineProperty(exports, "createContext", { enumerable: true, get: function () { return _react.createContext; } }); Object.defineProperty(exports, "createElement", { enumerable: true, get: function () { return _react.createElement; } }); Object.defineProperty(exports, "createRef", { enumerable: true, get: function () { return _react.createRef; } }); Object.defineProperty(exports, "forwardRef", { enumerable: true, get: function () { return _react.forwardRef; } }); Object.defineProperty(exports, "isValidElement", { enumerable: true, get: function () { return _react.isValidElement; } }); Object.defineProperty(exports, "lazy", { enumerable: true, get: function () { return _react.lazy; } }); Object.defineProperty(exports, "memo", { enumerable: true, get: function () { return _react.memo; } }); Object.defineProperty(exports, "startTransition", { enumerable: true, get: function () { return _react.startTransition; } }); exports.switchChildrenNodeName = switchChildrenNodeName; Object.defineProperty(exports, "useCallback", { enumerable: true, get: function () { return _react.useCallback; } }); Object.defineProperty(exports, "useContext", { enumerable: true, get: function () { return _react.useContext; } }); Object.defineProperty(exports, "useDebugValue", { enumerable: true, get: function () { return _react.useDebugValue; } }); Object.defineProperty(exports, "useDeferredValue", { enumerable: true, get: function () { return _react.useDeferredValue; } }); Object.defineProperty(exports, "useEffect", { enumerable: true, get: function () { return _react.useEffect; } }); Object.defineProperty(exports, "useId", { enumerable: true, get: function () { return _react.useId; } }); Object.defineProperty(exports, "useImperativeHandle", { enumerable: true, get: function () { return _react.useImperativeHandle; } }); Object.defineProperty(exports, "useInsertionEffect", { enumerable: true, get: function () { return _react.useInsertionEffect; } }); Object.defineProperty(exports, "useLayoutEffect", { enumerable: true, get: function () { return _react.useLayoutEffect; } }); Object.defineProperty(exports, "useMemo", { enumerable: true, get: function () { return _react.useMemo; } }); Object.defineProperty(exports, "useReducer", { enumerable: true, get: function () { return _react.useReducer; } }); Object.defineProperty(exports, "useRef", { enumerable: true, get: function () { return _react.useRef; } }); Object.defineProperty(exports, "useState", { enumerable: true, get: function () { return _react.useState; } }); Object.defineProperty(exports, "useSyncExternalStore", { enumerable: true, get: function () { return _react.useSyncExternalStore; } }); Object.defineProperty(exports, "useTransition", { enumerable: true, get: function () { return _react.useTransition; } }); var _react = require("react"); /** * External dependencies */ // eslint-disable-next-line @typescript-eslint/no-restricted-imports /** * Object containing a React element. */ /** * Object containing a React component. */ /** * Object containing a React synthetic event. */ /** * Object containing a React ref object. */ /** * Object containing a React ref callback. */ /** * Object containing a React ref. */ /** * Object that provides utilities for dealing with React children. */ /** * Creates a copy of an element with extended props. * * @param {Element} element Element * @param {?Object} props Props to apply to cloned element * * @return {Element} Cloned element. */ /** * A base class to create WordPress Components (Refs, state and lifecycle hooks) */ /** * Creates a context object containing two components: a provider and consumer. * * @param {Object} defaultValue A default data stored in the context. * * @return {Object} Context object. */ /** * Returns a new element of given type. Type can be either a string tag name or * another function which itself returns an element. * * @param {?(string|Function)} type Tag name or element creator * @param {Object} props Element properties, either attribute * set to apply to DOM node or values to * pass through to element creator * @param {...Element} children Descendant elements * * @return {Element} Element. */ /** * Returns an object tracking a reference to a rendered element via its * `current` property as either a DOMElement or Element, dependent upon the * type of element rendered with the ref attribute. * * @return {Object} Ref object. */ /** * Component enhancer used to enable passing a ref to its wrapped component. * Pass a function argument which receives `props` and `ref` as its arguments, * returning an element using the forwarded ref. The return value is a new * component which forwards its ref. * * @param {Function} forwarder Function passed `props` and `ref`, expected to * return an element. * * @return {Component} Enhanced component. */ /** * A component which renders its children without any wrapping element. */ /** * Checks if an object is a valid React Element. * * @param {Object} objectToCheck The object to be checked. * * @return {boolean} true if objectToTest is a valid React Element and false otherwise. */ /** * @see https://react.dev/reference/react/memo */ /** * Component that activates additional checks and warnings for its descendants. */ /** * @see https://react.dev/reference/react/useCallback */ /** * @see https://react.dev/reference/react/useContext */ /** * @see https://react.dev/reference/react/useDebugValue */ /** * @see https://react.dev/reference/react/useDeferredValue */ /** * @see https://react.dev/reference/react/useEffect */ /** * @see https://react.dev/reference/react/useId */ /** * @see https://react.dev/reference/react/useImperativeHandle */ /** * @see https://react.dev/reference/react/useInsertionEffect */ /** * @see https://react.dev/reference/react/useLayoutEffect */ /** * @see https://react.dev/reference/react/useMemo */ /** * @see https://react.dev/reference/react/useReducer */ /** * @see https://react.dev/reference/react/useRef */ /** * @see https://react.dev/reference/react/useState */ /** * @see https://react.dev/reference/react/useSyncExternalStore */ /** * @see https://react.dev/reference/react/useTransition */ /** * @see https://react.dev/reference/react/startTransition */ /** * @see https://react.dev/reference/react/lazy */ /** * @see https://react.dev/reference/react/Suspense */ /** * @see https://react.dev/reference/react/PureComponent */ /** * Concatenate two or more React children objects. * * @param childrenArguments - Array of children arguments (array of arrays/strings/objects) to concatenate. * @return The concatenated value. */ function concatChildren(...childrenArguments) { return childrenArguments.reduce((accumulator, children, i) => { _react.Children.forEach(children, (child, j) => { if ((0, _react.isValidElement)(child) && typeof child !== 'string') { child = (0, _react.cloneElement)(child, { key: [i, j].join() }); } accumulator.push(child); }); return accumulator; }, []); } /** * Switches the nodeName of all the elements in the children object. * * @param children Children object. * @param nodeName Node name. * * @return The updated children object. */ function switchChildrenNodeName(children, nodeName) { return children && _react.Children.map(children, (elt, index) => { if (typeof elt?.valueOf() === 'string') { return (0, _react.createElement)(nodeName, { key: index }, elt); } if (!(0, _react.isValidElement)(elt)) { return elt; } const { children: childrenProp, ...props } = elt.props; return (0, _react.createElement)(nodeName, { key: index, ...props }, childrenProp); }); } //# sourceMappingURL=react.js.map