Files
starface-outlook-sync-addin/node_modules/@fluentui/utilities/lib-commonjs/renderFunction/composeRenderFunction.js
T
Stefan Hacker 37ad745546 first commit
2026-04-03 09:38:48 +02:00

28 lines
1.1 KiB
JavaScript

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.composeRenderFunction = composeRenderFunction;
var memoize_1 = require("../memoize");
function createComposedRenderFunction(outer) {
var outerMemoizer = (0, memoize_1.createMemoizer)(function (inner) {
var innerMemoizer = (0, memoize_1.createMemoizer)(function (defaultRender) {
return function (innerProps) {
return inner(innerProps, defaultRender);
};
});
return function (outerProps, defaultRender) {
return outer(outerProps, defaultRender ? innerMemoizer(defaultRender) : inner);
};
});
return outerMemoizer;
}
var memoizer = (0, memoize_1.createMemoizer)(createComposedRenderFunction);
/**
* Composes two 'render functions' to produce a final render function that renders
* the outer function, passing the inner function as 'default render'. The inner function
* is then passed the original 'default render' prop.
* @public
*/
function composeRenderFunction(outer, inner) {
return memoizer(outer)(inner);
}
//# sourceMappingURL=composeRenderFunction.js.map