mirror of
https://github.com/SillyTavern/SillyTavern.git
synced 2025-06-05 21:59:27 +02:00
Reformat code
This commit is contained in:
5152
public/index.html
5152
public/index.html
File diff suppressed because it is too large
Load Diff
4847
public/script.js
Normal file
4847
public/script.js
Normal file
File diff suppressed because it is too large
Load Diff
309
public/style.css
309
public/style.css
File diff suppressed because it is too large
Load Diff
78
server.js
78
server.js
@@ -8,9 +8,9 @@ var rimraf = require("rimraf");
|
|||||||
const multer = require("multer");
|
const multer = require("multer");
|
||||||
const https = require('https');
|
const https = require('https');
|
||||||
//const PNG = require('pngjs').PNG;
|
//const PNG = require('pngjs').PNG;
|
||||||
const extract = require('png-chunks-extract');
|
const extract = require('png-chunks-extract');
|
||||||
const encode = require('png-chunks-encode');
|
const encode = require('png-chunks-encode');
|
||||||
const PNGtext = require('png-chunk-text');
|
const PNGtext = require('png-chunk-text');
|
||||||
|
|
||||||
const sharp = require('sharp');
|
const sharp = require('sharp');
|
||||||
sharp.cache(false);
|
sharp.cache(false);
|
||||||
@@ -161,11 +161,9 @@ app.use((req, res, next) => {
|
|||||||
next();
|
next();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
app.use(express.static(__dirname + "/public", { refresh: true }));
|
app.use(express.static(__dirname + "/public", { refresh: true }));
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
app.use('/backgrounds', (req, res) => {
|
app.use('/backgrounds', (req, res) => {
|
||||||
const filePath = decodeURIComponent(path.join(process.cwd(), 'public/backgrounds', req.url.replace(/%20/g, ' ')));
|
const filePath = decodeURIComponent(path.join(process.cwd(), 'public/backgrounds', req.url.replace(/%20/g, ' ')));
|
||||||
fs.readFile(filePath, (err, data) => {
|
fs.readFile(filePath, (err, data) => {
|
||||||
@@ -177,6 +175,7 @@ app.use('/backgrounds', (req, res) => {
|
|||||||
res.send(data);
|
res.send(data);
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
app.use('/characters', (req, res) => {
|
app.use('/characters', (req, res) => {
|
||||||
const filePath = decodeURIComponent(path.join(process.cwd(), charactersPath, req.url.replace(/%20/g, ' ')));
|
const filePath = decodeURIComponent(path.join(process.cwd(), charactersPath, req.url.replace(/%20/g, ' ')));
|
||||||
fs.readFile(filePath, (err, data) => {
|
fs.readFile(filePath, (err, data) => {
|
||||||
@@ -190,12 +189,12 @@ app.use('/characters', (req, res) => {
|
|||||||
});
|
});
|
||||||
app.use(multer({ dest: "uploads" }).single("avatar"));
|
app.use(multer({ dest: "uploads" }).single("avatar"));
|
||||||
app.get("/", function (request, response) {
|
app.get("/", function (request, response) {
|
||||||
response.sendFile(__dirname + "/public/index.html");
|
response.sendFile(__dirname + "/public/index.html");
|
||||||
//response.send("<h1>Главная страница</h1>");
|
//response.send("<h1>Главная страница</h1>");
|
||||||
});
|
});
|
||||||
app.get("/notes/*", function (request, response) {
|
app.get("/notes/*", function (request, response) {
|
||||||
response.sendFile(__dirname + "/public"+request.url+".html");
|
response.sendFile(__dirname + "/public" + request.url + ".html");
|
||||||
//response.send("<h1>Главная страница</h1>");
|
//response.send("<h1>Главная страница</h1>");
|
||||||
});
|
});
|
||||||
app.post("/getlastversion", jsonParser, function (request, response_getlastversion = response) {
|
app.post("/getlastversion", jsonParser, function (request, response_getlastversion = response) {
|
||||||
if (!request.body) return response_getlastversion.sendStatus(400);
|
if (!request.body) return response_getlastversion.sendStatus(400);
|
||||||
@@ -224,17 +223,18 @@ app.post("/getlastversion", jsonParser, function(request, response_getlastversio
|
|||||||
});
|
});
|
||||||
|
|
||||||
req.end();
|
req.end();
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
//**************Kobold api
|
//**************Kobold api
|
||||||
app.post("/generate", jsonParser, function (request, response_generate = response) {
|
app.post("/generate", jsonParser, function (request, response_generate = response) {
|
||||||
if (!request.body) return response_generate.sendStatus(400);
|
if (!request.body) return response_generate.sendStatus(400);
|
||||||
//console.log(request.body.prompt);
|
//console.log(request.body.prompt);
|
||||||
//const dataJson = JSON.parse(request.body);
|
//const dataJson = JSON.parse(request.body);
|
||||||
request_promt = request.body.prompt;
|
request_promt = request.body.prompt;
|
||||||
|
|
||||||
//console.log(request.body);
|
//console.log(request.body);
|
||||||
var this_settings = { prompt: request_promt,
|
var this_settings = {
|
||||||
|
prompt: request_promt,
|
||||||
use_story: false,
|
use_story: false,
|
||||||
use_memory: false,
|
use_memory: false,
|
||||||
use_authors_note: false,
|
use_authors_note: false,
|
||||||
@@ -246,7 +246,8 @@ app.post("/generate", jsonParser, function(request, response_generate = response
|
|||||||
|
|
||||||
if (request.body.gui_settings == false) {
|
if (request.body.gui_settings == false) {
|
||||||
var sampler_order = [request.body.s1, request.body.s2, request.body.s3, request.body.s4, request.body.s5, request.body.s6, request.body.s7];
|
var sampler_order = [request.body.s1, request.body.s2, request.body.s3, request.body.s4, request.body.s5, request.body.s6, request.body.s7];
|
||||||
this_settings = { prompt: request_promt,
|
this_settings = {
|
||||||
|
prompt: request_promt,
|
||||||
use_story: false,
|
use_story: false,
|
||||||
use_memory: false,
|
use_memory: false,
|
||||||
use_authors_note: false,
|
use_authors_note: false,
|
||||||
@@ -535,13 +536,13 @@ app.post("/createcharacter", urlencodedParser, function(request, response){
|
|||||||
if (!fs.existsSync(charactersPath + request.body.ch_name + '.png')) {
|
if (!fs.existsSync(charactersPath + request.body.ch_name + '.png')) {
|
||||||
if (!fs.existsSync(chatsPath + request.body.ch_name)) fs.mkdirSync(chatsPath + request.body.ch_name);
|
if (!fs.existsSync(chatsPath + request.body.ch_name)) fs.mkdirSync(chatsPath + request.body.ch_name);
|
||||||
let filedata = request.file;
|
let filedata = request.file;
|
||||||
//console.log(filedata.mimetype);
|
//console.log(filedata.mimetype);
|
||||||
var fileType = ".png";
|
var fileType = ".png";
|
||||||
var img_file = "ai";
|
var img_file = "ai";
|
||||||
var img_path = "public/img/";
|
var img_path = "public/img/";
|
||||||
var char = charaFormatData(request.body);//{"name": request.body.ch_name, "description": request.body.description, "personality": request.body.personality, "first_mes": request.body.first_mes, "avatar": 'none', "chat": Date.now(), "last_mes": '', "mes_example": ''};
|
var char = charaFormatData(request.body);//{"name": request.body.ch_name, "description": request.body.description, "personality": request.body.personality, "first_mes": request.body.first_mes, "avatar": 'none', "chat": Date.now(), "last_mes": '', "mes_example": ''};
|
||||||
char = JSON.stringify(char);
|
char = JSON.stringify(char);
|
||||||
if(!filedata){
|
if (!filedata) {
|
||||||
charaWrite('./public/img/fluffy.png', char, request.body.ch_name, response);
|
charaWrite('./public/img/fluffy.png', char, request.body.ch_name, response);
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
@@ -560,8 +561,8 @@ app.post("/createcharacter", urlencodedParser, function(request, response){
|
|||||||
response.send("Error: A character with that name already exists.");
|
response.send("Error: A character with that name already exists.");
|
||||||
//response.send({error: true});
|
//response.send({error: true});
|
||||||
}
|
}
|
||||||
//console.log(request.body);
|
//console.log(request.body);
|
||||||
//response.send(request.body.ch_name);
|
//response.send(request.body.ch_name);
|
||||||
|
|
||||||
//response.redirect("https://metanit.com")
|
//response.redirect("https://metanit.com")
|
||||||
});
|
});
|
||||||
@@ -570,7 +571,7 @@ app.post("/createcharacter", urlencodedParser, function(request, response){
|
|||||||
app.post("/editcharacter", urlencodedParser, async function (request, response) {
|
app.post("/editcharacter", urlencodedParser, async function (request, response) {
|
||||||
if (!request.body) return response.sendStatus(400);
|
if (!request.body) return response.sendStatus(400);
|
||||||
let filedata = request.file;
|
let filedata = request.file;
|
||||||
//console.log(filedata.mimetype);
|
//console.log(filedata.mimetype);
|
||||||
var fileType = ".png";
|
var fileType = ".png";
|
||||||
var img_file = "ai";
|
var img_file = "ai";
|
||||||
var img_path = charactersPath;
|
var img_path = charactersPath;
|
||||||
@@ -634,8 +635,8 @@ async function charaWrite(img_url, data, target_img, response = undefined, mes =
|
|||||||
//const resizedImage = pngImage.resize(100, 100);
|
//const resizedImage = pngImage.resize(100, 100);
|
||||||
|
|
||||||
// Get the chunks
|
// Get the chunks
|
||||||
var chunks = extract(image);
|
var chunks = extract(image);
|
||||||
var tEXtChunks = chunks.filter(chunk => chunk.create_date === 'tEXt');
|
var tEXtChunks = chunks.filter(chunk => chunk.create_date === 'tEXt');
|
||||||
|
|
||||||
// Remove all existing tEXt chunks
|
// Remove all existing tEXt chunks
|
||||||
for (var tEXtChunk of tEXtChunks) {
|
for (var tEXtChunk of tEXtChunks) {
|
||||||
@@ -646,7 +647,7 @@ async function charaWrite(img_url, data, target_img, response = undefined, mes =
|
|||||||
chunks.splice(-1, 0, PNGtext.encode('chara', base64EncodedData));
|
chunks.splice(-1, 0, PNGtext.encode('chara', base64EncodedData));
|
||||||
//chunks.splice(-1, 0, text.encode('lorem', 'ipsum'));
|
//chunks.splice(-1, 0, text.encode('lorem', 'ipsum'));
|
||||||
|
|
||||||
fs.writeFileSync(charactersPath+target_img+'.png', new Buffer.from(encode(chunks)));
|
fs.writeFileSync(charactersPath + target_img + '.png', new Buffer.from(encode(chunks)));
|
||||||
if (response !== undefined) response.send(mes);
|
if (response !== undefined) response.send(mes);
|
||||||
|
|
||||||
|
|
||||||
@@ -662,14 +663,14 @@ async function charaWrite(img_url, data, target_img, response = undefined, mes =
|
|||||||
|
|
||||||
function charaRead(img_url) {
|
function charaRead(img_url) {
|
||||||
sharp.cache(false);
|
sharp.cache(false);
|
||||||
const buffer = fs.readFileSync(img_url);
|
const buffer = fs.readFileSync(img_url);
|
||||||
const chunks = extract(buffer);
|
const chunks = extract(buffer);
|
||||||
|
|
||||||
const textChunks = chunks.filter(function (chunk) {
|
const textChunks = chunks.filter(function (chunk) {
|
||||||
return chunk.name === 'tEXt';
|
return chunk.name === 'tEXt';
|
||||||
}).map(function (chunk) {
|
}).map(function (chunk) {
|
||||||
//console.log(text.decode(chunk.data));
|
//console.log(text.decode(chunk.data));
|
||||||
return PNGtext.decode(chunk.data);
|
return PNGtext.decode(chunk.data);
|
||||||
});
|
});
|
||||||
var base64DecodedData = Buffer.from(textChunks[0].text, 'base64').toString('utf8');
|
var base64DecodedData = Buffer.from(textChunks[0].text, 'base64').toString('utf8');
|
||||||
return base64DecodedData;//textChunks[0].text;
|
return base64DecodedData;//textChunks[0].text;
|
||||||
@@ -774,7 +775,7 @@ app.post("/downloadbackground", urlencodedParser, function(request, response){
|
|||||||
if (!request.body) return response.sendStatus(400);
|
if (!request.body) return response.sendStatus(400);
|
||||||
|
|
||||||
let filedata = request.file;
|
let filedata = request.file;
|
||||||
//console.log(filedata.mimetype);
|
//console.log(filedata.mimetype);
|
||||||
var fileType = ".png";
|
var fileType = ".png";
|
||||||
var img_file = "ai";
|
var img_file = "ai";
|
||||||
var img_path = "public/img/";
|
var img_path = "public/img/";
|
||||||
@@ -982,7 +983,7 @@ return new Date(fs.statSync(path + '/' + a).mtime) - new Date(fs.statSync(path +
|
|||||||
app.post("/getstatus_novelai", jsonParser, function (request, response_getstatus_novel = response) {
|
app.post("/getstatus_novelai", jsonParser, function (request, response_getstatus_novel = response) {
|
||||||
|
|
||||||
if (!request.body) return response_getstatus_novel.sendStatus(400);
|
if (!request.body) return response_getstatus_novel.sendStatus(400);
|
||||||
api_key_novel = request.body.key;
|
api_key_novel = request.body.key;
|
||||||
var data = {};
|
var data = {};
|
||||||
var args = {
|
var args = {
|
||||||
data: data,
|
data: data,
|
||||||
@@ -1132,7 +1133,8 @@ app.post("/getallchatsofcharacter", jsonParser, function(request, response){
|
|||||||
//console.log('Found No Chats. Exiting Load Routine.');
|
//console.log('Found No Chats. Exiting Load Routine.');
|
||||||
response.send({ error: true });
|
response.send({ error: true });
|
||||||
};
|
};
|
||||||
})});
|
})
|
||||||
|
});
|
||||||
function getPngName(file) {
|
function getPngName(file) {
|
||||||
let i = 1;
|
let i = 1;
|
||||||
let base_name = file;
|
let base_name = file;
|
||||||
@@ -1148,10 +1150,10 @@ app.post("/importcharacter", urlencodedParser, async function(request, response)
|
|||||||
|
|
||||||
let png_name = '';
|
let png_name = '';
|
||||||
let filedata = request.file;
|
let filedata = request.file;
|
||||||
//console.log(filedata.filename);
|
//console.log(filedata.filename);
|
||||||
var format = request.body.file_type;
|
var format = request.body.file_type;
|
||||||
//console.log(format);
|
//console.log(format);
|
||||||
if(filedata){
|
if (filedata) {
|
||||||
if (format == 'json') {
|
if (format == 'json') {
|
||||||
fs.readFile('./uploads/' + filedata.filename, 'utf8', async (err, data) => {
|
fs.readFile('./uploads/' + filedata.filename, 'utf8', async (err, data) => {
|
||||||
if (err) {
|
if (err) {
|
||||||
@@ -1208,8 +1210,8 @@ app.post("/importcharacter", urlencodedParser, async function(request, response)
|
|||||||
//console.log("The file was saved.");
|
//console.log("The file was saved.");
|
||||||
|
|
||||||
|
|
||||||
//console.log(request.body);
|
//console.log(request.body);
|
||||||
//response.send(request.body.ch_name);
|
//response.send(request.body.ch_name);
|
||||||
|
|
||||||
//response.redirect("https://metanit.com")
|
//response.redirect("https://metanit.com")
|
||||||
});
|
});
|
||||||
@@ -1222,11 +1224,11 @@ app.post("/importchat", urlencodedParser, function(request, response){
|
|||||||
let filedata = request.file;
|
let filedata = request.file;
|
||||||
let avatar_url = (request.body.avatar_url).replace('.png', '');
|
let avatar_url = (request.body.avatar_url).replace('.png', '');
|
||||||
let ch_name = request.body.character_name;
|
let ch_name = request.body.character_name;
|
||||||
//console.log(filedata.filename);
|
//console.log(filedata.filename);
|
||||||
//var format = request.body.file_type;
|
//var format = request.body.file_type;
|
||||||
//console.log(format);
|
//console.log(format);
|
||||||
//console.log(1);
|
//console.log(1);
|
||||||
if(filedata){
|
if (filedata) {
|
||||||
|
|
||||||
if (format === 'json') {
|
if (format === 'json') {
|
||||||
fs.readFile('./uploads/' + filedata.filename, 'utf8', (err, data) => {
|
fs.readFile('./uploads/' + filedata.filename, 'utf8', (err, data) => {
|
||||||
|
Reference in New Issue
Block a user