12345678910111213141516171819202122232425262728293031323334 |
- import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
- import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
- import _typeof from "@babel/runtime/helpers/esm/typeof";
- var _excluded = ["show"];
- import * as React from 'react';
- /**
- * Cut `value` by the `count.max` prop.
- */
- export function inCountRange(value, countConfig) {
- if (!countConfig.max) {
- return true;
- }
- var count = countConfig.strategy(value);
- return count <= countConfig.max;
- }
- export default function useCount(count, showCount) {
- return React.useMemo(function () {
- var mergedConfig = {};
- if (showCount) {
- mergedConfig.show = _typeof(showCount) === 'object' && showCount.formatter ? showCount.formatter : !!showCount;
- }
- mergedConfig = _objectSpread(_objectSpread({}, mergedConfig), count);
- var _ref = mergedConfig,
- show = _ref.show,
- rest = _objectWithoutProperties(_ref, _excluded);
- return _objectSpread(_objectSpread({}, rest), {}, {
- show: !!show,
- showFormatter: typeof show === 'function' ? show : undefined,
- strategy: rest.strategy || function (value) {
- return value.length;
- }
- });
- }, [count, showCount]);
- }
|