@marigold/components 0.0.2 → 0.3.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 (224) hide show
  1. package/CHANGELOG.md +294 -0
  2. package/dist/ActionGroup/ActionGroup.d.ts +8 -0
  3. package/dist/ActionGroup/ActionGroup.stories.d.ts +5 -0
  4. package/dist/ActionGroup/index.d.ts +1 -0
  5. package/dist/Alert/Alert.d.ts +16 -3
  6. package/dist/Alert/Alert.stories.d.ts +5 -0
  7. package/dist/Badge/Badge.d.ts +11 -5
  8. package/dist/Badge/Badge.stories.d.ts +5 -0
  9. package/dist/Box.d.ts +2 -0
  10. package/dist/Button/Button.d.ts +9 -5
  11. package/dist/Button/Button.stories.d.ts +5 -0
  12. package/dist/Card/Card.d.ts +14 -0
  13. package/dist/Card/Card.stories.d.ts +5 -0
  14. package/dist/Card/index.d.ts +1 -0
  15. package/dist/Checkbox/Checkbox.d.ts +17 -5
  16. package/dist/Checkbox/Checkbox.stories.d.ts +5 -0
  17. package/dist/Checkbox/CheckboxIcons.d.ts +9 -0
  18. package/dist/Column/Column.d.ts +6 -4
  19. package/dist/Column/Column.stories.d.ts +5 -0
  20. package/dist/Columns/Columns.d.ts +10 -0
  21. package/dist/Columns/Columns.stories.d.ts +5 -0
  22. package/dist/Columns/index.d.ts +1 -0
  23. package/dist/Container/Container.d.ts +5 -4
  24. package/dist/Container/Container.stories.d.ts +5 -0
  25. package/dist/Dialog/Dialog.d.ts +17 -0
  26. package/dist/Dialog/Dialog.stories.d.ts +5 -0
  27. package/dist/Dialog/ModalDialog.d.ts +8 -0
  28. package/dist/Dialog/index.d.ts +1 -0
  29. package/dist/Divider/Divider.d.ts +10 -3
  30. package/dist/Divider/Divider.stories.d.ts +5 -0
  31. package/dist/Field/Field.d.ts +10 -5
  32. package/dist/Field/Field.stories.d.ts +5 -0
  33. package/dist/Image/Image.d.ts +11 -5
  34. package/dist/Image/Image.stories.d.ts +5 -0
  35. package/dist/Inline/Inline.d.ts +7 -0
  36. package/dist/Inline/Inline.stories.d.ts +5 -0
  37. package/dist/Inline/index.d.ts +1 -0
  38. package/dist/Input/Input.d.ts +10 -4
  39. package/dist/Input/Input.stories.d.ts +5 -0
  40. package/dist/Label/Label.d.ts +18 -5
  41. package/dist/Label/Label.stories.d.ts +5 -0
  42. package/dist/Link/Link.d.ts +10 -5
  43. package/dist/Link/Link.stories.d.ts +5 -0
  44. package/dist/Menu/Menu.d.ts +11 -4
  45. package/dist/Menu/Menu.stories.d.ts +5 -0
  46. package/dist/MenuItem/MenuItem.d.ts +11 -4
  47. package/dist/MenuItem/MenuItem.stories.d.ts +5 -0
  48. package/dist/Message/Message.d.ts +10 -4
  49. package/dist/Message/Message.stories.d.ts +5 -0
  50. package/dist/Provider/MarigoldProvider.d.ts +11 -0
  51. package/dist/Provider/index.d.ts +3 -0
  52. package/dist/Radio/Radio.d.ts +17 -4
  53. package/dist/Radio/RadioIcons.d.ts +10 -0
  54. package/dist/Select/ListBox.d.ts +9 -0
  55. package/dist/Select/ListBoxSection.d.ts +9 -0
  56. package/dist/Select/Option.d.ts +9 -0
  57. package/dist/Select/Popover.d.ts +9 -0
  58. package/dist/Select/Select.d.ts +27 -3
  59. package/dist/Select/Select.stories.d.ts +5 -0
  60. package/dist/Slider/Slider.d.ts +10 -4
  61. package/dist/Slider/Slider.stories.d.ts +5 -0
  62. package/dist/Stack/Stack.d.ts +7 -0
  63. package/dist/Stack/Stack.stories.d.ts +5 -0
  64. package/dist/Stack/index.d.ts +1 -0
  65. package/dist/Text/Text.d.ts +17 -7
  66. package/dist/Text/Text.stories.d.ts +5 -0
  67. package/dist/Textarea/Textarea.d.ts +15 -4
  68. package/dist/Textarea/Textarea.stories.d.ts +5 -0
  69. package/dist/ValidationMessage/ValidationMessage.d.ts +10 -4
  70. package/dist/ValidationMessage/ValidationMessage.stories.d.ts +5 -0
  71. package/dist/VisuallyHidden/VisuallyHidden.d.ts +1 -0
  72. package/dist/VisuallyHidden/VisuallyHidden.stories.d.ts +5 -0
  73. package/dist/VisuallyHidden/index.d.ts +1 -0
  74. package/dist/components.cjs.development.js +1276 -461
  75. package/dist/components.cjs.development.js.map +1 -1
  76. package/dist/components.cjs.production.min.js +1 -1
  77. package/dist/components.cjs.production.min.js.map +1 -1
  78. package/dist/components.esm.js +1229 -461
  79. package/dist/components.esm.js.map +1 -1
  80. package/dist/index.d.ts +10 -3
  81. package/dist/theme.d.ts +23 -28
  82. package/package.json +27 -4
  83. package/src/ActionGroup/ActionGroup.stories.tsx +47 -0
  84. package/src/ActionGroup/ActionGroup.test.tsx +83 -0
  85. package/src/ActionGroup/ActionGroup.tsx +32 -0
  86. package/src/ActionGroup/index.ts +1 -0
  87. package/src/Alert/Alert.stories.tsx +32 -0
  88. package/src/Alert/Alert.test.tsx +34 -23
  89. package/src/Alert/Alert.tsx +48 -24
  90. package/src/Badge/Badge.stories.tsx +38 -0
  91. package/src/Badge/Badge.test.tsx +14 -40
  92. package/src/Badge/Badge.tsx +31 -28
  93. package/src/Box.ts +2 -0
  94. package/src/Button/Button.stories.tsx +57 -0
  95. package/src/Button/Button.test.tsx +76 -13
  96. package/src/Button/Button.tsx +58 -23
  97. package/src/Card/Card.stories.tsx +41 -0
  98. package/src/Card/Card.test.tsx +71 -0
  99. package/src/Card/Card.tsx +48 -0
  100. package/src/Card/index.ts +1 -0
  101. package/src/Checkbox/Checkbox.stories.mdx +90 -112
  102. package/src/Checkbox/Checkbox.stories.tsx +78 -0
  103. package/src/Checkbox/Checkbox.test.tsx +139 -24
  104. package/src/Checkbox/Checkbox.tsx +95 -58
  105. package/src/Checkbox/CheckboxIcons.tsx +59 -0
  106. package/src/Column/Column.stories.tsx +33 -0
  107. package/src/Column/Column.test.tsx +15 -59
  108. package/src/Column/Column.tsx +21 -19
  109. package/src/Columns/Columns.stories.tsx +75 -0
  110. package/src/Columns/Columns.test.tsx +113 -0
  111. package/src/Columns/Columns.tsx +69 -0
  112. package/src/Columns/index.ts +1 -0
  113. package/src/Container/Container.stories.tsx +14 -0
  114. package/src/Container/Container.test.tsx +8 -49
  115. package/src/Container/Container.tsx +8 -19
  116. package/src/Dialog/Dialog.stories.tsx +88 -0
  117. package/src/Dialog/Dialog.test.tsx +158 -0
  118. package/src/Dialog/Dialog.tsx +130 -0
  119. package/src/Dialog/ModalDialog.tsx +76 -0
  120. package/src/Dialog/index.ts +1 -0
  121. package/src/Divider/Divider.stories.tsx +30 -0
  122. package/src/Divider/Divider.test.tsx +14 -6
  123. package/src/Divider/Divider.tsx +20 -13
  124. package/src/Field/Field.stories.tsx +110 -0
  125. package/src/Field/Field.test.tsx +75 -34
  126. package/src/Field/Field.tsx +50 -43
  127. package/src/Image/Image.stories.tsx +34 -0
  128. package/src/Image/Image.test.tsx +6 -3
  129. package/src/Image/Image.tsx +21 -15
  130. package/src/Inline/Inline.stories.tsx +39 -0
  131. package/src/Inline/Inline.test.tsx +99 -0
  132. package/src/Inline/Inline.tsx +38 -0
  133. package/src/Inline/index.ts +1 -0
  134. package/src/Input/Input.stories.tsx +54 -0
  135. package/src/Input/Input.test.tsx +9 -5
  136. package/src/Input/Input.tsx +21 -16
  137. package/src/Label/Label.stories.tsx +41 -0
  138. package/src/Label/Label.test.tsx +41 -6
  139. package/src/Label/Label.tsx +59 -18
  140. package/src/Link/Link.stories.tsx +35 -0
  141. package/src/Link/Link.test.tsx +52 -22
  142. package/src/Link/Link.tsx +40 -20
  143. package/src/Menu/Menu.stories.tsx +62 -0
  144. package/src/Menu/Menu.test.tsx +13 -7
  145. package/src/Menu/Menu.tsx +44 -38
  146. package/src/MenuItem/MenuItem.stories.tsx +30 -0
  147. package/src/MenuItem/MenuItem.test.tsx +23 -14
  148. package/src/MenuItem/MenuItem.tsx +29 -18
  149. package/src/Message/Message.stories.tsx +30 -0
  150. package/src/Message/Message.test.tsx +5 -2
  151. package/src/Message/Message.tsx +48 -40
  152. package/src/Provider/MarigoldProvider.test.tsx +136 -0
  153. package/src/Provider/MarigoldProvider.tsx +47 -0
  154. package/src/Provider/index.ts +4 -0
  155. package/src/Radio/Radio.stories.mdx +91 -94
  156. package/src/Radio/Radio.test.tsx +92 -16
  157. package/src/Radio/Radio.tsx +114 -50
  158. package/src/Radio/RadioIcons.tsx +39 -0
  159. package/src/Select/ListBox.tsx +40 -0
  160. package/src/Select/ListBoxSection.tsx +40 -0
  161. package/src/Select/Option.tsx +48 -0
  162. package/src/Select/Popover.tsx +50 -0
  163. package/src/Select/Select.stories.tsx +81 -0
  164. package/src/Select/Select.test.tsx +311 -43
  165. package/src/Select/Select.tsx +174 -28
  166. package/src/Slider/Slider.stories.tsx +24 -0
  167. package/src/Slider/Slider.test.tsx +11 -7
  168. package/src/Slider/Slider.tsx +30 -15
  169. package/src/Stack/Stack.stories.tsx +57 -0
  170. package/src/Stack/Stack.test.tsx +138 -0
  171. package/src/Stack/Stack.tsx +39 -0
  172. package/src/Stack/index.ts +1 -0
  173. package/src/Text/Text.stories.tsx +61 -0
  174. package/src/Text/Text.test.tsx +41 -36
  175. package/src/Text/Text.tsx +55 -29
  176. package/src/Textarea/Textarea.stories.tsx +64 -0
  177. package/src/Textarea/Textarea.test.tsx +41 -5
  178. package/src/Textarea/Textarea.tsx +57 -17
  179. package/src/ValidationMessage/ValidationMessage.stories.tsx +27 -0
  180. package/src/ValidationMessage/ValidationMessage.test.tsx +19 -14
  181. package/src/ValidationMessage/ValidationMessage.tsx +36 -21
  182. package/src/VisuallyHidden/VisuallyHidden.stories.tsx +19 -0
  183. package/src/VisuallyHidden/VisuallyHidden.test.tsx +10 -0
  184. package/src/VisuallyHidden/VisuallyHidden.tsx +1 -0
  185. package/src/VisuallyHidden/index.ts +1 -0
  186. package/src/index.ts +11 -3
  187. package/src/theme.ts +49 -28
  188. package/dist/Heading/Heading.d.ts +0 -5
  189. package/dist/Heading/index.d.ts +0 -1
  190. package/dist/Hidden/Hidden.d.ts +0 -6
  191. package/dist/Hidden/index.d.ts +0 -1
  192. package/dist/Svg/Svg.d.ts +0 -6
  193. package/dist/Svg/index.d.ts +0 -1
  194. package/src/Alert/Alert.stories.mdx +0 -49
  195. package/src/Badge/Badge.stories.mdx +0 -41
  196. package/src/Button/Button.stories.mdx +0 -155
  197. package/src/Column/Column.stories.mdx +0 -76
  198. package/src/Container/Container.stories.mdx +0 -42
  199. package/src/Divider/Divider.stories.mdx +0 -42
  200. package/src/Field/Field.stories.mdx +0 -57
  201. package/src/Heading/Heading.stories.mdx +0 -79
  202. package/src/Heading/Heading.test.tsx +0 -63
  203. package/src/Heading/Heading.tsx +0 -22
  204. package/src/Heading/index.ts +0 -1
  205. package/src/Hidden/Hidden.stories.mdx +0 -64
  206. package/src/Hidden/Hidden.test.tsx +0 -87
  207. package/src/Hidden/Hidden.tsx +0 -25
  208. package/src/Hidden/index.ts +0 -1
  209. package/src/Image/Image.stories.mdx +0 -40
  210. package/src/Input/Input.stories.mdx +0 -44
  211. package/src/Label/Label.stories.mdx +0 -34
  212. package/src/Link/Link.stories.mdx +0 -37
  213. package/src/Menu/Menu.stories.mdx +0 -47
  214. package/src/MenuItem/MenuItem.stories.mdx +0 -32
  215. package/src/Message/Message.stories.mdx +0 -43
  216. package/src/Select/Select.stories.mdx +0 -43
  217. package/src/Slider/Slider.stories.mdx +0 -57
  218. package/src/Svg/Svg.stories.mdx +0 -47
  219. package/src/Svg/Svg.test.tsx +0 -76
  220. package/src/Svg/Svg.tsx +0 -31
  221. package/src/Svg/index.ts +0 -1
  222. package/src/Text/Text.stories.mdx +0 -60
  223. package/src/Textarea/Textarea.stories.mdx +0 -34
  224. package/src/ValidationMessage/ValidationMessage.stories.mdx +0 -36
