@imposium-hub/components 2.5.11-16 → 2.5.11-2

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 (91) hide show
  1. package/dist/cjs/components/assets/AssetsTableNameCell.js +2 -1
  2. package/dist/cjs/components/assets/AssetsTableNameCell.js.map +1 -1
  3. package/dist/cjs/components/color-field/ColorField.js +14 -9
  4. package/dist/cjs/components/color-field/ColorField.js.map +1 -1
  5. package/dist/cjs/components/confirm-modal/ConfirmModal.js +5 -9
  6. package/dist/cjs/components/confirm-modal/ConfirmModal.js.map +1 -1
  7. package/dist/cjs/components/data-table/DataTable.d.ts +2 -3
  8. package/dist/cjs/components/data-table/DataTable.js +10 -78
  9. package/dist/cjs/components/data-table/DataTable.js.map +1 -1
  10. package/dist/cjs/components/data-table/Paginator.js +14 -35
  11. package/dist/cjs/components/data-table/Paginator.js.map +1 -1
  12. package/dist/cjs/components/header/Header.d.ts +0 -2
  13. package/dist/cjs/components/header/Header.js +8 -39
  14. package/dist/cjs/components/header/Header.js.map +1 -1
  15. package/dist/cjs/components/story-previewer/StoryPreviewer.js +1 -11
  16. package/dist/cjs/components/story-previewer/StoryPreviewer.js.map +1 -1
  17. package/dist/cjs/constants/variables.d.ts +0 -3
  18. package/dist/cjs/constants/variables.js +2 -27
  19. package/dist/cjs/constants/variables.js.map +1 -1
  20. package/dist/cjs/index.d.ts +1 -4
  21. package/dist/cjs/index.js +2 -10
  22. package/dist/cjs/index.js.map +1 -1
  23. package/dist/cjs/redux/actions/asset-list.js +42 -33
  24. package/dist/cjs/redux/actions/asset-list.js.map +1 -1
  25. package/dist/cjs/redux/actions/asset-uploads.js +0 -10
  26. package/dist/cjs/redux/actions/asset-uploads.js.map +1 -1
  27. package/dist/cjs/redux/reducers/asset-uploads.js.map +1 -1
  28. package/dist/esm/components/assets/AssetsTableNameCell.js +2 -1
  29. package/dist/esm/components/assets/AssetsTableNameCell.js.map +1 -1
  30. package/dist/esm/components/color-field/ColorField.js +14 -9
  31. package/dist/esm/components/color-field/ColorField.js.map +1 -1
  32. package/dist/esm/components/confirm-modal/ConfirmModal.js +5 -9
  33. package/dist/esm/components/confirm-modal/ConfirmModal.js.map +1 -1
  34. package/dist/esm/components/data-table/DataTable.d.ts +2 -3
  35. package/dist/esm/components/data-table/DataTable.js +8 -76
  36. package/dist/esm/components/data-table/DataTable.js.map +1 -1
  37. package/dist/esm/components/data-table/Paginator.js +14 -35
  38. package/dist/esm/components/data-table/Paginator.js.map +1 -1
  39. package/dist/esm/components/header/Header.d.ts +0 -2
  40. package/dist/esm/components/header/Header.js +7 -30
  41. package/dist/esm/components/header/Header.js.map +1 -1
  42. package/dist/esm/components/story-previewer/StoryPreviewer.js +2 -12
  43. package/dist/esm/components/story-previewer/StoryPreviewer.js.map +1 -1
  44. package/dist/esm/constants/variables.d.ts +0 -3
  45. package/dist/esm/constants/variables.js +1 -25
  46. package/dist/esm/constants/variables.js.map +1 -1
  47. package/dist/esm/index.d.ts +1 -4
  48. package/dist/esm/index.js +1 -4
  49. package/dist/esm/index.js.map +1 -1
  50. package/dist/esm/redux/actions/asset-list.js +42 -33
  51. package/dist/esm/redux/actions/asset-list.js.map +1 -1
  52. package/dist/esm/redux/actions/asset-uploads.js +0 -10
  53. package/dist/esm/redux/actions/asset-uploads.js.map +1 -1
  54. package/dist/esm/redux/reducers/asset-uploads.js.map +1 -1
  55. package/dist/styles.css +3 -0
  56. package/dist/styles.less +5 -0
  57. package/less/components/header.less +5 -0
  58. package/package.json +1 -1
  59. package/src/components/assets/AssetsTableNameCell.tsx +10 -1
  60. package/src/components/color-field/ColorField.tsx +17 -16
  61. package/src/components/confirm-modal/ConfirmModal.tsx +5 -11
  62. package/src/components/data-table/DataTable.tsx +12 -96
  63. package/src/components/data-table/Paginator.tsx +15 -37
  64. package/src/components/header/Header.tsx +6 -42
  65. package/src/components/story-previewer/StoryPreviewer.tsx +4 -28
  66. package/src/constants/variables.ts +1 -27
  67. package/src/index.ts +0 -7
  68. package/src/redux/actions/asset-list.ts +44 -36
  69. package/src/redux/actions/asset-uploads.ts +0 -9
  70. package/src/redux/reducers/asset-uploads.ts +2 -0
  71. package/dist/cjs/components/assets/StoryTableNameFilter.d.ts +0 -2
  72. package/dist/cjs/components/assets/StoryTableNameFilter.js +0 -94
  73. package/dist/cjs/components/assets/StoryTableNameFilter.js.map +0 -1
  74. package/dist/cjs/redux/actions/story-filter.d.ts +0 -4
  75. package/dist/cjs/redux/actions/story-filter.js +0 -18
  76. package/dist/cjs/redux/actions/story-filter.js.map +0 -1
  77. package/dist/cjs/redux/reducers/story-filter.d.ts +0 -2
  78. package/dist/cjs/redux/reducers/story-filter.js +0 -33
  79. package/dist/cjs/redux/reducers/story-filter.js.map +0 -1
  80. package/dist/esm/components/assets/StoryTableNameFilter.d.ts +0 -2
  81. package/dist/esm/components/assets/StoryTableNameFilter.js +0 -20
  82. package/dist/esm/components/assets/StoryTableNameFilter.js.map +0 -1
  83. package/dist/esm/redux/actions/story-filter.d.ts +0 -4
  84. package/dist/esm/redux/actions/story-filter.js +0 -13
  85. package/dist/esm/redux/actions/story-filter.js.map +0 -1
  86. package/dist/esm/redux/reducers/story-filter.d.ts +0 -2
  87. package/dist/esm/redux/reducers/story-filter.js +0 -16
  88. package/dist/esm/redux/reducers/story-filter.js.map +0 -1
  89. package/src/components/assets/StoryTableNameFilter.tsx +0 -40
  90. package/src/redux/actions/story-filter.ts +0 -15
  91. package/src/redux/reducers/story-filter.ts +0 -18
