ወደ ዋናው ይዘት ዝለል

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