All Downloads are FREE. Search and download functionalities are using the official Maven repository.

package.lib.components.VSlideGroup.helpers.mjs.map Maven / Gradle / Ivy

{"version":3,"file":"helpers.mjs","names":["calculateUpdatedTarget","_ref","selectedElement","containerElement","isRtl","isHorizontal","containerSize","getOffsetSize","scrollPosition","getScrollPosition","childrenSize","childrenStartPosition","getOffsetPosition","additionalOffset","calculateCenteredTarget","_ref2","containerOffsetSize","childrenOffsetPosition","childrenOffsetSize","getScrollSize","element","key","getClientSize","rtl","scrollLeft","offsetWidth","scrollWidth","scrollTop"],"sources":["../../../src/components/VSlideGroup/helpers.ts"],"sourcesContent":["export function calculateUpdatedTarget ({\n  selectedElement,\n  containerElement,\n  isRtl,\n  isHorizontal,\n}: {\n  selectedElement: HTMLElement\n  containerElement: HTMLElement\n  isRtl: boolean\n  isHorizontal: boolean\n}): number {\n  const containerSize = getOffsetSize(isHorizontal, containerElement)\n  const scrollPosition = getScrollPosition(isHorizontal, isRtl, containerElement)\n\n  const childrenSize = getOffsetSize(isHorizontal, selectedElement)\n  const childrenStartPosition = getOffsetPosition(isHorizontal, selectedElement)\n\n  const additionalOffset = childrenSize * 0.4\n\n  if (scrollPosition > childrenStartPosition) {\n    return childrenStartPosition - additionalOffset\n  } else if (scrollPosition + containerSize < childrenStartPosition + childrenSize) {\n    return childrenStartPosition - containerSize + childrenSize + additionalOffset\n  }\n\n  return scrollPosition\n}\n\nexport function calculateCenteredTarget ({\n  selectedElement,\n  containerElement,\n  isHorizontal,\n}: {\n  selectedElement: HTMLElement\n  containerElement: HTMLElement\n  isHorizontal: boolean\n}): number {\n  const containerOffsetSize = getOffsetSize(isHorizontal, containerElement)\n  const childrenOffsetPosition = getOffsetPosition(isHorizontal, selectedElement)\n  const childrenOffsetSize = getOffsetSize(isHorizontal, selectedElement)\n\n  return childrenOffsetPosition - (containerOffsetSize / 2) + (childrenOffsetSize / 2)\n}\n\nexport function getScrollSize (isHorizontal: boolean, element?: HTMLElement) {\n  const key = isHorizontal ? 'scrollWidth' : 'scrollHeight'\n  return element?.[key] || 0\n}\n\nexport function getClientSize (isHorizontal: boolean, element?: HTMLElement) {\n  const key = isHorizontal ? 'clientWidth' : 'clientHeight'\n  return element?.[key] || 0\n}\n\nexport function getScrollPosition (isHorizontal: boolean, rtl: boolean, element?: HTMLElement) {\n  if (!element) {\n    return 0\n  }\n\n  const {\n    scrollLeft,\n    offsetWidth,\n    scrollWidth,\n  } = element\n\n  if (isHorizontal) {\n    return rtl\n      ? scrollWidth - offsetWidth + scrollLeft\n      : scrollLeft\n  }\n\n  return element.scrollTop\n}\n\nexport function getOffsetSize (isHorizontal: boolean, element?: HTMLElement) {\n  const key = isHorizontal ? 'offsetWidth' : 'offsetHeight'\n  return element?.[key] || 0\n}\n\nexport function getOffsetPosition (isHorizontal: boolean, element?: HTMLElement) {\n  const key = isHorizontal ? 'offsetLeft' : 'offsetTop'\n  return element?.[key] || 0\n}\n"],"mappings":"AAAA,OAAO,SAASA,sBAAsBA,CAAAC,IAAA,EAU3B;EAAA,IAV6B;IACtCC,eAAe;IACfC,gBAAgB;IAChBC,KAAK;IACLC;EAMF,CAAC,GAAAJ,IAAA;EACC,MAAMK,aAAa,GAAGC,aAAa,CAACF,YAAY,EAAEF,gBAAgB,CAAC;EACnE,MAAMK,cAAc,GAAGC,iBAAiB,CAACJ,YAAY,EAAED,KAAK,EAAED,gBAAgB,CAAC;EAE/E,MAAMO,YAAY,GAAGH,aAAa,CAACF,YAAY,EAAEH,eAAe,CAAC;EACjE,MAAMS,qBAAqB,GAAGC,iBAAiB,CAACP,YAAY,EAAEH,eAAe,CAAC;EAE9E,MAAMW,gBAAgB,GAAGH,YAAY,GAAG,GAAG;EAE3C,IAAIF,cAAc,GAAGG,qBAAqB,EAAE;IAC1C,OAAOA,qBAAqB,GAAGE,gBAAgB;EACjD,CAAC,MAAM,IAAIL,cAAc,GAAGF,aAAa,GAAGK,qBAAqB,GAAGD,YAAY,EAAE;IAChF,OAAOC,qBAAqB,GAAGL,aAAa,GAAGI,YAAY,GAAGG,gBAAgB;EAChF;EAEA,OAAOL,cAAc;AACvB;AAEA,OAAO,SAASM,uBAAuBA,CAAAC,KAAA,EAQ5B;EAAA,IAR8B;IACvCb,eAAe;IACfC,gBAAgB;IAChBE;EAKF,CAAC,GAAAU,KAAA;EACC,MAAMC,mBAAmB,GAAGT,aAAa,CAACF,YAAY,EAAEF,gBAAgB,CAAC;EACzE,MAAMc,sBAAsB,GAAGL,iBAAiB,CAACP,YAAY,EAAEH,eAAe,CAAC;EAC/E,MAAMgB,kBAAkB,GAAGX,aAAa,CAACF,YAAY,EAAEH,eAAe,CAAC;EAEvE,OAAOe,sBAAsB,GAAID,mBAAmB,GAAG,CAAE,GAAIE,kBAAkB,GAAG,CAAE;AACtF;AAEA,OAAO,SAASC,aAAaA,CAAEd,YAAqB,EAAEe,OAAqB,EAAE;EAC3E,MAAMC,GAAG,GAAGhB,YAAY,GAAG,aAAa,GAAG,cAAc;EACzD,OAAOe,OAAO,GAAGC,GAAG,CAAC,IAAI,CAAC;AAC5B;AAEA,OAAO,SAASC,aAAaA,CAAEjB,YAAqB,EAAEe,OAAqB,EAAE;EAC3E,MAAMC,GAAG,GAAGhB,YAAY,GAAG,aAAa,GAAG,cAAc;EACzD,OAAOe,OAAO,GAAGC,GAAG,CAAC,IAAI,CAAC;AAC5B;AAEA,OAAO,SAASZ,iBAAiBA,CAAEJ,YAAqB,EAAEkB,GAAY,EAAEH,OAAqB,EAAE;EAC7F,IAAI,CAACA,OAAO,EAAE;IACZ,OAAO,CAAC;EACV;EAEA,MAAM;IACJI,UAAU;IACVC,WAAW;IACXC;EACF,CAAC,GAAGN,OAAO;EAEX,IAAIf,YAAY,EAAE;IAChB,OAAOkB,GAAG,GACNG,WAAW,GAAGD,WAAW,GAAGD,UAAU,GACtCA,UAAU;EAChB;EAEA,OAAOJ,OAAO,CAACO,SAAS;AAC1B;AAEA,OAAO,SAASpB,aAAaA,CAAEF,YAAqB,EAAEe,OAAqB,EAAE;EAC3E,MAAMC,GAAG,GAAGhB,YAAY,GAAG,aAAa,GAAG,cAAc;EACzD,OAAOe,OAAO,GAAGC,GAAG,CAAC,IAAI,CAAC;AAC5B;AAEA,OAAO,SAAST,iBAAiBA,CAAEP,YAAqB,EAAEe,OAAqB,EAAE;EAC/E,MAAMC,GAAG,GAAGhB,YAAY,GAAG,YAAY,GAAG,WAAW;EACrD,OAAOe,OAAO,GAAGC,GAAG,CAAC,IAAI,CAAC;AAC5B","ignoreList":[]}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy