UNPKG

@angular/core

Version:

Angular - the core framework

31 lines 4.91 kB
/** * @license * Copyright Google LLC All Rights Reserved. * * Use of this source code is governed by an MIT-style license that can be * found in the LICENSE file at https://angular.io/license */ import { EarlyEventContract } from './earlyeventcontract'; /** * Provides a factory function for bootstrapping an event contract on a * specified object (by default, exposed on the `window`). * @param field The property on the object that the event contract will be placed on. * @param container The container that listens to events * @param appId A given identifier for an application. If there are multiple apps on the page * then this is how contracts can be initialized for each one. * @param eventTypes An array of event names that should be listened to. * @param captureEventTypes An array of event names that should be listened to with capture. * @param earlyJsactionTracker The object that should receive the event contract. */ export function bootstrapEarlyEventContract(field, container, appId, eventTypes, captureEventTypes, earlyJsactionTracker = window) { if (!earlyJsactionTracker[field]) { earlyJsactionTracker[field] = {}; } earlyJsactionTracker[field][appId] = {}; const eventContract = new EarlyEventContract(earlyJsactionTracker[field][appId], container); if (eventTypes) eventContract.addEvents(eventTypes); if (captureEventTypes) eventContract.addEvents(captureEventTypes, true); } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVnaXN0ZXJfZXZlbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9wcmltaXRpdmVzL2V2ZW50LWRpc3BhdGNoL3NyYy9yZWdpc3Rlcl9ldmVudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HO0FBRUgsT0FBTyxFQUFDLGtCQUFrQixFQUE2QixNQUFNLHNCQUFzQixDQUFDO0FBSXBGOzs7Ozs7Ozs7O0dBVUc7QUFDSCxNQUFNLFVBQVUsMkJBQTJCLENBQ3pDLEtBQWEsRUFDYixTQUFzQixFQUN0QixLQUFhLEVBQ2IsVUFBcUIsRUFDckIsaUJBQTRCLEVBQzVCLHVCQUF5RSxNQUFxRTtJQUU5SSxJQUFJLENBQUMsb0JBQW9CLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUNqQyxvQkFBb0IsQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFLENBQUM7SUFDbkMsQ0FBQztJQUNELG9CQUFvQixDQUFDLEtBQUssQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUN4QyxNQUFNLGFBQWEsR0FBRyxJQUFJLGtCQUFrQixDQUFDLG9CQUFvQixDQUFDLEtBQUssQ0FBQyxDQUFDLEtBQUssQ0FBQyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQzVGLElBQUksVUFBVTtRQUFFLGFBQWEsQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDcEQsSUFBSSxpQkFBaUI7UUFBRSxhQUFhLENBQUMsU0FBUyxDQUFDLGlCQUFpQixFQUFFLElBQUksQ0FBQyxDQUFDO0FBQzFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0IHtFYXJseUV2ZW50Q29udHJhY3QsIEVhcmx5SnNhY3Rpb25EYXRhQ29udGFpbmVyfSBmcm9tICcuL2Vhcmx5ZXZlbnRjb250cmFjdCc7XG5cbmV4cG9ydCB0eXBlIEV2ZW50Q29udHJhY3RUcmFja2VyPFQ+ID0ge1trZXk6IHN0cmluZ106IHtbYXBwSWQ6IHN0cmluZ106IFR9fTtcblxuLyoqXG4gKiBQcm92aWRlcyBhIGZhY3RvcnkgZnVuY3Rpb24gZm9yIGJvb3RzdHJhcHBpbmcgYW4gZXZlbnQgY29udHJhY3Qgb24gYVxuICogc3BlY2lmaWVkIG9iamVjdCAoYnkgZGVmYXVsdCwgZXhwb3NlZCBvbiB0aGUgYHdpbmRvd2ApLlxuICogQHBhcmFtIGZpZWxkIFRoZSBwcm9wZXJ0eSBvbiB0aGUgb2JqZWN0IHRoYXQgdGhlIGV2ZW50IGNvbnRyYWN0IHdpbGwgYmUgcGxhY2VkIG9uLlxuICogQHBhcmFtIGNvbnRhaW5lciBUaGUgY29udGFpbmVyIHRoYXQgbGlzdGVucyB0byBldmVudHNcbiAqIEBwYXJhbSBhcHBJZCBBIGdpdmVuIGlkZW50aWZpZXIgZm9yIGFuIGFwcGxpY2F0aW9uLiBJZiB0aGVyZSBhcmUgbXVsdGlwbGUgYXBwcyBvbiB0aGUgcGFnZVxuICogICAgICAgICAgICAgIHRoZW4gdGhpcyBpcyBob3cgY29udHJhY3RzIGNhbiBiZSBpbml0aWFsaXplZCBmb3IgZWFjaCBvbmUuXG4gKiBAcGFyYW0gZXZlbnRUeXBlcyBBbiBhcnJheSBvZiBldmVudCBuYW1lcyB0aGF0IHNob3VsZCBiZSBsaXN0ZW5lZCB0by5cbiAqIEBwYXJhbSBjYXB0dXJlRXZlbnRUeXBlcyBBbiBhcnJheSBvZiBldmVudCBuYW1lcyB0aGF0IHNob3VsZCBiZSBsaXN0ZW5lZCB0byB3aXRoIGNhcHR1cmUuXG4gKiBAcGFyYW0gZWFybHlKc2FjdGlvblRyYWNrZXIgVGhlIG9iamVjdCB0aGF0IHNob3VsZCByZWNlaXZlIHRoZSBldmVudCBjb250cmFjdC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGJvb3RzdHJhcEVhcmx5RXZlbnRDb250cmFjdChcbiAgZmllbGQ6IHN0cmluZyxcbiAgY29udGFpbmVyOiBIVE1MRWxlbWVudCxcbiAgYXBwSWQ6IHN0cmluZyxcbiAgZXZlbnRUeXBlcz86IHN0cmluZ1tdLFxuICBjYXB0dXJlRXZlbnRUeXBlcz86IHN0cmluZ1tdLFxuICBlYXJseUpzYWN0aW9uVHJhY2tlcjogRXZlbnRDb250cmFjdFRyYWNrZXI8RWFybHlKc2FjdGlvbkRhdGFDb250YWluZXI+ID0gd2luZG93IGFzIHVua25vd24gYXMgRXZlbnRDb250cmFjdFRyYWNrZXI8RWFybHlKc2FjdGlvbkRhdGFDb250YWluZXI+LFxuKSB7XG4gIGlmICghZWFybHlKc2FjdGlvblRyYWNrZXJbZmllbGRdKSB7XG4gICAgZWFybHlKc2FjdGlvblRyYWNrZXJbZmllbGRdID0ge307XG4gIH1cbiAgZWFybHlKc2FjdGlvblRyYWNrZXJbZmllbGRdW2FwcElkXSA9IHt9O1xuICBjb25zdCBldmVudENvbnRyYWN0ID0gbmV3IEVhcmx5RXZlbnRDb250cmFjdChlYXJseUpzYWN0aW9uVHJhY2tlcltmaWVsZF1bYXBwSWRdLCBjb250YWluZXIpO1xuICBpZiAoZXZlbnRUeXBlcykgZXZlbnRDb250cmFjdC5hZGRFdmVudHMoZXZlbnRUeXBlcyk7XG4gIGlmIChjYXB0dXJlRXZlbnRUeXBlcykgZXZlbnRDb250cmFjdC5hZGRFdmVudHMoY2FwdHVyZUV2ZW50VHlwZXMsIHRydWUpO1xufVxuIl19