Organization.fromMap constructor

Organization.fromMap(
  1. Map<String, dynamic> map
)

Implementation

factory Organization.fromMap(
  Map<String, dynamic> map,
) {
  map = {
    '\$id': "",
    '\$createdAt': "",
    '\$updatedAt': "",
    'name': "",
    'total': 0,
    'budgetAlerts': [75],
    'billingPlan': "tier-0",
    'billingPlanId': "tier-0",
    'billingEmail': "",
    'status': "draft",
    'markedForDeletion': false,
    'platform': "appwrite",
    'projects': [],
    ...map,
  };

  return Organization(
    $id: map['\$id'].toString(),
    $createdAt: map['\$createdAt'].toString(),
    $updatedAt: map['\$updatedAt'].toString(),
    name: map['name'].toString(),
    total: map['total'],
    prefs: Preferences.fromMap(
      map['prefs'] ?? <String, dynamic>{},
    ),
    billingBudget: map['billingBudget'],
    budgetAlerts: List.from(map['budgetAlerts'] ?? []),
    billingPlan: map['billingPlan'].toString(),
    billingPlanId: map['billingPlanId'].toString(),
    billingPlanDetails: BillingPlan.fromMap(
      map['billingPlanDetails'] ?? <String, dynamic>{},
    ),
    billingEmail: map['billingEmail'].toString(),
    billingStartDate: map['billingStartDate']?.toString(),
    billingCurrentInvoiceDate: map['billingCurrentInvoiceDate']?.toString(),
    billingNextInvoiceDate: map['billingNextInvoiceDate']?.toString(),
    billingTrialStartDate: map['billingTrialStartDate']?.toString(),
    billingTrialDays: map['billingTrialDays'],
    billingAggregationId: map['billingAggregationId']?.toString(),
    billingInvoiceId: map['billingInvoiceId']?.toString(),
    paymentMethodId: map['paymentMethodId']?.toString(),
    billingAddressId: map['billingAddressId']?.toString(),
    backupPaymentMethodId: map['backupPaymentMethodId']?.toString(),
    status: map['status'].toString(),
    remarks: map['remarks']?.toString(),
    agreementBAA: map['agreementBAA']?.toString(),
    programManagerName: map['programManagerName']?.toString(),
    programManagerCalendar: map['programManagerCalendar']?.toString(),
    programDiscordChannelName: map['programDiscordChannelName']?.toString(),
    programDiscordChannelUrl: map['programDiscordChannelUrl']?.toString(),
    billingLimits: map['billingLimits'] != null
        ? BillingLimits.fromMap(
            map['billingLimits'],
          )
        : null,
    billingPlanDowngrade: map['billingPlanDowngrade']?.toString(),
    billingTaxId: map['billingTaxId']?.toString(),
    markedForDeletion: map['markedForDeletion'],
    platform: map['platform'].toString(),
    projects: List.from(map['projects'] ?? []),
  );
}