@ntbjs/react-components 2.0.0-rc.26 → 2.0.0-rc.27

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 (82) hide show
  1. package/build/{ActionButton-03dc5f67.js → ActionButton-4db754c3.js} +17 -24
  2. package/build/{Alert-8a511bdc.js → Alert-e6847a22.js} +29 -36
  3. package/build/{Badge-aa4cd9c1.js → Badge-d93586a9.js} +35 -42
  4. package/build/{Button-2e26f5da.js → Button-179a2fe4.js} +83 -90
  5. package/build/{Checkbox-0b8faf49.js → Checkbox-4a5fd716.js} +45 -52
  6. package/build/{CompactAutocompleteSelect-797778cb.js → CompactAutocompleteSelect-52c49513.js} +116 -125
  7. package/build/{CompactStarRating-da21b53f.js → CompactStarRating-9af2f427.js} +76 -101
  8. package/build/{CompactTextInput-d56aec71.js → CompactTextInput-42ca5d42.js} +104 -129
  9. package/build/InputGroup-1294d190.js +23 -0
  10. package/build/{MultiLevelCheckboxSelect-d229cf98.js → MultiLevelCheckboxSelect-d8044c88.js} +139 -167
  11. package/build/{MultiSelect-d7920eb1.js → MultiSelect-9f497e62.js} +81 -90
  12. package/build/{Popover-c4be47ea.js → Popover-20050b91.js} +35 -44
  13. package/build/{Radio-150fb2c9.js → Radio-73ca3ae2.js} +28 -35
  14. package/build/SectionSeparator-f47760a2.js +31 -0
  15. package/build/{Switch-d2d6e9ec.js → Switch-ecf3122b.js} +35 -42
  16. package/build/Tab-04d435c3.js +32 -0
  17. package/build/{Tabs-b06c0e24.js → Tabs-74d1ea8a.js} +37 -44
  18. package/build/{TextArea-26d3c8a1.js → TextArea-1e5b9201.js} +105 -113
  19. package/build/{TextInput-3a567daa.js → TextInput-fab35842.js} +78 -86
  20. package/build/Tooltip-c1d1199e.js +65 -0
  21. package/build/{VerificationStatusIcon-9876b68f.js → VerificationStatusIcon-49cb1c1b.js} +19 -44
  22. package/build/{_rollupPluginBabelHelpers-4b342fad.js → _rollupPluginBabelHelpers-c245b26a.js} +1 -3
  23. package/build/arrow-forward-ad12c5f3.js +15 -0
  24. package/build/close-a5d37608.js +15 -0
  25. package/build/data/Alert/index.js +6 -12
  26. package/build/data/Badge/index.js +5 -11
  27. package/build/data/Popover/index.js +10 -16
  28. package/build/data/Tab/index.js +5 -11
  29. package/build/data/Tabs/index.js +7 -13
  30. package/build/data/Tooltip/index.js +7 -13
  31. package/build/data/index.js +16 -30
  32. package/build/{defaultTheme-d9a7342e.js → defaultTheme-1bcc2541.js} +3 -7
  33. package/build/edit-note-283a0e15.js +15 -0
  34. package/build/expand-more-c5523c46.js +15 -0
  35. package/build/inputs/ActionButton/index.js +6 -12
  36. package/build/inputs/Button/index.js +13 -19
  37. package/build/inputs/Checkbox/index.js +6 -12
  38. package/build/inputs/CompactAutocompleteSelect/index.js +23 -29
  39. package/build/inputs/CompactStarRating/index.js +17 -23
  40. package/build/inputs/CompactTextInput/index.js +19 -25
  41. package/build/inputs/MultiLevelCheckboxSelect/MultiLevelCheckboxSelect.js +26 -0
  42. package/build/inputs/MultiSelect/index.js +10 -16
  43. package/build/inputs/Radio/index.js +7 -13
  44. package/build/inputs/Switch/index.js +6 -12
  45. package/build/inputs/TextArea/index.js +20 -26
  46. package/build/inputs/TextInput/index.js +9 -15
  47. package/build/inputs/index.js +40 -60
  48. package/build/layout/InputGroup/index.js +5 -11
  49. package/build/layout/SectionSeparator/index.js +5 -11
  50. package/build/layout/index.js +6 -15
  51. package/build/{shift-away-subtle-158617af.js → shift-away-subtle-0dd94a03.js} +3 -5
  52. package/build/ssr/index.js +1 -12
  53. package/build/warning-circle-24f3efcd.js +15 -0
  54. package/build/{AssetAction-d081e4b7.js → widgets/AssetGallery/AssetGallery.js} +601 -622
  55. package/build/widgets/AssetPreview/AssetPreviewTopBar/AssetPreviewTopBar.js +127 -0
  56. package/build/widgets/ContextMenu/ContextMenu.js +26 -0
  57. package/build/{ContextMenuItem-3967010d.js → widgets/ContextMenu/ContextMenuItem/ContextMenuItem.js} +23 -48
  58. package/build/widgets/ContextMenu/ContextMenuItemsGroup/ContextMenuItemsGroup.js +37 -0
  59. package/build/{InfoCard-d0fdf377.js → widgets/InfoCard/InfoCard.js} +27 -34
  60. package/build/widgets/Instructions/Instructions.js +255 -0
  61. package/build/{ProgressBar-2d26c1fb.js → widgets/ProgressBar/ProgressBar.js} +39 -46
  62. package/package.json +1 -1
  63. package/build/AssetPreviewTopBar-623cfa18.js +0 -152
  64. package/build/ContextMenu-82f9d728.js +0 -33
  65. package/build/InputGroup-8d4a4644.js +0 -30
  66. package/build/Instructions-af191987.js +0 -274
  67. package/build/SectionSeparator-e06c7660.js +0 -38
  68. package/build/Tab-ccbca1f2.js +0 -39
  69. package/build/Tooltip-d5882b82.js +0 -73
  70. package/build/arrow-forward-d7c77ae3.js +0 -37
  71. package/build/close-1751121a.js +0 -37
  72. package/build/edit-note-cefe2215.js +0 -37
  73. package/build/expand-more-d74e2bd2.js +0 -37
  74. package/build/widgets/AssetGallery/index.js +0 -55
  75. package/build/widgets/AssetPreview/AssetPreviewTopBar/index.js +0 -12
  76. package/build/widgets/ContextMenu/ContextMenuItem/index.js +0 -11
  77. package/build/widgets/ContextMenu/ContextMenuItemsGroup/index.js +0 -44
  78. package/build/widgets/ContextMenu/index.js +0 -11
  79. package/build/widgets/InfoCard/index.js +0 -12
  80. package/build/widgets/Instructions/index.js +0 -33
  81. package/build/widgets/ProgressBar/index.js +0 -12
  82. package/build/widgets/index.js +0 -65
