// Copyright (c) Microsoft Corporation. All rights reserved. // Licensed under the MIT license. var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; Object.defineProperty(exports, "__esModule", { value: true }); exports.stopDebugging = void 0; const office_addin_dev_settings_1 = require("office-addin-dev-settings"); const office_addin_manifest_1 = require("office-addin-manifest"); const debugInfo = require("./debugInfo"); const process_1 = require("./process"); const defaults_1 = require("./defaults"); const office_addin_usage_data_1 = require("office-addin-usage-data"); /* global process, console */ function stopDebugging(manifestPath) { return __awaiter(this, void 0, void 0, function* () { try { console.log("Debugging is being stopped..."); const isWindowsPlatform = process.platform === "win32"; const manifestInfo = yield office_addin_manifest_1.OfficeAddinManifest.readManifestFile(manifestPath); if (!manifestInfo.id) { throw new office_addin_usage_data_1.ExpectedError("Manifest does not contain the id for the Office Add-in."); } // clear dev settings if (isWindowsPlatform) { yield (0, office_addin_dev_settings_1.clearDevSettings)(manifestInfo.id); } // unregister try { yield (0, office_addin_dev_settings_1.unregisterAddIn)(manifestPath); } catch (err) { console.log(`Unable to unregister the Office Add-in. ${err}`); } const processId = debugInfo.readDevServerProcessId(); if (processId) { (0, process_1.stopProcess)(processId); console.log(`Stopped dev server. Process id: ${processId}`); debugInfo.clearDevServerProcessId(); } console.log("Debugging has been stopped."); defaults_1.usageDataObject.reportSuccess("stopDebugging()"); } catch (err) { defaults_1.usageDataObject.reportException("stopDebugging()", err); throw err; } }); } exports.stopDebugging = stopDebugging; //# sourceMappingURL=stop.js.map