@autoguru/overdrive 4.10.2 → 4.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (257) hide show
  1. package/dist/components/Actions/Actions.js +21 -4
  2. package/dist/components/Actions/index.js +3 -1
  3. package/dist/components/Alert/Alert.css.js +28 -20
  4. package/dist/components/Alert/Alert.js +84 -26
  5. package/dist/components/Alert/index.js +3 -1
  6. package/dist/components/Anchor/Anchor.css.js +11 -3
  7. package/dist/components/Anchor/Anchor.js +53 -28
  8. package/dist/components/Anchor/index.js +3 -1
  9. package/dist/components/AutoSuggest/AutoSuggest.css.js +84 -76
  10. package/dist/components/AutoSuggest/AutoSuggest.js +621 -302
  11. package/dist/components/AutoSuggest/index.js +3 -1
  12. package/dist/components/AutoSuggest/useLayoutSuggestionVisible.js +29 -31
  13. package/dist/components/Badge/Badge.css.js +79 -71
  14. package/dist/components/Badge/Badge.js +44 -27
  15. package/dist/components/Badge/index.js +3 -1
  16. package/dist/components/Box/Box.js +122 -53
  17. package/dist/components/Box/argTypes.js +72 -105
  18. package/dist/components/Box/index.js +4 -2
  19. package/dist/components/Box/useBoxStyles.css.d.ts.map +1 -1
  20. package/dist/components/Box/useBoxStyles.css.js +114 -96
  21. package/dist/components/Box/useBoxStyles.js +75 -47
  22. package/dist/components/BulletList/Bullet.css.js +49 -41
  23. package/dist/components/BulletList/Bullet.js +38 -24
  24. package/dist/components/BulletList/BulletList.css.js +13 -5
  25. package/dist/components/BulletList/BulletList.js +23 -10
  26. package/dist/components/BulletList/context.js +3 -1
  27. package/dist/components/BulletList/index.js +4 -2
  28. package/dist/components/BulletText/BulletText.css.js +21 -13
  29. package/dist/components/BulletText/BulletText.js +57 -16
  30. package/dist/components/BulletText/index.js +3 -1
  31. package/dist/components/Button/Button.css.js +243 -235
  32. package/dist/components/Button/Button.js +154 -91
  33. package/dist/components/Button/index.js +3 -1
  34. package/dist/components/CheckBox/CheckBox.css.js +28 -20
  35. package/dist/components/CheckBox/CheckBox.js +54 -16
  36. package/dist/components/CheckBox/index.js +3 -1
  37. package/dist/components/ColourInput/ColourInput.css.js +31 -23
  38. package/dist/components/ColourInput/ColourInput.js +70 -20
  39. package/dist/components/ColourInput/index.js +3 -1
  40. package/dist/components/Columns/Column.css.js +36 -26
  41. package/dist/components/Columns/Column.js +51 -16
  42. package/dist/components/Columns/Columns.css.js +39 -31
  43. package/dist/components/Columns/Columns.js +55 -22
  44. package/dist/components/Columns/index.js +4 -2
  45. package/dist/components/DateInput/DateInput.js +34 -7
  46. package/dist/components/DateInput/index.js +3 -1
  47. package/dist/components/DatePicker/DatePicker.css.js +40 -32
  48. package/dist/components/DatePicker/DatePicker.js +64 -23
  49. package/dist/components/DatePicker/index.js +3 -1
  50. package/dist/components/DividerLine/DividerLine.css.js +45 -37
  51. package/dist/components/DividerLine/DividerLine.js +22 -6
  52. package/dist/components/DividerLine/index.js +3 -1
  53. package/dist/components/Flyout/Flyout.js +41 -5
  54. package/dist/components/Flyout/index.js +3 -1
  55. package/dist/components/Heading/Heading.js +41 -21
  56. package/dist/components/Heading/index.js +3 -1
  57. package/dist/components/Icon/Icon.css.js +13 -5
  58. package/dist/components/Icon/Icon.js +26 -9
  59. package/dist/components/Icon/index.js +3 -1
  60. package/dist/components/Image/Image.js +23 -5
  61. package/dist/components/Image/ImageServerProvider.d.ts +1 -1
  62. package/dist/components/Image/ImageServerProvider.d.ts.map +1 -1
  63. package/dist/components/Image/ImageServerProvider.js +55 -35
  64. package/dist/components/Image/ResponsiveImage.js +46 -21
  65. package/dist/components/Image/SimpleImage.js +30 -2
  66. package/dist/components/Image/index.js +4 -2
  67. package/dist/components/Image/types.js +3 -1
  68. package/dist/components/Inline/Inline.js +74 -30
  69. package/dist/components/Inline/index.js +3 -1
  70. package/dist/components/LinearProgressIndicator/LinearProgressIndicator.css.js +56 -48
  71. package/dist/components/LinearProgressIndicator/LinearProgressIndicator.js +31 -7
  72. package/dist/components/LinearProgressIndicator/index.js +3 -1
  73. package/dist/components/LoadingBox/LoadingBox.css.js +26 -18
  74. package/dist/components/LoadingBox/LoadingBox.js +40 -7
  75. package/dist/components/LoadingBox/index.js +3 -1
  76. package/dist/components/Meta/Meta.css.js +16 -8
  77. package/dist/components/Meta/Meta.js +30 -8
  78. package/dist/components/Meta/index.js +3 -1
  79. package/dist/components/MinimalModal/MinimalModal.css.js +15 -7
  80. package/dist/components/MinimalModal/MinimalModal.js +67 -29
  81. package/dist/components/MinimalModal/index.js +3 -1
  82. package/dist/components/Modal/Modal.css.js +38 -30
  83. package/dist/components/Modal/Modal.js +129 -73
  84. package/dist/components/Modal/index.js +3 -1
  85. package/dist/components/NumberBubble/NumberBubble.css.js +12 -4
  86. package/dist/components/NumberBubble/NumberBubble.js +51 -23
  87. package/dist/components/NumberBubble/index.js +3 -1
  88. package/dist/components/NumberInput/NumberInput.js +67 -29
  89. package/dist/components/NumberInput/index.js +3 -1
  90. package/dist/components/OrderedList/OrderedList.css.js +16 -8
  91. package/dist/components/OrderedList/OrderedList.js +60 -26
  92. package/dist/components/OrderedList/index.js +3 -1
  93. package/dist/components/OutsideClick/OutsideClick.js +40 -35
  94. package/dist/components/OutsideClick/index.js +3 -1
  95. package/dist/components/OverdriveProvider/OverdriveProvider.js +33 -19
  96. package/dist/components/OverdriveProvider/index.js +3 -1
  97. package/dist/components/Pagination/Bubble.js +41 -19
  98. package/dist/components/Pagination/Pagination.css.js +28 -20
  99. package/dist/components/Pagination/Pagination.js +166 -67
  100. package/dist/components/Pagination/index.js +3 -1
  101. package/dist/components/Portal/Portal.js +40 -24
  102. package/dist/components/Portal/index.js +3 -1
  103. package/dist/components/Positioner/Positioner.css.js +14 -6
  104. package/dist/components/Positioner/Positioner.js +109 -85
  105. package/dist/components/Positioner/alignment.js +13 -10
  106. package/dist/components/Positioner/index.js +4 -2
  107. package/dist/components/ProgressBar/ProgressBar.css.js +14 -6
  108. package/dist/components/ProgressBar/ProgressBar.js +30 -12
  109. package/dist/components/ProgressBar/index.js +3 -1
  110. package/dist/components/ProgressBarGroup/ProgressBarGroup.css.js +12 -4
  111. package/dist/components/ProgressBarGroup/ProgressBarGroup.js +42 -14
  112. package/dist/components/ProgressBarGroup/index.js +3 -1
  113. package/dist/components/ProgressSpinner/ProgressSpinner.css.js +81 -73
  114. package/dist/components/ProgressSpinner/ProgressSpinner.js +32 -14
  115. package/dist/components/ProgressSpinner/index.js +3 -1
  116. package/dist/components/Radio/Radio.css.js +31 -23
  117. package/dist/components/Radio/Radio.js +58 -19
  118. package/dist/components/Radio/RadioGroup.js +32 -7
  119. package/dist/components/Radio/index.js +4 -2
  120. package/dist/components/Section/Section.css.js +13 -5
  121. package/dist/components/Section/Section.js +19 -4
  122. package/dist/components/Section/index.js +3 -1
  123. package/dist/components/SelectInput/SelectInput.css.js +19 -11
  124. package/dist/components/SelectInput/SelectInput.js +60 -11
  125. package/dist/components/SelectInput/index.js +3 -1
  126. package/dist/components/SimplePagination/SimplePagination.js +57 -17
  127. package/dist/components/SimplePagination/index.js +3 -1
  128. package/dist/components/Stack/Divider.css.js +12 -4
  129. package/dist/components/Stack/Divider.js +13 -4
  130. package/dist/components/Stack/Stack.css.js +18 -10
  131. package/dist/components/Stack/Stack.js +47 -23
  132. package/dist/components/Stack/index.js +3 -1
  133. package/dist/components/StandardModal/StandardModal.css.js +69 -57
  134. package/dist/components/StandardModal/StandardModal.js +127 -52
  135. package/dist/components/StandardModal/index.js +3 -1
  136. package/dist/components/StarRating/StarRating.css.js +16 -8
  137. package/dist/components/StarRating/StarRating.js +90 -46
  138. package/dist/components/StarRating/index.js +3 -1
  139. package/dist/components/Stepper/Stepper.css.js +46 -36
  140. package/dist/components/Stepper/Stepper.js +159 -66
  141. package/dist/components/Stepper/index.js +3 -1
  142. package/dist/components/Switch/Switch.css.js +54 -46
  143. package/dist/components/Switch/Switch.js +54 -21
  144. package/dist/components/Switch/index.js +3 -1
  145. package/dist/components/Table/Table.css.js +14 -6
  146. package/dist/components/Table/Table.js +29 -6
  147. package/dist/components/Table/TableCell.css.js +28 -20
  148. package/dist/components/Table/TableCell.js +41 -11
  149. package/dist/components/Table/TableHeadCell.css.js +61 -50
  150. package/dist/components/Table/TableHeadCell.js +86 -40
  151. package/dist/components/Table/TableRow.js +18 -3
  152. package/dist/components/Table/TableRowGroup.js +16 -3
  153. package/dist/components/Table/context.js +21 -10
  154. package/dist/components/Table/index.js +7 -5
  155. package/dist/components/Tabs/Tab.css.js +43 -35
  156. package/dist/components/Tabs/Tab.js +79 -49
  157. package/dist/components/Tabs/TabList.css.js +30 -22
  158. package/dist/components/Tabs/TabList.js +122 -67
  159. package/dist/components/Tabs/TabPane.css.js +11 -3
  160. package/dist/components/Tabs/TabPane.js +32 -15
  161. package/dist/components/Tabs/TabPanes.css.js +16 -8
  162. package/dist/components/Tabs/TabPanes.js +23 -6
  163. package/dist/components/Tabs/Tabs.js +22 -10
  164. package/dist/components/Tabs/index.js +7 -5
  165. package/dist/components/Text/Text.js +37 -15
  166. package/dist/components/Text/index.js +4 -2
  167. package/dist/components/Text/useTextStyles.css.js +42 -20
  168. package/dist/components/Text/useTextStyles.js +20 -5
  169. package/dist/components/TextAreaInput/TextAreaInput.js +35 -7
  170. package/dist/components/TextAreaInput/index.js +3 -1
  171. package/dist/components/TextBubble/TextBubble.css.js +13 -5
  172. package/dist/components/TextBubble/TextBubble.js +66 -29
  173. package/dist/components/TextBubble/index.js +3 -1
  174. package/dist/components/TextContainer/TextContainer.js +44 -9
  175. package/dist/components/TextContainer/index.js +3 -1
  176. package/dist/components/TextInput/TextInput.js +36 -5
  177. package/dist/components/TextInput/index.js +3 -1
  178. package/dist/components/TextLink/TextLink.css.js +23 -15
  179. package/dist/components/TextLink/TextLink.js +63 -24
  180. package/dist/components/TextLink/index.js +3 -1
  181. package/dist/components/ThemeOverrideProvider/ThemeOverrideDebugger.d.ts +3 -0
  182. package/dist/components/ThemeOverrideProvider/ThemeOverrideDebugger.d.ts.map +1 -0
  183. package/dist/components/ThemeOverrideProvider/ThemeOverrideDebugger.js +80 -0
  184. package/dist/components/ThemeOverrideProvider/ThemeOverrideProvider.d.ts +22 -0
  185. package/dist/components/ThemeOverrideProvider/ThemeOverrideProvider.d.ts.map +1 -0
  186. package/dist/components/ThemeOverrideProvider/ThemeOverrideProvider.js +39 -0
  187. package/dist/components/ThemeOverrideProvider/index.d.ts +3 -0
  188. package/dist/components/ThemeOverrideProvider/index.d.ts.map +1 -0
  189. package/dist/components/ThemeOverrideProvider/index.js +4 -0
  190. package/dist/components/ThemeOverrideProvider/useBuildThemeOverrides.d.ts +17 -0
  191. package/dist/components/ThemeOverrideProvider/useBuildThemeOverrides.d.ts.map +1 -0
  192. package/dist/components/ThemeOverrideProvider/useBuildThemeOverrides.js +97 -0
  193. package/dist/components/ThemeProvider/ThemeProvider.js +30 -11
  194. package/dist/components/ThemeProvider/index.js +3 -1
  195. package/dist/components/Toaster/Toast.css.js +18 -10
  196. package/dist/components/Toaster/Toast.js +222 -108
  197. package/dist/components/Toaster/index.js +3 -1
  198. package/dist/components/Tooltip/Tooltip.css.js +21 -9
  199. package/dist/components/Tooltip/Tooltip.js +72 -40
  200. package/dist/components/Tooltip/index.js +3 -1
  201. package/dist/components/VisuallyHidden/VisuallyHidden.css.js +13 -5
  202. package/dist/components/VisuallyHidden/VisuallyHidden.js +20 -4
  203. package/dist/components/VisuallyHidden/index.js +3 -1
  204. package/dist/components/index.d.ts +1 -0
  205. package/dist/components/index.d.ts.map +1 -1
  206. package/dist/components/index.js +59 -56
  207. package/dist/components/private/CheckableBase/CheckableBase.css.js +46 -38
  208. package/dist/components/private/CheckableBase/CheckableBase.js +91 -27
  209. package/dist/components/private/CheckableBase/index.js +3 -1
  210. package/dist/components/private/CheckableBase/useCheckableStyles.js +5 -3
  211. package/dist/components/private/InputBase/HintText.css.js +11 -3
  212. package/dist/components/private/InputBase/HintText.js +28 -14
  213. package/dist/components/private/InputBase/InputState.css.js +96 -80
  214. package/dist/components/private/InputBase/NotchedBase.css.js +157 -162
  215. package/dist/components/private/InputBase/NotchedBase.js +116 -76
  216. package/dist/components/private/InputBase/index.js +3 -1
  217. package/dist/components/private/InputBase/withEnhancedInput.css.js +117 -109
  218. package/dist/components/private/InputBase/withEnhancedInput.js +190 -92
  219. package/dist/hooks/useAttachedBoxes/index.js +3 -1
  220. package/dist/hooks/useAttachedBoxes/useAttachedBoxes.css.js +26 -18
  221. package/dist/hooks/useAttachedBoxes/useAttachedBoxes.js +71 -46
  222. package/dist/hooks/useMedia/index.js +3 -1
  223. package/dist/hooks/useMedia/useMedia.js +44 -34
  224. package/dist/hooks/useNegativeMargin/useNegativeMargin.js +4 -2
  225. package/dist/hooks/useNegativeMargin/useNegativeMarginLeft.css.js +13 -5
  226. package/dist/hooks/useNegativeMargin/useNegativeMarginLeft.js +6 -4
  227. package/dist/hooks/useNegativeMargin/useNegativeMarginTop.css.js +12 -4
  228. package/dist/hooks/useNegativeMargin/useNegativeMarginTop.js +6 -4
  229. package/dist/hooks/useResponsiveValue/index.js +3 -1
  230. package/dist/hooks/useResponsiveValue/useResponsiveValue.js +14 -14
  231. package/dist/hooks/useWindowScrollLock/index.js +15 -13
  232. package/dist/index.js +7 -5
  233. package/dist/reset/globalFonts.css.js +20 -12
  234. package/dist/reset/globalReset.css.js +21 -13
  235. package/dist/reset/reset.css.js +105 -109
  236. package/dist/themes/base/index.d.ts +1 -0
  237. package/dist/themes/base/index.d.ts.map +1 -1
  238. package/dist/themes/base/index.js +10 -6
  239. package/dist/themes/base/tokens.js +264 -257
  240. package/dist/themes/base/vars.css.js +10 -2
  241. package/dist/themes/flat_red/index.d.ts +1 -0
  242. package/dist/themes/flat_red/index.d.ts.map +1 -1
  243. package/dist/themes/flat_red/index.js +10 -6
  244. package/dist/themes/flat_red/tokens.js +104 -98
  245. package/dist/themes/flat_red/vars.css.js +10 -2
  246. package/dist/themes/helpers.js +60 -51
  247. package/dist/themes/index.js +4 -2
  248. package/dist/themes/makeTheme.js +27 -16
  249. package/dist/themes/theme.css.js +271 -259
  250. package/dist/themes/tokens.js +3 -1
  251. package/dist/utils/index.js +93 -77
  252. package/dist/utils/mapTokenToProperty.js +22 -10
  253. package/dist/utils/number.js +21 -24
  254. package/dist/utils/resolveResponsiveProps.js +29 -31
  255. package/dist/utils/responsiveProps.css.js +29 -17
  256. package/dist/utils/responsiveStyle.js +26 -16
  257. package/package.json +4 -2
