@planningcenter/tapestry-react 1.3.0 → 2.0.0-rc.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 (302) hide show
  1. package/dist/cjs/ActionsDropdown/ActionsDropdown.js +3 -3
  2. package/dist/cjs/Badge/Badge.js +41 -26
  3. package/dist/cjs/Badge/Status.js +2 -2
  4. package/dist/cjs/Calendar/Calendar.js +5 -3
  5. package/dist/cjs/Card/Card.js +2 -0
  6. package/dist/cjs/Checkbox/Checkbox.js +3 -3
  7. package/dist/cjs/ChurchCenterStatus/ChurchCenterStatus.js +4 -4
  8. package/dist/cjs/ColumnView/ColumnView.js +5 -2
  9. package/dist/cjs/Combobox/ComboboxPopover.js +2 -2
  10. package/dist/cjs/DataTable/components/CheckboxCell.js +4 -4
  11. package/dist/cjs/DataTable/components/ColumnPicker.js +6 -5
  12. package/dist/cjs/DataTable/hooks/useColumnSort.js +1 -1
  13. package/dist/cjs/DataTable/utils/getParsedColumns.js +4 -4
  14. package/dist/cjs/DateField/DateField.js +1 -1
  15. package/dist/cjs/Drawer/Drawer.js +4 -1
  16. package/dist/cjs/Dropdown/Dropdown.js +1 -1
  17. package/dist/cjs/Dropdown/Dropdown.test.js +194 -19
  18. package/dist/cjs/Dropdown/Link.js +3 -1
  19. package/dist/cjs/EditActions/EditActions.js +9 -3
  20. package/dist/cjs/Field/Field.js +1 -0
  21. package/dist/cjs/FieldSet/FieldSet.js +24 -10
  22. package/dist/cjs/FilterLayout/FilterLayout.js +2 -1
  23. package/dist/cjs/Form/Form.js +1 -1
  24. package/dist/cjs/GridView/GridView.js +6 -4
  25. package/dist/cjs/Group/Group.js +10 -3
  26. package/dist/cjs/HeadingUppercase/HeadingUppercase.js +2 -2
  27. package/dist/cjs/HelperDrawer/HelperDrawer.js +1 -1
  28. package/dist/cjs/Highlight/Highlight.js +11 -5
  29. package/dist/cjs/Icon/Status.js +4 -4
  30. package/dist/cjs/Input/InputBox.js +1 -1
  31. package/dist/cjs/List/ListItem.js +1 -1
  32. package/dist/cjs/Menu/Heading.js +1 -0
  33. package/dist/cjs/Modal/Modal.test.js +156 -0
  34. package/dist/cjs/Pagination/Pagination.js +4 -2
  35. package/dist/cjs/Popover/Popover.js +4 -0
  36. package/dist/cjs/Popover/Popover.test.js +65 -0
  37. package/dist/cjs/Popover/rewireTabOrder.js +13 -30
  38. package/dist/cjs/Progress/Progress.js +12 -6
  39. package/dist/cjs/Radio/Radio.js +2 -2
  40. package/dist/cjs/RangeSlider/RangeSlider.js +10 -4
  41. package/dist/cjs/Scrim/Scrim.js +2 -2
  42. package/dist/cjs/Section/Section.js +14 -6
  43. package/dist/cjs/Select/Option.js +1 -1
  44. package/dist/cjs/Select/Select.js +10 -1
  45. package/dist/cjs/Sortable/SortableItem.js +1 -1
  46. package/dist/cjs/StackView/StackView.js +5 -5
  47. package/dist/cjs/StepperField/StepperField.js +9 -6
  48. package/dist/cjs/StepperProgress/StepperProgress.js +9 -5
  49. package/dist/cjs/Table/ColumnPicker.js +1 -1
  50. package/dist/cjs/Table/DragHandle.js +1 -1
  51. package/dist/cjs/Table/NavigationArrow.js +1 -1
  52. package/dist/cjs/Table/SubRowToggleCell.js +1 -1
  53. package/dist/cjs/Table/Table.js +1 -1
  54. package/dist/cjs/Tabs/Tab.js +1 -0
  55. package/dist/cjs/TileView/TileView.js +1 -1
  56. package/dist/cjs/TokenInput/DefaultToken.js +1 -1
  57. package/dist/cjs/Wizard/Wizard.js +2 -1
  58. package/dist/cjs/WrapView/WrapView.js +2 -27
  59. package/dist/cjs/hooks/use-accessibility-violation.js +1 -1
  60. package/dist/cjs/system/default-theme.js +8 -3
  61. package/dist/esm/ActionsDropdown/ActionsDropdown.js +3 -3
  62. package/dist/esm/Badge/Badge.js +42 -27
  63. package/dist/esm/Badge/Status.js +2 -2
  64. package/dist/esm/Calendar/Calendar.js +5 -3
  65. package/dist/esm/Card/Card.js +2 -3
  66. package/dist/esm/Checkbox/Checkbox.js +3 -3
  67. package/dist/esm/ChurchCenterStatus/ChurchCenterStatus.js +4 -4
  68. package/dist/esm/ColumnView/ColumnView.js +4 -2
  69. package/dist/esm/Combobox/ComboboxPopover.js +2 -2
  70. package/dist/esm/DataTable/components/CheckboxCell.js +4 -4
  71. package/dist/esm/DataTable/components/ColumnPicker.js +6 -5
  72. package/dist/esm/DataTable/hooks/useColumnSort.js +1 -1
  73. package/dist/esm/DataTable/utils/getParsedColumns.js +4 -4
  74. package/dist/esm/DateField/DateField.js +1 -1
  75. package/dist/esm/Drawer/Drawer.js +3 -1
  76. package/dist/esm/Dropdown/Dropdown.js +1 -1
  77. package/dist/esm/Dropdown/Dropdown.test.js +158 -17
  78. package/dist/esm/Dropdown/Link.js +3 -1
  79. package/dist/esm/EditActions/EditActions.js +8 -3
  80. package/dist/esm/Field/Field.js +1 -0
  81. package/dist/esm/FieldSet/FieldSet.js +22 -10
  82. package/dist/esm/FilterLayout/FilterLayout.js +2 -1
  83. package/dist/esm/Form/Form.js +1 -1
  84. package/dist/esm/GridView/GridView.js +5 -4
  85. package/dist/esm/Group/Group.js +10 -3
  86. package/dist/esm/HeadingUppercase/HeadingUppercase.js +3 -3
  87. package/dist/esm/HelperDrawer/HelperDrawer.js +1 -1
  88. package/dist/esm/Highlight/Highlight.js +9 -5
  89. package/dist/esm/Icon/Status.js +4 -4
  90. package/dist/esm/Input/InputBox.js +1 -1
  91. package/dist/esm/List/ListItem.js +1 -1
  92. package/dist/esm/Menu/Heading.js +1 -0
  93. package/dist/esm/Modal/Modal.test.js +122 -0
  94. package/dist/esm/Pagination/Pagination.js +4 -2
  95. package/dist/esm/Popover/Popover.js +4 -0
  96. package/dist/esm/Popover/Popover.test.js +51 -0
  97. package/dist/esm/Popover/rewireTabOrder.js +13 -33
  98. package/dist/esm/Progress/Progress.js +10 -6
  99. package/dist/esm/Radio/Radio.js +2 -2
  100. package/dist/esm/RangeSlider/RangeSlider.js +8 -4
  101. package/dist/esm/Scrim/Scrim.js +2 -2
  102. package/dist/esm/Section/Section.js +12 -6
  103. package/dist/esm/Select/Option.js +1 -1
  104. package/dist/esm/Select/Select.js +10 -1
  105. package/dist/esm/Sortable/SortableItem.js +1 -1
  106. package/dist/esm/StackView/StackView.js +4 -5
  107. package/dist/esm/StepperField/StepperField.js +10 -7
  108. package/dist/esm/StepperProgress/StepperProgress.js +8 -5
  109. package/dist/esm/Table/ColumnPicker.js +1 -1
  110. package/dist/esm/Table/DragHandle.js +1 -1
  111. package/dist/esm/Table/NavigationArrow.js +1 -1
  112. package/dist/esm/Table/SubRowToggleCell.js +1 -1
  113. package/dist/esm/Table/Table.js +1 -1
  114. package/dist/esm/Tabs/Tab.js +1 -0
  115. package/dist/esm/TileView/TileView.js +1 -1
  116. package/dist/esm/TokenInput/DefaultToken.js +1 -1
  117. package/dist/esm/Wizard/Wizard.js +2 -1
  118. package/dist/esm/WrapView/WrapView.js +2 -28
  119. package/dist/esm/hooks/use-accessibility-violation.js +1 -1
  120. package/dist/esm/system/default-theme.js +6 -2
  121. package/dist/types/Alert/Alert.d.ts +3 -0
  122. package/dist/types/Box/Box.d.ts +11 -2
  123. package/dist/types/Button/Button.d.ts +9 -1
  124. package/dist/types/Button/Input.d.ts +1 -1
  125. package/dist/types/Card/Card.d.ts +8 -1
  126. package/dist/types/Dropdown/Dropdown.test.d.ts +1 -1
  127. package/dist/types/GridView/GridView.d.ts +16 -4
  128. package/dist/types/Group/Group.d.ts +5 -1
  129. package/dist/types/Modal/Modal.test.d.ts +1 -0
  130. package/dist/types/Popover/Popover.test.d.ts +1 -0
  131. package/dist/types/Scrim/Scrim.d.ts +6 -1
  132. package/dist/types/StackView/StackView.d.ts +11 -0
  133. package/dist/types/Text/Text.d.ts +12 -0
  134. package/dist/types/TileView/TileView.d.ts +15 -7
  135. package/dist/types/WrapView/WrapView.d.ts +2 -1
  136. package/package.json +4 -3
  137. package/src/ActionsDropdown/ActionsDropdown.tsx +3 -3
  138. package/src/Alert/Alert.mdx +1 -0
  139. package/src/Alert/Alert.tsx +5 -0
  140. package/src/Avatar/Avatar.mdx +1 -0
  141. package/src/Badge/Badge.js +66 -25
  142. package/src/Badge/Badge.mdx +2 -1
  143. package/src/Badge/Status.js +2 -2
  144. package/src/Badge/Status.mdx +1 -0
  145. package/src/Box/Box.mdx +2 -1
  146. package/src/Box/Box.tsx +13 -2
  147. package/src/Button/Button.mdx +4 -3
  148. package/src/Button/Button.tsx +11 -0
  149. package/src/Button/Input.mdx +2 -2
  150. package/src/Calendar/Calendar.js +8 -3
  151. package/src/Calendar/Calendar.mdx +1 -0
  152. package/src/Card/Card.mdx +1 -0
  153. package/src/Card/Card.tsx +7 -1
  154. package/src/Checkbox/Checkbox.js +8 -3
  155. package/src/Checkbox/Checkbox.mdx +1 -0
  156. package/src/CheckboxCard/CheckboxCard.js +26 -1
  157. package/src/CheckboxCard/CheckboxCard.mdx +1 -0
  158. package/src/CheckboxGroup/CheckboxGroup.js +6 -0
  159. package/src/CheckboxGroup/CheckboxGroup.mdx +1 -0
  160. package/src/ChurchCenterStatus/ChurchCenterStatus.mdx +1 -0
  161. package/src/ChurchCenterStatus/ChurchCenterStatus.tsx +4 -4
  162. package/src/Collapse/Collapse.js +2 -0
  163. package/src/ColumnView/ColumnView.js +7 -3
  164. package/src/ColumnView/ColumnView.mdx +1 -0
  165. package/src/Combobox/Combobox.js +11 -1
  166. package/src/Combobox/Combobox.mdx +2 -1
  167. package/src/Combobox/ComboboxPopover.js +2 -2
  168. package/src/DataTable/DataTable.js +48 -0
  169. package/src/DataTable/DataTable.mdx +2 -2
  170. package/src/DataTable/components/CheckboxCell.js +5 -4
  171. package/src/DataTable/components/ColumnPicker.js +4 -4
  172. package/src/DataTable/hooks/useColumnSort.js +1 -1
  173. package/src/DataTable/utils/getParsedColumns.js +4 -4
  174. package/src/DateField/DateField.js +11 -1
  175. package/src/DateField/DateField.mdx +1 -0
  176. package/src/Divider/Divider.mdx +1 -0
  177. package/src/DragDrop/DragDrop.mdx +23 -9
  178. package/src/Drawer/Drawer.js +3 -0
  179. package/src/Drawer/Drawer.mdx +2 -1
  180. package/src/Dropdown/Dropdown.js +49 -3
  181. package/src/Dropdown/Dropdown.mdx +3 -2
  182. package/src/Dropdown/Dropdown.test.tsx +128 -17
  183. package/src/Dropdown/Link.js +3 -1
  184. package/src/EditActions/EditActions.js +18 -3
  185. package/src/EditActions/EditActions.mdx +1 -0
  186. package/src/Field/Field.js +16 -0
  187. package/src/Field/Field.mdx +1 -0
  188. package/src/FieldSet/FieldSet.js +35 -11
  189. package/src/FieldSet/FieldSet.mdx +1 -0
  190. package/src/FilterLayout/FilterLayout.mdx +1 -0
  191. package/src/FilterLayout/FilterLayout.tsx +4 -1
  192. package/src/Form/Form.js +1 -1
  193. package/src/Form/Form.mdx +26 -24
  194. package/src/GridView/GridView.mdx +2 -1
  195. package/src/GridView/GridView.tsx +27 -8
  196. package/src/Group/Group.mdx +8 -7
  197. package/src/Group/Group.tsx +12 -1
  198. package/src/Heading/Heading.js +6 -2
  199. package/src/Heading/Heading.mdx +1 -0
  200. package/src/HeadingUppercase/HeadingUppercase.js +9 -5
  201. package/src/HeadingUppercase/HeadingUppercase.mdx +1 -0
  202. package/src/HelperDrawer/HelperDrawer.js +10 -2
  203. package/src/HelperDrawer/HelperDrawer.mdx +1 -0
  204. package/src/Highlight/Highlight.js +6 -2
  205. package/src/Highlight/Highlight.mdx +1 -0
  206. package/src/Icon/Icon.js +6 -0
  207. package/src/Icon/Icon.mdx +42 -37
  208. package/src/Icon/Status.js +4 -4
  209. package/src/Input/Inline.js +11 -1
  210. package/src/Input/Inline.mdx +2 -1
  211. package/src/Input/Input.js +119 -1
  212. package/src/Input/Input.mdx +1 -6
  213. package/src/Input/InputBox.js +41 -1
  214. package/src/Input/InputBox.mdx +1 -0
  215. package/src/Input/InputField.js +32 -0
  216. package/src/Input/InputField.mdx +1 -0
  217. package/src/Input/InputLabel.mdx +1 -0
  218. package/src/Link/Link.js +10 -0
  219. package/src/Link/Link.mdx +2 -1
  220. package/src/LinkList/LinkList.js +7 -1
  221. package/src/LinkList/LinkList.mdx +1 -0
  222. package/src/List/List.js +25 -1
  223. package/src/List/List.mdx +1 -0
  224. package/src/List/ListItem.js +1 -1
  225. package/src/Logo/Logo.js +10 -1
  226. package/src/Logo/Logo.mdx +1 -0
  227. package/src/Menu/Heading.js +1 -0
  228. package/src/Menu/Menu.js +7 -1
  229. package/src/Menu/Menu.mdx +2 -1
  230. package/src/Modal/Modal.js +1 -0
  231. package/src/Modal/Modal.mdx +1 -0
  232. package/src/Modal/Modal.test.tsx +113 -0
  233. package/src/NumberField/NumberField.js +19 -0
  234. package/src/Page/Page.mdx +1 -1
  235. package/src/PagerView/PagerView.js +1 -0
  236. package/src/PagerView/PagerView.mdx +9 -8
  237. package/src/Pagination/Pagination.js +2 -2
  238. package/src/Pagination/Pagination.mdx +1 -0
  239. package/src/Popover/Popover.test.tsx +62 -0
  240. package/src/Popover/Popover.tsx +3 -0
  241. package/src/Popover/rewireTabOrder.ts +24 -42
  242. package/src/Progress/Progress.js +8 -3
  243. package/src/Progress/Progress.mdx +1 -0
  244. package/src/Radio/Radio.js +4 -2
  245. package/src/Radio/Radio.mdx +1 -0
  246. package/src/RangeSlider/RangeSlider.js +11 -2
  247. package/src/RangeSlider/RangeSlider.mdx +13 -10
  248. package/src/ScreenReader/ScreenReader.js +6 -1
  249. package/src/ScreenReader/ScreenReader.mdx +1 -0
  250. package/src/Scrim/Scrim.mdx +1 -0
  251. package/src/Scrim/Scrim.tsx +8 -2
  252. package/src/Section/Section.js +15 -3
  253. package/src/Section/Section.mdx +1 -0
  254. package/src/SegmentedControl/SegmentedControl.mdx +3 -2
  255. package/src/SegmentedTabs/SegmentedTabs.js +2 -0
  256. package/src/SegmentedTabs/SegmentedTabs.mdx +1 -0
  257. package/src/Select/Option.js +1 -1
  258. package/src/Select/Select.js +69 -2
  259. package/src/Select/Select.mdx +1 -0
  260. package/src/Sidebar/Sidebar.js +7 -1
  261. package/src/Sidebar/Sidebar.mdx +1 -0
  262. package/src/Sortable/SortableItem.js +1 -1
  263. package/src/Spinner/Spinner.mdx +1 -0
  264. package/src/StackView/StackView.mdx +17 -1
  265. package/src/StackView/StackView.tsx +23 -8
  266. package/src/StepperField/StepperField.js +35 -6
  267. package/src/StepperField/StepperField.mdx +2 -2
  268. package/src/StepperProgress/StepperProgress.js +9 -10
  269. package/src/StepperProgress/StepperProgress.mdx +1 -0
  270. package/src/Summary/Summary.mdx +1 -0
  271. package/src/Tab/Tab.mdx +1 -0
  272. package/src/Table/ColumnPicker.js +1 -1
  273. package/src/Table/DragHandle.js +1 -1
  274. package/src/Table/NavigationArrow.js +1 -1
  275. package/src/Table/SubRowToggleCell.js +1 -1
  276. package/src/Table/Table.js +1 -1
  277. package/src/Table/Table.mdx +2 -2
  278. package/src/Tabs/Tab.js +1 -0
  279. package/src/Tabs/Tabs.js +5 -0
  280. package/src/Tabs/Tabs.mdx +1 -0
  281. package/src/Text/Text.mdx +1 -0
  282. package/src/Text/Text.tsx +12 -0
  283. package/src/TextArea/TextArea.js +7 -1
  284. package/src/TextArea/TextArea.mdx +1 -0
  285. package/src/TileView/TileView.mdx +1 -0
  286. package/src/TileView/TileView.tsx +17 -3
  287. package/src/TimeField/TimeField.mdx +1 -0
  288. package/src/TokenInput/DefaultToken.js +1 -1
  289. package/src/TokenInput/TokenInput.js +12 -6
  290. package/src/TokenInput/TokenInput.mdx +1 -0
  291. package/src/Toolbar/Toolbar.mdx +1 -0
  292. package/src/Tooltip/Tooltip.js +39 -0
  293. package/src/Tooltip/Tooltip.mdx +4 -3
  294. package/src/Wizard/Wizard.js +1 -1
  295. package/src/Wizard/Wizard.mdx +7 -2
  296. package/src/WrapView/WrapView.mdx +1 -0
  297. package/src/WrapView/WrapView.tsx +6 -28
  298. package/src/hooks/use-accessibility-violation.tsx +1 -1
  299. package/src/system/default-theme.ts +7 -2
  300. package/dist/cjs/icons.js +0 -126
  301. package/dist/esm/icons.js +0 -121
  302. package/src/icons.js +0 -121
