reshaped 3.7.0-canary.9 → 3.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (216) hide show
  1. package/CHANGELOG.md +36 -1
  2. package/dist/bundle.css +1 -1
  3. package/dist/bundle.d.ts +1 -2
  4. package/dist/bundle.js +11 -11
  5. package/dist/cjs/themes/_generator/tokens/color/utilities/generateColors.js +1 -1
  6. package/dist/cjs/themes/_generator/tokens/css.js +2 -2
  7. package/dist/cjs/themes/figma/theme.css +1 -1
  8. package/dist/cjs/themes/fragments/twitter/theme.css +1 -1
  9. package/dist/cjs/themes/reshaped/theme.css +1 -1
  10. package/dist/cjs/themes/slate/theme.css +1 -1
  11. package/dist/components/Accordion/Accordion.types.d.ts +2 -0
  12. package/dist/components/ActionBar/ActionBar.js +12 -4
  13. package/dist/components/ActionBar/ActionBar.module.css +1 -1
  14. package/dist/components/ActionBar/ActionBar.types.d.ts +4 -1
  15. package/dist/components/ActionBar/tests/ActionBar.stories.d.ts +19 -1
  16. package/dist/components/ActionBar/tests/ActionBar.stories.js +161 -3
  17. package/dist/components/Actionable/Actionable.js +3 -3
  18. package/dist/components/Actionable/Actionable.module.css +1 -1
  19. package/dist/components/Actionable/Actionable.types.d.ts +1 -0
  20. package/dist/components/Autocomplete/Autocomplete.js +66 -25
  21. package/dist/components/Autocomplete/Autocomplete.types.d.ts +2 -0
  22. package/dist/components/Autocomplete/tests/Autocomplete.stories.js +8 -8
  23. package/dist/components/Avatar/Avatar.js +4 -4
  24. package/dist/components/Badge/Badge.js +3 -3
  25. package/dist/components/Badge/Badge.module.css +1 -1
  26. package/dist/components/Badge/Badge.types.d.ts +4 -4
  27. package/dist/components/Badge/tests/Badge.stories.js +11 -0
  28. package/dist/components/Button/Button.module.css +1 -1
  29. package/dist/components/Calendar/Calendar.types.d.ts +1 -0
  30. package/dist/components/Calendar/Calendar.utils.d.ts +11 -0
  31. package/dist/components/Calendar/Calendar.utils.js +25 -0
  32. package/dist/components/Calendar/CalendarDate.js +6 -2
  33. package/dist/components/Calendar/CalendarMonth.js +9 -23
  34. package/dist/components/Calendar/tests/Calendar.stories.js +9 -2
  35. package/dist/components/Card/Card.d.ts +1 -1
  36. package/dist/components/Card/Card.js +9 -12
  37. package/dist/components/Card/Card.module.css +1 -1
  38. package/dist/components/Card/tests/Card.stories.d.ts +1 -1
  39. package/dist/components/Card/tests/Card.test.stories.d.ts +1 -1
  40. package/dist/components/Carousel/Carousel.js +3 -1
  41. package/dist/components/Carousel/Carousel.types.d.ts +1 -0
  42. package/dist/components/Carousel/CarouselControl.d.ts +1 -2
  43. package/dist/components/Carousel/CarouselControl.js +8 -7
  44. package/dist/components/Checkbox/Checkbox.module.css +1 -1
  45. package/dist/components/DropdownMenu/DropdownMenu.js +9 -6
  46. package/dist/components/FileUpload/FileUpload.js +5 -3
  47. package/dist/components/FileUpload/FileUpload.module.css +1 -1
  48. package/dist/components/FileUpload/FileUpload.types.d.ts +5 -1
  49. package/dist/components/FileUpload/tests/FileUpload.stories.d.ts +18 -2
  50. package/dist/components/FileUpload/tests/FileUpload.stories.js +102 -23
  51. package/dist/components/Flyout/Flyout.module.css +1 -1
  52. package/dist/components/Flyout/Flyout.types.d.ts +2 -1
  53. package/dist/components/Flyout/FlyoutContent.js +3 -3
  54. package/dist/components/Flyout/FlyoutControlled.js +7 -3
  55. package/dist/components/Flyout/FlyoutTrigger.js +4 -3
  56. package/dist/components/FormControl/FormControl.module.css +1 -1
  57. package/dist/components/FormControl/tests/FormControl.stories.d.ts +4 -0
  58. package/dist/components/FormControl/tests/FormControl.stories.js +18 -0
  59. package/dist/components/Grid/Grid.js +5 -11
  60. package/dist/components/Grid/Grid.types.d.ts +2 -0
  61. package/dist/components/Grid/tests/Grid.stories.js +12 -1
  62. package/dist/components/HiddenVisually/HiddenVisually.module.css +1 -1
  63. package/dist/components/Icon/Icon.js +4 -4
  64. package/dist/components/Image/Image.js +4 -15
  65. package/dist/components/MenuItem/MenuItem.js +2 -2
  66. package/dist/components/MenuItem/MenuItem.module.css +1 -1
  67. package/dist/components/MenuItem/MenuItem.types.d.ts +1 -0
  68. package/dist/components/Modal/Modal.js +4 -4
  69. package/dist/components/Modal/Modal.module.css +1 -1
  70. package/dist/components/Modal/tests/Modal.test.stories.js +2 -2
  71. package/dist/components/Overlay/tests/Overlay.test.stories.js +4 -2
  72. package/dist/components/PinField/PinField.module.css +1 -1
  73. package/dist/components/Popover/Popover.js +5 -5
  74. package/dist/components/Popover/Popover.module.css +1 -1
  75. package/dist/components/Popover/Popover.types.d.ts +1 -1
  76. package/dist/components/Popover/tests/Popover.stories.d.ts +1 -0
  77. package/dist/components/Popover/tests/Popover.stories.js +24 -4
  78. package/dist/components/ProgressIndicator/ProgressIndicator.module.css +1 -1
  79. package/dist/components/Reshaped/Reshaped.css +1 -1
  80. package/dist/components/Resizable/Resizable.module.css +1 -1
  81. package/dist/components/ScrollArea/ScrollArea.js +5 -7
  82. package/dist/components/ScrollArea/ScrollArea.module.css +1 -1
  83. package/dist/components/Select/Select.module.css +1 -1
  84. package/dist/components/Slider/Slider.module.css +1 -1
  85. package/dist/components/Switch/Switch.js +1 -1
  86. package/dist/components/Switch/Switch.module.css +1 -1
  87. package/dist/components/Table/Table.js +4 -7
  88. package/dist/components/Tabs/TabsItem.js +2 -1
  89. package/dist/components/Tabs/TabsList.js +2 -2
  90. package/dist/components/Text/Text.js +4 -4
  91. package/dist/components/TextField/TextField.module.css +1 -1
  92. package/dist/components/TextField/tests/TextField.stories.js +3 -1
  93. package/dist/components/Theme/Theme.js +7 -2
  94. package/dist/components/Theme/Theme.types.d.ts +12 -13
  95. package/dist/components/Theme/index.d.ts +1 -1
  96. package/dist/components/Theme/tests/{Theme.test.stories.d.ts → Theme.stories.d.ts} +1 -0
  97. package/dist/components/Theme/tests/{Theme.test.stories.js → Theme.stories.js} +39 -1
  98. package/dist/components/Theme/useTheme.d.ts +6 -6
  99. package/dist/components/View/View.js +43 -60
  100. package/dist/components/View/View.module.css +1 -1
  101. package/dist/components/View/View.types.d.ts +7 -0
  102. package/dist/components/View/tests/View.stories.d.ts +4 -0
  103. package/dist/components/View/tests/View.stories.js +65 -1
  104. package/dist/components/_private/Portal/Portal.js +9 -1
  105. package/dist/config/tailwind.d.ts +1 -1
  106. package/dist/hooks/_private/useIsDismissible.js +11 -8
  107. package/dist/hooks/useToggle.d.ts +1 -1
  108. package/dist/hooks/useToggle.js +1 -0
  109. package/dist/index.d.ts +1 -2
  110. package/dist/styles/mixin.d.ts +6 -0
  111. package/dist/styles/mixin.js +71 -0
  112. package/dist/styles/resolvers/align/align.css +1 -0
  113. package/dist/styles/resolvers/align/index.d.ts +4 -0
  114. package/dist/styles/resolvers/align/index.js +10 -0
  115. package/dist/styles/resolvers/aspectRatio/aspectRatio.css +1 -0
  116. package/dist/styles/resolvers/aspectRatio/index.d.ts +4 -0
  117. package/dist/styles/resolvers/aspectRatio/index.js +10 -0
  118. package/dist/styles/resolvers/bleed/bleed.module.css +1 -0
  119. package/dist/styles/resolvers/bleed/index.d.ts +3 -0
  120. package/dist/styles/{bleed → resolvers/bleed}/index.js +4 -4
  121. package/dist/styles/resolvers/border/border.module.css +1 -0
  122. package/dist/styles/resolvers/border/borderWidth.css +1 -0
  123. package/dist/styles/resolvers/border/index.d.ts +11 -0
  124. package/dist/styles/resolvers/border/index.js +74 -0
  125. package/dist/styles/resolvers/height/index.d.ts +3 -0
  126. package/dist/styles/{height → resolvers/height}/index.js +4 -4
  127. package/dist/styles/resolvers/inset/index.d.ts +10 -0
  128. package/dist/styles/resolvers/inset/index.js +38 -0
  129. package/dist/styles/resolvers/inset/inset.css +1 -0
  130. package/dist/styles/resolvers/justify/index.d.ts +4 -0
  131. package/dist/styles/resolvers/justify/index.js +10 -0
  132. package/dist/styles/resolvers/justify/justify.css +1 -0
  133. package/dist/styles/resolvers/margin/index.d.ts +10 -0
  134. package/dist/styles/resolvers/margin/index.js +38 -0
  135. package/dist/styles/resolvers/margin/margin.css +1 -0
  136. package/dist/styles/resolvers/maxHeight/index.d.ts +3 -0
  137. package/dist/styles/{maxHeight → resolvers/maxHeight}/index.js +4 -4
  138. package/dist/styles/resolvers/maxHeight/maxHeight.module.css +1 -0
  139. package/dist/styles/resolvers/maxWidth/index.d.ts +3 -0
  140. package/dist/styles/{maxWidth → resolvers/maxWidth}/index.js +4 -4
  141. package/dist/styles/resolvers/maxWidth/maxWidth.module.css +1 -0
  142. package/dist/styles/resolvers/minHeight/index.d.ts +3 -0
  143. package/dist/styles/{minHeight → resolvers/minHeight}/index.js +4 -4
  144. package/dist/styles/resolvers/minHeight/minHeight.module.css +1 -0
  145. package/dist/styles/resolvers/minWidth/index.d.ts +3 -0
  146. package/dist/styles/{minWidth → resolvers/minWidth}/index.js +4 -4
  147. package/dist/styles/resolvers/minWidth/minWidth.module.css +1 -0
  148. package/dist/styles/resolvers/padding/index.d.ts +10 -0
  149. package/dist/styles/resolvers/padding/index.js +38 -0
  150. package/dist/styles/resolvers/padding/padding.css +1 -0
  151. package/dist/styles/resolvers/position/index.d.ts +4 -0
  152. package/dist/styles/resolvers/position/index.js +9 -0
  153. package/dist/styles/resolvers/position/position.css +1 -0
  154. package/dist/styles/resolvers/radius/index.d.ts +3 -0
  155. package/dist/styles/resolvers/radius/index.js +10 -0
  156. package/dist/styles/resolvers/textAlign/index.d.ts +4 -0
  157. package/dist/styles/resolvers/textAlign/index.js +10 -0
  158. package/dist/styles/resolvers/textAlign/textAlign.css +1 -0
  159. package/dist/styles/resolvers/width/index.d.ts +3 -0
  160. package/dist/styles/{width → resolvers/width}/index.js +4 -4
  161. package/dist/styles/resolvers/width/width.module.css +1 -0
  162. package/dist/styles/types.d.ts +63 -16
  163. package/dist/themes/_generator/tokens/color/utilities/generateColors.js +1 -1
  164. package/dist/themes/_generator/tokens/css.js +2 -2
  165. package/dist/themes/figma/theme.css +1 -1
  166. package/dist/themes/fragments/twitter/theme.css +1 -1
  167. package/dist/themes/reshaped/theme.css +1 -1
  168. package/dist/themes/slate/theme.css +1 -1
  169. package/dist/types/global.d.ts +5 -0
  170. package/dist/utilities/a11y/tests/TrapFocus.stories.js +4 -4
  171. package/package.json +24 -24
  172. package/dist/components/ActionBar/tests/ActionBar.test.stories.d.ts +0 -15
  173. package/dist/components/ActionBar/tests/ActionBar.test.stories.js +0 -26
  174. package/dist/components/FileUpload/tests/FileUpload.test.stories.d.ts +0 -21
  175. package/dist/components/FileUpload/tests/FileUpload.test.stories.js +0 -52
  176. package/dist/styles/align/align.css +0 -1
  177. package/dist/styles/align/index.d.ts +0 -4
  178. package/dist/styles/align/index.js +0 -10
  179. package/dist/styles/aspectRatio/aspectRatio.css +0 -1
  180. package/dist/styles/aspectRatio/index.d.ts +0 -4
  181. package/dist/styles/aspectRatio/index.js +0 -9
  182. package/dist/styles/bleed/bleed.module.css +0 -1
  183. package/dist/styles/bleed/index.d.ts +0 -3
  184. package/dist/styles/border/border.module.css +0 -1
  185. package/dist/styles/border/index.d.ts +0 -3
  186. package/dist/styles/border/index.js +0 -10
  187. package/dist/styles/height/index.d.ts +0 -3
  188. package/dist/styles/inset/index.d.ts +0 -5
  189. package/dist/styles/inset/index.js +0 -11
  190. package/dist/styles/inset/inset.css +0 -1
  191. package/dist/styles/justify/index.d.ts +0 -4
  192. package/dist/styles/justify/index.js +0 -10
  193. package/dist/styles/justify/justify.css +0 -1
  194. package/dist/styles/maxHeight/index.d.ts +0 -3
  195. package/dist/styles/maxHeight/maxHeight.module.css +0 -1
  196. package/dist/styles/maxWidth/index.d.ts +0 -3
  197. package/dist/styles/maxWidth/maxWidth.module.css +0 -1
  198. package/dist/styles/minHeight/index.d.ts +0 -3
  199. package/dist/styles/minHeight/minHeight.module.css +0 -1
  200. package/dist/styles/minWidth/index.d.ts +0 -3
  201. package/dist/styles/minWidth/minWidth.module.css +0 -1
  202. package/dist/styles/padding/index.d.ts +0 -4
  203. package/dist/styles/padding/index.js +0 -9
  204. package/dist/styles/padding/padding.css +0 -1
  205. package/dist/styles/position/index.d.ts +0 -4
  206. package/dist/styles/position/index.js +0 -9
  207. package/dist/styles/position/position.css +0 -1
  208. package/dist/styles/radius/index.d.ts +0 -3
  209. package/dist/styles/radius/index.js +0 -10
  210. package/dist/styles/textAlign/index.d.ts +0 -4
  211. package/dist/styles/textAlign/index.js +0 -10
  212. package/dist/styles/textAlign/textAlign.css +0 -1
  213. package/dist/styles/width/index.d.ts +0 -3
  214. package/dist/styles/width/width.module.css +0 -1
  215. /package/dist/styles/{height → resolvers/height}/height.module.css +0 -0
  216. /package/dist/styles/{radius → resolvers/radius}/radius.module.css +0 -0
