@autoguru/overdrive 4.10.1 → 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 (260) 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 +4 -4
  20. package/dist/components/Box/useBoxStyles.css.d.ts.map +1 -1
  21. package/dist/components/Box/useBoxStyles.css.js +114 -89
  22. package/dist/components/Box/useBoxStyles.d.ts +7 -7
  23. package/dist/components/Box/useBoxStyles.d.ts.map +1 -1
  24. package/dist/components/Box/useBoxStyles.js +75 -47
  25. package/dist/components/BulletList/Bullet.css.js +49 -41
  26. package/dist/components/BulletList/Bullet.js +38 -24
  27. package/dist/components/BulletList/BulletList.css.js +13 -5
  28. package/dist/components/BulletList/BulletList.js +23 -10
  29. package/dist/components/BulletList/context.js +3 -1
  30. package/dist/components/BulletList/index.js +4 -2
  31. package/dist/components/BulletText/BulletText.css.js +21 -13
  32. package/dist/components/BulletText/BulletText.js +57 -16
  33. package/dist/components/BulletText/index.js +3 -1
  34. package/dist/components/Button/Button.css.js +243 -235
  35. package/dist/components/Button/Button.js +154 -91
  36. package/dist/components/Button/index.js +3 -1
  37. package/dist/components/CheckBox/CheckBox.css.js +28 -20
  38. package/dist/components/CheckBox/CheckBox.js +54 -16
  39. package/dist/components/CheckBox/index.js +3 -1
  40. package/dist/components/ColourInput/ColourInput.css.js +31 -23
  41. package/dist/components/ColourInput/ColourInput.js +70 -20
  42. package/dist/components/ColourInput/index.js +3 -1
  43. package/dist/components/Columns/Column.css.js +36 -26
  44. package/dist/components/Columns/Column.js +51 -16
  45. package/dist/components/Columns/Columns.css.js +39 -31
  46. package/dist/components/Columns/Columns.js +55 -22
  47. package/dist/components/Columns/index.js +4 -2
  48. package/dist/components/DateInput/DateInput.js +34 -7
  49. package/dist/components/DateInput/index.js +3 -1
  50. package/dist/components/DatePicker/DatePicker.css.js +40 -32
  51. package/dist/components/DatePicker/DatePicker.js +64 -23
  52. package/dist/components/DatePicker/index.js +3 -1
  53. package/dist/components/DividerLine/DividerLine.css.js +45 -37
  54. package/dist/components/DividerLine/DividerLine.js +22 -6
  55. package/dist/components/DividerLine/index.js +3 -1
  56. package/dist/components/Flyout/Flyout.js +41 -5
  57. package/dist/components/Flyout/index.js +3 -1
  58. package/dist/components/Heading/Heading.js +41 -21
  59. package/dist/components/Heading/index.js +3 -1
  60. package/dist/components/Icon/Icon.css.js +13 -5
  61. package/dist/components/Icon/Icon.js +26 -9
  62. package/dist/components/Icon/index.js +3 -1
  63. package/dist/components/Image/Image.js +23 -5
  64. package/dist/components/Image/ImageServerProvider.d.ts +1 -1
  65. package/dist/components/Image/ImageServerProvider.d.ts.map +1 -1
  66. package/dist/components/Image/ImageServerProvider.js +55 -35
  67. package/dist/components/Image/ResponsiveImage.js +46 -21
  68. package/dist/components/Image/SimpleImage.js +30 -2
  69. package/dist/components/Image/index.js +4 -2
  70. package/dist/components/Image/types.js +3 -1
  71. package/dist/components/Inline/Inline.js +74 -30
  72. package/dist/components/Inline/index.js +3 -1
  73. package/dist/components/LinearProgressIndicator/LinearProgressIndicator.css.js +56 -48
  74. package/dist/components/LinearProgressIndicator/LinearProgressIndicator.js +31 -7
  75. package/dist/components/LinearProgressIndicator/index.js +3 -1
  76. package/dist/components/LoadingBox/LoadingBox.css.js +26 -18
  77. package/dist/components/LoadingBox/LoadingBox.js +40 -7
  78. package/dist/components/LoadingBox/index.js +3 -1
  79. package/dist/components/Meta/Meta.css.js +16 -8
  80. package/dist/components/Meta/Meta.js +30 -8
  81. package/dist/components/Meta/index.js +3 -1
  82. package/dist/components/MinimalModal/MinimalModal.css.js +15 -7
  83. package/dist/components/MinimalModal/MinimalModal.js +67 -29
  84. package/dist/components/MinimalModal/index.js +3 -1
  85. package/dist/components/Modal/Modal.css.js +38 -30
  86. package/dist/components/Modal/Modal.js +129 -73
  87. package/dist/components/Modal/index.js +3 -1
  88. package/dist/components/NumberBubble/NumberBubble.css.js +12 -4
  89. package/dist/components/NumberBubble/NumberBubble.js +51 -23
  90. package/dist/components/NumberBubble/index.js +3 -1
  91. package/dist/components/NumberInput/NumberInput.js +67 -29
  92. package/dist/components/NumberInput/index.js +3 -1
  93. package/dist/components/OrderedList/OrderedList.css.js +16 -8
  94. package/dist/components/OrderedList/OrderedList.js +60 -26
  95. package/dist/components/OrderedList/index.js +3 -1
  96. package/dist/components/OutsideClick/OutsideClick.js +40 -35
  97. package/dist/components/OutsideClick/index.js +3 -1
  98. package/dist/components/OverdriveProvider/OverdriveProvider.js +33 -19
  99. package/dist/components/OverdriveProvider/index.js +3 -1
  100. package/dist/components/Pagination/Bubble.js +41 -19
  101. package/dist/components/Pagination/Pagination.css.js +28 -20
  102. package/dist/components/Pagination/Pagination.js +166 -67
  103. package/dist/components/Pagination/index.js +3 -1
  104. package/dist/components/Portal/Portal.js +40 -24
  105. package/dist/components/Portal/index.js +3 -1
  106. package/dist/components/Positioner/Positioner.css.js +14 -6
  107. package/dist/components/Positioner/Positioner.js +109 -85
  108. package/dist/components/Positioner/alignment.js +13 -10
  109. package/dist/components/Positioner/index.js +4 -2
  110. package/dist/components/ProgressBar/ProgressBar.css.js +14 -6
  111. package/dist/components/ProgressBar/ProgressBar.js +30 -12
  112. package/dist/components/ProgressBar/index.js +3 -1
  113. package/dist/components/ProgressBarGroup/ProgressBarGroup.css.js +12 -4
  114. package/dist/components/ProgressBarGroup/ProgressBarGroup.js +42 -14
  115. package/dist/components/ProgressBarGroup/index.js +3 -1
  116. package/dist/components/ProgressSpinner/ProgressSpinner.css.js +81 -73
  117. package/dist/components/ProgressSpinner/ProgressSpinner.js +32 -14
  118. package/dist/components/ProgressSpinner/index.js +3 -1
  119. package/dist/components/Radio/Radio.css.js +31 -23
  120. package/dist/components/Radio/Radio.js +58 -19
  121. package/dist/components/Radio/RadioGroup.js +32 -7
  122. package/dist/components/Radio/index.js +4 -2
  123. package/dist/components/Section/Section.css.js +13 -5
  124. package/dist/components/Section/Section.js +19 -4
  125. package/dist/components/Section/index.js +3 -1
  126. package/dist/components/SelectInput/SelectInput.css.js +19 -11
  127. package/dist/components/SelectInput/SelectInput.js +60 -11
  128. package/dist/components/SelectInput/index.js +3 -1
  129. package/dist/components/SimplePagination/SimplePagination.js +57 -17
  130. package/dist/components/SimplePagination/index.js +3 -1
  131. package/dist/components/Stack/Divider.css.js +12 -4
  132. package/dist/components/Stack/Divider.js +13 -4
  133. package/dist/components/Stack/Stack.css.js +18 -10
  134. package/dist/components/Stack/Stack.js +47 -23
  135. package/dist/components/Stack/index.js +3 -1
  136. package/dist/components/StandardModal/StandardModal.css.js +69 -57
  137. package/dist/components/StandardModal/StandardModal.js +127 -52
  138. package/dist/components/StandardModal/index.js +3 -1
  139. package/dist/components/StarRating/StarRating.css.js +16 -8
  140. package/dist/components/StarRating/StarRating.js +90 -46
  141. package/dist/components/StarRating/index.js +3 -1
  142. package/dist/components/Stepper/Stepper.css.js +46 -36
  143. package/dist/components/Stepper/Stepper.js +159 -66
  144. package/dist/components/Stepper/index.js +3 -1
  145. package/dist/components/Switch/Switch.css.js +54 -46
  146. package/dist/components/Switch/Switch.js +54 -21
  147. package/dist/components/Switch/index.js +3 -1
  148. package/dist/components/Table/Table.css.js +14 -6
  149. package/dist/components/Table/Table.js +29 -6
  150. package/dist/components/Table/TableCell.css.js +28 -20
  151. package/dist/components/Table/TableCell.js +41 -11
  152. package/dist/components/Table/TableHeadCell.css.js +61 -50
  153. package/dist/components/Table/TableHeadCell.js +86 -40
  154. package/dist/components/Table/TableRow.js +18 -3
  155. package/dist/components/Table/TableRowGroup.js +16 -3
  156. package/dist/components/Table/context.js +21 -10
  157. package/dist/components/Table/index.js +7 -5
  158. package/dist/components/Tabs/Tab.css.js +43 -35
  159. package/dist/components/Tabs/Tab.js +79 -49
  160. package/dist/components/Tabs/TabList.css.js +30 -22
  161. package/dist/components/Tabs/TabList.js +122 -67
  162. package/dist/components/Tabs/TabPane.css.js +11 -3
  163. package/dist/components/Tabs/TabPane.js +32 -15
  164. package/dist/components/Tabs/TabPanes.css.js +16 -8
  165. package/dist/components/Tabs/TabPanes.js +23 -6
  166. package/dist/components/Tabs/Tabs.js +22 -10
  167. package/dist/components/Tabs/index.js +7 -5
  168. package/dist/components/Text/Text.js +37 -15
  169. package/dist/components/Text/index.js +4 -2
  170. package/dist/components/Text/useTextStyles.css.js +42 -20
  171. package/dist/components/Text/useTextStyles.js +20 -5
  172. package/dist/components/TextAreaInput/TextAreaInput.js +35 -7
  173. package/dist/components/TextAreaInput/index.js +3 -1
  174. package/dist/components/TextBubble/TextBubble.css.js +13 -5
  175. package/dist/components/TextBubble/TextBubble.js +66 -29
  176. package/dist/components/TextBubble/index.js +3 -1
  177. package/dist/components/TextContainer/TextContainer.js +44 -9
  178. package/dist/components/TextContainer/index.js +3 -1
  179. package/dist/components/TextInput/TextInput.js +36 -5
  180. package/dist/components/TextInput/index.js +3 -1
  181. package/dist/components/TextLink/TextLink.css.js +23 -15
  182. package/dist/components/TextLink/TextLink.js +63 -24
  183. package/dist/components/TextLink/index.js +3 -1
  184. package/dist/components/ThemeOverrideProvider/ThemeOverrideDebugger.d.ts +3 -0
  185. package/dist/components/ThemeOverrideProvider/ThemeOverrideDebugger.d.ts.map +1 -0
  186. package/dist/components/ThemeOverrideProvider/ThemeOverrideDebugger.js +80 -0
  187. package/dist/components/ThemeOverrideProvider/ThemeOverrideProvider.d.ts +22 -0
  188. package/dist/components/ThemeOverrideProvider/ThemeOverrideProvider.d.ts.map +1 -0
  189. package/dist/components/ThemeOverrideProvider/ThemeOverrideProvider.js +39 -0
  190. package/dist/components/ThemeOverrideProvider/index.d.ts +3 -0
  191. package/dist/components/ThemeOverrideProvider/index.d.ts.map +1 -0
  192. package/dist/components/ThemeOverrideProvider/index.js +4 -0
  193. package/dist/components/ThemeOverrideProvider/useBuildThemeOverrides.d.ts +17 -0
  194. package/dist/components/ThemeOverrideProvider/useBuildThemeOverrides.d.ts.map +1 -0
  195. package/dist/components/ThemeOverrideProvider/useBuildThemeOverrides.js +97 -0
  196. package/dist/components/ThemeProvider/ThemeProvider.js +30 -11
  197. package/dist/components/ThemeProvider/index.js +3 -1
  198. package/dist/components/Toaster/Toast.css.js +18 -10
  199. package/dist/components/Toaster/Toast.js +222 -108
  200. package/dist/components/Toaster/index.js +3 -1
  201. package/dist/components/Tooltip/Tooltip.css.js +21 -9
  202. package/dist/components/Tooltip/Tooltip.js +72 -40
  203. package/dist/components/Tooltip/index.js +3 -1
  204. package/dist/components/VisuallyHidden/VisuallyHidden.css.js +13 -5
  205. package/dist/components/VisuallyHidden/VisuallyHidden.js +20 -4
  206. package/dist/components/VisuallyHidden/index.js +3 -1
  207. package/dist/components/index.d.ts +1 -0
  208. package/dist/components/index.d.ts.map +1 -1
  209. package/dist/components/index.js +59 -56
  210. package/dist/components/private/CheckableBase/CheckableBase.css.js +46 -38
  211. package/dist/components/private/CheckableBase/CheckableBase.js +91 -27
  212. package/dist/components/private/CheckableBase/index.js +3 -1
  213. package/dist/components/private/CheckableBase/useCheckableStyles.js +5 -3
  214. package/dist/components/private/InputBase/HintText.css.js +11 -3
  215. package/dist/components/private/InputBase/HintText.js +28 -14
  216. package/dist/components/private/InputBase/InputState.css.js +96 -80
  217. package/dist/components/private/InputBase/NotchedBase.css.js +157 -162
  218. package/dist/components/private/InputBase/NotchedBase.js +116 -76
  219. package/dist/components/private/InputBase/index.js +3 -1
  220. package/dist/components/private/InputBase/withEnhancedInput.css.js +117 -109
  221. package/dist/components/private/InputBase/withEnhancedInput.js +190 -92
  222. package/dist/hooks/useAttachedBoxes/index.js +3 -1
  223. package/dist/hooks/useAttachedBoxes/useAttachedBoxes.css.js +26 -18
  224. package/dist/hooks/useAttachedBoxes/useAttachedBoxes.js +71 -46
  225. package/dist/hooks/useMedia/index.js +3 -1
  226. package/dist/hooks/useMedia/useMedia.js +44 -34
  227. package/dist/hooks/useNegativeMargin/useNegativeMargin.js +4 -2
  228. package/dist/hooks/useNegativeMargin/useNegativeMarginLeft.css.js +13 -5
  229. package/dist/hooks/useNegativeMargin/useNegativeMarginLeft.js +6 -4
  230. package/dist/hooks/useNegativeMargin/useNegativeMarginTop.css.js +12 -4
  231. package/dist/hooks/useNegativeMargin/useNegativeMarginTop.js +6 -4
  232. package/dist/hooks/useResponsiveValue/index.js +3 -1
  233. package/dist/hooks/useResponsiveValue/useResponsiveValue.js +14 -14
  234. package/dist/hooks/useWindowScrollLock/index.js +15 -13
  235. package/dist/index.js +7 -5
  236. package/dist/reset/globalFonts.css.js +20 -12
  237. package/dist/reset/globalReset.css.js +21 -13
  238. package/dist/reset/reset.css.js +105 -109
  239. package/dist/themes/base/index.d.ts +1 -0
  240. package/dist/themes/base/index.d.ts.map +1 -1
  241. package/dist/themes/base/index.js +10 -6
  242. package/dist/themes/base/tokens.js +264 -257
  243. package/dist/themes/base/vars.css.js +10 -2
  244. package/dist/themes/flat_red/index.d.ts +1 -0
  245. package/dist/themes/flat_red/index.d.ts.map +1 -1
  246. package/dist/themes/flat_red/index.js +10 -6
  247. package/dist/themes/flat_red/tokens.js +104 -98
  248. package/dist/themes/flat_red/vars.css.js +10 -2
  249. package/dist/themes/helpers.js +60 -51
  250. package/dist/themes/index.js +4 -2
  251. package/dist/themes/makeTheme.js +27 -16
  252. package/dist/themes/theme.css.js +271 -259
  253. package/dist/themes/tokens.js +3 -1
  254. package/dist/utils/index.js +93 -77
  255. package/dist/utils/mapTokenToProperty.js +22 -10
  256. package/dist/utils/number.js +21 -24
  257. package/dist/utils/resolveResponsiveProps.js +29 -31
  258. package/dist/utils/responsiveProps.css.js +29 -17
  259. package/dist/utils/responsiveStyle.js +26 -16
  260. package/package.json +4 -2
