@microsoft/applicationinsights-angularplugin-js 15.3.8-nightly.2508-02 → 15.3.8

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.
@@ -149,4 +149,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
149
149
  type: Component,
150
150
  args: [{ selector: "lib-applicationinsights-angularplugin-js", template: "" }]
151
151
  }], ctorParameters: function () { return [{ type: i0.Injector }]; } });
152
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwbGljYXRpb25pbnNpZ2h0cy1hbmd1bGFycGx1Z2luLWpzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2FwcGxpY2F0aW9uaW5zaWdodHMtYW5ndWxhcnBsdWdpbi1qcy9zcmMvbGliL2FwcGxpY2F0aW9uaW5zaWdodHMtYW5ndWxhcnBsdWdpbi1qcy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVyxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQzBCLDBCQUEwQixFQUFFLHlCQUF5QixFQUNyRixNQUFNLHVDQUF1QyxDQUFDO0FBQy9DLE9BQU8sRUFDd0MsbUJBQW1CLEVBQUUsVUFBVSxFQUNoRCxXQUFXLEVBQUUsY0FBYyxFQUM5QixhQUFhLEVBQUUsY0FBYyxFQUFtQixPQUFPLEVBQ2pGLE1BQU0sd0NBQXdDLENBQUM7QUFDaEQsT0FBTyxZQUFZLE1BQU0sNEJBQTRCLENBQUM7QUFDdEQsT0FBTyxFQUFFLGFBQWEsRUFBVSxNQUFNLGlCQUFpQixDQUFDO0FBQ3hELE9BQU8sRUFBRSw0Q0FBNEMsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBSWpILE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQzs7QUFnQmxELElBQUksVUFBVSxDQUFDO0FBRWYsTUFBTSw2QkFBNkIsR0FBNkMsYUFBYSxDQUFDO0lBQzFGLE1BQU0sRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsQ0FBQyxFQUFFLFVBQVUsRUFBQztJQUN0QyxhQUFhLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFBRSxVQUFVLEVBQUM7Q0FDaEQsQ0FBQyxDQUFDO0FBT0gsa0VBQWtFO0FBQ2xFLE1BQU0sT0FBTyxhQUFjLFNBQVEsbUJBQW1CO0lBSWxELFlBQW9CLFNBQW9CO1FBQ3BDLEtBQUssRUFBRSxDQUFDO1FBRFEsY0FB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QUUsT0FBTyxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUdELFVBQVUsQ0FBQyxNQUFnQyxFQUFFLElBQXNCLEVBQUUsVUFBcUIsRUFBRSxXQUFtQztRQUMzSCxvRkFBb0Y7SUFDeEYsQ0FBQztJQUVELGFBQWEsQ0FBQyxRQUE0QjtRQUN0QyxvRkFBb0Y7SUFDeEYsQ0FBQzs7MkdBMUpRLGFBQWE7K0ZBQWIsYUFBYSx1R0FKWixFQUFFOzRGQUlILGFBQWE7a0JBTnpCLFNBQVM7K0JBQ0ksMENBQTBDLFlBQzFDLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEluamVjdG9yfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge1xyXG4gICAgSUNvbmZpZywgSVBhZ2VWaWV3VGVsZW1ldHJ5LCBQcm9wZXJ0aWVzUGx1Z2luSWRlbnRpZmllciwgQW5hbHl0aWNzUGx1Z2luSWRlbnRpZmllclxyXG59IGZyb20gXCJAbWljcm9zb2Z0L2FwcGxpY2F0aW9uaW5zaWdodHMtY29tbW9uXCI7XHJcbmltcG9ydCB7XHJcbiAgICBJUGx1Z2luLCBJQ29uZmlndXJhdGlvbiwgSUFwcEluc2lnaHRzQ29yZSwgQmFzZVRlbGVtZXRyeVBsdWdpbiwgYXJyRm9yRWFjaCwgSVRlbGVtZXRyeUl0ZW0sIElUZWxlbWV0cnlQbHVnaW5DaGFpbixcclxuICAgIElQcm9jZXNzVGVsZW1ldHJ5Q29udGV4dCwgZ2V0TG9jYXRpb24sIF90aHJvd0ludGVybmFsLCBlTG9nZ2luZ1NldmVyaXR5LCBfZUludGVybmFsTWVzc2FnZUlkLCBJUHJvY2Vzc1RlbGVtZXRyeVVubG9hZENvbnRleHQsXHJcbiAgICBJVGVsZW1ldHJ5VW5sb2FkU3RhdGUsIGdlbmVyYXRlVzNDSWQsIG9uQ29uZmlnQ2hhbmdlLCBJQ29uZmlnRGVmYXVsdHMsIGlzQXJyYXlcclxufSBmcm9tIFwiQG1pY3Jvc29mdC9hcHBsaWNhdGlvbmluc2lnaHRzLWNvcmUtanNcIjtcclxuaW1wb3J0IGR5bmFtaWNQcm90byBmcm9tIFwiQG1pY3Jvc29mdC9keW5hbWljcHJvdG8tanNcIjtcclxuaW1wb3J0IHsgTmF2aWdhdGlvbkVuZCwgUm91dGVyIH0gZnJvbSBcIkBhbmd1bGFyL3JvdXRlclwiO1xyXG5pbXBvcnQgeyBBcHBsaWNhdGlvbmluc2lnaHRzQW5ndWxhcnBsdWdpbkVycm9yU2VydmljZSB9IGZyb20gXCIuL2FwcGxpY2F0aW9uaW5zaWdodHMtYW5ndWxhcnBsdWdpbi1lcnJvci5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IElFcnJvclNlcnZpY2UgfSBmcm9tIFwiLi9JRXJyb3JTZXJ2aWNlXCI7XHJcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7IEFuYWx5dGljc1BsdWdpbiB9IGZyb20gXCJAbWljcm9zb2Z0L2FwcGxpY2F0aW9uaW5zaWdodHMtYW5hbHl0aWNzLWpzXCI7XHJcbmltcG9ydCB7b2JqRGVlcEZyZWV6ZX0gZnJvbSBcIkBuZXZ3YXJlMjEvdHMtdXRpbHNcIjtcclxuaW1wb3J0IHsgUHJvcGVydGllc1BsdWdpbiB9IGZyb20gXCJAbWljcm9zb2Z0L2FwcGxpY2F0aW9uaW5zaWdodHMtcHJvcGVydGllcy1qc1wiO1xyXG5cclxuaW50ZXJmYWNlIElBbmd1bGFyRXh0ZW5zaW9uQ29uZmlnIHtcclxuICAgIC8qKlxyXG4gICAgICogQW5ndWxhciByb3V0ZXIgZm9yIGVuYWJsaW5nIEFwcGxpY2F0aW9uIEluc2lnaHRzIFBhZ2VWaWV3IHRyYWNraW5nLlxyXG4gICAgICovXHJcbiAgICByb3V0ZXI/OiBSb3V0ZXI7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBDdXN0b20gZXJyb3Igc2VydmljZSBmb3IgZ2xvYmFsIGVycm9yIGhhbmRsaW5nLlxyXG4gICAgICovXHJcbiAgICBlcnJvclNlcnZpY2VzPzogSUVycm9yU2VydmljZVtdO1xyXG4gICAgdXNlSW5qZWN0b3I/OiBib29sZWFuO1xyXG59XHJcblxyXG5sZXQgdW5kZWZWYWx1ZTtcclxuXHJcbmNvbnN0IGRlZmF1bHRBbmd1bGFyRXh0ZW5zaW9uQ29uZmlnOiBJQ29uZmlnRGVmYXVsdHM8SUFuZ3VsYXJFeHRlbnNpb25Db25maWc+ID0gb2JqRGVlcEZyZWV6ZSh7XHJcbiAgICByb3V0ZXI6IHsgYmxrVmFsOiB0cnVlLCB2OiB1bmRlZlZhbHVlfSxcclxuICAgIGVycm9yU2VydmljZXM6IHsgYmxrVmFsOiB0cnVlLCB2OiB1bmRlZlZhbHVlfVxyXG59KTtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6IFwibGliLWFwcGxpY2F0aW9uaW5zaWdodHMtYW5ndWxhcnBsdWdpbi1qc1wiLFxyXG4gICAgdGVtcGxhdGU6IFwiXCIsXHJcbiAgICBzdHlsZXM6IFtdXHJcbn0pXHJcbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvY29tcG9uZW50LWNsYXNzLXN1ZmZpeFxyXG5leHBvcnQgY2xhc3MgQW5ndWxhclBsdWdpbiBleHRlbmRzIEJhc2VUZWxlbWV0cnlQbHVnaW4ge1xyXG4gICAgcHVibGljIHByaW9yaXR5ID0gMTg2O1xyXG4gICAgcHVibGljIGlkZW50aWZpZXIgPSBcIkFuZ3VsYXJQbHVnaW5cIjtcclxuXHJcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9pbmplY3Rvcj86IEluamVjdG9yKSB7IC8vIF9pbmplY3RvciBpcyBvcHRpb25hbCB0byBwcm92aWRlXHJcbiAgICAgICAgc3VwZXIoKTtcclxuICAgICAgICBsZXQgX2FuYWx5dGljc1BsdWdpbjogQW5hbHl0aWNzUGx1Z2luO1xyXG4gICAgICAgIGxldCBfcHJvcGVydGllc1BsdWdpbjogUHJvcGVydGllc1BsdWdpbjtcclxuICAgICAgICBsZXQgX2FuZ3VsYXJDZmc6IElBbmd1bGFyRXh0ZW5zaW9uQ29uZmlnO1xyXG4gICAgICAgIGxldCBfZXZlbnRTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcclxuICAgICAgICBsZXQgX2lzUGFnZUluaXRpYWxMb2FkOiBib29sZWFuO1xyXG4gICAgICAgIGxldCBfcHJldlJvdXRlcjogUm91dGVyO1xyXG4gICAgICAgIGxldCBfZXJyb3JTZXJ2aWNlSW5zdGFuY2U6IEFwcGxpY2F0aW9uaW5zaWdodHNBbmd1bGFycGx1Z2luRXJyb3JTZXJ2aWNlO1xyXG5cclxuICAgICAgICBkeW5hbWljUHJvdG8oQW5ndWxhclBsdWdpbiwgdGhpcywgKF9zZWxmLCBfYmFzZSkgPT4ge1xyXG5cclxuICAgICAgICAgICAgY29uc3QgX2luaXREZWZhdWx0cyA9ICgpID0+IHtcclxuICAgICAgICAgICAgICAgIF9hbmFseXRpY3NQbHVnaW4gPSBudWxsO1xyXG4gICAgICAgICAgICAgICAgX3Byb3BlcnRpZXNQbHVnaW4gPSBudWxsO1xyXG4gICAgICAgICAgICAgICAgX2FuZ3VsYXJDZmcgPSBudWxsO1xyXG4gICAgICAgICAgICAgICAgX2V2ZW50U3Vic2NyaXB0aW9uID0gbnVsbDtcclxuICAgICAgICAgICAgICAgIF9pc1BhZ2VJbml0aWFsTG9hZCA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICBfcHJldlJvdXRlciA9IHVuZGVmVmFsdWU7XHJcbiAgICAgICAgICAgIH07XHJcblxyXG4gICAgICAgICAgICBfaW5pdERlZmF1bHRzKCk7XHJcblxyXG4gICAgICAgICAgICBfc2VsZi5pbml0aWFsaXplID0gKGNvbmZpZzogSUNvbmZpZ3VyYXRpb24gJiBJQ29uZmlnLCBjb3JlOiBJQXBwSW5zaWdodHNDb3JlLCBleHRlbnNpb25zOiBJUGx1Z2luW10sXHJcbiAgICAgICAgICAgICAgICBwbHVnaW5DaGFpbj86IElUZWxlbWV0cnlQbHVnaW5DaGFpbikgPT4ge1xyXG4gICAgICAgICAgICAgICAgc3VwZXIuaW5pdGlhbGl6ZShjb25maWcsIGNvcmUsIGV4dGVuc2lvbnMsIHBsdWdpbkNoYWluKTtcclxuICAgICAgICBcclxuICAgICAgICAgICAgICAgIF9zZWxmLl9hZGRIb29rKG9uQ29uZmlnQ2hhbmdlKGNvbmZpZywgKGRldGFpbHMpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBsZXQgY3R4ID0gX3NlbGYuX2dldFRlbEN0eCgpO1xyXG4gICAgICAgICAgICAgICAgICAgIF9hbmd1bGFyQ2ZnID0gY3R4LmdldEV4dENmZzxJQW5ndWxhckV4dGVuc2lvbkNvbmZpZz4oX3NlbGYuaWRlbnRpZmllciwgZGVmYXVsdEFuZ3VsYXJFeHRlbnNpb25Db25maWcpO1xyXG4gICAgICAgICAgICAgICAgICAgIF9wcm9wZXJ0aWVzUGx1Z2luID0gY29yZS5nZXRQbHVnaW48UHJvcGVydGllc1BsdWdpbj4oUHJvcGVydGllc1BsdWdpbklkZW50aWZpZXIpPy5wbHVnaW4gYXMgUHJvcGVydGllc1BsdWdpbjtcclxuICAgICAgICAgICAgICAgICAgICBfYW5hbHl0aWNzUGx1Z2luID0gY29yZS5nZXRQbHVnaW48QW5hbHl0aWNzUGx1Z2luPihBbmFseXRpY3NQbHVnaW5JZGVudGlmaWVyKT8ucGx1Z2luIGFzIEFuYWx5dGljc1BsdWdpbjtcclxuICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICBpZiAoX2FuZ3VsYXJDZmcudXNlSW5qZWN0b3IgJiYgX2luamVjdG9yKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgX2Vycm9yU2VydmljZUluc3RhbmNlID0gdGhpcy5faW5qZWN0b3IuZ2V0KEFwcGxpY2F0aW9uaW5zaWdodHNBbmd1bGFycGx1Z2luRXJyb3JTZXJ2aWNlKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgX2Vycm9yU2VydmljZUluc3RhbmNlID0gX2Vycm9yU2VydmljZUluc3RhbmNlID8gX2Vycm9yU2VydmljZUluc3RhbmNlXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDogQXBwbGljYXRpb25pbnNpZ2h0c0FuZ3VsYXJwbHVnaW5FcnJvclNlcnZpY2UuaW5zdGFuY2U7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIC8vIHR3byBpbnN0YW5jZSBvZiBlcnJvclNlcnZpY2VcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKF9hbmFseXRpY3NQbHVnaW4pIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKF9lcnJvclNlcnZpY2VJbnN0YW5jZSAhPT0gbnVsbCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX2Vycm9yU2VydmljZUluc3RhbmNlLnBsdWdpbiA9IF9hbmFseXRpY3NQbHVnaW47XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoX2FuZ3VsYXJDZmcuZXJyb3JTZXJ2aWNlcyAmJiBpc0FycmF5KF9hbmd1bGFyQ2ZnLmVycm9yU2VydmljZXMpKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2Vycm9yU2VydmljZUluc3RhbmNlLmNsZWFyRXJyb3JIYW5kbGVycygpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFyckZvckVhY2goX2FuZ3VsYXJDZmcuZXJyb3JTZXJ2aWNlcywgKGVycm9yU2VydmljZTogSUVycm9yU2VydmljZSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfZXJyb3JTZXJ2aWNlSW5zdGFuY2UuYWRkRXJyb3JIYW5kbGVyKGVycm9yU2VydmljZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKF9hbmd1bGFyQ2ZnLnJvdXRlciAhPT0gX3ByZXZSb3V0ZXIpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gcm91dGVyIGlzIGNoYW5nZWQsIG9yIGhhcyBub3QgYmVlbiBpbml0aWFsaXplZCB5ZXRcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIHVuc3Vic2NyaWJlIHByZXZpb3VzIHJvdXRlciBldmVudHNcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKF9ldmVudFN1YnNjcmlwdGlvbikge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX2V2ZW50U3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChfYW5ndWxhckNmZy5yb3V0ZXIpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gb25seSB0cmFjayBwYWdlIHZpZXcgaWYgaXQgaXMgdGhlIGluaXRpYWwgcGFnZSBsb2FkIGZvciB0aGlzIHBsdWdpblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKF9pc1BhZ2VJbml0aWFsTG9hZCl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgcGFnZVZpZXdUZWxlbWV0cnk6IElQYWdlVmlld1RlbGVtZXRyeSA9IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXJpOiBfYW5ndWxhckNmZy5yb3V0ZXIudXJsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfc2VsZi50cmFja1BhZ2VWaWV3KHBhZ2VWaWV3VGVsZW1ldHJ5KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gc3Vic2NyaWJlIHRvIG5ldyByb3V0ZXIgZXZlbnRzXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfZXZlbnRTdWJzY3JpcHRpb24gPSBfYW5ndWxhckNmZy5yb3V0ZXIuZXZlbnRzLnN1YnNjcmliZShldmVudCA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKF9zZWxmLmlzSW5pdGlhbGl6ZWQoKSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uRW5kKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBmb3IgcGFnZSBpbml0aWFsIGxvYWQsIGRvIG5vdCBjYWxsIHRyYWNrUGFnZVZpZXcgdHdpY2VcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChfaXNQYWdlSW5pdGlhbExvYWQpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfaXNQYWdlSW5pdGlhbExvYWQgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBwdnQ6IElQYWdlVmlld1RlbGVtZXRyeSA9IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cmk6IF9hbmd1bGFyQ2ZnLnJvdXRlci51cmwsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvcGVydGllczogeyBkdXJhdGlvbjogMCB9IC8vIFNQQSByb3V0ZSBjaGFuZ2UgbG9hZGluZyBkdXJhdGlvbnMgYXJlIHVuZGVmaW5lZCwgc28gc2VuZCAwXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3NlbGYudHJhY2tQYWdlVmlldyhwdnQpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgX3ByZXZSb3V0ZXIgPSBfYW5ndWxhckNmZy5yb3V0ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfSkpO1xyXG5cclxuICAgICAgICAgICAgICAgIC8vIGZvciB0ZXN0IHB1cnBvc2Ugb25seVxyXG4gICAgICAgICAgICAgICAgX3NlbGZbXCJfZ2V0RGJnUGxnVGFyZ2V0c1wiXSA9ICgpID0+IF9hbmd1bGFyQ2ZnO1xyXG4gICAgICAgICAgICAgICAgX3NlbGZbXCJfZ2V0RXJyb3JTZXJ2aWNlXCJdID0gKCkgPT4gX2Vycm9yU2VydmljZUluc3RhbmNlO1xyXG4gICAgICAgICAgICB9O1xyXG5cclxuICAgICAgICAgICAgX3NlbGYudHJhY2tQYWdlVmlldyA9IChwYWdlVmlldzogSVBhZ2VWaWV3VGVsZW1ldHJ5KSA9PiB7XHJcbiAgICAgICAgICAgICAgICBpZiAoX2FuYWx5dGljc1BsdWdpbikge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGxvY2F0aW9uID0gZ2V0TG9jYXRpb24oKTtcclxuICAgICAgICAgICAgICAgICAgICBpZiAoX3Byb3BlcnRpZXNQbHVnaW4gJiYgX3Byb3BlcnRpZXNQbHVnaW4uY29udGV4dCAmJiBfcHJvcGVydGllc1BsdWdpbi5jb250ZXh0LnRlbGVtZXRyeVRyYWNlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIF9wcm9wZXJ0aWVzUGx1Z2luLmNvbnRleHQudGVsZW1ldHJ5VHJhY2UudHJhY2VJRCA9IGdlbmVyYXRlVzNDSWQoKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgX3Byb3BlcnRpZXNQbHVnaW4uY29udGV4dC50ZWxlbWV0cnlUcmFjZS5uYW1lID0gbG9jYXRpb24gJiYgbG9jYXRpb24ucGF0aG5hbWUgfHwgXCJfdW5rbm93bl9cIjtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgX2FuYWx5dGljc1BsdWdpbi50cmFja1BhZ2VWaWV3KHBhZ2VWaWV3KTtcclxuICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgX3Rocm93SW50ZXJuYWwoX3NlbGYuZGlhZ0xvZygpLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbWF4LWxlblxyXG4gICAgICAgICAgICAgICAgICAgICAgICBlTG9nZ2luZ1NldmVyaXR5LkNSSVRJQ0FMLCBfZUludGVybmFsTWVzc2FnZUlkLlRlbGVtZXRyeUluaXRpYWxpemVyRmFpbGVkLCBcIkFuYWx5dGljcyBwbHVnaW4gaXMgbm90IGF2YWlsYWJsZSwgQW5ndWxhciBwbHVnaW4gdGVsZW1ldHJ5IHdpbGwgbm90IGJlIHNlbnQ6IFwiKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfTtcclxuICAgICAgICBcclxuXHJcbiAgICAgICAgICAgIF9zZWxmLl9kb1RlYXJkb3duID0gKHVubG9hZEN0eD86IElQcm9jZXNzVGVsZW1ldHJ5VW5sb2FkQ29udGV4dCwgdW5sb2FkU3RhdGU/OiBJVGVsZW1ldHJ5VW5sb2FkU3RhdGUsXHJcbiAgICAgICAgICAgICAgICBhc3luY0NhbGxiYWNrPzogKCkgPT4gdm9pZCk6IHZvaWQgfCBib29sZWFuID0+IHtcclxuICAgICAgICAgICAgICAgIGlmIChfYW5hbHl0aWNzUGx1Z2luICYmIF9lcnJvclNlcnZpY2VJbnN0YW5jZSAhPT0gbnVsbCkge1xyXG4gICAgICAgICAgICAgICAgICAgIF9lcnJvclNlcnZpY2VJbnN0YW5jZS5wbHVnaW4gPSBudWxsO1xyXG4gICAgICAgICAgICAgICAgICAgIGlmIChfYW5ndWxhckNmZykge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoX2FuZ3VsYXJDZmcuZXJyb3JTZXJ2aWNlcyAmJiBBcnJheS5pc0FycmF5KF9hbmd1bGFyQ2ZnLmVycm9yU2VydmljZXMpKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfZXJyb3JTZXJ2aWNlSW5zdGFuY2UuY2xlYXJFcnJvckhhbmRsZXJzKCk7XHJcbiAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgIFxyXG4gICAgICAgICAgICAgICAgaWYgKF9ldmVudFN1YnNjcmlwdGlvbikge1xyXG4gICAgICAgICAgICAgICAgICAgIF9ldmVudFN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG4gICAgICAgICAgICAgICAgICAgIF9ldmVudFN1YnNjcmlwdGlvbiA9IG51bGw7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBfaW5pdERlZmF1bHRzKCk7XHJcbiAgICAgICAgICAgIH07XHJcbiAgICAgICAgfSk7XHJcblxyXG4gICAgfVxyXG4gICAgLyoqXHJcbiAgICAgKiBBZGQgUGFydCBBIGZpZWxkcyB0byB0aGUgZXZlbnRcclxuICAgICAqXHJcbiAgICAgKiBAcGFyYW0gZXZlbnQgVGhlIGV2ZW50IHRoYXQgbmVlZHMgdG8gYmUgcHJvY2Vzc2VkXHJcbiAgICAgKi9cclxuICAgIHByb2Nlc3NUZWxlbWV0cnkoZXZlbnQ6IElUZWxlbWV0cnlJdGVtLCBpdGVtQ3R4PzogSVByb2Nlc3NUZWxlbWV0cnlDb250ZXh0KSB7XHJcbiAgICAgICAgdGhpcy5wcm9jZXNzTmV4dChldmVudCwgaXRlbUN0eCk7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIGluaXRpYWxpemUoY29uZmlnOiBJQ29uZmlndXJhdGlvbiAmIElDb25maWcsIGNvcmU6IElBcHBJbnNpZ2h0c0NvcmUsIGV4dGVuc2lvbnM6IElQbHVnaW5bXSwgcGx1Z2luQ2hhaW4/OiBJVGVsZW1ldHJ5UGx1Z2luQ2hhaW4pIHtcclxuICAgICAgICAvLyBARHluYW1pY1Byb3RvU3R1YiAtLSBETyBOT1QgYWRkIGFueSBjb2RlIGFzIHRoaXMgd2lsbCBiZSByZW1vdmVkIGR1cmluZyBwYWNrYWdpbmdcclxuICAgIH1cclxuXHJcbiAgICB0cmFja1BhZ2VWaWV3KHBhZ2VWaWV3OiBJUGFnZVZpZXdUZWxlbWV0cnkpIHtcclxuICAgICAgICAvLyBARHluYW1pY1Byb3RvU3R1YiAtLSBETyBOT1QgYWRkIGFueSBjb2RlIGFzIHRoaXMgd2lsbCBiZSByZW1vdmVkIGR1cmluZyBwYWNrYWdpbmdcclxuICAgIH1cclxuXHJcblxyXG4gICBcclxufVxyXG4iXX0=
152
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwbGljYXRpb25pbnNpZ2h0cy1hbmd1bGFycGx1Z2luLWpzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2FwcGxpY2F0aW9uaW5zaWdodHMtYW5ndWxhcnBsdWdpbi1qcy9zcmMvbGliL2FwcGxpY2F0aW9uaW5zaWdodHMtYW5ndWxhcnBsdWdpbi1qcy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVyxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQzBCLDBCQUEwQixFQUFFLHlCQUF5QixFQUNyRixNQUFNLHVDQUF1QyxDQUFDO0FBQy9DLE9BQU8sRUFDd0MsbUJBQW1CLEVBQUUsVUFBVSxFQUNoRCxXQUFXLEVBQUUsY0FBYyxFQUM5QixhQUFhLEVBQUUsY0FBYyxFQUFtQixPQUFPLEVBQ2pGLE1BQU0sd0NBQXdDLENBQUM7QUFDaEQsT0FBTyxZQUFZLE1BQU0sNEJBQTRCLENBQUM7QUFDdEQsT0FBTyxFQUFFLGFBQWEsRUFBVSxNQUFNLGlCQUFpQixDQUFDO0FBQ3hELE9BQU8sRUFBRSw0Q0FBNEMsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBSWpILE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQzs7QUFnQmxELElBQUksVUFBVSxDQUFDO0FBRWYsTUFBTSw2QkFBNkIsR0FBNkMsYUFBYSxDQUFDO0lBQzFGLE1BQU0sRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsQ0FBQyxFQUFFLFVBQVUsRUFBQztJQUN0QyxhQUFhLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFBRSxVQUFVLEVBQUM7Q0FDaEQsQ0FBQyxDQUFDO0FBT0gsa0VBQWtFO0FBQ2xFLE1BQU0sT0FBTyxhQUFjLFNBQVEsbUJBQW1CO0lBV2xELFlBQW9CLFNBQW9CO1FBQ3BDLEtBQUssRUFBRSxDQUFDO1FBRFEsY0FBUyxHQUFULFNBQVMsQ0FBVztRQVZqQyxhQUFRLEdBQUcsR0FBRyxDQUFDO1FBQ2YsZUFBVSxHQUFHLGVBQWUsQ0FBQztRQVdoQyxJQUFJLGdCQUFpQyxDQUFDO1FBQ3RDLElBQUksaUJBQW1DLENBQUM7UUFDeEMsSUFBSSxXQUFvQyxDQUFDO1FBQ3pDLElBQUksa0JBQWdDLENBQUM7UUFDckMsSUFBSSxrQkFBMkIsQ0FBQztRQUNoQyxJQUFJLFdBQW1CLENBQUM7UUFDeEIsSUFBSSxxQkFBbUUsQ0FBQztRQUV4RSxZQUFZLENBQUMsYUFBYSxFQUFFLElBQUksRUFBRSxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsRUFBRTtZQUUvQyxNQUFNLGFBQWEsR0FBRyxHQUFHLEVBQUU7Z0JBQ3ZCLGdCQUFnQixHQUFHLElBQUksQ0FBQztnQkFDeEIsaUJBQWlCLEdBQUcsSUFBSSxDQUFDO2dCQUN6QixXQUFXLEdBQUcsSUFBSSxDQUFDO2dCQUNuQixrQkFBa0IsR0FBRyxJQUFJLENBQUM7Z0JBQzFCLGtCQUFrQixHQUFHLElBQUksQ0FBQztnQkFDMUIsV0FBVyxHQUFHLFVBQVUsQ0FBQztZQUM3QixDQUFDLENBQUM7WUFFRixhQUFhLEVBQUUsQ0FBQztZQUVoQixLQUFLLENBQUMsVUFBVSxHQUFHLENBQUMsTUFBZ0MsRUFBRSxJQUFzQixFQUFFLFVBQXFCLEVBQy9GLFdBQW1DLEVBQUUsRUFBRTtnQkFDdkMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxXQUFXLENBQUMsQ0FBQztnQkFFeEQsS0FBSyxDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsTUFBTSxFQUFFLENBQUMsT0FBTyxFQUFFLEVBQUU7b0JBQzlDLElBQUksR0FBRyxHQUFHLEtBQUssQ0FBQyxVQUFVLEVBQUUsQ0FBQztvQkFDN0IsV0FBVyxHQUFHLEdBQUcsQ0FBQyxTQUFTLENBQTBCLEtBQUssQ0FBQyxVQUFVLEVBQUUsNkJBQTZCLENBQUMsQ0FBQztvQkFDdEcsaUJBQWlCLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBbUIsMEJBQTBCLENBQUMsRUFBRSxNQUEwQixDQUFDO29CQUM3RyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFrQix5QkFBeUIsQ0FBQyxFQUFFLE1BQXlCLENBQUM7b0JBRXpHLElBQUksV0FBVyxDQUFDLFdBQVcsSUFBSSxTQUFTLEVBQUM7d0JBQ3JDLHFCQUFxQixHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLDRDQUE0QyxDQUFDLENBQUM7cUJBQzVGO29CQUNELHFCQUFxQixHQUFHLHFCQUFxQixDQUFDLENBQUMsQ0FBQyxxQkFBcUI7d0JBQ2pFLENBQUMsQ0FBQyw0Q0FBNEMsQ0FBQyxRQUFRLENBQUM7b0JBRTVELCtCQUErQjtvQkFFL0IsSUFBSSxnQkFBZ0IsRUFBRTt3QkFDbEIsSUFBSSxxQkFBcUIsS0FBSyxJQUFJLEVBQUU7NEJBQ2hDLHFCQUFxQixDQUFDLE1BQU0sR0FBRyxnQkFBZ0IsQ0FBQzs0QkFDaEQsSUFBSSxXQUFXLENBQUMsYUFBYSxJQUFJLE9BQU8sQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLEVBQUU7Z0NBQ2pFLHFCQUFxQixDQUFDLGtCQUFrQixFQUFFLENBQUM7Z0NBQzNDLFVBQVUsQ0FBQyxXQUFXLENBQUMsYUFBYSxFQUFFLENBQUMsWUFBMkIsRUFBRSxFQUFFO29DQUNsRSxxQkFBcUIsQ0FBQyxlQUFlLENBQUMsWUFBWSxDQUFDLENBQUM7Z0NBQ3hELENBQUMsQ0FBQyxDQUFDOzZCQUNOO3lCQUNKO3FCQUNKO29CQUVELElBQUksV0FBVyxDQUFDLE1BQU0sS0FBSyxXQUFXLEVBQUU7d0JBQ3BDLHFEQUFxRDt3QkFFckQscUNBQXFDO3dCQUNyQyxJQUFJLGtCQUFrQixFQUFFOzRCQUNwQixrQkFBa0IsQ0FBQyxXQUFXLEVBQUUsQ0FBQzt5QkFDcEM7d0JBRUQsSUFBSSxXQUFXLENBQUMsTUFBTSxFQUFDOzRCQUNuQixzRUFBc0U7NEJBQ3RFLElBQUksa0JBQWtCLEVBQUM7Z0NBQ25CLE1BQU0saUJBQWlCLEdBQXVCO29DQUMxQyxHQUFHLEVBQUUsV0FBVyxDQUFDLE1BQU0sQ0FBQyxHQUFHO2lDQUM5QixDQUFDO2dDQUNGLEtBQUssQ0FBQyxhQUFhLENBQUMsaUJBQWlCLENBQUMsQ0FBQzs2QkFDMUM7NEJBRUQsaUNBQWlDOzRCQUNqQyxrQkFBa0IsR0FBRyxXQUFXLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUU7Z0NBQzdELElBQUksS0FBSyxDQUFDLGFBQWEsRUFBRSxFQUFFO29DQUN2QixJQUFJLEtBQUssWUFBWSxhQUFhLEVBQUU7d0NBQ2hDLHlEQUF5RDt3Q0FDekQsSUFBSSxrQkFBa0IsRUFBRTs0Q0FDcEIsa0JBQWtCLEdBQUcsS0FBSyxDQUFDOzRDQUMzQixPQUFPO3lDQUNWO3dDQUNELE1BQU0sR0FBRyxHQUF1Qjs0Q0FDNUIsR0FBRyxFQUFFLFdBQVcsQ0FBQyxNQUFNLENBQUMsR0FBRzs0Q0FDM0IsVUFBVSxFQUFFLEVBQUUsUUFBUSxFQUFFLENBQUMsRUFBRSxDQUFDLDhEQUE4RDt5Q0FDN0YsQ0FBQzt3Q0FDRixLQUFLLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxDQUFDO3FDQUM1QjtpQ0FDSjs0QkFDTCxDQUFDLENBQUMsQ0FBQzt5QkFDTjt3QkFDRCxXQUFXLEdBQUcsV0FBVyxDQUFDLE1BQU0sQ0FBQztxQkFDcEM7Z0JBQ0wsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFFSix3QkFBd0I7Z0JBQ3hCLEtBQUssQ0FBQyxtQkFBbUIsQ0FBQyxHQUFHLEdBQUcsRUFBRSxDQUFDLFdBQVcsQ0FBQztnQkFDL0MsS0FBSyxDQUFDLGtCQUFrQixDQUFDLEdBQUcsR0FBRyxFQUFFLENBQUMscUJBQXFCLENBQUM7WUFDNUQsQ0FBQyxDQUFDO1lBRUYsS0FBSyxDQUFDLGFBQWEsR0FBRyxDQUFDLFFBQTRCLEVBQUUsRUFBRTtnQkFDbkQsSUFBSSxnQkFBZ0IsRUFBRTtvQkFDbEIsTUFBTSxRQUFRLEdBQUcsV0FBVyxFQUFFLENBQUM7b0JBQy9CLElBQUksaUJBQWlCLElBQUksaUJBQWlCLENBQUMsT0FBTyxJQUFJLGlCQUFpQixDQUFDLE9BQU8sQ0FBQyxjQUFjLEVBQUU7d0JBQzVGLGlCQUFpQixDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsT0FBTyxHQUFHLGFBQWEsRUFBRSxDQUFDO3dCQUNuRSxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLElBQUksR0FBRyxRQUFRLElBQUksUUFBUSxDQUFDLFFBQVEsSUFBSSxXQUFXLENBQUM7cUJBQ2hHO29CQUNELGdCQUFnQixDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQztpQkFDNUM7cUJBQU07b0JBQ0gsY0FBYyxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsOEZBRWlELGdGQUFnRixDQUFDLENBQUM7aUJBQ3BLO1lBQ0wsQ0FBQyxDQUFDO1lBR0YsS0FBSyxDQUFDLFdBQVcsR0FBRyxDQUFDLFNBQTBDLEVBQUUsV0FBbUMsRUFDaEcsYUFBMEIsRUFBa0IsRUFBRTtnQkFDOUMsSUFBSSxnQkFBZ0IsSUFBSSxxQkFBcUIsS0FBSyxJQUFJLEVBQUU7b0JBQ3BELHFCQUFxQixDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7b0JBQ3BDLElBQUksV0FBVyxFQUFFO3dCQUNiLElBQUksV0FBVyxDQUFDLGFBQWEsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsRUFBRTs0QkFDdkUscUJBQXFCLENBQUMsa0JBQWtCLEVBQUUsQ0FBQzt5QkFFOUM7cUJBQ0o7aUJBQ0o7Z0JBRUQsSUFBSSxrQkFBa0IsRUFBRTtvQkFDcEIsa0JBQWtCLENBQUMsV0FBVyxFQUFFLENBQUM7b0JBQ2pDLGtCQUFrQixHQUFHLElBQUksQ0FBQztpQkFDN0I7Z0JBQ0QsYUFBYSxFQUFFLENBQUM7WUFDcEIsQ0FBQyxDQUFDO1FBQ04sQ0FBQyxDQUFDLENBQUM7SUFFUCxDQUFDO0lBQ0Q7Ozs7T0FJRztJQUNILGdCQUFnQixDQUFDLEtBQXFCLEVBQUUsT0FBa0M7UUFDdEUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUdELFVBQVUsQ0FBQyxNQUFnQyxFQUFFLElBQXNCLEVBQUUsVUFBcUIsRUFBRSxXQUFtQztRQUMzSCxvRkFBb0Y7SUFDeEYsQ0FBQztJQUVELGFBQWEsQ0FBQyxRQUE0QjtRQUN0QyxvRkFBb0Y7SUFDeEYsQ0FBQzs7MkdBaktRLGFBQWE7K0ZBQWIsYUFBYSx1R0FKWixFQUFFOzRGQUlILGFBQWE7a0JBTnpCLFNBQVM7K0JBQ0ksMENBQTBDLFlBQzFDLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEluamVjdG9yfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge1xyXG4gICAgSUNvbmZpZywgSVBhZ2VWaWV3VGVsZW1ldHJ5LCBQcm9wZXJ0aWVzUGx1Z2luSWRlbnRpZmllciwgQW5hbHl0aWNzUGx1Z2luSWRlbnRpZmllclxyXG59IGZyb20gXCJAbWljcm9zb2Z0L2FwcGxpY2F0aW9uaW5zaWdodHMtY29tbW9uXCI7XHJcbmltcG9ydCB7XHJcbiAgICBJUGx1Z2luLCBJQ29uZmlndXJhdGlvbiwgSUFwcEluc2lnaHRzQ29yZSwgQmFzZVRlbGVtZXRyeVBsdWdpbiwgYXJyRm9yRWFjaCwgSVRlbGVtZXRyeUl0ZW0sIElUZWxlbWV0cnlQbHVnaW5DaGFpbixcclxuICAgIElQcm9jZXNzVGVsZW1ldHJ5Q29udGV4dCwgZ2V0TG9jYXRpb24sIF90aHJvd0ludGVybmFsLCBlTG9nZ2luZ1NldmVyaXR5LCBfZUludGVybmFsTWVzc2FnZUlkLCBJUHJvY2Vzc1RlbGVtZXRyeVVubG9hZENvbnRleHQsXHJcbiAgICBJVGVsZW1ldHJ5VW5sb2FkU3RhdGUsIGdlbmVyYXRlVzNDSWQsIG9uQ29uZmlnQ2hhbmdlLCBJQ29uZmlnRGVmYXVsdHMsIGlzQXJyYXksIElUZWxlbWV0cnlQbHVnaW5cclxufSBmcm9tIFwiQG1pY3Jvc29mdC9hcHBsaWNhdGlvbmluc2lnaHRzLWNvcmUtanNcIjtcclxuaW1wb3J0IGR5bmFtaWNQcm90byBmcm9tIFwiQG1pY3Jvc29mdC9keW5hbWljcHJvdG8tanNcIjtcclxuaW1wb3J0IHsgTmF2aWdhdGlvbkVuZCwgUm91dGVyIH0gZnJvbSBcIkBhbmd1bGFyL3JvdXRlclwiO1xyXG5pbXBvcnQgeyBBcHBsaWNhdGlvbmluc2lnaHRzQW5ndWxhcnBsdWdpbkVycm9yU2VydmljZSB9IGZyb20gXCIuL2FwcGxpY2F0aW9uaW5zaWdodHMtYW5ndWxhcnBsdWdpbi1lcnJvci5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IElFcnJvclNlcnZpY2UgfSBmcm9tIFwiLi9JRXJyb3JTZXJ2aWNlXCI7XHJcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7IEFuYWx5dGljc1BsdWdpbiB9IGZyb20gXCJAbWljcm9zb2Z0L2FwcGxpY2F0aW9uaW5zaWdodHMtYW5hbHl0aWNzLWpzXCI7XHJcbmltcG9ydCB7b2JqRGVlcEZyZWV6ZX0gZnJvbSBcIkBuZXZ3YXJlMjEvdHMtdXRpbHNcIjtcclxuaW1wb3J0IHsgUHJvcGVydGllc1BsdWdpbiB9IGZyb20gXCJAbWljcm9zb2Z0L2FwcGxpY2F0aW9uaW5zaWdodHMtcHJvcGVydGllcy1qc1wiO1xyXG5cclxuaW50ZXJmYWNlIElBbmd1bGFyRXh0ZW5zaW9uQ29uZmlnIHtcclxuICAgIC8qKlxyXG4gICAgICogQW5ndWxhciByb3V0ZXIgZm9yIGVuYWJsaW5nIEFwcGxpY2F0aW9uIEluc2lnaHRzIFBhZ2VWaWV3IHRyYWNraW5nLlxyXG4gICAgICovXHJcbiAgICByb3V0ZXI/OiBSb3V0ZXI7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBDdXN0b20gZXJyb3Igc2VydmljZSBmb3IgZ2xvYmFsIGVycm9yIGhhbmRsaW5nLlxyXG4gICAgICovXHJcbiAgICBlcnJvclNlcnZpY2VzPzogSUVycm9yU2VydmljZVtdO1xyXG4gICAgdXNlSW5qZWN0b3I/OiBib29sZWFuO1xyXG59XHJcblxyXG5sZXQgdW5kZWZWYWx1ZTtcclxuXHJcbmNvbnN0IGRlZmF1bHRBbmd1bGFyRXh0ZW5zaW9uQ29uZmlnOiBJQ29uZmlnRGVmYXVsdHM8SUFuZ3VsYXJFeHRlbnNpb25Db25maWc+ID0gb2JqRGVlcEZyZWV6ZSh7XHJcbiAgICByb3V0ZXI6IHsgYmxrVmFsOiB0cnVlLCB2OiB1bmRlZlZhbHVlfSxcclxuICAgIGVycm9yU2VydmljZXM6IHsgYmxrVmFsOiB0cnVlLCB2OiB1bmRlZlZhbHVlfVxyXG59KTtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6IFwibGliLWFwcGxpY2F0aW9uaW5zaWdodHMtYW5ndWxhcnBsdWdpbi1qc1wiLFxyXG4gICAgdGVtcGxhdGU6IFwiXCIsXHJcbiAgICBzdHlsZXM6IFtdXHJcbn0pXHJcbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvY29tcG9uZW50LWNsYXNzLXN1ZmZpeFxyXG5leHBvcnQgY2xhc3MgQW5ndWxhclBsdWdpbiBleHRlbmRzIEJhc2VUZWxlbWV0cnlQbHVnaW4ge1xyXG4gICAgcHVibGljIHByaW9yaXR5ID0gMTg2O1xyXG4gICAgcHVibGljIGlkZW50aWZpZXIgPSBcIkFuZ3VsYXJQbHVnaW5cIjtcclxuICAgIFxyXG4gICAgLyoqXHJcbiAgICAgKiBTZXQgbmV4dCBleHRlbnNpb24gZm9yIHRlbGVtZXRyeSBwcm9jZXNzaW5nLCB0aGlzIGlzIG5vdCBvcHRpb25hbCBhcyBwbHVnaW5zIHNob3VsZCB1c2UgdGhlXHJcbiAgICAgKiBwcm9jZXNzTmV4dCgpIGZ1bmN0aW9uIG9mIHRoZSBwYXNzZWQgSVByb2Nlc3NUZWxlbWV0cnlDb250ZXh0IGluc3RlYWQuIEl0IGlzIGJlaW5nIGtlcHQgZm9yXHJcbiAgICAgKiBub3cgZm9yIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkgb25seS5cclxuICAgICAqL1xyXG4gICAgcHVibGljIHNldE5leHRQbHVnaW46IChuZXh0OiBJVGVsZW1ldHJ5UGx1Z2luIHwgSVRlbGVtZXRyeVBsdWdpbkNoYWluKSA9PiB2b2lkO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgX2luamVjdG9yPzogSW5qZWN0b3IpIHsgLy8gX2luamVjdG9yIGlzIG9wdGlvbmFsIHRvIHByb3ZpZGVcclxuICAgICAgICBzdXBlcigpO1xyXG4gICAgICAgIGxldCBfYW5hbHl0aWNzUGx1Z2luOiBBbmFseXRpY3NQbHVnaW47XHJcbiAgICAgICAgbGV0IF9wcm9wZXJ0aWVzUGx1Z2luOiBQcm9wZXJ0aWVzUGx1Z2luO1xyXG4gICAgICAgIGxldCBfYW5ndWxhckNmZzogSUFuZ3VsYXJFeHRlbnNpb25Db25maWc7XHJcbiAgICAgICAgbGV0IF9ldmVudFN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xyXG4gICAgICAgIGxldCBfaXNQYWdlSW5pdGlhbExvYWQ6IGJvb2xlYW47XHJcbiAgICAgICAgbGV0IF9wcmV2Um91dGVyOiBSb3V0ZXI7XHJcbiAgICAgICAgbGV0IF9lcnJvclNlcnZpY2VJbnN0YW5jZTogQXBwbGljYXRpb25pbnNpZ2h0c0FuZ3VsYXJwbHVnaW5FcnJvclNlcnZpY2U7XHJcblxyXG4gICAgICAgIGR5bmFtaWNQcm90byhBbmd1bGFyUGx1Z2luLCB0aGlzLCAoX3NlbGYsIF9iYXNlKSA9PiB7XHJcblxyXG4gICAgICAgICAgICBjb25zdCBfaW5pdERlZmF1bHRzID0gKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgX2FuYWx5dGljc1BsdWdpbiA9IG51bGw7XHJcbiAgICAgICAgICAgICAgICBfcHJvcGVydGllc1BsdWdpbiA9IG51bGw7XHJcbiAgICAgICAgICAgICAgICBfYW5ndWxhckNmZyA9IG51bGw7XHJcbiAgICAgICAgICAgICAgICBfZXZlbnRTdWJzY3JpcHRpb24gPSBudWxsO1xyXG4gICAgICAgICAgICAgICAgX2lzUGFnZUluaXRpYWxMb2FkID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgIF9wcmV2Um91dGVyID0gdW5kZWZWYWx1ZTtcclxuICAgICAgICAgICAgfTtcclxuXHJcbiAgICAgICAgICAgIF9pbml0RGVmYXVsdHMoKTtcclxuXHJcbiAgICAgICAgICAgIF9zZWxmLmluaXRpYWxpemUgPSAoY29uZmlnOiBJQ29uZmlndXJhdGlvbiAmIElDb25maWcsIGNvcmU6IElBcHBJbnNpZ2h0c0NvcmUsIGV4dGVuc2lvbnM6IElQbHVnaW5bXSxcclxuICAgICAgICAgICAgICAgIHBsdWdpbkNoYWluPzogSVRlbGVtZXRyeVBsdWdpbkNoYWluKSA9PiB7XHJcbiAgICAgICAgICAgICAgICBzdXBlci5pbml0aWFsaXplKGNvbmZpZywgY29yZSwgZXh0ZW5zaW9ucywgcGx1Z2luQ2hhaW4pO1xyXG4gICAgICAgIFxyXG4gICAgICAgICAgICAgICAgX3NlbGYuX2FkZEhvb2sob25Db25maWdDaGFuZ2UoY29uZmlnLCAoZGV0YWlscykgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGxldCBjdHggPSBfc2VsZi5fZ2V0VGVsQ3R4KCk7XHJcbiAgICAgICAgICAgICAgICAgICAgX2FuZ3VsYXJDZmcgPSBjdHguZ2V0RXh0Q2ZnPElBbmd1bGFyRXh0ZW5zaW9uQ29uZmlnPihfc2VsZi5pZGVudGlmaWVyLCBkZWZhdWx0QW5ndWxhckV4dGVuc2lvbkNvbmZpZyk7XHJcbiAgICAgICAgICAgICAgICAgICAgX3Byb3BlcnRpZXNQbHVnaW4gPSBjb3JlLmdldFBsdWdpbjxQcm9wZXJ0aWVzUGx1Z2luPihQcm9wZXJ0aWVzUGx1Z2luSWRlbnRpZmllcik/LnBsdWdpbiBhcyBQcm9wZXJ0aWVzUGx1Z2luO1xyXG4gICAgICAgICAgICAgICAgICAgIF9hbmFseXRpY3NQbHVnaW4gPSBjb3JlLmdldFBsdWdpbjxBbmFseXRpY3NQbHVnaW4+KEFuYWx5dGljc1BsdWdpbklkZW50aWZpZXIpPy5wbHVnaW4gYXMgQW5hbHl0aWNzUGx1Z2luO1xyXG4gICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgIGlmIChfYW5ndWxhckNmZy51c2VJbmplY3RvciAmJiBfaW5qZWN0b3Ipe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBfZXJyb3JTZXJ2aWNlSW5zdGFuY2UgPSB0aGlzLl9pbmplY3Rvci5nZXQoQXBwbGljYXRpb25pbnNpZ2h0c0FuZ3VsYXJwbHVnaW5FcnJvclNlcnZpY2UpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBfZXJyb3JTZXJ2aWNlSW5zdGFuY2UgPSBfZXJyb3JTZXJ2aWNlSW5zdGFuY2UgPyBfZXJyb3JTZXJ2aWNlSW5zdGFuY2VcclxuICAgICAgICAgICAgICAgICAgICAgICAgOiBBcHBsaWNhdGlvbmluc2lnaHRzQW5ndWxhcnBsdWdpbkVycm9yU2VydmljZS5pbnN0YW5jZTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgLy8gdHdvIGluc3RhbmNlIG9mIGVycm9yU2VydmljZVxyXG5cclxuICAgICAgICAgICAgICAgICAgICBpZiAoX2FuYWx5dGljc1BsdWdpbikge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoX2Vycm9yU2VydmljZUluc3RhbmNlICE9PSBudWxsKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfZXJyb3JTZXJ2aWNlSW5zdGFuY2UucGx1Z2luID0gX2FuYWx5dGljc1BsdWdpbjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChfYW5ndWxhckNmZy5lcnJvclNlcnZpY2VzICYmIGlzQXJyYXkoX2FuZ3VsYXJDZmcuZXJyb3JTZXJ2aWNlcykpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfZXJyb3JTZXJ2aWNlSW5zdGFuY2UuY2xlYXJFcnJvckhhbmRsZXJzKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJyRm9yRWFjaChfYW5ndWxhckNmZy5lcnJvclNlcnZpY2VzLCAoZXJyb3JTZXJ2aWNlOiBJRXJyb3JTZXJ2aWNlKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9lcnJvclNlcnZpY2VJbnN0YW5jZS5hZGRFcnJvckhhbmRsZXIoZXJyb3JTZXJ2aWNlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICBpZiAoX2FuZ3VsYXJDZmcucm91dGVyICE9PSBfcHJldlJvdXRlcikge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyByb3V0ZXIgaXMgY2hhbmdlZCwgb3IgaGFzIG5vdCBiZWVuIGluaXRpYWxpemVkIHlldFxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gdW5zdWJzY3JpYmUgcHJldmlvdXMgcm91dGVyIGV2ZW50c1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoX2V2ZW50U3Vic2NyaXB0aW9uKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfZXZlbnRTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKF9hbmd1bGFyQ2ZnLnJvdXRlcil7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBvbmx5IHRyYWNrIHBhZ2UgdmlldyBpZiBpdCBpcyB0aGUgaW5pdGlhbCBwYWdlIGxvYWQgZm9yIHRoaXMgcGx1Z2luXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoX2lzUGFnZUluaXRpYWxMb2FkKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBwYWdlVmlld1RlbGVtZXRyeTogSVBhZ2VWaWV3VGVsZW1ldHJ5ID0ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cmk6IF9hbmd1bGFyQ2ZnLnJvdXRlci51cmxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9zZWxmLnRyYWNrUGFnZVZpZXcocGFnZVZpZXdUZWxlbWV0cnkpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBzdWJzY3JpYmUgdG8gbmV3IHJvdXRlciBldmVudHNcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9ldmVudFN1YnNjcmlwdGlvbiA9IF9hbmd1bGFyQ2ZnLnJvdXRlci5ldmVudHMuc3Vic2NyaWJlKGV2ZW50ID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoX3NlbGYuaXNJbml0aWFsaXplZCgpKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChldmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25FbmQpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGZvciBwYWdlIGluaXRpYWwgbG9hZCwgZG8gbm90IGNhbGwgdHJhY2tQYWdlVmlldyB0d2ljZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKF9pc1BhZ2VJbml0aWFsTG9hZCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9pc1BhZ2VJbml0aWFsTG9hZCA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHB2dDogSVBhZ2VWaWV3VGVsZW1ldHJ5ID0ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVyaTogX2FuZ3VsYXJDZmcucm91dGVyLnVybCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcm9wZXJ0aWVzOiB7IGR1cmF0aW9uOiAwIH0gLy8gU1BBIHJvdXRlIGNoYW5nZSBsb2FkaW5nIGR1cmF0aW9ucyBhcmUgdW5kZWZpbmVkLCBzbyBzZW5kIDBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfc2VsZi50cmFja1BhZ2VWaWV3KHB2dCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICBfcHJldlJvdXRlciA9IF9hbmd1bGFyQ2ZnLnJvdXRlcjtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9KSk7XHJcblxyXG4gICAgICAgICAgICAgICAgLy8gZm9yIHRlc3QgcHVycG9zZSBvbmx5XHJcbiAgICAgICAgICAgICAgICBfc2VsZltcIl9nZXREYmdQbGdUYXJnZXRzXCJdID0gKCkgPT4gX2FuZ3VsYXJDZmc7XHJcbiAgICAgICAgICAgICAgICBfc2VsZltcIl9nZXRFcnJvclNlcnZpY2VcIl0gPSAoKSA9PiBfZXJyb3JTZXJ2aWNlSW5zdGFuY2U7XHJcbiAgICAgICAgICAgIH07XHJcblxyXG4gICAgICAgICAgICBfc2VsZi50cmFja1BhZ2VWaWV3ID0gKHBhZ2VWaWV3OiBJUGFnZVZpZXdUZWxlbWV0cnkpID0+IHtcclxuICAgICAgICAgICAgICAgIGlmIChfYW5hbHl0aWNzUGx1Z2luKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgbG9jYXRpb24gPSBnZXRMb2NhdGlvbigpO1xyXG4gICAgICAgICAgICAgICAgICAgIGlmIChfcHJvcGVydGllc1BsdWdpbiAmJiBfcHJvcGVydGllc1BsdWdpbi5jb250ZXh0ICYmIF9wcm9wZXJ0aWVzUGx1Z2luLmNvbnRleHQudGVsZW1ldHJ5VHJhY2UpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgX3Byb3BlcnRpZXNQbHVnaW4uY29udGV4dC50ZWxlbWV0cnlUcmFjZS50cmFjZUlEID0gZ2VuZXJhdGVXM0NJZCgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBfcHJvcGVydGllc1BsdWdpbi5jb250ZXh0LnRlbGVtZXRyeVRyYWNlLm5hbWUgPSBsb2NhdGlvbiAmJiBsb2NhdGlvbi5wYXRobmFtZSB8fCBcIl91bmtub3duX1wiO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBfYW5hbHl0aWNzUGx1Z2luLnRyYWNrUGFnZVZpZXcocGFnZVZpZXcpO1xyXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICBfdGhyb3dJbnRlcm5hbChfc2VsZi5kaWFnTG9nKCksXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBtYXgtbGVuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGVMb2dnaW5nU2V2ZXJpdHkuQ1JJVElDQUwsIF9lSW50ZXJuYWxNZXNzYWdlSWQuVGVsZW1ldHJ5SW5pdGlhbGl6ZXJGYWlsZWQsIFwiQW5hbHl0aWNzIHBsdWdpbiBpcyBub3QgYXZhaWxhYmxlLCBBbmd1bGFyIHBsdWdpbiB0ZWxlbWV0cnkgd2lsbCBub3QgYmUgc2VudDogXCIpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9O1xyXG4gICAgICAgIFxyXG5cclxuICAgICAgICAgICAgX3NlbGYuX2RvVGVhcmRvd24gPSAodW5sb2FkQ3R4PzogSVByb2Nlc3NUZWxlbWV0cnlVbmxvYWRDb250ZXh0LCB1bmxvYWRTdGF0ZT86IElUZWxlbWV0cnlVbmxvYWRTdGF0ZSxcclxuICAgICAgICAgICAgICAgIGFzeW5jQ2FsbGJhY2s/OiAoKSA9PiB2b2lkKTogdm9pZCB8IGJvb2xlYW4gPT4ge1xyXG4gICAgICAgICAgICAgICAgaWYgKF9hbmFseXRpY3NQbHVnaW4gJiYgX2Vycm9yU2VydmljZUluc3RhbmNlICE9PSBudWxsKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgX2Vycm9yU2VydmljZUluc3RhbmNlLnBsdWdpbiA9IG51bGw7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKF9hbmd1bGFyQ2ZnKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChfYW5ndWxhckNmZy5lcnJvclNlcnZpY2VzICYmIEFycmF5LmlzQXJyYXkoX2FuZ3VsYXJDZmcuZXJyb3JTZXJ2aWNlcykpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9lcnJvclNlcnZpY2VJbnN0YW5jZS5jbGVhckVycm9ySGFuZGxlcnMoKTtcclxuICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgXHJcbiAgICAgICAgICAgICAgICBpZiAoX2V2ZW50U3Vic2NyaXB0aW9uKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgX2V2ZW50U3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgX2V2ZW50U3Vic2NyaXB0aW9uID0gbnVsbDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIF9pbml0RGVmYXVsdHMoKTtcclxuICAgICAgICAgICAgfTtcclxuICAgICAgICB9KTtcclxuXHJcbiAgICB9XHJcbiAgICAvKipcclxuICAgICAqIEFkZCBQYXJ0IEEgZmllbGRzIHRvIHRoZSBldmVudFxyXG4gICAgICpcclxuICAgICAqIEBwYXJhbSBldmVudCBUaGUgZXZlbnQgdGhhdCBuZWVkcyB0byBiZSBwcm9jZXNzZWRcclxuICAgICAqL1xyXG4gICAgcHJvY2Vzc1RlbGVtZXRyeShldmVudDogSVRlbGVtZXRyeUl0ZW0sIGl0ZW1DdHg/OiBJUHJvY2Vzc1RlbGVtZXRyeUNvbnRleHQpIHtcclxuICAgICAgICB0aGlzLnByb2Nlc3NOZXh0KGV2ZW50LCBpdGVtQ3R4KTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgaW5pdGlhbGl6ZShjb25maWc6IElDb25maWd1cmF0aW9uICYgSUNvbmZpZywgY29yZTogSUFwcEluc2lnaHRzQ29yZSwgZXh0ZW5zaW9uczogSVBsdWdpbltdLCBwbHVnaW5DaGFpbj86IElUZWxlbWV0cnlQbHVnaW5DaGFpbikge1xyXG4gICAgICAgIC8vIEBEeW5hbWljUHJvdG9TdHViIC0tIERPIE5PVCBhZGQgYW55IGNvZGUgYXMgdGhpcyB3aWxsIGJlIHJlbW92ZWQgZHVyaW5nIHBhY2thZ2luZ1xyXG4gICAgfVxyXG5cclxuICAgIHRyYWNrUGFnZVZpZXcocGFnZVZpZXc6IElQYWdlVmlld1RlbGVtZXRyeSkge1xyXG4gICAgICAgIC8vIEBEeW5hbWljUHJvdG9TdHViIC0tIERPIE5PVCBhZGQgYW55IGNvZGUgYXMgdGhpcyB3aWxsIGJlIHJlbW92ZWQgZHVyaW5nIHBhY2thZ2luZ1xyXG4gICAgfVxyXG5cclxuXHJcbiAgIFxyXG59XHJcbiJdfQ==
@@ -1 +1 @@
1
- {"version":3,"file":"microsoft-applicationinsights-angularplugin-js.mjs","sources":["../../../projects/applicationinsights-angularplugin-js/src/lib/applicationinsights-angularplugin-error.service.ts","../../../projects/applicationinsights-angularplugin-js/src/lib/applicationinsights-angularplugin-js.component.ts","../../../projects/applicationinsights-angularplugin-js/src/lib/applicationinsights-angularplugin-js.module.ts","../../../projects/applicationinsights-angularplugin-js/src/public-api.ts","../../../projects/applicationinsights-angularplugin-js/src/microsoft-applicationinsights-angularplugin-js.ts"],"sourcesContent":["import { Injectable } from \"@angular/core\";\r\nimport { IAppInsights } from \"@microsoft/applicationinsights-common\";\r\nimport { arrForEach, isFunction } from \"@microsoft/applicationinsights-core-js\";\r\nimport { IErrorService } from \"./IErrorService\";\r\n\r\n@Injectable({\r\n providedIn: \"root\"\r\n})\r\nexport class ApplicationinsightsAngularpluginErrorService implements IErrorService {\r\n public static instance: ApplicationinsightsAngularpluginErrorService = null;\r\n private analyticsPlugin: IAppInsights;\r\n private errorServices: IErrorService[] = [];\r\n\r\n constructor() {\r\n if (ApplicationinsightsAngularpluginErrorService.instance === null) {\r\n ApplicationinsightsAngularpluginErrorService.instance = this;\r\n }\r\n }\r\n\r\n public set plugin(analyticsPlugin: IAppInsights) {\r\n this.analyticsPlugin = analyticsPlugin;\r\n }\r\n\r\n public clearErrorHandlers() {\r\n this.errorServices = [];\r\n }\r\n\r\n public addErrorHandler(errorService: IErrorService): void {\r\n if (errorService && isFunction(errorService.handleError)) {\r\n this.errorServices.push(errorService);\r\n }\r\n }\r\n\r\n public removeErrorHandler(errorService: IErrorService): void {\r\n if (errorService && isFunction(errorService.handleError)) {\r\n const idx = this.errorServices.indexOf(errorService);\r\n if (idx !== -1) {\r\n this.errorServices.splice(idx, 1);\r\n }\r\n }\r\n }\r\n\r\n handleError(error: any): void {\r\n if (this.analyticsPlugin) {\r\n this.analyticsPlugin.trackException({ exception: error });\r\n }\r\n\r\n if (this.errorServices && this.errorServices.length > 0) {\r\n arrForEach(this.errorServices, errorService => {\r\n if (isFunction(errorService.handleError)) {\r\n errorService.handleError(error);\r\n }\r\n });\r\n }\r\n }\r\n}\r\n\r\n","import { Component, Injector} from \"@angular/core\";\r\nimport {\r\n IConfig, IPageViewTelemetry, PropertiesPluginIdentifier, AnalyticsPluginIdentifier\r\n} from \"@microsoft/applicationinsights-common\";\r\nimport {\r\n IPlugin, IConfiguration, IAppInsightsCore, BaseTelemetryPlugin, arrForEach, ITelemetryItem, ITelemetryPluginChain,\r\n IProcessTelemetryContext, getLocation, _throwInternal, eLoggingSeverity, _eInternalMessageId, IProcessTelemetryUnloadContext,\r\n ITelemetryUnloadState, generateW3CId, onConfigChange, IConfigDefaults, isArray\r\n} from \"@microsoft/applicationinsights-core-js\";\r\nimport dynamicProto from \"@microsoft/dynamicproto-js\";\r\nimport { NavigationEnd, Router } from \"@angular/router\";\r\nimport { ApplicationinsightsAngularpluginErrorService } from \"./applicationinsights-angularplugin-error.service\";\r\nimport { IErrorService } from \"./IErrorService\";\r\nimport { Subscription } from \"rxjs\";\r\nimport { AnalyticsPlugin } from \"@microsoft/applicationinsights-analytics-js\";\r\nimport {objDeepFreeze} from \"@nevware21/ts-utils\";\r\nimport { PropertiesPlugin } from \"@microsoft/applicationinsights-properties-js\";\r\n\r\ninterface IAngularExtensionConfig {\r\n /**\r\n * Angular router for enabling Application Insights PageView tracking.\r\n */\r\n router?: Router;\r\n\r\n /**\r\n * Custom error service for global error handling.\r\n */\r\n errorServices?: IErrorService[];\r\n useInjector?: boolean;\r\n}\r\n\r\nlet undefValue;\r\n\r\nconst defaultAngularExtensionConfig: IConfigDefaults<IAngularExtensionConfig> = objDeepFreeze({\r\n router: { blkVal: true, v: undefValue},\r\n errorServices: { blkVal: true, v: undefValue}\r\n});\r\n\r\n@Component({\r\n selector: \"lib-applicationinsights-angularplugin-js\",\r\n template: \"\",\r\n styles: []\r\n})\r\n// eslint-disable-next-line @angular-eslint/component-class-suffix\r\nexport class AngularPlugin extends BaseTelemetryPlugin {\r\n public priority = 186;\r\n public identifier = \"AngularPlugin\";\r\n\r\n constructor(private _injector?: Injector) { // _injector is optional to provide\r\n super();\r\n let _analyticsPlugin: AnalyticsPlugin;\r\n let _propertiesPlugin: PropertiesPlugin;\r\n let _angularCfg: IAngularExtensionConfig;\r\n let _eventSubscription: Subscription;\r\n let _isPageInitialLoad: boolean;\r\n let _prevRouter: Router;\r\n let _errorServiceInstance: ApplicationinsightsAngularpluginErrorService;\r\n\r\n dynamicProto(AngularPlugin, this, (_self, _base) => {\r\n\r\n const _initDefaults = () => {\r\n _analyticsPlugin = null;\r\n _propertiesPlugin = null;\r\n _angularCfg = null;\r\n _eventSubscription = null;\r\n _isPageInitialLoad = true;\r\n _prevRouter = undefValue;\r\n };\r\n\r\n _initDefaults();\r\n\r\n _self.initialize = (config: IConfiguration & IConfig, core: IAppInsightsCore, extensions: IPlugin[],\r\n pluginChain?: ITelemetryPluginChain) => {\r\n super.initialize(config, core, extensions, pluginChain);\r\n \r\n _self._addHook(onConfigChange(config, (details) => {\r\n let ctx = _self._getTelCtx();\r\n _angularCfg = ctx.getExtCfg<IAngularExtensionConfig>(_self.identifier, defaultAngularExtensionConfig);\r\n _propertiesPlugin = core.getPlugin<PropertiesPlugin>(PropertiesPluginIdentifier)?.plugin as PropertiesPlugin;\r\n _analyticsPlugin = core.getPlugin<AnalyticsPlugin>(AnalyticsPluginIdentifier)?.plugin as AnalyticsPlugin;\r\n \r\n if (_angularCfg.useInjector && _injector){\r\n _errorServiceInstance = this._injector.get(ApplicationinsightsAngularpluginErrorService);\r\n }\r\n _errorServiceInstance = _errorServiceInstance ? _errorServiceInstance\r\n : ApplicationinsightsAngularpluginErrorService.instance;\r\n\r\n // two instance of errorService\r\n\r\n if (_analyticsPlugin) {\r\n if (_errorServiceInstance !== null) {\r\n _errorServiceInstance.plugin = _analyticsPlugin;\r\n if (_angularCfg.errorServices && isArray(_angularCfg.errorServices)) {\r\n _errorServiceInstance.clearErrorHandlers();\r\n arrForEach(_angularCfg.errorServices, (errorService: IErrorService) => {\r\n _errorServiceInstance.addErrorHandler(errorService);\r\n });\r\n }\r\n }\r\n }\r\n \r\n if (_angularCfg.router !== _prevRouter) {\r\n // router is changed, or has not been initialized yet\r\n\r\n // unsubscribe previous router events\r\n if (_eventSubscription) {\r\n _eventSubscription.unsubscribe();\r\n }\r\n\r\n if (_angularCfg.router){\r\n // only track page view if it is the initial page load for this plugin\r\n if (_isPageInitialLoad){\r\n const pageViewTelemetry: IPageViewTelemetry = {\r\n uri: _angularCfg.router.url\r\n };\r\n _self.trackPageView(pageViewTelemetry);\r\n }\r\n \r\n // subscribe to new router events\r\n _eventSubscription = _angularCfg.router.events.subscribe(event => {\r\n if (_self.isInitialized()) {\r\n if (event instanceof NavigationEnd) {\r\n // for page initial load, do not call trackPageView twice\r\n if (_isPageInitialLoad) {\r\n _isPageInitialLoad = false;\r\n return;\r\n }\r\n const pvt: IPageViewTelemetry = {\r\n uri: _angularCfg.router.url,\r\n properties: { duration: 0 } // SPA route change loading durations are undefined, so send 0\r\n };\r\n _self.trackPageView(pvt);\r\n }\r\n }\r\n });\r\n }\r\n _prevRouter = _angularCfg.router;\r\n }\r\n }));\r\n\r\n // for test purpose only\r\n _self[\"_getDbgPlgTargets\"] = () => _angularCfg;\r\n _self[\"_getErrorService\"] = () => _errorServiceInstance;\r\n };\r\n\r\n _self.trackPageView = (pageView: IPageViewTelemetry) => {\r\n if (_analyticsPlugin) {\r\n const location = getLocation();\r\n if (_propertiesPlugin && _propertiesPlugin.context && _propertiesPlugin.context.telemetryTrace) {\r\n _propertiesPlugin.context.telemetryTrace.traceID = generateW3CId();\r\n _propertiesPlugin.context.telemetryTrace.name = location && location.pathname || \"_unknown_\";\r\n }\r\n _analyticsPlugin.trackPageView(pageView);\r\n } else {\r\n _throwInternal(_self.diagLog(),\r\n // eslint-disable-next-line max-len\r\n eLoggingSeverity.CRITICAL, _eInternalMessageId.TelemetryInitializerFailed, \"Analytics plugin is not available, Angular plugin telemetry will not be sent: \");\r\n }\r\n };\r\n \r\n\r\n _self._doTeardown = (unloadCtx?: IProcessTelemetryUnloadContext, unloadState?: ITelemetryUnloadState,\r\n asyncCallback?: () => void): void | boolean => {\r\n if (_analyticsPlugin && _errorServiceInstance !== null) {\r\n _errorServiceInstance.plugin = null;\r\n if (_angularCfg) {\r\n if (_angularCfg.errorServices && Array.isArray(_angularCfg.errorServices)) {\r\n _errorServiceInstance.clearErrorHandlers();\r\n \r\n }\r\n }\r\n }\r\n \r\n if (_eventSubscription) {\r\n _eventSubscription.unsubscribe();\r\n _eventSubscription = null;\r\n }\r\n _initDefaults();\r\n };\r\n });\r\n\r\n }\r\n /**\r\n * Add Part A fields to the event\r\n *\r\n * @param event The event that needs to be processed\r\n */\r\n processTelemetry(event: ITelemetryItem, itemCtx?: IProcessTelemetryContext) {\r\n this.processNext(event, itemCtx);\r\n }\r\n\r\n\r\n initialize(config: IConfiguration & IConfig, core: IAppInsightsCore, extensions: IPlugin[], pluginChain?: ITelemetryPluginChain) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n }\r\n\r\n trackPageView(pageView: IPageViewTelemetry) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n }\r\n\r\n\r\n \r\n}\r\n","import { NgModule } from \"@angular/core\";\r\nimport { AngularPlugin } from \"./applicationinsights-angularplugin-js.component\";\r\nimport { ApplicationinsightsAngularpluginErrorService } from \"./applicationinsights-angularplugin-error.service\";\r\n\r\n@NgModule({\r\n declarations: [AngularPlugin],\r\n imports: [\r\n ],\r\n exports: [AngularPlugin],\r\n providers: [\r\n ApplicationinsightsAngularpluginErrorService\r\n ]\r\n})\r\nexport class ApplicationinsightsAngularpluginJsModule { }\r\n","/*\r\n * Public API Surface of applicationinsights-angularplugin-js\r\n */\r\n\r\nexport * from \"./lib/applicationinsights-angularplugin-js.component\";\r\nexport * from \"./lib/applicationinsights-angularplugin-js.module\";\r\nexport * from \"./lib/applicationinsights-angularplugin-error.service\";\r\nexport * from \"./lib/IErrorService\";\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"microsoft-applicationinsights-angularplugin-js.mjs","sources":["../../../projects/applicationinsights-angularplugin-js/src/lib/applicationinsights-angularplugin-error.service.ts","../../../projects/applicationinsights-angularplugin-js/src/lib/applicationinsights-angularplugin-js.component.ts","../../../projects/applicationinsights-angularplugin-js/src/lib/applicationinsights-angularplugin-js.module.ts","../../../projects/applicationinsights-angularplugin-js/src/public-api.ts","../../../projects/applicationinsights-angularplugin-js/src/microsoft-applicationinsights-angularplugin-js.ts"],"sourcesContent":["import { Injectable } from \"@angular/core\";\r\nimport { IAppInsights } from \"@microsoft/applicationinsights-common\";\r\nimport { arrForEach, isFunction } from \"@microsoft/applicationinsights-core-js\";\r\nimport { IErrorService } from \"./IErrorService\";\r\n\r\n@Injectable({\r\n providedIn: \"root\"\r\n})\r\nexport class ApplicationinsightsAngularpluginErrorService implements IErrorService {\r\n public static instance: ApplicationinsightsAngularpluginErrorService = null;\r\n private analyticsPlugin: IAppInsights;\r\n private errorServices: IErrorService[] = [];\r\n\r\n constructor() {\r\n if (ApplicationinsightsAngularpluginErrorService.instance === null) {\r\n ApplicationinsightsAngularpluginErrorService.instance = this;\r\n }\r\n }\r\n\r\n public set plugin(analyticsPlugin: IAppInsights) {\r\n this.analyticsPlugin = analyticsPlugin;\r\n }\r\n\r\n public clearErrorHandlers() {\r\n this.errorServices = [];\r\n }\r\n\r\n public addErrorHandler(errorService: IErrorService): void {\r\n if (errorService && isFunction(errorService.handleError)) {\r\n this.errorServices.push(errorService);\r\n }\r\n }\r\n\r\n public removeErrorHandler(errorService: IErrorService): void {\r\n if (errorService && isFunction(errorService.handleError)) {\r\n const idx = this.errorServices.indexOf(errorService);\r\n if (idx !== -1) {\r\n this.errorServices.splice(idx, 1);\r\n }\r\n }\r\n }\r\n\r\n handleError(error: any): void {\r\n if (this.analyticsPlugin) {\r\n this.analyticsPlugin.trackException({ exception: error });\r\n }\r\n\r\n if (this.errorServices && this.errorServices.length > 0) {\r\n arrForEach(this.errorServices, errorService => {\r\n if (isFunction(errorService.handleError)) {\r\n errorService.handleError(error);\r\n }\r\n });\r\n }\r\n }\r\n}\r\n\r\n","import { Component, Injector} from \"@angular/core\";\r\nimport {\r\n IConfig, IPageViewTelemetry, PropertiesPluginIdentifier, AnalyticsPluginIdentifier\r\n} from \"@microsoft/applicationinsights-common\";\r\nimport {\r\n IPlugin, IConfiguration, IAppInsightsCore, BaseTelemetryPlugin, arrForEach, ITelemetryItem, ITelemetryPluginChain,\r\n IProcessTelemetryContext, getLocation, _throwInternal, eLoggingSeverity, _eInternalMessageId, IProcessTelemetryUnloadContext,\r\n ITelemetryUnloadState, generateW3CId, onConfigChange, IConfigDefaults, isArray, ITelemetryPlugin\r\n} from \"@microsoft/applicationinsights-core-js\";\r\nimport dynamicProto from \"@microsoft/dynamicproto-js\";\r\nimport { NavigationEnd, Router } from \"@angular/router\";\r\nimport { ApplicationinsightsAngularpluginErrorService } from \"./applicationinsights-angularplugin-error.service\";\r\nimport { IErrorService } from \"./IErrorService\";\r\nimport { Subscription } from \"rxjs\";\r\nimport { AnalyticsPlugin } from \"@microsoft/applicationinsights-analytics-js\";\r\nimport {objDeepFreeze} from \"@nevware21/ts-utils\";\r\nimport { PropertiesPlugin } from \"@microsoft/applicationinsights-properties-js\";\r\n\r\ninterface IAngularExtensionConfig {\r\n /**\r\n * Angular router for enabling Application Insights PageView tracking.\r\n */\r\n router?: Router;\r\n\r\n /**\r\n * Custom error service for global error handling.\r\n */\r\n errorServices?: IErrorService[];\r\n useInjector?: boolean;\r\n}\r\n\r\nlet undefValue;\r\n\r\nconst defaultAngularExtensionConfig: IConfigDefaults<IAngularExtensionConfig> = objDeepFreeze({\r\n router: { blkVal: true, v: undefValue},\r\n errorServices: { blkVal: true, v: undefValue}\r\n});\r\n\r\n@Component({\r\n selector: \"lib-applicationinsights-angularplugin-js\",\r\n template: \"\",\r\n styles: []\r\n})\r\n// eslint-disable-next-line @angular-eslint/component-class-suffix\r\nexport class AngularPlugin extends BaseTelemetryPlugin {\r\n public priority = 186;\r\n public identifier = \"AngularPlugin\";\r\n \r\n /**\r\n * Set next extension for telemetry processing, this is not optional as plugins should use the\r\n * processNext() function of the passed IProcessTelemetryContext instead. It is being kept for\r\n * now for backward compatibility only.\r\n */\r\n public setNextPlugin: (next: ITelemetryPlugin | ITelemetryPluginChain) => void;\r\n\r\n constructor(private _injector?: Injector) { // _injector is optional to provide\r\n super();\r\n let _analyticsPlugin: AnalyticsPlugin;\r\n let _propertiesPlugin: PropertiesPlugin;\r\n let _angularCfg: IAngularExtensionConfig;\r\n let _eventSubscription: Subscription;\r\n let _isPageInitialLoad: boolean;\r\n let _prevRouter: Router;\r\n let _errorServiceInstance: ApplicationinsightsAngularpluginErrorService;\r\n\r\n dynamicProto(AngularPlugin, this, (_self, _base) => {\r\n\r\n const _initDefaults = () => {\r\n _analyticsPlugin = null;\r\n _propertiesPlugin = null;\r\n _angularCfg = null;\r\n _eventSubscription = null;\r\n _isPageInitialLoad = true;\r\n _prevRouter = undefValue;\r\n };\r\n\r\n _initDefaults();\r\n\r\n _self.initialize = (config: IConfiguration & IConfig, core: IAppInsightsCore, extensions: IPlugin[],\r\n pluginChain?: ITelemetryPluginChain) => {\r\n super.initialize(config, core, extensions, pluginChain);\r\n \r\n _self._addHook(onConfigChange(config, (details) => {\r\n let ctx = _self._getTelCtx();\r\n _angularCfg = ctx.getExtCfg<IAngularExtensionConfig>(_self.identifier, defaultAngularExtensionConfig);\r\n _propertiesPlugin = core.getPlugin<PropertiesPlugin>(PropertiesPluginIdentifier)?.plugin as PropertiesPlugin;\r\n _analyticsPlugin = core.getPlugin<AnalyticsPlugin>(AnalyticsPluginIdentifier)?.plugin as AnalyticsPlugin;\r\n \r\n if (_angularCfg.useInjector && _injector){\r\n _errorServiceInstance = this._injector.get(ApplicationinsightsAngularpluginErrorService);\r\n }\r\n _errorServiceInstance = _errorServiceInstance ? _errorServiceInstance\r\n : ApplicationinsightsAngularpluginErrorService.instance;\r\n\r\n // two instance of errorService\r\n\r\n if (_analyticsPlugin) {\r\n if (_errorServiceInstance !== null) {\r\n _errorServiceInstance.plugin = _analyticsPlugin;\r\n if (_angularCfg.errorServices && isArray(_angularCfg.errorServices)) {\r\n _errorServiceInstance.clearErrorHandlers();\r\n arrForEach(_angularCfg.errorServices, (errorService: IErrorService) => {\r\n _errorServiceInstance.addErrorHandler(errorService);\r\n });\r\n }\r\n }\r\n }\r\n \r\n if (_angularCfg.router !== _prevRouter) {\r\n // router is changed, or has not been initialized yet\r\n\r\n // unsubscribe previous router events\r\n if (_eventSubscription) {\r\n _eventSubscription.unsubscribe();\r\n }\r\n\r\n if (_angularCfg.router){\r\n // only track page view if it is the initial page load for this plugin\r\n if (_isPageInitialLoad){\r\n const pageViewTelemetry: IPageViewTelemetry = {\r\n uri: _angularCfg.router.url\r\n };\r\n _self.trackPageView(pageViewTelemetry);\r\n }\r\n \r\n // subscribe to new router events\r\n _eventSubscription = _angularCfg.router.events.subscribe(event => {\r\n if (_self.isInitialized()) {\r\n if (event instanceof NavigationEnd) {\r\n // for page initial load, do not call trackPageView twice\r\n if (_isPageInitialLoad) {\r\n _isPageInitialLoad = false;\r\n return;\r\n }\r\n const pvt: IPageViewTelemetry = {\r\n uri: _angularCfg.router.url,\r\n properties: { duration: 0 } // SPA route change loading durations are undefined, so send 0\r\n };\r\n _self.trackPageView(pvt);\r\n }\r\n }\r\n });\r\n }\r\n _prevRouter = _angularCfg.router;\r\n }\r\n }));\r\n\r\n // for test purpose only\r\n _self[\"_getDbgPlgTargets\"] = () => _angularCfg;\r\n _self[\"_getErrorService\"] = () => _errorServiceInstance;\r\n };\r\n\r\n _self.trackPageView = (pageView: IPageViewTelemetry) => {\r\n if (_analyticsPlugin) {\r\n const location = getLocation();\r\n if (_propertiesPlugin && _propertiesPlugin.context && _propertiesPlugin.context.telemetryTrace) {\r\n _propertiesPlugin.context.telemetryTrace.traceID = generateW3CId();\r\n _propertiesPlugin.context.telemetryTrace.name = location && location.pathname || \"_unknown_\";\r\n }\r\n _analyticsPlugin.trackPageView(pageView);\r\n } else {\r\n _throwInternal(_self.diagLog(),\r\n // eslint-disable-next-line max-len\r\n eLoggingSeverity.CRITICAL, _eInternalMessageId.TelemetryInitializerFailed, \"Analytics plugin is not available, Angular plugin telemetry will not be sent: \");\r\n }\r\n };\r\n \r\n\r\n _self._doTeardown = (unloadCtx?: IProcessTelemetryUnloadContext, unloadState?: ITelemetryUnloadState,\r\n asyncCallback?: () => void): void | boolean => {\r\n if (_analyticsPlugin && _errorServiceInstance !== null) {\r\n _errorServiceInstance.plugin = null;\r\n if (_angularCfg) {\r\n if (_angularCfg.errorServices && Array.isArray(_angularCfg.errorServices)) {\r\n _errorServiceInstance.clearErrorHandlers();\r\n \r\n }\r\n }\r\n }\r\n \r\n if (_eventSubscription) {\r\n _eventSubscription.unsubscribe();\r\n _eventSubscription = null;\r\n }\r\n _initDefaults();\r\n };\r\n });\r\n\r\n }\r\n /**\r\n * Add Part A fields to the event\r\n *\r\n * @param event The event that needs to be processed\r\n */\r\n processTelemetry(event: ITelemetryItem, itemCtx?: IProcessTelemetryContext) {\r\n this.processNext(event, itemCtx);\r\n }\r\n\r\n\r\n initialize(config: IConfiguration & IConfig, core: IAppInsightsCore, extensions: IPlugin[], pluginChain?: ITelemetryPluginChain) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n }\r\n\r\n trackPageView(pageView: IPageViewTelemetry) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n }\r\n\r\n\r\n \r\n}\r\n","import { NgModule } from \"@angular/core\";\r\nimport { AngularPlugin } from \"./applicationinsights-angularplugin-js.component\";\r\nimport { ApplicationinsightsAngularpluginErrorService } from \"./applicationinsights-angularplugin-error.service\";\r\n\r\n@NgModule({\r\n declarations: [AngularPlugin],\r\n imports: [\r\n ],\r\n exports: [AngularPlugin],\r\n providers: [\r\n ApplicationinsightsAngularpluginErrorService\r\n ]\r\n})\r\nexport class ApplicationinsightsAngularpluginJsModule { }\r\n","/*\r\n * Public API Surface of applicationinsights-angularplugin-js\r\n */\r\n\r\nexport * from \"./lib/applicationinsights-angularplugin-js.component\";\r\nexport * from \"./lib/applicationinsights-angularplugin-js.module\";\r\nexport * from \"./lib/applicationinsights-angularplugin-error.service\";\r\nexport * from \"./lib/IErrorService\";\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"microsoft-applicationinsights-angularplugin-js.mjs","sources":["../../../projects/applicationinsights-angularplugin-js/src/lib/applicationinsights-angularplugin-error.service.ts","../../../projects/applicationinsights-angularplugin-js/src/lib/applicationinsights-angularplugin-js.component.ts","../../../projects/applicationinsights-angularplugin-js/src/lib/applicationinsights-angularplugin-js.module.ts","../../../projects/applicationinsights-angularplugin-js/src/public-api.ts","../../../projects/applicationinsights-angularplugin-js/src/microsoft-applicationinsights-angularplugin-js.ts"],"sourcesContent":["import { Injectable } from \"@angular/core\";\r\nimport { IAppInsights } from \"@microsoft/applicationinsights-common\";\r\nimport { arrForEach, isFunction } from \"@microsoft/applicationinsights-core-js\";\r\nimport { IErrorService } from \"./IErrorService\";\r\n\r\n@Injectable({\r\n providedIn: \"root\"\r\n})\r\nexport class ApplicationinsightsAngularpluginErrorService implements IErrorService {\r\n public static instance: ApplicationinsightsAngularpluginErrorService = null;\r\n private analyticsPlugin: IAppInsights;\r\n private errorServices: IErrorService[] = [];\r\n\r\n constructor() {\r\n if (ApplicationinsightsAngularpluginErrorService.instance === null) {\r\n ApplicationinsightsAngularpluginErrorService.instance = this;\r\n }\r\n }\r\n\r\n public set plugin(analyticsPlugin: IAppInsights) {\r\n this.analyticsPlugin = analyticsPlugin;\r\n }\r\n\r\n public clearErrorHandlers() {\r\n this.errorServices = [];\r\n }\r\n\r\n public addErrorHandler(errorService: IErrorService): void {\r\n if (errorService && isFunction(errorService.handleError)) {\r\n this.errorServices.push(errorService);\r\n }\r\n }\r\n\r\n public removeErrorHandler(errorService: IErrorService): void {\r\n if (errorService && isFunction(errorService.handleError)) {\r\n const idx = this.errorServices.indexOf(errorService);\r\n if (idx !== -1) {\r\n this.errorServices.splice(idx, 1);\r\n }\r\n }\r\n }\r\n\r\n handleError(error: any): void {\r\n if (this.analyticsPlugin) {\r\n this.analyticsPlugin.trackException({ exception: error });\r\n }\r\n\r\n if (this.errorServices && this.errorServices.length > 0) {\r\n arrForEach(this.errorServices, errorService => {\r\n if (isFunction(errorService.handleError)) {\r\n errorService.handleError(error);\r\n }\r\n });\r\n }\r\n }\r\n}\r\n\r\n","import { Component, Injector} from \"@angular/core\";\r\nimport {\r\n IConfig, IPageViewTelemetry, PropertiesPluginIdentifier, AnalyticsPluginIdentifier\r\n} from \"@microsoft/applicationinsights-common\";\r\nimport {\r\n IPlugin, IConfiguration, IAppInsightsCore, BaseTelemetryPlugin, arrForEach, ITelemetryItem, ITelemetryPluginChain,\r\n IProcessTelemetryContext, getLocation, _throwInternal, eLoggingSeverity, _eInternalMessageId, IProcessTelemetryUnloadContext,\r\n ITelemetryUnloadState, generateW3CId, onConfigChange, IConfigDefaults, isArray\r\n} from \"@microsoft/applicationinsights-core-js\";\r\nimport dynamicProto from \"@microsoft/dynamicproto-js\";\r\nimport { NavigationEnd, Router } from \"@angular/router\";\r\nimport { ApplicationinsightsAngularpluginErrorService } from \"./applicationinsights-angularplugin-error.service\";\r\nimport { IErrorService } from \"./IErrorService\";\r\nimport { Subscription } from \"rxjs\";\r\nimport { AnalyticsPlugin } from \"@microsoft/applicationinsights-analytics-js\";\r\nimport {objDeepFreeze} from \"@nevware21/ts-utils\";\r\nimport { PropertiesPlugin } from \"@microsoft/applicationinsights-properties-js\";\r\n\r\ninterface IAngularExtensionConfig {\r\n /**\r\n * Angular router for enabling Application Insights PageView tracking.\r\n */\r\n router?: Router;\r\n\r\n /**\r\n * Custom error service for global error handling.\r\n */\r\n errorServices?: IErrorService[];\r\n useInjector?: boolean;\r\n}\r\n\r\nlet undefValue;\r\n\r\nconst defaultAngularExtensionConfig: IConfigDefaults<IAngularExtensionConfig> = objDeepFreeze({\r\n router: { blkVal: true, v: undefValue},\r\n errorServices: { blkVal: true, v: undefValue}\r\n});\r\n\r\n@Component({\r\n selector: \"lib-applicationinsights-angularplugin-js\",\r\n template: \"\",\r\n styles: []\r\n})\r\n// eslint-disable-next-line @angular-eslint/component-class-suffix\r\nexport class AngularPlugin extends BaseTelemetryPlugin {\r\n public priority = 186;\r\n public identifier = \"AngularPlugin\";\r\n\r\n constructor(private _injector?: Injector) { // _injector is optional to provide\r\n super();\r\n let _analyticsPlugin: AnalyticsPlugin;\r\n let _propertiesPlugin: PropertiesPlugin;\r\n let _angularCfg: IAngularExtensionConfig;\r\n let _eventSubscription: Subscription;\r\n let _isPageInitialLoad: boolean;\r\n let _prevRouter: Router;\r\n let _errorServiceInstance: ApplicationinsightsAngularpluginErrorService;\r\n\r\n dynamicProto(AngularPlugin, this, (_self, _base) => {\r\n\r\n const _initDefaults = () => {\r\n _analyticsPlugin = null;\r\n _propertiesPlugin = null;\r\n _angularCfg = null;\r\n _eventSubscription = null;\r\n _isPageInitialLoad = true;\r\n _prevRouter = undefValue;\r\n };\r\n\r\n _initDefaults();\r\n\r\n _self.initialize = (config: IConfiguration & IConfig, core: IAppInsightsCore, extensions: IPlugin[],\r\n pluginChain?: ITelemetryPluginChain) => {\r\n super.initialize(config, core, extensions, pluginChain);\r\n \r\n _self._addHook(onConfigChange(config, (details) => {\r\n let ctx = _self._getTelCtx();\r\n _angularCfg = ctx.getExtCfg<IAngularExtensionConfig>(_self.identifier, defaultAngularExtensionConfig);\r\n _propertiesPlugin = core.getPlugin<PropertiesPlugin>(PropertiesPluginIdentifier)?.plugin as PropertiesPlugin;\r\n _analyticsPlugin = core.getPlugin<AnalyticsPlugin>(AnalyticsPluginIdentifier)?.plugin as AnalyticsPlugin;\r\n \r\n if (_angularCfg.useInjector && _injector){\r\n _errorServiceInstance = this._injector.get(ApplicationinsightsAngularpluginErrorService);\r\n }\r\n _errorServiceInstance = _errorServiceInstance ? _errorServiceInstance\r\n : ApplicationinsightsAngularpluginErrorService.instance;\r\n\r\n // two instance of errorService\r\n\r\n if (_analyticsPlugin) {\r\n if (_errorServiceInstance !== null) {\r\n _errorServiceInstance.plugin = _analyticsPlugin;\r\n if (_angularCfg.errorServices && isArray(_angularCfg.errorServices)) {\r\n _errorServiceInstance.clearErrorHandlers();\r\n arrForEach(_angularCfg.errorServices, (errorService: IErrorService) => {\r\n _errorServiceInstance.addErrorHandler(errorService);\r\n });\r\n }\r\n }\r\n }\r\n \r\n if (_angularCfg.router !== _prevRouter) {\r\n // router is changed, or has not been initialized yet\r\n\r\n // unsubscribe previous router events\r\n if (_eventSubscription) {\r\n _eventSubscription.unsubscribe();\r\n }\r\n\r\n if (_angularCfg.router){\r\n // only track page view if it is the initial page load for this plugin\r\n if (_isPageInitialLoad){\r\n const pageViewTelemetry: IPageViewTelemetry = {\r\n uri: _angularCfg.router.url\r\n };\r\n _self.trackPageView(pageViewTelemetry);\r\n }\r\n \r\n // subscribe to new router events\r\n _eventSubscription = _angularCfg.router.events.subscribe(event => {\r\n if (_self.isInitialized()) {\r\n if (event instanceof NavigationEnd) {\r\n // for page initial load, do not call trackPageView twice\r\n if (_isPageInitialLoad) {\r\n _isPageInitialLoad = false;\r\n return;\r\n }\r\n const pvt: IPageViewTelemetry = {\r\n uri: _angularCfg.router.url,\r\n properties: { duration: 0 } // SPA route change loading durations are undefined, so send 0\r\n };\r\n _self.trackPageView(pvt);\r\n }\r\n }\r\n });\r\n }\r\n _prevRouter = _angularCfg.router;\r\n }\r\n }));\r\n\r\n // for test purpose only\r\n _self[\"_getDbgPlgTargets\"] = () => _angularCfg;\r\n _self[\"_getErrorService\"] = () => _errorServiceInstance;\r\n };\r\n\r\n _self.trackPageView = (pageView: IPageViewTelemetry) => {\r\n if (_analyticsPlugin) {\r\n const location = getLocation();\r\n if (_propertiesPlugin && _propertiesPlugin.context && _propertiesPlugin.context.telemetryTrace) {\r\n _propertiesPlugin.context.telemetryTrace.traceID = generateW3CId();\r\n _propertiesPlugin.context.telemetryTrace.name = location && location.pathname || \"_unknown_\";\r\n }\r\n _analyticsPlugin.trackPageView(pageView);\r\n } else {\r\n _throwInternal(_self.diagLog(),\r\n // eslint-disable-next-line max-len\r\n eLoggingSeverity.CRITICAL, _eInternalMessageId.TelemetryInitializerFailed, \"Analytics plugin is not available, Angular plugin telemetry will not be sent: \");\r\n }\r\n };\r\n \r\n\r\n _self._doTeardown = (unloadCtx?: IProcessTelemetryUnloadContext, unloadState?: ITelemetryUnloadState,\r\n asyncCallback?: () => void): void | boolean => {\r\n if (_analyticsPlugin && _errorServiceInstance !== null) {\r\n _errorServiceInstance.plugin = null;\r\n if (_angularCfg) {\r\n if (_angularCfg.errorServices && Array.isArray(_angularCfg.errorServices)) {\r\n _errorServiceInstance.clearErrorHandlers();\r\n \r\n }\r\n }\r\n }\r\n \r\n if (_eventSubscription) {\r\n _eventSubscription.unsubscribe();\r\n _eventSubscription = null;\r\n }\r\n _initDefaults();\r\n };\r\n });\r\n\r\n }\r\n /**\r\n * Add Part A fields to the event\r\n *\r\n * @param event The event that needs to be processed\r\n */\r\n processTelemetry(event: ITelemetryItem, itemCtx?: IProcessTelemetryContext) {\r\n this.processNext(event, itemCtx);\r\n }\r\n\r\n\r\n initialize(config: IConfiguration & IConfig, core: IAppInsightsCore, extensions: IPlugin[], pluginChain?: ITelemetryPluginChain) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n }\r\n\r\n trackPageView(pageView: IPageViewTelemetry) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n }\r\n\r\n\r\n \r\n}\r\n","import { NgModule } from \"@angular/core\";\r\nimport { AngularPlugin } from \"./applicationinsights-angularplugin-js.component\";\r\nimport { ApplicationinsightsAngularpluginErrorService } from \"./applicationinsights-angularplugin-error.service\";\r\n\r\n@NgModule({\r\n declarations: [AngularPlugin],\r\n imports: [\r\n ],\r\n exports: [AngularPlugin],\r\n providers: [\r\n ApplicationinsightsAngularpluginErrorService\r\n ]\r\n})\r\nexport class ApplicationinsightsAngularpluginJsModule { }\r\n","/*\r\n * Public API Surface of applicationinsights-angularplugin-js\r\n */\r\n\r\nexport * from \"./lib/applicationinsights-angularplugin-js.component\";\r\nexport * from \"./lib/applicationinsights-angularplugin-js.module\";\r\nexport * from \"./lib/applicationinsights-angularplugin-error.service\";\r\nexport * from \"./lib/IErrorService\";\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"microsoft-applicationinsights-angularplugin-js.mjs","sources":["../../../projects/applicationinsights-angularplugin-js/src/lib/applicationinsights-angularplugin-error.service.ts","../../../projects/applicationinsights-angularplugin-js/src/lib/applicationinsights-angularplugin-js.component.ts","../../../projects/applicationinsights-angularplugin-js/src/lib/applicationinsights-angularplugin-js.module.ts","../../../projects/applicationinsights-angularplugin-js/src/public-api.ts","../../../projects/applicationinsights-angularplugin-js/src/microsoft-applicationinsights-angularplugin-js.ts"],"sourcesContent":["import { Injectable } from \"@angular/core\";\r\nimport { IAppInsights } from \"@microsoft/applicationinsights-common\";\r\nimport { arrForEach, isFunction } from \"@microsoft/applicationinsights-core-js\";\r\nimport { IErrorService } from \"./IErrorService\";\r\n\r\n@Injectable({\r\n providedIn: \"root\"\r\n})\r\nexport class ApplicationinsightsAngularpluginErrorService implements IErrorService {\r\n public static instance: ApplicationinsightsAngularpluginErrorService = null;\r\n private analyticsPlugin: IAppInsights;\r\n private errorServices: IErrorService[] = [];\r\n\r\n constructor() {\r\n if (ApplicationinsightsAngularpluginErrorService.instance === null) {\r\n ApplicationinsightsAngularpluginErrorService.instance = this;\r\n }\r\n }\r\n\r\n public set plugin(analyticsPlugin: IAppInsights) {\r\n this.analyticsPlugin = analyticsPlugin;\r\n }\r\n\r\n public clearErrorHandlers() {\r\n this.errorServices = [];\r\n }\r\n\r\n public addErrorHandler(errorService: IErrorService): void {\r\n if (errorService && isFunction(errorService.handleError)) {\r\n this.errorServices.push(errorService);\r\n }\r\n }\r\n\r\n public removeErrorHandler(errorService: IErrorService): void {\r\n if (errorService && isFunction(errorService.handleError)) {\r\n const idx = this.errorServices.indexOf(errorService);\r\n if (idx !== -1) {\r\n this.errorServices.splice(idx, 1);\r\n }\r\n }\r\n }\r\n\r\n handleError(error: any): void {\r\n if (this.analyticsPlugin) {\r\n this.analyticsPlugin.trackException({ exception: error });\r\n }\r\n\r\n if (this.errorServices && this.errorServices.length > 0) {\r\n arrForEach(this.errorServices, errorService => {\r\n if (isFunction(errorService.handleError)) {\r\n errorService.handleError(error);\r\n }\r\n });\r\n }\r\n }\r\n}\r\n\r\n","import { Component, Injector} from \"@angular/core\";\r\nimport {\r\n IConfig, IPageViewTelemetry, PropertiesPluginIdentifier, AnalyticsPluginIdentifier\r\n} from \"@microsoft/applicationinsights-common\";\r\nimport {\r\n IPlugin, IConfiguration, IAppInsightsCore, BaseTelemetryPlugin, arrForEach, ITelemetryItem, ITelemetryPluginChain,\r\n IProcessTelemetryContext, getLocation, _throwInternal, eLoggingSeverity, _eInternalMessageId, IProcessTelemetryUnloadContext,\r\n ITelemetryUnloadState, generateW3CId, onConfigChange, IConfigDefaults, isArray, ITelemetryPlugin\r\n} from \"@microsoft/applicationinsights-core-js\";\r\nimport dynamicProto from \"@microsoft/dynamicproto-js\";\r\nimport { NavigationEnd, Router } from \"@angular/router\";\r\nimport { ApplicationinsightsAngularpluginErrorService } from \"./applicationinsights-angularplugin-error.service\";\r\nimport { IErrorService } from \"./IErrorService\";\r\nimport { Subscription } from \"rxjs\";\r\nimport { AnalyticsPlugin } from \"@microsoft/applicationinsights-analytics-js\";\r\nimport {objDeepFreeze} from \"@nevware21/ts-utils\";\r\nimport { PropertiesPlugin } from \"@microsoft/applicationinsights-properties-js\";\r\n\r\ninterface IAngularExtensionConfig {\r\n /**\r\n * Angular router for enabling Application Insights PageView tracking.\r\n */\r\n router?: Router;\r\n\r\n /**\r\n * Custom error service for global error handling.\r\n */\r\n errorServices?: IErrorService[];\r\n useInjector?: boolean;\r\n}\r\n\r\nlet undefValue;\r\n\r\nconst defaultAngularExtensionConfig: IConfigDefaults<IAngularExtensionConfig> = objDeepFreeze({\r\n router: { blkVal: true, v: undefValue},\r\n errorServices: { blkVal: true, v: undefValue}\r\n});\r\n\r\n@Component({\r\n selector: \"lib-applicationinsights-angularplugin-js\",\r\n template: \"\",\r\n styles: []\r\n})\r\n// eslint-disable-next-line @angular-eslint/component-class-suffix\r\nexport class AngularPlugin extends BaseTelemetryPlugin {\r\n public priority = 186;\r\n public identifier = \"AngularPlugin\";\r\n \r\n /**\r\n * Set next extension for telemetry processing, this is not optional as plugins should use the\r\n * processNext() function of the passed IProcessTelemetryContext instead. It is being kept for\r\n * now for backward compatibility only.\r\n */\r\n public setNextPlugin: (next: ITelemetryPlugin | ITelemetryPluginChain) => void;\r\n\r\n constructor(private _injector?: Injector) { // _injector is optional to provide\r\n super();\r\n let _analyticsPlugin: AnalyticsPlugin;\r\n let _propertiesPlugin: PropertiesPlugin;\r\n let _angularCfg: IAngularExtensionConfig;\r\n let _eventSubscription: Subscription;\r\n let _isPageInitialLoad: boolean;\r\n let _prevRouter: Router;\r\n let _errorServiceInstance: ApplicationinsightsAngularpluginErrorService;\r\n\r\n dynamicProto(AngularPlugin, this, (_self, _base) => {\r\n\r\n const _initDefaults = () => {\r\n _analyticsPlugin = null;\r\n _propertiesPlugin = null;\r\n _angularCfg = null;\r\n _eventSubscription = null;\r\n _isPageInitialLoad = true;\r\n _prevRouter = undefValue;\r\n };\r\n\r\n _initDefaults();\r\n\r\n _self.initialize = (config: IConfiguration & IConfig, core: IAppInsightsCore, extensions: IPlugin[],\r\n pluginChain?: ITelemetryPluginChain) => {\r\n super.initialize(config, core, extensions, pluginChain);\r\n \r\n _self._addHook(onConfigChange(config, (details) => {\r\n let ctx = _self._getTelCtx();\r\n _angularCfg = ctx.getExtCfg<IAngularExtensionConfig>(_self.identifier, defaultAngularExtensionConfig);\r\n _propertiesPlugin = core.getPlugin<PropertiesPlugin>(PropertiesPluginIdentifier)?.plugin as PropertiesPlugin;\r\n _analyticsPlugin = core.getPlugin<AnalyticsPlugin>(AnalyticsPluginIdentifier)?.plugin as AnalyticsPlugin;\r\n \r\n if (_angularCfg.useInjector && _injector){\r\n _errorServiceInstance = this._injector.get(ApplicationinsightsAngularpluginErrorService);\r\n }\r\n _errorServiceInstance = _errorServiceInstance ? _errorServiceInstance\r\n : ApplicationinsightsAngularpluginErrorService.instance;\r\n\r\n // two instance of errorService\r\n\r\n if (_analyticsPlugin) {\r\n if (_errorServiceInstance !== null) {\r\n _errorServiceInstance.plugin = _analyticsPlugin;\r\n if (_angularCfg.errorServices && isArray(_angularCfg.errorServices)) {\r\n _errorServiceInstance.clearErrorHandlers();\r\n arrForEach(_angularCfg.errorServices, (errorService: IErrorService) => {\r\n _errorServiceInstance.addErrorHandler(errorService);\r\n });\r\n }\r\n }\r\n }\r\n \r\n if (_angularCfg.router !== _prevRouter) {\r\n // router is changed, or has not been initialized yet\r\n\r\n // unsubscribe previous router events\r\n if (_eventSubscription) {\r\n _eventSubscription.unsubscribe();\r\n }\r\n\r\n if (_angularCfg.router){\r\n // only track page view if it is the initial page load for this plugin\r\n if (_isPageInitialLoad){\r\n const pageViewTelemetry: IPageViewTelemetry = {\r\n uri: _angularCfg.router.url\r\n };\r\n _self.trackPageView(pageViewTelemetry);\r\n }\r\n \r\n // subscribe to new router events\r\n _eventSubscription = _angularCfg.router.events.subscribe(event => {\r\n if (_self.isInitialized()) {\r\n if (event instanceof NavigationEnd) {\r\n // for page initial load, do not call trackPageView twice\r\n if (_isPageInitialLoad) {\r\n _isPageInitialLoad = false;\r\n return;\r\n }\r\n const pvt: IPageViewTelemetry = {\r\n uri: _angularCfg.router.url,\r\n properties: { duration: 0 } // SPA route change loading durations are undefined, so send 0\r\n };\r\n _self.trackPageView(pvt);\r\n }\r\n }\r\n });\r\n }\r\n _prevRouter = _angularCfg.router;\r\n }\r\n }));\r\n\r\n // for test purpose only\r\n _self[\"_getDbgPlgTargets\"] = () => _angularCfg;\r\n _self[\"_getErrorService\"] = () => _errorServiceInstance;\r\n };\r\n\r\n _self.trackPageView = (pageView: IPageViewTelemetry) => {\r\n if (_analyticsPlugin) {\r\n const location = getLocation();\r\n if (_propertiesPlugin && _propertiesPlugin.context && _propertiesPlugin.context.telemetryTrace) {\r\n _propertiesPlugin.context.telemetryTrace.traceID = generateW3CId();\r\n _propertiesPlugin.context.telemetryTrace.name = location && location.pathname || \"_unknown_\";\r\n }\r\n _analyticsPlugin.trackPageView(pageView);\r\n } else {\r\n _throwInternal(_self.diagLog(),\r\n // eslint-disable-next-line max-len\r\n eLoggingSeverity.CRITICAL, _eInternalMessageId.TelemetryInitializerFailed, \"Analytics plugin is not available, Angular plugin telemetry will not be sent: \");\r\n }\r\n };\r\n \r\n\r\n _self._doTeardown = (unloadCtx?: IProcessTelemetryUnloadContext, unloadState?: ITelemetryUnloadState,\r\n asyncCallback?: () => void): void | boolean => {\r\n if (_analyticsPlugin && _errorServiceInstance !== null) {\r\n _errorServiceInstance.plugin = null;\r\n if (_angularCfg) {\r\n if (_angularCfg.errorServices && Array.isArray(_angularCfg.errorServices)) {\r\n _errorServiceInstance.clearErrorHandlers();\r\n \r\n }\r\n }\r\n }\r\n \r\n if (_eventSubscription) {\r\n _eventSubscription.unsubscribe();\r\n _eventSubscription = null;\r\n }\r\n _initDefaults();\r\n };\r\n });\r\n\r\n }\r\n /**\r\n * Add Part A fields to the event\r\n *\r\n * @param event The event that needs to be processed\r\n */\r\n processTelemetry(event: ITelemetryItem, itemCtx?: IProcessTelemetryContext) {\r\n this.processNext(event, itemCtx);\r\n }\r\n\r\n\r\n initialize(config: IConfiguration & IConfig, core: IAppInsightsCore, extensions: IPlugin[], pluginChain?: ITelemetryPluginChain) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n }\r\n\r\n trackPageView(pageView: IPageViewTelemetry) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n }\r\n\r\n\r\n \r\n}\r\n","import { NgModule } from \"@angular/core\";\r\nimport { AngularPlugin } from \"./applicationinsights-angularplugin-js.component\";\r\nimport { ApplicationinsightsAngularpluginErrorService } from \"./applicationinsights-angularplugin-error.service\";\r\n\r\n@NgModule({\r\n declarations: [AngularPlugin],\r\n imports: [\r\n ],\r\n exports: [AngularPlugin],\r\n providers: [\r\n ApplicationinsightsAngularpluginErrorService\r\n ]\r\n})\r\nexport class ApplicationinsightsAngularpluginJsModule { }\r\n","/*\r\n * Public API Surface of applicationinsights-angularplugin-js\r\n */\r\n\r\nexport * from \"./lib/applicationinsights-angularplugin-js.component\";\r\nexport * from \"./lib/applicationinsights-angularplugin-js.module\";\r\nexport * from \"./lib/applicationinsights-angularplugin-error.service\";\r\nexport * from \"./lib/IErrorService\";\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -1,11 +1,17 @@
1
1
  import { Injector } from "@angular/core";
2
2
  import { IConfig, IPageViewTelemetry } from "@microsoft/applicationinsights-common";
3
- import { IPlugin, IConfiguration, IAppInsightsCore, BaseTelemetryPlugin, ITelemetryItem, ITelemetryPluginChain, IProcessTelemetryContext } from "@microsoft/applicationinsights-core-js";
3
+ import { IPlugin, IConfiguration, IAppInsightsCore, BaseTelemetryPlugin, ITelemetryItem, ITelemetryPluginChain, IProcessTelemetryContext, ITelemetryPlugin } from "@microsoft/applicationinsights-core-js";
4
4
  import * as i0 from "@angular/core";
5
5
  export declare class AngularPlugin extends BaseTelemetryPlugin {
6
6
  private _injector?;
7
7
  priority: number;
8
8
  identifier: string;
9
+ /**
10
+ * Set next extension for telemetry processing, this is not optional as plugins should use the
11
+ * processNext() function of the passed IProcessTelemetryContext instead. It is being kept for
12
+ * now for backward compatibility only.
13
+ */
14
+ setNextPlugin: (next: ITelemetryPlugin | ITelemetryPluginChain) => void;
9
15
  constructor(_injector?: Injector);
10
16
  /**
11
17
  * Add Part A fields to the event
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@microsoft/applicationinsights-angularplugin-js",
3
- "version": "15.3.8-nightly.2508-02",
3
+ "version": "15.3.8",
4
4
  "description": "Microsoft Application Insights Angular plugin",
5
5
  "author": "Microsoft Application Insights Team",
6
6
  "license": "MIT",
@@ -14,19 +14,16 @@
14
14
  "homepage": "https://github.com/microsoft/applicationinsights-angularplugin-js#readme",
15
15
  "dependencies": {
16
16
  "@microsoft/applicationinsights-shims": "^3.0.1",
17
- "@microsoft/applicationinsights-common": "nightly3",
18
- "@microsoft/applicationinsights-core-js": "nightly3",
19
- "@microsoft/applicationinsights-properties-js": "nightly3",
17
+ "@microsoft/applicationinsights-common": "^3.3.10",
18
+ "@microsoft/applicationinsights-core-js": "^3.3.10",
19
+ "@microsoft/applicationinsights-properties-js": "^3.3.10",
20
20
  "tslib": "^2.0.0"
21
21
  },
22
22
  "peerDependencies": {
23
- "@microsoft/applicationinsights-analytics-js": "nightly3",
23
+ "@microsoft/applicationinsights-analytics-js": "^3.3.10",
24
24
  "@angular/common": ">= 14.0.3",
25
25
  "@angular/core": ">= 14.0.3"
26
26
  },
27
- "publishConfig": {
28
- "tag": "nightly"
29
- },
30
27
  "module": "fesm2015/microsoft-applicationinsights-angularplugin-js.mjs",
31
28
  "es2020": "fesm2020/microsoft-applicationinsights-angularplugin-js.mjs",
32
29
  "esm2020": "esm2020/microsoft-applicationinsights-angularplugin-js.mjs",