├── .github ├── dependabot.yml └── workflows │ ├── Release-DeployBattleship.yml │ ├── Release-DeployBattleshipZk.yml │ ├── Release-galactic-express.yml │ ├── Release-nft-marketplace.yml │ ├── Release-non-fungible-token.yml │ ├── Release-racing-game.yml │ ├── Release-simple-nft.yml │ ├── Release-syndote.yml │ ├── Release-tamagochi-battle.yml │ ├── Release-tamagotchi.yml │ ├── Release-tequila-train.yml │ ├── Release-tictac.yml │ ├── Release-varaman.yml │ ├── Release-varatube.yml │ ├── Release-w3bstreaming.yml │ ├── Release-w3bstreaming_be.yml │ ├── Release-warriors-battle.yml │ ├── Release.yml │ ├── STG-DeployBattleship.yml │ ├── STG-DeployBattleshipZk.yml │ ├── STG-galactic-express.yml │ ├── STG-nft-marketplace.yml │ ├── STG-non-fungible-token.yml │ ├── STG-racing-game.yml │ ├── STG-simple-nft.yml │ ├── STG-syndote.yml │ ├── STG-tamagochi-battle.yml │ ├── STG-tamagotchi-battle-new.yml │ ├── STG-tamagotchi.yml │ ├── STG-tequila-train.yml │ ├── STG-tictac.yml │ ├── STG-varaman.yml │ ├── STG-varatube.yml │ ├── STG-w3bstreaming.yml │ ├── STG-w3bstreaming_be.yml │ ├── STG-zk-poker.yml │ ├── UpdateGearDependency.yml │ ├── contracts-tests.yml │ ├── contracts.yml │ └── frontend.yml ├── .gitignore ├── .gitpod.yml ├── .vscode └── settings.json ├── LICENSE ├── README.md ├── backend ├── gasless │ ├── .env.example │ ├── .eslintrc.json │ ├── .gitignore │ ├── README.md │ ├── package.json │ ├── src │ │ ├── gasless-service.ts │ │ └── index.ts │ ├── tsconfig.json │ └── yarn.lock └── w3bstreaming │ ├── .env.example │ ├── .eslintrc.json │ ├── .gitignore │ ├── Dockerfile │ ├── README.md │ ├── package.json │ ├── src │ ├── config.ts │ ├── contract │ │ ├── index.ts │ │ ├── init.ts │ │ ├── lib.ts │ │ ├── state.ts │ │ └── types.ts │ ├── helpers.ts │ ├── main.ts │ └── server.ts │ ├── tsconfig.json │ ├── types │ └── index.ts │ └── yarn.lock ├── contracts ├── .gitignore ├── Cargo.lock ├── Cargo.toml ├── README.md ├── battle │ ├── Cargo.toml │ ├── README.md │ ├── app │ │ ├── Cargo.toml │ │ └── src │ │ │ ├── lib.rs │ │ │ └── services │ │ │ ├── game │ │ │ ├── funcs.rs │ │ │ ├── mod.rs │ │ │ ├── session.rs │ │ │ └── utils.rs │ │ │ ├── mod.rs │ │ │ └── utils.rs │ ├── build.rs │ ├── client │ │ ├── Cargo.toml │ │ ├── build.rs │ │ └── src │ │ │ └── lib.rs │ ├── src │ │ └── lib.rs │ ├── tests │ │ └── gtest.rs │ └── warrior │ │ ├── README.md │ │ ├── app │ │ ├── Cargo.toml │ │ └── src │ │ │ └── lib.rs │ │ └── wasm │ │ ├── Cargo.toml │ │ ├── build.rs │ │ ├── src │ │ └── lib.rs │ │ └── warrior.idl ├── battleship │ ├── Cargo.toml │ ├── README.md │ ├── bot │ │ ├── Cargo.toml │ │ ├── build.rs │ │ └── src │ │ │ └── lib.rs │ ├── build.rs │ ├── io │ │ ├── Cargo.toml │ │ └── src │ │ │ └── lib.rs │ ├── src │ │ ├── contract.rs │ │ └── lib.rs │ └── tests │ │ ├── load_testing.rs │ │ ├── test.rs │ │ ├── test_bot.rs │ │ ├── test_bot_node.rs │ │ └── test_node.rs ├── car-races │ ├── .gitignore │ ├── Cargo.toml │ ├── README.md │ ├── app │ │ ├── Cargo.toml │ │ └── src │ │ │ ├── lib.rs │ │ │ └── services │ │ │ ├── error.rs │ │ │ ├── game.rs │ │ │ ├── mod.rs │ │ │ ├── session.rs │ │ │ └── utils.rs │ ├── build.rs │ ├── car-1 │ │ ├── Cargo.toml │ │ ├── README.md │ │ ├── app │ │ │ ├── Cargo.toml │ │ │ └── src │ │ │ │ └── lib.rs │ │ ├── build.rs │ │ └── src │ │ │ └── lib.rs │ ├── car-2 │ │ ├── Cargo.toml │ │ ├── README.md │ │ ├── app │ │ │ ├── Cargo.toml │ │ │ └── src │ │ │ │ └── lib.rs │ │ ├── build.rs │ │ └── src │ │ │ └── lib.rs │ ├── car-3 │ │ ├── Cargo.toml │ │ ├── README.md │ │ ├── app │ │ │ ├── Cargo.toml │ │ │ └── src │ │ │ │ └── lib.rs │ │ ├── build.rs │ │ └── src │ │ │ └── lib.rs │ ├── client │ │ ├── Cargo.toml │ │ ├── build.rs │ │ └── src │ │ │ └── lib.rs │ ├── src │ │ └── lib.rs │ └── tests │ │ └── gtest.rs ├── concert │ ├── .gitignore │ ├── Cargo.toml │ ├── README.md │ ├── app │ │ ├── Cargo.toml │ │ └── src │ │ │ └── lib.rs │ ├── build.rs │ ├── client │ │ ├── Cargo.toml │ │ ├── build.rs │ │ └── src │ │ │ └── lib.rs │ ├── src │ │ └── lib.rs │ └── tests │ │ └── gtest.rs ├── dex │ ├── .gitignore │ ├── Cargo.toml │ ├── README.md │ ├── app │ │ ├── Cargo.toml │ │ └── src │ │ │ ├── lib.rs │ │ │ └── utils.rs │ ├── build.rs │ ├── client │ │ ├── Cargo.toml │ │ ├── build.rs │ │ └── src │ │ │ └── lib.rs │ ├── src │ │ └── lib.rs │ └── tests │ │ └── gtest.rs ├── dynamic-nft │ ├── .gitignore │ ├── Cargo.lock │ ├── Cargo.toml │ ├── README.md │ ├── app │ │ ├── Cargo.toml │ │ └── src │ │ │ ├── lib.rs │ │ │ └── services │ │ │ ├── dynamic_nft │ │ │ ├── funcs.rs │ │ │ └── mod.rs │ │ │ ├── mod.rs │ │ │ └── utils.rs │ ├── build.rs │ ├── client │ │ ├── Cargo.toml │ │ ├── build.rs │ │ └── src │ │ │ └── lib.rs │ ├── src │ │ └── lib.rs │ └── tests │ │ ├── node_test.rs │ │ └── test.rs ├── galactic-express │ ├── .gitignore │ ├── Cargo.toml │ ├── README.md │ ├── app │ │ ├── Cargo.toml │ │ └── src │ │ │ ├── lib.rs │ │ │ └── services │ │ │ ├── galactic_express │ │ │ ├── funcs.rs │ │ │ ├── mod.rs │ │ │ └── utils.rs │ │ │ ├── mod.rs │ │ │ └── utils.rs │ ├── build.rs │ ├── client │ │ ├── Cargo.toml │ │ ├── build.rs │ │ └── src │ │ │ └── lib.rs │ ├── src │ │ └── lib.rs │ └── tests │ │ └── gtest.rs ├── multisig-wallet │ ├── .gitignore │ ├── Cargo.toml │ ├── README.md │ ├── app │ │ ├── Cargo.toml │ │ └── src │ │ │ ├── lib.rs │ │ │ └── utils.rs │ ├── build.rs │ ├── client │ │ ├── Cargo.toml │ │ ├── build.rs │ │ └── src │ │ │ └── lib.rs │ ├── src │ │ └── lib.rs │ └── tests │ │ └── gtest.rs ├── nft-marketplace │ ├── .gitignore │ ├── Cargo.toml │ ├── README.md │ ├── app │ │ ├── Cargo.toml │ │ └── src │ │ │ ├── funcs.rs │ │ │ ├── lib.rs │ │ │ ├── nft_messages.rs │ │ │ ├── payment.rs │ │ │ ├── sale.rs │ │ │ └── utils.rs │ ├── build.rs │ ├── client │ │ ├── Cargo.toml │ │ ├── build.rs │ │ └── src │ │ │ └── lib.rs │ ├── src │ │ └── lib.rs │ └── tests │ │ └── gtest.rs ├── oracle │ ├── .gitignore │ ├── Cargo.toml │ ├── README.md │ ├── app │ │ ├── Cargo.toml │ │ └── src │ │ │ └── lib.rs │ ├── build.rs │ ├── client │ │ ├── Cargo.toml │ │ ├── build.rs │ │ └── src │ │ │ └── lib.rs │ ├── randomness │ │ ├── .gitignore │ │ ├── Cargo.lock │ │ ├── Cargo.toml │ │ ├── README.md │ │ ├── app │ │ │ ├── Cargo.toml │ │ │ └── src │ │ │ │ └── lib.rs │ │ ├── build.rs │ │ ├── client │ │ │ ├── Cargo.toml │ │ │ ├── build.rs │ │ │ └── src │ │ │ │ └── lib.rs │ │ ├── src │ │ │ └── lib.rs │ │ └── tests │ │ │ └── gtest.rs │ ├── src │ │ └── lib.rs │ └── tests │ │ └── gtest.rs ├── ping-pong │ ├── .gitignore │ ├── Cargo.toml │ ├── README.md │ ├── app │ │ ├── Cargo.toml │ │ └── src │ │ │ └── lib.rs │ ├── build.rs │ ├── client │ │ ├── Cargo.toml │ │ ├── build.rs │ │ └── src │ │ │ └── lib.rs │ ├── src │ │ └── lib.rs │ └── tests │ │ └── gtest.rs ├── rmrk │ ├── Cargo.toml │ ├── README.md │ ├── build.rs │ ├── catalog │ │ ├── Cargo.toml │ │ ├── build.rs │ │ ├── io │ │ │ ├── Cargo.toml │ │ │ └── src │ │ │ │ └── lib.rs │ │ └── src │ │ │ ├── catalog.rs │ │ │ └── lib.rs │ ├── io │ │ ├── Cargo.toml │ │ └── src │ │ │ └── lib.rs │ ├── resource │ │ ├── Cargo.toml │ │ ├── build.rs │ │ ├── io │ │ │ ├── Cargo.toml │ │ │ └── src │ │ │ │ └── lib.rs │ │ └── src │ │ │ └── lib.rs │ ├── src │ │ ├── burn.rs │ │ ├── checks.rs │ │ ├── children.rs │ │ ├── equippable.rs │ │ ├── lib.rs │ │ ├── messages.rs │ │ ├── mint.rs │ │ ├── transfer.rs │ │ ├── tx_manager.rs │ │ └── utils.rs │ ├── state │ │ ├── Cargo.toml │ │ ├── build.rs │ │ └── src │ │ │ └── lib.rs │ ├── tests │ │ ├── catalog.rs │ │ ├── equippable │ │ │ ├── equip.rs │ │ │ ├── mod.rs │ │ │ └── utils.rs │ │ ├── test.rs │ │ ├── token_tests │ │ │ ├── accept_reject_children.rs │ │ │ ├── burn.rs │ │ │ ├── mint.rs │ │ │ ├── mod.rs │ │ │ ├── transfer.rs │ │ │ └── transfer_to_rmrk_token.rs │ │ └── utils.rs │ └── types │ │ ├── Cargo.toml │ │ └── src │ │ └── lib.rs ├── rustfmt.toml ├── staking │ ├── .gitignore │ ├── Cargo.toml │ ├── README.md │ ├── app │ │ ├── Cargo.toml │ │ └── src │ │ │ └── lib.rs │ ├── build.rs │ ├── client │ │ ├── Cargo.toml │ │ ├── build.rs │ │ └── src │ │ │ └── lib.rs │ ├── src │ │ └── lib.rs │ └── tests │ │ └── gtest.rs ├── syndote │ ├── README.md │ ├── app │ │ ├── Cargo.toml │ │ ├── src │ │ │ ├── lib.rs │ │ │ └── services │ │ │ │ ├── game │ │ │ │ ├── funcs.rs │ │ │ │ ├── mod.rs │ │ │ │ └── utils.rs │ │ │ │ ├── mod.rs │ │ │ │ └── utils.rs │ │ └── tests │ │ │ └── test.rs │ ├── player │ │ ├── README.md │ │ ├── app │ │ │ ├── Cargo.toml │ │ │ └── src │ │ │ │ └── lib.rs │ │ └── wasm │ │ │ ├── Cargo.toml │ │ │ ├── build.rs │ │ │ ├── src │ │ │ └── lib.rs │ │ │ └── syndote_player.idl │ └── wasm │ │ ├── Cargo.toml │ │ ├── build.rs │ │ ├── src │ │ └── lib.rs │ │ └── syndote.idl ├── tamagotchi-battle │ ├── Cargo.toml │ ├── README.md │ ├── build.rs │ ├── io │ │ ├── Cargo.toml │ │ └── src │ │ │ └── lib.rs │ ├── src │ │ └── lib.rs │ ├── state │ │ ├── Cargo.toml │ │ ├── build.rs │ │ └── src │ │ │ └── lib.rs │ └── tests │ │ └── node-test.rs ├── tamagotchi │ ├── Cargo.toml │ ├── README.md │ ├── build.rs │ ├── io │ │ ├── Cargo.toml │ │ └── src │ │ │ └── lib.rs │ ├── src │ │ └── lib.rs │ └── state │ │ ├── Cargo.toml │ │ ├── build.rs │ │ └── src │ │ └── lib.rs ├── tequila-train │ ├── Cargo.toml │ ├── README.md │ ├── build.rs │ ├── io │ │ ├── Cargo.toml │ │ └── src │ │ │ ├── lib.rs │ │ │ └── test.rs │ ├── src │ │ └── lib.rs │ └── tests │ │ └── test.rs ├── tic-tac-toe │ ├── .gitignore │ ├── Cargo.toml │ ├── README.md │ ├── app │ │ ├── Cargo.toml │ │ └── src │ │ │ ├── lib.rs │ │ │ └── services │ │ │ ├── game │ │ │ ├── funcs.rs │ │ │ ├── mod.rs │ │ │ └── utils.rs │ │ │ ├── mod.rs │ │ │ ├── session │ │ │ ├── funcs.rs │ │ │ ├── mod.rs │ │ │ └── utils.rs │ │ │ └── utils.rs │ ├── build.rs │ ├── client │ │ ├── Cargo.toml │ │ ├── build.rs │ │ └── src │ │ │ └── lib.rs │ ├── src │ │ └── lib.rs │ └── tests │ │ └── gtest.rs ├── upgrade-proxy │ ├── README.md │ ├── counter │ │ ├── Cargo.lock │ │ ├── Cargo.toml │ │ ├── README.md │ │ ├── app │ │ │ ├── Cargo.toml │ │ │ └── src │ │ │ │ └── lib.rs │ │ ├── build.rs │ │ ├── client │ │ │ ├── Cargo.toml │ │ │ ├── build.rs │ │ │ └── src │ │ │ │ └── lib.rs │ │ ├── src │ │ │ └── lib.rs │ │ └── tests │ │ │ └── gtest.rs │ └── upgrade-proxy │ │ ├── Cargo.lock │ │ ├── Cargo.toml │ │ ├── README.md │ │ ├── app │ │ ├── Cargo.toml │ │ └── src │ │ │ └── lib.rs │ │ ├── build.rs │ │ ├── client │ │ ├── Cargo.toml │ │ ├── build.rs │ │ └── src │ │ │ └── lib.rs │ │ ├── src │ │ └── lib.rs │ │ └── tests │ │ └── gtest.rs ├── vara-man │ ├── .gitignore │ ├── Cargo.toml │ ├── README.md │ ├── app │ │ ├── Cargo.toml │ │ └── src │ │ │ ├── lib.rs │ │ │ └── services │ │ │ ├── game │ │ │ ├── funcs.rs │ │ │ ├── mod.rs │ │ │ └── utils.rs │ │ │ ├── mod.rs │ │ │ ├── session │ │ │ ├── funcs.rs │ │ │ ├── mod.rs │ │ │ └── utils.rs │ │ │ └── utils.rs │ ├── build.rs │ ├── client │ │ ├── Cargo.toml │ │ ├── build.rs │ │ └── src │ │ │ └── lib.rs │ ├── src │ │ └── lib.rs │ └── tests │ │ └── gtest.rs ├── varatube │ ├── .gitignore │ ├── Cargo.toml │ ├── README.md │ ├── app │ │ ├── Cargo.toml │ │ └── src │ │ │ ├── funcs.rs │ │ │ ├── lib.rs │ │ │ └── utils.rs │ ├── build.rs │ ├── client │ │ ├── Cargo.toml │ │ ├── build.rs │ │ └── src │ │ │ └── lib.rs │ └── src │ │ └── lib.rs ├── w3bstreaming │ ├── .gitignore │ ├── Cargo.toml │ ├── README.md │ ├── app │ │ ├── Cargo.toml │ │ └── src │ │ │ ├── lib.rs │ │ │ └── utils.rs │ ├── build.rs │ ├── client │ │ ├── Cargo.toml │ │ ├── build.rs │ │ └── src │ │ │ └── lib.rs │ ├── src │ │ └── lib.rs │ └── tests │ │ └── gtest.rs └── zk-battleship │ ├── README.md │ ├── app │ ├── Cargo.toml │ ├── src │ │ ├── lib.rs │ │ └── services │ │ │ ├── admin │ │ │ ├── mod.rs │ │ │ └── storage.rs │ │ │ ├── mod.rs │ │ │ ├── multiple │ │ │ ├── funcs.rs │ │ │ ├── mod.rs │ │ │ ├── storage.rs │ │ │ └── utils.rs │ │ │ ├── session │ │ │ ├── funcs.rs │ │ │ ├── mod.rs │ │ │ ├── sr25519.rs │ │ │ ├── storage.rs │ │ │ └── utils.rs │ │ │ ├── single │ │ │ ├── funcs.rs │ │ │ ├── mod.rs │ │ │ ├── storage.rs │ │ │ └── utils.rs │ │ │ ├── utils.rs │ │ │ └── verify.rs │ └── tests │ │ ├── node_test.rs │ │ ├── test.rs │ │ └── utils_gclient │ │ └── mod.rs │ ├── circom │ ├── hit.circom │ ├── hit_input.json │ ├── placement.circom │ └── placement_input.json │ └── wasm │ ├── Cargo.toml │ ├── battleship.idl │ ├── build.rs │ └── src │ └── lib.rs ├── frontend ├── .editorconfig ├── .gitattributes ├── .gitignore ├── .prettierrc ├── .yarn │ └── releases │ │ └── yarn-4.6.0.cjs ├── .yarnrc.yml ├── README.md ├── apps │ ├── README.md │ ├── battleship-zk │ │ ├── .env.example │ │ ├── Dockerfile │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── public │ │ │ ├── favicon.ico │ │ │ └── sprites │ │ │ │ └── icons.svg │ │ ├── src │ │ │ ├── app.scss │ │ │ ├── app.tsx │ │ │ ├── app │ │ │ │ ├── consts.ts │ │ │ │ ├── hocs │ │ │ │ │ └── index.tsx │ │ │ │ ├── hooks │ │ │ │ │ ├── api.ts │ │ │ │ │ └── index.ts │ │ │ │ └── utils │ │ │ │ │ ├── sails │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── lib │ │ │ │ │ │ └── lib.ts │ │ │ │ │ ├── queries │ │ │ │ │ │ └── use-configuration-query.ts │ │ │ │ │ └── sails.tsx │ │ │ │ │ └── utils.ts │ │ │ ├── assets │ │ │ │ ├── images │ │ │ │ │ ├── bg.png │ │ │ │ │ ├── fire.gif │ │ │ │ │ ├── icons │ │ │ │ │ │ ├── admin-line.svg │ │ │ │ │ │ ├── android-line.svg │ │ │ │ │ │ ├── arrow-right.svg │ │ │ │ │ │ ├── burger-menu.svg │ │ │ │ │ │ ├── caret-down.svg │ │ │ │ │ │ ├── chevron-down.svg │ │ │ │ │ │ ├── chevron-left.svg │ │ │ │ │ │ ├── chevron-right.svg │ │ │ │ │ │ ├── chevrons-left.svg │ │ │ │ │ │ ├── chevrons-right.svg │ │ │ │ │ │ ├── coin.svg │ │ │ │ │ │ ├── copy-decoded.svg │ │ │ │ │ │ ├── cross.svg │ │ │ │ │ │ ├── discord.svg │ │ │ │ │ │ ├── gear.svg │ │ │ │ │ │ ├── github.svg │ │ │ │ │ │ ├── ic-user-small-24.svg │ │ │ │ │ │ ├── medium.svg │ │ │ │ │ │ ├── search-line.svg │ │ │ │ │ │ ├── search.svg │ │ │ │ │ │ ├── ship-x1.svg │ │ │ │ │ │ ├── ship-x2.svg │ │ │ │ │ │ ├── ship-x3.svg │ │ │ │ │ │ ├── ship-x4.svg │ │ │ │ │ │ ├── star.svg │ │ │ │ │ │ ├── tvara-coin.svg │ │ │ │ │ │ ├── twitter.svg │ │ │ │ │ │ ├── vara-coin.svg │ │ │ │ │ │ └── vara-logo.svg │ │ │ │ │ ├── illustration-battleship.png │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── sea.png │ │ │ │ │ ├── smoke.gif │ │ │ │ │ └── tails.gif │ │ │ │ └── styles │ │ │ │ │ ├── _shared.scss │ │ │ │ │ ├── common.scss │ │ │ │ │ ├── index.scss │ │ │ │ │ └── utils │ │ │ │ │ ├── _breakpoints.scss │ │ │ │ │ ├── _index.scss │ │ │ │ │ ├── _mixins.scss │ │ │ │ │ └── _variables.scss │ │ │ ├── components │ │ │ │ ├── index.ts │ │ │ │ ├── layout │ │ │ │ │ ├── game-details │ │ │ │ │ │ ├── GameDetails.module.scss │ │ │ │ │ │ ├── GameDetails.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── header │ │ │ │ │ │ ├── ModalBackground.tsx │ │ │ │ │ │ ├── account-info │ │ │ │ │ │ │ ├── account-info.module.scss │ │ │ │ │ │ │ ├── account-info.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── header.module.scss │ │ │ │ │ │ ├── header.tsx │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── logo │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ ├── logo.module.scss │ │ │ │ │ │ │ └── logo.tsx │ │ │ │ │ │ └── navigation │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ ├── navigation.module.scss │ │ │ │ │ │ │ └── navigation.tsx │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── not-found │ │ │ │ │ │ ├── assets │ │ │ │ │ │ │ └── images │ │ │ │ │ │ │ │ ├── 404.jpg │ │ │ │ │ │ │ │ └── 404.webp │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── not-found.module.scss │ │ │ │ │ │ └── not-found.tsx │ │ │ │ │ ├── text-field │ │ │ │ │ │ ├── TextField.interfaces.ts │ │ │ │ │ │ ├── TextField.module.scss │ │ │ │ │ │ ├── TextField.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── text-modal │ │ │ │ │ │ ├── TextModal.module.scss │ │ │ │ │ │ ├── TextModal.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ └── vara-svg │ │ │ │ │ │ ├── VaraIcon.module.scss │ │ │ │ │ │ ├── VaraIcon.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ ├── loaders │ │ │ │ │ ├── api-loader │ │ │ │ │ │ ├── ApiLoader.module.scss │ │ │ │ │ │ ├── ApiLoader.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── loader │ │ │ │ │ │ ├── Loader.module.scss │ │ │ │ │ │ ├── Loader.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ └── loading-error │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── loading-error.module.scss │ │ │ │ │ │ └── loading-error.tsx │ │ │ │ └── ui │ │ │ │ │ ├── alert │ │ │ │ │ ├── alert.module.scss │ │ │ │ │ ├── alert.tsx │ │ │ │ │ ├── alert.types.ts │ │ │ │ │ └── index.ts │ │ │ │ │ ├── balance │ │ │ │ │ ├── Balance.module.scss │ │ │ │ │ ├── Balance.tsx │ │ │ │ │ └── index.ts │ │ │ │ │ ├── button │ │ │ │ │ ├── button.tsx │ │ │ │ │ ├── buttons.module.scss │ │ │ │ │ └── index.ts │ │ │ │ │ ├── container │ │ │ │ │ ├── container.module.scss │ │ │ │ │ ├── container.tsx │ │ │ │ │ └── index.ts │ │ │ │ │ ├── heading │ │ │ │ │ ├── Heading.module.scss │ │ │ │ │ ├── Heading.tsx │ │ │ │ │ └── index.ts │ │ │ │ │ ├── modal │ │ │ │ │ ├── Modal.module.scss │ │ │ │ │ ├── Modal.tsx │ │ │ │ │ ├── Modal.variants.tsx │ │ │ │ │ ├── ModalBottom.tsx │ │ │ │ │ └── index.ts │ │ │ │ │ ├── scroll-area │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── scroll-area.module.scss │ │ │ │ │ └── scroll-area.tsx │ │ │ │ │ ├── sprite.tsx │ │ │ │ │ ├── text-gradient │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── text-gradient.module.scss │ │ │ │ │ └── text-gradient.tsx │ │ │ │ │ └── text │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── text.module.scss │ │ │ │ │ └── text.tsx │ │ │ ├── env.d.ts │ │ │ ├── features │ │ │ │ ├── game │ │ │ │ │ ├── assets │ │ │ │ │ │ └── images │ │ │ │ │ │ │ └── ship.svg │ │ │ │ │ ├── components │ │ │ │ │ │ ├── game-cancelled-modal │ │ │ │ │ │ │ ├── GameCancelledModal.module.scss │ │ │ │ │ │ │ ├── game-cancelled-modal.tsx │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── game-end-modal │ │ │ │ │ │ │ ├── GameEndModal.module.scss │ │ │ │ │ │ │ ├── game-end-modal.tsx │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── game-process │ │ │ │ │ │ │ ├── GameProcess.module.scss │ │ │ │ │ │ │ ├── game-process.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── illustration │ │ │ │ │ │ │ ├── Illustration.module.scss │ │ │ │ │ │ │ ├── illustration.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── map │ │ │ │ │ │ │ ├── index.tsx │ │ │ │ │ │ │ ├── map.module.scss │ │ │ │ │ │ │ ├── map.tsx │ │ │ │ │ │ │ └── mapEnemy.tsx │ │ │ │ │ │ ├── select-game-mode │ │ │ │ │ │ │ ├── SelectGameMode.module.scss │ │ │ │ │ │ │ └── select-game-mode.tsx │ │ │ │ │ │ ├── ship-arrangement │ │ │ │ │ │ │ ├── ShipArrangement.module.scss │ │ │ │ │ │ │ ├── index.tsx │ │ │ │ │ │ │ ├── ship-arrangement.tsx │ │ │ │ │ │ │ └── shipGenerator.ts │ │ │ │ │ │ ├── timer │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ ├── timer.module.scss │ │ │ │ │ │ │ └── timer.tsx │ │ │ │ │ │ ├── verification-modal │ │ │ │ │ │ │ ├── VerificationModal.module.scss │ │ │ │ │ │ │ ├── index.tsx │ │ │ │ │ │ │ └── verification-modal.tsx │ │ │ │ │ │ ├── voucher-expired-modal │ │ │ │ │ │ │ ├── VoucherExpiredModal.module.scss │ │ │ │ │ │ │ ├── index.tsx │ │ │ │ │ │ │ └── voucher-expired-modal.tsx │ │ │ │ │ │ └── your-turn-modal │ │ │ │ │ │ │ ├── YourTurnModal.module.scss │ │ │ │ │ │ │ ├── index.tsx │ │ │ │ │ │ │ └── your-turn-modal.tsx │ │ │ │ │ ├── consts.ts │ │ │ │ │ ├── hooks.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── store.ts │ │ │ │ │ ├── types.ts │ │ │ │ │ └── utils.ts │ │ │ │ ├── multiplayer │ │ │ │ │ ├── assets │ │ │ │ │ │ └── icons │ │ │ │ │ │ │ └── filled-cross.svg │ │ │ │ │ ├── atoms.ts │ │ │ │ │ ├── components │ │ │ │ │ │ ├── create-game-form │ │ │ │ │ │ │ ├── CreateGameForm.module.scss │ │ │ │ │ │ │ ├── create-game-form.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── game-found-modal │ │ │ │ │ │ │ ├── GameFoundModal.module.scss │ │ │ │ │ │ │ ├── game-found-modal.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── join-game-form │ │ │ │ │ │ │ ├── JoinGameForm.module.scss │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ └── join-game-form.tsx │ │ │ │ │ │ ├── multiplayer │ │ │ │ │ │ │ ├── Multiplayer.module.scss │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ └── multiplayer.tsx │ │ │ │ │ │ └── registration │ │ │ │ │ │ │ ├── Registration.module.scss │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ └── registration.tsx │ │ │ │ │ ├── hooks │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── use-arrangement-with-multiplayer.tsx │ │ │ │ │ │ ├── use-multiplayer-game.ts │ │ │ │ │ │ └── use-process-with-multiplayer.tsx │ │ │ │ │ ├── sails │ │ │ │ │ │ ├── consts.ts │ │ │ │ │ │ ├── events │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ ├── use-event-game-cancelled.ts │ │ │ │ │ │ │ ├── use-event-game-end-subscription.ts │ │ │ │ │ │ │ ├── use-event-game-left.ts │ │ │ │ │ │ │ ├── use-event-move-made-subscription.ts │ │ │ │ │ │ │ ├── use-event-placement-verified.ts │ │ │ │ │ │ │ ├── use-event-player-deleted.ts │ │ │ │ │ │ │ └── use-event-player-joined-game.ts │ │ │ │ │ │ ├── messages │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ ├── use-cancel-game-message.ts │ │ │ │ │ │ │ ├── use-create-game-message.ts │ │ │ │ │ │ │ ├── use-delete-player-message.ts │ │ │ │ │ │ │ ├── use-join-game-message.ts │ │ │ │ │ │ │ ├── use-leave-game-message.ts │ │ │ │ │ │ │ ├── use-make-move-message.ts │ │ │ │ │ │ │ └── use-verify-placement-message.ts │ │ │ │ │ │ └── queries │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ ├── use-multi-game-query.ts │ │ │ │ │ │ │ └── use-remaining-time-query.ts │ │ │ │ │ └── utils.ts │ │ │ │ ├── singleplayer │ │ │ │ │ ├── atoms.ts │ │ │ │ │ ├── components │ │ │ │ │ │ └── singleplayer │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ └── singleplayer.tsx │ │ │ │ │ ├── consts.ts │ │ │ │ │ ├── hooks │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── use-arrangement-with-singleplayer.tsx │ │ │ │ │ │ ├── use-process-with-singleplayer.tsx │ │ │ │ │ │ └── use-singleplayer-game.ts │ │ │ │ │ └── sails │ │ │ │ │ │ ├── events │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── use-event-game-end-subscription.ts │ │ │ │ │ │ └── use-event-move-made-subscription.ts │ │ │ │ │ │ ├── messages │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── use-make-move-message.ts │ │ │ │ │ │ └── use-start-game-message.ts │ │ │ │ │ │ └── queries │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── use-remaining-time-query.ts │ │ │ │ │ │ └── use-single-game-query.ts │ │ │ │ ├── wallet │ │ │ │ │ ├── assets │ │ │ │ │ │ ├── images │ │ │ │ │ │ │ └── icons │ │ │ │ │ │ │ │ ├── ava-vara.svg │ │ │ │ │ │ │ │ ├── copy.svg │ │ │ │ │ │ │ │ ├── down.svg │ │ │ │ │ │ │ │ ├── edit.svg │ │ │ │ │ │ │ │ ├── enkrypt.svg │ │ │ │ │ │ │ │ ├── exit.svg │ │ │ │ │ │ │ │ ├── nova.svg │ │ │ │ │ │ │ │ ├── polkadot.svg │ │ │ │ │ │ │ │ ├── subwallet.svg │ │ │ │ │ │ │ │ └── talisman.svg │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── components │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── wallet-change │ │ │ │ │ │ │ ├── WalletChange.module.scss │ │ │ │ │ │ │ ├── WalletChange.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ └── wallet-connect │ │ │ │ │ │ │ ├── WalletConnect.module.scss │ │ │ │ │ │ │ ├── WalletConnect.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── consts.ts │ │ │ │ │ ├── hooks.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── types.ts │ │ │ │ └── zk │ │ │ │ │ ├── hooks │ │ │ │ │ ├── use-proof-ship-arrangement.ts │ │ │ │ │ ├── use-proof-ship-hit.ts │ │ │ │ │ └── use-ships.ts │ │ │ │ │ ├── types.ts │ │ │ │ │ └── utils │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── poseidon │ │ │ │ │ ├── index.js │ │ │ │ │ ├── poseidon.js │ │ │ │ │ └── poseidon_constants_opt.js │ │ │ │ │ └── utils.ts │ │ │ ├── global.d.ts │ │ │ ├── main.tsx │ │ │ ├── pages │ │ │ │ ├── game.module.scss │ │ │ │ ├── game.tsx │ │ │ │ ├── home.tsx │ │ │ │ ├── index.tsx │ │ │ │ ├── login.module.scss │ │ │ │ ├── login.tsx │ │ │ │ └── not-found.tsx │ │ │ └── vite-env.d.ts │ │ ├── tsconfig.json │ │ └── vite.config.ts │ ├── battleship │ │ ├── .env.example │ │ ├── Dockerfile │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── public │ │ │ ├── favicon.ico │ │ │ └── sprites │ │ │ │ └── icons.svg │ │ ├── src │ │ │ ├── app.scss │ │ │ ├── app.tsx │ │ │ ├── app │ │ │ │ ├── consts.ts │ │ │ │ ├── hocs │ │ │ │ │ └── index.tsx │ │ │ │ ├── hooks │ │ │ │ │ ├── api.ts │ │ │ │ │ └── index.ts │ │ │ │ └── utils.ts │ │ │ ├── assets │ │ │ │ ├── images │ │ │ │ │ ├── bg.png │ │ │ │ │ ├── fire.gif │ │ │ │ │ ├── icons │ │ │ │ │ │ ├── burger-menu.svg │ │ │ │ │ │ ├── caret-down.svg │ │ │ │ │ │ ├── chevron-down.svg │ │ │ │ │ │ ├── chevron-left.svg │ │ │ │ │ │ ├── chevron-right.svg │ │ │ │ │ │ ├── chevrons-left.svg │ │ │ │ │ │ ├── chevrons-right.svg │ │ │ │ │ │ ├── coin.svg │ │ │ │ │ │ ├── copy-decoded.svg │ │ │ │ │ │ ├── cross.svg │ │ │ │ │ │ ├── discord.svg │ │ │ │ │ │ ├── gear.svg │ │ │ │ │ │ ├── github.svg │ │ │ │ │ │ ├── medium.svg │ │ │ │ │ │ ├── search.svg │ │ │ │ │ │ ├── ship-x1.svg │ │ │ │ │ │ ├── ship-x2.svg │ │ │ │ │ │ ├── ship-x3.svg │ │ │ │ │ │ ├── ship-x4.svg │ │ │ │ │ │ ├── star.svg │ │ │ │ │ │ ├── twitter.svg │ │ │ │ │ │ └── vara-logo.svg │ │ │ │ │ ├── illustration-battleship.png │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── sea.png │ │ │ │ │ └── smoke.gif │ │ │ │ └── styles │ │ │ │ │ ├── _shared.scss │ │ │ │ │ ├── common.scss │ │ │ │ │ ├── index.scss │ │ │ │ │ └── utils │ │ │ │ │ ├── _breakpoints.scss │ │ │ │ │ ├── _index.scss │ │ │ │ │ ├── _mixins.scss │ │ │ │ │ └── _variables.scss │ │ │ ├── components │ │ │ │ ├── index.ts │ │ │ │ ├── layout │ │ │ │ │ ├── header │ │ │ │ │ │ ├── ModalBackground.tsx │ │ │ │ │ │ ├── account-info │ │ │ │ │ │ │ ├── account-info.module.scss │ │ │ │ │ │ │ ├── account-info.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── header.module.scss │ │ │ │ │ │ ├── header.tsx │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── logo │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ ├── logo.module.scss │ │ │ │ │ │ │ └── logo.tsx │ │ │ │ │ │ └── navigation │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ ├── navigation.module.scss │ │ │ │ │ │ │ └── navigation.tsx │ │ │ │ │ ├── index.ts │ │ │ │ │ └── not-found │ │ │ │ │ │ ├── assets │ │ │ │ │ │ └── images │ │ │ │ │ │ │ ├── 404.jpg │ │ │ │ │ │ │ └── 404.webp │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── not-found.module.scss │ │ │ │ │ │ └── not-found.tsx │ │ │ │ ├── loaders │ │ │ │ │ ├── api-loader │ │ │ │ │ │ ├── ApiLoader.module.scss │ │ │ │ │ │ ├── ApiLoader.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── loader │ │ │ │ │ │ ├── Loader.module.scss │ │ │ │ │ │ ├── Loader.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ └── loading-error │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── loading-error.module.scss │ │ │ │ │ │ └── loading-error.tsx │ │ │ │ └── ui │ │ │ │ │ ├── alert │ │ │ │ │ ├── alert.module.scss │ │ │ │ │ ├── alert.tsx │ │ │ │ │ ├── alert.types.ts │ │ │ │ │ └── index.ts │ │ │ │ │ ├── balance │ │ │ │ │ ├── Balance.module.scss │ │ │ │ │ ├── Balance.tsx │ │ │ │ │ └── index.ts │ │ │ │ │ ├── button │ │ │ │ │ ├── button.tsx │ │ │ │ │ ├── buttons.module.scss │ │ │ │ │ └── index.ts │ │ │ │ │ ├── container │ │ │ │ │ ├── container.module.scss │ │ │ │ │ ├── container.tsx │ │ │ │ │ └── index.ts │ │ │ │ │ ├── heading │ │ │ │ │ ├── Heading.module.scss │ │ │ │ │ ├── Heading.tsx │ │ │ │ │ └── index.ts │ │ │ │ │ ├── input │ │ │ │ │ ├── Input.module.scss │ │ │ │ │ ├── Input.tsx │ │ │ │ │ └── index.ts │ │ │ │ │ ├── modal │ │ │ │ │ ├── Modal.module.scss │ │ │ │ │ ├── Modal.tsx │ │ │ │ │ ├── Modal.variants.tsx │ │ │ │ │ ├── ModalBottom.tsx │ │ │ │ │ └── index.ts │ │ │ │ │ ├── scroll-area │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── scroll-area.module.scss │ │ │ │ │ └── scroll-area.tsx │ │ │ │ │ ├── sprite.tsx │ │ │ │ │ ├── text-gradient │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── text-gradient.module.scss │ │ │ │ │ └── text-gradient.tsx │ │ │ │ │ └── text │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── text.module.scss │ │ │ │ │ └── text.tsx │ │ │ ├── env.d.ts │ │ │ ├── features │ │ │ │ ├── game │ │ │ │ │ ├── assets │ │ │ │ │ │ ├── images │ │ │ │ │ │ │ └── ship.svg │ │ │ │ │ │ └── meta │ │ │ │ │ │ │ └── battleship.meta.txt │ │ │ │ │ ├── components │ │ │ │ │ │ ├── game-end-modal │ │ │ │ │ │ │ ├── GameEndModal.module.scss │ │ │ │ │ │ │ ├── game-end-modal.tsx │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── game-process │ │ │ │ │ │ │ ├── GameProcess.module.scss │ │ │ │ │ │ │ ├── game-process.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── map │ │ │ │ │ │ │ ├── index.tsx │ │ │ │ │ │ │ ├── map.module.scss │ │ │ │ │ │ │ ├── map.tsx │ │ │ │ │ │ │ └── mapEnemy.tsx │ │ │ │ │ │ └── ship-arrangement │ │ │ │ │ │ │ ├── ShipArrangement.module.scss │ │ │ │ │ │ │ ├── index.tsx │ │ │ │ │ │ │ ├── ship-arrangement.tsx │ │ │ │ │ │ │ └── shipGenerator.ts │ │ │ │ │ ├── hooks.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── store.ts │ │ │ │ │ ├── types.ts │ │ │ │ │ └── utils.ts │ │ │ │ └── wallet │ │ │ │ │ ├── assets │ │ │ │ │ ├── images │ │ │ │ │ │ └── icons │ │ │ │ │ │ │ ├── ava-vara.svg │ │ │ │ │ │ │ ├── copy.svg │ │ │ │ │ │ │ ├── down.svg │ │ │ │ │ │ │ ├── edit.svg │ │ │ │ │ │ │ ├── enkrypt.svg │ │ │ │ │ │ │ ├── exit.svg │ │ │ │ │ │ │ ├── nova.svg │ │ │ │ │ │ │ ├── polkadot.svg │ │ │ │ │ │ │ ├── subwallet.svg │ │ │ │ │ │ │ └── talisman.svg │ │ │ │ │ └── index.ts │ │ │ │ │ ├── components │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── wallet-change │ │ │ │ │ │ ├── WalletChange.module.scss │ │ │ │ │ │ ├── WalletChange.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ └── wallet-connect │ │ │ │ │ │ ├── WalletConnect.module.scss │ │ │ │ │ │ ├── WalletConnect.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── consts.ts │ │ │ │ │ ├── hooks.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── types.ts │ │ │ ├── global.d.ts │ │ │ ├── main.tsx │ │ │ ├── pages │ │ │ │ ├── game.module.scss │ │ │ │ ├── game.tsx │ │ │ │ ├── home.tsx │ │ │ │ ├── index.tsx │ │ │ │ ├── login.module.scss │ │ │ │ ├── login.tsx │ │ │ │ └── not-found.tsx │ │ │ └── vite-env.d.ts │ │ ├── tsconfig.json │ │ └── vite.config.ts │ ├── galactic-express │ │ ├── .env.example │ │ ├── Dockerfile │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── public │ │ │ └── favicon.ico │ │ ├── src │ │ │ ├── App.scss │ │ │ ├── App.tsx │ │ │ ├── app │ │ │ │ ├── hooks │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── use-execute-with-pending.ts │ │ │ │ │ ├── use-pending.ts │ │ │ │ │ └── use-sign-and-send.ts │ │ │ │ └── utils │ │ │ │ │ ├── index.ts │ │ │ │ │ └── sails │ │ │ │ │ ├── events │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── use-event-game-canceled-subscription.ts │ │ │ │ │ └── use-event-player-deleted-subscription.ts │ │ │ │ │ ├── galactic-express.idl │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── lib.ts │ │ │ │ │ ├── messages │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── use-cancel-game-message.ts │ │ │ │ │ ├── use-cancel-register-message.ts │ │ │ │ │ ├── use-create-new-session-message.ts │ │ │ │ │ ├── use-delete-player-message.ts │ │ │ │ │ ├── use-leave-game-message.ts │ │ │ │ │ ├── use-register-message.ts │ │ │ │ │ └── use-start-game-message.ts │ │ │ │ │ ├── queries │ │ │ │ │ ├── index.ts │ │ │ │ │ └── use-get-game-query.ts │ │ │ │ │ └── sails.tsx │ │ │ ├── assets │ │ │ │ ├── images │ │ │ │ │ ├── earth.gif │ │ │ │ │ ├── icons │ │ │ │ │ │ ├── binary-code.svg │ │ │ │ │ │ ├── consts.ts │ │ │ │ │ │ ├── cross-icon.svg │ │ │ │ │ │ ├── enkrypt-icon.svg │ │ │ │ │ │ ├── exit-icon.svg │ │ │ │ │ │ ├── gear.svg │ │ │ │ │ │ ├── ic-star-icon.svg │ │ │ │ │ │ ├── pen-edit-icon.svg │ │ │ │ │ │ ├── polkadot-js-icon.svg │ │ │ │ │ │ ├── sub-wallet-icon.svg │ │ │ │ │ │ ├── talisman-icon.svg │ │ │ │ │ │ ├── tvara-coin.svg │ │ │ │ │ │ ├── vara-coin-silver.png │ │ │ │ │ │ └── vara-coin.svg │ │ │ │ │ ├── logo-vara.svg │ │ │ │ │ ├── logo.svg │ │ │ │ │ └── socials │ │ │ │ │ │ ├── discord.svg │ │ │ │ │ │ ├── github.svg │ │ │ │ │ │ ├── medium.svg │ │ │ │ │ │ └── twitter.svg │ │ │ │ └── styles │ │ │ │ │ ├── _shared.scss │ │ │ │ │ └── index.scss │ │ │ ├── atoms.ts │ │ │ ├── components │ │ │ │ ├── index.ts │ │ │ │ ├── layout │ │ │ │ │ ├── TextField │ │ │ │ │ │ ├── TextField.interfaces.ts │ │ │ │ │ │ ├── TextField.module.scss │ │ │ │ │ │ ├── TextField.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── card │ │ │ │ │ │ ├── Card.module.scss │ │ │ │ │ │ ├── Card.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── container │ │ │ │ │ │ ├── Container.module.scss │ │ │ │ │ │ ├── Container.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── header │ │ │ │ │ │ ├── Header.module.scss │ │ │ │ │ │ ├── Header.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── modal │ │ │ │ │ │ ├── Modal.module.scss │ │ │ │ │ │ ├── Modal.tsx │ │ │ │ │ │ ├── Modal.variants.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ └── loaders │ │ │ │ │ ├── api-loader │ │ │ │ │ ├── ApiLoader.module.scss │ │ │ │ │ ├── ApiLoader.tsx │ │ │ │ │ └── index.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── loader │ │ │ │ │ ├── Loader.module.scss │ │ │ │ │ ├── Loader.tsx │ │ │ │ │ └── index.ts │ │ │ ├── consts.ts │ │ │ ├── features │ │ │ │ ├── session │ │ │ │ │ ├── assets │ │ │ │ │ │ ├── altitude.svg │ │ │ │ │ │ ├── check.svg │ │ │ │ │ │ ├── cross.svg │ │ │ │ │ │ ├── earth-crop.gif │ │ │ │ │ │ ├── error-icon.svg │ │ │ │ │ │ ├── fuel.svg │ │ │ │ │ │ ├── ic-user-small-24.svg │ │ │ │ │ │ ├── left-arrow.svg │ │ │ │ │ │ ├── left-double-arrow.svg │ │ │ │ │ │ ├── reward.svg │ │ │ │ │ │ ├── rocket.svg │ │ │ │ │ │ ├── wave.svg │ │ │ │ │ │ └── weather.svg │ │ │ │ │ ├── components │ │ │ │ │ │ ├── cancel-game-button │ │ │ │ │ │ │ ├── CancelGameButton.module.scss │ │ │ │ │ │ │ ├── CancelGameButton.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── form │ │ │ │ │ │ │ ├── Form.module.scss │ │ │ │ │ │ │ ├── Form.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── game-cancelled-modal │ │ │ │ │ │ │ ├── GameCancelledModal.scss │ │ │ │ │ │ │ ├── GameCancelledModal.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── game-found-modal │ │ │ │ │ │ │ ├── GameFoundModal.module.scss │ │ │ │ │ │ │ ├── GameFoundModal.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── game-not-found-modal │ │ │ │ │ │ │ ├── TextModal.module.scss │ │ │ │ │ │ │ ├── TextModal.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── participants-table │ │ │ │ │ │ │ ├── ParticipantsTable.module.scss │ │ │ │ │ │ │ ├── ParticipantsTable.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── probability │ │ │ │ │ │ │ ├── Probability.module.scss │ │ │ │ │ │ │ ├── Probability.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── radar │ │ │ │ │ │ │ ├── Radar.module.scss │ │ │ │ │ │ │ ├── Radar.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── range │ │ │ │ │ │ │ ├── Range.module.scss │ │ │ │ │ │ │ ├── Range.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── session-passed-info │ │ │ │ │ │ │ ├── SessionPassedInfo.module.scss │ │ │ │ │ │ │ ├── SessionPassedInfo.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── session │ │ │ │ │ │ │ ├── Session.module.scss │ │ │ │ │ │ │ ├── Session.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── start │ │ │ │ │ │ │ ├── Start.module.scss │ │ │ │ │ │ │ ├── Start.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── successfully-registered-info │ │ │ │ │ │ │ ├── SuccessfullyRegisteredInfo.module.scss │ │ │ │ │ │ │ ├── SuccessfullyRegisteredInfo.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── table │ │ │ │ │ │ │ ├── Table.module.scss │ │ │ │ │ │ │ ├── Table.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── traits │ │ │ │ │ │ │ ├── Traits.module.scss │ │ │ │ │ │ │ ├── Traits.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── warning │ │ │ │ │ │ │ ├── Warning.module.scss │ │ │ │ │ │ │ ├── Warning.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ └── win-status │ │ │ │ │ │ │ ├── WinStatus.module.scss │ │ │ │ │ │ │ ├── WinStatus.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── consts.ts │ │ │ │ │ ├── hooks.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── types.ts │ │ │ │ │ └── utils.ts │ │ │ │ └── welcome │ │ │ │ │ └── components │ │ │ │ │ ├── enter-contract-address │ │ │ │ │ ├── RequestGame.module.scss │ │ │ │ │ ├── RequestGame.tsx │ │ │ │ │ └── index.ts │ │ │ │ │ ├── game-intro │ │ │ │ │ ├── GameIntro.module.scss │ │ │ │ │ ├── GameIntro.tsx │ │ │ │ │ └── index.ts │ │ │ │ │ └── welcome │ │ │ │ │ ├── Welcome.module.scss │ │ │ │ │ ├── Welcome.tsx │ │ │ │ │ └── index.ts │ │ │ ├── hocs │ │ │ │ └── index.tsx │ │ │ ├── main.tsx │ │ │ ├── pages │ │ │ │ ├── home │ │ │ │ │ ├── Home.tsx │ │ │ │ │ └── index.ts │ │ │ │ └── index.tsx │ │ │ ├── types.ts │ │ │ ├── types │ │ │ │ └── index.ts │ │ │ ├── utils │ │ │ │ ├── _index.scss │ │ │ │ ├── index.ts │ │ │ │ └── styles │ │ │ │ │ ├── _breakpoints.scss │ │ │ │ │ ├── _index.scss │ │ │ │ │ └── _mixins.scss │ │ │ └── vite-env.d.ts │ │ ├── tsconfig.json │ │ └── vite.config.ts │ ├── nft-marketplace │ │ ├── .env.example │ │ ├── Dockerfile │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── public │ │ │ └── favicon.png │ │ ├── src │ │ │ ├── App.scss │ │ │ ├── App.tsx │ │ │ ├── app │ │ │ │ ├── hooks │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── use-execute-with-pendig.ts │ │ │ │ │ ├── use-pending.ts │ │ │ │ │ └── use-sign-and-send.ts │ │ │ │ └── utils │ │ │ │ │ ├── index.ts │ │ │ │ │ └── sails │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── messages │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── use-accept-offer-message.ts │ │ │ │ │ ├── use-add-bid-message.ts │ │ │ │ │ ├── use-add-market-data-message.ts │ │ │ │ │ ├── use-add-offer-message.ts │ │ │ │ │ ├── use-approve-message.ts │ │ │ │ │ ├── use-buy-item-message.ts │ │ │ │ │ ├── use-create-auction-message.ts │ │ │ │ │ ├── use-mint-message.ts │ │ │ │ │ └── use-settle-auction-message.ts │ │ │ │ │ ├── nft.idl │ │ │ │ │ ├── nft.ts │ │ │ │ │ ├── nft_marketplace.idl │ │ │ │ │ ├── nft_marketplace.ts │ │ │ │ │ ├── queries │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── use-get-market-query.ts │ │ │ │ │ ├── use-owner-of-query.ts │ │ │ │ │ ├── use-token-metadata-by-id-query.ts │ │ │ │ │ └── use-tokens-for-owner-query.ts │ │ │ │ │ └── sails.tsx │ │ │ ├── assets │ │ │ │ ├── images │ │ │ │ │ ├── bg.svg │ │ │ │ │ ├── form │ │ │ │ │ │ ├── minus.svg │ │ │ │ │ │ └── plus.svg │ │ │ │ │ ├── icons │ │ │ │ │ │ ├── gear.svg │ │ │ │ │ │ └── login.svg │ │ │ │ │ ├── logo.svg │ │ │ │ │ └── socials │ │ │ │ │ │ ├── discord.svg │ │ │ │ │ │ ├── github.svg │ │ │ │ │ │ ├── medium.svg │ │ │ │ │ │ └── twitter.svg │ │ │ │ └── styles │ │ │ │ │ ├── _shared.scss │ │ │ │ │ └── index.scss │ │ │ ├── components │ │ │ │ ├── index.ts │ │ │ │ ├── info-text │ │ │ │ │ ├── InfoText.module.scss │ │ │ │ │ ├── InfoText.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── layout │ │ │ │ │ ├── header │ │ │ │ │ │ ├── Header.module.scss │ │ │ │ │ │ ├── Header.tsx │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── logo │ │ │ │ │ │ │ ├── Logo.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ └── menu │ │ │ │ │ │ │ ├── Menu.module.scss │ │ │ │ │ │ │ ├── Menu.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── list │ │ │ │ │ │ ├── List.module.scss │ │ │ │ │ │ ├── List.tsx │ │ │ │ │ │ ├── filter │ │ │ │ │ │ ├── Filter.module.scss │ │ │ │ │ │ ├── Filter.tsx │ │ │ │ │ │ ├── button │ │ │ │ │ │ │ ├── Button.module.scss │ │ │ │ │ │ │ ├── Button.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── header │ │ │ │ │ │ ├── Header.module.scss │ │ │ │ │ │ ├── Header.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── nft │ │ │ │ │ │ ├── NFT.module.scss │ │ │ │ │ │ ├── NFT.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ ├── listing │ │ │ │ │ ├── Listing.module.scss │ │ │ │ │ ├── Listing.tsx │ │ │ │ │ ├── card │ │ │ │ │ │ ├── Card.module.scss │ │ │ │ │ │ ├── Card.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── offer │ │ │ │ │ │ ├── Offer.module.scss │ │ │ │ │ │ ├── Offer.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ ├── loaders │ │ │ │ │ ├── api-loader │ │ │ │ │ │ ├── ApiLoader.module.scss │ │ │ │ │ │ ├── ApiLoader.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── loader │ │ │ │ │ │ ├── Loader.module.scss │ │ │ │ │ │ ├── Loader.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ ├── modals │ │ │ │ │ ├── confirmation-modal │ │ │ │ │ │ ├── ConfirmationModal.module.scss │ │ │ │ │ │ ├── ConfirmationModal.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── index.module.scss │ │ │ │ │ ├── index.ts │ │ │ │ │ └── price-modal │ │ │ │ │ │ ├── PriceModal.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ └── on-login │ │ │ │ │ ├── OnLogin.tsx │ │ │ │ │ └── index.ts │ │ │ ├── consts.ts │ │ │ ├── context │ │ │ │ ├── IPFS.tsx │ │ │ │ └── index.tsx │ │ │ ├── hocs │ │ │ │ └── index.tsx │ │ │ ├── hooks │ │ │ │ ├── context.ts │ │ │ │ ├── index.ts │ │ │ │ ├── marketplace.ts │ │ │ │ └── merge-nft.ts │ │ │ ├── main.tsx │ │ │ ├── pages │ │ │ │ ├── create │ │ │ │ │ ├── Create.module.scss │ │ │ │ │ ├── Create.tsx │ │ │ │ │ ├── attributes │ │ │ │ │ │ ├── Attributes.module.scss │ │ │ │ │ │ ├── Attributes.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── index.tsx │ │ │ │ ├── listing │ │ │ │ │ ├── Listing.tsx │ │ │ │ │ ├── auction-listing │ │ │ │ │ │ ├── AuctionListing.module.scss │ │ │ │ │ │ ├── AuctionListing.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── owner-listing │ │ │ │ │ │ ├── OwnerListing.tsx │ │ │ │ │ │ ├── auction-modal │ │ │ │ │ │ │ ├── AuctionModal.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ └── index.ts │ │ │ │ │ └── sale-listing │ │ │ │ │ │ ├── SaleListing.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ ├── listings │ │ │ │ │ ├── Listings.tsx │ │ │ │ │ └── index.ts │ │ │ │ └── me │ │ │ │ │ ├── Me.tsx │ │ │ │ │ └── index.ts │ │ │ ├── types │ │ │ │ └── index.ts │ │ │ ├── utils │ │ │ │ ├── form.ts │ │ │ │ ├── index.ts │ │ │ │ └── nft.ts │ │ │ └── vite-env.d.ts │ │ ├── tsconfig.json │ │ └── vite.config.ts │ ├── nft-master │ │ ├── .env.example │ │ ├── Dockerfile │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── public │ │ │ ├── favicon.ico │ │ │ └── sprites │ │ │ │ └── icons.svg │ │ ├── src │ │ │ ├── app.scss │ │ │ ├── app.tsx │ │ │ ├── app │ │ │ │ ├── hooks │ │ │ │ │ └── use-is-app-ready.ts │ │ │ │ └── types.ts │ │ │ ├── assets │ │ │ │ ├── fonts │ │ │ │ │ ├── Anuphan-Bold.woff2 │ │ │ │ │ ├── Anuphan-ExtraLight.woff2 │ │ │ │ │ ├── Anuphan-Light.woff2 │ │ │ │ │ ├── Anuphan-Medium.woff2 │ │ │ │ │ ├── Anuphan-Regular.woff2 │ │ │ │ │ ├── Anuphan-SemiBold.woff2 │ │ │ │ │ ├── Anuphan-Thin.woff2 │ │ │ │ │ └── anuphan-variable.woff2 │ │ │ │ ├── images │ │ │ │ │ ├── bg.png │ │ │ │ │ ├── icons │ │ │ │ │ │ ├── caret-down.svg │ │ │ │ │ │ ├── chevron-down.svg │ │ │ │ │ │ ├── chevron-left.svg │ │ │ │ │ │ ├── chevron-right.svg │ │ │ │ │ │ ├── chevrons-left.svg │ │ │ │ │ │ ├── chevrons-right.svg │ │ │ │ │ │ ├── coin.svg │ │ │ │ │ │ ├── copy.svg │ │ │ │ │ │ ├── cross.svg │ │ │ │ │ │ ├── discord.svg │ │ │ │ │ │ ├── edit.svg │ │ │ │ │ │ ├── gear.svg │ │ │ │ │ │ ├── github.svg │ │ │ │ │ │ ├── login.svg │ │ │ │ │ │ ├── medium.svg │ │ │ │ │ │ ├── search.svg │ │ │ │ │ │ ├── star.svg │ │ │ │ │ │ ├── tvara-coin.svg │ │ │ │ │ │ ├── twitter.svg │ │ │ │ │ │ ├── vara-coin.svg │ │ │ │ │ │ └── vara-logo.svg │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── logo.svg │ │ │ │ │ ├── mobile-bg.png │ │ │ │ │ ├── socials │ │ │ │ │ │ ├── discord.svg │ │ │ │ │ │ ├── github.svg │ │ │ │ │ │ ├── medium.svg │ │ │ │ │ │ └── twitter.svg │ │ │ │ │ └── vara-logo.svg │ │ │ │ ├── master_nft.meta.txt │ │ │ │ └── styles │ │ │ │ │ └── index.scss │ │ │ ├── components │ │ │ │ ├── index.ts │ │ │ │ ├── layout │ │ │ │ │ ├── container │ │ │ │ │ │ ├── Container.module.scss │ │ │ │ │ │ ├── Container.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── header │ │ │ │ │ │ ├── Header.module.scss │ │ │ │ │ │ ├── Header.tsx │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── logo │ │ │ │ │ │ │ ├── Logo.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── main-layout.tsx │ │ │ │ ├── loaders │ │ │ │ │ ├── api-loader │ │ │ │ │ │ ├── ApiLoader.module.scss │ │ │ │ │ │ ├── ApiLoader.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── loader │ │ │ │ │ │ ├── Loader.module.scss │ │ │ │ │ │ ├── Loader.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ ├── modal │ │ │ │ │ ├── Modal.module.scss │ │ │ │ │ ├── Modal.tsx │ │ │ │ │ └── index.ts │ │ │ │ └── ui │ │ │ │ │ ├── alert │ │ │ │ │ ├── alert.module.scss │ │ │ │ │ ├── alert.tsx │ │ │ │ │ ├── alert.types.ts │ │ │ │ │ └── index.ts │ │ │ │ │ ├── balance │ │ │ │ │ ├── Balance.module.scss │ │ │ │ │ ├── Balance.tsx │ │ │ │ │ └── index.ts │ │ │ │ │ ├── button │ │ │ │ │ ├── button.tsx │ │ │ │ │ ├── buttons.module.scss │ │ │ │ │ └── index.ts │ │ │ │ │ ├── heading │ │ │ │ │ ├── Heading.module.scss │ │ │ │ │ ├── Heading.tsx │ │ │ │ │ └── index.ts │ │ │ │ │ ├── modal │ │ │ │ │ ├── Modal.module.scss │ │ │ │ │ ├── Modal.tsx │ │ │ │ │ └── index.ts │ │ │ │ │ ├── scroll-area │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── scroll-area.module.scss │ │ │ │ │ └── scroll-area.tsx │ │ │ │ │ ├── sprite.tsx │ │ │ │ │ ├── text-gradient │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── text-gradient.module.scss │ │ │ │ │ └── text-gradient.tsx │ │ │ │ │ └── text │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── text.module.scss │ │ │ │ │ └── text.tsx │ │ │ ├── consts.ts │ │ │ ├── features │ │ │ │ ├── auth │ │ │ │ │ ├── consts.ts │ │ │ │ │ ├── hooks.ts │ │ │ │ │ ├── types.ts │ │ │ │ │ └── utils.ts │ │ │ │ ├── available-balance │ │ │ │ │ ├── hooks.ts │ │ │ │ │ ├── store.ts │ │ │ │ │ └── types.ts │ │ │ │ ├── nfts │ │ │ │ │ ├── assets │ │ │ │ │ │ ├── arrow-left.svg │ │ │ │ │ │ ├── back-arrow.svg │ │ │ │ │ │ ├── badge.svg │ │ │ │ │ │ ├── bg-secondary.svg │ │ │ │ │ │ ├── bg.svg │ │ │ │ │ │ ├── placeholder.svg │ │ │ │ │ │ ├── reset.svg │ │ │ │ │ │ ├── search.svg │ │ │ │ │ │ ├── smoke.webp │ │ │ │ │ │ └── testnet-frame.svg │ │ │ │ │ ├── components │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── nft │ │ │ │ │ │ │ ├── NFT.module.scss │ │ │ │ │ │ │ ├── NFT.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── nfts │ │ │ │ │ │ │ ├── NFTs.module.scss │ │ │ │ │ │ │ ├── NFTs.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ └── search │ │ │ │ │ │ │ ├── Search.module.scss │ │ │ │ │ │ │ ├── Search.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── consts.ts │ │ │ │ │ ├── hooks.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── queries.ts │ │ │ │ │ └── types.ts │ │ │ │ ├── wallet │ │ │ │ │ ├── assets │ │ │ │ │ │ ├── images │ │ │ │ │ │ │ ├── enkrypt.svg │ │ │ │ │ │ │ ├── exit.svg │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ ├── nova.svg │ │ │ │ │ │ │ ├── polkadot.svg │ │ │ │ │ │ │ ├── subwallet.svg │ │ │ │ │ │ │ └── talisman.svg │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── components │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── wallet-item │ │ │ │ │ │ │ ├── WalletItem.module.scss │ │ │ │ │ │ │ ├── WalletItem.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── wallet-modal │ │ │ │ │ │ │ ├── WalletModal.module.scss │ │ │ │ │ │ │ ├── WalletModal.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ └── wallet │ │ │ │ │ │ │ ├── Wallet.module.scss │ │ │ │ │ │ │ ├── Wallet.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── consts.ts │ │ │ │ │ ├── hooks.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── types.ts │ │ │ │ └── welcome │ │ │ │ │ ├── Welcome.module.scss │ │ │ │ │ ├── Welcome.tsx │ │ │ │ │ └── index.ts │ │ │ ├── hocs │ │ │ │ └── index.tsx │ │ │ ├── hooks │ │ │ │ └── index.ts │ │ │ ├── main.tsx │ │ │ ├── pages │ │ │ │ ├── home │ │ │ │ │ ├── Home.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── index.tsx │ │ │ │ ├── nft │ │ │ │ │ ├── NFT.tsx │ │ │ │ │ └── index.ts │ │ │ │ └── not-found │ │ │ │ │ ├── assets │ │ │ │ │ └── images │ │ │ │ │ │ ├── 404.jpg │ │ │ │ │ │ └── 404.webp │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── not-found.module.scss │ │ │ │ │ └── not-found.tsx │ │ │ ├── types │ │ │ │ └── index.ts │ │ │ ├── utils │ │ │ │ ├── _index.scss │ │ │ │ ├── index.ts │ │ │ │ └── styles │ │ │ │ │ ├── _breakpoints.scss │ │ │ │ │ ├── _index.scss │ │ │ │ │ ├── _mixins.scss │ │ │ │ │ └── _variables.scss │ │ │ └── vite-env.d.ts │ │ ├── tsconfig.json │ │ └── vite.config.ts │ ├── non-fungible-token │ │ ├── .env.example │ │ ├── Dockerfile │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── public │ │ │ └── favicon.ico │ │ ├── src │ │ │ ├── App.scss │ │ │ ├── App.tsx │ │ │ ├── assets │ │ │ │ ├── images │ │ │ │ │ ├── bg.svg │ │ │ │ │ ├── form │ │ │ │ │ │ ├── minus.svg │ │ │ │ │ │ └── plus.svg │ │ │ │ │ ├── icons │ │ │ │ │ │ ├── gear.svg │ │ │ │ │ │ └── login.svg │ │ │ │ │ ├── logo.svg │ │ │ │ │ └── socials │ │ │ │ │ │ ├── discord.svg │ │ │ │ │ │ ├── github.svg │ │ │ │ │ │ ├── medium.svg │ │ │ │ │ │ └── twitter.svg │ │ │ │ ├── meta │ │ │ │ │ └── meta.txt │ │ │ │ ├── styles │ │ │ │ │ ├── _shared.scss │ │ │ │ │ └── index.scss │ │ │ │ └── wasm │ │ │ │ │ └── state.meta.wasm │ │ │ ├── components │ │ │ │ ├── index.ts │ │ │ │ ├── info-text │ │ │ │ │ ├── InfoText.module.scss │ │ │ │ │ ├── InfoText.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── layout │ │ │ │ │ ├── header │ │ │ │ │ │ ├── Header.module.scss │ │ │ │ │ │ ├── Header.tsx │ │ │ │ │ │ ├── create-link │ │ │ │ │ │ │ ├── CreateLink.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── logo │ │ │ │ │ │ │ ├── Logo.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── loaders │ │ │ │ │ ├── api-loader │ │ │ │ │ │ ├── ApiLoader.module.scss │ │ │ │ │ │ ├── ApiLoader.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── loader │ │ │ │ │ │ ├── Loader.module.scss │ │ │ │ │ │ ├── Loader.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ ├── modals │ │ │ │ │ ├── address-modal │ │ │ │ │ │ ├── AddressModal.module.scss │ │ │ │ │ │ ├── AddressModal.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── confirmation-modal │ │ │ │ │ │ ├── ConfirmationModal.module.scss │ │ │ │ │ │ ├── ConfirmationModal.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ └── index.ts │ │ │ │ └── on-login │ │ │ │ │ ├── OnLogin.tsx │ │ │ │ │ └── index.ts │ │ │ ├── consts.ts │ │ │ ├── context │ │ │ │ ├── IPFS.tsx │ │ │ │ └── index.ts │ │ │ ├── hocs │ │ │ │ └── index.tsx │ │ │ ├── hooks │ │ │ │ ├── api.ts │ │ │ │ ├── context.ts │ │ │ │ ├── index.ts │ │ │ │ └── useMetadata.ts │ │ │ ├── main.tsx │ │ │ ├── pages │ │ │ │ ├── create │ │ │ │ │ ├── Create.module.scss │ │ │ │ │ ├── Create.tsx │ │ │ │ │ ├── attributes │ │ │ │ │ │ ├── Attributes.module.scss │ │ │ │ │ │ ├── Attributes.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── home │ │ │ │ │ ├── Home.module.scss │ │ │ │ │ ├── Home.tsx │ │ │ │ │ ├── filter │ │ │ │ │ │ ├── Filter.module.scss │ │ │ │ │ │ ├── Filter.tsx │ │ │ │ │ │ ├── button │ │ │ │ │ │ │ ├── Button.module.scss │ │ │ │ │ │ │ ├── Button.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── nft │ │ │ │ │ │ ├── NFT.module.scss │ │ │ │ │ │ ├── NFT.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ ├── index.tsx │ │ │ │ └── nft │ │ │ │ │ ├── NFT.tsx │ │ │ │ │ ├── addresses │ │ │ │ │ ├── Addresses.module.scss │ │ │ │ │ ├── Addresses.tsx │ │ │ │ │ └── index.ts │ │ │ │ │ ├── attributes │ │ │ │ │ ├── Attributes.tsx │ │ │ │ │ └── index.ts │ │ │ │ │ ├── card │ │ │ │ │ ├── Card.module.scss │ │ │ │ │ ├── Card.tsx │ │ │ │ │ └── index.ts │ │ │ │ │ ├── content │ │ │ │ │ ├── Content.module.scss │ │ │ │ │ ├── Content.tsx │ │ │ │ │ └── index.ts │ │ │ │ │ └── index.ts │ │ │ ├── types │ │ │ │ └── index.ts │ │ │ ├── utils │ │ │ │ ├── form.ts │ │ │ │ └── index.ts │ │ │ └── vite-env.d.ts │ │ ├── tsconfig.json │ │ └── vite.config.ts │ ├── racing-car-game │ │ ├── .env.example │ │ ├── Dockerfile │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── public │ │ │ └── favicon.ico │ │ ├── src │ │ │ ├── App.module.scss │ │ │ ├── App.routes.tsx │ │ │ ├── App.tsx │ │ │ ├── app │ │ │ │ └── utils │ │ │ │ │ ├── index.ts │ │ │ │ │ └── sails │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── lib.ts │ │ │ │ │ └── sails.ts │ │ │ ├── assets │ │ │ │ └── icons │ │ │ │ │ ├── accelerate-icon.svg │ │ │ │ │ ├── arrow-filled-down-icon.svg │ │ │ │ │ ├── arrow-vector-left-icon.svg │ │ │ │ │ ├── arrow-vector-right-icon.svg │ │ │ │ │ ├── binary-code.svg │ │ │ │ │ ├── burger-menu-icon.svg │ │ │ │ │ ├── chevron-left.svg │ │ │ │ │ ├── chevron-right.svg │ │ │ │ │ ├── contract-car-icon.svg │ │ │ │ │ ├── cross-circle-icon.svg │ │ │ │ │ ├── cross-icon.svg │ │ │ │ │ ├── discord-icon.svg │ │ │ │ │ ├── double-vector-left.svg │ │ │ │ │ ├── double-vector-right.svg │ │ │ │ │ ├── enkrypt-icon.svg │ │ │ │ │ ├── exit-icon.svg │ │ │ │ │ ├── fire.gif │ │ │ │ │ ├── game-finish-icon-vertical.svg │ │ │ │ │ ├── game-finish-icon.svg │ │ │ │ │ ├── game-start-icon-vertical.svg │ │ │ │ │ ├── game-start-icon.svg │ │ │ │ │ ├── gear-logo-icon.svg │ │ │ │ │ ├── gear.svg │ │ │ │ │ ├── gif-smoke.gif │ │ │ │ │ ├── gif-speed.gif │ │ │ │ │ ├── git-icon.svg │ │ │ │ │ ├── green_coin.svg │ │ │ │ │ ├── ic-star-icon.svg │ │ │ │ │ ├── introdution-cars-img.png │ │ │ │ │ ├── introdution-cars-img.webp │ │ │ │ │ ├── logo-vara-black.svg │ │ │ │ │ ├── nova.svg │ │ │ │ │ ├── pen-edit-icon.svg │ │ │ │ │ ├── picture.png │ │ │ │ │ ├── play-icon.svg │ │ │ │ │ ├── player-car-icon.svg │ │ │ │ │ ├── polkadot-js-icon.svg │ │ │ │ │ ├── road-line-svg.svg │ │ │ │ │ ├── road-line-vertical.svg │ │ │ │ │ ├── search-icon.svg │ │ │ │ │ ├── section-end-line-vertical.svg │ │ │ │ │ ├── section-end-line.svg │ │ │ │ │ ├── select-arrow.svg │ │ │ │ │ ├── shoot-icon.svg │ │ │ │ │ ├── smoke.gif │ │ │ │ │ ├── sub-wallet-icon.svg │ │ │ │ │ ├── talisman-icon.svg │ │ │ │ │ ├── tvara-coin.svg │ │ │ │ │ ├── twitter-icon.png │ │ │ │ │ ├── twitter-icon.svg │ │ │ │ │ ├── vara-coin-silver.png │ │ │ │ │ ├── vara-coin.svg │ │ │ │ │ ├── vara-sign.svg │ │ │ │ │ ├── vector-left.svg │ │ │ │ │ ├── vector-right.svg │ │ │ │ │ ├── web-icon.svg │ │ │ │ │ └── your-rewards-icon.svg │ │ │ ├── components │ │ │ │ ├── ApiLoader │ │ │ │ │ ├── ApiLoader.module.scss │ │ │ │ │ ├── ApiLoader.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── BurgerMenu │ │ │ │ │ ├── BurgerMenu.interfaces.ts │ │ │ │ │ ├── BurgerMenu.module.scss │ │ │ │ │ └── BurgerMenu.tsx │ │ │ │ ├── Header │ │ │ │ │ ├── Header.module.scss │ │ │ │ │ ├── Header.tsx │ │ │ │ │ ├── index.ts │ │ │ │ │ └── logo │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── logo.module.scss │ │ │ │ │ │ └── logo.tsx │ │ │ │ ├── Loader │ │ │ │ │ ├── Loader.interface.ts │ │ │ │ │ ├── Loader.module.scss │ │ │ │ │ ├── Loader.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── Modal │ │ │ │ │ ├── Modal.interface.ts │ │ │ │ │ ├── Modal.module.scss │ │ │ │ │ ├── Modal.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ └── modal.variants.ts │ │ │ │ ├── ScrollArea │ │ │ │ │ ├── ScrollArea.module.scss │ │ │ │ │ ├── ScrollArea.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── Spinner │ │ │ │ │ ├── Spinner.interface.ts │ │ │ │ │ ├── Spinner.module.scss │ │ │ │ │ ├── Spinner.tsx │ │ │ │ │ └── index.ts │ │ │ │ └── index.ts │ │ │ ├── consts.ts │ │ │ ├── features │ │ │ │ ├── Auth │ │ │ │ │ ├── atoms.ts │ │ │ │ │ ├── components │ │ │ │ │ │ ├── ProtectedRoute │ │ │ │ │ │ │ ├── ProtectedRoute.interface.ts │ │ │ │ │ │ │ ├── ProtectedRoute.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── consts.ts │ │ │ │ │ ├── hooks.ts │ │ │ │ │ ├── types.ts │ │ │ │ │ └── utils.ts │ │ │ │ ├── Game │ │ │ │ │ ├── component │ │ │ │ │ │ ├── CanvasRoad │ │ │ │ │ │ │ ├── CanvasRoad.interface.ts │ │ │ │ │ │ │ ├── CanvasRoad.module.scss │ │ │ │ │ │ │ ├── CanvasRoad.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── CanvasRoadMobile │ │ │ │ │ │ │ ├── CanvasRoadMobile.interface.ts │ │ │ │ │ │ │ ├── CanvasRoadMobile.module.scss │ │ │ │ │ │ │ ├── CanvasRoadMobile.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── Heading │ │ │ │ │ │ │ ├── Heading.interface.ts │ │ │ │ │ │ │ ├── Heading.module.scss │ │ │ │ │ │ │ ├── Heading.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── Layout │ │ │ │ │ │ │ ├── Layout.module.scss │ │ │ │ │ │ │ ├── Layout.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── Road │ │ │ │ │ │ │ ├── Road.interface.ts │ │ │ │ │ │ │ ├── Road.module.scss │ │ │ │ │ │ │ ├── Road.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ └── index.ts │ │ │ │ │ └── sails │ │ │ │ │ │ ├── events │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── use-event-round-info-subscription.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── messages │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── use-player-move-message.ts │ │ │ │ │ │ └── use-start-game-message.ts │ │ │ │ │ │ └── queries │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── use-game-query.ts │ │ │ │ ├── Main │ │ │ │ │ └── components │ │ │ │ │ │ ├── Layout │ │ │ │ │ │ ├── Layout.module.scss │ │ │ │ │ │ ├── Layout.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── Welcome │ │ │ │ │ │ ├── Welcome.interface.ts │ │ │ │ │ │ ├── Welcome.module.scss │ │ │ │ │ │ ├── Welcome.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ └── index.ts │ │ │ │ └── Wallet │ │ │ │ │ ├── components │ │ │ │ │ ├── WalletInfo │ │ │ │ │ │ ├── WalletInfo.interfaces.ts │ │ │ │ │ │ ├── WalletInfo.module.scss │ │ │ │ │ │ ├── WalletInfo.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── WalletItem │ │ │ │ │ │ ├── WalletItem.interfaces.ts │ │ │ │ │ │ ├── WalletItem.module.scss │ │ │ │ │ │ ├── WalletItem.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── WalletModal │ │ │ │ │ │ ├── WalletModal.interface.ts │ │ │ │ │ │ ├── WalletModal.module.scss │ │ │ │ │ │ ├── WalletModal.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── account-icon.tsx │ │ │ │ │ └── index.ts │ │ │ │ │ ├── consts.ts │ │ │ │ │ ├── hooks.ts │ │ │ │ │ └── types.ts │ │ │ ├── hocs │ │ │ │ └── index.tsx │ │ │ ├── hooks.ts │ │ │ ├── main.tsx │ │ │ ├── pages │ │ │ │ ├── GamePage │ │ │ │ │ └── index.tsx │ │ │ │ ├── LoginPage │ │ │ │ │ └── index.tsx │ │ │ │ ├── MainPage │ │ │ │ │ └── index.tsx │ │ │ │ └── index.ts │ │ │ ├── styles │ │ │ │ ├── _mixins.scss │ │ │ │ ├── _resets.scss │ │ │ │ ├── _variables.scss │ │ │ │ └── global.scss │ │ │ ├── types.ts │ │ │ ├── ui │ │ │ │ ├── Alert │ │ │ │ │ ├── Alert.interfaces.ts │ │ │ │ │ ├── Alert.module.scss │ │ │ │ │ ├── Alert.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── Button │ │ │ │ │ ├── Button.interfaces.ts │ │ │ │ │ ├── Button.module.scss │ │ │ │ │ ├── Button.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── Input │ │ │ │ │ ├── Input.interfaces.ts │ │ │ │ │ ├── Input.module.scss │ │ │ │ │ ├── Input.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── Link │ │ │ │ │ ├── Link.interfaces.ts │ │ │ │ │ ├── Link.module.scss │ │ │ │ │ ├── Link.tsx │ │ │ │ │ └── index.ts │ │ │ │ └── index.ts │ │ │ ├── utils.ts │ │ │ └── vite-env.d.ts │ │ ├── tsconfig.json │ │ └── vite.config.ts │ ├── syndote │ │ ├── .env.example │ │ ├── Dockerfile │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── public │ │ │ └── favicon.ico │ │ ├── src │ │ │ ├── App.scss │ │ │ ├── App.tsx │ │ │ ├── app │ │ │ │ ├── hooks │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── use-execute-with-pendig.ts │ │ │ │ │ ├── use-pending.ts │ │ │ │ │ └── use-sign-and-send.ts │ │ │ │ └── utils │ │ │ │ │ ├── index.ts │ │ │ │ │ └── sails │ │ │ │ │ ├── events │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── use-event-game-canceled-subscription.ts │ │ │ │ │ └── use-event-step-subscription.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── messages │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── use-add-gas-to-player-strategy-message.ts │ │ │ │ │ ├── use-cancel-game-session-message.ts │ │ │ │ │ ├── use-create-game-session-message.ts │ │ │ │ │ ├── use-delete-game-message.ts │ │ │ │ │ ├── use-delete-player-message.ts │ │ │ │ │ ├── use-exit-game-message.ts │ │ │ │ │ ├── use-play-message.ts │ │ │ │ │ └── use-register-message.ts │ │ │ │ │ ├── queries │ │ │ │ │ ├── index.ts │ │ │ │ │ └── use-get-game-session-query.ts │ │ │ │ │ ├── sails.ts │ │ │ │ │ ├── syndote.idl │ │ │ │ │ ├── syndote.ts │ │ │ │ │ ├── syndote_player.idl │ │ │ │ │ └── syndote_player.ts │ │ │ ├── assets │ │ │ │ ├── fonts │ │ │ │ │ └── poiret-one-400.woff2 │ │ │ │ ├── images │ │ │ │ │ ├── bg.svg │ │ │ │ │ ├── buttons │ │ │ │ │ │ ├── last.svg │ │ │ │ │ │ ├── next.svg │ │ │ │ │ │ ├── pause.svg │ │ │ │ │ │ └── play.svg │ │ │ │ │ ├── icons │ │ │ │ │ │ ├── arrowLeft.svg │ │ │ │ │ │ ├── copy-text.svg │ │ │ │ │ │ ├── copy.svg │ │ │ │ │ │ ├── cross-icon.svg │ │ │ │ │ │ ├── gear.svg │ │ │ │ │ │ ├── grade.svg │ │ │ │ │ │ ├── ic-user-small-24.svg │ │ │ │ │ │ ├── login.svg │ │ │ │ │ │ ├── logo-vara.svg │ │ │ │ │ │ ├── logout.svg │ │ │ │ │ │ ├── plus.svg │ │ │ │ │ │ ├── remove-player.svg │ │ │ │ │ │ ├── tvara-coin.svg │ │ │ │ │ │ └── vara-coin.svg │ │ │ │ │ ├── logo.svg │ │ │ │ │ ├── logos │ │ │ │ │ │ ├── acala.svg │ │ │ │ │ │ ├── astar.svg │ │ │ │ │ │ ├── bifrost.svg │ │ │ │ │ │ ├── centrifuge.png │ │ │ │ │ │ ├── dock.svg │ │ │ │ │ │ ├── efinity.svg │ │ │ │ │ │ ├── error.svg │ │ │ │ │ │ ├── fire.svg │ │ │ │ │ │ ├── gas.svg │ │ │ │ │ │ ├── gear.svg │ │ │ │ │ │ ├── hack.svg │ │ │ │ │ │ ├── hydradx.png │ │ │ │ │ │ ├── i.png │ │ │ │ │ │ ├── interlay.svg │ │ │ │ │ │ ├── kilt.svg │ │ │ │ │ │ ├── kusama.svg │ │ │ │ │ │ ├── litentry.svg │ │ │ │ │ │ ├── m.svg │ │ │ │ │ │ ├── moonbeam.svg │ │ │ │ │ │ ├── nodle.svg │ │ │ │ │ │ ├── nova.svg │ │ │ │ │ │ ├── parallel.svg │ │ │ │ │ │ ├── phala.svg │ │ │ │ │ │ ├── polkadot.svg │ │ │ │ │ │ ├── polkadotjs.svg │ │ │ │ │ │ ├── rmrk.svg │ │ │ │ │ │ ├── robonomics.svg │ │ │ │ │ │ ├── subquery.svg │ │ │ │ │ │ ├── subsocial.svg │ │ │ │ │ │ ├── subsquid.png │ │ │ │ │ │ ├── subwallet.png │ │ │ │ │ │ ├── talisman.svg │ │ │ │ │ │ ├── unique.png │ │ │ │ │ │ └── vara.svg │ │ │ │ │ ├── socials │ │ │ │ │ │ ├── discord.svg │ │ │ │ │ │ ├── github.svg │ │ │ │ │ │ ├── medium.svg │ │ │ │ │ │ └── twitter.svg │ │ │ │ │ └── wallets │ │ │ │ │ │ ├── polkadot.svg │ │ │ │ │ │ ├── subwallet.svg │ │ │ │ │ │ └── talisman.svg │ │ │ │ ├── meta │ │ │ │ │ └── syndote_meta.txt │ │ │ │ └── styles │ │ │ │ │ ├── _animations.scss │ │ │ │ │ ├── _mixins.scss │ │ │ │ │ ├── _shared.scss │ │ │ │ │ ├── _variables.scss │ │ │ │ │ └── index.scss │ │ │ ├── atoms.ts │ │ │ ├── components │ │ │ │ ├── index.ts │ │ │ │ ├── layout │ │ │ │ │ ├── game-details │ │ │ │ │ │ ├── GameDetails.module.scss │ │ │ │ │ │ ├── GameDetails.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── header │ │ │ │ │ │ ├── Header.module.scss │ │ │ │ │ │ ├── Header.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── modal │ │ │ │ │ │ ├── Modal.module.scss │ │ │ │ │ │ ├── Modal.tsx │ │ │ │ │ │ ├── Modal.variants.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ └── text-field │ │ │ │ │ │ ├── TextField.interfaces.ts │ │ │ │ │ │ ├── TextField.module.scss │ │ │ │ │ │ ├── TextField.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ └── loaders │ │ │ │ │ ├── api-loader │ │ │ │ │ ├── ApiLoader.module.scss │ │ │ │ │ ├── ApiLoader.tsx │ │ │ │ │ └── index.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── loader │ │ │ │ │ ├── Loader.module.scss │ │ │ │ │ ├── Loader.tsx │ │ │ │ │ └── index.ts │ │ │ ├── consts.ts │ │ │ ├── hocs │ │ │ │ └── index.tsx │ │ │ ├── hooks │ │ │ │ ├── index.ts │ │ │ │ └── useQuitGame.ts │ │ │ ├── main.tsx │ │ │ ├── pages │ │ │ │ ├── home │ │ │ │ │ ├── Home.module.scss │ │ │ │ │ ├── Home.tsx │ │ │ │ │ ├── address │ │ │ │ │ │ ├── Address.module.scss │ │ │ │ │ │ ├── Address.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── button │ │ │ │ │ │ ├── Button.module.scss │ │ │ │ │ │ ├── Button.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── buttons │ │ │ │ │ │ ├── Buttons.module.scss │ │ │ │ │ │ ├── Buttons.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── cell │ │ │ │ │ │ ├── Cell.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── chip │ │ │ │ │ │ ├── Chip.module.scss │ │ │ │ │ │ ├── Chip.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── continue-game-modal │ │ │ │ │ │ ├── ContinueGameModal.module.scss │ │ │ │ │ │ ├── ContinueGameModal.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── game-finished-modal │ │ │ │ │ │ ├── GameFinishedModal.module.scss │ │ │ │ │ │ ├── GameFinishedModal.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── game-found-modal │ │ │ │ │ │ ├── GameFoundModal.module.scss │ │ │ │ │ │ ├── GameFoundModal.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── input │ │ │ │ │ │ ├── Input.module.scss │ │ │ │ │ │ ├── Input.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── player │ │ │ │ │ │ ├── Player.module.scss │ │ │ │ │ │ ├── Player.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── players │ │ │ │ │ │ ├── Players.module.scss │ │ │ │ │ │ ├── Players.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── reserve-modal │ │ │ │ │ │ ├── ReserveModal.module.scss │ │ │ │ │ │ ├── ReserveModal.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── roll │ │ │ │ │ │ ├── Roll.module.scss │ │ │ │ │ │ ├── Roll.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── session-info │ │ │ │ │ │ ├── SessionInfo.module.scss │ │ │ │ │ │ ├── SessionInfo.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── start │ │ │ │ │ │ ├── Start.module.scss │ │ │ │ │ │ ├── Start.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── text-modal │ │ │ │ │ │ ├── TextModal.module.scss │ │ │ │ │ │ ├── TextModal.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ └── vara-icon │ │ │ │ │ │ ├── VaraIcon.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ ├── index.tsx │ │ │ │ └── welcome │ │ │ │ │ └── components │ │ │ │ │ ├── create-game-form │ │ │ │ │ ├── CreateGameForm.module.scss │ │ │ │ │ ├── CreateGameForm.tsx │ │ │ │ │ └── index.ts │ │ │ │ │ ├── game-intro │ │ │ │ │ ├── GameIntro.module.scss │ │ │ │ │ ├── GameIntro.tsx │ │ │ │ │ └── index.ts │ │ │ │ │ ├── join-game-form │ │ │ │ │ ├── JoinGameForm.module.scss │ │ │ │ │ ├── JoinGameForm.tsx │ │ │ │ │ └── index.ts │ │ │ │ │ ├── request-game │ │ │ │ │ ├── RequestGame.module.scss │ │ │ │ │ ├── RequestGame.tsx │ │ │ │ │ └── index.ts │ │ │ │ │ └── welcome │ │ │ │ │ ├── Welcome.module.scss │ │ │ │ │ ├── Welcome.tsx │ │ │ │ │ └── index.ts │ │ │ ├── styles │ │ │ │ ├── _breakpoints.scss │ │ │ │ ├── _index.scss │ │ │ │ └── _mixins.scss │ │ │ ├── types.ts │ │ │ ├── utils.ts │ │ │ └── vite-env.d.ts │ │ ├── tsconfig.json │ │ └── vite.config.ts │ ├── tamagotchi-battle │ │ ├── .env.example │ │ ├── Dockerfile │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── postcss.config.cjs │ │ ├── public │ │ │ ├── favicon.ico │ │ │ ├── images │ │ │ │ └── avatar.svg │ │ │ └── sprites │ │ │ │ ├── icons.svg │ │ │ │ └── tamagotchi.svg │ │ ├── src │ │ │ ├── app.scss │ │ │ ├── app.tsx │ │ │ ├── app │ │ │ │ ├── consts.ts │ │ │ │ ├── hocs │ │ │ │ │ └── index.tsx │ │ │ │ ├── hooks │ │ │ │ │ └── api.ts │ │ │ │ ├── types.ts │ │ │ │ └── utils │ │ │ │ │ ├── form-validations.ts │ │ │ │ │ └── index.ts │ │ │ ├── assets │ │ │ │ ├── images │ │ │ │ │ └── cross.svg │ │ │ │ └── styles │ │ │ │ │ └── index.scss │ │ │ ├── components │ │ │ │ ├── layout │ │ │ │ │ ├── header │ │ │ │ │ │ ├── account │ │ │ │ │ │ │ ├── account.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── header.tsx │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── logo │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ └── logo.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── loaders │ │ │ │ │ ├── api-loader │ │ │ │ │ │ ├── ApiLoader.module.scss │ │ │ │ │ │ ├── ApiLoader.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ └── loader │ │ │ │ │ │ ├── Loader.module.scss │ │ │ │ │ │ ├── Loader.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ └── ui │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── scroll-area.tsx │ │ │ │ │ └── sprite-icon.tsx │ │ │ ├── features │ │ │ │ └── battle │ │ │ │ │ ├── assets │ │ │ │ │ └── meta │ │ │ │ │ │ └── battle.meta.txt │ │ │ │ │ ├── components │ │ │ │ │ ├── battle-players-queue │ │ │ │ │ │ ├── battle-players-queue.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── battle-round-info │ │ │ │ │ │ ├── battle-round-info.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── battle-round-players │ │ │ │ │ │ ├── battle-round-players.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── battle-round-stats-avatar │ │ │ │ │ │ ├── battle-round-stats-avatar.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── battle-round-stats │ │ │ │ │ │ ├── battle-round-stats.tsx │ │ │ │ │ │ ├── counter.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── battle-round │ │ │ │ │ │ ├── battle-round.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── battle-table-champions │ │ │ │ │ │ ├── battle-table-champions.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── battle-table-pairs │ │ │ │ │ │ ├── battle-table-pairs.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── battle-wait-admin │ │ │ │ │ │ ├── battle-wait-admin.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── battle-wait-registration │ │ │ │ │ │ ├── battle-wait-registration.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── battle-winner │ │ │ │ │ │ ├── battle-winner.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── create-tamagotchi-form │ │ │ │ │ │ ├── create-tamagotchi-form.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── new-game-button │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── new-game-button.tsx │ │ │ │ │ ├── tamagotchi-avatar │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── tamagotchi-avatar.tsx │ │ │ │ │ └── tamagotchi-queue-card │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── tamagotchi-queue-card.tsx │ │ │ │ │ ├── context.tsx │ │ │ │ │ ├── hooks │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── use-battle.ts │ │ │ │ │ ├── use-full-state.ts │ │ │ │ │ ├── use-media.ts │ │ │ │ │ └── use-ref-dimensions.ts │ │ │ │ │ ├── types │ │ │ │ │ ├── battles.ts │ │ │ │ │ ├── ft-store.ts │ │ │ │ │ └── tamagotchi.ts │ │ │ │ │ └── utils │ │ │ │ │ ├── get-tamagotchi-age.ts │ │ │ │ │ ├── get-tamagotchi-color.ts │ │ │ │ │ └── index.ts │ │ │ ├── index.css │ │ │ ├── main.tsx │ │ │ ├── pages │ │ │ │ ├── battle.tsx │ │ │ │ ├── home.tsx │ │ │ │ ├── index.tsx │ │ │ │ └── test.tsx │ │ │ └── vite-env.d.ts │ │ ├── tailwind.config.cjs │ │ ├── tsconfig.json │ │ └── vite.config.ts │ ├── tamagotchi │ │ ├── .env.example │ │ ├── Dockerfile │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── postcss.config.js │ │ ├── public │ │ │ ├── favicon.png │ │ │ ├── images │ │ │ │ └── avatar.svg │ │ │ └── sprites │ │ │ │ ├── icons.svg │ │ │ │ └── tamagotchi.svg │ │ ├── src │ │ │ ├── app.scss │ │ │ ├── app.tsx │ │ │ ├── app │ │ │ │ ├── consts.ts │ │ │ │ ├── context │ │ │ │ │ ├── ctx-app.tsx │ │ │ │ │ ├── ctx-lesson.tsx │ │ │ │ │ ├── ctx-tamagotchi.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── hocs │ │ │ │ │ └── index.tsx │ │ │ │ ├── hooks │ │ │ │ │ ├── use-lesson-5.ts │ │ │ │ │ ├── use-lessons.ts │ │ │ │ │ ├── use-metadata.ts │ │ │ │ │ ├── use-read-wasm-state.ts │ │ │ │ │ └── use-tamagotchi.ts │ │ │ │ ├── types │ │ │ │ │ ├── battles.ts │ │ │ │ │ ├── ft-store.ts │ │ │ │ │ ├── ft-wallet.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── lessons.ts │ │ │ │ │ └── tamagotchi.ts │ │ │ │ └── utils │ │ │ │ │ ├── form-validations.ts │ │ │ │ │ ├── get-lesson-assets.ts │ │ │ │ │ ├── get-tamagotchi-age.ts │ │ │ │ │ └── index.ts │ │ │ ├── assets │ │ │ │ ├── images │ │ │ │ │ ├── actions │ │ │ │ │ │ ├── lizard.svg │ │ │ │ │ │ ├── paper.svg │ │ │ │ │ │ ├── rock.svg │ │ │ │ │ │ ├── scissors.svg │ │ │ │ │ │ └── spock.svg │ │ │ │ │ ├── backgrounds │ │ │ │ │ │ ├── gearBG.svg │ │ │ │ │ │ └── lizard.svg │ │ │ │ │ ├── bg.svg │ │ │ │ │ ├── icons │ │ │ │ │ │ ├── back.svg │ │ │ │ │ │ ├── create.svg │ │ │ │ │ │ ├── gear.svg │ │ │ │ │ │ ├── id.svg │ │ │ │ │ │ └── medal.svg │ │ │ │ │ ├── logo.svg │ │ │ │ │ └── socials │ │ │ │ │ │ ├── discord.svg │ │ │ │ │ │ ├── github.svg │ │ │ │ │ │ ├── medium.svg │ │ │ │ │ │ └── twitter.svg │ │ │ │ ├── meta │ │ │ │ │ ├── ft_logic.meta.txt │ │ │ │ │ ├── ft_main.meta.txt │ │ │ │ │ ├── ft_storage.meta.txt │ │ │ │ │ ├── meta-battle.txt │ │ │ │ │ ├── meta-store.txt │ │ │ │ │ ├── meta1.txt │ │ │ │ │ ├── meta2.txt │ │ │ │ │ ├── meta3.txt │ │ │ │ │ ├── meta4.txt │ │ │ │ │ ├── meta5.txt │ │ │ │ │ ├── meta6.txt │ │ │ │ │ └── state2.meta.wasm │ │ │ │ └── styles │ │ │ │ │ ├── _shared.scss │ │ │ │ │ └── index.scss │ │ │ ├── components │ │ │ │ ├── forms │ │ │ │ │ ├── approve-account-form │ │ │ │ │ │ ├── approve-account-form.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── create-tamagotchi-form │ │ │ │ │ │ ├── create-tamagotchi-form.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ └── transfer-account-form │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── transfer-account-form.tsx │ │ │ │ ├── layout │ │ │ │ │ ├── header │ │ │ │ │ │ ├── header.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── loaders │ │ │ │ │ ├── api-loader │ │ │ │ │ │ ├── ApiLoader.module.scss │ │ │ │ │ │ ├── ApiLoader.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ └── loader │ │ │ │ │ │ ├── Loader.module.scss │ │ │ │ │ │ ├── Loader.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ ├── menus │ │ │ │ │ └── account-actions-menu │ │ │ │ │ │ ├── account-actions-menu.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ ├── popups │ │ │ │ │ ├── approve-account-popup │ │ │ │ │ │ ├── approve-account-popup.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── revoke-approval-popup │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── revoke-approval-popup.tsx │ │ │ │ │ └── transfer-account-popup │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── transfer-account-popup.tsx │ │ │ │ ├── sections │ │ │ │ │ └── home-create-section │ │ │ │ │ │ ├── home-create-section.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ ├── tamagotchi │ │ │ │ │ ├── tamagotchi-avatar │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── tamagotchi-avatar.tsx │ │ │ │ │ ├── tamagotchi-battle-info-card │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── tamagotchi-battle-info-card.tsx │ │ │ │ │ ├── tamagotchi-battle-top-stats │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── tamagotchi-battle-top-stats.tsx │ │ │ │ │ ├── tamagotchi-info-card-row │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── tamagotchi-info-card-row.tsx │ │ │ │ │ └── tamagotchi-info-card │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── tamagotchi-info-card.tsx │ │ │ │ └── ui │ │ │ │ │ └── sprite-icon.tsx │ │ │ ├── env.d.ts │ │ │ ├── global.css │ │ │ ├── global.d.ts │ │ │ ├── main.tsx │ │ │ ├── pages │ │ │ │ ├── home.tsx │ │ │ │ └── index.tsx │ │ │ └── vite-env.d.ts │ │ ├── tailwind.config.js │ │ ├── tsconfig.json │ │ └── vite.config.ts │ ├── tequila-train │ │ ├── .env.example │ │ ├── Dockerfile │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── postcss.config.cjs │ │ ├── public │ │ │ ├── favicon.ico │ │ │ ├── images │ │ │ │ ├── register.webp │ │ │ │ ├── winner-bg.svg │ │ │ │ └── winner.svg │ │ │ └── sprites │ │ │ │ ├── domino.svg │ │ │ │ └── icons.svg │ │ ├── src │ │ │ ├── App.scss │ │ │ ├── App.tsx │ │ │ ├── app │ │ │ │ ├── consts.ts │ │ │ │ ├── context │ │ │ │ │ ├── ctx-app.tsx │ │ │ │ │ ├── ctx-game.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── hocs │ │ │ │ │ └── index.tsx │ │ │ │ ├── hooks │ │ │ │ │ ├── use-game.ts │ │ │ │ │ ├── use-metadata.ts │ │ │ │ │ └── use-ref-dimensions.ts │ │ │ │ ├── types │ │ │ │ │ ├── game.ts │ │ │ │ │ └── index.ts │ │ │ │ └── utils │ │ │ │ │ └── index.ts │ │ │ ├── assets │ │ │ │ ├── images │ │ │ │ │ ├── cactus.png │ │ │ │ │ ├── icons │ │ │ │ │ │ └── gear.svg │ │ │ │ │ └── index.ts │ │ │ │ ├── meta │ │ │ │ │ ├── tequila_train.meta.txt │ │ │ │ │ └── tequila_train.opt.wasm │ │ │ │ └── styles │ │ │ │ │ ├── _mixins.scss │ │ │ │ │ ├── _resets.scss │ │ │ │ │ ├── _shared.scss │ │ │ │ │ ├── _variables.scss │ │ │ │ │ ├── global.scss │ │ │ │ │ └── index.scss │ │ │ ├── components │ │ │ │ ├── common │ │ │ │ │ ├── domino-item │ │ │ │ │ │ ├── domino-item.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── domino-zone │ │ │ │ │ │ ├── domino-zone.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── gas-wallet │ │ │ │ │ │ ├── gas-wallet.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── get-gas-balance │ │ │ │ │ │ ├── get-gas-balance.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── player-domino │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── player-domino.tsx │ │ │ │ │ └── player-train │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── player-train.tsx │ │ │ │ ├── layout │ │ │ │ │ ├── header │ │ │ │ │ │ ├── header.module.scss │ │ │ │ │ │ ├── header.tsx │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── logo │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ ├── logo.module.scss │ │ │ │ │ │ │ └── logo.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── loaders │ │ │ │ │ ├── api-loader │ │ │ │ │ │ ├── ApiLoader.module.scss │ │ │ │ │ │ ├── ApiLoader.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ └── loader │ │ │ │ │ │ ├── Loader.module.scss │ │ │ │ │ │ ├── Loader.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ ├── popups │ │ │ │ │ ├── popup-container.tsx │ │ │ │ │ ├── select-domino-popup │ │ │ │ │ │ ├── iindex.ts │ │ │ │ │ │ └── select-domino-popup.tsx │ │ │ │ │ └── winner-popup │ │ │ │ │ │ ├── iindex.ts │ │ │ │ │ │ └── winner-popup.tsx │ │ │ │ ├── sections │ │ │ │ │ ├── game-section │ │ │ │ │ │ ├── canceled-modal │ │ │ │ │ │ │ ├── canceled-modal.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── finished-modal │ │ │ │ │ │ │ ├── finished-modal.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── game-section.tsx │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── mock │ │ │ │ │ │ │ ├── mock-data.json │ │ │ │ │ │ │ └── mock-game-section.tsx │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── login-section │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── login-section.tsx │ │ │ │ │ ├── player-card-section │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── player-card-section.tsx │ │ │ │ │ ├── player-cons-section │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── player-cons-section.tsx │ │ │ │ │ ├── player-track-section │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── player-track-section.tsx │ │ │ │ │ │ └── timer.tsx │ │ │ │ │ ├── registration-section │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── modal │ │ │ │ │ │ │ ├── Modal.module.scss │ │ │ │ │ │ │ ├── Modal.tsx │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ └── modal.variants.ts │ │ │ │ │ │ ├── registration-form.tsx │ │ │ │ │ │ └── registration-section.tsx │ │ │ │ │ └── start-section │ │ │ │ │ │ ├── create-game.tsx │ │ │ │ │ │ ├── find-game.tsx │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── start-secrtion.module.scss │ │ │ │ │ │ └── start-section.tsx │ │ │ │ └── ui │ │ │ │ │ ├── Button │ │ │ │ │ ├── Button.interfaces.ts │ │ │ │ │ ├── Button.module.scss │ │ │ │ │ ├── Button.tsx │ │ │ │ │ └── index.ts │ │ │ │ │ ├── alert │ │ │ │ │ ├── alert.module.scss │ │ │ │ │ ├── alert.tsx │ │ │ │ │ ├── alert.types.ts │ │ │ │ │ └── index.ts │ │ │ │ │ ├── icon │ │ │ │ │ ├── icon.d.ts │ │ │ │ │ ├── icon.tsx │ │ │ │ │ └── index.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── modal │ │ │ │ │ ├── Modal.module.scss │ │ │ │ │ ├── Modal.tsx │ │ │ │ │ ├── index.ts │ │ │ │ │ └── modal.variants.ts │ │ │ │ │ ├── sprite.tsx │ │ │ │ │ └── text-gradient │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── text-gradient.module.scss │ │ │ │ │ └── text-gradient.tsx │ │ │ ├── index.css │ │ │ ├── main.tsx │ │ │ ├── pages │ │ │ │ ├── home.tsx │ │ │ │ └── index.tsx │ │ │ └── vite-env.d.ts │ │ ├── tailwind.config.cjs │ │ ├── tsconfig.json │ │ └── vite.config.ts │ ├── tic-tac-toe │ │ ├── .env.example │ │ ├── Dockerfile │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── public │ │ │ ├── favicons │ │ │ │ ├── android-chrome-192x192.png │ │ │ │ ├── android-chrome-512x512.png │ │ │ │ ├── apple-touch-icon.png │ │ │ │ ├── browserconfig.xml │ │ │ │ ├── favicon-16x16.png │ │ │ │ ├── favicon-32x32.png │ │ │ │ ├── favicon.ico │ │ │ │ ├── mstile-144x144.png │ │ │ │ ├── mstile-150x150.png │ │ │ │ ├── mstile-310x150.png │ │ │ │ ├── mstile-310x310.png │ │ │ │ ├── mstile-70x70.png │ │ │ │ ├── safari-pinned-tab.svg │ │ │ │ └── site.webmanifest │ │ │ └── sprites │ │ │ │ └── icons.svg │ │ ├── src │ │ │ ├── app.scss │ │ │ ├── app.tsx │ │ │ ├── app │ │ │ │ ├── consts.ts │ │ │ │ ├── hocs │ │ │ │ │ └── index.tsx │ │ │ │ ├── hooks │ │ │ │ │ └── use-is-app-ready.ts │ │ │ │ ├── types.ts │ │ │ │ └── utils │ │ │ │ │ ├── index.ts │ │ │ │ │ └── sails │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── lib.ts │ │ │ │ │ └── sails.tsx │ │ │ ├── assets │ │ │ │ ├── images │ │ │ │ │ ├── icons │ │ │ │ │ │ ├── burger-menu.svg │ │ │ │ │ │ ├── caret-down.svg │ │ │ │ │ │ ├── chevron-down.svg │ │ │ │ │ │ ├── chevron-left.svg │ │ │ │ │ │ ├── chevron-right.svg │ │ │ │ │ │ ├── chevrons-left.svg │ │ │ │ │ │ ├── chevrons-right.svg │ │ │ │ │ │ ├── cross.svg │ │ │ │ │ │ ├── discord.svg │ │ │ │ │ │ ├── gear-logo.svg │ │ │ │ │ │ ├── gear.svg │ │ │ │ │ │ ├── github.svg │ │ │ │ │ │ ├── medium.svg │ │ │ │ │ │ ├── search.svg │ │ │ │ │ │ ├── star.svg │ │ │ │ │ │ ├── tvara-coin.svg │ │ │ │ │ │ ├── twitter.svg │ │ │ │ │ │ ├── vara-coin.svg │ │ │ │ │ │ ├── vara-logo.svg │ │ │ │ │ │ └── vara-sign.svg │ │ │ │ │ └── index.ts │ │ │ │ └── styles │ │ │ │ │ ├── common.scss │ │ │ │ │ └── index.scss │ │ │ ├── components │ │ │ │ ├── index.ts │ │ │ │ ├── layout │ │ │ │ │ ├── header │ │ │ │ │ │ ├── header.module.scss │ │ │ │ │ │ ├── header.tsx │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── logo │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ ├── logo.module.scss │ │ │ │ │ │ │ └── logo.tsx │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── main-layout.tsx │ │ │ │ │ ├── not-authorized │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── not-authorized.module.scss │ │ │ │ │ │ └── not-authorized.tsx │ │ │ │ │ └── not-found │ │ │ │ │ │ ├── assets │ │ │ │ │ │ └── images │ │ │ │ │ │ │ ├── 404.jpg │ │ │ │ │ │ │ └── 404.webp │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── not-found.module.scss │ │ │ │ │ │ └── not-found.tsx │ │ │ │ ├── loaders │ │ │ │ │ ├── api-loader │ │ │ │ │ │ ├── ApiLoader.module.scss │ │ │ │ │ │ ├── ApiLoader.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── loader │ │ │ │ │ │ ├── Loader.module.scss │ │ │ │ │ │ ├── Loader.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ └── loading-error │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── loading-error.module.scss │ │ │ │ │ │ └── loading-error.tsx │ │ │ │ └── ui │ │ │ │ │ ├── alert │ │ │ │ │ ├── alert.module.scss │ │ │ │ │ ├── alert.tsx │ │ │ │ │ ├── alert.types.ts │ │ │ │ │ └── index.ts │ │ │ │ │ ├── balance │ │ │ │ │ ├── Balance.module.scss │ │ │ │ │ ├── Balance.tsx │ │ │ │ │ └── index.ts │ │ │ │ │ ├── button │ │ │ │ │ ├── button.tsx │ │ │ │ │ ├── buttons.module.scss │ │ │ │ │ └── index.ts │ │ │ │ │ ├── container │ │ │ │ │ ├── container.module.scss │ │ │ │ │ ├── container.tsx │ │ │ │ │ └── index.ts │ │ │ │ │ ├── heading │ │ │ │ │ ├── Heading.module.scss │ │ │ │ │ ├── Heading.tsx │ │ │ │ │ └── index.ts │ │ │ │ │ ├── modal │ │ │ │ │ ├── Modal.module.scss │ │ │ │ │ ├── Modal.tsx │ │ │ │ │ ├── index.ts │ │ │ │ │ └── modal.variants.ts │ │ │ │ │ ├── sprite.tsx │ │ │ │ │ ├── table │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── table.module.scss │ │ │ │ │ └── table.tsx │ │ │ │ │ ├── text-gradient │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── text-gradient.module.scss │ │ │ │ │ └── text-gradient.tsx │ │ │ │ │ └── text │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── text.module.scss │ │ │ │ │ └── text.tsx │ │ │ ├── env.d.ts │ │ │ ├── features │ │ │ │ ├── account-available-balance │ │ │ │ │ ├── consts.ts │ │ │ │ │ ├── hooks.ts │ │ │ │ │ └── types.ts │ │ │ │ ├── auth │ │ │ │ │ ├── consts.ts │ │ │ │ │ ├── hooks.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── types.ts │ │ │ │ │ └── utils.ts │ │ │ │ ├── tic-tac-toe │ │ │ │ │ ├── assets │ │ │ │ │ │ ├── images │ │ │ │ │ │ │ ├── icons │ │ │ │ │ │ │ │ ├── game-reward.svg │ │ │ │ │ │ │ │ ├── player-circle.svg │ │ │ │ │ │ │ │ └── player-cross.svg │ │ │ │ │ │ │ ├── welcome-bg.png │ │ │ │ │ │ │ └── welcome-bg.webp │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── components │ │ │ │ │ │ ├── game-cell │ │ │ │ │ │ │ ├── game-cell.module.scss │ │ │ │ │ │ │ ├── game-cell.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── game-countdown │ │ │ │ │ │ │ ├── game-countdown.module.scss │ │ │ │ │ │ │ ├── game-countdown.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── game-field │ │ │ │ │ │ │ ├── game-field.module.scss │ │ │ │ │ │ │ ├── game-field.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── game-info-player-mark │ │ │ │ │ │ │ ├── game-info-player-mark.module.scss │ │ │ │ │ │ │ ├── game-info-player-mark.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── game-mark │ │ │ │ │ │ │ ├── game-mark.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── game-skip-button │ │ │ │ │ │ │ ├── game-skip-button.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── game-start-button │ │ │ │ │ │ │ ├── game-start-button.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── game │ │ │ │ │ │ │ ├── game.module.scss │ │ │ │ │ │ │ ├── game.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── ui │ │ │ │ │ │ │ ├── columns │ │ │ │ │ │ │ │ ├── columns.module.scss │ │ │ │ │ │ │ │ ├── components │ │ │ │ │ │ │ │ │ ├── column-left.tsx │ │ │ │ │ │ │ │ │ ├── column-right.tsx │ │ │ │ │ │ │ │ │ └── columns-container.tsx │ │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ │ └── typography │ │ │ │ │ │ │ │ ├── help-description.tsx │ │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ │ └── typography.module.scss │ │ │ │ │ │ └── welcome │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ ├── welcome.module.scss │ │ │ │ │ │ │ └── welcome.tsx │ │ │ │ │ ├── hooks.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── sails │ │ │ │ │ │ ├── events │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ ├── use-event-game-finished-subscription.ts │ │ │ │ │ │ │ ├── use-event-game-start-subscription.ts │ │ │ │ │ │ │ └── use-event-move-made-subscription.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── messages │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ ├── use-skip-message.ts │ │ │ │ │ │ │ ├── use-start-game-message.ts │ │ │ │ │ │ │ └── use-turn-message.ts │ │ │ │ │ │ └── queries │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ ├── use-config-query.ts │ │ │ │ │ │ │ └── use-game-query.ts │ │ │ │ │ ├── store.ts │ │ │ │ │ ├── types.ts │ │ │ │ │ ├── utils.ts │ │ │ │ │ └── variants.ts │ │ │ │ └── wallet │ │ │ │ │ ├── assets │ │ │ │ │ ├── images │ │ │ │ │ │ └── icons │ │ │ │ │ │ │ ├── copy.svg │ │ │ │ │ │ │ ├── edit.svg │ │ │ │ │ │ │ ├── enkrypt.svg │ │ │ │ │ │ │ ├── exit.svg │ │ │ │ │ │ │ ├── nova.svg │ │ │ │ │ │ │ ├── polkadot.svg │ │ │ │ │ │ │ ├── subwallet.svg │ │ │ │ │ │ │ └── talisman.svg │ │ │ │ │ └── index.ts │ │ │ │ │ ├── consts.ts │ │ │ │ │ ├── hooks.ts │ │ │ │ │ └── types.ts │ │ │ ├── global.d.ts │ │ │ ├── main.tsx │ │ │ ├── pages │ │ │ │ ├── home.tsx │ │ │ │ ├── index.tsx │ │ │ │ ├── not-authorized.tsx │ │ │ │ └── not-found.tsx │ │ │ ├── utils │ │ │ │ ├── _breakpoints.scss │ │ │ │ ├── _index.scss │ │ │ │ ├── _mixins.scss │ │ │ │ └── _variables.scss │ │ │ └── vite-env.d.ts │ │ ├── tsconfig.json │ │ └── vite.config.ts │ ├── vara-man │ │ ├── .env.example │ │ ├── Dockerfile │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── postcss.config.js │ │ ├── public │ │ │ ├── cloak.svg │ │ │ ├── favicon.ico │ │ │ ├── sprites │ │ │ │ ├── icons.svg │ │ │ │ └── tamagotchi.svg │ │ │ ├── tiles.png │ │ │ └── vara-logo.png │ │ ├── src │ │ │ ├── app.scss │ │ │ ├── app.tsx │ │ │ ├── app │ │ │ │ ├── consts.ts │ │ │ │ ├── context │ │ │ │ │ ├── ctx-app.tsx │ │ │ │ │ └── ctx-game.tsx │ │ │ │ ├── hocs │ │ │ │ │ └── index.tsx │ │ │ │ ├── hooks │ │ │ │ │ ├── use-init-game.tsx │ │ │ │ │ └── use-sign-and-send.ts │ │ │ │ ├── types │ │ │ │ │ ├── game.ts │ │ │ │ │ └── index.ts │ │ │ │ └── utils │ │ │ │ │ ├── _index.scss │ │ │ │ │ ├── form-validations.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── sails │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── lib.ts │ │ │ │ │ ├── messages │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── use-cancel-register-message.ts │ │ │ │ │ │ ├── use-cancel-tournament-message.ts │ │ │ │ │ │ ├── use-change-status-message.ts │ │ │ │ │ │ ├── use-create-new-tournament-message.ts │ │ │ │ │ │ ├── use-delete-player-message.ts │ │ │ │ │ │ ├── use-finish-single-game-message.ts │ │ │ │ │ │ ├── use-leave-game-message.ts │ │ │ │ │ │ ├── use-record-tournament-result-message.ts │ │ │ │ │ │ ├── use-register-for-tournament-message.ts │ │ │ │ │ │ └── use-start-tournament-message.ts │ │ │ │ │ ├── queries │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── use-admins-query.ts │ │ │ │ │ │ ├── use-all-query.ts │ │ │ │ │ │ ├── use-config-query.ts │ │ │ │ │ │ └── use-tournament-query.ts │ │ │ │ │ └── sails.ts │ │ │ │ │ └── styles │ │ │ │ │ ├── _breakpoints.scss │ │ │ │ │ ├── _index.scss │ │ │ │ │ ├── _mixins.scss │ │ │ │ │ └── _variables.scss │ │ │ ├── assets │ │ │ │ ├── fonts │ │ │ │ │ └── kanit-250.woff2 │ │ │ │ ├── images │ │ │ │ │ ├── background.jpg │ │ │ │ │ ├── border.png │ │ │ │ │ ├── champions │ │ │ │ │ │ └── avarar.svg │ │ │ │ │ ├── game │ │ │ │ │ │ ├── animations.gif │ │ │ │ │ │ ├── claim-modal │ │ │ │ │ │ │ ├── avatar.png │ │ │ │ │ │ │ ├── modal.svg │ │ │ │ │ │ │ └── total-coins.svg │ │ │ │ │ │ ├── ghost.png │ │ │ │ │ │ ├── gold_coin.svg │ │ │ │ │ │ ├── map.png │ │ │ │ │ │ ├── silver_coin.svg │ │ │ │ │ │ ├── stats-hero.svg │ │ │ │ │ │ ├── tamagochi.svg │ │ │ │ │ │ └── zombie.svg │ │ │ │ │ ├── icons │ │ │ │ │ │ ├── copy.svg │ │ │ │ │ │ ├── cross.svg │ │ │ │ │ │ ├── edit.svg │ │ │ │ │ │ └── search.svg │ │ │ │ │ ├── intro-clock.png │ │ │ │ │ ├── intro-map.webp │ │ │ │ │ ├── intro-smoke.webp │ │ │ │ │ ├── levels │ │ │ │ │ │ ├── bg1.jpg │ │ │ │ │ │ ├── bg2.jpg │ │ │ │ │ │ ├── bg3.jpg │ │ │ │ │ │ ├── easy-t.svg │ │ │ │ │ │ ├── hard-t.svg │ │ │ │ │ │ ├── medium-t.svg │ │ │ │ │ │ ├── tab-1-active.png │ │ │ │ │ │ ├── tab-1.png │ │ │ │ │ │ ├── tab-2-active.png │ │ │ │ │ │ ├── tab-2.png │ │ │ │ │ │ ├── tab-3-active.png │ │ │ │ │ │ └── tab-3.png │ │ │ │ │ ├── logo.svg │ │ │ │ │ ├── rules │ │ │ │ │ │ ├── rules-1.webp │ │ │ │ │ │ ├── rules-2.webp │ │ │ │ │ │ └── rules-3.webp │ │ │ │ │ ├── wallet │ │ │ │ │ │ ├── enkrypt.svg │ │ │ │ │ │ ├── exit.svg │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── polkadot.svg │ │ │ │ │ │ ├── subwallet.svg │ │ │ │ │ │ └── talisman.svg │ │ │ │ │ └── welcome.png │ │ │ │ └── styles │ │ │ │ │ ├── _shared.scss │ │ │ │ │ └── utils │ │ │ │ │ ├── _breakpoints.scss │ │ │ │ │ ├── _index.scss │ │ │ │ │ ├── _mixins.scss │ │ │ │ │ └── _variables.scss │ │ │ ├── components │ │ │ │ ├── index.ts │ │ │ │ ├── layout │ │ │ │ │ ├── header │ │ │ │ │ │ ├── Header.module.scss │ │ │ │ │ │ ├── header-admin.tsx │ │ │ │ │ │ ├── header.tsx │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── logo │ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ │ ├── logo.module.scss │ │ │ │ │ │ │ └── logo.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── loaders │ │ │ │ │ ├── api-loader │ │ │ │ │ │ ├── ApiLoader.module.scss │ │ │ │ │ │ ├── ApiLoader.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ └── loader │ │ │ │ │ │ ├── Loader.module.scss │ │ │ │ │ │ ├── Loader.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ ├── sections │ │ │ │ │ ├── home │ │ │ │ │ │ ├── home-background.tsx │ │ │ │ │ │ ├── home-form-gradient.tsx │ │ │ │ │ │ ├── home-not-active.tsx │ │ │ │ │ │ └── home-register.tsx │ │ │ │ │ ├── levels │ │ │ │ │ │ └── levels-select-mode.tsx │ │ │ │ │ └── tournament │ │ │ │ │ │ ├── tournament-create.tsx │ │ │ │ │ │ └── tournament-find.tsx │ │ │ │ └── ui │ │ │ │ │ ├── alert │ │ │ │ │ ├── alert.module.scss │ │ │ │ │ ├── alert.tsx │ │ │ │ │ ├── alert.types.ts │ │ │ │ │ └── index.ts │ │ │ │ │ ├── button │ │ │ │ │ ├── button.tsx │ │ │ │ │ ├── buttons.module.scss │ │ │ │ │ └── index.ts │ │ │ │ │ ├── icons.tsx │ │ │ │ │ ├── modal │ │ │ │ │ ├── Modal.module.scss │ │ │ │ │ ├── Modal.tsx │ │ │ │ │ ├── index.ts │ │ │ │ │ └── modal2.tsx │ │ │ │ │ ├── sprite-icon.tsx │ │ │ │ │ └── tabs.tsx │ │ │ ├── env.d.ts │ │ │ ├── feature │ │ │ │ ├── game │ │ │ │ │ ├── assets │ │ │ │ │ │ ├── icons │ │ │ │ │ │ │ ├── button-down.svg │ │ │ │ │ │ │ ├── button-left.svg │ │ │ │ │ │ │ ├── button-right.svg │ │ │ │ │ │ │ └── button-up.svg │ │ │ │ │ │ ├── images │ │ │ │ │ │ │ ├── move-control.png │ │ │ │ │ │ │ └── move-shift.png │ │ │ │ │ │ └── map │ │ │ │ │ │ │ ├── map-easy.json │ │ │ │ │ │ │ ├── map-hard.json │ │ │ │ │ │ │ ├── map-medium.json │ │ │ │ │ │ │ └── tiles.png │ │ │ │ │ ├── components │ │ │ │ │ │ ├── game-canvas │ │ │ │ │ │ │ └── game-canvas.tsx │ │ │ │ │ │ └── mobile-controller │ │ │ │ │ │ │ └── mobile-controller.tsx │ │ │ │ │ ├── consts.ts │ │ │ │ │ ├── models │ │ │ │ │ │ ├── Character.ts │ │ │ │ │ │ ├── Enemy.ts │ │ │ │ │ │ ├── EnemyWithVision.ts │ │ │ │ │ │ ├── Game.ts │ │ │ │ │ │ ├── Vec2.ts │ │ │ │ │ │ └── renders │ │ │ │ │ │ │ ├── CharacterRenderer.ts │ │ │ │ │ │ │ ├── EnemyRenderer.ts │ │ │ │ │ │ │ └── MapRenderer.ts │ │ │ │ │ ├── types.ts │ │ │ │ │ └── utils │ │ │ │ │ │ ├── calculatePoints.ts │ │ │ │ │ │ ├── findCharacterStartPosition.ts │ │ │ │ │ │ ├── findEnemyStartPositions.ts │ │ │ │ │ │ └── findMapLevel.ts │ │ │ │ ├── single-game │ │ │ │ │ ├── Game.tsx │ │ │ │ │ ├── GameLayout.tsx │ │ │ │ │ ├── components │ │ │ │ │ │ ├── modals │ │ │ │ │ │ │ └── game-over.tsx │ │ │ │ │ │ └── timer │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ └── index.tsx │ │ │ │ └── tournament-game │ │ │ │ │ ├── Game.tsx │ │ │ │ │ ├── GameLayout.tsx │ │ │ │ │ ├── components │ │ │ │ │ ├── game-canvas │ │ │ │ │ │ └── game-canvas.tsx │ │ │ │ │ ├── game-players │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── modals │ │ │ │ │ │ ├── confirm-cancel.tsx │ │ │ │ │ │ ├── game-canceled.tsx │ │ │ │ │ │ ├── game-find.tsx │ │ │ │ │ │ ├── game-not-found.tsx │ │ │ │ │ │ ├── game-over.tsx │ │ │ │ │ │ └── game-play-again.tsx │ │ │ │ │ ├── registration │ │ │ │ │ │ └── index.tsx │ │ │ │ │ └── timer │ │ │ │ │ │ └── index.tsx │ │ │ │ │ └── index.tsx │ │ │ ├── global.css │ │ │ ├── global.d.ts │ │ │ ├── hooks │ │ │ │ ├── use-mobile-device.ts │ │ │ │ └── use-on-screen.tsx │ │ │ ├── main.tsx │ │ │ ├── pages │ │ │ │ ├── game.tsx │ │ │ │ ├── home.tsx │ │ │ │ ├── index.tsx │ │ │ │ ├── levels.tsx │ │ │ │ ├── rules.tsx │ │ │ │ └── tournament │ │ │ │ │ ├── create.tsx │ │ │ │ │ └── find.tsx │ │ │ ├── types │ │ │ │ └── index.ts │ │ │ └── vite-env.d.ts │ │ ├── tailwind.config.js │ │ ├── tsconfig.json │ │ └── vite.config.ts │ ├── varatube │ │ ├── .env.example │ │ ├── Dockerfile │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── public │ │ │ └── favicon.ico │ │ ├── src │ │ │ ├── App.scss │ │ │ ├── App.tsx │ │ │ ├── app │ │ │ │ └── utils │ │ │ │ │ ├── index.ts │ │ │ │ │ └── sails │ │ │ │ │ ├── extended_vft.idl │ │ │ │ │ ├── extended_vft.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── messages │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── use-approve-message.ts │ │ │ │ │ ├── use-cancel-register-message.ts │ │ │ │ │ └── use-register-subscription-message.ts │ │ │ │ │ ├── queries │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── use-balance-of-query.ts │ │ │ │ │ ├── use-currencies-query.ts │ │ │ │ │ └── use-get-subscriber-query.ts │ │ │ │ │ ├── sails.ts │ │ │ │ │ ├── varatube.idl │ │ │ │ │ └── varatube.ts │ │ │ ├── assets │ │ │ │ ├── images │ │ │ │ │ ├── green-shadow.png │ │ │ │ │ ├── icons │ │ │ │ │ │ ├── arrow.svg │ │ │ │ │ │ ├── copy.svg │ │ │ │ │ │ ├── gear.svg │ │ │ │ │ │ ├── login.svg │ │ │ │ │ │ ├── logout.svg │ │ │ │ │ │ └── plus.svg │ │ │ │ │ ├── logo.png │ │ │ │ │ ├── pic.png │ │ │ │ │ └── shadow.svg │ │ │ │ └── styles │ │ │ │ │ ├── _shared.scss │ │ │ │ │ └── index.scss │ │ │ ├── components │ │ │ │ ├── index.ts │ │ │ │ ├── layout │ │ │ │ │ ├── header │ │ │ │ │ │ ├── Header.module.scss │ │ │ │ │ │ ├── Header.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── heading │ │ │ │ │ │ ├── Heading.module.scss │ │ │ │ │ │ ├── Heading.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── on-login │ │ │ │ │ │ ├── OnLogin.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ ├── loaders │ │ │ │ │ ├── api-loader │ │ │ │ │ │ ├── ApiLoader.module.scss │ │ │ │ │ │ ├── ApiLoader.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── loader │ │ │ │ │ │ ├── Loader.module.scss │ │ │ │ │ │ ├── Loader.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ └── modals │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── purchase-subscription-approve-modal │ │ │ │ │ ├── PurchaseSubscriptionApproveModal.module.scss │ │ │ │ │ ├── PurchaseSubscriptionApproveModal.tsx │ │ │ │ │ └── index.ts │ │ │ │ │ └── purchase-subscription-modal │ │ │ │ │ ├── PurchaseSubscriptionModal.module.scss │ │ │ │ │ ├── PurchaseSubscriptionModal.tsx │ │ │ │ │ └── index.ts │ │ │ ├── consts.ts │ │ │ ├── hocs │ │ │ │ └── index.tsx │ │ │ ├── hooks │ │ │ │ ├── index.ts │ │ │ │ └── use-sign-and-send.ts │ │ │ ├── main.tsx │ │ │ ├── pages │ │ │ │ ├── index.tsx │ │ │ │ ├── subscription │ │ │ │ │ ├── Subscription.module.scss │ │ │ │ │ ├── Subscription.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── video │ │ │ │ │ ├── Video.module.scss │ │ │ │ │ ├── Video.tsx │ │ │ │ │ └── index.ts │ │ │ │ └── videos │ │ │ │ │ ├── Videos.module.scss │ │ │ │ │ ├── Videos.tsx │ │ │ │ │ └── index.ts │ │ │ ├── types.ts │ │ │ └── vite-env.d.ts │ │ ├── tsconfig.json │ │ └── vite.config.ts │ ├── w3bstreaming │ │ ├── .env.example │ │ ├── Dockerfile │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── public │ │ │ └── favicon.ico │ │ ├── src │ │ │ ├── App.module.scss │ │ │ ├── App.routes.tsx │ │ │ ├── App.tsx │ │ │ ├── app │ │ │ │ ├── hooks │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── use-execute-with-pendig.ts │ │ │ │ │ ├── use-pending.ts │ │ │ │ │ └── use-sign-and-send.ts │ │ │ │ └── utils │ │ │ │ │ ├── index.ts │ │ │ │ │ └── sails │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── lib.ts │ │ │ │ │ ├── messages │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── use-edit-profile-message.ts │ │ │ │ │ ├── use-new-stream-message.ts │ │ │ │ │ ├── use-subscribe-message.ts │ │ │ │ │ └── use-unsubscribe-message.ts │ │ │ │ │ ├── queries │ │ │ │ │ ├── index.ts │ │ │ │ │ └── use-get-state-query.ts │ │ │ │ │ ├── sails.tsx │ │ │ │ │ └── w3bstreaming.idl │ │ │ ├── assets │ │ │ │ ├── icons │ │ │ │ │ ├── about-card-1.png │ │ │ │ │ ├── about-card-2.png │ │ │ │ │ ├── about-card-3.png │ │ │ │ │ ├── about-card-4.png │ │ │ │ │ ├── about-card-5.png │ │ │ │ │ ├── arrow-filled-down-icon.svg │ │ │ │ │ ├── binary-code.svg │ │ │ │ │ ├── burger-menu-icon.svg │ │ │ │ │ ├── chevron-left.svg │ │ │ │ │ ├── chevron-right.svg │ │ │ │ │ ├── correct-icon.svg │ │ │ │ │ ├── courtain.png │ │ │ │ │ ├── cross-circle-icon.svg │ │ │ │ │ ├── cross-icon.svg │ │ │ │ │ ├── double-vector-left.svg │ │ │ │ │ ├── double-vector-right.svg │ │ │ │ │ ├── edit-profile-icon.svg │ │ │ │ │ ├── enkrypt-icon.svg │ │ │ │ │ ├── exit-icon.svg │ │ │ │ │ ├── eye-icon.svg │ │ │ │ │ ├── hexagon-icon.png │ │ │ │ │ ├── logo.svg │ │ │ │ │ ├── main-page-frame.png │ │ │ │ │ ├── main-page-wara-anim.png │ │ │ │ │ ├── no-avatar-user-img.png │ │ │ │ │ ├── no-stream-preview-img.png │ │ │ │ │ ├── nova.svg │ │ │ │ │ ├── pause-icon.svg │ │ │ │ │ ├── pen-edit-icon.svg │ │ │ │ │ ├── picture.png │ │ │ │ │ ├── play-icon.svg │ │ │ │ │ ├── player-camera-blocked-icon.svg │ │ │ │ │ ├── player-camera-icon.svg │ │ │ │ │ ├── player-fullscreen-icon.svg │ │ │ │ │ ├── player-leave-icon.svg │ │ │ │ │ ├── player-mic-icon.svg │ │ │ │ │ ├── player-mic-muted-icon.svg │ │ │ │ │ ├── player-play-icon.svg │ │ │ │ │ ├── player-share-active-icon.svg │ │ │ │ │ ├── player-share-icon.svg │ │ │ │ │ ├── player-volume-icon.svg │ │ │ │ │ ├── player-volume-muted-icon.svg │ │ │ │ │ ├── playlist-crossed-icon.svg │ │ │ │ │ ├── polkadot-js-icon.svg │ │ │ │ │ ├── search-icon.svg │ │ │ │ │ ├── select-arrow.svg │ │ │ │ │ ├── signal-stream-icon.svg │ │ │ │ │ ├── sub-wallet-icon.svg │ │ │ │ │ ├── subscribe.svg │ │ │ │ │ ├── success-icon.svg │ │ │ │ │ ├── talisman-icon.svg │ │ │ │ │ ├── timer-icon.svg │ │ │ │ │ ├── tvara-coin.svg │ │ │ │ │ ├── unsubscribe.svg │ │ │ │ │ ├── vara-coin-silver.png │ │ │ │ │ ├── vara-coin.svg │ │ │ │ │ ├── vector-left.svg │ │ │ │ │ └── vector-right.svg │ │ │ │ └── meta │ │ │ │ │ └── w3bstreaming.meta.txt │ │ │ ├── components │ │ │ │ ├── BurgerMenu │ │ │ │ │ ├── BurgerMenu.interfaces.ts │ │ │ │ │ ├── BurgerMenu.module.scss │ │ │ │ │ └── BurgerMenu.tsx │ │ │ │ ├── Footer │ │ │ │ │ ├── Footer.module.scss │ │ │ │ │ ├── Footer.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── Header │ │ │ │ │ ├── Header.interfaces.ts │ │ │ │ │ ├── Header.module.scss │ │ │ │ │ ├── Header.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── Loader │ │ │ │ │ ├── Loader.interface.ts │ │ │ │ │ ├── Loader.module.scss │ │ │ │ │ ├── Loader.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── Modal │ │ │ │ │ ├── Modal.interface.ts │ │ │ │ │ ├── Modal.module.scss │ │ │ │ │ ├── Modal.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ └── modal.variants.ts │ │ │ │ └── index.ts │ │ │ ├── consts.ts │ │ │ ├── features │ │ │ │ ├── Account │ │ │ │ │ ├── atoms.ts │ │ │ │ │ ├── components │ │ │ │ │ │ ├── Layout │ │ │ │ │ │ │ ├── Layout.module.scss │ │ │ │ │ │ │ ├── Layout.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── ProfileInfo │ │ │ │ │ │ │ ├── ProfileInfo.interfaces.ts │ │ │ │ │ │ │ ├── ProfileInfo.module.scss │ │ │ │ │ │ │ ├── ProfileInfo.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── SubscribeModal │ │ │ │ │ │ │ ├── SubscribeModal.interface.ts │ │ │ │ │ │ │ ├── SubscribeModal.module.scss │ │ │ │ │ │ │ ├── SubscribeModal.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ └── UsersTable │ │ │ │ │ │ │ ├── UsersTable.interfaces.ts │ │ │ │ │ │ │ ├── UsersTable.module.scss │ │ │ │ │ │ │ ├── UsersTable.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── config.tsx │ │ │ │ │ ├── consts.ts │ │ │ │ │ ├── hocs.tsx │ │ │ │ │ └── types.ts │ │ │ │ ├── Auth │ │ │ │ │ ├── atoms.ts │ │ │ │ │ ├── components │ │ │ │ │ │ ├── AuthRoute │ │ │ │ │ │ │ ├── AuthRoute.interface.ts │ │ │ │ │ │ │ ├── AuthRoute.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── CreateStreamRestrictModal │ │ │ │ │ │ │ ├── CreateStreamRestrictModal.interface.ts │ │ │ │ │ │ │ ├── CreateStreamRestrictModal.module.scss │ │ │ │ │ │ │ ├── CreateStreamRestrictModal.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── ProtectedRoute │ │ │ │ │ │ │ ├── ProtectedRoute.interface.ts │ │ │ │ │ │ │ ├── ProtectedRoute.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── consts.ts │ │ │ │ │ ├── types.ts │ │ │ │ │ └── utils.ts │ │ │ │ ├── CreateStream │ │ │ │ │ ├── atoms.ts │ │ │ │ │ └── components │ │ │ │ │ │ ├── DayPicker │ │ │ │ │ │ ├── DayPicker.module.scss │ │ │ │ │ │ ├── DayPicker.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── LayoutCreateForm │ │ │ │ │ │ ├── LayoutCreateForm.interface.ts │ │ │ │ │ │ ├── LayoutCreateForm.module.scss │ │ │ │ │ │ ├── LayoutCreateForm.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ └── PictureDropzone │ │ │ │ │ │ ├── PictureDropzone.interfaces.tsx │ │ │ │ │ │ ├── PictureDropzone.module.scss │ │ │ │ │ │ ├── PictureDropzone.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ ├── Stream │ │ │ │ │ ├── components │ │ │ │ │ │ ├── Broadcast │ │ │ │ │ │ │ ├── Broadcast.interface.ts │ │ │ │ │ │ │ ├── Broadcast.module.scss │ │ │ │ │ │ │ ├── Broadcast.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── Layout │ │ │ │ │ │ │ ├── Layout.interfaces.ts │ │ │ │ │ │ │ ├── Layout.module.scss │ │ │ │ │ │ │ ├── Layout.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── Player │ │ │ │ │ │ │ ├── Player.interfaces.ts │ │ │ │ │ │ │ ├── Player.module.scss │ │ │ │ │ │ │ ├── Player.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── Watch │ │ │ │ │ │ │ ├── Watch.interface.ts │ │ │ │ │ │ │ ├── Watch.module.scss │ │ │ │ │ │ │ ├── Watch.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── config.ts │ │ │ │ │ └── types.ts │ │ │ │ ├── StreamTeasers │ │ │ │ │ ├── components │ │ │ │ │ │ ├── StreamTeaser │ │ │ │ │ │ │ ├── StreamTeaser.module.scss │ │ │ │ │ │ │ ├── StreamTeaser.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── StreamTeasersList │ │ │ │ │ │ │ ├── StreamTeasersList.interfaces.ts │ │ │ │ │ │ │ ├── StreamTeasersList.module.scss │ │ │ │ │ │ │ ├── StreamTeasersList.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── config.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── types.ts │ │ │ │ └── Wallet │ │ │ │ │ ├── consts.ts │ │ │ │ │ ├── hooks.ts │ │ │ │ │ └── types.ts │ │ │ ├── hocs │ │ │ │ └── index.tsx │ │ │ ├── hooks.ts │ │ │ ├── main.tsx │ │ │ ├── pages │ │ │ │ ├── AccountPage │ │ │ │ │ └── index.tsx │ │ │ │ ├── CreateStreamPage │ │ │ │ │ └── index.tsx │ │ │ │ ├── MainPage │ │ │ │ │ ├── components │ │ │ │ │ │ ├── HowItWorksInfo │ │ │ │ │ │ │ ├── HowItWorksInfo.module.scss │ │ │ │ │ │ │ ├── HowItWorksInfo.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ └── IntrodutionInfo │ │ │ │ │ │ │ ├── IntrodutionInfo.module.scss │ │ │ │ │ │ │ ├── IntrodutionInfo.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ └── index.tsx │ │ │ │ ├── StreamPage │ │ │ │ │ └── index.tsx │ │ │ │ └── index.ts │ │ │ ├── styles │ │ │ │ ├── _mixins.scss │ │ │ │ ├── _resets.scss │ │ │ │ ├── _variables.scss │ │ │ │ └── global.scss │ │ │ ├── ui │ │ │ │ ├── Button │ │ │ │ │ ├── Button.interfaces.ts │ │ │ │ │ ├── Button.module.scss │ │ │ │ │ ├── Button.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── Calendar │ │ │ │ │ ├── Calendar.interfaces.ts │ │ │ │ │ ├── Calendar.module.scss │ │ │ │ │ ├── Calendar.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── Dropdown │ │ │ │ │ ├── Dropdown.interfaces.ts │ │ │ │ │ ├── Dropdown.module.scss │ │ │ │ │ ├── Dropdown.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── DropzoneUploader │ │ │ │ │ ├── DropzoneUploader.interface.ts │ │ │ │ │ ├── DropzoneUploader.module.scss │ │ │ │ │ ├── DropzoneUploader.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── InputArea │ │ │ │ │ ├── InputArea.interfaces.ts │ │ │ │ │ ├── InputArea.module.scss │ │ │ │ │ ├── InputArea.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── Link │ │ │ │ │ ├── Link.interfaces.ts │ │ │ │ │ ├── Link.module.scss │ │ │ │ │ ├── Link.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── Pagination │ │ │ │ │ ├── Pagination.interface.ts │ │ │ │ │ ├── Pagination.module.scss │ │ │ │ │ ├── Pagination.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── Search │ │ │ │ │ ├── Search.interfaces.ts │ │ │ │ │ ├── Search.module.scss │ │ │ │ │ ├── Search.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── Select │ │ │ │ │ ├── Select.interfaces.ts │ │ │ │ │ ├── Select.module.scss │ │ │ │ │ ├── Select.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── TabPanel │ │ │ │ │ ├── TabPanel.module.scss │ │ │ │ │ ├── TabPanel.tsx │ │ │ │ │ ├── TabsPanel.interfaces.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── Table │ │ │ │ │ ├── Table.interfaces.ts │ │ │ │ │ ├── Table.module.scss │ │ │ │ │ ├── Table.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── TextField │ │ │ │ │ ├── TextField.interfaces.ts │ │ │ │ │ ├── TextField.module.scss │ │ │ │ │ ├── TextField.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── TimePicker │ │ │ │ │ ├── TimePicker.interface.ts │ │ │ │ │ ├── TimePicker.module.scss │ │ │ │ │ ├── TimePicker.tsx │ │ │ │ │ └── index.ts │ │ │ │ └── index.ts │ │ │ ├── utils.ts │ │ │ └── vite-env.d.ts │ │ ├── tsconfig.json │ │ └── vite.config.ts │ └── web3-warriors-battle │ │ ├── .env.example │ │ ├── Dockerfile │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ ├── public │ │ ├── favicons │ │ │ ├── android-chrome-192x192.png │ │ │ ├── android-chrome-512x512.png │ │ │ ├── apple-touch-icon.png │ │ │ ├── browserconfig.xml │ │ │ ├── favicon-16x16.png │ │ │ ├── favicon-32x32.png │ │ │ ├── favicon.ico │ │ │ ├── mstile-144x144.png │ │ │ ├── mstile-150x150.png │ │ │ ├── mstile-310x150.png │ │ │ ├── mstile-310x310.png │ │ │ ├── mstile-70x70.png │ │ │ ├── safari-pinned-tab.svg │ │ │ └── site.webmanifest │ │ └── sprites │ │ │ └── icons.svg │ │ ├── src │ │ ├── app.scss │ │ ├── app.tsx │ │ ├── app │ │ │ ├── consts.ts │ │ │ ├── hocs │ │ │ │ ├── index.tsx │ │ │ │ └── query-provider.tsx │ │ │ ├── hooks │ │ │ │ └── use-sign-and-send.ts │ │ │ ├── types.ts │ │ │ └── utils │ │ │ │ ├── index.ts │ │ │ │ └── sails │ │ │ │ ├── battle.idl │ │ │ │ ├── battle.ts │ │ │ │ ├── events │ │ │ │ ├── index.ts │ │ │ │ ├── use-event-battle-canceled-subscription.ts │ │ │ │ └── use-event-round-action-subscription.ts │ │ │ │ ├── index.ts │ │ │ │ ├── messages │ │ │ │ ├── index.ts │ │ │ │ ├── use-cancel-register-message.ts │ │ │ │ ├── use-cancel-tournament-message.ts │ │ │ │ ├── use-create-new-battle-message.ts │ │ │ │ ├── use-delete-player-message.ts │ │ │ │ ├── use-exit-game-message.ts │ │ │ │ ├── use-make-move-message.ts │ │ │ │ ├── use-register-message.ts │ │ │ │ ├── use-start-battle-message.ts │ │ │ │ └── use-start-next-fight-message.ts │ │ │ │ ├── queries │ │ │ │ ├── index.ts │ │ │ │ ├── use-admins-query.ts │ │ │ │ ├── use-battle-query.ts │ │ │ │ ├── use-config-query.ts │ │ │ │ ├── use-get-appearance-query.ts │ │ │ │ └── use-my-battle-query.ts │ │ │ │ ├── sails.tsx │ │ │ │ ├── warrior-programm.tsx │ │ │ │ ├── warrior.idl │ │ │ │ └── warrior.ts │ │ ├── assets │ │ │ ├── images │ │ │ │ ├── icons │ │ │ │ │ ├── arrow-right.svg │ │ │ │ │ ├── burger-menu.svg │ │ │ │ │ ├── caret-down.svg │ │ │ │ │ ├── chevron-down.svg │ │ │ │ │ ├── chevron-left.svg │ │ │ │ │ ├── chevron-right.svg │ │ │ │ │ ├── chevrons-left.svg │ │ │ │ │ ├── chevrons-right.svg │ │ │ │ │ ├── cross.svg │ │ │ │ │ ├── discord.svg │ │ │ │ │ ├── gear-logo.svg │ │ │ │ │ ├── gear.svg │ │ │ │ │ ├── github.svg │ │ │ │ │ ├── magic-line.svg │ │ │ │ │ ├── medium.svg │ │ │ │ │ ├── search.svg │ │ │ │ │ ├── star.svg │ │ │ │ │ ├── tvara-coin.svg │ │ │ │ │ ├── twitter.svg │ │ │ │ │ ├── user.svg │ │ │ │ │ ├── vara-coin.svg │ │ │ │ │ ├── vara-logo.svg │ │ │ │ │ └── vara-sign.svg │ │ │ │ └── index.ts │ │ │ └── styles │ │ │ │ ├── common.scss │ │ │ │ ├── index.scss │ │ │ │ └── utils.scss │ │ ├── components │ │ │ ├── index.ts │ │ │ ├── layout │ │ │ │ ├── game-details │ │ │ │ │ ├── GameDetails.module.scss │ │ │ │ │ ├── GameDetails.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── header │ │ │ │ │ ├── header.module.scss │ │ │ │ │ ├── header.tsx │ │ │ │ │ ├── index.ts │ │ │ │ │ └── logo │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── logo.module.scss │ │ │ │ │ │ └── logo.tsx │ │ │ │ ├── index.ts │ │ │ │ └── vara-svg │ │ │ │ │ ├── VaraIcon.tsx │ │ │ │ │ └── index.ts │ │ │ ├── loaders │ │ │ │ ├── api-loader │ │ │ │ │ ├── ApiLoader.module.scss │ │ │ │ │ ├── ApiLoader.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── index.ts │ │ │ │ ├── loader │ │ │ │ │ ├── Loader.module.scss │ │ │ │ │ ├── Loader.tsx │ │ │ │ │ └── index.ts │ │ │ │ └── loading-error │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── loading-error.module.scss │ │ │ │ │ └── loading-error.tsx │ │ │ └── ui │ │ │ │ ├── card-button │ │ │ │ ├── card-button.module.scss │ │ │ │ ├── card-button.tsx │ │ │ │ └── index.ts │ │ │ │ ├── card │ │ │ │ ├── card.module.scss │ │ │ │ ├── card.tsx │ │ │ │ └── index.ts │ │ │ │ ├── container │ │ │ │ ├── container.module.scss │ │ │ │ ├── container.tsx │ │ │ │ └── index.ts │ │ │ │ ├── heading │ │ │ │ ├── Heading.module.scss │ │ │ │ ├── Heading.tsx │ │ │ │ └── index.ts │ │ │ │ ├── modal │ │ │ │ ├── Modal.module.scss │ │ │ │ ├── Modal.tsx │ │ │ │ ├── index.ts │ │ │ │ └── modal.variants.ts │ │ │ │ ├── scroll-area │ │ │ │ ├── index.ts │ │ │ │ ├── scroll-area.module.scss │ │ │ │ └── scroll-area.tsx │ │ │ │ ├── segmented │ │ │ │ ├── index.ts │ │ │ │ ├── segmented.module.scss │ │ │ │ └── segmented.tsx │ │ │ │ ├── sprite.tsx │ │ │ │ ├── table │ │ │ │ ├── index.ts │ │ │ │ ├── table.module.scss │ │ │ │ └── table.tsx │ │ │ │ ├── text-gradient │ │ │ │ ├── index.ts │ │ │ │ ├── text-gradient.module.scss │ │ │ │ └── text-gradient.tsx │ │ │ │ └── text │ │ │ │ ├── index.ts │ │ │ │ ├── text.module.scss │ │ │ │ └── text.tsx │ │ ├── features │ │ │ ├── game │ │ │ │ ├── assets │ │ │ │ │ └── images │ │ │ │ │ │ ├── background.svg │ │ │ │ │ │ ├── character │ │ │ │ │ │ ├── accessories-1.svg │ │ │ │ │ │ ├── accessories-10.svg │ │ │ │ │ │ ├── accessories-11.svg │ │ │ │ │ │ ├── accessories-2.svg │ │ │ │ │ │ ├── accessories-3.svg │ │ │ │ │ │ ├── accessories-4.svg │ │ │ │ │ │ ├── accessories-5.svg │ │ │ │ │ │ ├── accessories-6.svg │ │ │ │ │ │ ├── accessories-7.svg │ │ │ │ │ │ ├── accessories-8.svg │ │ │ │ │ │ ├── accessories-9.svg │ │ │ │ │ │ ├── body-1.svg │ │ │ │ │ │ ├── body-2.svg │ │ │ │ │ │ ├── body-3.svg │ │ │ │ │ │ ├── body-4.svg │ │ │ │ │ │ ├── body-5.svg │ │ │ │ │ │ ├── body-6.svg │ │ │ │ │ │ ├── hat-1.svg │ │ │ │ │ │ ├── hat-2.svg │ │ │ │ │ │ ├── hat-3.svg │ │ │ │ │ │ ├── hat-4.svg │ │ │ │ │ │ ├── hat-5.svg │ │ │ │ │ │ ├── hat-6.svg │ │ │ │ │ │ ├── hat-7.svg │ │ │ │ │ │ ├── hat-8.svg │ │ │ │ │ │ ├── hat-9.svg │ │ │ │ │ │ ├── head-1.svg │ │ │ │ │ │ ├── head-2.svg │ │ │ │ │ │ ├── head-3.svg │ │ │ │ │ │ ├── head-4.svg │ │ │ │ │ │ ├── head-5.svg │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── static │ │ │ │ │ │ │ ├── back-color.svg │ │ │ │ │ │ │ └── body-color.svg │ │ │ │ │ │ ├── icons │ │ │ │ │ │ ├── admin.svg │ │ │ │ │ │ ├── arrow-right.svg │ │ │ │ │ │ ├── attack-button.svg │ │ │ │ │ │ ├── attack.svg │ │ │ │ │ │ ├── caret-right.svg │ │ │ │ │ │ ├── code-slash.svg │ │ │ │ │ │ ├── copy.svg │ │ │ │ │ │ ├── cup-star.svg │ │ │ │ │ │ ├── defence-button.svg │ │ │ │ │ │ ├── defence.svg │ │ │ │ │ │ ├── dodge.svg │ │ │ │ │ │ ├── exit.svg │ │ │ │ │ │ ├── filled-cross.svg │ │ │ │ │ │ ├── game-button-glow.svg │ │ │ │ │ │ ├── health.svg │ │ │ │ │ │ ├── info.svg │ │ │ │ │ │ ├── loader.svg │ │ │ │ │ │ ├── magic-line.svg │ │ │ │ │ │ ├── search.svg │ │ │ │ │ │ ├── skull-big.svg │ │ │ │ │ │ ├── ultimate-button.svg │ │ │ │ │ │ ├── user-skull.svg │ │ │ │ │ │ └── user-smile.svg │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── timer-dark.svg │ │ │ │ │ │ └── timer-light.svg │ │ │ │ ├── components │ │ │ │ │ ├── animations │ │ │ │ │ │ ├── fireball │ │ │ │ │ │ │ └── fireball.tsx │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── sphere │ │ │ │ │ │ │ ├── sphere.module.scss │ │ │ │ │ │ │ └── sphere.tsx │ │ │ │ │ ├── avatar │ │ │ │ │ │ ├── avatar.module.scss │ │ │ │ │ │ ├── avatar.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── background │ │ │ │ │ │ ├── background.module.scss │ │ │ │ │ │ ├── background.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── battle-card │ │ │ │ │ │ ├── battle-card.module.scss │ │ │ │ │ │ ├── battle-card.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── battle-history-card │ │ │ │ │ │ ├── battle-history-card.module.scss │ │ │ │ │ │ ├── battle-history-card.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── battle-history-sync │ │ │ │ │ │ ├── battle-history-sync.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── battle-result-card │ │ │ │ │ │ ├── battle-result-card.module.scss │ │ │ │ │ │ ├── battle-result-card.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── character-stats-form │ │ │ │ │ │ ├── character-stats-form.module.scss │ │ │ │ │ │ ├── character-stats-from.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── character-stats │ │ │ │ │ │ ├── character-stats.module.scss │ │ │ │ │ │ ├── character-stats.tsx │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── vector.svg │ │ │ │ │ ├── character │ │ │ │ │ │ ├── character.module.scss │ │ │ │ │ │ ├── character.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── game-button │ │ │ │ │ │ ├── game-button.module.scss │ │ │ │ │ │ ├── game-button.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── game-spinner │ │ │ │ │ │ ├── game-spinner.module.scss │ │ │ │ │ │ ├── game-spinner.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── health-indicator │ │ │ │ │ │ ├── health-indicator.module.scss │ │ │ │ │ │ ├── health-indicator.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── list │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── list.module.scss │ │ │ │ │ │ └── list.tsx │ │ │ │ │ ├── modals │ │ │ │ │ │ ├── game-canceled-modal │ │ │ │ │ │ │ ├── game-canceled-modal.module.scss │ │ │ │ │ │ │ ├── game-canceled-modal.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ └── game-found-modal │ │ │ │ │ │ │ ├── game-found-modal.module.scss │ │ │ │ │ │ │ ├── game-found-modal.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── player-status │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── player-status.module.scss │ │ │ │ │ │ └── player-status.tsx │ │ │ │ │ ├── players-list │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── players-list.module.scss │ │ │ │ │ │ └── players-list.tsx │ │ │ │ │ ├── sections │ │ │ │ │ │ ├── battle-tabs │ │ │ │ │ │ │ ├── battle-tabs.module.scss │ │ │ │ │ │ │ ├── battle-tabs.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── create-game-form │ │ │ │ │ │ │ ├── create-game-form.module.scss │ │ │ │ │ │ │ ├── create-game-form.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ └── find-game-form │ │ │ │ │ │ │ ├── find-game-form.module.scss │ │ │ │ │ │ │ ├── find-game-form.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── timer │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── timer.module.scss │ │ │ │ │ │ └── timer.tsx │ │ │ │ │ ├── tournament-result-modal │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── tournament-result-modal.module.scss │ │ │ │ │ │ └── tournament-result-modal.tsx │ │ │ │ │ └── wait-list │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── wait-list.module.scss │ │ │ │ │ │ └── wait-list.tsx │ │ │ │ ├── consts.ts │ │ │ │ ├── hooks.ts │ │ │ │ ├── store.ts │ │ │ │ ├── types.ts │ │ │ │ └── utils.tsx │ │ │ └── onboarding │ │ │ │ ├── consts.ts │ │ │ │ └── index.ts │ │ ├── main.tsx │ │ ├── pages │ │ │ ├── create-game │ │ │ │ ├── create-game.module.scss │ │ │ │ ├── create-game.tsx │ │ │ │ └── index.ts │ │ │ ├── find-game │ │ │ │ ├── find-game.module.scss │ │ │ │ ├── find-game.tsx │ │ │ │ └── index.ts │ │ │ ├── game │ │ │ │ ├── game.module.scss │ │ │ │ ├── game.tsx │ │ │ │ └── index.ts │ │ │ ├── generate-character │ │ │ │ ├── generate-character.module.scss │ │ │ │ ├── generate-character.tsx │ │ │ │ └── index.ts │ │ │ ├── home │ │ │ │ ├── home.module.scss │ │ │ │ ├── home.tsx │ │ │ │ └── index.ts │ │ │ ├── import-character │ │ │ │ ├── import-character.module.scss │ │ │ │ ├── import-character.tsx │ │ │ │ └── index.ts │ │ │ ├── index.tsx │ │ │ ├── not-found │ │ │ │ ├── 404.webp │ │ │ │ ├── index.ts │ │ │ │ ├── not-found.module.scss │ │ │ │ └── not-found.tsx │ │ │ ├── onboarding │ │ │ │ ├── index.ts │ │ │ │ ├── onboarding.module.scss │ │ │ │ └── onboarding.tsx │ │ │ └── waiting │ │ │ │ ├── index.ts │ │ │ │ ├── waiting.module.scss │ │ │ │ └── waiting.tsx │ │ ├── utils │ │ │ ├── _breakpoints.scss │ │ │ ├── _index.scss │ │ │ ├── _mixins.scss │ │ │ └── _variables.scss │ │ └── vite-env.d.ts │ │ ├── tsconfig.json │ │ └── vite.config.ts ├── eslint.config.js ├── package.json ├── packages │ ├── README.md │ ├── error-tracking │ │ ├── README.md │ │ ├── package.json │ │ ├── src │ │ │ ├── analytics.ts │ │ │ ├── error-tracking.ts │ │ │ ├── index.d.ts │ │ │ ├── index.ts │ │ │ ├── public-env-logger.ts │ │ │ └── utils.ts │ │ └── tsconfig.json │ ├── ez-transactions │ │ ├── README.md │ │ ├── package.json │ │ ├── src │ │ │ ├── assets │ │ │ │ └── icons │ │ │ │ │ ├── file-copy-fill.svg │ │ │ │ │ ├── gas-station-line.svg │ │ │ │ │ ├── power.svg │ │ │ │ │ └── signless.svg │ │ │ ├── components │ │ │ │ ├── ez-gasless-transactions │ │ │ │ │ ├── ez-gasless-transactions.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── ez-signless-transactions │ │ │ │ │ ├── ez-signless-transactions.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── ez-transactions-switch │ │ │ │ │ ├── ez-transactions-switch.module.css │ │ │ │ │ ├── ez-transactions-switch.tsx │ │ │ │ │ └── index.ts │ │ │ │ └── index.ts │ │ │ ├── context │ │ │ │ ├── consts.ts │ │ │ │ ├── index.tsx │ │ │ │ └── types.ts │ │ │ ├── features │ │ │ │ ├── gasless-transactions │ │ │ │ │ ├── components │ │ │ │ │ │ ├── enable-gasless-session │ │ │ │ │ │ │ ├── enable-gasless-session.module.css │ │ │ │ │ │ │ ├── enable-gasless-session.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── gasless-transactions │ │ │ │ │ │ │ ├── gasless-transactions.module.css │ │ │ │ │ │ │ ├── gasless-transactions.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── context │ │ │ │ │ │ ├── consts.ts │ │ │ │ │ │ ├── hooks.ts │ │ │ │ │ │ ├── index.tsx │ │ │ │ │ │ ├── types.ts │ │ │ │ │ │ └── utils.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── types.ts │ │ │ │ └── signless-transactions │ │ │ │ │ ├── components │ │ │ │ │ ├── account-pair │ │ │ │ │ │ ├── account-pair.module.css │ │ │ │ │ │ ├── account-pair.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── create-session-modal │ │ │ │ │ │ ├── create-session-modal.module.css │ │ │ │ │ │ ├── create-session-modal.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── enable-session-modal │ │ │ │ │ │ ├── enable-session-modal.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── enable-signless-session │ │ │ │ │ │ ├── enable-signless-session.module.css │ │ │ │ │ │ ├── enable-signless-session.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── signless-active │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── signless-active.module.css │ │ │ │ │ │ └── signless-active.tsx │ │ │ │ │ ├── signless-params-list │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── signless-params.module.css │ │ │ │ │ │ └── signless-params.tsx │ │ │ │ │ └── signless-transactions │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── signless-transactions.module.css │ │ │ │ │ │ └── signless-transactions.tsx │ │ │ │ │ ├── consts.ts │ │ │ │ │ ├── context │ │ │ │ │ ├── consts.ts │ │ │ │ │ ├── context.ts │ │ │ │ │ ├── hooks.ts │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── metadata-provider.tsx │ │ │ │ │ ├── sails-provider.tsx │ │ │ │ │ ├── types.ts │ │ │ │ │ └── utils.ts │ │ │ │ │ ├── hooks │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── use-batch-sign-and-send.ts │ │ │ │ │ ├── use-create-base-session.ts │ │ │ │ │ ├── use-create-metadata-session.ts │ │ │ │ │ ├── use-create-sails-session.ts │ │ │ │ │ ├── use-get-extrinsic-failed-error.ts │ │ │ │ │ ├── use-is-available.ts │ │ │ │ │ ├── use-random-pair-or.ts │ │ │ │ │ └── use-signless-send-message.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── types.ts │ │ │ │ │ └── utils.ts │ │ │ ├── hooks │ │ │ │ ├── index.ts │ │ │ │ └── use-prepare-ez-transaction-params.ts │ │ │ ├── index.ts │ │ │ └── vite-env.d.ts │ │ ├── tsconfig.json │ │ └── vite.config.ts │ ├── hooks │ │ ├── README.md │ │ ├── package.json │ │ ├── src │ │ │ ├── consts.ts │ │ │ ├── hooks │ │ │ │ ├── index.ts │ │ │ │ ├── use-calculate-gas.ts │ │ │ │ ├── use-check-balance-async.tsx │ │ │ │ ├── use-check-balance.tsx │ │ │ │ ├── use-countdown.ts │ │ │ │ ├── use-dns-program-id.ts │ │ │ │ └── use-program-metadata.ts │ │ │ ├── index.ts │ │ │ └── providers │ │ │ │ ├── balance-provider.tsx │ │ │ │ ├── dns-provider.tsx │ │ │ │ └── index.ts │ │ └── tsconfig.json │ └── ui │ │ ├── README.md │ │ ├── package.json │ │ ├── src │ │ ├── assets │ │ │ └── cross-icon.svg │ │ ├── components │ │ │ ├── container │ │ │ │ ├── container.module.css │ │ │ │ ├── container.tsx │ │ │ │ └── index.ts │ │ │ ├── footer │ │ │ │ ├── assets │ │ │ │ │ ├── discord.svg │ │ │ │ │ ├── github.svg │ │ │ │ │ ├── medium.svg │ │ │ │ │ ├── twitter.svg │ │ │ │ │ └── user.svg │ │ │ │ ├── consts.ts │ │ │ │ ├── footer.module.css │ │ │ │ ├── footer.tsx │ │ │ │ └── index.ts │ │ │ ├── header │ │ │ │ ├── assets │ │ │ │ │ ├── discord.svg │ │ │ │ │ ├── github.svg │ │ │ │ │ ├── medium.svg │ │ │ │ │ ├── twitter.svg │ │ │ │ │ └── user.svg │ │ │ │ ├── consts.ts │ │ │ │ ├── header.module.css │ │ │ │ ├── header.tsx │ │ │ │ └── index.ts │ │ │ ├── index.ts │ │ │ ├── menu-handler │ │ │ │ ├── assets │ │ │ │ │ └── burger-menu.svg │ │ │ │ ├── index.ts │ │ │ │ ├── menu-handler.module.css │ │ │ │ └── menu-handler.tsx │ │ │ ├── menu-options │ │ │ │ ├── assets │ │ │ │ │ ├── disconnect.svg │ │ │ │ │ ├── grid.svg │ │ │ │ │ └── user.svg │ │ │ │ ├── index.ts │ │ │ │ ├── menu-options.module.css │ │ │ │ └── menu-options.tsx │ │ │ ├── mobile-menu │ │ │ │ ├── index.ts │ │ │ │ ├── mobile-menu.module.css │ │ │ │ └── mobile-menu.tsx │ │ │ ├── scroll-area │ │ │ │ ├── index.ts │ │ │ │ ├── scroll-area.module.css │ │ │ │ └── scroll-area.tsx │ │ │ ├── start-disclaimer │ │ │ │ ├── consts.ts │ │ │ │ ├── index.ts │ │ │ │ ├── start-disclaimer.module.css │ │ │ │ └── start-disclaimer.tsx │ │ │ └── switcher │ │ │ │ ├── index.ts │ │ │ │ ├── switcher.module.css │ │ │ │ └── switcher.tsx │ │ ├── index.ts │ │ ├── providers.tsx │ │ ├── types.ts │ │ ├── utils.ts │ │ └── vite-env.d.ts │ │ └── tsconfig.json ├── templates │ ├── create-gear-app │ │ ├── .env.example │ │ ├── .eslintrc │ │ ├── .gitignore │ │ ├── .prettierrc │ │ ├── README.md │ │ ├── README.md.example │ │ ├── index.html │ │ ├── package.json │ │ ├── public │ │ │ └── favicon.png │ │ ├── src │ │ │ ├── App.scss │ │ │ ├── App.tsx │ │ │ ├── assets │ │ │ │ ├── images │ │ │ │ │ ├── bg.svg │ │ │ │ │ ├── icons │ │ │ │ │ │ └── gear.svg │ │ │ │ │ ├── logo.svg │ │ │ │ │ └── socials │ │ │ │ │ │ ├── discord.svg │ │ │ │ │ │ ├── github.svg │ │ │ │ │ │ ├── medium.svg │ │ │ │ │ │ └── twitter.svg │ │ │ │ └── styles │ │ │ │ │ ├── _shared.scss │ │ │ │ │ └── index.scss │ │ │ ├── components │ │ │ │ ├── index.ts │ │ │ │ ├── layout │ │ │ │ │ ├── footer │ │ │ │ │ │ ├── Footer.module.scss │ │ │ │ │ │ ├── Footer.tsx │ │ │ │ │ │ ├── copyright │ │ │ │ │ │ │ ├── Copyright.module.scss │ │ │ │ │ │ │ ├── Copyright.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── socials │ │ │ │ │ │ │ ├── Socials.module.scss │ │ │ │ │ │ │ ├── Socials.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── header │ │ │ │ │ │ ├── Header.module.scss │ │ │ │ │ │ ├── Header.tsx │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── logo │ │ │ │ │ │ │ ├── Logo.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ └── index.ts │ │ │ │ └── loaders │ │ │ │ │ ├── api-loader │ │ │ │ │ ├── ApiLoader.module.scss │ │ │ │ │ ├── ApiLoader.tsx │ │ │ │ │ └── index.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── loader │ │ │ │ │ ├── Loader.module.scss │ │ │ │ │ ├── Loader.tsx │ │ │ │ │ └── index.ts │ │ │ ├── consts.ts │ │ │ ├── hocs │ │ │ │ └── index.tsx │ │ │ ├── hooks │ │ │ │ ├── api.ts │ │ │ │ └── index.ts │ │ │ ├── main.tsx │ │ │ ├── pages │ │ │ │ ├── home │ │ │ │ │ ├── Home.tsx │ │ │ │ │ └── index.ts │ │ │ │ └── index.tsx │ │ │ ├── types │ │ │ │ └── index.ts │ │ │ ├── utils │ │ │ │ ├── _index.scss │ │ │ │ ├── index.ts │ │ │ │ └── styles │ │ │ │ │ ├── _breakpoints.scss │ │ │ │ │ ├── _index.scss │ │ │ │ │ └── _mixins.scss │ │ │ └── vite-env.d.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.json │ │ ├── tsconfig.node.json │ │ └── vite.config.ts │ └── create-vara-app │ │ ├── .env.example │ │ ├── .eslintrc │ │ ├── .gitignore │ │ ├── .prettierrc │ │ ├── README.md │ │ ├── README.md.example │ │ ├── index.html │ │ ├── package.json │ │ ├── public │ │ └── favicon.ico │ │ ├── src │ │ ├── App.scss │ │ ├── App.tsx │ │ ├── assets │ │ │ └── images │ │ │ │ ├── icons │ │ │ │ └── gear.svg │ │ │ │ ├── logo.svg │ │ │ │ └── socials │ │ │ │ ├── discord.svg │ │ │ │ ├── github.svg │ │ │ │ ├── medium.svg │ │ │ │ └── twitter.svg │ │ ├── components │ │ │ ├── index.ts │ │ │ ├── layout │ │ │ │ ├── footer │ │ │ │ │ ├── Footer.module.scss │ │ │ │ │ ├── Footer.tsx │ │ │ │ │ ├── copyright │ │ │ │ │ │ ├── Copyright.module.scss │ │ │ │ │ │ ├── Copyright.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── socials │ │ │ │ │ │ ├── Socials.module.scss │ │ │ │ │ │ ├── Socials.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ ├── header │ │ │ │ │ ├── Header.module.scss │ │ │ │ │ ├── Header.tsx │ │ │ │ │ ├── index.ts │ │ │ │ │ └── logo │ │ │ │ │ │ ├── Logo.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ └── index.ts │ │ │ └── loaders │ │ │ │ ├── api-loader │ │ │ │ ├── ApiLoader.module.scss │ │ │ │ ├── ApiLoader.tsx │ │ │ │ └── index.ts │ │ │ │ ├── index.ts │ │ │ │ └── loader │ │ │ │ ├── Loader.module.scss │ │ │ │ ├── Loader.tsx │ │ │ │ └── index.ts │ │ ├── consts.ts │ │ ├── hocs │ │ │ └── index.tsx │ │ ├── hooks │ │ │ ├── api.ts │ │ │ └── index.ts │ │ ├── main.tsx │ │ ├── pages │ │ │ ├── home │ │ │ │ ├── Home.tsx │ │ │ │ └── index.ts │ │ │ └── index.tsx │ │ ├── types │ │ │ └── index.ts │ │ ├── utils │ │ │ ├── _index.scss │ │ │ ├── index.ts │ │ │ └── styles │ │ │ │ ├── _breakpoints.scss │ │ │ │ ├── _index.scss │ │ │ │ └── _mixins.scss │ │ └── vite-env.d.ts │ │ ├── tsconfig.app.json │ │ ├── tsconfig.json │ │ ├── tsconfig.node.json │ │ └── vite.config.ts ├── tsconfig.json ├── tsconfig.node.json ├── vite.apps.config.ts └── yarn.lock └── scripts ├── docker-rust ├── Dockerfile └── docker-compose.yml └── update_gear_version.py /.gitignore: -------------------------------------------------------------------------------- 1 | # misc 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- 1 | { 2 | "rust-analyzer.checkOnSave": false 3 | } 4 | -------------------------------------------------------------------------------- /backend/gasless/.env.example: -------------------------------------------------------------------------------- 1 | NODE_URL=wss://rpc.vara-network.io 2 | VOUCHER_ACCOUNT=0x... -------------------------------------------------------------------------------- /backend/gasless/.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | .vscode/ 3 | .binpath 4 | .metahash 5 | 6 | # Rust 7 | target/ 8 | 9 | # Npm 10 | node_modules/ 11 | .env 12 | dist/ 13 | -------------------------------------------------------------------------------- /backend/w3bstreaming/.env.example: -------------------------------------------------------------------------------- 1 | WS_ADDRESS=wss://vit.vara-network.io 2 | PROGRAM_ID=0xa97d90de8f966b3089def95922c04dff58659701d59cb18c72bed2a51784816b 3 | -------------------------------------------------------------------------------- /backend/w3bstreaming/.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | .vscode/ 3 | .binpath 4 | .metahash 5 | 6 | # Rust 7 | target/ 8 | 9 | # Npm 10 | node_modules/ 11 | .env 12 | dist/ 13 | -------------------------------------------------------------------------------- /backend/w3bstreaming/src/contract/index.ts: -------------------------------------------------------------------------------- 1 | export * from './init'; 2 | export * from './state'; 3 | -------------------------------------------------------------------------------- /contracts/.gitignore: -------------------------------------------------------------------------------- 1 | target 2 | .binpath 3 | .DS_Store 4 | -------------------------------------------------------------------------------- /contracts/battle/app/src/services/mod.rs: -------------------------------------------------------------------------------- 1 | pub mod game; 2 | pub mod utils; 3 | -------------------------------------------------------------------------------- /contracts/battle/client/src/lib.rs: -------------------------------------------------------------------------------- 1 | #![no_std] 2 | #![allow(clippy::too_many_arguments)] 3 | // Incorporate code generated based on the IDL file 4 | include!(concat!(env!("OUT_DIR"), "/battle_client.rs")); 5 | -------------------------------------------------------------------------------- /contracts/battle/warrior/app/Cargo.toml: -------------------------------------------------------------------------------- 1 | [package] 2 | name = "warrior-app" 3 | version = "0.1.0" 4 | edition = "2021" 5 | 6 | [dependencies] 7 | sails-rs.workspace = true 8 | -------------------------------------------------------------------------------- /contracts/battle/warrior/wasm/src/lib.rs: -------------------------------------------------------------------------------- 1 | #![no_std] 2 | include!(concat!(env!("OUT_DIR"), "/wasm_binary.rs")); 3 | 4 | #[cfg(target_arch = "wasm32")] 5 | pub use warrior_app::wasm::*; 6 | -------------------------------------------------------------------------------- /contracts/battleship/bot/build.rs: -------------------------------------------------------------------------------- 1 | fn main() { 2 | gear_wasm_builder::build(); 3 | } 4 | -------------------------------------------------------------------------------- /contracts/battleship/build.rs: -------------------------------------------------------------------------------- 1 | use battleship_io::BattleshipMetadata; 2 | 3 | fn main() { 4 | gear_wasm_builder::build_with_metadata::(); 5 | } 6 | -------------------------------------------------------------------------------- /contracts/battleship/src/lib.rs: -------------------------------------------------------------------------------- 1 | #![no_std] 2 | 3 | mod contract; 4 | 5 | include!(concat!(env!("OUT_DIR"), "/wasm_binary.rs")); 6 | -------------------------------------------------------------------------------- /contracts/car-races/.gitignore: -------------------------------------------------------------------------------- 1 | target/ 2 | .binpath 3 | -------------------------------------------------------------------------------- /contracts/car-races/client/src/lib.rs: -------------------------------------------------------------------------------- 1 | #![no_std] 2 | 3 | // Incorporate code generated based on the IDL file 4 | include!(concat!(env!("OUT_DIR"), "/car_races_client.rs")); 5 | -------------------------------------------------------------------------------- /contracts/concert/.gitignore: -------------------------------------------------------------------------------- 1 | target/ 2 | .binpath 3 | -------------------------------------------------------------------------------- /contracts/concert/client/src/lib.rs: -------------------------------------------------------------------------------- 1 | #![no_std] 2 | #![allow(clippy::type_complexity)] 3 | // Incorporate code generated based on the IDL file 4 | include!(concat!(env!("OUT_DIR"), "/concert_client.rs")); 5 | -------------------------------------------------------------------------------- /contracts/dex/.gitignore: -------------------------------------------------------------------------------- 1 | target/ 2 | .binpath 3 | -------------------------------------------------------------------------------- /contracts/dex/client/src/lib.rs: -------------------------------------------------------------------------------- 1 | #![no_std] 2 | 3 | // Incorporate code generated based on the IDL file 4 | include!(concat!(env!("OUT_DIR"), "/dex_client.rs")); 5 | -------------------------------------------------------------------------------- /contracts/dynamic-nft/.gitignore: -------------------------------------------------------------------------------- 1 | .binpath 2 | -------------------------------------------------------------------------------- /contracts/dynamic-nft/app/src/services/mod.rs: -------------------------------------------------------------------------------- 1 | pub mod dynamic_nft; 2 | pub mod utils; 3 | -------------------------------------------------------------------------------- /contracts/dynamic-nft/client/src/lib.rs: -------------------------------------------------------------------------------- 1 | #![no_std] 2 | 3 | // Incorporate code generated based on the IDL file 4 | include!(concat!(env!("OUT_DIR"), "/dynamic_nft_client.rs")); 5 | -------------------------------------------------------------------------------- /contracts/galactic-express/.gitignore: -------------------------------------------------------------------------------- 1 | target/ 2 | .binpath 3 | -------------------------------------------------------------------------------- /contracts/galactic-express/app/src/services/mod.rs: -------------------------------------------------------------------------------- 1 | pub mod galactic_express; 2 | pub mod utils; 3 | -------------------------------------------------------------------------------- /contracts/galactic-express/client/src/lib.rs: -------------------------------------------------------------------------------- 1 | #![no_std] 2 | 3 | // Incorporate code generated based on the IDL file 4 | include!(concat!(env!("OUT_DIR"), "/galactic_express_client.rs")); 5 | -------------------------------------------------------------------------------- /contracts/multisig-wallet/.gitignore: -------------------------------------------------------------------------------- 1 | target/ 2 | .binpath 3 | -------------------------------------------------------------------------------- /contracts/multisig-wallet/client/src/lib.rs: -------------------------------------------------------------------------------- 1 | #![no_std] 2 | 3 | // Incorporate code generated based on the IDL file 4 | include!(concat!(env!("OUT_DIR"), "/multisig_wallet_client.rs")); 5 | -------------------------------------------------------------------------------- /contracts/nft-marketplace/.gitignore: -------------------------------------------------------------------------------- 1 | target/ 2 | .binpath 3 | -------------------------------------------------------------------------------- /contracts/nft-marketplace/client/src/lib.rs: -------------------------------------------------------------------------------- 1 | #![no_std] 2 | 3 | // Incorporate code generated based on the IDL file 4 | include!(concat!(env!("OUT_DIR"), "/nft_marketplace_client.rs")); 5 | -------------------------------------------------------------------------------- /contracts/oracle/.gitignore: -------------------------------------------------------------------------------- 1 | target/ 2 | .binpath 3 | -------------------------------------------------------------------------------- /contracts/oracle/client/src/lib.rs: -------------------------------------------------------------------------------- 1 | #![no_std] 2 | 3 | // Incorporate code generated based on the IDL file 4 | include!(concat!(env!("OUT_DIR"), "/oracle_client.rs")); 5 | -------------------------------------------------------------------------------- /contracts/oracle/randomness/.gitignore: -------------------------------------------------------------------------------- 1 | target/ 2 | .binpath 3 | -------------------------------------------------------------------------------- /contracts/oracle/randomness/app/Cargo.toml: -------------------------------------------------------------------------------- 1 | [package] 2 | name = "randomness-app" 3 | version = "0.1.0" 4 | edition = "2021" 5 | 6 | [dependencies] 7 | sails-rs.workspace = true 8 | -------------------------------------------------------------------------------- /contracts/oracle/randomness/client/src/lib.rs: -------------------------------------------------------------------------------- 1 | #![no_std] 2 | 3 | // Incorporate code generated based on the IDL file 4 | include!(concat!(env!("OUT_DIR"), "/randomness_client.rs")); 5 | -------------------------------------------------------------------------------- /contracts/ping-pong/.gitignore: -------------------------------------------------------------------------------- 1 | target/ 2 | .binpath 3 | -------------------------------------------------------------------------------- /contracts/ping-pong/client/src/lib.rs: -------------------------------------------------------------------------------- 1 | #![no_std] 2 | 3 | // Incorporate code generated based on the IDL file 4 | include!(concat!(env!("OUT_DIR"), "/ping_pong_client.rs")); 5 | -------------------------------------------------------------------------------- /contracts/rmrk/build.rs: -------------------------------------------------------------------------------- 1 | use rmrk_io::RMRKMetadata; 2 | 3 | fn main() { 4 | gear_wasm_builder::build_with_metadata::(); 5 | } 6 | -------------------------------------------------------------------------------- /contracts/rmrk/catalog/build.rs: -------------------------------------------------------------------------------- 1 | use rmrk_catalog_io::CatalogMetadata; 2 | 3 | fn main() { 4 | gear_wasm_builder::build_with_metadata::(); 5 | } 6 | -------------------------------------------------------------------------------- /contracts/rmrk/resource/build.rs: -------------------------------------------------------------------------------- 1 | use rmrk_resource_io::ResourceMetadata; 2 | 3 | fn main() { 4 | gear_wasm_builder::build_with_metadata::(); 5 | } 6 | -------------------------------------------------------------------------------- /contracts/rmrk/state/build.rs: -------------------------------------------------------------------------------- 1 | fn main() { 2 | gear_wasm_builder::build_metawasm(); 3 | } 4 | -------------------------------------------------------------------------------- /contracts/rmrk/tests/equippable/mod.rs: -------------------------------------------------------------------------------- 1 | mod equip; 2 | mod utils; 3 | -------------------------------------------------------------------------------- /contracts/rmrk/tests/test.rs: -------------------------------------------------------------------------------- 1 | mod equippable; 2 | mod token_tests; 3 | mod utils; 4 | -------------------------------------------------------------------------------- /contracts/rmrk/tests/token_tests/mod.rs: -------------------------------------------------------------------------------- 1 | mod accept_reject_children; 2 | mod burn; 3 | mod mint; 4 | mod transfer; 5 | mod transfer_to_rmrk_token; 6 | -------------------------------------------------------------------------------- /contracts/rustfmt.toml: -------------------------------------------------------------------------------- 1 | use_field_init_shorthand = true 2 | newline_style = "Unix" 3 | force_explicit_abi = false 4 | -------------------------------------------------------------------------------- /contracts/staking/.gitignore: -------------------------------------------------------------------------------- 1 | target/ 2 | .binpath 3 | -------------------------------------------------------------------------------- /contracts/staking/client/src/lib.rs: -------------------------------------------------------------------------------- 1 | #![no_std] 2 | 3 | // Incorporate code generated based on the IDL file 4 | include!(concat!(env!("OUT_DIR"), "/staking_client.rs")); 5 | -------------------------------------------------------------------------------- /contracts/syndote/app/src/services/mod.rs: -------------------------------------------------------------------------------- 1 | pub mod game; 2 | pub mod utils; 3 | -------------------------------------------------------------------------------- /contracts/syndote/player/wasm/src/lib.rs: -------------------------------------------------------------------------------- 1 | #![no_std] 2 | 3 | #[cfg(target_arch = "wasm32")] 4 | pub use player_app::wasm::*; 5 | -------------------------------------------------------------------------------- /contracts/tamagotchi-battle/build.rs: -------------------------------------------------------------------------------- 1 | use tamagotchi_battle_io::BattleMetadata; 2 | 3 | fn main() { 4 | gear_wasm_builder::build_with_metadata::(); 5 | } 6 | -------------------------------------------------------------------------------- /contracts/tamagotchi-battle/state/build.rs: -------------------------------------------------------------------------------- 1 | fn main() { 2 | gear_wasm_builder::build_metawasm(); 3 | } 4 | -------------------------------------------------------------------------------- /contracts/tamagotchi/build.rs: -------------------------------------------------------------------------------- 1 | use tamagotchi_io::ProgramMetadata; 2 | 3 | fn main() { 4 | gear_wasm_builder::build_with_metadata::(); 5 | } 6 | -------------------------------------------------------------------------------- /contracts/tamagotchi/state/build.rs: -------------------------------------------------------------------------------- 1 | fn main() { 2 | gear_wasm_builder::build_metawasm(); 3 | } 4 | -------------------------------------------------------------------------------- /contracts/tequila-train/build.rs: -------------------------------------------------------------------------------- 1 | use tequila_train_io::ContractMetadata; 2 | 3 | fn main() { 4 | gear_wasm_builder::build_with_metadata::(); 5 | } 6 | -------------------------------------------------------------------------------- /contracts/tic-tac-toe/.gitignore: -------------------------------------------------------------------------------- 1 | target/ 2 | .binpath 3 | -------------------------------------------------------------------------------- /contracts/tic-tac-toe/app/src/services/mod.rs: -------------------------------------------------------------------------------- 1 | pub mod game; 2 | pub mod session; 3 | pub mod utils; 4 | -------------------------------------------------------------------------------- /contracts/tic-tac-toe/client/src/lib.rs: -------------------------------------------------------------------------------- 1 | #![no_std] 2 | 3 | // Incorporate code generated based on the IDL file 4 | include!(concat!(env!("OUT_DIR"), "/tic_tac_toe_client.rs")); 5 | -------------------------------------------------------------------------------- /contracts/upgrade-proxy/counter/client/src/lib.rs: -------------------------------------------------------------------------------- 1 | #![no_std] 2 | 3 | // Incorporate code generated based on the IDL file 4 | include!(concat!(env!("OUT_DIR"), "/counter_client.rs")); 5 | -------------------------------------------------------------------------------- /contracts/upgrade-proxy/upgrade-proxy/app/Cargo.toml: -------------------------------------------------------------------------------- 1 | [package] 2 | name = "proxy-app" 3 | version = "0.1.0" 4 | edition = "2021" 5 | 6 | [dependencies] 7 | sails-rs.workspace = true 8 | -------------------------------------------------------------------------------- /contracts/upgrade-proxy/upgrade-proxy/client/src/lib.rs: -------------------------------------------------------------------------------- 1 | #![no_std] 2 | 3 | // Incorporate code generated based on the IDL file 4 | include!(concat!(env!("OUT_DIR"), "/proxy_client.rs")); 5 | -------------------------------------------------------------------------------- /contracts/vara-man/.gitignore: -------------------------------------------------------------------------------- 1 | target/ 2 | .binpath 3 | -------------------------------------------------------------------------------- /contracts/vara-man/app/src/services/mod.rs: -------------------------------------------------------------------------------- 1 | pub mod game; 2 | pub mod session; 3 | pub mod utils; 4 | -------------------------------------------------------------------------------- /contracts/vara-man/client/src/lib.rs: -------------------------------------------------------------------------------- 1 | #![no_std] 2 | 3 | // Incorporate code generated based on the IDL file 4 | include!(concat!(env!("OUT_DIR"), "/vara_man_client.rs")); 5 | -------------------------------------------------------------------------------- /contracts/varatube/.gitignore: -------------------------------------------------------------------------------- 1 | target/ 2 | .binpath 3 | -------------------------------------------------------------------------------- /contracts/varatube/client/src/lib.rs: -------------------------------------------------------------------------------- 1 | #![no_std] 2 | 3 | // Incorporate code generated based on the IDL file 4 | include!(concat!(env!("OUT_DIR"), "/varatube_client.rs")); 5 | -------------------------------------------------------------------------------- /contracts/w3bstreaming/.gitignore: -------------------------------------------------------------------------------- 1 | target/ 2 | .binpath 3 | -------------------------------------------------------------------------------- /contracts/w3bstreaming/client/src/lib.rs: -------------------------------------------------------------------------------- 1 | #![no_std] 2 | 3 | // Incorporate code generated based on the IDL file 4 | include!(concat!(env!("OUT_DIR"), "/w3bstreaming_client.rs")); 5 | -------------------------------------------------------------------------------- /contracts/zk-battleship/app/src/services/mod.rs: -------------------------------------------------------------------------------- 1 | pub mod admin; 2 | pub mod multiple; 3 | pub mod session; 4 | pub mod single; 5 | pub(crate) mod utils; 6 | pub mod verify; 7 | -------------------------------------------------------------------------------- /contracts/zk-battleship/app/src/services/session/storage.rs: -------------------------------------------------------------------------------- 1 | use super::SessionMap; 2 | crate::declare_storage!(module: sessions, name: SessionsStorage, ty: SessionMap); 3 | -------------------------------------------------------------------------------- /contracts/zk-battleship/app/src/services/single/storage.rs: -------------------------------------------------------------------------------- 1 | use super::SingleGamesMap; 2 | crate::declare_storage!(module: single_games, name: SingleGamesStorage, ty: SingleGamesMap); 3 | -------------------------------------------------------------------------------- /contracts/zk-battleship/wasm/src/lib.rs: -------------------------------------------------------------------------------- 1 | #![no_std] 2 | 3 | #[cfg(target_arch = "wasm32")] 4 | pub use zk_battleship_app::wasm::*; 5 | -------------------------------------------------------------------------------- /frontend/.editorconfig: -------------------------------------------------------------------------------- 1 | root = true 2 | 3 | [*] 4 | end_of_line = lf 5 | insert_final_newline = true 6 | 7 | [*.{js,json,yml}] 8 | charset = utf-8 9 | indent_style = space 10 | indent_size = 2 11 | -------------------------------------------------------------------------------- /frontend/.gitattributes: -------------------------------------------------------------------------------- 1 | /.yarn/** linguist-vendored 2 | /.yarn/releases/* binary 3 | /.yarn/plugins/**/* binary 4 | /.pnp.* binary linguist-generated 5 | -------------------------------------------------------------------------------- /frontend/.yarnrc.yml: -------------------------------------------------------------------------------- 1 | defaultSemverRangePrefix: "" 2 | 3 | nodeLinker: node-modules 4 | 5 | yarnPath: .yarn/releases/yarn-4.6.0.cjs 6 | -------------------------------------------------------------------------------- /frontend/apps/README.md: -------------------------------------------------------------------------------- 1 | # @dapps-frontend/apps 2 | 3 | Applications ready for use and production. 4 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gear-foundation/dapps/d8c5cab8058f24c7ca474b566bc3d21b73078bb8/frontend/apps/battleship-zk/public/favicon.ico -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/app/hooks/index.ts: -------------------------------------------------------------------------------- 1 | export { useReadState } from './api'; 2 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/app/utils/sails/index.ts: -------------------------------------------------------------------------------- 1 | export * from './sails'; 2 | export { useConfigurationQuery } from './queries/use-configuration-query'; 3 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/assets/images/bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gear-foundation/dapps/d8c5cab8058f24c7ca474b566bc3d21b73078bb8/frontend/apps/battleship-zk/src/assets/images/bg.png -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/assets/images/fire.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gear-foundation/dapps/d8c5cab8058f24c7ca474b566bc3d21b73078bb8/frontend/apps/battleship-zk/src/assets/images/fire.gif -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/assets/images/sea.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gear-foundation/dapps/d8c5cab8058f24c7ca474b566bc3d21b73078bb8/frontend/apps/battleship-zk/src/assets/images/sea.png -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/assets/images/smoke.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gear-foundation/dapps/d8c5cab8058f24c7ca474b566bc3d21b73078bb8/frontend/apps/battleship-zk/src/assets/images/smoke.gif -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/assets/images/tails.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gear-foundation/dapps/d8c5cab8058f24c7ca474b566bc3d21b73078bb8/frontend/apps/battleship-zk/src/assets/images/tails.gif -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/assets/styles/_shared.scss: -------------------------------------------------------------------------------- 1 | %absoluteCenter { 2 | position: absolute; 3 | top: 50%; 4 | left: 50%; 5 | transform: translate(-50%); 6 | } 7 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/assets/styles/index.scss: -------------------------------------------------------------------------------- 1 | @use 'utils' as *; 2 | 3 | @import 'common'; 4 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/assets/styles/utils/_index.scss: -------------------------------------------------------------------------------- 1 | @forward 'breakpoints'; 2 | @forward 'mixins'; 3 | @forward 'variables'; 4 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/components/index.ts: -------------------------------------------------------------------------------- 1 | export { Header } from './layout'; 2 | export { ApiLoader, Loader } from './loaders'; 3 | export { Modal } from './ui/modal'; 4 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/components/layout/game-details/index.ts: -------------------------------------------------------------------------------- 1 | import { GameDetails } from './GameDetails'; 2 | 3 | export { GameDetails }; 4 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/components/layout/header/account-info/index.ts: -------------------------------------------------------------------------------- 1 | export { AccountInfo } from './account-info'; 2 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/components/layout/header/index.ts: -------------------------------------------------------------------------------- 1 | export { Header } from './header'; 2 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/components/layout/header/logo/index.ts: -------------------------------------------------------------------------------- 1 | export { Logo } from './logo'; 2 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/components/layout/header/navigation/index.ts: -------------------------------------------------------------------------------- 1 | export { Navigation } from './navigation'; 2 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/components/layout/index.ts: -------------------------------------------------------------------------------- 1 | export { Header } from './header'; 2 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/components/layout/not-found/index.ts: -------------------------------------------------------------------------------- 1 | export { NotFound } from './not-found'; 2 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/components/layout/text-field/index.ts: -------------------------------------------------------------------------------- 1 | export * from './TextField'; 2 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/components/layout/text-modal/index.ts: -------------------------------------------------------------------------------- 1 | import { TextModal } from './TextModal'; 2 | 3 | export { TextModal }; 4 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/components/layout/vara-svg/index.ts: -------------------------------------------------------------------------------- 1 | import { VaraIcon } from './VaraIcon'; 2 | 3 | export { VaraIcon }; 4 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/components/loaders/api-loader/index.ts: -------------------------------------------------------------------------------- 1 | import { ApiLoader } from './ApiLoader'; 2 | 3 | export { ApiLoader }; 4 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/components/loaders/index.ts: -------------------------------------------------------------------------------- 1 | import { ApiLoader } from './api-loader'; 2 | import { Loader } from './loader'; 3 | 4 | export { ApiLoader, Loader }; 5 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/components/loaders/loader/Loader.tsx: -------------------------------------------------------------------------------- 1 | import styles from './Loader.module.scss'; 2 | 3 | export function Loader() { 4 | return
; 5 | } 6 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/components/loaders/loader/index.ts: -------------------------------------------------------------------------------- 1 | import { Loader } from './Loader'; 2 | 3 | export { Loader }; 4 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/components/loaders/loading-error/index.ts: -------------------------------------------------------------------------------- 1 | export { LoadingError } from './loading-error'; 2 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/components/ui/alert/index.ts: -------------------------------------------------------------------------------- 1 | export { Alert, alertStyles } from './alert'; 2 | export type { AlertProps } from './alert.types'; 3 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/components/ui/balance/index.ts: -------------------------------------------------------------------------------- 1 | import { VaraBalance, PointsBalance } from './Balance'; 2 | 3 | export { VaraBalance, PointsBalance }; 4 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/components/ui/button/index.ts: -------------------------------------------------------------------------------- 1 | export { Button, buttonVariants } from './button'; 2 | export type { ButtonProps } from './button'; 3 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/components/ui/container/container.module.scss: -------------------------------------------------------------------------------- 1 | .container { 2 | width: 100%; 3 | max-width: 1240px; 4 | margin: 0 auto; 5 | } 6 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/components/ui/container/index.ts: -------------------------------------------------------------------------------- 1 | export { Container } from './container'; 2 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/components/ui/heading/index.ts: -------------------------------------------------------------------------------- 1 | export { Heading, headingVariants } from './Heading'; 2 | export type { HeadingProps } from './Heading'; 3 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/components/ui/modal/index.ts: -------------------------------------------------------------------------------- 1 | import { Modal } from './Modal'; 2 | import { ModalBottom } from './ModalBottom'; 3 | 4 | export { Modal, ModalBottom }; 5 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/components/ui/scroll-area/index.ts: -------------------------------------------------------------------------------- 1 | export { ScrollArea, ScrollBar } from './scroll-area'; 2 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/components/ui/text-gradient/index.ts: -------------------------------------------------------------------------------- 1 | import { TextGradient } from './text-gradient'; 2 | 3 | export { TextGradient }; 4 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/components/ui/text/index.ts: -------------------------------------------------------------------------------- 1 | export { Text, textVariants } from './text'; 2 | export type { TextProps } from './text'; 3 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/features/game/components/game-cancelled-modal/index.tsx: -------------------------------------------------------------------------------- 1 | import GameCancelledModal from './game-cancelled-modal'; 2 | 3 | export { GameCancelledModal }; 4 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/features/game/components/game-end-modal/index.tsx: -------------------------------------------------------------------------------- 1 | import GameEndModal from './game-end-modal'; 2 | 3 | export { GameEndModal }; 4 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/features/game/components/game-process/index.ts: -------------------------------------------------------------------------------- 1 | import GameProcess from './game-process'; 2 | 3 | export { GameProcess }; 4 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/features/game/components/illustration/index.ts: -------------------------------------------------------------------------------- 1 | import { Illustration } from './illustration'; 2 | 3 | export { Illustration }; 4 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/features/game/components/map/index.tsx: -------------------------------------------------------------------------------- 1 | import Map from './map'; 2 | import MapEnemy from './mapEnemy'; 3 | 4 | export { Map, MapEnemy }; 5 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/features/game/components/ship-arrangement/index.tsx: -------------------------------------------------------------------------------- 1 | import ShipArrangement from './ship-arrangement'; 2 | 3 | export { ShipArrangement }; 4 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/features/game/components/timer/index.ts: -------------------------------------------------------------------------------- 1 | import { Timer } from './timer'; 2 | 3 | export { Timer }; 4 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/features/game/components/timer/timer.module.scss: -------------------------------------------------------------------------------- 1 | .red { 2 | color: #dd1f1f; 3 | } 4 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/features/game/components/verification-modal/index.tsx: -------------------------------------------------------------------------------- 1 | import VerificationModal from './verification-modal'; 2 | 3 | export { VerificationModal }; 4 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/features/game/components/voucher-expired-modal/index.tsx: -------------------------------------------------------------------------------- 1 | import VoucherExpiredModal from './voucher-expired-modal'; 2 | 3 | export { VoucherExpiredModal }; 4 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/features/game/components/your-turn-modal/index.tsx: -------------------------------------------------------------------------------- 1 | import YourTurnModal from './your-turn-modal'; 2 | 3 | export { YourTurnModal }; 4 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/features/game/index.ts: -------------------------------------------------------------------------------- 1 | export { ShipArrangement, GameProcess, GameEndModal, Map } from './components'; 2 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/features/multiplayer/components/create-game-form/index.ts: -------------------------------------------------------------------------------- 1 | import { CreateGameForm } from './create-game-form'; 2 | 3 | export { CreateGameForm }; 4 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/features/multiplayer/components/join-game-form/index.ts: -------------------------------------------------------------------------------- 1 | import { JoinGameForm } from './join-game-form'; 2 | 3 | export { JoinGameForm }; 4 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/features/multiplayer/components/multiplayer/index.ts: -------------------------------------------------------------------------------- 1 | import { Multiplayer } from './multiplayer'; 2 | 3 | export { Multiplayer }; 4 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/features/multiplayer/components/registration/index.ts: -------------------------------------------------------------------------------- 1 | import { Registration } from './registration'; 2 | 3 | export { Registration }; 4 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/features/singleplayer/components/singleplayer/index.ts: -------------------------------------------------------------------------------- 1 | import { Singleplayer } from './singleplayer'; 2 | 3 | export { Singleplayer }; 4 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/features/wallet/components/index.ts: -------------------------------------------------------------------------------- 1 | export { WalletConnect } from './wallet-connect'; 2 | export { WalletChange } from './wallet-change'; 3 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/features/wallet/components/wallet-change/index.ts: -------------------------------------------------------------------------------- 1 | import { WalletChange } from './WalletChange'; 2 | 3 | export { WalletChange }; 4 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/features/wallet/components/wallet-connect/index.ts: -------------------------------------------------------------------------------- 1 | import { WalletConnect } from './WalletConnect'; 2 | 3 | export { WalletConnect }; 4 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/features/wallet/index.ts: -------------------------------------------------------------------------------- 1 | export { WalletConnect, WalletChange } from './components'; 2 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/features/zk/utils/index.ts: -------------------------------------------------------------------------------- 1 | export * from './utils'; 2 | export * from './poseidon'; 3 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/features/zk/utils/poseidon/index.js: -------------------------------------------------------------------------------- 1 | export { buildPoseidon } from './poseidon.js'; 2 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/src/pages/not-found.tsx: -------------------------------------------------------------------------------- 1 | import { NotFound } from '@/components/layout/not-found'; 2 | 3 | export default function NotFoundPage() { 4 | return ; 5 | } 6 | -------------------------------------------------------------------------------- /frontend/apps/battleship-zk/vite.config.ts: -------------------------------------------------------------------------------- 1 | import { viteAppsConfig } from '../../vite.apps.config'; 2 | 3 | export default viteAppsConfig; 4 | -------------------------------------------------------------------------------- /frontend/apps/battleship/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gear-foundation/dapps/d8c5cab8058f24c7ca474b566bc3d21b73078bb8/frontend/apps/battleship/public/favicon.ico -------------------------------------------------------------------------------- /frontend/apps/battleship/src/app/hooks/index.ts: -------------------------------------------------------------------------------- 1 | export { useReadState } from './api'; 2 | -------------------------------------------------------------------------------- /frontend/apps/battleship/src/assets/images/bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gear-foundation/dapps/d8c5cab8058f24c7ca474b566bc3d21b73078bb8/frontend/apps/battleship/src/assets/images/bg.png -------------------------------------------------------------------------------- /frontend/apps/battleship/src/assets/images/fire.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gear-foundation/dapps/d8c5cab8058f24c7ca474b566bc3d21b73078bb8/frontend/apps/battleship/src/assets/images/fire.gif -------------------------------------------------------------------------------- /frontend/apps/battleship/src/assets/images/sea.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gear-foundation/dapps/d8c5cab8058f24c7ca474b566bc3d21b73078bb8/frontend/apps/battleship/src/assets/images/sea.png -------------------------------------------------------------------------------- /frontend/apps/battleship/src/assets/images/smoke.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gear-foundation/dapps/d8c5cab8058f24c7ca474b566bc3d21b73078bb8/frontend/apps/battleship/src/assets/images/smoke.gif -------------------------------------------------------------------------------- /frontend/apps/battleship/src/assets/styles/_shared.scss: -------------------------------------------------------------------------------- 1 | %absoluteCenter { 2 | position: absolute; 3 | top: 50%; 4 | left: 50%; 5 | transform: translate(-50%); 6 | } 7 | -------------------------------------------------------------------------------- /frontend/apps/battleship/src/assets/styles/index.scss: -------------------------------------------------------------------------------- 1 | @use 'utils' as *; 2 | 3 | @import 'common'; 4 | -------------------------------------------------------------------------------- /frontend/apps/battleship/src/assets/styles/utils/_index.scss: -------------------------------------------------------------------------------- 1 | @forward 'breakpoints'; 2 | @forward 'mixins'; 3 | @forward 'variables'; 4 | -------------------------------------------------------------------------------- /frontend/apps/battleship/src/components/index.ts: -------------------------------------------------------------------------------- 1 | export { Header } from './layout'; 2 | export { ApiLoader, Loader } from './loaders'; 3 | export { Modal } from './ui/modal'; 4 | -------------------------------------------------------------------------------- /frontend/apps/battleship/src/components/layout/header/account-info/index.ts: -------------------------------------------------------------------------------- 1 | export { AccountInfo } from './account-info'; 2 | -------------------------------------------------------------------------------- /frontend/apps/battleship/src/components/layout/header/index.ts: -------------------------------------------------------------------------------- 1 | export { Header } from './header'; 2 | -------------------------------------------------------------------------------- /frontend/apps/battleship/src/components/layout/header/logo/index.ts: -------------------------------------------------------------------------------- 1 | export { Logo } from './logo'; 2 | -------------------------------------------------------------------------------- /frontend/apps/battleship/src/components/layout/header/navigation/index.ts: -------------------------------------------------------------------------------- 1 | export { Navigation } from './navigation'; 2 | -------------------------------------------------------------------------------- /frontend/apps/battleship/src/components/layout/index.ts: -------------------------------------------------------------------------------- 1 | export { Header } from './header'; 2 | -------------------------------------------------------------------------------- /frontend/apps/battleship/src/components/layout/not-found/index.ts: -------------------------------------------------------------------------------- 1 | export { NotFound } from './not-found'; 2 | -------------------------------------------------------------------------------- /frontend/apps/battleship/src/components/loaders/api-loader/index.ts: -------------------------------------------------------------------------------- 1 | import { ApiLoader } from './ApiLoader'; 2 | 3 | export { ApiLoader }; 4 | -------------------------------------------------------------------------------- /frontend/apps/battleship/src/components/loaders/index.ts: -------------------------------------------------------------------------------- 1 | import { ApiLoader } from './api-loader'; 2 | import { Loader } from './loader'; 3 | 4 | export { ApiLoader, Loader }; 5 | -------------------------------------------------------------------------------- /frontend/apps/battleship/src/components/loaders/loader/Loader.tsx: -------------------------------------------------------------------------------- 1 | import styles from './Loader.module.scss'; 2 | 3 | export function Loader() { 4 | return
; 5 | } 6 | -------------------------------------------------------------------------------- /frontend/apps/battleship/src/components/loaders/loader/index.ts: -------------------------------------------------------------------------------- 1 | import { Loader } from './Loader'; 2 | 3 | export { Loader }; 4 | -------------------------------------------------------------------------------- /frontend/apps/battleship/src/components/loaders/loading-error/index.ts: -------------------------------------------------------------------------------- 1 | export { LoadingError } from './loading-error'; 2 | -------------------------------------------------------------------------------- /frontend/apps/battleship/src/components/ui/alert/index.ts: -------------------------------------------------------------------------------- 1 | export { Alert, alertStyles } from './alert'; 2 | export type { AlertProps } from './alert.types'; 3 | -------------------------------------------------------------------------------- /frontend/apps/battleship/src/components/ui/balance/index.ts: -------------------------------------------------------------------------------- 1 | import { VaraBalance, PointsBalance } from './Balance'; 2 | 3 | export { VaraBalance, PointsBalance }; 4 | -------------------------------------------------------------------------------- /frontend/apps/battleship/src/components/ui/button/index.ts: -------------------------------------------------------------------------------- 1 | export { Button, buttonVariants } from './button'; 2 | export type { ButtonProps } from './button'; 3 | -------------------------------------------------------------------------------- /frontend/apps/battleship/src/components/ui/container/container.module.scss: -------------------------------------------------------------------------------- 1 | .container { 2 | width: 100%; 3 | max-width: 1240px; 4 | margin: 0 auto; 5 | } 6 | -------------------------------------------------------------------------------- /frontend/apps/battleship/src/components/ui/container/index.ts: -------------------------------------------------------------------------------- 1 | export { Container } from './container'; 2 | -------------------------------------------------------------------------------- /frontend/apps/battleship/src/components/ui/heading/index.ts: -------------------------------------------------------------------------------- 1 | export { Heading, headingVariants } from './Heading'; 2 | export type { HeadingProps } from './Heading'; 3 | -------------------------------------------------------------------------------- /frontend/apps/battleship/src/components/ui/input/index.ts: -------------------------------------------------------------------------------- 1 | import { Input } from './Input'; 2 | 3 | export { Input }; 4 | -------------------------------------------------------------------------------- /frontend/apps/battleship/src/components/ui/modal/index.ts: -------------------------------------------------------------------------------- 1 | import { Modal } from './Modal'; 2 | import { ModalBottom } from './ModalBottom'; 3 | 4 | export { Modal, ModalBottom }; 5 | -------------------------------------------------------------------------------- /frontend/apps/battleship/src/components/ui/scroll-area/index.ts: -------------------------------------------------------------------------------- 1 | export { ScrollArea, ScrollBar } from './scroll-area'; 2 | -------------------------------------------------------------------------------- /frontend/apps/battleship/src/components/ui/text-gradient/index.ts: -------------------------------------------------------------------------------- 1 | import { TextGradient } from './text-gradient'; 2 | 3 | export { TextGradient }; 4 | -------------------------------------------------------------------------------- /frontend/apps/battleship/src/components/ui/text/index.ts: -------------------------------------------------------------------------------- 1 | export { Text, textVariants } from './text'; 2 | export type { TextProps } from './text'; 3 | -------------------------------------------------------------------------------- /frontend/apps/battleship/src/features/game/components/game-end-modal/index.tsx: -------------------------------------------------------------------------------- 1 | import GameEndModal from './game-end-modal'; 2 | 3 | export { GameEndModal }; 4 | -------------------------------------------------------------------------------- /frontend/apps/battleship/src/features/game/components/game-process/index.ts: -------------------------------------------------------------------------------- 1 | import GameProcess from './game-process'; 2 | 3 | export { GameProcess }; 4 | -------------------------------------------------------------------------------- /frontend/apps/battleship/src/features/game/components/map/index.tsx: -------------------------------------------------------------------------------- 1 | import Map from './map'; 2 | import MapEnemy from './mapEnemy'; 3 | 4 | export { Map, MapEnemy }; 5 | -------------------------------------------------------------------------------- /frontend/apps/battleship/src/features/game/components/ship-arrangement/index.tsx: -------------------------------------------------------------------------------- 1 | import ShipArrangement from './ship-arrangement'; 2 | 3 | export { ShipArrangement }; 4 | -------------------------------------------------------------------------------- /frontend/apps/battleship/src/features/game/index.ts: -------------------------------------------------------------------------------- 1 | export { ShipArrangement, GameProcess, GameEndModal, Map } from './components'; 2 | -------------------------------------------------------------------------------- /frontend/apps/battleship/src/features/wallet/components/index.ts: -------------------------------------------------------------------------------- 1 | export { WalletConnect } from './wallet-connect'; 2 | export { WalletChange } from './wallet-change'; 3 | -------------------------------------------------------------------------------- /frontend/apps/battleship/src/features/wallet/components/wallet-change/index.ts: -------------------------------------------------------------------------------- 1 | import { WalletChange } from './WalletChange'; 2 | 3 | export { WalletChange }; 4 | -------------------------------------------------------------------------------- /frontend/apps/battleship/src/features/wallet/components/wallet-connect/index.ts: -------------------------------------------------------------------------------- 1 | import { WalletConnect } from './WalletConnect'; 2 | 3 | export { WalletConnect }; 4 | -------------------------------------------------------------------------------- /frontend/apps/battleship/src/features/wallet/index.ts: -------------------------------------------------------------------------------- 1 | export { WalletConnect, WalletChange } from './components'; 2 | -------------------------------------------------------------------------------- /frontend/apps/battleship/src/pages/home.tsx: -------------------------------------------------------------------------------- 1 | export default function Home() { 2 | return <>; 3 | } 4 | -------------------------------------------------------------------------------- /frontend/apps/battleship/src/pages/not-found.tsx: -------------------------------------------------------------------------------- 1 | import { NotFound } from '@/components/layout/not-found'; 2 | 3 | export default function NotFoundPage() { 4 | return ; 5 | } 6 | -------------------------------------------------------------------------------- /frontend/apps/battleship/src/vite-env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | -------------------------------------------------------------------------------- /frontend/apps/battleship/vite.config.ts: -------------------------------------------------------------------------------- 1 | import { viteAppsConfig } from '../../vite.apps.config'; 2 | 3 | export default viteAppsConfig; 4 | -------------------------------------------------------------------------------- /frontend/apps/galactic-express/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gear-foundation/dapps/d8c5cab8058f24c7ca474b566bc3d21b73078bb8/frontend/apps/galactic-express/public/favicon.ico -------------------------------------------------------------------------------- /frontend/apps/galactic-express/src/app/utils/index.ts: -------------------------------------------------------------------------------- 1 | export * from './sails'; 2 | -------------------------------------------------------------------------------- /frontend/apps/galactic-express/src/app/utils/sails/index.ts: -------------------------------------------------------------------------------- 1 | export * from './sails'; 2 | export * from './lib'; 3 | export * from './events'; 4 | export * from './queries'; 5 | export * from './messages'; 6 | -------------------------------------------------------------------------------- /frontend/apps/galactic-express/src/app/utils/sails/queries/index.ts: -------------------------------------------------------------------------------- 1 | export { useGetGameQuery } from './use-get-game-query'; 2 | -------------------------------------------------------------------------------- /frontend/apps/galactic-express/src/assets/styles/_shared.scss: -------------------------------------------------------------------------------- 1 | %absoluteCenter { 2 | position: absolute; 3 | top: 50%; 4 | left: 50%; 5 | transform: translate(-50%); 6 | } 7 | -------------------------------------------------------------------------------- /frontend/apps/galactic-express/src/assets/styles/index.scss: -------------------------------------------------------------------------------- 1 | @use '@gear-js/ui/resets'; 2 | @use '@gear-js/ui/typography'; 3 | -------------------------------------------------------------------------------- /frontend/apps/galactic-express/src/components/layout/TextField/index.ts: -------------------------------------------------------------------------------- 1 | export * from './TextField'; 2 | -------------------------------------------------------------------------------- /frontend/apps/galactic-express/src/components/layout/card/index.ts: -------------------------------------------------------------------------------- 1 | import { Card } from './Card'; 2 | 3 | export { Card }; 4 | -------------------------------------------------------------------------------- /frontend/apps/galactic-express/src/components/layout/container/Container.module.scss: -------------------------------------------------------------------------------- 1 | .container { 2 | padding-bottom: 25px; 3 | } 4 | -------------------------------------------------------------------------------- /frontend/apps/galactic-express/src/components/layout/container/index.ts: -------------------------------------------------------------------------------- 1 | import { Container } from './Container'; 2 | 3 | export { Container }; 4 | -------------------------------------------------------------------------------- /frontend/apps/galactic-express/src/components/layout/header/index.ts: -------------------------------------------------------------------------------- 1 | import { Header } from './Header'; 2 | 3 | export { Header }; 4 | -------------------------------------------------------------------------------- /frontend/apps/galactic-express/src/components/layout/modal/index.ts: -------------------------------------------------------------------------------- 1 | import { Modal } from './Modal'; 2 | 3 | export { Modal }; 4 | -------------------------------------------------------------------------------- /frontend/apps/galactic-express/src/components/loaders/api-loader/index.ts: -------------------------------------------------------------------------------- 1 | import { ApiLoader } from './ApiLoader'; 2 | 3 | export { ApiLoader }; 4 | -------------------------------------------------------------------------------- /frontend/apps/galactic-express/src/components/loaders/index.ts: -------------------------------------------------------------------------------- 1 | import { ApiLoader } from './api-loader'; 2 | import { Loader } from './loader'; 3 | 4 | export { ApiLoader, Loader }; 5 | -------------------------------------------------------------------------------- /frontend/apps/galactic-express/src/components/loaders/loader/index.ts: -------------------------------------------------------------------------------- 1 | import { Loader } from './Loader'; 2 | 3 | export { Loader }; 4 | -------------------------------------------------------------------------------- /frontend/apps/galactic-express/src/features/session/components/cancel-game-button/index.ts: -------------------------------------------------------------------------------- 1 | import { CancelGameButton } from './CancelGameButton'; 2 | 3 | export { CancelGameButton }; 4 | -------------------------------------------------------------------------------- /frontend/apps/galactic-express/src/features/session/components/form/index.ts: -------------------------------------------------------------------------------- 1 | import { Form } from './Form'; 2 | 3 | export { Form }; 4 | -------------------------------------------------------------------------------- /frontend/apps/galactic-express/src/features/session/components/game-cancelled-modal/index.ts: -------------------------------------------------------------------------------- 1 | import { GameCancelledModal } from './GameCancelledModal'; 2 | 3 | export { GameCancelledModal }; 4 | -------------------------------------------------------------------------------- /frontend/apps/galactic-express/src/features/session/components/game-found-modal/index.ts: -------------------------------------------------------------------------------- 1 | import { GameFoundModal } from './GameFoundModal'; 2 | 3 | export { GameFoundModal }; 4 | -------------------------------------------------------------------------------- /frontend/apps/galactic-express/src/features/session/components/game-not-found-modal/index.ts: -------------------------------------------------------------------------------- 1 | import { TextModal } from './TextModal'; 2 | 3 | export { TextModal }; 4 | -------------------------------------------------------------------------------- /frontend/apps/galactic-express/src/features/session/components/index.ts: -------------------------------------------------------------------------------- 1 | import { Session } from './session'; 2 | import { Start } from './start'; 3 | 4 | export { Start, Session }; 5 | -------------------------------------------------------------------------------- /frontend/apps/galactic-express/src/features/session/components/participants-table/index.ts: -------------------------------------------------------------------------------- 1 | import { ParticipantsTable } from './ParticipantsTable'; 2 | 3 | export { ParticipantsTable }; 4 | -------------------------------------------------------------------------------- /frontend/apps/galactic-express/src/features/session/components/probability/index.ts: -------------------------------------------------------------------------------- 1 | import { Probability } from './Probability'; 2 | 3 | export { Probability }; 4 | -------------------------------------------------------------------------------- /frontend/apps/galactic-express/src/features/session/components/radar/index.ts: -------------------------------------------------------------------------------- 1 | import { Radar } from './Radar'; 2 | 3 | export { Radar }; 4 | -------------------------------------------------------------------------------- /frontend/apps/galactic-express/src/features/session/components/range/index.ts: -------------------------------------------------------------------------------- 1 | import { Range } from './Range'; 2 | 3 | export { Range }; 4 | -------------------------------------------------------------------------------- /frontend/apps/galactic-express/src/features/session/components/session-passed-info/index.ts: -------------------------------------------------------------------------------- 1 | import { SessionPassedInfo } from './SessionPassedInfo'; 2 | 3 | export { SessionPassedInfo }; 4 | -------------------------------------------------------------------------------- /frontend/apps/galactic-express/src/features/session/components/session/index.ts: -------------------------------------------------------------------------------- 1 | import { Session } from './Session'; 2 | 3 | export { Session }; 4 | -------------------------------------------------------------------------------- /frontend/apps/galactic-express/src/features/session/components/start/index.ts: -------------------------------------------------------------------------------- 1 | import { Start } from './Start'; 2 | 3 | export { Start }; 4 | -------------------------------------------------------------------------------- /frontend/apps/galactic-express/src/features/session/components/table/index.ts: -------------------------------------------------------------------------------- 1 | import { Table } from './Table'; 2 | 3 | export { Table }; 4 | -------------------------------------------------------------------------------- /frontend/apps/galactic-express/src/features/session/components/traits/index.ts: -------------------------------------------------------------------------------- 1 | import { Traits } from './Traits'; 2 | 3 | export { Traits }; 4 | -------------------------------------------------------------------------------- /frontend/apps/galactic-express/src/features/session/components/warning/index.ts: -------------------------------------------------------------------------------- 1 | import { Warning } from './Warning'; 2 | 3 | export { Warning }; 4 | -------------------------------------------------------------------------------- /frontend/apps/galactic-express/src/features/session/components/win-status/index.ts: -------------------------------------------------------------------------------- 1 | import { WinStatus } from './WinStatus'; 2 | 3 | export { WinStatus }; 4 | -------------------------------------------------------------------------------- /frontend/apps/galactic-express/src/features/welcome/components/enter-contract-address/index.ts: -------------------------------------------------------------------------------- 1 | import { RequestGame } from './RequestGame'; 2 | 3 | export { RequestGame }; 4 | -------------------------------------------------------------------------------- /frontend/apps/galactic-express/src/features/welcome/components/game-intro/index.ts: -------------------------------------------------------------------------------- 1 | import { GameIntro } from './GameIntro'; 2 | 3 | export { GameIntro }; 4 | -------------------------------------------------------------------------------- /frontend/apps/galactic-express/src/features/welcome/components/welcome/index.ts: -------------------------------------------------------------------------------- 1 | import { Welcome } from './Welcome'; 2 | 3 | export { Welcome }; 4 | -------------------------------------------------------------------------------- /frontend/apps/galactic-express/src/pages/home/index.ts: -------------------------------------------------------------------------------- 1 | import { Home } from './Home'; 2 | 3 | export { Home }; 4 | -------------------------------------------------------------------------------- /frontend/apps/galactic-express/src/utils/_index.scss: -------------------------------------------------------------------------------- 1 | @forward 'styles'; 2 | -------------------------------------------------------------------------------- /frontend/apps/galactic-express/src/utils/styles/_index.scss: -------------------------------------------------------------------------------- 1 | @forward 'breakpoints'; 2 | @forward 'mixins'; 3 | -------------------------------------------------------------------------------- /frontend/apps/galactic-express/src/vite-env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | -------------------------------------------------------------------------------- /frontend/apps/galactic-express/vite.config.ts: -------------------------------------------------------------------------------- 1 | import { viteAppsConfig } from '../../vite.apps.config'; 2 | 3 | export default viteAppsConfig; 4 | -------------------------------------------------------------------------------- /frontend/apps/nft-marketplace/public/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gear-foundation/dapps/d8c5cab8058f24c7ca474b566bc3d21b73078bb8/frontend/apps/nft-marketplace/public/favicon.png -------------------------------------------------------------------------------- /frontend/apps/nft-marketplace/src/app/hooks/index.ts: -------------------------------------------------------------------------------- 1 | export { usePending } from './use-pending'; 2 | export * from './use-execute-with-pendig'; 3 | export * from './use-sign-and-send'; 4 | -------------------------------------------------------------------------------- /frontend/apps/nft-marketplace/src/app/utils/index.ts: -------------------------------------------------------------------------------- 1 | export * from './sails'; 2 | -------------------------------------------------------------------------------- /frontend/apps/nft-marketplace/src/app/utils/sails/index.ts: -------------------------------------------------------------------------------- 1 | export * from './sails'; 2 | export * from './queries'; 3 | export * from './messages'; 4 | -------------------------------------------------------------------------------- /frontend/apps/nft-marketplace/src/assets/styles/_shared.scss: -------------------------------------------------------------------------------- 1 | %absoluteCenter { 2 | position: absolute; 3 | top: 50%; 4 | left: 50%; 5 | transform: translate(-50%); 6 | } 7 | -------------------------------------------------------------------------------- /frontend/apps/nft-marketplace/src/assets/styles/index.scss: -------------------------------------------------------------------------------- 1 | @use '@gear-js/ui/resets'; 2 | @use '@gear-js/ui/typography'; 3 | -------------------------------------------------------------------------------- /frontend/apps/nft-marketplace/src/components/info-text/InfoText.module.scss: -------------------------------------------------------------------------------- 1 | @use '@gear-js/ui/variables' as *; 2 | 3 | .text { 4 | font-size: $fontSizeMedium; 5 | color: $textColorSecondary; 6 | } 7 | -------------------------------------------------------------------------------- /frontend/apps/nft-marketplace/src/components/info-text/index.ts: -------------------------------------------------------------------------------- 1 | import { InfoText } from './InfoText'; 2 | 3 | export { InfoText }; 4 | -------------------------------------------------------------------------------- /frontend/apps/nft-marketplace/src/components/layout/header/index.ts: -------------------------------------------------------------------------------- 1 | import { Header } from './Header'; 2 | 3 | export { Header }; 4 | -------------------------------------------------------------------------------- /frontend/apps/nft-marketplace/src/components/layout/header/logo/index.ts: -------------------------------------------------------------------------------- 1 | import { Logo } from './Logo'; 2 | 3 | export { Logo }; 4 | -------------------------------------------------------------------------------- /frontend/apps/nft-marketplace/src/components/layout/header/menu/index.ts: -------------------------------------------------------------------------------- 1 | import { Menu } from './Menu'; 2 | 3 | export { Menu }; 4 | -------------------------------------------------------------------------------- /frontend/apps/nft-marketplace/src/components/layout/index.ts: -------------------------------------------------------------------------------- 1 | import { Header } from './header'; 2 | import { List } from './list'; 3 | 4 | export { Header, List }; 5 | -------------------------------------------------------------------------------- /frontend/apps/nft-marketplace/src/components/layout/list/List.module.scss: -------------------------------------------------------------------------------- 1 | .list { 2 | display: grid; 3 | grid-template-columns: repeat(3, 1fr); 4 | gap: 30px; 5 | } 6 | -------------------------------------------------------------------------------- /frontend/apps/nft-marketplace/src/components/layout/list/filter/button/index.ts: -------------------------------------------------------------------------------- 1 | import { Button } from './Button'; 2 | 3 | export { Button }; 4 | -------------------------------------------------------------------------------- /frontend/apps/nft-marketplace/src/components/layout/list/filter/index.ts: -------------------------------------------------------------------------------- 1 | import { Filter } from './Filter'; 2 | 3 | export { Filter }; 4 | -------------------------------------------------------------------------------- /frontend/apps/nft-marketplace/src/components/layout/list/header/index.ts: -------------------------------------------------------------------------------- 1 | import { Header } from './Header'; 2 | 3 | export { Header }; 4 | -------------------------------------------------------------------------------- /frontend/apps/nft-marketplace/src/components/layout/list/index.ts: -------------------------------------------------------------------------------- 1 | import { List } from './List'; 2 | 3 | export { List }; 4 | -------------------------------------------------------------------------------- /frontend/apps/nft-marketplace/src/components/layout/list/nft/index.ts: -------------------------------------------------------------------------------- 1 | import { NFT } from './NFT'; 2 | 3 | export { NFT }; 4 | -------------------------------------------------------------------------------- /frontend/apps/nft-marketplace/src/components/listing/card/index.ts: -------------------------------------------------------------------------------- 1 | import { Card } from './Card'; 2 | 3 | export { Card }; 4 | -------------------------------------------------------------------------------- /frontend/apps/nft-marketplace/src/components/listing/index.ts: -------------------------------------------------------------------------------- 1 | import { Listing } from './Listing'; 2 | 3 | export { Listing }; 4 | -------------------------------------------------------------------------------- /frontend/apps/nft-marketplace/src/components/listing/offer/index.ts: -------------------------------------------------------------------------------- 1 | import { Offer } from './Offer'; 2 | 3 | export { Offer }; 4 | -------------------------------------------------------------------------------- /frontend/apps/nft-marketplace/src/components/loaders/api-loader/index.ts: -------------------------------------------------------------------------------- 1 | import { ApiLoader } from './ApiLoader'; 2 | 3 | export { ApiLoader }; 4 | -------------------------------------------------------------------------------- /frontend/apps/nft-marketplace/src/components/loaders/index.ts: -------------------------------------------------------------------------------- 1 | import { ApiLoader } from './api-loader'; 2 | import { Loader } from './loader'; 3 | 4 | export { ApiLoader, Loader }; 5 | -------------------------------------------------------------------------------- /frontend/apps/nft-marketplace/src/components/loaders/loader/index.ts: -------------------------------------------------------------------------------- 1 | import { Loader } from './Loader'; 2 | 3 | export { Loader }; 4 | -------------------------------------------------------------------------------- /frontend/apps/nft-marketplace/src/components/modals/confirmation-modal/index.ts: -------------------------------------------------------------------------------- 1 | import { ConfirmationModal } from './ConfirmationModal'; 2 | 3 | export { ConfirmationModal }; 4 | -------------------------------------------------------------------------------- /frontend/apps/nft-marketplace/src/components/modals/index.module.scss: -------------------------------------------------------------------------------- 1 | .form { 2 | & > *:not(:last-child) { 3 | margin-bottom: 20px; 4 | } 5 | } 6 | -------------------------------------------------------------------------------- /frontend/apps/nft-marketplace/src/components/modals/price-modal/index.ts: -------------------------------------------------------------------------------- 1 | import { PriceModal } from './PriceModal'; 2 | 3 | export { PriceModal }; 4 | -------------------------------------------------------------------------------- /frontend/apps/nft-marketplace/src/components/on-login/index.ts: -------------------------------------------------------------------------------- 1 | import { OnLogin } from './OnLogin'; 2 | 3 | export { OnLogin }; 4 | -------------------------------------------------------------------------------- /frontend/apps/nft-marketplace/src/context/index.tsx: -------------------------------------------------------------------------------- 1 | import { IPFSContext, IPFSProvider } from './IPFS'; 2 | 3 | export { IPFSContext, IPFSProvider }; 4 | -------------------------------------------------------------------------------- /frontend/apps/nft-marketplace/src/pages/create/attributes/index.ts: -------------------------------------------------------------------------------- 1 | import { Attributes } from './Attributes'; 2 | 3 | export { Attributes }; 4 | -------------------------------------------------------------------------------- /frontend/apps/nft-marketplace/src/pages/create/index.ts: -------------------------------------------------------------------------------- 1 | import { Create } from './Create'; 2 | 3 | export { Create }; 4 | -------------------------------------------------------------------------------- /frontend/apps/nft-marketplace/src/pages/listing/auction-listing/index.ts: -------------------------------------------------------------------------------- 1 | import { AuctionListing } from './AuctionListing'; 2 | 3 | export { AuctionListing }; 4 | -------------------------------------------------------------------------------- /frontend/apps/nft-marketplace/src/pages/listing/index.ts: -------------------------------------------------------------------------------- 1 | import { Listing } from './Listing'; 2 | 3 | export { Listing }; 4 | -------------------------------------------------------------------------------- /frontend/apps/nft-marketplace/src/pages/listing/owner-listing/auction-modal/index.ts: -------------------------------------------------------------------------------- 1 | import { AuctionModal } from './AuctionModal'; 2 | 3 | export { AuctionModal }; 4 | -------------------------------------------------------------------------------- /frontend/apps/nft-marketplace/src/pages/listing/owner-listing/index.ts: -------------------------------------------------------------------------------- 1 | import { OwnerListing } from './OwnerListing'; 2 | 3 | export { OwnerListing }; 4 | -------------------------------------------------------------------------------- /frontend/apps/nft-marketplace/src/pages/listing/sale-listing/index.ts: -------------------------------------------------------------------------------- 1 | import { SaleListing } from './SaleListing'; 2 | 3 | export { SaleListing }; 4 | -------------------------------------------------------------------------------- /frontend/apps/nft-marketplace/src/pages/listings/index.ts: -------------------------------------------------------------------------------- 1 | import { Listings } from './Listings'; 2 | 3 | export { Listings }; 4 | -------------------------------------------------------------------------------- /frontend/apps/nft-marketplace/src/pages/me/index.ts: -------------------------------------------------------------------------------- 1 | import { Me } from './Me'; 2 | 3 | export { Me }; 4 | -------------------------------------------------------------------------------- /frontend/apps/nft-marketplace/src/vite-env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | -------------------------------------------------------------------------------- /frontend/apps/nft-marketplace/vite.config.ts: -------------------------------------------------------------------------------- 1 | import { viteAppsConfig } from '../../vite.apps.config'; 2 | 3 | export default viteAppsConfig; 4 | -------------------------------------------------------------------------------- /frontend/apps/nft-master/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gear-foundation/dapps/d8c5cab8058f24c7ca474b566bc3d21b73078bb8/frontend/apps/nft-master/public/favicon.ico -------------------------------------------------------------------------------- /frontend/apps/nft-master/src/assets/images/bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gear-foundation/dapps/d8c5cab8058f24c7ca474b566bc3d21b73078bb8/frontend/apps/nft-master/src/assets/images/bg.png -------------------------------------------------------------------------------- /frontend/apps/nft-master/src/assets/images/mobile-bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gear-foundation/dapps/d8c5cab8058f24c7ca474b566bc3d21b73078bb8/frontend/apps/nft-master/src/assets/images/mobile-bg.png -------------------------------------------------------------------------------- /frontend/apps/nft-master/src/components/layout/container/index.ts: -------------------------------------------------------------------------------- 1 | import { Container } from './Container'; 2 | 3 | export { Container }; 4 | -------------------------------------------------------------------------------- /frontend/apps/nft-master/src/components/layout/header/index.ts: -------------------------------------------------------------------------------- 1 | import { Header } from './Header'; 2 | 3 | export { Header }; 4 | -------------------------------------------------------------------------------- /frontend/apps/nft-master/src/components/layout/header/logo/index.ts: -------------------------------------------------------------------------------- 1 | import { Logo } from './Logo'; 2 | 3 | export { Logo }; 4 | -------------------------------------------------------------------------------- /frontend/apps/nft-master/src/components/layout/index.ts: -------------------------------------------------------------------------------- 1 | import { Container } from './container'; 2 | import { Header } from './header'; 3 | 4 | export { Header, Container }; 5 | -------------------------------------------------------------------------------- /frontend/apps/nft-master/src/components/loaders/api-loader/index.ts: -------------------------------------------------------------------------------- 1 | import { ApiLoader } from './ApiLoader'; 2 | 3 | export { ApiLoader }; 4 | -------------------------------------------------------------------------------- /frontend/apps/nft-master/src/components/loaders/index.ts: -------------------------------------------------------------------------------- 1 | import { ApiLoader } from './api-loader'; 2 | import { Loader } from './loader'; 3 | 4 | export { ApiLoader, Loader }; 5 | -------------------------------------------------------------------------------- /frontend/apps/nft-master/src/components/loaders/loader/index.ts: -------------------------------------------------------------------------------- 1 | import { Loader } from './Loader'; 2 | 3 | export { Loader }; 4 | -------------------------------------------------------------------------------- /frontend/apps/nft-master/src/components/modal/index.ts: -------------------------------------------------------------------------------- 1 | import { Modal } from './Modal'; 2 | 3 | export { Modal }; 4 | -------------------------------------------------------------------------------- /frontend/apps/nft-master/src/components/ui/alert/index.ts: -------------------------------------------------------------------------------- 1 | export { Alert, alertStyles } from './alert'; 2 | export type { AlertProps } from './alert.types'; 3 | -------------------------------------------------------------------------------- /frontend/apps/nft-master/src/components/ui/balance/index.ts: -------------------------------------------------------------------------------- 1 | export { VaraBalance } from './Balance'; 2 | -------------------------------------------------------------------------------- /frontend/apps/nft-master/src/components/ui/button/index.ts: -------------------------------------------------------------------------------- 1 | export { Button, buttonVariants } from './button'; 2 | -------------------------------------------------------------------------------- /frontend/apps/nft-master/src/components/ui/heading/index.ts: -------------------------------------------------------------------------------- 1 | export { Heading } from './Heading'; 2 | -------------------------------------------------------------------------------- /frontend/apps/nft-master/src/components/ui/modal/index.ts: -------------------------------------------------------------------------------- 1 | import { Modal } from './Modal'; 2 | 3 | export { Modal }; 4 | -------------------------------------------------------------------------------- /frontend/apps/nft-master/src/components/ui/scroll-area/index.ts: -------------------------------------------------------------------------------- 1 | export { ScrollArea, ScrollBar } from './scroll-area'; 2 | -------------------------------------------------------------------------------- /frontend/apps/nft-master/src/components/ui/text-gradient/index.ts: -------------------------------------------------------------------------------- 1 | import { TextGradient } from './text-gradient'; 2 | 3 | export { TextGradient }; 4 | -------------------------------------------------------------------------------- /frontend/apps/nft-master/src/components/ui/text/index.ts: -------------------------------------------------------------------------------- 1 | export { Text, textVariants } from './text'; 2 | export type { TextProps } from './text'; 3 | -------------------------------------------------------------------------------- /frontend/apps/nft-master/src/features/nfts/components/index.ts: -------------------------------------------------------------------------------- 1 | import { NFT } from './nft'; 2 | import { NFTs } from './nfts'; 3 | import { Search } from './search'; 4 | 5 | export { NFTs, NFT, Search }; 6 | -------------------------------------------------------------------------------- /frontend/apps/nft-master/src/features/nfts/components/nft/index.ts: -------------------------------------------------------------------------------- 1 | import { NFT } from './NFT'; 2 | 3 | export { NFT }; 4 | -------------------------------------------------------------------------------- /frontend/apps/nft-master/src/features/nfts/components/nfts/index.ts: -------------------------------------------------------------------------------- 1 | import { NFTs } from './NFTs'; 2 | 3 | export { NFTs }; 4 | -------------------------------------------------------------------------------- /frontend/apps/nft-master/src/features/nfts/components/search/index.ts: -------------------------------------------------------------------------------- 1 | import { Search } from './Search'; 2 | 3 | export { Search }; 4 | -------------------------------------------------------------------------------- /frontend/apps/nft-master/src/features/nfts/index.ts: -------------------------------------------------------------------------------- 1 | export { NFTs, NFT, Search } from './components'; 2 | export { useNFTSetup, useNFTs } from './hooks'; 3 | -------------------------------------------------------------------------------- /frontend/apps/nft-master/src/features/wallet/assets/index.ts: -------------------------------------------------------------------------------- 1 | export { PolkadotSVG, SubWalletSVG, TalismanSVG, EnkryptSVG, ExitSVG, NovaIcon } from './images'; 2 | -------------------------------------------------------------------------------- /frontend/apps/nft-master/src/features/wallet/components/index.ts: -------------------------------------------------------------------------------- 1 | import { Wallet } from './wallet'; 2 | import { WalletModal } from './wallet-modal'; 3 | 4 | export { Wallet, WalletModal }; 5 | -------------------------------------------------------------------------------- /frontend/apps/nft-master/src/features/wallet/components/wallet-item/index.ts: -------------------------------------------------------------------------------- 1 | import { WalletItem } from './WalletItem'; 2 | 3 | export { WalletItem }; 4 | -------------------------------------------------------------------------------- /frontend/apps/nft-master/src/features/wallet/components/wallet-modal/index.ts: -------------------------------------------------------------------------------- 1 | import { WalletModal } from './WalletModal'; 2 | 3 | export { WalletModal }; 4 | -------------------------------------------------------------------------------- /frontend/apps/nft-master/src/features/wallet/components/wallet/index.ts: -------------------------------------------------------------------------------- 1 | import { Wallet } from './Wallet'; 2 | 3 | export { Wallet }; 4 | -------------------------------------------------------------------------------- /frontend/apps/nft-master/src/features/wallet/index.ts: -------------------------------------------------------------------------------- 1 | import { Wallet, WalletModal } from './components'; 2 | 3 | export { Wallet, WalletModal }; 4 | -------------------------------------------------------------------------------- /frontend/apps/nft-master/src/features/welcome/index.ts: -------------------------------------------------------------------------------- 1 | import { Welcome } from './Welcome'; 2 | 3 | export { Welcome }; 4 | -------------------------------------------------------------------------------- /frontend/apps/nft-master/src/pages/home/index.ts: -------------------------------------------------------------------------------- 1 | import { Home } from './Home'; 2 | 3 | export { Home }; 4 | -------------------------------------------------------------------------------- /frontend/apps/nft-master/src/pages/nft/index.ts: -------------------------------------------------------------------------------- 1 | import { NFT } from './NFT'; 2 | 3 | export { NFT }; 4 | -------------------------------------------------------------------------------- /frontend/apps/nft-master/src/pages/not-found/index.ts: -------------------------------------------------------------------------------- 1 | export { NotFound } from './not-found'; 2 | -------------------------------------------------------------------------------- /frontend/apps/nft-master/src/utils/_index.scss: -------------------------------------------------------------------------------- 1 | @forward 'styles'; 2 | -------------------------------------------------------------------------------- /frontend/apps/nft-master/src/utils/styles/_index.scss: -------------------------------------------------------------------------------- 1 | @forward 'breakpoints'; 2 | @forward 'mixins'; 3 | @forward 'variables'; 4 | -------------------------------------------------------------------------------- /frontend/apps/nft-master/src/vite-env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | -------------------------------------------------------------------------------- /frontend/apps/nft-master/vite.config.ts: -------------------------------------------------------------------------------- 1 | import { viteAppsConfig } from '../../vite.apps.config'; 2 | 3 | export default viteAppsConfig; 4 | -------------------------------------------------------------------------------- /frontend/apps/non-fungible-token/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gear-foundation/dapps/d8c5cab8058f24c7ca474b566bc3d21b73078bb8/frontend/apps/non-fungible-token/public/favicon.ico -------------------------------------------------------------------------------- /frontend/apps/non-fungible-token/src/assets/styles/index.scss: -------------------------------------------------------------------------------- 1 | @use '@gear-js/ui/resets'; 2 | @use '@gear-js/ui/typography'; 3 | -------------------------------------------------------------------------------- /frontend/apps/non-fungible-token/src/components/info-text/InfoText.module.scss: -------------------------------------------------------------------------------- 1 | @use '@gear-js/ui/variables' as *; 2 | 3 | .text { 4 | font-size: $fontSizeMedium; 5 | color: $textColorSecondary; 6 | } 7 | -------------------------------------------------------------------------------- /frontend/apps/non-fungible-token/src/components/info-text/index.ts: -------------------------------------------------------------------------------- 1 | import { InfoText } from './InfoText'; 2 | 3 | export { InfoText }; 4 | -------------------------------------------------------------------------------- /frontend/apps/non-fungible-token/src/components/layout/header/create-link/index.ts: -------------------------------------------------------------------------------- 1 | import { CreateLink } from './CreateLink'; 2 | 3 | export { CreateLink }; 4 | -------------------------------------------------------------------------------- /frontend/apps/non-fungible-token/src/components/layout/header/index.ts: -------------------------------------------------------------------------------- 1 | import { Header } from './Header'; 2 | 3 | export { Header }; 4 | -------------------------------------------------------------------------------- /frontend/apps/non-fungible-token/src/components/layout/header/logo/index.ts: -------------------------------------------------------------------------------- 1 | import { Logo } from './Logo'; 2 | 3 | export { Logo }; 4 | -------------------------------------------------------------------------------- /frontend/apps/non-fungible-token/src/components/layout/index.ts: -------------------------------------------------------------------------------- 1 | import { Header } from './header'; 2 | 3 | export { Header }; 4 | -------------------------------------------------------------------------------- /frontend/apps/non-fungible-token/src/components/loaders/api-loader/index.ts: -------------------------------------------------------------------------------- 1 | import { ApiLoader } from './ApiLoader'; 2 | 3 | export { ApiLoader }; 4 | -------------------------------------------------------------------------------- /frontend/apps/non-fungible-token/src/components/loaders/index.ts: -------------------------------------------------------------------------------- 1 | import { ApiLoader } from './api-loader'; 2 | import { Loader } from './loader'; 3 | 4 | export { ApiLoader, Loader }; 5 | -------------------------------------------------------------------------------- /frontend/apps/non-fungible-token/src/components/loaders/loader/index.ts: -------------------------------------------------------------------------------- 1 | import { Loader } from './Loader'; 2 | 3 | export { Loader }; 4 | -------------------------------------------------------------------------------- /frontend/apps/non-fungible-token/src/components/modals/address-modal/index.ts: -------------------------------------------------------------------------------- 1 | import { AddressModal } from './AddressModal'; 2 | 3 | export { AddressModal }; 4 | -------------------------------------------------------------------------------- /frontend/apps/non-fungible-token/src/components/modals/confirmation-modal/index.ts: -------------------------------------------------------------------------------- 1 | import { ConfirmationModal } from './ConfirmationModal'; 2 | 3 | export { ConfirmationModal }; 4 | -------------------------------------------------------------------------------- /frontend/apps/non-fungible-token/src/components/on-login/index.ts: -------------------------------------------------------------------------------- 1 | import { OnLogin } from './OnLogin'; 2 | 3 | export { OnLogin }; 4 | -------------------------------------------------------------------------------- /frontend/apps/non-fungible-token/src/context/index.ts: -------------------------------------------------------------------------------- 1 | import { IPFSContext, IPFSProvider } from './IPFS'; 2 | 3 | export { IPFSContext, IPFSProvider }; 4 | -------------------------------------------------------------------------------- /frontend/apps/non-fungible-token/src/pages/create/attributes/index.ts: -------------------------------------------------------------------------------- 1 | import { Attributes } from './Attributes'; 2 | 3 | export { Attributes }; 4 | -------------------------------------------------------------------------------- /frontend/apps/non-fungible-token/src/pages/create/index.ts: -------------------------------------------------------------------------------- 1 | import { Create } from './Create'; 2 | 3 | export { Create }; 4 | -------------------------------------------------------------------------------- /frontend/apps/non-fungible-token/src/pages/home/filter/button/index.ts: -------------------------------------------------------------------------------- 1 | import { Button } from './Button'; 2 | 3 | export { Button }; 4 | -------------------------------------------------------------------------------- /frontend/apps/non-fungible-token/src/pages/home/filter/index.ts: -------------------------------------------------------------------------------- 1 | import { Filter } from './Filter'; 2 | 3 | export { Filter }; 4 | -------------------------------------------------------------------------------- /frontend/apps/non-fungible-token/src/pages/home/index.ts: -------------------------------------------------------------------------------- 1 | import { Home } from './Home'; 2 | 3 | export { Home }; 4 | -------------------------------------------------------------------------------- /frontend/apps/non-fungible-token/src/pages/home/nft/index.ts: -------------------------------------------------------------------------------- 1 | import { NFT } from './NFT'; 2 | 3 | export { NFT }; 4 | -------------------------------------------------------------------------------- /frontend/apps/non-fungible-token/src/pages/nft/addresses/index.ts: -------------------------------------------------------------------------------- 1 | import { Addresses } from './Addresses'; 2 | 3 | export { Addresses }; 4 | -------------------------------------------------------------------------------- /frontend/apps/non-fungible-token/src/pages/nft/attributes/index.ts: -------------------------------------------------------------------------------- 1 | import { Attributes } from './Attributes'; 2 | 3 | export { Attributes }; 4 | -------------------------------------------------------------------------------- /frontend/apps/non-fungible-token/src/pages/nft/card/index.ts: -------------------------------------------------------------------------------- 1 | import { Card } from './Card'; 2 | 3 | export { Card }; 4 | -------------------------------------------------------------------------------- /frontend/apps/non-fungible-token/src/pages/nft/content/index.ts: -------------------------------------------------------------------------------- 1 | import { Content } from './Content'; 2 | 3 | export { Content }; 4 | -------------------------------------------------------------------------------- /frontend/apps/non-fungible-token/src/pages/nft/index.ts: -------------------------------------------------------------------------------- 1 | import { NFT } from './NFT'; 2 | 3 | export { NFT }; 4 | -------------------------------------------------------------------------------- /frontend/apps/non-fungible-token/src/vite-env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | -------------------------------------------------------------------------------- /frontend/apps/non-fungible-token/vite.config.ts: -------------------------------------------------------------------------------- 1 | import { viteAppsConfig } from '../../vite.apps.config'; 2 | 3 | export default viteAppsConfig; 4 | -------------------------------------------------------------------------------- /frontend/apps/racing-car-game/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gear-foundation/dapps/d8c5cab8058f24c7ca474b566bc3d21b73078bb8/frontend/apps/racing-car-game/public/favicon.ico -------------------------------------------------------------------------------- /frontend/apps/racing-car-game/src/App.routes.tsx: -------------------------------------------------------------------------------- 1 | export const PLAY = '/'; 2 | export const LEADERBOARD = 'leader-board'; 3 | export const START = 'start'; 4 | export const LOGIN = 'login'; 5 | -------------------------------------------------------------------------------- /frontend/apps/racing-car-game/src/app/utils/index.ts: -------------------------------------------------------------------------------- 1 | export * from './sails'; 2 | -------------------------------------------------------------------------------- /frontend/apps/racing-car-game/src/app/utils/sails/index.ts: -------------------------------------------------------------------------------- 1 | export * from './sails'; 2 | export * from './lib'; 3 | -------------------------------------------------------------------------------- /frontend/apps/racing-car-game/src/assets/icons/fire.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gear-foundation/dapps/d8c5cab8058f24c7ca474b566bc3d21b73078bb8/frontend/apps/racing-car-game/src/assets/icons/fire.gif -------------------------------------------------------------------------------- /frontend/apps/racing-car-game/src/assets/icons/smoke.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gear-foundation/dapps/d8c5cab8058f24c7ca474b566bc3d21b73078bb8/frontend/apps/racing-car-game/src/assets/icons/smoke.gif -------------------------------------------------------------------------------- /frontend/apps/racing-car-game/src/components/ApiLoader/index.ts: -------------------------------------------------------------------------------- 1 | export * from './ApiLoader'; 2 | -------------------------------------------------------------------------------- /frontend/apps/racing-car-game/src/components/Header/index.ts: -------------------------------------------------------------------------------- 1 | export * from './Header'; 2 | -------------------------------------------------------------------------------- /frontend/apps/racing-car-game/src/components/Header/logo/index.ts: -------------------------------------------------------------------------------- 1 | export { Logo } from './logo'; 2 | -------------------------------------------------------------------------------- /frontend/apps/racing-car-game/src/components/Loader/Loader.interface.ts: -------------------------------------------------------------------------------- 1 | export interface LoaderProps { 2 | wholeScreen?: boolean; 3 | } 4 | -------------------------------------------------------------------------------- /frontend/apps/racing-car-game/src/components/Loader/index.ts: -------------------------------------------------------------------------------- 1 | export * from './Loader'; 2 | -------------------------------------------------------------------------------- /frontend/apps/racing-car-game/src/components/Modal/index.tsx: -------------------------------------------------------------------------------- 1 | export * from './Modal'; 2 | -------------------------------------------------------------------------------- /frontend/apps/racing-car-game/src/components/ScrollArea/index.ts: -------------------------------------------------------------------------------- 1 | export { ScrollArea, ScrollBar } from './ScrollArea'; 2 | -------------------------------------------------------------------------------- /frontend/apps/racing-car-game/src/components/Spinner/Spinner.interface.ts: -------------------------------------------------------------------------------- 1 | export interface SpinnerProps {} 2 | -------------------------------------------------------------------------------- /frontend/apps/racing-car-game/src/components/Spinner/index.ts: -------------------------------------------------------------------------------- 1 | export * from './Spinner'; 2 | -------------------------------------------------------------------------------- /frontend/apps/racing-car-game/src/components/index.ts: -------------------------------------------------------------------------------- 1 | export * from './Header'; 2 | export * from './Modal'; 3 | export * from './Loader'; 4 | export * from './Spinner'; 5 | -------------------------------------------------------------------------------- /frontend/apps/racing-car-game/src/features/Auth/atoms.ts: -------------------------------------------------------------------------------- 1 | import { atom } from 'jotai'; 2 | 3 | export const IS_AUTH_READY_ATOM = atom(false); 4 | -------------------------------------------------------------------------------- /frontend/apps/racing-car-game/src/features/Auth/components/ProtectedRoute/ProtectedRoute.interface.ts: -------------------------------------------------------------------------------- 1 | export interface ProtectedRouteProps { 2 | children: JSX.Element; 3 | } 4 | -------------------------------------------------------------------------------- /frontend/apps/racing-car-game/src/features/Auth/components/ProtectedRoute/index.ts: -------------------------------------------------------------------------------- 1 | export * from './ProtectedRoute'; 2 | -------------------------------------------------------------------------------- /frontend/apps/racing-car-game/src/features/Auth/components/index.ts: -------------------------------------------------------------------------------- 1 | export * from './ProtectedRoute'; 2 | -------------------------------------------------------------------------------- /frontend/apps/racing-car-game/src/features/Auth/consts.ts: -------------------------------------------------------------------------------- 1 | export const AUTH_MESSAGE = 'VARA'; 2 | 3 | export const AUTH_TOKEN_LOCAL_STORAGE_KEY = 'authToken'; 4 | -------------------------------------------------------------------------------- /frontend/apps/racing-car-game/src/features/Auth/utils.ts: -------------------------------------------------------------------------------- 1 | export function trimEndSlash(url: string): string { 2 | return url?.endsWith('/') ? url.slice(0, -1) : url; 3 | } 4 | -------------------------------------------------------------------------------- /frontend/apps/racing-car-game/src/features/Game/component/CanvasRoad/index.ts: -------------------------------------------------------------------------------- 1 | export * from './CanvasRoad'; 2 | -------------------------------------------------------------------------------- /frontend/apps/racing-car-game/src/features/Game/component/CanvasRoadMobile/index.ts: -------------------------------------------------------------------------------- 1 | export * from './CanvasRoadMobile'; 2 | -------------------------------------------------------------------------------- /frontend/apps/racing-car-game/src/features/Game/component/Heading/index.ts: -------------------------------------------------------------------------------- 1 | export * from './Heading'; 2 | -------------------------------------------------------------------------------- /frontend/apps/racing-car-game/src/features/Game/component/Layout/index.ts: -------------------------------------------------------------------------------- 1 | export * from './Layout'; 2 | -------------------------------------------------------------------------------- /frontend/apps/racing-car-game/src/features/Game/component/Road/index.ts: -------------------------------------------------------------------------------- 1 | export * from './Road'; 2 | -------------------------------------------------------------------------------- /frontend/apps/racing-car-game/src/features/Game/component/index.ts: -------------------------------------------------------------------------------- 1 | export * from './Layout'; 2 | export * from './Heading'; 3 | -------------------------------------------------------------------------------- /frontend/apps/racing-car-game/src/features/Game/sails/events/index.ts: -------------------------------------------------------------------------------- 1 | export { useEventRoundInfoSubscription } from './use-event-round-info-subscription'; 2 | -------------------------------------------------------------------------------- /frontend/apps/racing-car-game/src/features/Game/sails/index.ts: -------------------------------------------------------------------------------- 1 | export * from './events'; 2 | export * from './messages'; 3 | export * from './queries'; 4 | -------------------------------------------------------------------------------- /frontend/apps/racing-car-game/src/features/Game/sails/queries/index.ts: -------------------------------------------------------------------------------- 1 | export { useGameQuery } from './use-game-query'; 2 | -------------------------------------------------------------------------------- /frontend/apps/racing-car-game/src/features/Main/components/Layout/index.ts: -------------------------------------------------------------------------------- 1 | export * from './Layout'; 2 | -------------------------------------------------------------------------------- /frontend/apps/racing-car-game/src/features/Main/components/Welcome/Welcome.interface.ts: -------------------------------------------------------------------------------- 1 | export interface WelcomeProps { 2 | children: React.ReactNode; 3 | } 4 | -------------------------------------------------------------------------------- /frontend/apps/racing-car-game/src/features/Main/components/Welcome/index.ts: -------------------------------------------------------------------------------- 1 | export * from './Welcome'; 2 | -------------------------------------------------------------------------------- /frontend/apps/racing-car-game/src/features/Main/components/index.ts: -------------------------------------------------------------------------------- 1 | export * from './Layout'; 2 | export * from './Welcome'; 3 | -------------------------------------------------------------------------------- /frontend/apps/racing-car-game/src/features/Wallet/components/WalletInfo/index.ts: -------------------------------------------------------------------------------- 1 | export * from './WalletInfo'; 2 | -------------------------------------------------------------------------------- /frontend/apps/racing-car-game/src/features/Wallet/components/WalletItem/WalletItem.interfaces.ts: -------------------------------------------------------------------------------- 1 | export type WalletItemProps = { 2 | icon: string; 3 | name: string; 4 | }; 5 | -------------------------------------------------------------------------------- /frontend/apps/racing-car-game/src/features/Wallet/components/WalletItem/index.ts: -------------------------------------------------------------------------------- 1 | export * from './WalletItem'; 2 | -------------------------------------------------------------------------------- /frontend/apps/racing-car-game/src/features/Wallet/components/WalletModal/index.ts: -------------------------------------------------------------------------------- 1 | export * from './WalletModal'; 2 | -------------------------------------------------------------------------------- /frontend/apps/racing-car-game/src/features/Wallet/components/index.ts: -------------------------------------------------------------------------------- 1 | export * from './WalletModal'; 2 | export * from './WalletItem'; 3 | -------------------------------------------------------------------------------- /frontend/apps/racing-car-game/src/pages/GamePage/index.tsx: -------------------------------------------------------------------------------- 1 | import { Layout } from '@/features/Game/component'; 2 | 3 | function GamePage() { 4 | return ; 5 | } 6 | 7 | export { GamePage }; 8 | -------------------------------------------------------------------------------- /frontend/apps/racing-car-game/src/pages/index.ts: -------------------------------------------------------------------------------- 1 | export * from './MainPage'; 2 | export * from './GamePage'; 3 | -------------------------------------------------------------------------------- /frontend/apps/racing-car-game/src/types.ts: -------------------------------------------------------------------------------- 1 | import { Car } from './app/utils'; 2 | 3 | export interface Cars { 4 | [key: string]: Car; 5 | } 6 | -------------------------------------------------------------------------------- /frontend/apps/racing-car-game/src/ui/Alert/index.ts: -------------------------------------------------------------------------------- 1 | export * from './Alert'; 2 | -------------------------------------------------------------------------------- /frontend/apps/racing-car-game/src/ui/Button/index.ts: -------------------------------------------------------------------------------- 1 | export * from './Button'; 2 | -------------------------------------------------------------------------------- /frontend/apps/racing-car-game/src/ui/Input/index.ts: -------------------------------------------------------------------------------- 1 | export * from './Input'; 2 | -------------------------------------------------------------------------------- /frontend/apps/racing-car-game/src/ui/Link/index.ts: -------------------------------------------------------------------------------- 1 | export * from './Link'; 2 | -------------------------------------------------------------------------------- /frontend/apps/racing-car-game/src/ui/index.ts: -------------------------------------------------------------------------------- 1 | export * from './Button'; 2 | export * from './Link'; 3 | export * from './Input'; 4 | export * from './Alert'; 5 | -------------------------------------------------------------------------------- /frontend/apps/racing-car-game/src/vite-env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | -------------------------------------------------------------------------------- /frontend/apps/racing-car-game/vite.config.ts: -------------------------------------------------------------------------------- 1 | import { viteAppsConfig } from '../../vite.apps.config'; 2 | 3 | export default viteAppsConfig; 4 | -------------------------------------------------------------------------------- /frontend/apps/syndote/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gear-foundation/dapps/d8c5cab8058f24c7ca474b566bc3d21b73078bb8/frontend/apps/syndote/public/favicon.ico -------------------------------------------------------------------------------- /frontend/apps/syndote/src/app/hooks/index.ts: -------------------------------------------------------------------------------- 1 | export { usePending } from './use-pending'; 2 | export * from './use-execute-with-pendig'; 3 | export * from './use-sign-and-send'; 4 | -------------------------------------------------------------------------------- /frontend/apps/syndote/src/app/utils/index.ts: -------------------------------------------------------------------------------- 1 | export * from './sails'; 2 | -------------------------------------------------------------------------------- /frontend/apps/syndote/src/app/utils/sails/index.ts: -------------------------------------------------------------------------------- 1 | export * from './sails'; 2 | export * from './syndote'; 3 | export * from './events'; 4 | export * from './queries'; 5 | export * from './messages'; 6 | -------------------------------------------------------------------------------- /frontend/apps/syndote/src/app/utils/sails/queries/index.ts: -------------------------------------------------------------------------------- 1 | export { useGetGameSessionQuery } from './use-get-game-session-query'; 2 | -------------------------------------------------------------------------------- /frontend/apps/syndote/src/assets/images/logos/hydradx.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gear-foundation/dapps/d8c5cab8058f24c7ca474b566bc3d21b73078bb8/frontend/apps/syndote/src/assets/images/logos/hydradx.png -------------------------------------------------------------------------------- /frontend/apps/syndote/src/assets/images/logos/i.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gear-foundation/dapps/d8c5cab8058f24c7ca474b566bc3d21b73078bb8/frontend/apps/syndote/src/assets/images/logos/i.png -------------------------------------------------------------------------------- /frontend/apps/syndote/src/assets/images/logos/unique.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gear-foundation/dapps/d8c5cab8058f24c7ca474b566bc3d21b73078bb8/frontend/apps/syndote/src/assets/images/logos/unique.png -------------------------------------------------------------------------------- /frontend/apps/syndote/src/assets/styles/index.scss: -------------------------------------------------------------------------------- 1 | @font-face { 2 | font-family: 'Poiret One'; 3 | font-weight: 400; 4 | src: url('../fonts/poiret-one-400.woff2') format('woff2'); 5 | } 6 | -------------------------------------------------------------------------------- /frontend/apps/syndote/src/components/index.ts: -------------------------------------------------------------------------------- 1 | import { ApiLoader, Loader } from './loaders'; 2 | 3 | export { ApiLoader, Loader }; 4 | -------------------------------------------------------------------------------- /frontend/apps/syndote/src/components/layout/game-details/index.ts: -------------------------------------------------------------------------------- 1 | import { GameDetails } from './GameDetails'; 2 | 3 | export { GameDetails }; 4 | -------------------------------------------------------------------------------- /frontend/apps/syndote/src/components/layout/header/index.ts: -------------------------------------------------------------------------------- 1 | import { Header } from './Header'; 2 | 3 | export { Header }; 4 | -------------------------------------------------------------------------------- /frontend/apps/syndote/src/components/layout/modal/index.ts: -------------------------------------------------------------------------------- 1 | import { Modal } from './Modal'; 2 | 3 | export { Modal }; 4 | -------------------------------------------------------------------------------- /frontend/apps/syndote/src/components/layout/text-field/index.ts: -------------------------------------------------------------------------------- 1 | export * from './TextField'; 2 | -------------------------------------------------------------------------------- /frontend/apps/syndote/src/components/loaders/api-loader/index.ts: -------------------------------------------------------------------------------- 1 | import { ApiLoader } from './ApiLoader'; 2 | 3 | export { ApiLoader }; 4 | -------------------------------------------------------------------------------- /frontend/apps/syndote/src/components/loaders/index.ts: -------------------------------------------------------------------------------- 1 | import { ApiLoader } from './api-loader'; 2 | import { Loader } from './loader'; 3 | 4 | export { ApiLoader, Loader }; 5 | -------------------------------------------------------------------------------- /frontend/apps/syndote/src/components/loaders/loader/index.ts: -------------------------------------------------------------------------------- 1 | import { Loader } from './Loader'; 2 | 3 | export { Loader }; 4 | -------------------------------------------------------------------------------- /frontend/apps/syndote/src/pages/home/address/Address.module.scss: -------------------------------------------------------------------------------- 1 | .buttons { 2 | > *:not(:last-child) { 3 | margin-right: 16px; 4 | } 5 | } 6 | -------------------------------------------------------------------------------- /frontend/apps/syndote/src/pages/home/address/index.ts: -------------------------------------------------------------------------------- 1 | import { Address } from './Address'; 2 | 3 | export { Address }; 4 | -------------------------------------------------------------------------------- /frontend/apps/syndote/src/pages/home/button/index.ts: -------------------------------------------------------------------------------- 1 | import { Button } from './Button'; 2 | 3 | export { Button }; 4 | -------------------------------------------------------------------------------- /frontend/apps/syndote/src/pages/home/buttons/index.ts: -------------------------------------------------------------------------------- 1 | import { Buttons } from './Buttons'; 2 | 3 | export { Buttons }; 4 | -------------------------------------------------------------------------------- /frontend/apps/syndote/src/pages/home/cell/index.ts: -------------------------------------------------------------------------------- 1 | import { Cell } from './Cell'; 2 | 3 | export { Cell }; 4 | -------------------------------------------------------------------------------- /frontend/apps/syndote/src/pages/home/chip/index.ts: -------------------------------------------------------------------------------- 1 | import { Chip } from './Chip'; 2 | 3 | export { Chip }; 4 | -------------------------------------------------------------------------------- /frontend/apps/syndote/src/pages/home/continue-game-modal/index.ts: -------------------------------------------------------------------------------- 1 | import { ContinueGameModal } from './ContinueGameModal'; 2 | 3 | export { ContinueGameModal }; 4 | -------------------------------------------------------------------------------- /frontend/apps/syndote/src/pages/home/game-finished-modal/index.ts: -------------------------------------------------------------------------------- 1 | import { GameFinishedModal } from './GameFinishedModal'; 2 | 3 | export { GameFinishedModal }; 4 | -------------------------------------------------------------------------------- /frontend/apps/syndote/src/pages/home/index.ts: -------------------------------------------------------------------------------- 1 | import { Home } from './Home'; 2 | 3 | export { Home }; 4 | -------------------------------------------------------------------------------- /frontend/apps/syndote/src/pages/home/input/index.ts: -------------------------------------------------------------------------------- 1 | import { Input } from './Input'; 2 | 3 | export { Input }; 4 | -------------------------------------------------------------------------------- /frontend/apps/syndote/src/pages/home/player/index.ts: -------------------------------------------------------------------------------- 1 | import { Player } from './Player'; 2 | 3 | export { Player }; 4 | -------------------------------------------------------------------------------- /frontend/apps/syndote/src/pages/home/players/index.ts: -------------------------------------------------------------------------------- 1 | import { Players } from './Players'; 2 | 3 | export { Players }; 4 | -------------------------------------------------------------------------------- /frontend/apps/syndote/src/pages/home/reserve-modal/index.ts: -------------------------------------------------------------------------------- 1 | import { ReserveModal } from './ReserveModal'; 2 | 3 | export { ReserveModal }; 4 | -------------------------------------------------------------------------------- /frontend/apps/syndote/src/pages/home/roll/index.ts: -------------------------------------------------------------------------------- 1 | import { Roll } from './Roll'; 2 | 3 | export { Roll }; 4 | -------------------------------------------------------------------------------- /frontend/apps/syndote/src/pages/home/session-info/index.ts: -------------------------------------------------------------------------------- 1 | import { SessionInfo } from './SessionInfo'; 2 | 3 | export { SessionInfo }; 4 | -------------------------------------------------------------------------------- /frontend/apps/syndote/src/pages/home/start/index.ts: -------------------------------------------------------------------------------- 1 | import { Start } from './Start'; 2 | 3 | export { Start }; 4 | -------------------------------------------------------------------------------- /frontend/apps/syndote/src/pages/home/text-modal/index.ts: -------------------------------------------------------------------------------- 1 | import { TextModal } from './TextModal'; 2 | 3 | export { TextModal }; 4 | -------------------------------------------------------------------------------- /frontend/apps/syndote/src/pages/home/vara-icon/index.ts: -------------------------------------------------------------------------------- 1 | import { VaraIcon } from './VaraIcon'; 2 | 3 | export { VaraIcon }; 4 | -------------------------------------------------------------------------------- /frontend/apps/syndote/src/pages/welcome/components/create-game-form/index.ts: -------------------------------------------------------------------------------- 1 | import { CreateGameForm } from './CreateGameForm'; 2 | 3 | export { CreateGameForm }; 4 | -------------------------------------------------------------------------------- /frontend/apps/syndote/src/pages/welcome/components/game-intro/index.ts: -------------------------------------------------------------------------------- 1 | import { GameIntro } from './GameIntro'; 2 | 3 | export { GameIntro }; 4 | -------------------------------------------------------------------------------- /frontend/apps/syndote/src/pages/welcome/components/join-game-form/index.ts: -------------------------------------------------------------------------------- 1 | import { JoinGameForm } from './JoinGameForm'; 2 | 3 | export { JoinGameForm }; 4 | -------------------------------------------------------------------------------- /frontend/apps/syndote/src/pages/welcome/components/request-game/index.ts: -------------------------------------------------------------------------------- 1 | import { RequestGame } from './RequestGame'; 2 | 3 | export { RequestGame }; 4 | -------------------------------------------------------------------------------- /frontend/apps/syndote/src/pages/welcome/components/welcome/index.ts: -------------------------------------------------------------------------------- 1 | import { Welcome } from './Welcome'; 2 | 3 | export { Welcome }; 4 | -------------------------------------------------------------------------------- /frontend/apps/syndote/src/styles/_index.scss: -------------------------------------------------------------------------------- 1 | @forward 'breakpoints'; 2 | @forward 'mixins'; 3 | -------------------------------------------------------------------------------- /frontend/apps/syndote/src/vite-env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | -------------------------------------------------------------------------------- /frontend/apps/syndote/vite.config.ts: -------------------------------------------------------------------------------- 1 | import { viteAppsConfig } from '../../vite.apps.config'; 2 | 3 | export default viteAppsConfig; 4 | -------------------------------------------------------------------------------- /frontend/apps/tamagotchi-battle/postcss.config.cjs: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | plugins: { 3 | tailwindcss: {}, 4 | autoprefixer: {}, 5 | }, 6 | }; 7 | -------------------------------------------------------------------------------- /frontend/apps/tamagotchi-battle/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gear-foundation/dapps/d8c5cab8058f24c7ca474b566bc3d21b73078bb8/frontend/apps/tamagotchi-battle/public/favicon.ico -------------------------------------------------------------------------------- /frontend/apps/tamagotchi-battle/src/components/layout/header/account/index.ts: -------------------------------------------------------------------------------- 1 | export { AccountComponent } from './account'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tamagotchi-battle/src/components/layout/header/index.ts: -------------------------------------------------------------------------------- 1 | export { Header } from './header'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tamagotchi-battle/src/components/layout/header/logo/index.ts: -------------------------------------------------------------------------------- 1 | export { Logo } from './logo'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tamagotchi-battle/src/components/layout/index.ts: -------------------------------------------------------------------------------- 1 | export { Header } from './header'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tamagotchi-battle/src/components/loaders/api-loader/index.ts: -------------------------------------------------------------------------------- 1 | export { ApiLoader } from './ApiLoader'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tamagotchi-battle/src/components/loaders/loader/Loader.tsx: -------------------------------------------------------------------------------- 1 | import styles from './Loader.module.scss'; 2 | 3 | export const Loader = () =>
; 4 | -------------------------------------------------------------------------------- /frontend/apps/tamagotchi-battle/src/components/loaders/loader/index.ts: -------------------------------------------------------------------------------- 1 | export { Loader } from './Loader'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tamagotchi-battle/src/components/ui/index.ts: -------------------------------------------------------------------------------- 1 | export * from './scroll-area'; 2 | export * from './sprite-icon'; 3 | -------------------------------------------------------------------------------- /frontend/apps/tamagotchi-battle/src/features/battle/components/battle-players-queue/index.ts: -------------------------------------------------------------------------------- 1 | export { BattlePlayersQueue } from './battle-players-queue'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tamagotchi-battle/src/features/battle/components/battle-round-info/index.ts: -------------------------------------------------------------------------------- 1 | export { BattleRoundInfo } from './battle-round-info'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tamagotchi-battle/src/features/battle/components/battle-round-players/index.ts: -------------------------------------------------------------------------------- 1 | export { BattleRoundPlayers } from './battle-round-players'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tamagotchi-battle/src/features/battle/components/battle-round-stats-avatar/index.ts: -------------------------------------------------------------------------------- 1 | export { BattleRoundStatsAvatar } from './battle-round-stats-avatar'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tamagotchi-battle/src/features/battle/components/battle-round-stats/index.ts: -------------------------------------------------------------------------------- 1 | export { BattleRoundStats } from './battle-round-stats'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tamagotchi-battle/src/features/battle/components/battle-round/index.ts: -------------------------------------------------------------------------------- 1 | export { BattleRound } from './battle-round'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tamagotchi-battle/src/features/battle/components/battle-table-champions/index.ts: -------------------------------------------------------------------------------- 1 | export { BattleTableChampions } from './battle-table-champions'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tamagotchi-battle/src/features/battle/components/battle-table-pairs/index.ts: -------------------------------------------------------------------------------- 1 | export { BattleTablePairs } from './battle-table-pairs'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tamagotchi-battle/src/features/battle/components/battle-wait-admin/index.ts: -------------------------------------------------------------------------------- 1 | export { BattleWaitAdmin } from './battle-wait-admin'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tamagotchi-battle/src/features/battle/components/battle-wait-registration/index.ts: -------------------------------------------------------------------------------- 1 | export { BattleWaitRegistration } from './battle-wait-registration'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tamagotchi-battle/src/features/battle/components/battle-winner/index.ts: -------------------------------------------------------------------------------- 1 | export { BattleWinner } from './battle-winner'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tamagotchi-battle/src/features/battle/components/create-tamagotchi-form/index.ts: -------------------------------------------------------------------------------- 1 | export { CreateTamagotchiForm } from './create-tamagotchi-form'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tamagotchi-battle/src/features/battle/components/new-game-button/index.ts: -------------------------------------------------------------------------------- 1 | export { NewGameButton } from './new-game-button'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tamagotchi-battle/src/features/battle/components/tamagotchi-avatar/index.ts: -------------------------------------------------------------------------------- 1 | export { TamagotchiAvatar } from './tamagotchi-avatar'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tamagotchi-battle/src/features/battle/components/tamagotchi-queue-card/index.ts: -------------------------------------------------------------------------------- 1 | export { TamagotchiQueueCard } from './tamagotchi-queue-card'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tamagotchi-battle/src/features/battle/types/ft-store.ts: -------------------------------------------------------------------------------- 1 | export type StoreItemsNames = 'sword' | 'hat' | 'bag' | 'glasses'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tamagotchi-battle/src/vite-env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | -------------------------------------------------------------------------------- /frontend/apps/tamagotchi-battle/vite.config.ts: -------------------------------------------------------------------------------- 1 | import { viteAppsConfig } from '../../vite.apps.config'; 2 | 3 | export default viteAppsConfig; 4 | -------------------------------------------------------------------------------- /frontend/apps/tamagotchi/postcss.config.js: -------------------------------------------------------------------------------- 1 | export default { 2 | plugins: { 3 | tailwindcss: {}, 4 | autoprefixer: {}, 5 | }, 6 | }; 7 | -------------------------------------------------------------------------------- /frontend/apps/tamagotchi/public/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gear-foundation/dapps/d8c5cab8058f24c7ca474b566bc3d21b73078bb8/frontend/apps/tamagotchi/public/favicon.png -------------------------------------------------------------------------------- /frontend/apps/tamagotchi/src/app/types/index.ts: -------------------------------------------------------------------------------- 1 | import { PropsWithChildren } from 'react'; 2 | 3 | export type BaseComponentProps = PropsWithChildren & { 4 | className?: string; 5 | }; 6 | -------------------------------------------------------------------------------- /frontend/apps/tamagotchi/src/assets/meta/meta1.txt: -------------------------------------------------------------------------------- 1 | 000200000000000000000000000400 -------------------------------------------------------------------------------- /frontend/apps/tamagotchi/src/assets/meta/meta2.txt: -------------------------------------------------------------------------------- 1 | 000200000000000000000000000400 -------------------------------------------------------------------------------- /frontend/apps/tamagotchi/src/assets/meta/meta3.txt: -------------------------------------------------------------------------------- 1 | 000200000000000000000000000400 -------------------------------------------------------------------------------- /frontend/apps/tamagotchi/src/assets/meta/meta4.txt: -------------------------------------------------------------------------------- 1 | 000200000000000000000000000400 -------------------------------------------------------------------------------- /frontend/apps/tamagotchi/src/assets/meta/meta6.txt: -------------------------------------------------------------------------------- 1 | 000200000000000000000000000400 -------------------------------------------------------------------------------- /frontend/apps/tamagotchi/src/assets/meta/state2.meta.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gear-foundation/dapps/d8c5cab8058f24c7ca474b566bc3d21b73078bb8/frontend/apps/tamagotchi/src/assets/meta/state2.meta.wasm -------------------------------------------------------------------------------- /frontend/apps/tamagotchi/src/assets/styles/index.scss: -------------------------------------------------------------------------------- 1 | @use '@gear-js/ui/resets'; 2 | @use '@gear-js/ui/typography'; 3 | -------------------------------------------------------------------------------- /frontend/apps/tamagotchi/src/components/forms/approve-account-form/index.ts: -------------------------------------------------------------------------------- 1 | export { ApproveAccountForm } from './approve-account-form'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tamagotchi/src/components/forms/create-tamagotchi-form/index.ts: -------------------------------------------------------------------------------- 1 | export { CreateTamagotchiForm } from './create-tamagotchi-form'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tamagotchi/src/components/forms/transfer-account-form/index.ts: -------------------------------------------------------------------------------- 1 | export { TransferAccountForm } from './transfer-account-form'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tamagotchi/src/components/layout/header/index.ts: -------------------------------------------------------------------------------- 1 | export { Header } from './header'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tamagotchi/src/components/layout/index.ts: -------------------------------------------------------------------------------- 1 | export { Header } from './header'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tamagotchi/src/components/loaders/api-loader/index.ts: -------------------------------------------------------------------------------- 1 | export { ApiLoader } from './ApiLoader'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tamagotchi/src/components/loaders/loader/Loader.tsx: -------------------------------------------------------------------------------- 1 | import styles from './Loader.module.scss'; 2 | 3 | export const Loader = () =>
; 4 | -------------------------------------------------------------------------------- /frontend/apps/tamagotchi/src/components/loaders/loader/index.ts: -------------------------------------------------------------------------------- 1 | export { Loader } from './Loader'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tamagotchi/src/components/menus/account-actions-menu/index.ts: -------------------------------------------------------------------------------- 1 | export { AccountActionsMenu } from './account-actions-menu'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tamagotchi/src/components/popups/approve-account-popup/index.ts: -------------------------------------------------------------------------------- 1 | export { ApproveAccountPopup } from './approve-account-popup'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tamagotchi/src/components/popups/revoke-approval-popup/index.ts: -------------------------------------------------------------------------------- 1 | export { RevokeApprovalPopup } from './revoke-approval-popup'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tamagotchi/src/components/popups/transfer-account-popup/index.ts: -------------------------------------------------------------------------------- 1 | export { TransferAccountPopup } from './transfer-account-popup'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tamagotchi/src/components/sections/home-create-section/index.ts: -------------------------------------------------------------------------------- 1 | export { HomeCreateSection } from './home-create-section'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tamagotchi/src/components/tamagotchi/tamagotchi-avatar/index.ts: -------------------------------------------------------------------------------- 1 | export { TamagotchiAvatar } from './tamagotchi-avatar'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tamagotchi/src/components/tamagotchi/tamagotchi-battle-info-card/index.ts: -------------------------------------------------------------------------------- 1 | export { TamagotchiBattleInfoCard } from './tamagotchi-battle-info-card'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tamagotchi/src/components/tamagotchi/tamagotchi-battle-top-stats/index.ts: -------------------------------------------------------------------------------- 1 | export { TamagotchiBattleTopStats } from './tamagotchi-battle-top-stats'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tamagotchi/src/components/tamagotchi/tamagotchi-info-card-row/index.ts: -------------------------------------------------------------------------------- 1 | export { TamagotchiInfoCardRow } from './tamagotchi-info-card-row'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tamagotchi/src/components/tamagotchi/tamagotchi-info-card/index.ts: -------------------------------------------------------------------------------- 1 | export { TamagotchiInfoCard } from './tamagotchi-info-card'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tamagotchi/src/vite-env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | -------------------------------------------------------------------------------- /frontend/apps/tamagotchi/vite.config.ts: -------------------------------------------------------------------------------- 1 | import { viteAppsConfig } from '../../vite.apps.config'; 2 | 3 | export default viteAppsConfig; 4 | -------------------------------------------------------------------------------- /frontend/apps/tequila-train/postcss.config.cjs: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | plugins: { 3 | tailwindcss: {}, 4 | autoprefixer: {}, 5 | }, 6 | }; 7 | -------------------------------------------------------------------------------- /frontend/apps/tequila-train/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gear-foundation/dapps/d8c5cab8058f24c7ca474b566bc3d21b73078bb8/frontend/apps/tequila-train/public/favicon.ico -------------------------------------------------------------------------------- /frontend/apps/tequila-train/public/images/register.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gear-foundation/dapps/d8c5cab8058f24c7ca474b566bc3d21b73078bb8/frontend/apps/tequila-train/public/images/register.webp -------------------------------------------------------------------------------- /frontend/apps/tequila-train/src/assets/images/cactus.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gear-foundation/dapps/d8c5cab8058f24c7ca474b566bc3d21b73078bb8/frontend/apps/tequila-train/src/assets/images/cactus.png -------------------------------------------------------------------------------- /frontend/apps/tequila-train/src/assets/images/index.ts: -------------------------------------------------------------------------------- 1 | export { default as CrossIcon } from './icons/cross.svg?react'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tequila-train/src/assets/styles/index.scss: -------------------------------------------------------------------------------- 1 | @use '@gear-js/ui/resets'; 2 | @use '@gear-js/ui/typography'; 3 | -------------------------------------------------------------------------------- /frontend/apps/tequila-train/src/components/common/domino-item/index.ts: -------------------------------------------------------------------------------- 1 | export { DominoItem } from './domino-item'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tequila-train/src/components/common/domino-zone/index.ts: -------------------------------------------------------------------------------- 1 | export { DominoZone } from './domino-zone'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tequila-train/src/components/common/gas-wallet/index.ts: -------------------------------------------------------------------------------- 1 | export { GasWallet } from './gas-wallet'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tequila-train/src/components/common/get-gas-balance/index.ts: -------------------------------------------------------------------------------- 1 | export { GetGasBalance } from './get-gas-balance'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tequila-train/src/components/common/player-domino/index.ts: -------------------------------------------------------------------------------- 1 | export { PlayerDomino } from './player-domino'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tequila-train/src/components/common/player-train/index.ts: -------------------------------------------------------------------------------- 1 | export { PlayerTrain } from './player-train'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tequila-train/src/components/layout/header/index.ts: -------------------------------------------------------------------------------- 1 | export { Header } from './header'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tequila-train/src/components/layout/header/logo/index.ts: -------------------------------------------------------------------------------- 1 | export { Logo } from './logo'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tequila-train/src/components/layout/index.ts: -------------------------------------------------------------------------------- 1 | export { Header } from './header'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tequila-train/src/components/loaders/api-loader/index.ts: -------------------------------------------------------------------------------- 1 | export { ApiLoader } from './ApiLoader'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tequila-train/src/components/loaders/loader/Loader.tsx: -------------------------------------------------------------------------------- 1 | import styles from './Loader.module.scss'; 2 | 3 | export const Loader = () =>
; 4 | -------------------------------------------------------------------------------- /frontend/apps/tequila-train/src/components/loaders/loader/index.ts: -------------------------------------------------------------------------------- 1 | export { Loader } from './Loader'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tequila-train/src/components/popups/select-domino-popup/iindex.ts: -------------------------------------------------------------------------------- 1 | export { SelectDominoPopup } from './select-domino-popup'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tequila-train/src/components/popups/winner-popup/iindex.ts: -------------------------------------------------------------------------------- 1 | export { WinnerPopup } from './winner-popup'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tequila-train/src/components/sections/game-section/canceled-modal/index.ts: -------------------------------------------------------------------------------- 1 | export { CanceledSection } from './canceled-modal'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tequila-train/src/components/sections/game-section/finished-modal/index.ts: -------------------------------------------------------------------------------- 1 | export { FinishedSection } from './finished-modal'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tequila-train/src/components/sections/game-section/index.ts: -------------------------------------------------------------------------------- 1 | export { GameSection } from './game-section'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tequila-train/src/components/sections/login-section/index.ts: -------------------------------------------------------------------------------- 1 | export { LoginSection } from './login-section'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tequila-train/src/components/sections/player-card-section/index.ts: -------------------------------------------------------------------------------- 1 | export { PlayerCardSection } from './player-card-section'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tequila-train/src/components/sections/player-cons-section/index.ts: -------------------------------------------------------------------------------- 1 | export { PlayerConsSection } from './player-cons-section'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tequila-train/src/components/sections/player-track-section/index.ts: -------------------------------------------------------------------------------- 1 | export { PlayerTrackSection } from './player-track-section'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tequila-train/src/components/sections/registration-section/index.ts: -------------------------------------------------------------------------------- 1 | export { RegistrationSection } from './registration-section'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tequila-train/src/components/sections/registration-section/modal/index.ts: -------------------------------------------------------------------------------- 1 | import { Modal } from './Modal'; 2 | 3 | export { Modal }; 4 | -------------------------------------------------------------------------------- /frontend/apps/tequila-train/src/components/sections/start-section/index.ts: -------------------------------------------------------------------------------- 1 | export { StartSection } from './start-section'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tequila-train/src/components/ui/Button/index.ts: -------------------------------------------------------------------------------- 1 | export * from './Button'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tequila-train/src/components/ui/alert/index.ts: -------------------------------------------------------------------------------- 1 | export { Alert, alertStyles } from './alert'; 2 | export type { AlertProps } from './alert.types'; 3 | -------------------------------------------------------------------------------- /frontend/apps/tequila-train/src/components/ui/icon/index.ts: -------------------------------------------------------------------------------- 1 | export { Icon } from './icon'; 2 | export type { IconProps } from './icon.d'; 3 | -------------------------------------------------------------------------------- /frontend/apps/tequila-train/src/components/ui/index.ts: -------------------------------------------------------------------------------- 1 | export * from './Button'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tequila-train/src/components/ui/modal/index.ts: -------------------------------------------------------------------------------- 1 | import { Modal } from './Modal'; 2 | 3 | export { Modal }; 4 | -------------------------------------------------------------------------------- /frontend/apps/tequila-train/src/components/ui/text-gradient/index.ts: -------------------------------------------------------------------------------- 1 | import { TextGradient } from './text-gradient'; 2 | 3 | export { TextGradient }; 4 | -------------------------------------------------------------------------------- /frontend/apps/tequila-train/src/vite-env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | -------------------------------------------------------------------------------- /frontend/apps/tequila-train/vite.config.ts: -------------------------------------------------------------------------------- 1 | import { viteAppsConfig } from '../../vite.apps.config'; 2 | 3 | export default viteAppsConfig; 4 | -------------------------------------------------------------------------------- /frontend/apps/tic-tac-toe/public/favicons/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gear-foundation/dapps/d8c5cab8058f24c7ca474b566bc3d21b73078bb8/frontend/apps/tic-tac-toe/public/favicons/favicon.ico -------------------------------------------------------------------------------- /frontend/apps/tic-tac-toe/src/app.scss: -------------------------------------------------------------------------------- 1 | @import '@/assets/styles'; 2 | 3 | a { 4 | color: inherit; 5 | text-decoration: none; 6 | } 7 | -------------------------------------------------------------------------------- /frontend/apps/tic-tac-toe/src/app/utils/index.ts: -------------------------------------------------------------------------------- 1 | export * from './sails'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tic-tac-toe/src/app/utils/sails/index.ts: -------------------------------------------------------------------------------- 1 | export * from './sails'; 2 | export * from './lib'; 3 | -------------------------------------------------------------------------------- /frontend/apps/tic-tac-toe/src/assets/styles/index.scss: -------------------------------------------------------------------------------- 1 | @import 'common'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tic-tac-toe/src/components/layout/header/index.ts: -------------------------------------------------------------------------------- 1 | export { Header } from './header'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tic-tac-toe/src/components/layout/header/logo/index.ts: -------------------------------------------------------------------------------- 1 | export { Logo } from './logo'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tic-tac-toe/src/components/layout/not-authorized/index.ts: -------------------------------------------------------------------------------- 1 | export { NotAuthorized } from './not-authorized'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tic-tac-toe/src/components/layout/not-found/index.ts: -------------------------------------------------------------------------------- 1 | export { NotFound } from './not-found'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tic-tac-toe/src/components/loaders/api-loader/index.ts: -------------------------------------------------------------------------------- 1 | import { ApiLoader } from './ApiLoader'; 2 | 3 | export { ApiLoader }; 4 | -------------------------------------------------------------------------------- /frontend/apps/tic-tac-toe/src/components/loaders/index.ts: -------------------------------------------------------------------------------- 1 | export { ApiLoader } from './api-loader'; 2 | export { Loader } from './loader'; 3 | export { LoadingError } from './loading-error'; 4 | -------------------------------------------------------------------------------- /frontend/apps/tic-tac-toe/src/components/loaders/loader/Loader.tsx: -------------------------------------------------------------------------------- 1 | import styles from './Loader.module.scss'; 2 | 3 | export function Loader() { 4 | return
; 5 | } 6 | -------------------------------------------------------------------------------- /frontend/apps/tic-tac-toe/src/components/loaders/loader/index.ts: -------------------------------------------------------------------------------- 1 | import { Loader } from './Loader'; 2 | 3 | export { Loader }; 4 | -------------------------------------------------------------------------------- /frontend/apps/tic-tac-toe/src/components/loaders/loading-error/index.ts: -------------------------------------------------------------------------------- 1 | export { LoadingError } from './loading-error'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tic-tac-toe/src/components/ui/alert/index.ts: -------------------------------------------------------------------------------- 1 | export { Alert, alertStyles } from './alert'; 2 | export type { AlertProps } from './alert.types'; 3 | -------------------------------------------------------------------------------- /frontend/apps/tic-tac-toe/src/components/ui/balance/index.ts: -------------------------------------------------------------------------------- 1 | import { PointsBalance } from './Balance'; 2 | 3 | export { PointsBalance }; 4 | -------------------------------------------------------------------------------- /frontend/apps/tic-tac-toe/src/components/ui/button/index.ts: -------------------------------------------------------------------------------- 1 | export { Button, buttonVariants } from './button'; 2 | export type { ButtonProps } from './button'; 3 | -------------------------------------------------------------------------------- /frontend/apps/tic-tac-toe/src/components/ui/container/index.ts: -------------------------------------------------------------------------------- 1 | export { Container } from './container'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tic-tac-toe/src/components/ui/heading/index.ts: -------------------------------------------------------------------------------- 1 | export { Heading, headingVariants } from './Heading'; 2 | export type { HeadingProps } from './Heading'; 3 | -------------------------------------------------------------------------------- /frontend/apps/tic-tac-toe/src/components/ui/modal/index.ts: -------------------------------------------------------------------------------- 1 | import { Modal } from './Modal'; 2 | 3 | export { Modal }; 4 | -------------------------------------------------------------------------------- /frontend/apps/tic-tac-toe/src/components/ui/table/index.ts: -------------------------------------------------------------------------------- 1 | export { Table, TableBody, TableCell, TableFooter, TableCaption, TableHead, TableHeader, TableRow } from './table'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tic-tac-toe/src/components/ui/text-gradient/index.ts: -------------------------------------------------------------------------------- 1 | import { TextGradient } from './text-gradient'; 2 | 3 | export { TextGradient }; 4 | -------------------------------------------------------------------------------- /frontend/apps/tic-tac-toe/src/components/ui/text/index.ts: -------------------------------------------------------------------------------- 1 | export { Text, textVariants } from './text'; 2 | export type { TextProps } from './text'; 3 | -------------------------------------------------------------------------------- /frontend/apps/tic-tac-toe/src/features/auth/index.ts: -------------------------------------------------------------------------------- 1 | export { useAuth } from './hooks'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tic-tac-toe/src/features/auth/utils.ts: -------------------------------------------------------------------------------- 1 | export function trimEndSlash(url: string): string { 2 | return url?.endsWith('/') ? url.slice(0, -1) : url; 3 | } 4 | -------------------------------------------------------------------------------- /frontend/apps/tic-tac-toe/src/features/tic-tac-toe/components/game-cell/index.ts: -------------------------------------------------------------------------------- 1 | export { GameCell } from './game-cell'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tic-tac-toe/src/features/tic-tac-toe/components/game-countdown/index.ts: -------------------------------------------------------------------------------- 1 | export { GameCountdown } from './game-countdown'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tic-tac-toe/src/features/tic-tac-toe/components/game-field/index.ts: -------------------------------------------------------------------------------- 1 | export { GameField } from './game-field'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tic-tac-toe/src/features/tic-tac-toe/components/game-info-player-mark/index.ts: -------------------------------------------------------------------------------- 1 | export { GameInfoPlayerMark } from './game-info-player-mark'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tic-tac-toe/src/features/tic-tac-toe/components/game-mark/index.ts: -------------------------------------------------------------------------------- 1 | export { GameMark } from './game-mark'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tic-tac-toe/src/features/tic-tac-toe/components/game-skip-button/index.ts: -------------------------------------------------------------------------------- 1 | export { GameSkipButton } from './game-skip-button'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tic-tac-toe/src/features/tic-tac-toe/components/game-start-button/index.ts: -------------------------------------------------------------------------------- 1 | export { GameStartButton } from './game-start-button'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tic-tac-toe/src/features/tic-tac-toe/components/game/index.ts: -------------------------------------------------------------------------------- 1 | export { Game } from './game'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tic-tac-toe/src/features/tic-tac-toe/components/ui/typography/index.ts: -------------------------------------------------------------------------------- 1 | export { HelpDescription } from './help-description'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tic-tac-toe/src/features/tic-tac-toe/components/welcome/index.ts: -------------------------------------------------------------------------------- 1 | export { Welcome } from './welcome'; 2 | -------------------------------------------------------------------------------- /frontend/apps/tic-tac-toe/src/features/tic-tac-toe/index.ts: -------------------------------------------------------------------------------- 1 | export { Game } from './components/game'; 2 | export { Welcome } from './components/welcome'; 3 | -------------------------------------------------------------------------------- /frontend/apps/tic-tac-toe/src/features/tic-tac-toe/sails/index.ts: -------------------------------------------------------------------------------- 1 | export * from './events'; 2 | export * from './messages'; 3 | export * from './queries'; 4 | -------------------------------------------------------------------------------- /frontend/apps/tic-tac-toe/src/features/tic-tac-toe/sails/queries/index.ts: -------------------------------------------------------------------------------- 1 | export { useConfigQuery } from './use-config-query'; 2 | export { useGameQuery } from './use-game-query'; 3 | -------------------------------------------------------------------------------- /frontend/apps/tic-tac-toe/src/pages/not-found.tsx: -------------------------------------------------------------------------------- 1 | import { NotFound } from '@/components/layout/not-found'; 2 | 3 | export default function NotFoundPage() { 4 | return ; 5 | } 6 | -------------------------------------------------------------------------------- /frontend/apps/tic-tac-toe/src/utils/_index.scss: -------------------------------------------------------------------------------- 1 | @forward 'breakpoints'; 2 | @forward 'mixins'; 3 | @forward 'variables'; 4 | -------------------------------------------------------------------------------- /frontend/apps/tic-tac-toe/src/utils/_variables.scss: -------------------------------------------------------------------------------- 1 | $headerPadding: 20px; 2 | 3 | $inputWidth: 480px; 4 | 5 | $xCardPadding: 32px; 6 | $yCardPadding: 24px; 7 | $cardPadding: $yCardPadding $xCardPadding; 8 | -------------------------------------------------------------------------------- /frontend/apps/tic-tac-toe/src/vite-env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | -------------------------------------------------------------------------------- /frontend/apps/tic-tac-toe/vite.config.ts: -------------------------------------------------------------------------------- 1 | import { viteAppsConfig } from '../../vite.apps.config'; 2 | 3 | export default viteAppsConfig; 4 | -------------------------------------------------------------------------------- /frontend/apps/vara-man/postcss.config.js: -------------------------------------------------------------------------------- 1 | export default { 2 | plugins: { 3 | tailwindcss: {}, 4 | autoprefixer: {}, 5 | }, 6 | } 7 | -------------------------------------------------------------------------------- /frontend/apps/vara-man/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gear-foundation/dapps/d8c5cab8058f24c7ca474b566bc3d21b73078bb8/frontend/apps/vara-man/public/favicon.ico -------------------------------------------------------------------------------- /frontend/apps/vara-man/public/tiles.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gear-foundation/dapps/d8c5cab8058f24c7ca474b566bc3d21b73078bb8/frontend/apps/vara-man/public/tiles.png -------------------------------------------------------------------------------- /frontend/apps/vara-man/public/vara-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gear-foundation/dapps/d8c5cab8058f24c7ca474b566bc3d21b73078bb8/frontend/apps/vara-man/public/vara-logo.png -------------------------------------------------------------------------------- /frontend/apps/vara-man/src/app/utils/_index.scss: -------------------------------------------------------------------------------- 1 | @forward 'styles'; 2 | -------------------------------------------------------------------------------- /frontend/apps/vara-man/src/app/utils/sails/index.ts: -------------------------------------------------------------------------------- 1 | export * from './sails'; 2 | export * from './lib'; 3 | export * from './messages'; 4 | export * from './queries'; 5 | -------------------------------------------------------------------------------- /frontend/apps/vara-man/src/app/utils/styles/_index.scss: -------------------------------------------------------------------------------- 1 | @forward 'breakpoints'; 2 | @forward 'mixins'; 3 | @forward 'variables'; 4 | -------------------------------------------------------------------------------- /frontend/apps/vara-man/src/assets/fonts/kanit-250.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gear-foundation/dapps/d8c5cab8058f24c7ca474b566bc3d21b73078bb8/frontend/apps/vara-man/src/assets/fonts/kanit-250.woff2 -------------------------------------------------------------------------------- /frontend/apps/vara-man/src/assets/images/background.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gear-foundation/dapps/d8c5cab8058f24c7ca474b566bc3d21b73078bb8/frontend/apps/vara-man/src/assets/images/background.jpg -------------------------------------------------------------------------------- /frontend/apps/vara-man/src/assets/images/border.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gear-foundation/dapps/d8c5cab8058f24c7ca474b566bc3d21b73078bb8/frontend/apps/vara-man/src/assets/images/border.png -------------------------------------------------------------------------------- /frontend/apps/vara-man/src/assets/images/game/ghost.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gear-foundation/dapps/d8c5cab8058f24c7ca474b566bc3d21b73078bb8/frontend/apps/vara-man/src/assets/images/game/ghost.png -------------------------------------------------------------------------------- /frontend/apps/vara-man/src/assets/images/game/map.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gear-foundation/dapps/d8c5cab8058f24c7ca474b566bc3d21b73078bb8/frontend/apps/vara-man/src/assets/images/game/map.png -------------------------------------------------------------------------------- /frontend/apps/vara-man/src/assets/images/intro-clock.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gear-foundation/dapps/d8c5cab8058f24c7ca474b566bc3d21b73078bb8/frontend/apps/vara-man/src/assets/images/intro-clock.png -------------------------------------------------------------------------------- /frontend/apps/vara-man/src/assets/images/intro-map.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gear-foundation/dapps/d8c5cab8058f24c7ca474b566bc3d21b73078bb8/frontend/apps/vara-man/src/assets/images/intro-map.webp -------------------------------------------------------------------------------- /frontend/apps/vara-man/src/assets/images/intro-smoke.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gear-foundation/dapps/d8c5cab8058f24c7ca474b566bc3d21b73078bb8/frontend/apps/vara-man/src/assets/images/intro-smoke.webp -------------------------------------------------------------------------------- /frontend/apps/vara-man/src/assets/images/levels/bg1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gear-foundation/dapps/d8c5cab8058f24c7ca474b566bc3d21b73078bb8/frontend/apps/vara-man/src/assets/images/levels/bg1.jpg -------------------------------------------------------------------------------- /frontend/apps/vara-man/src/assets/images/levels/bg2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gear-foundation/dapps/d8c5cab8058f24c7ca474b566bc3d21b73078bb8/frontend/apps/vara-man/src/assets/images/levels/bg2.jpg -------------------------------------------------------------------------------- /frontend/apps/vara-man/src/assets/images/levels/bg3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gear-foundation/dapps/d8c5cab8058f24c7ca474b566bc3d21b73078bb8/frontend/apps/vara-man/src/assets/images/levels/bg3.jpg -------------------------------------------------------------------------------- /frontend/apps/vara-man/src/assets/images/welcome.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gear-foundation/dapps/d8c5cab8058f24c7ca474b566bc3d21b73078bb8/frontend/apps/vara-man/src/assets/images/welcome.png -------------------------------------------------------------------------------- /frontend/apps/vara-man/src/assets/styles/utils/_index.scss: -------------------------------------------------------------------------------- 1 | @forward 'breakpoints'; 2 | @forward 'mixins'; 3 | @forward 'variables'; 4 | -------------------------------------------------------------------------------- /frontend/apps/vara-man/src/components/index.ts: -------------------------------------------------------------------------------- 1 | import { Button, buttonVariants } from './ui/button'; 2 | import { Modal } from './ui/modal'; 3 | 4 | export { Button, buttonVariants, Modal }; 5 | -------------------------------------------------------------------------------- /frontend/apps/vara-man/src/components/layout/header/index.ts: -------------------------------------------------------------------------------- 1 | export { Header } from './header'; 2 | -------------------------------------------------------------------------------- /frontend/apps/vara-man/src/components/layout/header/logo/index.ts: -------------------------------------------------------------------------------- 1 | export { Logo } from './logo'; 2 | -------------------------------------------------------------------------------- /frontend/apps/vara-man/src/components/layout/index.ts: -------------------------------------------------------------------------------- 1 | export { Header } from './header'; 2 | -------------------------------------------------------------------------------- /frontend/apps/vara-man/src/components/loaders/api-loader/index.ts: -------------------------------------------------------------------------------- 1 | export { ApiLoader } from './ApiLoader'; 2 | -------------------------------------------------------------------------------- /frontend/apps/vara-man/src/components/loaders/loader/Loader.tsx: -------------------------------------------------------------------------------- 1 | import styles from './Loader.module.scss'; 2 | 3 | export const Loader = () =>
; 4 | -------------------------------------------------------------------------------- /frontend/apps/vara-man/src/components/loaders/loader/index.ts: -------------------------------------------------------------------------------- 1 | export { Loader } from './Loader'; 2 | -------------------------------------------------------------------------------- /frontend/apps/vara-man/src/components/ui/alert/index.ts: -------------------------------------------------------------------------------- 1 | export { Alert, alertStyles } from './alert'; 2 | export type { AlertProps } from './alert.types'; 3 | -------------------------------------------------------------------------------- /frontend/apps/vara-man/src/components/ui/button/index.ts: -------------------------------------------------------------------------------- 1 | export { Button, buttonVariants } from './button'; 2 | -------------------------------------------------------------------------------- /frontend/apps/vara-man/src/components/ui/modal/index.ts: -------------------------------------------------------------------------------- 1 | import { Modal } from './Modal'; 2 | 3 | export { Modal }; 4 | -------------------------------------------------------------------------------- /frontend/apps/vara-man/src/feature/single-game/index.tsx: -------------------------------------------------------------------------------- 1 | import { GameLayout } from './GameLayout'; 2 | 3 | export { GameLayout }; 4 | -------------------------------------------------------------------------------- /frontend/apps/vara-man/src/feature/tournament-game/index.tsx: -------------------------------------------------------------------------------- 1 | import { Game } from './Game'; 2 | 3 | export { Game }; 4 | -------------------------------------------------------------------------------- /frontend/apps/vara-man/src/vite-env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | -------------------------------------------------------------------------------- /frontend/apps/vara-man/vite.config.ts: -------------------------------------------------------------------------------- 1 | import { viteAppsConfig } from '../../vite.apps.config'; 2 | 3 | export default viteAppsConfig; 4 | -------------------------------------------------------------------------------- /frontend/apps/varatube/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gear-foundation/dapps/d8c5cab8058f24c7ca474b566bc3d21b73078bb8/frontend/apps/varatube/public/favicon.ico -------------------------------------------------------------------------------- /frontend/apps/varatube/src/app/utils/index.ts: -------------------------------------------------------------------------------- 1 | export * from './sails'; 2 | -------------------------------------------------------------------------------- /frontend/apps/varatube/src/app/utils/sails/index.ts: -------------------------------------------------------------------------------- 1 | export * from './sails'; 2 | export * from './queries'; 3 | export * from './messages'; 4 | -------------------------------------------------------------------------------- /frontend/apps/varatube/src/app/utils/sails/queries/index.ts: -------------------------------------------------------------------------------- 1 | export { useGetSubscriberQuery } from './use-get-subscriber-query'; 2 | export { useBalanceOfQuery } from './use-balance-of-query'; 3 | -------------------------------------------------------------------------------- /frontend/apps/varatube/src/assets/images/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gear-foundation/dapps/d8c5cab8058f24c7ca474b566bc3d21b73078bb8/frontend/apps/varatube/src/assets/images/logo.png -------------------------------------------------------------------------------- /frontend/apps/varatube/src/assets/images/pic.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gear-foundation/dapps/d8c5cab8058f24c7ca474b566bc3d21b73078bb8/frontend/apps/varatube/src/assets/images/pic.png -------------------------------------------------------------------------------- /frontend/apps/varatube/src/assets/styles/_shared.scss: -------------------------------------------------------------------------------- 1 | %absoluteCenter { 2 | position: absolute; 3 | top: 50%; 4 | left: 50%; 5 | transform: translate(-50%); 6 | } 7 | -------------------------------------------------------------------------------- /frontend/apps/varatube/src/assets/styles/index.scss: -------------------------------------------------------------------------------- 1 | @use '@gear-js/ui/resets'; 2 | @use '@gear-js/ui/typography'; 3 | -------------------------------------------------------------------------------- /frontend/apps/varatube/src/components/layout/header/index.ts: -------------------------------------------------------------------------------- 1 | import { Header } from './Header'; 2 | 3 | export { Header }; 4 | -------------------------------------------------------------------------------- /frontend/apps/varatube/src/components/layout/heading/Heading.module.scss: -------------------------------------------------------------------------------- 1 | @use '@gear-js/ui/headings' as *; 2 | 3 | .heading { 4 | @extend %h3; 5 | margin-bottom: 32px; 6 | } 7 | -------------------------------------------------------------------------------- /frontend/apps/varatube/src/components/layout/heading/index.ts: -------------------------------------------------------------------------------- 1 | import { Heading } from './Heading'; 2 | 3 | export { Heading }; 4 | -------------------------------------------------------------------------------- /frontend/apps/varatube/src/components/layout/index.ts: -------------------------------------------------------------------------------- 1 | import { Header } from './header'; 2 | import { Heading } from './heading'; 3 | 4 | export { Header, Heading }; 5 | -------------------------------------------------------------------------------- /frontend/apps/varatube/src/components/layout/on-login/index.ts: -------------------------------------------------------------------------------- 1 | import { OnLogin } from './OnLogin'; 2 | 3 | export { OnLogin }; 4 | -------------------------------------------------------------------------------- /frontend/apps/varatube/src/components/loaders/api-loader/index.ts: -------------------------------------------------------------------------------- 1 | import { ApiLoader } from './ApiLoader'; 2 | 3 | export { ApiLoader }; 4 | -------------------------------------------------------------------------------- /frontend/apps/varatube/src/components/loaders/index.ts: -------------------------------------------------------------------------------- 1 | import { ApiLoader } from './api-loader'; 2 | import { Loader } from './loader'; 3 | 4 | export { ApiLoader, Loader }; 5 | -------------------------------------------------------------------------------- /frontend/apps/varatube/src/components/loaders/loader/index.ts: -------------------------------------------------------------------------------- 1 | import { Loader } from './Loader'; 2 | 3 | export { Loader }; 4 | -------------------------------------------------------------------------------- /frontend/apps/varatube/src/components/modals/index.ts: -------------------------------------------------------------------------------- 1 | import { PurchaseSubscriptionModal } from './purchase-subscription-modal'; 2 | 3 | export { PurchaseSubscriptionModal }; 4 | -------------------------------------------------------------------------------- /frontend/apps/varatube/src/pages/subscription/index.ts: -------------------------------------------------------------------------------- 1 | import { Subscription } from './Subscription'; 2 | 3 | export { Subscription }; 4 | -------------------------------------------------------------------------------- /frontend/apps/varatube/src/pages/video/index.ts: -------------------------------------------------------------------------------- 1 | import { Video } from './Video'; 2 | 3 | export { Video }; 4 | -------------------------------------------------------------------------------- /frontend/apps/varatube/src/pages/videos/index.ts: -------------------------------------------------------------------------------- 1 | import { Videos } from './Videos'; 2 | 3 | export { Videos }; 4 | -------------------------------------------------------------------------------- /frontend/apps/varatube/src/types.ts: -------------------------------------------------------------------------------- 1 | import { initialValues } from '@/consts'; 2 | 3 | export type FormValues = typeof initialValues; 4 | -------------------------------------------------------------------------------- /frontend/apps/varatube/src/vite-env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | -------------------------------------------------------------------------------- /frontend/apps/varatube/vite.config.ts: -------------------------------------------------------------------------------- 1 | import { viteAppsConfig } from '../../vite.apps.config'; 2 | 3 | export default viteAppsConfig; 4 | -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gear-foundation/dapps/d8c5cab8058f24c7ca474b566bc3d21b73078bb8/frontend/apps/w3bstreaming/public/favicon.ico -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/src/app/hooks/index.ts: -------------------------------------------------------------------------------- 1 | export { usePending } from './use-pending'; 2 | export * from './use-execute-with-pendig'; 3 | export * from './use-sign-and-send'; 4 | -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/src/app/utils/index.ts: -------------------------------------------------------------------------------- 1 | export * from './sails'; 2 | -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/src/app/utils/sails/index.ts: -------------------------------------------------------------------------------- 1 | export * from './sails'; 2 | export * from './queries'; 3 | export * from './messages'; 4 | export * from './lib'; 5 | -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/src/app/utils/sails/queries/index.ts: -------------------------------------------------------------------------------- 1 | export { useGetStateQuery } from './use-get-state-query'; 2 | -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/src/assets/icons/picture.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gear-foundation/dapps/d8c5cab8058f24c7ca474b566bc3d21b73078bb8/frontend/apps/w3bstreaming/src/assets/icons/picture.png -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/src/components/Footer/index.ts: -------------------------------------------------------------------------------- 1 | export * from './Footer'; 2 | -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/src/components/Header/index.ts: -------------------------------------------------------------------------------- 1 | export * from './Header'; 2 | -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/src/components/Loader/Loader.interface.ts: -------------------------------------------------------------------------------- 1 | export interface LoaderProps { 2 | wholeScreen?: boolean; 3 | } 4 | -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/src/components/Loader/index.ts: -------------------------------------------------------------------------------- 1 | export * from './Loader'; 2 | -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/src/components/Modal/index.tsx: -------------------------------------------------------------------------------- 1 | export * from './Modal'; 2 | -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/src/components/index.ts: -------------------------------------------------------------------------------- 1 | export * from './Header'; 2 | export * from './Footer'; 3 | export * from './Modal'; 4 | export * from './Loader'; 5 | -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/src/features/Account/components/Layout/index.ts: -------------------------------------------------------------------------------- 1 | export * from './Layout'; 2 | -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/src/features/Account/components/ProfileInfo/index.ts: -------------------------------------------------------------------------------- 1 | export * from './ProfileInfo'; 2 | -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/src/features/Account/components/SubscribeModal/index.ts: -------------------------------------------------------------------------------- 1 | export * from './SubscribeModal'; 2 | -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/src/features/Account/components/UsersTable/index.ts: -------------------------------------------------------------------------------- 1 | export * from './UsersTable'; 2 | -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/src/features/Auth/components/AuthRoute/AuthRoute.interface.ts: -------------------------------------------------------------------------------- 1 | export interface AuthRouteProps { 2 | children: JSX.Element; 3 | } 4 | -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/src/features/Auth/components/AuthRoute/index.ts: -------------------------------------------------------------------------------- 1 | export * from './AuthRoute'; 2 | -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/src/features/Auth/components/CreateStreamRestrictModal/index.ts: -------------------------------------------------------------------------------- 1 | export * from './CreateStreamRestrictModal'; 2 | -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/src/features/Auth/components/ProtectedRoute/ProtectedRoute.interface.ts: -------------------------------------------------------------------------------- 1 | export interface ProtectedRouteProps { 2 | children: JSX.Element; 3 | } 4 | -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/src/features/Auth/components/ProtectedRoute/index.ts: -------------------------------------------------------------------------------- 1 | export * from './ProtectedRoute'; 2 | -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/src/features/Auth/components/index.ts: -------------------------------------------------------------------------------- 1 | export * from './AuthRoute'; 2 | export * from './ProtectedRoute'; 3 | export * from './CreateStreamRestrictModal'; 4 | -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/src/features/CreateStream/atoms.ts: -------------------------------------------------------------------------------- 1 | import { atom } from 'jotai'; 2 | 3 | export const IS_CREATING_STREAM = atom(false); 4 | -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/src/features/CreateStream/components/DayPicker/index.ts: -------------------------------------------------------------------------------- 1 | export * from './DayPicker'; 2 | -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/src/features/CreateStream/components/LayoutCreateForm/index.ts: -------------------------------------------------------------------------------- 1 | export * from './LayoutCreateForm'; 2 | -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/src/features/CreateStream/components/PictureDropzone/index.ts: -------------------------------------------------------------------------------- 1 | export * from './PictureDropzone'; 2 | -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/src/features/Stream/components/Broadcast/index.ts: -------------------------------------------------------------------------------- 1 | export * from './Broadcast'; 2 | -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/src/features/Stream/components/Layout/index.ts: -------------------------------------------------------------------------------- 1 | export * from './Layout'; 2 | -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/src/features/Stream/components/Player/index.ts: -------------------------------------------------------------------------------- 1 | export * from './Player'; 2 | -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/src/features/Stream/components/Watch/index.ts: -------------------------------------------------------------------------------- 1 | export * from './Watch'; 2 | -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/src/features/Stream/components/index.ts: -------------------------------------------------------------------------------- 1 | export * from './Broadcast'; 2 | export * from './Watch'; 3 | -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/src/features/StreamTeasers/components/StreamTeaser/index.ts: -------------------------------------------------------------------------------- 1 | export * from './StreamTeaser'; 2 | -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/src/features/StreamTeasers/components/StreamTeasersList/index.ts: -------------------------------------------------------------------------------- 1 | export * from './StreamTeasersList'; 2 | -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/src/features/StreamTeasers/components/index.ts: -------------------------------------------------------------------------------- 1 | export * from './StreamTeasersList'; 2 | -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/src/features/StreamTeasers/index.ts: -------------------------------------------------------------------------------- 1 | export * from './components'; 2 | -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/src/pages/MainPage/components/HowItWorksInfo/index.ts: -------------------------------------------------------------------------------- 1 | export * from './HowItWorksInfo'; 2 | -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/src/pages/MainPage/components/IntrodutionInfo/index.ts: -------------------------------------------------------------------------------- 1 | export * from './IntrodutionInfo'; 2 | -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/src/pages/index.ts: -------------------------------------------------------------------------------- 1 | export * from './MainPage'; 2 | export * from './AccountPage'; 3 | export * from './CreateStreamPage'; 4 | export * from './StreamPage'; 5 | -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/src/ui/Button/index.ts: -------------------------------------------------------------------------------- 1 | export * from './Button'; 2 | -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/src/ui/Calendar/Calendar.interfaces.ts: -------------------------------------------------------------------------------- 1 | export interface CalendarProps { 2 | onChange?: (date: Date) => void; 3 | } 4 | -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/src/ui/Calendar/index.ts: -------------------------------------------------------------------------------- 1 | export * from './Calendar'; 2 | -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/src/ui/Dropdown/index.ts: -------------------------------------------------------------------------------- 1 | export * from './Dropdown'; 2 | -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/src/ui/DropzoneUploader/index.ts: -------------------------------------------------------------------------------- 1 | export * from './DropzoneUploader'; 2 | -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/src/ui/InputArea/index.ts: -------------------------------------------------------------------------------- 1 | export * from './InputArea'; 2 | -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/src/ui/Link/Link.interfaces.ts: -------------------------------------------------------------------------------- 1 | import { ReactNode } from 'react'; 2 | 3 | export interface LinkProps { 4 | to: string; 5 | children: ReactNode; 6 | } 7 | -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/src/ui/Link/index.ts: -------------------------------------------------------------------------------- 1 | export * from './Link'; 2 | -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/src/ui/Pagination/index.ts: -------------------------------------------------------------------------------- 1 | export * from './Pagination'; 2 | -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/src/ui/Search/index.ts: -------------------------------------------------------------------------------- 1 | export * from './Search'; 2 | -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/src/ui/Select/index.ts: -------------------------------------------------------------------------------- 1 | export * from './Select'; 2 | -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/src/ui/TabPanel/index.ts: -------------------------------------------------------------------------------- 1 | import { TabPanel } from './TabPanel'; 2 | 3 | export { TabPanel }; 4 | -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/src/ui/Table/index.ts: -------------------------------------------------------------------------------- 1 | export * from './Table'; 2 | -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/src/ui/TextField/index.ts: -------------------------------------------------------------------------------- 1 | export * from './TextField'; 2 | -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/src/ui/TimePicker/index.ts: -------------------------------------------------------------------------------- 1 | export * from './TimePicker'; 2 | -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/src/vite-env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | -------------------------------------------------------------------------------- /frontend/apps/w3bstreaming/vite.config.ts: -------------------------------------------------------------------------------- 1 | import { viteAppsConfig } from '../../vite.apps.config'; 2 | 3 | export default viteAppsConfig; 4 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/app.scss: -------------------------------------------------------------------------------- 1 | @import '@/assets/styles'; 2 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/app/utils/sails/index.ts: -------------------------------------------------------------------------------- 1 | export * from './sails'; 2 | export * from './battle'; 3 | export * from './queries'; 4 | export * from './messages'; 5 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/assets/styles/index.scss: -------------------------------------------------------------------------------- 1 | @import 'common'; 2 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/components/layout/game-details/index.ts: -------------------------------------------------------------------------------- 1 | import { GameDetails } from './GameDetails'; 2 | 3 | export { GameDetails }; 4 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/components/layout/header/index.ts: -------------------------------------------------------------------------------- 1 | export { Header } from './header'; 2 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/components/layout/header/logo/index.ts: -------------------------------------------------------------------------------- 1 | export { Logo } from './logo'; 2 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/components/layout/index.ts: -------------------------------------------------------------------------------- 1 | export { Header } from './header'; 2 | export { VaraIcon } from './vara-svg'; 3 | export { GameDetails } from './game-details'; 4 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/components/layout/vara-svg/index.ts: -------------------------------------------------------------------------------- 1 | import { VaraIcon } from './VaraIcon'; 2 | 3 | export { VaraIcon }; 4 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/components/loaders/api-loader/index.ts: -------------------------------------------------------------------------------- 1 | import { ApiLoader } from './ApiLoader'; 2 | 3 | export { ApiLoader }; 4 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/components/loaders/index.ts: -------------------------------------------------------------------------------- 1 | export { ApiLoader } from './api-loader'; 2 | export { Loader } from './loader'; 3 | export { LoadingError } from './loading-error'; 4 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/components/loaders/loader/index.ts: -------------------------------------------------------------------------------- 1 | import { Loader } from './Loader'; 2 | 3 | export { Loader }; 4 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/components/loaders/loading-error/index.ts: -------------------------------------------------------------------------------- 1 | export { LoadingError } from './loading-error'; 2 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/components/ui/card-button/index.ts: -------------------------------------------------------------------------------- 1 | export { CardButton } from './card-button'; 2 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/components/ui/card/index.ts: -------------------------------------------------------------------------------- 1 | export { Card } from './card'; 2 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/components/ui/container/index.ts: -------------------------------------------------------------------------------- 1 | export { Container } from './container'; 2 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/components/ui/heading/index.ts: -------------------------------------------------------------------------------- 1 | export { Heading, headingVariants } from './Heading'; 2 | export type { HeadingProps } from './Heading'; 3 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/components/ui/modal/index.ts: -------------------------------------------------------------------------------- 1 | import { Modal } from './Modal'; 2 | 3 | export { Modal }; 4 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/components/ui/scroll-area/index.ts: -------------------------------------------------------------------------------- 1 | export { ScrollArea, ScrollBar } from './scroll-area'; 2 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/components/ui/segmented/index.ts: -------------------------------------------------------------------------------- 1 | export { Segmented } from './segmented'; 2 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/components/ui/table/index.ts: -------------------------------------------------------------------------------- 1 | export { Table, TableBody, TableCell, TableFooter, TableCaption, TableHead, TableHeader, TableRow } from './table'; 2 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/components/ui/text-gradient/index.ts: -------------------------------------------------------------------------------- 1 | import { TextGradient } from './text-gradient'; 2 | 3 | export { TextGradient }; 4 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/components/ui/text/index.ts: -------------------------------------------------------------------------------- 1 | export { Text, textVariants } from './text'; 2 | export type { TextProps } from './text'; 3 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/features/game/components/animations/index.ts: -------------------------------------------------------------------------------- 1 | export { FireballCanvas } from './fireball/fireball'; 2 | export { SphereAnimation } from './sphere/sphere'; 3 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/features/game/components/avatar/index.ts: -------------------------------------------------------------------------------- 1 | export { Avatar } from './avatar'; 2 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/features/game/components/background/index.ts: -------------------------------------------------------------------------------- 1 | export { Background } from './background'; 2 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/features/game/components/battle-card/index.tsx: -------------------------------------------------------------------------------- 1 | export { BattleCard } from './battle-card'; 2 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/features/game/components/battle-history-card/index.tsx: -------------------------------------------------------------------------------- 1 | export { BattleHistoryCard } from './battle-history-card'; 2 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/features/game/components/battle-history-sync/index.ts: -------------------------------------------------------------------------------- 1 | export { BattleHistorySinc } from './battle-history-sync'; 2 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/features/game/components/battle-result-card/index.ts: -------------------------------------------------------------------------------- 1 | import { BattleResultCard } from './battle-result-card'; 2 | 3 | export { BattleResultCard }; 4 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/features/game/components/character-stats-form/index.ts: -------------------------------------------------------------------------------- 1 | export { CharacterStatsForm } from './character-stats-from'; 2 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/features/game/components/character-stats/index.ts: -------------------------------------------------------------------------------- 1 | export { CharacterStats } from './character-stats'; 2 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/features/game/components/character/index.ts: -------------------------------------------------------------------------------- 1 | export { Character } from './character'; 2 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/features/game/components/game-button/index.ts: -------------------------------------------------------------------------------- 1 | export { GameButton } from './game-button'; 2 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/features/game/components/game-spinner/index.ts: -------------------------------------------------------------------------------- 1 | export { GameSpinner } from './game-spinner'; 2 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/features/game/components/health-indicator/index.ts: -------------------------------------------------------------------------------- 1 | export { HealthIndicator } from './health-indicator'; 2 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/features/game/components/list/index.ts: -------------------------------------------------------------------------------- 1 | export { List } from './list'; 2 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/features/game/components/modals/game-canceled-modal/index.ts: -------------------------------------------------------------------------------- 1 | export { GameCanceledModal } from './game-canceled-modal'; 2 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/features/game/components/player-status/index.ts: -------------------------------------------------------------------------------- 1 | export { PlayerStatus } from './player-status'; 2 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/features/game/components/players-list/index.ts: -------------------------------------------------------------------------------- 1 | export { PlayersList } from './players-list'; 2 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/features/game/components/sections/battle-tabs/index.ts: -------------------------------------------------------------------------------- 1 | export { BattleTabs } from './battle-tabs'; 2 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/features/game/components/sections/create-game-form/index.ts: -------------------------------------------------------------------------------- 1 | import { CreateGameForm } from './create-game-form'; 2 | 3 | export { CreateGameForm }; 4 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/features/game/components/sections/find-game-form/index.ts: -------------------------------------------------------------------------------- 1 | import { FindGameForm } from './find-game-form'; 2 | 3 | export { FindGameForm }; 4 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/features/game/components/timer/index.ts: -------------------------------------------------------------------------------- 1 | import { Timer } from './timer'; 2 | 3 | export { Timer }; 4 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/features/game/components/wait-list/index.ts: -------------------------------------------------------------------------------- 1 | export { WaitList } from './wait-list'; 2 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/features/onboarding/consts.ts: -------------------------------------------------------------------------------- 1 | const ONBOARDING_ROUTE = '/onboarding'; 2 | 3 | export { ONBOARDING_ROUTE }; 4 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/features/onboarding/index.ts: -------------------------------------------------------------------------------- 1 | import { ONBOARDING_ROUTE } from './consts'; 2 | 3 | export { ONBOARDING_ROUTE }; 4 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/pages/create-game/index.ts: -------------------------------------------------------------------------------- 1 | import { CreateGame } from './create-game'; 2 | 3 | export { CreateGame }; 4 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/pages/find-game/index.ts: -------------------------------------------------------------------------------- 1 | import { FindGame } from './find-game'; 2 | 3 | export { FindGame }; 4 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/pages/game/index.ts: -------------------------------------------------------------------------------- 1 | import { Game } from './game'; 2 | 3 | export { Game }; 4 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/pages/generate-character/index.ts: -------------------------------------------------------------------------------- 1 | import { GenerateCharacter } from './generate-character'; 2 | 3 | export { GenerateCharacter }; 4 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/pages/home/index.ts: -------------------------------------------------------------------------------- 1 | import { Home } from './home'; 2 | 3 | export { Home }; 4 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/pages/import-character/index.ts: -------------------------------------------------------------------------------- 1 | import { ImportCharacter } from './import-character'; 2 | 3 | export { ImportCharacter }; 4 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/pages/not-found/index.ts: -------------------------------------------------------------------------------- 1 | import { NotFound } from './not-found'; 2 | 3 | export { NotFound }; 4 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/pages/onboarding/index.ts: -------------------------------------------------------------------------------- 1 | import { Onboarding } from './onboarding'; 2 | 3 | export { Onboarding }; 4 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/pages/waiting/index.ts: -------------------------------------------------------------------------------- 1 | import { Waiting } from './waiting'; 2 | 3 | export { Waiting }; 4 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/utils/_index.scss: -------------------------------------------------------------------------------- 1 | @forward 'breakpoints'; 2 | @forward 'mixins'; 3 | @forward 'variables'; 4 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/src/vite-env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | -------------------------------------------------------------------------------- /frontend/apps/web3-warriors-battle/vite.config.ts: -------------------------------------------------------------------------------- 1 | import { viteAppsConfig } from '../../vite.apps.config'; 2 | 3 | export default viteAppsConfig; 4 | -------------------------------------------------------------------------------- /frontend/packages/README.md: -------------------------------------------------------------------------------- 1 | # @dapps-frontend/packages 2 | 3 | Shared packages used across applications. 4 | -------------------------------------------------------------------------------- /frontend/packages/error-tracking/src/index.d.ts: -------------------------------------------------------------------------------- 1 | interface ImportMeta { 2 | env: { 3 | [key: string]: string | undefined; 4 | }; 5 | } 6 | -------------------------------------------------------------------------------- /frontend/packages/ez-transactions/src/components/ez-gasless-transactions/index.ts: -------------------------------------------------------------------------------- 1 | import { EzGaslessTransactions } from './ez-gasless-transactions'; 2 | 3 | export { EzGaslessTransactions }; 4 | -------------------------------------------------------------------------------- /frontend/packages/ez-transactions/src/components/ez-signless-transactions/index.ts: -------------------------------------------------------------------------------- 1 | import { EzSignlessTransactions } from './ez-signless-transactions'; 2 | 3 | export { EzSignlessTransactions }; 4 | -------------------------------------------------------------------------------- /frontend/packages/ez-transactions/src/components/ez-transactions-switch/ez-transactions-switch.module.css: -------------------------------------------------------------------------------- 1 | .container { 2 | display: flex; 3 | flex-direction: column; 4 | gap: 16px; 5 | } 6 | -------------------------------------------------------------------------------- /frontend/packages/ez-transactions/src/features/signless-transactions/components/account-pair/index.ts: -------------------------------------------------------------------------------- 1 | import { AccountPair } from './account-pair'; 2 | 3 | export { AccountPair }; 4 | -------------------------------------------------------------------------------- /frontend/packages/ez-transactions/src/features/signless-transactions/components/signless-active/index.ts: -------------------------------------------------------------------------------- 1 | import { SignlessActive } from './signless-active'; 2 | 3 | export { SignlessActive }; 4 | -------------------------------------------------------------------------------- /frontend/packages/ez-transactions/src/features/signless-transactions/components/signless-params-list/index.ts: -------------------------------------------------------------------------------- 1 | import { SignlessParams } from './signless-params'; 2 | 3 | export { SignlessParams }; 4 | -------------------------------------------------------------------------------- /frontend/packages/ez-transactions/src/hooks/index.ts: -------------------------------------------------------------------------------- 1 | import { usePrepareEzTransactionParams } from './use-prepare-ez-transaction-params'; 2 | 3 | export { usePrepareEzTransactionParams }; 4 | -------------------------------------------------------------------------------- /frontend/packages/ez-transactions/src/vite-env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | /// 3 | -------------------------------------------------------------------------------- /frontend/packages/hooks/src/consts.ts: -------------------------------------------------------------------------------- 1 | export const VOUCHER_MIN_LIMIT = 18; 2 | -------------------------------------------------------------------------------- /frontend/packages/hooks/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../tsconfig.json", 3 | "include": ["src"] 4 | } 5 | -------------------------------------------------------------------------------- /frontend/packages/ui/src/components/container/index.ts: -------------------------------------------------------------------------------- 1 | import { Container } from './container'; 2 | 3 | export { Container }; 4 | -------------------------------------------------------------------------------- /frontend/packages/ui/src/components/footer/index.ts: -------------------------------------------------------------------------------- 1 | import { Footer } from './footer'; 2 | 3 | export { Footer }; 4 | -------------------------------------------------------------------------------- /frontend/packages/ui/src/components/header/index.ts: -------------------------------------------------------------------------------- 1 | import { Header } from './header'; 2 | 3 | export { Header }; 4 | -------------------------------------------------------------------------------- /frontend/packages/ui/src/components/menu-handler/index.ts: -------------------------------------------------------------------------------- 1 | export { MenuHandler } from './menu-handler'; 2 | -------------------------------------------------------------------------------- /frontend/packages/ui/src/components/menu-options/index.ts: -------------------------------------------------------------------------------- 1 | export { MenuOptions } from './menu-options'; 2 | export type { ClassNameProps as MenuOptionsClassNameProps } from './menu-options'; 3 | -------------------------------------------------------------------------------- /frontend/packages/ui/src/components/mobile-menu/index.ts: -------------------------------------------------------------------------------- 1 | export { MobileMenu } from './mobile-menu'; 2 | export type { ClassNameProps as MobileMenuClassNameProps } from './mobile-menu'; 3 | -------------------------------------------------------------------------------- /frontend/packages/ui/src/components/scroll-area/index.ts: -------------------------------------------------------------------------------- 1 | export { ScrollArea, ScrollBar } from './scroll-area'; 2 | -------------------------------------------------------------------------------- /frontend/packages/ui/src/components/start-disclaimer/index.ts: -------------------------------------------------------------------------------- 1 | import { StartDisclaimer } from './start-disclaimer'; 2 | 3 | export { StartDisclaimer }; 4 | -------------------------------------------------------------------------------- /frontend/packages/ui/src/components/switcher/index.ts: -------------------------------------------------------------------------------- 1 | import { Switcher } from './switcher'; 2 | 3 | export { Switcher }; 4 | -------------------------------------------------------------------------------- /frontend/packages/ui/src/vite-env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | /// 3 | -------------------------------------------------------------------------------- /frontend/templates/create-gear-app/.env.example: -------------------------------------------------------------------------------- 1 | VITE_NODE_ADDRESS= 2 | -------------------------------------------------------------------------------- /frontend/templates/create-gear-app/public/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gear-foundation/dapps/d8c5cab8058f24c7ca474b566bc3d21b73078bb8/frontend/templates/create-gear-app/public/favicon.png -------------------------------------------------------------------------------- /frontend/templates/create-gear-app/src/assets/styles/_shared.scss: -------------------------------------------------------------------------------- 1 | %absoluteCenter { 2 | position: absolute; 3 | top: 50%; 4 | left: 50%; 5 | transform: translate(-50%); 6 | } 7 | -------------------------------------------------------------------------------- /frontend/templates/create-gear-app/src/assets/styles/index.scss: -------------------------------------------------------------------------------- 1 | @use '@gear-js/ui/resets'; 2 | @use '@gear-js/ui/typography'; 3 | -------------------------------------------------------------------------------- /frontend/templates/create-gear-app/src/components/layout/footer/copyright/Copyright.module.scss: -------------------------------------------------------------------------------- 1 | @use '@gear-js/ui/variables' as *; 2 | 3 | .copyright { 4 | color: $textColorSecondary; 5 | } 6 | -------------------------------------------------------------------------------- /frontend/templates/create-gear-app/src/components/layout/footer/copyright/index.ts: -------------------------------------------------------------------------------- 1 | import { Copyright } from './Copyright'; 2 | 3 | export { Copyright }; 4 | -------------------------------------------------------------------------------- /frontend/templates/create-gear-app/src/components/layout/footer/index.ts: -------------------------------------------------------------------------------- 1 | import { Footer } from './Footer'; 2 | 3 | export { Footer }; 4 | -------------------------------------------------------------------------------- /frontend/templates/create-gear-app/src/components/layout/footer/socials/index.ts: -------------------------------------------------------------------------------- 1 | import { Socials } from './Socials'; 2 | 3 | export { Socials }; 4 | -------------------------------------------------------------------------------- /frontend/templates/create-gear-app/src/components/layout/header/index.ts: -------------------------------------------------------------------------------- 1 | import { Header } from './Header'; 2 | 3 | export { Header }; 4 | -------------------------------------------------------------------------------- /frontend/templates/create-gear-app/src/components/layout/header/logo/index.ts: -------------------------------------------------------------------------------- 1 | import { Logo } from './Logo'; 2 | 3 | export { Logo }; 4 | -------------------------------------------------------------------------------- /frontend/templates/create-gear-app/src/components/layout/index.ts: -------------------------------------------------------------------------------- 1 | import { Footer } from './footer'; 2 | import { Header } from './header'; 3 | 4 | export { Header, Footer }; 5 | -------------------------------------------------------------------------------- /frontend/templates/create-gear-app/src/components/loaders/api-loader/index.ts: -------------------------------------------------------------------------------- 1 | import { ApiLoader } from './ApiLoader'; 2 | 3 | export { ApiLoader }; 4 | -------------------------------------------------------------------------------- /frontend/templates/create-gear-app/src/components/loaders/index.ts: -------------------------------------------------------------------------------- 1 | import { ApiLoader } from './api-loader'; 2 | import { Loader } from './loader'; 3 | 4 | export { ApiLoader, Loader }; 5 | -------------------------------------------------------------------------------- /frontend/templates/create-gear-app/src/components/loaders/loader/index.ts: -------------------------------------------------------------------------------- 1 | import { Loader } from './Loader'; 2 | 3 | export { Loader }; 4 | -------------------------------------------------------------------------------- /frontend/templates/create-gear-app/src/consts.ts: -------------------------------------------------------------------------------- 1 | const ENV = { 2 | NODE: import.meta.env.VITE_NODE_ADDRESS as string, 3 | }; 4 | 5 | export { ENV }; 6 | -------------------------------------------------------------------------------- /frontend/templates/create-gear-app/src/hooks/index.ts: -------------------------------------------------------------------------------- 1 | import { useProgramMetadata } from './api'; 2 | 3 | export { useProgramMetadata }; 4 | -------------------------------------------------------------------------------- /frontend/templates/create-gear-app/src/pages/home/Home.tsx: -------------------------------------------------------------------------------- 1 | function Home() { 2 | return
Home page
; 3 | } 4 | 5 | export { Home }; 6 | -------------------------------------------------------------------------------- /frontend/templates/create-gear-app/src/pages/home/index.ts: -------------------------------------------------------------------------------- 1 | import { Home } from './Home'; 2 | 3 | export { Home }; 4 | -------------------------------------------------------------------------------- /frontend/templates/create-gear-app/src/utils/_index.scss: -------------------------------------------------------------------------------- 1 | @forward 'styles'; 2 | -------------------------------------------------------------------------------- /frontend/templates/create-gear-app/src/utils/styles/_index.scss: -------------------------------------------------------------------------------- 1 | @forward 'breakpoints'; 2 | @forward 'mixins'; 3 | -------------------------------------------------------------------------------- /frontend/templates/create-gear-app/src/vite-env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | /// 3 | -------------------------------------------------------------------------------- /frontend/templates/create-vara-app/.env.example: -------------------------------------------------------------------------------- 1 | VITE_NODE_ADDRESS= 2 | -------------------------------------------------------------------------------- /frontend/templates/create-vara-app/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gear-foundation/dapps/d8c5cab8058f24c7ca474b566bc3d21b73078bb8/frontend/templates/create-vara-app/public/favicon.ico -------------------------------------------------------------------------------- /frontend/templates/create-vara-app/src/components/layout/footer/Footer.module.scss: -------------------------------------------------------------------------------- 1 | .footer { 2 | display: flex; 3 | justify-content: space-between; 4 | padding: 25px 0; 5 | } 6 | -------------------------------------------------------------------------------- /frontend/templates/create-vara-app/src/components/layout/footer/copyright/Copyright.module.scss: -------------------------------------------------------------------------------- 1 | .copyright { 2 | color: rgba(#000, 0.7); 3 | } 4 | -------------------------------------------------------------------------------- /frontend/templates/create-vara-app/src/components/layout/footer/copyright/index.ts: -------------------------------------------------------------------------------- 1 | import { Copyright } from './Copyright'; 2 | 3 | export { Copyright }; 4 | -------------------------------------------------------------------------------- /frontend/templates/create-vara-app/src/components/layout/footer/index.ts: -------------------------------------------------------------------------------- 1 | import { Footer } from './Footer'; 2 | 3 | export { Footer }; 4 | -------------------------------------------------------------------------------- /frontend/templates/create-vara-app/src/components/layout/footer/socials/index.ts: -------------------------------------------------------------------------------- 1 | import { Socials } from './Socials'; 2 | 3 | export { Socials }; 4 | -------------------------------------------------------------------------------- /frontend/templates/create-vara-app/src/components/layout/header/index.ts: -------------------------------------------------------------------------------- 1 | import { Header } from './Header'; 2 | 3 | export { Header }; 4 | -------------------------------------------------------------------------------- /frontend/templates/create-vara-app/src/components/layout/header/logo/index.ts: -------------------------------------------------------------------------------- 1 | import { Logo } from './Logo'; 2 | 3 | export { Logo }; 4 | -------------------------------------------------------------------------------- /frontend/templates/create-vara-app/src/components/layout/index.ts: -------------------------------------------------------------------------------- 1 | import { Footer } from './footer'; 2 | import { Header } from './header'; 3 | 4 | export { Header, Footer }; 5 | -------------------------------------------------------------------------------- /frontend/templates/create-vara-app/src/components/loaders/api-loader/index.ts: -------------------------------------------------------------------------------- 1 | import { ApiLoader } from './ApiLoader'; 2 | 3 | export { ApiLoader }; 4 | -------------------------------------------------------------------------------- /frontend/templates/create-vara-app/src/components/loaders/index.ts: -------------------------------------------------------------------------------- 1 | import { ApiLoader } from './api-loader'; 2 | import { Loader } from './loader'; 3 | 4 | export { ApiLoader, Loader }; 5 | -------------------------------------------------------------------------------- /frontend/templates/create-vara-app/src/components/loaders/loader/index.ts: -------------------------------------------------------------------------------- 1 | import { Loader } from './Loader'; 2 | 3 | export { Loader }; 4 | -------------------------------------------------------------------------------- /frontend/templates/create-vara-app/src/consts.ts: -------------------------------------------------------------------------------- 1 | const ENV = { 2 | NODE: import.meta.env.VITE_NODE_ADDRESS as string, 3 | }; 4 | 5 | export { ENV }; 6 | -------------------------------------------------------------------------------- /frontend/templates/create-vara-app/src/hooks/index.ts: -------------------------------------------------------------------------------- 1 | import { useProgramMetadata } from './api'; 2 | 3 | export { useProgramMetadata }; 4 | -------------------------------------------------------------------------------- /frontend/templates/create-vara-app/src/pages/home/Home.tsx: -------------------------------------------------------------------------------- 1 | function Home() { 2 | return
Home page
; 3 | } 4 | 5 | export { Home }; 6 | -------------------------------------------------------------------------------- /frontend/templates/create-vara-app/src/pages/home/index.ts: -------------------------------------------------------------------------------- 1 | import { Home } from './Home'; 2 | 3 | export { Home }; 4 | -------------------------------------------------------------------------------- /frontend/templates/create-vara-app/src/utils/_index.scss: -------------------------------------------------------------------------------- 1 | @forward 'styles'; 2 | -------------------------------------------------------------------------------- /frontend/templates/create-vara-app/src/utils/styles/_index.scss: -------------------------------------------------------------------------------- 1 | @forward 'breakpoints'; 2 | @forward 'mixins'; 3 | -------------------------------------------------------------------------------- /frontend/templates/create-vara-app/src/vite-env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | /// 3 | --------------------------------------------------------------------------------