stringToTextSpan method
Implementation
TextSpan stringToTextSpan(
String string,
DartCodeViewerThemeData dartCodeViewerThemeData,
) {
return TextSpan(
style: () {
final String? styleString =
RegExp(r'codeStyle.\w*').firstMatch(string)?.group(0);
final dartCodeViewerTheme = dartCodeViewerThemeData;
switch (styleString) {
case 'codeStyle.baseStyle':
return dartCodeViewerTheme.baseStyle;
case 'codeStyle.numberStyle':
return dartCodeViewerTheme.numberStyle;
case 'codeStyle.commentStyle':
return dartCodeViewerTheme.commentStyle;
case 'codeStyle.keywordStyle':
return dartCodeViewerTheme.keywordStyle;
case 'codeStyle.stringStyle':
return dartCodeViewerTheme.stringStyle;
case 'codeStyle.punctuationStyle':
return dartCodeViewerTheme.punctuationStyle;
case 'codeStyle.classStyle':
return dartCodeViewerTheme.classStyle;
case 'codeStyle.constantStyle':
return dartCodeViewerTheme.constantStyle;
default:
return dartCodeViewerTheme.baseStyle;
}
}(),
text: () {
final textString = RegExp('\'.*\'').firstMatch(string)?.group(0);
final subString = textString!.substring(1, textString.length - 1);
return decodeString(subString);
}(),
);
}