diff --git a/client/package.json b/client/package.json
index 956f12bb9..8ff6a8f07 100644
--- a/client/package.json
+++ b/client/package.json
@@ -17,6 +17,7 @@
"react-dom": "^16.12.0",
"react-router-dom": "^5.1.2",
"react-scripts": "3.2.0",
+ "react-trello": "^2.2.3",
"styled-components": "^4.4.1"
},
"scripts": {
diff --git a/client/src/App/App.container.jsx b/client/src/App/App.container.jsx
index d2c16f48a..1b240e876 100644
--- a/client/src/App/App.container.jsx
+++ b/client/src/App/App.container.jsx
@@ -67,7 +67,8 @@ class AppContainer extends Component {
// See above for additional options, including other storage providers.
await persistCache({
cache,
- storage: window.localStorage
+ storage: window.sessionStorage,
+ debug: true
});
} catch (error) {
console.error("Error restoring Apollo cache", error);
diff --git a/client/src/App/App.js b/client/src/App/App.js
index a7590d787..07261d605 100644
--- a/client/src/App/App.js
+++ b/client/src/App/App.js
@@ -74,7 +74,7 @@ class App extends React.Component {
}
render() {
- console.log("this.props.currentUser", this.props.currentUser);
+ console.log("this.props.currentUser", this.props.currentUser.email);
return (
diff --git a/client/src/components/footer/footer.component.jsx b/client/src/components/footer/footer.component.jsx
new file mode 100644
index 000000000..df609eec5
--- /dev/null
+++ b/client/src/components/footer/footer.component.jsx
@@ -0,0 +1,9 @@
+import React from 'react'
+
+export default function FooterComponent() {
+ return (
+
+ Copyright Snapt Software 2019. All rights reserved.
+
+ )
+}
diff --git a/client/src/components/header/header.component.jsx b/client/src/components/header/header.component.jsx
index 048df2465..01c667e5e 100644
--- a/client/src/components/header/header.component.jsx
+++ b/client/src/components/header/header.component.jsx
@@ -13,6 +13,7 @@ export default ({ landingHeader, selectedNavItem, navItems }) => {
};
return (
- );
-}
diff --git a/client/src/components/manage-shop/manage-shop.container.jsx b/client/src/components/manage-shop/manage-shop.container.jsx
deleted file mode 100644
index 318bf814c..000000000
--- a/client/src/components/manage-shop/manage-shop.container.jsx
+++ /dev/null
@@ -1,7 +0,0 @@
-import React from "react";
-
-import ManageShop from "./manage-shop.component";
-
-const ManageShopContainer = () => ;
-
-export default ManageShopContainer;
diff --git a/client/src/components/white-board-card/white-board-card.component.jsx b/client/src/components/white-board-card/white-board-card.component.jsx
new file mode 100644
index 000000000..76ac2b21a
--- /dev/null
+++ b/client/src/components/white-board-card/white-board-card.component.jsx
@@ -0,0 +1,59 @@
+import React from "react";
+import { Skeleton, Switch, Card, Icon, Avatar } from "antd";
+
+const { Meta } = Card;
+
+class WhiteBoardCard extends React.Component {
+ state = {
+ loading: true
+ };
+
+ onChange = checked => {
+ this.setState({ loading: !checked });
+ };
+
+ render() {
+ const { loading } = this.state;
+ const {
+ onClick,
+ className,
+ name,
+ cardStyle,
+ body,
+ dueOn,
+ cardColor,
+ subTitle,
+ tagStyle,
+ escalationText,
+ tags,
+ showDeleteButton,
+ onDelete
+ } = this.props;
+
+ return (
+
+ ,
+ ,
+ ,
+
+ ]}
+ >
+
+
+ }
+ title="Card title"
+ description="This is the description"
+ />
+
+
+
+ );
+ }
+}
+
+export default WhiteBoardCard;
diff --git a/client/src/graphql/initial-state.js b/client/src/graphql/initial-state.js
index 9e117e1ae..cfdeeaa64 100644
--- a/client/src/graphql/initial-state.js
+++ b/client/src/graphql/initial-state.js
@@ -5,5 +5,6 @@ export default {
token: null
},
selectedNavItem: "Home",
- recentItems: []
+ recentItems: [],
+ whiteBoardLeftSiderVisible: true
};
diff --git a/client/src/graphql/local.queries.js b/client/src/graphql/local.queries.js
index 84bb26e6b..5e728aeb4 100644
--- a/client/src/graphql/local.queries.js
+++ b/client/src/graphql/local.queries.js
@@ -15,3 +15,9 @@ export const GET_CURRENT_USER = gql`
}
}
`;
+
+export const GET_WHITE_BOARD_LEFT_SIDER_VISIBLE = gql`
+ {
+ whiteBoardLeftSiderVisible @client
+ }
+`;
\ No newline at end of file
diff --git a/client/src/graphql/resolvers.js b/client/src/graphql/resolvers.js
index c6553ec60..82eeabf09 100644
--- a/client/src/graphql/resolvers.js
+++ b/client/src/graphql/resolvers.js
@@ -1,9 +1,10 @@
import { gql } from "apollo-boost";
-import { GET_CURRENT_USER } from "./local.queries";
+import { GET_CURRENT_USER, GET_WHITE_BOARD_LEFT_SIDER_VISIBLE } from "./local.queries";
export const typeDefs = gql`
extend type Mutation {
SetCurrentUser(user: User!): User!
+ ToggleWhiteBoardLeftSiderVisible: Boolean!
}
extend type User {
@@ -22,6 +23,20 @@ export const resolvers = {
});
return user;
- }
+ },
+
+ toggleWhiteBoardLeftSiderVisible: (_root, _args, { cache }) => {
+ const { whiteBoardLeftSiderVisible } = cache.readQuery({
+ query: GET_WHITE_BOARD_LEFT_SIDER_VISIBLE
+ });
+
+ cache.writeQuery({
+ query: GET_WHITE_BOARD_LEFT_SIDER_VISIBLE,
+ data: { whiteBoardLeftSiderVisible: !whiteBoardLeftSiderVisible }
+ });
+
+ return !whiteBoardLeftSiderVisible;
+ },
+
}
};
diff --git a/client/src/pages/jobs-detail/jobs-detail.page.container.jsx b/client/src/pages/jobs-detail/jobs-detail.page.container.jsx
new file mode 100644
index 000000000..44fff921d
--- /dev/null
+++ b/client/src/pages/jobs-detail/jobs-detail.page.container.jsx
@@ -0,0 +1,7 @@
+import React from "react";
+import JobsDetail from "./jobs-detail.page";
+
+export default function JobsDetailPageContainer({ match }) {
+ const jobId = match.params.jobId;
+ return ;
+}
diff --git a/client/src/pages/jobs-detail/jobs-detail.page.jsx b/client/src/pages/jobs-detail/jobs-detail.page.jsx
new file mode 100644
index 000000000..250195ded
--- /dev/null
+++ b/client/src/pages/jobs-detail/jobs-detail.page.jsx
@@ -0,0 +1,5 @@
+import React from "react";
+
+export default function JobsDetail({ jobId }) {
+ return Jobs Detail Page - Job ID {jobId}
;
+}
diff --git a/client/src/pages/jobs/jobs.page.container.jsx b/client/src/pages/jobs/jobs.page.container.jsx
new file mode 100644
index 000000000..0a614b5ab
--- /dev/null
+++ b/client/src/pages/jobs/jobs.page.container.jsx
@@ -0,0 +1,6 @@
+import React from "react";
+import JobsPage from "./jobs.pages";
+
+export default function JobsPageContainer() {
+ return ;
+}
diff --git a/client/src/pages/jobs/jobs.pages.jsx b/client/src/pages/jobs/jobs.pages.jsx
new file mode 100644
index 000000000..a0677a82c
--- /dev/null
+++ b/client/src/pages/jobs/jobs.pages.jsx
@@ -0,0 +1,9 @@
+import React from 'react'
+
+export default function JobsPage() {
+ return (
+
+ Jobs Master Page
+
+ )
+}
diff --git a/client/src/pages/manage/manage.page.container.jsx b/client/src/pages/manage/manage.page.container.jsx
new file mode 100644
index 000000000..4df3c41b6
--- /dev/null
+++ b/client/src/pages/manage/manage.page.container.jsx
@@ -0,0 +1,6 @@
+import React from "react";
+import ManagePage from "./manage.page";
+
+export default function ManagePageContainer() {
+ return ;
+}
diff --git a/client/src/pages/manage/manage.page.jsx b/client/src/pages/manage/manage.page.jsx
index 197c2d6f1..370013eea 100644
--- a/client/src/pages/manage/manage.page.jsx
+++ b/client/src/pages/manage/manage.page.jsx
@@ -1,19 +1,45 @@
-import React from 'react'
+import React from "react";
import { Route } from "react-router";
//Component Imports
-import ManageShopContainer from '../../components/manage-shop/manage-shop.container';
+import WhiteBoardPageContainer from "../white-board/white-board.page.container";
+import JobsPageContainer from "../jobs/jobs.page.container";
+import JobsDetailPageContainer from "../jobs-detail/jobs-detail.page.container";
+import HeaderComponentContainer from "../../components/header/header.container";
+import FooterComponent from "../../components/footer/footer.component";
+import { Layout } from "antd";
-//This page will handle all routing for the entire application.
-export default function Manage({match}) {
- console.log('Manage: match ', match)
- return (
-
-
-
-
-
-
- )
+const { Header, Content, Footer } = Layout;
+//This page will handle all routing for the entire application.
+export default function Manage({ match }) {
+ return (
+
+
+
+
+
+
+
+
+
+
+
+
+ );
}
diff --git a/client/src/pages/white-board/white-board.page.container.jsx b/client/src/pages/white-board/white-board.page.container.jsx
new file mode 100644
index 000000000..389c601f9
--- /dev/null
+++ b/client/src/pages/white-board/white-board.page.container.jsx
@@ -0,0 +1,19 @@
+import React from "react";
+import { Query, Mutation } from "react-apollo";
+
+import WhiteBoardPage from "./white-board.page";
+import Spin from "../../components/loading-spinner/loading-spinner.component";
+import { GET_WHITE_BOARD_LEFT_SIDER_VISIBLE } from "../../graphql/local.queries";
+
+export default function WhiteBoardPageContainer() {
+ return (
+
+ {({ loading, error, data }) => {
+ if (loading) return ;
+ if (error) return error.message;
+ console.log('data from getwhiteboardquery', data)
+ return ;
+ }}
+
+ );
+}
diff --git a/client/src/pages/white-board/white-board.page.jsx b/client/src/pages/white-board/white-board.page.jsx
new file mode 100644
index 000000000..af018c2f0
--- /dev/null
+++ b/client/src/pages/white-board/white-board.page.jsx
@@ -0,0 +1,87 @@
+import React from "react";
+import Board from "react-trello";
+import WhiteBoardCard from "../../components/white-board-card/white-board-card.component";
+import { Layout, Icon, Menu } from "antd";
+
+export default function WhiteBoardPage({ whiteBoardLeftSiderVisible }) {
+ const data = {
+ lanes: [
+ {
+ id: "lane1",
+ title: "Planned Tasks",
+ label: "2/2",
+ cards: [
+ {
+ id: "Card1",
+ title: "Write Blog",
+ description: "Can AI make memes",
+ label: "30 mins"
+ },
+ {
+ id: "Card2",
+ title: "Pay Rent",
+ description: "Transfer via NEFT",
+ label: "5 mins",
+ metadata: { sha: "be312a1" }
+ }
+ ]
+ },
+ {
+ id: "lane2",
+ title: "Completed",
+ label: "0/0",
+ cards: []
+ }
+ ]
+ };
+
+ const { Sider, Content } = Layout;
+ return (
+
+ {
+ //console.log(broken);
+ }}
+ onCollapse={(collapsed, type) => {
+ //console.log(collapsed, type);
+ }}
+ >
+
+
+
+
+
+
+ alert(
+ `Card with id:${cardId} clicked. Has metadata.id: ${metadata.id}`
+ )
+ }
+ />
+
+
+ );
+}
diff --git a/client/yarn.lock b/client/yarn.lock
index 74bfd73cd..fbb1a07d8 100644
--- a/client/yarn.lock
+++ b/client/yarn.lock
@@ -2466,6 +2466,11 @@ autoprefixer@^9.6.1:
postcss "^7.0.23"
postcss-value-parser "^4.0.2"
+autosize@^4.0.2:
+ version "4.0.2"
+ resolved "https://registry.yarnpkg.com/autosize/-/autosize-4.0.2.tgz#073cfd07c8bf45da4b9fd153437f5bafbba1e4c9"
+ integrity sha512-jnSyH2d+qdfPGpWlcuhGiHmqBJ6g3X+8T+iRwFrHPLVcdoGJE/x6Qicm6aDHfTsbgZKxyV8UU/YB2p4cjKDRRA==
+
aws-sign2@~0.7.0:
version "0.7.0"
resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8"
@@ -3140,7 +3145,7 @@ class-utils@^0.3.5:
isobject "^3.0.0"
static-extend "^0.1.1"
-classnames@2.x, classnames@^2.2.0, classnames@^2.2.1, classnames@^2.2.3, classnames@^2.2.5, classnames@^2.2.6, classnames@~2.2.6:
+classnames@2.x, "classnames@>= 2.0", classnames@^2.2.0, classnames@^2.2.1, classnames@^2.2.3, classnames@^2.2.5, classnames@^2.2.6, classnames@~2.2.6:
version "2.2.6"
resolved "https://registry.yarnpkg.com/classnames/-/classnames-2.2.6.tgz#43935bffdd291f326dad0a205309b38d00f650ce"
integrity sha512-JR/iSQOSt+LQIWwrwEzJ9uk0xfN3mTVYMwt1Ir5mUcSN6pU+V4zQFFaJsclJbPuAUQH+yfWef6tm7l1quW3C8Q==
@@ -3922,6 +3927,11 @@ decode-uri-component@^0.2.0:
resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545"
integrity sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=
+deep-diff@^0.3.5:
+ version "0.3.8"
+ resolved "https://registry.yarnpkg.com/deep-diff/-/deep-diff-0.3.8.tgz#c01de63efb0eec9798801d40c7e0dae25b582c84"
+ integrity sha1-wB3mPvsO7JeYgB1Ax+Da4ltYLIQ=
+
deep-equal@^1.0.1:
version "1.1.1"
resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.1.1.tgz#b5c98c942ceffaf7cb051e24e1434a25a2e6076a"
@@ -5747,6 +5757,13 @@ immer@1.10.0:
resolved "https://registry.yarnpkg.com/immer/-/immer-1.10.0.tgz#bad67605ba9c810275d91e1c2a47d4582e98286d"
integrity sha512-O3sR1/opvCDGLEVcvrGTMtLac8GJ5IwZC4puPrLuRj3l7ICKvkmA0vGuU9OW8mV9WIBRnaxp5GJh9IEAaNOoYg==
+immutability-helper@^2.8.1:
+ version "2.9.1"
+ resolved "https://registry.yarnpkg.com/immutability-helper/-/immutability-helper-2.9.1.tgz#71c423ba387e67b6c6ceba0650572f2a2a6727df"
+ integrity sha512-r/RmRG8xO06s/k+PIaif2r5rGc3j4Yhc01jSBfwPCXDLYZwp/yxralI37Df1mwmuzcCsen/E/ITKcTEvc1PQmQ==
+ dependencies:
+ invariant "^2.2.0"
+
immutable@^3.7.4:
version "3.8.2"
resolved "https://registry.yarnpkg.com/immutable/-/immutable-3.8.2.tgz#c2439951455bb39913daf281376f1530e104adf3"
@@ -5896,7 +5913,7 @@ internal-ip@^4.2.0:
default-gateway "^4.2.0"
ipaddr.js "^1.9.0"
-invariant@^2.2.2, invariant@^2.2.4:
+invariant@^2.2.0, invariant@^2.2.2, invariant@^2.2.4:
version "2.2.4"
resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6"
integrity sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==
@@ -6879,6 +6896,11 @@ jsx-ast-utils@^2.1.0, jsx-ast-utils@^2.2.1:
array-includes "^3.0.3"
object.assign "^4.1.0"
+just-curry-it@^3.1.0:
+ version "3.1.0"
+ resolved "https://registry.yarnpkg.com/just-curry-it/-/just-curry-it-3.1.0.tgz#ab59daed308a58b847ada166edd0a2d40766fbc5"
+ integrity sha512-mjzgSOFzlrurlURaHVjnQodyPNvrHrf1TbQP2XU9NSqBtHQPuHZ+Eb6TAJP7ASeJN9h9K0KXoRTs8u6ouHBKvg==
+
killable@^1.0.0:
version "1.0.1"
resolved "https://registry.yarnpkg.com/killable/-/killable-1.0.1.tgz#4c8ce441187a061c7474fb87ca08e2a638194892"
@@ -9195,7 +9217,7 @@ prompts@^2.0.1:
kleur "^3.0.3"
sisteransi "^1.0.3"
-prop-types@15.x, prop-types@^15.5.10, prop-types@^15.5.4, prop-types@^15.5.6, prop-types@^15.5.7, prop-types@^15.5.8, prop-types@^15.5.9, prop-types@^15.6.0, prop-types@^15.6.2, prop-types@^15.7.2:
+prop-types@15.x, prop-types@^15.5.10, prop-types@^15.5.4, prop-types@^15.5.6, prop-types@^15.5.7, prop-types@^15.5.8, prop-types@^15.5.9, prop-types@^15.6.0, prop-types@^15.6.1, prop-types@^15.6.2, prop-types@^15.7.2:
version "15.7.2"
resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.7.2.tgz#52c41e75b8c87e72b9d9360e0206b99dcbffa6c5"
integrity sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==
@@ -9848,6 +9870,10 @@ react-app-polyfill@^1.0.4:
regenerator-runtime "^0.13.3"
whatwg-fetch "^3.0.0"
+"react-click-outside@github:tj/react-click-outside":
+ version "1.1.1"
+ resolved "https://codeload.github.com/tj/react-click-outside/tar.gz/a833ddc5be47490307f9fcc6ed09d8c353108510"
+
react-dev-utils@^9.1.0:
version "9.1.0"
resolved "https://registry.yarnpkg.com/react-dev-utils/-/react-dev-utils-9.1.0.tgz#3ad2bb8848a32319d760d0a84c56c14bdaae5e81"
@@ -9879,7 +9905,7 @@ react-dev-utils@^9.1.0:
strip-ansi "5.2.0"
text-table "0.2.0"
-react-dom@^16.12.0:
+"react-dom@>= 16.3", react-dom@^16.12.0:
version "16.12.0"
resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-16.12.0.tgz#0da4b714b8d13c2038c9396b54a92baea633fe11"
integrity sha512-LMxFfAGrcS3kETtQaCkTKjMiifahaMySFDn71fZUNpPHZQEzmk/GiAeIT8JSOrHB23fnuCOMruL2a8NYlw+8Gw==
@@ -9909,11 +9935,35 @@ react-lazy-load@^3.0.13:
lodash.throttle "^4.0.0"
prop-types "^15.5.8"
-react-lifecycles-compat@^3.0.2, react-lifecycles-compat@^3.0.4:
+react-lifecycles-compat@^3.0.0, react-lifecycles-compat@^3.0.2, react-lifecycles-compat@^3.0.4:
version "3.0.4"
resolved "https://registry.yarnpkg.com/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz#4f1a273afdfc8f3488a8c516bfda78f872352362"
integrity sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA==
+react-popopo@^2.1.9:
+ version "2.1.9"
+ resolved "https://registry.yarnpkg.com/react-popopo/-/react-popopo-2.1.9.tgz#d93f70a8fb68227907d00c0cea4d8f5d321053ea"
+ integrity sha512-zXOpcLSpaLZmBxhdtenJzQPLjY81XknVS/tXH4Kv5BBrnYIUPHvVdGmS7+o9s7DjCzzdK7AdVwtG+FVSO0cZ8g==
+ dependencies:
+ classnames ">= 2.0"
+ prop-types "^15.7.2"
+ react ">= 16.3"
+ react-dom ">= 16.3"
+ styled-components ">= 4.0"
+
+react-redux@^5.0.7:
+ version "5.1.2"
+ resolved "https://registry.yarnpkg.com/react-redux/-/react-redux-5.1.2.tgz#b19cf9e21d694422727bf798e934a916c4080f57"
+ integrity sha512-Ns1G0XXc8hDyH/OcBHOxNgQx9ayH3SPxBnFCOidGKSle8pKihysQw2rG/PmciUQRoclhVBO8HMhiRmGXnDja9Q==
+ dependencies:
+ "@babel/runtime" "^7.1.2"
+ hoist-non-react-statics "^3.3.0"
+ invariant "^2.2.4"
+ loose-envify "^1.1.0"
+ prop-types "^15.6.1"
+ react-is "^16.6.0"
+ react-lifecycles-compat "^3.0.0"
+
react-router-dom@^5.1.2:
version "5.1.2"
resolved "https://registry.yarnpkg.com/react-router-dom/-/react-router-dom-5.1.2.tgz#06701b834352f44d37fbb6311f870f84c76b9c18"
@@ -10015,7 +10065,26 @@ react-slick@~0.25.2:
lodash.debounce "^4.0.8"
resize-observer-polyfill "^1.5.0"
-react@^16.12.0:
+react-trello@^2.2.3:
+ version "2.2.3"
+ resolved "https://registry.yarnpkg.com/react-trello/-/react-trello-2.2.3.tgz#a8018c3b4812902b6030dc1ef3b8123c270ace5c"
+ integrity sha512-eB2BT3EJl7A30/+GcgKFnvhydSjMgzmvjPpx7MHgc5gmUuK2sbEzpNXtx9p7/eQC5dd10T7pnQa2muURp6ESCg==
+ dependencies:
+ autosize "^4.0.2"
+ classnames "^2.2.6"
+ immutability-helper "^2.8.1"
+ lodash "^4.17.11"
+ prop-types "^15.7.2"
+ react-click-outside tj/react-click-outside
+ react-popopo "^2.1.9"
+ react-redux "^5.0.7"
+ redux "^4.0.0"
+ redux-actions "^2.6.1"
+ redux-logger "^3.0.6"
+ smooth-dnd "https://github.com/rcdexta/smooth-dnd"
+ uuid "^3.3.2"
+
+"react@>= 16.3", react@^16.12.0:
version "16.12.0"
resolved "https://registry.yarnpkg.com/react/-/react-16.12.0.tgz#0c0a9c6a142429e3614834d5a778e18aa78a0b83"
integrity sha512-fglqy3k5E+81pA8s+7K0/T3DBCF0ZDOher1elBFzF7O6arXJgzyu/FW+COxFvAWXJoJN9KIZbT2LXlukwphYTA==
@@ -10128,6 +10197,37 @@ redent@^1.0.0:
indent-string "^2.1.0"
strip-indent "^1.0.1"
+reduce-reducers@^0.4.3:
+ version "0.4.3"
+ resolved "https://registry.yarnpkg.com/reduce-reducers/-/reduce-reducers-0.4.3.tgz#8e052618801cd8fc2714b4915adaa8937eb6d66c"
+ integrity sha512-+CNMnI8QhgVMtAt54uQs3kUxC3Sybpa7Y63HR14uGLgI9/QR5ggHvpxwhGGe3wmx5V91YwqQIblN9k5lspAmGw==
+
+redux-actions@^2.6.1:
+ version "2.6.5"
+ resolved "https://registry.yarnpkg.com/redux-actions/-/redux-actions-2.6.5.tgz#bdca548768ee99832a63910c276def85e821a27e"
+ integrity sha512-pFhEcWFTYNk7DhQgxMGnbsB1H2glqhQJRQrtPb96kD3hWiZRzXHwwmFPswg6V2MjraXRXWNmuP9P84tvdLAJmw==
+ dependencies:
+ invariant "^2.2.4"
+ just-curry-it "^3.1.0"
+ loose-envify "^1.4.0"
+ reduce-reducers "^0.4.3"
+ to-camel-case "^1.0.0"
+
+redux-logger@^3.0.6:
+ version "3.0.6"
+ resolved "https://registry.yarnpkg.com/redux-logger/-/redux-logger-3.0.6.tgz#f7555966f3098f3c88604c449cf0baf5778274bf"
+ integrity sha1-91VZZvMJjzyIYExEnPC69XeCdL8=
+ dependencies:
+ deep-diff "^0.3.5"
+
+redux@^4.0.0:
+ version "4.0.4"
+ resolved "https://registry.yarnpkg.com/redux/-/redux-4.0.4.tgz#4ee1aeb164b63d6a1bcc57ae4aa0b6e6fa7a3796"
+ integrity sha512-vKv4WdiJxOWKxK0yRoaK3Y4pxxB0ilzVx6dszU2W8wLxlb2yikRph4iV/ymtdJ6ZxpBLFbyrxklnT5yBbQSl3Q==
+ dependencies:
+ loose-envify "^1.4.0"
+ symbol-observable "^1.2.0"
+
regenerate-unicode-properties@^8.1.0:
version "8.1.0"
resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-8.1.0.tgz#ef51e0f0ea4ad424b77bf7cb41f3e015c70a3f0e"
@@ -10783,6 +10883,10 @@ slice-ansi@^2.1.0:
astral-regex "^1.0.0"
is-fullwidth-code-point "^2.0.0"
+"smooth-dnd@git+https://github.com/rcdexta/smooth-dnd.git":
+ version "0.6.3"
+ resolved "git+https://github.com/rcdexta/smooth-dnd.git#f13924c67bf6ffe4613d97bb1ee83f11d364eb1e"
+
snapdragon-node@^2.0.1:
version "2.1.1"
resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b"
@@ -11226,7 +11330,7 @@ style-loader@1.0.0:
loader-utils "^1.2.3"
schema-utils "^2.0.1"
-styled-components@^4.4.1:
+"styled-components@>= 4.0", styled-components@^4.4.1:
version "4.4.1"
resolved "https://registry.yarnpkg.com/styled-components/-/styled-components-4.4.1.tgz#e0631e889f01db67df4de576fedaca463f05c2f2"
integrity sha512-RNqj14kYzw++6Sr38n7197xG33ipEOktGElty4I70IKzQF1jzaD1U4xQ+Ny/i03UUhHlC5NWEO+d8olRCDji6g==
@@ -11307,7 +11411,7 @@ svgo@^1.0.0, svgo@^1.2.2:
unquote "~1.1.1"
util.promisify "~1.0.0"
-symbol-observable@^1.0.2:
+symbol-observable@^1.0.2, symbol-observable@^1.2.0:
version "1.2.0"
resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-1.2.0.tgz#c22688aed4eab3cdc2dfeacbb561660560a00804"
integrity sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ==
@@ -11460,11 +11564,23 @@ to-arraybuffer@^1.0.0:
resolved "https://registry.yarnpkg.com/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz#7d229b1fcc637e466ca081180836a7aabff83f43"
integrity sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=
+to-camel-case@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/to-camel-case/-/to-camel-case-1.0.0.tgz#1a56054b2f9d696298ce66a60897322b6f423e46"
+ integrity sha1-GlYFSy+daWKYzmamCJcyK29CPkY=
+ dependencies:
+ to-space-case "^1.0.0"
+
to-fast-properties@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e"
integrity sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=
+to-no-case@^1.0.0:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/to-no-case/-/to-no-case-1.0.2.tgz#c722907164ef6b178132c8e69930212d1b4aa16a"
+ integrity sha1-xyKQcWTvaxeBMsjmmTAhLRtKoWo=
+
to-object-path@^0.3.0:
version "0.3.0"
resolved "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af"
@@ -11490,6 +11606,13 @@ to-regex@^3.0.1, to-regex@^3.0.2:
regex-not "^1.0.2"
safe-regex "^1.1.0"
+to-space-case@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/to-space-case/-/to-space-case-1.0.0.tgz#b052daafb1b2b29dc770cea0163e5ec0ebc9fc17"
+ integrity sha1-sFLar7Gysp3HcM6gFj5ewOvJ/Bc=
+ dependencies:
+ to-no-case "^1.0.0"
+
toggle-selection@^1.0.6:
version "1.0.6"
resolved "https://registry.yarnpkg.com/toggle-selection/-/toggle-selection-1.0.6.tgz#6e45b1263f2017fa0acc7d89d78b15b8bf77da32"