Skip to content

editor › Globals › Analytics

Class: Analytics

A wrapper for all Analytics functionality

Hierarchy

  • Analytics

Index

Constructors

Properties

Methods

Constructors

constructor

+ new Analytics(enableLogging: boolean): Analytics

Defined in src/util/Analytics.ts:32

TODO: what is this?

Parameters:

Name Type Description
enableLogging boolean specifies whether the Debug Version of the Google Analytics Library should be used

Returns: Analytics

Properties

Private Readonly analyticsTrackerKyub

• analyticsTrackerKyub: AnalyticsTrackerKyub

Defined in src/util/Analytics.ts:31


Private Readonly enableLogging

• enableLogging: boolean

Defined in src/util/Analytics.ts:32


Private fpsFrameDeltaSum

• fpsFrameDeltaSum: number = 0

Defined in src/util/Analytics.ts:29


Private fpsFrameHitCount

• fpsFrameHitCount: number = 0

Defined in src/util/Analytics.ts:28


Private fpsPreviousFidelity

• fpsPreviousFidelity: string

Defined in src/util/Analytics.ts:30


Private muted

• muted: boolean = false

Defined in src/util/Analytics.ts:27


Static Private sharedInstance

▪ sharedInstance: Analytics

Defined in src/util/Analytics.ts:15

The singleton to be used primarily

Methods

Private _getDefaultTrackerName

▸ _getDefaultTrackerName(): string

Defined in src/util/Analytics.ts:211

Returns: string

the default tracker name specified in the Config


isMuted

▸ isMuted(): boolean

Defined in src/util/Analytics.ts:62

Returns: boolean

whether Analytics is currently allowed to send data


mute

▸ mute(): void

Defined in src/util/Analytics.ts:48

Prevents Analytics from sending data

Returns: void


reportEditorSetupTime

▸ reportEditorSetupTime(loadingTime: number): void

Defined in src/util/Analytics.ts:163

Sends an event to Google Analytics containing the editor's loading time.

Parameters:

Name Type Description
loadingTime number the loading time of the editor in milliseconds

Returns: void


reportFrameRendered

▸ reportFrameRendered(frameDelta: number, currentFidelity: string): void

Defined in src/util/Analytics.ts:179

Sends an event to Google Analytics with the calculated average of fps over a time interval. The time interval length can be specified in the Config under 'analytics.fpsSampleDuration'. In GA the FPS is uncommonly stored inside a timing, a higher value is therefore considered better.

Parameters:

Name Type Description
frameDelta number the time that passed since the last rendered screen in milliseconds
currentFidelity string the visual fidelity used for the rendered screen

Returns: void


reportMenuItemSelected

▸ reportMenuItemSelected(menuItemName: string, trackerName: string): void

Defined in src/util/Analytics.ts:128

Sends an event to API stating that a menu item was selected

Parameters:

Name Type Default Description
menuItemName string - the unique name of the menu item
trackerName string this._getDefaultTrackerName() -

Returns: void


reportModuleAction

▸ reportModuleAction(moduleName: string, action: string, parameters: any): void

Defined in src/util/Analytics.ts:136

Parameters:

Name Type
moduleName string
action string
parameters any

Returns: void


reportPageLoaded

▸ reportPageLoaded(): void

Defined in src/util/Analytics.ts:145

Sends two event to Google Analytics: the pageview and the pages' loading time The reporting of the loading time depends on window.performance.timing.requestStart being set

Returns: void


reportToolSelected

▸ reportToolSelected(toolName: string, trackerName: string): void

Defined in src/util/Analytics.ts:79

Sends an event to API stating that a tool was selected

Parameters:

Name Type Default Description
toolName string - the unique name of the selected tool
trackerName string this._getDefaultTrackerName() -

Returns: void


reportToolUsageFinished

▸ reportToolUsageFinished(toolName: string): void

Defined in src/util/Analytics.ts:111

Sends an event to API stating that a tool was used

Parameters:

Name Type Default Description
toolName string this._getDefaultTrackerName() the unique name of the selected tool

Returns: void


reportToolUsageStarted

▸ reportToolUsageStarted(toolName: string, parameters?: any, trackerName: string): void

Defined in src/util/Analytics.ts:93

Sends an event to API stating that a tool was used

Parameters:

Name Type Default Description
toolName string - the unique name of the selected tool
parameters? any - -
trackerName string this._getDefaultTrackerName() -

Returns: void


setEditor

▸ setEditor(editor: Editor): void

Defined in src/util/Analytics.ts:66

Parameters:

Name Type
editor Editor

Returns: void


setModelProjectID

▸ setModelProjectID(modelProjectId: string): void

Defined in src/util/Analytics.ts:70

Parameters:

Name Type
modelProjectId string

Returns: void


unmute

▸ unmute(): void

Defined in src/util/Analytics.ts:55

Allow Analytics to send data

Returns: void


Static getSharedInstance

▸ getSharedInstance(): Analytics

Defined in src/util/Analytics.ts:20

Returns: Analytics

the sharedInstance singleton and also does the initialization if not done before