@@ -2,11 +2,44 @@
2
2
 
3
3
  function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }
4
4
 
5
- var React = _interopDefault(require('react'));
5
+ var React = require('react');
6
+ var React__default = _interopDefault(React);
7
+ var flattenChildren = _interopDefault(require('react-keyed-flatten-children'));
6
8
  var system = require('@marigold/system');
7
9
  var icons = require('@marigold/icons');
8
- var components = require('@marigold/components');
9
- var b2bTheme = _interopDefault(require('@marigold/theme-b2b'));
10
+ var button = require('@react-aria/button');
11
+ var focus = require('@react-aria/focus');
12
+ var visuallyHidden = require('@react-aria/visually-hidden');
13
+ var checkbox = require('@react-aria/checkbox');
14
+ var toggle = require('@react-stately/toggle');
15
+ var overlays = require('@react-stately/overlays');
16
+ var overlays$1 = require('@react-aria/overlays');
17
+ var dialog = require('@react-aria/dialog');
18
+ var link = require('@react-aria/link');
19
+ var ssr = require('@react-aria/ssr');
20
+ var select = require('@react-stately/select');
21
+ var utils = require('@react-aria/utils');
22
+ var select$1 = require('@react-aria/select');
23
+ var listbox = require('@react-aria/listbox');
24
+ var collections = require('@react-stately/collections');
25
+
26
+ function _extends() {
27
+ _extends = Object.assign || function (target) {
28
+ for (var i = 1; i < arguments.length; i++) {
29
+ var source = arguments[i];
30
+
31
+ for (var key in source) {
32
+ if (Object.prototype.hasOwnProperty.call(source, key)) {
33
+ target[key] = source[key];
34
+ }
35
+ }
36
+ }
37
+
38
+ return target;
39
+ };
40
+
41
+ return _extends.apply(this, arguments);
42
+ }
10
43
 
11
44
  function _objectWithoutPropertiesLoose(source, excluded) {
12
45
  if (source == null) return {};
@@ -23,585 +56,1367 @@ function _objectWithoutPropertiesLoose(source, excluded) {
23
56
  return target;
24
57
  }
25
58
 
26
- var Alert = /*#__PURE__*/system.system(function (_ref) {
27
- var _ref$variant = _ref.variant,
28
- variant = _ref$variant === void 0 ? 'info' : _ref$variant,
29
- className = _ref.className,
59
+ function _unsupportedIterableToArray(o, minLen) {
60
+ if (!o) return;
61
+ if (typeof o === "string") return _arrayLikeToArray(o, minLen);
62
+ var n = Object.prototype.toString.call(o).slice(8, -1);
63
+ if (n === "Object" && o.constructor) n = o.constructor.name;
64
+ if (n === "Map" || n === "Set") return Array.from(o);
65
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);
66
+ }
67
+
68
+ function _arrayLikeToArray(arr, len) {
69
+ if (len == null || len > arr.length) len = arr.length;
70
+
71
+ for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
72
+
73
+ return arr2;
74
+ }
75
+
76
+ function _createForOfIteratorHelperLoose(o, allowArrayLike) {
77
+ var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"];
78
+ if (it) return (it = it.call(o)).next.bind(it);
79
+
80
+ if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") {
81
+ if (it) o = it;
82
+ var i = 0;
83
+ return function () {
84
+ if (i >= o.length) return {
85
+ done: true
86
+ };
87
+ return {
88
+ done: false,
89
+ value: o[i++]
90
+ };
91
+ };
92
+ }
93
+
94
+ throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
95
+ }
96
+
97
+ var _excluded = ["space", "align", "children"];
98
+ var ALIGNMENT = {
99
+ top: 'flex-start',
100
+ center: 'center',
101
+ bottom: 'flex-end'
102
+ };
103
+ var Inline = function Inline(_ref) {
104
+ var _ref$space = _ref.space,
105
+ space = _ref$space === void 0 ? 'none' : _ref$space,
106
+ _ref$align = _ref.align,
107
+ align = _ref$align === void 0 ? 'center' : _ref$align,
30
108
  children = _ref.children,
31
- props = _objectWithoutPropertiesLoose(_ref, ["variant", "className", "children"]);
32
-
33
- var classNames = system.useStyles({
34
- variant: "alerts." + variant,
35
- display: 'flex',
36
- alignItems: 'center',
37
- px: 3,
38
- py: 2,
39
- borderRadius: 4
40
- }, className);
41
- return React.createElement("div", Object.assign({
42
- className: classNames
109
+ props = _objectWithoutPropertiesLoose(_ref, _excluded);
110
+
111
+ return React__default.createElement(system.Box, Object.assign({
112
+ display: "inline-flex",
113
+ css: {
114
+ '> * + *': {
115
+ pl: space
116
+ }
117
+ },
118
+ alignItems: ALIGNMENT[align]
119
+ }, props), React.Children.map(flattenChildren(children), function (child) {
120
+ return React__default.createElement(system.Box, null, React__default.cloneElement(child, {}, child.props.children));
121
+ }));
122
+ };
123
+
124
+ var _excluded$1 = ["space", "align", "children"];
125
+ var ALIGNMENT$1 = {
126
+ left: 'flex-start',
127
+ center: 'center',
128
+ right: 'flex-end'
129
+ };
130
+ var Stack = function Stack(_ref) {
131
+ var _ref$space = _ref.space,
132
+ space = _ref$space === void 0 ? 'none' : _ref$space,
133
+ _ref$align = _ref.align,
134
+ align = _ref$align === void 0 ? 'left' : _ref$align,
135
+ children = _ref.children,
136
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$1);
137
+
138
+ return React__default.createElement(system.Box, Object.assign({}, props, {
139
+ display: "flex",
140
+ flexDirection: "column",
141
+ alignItems: ALIGNMENT$1[align],
142
+ css: {
143
+ '> * + *': {
144
+ pt: space
145
+ }
146
+ }
147
+ }), React.Children.map(flattenChildren(children), function (child) {
148
+ return React__default.createElement(system.Box, null, React__default.cloneElement(child, {}, child.props.children));
149
+ }));
150
+ };
151
+
152
+ var _excluded$2 = ["space", "verticalAlignment", "children"];
153
+ // ---------------
154
+
155
+ var ActionGroup = function ActionGroup(_ref) {
156
+ var _ref$space = _ref.space,
157
+ space = _ref$space === void 0 ? 'none' : _ref$space,
158
+ _ref$verticalAlignmen = _ref.verticalAlignment,
159
+ verticalAlignment = _ref$verticalAlignmen === void 0 ? false : _ref$verticalAlignmen,
160
+ children = _ref.children,
161
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$2);
162
+
163
+ return verticalAlignment ? React__default.createElement(Stack, Object.assign({
164
+ space: space
165
+ }, props), children) : React__default.createElement(Inline, Object.assign({
166
+ space: space
43
167
  }, props), children);
44
- });
168
+ };
169
+
170
+ var _excluded$3 = ["variant", "children"];
171
+ var ICON_MAP = {
172
+ success: icons.Check,
173
+ warning: icons.Notification,
174
+ error: icons.Exclamation
175
+ }; // Component
176
+ // ---------------
45
177
 
