PluginProbe
Gutenberg / 24.1.0
Gutenberg v24.1.0
24.1.0 24.0.0 23.9.1 23.9.0 23.8.0 23.7.2 23.7.1 23.7.0 23.6.1 23.6.2 23.6.0 23.5.3 23.5.2 23.5.1 23.5.0 23.4.0 23.3.2 23.3.1 23.3.0 23.2.0 23.2.1 23.2.2 23.1.1 23.1.0 23.0.1 All 404 releases
← All changes | build/widgets/site-preview/render.js +42 -39 24.0.0 → 24.1.0 View file →
@@ -117,23 +117,34 @@
117 117 return n;
118 118 }
119 119 var clsx_default = clsx;
120 120
121 -// node_modules/@base-ui/utils/error.mjs
122 -var set;
121 +// node_modules/@base-ui/utils/createLogOnce.mjs
122 +var loggedMessages;
123 123 if (true) {
124 - set = /* @__PURE__ */ new Set();
124 + loggedMessages = /* @__PURE__ */ new Set();
125 125 }
126 -function error(...messages) {
127 - if (true) {
128 - const messageKey = messages.join(" ");
129 - if (!set.has(messageKey)) {
130 - set.add(messageKey);
131 - console.error(`Base UI: ${messageKey}`);
126 +function createLogOnce(severity, prefix) {
127 + return function logOnce(...messages) {
128 + if (true) {
129 + const message = messages.join(" ");
130 + const output = prefix ? `${prefix}: ${message}` : message;
131 + const key = `${severity}:${output}`;
132 + if (!loggedMessages.has(key)) {
133 + loggedMessages.add(key);
134 + if (severity === "warn") {
135 + console.warn(output);
136 + } else {
137 + console.error(output);
138 + }
139 + }
132 140 }
133 - }
141 + };
134 142 }
135 143
144 +// node_modules/@base-ui/utils/error.mjs
145 +var error = createLogOnce("error", "Base UI");
146 +
136 147 // node_modules/@base-ui/utils/safeReact.mjs
137 148 var React = __toESM(require_react(), 1);
138 149 var SafeReact = {
139 150 ...React
@@ -183,22 +194,14 @@
183 194 }
184 195 }
185 196
186 197 // node_modules/@base-ui/utils/warn.mjs
187 -var set2;
188 -if (true) {
189 - set2 = /* @__PURE__ */ new Set();
190 -}
191 -function warn(...messages) {
192 - if (true) {
193 - const messageKey = messages.join(" ");
194 - if (!set2.has(messageKey)) {
195 - set2.add(messageKey);
196 - console.warn(`Base UI: ${messageKey}`);
197 - }
198 - }
199 -}
198 +var warn = createLogOnce("warn", "Base UI");
200 199
200 +// node_modules/@base-ui/utils/empty.mjs
201 +var EMPTY_ARRAY = Object.freeze([]);
202 +var EMPTY_OBJECT = Object.freeze({});
203 +
201 204 // node_modules/@base-ui/utils/useIsoLayoutEffect.mjs
202 205 var React3 = __toESM(require_react(), 1);
203 206 var noop = () => {
204 207 };
@@ -332,12 +335,8 @@
332 335 }
333 336 return void 0;
334 337 }
335 338
336 -// node_modules/@base-ui/utils/empty.mjs
337 -var EMPTY_ARRAY = Object.freeze([]);
338 -var EMPTY_OBJECT = Object.freeze({});
339 -
340 339 // node_modules/@base-ui/react/internals/getStateAttributesProps.mjs
341 340 function getStateAttributesProps(state, customMapping) {
342 341 const props = {};
343 342 for (const key in state) {
@@ -525,10 +524,13 @@
525 524
526 525 // node_modules/@base-ui/react/internals/useRenderElement.mjs
527 526 var import_react = __toESM(require_react(), 1);
528 527 function useRenderElement(element, componentProps, params = {}) {
529 - const renderProp = componentProps.render;
530 - const outProps = useRenderElementProps(componentProps, params);
528 + let renderProp = componentProps.render;
529 + if (params.enabled !== false) {
530 + renderProp = unwrapLazyRenderProp(renderProp);
531 + }
532 + const outProps = useRenderElementProps(componentProps, params, renderProp);
531 533 if (params.enabled === false) {
532 534 return null;
533 535 }
534 536 const state = params.state ?? EMPTY_OBJECT;
@@ -533,13 +535,12 @@
533 535 }
534 536 const state = params.state ?? EMPTY_OBJECT;
535 537 return evaluateRenderProp(element, renderProp, outProps, state);
536 538 }
537 -function useRenderElementProps(componentProps, params = {}) {
539 +function useRenderElementProps(componentProps, params, renderProp) {
538 540 const {
539 541 className: classNameProp,
540 - style: styleProp,
541 - render: renderProp
542 + style: styleProp
542 543 } = componentProps;
543 544 const {
544 545 state = EMPTY_OBJECT,
545 546 ref,
@@ -580,8 +581,15 @@
580 581 }
581 582 var REACT_LAZY_TYPE = /* @__PURE__ */ Symbol.for("react.lazy");
582 583 var COMPONENT_IDENTIFIER_PATTERN = /^[A-Z][A-Za-z0-9$]*$/;
583 584 var LOWERCASE_CHARACTER_PATTERN = /[a-z]/;
585 +function unwrapLazyRenderProp(render) {
586 + if (render?.$$typeof !== REACT_LAZY_TYPE) {
587 + return render;
588 + }
589 + const unwrapped = React6.Children.toArray(render)[0];
590 + return /* @__PURE__ */ React6.isValidElement(unwrapped) ? unwrapped : render;
591 +}
584 592 function evaluateRenderProp(element, render, props, state) {
585 593 if (render) {
586 594 if (typeof render === "function") {
587 595 if (true) {
@@ -590,19 +598,14 @@
590 598 return render(props, state);
591 599 }
592 600 const mergedProps = mergeProps(props, render.props);
593 601 mergedProps.ref = props.ref;
594 - let newElement = render;
595 - if (newElement?.$$typeof === REACT_LAZY_TYPE) {
596 - const children = React6.Children.toArray(render);
597 - newElement = children[0];
598 - }
599 602 if (true) {
600 - if (!/* @__PURE__ */ React6.isValidElement(newElement)) {
603 + if (!/* @__PURE__ */ React6.isValidElement(render)) {
601 604 throw new Error(["Base UI: The `render` prop was provided an invalid React element as `React.isValidElement(render)` is `false`.", "A valid React element must be provided to the `render` prop because it is cloned with props to replace the default element.", "https://base-ui.com/r/invalid-render-prop"].join("\n"));
602 605 }
603 606 }
604 - return /* @__PURE__ */ React6.cloneElement(newElement, mergedProps);
607 + return /* @__PURE__ */ React6.cloneElement(render, mergedProps);
605 608 }
606 609 if (element) {
607 610 if (typeof element === "string") {
608 611 return renderTag(element, props);