🚀 Big News: Socket Acquires Coana to Bring Reachability Analysis to Every Appsec Team.Learn more
Socket
Book a DemoInstallSign in
Socket

json-as

Package Overview
Dependencies
Maintainers
1
Versions
192
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

json-as - npm Package Compare versions

Comparing version

to
0.5.14

4

assembly/test.ts

@@ -7,3 +7,3 @@ import { u128 } from "as-bignum/assembly";

// @ts-ignore
@json
@JSON
class Vec3 {

@@ -16,3 +16,3 @@ x: f32 = 3.4;

// @ts-ignore
@json
@JSON
class Stats extends Vec3 {

@@ -19,0 +19,0 @@ wins: u128

{
"name": "json-as",
"version": "0.5.13",
"version": "0.5.14",
"description": "JSON encoder/decoder for AssemblyScript",

@@ -5,0 +5,0 @@ "types": "assembly/index.ts",

@@ -40,4 +40,4 @@ # AS-JSON

// @ts-ignore
@json
// @json or @serializable work here
@JSON
class Vec3 {

@@ -49,4 +49,3 @@ x!: f32;

// @ts-ignore
@json
@JSON
class Player {

@@ -53,0 +52,0 @@ firstName!: string;

@@ -1,4 +0,4 @@

import { ClassDecorator, registerDecorator, } from "visitor-as/dist/decorator.js";
import { getName, toString } from "visitor-as/dist/utils.js";
import { SimpleParser } from "visitor-as/dist/index.js";
import { BaseVisitor, SimpleParser } from "visitor-as/dist/index.js";
import { Transform } from "assemblyscript/dist/transform.js";
class SchemaData {

@@ -15,3 +15,3 @@ constructor() {

}
class AsJSONTransform extends ClassDecorator {
class AsJSONTransform extends BaseVisitor {
constructor() {

@@ -53,2 +53,10 @@ super(...arguments);

var _a, _b, _c, _d;
let foundDecorator = false;
for (const decorator of node.decorators) {
// @ts-ignore
if (decorator.name.text.toLowerCase() == "json" || decorator.name.text.toLowerCase() == "serializable")
foundDecorator = true;
}
if (!foundDecorator)
return;
if (!node.members) {

@@ -119,6 +127,20 @@ return;

}
get name() {
return "json";
visitSource(node) {
super.visitSource(node);
}
}
export default registerDecorator(new AsJSONTransform());
export default class Transformer extends Transform {
// Trigger the transform after parse.
afterParse(parser) {
// Create new transform
const transformer = new AsJSONTransform();
// Loop over every source
for (const source of parser.sources) {
// Ignore all lib (std lib). Visit everything else.
if (!source.isLibrary && !source.internalPath.startsWith(`~lib/`)) {
transformer.visit(source);
}
}
}
}
;
{
"name": "@json-as/transform",
"version": "0.5.13",
"version": "0.5.14",
"description": "JSON encoder/decoder for AssemblyScript",

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

@@ -5,2 +5,3 @@ import {

Source,
Parser
} from "assemblyscript/dist/assemblyscript";

@@ -12,4 +13,4 @@ import {

import { getName, toString } from "visitor-as/dist/utils.js";
import { SimpleParser } from "visitor-as/dist/index.js";
import { NodeKind } from "types:assemblyscript/src/ast";
import { BaseVisitor, SimpleParser } from "visitor-as/dist/index.js";
import { Transform } from "assemblyscript/dist/transform.js";

@@ -26,3 +27,3 @@ class SchemaData {

}
class AsJSONTransform extends ClassDecorator {
class AsJSONTransform extends BaseVisitor {
public schemasList: SchemaData[] = [];

@@ -68,2 +69,8 @@ public currentClass!: SchemaData;

visitClassDeclaration(node: ClassDeclaration): void {
let foundDecorator = false;
for (const decorator of node.decorators!) {
// @ts-ignore
if (decorator.name.text.toLowerCase() == "json" || decorator.name.text.toLowerCase() == "serializable") foundDecorator = true;
}
if (!foundDecorator) return;
if (!node.members) {

@@ -150,7 +157,20 @@ return;

}
get name(): string {
return "json";
visitSource(node: Source): void {
super.visitSource(node);
}
}
export default registerDecorator(new AsJSONTransform());
export default class Transformer extends Transform {
// Trigger the transform after parse.
afterParse(parser: Parser): void {
// Create new transform
const transformer = new AsJSONTransform();
// Loop over every source
for (const source of parser.sources) {
// Ignore all lib (std lib). Visit everything else.
if (!source.isLibrary && !source.internalPath.startsWith(`~lib/`)) {
transformer.visit(source);
}
}
}
};