@ntbjs/react-components 0.0.1-beta.45 → 0.0.1-beta.47

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.
@@ -0,0 +1,164 @@
1
+ 'use strict';
2
+
3
+ var defaultTheme = require('./defaultTheme-38b83bb5.js');
4
+ var React = require('react');
5
+ var nanoid = require('nanoid');
6
+ var styled = require('styled-components');
7
+ var lodash = require('lodash');
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
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15, _templateObject16, _templateObject17;
15
+ var activeLabel = styled.css(_templateObject || (_templateObject = 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"])));
16
+ var placeholderBaseStyle = styled.css(_templateObject2 || (_templateObject2 = defaultTheme._taggedTemplateLiteral(["\n ", "\n\n ", "\n"])), function (props) {
17
+ return props.theme.themeProp('color', props.theme.getColor('gray-300'), props.theme.getColor('gray-600'));
18
+ }, function (props) {
19
+ return props.theme.themeProp('opacity', 0.6, 0.5);
20
+ });
21
+ var TextInputField = styled__default["default"].textarea.attrs(defaultTheme.applyDefaultTheme)(_templateObject3 || (_templateObject3 = defaultTheme._taggedTemplateLiteral(["\n display: block;\n width: 100%;\n font-family: inherit;\n font-size: 0.875rem;\n border-radius: 2px;\n padding: 13px 10px;\n resize: vertical;\n ", "\n ", "\n border: 1px solid;\n ", "\n border-radius: 3px;\n box-sizing: border-box;\n appearance: none;\n transition: border-color 350ms;\n\n ", "\n ", "\n ", "\n\n &::placeholder {\n ", "\n\n ", "\n }\n\n :focus {\n outline: none;\n ", "\n }\n"])), function (props) {
22
+ return props.theme.themeProp('color', props.theme.getColor('gray-100'), props.theme.getColor('gray-900'));
23
+ }, function (props) {
24
+ return props.theme.themeProp('background', props.theme.getColor('gray-900'), props.theme.getColor('white'));
25
+ }, function (props) {
26
+ return props.theme.themeProp('border-color', props.theme.getColor('gray-500'), props.theme.getColor('gray-400'));
27
+ }, function (props) {
28
+ return props.warning && styled.css(_templateObject4 || (_templateObject4 = defaultTheme._taggedTemplateLiteral(["\n border-color: ", " !important;\n "])), props.theme.getColor('orange-500'));
29
+ }, function (props) {
30
+ return props.error && styled.css(_templateObject5 || (_templateObject5 = defaultTheme._taggedTemplateLiteral(["\n border-color: ", " !important;\n "])), props.theme.getColor('red-500'));
31
+ }, function (props) {
32
+ return props.hasIcon && styled.css(_templateObject6 || (_templateObject6 = defaultTheme._taggedTemplateLiteral(["\n padding-left: 35px;\n "])));
33
+ }, function (props) {
34
+ return props.theme.themeProp('color', props.theme.getColor('gray-300'), props.theme.getColor('gray-600'), 1);
35
+ }, function (props) {
36
+ return props.theme.themeProp('opacity', 0.6, 0.5, 1);
37
+ }, function (props) {
38
+ return props.theme.themeProp('border-color', props.theme.getColor('gray-500'), props.theme.getColor('gray-600'));
39
+ });
40
+ var TextInputLabel = styled__default["default"].label.attrs(defaultTheme.applyDefaultTheme)(_templateObject7 || (_templateObject7 = 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\n ", ";\n\n ", "\n\n ", "\n\n content: \"\";\n\n ", "\n"])), placeholderBaseStyle, function (props) {
41
+ 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%)"));
42
+ }, function (props) {
43
+ return props.hasPlaceholder && styled.css(_templateObject8 || (_templateObject8 = defaultTheme._taggedTemplateLiteral(["\n ", ";\n ", "\n "])), activeLabel, props.error && styled.css(_templateObject9 || (_templateObject9 = defaultTheme._taggedTemplateLiteral(["\n color: ", " !important;\n "])), props.theme.getColor('red-500')));
44
+ }, function (props) {
45
+ return props.hasIcon && styled.css(_templateObject10 || (_templateObject10 = defaultTheme._taggedTemplateLiteral(["\n left: 35px;\n "])));
46
+ });
47
+ var TextInputFieldIcon = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject11 || (_templateObject11 = 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"])));
48
+ var TextInput = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject12 || (_templateObject12 = defaultTheme._taggedTemplateLiteral(["\n position: relative;\n\n &:focus-within {\n ", " {\n ", ";\n }\n\n ", " {\n svg {\n opacity: 1;\n }\n }\n }\n\n ", ":not(:placeholder-shown) + ", " {\n ", ";\n ", "\n // ", "\n ", "\n }\n\n ", "\n"])), TextInputLabel, activeLabel, TextInputFieldIcon, TextInputField, TextInputLabel, activeLabel, function (props) {
49
+ return props.error && props.theme.themeProp('color', props.theme.getColor('red-200'), props.theme.getColor('red-500'));
50
+ }, function (props) {
51
+ return props.error && styled.css(_templateObject13 || (_templateObject13 = defaultTheme._taggedTemplateLiteral(["\n // color: ", " !important;\n //\n "])), props.theme.getColor('red-500'));
52
+ }, function (props) {
53
+ return props.warning && styled.css(_templateObject14 || (_templateObject14 = defaultTheme._taggedTemplateLiteral(["\n color: ", " !important;\n "])), props.theme.getColor('orange-500'));
54
+ }, function (props) {
55
+ return props.disabled && styled.css(_templateObject15 || (_templateObject15 = defaultTheme._taggedTemplateLiteral(["\n opacity: 0.5;\n\n > * {\n cursor: not-allowed;\n }\n "])));
56
+ });
57
+ var Description = styled__default["default"].p.attrs(defaultTheme.applyDefaultTheme)(_templateObject16 || (_templateObject16 = 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"])), function (props) {
58
+ return props.theme.themeProp('color', props.theme.getColor('gray-400'), props.theme.getColor('gray-500'));
59
+ }, function (props) {
60
+ return props.error && styled.css(_templateObject17 || (_templateObject17 = defaultTheme._taggedTemplateLiteral(["\n content: 'error';\n ", "\n "])), props.theme.themeProp('color', props.theme.getColor('red-200'), props.theme.getColor('red-500')));
61
+ });
62
+
63
+ var _excluded = ["value", "defaultValue", "name", "label", "placeholder", "required", "disabled", "autoComplete", "description", "error", "warning", "icon", "rows", "className", "style", "onChange", "onBlur"];
64
+ var TextArea = React__default["default"].forwardRef(function TextArea(_ref, forwardedRef) {
65
+ var value = _ref.value,
66
+ defaultValue = _ref.defaultValue,
67
+ name = _ref.name,
68
+ label = _ref.label,
69
+ placeholder = _ref.placeholder,
70
+ required = _ref.required,
71
+ disabled = _ref.disabled,
72
+ autoComplete = _ref.autoComplete,
73
+ description = _ref.description,
74
+ error = _ref.error,
75
+ warning = _ref.warning,
76
+ icon = _ref.icon,
77
+ rows = _ref.rows,
78
+ className = _ref.className,
79
+ style = _ref.style,
80
+ onChange = _ref.onChange,
81
+ onBlur = _ref.onBlur,
82
+ rest = defaultTheme._objectWithoutProperties(_ref, _excluded);
83
+ var _useState = React.useState(nanoid.nanoid()),
84
+ _useState2 = defaultTheme._slicedToArray(_useState, 1),
85
+ uniqueId = _useState2[0];
86
+ var hasError = React.useMemo(function () {
87
+ if (lodash.isBoolean(error)) {
88
+ return error;
89
+ }
90
+ return !lodash.isEmpty(error);
91
+ }, [error]);
92
+ var hasWarning = React.useMemo(function () {
93
+ if (lodash.isBoolean(warning)) {
94
+ return warning;
95
+ }
96
+ return !lodash.isEmpty(warning);
97
+ }, [warning]);
98
+ var descriptionText = React.useMemo(function () {
99
+ if (!lodash.isEmpty(error)) {
100
+ return error;
101
+ }
102
+ if (!lodash.isEmpty(warning)) {
103
+ return warning;
104
+ }
105
+ if (!lodash.isEmpty(description)) {
106
+ return description;
107
+ }
108
+ return null;
109
+ }, [description, error, warning]);
110
+ return React__default["default"].createElement(TextInput, {
111
+ disabled: disabled,
112
+ error: hasError,
113
+ warning: hasWarning,
114
+ className: className,
115
+ style: style
116
+ }, typeof icon !== 'undefined' && React__default["default"].createElement(TextInputFieldIcon, null, icon), React__default["default"].createElement(TextInputField, defaultTheme._extends({
117
+ ref: forwardedRef,
118
+ rows: rows,
119
+ value: value,
120
+ defaultValue: defaultValue,
121
+ name: name,
122
+ placeholder: placeholder || ' ',
123
+ required: required,
124
+ disabled: disabled,
125
+ autoComplete: autoComplete,
126
+ hasIcon: Boolean(icon),
127
+ error: hasError,
128
+ warning: hasWarning,
129
+ id: "text-input-".concat(uniqueId),
130
+ onChange: onChange,
131
+ onBlur: onBlur
132
+ }, rest)), label && React__default["default"].createElement(TextInputLabel, {
133
+ htmlFor: "text-input-".concat(uniqueId),
134
+ hasPlaceholder: Boolean(placeholder),
135
+ hasIcon: Boolean(icon),
136
+ error: hasError
137
+ }, label, required && ' *'), typeof descriptionText === 'string' && descriptionText.length > 0 && React__default["default"].createElement(Description, {
138
+ error: hasError
139
+ }, descriptionText));
140
+ });
141
+ TextArea.defaultProps = {
142
+ rows: 4
143
+ };
144
+ TextArea.propTypes = process.env.NODE_ENV !== "production" ? {
145
+ value: defaultTheme.PropTypes.string,
146
+ defaultValue: defaultTheme.PropTypes.string,
147
+ name: defaultTheme.PropTypes.string,
148
+ label: defaultTheme.PropTypes.string,
149
+ placeholder: defaultTheme.PropTypes.string,
150
+ required: defaultTheme.PropTypes.bool,
151
+ disabled: defaultTheme.PropTypes.bool,
152
+ autoComplete: defaultTheme.PropTypes.string,
153
+ description: defaultTheme.PropTypes.string,
154
+ error: defaultTheme.PropTypes.oneOfType([defaultTheme.PropTypes.bool, defaultTheme.PropTypes.string]),
155
+ warning: defaultTheme.PropTypes.oneOfType([defaultTheme.PropTypes.bool, defaultTheme.PropTypes.string]),
156
+ icon: defaultTheme.PropTypes.element,
157
+ rows: defaultTheme.PropTypes.oneOfType([defaultTheme.PropTypes.number, defaultTheme.PropTypes.string]),
158
+ className: defaultTheme.PropTypes.string,
159
+ style: defaultTheme.PropTypes.object,
160
+ onChange: defaultTheme.PropTypes.func,
161
+ onBlur: defaultTheme.PropTypes.func
162
+ } : {};
163
+
164
+ exports.TextArea = TextArea;
@@ -0,0 +1,163 @@
1
+ 'use strict';
2
+
3
+ var defaultTheme = require('./defaultTheme-38b83bb5.js');
4
+ var React = require('react');
5
+ var nanoid = require('nanoid');
6
+ var styled = require('styled-components');
7
+ var lodash = require('lodash');
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
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15, _templateObject16;
15
+ var activeLabel = styled.css(_templateObject || (_templateObject = 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"])));
16
+ var TextInputField = styled__default["default"].input.attrs(defaultTheme.applyDefaultTheme)(_templateObject2 || (_templateObject2 = defaultTheme._taggedTemplateLiteral(["\n display: block;\n width: 100%;\n font-family: inherit;\n font-size: 0.875rem;\n line-height: 1;\n border-radius: 2px;\n padding: 13px 10px;\n ", "\n ", "\n border: 1px solid;\n ", "\n border-radius: 3px;\n box-sizing: border-box;\n appearance: none;\n transition: border-color 350ms;\n height: 2.47rem !important; // important is needed to override the default Foundation styling used in the Mediebank\n margin-bottom: 0; // needed to override the default Foundation styling used in the Mediebank\n\n ", "\n ", "\n ", "\n\n &::placeholder {\n ", "\n\n ", "\n }\n\n :focus {\n outline: none;\n ", "\n }\n"])), function (props) {
17
+ return props.theme.themeProp('color', props.theme.getColor('gray-100'), props.theme.getColor('gray-900'));
18
+ }, function (props) {
19
+ return props.theme.themeProp('background', props.theme.getColor('gray-900'), props.theme.getColor('white'));
20
+ }, function (props) {
21
+ return props.theme.themeProp('border-color', props.theme.getColor('gray-500'), props.theme.getColor('gray-400'));
22
+ }, function (props) {
23
+ return props.warning && styled.css(_templateObject3 || (_templateObject3 = defaultTheme._taggedTemplateLiteral(["\n border-color: ", " !important;\n "])), props.theme.getColor('orange-500'));
24
+ }, function (props) {
25
+ return props.error && styled.css(_templateObject4 || (_templateObject4 = defaultTheme._taggedTemplateLiteral(["\n border-color: ", " !important;\n "])), props.theme.getColor('red-500'));
26
+ }, function (props) {
27
+ return props.hasIcon && styled.css(_templateObject5 || (_templateObject5 = defaultTheme._taggedTemplateLiteral(["\n padding-left: 35px;\n "])));
28
+ }, function (props) {
29
+ return props.theme.themeProp('color', props.theme.getColor('gray-300'), props.theme.getColor('gray-600'), 1);
30
+ }, function (props) {
31
+ return props.theme.themeProp('opacity', 0.6, 0.5, 1);
32
+ }, function (props) {
33
+ return props.theme.themeProp('border-color', props.theme.getColor('gray-500'), props.theme.getColor('gray-600'));
34
+ });
35
+ var TextInputLabel = styled__default["default"].label.attrs(defaultTheme.applyDefaultTheme)(_templateObject6 || (_templateObject6 = 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\n ", "\n\n ", "\n\n ", "\n\n ", "\n\n content: \"\";\n\n ", "\n"])), function (props) {
36
+ return props.theme.themeProp('color', props.theme.getColor('gray-300'), props.theme.getColor('gray-600'));
37
+ }, function (props) {
38
+ return props.theme.themeProp('opacity', 0.6, 0.5);
39
+ }, function (props) {
40
+ 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%)"));
41
+ }, function (props) {
42
+ return props.hasPlaceholder && styled.css(_templateObject7 || (_templateObject7 = defaultTheme._taggedTemplateLiteral(["\n ", ";\n ", "\n "])), activeLabel, props.error && styled.css(_templateObject8 || (_templateObject8 = defaultTheme._taggedTemplateLiteral(["\n color: ", " !important;\n "])), props.theme.getColor('red-500')));
43
+ }, function (props) {
44
+ return props.hasIcon && styled.css(_templateObject9 || (_templateObject9 = defaultTheme._taggedTemplateLiteral(["\n left: 35px;\n "])));
45
+ });
46
+ var TextInputFieldIcon = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject10 || (_templateObject10 = 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"])));
47
+ var TextInput$1 = styled__default["default"].div.attrs(defaultTheme.applyDefaultTheme)(_templateObject11 || (_templateObject11 = defaultTheme._taggedTemplateLiteral(["\n position: relative;\n\n &:focus-within {\n ", " {\n ", ";\n }\n\n ", " {\n svg {\n opacity: 1;\n }\n }\n }\n\n ", ":not(:placeholder-shown) + ", " {\n ", ";\n ", "\n // ", "\n ", "\n }\n\n ", "\n"])), TextInputLabel, activeLabel, TextInputFieldIcon, TextInputField, TextInputLabel, activeLabel, function (props) {
48
+ return props.error && props.theme.themeProp('color', props.theme.getColor('red-200'), props.theme.getColor('red-500'));
49
+ }, function (props) {
50
+ return props.error && styled.css(_templateObject12 || (_templateObject12 = defaultTheme._taggedTemplateLiteral(["\n // color: ", " !important;\n //\n "])), props.theme.getColor('red-500'));
51
+ }, function (props) {
52
+ return props.warning && styled.css(_templateObject13 || (_templateObject13 = defaultTheme._taggedTemplateLiteral(["\n color: ", " !important;\n "])), props.theme.getColor('orange-500'));
53
+ }, function (props) {
54
+ return props.disabled && styled.css(_templateObject14 || (_templateObject14 = defaultTheme._taggedTemplateLiteral(["\n opacity: 0.5;\n\n > * {\n cursor: not-allowed;\n }\n "])));
55
+ });
56
+ var Description = styled__default["default"].p.attrs(defaultTheme.applyDefaultTheme)(_templateObject15 || (_templateObject15 = 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"])), function (props) {
57
+ return props.theme.themeProp('color', props.theme.getColor('gray-400'), props.theme.getColor('gray-500'));
58
+ }, function (props) {
59
+ return props.error && styled.css(_templateObject16 || (_templateObject16 = defaultTheme._taggedTemplateLiteral(["\n content: 'error';\n ", "\n "])), props.theme.themeProp('color', props.theme.getColor('red-200'), props.theme.getColor('red-500')));
60
+ });
61
+
62
+ var _excluded = ["value", "defaultValue", "name", "label", "placeholder", "type", "required", "disabled", "autoComplete", "description", "error", "warning", "icon", "className", "style", "onChange", "onBlur"];
63
+ var TextInput = React__default["default"].forwardRef(function TextInput(_ref, forwardedRef) {
64
+ var value = _ref.value,
65
+ defaultValue = _ref.defaultValue,
66
+ name = _ref.name,
67
+ label = _ref.label,
68
+ placeholder = _ref.placeholder,
69
+ type = _ref.type,
70
+ required = _ref.required,
71
+ disabled = _ref.disabled,
72
+ autoComplete = _ref.autoComplete,
73
+ description = _ref.description,
74
+ error = _ref.error,
75
+ warning = _ref.warning,
76
+ icon = _ref.icon,
77
+ className = _ref.className,
78
+ style = _ref.style,
79
+ onChange = _ref.onChange,
80
+ onBlur = _ref.onBlur,
81
+ rest = defaultTheme._objectWithoutProperties(_ref, _excluded);
82
+ var _useState = React.useState(nanoid.nanoid()),
83
+ _useState2 = defaultTheme._slicedToArray(_useState, 1),
84
+ uniqueId = _useState2[0];
85
+ var hasError = React.useMemo(function () {
86
+ if (lodash.isBoolean(error)) {
87
+ return error;
88
+ }
89
+ return !lodash.isEmpty(error);
90
+ }, [error]);
91
+ var hasWarning = React.useMemo(function () {
92
+ if (lodash.isBoolean(warning)) {
93
+ return warning;
94
+ }
95
+ return !lodash.isEmpty(warning);
96
+ }, [warning]);
97
+ var descriptionText = React.useMemo(function () {
98
+ if (!lodash.isEmpty(error)) {
99
+ return error;
100
+ }
101
+ if (!lodash.isEmpty(warning)) {
102
+ return warning;
103
+ }
104
+ if (!lodash.isEmpty(description)) {
105
+ return description;
106
+ }
107
+ return null;
108
+ }, [description, error, warning]);
109
+ return React__default["default"].createElement(TextInput$1, {
110
+ disabled: disabled,
111
+ error: hasError,
112
+ warning: hasWarning,
113
+ className: className,
114
+ style: style
115
+ }, typeof icon !== 'undefined' && React__default["default"].createElement(TextInputFieldIcon, null, icon), React__default["default"].createElement(TextInputField, defaultTheme._extends({
116
+ ref: forwardedRef,
117
+ value: value,
118
+ defaultValue: defaultValue,
119
+ name: name,
120
+ placeholder: placeholder || ' ',
121
+ type: type,
122
+ required: required,
123
+ disabled: disabled,
124
+ autoComplete: autoComplete,
125
+ hasIcon: Boolean(icon),
126
+ error: hasError,
127
+ warning: hasWarning,
128
+ id: "text-input-".concat(uniqueId),
129
+ onChange: onChange,
130
+ onBlur: onBlur
131
+ }, rest)), label && React__default["default"].createElement(TextInputLabel, {
132
+ htmlFor: "text-input-".concat(uniqueId),
133
+ hasPlaceholder: Boolean(placeholder),
134
+ hasIcon: Boolean(icon),
135
+ error: hasError
136
+ }, label, required && ' *'), typeof descriptionText === 'string' && descriptionText.length > 0 && React__default["default"].createElement(Description, {
137
+ error: hasError
138
+ }, descriptionText));
139
+ });
140
+ TextInput.defaultProps = {
141
+ type: 'text'
142
+ };
143
+ TextInput.propTypes = process.env.NODE_ENV !== "production" ? {
144
+ value: defaultTheme.PropTypes.string,
145
+ defaultValue: defaultTheme.PropTypes.string,
146
+ name: defaultTheme.PropTypes.string,
147
+ label: defaultTheme.PropTypes.string,
148
+ placeholder: defaultTheme.PropTypes.string,
149
+ type: defaultTheme.PropTypes.string,
150
+ required: defaultTheme.PropTypes.bool,
151
+ disabled: defaultTheme.PropTypes.bool,
152
+ autoComplete: defaultTheme.PropTypes.string,
153
+ description: defaultTheme.PropTypes.string,
154
+ error: defaultTheme.PropTypes.oneOfType([defaultTheme.PropTypes.bool, defaultTheme.PropTypes.string]),
155
+ warning: defaultTheme.PropTypes.oneOfType([defaultTheme.PropTypes.bool, defaultTheme.PropTypes.string]),
156
+ icon: defaultTheme.PropTypes.element,
157
+ className: defaultTheme.PropTypes.string,
158
+ style: defaultTheme.PropTypes.object,
159
+ onChange: defaultTheme.PropTypes.func,
160
+ onBlur: defaultTheme.PropTypes.func
161
+ } : {};
162
+
163
+ exports.TextInput = TextInput;
@@ -1,10 +1,10 @@
1
1
  'use strict';
2
2
 
3
- var defaultTheme = require('./defaultTheme-d8298500.js');
3
+ var defaultTheme = require('./defaultTheme-38b83bb5.js');
4
4
  var React = require('react');
5
5
  var styled = require('styled-components');
6
6
  var TippyTooltip = require('@tippyjs/react');
7
- require('./Popover-6ca643ba.js');
7
+ require('./Popover-b16a26a5.js');
8
8
 
9
9
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
10
10
 
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
- var Popover = require('../../Popover-6ca643ba.js');
4
- require('../../defaultTheme-d8298500.js');
3
+ var Popover = require('../../Popover-b16a26a5.js');
4
+ require('../../defaultTheme-38b83bb5.js');
5
5
  require('styled-components');
6
6
  require('react');
7
7
  require('lodash');
package/data/index.js CHANGED
@@ -2,9 +2,9 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var Popover = require('../Popover-6ca643ba.js');
6
- var Tooltip = require('../Tooltip-25b6f5fa.js');
7
- require('../defaultTheme-d8298500.js');
5
+ var Popover = require('../Popover-b16a26a5.js');
6
+ var Tooltip = require('../Tooltip-a9271ef2.js');
7
+ require('../defaultTheme-38b83bb5.js');
8
8
  require('styled-components');
9
9
  require('react');
10
10
  require('lodash');
@@ -1312,7 +1312,9 @@ var defaultTheme = {
1312
1312
  themeProp: themeProp
1313
1313
  };
1314
1314
  function themeProp(property, darkMode, lightMode) {
1315
- return styled.css(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n body.dark-theme & {\n ", ": ", ";\n }\n\n body.light-theme & {\n ", ": ", ";\n }\n\n body:not(.light-theme):not(.dark-theme) & {\n ", ": ", ";\n\n @media (prefers-color-scheme: dark) {\n ", ": ", ";\n }\n }\n "])), property, darkMode, property, lightMode, property, lightMode, property, darkMode);
1315
+ var specificity = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 2;
1316
+ var specificityString = Array(specificity).fill("&").join("");
1317
+ return styled.css(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n body.dark-theme ", " {\n ", ": ", ";\n }\n\n body.light-theme ", " {\n ", ": ", ";\n }\n\n body:not(.light-theme):not(.dark-theme) ", " {\n ", ": ", ";\n\n @media (prefers-color-scheme: dark) {\n ", ": ", ";\n }\n }\n "])), specificityString, property, darkMode, specificityString, property, lightMode, specificityString, property, lightMode, property, darkMode);
1316
1318
  }
1317
1319
  function applyDefaultTheme(_ref) {
1318
1320
  var _ref$theme = _ref.theme,
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
- var ActionButton = require('../../ActionButton-9e502e55.js');
4
- require('../../defaultTheme-d8298500.js');
3
+ var ActionButton = require('../../ActionButton-d56265bd.js');
4
+ require('../../defaultTheme-38b83bb5.js');
5
5
  require('styled-components');
6
6
  require('react');
7
7
 
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
- var Button = require('../../Button-191167c8.js');
4
- require('../../defaultTheme-d8298500.js');
3
+ var Button = require('../../Button-2ae8c0dc.js');
4
+ require('../../defaultTheme-38b83bb5.js');
5
5
  require('styled-components');
6
6
  require('react');
7
7
 
@@ -1,10 +1,11 @@
1
1
  'use strict';
2
2
 
3
- var Checkbox = require('../../Checkbox-25c75a7c.js');
4
- require('../../defaultTheme-d8298500.js');
3
+ var Checkbox = require('../../Checkbox-4037e160.js');
4
+ require('../../defaultTheme-38b83bb5.js');
5
5
  require('styled-components');
6
6
  require('react');
7
7
  require('nanoid');
8
+ require('lodash');
8
9
 
9
10
 
10
11
 
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
- var Radio = require('../../Radio-1521b33c.js');
4
- require('../../defaultTheme-d8298500.js');
3
+ var Radio = require('../../Radio-96f0bc13.js');
4
+ require('../../defaultTheme-38b83bb5.js');
5
5
  require('styled-components');
6
6
  require('react');
7
7
  require('nanoid');
@@ -0,0 +1,12 @@
1
+ 'use strict';
2
+
3
+ var Switch = require('../../Switch-7b696313.js');
4
+ require('../../defaultTheme-38b83bb5.js');
5
+ require('styled-components');
6
+ require('react');
7
+ require('nanoid');
8
+ require('polished');
9
+
10
+
11
+
12
+ module.exports = Switch.Switch;
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
- var TextArea = require('../../TextArea-a73b1729.js');
4
- require('../../defaultTheme-d8298500.js');
3
+ var TextArea = require('../../TextArea-4be7199f.js');
4
+ require('../../defaultTheme-38b83bb5.js');
5
5
  require('styled-components');
6
6
  require('react');
7
7
  require('nanoid');
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
- var TextInput = require('../../TextInput-143d6346.js');
4
- require('../../defaultTheme-d8298500.js');
3
+ var TextInput = require('../../TextInput-4deb971c.js');
4
+ require('../../defaultTheme-38b83bb5.js');
5
5
  require('styled-components');
6
6
  require('react');
7
7
  require('nanoid');
package/inputs/index.js CHANGED
@@ -2,18 +2,19 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var ActionButton = require('../ActionButton-9e502e55.js');
6
- var Button = require('../Button-191167c8.js');
7
- var Checkbox = require('../Checkbox-25c75a7c.js');
8
- var Radio = require('../Radio-1521b33c.js');
9
- var TextArea = require('../TextArea-a73b1729.js');
10
- var TextInput = require('../TextInput-143d6346.js');
11
- require('../defaultTheme-d8298500.js');
5
+ var ActionButton = require('../ActionButton-d56265bd.js');
6
+ var Button = require('../Button-2ae8c0dc.js');
7
+ var Checkbox = require('../Checkbox-4037e160.js');
8
+ var Radio = require('../Radio-96f0bc13.js');
9
+ var TextArea = require('../TextArea-4be7199f.js');
10
+ var TextInput = require('../TextInput-4deb971c.js');
11
+ var Switch = require('../Switch-7b696313.js');
12
+ require('../defaultTheme-38b83bb5.js');
12
13
  require('styled-components');
13
14
  require('react');
14
15
  require('nanoid');
15
- require('polished');
16
16
  require('lodash');
17
+ require('polished');
17
18
 
18
19
 
19
20
 
@@ -23,3 +24,4 @@ exports.Checkbox = Checkbox.Checkbox;
23
24
  exports.Radio = Radio.Radio;
24
25
  exports.TextArea = TextArea.TextArea;
25
26
  exports.TextInput = TextInput.TextInput;
27
+ exports.Switch = Switch.Switch;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ntbjs/react-components",
3
- "version": "0.0.1-beta.45",
3
+ "version": "0.0.1-beta.47",
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,23 +1,24 @@
1
1
  'use strict';
2
2
 
3
- var AssetGallery = require('../../AssetGallery-de336893.js');
4
- require('../../defaultTheme-d8298500.js');
3
+ var AssetGallery = require('../../AssetGallery-a5a6d3ee.js');
4
+ require('../../defaultTheme-38b83bb5.js');
5
5
  require('styled-components');
6
6
  require('react');
7
7
  require('lodash');
8
8
  require('resize-observer-polyfill');
9
9
  require('react-lazy-load-image-component');
10
- require('../../ActionButton-9e502e55.js');
11
- require('../../Button-191167c8.js');
12
- require('../../Checkbox-25c75a7c.js');
10
+ require('../../ActionButton-d56265bd.js');
11
+ require('../../Button-2ae8c0dc.js');
12
+ require('../../Checkbox-4037e160.js');
13
13
  require('nanoid');
14
- require('../../Radio-1521b33c.js');
14
+ require('../../Radio-96f0bc13.js');
15
15
  require('polished');
16
- require('../../TextArea-a73b1729.js');
17
- require('../../TextInput-143d6346.js');
18
- require('../../Popover-6ca643ba.js');
16
+ require('../../TextArea-4be7199f.js');
17
+ require('../../TextInput-4deb971c.js');
18
+ require('../../Switch-7b696313.js');
19
+ require('../../Popover-b16a26a5.js');
19
20
  require('@tippyjs/react');
20
- require('../../Tooltip-25b6f5fa.js');
21
+ require('../../Tooltip-a9271ef2.js');
21
22
 
22
23
 
23
24
 
package/widgets/index.js CHANGED
@@ -2,24 +2,25 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var AssetGallery = require('../AssetGallery-de336893.js');
6
- require('../defaultTheme-d8298500.js');
5
+ var AssetGallery = require('../AssetGallery-a5a6d3ee.js');
6
+ require('../defaultTheme-38b83bb5.js');
7
7
  require('styled-components');
8
8
  require('react');
9
9
  require('lodash');
10
10
  require('resize-observer-polyfill');
11
11
  require('react-lazy-load-image-component');
12
- require('../ActionButton-9e502e55.js');
13
- require('../Button-191167c8.js');
14
- require('../Checkbox-25c75a7c.js');
12
+ require('../ActionButton-d56265bd.js');
13
+ require('../Button-2ae8c0dc.js');
14
+ require('../Checkbox-4037e160.js');
15
15
  require('nanoid');
16
- require('../Radio-1521b33c.js');
16
+ require('../Radio-96f0bc13.js');
17
17
  require('polished');
18
- require('../TextArea-a73b1729.js');
19
- require('../TextInput-143d6346.js');
20
- require('../Popover-6ca643ba.js');
18
+ require('../TextArea-4be7199f.js');
19
+ require('../TextInput-4deb971c.js');
20
+ require('../Switch-7b696313.js');
21
+ require('../Popover-b16a26a5.js');
21
22
  require('@tippyjs/react');
22
- require('../Tooltip-25b6f5fa.js');
23
+ require('../Tooltip-a9271ef2.js');
23
24
 
24
25
 
25
26