@@ -29,55 +29,34 @@ const Paginator: React.FC<any> = ({
29
29
  }) => {
30
30
  const [getPageIndex, setPageIndex] = React.useState<number>(pageIndex);
31
31
  const [getItemsPerPage, setItemsPerPage] = React.useState<number>(itemsPerPage);
32
- const [getPageCount, setPageCount] = React.useState<number>(pageCount);
33
- const [inputPageIndex, setInputPageIndex] = React.useState<string>('');
34
- const [inputItemsPerPage, setInputItemsPerPage] = React.useState<string>('');
35
-
36
- React.useEffect(() => {
37
- if (pageCount === 0) {
38
- setPageCount(1);
39
- } else {
40
- setPageCount(pageCount);
41
- }
42
- }, [pageCount]);
43
32
 
44
33
  React.useEffect(() => {
45
34
  if (pageIndex !== getPageIndex) {
46
35
  setPageIndex(pageIndex);
47
- setInputPageIndex('');
48
- }
49
-
50
- if (itemsPerPage !== getItemsPerPage) {
51
- setItemsPerPage(itemsPerPage);
52
- setInputItemsPerPage('');
53
36
  }
54
- }, [pageIndex, itemsPerPage]);
37
+ }, [pageIndex]);
55
38
 
56
39
  const onItemsPerPageBlur = () => {
57
40
  clearTimeout(textInputTimeout);
58
- if (inputItemsPerPage !== '') {
59
- onItemsPerPage(inputItemsPerPage);
60
- }
41
+ onItemsPerPage(getItemsPerPage);
61
42
  };
62
43
 
