@ntbjs/react-components 1.1.0-beta.68 → 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');
12
+ require('./CompactAutocompleteSelect-05c45f9a.js');
13
13
  require('./CompactStarRating-53593d92.js');
14
14
  require('./CompactTextInput-b4215024.js');
15
15
  require('./MultiSelect-5b008b32.js');
16
16
  require('./Radio-0594409d.js');
17
- require('./TextArea-fae4a55c.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
 
@@ -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-fae4a55c.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
 
@@ -111,6 +112,7 @@ var TextArea = React__default['default'].forwardRef(function TextArea(_ref, forw
111
112
  hidden = _ref.hidden,
112
113
  readOnly = _ref.readOnly,
113
114
  edit = _ref.edit,
115
+ maxRows = _ref.maxRows,
114
116
  showMore = _ref.showMore,
115
117
  showMoreText = _ref.showMoreText,
116
118
  autoComplete = _ref.autoComplete,
@@ -128,7 +130,10 @@ var TextArea = React__default['default'].forwardRef(function TextArea(_ref, forw
128
130
  noBorder = _ref.noBorder,
129
131
  warningAlert = _ref.warningAlert,
130
132
  errorAlert = _ref.errorAlert,
131
- 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);
132
137
 
133
138
  var _useState = React.useState(''),
134
139
  _useState2 = defaultTheme._slicedToArray(_useState, 2),
@@ -158,25 +163,6 @@ var TextArea = React__default['default'].forwardRef(function TextArea(_ref, forw
158
163
  React.useEffect(function () {
159
164
  setDefaultRows(rows);
160
165
  }, []);
161
- var textAreaRef = React.useRef(null);
162
- React.useEffect(function () {
163
- var updateHeight = function updateHeight() {
164
- var lineheight = 1.5;
165
- var textarea = textAreaRef.current.scrollHeight;
166
- var maxRows = Math.floor(textarea / (lineheight * 11.5));
167
- var maxHeight = maxRows * lineheight + 'em';
168
- setMaxContentRows(maxRows);
169
- setMaxHeight(maxHeight);
170
-
171
- if (maxRows > defaultRows) {
172
- setExpanded(true);
173
- }
174
- };
175
-
176
- if (showMore) {
177
- updateHeight();
178
- }
179
- }, [showMore]);
180
166
 
181
167
  var _useState11 = React.useState(nanoid.nanoid()),
182
168
  _useState12 = defaultTheme._slicedToArray(_useState11, 1),
@@ -225,6 +211,25 @@ var TextArea = React__default['default'].forwardRef(function TextArea(_ref, forw
225
211
  }
226
212
  };
227
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]);
228
233
  if (hidden) return null;
229
234
  return React__default['default'].createElement(TextInput, {
230
235
  disabled: disabled,
@@ -234,7 +239,7 @@ var TextArea = React__default['default'].forwardRef(function TextArea(_ref, forw
234
239
  className: className,
235
240
  style: style
236
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({
237
- ref: showMore ? textAreaRef : forwardedRef,
242
+ ref: textInputRef,
238
243
  rows: contentRows > rows ? contentRows : rows,
239
244
  expanded: expanded,
240
245
  maxHeight: maxHeight,
@@ -313,7 +318,8 @@ TextArea.propTypes = process.env.NODE_ENV !== "production" ? {
313
318
  onBlur: defaultTheme.PropTypes.func,
314
319
  noBorder: defaultTheme.PropTypes.bool,
315
320
  warningAlert: defaultTheme.PropTypes.bool,
316
- errorAlert: defaultTheme.PropTypes.bool
321
+ errorAlert: defaultTheme.PropTypes.bool,
322
+ maxRows: defaultTheme.PropTypes.func
317
323
  } : {};
318
324
 
319
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,11 +1,12 @@
1
1
  'use strict';
2
2
 
3
- var TextArea = require('../../TextArea-fae4a55c.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');
8
+ var CompactAutocompleteSelect = require('../CompactAutocompleteSelect-05c45f9a.js');
9
9
  var CompactStarRating = require('../CompactStarRating-53593d92.js');
10
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-fae4a55c.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.68",
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-b0422191.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,7 +17,8 @@ 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');
@@ -28,6 +27,7 @@ require('../../close-ebf2f3cf.js');
28
27
  require('../../check-circle-filled-1640873e.js');
29
28
  require('../../CompactStarRating-53593d92.js');
30
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-fae4a55c.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-79b572bb.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-fae4a55c.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-b0422191.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-79b572bb.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,7 +21,8 @@ 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');
@@ -32,6 +31,7 @@ require('../close-ebf2f3cf.js');
32
31
  require('../check-circle-filled-1640873e.js');
33
32
  require('../CompactStarRating-53593d92.js');
34
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-fae4a55c.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