/ WebApp / app / routeLinks.ts
routeLinks.ts
 1  import {
 2    DAPP_CATEGORY_STRINGS,
 3    DAPP_CATEGORY,
 4    DAPP_LIST,
 5  } from 'utils/constants';
 6  
 7  export const urlify = (input: string) =>
 8    !!input ? input.replace(' ', '-').toLowerCase() : input;
 9  
10  export const ROUTE_LINKS = {
11    Home: `/`,
12    CreateDApp: `/discover/create`,
13    Discover: (dappname: string | ':dappname') => `/discover/${urlify(dappname)}`,
14    UpdateDApp: (dappname: string) => `/discover/${urlify(dappname)}/update`,
15  
16    Vote: (
17      dappname: string | ':dappname',
18      voteType: 'upvote' | 'downvote' | ':voteType',
19    ) => `/vote/${urlify(dappname)}/${voteType}`,
20    HowToVote: '/how-to-vote',
21    Withdraw: (dappname: string | ':dappname') =>
22      `/discover/${urlify(dappname)}/withdraw`,
23  
24    categories: {
25      select: `/category/:category`,
26      All: `/category/all`,
27      [DAPP_CATEGORY.EXCHANGES]: `/category/${
28        DAPP_CATEGORY_STRINGS[DAPP_CATEGORY.EXCHANGES]
29      }`.toLowerCase(),
30      [DAPP_CATEGORY.MARKETPLACES]: `/category/${
31        DAPP_CATEGORY_STRINGS[DAPP_CATEGORY.MARKETPLACES]
32      }`.toLowerCase(),
33      [DAPP_CATEGORY.COLLECTIBLES]: `/category/${
34        DAPP_CATEGORY_STRINGS[DAPP_CATEGORY.COLLECTIBLES]
35      }`.toLowerCase(),
36      [DAPP_CATEGORY.GAMES]: `/category/${
37        DAPP_CATEGORY_STRINGS[DAPP_CATEGORY.GAMES]
38      }`.toLowerCase(),
39      [DAPP_CATEGORY.SOCIAL_NETWORKS]: `/category/${
40        DAPP_CATEGORY_STRINGS[DAPP_CATEGORY.SOCIAL_NETWORKS]
41      }`
42        .replace(' ', '-')
43        .toLowerCase(),
44      [DAPP_CATEGORY.UTILITIES]: `/category/${
45        DAPP_CATEGORY_STRINGS[DAPP_CATEGORY.UTILITIES]
46      }`.toLowerCase(),
47      [DAPP_CATEGORY.OTHER]: `/category/${
48        DAPP_CATEGORY_STRINGS[DAPP_CATEGORY.OTHER]
49      }`.toLowerCase(),
50    },
51    lists: {
52      // highestRated: `/list/highest-rated`,
53      // recentlyAdded: `/list/recently-added`,
54      highestRated: `/#${DAPP_LIST.HIGHEST_RATED}`,
55      recentlyAdded: `/#${DAPP_LIST.RECENTLY_ADDED}`,
56    },
57  };