63
44
  const onGoToPageBlur = () => {
64
45
  clearTimeout(textInputTimeout);
65
- if (inputPageIndex !== '') {
66
- gotoPage(inputPageIndex, pageSize);
67
- }
46
+ gotoPage(getPageIndex, pageSize);
68
47
  };
69
48
 
70
49
  const onItemsPerPageKeyDown = (e) => {
71
- if (e.key === 'Enter' && inputItemsPerPage !== '') {
50
+ if (e.key === 'Enter') {
72
51
  clearTimeout(textInputTimeout);
73
- onItemsPerPage(inputItemsPerPage);
52
+ onItemsPerPage(getItemsPerPage);
74
53
  }
75
54
  };
76
55
 
77
56
  const onGoToPageKeyDown = (e) => {
78
- if (e.key === 'Enter' && inputPageIndex !== '') {
57
+ if (e.key === 'Enter') {
79
58
  clearTimeout(textInputTimeout);
80
- gotoPage(inputPageIndex, pageSize);
59
+ gotoPage(getPageIndex, pageSize);
81
60
  }
82
61
  };
83
62
 
@@ -113,14 +92,14 @@ const Paginator: React.FC<any> = ({
113
92
  size='small'
114
93
  tooltip='Go to last page'
115
94
  disabled={!canNextPage}
116
- onClick={() => gotoPage(getPageCount, pageSize)}>
95
+ onClick={() => gotoPage(pageCount, pageSize)}>
117
96
  {ICON_ANGLE_DOUBLE_RIGHT}
118
97
  </Button>
119
98
  &nbsp;&nbsp;
120
99
  <span>
121
100
  {copy.table.page}&nbsp;&nbsp;
122
101
  <strong>
123
- {getPageIndex} of {getPageCount}
102
+ {getPageIndex} of {pageCount}
124
103
  </strong>
125
104
  &nbsp;&nbsp;
126
105
  </span>
@@ -130,19 +109,18 @@ const Paginator: React.FC<any> = ({
130
109
  className='paginator-input'
131
110
  type='number'
132
111
  placeholder={getPageIndex.toString()}
133
- value={inputPageIndex}
134
112
  onChange={(e) => {
135
113
  const input = e.target.value;
136
114
  const inputNum = Number(input);
137
115
  let next: number;
138
116
 
139
117
  clearTimeout(textInputTimeout);
140
- setInputPageIndex(input);
141
- if (!input || inputNum < 1 || inputNum > getPageCount) {
118
+
119
+ if (!input || inputNum < 1 || inputNum > pageCount) {
142
120
  return;
143
121
  }
144
122
 
145
- if (inputNum >= 1 && inputNum <= getPageCount) {
123
+ if (inputNum >= 1 && inputNum <= pageCount) {
146
124
  next = inputNum;
147
125
  }
148
126
 
@@ -162,19 +140,19 @@ const Paginator: React.FC<any> = ({
162
140
  className='paginator-input'
163
141
  type='number'
164
142
  placeholder={getItemsPerPage.toString()}
165
- value={inputItemsPerPage}
143
+ min={1}
166
144
  onChange={(e) => {
167
145
  const input = e.target.value;
168
146
  const inputNum = Number(input);
169
147
 
170
148
  clearTimeout(textInputTimeout);
171
149
 
172
- setInputItemsPerPage(input);
173
-
174
150
  if (!input || inputNum < 1) {
175
151
  return;
176
152
  }
177
153
 
154
+ setItemsPerPage(inputNum);
155
+
178
156
  textInputTimeout = window.setTimeout(
179
157
  () => onItemsPerPage(inputNum),
180
158
  1000
@@ -19,8 +19,6 @@ import Select, { createFilter } from 'react-select';
19
19
  import { setAccessData } from '../../redux/actions/access';
20
20
  import { bindActionCreators } from 'redux';
21
21
  import { StoryTableTotalRendersCell } from '../assets/StoryTableTotalRendersCell';
22
- import StoryTableNameFilter from '../assets/StoryTableNameFilter';
23
- import { updateStoryFilter } from '../../redux/actions/story-filter';
24
22
 
25
23
  export interface IHeaderProps {
26
24
  email?: string;
@@ -40,8 +38,6 @@ export interface IHeaderProps {
40
38
  hideDocs?: boolean;
41
39
  showFTLogo?: boolean;
42
40
  access: any;
43
- storyFilter: any;
44
- updateStoryFilter(n): any;
45
41
  }
46
42
 
47
43
  export interface IHeaderState {
@@ -176,18 +172,12 @@ class ImposiumHeader extends React.PureComponent<IHeaderProps, IHeaderState> {
176
172
  });
177
173
  };
178
174
 
179
- private closeStoriesDropDown() {
180
- this.setState({ showStoriesDropdown: false }, () =>
181
- this.props.updateStoryFilter({ name: '' })
182
- );
183
- }
184
-
185
175
  private changeStory = (story: any): void => {
186
176
  const { onStoryChange } = this.props;
187
177
 
188
178
  if (typeof onStoryChange === 'function') {
189
179
  onStoryChange(story);
190
- this.closeStoriesDropDown();
180
+ this.setState({ showStoriesDropdown: false });
191
181
  }
192
182
  };
193
183
 
@@ -300,7 +290,6 @@ class ImposiumHeader extends React.PureComponent<IHeaderProps, IHeaderState> {
300
290
  Header: 'Name',
301
291
  width: 115,
302
292
  minWidth: 115,
303
- Search: () => <StoryTableNameFilter />,
304
293
  disableSortBy: false
305
294
  },
306
295
  {
@@ -524,10 +513,7 @@ class ImposiumHeader extends React.PureComponent<IHeaderProps, IHeaderState> {
524
513
  ref={this.storyToggleRef}
525
514
  onClick={() => {
526
515
  this.setState({ showStoriesDropdown: !showStoriesDropdown }, () => {
527
- if (showStoriesDropdown === false) {
528
- this.props.updateStoryFilter({ name: '' });
529
- this.getAccessDataHandler();
530
- }
516
+ if (showStoriesDropdown === false) this.getAccessDataHandler();
531
517
  });
532
518
  }}>
533
519
  <div className='story-name'>
@@ -547,31 +533,12 @@ class ImposiumHeader extends React.PureComponent<IHeaderProps, IHeaderState> {
547
533
  ? [{ id: order, desc: orderDirection === 'desc' }]
548
534
  : undefined;
549
535
 
550
- let sortedStories = _.orderBy(
536
+ const sortedStories = _.orderBy(
551
537
  activeOrganizationBlob.stories,
552
538
  ['date_modified'],
553
539
  ['desc']
554
540
  );
555
541
 
556
- if (this.props.storyFilter && this.props.storyFilter?.name) {
557
- const storyFilter = this.props.storyFilter.name.toLowerCase();
558
-
559
- const sortByName = sortedStories.filter((stories) =>
560
- stories.name.toLowerCase().includes(storyFilter)
561
- );
562
-
563
- if (sortByName.length > 0) {
564
- sortedStories = sortByName;
565
- } else {
566
- const sortById = sortedStories.filter((stories) =>
567
- stories.id.includes(storyFilter)
568
- );
569
- if (sortById.length > 0) {
570
- sortedStories = sortById;
571
- }
572
- }
573
- }
574
-
575
542
  storyMenuInner = (
576
543
  <DataTable
577
544
  columns={this.getStoriesColumns()}
@@ -581,7 +548,6 @@ class ImposiumHeader extends React.PureComponent<IHeaderProps, IHeaderState> {
581
548
  itemsPerPage={activeOrganizationBlob.stories.length}
582
549
  hidePaginator={true}
583
550
  onRowClick={this.changeStory}
584
- keyboardNav={true}
585
551
  />
586
552
  );
587
553
  }
@@ -686,7 +652,7 @@ class ImposiumHeader extends React.PureComponent<IHeaderProps, IHeaderState> {
686
652
  position='bottomright'
687
653
  show={showStoriesDropdown}
688
654
  toggleRef={this.storyToggleRef}
689
- onOutsideClick={() => this.closeStoriesDropDown()}>
655
+ onOutsideClick={() => this.setState({ showStoriesDropdown: false })}>
690
656
  <div className='stories-menu'>{storyMenuInner}</div>
691
657
  </ImposiumDropdown>
692
658
 
@@ -706,8 +672,7 @@ class ImposiumHeader extends React.PureComponent<IHeaderProps, IHeaderState> {
706
672
  const mapDispatchToProps = (dispatch) => {
707
673
  return bindActionCreators(
708
674
  {
709
- setAccessData,
710
- updateStoryFilter
675
+ setAccessData
711
676
  },
712
677
  dispatch
713
678
  );
@@ -717,8 +682,7 @@ const mapStateToProps = (state): any => {
717
682
  return {
718
683
  auth: state.auth,
719
684
  story: state.story,
720
- access: state.access,
721
- storyFilter: state.storyFilter
685
+ access: state.access
722
686
  };
723
687
  };
724
688
 
@@ -1,11 +1,6 @@
1
1
  import * as React from 'react';
2
2
  import { IImposiumAPI } from '../../services/API';
3
- import {
4
- VARIABLE_TYPES,
5
- BOOLEAN_DEFAULT_OPTIONS,
6
- colorPresets,
7
- formatColor
8
- } from '../../constants/variables';
3
+ import { VARIABLE_TYPES, BOOLEAN_DEFAULT_OPTIONS } from '../../constants/variables';
9
4
  import { OUTPUT_TYPES } from '../../constants/previewer';
10
5
  import TextField from '../text-field/TextField';
11
6
  import Button from '../button/Button';
@@ -28,7 +23,6 @@ import LogViewer from '../log-viewer/LogViewer';
28
23
  import { connect } from 'react-redux';
29
24
  import { ICON_DOWNLOAD, ICON_CLIPBOARD } from '../../constants/icons';
30
25
  import AudioPlayer from '../players/AudioPlayer';
31
- import ColorField from '../color-field/ColorField';
32
26
 
33
27
  interface IStoryPreviewerProps {
34
28
  api: IImposiumAPI;
@@ -143,14 +137,15 @@ class StoryPreviewer extends React.PureComponent<IStoryPreviewerProps, IStoryPre
143
137
  const { variables } = this.props;
144
138
  const inventoryOverrides = this.props.editor?.inventoryOverrides;
145
139
  const newInv = {};
140
+
146
141
  for (const i in variables) {
147
142
  if (variables.hasOwnProperty(i)) {
148
143
  const override = inventoryOverrides ? inventoryOverrides[i] : null;
149
144
  const inv = variables[i];
150
- newInv[inv.id] =
151
- override !== null ? override : this.getVariableValue(inv.previewItem);
145
+ newInv[inv.id] = override ? override : this.getVariableValue(inv.previewItem);
152
146
  }
153
147
  }
148
+
154
149
  return newInv;
155
150
  }
156
151
 
@@ -235,11 +230,6 @@ class StoryPreviewer extends React.PureComponent<IStoryPreviewerProps, IStoryPre
235
230
  }
236
231
  }
237
232
 
238
- private colorInputChanged(key, value) {
239
- const color = formatColor(value);
240
- this.variableInputChanged(key, color);
241
- }
242
-
243
233
  private variableInputChanged(key, value) {
244
234
  const inventory = { ...this.state.inventory };
245
235
  inventory[key] = value;
@@ -407,20 +397,6 @@ class StoryPreviewer extends React.PureComponent<IStoryPreviewerProps, IStoryPre
407
397
  </FieldWrapper>
408
398
  );
409
399
  break;
410
- case VARIABLE_TYPES.COLOR:
411
- const value = inventory[inv.id] ? inventory[inv.id] : 'rgba(0,0,0,1)';
412
- fields.push(
413
- <ColorField
414
- label={inv.name}
415
- labelPosition='top'
416
- enableAlpha={true}
417
- presetColors={colorPresets}
418
- value={value}
419
- pickerPosition='bottom'
420
- onChange={(v) => this.colorInputChanged(inv.id, v)}
421
- />
422
- );
423
- break;
424
400
  }
425
401
  }
426
402
  }
@@ -5,8 +5,7 @@ export const VARIABLE_TYPES = {
5
5
  ENUM: 'enum',
6
6
  IMAGE: 'image',
7
7
  VIDEO: 'video',
8
- AUDIO: 'audio',
9
- COLOR: 'color'
8
+ AUDIO: 'audio'
10
9
  };
11
10
 
12
11
  export const BOOLEAN_DEFAULT_OPTIONS = [
@@ -19,28 +18,3 @@ export const BOOLEAN_DEFAULT_OPTIONS = [
19
18
  label: 'False'
20
19
  }
21
20
  ];
22
-
23
- export const colorPresets = [
24
- '#D0021B',
25
- '#F5A623',
26
- '#F8E71C',
27
- '#8B572A',
28
- '#7ED321',
29
- '#417505',
30
- '#BD10E0',
31
- '#9013FE',
32
- '#4A90E2',
33
- '#50E3C2',
34
- '#B8E986',
35
- '#000000',
36
- '#4A4A4A',
37
- '#9B9B9B',
38
- '#FFFFFF',
39
- 'transparent'
40
- ];
41
-
42
- export const formatColor = (color) => {
43
- const { r, g, b, a } = color.rgb;
44
- const alpha = color.source === 'hsv' ? 1 : a;
45
- return `rgba(${r},${g},${b},${alpha})`;
46
- };
package/src/index.ts CHANGED
@@ -161,9 +161,6 @@ import CopyPropIdButton from './components/copy-prop-id-button/CopyPropIdButton'
161
161
  import Submenu from './components/context-menu/SubMenu';
162
162
  import { ConfirmModal, IConfirmModalProps } from './components/confirm-modal/ConfirmModal';
163
163
  import AssetsTableAssetIdCell from './components/assets/AssetsTableAssetIdCell';
164
- import { resetStoryFilter, updateStoryFilter } from './redux/actions/story-filter';
165
- import storyFilter from './redux/reducers/story-filter';
166
- import StoryTableNameFilter from './components/assets/StoryTableNameFilter';
167
164
 
168
165
  export {
169
166
  AppWrapper,
@@ -222,7 +219,6 @@ export {
222
219
  AssetsTableGlobalCell,
223
220
  AssetsTableStatusCell,
224
221
  AssetsTableNameFilter,
225
- StoryTableNameFilter,
226
222
  AssetsTableAssetIdFilter,
227
223
  AssetsTableAssetIdCell,
228
224
  AssetsTableNameCell,
@@ -250,8 +246,6 @@ export {
250
246
  storyDeleted,
251
247
  updateFilters,
252
248
  resetFilters,
253
- updateStoryFilter,
254
- resetStoryFilter,
255
249
  getAssets,
256
250
  deleteAssets,
257
251
  downloadAssets,
@@ -266,7 +260,6 @@ export {
266
260
  deselectAsset,
267
261
  resetSelection,
268
262
  assetFilters,
269
- storyFilter,
270
263
  assetList,
271
264
  assetUploads,
272
265
  selectedAssets,
@@ -78,18 +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
- resolve(true);
87
- })
88
- .catch((errors: Error[]) => {
89
- dispatch(toggleLoading(false));
90
- reject(false);
91
- });
92
- });
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
+ }
93
97
  };
94
98
  };
95
99
 
@@ -190,18 +194,20 @@ export const deleteAssetTags = (api: IImposiumAPI, id: string): any => {
190
194
 
191
195
  export const deleteAssetsTags = (api: IImposiumAPI, ids: string[], storyId: string): any => {
192
196
  return (dispatch) => {
193
- return new Promise<void>((resolve, reject) => {
194
- dispatch(toggleLoading(true));
195
- api.deleteAssetsTags(ids)
196
- .then(() => {
197
- dispatch(getAssets(api, storyId));
198
- resolve();
199
- })
200
- .catch((errors: Error[]) => {
201
- dispatch(toggleLoading(false));
202
- reject();
203
- });
204
- });
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
+ }
205
211
  };
206
212
  };
207
213
 
@@ -239,18 +245,20 @@ export const updateAssetStory = (api: IImposiumAPI, id: string, storyId: string)
239
245
 
240
246
  export const decoupleAssets = (api: IImposiumAPI, ids: string[], storyId: string): any => {
241
247
  return (dispatch) => {
242
- return new Promise<void>((resolve, reject) => {
243
- dispatch(toggleLoading(true));
244
- api.decoupleAssets(ids)
245
- .then(() => {
246
- dispatch(getAssets(api, storyId));
247
- resolve();
248
- })
249
- .catch((errors: Error[]) => {
250
- dispatch(toggleLoading(false));
251
- reject();
252
- });
253
- });
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
+ }
254
262
  };
255
263
  };
256
264
 
@@ -364,15 +364,6 @@ export const replaceAsset = (
364
364
  if (axios.isCancel(e) && currentQueue !== queueLength - 1) {
365
365
  currentQueue = currentQueue + 1;
366
366
  createPromise(currentQueue);
367
- } else {
368
- const error: any = { ...e };
369
- const errorMsg = error.response.data.error.split(':')[0];
370
- dispatch({
371
- type: assetUploadsActions.ERROR,
372
- filename: replacedFileBlobs[activeIndex].filename,
373
- errorMsg
374
- });
375
- doAssetTableHydration(api, storyId);
376
367
  }
377
368
  });
378
369
  };
@@ -52,8 +52,10 @@ const assetUploads = (state = initialState, action): any => {
52
52
  if (u.filename === action.filename) {
53
53
  return { ...u, error: action.errorMsg };
54
54
  }
55
+
55
56
  return u;
56
57
  });
58
+
57
59
  return {
58
60
  ...state,
59
61
  uploads: newError
@@ -1,2 +0,0 @@
1
- declare const StoryTableNameFilterMemoized: any;
2
- export default StoryTableNameFilterMemoized;
@@ -1,94 +0,0 @@
1
- "use strict";
2
- var __extends = (this && this.__extends) || (function () {
3
- var extendStatics = function (d, b) {
4
- extendStatics = Object.setPrototypeOf ||
5
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
- function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
- return extendStatics(d, b);
8
- };
9
- return function (d, b) {
10
- if (typeof b !== "function" && b !== null)
11
- throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
- extendStatics(d, b);
13
- function __() { this.constructor = d; }
14
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
- };
16
- })();
17
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
18
- if (k2 === undefined) k2 = k;
19
- var desc = Object.getOwnPropertyDescriptor(m, k);
20
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
21
- desc = { enumerable: true, get: function() { return m[k]; } };
22
- }
23
- Object.defineProperty(o, k2, desc);
24
- }) : (function(o, m, k, k2) {
25
- if (k2 === undefined) k2 = k;
26
- o[k2] = m[k];
27
- }));
28
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
29
- Object.defineProperty(o, "default", { enumerable: true, value: v });
30
- }) : function(o, v) {
31
- o["default"] = v;
32
- });
33
- var __importStar = (this && this.__importStar) || function (mod) {
34
- if (mod && mod.__esModule) return mod;
35
- var result = {};
36
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
37
- __setModuleDefault(result, mod);
38
- return result;
39
- };
40
- var __read = (this && this.__read) || function (o, n) {
41
- var m = typeof Symbol === "function" && o[Symbol.iterator];
42
- if (!m) return o;
43
- var i = m.call(o), r, ar = [], e;
44
- try {
45
- while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
46
- }
47
- catch (error) { e = { error: error }; }
48
- finally {
49
- try {
50
- if (r && !r.done && (m = i["return"])) m.call(i);
51
- }
52
- finally { if (e) throw e.error; }
53
- }
54
- return ar;
55
- };
56
- var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
57
- if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
58
- if (ar || !(i in from)) {
59
- if (!ar) ar = Array.prototype.slice.call(from, 0, i);
60
- ar[i] = from[i];
61
- }
62
- }
63
- return to.concat(ar || Array.prototype.slice.call(from));
64
- };
65
- var __importDefault = (this && this.__importDefault) || function (mod) {
66
- return (mod && mod.__esModule) ? mod : { "default": mod };
67
- };
68
- Object.defineProperty(exports, "__esModule", { value: true });
69
- var React = __importStar(require("react"));
70
- var TextField_1 = __importDefault(require("../text-field/TextField"));
71
- var react_redux_1 = require("react-redux");
72
- var redux_1 = require("redux");
73
- var story_filter_1 = require("../../redux/actions/story-filter");
74
- var StoryTableNameFilter = /** @class */ (function (_super) {
75
- __extends(StoryTableNameFilter, _super);
76
- function StoryTableNameFilter() {
77
- var _this = _super.apply(this, __spreadArray([], __read(arguments), false)) || this;
78
- _this.render = function () {
79
- var storyFilter = _this.props.storyFilter;
80
- return (React.createElement(TextField_1.default, { className: 'story-name', focusOnMount: true, value: storyFilter, onChange: function (n) { return _this.props.updateStoryFilter({ name: n }); } }));
81
- };
82
- return _this;
83
- }
84
- return StoryTableNameFilter;
85
- }(React.PureComponent));
86
- var mapDispatchToProps = function (dispatch) {
87
- return (0, redux_1.bindActionCreators)({ updateStoryFilter: story_filter_1.updateStoryFilter }, dispatch);
88
- };
89
- var mapStateToProps = function (state) {
90
- return { storyFilter: state.storyFilter.name };
91
- };
92
- var StoryTableNameFilterMemoized = (0, react_redux_1.connect)(mapStateToProps, mapDispatchToProps)(React.memo(StoryTableNameFilter));
93
- exports.default = StoryTableNameFilterMemoized;
94
- //# sourceMappingURL=StoryTableNameFilter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"StoryTableNameFilter.js","sourceRoot":"","sources":["../../../../src/components/assets/StoryTableNameFilter.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAA+B;AAC/B,sEAAgD;AAChD,2CAAsC;AACtC,+BAA2C;AAC3C,iEAAqE;AAOrE;IAAmC,wCAA+C;IAAlF;;QACW,YAAM,GAAG;YACJ,IAAA,WAAW,GAAK,KAAI,CAAC,KAAK,YAAf,CAAgB;YAEnC,OAAO,CACH,oBAAC,mBAAS,IACN,SAAS,EAAC,YAAY,EACtB,YAAY,QACZ,KAAK,EAAE,WAAW,EAClB,QAAQ,EAAE,UAAC,CAAC,IAAK,OAAA,KAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,EAAzC,CAAyC,GAC5D,CACL,CAAC;QACN,CAAC,CAAC;;IACN,CAAC;IAAD,2BAAC;AAAD,CAAC,AAbD,CAAmC,KAAK,CAAC,aAAa,GAarD;AAED,IAAM,kBAAkB,GAAG,UAAC,QAAQ;IAChC,OAAO,IAAA,0BAAkB,EAAC,EAAE,iBAAiB,kCAAA,EAAE,EAAE,QAAQ,CAAC,CAAC;AAC/D,CAAC,CAAC;AAEF,IAAM,eAAe,GAAG,UAAC,KAAK;IAC1B,OAAO,EAAE,WAAW,EAAE,KAAK,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;AACnD,CAAC,CAAC;AAEF,IAAM,4BAA4B,GAAG,IAAA,qBAAO,EACxC,eAAe,EACf,kBAAkB,CACrB,CAAC,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC;AAEpC,kBAAe,4BAA4B,CAAC"}
@@ -1,4 +0,0 @@
1
- declare const storyFilterActions: any;
2
- export declare const updateStoryFilter: (newFilters: any) => any;
3
- export declare const resetStoryFilter: () => any;
4
- export default storyFilterActions;
@@ -1,18 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.resetStoryFilter = exports.updateStoryFilter = void 0;
4
- var storyFilterActions = {
5
- UPDATE: 'storyFilter/UPDATE',
6
- RESET: 'storyFilter/RESET'
7
- };
8
- var updateStoryFilter = function (newFilters) { return ({
9
- type: storyFilterActions.UPDATE,
10
- newFilters: newFilters
11
- }); };
12
- exports.updateStoryFilter = updateStoryFilter;
13
- var resetStoryFilter = function () { return ({
14
- type: storyFilterActions.RESET
15
- }); };
16
- exports.resetStoryFilter = resetStoryFilter;
17
- exports.default = storyFilterActions;
18
- //# sourceMappingURL=story-filter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"story-filter.js","sourceRoot":"","sources":["../../../../src/redux/actions/story-filter.ts"],"names":[],"mappings":";;;AAAA,IAAM,kBAAkB,GAAQ;IAC5B,MAAM,EAAE,oBAAoB;IAC5B,KAAK,EAAE,mBAAmB;CAC7B,CAAC;AAEK,IAAM,iBAAiB,GAAG,UAAC,UAAe,IAAU,OAAA,CAAC;IACxD,IAAI,EAAE,kBAAkB,CAAC,MAAM;IAC/B,UAAU,YAAA;CACb,CAAC,EAHyD,CAGzD,CAAC;AAHU,QAAA,iBAAiB,qBAG3B;AAEI,IAAM,gBAAgB,GAAG,cAAW,OAAA,CAAC;IACxC,IAAI,EAAE,kBAAkB,CAAC,KAAK;CACjC,CAAC,EAFyC,CAEzC,CAAC;AAFU,QAAA,gBAAgB,oBAE1B;AAEH,kBAAe,kBAAkB,CAAC"}
@@ -1,2 +0,0 @@
1
- declare const storyFilter: (state: any, action: any) => any;
2
- export default storyFilter;