@gechiui/components
Version:
UI components for GeChiUI.
55 lines (44 loc) • 1.45 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _element = require("@gechiui/element");
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
var _context = require("../ui/context");
var _view = require("../view");
var _hook = require("./hook");
/**
* Internal dependencies
*/
/**
* @param {import('../ui/context').GeChiUIComponentProps<import('./types').Props, 'div'>} props
* @param {import('react').Ref<any>} forwardedRef
*/
function Scrollable(props, forwardedRef) {
const scrollableProps = (0, _hook.useScrollable)(props);
return (0, _element.createElement)(_view.View, (0, _extends2.default)({}, scrollableProps, {
ref: forwardedRef
}));
}
/**
* `Scrollable` is a layout component that content in a scrollable container.
*
* @example
* ```jsx
* import { __experimentalScrollable as Scrollable } from `@gechiui/components`;
*
* function Example() {
* return (
* <Scrollable style={ { maxHeight: 200 } }>
* <div style={ { height: 500 } }>...</div>
* </Scrollable>
* );
* }
* ```
*/
const ConnectedScrollable = (0, _context.contextConnect)(Scrollable, 'Scrollable');
var _default = ConnectedScrollable;
exports.default = _default;
//# sourceMappingURL=component.js.map