@dynatrace/strato-components 0.85.0 → 0.85.21

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 (282) hide show
  1. package/README.md +1 -1
  2. package/buttons/button/Button.css +93 -0
  3. package/buttons/button/Button.d.ts +94 -0
  4. package/buttons/button/Button.js +258 -0
  5. package/buttons/button/Button.sty.d.ts +51 -0
  6. package/buttons/button/Button.sty.js +33 -0
  7. package/buttons/button/Label.d.ts +16 -0
  8. package/buttons/button/Label.js +60 -0
  9. package/buttons/button/Prefix.d.ts +16 -0
  10. package/buttons/button/Prefix.js +54 -0
  11. package/buttons/button/Suffix.d.ts +16 -0
  12. package/buttons/button/Suffix.js +56 -0
  13. package/buttons/button/types/button-aria.d.ts +37 -0
  14. package/buttons/button/types/button-aria.js +15 -0
  15. package/buttons/button/utils/focus-without-scrolling.d.ts +5 -0
  16. package/buttons/button/utils/focus-without-scrolling.js +77 -0
  17. package/buttons/button/utils/is-virtual-event.d.ts +10 -0
  18. package/buttons/button/utils/is-virtual-event.js +32 -0
  19. package/buttons/index.d.ts +10 -0
  20. package/buttons/index.js +30 -0
  21. package/buttons/intent-button/IntentButton.d.ts +44 -0
  22. package/buttons/intent-button/IntentButton.js +102 -0
  23. package/buttons/intent-button/useIntentButton.d.ts +12 -0
  24. package/buttons/intent-button/useIntentButton.js +72 -0
  25. package/content/index.d.ts +4 -0
  26. package/content/index.js +5 -1
  27. package/content/progress/ProgressBar.js +1 -2
  28. package/content/progress/ProgressCircle.js +1 -2
  29. package/content/skeleton/Skeleton.css +33 -0
  30. package/content/skeleton/Skeleton.d.ts +30 -0
  31. package/content/skeleton/Skeleton.js +60 -0
  32. package/content/skeleton/Skeleton.sty.d.ts +10 -0
  33. package/content/skeleton/Skeleton.sty.js +25 -0
  34. package/content/skeleton/SkeletonText.d.ts +24 -0
  35. package/content/skeleton/SkeletonText.js +84 -0
  36. package/esm/buttons/button/Button.css +93 -0
  37. package/esm/buttons/button/Button.js +233 -0
  38. package/esm/buttons/button/Button.js.map +7 -0
  39. package/esm/buttons/button/Button.sty.js +15 -0
  40. package/esm/buttons/button/Button.sty.js.map +7 -0
  41. package/esm/buttons/button/Label.js +32 -0
  42. package/esm/buttons/button/Label.js.map +7 -0
  43. package/esm/buttons/button/Prefix.js +26 -0
  44. package/esm/buttons/button/Prefix.js.map +7 -0
  45. package/esm/buttons/button/Suffix.js +28 -0
  46. package/esm/buttons/button/Suffix.js.map +7 -0
  47. package/esm/buttons/button/types/button-aria.js +1 -0
  48. package/esm/buttons/button/types/button-aria.js.map +7 -0
  49. package/esm/buttons/button/utils/focus-without-scrolling.js +59 -0
  50. package/esm/buttons/button/utils/focus-without-scrolling.js.map +7 -0
  51. package/esm/buttons/button/utils/is-virtual-event.js +14 -0
  52. package/esm/buttons/button/utils/is-virtual-event.js.map +7 -0
  53. package/esm/buttons/index.js +15 -0
  54. package/esm/buttons/index.js.map +7 -0
  55. package/esm/buttons/intent-button/IntentButton.js +74 -0
  56. package/esm/buttons/intent-button/IntentButton.js.map +7 -0
  57. package/esm/buttons/intent-button/useIntentButton.js +57 -0
  58. package/esm/buttons/intent-button/useIntentButton.js.map +7 -0
  59. package/esm/content/index.js +5 -1
  60. package/esm/content/index.js.map +2 -2
  61. package/esm/content/progress/ProgressBar.js +2 -3
  62. package/esm/content/progress/ProgressBar.js.map +2 -2
  63. package/esm/content/progress/ProgressCircle.js +2 -3
  64. package/esm/content/progress/ProgressCircle.js.map +2 -2
  65. package/esm/content/skeleton/Skeleton.css +33 -0
  66. package/esm/content/skeleton/Skeleton.js +32 -0
  67. package/esm/content/skeleton/Skeleton.js.map +7 -0
  68. package/esm/content/skeleton/Skeleton.sty.js +7 -0
  69. package/esm/content/skeleton/Skeleton.sty.js.map +7 -0
  70. package/esm/content/skeleton/SkeletonText.js +56 -0
  71. package/esm/content/skeleton/SkeletonText.js.map +7 -0
  72. package/esm/index.js +1 -0
  73. package/esm/index.js.map +2 -2
  74. package/esm/layouts/{Divider → divider}/Divider.css +5 -5
  75. package/esm/layouts/{Divider → divider}/Divider.js.map +1 -1
  76. package/esm/layouts/{Divider → divider}/Divider.sty.js +1 -1
  77. package/esm/layouts/{Divider → divider}/Divider.sty.js.map +2 -2
  78. package/esm/layouts/helpers/spacingToCss.js +13 -0
  79. package/esm/layouts/helpers/spacingToCss.js.map +7 -0
  80. package/esm/layouts/hooks/useLayoutSizeProps.js +15 -0
  81. package/esm/layouts/hooks/useLayoutSizeProps.js.map +7 -0
  82. package/esm/layouts/hooks/useLayoutStyles.js +105 -0
  83. package/esm/layouts/hooks/useLayoutStyles.js.map +7 -0
  84. package/esm/layouts/hooks/useMarginProps.js +55 -0
  85. package/esm/layouts/hooks/useMarginProps.js.map +7 -0
  86. package/esm/layouts/hooks/usePaddingProps.js +59 -0
  87. package/esm/layouts/hooks/usePaddingProps.js.map +7 -0
  88. package/esm/layouts/index.js +6 -2
  89. package/esm/layouts/index.js.map +2 -2
  90. package/esm/layouts/surface/Surface.css +95 -0
  91. package/esm/layouts/surface/Surface.js +84 -0
  92. package/esm/layouts/surface/Surface.js.map +7 -0
  93. package/esm/layouts/surface/Surface.sty.js +10 -0
  94. package/esm/layouts/surface/Surface.sty.js.map +7 -0
  95. package/esm/layouts/surface/variables.sty.js +5 -0
  96. package/esm/layouts/surface/variables.sty.js.map +7 -0
  97. package/esm/layouts/types/layout.types.js +1 -0
  98. package/esm/layouts/types/layout.types.js.map +7 -0
  99. package/esm/styles/field.css +208 -0
  100. package/esm/styles/field.sty.js +9 -0
  101. package/esm/styles/field.sty.js.map +7 -0
  102. package/esm/typography/{BlockQuote → block-quote}/Blockquote.css +2 -2
  103. package/esm/typography/{BlockQuote → block-quote}/Blockquote.js.map +2 -2
  104. package/esm/typography/{BlockQuote → block-quote}/Blockquote.sty.js +1 -1
  105. package/esm/typography/{BlockQuote → block-quote}/Blockquote.sty.js.map +2 -2
  106. package/{typography/Code → esm/typography/code}/Code.css +1 -1
  107. package/esm/typography/code/Code.js.map +7 -0
  108. package/esm/typography/{Code → code}/Code.sty.js +1 -1
  109. package/esm/typography/{Code → code}/Code.sty.js.map +2 -2
  110. package/esm/typography/{Emphasis → emphasis}/Emphasis.css +1 -1
  111. package/esm/typography/{Emphasis → emphasis}/Emphasis.js.map +2 -2
  112. package/esm/typography/{Emphasis → emphasis}/Emphasis.sty.js +1 -1
  113. package/esm/typography/{Emphasis → emphasis}/Emphasis.sty.js.map +2 -2
  114. package/{typography/ExternalLink → esm/typography/external-link}/ExternalLink.css +6 -6
  115. package/esm/typography/external-link/ExternalLink.js.map +7 -0
  116. package/esm/typography/{ExternalLink → external-link}/ExternalLink.sty.js +1 -1
  117. package/esm/typography/{ExternalLink → external-link}/ExternalLink.sty.js.map +2 -2
  118. package/esm/typography/{Heading → heading}/Heading.css +7 -7
  119. package/esm/typography/heading/Heading.js.map +7 -0
  120. package/esm/typography/heading/Heading.sty.js +7 -0
  121. package/esm/typography/{Heading → heading}/Heading.sty.js.map +2 -2
  122. package/esm/typography/{Highlight → highlight}/Highlight.css +1 -1
  123. package/esm/typography/{Highlight → highlight}/Highlight.js.map +2 -2
  124. package/esm/typography/{Highlight → highlight}/Highlight.sty.js +1 -1
  125. package/esm/typography/{Highlight → highlight}/Highlight.sty.js.map +2 -2
  126. package/esm/typography/index.js +13 -13
  127. package/esm/typography/index.js.map +1 -1
  128. package/{typography/Link → esm/typography/link}/Link.css +4 -4
  129. package/esm/typography/{Link → link}/Link.js +1 -1
  130. package/esm/typography/link/Link.js.map +7 -0
  131. package/esm/typography/{Link → link}/Link.sty.js +1 -1
  132. package/esm/typography/{Link → link}/Link.sty.js.map +2 -2
  133. package/esm/typography/{List → list}/List.css +4 -4
  134. package/esm/typography/{List → list}/List.js +1 -1
  135. package/esm/typography/{List → list}/List.js.map +2 -2
  136. package/esm/typography/{List → list}/List.sty.js +2 -2
  137. package/esm/typography/{List → list}/List.sty.js.map +2 -2
  138. package/esm/typography/{Paragraph → paragraph}/Paragraph.css +3 -3
  139. package/esm/typography/{Paragraph → paragraph}/Paragraph.js.map +2 -2
  140. package/esm/typography/{Paragraph → paragraph}/Paragraph.sty.js +1 -1
  141. package/esm/typography/{Paragraph → paragraph}/Paragraph.sty.js.map +2 -2
  142. package/{typography/Strikethrough → esm/typography/strikethrough}/Strikethrough.css +1 -1
  143. package/esm/typography/strikethrough/Strikethrough.js.map +7 -0
  144. package/esm/typography/{Strikethrough → strikethrough}/Strikethrough.sty.js +1 -1
  145. package/esm/typography/{Strikethrough → strikethrough}/Strikethrough.sty.js.map +2 -2
  146. package/{typography/Strong → esm/typography/strong}/Strong.css +1 -1
  147. package/esm/typography/{Strong → strong}/Strong.js.map +2 -2
  148. package/esm/typography/{Strong → strong}/Strong.sty.js +1 -1
  149. package/esm/typography/{Strong → strong}/Strong.sty.js.map +2 -2
  150. package/{typography/Text → esm/typography/text}/Text.css +3 -3
  151. package/esm/typography/text/Text.js.map +7 -0
  152. package/esm/typography/{Text → text}/Text.sty.js +1 -1
  153. package/esm/typography/{Text → text}/Text.sty.js.map +2 -2
  154. package/{typography/TextEllipsis → esm/typography/text-ellipsis}/TextEllipsis.css +4 -4
  155. package/esm/typography/text-ellipsis/TextEllipsis.js.map +7 -0
  156. package/esm/typography/text-ellipsis/TextEllipsis.sty.js +7 -0
  157. package/esm/typography/{TextEllipsis → text-ellipsis}/TextEllipsis.sty.js.map +2 -2
  158. package/index.d.ts +1 -0
  159. package/index.js +1 -0
  160. package/lang/en.json +12 -0
  161. package/lang/ja.json +24 -0
  162. package/lang/uncompiled/en.json +8 -0
  163. package/lang/uncompiled/ja.json +14 -1
  164. package/layouts/{Divider → divider}/Divider.css +5 -5
  165. package/layouts/{Divider → divider}/Divider.sty.js +1 -1
  166. package/layouts/helpers/spacingToCss.d.ts +6 -0
  167. package/layouts/helpers/spacingToCss.js +29 -0
  168. package/layouts/hooks/useLayoutSizeProps.d.ts +6 -0
  169. package/layouts/hooks/useLayoutSizeProps.js +33 -0
  170. package/layouts/hooks/useLayoutStyles.d.ts +7 -0
  171. package/layouts/hooks/useLayoutStyles.js +123 -0
  172. package/layouts/hooks/useMarginProps.d.ts +7 -0
  173. package/layouts/hooks/useMarginProps.js +73 -0
  174. package/layouts/hooks/usePaddingProps.d.ts +7 -0
  175. package/layouts/hooks/usePaddingProps.js +77 -0
  176. package/layouts/index.d.ts +6 -2
  177. package/layouts/index.js +6 -2
  178. package/layouts/surface/Surface.css +95 -0
  179. package/layouts/surface/Surface.d.ts +46 -0
  180. package/layouts/surface/Surface.js +110 -0
  181. package/layouts/surface/Surface.sty.d.ts +43 -0
  182. package/layouts/surface/Surface.sty.js +28 -0
  183. package/layouts/surface/variables.sty.d.ts +1 -0
  184. package/layouts/surface/variables.sty.js +23 -0
  185. package/layouts/types/layout.types.d.ts +64 -0
  186. package/layouts/types/layout.types.js +15 -0
  187. package/package.json +11 -4
  188. package/styles/field.css +208 -0
  189. package/styles/field.sty.d.ts +102 -0
  190. package/styles/field.sty.js +27 -0
  191. package/styles/sprinkles.sty.d.ts +107 -107
  192. package/typography/{BlockQuote → block-quote}/Blockquote.css +2 -2
  193. package/typography/{BlockQuote → block-quote}/Blockquote.sty.js +1 -1
  194. package/{esm/typography/Code → typography/code}/Code.css +1 -1
  195. package/typography/{Code → code}/Code.d.ts +2 -2
  196. package/typography/{Code → code}/Code.sty.js +1 -1
  197. package/typography/{Emphasis → emphasis}/Emphasis.css +1 -1
  198. package/typography/{Emphasis → emphasis}/Emphasis.sty.js +1 -1
  199. package/{esm/typography/ExternalLink → typography/external-link}/ExternalLink.css +6 -6
  200. package/typography/{ExternalLink → external-link}/ExternalLink.d.ts +2 -2
  201. package/typography/{ExternalLink → external-link}/ExternalLink.sty.js +1 -1
  202. package/typography/{Heading → heading}/Heading.css +7 -7
  203. package/typography/{Heading → heading}/Heading.d.ts +3 -2
  204. package/typography/{Heading → heading}/Heading.sty.js +1 -1
  205. package/typography/{Highlight → highlight}/Highlight.css +1 -1
  206. package/typography/{Highlight → highlight}/Highlight.sty.js +1 -1
  207. package/typography/index.d.ts +26 -26
  208. package/typography/index.js +13 -13
  209. package/{esm/typography/Link → typography/link}/Link.css +4 -4
  210. package/typography/{Link → link}/Link.d.ts +2 -2
  211. package/typography/{Link → link}/Link.js +1 -1
  212. package/typography/{Link → link}/Link.sty.js +1 -1
  213. package/typography/{List → list}/List.css +4 -4
  214. package/typography/{List → list}/List.js +1 -1
  215. package/typography/{List → list}/List.sty.js +2 -2
  216. package/typography/{Paragraph → paragraph}/Paragraph.css +3 -3
  217. package/typography/{Paragraph → paragraph}/Paragraph.sty.js +1 -1
  218. package/{esm/typography/Strikethrough → typography/strikethrough}/Strikethrough.css +1 -1
  219. package/typography/{Strikethrough → strikethrough}/Strikethrough.d.ts +2 -2
  220. package/typography/{Strikethrough → strikethrough}/Strikethrough.sty.js +1 -1
  221. package/{esm/typography/Strong → typography/strong}/Strong.css +1 -1
  222. package/typography/{Strong → strong}/Strong.sty.js +1 -1
  223. package/{esm/typography/Text → typography/text}/Text.css +3 -3
  224. package/typography/{Text → text}/Text.d.ts +3 -2
  225. package/typography/{Text → text}/Text.sty.js +1 -1
  226. package/{esm/typography/TextEllipsis → typography/text-ellipsis}/TextEllipsis.css +4 -4
  227. package/typography/{TextEllipsis → text-ellipsis}/TextEllipsis.d.ts +3 -3
  228. package/typography/{TextEllipsis → text-ellipsis}/TextEllipsis.sty.js +1 -1
  229. package/esm/typography/Code/Code.js.map +0 -7
  230. package/esm/typography/ExternalLink/ExternalLink.js.map +0 -7
  231. package/esm/typography/Heading/Heading.js.map +0 -7
  232. package/esm/typography/Heading/Heading.sty.js +0 -7
  233. package/esm/typography/Link/Link.js.map +0 -7
  234. package/esm/typography/Strikethrough/Strikethrough.js.map +0 -7
  235. package/esm/typography/Text/Text.js.map +0 -7
  236. package/esm/typography/TextEllipsis/TextEllipsis.js.map +0 -7
  237. package/esm/typography/TextEllipsis/TextEllipsis.sty.js +0 -7
  238. package/esm/layouts/{Divider → divider}/Divider.js +0 -0
  239. package/esm/typography/{BlockQuote → block-quote}/Blockquote.js +0 -0
  240. package/esm/typography/{Code → code}/Code.js +0 -0
  241. package/esm/typography/{Emphasis → emphasis}/Emphasis.js +0 -0
  242. package/esm/typography/{ExternalLink → external-link}/ExternalLink.js +0 -0
  243. package/esm/typography/{Heading → heading}/Heading.js +0 -0
  244. package/esm/typography/{Highlight → highlight}/Highlight.js +0 -0
  245. package/esm/typography/{Paragraph → paragraph}/Paragraph.js +0 -0
  246. package/esm/typography/{Strikethrough → strikethrough}/Strikethrough.js +0 -0
  247. package/esm/typography/{Strong → strong}/Strong.js +0 -0
  248. package/esm/typography/{Text → text}/Text.js +0 -0
  249. package/esm/typography/{TextEllipsis → text-ellipsis}/TextEllipsis.js +0 -0
  250. package/layouts/{Divider → divider}/Divider.d.ts +0 -0
  251. package/layouts/{Divider → divider}/Divider.js +0 -0
  252. package/layouts/{Divider → divider}/Divider.sty.d.ts +0 -0
  253. package/typography/{BlockQuote → block-quote}/Blockquote.d.ts +1 -1
  254. package/typography/{BlockQuote → block-quote}/Blockquote.js +0 -0
  255. package/typography/{BlockQuote → block-quote}/Blockquote.sty.d.ts +0 -0
  256. package/typography/{Code → code}/Code.js +0 -0
  257. package/typography/{Code → code}/Code.sty.d.ts +0 -0
  258. package/typography/{Emphasis → emphasis}/Emphasis.d.ts +1 -1
  259. package/typography/{Emphasis → emphasis}/Emphasis.js +0 -0
  260. package/typography/{Emphasis → emphasis}/Emphasis.sty.d.ts +0 -0
  261. package/typography/{ExternalLink → external-link}/ExternalLink.js +0 -0
  262. package/typography/{ExternalLink → external-link}/ExternalLink.sty.d.ts +0 -0
  263. package/typography/{Heading → heading}/Heading.js +0 -0
  264. package/typography/{Heading → heading}/Heading.sty.d.ts +0 -0
  265. package/typography/{Highlight → highlight}/Highlight.d.ts +1 -1
  266. package/typography/{Highlight → highlight}/Highlight.js +0 -0
  267. package/typography/{Highlight → highlight}/Highlight.sty.d.ts +0 -0
  268. package/typography/{Link → link}/Link.sty.d.ts +0 -0
  269. package/typography/{List → list}/List.d.ts +1 -1
  270. package/typography/{List → list}/List.sty.d.ts +0 -0
  271. package/typography/{Paragraph → paragraph}/Paragraph.d.ts +1 -1
  272. package/typography/{Paragraph → paragraph}/Paragraph.js +0 -0
  273. package/typography/{Paragraph → paragraph}/Paragraph.sty.d.ts +0 -0
  274. package/typography/{Strikethrough → strikethrough}/Strikethrough.js +0 -0
  275. package/typography/{Strikethrough → strikethrough}/Strikethrough.sty.d.ts +0 -0
  276. package/typography/{Strong → strong}/Strong.d.ts +1 -1
  277. /package/typography/{Strong → strong}/Strong.js +0 -0
  278. /package/typography/{Strong → strong}/Strong.sty.d.ts +0 -0
  279. /package/typography/{Text → text}/Text.js +0 -0
  280. /package/typography/{Text → text}/Text.sty.d.ts +0 -0
  281. /package/typography/{TextEllipsis → text-ellipsis}/TextEllipsis.js +0 -0
  282. /package/typography/{TextEllipsis → text-ellipsis}/TextEllipsis.sty.d.ts +0 -0
