├── README.md ├── nc-codebot ├── config.json ├── data │ ├── enmap.sqlite │ ├── enmap.sqlite-shm │ └── enmap.sqlite-wal ├── index.js ├── package-lock.json ├── package.json └── startbot.bat └── nc-codes ├── codebot.sql ├── fxmanifest.lua └── main.lua /README.md: -------------------------------------------------------------------------------- 1 | # Things you should know: 2 | 3 | * The code was built for Old QBCore, you can of course change it to new if you want. (If you need help feel free to ask) 4 | * When you go into the nc-codes folder make sure in 100% that you change from ```NCCore``` to your Core. 5 | * When you go into the nc-codebot folder (which is actually the folder of the bot that you put in your server) make sure you edit everything in config.js and also in index.js 6 | * In the nc-codebot folder you will need to edit within the config.js the ```"token", "logo", "community_name", "role_access_id", and all the details of the database_``` 7 | * In the nc-codebot folder you will need to edit inside the index.js line 104 - ```let logs = client.channels.cache.get ('Put Here Your Channel ID')```. All codes created will be in the channel of your choice. 8 | * If you have any further questions - https://discord.gg/cKt4Mpd2PQ 9 | -------------------------------------------------------------------------------- /nc-codebot/config.json: -------------------------------------------------------------------------------- 1 | { 2 | "token": "Put here your discord token!", 3 | "prefix": "!", 4 | "logo": "https://cdn.discordapp.com/attachments/#/#/logo.png", 5 | "hex_color": "#0099ff", 6 | "community_name": "NCBot - Community", 7 | "role_access_id": "Put Here the Discord Role ID", 8 | "code_length": 5, 9 | "numbers_in_code": true, 10 | 11 | "database_host": "localhost", 12 | "database_user": "root", 13 | "database_password": "", 14 | "database_base": "naornc" 15 | } -------------------------------------------------------------------------------- /nc-codebot/data/enmap.sqlite: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NaorNC/nc-codebot/d1b3391ca00954bae65642e76690832e474bb5bd/nc-codebot/data/enmap.sqlite -------------------------------------------------------------------------------- /nc-codebot/data/enmap.sqlite-shm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NaorNC/nc-codebot/d1b3391ca00954bae65642e76690832e474bb5bd/nc-codebot/data/enmap.sqlite-shm -------------------------------------------------------------------------------- /nc-codebot/data/enmap.sqlite-wal: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NaorNC/nc-codebot/d1b3391ca00954bae65642e76690832e474bb5bd/nc-codebot/data/enmap.sqlite-wal -------------------------------------------------------------------------------- /nc-codebot/index.js: -------------------------------------------------------------------------------- 1 | const Discord = require('discord.js'); 2 | const client = new Discord.Client({ partials: ["MESSAGE", "USER", "REACTION"] }); 3 | const { token, prefix, logo, hex_color, community_name, role_access_id, code_length, numbers_in_code, database_host, database_user, database_password, database_base } = require('./config.json'); 4 | var mysql = require('mysql') 5 | 6 | var con = mysql.createConnection({ 7 | host: database_host, 8 | user: database_user, 9 | password: database_password, 10 | database: database_base 11 | }) 12 | con.connect(function(err) { 13 | if (err) throw err; 14 | console.log("MySQL connected!") 15 | }) 16 | 17 | function createCode(code, type, amount) { 18 | var sql = "INSERT INTO ncodes (code, type, amount) VALUES('" + code + "', '" + type + "', '" + amount + "')"; 19 | con.query(sql, function (result){ 20 | if (result) { console.log(result) } 21 | console.log("Code Created Successfully") 22 | }); 23 | } 24 | 25 | function sendSuccsess(fromUser, toUser, code, type, amount, chnl, toUserUN) { 26 | 27 | const MadePrivateEmbed = new Discord.MessageEmbed() 28 | .setColor(hex_color) 29 | .setTitle('The code has been successfully made.') 30 | .setFooter("RED") 31 | .addFields( 32 | { name: 'Code:', value: code}, 33 | { name: 'Type:', value: type, inline: true }, 34 | { name: 'Amount:', value: amount, inline: true }, 35 | ) 36 | .setAuthor(community_name + " Redeem System [By NC]", logo) 37 | .setTimestamp() 38 | 39 | toUser.send(MadePrivateEmbed); 40 | 41 | const MadeEmbed = new Discord.MessageEmbed() 42 | .setColor(hex_color) 43 | .setTitle('The code has been successfully made.') 44 | .setDescription(fromUser + ' Created a code to ' + toUserUN) 45 | .setAuthor(community_name + " Redeem System [By NC]", logo) 46 | .setTimestamp() 47 | 48 | chnl.send(MadeEmbed); 49 | } 50 | 51 | function randomString() { 52 | var result = ''; 53 | var length = code_length; 54 | if (numbers_in_code) { 55 | var chars = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ'; 56 | } 57 | else { 58 | var chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'; 59 | } 60 | for (var i = length; i > 0; --i) result += chars[Math.floor(Math.random() * chars.length)]; 61 | return result; 62 | } 63 | 64 | function sendusage(chnl) { 65 | const sendusage = new Discord.MessageEmbed() 66 | .setColor(hex_color) 67 | .setTitle('Usage - !create @User | Cash/Item | Amount') 68 | .setAuthor(community_name + " Redeem System [By NC]", logo) 69 | .setTimestamp() 70 | 71 | chnl.send(sendusage); 72 | } 73 | 74 | client.on('ready', () => { 75 | console.log(`${community_name} Bot Online!`); 76 | }); 77 | 78 | client.on('message', async message => { 79 | if(message.author.bot) return; 80 | if(message.content.indexOf(prefix) !== 0) return; 81 | 82 | const args = message.content.slice(prefix.length).trim().split(/ +/g); 83 | const command = args.shift().toLowerCase(); 84 | 85 | if(command == "create") { 86 | if(!message.member.roles.cache.has(role_access_id)) return; 87 | message.delete() 88 | const toUser = message.mentions.members.first() 89 | const fromUser = message.author.username 90 | const toUserUN = message.mentions.users.first() 91 | if(toUserUN == undefined)return sendusage(message.channel); 92 | if(args[1] == undefined)return sendusage(message.channel); 93 | const type = args[1].toLowerCase() 94 | const amount = args[2] 95 | if(toUser == undefined) return sendusage(message.channel); 96 | if(type == undefined) return sendusage(message.channel); 97 | console.log(type) 98 | if(amount < 1) return sendusage(message.channel); 99 | var code = randomString(); 100 | createCode(code, type, amount) 101 | sendSuccsess(fromUser, toUser, code, type, amount, message.channel, toUserUN) 102 | 103 | 104 | let logs = client.channels.cache.get('Put Here Your Channel ID') 105 | let embed = new Discord.MessageEmbed() 106 | .setAuthor("Code Created", message.guild.iconURL({dynamic:true})) 107 | .setColor("RED") 108 | .addFields( 109 | { name: "Code For Use:", value: code, inline: true}, 110 | { name: "Type of Code:", value: type, inline: true}, 111 | { name: "Amount:", value: amount, inline: true}, 112 | { name: "User:", value: toUser, inline: true}, 113 | { name: "Created By:", value: message.author, inline: true}, 114 | ) 115 | .setFooter(message.guild.name) 116 | logs.send(embed) 117 | } 118 | }) 119 | 120 | 121 | 122 | client.login(token); -------------------------------------------------------------------------------- /nc-codebot/package-lock.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "nc-codebot", 3 | "version": "1.0.0", 4 | "lockfileVersion": 1, 5 | "requires": true, 6 | "dependencies": { 7 | "@discordjs/collection": { 8 | "version": "0.1.5", 9 | "resolved": "https://registry.npmjs.org/@discordjs/collection/-/collection-0.1.5.tgz", 10 | "integrity": "sha512-CU1q0UXQUpFNzNB7gufgoisDHP7n+T3tkqTsp3MNUkVJ5+hS3BCvME8uCXAUFlz+6T2FbTCu75A+yQ7HMKqRKw==" 11 | }, 12 | "@discordjs/form-data": { 13 | "version": "3.0.1", 14 | "resolved": "https://registry.npmjs.org/@discordjs/form-data/-/form-data-3.0.1.tgz", 15 | "integrity": "sha512-ZfFsbgEXW71Rw/6EtBdrP5VxBJy4dthyC0tpQKGKmYFImlmmrykO14Za+BiIVduwjte0jXEBlhSKf0MWbFp9Eg==", 16 | "requires": { 17 | "asynckit": "^0.4.0", 18 | "combined-stream": "^1.0.8", 19 | "mime-types": "^2.1.12" 20 | } 21 | }, 22 | "abort-controller": { 23 | "version": "3.0.0", 24 | "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", 25 | "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", 26 | "requires": { 27 | "event-target-shim": "^5.0.0" 28 | } 29 | }, 30 | "ansi-regex": { 31 | "version": "2.1.1", 32 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", 33 | "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" 34 | }, 35 | "aproba": { 36 | "version": "1.2.0", 37 | "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", 38 | "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" 39 | }, 40 | "are-we-there-yet": { 41 | "version": "1.1.5", 42 | "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz", 43 | "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==", 44 | "requires": { 45 | "delegates": "^1.0.0", 46 | "readable-stream": "^2.0.6" 47 | } 48 | }, 49 | "asap": { 50 | "version": "2.0.6", 51 | "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", 52 | "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=" 53 | }, 54 | "asynckit": { 55 | "version": "0.4.0", 56 | "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", 57 | "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" 58 | }, 59 | "base64-js": { 60 | "version": "1.3.1", 61 | "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.1.tgz", 62 | "integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g==" 63 | }, 64 | "better-sqlite3": { 65 | "version": "7.1.0", 66 | "resolved": "https://registry.npmjs.org/better-sqlite3/-/better-sqlite3-7.1.0.tgz", 67 | "integrity": "sha512-FV/snQ8F/kyqhdxsevzbojVtMowDWOfe1A5N3lYu1KJwoho2t7JgITmdlSc7DkOh3Zq65I+ZyeNWXQrkLEDFTg==", 68 | "requires": { 69 | "bindings": "^1.5.0", 70 | "prebuild-install": "^5.3.3", 71 | "tar": "4.4.10" 72 | } 73 | }, 74 | "bignumber.js": { 75 | "version": "9.0.0", 76 | "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.0.0.tgz", 77 | "integrity": "sha512-t/OYhhJ2SD+YGBQcjY8GzzDHEk9f3nerxjtfa6tlMXfe7frs/WozhvCNoGvpM0P3bNf3Gq5ZRMlGr5f3r4/N8A==" 78 | }, 79 | "bindings": { 80 | "version": "1.5.0", 81 | "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", 82 | "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", 83 | "requires": { 84 | "file-uri-to-path": "1.0.0" 85 | } 86 | }, 87 | "bl": { 88 | "version": "4.0.3", 89 | "resolved": "https://registry.npmjs.org/bl/-/bl-4.0.3.tgz", 90 | "integrity": "sha512-fs4G6/Hu4/EE+F75J8DuN/0IpQqNjAdC7aEQv7Qt8MHGUH7Ckv2MwTEEeN9QehD0pfIDkMI1bkHYkKy7xHyKIg==", 91 | "requires": { 92 | "buffer": "^5.5.0", 93 | "inherits": "^2.0.4", 94 | "readable-stream": "^3.4.0" 95 | }, 96 | "dependencies": { 97 | "readable-stream": { 98 | "version": "3.6.0", 99 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", 100 | "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", 101 | "requires": { 102 | "inherits": "^2.0.3", 103 | "string_decoder": "^1.1.1", 104 | "util-deprecate": "^1.0.1" 105 | } 106 | } 107 | } 108 | }, 109 | "buffer": { 110 | "version": "5.6.0", 111 | "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.6.0.tgz", 112 | "integrity": "sha512-/gDYp/UtU0eA1ys8bOs9J6a+E/KWIY+DZ+Q2WESNUA0jFRsJOc0SNUO6xJ5SGA1xueg3NL65W6s+NY5l9cunuw==", 113 | "requires": { 114 | "base64-js": "^1.0.2", 115 | "ieee754": "^1.1.4" 116 | } 117 | }, 118 | "chownr": { 119 | "version": "1.1.4", 120 | "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", 121 | "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==" 122 | }, 123 | "code-point-at": { 124 | "version": "1.1.0", 125 | "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", 126 | "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" 127 | }, 128 | "combined-stream": { 129 | "version": "1.0.8", 130 | "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", 131 | "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", 132 | "requires": { 133 | "delayed-stream": "~1.0.0" 134 | } 135 | }, 136 | "console-control-strings": { 137 | "version": "1.1.0", 138 | "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", 139 | "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" 140 | }, 141 | "core-util-is": { 142 | "version": "1.0.2", 143 | "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", 144 | "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" 145 | }, 146 | "decompress-response": { 147 | "version": "4.2.1", 148 | "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-4.2.1.tgz", 149 | "integrity": "sha512-jOSne2qbyE+/r8G1VU+G/82LBs2Fs4LAsTiLSHOCOMZQl2OKZ6i8i4IyHemTe+/yIXOtTcRQMzPcgyhoFlqPkw==", 150 | "requires": { 151 | "mimic-response": "^2.0.0" 152 | } 153 | }, 154 | "deep-extend": { 155 | "version": "0.6.0", 156 | "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", 157 | "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==" 158 | }, 159 | "delayed-stream": { 160 | "version": "1.0.0", 161 | "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", 162 | "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" 163 | }, 164 | "delegates": { 165 | "version": "1.0.0", 166 | "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", 167 | "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" 168 | }, 169 | "detect-libc": { 170 | "version": "1.0.3", 171 | "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", 172 | "integrity": "sha1-+hN8S9aY7fVc1c0CrFWfkaTEups=" 173 | }, 174 | "discord.js": { 175 | "version": "12.2.0", 176 | "resolved": "https://registry.npmjs.org/discord.js/-/discord.js-12.2.0.tgz", 177 | "integrity": "sha512-Ueb/0SOsxXyqwvwFYFe0msMrGqH1OMqpp2Dpbplnlr4MzcRrFWwsBM9gKNZXPVBHWUKiQkwU8AihXBXIvTTSvg==", 178 | "requires": { 179 | "@discordjs/collection": "^0.1.5", 180 | "@discordjs/form-data": "^3.0.1", 181 | "abort-controller": "^3.0.0", 182 | "node-fetch": "^2.6.0", 183 | "prism-media": "^1.2.0", 184 | "setimmediate": "^1.0.5", 185 | "tweetnacl": "^1.0.3", 186 | "ws": "^7.2.1" 187 | } 188 | }, 189 | "encoding": { 190 | "version": "0.1.13", 191 | "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", 192 | "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", 193 | "requires": { 194 | "iconv-lite": "^0.6.2" 195 | } 196 | }, 197 | "end-of-stream": { 198 | "version": "1.4.4", 199 | "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", 200 | "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", 201 | "requires": { 202 | "once": "^1.4.0" 203 | } 204 | }, 205 | "enmap": { 206 | "version": "5.8.2", 207 | "resolved": "https://registry.npmjs.org/enmap/-/enmap-5.8.2.tgz", 208 | "integrity": "sha512-VduS/dZCOy3lGPrAaBzt/E3un8OJtRgqsF7grbWrOk4Ay2aU8BXqaO6ISngBgvnxa8y+8zhQs25r76Vl6acKuA==", 209 | "requires": { 210 | "better-sqlite3": "^7.1.0", 211 | "lodash": "^4.17.20", 212 | "on-change": "^2.0.1", 213 | "serialize-javascript": "^5.0.1" 214 | } 215 | }, 216 | "es6-promise": { 217 | "version": "4.2.8", 218 | "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", 219 | "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==" 220 | }, 221 | "event-target-shim": { 222 | "version": "5.0.1", 223 | "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", 224 | "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==" 225 | }, 226 | "expand-template": { 227 | "version": "2.0.3", 228 | "resolved": "https://registry.npmjs.org/expand-template/-/expand-template-2.0.3.tgz", 229 | "integrity": "sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==" 230 | }, 231 | "file-uri-to-path": { 232 | "version": "1.0.0", 233 | "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", 234 | "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==" 235 | }, 236 | "fs-constants": { 237 | "version": "1.0.0", 238 | "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", 239 | "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==" 240 | }, 241 | "fs-minipass": { 242 | "version": "1.2.7", 243 | "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.7.tgz", 244 | "integrity": "sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA==", 245 | "requires": { 246 | "minipass": "^2.6.0" 247 | } 248 | }, 249 | "gauge": { 250 | "version": "2.7.4", 251 | "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", 252 | "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", 253 | "requires": { 254 | "aproba": "^1.0.3", 255 | "console-control-strings": "^1.0.0", 256 | "has-unicode": "^2.0.0", 257 | "object-assign": "^4.1.0", 258 | "signal-exit": "^3.0.0", 259 | "string-width": "^1.0.1", 260 | "strip-ansi": "^3.0.1", 261 | "wide-align": "^1.1.0" 262 | } 263 | }, 264 | "giphy-js-sdk-core": { 265 | "version": "1.0.6", 266 | "resolved": "https://registry.npmjs.org/giphy-js-sdk-core/-/giphy-js-sdk-core-1.0.6.tgz", 267 | "integrity": "sha512-WaOm2ZEMSyPzlM+XbiVSDPZiSNfNfCItIeLh9QNglqiSl5fqewjTl7TY9wJT41Q/ORyOekV5rJDe4EIkjLDLFw==", 268 | "requires": { 269 | "es6-promise": "^4.1.0", 270 | "isomorphic-fetch": "^2.2.1", 271 | "lodash": "^4.17.4", 272 | "promise": "^7.1.1" 273 | } 274 | }, 275 | "github-from-package": { 276 | "version": "0.0.0", 277 | "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz", 278 | "integrity": "sha1-l/tdlr/eiXMxPyDoKI75oWf6ZM4=" 279 | }, 280 | "has-unicode": { 281 | "version": "2.0.1", 282 | "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", 283 | "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=" 284 | }, 285 | "iconv-lite": { 286 | "version": "0.6.2", 287 | "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.2.tgz", 288 | "integrity": "sha512-2y91h5OpQlolefMPmUlivelittSWy0rP+oYVpn6A7GwVHNE8AWzoYOBNmlwks3LobaJxgHCYZAnyNo2GgpNRNQ==", 289 | "requires": { 290 | "safer-buffer": ">= 2.1.2 < 3.0.0" 291 | } 292 | }, 293 | "ieee754": { 294 | "version": "1.1.13", 295 | "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz", 296 | "integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==" 297 | }, 298 | "inherits": { 299 | "version": "2.0.4", 300 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", 301 | "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" 302 | }, 303 | "ini": { 304 | "version": "1.3.5", 305 | "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", 306 | "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==" 307 | }, 308 | "install": { 309 | "version": "0.13.0", 310 | "resolved": "https://registry.npmjs.org/install/-/install-0.13.0.tgz", 311 | "integrity": "sha512-zDml/jzr2PKU9I8J/xyZBQn8rPCAY//UOYNmR01XwNwyfhEWObo2SWfSl1+0tm1u6PhxLwDnfsT/6jB7OUxqFA==" 312 | }, 313 | "is-fullwidth-code-point": { 314 | "version": "1.0.0", 315 | "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", 316 | "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", 317 | "requires": { 318 | "number-is-nan": "^1.0.0" 319 | } 320 | }, 321 | "is-stream": { 322 | "version": "1.1.0", 323 | "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", 324 | "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=" 325 | }, 326 | "isarray": { 327 | "version": "1.0.0", 328 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", 329 | "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" 330 | }, 331 | "isomorphic-fetch": { 332 | "version": "2.2.1", 333 | "resolved": "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz", 334 | "integrity": "sha1-YRrhrPFPXoH3KVB0coGf6XM1WKk=", 335 | "requires": { 336 | "node-fetch": "^1.0.1", 337 | "whatwg-fetch": ">=0.10.0" 338 | }, 339 | "dependencies": { 340 | "node-fetch": { 341 | "version": "1.7.3", 342 | "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-1.7.3.tgz", 343 | "integrity": "sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ==", 344 | "requires": { 345 | "encoding": "^0.1.11", 346 | "is-stream": "^1.0.1" 347 | } 348 | } 349 | } 350 | }, 351 | "lodash": { 352 | "version": "4.17.20", 353 | "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.20.tgz", 354 | "integrity": "sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA==" 355 | }, 356 | "mime-db": { 357 | "version": "1.44.0", 358 | "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.44.0.tgz", 359 | "integrity": "sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg==" 360 | }, 361 | "mime-types": { 362 | "version": "2.1.27", 363 | "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.27.tgz", 364 | "integrity": "sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w==", 365 | "requires": { 366 | "mime-db": "1.44.0" 367 | } 368 | }, 369 | "mimic-response": { 370 | "version": "2.1.0", 371 | "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-2.1.0.tgz", 372 | "integrity": "sha512-wXqjST+SLt7R009ySCglWBCFpjUygmCIfD790/kVbiGmUgfYGuB14PiTd5DwVxSV4NcYHjzMkoj5LjQZwTQLEA==" 373 | }, 374 | "minimist": { 375 | "version": "1.2.5", 376 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", 377 | "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" 378 | }, 379 | "minipass": { 380 | "version": "2.9.0", 381 | "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.9.0.tgz", 382 | "integrity": "sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg==", 383 | "requires": { 384 | "safe-buffer": "^5.1.2", 385 | "yallist": "^3.0.0" 386 | } 387 | }, 388 | "minizlib": { 389 | "version": "1.3.3", 390 | "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.3.3.tgz", 391 | "integrity": "sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q==", 392 | "requires": { 393 | "minipass": "^2.9.0" 394 | } 395 | }, 396 | "mkdirp": { 397 | "version": "0.5.5", 398 | "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", 399 | "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", 400 | "requires": { 401 | "minimist": "^1.2.5" 402 | } 403 | }, 404 | "mkdirp-classic": { 405 | "version": "0.5.3", 406 | "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz", 407 | "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==" 408 | }, 409 | "ms": { 410 | "version": "2.1.2", 411 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", 412 | "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" 413 | }, 414 | "mysql": { 415 | "version": "2.18.1", 416 | "resolved": "https://registry.npmjs.org/mysql/-/mysql-2.18.1.tgz", 417 | "integrity": "sha512-Bca+gk2YWmqp2Uf6k5NFEurwY/0td0cpebAucFpY/3jhrwrVGuxU2uQFCHjU19SJfje0yQvi+rVWdq78hR5lig==", 418 | "requires": { 419 | "bignumber.js": "9.0.0", 420 | "readable-stream": "2.3.7", 421 | "safe-buffer": "5.1.2", 422 | "sqlstring": "2.3.1" 423 | } 424 | }, 425 | "napi-build-utils": { 426 | "version": "1.0.2", 427 | "resolved": "https://registry.npmjs.org/napi-build-utils/-/napi-build-utils-1.0.2.tgz", 428 | "integrity": "sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg==" 429 | }, 430 | "node-abi": { 431 | "version": "2.18.0", 432 | "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-2.18.0.tgz", 433 | "integrity": "sha512-yi05ZoiuNNEbyT/xXfSySZE+yVnQW6fxPZuFbLyS1s6b5Kw3HzV2PHOM4XR+nsjzkHxByK+2Wg+yCQbe35l8dw==", 434 | "requires": { 435 | "semver": "^5.4.1" 436 | } 437 | }, 438 | "node-fetch": { 439 | "version": "2.6.1", 440 | "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.1.tgz", 441 | "integrity": "sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw==" 442 | }, 443 | "noop-logger": { 444 | "version": "0.1.1", 445 | "resolved": "https://registry.npmjs.org/noop-logger/-/noop-logger-0.1.1.tgz", 446 | "integrity": "sha1-lKKxYzxPExdVMAfYlm/Q6EG2pMI=" 447 | }, 448 | "npmlog": { 449 | "version": "4.1.2", 450 | "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", 451 | "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", 452 | "requires": { 453 | "are-we-there-yet": "~1.1.2", 454 | "console-control-strings": "~1.1.0", 455 | "gauge": "~2.7.3", 456 | "set-blocking": "~2.0.0" 457 | } 458 | }, 459 | "number-is-nan": { 460 | "version": "1.0.1", 461 | "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", 462 | "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" 463 | }, 464 | "object-assign": { 465 | "version": "4.1.1", 466 | "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", 467 | "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" 468 | }, 469 | "on-change": { 470 | "version": "2.2.0", 471 | "resolved": "https://registry.npmjs.org/on-change/-/on-change-2.2.0.tgz", 472 | "integrity": "sha512-Vxykd95DCMB6sYPqi5q+pT5IijTv+v2em43vac/7JPU1o+EpOfBFhVMLCxCE59RidP4NsyMQgKCgzM6F5kJVIw==" 473 | }, 474 | "once": { 475 | "version": "1.4.0", 476 | "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", 477 | "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", 478 | "requires": { 479 | "wrappy": "1" 480 | } 481 | }, 482 | "prebuild-install": { 483 | "version": "5.3.5", 484 | "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-5.3.5.tgz", 485 | "integrity": "sha512-YmMO7dph9CYKi5IR/BzjOJlRzpxGGVo1EsLSUZ0mt/Mq0HWZIHOKHHcHdT69yG54C9m6i45GpItwRHpk0Py7Uw==", 486 | "requires": { 487 | "detect-libc": "^1.0.3", 488 | "expand-template": "^2.0.3", 489 | "github-from-package": "0.0.0", 490 | "minimist": "^1.2.3", 491 | "mkdirp": "^0.5.1", 492 | "napi-build-utils": "^1.0.1", 493 | "node-abi": "^2.7.0", 494 | "noop-logger": "^0.1.1", 495 | "npmlog": "^4.0.1", 496 | "pump": "^3.0.0", 497 | "rc": "^1.2.7", 498 | "simple-get": "^3.0.3", 499 | "tar-fs": "^2.0.0", 500 | "tunnel-agent": "^0.6.0", 501 | "which-pm-runs": "^1.0.0" 502 | } 503 | }, 504 | "prism-media": { 505 | "version": "1.2.2", 506 | "resolved": "https://registry.npmjs.org/prism-media/-/prism-media-1.2.2.tgz", 507 | "integrity": "sha512-I+nkWY212lJ500jLe4tN9tWO7nRiBAVdMv76P9kffZjYhw20raMlW1HSSvS+MLXC9MmbNZCazMrAr+5jEEgTuw==" 508 | }, 509 | "process-nextick-args": { 510 | "version": "2.0.1", 511 | "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", 512 | "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" 513 | }, 514 | "promise": { 515 | "version": "7.3.1", 516 | "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", 517 | "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", 518 | "requires": { 519 | "asap": "~2.0.3" 520 | } 521 | }, 522 | "pump": { 523 | "version": "3.0.0", 524 | "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", 525 | "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", 526 | "requires": { 527 | "end-of-stream": "^1.1.0", 528 | "once": "^1.3.1" 529 | } 530 | }, 531 | "randombytes": { 532 | "version": "2.1.0", 533 | "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", 534 | "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", 535 | "requires": { 536 | "safe-buffer": "^5.1.0" 537 | } 538 | }, 539 | "rc": { 540 | "version": "1.2.8", 541 | "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", 542 | "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", 543 | "requires": { 544 | "deep-extend": "^0.6.0", 545 | "ini": "~1.3.0", 546 | "minimist": "^1.2.0", 547 | "strip-json-comments": "~2.0.1" 548 | } 549 | }, 550 | "readable-stream": { 551 | "version": "2.3.7", 552 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", 553 | "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", 554 | "requires": { 555 | "core-util-is": "~1.0.0", 556 | "inherits": "~2.0.3", 557 | "isarray": "~1.0.0", 558 | "process-nextick-args": "~2.0.0", 559 | "safe-buffer": "~5.1.1", 560 | "string_decoder": "~1.1.1", 561 | "util-deprecate": "~1.0.1" 562 | } 563 | }, 564 | "safe-buffer": { 565 | "version": "5.1.2", 566 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", 567 | "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" 568 | }, 569 | "safer-buffer": { 570 | "version": "2.1.2", 571 | "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", 572 | "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" 573 | }, 574 | "semver": { 575 | "version": "5.7.1", 576 | "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", 577 | "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" 578 | }, 579 | "serialize-javascript": { 580 | "version": "5.0.1", 581 | "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-5.0.1.tgz", 582 | "integrity": "sha512-SaaNal9imEO737H2c05Og0/8LUXG7EnsZyMa8MzkmuHoELfT6txuj0cMqRj6zfPKnmQ1yasR4PCJc8x+M4JSPA==", 583 | "requires": { 584 | "randombytes": "^2.1.0" 585 | } 586 | }, 587 | "set-blocking": { 588 | "version": "2.0.0", 589 | "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", 590 | "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" 591 | }, 592 | "setimmediate": { 593 | "version": "1.0.5", 594 | "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", 595 | "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=" 596 | }, 597 | "signal-exit": { 598 | "version": "3.0.3", 599 | "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", 600 | "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==" 601 | }, 602 | "simple-concat": { 603 | "version": "1.0.0", 604 | "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.0.tgz", 605 | "integrity": "sha1-c0TLuLbib7J9ZrL8hvn21Zl1IcY=" 606 | }, 607 | "simple-get": { 608 | "version": "3.1.0", 609 | "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-3.1.0.tgz", 610 | "integrity": "sha512-bCR6cP+aTdScaQCnQKbPKtJOKDp/hj9EDLJo3Nw4y1QksqaovlW/bnptB6/c1e+qmNIDHRK+oXFDdEqBT8WzUA==", 611 | "requires": { 612 | "decompress-response": "^4.2.0", 613 | "once": "^1.3.1", 614 | "simple-concat": "^1.0.0" 615 | } 616 | }, 617 | "sqlstring": { 618 | "version": "2.3.1", 619 | "resolved": "https://registry.npmjs.org/sqlstring/-/sqlstring-2.3.1.tgz", 620 | "integrity": "sha1-R1OT/56RR5rqYtyvDKPRSYOn+0A=" 621 | }, 622 | "string-width": { 623 | "version": "1.0.2", 624 | "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", 625 | "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", 626 | "requires": { 627 | "code-point-at": "^1.0.0", 628 | "is-fullwidth-code-point": "^1.0.0", 629 | "strip-ansi": "^3.0.0" 630 | } 631 | }, 632 | "string_decoder": { 633 | "version": "1.1.1", 634 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", 635 | "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", 636 | "requires": { 637 | "safe-buffer": "~5.1.0" 638 | } 639 | }, 640 | "strip-ansi": { 641 | "version": "3.0.1", 642 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", 643 | "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", 644 | "requires": { 645 | "ansi-regex": "^2.0.0" 646 | } 647 | }, 648 | "strip-json-comments": { 649 | "version": "2.0.1", 650 | "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", 651 | "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=" 652 | }, 653 | "tar": { 654 | "version": "4.4.10", 655 | "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.10.tgz", 656 | "integrity": "sha512-g2SVs5QIxvo6OLp0GudTqEf05maawKUxXru104iaayWA09551tFCTI8f1Asb4lPfkBr91k07iL4c11XO3/b0tA==", 657 | "requires": { 658 | "chownr": "^1.1.1", 659 | "fs-minipass": "^1.2.5", 660 | "minipass": "^2.3.5", 661 | "minizlib": "^1.2.1", 662 | "mkdirp": "^0.5.0", 663 | "safe-buffer": "^5.1.2", 664 | "yallist": "^3.0.3" 665 | } 666 | }, 667 | "tar-fs": { 668 | "version": "2.1.0", 669 | "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.0.tgz", 670 | "integrity": "sha512-9uW5iDvrIMCVpvasdFHW0wJPez0K4JnMZtsuIeDI7HyMGJNxmDZDOCQROr7lXyS+iL/QMpj07qcjGYTSdRFXUg==", 671 | "requires": { 672 | "chownr": "^1.1.1", 673 | "mkdirp-classic": "^0.5.2", 674 | "pump": "^3.0.0", 675 | "tar-stream": "^2.0.0" 676 | } 677 | }, 678 | "tar-stream": { 679 | "version": "2.1.3", 680 | "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.1.3.tgz", 681 | "integrity": "sha512-Z9yri56Dih8IaK8gncVPx4Wqt86NDmQTSh49XLZgjWpGZL9GK9HKParS2scqHCC4w6X9Gh2jwaU45V47XTKwVA==", 682 | "requires": { 683 | "bl": "^4.0.1", 684 | "end-of-stream": "^1.4.1", 685 | "fs-constants": "^1.0.0", 686 | "inherits": "^2.0.3", 687 | "readable-stream": "^3.1.1" 688 | }, 689 | "dependencies": { 690 | "readable-stream": { 691 | "version": "3.6.0", 692 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", 693 | "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", 694 | "requires": { 695 | "inherits": "^2.0.3", 696 | "string_decoder": "^1.1.1", 697 | "util-deprecate": "^1.0.1" 698 | } 699 | } 700 | } 701 | }, 702 | "tunnel-agent": { 703 | "version": "0.6.0", 704 | "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", 705 | "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", 706 | "requires": { 707 | "safe-buffer": "^5.0.1" 708 | } 709 | }, 710 | "tweetnacl": { 711 | "version": "1.0.3", 712 | "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-1.0.3.tgz", 713 | "integrity": "sha512-6rt+RN7aOi1nGMyC4Xa5DdYiukl2UWCbcJft7YhxReBGQD7OAM8Pbxw6YMo4r2diNEA8FEmu32YOn9rhaiE5yw==" 714 | }, 715 | "util-deprecate": { 716 | "version": "1.0.2", 717 | "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", 718 | "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" 719 | }, 720 | "uuid": { 721 | "version": "8.3.2", 722 | "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", 723 | "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==" 724 | }, 725 | "whatwg-fetch": { 726 | "version": "3.5.0", 727 | "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.5.0.tgz", 728 | "integrity": "sha512-jXkLtsR42xhXg7akoDKvKWE40eJeI+2KZqcp2h3NsOrRnDvtWX36KcKl30dy+hxECivdk2BVUHVNrPtoMBUx6A==" 729 | }, 730 | "which-pm-runs": { 731 | "version": "1.0.0", 732 | "resolved": "https://registry.npmjs.org/which-pm-runs/-/which-pm-runs-1.0.0.tgz", 733 | "integrity": "sha1-Zws6+8VS4LVd9rd4DKdGFfI60cs=" 734 | }, 735 | "wide-align": { 736 | "version": "1.1.3", 737 | "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", 738 | "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", 739 | "requires": { 740 | "string-width": "^1.0.2 || 2" 741 | } 742 | }, 743 | "wrappy": { 744 | "version": "1.0.2", 745 | "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", 746 | "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" 747 | }, 748 | "ws": { 749 | "version": "7.3.1", 750 | "resolved": "https://registry.npmjs.org/ws/-/ws-7.3.1.tgz", 751 | "integrity": "sha512-D3RuNkynyHmEJIpD2qrgVkc9DQ23OrN/moAwZX4L8DfvszsJxpjQuUq3LMx6HoYji9fbIOBY18XWBsAux1ZZUA==" 752 | }, 753 | "yallist": { 754 | "version": "3.1.1", 755 | "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", 756 | "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" 757 | } 758 | } 759 | } 760 | -------------------------------------------------------------------------------- /nc-codebot/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "nc-codebot", 3 | "version": "1.0.0", 4 | "main": "index.js", 5 | "scripts": { 6 | "test": "echo \"Error: no test specified\" && exit 1" 7 | }, 8 | "author": "", 9 | "license": "ISC", 10 | "dependencies": { 11 | "better-sqlite3": "^7.1.0", 12 | "discord.js": "^12.2.0", 13 | "enmap": "^5.8.2", 14 | "giphy-js-sdk-core": "^1.0.6", 15 | "install": "^0.13.0", 16 | "ms": "^2.1.2", 17 | "mysql": "^2.18.1", 18 | "uuid": "^8.3.2" 19 | }, 20 | "devDependencies": {}, 21 | "description": "" 22 | } 23 | -------------------------------------------------------------------------------- /nc-codebot/startbot.bat: -------------------------------------------------------------------------------- 1 | node . -------------------------------------------------------------------------------- /nc-codes/codebot.sql: -------------------------------------------------------------------------------- 1 | CREATE TABLE IF NOT EXISTS `ncodes` ( 2 | `code` varchar(24) NOT NULL DEFAULT '', 3 | `type` varchar(50) NOT NULL, 4 | `amount` varchar(50) NOT NULL DEFAULT '', 5 | PRIMARY KEY (`code`) 6 | ) ENGINE=InnoDB DEFAULT CHARSET=latin1; -------------------------------------------------------------------------------- /nc-codes/fxmanifest.lua: -------------------------------------------------------------------------------- 1 | fx_version 'bodacious' 2 | games { 'gta5' } 3 | 4 | version '1.3.1' 5 | server_script "main.lua" -------------------------------------------------------------------------------- /nc-codes/main.lua: -------------------------------------------------------------------------------- 1 | QBCore = exports['qb-core']:GetCoreObject() 2 | 3 | RegisterCommand('usecode', function(source, args, rawCommand) 4 | local src = source 5 | local xPlayer = NCCore.Functions.GetPlayer(source) 6 | local code = table.concat(args, " ") 7 | 8 | exports['ghmattimysql']:execute('SELECT * FROM ncodes WHERE code = @code', {['@code'] = code}, function(result) 9 | 10 | if(result[1] == nil) then 11 | return TriggerClientEvent("NCCore:Notify", "The code doesn't exists") 12 | end 13 | 14 | exports['ghmattimysql']:execute('DELETE FROM ncodes WHERE code = @code', {['@code'] = code}, function(result) end) 15 | 16 | local type = result[1].type 17 | local amount = result[1].amount 18 | 19 | if type == "cash" or type == "bank" then 20 | xPlayer.Functions.AddMoney(type, amount) 21 | TriggerClientEvent("NCCore:Notify", src, string.format("You Redeemed A Money Token. %s Goes To Your %s", amount, type == "bank" or "Bank Account" and "Wallet")) 22 | elseif(type == "item") then 23 | xPlayer.Functions.AddItem(amount, 1, nil, nil) 24 | TriggerClientEvent("NCCore:Notify", src, string.format("You Redeemed A Item Token. You Got %s", amount)) 25 | else 26 | TriggerClientEvent("NCCore:Notify", src, "Unknown Token Type!, You Will Not Get Anything") 27 | end 28 | 29 | end) 30 | end) 31 | --------------------------------------------------------------------------------