concat static method

ConfigParams concat(
  1. ConfigParams options1,
  2. ConfigParams options2, [
  3. List<String>? keys
])

Concatinates two options by combining duplicated properties into comma-separated list

  • options1 first options to merge
  • options2 second options to merge
  • keys when define it limits only to specific keys

Implementation

static ConfigParams concat(ConfigParams options1, ConfigParams options2,
    [List<String>? keys]) {
  dynamic options = ConfigParams.fromValue(options1);

  for (var key in options2.getKeys()) {
    var value1 = options1.getAsString(key);
    var value2 = options2.getAsString(key);

    if (value1 != '' && value2 != '') {
      if (keys == null || keys.isEmpty || keys.contains(key)) {
        options.setAsObject(key, value1 + ',' + value2);
      }
    } else if (value1 != '') {
      options.setAsObject(key, value1);
    } else if (value2 != '') {
      options.setAsObject(key, value2);
    }
  }
  return options;
}