@@ -0,0 +1,33 @@
1
+ @keyframes Skeleton_skeletonAnimationKeyframes__1a1ozfd0 {
2
+ 0% {
3
+ transform: translateX(-100%) scaleX(0);
4
+ }
5
+ 100% {
6
+ transform: translateX(100%) scaleX(1.5);
7
+ }
8
+ }
9
+ .Skeleton_skeletonPlaceholderCSS__1a1ozfd1 {
10
+ position: relative;
11
+ overflow: hidden;
12
+ background-color: var(--dt-colors-background-field-neutral-disabled, #dadbe780);
13
+ }
14
+ .Skeleton_skeletonPlaceholderCSS__1a1ozfd1:after {
15
+ content: "";
16
+ position: absolute;
17
+ top: 0;
18
+ left: 0;
19
+ width: 100%;
20
+ height: 100%;
21
+ background-color: var(--dt-colors-background-field-neutral-disabled, #dadbe780);
22
+ animation-iteration-count: infinite;
23
+ transform-origin: left center;
24
+ animation-name: Skeleton_skeletonAnimationKeyframes__1a1ozfd0;
25
+ animation-duration: var(--dt-timings-slow-gentle, 800ms);
26
+ animation-timing-function: var(--dt-easings-fast-in-slow-out, cubic-bezier(0.4, 0, 0.2, 1));
27
+ }
28
+ .Skeleton_skeletonPlaceholderCSS_variant_default__1a1ozfd2 {
29
+ border-radius: var(--dt-borders-radius-container-subdued, 8px);
30
+ }
31
+ .Skeleton_skeletonPlaceholderCSS_variant_rounded__1a1ozfd3 {
32
+ border-radius: 9999px;
33
+ }
@@ -0,0 +1,32 @@
1
+ import clsx from "clsx";
2
+ import React, { forwardRef } from "react";
3
+ import { skeletonPlaceholderCSS } from "./Skeleton.sty.js";
4
+ const Skeleton = forwardRef(
5
+ (props, forwardedRef) => {
6
+ const {
7
+ children,
8
+ variant = "default",
9
+ width = "100%",
10
+ height = "100%",
11
+ className: consumerClassName,
12
+ style: consumerStyle,
13
+ "data-testid": dataTestId,
14
+ ...remainingProps
15
+ } = props;
16
+ return /* @__PURE__ */ React.createElement(
17
+ "div",
18
+ {
19
+ "data-testid": dataTestId,
20
+ ref: forwardedRef,
21
+ className: clsx(skeletonPlaceholderCSS({ variant }), consumerClassName),
22
+ style: { width, height, ...consumerStyle },
23
+ ...remainingProps
24
+ },
25
+ children
26
+ );
27
+ }
28
+ );
29
+ export {
30
+ Skeleton
31
+ };
32
+ //# sourceMappingURL=Skeleton.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/content/skeleton/Skeleton.tsx"],
4
+ "sourcesContent": ["import clsx from 'clsx';\nimport React, { CSSProperties, forwardRef } from 'react';\n\nimport { skeletonPlaceholderCSS } from './Skeleton.sty.js';\nimport { type DataTestId } from '../../core/types/data-props.js';\nimport { type StylingProps } from '../../core/types/styling-props.js';\nimport { type WithChildren } from '../../core/types/with-children.js';\n\n/**\n * Accepted properties for Skeleton\n * @public\n */\nexport interface SkeletonProps extends WithChildren, StylingProps, DataTestId {\n /**\n * Defines the shape of the Skeleton.\n * @defaultValue 'default'\n */\n variant?: 'default' | 'rounded';\n /**\n * Width of the Skeleton placeholder.\n * @defaultValue 100%\n */\n width?: CSSProperties['width'];\n /**\n * Height of the Skeleton placeholder.\n * @defaultValue 100%\n */\n height?: CSSProperties['height'];\n}\n\n/**\n * The `Skeleton` component renders a colored block with an animated background, indicating that something is loading.\n * @public\n */\nexport const Skeleton = forwardRef<HTMLDivElement, SkeletonProps>(\n (props, forwardedRef) => {\n const {\n children,\n variant = 'default',\n width = '100%',\n height = '100%',\n className: consumerClassName,\n style: consumerStyle,\n 'data-testid': dataTestId,\n ...remainingProps\n }: SkeletonProps = props;\n\n return (\n <div\n data-testid={dataTestId}\n ref={forwardedRef}\n className={clsx(skeletonPlaceholderCSS({ variant }), consumerClassName)}\n style={{ width: width, height: height, ...consumerStyle }}\n {...remainingProps}\n >\n {children}\n </div>\n );\n },\n);\n"],
5
+ "mappings": "AAAA,OAAO,UAAU;AACjB,OAAO,SAAwB,kBAAkB;AAEjD,SAAS,8BAA8B;AA+BhC,MAAM,WAAW;AAAA,EACtB,CAAC,OAAO,iBAAiB;AACvB,UAAM;AAAA,MACJ;AAAA,MACA,UAAU;AAAA,MACV,QAAQ;AAAA,MACR,SAAS;AAAA,MACT,WAAW;AAAA,MACX,OAAO;AAAA,MACP,eAAe;AAAA,MACf,GAAG;AAAA,IACL,IAAmB;AAEnB,WACE;AAAA,MAAC;AAAA;AAAA,QACC,eAAa;AAAA,QACb,KAAK;AAAA,QACL,WAAW,KAAK,uBAAuB,EAAE,QAAQ,CAAC,GAAG,iBAAiB;AAAA,QACtE,OAAO,EAAE,OAAc,QAAgB,GAAG,cAAc;AAAA,QACvD,GAAG;AAAA;AAAA,MAEH;AAAA,IACH;AAAA,EAEJ;AACF;",
6
+ "names": []
7
+ }
@@ -0,0 +1,7 @@
1
+ import "./Skeleton.css";
2
+ import { createRuntimeFn as _7a468 } from "@vanilla-extract/recipes/createRuntimeFn";
3
+ var skeletonPlaceholderCSS = _7a468({ defaultClassName: "Skeleton_skeletonPlaceholderCSS__1a1ozfd1", variantClassNames: { variant: { "default": "Skeleton_skeletonPlaceholderCSS_variant_default__1a1ozfd2", rounded: "Skeleton_skeletonPlaceholderCSS_variant_rounded__1a1ozfd3" } }, defaultVariants: {}, compoundVariants: [] });
4
+ export {
5
+ skeletonPlaceholderCSS
6
+ };
7
+ //# sourceMappingURL=Skeleton.sty.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/content/skeleton/Skeleton.css.ts"],
4
+ "sourcesContent": ["import './Skeleton.css';\nimport { createRuntimeFn as _7a468 } from '@vanilla-extract/recipes/createRuntimeFn';\nexport var skeletonPlaceholderCSS = _7a468({defaultClassName:'Skeleton_skeletonPlaceholderCSS__1a1ozfd1',variantClassNames:{variant:{'default':'Skeleton_skeletonPlaceholderCSS_variant_default__1a1ozfd2',rounded:'Skeleton_skeletonPlaceholderCSS_variant_rounded__1a1ozfd3'}},defaultVariants:{},compoundVariants:[]});"],
5
+ "mappings": "AAAA,OAAO;AACP,SAAS,mBAAmB,cAAc;AACnC,IAAI,yBAAyB,OAAO,EAAC,kBAAiB,6CAA4C,mBAAkB,EAAC,SAAQ,EAAC,WAAU,6DAA4D,SAAQ,4DAA2D,EAAC,GAAE,iBAAgB,CAAC,GAAE,kBAAiB,CAAC,EAAC,CAAC;",
6
+ "names": []
7
+ }
@@ -0,0 +1,56 @@
1
+ import React, { forwardRef } from "react";
2
+ import { Skeleton } from "./Skeleton.js";
3
+ import { Flex } from "../../layouts/flex/Flex.js";
4
+ const SkeletonText = forwardRef(
5
+ (props, forwardedRef) => {
6
+ const {
7
+ width = "100%",
8
+ lines = 3,
9
+ className: consumerClassName,
10
+ style: consumerStyle,
11
+ "data-testid": dataTestId,
12
+ ...remainingProps
13
+ } = props;
14
+ const getSkeletonLinesMargin = (line, lines2) => {
15
+ if (lines2 === 1) {
16
+ return 0;
17
+ }
18
+ return (line + 2) % 3 * 12;
19
+ };
20
+ const getSkeletonLines = (lines2) => {
21
+ const render = [];
22
+ for (let line = 0; line < lines2; line++) {
23
+ const width2 = `calc(100% - ${getSkeletonLinesMargin(line, lines2)}px)`;
24
+ render.push(
25
+ /* @__PURE__ */ React.createElement(
26
+ Skeleton,
27
+ {
28
+ key: `${lines2}-${line}`,
29
+ width: width2,
30
+ height: "12px"
31
+ }
32
+ )
33
+ );
34
+ }
35
+ return render;
36
+ };
37
+ return /* @__PURE__ */ React.createElement(
38
+ Flex,
39
+ {
40
+ "data-testid": dataTestId,
41
+ ref: forwardedRef,
42
+ flexDirection: "column",
43
+ gap: 8,
44
+ paddingY: 4,
45
+ className: consumerClassName,
46
+ style: { width, ...consumerStyle },
47
+ ...remainingProps
48
+ },
49
+ getSkeletonLines(lines)
50
+ );
51
+ }
52
+ );
53
+ export {
54
+ SkeletonText
55
+ };
56
+ //# sourceMappingURL=SkeletonText.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/content/skeleton/SkeletonText.tsx"],
4
+ "sourcesContent": ["import React, { type CSSProperties, forwardRef } from 'react';\n\nimport { Skeleton } from './Skeleton.js';\nimport { type DataTestId } from '../../core/types/data-props.js';\nimport { type StylingProps } from '../../core/types/styling-props.js';\nimport { Flex } from '../../layouts/flex/Flex.js';\n\n/**\n * Accepted properties for SkeletonText\n * @public\n */\nexport interface SkeletonTextProps extends StylingProps, DataTestId {\n /**\n * Width of the SkeletonText placeholder.\n * @defaultValue 100%\n */\n width?: CSSProperties['width'];\n /**\n * Number of Lines of the SkeletonText placeholder.\n * @defaultValue 3\n */\n lines?: number;\n}\n\n/**\n * The `SkeletonText` component renders a specified number of placeholder boxes for lines of text with an animated background.\n * @public\n */\nexport const SkeletonText = forwardRef<HTMLDivElement, SkeletonTextProps>(\n (props, forwardedRef) => {\n const {\n width = '100%',\n lines = 3,\n className: consumerClassName,\n style: consumerStyle,\n 'data-testid': dataTestId,\n ...remainingProps\n }: SkeletonTextProps = props;\n\n const getSkeletonLinesMargin = (line: number, lines: number) => {\n if (lines === 1) {\n // do not add any margin for single-line SkeletonTexts\n return 0;\n }\n return ((line + 2) % 3) * 12;\n };\n\n const getSkeletonLines = (lines: number) => {\n const render: React.ReactNode[] = [];\n for (let line = 0; line < lines; line++) {\n const width = `calc(100% - ${getSkeletonLinesMargin(line, lines)}px)`;\n render.push(\n <Skeleton\n // key needs to be individual every time we render, because it resets the animation with every child drawn again.\n key={`${lines}-${line}`}\n width={width}\n height=\"12px\"\n />,\n );\n }\n return render;\n };\n\n return (\n <Flex\n data-testid={dataTestId}\n ref={forwardedRef}\n flexDirection=\"column\"\n gap={8}\n paddingY={4}\n className={consumerClassName}\n style={{ width: width, ...consumerStyle }}\n {...remainingProps}\n >\n {getSkeletonLines(lines)}\n </Flex>\n );\n },\n);\n"],
5
+ "mappings": "AAAA,OAAO,SAA6B,kBAAkB;AAEtD,SAAS,gBAAgB;AAGzB,SAAS,YAAY;AAuBd,MAAM,eAAe;AAAA,EAC1B,CAAC,OAAO,iBAAiB;AACvB,UAAM;AAAA,MACJ,QAAQ;AAAA,MACR,QAAQ;AAAA,MACR,WAAW;AAAA,MACX,OAAO;AAAA,MACP,eAAe;AAAA,MACf,GAAG;AAAA,IACL,IAAuB;AAEvB,UAAM,yBAAyB,CAAC,MAAcA,WAAkB;AAC9D,UAAIA,WAAU,GAAG;AAEf,eAAO;AAAA,MACT;AACA,cAAS,OAAO,KAAK,IAAK;AAAA,IAC5B;AAEA,UAAM,mBAAmB,CAACA,WAAkB;AAC1C,YAAM,SAA4B,CAAC;AACnC,eAAS,OAAO,GAAG,OAAOA,QAAO,QAAQ;AACvC,cAAMC,SAAQ,eAAe,uBAAuB,MAAMD,MAAK,CAAC;AAChE,eAAO;AAAA,UACL;AAAA,YAAC;AAAA;AAAA,cAEC,KAAK,GAAGA,MAAK,IAAI,IAAI;AAAA,cACrB,OAAOC;AAAA,cACP,QAAO;AAAA;AAAA,UACT;AAAA,QACF;AAAA,MACF;AACA,aAAO;AAAA,IACT;AAEA,WACE;AAAA,MAAC;AAAA;AAAA,QACC,eAAa;AAAA,QACb,KAAK;AAAA,QACL,eAAc;AAAA,QACd,KAAK;AAAA,QACL,UAAU;AAAA,QACV,WAAW;AAAA,QACX,OAAO,EAAE,OAAc,GAAG,cAAc;AAAA,QACvC,GAAG;AAAA;AAAA,MAEH,iBAAiB,KAAK;AAAA,IACzB;AAAA,EAEJ;AACF;",
6
+ "names": ["lines", "width"]
7
+ }
package/esm/index.js CHANGED
@@ -1,3 +1,4 @@
1
+ export * from "./buttons/index.js";
1
2
  export * from "./core/index.js";
