From c69ec7a79ddae1e85fa67da037dd1094e2891732 Mon Sep 17 00:00:00 2001
From: "anthropic-code-agent[bot]" <242468646+Claude@users.noreply.github.com>
Date: Mon, 27 Apr 2026 12:57:51 +0000
Subject: [PATCH 1/3] Convert UI components CSS to SCSS
Agent-Logs-Url: https://github.com/hackycy/easyink/sessions/d376e8ab-348b-4aba-8cfb-c788e8c7ec32
Co-authored-by: hackycy <26972260+hackycy@users.noreply.github.com>
---
packages/ui/src/components/EiBorderToggle.vue | 76 +--
packages/ui/src/components/EiButton.vue | 68 +--
packages/ui/src/components/EiCheckbox.vue | 16 +-
packages/ui/src/components/EiColorPicker.vue | 468 +++++++++---------
packages/ui/src/components/EiFontPicker.vue | 218 ++++----
packages/ui/src/components/EiInput.vue | 26 +-
packages/ui/src/components/EiNumberInput.vue | 26 +-
packages/ui/src/components/EiPanel.vue | 108 ++--
packages/ui/src/components/EiSelect.vue | 26 +-
packages/ui/src/components/EiSwitch.vue | 78 +--
packages/ui/src/components/EiTextarea.vue | 26 +-
packages/ui/src/components/EiTree.vue | 147 +++---
12 files changed, 641 insertions(+), 642 deletions(-)
diff --git a/packages/ui/src/components/EiBorderToggle.vue b/packages/ui/src/components/EiBorderToggle.vue
index 54920527..7c453b92 100644
--- a/packages/ui/src/components/EiBorderToggle.vue
+++ b/packages/ui/src/components/EiBorderToggle.vue
@@ -86,7 +86,7 @@ function toggle(side: typeof SIDES[number]) {
-
diff --git a/packages/ui/src/components/EiButton.vue b/packages/ui/src/components/EiButton.vue
index 3a151916..b299600a 100644
--- a/packages/ui/src/components/EiButton.vue
+++ b/packages/ui/src/components/EiButton.vue
@@ -24,7 +24,7 @@ defineEmits<{
-
diff --git a/packages/ui/src/components/EiCheckbox.vue b/packages/ui/src/components/EiCheckbox.vue
index 7a74276f..0a5ab5ce 100644
--- a/packages/ui/src/components/EiCheckbox.vue
+++ b/packages/ui/src/components/EiCheckbox.vue
@@ -29,7 +29,7 @@ function onChange(event: Event) {
-
diff --git a/packages/ui/src/components/EiColorPicker.vue b/packages/ui/src/components/EiColorPicker.vue
index 84dc108d..084b41f9 100644
--- a/packages/ui/src/components/EiColorPicker.vue
+++ b/packages/ui/src/components/EiColorPicker.vue
@@ -559,275 +559,269 @@ watch(() => props.modelValue, () => {
-
diff --git a/packages/ui/src/components/EiFontPicker.vue b/packages/ui/src/components/EiFontPicker.vue
index af98d35e..8a531ea3 100644
--- a/packages/ui/src/components/EiFontPicker.vue
+++ b/packages/ui/src/components/EiFontPicker.vue
@@ -101,123 +101,123 @@ watch(isOpen, (open) => {
-
diff --git a/packages/ui/src/components/EiInput.vue b/packages/ui/src/components/EiInput.vue
index b0e81a0d..1e215e6d 100644
--- a/packages/ui/src/components/EiInput.vue
+++ b/packages/ui/src/components/EiInput.vue
@@ -50,7 +50,7 @@ function onCommit(event: Event) {
-
diff --git a/packages/ui/src/components/EiNumberInput.vue b/packages/ui/src/components/EiNumberInput.vue
index 3870ba85..dfa00467 100644
--- a/packages/ui/src/components/EiNumberInput.vue
+++ b/packages/ui/src/components/EiNumberInput.vue
@@ -156,7 +156,7 @@ function onBlur() {
-
diff --git a/packages/ui/src/components/EiPanel.vue b/packages/ui/src/components/EiPanel.vue
index 8a22a123..c509131e 100644
--- a/packages/ui/src/components/EiPanel.vue
+++ b/packages/ui/src/components/EiPanel.vue
@@ -44,7 +44,7 @@ const collapsed = ref(false)
-
diff --git a/packages/ui/src/components/EiSelect.vue b/packages/ui/src/components/EiSelect.vue
index 23e81a0c..c3a5e545 100644
--- a/packages/ui/src/components/EiSelect.vue
+++ b/packages/ui/src/components/EiSelect.vue
@@ -42,7 +42,7 @@ function onChange(event: Event) {
-
diff --git a/packages/ui/src/components/EiSwitch.vue b/packages/ui/src/components/EiSwitch.vue
index 67c477b9..176fe2ba 100644
--- a/packages/ui/src/components/EiSwitch.vue
+++ b/packages/ui/src/components/EiSwitch.vue
@@ -34,7 +34,7 @@ function onClick() {
-
diff --git a/packages/ui/src/components/EiTextarea.vue b/packages/ui/src/components/EiTextarea.vue
index 1d330202..4517dc2a 100644
--- a/packages/ui/src/components/EiTextarea.vue
+++ b/packages/ui/src/components/EiTextarea.vue
@@ -49,7 +49,7 @@ function onCommit(event: Event) {
-
diff --git a/packages/ui/src/components/EiTree.vue b/packages/ui/src/components/EiTree.vue
index 0f71987c..85f1ab36 100644
--- a/packages/ui/src/components/EiTree.vue
+++ b/packages/ui/src/components/EiTree.vue
@@ -128,87 +128,92 @@ function isExpanded(id: string): boolean {
-
From 128c6eea54f10fcef44d2859f5bbe3d6bf8445a5 Mon Sep 17 00:00:00 2001
From: "anthropic-code-agent[bot]" <242468646+Claude@users.noreply.github.com>
Date: Mon, 27 Apr 2026 13:00:51 +0000
Subject: [PATCH 2/3] Convert AI components CSS to SCSS
Agent-Logs-Url: https://github.com/hackycy/easyink/sessions/d376e8ab-348b-4aba-8cfb-c788e8c7ec32
Co-authored-by: hackycy <26972260+hackycy@users.noreply.github.com>
---
packages/ai/src/components/AIPanel.vue | 210 +++++-----
packages/ai/src/components/ChatInput.vue | 126 +++---
packages/ai/src/components/MessageBubble.vue | 225 ++++++-----
.../ai/src/components/SchemaJsonModal.vue | 101 ++---
.../ai/src/components/ServerManagerModal.vue | 377 ++++++++++--------
5 files changed, 544 insertions(+), 495 deletions(-)
diff --git a/packages/ai/src/components/AIPanel.vue b/packages/ai/src/components/AIPanel.vue
index 353ab599..63293652 100644
--- a/packages/ai/src/components/AIPanel.vue
+++ b/packages/ai/src/components/AIPanel.vue
@@ -558,7 +558,7 @@ watch(() => props.open, (open) => {
-
diff --git a/packages/ai/src/components/ChatInput.vue b/packages/ai/src/components/ChatInput.vue
index 41a6dee9..ec935736 100644
--- a/packages/ai/src/components/ChatInput.vue
+++ b/packages/ai/src/components/ChatInput.vue
@@ -82,7 +82,7 @@ defineExpose({ focus: () => textareaRef.value?.focus() })
-
diff --git a/packages/ai/src/components/MessageBubble.vue b/packages/ai/src/components/MessageBubble.vue
index 838c3415..da37f598 100644
--- a/packages/ai/src/components/MessageBubble.vue
+++ b/packages/ai/src/components/MessageBubble.vue
@@ -130,143 +130,148 @@ function handleCopy() {
-
diff --git a/packages/ai/src/components/SchemaJsonModal.vue b/packages/ai/src/components/SchemaJsonModal.vue
index 0e034d72..c6aff45d 100644
--- a/packages/ai/src/components/SchemaJsonModal.vue
+++ b/packages/ai/src/components/SchemaJsonModal.vue
@@ -53,7 +53,7 @@ function copy() {
-
diff --git a/packages/ai/src/components/ServerManagerModal.vue b/packages/ai/src/components/ServerManagerModal.vue
index 03118d93..dd835834 100644
--- a/packages/ai/src/components/ServerManagerModal.vue
+++ b/packages/ai/src/components/ServerManagerModal.vue
@@ -263,7 +263,7 @@ function normalizeServerConfig(config: Partial): Partial
-
From 83a2deb770f5f0badaac614215556631cb4a462d Mon Sep 17 00:00:00 2001
From: "anthropic-code-agent[bot]" <242468646+Claude@users.noreply.github.com>
Date: Mon, 27 Apr 2026 13:03:47 +0000
Subject: [PATCH 3/3] Convert Designer and Playground components CSS to SCSS
Agent-Logs-Url: https://github.com/hackycy/easyink/sessions/d376e8ab-348b-4aba-8cfb-c788e8c7ec32
Co-authored-by: hackycy <26972260+hackycy@users.noreply.github.com>
---
.../src/components/BindingSection.vue | 82 +++---
.../src/components/CanvasContextMenu.vue | 102 +++----
.../designer/src/components/CanvasRuler.vue | 30 +-
.../src/components/CanvasWorkspace.vue | 276 +++++++++---------
.../src/components/DataSourcePanel.vue | 114 ++++----
.../designer/src/components/DebugPanel.vue | 54 ++--
.../src/components/DeepEditDragHandle.vue | 8 +-
.../src/components/EasyInkDesigner.vue | 20 +-
.../src/components/EphemeralPanelHost.vue | 2 +-
.../designer/src/components/GridOverlay.vue | 2 +-
.../designer/src/components/GuideOverlay.vue | 66 ++---
.../designer/src/components/HistoryPanel.vue | 62 ++--
.../designer/src/components/MaterialPanel.vue | 160 +++++-----
.../designer/src/components/MinimapPanel.vue | 26 +-
.../src/components/PagePropertyEditor.vue | 2 +-
.../src/components/PropSchemaEditor.vue | 2 +-
.../src/components/PropertiesPanel.vue | 30 +-
.../src/components/SnapLineOverlay.vue | 36 +--
.../designer/src/components/StatusBar.vue | 44 +--
.../designer/src/components/StructureTree.vue | 2 +-
.../src/components/ToolbarManager.vue | 200 ++++++-------
packages/designer/src/components/TopBarB.vue | 194 ++++++------
.../src/components/WorkspaceWindow.vue | 202 ++++++-------
.../datasource/DataFieldTreeNode.vue | 136 ++++-----
playground/src/PreviewOverlay.vue | 18 +-
25 files changed, 931 insertions(+), 939 deletions(-)
diff --git a/packages/designer/src/components/BindingSection.vue b/packages/designer/src/components/BindingSection.vue
index 8b81067a..ae2733e8 100644
--- a/packages/designer/src/components/BindingSection.vue
+++ b/packages/designer/src/components/BindingSection.vue
@@ -75,56 +75,56 @@ function handleClear() {
-
diff --git a/packages/designer/src/components/CanvasContextMenu.vue b/packages/designer/src/components/CanvasContextMenu.vue
index 1ab8090f..02314c78 100644
--- a/packages/designer/src/components/CanvasContextMenu.vue
+++ b/packages/designer/src/components/CanvasContextMenu.vue
@@ -333,7 +333,7 @@ defineExpose({ onContextMenu })
-
diff --git a/packages/designer/src/components/CanvasRuler.vue b/packages/designer/src/components/CanvasRuler.vue
index b8382b63..4f2729ae 100644
--- a/packages/designer/src/components/CanvasRuler.vue
+++ b/packages/designer/src/components/CanvasRuler.vue
@@ -323,7 +323,7 @@ function handleRulerLeave() {
-
diff --git a/packages/designer/src/components/CanvasWorkspace.vue b/packages/designer/src/components/CanvasWorkspace.vue
index 4fa934e4..37a037f0 100644
--- a/packages/designer/src/components/CanvasWorkspace.vue
+++ b/packages/designer/src/components/CanvasWorkspace.vue
@@ -528,12 +528,19 @@ onUnmounted(() => {
-
diff --git a/packages/designer/src/components/DataSourcePanel.vue b/packages/designer/src/components/DataSourcePanel.vue
index d9bc0d5b..93090ec0 100644
--- a/packages/designer/src/components/DataSourcePanel.vue
+++ b/packages/designer/src/components/DataSourcePanel.vue
@@ -97,69 +97,69 @@ function childKey(source: DataSourceDescriptor, child: DataFieldNode): string {
-
diff --git a/packages/designer/src/components/DebugPanel.vue b/packages/designer/src/components/DebugPanel.vue
index 79d06994..32790448 100644
--- a/packages/designer/src/components/DebugPanel.vue
+++ b/packages/designer/src/components/DebugPanel.vue
@@ -28,36 +28,36 @@ const selectedCount = computed(() => store.selection.count)
-
diff --git a/packages/designer/src/components/DeepEditDragHandle.vue b/packages/designer/src/components/DeepEditDragHandle.vue
index 47030644..ff4ffcb4 100644
--- a/packages/designer/src/components/DeepEditDragHandle.vue
+++ b/packages/designer/src/components/DeepEditDragHandle.vue
@@ -52,7 +52,7 @@ function handlePointerDown(e: PointerEvent) {
-
diff --git a/packages/designer/src/components/EasyInkDesigner.vue b/packages/designer/src/components/EasyInkDesigner.vue
index 2c141978..eb999073 100644
--- a/packages/designer/src/components/EasyInkDesigner.vue
+++ b/packages/designer/src/components/EasyInkDesigner.vue
@@ -117,7 +117,7 @@ onBeforeUnmount(() => {
-
diff --git a/packages/designer/src/components/EphemeralPanelHost.vue b/packages/designer/src/components/EphemeralPanelHost.vue
index c0e7211c..ebabb37a 100644
--- a/packages/designer/src/components/EphemeralPanelHost.vue
+++ b/packages/designer/src/components/EphemeralPanelHost.vue
@@ -64,7 +64,7 @@ function handleClose() {
-
diff --git a/packages/designer/src/components/HistoryPanel.vue b/packages/designer/src/components/HistoryPanel.vue
index 9854a775..9250ce08 100644
--- a/packages/designer/src/components/HistoryPanel.vue
+++ b/packages/designer/src/components/HistoryPanel.vue
@@ -88,39 +88,39 @@ watchEffect((onCleanup) => {
-
diff --git a/packages/designer/src/components/MaterialPanel.vue b/packages/designer/src/components/MaterialPanel.vue
index 10695bcd..2dd28401 100644
--- a/packages/designer/src/components/MaterialPanel.vue
+++ b/packages/designer/src/components/MaterialPanel.vue
@@ -134,88 +134,88 @@ function handleDragStart(e: DragEvent, entry: MaterialCatalogEntry) {
-
diff --git a/packages/designer/src/components/MinimapPanel.vue b/packages/designer/src/components/MinimapPanel.vue
index fc2fff80..6e5d2173 100644
--- a/packages/designer/src/components/MinimapPanel.vue
+++ b/packages/designer/src/components/MinimapPanel.vue
@@ -34,24 +34,24 @@ const minimapHeight = computed(() => minimapWidth / pageRatio.value)
-
diff --git a/packages/designer/src/components/PagePropertyEditor.vue b/packages/designer/src/components/PagePropertyEditor.vue
index 5d26bde4..0e7bd944 100644
--- a/packages/designer/src/components/PagePropertyEditor.vue
+++ b/packages/designer/src/components/PagePropertyEditor.vue
@@ -104,7 +104,7 @@ function onCommit(val: unknown) {
-
diff --git a/packages/designer/src/components/SnapLineOverlay.vue b/packages/designer/src/components/SnapLineOverlay.vue
index 0b586df0..4ce4a5be 100644
--- a/packages/designer/src/components/SnapLineOverlay.vue
+++ b/packages/designer/src/components/SnapLineOverlay.vue
@@ -32,29 +32,29 @@ const yLines = computed(() =>
-
diff --git a/packages/designer/src/components/StatusBar.vue b/packages/designer/src/components/StatusBar.vue
index ac76915b..09876952 100644
--- a/packages/designer/src/components/StatusBar.vue
+++ b/packages/designer/src/components/StatusBar.vue
@@ -105,7 +105,7 @@ function statusTitle(prefix: string, value: string): string {
-
diff --git a/packages/designer/src/components/StructureTree.vue b/packages/designer/src/components/StructureTree.vue
index 09bca143..39096fc6 100644
--- a/packages/designer/src/components/StructureTree.vue
+++ b/packages/designer/src/components/StructureTree.vue
@@ -101,7 +101,7 @@ function handleSelect(node: TreeNode) {
-
diff --git a/packages/designer/src/components/TopBarB.vue b/packages/designer/src/components/TopBarB.vue
index 8b44c98d..b4abd6c7 100644
--- a/packages/designer/src/components/TopBarB.vue
+++ b/packages/designer/src/components/TopBarB.vue
@@ -810,7 +810,7 @@ function handleSnap() {
-
diff --git a/packages/designer/src/components/WorkspaceWindow.vue b/packages/designer/src/components/WorkspaceWindow.vue
index a5eb44ec..a8a7aadf 100644
--- a/packages/designer/src/components/WorkspaceWindow.vue
+++ b/packages/designer/src/components/WorkspaceWindow.vue
@@ -112,7 +112,7 @@ function onResizeStart(e: PointerEvent) {
-
diff --git a/packages/designer/src/components/datasource/DataFieldTreeNode.vue b/packages/designer/src/components/datasource/DataFieldTreeNode.vue
index 9b07c8c1..7cde5267 100644
--- a/packages/designer/src/components/datasource/DataFieldTreeNode.vue
+++ b/packages/designer/src/components/datasource/DataFieldTreeNode.vue
@@ -107,79 +107,81 @@ function onDragStart(e: DragEvent) {
-
diff --git a/playground/src/PreviewOverlay.vue b/playground/src/PreviewOverlay.vue
index 1dc8c3cc..79347a2a 100644
--- a/playground/src/PreviewOverlay.vue
+++ b/playground/src/PreviewOverlay.vue
@@ -221,14 +221,16 @@ async function handleExport() {
-