46
- var Badge = /*#__PURE__*/system.system(function (_ref) {
178
+ var Alert = function Alert(_ref) {
47
179
  var _ref$variant = _ref.variant,
48
- variant = _ref$variant === void 0 ? 'badge' : _ref$variant,
180
+ variant = _ref$variant === void 0 ? 'success' : _ref$variant,
181
+ children = _ref.children,
182
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$3);
183
+
184
+ var Icon = ICON_MAP[variant];
185
+ return React__default.createElement(system.Box, Object.assign({}, props, {
186
+ display: "flex",
187
+ variant: "alert." + variant
188
+ }), React__default.createElement(system.Box, {
189
+ display: "inline-block",
190
+ alignItems: "center",
191
+ width: "32px",
192
+ height: "32px",
193
+ bg: variant
194
+ }, React__default.createElement(system.Box, {
195
+ as: Icon,
196
+ size: 12,
197
+ color: "#fff",
198
+ bg: variant,
199
+ m: 10
200
+ })), React__default.createElement(system.Box, {
201
+ mx: "16px"
202
+ }, children));
203
+ };
204
+
205
+ var _excluded$4 = ["variant", "bgColor", "borderColor", "children"];
206
+ // ---------------
207
+
208
+ var Badge = function Badge(_ref) {
209
+ var _ref$variant = _ref.variant,
210
+ variant = _ref$variant === void 0 ? '' : _ref$variant,
211
+ _ref$bgColor = _ref.bgColor,
212
+ bgColor = _ref$bgColor === void 0 ? 'transparent' : _ref$bgColor,
49
213
  _ref$borderColor = _ref.borderColor,
50
- borderColor = _ref$borderColor === void 0 ? 'inherit' : _ref$borderColor,
51
- _ref$backgroundColor = _ref.backgroundColor,
52
- backgroundColor = _ref$backgroundColor === void 0 ? 'inherit' : _ref$backgroundColor,
53
- className = _ref.className,
214
+ borderColor = _ref$borderColor === void 0 ? 'transparent' : _ref$borderColor,
54
215
  children = _ref.children,
55
- props = _objectWithoutPropertiesLoose(_ref, ["variant", "borderColor", "backgroundColor", "className", "children"]);
56
-
57
- var classNames = system.useStyles({
58
- variant: "content." + variant,
59
- border: '1px solid ' + borderColor,
60
- bg: backgroundColor
61
- }, className);
62
- return React.createElement("div", Object.assign({
63
- className: classNames
216
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$4);
217
+
218
+ return React__default.createElement(system.Box, Object.assign({
219
+ css: {
220
+ bg: bgColor,
221
+ borderColor: borderColor
222
+ },
223
+ variant: "badge." + variant
64
224
  }, props), children);
225
+ };
226
+
227
+ var _excluded$5 = ["as", "variant", "size", "space", "disabled", "children", "className"];
228
+ // ---------------
229
+
230
+ var Button = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
231
+ var _ref$as = _ref.as,
232
+ as = _ref$as === void 0 ? 'button' : _ref$as,
233
+ _ref$variant = _ref.variant,
234
+ variant = _ref$variant === void 0 ? 'primary' : _ref$variant,
235
+ _ref$size = _ref.size,
236
+ size = _ref$size === void 0 ? 'large' : _ref$size,
237
+ _ref$space = _ref.space,
238
+ space = _ref$space === void 0 ? 'none' : _ref$space,
239
+ disabled = _ref.disabled,
240
+ children = _ref.children,
241
+ className = _ref.className,
242
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$5);
243
+
244
+ var _useButton = button.useButton(_extends({}, props, {
245
+ elementType: typeof as === 'string' ? as : 'span',
246
+ isDisabled: disabled
247
+ }), ref),
248
+ buttonProps = _useButton.buttonProps;
249
+
250
+ return React__default.createElement(system.Box, Object.assign({}, buttonProps, props, {
251
+ as: as,
252
+ display: "inline-flex",
253
+ alignItems: "center",
254
+ variant: ["button." + variant, "button." + size],
255
+ className: className,
256
+ ref: ref,
257
+ css: {
258
+ columnGap: space
259
+ }
260
+ }), children);
65
261
  });
66
262
 
67
- var Button = /*#__PURE__*/system.system(function (_ref) {
263
+ var _excluded$6 = ["variant", "title", "width", "className", "children"];
264
+ // ---------------
265
+
266
+ var Card = function Card(_ref) {
68
267
  var _ref$variant = _ref.variant,
69
- variant = _ref$variant === void 0 ? 'primary.large' : _ref$variant,
268
+ variant = _ref$variant === void 0 ? '' : _ref$variant,
269
+ title = _ref.title,
270
+ width = _ref.width,
70
271
  className = _ref.className,
71
272
  children = _ref.children,
72
- props = _objectWithoutPropertiesLoose(_ref, ["variant", "className", "children"]);
73
-
74
- var classNames = system.useStyles({
75
- variant: "button." + variant
76
- }, className);
77
- return React.createElement("button", Object.assign({
78
- className: classNames
79
- }, props), React.createElement("span", {
80
- className: system.useStyles({
81
- display: 'inline-flex',
82
- alignItems: 'center'
83
- })
84
- }, children));
85
- });
273
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$6);
86
274
 
87
- var Checkbox = /*#__PURE__*/system.system(function (_ref) {
88
- var id = _ref.id,
89
- _ref$variant = _ref.variant,
90
- variant = _ref$variant === void 0 ? 'checkbox' : _ref$variant,
91
- label = _ref.label,
92
- required = _ref.required,
93
- className = _ref.className,
94
- props = _objectWithoutPropertiesLoose(_ref, ["id", "variant", "label", "required", "className"]);
95
-
96
- var checkboxStyles = system.useStyles({
97
- position: 'absolute',
98
- opacity: 0,
99
- zIndex: -1,
100
- width: 1,
101
- height: 1,
102
- overflow: 'hidden'
103
- });
104
- var checkboxIconStyles = system.useStyles({
105
- variant: "form." + variant,
106
- ariaHidden: 'true',
107
- mr: 2,
108
- verticalAlign: 'middle',
109
- ':hover': {
110
- cursor: 'pointer'
275
+ return React__default.createElement(system.Box, Object.assign({}, props, {
276
+ variant: "card." + variant,
277
+ maxWidth: width,
278
+ className: className
279
+ }), title && React__default.createElement(system.Box, {
280
+ as: "h2",
281
+ variant: "text.h2",
282
+ pb: "small"
283
+ }, title), children);
284
+ };
285
+
286
+ var CheckboxIcon = function CheckboxIcon(_ref) {
287
+ var _ref$variant = _ref.variant,
288
+ variant = _ref$variant === void 0 ? '' : _ref$variant,
289
+ _ref$checked = _ref.checked,
290
+ checked = _ref$checked === void 0 ? false : _ref$checked,
291
+ _ref$disabled = _ref.disabled,
292
+ disabled = _ref$disabled === void 0 ? false : _ref$disabled,
293
+ _ref$error = _ref.error,
294
+ error = _ref$error === void 0 ? false : _ref$error;
295
+ var conditionalStates = disabled ? {
296
+ disabled: disabled
297
+ } : {
298
+ checked: checked,
299
+ error: error
300
+ };
301
+ return React__default.createElement(system.SVG, {
302
+ width: "16",
303
+ height: "32",
304
+ viewBox: "0 0 16 32",
305
+ fill: "none",
306
+ "aria-hidden": "true"
307
+ }, React__default.createElement(system.Box, {
308
+ as: "rect",
309
+ x: "0.5",
310
+ y: "8.5",
311
+ width: "15px",
312
+ height: "15px",
313
+ rx: "1.5",
314
+ variant: system.conditional("checkbox." + variant, conditionalStates)
315
+ }), checked && React__default.createElement(system.Box, {
316
+ __baseCSS: {
317
+ fill: 'gray00'
111
318
  },
112
- 'input:disabled ~ &': {
113
- color: 'muted',
114
- cursor: 'not-allowed'
319
+ as: "path",
320
+ fillRule: "evenodd",
321
+ clipRule: "evenodd",
322
+ d: "M13.9571 12.8338L12.4085 11.2852L6.08699 17.6007L3.59887 15.1126L2.04163 16.6588L6.08682 20.704L13.9571 12.8338Z"
323
+ }));
324
+ };
325
+
326
+ var _excluded$7 = ["variant", "required", "color", "children"],
327
+ _excluded2 = ["required", "children"];
328
+ var LabelBase = function LabelBase(_ref) {
329
+ var _ref$variant = _ref.variant,
330
+ variant = _ref$variant === void 0 ? 'above' : _ref$variant,
331
+ _ref$color = _ref.color,
332
+ color = _ref$color === void 0 ? 'text' : _ref$color,
333
+ children = _ref.children,
334
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$7);
335
+
336
+ return React__default.createElement(system.Box, Object.assign({}, props, {
337
+ as: "label",
338
+ __baseCSS: {
339
+ color: color
340
+ },
341
+ variant: "label." + variant
342
+ }), children);
343
+ };
344
+ var Label = function Label(_ref2) {
345
+ var required = _ref2.required,
346
+ children = _ref2.children,
347
+ props = _objectWithoutPropertiesLoose(_ref2, _excluded2);
348
+
349
+ return required ? React__default.createElement(system.Box, {
350
+ as: "span",
351
+ display: "inline-flex",
352
+ alignItems: "center"
353
+ }, React__default.createElement(LabelBase, Object.assign({}, props), children), required && React__default.createElement(system.Box, {
354
+ as: icons.Required,
355
+ size: 16,
356
+ css: {
357
+ color: 'error'
115
358
  }
116
- }, className);
117
- var checkbox = React.createElement("div", {
118
- className: system.useStyles({
119
- display: 'inline-block'
120
- })
121
- }, React.createElement("input", Object.assign({
359
+ })) : React__default.createElement(LabelBase, Object.assign({}, props), children);
360
+ };
361
+
362
+ var _excluded$8 = ["variant", "children", "className"];
363
+ // ---------------
364
+
365
+ var ValidationMessage = function ValidationMessage(_ref) {
366
+ var _ref$variant = _ref.variant,
367
+ variant = _ref$variant === void 0 ? 'error' : _ref$variant,
368
+ children = _ref.children,
369
+ className = _ref.className,
370
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$8);
371
+
372
+ return React__default.createElement(system.Box, Object.assign({
373
+ as: "span",
374
+ display: "flex",
375
+ alignItems: "center",
376
+ variant: "validation." + variant,
377
+ className: className
378
+ }, props), children);
379
+ };
380
+
381
+ var _excluded$9 = ["error"],
382
+ _excluded2$1 = ["label", "required", "labelVariant", "error", "errorMessage"];
383
+
384
+ var CheckboxInput = function CheckboxInput(_ref) {
385
+ var error = _ref.error,
386
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$9);
387
+
388
+ var state = toggle.useToggleState(props);
389
+ var ref = React__default.useRef(null);
390
+
391
+ var _useCheckbox = checkbox.useCheckbox(props, state, ref),
392
+ inputProps = _useCheckbox.inputProps;
393
+
394
+ var _useFocusRing = focus.useFocusRing(),
395
+ focusProps = _useFocusRing.focusProps;
396
+
397
+ return React__default.createElement(system.Box, {
398
+ pr: "xsmall"
399
+ }, React__default.createElement(visuallyHidden.VisuallyHidden, null, React__default.createElement(system.Box, Object.assign({
400
+ as: "input",
122
401
  type: "checkbox",
123
- id: id,
124
- className: checkboxStyles
125
- }, props)), props.checked ? React.createElement(icons.SquareChecked, {
126
- className: checkboxIconStyles
127
- }) : React.createElement(icons.SquareUnchecked, {
128
- className: checkboxIconStyles
402
+ disabled: props.disabled
403
+ }, inputProps, focusProps, {
404
+ ref: ref
405
+ }, props))), React__default.createElement(CheckboxIcon, {
406
+ checked: props.checked,
407
+ variant: props.variant,
408
+ disabled: props.disabled,
409
+ error: error
129
410
  }));
130
- return React.createElement(React.Fragment, null, label ? React.createElement(components.Label, {
131
- htmlFor: id
132
- }, checkbox, label, required ? React.createElement(icons.Required, {
411
+ };
412
+
413
+ var Checkbox = function Checkbox(_ref2) {
414
+ var label = _ref2.label,
415
+ required = _ref2.required,
416
+ _ref2$labelVariant = _ref2.labelVariant,
417
+ labelVariant = _ref2$labelVariant === void 0 ? 'inline' : _ref2$labelVariant,
418
+ error = _ref2.error,
419
+ errorMessage = _ref2.errorMessage,
420
+ props = _objectWithoutPropertiesLoose(_ref2, _excluded2$1);
421
+
422
+ return React__default.createElement(React__default.Fragment, null, React__default.createElement(system.Box, {
423
+ as: Label,
424
+ __baseCSS: {
425
+ ':hover': {
426
+ cursor: props.disabled ? 'not-allowed' : 'pointer'
427
+ }
428
+ },
429
+ htmlFor: props.id,
430
+ required: required,
431
+ variant: "label." + labelVariant,
432
+ color: props.disabled ? 'disabled' : 'text'
433
+ }, React__default.createElement(system.Box, Object.assign({
434
+ as: CheckboxInput,
435
+ error: error
436
+ }, props)), label), error && errorMessage && React__default.createElement(ValidationMessage, null, React__default.createElement(icons.Exclamation, {
133
437
  size: 16
134
- }) : '') : React.createElement(React.Fragment, null, checkbox));
135
- });
438
+ }), errorMessage));
439
+ };
136
440
 
137
- var Column = /*#__PURE__*/system.system(function (_ref) {
138
- var _ref$variant = _ref.variant,
139
- variant = _ref$variant === void 0 ? 'column' : _ref$variant,
140
- _ref$width = _ref.width,
441
+ var _excluded$a = ["width", "children"];
442
+
443
+ var transform = function transform(width) {
444
+ if (Array.isArray(width)) {
445
+ return width.map(function (v) {
446
+ return v / 12 * 100 + "%";
447
+ });
448
+ }
449
+
450
+ return width / 12 * 100 + "%";
451
+ };
452
+
453
+ var Column = function Column(_ref) {
454
+ var _ref$width = _ref.width,
141
455
  width = _ref$width === void 0 ? 12 : _ref$width,
456
+ children = _ref.children,
457
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$a);
458
+
459
+ return React__default.createElement(system.Box, Object.assign({}, props, {
460
+ width: transform(width)
461
+ }), children);
462
+ };
463
+
464
+ var _excluded$b = ["space", "horizontalAlign", "verticalAlign", "className", "children"];
465
+
466
+ var useAlignment = function useAlignment(direction) {
467
+ switch (direction) {
468
+ case 'right':
469
+ return 'flex-end';
470
+
471
+ case 'bottom':
472
+ return 'flex-end';
473
+
474
+ case 'center':
475
+ return 'center';
476
+ }
477
+
478
+ return 'flex-start';
479
+ };
480
+
481
+ var Columns = function Columns(_ref) {
482
+ var _ref$space = _ref.space,
483
+ space = _ref$space === void 0 ? 'none' : _ref$space,
484
+ _ref$horizontalAlign = _ref.horizontalAlign,
485
+ horizontalAlign = _ref$horizontalAlign === void 0 ? 'left' : _ref$horizontalAlign,
486
+ _ref$verticalAlign = _ref.verticalAlign,
487
+ verticalAlign = _ref$verticalAlign === void 0 ? 'top' : _ref$verticalAlign,
142
488
  className = _ref.className,
143
489
  children = _ref.children,
144
- props = _objectWithoutPropertiesLoose(_ref, ["variant", "width", "className", "children"]);
145
-
146
- var classNames = system.useStyles({
147
- variant: "layout." + variant,
148
- width: width / 12 * 100 + "%"
149
- }, className);
150
- return React.createElement("div", Object.assign({
151
- className: classNames
152
- }, props), children);
490
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$b);
491
+
492
+ var justifyContent = useAlignment(horizontalAlign);
493
+ var alignItems = useAlignment(verticalAlign);
494
+ /**
495
+ * transform space string to space value from theme
496
+ */
497
+
498
+ var _useTheme = system.useTheme(),
499
+ css = _useTheme.css;
500
+
501
+ var spaceObject = css({
502
+ space: space
503
+ });
504
+ var spaceValue = Object.values(spaceObject)[0];
505
+ return React__default.createElement(system.Box, {
506
+ p: space,
507
+ display: "flex",
508
+ className: className
509
+ }, React__default.createElement(system.Box, Object.assign({
510
+ width: "calc(100% + " + spaceValue + "px)",
511
+ m: -spaceValue / 2 + "px",
512
+ display: "flex",
513
+ flexWrap: "wrap",
514
+ alignItems: alignItems,
515
+ justifyContent: justifyContent
516
+ }, props), React.Children.map(flattenChildren(children), function (child) {
517
+ return React__default.cloneElement(child, {}, React__default.createElement(system.Box, {
518
+ css: {
519
+ p: spaceValue / 2 + "px"
520
+ }
521
+ }, child.props.children));
522
+ })));
523
+ };
524
+
525
+ var _excluded$c = ["as", "variant", "children", "className", "align", "color", "cursor", "outline", "userSelect"];
526
+ // ---------------
527
+
528
+ var Text = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
529
+ var _ref$as = _ref.as,
530
+ as = _ref$as === void 0 ? 'span' : _ref$as,
531
+ _ref$variant = _ref.variant,
532
+ variant = _ref$variant === void 0 ? 'body' : _ref$variant,
533
+ children = _ref.children,
534
+ className = _ref.className,
535
+ align = _ref.align,
536
+ color = _ref.color,
537
+ cursor = _ref.cursor,
538
+ outline = _ref.outline,
539
+ userSelect = _ref.userSelect,
540
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$c);
541
+
542
+ return React__default.createElement(system.Box, Object.assign({}, props, {
543
+ as: as,
544
+ variant: "text." + variant,
545
+ css: {
546
+ textAlign: align,
547
+ color: color,
548
+ cursor: cursor,
549
+ outline: outline,
550
+ userSelect: userSelect
551
+ },
552
+ className: className,
553
+ ref: ref
554
+ }), children);
153
555
  });
