@imposium-hub/components 2.5.10-10 → 2.5.10-11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (51) hide show
  1. package/dist/cjs/components/card/Card.d.ts +0 -1
  2. package/dist/cjs/components/card/Card.js +4 -17
  3. package/dist/cjs/components/card/Card.js.map +1 -1
  4. package/dist/cjs/components/confirm-modal/ConfirmModal.d.ts +11 -9
  5. package/dist/cjs/components/confirm-modal/ConfirmModal.js +10 -9
  6. package/dist/cjs/components/confirm-modal/ConfirmModal.js.map +1 -1
  7. package/dist/cjs/components/data-table/Paginator.js +7 -51
  8. package/dist/cjs/components/data-table/Paginator.js.map +1 -1
  9. package/dist/cjs/components/smpte-field/SMPTEField.d.ts +1 -2
  10. package/dist/cjs/components/smpte-field/SMPTEField.js +3 -9
  11. package/dist/cjs/components/smpte-field/SMPTEField.js.map +1 -1
  12. package/dist/cjs/constants/copy.js +2 -2
  13. package/dist/cjs/constants/copy.js.map +1 -1
  14. package/dist/cjs/index.d.ts +1 -3
  15. package/dist/cjs/index.js +2 -6
  16. package/dist/cjs/index.js.map +1 -1
  17. package/dist/cjs/redux/actions/asset-list.js +42 -34
  18. package/dist/cjs/redux/actions/asset-list.js.map +1 -1
  19. package/dist/esm/components/card/Card.d.ts +0 -1
  20. package/dist/esm/components/card/Card.js +4 -16
  21. package/dist/esm/components/card/Card.js.map +1 -1
  22. package/dist/esm/components/confirm-modal/ConfirmModal.d.ts +11 -9
  23. package/dist/esm/components/confirm-modal/ConfirmModal.js +10 -8
  24. package/dist/esm/components/confirm-modal/ConfirmModal.js.map +1 -1
  25. package/dist/esm/components/data-table/Paginator.js +44 -74
  26. package/dist/esm/components/data-table/Paginator.js.map +1 -1
  27. package/dist/esm/components/smpte-field/SMPTEField.d.ts +1 -2
  28. package/dist/esm/components/smpte-field/SMPTEField.js +3 -9
  29. package/dist/esm/components/smpte-field/SMPTEField.js.map +1 -1
  30. package/dist/esm/constants/copy.js +2 -2
  31. package/dist/esm/constants/copy.js.map +1 -1
  32. package/dist/esm/index.d.ts +1 -3
  33. package/dist/esm/index.js +1 -3
  34. package/dist/esm/index.js.map +1 -1
  35. package/dist/esm/redux/actions/asset-list.js +42 -34
  36. package/dist/esm/redux/actions/asset-list.js.map +1 -1
  37. package/dist/styles.css +0 -10
  38. package/dist/styles.less +0 -13
  39. package/less/components/data-table.less +0 -4
  40. package/less/components/form-field.less +0 -4
  41. package/less/components/tag.less +0 -5
  42. package/package.json +1 -1
  43. package/src/components/card/Card.tsx +13 -27
  44. package/src/components/confirm-modal/ConfirmModal.tsx +24 -19
  45. package/src/components/data-table/Paginator.tsx +93 -140
  46. package/src/components/smpte-field/SMPTEField.tsx +3 -8
  47. package/src/constants/copy.ts +2 -2
  48. package/src/index.ts +0 -4
  49. package/src/redux/actions/asset-list.ts +44 -37
  50. package/src/components/assets/AssetsTableAssetIdCell.tsx +0 -65
  51. package/src/components/assets/AssetsTableAssetIdFilter.tsx +0 -40
