@ntbjs/react-components 1.3.0-rc.7 → 1.3.0-rc.71

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 (77) hide show
  1. package/.eslintrc +7 -8
  2. package/{ActionButton-46735b89.js → ActionButton-5bc79370.js} +19 -16
  3. package/{Alert-13b75102.js → Alert-edd9f6a7.js} +20 -24
  4. package/{AssetGallery-de5aaeb9.js → AssetAction-3dfb975f.js} +611 -654
  5. package/AssetPreviewTopBar-6eaa7df8.js +104 -0
  6. package/{Badge-757b0a39.js → Badge-00b2f311.js} +28 -49
  7. package/{Button-49f82b31.js → Button-82e91acb.js} +97 -88
  8. package/{Checkbox-68dc38a8.js → Checkbox-c441fdba.js} +32 -37
  9. package/{CompactAutocompleteSelect-26a9cd1a.js → CompactAutocompleteSelect-a8ccfcad.js} +95 -127
  10. package/{CompactStarRating-4ad1ccd5.js → CompactStarRating-3fa89ec7.js} +85 -98
  11. package/CompactTextInput-ee126f63.js +364 -0
  12. package/{ContextMenu-4ec3d9f3.js → ContextMenu-9645746f.js} +6 -6
  13. package/{ContextMenuItem-ba2b697e.js → ContextMenuItem-ae252503.js} +22 -26
  14. package/InfoCard-005063b4.js +86 -0
  15. package/{InputGroup-49fbc423.js → InputGroup-3598e37c.js} +6 -6
  16. package/{Instructions-6009d3e3.js → Instructions-46e49829.js} +99 -83
  17. package/{MultiLevelCheckboxSelect-be76fb10.js → MultiLevelCheckboxSelect-375c4785.js} +103 -165
  18. package/{MultiSelect-efd60232.js → MultiSelect-0bdad346.js} +78 -108
  19. package/{Popover-569cd272.js → Popover-f00121a3.js} +41 -40
  20. package/ProgressBar-7d31fd95.js +154 -0
  21. package/{Radio-32d0513a.js → Radio-758fd8f3.js} +21 -22
  22. package/{SectionSeparator-259a22ed.js → SectionSeparator-43e1647d.js} +6 -6
  23. package/{Switch-4a41585f.js → Switch-26547abb.js} +25 -27
  24. package/{Tab-f499ecbc.js → Tab-d3ee0a3b.js} +7 -7
  25. package/{Tabs-bfe19f77.js → Tabs-243c5e0b.js} +26 -46
  26. package/TextArea-b16e166b.js +364 -0
  27. package/{TextInput-0d109708.js → TextInput-70cb3df7.js} +55 -62
  28. package/{Tooltip-66daf6e3.js → Tooltip-7dc4676b.js} +13 -13
  29. package/{VerificationStatusIcon-d5bfb67a.js → VerificationStatusIcon-f3c44ef8.js} +20 -30
  30. package/arrow-forward-d7c77ae3.js +37 -0
  31. package/{close-ebf2f3cf.js → close-1751121a.js} +8 -12
  32. package/data/Alert/index.js +2 -2
  33. package/data/Badge/index.js +2 -2
  34. package/data/Popover/index.js +3 -3
  35. package/data/Tab/index.js +2 -2
  36. package/data/Tabs/index.js +3 -3
  37. package/data/Tooltip/index.js +3 -3
  38. package/data/index.js +9 -9
  39. package/{defaultTheme-ea44e34a.js → defaultTheme-24ea5c47.js} +213 -261
  40. package/edit-note-cefe2215.js +37 -0
  41. package/{expand-more-94585605.js → expand-more-d74e2bd2.js} +8 -12
  42. package/icons/arrow-forward.svg +3 -0
  43. package/icons/index.js +2 -0
  44. package/inputs/ActionButton/index.js +2 -2
  45. package/inputs/Button/index.js +6 -6
  46. package/inputs/Checkbox/index.js +2 -2
  47. package/inputs/CompactAutocompleteSelect/index.js +13 -13
  48. package/inputs/CompactStarRating/index.js +10 -10
  49. package/inputs/CompactTextInput/index.js +11 -11
  50. package/inputs/MultiSelect/index.js +4 -4
  51. package/inputs/Radio/index.js +2 -2
  52. package/inputs/Switch/index.js +2 -2
  53. package/inputs/TextArea/index.js +11 -11
  54. package/inputs/TextInput/index.js +3 -3
  55. package/inputs/index.js +28 -28
  56. package/layout/InputGroup/index.js +2 -2
  57. package/layout/SectionSeparator/index.js +2 -2
  58. package/layout/index.js +3 -3
  59. package/package.json +5 -3
  60. package/{react-select-creatable.esm-2f23d6c6.js → react-select-creatable.esm-09b1be95.js} +1421 -1287
  61. package/{shift-away-subtle-0bed9a3c.js → shift-away-subtle-dce50395.js} +1 -1
  62. package/ssr/index.js +1 -3
  63. package/styles/config.scss +3 -0
  64. package/widgets/AssetGallery/index.js +37 -32
  65. package/widgets/AssetPreview/AssetPreviewTopBar/index.js +3 -3
  66. package/widgets/ContextMenu/ContextMenuItem/index.js +2 -2
  67. package/widgets/ContextMenu/ContextMenuItemsGroup/index.js +6 -6
  68. package/widgets/ContextMenu/index.js +2 -2
  69. package/widgets/InfoCard/index.js +11 -0
  70. package/widgets/Instructions/index.js +16 -17
  71. package/widgets/ProgressBar/index.js +11 -0
  72. package/widgets/index.js +42 -35
  73. package/AssetPreviewTopBar-912c3469.js +0 -99
  74. package/CompactTextInput-c8bee455.js +0 -349
  75. package/TextArea-41089240.js +0 -375
  76. package/edit-note-c47d292e.js +0 -41
  77. package/warning-circle-24522402.js +0 -41
