@ntbjs/react-components 1.1.0-beta.5 → 1.1.0-beta.51

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 (57) hide show
  1. package/{ActionButton-90485300.js → ActionButton-c3f5ed94.js} +1 -1
  2. package/Alert-3e4f8be1.js +62 -0
  3. package/{AssetGallery-3fc6e3b6.js → AssetGallery-bbcec975.js} +23 -35
  4. package/{AssetPreviewTopBar-777c726a.js → AssetPreviewTopBar-159b9885.js} +2 -2
  5. package/{AutocompleteSelect-e2063407.js → AutocompleteSelect-45be3cb4.js} +22 -12
  6. package/{Badge-34ad2850.js → Badge-9bcebe96.js} +1 -1
  7. package/{Button-dc939c80.js → Button-dd271c4b.js} +3 -3
  8. package/{Checkbox-50f1f3c7.js → Checkbox-012bbd3f.js} +3 -3
  9. package/{CompactStarRating-f9997240.js → CompactStarRating-364ca893.js} +44 -31
  10. package/{CompactTextInput-8c9b061b.js → CompactTextInput-59fc62d5.js} +8 -7
  11. package/{ContextMenu-5bd3b640.js → ContextMenu-d088833b.js} +2 -2
  12. package/{InputGroup-66dd343c.js → InputGroup-09ce9572.js} +1 -1
  13. package/Instructions-d8ab91c2.js +217 -0
  14. package/{MultiSelect-e4868f52.js → MultiSelect-2cbc13b3.js} +7 -3
  15. package/{Popover-616682bf.js → Popover-11df9750.js} +2 -7
  16. package/{Radio-0b46b2a8.js → Radio-0594409d.js} +1 -1
  17. package/{SectionSeparator-12aff748.js → SectionSeparator-225719cd.js} +1 -1
  18. package/{Switch-aa384260.js → Switch-cd165c8c.js} +1 -1
  19. package/{Tab-fc380f0b.js → Tab-bd0f3345.js} +11 -6
  20. package/{Tabs-d6f0aaf5.js → Tabs-70653e98.js} +48 -11
  21. package/{TextArea-8a0bd754.js → TextArea-8cffb1e7.js} +5 -5
  22. package/{TextInput-e4c6d536.js → TextInput-a1083be3.js} +1 -1
  23. package/{Tooltip-860530ff.js → Tooltip-e4e5e0e5.js} +13 -11
  24. package/data/Alert/index.js +10 -0
  25. package/data/Badge/index.js +2 -2
  26. package/data/Popover/index.js +3 -2
  27. package/data/Tab/index.js +2 -2
  28. package/data/Tabs/index.js +3 -3
  29. package/data/Tooltip/index.js +12 -0
  30. package/data/index.js +11 -8
  31. package/{defaultTheme-870f7df1.js → defaultTheme-50f2b88f.js} +17 -0
  32. package/inputs/ActionButton/index.js +2 -2
  33. package/inputs/AutocompleteSelect/index.js +3 -3
  34. package/inputs/Button/index.js +5 -4
  35. package/inputs/Checkbox/index.js +2 -2
  36. package/inputs/CompactStarRating/index.js +2 -2
  37. package/inputs/CompactTextInput/index.js +9 -7
  38. package/inputs/MultiSelect/index.js +3 -3
  39. package/inputs/Radio/index.js +2 -2
  40. package/inputs/Switch/index.js +2 -2
  41. package/inputs/TextArea/index.js +2 -2
  42. package/inputs/TextInput/index.js +2 -2
  43. package/inputs/index.js +21 -19
  44. package/layout/InputGroup/index.js +2 -2
  45. package/layout/SectionSeparator/index.js +2 -2
  46. package/layout/index.js +3 -3
  47. package/package.json +3 -3
  48. package/{react-select-creatable.esm-9283eec1.js → react-select-creatable.esm-2f23d6c6.js} +133 -43
  49. package/shift-away-subtle-cfdf1dbe.js +9 -0
  50. package/warning-circle-24522402.js +41 -0
  51. package/widgets/AssetGallery/index.js +23 -20
  52. package/widgets/AssetPreview/AssetPreviewTopBar/index.js +2 -2
  53. package/widgets/ContextMenu/ContextMenuItem/index.js +2 -4
  54. package/widgets/ContextMenu/ContextMenuItemsGroup/index.js +1 -1
  55. package/widgets/ContextMenu/index.js +2 -2
  56. package/widgets/Instructions/index.js +22 -0
  57. package/widgets/index.js +26 -21
