@ntbjs/react-components 1.2.0-rc.98 → 1.2.0-rc.99

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 (68) hide show
  1. package/{ActionButton-adaadbae.js → ActionButton-46735b89.js} +17 -17
  2. package/{Alert-b41a748e.js → Alert-13b75102.js} +36 -33
  3. package/{AssetGallery-df037aa0.js → AssetGallery-094ed34b.js} +595 -442
  4. package/{AssetPreviewTopBar-ac66b804.js → AssetPreviewTopBar-912c3469.js} +38 -35
  5. package/{Badge-4a2a9f6b.js → Badge-aec841c8.js} +67 -47
  6. package/{Button-4c60d2f4.js → Button-49f82b31.js} +77 -66
  7. package/{Checkbox-84dd9aa1.js → Checkbox-68dc38a8.js} +50 -46
  8. package/{CompactAutocompleteSelect-bf5e8820.js → CompactAutocompleteSelect-b68618b3.js} +143 -110
  9. package/{CompactStarRating-017d64cb.js → CompactStarRating-405e4508.js} +105 -90
  10. package/{CompactTextInput-8132e42d.js → CompactTextInput-0d53acdf.js} +104 -93
  11. package/{ContextMenu-4427ad11.js → ContextMenu-4ec3d9f3.js} +7 -8
  12. package/{ContextMenuItem-b5f97001.js → ContextMenuItem-ba2b697e.js} +32 -29
  13. package/{InputGroup-9d1cd295.js → InputGroup-49fbc423.js} +7 -8
  14. package/{Instructions-235aa0fc.js → Instructions-b6d3e7bd.js} +111 -97
  15. package/{MultiLevelCheckboxSelect-4f51a1a2.js → MultiLevelCheckboxSelect-f3de8047.js} +204 -143
  16. package/{MultiSelect-53089d1e.js → MultiSelect-efd60232.js} +120 -91
  17. package/{Popover-938e6bfc.js → Popover-569cd272.js} +33 -32
  18. package/{Radio-1d09e729.js → Radio-32d0513a.js} +33 -33
  19. package/{SectionSeparator-d9ae38b7.js → SectionSeparator-259a22ed.js} +7 -8
  20. package/{Switch-15d9a890.js → Switch-4a41585f.js} +40 -39
  21. package/{Tab-88f77a44.js → Tab-f499ecbc.js} +9 -10
  22. package/{Tabs-e64ecfaa.js → Tabs-a8c77f71.js} +38 -48
  23. package/{TextArea-cbe713eb.js → TextArea-a5579cc8.js} +140 -151
  24. package/{TextInput-b9414cc6.js → TextInput-0d109708.js} +70 -64
  25. package/{Tooltip-22238771.js → Tooltip-66daf6e3.js} +20 -21
  26. package/{VerificationStatusIcon-99a54d5d.js → VerificationStatusIcon-6fe95a92.js} +33 -24
  27. package/{close-1751121a.js → close-ebf2f3cf.js} +12 -8
  28. package/data/Alert/index.js +2 -3
  29. package/data/Badge/index.js +2 -3
  30. package/data/Popover/index.js +3 -4
  31. package/data/Tab/index.js +2 -3
  32. package/data/Tabs/index.js +3 -4
  33. package/data/Tooltip/index.js +3 -4
  34. package/data/index.js +9 -10
  35. package/{index-1e234d23.js → defaultTheme-ea44e34a.js} +352 -39
  36. package/edit-note-c47d292e.js +41 -0
  37. package/{expand-more-d74e2bd2.js → expand-more-94585605.js} +12 -8
  38. package/inputs/ActionButton/index.js +2 -3
  39. package/inputs/Button/index.js +6 -7
  40. package/inputs/Checkbox/index.js +2 -3
  41. package/inputs/CompactAutocompleteSelect/index.js +13 -14
  42. package/inputs/CompactStarRating/index.js +10 -11
  43. package/inputs/CompactTextInput/index.js +11 -12
  44. package/inputs/MultiSelect/index.js +4 -5
  45. package/inputs/Radio/index.js +2 -3
  46. package/inputs/Switch/index.js +2 -3
  47. package/inputs/TextArea/index.js +11 -12
  48. package/inputs/TextInput/index.js +3 -4
  49. package/inputs/index.js +28 -31
  50. package/layout/InputGroup/index.js +2 -3
  51. package/layout/SectionSeparator/index.js +2 -3
  52. package/layout/index.js +3 -4
  53. package/package.json +5 -5
  54. package/{react-select-creatable.esm-31bd2caf.js → react-select-creatable.esm-2f23d6c6.js} +1272 -1470
  55. package/{shift-away-subtle-c3c2f2b2.js → shift-away-subtle-0bed9a3c.js} +1 -1
  56. package/ssr/index.js +3 -1
  57. package/{warning-circle-478e65cc.js → warning-circle-24522402.js} +12 -8
  58. package/widgets/AssetGallery/index.js +31 -33
  59. package/widgets/AssetPreview/AssetPreviewTopBar/index.js +3 -4
  60. package/widgets/ContextMenu/ContextMenuItem/index.js +2 -3
  61. package/widgets/ContextMenu/ContextMenuItemsGroup/index.js +7 -8
  62. package/widgets/ContextMenu/index.js +2 -3
  63. package/widgets/Instructions/index.js +17 -18
  64. package/widgets/index.js +33 -35
  65. package/CompactAutocompleteSelectAsync-e76bf873.js +0 -28
  66. package/defaultTheme-8bd3e0b9.js +0 -271
  67. package/edit-note-cefe2215.js +0 -37
  68. package/inputs/CompactAutocompleteSelectAsync/index.js +0 -11
@@ -1,18 +1,17 @@
1
1
  'use strict';
2
2
 
3
- var defaultTheme = require('./defaultTheme-8bd3e0b9.js');
3
+ var defaultTheme = require('./defaultTheme-ea44e34a.js');
4
4
  var React = require('react');
5
5
  var useMergedRefs = require('./useMergedRefs-b6d2f8fc.js');
6
6
  var nanoid = require('nanoid');
7
- var index = require('./index-1e234d23.js');
8
- require('./Alert-b41a748e.js');
9
- require('./Badge-4a2a9f6b.js');
10
- require('./Popover-938e6bfc.js');
11
- require('./Tab-88f77a44.js');
12
- require('./Tabs-e64ecfaa.js');
13
- var Tooltip = require('./Tooltip-22238771.js');
14
- require('./VerificationStatusIcon-99a54d5d.js');
15
- var editNote = require('./edit-note-cefe2215.js');
7
+ require('./Alert-13b75102.js');
8
+ require('./Badge-aec841c8.js');
9
+ require('./Popover-569cd272.js');
10
+ require('./Tab-f499ecbc.js');
11
+ require('./Tabs-a8c77f71.js');
12
+ var Tooltip = require('./Tooltip-66daf6e3.js');
13
+ require('./VerificationStatusIcon-6fe95a92.js');
14
+ var editNote = require('./edit-note-c47d292e.js');
16
15
  var styled = require('styled-components');
17
16
 
18
17
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
@@ -29,15 +28,15 @@ var placeholderBaseStyle = styled.css(_templateObject4 || (_templateObject4 = de
29
28
  }, function (props) {
30
29
  return props.theme.themeProp('opacity', 0.6, 0.5);
31
30
  });
32
- var InputIconContainer = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject5 || (_templateObject5 = defaultTheme._taggedTemplateLiteral(["\n opacity: 0;\n pointer-events: none;\n border-top-right-radius: 3px;\n border-bottom-right-radius: 3px;\n display: flex;\n align-items: flex-start;\n position: absolute;\n right: 15px;\n top: 10px;\n bottom: 0;\n > .smallPadingIcon {\n padding: 4px;\n width: 15px;\n height: 15px;\n border-radius: 5px;\n opacity: 1;\n margin-top: -5px;\n ", "\n }\n svg {\n width: 15px;\n opacity: 0.7;\n transition: opacity 250ms;\n\n ", "\n }\n"])), function (props) {
31
+ var InputIconContainer = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject5 || (_templateObject5 = defaultTheme._taggedTemplateLiteral(["\n opacity: 0;\n pointer-events: none;\n border-top-right-radius: 3px;\n border-bottom-right-radius: 3px;\n display: flex;\n align-items: flex-start;\n position: absolute;\n right: 15px;\n top: 10px;\n bottom: 0;\n > .smallPadingIcon {\n padding: 4px;\n width: 15px;\n height: 15px;\n border-radius: 5px;\n opacity: 1;\n margin-top: -5px;\n ", "\n }\n svg {\n width: 15px;\n opacity: 0.7;\n transition: opacity 250ms;\n\n ", "\n }\n"])), function (props) {
33
32
  return props.theme.themeProp('background-color', props.theme.getColor('gray-900'), props.theme.getColor('gray-300'), '!important');
34
33
  }, function (props) {
35
34
  return props.disabled && styled.css(_templateObject6 || (_templateObject6 = defaultTheme._taggedTemplateLiteral(["\n display: none;\n "])));
36
35
  });
