|
|
|
@ -9,13 +9,11 @@
|
|
|
|
|
|
|
|
|
|
import { assertString, toSnakeCase } from '@vizality/util/string';
|
|
|
|
|
import { Sidebar } from '@vizality/components/dashboard';
|
|
|
|
|
import { Routes as _Routes } from '@discord/constants';
|
|
|
|
|
import { Events, Regexes } from '@vizality/constants';
|
|
|
|
|
import { assertObject } from '@vizality/util/object';
|
|
|
|
|
import { isComponent } from '@vizality/util/react';
|
|
|
|
|
import { getCaller } from '@vizality/util/file';
|
|
|
|
|
import { getModule } from '@vizality/webpack';
|
|
|
|
|
import { router } from '@discord/modules';
|
|
|
|
|
import { API } from '@vizality/entities';
|
|
|
|
|
import { isValidElement } from 'react';
|
|
|
|
|
|
|
|
|
@ -72,7 +70,7 @@ export default class Routes extends API {
|
|
|
|
|
history.shift();
|
|
|
|
|
const match = history.find(location => !location.includes('/vizality'));
|
|
|
|
|
const route = match.replace(new RegExp(Regexes.DISCORD), '');
|
|
|
|
|
router.replaceWith(route);
|
|
|
|
|
$discord.modules.router.replaceWith(route);
|
|
|
|
|
}
|
|
|
|
|
} catch (err) {
|
|
|
|
|
return this.error(this._labels.concat('restorePreviousRoute'), err);
|
|
|
|
@ -233,10 +231,10 @@ export default class Routes extends API {
|
|
|
|
|
if (!pathOrRouteId.startsWith('/')) {
|
|
|
|
|
switch (pathOrRouteId) {
|
|
|
|
|
case 'private': path = '/channels/@me/'; break;
|
|
|
|
|
case 'discover': path = _Routes.GUILD_DISCOVERY; break;
|
|
|
|
|
case 'friends': path = _Routes.FRIENDS; break;
|
|
|
|
|
case 'library': path = _Routes.APPLICATION_LIBRARY; break;
|
|
|
|
|
case 'nitro': path = _Routes.APPLICATION_STORE; break;
|
|
|
|
|
case 'discover': path = $discord.constants.Routes.GUILD_DISCOVERY; break;
|
|
|
|
|
case 'friends': path = $discord.constants.Routes.FRIENDS; break;
|
|
|
|
|
case 'library': path = $discord.constants.Routes.APPLICATION_LIBRARY; break;
|
|
|
|
|
case 'nitro': path = $discord.constants.Routes.APPLICATION_STORE; break;
|
|
|
|
|
default: path = `/vizality/${pathOrRouteId}`;
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
@ -247,7 +245,7 @@ export default class Routes extends API {
|
|
|
|
|
* Check if it's a Vizality route and has a # in the path.
|
|
|
|
|
*/
|
|
|
|
|
if (path.startsWith('/vizality/') && path.includes('#')) {
|
|
|
|
|
router.transitionTo(path);
|
|
|
|
|
$discord.modules.router.transitionTo(path);
|
|
|
|
|
const hash = path.split('#')[1];
|
|
|
|
|
/**
|
|
|
|
|
* This is bad, but currently it's the only way I really know how to do it.
|
|
|
|
@ -273,7 +271,7 @@ export default class Routes extends API {
|
|
|
|
|
/**
|
|
|
|
|
* Go to the route.
|
|
|
|
|
*/
|
|
|
|
|
return router.transitionTo(path);
|
|
|
|
|
return $discord.modules.router.transitionTo(path);
|
|
|
|
|
} catch (err) {
|
|
|
|
|
return this.error(err);
|
|
|
|
|
}
|
|
|
|
@ -340,10 +338,10 @@ export default class Routes extends API {
|
|
|
|
|
const location = {};
|
|
|
|
|
const routes = {
|
|
|
|
|
private: '/channels/@me/',
|
|
|
|
|
discover: _Routes.GUILD_DISCOVERY,
|
|
|
|
|
friends: _Routes.FRIENDS,
|
|
|
|
|
library: _Routes.APPLICATION_LIBRARY,
|
|
|
|
|
nitro: _Routes.APPLICATION_STORE,
|
|
|
|
|
discover: $discord.constants.Routes.GUILD_DISCOVERY,
|
|
|
|
|
friends: $discord.constants.Routes.FRIENDS,
|
|
|
|
|
library: $discord.constants.Routes.APPLICATION_LIBRARY,
|
|
|
|
|
nitro: $discord.constants.Routes.APPLICATION_STORE,
|
|
|
|
|
guild: '/channels/',
|
|
|
|
|
settings: '/vizality/settings',
|
|
|
|
|
plugins: '/vizality/plugins',
|
|
|
|
|