convertInsertVal static method
Implementation
static InsertData? convertInsertVal(dynamic insertPropVal, OpAttributeSanitizerOptions sanitizeOptions) {
if (insertPropVal is String) {
return InsertDataQuill(DataType.text, insertPropVal);
}
if (!isTruthy(insertPropVal) || insertPropVal is! Map<String, dynamic>) {
return null;
}
final List<String> keys = insertPropVal.keys.toList(growable: false);
if (keys.isEmpty) {
return null;
}
if (keys.contains(DataType.image.value)) {
return InsertDataQuill(DataType.image, OpLinkSanitizer.sanitize(insertPropVal[DataType.image.value].toString(), sanitizeOptions));
}
if (keys.contains(DataType.video.value)) {
return InsertDataQuill(DataType.video, OpLinkSanitizer.sanitize(insertPropVal[DataType.video.value].toString(), sanitizeOptions));
}
if (keys.contains(DataType.formula.value)) {
return InsertDataQuill(DataType.formula, insertPropVal[DataType.formula.value]);
}
// custom
final String firstKey = keys.first;
return InsertDataCustom(firstKey, insertPropVal[firstKey]);
}