154
556
 
155
- var Divider = /*#__PURE__*/system.system(function (_ref) {
557
+ var _excluded$d = ["variant", "backdropVariant", "children"],
558
+ _excluded2$2 = ["isDismissable", "isOpen", "onClose"];
559
+ // ---------------
560
+
561
+ var ModalDialog = function ModalDialog(_ref) {
562
+ var variant = _ref.variant,
563
+ _ref$backdropVariant = _ref.backdropVariant,
564
+ backdropVariant = _ref$backdropVariant === void 0 ? 'backdrop' : _ref$backdropVariant,
565
+ children = _ref.children,
566
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$d);
567
+
568
+ var isDismissable = props.isDismissable,
569
+ isOpen = props.isOpen,
570
+ onClose = props.onClose,
571
+ restProps = _objectWithoutPropertiesLoose(props, _excluded2$2); // Handle interacting outside the dialog and pressing
572
+ // the Escape key to close the modal.
573
+
574
+
575
+ var ref = React__default.useRef();
576
+
577
+ var _useOverlay = overlays$1.useOverlay({
578
+ isDismissable: isDismissable,
579
+ isOpen: isOpen,
580
+ onClose: onClose
581
+ }, ref),
582
+ overlayProps = _useOverlay.overlayProps,
583
+ underlayProps = _useOverlay.underlayProps; // Prevent scrolling while the modal is open, and hide content
584
+ // outside the modal from screen readers.
585
+
586
+
587
+ overlays$1.usePreventScroll();
588
+
589
+ var _useModal = overlays$1.useModal(),
590
+ modalProps = _useModal.modalProps;
591
+
592
+ var _useDialog = dialog.useDialog(props, ref),
593
+ dialogProps = _useDialog.dialogProps;
594
+
595
+ return React__default.createElement(system.Box, Object.assign({
596
+ __baseCSS: {
597
+ display: 'grid',
598
+ placeItems: 'center',
599
+ position: 'fixed',
600
+ zIndex: 100,
601
+ top: 0,
602
+ left: 0,
603
+ bottom: 0,
604
+ right: 0
605
+ },
606
+ variant: "dialog." + backdropVariant
607
+ }, underlayProps), React__default.createElement(focus.FocusScope, {
608
+ contain: true,
609
+ restoreFocus: true,
610
+ autoFocus: true
611
+ }, React__default.createElement(system.Box, Object.assign({}, overlayProps, dialogProps, modalProps, {
612
+ ref: ref,
613
+ variant: variant ? "dialog." + variant : "dialog"
614
+ }, restProps), children)));
615
+ };
616
+
617
+ var _excluded$e = ["backdropVariant", "children", "className", "close", "isOpen", "title", "variant"];
618
+ // ---------------
619
+
620
+ var Dialog = function Dialog(_ref) {
621
+ var backdropVariant = _ref.backdropVariant,
622
+ children = _ref.children,
623
+ className = _ref.className,
624
+ close = _ref.close,
625
+ isOpen = _ref.isOpen,
626
+ title = _ref.title,
627
+ variant = _ref.variant,
628
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$e);
629
+
630
+ var closeButtonRef = React__default.useRef(); // useButton ensures that focus management is handled correctly,
631
+ // across all browsers. Focus is restored to the button once the
632
+ // dialog closes.
633
+
634
+ var _useButton = button.useButton({
635
+ onPress: function onPress() {
636
+ return close();
637
+ }
638
+ }, closeButtonRef),
639
+ closeButtonProps = _useButton.buttonProps;
640
+
641
+ return React__default.createElement(overlays$1.OverlayContainer, null, React__default.createElement(ModalDialog, Object.assign({
642
+ variant: variant,
643
+ backdropVariant: backdropVariant,
644
+ isOpen: isOpen,
645
+ onClose: close,
646
+ isDismissable: true
647
+ }, props), React__default.createElement(system.Box, {
648
+ __baseCSS: {
649
+ display: 'flex',
650
+ justifyContent: 'space-between',
651
+ borderRadius: 'small',
652
+ pl: 'large',
653
+ pb: 'large'
654
+ },
655
+ className: className
656
+ }, React__default.createElement(system.Box, {
657
+ pt: "medium"
658
+ }, title && React__default.createElement(Text, {
659
+ as: "h4",
660
+ variant: "headline4"
661
+ }, title), children), React__default.createElement(system.Box, {
662
+ __baseCSS: {
663
+ display: 'flex',
664
+ justifyContent: 'flex-end',
665
+ alignItems: 'start',
666
+ paddingTop: 'xsmall',
667
+ paddingX: 'xsmall'
668
+ }
669
+ }, React__default.createElement(system.Box, Object.assign({
670
+ as: Button,
671
+ __baseCSS: {
672
+ color: 'text',
673
+ bg: 'transparent',
674
+ lineHeight: 'xsmall',
675
+ px: 'xxsmall',
676
+ ':hover': {
677
+ color: 'text',
678
+ bg: 'transparent',
679
+ cursor: 'pointer'
680
+ },
681
+ ':focus': {
682
+ outline: 0
683
+ }
684
+ }
685
+ }, closeButtonProps, {
686
+ ref: closeButtonRef
687
+ }), React__default.createElement(icons.Close, {
688
+ size: 16
689
+ }))))));
690
+ }; // get the overlayTriggerState and openButton props for using the dialog component
691
+
692
+ var useDialogButtonProps = function useDialogButtonProps() {
693
+ var state = overlays.useOverlayTriggerState({});
694
+ var openButtonRef = React__default.useRef();
695
+
696
+ var _useButton2 = button.useButton({
697
+ onPress: function onPress() {
698
+ return state.open();
699
+ }
700
+ }, openButtonRef),
701
+ openButtonProps = _useButton2.buttonProps;
702
+
703
+ return {
704
+ state: state,
705
+ openButtonProps: openButtonProps,
706
+ openButtonRef: openButtonRef
707
+ };
708
+ };
709
+
710
+ var _excluded$f = ["variant"];
711
+ // ---------------
712
+
713
+ var Divider = function Divider(_ref) {
156
714
  var _ref$variant = _ref.variant,
157
715
  variant = _ref$variant === void 0 ? 'regular' : _ref$variant,
158
- className = _ref.className,
159
- props = _objectWithoutPropertiesLoose(_ref, ["variant", "className"]);
716
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$f);
160
717
 
