%PDF-1.5 %���� ºaâÚÎΞ-ÌE1ÍØÄ÷{òò2ÿ ÛÖ^ÔÀá TÎ{¦?§®¥kuµùÕ5sLOšuY
Server IP : 49.231.201.246 / Your IP : 216.73.216.110 Web Server : Apache/2.4.18 (Ubuntu) System : Linux 246 4.4.0-210-generic #242-Ubuntu SMP Fri Apr 16 09:57:56 UTC 2021 x86_64 User : root ( 0) PHP Version : 7.0.33-0ubuntu0.16.04.16 Disable Function : exec,passthru,shell_exec,system,proc_open,popen,pcntl_exec MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /var/www/html/ppaobm/vendor/bower-asset/fullcalendar/src/core/component/ |
Upload File : |
import { isArraysEqual } from '../util/array' export interface MemoizedRendering<ArgsType extends any[]> { (...args: ArgsType): void unrender: () => void dependents: MemoizedRendering<any>[] } export function memoizeRendering<ArgsType extends any[]>( renderFunc: (...args: ArgsType) => void, unrenderFunc?: (...args: ArgsType) => void, dependencies: MemoizedRendering<any>[] = [] ): MemoizedRendering<ArgsType> { let dependents: MemoizedRendering<any>[] = [] let thisContext let prevArgs function unrender() { if (prevArgs) { for (let dependent of dependents) { dependent.unrender() } if (unrenderFunc) { unrenderFunc.apply(thisContext, prevArgs) } prevArgs = null } } function res() { if (!prevArgs || !isArraysEqual(prevArgs, arguments)) { unrender() thisContext = this prevArgs = arguments renderFunc.apply(this, arguments) } } res.dependents = dependents res.unrender = unrender for (let dependency of dependencies) { dependency.dependents.push(res) } return res }