{"version":3,"file":"Marks.cjs","sources":["../../../../../../../packages/vue-components/vc-slider/src/common/Marks.tsx"],"sourcesContent":["import { classNames, isValidElement, supportsPassive } from '@antdv/utils';\n\nfunction Marks(_: any, { attrs, slots }: any) {\n  const {\n    class: className,\n    vertical,\n    reverse,\n    marks,\n    included,\n    upperBound,\n    lowerBound,\n    max,\n    min,\n    onClickLabel,\n  } = attrs;\n  const marksKeys = Object.keys(marks);\n  const customMark = slots.mark;\n  const range = max - min;\n  const elements = marksKeys\n    .map(Number.parseFloat)\n    .sort((a, b) => a - b)\n    .map((point) => {\n      const markPoint = typeof marks[point] === 'function' ? marks[point]() : marks[point];\n      const markPointIsObject = typeof markPoint === 'object' && !isValidElement(markPoint);\n      let markLabel = markPointIsObject ? markPoint.label : markPoint;\n      if (!markLabel && markLabel !== 0)\n        return null;\n\n      if (customMark)\n        markLabel = customMark({ point, label: markLabel });\n\n      const isActive\n        = (!included && point === upperBound)\n        || (included && point <= upperBound && point >= lowerBound);\n      const markClassName = classNames({\n        [`${className}-text`]: true,\n        [`${className}-text-active`]: isActive,\n      });\n\n      const bottomStyle = {\n        marginBottom: '-50%',\n        [reverse ? 'top' : 'bottom']: `${((point - min) / range) * 100}%`,\n      };\n\n      const leftStyle = {\n        transform: `translateX(${reverse ? `50%` : `-50%`})`,\n        msTransform: `translateX(${reverse ? `50%` : `-50%`})`,\n        [reverse ? 'right' : 'left']: `${((point - min) / range) * 100}%`,\n      };\n\n      const style = vertical ? bottomStyle : leftStyle;\n      const markStyle = markPointIsObject ? { ...style, ...markPoint.style } : style;\n      const touchEvents = {\n        [supportsPassive ? 'onTouchstartPassive' : 'onTouchstart']: e => onClickLabel(e, point),\n      };\n      return (\n        <span\n          class={markClassName}\n          style={markStyle}\n          key={point}\n          onMousedown={e => onClickLabel(e, point)}\n          {...touchEvents}\n        >\n          {markLabel}\n        </span>\n      );\n    });\n\n  return <div class={className}>{elements}</div>;\n}\n\nMarks.inheritAttrs = false;\nexport default Marks;\n"],"names":["Marks","_","attrs","slots","class","className","vertical","reverse","marks","included","upperBound","lowerBound","max","min","onClickLabel","marksKeys","Object","keys","customMark","mark","range","elements","map","Number","parseFloat","sort","a","b","point","markPoint","markPointIsObject","isValidElement","markLabel","label","isActive","markClassName","classNames","bottomStyle","marginBottom","leftStyle","transform","msTransform","style","markStyle","touchEvents","supportsPassive","e","_createVNode","inheritAttrs"],"mappings":"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"}