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

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 (85) 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/{AssetAction-d081e4b7.js → AssetGallery-f67393d4.js} +588 -622
  4. package/build/{Badge-aa4cd9c1.js → Badge-d93586a9.js} +35 -42
  5. package/build/{Button-2e26f5da.js → Button-179a2fe4.js} +83 -90
  6. package/build/{Checkbox-0b8faf49.js → Checkbox-4a5fd716.js} +45 -52
  7. package/build/{CompactAutocompleteSelect-797778cb.js → CompactAutocompleteSelect-52c49513.js} +116 -125
  8. package/build/{CompactStarRating-da21b53f.js → CompactStarRating-9af2f427.js} +76 -101
  9. package/build/{CompactTextInput-d56aec71.js → CompactTextInput-42ca5d42.js} +104 -129
  10. package/build/InputGroup-1294d190.js +23 -0
  11. package/build/{MultiLevelCheckboxSelect-d229cf98.js → MultiLevelCheckboxSelect-d8044c88.js} +139 -167
  12. package/build/{MultiSelect-d7920eb1.js → MultiSelect-9f497e62.js} +81 -90
  13. package/build/{Popover-c4be47ea.js → Popover-20050b91.js} +35 -44
  14. package/build/{Radio-150fb2c9.js → Radio-73ca3ae2.js} +28 -35
  15. package/build/SectionSeparator-f47760a2.js +31 -0
  16. package/build/{Switch-d2d6e9ec.js → Switch-ecf3122b.js} +35 -42
  17. package/build/Tab-04d435c3.js +32 -0
  18. package/build/{Tabs-b06c0e24.js → Tabs-74d1ea8a.js} +37 -44
  19. package/build/{TextArea-26d3c8a1.js → TextArea-1e5b9201.js} +105 -113
  20. package/build/{TextInput-3a567daa.js → TextInput-fab35842.js} +78 -86
  21. package/build/Tooltip-c1d1199e.js +65 -0
  22. package/build/{VerificationStatusIcon-9876b68f.js → VerificationStatusIcon-49cb1c1b.js} +19 -44
  23. package/build/{_rollupPluginBabelHelpers-4b342fad.js → _rollupPluginBabelHelpers-c245b26a.js} +1 -3
  24. package/build/arrow-forward-ad12c5f3.js +15 -0
  25. package/build/close-a5d37608.js +15 -0
  26. package/build/data/Alert/index.js +6 -12
  27. package/build/data/Badge/index.js +5 -11
  28. package/build/data/Popover/index.js +10 -16
  29. package/build/data/Tab/index.js +5 -11
  30. package/build/data/Tabs/index.js +7 -13
  31. package/build/data/Tooltip/index.js +7 -13
  32. package/build/data/index.js +16 -30
  33. package/build/{defaultTheme-d9a7342e.js → defaultTheme-1bcc2541.js} +3 -7
  34. package/build/edit-note-283a0e15.js +15 -0
  35. package/build/expand-more-c5523c46.js +15 -0
  36. package/build/inputs/ActionButton/index.js +6 -12
  37. package/build/inputs/Button/index.js +13 -19
  38. package/build/inputs/Checkbox/index.js +6 -12
  39. package/build/inputs/CompactAutocompleteSelect/index.js +23 -29
  40. package/build/inputs/CompactStarRating/index.js +17 -23
  41. package/build/inputs/CompactTextInput/index.js +19 -25
  42. package/build/inputs/MultiLevelCheckboxSelect/MultiLevelCheckboxSelect.js +26 -0
  43. package/build/inputs/MultiSelect/index.js +10 -16
  44. package/build/inputs/Radio/index.js +7 -13
  45. package/build/inputs/Switch/index.js +6 -12
  46. package/build/inputs/TextArea/index.js +20 -26
  47. package/build/inputs/TextInput/index.js +9 -15
  48. package/build/inputs/index.js +40 -60
  49. package/build/layout/InputGroup/index.js +5 -11
  50. package/build/layout/SectionSeparator/index.js +5 -11
  51. package/build/layout/index.js +6 -15
  52. package/build/{shift-away-subtle-158617af.js → shift-away-subtle-0dd94a03.js} +3 -5
  53. package/build/ssr/index.js +1 -12
  54. package/build/styles/utils/colors.scss +4 -4
  55. package/build/warning-circle-24f3efcd.js +15 -0
  56. package/build/widgets/AssetGallery/AssetGallery.js +45 -0
  57. package/build/widgets/AssetPreview/AssetPreviewTopBar/AssetPreviewTopBar.js +127 -0
  58. package/build/widgets/ContextMenu/ContextMenu.js +26 -0
  59. package/build/{ContextMenuItem-3967010d.js → widgets/ContextMenu/ContextMenuItem/ContextMenuItem.js} +23 -48
  60. package/build/widgets/ContextMenu/ContextMenuItemsGroup/ContextMenuItemsGroup.js +37 -0
  61. package/build/{InfoCard-d0fdf377.js → widgets/InfoCard/InfoCard.js} +27 -34
  62. package/build/widgets/Instructions/Instructions.js +255 -0
  63. package/build/{ProgressBar-2d26c1fb.js → widgets/ProgressBar/ProgressBar.js} +39 -46
  64. package/build/widgets/index.js +50 -65
  65. package/package.json +3 -3
  66. package/styles/utils/colors.scss +4 -4
  67. package/build/AssetPreviewTopBar-623cfa18.js +0 -152
  68. package/build/ContextMenu-82f9d728.js +0 -33
  69. package/build/InputGroup-8d4a4644.js +0 -30
  70. package/build/Instructions-af191987.js +0 -274
  71. package/build/SectionSeparator-e06c7660.js +0 -38
  72. package/build/Tab-ccbca1f2.js +0 -39
  73. package/build/Tooltip-d5882b82.js +0 -73
  74. package/build/arrow-forward-d7c77ae3.js +0 -37
  75. package/build/close-1751121a.js +0 -37
  76. package/build/edit-note-cefe2215.js +0 -37
  77. package/build/expand-more-d74e2bd2.js +0 -37
  78. package/build/widgets/AssetGallery/index.js +0 -55
  79. package/build/widgets/AssetPreview/AssetPreviewTopBar/index.js +0 -12
  80. package/build/widgets/ContextMenu/ContextMenuItem/index.js +0 -11
  81. package/build/widgets/ContextMenu/ContextMenuItemsGroup/index.js +0 -44
  82. package/build/widgets/ContextMenu/index.js +0 -11
  83. package/build/widgets/InfoCard/index.js +0 -12
  84. package/build/widgets/Instructions/index.js +0 -33
  85. package/build/widgets/ProgressBar/index.js +0 -12
