@atlaskit/reactions 21.1.0 → 21.2.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.
- package/CHANGELOG.md +18 -0
- package/dist/cjs/analytics/index.js +11 -1
- package/dist/cjs/analytics/ufo.js +73 -0
- package/dist/cjs/components/ReactionPicker.js +17 -4
- package/dist/cjs/components/UfoErrorBoundary.js +68 -0
- package/dist/cjs/components/index.js +9 -1
- package/dist/cjs/containers/ConnectedReactionPicker.js +44 -0
- package/dist/cjs/containers/ConnectedReactionsView.js +131 -0
- package/dist/cjs/containers/index.js +4 -6
- package/dist/cjs/index.js +11 -3
- package/dist/cjs/{reaction-store → store}/ReactionConsumer.js +0 -0
- package/dist/cjs/{reaction-store → store}/ReactionsStore.js +63 -14
- package/dist/cjs/{reaction-store → store}/batched.js +0 -0
- package/dist/cjs/{reaction-store → store}/index.js +0 -0
- package/dist/cjs/{reaction-store → store}/utils.js +0 -0
- package/dist/cjs/version.json +1 -1
- package/dist/es2019/analytics/index.js +2 -0
- package/dist/es2019/analytics/ufo.js +62 -0
- package/dist/es2019/components/ReactionPicker.js +13 -3
- package/dist/es2019/components/UfoErrorBoundary.js +13 -0
- package/dist/es2019/components/index.js +2 -1
- package/dist/es2019/containers/ConnectedReactionPicker.js +27 -0
- package/dist/es2019/containers/ConnectedReactionsView.js +112 -0
- package/dist/es2019/containers/index.js +2 -2
- package/dist/es2019/index.js +2 -1
- package/dist/es2019/{reaction-store → store}/ReactionConsumer.js +0 -0
- package/dist/es2019/{reaction-store → store}/ReactionsStore.js +59 -13
- package/dist/es2019/{reaction-store → store}/batched.js +0 -0
- package/dist/es2019/{reaction-store → store}/index.js +0 -0
- package/dist/es2019/{reaction-store → store}/utils.js +0 -0
- package/dist/es2019/version.json +1 -1
- package/dist/esm/analytics/index.js +2 -0
- package/dist/esm/analytics/ufo.js +62 -0
- package/dist/esm/components/ReactionPicker.js +13 -3
- package/dist/esm/components/UfoErrorBoundary.js +54 -0
- package/dist/esm/components/index.js +2 -1
- package/dist/esm/containers/ConnectedReactionPicker.js +29 -0
- package/dist/esm/containers/ConnectedReactionsView.js +108 -0
- package/dist/esm/containers/index.js +2 -2
- package/dist/esm/index.js +2 -1
- package/dist/esm/{reaction-store → store}/ReactionConsumer.js +0 -0
- package/dist/esm/{reaction-store → store}/ReactionsStore.js +61 -13
- package/dist/esm/{reaction-store → store}/batched.js +0 -0
- package/dist/esm/{reaction-store → store}/index.js +0 -0
- package/dist/esm/{reaction-store → store}/utils.js +0 -0
- package/dist/esm/version.json +1 -1
- package/dist/types/analytics/index.d.ts +1 -0
- package/dist/types/analytics/ufo.d.ts +33 -0
- package/dist/types/components/ReactionPicker.d.ts +2 -1
- package/dist/types/components/Reactions.d.ts +7 -5
- package/dist/types/components/UfoErrorBoundary.d.ts +8 -0
- package/dist/types/components/index.d.ts +2 -0
- package/dist/types/containers/ConnectedReactionPicker.d.ts +10 -0
- package/dist/types/containers/ConnectedReactionsView.d.ts +19 -0
- package/dist/types/containers/index.d.ts +2 -2
- package/dist/types/index.d.ts +3 -2
- package/dist/types/store/ReactionConsumer.d.ts +29 -0
- package/dist/types/{reaction-store → store}/ReactionsStore.d.ts +11 -7
- package/dist/types/{reaction-store → store}/batched.d.ts +0 -0
- package/dist/types/{reaction-store → store}/index.d.ts +0 -0
- package/dist/types/{reaction-store → store}/utils.d.ts +0 -0
- package/dist/types/types/Actions.d.ts +6 -0
- package/dist/types/types/index.d.ts +1 -1
- package/docs/0-intro.tsx +1 -1
- package/package.json +5 -3
- package/dist/cjs/containers/ReactionsContainer.js +0 -142
- package/dist/cjs/containers/ReactionsPickerContainer.js +0 -76
- package/dist/es2019/containers/ReactionsContainer.js +0 -96
- package/dist/es2019/containers/ReactionsPickerContainer.js +0 -26
- package/dist/esm/containers/ReactionsContainer.js +0 -125
- package/dist/esm/containers/ReactionsPickerContainer.js +0 -62
- package/dist/types/containers/ReactionsContainer.d.ts +0 -22
- package/dist/types/containers/ReactionsPickerContainer.d.ts +0 -18
- package/dist/types/reaction-store/ReactionConsumer.d.ts +0 -32
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,23 @@
|
|
|
1
1
|
# @atlaskit/reactions
|
|
2
2
|
|
|
3
|
+
## 21.2.2
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [`58a563ece8f`](https://bitbucket.org/atlassian/atlassian-frontend/commits/58a563ece8f) - Add ComponentName as part of the exported enum collection for easier consumption inside products
|
|
8
|
+
|
|
9
|
+
## 21.2.1
|
|
10
|
+
|
|
11
|
+
### Patch Changes
|
|
12
|
+
|
|
13
|
+
- [`783c8c02335`](https://bitbucket.org/atlassian/atlassian-frontend/commits/783c8c02335) - Update the reactions rendered UFO type
|
|
14
|
+
|
|
15
|
+
## 21.2.0
|
|
16
|
+
|
|
17
|
+
### Minor Changes
|
|
18
|
+
|
|
19
|
+
- [`ed9ab4d82a3`](https://bitbucket.org/atlassian/atlassian-frontend/commits/ed9ab4d82a3) - Adds "reactions-rendered", "reactions-picker-opened", "reaction-added" and "reaction-removed" to UFO experiences
|
|
20
|
+
|
|
3
21
|
## 21.1.0
|
|
4
22
|
|
|
5
23
|
### Minor Changes
|
|
@@ -2,10 +2,12 @@
|
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
4
|
|
|
5
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
6
|
+
|
|
5
7
|
Object.defineProperty(exports, "__esModule", {
|
|
6
8
|
value: true
|
|
7
9
|
});
|
|
8
|
-
exports.createRestSucceededEvent = exports.createRestFailedEvent = exports.createReactionsRenderedEvent = exports.createReactionSelectionEvent = exports.createReactionHoveredEvent = exports.createReactionClickedEvent = exports.createPickerMoreClickedEvent = exports.createPickerCancelledEvent = exports.createPickerButtonClickedEvent = exports.createAndFireSafe = exports.createAndFireEventInElementsChannel = void 0;
|
|
10
|
+
exports.createRestSucceededEvent = exports.createRestFailedEvent = exports.createReactionsRenderedEvent = exports.createReactionSelectionEvent = exports.createReactionHoveredEvent = exports.createReactionClickedEvent = exports.createPickerMoreClickedEvent = exports.createPickerCancelledEvent = exports.createPickerButtonClickedEvent = exports.createAndFireSafe = exports.createAndFireEventInElementsChannel = exports.UFO = void 0;
|
|
9
11
|
|
|
10
12
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
11
13
|
|
|
@@ -15,6 +17,14 @@ var _analyticsGasTypes = require("@atlaskit/analytics-gas-types");
|
|
|
15
17
|
|
|
16
18
|
var _version = require("../version.json");
|
|
17
19
|
|
|
20
|
+
var _UFO = _interopRequireWildcard(require("./ufo"));
|
|
21
|
+
|
|
22
|
+
exports.UFO = _UFO;
|
|
23
|
+
|
|
24
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
25
|
+
|
|
26
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
27
|
+
|
|
18
28
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
19
29
|
|
|
20
30
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.ReactionsRendered = exports.ReactionsRemove = exports.ReactionsAdd = exports.PickerRender = exports.ExperienceName = exports.ComponentName = void 0;
|
|
7
|
+
|
|
8
|
+
var _ufo = require("@atlaskit/ufo");
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* Helper method for create the config type for an individual/Concurrent experience
|
|
12
|
+
* @param componentName
|
|
13
|
+
*/
|
|
14
|
+
var createExperienceConfig = function createExperienceConfig(componentName, type, performanceType) {
|
|
15
|
+
return {
|
|
16
|
+
platform: {
|
|
17
|
+
component: componentName
|
|
18
|
+
},
|
|
19
|
+
type: type,
|
|
20
|
+
performanceType: performanceType
|
|
21
|
+
};
|
|
22
|
+
};
|
|
23
|
+
/**
|
|
24
|
+
* Types of experiences
|
|
25
|
+
*/
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
var ExperienceName;
|
|
29
|
+
/**
|
|
30
|
+
* UFO types of components been instrumented
|
|
31
|
+
*/
|
|
32
|
+
|
|
33
|
+
exports.ExperienceName = ExperienceName;
|
|
34
|
+
|
|
35
|
+
(function (ExperienceName) {
|
|
36
|
+
ExperienceName["REACTIONS_RENDERED"] = "reactions-rendered";
|
|
37
|
+
ExperienceName["PICKER_OPENED"] = "reactions-picker-opened";
|
|
38
|
+
ExperienceName["REACTION_ADDED"] = "reaction-added";
|
|
39
|
+
ExperienceName["REACTION_REMOVED"] = "reaction-removed";
|
|
40
|
+
})(ExperienceName || (exports.ExperienceName = ExperienceName = {}));
|
|
41
|
+
|
|
42
|
+
var ComponentName;
|
|
43
|
+
/**
|
|
44
|
+
* Experience when the emoji picker is opened
|
|
45
|
+
*/
|
|
46
|
+
|
|
47
|
+
exports.ComponentName = ComponentName;
|
|
48
|
+
|
|
49
|
+
(function (ComponentName) {
|
|
50
|
+
ComponentName["PICKER_RENDERED"] = "reactions-picker";
|
|
51
|
+
ComponentName["REACTIONS"] = "reactions-list";
|
|
52
|
+
})(ComponentName || (exports.ComponentName = ComponentName = {}));
|
|
53
|
+
|
|
54
|
+
var PickerRender = new _ufo.UFOExperience(ExperienceName.PICKER_OPENED, createExperienceConfig(ComponentName.PICKER_RENDERED, _ufo.ExperienceTypes.Experience, _ufo.ExperiencePerformanceTypes.InlineResult));
|
|
55
|
+
/**
|
|
56
|
+
* Experience when the list of reactions gets rendered
|
|
57
|
+
*/
|
|
58
|
+
|
|
59
|
+
exports.PickerRender = PickerRender;
|
|
60
|
+
var ReactionsRendered = new _ufo.ConcurrentExperience(ExperienceName.REACTIONS_RENDERED, createExperienceConfig(ComponentName.REACTIONS, _ufo.ExperienceTypes.Load, _ufo.ExperiencePerformanceTypes.PageSegmentLoad));
|
|
61
|
+
/**
|
|
62
|
+
* Experience when a reaction emoji gets added
|
|
63
|
+
*/
|
|
64
|
+
|
|
65
|
+
exports.ReactionsRendered = ReactionsRendered;
|
|
66
|
+
var ReactionsAdd = new _ufo.ConcurrentExperience(ExperienceName.REACTION_ADDED, createExperienceConfig(ComponentName.REACTIONS, _ufo.ExperienceTypes.Experience, _ufo.ExperiencePerformanceTypes.InlineResult));
|
|
67
|
+
/**
|
|
68
|
+
* Experience when a reaction emoji gets removed/decrement
|
|
69
|
+
*/
|
|
70
|
+
|
|
71
|
+
exports.ReactionsAdd = ReactionsAdd;
|
|
72
|
+
var ReactionsRemove = new _ufo.ConcurrentExperience(ExperienceName.REACTION_REMOVED, createExperienceConfig(ComponentName.REACTIONS, _ufo.ExperienceTypes.Experience, _ufo.ExperiencePerformanceTypes.InlineResult));
|
|
73
|
+
exports.ReactionsRemove = ReactionsRemove;
|
|
@@ -23,6 +23,10 @@ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/ge
|
|
|
23
23
|
|
|
24
24
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
25
25
|
|
|
26
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
27
|
+
|
|
28
|
+
var _reactDom = _interopRequireDefault(require("react-dom"));
|
|
29
|
+
|
|
26
30
|
var _core = require("@emotion/core");
|
|
27
31
|
|
|
28
32
|
var _picker = require("@atlaskit/emoji/picker");
|
|
@@ -35,14 +39,12 @@ var _colors = require("@atlaskit/theme/colors");
|
|
|
35
39
|
|
|
36
40
|
var _tokens = require("@atlaskit/tokens");
|
|
37
41
|
|
|
38
|
-
var _react = _interopRequireWildcard(require("react"));
|
|
39
|
-
|
|
40
|
-
var _reactDom = _interopRequireDefault(require("react-dom"));
|
|
41
|
-
|
|
42
42
|
var _Selector = require("./Selector");
|
|
43
43
|
|
|
44
44
|
var _Trigger = require("./Trigger");
|
|
45
45
|
|
|
46
|
+
var _analytics = require("../analytics");
|
|
47
|
+
|
|
46
48
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
47
49
|
|
|
48
50
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
@@ -132,6 +134,9 @@ var ReactionPicker = /*#__PURE__*/function (_PureComponent) {
|
|
|
132
134
|
_this.close(emoji.id);
|
|
133
135
|
});
|
|
134
136
|
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "onTriggerClick", function () {
|
|
137
|
+
// ufo start reaction experience
|
|
138
|
+
_analytics.UFO.PickerRender.start();
|
|
139
|
+
|
|
135
140
|
if (_this.props.onOpen) {
|
|
136
141
|
_this.props.onOpen();
|
|
137
142
|
}
|
|
@@ -139,6 +144,9 @@ var ReactionPicker = /*#__PURE__*/function (_PureComponent) {
|
|
|
139
144
|
_this.setState({
|
|
140
145
|
isOpen: !_this.state.isOpen,
|
|
141
146
|
showFullPicker: false
|
|
147
|
+
}, function () {
|
|
148
|
+
// ufo add reaction success
|
|
149
|
+
_analytics.UFO.PickerRender.success();
|
|
142
150
|
});
|
|
143
151
|
});
|
|
144
152
|
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "popperModifiers", [{
|
|
@@ -180,6 +188,8 @@ var ReactionPicker = /*#__PURE__*/function (_PureComponent) {
|
|
|
180
188
|
key: "componentWillUnmount",
|
|
181
189
|
value: function componentWillUnmount() {
|
|
182
190
|
document.removeEventListener('click', this.handleClickOutside);
|
|
191
|
+
|
|
192
|
+
_analytics.UFO.PickerRender.abort();
|
|
183
193
|
}
|
|
184
194
|
}, {
|
|
185
195
|
key: "close",
|
|
@@ -187,6 +197,9 @@ var ReactionPicker = /*#__PURE__*/function (_PureComponent) {
|
|
|
187
197
|
this.setState({
|
|
188
198
|
isOpen: false,
|
|
189
199
|
showFullPicker: false
|
|
200
|
+
}, function () {
|
|
201
|
+
// ufo abort reaction experience
|
|
202
|
+
_analytics.UFO.PickerRender.abort();
|
|
190
203
|
});
|
|
191
204
|
}
|
|
192
205
|
}, {
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.UfoErrorBoundary = void 0;
|
|
9
|
+
|
|
10
|
+
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
11
|
+
|
|
12
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
13
|
+
|
|
14
|
+
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
15
|
+
|
|
16
|
+
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
17
|
+
|
|
18
|
+
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
19
|
+
|
|
20
|
+
var _react = _interopRequireDefault(require("react"));
|
|
21
|
+
|
|
22
|
+
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
|
|
23
|
+
|
|
24
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
25
|
+
|
|
26
|
+
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; }
|
|
27
|
+
|
|
28
|
+
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
|
|
29
|
+
|
|
30
|
+
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
31
|
+
|
|
32
|
+
var UfoErrorBoundary = /*#__PURE__*/function (_React$Component) {
|
|
33
|
+
(0, _inherits2.default)(UfoErrorBoundary, _React$Component);
|
|
34
|
+
|
|
35
|
+
var _super = _createSuper(UfoErrorBoundary);
|
|
36
|
+
|
|
37
|
+
function UfoErrorBoundary() {
|
|
38
|
+
(0, _classCallCheck2.default)(this, UfoErrorBoundary);
|
|
39
|
+
return _super.apply(this, arguments);
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
(0, _createClass2.default)(UfoErrorBoundary, [{
|
|
43
|
+
key: "componentDidCatch",
|
|
44
|
+
value: function componentDidCatch() {
|
|
45
|
+
var _iterator = _createForOfIteratorHelper(this.props.experiences),
|
|
46
|
+
_step;
|
|
47
|
+
|
|
48
|
+
try {
|
|
49
|
+
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
50
|
+
var e = _step.value;
|
|
51
|
+
e.failure();
|
|
52
|
+
}
|
|
53
|
+
} catch (err) {
|
|
54
|
+
_iterator.e(err);
|
|
55
|
+
} finally {
|
|
56
|
+
_iterator.f();
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
}, {
|
|
60
|
+
key: "render",
|
|
61
|
+
value: function render() {
|
|
62
|
+
return this.props.children;
|
|
63
|
+
}
|
|
64
|
+
}]);
|
|
65
|
+
return UfoErrorBoundary;
|
|
66
|
+
}(_react.default.Component);
|
|
67
|
+
|
|
68
|
+
exports.UfoErrorBoundary = UfoErrorBoundary;
|
|
@@ -21,9 +21,17 @@ Object.defineProperty(exports, "Reactions", {
|
|
|
21
21
|
return _Reactions.Reactions;
|
|
22
22
|
}
|
|
23
23
|
});
|
|
24
|
+
Object.defineProperty(exports, "UfoErrorBoundary", {
|
|
25
|
+
enumerable: true,
|
|
26
|
+
get: function get() {
|
|
27
|
+
return _UfoErrorBoundary.UfoErrorBoundary;
|
|
28
|
+
}
|
|
29
|
+
});
|
|
24
30
|
|
|
25
31
|
var _Reaction = require("./Reaction");
|
|
26
32
|
|
|
27
33
|
var _ReactionPicker = require("./ReactionPicker");
|
|
28
34
|
|
|
29
|
-
var _Reactions = require("./Reactions");
|
|
35
|
+
var _Reactions = require("./Reactions");
|
|
36
|
+
|
|
37
|
+
var _UfoErrorBoundary = require("./UfoErrorBoundary");
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.ConnectedReactionPicker = void 0;
|
|
9
|
+
|
|
10
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
11
|
+
|
|
12
|
+
var _react = _interopRequireDefault(require("react"));
|
|
13
|
+
|
|
14
|
+
var _components = require("../components");
|
|
15
|
+
|
|
16
|
+
var _ReactionConsumer = require("../store/ReactionConsumer");
|
|
17
|
+
|
|
18
|
+
var _analytics = require("../analytics");
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* UFO Instance for picker
|
|
22
|
+
*/
|
|
23
|
+
var ConnectedReactionPicker = function ConnectedReactionPicker(props) {
|
|
24
|
+
var renderChild = function renderChild(innerProps) {
|
|
25
|
+
return /*#__PURE__*/_react.default.createElement(_components.ReactionPicker, (0, _extends2.default)({}, props, innerProps));
|
|
26
|
+
};
|
|
27
|
+
|
|
28
|
+
var actionsMapper = function actionsMapper(actions) {
|
|
29
|
+
return {
|
|
30
|
+
onSelection: function onSelection(emojiId) {
|
|
31
|
+
actions.addReaction(props.containerAri, props.ari, emojiId);
|
|
32
|
+
}
|
|
33
|
+
};
|
|
34
|
+
};
|
|
35
|
+
|
|
36
|
+
return /*#__PURE__*/_react.default.createElement(_components.UfoErrorBoundary, {
|
|
37
|
+
experiences: [_analytics.UFO.PickerRender]
|
|
38
|
+
}, /*#__PURE__*/_react.default.createElement(_ReactionConsumer.ReactionConsumer, {
|
|
39
|
+
store: props.store,
|
|
40
|
+
actionsMapper: actionsMapper
|
|
41
|
+
}, renderChild));
|
|
42
|
+
};
|
|
43
|
+
|
|
44
|
+
exports.ConnectedReactionPicker = ConnectedReactionPicker;
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
6
|
+
|
|
7
|
+
Object.defineProperty(exports, "__esModule", {
|
|
8
|
+
value: true
|
|
9
|
+
});
|
|
10
|
+
exports.ConnectedReactionsView = void 0;
|
|
11
|
+
|
|
12
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
13
|
+
|
|
14
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
15
|
+
|
|
16
|
+
var _analyticsNamespacedContext = require("@atlaskit/analytics-namespaced-context");
|
|
17
|
+
|
|
18
|
+
var _analyticsNext = require("@atlaskit/analytics-next");
|
|
19
|
+
|
|
20
|
+
var _components = require("../components");
|
|
21
|
+
|
|
22
|
+
var _ReactionConsumer = require("../store/ReactionConsumer");
|
|
23
|
+
|
|
24
|
+
var _ReactionStatus = require("../types/ReactionStatus");
|
|
25
|
+
|
|
26
|
+
var _ReactionsStore = require("../store/ReactionsStore");
|
|
27
|
+
|
|
28
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
29
|
+
|
|
30
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
31
|
+
|
|
32
|
+
var ReactionsView = function ReactionsView(props) {
|
|
33
|
+
// // compose a UFO experience object
|
|
34
|
+
var experienceInstance = (0, _react.useRef)();
|
|
35
|
+
var ari = props.ari,
|
|
36
|
+
createAnalyticsEvent = props.createAnalyticsEvent,
|
|
37
|
+
store = props.store;
|
|
38
|
+
(0, _react.useEffect)(function () {
|
|
39
|
+
experienceInstance.current = _ReactionsStore.ufoExperiences.render.getInstance(ari);
|
|
40
|
+
}, [ari]);
|
|
41
|
+
(0, _react.useEffect)(function () {
|
|
42
|
+
Promise.resolve(store).then(function (_store) {
|
|
43
|
+
if (_store.setCreateAnalyticsEvent && createAnalyticsEvent) {
|
|
44
|
+
_store.setCreateAnalyticsEvent(createAnalyticsEvent);
|
|
45
|
+
}
|
|
46
|
+
});
|
|
47
|
+
}, [createAnalyticsEvent, store]); // abort when component gets unmounted
|
|
48
|
+
|
|
49
|
+
(0, _react.useEffect)(function () {
|
|
50
|
+
return function () {
|
|
51
|
+
var _experienceInstance$c;
|
|
52
|
+
|
|
53
|
+
(_experienceInstance$c = experienceInstance.current) === null || _experienceInstance$c === void 0 ? void 0 : _experienceInstance$c.abort();
|
|
54
|
+
};
|
|
55
|
+
}, [experienceInstance]);
|
|
56
|
+
|
|
57
|
+
var renderChildren = function renderChildren(innerProps) {
|
|
58
|
+
var containerAri = props.containerAri,
|
|
59
|
+
ari = props.ari;
|
|
60
|
+
return /*#__PURE__*/_react.default.createElement(_analyticsNamespacedContext.FabricElementsAnalyticsContext, {
|
|
61
|
+
data: {
|
|
62
|
+
containerAri: containerAri,
|
|
63
|
+
ari: ari
|
|
64
|
+
}
|
|
65
|
+
}, /*#__PURE__*/_react.default.createElement(_components.Reactions, (0, _extends2.default)({
|
|
66
|
+
key: "".concat(props.containerAri, "|").concat(props.ari)
|
|
67
|
+
}, props, innerProps)));
|
|
68
|
+
};
|
|
69
|
+
|
|
70
|
+
var stateMapper = function stateMapper(state) {
|
|
71
|
+
var containerAri = props.containerAri,
|
|
72
|
+
ari = props.ari;
|
|
73
|
+
var reactionsState = state && state.reactions["".concat(containerAri, "|").concat(ari)];
|
|
74
|
+
|
|
75
|
+
if (!state || !reactionsState) {
|
|
76
|
+
return {
|
|
77
|
+
status: _ReactionStatus.ReactionStatus.notLoaded,
|
|
78
|
+
reactions: []
|
|
79
|
+
};
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
switch (reactionsState.status) {
|
|
83
|
+
case _ReactionStatus.ReactionStatus.ready:
|
|
84
|
+
return {
|
|
85
|
+
reactions: reactionsState.reactions,
|
|
86
|
+
status: reactionsState.status,
|
|
87
|
+
flash: state.flash["".concat(containerAri, "|").concat(ari)]
|
|
88
|
+
};
|
|
89
|
+
|
|
90
|
+
case _ReactionStatus.ReactionStatus.error:
|
|
91
|
+
return {
|
|
92
|
+
status: _ReactionStatus.ReactionStatus.error,
|
|
93
|
+
reactions: []
|
|
94
|
+
};
|
|
95
|
+
|
|
96
|
+
default:
|
|
97
|
+
return {
|
|
98
|
+
status: _ReactionStatus.ReactionStatus.loading,
|
|
99
|
+
reactions: []
|
|
100
|
+
};
|
|
101
|
+
}
|
|
102
|
+
};
|
|
103
|
+
|
|
104
|
+
var actionsMapper = function actionsMapper(actions) {
|
|
105
|
+
return {
|
|
106
|
+
loadReaction: function loadReaction() {
|
|
107
|
+
actions.getReactions(props.containerAri, props.ari);
|
|
108
|
+
},
|
|
109
|
+
onReactionClick: function onReactionClick(emojiId) {
|
|
110
|
+
actions.toggleReaction(props.containerAri, props.ari, emojiId);
|
|
111
|
+
},
|
|
112
|
+
onReactionHover: function onReactionHover(emojiId) {
|
|
113
|
+
actions.getDetailedReaction(props.containerAri, props.ari, emojiId);
|
|
114
|
+
},
|
|
115
|
+
onSelection: function onSelection(emojiId) {
|
|
116
|
+
actions.addReaction(props.containerAri, props.ari, emojiId);
|
|
117
|
+
}
|
|
118
|
+
};
|
|
119
|
+
};
|
|
120
|
+
|
|
121
|
+
return /*#__PURE__*/_react.default.createElement(_components.UfoErrorBoundary, {
|
|
122
|
+
experiences: experienceInstance.current ? [experienceInstance.current] : []
|
|
123
|
+
}, /*#__PURE__*/_react.default.createElement(_ReactionConsumer.ReactionConsumer, {
|
|
124
|
+
store: props.store,
|
|
125
|
+
actionsMapper: actionsMapper,
|
|
126
|
+
stateMapper: stateMapper
|
|
127
|
+
}, renderChildren));
|
|
128
|
+
};
|
|
129
|
+
|
|
130
|
+
var ConnectedReactionsView = (0, _analyticsNext.withAnalyticsEvents)()(ReactionsView);
|
|
131
|
+
exports.ConnectedReactionsView = ConnectedReactionsView;
|
|
@@ -1,23 +1,21 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
3
|
Object.defineProperty(exports, "__esModule", {
|
|
6
4
|
value: true
|
|
7
5
|
});
|
|
8
6
|
Object.defineProperty(exports, "ConnectedReactionPicker", {
|
|
9
7
|
enumerable: true,
|
|
10
8
|
get: function get() {
|
|
11
|
-
return
|
|
9
|
+
return _ConnectedReactionPicker.ConnectedReactionPicker;
|
|
12
10
|
}
|
|
13
11
|
});
|
|
14
12
|
Object.defineProperty(exports, "ConnectedReactionsView", {
|
|
15
13
|
enumerable: true,
|
|
16
14
|
get: function get() {
|
|
17
|
-
return
|
|
15
|
+
return _ConnectedReactionsView.ConnectedReactionsView;
|
|
18
16
|
}
|
|
19
17
|
});
|
|
20
18
|
|
|
21
|
-
var
|
|
19
|
+
var _ConnectedReactionPicker = require("./ConnectedReactionPicker");
|
|
22
20
|
|
|
23
|
-
var
|
|
21
|
+
var _ConnectedReactionsView = require("./ConnectedReactionsView");
|
package/dist/cjs/index.js
CHANGED
|
@@ -18,7 +18,7 @@ Object.defineProperty(exports, "ConnectedReactionsView", {
|
|
|
18
18
|
Object.defineProperty(exports, "MemoryReactionsStore", {
|
|
19
19
|
enumerable: true,
|
|
20
20
|
get: function get() {
|
|
21
|
-
return
|
|
21
|
+
return _store.MemoryReactionsStore;
|
|
22
22
|
}
|
|
23
23
|
});
|
|
24
24
|
Object.defineProperty(exports, "Reaction", {
|
|
@@ -30,7 +30,7 @@ Object.defineProperty(exports, "Reaction", {
|
|
|
30
30
|
Object.defineProperty(exports, "ReactionConsumer", {
|
|
31
31
|
enumerable: true,
|
|
32
32
|
get: function get() {
|
|
33
|
-
return
|
|
33
|
+
return _store.ReactionConsumer;
|
|
34
34
|
}
|
|
35
35
|
});
|
|
36
36
|
Object.defineProperty(exports, "ReactionPicker", {
|
|
@@ -51,6 +51,14 @@ Object.defineProperty(exports, "Reactions", {
|
|
|
51
51
|
return _components.Reactions;
|
|
52
52
|
}
|
|
53
53
|
});
|
|
54
|
+
Object.defineProperty(exports, "UFO", {
|
|
55
|
+
enumerable: true,
|
|
56
|
+
get: function get() {
|
|
57
|
+
return _analytics.UFO;
|
|
58
|
+
}
|
|
59
|
+
});
|
|
60
|
+
|
|
61
|
+
var _analytics = require("./analytics");
|
|
54
62
|
|
|
55
63
|
var _client = require("./client");
|
|
56
64
|
|
|
@@ -58,4 +66,4 @@ var _components = require("./components");
|
|
|
58
66
|
|
|
59
67
|
var _containers = require("./containers");
|
|
60
68
|
|
|
61
|
-
var
|
|
69
|
+
var _store = require("./store");
|
|
File without changes
|