jsonic 0.0.3 copy "jsonic: ^0.0.3" to clipboard
jsonic: ^0.0.3 copied to clipboard

A simple json serializer/sanitizer library

example/jsonic_example.dart

import 'dart:convert';

import 'package:jsonic/jsonic.dart';
import 'package:jsonic/src/jsonic_field.dart';

class Person {
  JsonicField name = JsonicField<String>(mapping: "name");
  JsonicField email = JsonicField<String>(mapping: "email", nullable: true);
  JsonicField phone = JsonicField<String>(mapping: "phone", nullable: true);
  JsonicField cell = JsonicField<String>(mapping: "cell", nullable: true);
  JsonicField status = JsonicField<String>(
    mapping: "status",
    fallback: "ACTIVE",
    acceptedValues: ["ACTIVE", "INACTIVE"],
  );
  JsonicField age = JsonicField<int>(mapping: "age");
  static late Jsonic jsonic;

  Person() {
    jsonic = Jsonic().addAll([name, email, phone, cell, status, age]);
  }

  factory Person.fromJson(String json) {
    Person p = Person();
    jsonic.decode(json);
    return p;
  }
}

void main() {
  var jsonFromWeb = jsonEncode({
    "name": "John Doe",
    "email": "john@doe.com",
    "age": 12,
  });

  var person = Person.fromJson(jsonFromWeb);

  print('''
name: ${person.name.value},
email: ${person.email.value},
phone: ${person.phone.value},
cell: ${person.cell.value},
status: ${person.status.value},
age: ${person.age.value}
''');
}
0
likes
130
points
24
downloads

Publisher

unverified uploader

Weekly Downloads

A simple json serializer/sanitizer library

Repository (GitHub)

Documentation

API reference

License

MIT (license)

More

Packages that depend on jsonic