From 83df6c16d3e9001908d668a31add139b80b1f797 Mon Sep 17 00:00:00 2001 From: Nora Peters Date: Mon, 11 Jun 2018 14:50:03 -0700 Subject: [PATCH 01/14] fix small typo on provided json file --- src/data/card-data.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/data/card-data.json b/src/data/card-data.json index 1f9793ec..068e019d 100644 --- a/src/data/card-data.json +++ b/src/data/card-data.json @@ -6,7 +6,7 @@ }, { "text": "", - "Emoji": "heart_eyes" + "emoji": "heart_eyes" }, { "text": "REST is part of work" From c7f92320055da74553637755729aba6c2abe4c58 Mon Sep 17 00:00:00 2001 From: Nora Peters Date: Mon, 11 Jun 2018 15:15:39 -0700 Subject: [PATCH 02/14] implements method to render Card components from static json data. adds proptypes for Board and Card --- src/components/Board.js | 19 ++++++++++++++++--- src/components/Card.js | 11 +++++++++-- 2 files changed, 25 insertions(+), 5 deletions(-) diff --git a/src/components/Board.js b/src/components/Board.js index 9222fd88..422dfd98 100644 --- a/src/components/Board.js +++ b/src/components/Board.js @@ -16,18 +16,31 @@ class Board extends Component { }; } + renderCardList = () => { + const cardList = CARD_DATA.cards.map((card, index) => { + return ( + + ); + }); + return cardList; + } + render() { return (
- Board + {this.renderCardList()}
) } - } Board.propTypes = { - + url: PropTypes.string.isRequired, + boardName: PropTypes.string.isRequired, }; export default Board; diff --git a/src/components/Card.js b/src/components/Card.js index 6788cc03..c5b69044 100644 --- a/src/components/Card.js +++ b/src/components/Card.js @@ -4,18 +4,25 @@ import emoji from 'emoji-dictionary'; import './Card.css'; +console.log(emoji.getUnicode("heart_eyes")); + class Card extends Component { render() { + return (
- Card +
+

{this.props.text}

+

{emoji.getUnicode(String(this.props.emoji))}

+
) } } Card.propTypes = { - + text: PropTypes.string, + emoji: PropTypes.string, }; export default Card; From a5beb90b800b3f56165113ece4c5c89b2ff19435 Mon Sep 17 00:00:00 2001 From: Nora Peters Date: Mon, 11 Jun 2018 15:22:46 -0700 Subject: [PATCH 03/14] adds more BEM styles. Wave 1 complete --- src/components/Board.js | 2 +- src/components/Card.js | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/src/components/Board.js b/src/components/Board.js index 422dfd98..b45326dc 100644 --- a/src/components/Board.js +++ b/src/components/Board.js @@ -31,7 +31,7 @@ class Board extends Component { render() { return ( -
+
{this.renderCardList()}
) diff --git a/src/components/Card.js b/src/components/Card.js index c5b69044..a5744cd9 100644 --- a/src/components/Card.js +++ b/src/components/Card.js @@ -11,6 +11,7 @@ class Card extends Component { return (
+ x

{this.props.text}

{emoji.getUnicode(String(this.props.emoji))}

From 63b672090fbabd28dee6b6d95dcff1e84b1922fc Mon Sep 17 00:00:00 2001 From: Nora Peters Date: Mon, 11 Jun 2018 16:04:50 -0700 Subject: [PATCH 04/14] adds componentDidMount axios get request for specific boards cards --- src/components/Board.js | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/src/components/Board.js b/src/components/Board.js index b45326dc..b2f852e3 100644 --- a/src/components/Board.js +++ b/src/components/Board.js @@ -16,13 +16,25 @@ class Board extends Component { }; } + componentDidMount = () => { + // console.log("Component did mount was called"); + axios.get('https://inspiration-board.herokuapp.com/boards/nora/cards') + .then((response) => { + // console.log(response.data); + this.setState({cards: response.data}); + }) + .catch((error) => { + this.setState({error: error.message}); + }); + } + renderCardList = () => { - const cardList = CARD_DATA.cards.map((card, index) => { + const cardList = this.state.cards.map((item, index) => { return ( ); }); From 6b48f675afdee371a3908d82b4241fcdf61a47d7 Mon Sep 17 00:00:00 2001 From: Nora Peters Date: Mon, 11 Jun 2018 16:52:51 -0700 Subject: [PATCH 05/14] adds minor styles to delete (x) button --- src/components/Card.css | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/components/Card.css b/src/components/Card.css index e86d4329..db6761f0 100644 --- a/src/components/Card.css +++ b/src/components/Card.css @@ -44,4 +44,6 @@ .card__delete { align-self: start; font-family: 'Permanent Marker', Helvetica, sans-serif; + padding-left: 10px; + cursor: pointer; } From 285928b77e82c9583bba3f82323b647fa6786d4d Mon Sep 17 00:00:00 2001 From: Nora Peters Date: Mon, 11 Jun 2018 16:54:24 -0700 Subject: [PATCH 06/14] imports axios to Card component. adds constructor and id state to Card. adds onclick event function to x/delete --- src/components/Board.js | 3 ++- src/components/Card.js | 31 ++++++++++++++++++++++++++++--- 2 files changed, 30 insertions(+), 4 deletions(-) diff --git a/src/components/Board.js b/src/components/Board.js index b2f852e3..d429b840 100644 --- a/src/components/Board.js +++ b/src/components/Board.js @@ -20,7 +20,7 @@ class Board extends Component { // console.log("Component did mount was called"); axios.get('https://inspiration-board.herokuapp.com/boards/nora/cards') .then((response) => { - // console.log(response.data); + console.log(response.data); this.setState({cards: response.data}); }) .catch((error) => { @@ -33,6 +33,7 @@ class Board extends Component { return ( diff --git a/src/components/Card.js b/src/components/Card.js index a5744cd9..529a5222 100644 --- a/src/components/Card.js +++ b/src/components/Card.js @@ -1,17 +1,42 @@ import React, { Component } from 'react'; import PropTypes from 'prop-types'; import emoji from 'emoji-dictionary'; +import axios from 'axios'; -import './Card.css'; -console.log(emoji.getUnicode("heart_eyes")); +import './Card.css'; class Card extends Component { + + constructor(props) { + super(props); + + this.state = { + id: props.id, + } + } + + onDeleteClick = (event) => { + console.log(event.target.id); + // event.preventDefault(); + axios.delete('https://inspiration-board.herokuapp.com/boards/nora/cards/' + `${event.target.id}`) + .then((response) => { + console.log(response.data); + }) + .catch((error) => { + this.setState({error: error.message}); + }); + } + + // componentWillUnmount = () => { + // + // } + render() { return (
- x + x

{this.props.text}

{emoji.getUnicode(String(this.props.emoji))}

From a88fd4d187b975ab5ae39abab53f5ee28497957a Mon Sep 17 00:00:00 2001 From: Nora Peters Date: Mon, 11 Jun 2018 17:11:24 -0700 Subject: [PATCH 07/14] moves axios delete card request to Board.js inside new removeCard function which also calls componentDidMount --- src/components/Board.js | 13 +++++++++++++ src/components/Card.js | 26 +++++--------------------- 2 files changed, 18 insertions(+), 21 deletions(-) diff --git a/src/components/Board.js b/src/components/Board.js index d429b840..3baaabcf 100644 --- a/src/components/Board.js +++ b/src/components/Board.js @@ -36,12 +36,25 @@ class Board extends Component { id={item.card.id} text={item.card.text} emoji={item.card.emoji} + removeCard={this.removeCard} /> ); }); return cardList; } + removeCard = (id) => { + axios.delete(`https://inspiration-board.herokuapp.com/boards/nora/cards/${id}`) + .then((response) => { + console.log(response.data); + this.componentDidMount(); + }) + .catch((error) => { + console.log(error); + this.setState({error: error.message}); + }); + } + render() { return (
diff --git a/src/components/Card.js b/src/components/Card.js index 529a5222..7c2ba6fa 100644 --- a/src/components/Card.js +++ b/src/components/Card.js @@ -8,35 +8,17 @@ import './Card.css'; class Card extends Component { - constructor(props) { - super(props); - - this.state = { - id: props.id, - } - } - onDeleteClick = (event) => { console.log(event.target.id); - // event.preventDefault(); - axios.delete('https://inspiration-board.herokuapp.com/boards/nora/cards/' + `${event.target.id}`) - .then((response) => { - console.log(response.data); - }) - .catch((error) => { - this.setState({error: error.message}); - }); + event.preventDefault(); + this.props.removeCard(event.target.id); } - // componentWillUnmount = () => { - // - // } - render() { return (
- x + x

{this.props.text}

{emoji.getUnicode(String(this.props.emoji))}

@@ -47,8 +29,10 @@ class Card extends Component { } Card.propTypes = { + id: PropTypes.number, text: PropTypes.string, emoji: PropTypes.string, + removeCard: PropTypes.func, }; export default Card; From cb0cc53290ad8ca396c242f51d1b162c2fc849e2 Mon Sep 17 00:00:00 2001 From: Nora Peters Date: Thu, 14 Jun 2018 11:09:38 -0700 Subject: [PATCH 08/14] adds addCard post request function to Board, and passes in as prop to NewCardForm component --- src/components/Board.js | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/src/components/Board.js b/src/components/Board.js index 3baaabcf..1184d356 100644 --- a/src/components/Board.js +++ b/src/components/Board.js @@ -28,6 +28,25 @@ class Board extends Component { }); } + addCard = (card) => { + const cards = this.state.cards; + + axios.post('https://inspiration-board.herokuapp.com/boards/nora/cards', card) + .then((response) => { + cards.push(card); + this.setState({ + cards, + message: `Successfully added card` + }); + alert( `Successfully added card`) + }) + .catch((error) => { + this.setState({ + message: error.message, + }); + }); + } + renderCardList = () => { const cardList = this.state.cards.map((item, index) => { return ( @@ -59,6 +78,7 @@ class Board extends Component { return (
{this.renderCardList()} +
) } From bf7edaeb5e857fa1dfa35024bc80bf020deeb680 Mon Sep 17 00:00:00 2001 From: Nora Peters Date: Thu, 14 Jun 2018 11:11:06 -0700 Subject: [PATCH 09/14] adds NewCardForm component w/event handler functions and form rendering --- src/components/NewCardForm.js | 74 +++++++++++++++++++++++++++++++++++ 1 file changed, 74 insertions(+) diff --git a/src/components/NewCardForm.js b/src/components/NewCardForm.js index 47331423..f08e2ff7 100644 --- a/src/components/NewCardForm.js +++ b/src/components/NewCardForm.js @@ -4,3 +4,77 @@ import emoji from 'emoji-dictionary'; import './NewCardForm.css'; const EMOJI_LIST = ["", "heart_eyes", "beer", "clap", "sparkling_heart", "heart_eyes_cat", "dog"] + +class NewCardForm extends Component { + constructor() { + super(); + this.state = { + text: '', + emoji: '', + }; + } + + onFieldChange = (event) => { + const fieldName = event.target.name; + const fieldValue = fieldName === 'age' ? parseInt(event.target.value) : event.target.value; + const updateState = {}; + updateState[fieldName] = fieldValue; + this.setState(updateState); + } + + // valid = () => { + // return this.state.name.length > 0 && this.state.age > 0 + // } + + clearForm = () => { + this.setState({ + text: '', + emoji: '', + }); + } + + onFormSubmit = (event) => { + event.preventDefault(); + // if (this.valid()) { + this.props.addCardCallback(this.state); + this.clearForm(); + // } + } + + render() { + return ( +
+

Add a card

+
+
+ + + + +
+ +
+
+ ) + } +} + +NewCardForm.propTypes = { + addPetCallback: PropTypes.func.isRequired, +} + +export default NewCardForm; From 86445fc934c20bff67ed6de8690b5920f8f70ef1 Mon Sep 17 00:00:00 2001 From: Nora Peters Date: Thu, 14 Jun 2018 13:15:50 -0700 Subject: [PATCH 10/14] adds id to new card inside addCard. fixes delete card issue --- src/components/Board.js | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/components/Board.js b/src/components/Board.js index 1184d356..84af8f7f 100644 --- a/src/components/Board.js +++ b/src/components/Board.js @@ -30,10 +30,13 @@ class Board extends Component { addCard = (card) => { const cards = this.state.cards; + console.log(this.state.cards); axios.post('https://inspiration-board.herokuapp.com/boards/nora/cards', card) .then((response) => { - cards.push(card); + console.log(response); + card.id = response.data.card.id; + cards.push({card: card}); this.setState({ cards, message: `Successfully added card` @@ -49,6 +52,7 @@ class Board extends Component { renderCardList = () => { const cardList = this.state.cards.map((item, index) => { + // console.log(item); return ( { axios.delete(`https://inspiration-board.herokuapp.com/boards/nora/cards/${id}`) .then((response) => { - console.log(response.data); + // console.log(response.data); this.componentDidMount(); }) .catch((error) => { From 27a3de7f0a37329a31f2ee85a2a9e945a779926f Mon Sep 17 00:00:00 2001 From: Nora Peters Date: Thu, 14 Jun 2018 13:16:39 -0700 Subject: [PATCH 11/14] troubleshooting select dropdown options and defaults --- src/components/NewCardForm.js | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/src/components/NewCardForm.js b/src/components/NewCardForm.js index f08e2ff7..144e6a35 100644 --- a/src/components/NewCardForm.js +++ b/src/components/NewCardForm.js @@ -15,8 +15,9 @@ class NewCardForm extends Component { } onFieldChange = (event) => { + console.log(event.target.name); const fieldName = event.target.name; - const fieldValue = fieldName === 'age' ? parseInt(event.target.value) : event.target.value; + const fieldValue = event.target.value const updateState = {}; updateState[fieldName] = fieldValue; this.setState(updateState); @@ -35,10 +36,8 @@ class NewCardForm extends Component { onFormSubmit = (event) => { event.preventDefault(); - // if (this.valid()) { - this.props.addCardCallback(this.state); - this.clearForm(); - // } + this.props.addCardCallback(this.state); + this.clearForm(); } render() { @@ -51,7 +50,7 @@ class NewCardForm extends Component { - {EMOJI_LIST.map(x => )}; + {EMOJI_LIST.map(x => )};
@@ -74,7 +73,7 @@ class NewCardForm extends Component { } NewCardForm.propTypes = { - addPetCallback: PropTypes.func.isRequired, + addCardCallback: PropTypes.func.isRequired, } export default NewCardForm; From 2f9dc42475bb6e8ed46198b856d56ddd6a3022fa Mon Sep 17 00:00:00 2001 From: Nora Peters Date: Fri, 15 Jun 2018 15:07:42 -0700 Subject: [PATCH 12/14] 6 tests written and passing --- package-lock.json | 13 + package.json | 1 + src/App.test.js | 6 + src/__snapshots__/App.test.js.snap | 201 + src/components/Board.test.js | 18 + src/components/NewCardForm.js | 6 +- src/components/NewCardForm.test.js | 109 + .../__snapshots__/Board.test.js.snap | 15947 ++++++++++++++++ .../__snapshots__/NewCardForm.test.js.snap | 991 + 9 files changed, 17288 insertions(+), 4 deletions(-) create mode 100644 src/__snapshots__/App.test.js.snap create mode 100644 src/components/__snapshots__/Board.test.js.snap create mode 100644 src/components/__snapshots__/NewCardForm.test.js.snap diff --git a/package-lock.json b/package-lock.json index 0d789ea1..bd9d2b59 100644 --- a/package-lock.json +++ b/package-lock.json @@ -6085,6 +6085,19 @@ "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-20.0.3.tgz", "integrity": "sha1-i8Bw6QQUqhVcEajWTIaaDVxx2lk=" }, + "jest-mock-axios": { + "version": "2.1.11", + "resolved": "https://registry.npmjs.org/jest-mock-axios/-/jest-mock-axios-2.1.11.tgz", + "integrity": "sha512-rxF13chmHuelAh/rysNQEY4YqmOO94XmBO5Mk2+edFh2dOwe3j/XIRSnY8+m61t1658AU6nGoTh1s7tCgvridg==", + "requires": { + "jest-mock-promise": "1.0.23" + } + }, + "jest-mock-promise": { + "version": "1.0.23", + "resolved": "https://registry.npmjs.org/jest-mock-promise/-/jest-mock-promise-1.0.23.tgz", + "integrity": "sha1-ySH9a1EqxUYJftvPR389QWllfkA=" + }, "jest-regex-util": { "version": "20.0.3", "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-20.0.3.tgz", diff --git a/package.json b/package.json index ba61363d..34efc32d 100644 --- a/package.json +++ b/package.json @@ -5,6 +5,7 @@ "dependencies": { "axios": "^0.18.0", "emoji-dictionary": "^1.0.9", + "jest-mock-axios": "^2.1.11", "react": "^16.4.0", "react-dom": "^16.4.0", "react-scripts": "1.1.4" diff --git a/src/App.test.js b/src/App.test.js index 5a29f6cb..ccdfcb11 100644 --- a/src/App.test.js +++ b/src/App.test.js @@ -11,4 +11,10 @@ describe('App', () => { ReactDOM.unmountComponentAtNode(div); }); + test('that it renders App with shallow rendering', () => { + const wrapper = shallow(); + expect(wrapper).toMatchSnapshot(); + wrapper.unmount(); + }); + }); diff --git a/src/__snapshots__/App.test.js.snap b/src/__snapshots__/App.test.js.snap new file mode 100644 index 00000000..a158d8d8 --- /dev/null +++ b/src/__snapshots__/App.test.js.snap @@ -0,0 +1,201 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`App that it renders App with shallow rendering 1`] = ` +ShallowWrapper { + "length": 1, + Symbol(enzyme.__root__): [Circular], + Symbol(enzyme.__unrendered__): , + Symbol(enzyme.__renderer__): Object { + "batchedUpdates": [Function], + "getNode": [Function], + "render": [Function], + "simulateEvent": [Function], + "unmount": [Function], + }, + Symbol(enzyme.__node__): Object { + "instance": null, + "key": undefined, + "nodeType": "host", + "props": Object { + "children": Array [ +
+

+ + Inspiration Board + +

+
, + , + ], + }, + "ref": null, + "rendered": Array [ + Object { + "instance": null, + "key": undefined, + "nodeType": "host", + "props": Object { + "children":

+ + Inspiration Board + +

, + "className": "header", + }, + "ref": null, + "rendered": Object { + "instance": null, + "key": undefined, + "nodeType": "host", + "props": Object { + "children": + Inspiration Board +, + "className": "header__h1", + }, + "ref": null, + "rendered": Object { + "instance": null, + "key": undefined, + "nodeType": "host", + "props": Object { + "children": "Inspiration Board", + "className": "header__text", + }, + "ref": null, + "rendered": "Inspiration Board", + "type": "span", + }, + "type": "h1", + }, + "type": "header", + }, + Object { + "instance": null, + "key": undefined, + "nodeType": "class", + "props": Object { + "boardName": "Ada-Lovelace", + "url": "https://inspiration-board.herokuapp.com/boards/", + }, + "ref": null, + "rendered": null, + "type": [Function], + }, + ], + "type": "section", + }, + Symbol(enzyme.__nodes__): Array [ + Object { + "instance": null, + "key": undefined, + "nodeType": "host", + "props": Object { + "children": Array [ +
+

+ + Inspiration Board + +

+
, + , + ], + }, + "ref": null, + "rendered": Array [ + Object { + "instance": null, + "key": undefined, + "nodeType": "host", + "props": Object { + "children":

+ + Inspiration Board + +

, + "className": "header", + }, + "ref": null, + "rendered": Object { + "instance": null, + "key": undefined, + "nodeType": "host", + "props": Object { + "children": + Inspiration Board +, + "className": "header__h1", + }, + "ref": null, + "rendered": Object { + "instance": null, + "key": undefined, + "nodeType": "host", + "props": Object { + "children": "Inspiration Board", + "className": "header__text", + }, + "ref": null, + "rendered": "Inspiration Board", + "type": "span", + }, + "type": "h1", + }, + "type": "header", + }, + Object { + "instance": null, + "key": undefined, + "nodeType": "class", + "props": Object { + "boardName": "Ada-Lovelace", + "url": "https://inspiration-board.herokuapp.com/boards/", + }, + "ref": null, + "rendered": null, + "type": [Function], + }, + ], + "type": "section", + }, + ], + Symbol(enzyme.__options__): Object { + "adapter": ReactSixteenAdapter { + "options": Object { + "enableComponentDidUpdateOnSetState": true, + }, + }, + }, +} +`; diff --git a/src/components/Board.test.js b/src/components/Board.test.js index e69de29b..cf61cd52 100644 --- a/src/components/Board.test.js +++ b/src/components/Board.test.js @@ -0,0 +1,18 @@ +import React from 'react'; +import Board from './Board'; +import { mount, shallow } from 'enzyme'; + +describe('Board', () => { + test('that it matches an existing snapshot', () => { + // First Mount the Component in the testing DOM + // Arrange + // Deep rendering + const wrapper = mount( ); + + // Assert that it looks like the last snapshot and if not, take a new one (?) + expect(wrapper).toMatchSnapshot(); + + // Remove the component from the DOM (save memory and prevent side effects). + wrapper.unmount(); + }); +}); diff --git a/src/components/NewCardForm.js b/src/components/NewCardForm.js index 144e6a35..727598f3 100644 --- a/src/components/NewCardForm.js +++ b/src/components/NewCardForm.js @@ -3,7 +3,7 @@ import PropTypes from 'prop-types'; import emoji from 'emoji-dictionary'; import './NewCardForm.css'; -const EMOJI_LIST = ["", "heart_eyes", "beer", "clap", "sparkling_heart", "heart_eyes_cat", "dog"] +const EMOJI_LIST = ["", "heart_eyes", "beer", "clap", "sparkling_heart", "heart_eyes_cat", "dog", "robot"] class NewCardForm extends Component { constructor() { @@ -15,7 +15,6 @@ class NewCardForm extends Component { } onFieldChange = (event) => { - console.log(event.target.name); const fieldName = event.target.name; const fieldValue = event.target.value const updateState = {}; @@ -59,8 +58,7 @@ class NewCardForm extends Component { diff --git a/src/components/NewCardForm.test.js b/src/components/NewCardForm.test.js index e69de29b..c7c20027 100644 --- a/src/components/NewCardForm.test.js +++ b/src/components/NewCardForm.test.js @@ -0,0 +1,109 @@ +import React from 'react'; +import NewCardForm from './NewCardForm'; +import { mount, shallow } from 'enzyme'; + +describe('NewCardForm', () => { + test('that it matches an existing snapshot', () => { + // First Mount the Component in the testing DOM + // Arrange + const wrapper = shallow( {} } />); + + // Assert that it looks like the last snapshot and if not, take a new one (?) + expect(wrapper).toMatchSnapshot(); + + // Remove the component from the DOM (save memory and prevent side effects). + wrapper.unmount(); + }); + + test('when a user enters a name in a text field the field is updated', () => { + // Arrange + // Shallow mounted wrapper + const wrapper = shallow( {} } />); + // Find input field + let nameField = + wrapper.find('input[name="text"]'); + // Act - tell name field to trigger onChange event (simulate user typing something in field) + nameField.simulate('change', { + target: { + name: 'text', + value: 'test test test', + }, + }); + // Force onChange event + wrapper.update(); + // DOM gets re-rendered, so we find the component again + nameField = + wrapper.find('input[name="text"]'); + // Assert + // Get props from that specific input field + expect(nameField.getElement().props.value).toEqual('test test test'); + }); + + test('when the user types in a field, the value changes', () => { + const wrapper = shallow( {} } />); + + const fields = [ + { + field: 'text', + value: 'test test', + }, + { + field: 'emoji', + value: 'heart_eyes', + }, + ]; + + fields.forEach(({field, value}) => { + // find the input field + let nameField = wrapper.find(`[name="${field}"]`); + // Act + nameField.simulate('change', { + target: { + name: field, + value, + }, + }); + // Force the onChange event + wrapper.update(); + nameField = wrapper.find(`[name="${field}"]`); + console.log(nameField.getElement()); + console.log(nameField.getElement().props); + + + // Assert + expect(nameField.getElement().props.value).toEqual(value); + }); + }); + + // xtest('NewCardForm can submit', () => { + // // Arrange + // // Shallow mounted the wrapper + // + // const mockAddPetCallback = jest.fn(); + // + // const wrapper = shallow(); + // + // wrapper.find(`[name='name']`).simulate('change', { + // target: { + // name: 'name', + // value: 'Bob', + // }, + // }); + // + // // force textfields change + // wrapper.update(); + // + // wrapper.find('form').simulate('submit', { + // preventDefault: () => {}, + // }); + // + // wrapper.update(); + // + // const nameField = wrapper.find('[name="name"]'); + // + // // Assert + // expect(nameField.getElement().props.value).toEqual(''); + // expect(mockAddPetCallback).toHaveBeenCalled(); + // }); + +}); diff --git a/src/components/__snapshots__/Board.test.js.snap b/src/components/__snapshots__/Board.test.js.snap new file mode 100644 index 00000000..3627086d --- /dev/null +++ b/src/components/__snapshots__/Board.test.js.snap @@ -0,0 +1,15947 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`Board that it matches an existing snapshot 1`] = ` +ReactWrapper { + "length": 1, + Symbol(enzyme.__unrendered__): , + Symbol(enzyme.__renderer__): Object { + "batchedUpdates": [Function], + "getNode": [Function], + "render": [Function], + "simulateEvent": [Function], + "unmount": [Function], + }, + Symbol(enzyme.__root__): [Circular], + Symbol(enzyme.__node__): Object { + "instance": Board { + "_reactInternalFiber": FiberNode { + "_debugID": 5, + "_debugIsCurrentlyTiming": false, + "_debugOwner": FiberNode { + "_debugID": 4, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": null, + "child": [Circular], + "effectTag": 1, + "expirationTime": 0, + "firstEffect": [Circular], + "index": 0, + "key": null, + "lastEffect": [Circular], + "memoizedProps": Object { + "Component": [Function], + "context": null, + "props": Object {}, + }, + "memoizedState": Object { + "context": null, + "mount": true, + "props": Object {}, + }, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "Component": [Function], + "context": null, + "props": Object {}, + }, + "ref": null, + "return": FiberNode { + "_debugID": 1, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": FiberNode { + "_debugID": 1, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": [Circular], + "child": null, + "effectTag": 0, + "expirationTime": 1, + "firstEffect": null, + "index": 0, + "key": null, + "lastEffect": null, + "memoizedProps": null, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": null, + "ref": null, + "return": null, + "selfBaseTime": 0, + "sibling": null, + "stateNode": Object { + "containerInfo":
+
+
+

+ Add a card +

+
+
+ + + + +
+ +
+
+
+
, + "context": Object {}, + "current": [Circular], + "earliestPendingTime": 0, + "earliestSuspendedTime": 0, + "finishedWork": null, + "firstBatch": null, + "hydrate": false, + "latestPendingTime": 0, + "latestPingedTime": 0, + "latestSuspendedTime": 0, + "nextScheduledRoot": null, + "pendingChildren": null, + "pendingCommitExpirationTime": 0, + "pendingContext": null, + "remainingExpirationTime": 0, + }, + "tag": 3, + "treeBaseTime": 0, + "type": null, + "updateQueue": Object { + "baseState": null, + "expirationTime": 1, + "firstCapturedEffect": null, + "firstCapturedUpdate": null, + "firstEffect": null, + "firstUpdate": Object { + "callback": null, + "expirationTime": 1, + "next": null, + "nextEffect": null, + "payload": Object { + "element": , + }, + "tag": 0, + }, + "lastCapturedEffect": null, + "lastCapturedUpdate": null, + "lastEffect": null, + "lastUpdate": Object { + "callback": null, + "expirationTime": 1, + "next": null, + "nextEffect": null, + "payload": Object { + "element": , + }, + "tag": 0, + }, + }, + }, + "child": [Circular], + "effectTag": 32, + "expirationTime": 0, + "firstEffect": [Circular], + "index": 0, + "key": null, + "lastEffect": [Circular], + "memoizedProps": null, + "memoizedState": Object { + "element": , + }, + "mode": 0, + "nextEffect": null, + "pendingProps": null, + "ref": null, + "return": null, + "selfBaseTime": 0, + "sibling": null, + "stateNode": Object { + "containerInfo":
+
+
+

+ Add a card +

+
+
+ + + + +
+ +
+
+
+
, + "context": Object {}, + "current": [Circular], + "earliestPendingTime": 0, + "earliestSuspendedTime": 0, + "finishedWork": null, + "firstBatch": null, + "hydrate": false, + "latestPendingTime": 0, + "latestPingedTime": 0, + "latestSuspendedTime": 0, + "nextScheduledRoot": null, + "pendingChildren": null, + "pendingCommitExpirationTime": 0, + "pendingContext": null, + "remainingExpirationTime": 0, + }, + "tag": 3, + "treeBaseTime": 0, + "type": null, + "updateQueue": Object { + "baseState": Object { + "element": , + }, + "expirationTime": 0, + "firstCapturedEffect": null, + "firstCapturedUpdate": null, + "firstEffect": null, + "firstUpdate": null, + "lastCapturedEffect": null, + "lastCapturedUpdate": null, + "lastEffect": null, + "lastUpdate": null, + }, + }, + "selfBaseTime": 0, + "sibling": null, + "stateNode": WrapperComponent { + "_reactInternalFiber": [Circular], + "_reactInternalInstance": Object {}, + "context": Object {}, + "props": Object { + "Component": [Function], + "context": null, + "props": Object {}, + }, + "refs": Object {}, + "state": Object { + "context": null, + "mount": true, + "props": Object {}, + }, + "updater": Object { + "enqueueForceUpdate": [Function], + "enqueueReplaceState": [Function], + "enqueueSetState": [Function], + "isMounted": [Function], + }, + }, + "tag": 2, + "treeBaseTime": 0, + "type": [Function], + "updateQueue": null, + }, + "_debugSource": null, + "alternate": null, + "child": FiberNode { + "_debugID": 6, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/Board.js", + "lineNumber": 83, + }, + "alternate": null, + "child": FiberNode { + "_debugID": 7, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 0, + "key": null, + "lastEffect": null, + "memoizedProps": Array [], + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Array [], + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": FiberNode { + "_debugID": 8, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/Board.js", + "lineNumber": 85, + }, + "alternate": null, + "child": FiberNode { + "_debugID": 9, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 44, + }, + "alternate": null, + "child": FiberNode { + "_debugID": 10, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 45, + }, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 0, + "key": null, + "lastEffect": null, + "memoizedProps": Object { + "children": "Add a card", + "className": "new-card-form__header", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": "Add a card", + "className": "new-card-form__header", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": FiberNode { + "_debugID": 11, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 46, + }, + "alternate": null, + "child": FiberNode { + "_debugID": 12, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 48, + }, + "alternate": null, + "child": FiberNode { + "_debugID": 14, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 49, + }, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 0, + "key": null, + "lastEffect": null, + "memoizedProps": Object { + "children": "Message: ", + "className": "new-card-form__form-label", + "htmlFor": "text", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": "Message: ", + "className": "new-card-form__form-label", + "htmlFor": "text", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": FiberNode { + "_debugID": 15, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 50, + }, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 1, + "key": null, + "lastEffect": null, + "memoizedProps": Object { + "className": "new-card-form__form-textarea", + "name": "text", + "onChange": [Function], + "type": "text", + "value": "", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "className": "new-card-form__form-textarea", + "name": "text", + "onChange": [Function], + "type": "text", + "value": "", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": FiberNode { + "_debugID": 16, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 57, + }, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 2, + "key": null, + "lastEffect": null, + "memoizedProps": Object { + "children": "Emoji: ", + "className": "new-card-form__form-label", + "htmlFor": "emoji", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": "Emoji: ", + "className": "new-card-form__form-label", + "htmlFor": "emoji", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": FiberNode { + "_debugID": 17, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 58, + }, + "alternate": null, + "child": FiberNode { + "_debugID": 18, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": null, + "child": FiberNode { + "_debugID": 20, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 63, + }, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 0, + "key": "", + "lastEffect": null, + "memoizedProps": Object { + "children": undefined, + "value": "", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": undefined, + "value": "", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": FiberNode { + "_debugID": 21, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 63, + }, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 1, + "key": "heart_eyes", + "lastEffect": null, + "memoizedProps": Object { + "children": "😍", + "value": "heart_eyes", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": "😍", + "value": "heart_eyes", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": FiberNode { + "_debugID": 22, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 63, + }, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 2, + "key": "beer", + "lastEffect": null, + "memoizedProps": Object { + "children": "🍺", + "value": "beer", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": "🍺", + "value": "beer", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": FiberNode { + "_debugID": 23, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 63, + }, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 3, + "key": "clap", + "lastEffect": null, + "memoizedProps": Object { + "children": "👏", + "value": "clap", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": "👏", + "value": "clap", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": FiberNode { + "_debugID": 24, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 63, + }, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 4, + "key": "sparkling_heart", + "lastEffect": null, + "memoizedProps": Object { + "children": "💖", + "value": "sparkling_heart", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": "💖", + "value": "sparkling_heart", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": FiberNode { + "_debugID": 25, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 63, + }, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 5, + "key": "heart_eyes_cat", + "lastEffect": null, + "memoizedProps": Object { + "children": "😻", + "value": "heart_eyes_cat", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": "😻", + "value": "heart_eyes_cat", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": FiberNode { + "_debugID": 26, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 63, + }, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 6, + "key": "dog", + "lastEffect": null, + "memoizedProps": Object { + "children": "🐶", + "value": "dog", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": "🐶", + "value": "dog", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": FiberNode { + "_debugID": 27, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 63, + }, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 7, + "key": "robot", + "lastEffect": null, + "memoizedProps": Object { + "children": "🤖", + "value": "robot", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": "🤖", + "value": "robot", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": null, + "stateNode": , + "tag": 5, + "treeBaseTime": 0, + "type": "option", + "updateQueue": null, + }, + "stateNode": , + "tag": 5, + "treeBaseTime": 0, + "type": "option", + "updateQueue": null, + }, + "stateNode": , + "tag": 5, + "treeBaseTime": 0, + "type": "option", + "updateQueue": null, + }, + "stateNode": , + "tag": 5, + "treeBaseTime": 0, + "type": "option", + "updateQueue": null, + }, + "stateNode": , + "tag": 5, + "treeBaseTime": 0, + "type": "option", + "updateQueue": null, + }, + "stateNode": , + "tag": 5, + "treeBaseTime": 0, + "type": "option", + "updateQueue": null, + }, + "stateNode": , + "tag": 5, + "treeBaseTime": 0, + "type": "option", + "updateQueue": null, + }, + "stateNode": , + , + , + , + , + , + , + ], + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Array [ + , + , + , + , + , + , + , + ], + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": FiberNode { + "_debugID": 19, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 1, + "key": null, + "lastEffect": null, + "memoizedProps": ";", + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": ";", + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": null, + "stateNode": ;, + "tag": 6, + "treeBaseTime": 0, + "type": null, + "updateQueue": null, + }, + "stateNode": null, + "tag": 10, + "treeBaseTime": 0, + "type": null, + "updateQueue": null, + }, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 3, + "key": null, + "lastEffect": null, + "memoizedProps": Object { + "children": Array [ + Array [ + , + , + , + , + , + , + , + ], + ";", + ], + "className": "new-card-form__form-textarea", + "name": "emoji", + "onChange": [Function], + "value": "", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": Array [ + Array [ + , + , + , + , + , + , + , + ], + ";", + ], + "className": "new-card-form__form-textarea", + "name": "emoji", + "onChange": [Function], + "value": "", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": null, + "stateNode": , + "tag": 5, + "treeBaseTime": 0, + "type": "select", + "updateQueue": null, + }, + "stateNode": , + "tag": 5, + "treeBaseTime": 0, + "type": "label", + "updateQueue": null, + }, + "stateNode": , + "tag": 5, + "treeBaseTime": 0, + "type": "input", + "updateQueue": null, + }, + "stateNode": , + "tag": 5, + "treeBaseTime": 0, + "type": "label", + "updateQueue": null, + }, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 0, + "key": null, + "lastEffect": null, + "memoizedProps": Object { + "children": Array [ + , + , + , + , + ], + "className": "new-card-form__form", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": Array [ + , + , + , + , + ], + "className": "new-card-form__form", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": FiberNode { + "_debugID": 13, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 66, + }, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 1, + "key": null, + "lastEffect": null, + "memoizedProps": Object { + "type": "submit", + "value": "Add Card", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "type": "submit", + "value": "Add Card", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": null, + "stateNode": , + "tag": 5, + "treeBaseTime": 0, + "type": "input", + "updateQueue": null, + }, + "stateNode":
+ + + + +
, + "tag": 5, + "treeBaseTime": 0, + "type": "div", + "updateQueue": null, + }, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 1, + "key": null, + "lastEffect": null, + "memoizedProps": Object { + "children": Array [ +
+ + + + +
, + , + ], + "onSubmit": [Function], + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": Array [ +
+ + + + +
, + , + ], + "onSubmit": [Function], + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": null, + "stateNode":
+
+ + + + +
+ +
, + "tag": 5, + "treeBaseTime": 0, + "type": "form", + "updateQueue": null, + }, + "stateNode":

+ Add a card +

, + "tag": 5, + "treeBaseTime": 0, + "type": "h3", + "updateQueue": null, + }, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 0, + "key": null, + "lastEffect": null, + "memoizedProps": Object { + "children": Array [ +

+ Add a card +

, +
+
+ + + + +
+ +
, + ], + "className": "new-card-form", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": Array [ +

+ Add a card +

, +
+
+ + + + +
+ +
, + ], + "className": "new-card-form", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": null, + "stateNode":
+

+ Add a card +

+
+
+ + + + +
+ +
+
, + "tag": 5, + "treeBaseTime": 0, + "type": "div", + "updateQueue": null, + }, + "effectTag": 1, + "expirationTime": 0, + "firstEffect": null, + "index": 1, + "key": null, + "lastEffect": null, + "memoizedProps": Object { + "addCardCallback": [Function], + }, + "memoizedState": Object { + "emoji": "", + "text": "", + }, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "addCardCallback": [Function], + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": null, + "stateNode": NewCardForm { + "_reactInternalFiber": [Circular], + "_reactInternalInstance": Object {}, + "clearForm": [Function], + "context": Object {}, + "onFieldChange": [Function], + "onFormSubmit": [Function], + "props": Object { + "addCardCallback": [Function], + }, + "refs": Object {}, + "state": Object { + "emoji": "", + "text": "", + }, + "updater": Object { + "enqueueForceUpdate": [Function], + "enqueueReplaceState": [Function], + "enqueueSetState": [Function], + "isMounted": [Function], + }, + }, + "tag": 2, + "treeBaseTime": 0, + "type": [Function], + "updateQueue": null, + }, + "stateNode": null, + "tag": 10, + "treeBaseTime": 0, + "type": null, + "updateQueue": null, + }, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 0, + "key": null, + "lastEffect": null, + "memoizedProps": Object { + "children": Array [ + Array [], + , + ], + "className": "board", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": Array [ + Array [], + , + ], + "className": "board", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": null, + "stateNode":
+
+

+ Add a card +

+
+
+ + + + +
+ +
+
+
, + "tag": 5, + "treeBaseTime": 0, + "type": "div", + "updateQueue": null, + }, + "effectTag": 5, + "expirationTime": 0, + "firstEffect": null, + "index": 0, + "key": null, + "lastEffect": null, + "memoizedProps": Object {}, + "memoizedState": Object { + "cards": Array [], + }, + "mode": 0, + "nextEffect": null, + "pendingProps": Object {}, + "ref": null, + "return": FiberNode { + "_debugID": 4, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": null, + "child": [Circular], + "effectTag": 1, + "expirationTime": 0, + "firstEffect": [Circular], + "index": 0, + "key": null, + "lastEffect": [Circular], + "memoizedProps": Object { + "Component": [Function], + "context": null, + "props": Object {}, + }, + "memoizedState": Object { + "context": null, + "mount": true, + "props": Object {}, + }, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "Component": [Function], + "context": null, + "props": Object {}, + }, + "ref": null, + "return": FiberNode { + "_debugID": 1, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": FiberNode { + "_debugID": 1, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": [Circular], + "child": null, + "effectTag": 0, + "expirationTime": 1, + "firstEffect": null, + "index": 0, + "key": null, + "lastEffect": null, + "memoizedProps": null, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": null, + "ref": null, + "return": null, + "selfBaseTime": 0, + "sibling": null, + "stateNode": Object { + "containerInfo":
+
+
+

+ Add a card +

+
+
+ + + + +
+ +
+
+
+
, + "context": Object {}, + "current": [Circular], + "earliestPendingTime": 0, + "earliestSuspendedTime": 0, + "finishedWork": null, + "firstBatch": null, + "hydrate": false, + "latestPendingTime": 0, + "latestPingedTime": 0, + "latestSuspendedTime": 0, + "nextScheduledRoot": null, + "pendingChildren": null, + "pendingCommitExpirationTime": 0, + "pendingContext": null, + "remainingExpirationTime": 0, + }, + "tag": 3, + "treeBaseTime": 0, + "type": null, + "updateQueue": Object { + "baseState": null, + "expirationTime": 1, + "firstCapturedEffect": null, + "firstCapturedUpdate": null, + "firstEffect": null, + "firstUpdate": Object { + "callback": null, + "expirationTime": 1, + "next": null, + "nextEffect": null, + "payload": Object { + "element": , + }, + "tag": 0, + }, + "lastCapturedEffect": null, + "lastCapturedUpdate": null, + "lastEffect": null, + "lastUpdate": Object { + "callback": null, + "expirationTime": 1, + "next": null, + "nextEffect": null, + "payload": Object { + "element": , + }, + "tag": 0, + }, + }, + }, + "child": [Circular], + "effectTag": 32, + "expirationTime": 0, + "firstEffect": [Circular], + "index": 0, + "key": null, + "lastEffect": [Circular], + "memoizedProps": null, + "memoizedState": Object { + "element": , + }, + "mode": 0, + "nextEffect": null, + "pendingProps": null, + "ref": null, + "return": null, + "selfBaseTime": 0, + "sibling": null, + "stateNode": Object { + "containerInfo":
+
+
+

+ Add a card +

+
+
+ + + + +
+ +
+
+
+
, + "context": Object {}, + "current": [Circular], + "earliestPendingTime": 0, + "earliestSuspendedTime": 0, + "finishedWork": null, + "firstBatch": null, + "hydrate": false, + "latestPendingTime": 0, + "latestPingedTime": 0, + "latestSuspendedTime": 0, + "nextScheduledRoot": null, + "pendingChildren": null, + "pendingCommitExpirationTime": 0, + "pendingContext": null, + "remainingExpirationTime": 0, + }, + "tag": 3, + "treeBaseTime": 0, + "type": null, + "updateQueue": Object { + "baseState": Object { + "element": , + }, + "expirationTime": 0, + "firstCapturedEffect": null, + "firstCapturedUpdate": null, + "firstEffect": null, + "firstUpdate": null, + "lastCapturedEffect": null, + "lastCapturedUpdate": null, + "lastEffect": null, + "lastUpdate": null, + }, + }, + "selfBaseTime": 0, + "sibling": null, + "stateNode": WrapperComponent { + "_reactInternalFiber": [Circular], + "_reactInternalInstance": Object {}, + "context": Object {}, + "props": Object { + "Component": [Function], + "context": null, + "props": Object {}, + }, + "refs": Object {}, + "state": Object { + "context": null, + "mount": true, + "props": Object {}, + }, + "updater": Object { + "enqueueForceUpdate": [Function], + "enqueueReplaceState": [Function], + "enqueueSetState": [Function], + "isMounted": [Function], + }, + }, + "tag": 2, + "treeBaseTime": 0, + "type": [Function], + "updateQueue": null, + }, + "selfBaseTime": 0, + "sibling": null, + "stateNode": [Circular], + "tag": 2, + "treeBaseTime": 0, + "type": [Function], + "updateQueue": null, + }, + "_reactInternalInstance": Object {}, + "addCard": [Function], + "componentDidMount": [Function], + "context": Object {}, + "props": Object {}, + "refs": Object {}, + "removeCard": [Function], + "renderCardList": [Function], + "state": Object { + "cards": Array [], + }, + "updater": Object { + "enqueueForceUpdate": [Function], + "enqueueReplaceState": [Function], + "enqueueSetState": [Function], + "isMounted": [Function], + }, + }, + "key": undefined, + "nodeType": "class", + "props": Object {}, + "ref": null, + "rendered": Object { + "instance":
+
+

+ Add a card +

+
+
+ + + + +
+ +
+
+
, + "key": undefined, + "nodeType": "host", + "props": Object { + "children": Array [ + Array [], + , + ], + "className": "board", + }, + "ref": null, + "rendered": Array [ + null, + Object { + "instance": NewCardForm { + "_reactInternalFiber": FiberNode { + "_debugID": 8, + "_debugIsCurrentlyTiming": false, + "_debugOwner": FiberNode { + "_debugID": 5, + "_debugIsCurrentlyTiming": false, + "_debugOwner": FiberNode { + "_debugID": 4, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": null, + "child": [Circular], + "effectTag": 1, + "expirationTime": 0, + "firstEffect": [Circular], + "index": 0, + "key": null, + "lastEffect": [Circular], + "memoizedProps": Object { + "Component": [Function], + "context": null, + "props": Object {}, + }, + "memoizedState": Object { + "context": null, + "mount": true, + "props": Object {}, + }, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "Component": [Function], + "context": null, + "props": Object {}, + }, + "ref": null, + "return": FiberNode { + "_debugID": 1, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": FiberNode { + "_debugID": 1, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": [Circular], + "child": null, + "effectTag": 0, + "expirationTime": 1, + "firstEffect": null, + "index": 0, + "key": null, + "lastEffect": null, + "memoizedProps": null, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": null, + "ref": null, + "return": null, + "selfBaseTime": 0, + "sibling": null, + "stateNode": Object { + "containerInfo":
+
+
+

+ Add a card +

+
+
+ + + + +
+ +
+
+
+
, + "context": Object {}, + "current": [Circular], + "earliestPendingTime": 0, + "earliestSuspendedTime": 0, + "finishedWork": null, + "firstBatch": null, + "hydrate": false, + "latestPendingTime": 0, + "latestPingedTime": 0, + "latestSuspendedTime": 0, + "nextScheduledRoot": null, + "pendingChildren": null, + "pendingCommitExpirationTime": 0, + "pendingContext": null, + "remainingExpirationTime": 0, + }, + "tag": 3, + "treeBaseTime": 0, + "type": null, + "updateQueue": Object { + "baseState": null, + "expirationTime": 1, + "firstCapturedEffect": null, + "firstCapturedUpdate": null, + "firstEffect": null, + "firstUpdate": Object { + "callback": null, + "expirationTime": 1, + "next": null, + "nextEffect": null, + "payload": Object { + "element": , + }, + "tag": 0, + }, + "lastCapturedEffect": null, + "lastCapturedUpdate": null, + "lastEffect": null, + "lastUpdate": Object { + "callback": null, + "expirationTime": 1, + "next": null, + "nextEffect": null, + "payload": Object { + "element": , + }, + "tag": 0, + }, + }, + }, + "child": [Circular], + "effectTag": 32, + "expirationTime": 0, + "firstEffect": [Circular], + "index": 0, + "key": null, + "lastEffect": [Circular], + "memoizedProps": null, + "memoizedState": Object { + "element": , + }, + "mode": 0, + "nextEffect": null, + "pendingProps": null, + "ref": null, + "return": null, + "selfBaseTime": 0, + "sibling": null, + "stateNode": Object { + "containerInfo":
+
+
+

+ Add a card +

+
+
+ + + + +
+ +
+
+
+
, + "context": Object {}, + "current": [Circular], + "earliestPendingTime": 0, + "earliestSuspendedTime": 0, + "finishedWork": null, + "firstBatch": null, + "hydrate": false, + "latestPendingTime": 0, + "latestPingedTime": 0, + "latestSuspendedTime": 0, + "nextScheduledRoot": null, + "pendingChildren": null, + "pendingCommitExpirationTime": 0, + "pendingContext": null, + "remainingExpirationTime": 0, + }, + "tag": 3, + "treeBaseTime": 0, + "type": null, + "updateQueue": Object { + "baseState": Object { + "element": , + }, + "expirationTime": 0, + "firstCapturedEffect": null, + "firstCapturedUpdate": null, + "firstEffect": null, + "firstUpdate": null, + "lastCapturedEffect": null, + "lastCapturedUpdate": null, + "lastEffect": null, + "lastUpdate": null, + }, + }, + "selfBaseTime": 0, + "sibling": null, + "stateNode": WrapperComponent { + "_reactInternalFiber": [Circular], + "_reactInternalInstance": Object {}, + "context": Object {}, + "props": Object { + "Component": [Function], + "context": null, + "props": Object {}, + }, + "refs": Object {}, + "state": Object { + "context": null, + "mount": true, + "props": Object {}, + }, + "updater": Object { + "enqueueForceUpdate": [Function], + "enqueueReplaceState": [Function], + "enqueueSetState": [Function], + "isMounted": [Function], + }, + }, + "tag": 2, + "treeBaseTime": 0, + "type": [Function], + "updateQueue": null, + }, + "_debugSource": null, + "alternate": null, + "child": FiberNode { + "_debugID": 6, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/Board.js", + "lineNumber": 83, + }, + "alternate": null, + "child": FiberNode { + "_debugID": 7, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 0, + "key": null, + "lastEffect": null, + "memoizedProps": Array [], + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Array [], + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": [Circular], + "stateNode": null, + "tag": 10, + "treeBaseTime": 0, + "type": null, + "updateQueue": null, + }, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 0, + "key": null, + "lastEffect": null, + "memoizedProps": Object { + "children": Array [ + Array [], + , + ], + "className": "board", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": Array [ + Array [], + , + ], + "className": "board", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": null, + "stateNode":
+
+

+ Add a card +

+
+
+ + + + +
+ +
+
+
, + "tag": 5, + "treeBaseTime": 0, + "type": "div", + "updateQueue": null, + }, + "effectTag": 5, + "expirationTime": 0, + "firstEffect": null, + "index": 0, + "key": null, + "lastEffect": null, + "memoizedProps": Object {}, + "memoizedState": Object { + "cards": Array [], + }, + "mode": 0, + "nextEffect": null, + "pendingProps": Object {}, + "ref": null, + "return": FiberNode { + "_debugID": 4, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": null, + "child": [Circular], + "effectTag": 1, + "expirationTime": 0, + "firstEffect": [Circular], + "index": 0, + "key": null, + "lastEffect": [Circular], + "memoizedProps": Object { + "Component": [Function], + "context": null, + "props": Object {}, + }, + "memoizedState": Object { + "context": null, + "mount": true, + "props": Object {}, + }, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "Component": [Function], + "context": null, + "props": Object {}, + }, + "ref": null, + "return": FiberNode { + "_debugID": 1, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": FiberNode { + "_debugID": 1, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": [Circular], + "child": null, + "effectTag": 0, + "expirationTime": 1, + "firstEffect": null, + "index": 0, + "key": null, + "lastEffect": null, + "memoizedProps": null, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": null, + "ref": null, + "return": null, + "selfBaseTime": 0, + "sibling": null, + "stateNode": Object { + "containerInfo":
+
+
+

+ Add a card +

+
+
+ + + + +
+ +
+
+
+
, + "context": Object {}, + "current": [Circular], + "earliestPendingTime": 0, + "earliestSuspendedTime": 0, + "finishedWork": null, + "firstBatch": null, + "hydrate": false, + "latestPendingTime": 0, + "latestPingedTime": 0, + "latestSuspendedTime": 0, + "nextScheduledRoot": null, + "pendingChildren": null, + "pendingCommitExpirationTime": 0, + "pendingContext": null, + "remainingExpirationTime": 0, + }, + "tag": 3, + "treeBaseTime": 0, + "type": null, + "updateQueue": Object { + "baseState": null, + "expirationTime": 1, + "firstCapturedEffect": null, + "firstCapturedUpdate": null, + "firstEffect": null, + "firstUpdate": Object { + "callback": null, + "expirationTime": 1, + "next": null, + "nextEffect": null, + "payload": Object { + "element": , + }, + "tag": 0, + }, + "lastCapturedEffect": null, + "lastCapturedUpdate": null, + "lastEffect": null, + "lastUpdate": Object { + "callback": null, + "expirationTime": 1, + "next": null, + "nextEffect": null, + "payload": Object { + "element": , + }, + "tag": 0, + }, + }, + }, + "child": [Circular], + "effectTag": 32, + "expirationTime": 0, + "firstEffect": [Circular], + "index": 0, + "key": null, + "lastEffect": [Circular], + "memoizedProps": null, + "memoizedState": Object { + "element": , + }, + "mode": 0, + "nextEffect": null, + "pendingProps": null, + "ref": null, + "return": null, + "selfBaseTime": 0, + "sibling": null, + "stateNode": Object { + "containerInfo":
+
+
+

+ Add a card +

+
+
+ + + + +
+ +
+
+
+
, + "context": Object {}, + "current": [Circular], + "earliestPendingTime": 0, + "earliestSuspendedTime": 0, + "finishedWork": null, + "firstBatch": null, + "hydrate": false, + "latestPendingTime": 0, + "latestPingedTime": 0, + "latestSuspendedTime": 0, + "nextScheduledRoot": null, + "pendingChildren": null, + "pendingCommitExpirationTime": 0, + "pendingContext": null, + "remainingExpirationTime": 0, + }, + "tag": 3, + "treeBaseTime": 0, + "type": null, + "updateQueue": Object { + "baseState": Object { + "element": , + }, + "expirationTime": 0, + "firstCapturedEffect": null, + "firstCapturedUpdate": null, + "firstEffect": null, + "firstUpdate": null, + "lastCapturedEffect": null, + "lastCapturedUpdate": null, + "lastEffect": null, + "lastUpdate": null, + }, + }, + "selfBaseTime": 0, + "sibling": null, + "stateNode": WrapperComponent { + "_reactInternalFiber": [Circular], + "_reactInternalInstance": Object {}, + "context": Object {}, + "props": Object { + "Component": [Function], + "context": null, + "props": Object {}, + }, + "refs": Object {}, + "state": Object { + "context": null, + "mount": true, + "props": Object {}, + }, + "updater": Object { + "enqueueForceUpdate": [Function], + "enqueueReplaceState": [Function], + "enqueueSetState": [Function], + "isMounted": [Function], + }, + }, + "tag": 2, + "treeBaseTime": 0, + "type": [Function], + "updateQueue": null, + }, + "selfBaseTime": 0, + "sibling": null, + "stateNode": Board { + "_reactInternalFiber": [Circular], + "_reactInternalInstance": Object {}, + "addCard": [Function], + "componentDidMount": [Function], + "context": Object {}, + "props": Object {}, + "refs": Object {}, + "removeCard": [Function], + "renderCardList": [Function], + "state": Object { + "cards": Array [], + }, + "updater": Object { + "enqueueForceUpdate": [Function], + "enqueueReplaceState": [Function], + "enqueueSetState": [Function], + "isMounted": [Function], + }, + }, + "tag": 2, + "treeBaseTime": 0, + "type": [Function], + "updateQueue": null, + }, + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/Board.js", + "lineNumber": 85, + }, + "alternate": null, + "child": FiberNode { + "_debugID": 9, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 44, + }, + "alternate": null, + "child": FiberNode { + "_debugID": 10, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 45, + }, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 0, + "key": null, + "lastEffect": null, + "memoizedProps": Object { + "children": "Add a card", + "className": "new-card-form__header", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": "Add a card", + "className": "new-card-form__header", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": FiberNode { + "_debugID": 11, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 46, + }, + "alternate": null, + "child": FiberNode { + "_debugID": 12, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 48, + }, + "alternate": null, + "child": FiberNode { + "_debugID": 14, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 49, + }, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 0, + "key": null, + "lastEffect": null, + "memoizedProps": Object { + "children": "Message: ", + "className": "new-card-form__form-label", + "htmlFor": "text", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": "Message: ", + "className": "new-card-form__form-label", + "htmlFor": "text", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": FiberNode { + "_debugID": 15, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 50, + }, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 1, + "key": null, + "lastEffect": null, + "memoizedProps": Object { + "className": "new-card-form__form-textarea", + "name": "text", + "onChange": [Function], + "type": "text", + "value": "", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "className": "new-card-form__form-textarea", + "name": "text", + "onChange": [Function], + "type": "text", + "value": "", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": FiberNode { + "_debugID": 16, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 57, + }, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 2, + "key": null, + "lastEffect": null, + "memoizedProps": Object { + "children": "Emoji: ", + "className": "new-card-form__form-label", + "htmlFor": "emoji", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": "Emoji: ", + "className": "new-card-form__form-label", + "htmlFor": "emoji", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": FiberNode { + "_debugID": 17, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 58, + }, + "alternate": null, + "child": FiberNode { + "_debugID": 18, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": null, + "child": FiberNode { + "_debugID": 20, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 63, + }, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 0, + "key": "", + "lastEffect": null, + "memoizedProps": Object { + "children": undefined, + "value": "", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": undefined, + "value": "", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": FiberNode { + "_debugID": 21, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 63, + }, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 1, + "key": "heart_eyes", + "lastEffect": null, + "memoizedProps": Object { + "children": "😍", + "value": "heart_eyes", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": "😍", + "value": "heart_eyes", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": FiberNode { + "_debugID": 22, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 63, + }, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 2, + "key": "beer", + "lastEffect": null, + "memoizedProps": Object { + "children": "🍺", + "value": "beer", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": "🍺", + "value": "beer", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": FiberNode { + "_debugID": 23, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 63, + }, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 3, + "key": "clap", + "lastEffect": null, + "memoizedProps": Object { + "children": "👏", + "value": "clap", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": "👏", + "value": "clap", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": FiberNode { + "_debugID": 24, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 63, + }, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 4, + "key": "sparkling_heart", + "lastEffect": null, + "memoizedProps": Object { + "children": "💖", + "value": "sparkling_heart", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": "💖", + "value": "sparkling_heart", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": FiberNode { + "_debugID": 25, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 63, + }, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 5, + "key": "heart_eyes_cat", + "lastEffect": null, + "memoizedProps": Object { + "children": "😻", + "value": "heart_eyes_cat", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": "😻", + "value": "heart_eyes_cat", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": FiberNode { + "_debugID": 26, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 63, + }, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 6, + "key": "dog", + "lastEffect": null, + "memoizedProps": Object { + "children": "🐶", + "value": "dog", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": "🐶", + "value": "dog", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": FiberNode { + "_debugID": 27, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 63, + }, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 7, + "key": "robot", + "lastEffect": null, + "memoizedProps": Object { + "children": "🤖", + "value": "robot", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": "🤖", + "value": "robot", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": null, + "stateNode": , + "tag": 5, + "treeBaseTime": 0, + "type": "option", + "updateQueue": null, + }, + "stateNode": , + "tag": 5, + "treeBaseTime": 0, + "type": "option", + "updateQueue": null, + }, + "stateNode": , + "tag": 5, + "treeBaseTime": 0, + "type": "option", + "updateQueue": null, + }, + "stateNode": , + "tag": 5, + "treeBaseTime": 0, + "type": "option", + "updateQueue": null, + }, + "stateNode": , + "tag": 5, + "treeBaseTime": 0, + "type": "option", + "updateQueue": null, + }, + "stateNode": , + "tag": 5, + "treeBaseTime": 0, + "type": "option", + "updateQueue": null, + }, + "stateNode": , + "tag": 5, + "treeBaseTime": 0, + "type": "option", + "updateQueue": null, + }, + "stateNode": , + , + , + , + , + , + , + ], + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Array [ + , + , + , + , + , + , + , + ], + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": FiberNode { + "_debugID": 19, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 1, + "key": null, + "lastEffect": null, + "memoizedProps": ";", + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": ";", + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": null, + "stateNode": ;, + "tag": 6, + "treeBaseTime": 0, + "type": null, + "updateQueue": null, + }, + "stateNode": null, + "tag": 10, + "treeBaseTime": 0, + "type": null, + "updateQueue": null, + }, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 3, + "key": null, + "lastEffect": null, + "memoizedProps": Object { + "children": Array [ + Array [ + , + , + , + , + , + , + , + ], + ";", + ], + "className": "new-card-form__form-textarea", + "name": "emoji", + "onChange": [Function], + "value": "", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": Array [ + Array [ + , + , + , + , + , + , + , + ], + ";", + ], + "className": "new-card-form__form-textarea", + "name": "emoji", + "onChange": [Function], + "value": "", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": null, + "stateNode": , + "tag": 5, + "treeBaseTime": 0, + "type": "select", + "updateQueue": null, + }, + "stateNode": , + "tag": 5, + "treeBaseTime": 0, + "type": "label", + "updateQueue": null, + }, + "stateNode": , + "tag": 5, + "treeBaseTime": 0, + "type": "input", + "updateQueue": null, + }, + "stateNode": , + "tag": 5, + "treeBaseTime": 0, + "type": "label", + "updateQueue": null, + }, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 0, + "key": null, + "lastEffect": null, + "memoizedProps": Object { + "children": Array [ + , + , + , + , + ], + "className": "new-card-form__form", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": Array [ + , + , + , + , + ], + "className": "new-card-form__form", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": FiberNode { + "_debugID": 13, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 66, + }, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 1, + "key": null, + "lastEffect": null, + "memoizedProps": Object { + "type": "submit", + "value": "Add Card", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "type": "submit", + "value": "Add Card", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": null, + "stateNode": , + "tag": 5, + "treeBaseTime": 0, + "type": "input", + "updateQueue": null, + }, + "stateNode":
+ + + + +
, + "tag": 5, + "treeBaseTime": 0, + "type": "div", + "updateQueue": null, + }, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 1, + "key": null, + "lastEffect": null, + "memoizedProps": Object { + "children": Array [ +
+ + + + +
, + , + ], + "onSubmit": [Function], + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": Array [ +
+ + + + +
, + , + ], + "onSubmit": [Function], + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": null, + "stateNode":
+
+ + + + +
+ +
, + "tag": 5, + "treeBaseTime": 0, + "type": "form", + "updateQueue": null, + }, + "stateNode":

+ Add a card +

, + "tag": 5, + "treeBaseTime": 0, + "type": "h3", + "updateQueue": null, + }, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 0, + "key": null, + "lastEffect": null, + "memoizedProps": Object { + "children": Array [ +

+ Add a card +

, +
+
+ + + + +
+ +
, + ], + "className": "new-card-form", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": Array [ +

+ Add a card +

, +
+
+ + + + +
+ +
, + ], + "className": "new-card-form", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": null, + "stateNode":
+

+ Add a card +

+
+
+ + + + +
+ +
+
, + "tag": 5, + "treeBaseTime": 0, + "type": "div", + "updateQueue": null, + }, + "effectTag": 1, + "expirationTime": 0, + "firstEffect": null, + "index": 1, + "key": null, + "lastEffect": null, + "memoizedProps": Object { + "addCardCallback": [Function], + }, + "memoizedState": Object { + "emoji": "", + "text": "", + }, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "addCardCallback": [Function], + }, + "ref": null, + "return": FiberNode { + "_debugID": 6, + "_debugIsCurrentlyTiming": false, + "_debugOwner": FiberNode { + "_debugID": 5, + "_debugIsCurrentlyTiming": false, + "_debugOwner": FiberNode { + "_debugID": 4, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": null, + "child": [Circular], + "effectTag": 1, + "expirationTime": 0, + "firstEffect": [Circular], + "index": 0, + "key": null, + "lastEffect": [Circular], + "memoizedProps": Object { + "Component": [Function], + "context": null, + "props": Object {}, + }, + "memoizedState": Object { + "context": null, + "mount": true, + "props": Object {}, + }, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "Component": [Function], + "context": null, + "props": Object {}, + }, + "ref": null, + "return": FiberNode { + "_debugID": 1, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": FiberNode { + "_debugID": 1, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": [Circular], + "child": null, + "effectTag": 0, + "expirationTime": 1, + "firstEffect": null, + "index": 0, + "key": null, + "lastEffect": null, + "memoizedProps": null, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": null, + "ref": null, + "return": null, + "selfBaseTime": 0, + "sibling": null, + "stateNode": Object { + "containerInfo":
+
+
+

+ Add a card +

+
+
+ + + + +
+ +
+
+
+
, + "context": Object {}, + "current": [Circular], + "earliestPendingTime": 0, + "earliestSuspendedTime": 0, + "finishedWork": null, + "firstBatch": null, + "hydrate": false, + "latestPendingTime": 0, + "latestPingedTime": 0, + "latestSuspendedTime": 0, + "nextScheduledRoot": null, + "pendingChildren": null, + "pendingCommitExpirationTime": 0, + "pendingContext": null, + "remainingExpirationTime": 0, + }, + "tag": 3, + "treeBaseTime": 0, + "type": null, + "updateQueue": Object { + "baseState": null, + "expirationTime": 1, + "firstCapturedEffect": null, + "firstCapturedUpdate": null, + "firstEffect": null, + "firstUpdate": Object { + "callback": null, + "expirationTime": 1, + "next": null, + "nextEffect": null, + "payload": Object { + "element": , + }, + "tag": 0, + }, + "lastCapturedEffect": null, + "lastCapturedUpdate": null, + "lastEffect": null, + "lastUpdate": Object { + "callback": null, + "expirationTime": 1, + "next": null, + "nextEffect": null, + "payload": Object { + "element": , + }, + "tag": 0, + }, + }, + }, + "child": [Circular], + "effectTag": 32, + "expirationTime": 0, + "firstEffect": [Circular], + "index": 0, + "key": null, + "lastEffect": [Circular], + "memoizedProps": null, + "memoizedState": Object { + "element": , + }, + "mode": 0, + "nextEffect": null, + "pendingProps": null, + "ref": null, + "return": null, + "selfBaseTime": 0, + "sibling": null, + "stateNode": Object { + "containerInfo":
+
+
+

+ Add a card +

+
+
+ + + + +
+ +
+
+
+
, + "context": Object {}, + "current": [Circular], + "earliestPendingTime": 0, + "earliestSuspendedTime": 0, + "finishedWork": null, + "firstBatch": null, + "hydrate": false, + "latestPendingTime": 0, + "latestPingedTime": 0, + "latestSuspendedTime": 0, + "nextScheduledRoot": null, + "pendingChildren": null, + "pendingCommitExpirationTime": 0, + "pendingContext": null, + "remainingExpirationTime": 0, + }, + "tag": 3, + "treeBaseTime": 0, + "type": null, + "updateQueue": Object { + "baseState": Object { + "element": , + }, + "expirationTime": 0, + "firstCapturedEffect": null, + "firstCapturedUpdate": null, + "firstEffect": null, + "firstUpdate": null, + "lastCapturedEffect": null, + "lastCapturedUpdate": null, + "lastEffect": null, + "lastUpdate": null, + }, + }, + "selfBaseTime": 0, + "sibling": null, + "stateNode": WrapperComponent { + "_reactInternalFiber": [Circular], + "_reactInternalInstance": Object {}, + "context": Object {}, + "props": Object { + "Component": [Function], + "context": null, + "props": Object {}, + }, + "refs": Object {}, + "state": Object { + "context": null, + "mount": true, + "props": Object {}, + }, + "updater": Object { + "enqueueForceUpdate": [Function], + "enqueueReplaceState": [Function], + "enqueueSetState": [Function], + "isMounted": [Function], + }, + }, + "tag": 2, + "treeBaseTime": 0, + "type": [Function], + "updateQueue": null, + }, + "_debugSource": null, + "alternate": null, + "child": [Circular], + "effectTag": 5, + "expirationTime": 0, + "firstEffect": null, + "index": 0, + "key": null, + "lastEffect": null, + "memoizedProps": Object {}, + "memoizedState": Object { + "cards": Array [], + }, + "mode": 0, + "nextEffect": null, + "pendingProps": Object {}, + "ref": null, + "return": FiberNode { + "_debugID": 4, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": null, + "child": [Circular], + "effectTag": 1, + "expirationTime": 0, + "firstEffect": [Circular], + "index": 0, + "key": null, + "lastEffect": [Circular], + "memoizedProps": Object { + "Component": [Function], + "context": null, + "props": Object {}, + }, + "memoizedState": Object { + "context": null, + "mount": true, + "props": Object {}, + }, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "Component": [Function], + "context": null, + "props": Object {}, + }, + "ref": null, + "return": FiberNode { + "_debugID": 1, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": FiberNode { + "_debugID": 1, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": [Circular], + "child": null, + "effectTag": 0, + "expirationTime": 1, + "firstEffect": null, + "index": 0, + "key": null, + "lastEffect": null, + "memoizedProps": null, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": null, + "ref": null, + "return": null, + "selfBaseTime": 0, + "sibling": null, + "stateNode": Object { + "containerInfo":
+
+
+

+ Add a card +

+
+
+ + + + +
+ +
+
+
+
, + "context": Object {}, + "current": [Circular], + "earliestPendingTime": 0, + "earliestSuspendedTime": 0, + "finishedWork": null, + "firstBatch": null, + "hydrate": false, + "latestPendingTime": 0, + "latestPingedTime": 0, + "latestSuspendedTime": 0, + "nextScheduledRoot": null, + "pendingChildren": null, + "pendingCommitExpirationTime": 0, + "pendingContext": null, + "remainingExpirationTime": 0, + }, + "tag": 3, + "treeBaseTime": 0, + "type": null, + "updateQueue": Object { + "baseState": null, + "expirationTime": 1, + "firstCapturedEffect": null, + "firstCapturedUpdate": null, + "firstEffect": null, + "firstUpdate": Object { + "callback": null, + "expirationTime": 1, + "next": null, + "nextEffect": null, + "payload": Object { + "element": , + }, + "tag": 0, + }, + "lastCapturedEffect": null, + "lastCapturedUpdate": null, + "lastEffect": null, + "lastUpdate": Object { + "callback": null, + "expirationTime": 1, + "next": null, + "nextEffect": null, + "payload": Object { + "element": , + }, + "tag": 0, + }, + }, + }, + "child": [Circular], + "effectTag": 32, + "expirationTime": 0, + "firstEffect": [Circular], + "index": 0, + "key": null, + "lastEffect": [Circular], + "memoizedProps": null, + "memoizedState": Object { + "element": , + }, + "mode": 0, + "nextEffect": null, + "pendingProps": null, + "ref": null, + "return": null, + "selfBaseTime": 0, + "sibling": null, + "stateNode": Object { + "containerInfo":
+
+
+

+ Add a card +

+
+
+ + + + +
+ +
+
+
+
, + "context": Object {}, + "current": [Circular], + "earliestPendingTime": 0, + "earliestSuspendedTime": 0, + "finishedWork": null, + "firstBatch": null, + "hydrate": false, + "latestPendingTime": 0, + "latestPingedTime": 0, + "latestSuspendedTime": 0, + "nextScheduledRoot": null, + "pendingChildren": null, + "pendingCommitExpirationTime": 0, + "pendingContext": null, + "remainingExpirationTime": 0, + }, + "tag": 3, + "treeBaseTime": 0, + "type": null, + "updateQueue": Object { + "baseState": Object { + "element": , + }, + "expirationTime": 0, + "firstCapturedEffect": null, + "firstCapturedUpdate": null, + "firstEffect": null, + "firstUpdate": null, + "lastCapturedEffect": null, + "lastCapturedUpdate": null, + "lastEffect": null, + "lastUpdate": null, + }, + }, + "selfBaseTime": 0, + "sibling": null, + "stateNode": WrapperComponent { + "_reactInternalFiber": [Circular], + "_reactInternalInstance": Object {}, + "context": Object {}, + "props": Object { + "Component": [Function], + "context": null, + "props": Object {}, + }, + "refs": Object {}, + "state": Object { + "context": null, + "mount": true, + "props": Object {}, + }, + "updater": Object { + "enqueueForceUpdate": [Function], + "enqueueReplaceState": [Function], + "enqueueSetState": [Function], + "isMounted": [Function], + }, + }, + "tag": 2, + "treeBaseTime": 0, + "type": [Function], + "updateQueue": null, + }, + "selfBaseTime": 0, + "sibling": null, + "stateNode": Board { + "_reactInternalFiber": [Circular], + "_reactInternalInstance": Object {}, + "addCard": [Function], + "componentDidMount": [Function], + "context": Object {}, + "props": Object {}, + "refs": Object {}, + "removeCard": [Function], + "renderCardList": [Function], + "state": Object { + "cards": Array [], + }, + "updater": Object { + "enqueueForceUpdate": [Function], + "enqueueReplaceState": [Function], + "enqueueSetState": [Function], + "isMounted": [Function], + }, + }, + "tag": 2, + "treeBaseTime": 0, + "type": [Function], + "updateQueue": null, + }, + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/Board.js", + "lineNumber": 83, + }, + "alternate": null, + "child": FiberNode { + "_debugID": 7, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 0, + "key": null, + "lastEffect": null, + "memoizedProps": Array [], + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Array [], + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": [Circular], + "stateNode": null, + "tag": 10, + "treeBaseTime": 0, + "type": null, + "updateQueue": null, + }, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 0, + "key": null, + "lastEffect": null, + "memoizedProps": Object { + "children": Array [ + Array [], + , + ], + "className": "board", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": Array [ + Array [], + , + ], + "className": "board", + }, + "ref": null, + "return": FiberNode { + "_debugID": 5, + "_debugIsCurrentlyTiming": false, + "_debugOwner": FiberNode { + "_debugID": 4, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": null, + "child": [Circular], + "effectTag": 1, + "expirationTime": 0, + "firstEffect": [Circular], + "index": 0, + "key": null, + "lastEffect": [Circular], + "memoizedProps": Object { + "Component": [Function], + "context": null, + "props": Object {}, + }, + "memoizedState": Object { + "context": null, + "mount": true, + "props": Object {}, + }, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "Component": [Function], + "context": null, + "props": Object {}, + }, + "ref": null, + "return": FiberNode { + "_debugID": 1, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": FiberNode { + "_debugID": 1, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": [Circular], + "child": null, + "effectTag": 0, + "expirationTime": 1, + "firstEffect": null, + "index": 0, + "key": null, + "lastEffect": null, + "memoizedProps": null, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": null, + "ref": null, + "return": null, + "selfBaseTime": 0, + "sibling": null, + "stateNode": Object { + "containerInfo":
+
+
+

+ Add a card +

+
+
+ + + + +
+ +
+
+
+
, + "context": Object {}, + "current": [Circular], + "earliestPendingTime": 0, + "earliestSuspendedTime": 0, + "finishedWork": null, + "firstBatch": null, + "hydrate": false, + "latestPendingTime": 0, + "latestPingedTime": 0, + "latestSuspendedTime": 0, + "nextScheduledRoot": null, + "pendingChildren": null, + "pendingCommitExpirationTime": 0, + "pendingContext": null, + "remainingExpirationTime": 0, + }, + "tag": 3, + "treeBaseTime": 0, + "type": null, + "updateQueue": Object { + "baseState": null, + "expirationTime": 1, + "firstCapturedEffect": null, + "firstCapturedUpdate": null, + "firstEffect": null, + "firstUpdate": Object { + "callback": null, + "expirationTime": 1, + "next": null, + "nextEffect": null, + "payload": Object { + "element": , + }, + "tag": 0, + }, + "lastCapturedEffect": null, + "lastCapturedUpdate": null, + "lastEffect": null, + "lastUpdate": Object { + "callback": null, + "expirationTime": 1, + "next": null, + "nextEffect": null, + "payload": Object { + "element": , + }, + "tag": 0, + }, + }, + }, + "child": [Circular], + "effectTag": 32, + "expirationTime": 0, + "firstEffect": [Circular], + "index": 0, + "key": null, + "lastEffect": [Circular], + "memoizedProps": null, + "memoizedState": Object { + "element": , + }, + "mode": 0, + "nextEffect": null, + "pendingProps": null, + "ref": null, + "return": null, + "selfBaseTime": 0, + "sibling": null, + "stateNode": Object { + "containerInfo":
+
+
+

+ Add a card +

+
+
+ + + + +
+ +
+
+
+
, + "context": Object {}, + "current": [Circular], + "earliestPendingTime": 0, + "earliestSuspendedTime": 0, + "finishedWork": null, + "firstBatch": null, + "hydrate": false, + "latestPendingTime": 0, + "latestPingedTime": 0, + "latestSuspendedTime": 0, + "nextScheduledRoot": null, + "pendingChildren": null, + "pendingCommitExpirationTime": 0, + "pendingContext": null, + "remainingExpirationTime": 0, + }, + "tag": 3, + "treeBaseTime": 0, + "type": null, + "updateQueue": Object { + "baseState": Object { + "element": , + }, + "expirationTime": 0, + "firstCapturedEffect": null, + "firstCapturedUpdate": null, + "firstEffect": null, + "firstUpdate": null, + "lastCapturedEffect": null, + "lastCapturedUpdate": null, + "lastEffect": null, + "lastUpdate": null, + }, + }, + "selfBaseTime": 0, + "sibling": null, + "stateNode": WrapperComponent { + "_reactInternalFiber": [Circular], + "_reactInternalInstance": Object {}, + "context": Object {}, + "props": Object { + "Component": [Function], + "context": null, + "props": Object {}, + }, + "refs": Object {}, + "state": Object { + "context": null, + "mount": true, + "props": Object {}, + }, + "updater": Object { + "enqueueForceUpdate": [Function], + "enqueueReplaceState": [Function], + "enqueueSetState": [Function], + "isMounted": [Function], + }, + }, + "tag": 2, + "treeBaseTime": 0, + "type": [Function], + "updateQueue": null, + }, + "_debugSource": null, + "alternate": null, + "child": [Circular], + "effectTag": 5, + "expirationTime": 0, + "firstEffect": null, + "index": 0, + "key": null, + "lastEffect": null, + "memoizedProps": Object {}, + "memoizedState": Object { + "cards": Array [], + }, + "mode": 0, + "nextEffect": null, + "pendingProps": Object {}, + "ref": null, + "return": FiberNode { + "_debugID": 4, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": null, + "child": [Circular], + "effectTag": 1, + "expirationTime": 0, + "firstEffect": [Circular], + "index": 0, + "key": null, + "lastEffect": [Circular], + "memoizedProps": Object { + "Component": [Function], + "context": null, + "props": Object {}, + }, + "memoizedState": Object { + "context": null, + "mount": true, + "props": Object {}, + }, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "Component": [Function], + "context": null, + "props": Object {}, + }, + "ref": null, + "return": FiberNode { + "_debugID": 1, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": FiberNode { + "_debugID": 1, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": [Circular], + "child": null, + "effectTag": 0, + "expirationTime": 1, + "firstEffect": null, + "index": 0, + "key": null, + "lastEffect": null, + "memoizedProps": null, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": null, + "ref": null, + "return": null, + "selfBaseTime": 0, + "sibling": null, + "stateNode": Object { + "containerInfo":
+
+
+

+ Add a card +

+
+
+ + + + +
+ +
+
+
+
, + "context": Object {}, + "current": [Circular], + "earliestPendingTime": 0, + "earliestSuspendedTime": 0, + "finishedWork": null, + "firstBatch": null, + "hydrate": false, + "latestPendingTime": 0, + "latestPingedTime": 0, + "latestSuspendedTime": 0, + "nextScheduledRoot": null, + "pendingChildren": null, + "pendingCommitExpirationTime": 0, + "pendingContext": null, + "remainingExpirationTime": 0, + }, + "tag": 3, + "treeBaseTime": 0, + "type": null, + "updateQueue": Object { + "baseState": null, + "expirationTime": 1, + "firstCapturedEffect": null, + "firstCapturedUpdate": null, + "firstEffect": null, + "firstUpdate": Object { + "callback": null, + "expirationTime": 1, + "next": null, + "nextEffect": null, + "payload": Object { + "element": , + }, + "tag": 0, + }, + "lastCapturedEffect": null, + "lastCapturedUpdate": null, + "lastEffect": null, + "lastUpdate": Object { + "callback": null, + "expirationTime": 1, + "next": null, + "nextEffect": null, + "payload": Object { + "element": , + }, + "tag": 0, + }, + }, + }, + "child": [Circular], + "effectTag": 32, + "expirationTime": 0, + "firstEffect": [Circular], + "index": 0, + "key": null, + "lastEffect": [Circular], + "memoizedProps": null, + "memoizedState": Object { + "element": , + }, + "mode": 0, + "nextEffect": null, + "pendingProps": null, + "ref": null, + "return": null, + "selfBaseTime": 0, + "sibling": null, + "stateNode": Object { + "containerInfo":
+
+
+

+ Add a card +

+
+
+ + + + +
+ +
+
+
+
, + "context": Object {}, + "current": [Circular], + "earliestPendingTime": 0, + "earliestSuspendedTime": 0, + "finishedWork": null, + "firstBatch": null, + "hydrate": false, + "latestPendingTime": 0, + "latestPingedTime": 0, + "latestSuspendedTime": 0, + "nextScheduledRoot": null, + "pendingChildren": null, + "pendingCommitExpirationTime": 0, + "pendingContext": null, + "remainingExpirationTime": 0, + }, + "tag": 3, + "treeBaseTime": 0, + "type": null, + "updateQueue": Object { + "baseState": Object { + "element": , + }, + "expirationTime": 0, + "firstCapturedEffect": null, + "firstCapturedUpdate": null, + "firstEffect": null, + "firstUpdate": null, + "lastCapturedEffect": null, + "lastCapturedUpdate": null, + "lastEffect": null, + "lastUpdate": null, + }, + }, + "selfBaseTime": 0, + "sibling": null, + "stateNode": WrapperComponent { + "_reactInternalFiber": [Circular], + "_reactInternalInstance": Object {}, + "context": Object {}, + "props": Object { + "Component": [Function], + "context": null, + "props": Object {}, + }, + "refs": Object {}, + "state": Object { + "context": null, + "mount": true, + "props": Object {}, + }, + "updater": Object { + "enqueueForceUpdate": [Function], + "enqueueReplaceState": [Function], + "enqueueSetState": [Function], + "isMounted": [Function], + }, + }, + "tag": 2, + "treeBaseTime": 0, + "type": [Function], + "updateQueue": null, + }, + "selfBaseTime": 0, + "sibling": null, + "stateNode": Board { + "_reactInternalFiber": [Circular], + "_reactInternalInstance": Object {}, + "addCard": [Function], + "componentDidMount": [Function], + "context": Object {}, + "props": Object {}, + "refs": Object {}, + "removeCard": [Function], + "renderCardList": [Function], + "state": Object { + "cards": Array [], + }, + "updater": Object { + "enqueueForceUpdate": [Function], + "enqueueReplaceState": [Function], + "enqueueSetState": [Function], + "isMounted": [Function], + }, + }, + "tag": 2, + "treeBaseTime": 0, + "type": [Function], + "updateQueue": null, + }, + "selfBaseTime": 0, + "sibling": null, + "stateNode":
+
+

