@ntbjs/react-components 1.1.0-beta.67 → 1.1.0-beta.69

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.
@@ -3,18 +3,19 @@
3
3
  var defaultTheme = require('./defaultTheme-50f2b88f.js');
4
4
  var React = require('react');
5
5
  var lodash = require('lodash');
6
- var TextInput = require('./TextInput-a1083be3.js');
6
+ var useMergedRefs = require('./useMergedRefs-b6d2f8fc.js');
7
7
  var ResizeObserver = require('resize-observer-polyfill');
8
8
  var reactLazyLoadImageComponent = require('react-lazy-load-image-component');
9
9
  var ActionButton = require('./ActionButton-c3f5ed94.js');
10
10
  require('./Button-f893df21.js');
11
11
  require('./Checkbox-012bbd3f.js');
12
- require('./CompactAutocompleteSelect-b366ba70.js');
13
- require('./CompactStarRating-17c8ca3d.js');
14
- require('./CompactTextInput-7263652c.js');
12
+ require('./CompactAutocompleteSelect-05c45f9a.js');
13
+ require('./CompactStarRating-53593d92.js');
14
+ require('./CompactTextInput-b4215024.js');
15
15
  require('./MultiSelect-5b008b32.js');
16
16
  require('./Radio-0594409d.js');
17
- require('./TextArea-760ba0ad.js');
17
+ require('./TextArea-49fa461f.js');
18
+ require('./TextInput-c656bf03.js');
18
19
  require('./Switch-cd165c8c.js');
19
20
  require('./Alert-3e4f8be1.js');
20
21
  require('./Badge-9bcebe96.js');
@@ -869,7 +870,7 @@ var AssetGalleryBase = React__default['default'].forwardRef(function AssetGaller
869
870
  props = defaultTheme._objectWithoutProperties(_ref, ["assets", "viewMode", "thumbnailMaxHeight", "selectable", "selectedAssetKeys", "onAssetSelected", "onAssetUnselected", "softSelectable", "softSelectedAssetKey", "scrollElement", "onAssetSoftSelectedChanged", "component"]);
870
871
 
871
872
  var assetGalleryDOMNode = React.useRef();
872
- var assetGalleryCompactRef = TextInput.useMergedRefs(forwardedRef, assetGalleryDOMNode);
873
+ var assetGalleryCompactRef = useMergedRefs.useMergedRefs(forwardedRef, assetGalleryDOMNode);
873
874
  var assetGalleryWidth = React.useRef(0);
874
875
  var minimumRowAspectRatio = React.useRef(0);
875
876
  var calculatedAssets = React.useRef([]);
@@ -188,7 +188,6 @@ var CompactAutocompleteSelect = React__default['default'].forwardRef(function Co
188
188
  return React__default['default'].createElement(React__default['default'].Fragment, null, React__default['default'].createElement(ValueContainer, defaultTheme._extends({
189
189
  className: "value-container",
190
190
  error: error,
191
- success: success,
192
191
  warning: warning
193
192
  }, props)), ' ', success && React__default['default'].createElement(CheckIconContainer, null, React__default['default'].createElement(checkCircleFilled.SvgCheckCircleFilled, null)));
194
193
  };
@@ -199,8 +198,7 @@ var CompactAutocompleteSelect = React__default['default'].forwardRef(function Co
199
198
  var Input$1 = React.useMemo(function () {
200
199
  var selectInput = function selectInput(props) {
201
200
  return React__default['default'].createElement(Input, defaultTheme._extends({
202
- className: "select-input",
203
- success: success
201
+ className: "select-input"
204
202
  }, props));
205
203
  };
206
204
 
@@ -51,7 +51,7 @@ var CompactStarRating$1 = styled__default['default'].div.attrs(defaultTheme.appl
51
51
  var labelWidth = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject6 || (_templateObject6 = defaultTheme._taggedTemplateLiteral(["\n width: 33.3%;\n display: flex;\n align-items: center;\n text-align: left;\n font: normal normal normal 14px/16px Roboto;\n letter-spacing: 0px;\n padding: 0;\n height: 19px;\n\n ", "\n"])), function (props) {
52
52
  return props.theme.themeProp('color', props.theme.getColor('gray-400'), props.theme.getColor('gray-500'));
53
53
  });
54
- var starsWidth = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject7 || (_templateObject7 = defaultTheme._taggedTemplateLiteral(["\n display: flex;\n width: 66.6%;\n border-radius: 3px;\n height: 24px;\n align-items: center;\n padding: 1px 10px;\n\n ", "\n\n ", "\n\n ", ";\n\n ", "\n &&:not(:hover):not(:focus) {\n ", ";\n }\n"])), function (props) {
54
+ var starsWidth = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject7 || (_templateObject7 = defaultTheme._taggedTemplateLiteral(["\n display: flex;\n width: 66.6%;\n border-radius: 3px;\n height: 24px;\n align-items: center;\n padding: 1px 10px;\n\n ", "\n\n ", "\n\n ", ";\n\n ", "\n &&:not(:hover):not(:focus) {\n ", ";\n }\n &&:hover:not(:focus) {\n ", "\n\n ", ";\n\n ", ";\n\n ", ";\n }\n"])), function (props) {
55
55
  return props.success && styled.css(_templateObject8 || (_templateObject8 = defaultTheme._taggedTemplateLiteral(["\n animation: ", " 0.5s ease-in-out;\n "])), function (props) {
56
56
  return props.success ? fadeIn : fadeOut;
57
57
  });
@@ -63,6 +63,14 @@ var starsWidth = styled__default['default'].div.attrs(defaultTheme.applyDefaultT
63
63
  return props.warning && styled.css(_templateObject10 || (_templateObject10 = defaultTheme._taggedTemplateLiteral(["\n ", ";\n "])), props.theme.themeProp('background', '#634E01', '#FFFDE8'));
64
64
  }, function (props) {
65
65
  return props.edit && props.theme.themeProp('background', '#505050', '#eff1f4');
66
+ }, function (props) {
67
+ return props.edit && props.theme.themeProp('background', props.theme.getColor('gray-700'), props.theme.getColor('gray-100'));
68
+ }, function (props) {
69
+ return props.warning && !props.readOnly && props.theme.themeProp('background', '#816600', '#fffebf');
70
+ }, function (props) {
71
+ return props.success && props.theme.themeProp('background', props.theme.getColor('emerald-500'), props.theme.getColor('emerald-200'));
72
+ }, function (props) {
73
+ return props.error && !props.readOnly && props.theme.themeProp('background', '#901d1d', '#f7d5d0');
66
74
  });
67
75
  var Star = styled__default['default'].button.attrs(defaultTheme.applyDefaultTheme)(_templateObject11 || (_templateObject11 = defaultTheme._taggedTemplateLiteral(["\n display: flex;\n align-items: center;\n background: none;\n border: none;\n cursor: pointer;\n padding: 0;\n\n svg {\n height: 12px;\n padding-left: 4px;\n transition: color 250ms;\n }\n\n ", ";\n\n ", ";\n\n ", ";\n\n ", ";\n\n ", "\n"])), function (props) {
68
76
  return props.theme.themeProp('color', props.theme.getColor('white'), props.theme.getColor('black'));
@@ -86,7 +94,7 @@ var StarFill = styled__default['default'].button.attrs(defaultTheme.applyDefault
86
94
  }, function (props) {
87
95
  return props.disabled && styled.css(_templateObject14 || (_templateObject14 = defaultTheme._taggedTemplateLiteral(["\n button {\n cursor: not-allowed;\n }\n > * {\n cursor: not-allowed;\n }\n "])));
88
96
  });
89
- var CheckIconContainer = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject15 || (_templateObject15 = defaultTheme._taggedTemplateLiteral(["\n opacity: 1;\n pointer-events: none;\n padding-right: 25px;\n display: flex;\n align-items: center;\n position: absolute;\n right: 0;\n top: -710px;\n bottom: 0;\n opacity: ", ";\n animation: ", " 0.5s ease-in-out;\n transition: opacity 0.5s ease-in-out;\n ", "\n > svg {\n width: 13px;\n }\n"])), function (props) {
97
+ var CheckIconContainer = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject15 || (_templateObject15 = defaultTheme._taggedTemplateLiteral(["\n opacity: 1;\n pointer-events: none;\n margin-left: auto;\n opacity: ", ";\n animation: ", " 0.5s ease-in-out;\n transition: opacity 0.5s ease-in-out;\n ", "\n > svg {\n width: 13px;\n }\n"])), function (props) {
90
98
  return props.success ? 0 : 1;
91
99
  }, function (props) {
92
100
  return props.success ? fadeOutCheck : fadeInCheck;
@@ -258,7 +266,7 @@ var CompactStarRating = React__default['default'].forwardRef(function CompactSta
258
266
  name: name,
259
267
  ref: inputRef
260
268
  }), starIconRender(key));
261
- })), success && React__default['default'].createElement(CheckIconContainer, null, React__default['default'].createElement(checkCircleFilled.SvgCheckCircleFilled, null)));
269
+ }), success && React__default['default'].createElement(CheckIconContainer, null, React__default['default'].createElement(checkCircleFilled.SvgCheckCircleFilled, null))));
262
270
  });
