albio
Advanced tools
Comparing version 1.0.33 to 1.0.34
25
index.js
@@ -5,5 +5,2 @@ 'use strict'; | ||
var codeRed = require('code-red'); | ||
var periscopic = require('periscopic'); | ||
function set_data(text, data) { | ||
@@ -43,12 +40,13 @@ data = '' + data; | ||
function $$invalidate(dirty, expression, update) { | ||
function $$invalidate( | ||
dirty, | ||
names, | ||
ret, | ||
update, | ||
) { | ||
let dependencies = new Set(); | ||
const extractedDeps = (expression ).left | ||
? periscopic.extract_names(fetch_object((expression ).left)) | ||
: periscopic.extract_names(fetch_object((expression ).argument)); | ||
names.forEach((name) => dependencies.add(name)); | ||
extractedDeps.forEach((name) => dependencies.add(name)); | ||
dirty = dirty ? {} : dirty; | ||
dirty = dirty ? dirty : {}; | ||
[...dependencies].forEach((d) => (dirty[d] = true)); | ||
@@ -58,10 +56,5 @@ | ||
return eval(codeRed.print(codeRed.x`${expression}`).code); | ||
return ret; | ||
} | ||
function fetch_object(node) { | ||
while (node.type === 'MemberExpression') node = node.object; | ||
return node ; | ||
} | ||
exports.$$invalidate = $$invalidate; | ||
@@ -68,0 +61,0 @@ exports.check_dirty_deps = check_dirty_deps; |
@@ -5,5 +5,2 @@ 'use strict'; | ||
var codeRed = require('code-red'); | ||
var periscopic = require('periscopic'); | ||
function set_data(text, data) { | ||
@@ -43,12 +40,13 @@ data = '' + data; | ||
function $$invalidate(dirty, expression, update) { | ||
function $$invalidate( | ||
dirty, | ||
names, | ||
ret, | ||
update, | ||
) { | ||
let dependencies = new Set(); | ||
const extractedDeps = (expression ).left | ||
? periscopic.extract_names(fetch_object((expression ).left)) | ||
: periscopic.extract_names(fetch_object((expression ).argument)); | ||
names.forEach((name) => dependencies.add(name)); | ||
extractedDeps.forEach((name) => dependencies.add(name)); | ||
dirty = dirty ? {} : dirty; | ||
dirty = dirty ? dirty : {}; | ||
[...dependencies].forEach((d) => (dirty[d] = true)); | ||
@@ -58,13 +56,7 @@ | ||
return eval(codeRed.print(codeRed.x`${expression}`).code); | ||
return ret; | ||
} | ||
function fetch_object(node) { | ||
while (node.type === 'MemberExpression') node = node.object; | ||
return node ; | ||
} | ||
exports.$$invalidate = $$invalidate; | ||
exports.check_dirty_deps = check_dirty_deps; | ||
exports.fetch_object = fetch_object; | ||
exports.flush = flush; | ||
@@ -71,0 +63,0 @@ exports.scheduleUpdate = scheduleUpdate; |
{ | ||
"name": "albio", | ||
"version": "1.0.33", | ||
"version": "1.0.34", | ||
"description": "🚀 Tiny compiler-powered reactivity library for sensible web apps", | ||
@@ -80,2 +80,4 @@ "main": "index", | ||
"acorn": "^8.8.1", | ||
"code-red": "^0.2.5", | ||
"domhandler": "^5.0.3", | ||
"estree-walker": "^3.0.2", | ||
@@ -87,2 +89,3 @@ "jest": "^27.5.1", | ||
"parse5-htmlparser2-tree-adapter": "^7.0.0", | ||
"periscopic": "^3.0.4", | ||
"prettier": "^2.8.2", | ||
@@ -94,8 +97,3 @@ "rimraf": "^3.0.2", | ||
"typescript": "^4.9.4" | ||
}, | ||
"dependencies": { | ||
"code-red": "^0.2.5", | ||
"domhandler": "^5.0.3", | ||
"periscopic": "^3.0.4" | ||
} | ||
} |
@@ -25,3 +25,2 @@ import { type ASTNode, Binding, Listener, Props } from './interfaces'; | ||
astToString(): string; | ||
destringify(str: string): string; | ||
generateNodeStr(identifiers: string[], node: ASTNode): string; | ||
@@ -28,0 +27,0 @@ generateAttrStr(identifiers: string[], node: ASTNode): string[]; |
import { DirtMarker } from '../interfaces'; | ||
import { Identifier, Node } from 'estree'; | ||
export declare function $$invalidate(dirty: DirtMarker, expression: Node, update: () => void): any; | ||
export declare function fetch_object(node: Node): Identifier; | ||
export declare function $$invalidate(dirty: DirtMarker, names: string[], ret: any, update: () => void): any; |
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
3955588
0
28
34325
2
30
- Removedcode-red@^0.2.5
- Removeddomhandler@^5.0.3
- Removedperiscopic@^3.0.4
- Removed@jridgewell/sourcemap-codec@1.4.15(transitive)
- Removed@types/estree@1.0.5(transitive)
- Removedacorn@8.11.3(transitive)
- Removedcode-red@0.2.7(transitive)
- Removeddomelementtype@2.3.0(transitive)
- Removeddomhandler@5.0.3(transitive)
- Removedestree-walker@3.0.3(transitive)
- Removedis-reference@3.0.2(transitive)
- Removedperiscopic@3.1.0(transitive)