@fluentui/react-compose
Version:
Fluent UI React component composition.
26 lines • 1.22 kB
JavaScript
define(["require", "exports", "tslib", "./resolveClasses", "./resolveSlotProps"], function (require, exports, tslib_1, resolveClasses_1, resolveSlotProps_1) {
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
/**
* Merge props takes in state and compose options, and resolves slots and slotProps.
* It's expected that the component will call mergeProps(state, options) from within
* render; after resolving state and before rendering slots and slotProps.
*/
function mergeProps(state, options) {
var result = {
state: state,
slots: tslib_1.__assign(tslib_1.__assign({}, options.slots), {
// eslint-disable-next-line @typescript-eslint/no-explicit-any
root: state.as || options.slots.root || 'div' }),
slotProps: {},
};
// Resolve classes.
resolveClasses_1.resolveClasses(result, options.classes);
// Resolve slotProps/slots from state.
resolveSlotProps_1.resolveSlotProps(result, options);
// TODO: Resolve inline styles.
return result;
}
exports.mergeProps = mergeProps;
});
//# sourceMappingURL=mergeProps.js.map