@ntbjs/react-components 1.1.0-beta.21 → 1.1.0-beta.23

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.
@@ -10,7 +10,7 @@ var ActionButton = require('./ActionButton-90485300.js');
10
10
  require('./AutocompleteSelect-e82bd937.js');
11
11
  require('./Button-0df54220.js');
12
12
  require('./Checkbox-50f1f3c7.js');
13
- require('./CompactStarRating-b379f623.js');
13
+ require('./CompactStarRating-f22ea9a5.js');
14
14
  require('./CompactTextInput-46a00295.js');
15
15
  require('./MultiSelect-3eca3c3e.js');
16
16
  require('./Radio-0b46b2a8.js');
@@ -32,7 +32,7 @@ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
32
32
  var styled__default = /*#__PURE__*/_interopDefaultLegacy(styled);
33
33
 
34
34
  var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8;
35
- var CompactStarRating$1 = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject || (_templateObject = defaultTheme._taggedTemplateLiteral(["\n font-family: ", ";\n font-size: 1rem;\n font-weight: 500;\n height: 24px;\n width: 100%;\n display: flex;\n align-items: center;\n\n ", "\n\n & .hiddenInput {\n display: none;\n }\n"])), function (props) {
35
+ var CompactStarRating$1 = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject || (_templateObject = defaultTheme._taggedTemplateLiteral(["\n font-family: ", ";\n font-size: 1rem;\n font-weight: 500;\n height: 24px;\n width: 100%;\n display: flex;\n align-items: center;\n\n ", "\n\n input[type=\"number\"] {\n position: absolute;\n opacity: 0;\n pointer-events: none;\n margin: 0;\n }\n"])), function (props) {
36
36
  return props.theme.primaryFontFamily;
37
37
  }, function (props) {
38
38
  return props.disabled && styled.css(_templateObject2 || (_templateObject2 = defaultTheme._taggedTemplateLiteral(["\n button {\n cursor: not-allowed;\n }\n > * {\n cursor: not-allowed;\n }\n "])));
@@ -40,7 +40,7 @@ var CompactStarRating$1 = styled__default['default'].div.attrs(defaultTheme.appl
40
40
  var labelWidth = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject3 || (_templateObject3 = defaultTheme._taggedTemplateLiteral(["\n width: 33.3%;\n display: flex;\n align-items: center;\n text-align: left;\n font: normal normal normal 14px/16px Roboto;\n letter-spacing: 0px;\n padding: 0;\n height: 19px;\n\n ", "\n"])), function (props) {
41
41
  return props.theme.themeProp('color', props.theme.getColor('gray-400'), props.theme.getColor('gray-500'));
42
42
  });
43
- var starsWidth = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject4 || (_templateObject4 = defaultTheme._taggedTemplateLiteral(["\n display: flex;\n width: 66.6%;\n border-radius: 3px;\n height: 24px;\n\n ", "\n\n ", "\n"])), function (props) {
43
+ var starsWidth = styled__default['default'].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject4 || (_templateObject4 = defaultTheme._taggedTemplateLiteral(["\n display: flex;\n width: 66.6%;\n border-radius: 3px;\n height: 24px;\n align-items: center;\n\n ", "\n\n ", "\n"])), function (props) {
44
44
  return props.error && styled.css(_templateObject5 || (_templateObject5 = defaultTheme._taggedTemplateLiteral(["\n ", ";\n "])), props.theme.themeProp('background', '#7F1B1B', '#FBEAE6'));
45
45
  }, function (props) {
46
46
  return props.warning && styled.css(_templateObject6 || (_templateObject6 = defaultTheme._taggedTemplateLiteral(["\n ", ";\n "])), props.theme.themeProp('background', '#634E01', '#FFFDE8'));
@@ -153,67 +153,65 @@ var CompactStarRating = React__default['default'].forwardRef(function CompactSta
153
153
  }, [rating]);
154
154
 
155
155
  var starIconRender = function starIconRender(key) {
156
- if (rating > 0 && rating >= key + 1) {
157
- return React__default['default'].createElement(StarFill, {
158
- disabled: readOnly,
159
- onClick: function onClick() {
160
- if (key + 1 > 1) {
161
- return setRating(key + 1);
162
- } else if (key + 1 == 1) {
163
- setRating(function (current) {
164
- return current === 1 ? 0 : key + 1;
165
- });
166
- }
167
- },
168
- onMouseEnter: function onMouseEnter() {
169
- setTempRating(key + 1);
170
- setHover(true);
171
- },
172
- onMouseLeave: function onMouseLeave() {
173
- setTempRating(0);
174
- setHover(false);
175
- },
176
- hover: hover && key + 1 <= tempRating,
177
- warning: warning,
178
- error: error,
179
- key: key
180
- }, iconFill);
181
- } else if (viewEmpty) {
182
- return React__default['default'].createElement(Star, {
183
- disabled: readOnly,
184
- onClick: function onClick() {
185
- setRating(key + 1);
186
- },
187
- onMouseEnter: function onMouseEnter() {
188
- setTempRating(key + 1);
189
- setHover(true);
190
- },
191
- onMouseLeave: function onMouseLeave() {
192
- setTempRating(0);
193
- setHover(false);
194
- },
195
- hover: hover && key + 1 <= tempRating,
196
- warning: warning,
197
- error: error,
198
- key: key
199
- }, icon);
200
- }
156
+ var ratingChecker = rating > 0 && rating >= key + 1;
157
+ return ratingChecker ? React__default['default'].createElement(StarFill, {
158
+ disabled: readOnly,
159
+ onClick: function onClick() {
160
+ if (key + 1 > 1) {
161
+ return setRating(key + 1);
162
+ } else if (key + 1 == 1) {
163
+ setRating(function (current) {
164
+ return current === 1 ? 0 : key + 1;
165
+ });
166
+ }
167
+ },
168
+ onMouseEnter: function onMouseEnter() {
169
+ setTempRating(key + 1);
170
+ setHover(true);
171
+ },
172
+ onMouseLeave: function onMouseLeave() {
173
+ setTempRating(0);
174
+ setHover(false);
175
+ },
176
+ hover: hover && key + 1 <= tempRating,
177
+ warning: warning,
178
+ error: error,
179
+ key: key
180
+ }, iconFill) : viewEmpty && React__default['default'].createElement(Star, {
181
+ disabled: readOnly,
182
+ onClick: function onClick() {
183
+ setRating(key + 1);
184
+ },
185
+ onMouseEnter: function onMouseEnter() {
186
+ setTempRating(key + 1);
187
+ setHover(true);
188
+ },
189
+ onMouseLeave: function onMouseLeave() {
190
+ setTempRating(0);
191
+ setHover(false);
192
+ },
193
+ hover: hover && key + 1 <= tempRating,
194
+ warning: warning,
195
+ error: error,
196
+ key: key
197
+ }, icon);
201
198
  };
202
199
 
203
200
  return React__default['default'].createElement(CompactStarRating$1, defaultTheme._extends({
204
201
  disabled: readOnly,
205
202
  ref: forwardedRef
206
- }, props), React__default['default'].createElement(labelWidth, null, label), React__default['default'].createElement("input", {
207
- className: "hiddenInput",
208
- type: "number",
209
- ref: inputRef,
210
- onChange: onChange,
211
- onBlur: onBlur
212
- }), React__default['default'].createElement(starsWidth, {
203
+ }, props), React__default['default'].createElement(labelWidth, null, label), React__default['default'].createElement(starsWidth, {
213
204
  error: hasError,
214
205
  warning: hasWarning
215
206
  }, stars.map(function (key) {
216
- return starIconRender(key);
207
+ return React__default['default'].createElement("div", {
208
+ key: key
209
+ }, React__default['default'].createElement("input", {
210
+ type: "number",
211
+ ref: inputRef,
212
+ onChange: onChange,
213
+ onBlur: onBlur
214
+ }), starIconRender(key));
217
215
  })));
218
216
  });
219
217
  CompactStarRating.defaultProps = {
@@ -34,46 +34,8 @@ var Instructions = React__default['default'].forwardRef(function Instructions(_r
34
34
  readOnly = _ref.readOnly,
35
35
  lightBackground = _ref.lightBackground,
36
36
  options = _ref.options,
37
- onChangeProp = _ref.onChange,
38
- props = defaultTheme._objectWithoutProperties(_ref, ["clickToAdd", "customAddMessage", "selectedOption", "readOnly", "lightBackground", "options", "onChange"]);
39
-
40
- var filterOptions = function filterOptions(inputValue) {
41
- return options.filter(function (option) {
42
- return option.label.toLowerCase().includes(inputValue.toLowerCase());
43
- });
44
- };
45
-
46
- var onChange = React.useCallback(function (event) {
47
- setCurrentValue(event.target.value);
48
-
49
- if (lodash.isFunction(onChangeProp)) {
50
- onChangeProp(event);
51
- }
52
- }, [onChangeProp]);
53
-
54
- var loadOptions = function loadOptions(inputValue, prevOptions) {
55
- var pageLength = 10;
56
- var filteredOptions;
57
-
58
- if (!inputValue) {
59
- filteredOptions = options;
60
- } else {
61
- filteredOptions = filterOptions(inputValue);
62
- }
63
-
64
- var hasMore = filteredOptions.length > prevOptions.length + pageLength;
65
- var slicedOptions = filteredOptions.slice(prevOptions.length, prevOptions.length + pageLength);
66
- return {
67
- options: slicedOptions,
68
- hasMore: hasMore
69
- };
70
- };
71
-
72
- var loadOptionsPromise = function loadOptionsPromise(inputValue, prevOptions) {
73
- return new Promise(function (resolve) {
74
- resolve(loadOptions(inputValue, prevOptions));
75
- });
76
- };
37
+ subscribeCurrentValueProp = _ref.subscribeCurrentValue,
38
+ props = defaultTheme._objectWithoutProperties(_ref, ["clickToAdd", "customAddMessage", "selectedOption", "readOnly", "lightBackground", "options", "subscribeCurrentValue"]);
77
39
 
78
40
  var _useState = React.useState(false),
79
41
  _useState2 = defaultTheme._slicedToArray(_useState, 2),
@@ -110,6 +72,36 @@ var Instructions = React__default['default'].forwardRef(function Instructions(_r
110
72
  currentValue = _useState14[0],
111
73
  setCurrentValue = _useState14[1];
112
74
 
75
+ var filterOptions = function filterOptions(inputValue) {
76
+ return options.filter(function (option) {
77
+ return option.label.toLowerCase().includes(inputValue.toLowerCase());
78
+ });
79
+ };
80
+
81
+ var loadOptions = function loadOptions(inputValue, prevOptions) {
82
+ var pageLength = 10;
83
+ var filteredOptions;
84
+
85
+ if (!inputValue) {
86
+ filteredOptions = options;
87
+ } else {
88
+ filteredOptions = filterOptions(inputValue);
89
+ }
90
+
91
+ var hasMore = filteredOptions.length > prevOptions.length + pageLength;
92
+ var slicedOptions = filteredOptions.slice(prevOptions.length, prevOptions.length + pageLength);
93
+ return {
94
+ options: slicedOptions,
95
+ hasMore: hasMore
96
+ };
97
+ };
98
+
99
+ var loadOptionsPromise = function loadOptionsPromise(inputValue, prevOptions) {
100
+ return new Promise(function (resolve) {
101
+ resolve(loadOptions(inputValue, prevOptions));
102
+ });
103
+ };
104
+
113
105
  var handleMouseEnter = function handleMouseEnter() {
114
106
  setIsHovered(true);
115
107
  };
@@ -152,6 +144,11 @@ var Instructions = React__default['default'].forwardRef(function Instructions(_r
152
144
  }
153
145
  };
154
146
 
147
+ React.useEffect(function () {
148
+ if (lodash.isFunction(subscribeCurrentValueProp)) {
149
+ subscribeCurrentValueProp(currentValue);
150
+ }
151
+ }, [currentValue]);
155
152
  React.useEffect(function () {
156
153
  handleChange(selected);
157
154
  }, [selected]);
@@ -169,7 +166,6 @@ var Instructions = React__default['default'].forwardRef(function Instructions(_r
169
166
  return React__default['default'].createElement(Instructions$1, defaultTheme._extends({
170
167
  ref: forwardedRef,
171
168
  initialHover: initialHover,
172
- onChange: onChange,
173
169
  onMouseEnter: handleMouseEnter,
174
170
  onMouseLeave: handleMouseLeave
175
171
  }, props), React__default['default'].createElement(TopBarContainer, {
@@ -204,7 +200,7 @@ Instructions.propTypes = process.env.NODE_ENV !== "production" ? {
204
200
  readOnly: defaultTheme.PropTypes.bool,
205
201
  lightBackground: defaultTheme.PropTypes.bool,
206
202
  options: defaultTheme.PropTypes.array,
207
- onChange: defaultTheme.PropTypes.func
203
+ subscribeCurrentValue: defaultTheme.PropTypes.func
208
204
  } : {};
209
205
 
210
206
  exports.Instructions = Instructions;
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var CompactStarRating = require('../../CompactStarRating-b379f623.js');
3
+ var CompactStarRating = require('../../CompactStarRating-f22ea9a5.js');
4
4
  require('../../defaultTheme-870f7df1.js');
5
5
  require('styled-components');
6
6
  require('react');
package/inputs/index.js CHANGED
@@ -6,7 +6,7 @@ var ActionButton = require('../ActionButton-90485300.js');
6
6
  var AutocompleteSelect = require('../AutocompleteSelect-e82bd937.js');
7
7
  var Button = require('../Button-0df54220.js');
8
8
  var Checkbox = require('../Checkbox-50f1f3c7.js');
9
- var CompactStarRating = require('../CompactStarRating-b379f623.js');
9
+ var CompactStarRating = require('../CompactStarRating-f22ea9a5.js');
10
10
  var CompactTextInput = require('../CompactTextInput-46a00295.js');
11
11
  var MultiSelect = require('../MultiSelect-3eca3c3e.js');
12
12
  var Radio = require('../Radio-0b46b2a8.js');
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ntbjs/react-components",
3
- "version": "1.1.0-beta.21",
3
+ "version": "1.1.0-beta.23",
4
4
  "description": "NTBs common front-end design utilities and React components.",
5
5
  "scripts": {
6
6
  "build": "cross-env NODE_ENV=production rollup -c",
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var AssetGallery = require('../../AssetGallery-763861f4.js');
3
+ var AssetGallery = require('../../AssetGallery-b3bd5f39.js');
4
4
  require('../../defaultTheme-870f7df1.js');
5
5
  require('styled-components');
6
6
  require('react');
@@ -25,7 +25,7 @@ require('@tippyjs/react');
25
25
  require('../../shift-away-subtle-0bdd3b0d.js');
26
26
  require('../../ContextMenu-ccb7a26a.js');
27
27
  require('../../Checkbox-50f1f3c7.js');
28
- require('../../CompactStarRating-b379f623.js');
28
+ require('../../CompactStarRating-f22ea9a5.js');
29
29
  require('../../CompactTextInput-46a00295.js');
30
30
  require('../../Alert-fcc0bb50.js');
31
31
  require('../../Badge-34ad2850.js');
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var Instructions = require('../../Instructions-98d6fe45.js');
3
+ var Instructions = require('../../Instructions-f8301b0b.js');
4
4
  require('../../defaultTheme-870f7df1.js');
5
5
  require('styled-components');
6
6
  require('react');
package/widgets/index.js CHANGED
@@ -2,10 +2,10 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var AssetGallery = require('../AssetGallery-763861f4.js');
5
+ var AssetGallery = require('../AssetGallery-b3bd5f39.js');
6
6
  var ContextMenu = require('../ContextMenu-ccb7a26a.js');
7
7
  var AssetPreviewTopBar = require('../AssetPreviewTopBar-020a6f96.js');
8
- var Instructions = require('../Instructions-98d6fe45.js');
8
+ var Instructions = require('../Instructions-f8301b0b.js');
9
9
  require('../defaultTheme-870f7df1.js');
10
10
  require('styled-components');
11
11
  require('react');
@@ -29,7 +29,7 @@ require('polished');
29
29
  require('@tippyjs/react');
30
30
  require('../shift-away-subtle-0bdd3b0d.js');
31
31
  require('../Checkbox-50f1f3c7.js');
32
- require('../CompactStarRating-b379f623.js');
32
+ require('../CompactStarRating-f22ea9a5.js');
33
33
  require('../CompactTextInput-46a00295.js');
34
34
  require('../Alert-fcc0bb50.js');
35
35
  require('../Badge-34ad2850.js');