@@ -0,0 +1,255 @@
1
+ import { _ as _extends } from '../../_rollupPluginBabelHelpers-c245b26a.js';
2
+ import { isFunction } from 'lodash';
3
+ import { a as applyDefaultTheme, P as PropTypes } from '../../defaultTheme-1bcc2541.js';
4
+ import React__default, { useState, useEffect, useCallback } from 'react';
5
+ import { S as SvgWarningCircle } from '../../warning-circle-24f3efcd.js';
6
+ import { C as CompactAutocompleteSelect } from '../../CompactAutocompleteSelect-52c49513.js';
7
+ import { T as TextArea } from '../../TextArea-1e5b9201.js';
8
+ import styled from 'styled-components';
9
+ import 'nanoid';
10
+ import '../../Alert-e6847a22.js';
11
+ import '../../Badge-d93586a9.js';
12
+ import '../../Popover-20050b91.js';
13
+ import 'polished';
14
+ import '@tippyjs/react';
15
+ import '../../shift-away-subtle-0dd94a03.js';
16
+ import 'popper-max-size-modifier';
17
+ import '../../Tab-04d435c3.js';
18
+ import '../../Tabs-74d1ea8a.js';
19
+ import '../../Tooltip-c1d1199e.js';
20
+ import '../../VerificationStatusIcon-49cb1c1b.js';
21
+ import 'react-select';
22
+ import 'react-select-async-paginate';
23
+ import 'react-select/creatable';
24
+ import '../../close-a5d37608.js';
25
+ import '../../expand-more-c5523c46.js';
26
+ import '@restart/hooks/useMergedRefs';
27
+ import '../../edit-note-283a0e15.js';
28
+
29
+ const Instructions$1 = styled.div.attrs(applyDefaultTheme)`
30
+ display: flex;
31
+ position: relative;
32
+ flex-direction: column;
33
+ ${props => props.theme.themeProp('background', '#634E01', props.theme.getColor('signal-yellow-400'))};
34
+ `;
35
+ const TopBarContainer = styled.div.attrs(applyDefaultTheme)`
36
+ position: absolute;
37
+ display: flex;
38
+ width: 100%;
39
+ margin-top: 0;
40
+ transition: margin-top 120ms;
41
+ &&.slide-in {
42
+ margin-top: -24px;
43
+ }
44
+ ${props => props.theme.themeProp('background', '#634E01', props.theme.getColor('signal-yellow-400'))};
45
+
46
+ ${props => props.initialHover && props.theme.themeProp('background', '#634E01', props.theme.getColor('signal-yellow-400'))};
47
+ `;
48
+ const SelectContainer = styled.div.attrs(applyDefaultTheme)`
49
+ width: 100%;
50
+ margin: 0 2px;
51
+ `;
52
+ const InstructionsArea = styled.div.attrs(applyDefaultTheme)`
53
+ margin: 2px 2px -2px 2px;
54
+ `;
55
+
56
+ const Instructions = React__default.forwardRef(function Instructions({
57
+ clickToAdd,
58
+ customAddMessage,
59
+ selectedOption,
60
+ loadOptions,
61
+ readOnly,
62
+ disabled,
63
+ hidden,
64
+ name,
65
+ lightBackground,
66
+ autoSelect,
67
+ subscribeCurrentValue: subscribeCurrentValueProp,
68
+ onChange: onChangeProp,
69
+ onFocus: onFocusProp,
70
+ onBlur: onBlurProp,
71
+ onUpdateCallback,
72
+ availableOptions,
73
+ loadingMessageFunc,
74
+ placeholder,
75
+ type,
76
+ selectType,
77
+ edit,
78
+ rows,
79
+ showMore,
80
+ showMoreText,
81
+ showLessText,
82
+ isExpanded,
83
+ loadingIcon,
84
+ successIcon,
85
+ padding,
86
+ ...props
87
+ }, forwardedRef) {
88
+ const [isHovered, setIsHovered] = useState(false);
89
+ const [selected, setSelected] = useState({});
90
+ const [addInstructions, setAddInstructions] = useState(clickToAdd);
91
+ const [customMessage, setCustomMessage] = useState(customAddMessage);
92
+ const [background, setBackground] = useState(lightBackground);
93
+ const [initialHover, setInitialHover] = useState(true);
94
+ const [currentValue, setCurrentValue] = useState();
95
+ useEffect(() => {
96
+ if (isFunction(subscribeCurrentValueProp)) {
97
+ subscribeCurrentValueProp(currentValue);
98
+ }
99
+ }, [currentValue]);
100
+ useEffect(() => {
101
+ handleChange(selected);
102
+ }, [selected]);
103
+ useEffect(() => {
104
+ if (selectedOption) {
105
+ setCurrentValue(selectedOption.value);
106
+ }
107
+ }, [selectedOption]);
108
+ useEffect(() => {
109
+ if (addInstructions) {
110
+ setCurrentValue(customMessage);
111
+ setInitialHover(true);
112
+ }
113
+ }, [addInstructions, handleOnFocus]);
114
+ const onChange = useCallback(event => {
115
+ setCurrentValue(event.target.value);
116
+ if (isFunction(onChangeProp)) {
117
+ onChangeProp(event);
118
+ }
119
+ }, [onChangeProp]);
120
+ const onFocus = useCallback(event => {
121
+ if (autoSelect) {
122
+ event.target.select();
123
+ }
124
+ if (isFunction(onFocusProp)) {
125
+ onFocusProp(event);
126
+ }
127
+ if (event.target.value === customMessage) {
128
+ setCurrentValue('');
129
+ }
130
+ }, [autoSelect, readOnly, onFocusProp]);
131
+ const onBlur = useCallback(event => {
132
+ if (isFunction(onBlurProp)) {
133
+ onBlurProp(event);
134
+ }
135
+ }, [onBlurProp]);
136
+ const handleMouseOver = () => {
137
+ setIsHovered(true);
138
+ };
139
+ const handleMouseLeave = () => {
140
+ setIsHovered(false);
141
+ };
142
+ const handleOnFocus = () => {
143
+ if (customMessage === currentValue) {
144
+ setCurrentValue('');
145
+ }
146
+ };
147
+ const handleChange = selected => {
148
+ if (selected === null) {
149
+ setSelected({});
150
+ setAddInstructions(true);
151
+ setBackground(true);
152
+ setInitialHover(true);
153
+ setCustomMessage(customAddMessage);
154
+ } else {
155
+ setSelected(selected);
156
+ setCurrentValue(selected.value);
157
+ setAddInstructions(false);
158
+ setBackground(false);
159
+ setInitialHover(false);
160
+ onUpdateCallback(selected);
161
+ }
162
+ };
163
+ const sharedSelectProps = {
164
+ options: loadOptions ? undefined : availableOptions,
165
+ loadOptions: loadOptions,
166
+ loadingMessage: loadingMessageFunc,
167
+ placeholder: placeholder
168
+ };
169
+ if (hidden) return null;
170
+ return React__default.createElement(Instructions$1, _extends({
171
+ ref: forwardedRef,
172
+ initialHover: initialHover,
173
+ onMouseDown: handleMouseOver,
174
+ onMouseLeave: handleMouseLeave
175
+ }, props), !readOnly && !disabled && React__default.createElement(TopBarContainer, {
176
+ initialHover: initialHover,
177
+ className: isHovered && !readOnly && !disabled && 'slide-in'
178
+ }, React__default.createElement(SelectContainer, null, React__default.createElement(CompactAutocompleteSelect, _extends({
179
+ type: selectType,
180
+ value: selectedOption,
181
+ creatable: false,
182
+ onChange: handleChange
183
+ }, sharedSelectProps)))), React__default.createElement(InstructionsArea, {
184
+ type: type
185
+ }, React__default.createElement(TextArea, {
186
+ noBorder: true,
187
+ instructionsTextArea: true,
188
+ type: type,
189
+ lightBackground: background,
190
+ readOnly: readOnly,
191
+ disabled: disabled,
192
+ name: name,
193
+ isExpanded: isExpanded,
194
+ edit: edit,
195
+ value: currentValue === null ? '' : currentValue,
196
+ onFocus: onFocus,
197
+ onChange: onChange,
198
+ onBlur: onBlur,
199
+ rows: rows,
200
+ showMore: showMore,
201
+ showMoreText: showMoreText,
202
+ showLessText: showLessText,
203
+ icon: React__default.createElement(SvgWarningCircle, null),
204
+ loadingIcon: loadingIcon,
205
+ successIcon: successIcon,
206
+ padding: padding
207
+ })));
208
+ });
209
+ Instructions.defaultProps = {
210
+ clickToAdd: false,
211
+ lightBackground: false,
212
+ autoSelect: true,
213
+ hidden: false,
214
+ edit: false,
215
+ disabled: false,
216
+ readOnly: false,
217
+ type: '',
218
+ selectType: '',
219
+ padding: 'medium',
220
+ onUpdateCallback: () => {}
221
+ };
222
+ Instructions.propTypes = process.env.NODE_ENV !== "production" ? {
223
+ name: PropTypes.string,
224
+ placeholder: PropTypes.string,
225
+ rows: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
226
+ selectedOption: PropTypes.any,
227
+ loadOptions: PropTypes.func,
228
+ loadingMessageFunc: PropTypes.func,
229
+ clickToAdd: PropTypes.bool,
230
+ customAddMessage: PropTypes.string,
231
+ autoSelect: PropTypes.bool,
232
+ readOnly: PropTypes.bool,
233
+ disabled: PropTypes.bool,
234
+ hidden: PropTypes.bool,
235
+ showMore: PropTypes.bool,
236
+ showMoreText: PropTypes.string,
237
+ showLessText: PropTypes.string,
238
+ availableOptions: PropTypes.arrayOf(PropTypes.object),
239
+ lightBackground: PropTypes.bool,
240
+ edit: PropTypes.bool,
241
+ options: PropTypes.array,
242
+ subscribeCurrentValue: PropTypes.func,
243
+ onChange: PropTypes.func,
244
+ onFocus: PropTypes.func,
245
+ onBlur: PropTypes.func,
246
+ onUpdateCallback: PropTypes.func,
247
+ type: PropTypes.oneOf(['', 'error', 'error-border', 'warning', 'instructions-warning', 'loading', 'success']),
248
+ selectType: PropTypes.oneOf(['', 'error', 'warning', 'instructions-warning', 'loading', 'success']),
249
+ isExpanded: PropTypes.func,
250
+ loadingIcon: PropTypes.element,
251
+ successIcon: PropTypes.element,
252
+ padding: PropTypes.oneOf(['', 'small', 'medium', 'large'])
253
+ } : {};
254
+
255
+ export { Instructions as default };
@@ -1,15 +1,8 @@
1
- 'use strict';
2
-
3
- var _rollupPluginBabelHelpers = require('./_rollupPluginBabelHelpers-4b342fad.js');
4
- var React = require('react');
5
- var defaultTheme = require('./defaultTheme-d9a7342e.js');
6
- var styled = require('styled-components');
7
- var arrowForward = require('./arrow-forward-d7c77ae3.js');
8
-
9
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
10
-
11
- var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
12
- var styled__default = /*#__PURE__*/_interopDefaultLegacy(styled);
1
+ import { _ as _extends } from '../../_rollupPluginBabelHelpers-c245b26a.js';
2
+ import React__default, { useState } from 'react';
3
+ import { a as applyDefaultTheme, P as PropTypes } from '../../defaultTheme-1bcc2541.js';
4
+ import styled from 'styled-components';
5
+ import { S as SvgArrowForward } from '../../arrow-forward-ad12c5f3.js';
13
6
 