@@ -87,6 +87,7 @@ var Field = /*#__PURE__*/function (_Component) {
87
87
  order: inline ? 0 : 1,
88
88
  grow: 1,
89
89
  marginTop: inline || !label ? undefined : 1,
90
+ maxWidth: "100%",
90
91
  spacing: spacing
91
92
  }, cloneChildren(children, function (child, _ref) {
92
93
  var firstChild = _ref.firstChild;
@@ -1,36 +1,48 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
2
3
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
4
+
5
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (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 = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
8
+
3
9
  import React from 'react';
4
10
  import Heading from '../Heading';
5
11
  import StackView from '../StackView';
6
12
  import TileView from '../TileView';
7
13
  import Toolbar from '../Toolbar';
14
+ import { useThemeProps } from '../system';
8
15
 
9
16
  function FieldSet(_ref) {
10
17
  var children = _ref.children,
11
- _ref$minCellWidth = _ref.minCellWidth,
12
- minCellWidth = _ref$minCellWidth === void 0 ? 16 : _ref$minCellWidth,
13
- _ref$spacing = _ref.spacing,
14
- spacing = _ref$spacing === void 0 ? 1 : _ref$spacing,
15
18
  helpContent = _ref.helpContent,
16
19
  legend = _ref.legend,
17
- restProps = _objectWithoutPropertiesLoose(_ref, ["children", "minCellWidth", "spacing", "helpContent", "legend"]);
20
+ restProps = _objectWithoutPropertiesLoose(_ref, ["children", "helpContent", "legend"]);
21
+
22
+ var _useThemeProps = useThemeProps('fieldset', _objectSpread({}, restProps)),
23
+ headingProps = _useThemeProps.headingProps,
24
+ tileViewProps = _useThemeProps.tileViewProps,
25
+ _useThemeProps$spacin = _useThemeProps.spacing,
26
+ spacing = _useThemeProps$spacin === void 0 ? 1 : _useThemeProps$spacin,
27
+ _useThemeProps$minCel = _useThemeProps.minCellWidth,
28
+ minCellWidth = _useThemeProps$minCel === void 0 ? 16 : _useThemeProps$minCel,
29
+ themeProps = _objectWithoutPropertiesLoose(_useThemeProps, ["headingProps", "tileViewProps", "spacing", "minCellWidth"]);
18
30
 
19
31
  return /*#__PURE__*/React.createElement(StackView, _extends({
20
32
  as: "fieldset",
21
33
  padding: 0,
22
34
  margin: 2
23
- }, restProps), /*#__PURE__*/React.createElement(Toolbar, {
24
- title: /*#__PURE__*/React.createElement(Heading, {
35
+ }, themeProps, restProps), /*#__PURE__*/React.createElement(Toolbar, {
36
+ title: /*#__PURE__*/React.createElement(Heading, _extends({
25
37
  as: "legend",
26
38
  level: 4
27
- }, legend),
39
+ }, headingProps), legend),
28
40
  helpContent: helpContent,
29
41
  marginBottom: 1
30
- }), /*#__PURE__*/React.createElement(TileView, {
42
+ }), /*#__PURE__*/React.createElement(TileView, _extends({
31
43
  minCellWidth: minCellWidth,
32
44
  spacing: spacing
33
- }, children));
45
+ }, tileViewProps), children));
34
46
  }
