@grafana/faro-core 2.4.0 → 2.5.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.
Files changed (67) hide show
  1. package/README.md +13 -1
  2. package/dist/bundle/faro-core.iife.js +1 -1
  3. package/dist/bundle/types/api/exceptions/types.d.ts +2 -0
  4. package/dist/bundle/types/api/index.d.ts +1 -0
  5. package/dist/bundle/types/api/noop.d.ts +2 -0
  6. package/dist/bundle/types/api/userActions/userAction.d.ts +1 -0
  7. package/dist/bundle/types/index.d.ts +2 -2
  8. package/dist/bundle/types/metas/index.d.ts +1 -1
  9. package/dist/bundle/types/metas/types.d.ts +19 -2
  10. package/dist/bundle/types/testUtils/mockTransport.d.ts +1 -1
  11. package/dist/bundle/types/utils/date.d.ts +18 -0
  12. package/dist/bundle/types/utils/index.d.ts +1 -1
  13. package/dist/bundle/types/version.d.ts +1 -1
  14. package/dist/cjs/api/exceptions/initialize.js +6 -4
  15. package/dist/cjs/api/exceptions/initialize.js.map +1 -1
  16. package/dist/cjs/api/exceptions/types.js.map +1 -1
  17. package/dist/cjs/api/index.js +3 -1
  18. package/dist/cjs/api/index.js.map +1 -1
  19. package/dist/cjs/api/noop.js +30 -0
  20. package/dist/cjs/api/noop.js.map +1 -0
  21. package/dist/cjs/api/userActions/userAction.js +10 -1
  22. package/dist/cjs/api/userActions/userAction.js.map +1 -1
  23. package/dist/cjs/index.js +2 -1
  24. package/dist/cjs/index.js.map +1 -1
  25. package/dist/cjs/metas/index.js.map +1 -1
  26. package/dist/cjs/metas/types.js.map +1 -1
  27. package/dist/cjs/sdk/registerFaro.js +2 -1
  28. package/dist/cjs/sdk/registerFaro.js.map +1 -1
  29. package/dist/cjs/utils/date.js +24 -0
  30. package/dist/cjs/utils/date.js.map +1 -1
  31. package/dist/cjs/utils/index.js +2 -1
  32. package/dist/cjs/utils/index.js.map +1 -1
  33. package/dist/cjs/version.js +1 -1
  34. package/dist/cjs/version.js.map +1 -1
  35. package/dist/esm/api/exceptions/initialize.js +6 -4
  36. package/dist/esm/api/exceptions/initialize.js.map +1 -1
  37. package/dist/esm/api/exceptions/types.js.map +1 -1
  38. package/dist/esm/api/index.js +1 -0
  39. package/dist/esm/api/index.js.map +1 -1
  40. package/dist/esm/api/noop.js +27 -0
  41. package/dist/esm/api/noop.js.map +1 -0
  42. package/dist/esm/api/userActions/userAction.js +11 -2
  43. package/dist/esm/api/userActions/userAction.js.map +1 -1
  44. package/dist/esm/index.js +1 -1
  45. package/dist/esm/index.js.map +1 -1
  46. package/dist/esm/metas/index.js.map +1 -1
  47. package/dist/esm/metas/types.js.map +1 -1
  48. package/dist/esm/sdk/registerFaro.js +2 -1
  49. package/dist/esm/sdk/registerFaro.js.map +1 -1
  50. package/dist/esm/utils/date.js +23 -0
  51. package/dist/esm/utils/date.js.map +1 -1
  52. package/dist/esm/utils/index.js +1 -1
  53. package/dist/esm/utils/index.js.map +1 -1
  54. package/dist/esm/version.js +1 -1
  55. package/dist/esm/version.js.map +1 -1
  56. package/dist/types/api/exceptions/types.d.ts +2 -0
  57. package/dist/types/api/index.d.ts +1 -0
  58. package/dist/types/api/noop.d.ts +2 -0
  59. package/dist/types/api/userActions/userAction.d.ts +1 -0
  60. package/dist/types/index.d.ts +2 -2
  61. package/dist/types/metas/index.d.ts +1 -1
  62. package/dist/types/metas/types.d.ts +19 -2
  63. package/dist/types/testUtils/mockTransport.d.ts +1 -1
  64. package/dist/types/utils/date.d.ts +18 -0
  65. package/dist/types/utils/index.d.ts +1 -1
  66. package/dist/types/version.d.ts +1 -1
  67. package/package.json +3 -3