@@ -1,65 +1,77 @@
1
+ "use strict";
2
+
3
+ import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
4
+ import * as __vanilla_filescope__ from '@vanilla-extract/css/fileScope';
5
+
6
+ __vanilla_filescope__.setFileScope("lib/components/StandardModal/StandardModal.css.ts", "@autoguru/overdrive");
7
+
8
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
9
+
10
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
11
+
1
12
  import { style } from '@vanilla-extract/css';
2
- import { themeContractVars as vars } from '../../themes/theme.css';
3
- import { responsiveStyle } from '../../utils/responsiveStyle';
13
+ import { themeContractVars as vars } from "../../themes/theme.css.js";
14
+ import { responsiveStyle } from "../../utils/responsiveStyle.js";
4
15
  export const container = style({
5
- outline: '0',
6
- });
7
- export const modal = style({
8
- width: '100vw',
16
+ outline: '0'
17
+ }, "container");
18
+ export const modal = style(_objectSpread({
19
+ width: '100vw',
20
+ height: 'auto',
21
+ alignSelf: 'flex-end',
22
+ minHeight: "calc(3 * ".concat(vars.space['8'], ")"),
23
+ maxHeight: "calc(100vh - ".concat(vars.space['8'], ")"),
24
+ borderRadius: "".concat(vars.space['2'], " ").concat(vars.space['2'], " 0 0")
25
+ }, responsiveStyle({
26
+ tablet: {
27
+ alignSelf: 'center',
28
+ borderRadius: "".concat(vars.space['1'])
29
+ },
30
+ desktop: {
31
+ maxWidth: "calc(100% - ".concat(vars.space['9'], " * 2)"),
9
32
  height: 'auto',
10
- alignSelf: 'flex-end',
11
- minHeight: `calc(3 * ${vars.space['8']})`,
12
- maxHeight: `calc(100vh - ${vars.space['8']})`,
13
- borderRadius: `${vars.space['2']} ${vars.space['2']} 0 0`,
14
- ...responsiveStyle({
15
- tablet: {
16
- alignSelf: 'center',
17
- borderRadius: `${vars.space['1']}`,
18
- },
19
- desktop: {
20
- maxWidth: `calc(100% - ${vars.space['9']} * 2)`,
21
- height: 'auto',
22
- maxHeight: `calc(100vh - ${vars.space['9']} * 2)`,
23
- boxShadow: '0 0 32px 0 rgba(0,0,0, 0.012), 0 24px 96px 0 rgba(0,0,0, 0.08)',
24
- marginTop: 0,
25
- },
26
- }),
27
- });
33
+ maxHeight: "calc(100vh - ".concat(vars.space['9'], " * 2)"),
34
+ boxShadow: '0 0 32px 0 rgba(0,0,0, 0.012), 0 24px 96px 0 rgba(0,0,0, 0.08)',
35
+ marginTop: 0
36
+ }
37
+ })), "modal");
28
38
  export const modalSizeSkinny = style(responsiveStyle({
29
- tablet: {
30
- maxWidth: '420px',
31
- },
32
- desktop: {
33
- maxWidth: '420px',
34
- },
35
- largeDesktop: {
36
- width: '420px',
37
- },
38
- }));
39
+ tablet: {
40
+ maxWidth: '420px'
41
+ },
42
+ desktop: {
43
+ maxWidth: '420px'
44
+ },
45
+ largeDesktop: {
46
+ width: '420px'
47
+ }
48
+ }), "modalSizeSkinny");
39
49
  export const modalSizeNarrow = style(responsiveStyle({
40
- tablet: {
41
- maxWidth: '600px',
42
- },
43
- desktop: {
44
- maxWidth: '600px',
45
- },
46
- largeDesktop: {
47
- width: '600px',
48
- },
49
- }));
50
+ tablet: {
51
+ maxWidth: '600px'
52
+ },
53
+ desktop: {
54
+ maxWidth: '600px'
55
+ },
56
+ largeDesktop: {
57
+ width: '600px'
58
+ }
59
+ }), "modalSizeNarrow");
50
60
  export const modalSizeStandard = style(responsiveStyle({
51
- tablet: {
52
- width: '800px',
53
- },
54
- }));
61
+ tablet: {
62
+ width: '800px'
63
+ }
64
+ }), "modalSizeStandard");
55
65
  export const headerCloseButton = style({
56
- top: 0,
57
- right: 0,
58
- bottom: 0,
59
- });
66
+ top: 0,
67
+ right: 0,
68
+ bottom: 0
69
+ }, "headerCloseButton");
60
70
  export const content = style({
61
- overflowY: 'auto',
62
- overscrollBehavior: 'contain',
63
- webkitOverflowScrolling: 'touch',
64
- '-webkit-overflow-scrolling': 'touch',
65
- });
71
+ overflowY: 'auto',
72
+ overscrollBehavior: 'contain',
73
+ webkitOverflowScrolling: 'touch',
74
+ '-webkit-overflow-scrolling': 'touch'
75
+ }, "content");
76
+
77
+ __vanilla_filescope__.endFileScope();
@@ -1,59 +1,134 @@
1
+ "use strict";
2
+
1
3
  import { WindowCloseIcon } from '@autoguru/icons';