@@ -1,17 +1,10 @@
1
- 'use strict';
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';
2
6
 
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);
13
-
14
- const Container = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)`
7
+ const Container = styled.div.attrs(applyDefaultTheme)`
15
8
  font-family: ${props => props.theme.primaryFontFamily};
16
9
  font-size: 1rem;
17
10
  font-weight: 500;
@@ -23,7 +16,7 @@ const Container = styled__default["default"].div.attrs(defaultTheme.applyDefault
23
16
  align-items: center;
24
17
  padding: 5px 0;
25
18
  `;
26
- const MetricsContainer = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)`
19
+ const MetricsContainer = styled.div.attrs(applyDefaultTheme)`
27
20
  display: flex;
28
21
  flex-direction: column;
29
22
  justify-content: center;
@@ -32,31 +25,31 @@ const MetricsContainer = styled__default["default"].div.attrs(defaultTheme.apply
32
25
  gap: 5px;
33
26
  padding-left: 15px;
34
27
  `;
35
- const IconTotalContainer = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)`
28
+ const IconTotalContainer = styled.div.attrs(applyDefaultTheme)`
36
29
  display: flex;
37
30
  justify-content: center;
38
31
  align-items: center;
39
32
  gap: 10px;
40
33
  `;
41
- const Total = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)`
34
+ const Total = styled.div.attrs(applyDefaultTheme)`
42
35
  font-size: 1.22rem;
43
36
  font-weight: 700;
44
37
  ${props => props.theme.themeProp('color', props.theme.getColor('gray-100'), props.theme.getColor('gray-900'))};
45
38
  `;
46
- const Label = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)`
39
+ const Label = styled.div.attrs(applyDefaultTheme)`
47
40
  font-size: 0.875rem;
48
41
  font-weight: 400;
49
42
  opacity: 0.8;
50
43
  ${props => props.theme.themeProp('color', props.theme.getColor('gray-100'), props.theme.getColor('gray-500'))};
51
44
  `;
52
- const IconContainer = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)`
45
+ const IconContainer = styled.div.attrs(applyDefaultTheme)`
53
46
  display: flex;
54
47
  justify-content: center;
55
48
  align-items: center;
56
49
  width: 18px;
57
50
  margin-top: -0.05rem;
58
51
  `;