161
- var classNames = system.useStyles({
718
+ return React__default.createElement(system.Box, Object.assign({}, props, {
719
+ as: "hr",
162
720
  variant: "divider." + variant
163
- }, className);
164
- return React.createElement("hr", Object.assign({
165
- className: classNames
166
- }, props));
167
- });
721
+ }));
722
+ };
168
723
 
169
- var Field = /*#__PURE__*/system.system(function (_ref) {
724
+ var _excluded$g = ["variant", "type"];
725
+ // ---------------
726
+
727
+ var Input = function Input(_ref) {
170
728
  var _ref$variant = _ref.variant,
171
- variant = _ref$variant === void 0 ? 'field' : _ref$variant,
729
+ variant = _ref$variant === void 0 ? '' : _ref$variant,
172
730
  _ref$type = _ref.type,
173
731
  type = _ref$type === void 0 ? 'text' : _ref$type,
732
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$g);
733
+
734
+ return React__default.createElement(system.Box, Object.assign({}, props, {
735
+ as: "input",
736
+ type: type,
737
+ variant: "input." + variant
738
+ }));
739
+ };
740
+
741
+ var _excluded$h = ["type", "variant", "labelVariant", "htmlFor", "label", "required", "error", "errorMessage", "disabled"];
742
+ // ---------------
743
+
744
+ var Field = function Field(_ref) {
745
+ var _ref$type = _ref.type,
746
+ type = _ref$type === void 0 ? 'text' : _ref$type,
747
+ _ref$variant = _ref.variant,
748
+ variant = _ref$variant === void 0 ? '' : _ref$variant,
749
+ _ref$labelVariant = _ref.labelVariant,
750
+ labelVariant = _ref$labelVariant === void 0 ? 'above' : _ref$labelVariant,
174
751
  htmlFor = _ref.htmlFor,
175
752
  label = _ref.label,
753
+ required = _ref.required,
176
754
  error = _ref.error,
177
- _ref$className = _ref.className,
178
- className = _ref$className === void 0 ? '' : _ref$className,
179
- props = _objectWithoutPropertiesLoose(_ref, ["variant", "type", "htmlFor", "label", "error", "className"]);
755
+ errorMessage = _ref.errorMessage,
756
+ disabled = _ref.disabled,
757
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$h);
180
758
 
181
- var classNames = system.useStyles({
182
- variant: "form." + variant
183
- }, className);
184
- return React.createElement("div", null, React.createElement(components.Label, Object.assign({
759
+ return React__default.createElement(React__default.Fragment, null, React__default.createElement(Label, {
760
+ variant: labelVariant,
185
761
  htmlFor: htmlFor,
186
- className: classNames
187
- }, props), label, error ? React.createElement(icons.Required, {
188
- size: 16,
189
- fill: b2bTheme.colors.red60
190
- }) : ''), React.createElement(components.Input, {
762
+ required: required
763
+ }, label), React__default.createElement(Input, Object.assign({}, props, {
191
764
  type: type,
192
- id: htmlFor
193
- }), error ? React.createElement(components.ValidationMessage, null, React.createElement(icons.Exclamation, {
765
+ id: htmlFor,
766
+ disabled: disabled,
767
+ variant: variant
768
+ })), error && errorMessage && React__default.createElement(ValidationMessage, null, React__default.createElement(icons.Exclamation, {
194
769
  size: 16
195
- }), error) : '');
196
- });
770
+ }), errorMessage));
771
+ };
197
772
 
198
- var Heading = /*#__PURE__*/system.system(function (_ref) {
199
- var _ref$variant = _ref.variant,
200
- variant = _ref$variant === void 0 ? 'h2' : _ref$variant,
201
- children = _ref.children,
202
- className = _ref.className,
203
- props = _objectWithoutPropertiesLoose(_ref, ["variant", "children", "className"]);
773
+ var _excluded$i = ["variant"];
774
+ // ---------------
204
775
 
205
- var classNames = system.useStyles({
206
- variant: "text." + variant
207
- }, className);
208
- return React.createElement("h2", Object.assign({
209
- className: classNames
210
- }, props), children);
211
- });
212
-
213
- var Hidden = /*#__PURE__*/system.system(function (_ref) {
776
+ var Image = function Image(_ref) {
214
777
  var _ref$variant = _ref.variant,
215
- variant = _ref$variant === void 0 ? 'hidden' : _ref$variant,
216
- _ref$show = _ref.show,
217
- show = _ref$show === void 0 ? false : _ref$show,
218
- className = _ref.className,
219
- children = _ref.children,
220
- props = _objectWithoutPropertiesLoose(_ref, ["variant", "show", "className", "children"]);
221
-
222
- var classNames = system.useStyles({
223
- variant: "layout." + variant,
224
- display: show ? 'display' : 'none'
225
- }, className);
226
- return React.createElement("span", Object.assign({
227
- className: classNames
228
- }, props), children);
229
- });
778
+ variant = _ref$variant === void 0 ? 'fullWidth' : _ref$variant,
779
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$i);
230
780
 
231
- var Image = /*#__PURE__*/system.system(function (_ref) {
232
- var _ref$variant = _ref.variant,
233
- variant = _ref$variant === void 0 ? 'images' : _ref$variant,
234
- _ref$alt = _ref.alt,
235
- alt = _ref$alt === void 0 ? '' : _ref$alt,
236
- className = _ref.className,
237
- props = _objectWithoutPropertiesLoose(_ref, ["variant", "alt", "className"]);
238
-
239
- var classNames = system.useStyles({
240
- variant: "content." + variant
241
- }, className);
242
- return React.createElement("img", Object.assign({
243
- className: classNames,
244
- alt: alt
245
- }, props));
246
- });
781
+ return React__default.createElement(system.Box, Object.assign({}, props, {
782
+ as: "img",
783
+ variant: "image." + variant
784
+ }));
785
+ };
247
786
 
248
- var Label = /*#__PURE__*/system.system(function (_ref) {
249
- var _ref$variant = _ref.variant,
250
- variant = _ref$variant === void 0 ? 'label' : _ref$variant,
251
- htmlFor = _ref.htmlFor,
787
+ var _excluded$j = ["as", "variant", "children", "disabled"];
788
+ // ---------------
789
+
790
+ var Link = function Link(_ref) {
791
+ var _ref$as = _ref.as,
792
+ as = _ref$as === void 0 ? 'a' : _ref$as,
793
+ _ref$variant = _ref.variant,
794
+ variant = _ref$variant === void 0 ? 'link' : _ref$variant,
252
795
  children = _ref.children,
253
- className = _ref.className,
254
- props = _objectWithoutPropertiesLoose(_ref, ["variant", "htmlFor", "children", "className"]);
796
+ disabled = _ref.disabled,
797
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$j);
255
798
 
256
- var classNames = system.useStyles({
257
- variant: "form." + variant
258
- }, className);
259
- return React.createElement("label", Object.assign({
260
- htmlFor: htmlFor,
261
- className: classNames
262
- }, props), children);
263
- });
799
+ var ref = React.useRef();
264
800
 
265
- var Link = /*#__PURE__*/system.system(function (_ref) {
266
- var _ref$variant = _ref.variant,
267
- variant = _ref$variant === void 0 ? 'normal' : _ref$variant,
268
- children = _ref.children,
269
- className = _ref.className,
270
- props = _objectWithoutPropertiesLoose(_ref, ["variant", "children", "className"]);
801
+ var _useLink = link.useLink(_extends({}, props, {
802
+ elementType: typeof as === 'string' ? as : 'span',
803
+ isDisabled: disabled
804
+ }), ref),
805
+ linkProps = _useLink.linkProps;
271
806
 
272
- var classNames = system.useStyles({
273
- variant: "link." + variant
274
- }, className);
275
- return React.createElement("a", Object.assign({
276
- className: classNames
277
- }, props), children);
278
- });
807
+ return React__default.createElement(Text, Object.assign({}, props, linkProps, {
808
+ as: as,
809
+ variant: variant,
810
+ ref: ref
811
+ }), children);
812
+ };
279
813
 