2
4
  import clsx from 'clsx';
3
5
  import * as React from 'react';
4
6
  import { useLayoutEffect, useRef } from 'react';
5
- import { isBrowser, useEventCallback, useId } from '../../utils';
6
- import { Box } from '../Box';
7
- import { Button } from '../Button';
8
- import { Heading } from '../Heading';
9
- import { Icon } from '../Icon';
10
- import { Modal } from '../Modal';
11
- import { useTextStyles } from '../Text';
12
- import * as styles from './StandardModal.css';
13
- export var ESize;
7
+ import { isBrowser, useEventCallback, useId } from "../../utils/index.js";
8
+ import { Box } from "../Box/index.js";
9
+ import { Button } from "../Button/index.js";
10
+ import { Heading } from "../Heading/index.js";
11
+ import { Icon } from "../Icon/index.js";
12
+ import { Modal } from "../Modal/index.js";
13
+ import { useTextStyles } from "../Text/index.js";
14
+ import * as styles from "./StandardModal.css.js";
15
+ import { jsx as _jsx } from "react/jsx-runtime";
16
+ import { jsxs as _jsxs } from "react/jsx-runtime";
17
+ export let ESize;
18
+
14
19
  (function (ESize) {
15
- ESize["Skinny"] = "skinny";
16
- ESize["Narrow"] = "narrow";
17
- ESize["Standard"] = "standard";
20
+ ESize["Skinny"] = "skinny";
21
+ ESize["Narrow"] = "narrow";
22
+ ESize["Standard"] = "standard";
18
23
  })(ESize || (ESize = {}));
