Skip to content

Commit e7499b8

Browse files
committed
editor, .prettierrc, typescrip, bump libs, eslint
1 parent d7d2554 commit e7499b8

File tree

8 files changed

+418
-952
lines changed

8 files changed

+418
-952
lines changed

.editorconfig

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,13 @@
1+
# http://editorconfig.org
12
root = true
23

3-
[{src,scripts,config}/**.{ts,json,js}]
4+
[*]
5+
indent_style = space
6+
indent_size = 2
47
end_of_line = lf
58
charset = utf-8
6-
quote_type = single
79
trim_trailing_whitespace = true
810
insert_final_newline = true
9-
indent_style = space
10-
indent_size = 2
1111

1212
[*.md]
13-
insert_final_newline = false
14-
trim_trailing_whitespace = false
13+
trim_trailing_whitespace = false

.eslintrc

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"parser": "babel-eslint",
3-
"extends": "airbnb",
3+
"extends": ["airbnb", "prettier", "prettier/react"],
44
"parserOptions": {
55
"ecmaVersion": 6,
66
"sourceType": "module",
@@ -30,11 +30,7 @@
3030
}
3131
}
3232
],
33-
"plugins": [
34-
"react",
35-
"jsx-a11y",
36-
"babel"
37-
],
33+
"plugins": ["react", "jsx-a11y", "babel"],
3834
"env": {
3935
"browser": true,
4036
"jest": true,

.prettierrc

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
{
2+
"trailingComma": "all",
3+
"tabWidth": 2,
4+
"semi": true,
5+
"singleQuote": true,
6+
"printWidth": 180,
7+
"useTabs": false,
8+
"bracketSpacing": true,
9+
"arrowParens": "always"
10+
}

package-lock.json

Lines changed: 347 additions & 854 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -36,19 +36,20 @@
3636
"filestack-js": "3.x.x"
3737
},
3838
"devDependencies": {
39-
"@babel/cli": "^7.10.4",
40-
"@babel/core": "^7.10.4",
39+
"@babel/cli": "^7.10.5",
40+
"@babel/core": "^7.10.5",
4141
"@babel/plugin-proposal-class-properties": "^7.10.4",
4242
"@babel/preset-env": "^7.10.4",
4343
"@babel/preset-es2015": "^7.0.0-beta.53",
4444
"@babel/preset-react": "^7.10.4",
4545
"@babel/preset-stage-1": "^7.8.3",
4646
"@babel/preset-stage-2": "^7.8.3",
47-
"@babel/runtime": "^7.10.4",
48-
"@types/react": "^16.9.41",
47+
"@babel/runtime": "^7.10.5",
48+
"@types/react": "^16.9.43",
4949
"babel-eslint": "^10.1.0",
5050
"babel-jest": "^26.1.0",
5151
"babel-loader": "^8.1.0",
52+
"browser-resolve": "^1.11.3",
5253
"css-loader": "^3.6.0",
5354
"enzyme": "^3.11.0",
5455
"enzyme-adapter-react-16": "^1.15.2",
@@ -69,7 +70,7 @@
6970
"react-scripts": "^3.4.1",
7071
"react-test-renderer": "^16.13.1",
7172
"rimraf": "^3.0.2",
72-
"standard-version": "^8.0.0",
73+
"standard-version": "^8.0.2",
7374
"style-loader": "^1.2.1",
7475
"terser-webpack-plugin": "^3.0.6",
7576
"typescript": "^3.9.6",
@@ -98,7 +99,6 @@
9899
"html",
99100
"text"
100101
],
101-
"browser": true,
102102
"moduleNameMapper": {
103103
"mock-data": "<rootDir>/tests/__mocks__/mockData.js",
104104
"^.+\\.(scss|css|svg|png)$": "identity-obj-proxy",

src/ReactFilestack.jsx

Lines changed: 45 additions & 62 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,8 @@ class ReactFilestack extends Component {
1111
customClass: 'filestack-react',
1212
},
1313
actionOptions: {},
14-
onSuccess: result => console.log(result),
15-
onError: error => console.error(error),
14+
onSuccess: (result) => console.log(result),
15+
onError: (error) => console.error(error),
1616
clientOptions: {},
1717
file: null,
1818
source: null,
@@ -21,7 +21,7 @@ class ReactFilestack extends Component {
2121

2222
static propTypes = {
2323
apikey: PropTypes.string.isRequired,
24-
action: PropTypes.oneOf(['transform', 'retrieve', 'metadata', 'storeUrl', 'upload', 'remove', 'pick', 'removeMetadata', 'preview', 'logout']),
24+
action: PropTypes.oneOf(['transform', 'retrieve', 'metadata', 'storeUrl', 'upload', 'multiupload', 'remove', 'pick', 'removeMetadata', 'preview', 'logout']),
2525
componentDisplayMode: PropTypes.objectOf(PropTypes.any),
2626
actionOptions: PropTypes.objectOf(PropTypes.any),
2727
onSuccess: PropTypes.func,
@@ -38,13 +38,7 @@ class ReactFilestack extends Component {
3838

3939
constructor(props) {
4040
super(props);
41-
const {
42-
apikey,
43-
clientOptions,
44-
actionOptions,
45-
action,
46-
componentDisplayMode,
47-
} = this.props;
41+
const { apikey, clientOptions, actionOptions, action, componentDisplayMode } = this.props;
4842
const defaultComponentDisplayMode = {
4943
type: 'button',
5044
customText: 'Pick file',
@@ -60,27 +54,17 @@ class ReactFilestack extends Component {
6054
this.onFail = this.onFail.bind(this);
6155
}
6256

63-
componentWillMount () {
64-
const {
65-
customRender,
66-
} = this.props;
67-
const {
68-
componentDisplayModeMerged,
69-
} = this.state;
57+
componentWillMount() {
58+
const { customRender } = this.props;
59+
const { componentDisplayModeMerged } = this.state;
7060
if (componentDisplayModeMerged.type === 'immediate' && !customRender) {
71-
this.completeAction()
72-
.then(this.onFinished)
73-
.catch(this.onFail);
61+
this.completeAction().then(this.onFinished).catch(this.onFail);
7462
}
7563
}
7664

7765
componentWillUnmount() {
78-
const {
79-
action,
80-
} = this.props;
81-
const {
82-
picker,
83-
} = this.state;
66+
const { action } = this.props;
67+
const { picker } = this.state;
8468
if (action === 'pick') {
8569
picker.close();
8670
}
@@ -94,9 +78,7 @@ class ReactFilestack extends Component {
9478
event.stopPropagation();
9579
event.preventDefault();
9680

97-
this.completeAction()
98-
.then(this.onFinished)
99-
.catch(this.onFail);
81+
this.completeAction().then(this.onFinished).catch(this.onFail);
10082
};
10183

10284
/**
@@ -127,10 +109,7 @@ class ReactFilestack extends Component {
127109
* Complete executing of provided action
128110
*/
129111
completeAction = () => {
130-
const {
131-
client,
132-
picker,
133-
} = this.state;
112+
const { client, picker } = this.state;
134113
const {
135114
actionOptions,
136115
action,
@@ -140,50 +119,54 @@ class ReactFilestack extends Component {
140119
} = this.props;
141120

142121
switch (action) {
143-
case 'transform': return new Promise((resolve, reject) => {
144-
try {
145-
resolve(client.transform(source, actionOptions));
146-
} catch (err) {
147-
reject(err);
148-
}
149-
});
150-
case 'retrieve': return client.retrieve(source, actionOptions, security);
151-
case 'metadata': return client.metadata(source, actionOptions, security);
152-
case 'storeUrl': return client.storeURL(source, actionOptions, security);
153-
case 'upload': return client.upload(file, actionOptions);
154-
case 'remove': return client.remove(source, security);
155-
case 'removeMetadata': return client.removeMetadata(source, security);
156-
case 'preview': return client.preview(source, actionOptions);
157-
case 'logout': return client.logout(actionOptions);
158-
default: return picker.open();
122+
case 'transform':
123+
return new Promise((resolve, reject) => {
124+
try {
125+
resolve(client.transform(source, actionOptions));
126+
} catch (err) {
127+
reject(err);
128+
}
129+
});
130+
case 'retrieve':
131+
return client.retrieve(source, actionOptions, security);
132+
case 'metadata':
133+
return client.metadata(source, actionOptions, security);
134+
case 'storeUrl':
135+
return client.storeURL(source, actionOptions, security);
136+
case 'upload':
137+
return client.upload(file, actionOptions);
138+
case 'multiupload':
139+
return client.upload(file, actionOptions);
140+
case 'remove':
141+
return client.remove(source, security);
142+
case 'removeMetadata':
143+
return client.removeMetadata(source, security);
144+
case 'preview':
145+
return client.preview(source, actionOptions);
146+
case 'logout':
147+
return client.logout(actionOptions);
148+
default:
149+
return picker.open();
159150
}
160151
};
161152

162-
render () {
163-
const {
164-
customRender: CustomRender,
165-
} = this.props;
153+
render() {
154+
const { customRender: CustomRender } = this.props;
166155
const {
167156
componentDisplayModeMerged: { type, customText, customClass },
168157
} = this.state;
169158
if (CustomRender) {
170-
return (
171-
<CustomRender onPick={this.onClickPick} />
172-
);
159+
return <CustomRender onPick={this.onClickPick} />;
173160
} else if (type === 'immediate') {
174-
return (null);
161+
return null;
175162
} else {
176163
const tagMap = {
177164
button: 'button',
178165
link: 'a',
179166
};
180167
const Tag = tagMap[type];
181168
return (
182-
<Tag
183-
name="filestack"
184-
onClick={this.onClickPick}
185-
className={customClass}
186-
>
169+
<Tag name="filestack" onClick={this.onClickPick} className={customClass}>
187170
{customText}
188171
</Tag>
189172
);

src/ReactFilestack.test.tsx

Lines changed: 0 additions & 6 deletions
This file was deleted.

src/index.d.ts

Lines changed: 3 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,6 @@
11
import React from 'react';
22

3-
type FilestackAction =
4-
| 'transform'
5-
| 'retrieve'
6-
| 'metadata'
7-
| 'storeUrl'
8-
| 'upload'
9-
| 'remove'
10-
| 'pick'
11-
| 'removeMetadata'
12-
| 'preview'
13-
| 'logout';
3+
type FilestackAction = 'transform' | 'retrieve' | 'metadata' | 'storeUrl' | 'upload' | 'multiupload' | 'remove' | 'pick' | 'removeMetadata' | 'preview' | 'logout';
144

155
type ComponentDisplayModeType = 'button' | 'link' | 'immediate';
166

@@ -26,15 +16,16 @@ interface Props {
2616
customText?: string;
2717
customClass?: string;
2818
};
19+
// actionOptions
2920
onSuccess?: (result: FilestackResult) => void;
3021
onError?: (error: FilestackError) => void;
3122
clientOptions?: {
3223
cname?: string;
3324
security?: {
3425
policy?: string;
3526
signature?: string;
36-
sessionCache?: boolean;
3727
};
28+
sessionCache?: boolean;
3829
};
3930
file?: File;
4031
source?: string;

0 commit comments

Comments
 (0)