Additional Internal event properties on Frontend

Problem

General problem outlined in MVC: Enable passing of additional properties vi... (&12212 - closed) • Unassigned.

Specifically, there's no way to designate additional properties beyond user, project, namespace on Internal events within the Frontend

Desired Outcome

  • Enable passing label, value and property to the InternalEvents trackEvent call and the mixins trackEvent` call.
  • Forward these to the Internal Events API and the BrowserSDK (as custom properties)
  • Migrate a single existing Snowplow event to use at least one of the additional properties to verify it is working

Out of scope:

  • Adding additional properties handling to template helpers.
  • Changing documentation/generator (will be covered with #434506 (closed))

Proposed Solution

Method signature proposal:

this.trackEvent("push_package", {label: "nuget"})

How to verify

Migrated event is showing up with the property in the production data.

Edited by Ankit Panchal