{"version":3,"sources":["jsdelivr-header.js","/npm/@nextui-org/use-data-scroll-overflow@2.2.2/dist/index.js"],"names":[],"mappings":"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","file":"/npm/@nextui-org/use-data-scroll-overflow@2.2.2/dist/index.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.37.0.\n * Original file: /npm/@nextui-org/use-data-scroll-overflow@2.2.2/dist/index.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n  for (var name in all)\n    __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n  if (from && typeof from === \"object\" || typeof from === \"function\") {\n    for (let key of __getOwnPropNames(from))\n      if (!__hasOwnProp.call(to, key) && key !== except)\n        __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n  }\n  return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\n\n// src/index.ts\nvar src_exports = {};\n__export(src_exports, {\n  useDataScrollOverflow: () => useDataScrollOverflow\n});\nmodule.exports = __toCommonJS(src_exports);\nvar import_shared_utils = require(\"@nextui-org/shared-utils\");\nvar import_react = require(\"react\");\nfunction useDataScrollOverflow(props = {}) {\n  const {\n    domRef,\n    isEnabled = true,\n    overflowCheck = \"vertical\",\n    visibility = \"auto\",\n    offset = 0,\n    onVisibilityChange,\n    updateDeps = []\n  } = props;\n  const visibleRef = (0, import_react.useRef)(visibility);\n  (0, import_react.useEffect)(() => {\n    const el = domRef == null ? void 0 : domRef.current;\n    if (!el || !isEnabled)\n      return;\n    const setAttributes = (direction, hasBefore, hasAfter, prefix, suffix) => {\n      if (visibility === \"auto\") {\n        const both = `${prefix}${(0, import_shared_utils.capitalize)(suffix)}Scroll`;\n        if (hasBefore && hasAfter) {\n          el.dataset[both] = \"true\";\n          el.removeAttribute(`data-${prefix}-scroll`);\n          el.removeAttribute(`data-${suffix}-scroll`);\n        } else {\n          el.dataset[`${prefix}Scroll`] = hasBefore.toString();\n          el.dataset[`${suffix}Scroll`] = hasAfter.toString();\n          el.removeAttribute(`data-${prefix}-${suffix}-scroll`);\n        }\n      } else {\n        const next = hasBefore && hasAfter ? \"both\" : hasBefore ? prefix : hasAfter ? suffix : \"none\";\n        if (next !== visibleRef.current) {\n          onVisibilityChange == null ? void 0 : onVisibilityChange(next);\n          visibleRef.current = next;\n        }\n      }\n    };\n    const checkOverflow = () => {\n      const directions = [\n        { type: \"vertical\", prefix: \"top\", suffix: \"bottom\" },\n        { type: \"horizontal\", prefix: \"left\", suffix: \"right\" }\n      ];\n      for (const { type, prefix, suffix } of directions) {\n        if (overflowCheck === type || overflowCheck === \"both\") {\n          const hasBefore = type === \"vertical\" ? el.scrollTop > offset : el.scrollLeft > offset;\n          const hasAfter = type === \"vertical\" ? el.scrollTop + el.clientHeight + offset < el.scrollHeight : el.scrollLeft + el.clientWidth + offset < el.scrollWidth;\n          setAttributes(type, hasBefore, hasAfter, prefix, suffix);\n        }\n      }\n    };\n    const clearOverflow = () => {\n      [\"top\", \"bottom\", \"top-bottom\", \"left\", \"right\", \"left-right\"].forEach((attr) => {\n        el.removeAttribute(`data-${attr}-scroll`);\n      });\n    };\n    checkOverflow();\n    el.addEventListener(\"scroll\", checkOverflow);\n    if (visibility !== \"auto\") {\n      clearOverflow();\n      if (visibility === \"both\") {\n        el.dataset.topBottomScroll = String(overflowCheck === \"vertical\");\n        el.dataset.leftRightScroll = String(overflowCheck === \"horizontal\");\n      } else {\n        el.dataset.topBottomScroll = \"false\";\n        el.dataset.leftRightScroll = \"false\";\n        [\"top\", \"bottom\", \"left\", \"right\"].forEach((attr) => {\n          el.dataset[`${attr}Scroll`] = String(visibility === attr);\n        });\n      }\n    }\n    return () => {\n      el.removeEventListener(\"scroll\", checkOverflow);\n      clearOverflow();\n    };\n  }, [...updateDeps, isEnabled, visibility, overflowCheck, onVisibilityChange, domRef]);\n}\n// Annotate the CommonJS export names for ESM import in node:\n0 && (module.exports = {\n  useDataScrollOverflow\n});\n"]}