35
47
 
36
48
  export default FieldSet;
@@ -57,7 +57,8 @@ export function FilterLayout(props) {
57
57
  title: "Filter",
58
58
  "aria-label": sidebarOpen ? 'close filter' : 'open filter',
59
59
  iconRight: {
60
- name: sidebarOpen ? 'caret-left' : 'filter'
60
+ name: sidebarOpen ? 'general.leftChevron' : 'general.threeReducingHorizontalBars',
61
+ size: sidebarOpen ? 'xs' : 'md'
61
62
  },
62
63
  onClick: toggleSidebar
63
64
  }), /*#__PURE__*/React.createElement(Box, {
@@ -110,7 +110,7 @@ var Form = /*#__PURE__*/function (_React$Component) {
110
110
  editButtonProps: {
111
111
  disabled: isSubmitting,
112
112
  icon: isEditing ? undefined : {
113
- name: 'pencil'
113
+ name: 'general.pencil'
114
114
  },
115
115
  onClick: function onClick() {
116
116
  // bail out if we've already triggered a submit in onBlur
@@ -12,6 +12,7 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
12
12
  import { jsx } from '@emotion/core';
13
13
  import * as React from 'react';
14
14
  import splitStyles from '../system/split-styles';
15
+ import { spacingValue } from '../system';
15
16
  import { useVariant } from '../VariantProvider';
16
17
 
17
18
  function getTemplateValue(value) {
@@ -64,15 +65,15 @@ var gridViewPlugin = {
64
65
  }
65
66
 
66
67
  if (columnSpacing !== undefined && styles.gridColumnGap === undefined) {
67
- styles.gridColumnGap = columnSpacing * 8;
68
+ styles.gridColumnGap = spacingValue(columnSpacing);
68
69
  }
69
70
 
70
71
  if (rowSpacing !== undefined && styles.gridRowGap === undefined) {
71
- styles.gridRowGap = rowSpacing * 8;
72
+ styles.gridRowGap = spacingValue(rowSpacing);
72
73
  }
73
74
 
74
- if (spacing !== undefined && styles.gridGap === undefined) {
75
- styles.gridGap = spacing * 8;
75
+ if (spacing !== undefined && styles.gap === undefined) {
76
+ styles.gap = spacingValue(spacing);
76
77
  }
77
78
 
78
79
  return styles;
@@ -16,21 +16,28 @@ export function Group(_ref) {
16
16
  childProps = _ref.childProps,
17
17
  children = _ref.children,
18
18
  radius = _ref.radius,
19
- restProps = _objectWithoutPropertiesLoose(_ref, ["axis", "childProps", "children", "radius"]);
19
+ spacing = _ref.spacing,
20
+ restProps = _objectWithoutPropertiesLoose(_ref, ["axis", "childProps", "children", "radius", "spacing"]);
20
21
 
21
22
  var themeRadius = useThemeValue('group.radius');
22
23
  var radiusValue = radius != null ? radius : themeRadius;
23
24
  var isHorizontalLayout = axis === 'horizontal';
24
25
  var startRadius = isHorizontalLayout ? 'radiusLeft' : 'radiusTop';
25
26
  var endRadius = isHorizontalLayout ? 'radiusRight' : 'radiusBottom';
27
+ var marginBottom = isHorizontalLayout ? 0 : '-1px';
28
+ var marginRight = isHorizontalLayout ? '-1px' : 0;
26
29
  return /*#__PURE__*/React.createElement(StackView, _extends({
27
30
  axis: axis,
28
- spacing: -0.125
31
+ spacing: spacing
29
32
  }, restProps), cloneChildren(children, function (child, _ref2) {
30
33
  var _objectSpread2;
31
34
 
32
35
  var firstChild = _ref2.firstChild,
33
36
  lastChild = _ref2.lastChild;
34
- return _objectSpread(_objectSpread({}, childProps), {}, (_objectSpread2 = {}, _objectSpread2[startRadius] = firstChild ? radiusValue : 0, _objectSpread2[endRadius] = lastChild ? radiusValue : 0, _objectSpread2));
37
+ return _objectSpread(_objectSpread(_objectSpread({}, childProps), {}, (_objectSpread2 = {}, _objectSpread2[startRadius] = firstChild ? radiusValue : 0, _objectSpread2[endRadius] = lastChild ? radiusValue : 0, _objectSpread2), !spacing && !lastChild && {
38
+ marginBottom: marginBottom
39
+ }), !spacing && !lastChild && {
40
+ marginRight: marginRight
41
+ });
35
42
  }));
36
43
  }
@@ -2,13 +2,13 @@ import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
3
3
  import React from 'react';
4
4
  import Text from '../Text';
5
- import { useThemeValue } from '../system';
5
+ import { useThemeProps } from '../system';
6
6
 
7
7
  function HeadingUppercase(_ref) {
8
8
  var children = _ref.children,
9
9
  restProps = _objectWithoutPropertiesLoose(_ref, ["children"]);
10
10
 
11
- var themedProps = useThemeValue('HeadingUppercase');
11
+ var themeProps = useThemeProps('HeadingUppercase', restProps);
12
12
  return /*#__PURE__*/React.createElement(Text, _extends({
13
13
  as: "span",
14
14
  uppercase: true,
@@ -18,7 +18,7 @@ function HeadingUppercase(_ref) {
18
18
  color: "foregroundSecondary",
19
19
  shrink: 0,
20
20
  margin: 0
21
- }, themedProps, restProps), children);
21
+ }, themeProps), children);
22
22
  }
23
23
 
24
24
  export default HeadingUppercase;
@@ -25,7 +25,7 @@ function Toggle(_ref) {
25
25
  }, [drawerId]);
26
26
  return jsx(Button, _extends({
27
27
  icon: {
28
- name: 'info'
28
+ name: 'general.outlinedInfoCircle'
29
29
  },
30
30
  tooltip: {
31
31
  title: 'More info'
@@ -2,23 +2,27 @@ import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
3
3
  import React from 'react';
4
4
  import Text from '../Text';
5
+ import { useThemeProps } from '../system';
5
6
  import { markFuzzyMatchSubstring, markStartsWithMatchSubstring } from './utils';
6
7
 
7
8
  /**
8
9
  * Highlight or mark letters in a string using a provided query.
9
10
  */
10
11
  function Highlight(_ref) {
11
- var _ref$color = _ref.color,
12
- color = _ref$color === void 0 ? 'primary' : _ref$color,
13
- _ref$marker = _ref.marker,
12
+ var _ref$marker = _ref.marker,
14
13
  marker = _ref$marker === void 0 ? markStartsWithMatchSubstring : _ref$marker,
15
14
  query = _ref.query,
16
15
  text = _ref.text,
17
- restProps = _objectWithoutPropertiesLoose(_ref, ["color", "marker", "query", "text"]);
16
+ restProps = _objectWithoutPropertiesLoose(_ref, ["marker", "query", "text"]);
17
+
18
+ var _useThemeProps = useThemeProps('highlight', restProps),
19
+ _useThemeProps$color = _useThemeProps.color,
20
+ color = _useThemeProps$color === void 0 ? 'primary' : _useThemeProps$color,
21
+ themeProps = _objectWithoutPropertiesLoose(_useThemeProps, ["color"]);
18
22
 
19
23
  return /*#__PURE__*/React.createElement(Text, _extends({
20
24
  as: "span"
21
- }, restProps), marker(text, query).map(function (part, index) {
25
+ }, themeProps), marker(text, query).map(function (part, index) {
22
26
  return /*#__PURE__*/React.createElement(Text, {
23
27
  key: index,
24
28
  inline: true,
@@ -4,9 +4,9 @@ import React from 'react';
4
4
  import Icon from './Icon';
5
5
  import Path from './Path';
6
6
  var STATUS_VARIANTS = {
7
- confirmed: ['checkmark-circle', 'success'],
8
- unconfirmed: ['question-circle', 'warning'],
9
- declined: ['close-circle', 'error']
7
+ confirmed: ['general.outlinedCircleCheck', 'success'],
8
+ unconfirmed: ['general.outlinedQuestionCircle', 'warning'],
9
+ declined: ['general.outlinedXCircle', 'error']
10
10
  };
11
11
 
12
12
  function Status(props) {
@@ -31,7 +31,7 @@ function Status(props) {
31
31
  name: variantName,
32
32
  color: color || variantColor
33
33
  }, restProps), /*#__PURE__*/React.createElement(Path, {
34
- name: "radio-0",
34
+ name: "tapestry.radio0",
35
35
  color: color
36
36
  }));
37
37
  }
@@ -313,7 +313,7 @@ var InputBox = /*#__PURE__*/function (_Component) {
313
313
  size: size
314
314
  }) : onClear ? /*#__PURE__*/React.createElement(Button, {
315
315
  icon: {
316
- name: 'close'
316
+ name: 'general.x'
317
317
  },
318
318
  title: "clear input value",
319
319
  size: size,
@@ -24,7 +24,7 @@ function ListItem(_ref) {
24
24
  backgroundColor: "surface"
25
25
  }, hoverProps, restProps), children, onRemoveRequest && /*#__PURE__*/React.createElement(Button, {
26
26
  icon: {
27
- name: 'remove-circle-filled'
27
+ name: 'general.minusCircle'
28
28
  },
29
29
  title: removeTitle,
30
30
  size: "sm",
@@ -14,4 +14,5 @@ function Heading(_ref) {
14
14
  }, restProps), children);
15
15
  }
16
16
 
17
+ Heading.displayName = 'Menu.Heading';
17
18
  export default Heading;
@@ -0,0 +1,122 @@
1
+ import React, { useState } from 'react';
2
+ import { render, screen } from '@testing-library/react';
3
+ import userEvent from '@testing-library/user-event';
4
+ import '@testing-library/jest-dom/extend-expect';
5
+ import Dropdown from '../Dropdown';
6
+ import Select from '../Select';
7
+ import { Button, Heading, Modal, ThemeProvider } from '../';
8
+ import { noop } from 'lodash';
9
+
10
+ var _ref = /*#__PURE__*/React.createElement(Heading, {
11
+ "data-testid": "modal-header"
12
+ }, "Hello");
13
+
14
+ describe('Modal', function () {
15
+ var TestModal = function TestModal() {
16
+ var _useState = useState(false),
17
+ open = _useState[0],
18
+ setOpen = _useState[1];
19
+
20
+ return /*#__PURE__*/React.createElement(ThemeProvider, null, /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Button, {
21
+ "data-testid": "modal-toggle",
22
+ onClick: function onClick() {
23
+ return setOpen(!open);
24
+ },
25
+ title: "Toggle modal"
26
+ }), /*#__PURE__*/React.createElement(Modal, {
27
+ open: open,
28
+ onRequestClose: function onRequestClose() {
29
+ return setOpen(false);
30
+ }
31
+ }, _ref, /*#__PURE__*/React.createElement(Dropdown, null, [1, 2, 3].map(function (n) {
32
+ return /*#__PURE__*/React.createElement(Dropdown.Item, {
33
+ "data-testid": "dropdown-item-" + n,
34
+ key: n
35
+ }, n);
36
+ })), /*#__PURE__*/React.createElement(Select, {
37
+ onChange: noop
38
+ }, [1, 2, 3].map(function (n) {
39
+ return /*#__PURE__*/React.createElement(Select.Option, {
40
+ "data-testid": "select-option-" + n,
41
+ key: n,
42
+ value: n
43
+ }, n);
44
+ })))));
45
+ };
46
+
47
+ var _ref2 = /*#__PURE__*/React.createElement(TestModal, null);
48
+
49
+ var _ref3 = /*#__PURE__*/React.createElement(TestModal, null);
50
+
51
+ var _ref4 = /*#__PURE__*/React.createElement(TestModal, null);
52
+
53
+ var _ref5 = /*#__PURE__*/React.createElement(TestModal, null);
54
+
55
+ var _ref6 = /*#__PURE__*/React.createElement(TestModal, null);
56
+
57
+ var _ref7 = /*#__PURE__*/React.createElement(TestModal, null);
58
+
59
+ describe('Keyboard navigation', function () {
60
+ it('should close modal on escape keypress (dropdown button has focus)', function () {
61
+ render(_ref2);
62
+ expect(screen.queryByTestId('modal-header')).toBeNull();
63
+ userEvent.click(screen.getByTestId('modal-toggle'));
64
+ expect(screen.getByTestId('modal-header')).toBeInTheDocument();
65
+ userEvent.keyboard("{esc}");
66
+ expect(screen.queryByTestId('modal-header')).toBeNull();
67
+ });
68
+ it('should not close modal when escape key closes a dropdown within modal', function () {
69
+ render(_ref3);
70
+ userEvent.click(screen.getByTestId('modal-toggle'));
71
+
72
+ var _screen$getAllByRole = screen.getAllByRole('button'),
73
+ dropdown = _screen$getAllByRole[1];
74
+
75
+ expect(dropdown).toHaveFocus();
76
+ userEvent.keyboard('{arrowdown}');
77
+ userEvent.keyboard("{esc}");
78
+ expect(screen.getByTestId('modal-header')).toBeInTheDocument();
79
+ });
80
+ it('should close dropdown on escape & close modal on subsequent escape', function () {
81
+ render(_ref4);
82
+ userEvent.click(screen.getByTestId('modal-toggle'));
83
+ userEvent.keyboard('{arrowdown}');
84
+ userEvent.keyboard("{esc}");
85
+ expect(screen.getByTestId('modal-header')).toBeInTheDocument();
86
+ userEvent.keyboard("{esc}");
87
+ expect(screen.queryByTestId('modal-header')).toBeNull();
88
+ });
89
+ it('should hide select popover on escape, but select remains in dom', function () {
90
+ render(_ref5);
91
+ userEvent.click(screen.getByTestId('modal-toggle'));
92
+ userEvent.tab();
93
+ userEvent.keyboard('{arrowdown}');
94
+ userEvent.keyboard("{esc}");
95
+ expect(screen.queryByTestId('select-option-1')).toBeInTheDocument();
96
+ });
97
+ it('should hide select popover on escape, close (unmount) select popover on subsequent escape, persist modal', function () {
98
+ render(_ref6);
99
+ userEvent.click(screen.getByTestId('modal-toggle'));
100
+ userEvent.tab();
101
+ userEvent.keyboard('{arrowdown}');
102
+ userEvent.keyboard("{esc}");
103
+ expect(screen.queryByTestId('select-option-1')).toBeInTheDocument();
104
+ userEvent.keyboard("{esc}");
105
+ expect(screen.queryByTestId('select-option-1')).toBeNull();
106
+ expect(screen.queryByTestId('modal-header')).toBeInTheDocument();
107
+ });
108
+ it('should hide select popover on escape, close (unmount) select popover on subsequent escape, close modal on subsequent escape', function () {
109
+ render(_ref7);
110
+ userEvent.click(screen.getByTestId('modal-toggle'));
111
+ userEvent.tab();
112
+ userEvent.keyboard('{arrowdown}');
113
+ userEvent.keyboard("{esc}");
114
+ expect(screen.queryByTestId('select-option-1')).toBeInTheDocument();
115
+ userEvent.keyboard("{esc}");
116
+ expect(screen.queryByTestId('select-option-1')).toBeNull();
117
+ expect(screen.queryByTestId('modal-header')).toBeInTheDocument();
118
+ userEvent.keyboard("{esc}");
119
+ expect(screen.queryByTestId('modal-header')).toBeNull();
120
+ });
121
+ });
122
+ });
@@ -95,7 +95,8 @@ var Pagination = /*#__PURE__*/function (_Component) {
95
95
  onClick: onPageChange.bind(null, currentPage - 1),
96
96
  disabled: currentPage === 1,
97
97
  icon: {
98
- name: 'caret-left'
98
+ name: 'general.leftChevron',
99
+ size: 'xs'
99
100
  },
100
101
  tooltip: {
101
102
  title: 'Previous Page'
@@ -106,7 +107,8 @@ var Pagination = /*#__PURE__*/function (_Component) {
106
107
  onClick: onPageChange.bind(null, currentPage + 1),
107
108
  disabled: currentPage === totalPages,
108
109
  icon: {
109
- name: 'caret-right'
110
+ name: 'general.rightChevron',
111
+ size: 'xs'
110
112
  },
111
113
  tooltip: {
112
114
  title: 'Next Page'
@@ -103,6 +103,10 @@ export var Popover = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
103
103
 
104
104
  var requestClose = function requestClose(event) {
105
105
  if (event.key === 'Escape' && onRequestClose) {
106
+ if (open) {
107
+ event.nativeEvent.stopImmediatePropagation();
108
+ }
109
+
106
110
  onRequestClose();
107
111
  }
108
112
 
@@ -0,0 +1,51 @@
1
+ import React, { useState } from 'react';
2
+ import { render, screen } from '@testing-library/react';
3
+ import userEvent from '@testing-library/user-event';
4
+ import '@testing-library/jest-dom/extend-expect';
5
+ import { Box, Text, Button, Popover } from '..';
6
+
7
+ var PopBasic = function PopBasic(_ref) {
8
+ var children = _ref.children;
9
+
10
+ var _useState = useState(false),
11
+ open = _useState[0],
12
+ setOpen = _useState[1];
13
+
14
+ return /*#__PURE__*/React.createElement(Box, {
15
+ id: "container"
16
+ }, /*#__PURE__*/React.createElement(Popover, {
17
+ open: open,
18
+ offset: 1,
19
+ renderTo: "#container",
20
+ anchorElement: /*#__PURE__*/React.createElement(Button, {
21
+ title: "Toggle",
22
+ onClick: function onClick() {
23
+ return setOpen(!open);
24
+ },
25
+ id: "anchor-element"
26
+ })
27
+ }, children));
28
+ };
29
+
30
+ var _ref2 = /*#__PURE__*/React.createElement(PopBasic, null, /*#__PURE__*/React.createElement(Box, null));
31
+
32
+ describe('Popover', function () {
33
+ it('should not render string in closed Popover', function () {
34
+ var string = 'Test Text';
35
+ render( /*#__PURE__*/React.createElement(PopBasic, null, /*#__PURE__*/React.createElement(Text, null, string)));
36
+ expect(screen.queryByText(string)).toBeNull();
37
+ });
38
+ it('should render string in open Popover', function () {
39
+ var string = 'Test Text';
40
+ render( /*#__PURE__*/React.createElement(PopBasic, null, /*#__PURE__*/React.createElement(Text, null, string)));
41
+ var openPopover = screen.getByRole('button');
42
+ userEvent.click(openPopover);
43
+ expect(screen.getByText(string)).toBeInTheDocument();
44
+ });
45
+ it('should focus open button on click', function () {
46
+ render(_ref2);
47
+ var openPopover = screen.getByRole('button');
48
+ userEvent.click(openPopover);
49
+ expect(openPopover).toHaveFocus();
50
+ });
51
+ });
@@ -32,43 +32,31 @@ var RewireTabOrder = /*#__PURE__*/function () {
32
32
 
33
33
  _defineProperty(this, "nextActiveElement", null);
34
34
 
35
- _defineProperty(this, "focusOriginalActiveElement", function () {
36
- _this.originalActiveElement.focus();
37
- });
38
-
39
- _defineProperty(this, "focusNextActiveElement", function () {
40
- _this.nextActiveElement.focus();
41
- });
42
-
43
35
  _defineProperty(this, "moveFocusToTargetFromTriggerElement", function (event) {
44
36
  if (!event.shiftKey && event.keyCode === TAB_KEY) {
45
37
  event.preventDefault();
46
38
 
47
- _this.firstFocusableElement.focus();
39
+ if (_this.tabbables.includes(_this.nextActiveElement)) {
40
+ _this.nextActiveElement.focus();
41
+ } else {
42
+ _this.firstFocusableElement.focus();
43
+ }
48
44
  }
49
45
  });
50
46
 
51
- _defineProperty(this, "moveFocusFromTargetToTriggerElement", function (event) {
47
+ _defineProperty(this, "moveFocusToTargetFromFirstElement", function (event) {
52
48
  if (event.target === _this.firstFocusableElement && event.shiftKey && event.keyCode === TAB_KEY) {
53
49
  event.preventDefault();
54
50
 
55
- _this.originalActiveElement.focus();
56
- }
57
- });
58
-
59
- _defineProperty(this, "moveFocusToTargetFromNextElement", function (event) {
60
- if (event.shiftKey && event.keyCode === TAB_KEY) {
61
- event.preventDefault();
62
-
63
51
  _this.lastFocusableElement.focus();
64
52
  }
65
53
  });
66
54
 
67
- _defineProperty(this, "moveFocusFromTargetToNextElement", function (event) {
68
- if (!event.shiftKey && event.keyCode === TAB_KEY) {
55
+ _defineProperty(this, "moveFocusToTargetFromLastElement", function (event) {
56
+ if (event.target === _this.lastFocusableElement && !event.shiftKey && event.keyCode === TAB_KEY) {
69
57
  event.preventDefault();
70
58
 
71
- _this.nextActiveElement.focus();
59
+ _this.firstFocusableElement.focus();
72
60
  }
73
61
  });
74
62
 
@@ -89,12 +77,8 @@ var RewireTabOrder = /*#__PURE__*/function () {
89
77
  this.originalActiveElement = document.activeElement;
90
78
  this.nextActiveElement = getNextActiveElement(this.originalActiveElement);
91
79
  this.originalActiveElement.addEventListener('keydown', this.moveFocusToTargetFromTriggerElement);
92
- this.firstFocusableElement.addEventListener('keydown', this.moveFocusFromTargetToTriggerElement);
93
-
94
- if (this.nextActiveElement) {
95
- this.nextActiveElement.addEventListener('keydown', this.moveFocusToTargetFromNextElement);
96
- this.lastFocusableElement.addEventListener('keydown', this.moveFocusFromTargetToNextElement);
97
- }
80
+ this.firstFocusableElement.addEventListener('keydown', this.moveFocusToTargetFromFirstElement);
81
+ this.lastFocusableElement.addEventListener('keydown', this.moveFocusToTargetFromLastElement);
98
82
  };
99
83
 
100
84
  _proto.destroy = function destroy() {
@@ -103,12 +87,8 @@ var RewireTabOrder = /*#__PURE__*/function () {
103
87
  }
104
88
 
105
89
  this.originalActiveElement.removeEventListener('keydown', this.moveFocusToTargetFromTriggerElement);
106
- this.firstFocusableElement.removeEventListener('keydown', this.moveFocusFromTargetToTriggerElement);
107
-
108
- if (this.nextActiveElement) {
109
- this.nextActiveElement.removeEventListener('keydown', this.moveFocusToTargetFromNextElement);
110
- this.lastFocusableElement.removeEventListener('keydown', this.moveFocusFromTargetToNextElement);
111
- }
90
+ this.firstFocusableElement.removeEventListener('keydown', this.moveFocusToTargetFromFirstElement);
91
+ this.lastFocusableElement.removeEventListener('keydown', this.moveFocusToTargetFromLastElement);
112
92
  };
113
93
 
114
94
  return RewireTabOrder;
@@ -2,12 +2,16 @@ import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
3
3
  import React from 'react';
4
4
  import Box from '../Box';
5
+ import { useThemeProps } from '../system';
5
6
 
6
- function Progress(props) {
7
- var value = props.value,
8
- _props$activeColor = props.activeColor,
9
- activeColor = _props$activeColor === void 0 ? 'primary' : _props$activeColor,
10
- restProps = _objectWithoutPropertiesLoose(props, ["value", "activeColor"]);
7
+ function Progress(_ref) {
8
+ var value = _ref.value,
9
+ restProps = _objectWithoutPropertiesLoose(_ref, ["value"]);
10
+
11
+ var _useThemeProps = useThemeProps('progress', restProps),
12
+ _useThemeProps$active = _useThemeProps.activeColor,
13
+ activeColor = _useThemeProps$active === void 0 ? 'primary' : _useThemeProps$active,
14
+ themeProps = _objectWithoutPropertiesLoose(_useThemeProps, ["activeColor"]);
11
15
 
12
16
  return /*#__PURE__*/React.createElement(Box, _extends({
13
17
  role: "progressbar",
@@ -18,7 +22,7 @@ function Progress(props) {
18
22
  position: "relative",
19
23
  overflow: "hidden",
20
24
  backgroundColor: "grey-3"
21
- }, restProps), /*#__PURE__*/React.createElement(Box, {
25
+ }, themeProps), /*#__PURE__*/React.createElement(Box, {
22
26
  position: "absolute",
23
27
  top: 0,
24
28
  right: 0,
@@ -9,8 +9,8 @@ import Text from '../Text';
9
9
  import VariantProvider from '../VariantProvider';
10
10
  import { useThemeValue } from '../system';
11
11
  var iconPaths = {
12
- fill: 'radio-0',
13
- checked: 'radio-1'
12
+ fill: 'tapestry.radio0',
13
+ checked: 'tapestry.radio1'
14
14
  };
15
15
  var radioEmitter = mitt();
16
16
 
@@ -4,6 +4,7 @@ import React, { useRef, useState } from 'react';
4
4
  import { clamp, snap } from '@popmotion/popcorn';
5
5
  import Box from '../Box';
6
6
  import { useMeasure } from '../hooks';
7
+ import { useThemeProps } from '../system';
7
8
 
8
9
  function RangeSlider(props) {
9
10
  var _props$min = props.min,
@@ -15,9 +16,12 @@ function RangeSlider(props) {
15
16
  disabled = props.disabled,
16
17
  value = props.value,
17
18
  onChange = props.onChange,
18
- _props$variant = props.variant,
19
- variant = _props$variant === void 0 ? {} : _props$variant,
20
- restProps = _objectWithoutPropertiesLoose(props, ["min", "max", "step", "disabled", "value", "onChange", "variant"]);
19
+ restProps = _objectWithoutPropertiesLoose(props, ["min", "max", "step", "disabled", "value", "onChange"]);
20
+
21
+ var _useThemeProps = useThemeProps('rangeSlider', restProps),
22
+ _useThemeProps$varian = _useThemeProps.variant,
23
+ variant = _useThemeProps$varian === void 0 ? {} : _useThemeProps$varian,
24
+ themeProps = _objectWithoutPropertiesLoose(_useThemeProps, ["variant"]);
21
25
 
22
26
  var snapTo = snap(step);
23
27
  var sliderRef = useRef();
@@ -165,7 +169,7 @@ function RangeSlider(props) {
165
169
  opacity: disabled ? 0.65 : undefined,
166
170
  onMouseDown: disabled ? undefined : handleTrackPointerDown,
167
171
  onTouchStart: disabled ? undefined : handleTrackPointerDown
168
- }, restProps), /*#__PURE__*/React.createElement(Box, _extends({
172
+ }, themeProps), /*#__PURE__*/React.createElement(Box, _extends({
169
173
  innerRef: trackRef,
170
174
  height: 0.5,
171
175
  radius: 6,
@@ -1,7 +1,7 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import * as React from 'react';
3
3
  import StackView from '../StackView';
4
- var Scrim = /*#__PURE__*/React.forwardRef(function (props, ref) {
4
+ var Scrim = /*#__PURE__*/React.forwardRef(function (props) {
5
5
  React.useLayoutEffect(function () {
6
6
  document.body.style.overflow = 'hidden';
7
7
  return function () {
@@ -9,7 +9,7 @@ var Scrim = /*#__PURE__*/React.forwardRef(function (props, ref) {
9
9
  };
10
10
  }, []);
11
11
  return /*#__PURE__*/React.createElement(StackView, _extends({
12
- innerRef: ref,
12
+ innerRef: props.ref,
13
13
  position: "fixed",
14
14
  top: 0,
15
15
  right: 0,