19
- export const StandardModal = ({ isOpen, size = 'standard', className = '', title, onRequestClose, children, }) => {
20
- const titleId = useId();
21
- const locked = useRef(true);
22
- const closeButtonHandler = useEventCallback(() => {
23
- if (typeof onRequestClose === 'function')
24
- onRequestClose('button');
25
- });
26
- const unlockModal = useEventCallback((event) => {
27
- locked.current = event.target !== event.currentTarget;
28
- });
29
- const backdropHandler = useEventCallback((event) => {
30
- if (locked.current || event.target !== event.currentTarget)
31
- return;
32
- if (typeof onRequestClose === 'function')
33
- onRequestClose('backdrop');
34
- });
35
- if (isBrowser) {
36
- useLayoutEffect(() => {
37
- document.body.style.overflow = isOpen ? 'hidden' : '';
38
- return () => {
39
- document.body.style.overflow = '';
40
- };
41
- }, [isOpen]);
42
- }
43
- return (React.createElement(Modal, { isOpen: isOpen, onRequestClose: onRequestClose },
44
- React.createElement(Box, { className: styles.container, height: "full", display: "flex", alignItems: "center", justifyContent: "center", "aria-hidden": isOpen ? 'false' : 'true', role: "none presentation", onMouseDown: unlockModal, onClick: backdropHandler },
45
- React.createElement(Box, { is: "article", overflow: "hidden", role: "dialog", "aria-modal": "true", "aria-labelledby": titleId, display: "flex", flexDirection: "column", backgroundColour: "white", marginTop: "8", className: clsx([
46
- styles.modal,
47
- { [styles.modalSizeStandard]: size === 'standard' },
48
- { [styles.modalSizeNarrow]: size === 'narrow' },
49
- { [styles.modalSizeSkinny]: size === 'skinny' },
50
- className,
51
- ]) },
52
- React.createElement(Box, { is: "header", flexShrink: 0, position: "relative", display: "flex", alignItems: "center", justifyContent: "center", width: "full", paddingY: "3", paddingLeft: "5", paddingRight: "2", borderWidthBottom: "1", borderColour: "light" },
53
- React.createElement(Box, { flexGrow: 1, id: titleId },
54
- React.createElement(Heading, { is: "h4" }, title)),
55
- React.createElement(Button, { minimal: true, rounded: true, variant: "secondary", size: "small", "aria-label": "close", onClick: closeButtonHandler },
56
- React.createElement(Icon, { className: useTextStyles({ colour: 'muted' }), icon: WindowCloseIcon, size: "medium" }))),
57
- React.createElement(Box, { is: "main", display: "flex", flexDirection: "column", flexGrow: 1, height: "full", className: styles.content }, children)))));
24
+
25
+ export const StandardModal = _ref => {
26
+ let {
27
+ isOpen,
28
+ size = 'standard',
29
+ className = '',
30
+ title,
31
+ onRequestClose,
32
+ children
33
+ } = _ref;
34
+ const titleId = useId();
35
+ const locked = useRef(true);
36
+ const closeButtonHandler = useEventCallback(() => {
37
+ if (typeof onRequestClose === 'function') onRequestClose('button');
38
+ });
39
+ const unlockModal = useEventCallback(event => {
40
+ locked.current = event.target !== event.currentTarget;
41
+ });
42
+ const backdropHandler = useEventCallback(event => {
43
+ if (locked.current || event.target !== event.currentTarget) return;
44
+ if (typeof onRequestClose === 'function') onRequestClose('backdrop');
45
+ });
46
+
47
+ if (isBrowser) {
48
+ useLayoutEffect(() => {
49
+ document.body.style.overflow = isOpen ? 'hidden' : '';
50
+ return () => {
51
+ document.body.style.overflow = '';
52
+ };
53
+ }, [isOpen]);
54
+ }
55
+
56
+ return _jsx(Modal, {
57
+ isOpen: isOpen,
58
+ onRequestClose: onRequestClose,
59
+ children: _jsx(Box, {
60
+ className: styles.container,
61
+ height: "full",
62
+ display: "flex",
63
+ alignItems: "center",
64
+ justifyContent: "center",
65
+ "aria-hidden": isOpen ? 'false' : 'true',
66
+ role: "none presentation",
67
+ onMouseDown: unlockModal,
68
+ onClick: backdropHandler,
69
+ children: _jsxs(Box, {
70
+ is: "article",
71
+ overflow: "hidden",
72
+ role: "dialog",
73
+ "aria-modal": "true",
74
+ "aria-labelledby": titleId,
75
+ display: "flex",
76
+ flexDirection: "column",
77
+ backgroundColour: "white",
78
+ marginTop: "8",
79
+ className: clsx([styles.modal, {
80
+ [styles.modalSizeStandard]: size === 'standard'
81
+ }, {
82
+ [styles.modalSizeNarrow]: size === 'narrow'
83
+ }, {
84
+ [styles.modalSizeSkinny]: size === 'skinny'
85
+ }, className]),
86
+ children: [_jsxs(Box, {
87
+ is: "header",
88
+ flexShrink: 0,
89
+ position: "relative",
90
+ display: "flex",
91
+ alignItems: "center",
92
+ justifyContent: "center",
93
+ width: "full",
94
+ paddingY: "3",
95
+ paddingLeft: "5",
96
+ paddingRight: "2",
97
+ borderWidthBottom: "1",
98
+ borderColour: "light",
99
+ children: [_jsx(Box, {
100
+ flexGrow: 1,
101
+ id: titleId,
102
+ children: _jsx(Heading, {
103
+ is: "h4",
104
+ children: title
105
+ })
106
+ }), _jsx(Button, {
107
+ minimal: true,
108
+ rounded: true,
109
+ variant: "secondary",
110
+ size: "small",
111
+ "aria-label": "close",
112
+ onClick: closeButtonHandler,
113
+ children: _jsx(Icon, {
114
+ className: useTextStyles({
115
+ colour: 'muted'
116
+ }),
117
+ icon: WindowCloseIcon,
118
+ size: "medium"
119
+ })
120
+ })]
121
+ }), _jsx(Box, {
122
+ is: "main",
123
+ display: "flex",
124
+ flexDirection: "column",
125
+ flexGrow: 1,
126
+ height: "full",
127
+ className: styles.content,
128
+ children: children
129
+ })]
130
+ })
131
+ })
132
+ });
58
133
  };
59
- export default StandardModal;
134
+ export default StandardModal;
@@ -1 +1,3 @@
1
- export { StandardModal, ESize as EStandardModalSize } from './StandardModal';
1
+ "use strict";
2
+
3
+ export { StandardModal, ESize as EStandardModalSize } from "./StandardModal.js";
@@ -1,10 +1,18 @@
1
+ "use strict";
2
+
3
+ import * as __vanilla_filescope__ from '@vanilla-extract/css/fileScope';
4
+
5
+ __vanilla_filescope__.setFileScope("lib/components/StarRating/StarRating.css.ts", "@autoguru/overdrive");
6
+
1
7
  import { styleVariants } from '@vanilla-extract/css';
2
- import { themeContractVars as vars } from '../../themes/theme.css';
8
+ import { themeContractVars as vars } from "../../themes/theme.css.js";
3
9
  export const star = styleVariants({
4
- default: {
5
- color: vars.colours.intent.shine.foreground,
6
- },
7
- empty: {
8
- color: vars.colours.intent.shine.background.standard,
9
- },
10
- });
10
+ default: {
11
+ color: vars.colours.intent.shine.foreground
12
+ },
13
+ empty: {
14
+ color: vars.colours.intent.shine.background.standard
15
+ }
16
+ }, "star");
17
+
18
+ __vanilla_filescope__.endFileScope();
@@ -1,59 +1,103 @@
1
+ "use strict";
2
+
1
3
  import { StarHalfIcon, StarIcon } from '@autoguru/icons';