@@ -1,35 +1,72 @@
1
+ "use strict";
2
+
3
+ import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
4
+ import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
5
+ const _excluded = ["textColour", "rawNumbers", "label"];
6
+
7
+ 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; }
8
+
9
+ 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; }
10
+
1
11
  import clsx from 'clsx';
2
12
  import * as React from 'react';
3
13
  import { useMemo } from 'react';
4
- import { Box, useBoxStyles } from '../Box';
5
- import { Text } from '../Text';
6
- import * as styles from './TextBubble.css';
14
+ import { Box, useBoxStyles } from "../Box/index.js";
15
+ import { Text } from "../Text/index.js";
16
+ import * as styles from "./TextBubble.css.js";
17
+ import { jsx as _jsx } from "react/jsx-runtime";
7
18
  const valuePaddingMap = {
8
- SMALL: '3',
9
- MEDIUM: '4',
10
- LARGE: '5',
11
- X_LARGE: '6',
19
+ SMALL: '3',
20
+ MEDIUM: '4',
21
+ LARGE: '5',
22
+ X_LARGE: '6'
12
23
  };
13
- export const TextBubble = ({ textColour = 'white', rawNumbers = false, label, ...boxProps }) => {
14
- const size = useMemo(() => {
15
- const size = label.length;
16
- switch (size) {
17
- case 1:
18
- return 'SMALL';
19
- case 2:
20
- return 'MEDIUM';
21
- case 3:
22
- return 'LARGE';
23
- default:
24
- return 'X_LARGE';
25
- }
26
- }, [label]);
27
- return (React.createElement(Box, { borderRadius: "full", backgroundColour: "gray900", display: "inlineBlock", position: "relative", padding: valuePaddingMap[size], ...boxProps },
28
- React.createElement(Text, { size: "2", strong: true, noWrap: true, align: "center", className: clsx(styles.bubbleText, useBoxStyles({
29
- position: 'absolute',
30
- overflow: 'hidden',
31
- width: 'full',
32
- paddingX: '1',
33
- })), colour: textColour }, label)));
24
+ export const TextBubble = _ref => {
25
+ let {
26
+ textColour = 'white',
27
+ rawNumbers = false,
28
+ label
29
+ } = _ref,
30
+ boxProps = _objectWithoutProperties(_ref, _excluded);
31
+
32
+ const size = useMemo(() => {
33
+ const size = label.length;
34
+
35
+ switch (size) {
36
+ case 1:
37
+ return 'SMALL';
38
+
39
+ case 2:
40
+ return 'MEDIUM';
41
+
42
+ case 3:
43
+ return 'LARGE';
44
+
45
+ default:
46
+ return 'X_LARGE';
47
+ }
48
+ }, [label]);
49
+ return _jsx(Box, _objectSpread(_objectSpread({
50
+ borderRadius: "full",
51
+ backgroundColour: "gray900",
52
+ display: "inlineBlock",
53
+ position: "relative",
54
+ padding: valuePaddingMap[size]
55
+ }, boxProps), {}, {
56
+ children: _jsx(Text, {
57
+ size: "2",
58
+ strong: true,
59
+ noWrap: true,
60
+ align: "center",
61
+ className: clsx(styles.bubbleText, useBoxStyles({
62
+ position: 'absolute',
63
+ overflow: 'hidden',
64
+ width: 'full',
65
+ paddingX: '1'
66
+ })),
67
+ colour: textColour,
68
+ children: label
69
+ })
70
+ }));
34
71
  };
35
- export default TextBubble;
72
+ export default TextBubble;
@@ -1 +1,3 @@
1
- export { TextBubble } from './TextBubble';
1
+ "use strict";
2
+
3
+ export { TextBubble } from "./TextBubble.js";
@@ -1,10 +1,45 @@
1
+ "use strict";
2
+
1
3
  import * as React from 'react';
2
- import { Column, Columns } from '../Columns';
3
- import { Stack } from '../Stack';
4
- export const TextContainer = ({ heading, className = '', children, action, }) => (React.createElement(Stack, { space: "2", is: "article", className: className },
5
- React.createElement(TextContainerHeading, { heading: heading, action: action }),
6
- children));
7
- const TextContainerHeading = ({ heading, action }) => (React.createElement(Columns, { noWrap: true, align: "centre", space: "4" },
8
- React.createElement(Column, { grow: true }, heading),
9
- action ? React.createElement(Column, { width: "auto" }, action) : null));
10
- export default TextContainer;
4
+ import { Column, Columns } from "../Columns/index.js";
5
+ import { Stack } from "../Stack/index.js";
6
+ import { jsx as _jsx } from "react/jsx-runtime";
7
+ import { jsxs as _jsxs } from "react/jsx-runtime";
8
+ export const TextContainer = _ref => {
9
+ let {
10
+ heading,
11
+ className = '',
12
+ children,
13
+ action
14
+ } = _ref;
15
+ return _jsxs(Stack, {
16
+ space: "2",
17
+ is: "article",
18
+ className: className,
19
+ children: [_jsx(TextContainerHeading, {
20
+ heading: heading,
21
+ action: action
22
+ }), children]
23
+ });
24
+ };
25
+
26
+ const TextContainerHeading = _ref2 => {
27
+ let {
28
+ heading,
29
+ action
30
+ } = _ref2;
31
+ return _jsxs(Columns, {
32
+ noWrap: true,
33
+ align: "centre",
34
+ space: "4",
35
+ children: [_jsx(Column, {
36
+ grow: true,
37
+ children: heading
38
+ }), action ? _jsx(Column, {
39
+ width: "auto",
40
+ children: action
41
+ }) : null]
42
+ });
43
+ };
44
+
45
+ export default TextContainer;
@@ -1 +1,3 @@
1
- export { TextContainer } from './TextContainer';
1
+ "use strict";
2
+
3
+ export { TextContainer } from "./TextContainer.js";
@@ -1,7 +1,38 @@
1
+ "use strict";
2
+
3
+ import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
4
+ import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
5
+ const _excluded = ["field", "eventHandlers", "validation", "suffixed", "prefixed", "isLoading", "size"];
6
+
7
+ 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; }
8
+
9
+ 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; }
10
+
1
11
  import * as React from 'react';
