@pnp/spfx-controls-react
Version:
Reusable React controls for SharePoint Framework solutions
32 lines • 1.29 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.useTelemetry = void 0;
exports.track = track;
var tslib_1 = require("tslib");
var telemetry_js_1 = tslib_1.__importDefault(require("@pnp/telemetry-js"));
var version_1 = require("./version");
var sp_core_library_1 = require("@microsoft/sp-core-library");
var React = tslib_1.__importStar(require("react"));
var CONTROL_TYPE = "react";
/**
* Track control information
*
* @param componentName
* @param properties
*/
function track(componentName, properties) {
if (properties === void 0) { properties = {}; }
var telemetry = telemetry_js_1.default.getInstance();
telemetry.trackEvent(componentName, tslib_1.__assign({ version: version_1.version, controlType: CONTROL_TYPE, debug: DEBUG ? "true" : "false", environment: sp_core_library_1.EnvironmentType[sp_core_library_1.Environment.type] }, properties));
}
var useTelemetry = function (componentName, properties) {
if (properties === void 0) { properties = {}; }
var _a = React.useState(false), hasBeenCalled = _a[0], setHasBeenCalled = _a[1];
if (hasBeenCalled) {
return;
}
track(componentName, properties);
setHasBeenCalled(true);
};
exports.useTelemetry = useTelemetry;
//# sourceMappingURL=index.js.map