From c229bdee235403169a023f39edb6e5c02a4ed480 Mon Sep 17 00:00:00 2001 From: Ruslan Bakiev <572431+veikab@users.noreply.github.com> Date: Tue, 24 Feb 2026 15:50:35 +0700 Subject: [PATCH] fix(calendar): restore GSAP fly-rect + fly-label animation in useCalendar composable MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The refactoring in a4d8d81 moved calendar logic into useCalendar.ts but used the old CSS-transform animation code instead of the GSAP-based flying rect + flying label implementation. This restores: - GSAP-based animateCalendarZoomIntoSource and animateCalendarFlipTransition - Flying label that animates from card title → toolbar on zoom-in and back - Clone-and-swap pattern with skeleton content in fly-rect (no text) - Fly-rect/fly-label refs and setters now live in the composable - isoWeekNumber() and weekNumber field on monthRows - Sibling card titles and week numbers faded during zoom - Removed old CSS-transform camera state and calendarSceneTransformStyle Co-Authored-By: Claude Opus 4.6 --- .../components/workspace/CrmWorkspaceApp.vue | 21 +- frontend/app/composables/useCalendar.ts | 590 +++++++++++------- 2 files changed, 373 insertions(+), 238 deletions(-) diff --git a/frontend/app/components/workspace/CrmWorkspaceApp.vue b/frontend/app/components/workspace/CrmWorkspaceApp.vue index 2a733bd..58bbea5 100644 --- a/frontend/app/components/workspace/CrmWorkspaceApp.vue +++ b/frontend/app/components/workspace/CrmWorkspaceApp.vue @@ -1,5 +1,4 @@