@dynatrace/strato-components 1.16.1 → 1.17.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 (234) hide show
  1. package/buttons/button/Button.css +16 -16
  2. package/buttons/button/Button.js +12 -9
  3. package/buttons/button/Button.sty.js +4 -4
  4. package/buttons/intent-button/IntentButton.d.ts +2 -0
  5. package/content/progress/ProgressBar.css +71 -71
  6. package/content/progress/ProgressBar.js +3 -1
  7. package/content/progress/ProgressBar.sty.js +5 -5
  8. package/content/progress/ProgressBarIcon.css +2 -2
  9. package/content/progress/ProgressBarIcon.sty.js +1 -1
  10. package/content/progress/ProgressBarLabel.css +3 -3
  11. package/content/progress/ProgressBarLabel.sty.js +1 -1
  12. package/content/progress/ProgressBarValue.css +5 -5
  13. package/content/progress/ProgressBarValue.sty.js +1 -1
  14. package/content/progress/ProgressCircle.css +40 -40
  15. package/content/progress/ProgressCircle.js +3 -1
  16. package/content/progress/ProgressCircle.sty.js +5 -5
  17. package/content/skeleton/Skeleton.css +7 -7
  18. package/content/skeleton/Skeleton.js +3 -0
  19. package/content/skeleton/Skeleton.sty.js +5 -5
  20. package/content/skeleton/SkeletonText.js +3 -0
  21. package/core/index.d.ts +1 -0
  22. package/core/index.js +2 -0
  23. package/core/styles/focusRing.css +66 -66
  24. package/core/styles/focusRing.sty.d.ts +10 -6
  25. package/core/styles/focusRing.sty.js +2 -2
  26. package/core/styles/focusRingStatic.css +44 -0
  27. package/core/styles/focusRingStatic.sty.d.ts +77 -0
  28. package/core/styles/focusRingStatic.sty.js +26 -0
  29. package/core/styles/useFocusRing.d.ts +7 -6
  30. package/core/styles/useFocusRing.js +13 -13
  31. package/core/utils/colorUtils.css +60 -60
  32. package/core/utils/colorUtils.sty.js +2 -2
  33. package/esm/buttons/button/Button.css +16 -16
  34. package/esm/buttons/button/Button.js +12 -9
  35. package/esm/buttons/button/Button.js.map +2 -2
  36. package/esm/buttons/button/Button.sty.js +4 -4
  37. package/esm/buttons/button/Button.sty.js.map +1 -1
  38. package/esm/buttons/index.js.map +1 -1
  39. package/esm/buttons/intent-button/IntentButton.js.map +2 -2
  40. package/esm/content/progress/ProgressBar.css +71 -71
  41. package/esm/content/progress/ProgressBar.js +3 -1
  42. package/esm/content/progress/ProgressBar.js.map +2 -2
  43. package/esm/content/progress/ProgressBar.sty.js +5 -5
  44. package/esm/content/progress/ProgressBar.sty.js.map +1 -1
  45. package/esm/content/progress/ProgressBarIcon.css +2 -2
  46. package/esm/content/progress/ProgressBarIcon.sty.js +1 -1
  47. package/esm/content/progress/ProgressBarIcon.sty.js.map +1 -1
  48. package/esm/content/progress/ProgressBarLabel.css +3 -3
  49. package/esm/content/progress/ProgressBarLabel.sty.js +1 -1
  50. package/esm/content/progress/ProgressBarLabel.sty.js.map +1 -1
  51. package/esm/content/progress/ProgressBarValue.css +5 -5
  52. package/esm/content/progress/ProgressBarValue.sty.js +1 -1
  53. package/esm/content/progress/ProgressBarValue.sty.js.map +1 -1
  54. package/esm/content/progress/ProgressCircle.css +40 -40
  55. package/esm/content/progress/ProgressCircle.js +3 -1
  56. package/esm/content/progress/ProgressCircle.js.map +2 -2
  57. package/esm/content/progress/ProgressCircle.sty.js +5 -5
  58. package/esm/content/progress/ProgressCircle.sty.js.map +1 -1
  59. package/esm/content/skeleton/Skeleton.css +7 -7
  60. package/esm/content/skeleton/Skeleton.js +3 -0
  61. package/esm/content/skeleton/Skeleton.js.map +2 -2
  62. package/esm/content/skeleton/Skeleton.sty.js +5 -5
  63. package/esm/content/skeleton/Skeleton.sty.js.map +1 -1
  64. package/esm/content/skeleton/SkeletonText.js +3 -0
  65. package/esm/content/skeleton/SkeletonText.js.map +2 -2
  66. package/esm/core/index.js +4 -0
  67. package/esm/core/index.js.map +2 -2
  68. package/esm/core/styles/focusRing.css +66 -66
  69. package/esm/core/styles/focusRing.sty.js +2 -2
  70. package/esm/core/styles/focusRing.sty.js.map +1 -1
  71. package/esm/core/styles/focusRingStatic.css +44 -0
  72. package/esm/core/styles/focusRingStatic.sty.js +7 -0
  73. package/esm/core/styles/focusRingStatic.sty.js.map +7 -0
  74. package/esm/core/styles/useFocusRing.js +15 -15
  75. package/esm/core/styles/useFocusRing.js.map +2 -2
  76. package/esm/core/utils/colorUtils.css +60 -60
  77. package/esm/core/utils/colorUtils.sty.js +2 -2
  78. package/esm/core/utils/colorUtils.sty.js.map +1 -1
  79. package/esm/layouts/container/Container.css +4 -4
  80. package/esm/layouts/container/Container.sty.js +1 -1
  81. package/esm/layouts/container/Container.sty.js.map +1 -1
  82. package/esm/layouts/divider/Divider.css +6 -6
  83. package/esm/layouts/divider/Divider.sty.js +1 -1
  84. package/esm/layouts/divider/Divider.sty.js.map +1 -1
  85. package/esm/layouts/surface/Surface.css +39 -39
  86. package/esm/layouts/surface/Surface.js +2 -6
  87. package/esm/layouts/surface/Surface.js.map +2 -2
  88. package/esm/layouts/surface/Surface.sty.js +2 -2
  89. package/esm/layouts/surface/Surface.sty.js.map +1 -1
  90. package/esm/layouts/surface/variables.sty.js +1 -1
  91. package/esm/layouts/surface/variables.sty.js.map +1 -1
  92. package/esm/styles/colorUtils.css +60 -60
  93. package/esm/styles/colorUtils.sty.js +2 -2
  94. package/esm/styles/colorUtils.sty.js.map +1 -1
  95. package/esm/styles/container.css +47 -47
  96. package/esm/styles/container.sty.js +2 -2
  97. package/esm/styles/container.sty.js.map +1 -1
  98. package/esm/styles/ellipsis.css +1 -1
  99. package/esm/styles/ellipsis.sty.js +1 -1
  100. package/esm/styles/ellipsis.sty.js.map +1 -1
  101. package/esm/styles/field.css +153 -153
  102. package/esm/styles/field.sty.js +2 -2
  103. package/esm/styles/field.sty.js.map +1 -1
  104. package/esm/styles/sprinkles.css +262 -262
  105. package/esm/styles/sprinkles.sty.js +1 -1
  106. package/esm/styles/sprinkles.sty.js.map +1 -1
  107. package/esm/styles/textStyle.css +8 -8
  108. package/esm/styles/textStyle.sty.js +1 -1
  109. package/esm/styles/textStyle.sty.js.map +1 -1
  110. package/esm/typography/block-quote/Blockquote.css +2 -2
  111. package/esm/typography/block-quote/Blockquote.js +3 -1
  112. package/esm/typography/block-quote/Blockquote.js.map +2 -2
  113. package/esm/typography/block-quote/Blockquote.sty.js +1 -1
  114. package/esm/typography/block-quote/Blockquote.sty.js.map +1 -1
  115. package/esm/typography/code/Code.css +1 -1
  116. package/esm/typography/code/Code.js +3 -1
  117. package/esm/typography/code/Code.js.map +2 -2
  118. package/esm/typography/code/Code.sty.js +1 -1
  119. package/esm/typography/code/Code.sty.js.map +1 -1
  120. package/esm/typography/emphasis/Emphasis.css +1 -1
  121. package/esm/typography/emphasis/Emphasis.js +3 -1
  122. package/esm/typography/emphasis/Emphasis.js.map +2 -2
  123. package/esm/typography/emphasis/Emphasis.sty.js +1 -1
  124. package/esm/typography/emphasis/Emphasis.sty.js.map +1 -1
  125. package/esm/typography/external-link/ExternalLink.css +8 -5
  126. package/esm/typography/external-link/ExternalLink.js +6 -13
  127. package/esm/typography/external-link/ExternalLink.js.map +2 -2
  128. package/esm/typography/external-link/ExternalLink.sty.js +2 -1
  129. package/esm/typography/external-link/ExternalLink.sty.js.map +2 -2
  130. package/esm/typography/heading/Heading.css +7 -7
  131. package/esm/typography/heading/Heading.js +3 -1
  132. package/esm/typography/heading/Heading.js.map +2 -2
  133. package/esm/typography/heading/Heading.sty.js +1 -1
  134. package/esm/typography/heading/Heading.sty.js.map +1 -1
  135. package/esm/typography/highlight/Highlight.css +2 -2
  136. package/esm/typography/highlight/Highlight.js +3 -1
  137. package/esm/typography/highlight/Highlight.js.map +2 -2
  138. package/esm/typography/highlight/Highlight.sty.js +1 -1
  139. package/esm/typography/highlight/Highlight.sty.js.map +1 -1
  140. package/esm/typography/link/Link.css +6 -3
  141. package/esm/typography/link/Link.js +6 -19
  142. package/esm/typography/link/Link.js.map +2 -2
  143. package/esm/typography/link/Link.sty.js +2 -1
  144. package/esm/typography/link/Link.sty.js.map +2 -2
  145. package/esm/typography/list/List.css +4 -4
  146. package/esm/typography/list/List.js +3 -1
  147. package/esm/typography/list/List.js.map +2 -2
  148. package/esm/typography/list/List.sty.js +2 -2
  149. package/esm/typography/list/List.sty.js.map +1 -1
  150. package/esm/typography/paragraph/Paragraph.css +3 -3
  151. package/esm/typography/paragraph/Paragraph.js +3 -1
  152. package/esm/typography/paragraph/Paragraph.js.map +2 -2
  153. package/esm/typography/paragraph/Paragraph.sty.js +1 -1
  154. package/esm/typography/paragraph/Paragraph.sty.js.map +1 -1
  155. package/esm/typography/strikethrough/Strikethrough.css +1 -1
  156. package/esm/typography/strikethrough/Strikethrough.js +3 -1
  157. package/esm/typography/strikethrough/Strikethrough.js.map +2 -2
  158. package/esm/typography/strikethrough/Strikethrough.sty.js +1 -1
  159. package/esm/typography/strikethrough/Strikethrough.sty.js.map +1 -1
  160. package/esm/typography/strong/Strong.css +1 -1
  161. package/esm/typography/strong/Strong.js +3 -1
  162. package/esm/typography/strong/Strong.js.map +2 -2
  163. package/esm/typography/strong/Strong.sty.js +1 -1
  164. package/esm/typography/strong/Strong.sty.js.map +1 -1
  165. package/esm/typography/text/Text.css +3 -3
  166. package/esm/typography/text/Text.js +4 -1
  167. package/esm/typography/text/Text.js.map +2 -2
  168. package/esm/typography/text/Text.sty.js +1 -1
  169. package/esm/typography/text/Text.sty.js.map +1 -1
  170. package/esm/typography/text-ellipsis/TextEllipsis.css +6 -6
  171. package/esm/typography/text-ellipsis/TextEllipsis.js +8 -1
  172. package/esm/typography/text-ellipsis/TextEllipsis.js.map +2 -2
  173. package/esm/typography/text-ellipsis/TextEllipsis.sty.js +2 -2
  174. package/esm/typography/text-ellipsis/TextEllipsis.sty.js.map +1 -1
  175. package/layouts/container/Container.css +4 -4
  176. package/layouts/container/Container.sty.js +1 -1
  177. package/layouts/divider/Divider.css +6 -6
  178. package/layouts/divider/Divider.sty.js +1 -1
  179. package/layouts/surface/Surface.css +39 -39
  180. package/layouts/surface/Surface.js +2 -6
  181. package/layouts/surface/Surface.sty.js +2 -2
  182. package/layouts/surface/variables.sty.js +1 -1
  183. package/package.json +3 -3
  184. package/styles/colorUtils.css +60 -60
  185. package/styles/colorUtils.sty.js +2 -2
  186. package/styles/container.css +47 -47
  187. package/styles/container.sty.js +2 -2
  188. package/styles/ellipsis.css +1 -1
  189. package/styles/ellipsis.sty.js +1 -1
  190. package/styles/field.css +153 -153
  191. package/styles/field.sty.js +2 -2
  192. package/styles/sprinkles.css +262 -262
  193. package/styles/sprinkles.sty.js +1 -1
  194. package/styles/textStyle.css +8 -8
  195. package/styles/textStyle.sty.js +1 -1
  196. package/typography/block-quote/Blockquote.css +2 -2
  197. package/typography/block-quote/Blockquote.js +3 -1
  198. package/typography/block-quote/Blockquote.sty.js +1 -1
  199. package/typography/code/Code.css +1 -1
  200. package/typography/code/Code.js +3 -1
  201. package/typography/code/Code.sty.js +1 -1
  202. package/typography/emphasis/Emphasis.css +1 -1
  203. package/typography/emphasis/Emphasis.js +3 -1
  204. package/typography/emphasis/Emphasis.sty.js +1 -1
  205. package/typography/external-link/ExternalLink.css +8 -5
  206. package/typography/external-link/ExternalLink.js +6 -13
  207. package/typography/external-link/ExternalLink.sty.js +2 -1
  208. package/typography/heading/Heading.css +7 -7
  209. package/typography/heading/Heading.js +3 -1
  210. package/typography/heading/Heading.sty.js +1 -1
  211. package/typography/highlight/Highlight.css +2 -2
  212. package/typography/highlight/Highlight.js +3 -1
  213. package/typography/highlight/Highlight.sty.js +1 -1
  214. package/typography/link/Link.css +6 -3
  215. package/typography/link/Link.js +6 -19
  216. package/typography/link/Link.sty.js +2 -1
  217. package/typography/list/List.css +4 -4
  218. package/typography/list/List.js +3 -1
  219. package/typography/list/List.sty.js +2 -2
  220. package/typography/paragraph/Paragraph.css +3 -3
  221. package/typography/paragraph/Paragraph.js +3 -1
  222. package/typography/paragraph/Paragraph.sty.js +1 -1
  223. package/typography/strikethrough/Strikethrough.css +1 -1
  224. package/typography/strikethrough/Strikethrough.js +3 -1
  225. package/typography/strikethrough/Strikethrough.sty.js +1 -1
  226. package/typography/strong/Strong.css +1 -1
  227. package/typography/strong/Strong.js +3 -1
  228. package/typography/strong/Strong.sty.js +1 -1
  229. package/typography/text/Text.css +3 -3
  230. package/typography/text/Text.js +4 -1
  231. package/typography/text/Text.sty.js +1 -1
  232. package/typography/text-ellipsis/TextEllipsis.css +6 -6
  233. package/typography/text-ellipsis/TextEllipsis.js +8 -1
  234. package/typography/text-ellipsis/TextEllipsis.sty.js +2 -2
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/typography/external-link/ExternalLink.css.ts"],
4
- "sourcesContent": ["import './ExternalLink.css';\nexport var externalLink = '_1v1skpy0-1-16-1';"],
5
- "mappings": "AAAA,OAAO;AACA,IAAI,eAAe;",
4
+ "sourcesContent": ["import '../../core/styles/focusRingStatic.css';\nimport './ExternalLink.css';\nexport var externalLink = '_1v1skpy0-1-17-0 _z0fq9b4-1-17-0 _z0fq9bc-1-17-0 _z0fq9b5-1-17-0 _z0fq9b8-1-17-0';"],
5
+ "mappings": "AAAA,OAAO;AACP,OAAO;AACA,IAAI,eAAe;",
6
6
  "names": []
