@spothero/ui 17.0.0-beta.1 → 17.0.0-beta.2

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 (136) hide show
  1. package/dist/components/Accordion/Accordion.js +13 -0
  2. package/dist/components/Accordion/Accordion.stories.js +86 -0
  3. package/dist/components/Accordion/index.js +41 -0
  4. package/dist/components/Accordion/styles/button.js +23 -0
  5. package/dist/components/Accordion/styles/container.js +15 -0
  6. package/dist/components/Accordion/styles/index.js +32 -0
  7. package/dist/components/Accordion/styles/panel.js +13 -0
  8. package/dist/components/Alert/Alert.js +119 -0
  9. package/dist/components/Alert/Alert.stories.js +80 -0
  10. package/dist/components/Alert/index.js +15 -0
  11. package/dist/components/Alert/styles/index.js +192 -0
  12. package/dist/components/AutoSuggestSelect/AutoSuggestSelect.js +189 -0
  13. package/dist/components/AutoSuggestSelect/index.js +15 -0
  14. package/dist/components/Badge/Badge.js +13 -0
  15. package/dist/components/Badge/Badge.stories.js +38 -0
  16. package/dist/components/Badge/styles/index.js +40 -0
  17. package/dist/components/Button/Button.js +73 -0
  18. package/dist/components/Button/Button.spec.js +31 -0
  19. package/dist/components/Button/Button.styles.js +173 -0
  20. package/dist/components/Button/button-props.js +90 -0
  21. package/dist/components/Button/index.js +23 -0
  22. package/dist/components/Button/stories/button.js +59 -0
  23. package/dist/components/Button/stories/index.stories.js +124 -0
  24. package/dist/components/Button/stories/overview.js +96 -0
  25. package/dist/components/Card/Card.js +38 -0
  26. package/dist/components/Card/Card.stories.js +41 -0
  27. package/dist/components/Checkbox/Checkbox.js +13 -0
  28. package/dist/components/Checkbox/Checkbox.stories.js +44 -0
  29. package/dist/components/Checkbox/index.js +15 -0
  30. package/dist/components/Checkbox/styles/index.js +64 -0
  31. package/dist/components/Container/Container.js +34 -0
  32. package/dist/components/Container/Container.stories.js +74 -0
  33. package/dist/components/Container/Container.styles.js +17 -0
  34. package/dist/components/Divider/Divider.js +47 -0
  35. package/dist/components/Divider/Divider.stories.js +49 -0
  36. package/dist/components/Divider/Divider.styles.js +28 -0
  37. package/dist/components/FormControl/FormControl.js +79 -0
  38. package/dist/components/Grid/Grid.js +49 -0
  39. package/dist/components/Grid/Grid.stories.js +141 -0
  40. package/dist/components/Grid/Grid.styles.js +19 -0
  41. package/dist/components/Grid/GridItem.js +34 -0
  42. package/dist/components/Grid/GridItem.styles.js +13 -0
  43. package/dist/components/Grid/index.js +23 -0
  44. package/dist/components/Heading/Heading.js +49 -0
  45. package/dist/components/Heading/Heading.stories.js +54 -0
  46. package/dist/components/Heading/Heading.styles.js +79 -0
  47. package/dist/components/Icon/Icon.js +13 -0
  48. package/dist/components/Icon/Icon.stories.js +47 -0
  49. package/dist/components/Image/Image.js +106 -0
  50. package/dist/components/Image/Image.spec.js +83 -0
  51. package/dist/components/Image/Image.stories.js +92 -0
  52. package/dist/components/Input/Input.js +61 -0
  53. package/dist/components/Input/Input.stories.js +71 -0
  54. package/dist/components/Input/index.js +15 -0
  55. package/dist/components/Input/styles/index.js +71 -0
  56. package/dist/components/Link/Link.js +13 -0
  57. package/dist/components/Link/Link.stories.js +61 -0
  58. package/dist/components/Link/Link.styles.js +42 -0
  59. package/dist/components/List/List.js +88 -0
  60. package/dist/components/List/List.stories.js +124 -0
  61. package/dist/components/List/index.js +23 -0
  62. package/dist/components/List/styles/index.js +24 -0
  63. package/dist/components/List/styles/item.styles.js +11 -0
  64. package/dist/components/Loader/Loader.js +62 -0
  65. package/dist/components/Loader/Loader.stories.js +140 -0
  66. package/dist/components/Modal/Modal.js +52 -0
  67. package/dist/components/Modal/Modal.stories.js +236 -0
  68. package/dist/components/Modal/index.js +15 -0
  69. package/dist/components/Modal/styles/body.js +48 -0
  70. package/dist/components/Modal/styles/closeButton.js +27 -0
  71. package/dist/components/Modal/styles/dialog.js +25 -0
  72. package/dist/components/Modal/styles/dialogContainer.js +26 -0
  73. package/dist/components/Modal/styles/footer.js +12 -0
  74. package/dist/components/Modal/styles/header.js +20 -0
  75. package/dist/components/Modal/styles/index.js +70 -0
  76. package/dist/components/Modal/styles/overlay.js +12 -0
  77. package/dist/components/Popover/Popover.js +48 -0
  78. package/dist/components/Popover/Popover.stories.js +101 -0
  79. package/dist/components/Popover/PopoverArrow.js +34 -0
  80. package/dist/components/Popover/PopoverCloseButton.js +34 -0
  81. package/dist/components/Popover/PopoverContent.js +53 -0
  82. package/dist/components/Popover/index.js +37 -0
  83. package/dist/components/Popover/styles/index.js +38 -0
  84. package/dist/components/Popover/styles/popover-arrow.js +16 -0
  85. package/dist/components/Popover/styles/popover-body.js +15 -0
  86. package/dist/components/Popover/styles/popover-close-button.js +30 -0
  87. package/dist/components/Popover/styles/popover-content.js +29 -0
  88. package/dist/components/Popover/styles/popover-header.js +12 -0
  89. package/dist/components/Popover/styles/popper.js +11 -0
  90. package/dist/components/Radio/Radio.js +52 -0
  91. package/dist/components/Radio/Radio.stories.js +142 -0
  92. package/dist/components/Radio/RadioGroup.js +65 -0
  93. package/dist/components/Radio/index.js +23 -0
  94. package/dist/components/Radio/styles/index.js +65 -0
  95. package/dist/components/Select/Select.js +71 -0
  96. package/dist/components/Select/Select.stories.js +74 -0
  97. package/dist/components/Select/index.js +15 -0
  98. package/dist/components/Select/styles/index.js +57 -0
  99. package/dist/components/Skeleton/Skeleton.stories.js +41 -0
  100. package/dist/components/Skeleton/Skeleton.styles.js +13 -0
  101. package/dist/components/Skeleton/index.js +25 -0
  102. package/dist/components/Spinner/Spinner.js +47 -0
  103. package/dist/components/Spinner/Spinner.stories.js +134 -0
  104. package/dist/components/Spinner/Spinner.styles.js +76 -0
  105. package/dist/components/Switch/Switch.js +59 -0
  106. package/dist/components/Switch/Switch.stories.js +86 -0
  107. package/dist/components/Switch/index.js +15 -0
  108. package/dist/components/Switch/styles/index.js +46 -0
  109. package/dist/components/Table/Table.js +13 -0
  110. package/dist/components/Table/Table.stories.js +92 -0
  111. package/dist/components/Table/Table.styles.js +87 -0
  112. package/dist/components/Table/index.js +59 -0
  113. package/dist/components/Tabs/Tabs.js +48 -0
  114. package/dist/components/Tabs/Tabs.stories.js +51 -0
  115. package/dist/components/Tabs/combineSizeWithVariant.js +44 -0
  116. package/dist/components/Tabs/index.js +41 -0
  117. package/dist/components/Tabs/styles/index.js +52 -0
  118. package/dist/components/Text/Text.js +44 -0
  119. package/dist/components/Text/Text.stories.js +56 -0
  120. package/dist/components/Text/Text.styles.js +67 -0
  121. package/dist/components/Text/combineAsWithVariant.js +123 -0
  122. package/dist/components/Text/options.js +9 -0
  123. package/dist/components/ThemeProvider/ThemeProvider.js +66 -0
  124. package/dist/components/ThemeProvider/ThemeProvider.stories.js +63 -0
  125. package/dist/components/index.js +577 -0
  126. package/dist/components/styles.js +175 -0
  127. package/dist/theme/base/breakpoints.js +27 -0
  128. package/dist/theme/base/colors.js +148 -0
  129. package/dist/theme/base/index.js +59 -0
  130. package/dist/theme/base/sizes.js +88 -0
  131. package/dist/theme/base/typography.js +41 -0
  132. package/dist/theme/base/zindices.js +35 -0
  133. package/dist/theme/global.js +52 -0
  134. package/dist/theme/index.js +63 -0
  135. package/dist/utils/Spaces.js +27 -0
  136. package/package.json +1 -1
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = exports.Text = void 0;
9
+
10
+ var _keys = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/keys"));
11
+
12
+ var _react = _interopRequireDefault(require("react"));
13
+
14
+ var _Text = _interopRequireDefault(require("./Text"));
15
+
16
+ var _options = _interopRequireDefault(require("./options"));
17
+
18
+ var _Text2 = require("./Text.styles");
19
+
20
+ var _default = {
21
+ title: 'v2/Text',
22
+ component: _Text.default,
23
+ parameters: {
24
+ removeBaseHtmlClass: true
25
+ },
26
+ argTypes: {
27
+ variant: {
28
+ control: {
29
+ type: 'select',
30
+ options: (0, _keys.default)(_Text2.variants)
31
+ }
32
+ },
33
+ as: {
34
+ control: {
35
+ type: 'select',
36
+ options: _options.default
37
+ }
38
+ },
39
+ children: {
40
+ control: {
41
+ type: 'text'
42
+ }
43
+ }
44
+ }
45
+ };
46
+ exports.default = _default;
47
+
48
+ var Template = function Template(props) {
49
+ return /*#__PURE__*/_react.default.createElement(_Text.default, props);
50
+ };
51
+
52
+ var Text = Template.bind({});
53
+ exports.Text = Text;
54
+ Text.args = {
55
+ children: 'Bonbon lollipop tiramisu cupcake bear claw cupcake. Icing candy canes cookie caramels wafer tootsie roll soufflé halvah. Ice cream tart gummies apple pie chocolate bar. Pastry gummies macaroon fruitcake donut sweet caramels candy. Oat cake marshmallow biscuit carrot cake fruitcake brownie pastry liquorice liquorice. Topping sweet gingerbread. Chupa chups caramels brownie. Icing jujubes chupa chups cookie. Carrot cake gummi bears powder apple pie donut pudding macaroon. Icing jelly cupcake powder jelly croissant pastry. Powder jelly fruitcake gummies sweet tootsie roll candy. Icing cheesecake toffee tart pastry lemon drops lemon drops bonbon wafer. Cheesecake ice cream wafer apple pie candy canes croissant. Sweet croissant pudding carrot cake oat cake chupa chups. Gingerbread lemon drops biscuit oat cake carrot cake. Chocolate cake jelly-o cake cake candy lollipop.'
56
+ };
@@ -0,0 +1,67 @@
1
+ "use strict";
2
+
3
+ var _Object$keys = require("@babel/runtime-corejs3/core-js-stable/object/keys");
4
+
5
+ var _Object$getOwnPropertySymbols = require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols");
6
+
7
+ var _filterInstanceProperty = require("@babel/runtime-corejs3/core-js-stable/instance/filter");
8
+
9
+ var _Object$getOwnPropertyDescriptor = require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor");
10
+
11
+ var _Object$getOwnPropertyDescriptors = require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptors");
12
+
13
+ var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
14
+
15
+ Object.defineProperty(exports, "__esModule", {
16
+ value: true
17
+ });
18
+ exports.variants = exports.default = void 0;
19
+
20
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/defineProperty"));
21
+
22
+ var _merge = _interopRequireDefault(require("lodash/merge"));
23
+
24
+ var _theme = _interopRequireDefault(require("@chakra-ui/theme"));
25
+
26
+ var _typography = require("../../theme/base/typography");
27
+
28
+ function ownKeys(object, enumerableOnly) { var keys = _Object$keys(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); enumerableOnly && (symbols = _filterInstanceProperty(symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
29
+
30
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors ? Object.defineProperties(target, _Object$getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } return target; }
31
+
32
+ var baseStyle = {
33
+ lineHeight: 1.5,
34
+ fontWeight: _typography.fontWeights.normal
35
+ };
36
+ var variants = {
37
+ body: _objectSpread(_objectSpread({}, baseStyle), {}, {
38
+ fontSize: {
39
+ base: _typography.fontSizes.base,
40
+ desktop: _typography.fontSizes.base
41
+ }
42
+ }),
43
+ body2: _objectSpread(_objectSpread({}, baseStyle), {}, {
44
+ fontSize: {
45
+ base: _typography.fontSizes.sm,
46
+ desktop: _typography.fontSizes.sm
47
+ }
48
+ }),
49
+ caption: _objectSpread(_objectSpread({}, baseStyle), {}, {
50
+ fontSize: {
51
+ base: _typography.fontSizes.xs,
52
+ desktop: _typography.fontSizes.xs
53
+ }
54
+ })
55
+ };
56
+ exports.variants = variants;
57
+ var defaultProps = {
58
+ variant: variants.body
59
+ };
60
+
61
+ var _default = (0, _merge.default)(_theme.default.components.Text, {
62
+ variants: variants,
63
+ baseStyle: baseStyle,
64
+ defaultProps: defaultProps
65
+ });
66
+
67
+ exports.default = _default;
@@ -0,0 +1,123 @@
1
+ "use strict";
2
+
3
+ var _Object$keys = require("@babel/runtime-corejs3/core-js-stable/object/keys");
4
+
5
+ var _Object$getOwnPropertySymbols = require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols");
6
+
7
+ var _filterInstanceProperty = require("@babel/runtime-corejs3/core-js-stable/instance/filter");
8
+
9
+ var _Object$getOwnPropertyDescriptor = require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor");
10
+
11
+ var _Object$getOwnPropertyDescriptors = require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptors");
12
+
13
+ var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
14
+
15
+ Object.defineProperty(exports, "__esModule", {
16
+ value: true
17
+ });
18
+ exports.default = void 0;
19
+
20
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/defineProperty"));
21
+
22
+ var _freeze = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/freeze"));
23
+
24
+ var _Text = require("./Text.styles");
25
+
26
+ var _typography = require("../../theme/base/typography");
27
+
28
+ function ownKeys(object, enumerableOnly) { var keys = _Object$keys(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); enumerableOnly && (symbols = _filterInstanceProperty(symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
29
+
30
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors ? Object.defineProperties(target, _Object$getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } return target; }
31
+
32
+ // Create list of commonly used html text elements
33
+ var asOptions = (0, _freeze.default)({
34
+ bold: 'b',
35
+ strong: 'strong',
36
+ italic: 'i',
37
+ emphasis: 'em',
38
+ small: 'small',
39
+ strikethrough: 's',
40
+ underline: 'u'
41
+ });
42
+ /**
43
+ * ### `combineAsWithVariant`
44
+ * A function that takes in the `as` value (the HTML element to render the Text component as), and the
45
+ * `variant` value. The default-like styling for the `as` prop is merged with the styling from the
46
+ * `variant` and a combined styleProp object is returned.
47
+ *
48
+ * By default the `as` property only effects the underlying semantics of the markup, whereas the
49
+ * `variant` only effects the visual styling of the text. In order for the text component to be built
50
+ * with accessibility and ease-of-use in mind, these two properties _should_ be interconnected. Having
51
+ * the style and markup unified allows an experience that is accessible to those using screen-readers
52
+ * (or any other assistive technology) that matches (or is at least a close approximation) of the
53
+ * "standard" visual experience.
54
+ *
55
+ * @function combineAsWithVariant
56
+ * @param {string} args.as - The HTML element to render the Text component as
57
+ * @param {string} args.variant - The style variant for the Text component
58
+ * @returns {Object} An object containing the merged styleProps from the `variant` and the `as` props
59
+ */
60
+
61
+ var combineAsWithVariant = function combineAsWithVariant(_ref) {
62
+ var as = _ref.as,
63
+ variant = _ref.variant;
64
+ var variantFontSizeBase = Number(_Text.variants["".concat(variant)].fontSize.base.replace('rem', ''));
65
+ var variantFontSizeDesktop = Number(_Text.variants["".concat(variant)].fontSize.desktop.replace('rem', ''));
66
+ var styleProps;
67
+
68
+ switch (as) {
69
+ case asOptions.bold:
70
+ styleProps = _objectSpread(_objectSpread({}, _Text.variants["".concat(variant)]), {}, {
71
+ fontWeight: _typography.fontWeights.semibold
72
+ });
73
+ break;
74
+
75
+ case asOptions.strong:
76
+ styleProps = _objectSpread(_objectSpread({}, _Text.variants["".concat(variant)]), {}, {
77
+ fontWeight: _typography.fontWeights.semibold
78
+ });
79
+ break;
80
+
81
+ case asOptions.italic:
82
+ styleProps = _objectSpread(_objectSpread({}, _Text.variants["".concat(variant)]), {}, {
83
+ fontStyle: 'italic'
84
+ });
85
+ break;
86
+
87
+ case asOptions.emphasis:
88
+ styleProps = _objectSpread(_objectSpread({}, _Text.variants["".concat(variant)]), {}, {
89
+ fontStyle: 'italic'
90
+ });
91
+ break;
92
+
93
+ case asOptions.underline:
94
+ styleProps = _objectSpread(_objectSpread({}, _Text.variants["".concat(variant)]), {}, {
95
+ textDecoration: 'underline'
96
+ });
97
+ break;
98
+
99
+ case asOptions.strikethrough:
100
+ styleProps = _objectSpread(_objectSpread({}, _Text.variants["".concat(variant)]), {}, {
101
+ textDecoration: 'line-through'
102
+ });
103
+ break;
104
+
105
+ case asOptions.small:
106
+ styleProps = _objectSpread(_objectSpread({}, _Text.variants["".concat(variant)]), {}, {
107
+ fontSize: {
108
+ base: "".concat(variantFontSizeBase * 0.8, "rem"),
109
+ desktop: "".concat(variantFontSizeDesktop * 0.8, "rem")
110
+ }
111
+ });
112
+ break;
113
+
114
+ default:
115
+ styleProps = _objectSpread({}, _Text.variants["".concat(variant)]);
116
+ break;
117
+ }
118
+
119
+ return styleProps;
120
+ };
121
+
122
+ var _default = combineAsWithVariant;
123
+ exports.default = _default;
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var options = ['a', 'abbr', 'address', 'article', 'aside', 'b', 'bdi', 'bdo', 'blockquote', 'button', 'caption', 'cite', 'code', 'colgroup', 'data', 'datalist', 'dd', 'del', 'details', 'dfn', 'dialog', 'div', 'dl', 'dt', 'em', 'fieldset', 'figure', 'footer', 'form', 'header', 'hgroup', 'i', 'input', 'ins', 'kbd', 'label', 'legend', 'li', 'link', 'main', 'map', 'mark', 'menu', 'meter', 'nav', 'noscript', 'object', 'ol', 'optgroup', 'option', 'output', 'p', 'pre', 'progress', 'q', 'rb', 'rp', 'rt', 'rtc', 'ruby', 's', 'samp', 'script', 'section', 'select', 'small', 'span', 'strong', 'style', 'sub', 'summary', 'sup', 'table', 'tbody', 'td', 'template', 'textarea', 'tfoot', 'th', 'thead', 'time', 'title', 'tr', 'track', 'u', 'ul', 'var', 'video'];
8
+ var _default = options;
9
+ exports.default = _default;
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+
3
+ var _typeof = require("@babel/runtime-corejs3/helpers/typeof");
4
+
5
+ var _WeakMap = require("@babel/runtime-corejs3/core-js-stable/weak-map");
6
+
7
+ var _Object$getOwnPropertyDescriptor = require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor");
8
+
9
+ var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
10
+
11
+ Object.defineProperty(exports, "__esModule", {
12
+ value: true
13
+ });
14
+ exports.default = void 0;
15
+
16
+ var _extends2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/extends"));
17
+
18
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/objectWithoutProperties"));
19
+
20
+ var _propTypes = _interopRequireDefault(require("prop-types"));
21
+
22
+ var _react = _interopRequireWildcard(require("react"));
23
+
24
+ var _react2 = require("@chakra-ui/react");
25
+
26
+ var _theme = _interopRequireDefault(require("../../theme"));
27
+
28
+ var _global = require("../../theme/global");
29
+
30
+ var _merge = _interopRequireDefault(require("lodash/merge"));
31
+
32
+ var _excluded = ["theme", "useLegacyOverrides", "disableExternalFonts", "children"];
33
+
34
+ function _getRequireWildcardCache(nodeInterop) { if (typeof _WeakMap !== "function") return null; var cacheBabelInterop = new _WeakMap(); var cacheNodeInterop = new _WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
35
+
36
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && _Object$getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
37
+
38
+ var ThemeProvider = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
39
+ var theme = _ref.theme,
40
+ useLegacyOverrides = _ref.useLegacyOverrides,
41
+ _ref$disableExternalF = _ref.disableExternalFonts,
42
+ disableExternalFonts = _ref$disableExternalF === void 0 ? false : _ref$disableExternalF,
43
+ children = _ref.children,
44
+ props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
45
+ return /*#__PURE__*/_react.default.createElement(_react2.ChakraProvider, (0, _extends2.default)({}, props, {
46
+ ref: ref,
47
+ theme: (0, _merge.default)(_theme.default, theme)
48
+ }), disableExternalFonts ? null : /*#__PURE__*/_react.default.createElement(_global.Fonts, null), /*#__PURE__*/_react.default.createElement(_global.LegacyOverrides, {
49
+ useLegacyOverrides: useLegacyOverrides
50
+ }), children);
51
+ });
52
+ ThemeProvider.propTypes = {
53
+ /** If true, this will use the old `spothero-html` base styles */
54
+ useLegacyOverrides: _propTypes.default.bool,
55
+
56
+ /** If true, this will not load the `Fonts` global styles */
57
+ disableExternalFonts: _propTypes.default.bool,
58
+
59
+ /** The React node (generally your entire App) that will be provided the theme */
60
+ children: _propTypes.default.node,
61
+
62
+ /** Adds additional themeing on top of SpotHero's default configuration */
63
+ theme: _propTypes.default.object
64
+ };
65
+ var _default = ThemeProvider;
66
+ exports.default = _default;
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = exports.ThemeProvider = void 0;
9
+
10
+ var _react = _interopRequireDefault(require("react"));
11
+
12
+ var _react2 = require("@chakra-ui/react");
13
+
14
+ var _ThemeProvider = _interopRequireDefault(require("./ThemeProvider"));
15
+
16
+ var _Spaces = _interopRequireDefault(require("../../utils/Spaces"));
17
+
18
+ var _Text = _interopRequireDefault(require("../Text/Text"));
19
+
20
+ var _disableArgs = _interopRequireDefault(require("storybook/utils/disable-args"));
21
+
22
+ var Usage = function Usage() {
23
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, "// RootComponent.jsx", /*#__PURE__*/_react.default.createElement("br", null), "...", /*#__PURE__*/_react.default.createElement("br", null), "return (", /*#__PURE__*/_react.default.createElement("br", null), /*#__PURE__*/_react.default.createElement(_Spaces.default, null), "<ThemeProvider>", /*#__PURE__*/_react.default.createElement("br", null), /*#__PURE__*/_react.default.createElement(_Spaces.default, {
24
+ spaces: 6
25
+ }), "<App/>", /*#__PURE__*/_react.default.createElement("br", null), /*#__PURE__*/_react.default.createElement(_Spaces.default, null), "</ThemeProvider>", /*#__PURE__*/_react.default.createElement("br", null), ");", /*#__PURE__*/_react.default.createElement("br", null), "...");
26
+ };
27
+
28
+ var _default = {
29
+ title: 'v2/ThemeProvider',
30
+ component: _ThemeProvider.default,
31
+ parameters: {
32
+ removeBaseHtmlClass: true,
33
+ usage: [/*#__PURE__*/_react.default.createElement(Usage, {
34
+ key: 1
35
+ })]
36
+ }
37
+ };
38
+ exports.default = _default;
39
+
40
+ var Template = function Template(props, _ref) {
41
+ var hasDarkBackground = _ref.hasDarkBackground;
42
+ var contentTextColor = hasDarkBackground ? 'text.primary.dark' : 'text.primary.light';
43
+ return /*#__PURE__*/_react.default.createElement(_react2.Box, null, /*#__PURE__*/_react.default.createElement(_Text.default, {
44
+ mb: 8,
45
+ color: contentTextColor
46
+ }, "As the name implies, this is a theme context provider that all of your v2 components utilize. It is required by all apps moving to v2"), /*#__PURE__*/_react.default.createElement(_Text.default, null), /*#__PURE__*/_react.default.createElement(_Text.default, {
47
+ mb: 8,
48
+ color: contentTextColor
49
+ }, "ThemeProvider has a ", /*#__PURE__*/_react.default.createElement(_react2.Code, null, "theme"), " prop that takes a theme object. Unlike how we are both overriding and extending Chakra's default theme, this property only extends our default theme configuration."), ' ', /*#__PURE__*/_react.default.createElement(_Text.default, {
50
+ mb: 8,
51
+ color: contentTextColor
52
+ }, "ThemeProvider has a ", /*#__PURE__*/_react.default.createElement(_react2.Code, null, "useLegacyOverrides"), " prop that is a boolean. If true, the ThemeProvider will insert the typography styling from .spothero-html"), ' ', /*#__PURE__*/_react.default.createElement(_Text.default, {
53
+ mb: 8,
54
+ color: contentTextColor
55
+ }, "ThemeProvider also has a ", /*#__PURE__*/_react.default.createElement(_react2.Code, null, "disableExternalFonts"), " prop that is a boolean. If true, the ThemeProvider will not load the font files from Google's CDN, and you will be able to handle fonts on a project-level."), ' ');
56
+ };
57
+
58
+ var ThemeProvider = Template.bind({});
59
+ exports.ThemeProvider = ThemeProvider;
60
+ ThemeProvider.parameters = {
61
+ importBy: 'ThemeProvider'
62
+ };
63
+ ThemeProvider.argTypes = (0, _disableArgs.default)(['theme', 'children', 'useLegacyOverrides']);