मुख्य सामग्री पर जाएँ

clepit_core

clepit_core पैकेज @clepit/core का नेटिव Dart/Flutter जुड़वाँ है: वही JSON दस्तावेज़ मॉडल, एक कोडबेस से संपादन और रीड-ओनली रेंडरिंग, वेब, मोबाइल और डेस्कटॉप के लिए। दस्तावेज़ विनिमेय हैं: यहाँ का EditorData.toJson() TypeScript पैकेज से पार्स होता है और उल्टा भी।

pub.dev: clepit_core · npm: @clepit/core

इंस्टॉल

Shell
flutter pub add clepit_core

Editor

Editor एक पूर्ण संपादन सतह है: ब्लॉक टूल, इनलाइन टूल, टूलबार और चयन प्रबंधन। EditorController अंतर्निहित सेट को सीमित या विस्तारित करने के लिए tools और inlineTools भी लेता है, और प्रोग्रामेटिक संपादन के लिए दस्तावेज़, चयन और व्यू API (EditorApi) उपलब्ध कराता है।

Dart
import 'package:clepit_core/clepit_core.dart';

final controller = EditorController(
  initial: EditorData.fromJson(documentJson),
);

Editor(
  controller: controller,
  config: EditorConfig(
    onChange: (data) => save(data),
  ),
);

Renderer

Renderer दस्तावेज़ को रीड-ओनली बनाता है, बिना संपादन सज्जा के। अमान्य या अज्ञात ब्लॉक डेटा थ्रो करने के बजाय InvalidDataPlaceholder रेंडर करता है, इसलिए पुराने या नए प्रोड्यूसर का दस्तावेज़ व्यू क्रैश करने के बजाय दृश्य रूप से डिग्रेड होता है।

Dart
Renderer(
  config: RendererConfig(data: document),
);

ClepitTheme

स्टाइलिंग ClepitTheme से होकर बहती है, जो आपके ThemeData पर एक ThemeExtension है, इसलिए एडिटर और रेंडरर लाइट और डार्क में आपके ऐप थीम का पालन करते हैं। प्रति-रेंडर ओवरराइड RendererConfig.styles से जाते हैं।

@clepit/core से आ रहे हैं

दोनों तरफ वही अवधारणा है; नाम प्रत्येक प्लेटफ़ॉर्म की परंपराओं का पालन करते हैं।

TypeScriptDart
EditorEditor
RendererRenderer
StyleManagerThemeExtension<ClepitTheme> + ThemeData
ToolBlockTool / InlineTool
Block<T>sealed class Block
EditorAPIEditorApi + BlocksApi, SelectionApi