@@ -0,0 +1,364 @@
1
+ 'use strict';
2
+
3
+ var defaultTheme = require('./defaultTheme-24ea5c47.js');
4
+ var React = require('react');
5
+ var lodash = require('lodash');
6
+ var useMergedRefs = require('./useMergedRefs-b6d2f8fc.js');
7
+ var nanoid = require('nanoid');
8
+ require('./Alert-edd9f6a7.js');
9
+ require('./Badge-00b2f311.js');
10
+ require('./Popover-f00121a3.js');
11
+ require('./Tab-d3ee0a3b.js');
12
+ require('./Tabs-243c5e0b.js');
13
+ var Tooltip = require('./Tooltip-7dc4676b.js');
14
+ require('./VerificationStatusIcon-f3c44ef8.js');
15
+ var editNote = require('./edit-note-cefe2215.js');
16
+ var styled = require('styled-components');
17
+
18
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
19
+
20
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
21
+ var styled__default = /*#__PURE__*/_interopDefaultLegacy(styled);
22
+
23
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject0, _templateObject1, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15, _templateObject16, _templateObject17, _templateObject18, _templateObject19, _templateObject20, _templateObject21, _templateObject22, _templateObject23, _templateObject24, _templateObject25, _templateObject26, _templateObject27, _templateObject28, _templateObject29, _templateObject30, _templateObject31, _templateObject32, _templateObject33, _templateObject34, _templateObject35, _templateObject36, _templateObject37, _templateObject38, _templateObject39, _templateObject40, _templateObject41, _templateObject42, _templateObject43, _templateObject44, _templateObject45, _templateObject46;
24
+ var fadeInCheck = styled.keyframes(_templateObject || (_templateObject = defaultTheme._taggedTemplateLiteral(["\n from {\n opacity: 0\n }\n to {\n opacity: 1\n }\n"])));
25
+ var fadeOutCheck = styled.keyframes(_templateObject2 || (_templateObject2 = defaultTheme._taggedTemplateLiteral(["\n from {\n opacity: 1\n }\n to {\n opacity: 0\n }\n"])));
26
+ var activeLabel = styled.css(_templateObject3 || (_templateObject3 = 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"])));
27
+ var placeholderBaseStyle = styled.css(_templateObject4 || (_templateObject4 = defaultTheme._taggedTemplateLiteral(["\n ", "\n\n ", "\n"])), function (props) {
28
+ return props.theme.themeProp('color', props.theme.getColor('gray-300'), props.theme.getColor('gray-600'));
29
+ }, function (props) {
30
+ return props.theme.themeProp('opacity', 0.6, 0.5);
31
+ });
32
+ var warningPlaceholder = styled.css(_templateObject5 || (_templateObject5 = defaultTheme._taggedTemplateLiteral(["\n ", "\n"])), function (props) {
33
+ return props.type === 'warning' && props.theme.themeProp('color', props.theme.getColor('gray-200'), props.theme.getColor('gray-700'), 1);
34
+ });
35
+ var errorPlaceholder = styled.css(_templateObject6 || (_templateObject6 = defaultTheme._taggedTemplateLiteral(["\n ", "\n"])), function (props) {
36
+ return props.type === 'error' && props.theme.themeProp('color', props.theme.getColor('gray-200'), props.theme.getColor('gray-700'), 1);
37
+ });
38
+ var warningPlaceholderHover = styled.css(_templateObject7 || (_templateObject7 = defaultTheme._taggedTemplateLiteral(["\n ", "\n"])), function (props) {
39
+ return props.type === 'warning' && props.theme.themeProp('color', props.theme.getColor('gray-900'), props.theme.getColor('gray-900'), 1);
40
+ });
41
+ var errorPlaceholderHover = styled.css(_templateObject8 || (_templateObject8 = defaultTheme._taggedTemplateLiteral(["\n ", "\n"])), function (props) {
42
+ return props.type === 'error' && props.theme.themeProp('color', props.theme.getColor('red-600'), props.theme.getColor('red-600'), 1);
43
+ });
44
+ var TextAreaContainter = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject9 || (_templateObject9 = defaultTheme._taggedTemplateLiteral(["\n display: flex;\n"])));
45
+ var Label = styled__default["default"].label.attrs(defaultTheme.applyDefaultTheme)(_templateObject0 || (_templateObject0 = defaultTheme._taggedTemplateLiteral(["\n ", ";\n flex-basis: 33.33%;\n font-size: 0.875rem;\n line-height: 1rem;\n height: 19px;\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding-top: 13px;\n ", "\n"])), function (props) {
46
+ return props.theme.themeProp('color', props.theme.getColor('white'), props.theme.getColor('gray-700'));
47
+ }, function (props) {
48
+ return props.disabled && styled.css(_templateObject1 || (_templateObject1 = defaultTheme._taggedTemplateLiteral(["\n cursor: not-allowed;\n "])));
49
+ });
50
+ var InputIconContainer = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject10 || (_templateObject10 = 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\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) {
51
+ return props.theme.themeProp('background-color', props.theme.getColor('gray-900'), props.theme.getColor('gray-300'), '!important');
52
+ }, function (props) {
53
+ return props.disabled && styled.css(_templateObject11 || (_templateObject11 = defaultTheme._taggedTemplateLiteral(["\n display: none;\n "])));
54
+ });
55
+ var TextInputField = styled__default["default"].textarea.attrs(defaultTheme.applyDefaultTheme)(_templateObject12 || (_templateObject12 = defaultTheme._taggedTemplateLiteral(["\n width: 100%;\n font-family: inherit;\n font-size: 0.875rem;\n border-radius: 3px;\n padding: 5px 10px;\n resize: vertical;\n z-index: 0;\n box-sizing: border-box;\n appearance: none;\n border: 1px solid;\n transition: height 550ms ease-in-out, border-color 350ms, background 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 &&:hover:not(:focus) {\n ", "\n\n ", "\n\n ", "\n\n & + ", " {\n opacity: 1;\n ", "\n }\n }\n\n &::placeholder {\n ", "\n ", "\n ", "\n }\n\n &:hover::placeholder {\n ", "\n ", "\n }\n\n &:focus::placeholder {\n ", "\n ", "\n }\n\n &&:focus {\n outline: none;\n\n ", "\n }\n\n /* Non-hover, non-focus state for edit mode */\n &&:not(:hover):not(:focus) {\n ", "\n ", "\n\n ", "\n }\n"])), function (props) {
56
+ return props.borderRadius && styled.css(_templateObject13 || (_templateObject13 = defaultTheme._taggedTemplateLiteral(["\n border-radius: ", "px;\n "])), props.borderRadius);
57
+ }, function (props) {
58
+ if (props.type === 'error') {
59
+ return styled.css(_templateObject14 || (_templateObject14 = defaultTheme._taggedTemplateLiteral(["\n ", "\n ", "\n ", "\n "])), props.theme.themeProp('color', 'white', 'black'), props.theme.themeProp('background', '#7f1b1b', '#FBEAE6'), props.theme.themeProp('border-color', '#7f1b1b', '#FBEAE6'));
60
+ } else if (props.type === 'warning') {
61
+ return styled.css(_templateObject15 || (_templateObject15 = defaultTheme._taggedTemplateLiteral(["\n ", "\n ", "\n ", "\n "])), props.theme.themeProp('color', 'white', 'black'), props.theme.themeProp('background', '#634E01', '#FFFDE8'), props.theme.themeProp('border-color', '#634E01', '#FFFDE8'));
62
+ } else if (props.type === 'error-border') {
63
+ return styled.css(_templateObject16 || (_templateObject16 = defaultTheme._taggedTemplateLiteral(["\n ", "\n ", "\n ", "\n "])), props.theme.themeProp('color', props.theme.getColor('gray-100'), props.theme.getColor('gray-900')), props.theme.themeProp('background', props.theme.getColor('gray-900'), props.theme.getColor('white')), props.theme.themeProp('border-color', props.theme.getColor('red-200'), props.theme.getColor('red-500')));
64
+ } else if (props.type === 'warning-border') {
65
+ return styled.css(_templateObject17 || (_templateObject17 = defaultTheme._taggedTemplateLiteral(["\n ", "\n ", "\n ", "\n "])), props.theme.themeProp('color', props.theme.getColor('gray-100'), props.theme.getColor('gray-900')), props.theme.themeProp('background', props.theme.getColor('gray-900'), props.theme.getColor('white')), props.theme.themeProp('border-color', props.theme.getColor('red-200'), props.theme.getColor('orange-500')));
66
+ } else {
67
+ return styled.css(_templateObject18 || (_templateObject18 = defaultTheme._taggedTemplateLiteral(["\n ", "\n ", "\n ", "\n "])), props.theme.themeProp('color', props.theme.getColor('gray-100'), props.theme.getColor('gray-900')), props.theme.themeProp('background', props.theme.getColor('gray-900'), props.theme.getColor('white')), props.theme.themeProp('border-color', props.theme.getColor('gray-500'), props.theme.getColor('gray-400')));
68
+ }
69
+ }, function (props) {
70
+ return props.readOnly && styled.css(_templateObject19 || (_templateObject19 = defaultTheme._taggedTemplateLiteral(["\n cursor: default;\n border-color: transparent !important;\n padding: 12px 10px;\n "])));
71
+ }, function (props) {
72
+ return props.disabled && styled.css(_templateObject20 || (_templateObject20 = defaultTheme._taggedTemplateLiteral(["\n cursor: not-allowed;\n "])));
73
+ }, function (props) {
74
+ return props.noBorder && !props.type && styled.css(_templateObject21 || (_templateObject21 = defaultTheme._taggedTemplateLiteral(["\n ", "\n "])), function (props) {
75
+ return props.theme.themeProp('border-color', props.theme.getColor('gray-900'), props.theme.getColor('white'));
76
+ });
77
+ }, function (props) {
78
+ return props.noBorder && props.type === 'warning' && styled.css(_templateObject22 || (_templateObject22 = defaultTheme._taggedTemplateLiteral(["\n ", "\n "])), function (props) {
79
+ return props.theme.themeProp('border-color', '#634E01', '#FFFDE8');
80
+ });
81
+ }, function (props) {
82
+ return props.noBorder && props.type === 'error' && styled.css(_templateObject23 || (_templateObject23 = defaultTheme._taggedTemplateLiteral(["\n ", "\n "])), function (props) {
83
+ return props.theme.themeProp('border-color', '#7f1b1b', '#FBEAE6');
84
+ });
85
+ }, function (props) {
86
+ return props.padding === 'small' && styled.css(_templateObject24 || (_templateObject24 = defaultTheme._taggedTemplateLiteral(["\n padding: 5px 10px;\n "])));
87
+ }, function (props) {
88
+ return props.padding === 'medium' && styled.css(_templateObject25 || (_templateObject25 = defaultTheme._taggedTemplateLiteral(["\n padding: 13px 15px;\n "])));
89
+ }, function (props) {
90
+ return props.padding === 'large' && styled.css(_templateObject26 || (_templateObject26 = defaultTheme._taggedTemplateLiteral(["\n padding: 15px 55px;\n "])));
91
+ }, function (props) {
92
+ return props.hasIcon && styled.css(_templateObject27 || (_templateObject27 = defaultTheme._taggedTemplateLiteral(["\n padding-left: 55px;\n padding-right: 35px;\n padding-top: 13.5px;\n "])));
93
+ }, function (props) {
94
+ if (props.disabled) {
95
+ return '';
96
+ }
97
+ if (props.readOnly) {
98
+ if (props.type === 'error') {
99
+ return props.theme.themeProp('background', '#7f1b1b', '#FBEAE6');
100
+ } else if (props.type === 'warning') {
101
+ return props.theme.themeProp('background', '#634E01', '#FFFDE8');
102
+ }
103
+ return '';
104
+ }
105
+ if (props.type === 'error') {
106
+ return props.theme.themeProp('background', '#901d1d', '#F7D5D0');
107
+ } else if (props.type === 'warning') {
108
+ return props.theme.themeProp('background', '#806403', '#FFFEBF');
109
+ } else if (!props.disabled) {
110
+ return props.theme.themeProp('background', props.theme.getColor('gray-700'), props.theme.getColor('gray-100'));
111
+ }
112
+ return '';
113
+ }, function (props) {
114
+ return props.edit && props.theme.themeProp('border-color', props.theme.getColor('gray-700'), props.theme.getColor('gray-100'));
115
+ }, function (props) {
116
+ return props.noBorder && !props.readOnly && props.type !== 'warning' && props.type !== 'error' ? props.theme.themeProp('background', props.theme.getColor('gray-700'), props.theme.getColor('gray-100')) : '';
117
+ }, InputIconContainer, function (props) {
118
+ return props.type === 'success' && styled.css(_templateObject28 || (_templateObject28 = defaultTheme._taggedTemplateLiteral(["\n opacity: 0;\n "])));
119
+ }, placeholderBaseStyle, warningPlaceholder, errorPlaceholder, warningPlaceholderHover, errorPlaceholderHover, warningPlaceholderHover, errorPlaceholderHover, function (props) {
120
+ if (props.readOnly) {
121
+ if (props.type === 'error') {
122
+ return props.theme.themeProp('background', '#7f1b1b', '#FBEAE6');
123
+ } else if (props.type === 'warning') {
124
+ return props.theme.themeProp('background', '#634E01', '#FFFDE8');
125
+ }
126
+ return '';
127
+ }
128
+ if (props.type === 'error') {
129
+ return styled.css(_templateObject29 || (_templateObject29 = defaultTheme._taggedTemplateLiteral(["\n ", "\n ", "\n ", "\n "])), props.theme.themeProp('border-color', '#D83018', '#D83018'), props.theme.themeProp('background', 'white', 'white'), props.theme.themeProp('color', 'black', 'black'));
130
+ } else if (props.type === 'warning') {
131
+ return styled.css(_templateObject30 || (_templateObject30 = defaultTheme._taggedTemplateLiteral(["\n ", "\n ", "\n ", "\n "])), props.theme.themeProp('border-color', '#F4E21E', '#F4E21E'), props.theme.themeProp('background', 'white', 'white'), props.theme.themeProp('color', 'black', 'black'));
132
+ } else {
133
+ return styled.css(_templateObject31 || (_templateObject31 = defaultTheme._taggedTemplateLiteral(["\n ", "\n ", "\n "])), props.theme.themeProp('border-color', props.theme.getColor('gray-500'), props.theme.getColor('gray-600')), props.theme.themeProp('background', 'transparent', props.theme.getColor('white')));
134
+ }
135
+ }, function (props) {
136
+ return props.edit && props.theme.themeProp('background', 'rgba(39,39,42, 0.7)', 'rgba(244,244,245, 0.3)');
137
+ }, function (props) {
138
+ return props.edit && props.theme.themeProp('border-color', 'rgba(39,39,42, 0.7)', 'rgba(228,228,231, 0.3)');
139
+ }, function (props) {
140
+ return props.noBorder && props.edit && styled.css(_templateObject32 || (_templateObject32 = defaultTheme._taggedTemplateLiteral(["\n ", "\n "])), function (props) {
141
+ return props.theme.themeProp('border-color', '#27272A', 'rgba(244,244,245, 0.3)');
142
+ });
143
+ });
144
+ var TextInputLabel = styled__default["default"].label.attrs(defaultTheme.applyDefaultTheme)(_templateObject33 || (_templateObject33 = 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) {
145
+ return props.theme.themeProp('color', props.theme.getColor('white'), props.theme.getColor('gray-700'));
146
+ }, placeholderBaseStyle, function (props) {
147
+ 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%)"));
148
+ }, function (props) {
149
+ return !props.inputIsEmpty && styled.css(_templateObject34 || (_templateObject34 = defaultTheme._taggedTemplateLiteral(["\n ", "\n "])), activeLabel);
150
+ }, function (props) {
151
+ return props.hasPlaceholder && styled.css(_templateObject35 || (_templateObject35 = defaultTheme._taggedTemplateLiteral(["\n ", ";\n "])), activeLabel);
152
+ }, function (props) {
153
+ return props.hasIcon && styled.css(_templateObject36 || (_templateObject36 = defaultTheme._taggedTemplateLiteral(["\n left: 55px;\n "])));
154
+ });
155
+ var TextInputFieldIcon = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject37 || (_templateObject37 = 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"])));
156
+ var TextInputFieldIconAlert = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject38 || (_templateObject38 = 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: 12px;\n width: 15px;\n }\n"])), function (props) {
157
+ return props.type === 'warning' && props.theme.themeProp('color', '#EAB308', '#2F2402');
158
+ });
159
+ var TextInput = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject39 || (_templateObject39 = defaultTheme._taggedTemplateLiteral(["\n position: relative;\n flex-basis: ", ";\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"])), function (props) {
160
+ return props.$fieldLabel ? '66.66%' : '100%';
161
+ }, function (props) {
162
+ return props.readOnly && styled.css(_templateObject40 || (_templateObject40 = defaultTheme._taggedTemplateLiteral(["\n overflow: auto;\n "])));
163
+ }, function (props) {
164
+ return props.disabled && styled.css(_templateObject41 || (_templateObject41 = defaultTheme._taggedTemplateLiteral(["\n opacity: 0.5;\n\n > * {\n cursor: not-allowed;\n }\n "])));
165
+ }, TextInputLabel, activeLabel, TextInputFieldIcon, TextInputField, TextInputLabel, activeLabel, function (props) {
166
+ return props.type === 'error' && props.theme.themeProp('color', props.theme.getColor('red-200'), props.theme.getColor('red-500'));
167
+ });
168
+ var Description = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject42 || (_templateObject42 = 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) {
169
+ return props.theme.themeProp('color', props.theme.getColor('gray-400'), props.theme.getColor('gray-500'));
170
+ }, function (props) {
171
+ return (props.type === 'warning-border' || props.type === 'warning') && styled.css(_templateObject43 || (_templateObject43 = defaultTheme._taggedTemplateLiteral(["\n ", "\n "])), props.theme.themeProp('color', props.theme.getColor('red-200'), props.theme.getColor('orange-500')));
172
+ }, function (props) {
173
+ return (props.type === 'error-border' || props.type === 'error') && styled.css(_templateObject44 || (_templateObject44 = defaultTheme._taggedTemplateLiteral(["\n ", "\n "])), props.theme.themeProp('color', props.theme.getColor('red-200'), props.theme.getColor('red-500')));
174
+ });
175
+ var SuccessContainer = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject45 || (_templateObject45 = 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) {
176
+ return props.fadeIn ? 0 : 1;
177
+ }, function (props) {
178
+ return props.fadeIn ? fadeOutCheck : fadeInCheck;
179
+ }, function (props) {
180
+ return props.theme.themeProp('color', props.theme.getColor('gray-300'), props.theme.getColor('gray-500'));
181
+ });
182
+ var SuccessContainerLabel = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject46 || (_templateObject46 = 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 margin-right: 5px;\n margin-top: -7px;\n width: 15px;\n height: 15px;\n padding: 5px;\n ", "\n\n > svg {\n width: 13px;\n }\n"])), function (props) {
183
+ return props.fadeIn ? 0 : 1;
184
+ }, function (props) {
185
+ return props.fadeIn ? fadeOutCheck : fadeInCheck;
186
+ }, function (props) {
187
+ return props.theme.themeProp('color', props.theme.getColor('gray-300'), props.theme.getColor('gray-500'));
188
+ });
189
+
190
+ var _excluded = ["value", "defaultValue", "name", "label", "placeholder", "required", "disabled", "hidden", "readOnly", "edit", "autoComplete", "description", "type", "icon", "rows", "className", "style", "onChange", "onBlur", "noBorder", "instructionsTextArea", "loadingIcon", "successIcon", "padding", "descriptionToolTip", "borderRadius", "fieldLabel"];
191
+ var TextArea = React__default["default"].forwardRef(function TextArea(_ref, forwardedRef) {
192
+ var value = _ref.value,
193
+ defaultValue = _ref.defaultValue,
194
+ name = _ref.name,
195
+ label = _ref.label,
196
+ placeholder = _ref.placeholder,
197
+ required = _ref.required,
198
+ disabled = _ref.disabled,
199
+ hidden = _ref.hidden,
200
+ readOnly = _ref.readOnly,
201
+ edit = _ref.edit,
202
+ autoComplete = _ref.autoComplete,
203
+ description = _ref.description,
204
+ type = _ref.type,
205
+ icon = _ref.icon,
206
+ rows = _ref.rows,
207
+ className = _ref.className,
208
+ style = _ref.style,
209
+ _onChange = _ref.onChange,
210
+ onBlur = _ref.onBlur,
211
+ noBorder = _ref.noBorder,
212
+ instructionsTextArea = _ref.instructionsTextArea,
213
+ loadingIcon = _ref.loadingIcon,
214
+ successIcon = _ref.successIcon,
215
+ padding = _ref.padding,
216
+ descriptionToolTip = _ref.descriptionToolTip,
217
+ borderRadius = _ref.borderRadius,
218
+ fieldLabel = _ref.fieldLabel,
219
+ rest = defaultTheme._objectWithoutProperties(_ref, _excluded);
220
+ var textInputDomNode = React.useRef(null);
221
+ var textInputRef = useMergedRefs.useMergedRefs(forwardedRef, textInputDomNode);
222
+ var _useState = React.useState(!(value || defaultValue)),
223
+ _useState2 = defaultTheme._slicedToArray(_useState, 2),
224
+ inputIsEmpty = _useState2[0],
225
+ setInputIsEmpty = _useState2[1];
226
+ var _useState3 = React.useState(false),
227
+ _useState4 = defaultTheme._slicedToArray(_useState3, 2),
228
+ autoFocus = _useState4[0],
229
+ setAutoFocus = _useState4[1];
230
+ var _useState5 = React.useState(nanoid.nanoid()),
231
+ _useState6 = defaultTheme._slicedToArray(_useState5, 1),
232
+ uniqueId = _useState6[0];
233
+ var memoizedDescriptionToolTip = React.useMemo(function () {
234
+ return descriptionToolTip;
235
+ }, [descriptionToolTip]);
236
+ React.useEffect(function () {
237
+ setAutoFocus(false);
238
+ }, [value, defaultValue]);
239
+ var onKeyDown = React.useCallback(function (event) {
240
+ if (event.key === 'Enter') {
241
+ event.stopPropagation();
242
+ }
243
+ }, []);
244
+ var input = function input() {
245
+ return React__default["default"].createElement(TextAreaContainter, null, fieldLabel && React__default["default"].createElement(Label, {
246
+ htmlFor: uniqueId,
247
+ disabled: disabled
248
+ }, fieldLabel, React__default["default"].createElement(SuccessContainerLabel, null, type === 'loading' && loadingIcon, type === 'success' && successIcon)), React__default["default"].createElement(TextInput, {
249
+ $fieldLabel: !lodash.isEmpty(fieldLabel),
250
+ disabled: disabled,
251
+ readOnly: readOnly,
252
+ type: type,
253
+ className: className,
254
+ style: style
255
+ }, React__default["default"].createElement(TextInputFieldIconAlert, {
256
+ type: type
257
+ }, icon), React__default["default"].createElement(TextInputField, defaultTheme._extends({
258
+ autoFocus: autoFocus,
259
+ borderRadius: borderRadius,
260
+ ref: textInputRef,
261
+ rows: rows,
262
+ value: value,
263
+ defaultValue: defaultValue,
264
+ name: name,
265
+ placeholder: placeholder || ' ',
266
+ required: required,
267
+ readOnly: readOnly,
268
+ disabled: disabled,
269
+ edit: edit,
270
+ instructionsTextArea: instructionsTextArea,
271
+ type: type,
272
+ autoComplete: autoComplete,
273
+ hasIcon: Boolean(icon),
274
+ icon: icon,
275
+ id: "text-input-".concat(uniqueId),
276
+ key: uniqueId,
277
+ padding: padding,
278
+ onChange: function onChange(e) {
279
+ if (e.target.value) {
280
+ setInputIsEmpty(false);
281
+ if (!autoFocus) {
282
+ setAutoFocus(true);
283
+ }
284
+ } else {
285
+ setInputIsEmpty(true);
286
+ if (!autoFocus) {
287
+ setAutoFocus(true);
288
+ }
289
+ }
290
+ _onChange(e);
291
+ },
292
+ onKeyDown: onKeyDown,
293
+ onBlur: onBlur,
294
+ noBorder: noBorder
295
+ }, rest)), !fieldLabel && (type === 'loading' || type === 'success') && React__default["default"].createElement(SuccessContainer, null, type === 'loading' && loadingIcon, type === 'success' && successIcon), !readOnly && noBorder && React__default["default"].createElement(InputIconContainer, {
296
+ disabled: disabled
297
+ }, React__default["default"].createElement(editNote.SvgEditNote, {
298
+ className: padding === 'small' ? 'smallPadingIcon' : undefined
299
+ })), label && React__default["default"].createElement(TextInputLabel, {
300
+ htmlFor: "text-input-".concat(uniqueId),
301
+ hasPlaceholder: Boolean(placeholder),
302
+ hasIcon: Boolean(icon),
303
+ inputIsEmpty: inputIsEmpty
304
+ }, label, required && ' *'), typeof description === 'string' && description.length > 0 && React__default["default"].createElement(Description, {
305
+ type: type
306
+ }, description)));
307
+ };
308
+ if (hidden) return null;
309
+ 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, {
310
+ content: memoizedDescriptionToolTip,
311
+ key: "tooltipTextArea1",
312
+ placement: "bottom-end",
313
+ trigger: 'mouseenter',
314
+ zIndex: 999999
315
+ }, input())));
316
+ });
317
+ TextArea.defaultProps = {
318
+ rows: 4,
319
+ noBorder: false,
320
+ readOnly: false,
321
+ edit: false,
322
+ hidden: false,
323
+ type: '',
324
+ padding: 'medium',
325
+ instructionsTextArea: false,
326
+ descriptionToolTip: '',
327
+ isExpanded: function isExpanded() {},
328
+ onChange: function onChange() {},
329
+ borderRadius: 0
330
+ };
331
+ TextArea.propTypes = process.env.NODE_ENV !== "production" ? {
332
+ value: defaultTheme.PropTypes.string,
333
+ defaultValue: defaultTheme.PropTypes.string,
334
+ name: defaultTheme.PropTypes.string,
335
+ label: defaultTheme.PropTypes.string,
336
+ fieldLabel: defaultTheme.PropTypes.string,
337
+ placeholder: defaultTheme.PropTypes.string,
338
+ required: defaultTheme.PropTypes.bool,
339
+ disabled: defaultTheme.PropTypes.bool,
340
+ hidden: defaultTheme.PropTypes.bool,
341
+ readOnly: defaultTheme.PropTypes.bool,
342
+ edit: defaultTheme.PropTypes.bool,
343
+ autoComplete: defaultTheme.PropTypes.string,
344
+ description: defaultTheme.PropTypes.string,
345
+ error: defaultTheme.PropTypes.oneOfType([defaultTheme.PropTypes.bool, defaultTheme.PropTypes.string]),
346
+ warning: defaultTheme.PropTypes.oneOfType([defaultTheme.PropTypes.bool, defaultTheme.PropTypes.string]),
347
+ icon: defaultTheme.PropTypes.element,
348
+ rows: defaultTheme.PropTypes.oneOfType([defaultTheme.PropTypes.number, defaultTheme.PropTypes.string]),
349
+ className: defaultTheme.PropTypes.string,
350
+ style: defaultTheme.PropTypes.object,
351
+ padding: defaultTheme.PropTypes.oneOf(['small', 'medium', 'large']),
352
+ onChange: defaultTheme.PropTypes.func,
353
+ onBlur: defaultTheme.PropTypes.func,
354
+ noBorder: defaultTheme.PropTypes.bool,
355
+ isExpanded: defaultTheme.PropTypes.func,
356
+ type: defaultTheme.PropTypes.oneOf(['', 'error', 'error-border', 'warning-border', 'warning', 'loading', 'success']),
357
+ instructionsTextArea: defaultTheme.PropTypes.bool,
358
+ loadingIcon: defaultTheme.PropTypes.element,
359
+ successIcon: defaultTheme.PropTypes.element,
360
+ descriptionToolTip: defaultTheme.PropTypes.string,
361
+ borderRadius: defaultTheme.PropTypes.number
362
+ } : {};
363
+
364
+ exports.TextArea = TextArea;