Paste this into your project
{
"type": "files",
"files": [
{
"data": {
"name": "getScrollOffset",
"arguments": [
{
"name": "elementOrId",
"formula": null
}
],
"description": "Get the scroll offset of an element by ID, element reference, or default to window scroll",
"version": 2,
"handler": "function getScrollOffset(args, ctx) {\n const { elementOrId } = args;\n \n // If no argument provided, return window scroll\n if (!elementOrId) {\n return {\n x: window.scrollX 0,\n y: window.scrollY 0\n };\n }\n \n // If it's a string, treat it as an ID\n if (typeof elementOrId === 'string') {\n const element = document.getElementById(elementOrId);\n if (element) {\n return {\n x: element.scrollLeft 0\n };\n }\n // Element not found, return zeros\n return { x: 0, y: 0 };\n }\n \n // If it's an element, get its scroll offset directly\n if (elementOrId && typeof elementOrId === 'object' && elementOrId.nodeType === 1) {\n return {\n x: elementOrId.scrollLeft 0\n };\n }\n \n // Fallback to window scroll\n return {\n x: window.scrollX 0,\n y: window.scrollY 0\n };\n }",
"key": "getScrollOffset",
"__recent-file": true
},
"path": "formulas/getScrollOffset"
}
]
}