@sofidevo/astro-dynamic-header 5.0.0 → 5.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/package.json +1 -1
  2. package/src/Header.astro +11 -12
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sofidevo/astro-dynamic-header",
3
- "version": "5.0.0",
3
+ "version": "5.0.1",
4
4
  "description": "A dynamic Astro header component that switches between floating and fullscreen styles",
5
5
  "type": "module",
6
6
  "main": "./src/index.ts",
package/src/Header.astro CHANGED
@@ -78,12 +78,13 @@ export interface Props {
78
78
  * ```
79
79
  */
80
80
  classNames?: HeaderClassNames;
81
+ headerBg?: string;
82
+
81
83
  }
82
84
 
83
85
  const {
84
86
  headerType = "floating",
85
87
  preset = "auto",
86
-
87
88
  navigation = {},
88
89
  classNames = {},
89
90
  } = Astro.props;
@@ -142,15 +143,15 @@ const forcedClass = preset !== "auto" ? `header--force-${preset}` : "";
142
143
  >
143
144
  <header
144
145
  class:list={[
146
+ classNames.header,
145
147
  "header",
146
148
  `header--${headerType}`,
147
149
  forcedClass,
148
- classNames.header,
149
150
  ]}
150
151
  >
151
152
  <slot name="logo" />
152
153
 
153
- <div class:list={["nav-menu-wrapper", classNames.nav]}>
154
+ <div class:list={[classNames.nav, "nav-menu-wrapper"]}>
154
155
  <NavMenu
155
156
  menuItems={menuItems}
156
157
  homeUrl={homeUrl}
@@ -199,18 +200,16 @@ const forcedClass = preset !== "auto" ? `header--force-${preset}` : "";
199
200
 
200
201
  @layer components {
201
202
  .header {
202
- --bg-color: var(--l-bg, rgba(255, 255, 255, 0.9));
203
- --bg-color-opaque: var(--l-bg-opaque, rgb(255, 255, 255));
203
+ --bg-color: var(--l-bg);
204
+ --bg-color-opaque: var(--l-bg-opaque, rgba(255, 255, 255, 0.748));
204
205
  --text-color: var(--l-text, #1a1a1a);
205
206
  --accent-color: var(--l-accent, #3e1c71);
206
207
  --backdrop-blur: var(--l-blur, blur(20px));
207
-
208
208
  display: flex;
209
209
  align-items: center;
210
210
  width: 100%;
211
211
  justify-content: space-between;
212
212
  padding: 1em 2em;
213
- background-color: var(--bg-color);
214
213
  backdrop-filter: var(--backdrop-blur);
215
214
  -webkit-backdrop-filter: var(--backdrop-blur);
216
215
  color: var(--text-color);
@@ -227,7 +226,7 @@ const forcedClass = preset !== "auto" ? `header--force-${preset}` : "";
227
226
 
228
227
  /* Automatic dark mode detection via root class */
229
228
  :root.dark .header:not(.header--force-light):not(.header--force-dark) {
230
- --bg-color: var(--d-bg, #0d0d0dcc);
229
+ --bg-color: var(--d-bg, rgba(0, 0, 0, 0.823));
231
230
  --bg-color-opaque: var(--d-bg-opaque, #0d0d0d);
232
231
  --text-color: var(--d-text, #ffffff);
233
232
  --accent-color: var(--d-accent, #00ffff);
@@ -236,15 +235,15 @@ const forcedClass = preset !== "auto" ? `header--force-${preset}` : "";
236
235
 
237
236
  /* Forced themes: higher specificity than .header, no !important needed */
238
237
  .header.header--force-dark {
239
- --bg-color: var(--d-bg, #0d0d0dcc);
240
- --bg-color-opaque: var(--d-bg-opaque, #0d0d0d);
238
+ --bg-color: var(--d-bg, rgba(0, 0, 0, 0.823));
239
+ --bg-color-opaque: var(--d-bg-opaque, #000000d9);
241
240
  --text-color: var(--d-text, #ffffff);
242
241
  --accent-color: var(--d-accent, #00ffff);
243
242
  --backdrop-blur: var(--d-blur, blur(30px));
244
243
  }
245
244
 
246
245
  .header.header--force-light {
247
- --bg-color: var(--l-bg, rgba(255, 255, 255, 0.9));
246
+ --bg-color: var(--l-bg, rgba(255, 255, 255, 0.748));
248
247
  --bg-color-opaque: var(--l-bg-opaque, rgb(255, 255, 255));
249
248
  --text-color: var(--l-text, #1a1a1a);
250
249
  --accent-color: var(--l-accent, #3e1c71);
@@ -286,7 +285,7 @@ const forcedClass = preset !== "auto" ? `header--force-${preset}` : "";
286
285
 
287
286
  .header--fullscreen {
288
287
  border-radius: 0;
289
- padding: 1em 2em;
288
+ padding: 1em 0.6rem;
290
289
 
291
290
  @media (width < 768px) {
292
291
  max-width: 100%;