@atlaskit/profilecard 16.3.1 → 16.4.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/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # @atlaskit/profilecard
2
2
 
3
+ ## 16.4.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [`4c94bc2d6c4`](https://bitbucket.org/atlassian/atlassian-frontend/commits/4c94bc2d6c4) - Update profilecard to use analytics from teams common
8
+
3
9
  ## 16.3.1
4
10
 
5
11
  ### Patch Changes
@@ -84,7 +84,7 @@ var TeamProfileCardTriggerInternal = /*#__PURE__*/function (_React$PureComponent
84
84
  }
85
85
 
86
86
  if (_this.props.createAnalyticsEvent) {
87
- (0, _analytics.firePeopleTeamsEvent)(payload)(_this.props.createAnalyticsEvent);
87
+ (0, _analytics.fireEvent)(_this.props.createAnalyticsEvent, payload);
88
88
  }
89
89
  });
90
90
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "fireAnalyticsWithDuration", function (generator) {
@@ -5,21 +5,46 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
- exports.teamRequestAnalytics = exports.teamProfileCardRendered = exports.teamCardTriggered = exports.teamAvatarClicked = exports.teamActionClicked = exports.moreMembersClicked = exports.moreActionsClicked = exports.firePeopleTeamsEvent = exports.errorRetryClicked = void 0;
8
+ exports.teamRequestAnalytics = exports.teamProfileCardRendered = exports.teamCardTriggered = exports.teamAvatarClicked = exports.teamActionClicked = exports.moreMembersClicked = exports.moreActionsClicked = exports.fireEvent = exports.errorRetryClicked = void 0;
9
9
 
10
10
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
11
 
12
- var _analyticsNext = require("@atlaskit/analytics-next");
13
-
14
12
  var _performance = require("./performance");
15
13
 
16
14
  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; }
17
15
 
18
16
  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; }
19
17
 
20
- var PEOPLE_TEAMS_CHANNEL = 'peopleTeams';
21
- var firePeopleTeamsEvent = (0, _analyticsNext.createAndFireEvent)(PEOPLE_TEAMS_CHANNEL);
22
- exports.firePeopleTeamsEvent = firePeopleTeamsEvent;
18
+ /** Below lines are copied from teams common analytics */
19
+ var ANALYTICS_CHANNEL = 'peopleTeams';
20
+
21
+ var runItLater = function runItLater(cb) {
22
+ if (window.requestIdleCallback === 'function') {
23
+ return window.requestIdleCallback(cb);
24
+ }
25
+
26
+ if (typeof window.requestAnimationFrame === 'function') {
27
+ return window.requestAnimationFrame(cb);
28
+ }
29
+
30
+ return function () {
31
+ return setTimeout(cb);
32
+ };
33
+ };
34
+
35
+ var fireEvent = function fireEvent(createAnalyticsEvent, body) {
36
+ if (!createAnalyticsEvent) {
37
+ return;
38
+ }
39
+
40
+ runItLater(function () {
41
+ createAnalyticsEvent(body).fire(ANALYTICS_CHANNEL);
42
+ });
43
+ };
44
+ /** Above lines are copied from teams common analytics */
45
+
46
+
47
+ exports.fireEvent = fireEvent;
23
48
  var TEAM_SUBJECT = 'teamProfileCard';
24
49
 
