diff --git a/src/client/theme-default/components/VPBadge.vue b/src/client/theme-default/components/VPBadge.vue
index f1a684ee..3c0e5a15 100644
--- a/src/client/theme-default/components/VPBadge.vue
+++ b/src/client/theme-default/components/VPBadge.vue
@@ -1,9 +1,8 @@
@@ -66,12 +65,30 @@ withDefaults(defineProps
(), {
background-color: var(--vp-badge-info-bg);
}
+.VPBadge.note {
+ border-color: var(--vp-badge-note-border);
+ color: var(--vp-badge-note-text);
+ background-color: var(--vp-badge-note-bg);
+}
+
.VPBadge.tip {
border-color: var(--vp-badge-tip-border);
color: var(--vp-badge-tip-text);
background-color: var(--vp-badge-tip-bg);
}
+.VPBadge.important {
+ border-color: var(--vp-badge-important-border);
+ color: var(--vp-badge-important-text);
+ background-color: var(--vp-badge-important-bg);
+}
+
+.VPBadge.caution {
+ border-color: var(--vp-badge-caution-border);
+ color: var(--vp-badge-caution-text);
+ background-color: var(--vp-badge-caution-bg);
+}
+
.VPBadge.warning {
border-color: var(--vp-badge-warning-border);
color: var(--vp-badge-warning-text);
diff --git a/src/client/theme-default/styles/vars.css b/src/client/theme-default/styles/vars.css
index 7c618c88..a6c47551 100644
--- a/src/client/theme-default/styles/vars.css
+++ b/src/client/theme-default/styles/vars.css
@@ -69,6 +69,11 @@
--vp-c-yellow-3: #9f6a00;
--vp-c-yellow-soft: rgba(234, 179, 8, 0.14);
+ --vp-c-orange-1: #9a4224;
+ --vp-c-orange-2: #b95a00;
+ --vp-c-orange-3: #c16200;
+ --vp-c-orange-soft: rgba(249, 115, 22, 0.14);
+
--vp-c-red-1: #b8272c;
--vp-c-red-2: #d5393e;
--vp-c-red-3: #e0575b;
@@ -103,6 +108,11 @@
--vp-c-yellow-3: #a46a0a;
--vp-c-yellow-soft: rgba(234, 179, 8, 0.16);
+ --vp-c-orange-1: #fb8c00;
+ --vp-c-orange-2: #e46a02;
+ --vp-c-orange-3: #b45309;
+ --vp-c-orange-soft: rgba(249, 115, 22, 0.16);
+
--vp-c-red-1: #f66f81;
--vp-c-red-2: #f14158;
--vp-c-red-3: #b62a3c;
@@ -256,6 +266,18 @@
--vp-c-caution-soft: var(--vp-c-red-soft);
}
+:root:where(:has(.vp-graded-containers)) {
+ --vp-c-warning-1: var(--vp-c-orange-1);
+ --vp-c-warning-2: var(--vp-c-orange-2);
+ --vp-c-warning-3: var(--vp-c-orange-3);
+ --vp-c-warning-soft: var(--vp-c-orange-soft);
+
+ --vp-c-caution-1: var(--vp-c-yellow-1);
+ --vp-c-caution-2: var(--vp-c-yellow-2);
+ --vp-c-caution-3: var(--vp-c-yellow-3);
+ --vp-c-caution-soft: var(--vp-c-yellow-soft);
+}
+
/**
* Typography
* -------------------------------------------------------------------------- */
@@ -438,6 +460,11 @@
--vp-custom-block-important-bg: var(--vp-c-important-soft);
--vp-custom-block-important-code-bg: var(--vp-c-important-soft);
+ --vp-custom-block-caution-border: transparent;
+ --vp-custom-block-caution-text: var(--vp-c-text-1);
+ --vp-custom-block-caution-bg: var(--vp-c-caution-soft);
+ --vp-custom-block-caution-code-bg: var(--vp-c-caution-soft);
+
--vp-custom-block-warning-border: transparent;
--vp-custom-block-warning-text: var(--vp-c-text-1);
--vp-custom-block-warning-bg: var(--vp-c-warning-soft);
@@ -448,11 +475,6 @@
--vp-custom-block-danger-bg: var(--vp-c-danger-soft);
--vp-custom-block-danger-code-bg: var(--vp-c-danger-soft);
- --vp-custom-block-caution-border: transparent;
- --vp-custom-block-caution-text: var(--vp-c-text-1);
- --vp-custom-block-caution-bg: var(--vp-c-caution-soft);
- --vp-custom-block-caution-code-bg: var(--vp-c-caution-soft);
-
--vp-custom-block-details-border: var(--vp-custom-block-info-border);
--vp-custom-block-details-text: var(--vp-custom-block-info-text);
--vp-custom-block-details-bg: var(--vp-custom-block-info-bg);
@@ -535,10 +557,22 @@
--vp-badge-info-text: var(--vp-c-text-2);
--vp-badge-info-bg: var(--vp-c-default-soft);
+ --vp-badge-note-border: transparent;
+ --vp-badge-note-text: var(--vp-c-note-1);
+ --vp-badge-note-bg: var(--vp-c-note-soft);
+
--vp-badge-tip-border: transparent;
--vp-badge-tip-text: var(--vp-c-tip-1);
--vp-badge-tip-bg: var(--vp-c-tip-soft);
+ --vp-badge-important-border: transparent;
+ --vp-badge-important-text: var(--vp-c-important-1);
+ --vp-badge-important-bg: var(--vp-c-important-soft);
+
+ --vp-badge-caution-border: transparent;
+ --vp-badge-caution-text: var(--vp-c-caution-1);
+ --vp-badge-caution-bg: var(--vp-c-caution-soft);
+
--vp-badge-warning-border: transparent;
--vp-badge-warning-text: var(--vp-c-warning-1);
--vp-badge-warning-bg: var(--vp-c-warning-soft);
diff --git a/types/default-theme.d.ts b/types/default-theme.d.ts
index a8266bd3..1fb1d7e4 100644
--- a/types/default-theme.d.ts
+++ b/types/default-theme.d.ts
@@ -135,6 +135,16 @@ export namespace DefaultTheme {
*/
externalLinkIcon?: boolean
+ /**
+ * Color custom containers, GitHub-flavored alerts, and badges on a
+ * graded severity scale (danger red > warning orange > caution yellow)
+ * instead of matching GitHub's alert colors, where caution is red and
+ * warning is yellow.
+ *
+ * @default false
+ */
+ gradedContainers?: boolean
+
/**
* Customize text of 404 page.
*/