notus_format 1.0.2 notus_format: ^1.0.2 copied to clipboard
Platform-agnostic rich text document model based on Delta format and used in Zefyrka editor.
import 'package:notus_format/notus_format.dart';
void main() {
final doc = NotusDocument();
// Modify this document with insert, delete and format operations
doc.insert(0, 'Notus package provides rich text document model for Zefyr editor');
doc.format(0, 5, NotusAttribute.bold); // Makes first word bold.
doc.format(0, 0, NotusAttribute.h1); // Makes first line a heading.
doc.delete(23, 10); // Deletes "rich text " segment.
// Collects style attributes at 1 character in this document.
doc.collectStyle(1, 0); // returned style would include "bold" and "h1".
// Listen to all changes applied to this document.
doc.changes.listen((change) {
print(change);
});
// Dispose resources allocated by this document, e.g. closes "changes" stream.
// After document is closed it cannot be modified.
doc.close();
}