2
3
  export * from "./content/index.js";
3
4
  export * from "./layouts/index.js";
package/esm/index.js.map CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/index.ts"],
4
- "sourcesContent": ["export * from './core/index.js';\nexport * from './content/index.js';\nexport * from './layouts/index.js';\nexport * from './styles/index.js';\nexport * from './typography/index.js';\n"],
5
- "mappings": "AAAA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;",
4
+ "sourcesContent": ["export * from './buttons/index.js';\nexport * from './core/index.js';\nexport * from './content/index.js';\nexport * from './layouts/index.js';\nexport * from './styles/index.js';\nexport * from './typography/index.js';\n"],
5
+ "mappings": "AAAA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;",
6
6
  "names": []
7
7
  }
@@ -1,21 +1,21 @@
1
- .Divider_dividerCSS__1ljcfp90 {
1
+ .Divider_dividerCSS__1thxv8m0 {
2
2
  border: none;
3
3
  margin: 0;
4
4
  overflow-wrap: break-word;
5
5
  background-color: var(--vars_borderColor__k096v42);
6
6
  }
7
- .Divider_dividerCSS_orientation_horizontal__1ljcfp91 {
7
+ .Divider_dividerCSS_orientation_horizontal__1thxv8m1 {
8
8
  width: 100%;
9
9
  height: var(--dt-borders-width-default, 1px);
10
10
  }
11
- .Divider_dividerCSS_orientation_vertical__1ljcfp92 {
11
+ .Divider_dividerCSS_orientation_vertical__1thxv8m2 {
12
12
  width: var(--dt-borders-width-default, 1px);
13
13
  height: 100%;
14
14
  }
15
- .Divider_dividerCSS_compound_0__1ljcfp95 {
15
+ .Divider_dividerCSS_compound_0__1thxv8m5 {
16
16
  flex-shrink: 0;
17
17
  }
18
- .Divider_dividerCSS_compound_1__1ljcfp96 {
18
+ .Divider_dividerCSS_compound_1__1thxv8m6 {
19
19
  flex-shrink: 0;
20
20
  width: var(--dt-borders-width-default, 1px);
21
21
  height: auto;
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../../../src/layouts/Divider/Divider.tsx"],
3
+ "sources": ["../../../../src/layouts/divider/Divider.tsx"],
4
4
  "sourcesContent": ["import clsx from 'clsx';\nimport React, { forwardRef } from 'react';\n\nimport { dividerCSS } from './Divider.sty.js';\nimport { type DataTestId } from '../../core/types/data-props.js';\nimport { type StylingProps } from '../../core/types/styling-props.js';\nimport { colorUtilsCSS } from '../../core/utils/colorUtils.sty.js';\n\n// #region Typings\n\n/** @public\n * Divider component props.\n */\nexport interface DividerProps extends StylingProps, DataTestId {\n /**\n * Orientation of the Divider component.\n * @defaultValue 'horizontal'\n */\n orientation?: 'horizontal' | 'vertical';\n /**\n * Control the HTML tag used for rendering the Divider.\n * @defaultValue 'div'\n */\n as?: 'hr' | 'div';\n /**\n * Indicate whether the Divider is used inside a Flex component to apply the right styling.\n * If set to false, make sure to have an explicit width/height style set on a parent HTML tag.\n * @defaultValue true\n */\n flexItem?: boolean;\n /**\n * The color of the Divider.\n * @defaultValue 'neutral'\n */\n color?: 'primary' | 'neutral' | 'success' | 'warning' | 'critical';\n /**\n * The visual style of the Divider.\n * @defaultValue 'default'\n */\n variant?: 'default' | 'accent';\n}\n// #endregion\n\n/**\n * The `Divider` component visually separates groups of content.\n * @public\n */\nexport const Divider = /* @__PURE__ */ forwardRef<\n HTMLDivElement | HTMLHRElement,\n DividerProps\n>((props, ref) => {\n const {\n orientation = 'horizontal',\n flexItem = true,\n as = 'div',\n color = 'neutral',\n variant = 'default',\n 'data-testid': dataTestId,\n className: consumerClassName,\n style: consumerStyle,\n ...remainingProps\n } = props;\n\n const DividerTag = as;\n\n return (\n <DividerTag\n role=\"separator\"\n aria-orientation={orientation === 'vertical' ? orientation : undefined}\n // @ts-expect-error ref can't be div and hr here\n ref={ref}\n data-testid={dataTestId}\n className={clsx(\n colorUtilsCSS({ color, variant }),\n dividerCSS({ orientation, flexItem }),\n consumerClassName,\n )}\n style={consumerStyle}\n {...remainingProps}\n />\n );\n});\n\n(Divider as typeof Divider & { displayName: string }).displayName = 'Divider';\n"],
5
5
  "mappings": "AAAA,OAAO,UAAU;AACjB,OAAO,SAAS,kBAAkB;AAElC,SAAS,kBAAkB;AAG3B,SAAS,qBAAqB;AAyCvB,MAAM,UAA0B,2BAGrC,CAAC,OAAO,QAAQ;AAChB,QAAM;AAAA,IACJ,cAAc;AAAA,IACd,WAAW;AAAA,IACX,KAAK;AAAA,IACL,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,eAAe;AAAA,IACf,WAAW;AAAA,IACX,OAAO;AAAA,IACP,GAAG;AAAA,EACL,IAAI;AAEJ,QAAM,aAAa;AAEnB,SACE;AAAA,IAAC;AAAA;AAAA,MACC,MAAK;AAAA,MACL,oBAAkB,gBAAgB,aAAa,cAAc;AAAA,MAE7D;AAAA,MACA,eAAa;AAAA,MACb,WAAW;AAAA,QACT,cAAc,EAAE,OAAO,QAAQ,CAAC;AAAA,QAChC,WAAW,EAAE,aAAa,SAAS,CAAC;AAAA,QACpC;AAAA,MACF;AAAA,MACA,OAAO;AAAA,MACN,GAAG;AAAA;AAAA,EACN;AAEJ,CAAC;AAEA,QAAqD,cAAc;",
6
6
  "names": []
@@ -1,7 +1,7 @@
1
1
  import "../../core/utils/colorUtils.css";
2
2
  import "./Divider.css";
3
3
  import { createRuntimeFn as _7a468 } from "@vanilla-extract/recipes/createRuntimeFn";
4
- var dividerCSS = _7a468({ defaultClassName: "Divider_dividerCSS__1ljcfp90", variantClassNames: { orientation: { horizontal: "Divider_dividerCSS_orientation_horizontal__1ljcfp91", vertical: "Divider_dividerCSS_orientation_vertical__1ljcfp92" }, flexItem: { true: "Divider_dividerCSS_flexItem_true__1ljcfp93", false: "Divider_dividerCSS_flexItem_false__1ljcfp94" } }, defaultVariants: {}, compoundVariants: [[{ orientation: "horizontal", flexItem: false }, "Divider_dividerCSS_compound_0__1ljcfp95"], [{ orientation: "vertical", flexItem: true }, "Divider_dividerCSS_compound_1__1ljcfp96"]] });
4
+ var dividerCSS = _7a468({ defaultClassName: "Divider_dividerCSS__1thxv8m0", variantClassNames: { orientation: { horizontal: "Divider_dividerCSS_orientation_horizontal__1thxv8m1", vertical: "Divider_dividerCSS_orientation_vertical__1thxv8m2" }, flexItem: { true: "Divider_dividerCSS_flexItem_true__1thxv8m3", false: "Divider_dividerCSS_flexItem_false__1thxv8m4" } }, defaultVariants: {}, compoundVariants: [[{ orientation: "horizontal", flexItem: false }, "Divider_dividerCSS_compound_0__1thxv8m5"], [{ orientation: "vertical", flexItem: true }, "Divider_dividerCSS_compound_1__1thxv8m6"]] });
5
5
  export {
6
6
  dividerCSS
7
7
  };
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../../../src/layouts/Divider/Divider.css.ts"],
4
- "sourcesContent": ["import '../../core/utils/colorUtils.css';\nimport './Divider.css';\nimport { createRuntimeFn as _7a468 } from '@vanilla-extract/recipes/createRuntimeFn';\nexport var dividerCSS = _7a468({defaultClassName:'Divider_dividerCSS__1ljcfp90',variantClassNames:{orientation:{horizontal:'Divider_dividerCSS_orientation_horizontal__1ljcfp91',vertical:'Divider_dividerCSS_orientation_vertical__1ljcfp92'},flexItem:{true:'Divider_dividerCSS_flexItem_true__1ljcfp93',false:'Divider_dividerCSS_flexItem_false__1ljcfp94'}},defaultVariants:{},compoundVariants:[[{orientation:'horizontal',flexItem:false},'Divider_dividerCSS_compound_0__1ljcfp95'],[{orientation:'vertical',flexItem:true},'Divider_dividerCSS_compound_1__1ljcfp96']]});"],
3
+ "sources": ["../../../../src/layouts/divider/Divider.css.ts"],
4
+ "sourcesContent": ["import '../../core/utils/colorUtils.css';\nimport './Divider.css';\nimport { createRuntimeFn as _7a468 } from '@vanilla-extract/recipes/createRuntimeFn';\nexport var dividerCSS = _7a468({defaultClassName:'Divider_dividerCSS__1thxv8m0',variantClassNames:{orientation:{horizontal:'Divider_dividerCSS_orientation_horizontal__1thxv8m1',vertical:'Divider_dividerCSS_orientation_vertical__1thxv8m2'},flexItem:{true:'Divider_dividerCSS_flexItem_true__1thxv8m3',false:'Divider_dividerCSS_flexItem_false__1thxv8m4'}},defaultVariants:{},compoundVariants:[[{orientation:'horizontal',flexItem:false},'Divider_dividerCSS_compound_0__1thxv8m5'],[{orientation:'vertical',flexItem:true},'Divider_dividerCSS_compound_1__1thxv8m6']]});"],
5
5
  "mappings": "AAAA,OAAO;AACP,OAAO;AACP,SAAS,mBAAmB,cAAc;AACnC,IAAI,aAAa,OAAO,EAAC,kBAAiB,gCAA+B,mBAAkB,EAAC,aAAY,EAAC,YAAW,uDAAsD,UAAS,oDAAmD,GAAE,UAAS,EAAC,MAAK,8CAA6C,OAAM,8CAA6C,EAAC,GAAE,iBAAgB,CAAC,GAAE,kBAAiB,CAAC,CAAC,EAAC,aAAY,cAAa,UAAS,MAAK,GAAE,yCAAyC,GAAE,CAAC,EAAC,aAAY,YAAW,UAAS,KAAI,GAAE,yCAAyC,CAAC,EAAC,CAAC;",
6
6
  "names": []
7
7
  }
@@ -0,0 +1,13 @@
1
+ import {
2
+ marginProperties
3
+ } from "../../styles/sprinkle-properties.js";
4
+ const spacingToCss = (spacingToken) => {
5
+ if (spacingToken === void 0) {
6
+ return void 0;
7
+ }
8
+ return marginProperties[spacingToken];
9
+ };
10
+ export {
11
+ spacingToCss
12
+ };
13
+ //# sourceMappingURL=spacingToCss.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/layouts/helpers/spacingToCss.ts"],
4
+ "sourcesContent": ["import {\n type MarginProperties,\n marginProperties,\n} from '../../styles/sprinkle-properties.js';\n\n/**\n * Converts a spacing token to its corresponding CSS value.\n * @internal\n */\nexport const spacingToCss = (\n spacingToken: MarginProperties | undefined,\n): number | string | undefined => {\n if (spacingToken === undefined) {\n return undefined;\n }\n return marginProperties[spacingToken];\n};\n"],
5
+ "mappings": "AAAA;AAAA,EAEE;AAAA,OACK;AAMA,MAAM,eAAe,CAC1B,iBACgC;AAChC,MAAI,iBAAiB,QAAW;AAC9B,WAAO;AAAA,EACT;AACA,SAAO,iBAAiB,YAAY;AACtC;",
6
+ "names": []
7
+ }
@@ -0,0 +1,15 @@
1
+ const useLayoutSizeProps = (props) => {
2
+ const { width, minWidth, maxWidth, height, minHeight, maxHeight } = props;
3
+ return {
4
+ width,
5
+ minWidth,
6
+ maxWidth,
7
+ height,
8
+ minHeight,
9
+ maxHeight
10
+ };
11
+ };
12
+ export {
13
+ useLayoutSizeProps
14
+ };
15
+ //# sourceMappingURL=useLayoutSizeProps.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/layouts/hooks/useLayoutSizeProps.ts"],
4
+ "sourcesContent": ["import type { LayoutSizeProps, LayoutSizeCSS } from '../types/layout.types.js';\n\n/**\n * Returns the layout size properties.\n * @internal\n */\nexport const useLayoutSizeProps = (props: LayoutSizeProps): LayoutSizeCSS => {\n const { width, minWidth, maxWidth, height, minHeight, maxHeight } = props;\n\n return {\n width,\n minWidth,\n maxWidth,\n height,\n minHeight,\n maxHeight,\n };\n};\n"],
5
+ "mappings": "AAMO,MAAM,qBAAqB,CAAC,UAA0C;AAC3E,QAAM,EAAE,OAAO,UAAU,UAAU,QAAQ,WAAW,UAAU,IAAI;AAEpE,SAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACF;",
6
+ "names": []
7
+ }
@@ -0,0 +1,105 @@
1
+ import { useLayoutSizeProps } from "./useLayoutSizeProps.js";
2
+ import { useMarginProps } from "./useMarginProps.js";
3
+ import { usePaddingProps } from "./usePaddingProps.js";
4
+ function useLayoutStyles(props, defaultStyles) {
5
+ const {
6
+ /** Padding props */
7
+ padding,
8
+ p,
9
+ paddingX,
10
+ px,
11
+ paddingY,
12
+ py,
13
+ paddingTop,
14
+ pt,
15
+ paddingRight,
16
+ pr,
17
+ paddingBottom,
18
+ pb,
19
+ paddingLeft,
20
+ pl,
21
+ /** Margin props */
22
+ margin,
23
+ m,
24
+ marginX,
25
+ mx,
26
+ marginY,
27
+ my,
28
+ marginTop,
29
+ mt,
30
+ marginRight,
31
+ mr,
32
+ marginBottom,
33
+ mb,
34
+ marginLeft,
35
+ ml,
36
+ /** Layout props */
37
+ width,
38
+ minWidth,
39
+ maxWidth,
40
+ height,
41
+ minHeight,
42
+ maxHeight,
43
+ /** filtered remaining props for passing back to component */
44
+ ...remainingProps
45
+ } = props;
46
+ const paddingProps = {
47
+ padding,
48
+ p,
49
+ paddingX,
50
+ px,
51
+ paddingY,
52
+ py,
53
+ paddingTop,
54
+ pt,
55
+ paddingRight,
56
+ pr,
57
+ paddingBottom,
58
+ pb,
59
+ paddingLeft,
60
+ pl
61
+ };
62
+ const marginProps = {
63
+ margin,
64
+ m,
65
+ marginX,
66
+ mx,
67
+ marginY,
68
+ my,
69
+ marginTop,
70
+ mt,
71
+ marginRight,
72
+ mr,
73
+ marginBottom,
74
+ mb,
75
+ marginLeft,
76
+ ml
77
+ };
78
+ const layoutProps = {
79
+ width,
80
+ minWidth,
81
+ maxWidth,
82
+ height,
83
+ minHeight,
84
+ maxHeight
85
+ };
86
+ const paddingStyles = usePaddingProps(
87
+ paddingProps,
88
+ defaultStyles.paddingDefaults
89
+ );
90
+ const marginStyles = useMarginProps(
91
+ marginProps,
92
+ defaultStyles.marginDefaults
93
+ );
94
+ const layoutSizeStyles = useLayoutSizeProps(layoutProps);
95
+ return {
96
+ paddingStyles,
97
+ marginStyles,
98
+ layoutSizeStyles,
99
+ remainingProps
100
+ };
101
+ }
102
+ export {
103
+ useLayoutStyles
104
+ };
105
+ //# sourceMappingURL=useLayoutStyles.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/layouts/hooks/useLayoutStyles.tsx"],
4
+ "sourcesContent": ["import { useLayoutSizeProps } from './useLayoutSizeProps.js';\nimport { useMarginProps } from './useMarginProps.js';\nimport { usePaddingProps } from './usePaddingProps.js';\nimport { SpacingProps } from '../../styles/getSpacingSprinkles.js';\nimport type { SurfaceProps } from '../surface/Surface.js';\nimport type {\n LayoutStyles,\n LayoutSizeProps,\n DefaultStyles,\n} from '../types/layout.types.js';\n\n/**\n * Generates layout styles including padding, margin, and size properties.\n * @internal\n */\n/* eslint-disable @typescript-eslint/no-explicit-any */\nexport function useLayoutStyles(\n props: SurfaceProps<any>,\n defaultStyles: DefaultStyles,\n): LayoutStyles {\n const {\n /** Padding props */\n padding,\n p,\n paddingX,\n px,\n paddingY,\n py,\n paddingTop,\n pt,\n paddingRight,\n pr,\n paddingBottom,\n pb,\n paddingLeft,\n pl,\n\n /** Margin props */\n margin,\n m,\n marginX,\n mx,\n marginY,\n my,\n marginTop,\n mt,\n marginRight,\n mr,\n marginBottom,\n mb,\n marginLeft,\n ml,\n\n /** Layout props */\n width,\n minWidth,\n maxWidth,\n height,\n minHeight,\n maxHeight,\n\n /** filtered remaining props for passing back to component */\n ...remainingProps\n } = props;\n\n const paddingProps: Pick<\n SpacingProps,\n | 'padding'\n | 'p'\n | 'paddingX'\n | 'px'\n | 'paddingY'\n | 'py'\n | 'paddingTop'\n | 'pt'\n | 'paddingRight'\n | 'pr'\n | 'paddingBottom'\n | 'pb'\n | 'paddingLeft'\n | 'pl'\n > = {\n padding,\n p,\n paddingX,\n px,\n paddingY,\n py,\n paddingTop,\n pt,\n paddingRight,\n pr,\n paddingBottom,\n pb,\n paddingLeft,\n pl,\n };\n\n const marginProps: Pick<\n SpacingProps,\n | 'margin'\n | 'm'\n | 'marginX'\n | 'mx'\n | 'marginY'\n | 'my'\n | 'marginTop'\n | 'mt'\n | 'marginRight'\n | 'mr'\n | 'marginBottom'\n | 'mb'\n | 'marginLeft'\n | 'ml'\n > = {\n margin,\n m,\n marginX,\n mx,\n marginY,\n my,\n marginTop,\n mt,\n marginRight,\n mr,\n marginBottom,\n mb,\n marginLeft,\n ml,\n };\n\n const layoutProps: LayoutSizeProps = {\n width,\n minWidth,\n maxWidth,\n height,\n minHeight,\n maxHeight,\n };\n\n const paddingStyles = usePaddingProps(\n paddingProps,\n defaultStyles.paddingDefaults,\n );\n const marginStyles = useMarginProps(\n marginProps,\n defaultStyles.marginDefaults,\n );\n const layoutSizeStyles = useLayoutSizeProps(layoutProps);\n\n return {\n paddingStyles,\n marginStyles,\n layoutSizeStyles,\n remainingProps,\n };\n}\n"],
5
+ "mappings": "AAAA,SAAS,0BAA0B;AACnC,SAAS,sBAAsB;AAC/B,SAAS,uBAAuB;AAczB,SAAS,gBACd,OACA,eACc;AACd,QAAM;AAAA;AAAA,IAEJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAAA,IAGA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAAA,IAGA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAAA,IAGA,GAAG;AAAA,EACL,IAAI;AAEJ,QAAM,eAgBF;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAEA,QAAM,cAgBF;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAEA,QAAM,cAA+B;AAAA,IACnC;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAEA,QAAM,gBAAgB;AAAA,IACpB;AAAA,IACA,cAAc;AAAA,EAChB;AACA,QAAM,eAAe;AAAA,IACnB;AAAA,IACA,cAAc;AAAA,EAChB;AACA,QAAM,mBAAmB,mBAAmB,WAAW;AAEvD,SAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACF;",
6
+ "names": []
7
+ }
@@ -0,0 +1,55 @@
1
+ import { merge } from "lodash-es";
2
+ import { spacingToCss } from "../helpers/spacingToCss.js";
3
+ const defaultMargin = {
4
+ margin: 0,
5
+ marginTop: 0,
6
+ marginRight: 0,
7
+ marginBottom: 0,
8
+ marginLeft: 0
9
+ };
10
+ const useMarginProps = (props, defaultMarginProps = defaultMargin) => {
11
+ const {
12
+ margin,
13
+ m,
14
+ marginX,
15
+ mx,
16
+ marginY,
17
+ my,
18
+ marginTop,
19
+ mt,
20
+ marginRight,
21
+ mr,
22
+ marginBottom,
23
+ mb,
24
+ marginLeft,
25
+ ml
26
+ } = props;
27
+ const convertedDefaultMarginProps = {
28
+ marginTop: spacingToCss(
29
+ defaultMarginProps.marginTop ?? defaultMarginProps.margin
30
+ ),
31
+ marginLeft: spacingToCss(
32
+ defaultMarginProps.marginLeft ?? defaultMarginProps.margin
33
+ ),
34
+ marginBottom: spacingToCss(
35
+ defaultMarginProps.marginBottom ?? defaultMarginProps.margin
36
+ ),
37
+ marginRight: spacingToCss(
38
+ defaultMarginProps.marginRight ?? defaultMarginProps.margin
39
+ )
40
+ };
41
+ return merge({}, convertedDefaultMarginProps, {
42
+ marginTop: spacingToCss(mt ?? marginTop ?? my ?? marginY ?? m ?? margin),
43
+ marginRight: spacingToCss(
44
+ mr ?? marginRight ?? mx ?? marginX ?? m ?? margin
45
+ ),
46
+ marginBottom: spacingToCss(
47
+ mb ?? marginBottom ?? my ?? marginY ?? m ?? margin
48
+ ),
49
+ marginLeft: spacingToCss(ml ?? marginLeft ?? mx ?? marginX ?? m ?? margin)
50
+ });
51
+ };
52
+ export {
53
+ useMarginProps
54
+ };
55
+ //# sourceMappingURL=useMarginProps.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/layouts/hooks/useMarginProps.ts"],
4
+ "sourcesContent": ["import { merge } from 'lodash-es';\n\nimport { SpacingProps } from '../../styles/getSpacingSprinkles.js';\nimport { spacingToCss } from '../helpers/spacingToCss.js';\nimport type { MarginCSS, DefaultMargin } from '../types/layout.types.js';\n\nconst defaultMargin: DefaultMargin = {\n margin: 0,\n marginTop: 0,\n marginRight: 0,\n marginBottom: 0,\n marginLeft: 0,\n};\n\n/**\n * Generates CSS margin properties based on the provided margin props and default margin values.\n * @internal\n */\nexport const useMarginProps = (\n props: SpacingProps,\n defaultMarginProps: DefaultMargin = defaultMargin,\n): MarginCSS => {\n const {\n margin,\n m,\n marginX,\n mx,\n marginY,\n my,\n marginTop,\n mt,\n marginRight,\n mr,\n marginBottom,\n mb,\n marginLeft,\n ml,\n } = props;\n\n const convertedDefaultMarginProps = {\n marginTop: spacingToCss(\n defaultMarginProps.marginTop ?? defaultMarginProps.margin,\n ),\n marginLeft: spacingToCss(\n defaultMarginProps.marginLeft ?? defaultMarginProps.margin,\n ),\n marginBottom: spacingToCss(\n defaultMarginProps.marginBottom ?? defaultMarginProps.margin,\n ),\n marginRight: spacingToCss(\n defaultMarginProps.marginRight ?? defaultMarginProps.margin,\n ),\n };\n\n return merge({}, convertedDefaultMarginProps, {\n marginTop: spacingToCss(mt ?? marginTop ?? my ?? marginY ?? m ?? margin),\n marginRight: spacingToCss(\n mr ?? marginRight ?? mx ?? marginX ?? m ?? margin,\n ),\n marginBottom: spacingToCss(\n mb ?? marginBottom ?? my ?? marginY ?? m ?? margin,\n ),\n marginLeft: spacingToCss(ml ?? marginLeft ?? mx ?? marginX ?? m ?? margin),\n });\n};\n"],
5
+ "mappings": "AAAA,SAAS,aAAa;AAGtB,SAAS,oBAAoB;AAG7B,MAAM,gBAA+B;AAAA,EACnC,QAAQ;AAAA,EACR,WAAW;AAAA,EACX,aAAa;AAAA,EACb,cAAc;AAAA,EACd,YAAY;AACd;AAMO,MAAM,iBAAiB,CAC5B,OACA,qBAAoC,kBACtB;AACd,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,IAAI;AAEJ,QAAM,8BAA8B;AAAA,IAClC,WAAW;AAAA,MACT,mBAAmB,aAAa,mBAAmB;AAAA,IACrD;AAAA,IACA,YAAY;AAAA,MACV,mBAAmB,cAAc,mBAAmB;AAAA,IACtD;AAAA,IACA,cAAc;AAAA,MACZ,mBAAmB,gBAAgB,mBAAmB;AAAA,IACxD;AAAA,IACA,aAAa;AAAA,MACX,mBAAmB,eAAe,mBAAmB;AAAA,IACvD;AAAA,EACF;AAEA,SAAO,MAAM,CAAC,GAAG,6BAA6B;AAAA,IAC5C,WAAW,aAAa,MAAM,aAAa,MAAM,WAAW,KAAK,MAAM;AAAA,IACvE,aAAa;AAAA,MACX,MAAM,eAAe,MAAM,WAAW,KAAK;AAAA,IAC7C;AAAA,IACA,cAAc;AAAA,MACZ,MAAM,gBAAgB,MAAM,WAAW,KAAK;AAAA,IAC9C;AAAA,IACA,YAAY,aAAa,MAAM,cAAc,MAAM,WAAW,KAAK,MAAM;AAAA,EAC3E,CAAC;AACH;",
6
+ "names": []
7
+ }
@@ -0,0 +1,59 @@
1
+ import { merge } from "lodash-es";
2
+ import { spacingToCss } from "../helpers/spacingToCss.js";
3
+ const defaultPadding = {
4
+ padding: 0,
5
+ paddingTop: 0,
6
+ paddingRight: 0,
7
+ paddingBottom: 0,
8
+ paddingLeft: 0
9
+ };
10
+ const usePaddingProps = (props, defaultPaddingProps = defaultPadding) => {
11
+ const {
12
+ padding,
13
+ p,
14
+ paddingX,
15
+ px,
16
+ paddingY,
17
+ py,
18
+ paddingTop,
19
+ pt,
20
+ paddingRight,
21
+ pr,
22
+ paddingBottom,
23
+ pb,
24
+ paddingLeft,
25
+ pl
26
+ } = props;
27
+ const convertedDefaultPaddingProps = {
28
+ paddingTop: spacingToCss(
29
+ defaultPaddingProps.paddingTop ?? defaultPaddingProps.padding
30
+ ),
31
+ paddingLeft: spacingToCss(
32
+ defaultPaddingProps.paddingLeft ?? defaultPaddingProps.padding
33
+ ),
34
+ paddingBottom: spacingToCss(
35
+ defaultPaddingProps.paddingBottom ?? defaultPaddingProps.padding
36
+ ),
37
+ paddingRight: spacingToCss(
38
+ defaultPaddingProps.paddingRight ?? defaultPaddingProps.padding
39
+ )
40
+ };
41
+ return merge({}, convertedDefaultPaddingProps, {
42
+ paddingTop: spacingToCss(
43
+ pt ?? paddingTop ?? py ?? paddingY ?? p ?? padding
44
+ ),
45
+ paddingRight: spacingToCss(
46
+ pr ?? paddingRight ?? px ?? paddingX ?? p ?? padding
47
+ ),
48
+ paddingBottom: spacingToCss(
49
+ pb ?? paddingBottom ?? py ?? paddingY ?? p ?? padding
50
+ ),
51
+ paddingLeft: spacingToCss(
52
+ pl ?? paddingLeft ?? px ?? paddingX ?? p ?? padding
53
+ )
54
+ });
55
+ };
56
+ export {
57
+ usePaddingProps
58
+ };
59
+ //# sourceMappingURL=usePaddingProps.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/layouts/hooks/usePaddingProps.ts"],
4
+ "sourcesContent": ["import { merge } from 'lodash-es';\n\nimport { SpacingProps } from '../../styles/getSpacingSprinkles.js';\nimport { spacingToCss } from '../helpers/spacingToCss.js';\nimport type { PaddingCSS, DefaultPadding } from '../types/layout.types.js';\n\nconst defaultPadding: DefaultPadding = {\n padding: 0,\n paddingTop: 0,\n paddingRight: 0,\n paddingBottom: 0,\n paddingLeft: 0,\n};\n\n/**\n * Generates CSS padding properties based on the provided padding props and default padding values.\n * @internal\n */\nexport const usePaddingProps = (\n props: SpacingProps,\n defaultPaddingProps: DefaultPadding = defaultPadding,\n): PaddingCSS => {\n const {\n padding,\n p,\n paddingX,\n px,\n paddingY,\n py,\n paddingTop,\n pt,\n paddingRight,\n pr,\n paddingBottom,\n pb,\n paddingLeft,\n pl,\n } = props;\n\n const convertedDefaultPaddingProps = {\n paddingTop: spacingToCss(\n defaultPaddingProps.paddingTop ?? defaultPaddingProps.padding,\n ),\n paddingLeft: spacingToCss(\n defaultPaddingProps.paddingLeft ?? defaultPaddingProps.padding,\n ),\n paddingBottom: spacingToCss(\n defaultPaddingProps.paddingBottom ?? defaultPaddingProps.padding,\n ),\n paddingRight: spacingToCss(\n defaultPaddingProps.paddingRight ?? defaultPaddingProps.padding,\n ),\n };\n\n return merge({}, convertedDefaultPaddingProps, {\n paddingTop: spacingToCss(\n pt ?? paddingTop ?? py ?? paddingY ?? p ?? padding,\n ),\n paddingRight: spacingToCss(\n pr ?? paddingRight ?? px ?? paddingX ?? p ?? padding,\n ),\n paddingBottom: spacingToCss(\n pb ?? paddingBottom ?? py ?? paddingY ?? p ?? padding,\n ),\n paddingLeft: spacingToCss(\n pl ?? paddingLeft ?? px ?? paddingX ?? p ?? padding,\n ),\n });\n};\n"],
5
+ "mappings": "AAAA,SAAS,aAAa;AAGtB,SAAS,oBAAoB;AAG7B,MAAM,iBAAiC;AAAA,EACrC,SAAS;AAAA,EACT,YAAY;AAAA,EACZ,cAAc;AAAA,EACd,eAAe;AAAA,EACf,aAAa;AACf;AAMO,MAAM,kBAAkB,CAC7B,OACA,sBAAsC,mBACvB;AACf,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,IAAI;AAEJ,QAAM,+BAA+B;AAAA,IACnC,YAAY;AAAA,MACV,oBAAoB,cAAc,oBAAoB;AAAA,IACxD;AAAA,IACA,aAAa;AAAA,MACX,oBAAoB,eAAe,oBAAoB;AAAA,IACzD;AAAA,IACA,eAAe;AAAA,MACb,oBAAoB,iBAAiB,oBAAoB;AAAA,IAC3D;AAAA,IACA,cAAc;AAAA,MACZ,oBAAoB,gBAAgB,oBAAoB;AAAA,IAC1D;AAAA,EACF;AAEA,SAAO,MAAM,CAAC,GAAG,8BAA8B;AAAA,IAC7C,YAAY;AAAA,MACV,MAAM,cAAc,MAAM,YAAY,KAAK;AAAA,IAC7C;AAAA,IACA,cAAc;AAAA,MACZ,MAAM,gBAAgB,MAAM,YAAY,KAAK;AAAA,IAC/C;AAAA,IACA,eAAe;AAAA,MACb,MAAM,iBAAiB,MAAM,YAAY,KAAK;AAAA,IAChD;AAAA,IACA,aAAa;AAAA,MACX,MAAM,eAAe,MAAM,YAAY,KAAK;AAAA,IAC9C;AAAA,EACF,CAAC;AACH;",
6
+ "names": []
7
+ }
@@ -1,11 +1,15 @@
1
1
  import { Flex } from "./flex/Flex.js";