+ Add a card +

+
+
+ + + + +
+ +
+
+
, + "tag": 5, + "treeBaseTime": 0, + "type": "div", + "updateQueue": null, + }, + "selfBaseTime": 0, + "sibling": null, + "stateNode": [Circular], + "tag": 2, + "treeBaseTime": 0, + "type": [Function], + "updateQueue": null, + }, + "_reactInternalInstance": Object {}, + "clearForm": [Function], + "context": Object {}, + "onFieldChange": [Function], + "onFormSubmit": [Function], + "props": Object { + "addCardCallback": [Function], + }, + "refs": Object {}, + "state": Object { + "emoji": "", + "text": "", + }, + "updater": Object { + "enqueueForceUpdate": [Function], + "enqueueReplaceState": [Function], + "enqueueSetState": [Function], + "isMounted": [Function], + }, + }, + "key": undefined, + "nodeType": "class", + "props": Object { + "addCardCallback": [Function], + }, + "ref": null, + "rendered": Object { + "instance":
+

+ Add a card +

+
+
+ + + + +
+ +
+
, + "key": undefined, + "nodeType": "host", + "props": Object { + "children": Array [ +

+ Add a card +

, +
+
+ + + + +
+ +
, + ], + "className": "new-card-form", + }, + "ref": null, + "rendered": Array [ + Object { + "instance":

+ Add a card +

, + "key": undefined, + "nodeType": "host", + "props": Object { + "children": "Add a card", + "className": "new-card-form__header", + }, + "ref": null, + "rendered": Array [ + "Add a card", + ], + "type": "h3", + }, + Object { + "instance":
+
+ + + + +
+ +
, + "key": undefined, + "nodeType": "host", + "props": Object { + "children": Array [ +
+ + + + +
, + , + ], + "onSubmit": [Function], + }, + "ref": null, + "rendered": Array [ + Object { + "instance":
+ + + + +
, + "key": undefined, + "nodeType": "host", + "props": Object { + "children": Array [ + , + , + , + , + ], + "className": "new-card-form__form", + }, + "ref": null, + "rendered": Array [ + Object { + "instance": , + "key": undefined, + "nodeType": "host", + "props": Object { + "children": "Message: ", + "className": "new-card-form__form-label", + "htmlFor": "text", + }, + "ref": null, + "rendered": Array [ + "Message: ", + ], + "type": "label", + }, + Object { + "instance": , + "key": undefined, + "nodeType": "host", + "props": Object { + "className": "new-card-form__form-textarea", + "name": "text", + "onChange": [Function], + "type": "text", + "value": "", + }, + "ref": null, + "rendered": Array [ + undefined, + ], + "type": "input", + }, + Object { + "instance": , + "key": undefined, + "nodeType": "host", + "props": Object { + "children": "Emoji: ", + "className": "new-card-form__form-label", + "htmlFor": "emoji", + }, + "ref": null, + "rendered": Array [ + "Emoji: ", + ], + "type": "label", + }, + Object { + "instance": , + "key": undefined, + "nodeType": "host", + "props": Object { + "children": Array [ + Array [ + , + , + , + , + , + , + , + ], + ";", + ], + "className": "new-card-form__form-textarea", + "name": "emoji", + "onChange": [Function], + "value": "", + }, + "ref": null, + "rendered": Array [ + Object { + "instance": , + "key": "heart_eyes", + "nodeType": "host", + "props": Object { + "children": "😍", + "value": "heart_eyes", + }, + "ref": null, + "rendered": Array [ + "😍", + ], + "type": "option", + }, + Object { + "instance": , + "key": "beer", + "nodeType": "host", + "props": Object { + "children": "🍺", + "value": "beer", + }, + "ref": null, + "rendered": Array [ + "🍺", + ], + "type": "option", + }, + Object { + "instance": , + "key": "clap", + "nodeType": "host", + "props": Object { + "children": "👏", + "value": "clap", + }, + "ref": null, + "rendered": Array [ + "👏", + ], + "type": "option", + }, + Object { + "instance": , + "key": "sparkling_heart", + "nodeType": "host", + "props": Object { + "children": "💖", + "value": "sparkling_heart", + }, + "ref": null, + "rendered": Array [ + "💖", + ], + "type": "option", + }, + Object { + "instance": , + "key": "heart_eyes_cat", + "nodeType": "host", + "props": Object { + "children": "😻", + "value": "heart_eyes_cat", + }, + "ref": null, + "rendered": Array [ + "😻", + ], + "type": "option", + }, + Object { + "instance": , + "key": "dog", + "nodeType": "host", + "props": Object { + "children": "🐶", + "value": "dog", + }, + "ref": null, + "rendered": Array [ + "🐶", + ], + "type": "option", + }, + Object { + "instance": , + "key": "robot", + "nodeType": "host", + "props": Object { + "children": "🤖", + "value": "robot", + }, + "ref": null, + "rendered": Array [ + "🤖", + ], + "type": "option", + }, + ";", + ], + "type": "select", + }, + ], + "type": "div", + }, + Object { + "instance": , + "key": undefined, + "nodeType": "host", + "props": Object { + "type": "submit", + "value": "Add Card", + }, + "ref": null, + "rendered": Array [ + undefined, + ], + "type": "input", + }, + ], + "type": "form", + }, + ], + "type": "div", + }, + "type": [Function], + }, + ], + "type": "div", + }, + "type": [Function], + }, + Symbol(enzyme.__nodes__): Array [ + Object { + "instance": Board { + "_reactInternalFiber": FiberNode { + "_debugID": 5, + "_debugIsCurrentlyTiming": false, + "_debugOwner": FiberNode { + "_debugID": 4, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": null, + "child": [Circular], + "effectTag": 1, + "expirationTime": 0, + "firstEffect": [Circular], + "index": 0, + "key": null, + "lastEffect": [Circular], + "memoizedProps": Object { + "Component": [Function], + "context": null, + "props": Object {}, + }, + "memoizedState": Object { + "context": null, + "mount": true, + "props": Object {}, + }, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "Component": [Function], + "context": null, + "props": Object {}, + }, + "ref": null, + "return": FiberNode { + "_debugID": 1, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": FiberNode { + "_debugID": 1, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": [Circular], + "child": null, + "effectTag": 0, + "expirationTime": 1, + "firstEffect": null, + "index": 0, + "key": null, + "lastEffect": null, + "memoizedProps": null, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": null, + "ref": null, + "return": null, + "selfBaseTime": 0, + "sibling": null, + "stateNode": Object { + "containerInfo":
+
+
+

+ Add a card +

+
+
+ + + + +
+ +
+
+
+
, + "context": Object {}, + "current": [Circular], + "earliestPendingTime": 0, + "earliestSuspendedTime": 0, + "finishedWork": null, + "firstBatch": null, + "hydrate": false, + "latestPendingTime": 0, + "latestPingedTime": 0, + "latestSuspendedTime": 0, + "nextScheduledRoot": null, + "pendingChildren": null, + "pendingCommitExpirationTime": 0, + "pendingContext": null, + "remainingExpirationTime": 0, + }, + "tag": 3, + "treeBaseTime": 0, + "type": null, + "updateQueue": Object { + "baseState": null, + "expirationTime": 1, + "firstCapturedEffect": null, + "firstCapturedUpdate": null, + "firstEffect": null, + "firstUpdate": Object { + "callback": null, + "expirationTime": 1, + "next": null, + "nextEffect": null, + "payload": Object { + "element": , + }, + "tag": 0, + }, + "lastCapturedEffect": null, + "lastCapturedUpdate": null, + "lastEffect": null, + "lastUpdate": Object { + "callback": null, + "expirationTime": 1, + "next": null, + "nextEffect": null, + "payload": Object { + "element": , + }, + "tag": 0, + }, + }, + }, + "child": [Circular], + "effectTag": 32, + "expirationTime": 0, + "firstEffect": [Circular], + "index": 0, + "key": null, + "lastEffect": [Circular], + "memoizedProps": null, + "memoizedState": Object { + "element": , + }, + "mode": 0, + "nextEffect": null, + "pendingProps": null, + "ref": null, + "return": null, + "selfBaseTime": 0, + "sibling": null, + "stateNode": Object { + "containerInfo":
+
+
+

+ Add a card +

+
+
+ + + + +
+ +
+
+
+
, + "context": Object {}, + "current": [Circular], + "earliestPendingTime": 0, + "earliestSuspendedTime": 0, + "finishedWork": null, + "firstBatch": null, + "hydrate": false, + "latestPendingTime": 0, + "latestPingedTime": 0, + "latestSuspendedTime": 0, + "nextScheduledRoot": null, + "pendingChildren": null, + "pendingCommitExpirationTime": 0, + "pendingContext": null, + "remainingExpirationTime": 0, + }, + "tag": 3, + "treeBaseTime": 0, + "type": null, + "updateQueue": Object { + "baseState": Object { + "element": , + }, + "expirationTime": 0, + "firstCapturedEffect": null, + "firstCapturedUpdate": null, + "firstEffect": null, + "firstUpdate": null, + "lastCapturedEffect": null, + "lastCapturedUpdate": null, + "lastEffect": null, + "lastUpdate": null, + }, + }, + "selfBaseTime": 0, + "sibling": null, + "stateNode": WrapperComponent { + "_reactInternalFiber": [Circular], + "_reactInternalInstance": Object {}, + "context": Object {}, + "props": Object { + "Component": [Function], + "context": null, + "props": Object {}, + }, + "refs": Object {}, + "state": Object { + "context": null, + "mount": true, + "props": Object {}, + }, + "updater": Object { + "enqueueForceUpdate": [Function], + "enqueueReplaceState": [Function], + "enqueueSetState": [Function], + "isMounted": [Function], + }, + }, + "tag": 2, + "treeBaseTime": 0, + "type": [Function], + "updateQueue": null, + }, + "_debugSource": null, + "alternate": null, + "child": FiberNode { + "_debugID": 6, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/Board.js", + "lineNumber": 83, + }, + "alternate": null, + "child": FiberNode { + "_debugID": 7, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 0, + "key": null, + "lastEffect": null, + "memoizedProps": Array [], + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Array [], + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": FiberNode { + "_debugID": 8, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/Board.js", + "lineNumber": 85, + }, + "alternate": null, + "child": FiberNode { + "_debugID": 9, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 44, + }, + "alternate": null, + "child": FiberNode { + "_debugID": 10, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 45, + }, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 0, + "key": null, + "lastEffect": null, + "memoizedProps": Object { + "children": "Add a card", + "className": "new-card-form__header", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": "Add a card", + "className": "new-card-form__header", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": FiberNode { + "_debugID": 11, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 46, + }, + "alternate": null, + "child": FiberNode { + "_debugID": 12, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 48, + }, + "alternate": null, + "child": FiberNode { + "_debugID": 14, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 49, + }, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 0, + "key": null, + "lastEffect": null, + "memoizedProps": Object { + "children": "Message: ", + "className": "new-card-form__form-label", + "htmlFor": "text", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": "Message: ", + "className": "new-card-form__form-label", + "htmlFor": "text", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": FiberNode { + "_debugID": 15, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 50, + }, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 1, + "key": null, + "lastEffect": null, + "memoizedProps": Object { + "className": "new-card-form__form-textarea", + "name": "text", + "onChange": [Function], + "type": "text", + "value": "", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "className": "new-card-form__form-textarea", + "name": "text", + "onChange": [Function], + "type": "text", + "value": "", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": FiberNode { + "_debugID": 16, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 57, + }, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 2, + "key": null, + "lastEffect": null, + "memoizedProps": Object { + "children": "Emoji: ", + "className": "new-card-form__form-label", + "htmlFor": "emoji", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": "Emoji: ", + "className": "new-card-form__form-label", + "htmlFor": "emoji", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": FiberNode { + "_debugID": 17, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 58, + }, + "alternate": null, + "child": FiberNode { + "_debugID": 18, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": null, + "child": FiberNode { + "_debugID": 20, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 63, + }, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 0, + "key": "", + "lastEffect": null, + "memoizedProps": Object { + "children": undefined, + "value": "", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": undefined, + "value": "", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": FiberNode { + "_debugID": 21, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 63, + }, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 1, + "key": "heart_eyes", + "lastEffect": null, + "memoizedProps": Object { + "children": "😍", + "value": "heart_eyes", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": "😍", + "value": "heart_eyes", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": FiberNode { + "_debugID": 22, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 63, + }, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 2, + "key": "beer", + "lastEffect": null, + "memoizedProps": Object { + "children": "🍺", + "value": "beer", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": "🍺", + "value": "beer", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": FiberNode { + "_debugID": 23, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 63, + }, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 3, + "key": "clap", + "lastEffect": null, + "memoizedProps": Object { + "children": "👏", + "value": "clap", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": "👏", + "value": "clap", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": FiberNode { + "_debugID": 24, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 63, + }, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 4, + "key": "sparkling_heart", + "lastEffect": null, + "memoizedProps": Object { + "children": "💖", + "value": "sparkling_heart", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": "💖", + "value": "sparkling_heart", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": FiberNode { + "_debugID": 25, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 63, + }, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 5, + "key": "heart_eyes_cat", + "lastEffect": null, + "memoizedProps": Object { + "children": "😻", + "value": "heart_eyes_cat", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": "😻", + "value": "heart_eyes_cat", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": FiberNode { + "_debugID": 26, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 63, + }, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 6, + "key": "dog", + "lastEffect": null, + "memoizedProps": Object { + "children": "🐶", + "value": "dog", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": "🐶", + "value": "dog", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": FiberNode { + "_debugID": 27, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 63, + }, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 7, + "key": "robot", + "lastEffect": null, + "memoizedProps": Object { + "children": "🤖", + "value": "robot", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": "🤖", + "value": "robot", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": null, + "stateNode": , + "tag": 5, + "treeBaseTime": 0, + "type": "option", + "updateQueue": null, + }, + "stateNode": , + "tag": 5, + "treeBaseTime": 0, + "type": "option", + "updateQueue": null, + }, + "stateNode": , + "tag": 5, + "treeBaseTime": 0, + "type": "option", + "updateQueue": null, + }, + "stateNode": , + "tag": 5, + "treeBaseTime": 0, + "type": "option", + "updateQueue": null, + }, + "stateNode": , + "tag": 5, + "treeBaseTime": 0, + "type": "option", + "updateQueue": null, + }, + "stateNode": , + "tag": 5, + "treeBaseTime": 0, + "type": "option", + "updateQueue": null, + }, + "stateNode": , + "tag": 5, + "treeBaseTime": 0, + "type": "option", + "updateQueue": null, + }, + "stateNode": , + , + , + , + , + , + , + ], + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Array [ + , + , + , + , + , + , + , + ], + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": FiberNode { + "_debugID": 19, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 1, + "key": null, + "lastEffect": null, + "memoizedProps": ";", + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": ";", + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": null, + "stateNode": ;, + "tag": 6, + "treeBaseTime": 0, + "type": null, + "updateQueue": null, + }, + "stateNode": null, + "tag": 10, + "treeBaseTime": 0, + "type": null, + "updateQueue": null, + }, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 3, + "key": null, + "lastEffect": null, + "memoizedProps": Object { + "children": Array [ + Array [ + , + , + , + , + , + , + , + ], + ";", + ], + "className": "new-card-form__form-textarea", + "name": "emoji", + "onChange": [Function], + "value": "", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": Array [ + Array [ + , + , + , + , + , + , + , + ], + ";", + ], + "className": "new-card-form__form-textarea", + "name": "emoji", + "onChange": [Function], + "value": "", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": null, + "stateNode": , + "tag": 5, + "treeBaseTime": 0, + "type": "select", + "updateQueue": null, + }, + "stateNode": , + "tag": 5, + "treeBaseTime": 0, + "type": "label", + "updateQueue": null, + }, + "stateNode": , + "tag": 5, + "treeBaseTime": 0, + "type": "input", + "updateQueue": null, + }, + "stateNode": , + "tag": 5, + "treeBaseTime": 0, + "type": "label", + "updateQueue": null, + }, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 0, + "key": null, + "lastEffect": null, + "memoizedProps": Object { + "children": Array [ + , + , + , + , + ], + "className": "new-card-form__form", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": Array [ + , + , + , + , + ], + "className": "new-card-form__form", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": FiberNode { + "_debugID": 13, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 66, + }, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 1, + "key": null, + "lastEffect": null, + "memoizedProps": Object { + "type": "submit", + "value": "Add Card", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "type": "submit", + "value": "Add Card", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": null, + "stateNode": , + "tag": 5, + "treeBaseTime": 0, + "type": "input", + "updateQueue": null, + }, + "stateNode":
+ + + + +
, + "tag": 5, + "treeBaseTime": 0, + "type": "div", + "updateQueue": null, + }, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 1, + "key": null, + "lastEffect": null, + "memoizedProps": Object { + "children": Array [ +
+ + + + +
, + , + ], + "onSubmit": [Function], + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": Array [ +
+ + + + +
, + , + ], + "onSubmit": [Function], + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": null, + "stateNode":
+
+ + + + +
+ +
, + "tag": 5, + "treeBaseTime": 0, + "type": "form", + "updateQueue": null, + }, + "stateNode":

+ Add a card +

, + "tag": 5, + "treeBaseTime": 0, + "type": "h3", + "updateQueue": null, + }, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 0, + "key": null, + "lastEffect": null, + "memoizedProps": Object { + "children": Array [ +

+ Add a card +

, +
+
+ + + + +
+ +
, + ], + "className": "new-card-form", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": Array [ +

+ Add a card +

, +
+
+ + + + +
+ +
, + ], + "className": "new-card-form", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": null, + "stateNode":
+

+ Add a card +

+
+
+ + + + +
+ +
+
, + "tag": 5, + "treeBaseTime": 0, + "type": "div", + "updateQueue": null, + }, + "effectTag": 1, + "expirationTime": 0, + "firstEffect": null, + "index": 1, + "key": null, + "lastEffect": null, + "memoizedProps": Object { + "addCardCallback": [Function], + }, + "memoizedState": Object { + "emoji": "", + "text": "", + }, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "addCardCallback": [Function], + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": null, + "stateNode": NewCardForm { + "_reactInternalFiber": [Circular], + "_reactInternalInstance": Object {}, + "clearForm": [Function], + "context": Object {}, + "onFieldChange": [Function], + "onFormSubmit": [Function], + "props": Object { + "addCardCallback": [Function], + }, + "refs": Object {}, + "state": Object { + "emoji": "", + "text": "", + }, + "updater": Object { + "enqueueForceUpdate": [Function], + "enqueueReplaceState": [Function], + "enqueueSetState": [Function], + "isMounted": [Function], + }, + }, + "tag": 2, + "treeBaseTime": 0, + "type": [Function], + "updateQueue": null, + }, + "stateNode": null, + "tag": 10, + "treeBaseTime": 0, + "type": null, + "updateQueue": null, + }, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 0, + "key": null, + "lastEffect": null, + "memoizedProps": Object { + "children": Array [ + Array [], + , + ], + "className": "board", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": Array [ + Array [], + , + ], + "className": "board", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": null, + "stateNode":
+
+

+ Add a card +

+
+
+ + + + +
+ +
+
+
, + "tag": 5, + "treeBaseTime": 0, + "type": "div", + "updateQueue": null, + }, + "effectTag": 5, + "expirationTime": 0, + "firstEffect": null, + "index": 0, + "key": null, + "lastEffect": null, + "memoizedProps": Object {}, + "memoizedState": Object { + "cards": Array [], + }, + "mode": 0, + "nextEffect": null, + "pendingProps": Object {}, + "ref": null, + "return": FiberNode { + "_debugID": 4, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": null, + "child": [Circular], + "effectTag": 1, + "expirationTime": 0, + "firstEffect": [Circular], + "index": 0, + "key": null, + "lastEffect": [Circular], + "memoizedProps": Object { + "Component": [Function], + "context": null, + "props": Object {}, + }, + "memoizedState": Object { + "context": null, + "mount": true, + "props": Object {}, + }, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "Component": [Function], + "context": null, + "props": Object {}, + }, + "ref": null, + "return": FiberNode { + "_debugID": 1, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": FiberNode { + "_debugID": 1, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": [Circular], + "child": null, + "effectTag": 0, + "expirationTime": 1, + "firstEffect": null, + "index": 0, + "key": null, + "lastEffect": null, + "memoizedProps": null, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": null, + "ref": null, + "return": null, + "selfBaseTime": 0, + "sibling": null, + "stateNode": Object { + "containerInfo":
+
+
+

+ Add a card +

+
+
+ + + + +
+ +
+
+
+
, + "context": Object {}, + "current": [Circular], + "earliestPendingTime": 0, + "earliestSuspendedTime": 0, + "finishedWork": null, + "firstBatch": null, + "hydrate": false, + "latestPendingTime": 0, + "latestPingedTime": 0, + "latestSuspendedTime": 0, + "nextScheduledRoot": null, + "pendingChildren": null, + "pendingCommitExpirationTime": 0, + "pendingContext": null, + "remainingExpirationTime": 0, + }, + "tag": 3, + "treeBaseTime": 0, + "type": null, + "updateQueue": Object { + "baseState": null, + "expirationTime": 1, + "firstCapturedEffect": null, + "firstCapturedUpdate": null, + "firstEffect": null, + "firstUpdate": Object { + "callback": null, + "expirationTime": 1, + "next": null, + "nextEffect": null, + "payload": Object { + "element": , + }, + "tag": 0, + }, + "lastCapturedEffect": null, + "lastCapturedUpdate": null, + "lastEffect": null, + "lastUpdate": Object { + "callback": null, + "expirationTime": 1, + "next": null, + "nextEffect": null, + "payload": Object { + "element": , + }, + "tag": 0, + }, + }, + }, + "child": [Circular], + "effectTag": 32, + "expirationTime": 0, + "firstEffect": [Circular], + "index": 0, + "key": null, + "lastEffect": [Circular], + "memoizedProps": null, + "memoizedState": Object { + "element": , + }, + "mode": 0, + "nextEffect": null, + "pendingProps": null, + "ref": null, + "return": null, + "selfBaseTime": 0, + "sibling": null, + "stateNode": Object { + "containerInfo":
+
+
+

+ Add a card +

+
+
+ + + + +
+ +
+
+
+
, + "context": Object {}, + "current": [Circular], + "earliestPendingTime": 0, + "earliestSuspendedTime": 0, + "finishedWork": null, + "firstBatch": null, + "hydrate": false, + "latestPendingTime": 0, + "latestPingedTime": 0, + "latestSuspendedTime": 0, + "nextScheduledRoot": null, + "pendingChildren": null, + "pendingCommitExpirationTime": 0, + "pendingContext": null, + "remainingExpirationTime": 0, + }, + "tag": 3, + "treeBaseTime": 0, + "type": null, + "updateQueue": Object { + "baseState": Object { + "element": , + }, + "expirationTime": 0, + "firstCapturedEffect": null, + "firstCapturedUpdate": null, + "firstEffect": null, + "firstUpdate": null, + "lastCapturedEffect": null, + "lastCapturedUpdate": null, + "lastEffect": null, + "lastUpdate": null, + }, + }, + "selfBaseTime": 0, + "sibling": null, + "stateNode": WrapperComponent { + "_reactInternalFiber": [Circular], + "_reactInternalInstance": Object {}, + "context": Object {}, + "props": Object { + "Component": [Function], + "context": null, + "props": Object {}, + }, + "refs": Object {}, + "state": Object { + "context": null, + "mount": true, + "props": Object {}, + }, + "updater": Object { + "enqueueForceUpdate": [Function], + "enqueueReplaceState": [Function], + "enqueueSetState": [Function], + "isMounted": [Function], + }, + }, + "tag": 2, + "treeBaseTime": 0, + "type": [Function], + "updateQueue": null, + }, + "selfBaseTime": 0, + "sibling": null, + "stateNode": [Circular], + "tag": 2, + "treeBaseTime": 0, + "type": [Function], + "updateQueue": null, + }, + "_reactInternalInstance": Object {}, + "addCard": [Function], + "componentDidMount": [Function], + "context": Object {}, + "props": Object {}, + "refs": Object {}, + "removeCard": [Function], + "renderCardList": [Function], + "state": Object { + "cards": Array [], + }, + "updater": Object { + "enqueueForceUpdate": [Function], + "enqueueReplaceState": [Function], + "enqueueSetState": [Function], + "isMounted": [Function], + }, + }, + "key": undefined, + "nodeType": "class", + "props": Object {}, + "ref": null, + "rendered": Object { + "instance":
+
+

+ Add a card +

+
+
+ + + + +
+ +
+
+
, + "key": undefined, + "nodeType": "host", + "props": Object { + "children": Array [ + Array [], + , + ], + "className": "board", + }, + "ref": null, + "rendered": Array [ + null, + Object { + "instance": NewCardForm { + "_reactInternalFiber": FiberNode { + "_debugID": 8, + "_debugIsCurrentlyTiming": false, + "_debugOwner": FiberNode { + "_debugID": 5, + "_debugIsCurrentlyTiming": false, + "_debugOwner": FiberNode { + "_debugID": 4, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": null, + "child": [Circular], + "effectTag": 1, + "expirationTime": 0, + "firstEffect": [Circular], + "index": 0, + "key": null, + "lastEffect": [Circular], + "memoizedProps": Object { + "Component": [Function], + "context": null, + "props": Object {}, + }, + "memoizedState": Object { + "context": null, + "mount": true, + "props": Object {}, + }, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "Component": [Function], + "context": null, + "props": Object {}, + }, + "ref": null, + "return": FiberNode { + "_debugID": 1, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": FiberNode { + "_debugID": 1, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": [Circular], + "child": null, + "effectTag": 0, + "expirationTime": 1, + "firstEffect": null, + "index": 0, + "key": null, + "lastEffect": null, + "memoizedProps": null, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": null, + "ref": null, + "return": null, + "selfBaseTime": 0, + "sibling": null, + "stateNode": Object { + "containerInfo":
+
+
+

+ Add a card +

+
+
+ + + + +
+ +
+
+
+
, + "context": Object {}, + "current": [Circular], + "earliestPendingTime": 0, + "earliestSuspendedTime": 0, + "finishedWork": null, + "firstBatch": null, + "hydrate": false, + "latestPendingTime": 0, + "latestPingedTime": 0, + "latestSuspendedTime": 0, + "nextScheduledRoot": null, + "pendingChildren": null, + "pendingCommitExpirationTime": 0, + "pendingContext": null, + "remainingExpirationTime": 0, + }, + "tag": 3, + "treeBaseTime": 0, + "type": null, + "updateQueue": Object { + "baseState": null, + "expirationTime": 1, + "firstCapturedEffect": null, + "firstCapturedUpdate": null, + "firstEffect": null, + "firstUpdate": Object { + "callback": null, + "expirationTime": 1, + "next": null, + "nextEffect": null, + "payload": Object { + "element": , + }, + "tag": 0, + }, + "lastCapturedEffect": null, + "lastCapturedUpdate": null, + "lastEffect": null, + "lastUpdate": Object { + "callback": null, + "expirationTime": 1, + "next": null, + "nextEffect": null, + "payload": Object { + "element": , + }, + "tag": 0, + }, + }, + }, + "child": [Circular], + "effectTag": 32, + "expirationTime": 0, + "firstEffect": [Circular], + "index": 0, + "key": null, + "lastEffect": [Circular], + "memoizedProps": null, + "memoizedState": Object { + "element": , + }, + "mode": 0, + "nextEffect": null, + "pendingProps": null, + "ref": null, + "return": null, + "selfBaseTime": 0, + "sibling": null, + "stateNode": Object { + "containerInfo":
+
+
+

+ Add a card +

+
+
+ + + + +
+ +
+
+
+
, + "context": Object {}, + "current": [Circular], + "earliestPendingTime": 0, + "earliestSuspendedTime": 0, + "finishedWork": null, + "firstBatch": null, + "hydrate": false, + "latestPendingTime": 0, + "latestPingedTime": 0, + "latestSuspendedTime": 0, + "nextScheduledRoot": null, + "pendingChildren": null, + "pendingCommitExpirationTime": 0, + "pendingContext": null, + "remainingExpirationTime": 0, + }, + "tag": 3, + "treeBaseTime": 0, + "type": null, + "updateQueue": Object { + "baseState": Object { + "element": , + }, + "expirationTime": 0, + "firstCapturedEffect": null, + "firstCapturedUpdate": null, + "firstEffect": null, + "firstUpdate": null, + "lastCapturedEffect": null, + "lastCapturedUpdate": null, + "lastEffect": null, + "lastUpdate": null, + }, + }, + "selfBaseTime": 0, + "sibling": null, + "stateNode": WrapperComponent { + "_reactInternalFiber": [Circular], + "_reactInternalInstance": Object {}, + "context": Object {}, + "props": Object { + "Component": [Function], + "context": null, + "props": Object {}, + }, + "refs": Object {}, + "state": Object { + "context": null, + "mount": true, + "props": Object {}, + }, + "updater": Object { + "enqueueForceUpdate": [Function], + "enqueueReplaceState": [Function], + "enqueueSetState": [Function], + "isMounted": [Function], + }, + }, + "tag": 2, + "treeBaseTime": 0, + "type": [Function], + "updateQueue": null, + }, + "_debugSource": null, + "alternate": null, + "child": FiberNode { + "_debugID": 6, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/Board.js", + "lineNumber": 83, + }, + "alternate": null, + "child": FiberNode { + "_debugID": 7, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 0, + "key": null, + "lastEffect": null, + "memoizedProps": Array [], + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Array [], + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": [Circular], + "stateNode": null, + "tag": 10, + "treeBaseTime": 0, + "type": null, + "updateQueue": null, + }, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 0, + "key": null, + "lastEffect": null, + "memoizedProps": Object { + "children": Array [ + Array [], + , + ], + "className": "board", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": Array [ + Array [], + , + ], + "className": "board", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": null, + "stateNode":
+
+

+ Add a card +

+
+
+ + + + +
+ +
+
+
, + "tag": 5, + "treeBaseTime": 0, + "type": "div", + "updateQueue": null, + }, + "effectTag": 5, + "expirationTime": 0, + "firstEffect": null, + "index": 0, + "key": null, + "lastEffect": null, + "memoizedProps": Object {}, + "memoizedState": Object { + "cards": Array [], + }, + "mode": 0, + "nextEffect": null, + "pendingProps": Object {}, + "ref": null, + "return": FiberNode { + "_debugID": 4, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": null, + "child": [Circular], + "effectTag": 1, + "expirationTime": 0, + "firstEffect": [Circular], + "index": 0, + "key": null, + "lastEffect": [Circular], + "memoizedProps": Object { + "Component": [Function], + "context": null, + "props": Object {}, + }, + "memoizedState": Object { + "context": null, + "mount": true, + "props": Object {}, + }, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "Component": [Function], + "context": null, + "props": Object {}, + }, + "ref": null, + "return": FiberNode { + "_debugID": 1, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": FiberNode { + "_debugID": 1, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": [Circular], + "child": null, + "effectTag": 0, + "expirationTime": 1, + "firstEffect": null, + "index": 0, + "key": null, + "lastEffect": null, + "memoizedProps": null, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": null, + "ref": null, + "return": null, + "selfBaseTime": 0, + "sibling": null, + "stateNode": Object { + "containerInfo":
+
+
+

+ Add a card +

+
+
+ + + + +
+ +
+
+
+
, + "context": Object {}, + "current": [Circular], + "earliestPendingTime": 0, + "earliestSuspendedTime": 0, + "finishedWork": null, + "firstBatch": null, + "hydrate": false, + "latestPendingTime": 0, + "latestPingedTime": 0, + "latestSuspendedTime": 0, + "nextScheduledRoot": null, + "pendingChildren": null, + "pendingCommitExpirationTime": 0, + "pendingContext": null, + "remainingExpirationTime": 0, + }, + "tag": 3, + "treeBaseTime": 0, + "type": null, + "updateQueue": Object { + "baseState": null, + "expirationTime": 1, + "firstCapturedEffect": null, + "firstCapturedUpdate": null, + "firstEffect": null, + "firstUpdate": Object { + "callback": null, + "expirationTime": 1, + "next": null, + "nextEffect": null, + "payload": Object { + "element": , + }, + "tag": 0, + }, + "lastCapturedEffect": null, + "lastCapturedUpdate": null, + "lastEffect": null, + "lastUpdate": Object { + "callback": null, + "expirationTime": 1, + "next": null, + "nextEffect": null, + "payload": Object { + "element": , + }, + "tag": 0, + }, + }, + }, + "child": [Circular], + "effectTag": 32, + "expirationTime": 0, + "firstEffect": [Circular], + "index": 0, + "key": null, + "lastEffect": [Circular], + "memoizedProps": null, + "memoizedState": Object { + "element": , + }, + "mode": 0, + "nextEffect": null, + "pendingProps": null, + "ref": null, + "return": null, + "selfBaseTime": 0, + "sibling": null, + "stateNode": Object { + "containerInfo":
+
+
+

+ Add a card +

+
+
+ + + + +
+ +
+
+
+
, + "context": Object {}, + "current": [Circular], + "earliestPendingTime": 0, + "earliestSuspendedTime": 0, + "finishedWork": null, + "firstBatch": null, + "hydrate": false, + "latestPendingTime": 0, + "latestPingedTime": 0, + "latestSuspendedTime": 0, + "nextScheduledRoot": null, + "pendingChildren": null, + "pendingCommitExpirationTime": 0, + "pendingContext": null, + "remainingExpirationTime": 0, + }, + "tag": 3, + "treeBaseTime": 0, + "type": null, + "updateQueue": Object { + "baseState": Object { + "element": , + }, + "expirationTime": 0, + "firstCapturedEffect": null, + "firstCapturedUpdate": null, + "firstEffect": null, + "firstUpdate": null, + "lastCapturedEffect": null, + "lastCapturedUpdate": null, + "lastEffect": null, + "lastUpdate": null, + }, + }, + "selfBaseTime": 0, + "sibling": null, + "stateNode": WrapperComponent { + "_reactInternalFiber": [Circular], + "_reactInternalInstance": Object {}, + "context": Object {}, + "props": Object { + "Component": [Function], + "context": null, + "props": Object {}, + }, + "refs": Object {}, + "state": Object { + "context": null, + "mount": true, + "props": Object {}, + }, + "updater": Object { + "enqueueForceUpdate": [Function], + "enqueueReplaceState": [Function], + "enqueueSetState": [Function], + "isMounted": [Function], + }, + }, + "tag": 2, + "treeBaseTime": 0, + "type": [Function], + "updateQueue": null, + }, + "selfBaseTime": 0, + "sibling": null, + "stateNode": Board { + "_reactInternalFiber": [Circular], + "_reactInternalInstance": Object {}, + "addCard": [Function], + "componentDidMount": [Function], + "context": Object {}, + "props": Object {}, + "refs": Object {}, + "removeCard": [Function], + "renderCardList": [Function], + "state": Object { + "cards": Array [], + }, + "updater": Object { + "enqueueForceUpdate": [Function], + "enqueueReplaceState": [Function], + "enqueueSetState": [Function], + "isMounted": [Function], + }, + }, + "tag": 2, + "treeBaseTime": 0, + "type": [Function], + "updateQueue": null, + }, + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/Board.js", + "lineNumber": 85, + }, + "alternate": null, + "child": FiberNode { + "_debugID": 9, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 44, + }, + "alternate": null, + "child": FiberNode { + "_debugID": 10, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 45, + }, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 0, + "key": null, + "lastEffect": null, + "memoizedProps": Object { + "children": "Add a card", + "className": "new-card-form__header", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": "Add a card", + "className": "new-card-form__header", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": FiberNode { + "_debugID": 11, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 46, + }, + "alternate": null, + "child": FiberNode { + "_debugID": 12, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 48, + }, + "alternate": null, + "child": FiberNode { + "_debugID": 14, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 49, + }, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 0, + "key": null, + "lastEffect": null, + "memoizedProps": Object { + "children": "Message: ", + "className": "new-card-form__form-label", + "htmlFor": "text", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": "Message: ", + "className": "new-card-form__form-label", + "htmlFor": "text", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": FiberNode { + "_debugID": 15, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 50, + }, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 1, + "key": null, + "lastEffect": null, + "memoizedProps": Object { + "className": "new-card-form__form-textarea", + "name": "text", + "onChange": [Function], + "type": "text", + "value": "", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "className": "new-card-form__form-textarea", + "name": "text", + "onChange": [Function], + "type": "text", + "value": "", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": FiberNode { + "_debugID": 16, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 57, + }, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 2, + "key": null, + "lastEffect": null, + "memoizedProps": Object { + "children": "Emoji: ", + "className": "new-card-form__form-label", + "htmlFor": "emoji", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": "Emoji: ", + "className": "new-card-form__form-label", + "htmlFor": "emoji", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": FiberNode { + "_debugID": 17, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 58, + }, + "alternate": null, + "child": FiberNode { + "_debugID": 18, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": null, + "child": FiberNode { + "_debugID": 20, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 63, + }, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 0, + "key": "", + "lastEffect": null, + "memoizedProps": Object { + "children": undefined, + "value": "", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": undefined, + "value": "", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": FiberNode { + "_debugID": 21, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 63, + }, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 1, + "key": "heart_eyes", + "lastEffect": null, + "memoizedProps": Object { + "children": "😍", + "value": "heart_eyes", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": "😍", + "value": "heart_eyes", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": FiberNode { + "_debugID": 22, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 63, + }, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 2, + "key": "beer", + "lastEffect": null, + "memoizedProps": Object { + "children": "🍺", + "value": "beer", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": "🍺", + "value": "beer", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": FiberNode { + "_debugID": 23, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 63, + }, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 3, + "key": "clap", + "lastEffect": null, + "memoizedProps": Object { + "children": "👏", + "value": "clap", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": "👏", + "value": "clap", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": FiberNode { + "_debugID": 24, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 63, + }, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 4, + "key": "sparkling_heart", + "lastEffect": null, + "memoizedProps": Object { + "children": "💖", + "value": "sparkling_heart", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": "💖", + "value": "sparkling_heart", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": FiberNode { + "_debugID": 25, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 63, + }, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 5, + "key": "heart_eyes_cat", + "lastEffect": null, + "memoizedProps": Object { + "children": "😻", + "value": "heart_eyes_cat", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": "😻", + "value": "heart_eyes_cat", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": FiberNode { + "_debugID": 26, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 63, + }, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 6, + "key": "dog", + "lastEffect": null, + "memoizedProps": Object { + "children": "🐶", + "value": "dog", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": "🐶", + "value": "dog", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": FiberNode { + "_debugID": 27, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 63, + }, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 7, + "key": "robot", + "lastEffect": null, + "memoizedProps": Object { + "children": "🤖", + "value": "robot", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": "🤖", + "value": "robot", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": null, + "stateNode": , + "tag": 5, + "treeBaseTime": 0, + "type": "option", + "updateQueue": null, + }, + "stateNode": , + "tag": 5, + "treeBaseTime": 0, + "type": "option", + "updateQueue": null, + }, + "stateNode": , + "tag": 5, + "treeBaseTime": 0, + "type": "option", + "updateQueue": null, + }, + "stateNode": , + "tag": 5, + "treeBaseTime": 0, + "type": "option", + "updateQueue": null, + }, + "stateNode": , + "tag": 5, + "treeBaseTime": 0, + "type": "option", + "updateQueue": null, + }, + "stateNode": , + "tag": 5, + "treeBaseTime": 0, + "type": "option", + "updateQueue": null, + }, + "stateNode": , + "tag": 5, + "treeBaseTime": 0, + "type": "option", + "updateQueue": null, + }, + "stateNode": , + , + , + , + , + , + , + ], + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Array [ + , + , + , + , + , + , + , + ], + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": FiberNode { + "_debugID": 19, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 1, + "key": null, + "lastEffect": null, + "memoizedProps": ";", + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": ";", + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": null, + "stateNode": ;, + "tag": 6, + "treeBaseTime": 0, + "type": null, + "updateQueue": null, + }, + "stateNode": null, + "tag": 10, + "treeBaseTime": 0, + "type": null, + "updateQueue": null, + }, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 3, + "key": null, + "lastEffect": null, + "memoizedProps": Object { + "children": Array [ + Array [ + , + , + , + , + , + , + , + ], + ";", + ], + "className": "new-card-form__form-textarea", + "name": "emoji", + "onChange": [Function], + "value": "", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": Array [ + Array [ + , + , + , + , + , + , + , + ], + ";", + ], + "className": "new-card-form__form-textarea", + "name": "emoji", + "onChange": [Function], + "value": "", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": null, + "stateNode": , + "tag": 5, + "treeBaseTime": 0, + "type": "select", + "updateQueue": null, + }, + "stateNode": , + "tag": 5, + "treeBaseTime": 0, + "type": "label", + "updateQueue": null, + }, + "stateNode": , + "tag": 5, + "treeBaseTime": 0, + "type": "input", + "updateQueue": null, + }, + "stateNode": , + "tag": 5, + "treeBaseTime": 0, + "type": "label", + "updateQueue": null, + }, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 0, + "key": null, + "lastEffect": null, + "memoizedProps": Object { + "children": Array [ + , + , + , + , + ], + "className": "new-card-form__form", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": Array [ + , + , + , + , + ], + "className": "new-card-form__form", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": FiberNode { + "_debugID": 13, + "_debugIsCurrentlyTiming": false, + "_debugOwner": [Circular], + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/NewCardForm.js", + "lineNumber": 66, + }, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 1, + "key": null, + "lastEffect": null, + "memoizedProps": Object { + "type": "submit", + "value": "Add Card", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "type": "submit", + "value": "Add Card", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": null, + "stateNode": , + "tag": 5, + "treeBaseTime": 0, + "type": "input", + "updateQueue": null, + }, + "stateNode":
+ + + + +
, + "tag": 5, + "treeBaseTime": 0, + "type": "div", + "updateQueue": null, + }, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 1, + "key": null, + "lastEffect": null, + "memoizedProps": Object { + "children": Array [ +
+ + + + +
, + , + ], + "onSubmit": [Function], + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": Array [ +
+ + + + +
, + , + ], + "onSubmit": [Function], + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": null, + "stateNode":
+
+ + + + +
+ +
, + "tag": 5, + "treeBaseTime": 0, + "type": "form", + "updateQueue": null, + }, + "stateNode":

