Skip to content

Commit bef1c33

Browse files
authored
update to 1.0.2 (#3)
1 parent 7d73f07 commit bef1c33

File tree

15 files changed

+65
-36
lines changed

15 files changed

+65
-36
lines changed

Makefile

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ help:
1616
@echo ' make <target>'
1717
@echo ''
1818
@echo 'Targets:'
19-
@awk '/^[a-zA-Z\-\_0-9]+:/ { \
19+
@awk '/^[a-zA-Z_0-9-]+:/ { \
2020
helpMessage = match(lastLine, /^## (.*)/); \
2121
if (helpMessage) { \
2222
helpCommand = substr($$1, 0, index($$1, ":")-1); \
@@ -59,13 +59,11 @@ logs:
5959
## Stop the services
6060
stop:
6161
docker-compose down
62-
docker volume rm $(current_dir)_client_node_modules || true
63-
docker volume rm $(current_dir)_server_node_modules || true
62+
docker volume rm $(current_dir)_{client,server}_node_modules 2>/dev/null || true
6463

6564
## Clear the sandbox and development databases
6665
clear-db: stop
67-
docker volume rm $(current_dir)_pg_sandbox_data || true
68-
docker volume rm $(current_dir)_pg_development_data || true
66+
docker volume rm $(current_dir)_pg_{sandbox,development}_data 2>/dev/null || true
6967

7068
$(envfile):
7169
@echo "Error: .env file does not exist! See the README for instructions."

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Plaid Pattern
1+
# Plaid Pattern (Beta)
22

33
![Plaid Pattern client][client-img]
44

client/package-lock.json

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

client/package.json

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,13 @@
11
{
22
"name": "client",
3-
"version": "1.0.1",
3+
"version": "1.0.2",
44
"private": true,
55
"dependencies": {
66
"axios": "^0.18.0",
77
"date-fns": "^1.30.1",
88
"prop-types": "^15.7.2",
99
"react": "^16.8.6",
1010
"react-dom": "^16.8.6",
11-
"react-onclickoutside": "^6.8.0",
1211
"react-router-dom": "^5.0.0",
1312
"react-scripts": "3.0.1",
1413
"react-toastify": "^5.1.0",

client/src/components/Banner.jsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ const Banner = ({ initialSubheading }) => {
1818
const successText =
1919
'Success! You can explore account and transaction details for the linked item';
2020

21-
const subdeadingText = initialSubheading ? initialText : successText;
21+
const subheadingText = initialSubheading ? initialText : successText;
2222
return (
2323
<div id="banner" className="bottom-border-content">
2424
<h4>{PLAID_ENV} User</h4>
@@ -34,7 +34,7 @@ const Banner = ({ initialSubheading }) => {
3434
</a>
3535
</div>
3636
<p id="intro" className="everpresent-content__subheading">
37-
{subdeadingText}
37+
{subheadingText}
3838
</p>
3939
</div>
4040
);

client/src/components/LinkButton.jsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ export default function LinkButton({
2828
const { linkHandlers, getLinkHandler } = useLink();
2929

3030
const isPrimary = primary ? 'button--is-primary' : '';
31-
const classlist = altClasses !== undefined ? altClasses : '';
31+
const classlist = altClasses !== null ? altClasses : '';
3232

3333
useEffect(() => {
3434
getLinkHandler({ userId, itemId });

client/src/components/MoreDetails.jsx

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1-
import React, { useState } from 'react';
1+
import React, { useState, useRef } from 'react';
22
import PropTypes from 'prop-types';
3-
import onClickOutside from 'react-onclickoutside';
43
import { IconDots, Button, LinkButton } from '.';
4+
import { useOnClickOutside } from '../hooks';
55

66
const propTypes = {
77
handleDelete: PropTypes.func.isRequired,
@@ -23,19 +23,23 @@ export function MoreDetails({
2323
itemId,
2424
}) {
2525
const [menuShown, setmenuShown] = useState(false);
26-
27-
MoreDetails.handleClickOutside = () => setmenuShown(false);
26+
const refToButton = useRef();
27+
const refToMenu = useOnClickOutside({
28+
callback: () => setmenuShown(false),
29+
ignoreRef: refToButton,
30+
});
2831

2932
return (
3033
<div className="more-details">
3134
<button
35+
ref={refToButton}
3236
className="more-details__icon"
3337
onClick={() => setmenuShown(current => !current)}
3438
>
3539
<IconDots />
3640
</button>
3741
{menuShown && (
38-
<div className="more-details__button-group">
42+
<div className="more-details__button-group" ref={refToMenu}>
3943
{setBadStateShown && (
4044
<Button
4145
altClasses="more-details_button"
@@ -66,8 +70,4 @@ export function MoreDetails({
6670
MoreDetails.propTypes = propTypes;
6771
MoreDetails.defaultProps = defaultProps;
6872

69-
const clickOutsideConfig = {
70-
handleClickOutside: () => MoreDetails.handleClickOutside,
71-
};
72-
73-
export default onClickOutside(MoreDetails, clickOutsideConfig);
73+
export default MoreDetails;

client/src/hooks/index.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,2 @@
11
export { default as useBoolean } from './useBoolean';
2+
export { default as useOnClickOutside } from './useOnClickOutside';
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
import { useEffect, useRef } from 'react';
2+
3+
export default function useOnClickOutside({ callback, ignoreRef }) {
4+
const ref = useRef();
5+
6+
useEffect(() => {
7+
const listener = event => {
8+
if (!ref.current || ref.current.contains(event.target)) {
9+
return;
10+
}
11+
12+
if (!ignoreRef.current || ignoreRef.current.contains(event.target)) {
13+
return;
14+
}
15+
16+
callback(event);
17+
};
18+
19+
document.addEventListener('mousedown', listener);
20+
document.addEventListener('touchstart', listener);
21+
22+
return () => {
23+
document.removeEventListener('mousedown', listener);
24+
document.removeEventListener('touchstart', listener);
25+
};
26+
}, [callback, ignoreRef]);
27+
28+
return ref;
29+
}

docker-compose.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ services:
2020

2121
server:
2222
build: ./server
23-
image: plaidinc/pattern-server:1.0.1
23+
image: plaidinc/pattern-server:1.0.2
2424
ports:
2525
- 5000:5000
2626
environment:
@@ -38,7 +38,7 @@ services:
3838

3939
ngrok:
4040
build: ./ngrok
41-
image: plaidinc/pattern-ngrok:1.0.1
41+
image: plaidinc/pattern-ngrok:1.0.2
4242
command: ["ngrok", "http", "server:5000"]
4343
ports:
4444
- 4040:4040
@@ -47,7 +47,7 @@ services:
4747

4848
client:
4949
build: ./client
50-
image: plaidinc/pattern-client:1.0.1
50+
image: plaidinc/pattern-client:1.0.2
5151
ports:
5252
- 3000:3000
5353
environment:

0 commit comments

Comments
 (0)