59
- const Link = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)`
52
+ const Link = styled.div.attrs(applyDefaultTheme)`
60
53
  font-size: 0.875rem;
61
54
  font-weight: 400;
62
55
  width: 30%;
@@ -75,7 +68,7 @@ const Link = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme
75
68
  transform: translateX(2px);
76
69
  }
77
70
  `;
78
- const ButtonLink = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)`
71
+ const ButtonLink = styled.div.attrs(applyDefaultTheme)`
79
72
  font-size: 0.875rem;
80
73
  font-weight: 500;
81
74
  height: 100%;
@@ -86,7 +79,7 @@ const ButtonLink = styled__default["default"].div.attrs(defaultTheme.applyDefaul
86
79
  transition: color 0.2s ease-in-out;
87
80
  ${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'))};
88
81
  `;
89
- const StyledArrowIcon = styled__default["default"](arrowForward.SvgArrowForward).attrs(defaultTheme.applyDefaultTheme)`
82
+ const StyledArrowIcon = styled(SvgArrowForward).attrs(applyDefaultTheme)`
90
83
  height: 15px;
91
84
  margin-right: 10px;
92
85
  opacity: ${props => props.$isHovered ? 1 : 0.8};
@@ -96,7 +89,7 @@ const StyledArrowIcon = styled__default["default"](arrowForward.SvgArrowForward)
96
89
  ${props => props.$isHovered ? props.theme.themeProp('fill', props.theme.getColor('white'), props.theme.getColor('black')) : props.theme.themeProp('fill', props.theme.getColor('white'), props.theme.getColor('black'))};
97
90
  `;
98
91
 
99
- const InfoCard = React__default["default"].forwardRef(function InfoCard({
92
+ const InfoCard = React__default.forwardRef(function InfoCard({
100
93
  icon,
101
94
  total,
102
95
  label,
@@ -105,28 +98,28 @@ const InfoCard = React__default["default"].forwardRef(function InfoCard({
105
98
  height,
106
99
  ...props
107
100
  }, forwardedRef) {
108
- const [isLinkHovered, setIsLinkHovered] = React.useState(false);
101
+ const [isLinkHovered, setIsLinkHovered] = useState(false);
109
102
  const handleLinkClick = e => onClick(e);
110
- return React__default["default"].createElement(Container, _rollupPluginBabelHelpers._extends({
103
+ return React__default.createElement(Container, _extends({
111
104
  height: height,
112
105
  ref: forwardedRef
113
- }, props), React__default["default"].createElement(MetricsContainer, null, React__default["default"].createElement(IconTotalContainer, null, React__default["default"].createElement(IconContainer, null, icon), React__default["default"].createElement(Total, null, total)), React__default["default"].createElement(Label, null, label)), linkLabel && onClick && React__default["default"].createElement(Link, {
106
+ }, props), React__default.createElement(MetricsContainer, null, React__default.createElement(IconTotalContainer, null, React__default.createElement(IconContainer, null, icon), React__default.createElement(Total, null, total)), React__default.createElement(Label, null, label)), linkLabel && onClick && React__default.createElement(Link, {
114
107
  onClick: handleLinkClick,
115
108
  onMouseEnter: () => setIsLinkHovered(true),
116
109
  onMouseLeave: () => setIsLinkHovered(false)
117
- }, React__default["default"].createElement(ButtonLink, {
110
+ }, React__default.createElement(ButtonLink, {
118
111
  $isHovered: isLinkHovered
119
- }, linkLabel), React__default["default"].createElement(StyledArrowIcon, {
112
+ }, linkLabel), React__default.createElement(StyledArrowIcon, {
120
113
  $isHovered: isLinkHovered
121
114
  })));
122
115
  });
123
116
  InfoCard.propTypes = process.env.NODE_ENV !== "production" ? {
124
- icon: defaultTheme.PropTypes.element.isRequired,
125
- total: defaultTheme.PropTypes.number.isRequired,
126
- label: defaultTheme.PropTypes.string.isRequired,
127
- linkLabel: defaultTheme.PropTypes.string,
128
- onClick: defaultTheme.PropTypes.func,
129
- height: defaultTheme.PropTypes.number
117
+ icon: PropTypes.element.isRequired,
118
+ total: PropTypes.number.isRequired,
119
+ label: PropTypes.string.isRequired,
120
+ linkLabel: PropTypes.string,
121
+ onClick: PropTypes.func,
122
+ height: PropTypes.number
130
123
  } : {};
131
124
 
132
- exports.InfoCard = InfoCard;
125
+ export { InfoCard as default };
@@ -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 };