fika-editor 3.0.22 → 3.0.23
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schemaVersion": 2,
|
|
3
3
|
"package": "fika-editor",
|
|
4
|
-
"packageVersion": "3.0.
|
|
5
|
-
"generatedAt": "2026-09-
|
|
4
|
+
"packageVersion": "3.0.23",
|
|
5
|
+
"generatedAt": "2026-09-04T12:20:36.524Z",
|
|
6
6
|
"summary": "Authoring guidance for the Fika agentic bridge. SLIDE NUMBERS START AT 1 everywhere: payload.index, result.data.slideIndex, screenshot.slideIndex, getState().slideIndex, selectedSlideIndexes, plan.slides[].index, and plan.loudIndex are the SAME 1-based number — never subtract or add 1. First slide = 1; last existing = slideCount; omit index to append; index === slideCount+1 also appends; 1 ≤ index ≤ slideCount on createFromLayout REPLACES that slide. The recommended way to build a deck from scratch: (1) ONE bootstrap call deck.setup({ styleId, slideCount, title? }) — applies the visual identity, returns the composition plan (anchors + loud slide), and optionally builds the title slide together; prefer this over separate styles.catalog / deck.applyStyle / deck.planComposition, then (2) for each slide pick a recipe + visual variant from layouts.catalog and add it with slides.createFromLayout({ layoutId, variantId, slots }), preferring a variant whose anchor matches the plan (when variantId is omitted the engine picks a filled/full-width match; an explicit variantId is kept). The engine themes, positions, sanitizes slot markers the layout already draws, AND auto-fits every text box (via responsive measurement) so content does not overflow, and it runs a deterministic QA pass on each slide (overlap / contrast / density / monotony) so you can fix issues in the same turn. Author slot content as Markdown/plain text or structured values (arrays for bullets, { labels, series } for charts) — never hand-written HTML. Host-registered templates (deck.applyTemplate + slides.insertFromTemplate) are optional when the embed host supplies them. Avoid blank slides.create / hand-placed elements unless no layout fits. Pair this with the machine schema (command payload/return types) in the same manifest.",
|
|
7
7
|
"commandCount": 197,
|
|
8
8
|
"designSystem": {
|
|
@@ -95,7 +95,7 @@
|
|
|
95
95
|
"id": "layouts",
|
|
96
96
|
"commandCount": 1,
|
|
97
97
|
"title": "Layouts",
|
|
98
|
-
"summary": "Compositional slide recipes (title, section, closing, bullets, twoColumn, imageText, imageFull, bigStat, quote, chart, comparison, cards, numbered), each with 1–4 visual VARIANTS that share slots but compose them differently (different anchor, background treatment, motif placement). layouts.catalog lists each layout's variants and content slots; slides.createFromLayout builds a themed, positioned slide from a layout id + variantId + slots.",
|
|
98
|
+
"summary": "Compositional slide recipes (title, section, closing, bullets, twoColumn, imageText, imageFull, bigStat, quote, chart, comparison, cards, numbered, diagram), each with 1–4 visual VARIANTS that share slots but compose them differently (different anchor, background treatment, motif placement). layouts.catalog lists each layout's variants and content slots; slides.createFromLayout builds a themed, positioned slide from a layout id + variantId + slots.",
|
|
99
99
|
"whenToUse": "After deck.setup (or applyStyle + planComposition), once per slide. Pick the layout whose composition matches the slide's job, then pick the VARIANT whose anchor matches the planned anchor for that slide position (this is what keeps consecutive slides from looking identical). Fill its slots with content. The engine themes, positions and auto-fits text to each box, so focus on clear, concise content rather than exact character counts."
|
|
100
100
|
},
|
|
101
101
|
{
|
|
@@ -960,7 +960,8 @@
|
|
|
960
960
|
"controller.elements.create({ slideId, element: { type:'text', left:40, top:40, width:920, height:90, rotate:0, content:'<p><span style=\"font-size:40px;color:#1F4E79\"><strong>Action title</strong></span></p>', defaultFontName:'Arial', defaultColor:'#1F4E79' } })"
|
|
961
961
|
],
|
|
962
962
|
"tips": [
|
|
963
|
-
"Text font size lives in inline HTML styles inside content, not in a fontSize field."
|
|
963
|
+
"Text font size lives in inline HTML styles inside content, not in a fontSize field.",
|
|
964
|
+
"For a flowchart, mindmap, sequence or cycle use type:'mermaid' with the Mermaid source in `code` — do NOT assemble boxes and arrows from shapes + lines. slides.createFromLayout({ layoutId:'diagram', slots:{ title, code } }) titles the slide and fills the body. PlantUML (@startuml …) in the same `code` field is rendered by the host to an image."
|
|
964
965
|
],
|
|
965
966
|
"related": [
|
|
966
967
|
"text.create",
|
|
@@ -2312,7 +2313,7 @@
|
|
|
2312
2313
|
"FikaLatexElementSizing": "export interface FikaLatexElementSizing { left?: number; top?: number; width?: number; height?: number; rotate?: number }",
|
|
2313
2314
|
"FikaLayout": "export interface FikaLayout { id: string; label: string; summary: string; bestFor: string; feature: boolean; slots: FikaLayoutSlotDef[]; variants: FikaLayoutVariant[] }",
|
|
2314
2315
|
"FikaLayoutBackgroundMode": "export type FikaLayoutBackgroundMode = 'auto' | 'feature' | 'plain'",
|
|
2315
|
-
"FikaLayoutSlotDef": "export interface FikaLayoutSlotDef { name: string; type: 'text' | 'bullets' | 'image' | 'chart' | 'stats' | 'rows' | 'cards' | 'steps'; required: boolean; description: string }",
|
|
2316
|
+
"FikaLayoutSlotDef": "export interface FikaLayoutSlotDef { name: string; type: 'text' | 'bullets' | 'image' | 'chart' | 'stats' | 'rows' | 'cards' | 'steps' | 'diagram'; required: boolean; description: string }",
|
|
2316
2317
|
"FikaLayoutVariant": "export interface FikaLayoutVariant { id: string; label: string; anchor: CompositionAnchor; summary: string }",
|
|
2317
2318
|
"FikaLineDirectionInput": "export type FikaLineDirectionInput = Broken2LineDirection | 'auto'",
|
|
2318
2319
|
"FikaLineElementInput": "export type FikaLineElementInput = Partial<Pick<PPTLineElement, 'id' | 'left' | 'top' | 'width' | 'style' | 'color' | 'points' | 'shadow' | 'broken' | 'broken2' | 'broken2Direction' | 'curve' | 'cubic' | 'link' | 'name' | 'lock' | 'groupId'>> & Pick<PPTLineElement, 'start' | 'end'>",
|