@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.
- package/es/feedback-thumbs.js +11 -7
- package/es/feedback.js +33 -16
- package/es/icons/thumb-down-fill.js +1 -0
- package/es/icons/thumb-down.js +1 -0
- package/es/icons/thumb-up-fill.js +1 -0
- package/es/icons/thumb-up.js +1 -0
- package/lib/feedback-thumbs.js +10 -6
- package/lib/feedback.js +32 -15
- package/lib/icons/thumb-down-fill.js +1 -0
- package/lib/icons/thumb-down.js +1 -0
- package/lib/icons/thumb-up-fill.js +1 -0
- package/lib/icons/thumb-up.js +1 -0
- package/package.json +3 -3
- package/types/index.d.ts +1 -0
package/es/feedback-thumbs.js
CHANGED
|
@@ -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":
|
|
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":
|
|
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 {
|
|
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
|
|
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
|
-
|
|
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
|
-
|
|
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(
|
|
54
|
-
|
|
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
|
-
},
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
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(
|
|
80
|
-
id:
|
|
81
|
-
|
|
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,
|
package/es/icons/thumb-down.js
CHANGED
|
@@ -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,
|
package/es/icons/thumb-up.js
CHANGED
|
@@ -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,
|
package/lib/feedback-thumbs.js
CHANGED
|
@@ -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":
|
|
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":
|
|
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
|
|
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
|
|
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
|
-
|
|
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
|
-
|
|
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(
|
|
63
|
-
|
|
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
|
-
},
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
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(
|
|
89
|
-
id:
|
|
90
|
-
|
|
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,
|
package/lib/icons/thumb-down.js
CHANGED
|
@@ -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,
|
package/lib/icons/thumb-up.js
CHANGED
|
@@ -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": "
|
|
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.
|
|
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": "
|
|
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;
|