14
7
  const getBackgroundColor = props => {
15
8
  if (props.barColor) {
@@ -25,21 +18,21 @@ const getBackgroundColor = props => {
25
18
  const [darkColor, lightColor] = colorMap[props.type] || colorMap.default;
26
19
  return props.theme.themeProp('background', props.theme.getColor(darkColor), props.theme.getColor(lightColor));
27
20
  };
28
- styled__default["default"].p.attrs(defaultTheme.applyDefaultTheme)`
21
+ styled.p.attrs(applyDefaultTheme)`
29
22
  font-family: ${props => props.theme.primaryFontFamily};
30
23
  font-size: 1rem;
31
24
  font-weight: 500;
32
25
  `;
33
- const Container = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)`
26
+ const Container = styled.div.attrs(applyDefaultTheme)`
34
27
  width: 100%;
35
28
  height: ${props => props.height ? `${props.height}px` : '50px'};
36
29
  font-family: ${props => props.theme.primaryFontFamily};
37
30
  `;
38
- const InnerContainer = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)`
31
+ const InnerContainer = styled.div.attrs(applyDefaultTheme)`
39
32
  display: flex;
40
33
  height: 100%;
41
34
  `;
42
- const MetricsContainer = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)`
35
+ const MetricsContainer = styled.div.attrs(applyDefaultTheme)`
43
36
  display: flex;
44
37
  flex-direction: column;
45
38
  justify-content: center;
@@ -49,17 +42,17 @@ const MetricsContainer = styled__default["default"].div.attrs(defaultTheme.apply
49
42
  flex-direction: row;
50
43
  justify-content: flex-start;
51
44
  `;
52
- const Label = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)`
45
+ const Label = styled.div.attrs(applyDefaultTheme)`
53
46
  font-size: 0.875rem;
