Liigu põhisisu juurde

clepit_core

Pakett clepit_core on @clepit/core natiivne Dart/Flutteri kaksik: sama JSON-dokumendimudel, redigeerimine ja kirjutuskaitstud renderdamine ühest koodibaasist, sihtides veebi, mobiili ja töölauda. Dokumendid on vahetatavad: siinse EditorData.toJson() parsib TypeScripti pakett ja vastupidi.

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

Paigaldus

Shell
flutter pub add clepit_core

Editor

Editor on täielik redigeerimispind: plokitööriistad, tekstisisesed tööriistad, tööriistaribad ja valiku käsitlemine. EditorController võtab ka tools ja inlineTools, et sisseehitatud komplekti piirata või laiendada, ning avab dokumendi, valiku ja vaate API-d (EditorApi) programmiliseks redigeerimiseks.

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 joonistab dokumendi kirjutuskaitstuna, ilma redigeerimiskroomita. Kehtetu või tundmatu plokiandmestik renderdab InvalidDataPlaceholder-i, mitte ei viska erindit, nii et vanema või uuema tootja dokument laguneb nähtavalt, selle asemel et vaadet kokku kukutada.

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

ClepitTheme

Kujundus voolab läbi ClepitTheme, mis on ThemeExtension sinu ThemeData peal, nii et redaktor ja renderdaja järgivad su rakenduse teemat heledas ja tumedas. Renderduspõhised ülekirjutused käivad läbi RendererConfig.styles.

Tulles @clepit/core-st

Sama mõiste on olemas mõlemal pool; nimed järgivad kummagi platvormi tavasid.

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