@eventcatalog/core 3.0.0 → 3.2.0

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 (109) hide show
  1. package/dist/analytics/analytics.cjs +1 -1
  2. package/dist/analytics/analytics.js +2 -2
  3. package/dist/analytics/log-build.cjs +1 -1
  4. package/dist/analytics/log-build.js +3 -3
  5. package/dist/{chunk-VO5WYA44.js → chunk-AA47DJ43.js} +1 -1
  6. package/dist/{chunk-EKGR533N.js → chunk-GGRXP5WM.js} +1 -1
  7. package/dist/{chunk-E5Q7TZYT.js → chunk-L3QRQT7U.js} +1 -1
  8. package/dist/{chunk-BYP43AAT.js → chunk-RWYEP5SD.js} +1 -1
  9. package/dist/{chunk-KF5PARQK.js → chunk-VPQCMMRM.js} +1 -1
  10. package/dist/constants.cjs +1 -1
  11. package/dist/constants.js +1 -1
  12. package/dist/eventcatalog.cjs +1 -1
  13. package/dist/eventcatalog.config.d.cts +7 -0
  14. package/dist/eventcatalog.config.d.ts +7 -0
  15. package/dist/eventcatalog.js +5 -5
  16. package/dist/generate.cjs +1 -1
  17. package/dist/generate.js +3 -3
  18. package/dist/utils/cli-logger.cjs +1 -1
  19. package/dist/utils/cli-logger.js +2 -2
  20. package/eventcatalog/src/components/ChatPanel/ChatPanel.tsx +520 -247
  21. package/eventcatalog/src/components/ChatPanel/ChatPanelButton.tsx +3 -3
  22. package/eventcatalog/src/components/Checkbox.astro +7 -4
  23. package/eventcatalog/src/components/CopyAsMarkdown.tsx +15 -15
  24. package/eventcatalog/src/components/EnvironmentDropdown.tsx +15 -7
  25. package/eventcatalog/src/components/FavoriteButton.tsx +1 -1
  26. package/eventcatalog/src/components/Grids/DomainGrid.tsx +72 -60
  27. package/eventcatalog/src/components/Grids/MessageGrid.tsx +68 -48
  28. package/eventcatalog/src/components/Header.astro +15 -10
  29. package/eventcatalog/src/components/Lists/OwnersList.tsx +17 -10
  30. package/eventcatalog/src/components/Lists/PillListFlat.styles.css +12 -0
  31. package/eventcatalog/src/components/Lists/PillListFlat.tsx +15 -15
  32. package/eventcatalog/src/components/Lists/VersionList.astro +15 -5
  33. package/eventcatalog/src/components/MDX/Accordion/Accordion.tsx +3 -3
  34. package/eventcatalog/src/components/MDX/Admonition.tsx +49 -9
  35. package/eventcatalog/src/components/MDX/Attachments.astro +15 -11
  36. package/eventcatalog/src/components/MDX/ChannelInformation/ChannelInformation.tsx +29 -15
  37. package/eventcatalog/src/components/MDX/EntityPropertiesTable/EntityPropertiesTable.astro +20 -13
  38. package/eventcatalog/src/components/MDX/Link/Link.astro +1 -1
  39. package/eventcatalog/src/components/MDX/MessageTable/MessageTable.client.tsx +50 -29
  40. package/eventcatalog/src/components/MDX/NodeGraph/NodeGraph.tsx +14 -12
  41. package/eventcatalog/src/components/MDX/NodeGraph/StepWalkthrough.tsx +4 -4
  42. package/eventcatalog/src/components/MDX/NodeGraph/StudioModal.tsx +4 -4
  43. package/eventcatalog/src/components/MDX/NodeGraph/VisualiserSearch.tsx +2 -2
  44. package/eventcatalog/src/components/MDX/ResourceGroupTable/ResourceGroupTable.client.tsx +54 -33
  45. package/eventcatalog/src/components/MDX/ResourceLink/ResourceLink.astro +1 -1
  46. package/eventcatalog/src/components/MDX/Steps/Step.astro +2 -2
  47. package/eventcatalog/src/components/MDX/Steps/Steps.astro +3 -3
  48. package/eventcatalog/src/components/MDX/Tabs/Tabs.astro +13 -9
  49. package/eventcatalog/src/components/MDX/Tiles/Tile.astro +25 -13
  50. package/eventcatalog/src/components/MDX/Tiles/Tiles.astro +1 -1
  51. package/eventcatalog/src/components/SchemaExplorer/ApiAccessSection.tsx +3 -3
  52. package/eventcatalog/src/components/SchemaExplorer/ApiContentViewer.tsx +3 -3
  53. package/eventcatalog/src/components/SchemaExplorer/AvroSchemaViewer.tsx +29 -25
  54. package/eventcatalog/src/components/SchemaExplorer/DiffViewer.tsx +3 -3
  55. package/eventcatalog/src/components/SchemaExplorer/JSONSchemaViewer.tsx +61 -42
  56. package/eventcatalog/src/components/SchemaExplorer/OwnersSection.tsx +13 -9
  57. package/eventcatalog/src/components/SchemaExplorer/Pagination.tsx +6 -4
  58. package/eventcatalog/src/components/SchemaExplorer/ProducersConsumersSection.tsx +17 -13
  59. package/eventcatalog/src/components/SchemaExplorer/SchemaContentViewer.tsx +35 -8
  60. package/eventcatalog/src/components/SchemaExplorer/SchemaDetailsHeader.tsx +33 -21
  61. package/eventcatalog/src/components/SchemaExplorer/SchemaDetailsPanel.tsx +1 -1
  62. package/eventcatalog/src/components/SchemaExplorer/SchemaExplorer.tsx +41 -33
  63. package/eventcatalog/src/components/SchemaExplorer/SchemaListItem.tsx +19 -7
  64. package/eventcatalog/src/components/SchemaExplorer/SchemaViewerModal.tsx +8 -8
  65. package/eventcatalog/src/components/Search/Search.astro +3 -3
  66. package/eventcatalog/src/components/Search/SearchModal.tsx +65 -36
  67. package/eventcatalog/src/components/SideNav/NestedSideBar/SearchBar.tsx +31 -21
  68. package/eventcatalog/src/components/SideNav/NestedSideBar/index.tsx +92 -59
  69. package/eventcatalog/src/components/Tables/Table.tsx +25 -24
  70. package/eventcatalog/src/components/Tables/columns/ContainersTableColumns.tsx +22 -16
  71. package/eventcatalog/src/components/Tables/columns/DomainTableColumns.tsx +14 -11
  72. package/eventcatalog/src/components/Tables/columns/FlowTableColumns.tsx +6 -6
  73. package/eventcatalog/src/components/Tables/columns/MessageTableColumns.tsx +22 -16
  74. package/eventcatalog/src/components/Tables/columns/ServiceTableColumns.tsx +22 -16
  75. package/eventcatalog/src/components/Tables/columns/SharedColumns.tsx +4 -4
  76. package/eventcatalog/src/components/Tables/columns/TeamsTableColumns.tsx +21 -13
  77. package/eventcatalog/src/components/Tables/columns/UserTableColumns.tsx +30 -19
  78. package/eventcatalog/src/components/ThemeToggle.tsx +18 -0
  79. package/eventcatalog/src/enterprise/ai/chat-api.ts +24 -3
  80. package/eventcatalog/src/enterprise/custom-documentation/components/CustomDocsNav/components/NestedItem.tsx +15 -7
  81. package/eventcatalog/src/enterprise/custom-documentation/components/CustomDocsNav/components/NoResultsFound.tsx +2 -2
  82. package/eventcatalog/src/enterprise/custom-documentation/components/CustomDocsNav/index.tsx +19 -15
  83. package/eventcatalog/src/enterprise/custom-documentation/pages/docs/custom/index.astro +50 -17
  84. package/eventcatalog/src/layouts/DirectoryLayout.astro +11 -6
  85. package/eventcatalog/src/layouts/DiscoverLayout.astro +13 -8
  86. package/eventcatalog/src/layouts/Footer.astro +6 -6
  87. package/eventcatalog/src/layouts/VerticalSideBarLayout.astro +62 -14
  88. package/eventcatalog/src/pages/_index.astro +135 -179
  89. package/eventcatalog/src/pages/architecture/[type]/[id]/[version]/index.astro +2 -2
  90. package/eventcatalog/src/pages/docs/[type]/[id]/[version]/graphql/[filename].astro +4 -4
  91. package/eventcatalog/src/pages/docs/[type]/[id]/[version]/index.astro +77 -63
  92. package/eventcatalog/src/pages/docs/[type]/[id]/language/[dictionaryId]/index.astro +23 -24
  93. package/eventcatalog/src/pages/docs/[type]/[id]/language/index.astro +66 -50
  94. package/eventcatalog/src/pages/docs/custom/index.astro +2 -2
  95. package/eventcatalog/src/pages/docs/teams/[id]/index.astro +25 -21
  96. package/eventcatalog/src/pages/docs/users/[id]/index.astro +25 -21
  97. package/eventcatalog/src/pages/schemas/explorer/index.astro +1 -1
  98. package/eventcatalog/src/pages/studio.astro +59 -31
  99. package/eventcatalog/src/remark-plugins/directives.ts +6 -6
  100. package/eventcatalog/src/remark-plugins/mermaid.ts +2 -2
  101. package/eventcatalog/src/stores/theme-store.ts +93 -0
  102. package/eventcatalog/src/styles/theme.css +255 -0
  103. package/eventcatalog/src/styles/themes/forest.css +230 -0
  104. package/eventcatalog/src/styles/themes/ocean.css +235 -0
  105. package/eventcatalog/src/styles/themes/sapphire.css +230 -0
  106. package/eventcatalog/src/styles/themes/sunset.css +230 -0
  107. package/eventcatalog/src/utils/feature.ts +4 -0
  108. package/eventcatalog/tailwind.config.mjs +6 -3
  109. package/package.json +7 -6