54
47
  padding-bottom: 5px;
55
48
  ${props => props.theme.themeProp('color', props.theme.getColor('gray-100'), props.theme.getColor('gray-700'))}
56
49
  `;
57
- styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)`
50
+ styled.div.attrs(applyDefaultTheme)`
58
51
  font-size: 0.875rem;
59
52
  font-weight: 500;
60
53
  ${props => props.theme.themeProp('color', props.theme.getColor('gray-100'), props.theme.getColor('gray-700'))}
61
54
  `;
62
- const ProgressBarTrack = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)`
55
+ const ProgressBarTrack = styled.div.attrs(applyDefaultTheme)`
63
56
  width: 100%;
64
57
  display: flex;
65
58
  flex-direction: row;
@@ -70,7 +63,7 @@ const ProgressBarTrack = styled__default["default"].div.attrs(defaultTheme.apply
70
63
  height: 100%;
71
64
  ${props => props.theme.themeProp('background', props.theme.getColor('gray-800'), props.theme.getColor('gray-50'))}
72
65
  `;
73
- const Completed = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)`
66
+ const Completed = styled.div.attrs(applyDefaultTheme)`
74
67
  font-size: 1.2rem;
75
68
  font-weight: 400;
76
69
  height: 100%;
@@ -80,7 +73,7 @@ const Completed = styled__default["default"].div.attrs(defaultTheme.applyDefault
80
73
  width: 96px;
81
74
  ${props => props.theme.themeProp('color', props.theme.getColor('gray-100'), props.theme.getColor('gray-800'))};
82
75
  `;
83
- const PercentageIndicator = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)`
76
+ const PercentageIndicator = styled.div.attrs(applyDefaultTheme)`
84
77
  position: absolute;
