UNPKG

tdesign-react

Version:
91 lines (87 loc) 3.32 kB
/** * tdesign v1.16.2 * (c) 2025 tdesign * @license MIT */ import { _ as _defineProperty } from '../../_chunks/dep-d67deb2c.js'; import { _ as _slicedToArray } from '../../_chunks/dep-10d5731f.js'; import React from 'react'; import { isString } from 'lodash-es'; import classNames from 'classnames'; import { Loading } from '../../loading/index.js'; import useClassName from './useClassName.js'; import { useLocaleReceiver } from '../../locale/LocalReceiver.js'; import '../../_chunks/dep-8abcbcbc.js'; import '../../_chunks/dep-74a10cfb.js'; import '../../loading/Loading.js'; import '../../_chunks/dep-ca8d3fa0.js'; import '../../common/Portal.js'; import 'react-dom'; import '../../hooks/useConfig.js'; import '../../config-provider/ConfigContext.js'; import '../../_chunks/dep-6b235a32.js'; import '../../_chunks/dep-b9afa32b.js'; import 'dayjs'; import '../../hooks/useLayoutEffect.js'; import '../../hooks/useDefaultProps.js'; import '../../loading/defaultProps.js'; import '../../loading/gradient.js'; import '../../_chunks/dep-79351403.js'; import '../../_chunks/dep-fe89155e.js'; import '../../_chunks/dep-a3a3e527.js'; import '../../_chunks/dep-ed34fbd4.js'; import '../../hooks/useDomRefCallback.js'; import '../../loading/plugin.js'; import '../../_util/react-render.js'; import '../../_chunks/dep-4f115c18.js'; import '../../common/PluginContainer.js'; import '../../config-provider/ConfigProvider.js'; function useAsyncLoading(props) { var _useLocaleReceiver = useLocaleReceiver("table"), _useLocaleReceiver2 = _slicedToArray(_useLocaleReceiver, 1), local = _useLocaleReceiver2[0]; var _useClassName = useClassName(), isLoadingClass = _useClassName.isLoadingClass, isLoadMoreClass = _useClassName.isLoadMoreClass, asyncLoadingClass = _useClassName.asyncLoadingClass; var classes = [asyncLoadingClass, _defineProperty(_defineProperty({}, isLoadingClass, props.asyncLoading === "loading"), isLoadMoreClass, props.asyncLoading === "load-more")]; function onLoadClick() { var _props$onAsyncLoading; if (typeof props.asyncLoading !== "string") return; var status = props.asyncLoading === "loading" ? "loading" : "load-more"; (_props$onAsyncLoading = props.onAsyncLoadingClick) === null || _props$onAsyncLoading === void 0 || _props$onAsyncLoading.call(props, { status: status }); } function renderAsyncLoading() { var asyncLoadingNode = props.asyncLoading; if (isString(asyncLoadingNode)) { var asyncLoading = props.asyncLoading; var loadingText = { "load-more": local.loadingMoreText, loading: local.loadingText }[String(asyncLoading)]; return /* @__PURE__ */React.createElement("div", { className: classNames(classes), onClick: onLoadClick }, /* @__PURE__ */React.createElement(Loading, { loading: true, size: "small", text: loadingText, indicator: asyncLoading === "loading" })); } if (asyncLoadingNode) { return /* @__PURE__ */React.createElement("div", { className: classNames(classes), onClick: onLoadClick }, asyncLoadingNode); } return null; } return { renderAsyncLoading: renderAsyncLoading }; } export { useAsyncLoading as default }; //# sourceMappingURL=useAsyncLoading.js.map