processTemplate function

String processTemplate(
  1. String template,
  2. Map<String, dynamic>? structuredData
)

Processes a message template by replacing placeholders with values from structured data

Template format: "Text with {placeholder}" where placeholder is a key in structuredData Example: processTemplate("User {id} logged in", {"id": "123"}) => "User 123 logged in"

Implementation

String processTemplate(String template, Map<String, dynamic>? structuredData) {
  if (structuredData == null || structuredData.isEmpty) {
    return template;
  }

  var result = template;
  for (final entry in structuredData.entries) {
    result = result.replaceAll('{${entry.key}}', '${entry.value}');
  }

  return result;
}