diff --git a/.codecov.yml b/.codecov.yml
new file mode 100644
index 0000000..98ba831
--- /dev/null
+++ b/.codecov.yml
@@ -0,0 +1,8 @@
+codecov:
+ require_ci_to_pass: yes
+ comment:
+ layout: "reach, diff, flags, files"
+ behavior: default
+ require_changes: false
+ branches:
+ - "master"
diff --git a/components/card/__tests__/__snapshots__/index.test.tsx.snap b/components/card/__tests__/__snapshots__/index.test.tsx.snap
new file mode 100644
index 0000000..38ef1d4
--- /dev/null
+++ b/components/card/__tests__/__snapshots__/index.test.tsx.snap
@@ -0,0 +1,1988 @@
+// Jest Snapshot v1, https://goo.gl/fbAQLP
+
+exports[`Card should render correctly when nested 1`] = `
+initialize {
+ "0": Object {
+ "attribs": Object {
+ "class": "card ",
+ },
+ "children": Array [
+ Object {
+ "attribs": Object {
+ "class": "card ",
+ },
+ "children": Array [
+ Object {
+ "attribs": Object {
+ "class": "card ",
+ },
+ "children": Array [
+ Object {
+ "data": "card",
+ "next": Object {
+ "attribs": Object {},
+ "children": Array [
+ Object {
+ "data": "
+ .card {
+ background: #fff;
+ margin: 0;
+ width: 100%;
+ transition: all .2s ease;
+ padding: 16pt 16pt;
+ border-radius: 5px;
+ box-shadow: none;
+ box-sizing: border-box;
+ color: #000;
+ background-color: #fff;
+ border: 1px solid #eaeaea;
+ }
+
+ .card:hover {
+ box-shadow: none;
+ }
+
+ .card :global(*:first-child) {
+ margin-top: 0;
+ }
+
+ .card :global(*:last-child) {
+ margin-bottom: 0;
+ }
+ ",
+ "next": null,
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ ],
+ "name": "style",
+ "namespace": "http://www.w3.org/1999/xhtml",
+ "next": null,
+ "parent": [Circular],
+ "prev": [Circular],
+ "type": "style",
+ "x-attribsNamespace": Object {},
+ "x-attribsPrefix": Object {},
+ },
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ Object {
+ "attribs": Object {},
+ "children": Array [
+ Object {
+ "data": "
+ .card {
+ background: #fff;
+ margin: 0;
+ width: 100%;
+ transition: all .2s ease;
+ padding: 16pt 16pt;
+ border-radius: 5px;
+ box-shadow: none;
+ box-sizing: border-box;
+ color: #000;
+ background-color: #fff;
+ border: 1px solid #eaeaea;
+ }
+
+ .card:hover {
+ box-shadow: none;
+ }
+
+ .card :global(*:first-child) {
+ margin-top: 0;
+ }
+
+ .card :global(*:last-child) {
+ margin-bottom: 0;
+ }
+ ",
+ "next": null,
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ ],
+ "name": "style",
+ "namespace": "http://www.w3.org/1999/xhtml",
+ "next": null,
+ "parent": [Circular],
+ "prev": Object {
+ "data": "card",
+ "next": [Circular],
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ "type": "style",
+ "x-attribsNamespace": Object {},
+ "x-attribsPrefix": Object {},
+ },
+ ],
+ "name": "div",
+ "namespace": "http://www.w3.org/1999/xhtml",
+ "next": Object {
+ "attribs": Object {},
+ "children": Array [
+ Object {
+ "data": "
+ .card {
+ background: #fff;
+ margin: 0;
+ width: 100%;
+ transition: all .2s ease;
+ padding: 16pt 16pt;
+ border-radius: 5px;
+ box-shadow: 0 5px 10px rgba(0, 0, 0, 0.12);
+ box-sizing: border-box;
+ color: #000;
+ background-color: #fff;
+ border: 1px solid transparent;
+ }
+
+ .card:hover {
+ box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
+ }
+
+ .card :global(*:first-child) {
+ margin-top: 0;
+ }
+
+ .card :global(*:last-child) {
+ margin-bottom: 0;
+ }
+ ",
+ "next": null,
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ ],
+ "name": "style",
+ "namespace": "http://www.w3.org/1999/xhtml",
+ "next": null,
+ "parent": [Circular],
+ "prev": [Circular],
+ "type": "style",
+ "x-attribsNamespace": Object {},
+ "x-attribsPrefix": Object {},
+ },
+ "parent": [Circular],
+ "prev": null,
+ "type": "tag",
+ "x-attribsNamespace": Object {
+ "class": undefined,
+ },
+ "x-attribsPrefix": Object {
+ "class": undefined,
+ },
+ },
+ Object {
+ "attribs": Object {},
+ "children": Array [
+ Object {
+ "data": "
+ .card {
+ background: #fff;
+ margin: 0;
+ width: 100%;
+ transition: all .2s ease;
+ padding: 16pt 16pt;
+ border-radius: 5px;
+ box-shadow: 0 5px 10px rgba(0, 0, 0, 0.12);
+ box-sizing: border-box;
+ color: #000;
+ background-color: #fff;
+ border: 1px solid transparent;
+ }
+
+ .card:hover {
+ box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
+ }
+
+ .card :global(*:first-child) {
+ margin-top: 0;
+ }
+
+ .card :global(*:last-child) {
+ margin-bottom: 0;
+ }
+ ",
+ "next": null,
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ ],
+ "name": "style",
+ "namespace": "http://www.w3.org/1999/xhtml",
+ "next": null,
+ "parent": [Circular],
+ "prev": Object {
+ "attribs": Object {
+ "class": "card ",
+ },
+ "children": Array [
+ Object {
+ "data": "card",
+ "next": Object {
+ "attribs": Object {},
+ "children": Array [
+ Object {
+ "data": "
+ .card {
+ background: #fff;
+ margin: 0;
+ width: 100%;
+ transition: all .2s ease;
+ padding: 16pt 16pt;
+ border-radius: 5px;
+ box-shadow: none;
+ box-sizing: border-box;
+ color: #000;
+ background-color: #fff;
+ border: 1px solid #eaeaea;
+ }
+
+ .card:hover {
+ box-shadow: none;
+ }
+
+ .card :global(*:first-child) {
+ margin-top: 0;
+ }
+
+ .card :global(*:last-child) {
+ margin-bottom: 0;
+ }
+ ",
+ "next": null,
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ ],
+ "name": "style",
+ "namespace": "http://www.w3.org/1999/xhtml",
+ "next": null,
+ "parent": [Circular],
+ "prev": [Circular],
+ "type": "style",
+ "x-attribsNamespace": Object {},
+ "x-attribsPrefix": Object {},
+ },
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ Object {
+ "attribs": Object {},
+ "children": Array [
+ Object {
+ "data": "
+ .card {
+ background: #fff;
+ margin: 0;
+ width: 100%;
+ transition: all .2s ease;
+ padding: 16pt 16pt;
+ border-radius: 5px;
+ box-shadow: none;
+ box-sizing: border-box;
+ color: #000;
+ background-color: #fff;
+ border: 1px solid #eaeaea;
+ }
+
+ .card:hover {
+ box-shadow: none;
+ }
+
+ .card :global(*:first-child) {
+ margin-top: 0;
+ }
+
+ .card :global(*:last-child) {
+ margin-bottom: 0;
+ }
+ ",
+ "next": null,
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ ],
+ "name": "style",
+ "namespace": "http://www.w3.org/1999/xhtml",
+ "next": null,
+ "parent": [Circular],
+ "prev": Object {
+ "data": "card",
+ "next": [Circular],
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ "type": "style",
+ "x-attribsNamespace": Object {},
+ "x-attribsPrefix": Object {},
+ },
+ ],
+ "name": "div",
+ "namespace": "http://www.w3.org/1999/xhtml",
+ "next": [Circular],
+ "parent": [Circular],
+ "prev": null,
+ "type": "tag",
+ "x-attribsNamespace": Object {
+ "class": undefined,
+ },
+ "x-attribsPrefix": Object {
+ "class": undefined,
+ },
+ },
+ "type": "style",
+ "x-attribsNamespace": Object {},
+ "x-attribsPrefix": Object {},
+ },
+ ],
+ "name": "div",
+ "namespace": "http://www.w3.org/1999/xhtml",
+ "next": Object {
+ "attribs": Object {},
+ "children": Array [
+ Object {
+ "data": "
+ .card {
+ background: #fff;
+ margin: 0;
+ width: 100%;
+ transition: all .2s ease;
+ padding: 16pt 16pt;
+ border-radius: 5px;
+ box-shadow: none;
+ box-sizing: border-box;
+ color: #000;
+ background-color: #fff;
+ border: 1px solid #eaeaea;
+ }
+
+ .card:hover {
+ box-shadow: none;
+ }
+
+ .card :global(*:first-child) {
+ margin-top: 0;
+ }
+
+ .card :global(*:last-child) {
+ margin-bottom: 0;
+ }
+ ",
+ "next": null,
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ ],
+ "name": "style",
+ "namespace": "http://www.w3.org/1999/xhtml",
+ "next": null,
+ "parent": [Circular],
+ "prev": [Circular],
+ "type": "style",
+ "x-attribsNamespace": Object {},
+ "x-attribsPrefix": Object {},
+ },
+ "parent": [Circular],
+ "prev": null,
+ "type": "tag",
+ "x-attribsNamespace": Object {
+ "class": undefined,
+ },
+ "x-attribsPrefix": Object {
+ "class": undefined,
+ },
+ },
+ Object {
+ "attribs": Object {},
+ "children": Array [
+ Object {
+ "data": "
+ .card {
+ background: #fff;
+ margin: 0;
+ width: 100%;
+ transition: all .2s ease;
+ padding: 16pt 16pt;
+ border-radius: 5px;
+ box-shadow: none;
+ box-sizing: border-box;
+ color: #000;
+ background-color: #fff;
+ border: 1px solid #eaeaea;
+ }
+
+ .card:hover {
+ box-shadow: none;
+ }
+
+ .card :global(*:first-child) {
+ margin-top: 0;
+ }
+
+ .card :global(*:last-child) {
+ margin-bottom: 0;
+ }
+ ",
+ "next": null,
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ ],
+ "name": "style",
+ "namespace": "http://www.w3.org/1999/xhtml",
+ "next": null,
+ "parent": [Circular],
+ "prev": Object {
+ "attribs": Object {
+ "class": "card ",
+ },
+ "children": Array [
+ Object {
+ "attribs": Object {
+ "class": "card ",
+ },
+ "children": Array [
+ Object {
+ "data": "card",
+ "next": Object {
+ "attribs": Object {},
+ "children": Array [
+ Object {
+ "data": "
+ .card {
+ background: #fff;
+ margin: 0;
+ width: 100%;
+ transition: all .2s ease;
+ padding: 16pt 16pt;
+ border-radius: 5px;
+ box-shadow: none;
+ box-sizing: border-box;
+ color: #000;
+ background-color: #fff;
+ border: 1px solid #eaeaea;
+ }
+
+ .card:hover {
+ box-shadow: none;
+ }
+
+ .card :global(*:first-child) {
+ margin-top: 0;
+ }
+
+ .card :global(*:last-child) {
+ margin-bottom: 0;
+ }
+ ",
+ "next": null,
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ ],
+ "name": "style",
+ "namespace": "http://www.w3.org/1999/xhtml",
+ "next": null,
+ "parent": [Circular],
+ "prev": [Circular],
+ "type": "style",
+ "x-attribsNamespace": Object {},
+ "x-attribsPrefix": Object {},
+ },
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ Object {
+ "attribs": Object {},
+ "children": Array [
+ Object {
+ "data": "
+ .card {
+ background: #fff;
+ margin: 0;
+ width: 100%;
+ transition: all .2s ease;
+ padding: 16pt 16pt;
+ border-radius: 5px;
+ box-shadow: none;
+ box-sizing: border-box;
+ color: #000;
+ background-color: #fff;
+ border: 1px solid #eaeaea;
+ }
+
+ .card:hover {
+ box-shadow: none;
+ }
+
+ .card :global(*:first-child) {
+ margin-top: 0;
+ }
+
+ .card :global(*:last-child) {
+ margin-bottom: 0;
+ }
+ ",
+ "next": null,
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ ],
+ "name": "style",
+ "namespace": "http://www.w3.org/1999/xhtml",
+ "next": null,
+ "parent": [Circular],
+ "prev": Object {
+ "data": "card",
+ "next": [Circular],
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ "type": "style",
+ "x-attribsNamespace": Object {},
+ "x-attribsPrefix": Object {},
+ },
+ ],
+ "name": "div",
+ "namespace": "http://www.w3.org/1999/xhtml",
+ "next": Object {
+ "attribs": Object {},
+ "children": Array [
+ Object {
+ "data": "
+ .card {
+ background: #fff;
+ margin: 0;
+ width: 100%;
+ transition: all .2s ease;
+ padding: 16pt 16pt;
+ border-radius: 5px;
+ box-shadow: 0 5px 10px rgba(0, 0, 0, 0.12);
+ box-sizing: border-box;
+ color: #000;
+ background-color: #fff;
+ border: 1px solid transparent;
+ }
+
+ .card:hover {
+ box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
+ }
+
+ .card :global(*:first-child) {
+ margin-top: 0;
+ }
+
+ .card :global(*:last-child) {
+ margin-bottom: 0;
+ }
+ ",
+ "next": null,
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ ],
+ "name": "style",
+ "namespace": "http://www.w3.org/1999/xhtml",
+ "next": null,
+ "parent": [Circular],
+ "prev": [Circular],
+ "type": "style",
+ "x-attribsNamespace": Object {},
+ "x-attribsPrefix": Object {},
+ },
+ "parent": [Circular],
+ "prev": null,
+ "type": "tag",
+ "x-attribsNamespace": Object {
+ "class": undefined,
+ },
+ "x-attribsPrefix": Object {
+ "class": undefined,
+ },
+ },
+ Object {
+ "attribs": Object {},
+ "children": Array [
+ Object {
+ "data": "
+ .card {
+ background: #fff;
+ margin: 0;
+ width: 100%;
+ transition: all .2s ease;
+ padding: 16pt 16pt;
+ border-radius: 5px;
+ box-shadow: 0 5px 10px rgba(0, 0, 0, 0.12);
+ box-sizing: border-box;
+ color: #000;
+ background-color: #fff;
+ border: 1px solid transparent;
+ }
+
+ .card:hover {
+ box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
+ }
+
+ .card :global(*:first-child) {
+ margin-top: 0;
+ }
+
+ .card :global(*:last-child) {
+ margin-bottom: 0;
+ }
+ ",
+ "next": null,
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ ],
+ "name": "style",
+ "namespace": "http://www.w3.org/1999/xhtml",
+ "next": null,
+ "parent": [Circular],
+ "prev": Object {
+ "attribs": Object {
+ "class": "card ",
+ },
+ "children": Array [
+ Object {
+ "data": "card",
+ "next": Object {
+ "attribs": Object {},
+ "children": Array [
+ Object {
+ "data": "
+ .card {
+ background: #fff;
+ margin: 0;
+ width: 100%;
+ transition: all .2s ease;
+ padding: 16pt 16pt;
+ border-radius: 5px;
+ box-shadow: none;
+ box-sizing: border-box;
+ color: #000;
+ background-color: #fff;
+ border: 1px solid #eaeaea;
+ }
+
+ .card:hover {
+ box-shadow: none;
+ }
+
+ .card :global(*:first-child) {
+ margin-top: 0;
+ }
+
+ .card :global(*:last-child) {
+ margin-bottom: 0;
+ }
+ ",
+ "next": null,
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ ],
+ "name": "style",
+ "namespace": "http://www.w3.org/1999/xhtml",
+ "next": null,
+ "parent": [Circular],
+ "prev": [Circular],
+ "type": "style",
+ "x-attribsNamespace": Object {},
+ "x-attribsPrefix": Object {},
+ },
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ Object {
+ "attribs": Object {},
+ "children": Array [
+ Object {
+ "data": "
+ .card {
+ background: #fff;
+ margin: 0;
+ width: 100%;
+ transition: all .2s ease;
+ padding: 16pt 16pt;
+ border-radius: 5px;
+ box-shadow: none;
+ box-sizing: border-box;
+ color: #000;
+ background-color: #fff;
+ border: 1px solid #eaeaea;
+ }
+
+ .card:hover {
+ box-shadow: none;
+ }
+
+ .card :global(*:first-child) {
+ margin-top: 0;
+ }
+
+ .card :global(*:last-child) {
+ margin-bottom: 0;
+ }
+ ",
+ "next": null,
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ ],
+ "name": "style",
+ "namespace": "http://www.w3.org/1999/xhtml",
+ "next": null,
+ "parent": [Circular],
+ "prev": Object {
+ "data": "card",
+ "next": [Circular],
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ "type": "style",
+ "x-attribsNamespace": Object {},
+ "x-attribsPrefix": Object {},
+ },
+ ],
+ "name": "div",
+ "namespace": "http://www.w3.org/1999/xhtml",
+ "next": [Circular],
+ "parent": [Circular],
+ "prev": null,
+ "type": "tag",
+ "x-attribsNamespace": Object {
+ "class": undefined,
+ },
+ "x-attribsPrefix": Object {
+ "class": undefined,
+ },
+ },
+ "type": "style",
+ "x-attribsNamespace": Object {},
+ "x-attribsPrefix": Object {},
+ },
+ ],
+ "name": "div",
+ "namespace": "http://www.w3.org/1999/xhtml",
+ "next": [Circular],
+ "parent": [Circular],
+ "prev": null,
+ "type": "tag",
+ "x-attribsNamespace": Object {
+ "class": undefined,
+ },
+ "x-attribsPrefix": Object {
+ "class": undefined,
+ },
+ },
+ "type": "style",
+ "x-attribsNamespace": Object {},
+ "x-attribsPrefix": Object {},
+ },
+ ],
+ "name": "div",
+ "namespace": "http://www.w3.org/1999/xhtml",
+ "next": null,
+ "parent": null,
+ "prev": null,
+ "root": Object {
+ "attribs": Object {},
+ "children": Array [
+ [Circular],
+ ],
+ "name": "root",
+ "namespace": "http://www.w3.org/1999/xhtml",
+ "next": null,
+ "parent": null,
+ "prev": null,
+ "type": "root",
+ "x-attribsNamespace": Object {},
+ "x-attribsPrefix": Object {},
+ },
+ "type": "tag",
+ "x-attribsNamespace": Object {
+ "class": undefined,
+ },
+ "x-attribsPrefix": Object {
+ "class": undefined,
+ },
+ },
+ "_root": [Circular],
+ "length": 1,
+ "options": Object {
+ "decodeEntities": true,
+ "normalizeWhitespace": false,
+ "withDomLvl1": true,
+ "xml": false,
+ },
+}
+`;
+
+exports[`Card should support shadow and hoverable 1`] = `
+initialize {
+ "0": Object {
+ "attribs": Object {},
+ "children": Array [
+ Object {
+ "attribs": Object {
+ "class": "card ",
+ },
+ "children": Array [
+ Object {
+ "data": "card",
+ "next": Object {
+ "attribs": Object {},
+ "children": Array [
+ Object {
+ "data": "
+ .card {
+ background: #fff;
+ margin: 0;
+ width: 100%;
+ transition: all .2s ease;
+ padding: 16pt 16pt;
+ border-radius: 5px;
+ box-shadow: none;
+ box-sizing: border-box;
+ color: #000;
+ background-color: #fff;
+ border: 1px solid #eaeaea;
+ }
+
+ .card:hover {
+ box-shadow: 0 5px 10px rgba(0, 0, 0, 0.12);
+ }
+
+ .card :global(*:first-child) {
+ margin-top: 0;
+ }
+
+ .card :global(*:last-child) {
+ margin-bottom: 0;
+ }
+ ",
+ "next": null,
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ ],
+ "name": "style",
+ "namespace": "http://www.w3.org/1999/xhtml",
+ "next": null,
+ "parent": [Circular],
+ "prev": [Circular],
+ "type": "style",
+ "x-attribsNamespace": Object {},
+ "x-attribsPrefix": Object {},
+ },
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ Object {
+ "attribs": Object {},
+ "children": Array [
+ Object {
+ "data": "
+ .card {
+ background: #fff;
+ margin: 0;
+ width: 100%;
+ transition: all .2s ease;
+ padding: 16pt 16pt;
+ border-radius: 5px;
+ box-shadow: none;
+ box-sizing: border-box;
+ color: #000;
+ background-color: #fff;
+ border: 1px solid #eaeaea;
+ }
+
+ .card:hover {
+ box-shadow: 0 5px 10px rgba(0, 0, 0, 0.12);
+ }
+
+ .card :global(*:first-child) {
+ margin-top: 0;
+ }
+
+ .card :global(*:last-child) {
+ margin-bottom: 0;
+ }
+ ",
+ "next": null,
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ ],
+ "name": "style",
+ "namespace": "http://www.w3.org/1999/xhtml",
+ "next": null,
+ "parent": [Circular],
+ "prev": Object {
+ "data": "card",
+ "next": [Circular],
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ "type": "style",
+ "x-attribsNamespace": Object {},
+ "x-attribsPrefix": Object {},
+ },
+ ],
+ "name": "div",
+ "namespace": "http://www.w3.org/1999/xhtml",
+ "next": Object {
+ "attribs": Object {
+ "class": "card ",
+ },
+ "children": Array [
+ Object {
+ "data": "card",
+ "next": Object {
+ "attribs": Object {},
+ "children": Array [
+ Object {
+ "data": "
+ .card {
+ background: #fff;
+ margin: 0;
+ width: 100%;
+ transition: all .2s ease;
+ padding: 16pt 16pt;
+ border-radius: 5px;
+ box-shadow: 0 5px 10px rgba(0, 0, 0, 0.12);
+ box-sizing: border-box;
+ color: #000;
+ background-color: #fff;
+ border: 1px solid transparent;
+ }
+
+ .card:hover {
+ box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
+ }
+
+ .card :global(*:first-child) {
+ margin-top: 0;
+ }
+
+ .card :global(*:last-child) {
+ margin-bottom: 0;
+ }
+ ",
+ "next": null,
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ ],
+ "name": "style",
+ "namespace": "http://www.w3.org/1999/xhtml",
+ "next": null,
+ "parent": [Circular],
+ "prev": [Circular],
+ "type": "style",
+ "x-attribsNamespace": Object {},
+ "x-attribsPrefix": Object {},
+ },
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ Object {
+ "attribs": Object {},
+ "children": Array [
+ Object {
+ "data": "
+ .card {
+ background: #fff;
+ margin: 0;
+ width: 100%;
+ transition: all .2s ease;
+ padding: 16pt 16pt;
+ border-radius: 5px;
+ box-shadow: 0 5px 10px rgba(0, 0, 0, 0.12);
+ box-sizing: border-box;
+ color: #000;
+ background-color: #fff;
+ border: 1px solid transparent;
+ }
+
+ .card:hover {
+ box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
+ }
+
+ .card :global(*:first-child) {
+ margin-top: 0;
+ }
+
+ .card :global(*:last-child) {
+ margin-bottom: 0;
+ }
+ ",
+ "next": null,
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ ],
+ "name": "style",
+ "namespace": "http://www.w3.org/1999/xhtml",
+ "next": null,
+ "parent": [Circular],
+ "prev": Object {
+ "data": "card",
+ "next": [Circular],
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ "type": "style",
+ "x-attribsNamespace": Object {},
+ "x-attribsPrefix": Object {},
+ },
+ ],
+ "name": "div",
+ "namespace": "http://www.w3.org/1999/xhtml",
+ "next": Object {
+ "attribs": Object {
+ "class": "card ",
+ },
+ "children": Array [
+ Object {
+ "data": "card",
+ "next": Object {
+ "attribs": Object {},
+ "children": Array [
+ Object {
+ "data": "
+ .card {
+ background: #fff;
+ margin: 0;
+ width: 100%;
+ transition: all .2s ease;
+ padding: 16pt 16pt;
+ border-radius: 5px;
+ box-shadow: 0 5px 10px rgba(0, 0, 0, 0.12);
+ box-sizing: border-box;
+ color: #000;
+ background-color: #fff;
+ border: 1px solid transparent;
+ }
+
+ .card:hover {
+ box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
+ }
+
+ .card :global(*:first-child) {
+ margin-top: 0;
+ }
+
+ .card :global(*:last-child) {
+ margin-bottom: 0;
+ }
+ ",
+ "next": null,
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ ],
+ "name": "style",
+ "namespace": "http://www.w3.org/1999/xhtml",
+ "next": null,
+ "parent": [Circular],
+ "prev": [Circular],
+ "type": "style",
+ "x-attribsNamespace": Object {},
+ "x-attribsPrefix": Object {},
+ },
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ Object {
+ "attribs": Object {},
+ "children": Array [
+ Object {
+ "data": "
+ .card {
+ background: #fff;
+ margin: 0;
+ width: 100%;
+ transition: all .2s ease;
+ padding: 16pt 16pt;
+ border-radius: 5px;
+ box-shadow: 0 5px 10px rgba(0, 0, 0, 0.12);
+ box-sizing: border-box;
+ color: #000;
+ background-color: #fff;
+ border: 1px solid transparent;
+ }
+
+ .card:hover {
+ box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
+ }
+
+ .card :global(*:first-child) {
+ margin-top: 0;
+ }
+
+ .card :global(*:last-child) {
+ margin-bottom: 0;
+ }
+ ",
+ "next": null,
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ ],
+ "name": "style",
+ "namespace": "http://www.w3.org/1999/xhtml",
+ "next": null,
+ "parent": [Circular],
+ "prev": Object {
+ "data": "card",
+ "next": [Circular],
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ "type": "style",
+ "x-attribsNamespace": Object {},
+ "x-attribsPrefix": Object {},
+ },
+ ],
+ "name": "div",
+ "namespace": "http://www.w3.org/1999/xhtml",
+ "next": null,
+ "parent": [Circular],
+ "prev": [Circular],
+ "type": "tag",
+ "x-attribsNamespace": Object {
+ "class": undefined,
+ },
+ "x-attribsPrefix": Object {
+ "class": undefined,
+ },
+ },
+ "parent": [Circular],
+ "prev": [Circular],
+ "type": "tag",
+ "x-attribsNamespace": Object {
+ "class": undefined,
+ },
+ "x-attribsPrefix": Object {
+ "class": undefined,
+ },
+ },
+ "parent": [Circular],
+ "prev": null,
+ "type": "tag",
+ "x-attribsNamespace": Object {
+ "class": undefined,
+ },
+ "x-attribsPrefix": Object {
+ "class": undefined,
+ },
+ },
+ Object {
+ "attribs": Object {
+ "class": "card ",
+ },
+ "children": Array [
+ Object {
+ "data": "card",
+ "next": Object {
+ "attribs": Object {},
+ "children": Array [
+ Object {
+ "data": "
+ .card {
+ background: #fff;
+ margin: 0;
+ width: 100%;
+ transition: all .2s ease;
+ padding: 16pt 16pt;
+ border-radius: 5px;
+ box-shadow: 0 5px 10px rgba(0, 0, 0, 0.12);
+ box-sizing: border-box;
+ color: #000;
+ background-color: #fff;
+ border: 1px solid transparent;
+ }
+
+ .card:hover {
+ box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
+ }
+
+ .card :global(*:first-child) {
+ margin-top: 0;
+ }
+
+ .card :global(*:last-child) {
+ margin-bottom: 0;
+ }
+ ",
+ "next": null,
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ ],
+ "name": "style",
+ "namespace": "http://www.w3.org/1999/xhtml",
+ "next": null,
+ "parent": [Circular],
+ "prev": [Circular],
+ "type": "style",
+ "x-attribsNamespace": Object {},
+ "x-attribsPrefix": Object {},
+ },
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ Object {
+ "attribs": Object {},
+ "children": Array [
+ Object {
+ "data": "
+ .card {
+ background: #fff;
+ margin: 0;
+ width: 100%;
+ transition: all .2s ease;
+ padding: 16pt 16pt;
+ border-radius: 5px;
+ box-shadow: 0 5px 10px rgba(0, 0, 0, 0.12);
+ box-sizing: border-box;
+ color: #000;
+ background-color: #fff;
+ border: 1px solid transparent;
+ }
+
+ .card:hover {
+ box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
+ }
+
+ .card :global(*:first-child) {
+ margin-top: 0;
+ }
+
+ .card :global(*:last-child) {
+ margin-bottom: 0;
+ }
+ ",
+ "next": null,
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ ],
+ "name": "style",
+ "namespace": "http://www.w3.org/1999/xhtml",
+ "next": null,
+ "parent": [Circular],
+ "prev": Object {
+ "data": "card",
+ "next": [Circular],
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ "type": "style",
+ "x-attribsNamespace": Object {},
+ "x-attribsPrefix": Object {},
+ },
+ ],
+ "name": "div",
+ "namespace": "http://www.w3.org/1999/xhtml",
+ "next": Object {
+ "attribs": Object {
+ "class": "card ",
+ },
+ "children": Array [
+ Object {
+ "data": "card",
+ "next": Object {
+ "attribs": Object {},
+ "children": Array [
+ Object {
+ "data": "
+ .card {
+ background: #fff;
+ margin: 0;
+ width: 100%;
+ transition: all .2s ease;
+ padding: 16pt 16pt;
+ border-radius: 5px;
+ box-shadow: 0 5px 10px rgba(0, 0, 0, 0.12);
+ box-sizing: border-box;
+ color: #000;
+ background-color: #fff;
+ border: 1px solid transparent;
+ }
+
+ .card:hover {
+ box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
+ }
+
+ .card :global(*:first-child) {
+ margin-top: 0;
+ }
+
+ .card :global(*:last-child) {
+ margin-bottom: 0;
+ }
+ ",
+ "next": null,
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ ],
+ "name": "style",
+ "namespace": "http://www.w3.org/1999/xhtml",
+ "next": null,
+ "parent": [Circular],
+ "prev": [Circular],
+ "type": "style",
+ "x-attribsNamespace": Object {},
+ "x-attribsPrefix": Object {},
+ },
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ Object {
+ "attribs": Object {},
+ "children": Array [
+ Object {
+ "data": "
+ .card {
+ background: #fff;
+ margin: 0;
+ width: 100%;
+ transition: all .2s ease;
+ padding: 16pt 16pt;
+ border-radius: 5px;
+ box-shadow: 0 5px 10px rgba(0, 0, 0, 0.12);
+ box-sizing: border-box;
+ color: #000;
+ background-color: #fff;
+ border: 1px solid transparent;
+ }
+
+ .card:hover {
+ box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
+ }
+
+ .card :global(*:first-child) {
+ margin-top: 0;
+ }
+
+ .card :global(*:last-child) {
+ margin-bottom: 0;
+ }
+ ",
+ "next": null,
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ ],
+ "name": "style",
+ "namespace": "http://www.w3.org/1999/xhtml",
+ "next": null,
+ "parent": [Circular],
+ "prev": Object {
+ "data": "card",
+ "next": [Circular],
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ "type": "style",
+ "x-attribsNamespace": Object {},
+ "x-attribsPrefix": Object {},
+ },
+ ],
+ "name": "div",
+ "namespace": "http://www.w3.org/1999/xhtml",
+ "next": null,
+ "parent": [Circular],
+ "prev": [Circular],
+ "type": "tag",
+ "x-attribsNamespace": Object {
+ "class": undefined,
+ },
+ "x-attribsPrefix": Object {
+ "class": undefined,
+ },
+ },
+ "parent": [Circular],
+ "prev": Object {
+ "attribs": Object {
+ "class": "card ",
+ },
+ "children": Array [
+ Object {
+ "data": "card",
+ "next": Object {
+ "attribs": Object {},
+ "children": Array [
+ Object {
+ "data": "
+ .card {
+ background: #fff;
+ margin: 0;
+ width: 100%;
+ transition: all .2s ease;
+ padding: 16pt 16pt;
+ border-radius: 5px;
+ box-shadow: none;
+ box-sizing: border-box;
+ color: #000;
+ background-color: #fff;
+ border: 1px solid #eaeaea;
+ }
+
+ .card:hover {
+ box-shadow: 0 5px 10px rgba(0, 0, 0, 0.12);
+ }
+
+ .card :global(*:first-child) {
+ margin-top: 0;
+ }
+
+ .card :global(*:last-child) {
+ margin-bottom: 0;
+ }
+ ",
+ "next": null,
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ ],
+ "name": "style",
+ "namespace": "http://www.w3.org/1999/xhtml",
+ "next": null,
+ "parent": [Circular],
+ "prev": [Circular],
+ "type": "style",
+ "x-attribsNamespace": Object {},
+ "x-attribsPrefix": Object {},
+ },
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ Object {
+ "attribs": Object {},
+ "children": Array [
+ Object {
+ "data": "
+ .card {
+ background: #fff;
+ margin: 0;
+ width: 100%;
+ transition: all .2s ease;
+ padding: 16pt 16pt;
+ border-radius: 5px;
+ box-shadow: none;
+ box-sizing: border-box;
+ color: #000;
+ background-color: #fff;
+ border: 1px solid #eaeaea;
+ }
+
+ .card:hover {
+ box-shadow: 0 5px 10px rgba(0, 0, 0, 0.12);
+ }
+
+ .card :global(*:first-child) {
+ margin-top: 0;
+ }
+
+ .card :global(*:last-child) {
+ margin-bottom: 0;
+ }
+ ",
+ "next": null,
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ ],
+ "name": "style",
+ "namespace": "http://www.w3.org/1999/xhtml",
+ "next": null,
+ "parent": [Circular],
+ "prev": Object {
+ "data": "card",
+ "next": [Circular],
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ "type": "style",
+ "x-attribsNamespace": Object {},
+ "x-attribsPrefix": Object {},
+ },
+ ],
+ "name": "div",
+ "namespace": "http://www.w3.org/1999/xhtml",
+ "next": [Circular],
+ "parent": [Circular],
+ "prev": null,
+ "type": "tag",
+ "x-attribsNamespace": Object {
+ "class": undefined,
+ },
+ "x-attribsPrefix": Object {
+ "class": undefined,
+ },
+ },
+ "type": "tag",
+ "x-attribsNamespace": Object {
+ "class": undefined,
+ },
+ "x-attribsPrefix": Object {
+ "class": undefined,
+ },
+ },
+ Object {
+ "attribs": Object {
+ "class": "card ",
+ },
+ "children": Array [
+ Object {
+ "data": "card",
+ "next": Object {
+ "attribs": Object {},
+ "children": Array [
+ Object {
+ "data": "
+ .card {
+ background: #fff;
+ margin: 0;
+ width: 100%;
+ transition: all .2s ease;
+ padding: 16pt 16pt;
+ border-radius: 5px;
+ box-shadow: 0 5px 10px rgba(0, 0, 0, 0.12);
+ box-sizing: border-box;
+ color: #000;
+ background-color: #fff;
+ border: 1px solid transparent;
+ }
+
+ .card:hover {
+ box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
+ }
+
+ .card :global(*:first-child) {
+ margin-top: 0;
+ }
+
+ .card :global(*:last-child) {
+ margin-bottom: 0;
+ }
+ ",
+ "next": null,
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ ],
+ "name": "style",
+ "namespace": "http://www.w3.org/1999/xhtml",
+ "next": null,
+ "parent": [Circular],
+ "prev": [Circular],
+ "type": "style",
+ "x-attribsNamespace": Object {},
+ "x-attribsPrefix": Object {},
+ },
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ Object {
+ "attribs": Object {},
+ "children": Array [
+ Object {
+ "data": "
+ .card {
+ background: #fff;
+ margin: 0;
+ width: 100%;
+ transition: all .2s ease;
+ padding: 16pt 16pt;
+ border-radius: 5px;
+ box-shadow: 0 5px 10px rgba(0, 0, 0, 0.12);
+ box-sizing: border-box;
+ color: #000;
+ background-color: #fff;
+ border: 1px solid transparent;
+ }
+
+ .card:hover {
+ box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
+ }
+
+ .card :global(*:first-child) {
+ margin-top: 0;
+ }
+
+ .card :global(*:last-child) {
+ margin-bottom: 0;
+ }
+ ",
+ "next": null,
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ ],
+ "name": "style",
+ "namespace": "http://www.w3.org/1999/xhtml",
+ "next": null,
+ "parent": [Circular],
+ "prev": Object {
+ "data": "card",
+ "next": [Circular],
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ "type": "style",
+ "x-attribsNamespace": Object {},
+ "x-attribsPrefix": Object {},
+ },
+ ],
+ "name": "div",
+ "namespace": "http://www.w3.org/1999/xhtml",
+ "next": null,
+ "parent": [Circular],
+ "prev": Object {
+ "attribs": Object {
+ "class": "card ",
+ },
+ "children": Array [
+ Object {
+ "data": "card",
+ "next": Object {
+ "attribs": Object {},
+ "children": Array [
+ Object {
+ "data": "
+ .card {
+ background: #fff;
+ margin: 0;
+ width: 100%;
+ transition: all .2s ease;
+ padding: 16pt 16pt;
+ border-radius: 5px;
+ box-shadow: 0 5px 10px rgba(0, 0, 0, 0.12);
+ box-sizing: border-box;
+ color: #000;
+ background-color: #fff;
+ border: 1px solid transparent;
+ }
+
+ .card:hover {
+ box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
+ }
+
+ .card :global(*:first-child) {
+ margin-top: 0;
+ }
+
+ .card :global(*:last-child) {
+ margin-bottom: 0;
+ }
+ ",
+ "next": null,
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ ],
+ "name": "style",
+ "namespace": "http://www.w3.org/1999/xhtml",
+ "next": null,
+ "parent": [Circular],
+ "prev": [Circular],
+ "type": "style",
+ "x-attribsNamespace": Object {},
+ "x-attribsPrefix": Object {},
+ },
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ Object {
+ "attribs": Object {},
+ "children": Array [
+ Object {
+ "data": "
+ .card {
+ background: #fff;
+ margin: 0;
+ width: 100%;
+ transition: all .2s ease;
+ padding: 16pt 16pt;
+ border-radius: 5px;
+ box-shadow: 0 5px 10px rgba(0, 0, 0, 0.12);
+ box-sizing: border-box;
+ color: #000;
+ background-color: #fff;
+ border: 1px solid transparent;
+ }
+
+ .card:hover {
+ box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
+ }
+
+ .card :global(*:first-child) {
+ margin-top: 0;
+ }
+
+ .card :global(*:last-child) {
+ margin-bottom: 0;
+ }
+ ",
+ "next": null,
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ ],
+ "name": "style",
+ "namespace": "http://www.w3.org/1999/xhtml",
+ "next": null,
+ "parent": [Circular],
+ "prev": Object {
+ "data": "card",
+ "next": [Circular],
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ "type": "style",
+ "x-attribsNamespace": Object {},
+ "x-attribsPrefix": Object {},
+ },
+ ],
+ "name": "div",
+ "namespace": "http://www.w3.org/1999/xhtml",
+ "next": [Circular],
+ "parent": [Circular],
+ "prev": Object {
+ "attribs": Object {
+ "class": "card ",
+ },
+ "children": Array [
+ Object {
+ "data": "card",
+ "next": Object {
+ "attribs": Object {},
+ "children": Array [
+ Object {
+ "data": "
+ .card {
+ background: #fff;
+ margin: 0;
+ width: 100%;
+ transition: all .2s ease;
+ padding: 16pt 16pt;
+ border-radius: 5px;
+ box-shadow: none;
+ box-sizing: border-box;
+ color: #000;
+ background-color: #fff;
+ border: 1px solid #eaeaea;
+ }
+
+ .card:hover {
+ box-shadow: 0 5px 10px rgba(0, 0, 0, 0.12);
+ }
+
+ .card :global(*:first-child) {
+ margin-top: 0;
+ }
+
+ .card :global(*:last-child) {
+ margin-bottom: 0;
+ }
+ ",
+ "next": null,
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ ],
+ "name": "style",
+ "namespace": "http://www.w3.org/1999/xhtml",
+ "next": null,
+ "parent": [Circular],
+ "prev": [Circular],
+ "type": "style",
+ "x-attribsNamespace": Object {},
+ "x-attribsPrefix": Object {},
+ },
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ Object {
+ "attribs": Object {},
+ "children": Array [
+ Object {
+ "data": "
+ .card {
+ background: #fff;
+ margin: 0;
+ width: 100%;
+ transition: all .2s ease;
+ padding: 16pt 16pt;
+ border-radius: 5px;
+ box-shadow: none;
+ box-sizing: border-box;
+ color: #000;
+ background-color: #fff;
+ border: 1px solid #eaeaea;
+ }
+
+ .card:hover {
+ box-shadow: 0 5px 10px rgba(0, 0, 0, 0.12);
+ }
+
+ .card :global(*:first-child) {
+ margin-top: 0;
+ }
+
+ .card :global(*:last-child) {
+ margin-bottom: 0;
+ }
+ ",
+ "next": null,
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ ],
+ "name": "style",
+ "namespace": "http://www.w3.org/1999/xhtml",
+ "next": null,
+ "parent": [Circular],
+ "prev": Object {
+ "data": "card",
+ "next": [Circular],
+ "parent": [Circular],
+ "prev": null,
+ "type": "text",
+ },
+ "type": "style",
+ "x-attribsNamespace": Object {},
+ "x-attribsPrefix": Object {},
+ },
+ ],
+ "name": "div",
+ "namespace": "http://www.w3.org/1999/xhtml",
+ "next": [Circular],
+ "parent": [Circular],
+ "prev": null,
+ "type": "tag",
+ "x-attribsNamespace": Object {
+ "class": undefined,
+ },
+ "x-attribsPrefix": Object {
+ "class": undefined,
+ },
+ },
+ "type": "tag",
+ "x-attribsNamespace": Object {
+ "class": undefined,
+ },
+ "x-attribsPrefix": Object {
+ "class": undefined,
+ },
+ },
+ "type": "tag",
+ "x-attribsNamespace": Object {
+ "class": undefined,
+ },
+ "x-attribsPrefix": Object {
+ "class": undefined,
+ },
+ },
+ ],
+ "name": "div",
+ "namespace": "http://www.w3.org/1999/xhtml",
+ "next": null,
+ "parent": null,
+ "prev": null,
+ "root": Object {
+ "attribs": Object {},
+ "children": Array [
+ [Circular],
+ ],
+ "name": "root",
+ "namespace": "http://www.w3.org/1999/xhtml",
+ "next": null,
+ "parent": null,
+ "prev": null,
+ "type": "root",
+ "x-attribsNamespace": Object {},
+ "x-attribsPrefix": Object {},
+ },
+ "type": "tag",
+ "x-attribsNamespace": Object {},
+ "x-attribsPrefix": Object {},
+ },
+ "_root": [Circular],
+ "length": 1,
+ "options": Object {
+ "decodeEntities": true,
+ "normalizeWhitespace": false,
+ "withDomLvl1": true,
+ "xml": false,
+ },
+}
+`;
diff --git a/components/card/__tests__/index.test.tsx b/components/card/__tests__/index.test.tsx
new file mode 100644
index 0000000..ad71e22
--- /dev/null
+++ b/components/card/__tests__/index.test.tsx
@@ -0,0 +1,48 @@
+import React from 'react'
+import { mount, render } from 'enzyme'
+import { Card } from '../../index'
+
+describe('Card', () => {
+ it('should render correctly', () => {
+ const wrapper = mount(