From c6b026e0b0c923c8159bea8f4ec43f093b822f54 Mon Sep 17 00:00:00 2001 From: Lauren Li Date: Tue, 21 Apr 2020 11:29:04 -0400 Subject: [PATCH 01/30] Add devDependencies for webpack Signed-off-by: Lauren Li --- package-lock.json | 1756 ++++++++++++++++++++++++++++++++++++++++++++- package.json | 11 +- 2 files changed, 1757 insertions(+), 10 deletions(-) diff --git a/package-lock.json b/package-lock.json index 736ef2fd1a..09f0933406 100644 --- a/package-lock.json +++ b/package-lock.json @@ -730,6 +730,193 @@ "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-15.0.0.tgz", "integrity": "sha512-FA/BWv8t8ZWJ+gEOnLLd8ygxH/2UFbAvgEonyfN6yWGLKc7zVjbpl2Y4CTjid9h2RfgPP6SEt6uHwEOply00yw==" }, + "@webassemblyjs/ast": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.9.0.tgz", + "integrity": "sha512-C6wW5L+b7ogSDVqymbkkvuW9kruN//YisMED04xzeBBqjHa2FYnmvOlS6Xj68xWQRgWvI9cIglsjFowH/RJyEA==", + "dev": true, + "requires": { + "@webassemblyjs/helper-module-context": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/wast-parser": "1.9.0" + } + }, + "@webassemblyjs/floating-point-hex-parser": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.9.0.tgz", + "integrity": "sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA==", + "dev": true + }, + "@webassemblyjs/helper-api-error": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.9.0.tgz", + "integrity": "sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw==", + "dev": true + }, + "@webassemblyjs/helper-buffer": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.9.0.tgz", + "integrity": "sha512-qZol43oqhq6yBPx7YM3m9Bv7WMV9Eevj6kMi6InKOuZxhw+q9hOkvq5e/PpKSiLfyetpaBnogSbNCfBwyB00CA==", + "dev": true + }, + "@webassemblyjs/helper-code-frame": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.9.0.tgz", + "integrity": "sha512-ERCYdJBkD9Vu4vtjUYe8LZruWuNIToYq/ME22igL+2vj2dQ2OOujIZr3MEFvfEaqKoVqpsFKAGsRdBSBjrIvZA==", + "dev": true, + "requires": { + "@webassemblyjs/wast-printer": "1.9.0" + } + }, + "@webassemblyjs/helper-fsm": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.9.0.tgz", + "integrity": "sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw==", + "dev": true + }, + "@webassemblyjs/helper-module-context": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.9.0.tgz", + "integrity": "sha512-MJCW8iGC08tMk2enck1aPW+BE5Cw8/7ph/VGZxwyvGbJwjktKkDK7vy7gAmMDx88D7mhDTCNKAW5tED+gZ0W8g==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.9.0" + } + }, + "@webassemblyjs/helper-wasm-bytecode": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.9.0.tgz", + "integrity": "sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw==", + "dev": true + }, + "@webassemblyjs/helper-wasm-section": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.9.0.tgz", + "integrity": "sha512-XnMB8l3ek4tvrKUUku+IVaXNHz2YsJyOOmz+MMkZvh8h1uSJpSen6vYnw3IoQ7WwEuAhL8Efjms1ZWjqh2agvw==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-buffer": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/wasm-gen": "1.9.0" + } + }, + "@webassemblyjs/ieee754": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.9.0.tgz", + "integrity": "sha512-dcX8JuYU/gvymzIHc9DgxTzUUTLexWwt8uCTWP3otys596io0L5aW02Gb1RjYpx2+0Jus1h4ZFqjla7umFniTg==", + "dev": true, + "requires": { + "@xtuc/ieee754": "^1.2.0" + } + }, + "@webassemblyjs/leb128": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.9.0.tgz", + "integrity": "sha512-ENVzM5VwV1ojs9jam6vPys97B/S65YQtv/aanqnU7D8aSoHFX8GyhGg0CMfyKNIHBuAVjy3tlzd5QMMINa7wpw==", + "dev": true, + "requires": { + "@xtuc/long": "4.2.2" + } + }, + "@webassemblyjs/utf8": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.9.0.tgz", + "integrity": "sha512-GZbQlWtopBTP0u7cHrEx+73yZKrQoBMpwkGEIqlacljhXCkVM1kMQge/Mf+csMJAjEdSwhOyLAS0AoR3AG5P8w==", + "dev": true + }, + "@webassemblyjs/wasm-edit": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.9.0.tgz", + "integrity": "sha512-FgHzBm80uwz5M8WKnMTn6j/sVbqilPdQXTWraSjBwFXSYGirpkSWE2R9Qvz9tNiTKQvoKILpCuTjBKzOIm0nxw==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-buffer": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/helper-wasm-section": "1.9.0", + "@webassemblyjs/wasm-gen": "1.9.0", + "@webassemblyjs/wasm-opt": "1.9.0", + "@webassemblyjs/wasm-parser": "1.9.0", + "@webassemblyjs/wast-printer": "1.9.0" + } + }, + "@webassemblyjs/wasm-gen": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.9.0.tgz", + "integrity": "sha512-cPE3o44YzOOHvlsb4+E9qSqjc9Qf9Na1OO/BHFy4OI91XDE14MjFN4lTMezzaIWdPqHnsTodGGNP+iRSYfGkjA==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/ieee754": "1.9.0", + "@webassemblyjs/leb128": "1.9.0", + "@webassemblyjs/utf8": "1.9.0" + } + }, + "@webassemblyjs/wasm-opt": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.9.0.tgz", + "integrity": "sha512-Qkjgm6Anhm+OMbIL0iokO7meajkzQD71ioelnfPEj6r4eOFuqm4YC3VBPqXjFyyNwowzbMD+hizmprP/Fwkl2A==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-buffer": "1.9.0", + "@webassemblyjs/wasm-gen": "1.9.0", + "@webassemblyjs/wasm-parser": "1.9.0" + } + }, + "@webassemblyjs/wasm-parser": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.9.0.tgz", + "integrity": "sha512-9+wkMowR2AmdSWQzsPEjFU7njh8HTO5MqO8vjwEHuM+AMHioNqSBONRdr0NQQ3dVQrzp0s8lTcYqzUdb7YgELA==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-api-error": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/ieee754": "1.9.0", + "@webassemblyjs/leb128": "1.9.0", + "@webassemblyjs/utf8": "1.9.0" + } + }, + "@webassemblyjs/wast-parser": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.9.0.tgz", + "integrity": "sha512-qsqSAP3QQ3LyZjNC/0jBJ/ToSxfYJ8kYyuiGvtn/8MK89VrNEfwj7BPQzJVHi0jGTRK2dGdJ5PRqhtjzoww+bw==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/floating-point-hex-parser": "1.9.0", + "@webassemblyjs/helper-api-error": "1.9.0", + "@webassemblyjs/helper-code-frame": "1.9.0", + "@webassemblyjs/helper-fsm": "1.9.0", + "@xtuc/long": "4.2.2" + } + }, + "@webassemblyjs/wast-printer": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.9.0.tgz", + "integrity": "sha512-2J0nE95rHXHyQ24cWjMKJ1tqB/ds8z/cyeOZxJhcb+rW+SQASVjuznUSmdz5GpVJTzU8JkhYut0D3siFDD6wsA==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/wast-parser": "1.9.0", + "@xtuc/long": "4.2.2" + } + }, + "@xtuc/ieee754": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", + "dev": true + }, + "@xtuc/long": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", + "dev": true + }, "@zowe/cli": { "version": "6.10.1", "resolved": "https://registry.npmjs.org/@zowe/cli/-/cli-6.10.1.tgz", @@ -907,6 +1094,18 @@ "uri-js": "^4.2.2" } }, + "ajv-errors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.1.tgz", + "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==", + "dev": true + }, + "ajv-keywords": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.4.1.tgz", + "integrity": "sha512-RO1ibKvd27e6FEShVFfPALuHI3WjSVNeK5FIsmme/LYRNxjKuNj+Dt7bucLa6NdSv3JcVTyMlm9kGR84z1XpaQ==", + "dev": true + }, "ansi-colors": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-1.1.0.tgz", @@ -1181,6 +1380,44 @@ "safer-buffer": "~2.1.0" } }, + "asn1.js": { + "version": "4.10.1", + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz", + "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==", + "dev": true, + "requires": { + "bn.js": "^4.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + } + }, + "assert": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/assert/-/assert-1.5.0.tgz", + "integrity": "sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==", + "dev": true, + "requires": { + "object-assign": "^4.1.1", + "util": "0.10.3" + }, + "dependencies": { + "inherits": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", + "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=", + "dev": true + }, + "util": { + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", + "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", + "dev": true, + "requires": { + "inherits": "2.0.1" + } + } + } + }, "assert-plus": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", @@ -1366,6 +1603,12 @@ } } }, + "base64-js": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.1.tgz", + "integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g==", + "dev": true + }, "bcrypt-pbkdf": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", @@ -1374,6 +1617,12 @@ "tweetnacl": "^0.14.3" } }, + "big.js": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", + "dev": true + }, "binary-extensions": { "version": "1.13.1", "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", @@ -1418,6 +1667,12 @@ "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", "dev": true }, + "bn.js": { + "version": "4.11.8", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", + "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==", + "dev": true + }, "boolbase": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", @@ -1468,6 +1723,12 @@ } } }, + "brorand": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", + "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=", + "dev": true + }, "browser-process-hrtime": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz", @@ -1497,6 +1758,77 @@ "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==", "dev": true }, + "browserify-aes": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", + "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", + "dev": true, + "requires": { + "buffer-xor": "^1.0.3", + "cipher-base": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.3", + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "browserify-cipher": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", + "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", + "dev": true, + "requires": { + "browserify-aes": "^1.0.4", + "browserify-des": "^1.0.0", + "evp_bytestokey": "^1.0.0" + } + }, + "browserify-des": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", + "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", + "dev": true, + "requires": { + "cipher-base": "^1.0.1", + "des.js": "^1.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "browserify-rsa": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz", + "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=", + "dev": true, + "requires": { + "bn.js": "^4.1.0", + "randombytes": "^2.0.1" + } + }, + "browserify-sign": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.0.4.tgz", + "integrity": "sha1-qk62jl17ZYuqa/alfmMMvXqT0pg=", + "dev": true, + "requires": { + "bn.js": "^4.1.1", + "browserify-rsa": "^4.0.0", + "create-hash": "^1.1.0", + "create-hmac": "^1.1.2", + "elliptic": "^6.0.0", + "inherits": "^2.0.1", + "parse-asn1": "^5.0.0" + } + }, + "browserify-zlib": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", + "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", + "dev": true, + "requires": { + "pako": "~1.0.5" + } + }, "bs-logger": { "version": "0.2.6", "resolved": "https://registry.npmjs.org/bs-logger/-/bs-logger-0.2.6.tgz", @@ -1515,6 +1847,17 @@ "node-int64": "^0.4.0" } }, + "buffer": { + "version": "4.9.2", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.2.tgz", + "integrity": "sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==", + "dev": true, + "requires": { + "base64-js": "^1.0.2", + "ieee754": "^1.1.4", + "isarray": "^1.0.0" + } + }, "buffer-crc32": { "version": "0.2.13", "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", @@ -1533,12 +1876,47 @@ "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", "dev": true }, + "buffer-xor": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", + "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=", + "dev": true + }, "builtin-modules": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=", "dev": true }, + "builtin-status-codes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", + "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=", + "dev": true + }, + "cacache": { + "version": "12.0.4", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-12.0.4.tgz", + "integrity": "sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ==", + "dev": true, + "requires": { + "bluebird": "^3.5.5", + "chownr": "^1.1.1", + "figgy-pudding": "^3.5.1", + "glob": "^7.1.4", + "graceful-fs": "^4.1.15", + "infer-owner": "^1.0.3", + "lru-cache": "^5.1.1", + "mississippi": "^3.0.0", + "mkdirp": "^0.5.1", + "move-concurrently": "^1.0.1", + "promise-inflight": "^1.0.1", + "rimraf": "^2.6.3", + "ssri": "^6.0.1", + "unique-filename": "^1.1.1", + "y18n": "^4.0.0" + } + }, "cache-base": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", @@ -1724,12 +2102,31 @@ "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", "dev": true }, + "chrome-trace-event": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.2.tgz", + "integrity": "sha512-9e/zx1jw7B4CO+c/RXoCsfg/x1AfUBioy4owYH0bJprEYAx5hRFLRhWBqHAG57D0ZM4H7vxbP7bPe0VwhQRYDQ==", + "dev": true, + "requires": { + "tslib": "^1.9.0" + } + }, "ci-info": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==", "dev": true }, + "cipher-base": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", + "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, "circular-json": { "version": "0.5.9", "resolved": "https://registry.npmjs.org/circular-json/-/circular-json-0.5.9.tgz", @@ -1951,6 +2348,12 @@ "graceful-readlink": ">= 1.0.0" } }, + "commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", + "dev": true + }, "component-emitter": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", @@ -1974,12 +2377,24 @@ "typedarray": "^0.0.6" } }, + "console-browserify": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz", + "integrity": "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==", + "dev": true + }, "console-control-strings": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", "dev": true }, + "constants-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", + "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=", + "dev": true + }, "convert-source-map": { "version": "1.7.0", "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz", @@ -1989,6 +2404,20 @@ "safe-buffer": "~5.1.1" } }, + "copy-concurrently": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.5.tgz", + "integrity": "sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==", + "dev": true, + "requires": { + "aproba": "^1.1.1", + "fs-write-stream-atomic": "^1.0.8", + "iferr": "^0.1.5", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.4", + "run-queue": "^1.0.0" + } + }, "copy-descriptor": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", @@ -2011,6 +2440,16 @@ "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", "dev": true }, + "create-ecdh": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.3.tgz", + "integrity": "sha512-GbEHQPMOswGpKXM9kCWVrremUcBmjteUaQ01T9rkKCPDXfUHX0IoP9LpHYo2NPFampa4e+/pFDc3jQdxrxQLaw==", + "dev": true, + "requires": { + "bn.js": "^4.1.0", + "elliptic": "^6.0.0" + } + }, "create-error-class": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/create-error-class/-/create-error-class-3.0.2.tgz", @@ -2020,6 +2459,33 @@ "capture-stack-trace": "^1.0.0" } }, + "create-hash": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", + "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", + "dev": true, + "requires": { + "cipher-base": "^1.0.1", + "inherits": "^2.0.1", + "md5.js": "^1.3.4", + "ripemd160": "^2.0.1", + "sha.js": "^2.4.0" + } + }, + "create-hmac": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", + "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", + "dev": true, + "requires": { + "cipher-base": "^1.0.3", + "create-hash": "^1.1.0", + "inherits": "^2.0.1", + "ripemd160": "^2.0.0", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + } + }, "cross-env": { "version": "5.2.1", "resolved": "https://registry.npmjs.org/cross-env/-/cross-env-5.2.1.tgz", @@ -2042,6 +2508,25 @@ "which": "^1.2.9" } }, + "crypto-browserify": { + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", + "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", + "dev": true, + "requires": { + "browserify-cipher": "^1.0.0", + "browserify-sign": "^4.0.0", + "create-ecdh": "^4.0.0", + "create-hash": "^1.1.0", + "create-hmac": "^1.1.0", + "diffie-hellman": "^5.0.0", + "inherits": "^2.0.1", + "pbkdf2": "^3.0.3", + "public-encrypt": "^4.0.0", + "randombytes": "^2.0.0", + "randomfill": "^1.0.3" + } + }, "css": { "version": "2.2.4", "resolved": "https://registry.npmjs.org/css/-/css-2.2.4.tgz", @@ -2095,6 +2580,12 @@ } } }, + "cyclist": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-1.0.1.tgz", + "integrity": "sha1-WW6WmP0MgOEgOMK4LW6xs1tiJNk=", + "dev": true + }, "d": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz", @@ -2329,6 +2820,16 @@ "integrity": "sha1-OjYof1A05pnnV3kBBSwubJQlFjE=", "dev": true }, + "des.js": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz", + "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + } + }, "detect-file": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/detect-file/-/detect-file-1.0.0.tgz", @@ -2385,6 +2886,17 @@ } } }, + "diffie-hellman": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", + "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", + "dev": true, + "requires": { + "bn.js": "^4.1.0", + "miller-rabin": "^4.0.0", + "randombytes": "^2.0.0" + } + }, "dom-serializer": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.1.tgz", @@ -2395,6 +2907,12 @@ "entities": "^1.1.1" } }, + "domain-browser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz", + "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==", + "dev": true + }, "domelementtype": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", @@ -2476,11 +2994,32 @@ "safer-buffer": "^2.1.0" } }, + "elliptic": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.2.tgz", + "integrity": "sha512-f4x70okzZbIQl/NSRLkI/+tteV/9WqL98zx+SQ69KbXxmVrmjwsNUPn/gYJJ0sHvEak24cZgHIPegRePAtA/xw==", + "dev": true, + "requires": { + "bn.js": "^4.4.0", + "brorand": "^1.0.1", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.0" + } + }, "emoji-regex": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" }, + "emojis-list": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", + "dev": true + }, "end-of-stream": { "version": "1.4.4", "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", @@ -2490,12 +3029,44 @@ "once": "^1.4.0" } }, + "enhanced-resolve": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.1.1.tgz", + "integrity": "sha512-98p2zE+rL7/g/DzMHMTF4zZlCgeVdJ7yr6xzEpJRYwFYrGi9ANdn5DnJURg6RpBkyk60XYDnWIv51VfIhfNGuA==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "memory-fs": "^0.5.0", + "tapable": "^1.0.0" + }, + "dependencies": { + "memory-fs": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.5.0.tgz", + "integrity": "sha512-jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA==", + "dev": true, + "requires": { + "errno": "^0.1.3", + "readable-stream": "^2.0.1" + } + } + } + }, "entities": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==", "dev": true }, + "errno": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.7.tgz", + "integrity": "sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==", + "dev": true, + "requires": { + "prr": "~1.0.1" + } + }, "error-ex": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", @@ -2588,11 +3159,30 @@ "source-map": "~0.6.1" } }, + "eslint-scope": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.3.tgz", + "integrity": "sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg==", + "dev": true, + "requires": { + "esrecurse": "^4.1.0", + "estraverse": "^4.1.1" + } + }, "esprima": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==" }, + "esrecurse": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz", + "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==", + "dev": true, + "requires": { + "estraverse": "^4.1.0" + } + }, "estraverse": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", @@ -2630,8 +3220,24 @@ "through": "^2.3.8" } }, - "exec-sh": { - "version": "0.3.4", + "events": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.1.0.tgz", + "integrity": "sha512-Rv+u8MLHNOdMjTAFeT3nCjHn2aGlx435FP/sDHNaRhDEMwyI/aB22Kj2qIN8R0cw3z28psEQLYwxVKLsKrMgWg==", + "dev": true + }, + "evp_bytestokey": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", + "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", + "dev": true, + "requires": { + "md5.js": "^1.3.4", + "safe-buffer": "^5.1.1" + } + }, + "exec-sh": { + "version": "0.3.4", "resolved": "https://registry.npmjs.org/exec-sh/-/exec-sh-0.3.4.tgz", "integrity": "sha512-sEFIkc61v75sWeOe72qyrqg2Qg0OuLESziUDk/O/z2qgS15y2gWVFrI6f2Qn/qw/0/NCfCEsmNA4zOjkwEZT1A==", "dev": true @@ -2899,6 +3505,12 @@ "pend": "~1.2.0" } }, + "figgy-pudding": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.2.tgz", + "integrity": "sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw==", + "dev": true + }, "file-uri-to-path": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", @@ -2929,6 +3541,81 @@ } } }, + "find-cache-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", + "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", + "dev": true, + "requires": { + "commondir": "^1.0.1", + "make-dir": "^2.0.0", + "pkg-dir": "^3.0.0" + }, + "dependencies": { + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "requires": { + "locate-path": "^3.0.0" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "dev": true, + "requires": { + "pify": "^4.0.1", + "semver": "^5.6.0" + } + }, + "p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true + }, + "pkg-dir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", + "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", + "dev": true, + "requires": { + "find-up": "^3.0.0" + } + } + } + }, "find-up": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", @@ -3030,6 +3717,16 @@ "integrity": "sha1-g8YK/Fi5xWmXAH7Rp2izqzA6RP4=", "dev": true }, + "from2": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", + "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "readable-stream": "^2.0.0" + } + }, "fs-constants": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", @@ -3065,6 +3762,18 @@ "through2": "^2.0.3" } }, + "fs-write-stream-atomic": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz", + "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "iferr": "^0.1.5", + "imurmurhash": "^0.1.4", + "readable-stream": "1 || 2" + } + }, "fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", @@ -4308,12 +5017,43 @@ } } }, + "hash-base": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz", + "integrity": "sha1-X8hoaEfs1zSZQDMZprCj8/auSRg=", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "hash.js": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", + "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.1" + } + }, "he": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/he/-/he-1.1.1.tgz", "integrity": "sha1-k0EP0hsAlzUVH4howvJx80J+I/0=", "dev": true }, + "hmac-drbg": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", + "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", + "dev": true, + "requires": { + "hash.js": "^1.0.3", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.1" + } + }, "hogan.js": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/hogan.js/-/hogan.js-3.0.2.tgz", @@ -4436,6 +5176,12 @@ "sshpk": "^1.7.0" } }, + "https-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", + "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=", + "dev": true + }, "https-proxy-agent": { "version": "2.2.4", "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-2.2.4.tgz", @@ -4472,6 +5218,18 @@ "safer-buffer": ">= 2.1.2 < 3" } }, + "ieee754": { + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz", + "integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==", + "dev": true + }, + "iferr": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz", + "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=", + "dev": true + }, "immediate": { "version": "3.0.6", "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", @@ -4494,6 +5252,12 @@ "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", "dev": true }, + "infer-owner": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", + "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==", + "dev": true + }, "inflight": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", @@ -6934,6 +7698,12 @@ "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", "dev": true }, + "json-parse-better-errors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", + "dev": true + }, "json-schema": { "version": "0.2.3", "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", @@ -7168,6 +7938,40 @@ } } }, + "loader-runner": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.4.0.tgz", + "integrity": "sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw==", + "dev": true + }, + "loader-utils": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", + "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", + "dev": true, + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + }, + "dependencies": { + "json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "dev": true, + "requires": { + "minimist": "^1.2.0" + } + }, + "minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", + "dev": true + } + } + }, "locate-path": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", @@ -7274,6 +8078,15 @@ "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", "dev": true }, + "lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "requires": { + "yallist": "^3.0.2" + } + }, "lru-queue": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/lru-queue/-/lru-queue-0.1.0.tgz", @@ -7454,6 +8267,17 @@ } } }, + "md5.js": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", + "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", + "dev": true, + "requires": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, "mdurl": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz", @@ -7486,6 +8310,16 @@ "timers-ext": "^0.1.5" } }, + "memory-fs": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.4.1.tgz", + "integrity": "sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=", + "dev": true, + "requires": { + "errno": "^0.1.3", + "readable-stream": "^2.0.1" + } + }, "merge": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/merge/-/merge-1.2.1.tgz", @@ -7519,6 +8353,16 @@ "to-regex": "^3.0.2" } }, + "miller-rabin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", + "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", + "dev": true, + "requires": { + "bn.js": "^4.0.0", + "brorand": "^1.0.1" + } + }, "mime": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", @@ -7552,6 +8396,18 @@ "integrity": "sha512-wXqjST+SLt7R009ySCglWBCFpjUygmCIfD790/kVbiGmUgfYGuB14PiTd5DwVxSV4NcYHjzMkoj5LjQZwTQLEA==", "dev": true }, + "minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", + "dev": true + }, + "minimalistic-crypto-utils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", + "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=", + "dev": true + }, "minimatch": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", @@ -7585,6 +8441,36 @@ "minipass": "^2.9.0" } }, + "mississippi": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-3.0.0.tgz", + "integrity": "sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA==", + "dev": true, + "requires": { + "concat-stream": "^1.5.0", + "duplexify": "^3.4.2", + "end-of-stream": "^1.1.0", + "flush-write-stream": "^1.0.0", + "from2": "^2.1.0", + "parallel-transform": "^1.1.0", + "pump": "^3.0.0", + "pumpify": "^1.3.3", + "stream-each": "^1.1.0", + "through2": "^2.0.0" + }, + "dependencies": { + "pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + } + } + }, "mixin-deep": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", @@ -7691,6 +8577,20 @@ "resolved": "https://registry.npmjs.org/moment/-/moment-2.24.0.tgz", "integrity": "sha512-bV7f+6l2QigeBBZSM/6yTNq4P2fNpSWj/0e7jQcy87A8e7o2nAfP/34/2ky5Vw4B9S446EtIhodAzkFCcR4dQg==" }, + "move-concurrently": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz", + "integrity": "sha1-viwAX9oy4LKa8fBdfEszIUxwH5I=", + "dev": true, + "requires": { + "aproba": "^1.1.1", + "copy-concurrently": "^1.0.0", + "fs-write-stream-atomic": "^1.0.8", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.4", + "run-queue": "^1.0.3" + } + }, "ms": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", @@ -7762,6 +8662,12 @@ "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", "dev": true }, + "neo-async": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.1.tgz", + "integrity": "sha512-iyam8fBuCUpWeKPGpaNMetEocMt364qkCsfL9JuhjXX6dRnguRVOfk2GZaDpPjcOKiiXCPINZC1GczQ7iTq3Zw==", + "dev": true + }, "next-tick": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz", @@ -7813,6 +8719,45 @@ "integrity": "sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs=", "dev": true }, + "node-libs-browser": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.2.1.tgz", + "integrity": "sha512-h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q==", + "dev": true, + "requires": { + "assert": "^1.1.1", + "browserify-zlib": "^0.2.0", + "buffer": "^4.3.0", + "console-browserify": "^1.1.0", + "constants-browserify": "^1.0.0", + "crypto-browserify": "^3.11.0", + "domain-browser": "^1.1.1", + "events": "^3.0.0", + "https-browserify": "^1.0.0", + "os-browserify": "^0.3.0", + "path-browserify": "0.0.1", + "process": "^0.11.10", + "punycode": "^1.2.4", + "querystring-es3": "^0.2.0", + "readable-stream": "^2.3.3", + "stream-browserify": "^2.0.1", + "stream-http": "^2.7.2", + "string_decoder": "^1.0.0", + "timers-browserify": "^2.0.4", + "tty-browserify": "0.0.0", + "url": "^0.11.0", + "util": "^0.11.0", + "vm-browserify": "^1.0.1" + }, + "dependencies": { + "punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", + "dev": true + } + } + }, "node-modules-regexp": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz", @@ -8104,6 +9049,12 @@ "integrity": "sha1-IIhF6J4ZOtTZcUdLk5R3NqVtE/M=", "dev": true }, + "os-browserify": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", + "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=", + "dev": true + }, "os-homedir": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", @@ -8153,6 +9104,12 @@ "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", "dev": true }, + "p-is-promise": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/p-is-promise/-/p-is-promise-2.1.0.tgz", + "integrity": "sha512-Y3W0wlRPK8ZMRbNq97l4M5otioeA5lm1z7bkNkxCka8HSPjR0xRWmpCmc9utiaLP9Jb1eD8BgeIxTW4AIF45Pg==", + "dev": true + }, "p-limit": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", @@ -8186,6 +9143,31 @@ "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", "dev": true }, + "parallel-transform": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/parallel-transform/-/parallel-transform-1.2.0.tgz", + "integrity": "sha512-P2vSmIu38uIlvdcU7fDkyrxj33gTUy/ABO5ZUbGowxNCopBq/OoD42bP4UmMrJoPyk4Uqf0mu3mtWBhHCZD8yg==", + "dev": true, + "requires": { + "cyclist": "^1.0.1", + "inherits": "^2.0.3", + "readable-stream": "^2.1.5" + } + }, + "parse-asn1": { + "version": "5.1.5", + "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.5.tgz", + "integrity": "sha512-jkMYn1dcJqF6d5CpU689bq7w/b5ALS9ROVSpQDPrZsqqesUJii9qutvoT5ltGedNXMO2e16YUWIghG9KxaViTQ==", + "dev": true, + "requires": { + "asn1.js": "^4.0.0", + "browserify-aes": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.0", + "pbkdf2": "^3.0.3", + "safe-buffer": "^5.1.1" + } + }, "parse-filepath": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/parse-filepath/-/parse-filepath-1.0.2.tgz", @@ -8239,6 +9221,12 @@ "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", "dev": true }, + "path-browserify": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.1.tgz", + "integrity": "sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ==", + "dev": true + }, "path-dirname": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", @@ -8339,6 +9327,19 @@ "through": "~2.3" } }, + "pbkdf2": { + "version": "3.0.17", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.17.tgz", + "integrity": "sha512-U/il5MsrZp7mGg3mSQfn742na2T+1/vHDCG5/iTI3X9MKUuYUZVLQhyRsg06mCgDBTd57TxzgZt7P+fYfjRLtA==", + "dev": true, + "requires": { + "create-hash": "^1.1.2", + "create-hmac": "^1.1.4", + "ripemd160": "^2.0.1", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + } + }, "pend": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", @@ -8620,6 +9621,12 @@ } } }, + "process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=", + "dev": true + }, "process-nextick-args": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", @@ -8631,6 +9638,12 @@ "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==" }, + "promise-inflight": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", + "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=", + "dev": true + }, "prompts": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.3.1.tgz", @@ -8641,12 +9654,32 @@ "sisteransi": "^1.0.4" } }, + "prr": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", + "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=", + "dev": true + }, "psl": { "version": "1.7.0", "resolved": "https://registry.npmjs.org/psl/-/psl-1.7.0.tgz", "integrity": "sha512-5NsSEDv8zY70ScRnOTn7bK7eanl2MvFrOrS/R6x+dBt5g1ghnj9Zv90kO8GwT8gxcu2ANyFprnFYB85IogIJOQ==", "dev": true }, + "public-encrypt": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", + "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", + "dev": true, + "requires": { + "bn.js": "^4.1.0", + "browserify-rsa": "^4.0.0", + "create-hash": "^1.1.0", + "parse-asn1": "^5.0.0", + "randombytes": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, "pump": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz", @@ -8680,12 +9713,43 @@ "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", "dev": true }, + "querystring": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", + "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=", + "dev": true + }, + "querystring-es3": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", + "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=", + "dev": true + }, "querystringify": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.1.1.tgz", "integrity": "sha512-w7fLxIRCRT7U8Qu53jQnJyPkYZIaR4n5151KMfcJlO/A9397Wxb1amJvROTK6TOnp7PfoAmg/qXiNHI+08jRfA==", "dev": true }, + "randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "dev": true, + "requires": { + "safe-buffer": "^5.1.0" + } + }, + "randomfill": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", + "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", + "dev": true, + "requires": { + "randombytes": "^2.0.5", + "safe-buffer": "^5.1.0" + } + }, "rc": { "version": "1.2.8", "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", @@ -9026,12 +10090,31 @@ "glob": "^7.1.3" } }, - "rsvp": { - "version": "4.8.5", - "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-4.8.5.tgz", - "integrity": "sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA==", + "ripemd160": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", + "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", + "dev": true, + "requires": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1" + } + }, + "rsvp": { + "version": "4.8.5", + "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-4.8.5.tgz", + "integrity": "sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA==", "dev": true }, + "run-queue": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz", + "integrity": "sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec=", + "dev": true, + "requires": { + "aproba": "^1.1.1" + } + }, "run-sequence": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/run-sequence/-/run-sequence-2.2.1.tgz", @@ -9145,6 +10228,17 @@ "xmlchars": "^2.1.1" } }, + "schema-utils": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", + "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", + "dev": true, + "requires": { + "ajv": "^6.1.0", + "ajv-errors": "^1.0.0", + "ajv-keywords": "^3.1.0" + } + }, "selenium-webdriver": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/selenium-webdriver/-/selenium-webdriver-3.6.0.tgz", @@ -9182,6 +10276,12 @@ "sver-compat": "^1.5.0" } }, + "serialize-javascript": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-2.1.2.tgz", + "integrity": "sha512-rs9OggEUF0V4jUSecXazOYsLfu7OGK2qIn3c7IPBiffz32XniEp/TX9Xmc9LQfK2nQ2QKHvZ2oygKUGU0lG4jQ==", + "dev": true + }, "set-blocking": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", @@ -9216,6 +10316,22 @@ } } }, + "setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=", + "dev": true + }, + "sha.js": { + "version": "2.4.11", + "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", + "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, "shaven": { "version": "0.8.1", "resolved": "https://registry.npmjs.org/shaven/-/shaven-0.8.1.tgz", @@ -9427,6 +10543,12 @@ } } }, + "source-list-map": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz", + "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==", + "dev": true + }, "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", @@ -9558,6 +10680,15 @@ "tweetnacl": "~0.14.0" } }, + "ssri": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.1.tgz", + "integrity": "sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA==", + "dev": true, + "requires": { + "figgy-pudding": "^3.5.1" + } + }, "stack-trace": { "version": "0.0.10", "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz", @@ -9596,6 +10727,16 @@ "integrity": "sha1-NbCYdbT/SfJqd35QmzCQoyJr8ks=", "dev": true }, + "stream-browserify": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.2.tgz", + "integrity": "sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg==", + "dev": true, + "requires": { + "inherits": "~2.0.1", + "readable-stream": "^2.0.2" + } + }, "stream-combiner": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/stream-combiner/-/stream-combiner-0.2.2.tgz", @@ -9606,12 +10747,35 @@ "through": "~2.3.4" } }, + "stream-each": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/stream-each/-/stream-each-1.2.3.tgz", + "integrity": "sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw==", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "stream-shift": "^1.0.0" + } + }, "stream-exhaust": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/stream-exhaust/-/stream-exhaust-1.0.2.tgz", "integrity": "sha512-b/qaq/GlBK5xaq1yrK9/zFcyRSTNxmcZwFLGSTG0mXgZl/4Z6GgiyYOXOvY7N3eEvFRAG1bkDRz5EPGSvPYQlw==", "dev": true }, + "stream-http": { + "version": "2.8.3", + "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.3.tgz", + "integrity": "sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==", + "dev": true, + "requires": { + "builtin-status-codes": "^3.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.3.6", + "to-arraybuffer": "^1.0.0", + "xtend": "^4.0.0" + } + }, "stream-shift": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", @@ -9802,6 +10966,12 @@ "integrity": "sha1-fLy2S1oUG2ou/CxdLGe04VCyomg=", "dev": true }, + "tapable": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", + "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==", + "dev": true + }, "tar": { "version": "4.4.2", "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.2.tgz", @@ -9877,6 +11047,50 @@ "supports-hyperlinks": "^2.0.0" } }, + "terser": { + "version": "4.6.11", + "resolved": "https://registry.npmjs.org/terser/-/terser-4.6.11.tgz", + "integrity": "sha512-76Ynm7OXUG5xhOpblhytE7X58oeNSmC8xnNhjWVo8CksHit0U0kO4hfNbPrrYwowLWFgM2n9L176VNx2QaHmtA==", + "dev": true, + "requires": { + "commander": "^2.20.0", + "source-map": "~0.6.1", + "source-map-support": "~0.5.12" + }, + "dependencies": { + "commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true + } + } + }, + "terser-webpack-plugin": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.4.3.tgz", + "integrity": "sha512-QMxecFz/gHQwteWwSo5nTc6UaICqN1bMedC5sMtUc7y3Ha3Q8y6ZO0iCR8pq4RJC8Hjf0FEPEHZqcMB/+DFCrA==", + "dev": true, + "requires": { + "cacache": "^12.0.2", + "find-cache-dir": "^2.1.0", + "is-wsl": "^1.1.0", + "schema-utils": "^1.0.0", + "serialize-javascript": "^2.1.2", + "source-map": "^0.6.1", + "terser": "^4.1.2", + "webpack-sources": "^1.4.0", + "worker-farm": "^1.7.0" + }, + "dependencies": { + "is-wsl": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", + "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", + "dev": true + } + } + }, "test-exclude": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", @@ -9932,6 +11146,15 @@ "integrity": "sha1-84sK6B03R9YoAB9B2vxlKs5nHAo=", "dev": true }, + "timers-browserify": { + "version": "2.0.11", + "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.11.tgz", + "integrity": "sha512-60aV6sgJ5YEbzUdn9c8kYGIqOubPoUdqQCul3SBAsRCZ40s6Y5cMcrW4dt3/k/EsbLVJNl9n6Vz3fTc+k2GeKQ==", + "dev": true, + "requires": { + "setimmediate": "^1.0.4" + } + }, "timers-ext": { "version": "0.1.7", "resolved": "https://registry.npmjs.org/timers-ext/-/timers-ext-0.1.7.tgz", @@ -9967,6 +11190,12 @@ "is-negated-glob": "^1.0.0" } }, + "to-arraybuffer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz", + "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=", + "dev": true + }, "to-fast-properties": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", @@ -10085,6 +11314,70 @@ } } }, + "ts-loader": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-7.0.1.tgz", + "integrity": "sha512-wdGs9xO8UnwASwbluehzXciBtc9HfGlYA8Aiv856etLmdv8mJfAxCkt3YpS4g7G1IsGxaCVKQ102Qh0zycpeZQ==", + "dev": true, + "requires": { + "chalk": "^2.3.0", + "enhanced-resolve": "^4.0.0", + "loader-utils": "^1.0.2", + "micromatch": "^4.0.0", + "semver": "^6.0.0" + }, + "dependencies": { + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "^7.0.1" + } + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "requires": { + "braces": "^3.0.1", + "picomatch": "^2.0.5" + } + }, + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "^7.0.0" + } + } + } + }, "tslib": { "version": "1.11.0", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.11.0.tgz", @@ -10135,6 +11428,12 @@ "tslib": "^1.8.1" } }, + "tty-browserify": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz", + "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=", + "dev": true + }, "tunnel": { "version": "0.0.4", "resolved": "https://registry.npmjs.org/tunnel/-/tunnel-0.0.4.tgz", @@ -10274,6 +11573,24 @@ "set-value": "^2.0.1" } }, + "unique-filename": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", + "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", + "dev": true, + "requires": { + "unique-slug": "^2.0.0" + } + }, + "unique-slug": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz", + "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", + "dev": true, + "requires": { + "imurmurhash": "^0.1.4" + } + }, "unique-stream": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/unique-stream/-/unique-stream-2.3.1.tgz", @@ -10356,6 +11673,24 @@ "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", "dev": true }, + "url": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", + "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", + "dev": true, + "requires": { + "punycode": "1.3.2", + "querystring": "0.2.0" + }, + "dependencies": { + "punycode": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", + "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=", + "dev": true + } + } + }, "url-join": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/url-join/-/url-join-1.1.0.tgz", @@ -10387,6 +11722,23 @@ "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", "dev": true }, + "util": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/util/-/util-0.11.1.tgz", + "integrity": "sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ==", + "dev": true, + "requires": { + "inherits": "2.0.3" + }, + "dependencies": { + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", + "dev": true + } + } + }, "util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", @@ -10399,6 +11751,12 @@ "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", "dev": true }, + "v8-compile-cache": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.0.3.tgz", + "integrity": "sha512-CNmdbwQMBjwr9Gsmohvm0pbL954tJrNzf6gWL3K+QMQf00PF7ERGrEiLgjuU3mKreLC2MeGhUsNV9ybTbLgd3w==", + "dev": true + }, "v8-to-istanbul": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-4.1.2.tgz", @@ -10508,6 +11866,12 @@ "vinyl": "^2.0.0" } }, + "vm-browserify": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz", + "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==", + "dev": true + }, "vsce": { "version": "1.73.0", "resolved": "https://registry.npmjs.org/vsce/-/vsce-1.73.0.tgz", @@ -10769,12 +12133,383 @@ "makeerror": "1.0.x" } }, + "watchpack": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.6.1.tgz", + "integrity": "sha512-+IF9hfUFOrYOOaKyfaI7h7dquUIOgyEMoQMLA7OP5FxegKA2+XdXThAZ9TU2kucfhDH7rfMHs1oPYziVGWRnZA==", + "dev": true, + "requires": { + "chokidar": "^2.1.8", + "graceful-fs": "^4.1.2", + "neo-async": "^2.5.0" + } + }, "webidl-conversions": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz", "integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==", "dev": true }, + "webpack": { + "version": "4.42.1", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.42.1.tgz", + "integrity": "sha512-SGfYMigqEfdGchGhFFJ9KyRpQKnipvEvjc1TwrXEPCM6H5Wywu10ka8o3KGrMzSMxMQKt8aCHUFh5DaQ9UmyRg==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-module-context": "1.9.0", + "@webassemblyjs/wasm-edit": "1.9.0", + "@webassemblyjs/wasm-parser": "1.9.0", + "acorn": "^6.2.1", + "ajv": "^6.10.2", + "ajv-keywords": "^3.4.1", + "chrome-trace-event": "^1.0.2", + "enhanced-resolve": "^4.1.0", + "eslint-scope": "^4.0.3", + "json-parse-better-errors": "^1.0.2", + "loader-runner": "^2.4.0", + "loader-utils": "^1.2.3", + "memory-fs": "^0.4.1", + "micromatch": "^3.1.10", + "mkdirp": "^0.5.3", + "neo-async": "^2.6.1", + "node-libs-browser": "^2.2.1", + "schema-utils": "^1.0.0", + "tapable": "^1.1.3", + "terser-webpack-plugin": "^1.4.3", + "watchpack": "^1.6.0", + "webpack-sources": "^1.4.1" + }, + "dependencies": { + "acorn": { + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.1.tgz", + "integrity": "sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==", + "dev": true + }, + "minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", + "dev": true + }, + "mkdirp": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "dev": true, + "requires": { + "minimist": "^1.2.5" + } + } + } + }, + "webpack-cli": { + "version": "3.3.11", + "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-3.3.11.tgz", + "integrity": "sha512-dXlfuml7xvAFwYUPsrtQAA9e4DOe58gnzSxhgrO/ZM/gyXTBowrsYeubyN4mqGhYdpXMFNyQ6emjJS9M7OBd4g==", + "dev": true, + "requires": { + "chalk": "2.4.2", + "cross-spawn": "6.0.5", + "enhanced-resolve": "4.1.0", + "findup-sync": "3.0.0", + "global-modules": "2.0.0", + "import-local": "2.0.0", + "interpret": "1.2.0", + "loader-utils": "1.2.3", + "supports-color": "6.1.0", + "v8-compile-cache": "2.0.3", + "yargs": "13.2.4" + }, + "dependencies": { + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "dev": true + }, + "cliui": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", + "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", + "dev": true, + "requires": { + "string-width": "^3.1.0", + "strip-ansi": "^5.2.0", + "wrap-ansi": "^5.1.0" + } + }, + "emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "dev": true + }, + "emojis-list": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-2.1.0.tgz", + "integrity": "sha1-TapNnbAPmBmIDHn6RXrlsJof04k=", + "dev": true + }, + "enhanced-resolve": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.1.0.tgz", + "integrity": "sha512-F/7vkyTtyc/llOIn8oWclcB25KdRaiPBpZYDgJHgh/UHtpgT2p2eldQgtQnLtUvfMKPKxbRaQM/hHkvLHt1Vng==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "memory-fs": "^0.4.0", + "tapable": "^1.0.0" + } + }, + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "requires": { + "locate-path": "^3.0.0" + } + }, + "global-modules": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz", + "integrity": "sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==", + "dev": true, + "requires": { + "global-prefix": "^3.0.0" + } + }, + "global-prefix": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz", + "integrity": "sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==", + "dev": true, + "requires": { + "ini": "^1.3.5", + "kind-of": "^6.0.2", + "which": "^1.3.1" + } + }, + "import-local": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-2.0.0.tgz", + "integrity": "sha512-b6s04m3O+s3CGSbqDIyP4R6aAwAeYlVq9+WUWep6iHa8ETRf9yei1U48C5MmfJmV9AiLYYBKPMq/W+/WRpQmCQ==", + "dev": true, + "requires": { + "pkg-dir": "^3.0.0", + "resolve-cwd": "^2.0.0" + } + }, + "invert-kv": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-2.0.0.tgz", + "integrity": "sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA==", + "dev": true + }, + "json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "dev": true, + "requires": { + "minimist": "^1.2.0" + } + }, + "lcid": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lcid/-/lcid-2.0.0.tgz", + "integrity": "sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA==", + "dev": true, + "requires": { + "invert-kv": "^2.0.0" + } + }, + "loader-utils": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.2.3.tgz", + "integrity": "sha512-fkpz8ejdnEMG3s37wGL07iSBDg99O9D5yflE9RGNH3hRdx9SOwYfnGYdZOUIZitN8E+E2vkq3MUMYMvPYl5ZZA==", + "dev": true, + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^2.0.0", + "json5": "^1.0.1" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "mem": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/mem/-/mem-4.3.0.tgz", + "integrity": "sha512-qX2bG48pTqYRVmDB37rn/6PT7LcR8T7oAX3bf99u1Tt1nzxYfxkgqDwUwolPlXweM0XzBOBFzSx4kfp7KP1s/w==", + "dev": true, + "requires": { + "map-age-cleaner": "^0.1.1", + "mimic-fn": "^2.0.0", + "p-is-promise": "^2.0.0" + } + }, + "mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true + }, + "minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", + "dev": true + }, + "os-locale": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-3.1.0.tgz", + "integrity": "sha512-Z8l3R4wYWM40/52Z+S265okfFj8Kt2cC2MKY+xNi3kFs+XGI7WXu/I309QQQYbRW4ijiZ+yxs9pqEhJh0DqW3Q==", + "dev": true, + "requires": { + "execa": "^1.0.0", + "lcid": "^2.0.0", + "mem": "^4.0.0" + } + }, + "p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true + }, + "pkg-dir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", + "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", + "dev": true, + "requires": { + "find-up": "^3.0.0" + } + }, + "resolve-cwd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-2.0.0.tgz", + "integrity": "sha1-AKn3OHVW4nA46uIyyqNypqWbZlo=", + "dev": true, + "requires": { + "resolve-from": "^3.0.0" + } + }, + "resolve-from": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", + "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=", + "dev": true + }, + "string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "dev": true, + "requires": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + } + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "requires": { + "ansi-regex": "^4.1.0" + } + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + }, + "wrap-ansi": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", + "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.0", + "string-width": "^3.0.0", + "strip-ansi": "^5.0.0" + } + }, + "yargs": { + "version": "13.2.4", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.2.4.tgz", + "integrity": "sha512-HG/DWAJa1PAnHT9JAhNa8AbAv3FPaiLzioSjCcmuXXhP8MlpHO5vwls4g4j6n30Z74GVQj8Xa62dWVx1QCGklg==", + "dev": true, + "requires": { + "cliui": "^5.0.0", + "find-up": "^3.0.0", + "get-caller-file": "^2.0.1", + "os-locale": "^3.1.0", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^3.0.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^13.1.0" + } + }, + "yargs-parser": { + "version": "13.1.2", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", + "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", + "dev": true, + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } + } + } + }, + "webpack-sources": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.4.3.tgz", + "integrity": "sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==", + "dev": true, + "requires": { + "source-list-map": "^2.0.0", + "source-map": "~0.6.1" + } + }, "whatwg-encoding": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz", @@ -10842,6 +12577,15 @@ "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", "dev": true }, + "worker-farm": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/worker-farm/-/worker-farm-1.7.0.tgz", + "integrity": "sha512-rvw3QTZc8lAxyVrqcSGVm5yP/IJ2UcB3U0graE3LCFoZ0Yn2x4EoVSqJKdB/T5M+FLcRPjz4TDacRf3OCfNUzw==", + "dev": true, + "requires": { + "errno": "~0.1.7" + } + }, "wrap-ansi": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-3.0.1.tgz", diff --git a/package.json b/package.json index 741d4aceb2..270598559d 100644 --- a/package.json +++ b/package.json @@ -533,7 +533,7 @@ "when": "view == zowe.explorer && viewItem =~ /^ds.*/", "command": "zowe.deleteDataset", "group": "6_modification@2" - }, + }, { "when": "view == zowe.explorer && viewItem =~ /^(?!.*_fav)(member|migr|ds|pds).*/", "command": "zowe.addFavorite", @@ -712,7 +712,7 @@ "when": "view == zowe.jobs && viewItem =~ /^(?!.*_fav.*)job.*/", "command": "zowe.jobs.addFavorite", "group": "4_workspace" - }, + }, { "when": "view == zowe.jobs && viewItem =~ /^job.*_fav.*/", "command": "zowe.jobs.removeFavorite", @@ -1050,11 +1050,14 @@ "selenium-webdriver": "^3.4.0", "sinon": "^6.1.0", "ts-jest": "^25.3.0", + "ts-loader": "^7.0.1", "tslint": "^5.17.0", "typescript": "^3.7.2", "vsce": "^1.70.0", "vscode": "^1.1.36", - "vscode-nls-dev": "^3.2.6" + "vscode-nls-dev": "^3.2.6", + "webpack": "^4.42.1", + "webpack-cli": "^3.3.11" }, "dependencies": { "@zowe/cli": "6.10.1", @@ -1112,4 +1115,4 @@ "outputDirectory": "/results/unit", "outputName": "junit.xml" } -} \ No newline at end of file +} From a9af29c0fca954896a66e9618143438ccf0f18b2 Mon Sep 17 00:00:00 2001 From: Lauren Li Date: Tue, 21 Apr 2020 13:38:08 -0400 Subject: [PATCH 02/30] Base for adding webpack Co-authored-by: PrasangAPrajapati Signed-off-by: Lauren Li --- .gitignore | 1 + .vscode/banner.txt | 10 +++ docs/README.md | 11 ++- gulpfile.js | 85 +++++++------------ .../messages/items/dataset.i18n.json | 4 - .../messages/items/datasetMember.i18n.json | 4 - i18n/sample/src/mvs/mvsNodeActions.i18n.json | 3 - i18n/sample/src/uss/ZoweUSSNode.i18n.json | 2 +- package.json | 2 +- package.nls.fr.json | 80 +++++++++++++++++ scripts/stringUpdateScript.js | 4 +- src/KeytarCredentialManager.ts | 4 +- src/Profiles.ts | 4 +- src/api/ZoweExplorerApiRegister.ts | 4 +- src/api/ZoweExplorerZosmfApi.ts | 4 +- src/command/MvsCommandHandler.ts | 4 +- src/dataset/DatasetTree.ts | 4 +- src/dataset/ZoweDatasetNode.ts | 4 +- src/dataset/actions.ts | 4 +- src/extension.ts | 4 +- src/generators/messages/items/dataset.ts | 4 +- .../messages/items/datasetMember.ts | 4 +- src/job/ZosJobsProvider.ts | 4 +- src/job/ZoweJobNode.ts | 4 +- src/job/actions.ts | 5 +- src/job/utils.ts | 4 +- src/mvs/mvsNodeActions.ts | 4 +- src/shared/actions.ts | 5 +- src/uss/USSTree.ts | 4 +- src/uss/ZoweUSSNode.ts | 4 +- src/uss/actions.ts | 5 +- src/utils.ts | 4 +- tsconfig.json | 13 +-- webpack.config.js | 85 +++++++++++++++++++ 34 files changed, 293 insertions(+), 98 deletions(-) create mode 100644 .vscode/banner.txt delete mode 100644 i18n/sample/src/generators/messages/items/dataset.i18n.json delete mode 100644 i18n/sample/src/generators/messages/items/datasetMember.i18n.json delete mode 100644 i18n/sample/src/mvs/mvsNodeActions.i18n.json create mode 100644 package.nls.fr.json create mode 100644 webpack.config.js diff --git a/.gitignore b/.gitignore index 10ca0085b3..b165e45c88 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,5 @@ node_modules +dist out logs resources/temp diff --git a/.vscode/banner.txt b/.vscode/banner.txt new file mode 100644 index 0000000000..6196938735 --- /dev/null +++ b/.vscode/banner.txt @@ -0,0 +1,10 @@ +/* +* This program and the accompanying materials are made available under the terms of the * +* Eclipse Public License v2.0 which accompanies this distribution, and is available at * +* https://www.eclipse.org/legal/epl-v20.html * +* * +* SPDX-License-Identifier: EPL-2.0 * +* * +* Copyright Contributors to the Zowe Project. * +* * +*/ \ No newline at end of file diff --git a/docs/README.md b/docs/README.md index 4ae1338606..1e727d4919 100644 --- a/docs/README.md +++ b/docs/README.md @@ -166,7 +166,16 @@ All localized strings must be string literals, you cannot include variables or u 2. There are two places to localize strings: in the package.json file and in the typescript files in the src directory. - If you want to add a new string to the package.json file, replace the string with your key enclosed by the percent sign as such \% __key__ \% i.e. `"This is a string"` becomes `"%exampleProperty.exDescription%"`. Then go to the package.nls.json file found in the root directory of the repository and include your newly created key and string inside as a json key/value pair. - - If you want to add a new string to a typescript file, you will need to include the following library in your file (if not already included). `import * as nls from 'vscode-nls';` You will also need to include the following function `const localize = nls.config({ messageFormat: nls.MessageFormat.file })();` Next wrap your string with the localize function in this format `localize('key', 'string') i.e. localize('addEntry','Successfully called add entry.')` + - If you want to add a new string to a typescript file, you will need to include the following library in your file (if not already included). `import * as nls from 'vscode-nls';` + - You will also need to include the following code: + + ```Typescript + // Set up localization + nls.config({ messageFormat: nls.MessageFormat.bundle, bundleFormat: nls.BundleFormat.standalone })(); + const localize: nls.LocalizeFunc = nls.loadMessageBundle(); + ``` + + - Next wrap your string with the localize function in this format `localize('key', 'string') i.e. localize('addEntry','Successfully called add entry.')` 3. After adding/updating/removing any string, run `npm run package`. This will update the sample directory under the i18n folder with the newly added strings. Upload these files to Zanata or email a maintainer to do so. diff --git a/gulpfile.js b/gulpfile.js index a4b292c4d0..293876a85d 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -1,89 +1,64 @@ -/*--------------------------------------------------------------------------------------------- - * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for license information. - *--------------------------------------------------------------------------------------------*/ +/* +* This program and the accompanying materials are made available under the terms of the * +* Eclipse Public License v2.0 which accompanies this distribution, and is available at * +* https://www.eclipse.org/legal/epl-v20.html * +* * +* SPDX-License-Identifier: EPL-2.0 * +* * +* Copyright Contributors to the Zowe Project. * +* * +*/ const gulp = require('gulp'); -const path = require('path'); +const filter = require('gulp-filter'); const ts = require('gulp-typescript'); const typescript = require('typescript'); const sourcemaps = require('gulp-sourcemaps'); const del = require('del'); -const runSequence = require('run-sequence'); -const es = require('event-stream'); -const vsce = require('vsce'); const nls = require('vscode-nls-dev'); const tsProject = ts.createProject('./tsconfig.json', { typescript }); - -const inlineMap = true; -const inlineSource = false; -const outDest = 'out'; +const outDest = 'dist'; // If all VS Code languages are supported, you can use nls.coreLanguages // For new languages, add { folderName: 'ISO-639-3-Code-for-language', id: 'vscode-locale-id' } to array below // Ex. for Chinese add: { folderName: 'zho', id: 'zh-cn' } /* ************************* ADD NEW LANGUAGES HERE ******************************** */ -const languages = []; +const languages = [{folderName:'fra', id:'fr'}]; /* ********************************************************************************* */ const cleanTask = function() { - return del(['out/**', 'package.nls.*.json', 'vscode-extension-for-zowe*.vsix']); + return del(['dist/**', 'package.nls.*.json', 'vscode-extension-for-zowe*.vsix']); } -const internalCompileTask = function() { - return doCompile(false); -}; - -const internalNlsCompileTask = function() { - return doCompile(true); -}; - -const addI18nTask = function() { +const generateI18nTask = function() { return gulp.src(['package.nls.json']) .pipe(nls.createAdditionalLanguageFiles(languages, 'i18n')) .pipe(gulp.dest('.')); }; -const buildTask = gulp.series(cleanTask, internalNlsCompileTask, addI18nTask); - -const doCompile = function (buildNls) { - var r = tsProject.src() +const generateLocalizationBundle = () => { + // Transpile the TS to JS, and let vscode-nls-dev scan the files for calls to localize + // PROJECT ID is "." (found in package.json) + return tsProject.src() .pipe(sourcemaps.init()) - .pipe(tsProject()).js - .pipe(buildNls ? nls.rewriteLocalizeCalls() : es.through()) - .pipe(buildNls ? nls.createAdditionalLanguageFiles(languages, 'i18n') : es.through()); - - if (inlineMap && inlineSource) { - r = r.pipe(sourcemaps.write()); - } else { - r = r.pipe(sourcemaps.write("../out", { - // no inlined source - includeContent: inlineSource, - // Return relative source map root directories per file. - sourceRoot: "../src" - })); - } - - return r.pipe(gulp.dest(outDest)); + .pipe(tsProject()).js + .pipe(nls.createMetaDataFiles()) + .pipe(nls.createAdditionalLanguageFiles(languages, "i18n")) + .pipe(nls.bundleMetaDataFiles('Zowe.vscode-extension-for-zowe', outDest)) + .pipe(nls.bundleLanguageFiles()) + .pipe(filter(['**/nls.bundle.*.json', '**/nls.metadata.header.json', '**/nls.metadata.json'])) + .pipe(gulp.dest(outDest)); } -const vscePublishTask = function() { - return vsce.publish(); -}; +const localizationTask = gulp.series(cleanTask, generateLocalizationBundle, generateI18nTask); -const vscePackageTask = function() { - return vsce.createVSIX(); -}; +const buildTask = gulp.series(localizationTask); gulp.task('default', buildTask); gulp.task('clean', cleanTask); -gulp.task('compile', gulp.series(cleanTask, internalCompileTask)); - -gulp.task('build', buildTask); - -gulp.task('publish', gulp.series(buildTask, vscePublishTask)); +gulp.task('localization', localizationTask); -gulp.task('package', gulp.series(buildTask, vscePackageTask)); \ No newline at end of file +gulp.task('build', buildTask); \ No newline at end of file diff --git a/i18n/sample/src/generators/messages/items/dataset.i18n.json b/i18n/sample/src/generators/messages/items/dataset.i18n.json deleted file mode 100644 index 38def74d68..0000000000 --- a/i18n/sample/src/generators/messages/items/dataset.i18n.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "openPS.response.title": "Opening dataset...", - "saveFile.response.save.title": "Saving dataset..." -} \ No newline at end of file diff --git a/i18n/sample/src/generators/messages/items/datasetMember.i18n.json b/i18n/sample/src/generators/messages/items/datasetMember.i18n.json deleted file mode 100644 index 3e49ebd01a..0000000000 --- a/i18n/sample/src/generators/messages/items/datasetMember.i18n.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "openMember.response.title": "Opening dataset member...", - "saveMember.response.title": "Saving dataset member..." -} \ No newline at end of file diff --git a/i18n/sample/src/mvs/mvsNodeActions.i18n.json b/i18n/sample/src/mvs/mvsNodeActions.i18n.json deleted file mode 100644 index 660b6ec3e0..0000000000 --- a/i18n/sample/src/mvs/mvsNodeActions.i18n.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "enterPattern.pattern": "No selection made." -} \ No newline at end of file diff --git a/i18n/sample/src/uss/ZoweUSSNode.i18n.json b/i18n/sample/src/uss/ZoweUSSNode.i18n.json index 5fdaf6a374..5812c8dcc9 100644 --- a/i18n/sample/src/uss/ZoweUSSNode.i18n.json +++ b/i18n/sample/src/uss/ZoweUSSNode.i18n.json @@ -16,4 +16,4 @@ "openUSS.log.info.failedToOpenAsText.yes": "Yes, re-download", "openUSS.log.info.failedToOpenAsText.no": "No", "openUSS.log.info.failedToOpenAsText": "Failed to open file as text. Do you want to try with re-downloading it as binary?" -} +} \ No newline at end of file diff --git a/package.json b/package.json index 270598559d..a8a93b5bc0 100644 --- a/package.json +++ b/package.json @@ -989,7 +989,7 @@ }, "scripts": { "vscode:prepublish": "npm run build && npm run lint && npm run update", - "build": "gulp build && npm run license && tsc --build --pretty", + "build": "gulp build && npm run license && webpack --mode development --vscode-nls && npm run update", "postinstall": "node ./node_modules/vscode/bin/install", "test:unit": "jest \".*__tests__.*\\.unit\\.test\\.ts\" --coverage", "test:theia": "mocha ./out/__tests__/__theia__/*.theia.test.js --timeout 50000", diff --git a/package.nls.fr.json b/package.nls.fr.json new file mode 100644 index 0000000000..89e9e05b06 --- /dev/null +++ b/package.nls.fr.json @@ -0,0 +1,80 @@ +{ + "displayName": "Zowe Explorer", + "description": "VS Code extension, powered by Zowe CLI, that streamlines interaction with mainframe data sets, USS files, and jobs", + "viewsContainers.activitybar": "Zowe", + "zowe.explorer": "Data Sets", + "zowe.uss.explorer": "Unix System Services (USS)", + "zowe.jobs": "Jobs", + "uss.createFile": "Create File", + "uss.createFolder": "Create Directory", + "uss.deleteNode": "Delete", + "uss.renameNode": "Rename", + "addFavorite": "Add to Favorites", + "uss.addFavorite": "Add to Favorites", + "addSession": "Add Profile", + "createDataset": "Create New Data Set", + "createMember": "Create New Member", + "showDSAttributes": "Show Data Set Attributes", + "deleteDataset": "Delete Data Set", + "deleteMember": "Delete Member", + "deletePDS": "Delete PDS", + "editMember": "Edit", + "issueCmd": "Issue Command", + "uploadDialog": "Upload Member...", + "pattern": "Search Data Sets by Entering Patterns", + "refreshNode": "Pull from Mainframe", + "removeFavorite": "Remove Favorite", + "uss.removeFavorite": "Remove Favorite", + "removeSavedSearch": "Remove Search", + "removeSession": "Remove Profile", + "saveSearch": "Add to Favorites", + "submitJcl": "Submit JCL", + "submitMember": "Submit Job", + "uss.addSession": "Add Session", + "uss.copyPath": "Copy Path", + "uss.createDirectory": "Create New Directory", + "uss.createNode": "Create new file or directory", + "uss.editFile": "Edit", + "uss.fullPath": "Search Unix System Services (USS) by Entering a Path", + "uss.refreshUSS": "Pull from Mainframe", + "uss.removeSession": "Remove Profile", + "uss.binary": "Toggle Binary", + "uss.uploadDialog": "Upload Files...", + "uss.text": "Toggle Text", + "jobs.search": "Search Jobs using Attributes", + "deleteJob": "Delete Job", + "runModifyCommand": "Issue Modify command", + "runStopCommand": "Issue Stop command", + "setOwner": "Set Owner", + "setPrefix": "Set Job Prefix", + "refreshJobsServer": "Refresh", + "refreshAll": "Refresh All", + "addJobsSession": "Add Profile", + "removeJobsSession": "Remove Profile", + "downloadSpool": "Download Spool", + "getJobJcl": "Get JCL", + "setJobSpool": "Set Spool", + "configuration.title": "Zowe Explorer Settings", + "Zowe-Default-Datasets-Binary": "Default values of Binary data set creation", + "Zowe-Default-Datasets-C": "Default values of C data set creation", + "Zowe-Default-Datasets-Classic": "Default values of Classic data set creation", + "Zowe-Default-Datasets-PDS": "Default values of Partitioned data set creation", + "Zowe-Default-Datasets-PS": "Default values of Sequential data set creation", + "Zowe-Default-Datasets-Favorites": "Toggle if favorite files persist locally", + "Zowe-Temp-Folder-Loacation": "Path to temporary folder location", + "Zowe-Builtin-Security": "Built-in Security. Specify a service of either 'Zowe-Plugin' when using the Secure Credentials Store plugin or @zowe/cli to describe a keytar based solution. The Default 'blank' represents no security. User names and passwords are stored in the clear.", + "Zowe-Default-USS-Persistent-Favorites": "Toggle if USS favorite files persist locally", + "Zowe-Default-Jobs-Persistent-Favorites": "Toggle if Jobs favorite files persist locally", + "Zowe-Default-Commands-Persistent-Favorites": "Toggle if Commands persist locally", + "Zowe-Environment": "Environment where the extension is running, default is VSCode", + "issueMvsCmd": "Zowe: Issue MVS Command...", + "rename": "Rename", + "copy": "Copy", + "paste": "Paste", + "hMigrateDataSet": "Migrate Data Set", + "profile.configuration.title": "Zowe z/OSMF Profiles", + "profile.configuration.name": "Profile Name", + "profile.configuration.url": "z/OSMF URL", + "profile.configuration.user": "z/OSMF User Name", + "profile.configuration.ru": "Profile Reject Unauthorize" +} \ No newline at end of file diff --git a/scripts/stringUpdateScript.js b/scripts/stringUpdateScript.js index 8db9808a74..50452030cd 100644 --- a/scripts/stringUpdateScript.js +++ b/scripts/stringUpdateScript.js @@ -16,7 +16,7 @@ const path = require("path"); // Clean out i18n samples directory fse.emptyDirSync("./i18n/sample"); -for (const metadataJson of require("glob").sync("./out/src/**/*.nls.metadata.json")) { +for (const metadataJson of require("glob").sync("./dist/src/**/*.nls.metadata.json")) { // Read localization metadata files const parsedData = JSON.parse(fse.readFileSync(metadataJson).toString()); const keysPairsData = {}; @@ -28,7 +28,7 @@ for (const metadataJson of require("glob").sync("./out/src/**/*.nls.metadata.jso } // Write to i18n sample folder to create template for new languages - const i18nJson = metadataJson.replace("./out/", "./i18n/sample/").replace(".nls.metadata.json", ".i18n.json"); + const i18nJson = metadataJson.replace("./dist/", "./i18n/sample/").replace(".nls.metadata.json", ".i18n.json"); fse.ensureDirSync(path.dirname(i18nJson)); fse.writeFileSync(i18nJson, JSON.stringify(keysPairsData, null, 4)); } diff --git a/src/KeytarCredentialManager.ts b/src/KeytarCredentialManager.ts index c3d4683c91..853593c307 100644 --- a/src/KeytarCredentialManager.ts +++ b/src/KeytarCredentialManager.ts @@ -12,7 +12,9 @@ import { AbstractCredentialManager, ImperativeError, SecureCredential } from "@zowe/imperative"; import * as nls from "vscode-nls"; -const localize = nls.config({messageFormat: nls.MessageFormat.file})(); +// Set up localization +nls.config({ messageFormat: nls.MessageFormat.bundle, bundleFormat: nls.BundleFormat.standalone })(); +const localize: nls.LocalizeFunc = nls.loadMessageBundle(); /** * Keytar - Securely store user credentials in the system keychain diff --git a/src/Profiles.ts b/src/Profiles.ts index a0ac77213a..66001af744 100644 --- a/src/Profiles.ts +++ b/src/Profiles.ts @@ -17,7 +17,9 @@ import * as zowe from "@zowe/cli"; import { ZoweExplorerApiRegister } from "./api/ZoweExplorerApiRegister"; import * as nls from "vscode-nls"; import { errorHandling, getZoweDir } from "./utils"; -const localize = nls.config({messageFormat: nls.MessageFormat.file})(); +// Set up localization +nls.config({ messageFormat: nls.MessageFormat.bundle, bundleFormat: nls.BundleFormat.standalone })(); +const localize: nls.LocalizeFunc = nls.loadMessageBundle(); interface IUrlValidator { valid: boolean; diff --git a/src/api/ZoweExplorerApiRegister.ts b/src/api/ZoweExplorerApiRegister.ts index 61123c1a68..8ecc7fe52f 100644 --- a/src/api/ZoweExplorerApiRegister.ts +++ b/src/api/ZoweExplorerApiRegister.ts @@ -14,7 +14,9 @@ import { ZoweExplorerApi } from "./ZoweExplorerApi"; import { ZosmfUssApi as ZosmfUssApi, ZosmfMvsApi, ZosmfJesApi } from "./ZoweExplorerZosmfApi"; import * as nls from "vscode-nls"; -const localize = nls.config({messageFormat: nls.MessageFormat.file})(); +// Set up localization +nls.config({ messageFormat: nls.MessageFormat.bundle, bundleFormat: nls.BundleFormat.standalone })(); +const localize: nls.LocalizeFunc = nls.loadMessageBundle(); /** * The Zowe Explorer API Register singleton that gets exposed to other VS Code diff --git a/src/api/ZoweExplorerZosmfApi.ts b/src/api/ZoweExplorerZosmfApi.ts index 7d7dcc2da5..ead72021d0 100644 --- a/src/api/ZoweExplorerZosmfApi.ts +++ b/src/api/ZoweExplorerZosmfApi.ts @@ -14,7 +14,9 @@ import { Session, IProfileLoaded, ITaskWithStatus, TaskStage } from "@zowe/imper import { ZoweExplorerApi } from "./ZoweExplorerApi"; import * as nls from "vscode-nls"; -const localize = nls.config({messageFormat: nls.MessageFormat.file})(); +// Set up localization +nls.config({ messageFormat: nls.MessageFormat.bundle, bundleFormat: nls.BundleFormat.standalone })(); +const localize: nls.LocalizeFunc = nls.loadMessageBundle(); // tslint:disable: max-classes-per-file diff --git a/src/command/MvsCommandHandler.ts b/src/command/MvsCommandHandler.ts index 2751bac243..916d74cb1e 100644 --- a/src/command/MvsCommandHandler.ts +++ b/src/command/MvsCommandHandler.ts @@ -18,7 +18,9 @@ import { PersistentFilters } from "../PersistentFilters"; import { FilterDescriptor, FilterItem, resolveQuickPickHelper, errorHandling } from "../utils"; import * as nls from "vscode-nls"; -const localize = nls.config({messageFormat: nls.MessageFormat.file})(); +// Set up localization +nls.config({ messageFormat: nls.MessageFormat.bundle, bundleFormat: nls.BundleFormat.standalone })(); +const localize: nls.LocalizeFunc = nls.loadMessageBundle(); /** * Provides a class that manages submitting a command on the server diff --git a/src/dataset/DatasetTree.ts b/src/dataset/DatasetTree.ts index c4b762726c..6351dc7059 100644 --- a/src/dataset/DatasetTree.ts +++ b/src/dataset/DatasetTree.ts @@ -26,7 +26,9 @@ import * as fs from "fs"; import * as contextually from "../shared/context"; import * as nls from "vscode-nls"; -const localize = nls.config({messageFormat: nls.MessageFormat.file})(); +// Set up localization +nls.config({ messageFormat: nls.MessageFormat.bundle, bundleFormat: nls.BundleFormat.standalone })(); +const localize: nls.LocalizeFunc = nls.loadMessageBundle(); /** * Creates the Dataset tree that contains nodes of sessions and data sets diff --git a/src/dataset/ZoweDatasetNode.ts b/src/dataset/ZoweDatasetNode.ts index 21be821b44..c73cb8b479 100644 --- a/src/dataset/ZoweDatasetNode.ts +++ b/src/dataset/ZoweDatasetNode.ts @@ -21,7 +21,9 @@ import { getIconByNode } from "../generators/icons"; import * as contextually from "../shared/context"; import * as nls from "vscode-nls"; -const localize = nls.config({messageFormat: nls.MessageFormat.file})(); +// Set up localization +nls.config({ messageFormat: nls.MessageFormat.bundle, bundleFormat: nls.BundleFormat.standalone })(); +const localize: nls.LocalizeFunc = nls.loadMessageBundle(); /** * A type of TreeItem used to represent sessions and data sets diff --git a/src/dataset/actions.ts b/src/dataset/actions.ts index d65ee8208e..64c625c64b 100644 --- a/src/dataset/actions.ts +++ b/src/dataset/actions.ts @@ -28,7 +28,9 @@ import { DatasetTree } from "./DatasetTree"; import * as contextually from "../shared/context"; import * as nls from "vscode-nls"; -const localize = nls.config({messageFormat: nls.MessageFormat.file})(); +// Set up localization +nls.config({ messageFormat: nls.MessageFormat.bundle, bundleFormat: nls.BundleFormat.standalone })(); +const localize: nls.LocalizeFunc = nls.loadMessageBundle(); /** * Refreshes treeView diff --git a/src/extension.ts b/src/extension.ts index cae8b9cc5c..a3d49e50dc 100644 --- a/src/extension.ts +++ b/src/extension.ts @@ -34,7 +34,9 @@ import { ZoweExplorerApiRegister } from "./api/ZoweExplorerApiRegister"; import { KeytarCredentialManager } from "./KeytarCredentialManager"; import * as nls from "vscode-nls"; -const localize = nls.config({messageFormat: nls.MessageFormat.file})(); +// Set up localization +nls.config({ messageFormat: nls.MessageFormat.bundle, bundleFormat: nls.BundleFormat.standalone })(); +const localize: nls.LocalizeFunc = nls.loadMessageBundle(); /** * The function that runs when the extension is loaded diff --git a/src/generators/messages/items/dataset.ts b/src/generators/messages/items/dataset.ts index b947272e2e..b762242e34 100644 --- a/src/generators/messages/items/dataset.ts +++ b/src/generators/messages/items/dataset.ts @@ -13,7 +13,9 @@ import { IMessageItem, MessageCategoryId, MessageContentType, MessageHierarchyTy import * as globals from "../../../globals"; import * as nls from "vscode-nls"; -const localize = nls.config({messageFormat: nls.MessageFormat.file})(); +// Set up localization +nls.config({ messageFormat: nls.MessageFormat.bundle, bundleFormat: nls.BundleFormat.standalone })(); +const localize: nls.LocalizeFunc = nls.loadMessageBundle(); const message: IMessageItem = { id: MessageCategoryId.dataset, diff --git a/src/generators/messages/items/datasetMember.ts b/src/generators/messages/items/datasetMember.ts index cbeb1d4b4b..d1d6265e6d 100644 --- a/src/generators/messages/items/datasetMember.ts +++ b/src/generators/messages/items/datasetMember.ts @@ -14,7 +14,9 @@ import * as globals from "../../../globals"; import datasetMessage from "./dataset"; import * as nls from "vscode-nls"; -const localize = nls.config({messageFormat: nls.MessageFormat.file})(); +// Set up localization +nls.config({ messageFormat: nls.MessageFormat.bundle, bundleFormat: nls.BundleFormat.standalone })(); +const localize: nls.LocalizeFunc = nls.loadMessageBundle(); const message: IMessageItem = { id: MessageCategoryId.datasetMember, diff --git a/src/job/ZosJobsProvider.ts b/src/job/ZosJobsProvider.ts index f746435bcf..b8da06fa73 100644 --- a/src/job/ZosJobsProvider.ts +++ b/src/job/ZosJobsProvider.ts @@ -26,7 +26,9 @@ import { getIconByNode } from "../generators/icons"; import * as contextually from "../shared/context"; import * as nls from "vscode-nls"; -const localize = nls.config({messageFormat: nls.MessageFormat.file})(); +// Set up localization +nls.config({ messageFormat: nls.MessageFormat.bundle, bundleFormat: nls.BundleFormat.standalone })(); +const localize: nls.LocalizeFunc = nls.loadMessageBundle(); /** * Creates the Job tree that contains nodes of sessions, jobs and spool items diff --git a/src/job/ZoweJobNode.ts b/src/job/ZoweJobNode.ts index 3fb54e43e0..74ec84ae39 100644 --- a/src/job/ZoweJobNode.ts +++ b/src/job/ZoweJobNode.ts @@ -21,7 +21,9 @@ import { getIconByNode } from "../generators/icons"; import * as contextually from "../shared/context"; import * as nls from "vscode-nls"; -const localize = nls.config({messageFormat: nls.MessageFormat.file})(); +// Set up localization +nls.config({ messageFormat: nls.MessageFormat.bundle, bundleFormat: nls.BundleFormat.standalone })(); +const localize: nls.LocalizeFunc = nls.loadMessageBundle(); // tslint:disable-next-line: max-classes-per-file export class Job extends ZoweTreeNode implements IZoweJobTreeNode { diff --git a/src/job/actions.ts b/src/job/actions.ts index b9d89c7eb0..f476438fca 100644 --- a/src/job/actions.ts +++ b/src/job/actions.ts @@ -23,7 +23,10 @@ import * as contextually from "../shared/context"; import * as nls from "vscode-nls"; import { encodeJobFile } from "../SpoolProvider"; -const localize = nls.config({messageFormat: nls.MessageFormat.file})(); + +// Set up localization +nls.config({ messageFormat: nls.MessageFormat.bundle, bundleFormat: nls.BundleFormat.standalone })(); +const localize: nls.LocalizeFunc = nls.loadMessageBundle(); /** * Refresh all jobs in the job tree diff --git a/src/job/utils.ts b/src/job/utils.ts index f6568de072..8464f4287c 100644 --- a/src/job/utils.ts +++ b/src/job/utils.ts @@ -12,7 +12,9 @@ import { FilterDescriptor } from "../../src/utils"; import * as nls from "vscode-nls"; -const localize = nls.config({messageFormat: nls.MessageFormat.file})(); +// Set up localization +nls.config({ messageFormat: nls.MessageFormat.bundle, bundleFormat: nls.BundleFormat.standalone })(); +const localize: nls.LocalizeFunc = nls.loadMessageBundle(); // tslint:disable-next-line: max-classes-per-file export class JobIdFilterDescriptor extends FilterDescriptor { diff --git a/src/mvs/mvsNodeActions.ts b/src/mvs/mvsNodeActions.ts index 0324b020c1..62ad30cdf6 100644 --- a/src/mvs/mvsNodeActions.ts +++ b/src/mvs/mvsNodeActions.ts @@ -18,7 +18,9 @@ import { IZoweDatasetTreeNode } from "../api/IZoweTreeNode"; import * as nls from "vscode-nls"; import * as contextually from "../shared/context"; -const localize = nls.config({messageFormat: nls.MessageFormat.file})(); +// Set up localization +nls.config({ messageFormat: nls.MessageFormat.bundle, bundleFormat: nls.BundleFormat.standalone })(); +const localize: nls.LocalizeFunc = nls.loadMessageBundle(); export async function uploadDialog(node: ZoweDatasetNode, datasetProvider: IZoweTree) { const fileOpenOptions = { diff --git a/src/shared/actions.ts b/src/shared/actions.ts index b41dcff2c8..e865cd8b7e 100644 --- a/src/shared/actions.ts +++ b/src/shared/actions.ts @@ -19,7 +19,10 @@ import { filterTreeByString } from "../shared/utils"; import { FilterItem, resolveQuickPickHelper, FilterDescriptor } from "../utils"; import * as contextually from "../shared/context"; import * as nls from "vscode-nls"; -const localize = nls.config({messageFormat: nls.MessageFormat.file})(); + +// Set up localization +nls.config({ messageFormat: nls.MessageFormat.bundle, bundleFormat: nls.BundleFormat.standalone })(); +const localize: nls.LocalizeFunc = nls.loadMessageBundle(); /** * Search for matching items loaded in data set or USS tree diff --git a/src/uss/USSTree.ts b/src/uss/USSTree.ts index 88a0978dea..a9e23072a1 100644 --- a/src/uss/USSTree.ts +++ b/src/uss/USSTree.ts @@ -25,7 +25,9 @@ import { getIconByNode } from "../generators/icons"; import * as contextually from "../shared/context"; import * as nls from "vscode-nls"; -const localize = nls.config({messageFormat: nls.MessageFormat.file})(); +// Set up localization +nls.config({ messageFormat: nls.MessageFormat.bundle, bundleFormat: nls.BundleFormat.standalone })(); +const localize: nls.LocalizeFunc = nls.loadMessageBundle(); /** * Creates the USS tree that contains nodes of sessions and data sets diff --git a/src/uss/ZoweUSSNode.ts b/src/uss/ZoweUSSNode.ts index 208bf37ded..482a6d6de0 100644 --- a/src/uss/ZoweUSSNode.ts +++ b/src/uss/ZoweUSSNode.ts @@ -27,7 +27,9 @@ import { ZoweExplorerApiRegister } from "../api/ZoweExplorerApiRegister"; import * as contextually from "../shared/context"; import * as nls from "vscode-nls"; -const localize = nls.config({messageFormat: nls.MessageFormat.file})(); +// Set up localization +nls.config({ messageFormat: nls.MessageFormat.bundle, bundleFormat: nls.BundleFormat.standalone })(); +const localize: nls.LocalizeFunc = nls.loadMessageBundle(); /** * A type of TreeItem used to represent sessions and USS directories and files diff --git a/src/uss/actions.ts b/src/uss/actions.ts index 806b5369c9..b1d9a2c5ea 100644 --- a/src/uss/actions.ts +++ b/src/uss/actions.ts @@ -25,7 +25,10 @@ import { isBinaryFileSync } from "isbinaryfile"; import { Session } from "@zowe/imperative"; import * as contextually from "../shared/context"; import * as nls from "vscode-nls"; -const localize = nls.config({messageFormat: nls.MessageFormat.file})(); + +// Set up localization +nls.config({ messageFormat: nls.MessageFormat.bundle, bundleFormat: nls.BundleFormat.standalone })(); +const localize: nls.LocalizeFunc = nls.loadMessageBundle(); /** * Prompts the user for a path, and populates the [TreeView]{@link vscode.TreeView} based on the path diff --git a/src/utils.ts b/src/utils.ts index f9383ab32e..65bdd14414 100644 --- a/src/utils.ts +++ b/src/utils.ts @@ -17,7 +17,9 @@ import { Profiles } from "./Profiles"; import { ImperativeConfig } from "@zowe/imperative"; import * as nls from "vscode-nls"; -const localize = nls.config({messageFormat: nls.MessageFormat.file})(); +// Set up localization +nls.config({ messageFormat: nls.MessageFormat.bundle, bundleFormat: nls.BundleFormat.standalone })(); +const localize: nls.LocalizeFunc = nls.loadMessageBundle(); /************************************************************************************************************* * Error Handling diff --git a/tsconfig.json b/tsconfig.json index 99b09a66d9..755636bfa6 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -5,7 +5,7 @@ "outDir": "out", "jsx": "react", "lib": [ - "es6" + "es6", "dom" ], "skipLibCheck": true, "sourceMap": true, @@ -16,16 +16,17 @@ // "noImplicitReturns": true, /* Report error when not all code paths in function return a value. */ // "noFallthroughCasesInSwitch": true, /* Report errors for fallthrough cases in switch statement. */ // "noUnusedParameters": true, /* Report errors on unused parameters. */ - "experimentalDecorators": true + "experimentalDecorators": true, + "removeComments": true, + "rootDir": "." }, "exclude": [ "node_modules", ".vscode-test" ], "include": [ - "src", - "__tests__", - "resources/testProfileData.example.ts", - "resources/testProfileData.ts" + "src/**/*.ts", + "./node_modules/vscode/vscode.d.ts", + "./node_modules/vscode/lib/*" ] } diff --git a/webpack.config.js b/webpack.config.js new file mode 100644 index 0000000000..e075c6dabf --- /dev/null +++ b/webpack.config.js @@ -0,0 +1,85 @@ +/* +* This program and the accompanying materials are made available under the terms of the * +* Eclipse Public License v2.0 which accompanies this distribution, and is available at * +* https://www.eclipse.org/legal/epl-v20.html * +* * +* SPDX-License-Identifier: EPL-2.0 * +* * +* Copyright Contributors to the Zowe Project. * +* * +*/ + +//@ts-check + +'use strict'; + +const path = require('path'); +var webpack = require("webpack"); +var fs = require("fs"); + +/**@type {import('webpack').Configuration}*/ +const config = { + target: 'node', // vscode extensions run in a Node.js-context 📖 -> https://webpack.js.org/configuration/node/ + // mode:'development', + entry: './src/extension.ts', // the entry point of this extension, 📖 -> https://webpack.js.org/configuration/entry-context/ + output: { // the bundle is stored in the 'dist' folder (check package.json), 📖 -> https://webpack.js.org/configuration/output/ + path: path.resolve(__dirname, 'dist'), + filename: 'extension.js', + libraryTarget: "commonjs2", + devtoolModuleFilenameTemplate: "../[resource-path]", + }, + devtool: 'source-map', + externals: { + // Add modules that cannot be webpack'ed, 📖 -> https://webpack.js.org/configuration/externals/ + vscode: "commonjs vscode", // the vscode-module is created on-the-fly and must be excluded. Add other modules that cannot be webpack'ed, 📖 -> https://webpack.js.org/configuration/externals/ + "vscode-nls" : "commonjs vscode-nls", + keytar: "commonjs keytar", + "spdx-exceptions": "commonjs spdx-exceptions", + "spdx-license-ids": "commonjs spdx-license-ids", + "spdx-license-ids/deprecated": "commonjs spdx-license-ids/deprecated" + }, + resolve: { // support reading TypeScript and JavaScript files, 📖 -> https://github.com/TypeStrong/ts-loader + extensions: ['.ts', '.js'] + }, + node: { + __dirname: false, // leave the __dirname behavior intact + }, + stats: { + // Ignore warnings + warnings: false + }, + module: { + rules: [{ + test: /\.ts$/, + exclude: /node_modules/, + use: [ + { + // configure TypeScript loader: + // * enable sources maps for end-to-end source maps + loader: 'ts-loader', + options: { + compilerOptions: { + "sourceMap": true, + } + } + }, + ]}, + ]}, + plugins: [ + new webpack.BannerPlugin(fs.readFileSync('./.vscode/banner.txt', 'utf8')) + ] +} + +// Generates source code folder hierarchy nls metadata files in the output folder (e.g. dist) +if (process.argv.includes('--vscode-nls')) { + // rewrite nls call when being asked for + config.module.rules.unshift({ + loader: 'vscode-nls-dev/lib/webpack-loader', + options: { + base: __dirname + } + }) +} + + +module.exports = config; \ No newline at end of file From 000bafc175da97a6b3605c043e312b88388a1650 Mon Sep 17 00:00:00 2001 From: Lauren Li Date: Tue, 21 Apr 2020 16:29:52 -0400 Subject: [PATCH 03/30] Fix extension launch in development host Signed-off-by: Lauren Li --- .vscode/launch.json | 8 +++++--- .vscode/tasks.json | 10 ++++++++++ .vscodeignore | 1 + package.json | 4 ++-- src/globals.ts | 4 ++-- 5 files changed, 20 insertions(+), 7 deletions(-) diff --git a/.vscode/launch.json b/.vscode/launch.json index bd09ff12e3..1e591b13ae 100644 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -24,12 +24,14 @@ "request": "launch", "runtimeExecutable": "${execPath}", "args": [ - "--extensionDevelopmentPath=${workspaceFolder}" + "--extensionDevelopmentPath=${workspaceFolder}", + "--verbose" ], "outFiles": [ - "${workspaceFolder}/out/**/*.js" + "${workspaceFolder}/dist/**/*.js" ], - "preLaunchTask": "npm: watch" + "preLaunchTask": "npm: build", + "smartStep": true }, { "name": "Integration Tests (Mocha)", diff --git a/.vscode/tasks.json b/.vscode/tasks.json index 604e38f5ad..1c7c3c99e2 100644 --- a/.vscode/tasks.json +++ b/.vscode/tasks.json @@ -15,6 +15,16 @@ "kind": "build", "isDefault": true } + }, + { + "type": "npm", + "script": "build", + "group": "build", + "presentation": { + "panel": "dedicated", + "reveal": "never" + }, + "problemMatcher":["$tsc"] } ] } \ No newline at end of file diff --git a/.vscodeignore b/.vscodeignore index 591137e836..c80631fbd0 100644 --- a/.vscodeignore +++ b/.vscodeignore @@ -6,6 +6,7 @@ out/__tests__/** out/src/__mocks__/** out/resources/testProfileData.* out/**/*.map +resources/testProfileData.example.ts resources/testProfileData.ts resources/Favorites.txt results/** diff --git a/package.json b/package.json index a8a93b5bc0..bf579b8109 100644 --- a/package.json +++ b/package.json @@ -31,7 +31,7 @@ "activationEvents": [ "*" ], - "main": "./out/src/extension", + "main": "./dist/extension", "contributes": { "viewsContainers": { "activitybar": [ @@ -999,7 +999,7 @@ "update": "node scripts/stringUpdateScript.js", "package": "vsce package", "license": "node ./scripts/license.js", - "watch": "tsc -b --watch --pretty", + "watch": "webpack --mode development --vscode-nls --watch --info-verbosity verbose", "compile": "tsc -b", "markdown": "markdownlint CHANGELOG.md README.md", "lint": "npm run lint:src && npm run lint:tests && npm run markdown", diff --git a/src/globals.ts b/src/globals.ts index 0ff0d23be8..7298409179 100644 --- a/src/globals.ts +++ b/src/globals.ts @@ -57,7 +57,7 @@ export function defineGlobals(tempPath: string | undefined) { // Set temp path & folder paths tempPath !== "" && tempPath !== undefined ? ZOWETEMPFOLDER = path.join(tempPath, "temp") : - ZOWETEMPFOLDER = path.join(__dirname, "..", "..", "resources", "temp"); + ZOWETEMPFOLDER = path.join(__dirname, "..", "resources", "temp"); ZOWE_TMP_FOLDER = path.join(ZOWETEMPFOLDER, "tmp"); USS_DIR = path.join(ZOWETEMPFOLDER, "_U_"); @@ -69,7 +69,7 @@ export function defineGlobals(tempPath: string | undefined) { * @param context The extension context */ export function initLogger(context: vscode.ExtensionContext) { - const loggerConfig = require(path.join(context.extensionPath, "log4jsconfig.json")); + const loggerConfig = require("../log4jsconfig.json"); loggerConfig.log4jsConfig.appenders.default.filename = path.join(context.extensionPath, "logs", "imperative.log"); loggerConfig.log4jsConfig.appenders.imperative.filename = path.join(context.extensionPath, "logs", "imperative.log"); loggerConfig.log4jsConfig.appenders.app.filename = path.join(context.extensionPath, "logs", "zowe.log"); From e82f61d35a9282bf4a115199139596c32135ac7a Mon Sep 17 00:00:00 2001 From: Lauren Li Date: Tue, 21 Apr 2020 16:50:04 -0400 Subject: [PATCH 04/30] Update icon paths for webpack Signed-off-by: Lauren Li --- src/shared/utils.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/shared/utils.ts b/src/shared/utils.ts index 81d11b260b..cd9751db5b 100644 --- a/src/shared/utils.ts +++ b/src/shared/utils.ts @@ -35,8 +35,8 @@ export function filterTreeByString(value: string, treeItems: vscode.QuickPickIte */ export function getIconPathInResources(iconFileName: string) { return { - light: path.join(__dirname, "..", "..", "..", "resources", "light", iconFileName), - dark: path.join(__dirname, "..", "..", "..", "resources", "dark", iconFileName) + light: path.join(__dirname, "..", "resources", "light", iconFileName), + dark: path.join(__dirname, "..", "resources", "dark", iconFileName) }; } From 01dc220851bf0ea52fdaee503444abb92e0ed7fc Mon Sep 17 00:00:00 2001 From: Lauren Li Date: Tue, 21 Apr 2020 17:56:30 -0400 Subject: [PATCH 05/30] Fix resources path for webpack Signed-off-by: Lauren Li --- __tests__/__integration__/extension.integration.test.ts | 2 +- __tests__/__unit__/extension.unit.test.ts | 4 ++-- src/extension.ts | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/__tests__/__integration__/extension.integration.test.ts b/__tests__/__integration__/extension.integration.test.ts index a7224a2121..9ceb53cb06 100644 --- a/__tests__/__integration__/extension.integration.test.ts +++ b/__tests__/__integration__/extension.integration.test.ts @@ -721,7 +721,7 @@ describe("Extension Integration Tests", () => { }).timeout(TIMEOUT); it("should assign default temp folder, if preference is empty", async () => { - const expectedDefaultTemp = path.join(__dirname, "..", "..", "..", "resources", "temp"); + const expectedDefaultTemp = path.join(__dirname, "..", "resources", "temp"); await vscode.workspace.getConfiguration().update("Zowe-Temp-Folder-Location", { folderPath: "" }, vscode.ConfigurationTarget.Global); expect(ZOWETEMPFOLDER).to.equal(expectedDefaultTemp); diff --git a/__tests__/__unit__/extension.unit.test.ts b/__tests__/__unit__/extension.unit.test.ts index 5d273d18f6..e8328e4c95 100644 --- a/__tests__/__unit__/extension.unit.test.ts +++ b/__tests__/__unit__/extension.unit.test.ts @@ -675,8 +675,8 @@ describe("Extension Unit Tests", () => { } sampleFavorites[2].command = {command: "zowe.pattern", title: "", arguments: [sampleFavorites[2]]}; sampleFavorites[2].iconPath = { - dark: path.join(__dirname, "..", "..", "..", "resources", "dark", "pattern.svg"), - light: path.join(__dirname, "..", "..", "..", "resources", "light", "pattern.svg") + dark: path.join(__dirname, "..", "resources", "dark", "pattern.svg"), + light: path.join(__dirname, "..", "resources", "light", "pattern.svg") }; // tslint:disable-next-line: no-magic-numbers expect(mkdirSync.mock.calls.length).toBe(4); diff --git a/src/extension.ts b/src/extension.ts index a3d49e50dc..a9e1ffcbad 100644 --- a/src/extension.ts +++ b/src/extension.ts @@ -308,7 +308,7 @@ export function moveTempFolder(previousTempPath: string, currentTempPath: string globals.defineGlobals(currentTempPath); if (previousTempPath === "") { - previousTempPath = path.join(__dirname, "..", "..", "resources"); + previousTempPath = path.join(__dirname, "..", "resources"); } // Make certain that "temp" folder is cleared From 4e1defa88efe40f732b47c51fc4aad887e1a4889 Mon Sep 17 00:00:00 2001 From: Lauren Li Date: Wed, 22 Apr 2020 10:09:54 -0400 Subject: [PATCH 06/30] Add french for testing Signed-off-by: Lauren Li --- i18n/fra/package.i18n.json | 80 +++++++++++++++++++ .../fra/src/KeytarCredentialManager.i18n.json | 11 +++ i18n/fra/src/Profiles.i18n.json | 24 ++++++ .../src/api/ZoweExplorerApiRegister.i18n.json | 8 ++ .../src/api/ZoweExplorerZosmfApi.i18n.json | 3 + .../src/command/MvsCommandHandler.i18n.json | 13 +++ i18n/fra/src/dataset/DatasetTree.i18n.json | 22 +++++ .../fra/src/dataset/ZoweDatasetNode.i18n.json | 8 ++ i18n/fra/src/dataset/actions.i18n.json | 71 ++++++++++++++++ i18n/fra/src/extension.i18n.json | 24 ++++++ i18n/fra/src/job/ZosJobsProvider.i18n.json | 18 +++++ i18n/fra/src/job/ZoweJobNode.i18n.json | 5 ++ i18n/fra/src/job/actions.i18n.json | 8 ++ i18n/fra/src/job/utils.i18n.json | 4 + i18n/fra/src/shared/actions.i18n.json | 10 +++ i18n/fra/src/uss/USSTree.i18n.json | 17 ++++ i18n/fra/src/uss/ZoweUSSNode.i18n.json | 19 +++++ i18n/fra/src/uss/actions.i18n.json | 11 +++ i18n/fra/src/utils.i18n.json | 4 + package.nls.fr.json | 2 +- 20 files changed, 361 insertions(+), 1 deletion(-) create mode 100644 i18n/fra/package.i18n.json create mode 100644 i18n/fra/src/KeytarCredentialManager.i18n.json create mode 100644 i18n/fra/src/Profiles.i18n.json create mode 100644 i18n/fra/src/api/ZoweExplorerApiRegister.i18n.json create mode 100644 i18n/fra/src/api/ZoweExplorerZosmfApi.i18n.json create mode 100644 i18n/fra/src/command/MvsCommandHandler.i18n.json create mode 100644 i18n/fra/src/dataset/DatasetTree.i18n.json create mode 100644 i18n/fra/src/dataset/ZoweDatasetNode.i18n.json create mode 100644 i18n/fra/src/dataset/actions.i18n.json create mode 100644 i18n/fra/src/extension.i18n.json create mode 100644 i18n/fra/src/job/ZosJobsProvider.i18n.json create mode 100644 i18n/fra/src/job/ZoweJobNode.i18n.json create mode 100644 i18n/fra/src/job/actions.i18n.json create mode 100644 i18n/fra/src/job/utils.i18n.json create mode 100644 i18n/fra/src/shared/actions.i18n.json create mode 100644 i18n/fra/src/uss/USSTree.i18n.json create mode 100644 i18n/fra/src/uss/ZoweUSSNode.i18n.json create mode 100644 i18n/fra/src/uss/actions.i18n.json create mode 100644 i18n/fra/src/utils.i18n.json diff --git a/i18n/fra/package.i18n.json b/i18n/fra/package.i18n.json new file mode 100644 index 0000000000..aef473c75d --- /dev/null +++ b/i18n/fra/package.i18n.json @@ -0,0 +1,80 @@ +{ + "displayName": "Zowe Explorer", + "description": "VS Code extension, powered by Zowe CLI, that streamlines interaction with mainframe data sets, USS files, and jobs", + "viewsContainers.activitybar": "Zowe", + "zowe.explorer": "Data Sets", + "zowe.uss.explorer": "Unix System Services (USS)", + "zowe.jobs": "Jobs", + "uss.createFile": "Create File", + "uss.createFolder": "Create Directory", + "uss.deleteNode": "Delete", + "uss.renameNode": "Rename", + "addFavorite": "Add to Favorites", + "uss.addFavorite": "Add to Favorites", + "addSession": "Add Profile", + "createDataset": "Créer un nouveau fichier", + "createMember": "Create New Member", + "showDSAttributes": "Show Data Set Attributes", + "deleteDataset": "Delete Data Set", + "deleteMember": "Delete Member", + "deletePDS": "Delete PDS", + "editMember": "Edit", + "issueCmd": "Issue Command", + "uploadDialog": "Upload Member...", + "pattern": "Search Data Sets by Entering Patterns", + "refreshNode": "Pull from Mainframe", + "removeFavorite": "Remove Favorite", + "uss.removeFavorite": "Remove Favorite", + "removeSavedSearch": "Remove Search", + "removeSession": "Remove Profile", + "saveSearch": "Add to Favorites", + "submitJcl": "Submit JCL", + "submitMember": "Submit Job", + "uss.addSession": "Add Session", + "uss.copyPath": "Copy Path", + "uss.createDirectory": "Create New Directory", + "uss.createNode": "Create new file or directory", + "uss.editFile": "Edit", + "uss.fullPath": "Search Unix System Services (USS) by Entering a Path", + "uss.refreshUSS": "Pull from Mainframe", + "uss.removeSession": "Remove Profile", + "uss.binary": "Toggle Binary", + "uss.uploadDialog": "Upload Files...", + "uss.text": "Toggle Text", + "jobs.search": "Search Jobs using Attributes", + "deleteJob": "Delete Job", + "runModifyCommand": "Issue Modify command", + "runStopCommand": "Issue Stop command", + "setOwner": "Set Owner", + "setPrefix": "Set Job Prefix", + "refreshJobsServer": "Refresh", + "refreshAll": "Refresh All", + "addJobsSession": "Add Profile", + "removeJobsSession": "Remove Profile", + "downloadSpool": "Download Spool", + "getJobJcl": "Get JCL", + "setJobSpool": "Set Spool", + "configuration.title": "Zowe Explorer Settings", + "Zowe-Default-Datasets-Binary": "Default values of Binary data set creation", + "Zowe-Default-Datasets-C": "Default values of C data set creation", + "Zowe-Default-Datasets-Classic": "Default values of Classic data set creation", + "Zowe-Default-Datasets-PDS": "Default values of Partitioned data set creation", + "Zowe-Default-Datasets-PS": "Default values of Sequential data set creation", + "Zowe-Default-Datasets-Favorites": "Toggle if favorite files persist locally", + "Zowe-Temp-Folder-Loacation": "Path to temporary folder location", + "Zowe-Builtin-Security": "Built-in Security. Specify a service of either 'Zowe-Plugin' when using the Secure Credentials Store plugin or @zowe/cli to describe a keytar based solution. The Default 'blank' represents no security. User names and passwords are stored in the clear.", + "Zowe-Default-USS-Persistent-Favorites": "Toggle if USS favorite files persist locally", + "Zowe-Default-Jobs-Persistent-Favorites": "Toggle if Jobs favorite files persist locally", + "Zowe-Default-Commands-Persistent-Favorites": "Toggle if Commands persist locally", + "Zowe-Environment": "Environment where the extension is running, default is VSCode", + "issueMvsCmd": "Zowe: Issue MVS Command...", + "rename": "Rename", + "copy": "Copy", + "paste": "Paste", + "hMigrateDataSet": "Migrate Data Set", + "profile.configuration.title": "Zowe z/OSMF Profiles", + "profile.configuration.name": "Profile Name", + "profile.configuration.url": "z/OSMF URL", + "profile.configuration.user": "z/OSMF User Name", + "profile.configuration.ru": "Profile Reject Unauthorize" +} \ No newline at end of file diff --git a/i18n/fra/src/KeytarCredentialManager.i18n.json b/i18n/fra/src/KeytarCredentialManager.i18n.json new file mode 100644 index 0000000000..b3c7097958 --- /dev/null +++ b/i18n/fra/src/KeytarCredentialManager.i18n.json @@ -0,0 +1,11 @@ +{ + "errorHandling.deleteCredentials": "Unable to delete credentials.", + "errorHandling.loadCredentials": "Unable to load credentials.", + "credentials.missingEntryMessage.1": "Could not find an entry in the credential vault for the following:\n", + "credentials.missingEntryMessage.2": " Service = {0}\n", + "credentials.missingEntryMessage.3": " Account = {0}\n\n", + "credentials.missingEntryMessage.4": "Possible Causes:\n", + "credentials.missingEntryMessage.5": " This could have been caused by any manual removal of credentials from your vault.\n\n", + "credentials.missingEntryMessage.6": "Resolutions:\n", + "credentials.missingEntryMessage.7": " Recreate the credentials in the vault for the particular service in the vault." +} \ No newline at end of file diff --git a/i18n/fra/src/Profiles.i18n.json b/i18n/fra/src/Profiles.i18n.json new file mode 100644 index 0000000000..76ae650bb0 --- /dev/null +++ b/i18n/fra/src/Profiles.i18n.json @@ -0,0 +1,24 @@ +{ + "ussNodeActions.error": "Error encountered in ", + "loadNamedProfile.error.profileName": "Could not find profile named: ", + "loadNamedProfile.error.period": ".", + "createNewConnection.invalidzosmfURL": "Please enter a valid URL in the format https://url:port.", + "createNewConnection.option.prompt.url.placeholder": "https://url:port", + "createNewConnection.option.prompt.url": "Enter a z/OSMF URL in the format 'https://url:port'.", + "createNewConnection.zosmfURL": "No valid value for z/OSMF URL. Operation Cancelled", + "createNewConnection.option.prompt.username.placeholder": "Optional: User Name", + "createNewConnection.option.prompt.username": "Enter the user name for the connection. Leave blank to not store.", + "createNewConnection.undefined.username": "Operation Cancelled", + "createNewConnection.option.prompt.password.placeholder": "Optional: Password", + "createNewConnection.option.prompt.password": "Enter the password for the connection. Leave blank to not store.", + "createNewConnection.undefined.passWord": "Operation Cancelled", + "createNewConnection.option.prompt.ru.placeholder": "Reject Unauthorized Connections", + "createNewConnection.rejectUnauthorize": "Operation Cancelled", + "createNewConnection.duplicateProfileName": "Profile name already exists. Please create a profile using a different name", + "promptcredentials.option.prompt.username.placeholder": "User Name", + "promptcredentials.option.prompt.username": "Enter the user name for the connection", + "promptcredentials.invalidusername": "Please enter your z/OS username. Operation Cancelled", + "promptcredentials.option.prompt.password.placeholder": "Password", + "promptcredentials.option.prompt.password": "Enter a password for the connection", + "promptcredentials.invalidpassword": "Please enter your z/OS password. Operation Cancelled" +} \ No newline at end of file diff --git a/i18n/fra/src/api/ZoweExplorerApiRegister.i18n.json b/i18n/fra/src/api/ZoweExplorerApiRegister.i18n.json new file mode 100644 index 0000000000..454166cb1e --- /dev/null +++ b/i18n/fra/src/api/ZoweExplorerApiRegister.i18n.json @@ -0,0 +1,8 @@ +{ + "registerUssApi.error": "Internal error: A Zowe Explorer extension client tried to register an invalid USS API.", + "registerMvsApi.error": "Internal error: A Zowe Explorer extension client tried to register an invalid MVS API.", + "registerJesApi.error": "Internal error: A Zowe Explorer extension client tried to register an invalid JES API.", + "getUssApi.error": "Internal error: Tried to call a non-existing USS API in API register: ", + "getMvsApi.error": "Internal error: Tried to call a non-existing MVS API in API register: ", + "getJesApi.error": "Internal error: Tried to call a non-existing JES API in API register: " +} \ No newline at end of file diff --git a/i18n/fra/src/api/ZoweExplorerZosmfApi.i18n.json b/i18n/fra/src/api/ZoweExplorerZosmfApi.i18n.json new file mode 100644 index 0000000000..2ad8483f86 --- /dev/null +++ b/i18n/fra/src/api/ZoweExplorerZosmfApi.i18n.json @@ -0,0 +1,3 @@ +{ + "api.zosmfUSSApi.putContents": "Uploading USS file" +} \ No newline at end of file diff --git a/i18n/fra/src/command/MvsCommandHandler.i18n.json b/i18n/fra/src/command/MvsCommandHandler.i18n.json new file mode 100644 index 0000000000..e4aca1128a --- /dev/null +++ b/i18n/fra/src/command/MvsCommandHandler.i18n.json @@ -0,0 +1,13 @@ +{ + "issueMvsCommand.outputchannel.title": "Zowe MVS Command", + "issueMvsCommand.quickPickOption": "Select the Profile to use to submit the command", + "issueMvsCommand.noProfilesLoaded": "No profiles available", + "issueMvsCommand.command.hostname": "Select a command to run immediately against ", + "issueMvsCommand.command.edit": " (An option to edit will follow)", + "issueMvsCommand.options.noselection": "No selection made.", + "issueMvsCommand.command.hostnameAlt": "Select a command to run against ", + "issueMvsCommand.command": "Enter or update the command", + "issueMvsCommand.enter.command": "No command entered.", + "issueMvsCommand.command.submitted": "MVS command submitted.", + "command.option.prompt.search": "Create a new Command" +} \ No newline at end of file diff --git a/i18n/fra/src/dataset/DatasetTree.i18n.json b/i18n/fra/src/dataset/DatasetTree.i18n.json new file mode 100644 index 0000000000..95f03f8f91 --- /dev/null +++ b/i18n/fra/src/dataset/DatasetTree.i18n.json @@ -0,0 +1,22 @@ +{ + "Favorites": "Favorites", + "initializeFavorites.log.debug": "initializing favorites", + "initializeFavorites.error.profile1": "Error: You have Zowe Data Set favorites that refer to a non-existent CLI profile named: ", + "intializeFavorites.error.profile2": ". To resolve this, you can create a profile with this name, ", + "initializeFavorites.error.profile3": "or remove the favorites with this profile name from the Zowe-DS-Persistent setting, which can be found in your ", + "initializeFavorites.error.profile4": " user settings.", + "loadNamedProfile.error.profileName": "Initialization Error: Could not find profile named: ", + "loadNamedProfile.error.period": ".", + "initializeFavorites.fileCorrupted": "Favorites file corrupted: ", + "addFavorite": "PDS already in favorites", + "findParentNode.unsuccessful": "Node does not exist. It may have been deleted.", + "enterPattern.log.debug.prompt": "Prompting the user for a data set pattern", + "searchHistory.options.prompt": "Select a filter", + "enterPattern.pattern": "No selection made.", + "enterPattern.options.prompt": "Search data sets by entering patterns: use a comma to separate multiple patterns", + "datasetFilterPrompt.enterPattern": "You must enter a pattern.", + "renameDataSet.log.debug": "Renaming data set ", + "renameDataSet.log.error": "Error encountered when renaming data set! ", + "renameDataSet.error": "Unable to rename data set: ", + "defaultFilterPrompt.option.prompt.search": "Create a new filter. Comma separate multiple entries (pattern 1, pattern 2, ...)" +} \ No newline at end of file diff --git a/i18n/fra/src/dataset/ZoweDatasetNode.i18n.json b/i18n/fra/src/dataset/ZoweDatasetNode.i18n.json new file mode 100644 index 0000000000..878421c64a --- /dev/null +++ b/i18n/fra/src/dataset/ZoweDatasetNode.i18n.json @@ -0,0 +1,8 @@ +{ + "getChildren.search": "Use the search button to display datasets", + "getChildren.error.invalidNode": "Invalid node", + "ZoweJobNode.getJobs.progress": "Get Dataset list command submitted.", + "getChildren.responses.error": "The response from Zowe CLI was not successful", + "getChildren.noDataset": "No datasets found", + "getChildren.error.response": "Retrieving response from " +} \ No newline at end of file diff --git a/i18n/fra/src/dataset/actions.i18n.json b/i18n/fra/src/dataset/actions.i18n.json new file mode 100644 index 0000000000..bdf876ea3f --- /dev/null +++ b/i18n/fra/src/dataset/actions.i18n.json @@ -0,0 +1,71 @@ +{ + "enterPattern.pattern": "You must enter a pattern.", + "createMember.inputBox": "Name of Member", + "createMember.log.debug.createNewDataSet": "creating new data set member of name ", + "createMember.log.error": "Error encountered when creating member! ", + "createMember.error": "Unable to create member: ", + "openPS.invalidNode": "openPS() called from invalid node.", + "openPS.error.invalidNode": "openPS() called from invalid node. ", + "openPS.log.debug.openDataSet": "opening physical sequential data set from label ", + "openPS.log.error.openDataSet": "Error encountered when opening data set! ", + "createFile.quickPickOption.dataSetType": "Type of Data Set to be Created", + "createFile.dataSetBinary": "Data Set Binary", + "createFile.dataSetC": "Data Set C", + "createFile.dataSetClassic": "Data Set Classic", + "createFile.dataSetPartitioned": "Data Set Partitioned", + "createFile.dataSetSequential": "Data Set Sequential", + "createFile.log.debug.noValidTypeSelected": "No valid data type selected", + "createFile.log.debug.creatingNewDataSet": "Creating new data set", + "dataset.name": "Name of Data Set", + "createDataSet.error": "Error encountered when creating data set! ", + "showDSAttributes.debug": "showing attributes of data set ", + "showDSAttributes.lengthError": "No matching data set names found for query: ", + "showDSAttributes.log.error": "Error encountered when listing attributes! ", + "showDSAttributes.error": "Unable to list attributes: ", + "attributes.title": "Attributes", + "renameDataSet.log.debug": "Renaming data set ", + "renameDataSet.log.error": "Error encountered when renaming data set! ", + "renameDataSet.error": "Unable to rename data set: ", + "submitJcl.noDocumentOpen": "No editor with a document that could be submitted as JCL is currently open.", + "submitJcl.log.debug": "Submitting JCL in document ", + "submitJcl.quickPickOption": "Select the Profile to use to submit the job", + "submitJcl.noProfile": "No profiles available", + "submitJcl.log.error.nullSession": "Session for submitting JCL was null or undefined!", + "submitJcl.jobSubmitted": "Job submitted ", + "submitJcl.jobSubmissionFailed": "Job submission failed\n", + "submitMember.invalidNode": "submitMember() called from invalid node.", + "submitMember.error.invalidNode": "submitMember() called from invalid node.", + "submitMember.jobSubmitted": "Job submitted ", + "submitMember.jobSubmissionFailed": "Job submission failed\n", + "deleteDataset.log.debug": "Deleting data set ", + "deleteDataset.quickPickOption": "Are you sure you want to delete ", + "deleteDataset.showQuickPick.yes": "Oui", + "deleteDataset.showQuickPick.no": "Non", + "deleteDataset.showQuickPick.log.debug": "User picked no. Cancelling delete of data set", + "deleteDataSet.invalidNode.error": "deleteDataSet() called from invalid node.", + "deleteDataSet.delete.log.error": "Error encountered when deleting data set! ", + "deleteDataSet.error.notFound": "not found", + "deleteDataSet.notFound.error1": "Unable to find file: ", + "deleteDataSet.notFound.error2": " was probably already deleted.", + "refreshPS.error.invalidNode": "refreshPS() called from invalid node.", + "refreshPS.log.error.refresh": "Error encountered when refreshing data set view: ", + "refreshPS.error.notFound": "not found", + "refreshPS.file1": "Unable to find file: ", + "refreshPS.file2": " was probably deleted.", + "enterPattern.log.debug.prompt": "Prompting the user for a data set pattern", + "enterPattern.options.prompt": "Search data sets by entering patterns: use a comma to separate multiple patterns", + "hMigrate.requestSent1": "Migration of dataset: ", + "hMigrate.requestSent2": " requested.", + "renameDataSet.name": "Name of Data Set Member", + "saveFile.log.debug.request": "requested to save data set: ", + "saveFile.log.debug.path": "path.relative returned a non-blank directory.", + "saveFile.log.debug.directory": "Assuming we are not in the DS_DIR directory: ", + "saveFile.log.error.session": "Couldn't locate session when saving data set!", + "saveFile.log.debug.load": "Loading session from session node in saveFile()", + "saveFile.log.debug.sessionNode": "couldn't find session node, loading profile with CLI profile manager", + "saveFile.log.debug.saving": "Saving file ", + "saveFile.error.saveFailed": "Data set failed to save. Data set may have been deleted on mainframe.", + "saveFile.response.save.title": "Saving data set...", + "saveFile.error.ZosmfEtagMismatchError": "Rest API failure with HTTP(S) status 412", + "saveFile.error.etagMismatch": "Remote file has been modified in the meantime.\nSelect 'Compare' to resolve the conflict." +} \ No newline at end of file diff --git a/i18n/fra/src/extension.i18n.json b/i18n/fra/src/extension.i18n.json new file mode 100644 index 0000000000..842df04e10 --- /dev/null +++ b/i18n/fra/src/extension.i18n.json @@ -0,0 +1,24 @@ +{ + "initialize.log.debug": "Initialized logger from VSCode extension", + "displayName": "Zowe Explorer", + "initialize.log.error": "Error encountered while activating and initializing logger! ", + "onDidSaveTextDocument1": "File was saved -- determining whether the file is a USS file or Data set.\n Comparing (case insensitive) ", + "onDidSaveTextDocument2": " against directory ", + "onDidSaveTextDocument3": "and", + "activate.didSaveText.isDataSet": "File is a data set-- saving ", + "activate.didSaveText.isUSSFile": "File is a USS file -- saving", + "activate.didSaveText.file": "File ", + "activate.didSaveText.notDataSet": " is not a data set or USS file ", + "profile.init.read.imperative": "Unable to read imperative file. ", + "initialize.module.load": "Credentials not managed, unable to load security file: ", + "moveTempFolder.error": "Error encountered when creating temporary folder! ", + "addSession.quickPickOption": "Choose \"Create new...\" to define a new profile or select an existing profile to Add to the USS Explorer", + "enterPattern.pattern": "No selection made.", + "createNewConnection.option.prompt.profileName.placeholder": "Connection Name", + "createNewConnection.option.prompt.profileName": "Enter a name for the connection", + "createNewConnection.enterprofileName": "Profile Name was not supplied. Operation Cancelled", + "addSession.log.debug.createNewProfile": "User created a new profile", + "addZoweSession.log.debug.selectProfile": "User selected profile ", + "addZoweSession.log.debug.cancelledSelection": "User cancelled profile selection", + "deactivate.error": "Unable to delete temporary folder. " +} \ No newline at end of file diff --git a/i18n/fra/src/job/ZosJobsProvider.i18n.json b/i18n/fra/src/job/ZosJobsProvider.i18n.json new file mode 100644 index 0000000000..8f2e64e936 --- /dev/null +++ b/i18n/fra/src/job/ZosJobsProvider.i18n.json @@ -0,0 +1,18 @@ +{ + "Favorites": "Favorites", + "deleteJob.job": "Job ", + "deleteJob.delete": " deleted", + "initializeFavorites.log.debug": "initializing favorites", + "initializeJobsFavorites.error.profile1": "Error: You have Jobs favorites that refer to a non-existent CLI profile named: ", + "initializeJobsFavorites.error.profile2": ". To resolve this, you can create a profile with this name, ", + "initializeJobsFavorites.error.profile3": "or remove the favorites with this profile name from the Zowe-Jobs-Persistent setting, which can be found in your ", + "initializeJobsFavorites.error.profile4": " user settings.", + "searchHistory.options.prompt": "Select a filter", + "enterPattern.pattern": "No selection made.", + "jobsFilterPrompt.option.prompt.owner": "Enter the Job Owner. Default is *.", + "jobs.enter.valid.owner": "Please enter a valid owner name (no spaces allowed).", + "jobsFilterPrompt.enterPrefix": "Search Cancelled", + "jobsFilterPrompt.option.prompt.prefix": "Enter a Job prefix. Default is *.", + "jobsFilterPrompt.option.prompt.jobid": "Enter a Job id", + "SpecifyCriteria": "Create new.." +} \ No newline at end of file diff --git a/i18n/fra/src/job/ZoweJobNode.i18n.json b/i18n/fra/src/job/ZoweJobNode.i18n.json new file mode 100644 index 0000000000..f012b6cb79 --- /dev/null +++ b/i18n/fra/src/job/ZoweJobNode.i18n.json @@ -0,0 +1,5 @@ +{ + "ZoweJobNode.getJobs.spoolfiles": "Get Job Spool files command submitted.", + "ZoweJobNode.getJobs.jobs": "Get Jobs command submitted.", + "getChildren.error.response": "Retrieving response from " +} \ No newline at end of file diff --git a/i18n/fra/src/job/actions.i18n.json b/i18n/fra/src/job/actions.i18n.json new file mode 100644 index 0000000000..5e4498987f --- /dev/null +++ b/i18n/fra/src/job/actions.i18n.json @@ -0,0 +1,8 @@ +{ + "downloadSpool.select": "Select", + "modifyCommand.command.prompt": "Modify Command", + "modifyCommand.response": "Command response: ", + "stopCommand.response": "Command response: ", + "setOwner.newOwner.prompt.owner": "Owner", + "setOwner.newOwner.prompt.prefix": "Prefix" +} \ No newline at end of file diff --git a/i18n/fra/src/job/utils.i18n.json b/i18n/fra/src/job/utils.i18n.json new file mode 100644 index 0000000000..5ccbc6db31 --- /dev/null +++ b/i18n/fra/src/job/utils.i18n.json @@ -0,0 +1,4 @@ +{ + "zosJobsProvider.option.prompt.createId": "Job Id search", + "zosJobsProvider.option.prompt.createOwner": "Owner/Prefix Job Search" +} \ No newline at end of file diff --git a/i18n/fra/src/shared/actions.i18n.json b/i18n/fra/src/shared/actions.i18n.json new file mode 100644 index 0000000000..47f2a55d77 --- /dev/null +++ b/i18n/fra/src/shared/actions.i18n.json @@ -0,0 +1,10 @@ +{ + "searchHistory.options.prompt": "Enter a filter", + "searchInAllLoadedItems.noneLoaded": "No items are loaded in the tree.", + "searchInAllLoadedItems.enterPattern": "You must enter a pattern.", + "enterPattern.log.debug.prompt": "Prompting the user to choose a recent member for editing", + "memberHistory.option.prompt.open": "Select a recent member to open", + "memberHistory.options.prompt": "Select a recent member to open", + "enterPattern.pattern": "No selection made.", + "getRecentMembers.empty": "No recent members found." +} \ No newline at end of file diff --git a/i18n/fra/src/uss/USSTree.i18n.json b/i18n/fra/src/uss/USSTree.i18n.json new file mode 100644 index 0000000000..e75bdf2e09 --- /dev/null +++ b/i18n/fra/src/uss/USSTree.i18n.json @@ -0,0 +1,17 @@ +{ + "Favorites": "Favorites", + "renameUSSNode.error": "Unable to rename node: ", + "enterPattern.log.debug.prompt": "Prompting the user to choose a member from the filtered list", + "filterPrompt.log.debug.promptUSSPath": "Prompting the user for a USS path", + "searchHistory.options.prompt": "Select a filter", + "enterPattern.pattern": "No selection made.", + "filterPrompt.option.prompt.search": "Create a new filter", + "filterPrompt.enterPath": "You must enter a path.", + "initializeFavorites.log.debug": "initializing favorites", + "initializeUSSFavorites.lines.title": "Open", + "initializeUSSFavorites.error.profile1": "Error: You have Zowe USS favorites that refer to a non-existent CLI profile named: ", + "intializeUSSFavorites.error.profile2": ". To resolve this, you can create a profile with this name, ", + "initializeUSSFavorites.error.profile3": "or remove the favorites with this profile name from the Zowe-USS-Persistent setting, which can be found in your ", + "initializeUSSFavorites.error.profile4": " user settings.", + "findUSSItem.unsuccessful": "File does not exist. It may have been deleted." +} \ No newline at end of file diff --git a/i18n/fra/src/uss/ZoweUSSNode.i18n.json b/i18n/fra/src/uss/ZoweUSSNode.i18n.json new file mode 100644 index 0000000000..5812c8dcc9 --- /dev/null +++ b/i18n/fra/src/uss/ZoweUSSNode.i18n.json @@ -0,0 +1,19 @@ +{ + "getChildren.error.invalidNode": "Invalid node", + "ZoweUssNode.getList.progress": "Get USS file list command submitted.", + "getChildren.error.response": "Retrieving response from ", + "getChildren.responses.error.response": "The response from Zowe CLI was not successful", + "getChildren.responses.open": "Open", + "deleteUSSNode.quickPickOption": "Are you sure you want to delete ", + "deleteUSSNode.showQuickPick.yes": "Yes", + "deleteUSSNode.showQuickPick.no": "No", + "deleteUSSNode.error.node": "Unable to delete node: ", + "openUSS.error.invalidNode": "open() called from invalid node.", + "refreshUSS.error.invalidNode": "refreshUSS() called from invalid node.", + "refreshUSS.error.notFound": "not found", + "refreshUSS.file1": "Unable to find file: ", + "refreshUSS.file2": " was probably deleted.", + "openUSS.log.info.failedToOpenAsText.yes": "Yes, re-download", + "openUSS.log.info.failedToOpenAsText.no": "No", + "openUSS.log.info.failedToOpenAsText": "Failed to open file as text. Do you want to try with re-downloading it as binary?" +} \ No newline at end of file diff --git a/i18n/fra/src/uss/actions.i18n.json b/i18n/fra/src/uss/actions.i18n.json new file mode 100644 index 0000000000..9ebe20eafd --- /dev/null +++ b/i18n/fra/src/uss/actions.i18n.json @@ -0,0 +1,11 @@ +{ + "createUSSNode.name": "Name of file or directory", + "createUSSNode.error.create": "Unable to create node: ", + "renameUSSNode.error": "Unable to rename node: ", + "copyPath.infoMessage": "Copy Path is not yet supported in Theia.", + "saveUSSFile.log.debug.saveRequest": "save requested for USS file ", + "saveUSSFile.response.title": "Saving file...", + "saveFile.error.ZosmfEtagMismatchError": "Rest API failure with HTTP(S) status 412", + "saveFile.error.etagMismatch": "Remote file has been modified in the meantime.\nSelect 'Compare' to resolve the conflict.", + "saveUSSFile.log.error.save": "Error encountered when saving USS file: " +} \ No newline at end of file diff --git a/i18n/fra/src/utils.i18n.json b/i18n/fra/src/utils.i18n.json new file mode 100644 index 0000000000..ae1e8092fe --- /dev/null +++ b/i18n/fra/src/utils.i18n.json @@ -0,0 +1,4 @@ +{ + "errorHandling.invalid.credentials": "Invalid Credentials. Please ensure the username and password for ", + "errorHandling.invalid.credentials2": " are valid or this may lead to a lock-out." +} \ No newline at end of file diff --git a/package.nls.fr.json b/package.nls.fr.json index 89e9e05b06..ecef3a193b 100644 --- a/package.nls.fr.json +++ b/package.nls.fr.json @@ -12,7 +12,7 @@ "addFavorite": "Add to Favorites", "uss.addFavorite": "Add to Favorites", "addSession": "Add Profile", - "createDataset": "Create New Data Set", + "createDataset": "Créer un nouveau fichier", "createMember": "Create New Member", "showDSAttributes": "Show Data Set Attributes", "deleteDataset": "Delete Data Set", From 60827249502bb2ab84d6b03c69af394d43d5a802 Mon Sep 17 00:00:00 2001 From: Lauren Li Date: Wed, 22 Apr 2020 11:03:19 -0400 Subject: [PATCH 07/30] Update packaging for webpack Signed-off-by: Lauren Li --- .vscodeignore | 15 ++++++++++++++- package.json | 2 +- 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/.vscodeignore b/.vscodeignore index c80631fbd0..0a058a138c 100644 --- a/.vscodeignore +++ b/.vscodeignore @@ -6,6 +6,7 @@ out/__tests__/** out/src/__mocks__/** out/resources/testProfileData.* out/**/*.map +out resources/testProfileData.example.ts resources/testProfileData.ts resources/Favorites.txt @@ -16,4 +17,16 @@ src/** tsconfig.json tslint.json *.vsix -logs/** \ No newline at end of file +logs/** +.markdownlint.json +CODEOWNERS +gulpfile.js +Jenkinsfile +LICENSE_HEADER +webpack.config.js +dco_signoffs +docs +i18n +scripts +node_modules/** +!node_modules/vscode-nls/** \ No newline at end of file diff --git a/package.json b/package.json index bf579b8109..f5f3e013a0 100644 --- a/package.json +++ b/package.json @@ -988,7 +988,7 @@ } }, "scripts": { - "vscode:prepublish": "npm run build && npm run lint && npm run update", + "vscode:prepublish": "gulp build && npm run license && npm run lint && webpack --mode production --vscode-nls", "build": "gulp build && npm run license && webpack --mode development --vscode-nls && npm run update", "postinstall": "node ./node_modules/vscode/bin/install", "test:unit": "jest \".*__tests__.*\\.unit\\.test\\.ts\" --coverage", From 033d13f9153d444789f2072c4a82360c5663ce6a Mon Sep 17 00:00:00 2001 From: Lauren Li Date: Wed, 29 Apr 2020 14:53:14 -0400 Subject: [PATCH 08/30] Update dependencies from merge Signed-off-by: Lauren Li --- package-lock.json | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/package-lock.json b/package-lock.json index acba105cf8..e7d6c81ab7 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "vscode-extension-for-zowe", - "version": "1.4.1", + "version": "1.5.0", "lockfileVersion": 1, "requires": true, "dependencies": { @@ -9644,6 +9644,12 @@ "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==" }, + "promise-inflight": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", + "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=", + "dev": true + }, "promise-queue": { "version": "2.2.5", "resolved": "https://registry.npmjs.org/promise-queue/-/promise-queue-2.2.5.tgz", From eb7def19c61f9fff90fa76815716561942e6b829 Mon Sep 17 00:00:00 2001 From: Lauren Li Date: Fri, 1 May 2020 05:40:40 -0400 Subject: [PATCH 09/30] Use out folder for all generated files Signed-off-by: Lauren Li --- .gitignore | 4 +- .vscode/launch.json | 2 +- gulpfile.js | 4 +- .../src/KeytarCredentialManager.i18n.json | 11 --- i18n/sample/src/Profiles.i18n.json | 28 -------- .../src/api/ZoweExplorerApiRegister.i18n.json | 8 --- .../src/api/ZoweExplorerZosmfApi.i18n.json | 3 - .../src/command/MvsCommandHandler.i18n.json | 13 ---- i18n/sample/src/dataset/DatasetTree.i18n.json | 22 ------ .../src/dataset/ZoweDatasetNode.i18n.json | 8 --- i18n/sample/src/dataset/actions.i18n.json | 72 ------------------- i18n/sample/src/extension.i18n.json | 24 ------- i18n/sample/src/job/ZosJobsProvider.i18n.json | 18 ----- i18n/sample/src/job/ZoweJobNode.i18n.json | 5 -- i18n/sample/src/job/actions.i18n.json | 8 --- i18n/sample/src/job/utils.i18n.json | 4 -- i18n/sample/src/shared/actions.i18n.json | 10 --- i18n/sample/src/shared/utils.i18n.json | 8 --- i18n/sample/src/uss/USSTree.i18n.json | 17 ----- i18n/sample/src/uss/ZoweUSSNode.i18n.json | 19 ----- i18n/sample/src/uss/actions.i18n.json | 11 --- i18n/sample/src/utils.i18n.json | 4 -- i18n/sample/src/utils/profileLink.i18n.json | 8 --- package.json | 2 +- package.nls.fr.json | 3 + scripts/stringUpdateScript.js | 4 +- webpack.config.js | 6 +- 27 files changed, 14 insertions(+), 312 deletions(-) delete mode 100644 i18n/sample/src/KeytarCredentialManager.i18n.json delete mode 100644 i18n/sample/src/Profiles.i18n.json delete mode 100644 i18n/sample/src/api/ZoweExplorerApiRegister.i18n.json delete mode 100644 i18n/sample/src/api/ZoweExplorerZosmfApi.i18n.json delete mode 100644 i18n/sample/src/command/MvsCommandHandler.i18n.json delete mode 100644 i18n/sample/src/dataset/DatasetTree.i18n.json delete mode 100644 i18n/sample/src/dataset/ZoweDatasetNode.i18n.json delete mode 100644 i18n/sample/src/dataset/actions.i18n.json delete mode 100644 i18n/sample/src/extension.i18n.json delete mode 100644 i18n/sample/src/job/ZosJobsProvider.i18n.json delete mode 100644 i18n/sample/src/job/ZoweJobNode.i18n.json delete mode 100644 i18n/sample/src/job/actions.i18n.json delete mode 100644 i18n/sample/src/job/utils.i18n.json delete mode 100644 i18n/sample/src/shared/actions.i18n.json delete mode 100644 i18n/sample/src/shared/utils.i18n.json delete mode 100644 i18n/sample/src/uss/USSTree.i18n.json delete mode 100644 i18n/sample/src/uss/ZoweUSSNode.i18n.json delete mode 100644 i18n/sample/src/uss/actions.i18n.json delete mode 100644 i18n/sample/src/utils.i18n.json delete mode 100644 i18n/sample/src/utils/profileLink.i18n.json diff --git a/.gitignore b/.gitignore index b165e45c88..7673c557f8 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,4 @@ node_modules -dist out logs resources/temp @@ -12,4 +11,5 @@ vscode-extension-for-zowe*.vsix .vscode/settings.json .history .DS_Store -.idea \ No newline at end of file +.idea +i18n \ No newline at end of file diff --git a/.vscode/launch.json b/.vscode/launch.json index 1e591b13ae..50200edd07 100644 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -28,7 +28,7 @@ "--verbose" ], "outFiles": [ - "${workspaceFolder}/dist/**/*.js" + "${workspaceFolder}/out/src/**/*.js" ], "preLaunchTask": "npm: build", "smartStep": true diff --git a/gulpfile.js b/gulpfile.js index 293876a85d..64314af838 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -19,7 +19,7 @@ const del = require('del'); const nls = require('vscode-nls-dev'); const tsProject = ts.createProject('./tsconfig.json', { typescript }); -const outDest = 'dist'; +const outDest = 'out/src'; // If all VS Code languages are supported, you can use nls.coreLanguages // For new languages, add { folderName: 'ISO-639-3-Code-for-language', id: 'vscode-locale-id' } to array below @@ -28,7 +28,7 @@ const outDest = 'dist'; const languages = [{folderName:'fra', id:'fr'}]; /* ********************************************************************************* */ const cleanTask = function() { - return del(['dist/**', 'package.nls.*.json', 'vscode-extension-for-zowe*.vsix']); + return del(['out/**', 'package.nls.*.json', 'vscode-extension-for-zowe*.vsix']); } const generateI18nTask = function() { diff --git a/i18n/sample/src/KeytarCredentialManager.i18n.json b/i18n/sample/src/KeytarCredentialManager.i18n.json deleted file mode 100644 index b3c7097958..0000000000 --- a/i18n/sample/src/KeytarCredentialManager.i18n.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "errorHandling.deleteCredentials": "Unable to delete credentials.", - "errorHandling.loadCredentials": "Unable to load credentials.", - "credentials.missingEntryMessage.1": "Could not find an entry in the credential vault for the following:\n", - "credentials.missingEntryMessage.2": " Service = {0}\n", - "credentials.missingEntryMessage.3": " Account = {0}\n\n", - "credentials.missingEntryMessage.4": "Possible Causes:\n", - "credentials.missingEntryMessage.5": " This could have been caused by any manual removal of credentials from your vault.\n\n", - "credentials.missingEntryMessage.6": "Resolutions:\n", - "credentials.missingEntryMessage.7": " Recreate the credentials in the vault for the particular service in the vault." -} \ No newline at end of file diff --git a/i18n/sample/src/Profiles.i18n.json b/i18n/sample/src/Profiles.i18n.json deleted file mode 100644 index ffc0f9979e..0000000000 --- a/i18n/sample/src/Profiles.i18n.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "ussNodeActions.error": "Error encountered in ", - "loadNamedProfile.error.profileName": "Could not find profile named: ", - "loadNamedProfile.error.period": ".", - "createNewConnection.invalidzosmfURL": "Please enter a valid URL in the format https://url:port.", - "editConnection.success": "Profile was successfully updated", - "createNewConnection.duplicateProfileName": "Profile name already exists. Please create a profile using a different name", - "deleteProfile.noProfilesLoaded": "No profiles available", - "deleteProfile.quickPickOption": "Are you sure you want to permanently delete ", - "deleteProfile.undefined.profilename": "Operation Cancelled", - "deleteProfile.log.debug": "Deleting profile ", - "deleteProfile.showQuickPick.yes": "Yes", - "deleteProfile.showQuickPick.no": "No", - "deleteProfile.showQuickPick.log.debug": "User picked no. Cancelling delete of profile", - "deleteProfile.delete.log.error": "Error encountered when deleting profile! ", - "deleteProfile.noSelected": "Operation Cancelled", - "createNewConnection.option.prompt.url.placeholder": "https://url:port", - "createNewConnection.option.prompt.url": "Enter a z/OSMF URL in the format 'https://url:port'.", - "createNewConnection.zosmfURL": "No valid value for z/OSMF URL. Operation Cancelled", - "createNewConnection.option.prompt.username.placeholder": "Optional: User Name", - "createNewConnection.option.prompt.username": "Enter the user name for the connection. Leave blank to not store.", - "createNewConnection.undefined.username": "Operation Cancelled", - "createNewConnection.option.prompt.password.placeholder": "Optional: Password", - "createNewConnection.option.prompt.password": "Enter the password for the connection. Leave blank to not store.", - "createNewConnection.undefined.passWord": "Operation Cancelled", - "createNewConnection.option.prompt.ru.placeholder": "Reject Unauthorized Connections", - "createNewConnection.rejectUnauthorize": "Operation Cancelled" -} \ No newline at end of file diff --git a/i18n/sample/src/api/ZoweExplorerApiRegister.i18n.json b/i18n/sample/src/api/ZoweExplorerApiRegister.i18n.json deleted file mode 100644 index 454166cb1e..0000000000 --- a/i18n/sample/src/api/ZoweExplorerApiRegister.i18n.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "registerUssApi.error": "Internal error: A Zowe Explorer extension client tried to register an invalid USS API.", - "registerMvsApi.error": "Internal error: A Zowe Explorer extension client tried to register an invalid MVS API.", - "registerJesApi.error": "Internal error: A Zowe Explorer extension client tried to register an invalid JES API.", - "getUssApi.error": "Internal error: Tried to call a non-existing USS API in API register: ", - "getMvsApi.error": "Internal error: Tried to call a non-existing MVS API in API register: ", - "getJesApi.error": "Internal error: Tried to call a non-existing JES API in API register: " -} \ No newline at end of file diff --git a/i18n/sample/src/api/ZoweExplorerZosmfApi.i18n.json b/i18n/sample/src/api/ZoweExplorerZosmfApi.i18n.json deleted file mode 100644 index 2ad8483f86..0000000000 --- a/i18n/sample/src/api/ZoweExplorerZosmfApi.i18n.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "api.zosmfUSSApi.putContents": "Uploading USS file" -} \ No newline at end of file diff --git a/i18n/sample/src/command/MvsCommandHandler.i18n.json b/i18n/sample/src/command/MvsCommandHandler.i18n.json deleted file mode 100644 index e4aca1128a..0000000000 --- a/i18n/sample/src/command/MvsCommandHandler.i18n.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "issueMvsCommand.outputchannel.title": "Zowe MVS Command", - "issueMvsCommand.quickPickOption": "Select the Profile to use to submit the command", - "issueMvsCommand.noProfilesLoaded": "No profiles available", - "issueMvsCommand.command.hostname": "Select a command to run immediately against ", - "issueMvsCommand.command.edit": " (An option to edit will follow)", - "issueMvsCommand.options.noselection": "No selection made.", - "issueMvsCommand.command.hostnameAlt": "Select a command to run against ", - "issueMvsCommand.command": "Enter or update the command", - "issueMvsCommand.enter.command": "No command entered.", - "issueMvsCommand.command.submitted": "MVS command submitted.", - "command.option.prompt.search": "Create a new Command" -} \ No newline at end of file diff --git a/i18n/sample/src/dataset/DatasetTree.i18n.json b/i18n/sample/src/dataset/DatasetTree.i18n.json deleted file mode 100644 index 95f03f8f91..0000000000 --- a/i18n/sample/src/dataset/DatasetTree.i18n.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "Favorites": "Favorites", - "initializeFavorites.log.debug": "initializing favorites", - "initializeFavorites.error.profile1": "Error: You have Zowe Data Set favorites that refer to a non-existent CLI profile named: ", - "intializeFavorites.error.profile2": ". To resolve this, you can create a profile with this name, ", - "initializeFavorites.error.profile3": "or remove the favorites with this profile name from the Zowe-DS-Persistent setting, which can be found in your ", - "initializeFavorites.error.profile4": " user settings.", - "loadNamedProfile.error.profileName": "Initialization Error: Could not find profile named: ", - "loadNamedProfile.error.period": ".", - "initializeFavorites.fileCorrupted": "Favorites file corrupted: ", - "addFavorite": "PDS already in favorites", - "findParentNode.unsuccessful": "Node does not exist. It may have been deleted.", - "enterPattern.log.debug.prompt": "Prompting the user for a data set pattern", - "searchHistory.options.prompt": "Select a filter", - "enterPattern.pattern": "No selection made.", - "enterPattern.options.prompt": "Search data sets by entering patterns: use a comma to separate multiple patterns", - "datasetFilterPrompt.enterPattern": "You must enter a pattern.", - "renameDataSet.log.debug": "Renaming data set ", - "renameDataSet.log.error": "Error encountered when renaming data set! ", - "renameDataSet.error": "Unable to rename data set: ", - "defaultFilterPrompt.option.prompt.search": "Create a new filter. Comma separate multiple entries (pattern 1, pattern 2, ...)" -} \ No newline at end of file diff --git a/i18n/sample/src/dataset/ZoweDatasetNode.i18n.json b/i18n/sample/src/dataset/ZoweDatasetNode.i18n.json deleted file mode 100644 index 878421c64a..0000000000 --- a/i18n/sample/src/dataset/ZoweDatasetNode.i18n.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "getChildren.search": "Use the search button to display datasets", - "getChildren.error.invalidNode": "Invalid node", - "ZoweJobNode.getJobs.progress": "Get Dataset list command submitted.", - "getChildren.responses.error": "The response from Zowe CLI was not successful", - "getChildren.noDataset": "No datasets found", - "getChildren.error.response": "Retrieving response from " -} \ No newline at end of file diff --git a/i18n/sample/src/dataset/actions.i18n.json b/i18n/sample/src/dataset/actions.i18n.json deleted file mode 100644 index b04b6a3038..0000000000 --- a/i18n/sample/src/dataset/actions.i18n.json +++ /dev/null @@ -1,72 +0,0 @@ -{ - "enterPattern.pattern": "You must enter a pattern.", - "createMember.inputBox": "Name of Member", - "createMember.log.debug.createNewDataSet": "creating new data set member of name ", - "createMember.log.error": "Error encountered when creating member! ", - "createMember.error": "Unable to create member: ", - "openPS.invalidNode": "openPS() called from invalid node.", - "openPS.error.invalidNode": "openPS() called from invalid node. ", - "openPS.log.debug.openDataSet": "opening physical sequential data set from label ", - "openPS.log.error.openDataSet": "Error encountered when opening data set! ", - "createFile.quickPickOption.dataSetType": "Type of Data Set to be Created", - "createFile.dataSetBinary": "Data Set Binary", - "createFile.dataSetC": "Data Set C", - "createFile.dataSetClassic": "Data Set Classic", - "createFile.dataSetPartitioned": "Data Set Partitioned", - "createFile.dataSetSequential": "Data Set Sequential", - "createFile.log.debug.noValidTypeSelected": "No valid data type selected", - "createFile.log.debug.creatingNewDataSet": "Creating new data set", - "dataset.name": "Name of Data Set", - "createDataSet.error": "Error encountered when creating data set! ", - "showDSAttributes.debug": "showing attributes of data set ", - "showDSAttributes.lengthError": "No matching data set names found for query: ", - "showDSAttributes.log.error": "Error encountered when listing attributes! ", - "showDSAttributes.error": "Unable to list attributes: ", - "attributes.title": "Attributes", - "renameDataSet.log.debug": "Renaming data set ", - "renameDataSet.log.error": "Error encountered when renaming data set! ", - "renameDataSet.error": "Unable to rename data set: ", - "submitJcl.noDocumentOpen": "No editor with a document that could be submitted as JCL is currently open.", - "submitJcl.log.debug": "Submitting JCL in document ", - "submitJcl.quickPickOption": "Select the Profile to use to submit the job", - "submitJcl.noProfile": "No profiles available", - "submitJcl.log.error.nullSession": "Session for submitting JCL was null or undefined!", - "submitJcl.jobSubmitted": "Job submitted ", - "submitJcl.jobSubmissionFailed": "Job submission failed\n", - "submitMember.invalidNode": "submitMember() called from invalid node.", - "submitMember.error.invalidNode": "submitMember() called from invalid node.", - "submitMember.jobSubmitted": "Job submitted ", - "submitMember.jobSubmissionFailed": "Job submission failed\n", - "deleteDataset.log.debug": "Deleting data set ", - "deleteDataset.quickPickOption": "Are you sure you want to delete ", - "deleteDataset.showQuickPick.yes": "Yes", - "deleteDataset.showQuickPick.no": "No", - "deleteDataset.showQuickPick.log.debug": "User picked no. Cancelling delete of data set", - "deleteDataSet.invalidNode.error": "deleteDataSet() called from invalid node.", - "deleteDataSet.delete.log.error": "Error encountered when deleting data set! ", - "deleteDataSet.error.notFound": "not found", - "deleteDataSet.notFound.error1": "Unable to find file: ", - "deleteDataSet.notFound.error2": " was probably already deleted.", - "refreshPS.error.invalidNode": "refreshPS() called from invalid node.", - "refreshPS.log.error.refresh": "Error encountered when refreshing data set view: ", - "refreshPS.error.notFound": "not found", - "refreshPS.file1": "Unable to find file: ", - "refreshPS.file2": " was probably deleted.", - "enterPattern.log.debug.prompt": "Prompting the user for a data set pattern", - "enterPattern.options.prompt": "Search data sets by entering patterns: use a comma to separate multiple patterns", - "hMigrate.requestSent1": "Migration of dataset: ", - "hMigrate.requestSent2": " requested.", - "renameDataSet.name": "Name of Data Set Member", - "saveFile.log.debug.request": "requested to save data set: ", - "saveFile.log.debug.path": "path.relative returned a non-blank directory.", - "saveFile.log.debug.directory": "Assuming we are not in the DS_DIR directory: ", - "sessions.favorites.name": "Favorites", - "saveFile.log.error.session": "Couldn't locate session when saving data set!", - "saveFile.log.debug.load": "Loading session from session node in saveFile()", - "saveFile.log.debug.sessionNode": "couldn't find session node, loading profile with CLI profile manager", - "saveFile.log.debug.saving": "Saving file ", - "saveFile.error.saveFailed": "Data set failed to save. Data set may have been deleted on mainframe.", - "saveFile.response.save.title": "Saving data set...", - "saveFile.error.ZosmfEtagMismatchError": "Rest API failure with HTTP(S) status 412", - "saveFile.error.etagMismatch": "Remote file has been modified in the meantime.\nSelect 'Compare' to resolve the conflict." -} \ No newline at end of file diff --git a/i18n/sample/src/extension.i18n.json b/i18n/sample/src/extension.i18n.json deleted file mode 100644 index 842df04e10..0000000000 --- a/i18n/sample/src/extension.i18n.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "initialize.log.debug": "Initialized logger from VSCode extension", - "displayName": "Zowe Explorer", - "initialize.log.error": "Error encountered while activating and initializing logger! ", - "onDidSaveTextDocument1": "File was saved -- determining whether the file is a USS file or Data set.\n Comparing (case insensitive) ", - "onDidSaveTextDocument2": " against directory ", - "onDidSaveTextDocument3": "and", - "activate.didSaveText.isDataSet": "File is a data set-- saving ", - "activate.didSaveText.isUSSFile": "File is a USS file -- saving", - "activate.didSaveText.file": "File ", - "activate.didSaveText.notDataSet": " is not a data set or USS file ", - "profile.init.read.imperative": "Unable to read imperative file. ", - "initialize.module.load": "Credentials not managed, unable to load security file: ", - "moveTempFolder.error": "Error encountered when creating temporary folder! ", - "addSession.quickPickOption": "Choose \"Create new...\" to define a new profile or select an existing profile to Add to the USS Explorer", - "enterPattern.pattern": "No selection made.", - "createNewConnection.option.prompt.profileName.placeholder": "Connection Name", - "createNewConnection.option.prompt.profileName": "Enter a name for the connection", - "createNewConnection.enterprofileName": "Profile Name was not supplied. Operation Cancelled", - "addSession.log.debug.createNewProfile": "User created a new profile", - "addZoweSession.log.debug.selectProfile": "User selected profile ", - "addZoweSession.log.debug.cancelledSelection": "User cancelled profile selection", - "deactivate.error": "Unable to delete temporary folder. " -} \ No newline at end of file diff --git a/i18n/sample/src/job/ZosJobsProvider.i18n.json b/i18n/sample/src/job/ZosJobsProvider.i18n.json deleted file mode 100644 index 8f2e64e936..0000000000 --- a/i18n/sample/src/job/ZosJobsProvider.i18n.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "Favorites": "Favorites", - "deleteJob.job": "Job ", - "deleteJob.delete": " deleted", - "initializeFavorites.log.debug": "initializing favorites", - "initializeJobsFavorites.error.profile1": "Error: You have Jobs favorites that refer to a non-existent CLI profile named: ", - "initializeJobsFavorites.error.profile2": ". To resolve this, you can create a profile with this name, ", - "initializeJobsFavorites.error.profile3": "or remove the favorites with this profile name from the Zowe-Jobs-Persistent setting, which can be found in your ", - "initializeJobsFavorites.error.profile4": " user settings.", - "searchHistory.options.prompt": "Select a filter", - "enterPattern.pattern": "No selection made.", - "jobsFilterPrompt.option.prompt.owner": "Enter the Job Owner. Default is *.", - "jobs.enter.valid.owner": "Please enter a valid owner name (no spaces allowed).", - "jobsFilterPrompt.enterPrefix": "Search Cancelled", - "jobsFilterPrompt.option.prompt.prefix": "Enter a Job prefix. Default is *.", - "jobsFilterPrompt.option.prompt.jobid": "Enter a Job id", - "SpecifyCriteria": "Create new.." -} \ No newline at end of file diff --git a/i18n/sample/src/job/ZoweJobNode.i18n.json b/i18n/sample/src/job/ZoweJobNode.i18n.json deleted file mode 100644 index f012b6cb79..0000000000 --- a/i18n/sample/src/job/ZoweJobNode.i18n.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "ZoweJobNode.getJobs.spoolfiles": "Get Job Spool files command submitted.", - "ZoweJobNode.getJobs.jobs": "Get Jobs command submitted.", - "getChildren.error.response": "Retrieving response from " -} \ No newline at end of file diff --git a/i18n/sample/src/job/actions.i18n.json b/i18n/sample/src/job/actions.i18n.json deleted file mode 100644 index 5e4498987f..0000000000 --- a/i18n/sample/src/job/actions.i18n.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "downloadSpool.select": "Select", - "modifyCommand.command.prompt": "Modify Command", - "modifyCommand.response": "Command response: ", - "stopCommand.response": "Command response: ", - "setOwner.newOwner.prompt.owner": "Owner", - "setOwner.newOwner.prompt.prefix": "Prefix" -} \ No newline at end of file diff --git a/i18n/sample/src/job/utils.i18n.json b/i18n/sample/src/job/utils.i18n.json deleted file mode 100644 index 5ccbc6db31..0000000000 --- a/i18n/sample/src/job/utils.i18n.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "zosJobsProvider.option.prompt.createId": "Job Id search", - "zosJobsProvider.option.prompt.createOwner": "Owner/Prefix Job Search" -} \ No newline at end of file diff --git a/i18n/sample/src/shared/actions.i18n.json b/i18n/sample/src/shared/actions.i18n.json deleted file mode 100644 index 47f2a55d77..0000000000 --- a/i18n/sample/src/shared/actions.i18n.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "searchHistory.options.prompt": "Enter a filter", - "searchInAllLoadedItems.noneLoaded": "No items are loaded in the tree.", - "searchInAllLoadedItems.enterPattern": "You must enter a pattern.", - "enterPattern.log.debug.prompt": "Prompting the user to choose a recent member for editing", - "memberHistory.option.prompt.open": "Select a recent member to open", - "memberHistory.options.prompt": "Select a recent member to open", - "enterPattern.pattern": "No selection made.", - "getRecentMembers.empty": "No recent members found." -} \ No newline at end of file diff --git a/i18n/sample/src/shared/utils.i18n.json b/i18n/sample/src/shared/utils.i18n.json deleted file mode 100644 index 90abf60db9..0000000000 --- a/i18n/sample/src/shared/utils.i18n.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "saveFile.response.save.title": "Saving data set...", - "saveUSSFile.response.title": "Saving file...", - "saveFile.error.theiaDetected": "A merge conflict has been detected. Since you are running inside Theia editor, a merge conflict resolution is not available yet.", - "saveFile.info.confirmUpload": "Would you like to overwrite the remote file?", - "saveFile.overwriteConfirmation.yes": "Yes", - "saveFile.overwriteConfirmation.no": "No" -} \ No newline at end of file diff --git a/i18n/sample/src/uss/USSTree.i18n.json b/i18n/sample/src/uss/USSTree.i18n.json deleted file mode 100644 index e75bdf2e09..0000000000 --- a/i18n/sample/src/uss/USSTree.i18n.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "Favorites": "Favorites", - "renameUSSNode.error": "Unable to rename node: ", - "enterPattern.log.debug.prompt": "Prompting the user to choose a member from the filtered list", - "filterPrompt.log.debug.promptUSSPath": "Prompting the user for a USS path", - "searchHistory.options.prompt": "Select a filter", - "enterPattern.pattern": "No selection made.", - "filterPrompt.option.prompt.search": "Create a new filter", - "filterPrompt.enterPath": "You must enter a path.", - "initializeFavorites.log.debug": "initializing favorites", - "initializeUSSFavorites.lines.title": "Open", - "initializeUSSFavorites.error.profile1": "Error: You have Zowe USS favorites that refer to a non-existent CLI profile named: ", - "intializeUSSFavorites.error.profile2": ". To resolve this, you can create a profile with this name, ", - "initializeUSSFavorites.error.profile3": "or remove the favorites with this profile name from the Zowe-USS-Persistent setting, which can be found in your ", - "initializeUSSFavorites.error.profile4": " user settings.", - "findUSSItem.unsuccessful": "File does not exist. It may have been deleted." -} \ No newline at end of file diff --git a/i18n/sample/src/uss/ZoweUSSNode.i18n.json b/i18n/sample/src/uss/ZoweUSSNode.i18n.json deleted file mode 100644 index 5812c8dcc9..0000000000 --- a/i18n/sample/src/uss/ZoweUSSNode.i18n.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "getChildren.error.invalidNode": "Invalid node", - "ZoweUssNode.getList.progress": "Get USS file list command submitted.", - "getChildren.error.response": "Retrieving response from ", - "getChildren.responses.error.response": "The response from Zowe CLI was not successful", - "getChildren.responses.open": "Open", - "deleteUSSNode.quickPickOption": "Are you sure you want to delete ", - "deleteUSSNode.showQuickPick.yes": "Yes", - "deleteUSSNode.showQuickPick.no": "No", - "deleteUSSNode.error.node": "Unable to delete node: ", - "openUSS.error.invalidNode": "open() called from invalid node.", - "refreshUSS.error.invalidNode": "refreshUSS() called from invalid node.", - "refreshUSS.error.notFound": "not found", - "refreshUSS.file1": "Unable to find file: ", - "refreshUSS.file2": " was probably deleted.", - "openUSS.log.info.failedToOpenAsText.yes": "Yes, re-download", - "openUSS.log.info.failedToOpenAsText.no": "No", - "openUSS.log.info.failedToOpenAsText": "Failed to open file as text. Do you want to try with re-downloading it as binary?" -} \ No newline at end of file diff --git a/i18n/sample/src/uss/actions.i18n.json b/i18n/sample/src/uss/actions.i18n.json deleted file mode 100644 index 9ebe20eafd..0000000000 --- a/i18n/sample/src/uss/actions.i18n.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "createUSSNode.name": "Name of file or directory", - "createUSSNode.error.create": "Unable to create node: ", - "renameUSSNode.error": "Unable to rename node: ", - "copyPath.infoMessage": "Copy Path is not yet supported in Theia.", - "saveUSSFile.log.debug.saveRequest": "save requested for USS file ", - "saveUSSFile.response.title": "Saving file...", - "saveFile.error.ZosmfEtagMismatchError": "Rest API failure with HTTP(S) status 412", - "saveFile.error.etagMismatch": "Remote file has been modified in the meantime.\nSelect 'Compare' to resolve the conflict.", - "saveUSSFile.log.error.save": "Error encountered when saving USS file: " -} \ No newline at end of file diff --git a/i18n/sample/src/utils.i18n.json b/i18n/sample/src/utils.i18n.json deleted file mode 100644 index ae1e8092fe..0000000000 --- a/i18n/sample/src/utils.i18n.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "errorHandling.invalid.credentials": "Invalid Credentials. Please ensure the username and password for ", - "errorHandling.invalid.credentials2": " are valid or this may lead to a lock-out." -} \ No newline at end of file diff --git a/i18n/sample/src/utils/profileLink.i18n.json b/i18n/sample/src/utils/profileLink.i18n.json deleted file mode 100644 index e2ab4da936..0000000000 --- a/i18n/sample/src/utils/profileLink.i18n.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "profileLink.notTreeItem": "Tree Item is not a Zowe Explorer item.", - "profileLink.selectAltProfile": "Select a type of alternative profile to associate with this primary profile", - "profileLink.selectFileName": "Select the file name to associate with this primary profile", - "profileLink.associated": "Associated secondary profile {0}:{1} with {2}:{3} primary.", - "profileLink.unableToSave": "Unable to save profile association. ", - "profileLink.missingProfile": "Attempted to load a missing profile." -} \ No newline at end of file diff --git a/package.json b/package.json index 868d8eb55a..17535c03f1 100644 --- a/package.json +++ b/package.json @@ -31,7 +31,7 @@ "activationEvents": [ "*" ], - "main": "./dist/extension", + "main": "./out/src/extension", "contributes": { "viewsContainers": { "activitybar": [ diff --git a/package.nls.fr.json b/package.nls.fr.json index ecef3a193b..7bcada721e 100644 --- a/package.nls.fr.json +++ b/package.nls.fr.json @@ -12,6 +12,7 @@ "addFavorite": "Add to Favorites", "uss.addFavorite": "Add to Favorites", "addSession": "Add Profile", + "editSession": "Update Profile", "createDataset": "Créer un nouveau fichier", "createMember": "Create New Member", "showDSAttributes": "Show Data Set Attributes", @@ -68,6 +69,8 @@ "Zowe-Default-Commands-Persistent-Favorites": "Toggle if Commands persist locally", "Zowe-Environment": "Environment where the extension is running, default is VSCode", "issueMvsCmd": "Zowe: Issue MVS Command...", + "deleteProfile": "Delete Profile", + "cmd.deleteProfile": "Zowe: Delete a Profile Permanently...", "rename": "Rename", "copy": "Copy", "paste": "Paste", diff --git a/scripts/stringUpdateScript.js b/scripts/stringUpdateScript.js index 50452030cd..8db9808a74 100644 --- a/scripts/stringUpdateScript.js +++ b/scripts/stringUpdateScript.js @@ -16,7 +16,7 @@ const path = require("path"); // Clean out i18n samples directory fse.emptyDirSync("./i18n/sample"); -for (const metadataJson of require("glob").sync("./dist/src/**/*.nls.metadata.json")) { +for (const metadataJson of require("glob").sync("./out/src/**/*.nls.metadata.json")) { // Read localization metadata files const parsedData = JSON.parse(fse.readFileSync(metadataJson).toString()); const keysPairsData = {}; @@ -28,7 +28,7 @@ for (const metadataJson of require("glob").sync("./dist/src/**/*.nls.metadata.js } // Write to i18n sample folder to create template for new languages - const i18nJson = metadataJson.replace("./dist/", "./i18n/sample/").replace(".nls.metadata.json", ".i18n.json"); + const i18nJson = metadataJson.replace("./out/", "./i18n/sample/").replace(".nls.metadata.json", ".i18n.json"); fse.ensureDirSync(path.dirname(i18nJson)); fse.writeFileSync(i18nJson, JSON.stringify(keysPairsData, null, 4)); } diff --git a/webpack.config.js b/webpack.config.js index e075c6dabf..68569be16a 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -22,8 +22,8 @@ const config = { target: 'node', // vscode extensions run in a Node.js-context 📖 -> https://webpack.js.org/configuration/node/ // mode:'development', entry: './src/extension.ts', // the entry point of this extension, 📖 -> https://webpack.js.org/configuration/entry-context/ - output: { // the bundle is stored in the 'dist' folder (check package.json), 📖 -> https://webpack.js.org/configuration/output/ - path: path.resolve(__dirname, 'dist'), + output: { // the bundle is stored in the 'out/src' folder (check package.json), 📖 -> https://webpack.js.org/configuration/output/ + path: path.resolve(__dirname, 'out/src'), filename: 'extension.js', libraryTarget: "commonjs2", devtoolModuleFilenameTemplate: "../[resource-path]", @@ -70,7 +70,7 @@ const config = { ] } -// Generates source code folder hierarchy nls metadata files in the output folder (e.g. dist) +// Generates source code folder hierarchy nls metadata files in the output folder (e.g. out/src) if (process.argv.includes('--vscode-nls')) { // rewrite nls call when being asked for config.module.rules.unshift({ From 51760f84e3b33c3d78444e17e2a4240c8cc7df1b Mon Sep 17 00:00:00 2001 From: Lauren Li Date: Fri, 1 May 2020 16:26:57 -0400 Subject: [PATCH 10/30] Use separate builds for integration tests vs webpack Signed-off-by: Lauren Li --- .vscode/launch.json | 2 +- .vscode/tasks.json | 11 +++++++++++ package.json | 1 + src/globals.ts | 1 + tsconfig.json | 7 ++++++- 5 files changed, 20 insertions(+), 2 deletions(-) diff --git a/.vscode/launch.json b/.vscode/launch.json index 50200edd07..e227f155b7 100644 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -45,7 +45,7 @@ "outFiles": [ "${workspaceFolder}/out/__tests__/**/*.js" ], - "preLaunchTask": "npm: watch" + "preLaunchTask": "Pretest" } ] } diff --git a/.vscode/tasks.json b/.vscode/tasks.json index 1c7c3c99e2..5f8a3457e1 100644 --- a/.vscode/tasks.json +++ b/.vscode/tasks.json @@ -25,6 +25,17 @@ "reveal": "never" }, "problemMatcher":["$tsc"] + }, + { + "label": "Pretest", + "group": "build", + "isBackground": false, + "type": "shell", + "command":"npm", + "args": [ + "run", + "build:integration" + ] } ] } \ No newline at end of file diff --git a/package.json b/package.json index 17535c03f1..0efca59591 100644 --- a/package.json +++ b/package.json @@ -1109,6 +1109,7 @@ "scripts": { "vscode:prepublish": "gulp build && npm run license && npm run lint && webpack --mode production --vscode-nls", "build": "gulp build && npm run license && webpack --mode development --vscode-nls && npm run update", + "build:integration": "gulp build && npm run license && tsc --build --pretty", "postinstall": "node ./node_modules/vscode/bin/install", "test:unit": "jest \".*__tests__.*\\.unit\\.test\\.ts\" --coverage", "test:theia": "mocha ./out/__tests__/__theia__/*.theia.test.js --timeout 50000", diff --git a/src/globals.ts b/src/globals.ts index cef0f36515..14637dac0c 100644 --- a/src/globals.ts +++ b/src/globals.ts @@ -71,6 +71,7 @@ export function defineGlobals(tempPath: string | undefined) { */ export function initLogger(context: vscode.ExtensionContext) { const loggerConfig = require("../log4jsconfig.json"); + // const loggerConfig = require(path.join(context.extensionPath, "log4jsconfig.json")); loggerConfig.log4jsConfig.appenders.default.filename = path.join(context.extensionPath, "logs", "imperative.log"); loggerConfig.log4jsConfig.appenders.imperative.filename = path.join(context.extensionPath, "logs", "imperative.log"); loggerConfig.log4jsConfig.appenders.app.filename = path.join(context.extensionPath, "logs", "zowe.log"); diff --git a/tsconfig.json b/tsconfig.json index 755636bfa6..6661182965 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -26,7 +26,12 @@ ], "include": [ "src/**/*.ts", + // Needed in production for vscode-nls localization to work: "./node_modules/vscode/vscode.d.ts", - "./node_modules/vscode/lib/*" + "./node_modules/vscode/lib/*", + // Needed for integration tests to work: + "__tests__", + "resources/testProfileData.example.ts", + "resources/testProfileData.ts" ] } From f675a37b053e5e5f2c5d028752105e7f48b05593 Mon Sep 17 00:00:00 2001 From: Lauren Li Date: Fri, 1 May 2020 20:11:08 -0400 Subject: [PATCH 11/30] Fix paths to work with webpack and out/src Signed-off-by: Lauren Li --- .vscode/launch.json | 2 +- __tests__/__integration__/extension.integration.test.ts | 2 +- __tests__/__unit__/extension.unit.test.ts | 4 ++-- src/extension.ts | 2 +- src/globals.ts | 2 +- src/shared/utils.ts | 4 ++-- 6 files changed, 8 insertions(+), 8 deletions(-) diff --git a/.vscode/launch.json b/.vscode/launch.json index e227f155b7..fa8f4d6a1a 100644 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -28,7 +28,7 @@ "--verbose" ], "outFiles": [ - "${workspaceFolder}/out/src/**/*.js" + "${workspaceFolder}/out/**/*.js" ], "preLaunchTask": "npm: build", "smartStep": true diff --git a/__tests__/__integration__/extension.integration.test.ts b/__tests__/__integration__/extension.integration.test.ts index 7b3f7a3e93..0238433290 100644 --- a/__tests__/__integration__/extension.integration.test.ts +++ b/__tests__/__integration__/extension.integration.test.ts @@ -721,7 +721,7 @@ describe("Extension Integration Tests", () => { }).timeout(TIMEOUT); it("should assign default temp folder, if preference is empty", async () => { - const expectedDefaultTemp = path.join(__dirname, "..", "resources", "temp"); + const expectedDefaultTemp = path.join(__dirname, "..", "..", "..", "resources", "temp"); await vscode.workspace.getConfiguration().update("Zowe-Temp-Folder-Location", { folderPath: "" }, vscode.ConfigurationTarget.Global); expect(ZOWETEMPFOLDER).to.equal(expectedDefaultTemp); diff --git a/__tests__/__unit__/extension.unit.test.ts b/__tests__/__unit__/extension.unit.test.ts index d9a55ca9c6..c276924020 100644 --- a/__tests__/__unit__/extension.unit.test.ts +++ b/__tests__/__unit__/extension.unit.test.ts @@ -675,8 +675,8 @@ describe("Extension Unit Tests", () => { } sampleFavorites[2].command = {command: "zowe.pattern", title: "", arguments: [sampleFavorites[2]]}; sampleFavorites[2].iconPath = { - dark: path.join(__dirname, "..", "resources", "dark", "pattern.svg"), - light: path.join(__dirname, "..", "resources", "light", "pattern.svg") + dark: path.join(__dirname, "..", "..", "resources", "dark", "pattern.svg"), + light: path.join(__dirname, "..", "..", "resources", "light", "pattern.svg") }; // tslint:disable-next-line: no-magic-numbers expect(mkdirSync.mock.calls.length).toBe(4); diff --git a/src/extension.ts b/src/extension.ts index 4a550b72e5..11c5c92369 100644 --- a/src/extension.ts +++ b/src/extension.ts @@ -322,7 +322,7 @@ export function moveTempFolder(previousTempPath: string, currentTempPath: string globals.defineGlobals(currentTempPath); if (previousTempPath === "") { - previousTempPath = path.join(__dirname, "..", "resources"); + previousTempPath = path.join(__dirname, "..", "..", "resources"); } // Make certain that "temp" folder is cleared diff --git a/src/globals.ts b/src/globals.ts index 14637dac0c..3823e40728 100644 --- a/src/globals.ts +++ b/src/globals.ts @@ -58,7 +58,7 @@ export function defineGlobals(tempPath: string | undefined) { // Set temp path & folder paths tempPath !== "" && tempPath !== undefined ? ZOWETEMPFOLDER = path.join(tempPath, "temp") : - ZOWETEMPFOLDER = path.join(__dirname, "..", "resources", "temp"); + ZOWETEMPFOLDER = path.join(__dirname, "..", "..", "resources", "temp"); ZOWE_TMP_FOLDER = path.join(ZOWETEMPFOLDER, "tmp"); USS_DIR = path.join(ZOWETEMPFOLDER, "_U_"); diff --git a/src/shared/utils.ts b/src/shared/utils.ts index bcff2f91a2..e931b9a4b3 100644 --- a/src/shared/utils.ts +++ b/src/shared/utils.ts @@ -42,8 +42,8 @@ export function filterTreeByString(value: string, treeItems: vscode.QuickPickIte */ export function getIconPathInResources(iconFileName: string) { return { - light: path.join(__dirname, "..", "resources", "light", iconFileName), - dark: path.join(__dirname, "..", "resources", "dark", iconFileName) + light: path.join(__dirname, "..", "..", "resources", "light", iconFileName), + dark: path.join(__dirname, "..", "..", "resources", "dark", iconFileName) }; } From 98e408a1a7e78ba0a428bacad1c1c1f7974bed95 Mon Sep 17 00:00:00 2001 From: Lauren Li Date: Mon, 4 May 2020 13:18:29 -0400 Subject: [PATCH 12/30] Update webpack config's devtoolModuleFilenameTemplate for out/src folder Signed-off-by: Lauren Li --- webpack.config.js | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/webpack.config.js b/webpack.config.js index 68569be16a..bafc972a9c 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -26,7 +26,7 @@ const config = { path: path.resolve(__dirname, 'out/src'), filename: 'extension.js', libraryTarget: "commonjs2", - devtoolModuleFilenameTemplate: "../[resource-path]", + devtoolModuleFilenameTemplate: "../../[resource-path]", }, devtool: 'source-map', externals: { @@ -81,5 +81,4 @@ if (process.argv.includes('--vscode-nls')) { }) } - module.exports = config; \ No newline at end of file From 5e2d52cdd2992cb4fa49aba5294ac06b313faa86 Mon Sep 17 00:00:00 2001 From: Lauren Li Date: Mon, 4 May 2020 13:34:17 -0400 Subject: [PATCH 13/30] Update stringUpdateScript for out/src output Signed-off-by: Lauren Li --- .gitignore | 3 +- .../src/KeytarCredentialManager.i18n.json | 11 +++ i18n/sample/src/Profiles.i18n.json | 28 ++++++++ .../src/api/ZoweExplorerApiRegister.i18n.json | 8 +++ .../src/api/ZoweExplorerZosmfApi.i18n.json | 3 + .../src/command/MvsCommandHandler.i18n.json | 13 ++++ i18n/sample/src/dataset/DatasetTree.i18n.json | 22 ++++++ .../src/dataset/ZoweDatasetNode.i18n.json | 8 +++ i18n/sample/src/dataset/actions.i18n.json | 72 +++++++++++++++++++ i18n/sample/src/extension.i18n.json | 24 +++++++ i18n/sample/src/job/ZosJobsProvider.i18n.json | 18 +++++ i18n/sample/src/job/ZoweJobNode.i18n.json | 5 ++ i18n/sample/src/job/actions.i18n.json | 8 +++ i18n/sample/src/job/utils.i18n.json | 4 ++ i18n/sample/src/shared/actions.i18n.json | 10 +++ i18n/sample/src/shared/utils.i18n.json | 8 +++ i18n/sample/src/uss/USSTree.i18n.json | 17 +++++ i18n/sample/src/uss/ZoweUSSNode.i18n.json | 19 +++++ i18n/sample/src/uss/actions.i18n.json | 11 +++ i18n/sample/src/utils.i18n.json | 4 ++ i18n/sample/src/utils/profileLink.i18n.json | 8 +++ scripts/stringUpdateScript.js | 2 +- 22 files changed, 303 insertions(+), 3 deletions(-) create mode 100644 i18n/sample/src/KeytarCredentialManager.i18n.json create mode 100644 i18n/sample/src/Profiles.i18n.json create mode 100644 i18n/sample/src/api/ZoweExplorerApiRegister.i18n.json create mode 100644 i18n/sample/src/api/ZoweExplorerZosmfApi.i18n.json create mode 100644 i18n/sample/src/command/MvsCommandHandler.i18n.json create mode 100644 i18n/sample/src/dataset/DatasetTree.i18n.json create mode 100644 i18n/sample/src/dataset/ZoweDatasetNode.i18n.json create mode 100644 i18n/sample/src/dataset/actions.i18n.json create mode 100644 i18n/sample/src/extension.i18n.json create mode 100644 i18n/sample/src/job/ZosJobsProvider.i18n.json create mode 100644 i18n/sample/src/job/ZoweJobNode.i18n.json create mode 100644 i18n/sample/src/job/actions.i18n.json create mode 100644 i18n/sample/src/job/utils.i18n.json create mode 100644 i18n/sample/src/shared/actions.i18n.json create mode 100644 i18n/sample/src/shared/utils.i18n.json create mode 100644 i18n/sample/src/uss/USSTree.i18n.json create mode 100644 i18n/sample/src/uss/ZoweUSSNode.i18n.json create mode 100644 i18n/sample/src/uss/actions.i18n.json create mode 100644 i18n/sample/src/utils.i18n.json create mode 100644 i18n/sample/src/utils/profileLink.i18n.json diff --git a/.gitignore b/.gitignore index 7673c557f8..10ca0085b3 100644 --- a/.gitignore +++ b/.gitignore @@ -11,5 +11,4 @@ vscode-extension-for-zowe*.vsix .vscode/settings.json .history .DS_Store -.idea -i18n \ No newline at end of file +.idea \ No newline at end of file diff --git a/i18n/sample/src/KeytarCredentialManager.i18n.json b/i18n/sample/src/KeytarCredentialManager.i18n.json new file mode 100644 index 0000000000..b3c7097958 --- /dev/null +++ b/i18n/sample/src/KeytarCredentialManager.i18n.json @@ -0,0 +1,11 @@ +{ + "errorHandling.deleteCredentials": "Unable to delete credentials.", + "errorHandling.loadCredentials": "Unable to load credentials.", + "credentials.missingEntryMessage.1": "Could not find an entry in the credential vault for the following:\n", + "credentials.missingEntryMessage.2": " Service = {0}\n", + "credentials.missingEntryMessage.3": " Account = {0}\n\n", + "credentials.missingEntryMessage.4": "Possible Causes:\n", + "credentials.missingEntryMessage.5": " This could have been caused by any manual removal of credentials from your vault.\n\n", + "credentials.missingEntryMessage.6": "Resolutions:\n", + "credentials.missingEntryMessage.7": " Recreate the credentials in the vault for the particular service in the vault." +} \ No newline at end of file diff --git a/i18n/sample/src/Profiles.i18n.json b/i18n/sample/src/Profiles.i18n.json new file mode 100644 index 0000000000..ffc0f9979e --- /dev/null +++ b/i18n/sample/src/Profiles.i18n.json @@ -0,0 +1,28 @@ +{ + "ussNodeActions.error": "Error encountered in ", + "loadNamedProfile.error.profileName": "Could not find profile named: ", + "loadNamedProfile.error.period": ".", + "createNewConnection.invalidzosmfURL": "Please enter a valid URL in the format https://url:port.", + "editConnection.success": "Profile was successfully updated", + "createNewConnection.duplicateProfileName": "Profile name already exists. Please create a profile using a different name", + "deleteProfile.noProfilesLoaded": "No profiles available", + "deleteProfile.quickPickOption": "Are you sure you want to permanently delete ", + "deleteProfile.undefined.profilename": "Operation Cancelled", + "deleteProfile.log.debug": "Deleting profile ", + "deleteProfile.showQuickPick.yes": "Yes", + "deleteProfile.showQuickPick.no": "No", + "deleteProfile.showQuickPick.log.debug": "User picked no. Cancelling delete of profile", + "deleteProfile.delete.log.error": "Error encountered when deleting profile! ", + "deleteProfile.noSelected": "Operation Cancelled", + "createNewConnection.option.prompt.url.placeholder": "https://url:port", + "createNewConnection.option.prompt.url": "Enter a z/OSMF URL in the format 'https://url:port'.", + "createNewConnection.zosmfURL": "No valid value for z/OSMF URL. Operation Cancelled", + "createNewConnection.option.prompt.username.placeholder": "Optional: User Name", + "createNewConnection.option.prompt.username": "Enter the user name for the connection. Leave blank to not store.", + "createNewConnection.undefined.username": "Operation Cancelled", + "createNewConnection.option.prompt.password.placeholder": "Optional: Password", + "createNewConnection.option.prompt.password": "Enter the password for the connection. Leave blank to not store.", + "createNewConnection.undefined.passWord": "Operation Cancelled", + "createNewConnection.option.prompt.ru.placeholder": "Reject Unauthorized Connections", + "createNewConnection.rejectUnauthorize": "Operation Cancelled" +} \ No newline at end of file diff --git a/i18n/sample/src/api/ZoweExplorerApiRegister.i18n.json b/i18n/sample/src/api/ZoweExplorerApiRegister.i18n.json new file mode 100644 index 0000000000..454166cb1e --- /dev/null +++ b/i18n/sample/src/api/ZoweExplorerApiRegister.i18n.json @@ -0,0 +1,8 @@ +{ + "registerUssApi.error": "Internal error: A Zowe Explorer extension client tried to register an invalid USS API.", + "registerMvsApi.error": "Internal error: A Zowe Explorer extension client tried to register an invalid MVS API.", + "registerJesApi.error": "Internal error: A Zowe Explorer extension client tried to register an invalid JES API.", + "getUssApi.error": "Internal error: Tried to call a non-existing USS API in API register: ", + "getMvsApi.error": "Internal error: Tried to call a non-existing MVS API in API register: ", + "getJesApi.error": "Internal error: Tried to call a non-existing JES API in API register: " +} \ No newline at end of file diff --git a/i18n/sample/src/api/ZoweExplorerZosmfApi.i18n.json b/i18n/sample/src/api/ZoweExplorerZosmfApi.i18n.json new file mode 100644 index 0000000000..2ad8483f86 --- /dev/null +++ b/i18n/sample/src/api/ZoweExplorerZosmfApi.i18n.json @@ -0,0 +1,3 @@ +{ + "api.zosmfUSSApi.putContents": "Uploading USS file" +} \ No newline at end of file diff --git a/i18n/sample/src/command/MvsCommandHandler.i18n.json b/i18n/sample/src/command/MvsCommandHandler.i18n.json new file mode 100644 index 0000000000..e4aca1128a --- /dev/null +++ b/i18n/sample/src/command/MvsCommandHandler.i18n.json @@ -0,0 +1,13 @@ +{ + "issueMvsCommand.outputchannel.title": "Zowe MVS Command", + "issueMvsCommand.quickPickOption": "Select the Profile to use to submit the command", + "issueMvsCommand.noProfilesLoaded": "No profiles available", + "issueMvsCommand.command.hostname": "Select a command to run immediately against ", + "issueMvsCommand.command.edit": " (An option to edit will follow)", + "issueMvsCommand.options.noselection": "No selection made.", + "issueMvsCommand.command.hostnameAlt": "Select a command to run against ", + "issueMvsCommand.command": "Enter or update the command", + "issueMvsCommand.enter.command": "No command entered.", + "issueMvsCommand.command.submitted": "MVS command submitted.", + "command.option.prompt.search": "Create a new Command" +} \ No newline at end of file diff --git a/i18n/sample/src/dataset/DatasetTree.i18n.json b/i18n/sample/src/dataset/DatasetTree.i18n.json new file mode 100644 index 0000000000..95f03f8f91 --- /dev/null +++ b/i18n/sample/src/dataset/DatasetTree.i18n.json @@ -0,0 +1,22 @@ +{ + "Favorites": "Favorites", + "initializeFavorites.log.debug": "initializing favorites", + "initializeFavorites.error.profile1": "Error: You have Zowe Data Set favorites that refer to a non-existent CLI profile named: ", + "intializeFavorites.error.profile2": ". To resolve this, you can create a profile with this name, ", + "initializeFavorites.error.profile3": "or remove the favorites with this profile name from the Zowe-DS-Persistent setting, which can be found in your ", + "initializeFavorites.error.profile4": " user settings.", + "loadNamedProfile.error.profileName": "Initialization Error: Could not find profile named: ", + "loadNamedProfile.error.period": ".", + "initializeFavorites.fileCorrupted": "Favorites file corrupted: ", + "addFavorite": "PDS already in favorites", + "findParentNode.unsuccessful": "Node does not exist. It may have been deleted.", + "enterPattern.log.debug.prompt": "Prompting the user for a data set pattern", + "searchHistory.options.prompt": "Select a filter", + "enterPattern.pattern": "No selection made.", + "enterPattern.options.prompt": "Search data sets by entering patterns: use a comma to separate multiple patterns", + "datasetFilterPrompt.enterPattern": "You must enter a pattern.", + "renameDataSet.log.debug": "Renaming data set ", + "renameDataSet.log.error": "Error encountered when renaming data set! ", + "renameDataSet.error": "Unable to rename data set: ", + "defaultFilterPrompt.option.prompt.search": "Create a new filter. Comma separate multiple entries (pattern 1, pattern 2, ...)" +} \ No newline at end of file diff --git a/i18n/sample/src/dataset/ZoweDatasetNode.i18n.json b/i18n/sample/src/dataset/ZoweDatasetNode.i18n.json new file mode 100644 index 0000000000..878421c64a --- /dev/null +++ b/i18n/sample/src/dataset/ZoweDatasetNode.i18n.json @@ -0,0 +1,8 @@ +{ + "getChildren.search": "Use the search button to display datasets", + "getChildren.error.invalidNode": "Invalid node", + "ZoweJobNode.getJobs.progress": "Get Dataset list command submitted.", + "getChildren.responses.error": "The response from Zowe CLI was not successful", + "getChildren.noDataset": "No datasets found", + "getChildren.error.response": "Retrieving response from " +} \ No newline at end of file diff --git a/i18n/sample/src/dataset/actions.i18n.json b/i18n/sample/src/dataset/actions.i18n.json new file mode 100644 index 0000000000..b04b6a3038 --- /dev/null +++ b/i18n/sample/src/dataset/actions.i18n.json @@ -0,0 +1,72 @@ +{ + "enterPattern.pattern": "You must enter a pattern.", + "createMember.inputBox": "Name of Member", + "createMember.log.debug.createNewDataSet": "creating new data set member of name ", + "createMember.log.error": "Error encountered when creating member! ", + "createMember.error": "Unable to create member: ", + "openPS.invalidNode": "openPS() called from invalid node.", + "openPS.error.invalidNode": "openPS() called from invalid node. ", + "openPS.log.debug.openDataSet": "opening physical sequential data set from label ", + "openPS.log.error.openDataSet": "Error encountered when opening data set! ", + "createFile.quickPickOption.dataSetType": "Type of Data Set to be Created", + "createFile.dataSetBinary": "Data Set Binary", + "createFile.dataSetC": "Data Set C", + "createFile.dataSetClassic": "Data Set Classic", + "createFile.dataSetPartitioned": "Data Set Partitioned", + "createFile.dataSetSequential": "Data Set Sequential", + "createFile.log.debug.noValidTypeSelected": "No valid data type selected", + "createFile.log.debug.creatingNewDataSet": "Creating new data set", + "dataset.name": "Name of Data Set", + "createDataSet.error": "Error encountered when creating data set! ", + "showDSAttributes.debug": "showing attributes of data set ", + "showDSAttributes.lengthError": "No matching data set names found for query: ", + "showDSAttributes.log.error": "Error encountered when listing attributes! ", + "showDSAttributes.error": "Unable to list attributes: ", + "attributes.title": "Attributes", + "renameDataSet.log.debug": "Renaming data set ", + "renameDataSet.log.error": "Error encountered when renaming data set! ", + "renameDataSet.error": "Unable to rename data set: ", + "submitJcl.noDocumentOpen": "No editor with a document that could be submitted as JCL is currently open.", + "submitJcl.log.debug": "Submitting JCL in document ", + "submitJcl.quickPickOption": "Select the Profile to use to submit the job", + "submitJcl.noProfile": "No profiles available", + "submitJcl.log.error.nullSession": "Session for submitting JCL was null or undefined!", + "submitJcl.jobSubmitted": "Job submitted ", + "submitJcl.jobSubmissionFailed": "Job submission failed\n", + "submitMember.invalidNode": "submitMember() called from invalid node.", + "submitMember.error.invalidNode": "submitMember() called from invalid node.", + "submitMember.jobSubmitted": "Job submitted ", + "submitMember.jobSubmissionFailed": "Job submission failed\n", + "deleteDataset.log.debug": "Deleting data set ", + "deleteDataset.quickPickOption": "Are you sure you want to delete ", + "deleteDataset.showQuickPick.yes": "Yes", + "deleteDataset.showQuickPick.no": "No", + "deleteDataset.showQuickPick.log.debug": "User picked no. Cancelling delete of data set", + "deleteDataSet.invalidNode.error": "deleteDataSet() called from invalid node.", + "deleteDataSet.delete.log.error": "Error encountered when deleting data set! ", + "deleteDataSet.error.notFound": "not found", + "deleteDataSet.notFound.error1": "Unable to find file: ", + "deleteDataSet.notFound.error2": " was probably already deleted.", + "refreshPS.error.invalidNode": "refreshPS() called from invalid node.", + "refreshPS.log.error.refresh": "Error encountered when refreshing data set view: ", + "refreshPS.error.notFound": "not found", + "refreshPS.file1": "Unable to find file: ", + "refreshPS.file2": " was probably deleted.", + "enterPattern.log.debug.prompt": "Prompting the user for a data set pattern", + "enterPattern.options.prompt": "Search data sets by entering patterns: use a comma to separate multiple patterns", + "hMigrate.requestSent1": "Migration of dataset: ", + "hMigrate.requestSent2": " requested.", + "renameDataSet.name": "Name of Data Set Member", + "saveFile.log.debug.request": "requested to save data set: ", + "saveFile.log.debug.path": "path.relative returned a non-blank directory.", + "saveFile.log.debug.directory": "Assuming we are not in the DS_DIR directory: ", + "sessions.favorites.name": "Favorites", + "saveFile.log.error.session": "Couldn't locate session when saving data set!", + "saveFile.log.debug.load": "Loading session from session node in saveFile()", + "saveFile.log.debug.sessionNode": "couldn't find session node, loading profile with CLI profile manager", + "saveFile.log.debug.saving": "Saving file ", + "saveFile.error.saveFailed": "Data set failed to save. Data set may have been deleted on mainframe.", + "saveFile.response.save.title": "Saving data set...", + "saveFile.error.ZosmfEtagMismatchError": "Rest API failure with HTTP(S) status 412", + "saveFile.error.etagMismatch": "Remote file has been modified in the meantime.\nSelect 'Compare' to resolve the conflict." +} \ No newline at end of file diff --git a/i18n/sample/src/extension.i18n.json b/i18n/sample/src/extension.i18n.json new file mode 100644 index 0000000000..842df04e10 --- /dev/null +++ b/i18n/sample/src/extension.i18n.json @@ -0,0 +1,24 @@ +{ + "initialize.log.debug": "Initialized logger from VSCode extension", + "displayName": "Zowe Explorer", + "initialize.log.error": "Error encountered while activating and initializing logger! ", + "onDidSaveTextDocument1": "File was saved -- determining whether the file is a USS file or Data set.\n Comparing (case insensitive) ", + "onDidSaveTextDocument2": " against directory ", + "onDidSaveTextDocument3": "and", + "activate.didSaveText.isDataSet": "File is a data set-- saving ", + "activate.didSaveText.isUSSFile": "File is a USS file -- saving", + "activate.didSaveText.file": "File ", + "activate.didSaveText.notDataSet": " is not a data set or USS file ", + "profile.init.read.imperative": "Unable to read imperative file. ", + "initialize.module.load": "Credentials not managed, unable to load security file: ", + "moveTempFolder.error": "Error encountered when creating temporary folder! ", + "addSession.quickPickOption": "Choose \"Create new...\" to define a new profile or select an existing profile to Add to the USS Explorer", + "enterPattern.pattern": "No selection made.", + "createNewConnection.option.prompt.profileName.placeholder": "Connection Name", + "createNewConnection.option.prompt.profileName": "Enter a name for the connection", + "createNewConnection.enterprofileName": "Profile Name was not supplied. Operation Cancelled", + "addSession.log.debug.createNewProfile": "User created a new profile", + "addZoweSession.log.debug.selectProfile": "User selected profile ", + "addZoweSession.log.debug.cancelledSelection": "User cancelled profile selection", + "deactivate.error": "Unable to delete temporary folder. " +} \ No newline at end of file diff --git a/i18n/sample/src/job/ZosJobsProvider.i18n.json b/i18n/sample/src/job/ZosJobsProvider.i18n.json new file mode 100644 index 0000000000..8f2e64e936 --- /dev/null +++ b/i18n/sample/src/job/ZosJobsProvider.i18n.json @@ -0,0 +1,18 @@ +{ + "Favorites": "Favorites", + "deleteJob.job": "Job ", + "deleteJob.delete": " deleted", + "initializeFavorites.log.debug": "initializing favorites", + "initializeJobsFavorites.error.profile1": "Error: You have Jobs favorites that refer to a non-existent CLI profile named: ", + "initializeJobsFavorites.error.profile2": ". To resolve this, you can create a profile with this name, ", + "initializeJobsFavorites.error.profile3": "or remove the favorites with this profile name from the Zowe-Jobs-Persistent setting, which can be found in your ", + "initializeJobsFavorites.error.profile4": " user settings.", + "searchHistory.options.prompt": "Select a filter", + "enterPattern.pattern": "No selection made.", + "jobsFilterPrompt.option.prompt.owner": "Enter the Job Owner. Default is *.", + "jobs.enter.valid.owner": "Please enter a valid owner name (no spaces allowed).", + "jobsFilterPrompt.enterPrefix": "Search Cancelled", + "jobsFilterPrompt.option.prompt.prefix": "Enter a Job prefix. Default is *.", + "jobsFilterPrompt.option.prompt.jobid": "Enter a Job id", + "SpecifyCriteria": "Create new.." +} \ No newline at end of file diff --git a/i18n/sample/src/job/ZoweJobNode.i18n.json b/i18n/sample/src/job/ZoweJobNode.i18n.json new file mode 100644 index 0000000000..f012b6cb79 --- /dev/null +++ b/i18n/sample/src/job/ZoweJobNode.i18n.json @@ -0,0 +1,5 @@ +{ + "ZoweJobNode.getJobs.spoolfiles": "Get Job Spool files command submitted.", + "ZoweJobNode.getJobs.jobs": "Get Jobs command submitted.", + "getChildren.error.response": "Retrieving response from " +} \ No newline at end of file diff --git a/i18n/sample/src/job/actions.i18n.json b/i18n/sample/src/job/actions.i18n.json new file mode 100644 index 0000000000..5e4498987f --- /dev/null +++ b/i18n/sample/src/job/actions.i18n.json @@ -0,0 +1,8 @@ +{ + "downloadSpool.select": "Select", + "modifyCommand.command.prompt": "Modify Command", + "modifyCommand.response": "Command response: ", + "stopCommand.response": "Command response: ", + "setOwner.newOwner.prompt.owner": "Owner", + "setOwner.newOwner.prompt.prefix": "Prefix" +} \ No newline at end of file diff --git a/i18n/sample/src/job/utils.i18n.json b/i18n/sample/src/job/utils.i18n.json new file mode 100644 index 0000000000..5ccbc6db31 --- /dev/null +++ b/i18n/sample/src/job/utils.i18n.json @@ -0,0 +1,4 @@ +{ + "zosJobsProvider.option.prompt.createId": "Job Id search", + "zosJobsProvider.option.prompt.createOwner": "Owner/Prefix Job Search" +} \ No newline at end of file diff --git a/i18n/sample/src/shared/actions.i18n.json b/i18n/sample/src/shared/actions.i18n.json new file mode 100644 index 0000000000..47f2a55d77 --- /dev/null +++ b/i18n/sample/src/shared/actions.i18n.json @@ -0,0 +1,10 @@ +{ + "searchHistory.options.prompt": "Enter a filter", + "searchInAllLoadedItems.noneLoaded": "No items are loaded in the tree.", + "searchInAllLoadedItems.enterPattern": "You must enter a pattern.", + "enterPattern.log.debug.prompt": "Prompting the user to choose a recent member for editing", + "memberHistory.option.prompt.open": "Select a recent member to open", + "memberHistory.options.prompt": "Select a recent member to open", + "enterPattern.pattern": "No selection made.", + "getRecentMembers.empty": "No recent members found." +} \ No newline at end of file diff --git a/i18n/sample/src/shared/utils.i18n.json b/i18n/sample/src/shared/utils.i18n.json new file mode 100644 index 0000000000..90abf60db9 --- /dev/null +++ b/i18n/sample/src/shared/utils.i18n.json @@ -0,0 +1,8 @@ +{ + "saveFile.response.save.title": "Saving data set...", + "saveUSSFile.response.title": "Saving file...", + "saveFile.error.theiaDetected": "A merge conflict has been detected. Since you are running inside Theia editor, a merge conflict resolution is not available yet.", + "saveFile.info.confirmUpload": "Would you like to overwrite the remote file?", + "saveFile.overwriteConfirmation.yes": "Yes", + "saveFile.overwriteConfirmation.no": "No" +} \ No newline at end of file diff --git a/i18n/sample/src/uss/USSTree.i18n.json b/i18n/sample/src/uss/USSTree.i18n.json new file mode 100644 index 0000000000..e75bdf2e09 --- /dev/null +++ b/i18n/sample/src/uss/USSTree.i18n.json @@ -0,0 +1,17 @@ +{ + "Favorites": "Favorites", + "renameUSSNode.error": "Unable to rename node: ", + "enterPattern.log.debug.prompt": "Prompting the user to choose a member from the filtered list", + "filterPrompt.log.debug.promptUSSPath": "Prompting the user for a USS path", + "searchHistory.options.prompt": "Select a filter", + "enterPattern.pattern": "No selection made.", + "filterPrompt.option.prompt.search": "Create a new filter", + "filterPrompt.enterPath": "You must enter a path.", + "initializeFavorites.log.debug": "initializing favorites", + "initializeUSSFavorites.lines.title": "Open", + "initializeUSSFavorites.error.profile1": "Error: You have Zowe USS favorites that refer to a non-existent CLI profile named: ", + "intializeUSSFavorites.error.profile2": ". To resolve this, you can create a profile with this name, ", + "initializeUSSFavorites.error.profile3": "or remove the favorites with this profile name from the Zowe-USS-Persistent setting, which can be found in your ", + "initializeUSSFavorites.error.profile4": " user settings.", + "findUSSItem.unsuccessful": "File does not exist. It may have been deleted." +} \ No newline at end of file diff --git a/i18n/sample/src/uss/ZoweUSSNode.i18n.json b/i18n/sample/src/uss/ZoweUSSNode.i18n.json new file mode 100644 index 0000000000..5812c8dcc9 --- /dev/null +++ b/i18n/sample/src/uss/ZoweUSSNode.i18n.json @@ -0,0 +1,19 @@ +{ + "getChildren.error.invalidNode": "Invalid node", + "ZoweUssNode.getList.progress": "Get USS file list command submitted.", + "getChildren.error.response": "Retrieving response from ", + "getChildren.responses.error.response": "The response from Zowe CLI was not successful", + "getChildren.responses.open": "Open", + "deleteUSSNode.quickPickOption": "Are you sure you want to delete ", + "deleteUSSNode.showQuickPick.yes": "Yes", + "deleteUSSNode.showQuickPick.no": "No", + "deleteUSSNode.error.node": "Unable to delete node: ", + "openUSS.error.invalidNode": "open() called from invalid node.", + "refreshUSS.error.invalidNode": "refreshUSS() called from invalid node.", + "refreshUSS.error.notFound": "not found", + "refreshUSS.file1": "Unable to find file: ", + "refreshUSS.file2": " was probably deleted.", + "openUSS.log.info.failedToOpenAsText.yes": "Yes, re-download", + "openUSS.log.info.failedToOpenAsText.no": "No", + "openUSS.log.info.failedToOpenAsText": "Failed to open file as text. Do you want to try with re-downloading it as binary?" +} \ No newline at end of file diff --git a/i18n/sample/src/uss/actions.i18n.json b/i18n/sample/src/uss/actions.i18n.json new file mode 100644 index 0000000000..9ebe20eafd --- /dev/null +++ b/i18n/sample/src/uss/actions.i18n.json @@ -0,0 +1,11 @@ +{ + "createUSSNode.name": "Name of file or directory", + "createUSSNode.error.create": "Unable to create node: ", + "renameUSSNode.error": "Unable to rename node: ", + "copyPath.infoMessage": "Copy Path is not yet supported in Theia.", + "saveUSSFile.log.debug.saveRequest": "save requested for USS file ", + "saveUSSFile.response.title": "Saving file...", + "saveFile.error.ZosmfEtagMismatchError": "Rest API failure with HTTP(S) status 412", + "saveFile.error.etagMismatch": "Remote file has been modified in the meantime.\nSelect 'Compare' to resolve the conflict.", + "saveUSSFile.log.error.save": "Error encountered when saving USS file: " +} \ No newline at end of file diff --git a/i18n/sample/src/utils.i18n.json b/i18n/sample/src/utils.i18n.json new file mode 100644 index 0000000000..ae1e8092fe --- /dev/null +++ b/i18n/sample/src/utils.i18n.json @@ -0,0 +1,4 @@ +{ + "errorHandling.invalid.credentials": "Invalid Credentials. Please ensure the username and password for ", + "errorHandling.invalid.credentials2": " are valid or this may lead to a lock-out." +} \ No newline at end of file diff --git a/i18n/sample/src/utils/profileLink.i18n.json b/i18n/sample/src/utils/profileLink.i18n.json new file mode 100644 index 0000000000..e2ab4da936 --- /dev/null +++ b/i18n/sample/src/utils/profileLink.i18n.json @@ -0,0 +1,8 @@ +{ + "profileLink.notTreeItem": "Tree Item is not a Zowe Explorer item.", + "profileLink.selectAltProfile": "Select a type of alternative profile to associate with this primary profile", + "profileLink.selectFileName": "Select the file name to associate with this primary profile", + "profileLink.associated": "Associated secondary profile {0}:{1} with {2}:{3} primary.", + "profileLink.unableToSave": "Unable to save profile association. ", + "profileLink.missingProfile": "Attempted to load a missing profile." +} \ No newline at end of file diff --git a/scripts/stringUpdateScript.js b/scripts/stringUpdateScript.js index 8db9808a74..f7829d131d 100644 --- a/scripts/stringUpdateScript.js +++ b/scripts/stringUpdateScript.js @@ -28,7 +28,7 @@ for (const metadataJson of require("glob").sync("./out/src/**/*.nls.metadata.jso } // Write to i18n sample folder to create template for new languages - const i18nJson = metadataJson.replace("./out/", "./i18n/sample/").replace(".nls.metadata.json", ".i18n.json"); + const i18nJson = metadataJson.replace("./out/src", "./i18n/sample/").replace(".nls.metadata.json", ".i18n.json"); fse.ensureDirSync(path.dirname(i18nJson)); fse.writeFileSync(i18nJson, JSON.stringify(keysPairsData, null, 4)); } From 9a65d4d06d448b5f4662aa3fe435477ef272fbc1 Mon Sep 17 00:00:00 2001 From: Lauren Li Date: Mon, 4 May 2020 16:37:35 -0400 Subject: [PATCH 14/30] Update newly localized files for webpack Signed-off-by: Lauren Li --- src/shared/utils.ts | 4 +++- src/utils/profileLink.ts | 5 ++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/shared/utils.ts b/src/shared/utils.ts index e931b9a4b3..08c0de9821 100644 --- a/src/shared/utils.ts +++ b/src/shared/utils.ts @@ -21,7 +21,9 @@ import * as nls from "vscode-nls"; import { ZoweExplorerApiRegister } from "../api/ZoweExplorerApiRegister"; import { IUploadOptions } from "@zowe/cli"; -const localize = nls.config({messageFormat: nls.MessageFormat.file})(); +// Set up localization +nls.config({ messageFormat: nls.MessageFormat.bundle, bundleFormat: nls.BundleFormat.standalone })(); +const localize: nls.LocalizeFunc = nls.loadMessageBundle(); export function filterTreeByString(value: string, treeItems: vscode.QuickPickItem[]): vscode.QuickPickItem[] { const filteredArray = []; diff --git a/src/utils/profileLink.ts b/src/utils/profileLink.ts index 7ff5643da5..b724475b5a 100644 --- a/src/utils/profileLink.ts +++ b/src/utils/profileLink.ts @@ -20,7 +20,10 @@ import { ZoweTreeNode } from "../abstract/ZoweTreeNode"; import { IZoweTreeNode } from "../api/IZoweTreeNode"; import { getZoweDir } from "../utils"; import * as nls from "vscode-nls"; -const localize = nls.config({ messageFormat: nls.MessageFormat.file })(); + +// Set up localization +nls.config({ messageFormat: nls.MessageFormat.bundle, bundleFormat: nls.BundleFormat.standalone })(); +const localize: nls.LocalizeFunc = nls.loadMessageBundle(); const LINKS_FOLDER = "profile_links"; const FILE_SUFFIX = ".yaml"; From da35559dae394edbf96ef4bf6ed975c0bc4de4c1 Mon Sep 17 00:00:00 2001 From: Lauren Li Date: Tue, 5 May 2020 20:48:48 -0400 Subject: [PATCH 15/30] Use project rootpath so icons show in both Webpack and integration test builds Signed-off-by: Lauren Li --- src/globals.ts | 1 + src/shared/utils.ts | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/globals.ts b/src/globals.ts index 3823e40728..0954aa3e8c 100644 --- a/src/globals.ts +++ b/src/globals.ts @@ -45,6 +45,7 @@ export const VSAM_CONTEXT = "vsam"; export const ICON_STATE_OPEN = "open"; export const ICON_STATE_CLOSED = "closed"; export const THEIA = "Eclipse Theia"; +export const ROOTPATH = path.join(__dirname, "..", ".."); /** * Defines all global variables diff --git a/src/shared/utils.ts b/src/shared/utils.ts index 08c0de9821..96ba2e972a 100644 --- a/src/shared/utils.ts +++ b/src/shared/utils.ts @@ -44,8 +44,8 @@ export function filterTreeByString(value: string, treeItems: vscode.QuickPickIte */ export function getIconPathInResources(iconFileName: string) { return { - light: path.join(__dirname, "..", "..", "resources", "light", iconFileName), - dark: path.join(__dirname, "..", "..", "resources", "dark", iconFileName) + light: path.join(globals.ROOTPATH, "resources", "light", iconFileName), + dark: path.join(globals.ROOTPATH, "resources", "dark", iconFileName) }; } From 1e31e5b55ec1f53ae4385bca7ab7fc08914f0d4f Mon Sep 17 00:00:00 2001 From: Lauren Li Date: Wed, 6 May 2020 04:20:49 -0400 Subject: [PATCH 16/30] Update icons in unit test to use project rootpath Signed-off-by: Lauren Li --- __tests__/__unit__/extension.unit.test.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/__tests__/__unit__/extension.unit.test.ts b/__tests__/__unit__/extension.unit.test.ts index c276924020..8d7638a1d0 100644 --- a/__tests__/__unit__/extension.unit.test.ts +++ b/__tests__/__unit__/extension.unit.test.ts @@ -675,8 +675,8 @@ describe("Extension Unit Tests", () => { } sampleFavorites[2].command = {command: "zowe.pattern", title: "", arguments: [sampleFavorites[2]]}; sampleFavorites[2].iconPath = { - dark: path.join(__dirname, "..", "..", "resources", "dark", "pattern.svg"), - light: path.join(__dirname, "..", "..", "resources", "light", "pattern.svg") + dark: path.join(globals.ROOTPATH, "resources", "dark", "pattern.svg"), + light: path.join(globals.ROOTPATH, "resources", "light", "pattern.svg") }; // tslint:disable-next-line: no-magic-numbers expect(mkdirSync.mock.calls.length).toBe(4); From 8f78ebdc1f0ec8570e9eb511722dec13b2fd35fd Mon Sep 17 00:00:00 2001 From: Lauren Li Date: Thu, 7 May 2020 15:30:50 -0400 Subject: [PATCH 17/30] Import loggerConfig instead of require Signed-off-by: Lauren Li --- log4jsconfig.json | 9 ++++++--- src/globals.ts | 3 +-- tsconfig.json | 1 + 3 files changed, 8 insertions(+), 5 deletions(-) diff --git a/log4jsconfig.json b/log4jsconfig.json index 4cde8c935f..513c5561bd 100644 --- a/log4jsconfig.json +++ b/log4jsconfig.json @@ -6,21 +6,24 @@ "layout": { "type": "pattern", "pattern": "[%d{yyyy/MM/dd} %d{hh:mm:ss.SSS}] [%p] %m" - } + }, + "filename": "" }, "imperative": { "type": "fileSync", "layout": { "type": "pattern", "pattern": "[%d{yyyy/MM/dd} %d{hh:mm:ss.SSS}] [%p] %m" - } + }, + "filename":"" }, "app": { "type": "fileSync", "layout": { "type": "pattern", "pattern": "[%d{yyyy/MM/dd} %d{hh:mm:ss.SSS}] [%p] %m" - } + }, + "filename": "" } }, "categories": { diff --git a/src/globals.ts b/src/globals.ts index 0954aa3e8c..72cc84e928 100644 --- a/src/globals.ts +++ b/src/globals.ts @@ -12,6 +12,7 @@ import * as path from "path"; import { Logger } from "@zowe/imperative"; import * as vscode from "vscode"; +import * as loggerConfig from "../log4jsconfig.json"; // Globals export let ZOWETEMPFOLDER; @@ -71,8 +72,6 @@ export function defineGlobals(tempPath: string | undefined) { * @param context The extension context */ export function initLogger(context: vscode.ExtensionContext) { - const loggerConfig = require("../log4jsconfig.json"); - // const loggerConfig = require(path.join(context.extensionPath, "log4jsconfig.json")); loggerConfig.log4jsConfig.appenders.default.filename = path.join(context.extensionPath, "logs", "imperative.log"); loggerConfig.log4jsConfig.appenders.imperative.filename = path.join(context.extensionPath, "logs", "imperative.log"); loggerConfig.log4jsConfig.appenders.app.filename = path.join(context.extensionPath, "logs", "zowe.log"); diff --git a/tsconfig.json b/tsconfig.json index 6661182965..29a38edfe6 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -18,6 +18,7 @@ // "noUnusedParameters": true, /* Report errors on unused parameters. */ "experimentalDecorators": true, "removeComments": true, + "resolveJsonModule": true, "rootDir": "." }, "exclude": [ From 00a44eb5f2ed32f6a6bab9032ba2f943ffd1f953 Mon Sep 17 00:00:00 2001 From: Lauren Li <45975633+lauren-li@users.noreply.github.com> Date: Tue, 19 May 2020 13:30:16 -0400 Subject: [PATCH 18/30] Add initial filenames to log4jsConfig appenders. (Thanks to @tjohnsonBCM for suggesting this.) Signed-off-by: Lauren Li <45975633+lauren-li@users.noreply.github.com> --- log4jsconfig.json | 6 +++--- src/globals.ts | 7 ++++--- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/log4jsconfig.json b/log4jsconfig.json index 513c5561bd..fc4a0bcef8 100644 --- a/log4jsconfig.json +++ b/log4jsconfig.json @@ -7,7 +7,7 @@ "type": "pattern", "pattern": "[%d{yyyy/MM/dd} %d{hh:mm:ss.SSS}] [%p] %m" }, - "filename": "" + "filename": "logs/imperative.log" }, "imperative": { "type": "fileSync", @@ -15,7 +15,7 @@ "type": "pattern", "pattern": "[%d{yyyy/MM/dd} %d{hh:mm:ss.SSS}] [%p] %m" }, - "filename":"" + "filename":"logs/imperative.log" }, "app": { "type": "fileSync", @@ -23,7 +23,7 @@ "type": "pattern", "pattern": "[%d{yyyy/MM/dd} %d{hh:mm:ss.SSS}] [%p] %m" }, - "filename": "" + "filename": "logs/zowe.log" } }, "categories": { diff --git a/src/globals.ts b/src/globals.ts index 72cc84e928..5aaead7829 100644 --- a/src/globals.ts +++ b/src/globals.ts @@ -72,9 +72,10 @@ export function defineGlobals(tempPath: string | undefined) { * @param context The extension context */ export function initLogger(context: vscode.ExtensionContext) { - loggerConfig.log4jsConfig.appenders.default.filename = path.join(context.extensionPath, "logs", "imperative.log"); - loggerConfig.log4jsConfig.appenders.imperative.filename = path.join(context.extensionPath, "logs", "imperative.log"); - loggerConfig.log4jsConfig.appenders.app.filename = path.join(context.extensionPath, "logs", "zowe.log"); + for (const appenderName of Object.keys(loggerConfig.log4jsConfig.appenders)){ + loggerConfig.log4jsConfig.appenders[appenderName].filename = path.join( + context.extensionPath, loggerConfig.log4jsConfig.appenders[appenderName].filename); + } Logger.initLogger(loggerConfig); this.LOG = Logger.getAppLogger(); } From f8c39d4dc8e26f91162b2e497270bd6ec1b52e2f Mon Sep 17 00:00:00 2001 From: Lauren Li <45975633+lauren-li@users.noreply.github.com> Date: Thu, 11 Jun 2020 07:48:20 -0400 Subject: [PATCH 19/30] Update dependencies from merge Signed-off-by: Lauren Li <45975633+lauren-li@users.noreply.github.com> --- package-lock.json | 64 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 64 insertions(+) diff --git a/package-lock.json b/package-lock.json index 005050786f..538bba2b0a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10810,6 +10810,70 @@ } } }, + "ts-loader": { + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-7.0.5.tgz", + "integrity": "sha512-zXypEIT6k3oTc+OZNx/cqElrsbBtYqDknf48OZos0NQ3RTt045fBIU8RRSu+suObBzYB355aIPGOe/3kj9h7Ig==", + "dev": true, + "requires": { + "chalk": "^2.3.0", + "enhanced-resolve": "^4.0.0", + "loader-utils": "^1.0.2", + "micromatch": "^4.0.0", + "semver": "^6.0.0" + }, + "dependencies": { + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "^7.0.1" + } + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "requires": { + "braces": "^3.0.1", + "picomatch": "^2.0.5" + } + }, + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "^7.0.0" + } + } + } + }, "ts-node": { "version": "8.10.1", "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-8.10.1.tgz", From 09cab94c19a551f35be1c6a8bcaf965e6fb185cc Mon Sep 17 00:00:00 2001 From: Lauren Li <45975633+lauren-li@users.noreply.github.com> Date: Fri, 12 Jun 2020 13:40:10 -0400 Subject: [PATCH 20/30] Update dependencies from merge Signed-off-by: Lauren Li <45975633+lauren-li@users.noreply.github.com> --- package-lock.json | 268 +++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 267 insertions(+), 1 deletion(-) diff --git a/package-lock.json b/package-lock.json index f6825283f4..845546e44e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -827,6 +827,193 @@ } } }, + "@webassemblyjs/ast": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.9.0.tgz", + "integrity": "sha512-C6wW5L+b7ogSDVqymbkkvuW9kruN//YisMED04xzeBBqjHa2FYnmvOlS6Xj68xWQRgWvI9cIglsjFowH/RJyEA==", + "dev": true, + "requires": { + "@webassemblyjs/helper-module-context": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/wast-parser": "1.9.0" + } + }, + "@webassemblyjs/floating-point-hex-parser": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.9.0.tgz", + "integrity": "sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA==", + "dev": true + }, + "@webassemblyjs/helper-api-error": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.9.0.tgz", + "integrity": "sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw==", + "dev": true + }, + "@webassemblyjs/helper-buffer": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.9.0.tgz", + "integrity": "sha512-qZol43oqhq6yBPx7YM3m9Bv7WMV9Eevj6kMi6InKOuZxhw+q9hOkvq5e/PpKSiLfyetpaBnogSbNCfBwyB00CA==", + "dev": true + }, + "@webassemblyjs/helper-code-frame": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.9.0.tgz", + "integrity": "sha512-ERCYdJBkD9Vu4vtjUYe8LZruWuNIToYq/ME22igL+2vj2dQ2OOujIZr3MEFvfEaqKoVqpsFKAGsRdBSBjrIvZA==", + "dev": true, + "requires": { + "@webassemblyjs/wast-printer": "1.9.0" + } + }, + "@webassemblyjs/helper-fsm": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.9.0.tgz", + "integrity": "sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw==", + "dev": true + }, + "@webassemblyjs/helper-module-context": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.9.0.tgz", + "integrity": "sha512-MJCW8iGC08tMk2enck1aPW+BE5Cw8/7ph/VGZxwyvGbJwjktKkDK7vy7gAmMDx88D7mhDTCNKAW5tED+gZ0W8g==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.9.0" + } + }, + "@webassemblyjs/helper-wasm-bytecode": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.9.0.tgz", + "integrity": "sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw==", + "dev": true + }, + "@webassemblyjs/helper-wasm-section": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.9.0.tgz", + "integrity": "sha512-XnMB8l3ek4tvrKUUku+IVaXNHz2YsJyOOmz+MMkZvh8h1uSJpSen6vYnw3IoQ7WwEuAhL8Efjms1ZWjqh2agvw==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-buffer": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/wasm-gen": "1.9.0" + } + }, + "@webassemblyjs/ieee754": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.9.0.tgz", + "integrity": "sha512-dcX8JuYU/gvymzIHc9DgxTzUUTLexWwt8uCTWP3otys596io0L5aW02Gb1RjYpx2+0Jus1h4ZFqjla7umFniTg==", + "dev": true, + "requires": { + "@xtuc/ieee754": "^1.2.0" + } + }, + "@webassemblyjs/leb128": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.9.0.tgz", + "integrity": "sha512-ENVzM5VwV1ojs9jam6vPys97B/S65YQtv/aanqnU7D8aSoHFX8GyhGg0CMfyKNIHBuAVjy3tlzd5QMMINa7wpw==", + "dev": true, + "requires": { + "@xtuc/long": "4.2.2" + } + }, + "@webassemblyjs/utf8": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.9.0.tgz", + "integrity": "sha512-GZbQlWtopBTP0u7cHrEx+73yZKrQoBMpwkGEIqlacljhXCkVM1kMQge/Mf+csMJAjEdSwhOyLAS0AoR3AG5P8w==", + "dev": true + }, + "@webassemblyjs/wasm-edit": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.9.0.tgz", + "integrity": "sha512-FgHzBm80uwz5M8WKnMTn6j/sVbqilPdQXTWraSjBwFXSYGirpkSWE2R9Qvz9tNiTKQvoKILpCuTjBKzOIm0nxw==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-buffer": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/helper-wasm-section": "1.9.0", + "@webassemblyjs/wasm-gen": "1.9.0", + "@webassemblyjs/wasm-opt": "1.9.0", + "@webassemblyjs/wasm-parser": "1.9.0", + "@webassemblyjs/wast-printer": "1.9.0" + } + }, + "@webassemblyjs/wasm-gen": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.9.0.tgz", + "integrity": "sha512-cPE3o44YzOOHvlsb4+E9qSqjc9Qf9Na1OO/BHFy4OI91XDE14MjFN4lTMezzaIWdPqHnsTodGGNP+iRSYfGkjA==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/ieee754": "1.9.0", + "@webassemblyjs/leb128": "1.9.0", + "@webassemblyjs/utf8": "1.9.0" + } + }, + "@webassemblyjs/wasm-opt": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.9.0.tgz", + "integrity": "sha512-Qkjgm6Anhm+OMbIL0iokO7meajkzQD71ioelnfPEj6r4eOFuqm4YC3VBPqXjFyyNwowzbMD+hizmprP/Fwkl2A==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-buffer": "1.9.0", + "@webassemblyjs/wasm-gen": "1.9.0", + "@webassemblyjs/wasm-parser": "1.9.0" + } + }, + "@webassemblyjs/wasm-parser": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.9.0.tgz", + "integrity": "sha512-9+wkMowR2AmdSWQzsPEjFU7njh8HTO5MqO8vjwEHuM+AMHioNqSBONRdr0NQQ3dVQrzp0s8lTcYqzUdb7YgELA==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-api-error": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/ieee754": "1.9.0", + "@webassemblyjs/leb128": "1.9.0", + "@webassemblyjs/utf8": "1.9.0" + } + }, + "@webassemblyjs/wast-parser": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.9.0.tgz", + "integrity": "sha512-qsqSAP3QQ3LyZjNC/0jBJ/ToSxfYJ8kYyuiGvtn/8MK89VrNEfwj7BPQzJVHi0jGTRK2dGdJ5PRqhtjzoww+bw==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/floating-point-hex-parser": "1.9.0", + "@webassemblyjs/helper-api-error": "1.9.0", + "@webassemblyjs/helper-code-frame": "1.9.0", + "@webassemblyjs/helper-fsm": "1.9.0", + "@xtuc/long": "4.2.2" + } + }, + "@webassemblyjs/wast-printer": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.9.0.tgz", + "integrity": "sha512-2J0nE95rHXHyQ24cWjMKJ1tqB/ds8z/cyeOZxJhcb+rW+SQASVjuznUSmdz5GpVJTzU8JkhYut0D3siFDD6wsA==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/wast-parser": "1.9.0", + "@xtuc/long": "4.2.2" + } + }, + "@xtuc/ieee754": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", + "dev": true + }, + "@xtuc/long": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", + "dev": true + }, "@zowe/cli": { "version": "6.14.0", "resolved": "https://registry.npmjs.org/@zowe/cli/-/cli-6.14.0.tgz", @@ -2829,6 +3016,17 @@ } } }, + "diffie-hellman": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", + "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", + "dev": true, + "requires": { + "bn.js": "^4.1.0", + "miller-rabin": "^4.0.0", + "randombytes": "^2.0.0" + } + }, "doctrine": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", @@ -3211,7 +3409,7 @@ "version": "file:eslint-plugin", "dev": true, "requires": { - "requireindex": "~1.1.0" + "requireindex": "^1.1.0" } }, "eslint-scope": { @@ -3633,6 +3831,12 @@ "pend": "~1.2.0" } }, + "figgy-pudding": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.2.tgz", + "integrity": "sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw==", + "dev": true + }, "figures": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", @@ -4828,6 +5032,18 @@ "safer-buffer": ">= 2.1.2 < 3" } }, + "ieee754": { + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz", + "integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==", + "dev": true + }, + "iferr": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz", + "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=", + "dev": true + }, "ignore": { "version": "4.0.6", "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", @@ -8896,6 +9112,17 @@ "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", "dev": true }, + "parallel-transform": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/parallel-transform/-/parallel-transform-1.2.0.tgz", + "integrity": "sha512-P2vSmIu38uIlvdcU7fDkyrxj33gTUy/ABO5ZUbGowxNCopBq/OoD42bP4UmMrJoPyk4Uqf0mu3mtWBhHCZD8yg==", + "dev": true, + "requires": { + "cyclist": "^1.0.1", + "inherits": "^2.0.3", + "readable-stream": "^2.1.5" + } + }, "parent-module": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", @@ -8905,6 +9132,20 @@ "callsites": "^3.0.0" } }, + "parse-asn1": { + "version": "5.1.5", + "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.5.tgz", + "integrity": "sha512-jkMYn1dcJqF6d5CpU689bq7w/b5ALS9ROVSpQDPrZsqqesUJii9qutvoT5ltGedNXMO2e16YUWIghG9KxaViTQ==", + "dev": true, + "requires": { + "asn1.js": "^4.0.0", + "browserify-aes": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.0", + "pbkdf2": "^3.0.3", + "safe-buffer": "^5.1.1" + } + }, "parse-filepath": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/parse-filepath/-/parse-filepath-1.0.2.tgz", @@ -9876,6 +10117,15 @@ "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", "dev": true }, + "run-queue": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz", + "integrity": "sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec=", + "dev": true, + "requires": { + "aproba": "^1.1.1" + } + }, "run-sequence": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/run-sequence/-/run-sequence-2.2.1.tgz", @@ -12051,6 +12301,16 @@ "integrity": "sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==", "dev": true }, + "eslint-scope": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.3.tgz", + "integrity": "sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg==", + "dev": true, + "requires": { + "esrecurse": "^4.1.0", + "estraverse": "^4.1.1" + } + }, "minimist": { "version": "1.2.5", "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", @@ -12322,6 +12582,12 @@ "has-flag": "^3.0.0" } }, + "v8-compile-cache": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.0.3.tgz", + "integrity": "sha512-CNmdbwQMBjwr9Gsmohvm0pbL954tJrNzf6gWL3K+QMQf00PF7ERGrEiLgjuU3mKreLC2MeGhUsNV9ybTbLgd3w==", + "dev": true + }, "wrap-ansi": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", From 03c9a27fe701f51a8149ec7a2a2a73c1c64e0232 Mon Sep 17 00:00:00 2001 From: Lauren Li <45975633+lauren-li@users.noreply.github.com> Date: Fri, 12 Jun 2020 14:04:27 -0400 Subject: [PATCH 21/30] Update French i18n for testing only Signed-off-by: Lauren Li <45975633+lauren-li@users.noreply.github.com> --- i18n/fra/package.i18n.json | 10 ++++-- i18n/fra/src/Profiles.i18n.json | 46 ++++++++++++++++-------- i18n/fra/src/dataset/actions.i18n.json | 2 ++ i18n/fra/src/extension.i18n.json | 8 ----- i18n/fra/src/shared/utils.i18n.json | 8 +++++ i18n/fra/src/utils/profileLink.i18n.json | 8 +++++ package.nls.fr.json | 7 ++-- 7 files changed, 61 insertions(+), 28 deletions(-) create mode 100644 i18n/fra/src/shared/utils.i18n.json create mode 100644 i18n/fra/src/utils/profileLink.i18n.json diff --git a/i18n/fra/package.i18n.json b/i18n/fra/package.i18n.json index aef473c75d..2e1dbbd665 100644 --- a/i18n/fra/package.i18n.json +++ b/i18n/fra/package.i18n.json @@ -12,6 +12,7 @@ "addFavorite": "Add to Favorites", "uss.addFavorite": "Add to Favorites", "addSession": "Add Profile", + "editSession": "Update Profile", "createDataset": "Créer un nouveau fichier", "createMember": "Create New Member", "showDSAttributes": "Show Data Set Attributes", @@ -26,7 +27,7 @@ "removeFavorite": "Remove Favorite", "uss.removeFavorite": "Remove Favorite", "removeSavedSearch": "Remove Search", - "removeSession": "Remove Profile", + "removeSession": "Hide Profile", "saveSearch": "Add to Favorites", "submitJcl": "Submit JCL", "submitMember": "Submit Job", @@ -37,7 +38,7 @@ "uss.editFile": "Edit", "uss.fullPath": "Search Unix System Services (USS) by Entering a Path", "uss.refreshUSS": "Pull from Mainframe", - "uss.removeSession": "Remove Profile", + "uss.removeSession": "Hide Profile", "uss.binary": "Toggle Binary", "uss.uploadDialog": "Upload Files...", "uss.text": "Toggle Text", @@ -50,7 +51,7 @@ "refreshJobsServer": "Refresh", "refreshAll": "Refresh All", "addJobsSession": "Add Profile", - "removeJobsSession": "Remove Profile", + "removeJobsSession": "Hide Profile", "downloadSpool": "Download Spool", "getJobJcl": "Get JCL", "setJobSpool": "Set Spool", @@ -68,10 +69,13 @@ "Zowe-Default-Commands-Persistent-Favorites": "Toggle if Commands persist locally", "Zowe-Environment": "Environment where the extension is running, default is VSCode", "issueMvsCmd": "Zowe: Issue MVS Command...", + "deleteProfile": "Delete Profile", + "cmd.deleteProfile": "Zowe: Delete a Profile Permanently...", "rename": "Rename", "copy": "Copy", "paste": "Paste", "hMigrateDataSet": "Migrate Data Set", + "hRecallDataSet": "Recall Data Set", "profile.configuration.title": "Zowe z/OSMF Profiles", "profile.configuration.name": "Profile Name", "profile.configuration.url": "z/OSMF URL", diff --git a/i18n/fra/src/Profiles.i18n.json b/i18n/fra/src/Profiles.i18n.json index 76ae650bb0..29668e304c 100644 --- a/i18n/fra/src/Profiles.i18n.json +++ b/i18n/fra/src/Profiles.i18n.json @@ -2,23 +2,41 @@ "ussNodeActions.error": "Error encountered in ", "loadNamedProfile.error.profileName": "Could not find profile named: ", "loadNamedProfile.error.period": ".", - "createNewConnection.invalidzosmfURL": "Please enter a valid URL in the format https://url:port.", + "createNewConnection.invalidzosURL": "Please enter a valid host URL in the format 'company.com'.", + "addSession.quickPickOption": "Choose \"Create new...\" to define a new profile or select an existing profile to Add to the USS Explorer", + "enterPattern.pattern": "No selection made.", + "createNewConnection.option.prompt.profileName.placeholder": "Connection Name", + "createNewConnection.option.prompt.profileName": "Enter a name for the connection", + "createNewConnection.enterprofileName": "Profile Name was not supplied. Operation Cancelled", + "addSession.log.debug.createNewProfile": "User created a new profile", + "createZoweSession.log.debug.selectProfile": "User selected profile ", + "createZoweSession.log.debug.cancelledSelection": "User cancelled profile selection", + "createNewConnection.zosmfURL": "No valid value for z/OS URL. Operation Cancelled", + "createNewConnection.undefined.port": "Invalid Port number provided or operation was cancelled", + "createNewConnection.undefined.username": "Operation Cancelled", + "createNewConnection.rejectUnauthorize": "Operation Cancelled", + "createNewConnection.booleanValue": "Operation Cancelled", + "editConnection.success": "Profile was successfully updated", + "createNewConnection.option.prompt.type.placeholder": "Profile Type", + "createNewConnection.profileName": "Profile name was not supplied. Operation Cancelled", + "createNewConnection.profileType": "No profile type was chosen. Operation Cancelled", + "createNewConnection.duplicateProfileName": "Profile name already exists. Please create a profile using a different name", + "deleteProfile.noProfilesLoaded": "No profiles available", + "deleteProfile.quickPickOption": "Are you sure you want to permanently delete ", + "deleteProfile.undefined.profilename": "Operation Cancelled", + "deleteProfile.noSelected": "Operation Cancelled", + "deleteProfile.log.debug": "Deleting profile ", + "deleteProfile.showQuickPick.yes": "Yes", + "deleteProfile.showQuickPick.no": "No", + "deleteProfile.showQuickPick.log.debug": "User picked no. Cancelling delete of profile", + "deleteProfile.delete.log.error": "Error encountered when deleting profile! ", "createNewConnection.option.prompt.url.placeholder": "https://url:port", - "createNewConnection.option.prompt.url": "Enter a z/OSMF URL in the format 'https://url:port'.", - "createNewConnection.zosmfURL": "No valid value for z/OSMF URL. Operation Cancelled", + "createNewConnection.option.prompt.url": "Enter a z/OS URL in the format 'https://url:port'.", + "createNewConnection.option.prompt.port.placeholder": "Port Number", "createNewConnection.option.prompt.username.placeholder": "Optional: User Name", "createNewConnection.option.prompt.username": "Enter the user name for the connection. Leave blank to not store.", - "createNewConnection.undefined.username": "Operation Cancelled", + "createNewConnection.undefined.passWord": "Operation Cancelled", "createNewConnection.option.prompt.password.placeholder": "Optional: Password", "createNewConnection.option.prompt.password": "Enter the password for the connection. Leave blank to not store.", - "createNewConnection.undefined.passWord": "Operation Cancelled", - "createNewConnection.option.prompt.ru.placeholder": "Reject Unauthorized Connections", - "createNewConnection.rejectUnauthorize": "Operation Cancelled", - "createNewConnection.duplicateProfileName": "Profile name already exists. Please create a profile using a different name", - "promptcredentials.option.prompt.username.placeholder": "User Name", - "promptcredentials.option.prompt.username": "Enter the user name for the connection", - "promptcredentials.invalidusername": "Please enter your z/OS username. Operation Cancelled", - "promptcredentials.option.prompt.password.placeholder": "Password", - "promptcredentials.option.prompt.password": "Enter a password for the connection", - "promptcredentials.invalidpassword": "Please enter your z/OS password. Operation Cancelled" + "createNewConnection.option.prompt.ru.placeholder": "Reject Unauthorized Connections" } \ No newline at end of file diff --git a/i18n/fra/src/dataset/actions.i18n.json b/i18n/fra/src/dataset/actions.i18n.json index bdf876ea3f..750f2e52c9 100644 --- a/i18n/fra/src/dataset/actions.i18n.json +++ b/i18n/fra/src/dataset/actions.i18n.json @@ -56,6 +56,8 @@ "enterPattern.options.prompt": "Search data sets by entering patterns: use a comma to separate multiple patterns", "hMigrate.requestSent1": "Migration of dataset: ", "hMigrate.requestSent2": " requested.", + "hRecall.requestSent1": "Recall of dataset: ", + "hRecall.requestSent2": " requested.", "renameDataSet.name": "Name of Data Set Member", "saveFile.log.debug.request": "requested to save data set: ", "saveFile.log.debug.path": "path.relative returned a non-blank directory.", diff --git a/i18n/fra/src/extension.i18n.json b/i18n/fra/src/extension.i18n.json index 842df04e10..02c0b275ff 100644 --- a/i18n/fra/src/extension.i18n.json +++ b/i18n/fra/src/extension.i18n.json @@ -12,13 +12,5 @@ "profile.init.read.imperative": "Unable to read imperative file. ", "initialize.module.load": "Credentials not managed, unable to load security file: ", "moveTempFolder.error": "Error encountered when creating temporary folder! ", - "addSession.quickPickOption": "Choose \"Create new...\" to define a new profile or select an existing profile to Add to the USS Explorer", - "enterPattern.pattern": "No selection made.", - "createNewConnection.option.prompt.profileName.placeholder": "Connection Name", - "createNewConnection.option.prompt.profileName": "Enter a name for the connection", - "createNewConnection.enterprofileName": "Profile Name was not supplied. Operation Cancelled", - "addSession.log.debug.createNewProfile": "User created a new profile", - "addZoweSession.log.debug.selectProfile": "User selected profile ", - "addZoweSession.log.debug.cancelledSelection": "User cancelled profile selection", "deactivate.error": "Unable to delete temporary folder. " } \ No newline at end of file diff --git a/i18n/fra/src/shared/utils.i18n.json b/i18n/fra/src/shared/utils.i18n.json new file mode 100644 index 0000000000..90abf60db9 --- /dev/null +++ b/i18n/fra/src/shared/utils.i18n.json @@ -0,0 +1,8 @@ +{ + "saveFile.response.save.title": "Saving data set...", + "saveUSSFile.response.title": "Saving file...", + "saveFile.error.theiaDetected": "A merge conflict has been detected. Since you are running inside Theia editor, a merge conflict resolution is not available yet.", + "saveFile.info.confirmUpload": "Would you like to overwrite the remote file?", + "saveFile.overwriteConfirmation.yes": "Yes", + "saveFile.overwriteConfirmation.no": "No" +} \ No newline at end of file diff --git a/i18n/fra/src/utils/profileLink.i18n.json b/i18n/fra/src/utils/profileLink.i18n.json new file mode 100644 index 0000000000..e2ab4da936 --- /dev/null +++ b/i18n/fra/src/utils/profileLink.i18n.json @@ -0,0 +1,8 @@ +{ + "profileLink.notTreeItem": "Tree Item is not a Zowe Explorer item.", + "profileLink.selectAltProfile": "Select a type of alternative profile to associate with this primary profile", + "profileLink.selectFileName": "Select the file name to associate with this primary profile", + "profileLink.associated": "Associated secondary profile {0}:{1} with {2}:{3} primary.", + "profileLink.unableToSave": "Unable to save profile association. ", + "profileLink.missingProfile": "Attempted to load a missing profile." +} \ No newline at end of file diff --git a/package.nls.fr.json b/package.nls.fr.json index 7bcada721e..4cf7dc3e8d 100644 --- a/package.nls.fr.json +++ b/package.nls.fr.json @@ -27,7 +27,7 @@ "removeFavorite": "Remove Favorite", "uss.removeFavorite": "Remove Favorite", "removeSavedSearch": "Remove Search", - "removeSession": "Remove Profile", + "removeSession": "Hide Profile", "saveSearch": "Add to Favorites", "submitJcl": "Submit JCL", "submitMember": "Submit Job", @@ -38,7 +38,7 @@ "uss.editFile": "Edit", "uss.fullPath": "Search Unix System Services (USS) by Entering a Path", "uss.refreshUSS": "Pull from Mainframe", - "uss.removeSession": "Remove Profile", + "uss.removeSession": "Hide Profile", "uss.binary": "Toggle Binary", "uss.uploadDialog": "Upload Files...", "uss.text": "Toggle Text", @@ -51,7 +51,7 @@ "refreshJobsServer": "Refresh", "refreshAll": "Refresh All", "addJobsSession": "Add Profile", - "removeJobsSession": "Remove Profile", + "removeJobsSession": "Hide Profile", "downloadSpool": "Download Spool", "getJobJcl": "Get JCL", "setJobSpool": "Set Spool", @@ -75,6 +75,7 @@ "copy": "Copy", "paste": "Paste", "hMigrateDataSet": "Migrate Data Set", + "hRecallDataSet": "Recall Data Set", "profile.configuration.title": "Zowe z/OSMF Profiles", "profile.configuration.name": "Profile Name", "profile.configuration.url": "z/OSMF URL", From cc2b62597db2b8e240f3d80d49f8cda79c888e50 Mon Sep 17 00:00:00 2001 From: Lauren Li <45975633+lauren-li@users.noreply.github.com> Date: Fri, 12 Jun 2020 15:00:14 -0400 Subject: [PATCH 22/30] Remove parent out folder from vscodeignore Signed-off-by: Lauren Li <45975633+lauren-li@users.noreply.github.com> --- .vscodeignore | 1 - 1 file changed, 1 deletion(-) diff --git a/.vscodeignore b/.vscodeignore index 0a058a138c..31f61fd9f9 100644 --- a/.vscodeignore +++ b/.vscodeignore @@ -6,7 +6,6 @@ out/__tests__/** out/src/__mocks__/** out/resources/testProfileData.* out/**/*.map -out resources/testProfileData.example.ts resources/testProfileData.ts resources/Favorites.txt From 3ac6903e9ef64e12ca372fc0c24fbbfb31128cee Mon Sep 17 00:00:00 2001 From: Lauren Li <45975633+lauren-li@users.noreply.github.com> Date: Fri, 19 Jun 2020 05:24:46 -0400 Subject: [PATCH 23/30] Adjust Extension launch to use npm watch Signed-off-by: Lauren Li <45975633+lauren-li@users.noreply.github.com> --- .vscode/launch.json | 2 +- .vscode/tasks.json | 6 ++---- package.json | 2 +- 3 files changed, 4 insertions(+), 6 deletions(-) diff --git a/.vscode/launch.json b/.vscode/launch.json index 1e6c6f76d3..3d65e61581 100644 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -29,7 +29,7 @@ "outFiles": [ "${workspaceFolder}/out/**/*.js" ], - "preLaunchTask": "npm: build", + "preLaunchTask": "npm: watch", "smartStep": true }, { diff --git a/.vscode/tasks.json b/.vscode/tasks.json index 5f8a3457e1..087560b475 100644 --- a/.vscode/tasks.json +++ b/.vscode/tasks.json @@ -9,12 +9,10 @@ "problemMatcher": "$tsc-watch", "isBackground": true, "presentation": { + "panel": "dedicated", "reveal": "never" }, - "group": { - "kind": "build", - "isDefault": true - } + "group": "build" }, { "type": "npm", diff --git a/package.json b/package.json index 22b7dae7fe..5e48f58cea 100644 --- a/package.json +++ b/package.json @@ -1173,7 +1173,7 @@ "update": "node scripts/stringUpdateScript.js", "package": "vsce package", "license": "node ./scripts/license.js", - "watch": "webpack --mode development --vscode-nls --watch --info-verbosity verbose", + "watch": "gulp build && webpack --mode development --vscode-nls --info-verbosity verbose", "compile": "tsc -b", "markdown": "markdownlint CHANGELOG.md README.md", "lint": "npm run lint:src && npm run lint:tests && npm run markdown", From 16f64bcdde9a4f90bbfa7ee61d3352adc9a3a3bc Mon Sep 17 00:00:00 2001 From: Lauren Li <45975633+lauren-li@users.noreply.github.com> Date: Fri, 19 Jun 2020 05:33:33 -0400 Subject: [PATCH 24/30] Update French testing files Signed-off-by: Lauren Li <45975633+lauren-li@users.noreply.github.com> --- i18n/fra/src/Profiles.i18n.json | 8 ++++---- i18n/fra/src/command/MvsCommandHandler.i18n.json | 2 ++ i18n/fra/src/dataset/actions.i18n.json | 8 ++++---- i18n/fra/src/uss/ZoweUSSNode.i18n.json | 12 ++++++------ 4 files changed, 16 insertions(+), 14 deletions(-) diff --git a/i18n/fra/src/Profiles.i18n.json b/i18n/fra/src/Profiles.i18n.json index 29668e304c..8d7aee55a2 100644 --- a/i18n/fra/src/Profiles.i18n.json +++ b/i18n/fra/src/Profiles.i18n.json @@ -22,13 +22,13 @@ "createNewConnection.profileType": "No profile type was chosen. Operation Cancelled", "createNewConnection.duplicateProfileName": "Profile name already exists. Please create a profile using a different name", "deleteProfile.noProfilesLoaded": "No profiles available", - "deleteProfile.quickPickOption": "Are you sure you want to permanently delete ", + "deleteProfile.quickPickOption": "Delete {0}? This will permanently remove it from your system.", "deleteProfile.undefined.profilename": "Operation Cancelled", "deleteProfile.noSelected": "Operation Cancelled", "deleteProfile.log.debug": "Deleting profile ", - "deleteProfile.showQuickPick.yes": "Yes", - "deleteProfile.showQuickPick.no": "No", - "deleteProfile.showQuickPick.log.debug": "User picked no. Cancelling delete of profile", + "deleteProfile.showQuickPick.delete": "Delete", + "deleteProfile.showQuickPick.cancel": "Cancel", + "deleteProfile.showQuickPick.log.debug": "User picked Cancel. Cancelling delete of profile", "deleteProfile.delete.log.error": "Error encountered when deleting profile! ", "createNewConnection.option.prompt.url.placeholder": "https://url:port", "createNewConnection.option.prompt.url": "Enter a z/OS URL in the format 'https://url:port'.", diff --git a/i18n/fra/src/command/MvsCommandHandler.i18n.json b/i18n/fra/src/command/MvsCommandHandler.i18n.json index e4aca1128a..dd7a140fe5 100644 --- a/i18n/fra/src/command/MvsCommandHandler.i18n.json +++ b/i18n/fra/src/command/MvsCommandHandler.i18n.json @@ -1,7 +1,9 @@ { "issueMvsCommand.outputchannel.title": "Zowe MVS Command", "issueMvsCommand.quickPickOption": "Select the Profile to use to submit the command", + "issueMvsCommand.undefined.profilename": "Operation Cancelled", "issueMvsCommand.noProfilesLoaded": "No profiles available", + "issueMvsCommand.checkProfile": "Profile is invalid", "issueMvsCommand.command.hostname": "Select a command to run immediately against ", "issueMvsCommand.command.edit": " (An option to edit will follow)", "issueMvsCommand.options.noselection": "No selection made.", diff --git a/i18n/fra/src/dataset/actions.i18n.json b/i18n/fra/src/dataset/actions.i18n.json index 750f2e52c9..04e95ecc73 100644 --- a/i18n/fra/src/dataset/actions.i18n.json +++ b/i18n/fra/src/dataset/actions.i18n.json @@ -38,10 +38,10 @@ "submitMember.jobSubmitted": "Job submitted ", "submitMember.jobSubmissionFailed": "Job submission failed\n", "deleteDataset.log.debug": "Deleting data set ", - "deleteDataset.quickPickOption": "Are you sure you want to delete ", - "deleteDataset.showQuickPick.yes": "Oui", - "deleteDataset.showQuickPick.no": "Non", - "deleteDataset.showQuickPick.log.debug": "User picked no. Cancelling delete of data set", + "deleteDataset.quickPickOption": "Delete {0}? This will permanently remove it from your system.", + "deleteDataset.showQuickPick.delete": "Supprimer", + "deleteDataset.showQuickPick.Cancel": "Annuler", + "deleteDataset.showQuickPick.log.debug": "User picked Cancel. Cancelling delete of data set", "deleteDataSet.invalidNode.error": "deleteDataSet() called from invalid node.", "deleteDataSet.delete.log.error": "Error encountered when deleting data set! ", "deleteDataSet.error.notFound": "not found", diff --git a/i18n/fra/src/uss/ZoweUSSNode.i18n.json b/i18n/fra/src/uss/ZoweUSSNode.i18n.json index 5812c8dcc9..9b3b28a858 100644 --- a/i18n/fra/src/uss/ZoweUSSNode.i18n.json +++ b/i18n/fra/src/uss/ZoweUSSNode.i18n.json @@ -4,16 +4,16 @@ "getChildren.error.response": "Retrieving response from ", "getChildren.responses.error.response": "The response from Zowe CLI was not successful", "getChildren.responses.open": "Open", - "deleteUSSNode.quickPickOption": "Are you sure you want to delete ", - "deleteUSSNode.showQuickPick.yes": "Yes", - "deleteUSSNode.showQuickPick.no": "No", + "deleteUSSNode.quickPickOption": "Delete {0}? This will permanently remove it from your system.", + "deleteUSSNode.showQuickPick.delete": "Delete", + "deleteUSSNode.showQuickPick.cancel": "Cancel", "deleteUSSNode.error.node": "Unable to delete node: ", "openUSS.error.invalidNode": "open() called from invalid node.", "refreshUSS.error.invalidNode": "refreshUSS() called from invalid node.", "refreshUSS.error.notFound": "not found", "refreshUSS.file1": "Unable to find file: ", "refreshUSS.file2": " was probably deleted.", - "openUSS.log.info.failedToOpenAsText.yes": "Yes, re-download", - "openUSS.log.info.failedToOpenAsText.no": "No", - "openUSS.log.info.failedToOpenAsText": "Failed to open file as text. Do you want to try with re-downloading it as binary?" + "openUSS.log.info.failedToOpenAsText.yes": "Re-download", + "openUSS.log.info.failedToOpenAsText.no": "Cancel", + "openUSS.log.info.failedToOpenAsText": "Failed to open file as text. Re-download file as binary?" } \ No newline at end of file From a9d15690c9094877b6df4fdce7f8eca54706e038 Mon Sep 17 00:00:00 2001 From: Lauren Li <45975633+lauren-li@users.noreply.github.com> Date: Fri, 19 Jun 2020 07:42:16 -0400 Subject: [PATCH 25/30] Handle require statement for secure credential store Signed-off-by: Lauren Li <45975633+lauren-li@users.noreply.github.com> --- src/extension.ts | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/extension.ts b/src/extension.ts index 12733364b2..9126d64c83 100644 --- a/src/extension.ts +++ b/src/extension.ts @@ -34,6 +34,9 @@ import { ZoweExplorerApiRegister } from "./api/ZoweExplorerApiRegister"; import { KeytarCredentialManager } from "./KeytarCredentialManager"; import { linkProfileDialog } from "./utils/profileLink"; import * as nls from "vscode-nls"; +declare const __webpack_require__: typeof require; +declare const __non_webpack_require__: typeof require; + // Set up localization nls.config({ messageFormat: nls.MessageFormat.bundle, bundleFormat: nls.BundleFormat.standalone })(); const localize: nls.LocalizeFunc = nls.loadMessageBundle(); @@ -283,6 +286,7 @@ function initSubscribers(context: vscode.ExtensionContext, theProvider: IZoweTre */ export function getSecurityModules(moduleName): NodeRequire | undefined { let imperativeIsSecure: boolean = false; + const r = typeof __webpack_require__ === "function" ? __non_webpack_require__ : require; try { const fileName = path.join(getZoweDir(), "settings", "imperative.json"); let settings: any; @@ -302,10 +306,10 @@ export function getSecurityModules(moduleName): NodeRequire | undefined { // Workaround for Theia issue (https://github.com/eclipse-theia/theia/issues/4935) const appRoot = globals.ISTHEIA ? process.cwd() : vscode.env.appRoot; try { - return require(`${appRoot}/node_modules/${moduleName}`); + return r(`${appRoot}/node_modules/${moduleName}`); } catch (err) { /* Do nothing */ } try { - return require(`${appRoot}/node_modules.asar/${moduleName}`); + return r(`${appRoot}/node_modules.asar/${moduleName}`); } catch (err) { /* Do nothing */ } vscode.window.showWarningMessage(localize("initialize.module.load", "Credentials not managed, unable to load security file: ") + moduleName); From bf491f5135f8441fc72c2c3c2e48fdd7555dd93c Mon Sep 17 00:00:00 2001 From: Lauren Li <45975633+lauren-li@users.noreply.github.com> Date: Sun, 21 Jun 2020 22:41:32 -0400 Subject: [PATCH 26/30] Actually use watch for extension development launch Signed-off-by: Lauren Li <45975633+lauren-li@users.noreply.github.com> --- .vscode/launch.json | 2 +- .vscode/tasks.json | 50 +++++++++++++++++++++++++++++++++++++-------- package.json | 2 +- 3 files changed, 44 insertions(+), 10 deletions(-) diff --git a/.vscode/launch.json b/.vscode/launch.json index 3d65e61581..cd00f2ab5e 100644 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -29,7 +29,7 @@ "outFiles": [ "${workspaceFolder}/out/**/*.js" ], - "preLaunchTask": "npm: watch", + "preLaunchTask": "build dev watch", "smartStep": true }, { diff --git a/.vscode/tasks.json b/.vscode/tasks.json index 087560b475..7ce97971ea 100644 --- a/.vscode/tasks.json +++ b/.vscode/tasks.json @@ -12,17 +12,51 @@ "panel": "dedicated", "reveal": "never" }, - "group": "build" + "group": { + "kind": "build", + "isDefault": true + } }, { - "type": "npm", - "script": "build", + "label": "build dev watch", "group": "build", - "presentation": { - "panel": "dedicated", - "reveal": "never" - }, - "problemMatcher":["$tsc"] + "isBackground": true, + "type":"shell", + "command": "npm", + "args": [ + "run", + "watch" + ], + "problemMatcher":[ + { + "owner": "typescript", + "source": "ts", + "applyTo": "closedDocuments", + "fileLocation": "absolute", + "severity": "error", + "pattern": [ + { + "regexp": "\\[tsl\\] ERROR in (.*)?\\((\\d+),(\\d+)\\)", + "file": 1, + "line": 2, + "column": 3 + }, + { + "regexp": "\\s*TS\\d+:\\s*(.*)", + "message": 1 + } + ], + "background": { + "activeOnStart": true, + "beginsPattern": { + "regexp": "Compilation (.*?)starting…" + }, + "endsPattern": { + "regexp": "Compilation (.*?)finished" + } + } + } + ] }, { "label": "Pretest", diff --git a/package.json b/package.json index 5e48f58cea..688cb5e114 100644 --- a/package.json +++ b/package.json @@ -1173,7 +1173,7 @@ "update": "node scripts/stringUpdateScript.js", "package": "vsce package", "license": "node ./scripts/license.js", - "watch": "gulp build && webpack --mode development --vscode-nls --info-verbosity verbose", + "watch": "gulp build && webpack --mode development --vscode-nls --watch --info-verbosity verbose", "compile": "tsc -b", "markdown": "markdownlint CHANGELOG.md README.md", "lint": "npm run lint:src && npm run lint:tests && npm run markdown", From 7b70d68276e6136499549c9779cf923d2a19a349 Mon Sep 17 00:00:00 2001 From: Lauren Li <45975633+lauren-li@users.noreply.github.com> Date: Sun, 21 Jun 2020 23:13:16 -0400 Subject: [PATCH 27/30] Add stringUpdateScript to prepublish Signed-off-by: Lauren Li <45975633+lauren-li@users.noreply.github.com> --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 688cb5e114..cfda47ac16 100644 --- a/package.json +++ b/package.json @@ -1161,7 +1161,7 @@ } }, "scripts": { - "vscode:prepublish": "gulp build && npm run license && npm run lint && webpack --mode production --vscode-nls", + "vscode:prepublish": "gulp build && npm run license && npm run lint && webpack --mode production --vscode-nls && npm run update", "build": "gulp build && npm run license && webpack --mode development --vscode-nls && npm run update", "build:integration": "gulp build && npm run license && tsc --build --pretty", "postinstall": "node ./node_modules/vscode/bin/install", From d90a97bca00ecbda7a1212b4d093cb9eba477451 Mon Sep 17 00:00:00 2001 From: Lauren Li <45975633+lauren-li@users.noreply.github.com> Date: Sun, 21 Jun 2020 23:39:16 -0400 Subject: [PATCH 28/30] Remove stringUpdateScript from regular build Signed-off-by: Lauren Li <45975633+lauren-li@users.noreply.github.com> --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index cfda47ac16..f1caafd050 100644 --- a/package.json +++ b/package.json @@ -1162,7 +1162,7 @@ }, "scripts": { "vscode:prepublish": "gulp build && npm run license && npm run lint && webpack --mode production --vscode-nls && npm run update", - "build": "gulp build && npm run license && webpack --mode development --vscode-nls && npm run update", + "build": "gulp build && npm run license && webpack --mode development --vscode-nls", "build:integration": "gulp build && npm run license && tsc --build --pretty", "postinstall": "node ./node_modules/vscode/bin/install", "test:unit": "jest \".*__tests__.*\\.unit\\.test\\.ts\" --coverage", From 84f46e1dfa02cce1da01d680084e345bfa01dae4 Mon Sep 17 00:00:00 2001 From: Lauren Li <45975633+lauren-li@users.noreply.github.com> Date: Mon, 29 Jun 2020 21:29:30 -0400 Subject: [PATCH 29/30] Update French testing i18n from merge Signed-off-by: Lauren Li <45975633+lauren-li@users.noreply.github.com> --- i18n/fra/src/Profiles.i18n.json | 7 ++++++- i18n/fra/src/abstract/ZoweTreeProvider.i18n.json | 4 ++++ i18n/fra/src/api/ZoweExplorerApiRegister.i18n.json | 3 ++- i18n/fra/src/dataset/actions.i18n.json | 5 ++--- i18n/fra/src/utils.i18n.json | 3 +-- 5 files changed, 15 insertions(+), 7 deletions(-) create mode 100644 i18n/fra/src/abstract/ZoweTreeProvider.i18n.json diff --git a/i18n/fra/src/Profiles.i18n.json b/i18n/fra/src/Profiles.i18n.json index 8d7aee55a2..d8acc51649 100644 --- a/i18n/fra/src/Profiles.i18n.json +++ b/i18n/fra/src/Profiles.i18n.json @@ -1,5 +1,5 @@ { - "ussNodeActions.error": "Error encountered in ", + "checkCurrentProfile.error": "Error encountered in ", "loadNamedProfile.error.profileName": "Could not find profile named: ", "loadNamedProfile.error.period": ".", "createNewConnection.invalidzosURL": "Please enter a valid host URL in the format 'company.com'.", @@ -21,6 +21,11 @@ "createNewConnection.profileName": "Profile name was not supplied. Operation Cancelled", "createNewConnection.profileType": "No profile type was chosen. Operation Cancelled", "createNewConnection.duplicateProfileName": "Profile name already exists. Please create a profile using a different name", + "promptCredentials.undefined.username": "Operation Cancelled", + "promptCredentials.undefined.password": "Operation Cancelled", + "promptCredentials.saveCredentials.button": "Save Credentials", + "promptCredentials.doNotSave.button": "Do Not Save", + "promptCredentials.saveCredentials.infoMessage": "Save entered credentials for future use with profile: {0}? Saving credentials will update the local yaml file.", "deleteProfile.noProfilesLoaded": "No profiles available", "deleteProfile.quickPickOption": "Delete {0}? This will permanently remove it from your system.", "deleteProfile.undefined.profilename": "Operation Cancelled", diff --git a/i18n/fra/src/abstract/ZoweTreeProvider.i18n.json b/i18n/fra/src/abstract/ZoweTreeProvider.i18n.json new file mode 100644 index 0000000000..cee13d1c4f --- /dev/null +++ b/i18n/fra/src/abstract/ZoweTreeProvider.i18n.json @@ -0,0 +1,4 @@ +{ + "validateProfiles.invalid1": "Profile Name ", + "validateProfiles.invalid2": " is inactive. Please check if your Zowe server is active or if the URL and port in your profile is correct." +} \ No newline at end of file diff --git a/i18n/fra/src/api/ZoweExplorerApiRegister.i18n.json b/i18n/fra/src/api/ZoweExplorerApiRegister.i18n.json index 454166cb1e..182871de99 100644 --- a/i18n/fra/src/api/ZoweExplorerApiRegister.i18n.json +++ b/i18n/fra/src/api/ZoweExplorerApiRegister.i18n.json @@ -4,5 +4,6 @@ "registerJesApi.error": "Internal error: A Zowe Explorer extension client tried to register an invalid JES API.", "getUssApi.error": "Internal error: Tried to call a non-existing USS API in API register: ", "getMvsApi.error": "Internal error: Tried to call a non-existing MVS API in API register: ", - "getJesApi.error": "Internal error: Tried to call a non-existing JES API in API register: " + "getJesApi.error": "Internal error: Tried to call a non-existing JES API in API register: ", + "getCommonApi.error": "Internal error: Tried to call a non-existing Common API in API register: " } \ No newline at end of file diff --git a/i18n/fra/src/dataset/actions.i18n.json b/i18n/fra/src/dataset/actions.i18n.json index 04e95ecc73..e7de5c6c09 100644 --- a/i18n/fra/src/dataset/actions.i18n.json +++ b/i18n/fra/src/dataset/actions.i18n.json @@ -23,9 +23,6 @@ "showDSAttributes.log.error": "Error encountered when listing attributes! ", "showDSAttributes.error": "Unable to list attributes: ", "attributes.title": "Attributes", - "renameDataSet.log.debug": "Renaming data set ", - "renameDataSet.log.error": "Error encountered when renaming data set! ", - "renameDataSet.error": "Unable to rename data set: ", "submitJcl.noDocumentOpen": "No editor with a document that could be submitted as JCL is currently open.", "submitJcl.log.debug": "Submitting JCL in document ", "submitJcl.quickPickOption": "Select the Profile to use to submit the job", @@ -33,6 +30,7 @@ "submitJcl.log.error.nullSession": "Session for submitting JCL was null or undefined!", "submitJcl.jobSubmitted": "Job submitted ", "submitJcl.jobSubmissionFailed": "Job submission failed\n", + "submitJcl.checkProfile": "Profile is invalid", "submitMember.invalidNode": "submitMember() called from invalid node.", "submitMember.error.invalidNode": "submitMember() called from invalid node.", "submitMember.jobSubmitted": "Job submitted ", @@ -56,6 +54,7 @@ "enterPattern.options.prompt": "Search data sets by entering patterns: use a comma to separate multiple patterns", "hMigrate.requestSent1": "Migration of dataset: ", "hMigrate.requestSent2": " requested.", + "hMigrateDataSet.checkProfile": "Profile is invalid", "hRecall.requestSent1": "Recall of dataset: ", "hRecall.requestSent2": " requested.", "renameDataSet.name": "Name of Data Set Member", diff --git a/i18n/fra/src/utils.i18n.json b/i18n/fra/src/utils.i18n.json index ae1e8092fe..b9b2854e7a 100644 --- a/i18n/fra/src/utils.i18n.json +++ b/i18n/fra/src/utils.i18n.json @@ -1,4 +1,3 @@ { - "errorHandling.invalid.credentials": "Invalid Credentials. Please ensure the username and password for ", - "errorHandling.invalid.credentials2": " are valid or this may lead to a lock-out." + "errorHandling.invalid.credentials": "Invalid Credentials. Please ensure the username and password for {0} are valid or this may lead to a lock-out." } \ No newline at end of file From 25afd98d3dd7781fd35e0c81c8ed82024f1d77c1 Mon Sep 17 00:00:00 2001 From: Lauren Li <45975633+lauren-li@users.noreply.github.com> Date: Thu, 9 Jul 2020 06:01:16 -0400 Subject: [PATCH 30/30] Remove French i18n testing Signed-off-by: Lauren Li <45975633+lauren-li@users.noreply.github.com> --- gulpfile.js | 2 +- i18n/fra/package.i18n.json | 84 ------------------- .../fra/src/KeytarCredentialManager.i18n.json | 11 --- i18n/fra/src/Profiles.i18n.json | 47 ----------- .../src/abstract/ZoweTreeProvider.i18n.json | 4 - .../src/api/ZoweExplorerApiRegister.i18n.json | 9 -- .../src/api/ZoweExplorerZosmfApi.i18n.json | 3 - .../src/command/MvsCommandHandler.i18n.json | 15 ---- i18n/fra/src/dataset/DatasetTree.i18n.json | 22 ----- .../fra/src/dataset/ZoweDatasetNode.i18n.json | 8 -- i18n/fra/src/dataset/actions.i18n.json | 72 ---------------- i18n/fra/src/extension.i18n.json | 16 ---- i18n/fra/src/job/ZosJobsProvider.i18n.json | 18 ---- i18n/fra/src/job/ZoweJobNode.i18n.json | 5 -- i18n/fra/src/job/actions.i18n.json | 8 -- i18n/fra/src/job/utils.i18n.json | 4 - i18n/fra/src/shared/actions.i18n.json | 10 --- i18n/fra/src/shared/utils.i18n.json | 8 -- i18n/fra/src/uss/USSTree.i18n.json | 17 ---- i18n/fra/src/uss/ZoweUSSNode.i18n.json | 19 ----- i18n/fra/src/uss/actions.i18n.json | 11 --- i18n/fra/src/utils.i18n.json | 3 - i18n/fra/src/utils/profileLink.i18n.json | 8 -- package.nls.fr.json | 84 ------------------- 24 files changed, 1 insertion(+), 487 deletions(-) delete mode 100644 i18n/fra/package.i18n.json delete mode 100644 i18n/fra/src/KeytarCredentialManager.i18n.json delete mode 100644 i18n/fra/src/Profiles.i18n.json delete mode 100644 i18n/fra/src/abstract/ZoweTreeProvider.i18n.json delete mode 100644 i18n/fra/src/api/ZoweExplorerApiRegister.i18n.json delete mode 100644 i18n/fra/src/api/ZoweExplorerZosmfApi.i18n.json delete mode 100644 i18n/fra/src/command/MvsCommandHandler.i18n.json delete mode 100644 i18n/fra/src/dataset/DatasetTree.i18n.json delete mode 100644 i18n/fra/src/dataset/ZoweDatasetNode.i18n.json delete mode 100644 i18n/fra/src/dataset/actions.i18n.json delete mode 100644 i18n/fra/src/extension.i18n.json delete mode 100644 i18n/fra/src/job/ZosJobsProvider.i18n.json delete mode 100644 i18n/fra/src/job/ZoweJobNode.i18n.json delete mode 100644 i18n/fra/src/job/actions.i18n.json delete mode 100644 i18n/fra/src/job/utils.i18n.json delete mode 100644 i18n/fra/src/shared/actions.i18n.json delete mode 100644 i18n/fra/src/shared/utils.i18n.json delete mode 100644 i18n/fra/src/uss/USSTree.i18n.json delete mode 100644 i18n/fra/src/uss/ZoweUSSNode.i18n.json delete mode 100644 i18n/fra/src/uss/actions.i18n.json delete mode 100644 i18n/fra/src/utils.i18n.json delete mode 100644 i18n/fra/src/utils/profileLink.i18n.json delete mode 100644 package.nls.fr.json diff --git a/gulpfile.js b/gulpfile.js index 64314af838..014ec2b2c1 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -25,7 +25,7 @@ const outDest = 'out/src'; // For new languages, add { folderName: 'ISO-639-3-Code-for-language', id: 'vscode-locale-id' } to array below // Ex. for Chinese add: { folderName: 'zho', id: 'zh-cn' } /* ************************* ADD NEW LANGUAGES HERE ******************************** */ -const languages = [{folderName:'fra', id:'fr'}]; +const languages = []; /* ********************************************************************************* */ const cleanTask = function() { return del(['out/**', 'package.nls.*.json', 'vscode-extension-for-zowe*.vsix']); diff --git a/i18n/fra/package.i18n.json b/i18n/fra/package.i18n.json deleted file mode 100644 index 2e1dbbd665..0000000000 --- a/i18n/fra/package.i18n.json +++ /dev/null @@ -1,84 +0,0 @@ -{ - "displayName": "Zowe Explorer", - "description": "VS Code extension, powered by Zowe CLI, that streamlines interaction with mainframe data sets, USS files, and jobs", - "viewsContainers.activitybar": "Zowe", - "zowe.explorer": "Data Sets", - "zowe.uss.explorer": "Unix System Services (USS)", - "zowe.jobs": "Jobs", - "uss.createFile": "Create File", - "uss.createFolder": "Create Directory", - "uss.deleteNode": "Delete", - "uss.renameNode": "Rename", - "addFavorite": "Add to Favorites", - "uss.addFavorite": "Add to Favorites", - "addSession": "Add Profile", - "editSession": "Update Profile", - "createDataset": "Créer un nouveau fichier", - "createMember": "Create New Member", - "showDSAttributes": "Show Data Set Attributes", - "deleteDataset": "Delete Data Set", - "deleteMember": "Delete Member", - "deletePDS": "Delete PDS", - "editMember": "Edit", - "issueCmd": "Issue Command", - "uploadDialog": "Upload Member...", - "pattern": "Search Data Sets by Entering Patterns", - "refreshNode": "Pull from Mainframe", - "removeFavorite": "Remove Favorite", - "uss.removeFavorite": "Remove Favorite", - "removeSavedSearch": "Remove Search", - "removeSession": "Hide Profile", - "saveSearch": "Add to Favorites", - "submitJcl": "Submit JCL", - "submitMember": "Submit Job", - "uss.addSession": "Add Session", - "uss.copyPath": "Copy Path", - "uss.createDirectory": "Create New Directory", - "uss.createNode": "Create new file or directory", - "uss.editFile": "Edit", - "uss.fullPath": "Search Unix System Services (USS) by Entering a Path", - "uss.refreshUSS": "Pull from Mainframe", - "uss.removeSession": "Hide Profile", - "uss.binary": "Toggle Binary", - "uss.uploadDialog": "Upload Files...", - "uss.text": "Toggle Text", - "jobs.search": "Search Jobs using Attributes", - "deleteJob": "Delete Job", - "runModifyCommand": "Issue Modify command", - "runStopCommand": "Issue Stop command", - "setOwner": "Set Owner", - "setPrefix": "Set Job Prefix", - "refreshJobsServer": "Refresh", - "refreshAll": "Refresh All", - "addJobsSession": "Add Profile", - "removeJobsSession": "Hide Profile", - "downloadSpool": "Download Spool", - "getJobJcl": "Get JCL", - "setJobSpool": "Set Spool", - "configuration.title": "Zowe Explorer Settings", - "Zowe-Default-Datasets-Binary": "Default values of Binary data set creation", - "Zowe-Default-Datasets-C": "Default values of C data set creation", - "Zowe-Default-Datasets-Classic": "Default values of Classic data set creation", - "Zowe-Default-Datasets-PDS": "Default values of Partitioned data set creation", - "Zowe-Default-Datasets-PS": "Default values of Sequential data set creation", - "Zowe-Default-Datasets-Favorites": "Toggle if favorite files persist locally", - "Zowe-Temp-Folder-Loacation": "Path to temporary folder location", - "Zowe-Builtin-Security": "Built-in Security. Specify a service of either 'Zowe-Plugin' when using the Secure Credentials Store plugin or @zowe/cli to describe a keytar based solution. The Default 'blank' represents no security. User names and passwords are stored in the clear.", - "Zowe-Default-USS-Persistent-Favorites": "Toggle if USS favorite files persist locally", - "Zowe-Default-Jobs-Persistent-Favorites": "Toggle if Jobs favorite files persist locally", - "Zowe-Default-Commands-Persistent-Favorites": "Toggle if Commands persist locally", - "Zowe-Environment": "Environment where the extension is running, default is VSCode", - "issueMvsCmd": "Zowe: Issue MVS Command...", - "deleteProfile": "Delete Profile", - "cmd.deleteProfile": "Zowe: Delete a Profile Permanently...", - "rename": "Rename", - "copy": "Copy", - "paste": "Paste", - "hMigrateDataSet": "Migrate Data Set", - "hRecallDataSet": "Recall Data Set", - "profile.configuration.title": "Zowe z/OSMF Profiles", - "profile.configuration.name": "Profile Name", - "profile.configuration.url": "z/OSMF URL", - "profile.configuration.user": "z/OSMF User Name", - "profile.configuration.ru": "Profile Reject Unauthorize" -} \ No newline at end of file diff --git a/i18n/fra/src/KeytarCredentialManager.i18n.json b/i18n/fra/src/KeytarCredentialManager.i18n.json deleted file mode 100644 index b3c7097958..0000000000 --- a/i18n/fra/src/KeytarCredentialManager.i18n.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "errorHandling.deleteCredentials": "Unable to delete credentials.", - "errorHandling.loadCredentials": "Unable to load credentials.", - "credentials.missingEntryMessage.1": "Could not find an entry in the credential vault for the following:\n", - "credentials.missingEntryMessage.2": " Service = {0}\n", - "credentials.missingEntryMessage.3": " Account = {0}\n\n", - "credentials.missingEntryMessage.4": "Possible Causes:\n", - "credentials.missingEntryMessage.5": " This could have been caused by any manual removal of credentials from your vault.\n\n", - "credentials.missingEntryMessage.6": "Resolutions:\n", - "credentials.missingEntryMessage.7": " Recreate the credentials in the vault for the particular service in the vault." -} \ No newline at end of file diff --git a/i18n/fra/src/Profiles.i18n.json b/i18n/fra/src/Profiles.i18n.json deleted file mode 100644 index d8acc51649..0000000000 --- a/i18n/fra/src/Profiles.i18n.json +++ /dev/null @@ -1,47 +0,0 @@ -{ - "checkCurrentProfile.error": "Error encountered in ", - "loadNamedProfile.error.profileName": "Could not find profile named: ", - "loadNamedProfile.error.period": ".", - "createNewConnection.invalidzosURL": "Please enter a valid host URL in the format 'company.com'.", - "addSession.quickPickOption": "Choose \"Create new...\" to define a new profile or select an existing profile to Add to the USS Explorer", - "enterPattern.pattern": "No selection made.", - "createNewConnection.option.prompt.profileName.placeholder": "Connection Name", - "createNewConnection.option.prompt.profileName": "Enter a name for the connection", - "createNewConnection.enterprofileName": "Profile Name was not supplied. Operation Cancelled", - "addSession.log.debug.createNewProfile": "User created a new profile", - "createZoweSession.log.debug.selectProfile": "User selected profile ", - "createZoweSession.log.debug.cancelledSelection": "User cancelled profile selection", - "createNewConnection.zosmfURL": "No valid value for z/OS URL. Operation Cancelled", - "createNewConnection.undefined.port": "Invalid Port number provided or operation was cancelled", - "createNewConnection.undefined.username": "Operation Cancelled", - "createNewConnection.rejectUnauthorize": "Operation Cancelled", - "createNewConnection.booleanValue": "Operation Cancelled", - "editConnection.success": "Profile was successfully updated", - "createNewConnection.option.prompt.type.placeholder": "Profile Type", - "createNewConnection.profileName": "Profile name was not supplied. Operation Cancelled", - "createNewConnection.profileType": "No profile type was chosen. Operation Cancelled", - "createNewConnection.duplicateProfileName": "Profile name already exists. Please create a profile using a different name", - "promptCredentials.undefined.username": "Operation Cancelled", - "promptCredentials.undefined.password": "Operation Cancelled", - "promptCredentials.saveCredentials.button": "Save Credentials", - "promptCredentials.doNotSave.button": "Do Not Save", - "promptCredentials.saveCredentials.infoMessage": "Save entered credentials for future use with profile: {0}? Saving credentials will update the local yaml file.", - "deleteProfile.noProfilesLoaded": "No profiles available", - "deleteProfile.quickPickOption": "Delete {0}? This will permanently remove it from your system.", - "deleteProfile.undefined.profilename": "Operation Cancelled", - "deleteProfile.noSelected": "Operation Cancelled", - "deleteProfile.log.debug": "Deleting profile ", - "deleteProfile.showQuickPick.delete": "Delete", - "deleteProfile.showQuickPick.cancel": "Cancel", - "deleteProfile.showQuickPick.log.debug": "User picked Cancel. Cancelling delete of profile", - "deleteProfile.delete.log.error": "Error encountered when deleting profile! ", - "createNewConnection.option.prompt.url.placeholder": "https://url:port", - "createNewConnection.option.prompt.url": "Enter a z/OS URL in the format 'https://url:port'.", - "createNewConnection.option.prompt.port.placeholder": "Port Number", - "createNewConnection.option.prompt.username.placeholder": "Optional: User Name", - "createNewConnection.option.prompt.username": "Enter the user name for the connection. Leave blank to not store.", - "createNewConnection.undefined.passWord": "Operation Cancelled", - "createNewConnection.option.prompt.password.placeholder": "Optional: Password", - "createNewConnection.option.prompt.password": "Enter the password for the connection. Leave blank to not store.", - "createNewConnection.option.prompt.ru.placeholder": "Reject Unauthorized Connections" -} \ No newline at end of file diff --git a/i18n/fra/src/abstract/ZoweTreeProvider.i18n.json b/i18n/fra/src/abstract/ZoweTreeProvider.i18n.json deleted file mode 100644 index cee13d1c4f..0000000000 --- a/i18n/fra/src/abstract/ZoweTreeProvider.i18n.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "validateProfiles.invalid1": "Profile Name ", - "validateProfiles.invalid2": " is inactive. Please check if your Zowe server is active or if the URL and port in your profile is correct." -} \ No newline at end of file diff --git a/i18n/fra/src/api/ZoweExplorerApiRegister.i18n.json b/i18n/fra/src/api/ZoweExplorerApiRegister.i18n.json deleted file mode 100644 index 182871de99..0000000000 --- a/i18n/fra/src/api/ZoweExplorerApiRegister.i18n.json +++ /dev/null @@ -1,9 +0,0 @@ -{ - "registerUssApi.error": "Internal error: A Zowe Explorer extension client tried to register an invalid USS API.", - "registerMvsApi.error": "Internal error: A Zowe Explorer extension client tried to register an invalid MVS API.", - "registerJesApi.error": "Internal error: A Zowe Explorer extension client tried to register an invalid JES API.", - "getUssApi.error": "Internal error: Tried to call a non-existing USS API in API register: ", - "getMvsApi.error": "Internal error: Tried to call a non-existing MVS API in API register: ", - "getJesApi.error": "Internal error: Tried to call a non-existing JES API in API register: ", - "getCommonApi.error": "Internal error: Tried to call a non-existing Common API in API register: " -} \ No newline at end of file diff --git a/i18n/fra/src/api/ZoweExplorerZosmfApi.i18n.json b/i18n/fra/src/api/ZoweExplorerZosmfApi.i18n.json deleted file mode 100644 index 2ad8483f86..0000000000 --- a/i18n/fra/src/api/ZoweExplorerZosmfApi.i18n.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "api.zosmfUSSApi.putContents": "Uploading USS file" -} \ No newline at end of file diff --git a/i18n/fra/src/command/MvsCommandHandler.i18n.json b/i18n/fra/src/command/MvsCommandHandler.i18n.json deleted file mode 100644 index dd7a140fe5..0000000000 --- a/i18n/fra/src/command/MvsCommandHandler.i18n.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "issueMvsCommand.outputchannel.title": "Zowe MVS Command", - "issueMvsCommand.quickPickOption": "Select the Profile to use to submit the command", - "issueMvsCommand.undefined.profilename": "Operation Cancelled", - "issueMvsCommand.noProfilesLoaded": "No profiles available", - "issueMvsCommand.checkProfile": "Profile is invalid", - "issueMvsCommand.command.hostname": "Select a command to run immediately against ", - "issueMvsCommand.command.edit": " (An option to edit will follow)", - "issueMvsCommand.options.noselection": "No selection made.", - "issueMvsCommand.command.hostnameAlt": "Select a command to run against ", - "issueMvsCommand.command": "Enter or update the command", - "issueMvsCommand.enter.command": "No command entered.", - "issueMvsCommand.command.submitted": "MVS command submitted.", - "command.option.prompt.search": "Create a new Command" -} \ No newline at end of file diff --git a/i18n/fra/src/dataset/DatasetTree.i18n.json b/i18n/fra/src/dataset/DatasetTree.i18n.json deleted file mode 100644 index 95f03f8f91..0000000000 --- a/i18n/fra/src/dataset/DatasetTree.i18n.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "Favorites": "Favorites", - "initializeFavorites.log.debug": "initializing favorites", - "initializeFavorites.error.profile1": "Error: You have Zowe Data Set favorites that refer to a non-existent CLI profile named: ", - "intializeFavorites.error.profile2": ". To resolve this, you can create a profile with this name, ", - "initializeFavorites.error.profile3": "or remove the favorites with this profile name from the Zowe-DS-Persistent setting, which can be found in your ", - "initializeFavorites.error.profile4": " user settings.", - "loadNamedProfile.error.profileName": "Initialization Error: Could not find profile named: ", - "loadNamedProfile.error.period": ".", - "initializeFavorites.fileCorrupted": "Favorites file corrupted: ", - "addFavorite": "PDS already in favorites", - "findParentNode.unsuccessful": "Node does not exist. It may have been deleted.", - "enterPattern.log.debug.prompt": "Prompting the user for a data set pattern", - "searchHistory.options.prompt": "Select a filter", - "enterPattern.pattern": "No selection made.", - "enterPattern.options.prompt": "Search data sets by entering patterns: use a comma to separate multiple patterns", - "datasetFilterPrompt.enterPattern": "You must enter a pattern.", - "renameDataSet.log.debug": "Renaming data set ", - "renameDataSet.log.error": "Error encountered when renaming data set! ", - "renameDataSet.error": "Unable to rename data set: ", - "defaultFilterPrompt.option.prompt.search": "Create a new filter. Comma separate multiple entries (pattern 1, pattern 2, ...)" -} \ No newline at end of file diff --git a/i18n/fra/src/dataset/ZoweDatasetNode.i18n.json b/i18n/fra/src/dataset/ZoweDatasetNode.i18n.json deleted file mode 100644 index 878421c64a..0000000000 --- a/i18n/fra/src/dataset/ZoweDatasetNode.i18n.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "getChildren.search": "Use the search button to display datasets", - "getChildren.error.invalidNode": "Invalid node", - "ZoweJobNode.getJobs.progress": "Get Dataset list command submitted.", - "getChildren.responses.error": "The response from Zowe CLI was not successful", - "getChildren.noDataset": "No datasets found", - "getChildren.error.response": "Retrieving response from " -} \ No newline at end of file diff --git a/i18n/fra/src/dataset/actions.i18n.json b/i18n/fra/src/dataset/actions.i18n.json deleted file mode 100644 index e7de5c6c09..0000000000 --- a/i18n/fra/src/dataset/actions.i18n.json +++ /dev/null @@ -1,72 +0,0 @@ -{ - "enterPattern.pattern": "You must enter a pattern.", - "createMember.inputBox": "Name of Member", - "createMember.log.debug.createNewDataSet": "creating new data set member of name ", - "createMember.log.error": "Error encountered when creating member! ", - "createMember.error": "Unable to create member: ", - "openPS.invalidNode": "openPS() called from invalid node.", - "openPS.error.invalidNode": "openPS() called from invalid node. ", - "openPS.log.debug.openDataSet": "opening physical sequential data set from label ", - "openPS.log.error.openDataSet": "Error encountered when opening data set! ", - "createFile.quickPickOption.dataSetType": "Type of Data Set to be Created", - "createFile.dataSetBinary": "Data Set Binary", - "createFile.dataSetC": "Data Set C", - "createFile.dataSetClassic": "Data Set Classic", - "createFile.dataSetPartitioned": "Data Set Partitioned", - "createFile.dataSetSequential": "Data Set Sequential", - "createFile.log.debug.noValidTypeSelected": "No valid data type selected", - "createFile.log.debug.creatingNewDataSet": "Creating new data set", - "dataset.name": "Name of Data Set", - "createDataSet.error": "Error encountered when creating data set! ", - "showDSAttributes.debug": "showing attributes of data set ", - "showDSAttributes.lengthError": "No matching data set names found for query: ", - "showDSAttributes.log.error": "Error encountered when listing attributes! ", - "showDSAttributes.error": "Unable to list attributes: ", - "attributes.title": "Attributes", - "submitJcl.noDocumentOpen": "No editor with a document that could be submitted as JCL is currently open.", - "submitJcl.log.debug": "Submitting JCL in document ", - "submitJcl.quickPickOption": "Select the Profile to use to submit the job", - "submitJcl.noProfile": "No profiles available", - "submitJcl.log.error.nullSession": "Session for submitting JCL was null or undefined!", - "submitJcl.jobSubmitted": "Job submitted ", - "submitJcl.jobSubmissionFailed": "Job submission failed\n", - "submitJcl.checkProfile": "Profile is invalid", - "submitMember.invalidNode": "submitMember() called from invalid node.", - "submitMember.error.invalidNode": "submitMember() called from invalid node.", - "submitMember.jobSubmitted": "Job submitted ", - "submitMember.jobSubmissionFailed": "Job submission failed\n", - "deleteDataset.log.debug": "Deleting data set ", - "deleteDataset.quickPickOption": "Delete {0}? This will permanently remove it from your system.", - "deleteDataset.showQuickPick.delete": "Supprimer", - "deleteDataset.showQuickPick.Cancel": "Annuler", - "deleteDataset.showQuickPick.log.debug": "User picked Cancel. Cancelling delete of data set", - "deleteDataSet.invalidNode.error": "deleteDataSet() called from invalid node.", - "deleteDataSet.delete.log.error": "Error encountered when deleting data set! ", - "deleteDataSet.error.notFound": "not found", - "deleteDataSet.notFound.error1": "Unable to find file: ", - "deleteDataSet.notFound.error2": " was probably already deleted.", - "refreshPS.error.invalidNode": "refreshPS() called from invalid node.", - "refreshPS.log.error.refresh": "Error encountered when refreshing data set view: ", - "refreshPS.error.notFound": "not found", - "refreshPS.file1": "Unable to find file: ", - "refreshPS.file2": " was probably deleted.", - "enterPattern.log.debug.prompt": "Prompting the user for a data set pattern", - "enterPattern.options.prompt": "Search data sets by entering patterns: use a comma to separate multiple patterns", - "hMigrate.requestSent1": "Migration of dataset: ", - "hMigrate.requestSent2": " requested.", - "hMigrateDataSet.checkProfile": "Profile is invalid", - "hRecall.requestSent1": "Recall of dataset: ", - "hRecall.requestSent2": " requested.", - "renameDataSet.name": "Name of Data Set Member", - "saveFile.log.debug.request": "requested to save data set: ", - "saveFile.log.debug.path": "path.relative returned a non-blank directory.", - "saveFile.log.debug.directory": "Assuming we are not in the DS_DIR directory: ", - "saveFile.log.error.session": "Couldn't locate session when saving data set!", - "saveFile.log.debug.load": "Loading session from session node in saveFile()", - "saveFile.log.debug.sessionNode": "couldn't find session node, loading profile with CLI profile manager", - "saveFile.log.debug.saving": "Saving file ", - "saveFile.error.saveFailed": "Data set failed to save. Data set may have been deleted on mainframe.", - "saveFile.response.save.title": "Saving data set...", - "saveFile.error.ZosmfEtagMismatchError": "Rest API failure with HTTP(S) status 412", - "saveFile.error.etagMismatch": "Remote file has been modified in the meantime.\nSelect 'Compare' to resolve the conflict." -} \ No newline at end of file diff --git a/i18n/fra/src/extension.i18n.json b/i18n/fra/src/extension.i18n.json deleted file mode 100644 index 02c0b275ff..0000000000 --- a/i18n/fra/src/extension.i18n.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "initialize.log.debug": "Initialized logger from VSCode extension", - "displayName": "Zowe Explorer", - "initialize.log.error": "Error encountered while activating and initializing logger! ", - "onDidSaveTextDocument1": "File was saved -- determining whether the file is a USS file or Data set.\n Comparing (case insensitive) ", - "onDidSaveTextDocument2": " against directory ", - "onDidSaveTextDocument3": "and", - "activate.didSaveText.isDataSet": "File is a data set-- saving ", - "activate.didSaveText.isUSSFile": "File is a USS file -- saving", - "activate.didSaveText.file": "File ", - "activate.didSaveText.notDataSet": " is not a data set or USS file ", - "profile.init.read.imperative": "Unable to read imperative file. ", - "initialize.module.load": "Credentials not managed, unable to load security file: ", - "moveTempFolder.error": "Error encountered when creating temporary folder! ", - "deactivate.error": "Unable to delete temporary folder. " -} \ No newline at end of file diff --git a/i18n/fra/src/job/ZosJobsProvider.i18n.json b/i18n/fra/src/job/ZosJobsProvider.i18n.json deleted file mode 100644 index 8f2e64e936..0000000000 --- a/i18n/fra/src/job/ZosJobsProvider.i18n.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "Favorites": "Favorites", - "deleteJob.job": "Job ", - "deleteJob.delete": " deleted", - "initializeFavorites.log.debug": "initializing favorites", - "initializeJobsFavorites.error.profile1": "Error: You have Jobs favorites that refer to a non-existent CLI profile named: ", - "initializeJobsFavorites.error.profile2": ". To resolve this, you can create a profile with this name, ", - "initializeJobsFavorites.error.profile3": "or remove the favorites with this profile name from the Zowe-Jobs-Persistent setting, which can be found in your ", - "initializeJobsFavorites.error.profile4": " user settings.", - "searchHistory.options.prompt": "Select a filter", - "enterPattern.pattern": "No selection made.", - "jobsFilterPrompt.option.prompt.owner": "Enter the Job Owner. Default is *.", - "jobs.enter.valid.owner": "Please enter a valid owner name (no spaces allowed).", - "jobsFilterPrompt.enterPrefix": "Search Cancelled", - "jobsFilterPrompt.option.prompt.prefix": "Enter a Job prefix. Default is *.", - "jobsFilterPrompt.option.prompt.jobid": "Enter a Job id", - "SpecifyCriteria": "Create new.." -} \ No newline at end of file diff --git a/i18n/fra/src/job/ZoweJobNode.i18n.json b/i18n/fra/src/job/ZoweJobNode.i18n.json deleted file mode 100644 index f012b6cb79..0000000000 --- a/i18n/fra/src/job/ZoweJobNode.i18n.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "ZoweJobNode.getJobs.spoolfiles": "Get Job Spool files command submitted.", - "ZoweJobNode.getJobs.jobs": "Get Jobs command submitted.", - "getChildren.error.response": "Retrieving response from " -} \ No newline at end of file diff --git a/i18n/fra/src/job/actions.i18n.json b/i18n/fra/src/job/actions.i18n.json deleted file mode 100644 index 5e4498987f..0000000000 --- a/i18n/fra/src/job/actions.i18n.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "downloadSpool.select": "Select", - "modifyCommand.command.prompt": "Modify Command", - "modifyCommand.response": "Command response: ", - "stopCommand.response": "Command response: ", - "setOwner.newOwner.prompt.owner": "Owner", - "setOwner.newOwner.prompt.prefix": "Prefix" -} \ No newline at end of file diff --git a/i18n/fra/src/job/utils.i18n.json b/i18n/fra/src/job/utils.i18n.json deleted file mode 100644 index 5ccbc6db31..0000000000 --- a/i18n/fra/src/job/utils.i18n.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "zosJobsProvider.option.prompt.createId": "Job Id search", - "zosJobsProvider.option.prompt.createOwner": "Owner/Prefix Job Search" -} \ No newline at end of file diff --git a/i18n/fra/src/shared/actions.i18n.json b/i18n/fra/src/shared/actions.i18n.json deleted file mode 100644 index 47f2a55d77..0000000000 --- a/i18n/fra/src/shared/actions.i18n.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "searchHistory.options.prompt": "Enter a filter", - "searchInAllLoadedItems.noneLoaded": "No items are loaded in the tree.", - "searchInAllLoadedItems.enterPattern": "You must enter a pattern.", - "enterPattern.log.debug.prompt": "Prompting the user to choose a recent member for editing", - "memberHistory.option.prompt.open": "Select a recent member to open", - "memberHistory.options.prompt": "Select a recent member to open", - "enterPattern.pattern": "No selection made.", - "getRecentMembers.empty": "No recent members found." -} \ No newline at end of file diff --git a/i18n/fra/src/shared/utils.i18n.json b/i18n/fra/src/shared/utils.i18n.json deleted file mode 100644 index 90abf60db9..0000000000 --- a/i18n/fra/src/shared/utils.i18n.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "saveFile.response.save.title": "Saving data set...", - "saveUSSFile.response.title": "Saving file...", - "saveFile.error.theiaDetected": "A merge conflict has been detected. Since you are running inside Theia editor, a merge conflict resolution is not available yet.", - "saveFile.info.confirmUpload": "Would you like to overwrite the remote file?", - "saveFile.overwriteConfirmation.yes": "Yes", - "saveFile.overwriteConfirmation.no": "No" -} \ No newline at end of file diff --git a/i18n/fra/src/uss/USSTree.i18n.json b/i18n/fra/src/uss/USSTree.i18n.json deleted file mode 100644 index e75bdf2e09..0000000000 --- a/i18n/fra/src/uss/USSTree.i18n.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "Favorites": "Favorites", - "renameUSSNode.error": "Unable to rename node: ", - "enterPattern.log.debug.prompt": "Prompting the user to choose a member from the filtered list", - "filterPrompt.log.debug.promptUSSPath": "Prompting the user for a USS path", - "searchHistory.options.prompt": "Select a filter", - "enterPattern.pattern": "No selection made.", - "filterPrompt.option.prompt.search": "Create a new filter", - "filterPrompt.enterPath": "You must enter a path.", - "initializeFavorites.log.debug": "initializing favorites", - "initializeUSSFavorites.lines.title": "Open", - "initializeUSSFavorites.error.profile1": "Error: You have Zowe USS favorites that refer to a non-existent CLI profile named: ", - "intializeUSSFavorites.error.profile2": ". To resolve this, you can create a profile with this name, ", - "initializeUSSFavorites.error.profile3": "or remove the favorites with this profile name from the Zowe-USS-Persistent setting, which can be found in your ", - "initializeUSSFavorites.error.profile4": " user settings.", - "findUSSItem.unsuccessful": "File does not exist. It may have been deleted." -} \ No newline at end of file diff --git a/i18n/fra/src/uss/ZoweUSSNode.i18n.json b/i18n/fra/src/uss/ZoweUSSNode.i18n.json deleted file mode 100644 index 9b3b28a858..0000000000 --- a/i18n/fra/src/uss/ZoweUSSNode.i18n.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "getChildren.error.invalidNode": "Invalid node", - "ZoweUssNode.getList.progress": "Get USS file list command submitted.", - "getChildren.error.response": "Retrieving response from ", - "getChildren.responses.error.response": "The response from Zowe CLI was not successful", - "getChildren.responses.open": "Open", - "deleteUSSNode.quickPickOption": "Delete {0}? This will permanently remove it from your system.", - "deleteUSSNode.showQuickPick.delete": "Delete", - "deleteUSSNode.showQuickPick.cancel": "Cancel", - "deleteUSSNode.error.node": "Unable to delete node: ", - "openUSS.error.invalidNode": "open() called from invalid node.", - "refreshUSS.error.invalidNode": "refreshUSS() called from invalid node.", - "refreshUSS.error.notFound": "not found", - "refreshUSS.file1": "Unable to find file: ", - "refreshUSS.file2": " was probably deleted.", - "openUSS.log.info.failedToOpenAsText.yes": "Re-download", - "openUSS.log.info.failedToOpenAsText.no": "Cancel", - "openUSS.log.info.failedToOpenAsText": "Failed to open file as text. Re-download file as binary?" -} \ No newline at end of file diff --git a/i18n/fra/src/uss/actions.i18n.json b/i18n/fra/src/uss/actions.i18n.json deleted file mode 100644 index 9ebe20eafd..0000000000 --- a/i18n/fra/src/uss/actions.i18n.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "createUSSNode.name": "Name of file or directory", - "createUSSNode.error.create": "Unable to create node: ", - "renameUSSNode.error": "Unable to rename node: ", - "copyPath.infoMessage": "Copy Path is not yet supported in Theia.", - "saveUSSFile.log.debug.saveRequest": "save requested for USS file ", - "saveUSSFile.response.title": "Saving file...", - "saveFile.error.ZosmfEtagMismatchError": "Rest API failure with HTTP(S) status 412", - "saveFile.error.etagMismatch": "Remote file has been modified in the meantime.\nSelect 'Compare' to resolve the conflict.", - "saveUSSFile.log.error.save": "Error encountered when saving USS file: " -} \ No newline at end of file diff --git a/i18n/fra/src/utils.i18n.json b/i18n/fra/src/utils.i18n.json deleted file mode 100644 index b9b2854e7a..0000000000 --- a/i18n/fra/src/utils.i18n.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "errorHandling.invalid.credentials": "Invalid Credentials. Please ensure the username and password for {0} are valid or this may lead to a lock-out." -} \ No newline at end of file diff --git a/i18n/fra/src/utils/profileLink.i18n.json b/i18n/fra/src/utils/profileLink.i18n.json deleted file mode 100644 index e2ab4da936..0000000000 --- a/i18n/fra/src/utils/profileLink.i18n.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "profileLink.notTreeItem": "Tree Item is not a Zowe Explorer item.", - "profileLink.selectAltProfile": "Select a type of alternative profile to associate with this primary profile", - "profileLink.selectFileName": "Select the file name to associate with this primary profile", - "profileLink.associated": "Associated secondary profile {0}:{1} with {2}:{3} primary.", - "profileLink.unableToSave": "Unable to save profile association. ", - "profileLink.missingProfile": "Attempted to load a missing profile." -} \ No newline at end of file diff --git a/package.nls.fr.json b/package.nls.fr.json deleted file mode 100644 index 4cf7dc3e8d..0000000000 --- a/package.nls.fr.json +++ /dev/null @@ -1,84 +0,0 @@ -{ - "displayName": "Zowe Explorer", - "description": "VS Code extension, powered by Zowe CLI, that streamlines interaction with mainframe data sets, USS files, and jobs", - "viewsContainers.activitybar": "Zowe", - "zowe.explorer": "Data Sets", - "zowe.uss.explorer": "Unix System Services (USS)", - "zowe.jobs": "Jobs", - "uss.createFile": "Create File", - "uss.createFolder": "Create Directory", - "uss.deleteNode": "Delete", - "uss.renameNode": "Rename", - "addFavorite": "Add to Favorites", - "uss.addFavorite": "Add to Favorites", - "addSession": "Add Profile", - "editSession": "Update Profile", - "createDataset": "Créer un nouveau fichier", - "createMember": "Create New Member", - "showDSAttributes": "Show Data Set Attributes", - "deleteDataset": "Delete Data Set", - "deleteMember": "Delete Member", - "deletePDS": "Delete PDS", - "editMember": "Edit", - "issueCmd": "Issue Command", - "uploadDialog": "Upload Member...", - "pattern": "Search Data Sets by Entering Patterns", - "refreshNode": "Pull from Mainframe", - "removeFavorite": "Remove Favorite", - "uss.removeFavorite": "Remove Favorite", - "removeSavedSearch": "Remove Search", - "removeSession": "Hide Profile", - "saveSearch": "Add to Favorites", - "submitJcl": "Submit JCL", - "submitMember": "Submit Job", - "uss.addSession": "Add Session", - "uss.copyPath": "Copy Path", - "uss.createDirectory": "Create New Directory", - "uss.createNode": "Create new file or directory", - "uss.editFile": "Edit", - "uss.fullPath": "Search Unix System Services (USS) by Entering a Path", - "uss.refreshUSS": "Pull from Mainframe", - "uss.removeSession": "Hide Profile", - "uss.binary": "Toggle Binary", - "uss.uploadDialog": "Upload Files...", - "uss.text": "Toggle Text", - "jobs.search": "Search Jobs using Attributes", - "deleteJob": "Delete Job", - "runModifyCommand": "Issue Modify command", - "runStopCommand": "Issue Stop command", - "setOwner": "Set Owner", - "setPrefix": "Set Job Prefix", - "refreshJobsServer": "Refresh", - "refreshAll": "Refresh All", - "addJobsSession": "Add Profile", - "removeJobsSession": "Hide Profile", - "downloadSpool": "Download Spool", - "getJobJcl": "Get JCL", - "setJobSpool": "Set Spool", - "configuration.title": "Zowe Explorer Settings", - "Zowe-Default-Datasets-Binary": "Default values of Binary data set creation", - "Zowe-Default-Datasets-C": "Default values of C data set creation", - "Zowe-Default-Datasets-Classic": "Default values of Classic data set creation", - "Zowe-Default-Datasets-PDS": "Default values of Partitioned data set creation", - "Zowe-Default-Datasets-PS": "Default values of Sequential data set creation", - "Zowe-Default-Datasets-Favorites": "Toggle if favorite files persist locally", - "Zowe-Temp-Folder-Loacation": "Path to temporary folder location", - "Zowe-Builtin-Security": "Built-in Security. Specify a service of either 'Zowe-Plugin' when using the Secure Credentials Store plugin or @zowe/cli to describe a keytar based solution. The Default 'blank' represents no security. User names and passwords are stored in the clear.", - "Zowe-Default-USS-Persistent-Favorites": "Toggle if USS favorite files persist locally", - "Zowe-Default-Jobs-Persistent-Favorites": "Toggle if Jobs favorite files persist locally", - "Zowe-Default-Commands-Persistent-Favorites": "Toggle if Commands persist locally", - "Zowe-Environment": "Environment where the extension is running, default is VSCode", - "issueMvsCmd": "Zowe: Issue MVS Command...", - "deleteProfile": "Delete Profile", - "cmd.deleteProfile": "Zowe: Delete a Profile Permanently...", - "rename": "Rename", - "copy": "Copy", - "paste": "Paste", - "hMigrateDataSet": "Migrate Data Set", - "hRecallDataSet": "Recall Data Set", - "profile.configuration.title": "Zowe z/OSMF Profiles", - "profile.configuration.name": "Profile Name", - "profile.configuration.url": "z/OSMF URL", - "profile.configuration.user": "z/OSMF User Name", - "profile.configuration.ru": "Profile Reject Unauthorize" -} \ No newline at end of file