7
7
  }
@@ -1,10 +1,10 @@
1
- ._5ei34w0-1-16-1 {
1
+ ._5ei34w0-1-17-0 {
2
2
  margin: 0;
3
3
  overflow-wrap: break-word;
4
4
  font-style: normal;
5
5
  color: inherit;
6
6
  }
7
- ._5ei34w1-1-16-1 {
7
+ ._5ei34w1-1-17-0 {
8
8
  font-family: var(--dt-typography-heading-level-1-family, DynatraceFlow,Roboto,Helvetica,sans-serif);
9
9
  font-size: var(--dt-typography-heading-level-1-size, 32px);
10
10
  font-weight: var(--dt-typography-heading-level-1-weight, 600);
@@ -12,7 +12,7 @@
12
12
  text-transform: var(--dt-typography-heading-level-1-text-transform, none);
13
13
  text-decoration: var(--dt-typography-heading-level-1-text-decoration, none);
14
14
  }
15
- ._5ei34w2-1-16-1 {
15
+ ._5ei34w2-1-17-0 {
16
16
  font-family: var(--dt-typography-heading-level-2-family, DynatraceFlow,Roboto,Helvetica,sans-serif);
17
17
  font-size: var(--dt-typography-heading-level-2-size, 28px);
18
18
  font-weight: var(--dt-typography-heading-level-2-weight, 600);
@@ -20,7 +20,7 @@
20
20
  text-transform: var(--dt-typography-heading-level-2-text-transform, none);
21
21
  text-decoration: var(--dt-typography-heading-level-2-text-decoration, none);
22
22
  }
23
- ._5ei34w3-1-16-1 {
23
+ ._5ei34w3-1-17-0 {
24
24
  font-family: var(--dt-typography-heading-level-3-family, DynatraceFlow,Roboto,Helvetica,sans-serif);
25
25
  font-size: var(--dt-typography-heading-level-3-size, 24px);
26
26
  font-weight: var(--dt-typography-heading-level-3-weight, 600);
@@ -28,7 +28,7 @@
28
28
  text-transform: var(--dt-typography-heading-level-3-text-transform, none);
29
29
  text-decoration: var(--dt-typography-heading-level-3-text-decoration, none);
30
30
  }
31
- ._5ei34w4-1-16-1 {
31
+ ._5ei34w4-1-17-0 {
32
32
  font-family: var(--dt-typography-heading-level-4-family, DynatraceFlow,Roboto,Helvetica,sans-serif);
33
33
  font-size: var(--dt-typography-heading-level-4-size, 20px);
34
34
  font-weight: var(--dt-typography-heading-level-4-weight, 600);
@@ -36,7 +36,7 @@
36
36
  text-transform: var(--dt-typography-heading-level-4-text-transform, none);
37
37
  text-decoration: var(--dt-typography-heading-level-4-text-decoration, none);
38
38
  }
39
- ._5ei34w5-1-16-1 {
39
+ ._5ei34w5-1-17-0 {
40
40
  font-family: var(--dt-typography-heading-level-5-family, DynatraceFlow,Roboto,Helvetica,sans-serif);
41
41
  font-size: var(--dt-typography-heading-level-5-size, 16px);
42
42
  font-weight: var(--dt-typography-heading-level-5-weight, 600);
@@ -44,7 +44,7 @@
44
44
  text-transform: var(--dt-typography-heading-level-5-text-transform, none);
45
45
  text-decoration: var(--dt-typography-heading-level-5-text-decoration, none);
46
46
  }
47
- ._5ei34w6-1-16-1 {
47
+ ._5ei34w6-1-17-0 {
48
48
  font-family: var(--dt-typography-heading-level-6-family, DynatraceFlow,Roboto,Helvetica,sans-serif);
49
49
  font-size: var(--dt-typography-heading-level-6-size, 14px);
50
50
  font-weight: var(--dt-typography-heading-level-6-weight, 600);
@@ -2,6 +2,7 @@ import { jsx } from "react/jsx-runtime";
2
2
  import clsx from "clsx";
3
3
  import { forwardRef } from "react";
4
4
  import { headingCSS } from "./Heading.sty.js";
5
+ const COMPONENT_NAME = "Heading";
5
6
  const Heading = /* @__PURE__ */ forwardRef((props, forwardedRef) => {
6
7
  const {
7
8
  level,
@@ -26,11 +27,12 @@ const Heading = /* @__PURE__ */ forwardRef((props, forwardedRef) => {
26
27
  className: clsx(headingCSS({ visualLevel }), consumerClassName),
27
28
  style: consumerStyle,
28
29
  ...remainingProps,
30
+ "data-dt-component": COMPONENT_NAME,
29
31
  children
30
32
  }
31
33
  );
32
34
  });
33
- Heading.displayName = "Heading";
35
+ Heading.displayName = COMPONENT_NAME;
34
36
  export {
35
37
  Heading
36
38
  };
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/typography/heading/Heading.tsx"],
4
- "sourcesContent": ["import clsx from 'clsx';\nimport { forwardRef } from 'react';\n\nimport { headingCSS } from './Heading.sty.js';\nimport type { DataTestId } from '../../core/types/data-props.js';\nimport type { DOMProps } from '../../core/types/dom.js';\nimport type { _HeadingTag } from '../../core/types/heading.js';\nimport type { MaskingProps } from '../../core/types/masking-props.js';\nimport type { StylingProps } from '../../core/types/styling-props.js';\nimport type { WithChildren } from '../../core/types/with-children.js';\n\n/**\n * Props used for the Heading component\n * @public\n */\nexport interface HeadingProps\n extends DOMProps,\n WithChildren,\n StylingProps,\n DataTestId,\n MaskingProps {\n /**\n * The visual level of the heading.\n * @defaultValue 1\n */\n level?: 1 | 2 | 3 | 4 | 5 | 6;\n /**\n * The polymorphed HTML tag that determines the semantic level of the heading.\n * @defaultValue 'h1'\n */\n as?: 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6';\n}\n\n/**\n * Use the `Heading` to render semantic HTML heading elements (`h1`, `h2`, etc.).\n * The component allows you to independently define both the visual and the semantic level of the heading.\n * @public\n */\nexport const Heading = /* @__PURE__ */ forwardRef<\n HTMLHeadingElement,\n HeadingProps\n>((props, forwardedRef) => {\n const {\n level,\n children,\n as,\n 'data-testid': dataTestId,\n 'data-dtrum-mask': dataDtrumMask,\n 'data-dtrum-allow': dataDtrumAllow,\n className: consumerClassName,\n style: consumerStyle,\n ...remainingProps\n } = props;\n\n const visualLevel = level ?? 1;\n // semantic level\n const HeadingTag: _HeadingTag = as ?? (`h${visualLevel}` as _HeadingTag);\n\n return (\n <HeadingTag\n ref={forwardedRef}\n data-testid={dataTestId}\n data-dtrum-mask={dataDtrumMask}\n data-dtrum-allow={dataDtrumAllow}\n className={clsx(headingCSS({ visualLevel }), consumerClassName)}\n style={consumerStyle}\n {...remainingProps}\n >\n {children}\n </HeadingTag>\n );\n});\n\n(Heading as typeof Heading & { displayName: string }).displayName = 'Heading';\n"],
5
- "mappings": "AA2DI;AA3DJ,OAAO,UAAU;AACjB,SAAS,kBAAkB;AAE3B,SAAS,kBAAkB;AAmCpB,MAAM,UAA0B,2BAGrC,CAAC,OAAO,iBAAiB;AACzB,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA,eAAe;AAAA,IACf,mBAAmB;AAAA,IACnB,oBAAoB;AAAA,IACpB,WAAW;AAAA,IACX,OAAO;AAAA,IACP,GAAG;AAAA,EACL,IAAI;AAEJ,QAAM,cAAc,SAAS;AAE7B,QAAM,aAA0B,MAAO,IAAI,WAAW;AAEtD,SACE;AAAA,IAAC;AAAA;AAAA,MACC,KAAK;AAAA,MACL,eAAa;AAAA,MACb,mBAAiB;AAAA,MACjB,oBAAkB;AAAA,MAClB,WAAW,KAAK,WAAW,EAAE,YAAY,CAAC,GAAG,iBAAiB;AAAA,MAC9D,OAAO;AAAA,MACN,GAAG;AAAA,MAEH;AAAA;AAAA,EACH;AAEJ,CAAC;AAEA,QAAqD,cAAc;",
4
+ "sourcesContent": ["import clsx from 'clsx';\nimport { forwardRef } from 'react';\n\nimport { headingCSS } from './Heading.sty.js';\nimport type { DataTestId } from '../../core/types/data-props.js';\nimport type { DOMProps } from '../../core/types/dom.js';\nimport type { _HeadingTag } from '../../core/types/heading.js';\nimport type { MaskingProps } from '../../core/types/masking-props.js';\nimport type { StylingProps } from '../../core/types/styling-props.js';\nimport type { WithChildren } from '../../core/types/with-children.js';\n\nconst COMPONENT_NAME = 'Heading';\n\n/**\n * Props used for the Heading component\n * @public\n */\nexport interface HeadingProps\n extends DOMProps,\n WithChildren,\n StylingProps,\n DataTestId,\n MaskingProps {\n /**\n * The visual level of the heading.\n * @defaultValue 1\n */\n level?: 1 | 2 | 3 | 4 | 5 | 6;\n /**\n * The polymorphed HTML tag that determines the semantic level of the heading.\n * @defaultValue 'h1'\n */\n as?: 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6';\n}\n\n/**\n * Use the `Heading` to render semantic HTML heading elements (`h1`, `h2`, etc.).\n * The component allows you to independently define both the visual and the semantic level of the heading.\n * @public\n */\nexport const Heading = /* @__PURE__ */ forwardRef<\n HTMLHeadingElement,\n HeadingProps\n>((props, forwardedRef) => {\n const {\n level,\n children,\n as,\n 'data-testid': dataTestId,\n 'data-dtrum-mask': dataDtrumMask,\n 'data-dtrum-allow': dataDtrumAllow,\n className: consumerClassName,\n style: consumerStyle,\n ...remainingProps\n } = props;\n\n const visualLevel = level ?? 1;\n // semantic level\n const HeadingTag: _HeadingTag = as ?? (`h${visualLevel}` as _HeadingTag);\n\n return (\n <HeadingTag\n ref={forwardedRef}\n data-testid={dataTestId}\n data-dtrum-mask={dataDtrumMask}\n data-dtrum-allow={dataDtrumAllow}\n className={clsx(headingCSS({ visualLevel }), consumerClassName)}\n style={consumerStyle}\n {...remainingProps}\n data-dt-component={COMPONENT_NAME}\n >\n {children}\n </HeadingTag>\n );\n});\n\n(Heading as typeof Heading & { displayName: string }).displayName =\n COMPONENT_NAME;\n"],
5
+ "mappings": "AA6DI;AA7DJ,OAAO,UAAU;AACjB,SAAS,kBAAkB;AAE3B,SAAS,kBAAkB;AAQ3B,MAAM,iBAAiB;AA6BhB,MAAM,UAA0B,2BAGrC,CAAC,OAAO,iBAAiB;AACzB,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA,eAAe;AAAA,IACf,mBAAmB;AAAA,IACnB,oBAAoB;AAAA,IACpB,WAAW;AAAA,IACX,OAAO;AAAA,IACP,GAAG;AAAA,EACL,IAAI;AAEJ,QAAM,cAAc,SAAS;AAE7B,QAAM,aAA0B,MAAO,IAAI,WAAW;AAEtD,SACE;AAAA,IAAC;AAAA;AAAA,MACC,KAAK;AAAA,MACL,eAAa;AAAA,MACb,mBAAiB;AAAA,MACjB,oBAAkB;AAAA,MAClB,WAAW,KAAK,WAAW,EAAE,YAAY,CAAC,GAAG,iBAAiB;AAAA,MAC9D,OAAO;AAAA,MACN,GAAG;AAAA,MACJ,qBAAmB;AAAA,MAElB;AAAA;AAAA,EACH;AAEJ,CAAC;AAEA,QAAqD,cACpD;",
6
6
  "names": []
7
7
  }
@@ -1,6 +1,6 @@
1
1
  import "./Heading.css";
2
2
  import { createRuntimeFn as _7a468 } from "@vanilla-extract/recipes/createRuntimeFn";
3
- var headingCSS = _7a468({ defaultClassName: "_5ei34w0-1-16-1", variantClassNames: { visualLevel: { "1": "_5ei34w1-1-16-1", "2": "_5ei34w2-1-16-1", "3": "_5ei34w3-1-16-1", "4": "_5ei34w4-1-16-1", "5": "_5ei34w5-1-16-1", "6": "_5ei34w6-1-16-1" } }, defaultVariants: {}, compoundVariants: [] });
3
+ var headingCSS = _7a468({ defaultClassName: "_5ei34w0-1-17-0", variantClassNames: { visualLevel: { "1": "_5ei34w1-1-17-0", "2": "_5ei34w2-1-17-0", "3": "_5ei34w3-1-17-0", "4": "_5ei34w4-1-17-0", "5": "_5ei34w5-1-17-0", "6": "_5ei34w6-1-17-0" } }, defaultVariants: {}, compoundVariants: [] });
4
4
  export {
5
5
  headingCSS
6
6
  };
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/typography/heading/Heading.css.ts"],
4
- "sourcesContent": ["import './Heading.css';\nimport { createRuntimeFn as _7a468 } from '@vanilla-extract/recipes/createRuntimeFn';\nexport var headingCSS = _7a468({defaultClassName:'_5ei34w0-1-16-1',variantClassNames:{visualLevel:{'1':'_5ei34w1-1-16-1','2':'_5ei34w2-1-16-1','3':'_5ei34w3-1-16-1','4':'_5ei34w4-1-16-1','5':'_5ei34w5-1-16-1','6':'_5ei34w6-1-16-1'}},defaultVariants:{},compoundVariants:[]});"],
4
+ "sourcesContent": ["import './Heading.css';\nimport { createRuntimeFn as _7a468 } from '@vanilla-extract/recipes/createRuntimeFn';\nexport var headingCSS = _7a468({defaultClassName:'_5ei34w0-1-17-0',variantClassNames:{visualLevel:{'1':'_5ei34w1-1-17-0','2':'_5ei34w2-1-17-0','3':'_5ei34w3-1-17-0','4':'_5ei34w4-1-17-0','5':'_5ei34w5-1-17-0','6':'_5ei34w6-1-17-0'}},defaultVariants:{},compoundVariants:[]});"],
5
5
  "mappings": "AAAA,OAAO;AACP,SAAS,mBAAmB,cAAc;AACnC,IAAI,aAAa,OAAO,EAAC,kBAAiB,mBAAkB,mBAAkB,EAAC,aAAY,EAAC,KAAI,mBAAkB,KAAI,mBAAkB,KAAI,mBAAkB,KAAI,mBAAkB,KAAI,mBAAkB,KAAI,kBAAiB,EAAC,GAAE,iBAAgB,CAAC,GAAE,kBAAiB,CAAC,EAAC,CAAC;",
6
6
  "names": []
7
7
  }
@@ -1,8 +1,8 @@
1
- ._lajjl30-1-16-1 {
1
+ ._lajjl30-1-17-0 {
2
2
  white-space: pre-wrap;
3
3
  flex: none;
4
4
  }
5
- ._lajjl30-1-16-1::highlight(strato-typography-highlight), ._lajjl30-1-16-1 *::highlight(strato-typography-highlight) {
5
+ ._lajjl30-1-17-0::highlight(strato-typography-highlight), ._lajjl30-1-17-0 *::highlight(strato-typography-highlight) {
6
6
  color: var(--dt-colors-text-neutral-on-accent-default, #f3f3f6);
7
7
  background: var(--dt-colors-background-container-neutral-accent, #5b5c81);
8
8
  }
@@ -4,6 +4,7 @@ import * as styles from "./Highlight.sty.js";
4
4
  import { createRangedHighlights } from "./utils/create-ranged-highlights.js";
5
5
  import { getOrCreateSharedHighlight } from "./utils/get-or-create-shared-highlight.js";
6
6
  import { devLog } from "../../core/utils/logging.js";
7
+ const COMPONENT_NAME = "Highlight";
7
8
  const Highlight = (props) => {
8
9
  const {
9
10
  children,
@@ -51,11 +52,12 @@ const Highlight = (props) => {
51
52
  "data-testid": dataTestId,
52
53
  "data-dtrum-mask": dataDtrumMask,
53
54
  "data-dtrum-allow": dataDtrumAllow,
55
+ "data-dt-component": COMPONENT_NAME,
54
56
  children
55
57
  }
56
58
  );
57
59
  };
58
- Highlight.displayName = "Highlight";
60
+ Highlight.displayName = COMPONENT_NAME;
59
61
  export {
60
62
  Highlight
61
63
  };
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/typography/highlight/Highlight.tsx"],
4
- "sourcesContent": ["import { useEffect, useMemo, useRef, type ReactElement } from 'react';\n\nimport * as styles from './Highlight.sty.js';\nimport { createRangedHighlights } from './utils/create-ranged-highlights.js';\nimport { getOrCreateSharedHighlight } from './utils/get-or-create-shared-highlight.js';\nimport type { DataTestId } from '../../core/types/data-props.js';\nimport type { MaskingProps } from '../../core/types/masking-props.js';\nimport type { WithChildren } from '../../core/types/with-children.js';\nimport { devLog } from '../../core/utils/logging.js';\n\n/**\n * The props for the Highlight component.\n * @public\n */\nexport interface HighlightProps extends WithChildren, DataTestId, MaskingProps {\n /**\n * Either a substring or an array of multiple different substrings that\n * should be highlighted in the projected content.\n * Every occurrence of the string(s) is highlighted accordingly.\n */\n term: string | string[];\n\n /**\n * Property that determines whether the highlighting search is case-sensitive.\n * If set to `true`, the component searches for case sensitive occurrences.\n * @defaultValue false\n */\n caseSensitive?: boolean;\n}\n\n/**\n * Use the `Highlight` component to highlight one or more substrings within a\n * text.\n * @public\n */\nexport const Highlight = (props: HighlightProps): ReactElement => {\n const {\n children,\n term,\n caseSensitive = false,\n 'data-testid': dataTestId,\n 'data-dtrum-mask': dataDtrumMask,\n 'data-dtrum-allow': dataDtrumAllow,\n } = props;\n const rootRef = useRef<HTMLSpanElement>(null);\n\n const terms = useMemo(() => {\n if (Array.isArray(term)) {\n return term.filter((t) => t);\n }\n\n return term ? [term] : [];\n }, [term]);\n\n const highlight = getOrCreateSharedHighlight();\n\n useEffect(() => {\n const currentElement = rootRef.current;\n const storedRanges: Array<Range> = [];\n\n if (currentElement) {\n const ranges = createRangedHighlights(\n currentElement,\n terms,\n caseSensitive,\n highlight,\n );\n storedRanges.push(...ranges);\n }\n\n return () => {\n for (const storedRange of storedRanges) {\n try {\n highlight.delete(storedRange);\n } catch {\n devLog('Failed to delete range', storedRange);\n }\n }\n };\n }, [children, highlight, terms, caseSensitive]);\n\n return (\n <span\n ref={rootRef}\n className={styles.wrapper}\n data-testid={dataTestId}\n data-dtrum-mask={dataDtrumMask}\n data-dtrum-allow={dataDtrumAllow}\n >\n {children}\n </span>\n );\n};\n\n(Highlight as typeof Highlight & { displayName: string }).displayName =\n 'Highlight';\n"],
5
- "mappings": "AAkFI;AAlFJ,SAAS,WAAW,SAAS,cAAiC;AAE9D,YAAY,YAAY;AACxB,SAAS,8BAA8B;AACvC,SAAS,kCAAkC;AAI3C,SAAS,cAAc;AA2BhB,MAAM,YAAY,CAAC,UAAwC;AAChE,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA,gBAAgB;AAAA,IAChB,eAAe;AAAA,IACf,mBAAmB;AAAA,IACnB,oBAAoB;AAAA,EACtB,IAAI;AACJ,QAAM,UAAU,OAAwB,IAAI;AAE5C,QAAM,QAAQ,QAAQ,MAAM;AAC1B,QAAI,MAAM,QAAQ,IAAI,GAAG;AACvB,aAAO,KAAK,OAAO,CAAC,MAAM,CAAC;AAAA,IAC7B;AAEA,WAAO,OAAO,CAAC,IAAI,IAAI,CAAC;AAAA,EAC1B,GAAG,CAAC,IAAI,CAAC;AAET,QAAM,YAAY,2BAA2B;AAE7C,YAAU,MAAM;AACd,UAAM,iBAAiB,QAAQ;AAC/B,UAAM,eAA6B,CAAC;AAEpC,QAAI,gBAAgB;AAClB,YAAM,SAAS;AAAA,QACb;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACF;AACA,mBAAa,KAAK,GAAG,MAAM;AAAA,IAC7B;AAEA,WAAO,MAAM;AACX,iBAAW,eAAe,cAAc;AACtC,YAAI;AACF,oBAAU,OAAO,WAAW;AAAA,QAC9B,QAAQ;AACN,iBAAO,0BAA0B,WAAW;AAAA,QAC9C;AAAA,MACF;AAAA,IACF;AAAA,EACF,GAAG,CAAC,UAAU,WAAW,OAAO,aAAa,CAAC;AAE9C,SACE;AAAA,IAAC;AAAA;AAAA,MACC,KAAK;AAAA,MACL,WAAW,OAAO;AAAA,MAClB,eAAa;AAAA,MACb,mBAAiB;AAAA,MACjB,oBAAkB;AAAA,MAEjB;AAAA;AAAA,EACH;AAEJ;AAEC,UAAyD,cACxD;",
4
+ "sourcesContent": ["import { useEffect, useMemo, useRef, type ReactElement } from 'react';\n\nimport * as styles from './Highlight.sty.js';\nimport { createRangedHighlights } from './utils/create-ranged-highlights.js';\nimport { getOrCreateSharedHighlight } from './utils/get-or-create-shared-highlight.js';\nimport type { DataTestId } from '../../core/types/data-props.js';\nimport type { MaskingProps } from '../../core/types/masking-props.js';\nimport type { WithChildren } from '../../core/types/with-children.js';\nimport { devLog } from '../../core/utils/logging.js';\n\nconst COMPONENT_NAME = 'Highlight';\n\n/**\n * The props for the Highlight component.\n * @public\n */\nexport interface HighlightProps extends WithChildren, DataTestId, MaskingProps {\n /**\n * Either a substring or an array of multiple different substrings that\n * should be highlighted in the projected content.\n * Every occurrence of the string(s) is highlighted accordingly.\n */\n term: string | string[];\n\n /**\n * Property that determines whether the highlighting search is case-sensitive.\n * If set to `true`, the component searches for case sensitive occurrences.\n * @defaultValue false\n */\n caseSensitive?: boolean;\n}\n\n/**\n * Use the `Highlight` component to highlight one or more substrings within a\n * text.\n * @public\n */\nexport const Highlight = (props: HighlightProps): ReactElement => {\n const {\n children,\n term,\n caseSensitive = false,\n 'data-testid': dataTestId,\n 'data-dtrum-mask': dataDtrumMask,\n 'data-dtrum-allow': dataDtrumAllow,\n } = props;\n const rootRef = useRef<HTMLSpanElement>(null);\n\n const terms = useMemo(() => {\n if (Array.isArray(term)) {\n return term.filter((t) => t);\n }\n\n return term ? [term] : [];\n }, [term]);\n\n const highlight = getOrCreateSharedHighlight();\n\n useEffect(() => {\n const currentElement = rootRef.current;\n const storedRanges: Array<Range> = [];\n\n if (currentElement) {\n const ranges = createRangedHighlights(\n currentElement,\n terms,\n caseSensitive,\n highlight,\n );\n storedRanges.push(...ranges);\n }\n\n return () => {\n for (const storedRange of storedRanges) {\n try {\n highlight.delete(storedRange);\n } catch {\n devLog('Failed to delete range', storedRange);\n }\n }\n };\n }, [children, highlight, terms, caseSensitive]);\n\n return (\n <span\n ref={rootRef}\n className={styles.wrapper}\n data-testid={dataTestId}\n data-dtrum-mask={dataDtrumMask}\n data-dtrum-allow={dataDtrumAllow}\n data-dt-component={COMPONENT_NAME}\n >\n {children}\n </span>\n );\n};\n\n(Highlight as typeof Highlight & { displayName: string }).displayName =\n COMPONENT_NAME;\n"],
5
+ "mappings": "AAoFI;AApFJ,SAAS,WAAW,SAAS,cAAiC;AAE9D,YAAY,YAAY;AACxB,SAAS,8BAA8B;AACvC,SAAS,kCAAkC;AAI3C,SAAS,cAAc;AAEvB,MAAM,iBAAiB;AA2BhB,MAAM,YAAY,CAAC,UAAwC;AAChE,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA,gBAAgB;AAAA,IAChB,eAAe;AAAA,IACf,mBAAmB;AAAA,IACnB,oBAAoB;AAAA,EACtB,IAAI;AACJ,QAAM,UAAU,OAAwB,IAAI;AAE5C,QAAM,QAAQ,QAAQ,MAAM;AAC1B,QAAI,MAAM,QAAQ,IAAI,GAAG;AACvB,aAAO,KAAK,OAAO,CAAC,MAAM,CAAC;AAAA,IAC7B;AAEA,WAAO,OAAO,CAAC,IAAI,IAAI,CAAC;AAAA,EAC1B,GAAG,CAAC,IAAI,CAAC;AAET,QAAM,YAAY,2BAA2B;AAE7C,YAAU,MAAM;AACd,UAAM,iBAAiB,QAAQ;AAC/B,UAAM,eAA6B,CAAC;AAEpC,QAAI,gBAAgB;AAClB,YAAM,SAAS;AAAA,QACb;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACF;AACA,mBAAa,KAAK,GAAG,MAAM;AAAA,IAC7B;AAEA,WAAO,MAAM;AACX,iBAAW,eAAe,cAAc;AACtC,YAAI;AACF,oBAAU,OAAO,WAAW;AAAA,QAC9B,QAAQ;AACN,iBAAO,0BAA0B,WAAW;AAAA,QAC9C;AAAA,MACF;AAAA,IACF;AAAA,EACF,GAAG,CAAC,UAAU,WAAW,OAAO,aAAa,CAAC;AAE9C,SACE;AAAA,IAAC;AAAA;AAAA,MACC,KAAK;AAAA,MACL,WAAW,OAAO;AAAA,MAClB,eAAa;AAAA,MACb,mBAAiB;AAAA,MACjB,oBAAkB;AAAA,MAClB,qBAAmB;AAAA,MAElB;AAAA;AAAA,EACH;AAEJ;AAEC,UAAyD,cACxD;",
6
6
  "names": []
7
7
  }
@@ -1,5 +1,5 @@
1
1
  import "./Highlight.css";
2
- var wrapper = "_lajjl30-1-16-1";
2
+ var wrapper = "_lajjl30-1-17-0";
3
3
  export {
4
4
  wrapper
5
5
  };
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/typography/highlight/Highlight.css.ts"],
4
- "sourcesContent": ["import './Highlight.css';\nexport var wrapper = '_lajjl30-1-16-1';"],
4
+ "sourcesContent": ["import './Highlight.css';\nexport var wrapper = '_lajjl30-1-17-0';"],
5
5
  "mappings": "AAAA,OAAO;AACA,IAAI,UAAU;",
6
6
  "names": []
7
7
  }
@@ -1,12 +1,15 @@
1
- ._1iksxp40-1-16-1 {
1
+ ._1iksxp40-1-17-0 {
2
2
  display: inline;
3
3
  color: var(--dt-colors-text-primary-default, #464cce);
4
4
  text-decoration: underline;
5
5
  overflow-wrap: anywhere;
6
6
  }
7
- ._1iksxp40-1-16-1:hover {
7
+ ._1iksxp40-1-17-0:hover {
8
8
  color: var(--dt-colors-text-primary-default-hover, #3431b3);
9
9
  }
10
- ._1iksxp40-1-16-1:active {
10
+ ._1iksxp40-1-17-0:active {
11
11
  color: var(--dt-colors-text-primary-default-active, #250f98);
12
+ }
13
+ ._1iksxp40-1-17-0:focus-visible {
14
+ text-decoration: none;
12
15
  }
@@ -2,8 +2,7 @@ import { jsx } from "react/jsx-runtime";
2
2
  import clsx from "clsx";
3
3
  import { forwardRef } from "react";
4
4
  import * as styles from "./Link.sty.js";
5
- import { useFocusRing } from "../../core/styles/useFocusRing.js";
6
- import { mergeProps } from "../../core/utils/merge-props.js";
5
+ const COMPONENT_NAME = "Link";
7
6
  const Link = /* @__PURE__ */ forwardRef(
8
7
  ({
9
8
  children,
@@ -15,10 +14,6 @@ const Link = /* @__PURE__ */ forwardRef(
15
14
  style: consumerStyle,
16
15
  ...remainingProps
17
16
  }, ref) => {
18
- const { focusProps, focusClassName, isFocusVisible } = useFocusRing({
19
- variant: "primary",
20
- isMinimal: true
21
- });
22
17
  const LinkTag = as || "a";
23
18
  return /* @__PURE__ */ jsx(
24
19
  LinkTag,
@@ -27,24 +22,16 @@ const Link = /* @__PURE__ */ forwardRef(
27
22
  "data-testid": dataTestId,
28
23
  "data-dtrum-mask": dataDtrumMask,
29
24
  "data-dtrum-allow": dataDtrumAllow,
30
- className: clsx(focusClassName, styles.link, consumerClassName),
31
- style: {
32
- ...isFocusVisible && { textDecoration: "none" },
33
- ...consumerStyle
34
- },
35
- ...mergeProps(
36
- // Need to cast this one as the inference of mergeProps would generate
37
- // a not allowed overlap. The remainingProps type is too complex due to the
38
- // polymorphic inheritance.
39
- remainingProps,
40
- focusProps
41
- ),
25
+ className: clsx(styles.link, consumerClassName),
26
+ style: consumerStyle,
27
+ ...remainingProps,
28
+ "data-dt-component": COMPONENT_NAME,
42
29
  children
43
30
  }
44
31
  );
45
32
  }
46
33
  );
47
- Link.displayName = "Link";
34
+ Link.displayName = COMPONENT_NAME;
48
35
  export {
49
36
  Link
50
37
  };
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/typography/link/Link.tsx"],
4
- "sourcesContent": ["import clsx from 'clsx';\nimport { type ElementType, forwardRef, type ReactElement } from 'react';\n\nimport * as styles from './Link.sty.js';\nimport { useFocusRing } from '../../core/styles/useFocusRing.js';\nimport type { DataTestId } from '../../core/types/data-props.js';\nimport type { MaskingProps } from '../../core/types/masking-props.js';\nimport type { PolymorphicComponentProps } from '../../core/types/polymorph.js';\nimport type { StylingProps } from '../../core/types/styling-props.js';\nimport type { WithChildren } from '../../core/types/with-children.js';\nimport { mergeProps } from '../../core/utils/merge-props.js';\n\n/**\n * The props for the Link component.\n * @public\n */\nexport type LinkProps<E extends ElementType> = PolymorphicComponentProps<\n E,\n WithChildren & StylingProps & DataTestId & MaskingProps\n>;\n\n/**\n * Use the `Link` component to link to any internal resources.\n * For external resources (i.e., outside the current environment), use the\n * {@link https://developer.dynatrace.com/design/components/typography/ExternalLink/ | `ExternalLink`}\n * component instead.\n * @public\n */\nexport const Link: <E extends ElementType = 'a'>(\n props: LinkProps<E>,\n) => ReactElement | null = /* @__PURE__ */ forwardRef(\n <E extends ElementType>(\n {\n children,\n as,\n 'data-testid': dataTestId,\n 'data-dtrum-mask': dataDtrumMask,\n 'data-dtrum-allow': dataDtrumAllow,\n className: consumerClassName,\n style: consumerStyle,\n ...remainingProps\n }: LinkProps<E>,\n ref: typeof remainingProps.ref,\n ) => {\n const { focusProps, focusClassName, isFocusVisible } = useFocusRing({\n variant: 'primary',\n isMinimal: true,\n });\n const LinkTag = as || 'a';\n\n return (\n <LinkTag\n ref={ref}\n data-testid={dataTestId}\n data-dtrum-mask={dataDtrumMask}\n data-dtrum-allow={dataDtrumAllow}\n className={clsx(focusClassName, styles.link, consumerClassName)}\n style={{\n ...(isFocusVisible && { textDecoration: 'none' }),\n ...consumerStyle,\n }}\n {...mergeProps(\n // Need to cast this one as the inference of mergeProps would generate\n // a not allowed overlap. The remainingProps type is too complex due to the\n // polymorphic inheritance.\n remainingProps as Record<string, unknown>,\n focusProps,\n )}\n >\n {children}\n </LinkTag>\n );\n },\n);\n\n(Link as typeof Link & { displayName: string }).displayName = 'Link';\n"],
5
- "mappings": "AAmDM;AAnDN,OAAO,UAAU;AACjB,SAA2B,kBAAqC;AAEhE,YAAY,YAAY;AACxB,SAAS,oBAAoB;AAM7B,SAAS,kBAAkB;AAkBpB,MAAM,OAE8B;AAAA,EACzC,CACE;AAAA,IACE;AAAA,IACA;AAAA,IACA,eAAe;AAAA,IACf,mBAAmB;AAAA,IACnB,oBAAoB;AAAA,IACpB,WAAW;AAAA,IACX,OAAO;AAAA,IACP,GAAG;AAAA,EACL,GACA,QACG;AACH,UAAM,EAAE,YAAY,gBAAgB,eAAe,IAAI,aAAa;AAAA,MAClE,SAAS;AAAA,MACT,WAAW;AAAA,IACb,CAAC;AACD,UAAM,UAAU,MAAM;AAEtB,WACE;AAAA,MAAC;AAAA;AAAA,QACC;AAAA,QACA,eAAa;AAAA,QACb,mBAAiB;AAAA,QACjB,oBAAkB;AAAA,QAClB,WAAW,KAAK,gBAAgB,OAAO,MAAM,iBAAiB;AAAA,QAC9D,OAAO;AAAA,UACL,GAAI,kBAAkB,EAAE,gBAAgB,OAAO;AAAA,UAC/C,GAAG;AAAA,QACL;AAAA,QACC,GAAG;AAAA;AAAA;AAAA;AAAA,UAIF;AAAA,UACA;AAAA,QACF;AAAA,QAEC;AAAA;AAAA,IACH;AAAA,EAEJ;AACF;AAEC,KAA+C,cAAc;",
4
+ "sourcesContent": ["import clsx from 'clsx';\nimport { type ElementType, forwardRef, type ReactElement } from 'react';\n\nimport * as styles from './Link.sty.js';\nimport type { DataTestId } from '../../core/types/data-props.js';\nimport type { MaskingProps } from '../../core/types/masking-props.js';\nimport type { PolymorphicComponentProps } from '../../core/types/polymorph.js';\nimport type { StylingProps } from '../../core/types/styling-props.js';\nimport type { WithChildren } from '../../core/types/with-children.js';\n\nconst COMPONENT_NAME = 'Link';\n\n/**\n * The props for the Link component.\n * @public\n */\nexport type LinkProps<E extends ElementType> = PolymorphicComponentProps<\n E,\n WithChildren & StylingProps & DataTestId & MaskingProps\n>;\n\n/**\n * Use the `Link` component to link to any internal resources.\n * For external resources (i.e., outside the current environment), use the\n * {@link https://developer.dynatrace.com/design/components/typography/ExternalLink/ | `ExternalLink`}\n * component instead.\n * @public\n */\nexport const Link: <E extends ElementType = 'a'>(\n props: LinkProps<E>,\n) => ReactElement | null = /* @__PURE__ */ forwardRef(\n <E extends ElementType>(\n {\n children,\n as,\n 'data-testid': dataTestId,\n 'data-dtrum-mask': dataDtrumMask,\n 'data-dtrum-allow': dataDtrumAllow,\n className: consumerClassName,\n style: consumerStyle,\n ...remainingProps\n }: LinkProps<E>,\n ref: typeof remainingProps.ref,\n ) => {\n const LinkTag = as || 'a';\n\n return (\n <LinkTag\n ref={ref}\n data-testid={dataTestId}\n data-dtrum-mask={dataDtrumMask}\n data-dtrum-allow={dataDtrumAllow}\n className={clsx(styles.link, consumerClassName)}\n style={consumerStyle}\n {...remainingProps}\n data-dt-component={COMPONENT_NAME}\n >\n {children}\n </LinkTag>\n );\n },\n);\n\n(Link as typeof Link & { displayName: string }).displayName = COMPONENT_NAME;\n"],
5
+ "mappings": "AA+CM;AA/CN,OAAO,UAAU;AACjB,SAA2B,kBAAqC;AAEhE,YAAY,YAAY;AAOxB,MAAM,iBAAiB;AAkBhB,MAAM,OAE8B;AAAA,EACzC,CACE;AAAA,IACE;AAAA,IACA;AAAA,IACA,eAAe;AAAA,IACf,mBAAmB;AAAA,IACnB,oBAAoB;AAAA,IACpB,WAAW;AAAA,IACX,OAAO;AAAA,IACP,GAAG;AAAA,EACL,GACA,QACG;AACH,UAAM,UAAU,MAAM;AAEtB,WACE;AAAA,MAAC;AAAA;AAAA,QACC;AAAA,QACA,eAAa;AAAA,QACb,mBAAiB;AAAA,QACjB,oBAAkB;AAAA,QAClB,WAAW,KAAK,OAAO,MAAM,iBAAiB;AAAA,QAC9C,OAAO;AAAA,QACN,GAAG;AAAA,QACJ,qBAAmB;AAAA,QAElB;AAAA;AAAA,IACH;AAAA,EAEJ;AACF;AAEC,KAA+C,cAAc;",
6
6
  "names": []
7
7
  }
@@ -1,5 +1,6 @@
1
+ import "../../core/styles/focusRingStatic.css";
1
2
  import "./Link.css";
2
- var link = "_1iksxp40-1-16-1";
3
+ var link = "_1iksxp40-1-17-0 _z0fq9b4-1-17-0 _z0fq9bc-1-17-0 _z0fq9b5-1-17-0 _z0fq9b8-1-17-0";
3
4
  export {
4
5
  link
5
6
  };
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/typography/link/Link.css.ts"],
4
- "sourcesContent": ["import './Link.css';\nexport var link = '_1iksxp40-1-16-1';"],
5
- "mappings": "AAAA,OAAO;AACA,IAAI,OAAO;",
4
+ "sourcesContent": ["import '../../core/styles/focusRingStatic.css';\nimport './Link.css';\nexport var link = '_1iksxp40-1-17-0 _z0fq9b4-1-17-0 _z0fq9bc-1-17-0 _z0fq9b5-1-17-0 _z0fq9b8-1-17-0';"],
5
+ "mappings": "AAAA,OAAO;AACP,OAAO;AACA,IAAI,OAAO;",
6
6
  "names": []
7
7
  }
@@ -1,16 +1,16 @@
1
- ._16276mt0-1-16-1 {
1
+ ._16276mt0-1-17-0 {
2
2
  margin: 0;
3
3
  padding-left: var(--dt-spacings-size-40, 40px);
4
4
  }
5
- ._16276mt0-1-16-1 ._16276mt0-1-16-1 {
5
+ ._16276mt0-1-17-0 ._16276mt0-1-17-0 {
6
6
  margin-block: var(--dt-spacings-size-4, 4px);
7
7
  padding-left: var(--dt-spacings-size-28, 28px);
8
8
  }
9
- ._16276mt1-1-16-1 {
9
+ ._16276mt1-1-17-0 {
10
10
  position: relative;
11
11
  overflow-wrap: break-word;
12
12
  margin-block: var(--dt-spacings-size-2, 2px);
13
13
  }
14
- ._16276mt1-1-16-1::marker {
14
+ ._16276mt1-1-17-0::marker {
15
15
  font-weight: var(--dt-typography-text-base-emphasized-weight, 500);
16
16
  }
@@ -7,6 +7,7 @@ import {
7
7
  } from "react";
8
8
  import { listCSS, listItemCSS } from "./List.sty.js";
9
9
  import { Text } from "../text/Text.js";
10
+ const COMPONENT_NAME = "List";
10
11
  function interleaveListItems(listItems) {
11
12
  const items = [];
12
13
  Children.forEach(listItems, (listItem) => {
@@ -74,12 +75,13 @@ const List = /* @__PURE__ */ forwardRef(
74
75
  className: clsx(listCSS, consumerClassName),
75
76
  style: consumerStyle,
76
77
  ...remainingProps,
78
+ "data-dt-component": COMPONENT_NAME,
77
79
  children: interleaveListItems(children)
78
80
  }
79
81
  );
80
82
  }
81
83
  );
82
- List.displayName = "List";
84
+ List.displayName = COMPONENT_NAME;
83
85
  export {
84
86
  List
85
87
  };
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/typography/list/List.tsx"],
4
- "sourcesContent": ["import clsx from 'clsx';\nimport {\n Children,\n forwardRef,\n isValidElement,\n type ForwardedRef,\n type PropsWithChildren,\n type ReactNode,\n} from 'react';\n\nimport { listCSS, listItemCSS } from './List.sty.js';\nimport { type DataTestId } from '../../core/types/data-props.js';\nimport { type MaskingProps } from '../../core/types/masking-props.js';\nimport { type StylingProps } from '../../core/types/styling-props.js';\nimport { type WithChildren } from '../../core/types/with-children.js';\nimport { Text } from '../text/Text.js';\n\n/**\n * The props for the Link component.\n * @public\n */\nexport interface ListProps<TOrdered extends boolean = false>\n extends WithChildren,\n StylingProps,\n DataTestId,\n MaskingProps {\n /**\n * Whether the List is ordered or not. This changes whether numbers or bullets are used.\n * @defaultValue false\n */\n ordered?: TOrdered;\n /**\n * Sets the text style for the List.\n * @defaultValue 'base'\n */\n textStyle?: 'base' | 'base-emphasized' | 'small' | 'small-emphasized';\n /**\n * Sets the text style for the List.\n * @defaultValue 'text'\n */\n fontStyle?: 'text' | 'code';\n /**\n * Sets the starting number of the first item in an ordered list.\n * The value is always treated as an integer (floor).\n * @defaultValue 1\n */\n start?: number;\n}\n\n/** Maps a list of (potentially) nested list items to HTML list structure. */\nfunction interleaveListItems(listItems: ReactNode) {\n const items: ReactNode[][] = [];\n\n Children.forEach(listItems, (listItem) => {\n if (isValidElement(listItem)) {\n if (listItem.type === List) {\n if (items.length === 0) {\n items.push([listItem]);\n } else {\n items[items.length - 1].push(listItem);\n }\n } else {\n items.push([listItem]);\n }\n }\n });\n\n return items.map((values, index) => {\n const itemKey = `list-item-${getItemKey(values, index)}`;\n return (\n <li key={itemKey} className={listItemCSS}>\n {values}\n </li>\n );\n });\n}\n\n/**\n * Generates a key for a list item. We try to avoid\n * generating [Object object] by looking down levels\n * recursively. If there is an existing key defined in\n * a descendant uses that as part of the key otherwise\n * if we get a string value, use that. Otherwise uses\n * the index if nothing was found.\n * @param values - nodes inside the list item\n * @param index - current zero based index\n * @returns a key generated for the item\n */\nfunction getItemKey(values: ReactNode, index: number): string | number {\n const isArray = Array.isArray(values);\n const value = isArray ? values?.[0] : values;\n if (isValidElement<PropsWithChildren>(value)) {\n if (value.key) {\n return value.key;\n } else if (value.props && value.props.children) {\n return getItemKey(value.props.children, index);\n }\n return value as unknown as string | number;\n }\n\n if (value === undefined) {\n return index;\n }\n\n return value as unknown as string | number;\n}\n\n/**\n * The `List` component groups a set of related content in a list and can be arbitrarily nested.\n * List items are preceded by either a consecutive number (for ordered lists) or a bullet point\n * (for unordered lists).\n * @public\n */\nexport const List = /* @__PURE__ */ forwardRef(\n <TOrdered extends boolean = false>(\n props: ListProps<TOrdered>,\n ref: ForwardedRef<\n TOrdered extends true ? HTMLOListElement : HTMLUListElement\n >,\n ) => {\n const {\n children,\n ordered = undefined,\n textStyle,\n fontStyle,\n start = 1,\n 'data-testid': dataTestId,\n 'data-dtrum-mask': dataDtrumMask,\n 'data-dtrum-allow': dataDtrumAllow,\n className: consumerClassName,\n style: consumerStyle,\n ...remainingProps\n } = props;\n\n return (\n <Text\n ref={ref}\n as={ordered ? 'ol' : 'ul'}\n {...(ordered && {\n start,\n })}\n textStyle={textStyle}\n fontStyle={fontStyle}\n data-testid={dataTestId}\n data-dtrum-mask={dataDtrumMask}\n data-dtrum-allow={dataDtrumAllow}\n className={clsx(listCSS, consumerClassName)}\n style={consumerStyle}\n {...remainingProps}\n >\n {interleaveListItems(children)}\n </Text>\n );\n },\n);\n\n(List as typeof List & { displayName: string }).displayName = 'List';\n"],
5
- "mappings": "AAsEM;AAtEN,OAAO,UAAU;AACjB;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,OAIK;AAEP,SAAS,SAAS,mBAAmB;AAKrC,SAAS,YAAY;AAmCrB,SAAS,oBAAoB,WAAsB;AACjD,QAAM,QAAuB,CAAC;AAE9B,WAAS,QAAQ,WAAW,CAAC,aAAa;AACxC,QAAI,eAAe,QAAQ,GAAG;AAC5B,UAAI,SAAS,SAAS,MAAM;AAC1B,YAAI,MAAM,WAAW,GAAG;AACtB,gBAAM,KAAK,CAAC,QAAQ,CAAC;AAAA,QACvB,OAAO;AACL,gBAAM,MAAM,SAAS,CAAC,EAAE,KAAK,QAAQ;AAAA,QACvC;AAAA,MACF,OAAO;AACL,cAAM,KAAK,CAAC,QAAQ,CAAC;AAAA,MACvB;AAAA,IACF;AAAA,EACF,CAAC;AAED,SAAO,MAAM,IAAI,CAAC,QAAQ,UAAU;AAClC,UAAM,UAAU,aAAa,WAAW,QAAQ,KAAK,CAAC;AACtD,WACE,oBAAC,QAAiB,WAAW,aAC1B,oBADM,OAET;AAAA,EAEJ,CAAC;AACH;AAaA,SAAS,WAAW,QAAmB,OAAgC;AACrE,QAAM,UAAU,MAAM,QAAQ,MAAM;AACpC,QAAM,QAAQ,UAAU,SAAS,CAAC,IAAI;AACtC,MAAI,eAAkC,KAAK,GAAG;AAC5C,QAAI,MAAM,KAAK;AACb,aAAO,MAAM;AAAA,IACf,WAAW,MAAM,SAAS,MAAM,MAAM,UAAU;AAC9C,aAAO,WAAW,MAAM,MAAM,UAAU,KAAK;AAAA,IAC/C;AACA,WAAO;AAAA,EACT;AAEA,MAAI,UAAU,QAAW;AACvB,WAAO;AAAA,EACT;AAEA,SAAO;AACT;AAQO,MAAM,OAAuB;AAAA,EAClC,CACE,OACA,QAGG;AACH,UAAM;AAAA,MACJ;AAAA,MACA,UAAU;AAAA,MACV;AAAA,MACA;AAAA,MACA,QAAQ;AAAA,MACR,eAAe;AAAA,MACf,mBAAmB;AAAA,MACnB,oBAAoB;AAAA,MACpB,WAAW;AAAA,MACX,OAAO;AAAA,MACP,GAAG;AAAA,IACL,IAAI;AAEJ,WACE;AAAA,MAAC;AAAA;AAAA,QACC;AAAA,QACA,IAAI,UAAU,OAAO;AAAA,QACpB,GAAI,WAAW;AAAA,UACd;AAAA,QACF;AAAA,QACA;AAAA,QACA;AAAA,QACA,eAAa;AAAA,QACb,mBAAiB;AAAA,QACjB,oBAAkB;AAAA,QAClB,WAAW,KAAK,SAAS,iBAAiB;AAAA,QAC1C,OAAO;AAAA,QACN,GAAG;AAAA,QAEH,8BAAoB,QAAQ;AAAA;AAAA,IAC/B;AAAA,EAEJ;AACF;AAEC,KAA+C,cAAc;",
4
+ "sourcesContent": ["import clsx from 'clsx';\nimport {\n Children,\n forwardRef,\n isValidElement,\n type ForwardedRef,\n type PropsWithChildren,\n type ReactNode,\n} from 'react';\n\nimport { listCSS, listItemCSS } from './List.sty.js';\nimport { type DataTestId } from '../../core/types/data-props.js';\nimport { type MaskingProps } from '../../core/types/masking-props.js';\nimport { type StylingProps } from '../../core/types/styling-props.js';\nimport { type WithChildren } from '../../core/types/with-children.js';\nimport { Text } from '../text/Text.js';\n\nconst COMPONENT_NAME = 'List';\n\n/**\n * The props for the Link component.\n * @public\n */\nexport interface ListProps<TOrdered extends boolean = false>\n extends WithChildren,\n StylingProps,\n DataTestId,\n MaskingProps {\n /**\n * Whether the List is ordered or not. This changes whether numbers or bullets are used.\n * @defaultValue false\n */\n ordered?: TOrdered;\n /**\n * Sets the text style for the List.\n * @defaultValue 'base'\n */\n textStyle?: 'base' | 'base-emphasized' | 'small' | 'small-emphasized';\n /**\n * Sets the text style for the List.\n * @defaultValue 'text'\n */\n fontStyle?: 'text' | 'code';\n /**\n * Sets the starting number of the first item in an ordered list.\n * The value is always treated as an integer (floor).\n * @defaultValue 1\n */\n start?: number;\n}\n\n/** Maps a list of (potentially) nested list items to HTML list structure. */\nfunction interleaveListItems(listItems: ReactNode) {\n const items: ReactNode[][] = [];\n\n Children.forEach(listItems, (listItem) => {\n if (isValidElement(listItem)) {\n if (listItem.type === List) {\n if (items.length === 0) {\n items.push([listItem]);\n } else {\n items[items.length - 1].push(listItem);\n }\n } else {\n items.push([listItem]);\n }\n }\n });\n\n return items.map((values, index) => {\n const itemKey = `list-item-${getItemKey(values, index)}`;\n return (\n <li key={itemKey} className={listItemCSS}>\n {values}\n </li>\n );\n });\n}\n\n/**\n * Generates a key for a list item. We try to avoid\n * generating [Object object] by looking down levels\n * recursively. If there is an existing key defined in\n * a descendant uses that as part of the key otherwise\n * if we get a string value, use that. Otherwise uses\n * the index if nothing was found.\n * @param values - nodes inside the list item\n * @param index - current zero based index\n * @returns a key generated for the item\n */\nfunction getItemKey(values: ReactNode, index: number): string | number {\n const isArray = Array.isArray(values);\n const value = isArray ? values?.[0] : values;\n if (isValidElement<PropsWithChildren>(value)) {\n if (value.key) {\n return value.key;\n } else if (value.props && value.props.children) {\n return getItemKey(value.props.children, index);\n }\n return value as unknown as string | number;\n }\n\n if (value === undefined) {\n return index;\n }\n\n return value as unknown as string | number;\n}\n\n/**\n * The `List` component groups a set of related content in a list and can be arbitrarily nested.\n * List items are preceded by either a consecutive number (for ordered lists) or a bullet point\n * (for unordered lists).\n * @public\n */\nexport const List = /* @__PURE__ */ forwardRef(\n <TOrdered extends boolean = false>(\n props: ListProps<TOrdered>,\n ref: ForwardedRef<\n TOrdered extends true ? HTMLOListElement : HTMLUListElement\n >,\n ) => {\n const {\n children,\n ordered = undefined,\n textStyle,\n fontStyle,\n start = 1,\n 'data-testid': dataTestId,\n 'data-dtrum-mask': dataDtrumMask,\n 'data-dtrum-allow': dataDtrumAllow,\n className: consumerClassName,\n style: consumerStyle,\n ...remainingProps\n } = props;\n\n return (\n <Text\n ref={ref}\n as={ordered ? 'ol' : 'ul'}\n {...(ordered && {\n start,\n })}\n textStyle={textStyle}\n fontStyle={fontStyle}\n data-testid={dataTestId}\n data-dtrum-mask={dataDtrumMask}\n data-dtrum-allow={dataDtrumAllow}\n className={clsx(listCSS, consumerClassName)}\n style={consumerStyle}\n {...remainingProps}\n data-dt-component={COMPONENT_NAME}\n >\n {interleaveListItems(children)}\n </Text>\n );\n },\n);\n\n(List as typeof List & { displayName: string }).displayName = COMPONENT_NAME;\n"],
5
+ "mappings": "AAwEM;AAxEN,OAAO,UAAU;AACjB;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,OAIK;AAEP,SAAS,SAAS,mBAAmB;AAKrC,SAAS,YAAY;AAErB,MAAM,iBAAiB;AAmCvB,SAAS,oBAAoB,WAAsB;AACjD,QAAM,QAAuB,CAAC;AAE9B,WAAS,QAAQ,WAAW,CAAC,aAAa;AACxC,QAAI,eAAe,QAAQ,GAAG;AAC5B,UAAI,SAAS,SAAS,MAAM;AAC1B,YAAI,MAAM,WAAW,GAAG;AACtB,gBAAM,KAAK,CAAC,QAAQ,CAAC;AAAA,QACvB,OAAO;AACL,gBAAM,MAAM,SAAS,CAAC,EAAE,KAAK,QAAQ;AAAA,QACvC;AAAA,MACF,OAAO;AACL,cAAM,KAAK,CAAC,QAAQ,CAAC;AAAA,MACvB;AAAA,IACF;AAAA,EACF,CAAC;AAED,SAAO,MAAM,IAAI,CAAC,QAAQ,UAAU;AAClC,UAAM,UAAU,aAAa,WAAW,QAAQ,KAAK,CAAC;AACtD,WACE,oBAAC,QAAiB,WAAW,aAC1B,oBADM,OAET;AAAA,EAEJ,CAAC;AACH;AAaA,SAAS,WAAW,QAAmB,OAAgC;AACrE,QAAM,UAAU,MAAM,QAAQ,MAAM;AACpC,QAAM,QAAQ,UAAU,SAAS,CAAC,IAAI;AACtC,MAAI,eAAkC,KAAK,GAAG;AAC5C,QAAI,MAAM,KAAK;AACb,aAAO,MAAM;AAAA,IACf,WAAW,MAAM,SAAS,MAAM,MAAM,UAAU;AAC9C,aAAO,WAAW,MAAM,MAAM,UAAU,KAAK;AAAA,IAC/C;AACA,WAAO;AAAA,EACT;AAEA,MAAI,UAAU,QAAW;AACvB,WAAO;AAAA,EACT;AAEA,SAAO;AACT;AAQO,MAAM,OAAuB;AAAA,EAClC,CACE,OACA,QAGG;AACH,UAAM;AAAA,MACJ;AAAA,MACA,UAAU;AAAA,MACV;AAAA,MACA;AAAA,MACA,QAAQ;AAAA,MACR,eAAe;AAAA,MACf,mBAAmB;AAAA,MACnB,oBAAoB;AAAA,MACpB,WAAW;AAAA,MACX,OAAO;AAAA,MACP,GAAG;AAAA,IACL,IAAI;AAEJ,WACE;AAAA,MAAC;AAAA;AAAA,QACC;AAAA,QACA,IAAI,UAAU,OAAO;AAAA,QACpB,GAAI,WAAW;AAAA,UACd;AAAA,QACF;AAAA,QACA;AAAA,QACA;AAAA,QACA,eAAa;AAAA,QACb,mBAAiB;AAAA,QACjB,oBAAkB;AAAA,QAClB,WAAW,KAAK,SAAS,iBAAiB;AAAA,QAC1C,OAAO;AAAA,QACN,GAAG;AAAA,QACJ,qBAAmB;AAAA,QAElB,8BAAoB,QAAQ;AAAA;AAAA,IAC/B;AAAA,EAEJ;AACF;AAEC,KAA+C,cAAc;",
6
6
  "names": []
7
7
  }
@@ -1,6 +1,6 @@
1
1
  import "./List.css";
2
- var listCSS = "_16276mt0-1-16-1";
3
- var listItemCSS = "_16276mt1-1-16-1";
2
+ var listCSS = "_16276mt0-1-17-0";
3
+ var listItemCSS = "_16276mt1-1-17-0";
4
4
  export {
5
5
  listCSS,
6
6
  listItemCSS
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/typography/list/List.css.ts"],
4
- "sourcesContent": ["import './List.css';\nexport var listCSS = '_16276mt0-1-16-1';\nexport var listItemCSS = '_16276mt1-1-16-1';"],
4
+ "sourcesContent": ["import './List.css';\nexport var listCSS = '_16276mt0-1-17-0';\nexport var listItemCSS = '_16276mt1-1-17-0';"],
5
5
  "mappings": "AAAA,OAAO;AACA,IAAI,UAAU;AACd,IAAI,cAAc;",
6
6
  "names": []
7
7
  }
@@ -1,17 +1,17 @@
1
- ._487p2n0-1-16-1 {
1
+ ._487p2n0-1-17-0 {
2
2
  margin-top: 0;
3
3
  margin-bottom: 0;
4
4
  overflow-wrap: break-word;
5
5
  color: inherit;
6
6
  font-style: normal;
7
7
  }
8
- ._487p2n1-1-16-1 {
8
+ ._487p2n1-1-17-0 {
9
9
  display: block;
10
10
  white-space: nowrap;
11
11
  text-overflow: ellipsis;
12
12
  overflow: hidden;
13
13
  }
14
- ._487p2n2-1-16-1 {
14
+ ._487p2n2-1-17-0 {
15
15
  display: -webkit-box;
16
16
  -webkit-line-clamp: var(--strato-ellipsis-line-clamp);
17
17
  -webkit-box-orient: vertical;
@@ -3,6 +3,7 @@ import clsx from "clsx";
3
3
  import { forwardRef } from "react";
4
4
  import { paragraph } from "./Paragraph.sty.js";
5
5
  import { textStyle } from "../../styles/textStyle.sty.js";
6
+ const COMPONENT_NAME = "Paragraph";
6
7
  const Paragraph = /* @__PURE__ */ forwardRef((props, ref) => {
7
8
  const {
8
9
  children,
@@ -35,11 +36,12 @@ const Paragraph = /* @__PURE__ */ forwardRef((props, ref) => {
35
36
  "--strato-ellipsis-line-clamp": maxLines
36
37
  },
37
38
  ...remainingProps,
39
+ "data-dt-component": COMPONENT_NAME,
38
40
  children
39
41
  }
40
42
  );
41
43
  });
42
- Paragraph.displayName = "Paragraph";
44
+ Paragraph.displayName = COMPONENT_NAME;
43
45
  export {
44
46
  Paragraph
45
47
  };
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/typography/paragraph/Paragraph.tsx"],
4
- "sourcesContent": ["import clsx from 'clsx';\nimport { type CSSProperties, forwardRef } from 'react';\n\nimport { paragraph } from './Paragraph.sty.js';\nimport type { DataTestId } from '../../core/types/data-props.js';\nimport type { DOMProps } from '../../core/types/dom.js';\nimport type { MaskingProps } from '../../core/types/masking-props.js';\nimport type { StylingProps } from '../../core/types/styling-props.js';\nimport type { WithChildren } from '../../core/types/with-children.js';\nimport { textStyle } from '../../styles/textStyle.sty.js';\n\n/**\n * The props for the Paragraph component.\n * @public\n * */\nexport interface ParagraphProps\n extends WithChildren,\n DOMProps,\n StylingProps,\n DataTestId,\n MaskingProps {\n /**\n * Limits the text to the given number of lines and adds ellipsis if the text would need more lines.\n */\n maxLines?: number;\n}\n\n/**\n * The `Paragraph` component displays a block of text with the default text style and supports text truncation.\n * @public\n */\nexport const Paragraph = /* @__PURE__ */ forwardRef<\n HTMLParagraphElement,\n ParagraphProps\n>((props, ref) => {\n const {\n children,\n maxLines,\n className: consumerClassName,\n style: consumerStyle,\n 'data-testid': dataTestId,\n 'data-dtrum-mask': dataDtrumMask,\n 'data-dtrum-allow': dataDtrumAllow,\n ...remainingProps\n } = props;\n\n let ellipsis: undefined | 'singleLine' | 'multiLine';\n if (maxLines === undefined || maxLines === 0) {\n ellipsis = undefined;\n } else if (maxLines === 1) {\n ellipsis = 'singleLine';\n } else {\n ellipsis = 'multiLine';\n }\n\n return (\n <p\n ref={ref}\n data-testid={dataTestId}\n data-dtrum-mask={dataDtrumMask}\n data-dtrum-allow={dataDtrumAllow}\n className={clsx(paragraph({ ellipsis }), textStyle(), consumerClassName)}\n style={\n {\n ...consumerStyle,\n '--strato-ellipsis-line-clamp': maxLines,\n } as CSSProperties\n }\n {...remainingProps}\n >\n {children}\n </p>\n );\n});\n(Paragraph as typeof Paragraph & { displayName: string }).displayName =\n 'Paragraph';\n"],
5
- "mappings": "AAwDI;AAxDJ,OAAO,UAAU;AACjB,SAA6B,kBAAkB;AAE/C,SAAS,iBAAiB;AAM1B,SAAS,iBAAiB;AAsBnB,MAAM,YAA4B,2BAGvC,CAAC,OAAO,QAAQ;AAChB,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA,WAAW;AAAA,IACX,OAAO;AAAA,IACP,eAAe;AAAA,IACf,mBAAmB;AAAA,IACnB,oBAAoB;AAAA,IACpB,GAAG;AAAA,EACL,IAAI;AAEJ,MAAI;AACJ,MAAI,aAAa,UAAa,aAAa,GAAG;AAC5C,eAAW;AAAA,EACb,WAAW,aAAa,GAAG;AACzB,eAAW;AAAA,EACb,OAAO;AACL,eAAW;AAAA,EACb;AAEA,SACE;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA,eAAa;AAAA,MACb,mBAAiB;AAAA,MACjB,oBAAkB;AAAA,MAClB,WAAW,KAAK,UAAU,EAAE,SAAS,CAAC,GAAG,UAAU,GAAG,iBAAiB;AAAA,MACvE,OACE;AAAA,QACE,GAAG;AAAA,QACH,gCAAgC;AAAA,MAClC;AAAA,MAED,GAAG;AAAA,MAEH;AAAA;AAAA,EACH;AAEJ,CAAC;AACA,UAAyD,cACxD;",
4
+ "sourcesContent": ["import clsx from 'clsx';\nimport { type CSSProperties, forwardRef } from 'react';\n\nimport { paragraph } from './Paragraph.sty.js';\nimport type { DataTestId } from '../../core/types/data-props.js';\nimport type { DOMProps } from '../../core/types/dom.js';\nimport type { MaskingProps } from '../../core/types/masking-props.js';\nimport type { StylingProps } from '../../core/types/styling-props.js';\nimport type { WithChildren } from '../../core/types/with-children.js';\nimport { textStyle } from '../../styles/textStyle.sty.js';\n\nconst COMPONENT_NAME = 'Paragraph';\n\n/**\n * The props for the Paragraph component.\n * @public\n * */\nexport interface ParagraphProps\n extends WithChildren,\n DOMProps,\n StylingProps,\n DataTestId,\n MaskingProps {\n /**\n * Limits the text to the given number of lines and adds ellipsis if the text would need more lines.\n */\n maxLines?: number;\n}\n\n/**\n * The `Paragraph` component displays a block of text with the default text style and supports text truncation.\n * @public\n */\nexport const Paragraph = /* @__PURE__ */ forwardRef<\n HTMLParagraphElement,\n ParagraphProps\n>((props, ref) => {\n const {\n children,\n maxLines,\n className: consumerClassName,\n style: consumerStyle,\n 'data-testid': dataTestId,\n 'data-dtrum-mask': dataDtrumMask,\n 'data-dtrum-allow': dataDtrumAllow,\n ...remainingProps\n } = props;\n\n let ellipsis: undefined | 'singleLine' | 'multiLine';\n if (maxLines === undefined || maxLines === 0) {\n ellipsis = undefined;\n } else if (maxLines === 1) {\n ellipsis = 'singleLine';\n } else {\n ellipsis = 'multiLine';\n }\n\n return (\n <p\n ref={ref}\n data-testid={dataTestId}\n data-dtrum-mask={dataDtrumMask}\n data-dtrum-allow={dataDtrumAllow}\n className={clsx(paragraph({ ellipsis }), textStyle(), consumerClassName)}\n style={\n {\n ...consumerStyle,\n '--strato-ellipsis-line-clamp': maxLines,\n } as CSSProperties\n }\n {...remainingProps}\n data-dt-component={COMPONENT_NAME}\n >\n {children}\n </p>\n );\n});\n(Paragraph as typeof Paragraph & { displayName: string }).displayName =\n COMPONENT_NAME;\n"],
5
+ "mappings": "AA0DI;AA1DJ,OAAO,UAAU;AACjB,SAA6B,kBAAkB;AAE/C,SAAS,iBAAiB;AAM1B,SAAS,iBAAiB;AAE1B,MAAM,iBAAiB;AAsBhB,MAAM,YAA4B,2BAGvC,CAAC,OAAO,QAAQ;AAChB,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA,WAAW;AAAA,IACX,OAAO;AAAA,IACP,eAAe;AAAA,IACf,mBAAmB;AAAA,IACnB,oBAAoB;AAAA,IACpB,GAAG;AAAA,EACL,IAAI;AAEJ,MAAI;AACJ,MAAI,aAAa,UAAa,aAAa,GAAG;AAC5C,eAAW;AAAA,EACb,WAAW,aAAa,GAAG;AACzB,eAAW;AAAA,EACb,OAAO;AACL,eAAW;AAAA,EACb;AAEA,SACE;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA,eAAa;AAAA,MACb,mBAAiB;AAAA,MACjB,oBAAkB;AAAA,MAClB,WAAW,KAAK,UAAU,EAAE,SAAS,CAAC,GAAG,UAAU,GAAG,iBAAiB;AAAA,MACvE,OACE;AAAA,QACE,GAAG;AAAA,QACH,gCAAgC;AAAA,MAClC;AAAA,MAED,GAAG;AAAA,MACJ,qBAAmB;AAAA,MAElB;AAAA;AAAA,EACH;AAEJ,CAAC;AACA,UAAyD,cACxD;",
6
6
  "names": []
7
7
  }
@@ -1,6 +1,6 @@
1
1
  import "./Paragraph.css";
2
2
  import { createRuntimeFn as _7a468 } from "@vanilla-extract/recipes/createRuntimeFn";
3
- var paragraph = _7a468({ defaultClassName: "_487p2n0-1-16-1", variantClassNames: { ellipsis: { singleLine: "_487p2n1-1-16-1", multiLine: "_487p2n2-1-16-1" } }, defaultVariants: {}, compoundVariants: [] });
3
+ var paragraph = _7a468({ defaultClassName: "_487p2n0-1-17-0", variantClassNames: { ellipsis: { singleLine: "_487p2n1-1-17-0", multiLine: "_487p2n2-1-17-0" } }, defaultVariants: {}, compoundVariants: [] });
4
4
  export {
5
5
  paragraph
6
6
  };
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/typography/paragraph/Paragraph.css.ts"],
4
- "sourcesContent": ["import './Paragraph.css';\nimport { createRuntimeFn as _7a468 } from '@vanilla-extract/recipes/createRuntimeFn';\nexport var paragraph = _7a468({defaultClassName:'_487p2n0-1-16-1',variantClassNames:{ellipsis:{singleLine:'_487p2n1-1-16-1',multiLine:'_487p2n2-1-16-1'}},defaultVariants:{},compoundVariants:[]});"],
4
+ "sourcesContent": ["import './Paragraph.css';\nimport { createRuntimeFn as _7a468 } from '@vanilla-extract/recipes/createRuntimeFn';\nexport var paragraph = _7a468({defaultClassName:'_487p2n0-1-17-0',variantClassNames:{ellipsis:{singleLine:'_487p2n1-1-17-0',multiLine:'_487p2n2-1-17-0'}},defaultVariants:{},compoundVariants:[]});"],
5
5
  "mappings": "AAAA,OAAO;AACP,SAAS,mBAAmB,cAAc;AACnC,IAAI,YAAY,OAAO,EAAC,kBAAiB,mBAAkB,mBAAkB,EAAC,UAAS,EAAC,YAAW,mBAAkB,WAAU,kBAAiB,EAAC,GAAE,iBAAgB,CAAC,GAAE,kBAAiB,CAAC,EAAC,CAAC;",
6
6
  "names": []
7
7
  }
@@ -1,4 +1,4 @@
1
- ._4oao6y0-1-16-1 {
1
+ ._4oao6y0-1-17-0 {
2
2
  text-decoration: line-through;
3
3
  text-decoration-style: solid;
4
4
  overflow-wrap: break-word;
@@ -2,6 +2,7 @@ import { jsx } from "react/jsx-runtime";
2
2
  import clsx from "clsx";
3
3
  import { forwardRef } from "react";
4
4
  import { strikethroughCSS } from "./Strikethrough.sty.js";
5
+ const COMPONENT_NAME = "Strikethrough";
5
6
  const Strikethrough = /* @__PURE__ */ forwardRef((props, ref) => {
6
7
  const {
7
8
  children,
@@ -22,11 +23,12 @@ const Strikethrough = /* @__PURE__ */ forwardRef((props, ref) => {
22
23
  className: clsx(strikethroughCSS, consumerClassName),
23
24
  style: consumerStyle,
24
25
  ...remainingProps,
26
+ "data-dt-component": COMPONENT_NAME,
25
27
  children
26
28
  }
27
29
  );
28
30
  });
29
- Strikethrough.displayName = "Strikethrough";
31
+ Strikethrough.displayName = COMPONENT_NAME;
30
32
  export {
31
33
  Strikethrough
32
34
  };
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/typography/strikethrough/Strikethrough.tsx"],
4
- "sourcesContent": ["import clsx from 'clsx';\nimport { forwardRef } from 'react';\n\nimport { strikethroughCSS } from './Strikethrough.sty.js';\nimport type { DataTestId } from '../../core/types/data-props.js';\nimport type { MaskingProps } from '../../core/types/masking-props.js';\nimport type { StylingProps } from '../../core/types/styling-props.js';\nimport type { WithChildren } from '../../core/types/with-children.js';\n\n/**\n * The props for the Strikethrough component.\n * @public\n */\nexport interface StrikethroughProps\n extends WithChildren,\n StylingProps,\n DataTestId,\n MaskingProps {}\n\n/**\n * The `Strikethrough` component renders text with a line through it. Use it to\n * represent things that are no longer relevant or accurate.\n * @public\n */\nexport const Strikethrough = /* @__PURE__ */ forwardRef<\n HTMLElement,\n StrikethroughProps\n>((props, ref) => {\n const {\n children,\n 'data-testid': dataTestId,\n 'data-dtrum-mask': dataDtrumMask,\n 'data-dtrum-allow': dataDtrumAllow,\n className: consumerClassName,\n style: consumerStyle,\n ...remainingProps\n } = props;\n\n return (\n <s\n ref={ref}\n data-testid={dataTestId}\n data-dtrum-mask={dataDtrumMask}\n data-dtrum-allow={dataDtrumAllow}\n className={clsx(strikethroughCSS, consumerClassName)}\n style={consumerStyle}\n {...remainingProps}\n >\n {children}\n </s>\n );\n});\n(Strikethrough as typeof Strikethrough & { displayName: string }).displayName =\n 'Strikethrough';\n"],
5
- "mappings": "AAuCI;AAvCJ,OAAO,UAAU;AACjB,SAAS,kBAAkB;AAE3B,SAAS,wBAAwB;AAqB1B,MAAM,gBAAgC,2BAG3C,CAAC,OAAO,QAAQ;AAChB,QAAM;AAAA,IACJ;AAAA,IACA,eAAe;AAAA,IACf,mBAAmB;AAAA,IACnB,oBAAoB;AAAA,IACpB,WAAW;AAAA,IACX,OAAO;AAAA,IACP,GAAG;AAAA,EACL,IAAI;AAEJ,SACE;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA,eAAa;AAAA,MACb,mBAAiB;AAAA,MACjB,oBAAkB;AAAA,MAClB,WAAW,KAAK,kBAAkB,iBAAiB;AAAA,MACnD,OAAO;AAAA,MACN,GAAG;AAAA,MAEH;AAAA;AAAA,EACH;AAEJ,CAAC;AACA,cAAiE,cAChE;",
4
+ "sourcesContent": ["import clsx from 'clsx';\nimport { forwardRef } from 'react';\n\nimport { strikethroughCSS } from './Strikethrough.sty.js';\nimport type { DataTestId } from '../../core/types/data-props.js';\nimport type { MaskingProps } from '../../core/types/masking-props.js';\nimport type { StylingProps } from '../../core/types/styling-props.js';\nimport type { WithChildren } from '../../core/types/with-children.js';\n\nconst COMPONENT_NAME = 'Strikethrough';\n\n/**\n * The props for the Strikethrough component.\n * @public\n */\nexport interface StrikethroughProps\n extends WithChildren,\n StylingProps,\n DataTestId,\n MaskingProps {}\n\n/**\n * The `Strikethrough` component renders text with a line through it. Use it to\n * represent things that are no longer relevant or accurate.\n * @public\n */\nexport const Strikethrough = /* @__PURE__ */ forwardRef<\n HTMLElement,\n StrikethroughProps\n>((props, ref) => {\n const {\n children,\n 'data-testid': dataTestId,\n 'data-dtrum-mask': dataDtrumMask,\n 'data-dtrum-allow': dataDtrumAllow,\n className: consumerClassName,\n style: consumerStyle,\n ...remainingProps\n } = props;\n\n return (\n <s\n ref={ref}\n data-testid={dataTestId}\n data-dtrum-mask={dataDtrumMask}\n data-dtrum-allow={dataDtrumAllow}\n className={clsx(strikethroughCSS, consumerClassName)}\n style={consumerStyle}\n {...remainingProps}\n data-dt-component={COMPONENT_NAME}\n >\n {children}\n </s>\n );\n});\n(Strikethrough as typeof Strikethrough & { displayName: string }).displayName =\n COMPONENT_NAME;\n"],
5
+ "mappings": "AAyCI;AAzCJ,OAAO,UAAU;AACjB,SAAS,kBAAkB;AAE3B,SAAS,wBAAwB;AAMjC,MAAM,iBAAiB;AAiBhB,MAAM,gBAAgC,2BAG3C,CAAC,OAAO,QAAQ;AAChB,QAAM;AAAA,IACJ;AAAA,IACA,eAAe;AAAA,IACf,mBAAmB;AAAA,IACnB,oBAAoB;AAAA,IACpB,WAAW;AAAA,IACX,OAAO;AAAA,IACP,GAAG;AAAA,EACL,IAAI;AAEJ,SACE;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA,eAAa;AAAA,MACb,mBAAiB;AAAA,MACjB,oBAAkB;AAAA,MAClB,WAAW,KAAK,kBAAkB,iBAAiB;AAAA,MACnD,OAAO;AAAA,MACN,GAAG;AAAA,MACJ,qBAAmB;AAAA,MAElB;AAAA;AAAA,EACH;AAEJ,CAAC;AACA,cAAiE,cAChE;",
6
6
  "names": []
7
7
  }
@@ -1,5 +1,5 @@
1
1
  import "./Strikethrough.css";
2
- var strikethroughCSS = "_4oao6y0-1-16-1";
2
+ var strikethroughCSS = "_4oao6y0-1-17-0";
3
3
  export {
4
4
  strikethroughCSS
5
5
  };
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/typography/strikethrough/Strikethrough.css.ts"],
4
- "sourcesContent": ["import './Strikethrough.css';\nexport var strikethroughCSS = '_4oao6y0-1-16-1';"],
4
+ "sourcesContent": ["import './Strikethrough.css';\nexport var strikethroughCSS = '_4oao6y0-1-17-0';"],
5
5
  "mappings": "AAAA,OAAO;AACA,IAAI,mBAAmB;",
6
6
  "names": []
7
7
  }
@@ -1,4 +1,4 @@
1
- ._wxp4dd0-1-16-1 {
1
+ ._wxp4dd0-1-17-0 {
2
2
  font-weight: var(--dt-typography-text-base-emphasized-weight, 500);
3
3
  overflow-wrap: break-word;
4
4
  }