VariableLibrary.ps1
[System.Collections.ArrayList]$script:FunctionsForSBUse = @( ${Function:AddMySudoPwd}.Ast.Extent.Text ${Function:AddWinRMTrustedHost}.Ast.Extent.Text ${Function:AddWinRMTrustLocalHost}.Ast.Extent.Text ${Function:DownloadNuGetPackage}.Ast.Extent.Text ${Function:GetElevation}.Ast.Extent.Text ${Function:GetLinuxOctalPermissions}.Ast.Extent.Text ${Function:GetModuleDependencies}.Ast.Extent.Text ${Function:GetMySudoStatus}.Ast.Extent.Text ${Function:InstallLinuxPackage}.Ast.Extent.Text ${Function:InvokeModuleDependencies}.Ast.Extent.Text ${Function:InvokePSCompatibility}.Ast.Extent.Text ${Function:ManualPSGalleryModuleInstall}.Ast.Extent.Text ${Function:NewCronToAddSudoPwd}.Ast.Extent.Text ${Function:NewUniqueString}.Ast.Extent.Text ${Function:RemoveMySudoPwd}.Ast.Extent.Text ${Function:ResolveHost}.Ast.Extent.Text ${Function:ScrubJsonUnicodeSymbols}.Ast.Extent.Text ${Function:SudoPwsh}.Ast.Extent.Text ${Function:TestIsValidIPAddress}.Ast.Extent.Text ${Function:VariableLibraryTemplate}.Ast.Extent.Text ${Function:Deploy-SplashContainer}.Ast.Extent.Text ${Function:Get-SiteAsJson}.Ast.Extent.Text ${Function:Install-Docker}.Ast.Extent.Text ${Function:Install-DotNetScript}.Ast.Extent.Text ${Function:Install-DotNetSDK}.Ast.Extent.Text ) $script:UnicodeSymbolConversion = @{ '\u2018' = "'" '\u2019' = "'" '\u201A' = ',' '\u201B' = "'" '\u201C' = '"' '\u201D' = '"' } [System.Collections.ArrayList]$script:LuaScriptPSObjects = @( [pscustomobject]@{ LuaScriptName = 'InfiniteScrolling' LuaScriptContent = @' function main(splash) local scroll_delay = 1 local previous_height = -1 local number_of_scrolls = 0 local maximal_number_of_scrolls = 99 local scroll_to = splash:jsfunc("window.scrollTo") local get_body_height = splash:jsfunc( "function() {return document.body.scrollHeight;}" ) local get_inner_height = splash:jsfunc( "function() {return window.innerHeight;}" ) local get_body_scroll_top = splash:jsfunc( "function() {return document.body.scrollTop;}" ) assert(splash:go(splash.args.url)) splash:wait(splash.args.wait) while true do local body_height = get_body_height() local current = get_inner_height() - get_body_scroll_top() scroll_to(0, body_height) number_of_scrolls = number_of_scrolls + 1 if number_of_scrolls == maximal_number_of_scrolls then break end splash:wait(scroll_delay) local new_body_height = get_body_height() if new_body_height - body_height <= 0 then break end end return splash:html() end '@ } ) |