From 4923affa7722dfc751f1074348e6dad214fe0c08 Mon Sep 17 00:00:00 2001
From: Emile Bangma <github@emilebangma.com>
Date: Sun, 21 Sep 2025 17:14:03 +0000
Subject: [PATCH] fix(callouts)!: match callout DOM to Obsidian (#2104)

---
 package-lock.json                  |    4 ++--
 quartz/styles/callouts.scss        |   26 +++++++++++++++++---------
 quartz/plugins/transformers/ofm.ts |   11 +----------
 package.json                       |    2 +-
 4 files changed, 21 insertions(+), 22 deletions(-)

diff --git a/package-lock.json b/package-lock.json
index 63611ff..bd3e765 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,12 +1,12 @@
 {
   "name": "@jackyzha0/quartz",
-  "version": "4.5.1",
+  "version": "4.5.2",
   "lockfileVersion": 3,
   "requires": true,
   "packages": {
     "": {
       "name": "@jackyzha0/quartz",
-      "version": "4.5.1",
+      "version": "4.5.2",
       "license": "MIT",
       "dependencies": {
         "@clack/prompts": "^0.11.0",
diff --git a/package.json b/package.json
index 55bd1b2..363bb98 100644
--- a/package.json
+++ b/package.json
@@ -2,7 +2,7 @@
   "name": "@jackyzha0/quartz",
   "description": "🌱 publish your digital garden and notes as a website",
   "private": true,
-  "version": "4.5.1",
+  "version": "4.5.2",
   "type": "module",
   "author": "jackyzha0 <j.zhao2k19@gmail.com>",
   "license": "MIT",
diff --git a/quartz/plugins/transformers/ofm.ts b/quartz/plugins/transformers/ofm.ts
index 42428ae..7a523aa 100644
--- a/quartz/plugins/transformers/ofm.ts
+++ b/quartz/plugins/transformers/ofm.ts
@@ -488,16 +488,7 @@
                     {
                       data: { hProperties: { className: ["callout-content"] }, hName: "div" },
                       type: "blockquote",
-                      children: [
-                        {
-                          data: {
-                            hProperties: { className: ["callout-content-inner"] },
-                            hName: "div",
-                          },
-                          type: "blockquote",
-                          children: [...calloutContent],
-                        },
-                      ],
+                      children: [...calloutContent],
                     },
                   ]
                 }
diff --git a/quartz/styles/callouts.scss b/quartz/styles/callouts.scss
index 02921ae..745defc 100644
--- a/quartz/styles/callouts.scss
+++ b/quartz/styles/callouts.scss
@@ -11,14 +11,11 @@
 
   & > .callout-content {
     display: grid;
-    transition: grid-template-rows 0.3s ease;
+    transition: grid-template-rows 0.1s cubic-bezier(0.02, 0.01, 0.47, 1);
+    overflow: hidden;
 
-    & > .callout-content-inner {
-      overflow: hidden;
-
-      & > :first-child {
-        margin-top: 0;
-      }
+    & > :first-child {
+      margin-top: 0;
     }
   }
 
@@ -121,8 +118,19 @@
     --callout-icon: var(--callout-icon-quote);
   }
 
-  &.is-collapsed > .callout-title > .fold-callout-icon {
-    transform: rotateZ(-90deg);
+  &.is-collapsed {
+    & > .callout-title > .fold-callout-icon {
+      transform: rotateZ(-90deg);
+    }
+
+    .callout-content > :first-child {
+      transition:
+        height 0.1s cubic-bezier(0.02, 0.01, 0.47, 1),
+        margin 0.1s cubic-bezier(0.02, 0.01, 0.47, 1);
+      overflow-y: clip;
+      height: 0;
+      margin-top: -1rem;
+    }
   }
 }
 

--
Gitblit v1.10.0