@@ -11,7 +11,7 @@ export { BaseInstrumentation } from './instrumentations';
11
11
  export type { Instrumentation, Instrumentations } from './instrumentations';
12
12
  export { createInternalLogger, defaultInternalLoggerLevel, InternalLoggerLevel } from './internalLogger';
13
13
  export type { InternalLogger } from './internalLogger';
14
- export type { Meta, MetaApp, MetaAttributes, MetaBrowser, MetaGetter, MetaItem, MetaPage, Metas, MetaSDK, MetaSDKIntegration, MetaSession, MetaUser, MetaView, MetaOverrides, } from './metas';
14
+ export type { Meta, MetaApp, MetaAttributes, MetaBrowser, MetaDevice, MetaGetter, MetaItem, MetaOS, MetaPage, Metas, MetaSDK, MetaSDKIntegration, MetaSession, MetaUser, MetaView, MetaOverrides, } from './metas';
15
15
  export { faro, getInternalFaroFromGlobalObject, internalGlobalObjectKey, isInternalFaroOnGlobalObject, setInternalFaroOnGlobalObject, } from './sdk';
16
16
  export type { Faro } from './sdk';
17
17
  export * from './semantic';
@@ -19,7 +19,7 @@ export { BaseTransport, getTransportBody, TransportItemType, transportItemTypeTo
19
19
  export type { BeforeSendHook, SendFn, Transport, TransportBody, TransportItem, TransportItemPayload, Transports, } from './transports';
20
20
  export { defaultUnpatchedConsole } from './unpatchedConsole';
21
21
  export type { UnpatchedConsole } from './unpatchedConsole';
22
- export { allLogLevels, clampSamplingRate, createPromiseBuffer, deepEqual, defaultLogLevel, genShortID, getCurrentTimestamp, isArray, isBoolean, isDomError, isDomException, isElement, isElementDefined, isError, isErrorDefined, isErrorEvent, isEvent, isEventDefined, isFunction, isInstanceOf, isInt, isMap, isMapDefined, isNull, isNumber, isObject, isPrimitive, isRegExp, isString, isSymbol, isSyntheticEvent, isThenable, isToString, isTypeof, isUndefined, LogLevel, noop, dateNow, isEmpty, getCircularDependencyReplacer, stringifyExternalJson, stringifyObjectValues, Observable, } from './utils';
22
+ export { allLogLevels, clampSamplingRate, createPromiseBuffer, deepEqual, defaultLogLevel, genShortID, getCurrentTimestamp, isArray, isBoolean, isDomError, isDomException, isElement, isElementDefined, isError, isErrorDefined, isErrorEvent, isEvent, isEventDefined, isFunction, isInstanceOf, isInt, isMap, isMapDefined, isNull, isNumber, isObject, isPrimitive, isRegExp, isString, isSymbol, isSyntheticEvent, isThenable, isToString, isTypeof, isUndefined, LogLevel, noop, dateNow, monoNow, isEmpty, getCircularDependencyReplacer, stringifyExternalJson, stringifyObjectValues, Observable, } from './utils';
23
23
  export type { BaseObject, BaseObjectKey, BaseObjectPrimitiveValue, BaseObjectValue, BufferItem, PromiseBuffer, PromiseBufferOptions, PromiseProducer, Subscription, } from './utils';
24
24
  export { VERSION } from './version';
25
25
  export { unknownString } from './consts';
@@ -1,3 +1,3 @@
1
1
  export { initializeMetas } from './initialize';
2
2
  export { registerInitialMetas } from './registerInitial';
3
- export type { Meta, MetaApp, MetaAttributes, MetaBrowser, MetaGetter, MetaItem, MetaK6, MetaPage, MetaSDK, MetaSDKIntegration, MetaSession, MetaUser, MetaView, Metas, MetaOverrides, } from './types';
3
+ export type { Meta, MetaApp, MetaAttributes, MetaBrowser, MetaDevice, MetaGetter, MetaItem, MetaK6, MetaOS, MetaPage, MetaSDK, MetaSDKIntegration, MetaSession, MetaUser, MetaView, Metas, MetaOverrides, } from './types';
@@ -19,12 +19,13 @@ export interface MetaSDK {
19
19
  integrations?: MetaSDKIntegration[];
20
20
  }
21
21
  export interface MetaApp {
22
+ bundleId?: string;
23
+ environment?: string;
24
+ installationId?: string;
22
25
  name?: string;
23
26
  namespace?: string;
24
27
  release?: string;
25
28
  version?: string;
26
- environment?: string;
27
- bundleId?: string;
28
29
  }
29
30
  export interface MetaUser {
30
31
  /**
@@ -88,6 +89,20 @@ export interface MetaK6 {
88
89
  isK6Browser?: boolean;
89
90
  testRunId?: string;
90
91
  }
92
+ export interface MetaOS {
93
+ name?: string;
94
+ version?: string;
95
+ build_id?: string;
96
+ detail?: string;
97
+ }
98
+ export interface MetaDevice {
99
+ manufacturer?: string;
100
+ model_identifier?: string;
101
+ model_name?: string;
102
+ brand?: string;
103
+ is_physical?: boolean;
104
+ type?: string;
105
+ }
91
106
  export interface Meta {
92
107
  sdk?: MetaSDK;
93
108
  app?: MetaApp;
@@ -97,6 +112,8 @@ export interface Meta {
97
112
  browser?: MetaBrowser;
98
113
  view?: MetaView;
99
114
  k6?: MetaK6;
115
+ os?: MetaOS;
116
+ device?: MetaDevice;
100
117
  }
101
118
  /**
102
119
  * MetaOverrides are instructions that allow the receiver to override certain properties (Grafana Cloud only).
@@ -4,7 +4,7 @@ import type { Transport, TransportItem } from '../transports';
4
4
  export declare class MockTransport extends BaseTransport implements Transport {
5
5
  private ignoreURLs;
6
6
  readonly name = "@grafana/transport-mock";
7
- readonly version = "2.4.0";
7
+ readonly version = "2.5.0";
8
8
  items: TransportItem[];
9
9
  constructor(ignoreURLs?: Patterns);
10
10
  send(items: TransportItem[]): void | Promise<void>;
@@ -1,3 +1,21 @@
1
1
  export declare function dateNow(): number;
2
+ /**
3
+ * Returns a high-resolution, monotonic timestamp in milliseconds.
4
+ *
5
+ * Use this for measuring elapsed time / durations. Unlike {@link dateNow} (which is
6
+ * derived from the system wall clock and is therefore subject to NTP adjustments,
7
+ * manual clock changes, daylight-savings transitions, etc.), `monoNow` is backed by
8
+ * `performance.now()`, which is guaranteed never to decrease and is unaffected by
9
+ * such adjustments.
10
+ *
11
+ * Do NOT use this for absolute event timestamps that need to be correlated with
12
+ * other systems or persisted across page loads — use {@link dateNow} or
13
+ * {@link getCurrentTimestamp} for that.
14
+ *
15
+ * Falls back to {@link dateNow} in environments where `performance.now` is
16
+ * unavailable (very old runtimes, unusual SSR setups). The fallback re-introduces
17
+ * wall-clock susceptibility but preserves the API contract.
18
+ */
19
+ export declare function monoNow(): number;
2
20
  export declare function getCurrentTimestamp(): string;
3
21
  export declare function timestampToIsoString(value: number): string;
@@ -10,7 +10,7 @@ export { createPromiseBuffer } from './promiseBuffer';
10
10
  export type { BufferItem, PromiseBuffer, PromiseBufferOptions, PromiseProducer } from './promiseBuffer';
11
11
  export { genShortID } from './shortId';
12
12
  export { getBundleId } from './sourceMaps';
13
- export { dateNow } from './date';
13
+ export { dateNow, monoNow } from './date';
14
14
  export { getCircularDependencyReplacer, stringifyExternalJson, stringifyObjectValues } from './json';
15
15
  export { Observable } from './reactive';
16
16
  export type { Subscription } from './reactive';
@@ -1 +1 @@
1
- export declare const VERSION = "2.4.0";
1
+ export declare const VERSION = "2.5.0";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@grafana/faro-core",
3
- "version": "2.4.0",
3
+ "version": "2.5.0",
4
4
  "description": "Core package of Faro.",
5
5
  "keywords": [
6
6
  "observability",
@@ -56,7 +56,7 @@
56
56
  },
57
57
  "dependencies": {
58
58
  "@opentelemetry/api": "^1.9.0",
59
- "@opentelemetry/otlp-transformer": "^0.215.0"
59
+ "@opentelemetry/otlp-transformer": "^0.216.0"
60
60
  },
61
61
  "devDependencies": {
62
62
  "@types/node": "24.12.2"
@@ -64,5 +64,5 @@
64
64
  "publishConfig": {
65
65
  "access": "public"
66
66
  },
67
- "gitHead": "0dcca81629cfc20cb18c6a7306209dceccdc75c8"
67
+ "gitHead": "be7742480b1b4d936f3476620aab338237ae16ca"
68
68
  }