UNPKG

@mantine/core

Version:

React components library focused on usability, accessibility and developer experience

1 lines 1.39 kB
{"version":3,"file":"get-curve-props.mjs","names":[],"sources":["../../../../src/components/RingProgress/Curve/get-curve-props.ts"],"sourcesContent":["interface GetCurveProps {\n size: number;\n thickness: number;\n sum: number;\n value: number | undefined;\n root: boolean | undefined;\n offset: number;\n}\n\nexport function getCurveProps({ size, thickness, sum, value, root, offset }: GetCurveProps) {\n const radius = (size * 0.9 - thickness * 2) / 2;\n const deg = (Math.PI * radius * 2) / 100;\n\n const strokeDasharray =\n root || value === undefined\n ? `${(100 - sum) * deg}, ${sum * deg}`\n : `${value * deg}, ${(100 - value) * deg}`;\n\n return {\n strokeWidth: Number.isNaN(thickness) ? 12 : thickness,\n cx: size / 2 || 0,\n cy: size / 2 || 0,\n r: radius || 0,\n transform: root ? `scale(1, -1) translate(0, -${size})` : undefined,\n strokeDasharray,\n strokeDashoffset: root ? 0 : offset || 0,\n };\n}\n"],"mappings":";;AASA,SAAgB,cAAc,EAAE,MAAM,WAAW,KAAK,OAAO,MAAM,UAAyB;CAC1F,MAAM,UAAU,OAAO,KAAM,YAAY,KAAK;CAC9C,MAAM,MAAO,KAAK,KAAK,SAAS,IAAK;CAErC,MAAM,kBACJ,QAAQ,UAAU,KAAA,IACd,IAAI,MAAM,OAAO,IAAI,IAAI,MAAM,QAC/B,GAAG,QAAQ,IAAI,KAAK,MAAM,SAAS;AAEzC,QAAO;EACL,aAAa,OAAO,MAAM,UAAU,GAAG,KAAK;EAC5C,IAAI,OAAO,KAAK;EAChB,IAAI,OAAO,KAAK;EAChB,GAAG,UAAU;EACb,WAAW,OAAO,8BAA8B,KAAK,KAAK,KAAA;EAC1D;EACA,kBAAkB,OAAO,IAAI,UAAU;EACxC"}