openpencil/packages/docs/programmable/sdk/api/advanced/index.md
Danila Poyarkov c1d7fc80b0 Fix property panel visibility toggles, independent corners/stroke sides, extract shared ColorStyleRow
- Fix fill/stroke/effect/appearance visibility eye toggle (stale clone reads)
- Fix independent corner radii toggle not showing 4 inputs
- Fix stroke sides toggle: replace dropdown with direct toggle like corners
- Copy uniform weight to all sides when expanding stroke sides
- Batch multi-selection visibility toggles into single undo entry
- Extract ColorStyleRow shared by FillSection and StrokeSection
- Replace useFillVariableBinding/useStrokeVariableBinding with useColorVariableBinding(kind)
- AppearanceSection uses useAppearance() directly instead of slot wrapper
- Add sceneVersion dependency to useNodeProps and PropertyListRoot computeds
- Add E2E tests for visibility toggles and corner/stroke side toggles
2026-03-27 17:06:33 +03:00

40 lines
1.1 KiB
Markdown

---
title: Advanced
description: Lower-level and specialized APIs in @open-pencil/vue.
---
# Advanced
These APIs are public, but they are more specialized than the main component and composable surface.
## Selection and scene helpers
- [useNodeProps](./use-node-props)
- [useSceneComputed](./use-scene-computed)
- [usePropScrub](./use-prop-scrub)
## Picker and editor internals
- [useColorVariableBinding](./use-color-variable-binding)
- [useFillPicker](./use-fill-picker)
- [useGradientStops](./use-gradient-stops)
- [useFontPicker](./use-font-picker)
- [useToolbarState](./use-toolbar-state)
- [useNodeFontStatus](./use-node-font-status)
## Editor-shell utilities
- [useLayerDrag](./use-layer-drag)
- [useInlineRename](./use-inline-rename)
- [useCanvasDrop](./use-canvas-drop)
- [extractImageFilesFromClipboard](./extract-image-files-from-clipboard)
- [toolCursor](./tool-cursor)
## Primitive context helpers
- [useCanvasContext](./use-canvas-context)
- [useLayerTree](./use-layer-tree)
- [useToolbar](./use-toolbar)
- [usePropertyList](./use-property-list)
- [useScrubInput](./use-scrub-input)