280
- var Menu = /*#__PURE__*/system.system(function (_ref) {
814
+ var _excluded$k = ["variant", "label", "onClick", "show", "children"];
815
+ // ---------------
816
+
817
+ var Menu = function Menu(_ref) {
281
818
  var _ref$variant = _ref.variant,
282
- variant = _ref$variant === void 0 ? 'menu' : _ref$variant,
819
+ variant = _ref$variant === void 0 ? 'default' : _ref$variant,
283
820
  _ref$label = _ref.label,
284
821
  label = _ref$label === void 0 ? 'Menu' : _ref$label,
285
822
  onClick = _ref.onClick,
286
823
  _ref$show = _ref.show,
287
824
  show = _ref$show === void 0 ? false : _ref$show,
288
- className = _ref.className,
289
825
  children = _ref.children,
290
- props = _objectWithoutPropertiesLoose(_ref, ["variant", "label", "onClick", "show", "className", "children"]);
291
-
292
- var classNames = system.useStyles({
293
- variant: "content." + variant
294
- }, className);
295
- var itemStyles = system.useStyles({
296
- position: 'absolute',
297
- minWidth: '120px',
298
- display: 'block',
299
- textAlign: 'left',
300
- borderRadius: '2px'
301
- });
302
- return React.createElement("div", Object.assign({
303
- className: classNames
304
- }, props), React.createElement(components.Button, {
826
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$k);
827
+
828
+ return React__default.createElement(system.Box, Object.assign({
829
+ variant: "menu." + variant
830
+ }, props), React__default.createElement(Button, {
305
831
  onClick: onClick,
306
832
  variant: "menu"
307
- }, label), show ? React.createElement("div", {
308
- className: itemStyles
833
+ }, label), show ? React__default.createElement(system.Box, {
834
+ display: "block",
835
+ position: "absolute",
836
+ minWidth: "120px",
837
+ borderRadius: "2px"
309
838
  }, children) : null);
310
- });
839
+ };
840
+
841
+ var _excluded$l = ["variant", "className", "children"];
842
+ // ---------------
311
843
 
312
- var MenuItem = /*#__PURE__*/system.system(function (_ref) {
844
+ var MenuItem = function MenuItem(_ref) {
313
845
  var _ref$variant = _ref.variant,
314
- variant = _ref$variant === void 0 ? 'menuItem' : _ref$variant,
846
+ variant = _ref$variant === void 0 ? 'default' : _ref$variant,
315
847
  className = _ref.className,
316
848
  children = _ref.children,
317
- props = _objectWithoutPropertiesLoose(_ref, ["variant", "className", "children"]);
318
-
319
- var classNames = system.useStyles({
320
- variant: "content." + variant
321
- }, className);
322
- return React.createElement(components.Link, Object.assign({
323
- variant: "menu",
324
- className: classNames
325
- }, props), children);
326
- });
849
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$l);
850
+
851
+ return React__default.createElement(system.Box, {
852
+ variant: "menuItem." + variant,
853
+ className: className
854
+ }, React__default.createElement(Link, Object.assign({
855
+ variant: "menuItemLink"
856
+ }, props), children));
857
+ };
327
858
 
328
- var Message = /*#__PURE__*/system.system(function (_ref) {
859
+ var _excluded$m = ["messageTitle", "variant", "className", "children"];
860
+ // ---------------
861
+
862
+ var Message = function Message(_ref) {
329
863
  var messageTitle = _ref.messageTitle,
330
864
  _ref$variant = _ref.variant,
331
865
  variant = _ref$variant === void 0 ? 'info' : _ref$variant,
332
866
  className = _ref.className,
333
867
  children = _ref.children,
334
- props = _objectWithoutPropertiesLoose(_ref, ["messageTitle", "variant", "className", "children"]);
335
-
336
- var classNames = system.useStyles({
337
- element: ['p'],
338
- variant: "messages." + variant,
339
- display: 'inline-block'
340
- }, className);
341
- var icon = React.createElement(icons.Info, {
342
- className: system.useStyles({
343
- verticalAlign: '-5px'
344
- })
345
- });
868
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$m);
869
+
870
+ var icon = React__default.createElement(icons.Info, null);
346
871
 
347
872
  if (variant === 'warning') {
348
- icon = React.createElement(icons.Notification, {
349
- className: system.useStyles({
350
- verticalAlign: '-5px '
351
- })
352
- });
353
- } else if (variant === 'error') {
354
- icon = React.createElement(icons.Exclamation, {
355
- className: system.useStyles({
356
- verticalAlign: '-5px '
357
- })
358
- });
873
+ icon = React__default.createElement(icons.Notification, null);
359
874
  }
360
875
 
361
- return React.createElement("div", Object.assign({
362
- className: classNames
363
- }, props), React.createElement("div", {
364
- className: system.useStyles({
365
- marginBottom: '8px',
366
- marginRight: '4px'
367
- })
368
- }, icon, React.createElement(components.Heading, {
369
- variant: "h4",
370
- className: system.useStyles({
371
- display: 'inline'
372
- })
373
- }, messageTitle)), React.createElement("div", {
374
- className: system.useStyles({
876
+ if (variant === 'error') {
877
+ icon = React__default.createElement(icons.Exclamation, null);
878
+ }
879
+
880
+ return React__default.createElement(system.Box, Object.assign({
881
+ display: "inline-block",
882
+ variant: "message." + variant,
883
+ className: className
884
+ }, props), React__default.createElement(system.Box, {
885
+ display: "flex",
886
+ alignItems: "center",
887
+ variant: "message.title"
888
+ }, icon, React__default.createElement(Text, {
889
+ as: "h4",
890
+ variant: "headline4"
891
+ }, messageTitle)), React__default.createElement(system.Box, {
892
+ css: {
375
893
  color: 'black'
376
- })
894
+ }
377
895
  }, children));
378
- });
896
+ };
379
897
 
380
- var Radio = /*#__PURE__*/system.system(function (_ref) {
381
- var id = _ref.id,
382
- _ref$variant = _ref.variant,
383
- variant = _ref$variant === void 0 ? 'radio' : _ref$variant,
384
- label = _ref.label,
385
- required = _ref.required,
386
- className = _ref.className,
387
- props = _objectWithoutPropertiesLoose(_ref, ["id", "variant", "label", "required", "className"]);
388
-
389
- var radioStyle = system.useStyles({
390
- position: 'absolute',
391
- opacity: 0,
392
- zIndex: -1,
393
- width: 1,
394
- height: 1,
395
- overflow: 'hidden'
898
+ // ---------------
899
+
900
+ function MarigoldProvider(_ref) {
901
+ var theme = _ref.theme,
902
+ children = _ref.children;
903
+ var outer = system.useTheme();
904
+ var isTopLevel = outer.theme === system.__defaultTheme;
905
+ return React__default.createElement(system.ThemeProvider, {
906
+ theme: theme
907
+ }, isTopLevel ? React__default.createElement(React__default.Fragment, null, React__default.createElement(system.Global, null), React__default.createElement(overlays$1.OverlayProvider, null, children)) : children);
908
+ }
909
+
910
+ var _excluded$n = ["disabled"],
911
+ _excluded2$3 = ["disabled", "error"];
912
+ var RadioChecked = function RadioChecked(_ref) {
913
+ var _ref$disabled = _ref.disabled,
914
+ disabled = _ref$disabled === void 0 ? false : _ref$disabled,
915
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$n);
916
+
917
+ return React__default.createElement(system.SVG, Object.assign({
918
+ width: "16",
919
+ height: "32",
920
+ viewBox: "0 0 16 32",
921
+ fill: "none"
922
+ }, props), React__default.createElement(system.Box, {
923
+ as: "circle",
924
+ cx: "8",
925
+ cy: "16",
926
+ r: "7.5",
927
+ variant: disabled ? 'radio.checked.disabled' : 'radio.checked'
928
+ }), React__default.createElement(system.Box, {
929
+ as: "circle",
930
+ cx: "8",
931
+ cy: "16",
932
+ r: "3",
933
+ variant: "radio.checked.circle"
934
+ }));
935
+ };
936
+ var RadioUnchecked = function RadioUnchecked(_ref2) {
937
+ var _ref2$disabled = _ref2.disabled,
938
+ disabled = _ref2$disabled === void 0 ? false : _ref2$disabled,
939
+ _ref2$error = _ref2.error,
940
+ error = _ref2$error === void 0 ? false : _ref2$error,
941
+ props = _objectWithoutPropertiesLoose(_ref2, _excluded2$3);
942
+
943
+ return React__default.createElement(system.SVG, Object.assign({
944
+ width: "16",
945
+ height: "32",
946
+ viewBox: "0 0 16 32",
947
+ fill: "none"
948
+ }, props), React__default.createElement(system.Box, {
949
+ as: "circle",
950
+ cx: "8",
951
+ cy: "16",
952
+ r: "7.5",
953
+ variant: disabled ? 'radio.unchecked.disabled' : error ? 'radio.unchecked.error' : 'radio.unchecked'
954
+ }));
955
+ };
956
+
957
+ var _excluded$o = ["className", "variant", "error"],
958
+ _excluded2$4 = ["label", "required", "labelVariant", "error", "errorMessage"];
959
+
960
+ var RadioIcon = function RadioIcon(_ref) {
961
+ var variant = _ref.variant,
962
+ checked = _ref.checked,
963
+ disabled = _ref.disabled,
964
+ error = _ref.error;
965
+
966
+ if (checked) {
967
+ return React__default.createElement(system.Box, {
968
+ as: RadioChecked,
969
+ variant: "radio." + variant,
970
+ disabled: disabled
971
+ });
972
+ }
973
+
974
+ return React__default.createElement(system.Box, {
975
+ as: RadioUnchecked,
976
+ variant: "radio." + variant,
977
+ disabled: disabled,
978
+ error: error
396
979
  });
397
- var radioIconStyle = system.useStyles({
398
- variant: "form." + variant,
399
- ariaHidden: 'true',
400
- mr: 2,
401
- verticalAlign: 'middle',
402
- ':hover': {
403
- cursor: 'pointer'
404
- },
405
- 'input:disabled ~ &': {
406
- color: 'muted',
407
- cursor: 'not-allowed'
408
- }
409
- }, className);
410
- var radio = React.createElement("div", {
411
- className: system.useStyles({
412
- display: 'inline-block'
413
- })
414
- }, React.createElement("input", Object.assign({
980
+ };
981
+
982
+ var RadioInput = function RadioInput(_ref2) {
983
+ var className = _ref2.className,
984
+ _ref2$variant = _ref2.variant,
985
+ variant = _ref2$variant === void 0 ? '' : _ref2$variant,
986
+ error = _ref2.error,
987
+ props = _objectWithoutPropertiesLoose(_ref2, _excluded$o);
988
+
989
+ return React__default.createElement(system.Box, {
990
+ display: "inline-block",
991
+ className: className
992
+ }, React__default.createElement(system.Box, Object.assign({
993
+ as: "input",
415
994
  type: "radio",
416
- id: id,
417
- className: radioStyle
418
- }, props)), props.checked ? React.createElement(icons.CircleChecked, {
419
- className: radioIconStyle
420
- }) : React.createElement(icons.CircleUnchecked, {
421
- className: radioIconStyle
995
+ css: {
996
+ position: 'absolute',
997
+ opacity: 0,
998
+ zIndex: -1,
999
+ width: 1,
1000
+ height: 1,
1001
+ overflow: 'hidden'
1002
+ }
1003
+ }, props)), React__default.createElement(RadioIcon, {
1004
+ checked: props.checked,
1005
+ variant: variant,
1006
+ disabled: props.disabled,
1007
+ error: error
422
1008
  }));
423
- return React.createElement(React.Fragment, null, label ? React.createElement(components.Label, {
424
- htmlFor: id
425
- }, radio, label, required ? React.createElement(icons.Required, {
426
- size: 16
427
- }) : '') : React.createElement(React.Fragment, null, radio));
428
- });
1009
+ };
1010
+
1011
+ var Radio = function Radio(_ref3) {
1012
+ var label = _ref3.label,
1013
+ required = _ref3.required,
1014
+ _ref3$labelVariant = _ref3.labelVariant,
1015
+ labelVariant = _ref3$labelVariant === void 0 ? 'inline' : _ref3$labelVariant,
1016
+ error = _ref3.error,
1017
+ errorMessage = _ref3.errorMessage,
1018
+ props = _objectWithoutPropertiesLoose(_ref3, _excluded2$4);
429
1019
 
430
- var Slider = /*#__PURE__*/system.system(function (_ref) {
1020
+ if (label) {
1021
+ return React__default.createElement(React__default.Fragment, null, React__default.createElement(Label, {
1022
+ htmlFor: props.id,
1023
+ required: required,
1024
+ variant: labelVariant,
1025
+ color: props.disabled ? 'disabled' : 'text'
1026
+ }, React__default.createElement(system.Box, Object.assign({
1027
+ as: RadioInput,
1028
+ pr: "8px",
1029
+ error: error
1030
+ }, props)), label), error && errorMessage && React__default.createElement(ValidationMessage, null, React__default.createElement(icons.Exclamation, {
1031
+ size: 16
1032
+ }), errorMessage));
1033
+ }
1034
+
1035
+ return React__default.createElement(RadioInput, Object.assign({}, props));
1036
+ };
1037
+
1038
+ var _excluded$p = ["variant", "className"];
1039
+ // ---------------
1040
+
1041
+ var Slider = function Slider(_ref) {
431
1042
  var _ref$variant = _ref.variant,
432
- variant = _ref$variant === void 0 ? 'slider' : _ref$variant,
1043
+ variant = _ref$variant === void 0 ? '' : _ref$variant,
433
1044
  className = _ref.className,
434
- props = _objectWithoutPropertiesLoose(_ref, ["variant", "className"]);
1045
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$p);
435
1046
 
436
- var classNames = system.useStyles({
437
- variant: "form." + variant,
438
- verticalAlign: 'middle'
439
- }, className);
440
- return React.createElement("input", Object.assign({
1047
+ return React__default.createElement(system.Box, Object.assign({
1048
+ as: "input",
441
1049
  type: "range",
442
- className: classNames
1050
+ css: {
1051
+ verticalAlign: 'middle'
1052
+ },
1053
+ variant: "slider." + variant,
1054
+ className: className
443
1055
  }, props));
444
- });
1056
+ };
445
1057
 
446
- var Select = /*#__PURE__*/system.system(function (_ref) {
447
- var _ref$variant = _ref.variant,
448
- variant = _ref$variant === void 0 ? 'select' : _ref$variant,
449
- className = _ref.className,
450
- ref = _ref.ref,
451
- props = _objectWithoutPropertiesLoose(_ref, ["variant", "className", "ref"]);
452
-
453
- var selectStyles = system.useStyles({
454
- variant: "form." + variant
455
- }, className);
456
- var iconStyles = system.useStyles({
457
- alignSelf: 'center',
458
- pointerEvents: 'none',
459
- ml: '-28px'
460
- });
461
- return React.createElement("div", {
462
- className: system.useStyles({
463
- display: 'flex'
464
- })
465
- }, React.createElement("select", Object.assign({
1058
+ var Option = function Option(_ref) {
1059
+ var item = _ref.item,
1060
+ state = _ref.state;
1061
+ var ref = React.useRef(null);
1062
+
1063
+ var _useState = React.useState(false),
1064
+ disabled = _useState[0],
1065
+ setDisabled = _useState[1];
1066
+
1067
+ var _useOption = listbox.useOption({
1068
+ key: item.key
1069
+ }, state, ref),
1070
+ optionProps = _useOption.optionProps,
1071
+ isSelected = _useOption.isSelected;
1072
+
1073
+ React.useEffect(function () {
1074
+ for (var _iterator = _createForOfIteratorHelperLoose(state.disabledKeys.values()), _step; !(_step = _iterator()).done;) {
1075
+ var key = _step.value;
1076
+
1077
+ if (key === item.key) {
1078
+ setDisabled(true);
1079
+ }
1080
+ }
1081
+ }, [state.disabledKeys, item.key]);
1082
+ return React__default.createElement(system.Box, Object.assign({
1083
+ as: "li"
1084
+ }, optionProps, {
1085
+ ref: ref,
1086
+ variant: isSelected ? 'select.option.selected' : disabled ? 'select.option.disabled' : 'select.option'
1087
+ }), item.rendered);
1088
+ };
1089
+
1090
+ var ListBoxSection = function ListBoxSection(_ref) {
1091
+ var section = _ref.section,
1092
+ state = _ref.state;
1093
+
1094
+ var _useListBoxSection = listbox.useListBoxSection({
1095
+ heading: section.rendered,
1096
+ 'aria-label': section['aria-label']
1097
+ }),
1098
+ itemProps = _useListBoxSection.itemProps,
1099
+ headingProps = _useListBoxSection.headingProps,
1100
+ groupProps = _useListBoxSection.groupProps;
1101
+
1102
+ return React__default.createElement(system.Box, Object.assign({
1103
+ as: "li"
1104
+ }, itemProps, {
1105
+ css: {
1106
+ cursor: 'not-allowed'
1107
+ }
1108
+ }), section.rendered && React__default.createElement(system.Box, Object.assign({
1109
+ as: "span"
1110
+ }, headingProps, {
1111
+ variant: 'select.section'
1112
+ }), section.rendered), React__default.createElement(system.Box, Object.assign({
1113
+ as: "ul"
1114
+ }, groupProps), [].concat(section.childNodes).map(function (node) {
1115
+ return React__default.createElement(Option, {
1116
+ key: node.key,
1117
+ item: node,
1118
+ state: state
1119
+ });
1120
+ })));
1121
+ };
1122
+
1123
+ var ListBox = function ListBox(props) {
1124
+ var ref = React.useRef(null);
1125
+ var state = props.state,
1126
+ error = props.error;
1127
+
1128
+ var _useListBox = listbox.useListBox(props, state, ref),
1129
+ listBoxProps = _useListBox.listBoxProps;
1130
+
1131
+ return React__default.createElement(system.Box, Object.assign({
1132
+ as: "ul",
1133
+ p: "none",
1134
+ css: {
1135
+ listStyle: 'none'
1136
+ }
1137
+ }, listBoxProps, {
1138
+ variant: error ? 'select.listbox.error' : 'select.listbox',
466
1139
  ref: ref
467
- }, props, {
468
- className: selectStyles
469
- })), React.createElement(icons.ArrowDown, {
470
- className: iconStyles
1140
+ }), [].concat(state.collection).map(function (item) {
1141
+ return item.type === 'section' ? React__default.createElement(ListBoxSection, {
1142
+ key: item.key,
1143
+ section: item,
1144
+ state: state
1145
+ }) : React__default.createElement(Option, {
1146
+ key: item.key,
1147
+ item: item,
1148
+ state: state
1149
+ });
471
1150
  }));
472
- });
1151
+ };
473
1152
 
474
- var Svg = /*#__PURE__*/system.system(function (_ref) {
475
- var _ref$variant = _ref.variant,
476
- variant = _ref$variant === void 0 ? 'icon' : _ref$variant,
477
- _ref$size = _ref.size,
478
- size = _ref$size === void 0 ? 24 : _ref$size,
479
- _ref$className = _ref.className,
480
- className = _ref$className === void 0 ? '' : _ref$className,
481
- children = _ref.children,
482
- props = _objectWithoutPropertiesLoose(_ref, ["variant", "size", "className", "children"]);
483
-
484
- var classNames = system.useStyles({
485
- variant: "icon." + variant
486
- }, className);
487
- return React.createElement("svg", Object.assign({
488
- className: classNames,
489
- width: size,
490
- height: size,
491
- viewBox: "0 0 24 24",
492
- fill: "currentcolor"
493
- }, props), children);
494
- });
495
-
496
- var Text = /*#__PURE__*/system.system(function (_ref) {
497
- var _ref$as = _ref.as,
498
- as = _ref$as === void 0 ? 'span' : _ref$as,
499
- _ref$variant = _ref.variant,
500
- variant = _ref$variant === void 0 ? 'body' : _ref$variant,
501
- _ref$textColor = _ref.textColor,
502
- textColor = _ref$textColor === void 0 ? 'inherit' : _ref$textColor,
1153
+ var _excluded$q = ["children", "className", "isOpen", "onClose"];
1154
+ var Popover = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
1155
+ var children = _ref.children,
503
1156
  className = _ref.className,
504
- children = _ref.children,
505
- props = _objectWithoutPropertiesLoose(_ref, ["as", "variant", "textColor", "className", "children"]);
1157
+ isOpen = _ref.isOpen,
1158
+ onClose = _ref.onClose,
1159
+ otherProps = _objectWithoutPropertiesLoose(_ref, _excluded$q);
506
1160
 
507
- var classNames = system.useStyles({
508
- variant: "text." + variant,
509
- color: textColor
510
- }, className);
511
- var Cmp = as;
512
- return React.createElement(Cmp, Object.assign({
513
- className: classNames
514
- }, props), children);
515
- });
1161
+ // Handle events that should cause the popup to close,
1162
+ var _useOverlay = overlays$1.useOverlay({
1163
+ isOpen: isOpen,
1164
+ onClose: onClose,
1165
+ shouldCloseOnBlur: true,
1166
+ isDismissable: true
1167
+ }, ref),
1168
+ overlayProps = _useOverlay.overlayProps; // Hide content outside the modal from screen readers.
516
1169
 
517
- var Textarea = /*#__PURE__*/system.system(function (_ref) {
518
- var _ref$variant = _ref.variant,
519
- variant = _ref$variant === void 0 ? 'textarea' : _ref$variant,
520
- children = _ref.children,
521
- className = _ref.className,
522
- props = _objectWithoutPropertiesLoose(_ref, ["variant", "children", "className"]);
523
1170
 
524
- var classNames = system.useStyles({
525
- variant: "form." + variant
526
- }, className);
527
- return React.createElement("textarea", Object.assign({
528
- className: classNames
529
- }, props), children);
1171
+ var _useModal = overlays$1.useModal(),
1172
+ modalProps = _useModal.modalProps;
1173
+
1174
+ return React__default.createElement(overlays$1.OverlayContainer, null, React__default.createElement(focus.FocusScope, {
1175
+ restoreFocus: true
1176
+ }, React__default.createElement(system.Box, Object.assign({}, utils.mergeProps(overlayProps, otherProps, modalProps), {
1177
+ className: className,
1178
+ ref: ref
1179
+ }), children, React__default.createElement(overlays$1.DismissButton, {
1180
+ onDismiss: onClose
1181
+ }))));
530
1182
  });
531
1183
 
532
- var Input = /*#__PURE__*/system.system(function (_ref) {
533
- var _ref$variant = _ref.variant,
534
- variant = _ref$variant === void 0 ? 'input' : _ref$variant,
535
- _ref$type = _ref.type,
536
- type = _ref$type === void 0 ? 'text' : _ref$type,
1184
+ var _excluded$r = ["labelVariant", "placeholder", "disabled", "required", "error", "errorMessage", "width", "className"];
1185
+ // ---------------
1186
+
1187
+ var Select = function Select(_ref) {
1188
+ var _ref$labelVariant = _ref.labelVariant,
1189
+ labelVariant = _ref$labelVariant === void 0 ? 'above' : _ref$labelVariant,
1190
+ _ref$placeholder = _ref.placeholder,
1191
+ placeholder = _ref$placeholder === void 0 ? 'Select an option' : _ref$placeholder,
1192
+ disabled = _ref.disabled,
1193
+ required = _ref.required,
1194
+ error = _ref.error,
1195
+ errorMessage = _ref.errorMessage,
1196
+ width = _ref.width,
537
1197
  className = _ref.className,
538
- props = _objectWithoutPropertiesLoose(_ref, ["variant", "type", "className"]);
1198
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$r);
539
1199
 
540
- var classNames = system.useStyles({
541
- variant: "form." + variant,
542
- border: 0
543
- }, className);
544
- return React.createElement("input", Object.assign({
545
- type: type,
546
- className: classNames
547
- }, props));
548
- });
1200
+ var state = select.useSelectState(props);
1201
+ var overlayTriggerState = overlays.useOverlayTriggerState({});
1202
+ var triggerRef = React.useRef();
1203
+ var overlayRef = React.useRef(); // Get props for the overlay
549
1204
 
550
- var Container = /*#__PURE__*/system.system(function (_ref) {
551
- var _ref$variant = _ref.variant,
552
- variant = _ref$variant === void 0 ? 'container' : _ref$variant,
553
- className = _ref.className,
554
- children = _ref.children,
555
- props = _objectWithoutPropertiesLoose(_ref, ["variant", "className", "children"]);
556
-
557
- var classNames = system.useStyles({
558
- variant: "layout." + variant,
559
- width: '100%'
560
- }, className);
561
- return React.createElement("div", Object.assign({
562
- className: classNames
563
- }, props), children);
564
- });
1205
+ var _useOverlayTrigger = overlays$1.useOverlayTrigger({
1206
+ type: 'listbox'
1207
+ }, overlayTriggerState, triggerRef),
1208
+ overlayProps = _useOverlayTrigger.overlayProps; // Get popover positioning props relative to the trigger
1209
+
1210
+
1211
+ var _useOverlayPosition = overlays$1.useOverlayPosition({
1212
+ targetRef: triggerRef,
1213
+ overlayRef: overlayRef,
1214
+ placement: 'bottom',
1215
+ shouldFlip: false,
1216
+ isOpen: state.isOpen,
1217
+ onClose: state.close
1218
+ }),
1219
+ positionProps = _useOverlayPosition.overlayProps; // Get props for child elements from useSelect
1220
+
1221
+
1222
+ var _useSelect = select$1.useSelect(props, state, triggerRef),
1223
+ labelProps = _useSelect.labelProps,
1224
+ triggerProps = _useSelect.triggerProps,
1225
+ valueProps = _useSelect.valueProps,
1226
+ menuProps = _useSelect.menuProps; // Get props for the button based on the trigger props from useSelect
565
1227
 
566
- var ValidationMessage = /*#__PURE__*/system.system(function (_ref) {
1228
+
1229
+ var _useButton = button.useButton(triggerProps, triggerRef),
1230
+ buttonProps = _useButton.buttonProps;
1231
+
1232
+ var _useFocusRing = focus.useFocusRing(),
1233
+ focusProps = _useFocusRing.focusProps;
1234
+
1235
+ return React__default.createElement(system.Box, {
1236
+ position: "relative",
1237
+ display: "inline-block",
1238
+ width: width && width
1239
+ }, props.label && React__default.createElement(system.Box, null, React__default.createElement(Label, Object.assign({}, labelProps, {
1240
+ htmlFor: labelProps.id,
1241
+ variant: labelVariant
1242
+ }), required ? React__default.createElement(system.Box, {
1243
+ as: "span",
1244
+ display: "inline-flex",
1245
+ alignItems: "center"
1246
+ }, props.label, React__default.createElement(system.Box, {
1247
+ as: icons.Required,
1248
+ size: 16,
1249
+ css: {
1250
+ color: 'error'
1251
+ }
1252
+ })) : props.label)), React__default.createElement(select$1.HiddenSelect, {
1253
+ state: state,
1254
+ triggerRef: triggerRef,
1255
+ label: props.label,
1256
+ name: props.name,
1257
+ isDisabled: disabled
1258
+ }), React__default.createElement(system.Box, Object.assign({
1259
+ as: "button"
1260
+ }, utils.mergeProps(buttonProps, focusProps), {
1261
+ ref: triggerRef,
1262
+ variant: error && state.isOpen && !disabled ? 'button.select.errorOpened' : error ? 'button.select.error' : state.isOpen && !disabled ? 'button.select.open' : 'button.select',
1263
+ disabled: disabled,
1264
+ className: className
1265
+ }), React__default.createElement(system.Box, Object.assign({
1266
+ as: "span"
1267
+ }, valueProps, {
1268
+ variant: disabled ? 'select.disabled' : 'select'
1269
+ }), state.selectedItem ? state.selectedItem.rendered : placeholder), state.isOpen && !disabled ? React__default.createElement(system.Box, {
1270
+ as: icons.ArrowUp,
1271
+ size: 16,
1272
+ css: {
1273
+ fill: 'text'
1274
+ }
1275
+ }) : React__default.createElement(system.Box, {
1276
+ as: icons.ArrowDown,
1277
+ size: 16,
1278
+ css: {
1279
+ fill: disabled ? 'disabled' : 'text'
1280
+ }
1281
+ })), state.isOpen && !disabled && React__default.createElement(system.Box, Object.assign({
1282
+ as: Popover
1283
+ }, overlayProps, positionProps, {
1284
+ css: {
1285
+ width: triggerRef.current && triggerRef.current.offsetWidth + 'px'
1286
+ },
1287
+ ref: overlayRef,
1288
+ isOpen: state.isOpen,
1289
+ onClose: state.close
1290
+ }), React__default.createElement(ListBox, Object.assign({
1291
+ error: error
1292
+ }, menuProps, {
1293
+ state: state
1294
+ }))), error && errorMessage && React__default.createElement(system.Box, {
1295
+ as: "span",
1296
+ display: "inline-flex",
1297
+ alignItems: "center"
1298
+ }, React__default.createElement(system.Box, {
1299
+ as: icons.Exclamation,
1300
+ size: 16,
1301
+ css: {
1302
+ color: 'error'
1303
+ }
1304
+ }), React__default.createElement(ValidationMessage, null, errorMessage)));
1305
+ };
1306
+
1307
+ var _excluded$s = ["variant", "htmlFor", "label", "error", "errorMessage", "required", "className", "children"];
1308
+ // ---------------
1309
+
1310
+ var Textarea = function Textarea(_ref) {
567
1311
  var _ref$variant = _ref.variant,
568
- variant = _ref$variant === void 0 ? 'negative' : _ref$variant,
569
- children = _ref.children,
570
- className = _ref.className,
571
- props = _objectWithoutPropertiesLoose(_ref, ["variant", "children", "className"]);
1312
+ variant = _ref$variant === void 0 ? '' : _ref$variant,
1313
+ _ref$htmlFor = _ref.htmlFor,
1314
+ htmlFor = _ref$htmlFor === void 0 ? 'textarea' : _ref$htmlFor,
1315
+ label = _ref.label,
1316
+ error = _ref.error,
1317
+ errorMessage = _ref.errorMessage,
1318
+ required = _ref.required,
1319
+ _ref$className = _ref.className,
1320
+ className = _ref$className === void 0 ? '' : _ref$className,
1321
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$s);
572
1322
 
573
- var classNames = system.useStyles({
574
- variant: "validation." + variant,
575
- display: 'flex',
576
- alignItems: 'center'
577
- }, className);
578
- return React.createElement("span", Object.assign({
579
- className: classNames
580
- }, props), children);
581
- });
1323
+ return React__default.createElement(system.Box, null, label && React__default.createElement(Label, {
1324
+ htmlFor: htmlFor,
1325
+ required: required
1326
+ }, label), React__default.createElement(system.Box, Object.assign({
1327
+ as: "textarea"
1328
+ }, props, {
1329
+ display: "block",
1330
+ variant: "textarea." + variant,
1331
+ css: {
1332
+ outlineColor: error && 'error'
1333
+ },
1334
+ className: className
1335
+ })), error && errorMessage && React__default.createElement(ValidationMessage, null, React__default.createElement(icons.Exclamation, {
1336
+ size: 16
1337
+ }), errorMessage));
1338
+ };
582
1339
 
1340
+ var _excluded$t = ["children"];
1341
+ var Container = function Container(_ref) {
1342
+ var children = _ref.children,
1343
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$t);
1344
+
1345
+ return React__default.createElement(system.Box, Object.assign({}, props, {
1346
+ width: "100%"
1347
+ }), children);
1348
+ };
1349
+
1350
+ Object.defineProperty(exports, 'Box', {
1351
+ enumerable: true,
1352
+ get: function () {
1353
+ return system.Box;
1354
+ }
1355
+ });
1356
+ Object.defineProperty(exports, 'ThemeProvider', {
1357
+ enumerable: true,
1358
+ get: function () {
1359
+ return system.ThemeProvider;
1360
+ }
1361
+ });
1362
+ Object.defineProperty(exports, 'useTheme', {
1363
+ enumerable: true,
1364
+ get: function () {
1365
+ return system.useTheme;
1366
+ }
1367
+ });
1368
+ Object.defineProperty(exports, 'VisuallyHidden', {
1369
+ enumerable: true,
1370
+ get: function () {
1371
+ return visuallyHidden.VisuallyHidden;
1372
+ }
1373
+ });
1374
+ Object.defineProperty(exports, 'SSRProvider', {
1375
+ enumerable: true,
1376
+ get: function () {
1377
+ return ssr.SSRProvider;
1378
+ }
1379
+ });
1380
+ Object.defineProperty(exports, 'Item', {
1381
+ enumerable: true,
1382
+ get: function () {
1383
+ return collections.Item;
1384
+ }
1385
+ });
1386
+ Object.defineProperty(exports, 'Section', {
1387
+ enumerable: true,
1388
+ get: function () {
1389
+ return collections.Section;
1390
+ }
1391
+ });
1392
+ exports.ActionGroup = ActionGroup;
583
1393
  exports.Alert = Alert;
584
1394
  exports.Badge = Badge;
585
1395
  exports.Button = Button;
1396
+ exports.Card = Card;
586
1397
  exports.Checkbox = Checkbox;
587
1398
  exports.Column = Column;
1399
+ exports.Columns = Columns;
588
1400
  exports.Container = Container;
1401
+ exports.Dialog = Dialog;
589
1402
  exports.Divider = Divider;
590
1403
  exports.Field = Field;
591
- exports.Heading = Heading;
592
- exports.Hidden = Hidden;
593
1404
  exports.Image = Image;
1405
+ exports.Inline = Inline;
594
1406
  exports.Input = Input;
595
1407
  exports.Label = Label;
1408
+ exports.LabelBase = LabelBase;
596
1409
  exports.Link = Link;
1410
+ exports.MarigoldProvider = MarigoldProvider;
597
1411
  exports.Menu = Menu;
598
1412
  exports.MenuItem = MenuItem;
599
1413
  exports.Message = Message;
600
1414
  exports.Radio = Radio;
601
1415
  exports.Select = Select;
602
1416
  exports.Slider = Slider;
603
- exports.Svg = Svg;
1417
+ exports.Stack = Stack;
604
1418
  exports.Text = Text;
605
1419
  exports.Textarea = Textarea;
606
1420
  exports.ValidationMessage = ValidationMessage;
1421
+ exports.useDialogButtonProps = useDialogButtonProps;
607
1422
  //# sourceMappingURL=components.cjs.development.js.map