@redocly/theme 0.65.0-next.2 → 0.65.0-next.4

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 (51) hide show
  1. package/lib/components/Banner/Banner.js +10 -2
  2. package/lib/components/Banner/variables.js +8 -1
  3. package/lib/components/Catalog/CatalogTags.js +1 -0
  4. package/lib/components/Catalog/variables.js +1 -0
  5. package/lib/components/Markdown/Markdown.js +92 -26
  6. package/lib/components/Markdown/styles/base-table.js +2 -1
  7. package/lib/components/Markdown/styles/heading-anchor.d.ts +1 -1
  8. package/lib/components/Markdown/styles/heading-anchor.js +1 -1
  9. package/lib/components/Markdown/styles/links.js +2 -1
  10. package/lib/components/PageActions/PageActions.js +1 -0
  11. package/lib/components/Search/variables.js +1 -3
  12. package/lib/core/constants/heading.d.ts +9 -0
  13. package/lib/core/constants/heading.js +13 -0
  14. package/lib/core/constants/index.d.ts +2 -0
  15. package/lib/core/constants/index.js +2 -0
  16. package/lib/core/constants/markdown.d.ts +1 -0
  17. package/lib/core/constants/markdown.js +5 -0
  18. package/lib/core/hooks/use-active-heading.js +2 -1
  19. package/lib/core/styles/dark.js +3 -3
  20. package/lib/core/styles/global.js +9 -8
  21. package/lib/core/styles/palette.dark.js +31 -0
  22. package/lib/core/styles/palette.js +53 -0
  23. package/lib/icons/AiStarsGradientIcon/AiStarsGradientIcon.js +2 -2
  24. package/lib/layouts/CodeWalkthroughLayout.js +3 -1
  25. package/lib/layouts/DocumentationLayout.js +3 -1
  26. package/lib/markdoc/components/Cards/Card.js +1 -0
  27. package/lib/markdoc/components/Heading/Heading.js +12 -24
  28. package/package.json +1 -1
  29. package/src/components/Banner/Banner.tsx +11 -3
  30. package/src/components/Banner/variables.ts +8 -1
  31. package/src/components/Catalog/CatalogTags.tsx +1 -0
  32. package/src/components/Catalog/variables.ts +1 -0
  33. package/src/components/Markdown/Markdown.tsx +102 -26
  34. package/src/components/Markdown/styles/base-table.ts +3 -1
  35. package/src/components/Markdown/styles/heading-anchor.ts +1 -1
  36. package/src/components/Markdown/styles/links.ts +2 -1
  37. package/src/components/PageActions/PageActions.tsx +1 -0
  38. package/src/components/Search/variables.ts +3 -3
  39. package/src/core/constants/heading.ts +9 -0
  40. package/src/core/constants/index.ts +2 -0
  41. package/src/core/constants/markdown.ts +1 -0
  42. package/src/core/hooks/use-active-heading.ts +2 -1
  43. package/src/core/styles/dark.ts +3 -3
  44. package/src/core/styles/global.ts +9 -8
  45. package/src/core/styles/palette.dark.ts +31 -0
  46. package/src/core/styles/palette.ts +53 -0
  47. package/src/icons/AiStarsGradientIcon/AiStarsGradientIcon.tsx +8 -2
  48. package/src/layouts/CodeWalkthroughLayout.tsx +3 -1
  49. package/src/layouts/DocumentationLayout.tsx +3 -1
  50. package/src/markdoc/components/Cards/Card.tsx +1 -0
  51. package/src/markdoc/components/Heading/Heading.tsx +36 -29
@@ -128,7 +128,7 @@ function Banner({ className }) {
128
128
  return null;
129
129
  }