2
4
  import clsx from 'clsx';
3
5
  import * as React from 'react';
4
6
  import { memo } from 'react';
5
- import { Box, useBoxStyles } from '../Box';
6
- import { Icon } from '../Icon';
7
- import { Inline } from '../Inline';
8
- import { Text } from '../Text';
9
- import * as styles from './StarRating.css';
7
+ import { Box, useBoxStyles } from "../Box/index.js";
8
+ import { Icon } from "../Icon/index.js";
9
+ import { Inline } from "../Inline/index.js";
10
+ import { Text } from "../Text/index.js";
11
+ import * as styles from "./StarRating.css.js";
12
+ import { jsx as _jsx } from "react/jsx-runtime";
13
+ import { jsxs as _jsxs } from "react/jsx-runtime";
10
14
  const totalStars = 5;
11
- export var EStarRatingSize;
15
+ export let EStarRatingSize;
16
+
12
17
  (function (EStarRatingSize) {
13
- EStarRatingSize["Medium"] = "medium";
14
- EStarRatingSize["Small"] = "small";
18
+ EStarRatingSize["Medium"] = "medium";
19
+ EStarRatingSize["Small"] = "small";
15
20
  })(EStarRatingSize || (EStarRatingSize = {}));
21
+
16
22
  var EStarType;