263
271
  CompactStarRating.defaultProps = {
264
272
  label: 'Rating',
@@ -97,7 +97,7 @@ var Input = styled__default['default'].input.attrs(defaultTheme.applyDefaultThem
97
97
  }, function (props) {
98
98
  return props.warning && props.theme.themeProp('background', '#634e01', '#fffde8');
99
99
  }, function (props) {
100
- return props.error && props.theme.themeProp('background', '#fbeae6', '#fbeae6');
100
+ return props.error && props.theme.themeProp('background', '#7f1b1b', '#fbeae6');
101
101
  }, function (props) {
102
102
  return props.edit && props.theme.themeProp('background', '#505050', '#eff1f4');
103
103
  }, function (props) {
@@ -3,8 +3,8 @@
3
3
  var defaultTheme = require('./defaultTheme-50f2b88f.js');
4
4
  var React = require('react');
5
5
  var styled = require('styled-components');
6
- var TextArea = require('./TextArea-760ba0ad.js');
7
- var CompactAutocompleteSelect = require('./CompactAutocompleteSelect-b366ba70.js');
6
+ var TextArea = require('./TextArea-49fa461f.js');
7
+ var CompactAutocompleteSelect = require('./CompactAutocompleteSelect-05c45f9a.js');
8
8
  var warningCircle = require('./warning-circle-24522402.js');
9
9
  var lodash = require('lodash');
10
10
 
@@ -5,6 +5,7 @@ var React = require('react');
5
5
  var nanoid = require('nanoid');
6
6
  var styled = require('styled-components');
7
7
  var lodash = require('lodash');
8
+ var useMergedRefs = require('./useMergedRefs-b6d2f8fc.js');
8
9
  var editNote = require('./edit-note-c47d292e.js');
9
10
  var checkCircleFilled = require('./check-circle-filled-1640873e.js');
10
11
 
@@ -13,7 +14,7 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'defau
13
14
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
14
15
  var styled__default = /*#__PURE__*/_interopDefaultLegacy(styled);
15
16
 
16
- var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15, _templateObject16, _templateObject17, _templateObject18, _templateObject19, _templateObject20, _templateObject21, _templateObject22, _templateObject23, _templateObject24, _templateObject25, _templateObject26, _templateObject27, _templateObject28, _templateObject29, _templateObject30;
17
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15, _templateObject16, _templateObject17, _templateObject18, _templateObject19, _templateObject20, _templateObject21, _templateObject22, _templateObject23, _templateObject24, _templateObject25, _templateObject26, _templateObject27, _templateObject28, _templateObject29, _templateObject30, _templateObject31;
17
18
  var activeLabel = styled.css(_templateObject || (_templateObject = defaultTheme._taggedTemplateLiteral(["\n font-size: 0.75rem;\n padding: 0 3px;\n top: -7px;\n letter-spacing: 0.03em;\n left: 8px !important;\n opacity: 1 !important;\n"])));
18
19
  var placeholderBaseStyle = styled.css(_templateObject2 || (_templateObject2 = defaultTheme._taggedTemplateLiteral(["\n ", "\n\n ", "\n"])), function (props) {
19
20
  return props.theme.themeProp('color', props.theme.getColor('gray-300'), props.theme.getColor('gray-600'));
@@ -28,8 +29,10 @@ var CheckIconContainer = styled__default['default'].div.attrs(defaultTheme.apply
28
29
  });
29
30
  var Container = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject5 || (_templateObject5 = defaultTheme._taggedTemplateLiteral([""])));
30
31
  var OpacityBox = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject6 || (_templateObject6 = defaultTheme._taggedTemplateLiteral([""])));
31
- var TextInputField = styled__default['default'].textarea.attrs(defaultTheme.applyDefaultTheme)(_templateObject7 || (_templateObject7 = defaultTheme._taggedTemplateLiteral(["\n width: 100%;\n font-family: inherit;\n font-size: 0.875rem;\n border-radius: 2px;\n padding: 13px 10px;\n resize: vertical;\n transition: height 0.3s ease;\n overflow: hidden;\n z-index: 0; \n\n ", "\n \n ", "\n ", "\n ", "\n border: 1px solid;\n ", "\n ", " \n\n \n ", "\n \n\n ", " \n\n ", " \n ", "\n ", ";\n &&:hover:not(:focus) {\n ", ";\n transition: background 350ms;\n & + ", " {\n opacity: 1;\n ", ";\n transition: opacity 350ms;\n }\n }\n \n border-radius: 3px;\n box-sizing: border-box;\n appearance: none;\n transition: border-color 350ms;\n ", "\n ", "\n ", "\n\n ", "\n\n &::placeholder {\n ", "\n\n ", "\n }\n\n :focus {\n outline: none;\n ", "\n }\n\n :focus {\n outline: none;\n border-color: ", " !important\n \n"])), function (props) {
32
+ var TextInputField = styled__default['default'].textarea.attrs(defaultTheme.applyDefaultTheme)(_templateObject7 || (_templateObject7 = defaultTheme._taggedTemplateLiteral(["\n width: 100%;\n font-family: inherit;\n font-size: 0.875rem;\n border-radius: 2px;\n padding: 13px 10px;\n resize: vertical;\n transition: height 0.3s ease;\n z-index: 0; \n\n ", "\n\n ", "\n \n ", "\n ", "\n ", "\n border: 1px solid;\n ", "\n ", " \n\n \n ", "\n \n\n ", " \n\n ", " \n ", "\n ", ";\n &&:hover:not(:focus) {\n ", ";\n transition: background 350ms;\n & + ", " {\n opacity: 1;\n ", ";\n transition: opacity 350ms;\n }\n }\n \n border-radius: 3px;\n box-sizing: border-box;\n appearance: none;\n transition: border-color 350ms;\n ", "\n ", "\n ", "\n\n ", "\n\n &::placeholder {\n ", "\n\n ", "\n }\n\n :focus {\n outline: none;\n ", "\n }\n\n :focus {\n outline: none;\n border-color: ", " !important\n \n"])), function (props) {
32
33
  return props.expanded && styled.css(_templateObject8 || (_templateObject8 = defaultTheme._taggedTemplateLiteral(["\n height: ", "em;\n "])), props.maxHeight);
34
+ }, function (props) {
35
+ return props.showMore && styled.css(_templateObject9 || (_templateObject9 = defaultTheme._taggedTemplateLiteral(["\n overflow: hidden;\n "])));
33
36
  }, function (props) {
34
37
  return props.theme.themeProp('color', props.theme.getColor('gray-100'), props.theme.getColor('gray-900'));
35
38
  }, function (props) {
@@ -39,29 +42,29 @@ var TextInputField = styled__default['default'].textarea.attrs(defaultTheme.appl
39
42
  }, function (props) {
40
43
  return props.theme.themeProp('border-color', props.theme.getColor('gray-500'), props.theme.getColor('gray-400'));
41
44
  }, function (props) {
42
- return props.noBorder && styled.css(_templateObject9 || (_templateObject9 = defaultTheme._taggedTemplateLiteral(["\n padding: 13px 15px 13px 10px;\n border-color: transparent !important;\n "])));
45
+ return props.noBorder && styled.css(_templateObject10 || (_templateObject10 = defaultTheme._taggedTemplateLiteral(["\n padding: 13px 15px 13px 10px;\n border-color: transparent !important;\n "])));
43
46
  }, function (props) {
44
- return props.success && styled.css(_templateObject10 || (_templateObject10 = defaultTheme._taggedTemplateLiteral(["\n ", "\n &&:hover {\n ", "\n }\n "])), props.theme.themeProp('background', props.theme.getColor('emerald-500'), props.theme.getColor('emerald-300')), props.theme.themeProp('background', '#64b49d !important', '#bfe0d5 !important'));
47
+ return props.success && styled.css(_templateObject11 || (_templateObject11 = defaultTheme._taggedTemplateLiteral(["\n ", "\n &&:hover {\n ", "\n }\n "])), props.theme.themeProp('background', props.theme.getColor('emerald-500'), props.theme.getColor('emerald-300')), props.theme.themeProp('background', '#64b49d !important', '#bfe0d5 !important'));
45
48
  }, function (props) {
46
- return props.warningAlert && styled.css(_templateObject11 || (_templateObject11 = defaultTheme._taggedTemplateLiteral(["\n ", "\n :focus {\n background: white !important;\n }\n &&:hover:not(:focus) {\n ", "\n }\n &&:read-only:hover {\n ", "\n }\n "])), props.theme.themeProp('background', props.theme.getColor('signal-yellow-500'), props.theme.getColor('signal-yellow-400')), props.theme.themeProp('background', props.theme.getColor('signal-yellow-500'), props.theme.getColor('signal-yellow-400')), props.theme.themeProp('background', props.theme.getColor('signal-yellow-500'), props.theme.getColor('signal-yellow-400')));
49
+ return props.warningAlert && styled.css(_templateObject12 || (_templateObject12 = defaultTheme._taggedTemplateLiteral(["\n ", "\n :focus {\n background: white !important;\n }\n &&:hover:not(:focus) {\n ", "\n }\n &&:read-only:hover {\n ", "\n }\n "])), props.theme.themeProp('background', props.theme.getColor('signal-yellow-500'), props.theme.getColor('signal-yellow-400')), props.theme.themeProp('background', props.theme.getColor('signal-yellow-500'), props.theme.getColor('signal-yellow-400')), props.theme.themeProp('background', props.theme.getColor('signal-yellow-500'), props.theme.getColor('signal-yellow-400')));
47
50
  }, function (props) {
48
- return props.errorAlert && styled.css(_templateObject12 || (_templateObject12 = defaultTheme._taggedTemplateLiteral(["\n background: ", " !important;\n :focus {\n background: white !important;\n }\n &&:hover:not(:focus) {\n background: #f7d5d0 !important;\n }\n &&:read-only:hover {\n background: ", " !important;\n }\n "])), props.theme.getColor('red-200'), props.theme.getColor('red-200'));
51
+ return props.errorAlert && styled.css(_templateObject13 || (_templateObject13 = defaultTheme._taggedTemplateLiteral(["\n background: ", " !important;\n :focus {\n background: white !important;\n }\n &&:hover:not(:focus) {\n background: #f7d5d0 !important;\n }\n &&:read-only:hover {\n background: ", " !important;\n }\n "])), props.theme.getColor('red-200'), props.theme.getColor('red-200'));
49
52
  }, function (props) {
50
- return props.lightBackground && styled.css(_templateObject13 || (_templateObject13 = defaultTheme._taggedTemplateLiteral(["\n ", "\n ", "\n &&:hover {\n ", "\n }\n "])), props.theme.themeProp('background', '#FFFDDE', '#fffde8'), props.theme.themeProp('color', props.theme.getColor('gray-900'), props.theme.getColor('gray-900')), props.theme.themeProp('background', 'white', 'white'));
53
+ return props.lightBackground && styled.css(_templateObject14 || (_templateObject14 = defaultTheme._taggedTemplateLiteral(["\n ", "\n ", "\n &&:hover {\n ", "\n }\n "])), props.theme.themeProp('background', '#FFFDDE', '#fffde8'), props.theme.themeProp('color', props.theme.getColor('gray-900'), props.theme.getColor('gray-900')), props.theme.themeProp('background', 'white', 'white'));
51
54
  }, function (props) {
52
55
  return props.edit && props.theme.themeProp('background', '#505050', '#eff1f4');
53
56
  }, function (props) {
54
57
  return props.noBorder && !props.readOnly && !props.warningAlert ? props.theme.themeProp('background', props.theme.getColor('gray-700'), props.theme.getColor('gray-100')) : 'background: transparent';
55
58
  }, InputIconContainer, function (props) {
56
- return props.success && styled.css(_templateObject14 || (_templateObject14 = defaultTheme._taggedTemplateLiteral(["\n opacity: 0;\n "])));
59
+ return props.success && styled.css(_templateObject15 || (_templateObject15 = defaultTheme._taggedTemplateLiteral(["\n opacity: 0;\n "])));
57
60
  }, function (props) {
58
- return props.warning && styled.css(_templateObject15 || (_templateObject15 = defaultTheme._taggedTemplateLiteral(["\n border-color: ", " !important;\n "])), props.theme.getColor('orange-500'));
61
+ return props.warning && styled.css(_templateObject16 || (_templateObject16 = defaultTheme._taggedTemplateLiteral(["\n border-color: ", " !important;\n "])), props.theme.getColor('orange-500'));
59
62
  }, function (props) {
60
- return props.error && styled.css(_templateObject16 || (_templateObject16 = defaultTheme._taggedTemplateLiteral(["\n border-color: ", " !important;\n "])), props.theme.getColor('red-500'));
63
+ return props.error && styled.css(_templateObject17 || (_templateObject17 = defaultTheme._taggedTemplateLiteral(["\n border-color: ", " !important;\n "])), props.theme.getColor('red-500'));
61
64
  }, function (props) {
62
- return props.hasIcon && styled.css(_templateObject17 || (_templateObject17 = defaultTheme._taggedTemplateLiteral(["\n padding-left: 35px;\n "])));
65
+ return props.hasIcon && styled.css(_templateObject18 || (_templateObject18 = defaultTheme._taggedTemplateLiteral(["\n padding-left: 35px;\n "])));
63
66
  }, function (props) {
64
- return (props.warningAlert || props.errorAlert) && styled.css(_templateObject18 || (_templateObject18 = defaultTheme._taggedTemplateLiteral(["\n padding-left: 55px;\n padding-top: 25px;\n padding-right: 30px;\n "])));
67
+ return (props.warningAlert || props.errorAlert) && styled.css(_templateObject19 || (_templateObject19 = defaultTheme._taggedTemplateLiteral(["\n padding-left: 55px;\n padding-top: 25px;\n padding-right: 30px;\n "])));
65
68
  }, function (props) {
66
69
  return props.theme.themeProp('color', props.theme.getColor('gray-300'), props.theme.getColor('gray-600'), 1);
67
70
  }, function (props) {
@@ -71,31 +74,31 @@ var TextInputField = styled__default['default'].textarea.attrs(defaultTheme.appl
71
74
  }, function (props) {
72
75
  return props.theme.getColor('gray-600');
73
76
  });
74
- var TextInputLabel = styled__default['default'].label.attrs(defaultTheme.applyDefaultTheme)(_templateObject19 || (_templateObject19 = defaultTheme._taggedTemplateLiteral(["\n position: absolute;\n top: 13px;\n left: 11px;\n line-height: 1.2;\n font-size: 0.875rem;\n transition: all 150ms;\n\n ", ";\n\n ", "\n\n ", "\n content: \"\";\n\n ", "\n"])), placeholderBaseStyle, function (props) {
77
+ var TextInputLabel = styled__default['default'].label.attrs(defaultTheme.applyDefaultTheme)(_templateObject20 || (_templateObject20 = defaultTheme._taggedTemplateLiteral(["\n position: absolute;\n top: 13px;\n left: 11px;\n line-height: 1.2;\n font-size: 0.875rem;\n transition: all 150ms;\n\n ", ";\n\n ", "\n\n ", "\n content: \"\";\n\n ", "\n"])), placeholderBaseStyle, function (props) {
75
78
  return props.theme.themeProp('background', "linear-gradient(0deg, ".concat(props.theme.getColor('gray-900'), " calc(50% + 1px), transparent 50%)"), "linear-gradient(0deg, ".concat(props.theme.getColor('white'), " calc(50% + 1px), transparent 50%)"));
76
79
  }, function (props) {
77
- return props.hasPlaceholder && styled.css(_templateObject20 || (_templateObject20 = defaultTheme._taggedTemplateLiteral(["\n ", ";\n ", "\n "])), activeLabel, props.error && styled.css(_templateObject21 || (_templateObject21 = defaultTheme._taggedTemplateLiteral(["\n color: ", " !important;\n "])), props.theme.getColor('red-500')));
80
+ return props.hasPlaceholder && styled.css(_templateObject21 || (_templateObject21 = defaultTheme._taggedTemplateLiteral(["\n ", ";\n ", "\n "])), activeLabel, props.error && styled.css(_templateObject22 || (_templateObject22 = defaultTheme._taggedTemplateLiteral(["\n color: ", " !important;\n "])), props.theme.getColor('red-500')));
78
81
  }, function (props) {
79
- return props.hasIcon && styled.css(_templateObject22 || (_templateObject22 = defaultTheme._taggedTemplateLiteral(["\n left: 35px;\n "])));
82
+ return props.hasIcon && styled.css(_templateObject23 || (_templateObject23 = defaultTheme._taggedTemplateLiteral(["\n left: 35px;\n "])));
80
83
  });
81
- var TextInputFieldIcon = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject23 || (_templateObject23 = 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"])));
82
- var TextInputFieldIconAlert = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject24 || (_templateObject24 = 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) {
84
+ var TextInputFieldIcon = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject24 || (_templateObject24 = 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"])));
85
+ var TextInputFieldIconAlert = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject25 || (_templateObject25 = 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) {
83
86
  return props.theme.themeProp('color', props.theme.getColor('gray-600'), props.theme.getColor('gray-600'), 1);
84
87
  });
85
- var TextInput = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject25 || (_templateObject25 = 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) {
88
+ var TextInput = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject26 || (_templateObject26 = 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) {
86
89
  return props.error && props.theme.themeProp('color', props.theme.getColor('red-200'), props.theme.getColor('red-500'));
87
90
  }, function (props) {
88
- return props.disabled && styled.css(_templateObject26 || (_templateObject26 = defaultTheme._taggedTemplateLiteral(["\n opacity: 0.5;\n\n > * {\n cursor: not-allowed;\n }\n "])));
91
+ return props.disabled && styled.css(_templateObject27 || (_templateObject27 = defaultTheme._taggedTemplateLiteral(["\n opacity: 0.5;\n\n > * {\n cursor: not-allowed;\n }\n "])));
89
92
  });
90
- var Description = styled__default['default'].p.attrs(defaultTheme.applyDefaultTheme)(_templateObject27 || (_templateObject27 = defaultTheme._taggedTemplateLiteral(["\n margin: 8px 0 0 0;\n padding: 0 0.6875rem;\n font-size: 0.75rem;\n line-height: 1.333;\n\n ", ";\n\n ", "\n"])), function (props) {
93
+ var Description = styled__default['default'].p.attrs(defaultTheme.applyDefaultTheme)(_templateObject28 || (_templateObject28 = defaultTheme._taggedTemplateLiteral(["\n margin: 8px 0 0 0;\n padding: 0 0.6875rem;\n font-size: 0.75rem;\n line-height: 1.333;\n\n ", ";\n\n ", "\n"])), function (props) {
91
94
  return props.theme.themeProp('color', props.theme.getColor('gray-400'), props.theme.getColor('gray-500'));
92
95
  }, function (props) {
93
- return props.error && styled.css(_templateObject28 || (_templateObject28 = defaultTheme._taggedTemplateLiteral(["\n content: 'error';\n ", "\n "])), props.theme.themeProp('color', props.theme.getColor('red-200'), props.theme.getColor('red-500')));
96
+ return props.error && styled.css(_templateObject29 || (_templateObject29 = defaultTheme._taggedTemplateLiteral(["\n content: 'error';\n ", "\n "])), props.theme.themeProp('color', props.theme.getColor('red-200'), props.theme.getColor('red-500')));
94
97
  });
95
- var ShowMoreText = styled__default['default'].p.attrs(defaultTheme.applyDefaultTheme)(_templateObject29 || (_templateObject29 = defaultTheme._taggedTemplateLiteral(["\n margin: 8px 0 0 0;\n padding: 0 0.6875rem;\n font-size: 0.75rem;\n line-height: 1.333;\n cursor: pointer;\n\n ", ";\n\n ", "\n"])), function (props) {
98
+ var ShowMoreText = styled__default['default'].p.attrs(defaultTheme.applyDefaultTheme)(_templateObject30 || (_templateObject30 = defaultTheme._taggedTemplateLiteral(["\n margin: 8px 0 0 0;\n padding: 0 0.6875rem;\n font-size: 0.75rem;\n line-height: 1.333;\n cursor: pointer;\n\n ", ";\n\n ", "\n"])), function (props) {
96
99
  return props.theme.themeProp('color', props.theme.getColor('emerald-300'), props.theme.getColor('emerald-500'));
97
100
  }, function (props) {
98
- return props.error && styled.css(_templateObject30 || (_templateObject30 = defaultTheme._taggedTemplateLiteral(["\n content: 'error';\n ", "\n "])), props.theme.themeProp('color', props.theme.getColor('red-200'), props.theme.getColor('red-500')));
101
+ return props.error && styled.css(_templateObject31 || (_templateObject31 = defaultTheme._taggedTemplateLiteral(["\n content: 'error';\n ", "\n "])), props.theme.themeProp('color', props.theme.getColor('red-200'), props.theme.getColor('red-500')));
99
102
  });
100
103
 
101
104
  var TextArea = React__default['default'].forwardRef(function TextArea(_ref, forwardedRef) {
@@ -109,6 +112,7 @@ var TextArea = React__default['default'].forwardRef(function TextArea(_ref, forw
109
112
  hidden = _ref.hidden,
110
113
  readOnly = _ref.readOnly,
111
114
  edit = _ref.edit,
115
+ maxRows = _ref.maxRows,
112
116
  showMore = _ref.showMore,
113
117
  showMoreText = _ref.showMoreText,
114
118
  autoComplete = _ref.autoComplete,
@@ -126,7 +130,10 @@ var TextArea = React__default['default'].forwardRef(function TextArea(_ref, forw
126
130
  noBorder = _ref.noBorder,
127
131
  warningAlert = _ref.warningAlert,
128
132
  errorAlert = _ref.errorAlert,
129
- rest = defaultTheme._objectWithoutProperties(_ref, ["value", "defaultValue", "name", "label", "placeholder", "required", "disabled", "hidden", "readOnly", "edit", "showMore", "showMoreText", "autoComplete", "description", "success", "error", "warning", "icon", "rows", "className", "style", "onChange", "onBlur", "lightBackground", "noBorder", "warningAlert", "errorAlert"]);
133
+ rest = defaultTheme._objectWithoutProperties(_ref, ["value", "defaultValue", "name", "label", "placeholder", "required", "disabled", "hidden", "readOnly", "edit", "maxRows", "showMore", "showMoreText", "autoComplete", "description", "success", "error", "warning", "icon", "rows", "className", "style", "onChange", "onBlur", "lightBackground", "noBorder", "warningAlert", "errorAlert"]);
134
+
135
+ var textAreaRef = React.useRef(null);
136
+ var textInputRef = useMergedRefs.useMergedRefs(forwardedRef, textAreaRef);
130
137
 
131
138
  var _useState = React.useState(''),
132
139
  _useState2 = defaultTheme._slicedToArray(_useState, 2),
@@ -148,43 +155,18 @@ var TextArea = React__default['default'].forwardRef(function TextArea(_ref, forw
148
155
  expanded = _useState8[0],
149
156
  setExpanded = _useState8[1];
150
157
 
151
- var _useState9 = React.useState(false),
158
+ var _useState9 = React.useState(''),
152
159
  _useState10 = defaultTheme._slicedToArray(_useState9, 2),
153
- displayShowMoreText = _useState10[0],
154
- setDisplayShowMoreText = _useState10[1];
155
-
156
- var _useState11 = React.useState(''),
157
- _useState12 = defaultTheme._slicedToArray(_useState11, 2),
158
- maxHeight = _useState12[0],
159
- setMaxHeight = _useState12[1];
160
+ maxHeight = _useState10[0],
161
+ setMaxHeight = _useState10[1];
160
162
 
161
163
  React.useEffect(function () {
162
164
  setDefaultRows(rows);
163
165
  }, []);
164
- var textAreaRef = React.useRef(null);
165
- React.useEffect(function () {
166
- var updateHeight = function updateHeight() {
167
- var lineheight = 1.5;
168
- var textarea = textAreaRef.current.scrollHeight;
169
- var maxRows = Math.floor(textarea / (lineheight * 11.5));
170
- var maxHeight = maxRows * lineheight + 'em';
171
- setMaxContentRows(maxRows);
172
- setMaxHeight(maxHeight);
173
166
 
174
- if (maxRows > defaultRows) {
175
- setExpanded(true);
176
- setDisplayShowMoreText(true);
177
- }
178
- };
179
-
180
- if (showMore) {
181
- updateHeight();
182
- }
183
- }, [showMore]);
184
-
185
- var _useState13 = React.useState(nanoid.nanoid()),
186
- _useState14 = defaultTheme._slicedToArray(_useState13, 1),
187
- uniqueId = _useState14[0];
167
+ var _useState11 = React.useState(nanoid.nanoid()),
168
+ _useState12 = defaultTheme._slicedToArray(_useState11, 1),
169
+ uniqueId = _useState12[0];
188
170
 
189
171
  var hasError = React.useMemo(function () {
190
172
  if (lodash.isBoolean(error)) {
@@ -229,6 +211,25 @@ var TextArea = React__default['default'].forwardRef(function TextArea(_ref, forw
229
211
  }
230
212
  };
231
213
 
214
+ var updateHeight = function updateHeight() {
215
+ var lineheight = 1.5;
216
+ var textarea = textAreaRef.current.scrollHeight;
217
+ var rowsLimit = Math.floor(textarea / (lineheight * 11.5));
218
+ var maxHeight = rowsLimit * lineheight + 'em';
219
+ setMaxContentRows(rowsLimit);
220
+ maxRows(rowsLimit);
221
+ setMaxHeight(maxHeight);
222
+
223
+ if (rowsLimit > defaultRows) {
224
+ setExpanded(true);
225
+ }
226
+ };
227
+
228
+ React.useLayoutEffect(function () {
229
+ if (showMore) {
230
+ updateHeight();
231
+ }
232
+ }, [showMore]);
232
233
  if (hidden) return null;
233
234
  return React__default['default'].createElement(TextInput, {
234
235
  disabled: disabled,
@@ -238,7 +239,7 @@ var TextArea = React__default['default'].forwardRef(function TextArea(_ref, forw
238
239
  className: className,
239
240
  style: style
240
241
  }, !warningAlert && !errorAlert && React__default['default'].createElement(TextInputFieldIcon, null, icon), (warningAlert || errorAlert) && React__default['default'].createElement(TextInputFieldIconAlert, null, icon), React__default['default'].createElement(Container, null, React__default['default'].createElement(OpacityBox, null, React__default['default'].createElement(TextInputField, defaultTheme._extends({
241
- ref: showMore ? textAreaRef : forwardedRef,
242
+ ref: textInputRef,
242
243
  rows: contentRows > rows ? contentRows : rows,
243
244
  expanded: expanded,
244
245
  maxHeight: maxHeight,
@@ -250,6 +251,7 @@ var TextArea = React__default['default'].forwardRef(function TextArea(_ref, forw
250
251
  disabled: disabled || readOnly,
251
252
  readOnly: readOnly,
252
253
  edit: edit,
254
+ showMore: showMore,
253
255
  success: success,
254
256
  autoComplete: autoComplete,
255
257
  hasIcon: Boolean(icon),
@@ -273,9 +275,8 @@ var TextArea = React__default['default'].forwardRef(function TextArea(_ref, forw
273
275
  error: hasError
274
276
  }, label, required && ' *'), typeof descriptionText === 'string' && descriptionText.length > 0 && React__default['default'].createElement(Description, {
275
277
  error: hasError
276
- }, descriptionText), maxContentRows > defaultRows && displayShowMoreText && showMore && React__default['default'].createElement(ShowMoreText, {
277
- onClick: handleTextAreaChange,
278
- showMore: expanded
278
+ }, descriptionText), maxContentRows > defaultRows && React__default['default'].createElement(ShowMoreText, {
279
+ onClick: handleTextAreaChange
279
280
  }, showMoreText));
280
281
  });
281
282
  TextArea.defaultProps = {
@@ -317,7 +318,8 @@ TextArea.propTypes = process.env.NODE_ENV !== "production" ? {
317
318
  onBlur: defaultTheme.PropTypes.func,
318
319
  noBorder: defaultTheme.PropTypes.bool,
319
320
  warningAlert: defaultTheme.PropTypes.bool,
320
- errorAlert: defaultTheme.PropTypes.bool
321
+ errorAlert: defaultTheme.PropTypes.bool,
322
+ maxRows: defaultTheme.PropTypes.func
321
323
  } : {};
322
324
 
323
325
  exports.TextArea = TextArea;
@@ -5,6 +5,7 @@ var React = require('react');
5
5
  var nanoid = require('nanoid');
6
6
  var styled = require('styled-components');
7
7
  var lodash = require('lodash');
8
+ var useMergedRefs = require('./useMergedRefs-b6d2f8fc.js');
8
9
  var editNote = require('./edit-note-c47d292e.js');
9
10
 
10
11
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
@@ -87,43 +88,6 @@ var Description = styled__default['default'].p.attrs(defaultTheme.applyDefaultTh
87
88
  return props.error && styled.css(_templateObject24 || (_templateObject24 = defaultTheme._taggedTemplateLiteral(["\n content: 'error';\n ", "\n "])), props.theme.themeProp('color', props.theme.getColor('red-200'), props.theme.getColor('red-500')));
88
89
  });
89
90
 
90
- var toFnRef = function toFnRef(ref) {
91
- return !ref || typeof ref === 'function' ? ref : function (value) {
92
- ref.current = value;
93
- };
94
- };
95
-
96
- function mergeRefs(refA, refB) {
97
- var a = toFnRef(refA);
98
- var b = toFnRef(refB);
99
- return function (value) {
100
- if (a) a(value);
101
- if (b) b(value);
102
- };
103
- }
104
- /**
105
- * Create and returns a single callback ref composed from two other Refs.
106
- *
107
- * ```tsx
108
- * const Button = React.forwardRef((props, ref) => {
109
- * const [element, attachRef] = useCallbackRef<HTMLButtonElement>();
110
- * const mergedRef = useMergedRefs(ref, attachRef);
111
- *
112
- * return <button ref={mergedRef} {...props}/>
113
- * })
114
- * ```
115
- *
116
- * @param refA A Callback or mutable Ref
117
- * @param refB A Callback or mutable Ref
118
- * @category refs
119
- */
120
-
121
- function useMergedRefs(refA, refB) {
122
- return React.useMemo(function () {
123
- return mergeRefs(refA, refB);
124
- }, [refA, refB]);
125
- }
126
-
127
91
  var TextInput = React__default['default'].forwardRef(function TextInput(_ref, forwardedRef) {
128
92
  var value = _ref.value,
129
93
  defaultValue = _ref.defaultValue,
@@ -148,7 +112,7 @@ var TextInput = React__default['default'].forwardRef(function TextInput(_ref, fo
148
112
  rest = defaultTheme._objectWithoutProperties(_ref, ["value", "defaultValue", "name", "label", "placeholder", "type", "required", "disabled", "readOnly", "autoComplete", "description", "error", "warning", "icon", "adornments", "className", "style", "onChange", "onBlur", "noBorder"]);
149
113
 
150
114
  var textInputDomNode = React.useRef(null);
151
- var textInputRef = useMergedRefs(forwardedRef, textInputDomNode);
115
+ var textInputRef = useMergedRefs.useMergedRefs(forwardedRef, textInputDomNode);
152
116
 
153
117
  var _useState = React.useState(nanoid.nanoid()),
154
118
  _useState2 = defaultTheme._slicedToArray(_useState, 1),
@@ -267,4 +231,3 @@ TextInput.propTypes = process.env.NODE_ENV !== "production" ? {
267
231
  } : {};
268
232
 
269
233
  exports.TextInput = TextInput;
270
- exports.useMergedRefs = useMergedRefs;
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var CompactAutocompleteSelect = require('../../CompactAutocompleteSelect-b366ba70.js');
3
+ var CompactAutocompleteSelect = require('../../CompactAutocompleteSelect-05c45f9a.js');
4
4
  require('../../defaultTheme-50f2b88f.js');
5
5
  require('styled-components');
6
6
  require('react');
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var CompactStarRating = require('../../CompactStarRating-17c8ca3d.js');
3
+ var CompactStarRating = require('../../CompactStarRating-53593d92.js');
4
4
  require('../../defaultTheme-50f2b88f.js');
5
5
  require('styled-components');
6
6
  require('react');
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var CompactTextInput = require('../../CompactTextInput-7263652c.js');
3
+ var CompactTextInput = require('../../CompactTextInput-b4215024.js');
4
4
  require('../../defaultTheme-50f2b88f.js');
5
5
  require('styled-components');
6
6
  require('react');
@@ -1,11 +1,12 @@
1
1
  'use strict';
2
2
 
3
- var TextArea = require('../../TextArea-760ba0ad.js');
3
+ var TextArea = require('../../TextArea-49fa461f.js');
4
4
  require('../../defaultTheme-50f2b88f.js');
5
5
  require('styled-components');
6
6
  require('react');
7
7
  require('nanoid');
8
8
  require('lodash');
9
+ require('../../useMergedRefs-b6d2f8fc.js');
9
10
  require('../../edit-note-c47d292e.js');
10
11
  require('../../check-circle-filled-1640873e.js');
11
12
 
@@ -1,11 +1,12 @@
1
1
  'use strict';
2
2
 
3
- var TextInput = require('../../TextInput-a1083be3.js');
3
+ var TextInput = require('../../TextInput-c656bf03.js');
4
4
  require('../../defaultTheme-50f2b88f.js');
5
5
  require('styled-components');
6
6
  require('react');
7
7
  require('nanoid');
8
8
  require('lodash');
9
+ require('../../useMergedRefs-b6d2f8fc.js');
9
10
  require('../../edit-note-c47d292e.js');
10
11
 
11
12
 
package/inputs/index.js CHANGED
@@ -5,13 +5,13 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  var ActionButton = require('../ActionButton-c3f5ed94.js');
6
6
  var Button = require('../Button-f893df21.js');
7
7
  var Checkbox = require('../Checkbox-012bbd3f.js');
8
- var CompactAutocompleteSelect = require('../CompactAutocompleteSelect-b366ba70.js');
9
- var CompactStarRating = require('../CompactStarRating-17c8ca3d.js');
10
- var CompactTextInput = require('../CompactTextInput-7263652c.js');
8
+ var CompactAutocompleteSelect = require('../CompactAutocompleteSelect-05c45f9a.js');
9
+ var CompactStarRating = require('../CompactStarRating-53593d92.js');
10
+ var CompactTextInput = require('../CompactTextInput-b4215024.js');
11
11
  var MultiSelect = require('../MultiSelect-5b008b32.js');
12
12
  var Radio = require('../Radio-0594409d.js');
13
- var TextArea = require('../TextArea-760ba0ad.js');
14
- var TextInput = require('../TextInput-a1083be3.js');
13
+ var TextArea = require('../TextArea-49fa461f.js');
14
+ var TextInput = require('../TextInput-c656bf03.js');
15
15
  var Switch = require('../Switch-cd165c8c.js');
16
16
  require('../defaultTheme-50f2b88f.js');
17
17
  require('styled-components');
@@ -36,6 +36,7 @@ require('../Badge-9bcebe96.js');
36
36
  require('../Tab-bd0f3345.js');
37
37
  require('../Tabs-cfc35dc0.js');
38
38
  require('../Tooltip-f4f9ab8f.js');
39
+ require('../useMergedRefs-b6d2f8fc.js');
39
40
 
40
41
 
41
42
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ntbjs/react-components",
3
- "version": "1.1.0-beta.67",
3
+ "version": "1.1.0-beta.69",
4
4
  "description": "NTBs common front-end design utilities and React components.",
5
5
  "scripts": {
6
6
  "build": "cross-env NODE_ENV=production rollup -c",
@@ -0,0 +1,42 @@
1
+ 'use strict';
2
+
3
+ var React = require('react');
4
+
5
+ var toFnRef = function toFnRef(ref) {
6
+ return !ref || typeof ref === 'function' ? ref : function (value) {
7
+ ref.current = value;
8
+ };
9
+ };
10
+
11
+ function mergeRefs(refA, refB) {
12
+ var a = toFnRef(refA);
13
+ var b = toFnRef(refB);
14
+ return function (value) {
15
+ if (a) a(value);
16
+ if (b) b(value);
17
+ };
18
+ }
19
+ /**
20
+ * Create and returns a single callback ref composed from two other Refs.
21
+ *
22
+ * ```tsx
23
+ * const Button = React.forwardRef((props, ref) => {
24
+ * const [element, attachRef] = useCallbackRef<HTMLButtonElement>();
25
+ * const mergedRef = useMergedRefs(ref, attachRef);
26
+ *
27
+ * return <button ref={mergedRef} {...props}/>
28
+ * })
29
+ * ```
30
+ *
31
+ * @param refA A Callback or mutable Ref
32
+ * @param refB A Callback or mutable Ref
33
+ * @category refs
34
+ */
35
+
36
+ function useMergedRefs(refA, refB) {
37
+ return React.useMemo(function () {
38
+ return mergeRefs(refA, refB);
39
+ }, [refA, refB]);
40
+ }
41
+
42
+ exports.useMergedRefs = useMergedRefs;
@@ -1,13 +1,11 @@
1
1
  'use strict';
2
2
 
3
- var AssetGallery = require('../../AssetGallery-e19d8426.js');
3
+ var AssetGallery = require('../../AssetGallery-d6b0ad78.js');
4
4
  require('../../defaultTheme-50f2b88f.js');
5
5
  require('styled-components');
6
6
  require('react');
7
7
  require('lodash');
8
- require('../../TextInput-a1083be3.js');
9
- require('nanoid');
10
- require('../../edit-note-c47d292e.js');
8
+ require('../../useMergedRefs-b6d2f8fc.js');
11
9
  require('resize-observer-polyfill');
12
10
  require('react-lazy-load-image-component');
13
11
  require('../../ActionButton-c3f5ed94.js');
@@ -19,15 +17,17 @@ require('../../shift-away-subtle-cfdf1dbe.js');
19
17
  require('../../ContextMenu-d088833b.js');
20
18
  require('../../expand-more-94585605.js');
21
19
  require('../../Checkbox-012bbd3f.js');
22
- require('../../CompactAutocompleteSelect-b366ba70.js');
20
+ require('nanoid');
21
+ require('../../CompactAutocompleteSelect-05c45f9a.js');
23
22
  require('react-select');
24
23
  require('../../react-select-creatable.esm-2f23d6c6.js');
25
24
  require('react-dom');
26
25
  require('react-select-async-paginate');
27
26
  require('../../close-ebf2f3cf.js');
28
27
  require('../../check-circle-filled-1640873e.js');
29
- require('../../CompactStarRating-17c8ca3d.js');
30
- require('../../CompactTextInput-7263652c.js');
28
+ require('../../CompactStarRating-53593d92.js');
29
+ require('../../CompactTextInput-b4215024.js');
30
+ require('../../edit-note-c47d292e.js');
31
31
  require('../../Alert-3e4f8be1.js');
32
32
  require('../../Badge-9bcebe96.js');
33
33
  require('../../Tab-bd0f3345.js');
@@ -35,7 +35,8 @@ require('../../Tabs-cfc35dc0.js');
35
35
  require('../../Tooltip-f4f9ab8f.js');
36
36
  require('../../MultiSelect-5b008b32.js');
37
37
  require('../../Radio-0594409d.js');
38
- require('../../TextArea-760ba0ad.js');
38
+ require('../../TextArea-49fa461f.js');
39
+ require('../../TextInput-c656bf03.js');
39
40
  require('../../Switch-cd165c8c.js');
40
41
  require('../../warning-circle-24522402.js');
41
42
 
@@ -1,15 +1,16 @@
1
1
  'use strict';
2
2
 
3
- var Instructions = require('../../Instructions-243c47b1.js');
3
+ var Instructions = require('../../Instructions-264f7d46.js');
4
4
  require('../../defaultTheme-50f2b88f.js');
5
5
  require('styled-components');
6
6
  require('react');
7
- require('../../TextArea-760ba0ad.js');
7
+ require('../../TextArea-49fa461f.js');
8
8
  require('nanoid');
9
9
  require('lodash');
10
+ require('../../useMergedRefs-b6d2f8fc.js');
10
11
  require('../../edit-note-c47d292e.js');
11
12
  require('../../check-circle-filled-1640873e.js');
12
- require('../../CompactAutocompleteSelect-b366ba70.js');
13
+ require('../../CompactAutocompleteSelect-05c45f9a.js');
13
14
  require('react-select');
14
15
  require('../../react-select-creatable.esm-2f23d6c6.js');
15
16
  require('react-dom');
package/widgets/index.js CHANGED
@@ -2,17 +2,15 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var AssetGallery = require('../AssetGallery-e19d8426.js');
5
+ var AssetGallery = require('../AssetGallery-d6b0ad78.js');
6
6
  var ContextMenu = require('../ContextMenu-d088833b.js');
7
7
  var AssetPreviewTopBar = require('../AssetPreviewTopBar-449e6019.js');
8
- var Instructions = require('../Instructions-243c47b1.js');
8
+ var Instructions = require('../Instructions-264f7d46.js');
9
9
  require('../defaultTheme-50f2b88f.js');
10
10
  require('styled-components');
11
11
  require('react');
12
12
  require('lodash');
13
- require('../TextInput-a1083be3.js');
14
- require('nanoid');
15
- require('../edit-note-c47d292e.js');
13
+ require('../useMergedRefs-b6d2f8fc.js');
16
14
  require('resize-observer-polyfill');
17
15
  require('react-lazy-load-image-component');
18
16
  require('../ActionButton-c3f5ed94.js');
@@ -23,15 +21,17 @@ require('@tippyjs/react');
23
21
  require('../shift-away-subtle-cfdf1dbe.js');
24
22
  require('../expand-more-94585605.js');
25
23
  require('../Checkbox-012bbd3f.js');
26
- require('../CompactAutocompleteSelect-b366ba70.js');
24
+ require('nanoid');
25
+ require('../CompactAutocompleteSelect-05c45f9a.js');
27
26
  require('react-select');
28
27
  require('../react-select-creatable.esm-2f23d6c6.js');
29
28
  require('react-dom');
30
29
  require('react-select-async-paginate');
31
30
  require('../close-ebf2f3cf.js');
32
31
  require('../check-circle-filled-1640873e.js');
33
- require('../CompactStarRating-17c8ca3d.js');
34
- require('../CompactTextInput-7263652c.js');
32
+ require('../CompactStarRating-53593d92.js');
33
+ require('../CompactTextInput-b4215024.js');
34
+ require('../edit-note-c47d292e.js');
35
35
  require('../Alert-3e4f8be1.js');
36
36
  require('../Badge-9bcebe96.js');
37
37
  require('../Tab-bd0f3345.js');
@@ -39,7 +39,8 @@ require('../Tabs-cfc35dc0.js');
39
39
  require('../Tooltip-f4f9ab8f.js');
40
40
  require('../MultiSelect-5b008b32.js');
41
41
  require('../Radio-0594409d.js');
42
- require('../TextArea-760ba0ad.js');
42
+ require('../TextArea-49fa461f.js');
43
+ require('../TextInput-c656bf03.js');
43
44
  require('../Switch-cd165c8c.js');
44
45
  require('../warning-circle-24522402.js');
45
46