diff --git a/README.md b/README.md
index 8ae5f59..de52e97 100644
--- a/README.md
+++ b/README.md
@@ -1,3 +1,7 @@
+# Pokemon Guessing Game!
+
+Guess the type, name, or evolution of a randomly generated Gen 1 Pokemon.
+
# BillLearningApp
This project was generated with [Angular CLI](https://github.com/angular/angular-cli) version 8.3.2.
diff --git a/package-lock.json b/package-lock.json
index 81af712..7c9dffb 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -320,8 +320,7 @@
"ansi-regex": {
"version": "2.1.1",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
},
"aproba": {
"version": "1.2.0",
@@ -342,14 +341,12 @@
"balanced-match": {
"version": "1.0.0",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
},
"brace-expansion": {
"version": "1.1.11",
"bundled": true,
"dev": true,
- "optional": true,
"requires": {
"balanced-match": "^1.0.0",
"concat-map": "0.0.1"
@@ -364,20 +361,17 @@
"code-point-at": {
"version": "1.1.0",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
},
"concat-map": {
"version": "0.0.1",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
},
"console-control-strings": {
"version": "1.1.0",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
},
"core-util-is": {
"version": "1.0.2",
@@ -494,8 +488,7 @@
"inherits": {
"version": "2.0.3",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
},
"ini": {
"version": "1.3.5",
@@ -507,7 +500,6 @@
"version": "1.0.0",
"bundled": true,
"dev": true,
- "optional": true,
"requires": {
"number-is-nan": "^1.0.0"
}
@@ -522,7 +514,6 @@
"version": "3.0.4",
"bundled": true,
"dev": true,
- "optional": true,
"requires": {
"brace-expansion": "^1.1.7"
}
@@ -530,14 +521,12 @@
"minimist": {
"version": "0.0.8",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
},
"minipass": {
"version": "2.3.5",
"bundled": true,
"dev": true,
- "optional": true,
"requires": {
"safe-buffer": "^5.1.2",
"yallist": "^3.0.0"
@@ -556,7 +545,6 @@
"version": "0.5.1",
"bundled": true,
"dev": true,
- "optional": true,
"requires": {
"minimist": "0.0.8"
}
@@ -637,8 +625,7 @@
"number-is-nan": {
"version": "1.0.1",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
},
"object-assign": {
"version": "4.1.1",
@@ -650,7 +637,6 @@
"version": "1.4.0",
"bundled": true,
"dev": true,
- "optional": true,
"requires": {
"wrappy": "1"
}
@@ -736,8 +722,7 @@
"safe-buffer": {
"version": "5.1.2",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
},
"safer-buffer": {
"version": "2.1.2",
@@ -773,7 +758,6 @@
"version": "1.0.2",
"bundled": true,
"dev": true,
- "optional": true,
"requires": {
"code-point-at": "^1.0.0",
"is-fullwidth-code-point": "^1.0.0",
@@ -793,7 +777,6 @@
"version": "3.0.1",
"bundled": true,
"dev": true,
- "optional": true,
"requires": {
"ansi-regex": "^2.0.0"
}
@@ -837,14 +820,12 @@
"wrappy": {
"version": "1.0.2",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
},
"yallist": {
"version": "3.0.3",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
}
}
},
@@ -5397,9 +5378,9 @@
"dev": true
},
"handlebars": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.1.2.tgz",
- "integrity": "sha512-nvfrjqvt9xQ8Z/w0ijewdD/vvWDTOweBUm96NTr66Wfvo1mJenBLwcYmPs3TIBP5ruzYGD7Hx/DaM9RmhroGPw==",
+ "version": "4.3.3",
+ "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.3.3.tgz",
+ "integrity": "sha512-VupOxR91xcGojfINrzMqrvlyYbBs39sXIrWa7YdaQWeBudOlvKEGvCczMfJPgnuwHE/zyH1M6J+IUP6cgDVyxg==",
"dev": true,
"requires": {
"neo-async": "^2.6.0",
@@ -6722,8 +6703,7 @@
"ansi-regex": {
"version": "2.1.1",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
},
"aproba": {
"version": "1.2.0",
@@ -6744,14 +6724,12 @@
"balanced-match": {
"version": "1.0.0",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
},
"brace-expansion": {
"version": "1.1.11",
"bundled": true,
"dev": true,
- "optional": true,
"requires": {
"balanced-match": "^1.0.0",
"concat-map": "0.0.1"
@@ -6766,20 +6744,17 @@
"code-point-at": {
"version": "1.1.0",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
},
"concat-map": {
"version": "0.0.1",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
},
"console-control-strings": {
"version": "1.1.0",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
},
"core-util-is": {
"version": "1.0.2",
@@ -6896,8 +6871,7 @@
"inherits": {
"version": "2.0.3",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
},
"ini": {
"version": "1.3.5",
@@ -6909,7 +6883,6 @@
"version": "1.0.0",
"bundled": true,
"dev": true,
- "optional": true,
"requires": {
"number-is-nan": "^1.0.0"
}
@@ -6924,7 +6897,6 @@
"version": "3.0.4",
"bundled": true,
"dev": true,
- "optional": true,
"requires": {
"brace-expansion": "^1.1.7"
}
@@ -6932,14 +6904,12 @@
"minimist": {
"version": "0.0.8",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
},
"minipass": {
"version": "2.3.5",
"bundled": true,
"dev": true,
- "optional": true,
"requires": {
"safe-buffer": "^5.1.2",
"yallist": "^3.0.0"
@@ -6958,7 +6928,6 @@
"version": "0.5.1",
"bundled": true,
"dev": true,
- "optional": true,
"requires": {
"minimist": "0.0.8"
}
@@ -7039,8 +7008,7 @@
"number-is-nan": {
"version": "1.0.1",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
},
"object-assign": {
"version": "4.1.1",
@@ -7052,7 +7020,6 @@
"version": "1.4.0",
"bundled": true,
"dev": true,
- "optional": true,
"requires": {
"wrappy": "1"
}
@@ -7138,8 +7105,7 @@
"safe-buffer": {
"version": "5.1.2",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
},
"safer-buffer": {
"version": "2.1.2",
@@ -7175,7 +7141,6 @@
"version": "1.0.2",
"bundled": true,
"dev": true,
- "optional": true,
"requires": {
"code-point-at": "^1.0.0",
"is-fullwidth-code-point": "^1.0.0",
@@ -7195,7 +7160,6 @@
"version": "3.0.1",
"bundled": true,
"dev": true,
- "optional": true,
"requires": {
"ansi-regex": "^2.0.0"
}
@@ -7239,14 +7203,12 @@
"wrappy": {
"version": "1.0.2",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
},
"yallist": {
"version": "3.0.3",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
}
}
},
@@ -8726,6 +8688,14 @@
"find-up": "^3.0.0"
}
},
+ "pokemon": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/pokemon/-/pokemon-2.0.0.tgz",
+ "integrity": "sha512-x+c9qNrB5y+2Ltt4mQGG56Rw6AvnzxhRm7/DRX9nSLjurTy+R7gMg3vUxzjJK2AhnaoQeFs3NPyK5fwnM3kVWg==",
+ "requires": {
+ "unique-random-array": "^2.0.0"
+ }
+ },
"portfinder": {
"version": "1.0.23",
"resolved": "https://registry.npmjs.org/portfinder/-/portfinder-1.0.23.tgz",
@@ -11138,6 +11108,19 @@
"unique-slug": "^2.0.0"
}
},
+ "unique-random": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/unique-random/-/unique-random-2.1.0.tgz",
+ "integrity": "sha512-iQ1ZgWac3b8YxGThecQFRQiqgk6xFERRwHZIWeVVsqlbmgCRl0PY13R4mUkodNgctmg5b5odG1nyW/IbOxQTqg=="
+ },
+ "unique-random-array": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/unique-random-array/-/unique-random-array-2.0.0.tgz",
+ "integrity": "sha512-xR87O95fZ7hljw84J8r1YDXrvffPLWN513BNOP4Bv0KcgG5dyEUrHwsvP7mVAOKg4Y80uqRbpUk0GKr8il70qg==",
+ "requires": {
+ "unique-random": "^2.1.0"
+ }
+ },
"unique-slug": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz",
@@ -11513,8 +11496,7 @@
"ansi-regex": {
"version": "2.1.1",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
},
"aproba": {
"version": "1.2.0",
@@ -11535,14 +11517,12 @@
"balanced-match": {
"version": "1.0.0",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
},
"brace-expansion": {
"version": "1.1.11",
"bundled": true,
"dev": true,
- "optional": true,
"requires": {
"balanced-match": "^1.0.0",
"concat-map": "0.0.1"
@@ -11557,20 +11537,17 @@
"code-point-at": {
"version": "1.1.0",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
},
"concat-map": {
"version": "0.0.1",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
},
"console-control-strings": {
"version": "1.1.0",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
},
"core-util-is": {
"version": "1.0.2",
@@ -11687,8 +11664,7 @@
"inherits": {
"version": "2.0.3",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
},
"ini": {
"version": "1.3.5",
@@ -11700,7 +11676,6 @@
"version": "1.0.0",
"bundled": true,
"dev": true,
- "optional": true,
"requires": {
"number-is-nan": "^1.0.0"
}
@@ -11715,7 +11690,6 @@
"version": "3.0.4",
"bundled": true,
"dev": true,
- "optional": true,
"requires": {
"brace-expansion": "^1.1.7"
}
@@ -11723,14 +11697,12 @@
"minimist": {
"version": "0.0.8",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
},
"minipass": {
"version": "2.3.5",
"bundled": true,
"dev": true,
- "optional": true,
"requires": {
"safe-buffer": "^5.1.2",
"yallist": "^3.0.0"
@@ -11749,7 +11721,6 @@
"version": "0.5.1",
"bundled": true,
"dev": true,
- "optional": true,
"requires": {
"minimist": "0.0.8"
}
@@ -11830,8 +11801,7 @@
"number-is-nan": {
"version": "1.0.1",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
},
"object-assign": {
"version": "4.1.1",
@@ -11843,7 +11813,6 @@
"version": "1.4.0",
"bundled": true,
"dev": true,
- "optional": true,
"requires": {
"wrappy": "1"
}
@@ -11929,8 +11898,7 @@
"safe-buffer": {
"version": "5.1.2",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
},
"safer-buffer": {
"version": "2.1.2",
@@ -11966,7 +11934,6 @@
"version": "1.0.2",
"bundled": true,
"dev": true,
- "optional": true,
"requires": {
"code-point-at": "^1.0.0",
"is-fullwidth-code-point": "^1.0.0",
@@ -11986,7 +11953,6 @@
"version": "3.0.1",
"bundled": true,
"dev": true,
- "optional": true,
"requires": {
"ansi-regex": "^2.0.0"
}
@@ -12030,14 +11996,12 @@
"wrappy": {
"version": "1.0.2",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
},
"yallist": {
"version": "3.0.3",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
}
}
},
@@ -12335,8 +12299,7 @@
"ansi-regex": {
"version": "2.1.1",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
},
"aproba": {
"version": "1.2.0",
@@ -12357,14 +12320,12 @@
"balanced-match": {
"version": "1.0.0",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
},
"brace-expansion": {
"version": "1.1.11",
"bundled": true,
"dev": true,
- "optional": true,
"requires": {
"balanced-match": "^1.0.0",
"concat-map": "0.0.1"
@@ -12379,20 +12340,17 @@
"code-point-at": {
"version": "1.1.0",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
},
"concat-map": {
"version": "0.0.1",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
},
"console-control-strings": {
"version": "1.1.0",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
},
"core-util-is": {
"version": "1.0.2",
@@ -12509,8 +12467,7 @@
"inherits": {
"version": "2.0.3",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
},
"ini": {
"version": "1.3.5",
@@ -12522,7 +12479,6 @@
"version": "1.0.0",
"bundled": true,
"dev": true,
- "optional": true,
"requires": {
"number-is-nan": "^1.0.0"
}
@@ -12537,7 +12493,6 @@
"version": "3.0.4",
"bundled": true,
"dev": true,
- "optional": true,
"requires": {
"brace-expansion": "^1.1.7"
}
@@ -12545,14 +12500,12 @@
"minimist": {
"version": "0.0.8",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
},
"minipass": {
"version": "2.3.5",
"bundled": true,
"dev": true,
- "optional": true,
"requires": {
"safe-buffer": "^5.1.2",
"yallist": "^3.0.0"
@@ -12571,7 +12524,6 @@
"version": "0.5.1",
"bundled": true,
"dev": true,
- "optional": true,
"requires": {
"minimist": "0.0.8"
}
@@ -12652,8 +12604,7 @@
"number-is-nan": {
"version": "1.0.1",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
},
"object-assign": {
"version": "4.1.1",
@@ -12665,7 +12616,6 @@
"version": "1.4.0",
"bundled": true,
"dev": true,
- "optional": true,
"requires": {
"wrappy": "1"
}
@@ -12751,8 +12701,7 @@
"safe-buffer": {
"version": "5.1.2",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
},
"safer-buffer": {
"version": "2.1.2",
@@ -12788,7 +12737,6 @@
"version": "1.0.2",
"bundled": true,
"dev": true,
- "optional": true,
"requires": {
"code-point-at": "^1.0.0",
"is-fullwidth-code-point": "^1.0.0",
@@ -12808,7 +12756,6 @@
"version": "3.0.1",
"bundled": true,
"dev": true,
- "optional": true,
"requires": {
"ansi-regex": "^2.0.0"
}
@@ -12852,14 +12799,12 @@
"wrappy": {
"version": "1.0.2",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
},
"yallist": {
"version": "3.0.3",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
}
}
},
diff --git a/package.json b/package.json
index 8f752ae..454a25a 100644
--- a/package.json
+++ b/package.json
@@ -20,15 +20,16 @@
"@angular/platform-browser-dynamic": "~8.2.4",
"@angular/router": "~8.2.4",
"apollo-angular": "^1.6.0",
- "rxjs": "~6.4.0",
- "tslib": "^1.10.0",
- "zone.js": "~0.9.1",
"apollo-angular-link-http": "^1.6.0",
- "apollo-link": "^1.2.11",
- "apollo-client": "^2.6.0",
"apollo-cache-inmemory": "^1.3.2",
+ "apollo-client": "^2.6.0",
+ "apollo-link": "^1.2.11",
+ "graphql": "^14.3.1",
"graphql-tag": "^2.10.0",
- "graphql": "^14.3.1"
+ "pokemon": "^2.0.0",
+ "rxjs": "~6.4.0",
+ "tslib": "^1.10.0",
+ "zone.js": "~0.9.1"
},
"devDependencies": {
"@angular-devkit/build-angular": "~0.803.2",
diff --git a/src/app/app.component.css b/src/app/app.component.css
index ec3d57f..21f520f 100644
--- a/src/app/app.component.css
+++ b/src/app/app.component.css
@@ -1,285 +1,83 @@
-:host {
- font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
- font-size: 14px;
- color: #333;
- box-sizing: border-box;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
- }
-
- h1,
- h2,
- h3,
- h4,
- h5,
- h6 {
- margin: 8px 0;
- }
-
- p {
- margin: 0;
- }
-
- .spacer {
- flex: 1;
- }
-
- .toolbar {
- height: 60px;
- margin: -8px;
- display: flex;
- align-items: center;
- background-color: #1976d2;
- color: white;
- font-weight: 600;
- }
-
- .toolbar img {
- margin: 0 16px;
- }
-
- .toolbar #twitter-logo {
- height: 40px;
- margin: 0 16px;
- }
-
- .toolbar #twitter-logo:hover {
- opacity: 0.8;
- }
-
- .content {
- display: flex;
- margin: 32px auto;
- padding: 0 16px;
- max-width: 960px;
- flex-direction: column;
- align-items: center;
- }
-
- svg.material-icons {
- height: 24px;
- width: auto;
- }
-
- svg.material-icons:not(:last-child) {
- margin-right: 8px;
- }
-
- .card svg.material-icons path {
- fill: #888;
- }
-
- .card-container {
- display: flex;
- flex-wrap: wrap;
- justify-content: center;
- margin-top: 16px;
- }
-
- .card {
- border-radius: 4px;
- border: 1px solid #eee;
- background-color: #fafafa;
- height: 40px;
- width: 200px;
- margin: 0 8px 16px;
- padding: 16px;
- display: flex;
- flex-direction: row;
- justify-content: center;
- align-items: center;
- transition: all 0.2s ease-in-out;
- line-height: 24px;
- }
-
- .card-container .card:not(:last-child) {
- margin-right: 0;
- }
-
- .card.card-small {
- height: 16px;
- width: 168px;
- }
-
- .card-container .card:not(.highlight-card) {
- cursor: pointer;
- }
-
- .card-container .card:not(.highlight-card):hover {
- transform: translateY(-3px);
- box-shadow: 0 4px 17px rgba(black, 0.35);
- }
-
- .card-container .card:not(.highlight-card):hover .material-icons path {
- fill: rgb(105, 103, 103);
- }
-
- .card.highlight-card {
- background-color: #1976d2;
- color: white;
- font-weight: 600;
- border: none;
- width: auto;
- min-width: 30%;
- position: relative;
- }
-
- .card.card.highlight-card span {
- margin-left: 60px;
- }
-
- svg#rocket {
- width: 80px;
- position: absolute;
- left: -10px;
- top: -24px;
- }
-
- svg#rocket-smoke {
- height: 100vh;
- position: absolute;
- top: 10px;
- right: 180px;
- z-index: -10;
- }
-
- a,
- a:visited,
- a:hover {
- color: #1976d2;
- text-decoration: none;
- }
-
- a:hover {
- color: #125699;
- }
-
- .terminal {
- position: relative;
- width: 80%;
- max-width: 600px;
- border-radius: 6px;
- padding-top: 45px;
- margin-top: 8px;
- overflow: hidden;
- background-color: rgb(15, 15, 16);
- }
-
- .terminal::before {
- content: "\2022 \2022 \2022";
- position: absolute;
- top: 0;
- left: 0;
- height: 4px;
- background: rgb(58, 58, 58);
- color: #c2c3c4;
- width: 100%;
- font-size: 2rem;
- line-height: 0;
- padding: 14px 0;
- text-indent: 4px;
- }
-
- .terminal pre {
- font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;
- color: white;
- padding: 0 1rem 1rem;
- margin: 0;
- }
-
- .circle-link {
- height: 40px;
- width: 40px;
- border-radius: 40px;
- margin: 8px;
- background-color: white;
- border: 1px solid #eeeeee;
- display: flex;
- justify-content: center;
- align-items: center;
- cursor: pointer;
- box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
- transition: 1s ease-out;
- }
-
- .circle-link:hover {
- transform: translateY(-0.25rem);
- box-shadow: 0px 3px 15px rgba(0, 0, 0, 0.2);
- }
-
- footer {
- margin-top: 8px;
- display: flex;
- align-items: center;
- line-height: 20px;
- }
-
- footer a {
- display: flex;
- align-items: center;
- }
-
- .github-star-badge {
- color: #24292e;
- display: flex;
- align-items: center;
- font-size: 12px;
- padding: 3px 10px;
- border: 1px solid rgba(27,31,35,.2);
- border-radius: 3px;
- background-image: linear-gradient(-180deg,#fafbfc,#eff3f6 90%);
- margin-left: 4px;
- font-weight: 600;
- font-family: -apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol;
- }
-
- .github-star-badge:hover {
- background-image: linear-gradient(-180deg,#f0f3f6,#e6ebf1 90%);
- border-color: rgba(27,31,35,.35);
- background-position: -.5em;
- }
-
- .github-star-badge .material-icons {
- height: 16px;
- width: 16px;
- margin-right: 4px;
- }
-
- svg#clouds {
- position: fixed;
- bottom: -160px;
- left: -230px;
- z-index: -10;
- width: 1920px;
- }
-
-
- /* Responsive Styles */
- @media screen and (max-width: 767px) {
-
- .card-container > *:not(.circle-link) ,
- .terminal {
- width: 100%;
- }
-
- .card:not(.highlight-card) {
- height: 16px;
- margin: 8px 0;
- }
-
- .card.highlight-card span {
- margin-left: 72px;
- }
-
- svg#rocket-smoke {
- right: 120px;
- transform: rotate(-5deg);
- }
- }
-
- @media screen and (max-width: 575px) {
- svg#rocket-smoke {
- display: none;
- visibility: hidden;
- }
- }
\ No newline at end of file
+.general {
+ font-family: "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
+ text-align: center;
+}
+
+.main {
+ padding-top: 25px;
+ margin: auto;
+ display: table;
+}
+
+.game-categories {
+ margin-top: 2.5%;
+}
+
+.game-page {
+ display: inline-block;
+ margin-right: 10px;
+ margin-left: 10px;
+ font-size: 20px;
+ font-weight: bold;
+ color: #0073bb;
+}
+
+.game-page:hover {
+ cursor: pointer;
+ text-decoration: underline;
+}
+
+.game-title {
+ margin-bottom: 0px;
+ font-size: 50px;
+ font-weight: bold;
+}
+
+.button {
+ padding: 8px;
+ margin: 10px;
+ font-family: "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
+ font-size: 15px;
+ font-weight: bold;
+ text-decoration: none;
+ transition: .5s;
+ background-color: #0073bb;
+ color: white;
+ border: 2px solid #0073bb;
+ border-radius: 5px;
+ cursor: pointer;
+ box-sizing: border-box;
+}
+
+.button:hover {
+ transition: .5s;
+ background-color: white;
+ color: #0073bb;
+}
+
+.chosen-button {
+ background-color: white;
+ color: #0073bb;
+}
+
+.next-button {
+ margin-top: 0px;
+}
+
+.input {
+ width: 150px;
+ padding: 10px;
+ border: 2px solid #0073bb;
+ border-radius: 5px;
+ font-family: "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
+ font-size: 15px;
+}
+
+.types-format {
+ margin: 0px;
+ display: inline-block;
+}
+
+.forms {
+ margin-top: 10px;
+}
\ No newline at end of file
diff --git a/src/app/app.component.html b/src/app/app.component.html
index 258196c..3b977bc 100644
--- a/src/app/app.component.html
+++ b/src/app/app.component.html
@@ -1,251 +1,13 @@
-
-
-
-
-
-
-
-
-
-
-
-

-
Welcome
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
{{ title }} app is running!
-
-
-
-
-
-
-
-
-
-
Resources
-
Here are some links to help you get started:
-
-
-
-
-
Next Steps
-
What do you want to do next with your app?
-
-
-
-
-
-
-
-
-
-
-
-
-
Run and Watch Tests
-
-
-
-
-
-
Build for Production
-
-
-
-
-
-
ng generate component xyz
-
ng add @angular/material
-
ng add _____
-
ng test
-
ng build --prod
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/app/app.component.spec.ts b/src/app/app.component.spec.ts
index 20de901..8c5caa2 100644
--- a/src/app/app.component.spec.ts
+++ b/src/app/app.component.spec.ts
@@ -1,17 +1,27 @@
import { TestBed, async } from '@angular/core/testing';
+import { FormsModule } from '@angular/forms'; // <-- NgModel lives here
+import { RouterTestingModule } from '@angular/router/testing';
+import { RouterModule, Routes } from '@angular/router';
import { AppComponent } from './app.component';
-import { ExchangeRatesComponent } from './exchange-rates/exchange-rates.component';
import { GraphQLModule } from './graphql.module';
import { HttpClientModule } from '@angular/common/http';
describe('AppComponent', () => {
+
beforeEach(async(() => {
TestBed.configureTestingModule({
- imports: [GraphQLModule, HttpClientModule],
+ imports: [
+ FormsModule,
+ RouterTestingModule,
+ RouterModule,
+ GraphQLModule,
+ HttpClientModule,
+ ],
declarations: [
- AppComponent, ExchangeRatesComponent,
+ AppComponent
],
- }).compileComponents();
+ })
+ TestBed.compileComponents();
}));
it('should create the app', () => {
@@ -20,16 +30,10 @@ describe('AppComponent', () => {
expect(app).toBeTruthy();
});
- it(`should have as title 'bill-learning-app'`, () => {
+ it(`should have as title 'Pokemon Guessing Game'`, () => {
const fixture = TestBed.createComponent(AppComponent);
const app = fixture.debugElement.componentInstance;
- expect(app.title).toEqual('bill-learning-app');
+ expect(app.title).toEqual('Pokemon Guessing Game');
});
- it('should render title', () => {
- const fixture = TestBed.createComponent(AppComponent);
- fixture.detectChanges();
- const compiled = fixture.debugElement.nativeElement;
- expect(compiled.querySelector('.content span').textContent).toContain('bill-learning-app app is running!');
- });
});
diff --git a/src/app/app.component.ts b/src/app/app.component.ts
index b2aecee..9ae7649 100644
--- a/src/app/app.component.ts
+++ b/src/app/app.component.ts
@@ -6,5 +6,5 @@ import { Component } from '@angular/core';
styleUrls: ['./app.component.css']
})
export class AppComponent {
- title = 'bill-learning-app';
+ title = 'Pokemon Guessing Game';
}
diff --git a/src/app/app.module.ts b/src/app/app.module.ts
index 9ff817c..6c4b177 100644
--- a/src/app/app.module.ts
+++ b/src/app/app.module.ts
@@ -1,22 +1,42 @@
-import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
-
+import { BrowserModule } from '@angular/platform-browser';
+import { FormsModule } from '@angular/forms'; // <-- NgModel lives here
+import { RouterModule, Routes } from '@angular/router';
import { AppComponent } from './app.component';
import { GraphQLModule } from './graphql.module';
import { HttpClientModule } from '@angular/common/http';
-import { ExchangeRatesComponent } from './exchange-rates/exchange-rates.component';
+
+import { PokemonNameComponent } from './pokemon-name/pokemon-name.component';
+import { PokemonEvolutionComponent } from './pokemon-evolution/pokemon-evolution.component';
+import { PokemonTypeComponent } from './pokemon-type/pokemon-type.component';
+
+const appRoutes: Routes = [
+ { path: 'name', component: PokemonNameComponent },
+ { path: 'type', component: PokemonTypeComponent },
+ { path: 'evolution', component: PokemonEvolutionComponent },
+ { path: '',
+ redirectTo: '/name',
+ pathMatch: 'full'
+ },
+];
@NgModule({
declarations: [
AppComponent,
- ExchangeRatesComponent
+ PokemonNameComponent,
+ PokemonEvolutionComponent,
+ PokemonTypeComponent
],
imports: [
BrowserModule,
+ FormsModule,
GraphQLModule,
- HttpClientModule
+ HttpClientModule,
+ RouterModule.forRoot(
+ appRoutes,
+ { enableTracing: true } // <-- debugging purposes only
+ )
],
- providers: [],
bootstrap: [AppComponent]
})
export class AppModule { }
diff --git a/src/app/exchange-rates/exchange-rates.component.html b/src/app/exchange-rates/exchange-rates.component.html
deleted file mode 100644
index af6b27d..0000000
--- a/src/app/exchange-rates/exchange-rates.component.html
+++ /dev/null
@@ -1,13 +0,0 @@
-
This component is made by me! The information below is queried from a GraphQL server that gave me exchange rates:
-
-
- Loading...
-
-
- Error :(
-
-
-
-
{{rate.currency}}: {{rate.rate}}
-
-
\ No newline at end of file
diff --git a/src/app/exchange-rates/exchange-rates.component.spec.ts b/src/app/exchange-rates/exchange-rates.component.spec.ts
deleted file mode 100644
index 08edf1d..0000000
--- a/src/app/exchange-rates/exchange-rates.component.spec.ts
+++ /dev/null
@@ -1,27 +0,0 @@
-import { async, ComponentFixture, TestBed } from '@angular/core/testing';
-import { GraphQLModule } from '../graphql.module';
-import { ExchangeRatesComponent } from './exchange-rates.component';
-import { HttpClientModule } from '@angular/common/http';
-
-describe('ExchangeRatesComponent', () => {
- let component: ExchangeRatesComponent;
- let fixture: ComponentFixture
;
-
- beforeEach(async(() => {
- TestBed.configureTestingModule({
- imports: [GraphQLModule, HttpClientModule],
- declarations: [ ExchangeRatesComponent ]
- })
- .compileComponents();
- }));
-
- beforeEach(() => {
- fixture = TestBed.createComponent(ExchangeRatesComponent);
- component = fixture.componentInstance;
- fixture.detectChanges();
- });
-
- it('should create', () => {
- expect(component).toBeTruthy();
- });
-});
diff --git a/src/app/exchange-rates/exchange-rates.component.ts b/src/app/exchange-rates/exchange-rates.component.ts
deleted file mode 100644
index c154c1a..0000000
--- a/src/app/exchange-rates/exchange-rates.component.ts
+++ /dev/null
@@ -1,36 +0,0 @@
-import { Component, OnInit } from '@angular/core';
-import {Apollo} from 'apollo-angular';
-import gql from 'graphql-tag';
-import { ApolloQueryResult } from 'apollo-client';
-
-@Component({
- selector: 'app-exchange-rates',
- templateUrl: './exchange-rates.component.html',
- styleUrls: ['./exchange-rates.component.css']
-})
-export class ExchangeRatesComponent implements OnInit {
- rates: any[];
- loading = true;
- error: any;
-
- constructor(private apollo: Apollo) {}
-
- ngOnInit() {
- this.apollo
- .watchQuery({
- query: gql`
- {
- rates(currency: "USD") {
- currency
- rate
- }
- }
- `,
- })
- .valueChanges.subscribe((result: ApolloQueryResult) => {
- this.rates = result.data && result.data.rates;
- this.loading = result.loading;
- this.error = result.errors;
- });
- }
-}
diff --git a/src/app/graphql.module.ts b/src/app/graphql.module.ts
index c09af00..8d093c3 100644
--- a/src/app/graphql.module.ts
+++ b/src/app/graphql.module.ts
@@ -3,7 +3,7 @@ import {ApolloModule, APOLLO_OPTIONS} from 'apollo-angular';
import {HttpLinkModule, HttpLink} from 'apollo-angular-link-http';
import {InMemoryCache} from 'apollo-cache-inmemory';
-const uri = 'https://o5x5jzoo7z.sse.codesandbox.io/graphql'; // <-- change the URL to point to Yelp GraphQL server, this is just a test server
+const uri = 'https://graphql-pokemon.now.sh'; // <-- change the URL to point to Yelp GraphQL server, this is just a test server
export function createApollo(httpLink: HttpLink) {
return {
link: httpLink.create({uri}),
diff --git a/src/app/exchange-rates/exchange-rates.component.css b/src/app/pokemon-evolution/pokemon-evolution.component.css
similarity index 100%
rename from src/app/exchange-rates/exchange-rates.component.css
rename to src/app/pokemon-evolution/pokemon-evolution.component.css
diff --git a/src/app/pokemon-evolution/pokemon-evolution.component.html b/src/app/pokemon-evolution/pokemon-evolution.component.html
new file mode 100644
index 0000000..e0b8dc7
--- /dev/null
+++ b/src/app/pokemon-evolution/pokemon-evolution.component.html
@@ -0,0 +1,25 @@
+
+
NAME THAT EVOLUTION!
+
+
+

+
{{pokemon.name}}
+
No. {{pokemon.number}}
+
Type(s): {{types[0]}}
+
, {{types[1]}}
+
+
+
+
+
CORRECT!
+
INCORRECT
+
+ {{makingChanges()}}
+
+
+
\ No newline at end of file
diff --git a/src/app/pokemon-evolution/pokemon-evolution.component.spec.ts b/src/app/pokemon-evolution/pokemon-evolution.component.spec.ts
new file mode 100644
index 0000000..74a00a9
--- /dev/null
+++ b/src/app/pokemon-evolution/pokemon-evolution.component.spec.ts
@@ -0,0 +1,37 @@
+import { async, ComponentFixture, TestBed } from '@angular/core/testing';
+import { FormsModule } from '@angular/forms'; // <-- NgModel lives here
+import { GraphQLModule } from '../graphql.module';
+import { HttpClientModule } from '@angular/common/http';
+
+import { PokemonEvolutionComponent } from './pokemon-evolution.component';
+
+describe('PokemonEvolutionComponent', () => {
+ let component: PokemonEvolutionComponent;
+ let fixture: ComponentFixture;
+
+ beforeEach(async(() => {
+ TestBed.configureTestingModule({
+ imports: [
+ FormsModule,
+ GraphQLModule,
+ HttpClientModule
+ ],
+ declarations: [ PokemonEvolutionComponent ]
+ })
+ .compileComponents();
+ }));
+
+ beforeEach(() => {
+ fixture = TestBed.createComponent(PokemonEvolutionComponent);
+ component = fixture.componentInstance;
+ fixture.detectChanges();
+ });
+
+ it('should create', () => {
+ expect(component).toBeTruthy();
+ });
+
+ it('there should be a pokemon name generated', () => {
+ expect(component.pokeName).toBeTruthy();
+ });
+});
diff --git a/src/app/pokemon-evolution/pokemon-evolution.component.ts b/src/app/pokemon-evolution/pokemon-evolution.component.ts
new file mode 100644
index 0000000..a2b5ac2
--- /dev/null
+++ b/src/app/pokemon-evolution/pokemon-evolution.component.ts
@@ -0,0 +1,71 @@
+import { Component, OnInit } from '@angular/core';
+import {Apollo} from 'apollo-angular';
+import gql from 'graphql-tag';
+import { ApolloQueryResult } from 'apollo-client';
+
+import { POKEMON } from '../pokemon';
+
+function getPokemonName() {
+ const min = Math.ceil(1);
+ const max = Math.floor(151);
+ const pokemonNumber = Math.floor(Math.random() * (max - min + 1)) + min;
+ return POKEMON[pokemonNumber];
+}
+
+const PokemonQuery = gql`
+ query PokemonQuery($pokeName: String!) {
+ pokemon(name: $pokeName) {
+ number
+ name
+ image
+ types
+ evolutions {
+ name
+ }
+ }
+ }
+ `;
+
+@Component({
+ selector: 'app-pokemon-evolution',
+ templateUrl: './pokemon-evolution.component.html',
+ styleUrls: ['./pokemon-evolution.component.css','../app.component.css']
+})
+
+export class PokemonEvolutionComponent implements OnInit {
+
+ pokemon: [];
+ types: [];
+ pokeName: string = getPokemonName();
+ hasEvolution: string;
+ evoNameAttempt: string;
+ submitted: boolean = false;
+
+ onSubmit() {
+ this.submitted = true;
+ }
+
+ makingChanges() {
+ this.submitted = false;
+ }
+
+
+ constructor(private apollo: Apollo) { }
+
+ ngOnInit() {
+ this.apollo
+ .watchQuery({
+ query: PokemonQuery,
+ variables: {
+ pokeName: this.pokeName,
+ }
+ })
+ .valueChanges.subscribe((result: ApolloQueryResult) => {
+ this.pokemon = result.data && result.data.pokemon;
+ this.types = result.data.pokemon.types;
+ this.hasEvolution = result.data.pokemon.evolutions[0].name;
+ });
+ }
+
+}
+
diff --git a/src/app/pokemon-name/pokemon-name.component.css b/src/app/pokemon-name/pokemon-name.component.css
new file mode 100644
index 0000000..e69de29
diff --git a/src/app/pokemon-name/pokemon-name.component.html b/src/app/pokemon-name/pokemon-name.component.html
new file mode 100644
index 0000000..d25aa2c
--- /dev/null
+++ b/src/app/pokemon-name/pokemon-name.component.html
@@ -0,0 +1,24 @@
+
+
WHO'S THAT POKEMON?
+
+
+

+
No. {{pokemon.number}}
+
Type(s): {{types[0]}}
+
, {{types[1]}}
+
Evolution: {{this.pokemon.evolutions[0].name}}
+
Evolution: None
+
+
+
+
+
CORRECT!
+
INCORRECT
+
+ {{makingChanges()}}
+
+
+
diff --git a/src/app/pokemon-name/pokemon-name.component.spec.ts b/src/app/pokemon-name/pokemon-name.component.spec.ts
new file mode 100644
index 0000000..784075e
--- /dev/null
+++ b/src/app/pokemon-name/pokemon-name.component.spec.ts
@@ -0,0 +1,41 @@
+import { async, ComponentFixture, TestBed } from '@angular/core/testing';
+import { FormsModule } from '@angular/forms'; // <-- NgModel lives here
+import { GraphQLModule } from '../graphql.module';
+import { HttpClientModule } from '@angular/common/http';
+
+import { PokemonNameComponent } from './pokemon-name.component';
+
+describe('PokemonNameComponent', () => {
+ let component: PokemonNameComponent;
+ let fixture: ComponentFixture;
+
+ beforeEach(async(() => {
+ TestBed.configureTestingModule({
+ imports: [
+ FormsModule,
+ GraphQLModule,
+ HttpClientModule
+ ],
+ declarations: [ PokemonNameComponent ]
+ })
+ .compileComponents();
+ }));
+
+ beforeEach(() => {
+ fixture = TestBed.createComponent(PokemonNameComponent);
+ component = fixture.componentInstance;
+ fixture.detectChanges();
+ });
+
+ it('should create', () => {
+ expect(component).toBeTruthy();
+ });
+
+ it('submitted should start off false', () => {
+ expect(component.submitted).toBeFalsy();
+ });
+
+ it('there should be a pokemon name generated', () => {
+ expect(component.pokeName).toBeTruthy();
+ });
+});
diff --git a/src/app/pokemon-name/pokemon-name.component.ts b/src/app/pokemon-name/pokemon-name.component.ts
new file mode 100644
index 0000000..e9f710f
--- /dev/null
+++ b/src/app/pokemon-name/pokemon-name.component.ts
@@ -0,0 +1,70 @@
+import { Component, OnInit } from '@angular/core';
+import {Apollo} from 'apollo-angular';
+import gql from 'graphql-tag';
+import { ApolloQueryResult } from 'apollo-client';
+
+import { POKEMON } from '../pokemon';
+
+function getPokemonName() {
+ const min: number = Math.ceil(1);
+ const max: number = Math.floor(151);
+ const pokemonNumber: number = Math.floor(Math.random() * (max - min + 1)) + min;
+ return POKEMON[pokemonNumber];
+}
+
+const PokemonQuery: any = gql`
+ query PokemonQuery($pokeName: String!) {
+ pokemon(name: $pokeName) {
+ number
+ name
+ image
+ types
+ evolutions {
+ name
+ }
+ }
+ }
+ `;
+
+@Component({
+ selector: 'app-pokemon-name',
+ templateUrl: './pokemon-name.component.html',
+ styleUrls: ['./pokemon-name.component.css','../app.component.css']
+})
+
+export class PokemonNameComponent implements OnInit {
+
+ pokemon: [];
+ types: [];
+ pokeName: string = getPokemonName();
+ hasEvolution: string;
+ pokeNameAttempt: string;
+ submitted: boolean = false;
+
+ onSubmit() {
+ this.submitted = true;
+ }
+
+ makingChanges() {
+ this.submitted = false;
+ }
+
+ constructor(private apollo: Apollo) { }
+
+ ngOnInit() {
+ this.apollo
+ .watchQuery({
+ query: PokemonQuery,
+ variables: {
+ pokeName: this.pokeName,
+ }
+ })
+ .valueChanges.subscribe((result: ApolloQueryResult) => {
+ this.pokemon = result.data && result.data.pokemon;
+ this.types = result.data.pokemon.types;
+ this.hasEvolution = result.data.pokemon.evolutions[0].name;
+ });
+
+ }
+
+}
diff --git a/src/app/pokemon-type/pokemon-type.component.css b/src/app/pokemon-type/pokemon-type.component.css
new file mode 100644
index 0000000..e69de29
diff --git a/src/app/pokemon-type/pokemon-type.component.html b/src/app/pokemon-type/pokemon-type.component.html
new file mode 100644
index 0000000..e45d321
--- /dev/null
+++ b/src/app/pokemon-type/pokemon-type.component.html
@@ -0,0 +1,32 @@
+
+
+
GUESS ITS TYPE!
+
+
+

+
{{pokemon.name}}
+
No. {{pokemon.number}}
+
Evolution: {{this.pokemon.evolutions[0].name}}
+
Evolution: None
+
+
+
+
+
CORRECT!
+
+ INCORRECT
+
+
+ {{makingChanges()}}
+
+
+
diff --git a/src/app/pokemon-type/pokemon-type.component.spec.ts b/src/app/pokemon-type/pokemon-type.component.spec.ts
new file mode 100644
index 0000000..8cc104e
--- /dev/null
+++ b/src/app/pokemon-type/pokemon-type.component.spec.ts
@@ -0,0 +1,41 @@
+import { async, ComponentFixture, TestBed } from '@angular/core/testing';
+import { FormsModule } from '@angular/forms'; // <-- NgModel lives here
+import { GraphQLModule } from '../graphql.module';
+import { HttpClientModule } from '@angular/common/http';
+
+import { PokemonTypeComponent } from './pokemon-type.component';
+
+describe('PokemonTypeComponent', () => {
+ let component: PokemonTypeComponent;
+ let fixture: ComponentFixture;
+
+ beforeEach(async(() => {
+ TestBed.configureTestingModule({
+ imports: [
+ FormsModule,
+ GraphQLModule,
+ HttpClientModule
+ ],
+ declarations: [ PokemonTypeComponent ]
+ })
+ .compileComponents();
+ }));
+
+ beforeEach(() => {
+ fixture = TestBed.createComponent(PokemonTypeComponent);
+ component = fixture.componentInstance;
+ fixture.detectChanges();
+ });
+
+ it('should create', () => {
+ expect(component).toBeTruthy();
+ });
+
+ it('submitted should start off false', () => {
+ expect(component.submitted).toBeFalsy();
+ });
+
+ it('there should be a pokemon name generated', () => {
+ expect(component.pokeName).toBeTruthy();
+ });
+});
diff --git a/src/app/pokemon-type/pokemon-type.component.ts b/src/app/pokemon-type/pokemon-type.component.ts
new file mode 100644
index 0000000..9002b49
--- /dev/null
+++ b/src/app/pokemon-type/pokemon-type.component.ts
@@ -0,0 +1,73 @@
+import { Component, OnInit } from '@angular/core';
+import {Apollo} from 'apollo-angular';
+import gql from 'graphql-tag';
+import { ApolloQueryResult } from 'apollo-client';
+
+import { POKEMON } from '../pokemon';
+
+function getPokemonName() {
+ const min: number = Math.ceil(1);
+ const max: number = Math.floor(151);
+ const pokemonNumber: number = Math.floor(Math.random() * (max - min + 1)) + min;
+ return POKEMON[pokemonNumber];
+}
+
+function splitType(types: []) {
+ types.slice()
+}
+
+const PokemonQuery: any = gql`
+ query PokemonQuery($pokeName: String!) {
+ pokemon(name: $pokeName) {
+ number
+ name
+ image
+ types
+ evolutions {
+ name
+ }
+ }
+ }
+ `;
+
+@Component({
+ selector: 'app-pokemon-type',
+ templateUrl: './pokemon-type.component.html',
+ styleUrls: ['./pokemon-type.component.css','../app.component.css']
+})
+export class PokemonTypeComponent implements OnInit {
+
+ pokemon: [];
+ types: [];
+ pokeName: string = getPokemonName();
+ hasEvolution: string;
+ pokeType1Attempt: string;
+ pokeType2Attempt: string;
+ submitted: boolean = false;
+
+ onSubmit() {
+ this.submitted = true;
+ }
+
+ makingChanges() {
+ this.submitted = false;
+ }
+
+ constructor(private apollo: Apollo) { }
+
+ ngOnInit() {
+ this.apollo
+ .watchQuery({
+ query: PokemonQuery,
+ variables: {
+ pokeName: this.pokeName,
+ }
+ })
+ .valueChanges.subscribe((result: ApolloQueryResult) => {
+ this.pokemon = result.data && result.data.pokemon;
+ this.types = result.data.pokemon.types;
+ this.hasEvolution = result.data.pokemon.evolutions[0].name;
+ });
+ }
+
+}
diff --git a/src/app/pokemon.ts b/src/app/pokemon.ts
new file mode 100644
index 0000000..730d38b
--- /dev/null
+++ b/src/app/pokemon.ts
@@ -0,0 +1,152 @@
+export const POKEMON = [
+ "Bulbasaur",
+ "Ivysaur",
+ "Venusaur",
+ "Charmander",
+ "Charmeleon",
+ "Charizard",
+ "Squirtle",
+ "Wartortle",
+ "Blastoise",
+ "Caterpie",
+ "Metapod",
+ "Butterfree",
+ "Weedle",
+ "Kakuna",
+ "Beedrill",
+ "Pidgey",
+ "Pidgeotto",
+ "Pidgeot",
+ "Rattata",
+ "Raticate",
+ "Spearow",
+ "Fearow",
+ "Ekans",
+ "Arbok",
+ "Pikachu",
+ "Raichu",
+ "Sandshrew",
+ "Sandslash",
+ "Nidoran♀",
+ "Nidorina",
+ "Nidoqueen",
+ "Nidoran♂",
+ "Nidorino",
+ "Nidoking",
+ "Clefairy",
+ "Clefable",
+ "Vulpix",
+ "Ninetales",
+ "Jigglypuff",
+ "Wigglytuff",
+ "Zubat",
+ "Golbat",
+ "Oddish",
+ "Gloom",
+ "Vileplume",
+ "Paras",
+ "Parasect",
+ "Venonat",
+ "Venomoth",
+ "Diglett",
+ "Dugtrio",
+ "Meowth",
+ "Persian",
+ "Psyduck",
+ "Golduck",
+ "Mankey",
+ "Primeape",
+ "Growlithe",
+ "Arcanine",
+ "Poliwag",
+ "Poliwhirl",
+ "Poliwrath",
+ "Abra",
+ "Kadabra",
+ "Alakazam",
+ "Machop",
+ "Machoke",
+ "Machamp",
+ "Bellsprout",
+ "Weepinbell",
+ "Victreebel",
+ "Tentacool",
+ "Tentacruel",
+ "Geodude",
+ "Graveler",
+ "Golem",
+ "Ponyta",
+ "Rapidash",
+ "Slowpoke",
+ "Slowbro",
+ "Magnemite",
+ "Magneton",
+ "Farfetch’d",
+ "Doduo",
+ "Dodrio",
+ "Seel",
+ "Dewgong",
+ "Grimer",
+ "Muk",
+ "Shellder",
+ "Cloyster",
+ "Gastly",
+ "Haunter",
+ "Gengar",
+ "Onix",
+ "Drowzee",
+ "Hypno",
+ "Krabby",
+ "Kingler",
+ "Voltorb",
+ "Electrode",
+ "Exeggcute",
+ "Exeggutor",
+ "Cubone",
+ "Marowak",
+ "Hitmonlee",
+ "Hitmonchan",
+ "Lickitung",
+ "Koffing",
+ "Weezing",
+ "Rhyhorn",
+ "Rhydon",
+ "Chansey",
+ "Tangela",
+ "Kangaskhan",
+ "Horsea",
+ "Seadra",
+ "Goldeen",
+ "Seaking",
+ "Staryu",
+ "Starmie",
+ "Mr. Mime",
+ "Scyther",
+ "Jynx",
+ "Electabuzz",
+ "Magmar",
+ "Pinsir",
+ "Tauros",
+ "Magikarp",
+ "Gyarados",
+ "Lapras",
+ "Ditto",
+ "Eevee",
+ "Vaporeon",
+ "Jolteon",
+ "Flareon",
+ "Porygon",
+ "Omanyte",
+ "Omastar",
+ "Kabuto",
+ "Kabutops",
+ "Aerodactyl",
+ "Snorlax",
+ "Articuno",
+ "Zapdos",
+ "Moltres",
+ "Dratini",
+ "Dragonair",
+ "Dragonite",
+ "Mewtwo",
+ "Mew"]
\ No newline at end of file
diff --git a/src/favicon.ico b/src/favicon.ico
index 997406a..ae4a225 100644
Binary files a/src/favicon.ico and b/src/favicon.ico differ
diff --git a/src/index.html b/src/index.html
index a66e03f..19a1497 100644
--- a/src/index.html
+++ b/src/index.html
@@ -2,7 +2,7 @@
- BillLearningApp
+ Pokemon Guessing Game