UNPKG

element-plus

Version:

A Component Library for Vue 3

1 lines 1.38 kB
{"version":3,"file":"scrollbar-width.mjs","sources":["../../../../packages/utils/scrollbar-width.ts"],"sourcesContent":["import isServer from './isServer'\n\nlet scrollBarWidth: number\n\nexport default function (): number {\n if (isServer) return 0\n if (scrollBarWidth !== undefined) return scrollBarWidth\n\n const outer = document.createElement('div')\n outer.className = 'el-scrollbar__wrap'\n outer.style.visibility = 'hidden'\n outer.style.width = '100px'\n outer.style.position = 'absolute'\n outer.style.top = '-9999px'\n document.body.appendChild(outer)\n\n const widthNoScroll = outer.offsetWidth\n outer.style.overflow = 'scroll'\n\n const inner = document.createElement('div')\n inner.style.width = '100%'\n outer.appendChild(inner)\n\n const widthWithScroll = inner.offsetWidth\n outer.parentNode?.removeChild(outer)\n scrollBarWidth = widthNoScroll - widthWithScroll\n\n return scrollBarWidth\n}\n"],"names":[],"mappings":";;AAEA,IAAI;0BAE+B;AAJnC;AAKE,MAAI;AAAU,WAAO;AACrB,MAAI,mBAAmB;AAAW,WAAO;AAEzC,QAAM,QAAQ,SAAS,cAAc;AACrC,QAAM,YAAY;AAClB,QAAM,MAAM,aAAa;AACzB,QAAM,MAAM,QAAQ;AACpB,QAAM,MAAM,WAAW;AACvB,QAAM,MAAM,MAAM;AAClB,WAAS,KAAK,YAAY;AAE1B,QAAM,gBAAgB,MAAM;AAC5B,QAAM,MAAM,WAAW;AAEvB,QAAM,QAAQ,SAAS,cAAc;AACrC,QAAM,MAAM,QAAQ;AACpB,QAAM,YAAY;AAElB,QAAM,kBAAkB,MAAM;AAC9B,cAAM,eAAN,mBAAkB,YAAY;AAC9B,mBAAiB,gBAAgB;AAEjC,SAAO;AAAA;;;;"}