23
+
17
24
  (function (EStarType) {
18
- EStarType[EStarType["Full"] = 0] = "Full";
19
- EStarType[EStarType["Half"] = 1] = "Half";
20
- EStarType[EStarType["Empty"] = 2] = "Empty";
25
+ EStarType[EStarType["Full"] = 0] = "Full";
26
+ EStarType[EStarType["Half"] = 1] = "Half";
27
+ EStarType[EStarType["Empty"] = 2] = "Empty";
21
28
  })(EStarType || (EStarType = {}));
22
- const starSizeMap = new Map([
23
- [EStarRatingSize.Medium, 'medium'],
24
- [EStarRatingSize.Small, 'small'],
25
- ]);
26
- const labelSizeMap = new Map([
27
- [EStarRatingSize.Small, '3'],
28
- [EStarRatingSize.Medium, '4'],
29
- ]);
30
- export const StarRating = memo(({ className = '', rating, label = rating, size = EStarRatingSize.Medium, }) => (React.createElement(Box, { className: className },
31
- React.createElement(Inline, { space: "4", alignY: "center" },
32
- React.createElement(Inline, { space: "none", alignY: "center" }, Array.from({ length: totalStars })
33
- .fill(0)
34
- .map((_, index) => (React.createElement(Star, { key: index, index: index, rating: rating, size: size })))),
35
- label === null ? null : (React.createElement(Text, { size: labelSizeMap.get(size) }, label))))));
29
+
30
+ const starSizeMap = new Map([[EStarRatingSize.Medium, 'medium'], [EStarRatingSize.Small, 'small']]);
31
+ const labelSizeMap = new Map([[EStarRatingSize.Small, '3'], [EStarRatingSize.Medium, '4']]);
32
+ export const StarRating = memo(_ref => {
33
+ let {
34
+ className = '',
35
+ rating,
36
+ label = rating,
37
+ size = EStarRatingSize.Medium
38
+ } = _ref;
39
+ return _jsx(Box, {
40
+ className: className,
41
+ children: _jsxs(Inline, {
42
+ space: "4",
43
+ alignY: "center",
44
+ children: [_jsx(Inline, {
45
+ space: "none",
46
+ alignY: "center",
47
+ children: Array.from({
48
+ length: totalStars
49
+ }).fill(0).map((_, index) => _jsx(Star, {
50
+ index: index,
51
+ rating: rating,
52
+ size: size
53
+ }, index))
54
+ }), label === null ? null : _jsx(Text, {
55
+ size: labelSizeMap.get(size),
56
+ children: label
57
+ })]
58
+ })
59
+ });
60
+ });
61
+
36
62
  const getStarIconType = (index, rating) => {
37
- if (index + 1 <= Math.floor(rating)) {
38
- return EStarType.Full;
39
- }
40
- if (index + 1 > Math.ceil(rating)) {
41
- return EStarType.Empty;
42
- }
43
- const decimalPart = Math.round((rating - index) * 1e1);
44
- if (decimalPart <= 2) {
45
- return EStarType.Empty;
46
- }
47
- if (decimalPart >= 8) {
48
- return EStarType.Full;
49
- }
50
- return EStarType.Half;
63
+ if (index + 1 <= Math.floor(rating)) {
64
+ return EStarType.Full;
65
+ }
66
+
67
+ if (index + 1 > Math.ceil(rating)) {
68
+ return EStarType.Empty;
69
+ }
70
+
71
+ const decimalPart = Math.round((rating - index) * 1e1);
72
+
73
+ if (decimalPart <= 2) {
74
+ return EStarType.Empty;
75
+ }
76
+
77
+ if (decimalPart >= 8) {
78
+ return EStarType.Full;
79
+ }
80
+
81
+ return EStarType.Half;
51
82
  };
