You're Invited:Meet the Socket Team at RSAC and BSidesSF 2026, March 23–26.RSVP
Socket
Book a DemoSign in
Socket

@leafer/renderer

Package Overview
Dependencies
Maintainers
1
Versions
117
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@leafer/renderer - npm Package Compare versions

Comparing version
1.9.7
to
1.9.8
+3
-3
package.json
{
"name": "@leafer/renderer",
"version": "1.9.7",
"version": "1.9.8",
"description": "@leafer/renderer",

@@ -25,7 +25,7 @@ "author": "Chao (Leafer) Wan",

"dependencies": {
"@leafer/core": "1.9.7"
"@leafer/core": "1.9.8"
},
"devDependencies": {
"@leafer/interface": "1.9.7"
"@leafer/interface": "1.9.8"
}
}

@@ -36,2 +36,4 @@ import { ILeaf, ILeaferBase, ILeaferCanvas, IRenderer, IRendererConfig, IEventListenerId, IBounds, IFunction, IRenderOptions } from '@leafer/interface'

protected requestTime: number
protected frameTime: number
protected frames: number[] = []
protected __eventIds: IEventListenerId[]

@@ -229,12 +231,15 @@

const requestTime = this.requestTime = Date.now()
this.requestTime = this.frameTime || Date.now()
const render = () => {
const nowFPS = 1000 / (Date.now() - requestTime)
const nowFPS = 1000 / ((this.frameTime = Date.now()) - this.requestTime)
const { maxFPS } = this.config
if (maxFPS && nowFPS > maxFPS - 0.5) return Platform.requestRender(render)
if (maxFPS && nowFPS > maxFPS) return Platform.requestRender(render)
this.FPS = Math.min(120, Math.ceil(nowFPS))
const { frames } = this
if (frames.length > 30) frames.shift()
frames.push(nowFPS)
this.FPS = Math.round(frames.reduce((a, b) => a + b, 0) / frames.length) // 帧率采样
this.requestTime = 0

@@ -241,0 +246,0 @@

@@ -22,2 +22,4 @@ import { IRenderer, ILeaf, ILeaferCanvas, IBounds, IRendererConfig, IRenderOptions, IEventListenerId, IFunction } from '@leafer/interface';

protected requestTime: number;
protected frameTime: number;
protected frames: number[];
protected __eventIds: IEventListenerId[];

@@ -24,0 +26,0 @@ protected get needFill(): boolean;