amis-rpc-design/node_modules/antd/lib/config-provider/hooks/useSize.js
2023-10-07 19:42:30 +08:00

26 lines
835 B
JavaScript

"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _react = _interopRequireDefault(require("react"));
var _SizeContext = _interopRequireDefault(require("../SizeContext"));
const useSize = customSize => {
const size = _react.default.useContext(_SizeContext.default);
const mergedSize = _react.default.useMemo(() => {
if (!customSize) {
return size;
}
if (typeof customSize === 'string') {
return customSize !== null && customSize !== void 0 ? customSize : size;
}
if (customSize instanceof Function) {
return customSize(size);
}
return size;
}, [customSize, size]);
return mergedSize;
};
var _default = exports.default = useSize;