rspace-online/lib
Jeff Emmett 4f9b036cc0 fix: preserve shape x/y/size on reload + fix eraser Automerge persistence
createRenderRoot() was unconditionally reading x/y/width/height from HTML
attributes, overwriting values already set via JS properties before DOM
insertion. This caused all shapes to stack at (0,0) with auto dimensions
on page reload. Now only reads from attributes when they exist.

Also fixed eraser: hardDeleteShape() was only in the click handler which
never fired because pointerdown already removed the target element.
Moved Automerge deletion into the pointerdown handler.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-02 23:07:41 -08:00
..
DOMRectTransform.ts Initial rspace-online: FolkJS collaborative canvas with subdomain routing 2026-01-01 16:27:07 +01:00
Matrix.ts Initial rspace-online: FolkJS collaborative canvas with subdomain routing 2026-01-01 16:27:07 +01:00
TransformEvent.ts fix: shape resize sync and transform event name alignment 2026-03-01 11:11:02 -08:00
Vector.ts Initial rspace-online: FolkJS collaborative canvas with subdomain routing 2026-01-01 16:27:07 +01:00
community-sync.ts feat: people online panel — live peer presence on canvas 2026-03-02 16:45:57 -08:00
cursors.ts Initial rspace-online: FolkJS collaborative canvas with subdomain routing 2026-01-01 16:27:07 +01:00
demo-sync-vanilla.ts refactor: rename module directories to match r-prefixed module IDs 2026-02-28 19:49:26 -08:00
folk-arrow.ts Add FolkArrow component for shape connections 2026-01-01 23:13:25 +01:00
folk-blender.ts fix: zoom-aware drag, minimum-penetration collision, replace unicode escapes 2026-02-27 16:48:50 -08:00
folk-booking.ts fix: zoom-aware drag, minimum-penetration collision, replace unicode escapes 2026-02-27 16:48:50 -08:00
folk-budget.ts fix: zoom-aware drag, minimum-penetration collision, replace unicode escapes 2026-02-27 16:48:50 -08:00
folk-calendar.ts fix: zoom-aware drag, minimum-penetration collision, replace unicode escapes 2026-02-27 16:48:50 -08:00
folk-canvas.ts fix: pass auth token in WebSocket connections for private spaces 2026-02-28 22:08:07 -08:00
folk-chat.ts fix: Use slot.parentElement instead of :scope selector for ShadowRoot 2026-01-03 16:09:48 +01:00
folk-choice-rank.ts Add folk-choice-* collaborative decision components 2026-02-18 11:18:00 +00:00
folk-choice-spider.ts Add folk-choice-* collaborative decision components 2026-02-18 11:18:00 +00:00
folk-choice-vote.ts Add folk-choice-* collaborative decision components 2026-02-18 11:18:00 +00:00
folk-destination.ts fix: zoom-aware drag, minimum-penetration collision, replace unicode escapes 2026-02-27 16:48:50 -08:00
folk-drawfast.ts fix: make shape content interactive + render emojis properly 2026-02-27 14:15:31 -08:00
folk-element.ts Initial rspace-online: FolkJS collaborative canvas with subdomain routing 2026-01-01 16:27:07 +01:00
folk-embed.ts fix: zoom-aware drag, minimum-penetration collision, replace unicode escapes 2026-02-27 16:48:50 -08:00
folk-feed.ts feat: layered tab system with inter-layer flows and bidirectional feeds 2026-02-25 15:29:03 -08:00
folk-freecad.ts fix: zoom-aware drag, minimum-penetration collision, replace unicode escapes 2026-02-27 16:48:50 -08:00
folk-google-item.ts fix: zoom-aware drag, minimum-penetration collision, replace unicode escapes 2026-02-27 16:48:50 -08:00
folk-image-gen.ts feat: Gemini AI integration + zine generator + fix Ollama network 2026-03-02 21:27:11 -08:00
folk-itinerary.ts fix: zoom-aware drag, minimum-penetration collision, replace unicode escapes 2026-02-27 16:48:50 -08:00
folk-kicad.ts fix: zoom-aware drag, minimum-penetration collision, replace unicode escapes 2026-02-27 16:48:50 -08:00
folk-map.ts fix: zoom-aware drag, minimum-penetration collision, replace unicode escapes 2026-02-27 16:48:50 -08:00
folk-markdown.ts fix: shape resize sync and transform event name alignment 2026-03-01 11:11:02 -08:00
folk-obs-note.ts fix: zoom-aware drag, minimum-penetration collision, replace unicode escapes 2026-02-27 16:48:50 -08:00
folk-packing-list.ts fix: zoom-aware drag, minimum-penetration collision, replace unicode escapes 2026-02-27 16:48:50 -08:00
folk-piano.ts fix: zoom-aware drag, minimum-penetration collision, replace unicode escapes 2026-02-27 16:48:50 -08:00
folk-prompt.ts fix: update Gemini model names from deprecated -exp to current versions 2026-03-02 21:43:42 -08:00
folk-rapp.ts fix: make folk-rapp header a drag handle so shapes can be grabbed 2026-03-01 18:11:30 -08:00
folk-shape.ts fix: preserve shape x/y/size on reload + fix eraser Automerge persistence 2026-03-02 23:07:41 -08:00
folk-slide.ts fix: Use slot.parentElement instead of :scope selector for ShadowRoot 2026-01-03 16:09:48 +01:00
folk-social-post.ts fix: zoom-aware drag, minimum-penetration collision, replace unicode escapes 2026-02-27 16:48:50 -08:00
folk-splat.ts fix: zoom-aware drag, minimum-penetration collision, replace unicode escapes 2026-02-27 16:48:50 -08:00
folk-token-ledger.ts fix: zoom-aware drag, minimum-penetration collision, replace unicode escapes 2026-02-27 16:48:50 -08:00
folk-token-mint.ts fix: zoom-aware drag, minimum-penetration collision, replace unicode escapes 2026-02-27 16:48:50 -08:00
folk-transcription.ts fix: zoom-aware drag, minimum-penetration collision, replace unicode escapes 2026-02-27 16:48:50 -08:00
folk-video-chat.ts fix: zoom-aware drag, minimum-penetration collision, replace unicode escapes 2026-02-27 16:48:50 -08:00
folk-video-gen.ts fix: zoom-aware drag, minimum-penetration collision, replace unicode escapes 2026-02-27 16:48:50 -08:00
folk-workflow-block.ts fix: zoom-aware drag, minimum-penetration collision, replace unicode escapes 2026-02-27 16:48:50 -08:00
folk-wrapper.ts fix: shape resize sync and transform event name alignment 2026-03-01 11:11:02 -08:00
folk-zine-gen.ts feat: Gemini AI integration + zine generator + fix Ollama network 2026-03-02 21:27:11 -08:00
index.ts feat: Gemini AI integration + zine generator + fix Ollama network 2026-03-02 21:27:11 -08:00
layer-types.ts feat: flow colors green=economic, purple=delegation, blue=data 2026-02-27 16:10:40 -08:00
maximize.ts feat: Add shared FolkJS utilities (maximize, pinned-view, toJSON) 2026-01-02 18:36:40 +01:00
mi-action-executor.ts feat: MI canvas bridge, action executor, and enhanced context 2026-02-27 16:08:20 -08:00
mi-actions.ts feat: MI canvas bridge, action executor, and enhanced context 2026-02-27 16:08:20 -08:00
mi-canvas-bridge.ts feat: MI canvas bridge, action executor, and enhanced context 2026-02-27 16:08:20 -08:00
mi-selection-transforms.ts feat: MI canvas bridge, action executor, and enhanced context 2026-02-27 16:08:20 -08:00
mi-tool-schema.ts feat: MI canvas bridge, action executor, and enhanced context 2026-02-27 16:08:20 -08:00
offline-store.ts feat: persistent tab bar, offline save improvements, and shape validation 2026-03-01 11:11:14 -08:00
pinned-view.ts feat: Add shared FolkJS utilities (maximize, pinned-view, toJSON) 2026-01-02 18:36:40 +01:00
presence.ts feat: people online panel — live peer presence on canvas 2026-03-02 16:45:57 -08:00
resize-manager.ts Initial rspace-online: FolkJS collaborative canvas with subdomain routing 2026-01-01 16:27:07 +01:00
rspace-header.ts feat: persistent sessions with 30-day JWT and auto-refresh on page load 2026-02-28 22:33:31 -08:00
tags.ts Initial rspace-online: FolkJS collaborative canvas with subdomain routing 2026-01-01 16:27:07 +01:00
types.ts Initial rspace-online: FolkJS collaborative canvas with subdomain routing 2026-01-01 16:27:07 +01:00
utils.ts Initial rspace-online: FolkJS collaborative canvas with subdomain routing 2026-01-01 16:27:07 +01:00