85
78
  right: 10px;
86
79
  font-weight: 400;
@@ -89,7 +82,7 @@ const PercentageIndicator = styled__default["default"].div.attrs(defaultTheme.ap
89
82
  opacity: 0.8;
90
83
  ${props => props.theme.themeProp('color', props.theme.getColor('gray-300'), props.theme.getColor('gray-500'))};
91
84
  `;
92
- const ExternalPercentageIndicator = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)`
85
+ const ExternalPercentageIndicator = styled.div.attrs(applyDefaultTheme)`
93
86
  margin-left: 8px;
94
87
  font-size: 1.2rem;
95
88
  font-weight: 400;
@@ -99,7 +92,7 @@ const ExternalPercentageIndicator = styled__default["default"].div.attrs(default
99
92
  display: flex;
100
93
  align-items: center;
101
94
  `;
102
- const ProgressBarFill = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)`
95
+ const ProgressBarFill = styled.div.attrs(applyDefaultTheme)`
103
96
  height: 100%;
104
97
  border-radius: 0 3px 3px 0;
105
98
  width: ${props => props.percentage}%;
@@ -110,7 +103,7 @@ const ProgressBarFill = styled__default["default"].div.attrs(defaultTheme.applyD
110
103
  ${props => getBackgroundColor(props)}
111
104
  transition: width 0.3s ease;
112
105
  `;
113
- const Link = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)`
106
+ const Link = styled.div.attrs(applyDefaultTheme)`
114
107
  font-size: 0.875rem;
115
108
  font-weight: 400;
116
109
  width: 15%;
@@ -129,7 +122,7 @@ const Link = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme
129
122
  transform: translateX(2px);
130
123
  }
131
124
  `;
132
- const ButtonLink = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)`
125
+ const ButtonLink = styled.div.attrs(applyDefaultTheme)`
133
126
  font-size: 0.875rem;