+ Add a card +

, + "tag": 5, + "treeBaseTime": 0, + "type": "h3", + "updateQueue": null, + }, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 0, + "key": null, + "lastEffect": null, + "memoizedProps": Object { + "children": Array [ +

+ Add a card +

, +
+
+ + + + +
+ +
, + ], + "className": "new-card-form", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": Array [ +

+ Add a card +

, +
+
+ + + + +
+ +
, + ], + "className": "new-card-form", + }, + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": null, + "stateNode":
+

+ Add a card +

+
+
+ + + + +
+ +
+
, + "tag": 5, + "treeBaseTime": 0, + "type": "div", + "updateQueue": null, + }, + "effectTag": 1, + "expirationTime": 0, + "firstEffect": null, + "index": 1, + "key": null, + "lastEffect": null, + "memoizedProps": Object { + "addCardCallback": [Function], + }, + "memoizedState": Object { + "emoji": "", + "text": "", + }, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "addCardCallback": [Function], + }, + "ref": null, + "return": FiberNode { + "_debugID": 6, + "_debugIsCurrentlyTiming": false, + "_debugOwner": FiberNode { + "_debugID": 5, + "_debugIsCurrentlyTiming": false, + "_debugOwner": FiberNode { + "_debugID": 4, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": null, + "child": [Circular], + "effectTag": 1, + "expirationTime": 0, + "firstEffect": [Circular], + "index": 0, + "key": null, + "lastEffect": [Circular], + "memoizedProps": Object { + "Component": [Function], + "context": null, + "props": Object {}, + }, + "memoizedState": Object { + "context": null, + "mount": true, + "props": Object {}, + }, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "Component": [Function], + "context": null, + "props": Object {}, + }, + "ref": null, + "return": FiberNode { + "_debugID": 1, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": FiberNode { + "_debugID": 1, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": [Circular], + "child": null, + "effectTag": 0, + "expirationTime": 1, + "firstEffect": null, + "index": 0, + "key": null, + "lastEffect": null, + "memoizedProps": null, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": null, + "ref": null, + "return": null, + "selfBaseTime": 0, + "sibling": null, + "stateNode": Object { + "containerInfo":
+
+
+

+ Add a card +

+
+
+ + + + +
+ +
+
+
+
, + "context": Object {}, + "current": [Circular], + "earliestPendingTime": 0, + "earliestSuspendedTime": 0, + "finishedWork": null, + "firstBatch": null, + "hydrate": false, + "latestPendingTime": 0, + "latestPingedTime": 0, + "latestSuspendedTime": 0, + "nextScheduledRoot": null, + "pendingChildren": null, + "pendingCommitExpirationTime": 0, + "pendingContext": null, + "remainingExpirationTime": 0, + }, + "tag": 3, + "treeBaseTime": 0, + "type": null, + "updateQueue": Object { + "baseState": null, + "expirationTime": 1, + "firstCapturedEffect": null, + "firstCapturedUpdate": null, + "firstEffect": null, + "firstUpdate": Object { + "callback": null, + "expirationTime": 1, + "next": null, + "nextEffect": null, + "payload": Object { + "element": , + }, + "tag": 0, + }, + "lastCapturedEffect": null, + "lastCapturedUpdate": null, + "lastEffect": null, + "lastUpdate": Object { + "callback": null, + "expirationTime": 1, + "next": null, + "nextEffect": null, + "payload": Object { + "element": , + }, + "tag": 0, + }, + }, + }, + "child": [Circular], + "effectTag": 32, + "expirationTime": 0, + "firstEffect": [Circular], + "index": 0, + "key": null, + "lastEffect": [Circular], + "memoizedProps": null, + "memoizedState": Object { + "element": , + }, + "mode": 0, + "nextEffect": null, + "pendingProps": null, + "ref": null, + "return": null, + "selfBaseTime": 0, + "sibling": null, + "stateNode": Object { + "containerInfo":
+
+
+

+ Add a card +

+
+
+ + + + +
+ +
+
+
+
, + "context": Object {}, + "current": [Circular], + "earliestPendingTime": 0, + "earliestSuspendedTime": 0, + "finishedWork": null, + "firstBatch": null, + "hydrate": false, + "latestPendingTime": 0, + "latestPingedTime": 0, + "latestSuspendedTime": 0, + "nextScheduledRoot": null, + "pendingChildren": null, + "pendingCommitExpirationTime": 0, + "pendingContext": null, + "remainingExpirationTime": 0, + }, + "tag": 3, + "treeBaseTime": 0, + "type": null, + "updateQueue": Object { + "baseState": Object { + "element": , + }, + "expirationTime": 0, + "firstCapturedEffect": null, + "firstCapturedUpdate": null, + "firstEffect": null, + "firstUpdate": null, + "lastCapturedEffect": null, + "lastCapturedUpdate": null, + "lastEffect": null, + "lastUpdate": null, + }, + }, + "selfBaseTime": 0, + "sibling": null, + "stateNode": WrapperComponent { + "_reactInternalFiber": [Circular], + "_reactInternalInstance": Object {}, + "context": Object {}, + "props": Object { + "Component": [Function], + "context": null, + "props": Object {}, + }, + "refs": Object {}, + "state": Object { + "context": null, + "mount": true, + "props": Object {}, + }, + "updater": Object { + "enqueueForceUpdate": [Function], + "enqueueReplaceState": [Function], + "enqueueSetState": [Function], + "isMounted": [Function], + }, + }, + "tag": 2, + "treeBaseTime": 0, + "type": [Function], + "updateQueue": null, + }, + "_debugSource": null, + "alternate": null, + "child": [Circular], + "effectTag": 5, + "expirationTime": 0, + "firstEffect": null, + "index": 0, + "key": null, + "lastEffect": null, + "memoizedProps": Object {}, + "memoizedState": Object { + "cards": Array [], + }, + "mode": 0, + "nextEffect": null, + "pendingProps": Object {}, + "ref": null, + "return": FiberNode { + "_debugID": 4, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": null, + "child": [Circular], + "effectTag": 1, + "expirationTime": 0, + "firstEffect": [Circular], + "index": 0, + "key": null, + "lastEffect": [Circular], + "memoizedProps": Object { + "Component": [Function], + "context": null, + "props": Object {}, + }, + "memoizedState": Object { + "context": null, + "mount": true, + "props": Object {}, + }, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "Component": [Function], + "context": null, + "props": Object {}, + }, + "ref": null, + "return": FiberNode { + "_debugID": 1, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": FiberNode { + "_debugID": 1, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": [Circular], + "child": null, + "effectTag": 0, + "expirationTime": 1, + "firstEffect": null, + "index": 0, + "key": null, + "lastEffect": null, + "memoizedProps": null, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": null, + "ref": null, + "return": null, + "selfBaseTime": 0, + "sibling": null, + "stateNode": Object { + "containerInfo":
+
+
+

+ Add a card +

+
+
+ + + + +
+ +
+
+
+
, + "context": Object {}, + "current": [Circular], + "earliestPendingTime": 0, + "earliestSuspendedTime": 0, + "finishedWork": null, + "firstBatch": null, + "hydrate": false, + "latestPendingTime": 0, + "latestPingedTime": 0, + "latestSuspendedTime": 0, + "nextScheduledRoot": null, + "pendingChildren": null, + "pendingCommitExpirationTime": 0, + "pendingContext": null, + "remainingExpirationTime": 0, + }, + "tag": 3, + "treeBaseTime": 0, + "type": null, + "updateQueue": Object { + "baseState": null, + "expirationTime": 1, + "firstCapturedEffect": null, + "firstCapturedUpdate": null, + "firstEffect": null, + "firstUpdate": Object { + "callback": null, + "expirationTime": 1, + "next": null, + "nextEffect": null, + "payload": Object { + "element": , + }, + "tag": 0, + }, + "lastCapturedEffect": null, + "lastCapturedUpdate": null, + "lastEffect": null, + "lastUpdate": Object { + "callback": null, + "expirationTime": 1, + "next": null, + "nextEffect": null, + "payload": Object { + "element": , + }, + "tag": 0, + }, + }, + }, + "child": [Circular], + "effectTag": 32, + "expirationTime": 0, + "firstEffect": [Circular], + "index": 0, + "key": null, + "lastEffect": [Circular], + "memoizedProps": null, + "memoizedState": Object { + "element": , + }, + "mode": 0, + "nextEffect": null, + "pendingProps": null, + "ref": null, + "return": null, + "selfBaseTime": 0, + "sibling": null, + "stateNode": Object { + "containerInfo":
+
+
+

+ Add a card +

+
+
+ + + + +
+ +
+
+
+
, + "context": Object {}, + "current": [Circular], + "earliestPendingTime": 0, + "earliestSuspendedTime": 0, + "finishedWork": null, + "firstBatch": null, + "hydrate": false, + "latestPendingTime": 0, + "latestPingedTime": 0, + "latestSuspendedTime": 0, + "nextScheduledRoot": null, + "pendingChildren": null, + "pendingCommitExpirationTime": 0, + "pendingContext": null, + "remainingExpirationTime": 0, + }, + "tag": 3, + "treeBaseTime": 0, + "type": null, + "updateQueue": Object { + "baseState": Object { + "element": , + }, + "expirationTime": 0, + "firstCapturedEffect": null, + "firstCapturedUpdate": null, + "firstEffect": null, + "firstUpdate": null, + "lastCapturedEffect": null, + "lastCapturedUpdate": null, + "lastEffect": null, + "lastUpdate": null, + }, + }, + "selfBaseTime": 0, + "sibling": null, + "stateNode": WrapperComponent { + "_reactInternalFiber": [Circular], + "_reactInternalInstance": Object {}, + "context": Object {}, + "props": Object { + "Component": [Function], + "context": null, + "props": Object {}, + }, + "refs": Object {}, + "state": Object { + "context": null, + "mount": true, + "props": Object {}, + }, + "updater": Object { + "enqueueForceUpdate": [Function], + "enqueueReplaceState": [Function], + "enqueueSetState": [Function], + "isMounted": [Function], + }, + }, + "tag": 2, + "treeBaseTime": 0, + "type": [Function], + "updateQueue": null, + }, + "selfBaseTime": 0, + "sibling": null, + "stateNode": Board { + "_reactInternalFiber": [Circular], + "_reactInternalInstance": Object {}, + "addCard": [Function], + "componentDidMount": [Function], + "context": Object {}, + "props": Object {}, + "refs": Object {}, + "removeCard": [Function], + "renderCardList": [Function], + "state": Object { + "cards": Array [], + }, + "updater": Object { + "enqueueForceUpdate": [Function], + "enqueueReplaceState": [Function], + "enqueueSetState": [Function], + "isMounted": [Function], + }, + }, + "tag": 2, + "treeBaseTime": 0, + "type": [Function], + "updateQueue": null, + }, + "_debugSource": Object { + "fileName": "/Users/norapeters/Ada/week_19/inspiration-board/src/components/Board.js", + "lineNumber": 83, + }, + "alternate": null, + "child": FiberNode { + "_debugID": 7, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": null, + "child": null, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 0, + "key": null, + "lastEffect": null, + "memoizedProps": Array [], + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Array [], + "ref": null, + "return": [Circular], + "selfBaseTime": 0, + "sibling": [Circular], + "stateNode": null, + "tag": 10, + "treeBaseTime": 0, + "type": null, + "updateQueue": null, + }, + "effectTag": 0, + "expirationTime": 0, + "firstEffect": null, + "index": 0, + "key": null, + "lastEffect": null, + "memoizedProps": Object { + "children": Array [ + Array [], + , + ], + "className": "board", + }, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "children": Array [ + Array [], + , + ], + "className": "board", + }, + "ref": null, + "return": FiberNode { + "_debugID": 5, + "_debugIsCurrentlyTiming": false, + "_debugOwner": FiberNode { + "_debugID": 4, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": null, + "child": [Circular], + "effectTag": 1, + "expirationTime": 0, + "firstEffect": [Circular], + "index": 0, + "key": null, + "lastEffect": [Circular], + "memoizedProps": Object { + "Component": [Function], + "context": null, + "props": Object {}, + }, + "memoizedState": Object { + "context": null, + "mount": true, + "props": Object {}, + }, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "Component": [Function], + "context": null, + "props": Object {}, + }, + "ref": null, + "return": FiberNode { + "_debugID": 1, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": FiberNode { + "_debugID": 1, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": [Circular], + "child": null, + "effectTag": 0, + "expirationTime": 1, + "firstEffect": null, + "index": 0, + "key": null, + "lastEffect": null, + "memoizedProps": null, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": null, + "ref": null, + "return": null, + "selfBaseTime": 0, + "sibling": null, + "stateNode": Object { + "containerInfo":
+
+
+

+ Add a card +

+
+
+ + + + +
+ +
+
+
+
, + "context": Object {}, + "current": [Circular], + "earliestPendingTime": 0, + "earliestSuspendedTime": 0, + "finishedWork": null, + "firstBatch": null, + "hydrate": false, + "latestPendingTime": 0, + "latestPingedTime": 0, + "latestSuspendedTime": 0, + "nextScheduledRoot": null, + "pendingChildren": null, + "pendingCommitExpirationTime": 0, + "pendingContext": null, + "remainingExpirationTime": 0, + }, + "tag": 3, + "treeBaseTime": 0, + "type": null, + "updateQueue": Object { + "baseState": null, + "expirationTime": 1, + "firstCapturedEffect": null, + "firstCapturedUpdate": null, + "firstEffect": null, + "firstUpdate": Object { + "callback": null, + "expirationTime": 1, + "next": null, + "nextEffect": null, + "payload": Object { + "element": , + }, + "tag": 0, + }, + "lastCapturedEffect": null, + "lastCapturedUpdate": null, + "lastEffect": null, + "lastUpdate": Object { + "callback": null, + "expirationTime": 1, + "next": null, + "nextEffect": null, + "payload": Object { + "element": , + }, + "tag": 0, + }, + }, + }, + "child": [Circular], + "effectTag": 32, + "expirationTime": 0, + "firstEffect": [Circular], + "index": 0, + "key": null, + "lastEffect": [Circular], + "memoizedProps": null, + "memoizedState": Object { + "element": , + }, + "mode": 0, + "nextEffect": null, + "pendingProps": null, + "ref": null, + "return": null, + "selfBaseTime": 0, + "sibling": null, + "stateNode": Object { + "containerInfo":
+
+
+

+ Add a card +

+
+
+ + + + +
+ +
+
+
+
, + "context": Object {}, + "current": [Circular], + "earliestPendingTime": 0, + "earliestSuspendedTime": 0, + "finishedWork": null, + "firstBatch": null, + "hydrate": false, + "latestPendingTime": 0, + "latestPingedTime": 0, + "latestSuspendedTime": 0, + "nextScheduledRoot": null, + "pendingChildren": null, + "pendingCommitExpirationTime": 0, + "pendingContext": null, + "remainingExpirationTime": 0, + }, + "tag": 3, + "treeBaseTime": 0, + "type": null, + "updateQueue": Object { + "baseState": Object { + "element": , + }, + "expirationTime": 0, + "firstCapturedEffect": null, + "firstCapturedUpdate": null, + "firstEffect": null, + "firstUpdate": null, + "lastCapturedEffect": null, + "lastCapturedUpdate": null, + "lastEffect": null, + "lastUpdate": null, + }, + }, + "selfBaseTime": 0, + "sibling": null, + "stateNode": WrapperComponent { + "_reactInternalFiber": [Circular], + "_reactInternalInstance": Object {}, + "context": Object {}, + "props": Object { + "Component": [Function], + "context": null, + "props": Object {}, + }, + "refs": Object {}, + "state": Object { + "context": null, + "mount": true, + "props": Object {}, + }, + "updater": Object { + "enqueueForceUpdate": [Function], + "enqueueReplaceState": [Function], + "enqueueSetState": [Function], + "isMounted": [Function], + }, + }, + "tag": 2, + "treeBaseTime": 0, + "type": [Function], + "updateQueue": null, + }, + "_debugSource": null, + "alternate": null, + "child": [Circular], + "effectTag": 5, + "expirationTime": 0, + "firstEffect": null, + "index": 0, + "key": null, + "lastEffect": null, + "memoizedProps": Object {}, + "memoizedState": Object { + "cards": Array [], + }, + "mode": 0, + "nextEffect": null, + "pendingProps": Object {}, + "ref": null, + "return": FiberNode { + "_debugID": 4, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": null, + "child": [Circular], + "effectTag": 1, + "expirationTime": 0, + "firstEffect": [Circular], + "index": 0, + "key": null, + "lastEffect": [Circular], + "memoizedProps": Object { + "Component": [Function], + "context": null, + "props": Object {}, + }, + "memoizedState": Object { + "context": null, + "mount": true, + "props": Object {}, + }, + "mode": 0, + "nextEffect": null, + "pendingProps": Object { + "Component": [Function], + "context": null, + "props": Object {}, + }, + "ref": null, + "return": FiberNode { + "_debugID": 1, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": FiberNode { + "_debugID": 1, + "_debugIsCurrentlyTiming": false, + "_debugOwner": null, + "_debugSource": null, + "alternate": [Circular], + "child": null, + "effectTag": 0, + "expirationTime": 1, + "firstEffect": null, + "index": 0, + "key": null, + "lastEffect": null, + "memoizedProps": null, + "memoizedState": null, + "mode": 0, + "nextEffect": null, + "pendingProps": null, + "ref": null, + "return": null, + "selfBaseTime": 0, + "sibling": null, + "stateNode": Object { + "containerInfo":
+
+
+

+ Add a card +

+
+
+ + + + +
+ +
+
+
+
, + "context": Object {}, + "current": [Circular], + "earliestPendingTime": 0, + "earliestSuspendedTime": 0, + "finishedWork": null, + "firstBatch": null, + "hydrate": false, + "latestPendingTime": 0, + "latestPingedTime": 0, + "latestSuspendedTime": 0, + "nextScheduledRoot": null, + "pendingChildren": null, + "pendingCommitExpirationTime": 0, + "pendingContext": null, + "remainingExpirationTime": 0, + }, + "tag": 3, + "treeBaseTime": 0, + "type": null, + "updateQueue": Object { + "baseState": null, + "expirationTime": 1, + "firstCapturedEffect": null, + "firstCapturedUpdate": null, + "firstEffect": null, + "firstUpdate": Object { + "callback": null, + "expirationTime": 1, + "next": null, + "nextEffect": null, + "payload": Object { + "element": , + }, + "tag": 0, + }, + "lastCapturedEffect": null, + "lastCapturedUpdate": null, + "lastEffect": null, + "lastUpdate": Object { + "callback": null, + "expirationTime": 1, + "next": null, + "nextEffect": null, + "payload": Object { + "element": , + }, + "tag": 0, + }, + }, + }, + "child": [Circular], + "effectTag": 32, + "expirationTime": 0, + "firstEffect": [Circular], + "index": 0, + "key": null, + "lastEffect": [Circular], + "memoizedProps": null, + "memoizedState": Object { + "element": , + }, + "mode": 0, + "nextEffect": null, + "pendingProps": null, + "ref": null, + "return": null, + "selfBaseTime": 0, + "sibling": null, + "stateNode": Object { + "containerInfo":
+
+
+

+ Add a card +

+
+
+ + + + +
+ +
+
+
+
, + "context": Object {}, + "current": [Circular], + "earliestPendingTime": 0, + "earliestSuspendedTime": 0, + "finishedWork": null, + "firstBatch": null, + "hydrate": false, + "latestPendingTime": 0, + "latestPingedTime": 0, + "latestSuspendedTime": 0, + "nextScheduledRoot": null, + "pendingChildren": null, + "pendingCommitExpirationTime": 0, + "pendingContext": null, + "remainingExpirationTime": 0, + }, + "tag": 3, + "treeBaseTime": 0, + "type": null, + "updateQueue": Object { + "baseState": Object { + "element": , + }, + "expirationTime": 0, + "firstCapturedEffect": null, + "firstCapturedUpdate": null, + "firstEffect": null, + "firstUpdate": null, + "lastCapturedEffect": null, + "lastCapturedUpdate": null, + "lastEffect": null, + "lastUpdate": null, + }, + }, + "selfBaseTime": 0, + "sibling": null, + "stateNode": WrapperComponent { + "_reactInternalFiber": [Circular], + "_reactInternalInstance": Object {}, + "context": Object {}, + "props": Object { + "Component": [Function], + "context": null, + "props": Object {}, + }, + "refs": Object {}, + "state": Object { + "context": null, + "mount": true, + "props": Object {}, + }, + "updater": Object { + "enqueueForceUpdate": [Function], + "enqueueReplaceState": [Function], + "enqueueSetState": [Function], + "isMounted": [Function], + }, + }, + "tag": 2, + "treeBaseTime": 0, + "type": [Function], + "updateQueue": null, + }, + "selfBaseTime": 0, + "sibling": null, + "stateNode": Board { + "_reactInternalFiber": [Circular], + "_reactInternalInstance": Object {}, + "addCard": [Function], + "componentDidMount": [Function], + "context": Object {}, + "props": Object {}, + "refs": Object {}, + "removeCard": [Function], + "renderCardList": [Function], + "state": Object { + "cards": Array [], + }, + "updater": Object { + "enqueueForceUpdate": [Function], + "enqueueReplaceState": [Function], + "enqueueSetState": [Function], + "isMounted": [Function], + }, + }, + "tag": 2, + "treeBaseTime": 0, + "type": [Function], + "updateQueue": null, + }, + "selfBaseTime": 0, + "sibling": null, + "stateNode":
+
+

