@jobber/components 4.1.1 → 4.1.2

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.
@@ -11,10 +11,10 @@ var useEventListener = require('@use-it/event-listener');
11
11
  var Text = require('../Text-7ce00adb.js');
12
12
  var Icon = require('../Icon-405a216c.js');
13
13
  var Heading = require('../Heading-7b203f7f.js');
14
- var InputText = require('../InputText-95ea24f9.js');
14
+ var InputText = require('../InputText-5d29e10a.js');
15
15
  require('../Typography-9262511f.js');
16
16
  require('@jobber/design');
17
- require('../FormField-79a0a375.js');
17
+ require('../FormField-34e4701b.js');
18
18
  require('uuid');
19
19
  require('react-hook-form');
20
20
  require('../Button-16e043ec.js');
@@ -8,10 +8,10 @@ var React = require('react');
8
8
  var jobberHooks = require('@jobber/hooks');
9
9
  var styleInject_es = require('../style-inject.es-dcee06b6.js');
10
10
  var tslib_es6 = require('../tslib.es6-efe27175.js');
11
- var Option = require('../Option-4b665afd.js');
11
+ var Option = require('../Option-5fd699dc.js');
12
12
  var Button = require('../Button-16e043ec.js');
13
13
  var Text = require('../Text-7ce00adb.js');
14
- require('../FormField-79a0a375.js');
14
+ require('../FormField-34e4701b.js');
15
15
  require('uuid');
16
16
  require('react-hook-form');
17
17
  require('../Icon-405a216c.js');
@@ -12,7 +12,7 @@ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
12
12
 
