UNPKG

@broadcom/ops-for-zowe-cli

Version:

OPS/MVS® Plug-in for Zowe CLI

107 lines 4.61 kB
"use strict"; /* * Copyright (c) 2024 Broadcom. All Rights Reserved. The term * "Broadcom" refers to Broadcom Inc. and/or its subsidiaries. * * This software and all information contained therein is * confidential and proprietary and shall not be duplicated, * used, disclosed, or disseminated in any way except as * authorized by the applicable license agreement, without the * express written permission of Broadcom. All authorized * reproductions must be marked with this language. * * EXCEPT AS SET FORTH IN THE APPLICABLE LICENSE AGREEMENT, TO * THE EXTENT PERMITTED BY APPLICABLE LAW, BROADCOM PROVIDES THIS * SOFTWARE WITHOUT WARRANTY OF ANY KIND, INCLUDING WITHOUT * LIMITATION, ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR * FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT WILL BROADCOM * BE LIABLE TO THE END USER OR ANY THIRD PARTY FOR ANY LOSS OR * DAMAGE, DIRECT OR INDIRECT, FROM THE USE OF THIS SOFTWARE, * INCLUDING WITHOUT LIMITATION, LOST PROFITS, BUSINESS * INTERRUPTION, GOODWILL, OR LOST DATA, EVEN IF BROADCOM IS * EXPRESSLY ADVISED OF SUCH LOSS OR DAMAGE. */ Object.defineProperty(exports, "__esModule", { value: true }); exports.ParmsListUtils = void 0; const constants_1 = require("../constants"); const OpsTextUtils_1 = require("./OpsTextUtils"); let headerText = "SSM Parms on subsystem: "; class ParmsListUtils { static printShowParmsResponse(response, params, subsystem) { let output = ""; let jsonString = JSON.stringify(response); jsonString = jsonString.replace("{", ""); jsonString = jsonString.replace("}", ""); const parmsList = jsonString.split(','); for (let i = 0; i < parmsList.length; i++) { const parm = parmsList[i]; output = output + ParmsListUtils.formatOutputFromArrayRestApi(parm, i, subsystem, params); } // close out JSON if (params.arguments.format.toUpperCase() === constants_1.OpsConstants.JSON) { output = output + "}}"; } return output; } static formatOutputFromArrayRestApi(parm, i, subsystem, params) { let output = ""; if (params.arguments.format.toUpperCase() === constants_1.OpsConstants.CSV) { if (i === 0) { output = `${output}${ParmsListUtils.formatCsvHeaderResponse()}`; } output = `${output}\n${ParmsListUtils.formatCsvDataResponse(parm, subsystem)}`; } else if (params.arguments.format.toUpperCase() === constants_1.OpsConstants.JSON) { if (i === 0) { output = output + `{"subsystem": "${subsystem}", "SSM parms": {`; } else if (i > 0) { output = output + ", "; } output = `${output}${ParmsListUtils.formatJsonDataResponse(parm)}`; } else if (params.arguments.format.toUpperCase() === constants_1.OpsConstants.NAMEVALUECOLOR) { if (i === 0) { output = `${output}${ParmsListUtils.formatNameValueHeaderParmsResponse(subsystem, true)}`; } output = `${output}${ParmsListUtils.formatNameValueColorParmsResponse(parm)}`; } else { if (i === 0) { output = `${output}${ParmsListUtils.formatNameValueHeaderParmsResponse(subsystem, false)}`; } output = `${output}${ParmsListUtils.formatNameValueParmsResponse(parm)}`; } return output; } static formatNameValueHeaderParmsResponse(subsystem, color) { if (color) { headerText = OpsTextUtils_1.OpsTextUtils.colorizeAttention(headerText); } return `${headerText}${subsystem}\n`; } static formatNameValueParmsResponse(parm) { let work = parm.replace(/"/g, ""); work = work.replace("/", ""); return ` ${work}\n`; } static formatNameValueColorParmsResponse(parm) { const work = parm.replace(/"/g, ""); const nameValue = work.split(':'); return ` ${OpsTextUtils_1.OpsTextUtils.colorizeAttention(nameValue[0])}: ${nameValue[1]}\n`; } static formatJsonDataResponse(parm) { let output = ""; //`{`; output = output + `${parm}`; return output; } static formatCsvHeaderResponse() { return `subsystem,SSM parm name,value`; } static formatCsvDataResponse(parm, subsystem) { const nameValue = parm.split(':'); return `"${subsystem}",${nameValue[0]},${nameValue[1]}`; } } exports.ParmsListUtils = ParmsListUtils; //# sourceMappingURL=ParmsListUtils.js.map