@sb1/ffe-feedback-react 1.2.2 → 2.0.0

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.
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  import i18n from './i18n/i18n';
3
- import { func, oneOf } from 'prop-types';
3
+ import { func, oneOf, string } from 'prop-types';
4
4
  import { ThumbUp, ThumbUpFill, ThumbDown, ThumbDownFill } from './icons';
5
5
  export var Thumbs = {
6
6
  UP: 'THUMB_UP',
@@ -8,25 +8,28 @@ export var Thumbs = {
8
8
  };
9
9
  var FeedbackThumbs = function FeedbackThumbs(_ref) {
10
10
  var language = _ref.language,
11
- _onClick = _ref.onClick;
11
+ _onClick = _ref.onClick,
12
+ headingId = _ref.headingId;
12
13
  return /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("button", {
13
14
  "aria-label": i18n[language].ARIA_LABEL_THUMB_UP,
14
- "aria-describedby": "feedback-heading",
15
+ "aria-describedby": headingId,
15
16
  className: "ffe-feedback__thumb",
16
17
  onClick: function onClick() {
17
18
  return _onClick(Thumbs.UP);
18
- }
19
+ },
20
+ type: "button"
19
21
  }, /*#__PURE__*/React.createElement(ThumbUp, {
20
22
  className: "ffe-feedback__thumb-icon"
21
23
  }), /*#__PURE__*/React.createElement(ThumbUpFill, {
22
24
  className: "ffe-feedback__thumb-icon--fill"
23
25
  })), /*#__PURE__*/React.createElement("button", {
24
26
  "aria-label": i18n[language].ARIA_LABEL_THUMB_DOWN,
25
- "aria-describedby": "feedback-heading",
27
+ "aria-describedby": headingId,
26
28
  className: "ffe-feedback__thumb",
27
29
  onClick: function onClick() {
28
30
  return _onClick(Thumbs.DOWN);
29
- }
31
+ },
32
+ type: "button"
30
33
  }, /*#__PURE__*/React.createElement(ThumbDown, {
31
34
  className: "ffe-feedback__thumb-icon"
32
35
  }), /*#__PURE__*/React.createElement(ThumbDownFill, {
@@ -36,7 +39,8 @@ var FeedbackThumbs = function FeedbackThumbs(_ref) {
36
39
  export default FeedbackThumbs;
37
40
  FeedbackThumbs.propTypes = {
38
41
  language: oneOf(['nb', 'nn', 'en']),
39
- onClick: func.isRequired
42
+ onClick: func.isRequired,
43
+ headingId: string.isRequired
40
44
  };
41
45
  FeedbackThumbs.defaultProps = {
42
46
  language: 'nb'
package/es/feedback.js CHANGED
@@ -8,21 +8,25 @@ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o =
8
8
  function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
9
9
  function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
10
10
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
11
- import React, { useState } from 'react';
12
- import { Heading2 } from '@sb1/ffe-core-react';
11
+ import React, { useState, useRef } from 'react';
12
+ import { flushSync } from 'react-dom';
13
13
  import { Animation } from './animation';
14
14
  import { func, oneOf, shape, string } from 'prop-types';
15
15
  import i18n from './i18n/i18n';
16
16
  import FeedbackThumbs, { Thumbs } from './feedback-thumbs';
17
17
  import classNames from 'classnames';
18
18
  import FeedbackExpanded from './feedback-expanded';
19
+ import { v4 as uuid } from 'uuid';
19
20
  export var Feedback = function Feedback(_ref) {
20
- var language = _ref.language,
21
+ var headingLevel = _ref.headingLevel,
22
+ language = _ref.language,
21
23
  onThumbClick = _ref.onThumbClick,
22
24
  onFeedbackSend = _ref.onFeedbackSend,
23
25
  bgColor = _ref.bgColor,
24
26
  bgDarkmodeColor = _ref.bgDarkmodeColor,
25
27
  contactLink = _ref.contactLink;
28
+ var feedbackSentRef = useRef();
29
+ var expandedRef = useRef();
26
30
  var _useState = useState(),
27
31
  _useState2 = _slicedToArray(_useState, 2),
28
32
  feedbackThumbClicked = _useState2[0],
@@ -35,14 +39,23 @@ export var Feedback = function Feedback(_ref) {
35
39
  _useState6 = _slicedToArray(_useState5, 2),
36
40
  feedbackSent = _useState6[0],
37
41
  setFeedbackSent = _useState6[1];
42
+ var headingId = useRef(uuid()).current;
38
43
  var feedbackClassnames = classNames('ffe-feedback', _defineProperty(_defineProperty({}, "ffe-feedback--bg-".concat(bgColor), bgColor), "ffe-feedback--dm-bg-".concat(bgDarkmodeColor), bgDarkmodeColor));
39
44
  var handleThumbClicked = function handleThumbClicked(thumb) {
40
45
  setFeedbackThumbClicked(thumb);
41
- setExpanded(!expanded);
46
+ flushSync(function () {
47
+ setExpanded(function (prevState) {
48
+ return !prevState;
49
+ });
50
+ });
51
+ expandedRef.current.focus();
42
52
  onThumbClick(thumb);
43
53
  };
44
54
  var handleFeedbackSent = function handleFeedbackSent(feedbackText) {
45
- setFeedbackSent(true);
55
+ flushSync(function () {
56
+ setFeedbackSent(true);
57
+ });
58
+ feedbackSentRef.current.focus();
46
59
  onFeedbackSend(feedbackText);
47
60
  };
48
61
  if (feedbackSent) {
@@ -50,8 +63,10 @@ export var Feedback = function Feedback(_ref) {
50
63
  className: feedbackClassnames
51
64
  }, /*#__PURE__*/React.createElement("div", {
52
65
  className: "ffe-feedback__content"
53
- }, /*#__PURE__*/React.createElement(Heading2, {
54
- lookLike: 4
66
+ }, /*#__PURE__*/React.createElement("h".concat(headingLevel), {
67
+ ref: feedbackSentRef,
68
+ tabIndex: -1,
69
+ className: 'ffe-h4'
55
70
  }, i18n[language].FEEDBACK_SENT_HEADING), /*#__PURE__*/React.createElement(Animation, null)));
56
71
  }
57
72
  if (expanded) {
@@ -59,11 +74,11 @@ export var Feedback = function Feedback(_ref) {
59
74
  className: feedbackClassnames
60
75
  }, /*#__PURE__*/React.createElement("div", {
61
76
  className: "ffe-feedback__content"
62
- }, feedbackThumbClicked === Thumbs.UP ? /*#__PURE__*/React.createElement(Heading2, {
63
- lookLike: 5
64
- }, i18n[language].FEEDBACK_GOOD) : /*#__PURE__*/React.createElement(Heading2, {
65
- lookLike: 5
66
- }, i18n[language].FEEDBACK_IMPROVE), /*#__PURE__*/React.createElement(FeedbackExpanded, {
77
+ }, /*#__PURE__*/React.createElement("h".concat(headingLevel), {
78
+ ref: expandedRef,
79
+ tabIndex: -1,
80
+ className: 'ffe-h5'
81
+ }, feedbackThumbClicked === Thumbs.UP ? i18n[language].FEEDBACK_GOOD : i18n[language].FEEDBACK_IMPROVE), /*#__PURE__*/React.createElement(FeedbackExpanded, {
67
82
  language: language,
68
83
  onSend: handleFeedbackSent,
69
84
  onCancel: function onCancel() {
@@ -76,16 +91,18 @@ export var Feedback = function Feedback(_ref) {
76
91
  className: feedbackClassnames
77
92
  }, /*#__PURE__*/React.createElement("div", {
78
93
  className: "ffe-feedback__content"
79
- }, /*#__PURE__*/React.createElement(Heading2, {
80
- id: "feedback-heading",
81
- lookLike: 4
94
+ }, /*#__PURE__*/React.createElement("h".concat(headingLevel), {
95
+ id: headingId,
96
+ className: 'ffe-h4'
82
97
  }, i18n[language].FEEDBACK_NOT_SENT_HEADING), /*#__PURE__*/React.createElement(FeedbackThumbs, {
83
98
  onClick: handleThumbClicked,
84
- language: language
99
+ language: language,
100
+ headingId: headingId
85
101
  })));
86
102
  };
87
103
  export default Feedback;
88
104
  Feedback.propTypes = {
105
+ headingLevel: oneOf([1, 2, 3, 4, 5, 6]).isRequired,
89
106
  language: oneOf(['nb', 'nn', 'en']),
90
107
  onThumbClick: func.isRequired,
91
108
  onFeedbackSend: func.isRequired,
@@ -2,6 +2,7 @@ function _extends() { _extends = Object.assign ? Object.assign.bind() : function
2
2
  import * as React from 'react';
3
3
  var ThumbDownFill = function ThumbDownFill(props) {
4
4
  return /*#__PURE__*/React.createElement("svg", _extends({
5
+ "aria-hidden": true,
5
6
  xmlns: "http://www.w3.org/2000/svg",
6
7
  width: 48,
7
8
  height: 48,
@@ -2,6 +2,7 @@ function _extends() { _extends = Object.assign ? Object.assign.bind() : function
2
2
  import * as React from 'react';
3
3
  var ThumbDown = function ThumbDown(props) {
4
4
  return /*#__PURE__*/React.createElement("svg", _extends({
5
+ "aria-hidden": true,
5
6
  xmlns: "http://www.w3.org/2000/svg",
6
7
  width: 48,
7
8
  height: 48,
@@ -2,6 +2,7 @@ function _extends() { _extends = Object.assign ? Object.assign.bind() : function
2
2
  import * as React from 'react';
3
3
  var ThumbUpFill = function ThumbUpFill(props) {
4
4
  return /*#__PURE__*/React.createElement("svg", _extends({
5
+ "aria-hidden": true,
5
6
  xmlns: "http://www.w3.org/2000/svg",
6
7
  width: 48,
7
8
  height: 48,
@@ -2,6 +2,7 @@ function _extends() { _extends = Object.assign ? Object.assign.bind() : function
2
2
  import * as React from 'react';
3
3
  var ThumbUp = function ThumbUp(props) {
4
4
  return /*#__PURE__*/React.createElement("svg", _extends({
5
+ "aria-hidden": true,
5
6
  xmlns: "http://www.w3.org/2000/svg",
6
7
  width: 48,
7
8
  height: 48,
@@ -15,25 +15,28 @@ var Thumbs = exports.Thumbs = {
15
15
  };
16
16
  var FeedbackThumbs = function FeedbackThumbs(_ref) {
17
17
  var language = _ref.language,
18
- _onClick = _ref.onClick;
18
+ _onClick = _ref.onClick,
19
+ headingId = _ref.headingId;
19
20
  return /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement("button", {
20
21
  "aria-label": _i18n.default[language].ARIA_LABEL_THUMB_UP,
21
- "aria-describedby": "feedback-heading",
22
+ "aria-describedby": headingId,
22
23
  className: "ffe-feedback__thumb",
23
24
  onClick: function onClick() {
24
25
  return _onClick(Thumbs.UP);
25
- }
26
+ },
27
+ type: "button"
26
28
  }, /*#__PURE__*/_react.default.createElement(_icons.ThumbUp, {
27
29
  className: "ffe-feedback__thumb-icon"
28
30
  }), /*#__PURE__*/_react.default.createElement(_icons.ThumbUpFill, {
29
31
  className: "ffe-feedback__thumb-icon--fill"
30
32
  })), /*#__PURE__*/_react.default.createElement("button", {
31
33
  "aria-label": _i18n.default[language].ARIA_LABEL_THUMB_DOWN,
32
- "aria-describedby": "feedback-heading",
34
+ "aria-describedby": headingId,
33
35
  className: "ffe-feedback__thumb",
34
36
  onClick: function onClick() {
35
37
  return _onClick(Thumbs.DOWN);
36
- }
38
+ },
39
+ type: "button"
37
40
  }, /*#__PURE__*/_react.default.createElement(_icons.ThumbDown, {
38
41
  className: "ffe-feedback__thumb-icon"
39
42
  }), /*#__PURE__*/_react.default.createElement(_icons.ThumbDownFill, {
@@ -43,7 +46,8 @@ var FeedbackThumbs = function FeedbackThumbs(_ref) {
43
46
  var _default = exports.default = FeedbackThumbs;
44
47
  FeedbackThumbs.propTypes = {
45
48
  language: (0, _propTypes.oneOf)(['nb', 'nn', 'en']),
46
- onClick: _propTypes.func.isRequired
49
+ onClick: _propTypes.func.isRequired,
50
+ headingId: _propTypes.string.isRequired
47
51
  };
48
52
  FeedbackThumbs.defaultProps = {
49
53
  language: 'nb'
package/lib/feedback.js CHANGED
@@ -6,13 +6,14 @@ Object.defineProperty(exports, "__esModule", {
6
6
  });
7
7
  exports.default = exports.Feedback = void 0;
8
8
  var _react = _interopRequireWildcard(require("react"));
9
- var _ffeCoreReact = require("@sb1/ffe-core-react");
9
+ var _reactDom = require("react-dom");
10
10
  var _animation = require("./animation");
11
11
  var _propTypes = require("prop-types");
12
12
  var _i18n = _interopRequireDefault(require("./i18n/i18n"));
13
13
  var _feedbackThumbs = _interopRequireWildcard(require("./feedback-thumbs"));
14
14
  var _classnames = _interopRequireDefault(require("classnames"));
15
15
  var _feedbackExpanded = _interopRequireDefault(require("./feedback-expanded"));
16
+ var _uuid = require("uuid");
16
17
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
18
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
18
19
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
@@ -26,12 +27,15 @@ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len
26
27
  function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
27
28
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
28
29
  var Feedback = exports.Feedback = function Feedback(_ref) {
29
- var language = _ref.language,
30
+ var headingLevel = _ref.headingLevel,
31
+ language = _ref.language,
30
32
  onThumbClick = _ref.onThumbClick,
31
33
  onFeedbackSend = _ref.onFeedbackSend,
32
34
  bgColor = _ref.bgColor,
33
35
  bgDarkmodeColor = _ref.bgDarkmodeColor,
34
36
  contactLink = _ref.contactLink;
37
+ var feedbackSentRef = (0, _react.useRef)();
38
+ var expandedRef = (0, _react.useRef)();
35
39
  var _useState = (0, _react.useState)(),
36
40
  _useState2 = _slicedToArray(_useState, 2),
37
41
  feedbackThumbClicked = _useState2[0],
@@ -44,14 +48,23 @@ var Feedback = exports.Feedback = function Feedback(_ref) {
44
48
  _useState6 = _slicedToArray(_useState5, 2),
45
49
  feedbackSent = _useState6[0],
46
50
  setFeedbackSent = _useState6[1];
51
+ var headingId = (0, _react.useRef)((0, _uuid.v4)()).current;
47
52
  var feedbackClassnames = (0, _classnames.default)('ffe-feedback', _defineProperty(_defineProperty({}, "ffe-feedback--bg-".concat(bgColor), bgColor), "ffe-feedback--dm-bg-".concat(bgDarkmodeColor), bgDarkmodeColor));
48
53
  var handleThumbClicked = function handleThumbClicked(thumb) {
49
54
  setFeedbackThumbClicked(thumb);
50
- setExpanded(!expanded);
55
+ (0, _reactDom.flushSync)(function () {
56
+ setExpanded(function (prevState) {
57
+ return !prevState;
58
+ });
59
+ });
60
+ expandedRef.current.focus();
51
61
  onThumbClick(thumb);
52
62
  };
53
63
  var handleFeedbackSent = function handleFeedbackSent(feedbackText) {
54
- setFeedbackSent(true);
64
+ (0, _reactDom.flushSync)(function () {
65
+ setFeedbackSent(true);
66
+ });
67
+ feedbackSentRef.current.focus();
55
68
  onFeedbackSend(feedbackText);
56
69
  };
57
70
  if (feedbackSent) {
@@ -59,8 +72,10 @@ var Feedback = exports.Feedback = function Feedback(_ref) {
59
72
  className: feedbackClassnames
60
73
  }, /*#__PURE__*/_react.default.createElement("div", {
61
74
  className: "ffe-feedback__content"
62
- }, /*#__PURE__*/_react.default.createElement(_ffeCoreReact.Heading2, {
63
- lookLike: 4
75
+ }, /*#__PURE__*/_react.default.createElement("h".concat(headingLevel), {
76
+ ref: feedbackSentRef,
77
+ tabIndex: -1,
78
+ className: 'ffe-h4'
64
79
  }, _i18n.default[language].FEEDBACK_SENT_HEADING), /*#__PURE__*/_react.default.createElement(_animation.Animation, null)));
65
80
  }
66
81
  if (expanded) {
@@ -68,11 +83,11 @@ var Feedback = exports.Feedback = function Feedback(_ref) {
68
83
  className: feedbackClassnames
69
84
  }, /*#__PURE__*/_react.default.createElement("div", {
70
85
  className: "ffe-feedback__content"
71
- }, feedbackThumbClicked === _feedbackThumbs.Thumbs.UP ? /*#__PURE__*/_react.default.createElement(_ffeCoreReact.Heading2, {
72
- lookLike: 5
73
- }, _i18n.default[language].FEEDBACK_GOOD) : /*#__PURE__*/_react.default.createElement(_ffeCoreReact.Heading2, {
74
- lookLike: 5
75
- }, _i18n.default[language].FEEDBACK_IMPROVE), /*#__PURE__*/_react.default.createElement(_feedbackExpanded.default, {
86
+ }, /*#__PURE__*/_react.default.createElement("h".concat(headingLevel), {
87
+ ref: expandedRef,
88
+ tabIndex: -1,
89
+ className: 'ffe-h5'
90
+ }, feedbackThumbClicked === _feedbackThumbs.Thumbs.UP ? _i18n.default[language].FEEDBACK_GOOD : _i18n.default[language].FEEDBACK_IMPROVE), /*#__PURE__*/_react.default.createElement(_feedbackExpanded.default, {
76
91
  language: language,
77
92
  onSend: handleFeedbackSent,
78
93
  onCancel: function onCancel() {
@@ -85,16 +100,18 @@ var Feedback = exports.Feedback = function Feedback(_ref) {
85
100
  className: feedbackClassnames
86
101
  }, /*#__PURE__*/_react.default.createElement("div", {
87
102
  className: "ffe-feedback__content"
88
- }, /*#__PURE__*/_react.default.createElement(_ffeCoreReact.Heading2, {
89
- id: "feedback-heading",
90
- lookLike: 4
103
+ }, /*#__PURE__*/_react.default.createElement("h".concat(headingLevel), {
104
+ id: headingId,
105
+ className: 'ffe-h4'
91
106
  }, _i18n.default[language].FEEDBACK_NOT_SENT_HEADING), /*#__PURE__*/_react.default.createElement(_feedbackThumbs.default, {
92
107
  onClick: handleThumbClicked,
93
- language: language
108
+ language: language,
109
+ headingId: headingId
94
110
  })));
95
111
  };
96
112
  var _default = exports.default = Feedback;
97
113
  Feedback.propTypes = {
114
+ headingLevel: (0, _propTypes.oneOf)([1, 2, 3, 4, 5, 6]).isRequired,
98
115
  language: (0, _propTypes.oneOf)(['nb', 'nn', 'en']),
99
116
  onThumbClick: _propTypes.func.isRequired,
100
117
  onFeedbackSend: _propTypes.func.isRequired,
@@ -11,6 +11,7 @@ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e;
11
11
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
12
12
  var ThumbDownFill = function ThumbDownFill(props) {
13
13
  return /*#__PURE__*/React.createElement("svg", _extends({
14
+ "aria-hidden": true,
14
15
  xmlns: "http://www.w3.org/2000/svg",
15
16
  width: 48,
16
17
  height: 48,
@@ -11,6 +11,7 @@ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e;
11
11
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
12
12
  var ThumbDown = function ThumbDown(props) {
13
13
  return /*#__PURE__*/React.createElement("svg", _extends({
14
+ "aria-hidden": true,
14
15
  xmlns: "http://www.w3.org/2000/svg",
15
16
  width: 48,
16
17
  height: 48,
@@ -11,6 +11,7 @@ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e;
11
11
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
12
12
  var ThumbUpFill = function ThumbUpFill(props) {
13
13
  return /*#__PURE__*/React.createElement("svg", _extends({
14
+ "aria-hidden": true,
14
15
  xmlns: "http://www.w3.org/2000/svg",
15
16
  width: 48,
16
17
  height: 48,
@@ -11,6 +11,7 @@ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e;
11
11
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
12
12
  var ThumbUp = function ThumbUp(props) {
13
13
  return /*#__PURE__*/React.createElement("svg", _extends({
14
+ "aria-hidden": true,
14
15
  xmlns: "http://www.w3.org/2000/svg",
15
16
  width: 48,
16
17
  height: 48,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sb1/ffe-feedback-react",
3
- "version": "1.2.2",
3
+ "version": "2.0.0",
4
4
  "description": "React component for ffe-feedback",
5
5
  "license": "MIT",
6
6
  "author": "SpareBank 1",
@@ -27,7 +27,7 @@
27
27
  "dependencies": {
28
28
  "@sb1/ffe-buttons-react": "^20.0.8",
29
29
  "@sb1/ffe-collapse-react": "^2.0.7",
30
- "@sb1/ffe-core-react": "^7.1.5",
30
+ "@sb1/ffe-core-react": "^7.2.0",
31
31
  "@sb1/ffe-feedback": "^1.2.1",
32
32
  "@sb1/ffe-form-react": "^14.0.9",
33
33
  "classnames": "^2.3.1",
@@ -48,5 +48,5 @@
48
48
  "publishConfig": {
49
49
  "access": "public"
50
50
  },
51
- "gitHead": "f198c312a3de83e7a815d03e92a1018079e8aa3f"
51
+ "gitHead": "0ce512aa5538a3c1ed082f9afe0c699ddc9c8a35"
52
52
  }
package/types/index.d.ts CHANGED
@@ -15,6 +15,7 @@ export interface ContactLink {
15
15
  }
16
16
 
17
17
  export interface FeedbackProps extends React.ComponentProps<'div'> {
18
+ headingLevel: 1 | 2 | 3 | 4 | 5 | 6;
18
19
  language?: 'nb' | 'nn' | 'en';
19
20
  onThumbClick: (thumb: ThumbType) => void;
20
21
  onFeedbackSend: (feedbackText: string) => void;