@@ -0,0 +1,217 @@
1
+ 'use strict';
2
+
3
+ var defaultTheme = require('./defaultTheme-50f2b88f.js');
4
+ var React = require('react');
5
+ var styled = require('styled-components');
6
+ var TextArea = require('./TextArea-8cffb1e7.js');
7
+ var AutocompleteSelect = require('./AutocompleteSelect-45be3cb4.js');
8
+ var warningCircle = require('./warning-circle-24522402.js');
9
+ var lodash = require('lodash');
10
+
11
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
12
+
13
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
14
+ var styled__default = /*#__PURE__*/_interopDefaultLegacy(styled);
15
+
16
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4;
17
+ var Instructions$1 = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject || (_templateObject = defaultTheme._taggedTemplateLiteral(["\n display: flex;\n position: relative;\n flex-direction: column;\n width: 100%;\n ", ";\n"])), function (props) {
18
+ return props.theme.themeProp('background', '#634E01', props.theme.getColor('signal-yellow-400'));
19
+ });
20
+ var TopBarContainer = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject2 || (_templateObject2 = defaultTheme._taggedTemplateLiteral(["\n position: absolute;\n display: flex;\n justify-content: end;\n ", ";\n\n ", ";\n\n width: 100%;\n margin-top: 0;\n transition: margin-top 120ms;\n &&.slide-in {\n margin-top: -24px;\n }\n"])), function (props) {
21
+ return props.theme.themeProp('background', '#634E01', props.theme.getColor('signal-yellow-400'));
22
+ }, function (props) {
23
+ return props.initialHover && props.theme.themeProp('background', '#FFFDE8', '#FFFDE8');
24
+ });
25
+ var SelectContainer = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject3 || (_templateObject3 = defaultTheme._taggedTemplateLiteral(["\n width: 35%;\n margin-right: 3px;\n"])));
26
+ var InstructionsArea = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject4 || (_templateObject4 = defaultTheme._taggedTemplateLiteral(["\n margin: 0;\n width: 100%;\n margin: auto;\n ", ";\n"])), function (props) {
27
+ return props.theme.themeProp('background', '#634E01', props.theme.getColor('signal-yellow-400'));
28
+ });
29
+
30
+ var Instructions = React__default['default'].forwardRef(function Instructions(_ref, forwardedRef) {
31
+ var clickToAdd = _ref.clickToAdd,
32
+ customAddMessage = _ref.customAddMessage,
33
+ selectedOption = _ref.selectedOption,
34
+ loadOptions = _ref.loadOptions,
35
+ readOnly = _ref.readOnly,
36
+ name = _ref.name,
37
+ lightBackground = _ref.lightBackground,
38
+ autoSelect = _ref.autoSelect,
39
+ subscribeCurrentValueProp = _ref.subscribeCurrentValue,
40
+ onChangeProp = _ref.onChange,
41
+ onFocusProp = _ref.onFocus,
42
+ onBlurProp = _ref.onBlur,
43
+ onUpdateCallback = _ref.onUpdateCallback,
44
+ availableOptions = _ref.availableOptions,
45
+ loadingMessageFunc = _ref.loadingMessageFunc,
46
+ placeholder = _ref.placeholder,
47
+ props = defaultTheme._objectWithoutProperties(_ref, ["clickToAdd", "customAddMessage", "selectedOption", "loadOptions", "readOnly", "name", "lightBackground", "autoSelect", "subscribeCurrentValue", "onChange", "onFocus", "onBlur", "onUpdateCallback", "availableOptions", "loadingMessageFunc", "placeholder"]);
48
+
49
+ var _useState = React.useState(false),
50
+ _useState2 = defaultTheme._slicedToArray(_useState, 2),
51
+ isHovered = _useState2[0],
52
+ setIsHovered = _useState2[1];
53
+
54
+ var _useState3 = React.useState({}),
55
+ _useState4 = defaultTheme._slicedToArray(_useState3, 2),
56
+ selected = _useState4[0],
57
+ setSelected = _useState4[1];
58
+
59
+ var _useState5 = React.useState(clickToAdd),
60
+ _useState6 = defaultTheme._slicedToArray(_useState5, 2),
61
+ addInstructions = _useState6[0],
62
+ setAddInstructions = _useState6[1];
63
+
64
+ var _useState7 = React.useState(customAddMessage),
65
+ _useState8 = defaultTheme._slicedToArray(_useState7, 2),
66
+ customMessage = _useState8[0],
67
+ setCustomMessage = _useState8[1];
68
+
69
+ var _useState9 = React.useState(lightBackground),
70
+ _useState10 = defaultTheme._slicedToArray(_useState9, 2),
71
+ background = _useState10[0],
72
+ setBackground = _useState10[1];
73
+
74
+ var _useState11 = React.useState(true),
75
+ _useState12 = defaultTheme._slicedToArray(_useState11, 2),
76
+ initialHover = _useState12[0],
77
+ setInitialHover = _useState12[1];
78
+
79
+ var _useState13 = React.useState(),
80
+ _useState14 = defaultTheme._slicedToArray(_useState13, 2),
81
+ currentValue = _useState14[0],
82
+ setCurrentValue = _useState14[1];
83
+
84
+ React.useEffect(function () {
85
+ if (lodash.isFunction(subscribeCurrentValueProp)) {
86
+ subscribeCurrentValueProp(currentValue);
87
+ }
88
+ }, [currentValue]);
89
+ React.useEffect(function () {
90
+ handleChange(selected);
91
+ }, [selected]);
92
+ React.useEffect(function () {
93
+ if (selectedOption) {
94
+ setCurrentValue(selectedOption.value);
95
+ }
96
+ }, [selectedOption]);
97
+ React.useEffect(function () {
98
+ if (addInstructions) {
99
+ setCurrentValue(customMessage);
100
+ setInitialHover(true);
101
+ }
102
+ }, [addInstructions, handleOnFocus]);
103
+ var onChange = React.useCallback(function (event) {
104
+ setCurrentValue(event.target.value);
105
+
106
+ if (lodash.isFunction(onChangeProp)) {
107
+ onChangeProp(event);
108
+ }
109
+ }, [onChangeProp]);
110
+ var onFocus = React.useCallback(function (event) {
111
+ if (autoSelect) {
112
+ event.target.select();
113
+ }
114
+
115
+ if (lodash.isFunction(onFocusProp)) {
116
+ onFocusProp(event);
117
+ }
118
+
119
+ if (event.target.value === customMessage) {
120
+ setCurrentValue('');
121
+ }
122
+ }, [autoSelect, readOnly, onFocusProp]);
123
+ var onBlur = React.useCallback(function (event) {
124
+ if (lodash.isFunction(onBlurProp)) {
125
+ onBlurProp(event);
126
+ }
127
+ }, [onBlurProp]);
128
+
129
+ var handleMouseEnter = function handleMouseEnter() {
130
+ setIsHovered(true);
131
+ };
132
+
133
+ var handleMouseLeave = function handleMouseLeave() {
134
+ setIsHovered(false);
135
+ };
136
+
137
+ var handleOnFocus = function handleOnFocus() {
138
+ if (customMessage === currentValue) {
139
+ setCurrentValue('');
140
+ }
141
+ };
142
+
143
+ var handleChange = function handleChange(selected) {
144
+ if (selected === null) {
145
+ setSelected({});
146
+ setAddInstructions(true);
147
+ setBackground(true);
148
+ setInitialHover(true);
149
+ setCustomMessage(customAddMessage);
150
+ } else {
151
+ setSelected(selected);
152
+ setCurrentValue(selected.value);
153
+ setAddInstructions(false);
154
+ setBackground(false);
155
+ setInitialHover(false);
156
+ onUpdateCallback(selected);
157
+ }
158
+ };
159
+
160
+ var sharedSelectProps = {
161
+ options: loadOptions ? undefined : availableOptions,
162
+ loadOptions: loadOptions,
163
+ loadingMessage: loadingMessageFunc,
164
+ placeholder: placeholder
165
+ };
166
+ return React__default['default'].createElement(Instructions$1, defaultTheme._extends({
167
+ ref: forwardedRef,
168
+ initialHover: initialHover,
169
+ onMouseEnter: handleMouseEnter,
170
+ onMouseLeave: handleMouseLeave
171
+ }, props), React__default['default'].createElement(TopBarContainer, {
172
+ initialHover: initialHover,
173
+ className: isHovered && !readOnly && 'slide-in'
174
+ }, React__default['default'].createElement(SelectContainer, null, React__default['default'].createElement(AutocompleteSelect.AutocompleteSelect, defaultTheme._extends({
175
+ warning: true,
176
+ value: selectedOption,
177
+ creatable: false,
178
+ onChange: handleChange
179
+ }, sharedSelectProps)))), React__default['default'].createElement(InstructionsArea, null, React__default['default'].createElement(TextArea.TextArea, {
180
+ noBorder: true,
181
+ lightBackground: background,
182
+ readOnly: readOnly,
183
+ warningAlert: true,
184
+ name: name,
185
+ value: currentValue === null ? '' : currentValue,
186
+ onFocus: onFocus,
187
+ onChange: onChange,
188
+ onBlur: onBlur,
189
+ icon: React__default['default'].createElement(warningCircle.SvgWarningCircle, null)
190
+ })));
191
+ });
192
+ Instructions.defaultProps = {
193
+ clickToAdd: false,
194
+ lightBackground: false,
195
+ autoSelect: true
196
+ };
197
+ Instructions.propTypes = process.env.NODE_ENV !== "production" ? {
198
+ name: defaultTheme.PropTypes.string,
199
+ placeholder: defaultTheme.PropTypes.string,
200
+ selectedOption: defaultTheme.PropTypes.any,
201
+ loadOptions: defaultTheme.PropTypes.func,
202
+ loadingMessageFunc: defaultTheme.PropTypes.func,
203
+ clickToAdd: defaultTheme.PropTypes.bool,
204
+ customAddMessage: defaultTheme.PropTypes.string,
205
+ autoSelect: defaultTheme.PropTypes.bool,
206
+ readOnly: defaultTheme.PropTypes.bool,
207
+ availableOptions: defaultTheme.PropTypes.arrayOf(defaultTheme.PropTypes.object),
208
+ lightBackground: defaultTheme.PropTypes.bool,
209
+ options: defaultTheme.PropTypes.array,
210
+ subscribeCurrentValue: defaultTheme.PropTypes.func,
211
+ onChange: defaultTheme.PropTypes.func,
212
+ onFocus: defaultTheme.PropTypes.func,
213
+ onBlur: defaultTheme.PropTypes.func,
214
+ onUpdateCallback: defaultTheme.PropTypes.func
215
+ } : {};
216
+
217
+ exports.Instructions = Instructions;
@@ -1,11 +1,11 @@
1
1
  'use strict';