130
130
  return (react_1.default.createElement(BannerWrapper, { ref: bannerRef, "data-component-name": "Banner/Banner", className: className, "$color": displayBanner.color, "$isVisible": isVisible },
131
- react_1.default.createElement(BannerContent, null,
131
+ react_1.default.createElement(BannerContent, { "$color": displayBanner.color },
132
132
  react_1.default.createElement(contexts_1.MarkdownLinkContext.Provider, { value: markdownLinkContextValue },
133
133
  react_1.default.createElement(Markdown_1.Markdown, { compact: true }, markdownContent))),
134
134
  displayBanner.dismissible && (react_1.default.createElement(DismissButton, { variant: "ghost", size: "var(--banner-button-size)", icon: react_1.default.createElement(CloseIcon_1.CloseIcon, { color: `var(--banner-${displayBanner.color}-icon-color)`, size: "16px" }), onClick: () => {
@@ -149,7 +149,15 @@ const BannerContent = styled_components_1.default.div `
149
149
 
150
150
  a:not([role='button']) {
151
151
  color: var(--banner-link-color);
152
- text-decoration: var(--banner-link-decoration);
152
+ text-decoration: ${({ $color }) => $color && `var(--banner-${$color}-link-decoration)`};
153
+
154
+ &:hover, &:focus {
155
+ text-decoration: ${({ $color }) => $color && `var(--banner-${$color}-link-decoration-hover)`};
156
+ }
157
+
158
+ &:visited {
159
+ text-decoration: ${({ $color }) => $color && `var(--banner-${$color}-link-decoration)`};
160
+ }
153
161
  }
154
162
 
155
163
  [data-component-name='Button/Button'] {
@@ -19,7 +19,6 @@ exports.banner = (0, styled_components_1.css) `
19
19
  --banner-button-icon-right-padding: 1px 10px 1px var(--spacing-sm); // @presenter Spacing
20
20
  --banner-button-margin: 0 var(--spacing-xs); // @presenter Spacing
21
21
  --banner-padding: var(--spacing-xs); // @presenter Spacing
22
- --banner-link-decoration: var(--link-decoration-hover);
23
22
  --banner-min-height: 38px;
24
23
  --banner-gap: var(--spacing-xxs); // @presenter Spacing
25
24
 
@@ -27,20 +26,28 @@ exports.banner = (0, styled_components_1.css) `
27
26
  --banner-info-text-color: var(--color-static-white); // @presenter Color
28
27
  --banner-info-icon-color: var(--color-static-white); // @presenter Color
29
28
  --banner-info-link-color: var(--banner-info-text-color); // @presenter Color
29
+ --banner-info-link-decoration: underline 1px var(--banner-info-link-color);
30
+ --banner-info-link-decoration-hover: underline 2px var(--banner-info-link-color);
30
31
 
31
32
  --banner-success-bg-color: var(--color-success-base); // @presenter Color
32
33
  --banner-success-text-color: var(--color-static-white); // @presenter Color
33
34
  --banner-success-icon-color: var(--color-static-white); // @presenter Color
34
35
  --banner-success-link-color: var(--banner-success-text-color); // @presenter Color
36
+ --banner-success-link-decoration: underline 1px var(--banner-success-link-color);
37
+ --banner-success-link-decoration-hover: underline 2px var(--banner-success-link-color);
35
38
 
36
39
  --banner-warning-bg-color: var(--color-warning-base); // @presenter Color
37
40
  --banner-warning-text-color: var(--color-black); // @presenter Color
38
41
  --banner-warning-icon-color: var(--color-black); // @presenter Color
39
42
  --banner-warning-link-color: var(--banner-warning-text-color); // @presenter Color
43
+ --banner-warning-link-decoration: underline 1px var(--banner-warning-link-color);
44
+ --banner-warning-link-decoration-hover: underline 2px var(--banner-warning-link-color);
40
45
 
41
46
  --banner-error-bg-color: var(--color-error-base); // @presenter Color
42
47
  --banner-error-text-color: var(--color-static-white); // @presenter Color
43
48
  --banner-error-icon-color: var(--color-static-white); // @presenter Color
44
49
  --banner-error-link-color: var(--banner-error-text-color); // @presenter Color
50
+ --banner-error-link-decoration: underline 1px var(--banner-error-link-color);
51
+ --banner-error-link-decoration-hover: underline 2px var(--banner-error-link-color);
45
52
  `;
46
53
  //# sourceMappingURL=variables.js.map
@@ -49,6 +49,7 @@ function CatalogTags({ items, itemsToShow = 1, showPlaceholder = false, showAvat
49
49
  const CatalogTagsWrapper = styled_components_1.default.div `
50
50
  display: flex;
51
51
  flex-wrap: wrap;
52
+ row-gap: var(--catalog-tags-row-gap);
52
53
  `;
53
54
  const MoreTagsButton = styled_components_1.default.span `
54
55
  font-size: var(--catalog-tags-more-button-font-size);
@@ -150,6 +150,7 @@ exports.catalog = (0, styled_components_1.css) `
150
150
  */
151
151
  --catalog-tags-more-button-font-size: var(--font-size-base);
152
152
  --catalog-tags-more-button-margin-left: 4px;
153
+ --catalog-tags-row-gap: var(--spacing-xxs);
153
154
  --catalog-tags-placeholder-bg-color: var(--bg-color);
154
155
  --catalog-tags-not-connected-font-size: var(--font-size-base);
155
156
  --catalog-tags-not-connected-line-height: var(--line-height-base);
@@ -39,6 +39,7 @@ const utils_1 = require("../../core/utils");
39
39
  const base_table_1 = require("../../components/Markdown/styles/base-table");
40
40
  const links_1 = require("../../components/Markdown/styles/links");
41
41
  const heading_anchor_1 = require("../../components/Markdown/styles/heading-anchor");
42
+ const constants_1 = require("../../core/constants");
42
43
  exports.Markdown = styled_components_1.default.main.attrs(({ className }) => ({
43
44
  'data-component-name': 'Markdown/Markdown',
44
45
  className,
@@ -85,17 +86,82 @@ exports.Markdown = styled_components_1.default.main.attrs(({ className }) => ({
85
86
  max-width: 100%;
86
87
  }
87
88
 
88
- h1.md,
89
- h2.md,
90
- h3.md,
91
- h4.md,
92
- h5.md,
93
- h6.md {
89
+ .${constants_1.HEADING_ANCHOR_CLASS} {
94
90
  font-weight: var(--heading-font-weight);
95
91
  font-family: var(--heading-font-family);
96
92
  position: relative;
97
93
 
98
94
  scroll-margin-top: calc(var(--navbar-height) + var(--banner-height));
95
+ ${(0, heading_anchor_1.headingAnchorCss)(constants_1.ANCHOR_CLASS)};
96
+
97
+ h1, h2, h3, h4, h5, h6 {
98
+ display: flex;
99
+ align-items: flex-start;
100
+ gap: var(--spacing-sm);
101
+ margin: 0;
102
+ font: inherit;
103
+ color: inherit;
104
+ }
105
+ }
106
+
107
+ .${constants_1.H1_CLASS} {
108
+ ${(0, utils_1.typography)('h1')};
109
+ margin: var(--h1-margin-top) 0 var(--h1-margin-bottom) 0;
110
+
111
+ h1 code {
112
+ font-size: var(--h1-font-size);
113
+ line-height: var(--h1-code-line-height);
114
+ }
115
+ }
116
+
117
+ .${constants_1.H2_CLASS} {
118
+ ${(0, utils_1.typography)('h2')};
119
+ margin: var(--h2-margin-top) 0 var(--h2-margin-bottom) 0;
120
+
121
+ h2 code {
122
+ font-size: var(--h2-font-size);
123
+ line-height: var(--h2-code-line-height);
124
+ }
125
+ }
126
+
127
+ .${constants_1.H3_CLASS} {
128
+ ${(0, utils_1.typography)('h3')};
129
+ margin: var(--h3-margin-top) 0 var(--h3-margin-bottom) 0;
130
+
131
+ h3 code {
132
+ font-size: var(--h3-font-size);
133
+ line-height: var(--h3-code-line-height);
134
+ }
135
+ }
136
+
137
+ .${constants_1.H4_CLASS} {
138
+ ${(0, utils_1.typography)('h4')};
139
+ margin: var(--h4-margin-top) 0 var(--h4-margin-bottom) 0;
140
+
141
+ h4 code {
142
+ font-size: var(--h4-font-size);
143
+ line-height: var(--h4-code-line-height);
144
+ }
145
+ }
146
+
147
+ .${constants_1.H5_CLASS} {
148
+ ${(0, utils_1.typography)('h5')};
149
+ margin: var(--h5-margin-top) 0 var(--h5-margin-bottom) 0;
150
+
151
+ h5 code {
152
+ font-size: var(--h5-font-size);
153
+ line-height: var(--h5-code-line-height);
154
+ }
155
+ }
156
+
157
+ .${constants_1.H6_CLASS} {
158
+ ${(0, utils_1.typography)('h6')};
159
+ margin: var(--h6-margin-top) 0 var(--h6-margin-bottom) 0;
160
+
161
+ h6 code {
162
+ font-size: var(--h6-font-size);
163
+ line-height: var(--h6-code-line-height);
164
+ }
99
165
  }
100
166
 
101
167
  strong {
@@ -139,71 +205,71 @@ exports.Markdown = styled_components_1.default.main.attrs(({ className }) => ({
139
205
  margin: var(--md-paragraph-margin);
140
206
  }
141
207
 
142
- h1.md {
208
+ /**
209
+ * @deprecated Legacy styles for ejected Heading components that render h1-h6 as the root.
210
+ *
211
+ * Deprecated legacy heading styles start.
212
+ */
213
+ h1.${constants_1.MARKDOWN_CLASS_NAME} {
143
214
  ${(0, utils_1.typography)('h1')};
144
215
  margin: var(--h1-margin-top) 0 var(--h1-margin-bottom) 0;
145
- ${(0, heading_anchor_1.headingAnchorCss)()};
146
216
  }
147
217
 
148
- h2.md {
218
+ h2.${constants_1.MARKDOWN_CLASS_NAME} {
149
219
  ${(0, utils_1.typography)('h2')};
150
220
  margin: var(--h2-margin-top) 0 var(--h2-margin-bottom) 0;
151
- ${(0, heading_anchor_1.headingAnchorCss)()};
152
221
  }
153
222
 
154
- h3.md {
223
+ h3.${constants_1.MARKDOWN_CLASS_NAME} {
155
224
  ${(0, utils_1.typography)('h3')};
156
225
  margin: var(--h3-margin-top) 0 var(--h3-margin-bottom) 0;
157
- ${(0, heading_anchor_1.headingAnchorCss)()};
158
226
  }
159
227
 
160
- h4.md {
228
+ h4.${constants_1.MARKDOWN_CLASS_NAME} {
161
229
  ${(0, utils_1.typography)('h4')};
162
230
  margin: var(--h4-margin-top) 0 var(--h4-margin-bottom) 0;
163
- ${(0, heading_anchor_1.headingAnchorCss)()};
164
231
  }
165
232
 
166
- h5.md {
233
+ h5.${constants_1.MARKDOWN_CLASS_NAME} {
167
234
  ${(0, utils_1.typography)('h5')};
168
235
  margin: var(--h5-margin-top) 0 var(--h5-margin-bottom) 0;
169
- ${(0, heading_anchor_1.headingAnchorCss)()};
170
236
  }
171
237
 
172
- h6.md {
238
+ h6.${constants_1.MARKDOWN_CLASS_NAME} {
173
239
  ${(0, utils_1.typography)('h6')};
174
240
  margin: var(--h6-margin-top) 0 var(--h6-margin-bottom) 0;
175
- ${(0, heading_anchor_1.headingAnchorCss)()};
176
241
  }
177
242
 
178
- h1.md code {
243
+ h1.${constants_1.MARKDOWN_CLASS_NAME} code {
179
244
  font-size: var(--h1-font-size);
180
245
  line-height: var(--h1-code-line-height);
181
246
  }
182
247
 
183
- h2.md code {
248
+ h2.${constants_1.MARKDOWN_CLASS_NAME} code {
184
249
  font-size: var(--h2-font-size);
185
250
  line-height: var(--h2-code-line-height);
186
251
  }
187
252
 
188
- h3.md code {
253
+ h3.${constants_1.MARKDOWN_CLASS_NAME} code {
189
254
  font-size: var(--h3-font-size);
190
255
  line-height: var(--h3-code-line-height);
191
256
  }
192
257
 
193
- h4.md code {
258
+ h4.${constants_1.MARKDOWN_CLASS_NAME} code {
194
259
  font-size: var(--h4-font-size);
195
260
  line-height: var(--h4-code-line-height);
196
261
  }
197
262
 
198
- h5.md code {
263
+ h5.${constants_1.MARKDOWN_CLASS_NAME} code {
199
264
  font-size: var(--h5-font-size);
200
265
  line-height: var(--h5-code-line-height);
201
266
  }
202
267
 
203
- h6.md code {
268
+ h6.${constants_1.MARKDOWN_CLASS_NAME} code {
204
269
  font-size: var(--h6-font-size);
205
270
  line-height: var(--h6-code-line-height);
206
271
  }
272
+ /* Deprecated legacy heading styles end. */
207
273
 
208
274
  code {
209
275
  color: var(--inline-code-text-color);
@@ -267,8 +333,8 @@ exports.Markdown = styled_components_1.default.main.attrs(({ className }) => ({
267
333
  }
268
334
  }
269
335
 
270
- ul.md,
271
- ol.md {
336
+ ul.${constants_1.MARKDOWN_CLASS_NAME},
337
+ ol.${constants_1.MARKDOWN_CLASS_NAME} {
272
338
  padding-left: var(--md-list-left-padding);
273
339
  margin: var(--md-list-margin);
274
340
 
@@ -2,12 +2,13 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.markdownBaseTableCss = void 0;
4
4
  const styled_components_1 = require("styled-components");
5
+ const constants_1 = require("../../../core/constants");
5
6
  exports.markdownBaseTableCss = (0, styled_components_1.css) `
6
7
  .md-table-wrapper {
7
8
  overflow-x: auto;
8
9
  }
9
10
 
10
- table.md {
11
+ table.${constants_1.MARKDOWN_CLASS_NAME} {
11
12
  width: 100%;
12
13
  overflow: hidden;
13
14
  word-break: keep-all;
@@ -1,2 +1,2 @@
1
1
  import type { FlattenSimpleInterpolation } from 'styled-components';
2
- export declare function headingAnchorCss(className?: string): FlattenSimpleInterpolation;
2
+ export declare function headingAnchorCss(className: string): FlattenSimpleInterpolation;
@@ -2,7 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.headingAnchorCss = headingAnchorCss;
4
4
  const styled_components_1 = require("styled-components");
5
- function headingAnchorCss(className = 'anchor') {
5
+ function headingAnchorCss(className) {
6
6
  return (0, styled_components_1.css) `
7
7
  .${className}.before {
8
8
  position: absolute;
@@ -5,12 +5,13 @@ const styled_components_1 = require("styled-components");
5
5
  exports.markdownLinksCss = (0, styled_components_1.css) `
6
6
  a:not([role='button']) {
7
7
  text-decoration: var(--link-decoration);
8
+ text-underline-offset: var(--link-underline-offset);
8
9
  color: var(--link-color-primary);
9
10
  font-weight: var(--link-font-weight);
10
11
 
11
12
  &:visited {
12
13
  color: var(--link-color-visited);
13
- text-decoration: var(--link-visited-decoration);
14
+ text-decoration: var(--link-decoration-visited);
14
15
  }
15
16
 
16
17
  &:hover,
@@ -112,6 +112,7 @@ const PageActionsWrapper = styled_components_1.default.div `
112
112
  `;
113
113
  const LinkMenuItem = (0, styled_components_1.default)(Link_1.Link) `
114
114
  text-decoration: none;
115
+ --link-decoration: none;
115
116
  --link-decoration-hover: none;
116
117
  `;
117
118
  const StyledDropdown = (0, styled_components_1.default)(Dropdown_1.Dropdown) `
@@ -2,7 +2,6 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.search = void 0;
4
4
  const styled_components_1 = require("styled-components");
5
- /* eslint-disable theme/no-raw-colors-in-styles */
6
5
  exports.search = (0, styled_components_1.css) `
7
6
  /**
8
7
  * @tokens Search
@@ -148,7 +147,7 @@ exports.search = (0, styled_components_1.css) `
148
147
  * @tokens AI Search
149
148
  */
150
149
 
151
- --search-ai-gradient: linear-gradient(to right, #715efe, #ff5cdc);
150
+ --search-ai-gradient: linear-gradient(to right, var(--search-ai-gradient-start-color, var(--search-ai-gradient-start-color-legacy)), var(--search-ai-gradient-end-color, var(--search-ai-gradient-end-color-legacy)));
152
151
 
153
152
  --search-ai-response-padding: var(--spacing-lg);
154
153
  --search-ai-response-gap: var(--spacing-sm);
@@ -264,5 +263,4 @@ exports.search = (0, styled_components_1.css) `
264
263
 
265
264
  // @tokens End
266
265
  `;
267
- /* eslint-enable theme/no-raw-colors-in-styles */
268
266
  //# sourceMappingURL=variables.js.map
@@ -0,0 +1,9 @@
1
+ export declare const HEADING_ANCHOR_CLASS = "heading-anchor";
2
+ export declare const ANCHOR_CLASS = "anchor";
3
+ export declare const HEADING_CLASS_PREFIX = "heading-level";
4
+ export declare const H1_CLASS = "heading-level-1";
5
+ export declare const H2_CLASS = "heading-level-2";
6
+ export declare const H3_CLASS = "heading-level-3";
7
+ export declare const H4_CLASS = "heading-level-4";
8
+ export declare const H5_CLASS = "heading-level-5";
9
+ export declare const H6_CLASS = "heading-level-6";
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.H6_CLASS = exports.H5_CLASS = exports.H4_CLASS = exports.H3_CLASS = exports.H2_CLASS = exports.H1_CLASS = exports.HEADING_CLASS_PREFIX = exports.ANCHOR_CLASS = exports.HEADING_ANCHOR_CLASS = void 0;
4
+ exports.HEADING_ANCHOR_CLASS = 'heading-anchor';
5
+ exports.ANCHOR_CLASS = 'anchor';
6
+ exports.HEADING_CLASS_PREFIX = 'heading-level';
7
+ exports.H1_CLASS = `${exports.HEADING_CLASS_PREFIX}-1`;
8
+ exports.H2_CLASS = `${exports.HEADING_CLASS_PREFIX}-2`;
9
+ exports.H3_CLASS = `${exports.HEADING_CLASS_PREFIX}-3`;
10
+ exports.H4_CLASS = `${exports.HEADING_CLASS_PREFIX}-4`;
11
+ exports.H5_CLASS = `${exports.HEADING_CLASS_PREFIX}-5`;
12
+ exports.H6_CLASS = `${exports.HEADING_CLASS_PREFIX}-6`;
13
+ //# sourceMappingURL=heading.js.map
@@ -7,3 +7,5 @@ export * from './breadcrumb';
7
7
  export * from './request-methods';
8
8
  export * from './mcp';
9
9
  export * from './feedback';
10
+ export * from './heading';
11
+ export * from './markdown';
@@ -23,4 +23,6 @@ __exportStar(require("./breadcrumb"), exports);
23
23
  __exportStar(require("./request-methods"), exports);
24
24
  __exportStar(require("./mcp"), exports);
25
25
  __exportStar(require("./feedback"), exports);
26
+ __exportStar(require("./heading"), exports);
27
+ __exportStar(require("./markdown"), exports);
26
28
  //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ export declare const MARKDOWN_CLASS_NAME = "md";
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MARKDOWN_CLASS_NAME = void 0;
4
+ exports.MARKDOWN_CLASS_NAME = 'md';
5
+ //# sourceMappingURL=markdown.js.map
@@ -4,6 +4,7 @@ exports.useActiveHeading = useActiveHeading;
4
4
  const react_1 = require("react");
5
5
  const react_router_dom_1 = require("react-router-dom");
6
6
  const utils_1 = require("../utils");
7
+ const constants_1 = require("../constants");
7
8
  function useActiveHeading(contentElement, displayedHeadings) {
8
9
  const [heading, setHeading] = (0, react_1.useState)(undefined);
9
10
  const [headingElements, setHeadingElements] = (0, react_1.useState)([]);
@@ -42,7 +43,7 @@ function useActiveHeading(contentElement, displayedHeadings) {
42
43
  return headingElements.findIndex((item) => item.id === id);
43
44
  }, [headingElements]);
44
45
  const findHeaders = (allContent) => {
45
- const allHeaders = allContent.querySelectorAll('.heading-anchor');
46
+ const allHeaders = allContent.querySelectorAll(`.${constants_1.HEADING_ANCHOR_CLASS}`);
46
47
  const headers = Array.from(allHeaders);
47
48
  if (displayedHeadingsRef.current && displayedHeadingsRef.current.length > 0) {
48
49
  const displayedIds = displayedHeadingsRef.current.map((h) => h === null || h === void 0 ? void 0 : h.id).filter(Boolean);
@@ -291,10 +291,10 @@ exports.darkMode = (0, styled_components_1.css) `
291
291
  * @tokens Links
292
292
  */
293
293
 
294
- --link-color-primary: var(--color-blue-7); // @presenter Color
295
- --link-color-primary-hover: var(--color-blue-8); // @presenter Color
294
+ --link-color-primary: var(--link-color-primary-palette, var(--link-color-primary-legacy)); // @presenter Color
295
+ --link-color-primary-hover: var(--link-color-primary-palette, var(--link-color-primary-hover-legacy)); // @presenter Color
296
296
  --link-color-inverse: var(--color-blue-6); // @presenter Color
297
- --link-color-visited: var(--color-purple-8); // @presenter Color
297
+ --link-color-visited: var(--link-color-primary-palette, var(--link-color-visited-legacy)); // @presenter Color
298
298
 
299
299
  /**
300
300
  * @tokens Tab Colors
@@ -567,18 +567,19 @@ const links = (0, styled_components_1.css) `
567
567
  * @tokens Links
568
568
  */
569
569
 
570
- --link-color-primary: var(--color-blue-6); // @presenter Color
571
- --link-decoration: none;
572
- --link-font-weight: var(--font-weight-regular); // @presenter FontWeight
570
+ --link-color-primary: var(--link-color-primary-palette, var(--link-color-primary-legacy)); // @presenter Color
571
+ --link-decoration: underline 1px var(--color-primary-base, var(--link-color-primary-legacy));
572
+ --link-underline-offset: 4px;
573
+ --link-font-weight: var(--font-weight-medium); // @presenter FontWeight
573
574
 
574
- --link-color-primary-hover: var(--color-blue-7); // @presenter Color
575
- --link-color-primary-pressed: var(--color-blue-8);
576
- --link-decoration-hover: underline;
575
+ --link-color-primary-hover: var(--link-color-primary-palette, var(--link-color-primary-hover-legacy)); // @presenter Color
576
+ --link-color-primary-pressed: var(--link-color-primary-palette, var(--link-color-primary-pressed-legacy));
577
+ --link-decoration-hover: underline 2px var(--color-primary-base, var(--link-color-primary-hover-legacy));
577
578
 
578
579
  --link-color-inverse: var(--color-blue-5); // @presenter Color
579
580
 
580
- --link-color-visited: var(--color-purple-7); // @presenter Color
581
- --link-visited-decoration: none;
581
+ --link-color-visited: var(--link-color-primary-palette, var(--link-color-visited-legacy)); // @presenter Color
582
+ --link-decoration-visited: underline 1px var(--color-primary-base, var(--link-color-visited-legacy));
582
583
 
583
584
  // @tokens End
584
585
  `;
@@ -22,6 +22,9 @@ function brandPaletteDark(palette) {
22
22
  --color-brand-subtle-3: #55576166;
23
23
  --color-brand-subtle-4: #6e6f7a66;
24
24
  --text-color-on-color: #000000;
25
+
26
+ --search-ai-gradient-start-color: var(--color-brand-3);
27
+ --search-ai-gradient-end-color: var(--color-brand-7);
25
28
  `;
26
29
  case 'pink':
27
30
  return (0, styled_components_1.css) `
@@ -41,6 +44,9 @@ function brandPaletteDark(palette) {
41
44
  --color-brand-subtle-3: #85366866;
42
45
  --color-brand-subtle-4: #a03a7b66;
43
46
  --text-color-on-color: #ffffff;
47
+
48
+ --search-ai-gradient-start-color: var(--color-brand-5); // @presenter Color
49
+ --search-ai-gradient-end-color: var(--color-brand-8); // @presenter Color
44
50
  `;
45
51
  case 'coral':
46
52
  return (0, styled_components_1.css) `
@@ -60,6 +66,9 @@ function brandPaletteDark(palette) {
60
66
  --color-brand-subtle-3: #8b3c4266;
61
67
  --color-brand-subtle-4: #a9434c66;
62
68
  --text-color-on-color: #ffffff;
69
+
70
+ --search-ai-gradient-start-color: var(--color-brand-4); // @presenter Color
71
+ --search-ai-gradient-end-color: var(--color-brand-8); // @presenter Color
63
72
  `;
64
73
  case 'amber':
65
74
  return (0, styled_components_1.css) `
@@ -79,6 +88,9 @@ function brandPaletteDark(palette) {
79
88
  --color-brand-subtle-3: #93632f66;
80
89
  --color-brand-subtle-4: #b6732a66;
81
90
  --text-color-on-color: #ffffff;
91
+
92
+ --search-ai-gradient-start-color: var(--color-brand-5); // @presenter Color
93
+ --search-ai-gradient-end-color: var(--color-brand-8); // @presenter Color
82
94
  `;
83
95
  case 'jade':
84
96
  return (0, styled_components_1.css) `
@@ -98,6 +110,9 @@ function brandPaletteDark(palette) {
98
110
  --color-brand-subtle-3: #2b715e66;
99
111
  --color-brand-subtle-4: #2b816b66;
100
112
  --text-color-on-color: #ffffff;
113
+
114
+ --search-ai-gradient-start-color: var(--color-brand-4);
115
+ --search-ai-gradient-end-color: var(--color-brand-7);
101
116
  `;
102
117
  case 'cyan':
103
118
  return (0, styled_components_1.css) `
@@ -117,6 +132,9 @@ function brandPaletteDark(palette) {
117
132
  --color-brand-subtle-3: #246e7f66;
118
133
  --color-brand-subtle-4: #1b809766;
119
134
  --text-color-on-color: #ffffff;
135
+
136
+ --search-ai-gradient-start-color: var(--color-brand-4); // @presenter Color
137
+ --search-ai-gradient-end-color: var(--color-brand-8); // @presenter Color
120
138
  `;
121
139
  case 'ocean':
122
140
  return (0, styled_components_1.css) `
@@ -136,6 +154,9 @@ function brandPaletteDark(palette) {
136
154
  --color-brand-subtle-3: #2a679566;
137
155
  --color-brand-subtle-4: #2277b966;
138
156
  --text-color-on-color: #ffffff;
157
+
158
+ --search-ai-gradient-start-color: var(--color-brand-4); // @presenter Color
159
+ --search-ai-gradient-end-color: var(--color-brand-8); // @presenter Color
139
160
  `;
140
161
  case 'indigo':
141
162
  return (0, styled_components_1.css) `
@@ -155,6 +176,9 @@ function brandPaletteDark(palette) {
155
176
  --color-brand-subtle-3: #36498866;
156
177
  --color-brand-subtle-4: #3952a466;
157
178
  --text-color-on-color: #ffffff;
179
+
180
+ --search-ai-gradient-start-color: var(--color-brand-4); // @presenter Color
181
+ --search-ai-gradient-end-color: var(--color-brand-8); // @presenter Color
158
182
  `;
159
183
  case 'iris':
160
184
  return (0, styled_components_1.css) `
@@ -174,6 +198,9 @@ function brandPaletteDark(palette) {
174
198
  --color-brand-subtle-3: #43438580;
175
199
  --color-brand-subtle-4: #4c4ca080;
176
200
  --text-color-on-color: #ffffff;
201
+
202
+ --search-ai-gradient-start-color: var(--color-brand-4); // @presenter Color
203
+ --search-ai-gradient-end-color: var(--color-brand-8); // @presenter Color
177
204
  `;
178
205
  default:
179
206
  return (0, styled_components_1.css) `
@@ -194,6 +221,10 @@ function brandPaletteDark(palette) {
194
221
  --admonition-default-border-color-legacy: var(--color-warm-grey-5);
195
222
 
196
223
  --code-block-highlighted-bg-color-legacy: color-mix(in srgb, var(--color-warm-grey-4) 40%, transparent);
224
+
225
+ --link-color-primary-legacy: var(--color-blue-7);
226
+ --link-color-primary-hover-legacy: var(--color-blue-8);
227
+ --link-color-visited-legacy: var(--color-purple-8);
197
228
  `;
198
229
  }
199
230
  }