37
- 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: 5px 10px;\n resize: vertical;\n z-index: 0;\n border-radius: 3px;\n box-sizing: border-box;\n appearance: none;\n border: 1px solid;\n ", "\n\n\n\n ", "\n \n transition: height 550ms ease-in-out; border-color 350ms;\n\n ", "\n\n ", "\n\n ", "\n\n ", "\n \n ", "\n \n ", "\n\n ", "\n \n ", "\n\n ", "\n\n ", " \n\n ", " \n \n\n ", " \n\n \n \n ", "\n\n ", " \n\n ", "\n \n \n ", "\n\n ", "\n\n\n ", ";\n\n ", ";\n\n ", "\n\n ", "\n\n ", "\n\n ", "\n\n\n\n &&:hover:not(:focus) {\n ", ";\n\n ", ";\n\n ", ";\n\n \n ", "; \n\n\n ", ";\n transition: background 350ms;\n & + ", " {\n opacity: 1;\n ", ";\n transition: opacity 350ms;\n }\n }\n\n &::placeholder {\n ", "\n\n ", "\n }\n\n &&:focus {\n outline: none;\n ", "\n\n ", ";\n\n \n ", " \n \n ", "\n\n }\n\n &&:not(:hover):not(:focus) {\n ", ";\n ", ";\n\n ", "\n\n ", ";\n\n \n }\n"])), function (props) {
38
- return props.borderRadius && styled.css(_templateObject8 || (_templateObject8 = defaultTheme._taggedTemplateLiteral(["\n border-radius: ", "px;\n "])), props.borderRadius);
36
+ 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: 5px 10px;\n resize: vertical;\n z-index: 0;\n border-radius: 3px;\n box-sizing: border-box;\n appearance: none;\n border: 1px solid;\n", "\n ", "\n transition: height 550ms ease-in-out; border-color 350ms;\n\n ", "\n\n ", "\n\n ", "\n\n ", "\n \n ", "\n \n ", "\n\n ", "\n \n ", "\n\n ", "\n\n ", " \n\n ", " \n \n\n ", " \n\n \n \n ", "\n\n ", " \n\n ", "\n \n \n ", "\n\n ", "\n\n\n ", ";\n\n ", ";\n\n ", "\n\n ", "\n\n ", "\n\n ", "\n\n\n\n &&:hover:not(:focus) {\n ", ";\n\n ", ";\n\n ", ";\n\n \n ", "; \n\n\n ", ";\n transition: background 350ms;\n & + ", " {\n opacity: 1;\n ", ";\n transition: opacity 350ms;\n }\n }\n\n &::placeholder {\n ", "\n\n ", "\n }\n\n &&:focus {\n outline: none;\n ", "\n\n ", ";\n\n \n ", " \n \n ", "\n\n }\n\n &&:not(:hover):not(:focus) {\n ", ";\n ", ";\n\n ", "\n\n ", ";\n\n \n }\n"])), function (props) {
37
+ return !props.expanded && props.showMore && styled.css(_templateObject8 || (_templateObject8 = defaultTheme._taggedTemplateLiteral(["\n -webkit-mask-image: linear-gradient(0deg, transparent 5px, white 45px);\n "])));
39
38
  }, function (props) {
40
- return props.showMore && !props.expanded && styled.css(_templateObject9 || (_templateObject9 = defaultTheme._taggedTemplateLiteral(["\n -webkit-mask-image: linear-gradient(0deg, transparent 5px, white 45px);\n "])));
39
+ return props.borderRadius && styled.css(_templateObject9 || (_templateObject9 = defaultTheme._taggedTemplateLiteral(["\n border-radius: ", "px;\n "])), props.borderRadius);
41
40
  }, function (props) {
42
41
  return props.theme.themeProp('color', 'white', 'black');
43
42
  }, function (props) {
@@ -47,7 +46,7 @@ var TextInputField = styled__default["default"].textarea.attrs(defaultTheme.appl
47
46
  }, function (props) {
48
47
  return props.readOnly && styled.css(_templateObject12 || (_templateObject12 = defaultTheme._taggedTemplateLiteral(["\n padding: 12px 10px; ;\n "])));
49
48
  }, function (props) {
50
- return props.showMore && styled.css(_templateObject13 || (_templateObject13 = defaultTheme._taggedTemplateLiteral(["\n overflow: hidden;\n "])));
49
+ return props.showMore && !props.expanded && styled.css(_templateObject13 || (_templateObject13 = defaultTheme._taggedTemplateLiteral(["\n overflow: hidden;\n "])));
51
50
  }, function (props) {
52
51
  return props.theme.themeProp('color', props.theme.getColor('gray-100'), props.theme.getColor('gray-900'));
53
52
  }, function (props) {
@@ -129,7 +128,7 @@ var TextInputField = styled__default["default"].textarea.attrs(defaultTheme.appl
129
128
  }, function (props) {
130
129
  return props.edit && props.type === 'warning' && props.theme.themeProp('background', '#2F2402', '#FFF3A7');
131
130
  });
132
- var TextInputLabel = styled__default["default"].label.attrs(defaultTheme.applyDefaultTheme)(_templateObject30 || (_templateObject30 = 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 margin-botton: 50px;\n\n ", ";\n\n ", ";\n\n ", "\n\n ", "\n\n ", "\n content: \"\";\n\n ", "\n"])), function (props) {
131
+ var TextInputLabel = styled__default['default'].label.attrs(defaultTheme.applyDefaultTheme)(_templateObject30 || (_templateObject30 = 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 margin-botton: 50px;\n\n ", ";\n\n ", ";\n\n ", "\n\n ", "\n\n ", "\n content: \"\";\n\n ", "\n"])), function (props) {
133
132
  return props.theme.themeProp('color', props.theme.getColor('white'), props.theme.getColor('gray-700'));
134
133
  }, placeholderBaseStyle, function (props) {
135
134
  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%)"));