@@ -107,10 +107,10 @@ const tabs = [
107
107
  ---
108
108
 
109
109
  <VerticalSideBarLayout title={`Explore | ${title}`} showNestedSideBar={false}>
110
- <main class="ml-0">
110
+ <main class="ml-0 bg-[rgb(var(--ec-page-bg))] min-h-content">
111
111
  <div id="discover-collection-tabs">
112
112
  <div class="hidden sm:block">
113
- <div class="border-b border-gray-200">
113
+ <div class="border-b border-[rgb(var(--ec-page-border))]">
114
114
  <nav class="flex space-x-8 -mb-0.5 pl-6" aria-label="Tabs">
115
115
  {
116
116
  tabs
@@ -118,11 +118,16 @@ const tabs = [
118
118
  .map((tab) => (
119
119
  <a
120
120
  href={tab.href}
121
- class={` text-black group inline-flex items-center py-4 px-1 text-sm font-light ${tab.isActive ? `border-${tab.activeColor}-500 border-b-[2px] text-${tab.activeColor}-500` : 'opacity-80'} ${!tab.enabled ? 'disabled' : ''}`}
121
+ class:list={[
122
+ 'group inline-flex items-center py-4 px-1 text-sm font-light text-[rgb(var(--ec-page-text))]',
123
+ tab.isActive && 'border-b-[2px] border-[rgb(var(--ec-accent))] text-[rgb(var(--ec-accent))]',
124
+ !tab.isActive && 'opacity-70 hover:opacity-100',
125
+ !tab.enabled && 'disabled',
126
+ ]}
122
127
  aria-current="page"
123
128
  >
124
129
  <tab.icon
125
- className={`w-6 h-6 -ml-0.5 mr-2 ${tab.isActive ? `text-${tab.activeColor}-500` : 'text-gray-500'}`}
130
+ className={`w-6 h-6 -ml-0.5 mr-2 ${tab.isActive ? 'text-[rgb(var(--ec-accent))]' : 'text-[rgb(var(--ec-icon-color))]'}`}
126
131
  />
127
132
  <span>{tab.label}</span>
128
133
  </a>
@@ -138,14 +143,14 @@ const tabs = [
138
143
  <div>
139
144
  <div class="sm:flex sm:items-end py-4 pb-4" id="discover-title">
140
145
  <div class="sm:flex-auto space-y-2">
141
- <h1 class="text-4xl font-semibold text-gray-900 capitalize">{title}</h1>
142
- <p class="text-md text-gray-700">{subtitle}</p>
146
+ <h1 class="text-4xl font-semibold text-[rgb(var(--ec-page-text))] capitalize">{title}</h1>
147
+ <p class="text-md text-[rgb(var(--ec-page-text-muted))]">{subtitle}</p>
143
148
  </div>
144
149
  <div class="flex gap-4">
145
- <div class="p-4 border border-gray-200 rounded-md">
150
+ <div class="p-4 border border-[rgb(var(--ec-page-border))] rounded-md bg-[rgb(var(--ec-card-bg,var(--ec-page-bg)))]">
146
151
  <Checkbox id={checkboxLatestId} name={checkboxLatestId} label="Show latest version only" checked />
147
152
  </div>
148
- <div class="p-4 border border-gray-200 rounded-md">
153
+ <div class="p-4 border border-[rgb(var(--ec-page-border))] rounded-md bg-[rgb(var(--ec-card-bg,var(--ec-page-bg)))]">
149
154
  <Checkbox id={checkboxDraftsId} name={checkboxDraftsId} label="Show drafts only" />
150
155
  </div>
151
156
  </div>
@@ -4,14 +4,14 @@ import { showEventCatalogBranding } from '@utils/feature';
4
4
  const { className } = Astro.props;
5
5
  ---
6
6
 
7
- <footer class={`relative py-4 space-y-8 border-t border-gray-300 ${className}`}>
7
+ <footer class={`relative py-4 space-y-8 border-t border-[rgb(var(--ec-page-border))] ${className}`}>
8
8
  {
9
9
  showEventCatalogBranding() && (
10
- <div class="flex justify-between items-center py-8 text-gray-500 text-sm font-light">
10
+ <div class="flex justify-between items-center py-8 text-[rgb(var(--ec-page-text-muted))] text-sm font-light">
11
11
  <div class="flex space-x-5">
12
12
  <a href="https://github.com/event-catalog/eventcatalog" target="_blank" aria-label="View EventCatalog on GitHub">
13
13
  <svg
14
- class="w-5 h-5 bg-gray-400 hover:bg-primary dark:hover:bg-gray-400"
14
+ class="w-5 h-5 bg-[rgb(var(--ec-icon-color))] hover:bg-[rgb(var(--ec-accent))]"
15
15
  style={`mask-image: url("${buildUrl('/icons/github.svg', true)}"); mask-repeat: no-repeat; mask-position: center center;`}
16
16
  aria-hidden="true"
17
17
  />
@@ -19,7 +19,7 @@ const { className } = Astro.props;
19
19
  <a href="https://x.com/event_catalog" target="_blank" aria-label="Follow EventCatalog on X (Twitter)">
20
20
  <span class="sr-only">X (Twitter)</span>
21
21
  <svg
22
- class="w-5 h-5 bg-gray-400 hover:bg-primary dark:hover:bg-gray-400"
22
+ class="w-5 h-5 bg-[rgb(var(--ec-icon-color))] hover:bg-[rgb(var(--ec-accent))]"
23
23
  style={`mask-image: url("${buildUrl('/icons/x-twitter.svg', true)}"); mask-repeat: no-repeat; mask-position: center center;`}
24
24
  aria-hidden="true"
25
25
  />
@@ -27,7 +27,7 @@ const { className } = Astro.props;
27
27
  <a href="https://www.youtube.com/@event-catalog" target="_blank" aria-label="Watch EventCatalog on YouTube">
28
28
  <span class="sr-only">YouTube</span>
29
29
  <svg
30
- class="w-5 h-5 bg-gray-400 hover:bg-primary dark:hover:bg-gray-400"
30
+ class="w-5 h-5 bg-[rgb(var(--ec-icon-color))] hover:bg-[rgb(var(--ec-accent))]"
31
31
  style={`mask-image: url("${buildUrl('/icons/youtube.svg', true)}"); mask-repeat: no-repeat; mask-position: center center;`}
32
32
  aria-hidden="true"
33
33
  />
@@ -35,7 +35,7 @@ const { className } = Astro.props;
35
35
  </div>
36
36
  <a
37
37
  target="_blank"
38
- class="hover:text-primary hover:underline text-gray-400 font-light not-prose"
38
+ class="hover:text-[rgb(var(--ec-accent))] hover:underline text-[rgb(var(--ec-icon-color))] font-light not-prose"
39
39
  href="https://eventcatalog.dev"
40
40
  >
41
41
  Powered by EventCatalog
@@ -27,6 +27,18 @@ import '@fontsource/inter';
27
27
  import '@fontsource/inter/400.css'; // Specify weight
28
28
  import '@fontsource/inter/700.css'; // Specify weight
29
29
 
30
+ // Theme CSS variables (must load before user styles)
31
+ import '../styles/theme.css';
32
+
33
+ // Theme files - imported so they're available, applied via data-catalog-theme attribute
34
+ import '../styles/themes/ocean.css';
35
+ import '../styles/themes/sapphire.css';
36
+ import '../styles/themes/sunset.css';
37
+ import '../styles/themes/forest.css';
38
+
39
+ // Get configured theme (default, ocean, etc.)
40
+ const catalogTheme = config.theme || 'default';
41
+
30
42
  import { ClientRouter } from 'astro:transitions';
31
43
 
32
44
  import { getCommands } from '@utils/collections/commands';
@@ -39,7 +51,7 @@ import { buildUrl } from '@utils/url-builder';
39
51
  import { getQueries } from '@utils/collections/queries';
40
52
  import { hasLandingPageForDocs } from '@utils/pages';
41
53
 
42
- import { isEventCatalogUpgradeEnabled, isEmbedEnabled } from '@utils/feature';
54
+ import { isEventCatalogUpgradeEnabled, isEmbedEnabled, isCustomStylesEnabled } from '@utils/feature';
43
55
 
44
56
  const catalogHasDefaultLandingPageForDocs = await hasLandingPageForDocs();
45
57
  const customDocs = await getCollection('customPages');
@@ -63,9 +75,11 @@ if (!catalogHasDefaultLandingPageForDocs) {
63
75
  }
64
76
 
65
77
  // Try and load any custom styles if they exist
66
- try {
67
- await import('../../eventcatalog.styles.css');
68
- } catch (error) {}
78
+ if (isCustomStylesEnabled()) {
79
+ try {
80
+ await import('../../eventcatalog.styles.css');
81
+ } catch (error) {}
82
+ }
69
83
 
70
84
  const currentPath = Astro.url.pathname;
71
85
 
@@ -173,8 +187,35 @@ const canPageBeEmbedded = isEmbedEnabled();
173
187
  ---
174
188
 
175
189
  <!doctype html>
176
- <html lang="en">
190
+ <html lang="en" data-catalog-theme={catalogTheme}>
177
191
  <head>
192
+ <!-- Inline script to prevent flash of wrong theme -->
193
+ <script is:inline define:vars={{ catalogTheme }}>
194
+ (function () {
195
+ function getSystemTheme() {
196
+ if (window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches) {
197
+ return 'dark';
198
+ }
199
+ return 'light';
200
+ }
201
+
202
+ function applyTheme() {
203
+ // Check localStorage first, fall back to system preference
204
+ const stored = localStorage.getItem('eventcatalog-theme');
205
+ const theme = stored === 'light' || stored === 'dark' ? stored : getSystemTheme();
206
+ document.documentElement.setAttribute('data-theme', theme);
207
+ // Also ensure catalog theme is set (for page transitions)
208
+ document.documentElement.setAttribute('data-catalog-theme', catalogTheme);
209
+ }
210
+
211
+ // Apply on initial load
212
+ applyTheme();
213
+
214
+ // Apply after Astro page transitions
215
+ document.addEventListener('astro:after-swap', applyTheme);
216
+ document.addEventListener('astro:page-load', applyTheme);
217
+ })();
218
+ </script>
178
219
  <SEO title={`EventCatalog | ${title}`} description={description} ogTitle={title} />
179
220
  <style is:global>
180
221
  .sidebar-transition {
@@ -233,7 +274,7 @@ const canPageBeEmbedded = isEmbedEnabled();
233
274
  <div class="flex">
234
275
  <aside class="flex" id="eventcatalog-vertical-nav">
235
276
  <div
236
- class="fixed flex flex-col items-center w-14 h-screen py-3 bg-white bg-gradient-to-b from-white to-gray-100 border-r border-gray-200 z-20 shadow-md justify-between"
277
+ class="fixed flex flex-col items-center w-14 h-screen py-3 bg-[rgb(var(--ec-sidebar-bg))] bg-gradient-to-b from-[rgb(var(--ec-sidebar-bg))] to-[rgb(var(--ec-sidebar-bg-gradient))] border-r border-[rgb(var(--ec-sidebar-border))] z-20 shadow-md justify-between"
237
278
  >
238
279
  <nav class="flex flex-col h-[calc(100vh-70px)] justify-between">
239
280
  <div class="flex flex-col items-center flex-1 space-y-6">
@@ -246,7 +287,9 @@ const canPageBeEmbedded = isEmbedEnabled();
246
287
  href={item.href}
247
288
  aria-label={item.label}
248
289
  class={`p-1.5 inline-block transition-colors duration-200 rounded-lg ${
249
- item.current ? 'text-white bg-gray-900' : 'hover:bg-gray-800 hover:text-white text-gray-700'
290
+ item.current
291
+ ? 'text-[rgb(var(--ec-sidebar-active-text))] bg-[rgb(var(--ec-sidebar-active-bg))]'
292
+ : 'hover:bg-[rgb(var(--ec-sidebar-hover-bg))] hover:text-[rgb(var(--ec-sidebar-active-text))] text-[rgb(var(--ec-sidebar-text))]'
250
293
  }`}
251
294
  >
252
295
  <div class="has-tooltip">
@@ -263,7 +306,7 @@ const canPageBeEmbedded = isEmbedEnabled();
263
306
  })
264
307
  }
265
308
 
266
- <hr class="w-8 border-t border-gray-200" />
309
+ <hr class="w-8 border-t border-[rgb(var(--ec-sidebar-border))]" />
267
310
 
268
311
  {
269
312
  studioNavigationItem.length > 0 && (
@@ -272,7 +315,7 @@ const canPageBeEmbedded = isEmbedEnabled();
272
315
  data-role="nav-item"
273
316
  href={studioNavigationItem[0].href}
274
317
  aria-label={studioNavigationItem[0].label}
275
- class={`p-1.5 inline-block pt-1 pb-1 mt-0 mb-0 transition-colors duration-200 rounded-lg relative ${studioNavigationItem[0].current ? 'text-white bg-gray-900' : 'hover:bg-gray-800 hover:text-white text-gray-700'}`}
318
+ class={`p-1.5 inline-block pt-1 pb-1 mt-0 mb-0 transition-colors duration-200 rounded-lg relative ${studioNavigationItem[0].current ? 'text-[rgb(var(--ec-sidebar-active-text))] bg-[rgb(var(--ec-sidebar-active-bg))]' : 'hover:bg-[rgb(var(--ec-sidebar-hover-bg))] hover:text-[rgb(var(--ec-sidebar-active-text))] text-[rgb(var(--ec-sidebar-text))]'}`}
276
319
  >
277
320
  <div class="has-tooltip">
278
321
  <span
@@ -287,7 +330,7 @@ const canPageBeEmbedded = isEmbedEnabled();
287
330
  )
288
331
  }
289
332
 
290
- {studioNavigationItem.length > 0 && <hr class="w-8 border-t border-gray-200" />}
333
+ {studioNavigationItem.length > 0 && <hr class="w-8 border-t border-[rgb(var(--ec-sidebar-border))]" />}
291
334
 
292
335
  {
293
336
  premiumFeatures.map((item) => (
@@ -297,7 +340,9 @@ const canPageBeEmbedded = isEmbedEnabled();
297
340
  href={item.href}
298
341
  aria-label={item.label}
299
342
  class={`p-1.5 inline-block transition-colors duration-200 rounded-lg mb-8 relative ${
300
- item.current ? 'text-white bg-gray-900' : 'hover:bg-gray-800 hover:text-white text-gray-700'
343
+ item.current
344
+ ? 'text-[rgb(var(--ec-sidebar-active-text))] bg-[rgb(var(--ec-sidebar-active-bg))]'
345
+ : 'hover:bg-[rgb(var(--ec-sidebar-hover-bg))] hover:text-[rgb(var(--ec-sidebar-active-text))] text-[rgb(var(--ec-sidebar-text))]'
301
346
  }`}
302
347
  >
303
348
  <div class="has-tooltip">
@@ -328,7 +373,7 @@ const canPageBeEmbedded = isEmbedEnabled();
328
373
  data-role="nav-item"
329
374
  href={buildUrl('/plans')}
330
375
  aria-label="Upgrade EventCatalog"
331
- class={`p-1.5 inline-block transition-colors duration-200 rounded-lg ${currentPath.includes('/pro') ? 'text-white bg-gray-900' : 'bg-gray-200 hover:bg-gray-800 hover:text-white text-gray-700'}`}
376
+ class={`p-1.5 inline-block transition-colors duration-200 rounded-lg ${currentPath.includes('/pro') ? 'text-[rgb(var(--ec-sidebar-active-text))] bg-[rgb(var(--ec-sidebar-active-bg))]' : 'bg-[rgb(var(--ec-sidebar-bg-gradient))] hover:bg-[rgb(var(--ec-sidebar-hover-bg))] hover:text-[rgb(var(--ec-sidebar-active-text))] text-[rgb(var(--ec-sidebar-text))]'}`}
332
377
  >
333
378
  <div class="has-tooltip">
334
379
  <span
@@ -348,12 +393,15 @@ const canPageBeEmbedded = isEmbedEnabled();
348
393
 
349
394
  {
350
395
  showNestedSideBar && (
351
- <SideNav id="sidebar" class={`sidebar-transition h-content bg-white border-r border-gray-100 w-[320px] ml-14`} />
396
+ <SideNav
397
+ id="sidebar"
398
+ class={`sidebar-transition h-content bg-[rgb(var(--ec-sidebar-bg))] border-r border-[rgb(var(--ec-sidebar-border))] w-[320px] ml-14`}
399
+ />
352
400
  )
353
401
  }
354
402
  </aside>
355
403
  <main
356
- class={`sidebar-transition w-full max-h-content overflow-y-auto ${showNestedSideBar ? 'ml-0' : 'ml-14'}`}
404
+ class={`sidebar-transition w-full max-h-content overflow-y-auto bg-[rgb(var(--ec-page-bg))] ${showNestedSideBar ? 'ml-0' : 'ml-14'}`}
357
405
  id="content"
358
406
  >
359
407
  <slot />