@@ -12,7 +12,6 @@ interface ISMPTEFieldProps {
12
12
  width?: string | number;
13
13
  onChange?(e): void;
14
14
  onBlur?(e): void;
15
- onError?(e): void;
16
15
  info?: string;
17
16
  labelPosition?: string;
18
17
  labelWidth?: string | number;
@@ -76,7 +75,7 @@ class SMPTEField extends React.PureComponent<ISMPTEFieldProps, ISMPTEFieldState>
76
75
 
77
76
  private onBlur(e?) {
78
77
  const val = e ? e.target.value : this.inputRef.current.value;
79
- const isValid = this.SMTPEValidator(val);
78
+ const isValid = this.smptValidator(val);
80
79
 
81
80
  if (e && e.key === 'Enter') {
82
81
  this.setDuration(isValid, val);
@@ -89,12 +88,10 @@ class SMPTEField extends React.PureComponent<ISMPTEFieldProps, ISMPTEFieldState>
89
88
 
90
89
  private onChange() {
91
90
  const val = this.inputRef.current.value;
92
- const isValid = this.SMTPEValidator(val);
91
+ const isValid = this.smptValidator(val);
93
92
 
94
93
  if (isValid) {
95
94
  this.props.onChange(val);
96
- } else {
97
- this.props.onError(isValid);
98
95
  }
99
96
  }
100
97
 
@@ -104,13 +101,11 @@ class SMPTEField extends React.PureComponent<ISMPTEFieldProps, ISMPTEFieldState>
104
101
  const smpte = getSMPTE(frameRate, val);
105
102
  if (smpte && this.props.onBlur) {
106
103
  this.props.onBlur(smpte);
107
- } else {
108
- this.props.onError(isValid);
109
104
  }
110
105
  }
111
106
  }
112
107
 
113
- private SMTPEValidator(val) {
108
+ private smptValidator(val) {
114
109
  const isValidSMPTETimeCode = new RegExp(this.regex);
115
110
  const isValid = isValidSMPTETimeCode.test(val);
116
111
  const errorMsg = isValid ? null : TIMECODE.ERROR;
@@ -273,7 +273,7 @@ export const copying: any = {
273
273
  };
274
274
 
275
275
  export const confirm: any = {
276
- yes: 'Save',
277
- no: "Don't Save",
276
+ yes: 'Yes',
277
+ no: 'No',
278
278
  cancel: 'Cancel'
279
279
  };
package/src/index.ts CHANGED
@@ -40,7 +40,6 @@ import AssetField from './components/assets/AssetField';
40
40
  import AssetsTableDropzone from './components/assets/AssetsTableDropzone';
41
41
  import AssetsTableNameCell from './components/assets/AssetsTableNameCell';
42
42
  import AssetsTableNameFilter from './components/assets/AssetsTableNameFilter';
43
- import AssetsTableAssetIdFilter from './components/assets/AssetsTableAssetIdFilter';
44
43
  import AssetsTableSelectCell from './components/assets/AssetsTableSelectCell';
45
44
  import AssetsTableSelectFilter from './components/assets/AssetsTableSelectFilter';
46
45
  import AssetsTableTagsCell from './components/assets/AssetsTableTagsCell';
@@ -160,7 +159,6 @@ import ContextMenuTrigger from './components/context-menu/ContextMenuTrigger';
160
159
  import CopyPropIdButton from './components/copy-prop-id-button/CopyPropIdButton';
161
160
  import Submenu from './components/context-menu/SubMenu';
162
161
  import { ConfirmModal } from './components/confirm-modal/ConfirmModal';
163
- import AssetsTableAssetIdCell from './components/assets/AssetsTableAssetIdCell';
164
162
 
165
163
  export {
166
164
  AppWrapper,
@@ -219,8 +217,6 @@ export {
219
217
  AssetsTableGlobalCell,
220
218
  AssetsTableStatusCell,
221
219
  AssetsTableNameFilter,
222
- AssetsTableAssetIdFilter,
223
- AssetsTableAssetIdCell,
224
220
  AssetsTableNameCell,
225
221
  AssetsTableDurationCell,
226
222
  AssetsTableRateCell,
@@ -78,19 +78,22 @@ export const getAssets = (api: IImposiumAPI, storyId: string): any => {
78
78
 
79
79
  export const deleteAssets = (api: IImposiumAPI, ids: string[], storyId: string): any => {
80
80
  return (dispatch) => {
81
- return new Promise<boolean>((resolve, reject) => {
82
- dispatch(toggleLoading(true));
83
- api.deleteAssets(ids)
84
- .then(() => {
85
- dispatch(getAssets(api, storyId));
86
- dispatch(toggleLoading(false));
87
- resolve(true);
88
- })
89
- .catch((errors: Error[]) => {
90
- dispatch(toggleLoading(false));
91
- reject(false);
92
- });
93
- });
81
+ if (window.confirm(`Are you sure you want to delete ${ids.length} assets?`)) {
82
+ return new Promise<boolean>((resolve, reject) => {
83
+ dispatch(toggleLoading(true));
84
+ api.deleteAssets(ids)
85
+ .then(() => {
86
+ dispatch(getAssets(api, storyId));
87
+ resolve(true);
88
+ })
89
+ .catch((errors: Error[]) => {
90
+ dispatch(toggleLoading(false));
91
+ reject(false);
92
+ });
93
+ });
94
+ } else {
95
+ return Promise.resolve(false);
96
+ }
94
97
  };
95
98
  };
96
99
 
@@ -191,18 +194,20 @@ export const deleteAssetTags = (api: IImposiumAPI, id: string): any => {
191
194
 
192
195
  export const deleteAssetsTags = (api: IImposiumAPI, ids: string[], storyId: string): any => {
193
196
  return (dispatch) => {
194
- return new Promise<void>((resolve, reject) => {
195
- dispatch(toggleLoading(true));
196
- api.deleteAssetsTags(ids)
197
- .then(() => {
198
- dispatch(getAssets(api, storyId));
199
- resolve();
200
- })
201
- .catch((errors: Error[]) => {
202
- dispatch(toggleLoading(false));
203
- reject();
204
- });
205
- });
197
+ if (window.confirm(`Are you sure you want to remove all tags from ${ids.length} assets?`)) {
198
+ return new Promise<void>((resolve, reject) => {
199
+ dispatch(toggleLoading(true));
200
+ api.deleteAssetsTags(ids)
201
+ .then(() => {
202
+ dispatch(getAssets(api, storyId));
203
+ resolve();
204
+ })
205
+ .catch((errors: Error[]) => {
206
+ dispatch(toggleLoading(false));
207
+ reject();
208
+ });
209
+ });
210
+ }
206
211
  };
207
212
  };
208
213
 
@@ -240,18 +245,20 @@ export const updateAssetStory = (api: IImposiumAPI, id: string, storyId: string)
240
245
 
241
246
  export const decoupleAssets = (api: IImposiumAPI, ids: string[], storyId: string): any => {
242
247
  return (dispatch) => {
243
- return new Promise<void>((resolve, reject) => {
244
- dispatch(toggleLoading(true));
245
- api.decoupleAssets(ids)
246
- .then(() => {
247
- dispatch(getAssets(api, storyId));
248
- resolve();
249
- })
250
- .catch((errors: Error[]) => {
251
- dispatch(toggleLoading(false));
252
- reject();
253
- });
254
- });
248
+ if (window.confirm(`Are you sure you want to decouple ${ids.length} assets?`)) {
249
+ return new Promise<void>((resolve, reject) => {
250
+ dispatch(toggleLoading(true));
251
+ api.decoupleAssets(ids)
252
+ .then(() => {
253
+ dispatch(getAssets(api, storyId));
254
+ resolve();
255
+ })
256
+ .catch((errors: Error[]) => {
257
+ dispatch(toggleLoading(false));
258
+ reject();
259
+ });
260
+ });
261
+ }
255
262
  };
256
263
  };
257
264
 
@@ -1,65 +0,0 @@
1
- import * as React from 'react';
2
- import { copying } from '../../constants/copy';
3
- import { updateFilters } from '../../redux/actions/asset-filters';
4
- import { connect } from 'react-redux';
5
- import { bindActionCreators } from 'redux';
6
-
7
- interface IAssetsTableAssetIdCellProps {
8
- cell: any;
9
- onNotification?: (e) => void;
10
- onError?: (e) => void;
11
- }
12
-
13
- const AssetsTableAssetIdCell: React.FC<IAssetsTableAssetIdCellProps> = (
14
- props: IAssetsTableAssetIdCellProps
15
- ) => {
16
- const {
17
- onNotification,
18
- onError,
19
- cell: {
20
- row: {
21
- original: { id }
22
- }
23
- }
24
- } = props;
25
- console.log('AssetsTableAssetIdCell');
26
- console.log(id);
27
-
28
- const copyToClipboard = (e) => {
29
- navigator.clipboard.writeText(e.target.textContent).then(
30
- () => {
31
- if (onNotification) {
32
- onNotification(`${copying.copied}`);
33
- }
34
- },
35
- () => {
36
- if (onError) {
37
- onError(`${copying.error}`);
38
- }
39
- }
40
- );
41
- };
42
-
43
- return (
44
- <div
45
- key={id}
46
- className='imposium-asset-id'
47
- onClick={(e) => copyToClipboard(e)}>
48
- {id}
49
- </div>
50
- );
51
- };
52
-
53
- const mapDispatchToProps = (dispatch): any => {
54
- return bindActionCreators({ updateFilters }, dispatch);
55
- };
56
-
57
- const mapStateToProps = (state): any => {
58
- return { assetFilters: state.assetFilters };
59
- };
60
-
61
- const AssetsTableAssetIdCellMemoized = connect(
62
- mapStateToProps,
63
- mapDispatchToProps
64
- )(React.memo(AssetsTableAssetIdCell));
65
- export default AssetsTableAssetIdCellMemoized;
@@ -1,40 +0,0 @@
1
- import * as React from 'react';
2
- import TextField from '../text-field/TextField';
3
- import { updateFilters } from '../../redux/actions/asset-filters';
4
- import { connect } from 'react-redux';
5
- import { bindActionCreators } from 'redux';
6
-
7
- interface IAssetsTableAssetIdFilterProps {
8
- assetFilters: any;
9
- updateFilters: (filters: any) => any;
10
- }
11
-
12
- class AssetsTableAssetIdFilter extends React.PureComponent<IAssetsTableAssetIdFilterProps> {
13
- public render = (): JSX.Element => {
14
- const { assetFilters } = this.props;
15
-
16
- return (
17
- <TextField
18
- className='asset-id'
19
- submittable
20
- submittableType='search'
21
- value={assetFilters.id}
22
- doSubmit={(n) => this.props.updateFilters({ id: n })}
23
- />
24
- );
25
- };
26
- }
27
-
28
- const mapDispatchToProps = (dispatch): any => {
29
- return bindActionCreators({ updateFilters }, dispatch);
30
- };
31
-
32
- const mapStateToProps = (state): any => {
33
- return { assetFilters: state.assetFilters };
34
- };
35
-
36
- const AssetsTableAssetIdFilterMemoized = connect(
37
- mapStateToProps,
38
- mapDispatchToProps
39
- )(React.memo(AssetsTableAssetIdFilter));
40
- export default AssetsTableAssetIdFilterMemoized;