@mantine/core
Version:
React components library focused on usability, accessibility and developer experience
1 lines • 2.13 kB
Source Map (JSON)
{"version":3,"file":"Marks.cjs","names":["useSliderContext","Box","getPosition","isMarkFilled"],"sources":["../../../../src/components/Slider/Marks/Marks.tsx"],"sourcesContent":["import { Box } from '../../../core';\nimport { useSliderContext } from '../Slider.context';\nimport { SliderMark } from '../SliderMark';\nimport { getPosition } from '../utils/get-position/get-position';\nimport { isMarkFilled } from './is-mark-filled';\n\nexport interface MarksProps {\n marks: SliderMark[] | undefined;\n min: number;\n max: number;\n value: number;\n offset: number | undefined;\n disabled: boolean | undefined;\n inverted: boolean | undefined;\n}\n\nexport function Marks({ marks, min, max, disabled, value, offset, inverted }: MarksProps) {\n const { getStyles } = useSliderContext();\n\n if (!marks) {\n return null;\n }\n\n const items = marks.map((mark, index) => {\n if (mark.hidden) {\n return null;\n }\n\n return (\n <Box\n {...getStyles('markWrapper')}\n __vars={{ '--mark-offset': `${getPosition({ value: mark.value, min, max })}%` }}\n key={index}\n >\n <Box\n {...getStyles('mark')}\n mod={{ filled: isMarkFilled({ mark, value, offset, inverted }), disabled }}\n />\n {mark.label && <div {...getStyles('markLabel')}>{mark.label}</div>}\n </Box>\n );\n });\n\n return <div>{items}</div>;\n}\n\nMarks.displayName = '@mantine/core/SliderMarks';\n"],"mappings":";;;;;;;;;AAgBA,SAAgB,MAAM,EAAE,OAAO,KAAK,KAAK,UAAU,OAAO,QAAQ,YAAwB;CACxF,MAAM,EAAE,cAAcA,uBAAAA,kBAAkB;AAExC,KAAI,CAAC,MACH,QAAO;AAuBT,QAAO,iBAAA,GAAA,kBAAA,KAAC,OAAD,EAAA,UApBO,MAAM,KAAK,MAAM,UAAU;AACvC,MAAI,KAAK,OACP,QAAO;AAGT,SACE,iBAAA,GAAA,MAAA,eAACC,YAAAA,KAAD;GACE,GAAI,UAAU,cAAc;GAC5B,QAAQ,EAAE,iBAAiB,GAAGC,qBAAAA,YAAY;IAAE,OAAO,KAAK;IAAO;IAAK;IAAK,CAAC,CAAC,IAAI;GAC/E,KAAK;GAOD,EALJ,iBAAA,GAAA,kBAAA,KAACD,YAAAA,KAAD;GACE,GAAI,UAAU,OAAO;GACrB,KAAK;IAAE,QAAQE,uBAAAA,aAAa;KAAE;KAAM;KAAO;KAAQ;KAAU,CAAC;IAAE;IAAU;GAC1E,CAAA,EACD,KAAK,SAAS,iBAAA,GAAA,kBAAA,KAAC,OAAD;GAAK,GAAI,UAAU,YAAY;aAAG,KAAK;GAAY,CAAA,CAC9D;GAER,EAEuB,CAAA;;AAG3B,MAAM,cAAc"}