2
- import { Box } from '../Box';
3
- import { withEnhancedInput } from '../private/InputBase';
4
- export const TextInput = withEnhancedInput(({ field, eventHandlers, validation, suffixed, prefixed, isLoading, size, ...rest }) => (React.createElement(Box, { is: "input", ...eventHandlers, ...field, ...rest, autoComplete: "off", type: rest.type ?? 'text' })), {
5
- primitiveType: 'text',
12
+ import { Box } from "../Box/index.js";
13
+ import { withEnhancedInput } from "../private/InputBase/index.js";
14
+ import { jsx as _jsx } from "react/jsx-runtime";
15
+ export const TextInput = withEnhancedInput(_ref => {
16
+ var _rest$type;
17
+
18
+ let {
19
+ field,
20
+ eventHandlers,
21
+ validation,
22
+ suffixed,
23
+ prefixed,
24
+ isLoading,
25
+ size
26
+ } = _ref,
27
+ rest = _objectWithoutProperties(_ref, _excluded);
28
+
29
+ return _jsx(Box, _objectSpread(_objectSpread(_objectSpread(_objectSpread({
30
+ is: "input"
31
+ }, eventHandlers), field), rest), {}, {
32
+ autoComplete: "off",
33
+ type: (_rest$type = rest.type) !== null && _rest$type !== void 0 ? _rest$type : 'text'
34
+ }));
35
+ }, {
36
+ primitiveType: 'text'
6
37
  });
7
- export default TextInput;
38
+ export default TextInput;
@@ -1 +1,3 @@
1
- export { TextInput } from './TextInput';
1
+ "use strict";
2
+
3
+ export { TextInput } from "./TextInput.js";
@@ -1,18 +1,26 @@
1
+ "use strict";
2
+
3
+ import * as __vanilla_filescope__ from '@vanilla-extract/css/fileScope';
4
+
5
+ __vanilla_filescope__.setFileScope("lib/components/TextLink/TextLink.css.ts", "@autoguru/overdrive");
6
+
1
7
  import { style } 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 root = style({
4
- transitionDelay: '0s',
5
- transitionTimingFunction: 'cubic-bezier(0, 0, 0.2, 1)',
6
- transitionDuration: '0.2s',
7
- transitionProperty: 'box-shadow',
8
- boxShadow: `inset 0 0px 0 0 ${vars.typography.colour.link}`,
9
- ':hover': {
10
- boxShadow: `inset 0 -2px 0 0 ${vars.typography.colour.link}`,
11
- },
12
- });
10
+ transitionDelay: '0s',
11
+ transitionTimingFunction: 'cubic-bezier(0, 0, 0.2, 1)',
12
+ transitionDuration: '0.2s',
13
+ transitionProperty: 'box-shadow',
14
+ boxShadow: "inset 0 0px 0 0 ".concat(vars.typography.colour.link),
15
+ ':hover': {
16
+ boxShadow: "inset 0 -2px 0 0 ".concat(vars.typography.colour.link)
17
+ }
18
+ }, "root");
13
19
  export const muted = style({
14
- ':hover': {
15
- color: 'white',
16
- boxShadow: `inset 0 -1.6em 0 0 ${vars.typography.colour.link}`,
17
- },
18
- });
20
+ ':hover': {
21
+ color: 'white',
22
+ boxShadow: "inset 0 -1.6em 0 0 ".concat(vars.typography.colour.link)
23
+ }
24
+ }, "muted");
25
+
26
+ __vanilla_filescope__.endFileScope();
@@ -1,28 +1,67 @@
1
+ "use strict";
2
+
3
+ import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
4
+ import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
5
+ const _excluded = ["is", "children", "className", "strong", "fontWeight", "muted", "size"];
6
+
7
+ 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; }
8
+
9
+ 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; }
10
+
1
11
  import { invariant } from '@autoguru/utilities';
