@planningcenter/tapestry-react 2.1.2 → 2.2.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 (85) hide show
  1. package/dist/cjs/Badge/Badge.js +5 -1
  2. package/dist/cjs/Card/Card.js +5 -2
  3. package/dist/cjs/Combobox/Combobox.js +16 -43
  4. package/dist/cjs/Combobox/ComboboxInput.js +112 -146
  5. package/dist/cjs/Combobox/ComboboxItem.js +38 -53
  6. package/dist/cjs/Combobox/ComboboxItems.js +41 -58
  7. package/dist/cjs/Combobox/index.js +12 -0
  8. package/dist/cjs/DateField/DateField.js +109 -128
  9. package/dist/cjs/Field/Field.js +80 -106
  10. package/dist/cjs/Menu/Item.js +1 -0
  11. package/dist/cjs/Popover/utils.js +1 -0
  12. package/dist/cjs/SegmentedControl/SegmentedControl.js +89 -111
  13. package/dist/cjs/SegmentedTabs/SegmentedTabs.js +54 -84
  14. package/dist/cjs/Tabs/Tab.js +9 -6
  15. package/dist/cjs/Tabs/TabList.js +49 -64
  16. package/dist/cjs/Tabs/TabPanel.js +6 -2
  17. package/dist/cjs/Tabs/TabPanels.js +14 -27
  18. package/dist/cjs/Tabs/Tabs.js +72 -106
  19. package/dist/cjs/Tabs/index.js +12 -0
  20. package/dist/cjs/ThemeProvider/ThemeProvider.js +1 -1
  21. package/dist/cjs/Tooltip/Tooltip.js +158 -182
  22. package/dist/cjs/Wizard/Wizard.js +143 -193
  23. package/dist/cjs/Wizard/index.js +3 -0
  24. package/dist/esm/Badge/Badge.js +5 -1
  25. package/dist/esm/Card/Card.js +5 -2
  26. package/dist/esm/Combobox/Combobox.js +18 -43
  27. package/dist/esm/Combobox/ComboboxInput.js +111 -149
  28. package/dist/esm/Combobox/ComboboxItem.js +38 -52
  29. package/dist/esm/Combobox/ComboboxItems.js +38 -56
  30. package/dist/esm/Combobox/index.js +8 -0
  31. package/dist/esm/DateField/DateField.js +106 -133
  32. package/dist/esm/Field/Field.js +76 -103
  33. package/dist/esm/Menu/Item.js +1 -0
  34. package/dist/esm/Popover/utils.js +1 -0
  35. package/dist/esm/SegmentedControl/SegmentedControl.js +90 -114
  36. package/dist/esm/SegmentedTabs/SegmentedTabs.js +51 -83
  37. package/dist/esm/Tabs/Tab.js +8 -6
  38. package/dist/esm/Tabs/TabList.js +49 -66
  39. package/dist/esm/Tabs/TabPanel.js +4 -2
  40. package/dist/esm/Tabs/TabPanels.js +14 -28
  41. package/dist/esm/Tabs/Tabs.js +76 -120
  42. package/dist/esm/Tabs/index.js +8 -0
  43. package/dist/esm/ThemeProvider/ThemeProvider.js +1 -1
  44. package/dist/esm/Tooltip/Tooltip.js +154 -195
  45. package/dist/esm/Wizard/Wizard.js +144 -201
  46. package/dist/esm/Wizard/index.js +2 -0
  47. package/dist/types/Popover/utils.d.ts +3 -0
  48. package/package.json +1 -1
  49. package/src/.DS_Store +0 -0
  50. package/src/Badge/Badge.js +5 -0
  51. package/src/Card/Card.tsx +22 -1
  52. package/src/Combobox/Combobox.js +18 -32
  53. package/src/Combobox/Combobox.mdx +1 -0
  54. package/src/Combobox/Combobox.test.js +1 -1
  55. package/src/Combobox/ComboboxInput.js +111 -105
  56. package/src/Combobox/ComboboxItem.js +27 -27
  57. package/src/Combobox/ComboboxItems.js +38 -60
  58. package/src/Combobox/index.js +8 -0
  59. package/src/DateField/DateField.js +109 -105
  60. package/src/DateField/DateField.mdx +1 -0
  61. package/src/Field/Field.js +85 -93
  62. package/src/Field/Field.mdx +1 -0
  63. package/src/Menu/Heading.js +5 -1
  64. package/src/Menu/Heading.mdx +20 -0
  65. package/src/Menu/Item.js +13 -1
  66. package/src/Menu/Item.mdx +18 -0
  67. package/src/Menu/Menu.mdx +1 -0
  68. package/src/Popover/utils.ts +1 -0
  69. package/src/SegmentedControl/SegmentedControl.js +88 -92
  70. package/src/SegmentedControl/SegmentedControl.mdx +1 -0
  71. package/src/SegmentedTabs/SegmentedTabs.js +51 -71
  72. package/src/SegmentedTabs/SegmentedTabs.mdx +1 -0
  73. package/src/Tabs/Tab.js +3 -1
  74. package/src/Tabs/TabList.js +56 -62
  75. package/src/Tabs/TabPanel.js +2 -1
  76. package/src/Tabs/TabPanels.js +14 -15
  77. package/src/Tabs/Tabs.js +63 -84
  78. package/src/Tabs/Tabs.mdx +16 -17
  79. package/src/Tabs/index.js +8 -0
  80. package/src/ThemeProvider/ThemeProvider.tsx +1 -1
  81. package/src/Tooltip/Tooltip.js +142 -160
  82. package/src/Tooltip/Tooltip.mdx +1 -0
  83. package/src/Wizard/Wizard.js +141 -170
  84. package/src/Wizard/Wizard.mdx +3 -2
  85. package/src/Wizard/index.js +2 -0