+ Add a card +

+
+
+ + + + +
+ +
+
+
, + "tag": 5, + "treeBaseTime": 0, + "type": "div", + "updateQueue": null, + }, + "selfBaseTime": 0, + "sibling": null, + "stateNode": [Circular], + "tag": 2, + "treeBaseTime": 0, + "type": [Function], + "updateQueue": null, + }, + "_reactInternalInstance": Object {}, + "clearForm": [Function], + "context": Object {}, + "onFieldChange": [Function], + "onFormSubmit": [Function], + "props": Object { + "addCardCallback": [Function], + }, + "refs": Object {}, + "state": Object { + "emoji": "", + "text": "", + }, + "updater": Object { + "enqueueForceUpdate": [Function], + "enqueueReplaceState": [Function], + "enqueueSetState": [Function], + "isMounted": [Function], + }, + }, + "key": undefined, + "nodeType": "class", + "props": Object { + "addCardCallback": [Function], + }, + "ref": null, + "rendered": Object { + "instance":
+

+ Add a card +

+
+
+ + + + +
+ +
+
, + "key": undefined, + "nodeType": "host", + "props": Object { + "children": Array [ +

+ Add a card +

, +
+
+ + + + +
+ +
, + ], + "className": "new-card-form", + }, + "ref": null, + "rendered": Array [ + Object { + "instance":

+ Add a card +

, + "key": undefined, + "nodeType": "host", + "props": Object { + "children": "Add a card", + "className": "new-card-form__header", + }, + "ref": null, + "rendered": Array [ + "Add a card", + ], + "type": "h3", + }, + Object { + "instance":
+
+ + + + +
+ +
, + "key": undefined, + "nodeType": "host", + "props": Object { + "children": Array [ +
+ + + + +
, + , + ], + "onSubmit": [Function], + }, + "ref": null, + "rendered": Array [ + Object { + "instance":
+ + + + +
, + "key": undefined, + "nodeType": "host", + "props": Object { + "children": Array [ + , + , + , + , + ], + "className": "new-card-form__form", + }, + "ref": null, + "rendered": Array [ + Object { + "instance": , + "key": undefined, + "nodeType": "host", + "props": Object { + "children": "Message: ", + "className": "new-card-form__form-label", + "htmlFor": "text", + }, + "ref": null, + "rendered": Array [ + "Message: ", + ], + "type": "label", + }, + Object { + "instance": , + "key": undefined, + "nodeType": "host", + "props": Object { + "className": "new-card-form__form-textarea", + "name": "text", + "onChange": [Function], + "type": "text", + "value": "", + }, + "ref": null, + "rendered": Array [ + undefined, + ], + "type": "input", + }, + Object { + "instance": , + "key": undefined, + "nodeType": "host", + "props": Object { + "children": "Emoji: ", + "className": "new-card-form__form-label", + "htmlFor": "emoji", + }, + "ref": null, + "rendered": Array [ + "Emoji: ", + ], + "type": "label", + }, + Object { + "instance": , + "key": undefined, + "nodeType": "host", + "props": Object { + "children": Array [ + Array [ + , + , + , + , + , + , + , + ], + ";", + ], + "className": "new-card-form__form-textarea", + "name": "emoji", + "onChange": [Function], + "value": "", + }, + "ref": null, + "rendered": Array [ + Object { + "instance": , + "key": "heart_eyes", + "nodeType": "host", + "props": Object { + "children": "😍", + "value": "heart_eyes", + }, + "ref": null, + "rendered": Array [ + "😍", + ], + "type": "option", + }, + Object { + "instance": , + "key": "beer", + "nodeType": "host", + "props": Object { + "children": "🍺", + "value": "beer", + }, + "ref": null, + "rendered": Array [ + "🍺", + ], + "type": "option", + }, + Object { + "instance": , + "key": "clap", + "nodeType": "host", + "props": Object { + "children": "👏", + "value": "clap", + }, + "ref": null, + "rendered": Array [ + "👏", + ], + "type": "option", + }, + Object { + "instance": , + "key": "sparkling_heart", + "nodeType": "host", + "props": Object { + "children": "💖", + "value": "sparkling_heart", + }, + "ref": null, + "rendered": Array [ + "💖", + ], + "type": "option", + }, + Object { + "instance": , + "key": "heart_eyes_cat", + "nodeType": "host", + "props": Object { + "children": "😻", + "value": "heart_eyes_cat", + }, + "ref": null, + "rendered": Array [ + "😻", + ], + "type": "option", + }, + Object { + "instance": , + "key": "dog", + "nodeType": "host", + "props": Object { + "children": "🐶", + "value": "dog", + }, + "ref": null, + "rendered": Array [ + "🐶", + ], + "type": "option", + }, + Object { + "instance": , + "key": "robot", + "nodeType": "host", + "props": Object { + "children": "🤖", + "value": "robot", + }, + "ref": null, + "rendered": Array [ + "🤖", + ], + "type": "option", + }, + ";", + ], + "type": "select", + }, + ], + "type": "div", + }, + Object { + "instance": , + "key": undefined, + "nodeType": "host", + "props": Object { + "type": "submit", + "value": "Add Card", + }, + "ref": null, + "rendered": Array [ + undefined, + ], + "type": "input", + }, + ], + "type": "form", + }, + ], + "type": "div", + }, + "type": [Function], + }, + ], + "type": "div", + }, + "type": [Function], + }, + ], + Symbol(enzyme.__options__): Object { + "adapter": ReactSixteenAdapter { + "options": Object { + "enableComponentDidUpdateOnSetState": true, + }, + }, + }, +} +`; diff --git a/src/components/__snapshots__/NewCardForm.test.js.snap b/src/components/__snapshots__/NewCardForm.test.js.snap new file mode 100644 index 00000000..3df287f3 --- /dev/null +++ b/src/components/__snapshots__/NewCardForm.test.js.snap @@ -0,0 +1,991 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`NewCardForm that it matches an existing snapshot 1`] = ` +ShallowWrapper { + "length": 1, + Symbol(enzyme.__root__): [Circular], + Symbol(enzyme.__unrendered__): , + Symbol(enzyme.__renderer__): Object { + "batchedUpdates": [Function], + "getNode": [Function], + "render": [Function], + "simulateEvent": [Function], + "unmount": [Function], + }, + Symbol(enzyme.__node__): Object { + "instance": null, + "key": undefined, + "nodeType": "host", + "props": Object { + "children": Array [ +

+ Add a card +

, +
+
+ + + + +
+ +
, + ], + "className": "new-card-form", + }, + "ref": null, + "rendered": Array [ + Object { + "instance": null, + "key": undefined, + "nodeType": "host", + "props": Object { + "children": "Add a card", + "className": "new-card-form__header", + }, + "ref": null, + "rendered": "Add a card", + "type": "h3", + }, + Object { + "instance": null, + "key": undefined, + "nodeType": "host", + "props": Object { + "children": Array [ +
+ + + + +
, + , + ], + "onSubmit": [Function], + }, + "ref": null, + "rendered": Array [ + Object { + "instance": null, + "key": undefined, + "nodeType": "host", + "props": Object { + "children": Array [ + , + , + , + , + ], + "className": "new-card-form__form", + }, + "ref": null, + "rendered": Array [ + Object { + "instance": null, + "key": undefined, + "nodeType": "host", + "props": Object { + "children": "Message: ", + "className": "new-card-form__form-label", + "htmlFor": "text", + }, + "ref": null, + "rendered": "Message: ", + "type": "label", + }, + Object { + "instance": null, + "key": undefined, + "nodeType": "host", + "props": Object { + "className": "new-card-form__form-textarea", + "name": "text", + "onChange": [Function], + "type": "text", + "value": "", + }, + "ref": null, + "rendered": null, + "type": "input", + }, + Object { + "instance": null, + "key": undefined, + "nodeType": "host", + "props": Object { + "children": "Emoji: ", + "className": "new-card-form__form-label", + "htmlFor": "emoji", + }, + "ref": null, + "rendered": "Emoji: ", + "type": "label", + }, + Object { + "instance": null, + "key": undefined, + "nodeType": "host", + "props": Object { + "children": Array [ + Array [ + , + , + , + , + , + , + , + ], + ";", + ], + "className": "new-card-form__form-textarea", + "name": "emoji", + "onChange": [Function], + "value": "", + }, + "ref": null, + "rendered": Array [ + Object { + "instance": null, + "key": undefined, + "nodeType": "host", + "props": Object { + "children": undefined, + "value": "", + }, + "ref": null, + "rendered": null, + "type": "option", + }, + Object { + "instance": null, + "key": "heart_eyes", + "nodeType": "host", + "props": Object { + "children": "😍", + "value": "heart_eyes", + }, + "ref": null, + "rendered": "😍", + "type": "option", + }, + Object { + "instance": null, + "key": "beer", + "nodeType": "host", + "props": Object { + "children": "🍺", + "value": "beer", + }, + "ref": null, + "rendered": "🍺", + "type": "option", + }, + Object { + "instance": null, + "key": "clap", + "nodeType": "host", + "props": Object { + "children": "👏", + "value": "clap", + }, + "ref": null, + "rendered": "👏", + "type": "option", + }, + Object { + "instance": null, + "key": "sparkling_heart", + "nodeType": "host", + "props": Object { + "children": "💖", + "value": "sparkling_heart", + }, + "ref": null, + "rendered": "💖", + "type": "option", + }, + Object { + "instance": null, + "key": "heart_eyes_cat", + "nodeType": "host", + "props": Object { + "children": "😻", + "value": "heart_eyes_cat", + }, + "ref": null, + "rendered": "😻", + "type": "option", + }, + Object { + "instance": null, + "key": "dog", + "nodeType": "host", + "props": Object { + "children": "🐶", + "value": "dog", + }, + "ref": null, + "rendered": "🐶", + "type": "option", + }, + Object { + "instance": null, + "key": "robot", + "nodeType": "host", + "props": Object { + "children": "🤖", + "value": "robot", + }, + "ref": null, + "rendered": "🤖", + "type": "option", + }, + ";", + ], + "type": "select", + }, + ], + "type": "div", + }, + Object { + "instance": null, + "key": undefined, + "nodeType": "host", + "props": Object { + "type": "submit", + "value": "Add Card", + }, + "ref": null, + "rendered": null, + "type": "input", + }, + ], + "type": "form", + }, + ], + "type": "div", + }, + Symbol(enzyme.__nodes__): Array [ + Object { + "instance": null, + "key": undefined, + "nodeType": "host", + "props": Object { + "children": Array [ +

+ Add a card +

, +
+
+ + + + +
+ +
, + ], + "className": "new-card-form", + }, + "ref": null, + "rendered": Array [ + Object { + "instance": null, + "key": undefined, + "nodeType": "host", + "props": Object { + "children": "Add a card", + "className": "new-card-form__header", + }, + "ref": null, + "rendered": "Add a card", + "type": "h3", + }, + Object { + "instance": null, + "key": undefined, + "nodeType": "host", + "props": Object { + "children": Array [ +
+ + + + +
, + , + ], + "onSubmit": [Function], + }, + "ref": null, + "rendered": Array [ + Object { + "instance": null, + "key": undefined, + "nodeType": "host", + "props": Object { + "children": Array [ + , + , + , + , + ], + "className": "new-card-form__form", + }, + "ref": null, + "rendered": Array [ + Object { + "instance": null, + "key": undefined, + "nodeType": "host", + "props": Object { + "children": "Message: ", + "className": "new-card-form__form-label", + "htmlFor": "text", + }, + "ref": null, + "rendered": "Message: ", + "type": "label", + }, + Object { + "instance": null, + "key": undefined, + "nodeType": "host", + "props": Object { + "className": "new-card-form__form-textarea", + "name": "text", + "onChange": [Function], + "type": "text", + "value": "", + }, + "ref": null, + "rendered": null, + "type": "input", + }, + Object { + "instance": null, + "key": undefined, + "nodeType": "host", + "props": Object { + "children": "Emoji: ", + "className": "new-card-form__form-label", + "htmlFor": "emoji", + }, + "ref": null, + "rendered": "Emoji: ", + "type": "label", + }, + Object { + "instance": null, + "key": undefined, + "nodeType": "host", + "props": Object { + "children": Array [ + Array [ + , + , + , + , + , + , + , + ], + ";", + ], + "className": "new-card-form__form-textarea", + "name": "emoji", + "onChange": [Function], + "value": "", + }, + "ref": null, + "rendered": Array [ + Object { + "instance": null, + "key": undefined, + "nodeType": "host", + "props": Object { + "children": undefined, + "value": "", + }, + "ref": null, + "rendered": null, + "type": "option", + }, + Object { + "instance": null, + "key": "heart_eyes", + "nodeType": "host", + "props": Object { + "children": "😍", + "value": "heart_eyes", + }, + "ref": null, + "rendered": "😍", + "type": "option", + }, + Object { + "instance": null, + "key": "beer", + "nodeType": "host", + "props": Object { + "children": "🍺", + "value": "beer", + }, + "ref": null, + "rendered": "🍺", + "type": "option", + }, + Object { + "instance": null, + "key": "clap", + "nodeType": "host", + "props": Object { + "children": "👏", + "value": "clap", + }, + "ref": null, + "rendered": "👏", + "type": "option", + }, + Object { + "instance": null, + "key": "sparkling_heart", + "nodeType": "host", + "props": Object { + "children": "💖", + "value": "sparkling_heart", + }, + "ref": null, + "rendered": "💖", + "type": "option", + }, + Object { + "instance": null, + "key": "heart_eyes_cat", + "nodeType": "host", + "props": Object { + "children": "😻", + "value": "heart_eyes_cat", + }, + "ref": null, + "rendered": "😻", + "type": "option", + }, + Object { + "instance": null, + "key": "dog", + "nodeType": "host", + "props": Object { + "children": "🐶", + "value": "dog", + }, + "ref": null, + "rendered": "🐶", + "type": "option", + }, + Object { + "instance": null, + "key": "robot", + "nodeType": "host", + "props": Object { + "children": "🤖", + "value": "robot", + }, + "ref": null, + "rendered": "🤖", + "type": "option", + }, + ";", + ], + "type": "select", + }, + ], + "type": "div", + }, + Object { + "instance": null, + "key": undefined, + "nodeType": "host", + "props": Object { + "type": "submit", + "value": "Add Card", + }, + "ref": null, + "rendered": null, + "type": "input", + }, + ], + "type": "form", + }, + ], + "type": "div", + }, + ], + Symbol(enzyme.__options__): Object { + "adapter": ReactSixteenAdapter { + "options": Object { + "enableComponentDidUpdateOnSetState": true, + }, + }, + }, +} +`; From 5c01b9508e908da59b277590a8c7c31b60e8df04 Mon Sep 17 00:00:00 2001 From: Nora Peters Date: Fri, 15 Jun 2018 15:21:38 -0700 Subject: [PATCH 13/14] 7 tests written and passing --- package-lock.json | 97 +++++++++++++++++++++++++++--- package.json | 5 +- src/components/NewCardForm.test.js | 63 +++++++++---------- 3 files changed, 120 insertions(+), 45 deletions(-) diff --git a/package-lock.json b/package-lock.json index bd9d2b59..0bb6247b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -80,14 +80,21 @@ "integrity": "sha512-z55ocwKBRLryBs394Sm3ushTtBeg6VAeuku7utSoSnsJKvKcnXFIyC6vh27n3rXyxSgkJBBCAvyOn7gSUcTYjg==" }, "ajv": { - "version": "5.5.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", - "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.5.1.tgz", + "integrity": "sha512-pgZos1vgOHDiC7gKNbZW8eKvCnNXARv2oqrGQT7Hzbq5Azp7aZG6DJzADnkuSq7RH6qkXp4J/m68yPX/2uBHyQ==", "requires": { - "co": "4.6.0", - "fast-deep-equal": "1.1.0", + "fast-deep-equal": "2.0.1", "fast-json-stable-stringify": "2.0.0", - "json-schema-traverse": "0.3.1" + "json-schema-traverse": "0.4.1", + "uri-js": "4.2.2" + }, + "dependencies": { + "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==" + } } }, "ajv-keywords": { @@ -3167,6 +3174,17 @@ "text-table": "0.2.0" }, "dependencies": { + "ajv": { + "version": "5.5.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", + "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", + "requires": { + "co": "4.6.0", + "fast-deep-equal": "1.1.0", + "fast-json-stable-stringify": "2.0.0", + "json-schema-traverse": "0.3.1" + } + }, "ansi-regex": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", @@ -3195,6 +3213,11 @@ "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.0.tgz", "integrity": "sha512-oftTcaMu/EGrEIu904mWteKIv8vMuOgGYo7EhVJJN00R/EED9DCua/xxHRdYnKtcECzVg7xOWhflvJMnqcFZjw==" }, + "fast-deep-equal": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz", + "integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ=" + }, "js-yaml": { "version": "3.12.0", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.12.0.tgz", @@ -3757,9 +3780,9 @@ "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=" }, "fast-deep-equal": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz", - "integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ=" + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", + "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=" }, "fast-json-stable-stringify": { "version": "2.0.0", @@ -4780,6 +4803,24 @@ "requires": { "ajv": "5.5.2", "har-schema": "2.0.0" + }, + "dependencies": { + "ajv": { + "version": "5.5.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", + "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", + "requires": { + "co": "4.6.0", + "fast-deep-equal": "1.1.0", + "fast-json-stable-stringify": "2.0.0", + "json-schema-traverse": "0.3.1" + } + }, + "fast-deep-equal": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz", + "integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ=" + } } }, "has": { @@ -6089,6 +6130,7 @@ "version": "2.1.11", "resolved": "https://registry.npmjs.org/jest-mock-axios/-/jest-mock-axios-2.1.11.tgz", "integrity": "sha512-rxF13chmHuelAh/rysNQEY4YqmOO94XmBO5Mk2+edFh2dOwe3j/XIRSnY8+m61t1658AU6nGoTh1s7tCgvridg==", + "dev": true, "requires": { "jest-mock-promise": "1.0.23" } @@ -6096,7 +6138,8 @@ "jest-mock-promise": { "version": "1.0.23", "resolved": "https://registry.npmjs.org/jest-mock-promise/-/jest-mock-promise-1.0.23.tgz", - "integrity": "sha1-ySH9a1EqxUYJftvPR389QWllfkA=" + "integrity": "sha1-ySH9a1EqxUYJftvPR389QWllfkA=", + "dev": true }, "jest-regex-util": { "version": "20.0.3", @@ -9767,6 +9810,24 @@ "integrity": "sha1-9YdyIs4+kx7a4DnxfrNxbnE3+M8=", "requires": { "ajv": "5.5.2" + }, + "dependencies": { + "ajv": { + "version": "5.5.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", + "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", + "requires": { + "co": "4.6.0", + "fast-deep-equal": "1.1.0", + "fast-json-stable-stringify": "2.0.0", + "json-schema-traverse": "0.3.1" + } + }, + "fast-deep-equal": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz", + "integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ=" + } } }, "select-hose": { @@ -11099,6 +11160,17 @@ "yargs": "8.0.2" }, "dependencies": { + "ajv": { + "version": "5.5.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", + "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", + "requires": { + "co": "4.6.0", + "fast-deep-equal": "1.1.0", + "fast-json-stable-stringify": "2.0.0", + "json-schema-traverse": "0.3.1" + } + }, "ajv-keywords": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-2.1.1.tgz", @@ -11131,6 +11203,11 @@ } } }, + "fast-deep-equal": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz", + "integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ=" + }, "has-flag": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz", diff --git a/package.json b/package.json index 34efc32d..fc225202 100644 --- a/package.json +++ b/package.json @@ -3,9 +3,9 @@ "version": "0.1.0", "private": true, "dependencies": { + "ajv": "^6.5.1", "axios": "^0.18.0", "emoji-dictionary": "^1.0.9", - "jest-mock-axios": "^2.1.11", "react": "^16.4.0", "react-dom": "^16.4.0", "react-scripts": "1.1.4" @@ -21,7 +21,8 @@ "devDependencies": { "enzyme": "^3.3.0", "enzyme-adapter-react-16": "^1.1.1", - "gh-pages": "^1.2.0" + "gh-pages": "^1.2.0", + "jest-mock-axios": "^2.1.11" }, "homepage": "http://adagold.github.io/inspiration-board" } diff --git a/src/components/NewCardForm.test.js b/src/components/NewCardForm.test.js index c7c20027..04e466e6 100644 --- a/src/components/NewCardForm.test.js +++ b/src/components/NewCardForm.test.js @@ -66,44 +66,41 @@ describe('NewCardForm', () => { // Force the onChange event wrapper.update(); nameField = wrapper.find(`[name="${field}"]`); - console.log(nameField.getElement()); - console.log(nameField.getElement().props); - // Assert expect(nameField.getElement().props.value).toEqual(value); }); }); - // xtest('NewCardForm can submit', () => { - // // Arrange - // // Shallow mounted the wrapper - // - // const mockAddPetCallback = jest.fn(); - // - // const wrapper = shallow(); - // - // wrapper.find(`[name='name']`).simulate('change', { - // target: { - // name: 'name', - // value: 'Bob', - // }, - // }); - // - // // force textfields change - // wrapper.update(); - // - // wrapper.find('form').simulate('submit', { - // preventDefault: () => {}, - // }); - // - // wrapper.update(); - // - // const nameField = wrapper.find('[name="name"]'); - // - // // Assert - // expect(nameField.getElement().props.value).toEqual(''); - // expect(mockAddPetCallback).toHaveBeenCalled(); - // }); + test('NewCardForm can submit', () => { + // Arrange + // Shallow mounted the wrapper + + const mockAddCardCallback = jest.fn(); + + const wrapper = shallow(); + + wrapper.find(`[name='text']`).simulate('change', { + target: { + name: 'text', + value: 'Be the change', + }, + }); + + // force textfields change + wrapper.update(); + + wrapper.find('form').simulate('submit', { + preventDefault: () => {}, + }); + + wrapper.update(); + + const nameField = wrapper.find('[name="text"]'); + + // Assert + expect(nameField.getElement().props.value).toEqual(''); + expect(mockAddCardCallback).toHaveBeenCalled(); + }); }); From ddab939fcc871caf6b14fb6c4b4de8b883a15373 Mon Sep 17 00:00:00 2001 From: Nora Peters Date: Mon, 18 Jun 2018 00:25:43 -0700 Subject: [PATCH 14/14] adds dependencies for deploying to github pages --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index fc225202..88c61cd8 100644 --- a/package.json +++ b/package.json @@ -24,5 +24,5 @@ "gh-pages": "^1.2.0", "jest-mock-axios": "^2.1.11" }, - "homepage": "http://adagold.github.io/inspiration-board" + "homepage": "http://npeters5.github.io/inspiration-board" }