📄 interpolate¶
📊 Analysis Summary¶
| Metric | Count |
|---|---|
| 🔧 Functions | 2 |
| 📦 Imports | 1 |
📚 Table of Contents¶
🛠️ File Location:¶
📂 packages/rule-tester/src/utils/interpolate.ts
📦 Imports¶
| Name | Source |
|---|---|
ReportDescriptorMessageData |
@typescript-eslint/utils/ts-eslint |
Functions¶
getPlaceholderMatcher(): RegExp¶
Returns a global expression matching placeholders in messages.
interpolate(text: string, data: ReportDescriptorMessageData | undefined): string¶
Parameters:
textstringdataReportDescriptorMessageData | undefined
Returns: string
Calls:
getPlaceholderMatchertext.replacetermWithWhitespace.trimString
Internal Comments:
// Substitution content for any {{ }} markers.
// Preserve old behavior: If parameter name not provided, don't replace it.
Code
export function interpolate(
text: string,
data: ReportDescriptorMessageData | undefined,
): string {
if (!data) {
return text;
}
const matcher = getPlaceholderMatcher();
// Substitution content for any {{ }} markers.
return text.replace(matcher, (fullMatch, termWithWhitespace: string) => {
const term = termWithWhitespace.trim();
if (term in data) {
return String(data[term]);
}
// Preserve old behavior: If parameter name not provided, don't replace it.
return fullMatch;
});
}
Generated by Syntax Scribe