OdooView.create constructor

OdooView.create({
  1. String? id,
  2. required String name,
  3. required String model,
  4. required ViewType viewType,
  5. String? docModule,
  6. List<OdooField>? fields,
  7. List<OdooGroup>? groups,
})

Factory — creates a blank view

Implementation

factory OdooView.create({
  String? id,
  required String name,
  required String model,
  required ViewType viewType,
  String? docModule,
  List<OdooField>? fields,
  List<OdooGroup>? groups,
}) {
  final now = DateTime.now();
  final safeId = name.toLowerCase().replaceAll(RegExp(r'[^a-z0-9]'), '_');
  return OdooView(
    id: id ?? 'view_${safeId}_${viewType.value}',
    name: name,
    model: model,
    viewType: viewType,
    docModule: docModule,
    topLevelFields: fields ?? const [],
    groups: groups ?? const [],
    createdAt: now,
    updatedAt: now,
  );
}