52
- const Star = ({ index, rating = 0, size = EStarRatingSize.Medium, }) => {
53
- const starType = getStarIconType(index, rating);
54
- const star = starType === EStarType.Half ? StarHalfIcon : StarIcon;
55
- return (React.createElement(Icon, { key: index, icon: star, size: starSizeMap.get(size), className: clsx(useBoxStyles({ position: 'relative' }), styles.star.default, {
56
- [styles.star.empty]: starType === EStarType.Empty,
57
- }) }));
83
+
84
+ const Star = _ref2 => {
85
+ let {
86
+ index,
87
+ rating = 0,
88
+ size = EStarRatingSize.Medium
89
+ } = _ref2;
90
+ const starType = getStarIconType(index, rating);
91
+ const star = starType === EStarType.Half ? StarHalfIcon : StarIcon;
92
+ return _jsx(Icon, {
93
+ icon: star,
94
+ size: starSizeMap.get(size),
95
+ className: clsx(useBoxStyles({
96
+ position: 'relative'
97
+ }), styles.star.default, {
98
+ [styles.star.empty]: starType === EStarType.Empty
99
+ })
100
+ }, index);
58
101
  };
59
- export default StarRating;
102
+
103
+ export default StarRating;
@@ -1 +1,3 @@
1
- export { StarRating, EStarRatingSize } from './StarRating';
1
+ "use strict";
2
+
3
+ export { StarRating, EStarRatingSize } from "./StarRating.js";
@@ -1,41 +1,51 @@
1
+ "use strict";
2
+
3
+ import * as __vanilla_filescope__ from '@vanilla-extract/css/fileScope';
4
+
5
+ __vanilla_filescope__.setFileScope("lib/components/Stepper/Stepper.css.ts", "@autoguru/overdrive");
6
+
1
7
  import { style, styleVariants } from '@vanilla-extract/css';
2
- import { themeContractVars as vars } from '../../themes/theme.css';
3
- export const disabled = style({ cursor: 'not-allowed' });
8
+ import { themeContractVars as vars } from "../../themes/theme.css.js";
9
+ export const disabled = style({
10
+ cursor: 'not-allowed'
11
+ }, "disabled");
4
12
  export const root = style({
5
- width: 'max-content',
6
- selectors: {
7
- [`&:not(${disabled}):focus`]: {
8
- borderColor: vars.colours.intent.information.background.standard,
9
- },
10
- },
11
- });
13
+ width: 'max-content',
14
+ selectors: {
15
+ ["&:not(".concat(disabled, "):focus")]: {
16
+ borderColor: vars.colours.intent.information.background.standard
17
+ }
18
+ }
19
+ }, "root");
12
20
  export const width = styleVariants({
13
- full: {
14
- width: '100%',
15
- },
16
- default: {
17
- width: 'max-content',
18
- },
19
- });
21
+ full: {
22
+ width: '100%'
23
+ },
24
+ default: {
25
+ width: 'max-content'
26
+ }
27
+ }, "width");
20
28
  export const handle = styleVariants({
21
- default: {
22
- width: vars.space[6],
23
- height: vars.space[6],
24
- backgroundColor: vars.colours.intent.primary.background.standard,
25
- transition: `background-color 0.1s ${vars.animation.easing.standard}`,
26
- selectors: {
27
- [`${root}:not(${disabled}) &:hover`]: {
28
- backgroundColor: vars.colours.intent.primary.background.strong,
29
- },
30
- [`${root}:not(${disabled}) &:active`]: {
31
- backgroundColor: vars.colours.intent.primary.background.strong,
32
- },
33
- },
34
- },
35
- disabled: {
36
- borderColor: vars.colours.background.neutral,
37
- },
38
- });
29
+ default: {
30
+ width: vars.space[6],
31
+ height: vars.space[6],
32
+ backgroundColor: vars.colours.intent.primary.background.standard,
33
+ transition: "background-color 0.1s ".concat(vars.animation.easing.standard),
34
+ selectors: {
35
+ ["".concat(root, ":not(").concat(disabled, ") &:hover")]: {
36
+ backgroundColor: vars.colours.intent.primary.background.strong
37
+ },
38
+ ["".concat(root, ":not(").concat(disabled, ") &:active")]: {
39
+ backgroundColor: vars.colours.intent.primary.background.strong
40
+ }
41
+ }
42
+ },
43
+ disabled: {
44
+ borderColor: vars.colours.background.neutral
45
+ }
46
+ }, "handle");
39
47
  export const label = style({
40
- minWidth: vars.space['8'],
41
- });
48
+ minWidth: vars.space['8']
49
+ }, "label");
50
+
51
+ __vanilla_filescope__.endFileScope();