init
This commit is contained in:
24
app/controllers/access_tokens_controller.js
Normal file
24
app/controllers/access_tokens_controller.js
Normal file
@@ -0,0 +1,24 @@
|
||||
import User from '#models/user';
|
||||
import { loginValidator } from '#validators/user';
|
||||
import UserTransformer from '#transformers/user_transformer';
|
||||
export default class AccessTokensController {
|
||||
async store({ request, serialize }) {
|
||||
const { email, password } = await request.validateUsing(loginValidator);
|
||||
const user = await User.verifyCredentials(email, password);
|
||||
const token = await User.accessTokens.create(user);
|
||||
return serialize({
|
||||
user: UserTransformer.transform(user),
|
||||
token: token.value.release(),
|
||||
});
|
||||
}
|
||||
async destroy({ auth }) {
|
||||
const user = auth.getUserOrFail();
|
||||
if (user.currentAccessToken) {
|
||||
await User.accessTokens.delete(user, user.currentAccessToken.identifier);
|
||||
}
|
||||
return {
|
||||
message: 'Logged out successfully',
|
||||
};
|
||||
}
|
||||
}
|
||||
//# sourceMappingURL=access_tokens_controller.js.map
|
||||
1
app/controllers/access_tokens_controller.js.map
Normal file
1
app/controllers/access_tokens_controller.js.map
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"access_tokens_controller.js","sourceRoot":"","sources":["../../../app/controllers/access_tokens_controller.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,cAAc,CAAA;AAC/B,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAEjD,OAAO,eAAe,MAAM,gCAAgC,CAAA;AAE5D,MAAM,CAAC,OAAO,OAAO,sBAAsB;IACzC,KAAK,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,SAAS,EAAe;QAC7C,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,MAAM,OAAO,CAAC,aAAa,CAAC,cAAc,CAAC,CAAA;QAEvE,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;QAC1D,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QAElD,OAAO,SAAS,CAAC;YACf,IAAI,EAAE,eAAe,CAAC,SAAS,CAAC,IAAI,CAAC;YACrC,KAAK,EAAE,KAAK,CAAC,KAAM,CAAC,OAAO,EAAE;SAC9B,CAAC,CAAA;IACJ,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,EAAE,IAAI,EAAe;QACjC,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,EAAE,CAAA;QACjC,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC5B,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAA;QAC1E,CAAC;QAED,OAAO;YACL,OAAO,EAAE,yBAAyB;SACnC,CAAA;IACH,CAAC;CACF"}
|
||||
67
app/controllers/backups_controller.js
Normal file
67
app/controllers/backups_controller.js
Normal file
@@ -0,0 +1,67 @@
|
||||
import BrandColor from '#models/brand_color';
|
||||
import BrandFont from '#models/brand_font';
|
||||
import Fanart from '#models/fanart';
|
||||
import Game from '#models/game';
|
||||
import Profile from '#models/profile';
|
||||
import SocialLink from '#models/social_link';
|
||||
import Tag from '#models/tag';
|
||||
export default class BackupsController {
|
||||
async export({ response }) {
|
||||
const [profile, tags, games, socialLinks, fanarts, brandColors, brandFonts] = await Promise.all([
|
||||
Profile.first(),
|
||||
Tag.all(),
|
||||
Game.query().orderBy('sort_order', 'asc'),
|
||||
SocialLink.all(),
|
||||
Fanart.query().orderBy('sort_order', 'asc'),
|
||||
BrandColor.all(),
|
||||
BrandFont.all(),
|
||||
]);
|
||||
return response.json({
|
||||
version: 1,
|
||||
exportedAt: new Date().toISOString(),
|
||||
profile: profile?.serialize(),
|
||||
tags: tags.map((t) => ({ name: t.name })),
|
||||
games: games.map((g) => ({ name: g.name, icon: g.icon, type: g.type, sortOrder: g.sortOrder })),
|
||||
socialLinks: socialLinks.map((s) => ({ platform: s.platform, url: s.url, username: s.username, icon: s.icon, color: s.color })),
|
||||
fanarts: fanarts.map((f) => ({ title: f.title, author: f.author, imageUrl: f.imageUrl, sortOrder: f.sortOrder })),
|
||||
brand: {
|
||||
colors: brandColors.map((c) => ({ name: c.name, hex: c.hex })),
|
||||
fonts: brandFonts.map((f) => ({ name: f.name })),
|
||||
},
|
||||
});
|
||||
}
|
||||
async restore({ request, response }) {
|
||||
const backup = request.body();
|
||||
if (backup.profile) {
|
||||
await Profile.truncate();
|
||||
const { name, avatarUrl, title, description, aboutText } = backup.profile;
|
||||
await Profile.create({ name, avatarUrl, title, description, aboutText });
|
||||
}
|
||||
if (Array.isArray(backup.tags)) {
|
||||
await Tag.truncate();
|
||||
await Tag.createMany(backup.tags.map((t) => ({ name: t.name })));
|
||||
}
|
||||
if (Array.isArray(backup.games)) {
|
||||
await Game.truncate();
|
||||
await Game.createMany(backup.games.map((g) => ({ name: g.name, icon: g.icon, type: g.type, sortOrder: g.sortOrder })));
|
||||
}
|
||||
if (Array.isArray(backup.socialLinks)) {
|
||||
await SocialLink.truncate();
|
||||
await SocialLink.createMany(backup.socialLinks.map((s) => ({ platform: s.platform, url: s.url, username: s.username, icon: s.icon, color: s.color })));
|
||||
}
|
||||
if (Array.isArray(backup.fanarts)) {
|
||||
await Fanart.truncate();
|
||||
await Fanart.createMany(backup.fanarts.map((f) => ({ title: f.title, author: f.author, imageUrl: f.imageUrl, sortOrder: f.sortOrder })));
|
||||
}
|
||||
if (backup.brand?.colors) {
|
||||
await BrandColor.truncate();
|
||||
await BrandColor.createMany(backup.brand.colors.map((c) => ({ name: c.name, hex: c.hex })));
|
||||
}
|
||||
if (backup.brand?.fonts) {
|
||||
await BrandFont.truncate();
|
||||
await BrandFont.createMany(backup.brand.fonts.map((f) => ({ name: f.name })));
|
||||
}
|
||||
return response.json({ success: true, restoredAt: new Date().toISOString() });
|
||||
}
|
||||
}
|
||||
//# sourceMappingURL=backups_controller.js.map
|
||||
1
app/controllers/backups_controller.js.map
Normal file
1
app/controllers/backups_controller.js.map
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"backups_controller.js","sourceRoot":"","sources":["../../../app/controllers/backups_controller.ts"],"names":[],"mappings":"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"}
|
||||
22
app/controllers/brands_controller.js
Normal file
22
app/controllers/brands_controller.js
Normal file
@@ -0,0 +1,22 @@
|
||||
import BrandColor from '#models/brand_color';
|
||||
import BrandFont from '#models/brand_font';
|
||||
export default class BrandsController {
|
||||
async show({}) {
|
||||
const colors = await BrandColor.all();
|
||||
const fonts = await BrandFont.all();
|
||||
return { colors, fonts };
|
||||
}
|
||||
async update({ request }) {
|
||||
const { colors, fonts } = request.only(['colors', 'fonts']);
|
||||
if (colors) {
|
||||
await BrandColor.truncate();
|
||||
await BrandColor.createMany(colors);
|
||||
}
|
||||
if (fonts) {
|
||||
await BrandFont.truncate();
|
||||
await BrandFont.createMany(fonts);
|
||||
}
|
||||
return this.show({ request });
|
||||
}
|
||||
}
|
||||
//# sourceMappingURL=brands_controller.js.map
|
||||
1
app/controllers/brands_controller.js.map
Normal file
1
app/controllers/brands_controller.js.map
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"brands_controller.js","sourceRoot":"","sources":["../../../app/controllers/brands_controller.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,qBAAqB,CAAA;AAC5C,OAAO,SAAS,MAAM,oBAAoB,CAAA;AAG1C,MAAM,CAAC,OAAO,OAAO,gBAAgB;IACnC,KAAK,CAAC,IAAI,CAAC,EAAe;QACxB,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,GAAG,EAAE,CAAA;QACrC,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,GAAG,EAAE,CAAA;QACnC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAA;IAC1B,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,EAAE,OAAO,EAAe;QACnC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAA;QAE3D,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,UAAU,CAAC,QAAQ,EAAE,CAAA;YAC3B,MAAM,UAAU,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;QACrC,CAAC;QACD,IAAI,KAAK,EAAE,CAAC;YACV,MAAM,SAAS,CAAC,QAAQ,EAAE,CAAA;YAC1B,MAAM,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA;QACnC,CAAC;QAED,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,OAAO,EAAS,CAAC,CAAA;IACtC,CAAC;CACF"}
|
||||
23
app/controllers/fanarts_controller.js
Normal file
23
app/controllers/fanarts_controller.js
Normal file
@@ -0,0 +1,23 @@
|
||||
import Fanart from '#models/fanart';
|
||||
export default class FanartsController {
|
||||
async index({}) {
|
||||
return Fanart.query().orderBy('sort_order', 'asc');
|
||||
}
|
||||
async store({ request }) {
|
||||
const data = request.only(['title', 'author', 'imageUrl', 'sortOrder']);
|
||||
return Fanart.create(data);
|
||||
}
|
||||
async update({ params, request }) {
|
||||
const fanart = await Fanart.findOrFail(params.id);
|
||||
const data = request.only(['title', 'author', 'imageUrl', 'sortOrder']);
|
||||
fanart.merge(data);
|
||||
await fanart.save();
|
||||
return fanart;
|
||||
}
|
||||
async destroy({ params, response }) {
|
||||
const fanart = await Fanart.findOrFail(params.id);
|
||||
await fanart.delete();
|
||||
return response.noContent();
|
||||
}
|
||||
}
|
||||
//# sourceMappingURL=fanarts_controller.js.map
|
||||
1
app/controllers/fanarts_controller.js.map
Normal file
1
app/controllers/fanarts_controller.js.map
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"fanarts_controller.js","sourceRoot":"","sources":["../../../app/controllers/fanarts_controller.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,gBAAgB,CAAA;AAGnC,MAAM,CAAC,OAAO,OAAO,iBAAiB;IACpC,KAAK,CAAC,KAAK,CAAC,EAAe;QACzB,OAAO,MAAM,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC,YAAY,EAAE,KAAK,CAAC,CAAA;IACpD,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,EAAE,OAAO,EAAe;QAClC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC,CAAA;QACvE,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;IAC5B,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,OAAO,EAAe;QAC3C,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;QACjD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC,CAAA;QACvE,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QAClB,MAAM,MAAM,CAAC,IAAI,EAAE,CAAA;QACnB,OAAO,MAAM,CAAA;IACf,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAe;QAC7C,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;QACjD,MAAM,MAAM,CAAC,MAAM,EAAE,CAAA;QACrB,OAAO,QAAQ,CAAC,SAAS,EAAE,CAAA;IAC7B,CAAC;CACF"}
|
||||
23
app/controllers/games_controller.js
Normal file
23
app/controllers/games_controller.js
Normal file
@@ -0,0 +1,23 @@
|
||||
import Game from '#models/game';
|
||||
export default class GamesController {
|
||||
async index({}) {
|
||||
return Game.query().orderBy('sort_order', 'asc');
|
||||
}
|
||||
async store({ request }) {
|
||||
const data = request.only(['name', 'icon', 'type', 'sortOrder']);
|
||||
return Game.create(data);
|
||||
}
|
||||
async update({ params, request }) {
|
||||
const game = await Game.findOrFail(params.id);
|
||||
const data = request.only(['name', 'icon', 'type', 'sortOrder']);
|
||||
game.merge(data);
|
||||
await game.save();
|
||||
return game;
|
||||
}
|
||||
async destroy({ params, response }) {
|
||||
const game = await Game.findOrFail(params.id);
|
||||
await game.delete();
|
||||
return response.noContent();
|
||||
}
|
||||
}
|
||||
//# sourceMappingURL=games_controller.js.map
|
||||
1
app/controllers/games_controller.js.map
Normal file
1
app/controllers/games_controller.js.map
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"games_controller.js","sourceRoot":"","sources":["../../../app/controllers/games_controller.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,cAAc,CAAA;AAG/B,MAAM,CAAC,OAAO,OAAO,eAAe;IAClC,KAAK,CAAC,KAAK,CAAC,EAAe;QACzB,OAAO,IAAI,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC,YAAY,EAAE,KAAK,CAAC,CAAA;IAClD,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,EAAE,OAAO,EAAe;QAClC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC,CAAA;QAChE,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;IAC1B,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,OAAO,EAAe;QAC3C,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;QAC7C,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC,CAAA;QAChE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QAChB,MAAM,IAAI,CAAC,IAAI,EAAE,CAAA;QACjB,OAAO,IAAI,CAAA;IACb,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAe;QAC7C,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;QAC7C,MAAM,IAAI,CAAC,MAAM,EAAE,CAAA;QACnB,OAAO,QAAQ,CAAC,SAAS,EAAE,CAAA;IAC7B,CAAC;CACF"}
|
||||
15
app/controllers/new_account_controller.js
Normal file
15
app/controllers/new_account_controller.js
Normal file
@@ -0,0 +1,15 @@
|
||||
import User from '#models/user';
|
||||
import { signupValidator } from '#validators/user';
|
||||
import UserTransformer from '#transformers/user_transformer';
|
||||
export default class NewAccountController {
|
||||
async store({ request, serialize }) {
|
||||
const { fullName, email, password } = await request.validateUsing(signupValidator);
|
||||
const user = await User.create({ fullName, email, password });
|
||||
const token = await User.accessTokens.create(user);
|
||||
return serialize({
|
||||
user: UserTransformer.transform(user),
|
||||
token: token.value.release(),
|
||||
});
|
||||
}
|
||||
}
|
||||
//# sourceMappingURL=new_account_controller.js.map
|
||||
1
app/controllers/new_account_controller.js.map
Normal file
1
app/controllers/new_account_controller.js.map
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"new_account_controller.js","sourceRoot":"","sources":["../../../app/controllers/new_account_controller.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,cAAc,CAAA;AAC/B,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAElD,OAAO,eAAe,MAAM,gCAAgC,CAAA;AAE5D,MAAM,CAAC,OAAO,OAAO,oBAAoB;IACvC,KAAK,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,SAAS,EAAe;QAC7C,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,MAAM,OAAO,CAAC,aAAa,CAAC,eAAe,CAAC,CAAA;QAElF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAA;QAC7D,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QAElD,OAAO,SAAS,CAAC;YACf,IAAI,EAAE,eAAe,CAAC,SAAS,CAAC,IAAI,CAAC;YACrC,KAAK,EAAE,KAAK,CAAC,KAAM,CAAC,OAAO,EAAE;SAC9B,CAAC,CAAA;IACJ,CAAC;CACF"}
|
||||
7
app/controllers/profile_controller.js
Normal file
7
app/controllers/profile_controller.js
Normal file
@@ -0,0 +1,7 @@
|
||||
import UserTransformer from '#transformers/user_transformer';
|
||||
export default class ProfileController {
|
||||
async show({ auth, serialize }) {
|
||||
return serialize(UserTransformer.transform(auth.getUserOrFail()));
|
||||
}
|
||||
}
|
||||
//# sourceMappingURL=profile_controller.js.map
|
||||
1
app/controllers/profile_controller.js.map
Normal file
1
app/controllers/profile_controller.js.map
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"profile_controller.js","sourceRoot":"","sources":["../../../app/controllers/profile_controller.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,MAAM,gCAAgC,CAAA;AAG5D,MAAM,CAAC,OAAO,OAAO,iBAAiB;IACpC,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAe;QACzC,OAAO,SAAS,CAAC,eAAe,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC,CAAA;IACnE,CAAC;CACF"}
|
||||
23
app/controllers/social_links_controller.js
Normal file
23
app/controllers/social_links_controller.js
Normal file
@@ -0,0 +1,23 @@
|
||||
import SocialLink from '#models/social_link';
|
||||
export default class SocialLinksController {
|
||||
async index({}) {
|
||||
return SocialLink.all();
|
||||
}
|
||||
async store({ request }) {
|
||||
const data = request.only(['platform', 'url', 'username', 'icon', 'color']);
|
||||
return SocialLink.create(data);
|
||||
}
|
||||
async update({ params, request }) {
|
||||
const link = await SocialLink.findOrFail(params.id);
|
||||
const data = request.only(['platform', 'url', 'username', 'icon', 'color']);
|
||||
link.merge(data);
|
||||
await link.save();
|
||||
return link;
|
||||
}
|
||||
async destroy({ params, response }) {
|
||||
const link = await SocialLink.findOrFail(params.id);
|
||||
await link.delete();
|
||||
return response.noContent();
|
||||
}
|
||||
}
|
||||
//# sourceMappingURL=social_links_controller.js.map
|
||||
1
app/controllers/social_links_controller.js.map
Normal file
1
app/controllers/social_links_controller.js.map
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"social_links_controller.js","sourceRoot":"","sources":["../../../app/controllers/social_links_controller.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,qBAAqB,CAAA;AAG5C,MAAM,CAAC,OAAO,OAAO,qBAAqB;IACxC,KAAK,CAAC,KAAK,CAAC,EAAe;QACzB,OAAO,UAAU,CAAC,GAAG,EAAE,CAAA;IACzB,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,EAAE,OAAO,EAAe;QAClC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;QAC3E,OAAO,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;IAChC,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,OAAO,EAAe;QAC3C,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;QACnD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;QAC3E,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QAChB,MAAM,IAAI,CAAC,IAAI,EAAE,CAAA;QACjB,OAAO,IAAI,CAAA;IACb,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAe;QAC7C,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;QACnD,MAAM,IAAI,CAAC,MAAM,EAAE,CAAA;QACnB,OAAO,QAAQ,CAAC,SAAS,EAAE,CAAA;IAC7B,CAAC;CACF"}
|
||||
18
app/controllers/vtubers_controller.js
Normal file
18
app/controllers/vtubers_controller.js
Normal file
@@ -0,0 +1,18 @@
|
||||
import Profile from '#models/profile';
|
||||
import Tag from '#models/tag';
|
||||
export default class VtubersController {
|
||||
async show({}) {
|
||||
const profile = await Profile.firstOrFail();
|
||||
const tags = await Tag.all();
|
||||
return { ...profile.serialize(), tags: tags.map((t) => t.name) };
|
||||
}
|
||||
async update({ request }) {
|
||||
const profile = await Profile.firstOrFail();
|
||||
const data = request.only(['name', 'avatarUrl', 'backgroundImageUrl', 'title', 'description', 'aboutText']);
|
||||
profile.merge(data);
|
||||
await profile.save();
|
||||
const tags = await Tag.all();
|
||||
return { ...profile.serialize(), tags: tags.map((t) => t.name) };
|
||||
}
|
||||
}
|
||||
//# sourceMappingURL=vtubers_controller.js.map
|
||||
1
app/controllers/vtubers_controller.js.map
Normal file
1
app/controllers/vtubers_controller.js.map
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"vtubers_controller.js","sourceRoot":"","sources":["../../../app/controllers/vtubers_controller.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,iBAAiB,CAAA;AACrC,OAAO,GAAG,MAAM,aAAa,CAAA;AAG7B,MAAM,CAAC,OAAO,OAAO,iBAAiB;IACpC,KAAK,CAAC,IAAI,CAAC,EAAe;QACxB,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,WAAW,EAAE,CAAA;QAC3C,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,GAAG,EAAE,CAAA;QAC5B,OAAO,EAAE,GAAG,OAAO,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAA;IAClE,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,EAAE,OAAO,EAAe;QACnC,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,WAAW,EAAE,CAAA;QAC3C,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,oBAAoB,EAAE,OAAO,EAAE,aAAa,EAAE,WAAW,CAAC,CAAC,CAAA;QAC3G,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QACnB,MAAM,OAAO,CAAC,IAAI,EAAE,CAAA;QACpB,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,GAAG,EAAE,CAAA;QAC5B,OAAO,EAAE,GAAG,OAAO,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAA;IAClE,CAAC;CACF"}
|
||||
12
app/exceptions/handler.js
Normal file
12
app/exceptions/handler.js
Normal file
@@ -0,0 +1,12 @@
|
||||
import app from '@adonisjs/core/services/app';
|
||||
import { ExceptionHandler } from '@adonisjs/core/http';
|
||||
export default class HttpExceptionHandler extends ExceptionHandler {
|
||||
debug = !app.inProduction;
|
||||
async handle(error, ctx) {
|
||||
return super.handle(error, ctx);
|
||||
}
|
||||
async report(error, ctx) {
|
||||
return super.report(error, ctx);
|
||||
}
|
||||
}
|
||||
//# sourceMappingURL=handler.js.map
|
||||
1
app/exceptions/handler.js.map
Normal file
1
app/exceptions/handler.js.map
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../app/exceptions/handler.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,6BAA6B,CAAA;AAC7C,OAAO,EAAoB,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AAExE,MAAM,CAAC,OAAO,OAAO,oBAAqB,SAAQ,gBAAgB;IAKtD,KAAK,GAAG,CAAC,GAAG,CAAC,YAAY,CAAA;IAMnC,KAAK,CAAC,MAAM,CAAC,KAAc,EAAE,GAAgB;QAC3C,OAAO,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;IACjC,CAAC;IAQD,KAAK,CAAC,MAAM,CAAC,KAAc,EAAE,GAAgB;QAC3C,OAAO,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;IACjC,CAAC;CACF"}
|
||||
7
app/middleware/auth_middleware.js
Normal file
7
app/middleware/auth_middleware.js
Normal file
@@ -0,0 +1,7 @@
|
||||
export default class AuthMiddleware {
|
||||
async handle(ctx, next, options = {}) {
|
||||
await ctx.auth.authenticateUsing(options.guards);
|
||||
return next();
|
||||
}
|
||||
}
|
||||
//# sourceMappingURL=auth_middleware.js.map
|
||||
1
app/middleware/auth_middleware.js.map
Normal file
1
app/middleware/auth_middleware.js.map
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"auth_middleware.js","sourceRoot":"","sources":["../../../app/middleware/auth_middleware.ts"],"names":[],"mappings":"AAQA,MAAM,CAAC,OAAO,OAAO,cAAc;IACjC,KAAK,CAAC,MAAM,CACV,GAAgB,EAChB,IAAY,EACZ,UAEI,EAAE;QAEN,MAAM,GAAG,CAAC,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;QAChD,OAAO,IAAI,EAAE,CAAA;IACf,CAAC;CACF"}
|
||||
10
app/middleware/container_bindings_middleware.js
Normal file
10
app/middleware/container_bindings_middleware.js
Normal file
@@ -0,0 +1,10 @@
|
||||
import { Logger } from '@adonisjs/core/logger';
|
||||
import { HttpContext } from '@adonisjs/core/http';
|
||||
export default class ContainerBindingsMiddleware {
|
||||
handle(ctx, next) {
|
||||
ctx.containerResolver.bindValue(HttpContext, ctx);
|
||||
ctx.containerResolver.bindValue(Logger, ctx.logger);
|
||||
return next();
|
||||
}
|
||||
}
|
||||
//# sourceMappingURL=container_bindings_middleware.js.map
|
||||
1
app/middleware/container_bindings_middleware.js.map
Normal file
1
app/middleware/container_bindings_middleware.js.map
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"container_bindings_middleware.js","sourceRoot":"","sources":["../../../app/middleware/container_bindings_middleware.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAA;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AAUjD,MAAM,CAAC,OAAO,OAAO,2BAA2B;IAC9C,MAAM,CAAC,GAAgB,EAAE,IAAY;QACnC,GAAG,CAAC,iBAAiB,CAAC,SAAS,CAAC,WAAW,EAAE,GAAG,CAAC,CAAA;QACjD,GAAG,CAAC,iBAAiB,CAAC,SAAS,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;QAEnD,OAAO,IAAI,EAAE,CAAA;IACf,CAAC;CACF"}
|
||||
7
app/middleware/force_json_response_middleware.js
Normal file
7
app/middleware/force_json_response_middleware.js
Normal file
@@ -0,0 +1,7 @@
|
||||
export default class ForceJsonResponseMiddleware {
|
||||
handle(ctx, next) {
|
||||
ctx.request.request.headers.accept = 'application/json';
|
||||
return next();
|
||||
}
|
||||
}
|
||||
//# sourceMappingURL=force_json_response_middleware.js.map
|
||||
1
app/middleware/force_json_response_middleware.js.map
Normal file
1
app/middleware/force_json_response_middleware.js.map
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"force_json_response_middleware.js","sourceRoot":"","sources":["../../../app/middleware/force_json_response_middleware.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,OAAO,OAAO,2BAA2B;IAC9C,MAAM,CAAC,GAAgB,EAAE,IAAY;QACnC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,kBAAkB,CAAA;QACvD,OAAO,IAAI,EAAE,CAAA;IACf,CAAC;CACF"}
|
||||
7
app/middleware/silent_auth_middleware.js
Normal file
7
app/middleware/silent_auth_middleware.js
Normal file
@@ -0,0 +1,7 @@
|
||||
export default class SilentAuthMiddleware {
|
||||
async handle(ctx, next) {
|
||||
await ctx.auth.check();
|
||||
return next();
|
||||
}
|
||||
}
|
||||
//# sourceMappingURL=silent_auth_middleware.js.map
|
||||
1
app/middleware/silent_auth_middleware.js.map
Normal file
1
app/middleware/silent_auth_middleware.js.map
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"silent_auth_middleware.js","sourceRoot":"","sources":["../../../app/middleware/silent_auth_middleware.ts"],"names":[],"mappings":"AASA,MAAM,CAAC,OAAO,OAAO,oBAAoB;IACvC,KAAK,CAAC,MAAM,CAAC,GAAgB,EAAE,IAAY;QACzC,MAAM,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,CAAA;QAEtB,OAAO,IAAI,EAAE,CAAA;IACf,CAAC;CACF"}
|
||||
4
app/models/brand_color.js
Normal file
4
app/models/brand_color.js
Normal file
@@ -0,0 +1,4 @@
|
||||
import { BrandColorSchema } from '#database/schema';
|
||||
export default class BrandColor extends BrandColorSchema {
|
||||
}
|
||||
//# sourceMappingURL=brand_color.js.map
|
||||
1
app/models/brand_color.js.map
Normal file
1
app/models/brand_color.js.map
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"brand_color.js","sourceRoot":"","sources":["../../../app/models/brand_color.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AAEnD,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,gBAAgB;CACvD"}
|
||||
4
app/models/brand_font.js
Normal file
4
app/models/brand_font.js
Normal file
@@ -0,0 +1,4 @@
|
||||
import { BrandFontSchema } from '#database/schema';
|
||||
export default class BrandFont extends BrandFontSchema {
|
||||
}
|
||||
//# sourceMappingURL=brand_font.js.map
|
||||
1
app/models/brand_font.js.map
Normal file
1
app/models/brand_font.js.map
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"brand_font.js","sourceRoot":"","sources":["../../../app/models/brand_font.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAElD,MAAM,CAAC,OAAO,OAAO,SAAU,SAAQ,eAAe;CACrD"}
|
||||
4
app/models/fanart.js
Normal file
4
app/models/fanart.js
Normal file
@@ -0,0 +1,4 @@
|
||||
import { FanartSchema } from '#database/schema';
|
||||
export default class Fanart extends FanartSchema {
|
||||
}
|
||||
//# sourceMappingURL=fanart.js.map
|
||||
1
app/models/fanart.js.map
Normal file
1
app/models/fanart.js.map
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"fanart.js","sourceRoot":"","sources":["../../../app/models/fanart.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAE/C,MAAM,CAAC,OAAO,OAAO,MAAO,SAAQ,YAAY;CAC/C"}
|
||||
4
app/models/game.js
Normal file
4
app/models/game.js
Normal file
@@ -0,0 +1,4 @@
|
||||
import { GameSchema } from '#database/schema';
|
||||
export default class Game extends GameSchema {
|
||||
}
|
||||
//# sourceMappingURL=game.js.map
|
||||
1
app/models/game.js.map
Normal file
1
app/models/game.js.map
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"game.js","sourceRoot":"","sources":["../../../app/models/game.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAE7C,MAAM,CAAC,OAAO,OAAO,IAAK,SAAQ,UAAU;CAC3C"}
|
||||
4
app/models/profile.js
Normal file
4
app/models/profile.js
Normal file
@@ -0,0 +1,4 @@
|
||||
import { ProfileSchema } from '#database/schema';
|
||||
export default class Profile extends ProfileSchema {
|
||||
}
|
||||
//# sourceMappingURL=profile.js.map
|
||||
1
app/models/profile.js.map
Normal file
1
app/models/profile.js.map
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"profile.js","sourceRoot":"","sources":["../../../app/models/profile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAEhD,MAAM,CAAC,OAAO,OAAO,OAAQ,SAAQ,aAAa;CACjD"}
|
||||
4
app/models/social_link.js
Normal file
4
app/models/social_link.js
Normal file
@@ -0,0 +1,4 @@
|
||||
import { SocialLinkSchema } from '#database/schema';
|
||||
export default class SocialLink extends SocialLinkSchema {
|
||||
}
|
||||
//# sourceMappingURL=social_link.js.map
|
||||
1
app/models/social_link.js.map
Normal file
1
app/models/social_link.js.map
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"social_link.js","sourceRoot":"","sources":["../../../app/models/social_link.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AAEnD,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,gBAAgB;CACvD"}
|
||||
4
app/models/tag.js
Normal file
4
app/models/tag.js
Normal file
@@ -0,0 +1,4 @@
|
||||
import { TagSchema } from '#database/schema';
|
||||
export default class Tag extends TagSchema {
|
||||
}
|
||||
//# sourceMappingURL=tag.js.map
|
||||
1
app/models/tag.js.map
Normal file
1
app/models/tag.js.map
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"tag.js","sourceRoot":"","sources":["../../../app/models/tag.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAE5C,MAAM,CAAC,OAAO,OAAO,GAAI,SAAQ,SAAS;CACzC"}
|
||||
16
app/models/user.js
Normal file
16
app/models/user.js
Normal file
@@ -0,0 +1,16 @@
|
||||
import { UserSchema } from '#database/schema';
|
||||
import hash from '@adonisjs/core/services/hash';
|
||||
import { compose } from '@adonisjs/core/helpers';
|
||||
import { withAuthFinder } from '@adonisjs/auth/mixins/lucid';
|
||||
import { DbAccessTokensProvider } from '@adonisjs/auth/access_tokens';
|
||||
export default class User extends compose(UserSchema, withAuthFinder(hash)) {
|
||||
static accessTokens = DbAccessTokensProvider.forModel(User);
|
||||
get initials() {
|
||||
const [first, last] = this.fullName ? this.fullName.split(' ') : this.email.split('@');
|
||||
if (first && last) {
|
||||
return `${first.charAt(0)}${last.charAt(0)}`.toUpperCase();
|
||||
}
|
||||
return `${first.slice(0, 2)}`.toUpperCase();
|
||||
}
|
||||
}
|
||||
//# sourceMappingURL=user.js.map
|
||||
1
app/models/user.js.map
Normal file
1
app/models/user.js.map
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"user.js","sourceRoot":"","sources":["../../../app/models/user.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAC7C,OAAO,IAAI,MAAM,8BAA8B,CAAA;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAA;AAC5D,OAAO,EAAoB,sBAAsB,EAAE,MAAM,8BAA8B,CAAA;AAEvF,MAAM,CAAC,OAAO,OAAO,IAAK,SAAQ,OAAO,CAAC,UAAU,EAAE,cAAc,CAAC,IAAI,CAAC,CAAC;IACzE,MAAM,CAAC,YAAY,GAAG,sBAAsB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;IAG3D,IAAI,QAAQ;QACV,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QACtF,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;YAClB,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,EAAE,CAAA;QAC5D,CAAC;QACD,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,WAAW,EAAE,CAAA;IAC7C,CAAC"}
|
||||
14
app/transformers/user_transformer.js
Normal file
14
app/transformers/user_transformer.js
Normal file
@@ -0,0 +1,14 @@
|
||||
import { BaseTransformer } from '@adonisjs/core/transformers';
|
||||
export default class UserTransformer extends BaseTransformer {
|
||||
toObject() {
|
||||
return this.pick(this.resource, [
|
||||
'id',
|
||||
'fullName',
|
||||
'email',
|
||||
'createdAt',
|
||||
'updatedAt',
|
||||
'initials',
|
||||
]);
|
||||
}
|
||||
}
|
||||
//# sourceMappingURL=user_transformer.js.map
|
||||
1
app/transformers/user_transformer.js.map
Normal file
1
app/transformers/user_transformer.js.map
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"user_transformer.js","sourceRoot":"","sources":["../../../app/transformers/user_transformer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAA;AAE7D,MAAM,CAAC,OAAO,OAAO,eAAgB,SAAQ,eAAqB;IAChE,QAAQ;QACN,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAC9B,IAAI;YACJ,UAAU;YACV,OAAO;YACP,WAAW;YACX,WAAW;YACX,UAAU;SACX,CAAC,CAAA;IACJ,CAAC;CACF"}
|
||||
14
app/validators/user.js
Normal file
14
app/validators/user.js
Normal file
@@ -0,0 +1,14 @@
|
||||
import vine from '@vinejs/vine';
|
||||
const email = () => vine.string().email().maxLength(254);
|
||||
const password = () => vine.string().minLength(8).maxLength(32);
|
||||
export const signupValidator = vine.create({
|
||||
fullName: vine.string().nullable(),
|
||||
email: email().unique({ table: 'users', column: 'email' }),
|
||||
password: password(),
|
||||
passwordConfirmation: password().sameAs('password'),
|
||||
});
|
||||
export const loginValidator = vine.create({
|
||||
email: email(),
|
||||
password: vine.string(),
|
||||
});
|
||||
//# sourceMappingURL=user.js.map
|
||||
1
app/validators/user.js.map
Normal file
1
app/validators/user.js.map
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"user.js","sourceRoot":"","sources":["../../../app/validators/user.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,cAAc,CAAA;AAK/B,MAAM,KAAK,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA;AACxD,MAAM,QAAQ,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;AAK/D,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC;IACzC,QAAQ,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAClC,KAAK,EAAE,KAAK,EAAE,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;IAC1D,QAAQ,EAAE,QAAQ,EAAE;IACpB,oBAAoB,EAAE,QAAQ,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC;CACpD,CAAC,CAAA;AAMF,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC;IACxC,KAAK,EAAE,KAAK,EAAE;IACd,QAAQ,EAAE,IAAI,CAAC,MAAM,EAAE;CACxB,CAAC,CAAA"}
|
||||
Reference in New Issue
Block a user