@atlaskit/people-teams-ui-public 3.0.0 → 3.1.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 +14 -0
- package/analytics/package.json +17 -0
- package/dist/cjs/common/utils/analytics/analytics-subcontext/index.js +16 -0
- package/dist/cjs/common/utils/analytics/analytics-subcontext/store.js +53 -0
- package/dist/cjs/common/utils/analytics/hooks.js +33 -0
- package/dist/cjs/common/utils/analytics/index.js +32 -0
- package/dist/es2019/common/utils/analytics/analytics-subcontext/index.js +10 -0
- package/dist/es2019/common/utils/analytics/analytics-subcontext/store.js +49 -0
- package/dist/es2019/common/utils/analytics/hooks.js +23 -0
- package/dist/es2019/common/utils/analytics/index.js +3 -0
- package/dist/esm/common/utils/analytics/analytics-subcontext/index.js +9 -0
- package/dist/esm/common/utils/analytics/analytics-subcontext/store.js +46 -0
- package/dist/esm/common/utils/analytics/hooks.js +23 -0
- package/dist/esm/common/utils/analytics/index.js +3 -0
- package/dist/types/common/utils/analytics/analytics-subcontext/index.d.ts +10 -0
- package/dist/types/common/utils/analytics/analytics-subcontext/store.d.ts +16 -0
- package/dist/types/common/utils/analytics/hooks.d.ts +5 -0
- package/dist/types/common/utils/analytics/index.d.ts +3 -0
- package/dist/types-ts4.5/common/utils/analytics/analytics-subcontext/index.d.ts +10 -0
- package/dist/types-ts4.5/common/utils/analytics/analytics-subcontext/store.d.ts +16 -0
- package/dist/types-ts4.5/common/utils/analytics/hooks.d.ts +5 -0
- package/dist/types-ts4.5/common/utils/analytics/index.d.ts +3 -0
- package/package.json +14 -10
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,19 @@
|
|
|
1
1
|
# @atlaskit/people-teams-ui-public
|
|
2
2
|
|
|
3
|
+
## 3.1.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- [#127475](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/pull-requests/127475)
|
|
8
|
+
[`1d4268a595ade`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/1d4268a595ade) -
|
|
9
|
+
Move PeopleTeamsAnalyticsSubcontextProvider to public package to set the context for analytics
|
|
10
|
+
|
|
11
|
+
## 3.0.1
|
|
12
|
+
|
|
13
|
+
### Patch Changes
|
|
14
|
+
|
|
15
|
+
- Updated dependencies
|
|
16
|
+
|
|
3
17
|
## 3.0.0
|
|
4
18
|
|
|
5
19
|
### Major Changes
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@atlaskit/people-teams-ui-public/analytics",
|
|
3
|
+
"main": "../dist/cjs/common/utils/analytics/index.js",
|
|
4
|
+
"module": "../dist/esm/common/utils/analytics/index.js",
|
|
5
|
+
"module:es2019": "../dist/es2019/common/utils/analytics/index.js",
|
|
6
|
+
"sideEffects": [
|
|
7
|
+
"*.compiled.css"
|
|
8
|
+
],
|
|
9
|
+
"types": "../dist/types/common/utils/analytics/index.d.ts",
|
|
10
|
+
"typesVersions": {
|
|
11
|
+
">=4.5 <5.4": {
|
|
12
|
+
"*": [
|
|
13
|
+
"../dist/types-ts4.5/common/utils/analytics/index.d.ts"
|
|
14
|
+
]
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.PeopleTeamsAnalyticsSubcontextProvider = PeopleTeamsAnalyticsSubcontextProvider;
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
var _index = require("../index");
|
|
10
|
+
function PeopleTeamsAnalyticsSubcontextProvider(_ref) {
|
|
11
|
+
var children = _ref.children,
|
|
12
|
+
topLevelAttributes = _ref.topLevelAttributes;
|
|
13
|
+
return /*#__PURE__*/_react.default.createElement(_index.PeopleTeamsAnalyticsProvider, {
|
|
14
|
+
analyticsContextData: topLevelAttributes
|
|
15
|
+
}, /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, children));
|
|
16
|
+
}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.usePeopleTeamsAnalyticsSubcontext = exports.useInjectedEventAttribute = void 0;
|
|
8
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
9
|
+
var _react = require("react");
|
|
10
|
+
var _reactSweetState = require("react-sweet-state");
|
|
11
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
12
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
13
|
+
var initialState = {
|
|
14
|
+
eventAttributes: {}
|
|
15
|
+
};
|
|
16
|
+
var actions = {
|
|
17
|
+
setEventAttributes: function setEventAttributes(eventAttributes) {
|
|
18
|
+
return function (_ref) {
|
|
19
|
+
var setState = _ref.setState,
|
|
20
|
+
getState = _ref.getState;
|
|
21
|
+
var existingEventAttributes = getState().eventAttributes;
|
|
22
|
+
var newEventAttributes = _objectSpread(_objectSpread({}, existingEventAttributes), eventAttributes);
|
|
23
|
+
Object.keys(newEventAttributes).forEach(function (keyString) {
|
|
24
|
+
var key = keyString;
|
|
25
|
+
if (newEventAttributes[key] === undefined) {
|
|
26
|
+
delete newEventAttributes[key];
|
|
27
|
+
}
|
|
28
|
+
});
|
|
29
|
+
setState({
|
|
30
|
+
eventAttributes: newEventAttributes
|
|
31
|
+
});
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
};
|
|
35
|
+
var AnalyticsSubcontextStore = (0, _reactSweetState.createStore)({
|
|
36
|
+
initialState: initialState,
|
|
37
|
+
actions: actions
|
|
38
|
+
});
|
|
39
|
+
var usePeopleTeamsAnalyticsSubcontext = exports.usePeopleTeamsAnalyticsSubcontext = (0, _reactSweetState.createHook)(AnalyticsSubcontextStore);
|
|
40
|
+
|
|
41
|
+
/**
|
|
42
|
+
* Inject an attribute into all events using `usePeopleTeamAnalyticsEvents`
|
|
43
|
+
* It sets the attribute when the hook is called and clears it when the component is unmounted
|
|
44
|
+
*/
|
|
45
|
+
var useInjectedEventAttribute = exports.useInjectedEventAttribute = function useInjectedEventAttribute(key, value) {
|
|
46
|
+
var setEventAttributes = usePeopleTeamsAnalyticsSubcontext()[1].setEventAttributes;
|
|
47
|
+
(0, _react.useEffect)(function () {
|
|
48
|
+
setEventAttributes((0, _defineProperty2.default)({}, key, value));
|
|
49
|
+
return function () {
|
|
50
|
+
return setEventAttributes((0, _defineProperty2.default)({}, key, undefined));
|
|
51
|
+
};
|
|
52
|
+
}, [key, value, setEventAttributes]);
|
|
53
|
+
};
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
var _typeof3 = require("@babel/runtime/helpers/typeof");
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.PeopleTeamsAnalyticsProvider = PeopleTeamsAnalyticsProvider;
|
|
9
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
10
|
+
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
|
|
11
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
12
|
+
var _analyticsNamespacedContext = require("@atlaskit/analytics-namespaced-context");
|
|
13
|
+
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); }
|
|
14
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof3(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 && {}.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; }
|
|
15
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
16
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
17
|
+
var defaultAnalyticsContextData = {
|
|
18
|
+
packageName: "@atlaskit/people-teams-ui-public",
|
|
19
|
+
packageVersion: "3.1.0"
|
|
20
|
+
};
|
|
21
|
+
function PeopleTeamsAnalyticsProvider(_ref) {
|
|
22
|
+
var analyticsContextData = _ref.analyticsContextData,
|
|
23
|
+
children = _ref.children;
|
|
24
|
+
var data = (0, _react.useMemo)(function () {
|
|
25
|
+
if ((0, _typeof2.default)(analyticsContextData) === 'object') {
|
|
26
|
+
return _objectSpread(_objectSpread({}, defaultAnalyticsContextData), analyticsContextData);
|
|
27
|
+
}
|
|
28
|
+
return defaultAnalyticsContextData;
|
|
29
|
+
}, [analyticsContextData]);
|
|
30
|
+
return /*#__PURE__*/_react.default.createElement(_analyticsNamespacedContext.PeopleTeamsAnalyticsContext, {
|
|
31
|
+
data: data
|
|
32
|
+
}, children);
|
|
33
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "PeopleTeamsAnalyticsProvider", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function get() {
|
|
9
|
+
return _hooks.PeopleTeamsAnalyticsProvider;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
Object.defineProperty(exports, "PeopleTeamsAnalyticsSubcontextProvider", {
|
|
13
|
+
enumerable: true,
|
|
14
|
+
get: function get() {
|
|
15
|
+
return _analyticsSubcontext.PeopleTeamsAnalyticsSubcontextProvider;
|
|
16
|
+
}
|
|
17
|
+
});
|
|
18
|
+
Object.defineProperty(exports, "useInjectedEventAttribute", {
|
|
19
|
+
enumerable: true,
|
|
20
|
+
get: function get() {
|
|
21
|
+
return _store.useInjectedEventAttribute;
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
Object.defineProperty(exports, "usePeopleTeamsAnalyticsSubcontext", {
|
|
25
|
+
enumerable: true,
|
|
26
|
+
get: function get() {
|
|
27
|
+
return _store.usePeopleTeamsAnalyticsSubcontext;
|
|
28
|
+
}
|
|
29
|
+
});
|
|
30
|
+
var _hooks = require("./hooks");
|
|
31
|
+
var _analyticsSubcontext = require("./analytics-subcontext");
|
|
32
|
+
var _store = require("./analytics-subcontext/store");
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { PeopleTeamsAnalyticsProvider } from '../index';
|
|
3
|
+
export function PeopleTeamsAnalyticsSubcontextProvider({
|
|
4
|
+
children,
|
|
5
|
+
topLevelAttributes
|
|
6
|
+
}) {
|
|
7
|
+
return /*#__PURE__*/React.createElement(PeopleTeamsAnalyticsProvider, {
|
|
8
|
+
analyticsContextData: topLevelAttributes
|
|
9
|
+
}, /*#__PURE__*/React.createElement(React.Fragment, null, children));
|
|
10
|
+
}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { useEffect } from 'react';
|
|
2
|
+
import { createHook, createStore } from 'react-sweet-state';
|
|
3
|
+
const initialState = {
|
|
4
|
+
eventAttributes: {}
|
|
5
|
+
};
|
|
6
|
+
const actions = {
|
|
7
|
+
setEventAttributes: eventAttributes => ({
|
|
8
|
+
setState,
|
|
9
|
+
getState
|
|
10
|
+
}) => {
|
|
11
|
+
const existingEventAttributes = getState().eventAttributes;
|
|
12
|
+
const newEventAttributes = {
|
|
13
|
+
...existingEventAttributes,
|
|
14
|
+
...eventAttributes
|
|
15
|
+
};
|
|
16
|
+
Object.keys(newEventAttributes).forEach(keyString => {
|
|
17
|
+
const key = keyString;
|
|
18
|
+
if (newEventAttributes[key] === undefined) {
|
|
19
|
+
delete newEventAttributes[key];
|
|
20
|
+
}
|
|
21
|
+
});
|
|
22
|
+
setState({
|
|
23
|
+
eventAttributes: newEventAttributes
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
};
|
|
27
|
+
const AnalyticsSubcontextStore = createStore({
|
|
28
|
+
initialState,
|
|
29
|
+
actions
|
|
30
|
+
});
|
|
31
|
+
export const usePeopleTeamsAnalyticsSubcontext = createHook(AnalyticsSubcontextStore);
|
|
32
|
+
|
|
33
|
+
/**
|
|
34
|
+
* Inject an attribute into all events using `usePeopleTeamAnalyticsEvents`
|
|
35
|
+
* It sets the attribute when the hook is called and clears it when the component is unmounted
|
|
36
|
+
*/
|
|
37
|
+
export const useInjectedEventAttribute = (key, value) => {
|
|
38
|
+
const {
|
|
39
|
+
setEventAttributes
|
|
40
|
+
} = usePeopleTeamsAnalyticsSubcontext()[1];
|
|
41
|
+
useEffect(() => {
|
|
42
|
+
setEventAttributes({
|
|
43
|
+
[key]: value
|
|
44
|
+
});
|
|
45
|
+
return () => setEventAttributes({
|
|
46
|
+
[key]: undefined
|
|
47
|
+
});
|
|
48
|
+
}, [key, value, setEventAttributes]);
|
|
49
|
+
};
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import React, { useMemo } from 'react';
|
|
2
|
+
import { PeopleTeamsAnalyticsContext } from '@atlaskit/analytics-namespaced-context';
|
|
3
|
+
const defaultAnalyticsContextData = {
|
|
4
|
+
packageName: "@atlaskit/people-teams-ui-public",
|
|
5
|
+
packageVersion: "3.1.0"
|
|
6
|
+
};
|
|
7
|
+
export function PeopleTeamsAnalyticsProvider({
|
|
8
|
+
analyticsContextData,
|
|
9
|
+
children
|
|
10
|
+
}) {
|
|
11
|
+
const data = useMemo(() => {
|
|
12
|
+
if (typeof analyticsContextData === 'object') {
|
|
13
|
+
return {
|
|
14
|
+
...defaultAnalyticsContextData,
|
|
15
|
+
...analyticsContextData
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
return defaultAnalyticsContextData;
|
|
19
|
+
}, [analyticsContextData]);
|
|
20
|
+
return /*#__PURE__*/React.createElement(PeopleTeamsAnalyticsContext, {
|
|
21
|
+
data: data
|
|
22
|
+
}, children);
|
|
23
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { PeopleTeamsAnalyticsProvider } from '../index';
|
|
3
|
+
export function PeopleTeamsAnalyticsSubcontextProvider(_ref) {
|
|
4
|
+
var children = _ref.children,
|
|
5
|
+
topLevelAttributes = _ref.topLevelAttributes;
|
|
6
|
+
return /*#__PURE__*/React.createElement(PeopleTeamsAnalyticsProvider, {
|
|
7
|
+
analyticsContextData: topLevelAttributes
|
|
8
|
+
}, /*#__PURE__*/React.createElement(React.Fragment, null, children));
|
|
9
|
+
}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
2
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
3
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
4
|
+
import { useEffect } from 'react';
|
|
5
|
+
import { createHook, createStore } from 'react-sweet-state';
|
|
6
|
+
var initialState = {
|
|
7
|
+
eventAttributes: {}
|
|
8
|
+
};
|
|
9
|
+
var actions = {
|
|
10
|
+
setEventAttributes: function setEventAttributes(eventAttributes) {
|
|
11
|
+
return function (_ref) {
|
|
12
|
+
var setState = _ref.setState,
|
|
13
|
+
getState = _ref.getState;
|
|
14
|
+
var existingEventAttributes = getState().eventAttributes;
|
|
15
|
+
var newEventAttributes = _objectSpread(_objectSpread({}, existingEventAttributes), eventAttributes);
|
|
16
|
+
Object.keys(newEventAttributes).forEach(function (keyString) {
|
|
17
|
+
var key = keyString;
|
|
18
|
+
if (newEventAttributes[key] === undefined) {
|
|
19
|
+
delete newEventAttributes[key];
|
|
20
|
+
}
|
|
21
|
+
});
|
|
22
|
+
setState({
|
|
23
|
+
eventAttributes: newEventAttributes
|
|
24
|
+
});
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
};
|
|
28
|
+
var AnalyticsSubcontextStore = createStore({
|
|
29
|
+
initialState: initialState,
|
|
30
|
+
actions: actions
|
|
31
|
+
});
|
|
32
|
+
export var usePeopleTeamsAnalyticsSubcontext = createHook(AnalyticsSubcontextStore);
|
|
33
|
+
|
|
34
|
+
/**
|
|
35
|
+
* Inject an attribute into all events using `usePeopleTeamAnalyticsEvents`
|
|
36
|
+
* It sets the attribute when the hook is called and clears it when the component is unmounted
|
|
37
|
+
*/
|
|
38
|
+
export var useInjectedEventAttribute = function useInjectedEventAttribute(key, value) {
|
|
39
|
+
var setEventAttributes = usePeopleTeamsAnalyticsSubcontext()[1].setEventAttributes;
|
|
40
|
+
useEffect(function () {
|
|
41
|
+
setEventAttributes(_defineProperty({}, key, value));
|
|
42
|
+
return function () {
|
|
43
|
+
return setEventAttributes(_defineProperty({}, key, undefined));
|
|
44
|
+
};
|
|
45
|
+
}, [key, value, setEventAttributes]);
|
|
46
|
+
};
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
2
|
+
import _typeof from "@babel/runtime/helpers/typeof";
|
|
3
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
4
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
5
|
+
import React, { useMemo } from 'react';
|
|
6
|
+
import { PeopleTeamsAnalyticsContext } from '@atlaskit/analytics-namespaced-context';
|
|
7
|
+
var defaultAnalyticsContextData = {
|
|
8
|
+
packageName: "@atlaskit/people-teams-ui-public",
|
|
9
|
+
packageVersion: "3.1.0"
|
|
10
|
+
};
|
|
11
|
+
export function PeopleTeamsAnalyticsProvider(_ref) {
|
|
12
|
+
var analyticsContextData = _ref.analyticsContextData,
|
|
13
|
+
children = _ref.children;
|
|
14
|
+
var data = useMemo(function () {
|
|
15
|
+
if (_typeof(analyticsContextData) === 'object') {
|
|
16
|
+
return _objectSpread(_objectSpread({}, defaultAnalyticsContextData), analyticsContextData);
|
|
17
|
+
}
|
|
18
|
+
return defaultAnalyticsContextData;
|
|
19
|
+
}, [analyticsContextData]);
|
|
20
|
+
return /*#__PURE__*/React.createElement(PeopleTeamsAnalyticsContext, {
|
|
21
|
+
data: data
|
|
22
|
+
}, children);
|
|
23
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
type PeopleTeamsAnalyticsSubcontextState = {
|
|
3
|
+
topLevelAttributes?: {
|
|
4
|
+
source?: string;
|
|
5
|
+
};
|
|
6
|
+
};
|
|
7
|
+
export declare function PeopleTeamsAnalyticsSubcontextProvider({ children, topLevelAttributes, }: PeopleTeamsAnalyticsSubcontextState & {
|
|
8
|
+
children: React.ReactNode;
|
|
9
|
+
}): React.JSX.Element;
|
|
10
|
+
export {};
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { type StoreActionApi } from 'react-sweet-state';
|
|
2
|
+
type InjectedEventAttributes = {
|
|
3
|
+
teamId?: string;
|
|
4
|
+
};
|
|
5
|
+
type PeopleTeamsAnalyticsSubcontextState = {
|
|
6
|
+
eventAttributes?: InjectedEventAttributes;
|
|
7
|
+
};
|
|
8
|
+
export declare const usePeopleTeamsAnalyticsSubcontext: import("react-sweet-state").HookFunction<PeopleTeamsAnalyticsSubcontextState, import("react-sweet-state").BoundActions<PeopleTeamsAnalyticsSubcontextState, {
|
|
9
|
+
readonly setEventAttributes: (eventAttributes?: Partial<InjectedEventAttributes>) => ({ setState, getState }: StoreActionApi<PeopleTeamsAnalyticsSubcontextState>) => void;
|
|
10
|
+
}>, void>;
|
|
11
|
+
/**
|
|
12
|
+
* Inject an attribute into all events using `usePeopleTeamAnalyticsEvents`
|
|
13
|
+
* It sets the attribute when the hook is called and clears it when the component is unmounted
|
|
14
|
+
*/
|
|
15
|
+
export declare const useInjectedEventAttribute: <K extends "teamId">(key: K, value: InjectedEventAttributes[K]) => void;
|
|
16
|
+
export {};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
type PeopleTeamsAnalyticsSubcontextState = {
|
|
3
|
+
topLevelAttributes?: {
|
|
4
|
+
source?: string;
|
|
5
|
+
};
|
|
6
|
+
};
|
|
7
|
+
export declare function PeopleTeamsAnalyticsSubcontextProvider({ children, topLevelAttributes, }: PeopleTeamsAnalyticsSubcontextState & {
|
|
8
|
+
children: React.ReactNode;
|
|
9
|
+
}): React.JSX.Element;
|
|
10
|
+
export {};
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { type StoreActionApi } from 'react-sweet-state';
|
|
2
|
+
type InjectedEventAttributes = {
|
|
3
|
+
teamId?: string;
|
|
4
|
+
};
|
|
5
|
+
type PeopleTeamsAnalyticsSubcontextState = {
|
|
6
|
+
eventAttributes?: InjectedEventAttributes;
|
|
7
|
+
};
|
|
8
|
+
export declare const usePeopleTeamsAnalyticsSubcontext: import("react-sweet-state").HookFunction<PeopleTeamsAnalyticsSubcontextState, import("react-sweet-state").BoundActions<PeopleTeamsAnalyticsSubcontextState, {
|
|
9
|
+
readonly setEventAttributes: (eventAttributes?: Partial<InjectedEventAttributes>) => ({ setState, getState }: StoreActionApi<PeopleTeamsAnalyticsSubcontextState>) => void;
|
|
10
|
+
}>, void>;
|
|
11
|
+
/**
|
|
12
|
+
* Inject an attribute into all events using `usePeopleTeamAnalyticsEvents`
|
|
13
|
+
* It sets the attribute when the hook is called and clears it when the component is unmounted
|
|
14
|
+
*/
|
|
15
|
+
export declare const useInjectedEventAttribute: <K extends "teamId">(key: K, value: InjectedEventAttributes[K]) => void;
|
|
16
|
+
export {};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@atlaskit/people-teams-ui-public",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.1.0",
|
|
4
4
|
"description": "UI components for public packages",
|
|
5
5
|
"author": "Atlassian Pty Ltd",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -33,27 +33,31 @@
|
|
|
33
33
|
],
|
|
34
34
|
"atlaskit:src": "src/index.ts",
|
|
35
35
|
"af:exports": {
|
|
36
|
-
"./verified-team-icon": "./src/ui/verified-team-icon/index.ts"
|
|
36
|
+
"./verified-team-icon": "./src/ui/verified-team-icon/index.ts",
|
|
37
|
+
"./analytics": "./src/common/utils/analytics/index.ts"
|
|
37
38
|
},
|
|
38
39
|
"dependencies": {
|
|
39
|
-
"@atlaskit/
|
|
40
|
+
"@atlaskit/analytics-namespaced-context": "^7.0.0",
|
|
41
|
+
"@atlaskit/icon": "^25.0.0",
|
|
40
42
|
"@atlaskit/legacy-custom-icons": "^0.22.0",
|
|
41
|
-
"@atlaskit/primitives": "^14.
|
|
42
|
-
"@atlaskit/tokens": "^4.
|
|
43
|
+
"@atlaskit/primitives": "^14.1.0",
|
|
44
|
+
"@atlaskit/tokens": "^4.5.0",
|
|
43
45
|
"@atlaskit/tooltip": "^20.0.0",
|
|
44
46
|
"@babel/runtime": "^7.0.0",
|
|
45
47
|
"@compiled/react": "^0.18.2",
|
|
46
|
-
"react-intl-next": "npm:react-intl@^5.18.1"
|
|
48
|
+
"react-intl-next": "npm:react-intl@^5.18.1",
|
|
49
|
+
"react-sweet-state": "^2.6.5"
|
|
47
50
|
},
|
|
48
51
|
"peerDependencies": {
|
|
49
52
|
"react": "^18.2.0"
|
|
50
53
|
},
|
|
51
54
|
"devDependencies": {
|
|
52
|
-
"@af/integration-testing": "
|
|
53
|
-
"@af/visual-regression": "
|
|
54
|
-
"@atlaskit/ssr": "
|
|
55
|
-
"@atlaskit/visual-regression": "
|
|
55
|
+
"@af/integration-testing": "^0.5.0",
|
|
56
|
+
"@af/visual-regression": "^1.3.0",
|
|
57
|
+
"@atlaskit/ssr": "^0.4.0",
|
|
58
|
+
"@atlaskit/visual-regression": "^0.10.0",
|
|
56
59
|
"@testing-library/react": "^13.4.0",
|
|
60
|
+
"@testing-library/react-hooks": "^8.0.1",
|
|
57
61
|
"@testing-library/user-event": "^14.4.3",
|
|
58
62
|
"react-dom": "^18.2.0",
|
|
59
63
|
"typescript": "~5.4.2",
|