@@ -140,32 +139,32 @@ var TextInputLabel = styled__default["default"].label.attrs(defaultTheme.applyDe
140
139
  }, function (props) {
141
140
  return props.hasIcon && styled.css(_templateObject33 || (_templateObject33 = defaultTheme._taggedTemplateLiteral(["\n left: 55px;\n "])));
142
141
  });
143
- var TextInputFieldIcon = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject34 || (_templateObject34 = 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"])));
144
- var TextInputFieldIconAlert = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject35 || (_templateObject35 = defaultTheme._taggedTemplateLiteral(["\n position: absolute;\n top: 2.8px;\n display: flex;\n padding: 0 10px 0 30px;\n opacity: 0.6;\n transition: opacity 250ms;\n ", "\n svg {\n margin-top: 11px;\n width: 15px;\n }\n"])), function (props) {
142
+ var TextInputFieldIcon = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject34 || (_templateObject34 = 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"])));
143
+ var TextInputFieldIconAlert = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject35 || (_templateObject35 = defaultTheme._taggedTemplateLiteral(["\n position: absolute;\n top: 2.8px;\n display: flex;\n padding: 0 10px 0 30px;\n opacity: 0.6;\n transition: opacity 250ms;\n ", "\n svg {\n margin-top: 11px;\n width: 15px;\n }\n"])), function (props) {
145
144
  return props.type === 'warning' && props.theme.themeProp('color', '#EAB308', '#2F2402');
146
145
  });
147
- var TextInput = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject36 || (_templateObject36 = defaultTheme._taggedTemplateLiteral(["\n position: relative;\n\n ", "\n\n ", "\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"])), function (props) {
146
+ var TextInput = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject36 || (_templateObject36 = defaultTheme._taggedTemplateLiteral(["\n position: relative;\n\n ", "\n\n ", "\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"])), function (props) {
148
147
  return props.readOnly && styled.css(_templateObject37 || (_templateObject37 = defaultTheme._taggedTemplateLiteral(["\n pointer-events: none;\n "])));
149
148
  }, function (props) {
150
149
  return props.disabled && styled.css(_templateObject38 || (_templateObject38 = defaultTheme._taggedTemplateLiteral(["\n opacity: 0.5;\n\n > * {\n cursor: not-allowed;\n }\n "])));
151
150
  }, TextInputLabel, activeLabel, TextInputFieldIcon, TextInputField, TextInputLabel, activeLabel, function (props) {
152
151
  return props.type === 'error' && props.theme.themeProp('color', props.theme.getColor('red-200'), props.theme.getColor('red-500'));
153
152
  });
154
- var Description = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject39 || (_templateObject39 = 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\n ", "\n"])), function (props) {
153
+ var Description = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject39 || (_templateObject39 = 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\n ", "\n"])), function (props) {
155
154
  return props.theme.themeProp('color', props.theme.getColor('gray-400'), props.theme.getColor('gray-500'));
156
155
  }, function (props) {
157
156
  return (props.type === 'warning-border' || props.type === 'warning') && styled.css(_templateObject40 || (_templateObject40 = defaultTheme._taggedTemplateLiteral(["\n ", "\n "])), props.theme.themeProp('color', props.theme.getColor('red-200'), props.theme.getColor('orange-500')));
158
157
  }, function (props) {
159
158
  return (props.type === 'error-border' || props.type === 'error') && styled.css(_templateObject41 || (_templateObject41 = defaultTheme._taggedTemplateLiteral(["\n ", "\n "])), props.theme.themeProp('color', props.theme.getColor('red-200'), props.theme.getColor('red-500')));
160
159
  });
161
- var SuccessContainer = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject42 || (_templateObject42 = defaultTheme._taggedTemplateLiteral(["\n opacity: 1;\n pointer-events: none;\n opacity: ", ";\n animation: ", " 0.5s ease-in-out;\n transition: opacity 0.5s ease-in-out;\n position: absolute;\n margin-top: -35px;\n margin-left: 5px;\n width: 15px;\n height: 15px;\n padding: 5px;\n ", "\n\n > svg {\n width: 15px;\n }\n"])), function (props) {
160
+ var SuccessContainer = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject42 || (_templateObject42 = defaultTheme._taggedTemplateLiteral(["\n opacity: 1;\n pointer-events: none;\n opacity: ", ";\n animation: ", " 0.5s ease-in-out;\n transition: opacity 0.5s ease-in-out;\n position: absolute;\n margin-top: -35px;\n margin-left: 5px;\n width: 15px;\n height: 15px;\n padding: 5px;\n ", "\n\n > svg {\n width: 15px;\n }\n"])), function (props) {
162
161
  return props.fadeIn ? 0 : 1;
163
162
  }, function (props) {
164
163
  return props.fadeIn ? fadeOutCheck : fadeInCheck;
165
164
  }, function (props) {
166
165
  return props.theme.themeProp('color', props.theme.getColor('gray-300'), props.theme.getColor('gray-500'));
167
166
  });
168
- var ShowMoreText = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject43 || (_templateObject43 = defaultTheme._taggedTemplateLiteral(["\n margin-top: -18px;\n margin-bottom: 0;\n display: block;\n position: absolute;\n font-size: 0.875rem;\n cursor: pointer;\n padding: 2px 10px;\n margin-right: 10px;\n margin-top: -26px;\n ", "\n transition: margin-top 550ms ease-in-out;\n -webkit-mask-image: linear-gradient(180deg, transparent 1px, white 7px);\n ", "\n\n ", ";\n\n ", "\n"])), function (props) {
167
+ var ShowMoreText = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject43 || (_templateObject43 = defaultTheme._taggedTemplateLiteral(["\n margin-top: -18px;\n margin-bottom: 0;\n display: block;\n position: absolute;\n font-size: 0.875rem;\n cursor: pointer;\n padding: 2px 10px;\n margin-right: 10px;\n margin-top: -26px;\n ", "\n transition: margin-top 550ms ease-in-out;\n -webkit-mask-image: linear-gradient(180deg, transparent 1px, white 7px);\n ", "\n\n ", ";\n\n ", "\n"])), function (props) {
169
168
  return props.expanded && styled.css(_templateObject44 || (_templateObject44 = defaultTheme._taggedTemplateLiteral(["\n margin-top: 0px;\n "])));
170
169
  }, function (props) {
171
170
  return props.theme.themeProp('background', props.theme.getColor('gray-900'), props.theme.getColor('white'));
@@ -175,128 +174,116 @@ var ShowMoreText = styled__default["default"].div.attrs(defaultTheme.applyDefaul
175
174
  return props.type === 'error' && styled.css(_templateObject45 || (_templateObject45 = defaultTheme._taggedTemplateLiteral(["\n content: 'error';\n ", "\n "])), props.theme.themeProp('color', props.theme.getColor('red-200'), props.theme.getColor('red-500')));
176
175
  });
177
176
 
178
- var _excluded = ["value", "defaultValue", "name", "label", "placeholder", "required", "disabled", "hidden", "readOnly", "edit", "showMore", "showMoreText", "showLessText", "autoComplete", "description", "type", "icon", "rows", "className", "style", "onChange", "onBlur", "lightBackground", "noBorder", "instructionsTextArea", "loadingIcon", "successIcon", "padding", "descriptionToolTip", "borderRadius"];
179
- var TextArea = React__default["default"].forwardRef(function TextArea(_ref, forwardedRef) {
177
+ var TextArea = React__default['default'].forwardRef(function TextArea(_ref, forwardedRef) {
180
178
  var value = _ref.value,
181
- defaultValue = _ref.defaultValue,
182
- name = _ref.name,
183
- label = _ref.label,
184
- placeholder = _ref.placeholder,
185
- required = _ref.required,
186
- disabled = _ref.disabled,
187
- hidden = _ref.hidden,
188
- readOnly = _ref.readOnly,
189
- edit = _ref.edit,
190
- showMore = _ref.showMore,
191
- showMoreText = _ref.showMoreText,
192
- showLessText = _ref.showLessText,
193
- autoComplete = _ref.autoComplete,
194
- description = _ref.description,
195
- type = _ref.type,
196
- icon = _ref.icon,
197
- rows = _ref.rows,
198
- className = _ref.className,
199
- style = _ref.style,
200
- _onChange = _ref.onChange,
201
- onBlur = _ref.onBlur,
202
- lightBackground = _ref.lightBackground,
203
- noBorder = _ref.noBorder,
204
- instructionsTextArea = _ref.instructionsTextArea,
205
- loadingIcon = _ref.loadingIcon,
206
- successIcon = _ref.successIcon,
207
- padding = _ref.padding,
208
- descriptionToolTip = _ref.descriptionToolTip,
209
- borderRadius = _ref.borderRadius,
210
- rest = defaultTheme._objectWithoutProperties(_ref, _excluded);
179
+ defaultValue = _ref.defaultValue,
180
+ name = _ref.name,
181
+ label = _ref.label,
182
+ placeholder = _ref.placeholder,
183
+ required = _ref.required,
184
+ disabled = _ref.disabled,
185
+ hidden = _ref.hidden,
186
+ readOnly = _ref.readOnly,
187
+ edit = _ref.edit,
188
+ showMore = _ref.showMore,
189
+ showMoreText = _ref.showMoreText,
190
+ showLessText = _ref.showLessText,
191
+ autoComplete = _ref.autoComplete,
192
+ description = _ref.description,
193
+ type = _ref.type,
194
+ icon = _ref.icon,
195
+ rows = _ref.rows,
196
+ className = _ref.className,
197
+ style = _ref.style,
198
+ _onChange = _ref.onChange,
199
+ onBlur = _ref.onBlur,
200
+ lightBackground = _ref.lightBackground,
201
+ noBorder = _ref.noBorder,
202
+ instructionsTextArea = _ref.instructionsTextArea,
203
+ loadingIcon = _ref.loadingIcon,
204
+ successIcon = _ref.successIcon,
205
+ padding = _ref.padding,
206
+ descriptionToolTip = _ref.descriptionToolTip,
207
+ borderRadius = _ref.borderRadius,
208
+ rest = defaultTheme._objectWithoutProperties(_ref, ["value", "defaultValue", "name", "label", "placeholder", "required", "disabled", "hidden", "readOnly", "edit", "showMore", "showMoreText", "showLessText", "autoComplete", "description", "type", "icon", "rows", "className", "style", "onChange", "onBlur", "lightBackground", "noBorder", "instructionsTextArea", "loadingIcon", "successIcon", "padding", "descriptionToolTip", "borderRadius"]);
209
+
211
210
  var textInputDomNode = React.useRef(null);
212
211
  var textInputRef = useMergedRefs.useMergedRefs(forwardedRef, textInputDomNode);
212
+
213
213
  var _useState = React.useState(!(value || defaultValue)),
214
- _useState2 = defaultTheme._slicedToArray(_useState, 2),
215
- inputIsEmpty = _useState2[0],
216
- setInputIsEmpty = _useState2[1];
217
- var _useState3 = React.useState(value || defaultValue),
218
- _useState4 = defaultTheme._slicedToArray(_useState3, 2),
219
- defaultInput = _useState4[0],
220
- setDefaultInput = _useState4[1];
214
+ _useState2 = defaultTheme._slicedToArray(_useState, 2),
215
+ inputIsEmpty = _useState2[0],
216
+ setInputIsEmpty = _useState2[1];
217
+
218
+ var _useState3 = React.useState(''),
219
+ _useState4 = defaultTheme._slicedToArray(_useState3, 2),
220
+ maxContentRows = _useState4[0],
221
+ setMaxContentRows = _useState4[1];
222
+
221
223
  var _useState5 = React.useState(false),
222
- _useState6 = defaultTheme._slicedToArray(_useState5, 2),
223
- expanded = _useState6[0],
224
- setExpanded = _useState6[1];
224
+ _useState6 = defaultTheme._slicedToArray(_useState5, 2),
225
+ expanded = _useState6[0],
226
+ setExpanded = _useState6[1];
227
+
225
228
  var _useState7 = React.useState(false),
226
- _useState8 = defaultTheme._slicedToArray(_useState7, 2),
227
- autoFocus = _useState8[0],
228
- setAutoFocus = _useState8[1];
229
+ _useState8 = defaultTheme._slicedToArray(_useState7, 2),
230
+ autoFocus = _useState8[0],
231
+ setAutoFocus = _useState8[1];
232
+
229
233
  var _useState9 = React.useState(nanoid.nanoid()),
230
- _useState10 = defaultTheme._slicedToArray(_useState9, 1),
231
- uniqueId = _useState10[0];
232
- var defaultHeight = rows * 16;
234
+ _useState10 = defaultTheme._slicedToArray(_useState9, 1),
235
+ uniqueId = _useState10[0];
236
+
233
237
  var memoizedDescriptionToolTip = React.useMemo(function () {
234
238
  return descriptionToolTip;
235
239
  }, [descriptionToolTip]);
236
- var defaultHeightFunction = function defaultHeightFunction() {
237
- var textareaRefCurrent = textInputDomNode.current;
238
- textareaRefCurrent.style.height = "".concat(defaultHeight, "px");
239
- };
240
- var adjustHeighToScroll = function adjustHeighToScroll() {
240
+
241
+ var calculateRows = function calculateRows() {
241
242
  var textareaRefCurrent = textInputDomNode === null || textInputDomNode === void 0 ? void 0 : textInputDomNode.current;
242
- if (textareaRefCurrent !== null) {
243
- textareaRefCurrent.style.height = 'auto';
244
- var newHeight = textareaRefCurrent.scrollHeight;
245
- textareaRefCurrent.style.height = "".concat(newHeight, "px");
246
- }
243
+ var textAreaHeight = textareaRefCurrent === null || textareaRefCurrent === void 0 ? void 0 : textareaRefCurrent.scrollHeight;
244
+ var lineHeight = 16;
245
+ var calculatedRows = Math.floor(textAreaHeight / lineHeight);
246
+ setMaxContentRows(calculatedRows);
247
247
  };
248
+
248
249
  React.useEffect(function () {
249
- defaultHeightFunction();
250
- setDefaultInput(value || defaultValue);
251
- setExpanded(false);
252
- adjustHeighToScroll();
253
- if ((value || defaultValue) != defaultInput) {
254
- adjustHeighToScroll();
255
- }
256
- }, []);
250
+ calculateRows();
251
+ }, [value, defaultValue]);
257
252
  React.useEffect(function () {
258
- defaultHeightFunction();
259
- if ((value || defaultValue) != defaultInput) {
260
- adjustHeighToScroll();
261
- }
253
+ setExpanded(false);
254
+ setAutoFocus(false);
262
255
  }, [value, defaultValue]);
263
- var handleTextAreaClick = function handleTextAreaClick() {
264
- var textareaRefCurrent = textInputDomNode.current;
265
- if (textareaRefCurrent !== null) {
266
- textareaRefCurrent.style.height = "".concat(textareaRefCurrent.scrollHeight, "px");
267
- }
268
- if (!expanded) {
269
- setExpanded(true);
270
- }
256
+
257
+ var handleTextAreaChange = function handleTextAreaChange() {
258
+ setExpanded(true);
271
259
  };
260
+
272
261
  var handleTextAreaShowLess = function handleTextAreaShowLess() {
273
- var textareaRefCurrent = textInputDomNode.current;
274
- if (textareaRefCurrent !== null) {
275
- textareaRefCurrent.style.height = expanded ? "".concat(rows * 16, "px") : "".concat(textareaRefCurrent.scrollHeight, "px");
276
- }
277
262
  setExpanded(!expanded);
278
263
  };
264
+
279
265
  var onKeyDown = React.useCallback(function (event) {
280
266
  if (event.key === 'Enter') {
281
267
  event.stopPropagation();
282
268
  }
283
269
  }, []);
270
+
284
271
  var input = function input() {
285
- return React__default["default"].createElement(TextInput, {
272
+ return React__default['default'].createElement(TextInput, {
286
273
  disabled: disabled,
287
274
  readOnly: readOnly,
288
275
  type: type,
289
276
  className: className,
290
277
  style: style
291
- }, React__default["default"].createElement(TextInputFieldIconAlert, {
278
+ }, React__default['default'].createElement(TextInputFieldIconAlert, {
292
279
  type: type
293
- }, icon), React__default["default"].createElement(TextInputField, defaultTheme._extends({
280
+ }, icon), React__default['default'].createElement(TextInputField, defaultTheme._extends({
294
281
  autoFocus: autoFocus,
295
282
  borderRadius: borderRadius,
296
283
  ref: textInputRef,
297
- rows: rows,
284
+ rows: !showMore ? rows : !expanded ? rows : maxContentRows,
285
+ maxContentRows: maxContentRows,
298
286
  expanded: expanded,
299
- defaultHeight: defaultHeight,
300
287
  value: value,
301
288
  defaultValue: defaultValue,
302
289
  name: name,
@@ -318,40 +305,44 @@ var TextArea = React__default["default"].forwardRef(function TextArea(_ref, forw
318
305
  onChange: function onChange(e) {
319
306
  if (e.target.value) {
320
307
  setInputIsEmpty(false);
308
+
321
309
  if (!autoFocus) {
322
310
  setAutoFocus(true);
323
311
  }
324
312
  } else {
325
313
  setInputIsEmpty(true);
314
+
326
315
  if (!autoFocus) {
327
316
  setAutoFocus(true);
328
317
  }
329
318
  }
319
+
330
320
  _onChange(e);
331
321
  },
332
322
  onKeyDown: onKeyDown,
333
323
  onBlur: onBlur,
334
324
  noBorder: noBorder
335
325
  }, rest, {
336
- onClick: handleTextAreaClick
337
- })), (type === 'loading' || type === 'success') && React__default["default"].createElement(SuccessContainer, null, type === 'loading' && loadingIcon, type === 'success' && successIcon), !readOnly && noBorder && React__default["default"].createElement(InputIconContainer, {
326
+ onClick: showMore ? handleTextAreaChange : undefined
327
+ })), (type === 'loading' || type === 'success') && React__default['default'].createElement(SuccessContainer, null, type === 'loading' && loadingIcon, type === 'success' && successIcon), !readOnly && noBorder && React__default['default'].createElement(InputIconContainer, {
338
328
  disabled: disabled
339
- }, React__default["default"].createElement(editNote.SvgEditNote, {
329
+ }, React__default['default'].createElement(editNote.SvgEditNote, {
340
330
  className: padding === 'small' ? 'smallPadingIcon' : undefined
341
- })), label && React__default["default"].createElement(TextInputLabel, {
331
+ })), label && React__default['default'].createElement(TextInputLabel, {
342
332
  htmlFor: "text-input-".concat(uniqueId),
343
333
  hasPlaceholder: Boolean(placeholder),
344
334
  hasIcon: Boolean(icon),
345
335
  inputIsEmpty: inputIsEmpty
346
- }, label, required && ' *'), typeof description === 'string' && description.length > 0 && React__default["default"].createElement(Description, {
336
+ }, label, required && ' *'), typeof description === 'string' && description.length > 0 && React__default['default'].createElement(Description, {
347
337
  type: type
348
- }, description), showMore && React__default["default"].createElement(ShowMoreText, {
338
+ }, description), maxContentRows > rows && showMore && React__default['default'].createElement(ShowMoreText, {
349
339
  onClick: showMore ? handleTextAreaShowLess : undefined,
350
340
  expanded: expanded
351
- }, !expanded ? showMoreText : expanded ? showLessText : null));
341
+ }, !expanded ? showMoreText : showLessText));
352
342
  };
343
+
353
344
  if (hidden) return null;
354
- return React__default["default"].createElement(React__default["default"].Fragment, null, !memoizedDescriptionToolTip && input(), memoizedDescriptionToolTip && React__default["default"].createElement("div", null, React__default["default"].createElement(Tooltip.Tooltip, {
345
+ return React__default['default'].createElement(React__default['default'].Fragment, null, !memoizedDescriptionToolTip && input(), memoizedDescriptionToolTip && React__default['default'].createElement("div", null, React__default['default'].createElement(Tooltip.Tooltip, {
355
346
  content: memoizedDescriptionToolTip,
356
347
  key: "tooltipTextArea1",
357
348
  placement: "bottom-end",
@@ -372,44 +363,42 @@ TextArea.defaultProps = {
372
363
  padding: 'medium',
373
364
  instructionsTextArea: false,
374
365
  descriptionToolTip: '',
375
- isExpanded: function isExpanded() {},
376
366
  onChange: function onChange() {},
377
367
  borderRadius: 0
378
368
  };
379
369
  TextArea.propTypes = process.env.NODE_ENV !== "production" ? {
380
- value: index.PropTypes.string,
381
- defaultValue: index.PropTypes.string,
382
- name: index.PropTypes.string,
383
- label: index.PropTypes.string,
384
- placeholder: index.PropTypes.string,
385
- required: index.PropTypes.bool,
386
- disabled: index.PropTypes.bool,
387
- hidden: index.PropTypes.bool,
388
- readOnly: index.PropTypes.bool,
389
- showMore: index.PropTypes.bool,
390
- showMoreText: index.PropTypes.string,
391
- showLessText: index.PropTypes.string,
392
- edit: index.PropTypes.bool,
393
- autoComplete: index.PropTypes.string,
394
- description: index.PropTypes.string,
395
- error: index.PropTypes.oneOfType([index.PropTypes.bool, index.PropTypes.string]),
396
- warning: index.PropTypes.oneOfType([index.PropTypes.bool, index.PropTypes.string]),
397
- icon: index.PropTypes.element,
398
- rows: index.PropTypes.oneOfType([index.PropTypes.number, index.PropTypes.string]),
399
- className: index.PropTypes.string,
400
- style: index.PropTypes.object,
401
- padding: index.PropTypes.oneOf(['small', 'medium', 'large']),
402
- lightBackground: index.PropTypes.bool,
403
- onChange: index.PropTypes.func,
404
- onBlur: index.PropTypes.func,
405
- noBorder: index.PropTypes.bool,
406
- isExpanded: index.PropTypes.func,
407
- type: index.PropTypes.oneOf(['', 'error', 'error-border', 'warning-border', 'warning', 'loading', 'success']),
408
- instructionsTextArea: index.PropTypes.bool,
409
- loadingIcon: index.PropTypes.element,
410
- successIcon: index.PropTypes.element,
411
- descriptionToolTip: index.PropTypes.string,
412
- borderRadius: index.PropTypes.number
370
+ value: defaultTheme.PropTypes.string,
371
+ defaultValue: defaultTheme.PropTypes.string,
372
+ name: defaultTheme.PropTypes.string,
373
+ label: defaultTheme.PropTypes.string,
374
+ placeholder: defaultTheme.PropTypes.string,
375
+ required: defaultTheme.PropTypes.bool,
376
+ disabled: defaultTheme.PropTypes.bool,
377
+ hidden: defaultTheme.PropTypes.bool,
378
+ readOnly: defaultTheme.PropTypes.bool,
379
+ showMore: defaultTheme.PropTypes.bool,
380
+ showMoreText: defaultTheme.PropTypes.string,
381
+ showLessText: defaultTheme.PropTypes.string,
382
+ edit: defaultTheme.PropTypes.bool,
383
+ autoComplete: defaultTheme.PropTypes.string,
384
+ description: defaultTheme.PropTypes.string,
385
+ error: defaultTheme.PropTypes.oneOfType([defaultTheme.PropTypes.bool, defaultTheme.PropTypes.string]),
386
+ warning: defaultTheme.PropTypes.oneOfType([defaultTheme.PropTypes.bool, defaultTheme.PropTypes.string]),
387
+ icon: defaultTheme.PropTypes.element,
388
+ rows: defaultTheme.PropTypes.oneOfType([defaultTheme.PropTypes.number, defaultTheme.PropTypes.string]),
389
+ className: defaultTheme.PropTypes.string,
390
+ style: defaultTheme.PropTypes.object,
391
+ padding: defaultTheme.PropTypes.oneOf(['small', 'medium', 'large']),
392
+ lightBackground: defaultTheme.PropTypes.bool,
393
+ onChange: defaultTheme.PropTypes.func,
394
+ onBlur: defaultTheme.PropTypes.func,
395
+ noBorder: defaultTheme.PropTypes.bool,
396
+ type: defaultTheme.PropTypes.oneOf(['', 'error', 'error-border', 'warning-border', 'warning', 'loading', 'success']),
397
+ instructionsTextArea: defaultTheme.PropTypes.bool,
398
+ loadingIcon: defaultTheme.PropTypes.element,
399
+ successIcon: defaultTheme.PropTypes.element,
400
+ descriptionToolTip: defaultTheme.PropTypes.string,
401
+ borderRadius: defaultTheme.PropTypes.number
413
402
  } : {};
414
403
 
415
404
  exports.TextArea = TextArea;