@zowe/cli 7.3.1 → 7.4.2

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.
@@ -0,0 +1,68 @@
1
+ "use strict";
2
+ /*
3
+ * This program and the accompanying materials are made available under the terms of the
4
+ * Eclipse Public License v2.0 which accompanies this distribution, and is available at
5
+ * https://www.eclipse.org/legal/epl-v20.html
6
+ *
7
+ * SPDX-License-Identifier: EPL-2.0
8
+ *
9
+ * Copyright Contributors to the Zowe Project.
10
+ *
11
+ */
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.DatasetDefinition = void 0;
14
+ const Compare_options_1 = require("../Compare.options");
15
+ // Does not use the import in anticipation of some internationalization work to be done later.
16
+ const strings = require("../../-strings-/en").default.COMPARE;
17
+ /**
18
+ * Compare data sets command definition containing its description, examples and/or options
19
+ * @type {ICommandDefinition}
20
+ */
21
+ exports.DatasetDefinition = {
22
+ name: "data-set",
23
+ aliases: ["ds"],
24
+ summary: strings.ACTIONS.DATA_SET.SUMMARY,
25
+ description: strings.ACTIONS.DATA_SET.DESCRIPTION,
26
+ type: "command",
27
+ handler: __dirname + "/Dataset.handler",
28
+ profile: {
29
+ optional: ["zosmf"],
30
+ },
31
+ positionals: [
32
+ {
33
+ name: "dataSetName1",
34
+ description: strings.ACTIONS.DATA_SET.POSITIONALS.DATASETNAME1,
35
+ type: "string",
36
+ required: true
37
+ },
38
+ {
39
+ name: "dataSetName2",
40
+ type: "string",
41
+ description: strings.ACTIONS.DATA_SET.POSITIONALS.DATASETNAME2,
42
+ required: true
43
+ }
44
+ ],
45
+ options: [
46
+ Compare_options_1.CompareOptions.binary,
47
+ Compare_options_1.CompareOptions.binary2,
48
+ Compare_options_1.CompareOptions.encoding,
49
+ Compare_options_1.CompareOptions.encoding2,
50
+ Compare_options_1.CompareOptions.record,
51
+ Compare_options_1.CompareOptions.record2,
52
+ Compare_options_1.CompareOptions.volume,
53
+ Compare_options_1.CompareOptions.volume2,
54
+ Compare_options_1.CompareOptions.seqnum,
55
+ Compare_options_1.CompareOptions.contextLines
56
+ ],
57
+ examples: [
58
+ {
59
+ description: strings.ACTIONS.DATA_SET.EXAMPLES.EX1,
60
+ options: `"sys1.samplib(antptso)" "sys1.samplib(antxtso)"`
61
+ },
62
+ {
63
+ description: strings.ACTIONS.DATA_SET.EXAMPLES.EX2,
64
+ options: `"sys1.samplib(antptso)" "sys1.samplib(antxtso)" --no-seqnum`
65
+ }
66
+ ]
67
+ };
68
+ //# sourceMappingURL=Dataset.definition.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Dataset.definition.js","sourceRoot":"","sources":["../../../../src/zosfiles/compare/ds/Dataset.definition.ts"],"names":[],"mappings":";AAAA;;;;;;;;;EASE;;;AAGF,wDAAoD;AAGpD,8FAA8F;AAC9F,MAAM,OAAO,GAAI,OAAO,CAAC,oBAAoB,CAAC,CAAC,OAA8B,CAAC,OAAO,CAAC;AAEtF;;;GAGG;AACU,QAAA,iBAAiB,GAAuB;IACjD,IAAI,EAAE,UAAU;IAChB,OAAO,EAAE,CAAC,IAAI,CAAC;IACf,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO;IACzC,WAAW,EAAE,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW;IACjD,IAAI,EAAE,SAAS;IACf,OAAO,EAAE,SAAS,GAAG,kBAAkB;IACvC,OAAO,EAAE;QACL,QAAQ,EAAE,CAAC,OAAO,CAAC;KACtB;IACD,WAAW,EAAE;QACT;YACI,IAAI,EAAE,cAAc;YACpB,WAAW,EAAE,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,YAAY;YAC9D,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,IAAI;SACjB;QACD;YACI,IAAI,EAAE,cAAc;YACpB,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,YAAY;YAC9D,QAAQ,EAAE,IAAI;SACjB;KACJ;IACD,OAAO,EAAE;QACL,gCAAc,CAAC,MAAM;QACrB,gCAAc,CAAC,OAAO;QACtB,gCAAc,CAAC,QAAQ;QACvB,gCAAc,CAAC,SAAS;QACxB,gCAAc,CAAC,MAAM;QACrB,gCAAc,CAAC,OAAO;QACtB,gCAAc,CAAC,MAAM;QACrB,gCAAc,CAAC,OAAO;QACtB,gCAAc,CAAC,MAAM;QACrB,gCAAc,CAAC,YAAY;KAC9B;IACD,QAAQ,EAAE;QACN;YACI,WAAW,EAAE,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG;YAClD,OAAO,EAAE,iDAAiD;SAC7D;QACD;YACI,WAAW,EAAE,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG;YAClD,OAAO,EAAE,6DAA6D;SACzE;KACJ;CACJ,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { AbstractSession, IHandlerParameters } from "@zowe/imperative";
2
+ import { IZosFilesResponse } from "@zowe/zos-files-for-zowe-sdk";
3
+ import { ZosFilesBaseHandler } from "../../ZosFilesBase.handler";
4
+ /**
5
+ * Handler to view a data set's content
6
+ * @export
7
+ */
8
+ export default class DatasetHandler extends ZosFilesBaseHandler {
9
+ processWithSession(commandParameters: IHandlerParameters, session: AbstractSession): Promise<IZosFilesResponse>;
10
+ }
@@ -0,0 +1,112 @@
1
+ "use strict";
2
+ /*
3
+ * This program and the accompanying materials are made available under the terms of the
4
+ * Eclipse Public License v2.0 which accompanies this distribution, and is available at
5
+ * https://www.eclipse.org/legal/epl-v20.html
6
+ *
7
+ * SPDX-License-Identifier: EPL-2.0
8
+ *
9
+ * Copyright Contributors to the Zowe Project.
10
+ *
11
+ */
12
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
13
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
14
+ return new (P || (P = Promise))(function (resolve, reject) {
15
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
16
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
17
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
18
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
19
+ });
20
+ };
21
+ Object.defineProperty(exports, "__esModule", { value: true });
22
+ const imperative_1 = require("@zowe/imperative");
23
+ const zos_files_for_zowe_sdk_1 = require("@zowe/zos-files-for-zowe-sdk");
24
+ const ZosFilesBase_handler_1 = require("../../ZosFilesBase.handler");
25
+ const jest_diff_1 = require("jest-diff");
26
+ /**
27
+ * Handler to view a data set's content
28
+ * @export
29
+ */
30
+ class DatasetHandler extends ZosFilesBase_handler_1.ZosFilesBaseHandler {
31
+ processWithSession(commandParameters, session) {
32
+ return __awaiter(this, void 0, void 0, function* () {
33
+ const task = {
34
+ percentComplete: 0,
35
+ statusMessage: "Retrieving first dataset",
36
+ stageName: imperative_1.TaskStage.IN_PROGRESS
37
+ };
38
+ commandParameters.response.progress.startBar({ task });
39
+ const dsContentBuf1 = yield zos_files_for_zowe_sdk_1.Get.dataSet(session, commandParameters.arguments.dataSetName1, { binary: commandParameters.arguments.binary,
40
+ encoding: commandParameters.arguments.encoding,
41
+ record: commandParameters.arguments.record,
42
+ volume: commandParameters.arguments.volumeSerial,
43
+ responseTimeout: commandParameters.arguments.responseTimeout,
44
+ task: task
45
+ });
46
+ commandParameters.response.progress.endBar();
47
+ commandParameters.response.progress.startBar({ task });
48
+ let binary2 = commandParameters.arguments.binary2;
49
+ let encoding2 = commandParameters.arguments.encoding2;
50
+ let record2 = commandParameters.arguments.record2;
51
+ const volumeSerial2 = commandParameters.arguments.volumeSerial2;
52
+ if (binary2 == undefined) {
53
+ binary2 = commandParameters.arguments.binary;
54
+ }
55
+ if (encoding2 == undefined) {
56
+ encoding2 = commandParameters.arguments.encoding;
57
+ }
58
+ if (record2 == undefined) {
59
+ record2 = commandParameters.arguments.record;
60
+ }
61
+ task.statusMessage = "Retrieving second dataset";
62
+ const dsContentBuf2 = yield zos_files_for_zowe_sdk_1.Get.dataSet(session, commandParameters.arguments.dataSetName2, { binary: binary2,
63
+ encoding: encoding2,
64
+ record: record2,
65
+ volume: volumeSerial2,
66
+ responseTimeout: commandParameters.arguments.responseTimeout,
67
+ task: task
68
+ });
69
+ let dsContentString1 = "";
70
+ let dsContentString2 = "";
71
+ if (commandParameters.arguments.seqnum == false) {
72
+ const seqnumlen = 8;
73
+ const dsStringArray1 = dsContentBuf1.toString().split("\n");
74
+ for (const i in dsStringArray1) {
75
+ const sl = dsStringArray1[i].length;
76
+ const tempString = dsStringArray1[i].substring(0, sl - seqnumlen);
77
+ dsContentString1 += tempString + "\n";
78
+ }
79
+ const dsStringArray2 = dsContentBuf2.toString().split("\n");
80
+ for (const i in dsStringArray2) {
81
+ const sl = dsStringArray2[i].length;
82
+ const tempString = dsStringArray2[i].substring(0, sl - seqnumlen);
83
+ dsContentString2 += tempString + "\n";
84
+ }
85
+ }
86
+ else {
87
+ dsContentString1 = dsContentBuf1.toString();
88
+ dsContentString2 = dsContentBuf2.toString();
89
+ }
90
+ let jsonDiff = "";
91
+ let expandflag = true;
92
+ const contextLinesArg = commandParameters.arguments.contextLines;
93
+ if (contextLinesArg >= 0) {
94
+ expandflag = false;
95
+ }
96
+ jsonDiff = jest_diff_1.diff(dsContentString1, dsContentString2, { aAnnotation: "Removed",
97
+ bAnnotation: "Added",
98
+ aColor: imperative_1.TextUtils.chalk.red,
99
+ bColor: imperative_1.TextUtils.chalk.green,
100
+ contextLines: contextLinesArg,
101
+ expand: expandflag
102
+ });
103
+ return {
104
+ success: true,
105
+ commandResponse: jsonDiff,
106
+ apiResponse: {}
107
+ };
108
+ });
109
+ }
110
+ }
111
+ exports.default = DatasetHandler;
112
+ //# sourceMappingURL=Dataset.handler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Dataset.handler.js","sourceRoot":"","sources":["../../../../src/zosfiles/compare/ds/Dataset.handler.ts"],"names":[],"mappings":"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"}
@@ -19,8 +19,8 @@ const strings = require("../../-strings-/en").default.DOWNLOAD.ACTIONS.DATA_SETS
19
19
  * @type {ICommandDefinition}