@@ -9,14 +9,10 @@ exports["default"] = void 0;
9
9
 
10
10
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
11
 
12
- var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
13
-
14
- var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
15
-
16
- var _inheritsLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/inheritsLoose"));
17
-
18
12
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
19
13
 
14
+ var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
15
+
20
16
  var _react = _interopRequireWildcard(require("react"));
21
17
 
22
18
  var _Button = _interopRequireDefault(require("../Button"));
@@ -33,7 +29,7 @@ var _StepperProgress = _interopRequireDefault(require("../StepperProgress"));
33
29
 
34
30
  var _Text = _interopRequireDefault(require("../Text"));
35
31
 
36
- var _Step = _interopRequireDefault(require("./Step"));
32
+ var _system = require("../system");
37
33
 
38
34
  var _WizardContext = _interopRequireDefault(require("./WizardContext"));
39
35
 
@@ -41,199 +37,153 @@ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (O
41
37
 
42
38
  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) { (0, _defineProperty2["default"])(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; }
43
39
 
44
- var Wizard = /*#__PURE__*/function (_Component) {
45
- (0, _inheritsLoose2["default"])(Wizard, _Component);
46
-
47
- function Wizard() {
48
- var _this;
49
-
50
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
51
- args[_key] = arguments[_key];
52
- }
53
-
54
- _this = _Component.call.apply(_Component, [this].concat(args)) || this;
55
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "state", {
56
- activeStepIndex: 0,
57
- payload: _this.props.initialPayload,
58
- steps: [],
59
- totalSteps: -1,
60
- sendingPayload: false
61
- });
62
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "setPayload", function (newPayload, cb) {
63
- _this.setState(function (state) {
64
- return {
65
- payload: _objectSpread(_objectSpread({}, state.payload), newPayload)
66
- };
67
- }, cb);
68
- });
69
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "setSteps", function (getSteps) {
70
- _this.setState(function (state) {
71
- var nextSteps = getSteps(state.steps);
72
- return {
73
- steps: nextSteps,
74
- totalSteps: nextSteps.length
75
- };
76
- });
40
+ function Wizard(props) {
41
+ var _useThemeProps = (0, _system.useThemeProps)('wizard', props),
42
+ _useThemeProps$autoFo = _useThemeProps.autoFocus,
43
+ autoFocus = _useThemeProps$autoFo === void 0 ? true : _useThemeProps$autoFo,
44
+ backButtonProps = _useThemeProps.backButtonProps,
45
+ buttonProps = _useThemeProps.buttonProps,
46
+ cancelButtonProps = _useThemeProps.cancelButtonProps,
47
+ children = _useThemeProps.children,
48
+ footerProps = _useThemeProps.footerProps,
49
+ _useThemeProps$initia = _useThemeProps.initialPayload,
50
+ initialPayload = _useThemeProps$initia === void 0 ? {} : _useThemeProps$initia,
51
+ nextButtonProps = _useThemeProps.nextButtonProps,
52
+ _useThemeProps$nextBu = _useThemeProps.nextButtonTitle,
53
+ nextButtonTitle = _useThemeProps$nextBu === void 0 ? function (_ref) {
54
+ var activeStepIndex = _ref.activeStepIndex,
55
+ steps = _ref.steps,
56
+ totalSteps = _ref.totalSteps;
57
+ return activeStepIndex >= totalSteps - 1 ? 'Finish' : 'Next';
58
+ } : _useThemeProps$nextBu,
59
+ onCancel = _useThemeProps.onCancel,
60
+ onSubmit = _useThemeProps.onSubmit,
61
+ renderProgress = _useThemeProps.renderProgress,
62
+ restProps = (0, _objectWithoutPropertiesLoose2["default"])(_useThemeProps, ["autoFocus", "backButtonProps", "buttonProps", "cancelButtonProps", "children", "footerProps", "initialPayload", "nextButtonProps", "nextButtonTitle", "onCancel", "onSubmit", "renderProgress"]);
63
+
64
+ var _useState = (0, _react.useState)(0),
65
+ activeStepIndex = _useState[0],
66
+ setActiveStepIndex = _useState[1];
67
+
68
+ var _useState2 = (0, _react.useState)([]),
69
+ steps = _useState2[0],
70
+ setSteps = _useState2[1];
71
+
72
+ var _useState3 = (0, _react.useState)(false),
73
+ sendingPayload = _useState3[0],
74
+ setSendingPayload = _useState3[1];
75
+
76
+ var totalSteps = steps.length;
77
+
78
+ var _useReducer = (0, _react.useReducer)(function (prevState, updatedProperty) {
79
+ return _objectSpread(_objectSpread({}, prevState), updatedProperty);
80
+ }, initialPayload),
81
+ payload = _useReducer[0],
82
+ setPayload = _useReducer[1];
83
+
84
+ var addStep = (0, _react.useCallback)(function (step) {
85
+ setSteps(function (steps) {
86
+ return [].concat(steps, [step]);
77
87
  });
78
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "addStep", function (step) {
79
- _this.setSteps(function (steps) {
80
- return [].concat(steps, [step]);
81
- });
82
-
83
- return function () {
84
- _this.setSteps(function (steps) {
85
- return steps.filter(function (previousStep) {
86
- return previousStep.name !== step.name;
87
- });
88
+ return function () {
89
+ setSteps(function (steps) {
90
+ return steps.filter(function (previousStep) {
91
+ return previousStep.name !== step.name;
88
92
  });
93
+ });
94
+ };
95
+ }, [steps]);
96
+ var isCurrentStepValid = (0, _react.useCallback)(function () {
97
+ var currentStep = steps[activeStepIndex];
98
+ return currentStep && currentStep.valid ? currentStep.valid(payload) : true;
99
+ }, [activeStepIndex, steps, payload]);
100
+ var handleSubmit = (0, _react.useCallback)(function () {
101
+ if (onSubmit) {
102
+ var _complete = function _complete() {
103
+ return setSendingPayload(false);
89
104
  };
90
- });
91
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handleSubmit", function () {
92
- if (_this.props.onSubmit) {
93
- var _complete = function _complete() {
94
- return _this.setState({
95
- sendingPayload: false
96
- });
97
- };
98
-
99
- _this.setState({
100
- sendingPayload: true
101
- });
102
105
 
103
- _this.props.onSubmit(_this.state.payload, _complete);
104
- }
106
+ setSendingPayload(true);
107
+ onSubmit(payload, _complete);
108
+ }
109
+ }, [payload]);
110
+ return /*#__PURE__*/_react["default"].createElement(_WizardContext["default"].Provider, {
111
+ value: {
112
+ activeStepIndex: activeStepIndex,
113
+ addStep: addStep,
114
+ setPayload: setPayload,
115
+ payload: payload,
116
+ totalSteps: totalSteps
117
+ }
118
+ }, /*#__PURE__*/_react["default"].createElement(_StackView["default"], (0, _extends2["default"])({
119
+ alignment: "center",
120
+ minWidth: 48,
121
+ maxWidth: 96
122
+ }, restProps), renderProgress ? renderProgress({
123
+ activeStepIndex: activeStepIndex,
124
+ steps: steps,
125
+ totalSteps: totalSteps
126
+ }) : /*#__PURE__*/_react["default"].createElement(_StepperProgress["default"], {
127
+ width: "80%",
128
+ paddingTop: 6,
129
+ paddingBottom: 4,
130
+ activeStepIndex: activeStepIndex
131
+ }, steps.map(function (step, index) {
132
+ return /*#__PURE__*/_react["default"].createElement(_StepperProgress["default"].Step, {
133
+ key: index,
134
+ renderEnd: /*#__PURE__*/_react["default"].createElement(_Text["default"], {
135
+ align: "center",
136
+ marginTop: 2
137
+ }, step.name)
105
138
  });
106
- return _this;
107
- }
108
-
109
- var _proto = Wizard.prototype;
110
-
111
- _proto.isCurrentStepValid = function isCurrentStepValid() {
112
- var _this$state = this.state,
113
- activeStepIndex = _this$state.activeStepIndex,
114
- payload = _this$state.payload,
115
- steps = _this$state.steps;
116
- var currentStep = steps[activeStepIndex];
117
- return currentStep && currentStep.valid ? currentStep.valid(payload) : true;
118
- };
119
-
120
- _proto.render = function render() {
121
- var _this2 = this;
122
-
123
- var _this$props = this.props,
124
- autoFocus = _this$props.autoFocus,
125
- backButtonProps = _this$props.backButtonProps,
126
- buttonProps = _this$props.buttonProps,
127
- cancelButtonProps = _this$props.cancelButtonProps,
128
- children = _this$props.children,
129
- footerProps = _this$props.footerProps,
130
- initialPayload = _this$props.initialPayload,
131
- nextButtonProps = _this$props.nextButtonProps,
132
- nextButtonTitle = _this$props.nextButtonTitle,
133
- onCancel = _this$props.onCancel,
134
- onSubmit = _this$props.onSubmit,
135
- renderProgress = _this$props.renderProgress,
136
- restProps = (0, _objectWithoutPropertiesLoose2["default"])(_this$props, ["autoFocus", "backButtonProps", "buttonProps", "cancelButtonProps", "children", "footerProps", "initialPayload", "nextButtonProps", "nextButtonTitle", "onCancel", "onSubmit", "renderProgress"]);
137
- var _this$state2 = this.state,
138
- activeStepIndex = _this$state2.activeStepIndex,
139
- sendingPayload = _this$state2.sendingPayload,
140
- steps = _this$state2.steps,
141
- totalSteps = _this$state2.totalSteps;
142
- return /*#__PURE__*/_react["default"].createElement(_WizardContext["default"].Provider, {
143
- value: {
144
- activeStepIndex: this.state.activeStepIndex,
145
- addStep: this.addStep,
146
- setPayload: this.setPayload,
147
- payload: this.state.payload,
148
- totalSteps: this.state.totalSteps
149
- }
150
- }, /*#__PURE__*/_react["default"].createElement(_StackView["default"], (0, _extends2["default"])({
151
- alignment: "center",
152
- minWidth: 48,
153
- maxWidth: 96
154
- }, restProps), renderProgress ? renderProgress({
139
+ })), /*#__PURE__*/_react["default"].createElement(_Card["default"], {
140
+ spacing: /*#__PURE__*/_react["default"].createElement(_Divider["default"], null),
141
+ elevation: 1
142
+ }, /*#__PURE__*/_react["default"].createElement(_PagerView["default"], {
143
+ activeViewIndex: activeStepIndex,
144
+ autoFocus: autoFocus
145
+ }, _react.Children.map(children, function (child, index) {
146
+ return /*#__PURE__*/_react["default"].createElement(_PagerView["default"].View, {
147
+ key: index
148
+ }, child);
149
+ })), /*#__PURE__*/_react["default"].createElement(_StackView["default"], (0, _extends2["default"])({
150
+ axis: "horizontal",
151
+ distribution: activeStepIndex > 0 ? 'space-between' : 'end',
152
+ padding: 1,
153
+ spacing: 1
154
+ }, footerProps), activeStepIndex === 0 && onCancel && /*#__PURE__*/_react["default"].createElement(_Button["default"], (0, _extends2["default"])({
155
+ disabled: sendingPayload,
156
+ onClick: onCancel,
157
+ size: "lg",
158
+ title: "Cancel",
159
+ variant: "naked"
160
+ }, buttonProps, cancelButtonProps)), activeStepIndex > 0 && /*#__PURE__*/_react["default"].createElement(_Button["default"], (0, _extends2["default"])({
161
+ disabled: sendingPayload,
162
+ iconLeft: {
163
+ name: 'general.leftChevron',
164
+ size: 'sm'
165
+ },
166
+ onClick: function onClick() {
167
+ return setActiveStepIndex(activeStepIndex - 1);
168
+ },
169
+ size: "lg",
170
+ title: "Back",
171
+ variant: "naked"
172
+ }, buttonProps, backButtonProps)), /*#__PURE__*/_react["default"].createElement(_Button["default"], (0, _extends2["default"])({
173
+ disabled: !isCurrentStepValid(),
174
+ onClick: function onClick() {
175
+ return activeStepIndex >= totalSteps - 1 ? handleSubmit() : setActiveStepIndex(activeStepIndex + 1);
176
+ },
177
+ size: "lg",
178
+ spinner: sendingPayload,
179
+ theme: "primary",
180
+ title: nextButtonTitle({
155
181
  activeStepIndex: activeStepIndex,
156
182
  steps: steps,
157
183
  totalSteps: totalSteps
158
- }) : /*#__PURE__*/_react["default"].createElement(_StepperProgress["default"], {
159
- width: "80%",
160
- paddingTop: 6,
161
- paddingBottom: 4,
162
- activeStepIndex: activeStepIndex
163
- }, steps.map(function (step, index) {
164
- return /*#__PURE__*/_react["default"].createElement(_StepperProgress["default"].Step, {
165
- key: index,
166
- renderEnd: /*#__PURE__*/_react["default"].createElement(_Text["default"], {
167
- align: "center",
168
- marginTop: 2
169
- }, step.name)
170
- });
171
- })), /*#__PURE__*/_react["default"].createElement(_Card["default"], {
172
- spacing: /*#__PURE__*/_react["default"].createElement(_Divider["default"], null),
173
- elevation: 1
174
- }, /*#__PURE__*/_react["default"].createElement(_PagerView["default"], {
175
- activeViewIndex: activeStepIndex,
176
- autoFocus: autoFocus
177
- }, _react.Children.map(children, function (child, index) {
178
- return /*#__PURE__*/_react["default"].createElement(_PagerView["default"].View, {
179
- key: index
180
- }, child);
181
- })), /*#__PURE__*/_react["default"].createElement(_StackView["default"], (0, _extends2["default"])({
182
- axis: "horizontal",
183
- distribution: activeStepIndex > 0 ? 'space-between' : 'end',
184
- padding: 1,
185
- spacing: 1
186
- }, footerProps), activeStepIndex === 0 && onCancel && /*#__PURE__*/_react["default"].createElement(_Button["default"], (0, _extends2["default"])({
187
- disabled: sendingPayload,
188
- onClick: onCancel,
189
- size: "lg",
190
- title: "Cancel",
191
- variant: "naked"
192
- }, buttonProps, cancelButtonProps)), activeStepIndex > 0 && /*#__PURE__*/_react["default"].createElement(_Button["default"], (0, _extends2["default"])({
193
- disabled: sendingPayload,
194
- iconLeft: {
195
- name: 'general.leftChevron',
196
- size: 'sm'
197
- },
198
- onClick: function onClick() {
199
- return _this2.setState({
200
- activeStepIndex: activeStepIndex - 1
201
- });
202
- },
203
- size: "lg",
204
- title: "Back",
205
- variant: "naked"
206
- }, buttonProps, backButtonProps)), /*#__PURE__*/_react["default"].createElement(_Button["default"], (0, _extends2["default"])({
207
- disabled: !this.isCurrentStepValid(),
208
- onClick: function onClick() {
209
- return activeStepIndex >= totalSteps - 1 ? _this2.handleSubmit() : _this2.setState({
210
- activeStepIndex: activeStepIndex + 1
211
- });
212
- },
213
- size: "lg",
214
- spinner: sendingPayload,
215
- theme: "primary",
216
- title: nextButtonTitle({
217
- activeStepIndex: activeStepIndex,
218
- steps: steps,
219
- totalSteps: totalSteps
220
- })
221
- }, buttonProps, nextButtonProps))))));
222
- };
223
-
224
- return Wizard;
225
- }(_react.Component);
226
-
227
- (0, _defineProperty2["default"])(Wizard, "Step", _Step["default"]);
228
- (0, _defineProperty2["default"])(Wizard, "defaultProps", {
229
- autoFocus: true,
230
- initialPayload: {},
231
- nextButtonTitle: function nextButtonTitle(_ref) {
232
- var activeStepIndex = _ref.activeStepIndex,
233
- steps = _ref.steps,
234
- totalSteps = _ref.totalSteps;
235
- return activeStepIndex >= totalSteps - 1 ? 'Finish' : 'Next';
236
- }
237
- });
184
+ })
185
+ }, buttonProps, nextButtonProps))))));
186
+ }
187
+
238
188
  var _default = Wizard;
239
189
  exports["default"] = _default;
@@ -7,5 +7,8 @@ exports["default"] = void 0;
7
7
 
8
8
  var _Wizard = _interopRequireDefault(require("./Wizard"));
9
9
 
10
+ var _Step = _interopRequireDefault(require("./Step"));
11
+
12
+ _Wizard["default"].Step = _Step["default"];
10
13
  var _default = _Wizard["default"];
11
14
  exports["default"] = _default;
@@ -73,7 +73,11 @@ function Badge(_ref) {
73
73
  }
74
74
 
75
75
  badgeProps.paddingLeft = renderLeft ? boxSize + 0.5 : badgeProps.radius === 'pill' ? paddingHorizontal : paddingHorizontalDense;
76
- badgeProps.paddingRight = renderRight ? boxSize + 0.5 : badgeProps.radius === 'pill' ? paddingHorizontal : paddingHorizontalDense;
76
+ badgeProps.paddingRight = renderRight ? boxSize + 0.5 : badgeProps.radius === 'pill' ? paddingHorizontal : paddingHorizontalDense; // The `square` prop is no longer needed and should not get
77
+ // passed to `<StackView>` since it's not one of its props
78
+ // or a standard HTML attribute.
79
+
80
+ delete badgeProps.square;
77
81
  return /*#__PURE__*/React.createElement(StackView, _extends({
78
82
  inline: true,
79
83
  axis: "horizontal",
@@ -12,7 +12,10 @@ export function Card(_ref) {
12
12
  radius = _ref$radius === void 0 ? 3 : _ref$radius,
13
13
  restProps = _objectWithoutPropertiesLoose(_ref, ["children", "subdued", "radius"]);
14
14
 
15
- var cardTheme = useThemeValue('card');
15
+ var cardTheme = useThemeValue('card'); // List of component types to ignore when setting the radius
16
+ // for first & last child elements
17
+
18
+ var ignoreRadiusTypes = ['Avatar', 'Badge', 'Button', 'Calendar', 'ChurchCenterStatus', 'Group', 'Inline', 'Input', 'InputBox', 'Modal', 'Progress', 'Spinner', 'Status', 'Tab', 'Tooltip'];
16
19
  return /*#__PURE__*/React.createElement(StackView, _extends({
17
20
  width: "100%",
18
21
  lineHeight: 2.5,
@@ -27,7 +30,7 @@ export function Card(_ref) {
27
30
 
28
31
  var firstChild = _ref2.firstChild,
29
32
  lastChild = _ref2.lastChild;
30
- return child.props.radius === undefined ? firstChild ? (_ref3 = {}, _ref3["radius" + (restProps.axis === 'horizontal' ? 'Left' : 'Top')] = radius - 1, _ref3) : lastChild ? (_ref4 = {}, _ref4["radius" + (restProps.axis === 'horizontal' ? 'Right' : 'Bottom')] = radius - 1, _ref4) : {} : {};
33
+ return child.props.radius === undefined && !ignoreRadiusTypes.includes(child.type.name) ? firstChild ? (_ref3 = {}, _ref3["radius" + (restProps.axis === 'horizontal' ? 'Left' : 'Top')] = radius - 1, _ref3) : lastChild ? (_ref4 = {}, _ref4["radius" + (restProps.axis === 'horizontal' ? 'Right' : 'Bottom')] = radius - 1, _ref4) : {} : {};
31
34
  }) : children);
32
35
  }
33
36
  Card.Section = Section;
@@ -1,48 +1,23 @@
1
1
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
2
- import _inheritsLoose from "@babel/runtime/helpers/esm/inheritsLoose";
3
- import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
4
- import React, { Component } from 'react';
2
+ import React from 'react';
5
3
  import Box from '../Box';
6
4
  import { ItemList } from '../ItemList';
7
- import ComboboxInput from './ComboboxInput';
8
- import ComboboxItem from './ComboboxItem';
9
- import ComboboxItems from './ComboboxItems';
10
- import ComboboxPopover from './ComboboxPopover';
11
-
12
- var Combobox = /*#__PURE__*/function (_Component) {
13
- _inheritsLoose(Combobox, _Component);
14
-
15
- function Combobox() {
16
- return _Component.apply(this, arguments) || this;
17
- }
18
-
19
- var _proto = Combobox.prototype;
20
-
21
- _proto.render = function render() {
22
- var _this$props = this.props,
23
- children = _this$props.children,
24
- multiple = _this$props.multiple,
25
- onSelect = _this$props.onSelect,
26
- selectedValue = _this$props.selectedValue,
27
- restProps = _objectWithoutPropertiesLoose(_this$props, ["children", "multiple", "onSelect", "selectedValue"]);
28
-
29
- return /*#__PURE__*/React.createElement(ItemList, {
30
- selected: function selected(item) {
31
- return item.value === selectedValue;
32
- },
33
- onSelect: onSelect
34
- }, /*#__PURE__*/React.createElement(Box, restProps, children));
35
- };
36
-
37
- return Combobox;
38
- }(Component);
39
-
40
- _defineProperty(Combobox, "Input", ComboboxInput);
41
-
42
- _defineProperty(Combobox, "Item", ComboboxItem);
43
-
44
- _defineProperty(Combobox, "Items", ComboboxItems);
45
-
46
- _defineProperty(Combobox, "Popover", ComboboxPopover);
5
+ import { useThemeProps } from '../system';
6
+
7
+ function Combobox(props) {
8
+ var _useThemeProps = useThemeProps('combobox', props),
9
+ children = _useThemeProps.children,
10
+ multiple = _useThemeProps.multiple,
11
+ onSelect = _useThemeProps.onSelect,
12
+ selectedValue = _useThemeProps.selectedValue,
13
+ restProps = _objectWithoutPropertiesLoose(_useThemeProps, ["children", "multiple", "onSelect", "selectedValue"]);
14
+
15
+ return /*#__PURE__*/React.createElement(ItemList, {
16
+ selected: function selected(item) {
17
+ return item.value === selectedValue;
18
+ },
19
+ onSelect: onSelect
20
+ }, /*#__PURE__*/React.createElement(Box, restProps, children));
21
+ }
47
22
 
48
23
  export default Combobox;