From 144832f48185527cfcfdee2bc31bacaa0c35b4d0 Mon Sep 17 00:00:00 2001 From: Coreen Cooper Date: Fri, 19 Mar 2021 16:42:11 -0400 Subject: [PATCH 01/19] create css and js files --- README.md | 22 +- index.css | 0 index.html | 8 + index.js | 0 package-lock.json | 2218 ++++++++++++++++++++++++++++++++++++++++++++- 5 files changed, 2219 insertions(+), 29 deletions(-) create mode 100644 index.css create mode 100644 index.js diff --git a/README.md b/README.md index 955af7c..3659363 100644 --- a/README.md +++ b/README.md @@ -24,17 +24,17 @@ Wubba lubba dub dub!!! Create an out of this world app using the [Rick And Morty See an app video [here](https://www.youtube.com/watch?v=bGyZYHU3cJ0) and can be played with [here](https://joinpursuit.github.io/Module-2-Practice-Final-Assessment/) This **burp** app should have (in order of placement in the HTML): -- A title tag that starts with the text "Szechuan Sauce" -- A header tag. Make it mean and make it green. -- Inside the header an `h1` that reads "Rick & Morty" with fantasy font. -- Inside the header an image of Rick and Morty (check your assets folder!) - -- A `ul` with the id `all-characters` that contains an `li`'s with an image (id=`photo-img`) of each character in the API (first page only), as well as the characters name. -- A `main` tag that starts not on the page -- Inside of `main` should be two sections. The first section should have the id `character-info` the second should have the id `character-comments-section`. -- Inside of `character-info` should be be an `h3` an `img` and two `p` tags. -- Inside of `character-comments-section` should be a `form`, including a "text" `input` and a "submit" `input`, that allows users to submit (not save, just add to the frontend) what they would say about the character Jerry. On submission the input should clear. -- Also insider `character-comments-section` should be a `ul` with the id `character-comments-ul` that contains the submitted comments of each character. +- *html - A title tag that starts with the text "Szechuan Sauce" +- css - A header tag. Make it mean and make it green. +- css *html - Inside the header an `h1` that reads "Rick & Morty" with fantasy font. +- *html - Inside the header an image of Rick and Morty (check your assets folder!) + +- js *html - A `ul` with the id `all-characters` that contains an `li`'s with an image (id=`photo-img`) of each character in the API (first page only), as well as the characters name. +- js - A `main` tag that starts not on the page +- js - Inside of `main` should be two sections. The first section should have the id `character-info` the second should have the id `character-comments-section`. +- js - Inside of `character-info` should be be an `h3` an `img` and two `p` tags. +- js - Inside of `character-comments-section` should be a `form`, including a "text" `input` and a "submit" `input`, that allows users to submit (not save, just add to the frontend) what they would say about the character Jerry. On submission the input should clear. +- js - Also insider `character-comments-section` should be a `ul` with the id `character-comments-ul` that contains the submitted comments of each character. Please feel free to include additional `section`s and elements if they make styling the **burp** app easier. diff --git a/index.css b/index.css new file mode 100644 index 0000000..e69de29 diff --git a/index.html b/index.html index 248ffe9..2771ea9 100644 --- a/index.html +++ b/index.html @@ -1,11 +1,19 @@ + Szechuan Sauce + + +
+

Rick & Morty

+ Rick and Morty +
+ \ No newline at end of file diff --git a/index.js b/index.js new file mode 100644 index 0000000..e69de29 diff --git a/package-lock.json b/package-lock.json index cffd9c0..b8043be 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,8 +1,2190 @@ { "name": "pursuit-core-module2-practice-assessment", "version": "1.0.0", - "lockfileVersion": 1, + "lockfileVersion": 2, "requires": true, + "packages": { + "": { + "name": "pursuit-core-module2-practice-assessment", + "version": "1.0.0", + "license": "ISC", + "devDependencies": { + "cypress": "^6.7.0" + } + }, + "node_modules/@cypress/listr-verbose-renderer": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/@cypress/listr-verbose-renderer/-/listr-verbose-renderer-0.4.1.tgz", + "integrity": "sha1-p3SS9LEdzHxEajSz4ochr9M8ZCo=", + "dev": true, + "dependencies": { + "chalk": "^1.1.3", + "cli-cursor": "^1.0.2", + "date-fns": "^1.27.2", + "figures": "^1.7.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@cypress/listr-verbose-renderer/node_modules/chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "dependencies": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@cypress/listr-verbose-renderer/node_modules/supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@cypress/request": { + "version": "2.88.5", + "resolved": "https://registry.npmjs.org/@cypress/request/-/request-2.88.5.tgz", + "integrity": "sha512-TzEC1XMi1hJkywWpRfD2clreTa/Z+lOrXDCxxBTBPEcY5azdPi56A6Xw+O4tWJnaJH3iIE7G5aDXZC6JgRZLcA==", + "dev": true, + "dependencies": { + "aws-sign2": "~0.7.0", + "aws4": "^1.8.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.6", + "extend": "~3.0.2", + "forever-agent": "~0.6.1", + "form-data": "~2.3.2", + "har-validator": "~5.1.3", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.19", + "oauth-sign": "~0.9.0", + "performance-now": "^2.1.0", + "qs": "~6.5.2", + "safe-buffer": "^5.1.2", + "tough-cookie": "~2.5.0", + "tunnel-agent": "^0.6.0", + "uuid": "^3.3.2" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@cypress/xvfb": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@cypress/xvfb/-/xvfb-1.2.4.tgz", + "integrity": "sha512-skbBzPggOVYCbnGgV+0dmBdW/s77ZkAOXIC1knS8NagwDjBrNC1LuXtQJeiN6l+m7lzmHtaoUw/ctJKdqkG57Q==", + "dev": true, + "dependencies": { + "debug": "^3.1.0", + "lodash.once": "^4.1.1" + } + }, + "node_modules/@cypress/xvfb/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/@samverschueren/stream-to-observable": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/@samverschueren/stream-to-observable/-/stream-to-observable-0.3.1.tgz", + "integrity": "sha512-c/qwwcHyafOQuVQJj0IlBjf5yYgBI7YPJ77k4fOJYesb41jio65eaJODRUmfYKhTOFBrIZ66kgvGPlNbjuoRdQ==", + "dev": true, + "dependencies": { + "any-observable": "^0.3.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@types/node": { + "version": "12.12.50", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.12.50.tgz", + "integrity": "sha512-5ImO01Fb8YsEOYpV+aeyGYztcYcjGsBvN4D7G5r1ef2cuQOpymjWNQi5V0rKHE6PC2ru3HkoUr/Br2/8GUA84w==", + "dev": true + }, + "node_modules/@types/sinonjs__fake-timers": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/@types/sinonjs__fake-timers/-/sinonjs__fake-timers-6.0.2.tgz", + "integrity": "sha512-dIPoZ3g5gcx9zZEszaxLSVTvMReD3xxyyDnQUjA6IYDG9Ba2AV0otMPs+77sG9ojB4Qr2N2Vk5RnKeuA0X/0bg==", + "dev": true + }, + "node_modules/@types/sizzle": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/@types/sizzle/-/sizzle-2.3.2.tgz", + "integrity": "sha512-7EJYyKTL7tFR8+gDbB6Wwz/arpGa0Mywk1TJbNzKzHtzbwVmY4HR9WqS5VV7dsBUKQmPNr192jHr/VpBluj/hg==", + "dev": true + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "node_modules/ansi-escapes": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.2.0.tgz", + "integrity": "sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/any-observable": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/any-observable/-/any-observable-0.3.0.tgz", + "integrity": "sha512-/FQM1EDkTsf63Ub2C6O7GuYFDsSXUwsaZDurV0np41ocwq0jthUAYCmhBX9f+KwlaCgIuWyr/4WlUQUBfKfZog==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/arch": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/arch/-/arch-2.2.0.tgz", + "integrity": "sha512-Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ==", + "dev": true + }, + "node_modules/asn1": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", + "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", + "dev": true, + "dependencies": { + "safer-buffer": "~2.1.0" + } + }, + "node_modules/assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", + "dev": true, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/async": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.0.tgz", + "integrity": "sha512-TR2mEZFVOj2pLStYxLht7TyfuRzaydfpxr3k9RpHIzMgw7A64dzsdqCxH1WJyQdoe8T10nDXd9wnEigmiuHIZw==", + "dev": true + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", + "dev": true + }, + "node_modules/at-least-node": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", + "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", + "dev": true, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/aws-sign2": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", + "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/aws4": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz", + "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==", + "dev": true + }, + "node_modules/balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", + "dev": true + }, + "node_modules/bcrypt-pbkdf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", + "dev": true, + "dependencies": { + "tweetnacl": "^0.14.3" + } + }, + "node_modules/blob-util": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/blob-util/-/blob-util-2.0.2.tgz", + "integrity": "sha512-T7JQa+zsXXEa6/8ZhHcQEW1UFfVM49Ts65uBkFL6fz2QmrElqmbajIDJvuA0tEhRe5eIjpV9ZF+0RfZR9voJFQ==", + "dev": true + }, + "node_modules/bluebird": { + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", + "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", + "dev": true + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/buffer-from": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", + "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", + "dev": true + }, + "node_modules/cachedir": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/cachedir/-/cachedir-2.3.0.tgz", + "integrity": "sha512-A+Fezp4zxnit6FanDmv9EqXNAi3vt9DWp51/71UEhXukb7QUuvtv9344h91dyAxuTLoSYJFU299qzR3tzwPAhw==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", + "dev": true + }, + "node_modules/chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/chalk/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/check-more-types": { + "version": "2.24.0", + "resolved": "https://registry.npmjs.org/check-more-types/-/check-more-types-2.24.0.tgz", + "integrity": "sha1-FCD/sQ/URNz8ebQ4kbv//TKoRgA=", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/ci-info": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", + "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==", + "dev": true + }, + "node_modules/cli-cursor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-1.0.2.tgz", + "integrity": "sha1-ZNo/fValRBLll5S9Ytw1KV6PKYc=", + "dev": true, + "dependencies": { + "restore-cursor": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/cli-table3": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/cli-table3/-/cli-table3-0.6.0.tgz", + "integrity": "sha512-gnB85c3MGC7Nm9I/FkiasNBOKjOiO1RNuXXarQms37q4QMpWdlbBgD/VnOStA2faG1dpXMv31RFApjX1/QdgWQ==", + "dev": true, + "dependencies": { + "colors": "^1.1.2", + "object-assign": "^4.1.0", + "string-width": "^4.2.0" + }, + "engines": { + "node": "10.* || >= 12.*" + }, + "optionalDependencies": { + "colors": "^1.1.2" + } + }, + "node_modules/cli-truncate": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-0.2.1.tgz", + "integrity": "sha1-nxXPuwcFAFNpIWxiasfQWrkN1XQ=", + "dev": true, + "dependencies": { + "slice-ansi": "0.0.4", + "string-width": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/cli-truncate/node_modules/is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "dependencies": { + "number-is-nan": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/cli-truncate/node_modules/string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "dependencies": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/code-point-at": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/colors": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/colors/-/colors-1.4.0.tgz", + "integrity": "sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA==", + "dev": true, + "optional": true, + "engines": { + "node": ">=0.1.90" + } + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dev": true, + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/commander": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-5.1.0.tgz", + "integrity": "sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/common-tags": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/common-tags/-/common-tags-1.8.0.tgz", + "integrity": "sha512-6P6g0uetGpW/sdyUy/iQQCbFF0kWVMSIVSyYz7Zgjcgh8mgw8PQzDNZeyZ5DQ2gM7LBoZPHmnjz8rUthkBG5tw==", + "dev": true, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", + "dev": true + }, + "node_modules/concat-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", + "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", + "dev": true, + "engines": [ + "node >= 0.8" + ], + "dependencies": { + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" + } + }, + "node_modules/core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", + "dev": true + }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/cypress": { + "version": "6.7.1", + "resolved": "https://registry.npmjs.org/cypress/-/cypress-6.7.1.tgz", + "integrity": "sha512-MC9yt1GqpL4WVDQ0STI89K+PdLeC3T3NuAb2N61d6vYGR9pJy8w3Fqe0OWZwaRTJtg9eAyHXPGmFsyKeNQ3tmg==", + "dev": true, + "dependencies": { + "@cypress/listr-verbose-renderer": "^0.4.1", + "@cypress/request": "^2.88.5", + "@cypress/xvfb": "^1.2.4", + "@types/node": "12.12.50", + "@types/sinonjs__fake-timers": "^6.0.1", + "@types/sizzle": "^2.3.2", + "arch": "^2.1.2", + "blob-util": "2.0.2", + "bluebird": "^3.7.2", + "cachedir": "^2.3.0", + "chalk": "^4.1.0", + "check-more-types": "^2.24.0", + "cli-table3": "~0.6.0", + "commander": "^5.1.0", + "common-tags": "^1.8.0", + "dayjs": "^1.9.3", + "debug": "4.3.2", + "eventemitter2": "^6.4.2", + "execa": "^4.0.2", + "executable": "^4.1.1", + "extract-zip": "^1.7.0", + "fs-extra": "^9.0.1", + "getos": "^3.2.1", + "is-ci": "^2.0.0", + "is-installed-globally": "^0.3.2", + "lazy-ass": "^1.6.0", + "listr": "^0.14.3", + "lodash": "^4.17.19", + "log-symbols": "^4.0.0", + "minimist": "^1.2.5", + "moment": "^2.29.1", + "ospath": "^1.2.2", + "pretty-bytes": "^5.4.1", + "ramda": "~0.27.1", + "request-progress": "^3.0.0", + "supports-color": "^7.2.0", + "tmp": "~0.2.1", + "untildify": "^4.0.0", + "url": "^0.11.0", + "yauzl": "^2.10.0" + }, + "bin": { + "cypress": "bin/cypress" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "dev": true, + "dependencies": { + "assert-plus": "^1.0.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/date-fns": { + "version": "1.30.1", + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-1.30.1.tgz", + "integrity": "sha512-hBSVCvSmWC+QypYObzwGOd9wqdDpOt+0wl0KbU+R+uuZBS1jN8VsD1ss3irQDknRj5NvxiTF6oj/nDRnN/UQNw==", + "dev": true + }, + "node_modules/dayjs": { + "version": "1.10.4", + "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.10.4.tgz", + "integrity": "sha512-RI/Hh4kqRc1UKLOAf/T5zdMMX5DQIlDxwUe3wSyMMnEbGunnpENCdbUgM+dW7kXidZqCttBrmw7BhN4TMddkCw==", + "dev": true + }, + "node_modules/debug": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", + "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + } + }, + "node_modules/debug/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/ecc-jsbn": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", + "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", + "dev": true, + "dependencies": { + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" + } + }, + "node_modules/elegant-spinner": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/elegant-spinner/-/elegant-spinner-1.0.1.tgz", + "integrity": "sha1-2wQ1IcldfjA/2PNFvtwzSc+wcp4=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "dev": true, + "dependencies": { + "once": "^1.4.0" + } + }, + "node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/eventemitter2": { + "version": "6.4.4", + "resolved": "https://registry.npmjs.org/eventemitter2/-/eventemitter2-6.4.4.tgz", + "integrity": "sha512-HLU3NDY6wARrLCEwyGKRBvuWYyvW6mHYv72SJJAH3iJN3a6eVUvkjFkcxah1bcTgGVBBrFdIopBJPhCQFMLyXw==", + "dev": true + }, + "node_modules/execa": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-4.1.0.tgz", + "integrity": "sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.0", + "get-stream": "^5.0.0", + "human-signals": "^1.1.1", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.0", + "onetime": "^5.1.0", + "signal-exit": "^3.0.2", + "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/execa/node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dev": true, + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/executable": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/executable/-/executable-4.1.1.tgz", + "integrity": "sha512-8iA79xD3uAch729dUG8xaaBBFGaEa0wdD2VkYLFHwlqosEj/jT66AzcreRDSgV7ehnNLBW2WR5jIXwGKjVdTLg==", + "dev": true, + "dependencies": { + "pify": "^2.2.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/exit-hook": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/exit-hook/-/exit-hook-1.1.1.tgz", + "integrity": "sha1-8FyiM7SMBdVP/wd2XfhQfpXAL/g=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "dev": true + }, + "node_modules/extract-zip": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-1.7.0.tgz", + "integrity": "sha512-xoh5G1W/PB0/27lXgMQyIhP5DSY/LhoCsOyZgb+6iMmRtCwVBo55uKaMoEYrDCKQhWvqEip5ZPKAc6eFNyf/MA==", + "dev": true, + "dependencies": { + "concat-stream": "^1.6.2", + "debug": "^2.6.9", + "mkdirp": "^0.5.4", + "yauzl": "^2.10.0" + }, + "bin": { + "extract-zip": "cli.js" + } + }, + "node_modules/extract-zip/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/extract-zip/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "node_modules/extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", + "dev": true, + "engines": [ + "node >=0.6.0" + ] + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true + }, + "node_modules/fd-slicer": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", + "integrity": "sha1-JcfInLH5B3+IkbvmHY85Dq4lbx4=", + "dev": true, + "dependencies": { + "pend": "~1.2.0" + } + }, + "node_modules/figures": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz", + "integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=", + "dev": true, + "dependencies": { + "escape-string-regexp": "^1.0.5", + "object-assign": "^4.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/form-data": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", + "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", + "dev": true, + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 0.12" + } + }, + "node_modules/fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "dev": true, + "dependencies": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "dev": true + }, + "node_modules/get-stream": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "dev": true, + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/getos": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/getos/-/getos-3.2.1.tgz", + "integrity": "sha512-U56CfOK17OKgTVqozZjUKNdkfEv6jk5WISBJ8SHoagjE6L69zOwl3Z+O8myjY9MEW3i2HPWQBt/LTbCgcC973Q==", + "dev": true, + "dependencies": { + "async": "^3.2.0" + } + }, + "node_modules/getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", + "dev": true, + "dependencies": { + "assert-plus": "^1.0.0" + } + }, + "node_modules/glob": { + "version": "7.1.6", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", + "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + } + }, + "node_modules/global-dirs": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-2.1.0.tgz", + "integrity": "sha512-MG6kdOUh/xBnyo9cJFeIKkLEc1AyFq42QTU4XiX51i2NEdxLxLWXIjEjmqKeSuKR7pAZjTqUVoT2b2huxVLgYQ==", + "dev": true, + "dependencies": { + "ini": "1.3.7" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.6", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.6.tgz", + "integrity": "sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ==", + "dev": true + }, + "node_modules/har-schema": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", + "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/har-validator": { + "version": "5.1.5", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", + "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", + "dev": true, + "dependencies": { + "ajv": "^6.12.3", + "har-schema": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "dev": true, + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/http-signature": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", + "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", + "dev": true, + "dependencies": { + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" + }, + "engines": { + "node": ">=0.8", + "npm": ">=1.3.7" + } + }, + "node_modules/human-signals": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz", + "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==", + "dev": true, + "engines": { + "node": ">=8.12.0" + } + }, + "node_modules/indent-string": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-3.2.0.tgz", + "integrity": "sha1-Sl/W0nzDMvN+VBmlBNu4NxBckok=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dev": true, + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "node_modules/ini": { + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.7.tgz", + "integrity": "sha512-iKpRpXP+CrP2jyrxvg1kMUpXDyRUFDWurxbnVT1vQPx+Wz9uCYsMIqYuSBLV+PAaZG/d7kRLKRFc9oDMsH+mFQ==", + "dev": true + }, + "node_modules/is-ci": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", + "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", + "dev": true, + "dependencies": { + "ci-info": "^2.0.0" + }, + "bin": { + "is-ci": "bin.js" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-installed-globally": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.3.2.tgz", + "integrity": "sha512-wZ8x1js7Ia0kecP/CHM/3ABkAmujX7WPvQk6uu3Fly/Mk44pySulQpnHG46OMjHGXApINnV4QhY3SWnECO2z5g==", + "dev": true, + "dependencies": { + "global-dirs": "^2.0.1", + "is-path-inside": "^3.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-observable": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-observable/-/is-observable-1.1.0.tgz", + "integrity": "sha512-NqCa4Sa2d+u7BWc6CukaObG3Fh+CU9bvixbpcXYhy2VvYS7vVGIdAgnIS5Ks3A/cqk4rebLJ9s8zBstT2aKnIA==", + "dev": true, + "dependencies": { + "symbol-observable": "^1.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-promise": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz", + "integrity": "sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==", + "dev": true + }, + "node_modules/is-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz", + "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", + "dev": true + }, + "node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "dev": true + }, + "node_modules/isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", + "dev": true + }, + "node_modules/jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", + "dev": true + }, + "node_modules/json-schema": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", + "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=", + "dev": true + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "node_modules/json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", + "dev": true + }, + "node_modules/jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.1.6", + "universalify": "^2.0.0" + } + }, + "node_modules/jsprim": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", + "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", + "dev": true, + "engines": [ + "node >=0.6.0" + ], + "dependencies": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.2.3", + "verror": "1.10.0" + } + }, + "node_modules/lazy-ass": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/lazy-ass/-/lazy-ass-1.6.0.tgz", + "integrity": "sha1-eZllXoZGwX8In90YfRUNMyTVRRM=", + "dev": true, + "engines": { + "node": "> 0.8" + } + }, + "node_modules/listr": { + "version": "0.14.3", + "resolved": "https://registry.npmjs.org/listr/-/listr-0.14.3.tgz", + "integrity": "sha512-RmAl7su35BFd/xoMamRjpIE4j3v+L28o8CT5YhAXQJm1fD+1l9ngXY8JAQRJ+tFK2i5njvi0iRUKV09vPwA0iA==", + "dev": true, + "dependencies": { + "@samverschueren/stream-to-observable": "^0.3.0", + "is-observable": "^1.1.0", + "is-promise": "^2.1.0", + "is-stream": "^1.1.0", + "listr-silent-renderer": "^1.1.1", + "listr-update-renderer": "^0.5.0", + "listr-verbose-renderer": "^0.5.0", + "p-map": "^2.0.0", + "rxjs": "^6.3.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/listr-silent-renderer": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/listr-silent-renderer/-/listr-silent-renderer-1.1.1.tgz", + "integrity": "sha1-kktaN1cVN3C/Go4/v3S4u/P5JC4=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/listr-update-renderer": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/listr-update-renderer/-/listr-update-renderer-0.5.0.tgz", + "integrity": "sha512-tKRsZpKz8GSGqoI/+caPmfrypiaq+OQCbd+CovEC24uk1h952lVj5sC7SqyFUm+OaJ5HN/a1YLt5cit2FMNsFA==", + "dev": true, + "dependencies": { + "chalk": "^1.1.3", + "cli-truncate": "^0.2.1", + "elegant-spinner": "^1.0.1", + "figures": "^1.7.0", + "indent-string": "^3.0.0", + "log-symbols": "^1.0.2", + "log-update": "^2.3.0", + "strip-ansi": "^3.0.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/listr-update-renderer/node_modules/chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "dependencies": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/listr-update-renderer/node_modules/log-symbols": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-1.0.2.tgz", + "integrity": "sha1-N2/3tY6jCGoPCfrMdGF+ylAeGhg=", + "dev": true, + "dependencies": { + "chalk": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/listr-update-renderer/node_modules/supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/listr-verbose-renderer": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/listr-verbose-renderer/-/listr-verbose-renderer-0.5.0.tgz", + "integrity": "sha512-04PDPqSlsqIOaaaGZ+41vq5FejI9auqTInicFRndCBgE3bXG8D6W1I+mWhk+1nqbHmyhla/6BUrd5OSiHwKRXw==", + "dev": true, + "dependencies": { + "chalk": "^2.4.1", + "cli-cursor": "^2.1.0", + "date-fns": "^1.27.2", + "figures": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/listr-verbose-renderer/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/listr-verbose-renderer/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/listr-verbose-renderer/node_modules/cli-cursor": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", + "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", + "dev": true, + "dependencies": { + "restore-cursor": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/listr-verbose-renderer/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/listr-verbose-renderer/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "node_modules/listr-verbose-renderer/node_modules/figures": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", + "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", + "dev": true, + "dependencies": { + "escape-string-regexp": "^1.0.5" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/listr-verbose-renderer/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/listr-verbose-renderer/node_modules/mimic-fn": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", + "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/listr-verbose-renderer/node_modules/onetime": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", + "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", + "dev": true, + "dependencies": { + "mimic-fn": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/listr-verbose-renderer/node_modules/restore-cursor": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", + "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", + "dev": true, + "dependencies": { + "onetime": "^2.0.0", + "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/listr-verbose-renderer/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/listr/node_modules/is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true + }, + "node_modules/lodash.once": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz", + "integrity": "sha1-DdOXEhPHxW34gJd9UEyI+0cal6w=", + "dev": true + }, + "node_modules/log-symbols": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.0.0.tgz", + "integrity": "sha512-FN8JBzLx6CzeMrB0tg6pqlGU1wCrXW+ZXGH481kfsBqer0hToTIiHdjH4Mq8xJUbvATujKCvaREGWpGUionraA==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/log-update": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/log-update/-/log-update-2.3.0.tgz", + "integrity": "sha1-iDKP19HOeTiykoN0bwsbwSayRwg=", + "dev": true, + "dependencies": { + "ansi-escapes": "^3.0.0", + "cli-cursor": "^2.0.0", + "wrap-ansi": "^3.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/log-update/node_modules/cli-cursor": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", + "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", + "dev": true, + "dependencies": { + "restore-cursor": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/log-update/node_modules/mimic-fn": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", + "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/log-update/node_modules/onetime": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", + "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", + "dev": true, + "dependencies": { + "mimic-fn": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/log-update/node_modules/restore-cursor": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", + "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", + "dev": true, + "dependencies": { + "onetime": "^2.0.0", + "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true + }, + "node_modules/mime-db": { + "version": "1.46.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.46.0.tgz", + "integrity": "sha512-svXaP8UQRZ5K7or+ZmfNhg2xX3yKDMUzqadsSqi4NCH/KomcH75MAMYAGVlvXn4+b/xOPhS3I2uHKRUzvjY7BQ==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.29", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.29.tgz", + "integrity": "sha512-Y/jMt/S5sR9OaqteJtslsFZKWOIIqMACsJSiHghlCAyhf7jfVYjKBmLiX8OgpWeW+fjJ2b+Az69aPFPkUOY6xQ==", + "dev": true, + "dependencies": { + "mime-db": "1.46.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", + "dev": true + }, + "node_modules/mkdirp": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "dev": true, + "dependencies": { + "minimist": "^1.2.5" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/moment": { + "version": "2.29.1", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.29.1.tgz", + "integrity": "sha512-kHmoybcPV8Sqy59DwNDY3Jefr64lK/by/da0ViFcuA4DH0vQg5Q6Ze5VimxkfQNSC+Mls/Kx53s7TjP1RhFEDQ==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true + }, + "node_modules/npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dev": true, + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/number-is-nan": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/oauth-sign": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", + "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dev": true, + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/onetime": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", + "integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ospath": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/ospath/-/ospath-1.2.2.tgz", + "integrity": "sha1-EnZjl3Sj+O8lcvf+QoDg6kVQwHs=", + "dev": true + }, + "node_modules/p-map": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-2.1.0.tgz", + "integrity": "sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/pend": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", + "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=", + "dev": true + }, + "node_modules/performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", + "dev": true + }, + "node_modules/pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/pretty-bytes": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.6.0.tgz", + "integrity": "sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", + "dev": true + }, + "node_modules/psl": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", + "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==", + "dev": true + }, + "node_modules/pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dev": true, + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "node_modules/punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/qs": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", + "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", + "dev": true, + "engines": { + "node": ">=0.6" + } + }, + "node_modules/querystring": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", + "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=", + "dev": true, + "engines": { + "node": ">=0.4.x" + } + }, + "node_modules/ramda": { + "version": "0.27.1", + "resolved": "https://registry.npmjs.org/ramda/-/ramda-0.27.1.tgz", + "integrity": "sha512-PgIdVpn5y5Yns8vqb8FzBUEYn98V3xcPgawAkkgj0YJ0qDsnHCiNmZYfOGMgOvoB0eWFLpYbhxUR3mxfDIMvpw==", + "dev": true + }, + "node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/readable-stream/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "node_modules/request-progress": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/request-progress/-/request-progress-3.0.0.tgz", + "integrity": "sha1-TKdUCBx/7GP1BeT6qCWqBs1mnb4=", + "dev": true, + "dependencies": { + "throttleit": "^1.0.0" + } + }, + "node_modules/restore-cursor": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-1.0.1.tgz", + "integrity": "sha1-NGYfRohjJ/7SmRR5FSJS35LapUE=", + "dev": true, + "dependencies": { + "exit-hook": "^1.0.0", + "onetime": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, + "node_modules/rxjs": { + "version": "6.6.6", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.6.tgz", + "integrity": "sha512-/oTwee4N4iWzAMAL9xdGKjkEHmIwupR3oXbQjCKywF1BeFohswF3vZdogbmEF6pZkOsXTzWkrZszrWpQTByYVg==", + "dev": true, + "dependencies": { + "tslib": "^1.9.0" + }, + "engines": { + "npm": ">=2.0.0" + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/signal-exit": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", + "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==", + "dev": true + }, + "node_modules/slice-ansi": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-0.0.4.tgz", + "integrity": "sha1-7b+JA/ZvfOL46v1s7tZeJkyDGzU=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sshpk": { + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", + "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", + "dev": true, + "dependencies": { + "asn1": "~0.2.3", + "assert-plus": "^1.0.0", + "bcrypt-pbkdf": "^1.0.0", + "dashdash": "^1.12.0", + "ecc-jsbn": "~0.1.1", + "getpass": "^0.1.1", + "jsbn": "~0.1.0", + "safer-buffer": "^2.0.2", + "tweetnacl": "~0.14.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/string_decoder/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "node_modules/string-width": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", + "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width/node_modules/ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width/node_modules/strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/symbol-observable": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.2.0.tgz", + "integrity": "sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/throttleit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/throttleit/-/throttleit-1.0.0.tgz", + "integrity": "sha1-nnhYNtr0Z0MUWlmEtiaNgoUorGw=", + "dev": true + }, + "node_modules/tmp": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", + "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", + "dev": true, + "dependencies": { + "rimraf": "^3.0.0" + }, + "engines": { + "node": ">=8.17.0" + } + }, + "node_modules/tough-cookie": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", + "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", + "dev": true, + "dependencies": { + "psl": "^1.1.28", + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + }, + "node_modules/tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "dev": true, + "dependencies": { + "safe-buffer": "^5.0.1" + }, + "engines": { + "node": "*" + } + }, + "node_modules/tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", + "dev": true + }, + "node_modules/typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", + "dev": true + }, + "node_modules/universalify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", + "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", + "dev": true, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/untildify": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/untildify/-/untildify-4.0.0.tgz", + "integrity": "sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/url": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", + "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", + "dev": true, + "dependencies": { + "punycode": "1.3.2", + "querystring": "0.2.0" + } + }, + "node_modules/url/node_modules/punycode": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", + "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=", + "dev": true + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", + "dev": true + }, + "node_modules/uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", + "dev": true, + "bin": { + "uuid": "bin/uuid" + } + }, + "node_modules/verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "dev": true, + "engines": [ + "node >=0.6.0" + ], + "dependencies": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/wrap-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-3.0.1.tgz", + "integrity": "sha1-KIoE2H7aXChuBg3+jxNc6NAH+Lo=", + "dev": true, + "dependencies": { + "string-width": "^2.1.1", + "strip-ansi": "^4.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/wrap-ansi/node_modules/ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/wrap-ansi/node_modules/is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/wrap-ansi/node_modules/string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "dependencies": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/wrap-ansi/node_modules/strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "dependencies": { + "ansi-regex": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", + "dev": true + }, + "node_modules/yauzl": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", + "integrity": "sha1-x+sXyT4RLLEIb6bY5R+wZnt5pfk=", + "dev": true, + "dependencies": { + "buffer-crc32": "~0.2.3", + "fd-slicer": "~1.1.0" + } + } + }, "dependencies": { "@cypress/listr-verbose-renderer": { "version": "0.4.1", @@ -1542,6 +3724,23 @@ "tweetnacl": "~0.14.0" } }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + }, + "dependencies": { + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + } + } + }, "string-width": { "version": "4.2.2", "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", @@ -1570,23 +3769,6 @@ } } }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - }, - "dependencies": { - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - } - } - }, "strip-ansi": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", From eb6828437afa3b0d8edfa56c0c0a7364a9eb149a Mon Sep 17 00:00:00 2001 From: Coreen Cooper Date: Fri, 19 Mar 2021 16:48:27 -0400 Subject: [PATCH 02/19] format header --- index.css | 12 ++++++++++++ index.html | 5 ++++- 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/index.css b/index.css index e69de29..ce0965c 100644 --- a/index.css +++ b/index.css @@ -0,0 +1,12 @@ +body { + background-color: black; +} + +header { + display: flex; + justify-content: space-between; + color: white; + background-color: green; + font-family: fantasy; +} + diff --git a/index.html b/index.html index 2771ea9..718ec82 100644 --- a/index.html +++ b/index.html @@ -6,6 +6,8 @@ + + @@ -14,6 +16,7 @@

Rick & Morty

Rick and Morty - + + \ No newline at end of file From 73c889c36d3a76ae8748af9734c7132adc59f90b Mon Sep 17 00:00:00 2001 From: Coreen Cooper Date: Fri, 19 Mar 2021 18:15:28 -0400 Subject: [PATCH 03/19] fetch characters name and image --- README.md | 4 ++-- index.js | 42 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 44 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 3659363..b5e3abc 100644 --- a/README.md +++ b/README.md @@ -25,8 +25,8 @@ See an app video [here](https://www.youtube.com/watch?v=bGyZYHU3cJ0) and can be This **burp** app should have (in order of placement in the HTML): - *html - A title tag that starts with the text "Szechuan Sauce" -- css - A header tag. Make it mean and make it green. -- css *html - Inside the header an `h1` that reads "Rick & Morty" with fantasy font. +- *css - A header tag. Make it mean and make it green. +- *css *html - Inside the header an `h1` that reads "Rick & Morty" with fantasy font. - *html - Inside the header an image of Rick and Morty (check your assets folder!) - js *html - A `ul` with the id `all-characters` that contains an `li`'s with an image (id=`photo-img`) of each character in the API (first page only), as well as the characters name. diff --git a/index.js b/index.js index e69de29..219e907 100644 --- a/index.js +++ b/index.js @@ -0,0 +1,42 @@ + + +// const body = document.querySelector("body"); + +// fetch("http://localhost:3000/cars/") +// .then((res) => { +// // debugger +// if (!res.ok) { +// throw Error(`Girrrl ya wrong! ${res.status}`); +// } +// return res.json(); +// }) +// .then((res) => { +// res.cars.forEach((el) => { +// const div = document.createElement("div"); +// div.textContent = el["model"]; +// body.appendChild(div); +// }); +// }) +// .catch((err) => { +// console.log(err); +// }); + +const ul = document.querySelector("ul"); + +fetch("https://rickandmortyapi.com/api/character?page=1") +.then((res) => { + if (!res.ok) { + throw Error(`Girrrl ya wrong! ${res.status}`); + } + return res.json(); +}) .then((res) => { + res.results.forEach((char, i) => { + const li = document.createElement("li"); + const img = document.createElement("img"); + li.textContent = char["name"]; // display name + img.textContent = char["image"]; // display image + ul.appendChild(li); + li.appendChild(img); + }) + + }) From 6a39a5041b23ac44e5c14f08907b60edd79b8c91 Mon Sep 17 00:00:00 2001 From: Coreen Cooper Date: Fri, 19 Mar 2021 18:21:05 -0400 Subject: [PATCH 04/19] display characters name and image to DOM --- index.css | 4 ++-- index.js | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/index.css b/index.css index ce0965c..3e7cb05 100644 --- a/index.css +++ b/index.css @@ -1,6 +1,6 @@ -body { +/* body { background-color: black; -} +} */ header { display: flex; diff --git a/index.js b/index.js index 219e907..42ec225 100644 --- a/index.js +++ b/index.js @@ -34,7 +34,7 @@ fetch("https://rickandmortyapi.com/api/character?page=1") const li = document.createElement("li"); const img = document.createElement("img"); li.textContent = char["name"]; // display name - img.textContent = char["image"]; // display image + img.src = char["image"]; // display image ul.appendChild(li); li.appendChild(img); }) From e49e4627d49764d76d9ca7c131b1ee1202dfd994 Mon Sep 17 00:00:00 2001 From: Coreen Cooper Date: Fri, 19 Mar 2021 19:08:23 -0400 Subject: [PATCH 05/19] complete initial layout --- README.md | 4 ++-- index.css | 4 ++-- index.html | 3 ++- index.js | 56 ++++++++++++++++++++---------------------------------- 4 files changed, 27 insertions(+), 40 deletions(-) diff --git a/README.md b/README.md index b5e3abc..3659363 100644 --- a/README.md +++ b/README.md @@ -25,8 +25,8 @@ See an app video [here](https://www.youtube.com/watch?v=bGyZYHU3cJ0) and can be This **burp** app should have (in order of placement in the HTML): - *html - A title tag that starts with the text "Szechuan Sauce" -- *css - A header tag. Make it mean and make it green. -- *css *html - Inside the header an `h1` that reads "Rick & Morty" with fantasy font. +- css - A header tag. Make it mean and make it green. +- css *html - Inside the header an `h1` that reads "Rick & Morty" with fantasy font. - *html - Inside the header an image of Rick and Morty (check your assets folder!) - js *html - A `ul` with the id `all-characters` that contains an `li`'s with an image (id=`photo-img`) of each character in the API (first page only), as well as the characters name. diff --git a/index.css b/index.css index 3e7cb05..c7845e7 100644 --- a/index.css +++ b/index.css @@ -2,11 +2,11 @@ background-color: black; } */ -header { +/* header { display: flex; justify-content: space-between; color: white; background-color: green; font-family: fantasy; -} +} */ diff --git a/index.html b/index.html index 718ec82..c84afb7 100644 --- a/index.html +++ b/index.html @@ -19,4 +19,5 @@

Rick & Morty

    - \ No newline at end of file + + diff --git a/index.js b/index.js index 42ec225..1077c62 100644 --- a/index.js +++ b/index.js @@ -1,42 +1,28 @@ - - -// const body = document.querySelector("body"); - -// fetch("http://localhost:3000/cars/") -// .then((res) => { -// // debugger -// if (!res.ok) { -// throw Error(`Girrrl ya wrong! ${res.status}`); -// } -// return res.json(); -// }) -// .then((res) => { -// res.cars.forEach((el) => { -// const div = document.createElement("div"); -// div.textContent = el["model"]; -// body.appendChild(div); -// }); -// }) -// .catch((err) => { -// console.log(err); -// }); - +const body = document.querySelector("body"); const ul = document.querySelector("ul"); +const main = document.createElement("main"); +body.appendChild(main); + fetch("https://rickandmortyapi.com/api/character?page=1") -.then((res) => { + .then((res) => { if (!res.ok) { - throw Error(`Girrrl ya wrong! ${res.status}`); + throw Error(`Girrrl ya wrong! ${res.status}`); } return res.json(); -}) .then((res) => { - res.results.forEach((char, i) => { - const li = document.createElement("li"); - const img = document.createElement("img"); - li.textContent = char["name"]; // display name - img.src = char["image"]; // display image - ul.appendChild(li); - li.appendChild(img); - }) - }) + .then((res) => { + res.results.forEach((char) => { + const li = document.createElement("li"); + const img = document.createElement("img"); + li.textContent = char["name"]; // display name + img.src = char["image"]; // display image + ul.appendChild(li); + li.appendChild(img); + }); + }) + .catch((err) => { + console.log(err); + }); + + From 3b222ca5d0070d48ffb158fb81de03b678abbf56 Mon Sep 17 00:00:00 2001 From: Coreen Cooper Date: Fri, 19 Mar 2021 19:39:08 -0400 Subject: [PATCH 06/19] complete styling spec --- index.css | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/index.css b/index.css index c7845e7..b289b9d 100644 --- a/index.css +++ b/index.css @@ -1,12 +1,17 @@ -/* body { +body { background-color: black; -} */ +} -/* header { +header { display: flex; justify-content: space-between; color: white; - background-color: green; + height: 150px; + background-color: rgb(0, 128, 0); font-family: fantasy; -} */ +} + +header > img { + height: 100px; +} From 90d517d2b8a5a14d76673282e7fd9451ab175a39 Mon Sep 17 00:00:00 2001 From: Coreen Cooper Date: Sun, 21 Mar 2021 10:57:35 -0400 Subject: [PATCH 07/19] add html for main section --- index.css | 12 +++++++++++- index.html | 17 +++++++++++++++++ index.js | 18 ++++++++++++------ 3 files changed, 40 insertions(+), 7 deletions(-) diff --git a/index.css b/index.css index b289b9d..f0c5552 100644 --- a/index.css +++ b/index.css @@ -1,11 +1,11 @@ body { background-color: black; + color: white; } header { display: flex; justify-content: space-between; - color: white; height: 150px; background-color: rgb(0, 128, 0); font-family: fantasy; @@ -15,3 +15,13 @@ header > img { height: 100px; } +ul { + display: flex; + + list-style-type: none; +} + +main { + border: white solid 1px; +} + diff --git a/index.html b/index.html index c84afb7..96aaf10 100644 --- a/index.html +++ b/index.html @@ -17,6 +17,23 @@

    Rick & Morty

    Rick and Morty
      +
      +
      +

      + +

      +

      +
      + +
      +
      +

      What would this character say about Jerry?

      + + +
      +
        +
        +
        diff --git a/index.js b/index.js index 1077c62..c18e737 100644 --- a/index.js +++ b/index.js @@ -1,9 +1,3 @@ -const body = document.querySelector("body"); -const ul = document.querySelector("ul"); -const main = document.createElement("main"); -body.appendChild(main); - - fetch("https://rickandmortyapi.com/api/character?page=1") .then((res) => { if (!res.ok) { @@ -12,7 +6,9 @@ fetch("https://rickandmortyapi.com/api/character?page=1") return res.json(); }) .then((res) => { + // debugger res.results.forEach((char) => { + const ul = document.querySelector("ul"); const li = document.createElement("li"); const img = document.createElement("img"); li.textContent = char["name"]; // display name @@ -25,4 +21,14 @@ fetch("https://rickandmortyapi.com/api/character?page=1") console.log(err); }); +const body = document.querySelector("body"); + +const displayMain = (event) => { + const main = document.createElement("main"); + body.appendChild(main); + // debugger +}; + +body.addEventListener("click", displayMain); +// event.currentTarget.childNodes[9] From 30e9b0b5cabf226cdc130962f576d2ed7fbd5229 Mon Sep 17 00:00:00 2001 From: Coreen Cooper Date: Sun, 21 Mar 2021 11:19:59 -0400 Subject: [PATCH 08/19] add styling --- index.css | 14 +++++++++++--- index.js | 4 +++- 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/index.css b/index.css index f0c5552..3235f30 100644 --- a/index.css +++ b/index.css @@ -5,7 +5,10 @@ body { header { display: flex; - justify-content: space-between; + justify-content: space-around; + align-items: center; + margin: auto; + width: 70%; height: 150px; background-color: rgb(0, 128, 0); font-family: fantasy; @@ -15,13 +18,18 @@ header > img { height: 100px; } -ul { +#all-characters { display: flex; - + width: 67%; + margin: auto; list-style-type: none; + overflow-x: scroll; } main { border: white solid 1px; + width: 70%; + margin: auto; } + diff --git a/index.js b/index.js index c18e737..a0ae022 100644 --- a/index.js +++ b/index.js @@ -11,10 +11,12 @@ fetch("https://rickandmortyapi.com/api/character?page=1") const ul = document.querySelector("ul"); const li = document.createElement("li"); const img = document.createElement("img"); - li.textContent = char["name"]; // display name + const p = document.createElement("p"); + p.textContent = char["name"]; // display name img.src = char["image"]; // display image ul.appendChild(li); li.appendChild(img); + li.appendChild(p); }); }) .catch((err) => { From 1ac237c6f09c61571db95cef53d28e25e09d8f11 Mon Sep 17 00:00:00 2001 From: Coreen Cooper Date: Sun, 21 Mar 2021 11:36:13 -0400 Subject: [PATCH 09/19] add instructions to js --- index.css | 3 +++ index.html | 8 ++++---- index.js | 10 ++++++++++ 3 files changed, 17 insertions(+), 4 deletions(-) diff --git a/index.css b/index.css index 3235f30..a454062 100644 --- a/index.css +++ b/index.css @@ -24,12 +24,15 @@ header > img { margin: auto; list-style-type: none; overflow-x: scroll; + text-align: center; } main { border: white solid 1px; width: 70%; margin: auto; + display: flex; + justify-content: space-around; } diff --git a/index.html b/index.html index 96aaf10..cd0817b 100644 --- a/index.html +++ b/index.html @@ -18,20 +18,20 @@

        Rick & Morty

          -
          +

          - -
          + +

          What would this character say about Jerry?

          -
            +
              diff --git a/index.js b/index.js index a0ae022..bbe3e5c 100644 --- a/index.js +++ b/index.js @@ -1,3 +1,12 @@ +// click on a character. +// When they select a character, the `main` should appear and information about that +// character (name, image, status, location name) should populate in the `character-info` section. +// When they click on a different character, this information should be replaced. +// The page `title` should also match the name of the character selected. +// Use the `form`, to submit a character comment. Each comment should be a new `li` inside of +// `character-comments-ul`, with the selected character's name (in bold) and a comment (not bold). + + fetch("https://rickandmortyapi.com/api/character?page=1") .then((res) => { if (!res.ok) { @@ -14,6 +23,7 @@ fetch("https://rickandmortyapi.com/api/character?page=1") const p = document.createElement("p"); p.textContent = char["name"]; // display name img.src = char["image"]; // display image + li.classList.add("photo-img"); ul.appendChild(li); li.appendChild(img); li.appendChild(p); From 820f10deaddfc56785cc797bc0f27ce68e4700d8 Mon Sep 17 00:00:00 2001 From: Coreen Cooper Date: Sun, 21 Mar 2021 14:03:02 -0400 Subject: [PATCH 10/19] before review --- index.html | 10 +++--- index.js | 91 +++++++++++++++++++++++++++++++++++------------------- 2 files changed, 65 insertions(+), 36 deletions(-) diff --git a/index.html b/index.html index cd0817b..a18b6f1 100644 --- a/index.html +++ b/index.html @@ -19,17 +19,17 @@

              Rick & Morty

                -

                - -

                -

                +

                + +

                +

                What would this character say about Jerry?

                - +
                  diff --git a/index.js b/index.js index bbe3e5c..a9078e1 100644 --- a/index.js +++ b/index.js @@ -2,45 +2,74 @@ // When they select a character, the `main` should appear and information about that // character (name, image, status, location name) should populate in the `character-info` section. // When they click on a different character, this information should be replaced. -// The page `title` should also match the name of the character selected. +// The page `title` should also match the name of the character selected. // Use the `form`, to submit a character comment. Each comment should be a new `li` inside of // `character-comments-ul`, with the selected character's name (in bold) and a comment (not bold). +const ul = document.querySelector("ul"); +const name = document.querySelector("#name"); +const picture = document.querySelector("#picture"); +const charStatus = document.querySelector("#status"); +const charLocation = document.querySelector("#location"); -fetch("https://rickandmortyapi.com/api/character?page=1") - .then((res) => { - if (!res.ok) { - throw Error(`Girrrl ya wrong! ${res.status}`); +const displayAllCharacters = (res) => { + res.results.forEach((char) => { + const li = document.createElement("li"); + const img = document.createElement("img"); + const p = document.createElement("p"); + p.textContent = char["name"]; // display name + img.src = char["image"]; // display image + li.classList.add("photo-img"); // add class name + ul.appendChild(li); + li.appendChild(img); + li.appendChild(p); + }); +}; + +const eachCharacter = (res, event) => { + debugger; + const selection = event.target.parentElement.innerText; + res.results.forEach((char) => { + if (selection === char.name) { + name.textContent = char.name; + picture.src = char.image; + charStatus.textContent = char.status; + charLocation.textContent = char.location.name; } - return res.json(); - }) - .then((res) => { - // debugger - res.results.forEach((char) => { - const ul = document.querySelector("ul"); - const li = document.createElement("li"); - const img = document.createElement("img"); - const p = document.createElement("p"); - p.textContent = char["name"]; // display name - img.src = char["image"]; // display image - li.classList.add("photo-img"); - ul.appendChild(li); - li.appendChild(img); - li.appendChild(p); - }); - }) - .catch((err) => { - console.log(err); }); +}; -const body = document.querySelector("body"); +const getComments = (event) => { + fetch("https://rickandmortyapi.com/api/character?page=1") + .then((res) => { + if (!res.ok) { + throw Error(`Girrrl ya wrong! ${res.status}`); + } + return res.json(); + }) + .then((res) => { + displayAllCharacters(res); -const displayMain = (event) => { - const main = document.createElement("main"); - body.appendChild(main); - // debugger + ul.addEventListener("click", (event) => { + eachCharacter(res, event); + }); + }) + .catch((err) => { + console.log(err); + }); }; -body.addEventListener("click", displayMain); +getComments(); + +// Vanessa /////////// -// event.currentTarget.childNodes[9] +// const chosenCharacter = e.target.parentElement.innerText; +// res.data.results.forEach((el) => { +// if (el.name === chosenCharacter) { +// debugger; +// characterHeader.textContent = el.name; +// characterImage.src = el.image; +// characterStatus.textContent = el.status; +// characterLocation.textContent = el.location.name; +// } +// }); From eafae40781349e22273e4190b038ca3efa032f3d Mon Sep 17 00:00:00 2001 From: Coreen Cooper Date: Sun, 21 Mar 2021 14:05:40 -0400 Subject: [PATCH 11/19] add sparky files --- sparky.css | 0 sparky.html | 0 sparky.js | 0 3 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 sparky.css create mode 100644 sparky.html create mode 100644 sparky.js diff --git a/sparky.css b/sparky.css new file mode 100644 index 0000000..e69de29 diff --git a/sparky.html b/sparky.html new file mode 100644 index 0000000..e69de29 diff --git a/sparky.js b/sparky.js new file mode 100644 index 0000000..e69de29 From de63937489f460c81a004fb9bef5671238c9219f Mon Sep 17 00:00:00 2001 From: Coreen Cooper Date: Sun, 21 Mar 2021 15:03:39 -0400 Subject: [PATCH 12/19] get character scroll --- sparky.css | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ sparky.html | 39 +++++++++++++++++++++++++++++++++++++++ sparky.js | 24 ++++++++++++++++++++++++ 3 files changed, 111 insertions(+) diff --git a/sparky.css b/sparky.css index e69de29..7b312d6 100644 --- a/sparky.css +++ b/sparky.css @@ -0,0 +1,48 @@ +body { + background-color: black; + display: flex; + flex-direction: column; + align-items: center; + color: white; +} + +header { + width: 70%; + height: 150px; + display: flex; + justify-content: space-around; + background-color: rgb(0, 128, 0); + font-family: fantasy; + align-items: center; + margin: auto; +} + +header > img { + height: 100px; +} + +main { + /* display: none; */ + width: 70%; + border: white solid 1px; + /* display: flex; */ + margin: auto; + /* justify-content: space-around; */ +} + +#all-characters { + display: flex; + list-style-type: none; + width: 70%; + padding: 0; + margin: auto; + overflow-x: scroll; + text-align: center; +} + +input[type="text"] { + width: 380px; +} + + + diff --git a/sparky.html b/sparky.html index e69de29..6877368 100644 --- a/sparky.html +++ b/sparky.html @@ -0,0 +1,39 @@ + + + + + + + Szechuan Sauce + + + + + + + + + +
                  +

                  Rick & Morty

                  + +
                  +
                    +
                    +
                    +

                    + +

                    +

                    +
                    + +
                    +
                    + + +
                    +
                      +
                      +
                      + + \ No newline at end of file diff --git a/sparky.js b/sparky.js index e69de29..e182473 100644 --- a/sparky.js +++ b/sparky.js @@ -0,0 +1,24 @@ +const allCharacters = document.querySelector("#all-characters"); + + +const getAllCharacters = async () => { + try { + const res = await axios.get("https://rickandmortyapi.com/api/character") + // console.log(res); + res.data.results.forEach(character => { + const li = document.createElement("li"); + const img = document.createElement("img"); + const p = document.createElement("p"); + // console.log(character); + img.src = character.image; + p.innerText = character.name; + li.appendChild(img); + li.appendChild(p); + allCharacters.appendChild(li); + }) + } catch(err) { + console.log(err) + } +} + +getAllCharacters(); From fd85b4d64b717c0ed2c656147377c95f0c21a01f Mon Sep 17 00:00:00 2001 From: Coreen Cooper Date: Sun, 21 Mar 2021 15:47:35 -0400 Subject: [PATCH 13/19] passed 8 of core interaction --- index.css | 34 +++++++----- index.html | 33 ++++++------ index.js | 112 ++++++++++++++------------------------- sparky.css => index1.css | 34 +++++------- index1.html | 40 ++++++++++++++ index1.js | 75 ++++++++++++++++++++++++++ sparky.html | 39 -------------- sparky.js | 24 --------- 8 files changed, 206 insertions(+), 185 deletions(-) rename sparky.css => index1.css (70%) create mode 100644 index1.html create mode 100644 index1.js delete mode 100644 sparky.html delete mode 100644 sparky.js diff --git a/index.css b/index.css index a454062..7b312d6 100644 --- a/index.css +++ b/index.css @@ -1,38 +1,48 @@ body { background-color: black; + display: flex; + flex-direction: column; + align-items: center; color: white; } header { - display: flex; - justify-content: space-around; - align-items: center; - margin: auto; width: 70%; height: 150px; + display: flex; + justify-content: space-around; background-color: rgb(0, 128, 0); font-family: fantasy; + align-items: center; + margin: auto; } header > img { height: 100px; } +main { + /* display: none; */ + width: 70%; + border: white solid 1px; + /* display: flex; */ + margin: auto; + /* justify-content: space-around; */ +} + #all-characters { display: flex; - width: 67%; - margin: auto; list-style-type: none; + width: 70%; + padding: 0; + margin: auto; overflow-x: scroll; text-align: center; } -main { - border: white solid 1px; - width: 70%; - margin: auto; - display: flex; - justify-content: space-around; +input[type="text"] { + width: 380px; } + diff --git a/index.html b/index.html index a18b6f1..24cd390 100644 --- a/index.html +++ b/index.html @@ -1,40 +1,39 @@ - Szechuan Sauce - - - - + Szechuan Sauce + + + + + + + -

                      Rick & Morty

                      - Rick and Morty +
                        -

                        - -

                        -

                        +

                        + +

                        +

                        -

                        What would this character say about Jerry?

                        - - + +
                          - - - + \ No newline at end of file diff --git a/index.js b/index.js index a9078e1..4d62d34 100644 --- a/index.js +++ b/index.js @@ -1,75 +1,45 @@ -// click on a character. -// When they select a character, the `main` should appear and information about that -// character (name, image, status, location name) should populate in the `character-info` section. -// When they click on a different character, this information should be replaced. -// The page `title` should also match the name of the character selected. -// Use the `form`, to submit a character comment. Each comment should be a new `li` inside of -// `character-comments-ul`, with the selected character's name (in bold) and a comment (not bold). - -const ul = document.querySelector("ul"); -const name = document.querySelector("#name"); -const picture = document.querySelector("#picture"); -const charStatus = document.querySelector("#status"); -const charLocation = document.querySelector("#location"); - -const displayAllCharacters = (res) => { - res.results.forEach((char) => { - const li = document.createElement("li"); - const img = document.createElement("img"); - const p = document.createElement("p"); - p.textContent = char["name"]; // display name - img.src = char["image"]; // display image - li.classList.add("photo-img"); // add class name - ul.appendChild(li); - li.appendChild(img); - li.appendChild(p); - }); -}; - -const eachCharacter = (res, event) => { - debugger; - const selection = event.target.parentElement.innerText; - res.results.forEach((char) => { - if (selection === char.name) { - name.textContent = char.name; - picture.src = char.image; - charStatus.textContent = char.status; - charLocation.textContent = char.location.name; - } - }); -}; - -const getComments = (event) => { - fetch("https://rickandmortyapi.com/api/character?page=1") - .then((res) => { - if (!res.ok) { - throw Error(`Girrrl ya wrong! ${res.status}`); - } - return res.json(); - }) - .then((res) => { - displayAllCharacters(res); - - ul.addEventListener("click", (event) => { - eachCharacter(res, event); - }); - }) - .catch((err) => { - console.log(err); +const allCharacters = document.querySelector("#all-characters"); +const main = document.querySelector("main"); +const name = document.querySelector("#character-name"); +const image = document.querySelector("#character-image"); +const status = document.querySelector("#character-status"); +const place = document.querySelector("#character-location"); +const title = document.querySelector("title") + +const getAllCharacters = async () => { + try { + const res = await axios.get("https://rickandmortyapi.com/api/character"); + // console.log(res); + res.data.results.forEach((character) => { + const li = document.createElement("li"); + const img = document.createElement("img"); + const p = document.createElement("p"); + // console.log(character); + + img.src = character.image; + img.value = character.id; + p.innerText = character.name; + li.appendChild(img); + li.appendChild(p); + allCharacters.appendChild(li); }); + } catch (err) { + console.log(err); + } }; -getComments(); +getAllCharacters(); -// Vanessa /////////// - -// const chosenCharacter = e.target.parentElement.innerText; -// res.data.results.forEach((el) => { -// if (el.name === chosenCharacter) { -// debugger; -// characterHeader.textContent = el.name; -// characterImage.src = el.image; -// characterStatus.textContent = el.status; -// characterLocation.textContent = el.location.name; -// } -// }); +allCharacters.addEventListener("click", async (e) => { + main.style.display = "flex"; + debugger; + // console.log(e.target); + // debugger + const url = `https://rickandmortyapi.com/api/character/${e.target.value}`; + const res = await axios.get(url); + name.innerText = res.data.name; + image.src = res.data.image; + status.innerHTML = `Status${res.data.status}`; + place.innerHTML = `Location${res.data.location.name}`; + title.innerText = res.data.name; +}); diff --git a/sparky.css b/index1.css similarity index 70% rename from sparky.css rename to index1.css index 7b312d6..a454062 100644 --- a/sparky.css +++ b/index1.css @@ -1,48 +1,38 @@ body { background-color: black; - display: flex; - flex-direction: column; - align-items: center; color: white; } header { - width: 70%; - height: 150px; display: flex; justify-content: space-around; - background-color: rgb(0, 128, 0); - font-family: fantasy; align-items: center; margin: auto; + width: 70%; + height: 150px; + background-color: rgb(0, 128, 0); + font-family: fantasy; } header > img { height: 100px; } -main { - /* display: none; */ - width: 70%; - border: white solid 1px; - /* display: flex; */ - margin: auto; - /* justify-content: space-around; */ -} - #all-characters { display: flex; - list-style-type: none; - width: 70%; - padding: 0; + width: 67%; margin: auto; + list-style-type: none; overflow-x: scroll; text-align: center; } -input[type="text"] { - width: 380px; +main { + border: white solid 1px; + width: 70%; + margin: auto; + display: flex; + justify-content: space-around; } - diff --git a/index1.html b/index1.html new file mode 100644 index 0000000..a18b6f1 --- /dev/null +++ b/index1.html @@ -0,0 +1,40 @@ + + + + Szechuan Sauce + + + + + + + + + + +
                          +

                          Rick & Morty

                          + Rick and Morty +
                          +
                            +
                            +
                            +

                            + +

                            +

                            +
                            + +
                            +
                            +

                            What would this character say about Jerry?

                            + + +
                            +
                              +
                              +
                              + + + + diff --git a/index1.js b/index1.js new file mode 100644 index 0000000..a9078e1 --- /dev/null +++ b/index1.js @@ -0,0 +1,75 @@ +// click on a character. +// When they select a character, the `main` should appear and information about that +// character (name, image, status, location name) should populate in the `character-info` section. +// When they click on a different character, this information should be replaced. +// The page `title` should also match the name of the character selected. +// Use the `form`, to submit a character comment. Each comment should be a new `li` inside of +// `character-comments-ul`, with the selected character's name (in bold) and a comment (not bold). + +const ul = document.querySelector("ul"); +const name = document.querySelector("#name"); +const picture = document.querySelector("#picture"); +const charStatus = document.querySelector("#status"); +const charLocation = document.querySelector("#location"); + +const displayAllCharacters = (res) => { + res.results.forEach((char) => { + const li = document.createElement("li"); + const img = document.createElement("img"); + const p = document.createElement("p"); + p.textContent = char["name"]; // display name + img.src = char["image"]; // display image + li.classList.add("photo-img"); // add class name + ul.appendChild(li); + li.appendChild(img); + li.appendChild(p); + }); +}; + +const eachCharacter = (res, event) => { + debugger; + const selection = event.target.parentElement.innerText; + res.results.forEach((char) => { + if (selection === char.name) { + name.textContent = char.name; + picture.src = char.image; + charStatus.textContent = char.status; + charLocation.textContent = char.location.name; + } + }); +}; + +const getComments = (event) => { + fetch("https://rickandmortyapi.com/api/character?page=1") + .then((res) => { + if (!res.ok) { + throw Error(`Girrrl ya wrong! ${res.status}`); + } + return res.json(); + }) + .then((res) => { + displayAllCharacters(res); + + ul.addEventListener("click", (event) => { + eachCharacter(res, event); + }); + }) + .catch((err) => { + console.log(err); + }); +}; + +getComments(); + +// Vanessa /////////// + +// const chosenCharacter = e.target.parentElement.innerText; +// res.data.results.forEach((el) => { +// if (el.name === chosenCharacter) { +// debugger; +// characterHeader.textContent = el.name; +// characterImage.src = el.image; +// characterStatus.textContent = el.status; +// characterLocation.textContent = el.location.name; +// } +// }); diff --git a/sparky.html b/sparky.html deleted file mode 100644 index 6877368..0000000 --- a/sparky.html +++ /dev/null @@ -1,39 +0,0 @@ - - - - - - - Szechuan Sauce - - - - - - - - - -
                              -

                              Rick & Morty

                              - -
                              -
                                -
                                -
                                -

                                - -

                                -

                                -
                                - -
                                -
                                - - -
                                -
                                  -
                                  -
                                  - - \ No newline at end of file diff --git a/sparky.js b/sparky.js deleted file mode 100644 index e182473..0000000 --- a/sparky.js +++ /dev/null @@ -1,24 +0,0 @@ -const allCharacters = document.querySelector("#all-characters"); - - -const getAllCharacters = async () => { - try { - const res = await axios.get("https://rickandmortyapi.com/api/character") - // console.log(res); - res.data.results.forEach(character => { - const li = document.createElement("li"); - const img = document.createElement("img"); - const p = document.createElement("p"); - // console.log(character); - img.src = character.image; - p.innerText = character.name; - li.appendChild(img); - li.appendChild(p); - allCharacters.appendChild(li); - }) - } catch(err) { - console.log(err) - } -} - -getAllCharacters(); From 73db489ba2e6016c465a72504799bef95d6af6f6 Mon Sep 17 00:00:00 2001 From: Coreen Cooper Date: Sun, 21 Mar 2021 16:03:43 -0400 Subject: [PATCH 14/19] append list item --- index.html | 2 +- index.js | 11 +++++++++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/index.html b/index.html index 24cd390..3058aff 100644 --- a/index.html +++ b/index.html @@ -29,7 +29,7 @@

                                  - +
                                    diff --git a/index.js b/index.js index 4d62d34..8959cab 100644 --- a/index.js +++ b/index.js @@ -5,6 +5,8 @@ const image = document.querySelector("#character-image"); const status = document.querySelector("#character-status"); const place = document.querySelector("#character-location"); const title = document.querySelector("title") +const form = document.querySelector("form"); +const comments = document.querySelector("#character-comments-ul") const getAllCharacters = async () => { try { @@ -43,3 +45,12 @@ allCharacters.addEventListener("click", async (e) => { place.innerHTML = `Location${res.data.location.name}`; title.innerText = res.data.name; }); + +form.addEventListener("submit", (e)=> { + e.preventDefault(); + const comment = document.querySelector("#comment").value; + const li = document.createElement("li"); + li.innerHTML = `${title.textContent}: ${comment}`; + comments.appendChild(li); + // console.log(comment); +}) \ No newline at end of file From bc95d072bcad208c5490e7102c6718278982c9da Mon Sep 17 00:00:00 2001 From: Coreen Cooper Date: Sun, 21 Mar 2021 18:22:47 -0400 Subject: [PATCH 15/19] work on completion --- ...layout_spec.js => 1initial_layout_spec.js} | 0 .../{styling_spec.js => 2styling_spec.js} | 0 ...tion_spec.js => 3core_interaction_spec.js} | 0 index.css | 15 +- index.html | 33 ++--- index.js | 131 +++++++++++------- index1.html | 40 ------ index1.js | 75 ---------- index1.css => sparky/index.css | 34 +++-- sparky/index.html | 39 ++++++ sparky/index.js | 61 ++++++++ 11 files changed, 224 insertions(+), 204 deletions(-) rename cypress/integration/{initial_layout_spec.js => 1initial_layout_spec.js} (100%) rename cypress/integration/{styling_spec.js => 2styling_spec.js} (100%) rename cypress/integration/{core_interaction_spec.js => 3core_interaction_spec.js} (100%) delete mode 100644 index1.html delete mode 100644 index1.js rename index1.css => sparky/index.css (71%) create mode 100644 sparky/index.html create mode 100644 sparky/index.js diff --git a/cypress/integration/initial_layout_spec.js b/cypress/integration/1initial_layout_spec.js similarity index 100% rename from cypress/integration/initial_layout_spec.js rename to cypress/integration/1initial_layout_spec.js diff --git a/cypress/integration/styling_spec.js b/cypress/integration/2styling_spec.js similarity index 100% rename from cypress/integration/styling_spec.js rename to cypress/integration/2styling_spec.js diff --git a/cypress/integration/core_interaction_spec.js b/cypress/integration/3core_interaction_spec.js similarity index 100% rename from cypress/integration/core_interaction_spec.js rename to cypress/integration/3core_interaction_spec.js diff --git a/index.css b/index.css index 7b312d6..2a6871a 100644 --- a/index.css +++ b/index.css @@ -1,20 +1,20 @@ body { background-color: black; + color: white; display: flex; flex-direction: column; align-items: center; - color: white; } header { - width: 70%; - height: 150px; display: flex; justify-content: space-around; - background-color: rgb(0, 128, 0); - font-family: fantasy; align-items: center; margin: auto; + width: 70%; + height: 150px; + background-color: rgb(0, 128, 0); + font-family: fantasy; } header > img { @@ -22,7 +22,7 @@ header > img { } main { - /* display: none; */ + display: none; width: 70%; border: white solid 1px; /* display: flex; */ @@ -43,6 +43,3 @@ main { input[type="text"] { width: 380px; } - - - diff --git a/index.html b/index.html index 3058aff..a18b6f1 100644 --- a/index.html +++ b/index.html @@ -1,39 +1,40 @@ + Szechuan Sauce + - Szechuan Sauce - - - - - - - + + + +

                                    Rick & Morty

                                    - + Rick and Morty
                                      -

                                      - -

                                      -

                                      +

                                      + +

                                      +

                                      - - +

                                      What would this character say about Jerry?

                                      + +
                                        + - \ No newline at end of file + + diff --git a/index.js b/index.js index 8959cab..4794e58 100644 --- a/index.js +++ b/index.js @@ -1,56 +1,83 @@ -const allCharacters = document.querySelector("#all-characters"); +// click on a character. +// When they select a character, the `main` should appear and information about that +// character (name, image, status, location name) should populate in the `character-info` section. +// When they click on a different character, this information should be replaced. +// The page `title` should also match the name of the character selected. +// Use the `form`, to submit a character comment. Each comment should be a new `li` inside of +// `character-comments-ul`, with the selected character's name (in bold) and a comment (not bold). + + +// https://rickandmortyapi.com/documentation + +const ul = document.querySelector("ul"); +const name = document.querySelector("#name"); +const picture = document.querySelector("#picture"); +const charStatus = document.querySelector("#status"); +const charLocation = document.querySelector("#location"); const main = document.querySelector("main"); -const name = document.querySelector("#character-name"); -const image = document.querySelector("#character-image"); -const status = document.querySelector("#character-status"); -const place = document.querySelector("#character-location"); -const title = document.querySelector("title") -const form = document.querySelector("form"); -const comments = document.querySelector("#character-comments-ul") - -const getAllCharacters = async () => { - try { - const res = await axios.get("https://rickandmortyapi.com/api/character"); - // console.log(res); - res.data.results.forEach((character) => { - const li = document.createElement("li"); - const img = document.createElement("img"); - const p = document.createElement("p"); - // console.log(character); - - img.src = character.image; - img.value = character.id; - p.innerText = character.name; - li.appendChild(img); - li.appendChild(p); - allCharacters.appendChild(li); + +const displayAllCharacters = (res) => { + res.results.forEach((char) => { + const li = document.createElement("li"); + const img = document.createElement("img"); + const p = document.createElement("p"); + p.textContent = char["name"]; // display name + img.src = char["image"]; // display image + li.classList.add("photo-img"); // add class name + ul.appendChild(li); + li.appendChild(img); + li.appendChild(p); + }); +}; + +const eachCharacter = (res, event) => { + // debugger; + main.style.display = "flex" + const selection = event.target.parentElement.innerText; + res.results.forEach((char) => { + if (selection === char.name) { + name.textContent = char.name; + picture.src = char.image; + charStatus.textContent = char.status; + charLocation.textContent = char.location.name; + } + }); +}; + +const getCharacters = (event) => { + fetch("https://rickandmortyapi.com/api/character?page=1") + .then((res) => { + if (!res.ok) { + throw Error(`Girrrl ya wrong! ${res.status}`); + } + return res.json(); + }) + .then((res) => { + displayAllCharacters(res); + + + // look about creating this event listener outside + ul.addEventListener("click", (event) => { + eachCharacter(res, event); + }); + + }) + .catch((err) => { + console.log(err); }); - } catch (err) { - console.log(err); - } }; -getAllCharacters(); - -allCharacters.addEventListener("click", async (e) => { - main.style.display = "flex"; - debugger; - // console.log(e.target); - // debugger - const url = `https://rickandmortyapi.com/api/character/${e.target.value}`; - const res = await axios.get(url); - name.innerText = res.data.name; - image.src = res.data.image; - status.innerHTML = `Status${res.data.status}`; - place.innerHTML = `Location${res.data.location.name}`; - title.innerText = res.data.name; -}); - -form.addEventListener("submit", (e)=> { - e.preventDefault(); - const comment = document.querySelector("#comment").value; - const li = document.createElement("li"); - li.innerHTML = `${title.textContent}: ${comment}`; - comments.appendChild(li); - // console.log(comment); -}) \ No newline at end of file +getCharacters(); + +// Vanessa /////////// + +// const chosenCharacter = e.target.parentElement.innerText; +// res.data.results.forEach((el) => { +// if (el.name === chosenCharacter) { +// debugger; +// characterHeader.textContent = el.name; +// characterImage.src = el.image; +// characterStatus.textContent = el.status; +// characterLocation.textContent = el.location.name; +// } +// }); diff --git a/index1.html b/index1.html deleted file mode 100644 index a18b6f1..0000000 --- a/index1.html +++ /dev/null @@ -1,40 +0,0 @@ - - - - Szechuan Sauce - - - - - - - - - - -
                                        -

                                        Rick & Morty

                                        - Rick and Morty -
                                        -
                                          -
                                          -
                                          -

                                          - -

                                          -

                                          -
                                          - -
                                          -
                                          -

                                          What would this character say about Jerry?

                                          - - -
                                          -
                                            -
                                            -
                                            - - - - diff --git a/index1.js b/index1.js deleted file mode 100644 index a9078e1..0000000 --- a/index1.js +++ /dev/null @@ -1,75 +0,0 @@ -// click on a character. -// When they select a character, the `main` should appear and information about that -// character (name, image, status, location name) should populate in the `character-info` section. -// When they click on a different character, this information should be replaced. -// The page `title` should also match the name of the character selected. -// Use the `form`, to submit a character comment. Each comment should be a new `li` inside of -// `character-comments-ul`, with the selected character's name (in bold) and a comment (not bold). - -const ul = document.querySelector("ul"); -const name = document.querySelector("#name"); -const picture = document.querySelector("#picture"); -const charStatus = document.querySelector("#status"); -const charLocation = document.querySelector("#location"); - -const displayAllCharacters = (res) => { - res.results.forEach((char) => { - const li = document.createElement("li"); - const img = document.createElement("img"); - const p = document.createElement("p"); - p.textContent = char["name"]; // display name - img.src = char["image"]; // display image - li.classList.add("photo-img"); // add class name - ul.appendChild(li); - li.appendChild(img); - li.appendChild(p); - }); -}; - -const eachCharacter = (res, event) => { - debugger; - const selection = event.target.parentElement.innerText; - res.results.forEach((char) => { - if (selection === char.name) { - name.textContent = char.name; - picture.src = char.image; - charStatus.textContent = char.status; - charLocation.textContent = char.location.name; - } - }); -}; - -const getComments = (event) => { - fetch("https://rickandmortyapi.com/api/character?page=1") - .then((res) => { - if (!res.ok) { - throw Error(`Girrrl ya wrong! ${res.status}`); - } - return res.json(); - }) - .then((res) => { - displayAllCharacters(res); - - ul.addEventListener("click", (event) => { - eachCharacter(res, event); - }); - }) - .catch((err) => { - console.log(err); - }); -}; - -getComments(); - -// Vanessa /////////// - -// const chosenCharacter = e.target.parentElement.innerText; -// res.data.results.forEach((el) => { -// if (el.name === chosenCharacter) { -// debugger; -// characterHeader.textContent = el.name; -// characterImage.src = el.image; -// characterStatus.textContent = el.status; -// characterLocation.textContent = el.location.name; -// } -// }); diff --git a/index1.css b/sparky/index.css similarity index 71% rename from index1.css rename to sparky/index.css index a454062..f86fc51 100644 --- a/index1.css +++ b/sparky/index.css @@ -1,38 +1,48 @@ body { background-color: black; + display: flex; + flex-direction: column; + align-items: center; color: white; } header { - display: flex; - justify-content: space-around; - align-items: center; - margin: auto; width: 70%; height: 150px; + display: flex; + justify-content: space-around; background-color: rgb(0, 128, 0); font-family: fantasy; + align-items: center; + margin: auto; } header > img { height: 100px; } +main { + display: none; + width: 70%; + border: white solid 1px; + /* display: flex; */ + margin: auto; + /* justify-content: space-around; */ +} + #all-characters { display: flex; - width: 67%; - margin: auto; list-style-type: none; + width: 70%; + padding: 0; + margin: auto; overflow-x: scroll; text-align: center; } -main { - border: white solid 1px; - width: 70%; - margin: auto; - display: flex; - justify-content: space-around; +input[type="text"] { + width: 380px; } + diff --git a/sparky/index.html b/sparky/index.html new file mode 100644 index 0000000..3058aff --- /dev/null +++ b/sparky/index.html @@ -0,0 +1,39 @@ + + + + + + + Szechuan Sauce + + + + + + + + + +
                                            +

                                            Rick & Morty

                                            + +
                                            +
                                              +
                                              +
                                              +

                                              + +

                                              +

                                              +
                                              + +
                                              +
                                              + + +
                                              +
                                                +
                                                +
                                                + + \ No newline at end of file diff --git a/sparky/index.js b/sparky/index.js new file mode 100644 index 0000000..718b802 --- /dev/null +++ b/sparky/index.js @@ -0,0 +1,61 @@ +const allCharacters = document.querySelector("#all-characters"); +const main = document.querySelector("main"); +const name = document.querySelector("#character-name"); +const image = document.querySelector("#character-image"); +const status = document.querySelector("#character-status"); +const place = document.querySelector("#character-location"); +const title = document.querySelector("title") +const form = document.querySelector("form"); +const comments = document.querySelector("#character-comments-ul") + +const getAllCharacters = async () => { + try { + const res = await axios.get("https://rickandmortyapi.com/api/character"); + // console.log(res); + res.data.results.forEach((character) => { + const li = document.createElement("li"); + const img = document.createElement("img"); + const p = document.createElement("p"); + // console.log(character); + + img.src = character.image; + img.value = character.id; + p.innerText = character.name; + li.appendChild(img); + li.appendChild(p); + allCharacters.appendChild(li); + }); + } catch (err) { + console.log(err); + } +}; + +getAllCharacters(); + +allCharacters.addEventListener("click", async (e) => { + main.style.display = "flex"; + debugger; + // console.log(e.target); + // debugger + const url = `https://rickandmortyapi.com/api/character/${e.target.value}`; + const res = await axios.get(url); + name.innerText = res.data.name; + image.src = res.data.image; + status.innerHTML = `Status${res.data.status}`; + place.innerHTML = `Location${res.data.location.name}`; + title.innerText = res.data.name; +}); + + +// add comments +form.addEventListener("submit", (e)=> { + e.preventDefault(); + const comment = document.querySelector("#comment"); + const li = document.createElement("li"); + li.innerHTML = `${title.textContent}: ${comment.value}`; + // li.innerText = `${title.textContent}: ${comment}`; => Morty Smith: comment + comments.appendChild(li); + // console.log(comment); + // debugger + comment.value = "" ; +}) \ No newline at end of file From 79531a51039ae5342c9a91ef03e95c40588df10d Mon Sep 17 00:00:00 2001 From: Coreen Cooper Date: Sun, 21 Mar 2021 22:32:34 -0400 Subject: [PATCH 16/19] display name: comment and reset input field --- index.html | 2 +- index.js | 24 ++++++++++++++++++++---- 2 files changed, 21 insertions(+), 5 deletions(-) diff --git a/index.html b/index.html index a18b6f1..fe581e1 100644 --- a/index.html +++ b/index.html @@ -28,7 +28,7 @@

                                                What would this character say about Jerry?

                                                - +
                                                  diff --git a/index.js b/index.js index 4794e58..71881f1 100644 --- a/index.js +++ b/index.js @@ -9,12 +9,16 @@ // https://rickandmortyapi.com/documentation -const ul = document.querySelector("ul"); +const ul = document.querySelector("#all-characters"); const name = document.querySelector("#name"); +const main = document.querySelector("main"); +const form = document.querySelector("form"); +const title = document.querySelector("title"); const picture = document.querySelector("#picture"); +const userInput = document.querySelector("#user-input"); const charStatus = document.querySelector("#status"); const charLocation = document.querySelector("#location"); -const main = document.querySelector("main"); +const characterCommentsUl = document.querySelector("#character-comments-ul"); const displayAllCharacters = (res) => { res.results.forEach((char) => { @@ -29,13 +33,14 @@ const displayAllCharacters = (res) => { li.appendChild(p); }); }; - +// event.path[0][0].value const eachCharacter = (res, event) => { // debugger; main.style.display = "flex" const selection = event.target.parentElement.innerText; res.results.forEach((char) => { if (selection === char.name) { + title.textContent = char.name; name.textContent = char.name; picture.src = char.image; charStatus.textContent = char.status; @@ -44,7 +49,15 @@ const eachCharacter = (res, event) => { }); }; -const getCharacters = (event) => { +const displayComments = (event) => { + event.preventDefault(); + const li = document.createElement("li"); + li.innerHTML= `${title.textContent}: ${userInput.value}`; + characterCommentsUl.appendChild(li); + userInput.value = ""; +} + +const getCharacters = () => { fetch("https://rickandmortyapi.com/api/character?page=1") .then((res) => { if (!res.ok) { @@ -59,6 +72,7 @@ const getCharacters = (event) => { // look about creating this event listener outside ul.addEventListener("click", (event) => { eachCharacter(res, event); + }); }) @@ -67,6 +81,8 @@ const getCharacters = (event) => { }); }; +document.addEventListener("submit", displayComments); + getCharacters(); // Vanessa /////////// From 98b95e6e78b0a0879423ca6bad15a24ab1c7c46a Mon Sep 17 00:00:00 2001 From: Coreen Cooper Date: Mon, 22 Mar 2021 17:32:18 -0400 Subject: [PATCH 17/19] update to async and then axios --- index.html | 2 ++ index.js | 68 +++++++++++++++++++++++++++++++++++------------------- 2 files changed, 46 insertions(+), 24 deletions(-) diff --git a/index.html b/index.html index fe581e1..6659dd3 100644 --- a/index.html +++ b/index.html @@ -6,7 +6,9 @@ + + diff --git a/index.js b/index.js index 71881f1..dd0454d 100644 --- a/index.js +++ b/index.js @@ -6,7 +6,6 @@ // Use the `form`, to submit a character comment. Each comment should be a new `li` inside of // `character-comments-ul`, with the selected character's name (in bold) and a comment (not bold). - // https://rickandmortyapi.com/documentation const ul = document.querySelector("#all-characters"); @@ -36,7 +35,7 @@ const displayAllCharacters = (res) => { // event.path[0][0].value const eachCharacter = (res, event) => { // debugger; - main.style.display = "flex" + main.style.display = "flex"; const selection = event.target.parentElement.innerText; res.results.forEach((char) => { if (selection === char.name) { @@ -52,35 +51,56 @@ const eachCharacter = (res, event) => { const displayComments = (event) => { event.preventDefault(); const li = document.createElement("li"); - li.innerHTML= `${title.textContent}: ${userInput.value}`; + li.innerHTML = `${title.textContent}: ${userInput.value}`; characterCommentsUl.appendChild(li); userInput.value = ""; -} - -const getCharacters = () => { - fetch("https://rickandmortyapi.com/api/character?page=1") - .then((res) => { - if (!res.ok) { - throw Error(`Girrrl ya wrong! ${res.status}`); - } - return res.json(); - }) - .then((res) => { - displayAllCharacters(res); - +}; +// async - allows us to assign the results of fetch to a variable +const getCharacters = async () => { + // res variable has the same value as the result from .them(promise object) + try { + // const res = await fetch("https://rickandmortyapi.com/api/character?page=1"); + const res = await axios.get("https://rickandmortyapi.com/api/character?page=1"); + // to get json it must be assigned to a variable with await - must put await in front of json() + // axios skips the step of adding await to json(). it does that for us. + //axios + // const data = await res.json(); - // look about creating this event listener outside - ul.addEventListener("click", (event) => { - eachCharacter(res, event); - - }); + displayAllCharacters(res.data); - }) - .catch((err) => { - console.log(err); + // look about creating this event listener outside + ul.addEventListener("click", (event) => { + // updated res to data + eachCharacter(res.data, event); }); + } + catch (err) { + } }; +// const getCharacters = () => { +// fetch("https://rickandmortyapi.com/api/character?page=1") +// .then((res) => { +// if (!res.ok) { +// throw Error(`Girrrl ya wrong! ${res.status}`); +// } +// return res.json(); +// }) +// .then((res) => { +// displayAllCharacters(res); + +// // look about creating this event listener outside +// ul.addEventListener("click", (event) => { +// eachCharacter(res, event); + +// }); + +// }) +// .catch((err) => { +// console.log(err); +// }); +// }; + document.addEventListener("submit", displayComments); getCharacters(); From 7dcc407490137c43cea60db8d482edacaa2dc90c Mon Sep 17 00:00:00 2001 From: Coreen Cooper Date: Mon, 22 Mar 2021 17:42:08 -0400 Subject: [PATCH 18/19] add console.log to catch --- index.js | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/index.js b/index.js index dd0454d..93263b7 100644 --- a/index.js +++ b/index.js @@ -32,9 +32,11 @@ const displayAllCharacters = (res) => { li.appendChild(p); }); }; + // event.path[0][0].value const eachCharacter = (res, event) => { // debugger; + // remove if statement main.style.display = "flex"; const selection = event.target.parentElement.innerText; res.results.forEach((char) => { @@ -55,6 +57,7 @@ const displayComments = (event) => { characterCommentsUl.appendChild(li); userInput.value = ""; }; + // async - allows us to assign the results of fetch to a variable const getCharacters = async () => { // res variable has the same value as the result from .them(promise object) @@ -62,8 +65,8 @@ const getCharacters = async () => { // const res = await fetch("https://rickandmortyapi.com/api/character?page=1"); const res = await axios.get("https://rickandmortyapi.com/api/character?page=1"); // to get json it must be assigned to a variable with await - must put await in front of json() - // axios skips the step of adding await to json(). it does that for us. - //axios + // axios skips the step of adding await to json() + // remove axios returns json() for us // const data = await res.json(); displayAllCharacters(res.data); @@ -73,8 +76,9 @@ const getCharacters = async () => { // updated res to data eachCharacter(res.data, event); }); - } - catch (err) { + + } catch (err) { + console.log(err); } }; From a75fc9e9056200a39df637e75dbbe9dd4bce8c22 Mon Sep 17 00:00:00 2001 From: Coreen Cooper Date: Tue, 3 Aug 2021 09:13:04 -0400 Subject: [PATCH 19/19] not certain --- sparky/index.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sparky/index.js b/sparky/index.js index 718b802..76832bb 100644 --- a/sparky/index.js +++ b/sparky/index.js @@ -19,7 +19,7 @@ const getAllCharacters = async () => { // console.log(character); img.src = character.image; - img.value = character.id; + img.value = character.id; // set id to each character to reference laterx p.innerText = character.name; li.appendChild(img); li.appendChild(p);