13
13
  const Form = React.forwardRef(function InternalForm({ onSubmit, children, onStateChange }, ref) {
14
14
  const methods = reactHookForm.useForm({ mode: "onTouched" });
15
- const { errors, trigger, handleSubmit, formState: { isDirty, isValid }, } = methods;
15
+ const { trigger, handleSubmit, formState: { isDirty, isValid, errors }, } = methods;
16
16
  React.useEffect(() => onStateChange && onStateChange({ isDirty, isValid }), [isDirty, isValid]);
17
17
  React.useImperativeHandle(ref, () => ({
18
18
  /**
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var FormField = require('../FormField-79a0a375.js');
5
+ var FormField = require('../FormField-34e4701b.js');
6
6
  require('../tslib.es6-efe27175.js');
7
7
  require('react');
8
8
  require('uuid');
@@ -113,10 +113,11 @@ function FormFieldPostFix({ variation }) {
113
113
  return (React__default["default"].createElement("span", { className: styles.postfix }, variation === "select" ? (React__default["default"].createElement(Icon.Icon, { name: "arrowDown" })) : (React__default["default"].createElement(Spinner.Spinner, { size: "small" }))));
114
114
  }
115
115
 
116
+ // eslint-disable-next-line max-statements
116
117
  function FormField(props) {
117
- var _a;
118
+ var _a, _b;
118
119
  const { actionsRef, autocomplete = true, children, defaultValue, description, disabled, inputRef, inline, keyboard, max, maxLength, min, name, readonly, rows, loading, type = "text", validations, value, onChange, onEnter, onFocus, onBlur, onValidation, } = props;
119
- const { control, errors, setValue, watch } = reactHookForm.useFormContext() != undefined
120
+ const { control, formState: { errors }, setValue, watch, } = reactHookForm.useFormContext() != undefined
120
121
  ? reactHookForm.useFormContext()
121
122
  : reactHookForm.useForm({ mode: "onTouched" });
122
123
  const [identifier] = React.useState(uuid.v1());
@@ -137,10 +138,11 @@ function FormField(props) {
137
138
  setValue(controlledName, newValue);
138
139
  },
139
140
  }));
140
- const error = errors[controlledName] && errors[controlledName].message;
141
+ const message = (_a = errors[controlledName]) === null || _a === void 0 ? void 0 : _a.message;
142
+ const error = getErrorMessage();
141
143
  React.useEffect(() => handleValidation(), [error]);
142
- return (React__default["default"].createElement(reactHookForm.Controller, { control: control, name: controlledName, rules: Object.assign({}, validations), defaultValue: (_a = value !== null && value !== void 0 ? value : defaultValue) !== null && _a !== void 0 ? _a : "", render: (_a) => {
143
- var { onChange: onControllerChange, onBlur: onControllerBlur, name: controllerName } = _a, rest = tslib_es6.__rest(_a, ["onChange", "onBlur", "name"]);
144
+ return (React__default["default"].createElement(reactHookForm.Controller, { control: control, name: controlledName, rules: Object.assign({}, validations), defaultValue: (_b = value !== null && value !== void 0 ? value : defaultValue) !== null && _b !== void 0 ? _b : "", render: (_a) => {
145
+ var _b = _a.field, { onChange: onControllerChange, onBlur: onControllerBlur, name: controllerName } = _b, rest = tslib_es6.__rest(_b, ["onChange", "onBlur", "name"]);
144
146
  const fieldProps = Object.assign(Object.assign(Object.assign({}, rest), { id: identifier, className: styles.input, name: (validations || name) && controllerName, disabled: disabled, readOnly: readonly, inputMode: keyboard, onChange: handleChange }), (description &&
145
147
  !inline && { "aria-describedby": descriptionIdentifier }));
146
148
  const textFieldProps = Object.assign(Object.assign({}, fieldProps), { onBlur: handleBlur, onFocus: handleFocus, onKeyDown: handleKeyDown });
@@ -188,6 +190,12 @@ function FormField(props) {
188
190
  onControllerBlur();
189
191
  }
190
192
  } }));
193
+ function getErrorMessage() {
194
+ if (typeof message === "string") {
195
+ return message;
196
+ }
197
+ return "";
198
+ }
191
199
  function handleValidation() {
192
200
  onValidation && onValidation(error);
193
201
  }
@@ -4,7 +4,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var lodash = require('lodash');
6
6
  var React = require('react');
7
- var FormField = require('../FormField-79a0a375.js');
7
+ var FormField = require('../FormField-34e4701b.js');
8
8
  var DatePicker = require('../DatePicker-0696b0f0.js');
9
9
  require('../tslib.es6-efe27175.js');
10
10
  require('uuid');
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var React = require('react');
6
- var FormField = require('../FormField-79a0a375.js');
6
+ var FormField = require('../FormField-34e4701b.js');
7
7
  require('../tslib.es6-efe27175.js');
8
8
  require('uuid');
9
9
  require('react-hook-form');
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var React = require('react');
6
- var FormField = require('../FormField-79a0a375.js');
6
+ var FormField = require('../FormField-34e4701b.js');
7
7
  require('../tslib.es6-efe27175.js');
8
8
  require('uuid');
9
9
  require('react-hook-form');
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var React = require('react');
6
- var FormField = require('../FormField-79a0a375.js');
6
+ var FormField = require('../FormField-34e4701b.js');
7
7
  require('../tslib.es6-efe27175.js');
8
8
  require('uuid');
9
9
  require('react-hook-form');
@@ -2,9 +2,9 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var InputText = require('../InputText-95ea24f9.js');
5
+ var InputText = require('../InputText-5d29e10a.js');
6
6
  require('react');
7
- require('../FormField-79a0a375.js');
7
+ require('../FormField-34e4701b.js');
8
8
  require('../tslib.es6-efe27175.js');
9
9
  require('uuid');
10
10
  require('react-hook-form');
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  var React = require('react');
4
- var FormField = require('./FormField-79a0a375.js');
4
+ var FormField = require('./FormField-34e4701b.js');
5
5
 
6
6
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
7
7
 
@@ -6,7 +6,7 @@ var tslib_es6 = require('../tslib.es6-efe27175.js');
6
6
  var React = require('react');
7
7
  var debounce = require('lodash/debounce');
8
8
  var temporal = require('@std-proposal/temporal');
9
- var FormField = require('../FormField-79a0a375.js');
9
+ var FormField = require('../FormField-34e4701b.js');
10
10
  require('uuid');
11
11
  require('react-hook-form');
12
12
  require('../style-inject.es-dcee06b6.js');
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  var React = require('react');
4
- var FormField = require('./FormField-79a0a375.js');
4
+ var FormField = require('./FormField-34e4701b.js');
5
5
 
6
6
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
7
7
 
@@ -2,9 +2,9 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var Option = require('../Option-4b665afd.js');
5
+ var Option = require('../Option-5fd699dc.js');
6
6
  require('react');
7
- require('../FormField-79a0a375.js');
7
+ require('../FormField-34e4701b.js');
8
8
  require('../tslib.es6-efe27175.js');
9
9
  require('uuid');
10
10
  require('react-hook-form');
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jobber/components",
3
- "version": "4.1.1",
3
+ "version": "4.1.2",
4
4
  "license": "MIT",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -19,7 +19,7 @@
19
19
  "dependencies": {
20
20
  "@jobber/design": "^0.29.5",
21
21
  "@jobber/formatters": "^0.2.2",
22
- "@jobber/hooks": "^2.0.0",
22
+ "@jobber/hooks": "^2.0.1",
23
23
  "@popperjs/core": "^2.0.6",
24
24
  "@std-proposal/temporal": "0.0.1",
25
25
  "@tanstack/react-table": "8.5.13",
@@ -39,7 +39,7 @@
39
39
  "react-countdown": "^2.3.2",
40
40
  "react-datepicker": "^4.10.0",
41
41
  "react-dropzone": "^11.0.2",
42
- "react-hook-form": "^6.15.8",
42
+ "react-hook-form": "^7.43.7",
43
43
  "react-markdown": "^8.0.3",
44
44
  "react-popper": "^2.2.5",
45
45
  "react-router-dom": "^5.3.4",
@@ -82,5 +82,5 @@
82
82
  "> 1%",
83
83
  "IE 10"
84
84
  ],
85
- "gitHead": "9891d91bae57b35d2693c71ec7a9c2f29df91537"
85
+ "gitHead": "514a966ad2c394e4b88de2b5af98ad61017a16fe"
86
86
  }