@@ -1 +1 @@
1
- .root{--rs-view-gaps-count-multiplier:1;--rs-view-z:auto;--rs-view-gap-value:calc(var(--rs-view-gap) * var(--rs-unit-x1));--rs-view-border-width:0px;gap:var(--rs-view-gap-value);position:relative;z-index:var(--rs-view-z)}.item{--rs-view-item-gap:calc(var(--rs-unit-x1) * var(--rs-view-item-gap-before) - var(--rs-view-gap-value));order:var(--rs-view-item-order)}.--padding{padding:calc(var(--rs-unit-x1) * var(--rs-view-p-vertical, var(--rs-view-p-top)) - var(--rs-view-border-width)) calc(var(--rs-unit-x1) * var(--rs-view-p-horizontal, var(--rs-view-p-start)) - var(--rs-view-border-width));--rs-view-p-vertical-s:0;--rs-view-p-vertical-m:var(--rs-view-p-vertical-s);--rs-view-p-vertical-l:var(--rs-view-p-vertical-m);--rs-view-p-vertical-xl:var(--rs-view-p-vertical-l);--rs-view-p-vertical:var(--rs-view-p-vertical-s);--rs-view-p-horizontal-s:0;--rs-view-p-horizontal-m:var(--rs-view-p-horizontal-s);--rs-view-p-horizontal-l:var(--rs-view-p-horizontal-m);--rs-view-p-horizontal-xl:var(--rs-view-p-horizontal-l);--rs-view-p-horizontal:var(--rs-view-p-horizontal-s)}.root[style*="--rs-view-p-top"]{padding-top:calc(var(--rs-unit-x1) * var(--rs-view-p-top));--rs-view-p-top-s:0;--rs-view-p-top-m:var(--rs-view-p-top-s);--rs-view-p-top-l:var(--rs-view-p-top-m);--rs-view-p-top-xl:var(--rs-view-p-top-l);--rs-view-p-top:var(--rs-view-p-top-s)}.root[style*="--rs-view-p-bottom"]{padding-bottom:calc(var(--rs-unit-x1) * var(--rs-view-p-bottom));--rs-view-p-bottom-s:0;--rs-view-p-bottom-m:var(--rs-view-p-bottom-s);--rs-view-p-bottom-l:var(--rs-view-p-bottom-m);--rs-view-p-bottom-xl:var(--rs-view-p-bottom-l);--rs-view-p-bottom:var(--rs-view-p-bottom-s)}.root[style*="--rs-view-p-start"]{padding-inline-start:calc(var(--rs-unit-x1) * var(--rs-view-p-start));--rs-view-p-start-s:0;--rs-view-p-start-m:var(--rs-view-p-start-s);--rs-view-p-start-l:var(--rs-view-p-start-m);--rs-view-p-start-xl:var(--rs-view-p-start-l);--rs-view-p-start:var(--rs-view-p-start-s)}.root[style*="--rs-view-p-end"]{padding-inline-end:calc(var(--rs-unit-x1) * var(--rs-view-p-end));--rs-view-p-end-s:0;--rs-view-p-end-m:var(--rs-view-p-end-s);--rs-view-p-end-l:var(--rs-view-p-end-m);--rs-view-p-end-xl:var(--rs-view-p-end-l);--rs-view-p-end:var(--rs-view-p-end-s)}.--animated{transition:var(--rs-duration-medium) var(--rs-easing-standard);transition-property:background-color,color,border-color,box-shadow}.--align-text-start{text-align:start}.--align-text-center{text-align:center}.--align-text-end{text-align:end}.--bg-neutral{background-color:var(--rs-color-background-neutral);color:var(--rs-color-on-background-neutral)}.--bg-positive{background-color:var(--rs-color-background-positive);color:var(--rs-color-on-background-positive)}.--bg-warning{background-color:var(--rs-color-background-warning);color:var(--rs-color-on-background-warning)}.--bg-critical{background-color:var(--rs-color-background-critical);color:var(--rs-color-on-background-critical)}.--bg-primary{background-color:var(--rs-color-background-primary);color:var(--rs-color-on-background-primary)}.--bg-neutral-faded{background-color:var(--rs-color-background-neutral-faded);color:var(--rs-color-foreground-neutral)}.--bg-positive-faded{background-color:var(--rs-color-background-positive-faded);color:var(--rs-color-foreground-neutral)}.--bg-warning-faded{background-color:var(--rs-color-background-warning-faded);color:var(--rs-color-foreground-neutral)}.--bg-critical-faded{background-color:var(--rs-color-background-critical-faded);color:var(--rs-color-foreground-neutral)}.--bg-primary-faded{background-color:var(--rs-color-background-primary-faded)}.--bg-page,.--bg-primary-faded{color:var(--rs-color-foreground-neutral)}.--bg-page{background-color:var(--rs-color-background-page)}.--bg-page-faded{background-color:var(--rs-color-background-page-faded)}.--bg-disabled,.--bg-page-faded{color:var(--rs-color-foreground-neutral)}.--bg-disabled{background-color:var(--rs-color-background-disabled)}.--bg-disabled-faded{background-color:var(--rs-color-background-disabled-faded);color:var(--rs-color-foreground-neutral)}.--bg-elevation-base{background-color:var(--rs-color-background-elevation-base);color:var(--rs-color-foreground-neutral)}.--bg-elevation-raised{background-color:var(--rs-color-background-elevation-raised);color:var(--rs-color-foreground-neutral)}.--bg-elevation-overlay{background-color:var(--rs-color-background-elevation-overlay);color:var(--rs-color-foreground-neutral)}.--bg-brand{background-color:var(--rs-color-brand);color:var(--rs-color-on-brand)}.--bg-white{background-color:var(--rs-color-white);color:var(--rs-color-black)}.--bg-black{background-color:var(--rs-color-black);color:var(--rs-color-white)}.--shadow-raised{box-shadow:var(--rs-shadow-raised)}.--shadow-overlay{box-shadow:var(--rs-shadow-overlay)}.--overflow-hidden{overflow:hidden}.--overflow-auto{overflow:auto}.--divided{--rs-view-gaps-count-multiplier:2}.--flex{display:flex;flex-direction:column;justify-content:flex-start}.--direction-column{flex-direction:column;flex-wrap:nowrap}.--direction-column>.item--gap-before{margin-top:var(--rs-view-item-gap)}.--direction-column>.item--gap-auto{margin-top:auto}.--direction-column-reverse{flex-direction:column-reverse;flex-wrap:nowrap}.--direction-column-reverse>.item--gap-before{margin-top:var(--rs-view-item-gap)}.--direction-column-reverse>.item--gap-auto{margin-top:auto}.--direction-row{align-items:flex-start;flex-direction:row;flex-wrap:wrap}.--direction-row>.item--gap-before{margin-inline-start:var(--rs-view-item-gap)}.--direction-row>.item--gap-auto{margin-inline-start:auto}.--direction-row>button{width:auto!important}.--direction-row-reverse{align-items:flex-start;flex-direction:row-reverse;flex-wrap:wrap}.--direction-row-reverse>.item--gap-before{margin-inline-start:var(--rs-view-item-gap)}.--direction-row-reverse>.item--gap-auto{margin-inline-start:auto}.--direction-row-reverse>button{width:auto!important}.--nowrap{flex-wrap:nowrap}.--nowrap>*{flex-shrink:0}.--wrap{flex-wrap:wrap}@media (--rs-viewport-m ){.--nowrap-false--m,.--wrap-true--m{flex-wrap:wrap}.--nowrap-true--m,.--wrap-false--m{flex-wrap:nowrap}}@media (--rs-viewport-l ){.--nowrap-false--l,.--wrap-true--l{flex-wrap:wrap}.--nowrap-true--l,.--wrap-false--l{flex-wrap:nowrap}}@media (--rs-viewport-xl ){.--nowrap-false--xl,.--wrap-true--xl{flex-wrap:wrap}.--nowrap-true--xl,.--wrap-false--xl{flex-wrap:nowrap}}.divider{align-self:stretch}.item--grow{flex-basis:0;flex-grow:1;min-width:0}.item--grow,.item--shrink{flex-shrink:1}.item--columns{width:calc((100% - var(--rs-view-gap-value) * var(--rs-view-gaps-count)) / var(--rs-view-columns-count) - var(--rs-view-item-gap, 0px))}.item--columns-1{--rs-view-columns-count:calc(12 / 1);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-1,.item--columns-2{width:calc((100% - var(--rs-view-gap-value) * var(--rs-view-gaps-count)) / var(--rs-view-columns-count) - var(--rs-view-item-gap, 0px))}.item--columns-2{--rs-view-columns-count:calc(12 / 2);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-3{--rs-view-columns-count:calc(12 / 3);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-3,.item--columns-4{width:calc((100% - var(--rs-view-gap-value) * var(--rs-view-gaps-count)) / var(--rs-view-columns-count) - var(--rs-view-item-gap, 0px))}.item--columns-4{--rs-view-columns-count:calc(12 / 4);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-5{--rs-view-columns-count:calc(12 / 5);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-5,.item--columns-6{width:calc((100% - var(--rs-view-gap-value) * var(--rs-view-gaps-count)) / var(--rs-view-columns-count) - var(--rs-view-item-gap, 0px))}.item--columns-6{--rs-view-columns-count:calc(12 / 6);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-7{--rs-view-columns-count:calc(12 / 7);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-7,.item--columns-8{width:calc((100% - var(--rs-view-gap-value) * var(--rs-view-gaps-count)) / var(--rs-view-columns-count) - var(--rs-view-item-gap, 0px))}.item--columns-8{--rs-view-columns-count:calc(12 / 8);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-9{--rs-view-columns-count:calc(12 / 9);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-10,.item--columns-9{width:calc((100% - var(--rs-view-gap-value) * var(--rs-view-gaps-count)) / var(--rs-view-columns-count) - var(--rs-view-item-gap, 0px))}.item--columns-10{--rs-view-columns-count:calc(12 / 10);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-11{--rs-view-columns-count:calc(12 / 11);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-11,.item--columns-12{width:calc((100% - var(--rs-view-gap-value) * var(--rs-view-gaps-count)) / var(--rs-view-columns-count) - var(--rs-view-item-gap, 0px))}.item--columns-12{--rs-view-columns-count:calc(12 / 12);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-auto{width:auto}@media (--rs-viewport-m ){.item--columns-1--m{--rs-view-columns-count:calc(12 / 1);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-2--m{--rs-view-columns-count:calc(12 / 2);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-3--m{--rs-view-columns-count:calc(12 / 3);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-4--m{--rs-view-columns-count:calc(12 / 4);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-5--m{--rs-view-columns-count:calc(12 / 5);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-6--m{--rs-view-columns-count:calc(12 / 6);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-7--m{--rs-view-columns-count:calc(12 / 7);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-8--m{--rs-view-columns-count:calc(12 / 8);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-9--m{--rs-view-columns-count:calc(12 / 9);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-10--m{--rs-view-columns-count:calc(12 / 10);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-11--m{--rs-view-columns-count:calc(12 / 11);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-12--m{--rs-view-columns-count:calc(12 / 12);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-auto--m{width:auto}}@media (--rs-viewport-l ){.item--columns-1--l{--rs-view-columns-count:calc(12 / 1);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-2--l{--rs-view-columns-count:calc(12 / 2);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-3--l{--rs-view-columns-count:calc(12 / 3);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-4--l{--rs-view-columns-count:calc(12 / 4);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-5--l{--rs-view-columns-count:calc(12 / 5);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-6--l{--rs-view-columns-count:calc(12 / 6);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-7--l{--rs-view-columns-count:calc(12 / 7);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-8--l{--rs-view-columns-count:calc(12 / 8);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-9--l{--rs-view-columns-count:calc(12 / 9);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-10--l{--rs-view-columns-count:calc(12 / 10);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-11--l{--rs-view-columns-count:calc(12 / 11);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-12--l{--rs-view-columns-count:calc(12 / 12);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-auto--l{width:auto}}@media (--rs-viewport-xl ){.item--columns-1--xl{--rs-view-columns-count:calc(12 / 1);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-2--xl{--rs-view-columns-count:calc(12 / 2);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-3--xl{--rs-view-columns-count:calc(12 / 3);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-4--xl{--rs-view-columns-count:calc(12 / 4);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-5--xl{--rs-view-columns-count:calc(12 / 5);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-6--xl{--rs-view-columns-count:calc(12 / 6);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-7--xl{--rs-view-columns-count:calc(12 / 7);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-8--xl{--rs-view-columns-count:calc(12 / 8);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-9--xl{--rs-view-columns-count:calc(12 / 9);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-10--xl{--rs-view-columns-count:calc(12 / 10);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-11--xl{--rs-view-columns-count:calc(12 / 11);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-12--xl{--rs-view-columns-count:calc(12 / 12);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-auto--xl{width:auto}}.root{--rs-view-gap-s:0;--rs-view-gap-m:var(--rs-view-gap-s);--rs-view-gap-l:var(--rs-view-gap-m);--rs-view-gap-xl:var(--rs-view-gap-l);--rs-view-gap:var(--rs-view-gap-s)}.root>.item{--rs-view-item-order-s:0;--rs-view-item-order-m:var(--rs-view-item-order-s);--rs-view-item-order-l:var(--rs-view-item-order-m);--rs-view-item-order-xl:var(--rs-view-item-order-l);--rs-view-item-order:var(--rs-view-item-order-s);--rs-view-item-gap-before-s:initial;--rs-view-item-gap-before-m:var(--rs-view-item-gap-before-s);--rs-view-item-gap-before-l:var(--rs-view-item-gap-before-m);--rs-view-item-gap-before-xl:var(--rs-view-item-gap-before-l);--rs-view-item-gap-before:var(--rs-view-item-gap-before-s)}@media (--rs-viewport-m ){.--padding{--rs-view-p-vertical:var(--rs-view-p-vertical-m);--rs-view-p-horizontal:var(--rs-view-p-horizontal-m)}.root[style*="--rs-view-p-top"]{--rs-view-p-top:var(--rs-view-p-top-m)}.root[style*="--rs-view-p-bottom"]{--rs-view-p-bottom:var(--rs-view-p-bottom-m)}.root[style*="--rs-view-p-start"]{--rs-view-p-start:var(--rs-view-p-start-m)}.root[style*="--rs-view-p-end"]{--rs-view-p-end:var(--rs-view-p-end-m)}.--direction-column--m{flex-direction:column;flex-wrap:nowrap}.--direction-column--m>.item--gap-before{margin-top:var(--rs-view-item-gap)}.--direction-column--m>.item--gap-auto{margin-top:auto}.--direction-column-reverse--m{flex-direction:column-reverse;flex-wrap:nowrap}.--direction-column-reverse--m>.item--gap-before{margin-top:var(--rs-view-item-gap)}.--direction-column-reverse--m>.item--gap-auto{margin-top:auto}.--direction-row--m{align-items:flex-start;flex-direction:row;flex-wrap:wrap}.--direction-row--m>.item--gap-before{margin-inline-start:var(--rs-view-item-gap)}.--direction-row--m>.item--gap-auto{margin-inline-start:auto}.--direction-row--m>button{width:auto!important}.--direction-row-reverse--m{align-items:flex-start;flex-direction:row-reverse;flex-wrap:wrap}.--direction-row-reverse--m>.item--gap-before{margin-inline-start:var(--rs-view-item-gap)}.--direction-row-reverse--m>.item--gap-auto{margin-inline-start:auto}.--direction-row-reverse--m>button{width:auto!important}.item--grow-true--m{flex-basis:0;flex-grow:1;flex-shrink:1;min-width:0}.item--grow-false--m{flex-basis:auto;flex-grow:0;flex-shrink:0;min-width:auto}.root{--rs-view-gap:var(--rs-view-gap-m)}.root>.item{--rs-view-item-order:var(--rs-view-item-order-m);--rs-view-item-gap-before:var(--rs-view-item-gap-before-m)}}@media (--rs-viewport-l ){.--padding{--rs-view-p-vertical:var(--rs-view-p-vertical-l);--rs-view-p-horizontal:var(--rs-view-p-horizontal-l)}.root[style*="--rs-view-p-top"]{--rs-view-p-top:var(--rs-view-p-top-l)}.root[style*="--rs-view-p-bottom"]{--rs-view-p-bottom:var(--rs-view-p-bottom-l)}.root[style*="--rs-view-p-start"]{--rs-view-p-start:var(--rs-view-p-start-l)}.root[style*="--rs-view-p-end"]{--rs-view-p-end:var(--rs-view-p-end-l)}.--direction-column--l{flex-direction:column;flex-wrap:nowrap}.--direction-column--l>.item--gap-before{margin-top:var(--rs-view-item-gap)}.--direction-column--l>.item--gap-auto{margin-top:auto}.--direction-column-reverse--l{flex-direction:column-reverse;flex-wrap:nowrap}.--direction-column-reverse--l>.item--gap-before{margin-top:var(--rs-view-item-gap)}.--direction-column-reverse--l>.item--gap-auto{margin-top:auto}.--direction-row--l{align-items:flex-start;flex-direction:row;flex-wrap:wrap}.--direction-row--l>.item--gap-before{margin-inline-start:var(--rs-view-item-gap)}.--direction-row--l>.item--gap-auto{margin-inline-start:auto}.--direction-row--l>button{width:auto!important}.--direction-row-reverse--l{align-items:flex-start;flex-direction:row-reverse;flex-wrap:wrap}.--direction-row-reverse--l>.item--gap-before{margin-inline-start:var(--rs-view-item-gap)}.--direction-row-reverse--l>.item--gap-auto{margin-inline-start:auto}.--direction-row-reverse--l>button{width:auto!important}.item--grow-true--l{flex-basis:0;flex-grow:1;flex-shrink:1;min-width:0}.item--grow-false--l{flex-basis:auto;flex-grow:0;flex-shrink:0;min-width:auto}.root{--rs-view-gap:var(--rs-view-gap-l)}.root>.item{--rs-view-item-order:var(--rs-view-item-order-l);--rs-view-item-gap-before:var(--rs-view-item-gap-before-l)}}@media (--rs-viewport-xl ){.--padding{--rs-view-p-vertical:var(--rs-view-p-vertical-xl);--rs-view-p-horizontal:var(--rs-view-p-horizontal-xl)}.root[style*="--rs-view-p-top"]{--rs-view-p-top:var(--rs-view-p-top-xl)}.root[style*="--rs-view-p-bottom"]{--rs-view-p-bottom:var(--rs-view-p-bottom-xl)}.root[style*="--rs-view-p-start"]{--rs-view-p-start:var(--rs-view-p-start-xl)}.root[style*="--rs-view-p-end"]{--rs-view-p-end:var(--rs-view-p-end-xl)}.--direction-column--xl{flex-direction:column;flex-wrap:nowrap}.--direction-column--xl>.item--gap-before{margin-top:var(--rs-view-item-gap)}.--direction-column--xl>.item--gap-auto{margin-top:auto}.--direction-column-reverse--xl{flex-direction:column-reverse;flex-wrap:nowrap}.--direction-column-reverse--xl>.item--gap-before{margin-top:var(--rs-view-item-gap)}.--direction-column-reverse--xl>.item--gap-auto{margin-top:auto}.--direction-row--xl{align-items:flex-start;flex-direction:row;flex-wrap:wrap}.--direction-row--xl>.item--gap-before{margin-inline-start:var(--rs-view-item-gap)}.--direction-row--xl>.item--gap-auto{margin-inline-start:auto}.--direction-row--xl>button{width:auto!important}.--direction-row-reverse--xl{align-items:flex-start;flex-direction:row-reverse;flex-wrap:wrap}.--direction-row-reverse--xl>.item--gap-before{margin-inline-start:var(--rs-view-item-gap)}.--direction-row-reverse--xl>.item--gap-auto{margin-inline-start:auto}.--direction-row-reverse--xl>button{width:auto!important}.item--grow-true--xl{flex-basis:0;flex-grow:1;flex-shrink:1;min-width:0}.item--grow-false--xl{flex-basis:auto;flex-grow:0;flex-shrink:0;min-width:auto}.root{--rs-view-gap:var(--rs-view-gap-xl)}.root>.item{--rs-view-item-order:var(--rs-view-item-order-xl);--rs-view-item-gap-before:var(--rs-view-item-gap-before-xl)}}
1
+ .root{--rs-view-gaps-count-multiplier:1;--rs-view-z:auto;--rs-view-gap-value:calc(var(--rs-view-gap) * var(--rs-unit-x1));gap:var(--rs-view-gap-value);position:relative;z-index:var(--rs-view-z)}.item{--rs-view-item-gap:calc(var(--rs-unit-x1) * var(--rs-view-item-gap-before) - var(--rs-view-gap-value));order:var(--rs-view-item-order)}.--animated{transition:var(--rs-duration-medium) var(--rs-easing-standard);transition-property:background-color,color,border-color,box-shadow}.--bg-neutral{background-color:var(--rs-color-background-neutral);color:var(--rs-color-on-background-neutral)}.--bg-positive{background-color:var(--rs-color-background-positive);color:var(--rs-color-on-background-positive)}.--bg-warning{background-color:var(--rs-color-background-warning);color:var(--rs-color-on-background-warning)}.--bg-critical{background-color:var(--rs-color-background-critical);color:var(--rs-color-on-background-critical)}.--bg-primary{background-color:var(--rs-color-background-primary);color:var(--rs-color-on-background-primary)}.--bg-neutral-faded{background-color:var(--rs-color-background-neutral-faded);color:var(--rs-color-foreground-neutral)}.--bg-positive-faded{background-color:var(--rs-color-background-positive-faded);color:var(--rs-color-foreground-neutral)}.--bg-warning-faded{background-color:var(--rs-color-background-warning-faded);color:var(--rs-color-foreground-neutral)}.--bg-critical-faded{background-color:var(--rs-color-background-critical-faded);color:var(--rs-color-foreground-neutral)}.--bg-primary-faded{background-color:var(--rs-color-background-primary-faded)}.--bg-page,.--bg-primary-faded{color:var(--rs-color-foreground-neutral)}.--bg-page{background-color:var(--rs-color-background-page)}.--bg-page-faded{background-color:var(--rs-color-background-page-faded)}.--bg-disabled,.--bg-page-faded{color:var(--rs-color-foreground-neutral)}.--bg-disabled{background-color:var(--rs-color-background-disabled)}.--bg-disabled-faded{background-color:var(--rs-color-background-disabled-faded);color:var(--rs-color-foreground-neutral)}.--bg-elevation-base{background-color:var(--rs-color-background-elevation-base);color:var(--rs-color-foreground-neutral)}.--bg-elevation-raised{background-color:var(--rs-color-background-elevation-raised);color:var(--rs-color-foreground-neutral)}.--bg-elevation-overlay{background-color:var(--rs-color-background-elevation-overlay);color:var(--rs-color-foreground-neutral)}.--bg-brand{background-color:var(--rs-color-brand);color:var(--rs-color-on-brand)}.--bg-white{background-color:var(--rs-color-white);color:var(--rs-color-black)}.--bg-black{background-color:var(--rs-color-black);color:var(--rs-color-white)}.--shadow-raised{box-shadow:var(--rs-shadow-raised)}.--shadow-overlay{box-shadow:var(--rs-shadow-overlay)}.--overflow-hidden{overflow:hidden}.--overflow-auto{overflow:auto}.--divided{--rs-view-gaps-count-multiplier:2}.--flex{display:flex;flex-direction:column;justify-content:flex-start}.--direction-column{flex-direction:column;flex-wrap:nowrap}.--direction-column>.item--gap-before{margin-top:var(--rs-view-item-gap)}.--direction-column>.item--gap-auto{margin-top:auto}.--direction-column-reverse{flex-direction:column-reverse;flex-wrap:nowrap}.--direction-column-reverse>.item--gap-before{margin-top:var(--rs-view-item-gap)}.--direction-column-reverse>.item--gap-auto{margin-top:auto}.--direction-row{align-items:flex-start;flex-direction:row;flex-wrap:wrap}.--direction-row>.item--gap-before{margin-inline-start:var(--rs-view-item-gap)}.--direction-row>.item--gap-auto{margin-inline-start:auto}.--direction-row>button{width:auto!important}.--direction-row-reverse{align-items:flex-start;flex-direction:row-reverse;flex-wrap:wrap}.--direction-row-reverse>.item--gap-before{margin-inline-start:var(--rs-view-item-gap)}.--direction-row-reverse>.item--gap-auto{margin-inline-start:auto}.--direction-row-reverse>button{width:auto!important}.--nowrap{flex-wrap:nowrap}.--nowrap>*{flex-shrink:0}.--wrap{flex-wrap:wrap}@media (--rs-viewport-m ){.--nowrap-false--m,.--wrap-true--m{flex-wrap:wrap}.--nowrap-true--m,.--wrap-false--m{flex-wrap:nowrap}}@media (--rs-viewport-l ){.--nowrap-false--l,.--wrap-true--l{flex-wrap:wrap}.--nowrap-true--l,.--wrap-false--l{flex-wrap:nowrap}}@media (--rs-viewport-xl ){.--nowrap-false--xl,.--wrap-true--xl{flex-wrap:wrap}.--nowrap-true--xl,.--wrap-false--xl{flex-wrap:nowrap}}.divider{align-self:stretch}.item--grow{flex-basis:0;flex-grow:1;min-width:0}.item--grow,.item--shrink{flex-shrink:1}.item--columns{width:calc((100% - var(--rs-view-gap-value) * var(--rs-view-gaps-count)) / var(--rs-view-columns-count) - var(--rs-view-item-gap, 0px))}.item--columns-1{--rs-view-columns-count:calc(12 / 1);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-1,.item--columns-2{width:calc((100% - var(--rs-view-gap-value) * var(--rs-view-gaps-count)) / var(--rs-view-columns-count) - var(--rs-view-item-gap, 0px))}.item--columns-2{--rs-view-columns-count:calc(12 / 2);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-3{--rs-view-columns-count:calc(12 / 3);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-3,.item--columns-4{width:calc((100% - var(--rs-view-gap-value) * var(--rs-view-gaps-count)) / var(--rs-view-columns-count) - var(--rs-view-item-gap, 0px))}.item--columns-4{--rs-view-columns-count:calc(12 / 4);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-5{--rs-view-columns-count:calc(12 / 5);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-5,.item--columns-6{width:calc((100% - var(--rs-view-gap-value) * var(--rs-view-gaps-count)) / var(--rs-view-columns-count) - var(--rs-view-item-gap, 0px))}.item--columns-6{--rs-view-columns-count:calc(12 / 6);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-7{--rs-view-columns-count:calc(12 / 7);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-7,.item--columns-8{width:calc((100% - var(--rs-view-gap-value) * var(--rs-view-gaps-count)) / var(--rs-view-columns-count) - var(--rs-view-item-gap, 0px))}.item--columns-8{--rs-view-columns-count:calc(12 / 8);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-9{--rs-view-columns-count:calc(12 / 9);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-10,.item--columns-9{width:calc((100% - var(--rs-view-gap-value) * var(--rs-view-gaps-count)) / var(--rs-view-columns-count) - var(--rs-view-item-gap, 0px))}.item--columns-10{--rs-view-columns-count:calc(12 / 10);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-11{--rs-view-columns-count:calc(12 / 11);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-11,.item--columns-12{width:calc((100% - var(--rs-view-gap-value) * var(--rs-view-gaps-count)) / var(--rs-view-columns-count) - var(--rs-view-item-gap, 0px))}.item--columns-12{--rs-view-columns-count:calc(12 / 12);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-auto{width:auto}@media (--rs-viewport-m ){.item--columns-1--m{--rs-view-columns-count:calc(12 / 1);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-2--m{--rs-view-columns-count:calc(12 / 2);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-3--m{--rs-view-columns-count:calc(12 / 3);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-4--m{--rs-view-columns-count:calc(12 / 4);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-5--m{--rs-view-columns-count:calc(12 / 5);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-6--m{--rs-view-columns-count:calc(12 / 6);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-7--m{--rs-view-columns-count:calc(12 / 7);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-8--m{--rs-view-columns-count:calc(12 / 8);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-9--m{--rs-view-columns-count:calc(12 / 9);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-10--m{--rs-view-columns-count:calc(12 / 10);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-11--m{--rs-view-columns-count:calc(12 / 11);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-12--m{--rs-view-columns-count:calc(12 / 12);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-auto--m{width:auto}}@media (--rs-viewport-l ){.item--columns-1--l{--rs-view-columns-count:calc(12 / 1);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-2--l{--rs-view-columns-count:calc(12 / 2);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-3--l{--rs-view-columns-count:calc(12 / 3);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-4--l{--rs-view-columns-count:calc(12 / 4);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-5--l{--rs-view-columns-count:calc(12 / 5);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-6--l{--rs-view-columns-count:calc(12 / 6);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-7--l{--rs-view-columns-count:calc(12 / 7);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-8--l{--rs-view-columns-count:calc(12 / 8);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-9--l{--rs-view-columns-count:calc(12 / 9);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-10--l{--rs-view-columns-count:calc(12 / 10);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-11--l{--rs-view-columns-count:calc(12 / 11);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-12--l{--rs-view-columns-count:calc(12 / 12);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-auto--l{width:auto}}@media (--rs-viewport-xl ){.item--columns-1--xl{--rs-view-columns-count:calc(12 / 1);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-2--xl{--rs-view-columns-count:calc(12 / 2);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-3--xl{--rs-view-columns-count:calc(12 / 3);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-4--xl{--rs-view-columns-count:calc(12 / 4);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-5--xl{--rs-view-columns-count:calc(12 / 5);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-6--xl{--rs-view-columns-count:calc(12 / 6);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-7--xl{--rs-view-columns-count:calc(12 / 7);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-8--xl{--rs-view-columns-count:calc(12 / 8);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-9--xl{--rs-view-columns-count:calc(12 / 9);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-10--xl{--rs-view-columns-count:calc(12 / 10);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-11--xl{--rs-view-columns-count:calc(12 / 11);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-12--xl{--rs-view-columns-count:calc(12 / 12);--rs-view-gaps-count:calc((var(--rs-view-columns-count) - 1) * var(--rs-view-gaps-count-multiplier))}.item--columns-auto--xl{width:auto}}.root{--rs-view-gap-s:0;--rs-view-gap-m:var(--rs-view-gap-s);--rs-view-gap-l:var(--rs-view-gap-m);--rs-view-gap-xl:var(--rs-view-gap-l);--rs-view-gap:var(--rs-view-gap-s)}.root>.item{--rs-view-item-order-s:0;--rs-view-item-order-m:var(--rs-view-item-order-s);--rs-view-item-order-l:var(--rs-view-item-order-m);--rs-view-item-order-xl:var(--rs-view-item-order-l);--rs-view-item-order:var(--rs-view-item-order-s);--rs-view-item-gap-before-s:initial;--rs-view-item-gap-before-m:var(--rs-view-item-gap-before-s);--rs-view-item-gap-before-l:var(--rs-view-item-gap-before-m);--rs-view-item-gap-before-xl:var(--rs-view-item-gap-before-l);--rs-view-item-gap-before:var(--rs-view-item-gap-before-s)}@media (--rs-viewport-m ){.--direction-column--m{flex-direction:column;flex-wrap:nowrap}.--direction-column--m>.item--gap-before{margin-top:var(--rs-view-item-gap)}.--direction-column--m>.item--gap-auto{margin-top:auto}.--direction-column-reverse--m{flex-direction:column-reverse;flex-wrap:nowrap}.--direction-column-reverse--m>.item--gap-before{margin-top:var(--rs-view-item-gap)}.--direction-column-reverse--m>.item--gap-auto{margin-top:auto}.--direction-row--m{align-items:flex-start;flex-direction:row;flex-wrap:wrap}.--direction-row--m>.item--gap-before{margin-inline-start:var(--rs-view-item-gap)}.--direction-row--m>.item--gap-auto{margin-inline-start:auto}.--direction-row--m>button{width:auto!important}.--direction-row-reverse--m{align-items:flex-start;flex-direction:row-reverse;flex-wrap:wrap}.--direction-row-reverse--m>.item--gap-before{margin-inline-start:var(--rs-view-item-gap)}.--direction-row-reverse--m>.item--gap-auto{margin-inline-start:auto}.--direction-row-reverse--m>button{width:auto!important}.item--grow-true--m{flex-basis:0;flex-grow:1;flex-shrink:1;min-width:0}.item--grow-false--m{flex-basis:auto;flex-grow:0;flex-shrink:0;min-width:auto}.root{--rs-view-gap:var(--rs-view-gap-m)}.root>.item{--rs-view-item-order:var(--rs-view-item-order-m);--rs-view-item-gap-before:var(--rs-view-item-gap-before-m)}}@media (--rs-viewport-l ){.--direction-column--l{flex-direction:column;flex-wrap:nowrap}.--direction-column--l>.item--gap-before{margin-top:var(--rs-view-item-gap)}.--direction-column--l>.item--gap-auto{margin-top:auto}.--direction-column-reverse--l{flex-direction:column-reverse;flex-wrap:nowrap}.--direction-column-reverse--l>.item--gap-before{margin-top:var(--rs-view-item-gap)}.--direction-column-reverse--l>.item--gap-auto{margin-top:auto}.--direction-row--l{align-items:flex-start;flex-direction:row;flex-wrap:wrap}.--direction-row--l>.item--gap-before{margin-inline-start:var(--rs-view-item-gap)}.--direction-row--l>.item--gap-auto{margin-inline-start:auto}.--direction-row--l>button{width:auto!important}.--direction-row-reverse--l{align-items:flex-start;flex-direction:row-reverse;flex-wrap:wrap}.--direction-row-reverse--l>.item--gap-before{margin-inline-start:var(--rs-view-item-gap)}.--direction-row-reverse--l>.item--gap-auto{margin-inline-start:auto}.--direction-row-reverse--l>button{width:auto!important}.item--grow-true--l{flex-basis:0;flex-grow:1;flex-shrink:1;min-width:0}.item--grow-false--l{flex-basis:auto;flex-grow:0;flex-shrink:0;min-width:auto}.root{--rs-view-gap:var(--rs-view-gap-l)}.root>.item{--rs-view-item-order:var(--rs-view-item-order-l);--rs-view-item-gap-before:var(--rs-view-item-gap-before-l)}}@media (--rs-viewport-xl ){.--direction-column--xl{flex-direction:column;flex-wrap:nowrap}.--direction-column--xl>.item--gap-before{margin-top:var(--rs-view-item-gap)}.--direction-column--xl>.item--gap-auto{margin-top:auto}.--direction-column-reverse--xl{flex-direction:column-reverse;flex-wrap:nowrap}.--direction-column-reverse--xl>.item--gap-before{margin-top:var(--rs-view-item-gap)}.--direction-column-reverse--xl>.item--gap-auto{margin-top:auto}.--direction-row--xl{align-items:flex-start;flex-direction:row;flex-wrap:wrap}.--direction-row--xl>.item--gap-before{margin-inline-start:var(--rs-view-item-gap)}.--direction-row--xl>.item--gap-auto{margin-inline-start:auto}.--direction-row--xl>button{width:auto!important}.--direction-row-reverse--xl{align-items:flex-start;flex-direction:row-reverse;flex-wrap:wrap}.--direction-row-reverse--xl>.item--gap-before{margin-inline-start:var(--rs-view-item-gap)}.--direction-row-reverse--xl>.item--gap-auto{margin-inline-start:auto}.--direction-row-reverse--xl>button{width:auto!important}.item--grow-true--xl{flex-basis:0;flex-grow:1;flex-shrink:1;min-width:0}.item--grow-false--xl{flex-basis:auto;flex-grow:0;flex-shrink:0;min-width:auto}.root{--rs-view-gap:var(--rs-view-gap-xl)}.root>.item{--rs-view-item-order:var(--rs-view-item-order-xl);--rs-view-item-gap-before:var(--rs-view-item-gap-before-xl)}}
@@ -30,6 +30,13 @@ export type Props<TagName extends keyof React.JSX.IntrinsicElements = "div"> = {
30
30
  textAlign?: G.Responsive<TStyles.TextAlign>;
31
31
  backgroundColor?: "neutral" | "neutral-faded" | "critical" | "critical-faded" | "positive" | "warning" | "warning-faded" | "positive-faded" | "primary" | "primary-faded" | "elevation-base" | "elevation-raised" | "elevation-overlay" | "page" | "page-faded" | "disabled" | "disabled-faded" | "brand" | "white" | "black";
32
32
  borderColor?: G.Responsive<TStyles.BorderColor>;
33
+ border?: G.Responsive<TStyles.Border>;
34
+ borderTop?: G.Responsive<TStyles.Border>;
35
+ borderBottom?: G.Responsive<TStyles.Border>;
36
+ borderStart?: G.Responsive<TStyles.Border>;
37
+ borderEnd?: G.Responsive<TStyles.Border>;
38
+ borderInline?: G.Responsive<TStyles.Border>;
39
+ borderBlock?: G.Responsive<TStyles.Border>;
33
40
  borderRadius?: G.Responsive<TStyles.Radius>;
34
41
  position?: G.Responsive<TStyles.Position>;
35
42
  inset?: G.Responsive<TStyles.Inset>;
@@ -73,6 +73,10 @@ export declare const background: {
73
73
  name: string;
74
74
  render: () => React.JSX.Element;
75
75
  };
76
+ export declare const borderColor: {
77
+ name: string;
78
+ render: () => React.JSX.Element;
79
+ };
76
80
  export declare const border: {
77
81
  name: string;
78
82
  render: () => React.JSX.Element;
@@ -548,7 +548,7 @@ export const background = {
548
548
  </Example.Item>
549
549
  </Example>),
550
550
  };
551
- export const border = {
551
+ export const borderColor = {
552
552
  name: "borderColor",
553
553
  render: () => (<Example>
554
554
  <Example.Item title="border: neutral">
@@ -624,6 +624,70 @@ export const border = {
624
624
  </Example.Item>
625
625
  </Example>),
626
626
  };
627
+ export const border = {
628
+ name: "border",
629
+ render: () => (<Example>
630
+ <Example.Item title="border: true">
631
+ <View border borderColor="neutral" padding={4}>
632
+ Content
633
+ </View>
634
+ </Example.Item>
635
+
636
+ <Example.Item title="borderTop: true">
637
+ <View borderTop borderColor="neutral" padding={4}>
638
+ Content
639
+ </View>
640
+ </Example.Item>
641
+
642
+ <Example.Item title="borderBottom: true">
643
+ <View borderBottom borderColor="neutral" padding={4}>
644
+ Content
645
+ </View>
646
+ </Example.Item>
647
+
648
+ <Example.Item title="borderStart: true">
649
+ <View borderStart borderColor="neutral" padding={4}>
650
+ Content
651
+ </View>
652
+ </Example.Item>
653
+
654
+ <Example.Item title="borderEnd: true">
655
+ <View borderEnd borderColor="neutral" padding={4}>
656
+ Content
657
+ </View>
658
+ </Example.Item>
659
+
660
+ <Example.Item title="borderInline: true">
661
+ <View borderInline borderColor="neutral" padding={4}>
662
+ Content
663
+ </View>
664
+ </Example.Item>
665
+
666
+ <Example.Item title="borderBlock: true">
667
+ <View borderBlock borderColor="neutral" padding={4}>
668
+ Content
669
+ </View>
670
+ </Example.Item>
671
+
672
+ <Example.Item title="borderTop: true, borderStart: true, ">
673
+ <View borderColor="neutral" borderTop borderStart padding={4}>
674
+ Content
675
+ </View>
676
+ </Example.Item>
677
+
678
+ <Example.Item title={[
679
+ "responsive",
680
+ "[s] borderTop: true, borderStart: true",
681
+ "[m+] borderBottom: true, borderEnd: true",
682
+ ]}>
683
+ <View borderColor="neutral" borderTop={{ s: true, m: false }} borderStart={{ s: true, m: false }} borderBottom={{ s: false, m: true }} borderEnd={{ s: false, m: true }} padding={4}>
684
+ Content
685
+ </View>
686
+ </Example.Item>
687
+
688
+ <div style={{ height: 100 }}/>
689
+ </Example>),
690
+ };
627
691
  export const radius = {
628
692
  name: "borderRadius",
629
693
  render: () => (<Example>
@@ -4,6 +4,8 @@ import React from "react";
4
4
  import ReactDOM from "react-dom";
5
5
  import Theme from "../../Theme/index.js";
6
6
  import s from "./Portal.module.css";
7
+ import useIsomorphicLayoutEffect from "../../../hooks/useIsomorphicLayoutEffect.js";
8
+ import useToggle from "../../../hooks/useToggle.js";
7
9
  const PortalScopeContext = React.createContext({});
8
10
  export const usePortalScope = () => {
9
11
  return React.useContext(PortalScopeContext);
@@ -14,6 +16,7 @@ export const usePortalScope = () => {
14
16
  */
15
17
  const Portal = (props) => {
16
18
  const { children, targetRef } = props;
19
+ const mountedToggle = useToggle();
17
20
  const rootRef = React.useRef(null);
18
21
  const rootNode = rootRef.current?.getRootNode();
19
22
  const isShadowDom = rootNode instanceof ShadowRoot;
@@ -28,10 +31,15 @@ const Portal = (props) => {
28
31
  const portal = usePortalScope();
29
32
  const nextScopeRef = targetRef || portal.scopeRef;
30
33
  const targetEl = nextScopeRef?.current || defaultTargetEl;
34
+ useIsomorphicLayoutEffect(() => {
35
+ mountedToggle.activate();
36
+ return () => mountedToggle.deactivate();
37
+ }, []);
31
38
  /* Preserve the current theme when rendered in body */
32
39
  return [
33
40
  ReactDOM.createPortal(_jsx(Theme, { children: children }), targetEl),
34
- _jsx("div", { ref: rootRef, className: s.root }, "root"),
41
+ // Make sure this element doesn't affect components using :last-child when their children use portals
42
+ !mountedToggle.active && _jsx("div", { ref: rootRef, className: s.root }, "root"),
35
43
  ];
36
44
  };
37
45
  function PortalScope(props) {
@@ -1,2 +1,2 @@
1
1
  import type { ThemeDefinition } from "../themes/_generator/tokens/types";
2
- export declare const getTheme: (theme?: ThemeDefinition) => Record<"backgroundColor" | "borderColor" | "borderRadius" | "spacing" | "boxShadow" | "textColor" | "colors" | "screens", Record<string, string>>;
2
+ export declare const getTheme: (theme?: ThemeDefinition) => Record<"borderColor" | "backgroundColor" | "borderRadius" | "spacing" | "boxShadow" | "textColor" | "colors" | "screens", Record<string, string>>;
@@ -28,17 +28,20 @@ const useIsDismissible = (args) => {
28
28
  React.useEffect(() => {
29
29
  if (!active)
30
30
  return;
31
- if (queue.length) {
32
- // Make sure new item is added to the queue after others unmount first
33
- onNextFrame(() => addToQueue(id, contentRef, triggerRef));
34
- }
35
- else {
36
- addToQueue(id, contentRef, triggerRef);
37
- }
31
+ onNextFrame(() => addToQueue(id, contentRef, triggerRef));
38
32
  return () => removeFromQueue(id);
39
33
  }, [active, id, contentRef, triggerRef]);
40
34
  return React.useCallback(() => {
41
- return active ? latestId === id : true;
35
+ if (!active)
36
+ return true;
37
+ const latest = latestId ? queue[latestId] : undefined;
38
+ const latestTrigger = latest?.triggerRef?.current;
39
+ const prev = latest?.parentId ? queue[latest.parentId] : undefined;
40
+ const prevContent = prev?.contentRef.current;
41
+ // Don't block independently rendered components that are not nested in each other
42
+ if (!prevContent || !latestTrigger || !prevContent.contains(latestTrigger))
43
+ return true;
44
+ return latestId === id;
42
45
  }, [id, active]);
43
46
  };
44
47
  export default useIsDismissible;
@@ -2,6 +2,6 @@ declare const useToggle: (defaultValue?: boolean) => {
2
2
  active: boolean;
3
3
  activate: () => void;
4
4
  deactivate: () => void;
5
- toggle: (targetValue?: boolean) => void;
5
+ toggle: (targetValue?: any) => void;
6
6
  };
7
7
  export default useToggle;
@@ -8,6 +8,7 @@ const useToggle = (defaultValue) => {
8
8
  const deactivate = React.useCallback(() => {
9
9
  setActive(false);
10
10
  }, []);
11
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
11
12
  const toggle = React.useCallback((targetValue) => {
12
13
  // Checking the targetValue type for backwards compatibility if something like handler events
13
14
  // are passed automatically e.g. onClick={toggle}
package/dist/index.d.ts CHANGED
@@ -131,7 +131,6 @@ export type { ViewProps, ViewItemProps } from "./components/View";
131
131
  */
132
132
  export { useFormControl } from "./components/FormControl";
133
133
  export { default as Theme, useTheme, type ThemeProps } from "./components/Theme";
134
- export type { ColorMode } from "./components/Theme";
135
134
  export { default as useHandlerRef } from "./hooks/useHandlerRef";
136
135
  export { default as useHotkeys } from "./hooks/useHotkeys";
137
136
  export { default as useIsomorphicLayoutEffect } from "./hooks/useIsomorphicLayoutEffect";
@@ -150,7 +149,7 @@ export { TrapFocus } from "./utilities/a11y";
150
149
  * Types
151
150
  */
152
151
  export type { ReshapedConfig } from "./types/config";
153
- export type { Responsive, Attributes } from "./types/global";
152
+ export type { Responsive, Attributes, ColorMode } from "./types/global";
154
153
  /**
155
154
  * Dev utilities
156
155
  */
@@ -0,0 +1,6 @@
1
+ import type { Mixin } from "./types";
2
+ import type * as G from "../types/global";
3
+ export declare const resolveMixin: (mixin: Mixin) => {
4
+ variables: React.CSSProperties;
5
+ classNames: G.ClassName[];
6
+ };
@@ -0,0 +1,71 @@
1
+ import align from "./resolvers/align/index.js";
2
+ import aspectRatio from "./resolvers/aspectRatio/index.js";
3
+ import bleed from "./resolvers/bleed/index.js";
4
+ import border, { borderColor, borderTop, borderBottom, borderStart, borderEnd, borderInline, borderBlock, } from "./resolvers/border/index.js";
5
+ import height from "./resolvers/height/index.js";
6
+ import inset, { insetTop, insetBottom, insetStart, insetEnd, insetInline, insetBlock, } from "./resolvers/inset/index.js";
7
+ import justify from "./resolvers/justify/index.js";
8
+ import maxHeight from "./resolvers/maxHeight/index.js";
9
+ import maxWidth from "./resolvers/maxWidth/index.js";
10
+ import minHeight from "./resolvers/minHeight/index.js";
11
+ import minWidth from "./resolvers/minWidth/index.js";
12
+ import position from "./resolvers/position/index.js";
13
+ import radius from "./resolvers/radius/index.js";
14
+ import textAlign from "./resolvers/textAlign/index.js";
15
+ import width from "./resolvers/width/index.js";
16
+ import padding, { paddingTop, paddingBottom, paddingStart, paddingEnd, paddingInline, paddingBlock, } from "./resolvers/padding/index.js";
17
+ const mixinMap = {
18
+ align,
19
+ aspectRatio,
20
+ bleed,
21
+ border,
22
+ borderTop,
23
+ borderBottom,
24
+ borderStart,
25
+ borderEnd,
26
+ borderInline,
27
+ borderBlock,
28
+ borderColor,
29
+ height,
30
+ padding,
31
+ paddingTop,
32
+ paddingBottom,
33
+ paddingStart,
34
+ paddingEnd,
35
+ paddingInline,
36
+ paddingBlock,
37
+ inset,
38
+ insetTop,
39
+ insetBottom,
40
+ insetStart,
41
+ insetEnd,
42
+ insetInline,
43
+ insetBlock,
44
+ justify,
45
+ maxHeight,
46
+ maxWidth,
47
+ minHeight,
48
+ minWidth,
49
+ position,
50
+ radius,
51
+ textAlign,
52
+ width,
53
+ };
54
+ export const resolveMixin = (mixin) => {
55
+ const output = {
56
+ variables: {},
57
+ classNames: [],
58
+ };
59
+ const entries = Object.entries(mixin);
60
+ entries.forEach(([key, value]) => {
61
+ const mixin = mixinMap[key];
62
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
63
+ // @ts-ignore - too complex to resolve inference without manual typing every method
64
+ const result = mixin(value);
65
+ if (result.variables)
66
+ output.variables = { ...output.variables, ...result.variables };
67
+ if (result.classNames)
68
+ output.classNames.push(result.classNames);
69
+ });
70
+ return output;
71
+ };
@@ -0,0 +1 @@
1
+ [style*="--rs-align-s:"]{align-items:var(--rs-align)!important;--rs-align-s: ;--rs-align-m:var(--rs-align-s);--rs-align-l:var(--rs-align-m);--rs-align-xl:var(--rs-align-l);--rs-align:var(--rs-align-s)}@media (--rs-viewport-m ){[style*="--rs-align-s:"]{--rs-align:var(--rs-align-m)}}@media (--rs-viewport-l ){[style*="--rs-align-s:"]{--rs-align:var(--rs-align-l)}}@media (--rs-viewport-xl ){[style*="--rs-align-s:"]{--rs-align:var(--rs-align-xl)}}
@@ -0,0 +1,4 @@
1
+ import * as T from "../../types";
2
+ import "./align.css";
3
+ declare const align: T.StyleResolver<T.Align>;
4
+ export default align;
@@ -0,0 +1,10 @@
1
+ import { responsiveVariables } from "../../../utilities/props.js";
2
+ import "./align.css";
3
+ const align = (value) => {
4
+ if (!value)
5
+ return {};
6
+ return {
7
+ variables: responsiveVariables("--rs-align", value),
8
+ };
9
+ };
10
+ export default align;
@@ -0,0 +1 @@
1
+ [style*="--rs-ratio-s:"]{--rs-ratio-s:0;--rs-ratio-m:var(--rs-ratio-s);--rs-ratio-l:var(--rs-ratio-m);--rs-ratio-xl:var(--rs-ratio-l);--rs-ratio:var(--rs-ratio-s)}[style*="--rs-ratio-s:"]:empty,[style*="--rs-ratio-s:"]:not(:empty)>*{aspect-ratio:var(--rs-ratio)}[style*="--rs-ratio-s:"]>img{object-fit:cover}@media (--rs-viewport-m ){[style*="--rs-ratio-s:"]{--rs-ratio:var(--rs-ratio-m)}}@media (--rs-viewport-l ){[style*="--rs-ratio-s:"]{--rs-ratio:var(--rs-ratio-l)}}@media (--rs-viewport-xl ){[style*="--rs-ratio-s:"]{--rs-ratio:var(--rs-ratio-xl)}}
@@ -0,0 +1,4 @@
1
+ import * as T from "../../types";
2
+ import "./aspectRatio.css";
3
+ declare const aspectRatio: T.StyleResolver<T.AspectRatio>;
4
+ export default aspectRatio;
@@ -0,0 +1,10 @@
1
+ import { responsiveVariables } from "../../../utilities/props.js";
2
+ import "./aspectRatio.css";
3
+ const aspectRatio = (value) => {
4
+ if (!value)
5
+ return {};
6
+ return {
7
+ variables: responsiveVariables("--rs-ratio", value),
8
+ };
9
+ };
10
+ export default aspectRatio;
@@ -0,0 +1 @@
1
+ .root[style*="--rs-bleed-s:"]{margin-left:calc(var(--rs-unit-x1) * var(--rs-bleed) * -1);margin-right:calc(var(--rs-unit-x1) * var(--rs-bleed) * -1);--rs-bleed-s:0;--rs-bleed-m:var(--rs-bleed-s);--rs-bleed-l:var(--rs-bleed-m);--rs-bleed-xl:var(--rs-bleed-l);--rs-bleed:var(--rs-bleed-s)}.--bleed{border-left-style:none!important;border-radius:0!important;border-right-style:none!important}@media (--rs-viewport-m ){.root[style*="--rs-bleed-s:"]{--rs-bleed:var(--rs-bleed-m)}.--bleed-true--m{border-left-style:none!important;border-radius:0!important;border-right-style:none!important}.--bleed-false--m{border-left-style:solid!important;border-radius:var(--rs-radius)!important;border-right-style:solid!important}}@media (--rs-viewport-l ){.root[style*="--rs-bleed-s:"]{--rs-bleed:var(--rs-bleed-l)}.--bleed-true--l{border-left-style:none!important;border-radius:0!important;border-right-style:none!important}.--bleed-false--l{border-left-style:solid!important;border-radius:var(--rs-radius)!important;border-right-style:solid!important}}@media (--rs-viewport-xl ){.root[style*="--rs-bleed-s:"]{--rs-bleed:var(--rs-bleed-xl)}.--bleed-true--xl{border-left-style:none!important;border-radius:0!important;border-right-style:none!important}.--bleed-false--xl{border-left-style:solid!important;border-radius:var(--rs-radius)!important;border-right-style:solid!important}}
@@ -0,0 +1,3 @@
1
+ import * as T from "../../types";
2
+ declare const bleed: T.StyleResolver<T.Bleed>;
3
+ export default bleed;
@@ -1,10 +1,10 @@
1
- import { responsiveClassNames, responsiveVariables, responsivePropDependency, } from "../../utilities/props.js";
1
+ import { responsiveClassNames, responsiveVariables, responsivePropDependency, } from "../../../utilities/props.js";
2
2
  import s from "./bleed.module.css";
3
- const getBleedStyles = (value) => {
3
+ const bleed = (value) => {
4
4
  if (value === undefined)
5
- return null;
5
+ return {};
6
6
  const classNames = responsiveClassNames(s, "--bleed", responsivePropDependency(value, (value) => typeof value === "number" && value > 0));
7
7
  const variables = responsiveVariables("--rs-bleed", value);
8
8
  return { classNames: [s.root, classNames], variables };
9
9
  };
10
- export default getBleedStyles;
10
+ export default bleed;
@@ -0,0 +1 @@
1
+ .--border-neutral{--rs-border-color:var(--rs-color-border-neutral)}.--border-neutral-faded{--rs-border-color:var(--rs-color-border-neutral-faded)}.--border-positive{--rs-border-color:var(--rs-color-border-positive)}.--border-positive-faded{--rs-border-color:var(--rs-color-border-positive-faded)}.--border-warning{--rs-border-color:var(--rs-color-border-warning)}.--border-warning-faded{--rs-border-color:var(--rs-color-border-warning-faded)}.--border-critical{--rs-border-color:var(--rs-color-border-critical)}.--border-critical-faded{--rs-border-color:var(--rs-color-border-critical-faded)}.--border-primary{--rs-border-color:var(--rs-color-border-primary)}.--border-primary-faded{--rs-border-color:var(--rs-color-border-primary-faded)}.--border-disabled{--rs-border-color:var(--rs-color-border-disabled)}.--border-brand{--rs-border-color:var(--rs-color-brand)}.--border-transparent{--rs-border-color:transparent}@media (--rs-viewport-m ){.--border-neutral--m{--rs-border-color:var(--rs-color-border-neutral)}.--border-neutral-faded--m{--rs-border-color:var(--rs-color-border-neutral-faded)}.--border-positive--m{--rs-border-color:var(--rs-color-border-positive)}.--border-positive-faded--m{--rs-border-color:var(--rs-color-border-positive-faded)}.--border-warning--m{--rs-border-color:var(--rs-color-border-warning)}.--border-warning-faded--m{--rs-border-color:var(--rs-color-border-warning-faded)}.--border-critical--m{--rs-border-color:var(--rs-color-border-critical)}.--border-critical-faded--m{--rs-border-color:var(--rs-color-border-critical-faded)}.--border-primary--m{--rs-border-color:var(--rs-color-border-primary)}.--border-primary-faded--m{--rs-border-color:var(--rs-color-border-primary-faded)}.--border-disabled--m{--rs-border-color:var(--rs-color-border-disabled)}.--border-brand--m{--rs-border-color:var(--rs-color-brand)}.--border-transparent--m{--rs-border-color:transparent}}@media (--rs-viewport-l ){.--border-neutral--l{--rs-border-color:var(--rs-color-border-neutral)}.--border-neutral-faded--l{--rs-border-color:var(--rs-color-border-neutral-faded)}.--border-positive--l{--rs-border-color:var(--rs-color-border-positive)}.--border-positive-faded--l{--rs-border-color:var(--rs-color-border-positive-faded)}.--border-warning--l{--rs-border-color:var(--rs-color-border-warning)}.--border-warning-faded--l{--rs-border-color:var(--rs-color-border-warning-faded)}.--border-critical--l{--rs-border-color:var(--rs-color-border-critical)}.--border-critical-faded--l{--rs-border-color:var(--rs-color-border-critical-faded)}.--border-primary--l{--rs-border-color:var(--rs-color-border-primary)}.--border-primary-faded--l{--rs-border-color:var(--rs-color-border-primary-faded)}.--border-disabled--l{--rs-border-color:var(--rs-color-border-disabled)}.--border-brand--l{--rs-border-color:var(--rs-color-brand)}.--border-transparent--l{--rs-border-color:transparent}}@media (--rs-viewport-xl ){.--border-neutral--xl{--rs-border-color:var(--rs-color-border-neutral)}.--border-neutral-faded--xl{--rs-border-color:var(--rs-color-border-neutral-faded)}.--border-positive--xl{--rs-border-color:var(--rs-color-border-positive)}.--border-positive-faded--xl{--rs-border-color:var(--rs-color-border-positive-faded)}.--border-warning--xl{--rs-border-color:var(--rs-color-border-warning)}.--border-warning-faded--xl{--rs-border-color:var(--rs-color-border-warning-faded)}.--border-critical--xl{--rs-border-color:var(--rs-color-border-critical)}.--border-critical-faded--xl{--rs-border-color:var(--rs-color-border-critical-faded)}.--border-primary--xl{--rs-border-color:var(--rs-color-border-primary)}.--border-primary-faded--xl{--rs-border-color:var(--rs-color-border-primary-faded)}.--border-disabled--xl{--rs-border-color:var(--rs-color-border-disabled)}.--border-brand--xl{--rs-border-color:var(--rs-color-brand)}.--border-transparent--xl{--rs-border-color:transparent}}
@@ -0,0 +1 @@
1
+ [style*="--rs-border-w-s:"]{border:var(--rs-border-w) solid var(--rs-border-color);--rs-border-w-s:1px;--rs-border-w-m:var(--rs-border-w-s);--rs-border-w-l:var(--rs-border-w-m);--rs-border-w-xl:var(--rs-border-w-l);--rs-border-w:var(--rs-border-w-s)}[style*="--rs-border-w-top"]{border-top:var(--rs-border-w-top) solid var(--rs-border-color);--rs-border-w-top-s:1px;--rs-border-w-top-m:var(--rs-border-w-top-s);--rs-border-w-top-l:var(--rs-border-w-top-m);--rs-border-w-top-xl:var(--rs-border-w-top-l);--rs-border-w-top:var(--rs-border-w-top-s)}[style*="--rs-border-w-bottom"]{border-bottom:var(--rs-border-w-bottom) solid var(--rs-border-color);--rs-border-w-bottom-s:1px;--rs-border-w-bottom-m:var(--rs-border-w-bottom-s);--rs-border-w-bottom-l:var(--rs-border-w-bottom-m);--rs-border-w-bottom-xl:var(--rs-border-w-bottom-l);--rs-border-w-bottom:var(--rs-border-w-bottom-s)}[style*="--rs-border-w-start"]{border-inline-start:var(--rs-border-w-start) solid var(--rs-border-color);--rs-border-w-start-s:1px;--rs-border-w-start-m:var(--rs-border-w-start-s);--rs-border-w-start-l:var(--rs-border-w-start-m);--rs-border-w-start-xl:var(--rs-border-w-start-l);--rs-border-w-start:var(--rs-border-w-start-s)}[style*="--rs-border-w-end"]{border-inline-end:var(--rs-border-w-end) solid var(--rs-border-color);--rs-border-w-end-s:1px;--rs-border-w-end-m:var(--rs-border-w-end-s);--rs-border-w-end-l:var(--rs-border-w-end-m);--rs-border-w-end-xl:var(--rs-border-w-end-l);--rs-border-w-end:var(--rs-border-w-end-s)}[style*="--rs-border-w-inline"]{border-inline:var(--rs-border-w-inline) solid var(--rs-border-color);--rs-border-w-inline-s:1px;--rs-border-w-inline-m:var(--rs-border-w-inline-s);--rs-border-w-inline-l:var(--rs-border-w-inline-m);--rs-border-w-inline-xl:var(--rs-border-w-inline-l);--rs-border-w-inline:var(--rs-border-w-inline-s)}[style*="--rs-border-w-block"]{border-block:var(--rs-border-w-block) solid var(--rs-border-color);--rs-border-w-block-s:1px;--rs-border-w-block-m:var(--rs-border-w-block-s);--rs-border-w-block-l:var(--rs-border-w-block-m);--rs-border-w-block-xl:var(--rs-border-w-block-l);--rs-border-w-block:var(--rs-border-w-block-s)}@media (--rs-viewport-m ){[style*="--rs-border-w-s:"]{--rs-border-w:var(--rs-border-w-m)}[style*="--rs-border-w-top"]{--rs-border-w-top:var(--rs-border-w-top-m)}[style*="--rs-border-w-bottom"]{--rs-border-w-bottom:var(--rs-border-w-bottom-m)}[style*="--rs-border-w-start"]{--rs-border-w-start:var(--rs-border-w-start-m)}[style*="--rs-border-w-end"]{--rs-border-w-end:var(--rs-border-w-end-m)}[style*="--rs-border-w-inline"]{--rs-border-w-inline:var(--rs-border-w-inline-m)}[style*="--rs-border-w-block"]{--rs-border-w-block:var(--rs-border-w-block-m)}}@media (--rs-viewport-l ){[style*="--rs-border-w-s:"]{--rs-border-w:var(--rs-border-w-l)}[style*="--rs-border-w-top"]{--rs-border-w-top:var(--rs-border-w-top-l)}[style*="--rs-border-w-bottom"]{--rs-border-w-bottom:var(--rs-border-w-bottom-l)}[style*="--rs-border-w-start"]{--rs-border-w-start:var(--rs-border-w-start-l)}[style*="--rs-border-w-end"]{--rs-border-w-end:var(--rs-border-w-end-l)}[style*="--rs-border-w-inline"]{--rs-border-w-inline:var(--rs-border-w-inline-l)}[style*="--rs-border-w-block"]{--rs-border-w-block:var(--rs-border-w-block-l)}}@media (--rs-viewport-xl ){[style*="--rs-border-w-s:"]{--rs-border-w:var(--rs-border-w-xl)}[style*="--rs-border-w-top"]{--rs-border-w-top:var(--rs-border-w-top-xl)}[style*="--rs-border-w-bottom"]{--rs-border-w-bottom:var(--rs-border-w-bottom-xl)}[style*="--rs-border-w-start"]{--rs-border-w-start:var(--rs-border-w-start-xl)}[style*="--rs-border-w-end"]{--rs-border-w-end:var(--rs-border-w-end-xl)}[style*="--rs-border-w-inline"]{--rs-border-w-inline:var(--rs-border-w-inline-xl)}[style*="--rs-border-w-block"]{--rs-border-w-block:var(--rs-border-w-block-xl)}}
@@ -0,0 +1,11 @@
1
+ import * as T from "../../types";
2
+ import "./borderWidth.css";
3
+ declare const border: T.StyleResolver<T.Border>;
4
+ export declare const borderTop: T.StyleResolver<T.Border>;
5
+ export declare const borderBottom: T.StyleResolver<T.Border>;
6
+ export declare const borderStart: T.StyleResolver<T.Border>;
7
+ export declare const borderEnd: T.StyleResolver<T.Border>;
8
+ export declare const borderBlock: T.StyleResolver<T.Border>;
9
+ export declare const borderInline: T.StyleResolver<T.Border>;
10
+ export declare const borderColor: T.StyleResolver<T.BorderColor>;
11
+ export default border;
@@ -0,0 +1,74 @@
1
+ import { responsiveClassNames, responsivePropDependency, responsiveVariables, } from "../../../utilities/props.js";
2
+ import s from "./border.module.css";
3
+ import "./borderWidth.css";
4
+ const border = (value) => {
5
+ if (!value)
6
+ return {};
7
+ return {
8
+ variables: responsiveVariables("--rs-border-w", responsivePropDependency(value, (value) => {
9
+ return value ? "1px" : "0px";
10
+ })),
11
+ };
12
+ };
13
+ export const borderTop = (value) => {
14
+ if (!value)
15
+ return {};
16
+ return {
17
+ variables: responsiveVariables("--rs-border-w-top", responsivePropDependency(value, (value) => {
18
+ return value ? "1px" : "0px";
19
+ })),
20
+ };
21
+ };
22
+ export const borderBottom = (value) => {
23
+ if (!value)
24
+ return {};
25
+ return {
26
+ variables: responsiveVariables("--rs-border-w-bottom", responsivePropDependency(value, (value) => {
27
+ return value ? "1px" : "0px";
28
+ })),
29
+ };
30
+ };
31
+ export const borderStart = (value) => {
32
+ if (!value)
33
+ return {};
34
+ return {
35
+ variables: responsiveVariables("--rs-border-w-start", responsivePropDependency(value, (value) => {
36
+ return value ? "1px" : "0px";
37
+ })),
38
+ };
39
+ };
40
+ export const borderEnd = (value) => {
41
+ if (!value)
42
+ return {};
43
+ return {
44
+ variables: responsiveVariables("--rs-border-w-end", responsivePropDependency(value, (value) => {
45
+ return value ? "1px" : "0px";
46
+ })),
47
+ };
48
+ };
49
+ export const borderBlock = (value) => {
50
+ if (!value)
51
+ return {};
52
+ return {
53
+ variables: responsiveVariables("--rs-border-w-block", responsivePropDependency(value, (value) => {
54
+ return value ? "1px" : "0px";
55
+ })),
56
+ };
57
+ };
58
+ export const borderInline = (value) => {
59
+ if (!value)
60
+ return {};
61
+ return {
62
+ variables: responsiveVariables("--rs-border-w-inline", responsivePropDependency(value, (value) => {
63
+ return value ? "1px" : "0px";
64
+ })),
65
+ };
66
+ };
67
+ export const borderColor = (value) => {
68
+ if (!value)
69
+ return {};
70
+ return {
71
+ classNames: responsiveClassNames(s, "--border", value),
72
+ };
73
+ };
74
+ export default border;
@@ -0,0 +1,3 @@
1
+ import * as T from "../../types";
2
+ declare const height: T.StyleResolver<T.Height>;
3
+ export default height;
@@ -1,10 +1,10 @@
1
- import { responsiveClassNames, responsiveVariables } from "../../utilities/props.js";
1
+ import { responsiveClassNames, responsiveVariables } from "../../../utilities/props.js";
2
2
  import s from "./height.module.css";
3
- const getHeightStyles = (value) => {
3
+ const height = (value) => {
4
4
  if (!value)
5
- return null;
5
+ return {};
6
6
  const variables = responsiveVariables("--rs-h", value);
7
7
  const classNames = responsiveClassNames(s, (value) => (typeof value === "number" ? "--type-unit" : "--type-literal"), value, { excludeValueFromClassName: true });
8
8
  return { classNames: [s.root, classNames], variables };
9
9
  };
10
- export default getHeightStyles;
10
+ export default height;
@@ -0,0 +1,10 @@
1
+ import * as T from "../../types";
2
+ import "./inset.css";
3
+ declare const inset: T.StyleResolver<T.Inset>;
4
+ export declare const insetTop: T.StyleResolver<T.Inset>;
5
+ export declare const insetBottom: T.StyleResolver<T.Inset>;
6
+ export declare const insetStart: T.StyleResolver<T.Inset>;
7
+ export declare const insetEnd: T.StyleResolver<T.Inset>;
8
+ export declare const insetInline: T.StyleResolver<T.Inset>;
9
+ export declare const insetBlock: T.StyleResolver<T.Inset>;
10
+ export default inset;
@@ -0,0 +1,38 @@
1
+ import { responsiveVariables } from "../../../utilities/props.js";
2
+ import "./inset.css";
3
+ const inset = (value) => {
4
+ if (value === undefined)
5
+ return {};
6
+ return { variables: responsiveVariables("--rs-inset", value) };
7
+ };
8
+ export const insetTop = (value) => {
9
+ if (value === undefined)
10
+ return {};
11
+ return { variables: responsiveVariables("--rs-inset-top", value) };
12
+ };
13
+ export const insetBottom = (value) => {
14
+ if (value === undefined)
15
+ return {};
16
+ return { variables: responsiveVariables("--rs-inset-bottom", value) };
17
+ };
18
+ export const insetStart = (value) => {
19
+ if (value === undefined)
20
+ return {};
21
+ return { variables: responsiveVariables("--rs-inset-start", value) };
22
+ };
23
+ export const insetEnd = (value) => {
24
+ if (value === undefined)
25
+ return {};
26
+ return { variables: responsiveVariables("--rs-inset-end", value) };
27
+ };
28
+ export const insetInline = (value) => {
29
+ if (value === undefined)
30
+ return {};
31
+ return { variables: responsiveVariables("--rs-inset-inline", value) };
32
+ };
33
+ export const insetBlock = (value) => {
34
+ if (value === undefined)
35
+ return {};
36
+ return { variables: responsiveVariables("--rs-inset-block", value) };
37
+ };
38
+ export default inset;