├── .editorconfig ├── .gitignore ├── LICENSE ├── README.md ├── package-lock.json ├── package.json ├── postinstall.js ├── pull_request_template.md ├── src └── index.js └── test.js /.editorconfig: -------------------------------------------------------------------------------- 1 | root = true 2 | 3 | [*] 4 | end_of_line = lf 5 | insert_final_newline = true 6 | [*.js] 7 | 8 | charset = utf-8 9 | indent_style = space 10 | indent_size = 4 11 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Logs 2 | logs 3 | *.log 4 | npm-debug.log* 5 | yarn-debug.log* 6 | yarn-error.log* 7 | lerna-debug.log* 8 | 9 | # Diagnostic reports (https://nodejs.org/api/report.html) 10 | report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json 11 | 12 | # Runtime data 13 | pids 14 | *.pid 15 | *.seed 16 | *.pid.lock 17 | 18 | # Directory for instrumented libs generated by jscoverage/JSCover 19 | lib-cov 20 | 21 | # Coverage directory used by tools like istanbul 22 | coverage 23 | *.lcov 24 | 25 | # nyc test coverage 26 | .nyc_output 27 | 28 | # Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files) 29 | .grunt 30 | 31 | # Bower dependency directory (https://bower.io/) 32 | bower_components 33 | 34 | # node-waf configuration 35 | .lock-wscript 36 | 37 | # Compiled binary addons (https://nodejs.org/api/addons.html) 38 | build/Release 39 | 40 | # Dependency directories 41 | node_modules/ 42 | jspm_packages/ 43 | 44 | # TypeScript v1 declaration files 45 | typings/ 46 | 47 | # TypeScript cache 48 | *.tsbuildinfo 49 | 50 | # Optional npm cache directory 51 | .npm 52 | 53 | # Optional eslint cache 54 | .eslintcache 55 | 56 | # Microbundle cache 57 | .rpt2_cache/ 58 | .rts2_cache_cjs/ 59 | .rts2_cache_es/ 60 | .rts2_cache_umd/ 61 | 62 | # Optional REPL history 63 | .node_repl_history 64 | 65 | # Output of 'npm pack' 66 | *.tgz 67 | 68 | # Yarn Integrity file 69 | .yarn-integrity 70 | 71 | # dotenv environment variables file 72 | .env 73 | .env.test 74 | 75 | # parcel-bundler cache (https://parceljs.org/) 76 | .cache 77 | 78 | # Next.js build output 79 | .next 80 | 81 | # Nuxt.js build / generate output 82 | .nuxt 83 | dist 84 | 85 | # Gatsby files 86 | .cache/ 87 | # Comment in the public line in if your project uses Gatsby and *not* Next.js 88 | # https://nextjs.org/blog/next-9-1#public-directory-support 89 | # public 90 | 91 | # vuepress build output 92 | .vuepress/dist 93 | 94 | # Serverless directories 95 | .serverless/ 96 | 97 | # FuseBox cache 98 | .fusebox/ 99 | 100 | # DynamoDB Local files 101 | .dynamodb/ 102 | 103 | # TernJS port file 104 | .tern-port 105 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2019 Maksim Shastsel 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Reverse Int 2 | 3 | ## Task 4 | 5 | Given: number, your task is to implement function that reverse digits of this number. 6 | 7 | For example: 8 | ```js 9 | reverse(123); // 321 10 | reverse(233); // 332 11 | reverse(535); // 535 12 | reverse(95034); // 43059 13 | ``` 14 | 15 | Write your code in `src/index.js. 16 | *All test cases are designed as “error-free”, so don't worry about handling any errors.* 17 | 18 | ## Prepare and test 19 | 1. Install [Node.js](https://nodejs.org/en/download/) 20 | 2. Fork this repository: reverse-int 21 | 3. Clone your newly created repo: https://github.com/<%your_github_username%>/reverse-int/ 22 | 4. Go to folder `reverse-int` 23 | 5. To install all dependencies use [`npm install`](https://docs.npmjs.com/cli/install) 24 | 6. Run `npm test` in the command line 25 | 7. You will see the number of passing and failing tests you 100% of passing tests is equal to 100p in score 26 | 27 | ## Submit to [rs app](https://app.rs.school) 28 | 1. Open [rs app](https://app.rs.school) and login 29 | 2. Open `RS APP` and click `Auto Test` 30 | 3. Select your task (reverse-int) 31 | 4. Press the submit button and enjoy 32 | 33 | ### Notes 34 | 1. We recommend you to use nodejs of version 14 or lower. If you using are any of the features which are not supported by v12, the score won't be submitted. 35 | 2. Each of your test case is limited to 30 sec. 36 | -------------------------------------------------------------------------------- /package-lock.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "rsapp-task-template", 3 | "version": "1.0.0", 4 | "lockfileVersion": 1, 5 | "requires": true, 6 | "dependencies": { 7 | "ansi-colors": { 8 | "version": "3.2.3", 9 | "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.3.tgz", 10 | "integrity": "sha512-LEHHyuhlPY3TmuUYMh2oz89lTShfvgbmzaBcxve9t/9Wuy7Dwf4yoAKcND7KFT1HAQfqZ12qtc+DUrBMeKF9nw==" 11 | }, 12 | "ansi-regex": { 13 | "version": "3.0.0", 14 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", 15 | "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=" 16 | }, 17 | "ansi-styles": { 18 | "version": "3.2.1", 19 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", 20 | "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", 21 | "requires": { 22 | "color-convert": "^1.9.0" 23 | } 24 | }, 25 | "argparse": { 26 | "version": "1.0.10", 27 | "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", 28 | "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", 29 | "requires": { 30 | "sprintf-js": "~1.0.2" 31 | } 32 | }, 33 | "assertion-error": { 34 | "version": "1.1.0", 35 | "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", 36 | "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==" 37 | }, 38 | "balanced-match": { 39 | "version": "1.0.0", 40 | "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", 41 | "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" 42 | }, 43 | "brace-expansion": { 44 | "version": "1.1.11", 45 | "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", 46 | "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", 47 | "requires": { 48 | "balanced-match": "^1.0.0", 49 | "concat-map": "0.0.1" 50 | } 51 | }, 52 | "browser-stdout": { 53 | "version": "1.3.1", 54 | "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz", 55 | "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==" 56 | }, 57 | "camelcase": { 58 | "version": "5.3.1", 59 | "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", 60 | "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==" 61 | }, 62 | "chai": { 63 | "version": "4.2.0", 64 | "resolved": "https://registry.npmjs.org/chai/-/chai-4.2.0.tgz", 65 | "integrity": "sha512-XQU3bhBukrOsQCuwZndwGcCVQHyZi53fQ6Ys1Fym7E4olpIqqZZhhoFJoaKVvV17lWQoXYwgWN2nF5crA8J2jw==", 66 | "requires": { 67 | "assertion-error": "^1.1.0", 68 | "check-error": "^1.0.2", 69 | "deep-eql": "^3.0.1", 70 | "get-func-name": "^2.0.0", 71 | "pathval": "^1.1.0", 72 | "type-detect": "^4.0.5" 73 | } 74 | }, 75 | "chalk": { 76 | "version": "2.4.2", 77 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", 78 | "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", 79 | "requires": { 80 | "ansi-styles": "^3.2.1", 81 | "escape-string-regexp": "^1.0.5", 82 | "supports-color": "^5.3.0" 83 | }, 84 | "dependencies": { 85 | "supports-color": { 86 | "version": "5.5.0", 87 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", 88 | "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", 89 | "requires": { 90 | "has-flag": "^3.0.0" 91 | } 92 | } 93 | } 94 | }, 95 | "check-error": { 96 | "version": "1.0.2", 97 | "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.2.tgz", 98 | "integrity": "sha1-V00xLt2Iu13YkS6Sht1sCu1KrII=" 99 | }, 100 | "cliui": { 101 | "version": "5.0.0", 102 | "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", 103 | "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", 104 | "requires": { 105 | "string-width": "^3.1.0", 106 | "strip-ansi": "^5.2.0", 107 | "wrap-ansi": "^5.1.0" 108 | }, 109 | "dependencies": { 110 | "ansi-regex": { 111 | "version": "4.1.0", 112 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", 113 | "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==" 114 | }, 115 | "string-width": { 116 | "version": "3.1.0", 117 | "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", 118 | "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", 119 | "requires": { 120 | "emoji-regex": "^7.0.1", 121 | "is-fullwidth-code-point": "^2.0.0", 122 | "strip-ansi": "^5.1.0" 123 | } 124 | }, 125 | "strip-ansi": { 126 | "version": "5.2.0", 127 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", 128 | "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", 129 | "requires": { 130 | "ansi-regex": "^4.1.0" 131 | } 132 | } 133 | } 134 | }, 135 | "color-convert": { 136 | "version": "1.9.3", 137 | "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", 138 | "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", 139 | "requires": { 140 | "color-name": "1.1.3" 141 | } 142 | }, 143 | "color-name": { 144 | "version": "1.1.3", 145 | "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", 146 | "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" 147 | }, 148 | "colors": { 149 | "version": "1.4.0", 150 | "resolved": "https://registry.npmjs.org/colors/-/colors-1.4.0.tgz", 151 | "integrity": "sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA==" 152 | }, 153 | "concat-map": { 154 | "version": "0.0.1", 155 | "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", 156 | "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" 157 | }, 158 | "debug": { 159 | "version": "3.2.6", 160 | "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", 161 | "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", 162 | "requires": { 163 | "ms": "^2.1.1" 164 | } 165 | }, 166 | "decamelize": { 167 | "version": "1.2.0", 168 | "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", 169 | "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=" 170 | }, 171 | "deep-eql": { 172 | "version": "3.0.1", 173 | "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-3.0.1.tgz", 174 | "integrity": "sha512-+QeIQyN5ZuO+3Uk5DYh6/1eKO0m0YmJFGNmFHGACpf1ClL1nmlV/p4gNgbl2pJGxgXb4faqo6UE+M5ACEMyVcw==", 175 | "requires": { 176 | "type-detect": "^4.0.0" 177 | } 178 | }, 179 | "define-properties": { 180 | "version": "1.1.3", 181 | "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", 182 | "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", 183 | "requires": { 184 | "object-keys": "^1.0.12" 185 | } 186 | }, 187 | "diff": { 188 | "version": "3.5.0", 189 | "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", 190 | "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==" 191 | }, 192 | "emoji-regex": { 193 | "version": "7.0.3", 194 | "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", 195 | "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==" 196 | }, 197 | "es-abstract": { 198 | "version": "1.17.0-next.1", 199 | "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.0-next.1.tgz", 200 | "integrity": "sha512-7MmGr03N7Rnuid6+wyhD9sHNE2n4tFSwExnU2lQl3lIo2ShXWGePY80zYaoMOmILWv57H0amMjZGHNzzGG70Rw==", 201 | "requires": { 202 | "es-to-primitive": "^1.2.1", 203 | "function-bind": "^1.1.1", 204 | "has": "^1.0.3", 205 | "has-symbols": "^1.0.1", 206 | "is-callable": "^1.1.4", 207 | "is-regex": "^1.0.4", 208 | "object-inspect": "^1.7.0", 209 | "object-keys": "^1.1.1", 210 | "object.assign": "^4.1.0", 211 | "string.prototype.trimleft": "^2.1.0", 212 | "string.prototype.trimright": "^2.1.0" 213 | } 214 | }, 215 | "es-to-primitive": { 216 | "version": "1.2.1", 217 | "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", 218 | "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", 219 | "requires": { 220 | "is-callable": "^1.1.4", 221 | "is-date-object": "^1.0.1", 222 | "is-symbol": "^1.0.2" 223 | } 224 | }, 225 | "escape-string-regexp": { 226 | "version": "1.0.5", 227 | "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", 228 | "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" 229 | }, 230 | "esprima": { 231 | "version": "4.0.1", 232 | "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", 233 | "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==" 234 | }, 235 | "find-up": { 236 | "version": "3.0.0", 237 | "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", 238 | "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", 239 | "requires": { 240 | "locate-path": "^3.0.0" 241 | } 242 | }, 243 | "flat": { 244 | "version": "4.1.0", 245 | "resolved": "https://registry.npmjs.org/flat/-/flat-4.1.0.tgz", 246 | "integrity": "sha512-Px/TiLIznH7gEDlPXcUD4KnBusa6kR6ayRUVcnEAbreRIuhkqow/mun59BuRXwoYk7ZQOLW1ZM05ilIvK38hFw==", 247 | "requires": { 248 | "is-buffer": "~2.0.3" 249 | } 250 | }, 251 | "fs.realpath": { 252 | "version": "1.0.0", 253 | "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", 254 | "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" 255 | }, 256 | "function-bind": { 257 | "version": "1.1.1", 258 | "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", 259 | "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" 260 | }, 261 | "get-caller-file": { 262 | "version": "2.0.5", 263 | "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", 264 | "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==" 265 | }, 266 | "get-func-name": { 267 | "version": "2.0.0", 268 | "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.0.tgz", 269 | "integrity": "sha1-6td0q+5y4gQJQzoGY2YCPdaIekE=" 270 | }, 271 | "glob": { 272 | "version": "7.1.3", 273 | "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", 274 | "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", 275 | "requires": { 276 | "fs.realpath": "^1.0.0", 277 | "inflight": "^1.0.4", 278 | "inherits": "2", 279 | "minimatch": "^3.0.4", 280 | "once": "^1.3.0", 281 | "path-is-absolute": "^1.0.0" 282 | } 283 | }, 284 | "growl": { 285 | "version": "1.10.5", 286 | "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.5.tgz", 287 | "integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==" 288 | }, 289 | "has": { 290 | "version": "1.0.3", 291 | "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", 292 | "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", 293 | "requires": { 294 | "function-bind": "^1.1.1" 295 | } 296 | }, 297 | "has-flag": { 298 | "version": "3.0.0", 299 | "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", 300 | "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" 301 | }, 302 | "has-symbols": { 303 | "version": "1.0.1", 304 | "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz", 305 | "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==" 306 | }, 307 | "he": { 308 | "version": "1.2.0", 309 | "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", 310 | "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==" 311 | }, 312 | "inflight": { 313 | "version": "1.0.6", 314 | "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", 315 | "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", 316 | "requires": { 317 | "once": "^1.3.0", 318 | "wrappy": "1" 319 | } 320 | }, 321 | "inherits": { 322 | "version": "2.0.4", 323 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", 324 | "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" 325 | }, 326 | "is-buffer": { 327 | "version": "2.0.4", 328 | "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.4.tgz", 329 | "integrity": "sha512-Kq1rokWXOPXWuaMAqZiJW4XxsmD9zGx9q4aePabbn3qCRGedtH7Cm+zV8WETitMfu1wdh+Rvd6w5egwSngUX2A==" 330 | }, 331 | "is-callable": { 332 | "version": "1.1.4", 333 | "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.4.tgz", 334 | "integrity": "sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA==" 335 | }, 336 | "is-date-object": { 337 | "version": "1.0.1", 338 | "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.1.tgz", 339 | "integrity": "sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=" 340 | }, 341 | "is-fullwidth-code-point": { 342 | "version": "2.0.0", 343 | "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", 344 | "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=" 345 | }, 346 | "is-regex": { 347 | "version": "1.0.4", 348 | "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz", 349 | "integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=", 350 | "requires": { 351 | "has": "^1.0.1" 352 | } 353 | }, 354 | "is-symbol": { 355 | "version": "1.0.3", 356 | "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz", 357 | "integrity": "sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==", 358 | "requires": { 359 | "has-symbols": "^1.0.1" 360 | } 361 | }, 362 | "isexe": { 363 | "version": "2.0.0", 364 | "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", 365 | "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" 366 | }, 367 | "js-yaml": { 368 | "version": "3.13.1", 369 | "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", 370 | "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", 371 | "requires": { 372 | "argparse": "^1.0.7", 373 | "esprima": "^4.0.0" 374 | } 375 | }, 376 | "locate-path": { 377 | "version": "3.0.0", 378 | "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", 379 | "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", 380 | "requires": { 381 | "p-locate": "^3.0.0", 382 | "path-exists": "^3.0.0" 383 | } 384 | }, 385 | "lodash": { 386 | "version": "4.17.15", 387 | "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz", 388 | "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==" 389 | }, 390 | "log-symbols": { 391 | "version": "2.2.0", 392 | "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-2.2.0.tgz", 393 | "integrity": "sha512-VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg==", 394 | "requires": { 395 | "chalk": "^2.0.1" 396 | } 397 | }, 398 | "minimatch": { 399 | "version": "3.0.4", 400 | "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", 401 | "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", 402 | "requires": { 403 | "brace-expansion": "^1.1.7" 404 | } 405 | }, 406 | "minimist": { 407 | "version": "0.0.8", 408 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", 409 | "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" 410 | }, 411 | "mkdirp": { 412 | "version": "0.5.1", 413 | "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", 414 | "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", 415 | "requires": { 416 | "minimist": "0.0.8" 417 | } 418 | }, 419 | "mocha": { 420 | "version": "6.2.2", 421 | "resolved": "https://registry.npmjs.org/mocha/-/mocha-6.2.2.tgz", 422 | "integrity": "sha512-FgDS9Re79yU1xz5d+C4rv1G7QagNGHZ+iXF81hO8zY35YZZcLEsJVfFolfsqKFWunATEvNzMK0r/CwWd/szO9A==", 423 | "requires": { 424 | "ansi-colors": "3.2.3", 425 | "browser-stdout": "1.3.1", 426 | "debug": "3.2.6", 427 | "diff": "3.5.0", 428 | "escape-string-regexp": "1.0.5", 429 | "find-up": "3.0.0", 430 | "glob": "7.1.3", 431 | "growl": "1.10.5", 432 | "he": "1.2.0", 433 | "js-yaml": "3.13.1", 434 | "log-symbols": "2.2.0", 435 | "minimatch": "3.0.4", 436 | "mkdirp": "0.5.1", 437 | "ms": "2.1.1", 438 | "node-environment-flags": "1.0.5", 439 | "object.assign": "4.1.0", 440 | "strip-json-comments": "2.0.1", 441 | "supports-color": "6.0.0", 442 | "which": "1.3.1", 443 | "wide-align": "1.1.3", 444 | "yargs": "13.3.0", 445 | "yargs-parser": "13.1.1", 446 | "yargs-unparser": "1.6.0" 447 | } 448 | }, 449 | "ms": { 450 | "version": "2.1.1", 451 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", 452 | "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==" 453 | }, 454 | "node-environment-flags": { 455 | "version": "1.0.5", 456 | "resolved": "https://registry.npmjs.org/node-environment-flags/-/node-environment-flags-1.0.5.tgz", 457 | "integrity": "sha512-VNYPRfGfmZLx0Ye20jWzHUjyTW/c+6Wq+iLhDzUI4XmhrDd9l/FozXV3F2xOaXjvp0co0+v1YSR3CMP6g+VvLQ==", 458 | "requires": { 459 | "object.getownpropertydescriptors": "^2.0.3", 460 | "semver": "^5.7.0" 461 | }, 462 | "dependencies": { 463 | "semver": { 464 | "version": "5.7.1", 465 | "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", 466 | "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" 467 | } 468 | } 469 | }, 470 | "object-inspect": { 471 | "version": "1.7.0", 472 | "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.7.0.tgz", 473 | "integrity": "sha512-a7pEHdh1xKIAgTySUGgLMx/xwDZskN1Ud6egYYN3EdRW4ZMPNEDUTF+hwy2LUC+Bl+SyLXANnwz/jyh/qutKUw==" 474 | }, 475 | "object-keys": { 476 | "version": "1.1.1", 477 | "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", 478 | "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==" 479 | }, 480 | "object.assign": { 481 | "version": "4.1.0", 482 | "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", 483 | "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", 484 | "requires": { 485 | "define-properties": "^1.1.2", 486 | "function-bind": "^1.1.1", 487 | "has-symbols": "^1.0.0", 488 | "object-keys": "^1.0.11" 489 | } 490 | }, 491 | "object.getownpropertydescriptors": { 492 | "version": "2.1.0", 493 | "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.0.tgz", 494 | "integrity": "sha512-Z53Oah9A3TdLoblT7VKJaTDdXdT+lQO+cNpKVnya5JDe9uLvzu1YyY1yFDFrcxrlRgWrEFH0jJtD/IbuwjcEVg==", 495 | "requires": { 496 | "define-properties": "^1.1.3", 497 | "es-abstract": "^1.17.0-next.1" 498 | } 499 | }, 500 | "once": { 501 | "version": "1.4.0", 502 | "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", 503 | "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", 504 | "requires": { 505 | "wrappy": "1" 506 | } 507 | }, 508 | "p-limit": { 509 | "version": "2.2.1", 510 | "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.1.tgz", 511 | "integrity": "sha512-85Tk+90UCVWvbDavCLKPOLC9vvY8OwEX/RtKF+/1OADJMVlFfEHOiMTPVyxg7mk/dKa+ipdHm0OUkTvCpMTuwg==", 512 | "requires": { 513 | "p-try": "^2.0.0" 514 | } 515 | }, 516 | "p-locate": { 517 | "version": "3.0.0", 518 | "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", 519 | "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", 520 | "requires": { 521 | "p-limit": "^2.0.0" 522 | } 523 | }, 524 | "p-try": { 525 | "version": "2.2.0", 526 | "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", 527 | "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==" 528 | }, 529 | "path-exists": { 530 | "version": "3.0.0", 531 | "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", 532 | "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=" 533 | }, 534 | "path-is-absolute": { 535 | "version": "1.0.1", 536 | "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", 537 | "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" 538 | }, 539 | "pathval": { 540 | "version": "1.1.0", 541 | "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.0.tgz", 542 | "integrity": "sha1-uULm1L3mUwBe9rcTYd74cn0GReA=" 543 | }, 544 | "require-directory": { 545 | "version": "2.1.1", 546 | "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", 547 | "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=" 548 | }, 549 | "require-main-filename": { 550 | "version": "2.0.0", 551 | "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", 552 | "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==" 553 | }, 554 | "semver": { 555 | "version": "6.3.0", 556 | "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", 557 | "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" 558 | }, 559 | "set-blocking": { 560 | "version": "2.0.0", 561 | "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", 562 | "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" 563 | }, 564 | "sprintf-js": { 565 | "version": "1.0.3", 566 | "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", 567 | "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" 568 | }, 569 | "string-width": { 570 | "version": "2.1.1", 571 | "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", 572 | "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", 573 | "requires": { 574 | "is-fullwidth-code-point": "^2.0.0", 575 | "strip-ansi": "^4.0.0" 576 | } 577 | }, 578 | "string.prototype.trimleft": { 579 | "version": "2.1.0", 580 | "resolved": "https://registry.npmjs.org/string.prototype.trimleft/-/string.prototype.trimleft-2.1.0.tgz", 581 | "integrity": "sha512-FJ6b7EgdKxxbDxc79cOlok6Afd++TTs5szo+zJTUyow3ycrRfJVE2pq3vcN53XexvKZu/DJMDfeI/qMiZTrjTw==", 582 | "requires": { 583 | "define-properties": "^1.1.3", 584 | "function-bind": "^1.1.1" 585 | } 586 | }, 587 | "string.prototype.trimright": { 588 | "version": "2.1.0", 589 | "resolved": "https://registry.npmjs.org/string.prototype.trimright/-/string.prototype.trimright-2.1.0.tgz", 590 | "integrity": "sha512-fXZTSV55dNBwv16uw+hh5jkghxSnc5oHq+5K/gXgizHwAvMetdAJlHqqoFC1FSDVPYWLkAKl2cxpUT41sV7nSg==", 591 | "requires": { 592 | "define-properties": "^1.1.3", 593 | "function-bind": "^1.1.1" 594 | } 595 | }, 596 | "strip-ansi": { 597 | "version": "4.0.0", 598 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", 599 | "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", 600 | "requires": { 601 | "ansi-regex": "^3.0.0" 602 | } 603 | }, 604 | "strip-json-comments": { 605 | "version": "2.0.1", 606 | "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", 607 | "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=" 608 | }, 609 | "supports-color": { 610 | "version": "6.0.0", 611 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.0.0.tgz", 612 | "integrity": "sha512-on9Kwidc1IUQo+bQdhi8+Tijpo0e1SS6RoGo2guUwn5vdaxw8RXOF9Vb2ws+ihWOmh4JnCJOvaziZWP1VABaLg==", 613 | "requires": { 614 | "has-flag": "^3.0.0" 615 | } 616 | }, 617 | "type-detect": { 618 | "version": "4.0.8", 619 | "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", 620 | "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==" 621 | }, 622 | "which": { 623 | "version": "1.3.1", 624 | "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", 625 | "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", 626 | "requires": { 627 | "isexe": "^2.0.0" 628 | } 629 | }, 630 | "which-module": { 631 | "version": "2.0.0", 632 | "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", 633 | "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=" 634 | }, 635 | "wide-align": { 636 | "version": "1.1.3", 637 | "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", 638 | "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", 639 | "requires": { 640 | "string-width": "^1.0.2 || 2" 641 | } 642 | }, 643 | "wrap-ansi": { 644 | "version": "5.1.0", 645 | "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", 646 | "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", 647 | "requires": { 648 | "ansi-styles": "^3.2.0", 649 | "string-width": "^3.0.0", 650 | "strip-ansi": "^5.0.0" 651 | }, 652 | "dependencies": { 653 | "ansi-regex": { 654 | "version": "4.1.0", 655 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", 656 | "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==" 657 | }, 658 | "string-width": { 659 | "version": "3.1.0", 660 | "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", 661 | "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", 662 | "requires": { 663 | "emoji-regex": "^7.0.1", 664 | "is-fullwidth-code-point": "^2.0.0", 665 | "strip-ansi": "^5.1.0" 666 | } 667 | }, 668 | "strip-ansi": { 669 | "version": "5.2.0", 670 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", 671 | "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", 672 | "requires": { 673 | "ansi-regex": "^4.1.0" 674 | } 675 | } 676 | } 677 | }, 678 | "wrappy": { 679 | "version": "1.0.2", 680 | "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", 681 | "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" 682 | }, 683 | "y18n": { 684 | "version": "4.0.0", 685 | "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", 686 | "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==" 687 | }, 688 | "yargs": { 689 | "version": "13.3.0", 690 | "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.0.tgz", 691 | "integrity": "sha512-2eehun/8ALW8TLoIl7MVaRUrg+yCnenu8B4kBlRxj3GJGDKU1Og7sMXPNm1BYyM1DOJmTZ4YeN/Nwxv+8XJsUA==", 692 | "requires": { 693 | "cliui": "^5.0.0", 694 | "find-up": "^3.0.0", 695 | "get-caller-file": "^2.0.1", 696 | "require-directory": "^2.1.1", 697 | "require-main-filename": "^2.0.0", 698 | "set-blocking": "^2.0.0", 699 | "string-width": "^3.0.0", 700 | "which-module": "^2.0.0", 701 | "y18n": "^4.0.0", 702 | "yargs-parser": "^13.1.1" 703 | }, 704 | "dependencies": { 705 | "ansi-regex": { 706 | "version": "4.1.0", 707 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", 708 | "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==" 709 | }, 710 | "string-width": { 711 | "version": "3.1.0", 712 | "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", 713 | "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", 714 | "requires": { 715 | "emoji-regex": "^7.0.1", 716 | "is-fullwidth-code-point": "^2.0.0", 717 | "strip-ansi": "^5.1.0" 718 | } 719 | }, 720 | "strip-ansi": { 721 | "version": "5.2.0", 722 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", 723 | "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", 724 | "requires": { 725 | "ansi-regex": "^4.1.0" 726 | } 727 | } 728 | } 729 | }, 730 | "yargs-parser": { 731 | "version": "13.1.1", 732 | "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.1.tgz", 733 | "integrity": "sha512-oVAVsHz6uFrg3XQheFII8ESO2ssAf9luWuAd6Wexsu4F3OtIW0o8IribPXYrD4WC24LWtPrJlGy87y5udK+dxQ==", 734 | "requires": { 735 | "camelcase": "^5.0.0", 736 | "decamelize": "^1.2.0" 737 | } 738 | }, 739 | "yargs-unparser": { 740 | "version": "1.6.0", 741 | "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-1.6.0.tgz", 742 | "integrity": "sha512-W9tKgmSn0DpSatfri0nx52Joq5hVXgeLiqR/5G0sZNDoLZFOr/xjBUDcShCOGNsBnEMNo1KAMBkTej1Hm62HTw==", 743 | "requires": { 744 | "flat": "^4.1.0", 745 | "lodash": "^4.17.15", 746 | "yargs": "^13.3.0" 747 | } 748 | } 749 | } 750 | } 751 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "rsapp-task-template", 3 | "version": "1.0.0", 4 | "description": "Template for rsapp task", 5 | "main": "index.js", 6 | "scripts": { 7 | "test": "mocha test", 8 | "postinstall": "node postinstall.js" 9 | }, 10 | "engines": { 11 | "node": "<=14" 12 | }, 13 | "repository": { 14 | "type": "git", 15 | "url": "git+https://github.com/Shastel/rsapp-task-template.git" 16 | }, 17 | "author": "max@shas.tel", 18 | "license": "MIT", 19 | "bugs": { 20 | "url": "https://github.com/Shastel/rsapp-task-template/issues" 21 | }, 22 | "homepage": "https://github.com/Shastel/rsapp-task-template#readme", 23 | "dependencies": { 24 | "chai": "^4.2.0", 25 | "colors": "^1.4.0", 26 | "mocha": "^6.2.2", 27 | "semver": "^6.3.0" 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /postinstall.js: -------------------------------------------------------------------------------- 1 | const semver = require('semver'); 2 | const colors = require('colors/safe'); 3 | 4 | const { engines: { node: nodeVersion }} = require('./package'); 5 | 6 | if (!semver.satisfies(process.version, nodeVersion)) { 7 | process.emitWarning( 8 | colors.red(` 9 | For this task we are strictly recomend you to use node ${nodeVersion}. 10 | Now you are using node ${process.version}, if you are using any of features that not supported by node ${nodeVersion}, score won't be submitted 11 | `) 12 | ); 13 | } 14 | -------------------------------------------------------------------------------- /pull_request_template.md: -------------------------------------------------------------------------------- 1 | # ⚠️ ALL CHECKOBOXES MUST BE CHECKED BEFORE SUBBMITING A PULL REQUEST ⚠️ 2 | 3 | - [ ] I confirm that everything below is true 4 | - [ ] I understand that I'm not supposed to put solution to this repository 5 | - [ ] I confirm that It is not a solution to the task, but fix in task itself 6 | - [ ] In case if it is a solution I agree to get **-100 points** for the task 7 | -------------------------------------------------------------------------------- /src/index.js: -------------------------------------------------------------------------------- 1 | module.exports = function reverse (n) { 2 | 3 | } 4 | -------------------------------------------------------------------------------- /test.js: -------------------------------------------------------------------------------- 1 | const assert = require('assert'); 2 | 3 | const reverse = require('./src'); 4 | 5 | it('Should return 261 when 162 given', () => { 6 | const reversed = reverse(162); 7 | 8 | assert.equal(reversed, 261); 9 | }); 10 | it('Should return 291 when -192 given', () => { 11 | const reversed = reverse(-192); 12 | 13 | assert.equal(reversed, 291); 14 | }); 15 | it('Should return 252 when -252 given', () => { 16 | const reversed = reverse(-252); 17 | 18 | assert.equal(reversed, 252); 19 | }); 20 | it('Should return 71 when 170 given', () => { 21 | const reversed = reverse(170); 22 | 23 | assert.equal(reversed, 71); 24 | }); 25 | it('Should return 605 when 506 given', () => { 26 | const reversed = reverse(506); 27 | 28 | assert.equal(reversed, 605); 29 | }); 30 | it('Should return 835 when -538 given', () => { 31 | const reversed = reverse(-538); 32 | 33 | assert.equal(reversed, 835); 34 | }); 35 | it('Should return 465 when 564 given', () => { 36 | const reversed = reverse(564); 37 | 38 | assert.equal(reversed, 465); 39 | }); 40 | it('Should return 891 when -198 given', () => { 41 | const reversed = reverse(-198); 42 | 43 | assert.equal(reversed, 891); 44 | }); 45 | it('Should return 715 when -517 given', () => { 46 | const reversed = reverse(-517); 47 | 48 | assert.equal(reversed, 715); 49 | }); 50 | it('Should return 601 when -106 given', () => { 51 | const reversed = reverse(-106); 52 | 53 | assert.equal(reversed, 601); 54 | }); 55 | it('Should return 462 when -264 given', () => { 56 | const reversed = reverse(-264); 57 | 58 | assert.equal(reversed, 462); 59 | }); 60 | it('Should return 332 when 233 given', () => { 61 | const reversed = reverse(233); 62 | 63 | assert.equal(reversed, 332); 64 | }); 65 | it('Should return 763 when -367 given', () => { 66 | const reversed = reverse(-367); 67 | 68 | assert.equal(reversed, 763); 69 | }); 70 | it('Should return 25 when 520 given', () => { 71 | const reversed = reverse(520); 72 | 73 | assert.equal(reversed, 25); 74 | }); 75 | it('Should return 822 when 228 given', () => { 76 | const reversed = reverse(228); 77 | 78 | assert.equal(reversed, 822); 79 | }); 80 | it('Should return 231 when -132 given', () => { 81 | const reversed = reverse(-132); 82 | 83 | assert.equal(reversed, 231); 84 | }); 85 | it('Should return 152 when -251 given', () => { 86 | const reversed = reverse(-251); 87 | 88 | assert.equal(reversed, 152); 89 | }); 90 | it('Should return 561 when 165 given', () => { 91 | const reversed = reverse(165); 92 | 93 | assert.equal(reversed, 561); 94 | }); 95 | it('Should return 524 when -425 given', () => { 96 | const reversed = reverse(-425); 97 | 98 | assert.equal(reversed, 524); 99 | }); 100 | it('Should return 535 when 535 given', () => { 101 | const reversed = reverse(535); 102 | 103 | assert.equal(reversed, 535); 104 | }); 105 | --------------------------------------------------------------------------------