Big News: Socket raises $60M Series C at a $1B valuation to secure software supply chains for AI-driven development.Announcement
Sign In

@lightningjs/blits

Package Overview
Dependencies
Maintainers
5
Versions
189
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@lightningjs/blits - npm Package Compare versions

Comparing version
2.0.0
to
2.0.1
+10
-0
CHANGELOG.md
# Changelog
## v2.0.1
_23 mar 2026_
- Fixed issue with height dimension of router view
- Fixed issue with array or rounded corners not being reactive
- Fixed issue with font not being mapped correctly when using `png` in the font config
- Removed obselete key config
- Fixed reactivity guard in computed props to handle deep nested references more safely
## v2.0.0

@@ -4,0 +14,0 @@

+1
-1
{
"name": "@lightningjs/blits",
"version": "2.0.0",
"version": "2.0.1",
"description": "Blits: The Lightning 3 App Development Framework",

@@ -5,0 +5,0 @@ "bin": "bin/index.js",

@@ -97,3 +97,3 @@ /*

elementConfigs[0]['w'] = parent.node.w * (100 / 100)
elementConfigs[0]['height'] = parent.node.h * (100 / 100)
elementConfigs[0]['h'] = parent.node.h * (100 / 100)
elms[0].populate(elementConfigs[0])

@@ -100,0 +100,0 @@

@@ -21,10 +21,2 @@ /*

export const DEFAULT_KEYMAP = {
ArrowLeft: 'left',
ArrowRight: 'right',
ArrowUp: 'up',
ArrowDown: 'down',
Enter: 'enter',
' ': 'space',
Backspace: 'back',
Escape: 'escape',
37: 'left',

@@ -31,0 +23,0 @@ 39: 'right',

@@ -365,3 +365,6 @@ /*

if (this.element.node !== undefined && this.elementShader === true) {
if (typeof v === 'object' || (isObjectString(v) === true && (v = parseToObject(v)))) {
if (
Array.isArray(v) === false &&
(typeof v === 'object' || (isObjectString(v) === true && (v = parseToObject(v))))
) {
this.element.node.props['shader'].props = v

@@ -368,0 +371,0 @@ } else {

@@ -39,3 +39,3 @@ /*

fontFamily: font.family,
atlasUrl: font.json || (font.file && font.file.replace(/\.[^.]+$/, `.${font.type}.png`)),
atlasUrl: font.png || (font.file && font.file.replace(/\.[^.]+$/, `.${font.type}.png`)),
atlasDataUrl:

@@ -42,0 +42,0 @@ font.json || (font.file && font.file.replace(/\.[^.]+$/, `.${font.type}.json`)),

@@ -199,3 +199,8 @@ /*

prop.body.includes(commentText.trim()) ||
Array.from(thisRefs).some((ref) => prop.body.startsWith(ref))
Array.from(thisRefs).some((ref) => {
if (prop.body.startsWith(ref)) return true
// stripped && guard: body starts with the first segment, e.g. 'this.media &&'
const firstSegEnd = ref.indexOf('.', 5)
return firstSegEnd !== -1 && prop.body.startsWith(ref.substring(0, firstSegEnd))
})
) {

@@ -207,3 +212,3 @@ continue

const refCode = Array.from(thisRefs)
.map((ref) => `${ref};`)
.map((ref) => `${toSafeRef(ref)};`)
.join(' ')

@@ -295,2 +300,14 @@

const toSafeRef = (ref) => {
// Converts 'this.a.b.c' to 'this.a && this.a.b && this.a.b.c'
const normalized = ref.replace(/\?\./g, '.')
const segments = normalized.split('.')
if (segments.length <= 2) return normalized
const parts = []
for (let i = 2; i <= segments.length; i++) {
parts.push(segments.slice(0, i).join('.'))
}
return parts.join(' && ')
}
const extractThisReferences = (funcBody) => {

@@ -297,0 +314,0 @@ const thisRefs = new Set()