25
50
  var createEvent = function createEvent(eventType, action, actionSubject, actionSubjectId) {
@@ -31,7 +56,7 @@ var createEvent = function createEvent(eventType, action, actionSubject, actionS
31
56
  actionSubjectId: actionSubjectId,
32
57
  attributes: _objectSpread(_objectSpread({
33
58
  packageName: "@atlaskit/profilecard",
34
- packageVersion: "16.3.1"
59
+ packageVersion: "16.4.0"
35
60
  }, attributes), {}, {
36
61
  firedAt: (0, _performance.getPageTime)()
37
62
  })
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "name": "@atlaskit/profilecard",
3
- "version": "16.3.1"
3
+ "version": "16.4.0"
4
4
  }
@@ -5,7 +5,7 @@ import { withAnalyticsEvents } from '@atlaskit/analytics-next';
5
5
  import Popup from '@atlaskit/popup';
6
6
  import { layers } from '@atlaskit/theme/constants';
7
7
  import filterActions from '../../internal/filterActions';
8
- import { firePeopleTeamsEvent, teamCardTriggered, teamProfileCardRendered } from '../../util/analytics';
8
+ import { fireEvent, teamCardTriggered, teamProfileCardRendered } from '../../util/analytics';
9
9
  import { isBasicClick } from '../../util/click';
10
10
  import { DELAY_MS_HIDE, DELAY_MS_SHOW } from '../../util/config';
11
11
  import { getPageTime } from '../../util/performance';
@@ -33,7 +33,7 @@ export class TeamProfileCardTriggerInternal extends React.PureComponent {
33
33
  }
34
34
 
35
35
  if (this.props.createAnalyticsEvent) {
36
- firePeopleTeamsEvent(payload)(this.props.createAnalyticsEvent);
36
+ fireEvent(this.props.createAnalyticsEvent, payload);
37
37
  }
38
38
  });
39
39
 
@@ -1,7 +1,31 @@
1
- import { createAndFireEvent } from '@atlaskit/analytics-next';
2
1
  import { getPageTime } from './performance';
3
- const PEOPLE_TEAMS_CHANNEL = 'peopleTeams';
4
- export const firePeopleTeamsEvent = createAndFireEvent(PEOPLE_TEAMS_CHANNEL);
2
+ /** Below lines are copied from teams common analytics */
3
+
4
+ const ANALYTICS_CHANNEL = 'peopleTeams';
5
+
6
+ const runItLater = cb => {
7
+ if (window.requestIdleCallback === 'function') {
8
+ return window.requestIdleCallback(cb);
9
+ }
10
+
11
+ if (typeof window.requestAnimationFrame === 'function') {
12
+ return window.requestAnimationFrame(cb);
13
+ }
14
+
15
+ return () => setTimeout(cb);
16
+ };
17
+
18
+ export const fireEvent = (createAnalyticsEvent, body) => {
19
+ if (!createAnalyticsEvent) {
20
+ return;
21
+ }
22
+
23
+ runItLater(() => {
24
+ createAnalyticsEvent(body).fire(ANALYTICS_CHANNEL);
25
+ });
26
+ };
27
+ /** Above lines are copied from teams common analytics */
28
+
5
29
  const TEAM_SUBJECT = 'teamProfileCard';
6
30
 