2
2
  import { Grid } from "./grid/Grid.js";
3
- import { Divider } from "./Divider/Divider.js";
3
+ import { Divider } from "./divider/Divider.js";
4
4
  import { Container } from "./container/Container.js";
5
+ import { Surface } from "./surface/Surface.js";
6
+ import { surfaceBorderRadius } from "./surface/variables.sty.js";
5
7
  export {
6
8
  Container,
7
9
  Divider,
8
10
  Flex,
9
- Grid
11
+ Grid,
12
+ Surface,
13
+ surfaceBorderRadius as _surfaceBorderRadius
10
14
  };
11
15
  //# sourceMappingURL=index.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/layouts/index.ts"],
4
- "sourcesContent": ["export { Flex, type FlexOwnProps, type FlexProps } from './flex/Flex.js';\nexport { Grid, type GridOwnProps, type GridProps } from './grid/Grid.js';\nexport { Divider } from './Divider/Divider.js';\nexport type { DividerProps } from './Divider/Divider.js';\nexport { Container } from './container/Container.js';\nexport type {\n ContainerOwnProps,\n ContainerProps,\n} from './container/Container.js';\n"],
5
- "mappings": "AAAA,SAAS,YAA+C;AACxD,SAAS,YAA+C;AACxD,SAAS,eAAe;AAExB,SAAS,iBAAiB;",
4
+ "sourcesContent": ["export { Flex, type FlexOwnProps, type FlexProps } from './flex/Flex.js';\nexport { Grid, type GridOwnProps, type GridProps } from './grid/Grid.js';\nexport { Divider } from './divider/Divider.js';\nexport type { DividerProps } from './divider/Divider.js';\nexport { Container } from './container/Container.js';\nexport type {\n ContainerOwnProps,\n ContainerProps,\n} from './container/Container.js';\nexport type { LayoutSizeCSS } from './types/layout.types.js';\nexport { Surface } from './surface/Surface.js';\nexport type { SurfaceOwnProps, SurfaceProps } from './surface/Surface.js';\nexport { surfaceBorderRadius as _surfaceBorderRadius } from './surface/variables.sty.js';\n"],
5
+ "mappings": "AAAA,SAAS,YAA+C;AACxD,SAAS,YAA+C;AACxD,SAAS,eAAe;AAExB,SAAS,iBAAiB;AAM1B,SAAS,eAAe;AAExB,SAAgC,2BAA4B;",
6
6
  "names": []
7
7
  }