134
127
  font-weight: 500;
135
128
  height: 100%;
@@ -139,7 +132,7 @@ const ButtonLink = styled__default["default"].div.attrs(defaultTheme.applyDefaul
139
132
  transition: color 0.2s ease-in-out;
140
133
  ${props => props.$isHovered ? props.theme.themeProp('color', props.theme.getColor('white'), props.theme.getColor('black')) : props.theme.themeProp('color', props.theme.getColor('gray-100'), props.theme.getColor('gray-900'))};
141
134
  `;
142
- const StyledArrowIcon = styled__default["default"](arrowForward.SvgArrowForward).attrs(defaultTheme.applyDefaultTheme)`
135
+ const StyledArrowIcon = styled(SvgArrowForward).attrs(applyDefaultTheme)`
143
136
  height: 15px;
144
137
  margin-right: 10px;
145
138
  opacity: ${props => props.$isHovered ? 1 : 0.8};
@@ -161,7 +154,7 @@ const ProgressBar = ({
161
154
  onClick,
162
155
  ...props
163
156
  }) => {
164
- const [isLinkHovered, setIsLinkHovered] = React.useState(false);
157
+ const [isLinkHovered, setIsLinkHovered] = useState(false);
165
158
  const safeCompletedAssets = Math.max(0, completedAssets);
166
159
  const safeTotalAssets = Math.max(1, totalAssets);
167
160
  const percentage = safeCompletedAssets / safeTotalAssets * 100;
@@ -178,40 +171,40 @@ const ProgressBar = ({
178
171
  return shortNum.toFixed(shortNum < 10 ? 1 : 0) + units[unit];
179
172
  }
180
173
  };
181
- return React__default["default"].createElement(Container, _rollupPluginBabelHelpers._extends({
174
+ return React__default.createElement(Container, _extends({
182
175
  height: height
183
- }, props), React__default["default"].createElement(Label, null, label), React__default["default"].createElement(InnerContainer, {
176
+ }, props), React__default.createElement(Label, null, label), React__default.createElement(InnerContainer, {
184
177
  type: type
185
- }, React__default["default"].createElement(Completed, {
178
+ }, React__default.createElement(Completed, {
186
179
  type: type
187
- }, formatNumberNew(completedAssets)), React__default["default"].createElement(ProgressBarTrack, null, React__default["default"].createElement(MetricsContainer, {
180
+ }, formatNumberNew(completedAssets)), React__default.createElement(ProgressBarTrack, null, React__default.createElement(MetricsContainer, {
188
181
  hasLink: Boolean(linkText)
189
- }, React__default["default"].createElement(ProgressBarFill, {
182
+ }, React__default.createElement(ProgressBarFill, {
190
183
  type: type,
191
184
  percentage: percentage,
192
185
  barColor: barColor
193
- }, !isLowPercentage && React__default["default"].createElement(PercentageIndicator, {
186
+ }, !isLowPercentage && React__default.createElement(PercentageIndicator, {
194
187
  hasLink: Boolean(linkText)
195
- }, percentageText || formattedPercentage)), isLowPercentage && React__default["default"].createElement(ExternalPercentageIndicator, null, percentageText || formattedPercentage)), linkText && React__default["default"].createElement(Link, {
188
+ }, percentageText || formattedPercentage)), isLowPercentage && React__default.createElement(ExternalPercentageIndicator, null, percentageText || formattedPercentage)), linkText && React__default.createElement(Link, {
196
189
  onClick: handleLinkClick,
197
190
  onMouseEnter: () => setIsLinkHovered(true),
198
191
  onMouseLeave: () => setIsLinkHovered(false)
199
- }, React__default["default"].createElement(ButtonLink, {
192
+ }, React__default.createElement(ButtonLink, {
200
193
  $isHovered: isLinkHovered
201
- }, linkText), React__default["default"].createElement(StyledArrowIcon, {
194
+ }, linkText), React__default.createElement(StyledArrowIcon, {
202
195
  $isHovered: isLinkHovered
203
196
  })))));
204
197
  };
205
198
  ProgressBar.propTypes = process.env.NODE_ENV !== "production" ? {
206
- totalAssets: defaultTheme.PropTypes.number.isRequired,
207
- completedAssets: defaultTheme.PropTypes.number.isRequired,
208
- percentageText: defaultTheme.PropTypes.string,
209
- barColor: defaultTheme.PropTypes.string,
210
- height: defaultTheme.PropTypes.number,
211
- label: defaultTheme.PropTypes.string,
212
- type: defaultTheme.PropTypes.string,
213
- linkText: defaultTheme.PropTypes.string,
214
- onClick: defaultTheme.PropTypes.func
199
+ totalAssets: PropTypes.number.isRequired,
200
+ completedAssets: PropTypes.number.isRequired,
201
+ percentageText: PropTypes.string,
202
+ barColor: PropTypes.string,
203
+ height: PropTypes.number,
204
+ label: PropTypes.string,
205
+ type: PropTypes.string,
206
+ linkText: PropTypes.string,
207
+ onClick: PropTypes.func
215
208
  } : {};
216
209
 
217
- exports.ProgressBar = ProgressBar;
210
+ export { ProgressBar as default };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ntbjs/react-components",
3
- "version": "2.0.0-rc.26",
3
+ "version": "2.0.0-rc.27",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -1,152 +0,0 @@
1
- 'use strict';
2
-
3
- var _rollupPluginBabelHelpers = require('./_rollupPluginBabelHelpers-4b342fad.js');
4
- var React = require('react');
5
- var defaultTheme = require('./defaultTheme-d9a7342e.js');
6
- var styled = require('styled-components');
7
- var close = require('./close-1751121a.js');
8
-
9
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
10
-
11
- function _interopNamespace(e) {
12
- if (e && e.__esModule) return e;
13
- var n = Object.create(null);
14
- if (e) {
15
- Object.keys(e).forEach(function (k) {
16
- if (k !== 'default') {
17
- var d = Object.getOwnPropertyDescriptor(e, k);
18
- Object.defineProperty(n, k, d.get ? d : {
19
- enumerable: true,
20
- get: function () { return e[k]; }
21
- });
22
- }
23
- });
24
- }
25
- n["default"] = e;
26
- return Object.freeze(n);
27
- }
28
-
29
- var React__namespace = /*#__PURE__*/_interopNamespace(React);
30
- var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
31
- var styled__default = /*#__PURE__*/_interopDefaultLegacy(styled);
32
-
33
- var _path;
34
- function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
35
- function SvgArrowBack(props) {
36
- return /*#__PURE__*/React__namespace.createElement("svg", _extends({
37
- xmlns: "http://www.w3.org/2000/svg",
38
- viewBox: "0 0 32 32"
39
- }, props), _path || (_path = /*#__PURE__*/React__namespace.createElement("path", {
40
- fill: "currentColor",
41
- d: "M16 32L0 16 16 0l2.1 2.1L5.7 14.5H32v3H5.7l12.4 12.4L16 32z"
42
- })));
43
- }
44
-
45
- const AssetPreviewTopBar$1 = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)`
46
- box-sizing: border-box;
47
- align-items: center;
48
- border-bottom: ${props => props.border ? `1px solid` : `none`};
49
- color: inherit;
50
- display: flex;
51
- font-family: ${props => props.theme.primaryFontFamily};
52
- font-weight: 400;
53
- min-height: 72px;
54
- padding: 0 24px;
55
- width: 100%;
56
-
57
- ${props => props.theme.themeProp('border-color', props.theme.getColor('gray-800'), props.theme.getColor('gray-200'))}
58
-
59
- ${props => props.shadow && props.theme.themeProp('box-shadow', '0 -2px 12px #505050', '0 -3px 12px #b0b6b9')}
60
-
61
- ${props => props.disabled && styled.css`
62
- cursor: not-allowed;
63
- `}
64
- `;
65
- const BackButtonContainer = styled__default["default"].a.attrs(defaultTheme.applyDefaultTheme)`
66
- align-items: center;
67
- display: flex;
68
- font-size: 1.125rem;
69
- ${props => props.theme.themeProp('color', props.theme.getColor('gray-100'), props.theme.getColor('gray-900'))};
70
-
71
- ${props => props.disabled && styled.css`
72
- opacity: 0.5;
73
- pointer-events: none;
74
- `}
75
-
76
- &:hover {
77
- cursor: pointer;
78
- }
79
-
80
- > svg {
81
- height: 24px;
82
- margin-right: 16px;
83
- width: 24px;
84
- }
85
- `;
86
- const BackHoverEffect = styled__default["default"].div`
87
- display: inline-flex;
88
- align-items: center;
89
-
90
- > svg {
91
- height: 24px;
92
- margin-right: 16px;
93
- width: 24px;
94
- transition: transform 0.3s ease-in-out;
95
- }
96
-
97
- &:hover > svg {
98
- transform: translateX(-2px);
99
- }
100
- `;
101
- const LeftText = styled__default["default"].span.attrs(defaultTheme.applyDefaultTheme)`
102
- font-size: 1.125rem;
103
- margin-left: 16px;
104
-
105
- ${props => props.theme.themeProp('color', props.theme.getColor('gray-500'), props.theme.getColor('gray-400'))};
106
- `;
107
- const ButtonsContainer = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)`
108
- align-items: center;
109
- display: flex;
110
- margin-left: auto;
111
-
112
- > span {
113
- margin-left: 16px;
114
- }
115
- `;
116
-
117
- const AssetPreviewTopBar = React__default["default"].forwardRef(function AssetPreviewTopBar({
118
- onBackButtonClick,
119
- backButtonText,
120
- backButtonAsClose,
121
- leftText,
122
- buttons,
123
- shadow,
124
- border,
125
- disabled,
126
- ...props
127
- }, forwardedRef) {
128
- return React__default["default"].createElement(AssetPreviewTopBar$1, _rollupPluginBabelHelpers._extends({
129
- ref: forwardedRef,
130
- shadow: shadow,
131
- border: border,
132
- disabled: disabled
133
- }, props), React__default["default"].createElement(BackButtonContainer, {
134
- onClick: onBackButtonClick,
135
- disabled: disabled
136
- }, backButtonAsClose ? React__default["default"].createElement(React__default["default"].Fragment, null, React__default["default"].createElement(close.SvgClose, null), backButtonText) : React__default["default"].createElement(BackHoverEffect, null, React__default["default"].createElement(SvgArrowBack, null), backButtonText)), leftText && React__default["default"].createElement(LeftText, null, leftText), Array.isArray(buttons) && React__default["default"].createElement(ButtonsContainer, null, buttons.map((button, index) => React__default["default"].createElement("span", {
137
- key: 'topBarButton-' + index
138
- }, button))));
139
- });
140
- AssetPreviewTopBar.propTypes = process.env.NODE_ENV !== "production" ? {
141
- onBackButtonClick: defaultTheme.PropTypes.func.isRequired,
142
- backButtonText: defaultTheme.PropTypes.string.isRequired,
143
- disabled: defaultTheme.PropTypes.bool,
144
- backButtonAsClose: defaultTheme.PropTypes.bool,
145
- leftText: defaultTheme.PropTypes.string,
146
- shadow: defaultTheme.PropTypes.bool,
147
- border: defaultTheme.PropTypes.bool,
148
- buttons: defaultTheme.PropTypes.arrayOf(defaultTheme.PropTypes.node)
149
- } : {};
150
- AssetPreviewTopBar.defaultProps = {};
151
-
152
- exports.AssetPreviewTopBar = AssetPreviewTopBar;
@@ -1,33 +0,0 @@
1
- 'use strict';
2
-
3
- var _rollupPluginBabelHelpers = require('./_rollupPluginBabelHelpers-4b342fad.js');
4
- var React = require('react');
5
- var defaultTheme = require('./defaultTheme-d9a7342e.js');
6
- var styled = require('styled-components');
7
-
8
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
9
-
10
- var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
11
- var styled__default = /*#__PURE__*/_interopDefaultLegacy(styled);
12
-
13
- const ContextMenu$1 = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)`
14
- font-family: ${props => props.theme.primaryFontFamily};
15
- padding: 3px 0;
16
- `;
17
-
18
- const ContextMenu = React__default["default"].forwardRef(function ContextMenu({
19
- children,
20
- ...props
21
- }, forwardedRef) {
22
- return React__default["default"].createElement(ContextMenu$1, _rollupPluginBabelHelpers._extends({
23
- ref: forwardedRef
24
- }, props, {
25
- role: "menu"
26
- }), children);
27
- });
28
- ContextMenu.propTypes = process.env.NODE_ENV !== "production" ? {
29
- children: defaultTheme.PropTypes.any
30
- } : {};
31
- ContextMenu.defaultProps = {};
32
-
33
- exports.ContextMenu = ContextMenu;
@@ -1,30 +0,0 @@
1
- 'use strict';
2
-
3
- var _rollupPluginBabelHelpers = require('./_rollupPluginBabelHelpers-4b342fad.js');
4
- var React = require('react');
5
- var defaultTheme = require('./defaultTheme-d9a7342e.js');
6
- var styled = require('styled-components');
7
-
8
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
9
-
10
- var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
11
- var styled__default = /*#__PURE__*/_interopDefaultLegacy(styled);
12
-
13
- const InputGroup$1 = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)`
14
- margin: 8px 0;
15
- `;
16
-
17
- const InputGroup = React__default["default"].forwardRef(function InputGroup({
18
- children,
19
- ...props
20
- }, forwardedRef) {
21
- return React__default["default"].createElement(InputGroup$1, _rollupPluginBabelHelpers._extends({
22
- ref: forwardedRef
23
- }, props), children);
24
- });
25
- InputGroup.propTypes = process.env.NODE_ENV !== "production" ? {
26
- children: defaultTheme.PropTypes.node
27
- } : {};
28
- InputGroup.defaultProps = {};
29
-
30
- exports.InputGroup = InputGroup;