QUserProperties constructor

QUserProperties(
  1. List<QUserProperty> properties
)

Implementation

factory QUserProperties(List<QUserProperty> properties) {
  final List<QUserProperty> definedProperties = properties.whereNot(
          (userProperty) => userProperty.definedKey == QUserPropertyKey.custom
  ).toList();
  final List<QUserProperty> customProperties = properties.where(
          (userProperty) => userProperty.definedKey == QUserPropertyKey.custom
  ).toList();

  final Map<String, String> flatPropertiesMap = Map.fromIterable(
    properties,
    key: (userProperty) => userProperty.key,
    value: (userProperty) => userProperty.value,
  );

  final Map<QUserPropertyKey, String> flatDefinedPropertiesMap = Map.fromIterable(
    definedProperties,
    key: (userProperty) => userProperty.definedKey,
    value: (userProperty) => userProperty.value,
  );

  final Map<String, String> flatCustomPropertiesMap = Map.fromIterable(
    customProperties,
    key: (userProperty) => userProperty.key,
    value: (userProperty) => userProperty.value,
  );

  return QUserProperties._(
    properties,
    definedProperties,
    customProperties,
    flatPropertiesMap,
    flatDefinedPropertiesMap,
    flatCustomPropertiesMap,
  );
}