@mantine/core
Version:
React components library focused on usability, accessibility and developer experience
1 lines • 2.68 kB
Source Map (JSON)
{"version":3,"file":"get-position-variables.cjs","names":["rem"],"sources":["../../../../src/components/Indicator/get-position-variables/get-position-variables.ts"],"sourcesContent":["import { rem } from '../../../core';\nimport type { IndicatorPositionVariables } from '../Indicator';\nimport type { IndicatorPosition } from '../Indicator.types';\n\nexport function getPositionVariables(\n _position: IndicatorPosition = 'top-end',\n offset: number | { x: number; y: number } = 0\n) {\n const variables: Record<IndicatorPositionVariables, string | undefined> = {\n '--indicator-top': undefined,\n '--indicator-bottom': undefined,\n '--indicator-left': undefined,\n '--indicator-right': undefined,\n '--indicator-translate-x': undefined,\n '--indicator-translate-y': undefined,\n };\n\n const offsetX = typeof offset === 'number' ? offset : offset.x;\n const offsetY = typeof offset === 'number' ? offset : offset.y;\n\n const _offsetX = rem(offsetX);\n const _offsetY = rem(offsetY);\n const [position, placement] = _position.split('-');\n\n if (position === 'top') {\n variables['--indicator-top'] = _offsetY;\n variables['--indicator-translate-y'] = '-50%';\n }\n\n if (position === 'middle') {\n variables['--indicator-top'] = '50%';\n variables['--indicator-translate-y'] = '-50%';\n }\n\n if (position === 'bottom') {\n variables['--indicator-bottom'] = _offsetY;\n variables['--indicator-translate-y'] = '50%';\n }\n\n if (placement === 'start') {\n variables['--indicator-left'] = _offsetX;\n variables['--indicator-translate-x'] = '-50%';\n }\n\n if (placement === 'center') {\n variables['--indicator-left'] = '50%';\n variables['--indicator-translate-x'] = '-50%';\n }\n\n if (placement === 'end') {\n variables['--indicator-right'] = _offsetX;\n variables['--indicator-translate-x'] = '50%';\n }\n\n return variables;\n}\n"],"mappings":";;;AAIA,SAAgB,qBACd,YAA+B,WAC/B,SAA4C,GAC5C;CACA,MAAM,YAAoE;EACxE,mBAAmB,KAAA;EACnB,sBAAsB,KAAA;EACtB,oBAAoB,KAAA;EACpB,qBAAqB,KAAA;EACrB,2BAA2B,KAAA;EAC3B,2BAA2B,KAAA;CAC7B;CAEA,MAAM,UAAU,OAAO,WAAW,WAAW,SAAS,OAAO;CAC7D,MAAM,UAAU,OAAO,WAAW,WAAW,SAAS,OAAO;CAE7D,MAAM,WAAWA,YAAAA,IAAI,OAAO;CAC5B,MAAM,WAAWA,YAAAA,IAAI,OAAO;CAC5B,MAAM,CAAC,UAAU,aAAa,UAAU,MAAM,GAAG;CAEjD,IAAI,aAAa,OAAO;EACtB,UAAU,qBAAqB;EAC/B,UAAU,6BAA6B;CACzC;CAEA,IAAI,aAAa,UAAU;EACzB,UAAU,qBAAqB;EAC/B,UAAU,6BAA6B;CACzC;CAEA,IAAI,aAAa,UAAU;EACzB,UAAU,wBAAwB;EAClC,UAAU,6BAA6B;CACzC;CAEA,IAAI,cAAc,SAAS;EACzB,UAAU,sBAAsB;EAChC,UAAU,6BAA6B;CACzC;CAEA,IAAI,cAAc,UAAU;EAC1B,UAAU,sBAAsB;EAChC,UAAU,6BAA6B;CACzC;CAEA,IAAI,cAAc,OAAO;EACvB,UAAU,uBAAuB;EACjC,UAAU,6BAA6B;CACzC;CAEA,OAAO;AACT"}