setup husky
This commit is contained in:
		
							parent
							
								
									f9046a1a8b
								
							
						
					
					
						commit
						87b3063611
					
				
					 8 changed files with 43 additions and 16 deletions
				
			
		| 
						 | 
					@ -28,5 +28,6 @@ module.exports = {
 | 
				
			||||||
  globals: {
 | 
					  globals: {
 | 
				
			||||||
    hf: true,
 | 
					    hf: true,
 | 
				
			||||||
    BigInt: true, // lol eslint
 | 
					    BigInt: true, // lol eslint
 | 
				
			||||||
 | 
					    fetch: true,
 | 
				
			||||||
  },
 | 
					  },
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										1
									
								
								.husky/.gitignore
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								.husky/.gitignore
									
										
									
									
										vendored
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1 @@
 | 
				
			||||||
 | 
					_
 | 
				
			||||||
							
								
								
									
										4
									
								
								.husky/pre-commit
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										4
									
								
								.husky/pre-commit
									
										
									
									
									
										Executable file
									
								
							| 
						 | 
					@ -0,0 +1,4 @@
 | 
				
			||||||
 | 
					#!/bin/sh
 | 
				
			||||||
 | 
					. "$(dirname "$0")/_/husky.sh"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					node_modules/.bin/eslint . && node_modules/.bin/prettier --check **/*.js
 | 
				
			||||||
| 
						 | 
					@ -4,7 +4,8 @@
 | 
				
			||||||
  "description": "Discord bot",
 | 
					  "description": "Discord bot",
 | 
				
			||||||
  "main": "src/index.js",
 | 
					  "main": "src/index.js",
 | 
				
			||||||
  "scripts": {
 | 
					  "scripts": {
 | 
				
			||||||
    "test": "echo \"Error: no test specified\" && exit 1"
 | 
					    "test": "echo \"Error: no test specified\" && exit 1",
 | 
				
			||||||
 | 
					    "prepare": "husky install"
 | 
				
			||||||
  },
 | 
					  },
 | 
				
			||||||
  "repository": {
 | 
					  "repository": {
 | 
				
			||||||
    "type": "git",
 | 
					    "type": "git",
 | 
				
			||||||
| 
						 | 
					@ -32,6 +33,7 @@
 | 
				
			||||||
  },
 | 
					  },
 | 
				
			||||||
  "devDependencies": {
 | 
					  "devDependencies": {
 | 
				
			||||||
    "eslint": "^7.26.0",
 | 
					    "eslint": "^7.26.0",
 | 
				
			||||||
 | 
					    "husky": "^8.0.2",
 | 
				
			||||||
    "prettier": "^2.3.0"
 | 
					    "prettier": "^2.3.0"
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										17
									
								
								pnpm-lock.yaml
									
										
									
										generated
									
									
									
								
							
							
						
						
									
										17
									
								
								pnpm-lock.yaml
									
										
									
										generated
									
									
									
								
							| 
						 | 
					@ -7,6 +7,7 @@ specifiers:
 | 
				
			||||||
  dumpy: github:Cynosphere/dumpy.js
 | 
					  dumpy: github:Cynosphere/dumpy.js
 | 
				
			||||||
  eslint: ^7.26.0
 | 
					  eslint: ^7.26.0
 | 
				
			||||||
  google-images: ^2.1.0
 | 
					  google-images: ^2.1.0
 | 
				
			||||||
 | 
					  husky: ^8.0.2
 | 
				
			||||||
  jimp: ^0.16.1
 | 
					  jimp: ^0.16.1
 | 
				
			||||||
  murmurhash: ^2.0.0
 | 
					  murmurhash: ^2.0.0
 | 
				
			||||||
  node-ffprobe: ^3.0.0
 | 
					  node-ffprobe: ^3.0.0
 | 
				
			||||||
| 
						 | 
					@ -32,6 +33,7 @@ dependencies:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
devDependencies:
 | 
					devDependencies:
 | 
				
			||||||
  eslint: 7.26.0
 | 
					  eslint: 7.26.0
 | 
				
			||||||
 | 
					  husky: 8.0.2
 | 
				
			||||||
  prettier: 2.3.0
 | 
					  prettier: 2.3.0
 | 
				
			||||||
 | 
					
 | 
				
			||||||
packages:
 | 
					packages:
 | 
				
			||||||
| 
						 | 
					@ -1384,6 +1386,12 @@ packages:
 | 
				
			||||||
      - supports-color
 | 
					      - supports-color
 | 
				
			||||||
    dev: false
 | 
					    dev: false
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  /husky/8.0.2:
 | 
				
			||||||
 | 
					    resolution: {integrity: sha512-Tkv80jtvbnkK3mYWxPZePGFpQ/tT3HNSs/sasF9P2YfkMezDl3ON37YN6jUUI4eTg5LcyVynlb6r4eyvOmspvg==}
 | 
				
			||||||
 | 
					    engines: {node: '>=14'}
 | 
				
			||||||
 | 
					    hasBin: true
 | 
				
			||||||
 | 
					    dev: true
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  /iconv-lite/0.4.24:
 | 
					  /iconv-lite/0.4.24:
 | 
				
			||||||
    resolution: {integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==}
 | 
					    resolution: {integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==}
 | 
				
			||||||
    engines: {node: '>=0.10.0'}
 | 
					    engines: {node: '>=0.10.0'}
 | 
				
			||||||
| 
						 | 
					@ -1743,11 +1751,6 @@ packages:
 | 
				
			||||||
    resolution: {integrity: sha512-CvkDw2OEnme7ybCykJpVcKH+uAOLV2qLqiyla128dN9TkEWfrYmxG6C2boDe5KcNQqZF3orkqzGgOMvZ/JNekA==}
 | 
					    resolution: {integrity: sha512-CvkDw2OEnme7ybCykJpVcKH+uAOLV2qLqiyla128dN9TkEWfrYmxG6C2boDe5KcNQqZF3orkqzGgOMvZ/JNekA==}
 | 
				
			||||||
    dev: false
 | 
					    dev: false
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  /node-fetch/2.6.1:
 | 
					 | 
				
			||||||
    resolution: {integrity: sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw==}
 | 
					 | 
				
			||||||
    engines: {node: 4.x || >=6.0.0}
 | 
					 | 
				
			||||||
    dev: false
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  /node-fetch/2.6.7:
 | 
					  /node-fetch/2.6.7:
 | 
				
			||||||
    resolution: {integrity: sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==}
 | 
					    resolution: {integrity: sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==}
 | 
				
			||||||
    engines: {node: 4.x || >=6.0.0}
 | 
					    engines: {node: 4.x || >=6.0.0}
 | 
				
			||||||
| 
						 | 
					@ -2723,5 +2726,7 @@ packages:
 | 
				
			||||||
      color: 3.2.1
 | 
					      color: 3.2.1
 | 
				
			||||||
      gifwrap: 0.9.2
 | 
					      gifwrap: 0.9.2
 | 
				
			||||||
      jimp: 0.16.1
 | 
					      jimp: 0.16.1
 | 
				
			||||||
      node-fetch: 2.6.1
 | 
					      node-fetch: 2.6.7
 | 
				
			||||||
 | 
					    transitivePeerDependencies:
 | 
				
			||||||
 | 
					      - encoding
 | 
				
			||||||
    dev: false
 | 
					    dev: false
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -59,7 +59,12 @@ bot.on("messageCreate", async (msg) => {
 | 
				
			||||||
});
 | 
					});
 | 
				
			||||||
bot.on("messageUpdate", (msg, oldMsg) => {
 | 
					bot.on("messageUpdate", (msg, oldMsg) => {
 | 
				
			||||||
  const oneDay = Date.now() - 86400000;
 | 
					  const oneDay = Date.now() - 86400000;
 | 
				
			||||||
  if (msg.timestamp > oneDay && !msg.hasRan && oldMsg && oldMsg.content !== msg.content) {
 | 
					  if (
 | 
				
			||||||
 | 
					    msg.timestamp > oneDay &&
 | 
				
			||||||
 | 
					    !msg.hasRan &&
 | 
				
			||||||
 | 
					    oldMsg &&
 | 
				
			||||||
 | 
					    oldMsg.content !== msg.content
 | 
				
			||||||
 | 
					  ) {
 | 
				
			||||||
    CommandDispatcher(msg);
 | 
					    CommandDispatcher(msg);
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
});
 | 
					});
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,5 +1,6 @@
 | 
				
			||||||
 | 
					const {formatTime} = require("../lib/utils.js");
 | 
				
			||||||
 | 
					
 | 
				
			||||||
const GUILD_ID = "300436792916836352";
 | 
					const GUILD_ID = "300436792916836352";
 | 
				
			||||||
const CHANNEL_ID = "353018352580689930";
 | 
					 | 
				
			||||||
const THREAD_ID = "1054106209273253888";
 | 
					const THREAD_ID = "1054106209273253888";
 | 
				
			||||||
const MESSAGE_ID = "1054109813132509245";
 | 
					const MESSAGE_ID = "1054109813132509245";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -14,7 +15,9 @@ async function updateNowPlaying() {
 | 
				
			||||||
      playing = await fetch("http://anonradio.net/playing").then((res) =>
 | 
					      playing = await fetch("http://anonradio.net/playing").then((res) =>
 | 
				
			||||||
        res.text()
 | 
					        res.text()
 | 
				
			||||||
      );
 | 
					      );
 | 
				
			||||||
    } catch (err) {}
 | 
					    } catch (err) {
 | 
				
			||||||
 | 
					      //
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
  let schedule;
 | 
					  let schedule;
 | 
				
			||||||
  try {
 | 
					  try {
 | 
				
			||||||
| 
						 | 
					@ -26,7 +29,9 @@ async function updateNowPlaying() {
 | 
				
			||||||
      schedule = await fetch("http://anonradio.net/schedule/").then((res) =>
 | 
					      schedule = await fetch("http://anonradio.net/schedule/").then((res) =>
 | 
				
			||||||
        res.text()
 | 
					        res.text()
 | 
				
			||||||
      );
 | 
					      );
 | 
				
			||||||
    } catch (err) {}
 | 
					    } catch (err) {
 | 
				
			||||||
 | 
					      //
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  if (!playing || !schedule) return;
 | 
					  if (!playing || !schedule) return;
 | 
				
			||||||
| 
						 | 
					@ -35,9 +40,9 @@ async function updateNowPlaying() {
 | 
				
			||||||
  lines = lines.slice(4, lines.length - 2);
 | 
					  lines = lines.slice(4, lines.length - 2);
 | 
				
			||||||
  const line = lines[0];
 | 
					  const line = lines[0];
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  const [_, time, id, name] = line.match(/^(.{3,4} .{4})\s+(.+?) {2}(.+?)$/);
 | 
					  const [_, _time, id, name] = line.match(/^(.{3,4} .{4})\s+(.+?) {2}(.+?)$/);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  let liveNow = {name: "ident", id: "aNONradio"};
 | 
					  const liveNow = {name: "ident", id: "aNONradio"};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  if (name.includes("<- Live NOW")) {
 | 
					  if (name.includes("<- Live NOW")) {
 | 
				
			||||||
    liveNow.id = id;
 | 
					    liveNow.id = id;
 | 
				
			||||||
| 
						 | 
					@ -88,7 +93,7 @@ async function updateNowPlaying() {
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  const content = (`${title}\n${subtitle}\n${openmicTime}`).trim();
 | 
					  const content = `${title}\n${subtitle}\n${openmicTime}`.trim();
 | 
				
			||||||
  const thread = hf.bot.guilds.get(GUILD_ID).threads.get(THREAD_ID);
 | 
					  const thread = hf.bot.guilds.get(GUILD_ID).threads.get(THREAD_ID);
 | 
				
			||||||
  const msg = await thread.getMessage(MESSAGE_ID);
 | 
					  const msg = await thread.getMessage(MESSAGE_ID);
 | 
				
			||||||
  if (msg.content !== content) {
 | 
					  if (msg.content !== content) {
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -285,7 +285,9 @@ anonradio.callback = async function () {
 | 
				
			||||||
      playing = await fetch("http://anonradio.net/playing").then((res) =>
 | 
					      playing = await fetch("http://anonradio.net/playing").then((res) =>
 | 
				
			||||||
        res.text()
 | 
					        res.text()
 | 
				
			||||||
      );
 | 
					      );
 | 
				
			||||||
    } catch (err) {}
 | 
					    } catch (err) {
 | 
				
			||||||
 | 
					      //
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
  let schedule;
 | 
					  let schedule;
 | 
				
			||||||
  try {
 | 
					  try {
 | 
				
			||||||
| 
						 | 
					@ -297,7 +299,9 @@ anonradio.callback = async function () {
 | 
				
			||||||
      schedule = await fetch("http://anonradio.net/schedule/").then((res) =>
 | 
					      schedule = await fetch("http://anonradio.net/schedule/").then((res) =>
 | 
				
			||||||
        res.text()
 | 
					        res.text()
 | 
				
			||||||
      );
 | 
					      );
 | 
				
			||||||
    } catch (err) {}
 | 
					    } catch (err) {
 | 
				
			||||||
 | 
					      //
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  if (!playing || !schedule) return "Failed to fetch schedule.";
 | 
					  if (!playing || !schedule) return "Failed to fetch schedule.";
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue