openpencil/src
Danila Poyarkov e3ab8dab38 AI chat rendering, undo, visual verification, and provider compatibility
Rendering & layout:
- Fix COUNTER_ALIGN_MAP stretch mapping
- Direction-aware fill sizing based on parent flex direction
- Text without explicit width defaults to WIDTH_AND_HEIGHT auto-resize
- Padding auto-enables vertical auto-layout
- clipsContent propagated as Overflow.Hidden to Yoga
- Text height measurement for HEIGHT auto-resize mode
- Export x/y for absolute children, text w/h per textAutoResize
- Export STRETCH as fill on cross axis

Undo system:
- Undo for auto-layout and layer tree reorder
- Atomic undo for drag + reparent
- Page snapshot undo for AI tool operations
- mouseleave no longer terminates active drag

AI tools & vision:
- Add get_jsx, diff_jsx, and describe tools
- export_image returns image via toModelOutput
- Chunked uint8ArrayToBase64 (stack overflow fix)
- computeAllLayouts after AI tool execution
- onBeforeExecute/onAfterExecute receive ToolDef

Provider & UI:
- Add anthropic-compatible provider
- API type toggle for OpenAI-compatible
- Debug toolbar (dev only)
- Preserve chat on UI toggle
- Enhanced system prompt with JSX reference

Co-authored-by: Anton A S <eddclyde@yandex.ru>
2026-03-09 15:49:29 +03:00
..
ai AI chat rendering, undo, visual verification, and provider compatibility 2026-03-09 15:49:29 +03:00
automation Code review: svg-export/ folder, restore comments, cleanup 2026-03-09 15:22:14 +03:00
components AI chat rendering, undo, visual verification, and provider compatibility 2026-03-09 15:49:29 +03:00
composables AI chat rendering, undo, visual verification, and provider compatibility 2026-03-09 15:49:29 +03:00
engine Remove re-export shims and import types directly from core 2026-03-09 08:56:47 +03:00
shims Multi-provider AI, sucrase JSX, Figma zoom shortcuts (#72) 2026-03-08 22:05:18 +03:00
stores AI chat rendering, undo, visual verification, and provider compatibility 2026-03-09 15:49:29 +03:00
utils Refactor mobile drawer: use VueUse composables, unify panels 2026-03-05 22:13:24 +03:00
views Enable Tailwind CSS class sorting in oxfmt 2026-03-09 15:46:20 +03:00
app.css Fix scrollbar: use utility class instead of global selector 2026-03-04 09:35:30 +03:00
App.vue Eliminate as Record<string, unknown> casts 2026-03-06 21:43:32 +03:00
constants.ts Remove re-export shims and import types directly from core 2026-03-09 08:56:47 +03:00
demo.ts Delete re-export shims, import from @open-pencil/core directly 2026-03-06 21:42:56 +03:00
env.d.ts Eliminate as Record<string, unknown> casts 2026-03-06 21:43:32 +03:00
global.d.ts Release v0.3.2 2026-03-02 11:36:18 +03:00
main.ts Fix all type-aware lint warnings 2026-03-08 23:04:44 +03:00
router.d.ts Move demo to /demo route, add @unhead/vue for title management 2026-03-06 20:54:48 +03:00
router.ts Move demo to /demo route, add @unhead/vue for title management 2026-03-06 20:54:48 +03:00