function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
/*
 * Copyright 2025 Palantir Technologies, Inc. All rights reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

import React, { memo } from "react";
import { RangeInput } from "./RangeInput.js";
function formatNumber(value) {
  return value !== undefined ? String(value) : "";
}
function parseNumber(value) {
  if (value === "") return undefined;
  const parsed = parseFloat(value);
  return isNaN(parsed) ? undefined : parsed;
}
const numberConfig = {
  inputType: "number",
  formatValue: formatNumber,
  parseValue: parseNumber,
  toNumber: v => v,
  fromNumber: v => v,
  minLabel: "Min",
  maxLabel: "Max",
  formatTooltip: (min, max, count) => `${min.toFixed(1)} - ${max.toFixed(1)}: ${count.toLocaleString()}`,
  formatPlaceholder: value => value.toFixed(0),
  inputProps: {
    step: "any"
  }
};
function NumberRangeInputInner(props) {
  return /*#__PURE__*/React.createElement(RangeInput, _extends({}, props, {
    config: numberConfig
  }));
}
export const NumberRangeInput = /*#__PURE__*/memo(NumberRangeInputInner);
//# sourceMappingURL=NumberRangeInput.js.map