@equinor/fusion-framework-react-app 8.0.0 → 8.1.1
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 +22 -0
- package/dist/esm/analytics/index.js +2 -0
- package/dist/esm/analytics/index.js.map +1 -0
- package/dist/esm/analytics/useTrackFeature.js +46 -0
- package/dist/esm/analytics/useTrackFeature.js.map +1 -0
- package/dist/esm/version.js +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/types/analytics/index.d.ts +1 -0
- package/dist/types/analytics/useTrackFeature.d.ts +4 -0
- package/dist/types/version.d.ts +1 -1
- package/package.json +18 -10
- package/src/analytics/README.md +35 -0
- package/src/analytics/index.ts +1 -0
- package/src/analytics/useTrackFeature.ts +54 -0
- package/src/version.ts +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,27 @@
|
|
|
1
1
|
# Change Log
|
|
2
2
|
|
|
3
|
+
## 8.1.1
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [#3845](https://github.com/equinor/fusion-framework/pull/3845) [`5114ac4`](https://github.com/equinor/fusion-framework/commit/5114ac4f71a60935d0194b9b2766f95adff0ba1e) Thanks [@asbjornhaland](https://github.com/asbjornhaland)! - Fix tsconfig references
|
|
8
|
+
|
|
9
|
+
- Updated dependencies [[`5114ac4`](https://github.com/equinor/fusion-framework/commit/5114ac4f71a60935d0194b9b2766f95adff0ba1e)]:
|
|
10
|
+
- @equinor/fusion-framework-module-app@7.2.1
|
|
11
|
+
- @equinor/fusion-framework-app@10.2.1
|
|
12
|
+
|
|
13
|
+
## 8.1.0
|
|
14
|
+
|
|
15
|
+
### Minor Changes
|
|
16
|
+
|
|
17
|
+
- [#3842](https://github.com/equinor/fusion-framework/pull/3842) [`d38cd60`](https://github.com/equinor/fusion-framework/commit/d38cd60472380d60282c2a5672dc6e3bba3e7ca9) Thanks [@asbjornhaland](https://github.com/asbjornhaland)! - Add module fusion-framework-module-analytics
|
|
18
|
+
|
|
19
|
+
### Patch Changes
|
|
20
|
+
|
|
21
|
+
- Updated dependencies [[`d38cd60`](https://github.com/equinor/fusion-framework/commit/d38cd60472380d60282c2a5672dc6e3bba3e7ca9)]:
|
|
22
|
+
- @equinor/fusion-framework-module-app@7.2.0
|
|
23
|
+
- @equinor/fusion-framework-app@10.2.0
|
|
24
|
+
|
|
3
25
|
## 8.0.0
|
|
4
26
|
|
|
5
27
|
### Patch Changes
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/analytics/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { useFrameworkModule } from '@equinor/fusion-framework-react';
|
|
2
|
+
import { useCallback } from 'react';
|
|
3
|
+
/**
|
|
4
|
+
* Hook for using analytics module configured in the framework.
|
|
5
|
+
*/
|
|
6
|
+
export const useTrackFeature = () => {
|
|
7
|
+
const analyticsProvider = useFrameworkModule('analytics');
|
|
8
|
+
const appProvider = useFrameworkModule('app');
|
|
9
|
+
const contextProvider = useFrameworkModule('context');
|
|
10
|
+
const telemetryProvider = useFrameworkModule('telemetry');
|
|
11
|
+
/**
|
|
12
|
+
* Tracks a analytics event.
|
|
13
|
+
*
|
|
14
|
+
* Can be used both in useCallback or useEffects - see README.md for examples.
|
|
15
|
+
*
|
|
16
|
+
* @param name - The feature to track
|
|
17
|
+
*/
|
|
18
|
+
const trackFeature = useCallback((name) => {
|
|
19
|
+
if (!analyticsProvider) {
|
|
20
|
+
telemetryProvider?.trackException({
|
|
21
|
+
name: 'AnalyticsProviderNotFound',
|
|
22
|
+
exception: new Error(`Analytics provider not found`),
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
analyticsProvider?.trackAnalytic({
|
|
26
|
+
name: 'app-feature',
|
|
27
|
+
value: {
|
|
28
|
+
feature: name,
|
|
29
|
+
},
|
|
30
|
+
attributes: {
|
|
31
|
+
appKey: appProvider?.current?.appKey,
|
|
32
|
+
context: contextProvider?.currentContext
|
|
33
|
+
? {
|
|
34
|
+
id: contextProvider.currentContext.id,
|
|
35
|
+
externalId: contextProvider.currentContext.externalId,
|
|
36
|
+
title: contextProvider.currentContext.title,
|
|
37
|
+
type: contextProvider.currentContext.type.id,
|
|
38
|
+
source: contextProvider.currentContext.source,
|
|
39
|
+
}
|
|
40
|
+
: undefined,
|
|
41
|
+
},
|
|
42
|
+
});
|
|
43
|
+
}, [analyticsProvider, appProvider, contextProvider, telemetryProvider]);
|
|
44
|
+
return trackFeature;
|
|
45
|
+
};
|
|
46
|
+
//# sourceMappingURL=useTrackFeature.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useTrackFeature.js","sourceRoot":"","sources":["../../../src/analytics/useTrackFeature.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAGrE,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AAEpC;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,GAAG,EAAE;IAClC,MAAM,iBAAiB,GAAG,kBAAkB,CAAkB,WAAW,CAAC,CAAC;IAC3E,MAAM,WAAW,GAAG,kBAAkB,CAAY,KAAK,CAAC,CAAC;IACzD,MAAM,eAAe,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;IACtD,MAAM,iBAAiB,GAAG,kBAAkB,CAAC,WAAW,CAAC,CAAC;IAE1D;;;;;;OAMG;IACH,MAAM,YAAY,GAAG,WAAW,CAC9B,CAAC,IAAY,EAAE,EAAE;QACf,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACvB,iBAAiB,EAAE,cAAc,CAAC;gBAChC,IAAI,EAAE,2BAA2B;gBACjC,SAAS,EAAE,IAAI,KAAK,CAAC,8BAA8B,CAAC;aACrD,CAAC,CAAC;QACL,CAAC;QAED,iBAAiB,EAAE,aAAa,CAAC;YAC/B,IAAI,EAAE,aAAa;YACnB,KAAK,EAAE;gBACL,OAAO,EAAE,IAAI;aACd;YACD,UAAU,EAAE;gBACV,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM;gBACpC,OAAO,EAAE,eAAe,EAAE,cAAc;oBACtC,CAAC,CAAC;wBACE,EAAE,EAAE,eAAe,CAAC,cAAc,CAAC,EAAE;wBACrC,UAAU,EAAE,eAAe,CAAC,cAAc,CAAC,UAAU;wBACrD,KAAK,EAAE,eAAe,CAAC,cAAc,CAAC,KAAK;wBAC3C,IAAI,EAAE,eAAe,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE;wBAC5C,MAAM,EAAE,eAAe,CAAC,cAAc,CAAC,MAAM;qBAC9C;oBACH,CAAC,CAAC,SAAS;aACd;SACF,CAAC,CAAC;IACL,CAAC,EACD,CAAC,iBAAiB,EAAE,WAAW,EAAE,eAAe,EAAE,iBAAiB,CAAC,CACrE,CAAC;IAEF,OAAO,YAAY,CAAC;AACtB,CAAC,CAAC"}
|
package/dist/esm/version.js
CHANGED