2
12
  import clsx from 'clsx';
3
13
  import * as React from 'react';
4
- import { cloneElement, createElement, forwardRef, isValidElement, } from 'react';
5
- import { Box, useBoxStyles } from '../Box';
6
- import { Text } from '../Text';
7
- import * as styles from './TextLink.css';
8
- export const TextLink = forwardRef(({ is: Component, children, className, strong, fontWeight = 'semiBold', muted = false, size, ...props }, ref) => {
9
- invariant(!(Component !== undefined && props.href !== undefined), 'You cannot have both href and as defined.');
10
- const body = (React.createElement(Text, { is: "span", colour: muted ? 'muted' : 'link', size: size, fontWeight: fontWeight, strong: strong, className: clsx(useBoxStyles({
11
- is: 'span',
12
- pointerEvents: 'none',
13
- }), {
14
- [styles.muted]: muted,
15
- }) }, children));
16
- const allProps = {
17
- rel: props.rel ?? 'noopener noreferrer',
18
- ...props,
19
- ref,
20
- };
21
- if (Component === undefined) {
22
- return (React.createElement(Box, { is: "a", className: [className, styles.root], ...allProps }, body));
23
- }
24
- return isValidElement(Component)
25
- ? cloneElement(Component, allProps, body)
26
- : createElement(Component, allProps, body);
14
+ import { cloneElement, createElement, forwardRef, isValidElement } from 'react';
15
+ import { Box, useBoxStyles } from "../Box/index.js";
16
+ import { Text } from "../Text/index.js";
17
+ import * as styles from "./TextLink.css.js";
18
+ import { jsx as _jsx } from "react/jsx-runtime";
19
+ export const TextLink = forwardRef((_ref, ref) => {
20
+ var _props$rel;
21
+
22
+ let {
23
+ is: Component,
24
+ children,
25
+ className,
26
+ strong,
27
+ fontWeight = 'semiBold',
28
+ muted = false,
29
+ size
30
+ } = _ref,
31
+ props = _objectWithoutProperties(_ref, _excluded);
32
+
33
+ !!(Component !== undefined && props.href !== undefined) ? process.env.NODE_ENV !== "production" ? invariant(false, 'You cannot have both href and as defined.') : invariant(false) : void 0;
34
+
35
+ const body = _jsx(Text, {
36
+ is: "span",
37
+ colour: muted ? 'muted' : 'link',
38
+ size: size,
39
+ fontWeight: fontWeight,
40
+ strong: strong,
41
+ className: clsx(useBoxStyles({
42
+ is: 'span',
43
+ pointerEvents: 'none'
44
+ }), {
45
+ [styles.muted]: muted
46
+ }),
47
+ children: children
48
+ });
49
+
50
+ const allProps = _objectSpread(_objectSpread({
51
+ rel: (_props$rel = props.rel) !== null && _props$rel !== void 0 ? _props$rel : 'noopener noreferrer'
52
+ }, props), {}, {
53
+ ref
54
+ });
55
+
56
+ if (Component === undefined) {
57
+ return _jsx(Box, _objectSpread(_objectSpread({
58
+ is: "a",
59
+ className: [className, styles.root]
60
+ }, allProps), {}, {
61
+ children: body
62
+ }));
63
+ }
64
+
65
+ return isValidElement(Component) ? cloneElement(Component, allProps, body) : createElement(Component, allProps, body);
27
66
  });
28
- export default TextLink;
67
+ export default TextLink;
@@ -1 +1,3 @@
1
- export { TextLink } from './TextLink';
1
+ "use strict";
2
+
3
+ export { TextLink } from "./TextLink.js";
@@ -0,0 +1,3 @@
1
+ import { FunctionComponent } from 'react';
2
+ export declare const ThemeOverrideDebugger: FunctionComponent;
3
+ //# sourceMappingURL=ThemeOverrideDebugger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ThemeOverrideDebugger.d.ts","sourceRoot":"","sources":["../../../lib/components/ThemeOverrideProvider/ThemeOverrideDebugger.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAW,MAAM,OAAO,CAAC;AAUnD,eAAO,MAAM,qBAAqB,EAAE,iBA6EnC,CAAC"}
@@ -0,0 +1,80 @@
1
+ "use strict";
2
+
3
+ import * as React from 'react';
4
+ import { useMemo } from 'react';
5
+ import { passesAccessibilityContrast } from "../../themes/helpers.js";
6
+ import { ColourInput } from "../ColourInput/index.js";
7
+ import { Column, Columns } from "../Columns/index.js";
8
+ import { Stack } from "../Stack/index.js";
9
+ import { Text } from "../Text/index.js";
10
+ import { useThemeOverrides } from "./ThemeOverrideProvider.js";
11
+ import { jsx as _jsx } from "react/jsx-runtime";
12
+ import { jsxs as _jsxs } from "react/jsx-runtime";
13
+ export const ThemeOverrideDebugger = () => {
14
+ const {
15
+ theme,
16
+ primaryColourForeground,
17
+ primaryColourBackground,
18
+ setThemeValues
19
+ } = useThemeOverrides();
20
+ const passesAA = useMemo(() => passesAccessibilityContrast({
21
+ colour1: primaryColourForeground,
22
+ colour2: primaryColourBackground,
23
+ level: 'AA',
24
+ textSize: 'LARGE'
25
+ }), [primaryColourForeground, primaryColourBackground]);
26
+ const passesAAA = useMemo(() => passesAccessibilityContrast({
27
+ colour1: primaryColourForeground,
28
+ colour2: primaryColourBackground,
29
+ level: 'AAA',
30
+ textSize: 'LARGE'
31
+ }), [primaryColourForeground, primaryColourBackground]);
32
+ return _jsxs(Columns, {
33
+ space: "3",
34
+ style: {
35
+ position: 'fixed',
36
+ right: '10px',
37
+ bottom: '20px',
38
+ zIndex: 9,
39
+ backgroundColor: 'white',
40
+ width: '350px',
41
+ padding: '8px',
42
+ boxShadow: '0 14px 28px rgb(0 0 0 / 25%), 0 10px 10px rgb(0 0 0 / 22%)',
43
+ borderRadius: '4px'
44
+ },
45
+ children: [_jsx(Column, {
46
+ grow: true,
47
+ width: "auto",
48
+ children: _jsxs(Stack, {
49
+ space: "3",
50
+ width: "full",
51
+ children: [_jsx(ColourInput, {
52
+ name: "primaryBackground",
53
+ placeholder: "Primary background colour",
54
+ value: primaryColourBackground,
55
+ onChange: event => setThemeValues({
56
+ primaryColourBackground: event.target.value
57
+ })
58
+ }), _jsx(ColourInput, {
59
+ name: "primaryForeground",
60
+ placeholder: "Primary foreground colour",
61
+ value: primaryColourForeground,
62
+ onChange: event => setThemeValues({
63
+ primaryColourForeground: event.target.value
64
+ })
65
+ })]
66
+ })
67
+ }), _jsx(Column, {
68
+ children: _jsxs(Stack, {
69
+ children: [_jsxs(Text, {
70
+ children: ["AA: ", passesAA ? 'PASSED' : 'FAILED']
71
+ }), _jsxs(Text, {
72
+ children: ["AAA: ", passesAAA ? 'PASSED' : 'FAILED']
73
+ }), _jsx(Text, {
74
+ colour: "primary",
75
+ children: theme.name
76
+ })]
77
+ })
78
+ })]
79
+ });
80
+ };
@@ -0,0 +1,22 @@
1
+ import { assignInlineVars } from '@vanilla-extract/dynamic';
2
+ import { FunctionComponent, ReactNode } from 'react';
3
+ import { default as defaultTheme } from '../../themes/base';
4
+ import { OverrideValues } from './useBuildThemeOverrides';
5
+ declare type Theme = typeof defaultTheme;
6
+ export interface ThemeOverridesValues {
7
+ primaryColourBackground: string;
8
+ primaryColourBackgroundMild?: string;
9
+ primaryColourBackgroundStrong?: string;
10
+ primaryColourBorder?: string;
11
+ primaryColourForeground: string;
12
+ theme: Theme;
13
+ overrideStyles: ReturnType<typeof assignInlineVars>;
14
+ setThemeValues: (values: Partial<OverrideValues>) => void;
15
+ }
16
+ interface Props extends Pick<ThemeOverridesValues, 'primaryColourBackground' | 'primaryColourForeground' | 'theme' | 'primaryColourBackgroundMild' | 'primaryColourBackgroundStrong' | 'primaryColourBorder'> {
17
+ children?: ReactNode | ReactNode[];
18
+ }
19
+ export declare const useThemeOverrides: () => ThemeOverridesValues;
20
+ export declare const ThemeOverrideProvider: FunctionComponent<Props>;
21
+ export {};
22
+ //# sourceMappingURL=ThemeOverrideProvider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ThemeOverrideProvider.d.ts","sourceRoot":"","sources":["../../../lib/components/ThemeOverrideProvider/ThemeOverrideProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAE5D,OAAO,EAGN,iBAAiB,EACjB,SAAS,EAGT,MAAM,OAAO,CAAC;AAEf,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAE5D,OAAO,EACN,cAAc,EAEd,MAAM,0BAA0B,CAAC;AAElC,aAAK,KAAK,GAAG,OAAO,YAAY,CAAC;AAEjC,MAAM,WAAW,oBAAoB;IACpC,uBAAuB,EAAE,MAAM,CAAC;IAChC,2BAA2B,CAAC,EAAE,MAAM,CAAC;IACrC,6BAA6B,CAAC,EAAE,MAAM,CAAC;IACvC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,uBAAuB,EAAE,MAAM,CAAC;IAChC,KAAK,EAAE,KAAK,CAAC;IACb,cAAc,EAAE,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC;IAEpD,cAAc,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,cAAc,CAAC,KAAK,IAAI,CAAC;CAC1D;AAED,UAAU,KACT,SAAQ,IAAI,CACX,oBAAoB,EAClB,yBAAyB,GACzB,yBAAyB,GACzB,OAAO,GACP,6BAA6B,GAC7B,+BAA+B,GAC/B,qBAAqB,CACvB;IACD,QAAQ,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC;CACnC;AAKD,eAAO,MAAM,iBAAiB,4BAAsC,CAAC;AAErE,eAAO,MAAM,qBAAqB,EAAE,iBAAiB,CAAC,KAAK,CAwC1D,CAAC"}
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+
3
+ import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
4
+
5
+ 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; }
6
+
7
+ 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; }
8
+
9
+ import * as React from 'react';
10
+ import { createContext, useContext, useMemo } from 'react';
11
+ import { useBuildThemeOverrides } from "./useBuildThemeOverrides.js";
12
+ import { jsx as _jsx } from "react/jsx-runtime";
13
+ const themeOverridesCtx = createContext({});
14
+ export const useThemeOverrides = () => useContext(themeOverridesCtx);
15
+ export const ThemeOverrideProvider = _ref => {
16
+ let {
17
+ primaryColourBackground,
18
+ primaryColourForeground,
19
+ theme,
20
+ primaryColourBackgroundMild,
21
+ primaryColourBackgroundStrong,
22
+ primaryColourBorder,
23
+ children
24
+ } = _ref;
25
+ const overrides = useBuildThemeOverrides({
26
+ primaryColourBackground,
27
+ primaryColourForeground,
28
+ primaryColourBackgroundMild,
29
+ primaryColourBackgroundStrong,
30
+ primaryColourBorder,
31
+ mode: theme === null || theme === void 0 ? void 0 : theme.vars.mode
32
+ });
33
+ return _jsx(themeOverridesCtx.Provider, {
34
+ value: useMemo(() => _objectSpread({
35
+ theme
36
+ }, overrides), [theme, overrides, primaryColourBackground, primaryColourForeground, theme, primaryColourBackgroundMild, primaryColourBackgroundStrong, primaryColourBorder]),
37
+ children: children
38
+ });
39
+ };
@@ -0,0 +1,3 @@
1
+ export { ThemeOverrideProvider, useThemeOverrides, } from './ThemeOverrideProvider';
2
+ export { ThemeOverrideDebugger } from './ThemeOverrideDebugger';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../lib/components/ThemeOverrideProvider/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,qBAAqB,EACrB,iBAAiB,GACjB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC"}
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+
3
+ export { ThemeOverrideProvider, useThemeOverrides } from "./ThemeOverrideProvider.js";
4
+ export { ThemeOverrideDebugger } from "./ThemeOverrideDebugger.js";
@@ -0,0 +1,17 @@
1
+ import { ComponentProps } from 'react';
2
+ import { Tokens } from '../../themes/tokens';
3
+ import { ThemeOverrideProvider, ThemeOverridesValues } from './ThemeOverrideProvider';
4
+ interface Props extends Omit<ComponentProps<typeof ThemeOverrideProvider>, 'theme' | 'children'> {
5
+ mode: Tokens['mode'];
6
+ }
7
+ declare type Returns = Pick<ThemeOverridesValues, 'overrideStyles' | 'primaryColourBackground' | 'primaryColourForeground' | 'primaryColourBorder' | 'primaryColourBackgroundMild' | 'primaryColourBackgroundStrong' | 'setThemeValues'>;
8
+ export interface OverrideValues {
9
+ primaryColourBackground: string;
10
+ primaryColourForeground: string;
11
+ primaryColourBackgroundMild?: string;
12
+ primaryColourBackgroundStrong?: string;
13
+ primaryColourBorder?: string;
14
+ }
15
+ export declare const useBuildThemeOverrides: ({ primaryColourBackground: incomingPrimaryColourBackground, primaryColourForeground: incomingPrimaryColourForeground, mode, primaryColourBackgroundStrong: incomingPrimaryColourBackgroundStrong, primaryColourBackgroundMild: incomingPrimaryColourBackgroundMild, primaryColourBorder: incomingPrimaryColourBorder, }: Props) => Returns;
16
+ export {};
17
+ //# sourceMappingURL=useBuildThemeOverrides.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useBuildThemeOverrides.d.ts","sourceRoot":"","sources":["../../../lib/components/ThemeOverrideProvider/useBuildThemeOverrides.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAgC,MAAM,OAAO,CAAC;AAIrE,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAE7C,OAAO,EACN,qBAAqB,EACrB,oBAAoB,EACpB,MAAM,yBAAyB,CAAC;AAEjC,UAAU,KACT,SAAQ,IAAI,CACX,cAAc,CAAC,OAAO,qBAAqB,CAAC,EAC5C,OAAO,GAAG,UAAU,CACpB;IACD,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;CACrB;AAED,aAAK,OAAO,GAAG,IAAI,CAClB,oBAAoB,EAClB,gBAAgB,GAChB,yBAAyB,GACzB,yBAAyB,GACzB,qBAAqB,GACrB,6BAA6B,GAC7B,+BAA+B,GAC/B,gBAAgB,CAClB,CAAC;AAOF,MAAM,WAAW,cAAc;IAC9B,uBAAuB,EAAE,MAAM,CAAC;IAChC,uBAAuB,EAAE,MAAM,CAAC;IAChC,2BAA2B,CAAC,EAAE,MAAM,CAAC;IACrC,6BAA6B,CAAC,EAAE,MAAM,CAAC;IACvC,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAeD,eAAO,MAAM,sBAAsB,4TAOhC,KAAK,KAAG,OAsFV,CAAC"}