7
31
  const createEvent = (eventType, action, actionSubject, actionSubjectId, attributes = {}) => ({
@@ -11,7 +35,7 @@ const createEvent = (eventType, action, actionSubject, actionSubjectId, attribut
11
35
  actionSubjectId,
12
36
  attributes: {
13
37
  packageName: "@atlaskit/profilecard",
14
- packageVersion: "16.3.1",
38
+ packageVersion: "16.4.0",
15
39
  ...attributes,
16
40
  firedAt: getPageTime()
17
41
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "name": "@atlaskit/profilecard",
3
- "version": "16.3.1"
3
+ "version": "16.4.0"
4
4
  }
@@ -16,7 +16,7 @@ import { withAnalyticsEvents } from '@atlaskit/analytics-next';
16
16
  import Popup from '@atlaskit/popup';
17
17
  import { layers } from '@atlaskit/theme/constants';
18
18
  import _filterActions from '../../internal/filterActions';
19
- import { firePeopleTeamsEvent, teamCardTriggered, teamProfileCardRendered } from '../../util/analytics';
19
+ import { fireEvent, teamCardTriggered, teamProfileCardRendered } from '../../util/analytics';
20
20
  import { isBasicClick } from '../../util/click';
21
21
  import { DELAY_MS_HIDE, DELAY_MS_SHOW } from '../../util/config';
22
22
  import { getPageTime } from '../../util/performance';
@@ -56,7 +56,7 @@ export var TeamProfileCardTriggerInternal = /*#__PURE__*/function (_React$PureCo
56
56
  }
57
57
 
58
58
  if (_this.props.createAnalyticsEvent) {
59
- firePeopleTeamsEvent(payload)(_this.props.createAnalyticsEvent);
59
+ fireEvent(_this.props.createAnalyticsEvent, payload);
60
60
  }
61
61
  });
62
62
 
@@ -4,10 +4,36 @@ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (O
4
4
 
5
5
  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) { _defineProperty(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; }
6
6
 
7
- import { createAndFireEvent } from '@atlaskit/analytics-next';
8
7
  import { getPageTime } from './performance';
9
- var PEOPLE_TEAMS_CHANNEL = 'peopleTeams';
10
- export var firePeopleTeamsEvent = createAndFireEvent(PEOPLE_TEAMS_CHANNEL);
8
+ /** Below lines are copied from teams common analytics */
9
+
10
+ var ANALYTICS_CHANNEL = 'peopleTeams';
11
+
12
+ var runItLater = function runItLater(cb) {
13
+ if (window.requestIdleCallback === 'function') {
14
+ return window.requestIdleCallback(cb);
15
+ }
16
+
17
+ if (typeof window.requestAnimationFrame === 'function') {
18
+ return window.requestAnimationFrame(cb);
19
+ }
20
+
21
+ return function () {
22
+ return setTimeout(cb);
23
+ };
24
+ };
25
+
26
+ export var fireEvent = function fireEvent(createAnalyticsEvent, body) {
27
+ if (!createAnalyticsEvent) {
28
+ return;
29
+ }
30
+
31
+ runItLater(function () {
32
+ createAnalyticsEvent(body).fire(ANALYTICS_CHANNEL);
33
+ });
34
+ };
35
+ /** Above lines are copied from teams common analytics */
36
+
11
37
  var TEAM_SUBJECT = 'teamProfileCard';
12
38
 
13
39
  var createEvent = function createEvent(eventType, action, actionSubject, actionSubjectId) {
@@ -19,7 +45,7 @@ var createEvent = function createEvent(eventType, action, actionSubject, actionS
19
45
  actionSubjectId: actionSubjectId,
20
46
  attributes: _objectSpread(_objectSpread({
21
47
  packageName: "@atlaskit/profilecard",
22
- packageVersion: "16.3.1"
48
+ packageVersion: "16.4.0"
23
49
  }, attributes), {}, {
24
50
  firedAt: getPageTime()
25
51
  })
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "name": "@atlaskit/profilecard",
3
- "version": "16.3.1"
3
+ "version": "16.4.0"
4
4
  }
@@ -1,4 +1,13 @@
1
- export declare const firePeopleTeamsEvent: (payload: Record<string, any>) => (createAnalyticsEvent: import("@atlaskit/analytics-next").CreateUIAnalyticsEvent) => import("@atlaskit/analytics-next").UIAnalyticsEvent;
1
+ import type { CreateUIAnalyticsEvent } from '@atlaskit/analytics-next/types';
2
+ interface AnalyticsEvent {
3
+ action?: string;
4
+ actionSubject?: string;
5
+ actionSubjectId?: string;
6
+ attributes?: Record<string, string | number | boolean | undefined>;
7
+ name?: string;
8
+ source?: string;
9
+ }
10
+ export declare const fireEvent: (createAnalyticsEvent: CreateUIAnalyticsEvent | undefined, body: AnalyticsEvent) => void;
2
11
  export declare const teamCardTriggered: (method: 'hover' | 'click') => Record<string, any>;
3
12
  export declare const teamRequestAnalytics: (action: 'triggered' | 'succeeded' | 'failed', attributes?: ({
4
13
  duration: number;
@@ -36,3 +45,4 @@ export declare const moreMembersClicked: (attributes: {
36
45
  export declare const errorRetryClicked: (attributes: {
37
46
  duration: number;
38
47
  }) => Record<string, any>;
48
+ export {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaskit/profilecard",
3
- "version": "16.3.1",
3
+ "version": "16.4.0",
4
4
  "description": "A React component to display a card with user information.",
5
5
  "publishConfig": {
6
6
  "registry": "https://registry.npmjs.org/"