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"}
|
||||
Reference in New Issue
Block a user