20
20
  */
21
21
  exports.DataSetMatchingDefinition = {
22
- name: "data-set-matching",
23
- aliases: ["dsm"],
22
+ name: "data-sets-matching",
23
+ aliases: ["dsm", "data-set-matching"],
24
24
  summary: strings.SUMMARY,
25
25
  description: strings.DESCRIPTION,
26
26
  type: "command",
@@ -1 +1 @@
1
- {"version":3,"file":"DataSetMatching.definition.js","sourceRoot":"","sources":["../../../../src/zosfiles/download/dsm/DataSetMatching.definition.ts"],"names":[],"mappings":";AAAA;;;;;;;;;EASE;;;AAGF,0DAAsD;AAGtD,8FAA8F;AAC9F,MAAM,OAAO,GAAI,OAAO,CAAC,oBAAoB,CAAC,CAAC,OAA8B,CAAC,QAAQ,CAAC,OAAO,CAAC,kBAAkB,CAAC;AAElH;;;GAGG;AACU,QAAA,yBAAyB,GAAuB;IACzD,IAAI,EAAE,mBAAmB;IACzB,OAAO,EAAE,CAAC,KAAK,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC,OAAO;IACxB,WAAW,EAAE,OAAO,CAAC,WAAW;IAChC,IAAI,EAAE,SAAS;IACf,OAAO,EAAE,SAAS,GAAG,0BAA0B;IAC/C,OAAO,EAAE;QACL,QAAQ,EAAE,CAAC,OAAO,CAAC;KACtB;IACD,WAAW,EAAE;QACT;YACI,IAAI,EAAE,SAAS;YACf,WAAW,EAAE,OAAO,CAAC,WAAW,CAAC,OAAO;YACxC,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,IAAI;SACjB;KACJ;IACD,OAAO,EAAE;QACL,kCAAe,CAAC,MAAM;QACtB,kCAAe,CAAC,SAAS;QACzB,kCAAe,CAAC,MAAM;QACtB,kCAAe,CAAC,MAAM;QACtB,kCAAe,CAAC,QAAQ;QACxB,kCAAe,CAAC,SAAS;QACzB,kCAAe,CAAC,cAAc;QAC9B,kCAAe,CAAC,YAAY;QAC5B,kCAAe,CAAC,qBAAqB;QACrC,kCAAe,CAAC,0BAA0B;QAC1C,kCAAe,CAAC,QAAQ;KAC3B,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAC9C,QAAQ,EAAE;QACN;YACI,WAAW,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG;YACjC,OAAO,EAAE,oEAAoE;SAChF;QACD;YACI,WAAW,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG;YACjC,OAAO,EAAE,oGAAoG;gBAC7G,yFAAyF;SAC5F;KACJ;CACJ,CAAC"}
1
+ {"version":3,"file":"DataSetMatching.definition.js","sourceRoot":"","sources":["../../../../src/zosfiles/download/dsm/DataSetMatching.definition.ts"],"names":[],"mappings":";AAAA;;;;;;;;;EASE;;;AAGF,0DAAsD;AAGtD,8FAA8F;AAC9F,MAAM,OAAO,GAAI,OAAO,CAAC,oBAAoB,CAAC,CAAC,OAA8B,CAAC,QAAQ,CAAC,OAAO,CAAC,kBAAkB,CAAC;AAElH;;;GAGG;AACU,QAAA,yBAAyB,GAAuB;IACzD,IAAI,EAAE,oBAAoB;IAC1B,OAAO,EAAE,CAAC,KAAK,EAAE,mBAAmB,CAAC;IACrC,OAAO,EAAE,OAAO,CAAC,OAAO;IACxB,WAAW,EAAE,OAAO,CAAC,WAAW;IAChC,IAAI,EAAE,SAAS;IACf,OAAO,EAAE,SAAS,GAAG,0BAA0B;IAC/C,OAAO,EAAE;QACL,QAAQ,EAAE,CAAC,OAAO,CAAC;KACtB;IACD,WAAW,EAAE;QACT;YACI,IAAI,EAAE,SAAS;YACf,WAAW,EAAE,OAAO,CAAC,WAAW,CAAC,OAAO;YACxC,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,IAAI;SACjB;KACJ;IACD,OAAO,EAAE;QACL,kCAAe,CAAC,MAAM;QACtB,kCAAe,CAAC,SAAS;QACzB,kCAAe,CAAC,MAAM;QACtB,kCAAe,CAAC,MAAM;QACtB,kCAAe,CAAC,QAAQ;QACxB,kCAAe,CAAC,SAAS;QACzB,kCAAe,CAAC,cAAc;QAC9B,kCAAe,CAAC,YAAY;QAC5B,kCAAe,CAAC,qBAAqB;QACrC,kCAAe,CAAC,0BAA0B;QAC1C,kCAAe,CAAC,QAAQ;KAC3B,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAC9C,QAAQ,EAAE;QACN;YACI,WAAW,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG;YACjC,OAAO,EAAE,oEAAoE;SAChF;QACD;YACI,WAAW,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG;YACjC,OAAO,EAAE,oGAAoG;gBAC7G,yFAAyF;SAC5F;KACJ;CACJ,CAAC"}