2
2
 
3
- var defaultTheme = require('./defaultTheme-870f7df1.js');
3
+ var defaultTheme = require('./defaultTheme-50f2b88f.js');
4
4
  var React = require('react');
5
5
  var styled = require('styled-components');
6
6
  var close = require('./close-ebf2f3cf.js');
7
7
  var Select = require('react-select');
8
- var reactSelectCreatable_esm = require('./react-select-creatable.esm-9283eec1.js');
8
+ var reactSelectCreatable_esm = require('./react-select-creatable.esm-2f23d6c6.js');
9
9
  var reactSelectAsyncPaginate = require('react-select-async-paginate');
10
10
 
11
11
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
@@ -36,7 +36,7 @@ var ValueContainer = styled__default['default'](Select.components.ValueContainer
36
36
  });
37
37
  });
38
38
  var MultiValueWrapper = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject10 || (_templateObject10 = defaultTheme._taggedTemplateLiteral(["\n && {\n border-radius: 3px;\n margin: 0;\n }\n"])));
39
- var MultiValue = styled__default['default'](Select.components.MultiValue).attrs(defaultTheme.applyDefaultTheme)(_templateObject11 || (_templateObject11 = defaultTheme._taggedTemplateLiteral(["\n && {\n border-radius: 3px;\n margin: 0;\n\n ", "\n\n ", "\n\n > div {\n align-items: center;\n display: flex;\n font-size: 12px;\n min-height: 26px;\n\n :first-child {\n padding: ", ";\n }\n\n :last-child:not(:only-child) {\n padding: 0 8px 0 5px;\n height: 100%;\n width: fit-content;\n }\n\n :last-child:not(:only-child):hover {\n background-color: ", ";\n border-bottom-left-radius: 0;\n border-top-left-radius: 0;\n cursor: pointer;\n }\n\n svg {\n stroke: white;\n stroke-width: 2px;\n width: 8px;\n }\n\n :hover {\n cursor: pointer;\n }\n }\n"])), function (props) {
39
+ var MultiValue = styled__default['default'](Select.components.MultiValue).attrs(defaultTheme.applyDefaultTheme)(_templateObject11 || (_templateObject11 = defaultTheme._taggedTemplateLiteral(["\n && {\n border-radius: 3px;\n margin: 0;\n\n ", "\n\n ", "\n\n > div {\n align-items: center;\n display: flex;\n font-size: 12px;\n min-height: 26px;\n\n :first-of-type {\n padding: ", ";\n }\n\n :last-child:not(:only-child) {\n padding: 0 8px 0 5px;\n height: 100%;\n width: fit-content;\n }\n\n :last-child:not(:only-child):hover {\n background-color: ", ";\n border-bottom-left-radius: 0;\n border-top-left-radius: 0;\n cursor: pointer;\n }\n\n svg {\n stroke: white;\n stroke-width: 2px;\n width: 8px;\n }\n\n :hover {\n cursor: pointer;\n }\n }\n"])), function (props) {
40
40
  return props.theme.themeProp('background-color', props.theme.getColor('gray-600'), props.theme.getColor('gray-800'));
41
41
  }, function (props) {
42
42
  return props.theme.themeProp('color', props.theme.getColor('gray-100'), props.theme.getColor('gray-100'));
@@ -127,6 +127,10 @@ var MultiSelect = React__default['default'].forwardRef(function MultiSelect(_ref
127
127
  cacheUnique = _useState8[0],
128
128
  setCacheUnique = _useState8[1];
129
129
 
130
+ React.useEffect(function () {
131
+ setSelected(selectedOptions);
132
+ }, [selectedOptions]);
133
+
130
134
  var handleShowMoreClick = function handleShowMoreClick() {
131
135
  setDisplayShowMore(false);
132
136
  };
@@ -1,11 +1,12 @@
1
1
  'use strict';
2
2
 
3
- var defaultTheme = require('./defaultTheme-870f7df1.js');
3
+ var defaultTheme = require('./defaultTheme-50f2b88f.js');
4
4
  var React = require('react');
5
5
  var lodash = require('lodash');
6
6
  var styled = require('styled-components');
7
7
  var polished = require('polished');
8
8
  var TippyTooltip = require('@tippyjs/react');
9
+ require('./shift-away-subtle-cfdf1dbe.js');
9
10
 
10
11
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
11
12
 
@@ -13,12 +14,6 @@ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
13
14
  var styled__default = /*#__PURE__*/_interopDefaultLegacy(styled);
14
15
  var TippyTooltip__default = /*#__PURE__*/_interopDefaultLegacy(TippyTooltip);
15
16
 
16
- var css_248z$1 = ".tippy-box[data-animation=fade][data-state=hidden]{opacity:0}[data-tippy-root]{max-width:calc(100vw - 10px)}.tippy-box{position:relative;background-color:#333;color:#fff;border-radius:4px;font-size:14px;line-height:1.4;outline:0;transition-property:transform,visibility,opacity}.tippy-box[data-placement^=top]>.tippy-arrow{bottom:0}.tippy-box[data-placement^=top]>.tippy-arrow:before{bottom:-7px;left:0;border-width:8px 8px 0;border-top-color:initial;transform-origin:center top}.tippy-box[data-placement^=bottom]>.tippy-arrow{top:0}.tippy-box[data-placement^=bottom]>.tippy-arrow:before{top:-7px;left:0;border-width:0 8px 8px;border-bottom-color:initial;transform-origin:center bottom}.tippy-box[data-placement^=left]>.tippy-arrow{right:0}.tippy-box[data-placement^=left]>.tippy-arrow:before{border-width:8px 0 8px 8px;border-left-color:initial;right:-7px;transform-origin:center left}.tippy-box[data-placement^=right]>.tippy-arrow{left:0}.tippy-box[data-placement^=right]>.tippy-arrow:before{left:-7px;border-width:8px 8px 8px 0;border-right-color:initial;transform-origin:center right}.tippy-box[data-inertia][data-state=visible]{transition-timing-function:cubic-bezier(.54,1.5,.38,1.11)}.tippy-arrow{width:16px;height:16px;color:#333}.tippy-arrow:before{content:\"\";position:absolute;border-color:transparent;border-style:solid}.tippy-content{position:relative;padding:5px 9px;z-index:1}";
17
- defaultTheme.styleInject(css_248z$1);
18
-
19
- var css_248z = ".tippy-box[data-animation=shift-away-subtle][data-state=hidden]{opacity:0}.tippy-box[data-animation=shift-away-subtle][data-state=hidden][data-placement^=top]{transform:translateY(5px)}.tippy-box[data-animation=shift-away-subtle][data-state=hidden][data-placement^=bottom]{transform:translateY(-5px)}.tippy-box[data-animation=shift-away-subtle][data-state=hidden][data-placement^=left]{transform:translateX(5px)}.tippy-box[data-animation=shift-away-subtle][data-state=hidden][data-placement^=right]{transform:translateX(-5px)}";
20
- defaultTheme.styleInject(css_248z);
21
-
22
17
  var _templateObject, _templateObject2, _templateObject3;
23
18
  var Popover$1 = styled__default['default'](TippyTooltip__default['default']).attrs(defaultTheme.applyDefaultTheme)(_templateObject || (_templateObject = defaultTheme._taggedTemplateLiteral(["\n font-family: ", ";\n font-size: 1rem;\n font-weight: 400;\n color: inherit;\n border-radius: 0;\n line-height: inherit;\n\n ", "\n\n ", "\n\n ", "\n\n ", "\n\n ", "\n\n .tippy-content {\n padding: 0;\n }\n\n .tippy-arrow {\n ", "\n }\n\n && > .tippy-arrow::before {\n position: absolute;\n border-color: transparent;\n border-style: solid;\n }\n\n & > .tippy-arrow::after {\n content: '';\n position: absolute;\n border-color: transparent;\n border-style: solid;\n }\n\n &[data-placement^='top'] {\n & > .tippy-arrow:before {\n bottom: -16px;\n left: -5px;\n border-width: 15px 13px 0;\n ", "\n }\n\n & > .tippy-arrow:after {\n bottom: -15px;\n left: -5px;\n border-width: 15px 13px 0;\n border-top-color: initial;\n transform-origin: center top;\n }\n }\n\n &[data-placement^='right'] {\n & > .tippy-arrow:before {\n bottom: -5px;\n left: -16px;\n border-width: 13px 15px 13px 0;\n ", "\n }\n\n & > .tippy-arrow:after {\n bottom: -5px;\n left: -15px;\n border-width: 13px 15px 13px 0;\n border-right-color: initial;\n transform-origin: center top;\n }\n }\n\n &[data-placement^='bottom'] {\n & > .tippy-arrow:before {\n top: -16px;\n left: -5px;\n border-width: 0 13px 15px 13px;\n ", "\n }\n\n & > .tippy-arrow:after {\n top: -15px;\n left: -5px;\n border-width: 0 13px 15px 13px;\n border-bottom-color: initial;\n transform-origin: center top;\n }\n }\n\n &[data-placement^='left'] {\n & > .tippy-arrow::before {\n bottom: -5px;\n right: -16px;\n border-width: 13px 0 13px 15px;\n ", "\n }\n\n & > .tippy-arrow::after {\n bottom: -5px;\n right: -15px;\n border-width: 13px 0 13px 15px;\n border-left-color: initial;\n transform-origin: center top;\n }\n }\n"])), function (props) {
24
19
  return props.theme.primaryFontFamily;
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var defaultTheme = require('./defaultTheme-870f7df1.js');
3
+ var defaultTheme = require('./defaultTheme-50f2b88f.js');
4
4
  var React = require('react');
5
5
  var nanoid = require('nanoid');
6
6
  var polished = require('polished');
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var defaultTheme = require('./defaultTheme-870f7df1.js');
3
+ var defaultTheme = require('./defaultTheme-50f2b88f.js');
4
4
  var React = require('react');
5
5
  var styled = require('styled-components');
6
6
 
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var defaultTheme = require('./defaultTheme-870f7df1.js');
3
+ var defaultTheme = require('./defaultTheme-50f2b88f.js');
4
4
  var React = require('react');
5
5
  var nanoid = require('nanoid');
6
6
  var polished = require('polished');
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var defaultTheme = require('./defaultTheme-870f7df1.js');
3
+ var defaultTheme = require('./defaultTheme-50f2b88f.js');
4
4
  var React = require('react');
5
5
  var styled = require('styled-components');
6
6
 
@@ -10,21 +10,26 @@ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
10
10
  var styled__default = /*#__PURE__*/_interopDefaultLegacy(styled);
11
11
 
12
12
  var _templateObject;
13
- var Tab$1 = styled__default['default'].p.attrs(defaultTheme.applyDefaultTheme)(_templateObject || (_templateObject = defaultTheme._taggedTemplateLiteral(["\n font-family: ", ";\n font-size: 1rem;\n font-weight: 500;\n border-bottom: 1px solid;\n min-height: 35px;\n\n"])), function (props) {
13
+ var Tab$1 = styled__default['default'].p.attrs(defaultTheme.applyDefaultTheme)(_templateObject || (_templateObject = defaultTheme._taggedTemplateLiteral(["\n font-family: ", ";\n font-size: 1rem;\n font-weight: 500;\n border-bottom: 1px solid;\n min-height: 35px;\n"])), function (props) {
14
14
  return props.theme.primaryFontFamily;
15
15
  });
16
16
 
17
17
  var Tab = React__default['default'].forwardRef(function Tab(_ref, forwardedRef) {
18
18
  var children = _ref.children,
19
- props = defaultTheme._objectWithoutProperties(_ref, ["children"]);
19
+ hidden = _ref.hidden,
20
+ props = defaultTheme._objectWithoutProperties(_ref, ["children", "hidden"]);
20
21
 
21
22
  return React__default['default'].createElement(Tab$1, defaultTheme._extends({
22
- ref: forwardedRef
23
+ ref: forwardedRef,
24
+ hidden: hidden
23
25
  }, props), children);
24
26
  });
25
27
  Tab.propTypes = process.env.NODE_ENV !== "production" ? {
26
- children: defaultTheme.PropTypes.string
28
+ children: defaultTheme.PropTypes.any,
29
+ hidden: defaultTheme.PropTypes.bool
27
30
  } : {};
28
- Tab.defaultProps = {};
31
+ Tab.defaultProps = {
32
+ hidden: false
33
+ };
29
34
 
30
35
  exports.Tab = Tab;
@@ -1,9 +1,9 @@
1
1
  'use strict';
2
2
 
3
- var defaultTheme = require('./defaultTheme-870f7df1.js');
3
+ var defaultTheme = require('./defaultTheme-50f2b88f.js');
4
4
  var React = require('react');
5
5
  var styled = require('styled-components');
6
- var Tab = require('./Tab-fc380f0b.js');
6
+ var Tab = require('./Tab-bd0f3345.js');
7
7
  var lodash = require('lodash');
8
8
 
9
9
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
@@ -11,13 +11,17 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'defau
11
11
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
12
12
  var styled__default = /*#__PURE__*/_interopDefaultLegacy(styled);
13
13
 
14
- var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5;
15
- var Tabs$1 = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject || (_templateObject = defaultTheme._taggedTemplateLiteral([""])));
16
- var TabHeaders = styled__default['default'].ul.attrs(defaultTheme.applyDefaultTheme)(_templateObject2 || (_templateObject2 = defaultTheme._taggedTemplateLiteral(["\n display: flex;\n overflow-x: auto;\n overflow-y: hidden;\n white-space: nowrap;\n gap: 24px;\n margin: 0;\n padding: 0;\n\n"])));
17
- var TabHeader = styled__default['default'].li.attrs(defaultTheme.applyDefaultTheme)(_templateObject3 || (_templateObject3 = defaultTheme._taggedTemplateLiteral(["\n font-family: ", ";\n text-transform: uppercase;\n font-weight: 600;\n font-size: 0.875rem;\n display: flex;\n padding-bottom: 8px;\n letter-spacing: 0.6px;\n cursor: pointer;\n border-bottom: 1px solid;\n border-color: transparent;\n margin-bottom: 1px;\n ", ";\n &&:hover:not(:focus) {\n ", ";\n"])), function (props) {
14
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7;
15
+ var Tabs$1 = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject || (_templateObject = defaultTheme._taggedTemplateLiteral(["\n ", ";\n"])), function (props) {
16
+ return props.backgroundColor && styled.css(_templateObject2 || (_templateObject2 = defaultTheme._taggedTemplateLiteral(["\n background-color: ", ";\n "])), props.backgroundColor);
17
+ });
18
+ var TabHeaders = styled__default['default'].ul.attrs(defaultTheme.applyDefaultTheme)(_templateObject3 || (_templateObject3 = defaultTheme._taggedTemplateLiteral(["\n display: flex;\n overflow-x: auto;\n overflow-y: hidden;\n white-space: nowrap;\n gap: 24px;\n margin: 0;\n padding: 0;\n"])));
19
+ var TabHeader = styled__default['default'].li.attrs(defaultTheme.applyDefaultTheme)(_templateObject4 || (_templateObject4 = defaultTheme._taggedTemplateLiteral(["\n font-family: ", ";\n text-transform: uppercase;\n font-weight: 600;\n font-size: 0.875rem;\n display: flex;\n padding-bottom: 8px;\n letter-spacing: 0.6px;\n cursor: pointer;\n border-bottom: 1px solid;\n border-color: transparent;\n margin-bottom: 1px;\n ", ";\n ", ";\n &&:hover:not(:focus) {\n ", ";\n }\n"])), function (props) {
18
20
  return props.theme.secondaryFontFamily;
19
21
  }, function (props) {
20
- return props.active && styled.css(_templateObject4 || (_templateObject4 = defaultTheme._taggedTemplateLiteral(["\n ", "\n "])), function (props) {
22
+ return props.hidden && styled.css(_templateObject5 || (_templateObject5 = defaultTheme._taggedTemplateLiteral(["\n display: none;\n "])));
23
+ }, function (props) {
24
+ return props.active && styled.css(_templateObject6 || (_templateObject6 = defaultTheme._taggedTemplateLiteral(["\n ", "\n "])), function (props) {
21
25
  return props.theme.themeProp('border-color', props.theme.getColor('gray-400'), props.theme.getColor('gray-700'));
22
26
  });
23
27
  }, function (props) {
@@ -35,7 +39,7 @@ var TabHeader = styled__default['default'].li.attrs(defaultTheme.applyDefaultThe
35
39
  }
36
40
  });
37
41
  });
38
- var TabContent = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject5 || (_templateObject5 = defaultTheme._taggedTemplateLiteral(["\n padding-top: 16px;\n border-top: 1px solid;\n margin-top: -2px;\n ", ";\n"])), function (props) {
42
+ var TabContent = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject7 || (_templateObject7 = defaultTheme._taggedTemplateLiteral(["\n padding-top: 16px;\n border-top: 1px solid;\n margin-top: -2px;\n ", ";\n"])), function (props) {
39
43
  return props.theme.themeProp('border-color', props.theme.getColor('gray-600'), '#F0F2F5');
40
44
  });
41
45
 
@@ -48,6 +52,24 @@ var Tabs = React__default['default'].forwardRef(function Tabs(_ref, forwardedRef
48
52
  activeTab = _useState2[0],
49
53
  setActiveTab = _useState2[1];
50
54
 
55
+ var _useState3 = React.useState(null),
56
+ _useState4 = defaultTheme._slicedToArray(_useState3, 2),
57
+ minHeight = _useState4[0],
58
+ setMinHeight = _useState4[1];
59
+
60
+ var contentRef = React.useRef(null);
61
+ var visibleTabs = [];
62
+ React.useEffect(function () {
63
+ if ((visibleTabs === null || visibleTabs === void 0 ? void 0 : visibleTabs.length) > 0) {
64
+ setActiveTab(visibleTabs[0].key);
65
+ }
66
+ }, [visibleTabs]);
67
+ React.useEffect(function () {
68
+ if (contentRef.current) {
69
+ var height = contentRef.current.offsetHeight;
70
+ setMinHeight(height);
71
+ }
72
+ }, [children]);
51
73
  var tabs = React.useMemo(function () {
52
74
  var tabs = [];
53
75
 
@@ -57,7 +79,11 @@ var Tabs = React__default['default'].forwardRef(function Tabs(_ref, forwardedRef
57
79
  extractChildren(child.props.children);
58
80
  }
59
81
 
60
- if (child.type === Tab.Tab && !lodash.isEmpty(child.props.trigger)) {
82
+ if (child.type === Tab.Tab && !lodash.isEmpty(child.props.trigger) && !child.props.hidden) {
83
+ visibleTabs.push({
84
+ key: index,
85
+ content: child.props.children
86
+ });
61
87
  tabs.push({
62
88
  key: index,
63
89
  trigger: child.props.trigger,
@@ -71,12 +97,16 @@ var Tabs = React__default['default'].forwardRef(function Tabs(_ref, forwardedRef
71
97
  return tabs;
72
98
  }, [children]);
73
99
  return React__default['default'].createElement(Tabs$1, defaultTheme._extends({
100
+ style: {
101
+ minHeight: minHeight
102
+ },
74
103
  ref: forwardedRef
75
104
  }, props, {
76
105
  role: "tablist"
77
106
  }), React__default['default'].createElement(TabHeaders, null, tabs.map(function (tab) {
78
107
  return React__default['default'].createElement(TabHeader, {
79
108
  key: tab.key,
109
+ hidden: tab.hidden,
80
110
  active: tab.key === activeTab,
81
111
  onClick: function onClick() {
82
112
  return setActiveTab(tab.key);
@@ -84,15 +114,22 @@ var Tabs = React__default['default'].forwardRef(function Tabs(_ref, forwardedRef
84
114
  role: "tab"
85
115
  }, tab.trigger);
86
116
  })), React__default['default'].createElement(TabContent, null, tabs.map(function (tab) {
117
+ var _visibleTabs$;
118
+
87
119
  return React__default['default'].createElement("div", {
120
+ ref: tab.key === ((_visibleTabs$ = visibleTabs[0]) === null || _visibleTabs$ === void 0 ? void 0 : _visibleTabs$.key) ? contentRef : null,
88
121
  key: tab.key,
89
122
  role: "tabpanel",
90
- hidden: tab.key !== activeTab
123
+ hidden: tab.key !== activeTab,
124
+ style: {
125
+ height: minHeight
126
+ }
91
127
  }, tab.content);
92
128
  })));
93
129
  });
94
130
  Tabs.propTypes = process.env.NODE_ENV !== "production" ? {
95
- children: defaultTheme.PropTypes.element
131
+ children: defaultTheme.PropTypes.oneOfType([defaultTheme.PropTypes.array, defaultTheme.PropTypes.object]),
132
+ backgroundColor: defaultTheme.PropTypes.string
96
133
  } : {};
97
134
  Tabs.defaultProps = {};
98
135
 
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var defaultTheme = require('./defaultTheme-870f7df1.js');
3
+ var defaultTheme = require('./defaultTheme-50f2b88f.js');
4
4
  var React = require('react');
5
5
  var nanoid = require('nanoid');
6
6
  var styled = require('styled-components');
@@ -31,7 +31,7 @@ var TextInputField = styled__default['default'].textarea.attrs(defaultTheme.appl
31
31
  }, function (props) {
32
32
  return props.theme.themeProp('border-color', props.theme.getColor('gray-500'), props.theme.getColor('gray-400'));
33
33
  }, function (props) {
34
- return props.noBorder && styled.css(_templateObject5 || (_templateObject5 = defaultTheme._taggedTemplateLiteral(["\n border-color: transparent !important;\n "])));
34
+ return props.noBorder && styled.css(_templateObject5 || (_templateObject5 = defaultTheme._taggedTemplateLiteral(["\n padding: 13px 15px 13px 10px;\n border-color: transparent !important;\n "])));
35
35
  }, function (props) {
36
36
  return props.warningAlert && styled.css(_templateObject6 || (_templateObject6 = defaultTheme._taggedTemplateLiteral(["\n background: ", " !important;\n :focus {\n background: white !important;\n }\n &&:hover:not(:focus) {\n background: ", " !important;\n }\n &&:read-only:hover {\n background: ", " !important;\n }\n "])), props.theme.getColor('signal-yellow-400'), props.theme.getColor('signal-yellow-500'), props.theme.getColor('signal-yellow-400'));
37
37
  }, function (props) {
@@ -47,7 +47,7 @@ var TextInputField = styled__default['default'].textarea.attrs(defaultTheme.appl
47
47
  }, function (props) {
48
48
  return props.hasIcon && styled.css(_templateObject11 || (_templateObject11 = defaultTheme._taggedTemplateLiteral(["\n padding-left: 35px;\n "])));
49
49
  }, function (props) {
50
- return (props.warningAlert || props.errorAlert) && styled.css(_templateObject12 || (_templateObject12 = defaultTheme._taggedTemplateLiteral(["\n padding-left: 60px;\n padding-top: 25px;\n padding-right: 30px;\n "])));
50
+ return (props.warningAlert || props.errorAlert) && styled.css(_templateObject12 || (_templateObject12 = defaultTheme._taggedTemplateLiteral(["\n padding-left: 55px;\n padding-top: 25px;\n padding-right: 30px;\n "])));
51
51
  }, function (props) {
52
52
  return props.theme.themeProp('color', props.theme.getColor('gray-300'), props.theme.getColor('gray-600'), 1);
53
53
  }, function (props) {
@@ -65,7 +65,7 @@ var TextInputLabel = styled__default['default'].label.attrs(defaultTheme.applyDe
65
65
  return props.hasIcon && styled.css(_templateObject16 || (_templateObject16 = defaultTheme._taggedTemplateLiteral(["\n left: 35px;\n "])));
66
66
  });
67
67
  var TextInputFieldIcon = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject17 || (_templateObject17 = defaultTheme._taggedTemplateLiteral(["\n position: absolute;\n top: 0;\n left: 0;\n height: 2.625rem;\n display: flex;\n padding: 0 10px;\n\n svg {\n width: 15px;\n opacity: 0.6;\n transition: opacity 250ms;\n }\n"])));
68
- var TextInputFieldIconAlert = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject18 || (_templateObject18 = defaultTheme._taggedTemplateLiteral(["\n position: absolute;\n top: 13px;\n left: 25px;\n height: 2.625rem;\n display: flex;\n padding: 0 10px;\n svg {\n width: 15px;\n opacity: 0.6;\n transition: opacity 250ms;\n ", "\n }\n"])), function (props) {
68
+ var TextInputFieldIconAlert = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject18 || (_templateObject18 = defaultTheme._taggedTemplateLiteral(["\n position: absolute;\n top: 13px;\n height: 2.625rem;\n display: flex;\n padding: 0 10px 0 30px;\n svg {\n width: 15px;\n opacity: 0.6;\n transition: opacity 250ms;\n ", "\n }\n"])), function (props) {
69
69
  return props.theme.themeProp('color', props.theme.getColor('gray-600'), props.theme.getColor('gray-600'), 1);
70
70
  });
71
71
  var TextInput = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject19 || (_templateObject19 = defaultTheme._taggedTemplateLiteral(["\n position: relative;\n\n &:focus-within {\n ", " {\n ", ";\n }\n\n ", " {\n svg {\n opacity: 1;\n }\n }\n }\n\n ", ":not(:placeholder-shown) + ", " {\n ", ";\n ", "\n }\n\n ", "\n"])), TextInputLabel, activeLabel, TextInputFieldIcon, TextInputField, TextInputLabel, activeLabel, function (props) {
@@ -202,7 +202,7 @@ TextArea.propTypes = process.env.NODE_ENV !== "production" ? {
202
202
  rows: defaultTheme.PropTypes.oneOfType([defaultTheme.PropTypes.number, defaultTheme.PropTypes.string]),
203
203
  className: defaultTheme.PropTypes.string,
204
204
  style: defaultTheme.PropTypes.object,
205
- lightBackground: defaultTheme.PropTypes["boolean"],
205
+ lightBackground: defaultTheme.PropTypes.bool,
206
206
  onChange: defaultTheme.PropTypes.func,
207
207
  onBlur: defaultTheme.PropTypes.func,
208
208
  noBorder: defaultTheme.PropTypes.bool,
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var defaultTheme = require('./defaultTheme-870f7df1.js');
3
+ var defaultTheme = require('./defaultTheme-50f2b88f.js');
4
4
  var React = require('react');
5
5
  var nanoid = require('nanoid');
6
6
  var styled = require('styled-components');
@@ -1,10 +1,10 @@
1
1
  'use strict';
2
2
 
3
- var defaultTheme = require('./defaultTheme-870f7df1.js');
3
+ var defaultTheme = require('./defaultTheme-50f2b88f.js');
4
4
  var React = require('react');
5
5
  var styled = require('styled-components');
6
6
  var TippyTooltip = require('@tippyjs/react');
7
- require('./Popover-616682bf.js');
7
+ require('./shift-away-subtle-cfdf1dbe.js');
8
8
 
9
9
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
10
10
 
@@ -26,8 +26,9 @@ var Tooltip = React__default['default'].forwardRef(function Tooltip(_ref, ref) {
26
26
  interactive = _ref.interactive,
27
27
  placement = _ref.placement,
28
28
  duration = _ref.duration,
29
+ trigger = _ref.trigger,
29
30
  children = _ref.children,
30
- props = defaultTheme._objectWithoutProperties(_ref, ["content", "interactive", "placement", "duration", "children"]);
31
+ props = defaultTheme._objectWithoutProperties(_ref, ["content", "interactive", "placement", "duration", "trigger", "children"]);
31
32
 
32
33
  return React__default['default'].createElement(Tooltip$1, defaultTheme._extends({
33
34
  ref: ref,
@@ -35,17 +36,10 @@ var Tooltip = React__default['default'].forwardRef(function Tooltip(_ref, ref) {
35
36
  interactive: interactive,
36
37
  placement: placement,
37
38
  duration: duration,
39
+ trigger: trigger,
38
40
  animation: 'shift-away-subtle'
39
41
  }, props), children);
40
42
  });
41
- Tooltip.propTypes = process.env.NODE_ENV !== "production" ? {
42
- content: defaultTheme.PropTypes.oneOfType([defaultTheme.PropTypes.string, defaultTheme.PropTypes.element]).isRequired,
43
- interactive: defaultTheme.PropTypes.bool,
44
- placement: defaultTheme.PropTypes.oneOf(['top', 'top-start', 'top-end', 'right', 'right-start', 'right-end', 'bottom', 'bottom-start', 'bottom-end', 'left', 'left-start', 'left-end', 'auto', 'auto-start', 'auto-end']),
45
- duration: defaultTheme.PropTypes.number,
46
- trigger: defaultTheme.PropTypes.string,
47
- children: defaultTheme.PropTypes.node.isRequired
48
- } : {};
49
43
  Tooltip.defaultProps = {
50
44
  content: 'Tooltip',
51
45
  interactive: false,
@@ -53,5 +47,13 @@ Tooltip.defaultProps = {
53
47
  duration: 350,
54
48
  trigger: 'mouseenter focus'
55
49
  };
50
+ Tooltip.propTypes = process.env.NODE_ENV !== "production" ? {
51
+ content: defaultTheme.PropTypes.oneOfType([defaultTheme.PropTypes.string, defaultTheme.PropTypes.element]).isRequired,
52
+ interactive: defaultTheme.PropTypes.bool,
53
+ placement: defaultTheme.PropTypes.oneOf(['top', 'top-start', 'top-end', 'right', 'right-start', 'right-end', 'bottom', 'bottom-start', 'bottom-end', 'left', 'left-start', 'left-end', 'auto', 'auto-start', 'auto-end']),
54
+ duration: defaultTheme.PropTypes.number,
55
+ trigger: defaultTheme.PropTypes.oneOf(['mouseenter', 'mouseenter focus', 'click', 'focusin', 'mouseenter click', '']),
56
+ children: defaultTheme.PropTypes.node
57
+ } : {};
56
58
 
57
59
  exports.Tooltip = Tooltip;
@@ -0,0 +1,10 @@
1
+ 'use strict';
2
+
3
+ var Alert = require('../../Alert-3e4f8be1.js');
4
+ require('../../defaultTheme-50f2b88f.js');
5
+ require('styled-components');
6
+ require('react');
7
+
8
+
9
+
10
+ module.exports = Alert.Alert;
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
- var Badge = require('../../Badge-34ad2850.js');
4
- require('../../defaultTheme-870f7df1.js');
3
+ var Badge = require('../../Badge-9bcebe96.js');
4
+ require('../../defaultTheme-50f2b88f.js');
5
5
  require('styled-components');
6
6
  require('react');
7
7
 
@@ -1,12 +1,13 @@
1
1
  'use strict';
2
2
 
3
- var Popover = require('../../Popover-616682bf.js');
4
- require('../../defaultTheme-870f7df1.js');
3
+ var Popover = require('../../Popover-11df9750.js');
4
+ require('../../defaultTheme-50f2b88f.js');
5
5
  require('styled-components');
6
6
  require('react');
7
7
  require('lodash');
8
8
  require('polished');
9
9
  require('@tippyjs/react');
10
+ require('../../shift-away-subtle-cfdf1dbe.js');
10
11
 
11
12
 
12
13
 
package/data/Tab/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
- var Tab = require('../../Tab-fc380f0b.js');
4
- require('../../defaultTheme-870f7df1.js');
3
+ var Tab = require('../../Tab-bd0f3345.js');
4
+ require('../../defaultTheme-50f2b88f.js');
5
5
  require('styled-components');
6
6
  require('react');
7
7