@equinor/fusion-framework-react-app 8.0.1-cli-search-index.0 → 8.2.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,20 +1,48 @@
1
1
  # Change Log
2
2
 
3
- ## 8.0.1-cli-search-index.0
3
+ ## 8.2.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [#3849](https://github.com/equinor/fusion-framework/pull/3849) [`7caca57`](https://github.com/equinor/fusion-framework/commit/7caca573584ae4daedfb17e287d0329c2633771a) Thanks [@asbjornhaland](https://github.com/asbjornhaland)! - `trackFeature` now has an extra optional argument for passing additional analytics
8
+ data.
9
+
10
+ Example
11
+
12
+ ```typescript
13
+ const trackFeature = useTrackFeature();
14
+
15
+ // Without extra data
16
+ trackFeature("SomeComponent:loaded");
17
+
18
+ // Send additional data
19
+ trackFeature("some:feature:happened", {
20
+ extra: "data",
21
+ foo: "bar",
22
+ });
23
+ ```
24
+
25
+ ## 8.1.1
4
26
 
5
27
  ### Patch Changes
6
28
 
7
- - [#3757](https://github.com/equinor/fusion-framework/pull/3757) [`db880d1`](https://github.com/equinor/fusion-framework/commit/db880d1fbdb62ba4667f11229d1e6c3a4cea06fc) Thanks [@odinr](https://github.com/odinr)! - preview release
29
+ - [#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
30
+
31
+ - Updated dependencies [[`5114ac4`](https://github.com/equinor/fusion-framework/commit/5114ac4f71a60935d0194b9b2766f95adff0ba1e)]:
32
+ - @equinor/fusion-framework-module-app@7.2.1
33
+ - @equinor/fusion-framework-app@10.2.1
34
+
35
+ ## 8.1.0
36
+
37
+ ### Minor Changes
38
+
39
+ - [#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
40
+
41
+ ### Patch Changes
8
42
 
9
- - Updated dependencies [[`db880d1`](https://github.com/equinor/fusion-framework/commit/db880d1fbdb62ba4667f11229d1e6c3a4cea06fc)]:
10
- - @equinor/fusion-framework-app@10.1.3-cli-search-index.0
11
- - @equinor/fusion-framework-module-app@7.1.1-cli-search-index.0
12
- - @equinor/fusion-framework-module@5.0.6-cli-search-index.0
13
- - @equinor/fusion-framework-module-msal@6.0.1-cli-search-index.0
14
- - @equinor/fusion-framework-module-navigation@6.0.1-cli-search-index.0
15
- - @equinor/fusion-framework-react@7.4.20-cli-search-index.0
16
- - @equinor/fusion-framework-react-module-http@10.0.1-cli-search-index.0
17
- - @equinor/fusion-framework-react-module@3.1.14-cli-search-index.0
43
+ - Updated dependencies [[`d38cd60`](https://github.com/equinor/fusion-framework/commit/d38cd60472380d60282c2a5672dc6e3bba3e7ca9)]:
44
+ - @equinor/fusion-framework-module-app@7.2.0
45
+ - @equinor/fusion-framework-app@10.2.0
18
46
 
19
47
  ## 8.0.0
20
48
 
@@ -0,0 +1,2 @@
1
+ export { useTrackFeature } from './useTrackFeature';
2
+ //# sourceMappingURL=index.js.map
@@ -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,48 @@
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
+ * @param data - Optional map of additional key-value pairs to include with the analytics event
18
+ */
19
+ const trackFeature = useCallback((name, data) => {
20
+ if (!analyticsProvider) {
21
+ telemetryProvider?.trackException({
22
+ name: 'AnalyticsProviderNotFound',
23
+ exception: new Error(`Analytics provider not found`),
24
+ });
25
+ }
26
+ analyticsProvider?.trackAnalytic({
27
+ name: 'app-feature',
28
+ value: {
29
+ feature: name,
30
+ data,
31
+ },
32
+ attributes: {
33
+ appKey: appProvider?.current?.appKey,
34
+ context: contextProvider?.currentContext
35
+ ? {
36
+ id: contextProvider.currentContext.id,
37
+ externalId: contextProvider.currentContext.externalId,
38
+ title: contextProvider.currentContext.title,
39
+ type: contextProvider.currentContext.type.id,
40
+ source: contextProvider.currentContext.source,
41
+ }
42
+ : undefined,
43
+ },
44
+ });
45
+ }, [analyticsProvider, appProvider, contextProvider, telemetryProvider]);
46
+ return trackFeature;
47
+ };
48
+ //# 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;;;;;;;OAOG;IACH,MAAM,YAAY,GAAG,WAAW,CAC9B,CAAC,IAAY,EAAE,IAAkB,EAAE,EAAE;QACnC,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;gBACb,IAAI;aACL;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"}
@@ -1,3 +1,3 @@
1
1
  // Generated by genversion.
2
- export const version = '8.0.1-cli-search-index.0';
2
+ export const version = '8.2.0';
3
3
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA,2BAA2B;AAC3B,MAAM,CAAC,MAAM,OAAO,GAAG,0BAA0B,CAAC"}
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA,2BAA2B;AAC3B,MAAM,CAAC,MAAM,OAAO,GAAG,OAAO,CAAC"}