ack 0.0.1-dev.4 copy "ack: ^0.0.1-dev.4" to clipboard
ack: ^0.0.1-dev.4 copied to clipboard

A simple validation library for Dart

example/ack_example.dart

import 'package:ack/ack.dart';

void main() {
  final addressSchema = Ack.object({
    'street': Ack.string(),
    'city': Ack.string(),
    'zip': Ack.string(),
  });
  final userSchema = Ack.object({
    'name': Ack.string.isNotEmpty(),
    'email': Ack.string.isEmail(),
    'age': Ack.int.minValue(18),
    'roles': Ack.string.list.minItems(1),
  });

  final userWithAddressSchema = userSchema.extend({'address': addressSchema()});

  final userData = {
    'name': 'John Doe',
    'email': '[email protected]',
    'age': 25,
    'roles': ['admin', 'user'],
    'address': {
      'street': '123 Main St',
      'city': 'Springfield',
      'zip': '12345',
    },
  };

  final result = userWithAddressSchema.validate(userData);

  result.match(
    onOk: (data) => print('User data is valid!'),
    onFail: (error) => print('Validation errors: ${error.toMap()}'),
  );
}
55
likes
0
points
133
downloads

Publisher

verified publisherleoafarias.com

Weekly Downloads

A simple validation library for Dart

License

unknown (license)

Dependencies

meta

More

Packages that depend on ack