stringKindForPhoneNumber top-level constant

  1. @experimental
StringKind const stringKindForPhoneNumber

StringKind for phone numbers.

We may modify the validation rules in future.

Examples of valid strings

  • "+1-541-754-3010"
  • "123"
  • "(541) 754 3010"
  • "(089) / 636-48018"

Example

import 'package:kind/kind.dart';
import 'package:kind/strings.dart';

class Organization extend Entity {
  static final EntityKind<Organization> kind = EntityKind<Organization>(
    name: 'Organization',
    define: (c) {
      c.optional<String>(
        id: 1,
        name: 'description',
        kind: stringKindForPhoneNumber,
        getter: (t) => t.phoneNumber,
        setter: (t,v) => t.phoneNumber = v,
      );
      c.constructor = () => Organization();
    },
  );

  String? phoneNumber;

  @override
  EntityKind<Organization> getKind() => kind;
}

Implementation

@experimental
const StringKind stringKindForPhoneNumber = StringKind(
  name: 'phoneNumber',
  isSingleLine: true,
  minLengthInUtf8: 3,
  maxLengthInUtf8: 40,
  regExpProvider: _telephoneRegExpProvider,
  examples: [
    '+1-541-754-3010',
    '123',
    '(541) 754 3010',
    '(089) / 636-48018',
  ],
);