@imposium-hub/components 2.2.44-8 → 2.2.45-0

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 (266) hide show
  1. package/dist/cjs/Util.d.ts +0 -1
  2. package/dist/cjs/Util.js +1 -8
  3. package/dist/cjs/Util.js.map +1 -1
  4. package/dist/cjs/components/Tooltip.d.ts +2 -2
  5. package/dist/cjs/components/Tooltip.js +7 -4
  6. package/dist/cjs/components/Tooltip.js.map +1 -1
  7. package/dist/cjs/components/advanced-number-field/AdvancedNumberField.d.ts +1 -1
  8. package/dist/cjs/components/anchor-field/AnchorField.d.ts +1 -1
  9. package/dist/cjs/components/app-wrapper/AppWrapper.d.ts +1 -2
  10. package/dist/cjs/components/app-wrapper/AppWrapper.js +71 -79
  11. package/dist/cjs/components/app-wrapper/AppWrapper.js.map +1 -1
  12. package/dist/cjs/components/app-wrapper/AppWrapper_BACKUP_73190.d.ts +27 -0
  13. package/dist/cjs/components/app-wrapper/AppWrapper_BACKUP_73190.js +243 -0
  14. package/dist/cjs/components/app-wrapper/AppWrapper_BACKUP_73190.js.map +1 -0
  15. package/dist/cjs/components/app-wrapper/AppWrapper_BASE_73190.d.ts +28 -0
  16. package/dist/cjs/components/app-wrapper/AppWrapper_BASE_73190.js +255 -0
  17. package/dist/cjs/components/app-wrapper/AppWrapper_BASE_73190.js.map +1 -0
  18. package/dist/cjs/components/app-wrapper/AppWrapper_LOCAL_73190.d.ts +27 -0
  19. package/dist/cjs/components/app-wrapper/AppWrapper_LOCAL_73190.js +243 -0
  20. package/dist/cjs/components/app-wrapper/AppWrapper_LOCAL_73190.js.map +1 -0
  21. package/dist/cjs/components/app-wrapper/AppWrapper_REMOTE_73190.d.ts +28 -0
  22. package/dist/cjs/components/app-wrapper/AppWrapper_REMOTE_73190.js +251 -0
  23. package/dist/cjs/components/app-wrapper/AppWrapper_REMOTE_73190.js.map +1 -0
  24. package/dist/cjs/components/assets/AssetField.js +2 -2
  25. package/dist/cjs/components/assets/AssetField.js.map +1 -1
  26. package/dist/cjs/components/assets/AssetsTableDurationCell.js +4 -1
  27. package/dist/cjs/components/assets/AssetsTableDurationCell.js.map +1 -1
  28. package/dist/cjs/components/assets/AssetsTableGlobalCell.js +1 -1
  29. package/dist/cjs/components/assets/AssetsTableGlobalCell.js.map +1 -1
  30. package/dist/cjs/components/assets/AssetsTableNameCell.js +3 -4
  31. package/dist/cjs/components/assets/AssetsTableNameCell.js.map +1 -1
  32. package/dist/cjs/components/assets/AssetsTableRateCell.js +3 -9
  33. package/dist/cjs/components/assets/AssetsTableRateCell.js.map +1 -1
  34. package/dist/cjs/components/assets/AssetsTableTypeFilter.js +2 -2
  35. package/dist/cjs/components/assets/AssetsTableTypeFilter.js.map +1 -1
  36. package/dist/cjs/components/assets/AssetsUploadMenu.js +34 -161
  37. package/dist/cjs/components/assets/AssetsUploadMenu.js.map +1 -1
  38. package/dist/cjs/components/auth-gate/AuthGate.js +8 -5
  39. package/dist/cjs/components/auth-gate/AuthGate.js.map +1 -1
  40. package/dist/cjs/components/button-group-field/ButtonGroupField.d.ts +1 -1
  41. package/dist/cjs/components/checkbox-field/CheckboxField.d.ts +1 -1
  42. package/dist/cjs/components/color-field/ColorField.d.ts +1 -1
  43. package/dist/cjs/components/color-field/ColorField.js +2 -2
  44. package/dist/cjs/components/color-field/ColorField.js.map +1 -1
  45. package/dist/cjs/components/context-menu/ContextMenu.js +4 -8
  46. package/dist/cjs/components/context-menu/ContextMenu.js.map +1 -1
  47. package/dist/cjs/components/data-table/DataTable.js +2 -2
  48. package/dist/cjs/components/data-table/DataTable.js.map +1 -1
  49. package/dist/cjs/components/dropdown/{Dropdown.stories.js → dropdown.stories.js} +1 -1
  50. package/dist/cjs/components/dropdown/{Dropdown.stories.js.map → dropdown.stories.js.map} +1 -1
  51. package/dist/cjs/components/error-message-preview/ErrorMessagePreview.d.ts +15 -0
  52. package/dist/cjs/components/error-message-preview/ErrorMessagePreview.js +91 -0
  53. package/dist/cjs/components/error-message-preview/ErrorMessagePreview.js.map +1 -0
  54. package/dist/cjs/components/header/Header.d.ts +4 -0
  55. package/dist/cjs/components/header/Header.js +27 -19
  56. package/dist/cjs/components/header/Header.js.map +1 -1
  57. package/dist/cjs/components/header/Header_BACKUP_73021.d.ts +33 -0
  58. package/dist/cjs/components/header/Header_BACKUP_73021.js +393 -0
  59. package/dist/cjs/components/header/Header_BACKUP_73021.js.map +1 -0
  60. package/dist/cjs/components/header/Header_BASE_73021.d.ts +29 -0
  61. package/dist/cjs/components/header/Header_BASE_73021.js +376 -0
  62. package/dist/cjs/components/header/Header_BASE_73021.js.map +1 -0
  63. package/dist/cjs/components/header/Header_LOCAL_73021.d.ts +33 -0
  64. package/dist/cjs/components/header/Header_LOCAL_73021.js +382 -0
  65. package/dist/cjs/components/header/Header_LOCAL_73021.js.map +1 -0
  66. package/dist/cjs/components/header/Header_REMOTE_73021.d.ts +30 -0
  67. package/dist/cjs/components/header/Header_REMOTE_73021.js +386 -0
  68. package/dist/cjs/components/header/Header_REMOTE_73021.js.map +1 -0
  69. package/dist/cjs/components/list-field/ListField.d.ts +1 -1
  70. package/dist/cjs/components/number-field/NumberField.d.ts +1 -1
  71. package/dist/cjs/components/publish-wizard/PublishWizard.js +119 -63
  72. package/dist/cjs/components/publish-wizard/PublishWizard.js.map +1 -1
  73. package/dist/cjs/components/publish-wizard/publish/EmailWorkflow.js +5 -28
  74. package/dist/cjs/components/publish-wizard/publish/EmailWorkflow.js.map +1 -1
  75. package/dist/cjs/components/select-field/SelectField.d.ts +1 -1
  76. package/dist/cjs/components/select-field/SelectField.js +0 -4
  77. package/dist/cjs/components/select-field/SelectField.js.map +1 -1
  78. package/dist/cjs/components/slider-field/SliderField.d.ts +1 -1
  79. package/dist/cjs/components/smpte-field/SMPTEField.d.ts +1 -1
  80. package/dist/cjs/components/text-area-field/TextAreaField.d.ts +1 -1
  81. package/dist/cjs/components/text-field/TextField.d.ts +1 -1
  82. package/dist/cjs/constants/copy.d.ts +5 -2
  83. package/dist/cjs/constants/copy.js +8 -5
  84. package/dist/cjs/constants/copy.js.map +1 -1
  85. package/dist/cjs/constants/icons.d.ts +1 -0
  86. package/dist/cjs/constants/icons.js +3 -1
  87. package/dist/cjs/constants/icons.js.map +1 -1
  88. package/dist/cjs/index.d.ts +3 -5
  89. package/dist/cjs/index.js +3 -8
  90. package/dist/cjs/index.js.map +1 -1
  91. package/dist/cjs/redux/actions/access.d.ts +1 -3
  92. package/dist/cjs/redux/actions/access.js +10 -43
  93. package/dist/cjs/redux/actions/access.js.map +1 -1
  94. package/dist/cjs/redux/actions/asset-uploads.d.ts +10 -5
  95. package/dist/cjs/redux/actions/asset-uploads.js +182 -262
  96. package/dist/cjs/redux/actions/asset-uploads.js.map +1 -1
  97. package/dist/cjs/redux/actions/publish.js +4 -3
  98. package/dist/cjs/redux/actions/publish.js.map +1 -1
  99. package/dist/cjs/redux/reducers/access.js +7 -30
  100. package/dist/cjs/redux/reducers/access.js.map +1 -1
  101. package/dist/cjs/redux/reducers/asset-uploads.js +24 -10
  102. package/dist/cjs/redux/reducers/asset-uploads.js.map +1 -1
  103. package/dist/cjs/services/Session.d.ts +9 -8
  104. package/dist/cjs/services/Session.js +31 -127
  105. package/dist/cjs/services/Session.js.map +1 -1
  106. package/dist/esm/Util.d.ts +0 -1
  107. package/dist/esm/Util.js +0 -6
  108. package/dist/esm/Util.js.map +1 -1
  109. package/dist/esm/components/Tooltip.d.ts +2 -2
  110. package/dist/esm/components/Tooltip.js +4 -4
  111. package/dist/esm/components/Tooltip.js.map +1 -1
  112. package/dist/esm/components/advanced-number-field/AdvancedNumberField.d.ts +1 -1
  113. package/dist/esm/components/anchor-field/AnchorField.d.ts +1 -1
  114. package/dist/esm/components/app-wrapper/AppWrapper.d.ts +1 -2
  115. package/dist/esm/components/app-wrapper/AppWrapper.js +69 -79
  116. package/dist/esm/components/app-wrapper/AppWrapper.js.map +1 -1
  117. package/dist/esm/components/app-wrapper/AppWrapper_BACKUP_73190.d.ts +27 -0
  118. package/dist/esm/components/app-wrapper/AppWrapper_BACKUP_73190.js +194 -0
  119. package/dist/esm/components/app-wrapper/AppWrapper_BACKUP_73190.js.map +1 -0
  120. package/dist/esm/components/app-wrapper/AppWrapper_BASE_73190.d.ts +28 -0
  121. package/dist/esm/components/app-wrapper/AppWrapper_BASE_73190.js +208 -0
  122. package/dist/esm/components/app-wrapper/AppWrapper_BASE_73190.js.map +1 -0
  123. package/dist/esm/components/app-wrapper/AppWrapper_LOCAL_73190.d.ts +27 -0
  124. package/dist/esm/components/app-wrapper/AppWrapper_LOCAL_73190.js +194 -0
  125. package/dist/esm/components/app-wrapper/AppWrapper_LOCAL_73190.js.map +1 -0
  126. package/dist/esm/components/app-wrapper/AppWrapper_REMOTE_73190.d.ts +28 -0
  127. package/dist/esm/components/app-wrapper/AppWrapper_REMOTE_73190.js +204 -0
  128. package/dist/esm/components/app-wrapper/AppWrapper_REMOTE_73190.js.map +1 -0
  129. package/dist/esm/components/assets/AssetField.js +2 -2
  130. package/dist/esm/components/assets/AssetField.js.map +1 -1
  131. package/dist/esm/components/assets/AssetsTableDurationCell.js +5 -2
  132. package/dist/esm/components/assets/AssetsTableDurationCell.js.map +1 -1
  133. package/dist/esm/components/assets/AssetsTableGlobalCell.js +1 -1
  134. package/dist/esm/components/assets/AssetsTableGlobalCell.js.map +1 -1
  135. package/dist/esm/components/assets/AssetsTableNameCell.js +3 -4
  136. package/dist/esm/components/assets/AssetsTableNameCell.js.map +1 -1
  137. package/dist/esm/components/assets/AssetsTableRateCell.js +3 -9
  138. package/dist/esm/components/assets/AssetsTableRateCell.js.map +1 -1
  139. package/dist/esm/components/assets/AssetsTableTypeFilter.js +2 -2
  140. package/dist/esm/components/assets/AssetsTableTypeFilter.js.map +1 -1
  141. package/dist/esm/components/assets/AssetsUploadMenu.js +34 -144
  142. package/dist/esm/components/assets/AssetsUploadMenu.js.map +1 -1
  143. package/dist/esm/components/auth-gate/AuthGate.js +9 -6
  144. package/dist/esm/components/auth-gate/AuthGate.js.map +1 -1
  145. package/dist/esm/components/button-group-field/ButtonGroupField.d.ts +1 -1
  146. package/dist/esm/components/checkbox-field/CheckboxField.d.ts +1 -1
  147. package/dist/esm/components/color-field/ColorField.d.ts +1 -1
  148. package/dist/esm/components/color-field/ColorField.js +2 -2
  149. package/dist/esm/components/color-field/ColorField.js.map +1 -1
  150. package/dist/esm/components/context-menu/ContextMenu.js +3 -7
  151. package/dist/esm/components/context-menu/ContextMenu.js.map +1 -1
  152. package/dist/esm/components/data-table/DataTable.js +2 -2
  153. package/dist/esm/components/data-table/DataTable.js.map +1 -1
  154. package/dist/esm/components/dropdown/{Dropdown.stories.js → dropdown.stories.js} +1 -1
  155. package/dist/esm/components/dropdown/{Dropdown.stories.js.map → dropdown.stories.js.map} +1 -1
  156. package/dist/esm/components/error-message-preview/ErrorMessagePreview.d.ts +15 -0
  157. package/dist/esm/components/error-message-preview/ErrorMessagePreview.js +35 -0
  158. package/dist/esm/components/error-message-preview/ErrorMessagePreview.js.map +1 -0
  159. package/dist/esm/components/header/Header.d.ts +4 -0
  160. package/dist/esm/components/header/Header.js +27 -19
  161. package/dist/esm/components/header/Header.js.map +1 -1
  162. package/dist/esm/components/header/Header_BACKUP_73021.d.ts +33 -0
  163. package/dist/esm/components/header/Header_BACKUP_73021.js +336 -0
  164. package/dist/esm/components/header/Header_BACKUP_73021.js.map +1 -0
  165. package/dist/esm/components/header/Header_BASE_73021.d.ts +29 -0
  166. package/dist/esm/components/header/Header_BASE_73021.js +322 -0
  167. package/dist/esm/components/header/Header_BASE_73021.js.map +1 -0
  168. package/dist/esm/components/header/Header_LOCAL_73021.d.ts +33 -0
  169. package/dist/esm/components/header/Header_LOCAL_73021.js +328 -0
  170. package/dist/esm/components/header/Header_LOCAL_73021.js.map +1 -0
  171. package/dist/esm/components/header/Header_REMOTE_73021.d.ts +30 -0
  172. package/dist/esm/components/header/Header_REMOTE_73021.js +329 -0
  173. package/dist/esm/components/header/Header_REMOTE_73021.js.map +1 -0
  174. package/dist/esm/components/list-field/ListField.d.ts +1 -1
  175. package/dist/esm/components/number-field/NumberField.d.ts +1 -1
  176. package/dist/esm/components/publish-wizard/PublishWizard.js +119 -64
  177. package/dist/esm/components/publish-wizard/PublishWizard.js.map +1 -1
  178. package/dist/esm/components/publish-wizard/publish/EmailWorkflow.js +5 -28
  179. package/dist/esm/components/publish-wizard/publish/EmailWorkflow.js.map +1 -1
  180. package/dist/esm/components/select-field/SelectField.d.ts +1 -1
  181. package/dist/esm/components/select-field/SelectField.js +0 -3
  182. package/dist/esm/components/select-field/SelectField.js.map +1 -1
  183. package/dist/esm/components/slider-field/SliderField.d.ts +1 -1
  184. package/dist/esm/components/smpte-field/SMPTEField.d.ts +1 -1
  185. package/dist/esm/components/text-area-field/TextAreaField.d.ts +1 -1
  186. package/dist/esm/components/text-field/TextField.d.ts +1 -1
  187. package/dist/esm/constants/copy.d.ts +5 -2
  188. package/dist/esm/constants/copy.js +8 -5
  189. package/dist/esm/constants/copy.js.map +1 -1
  190. package/dist/esm/constants/icons.d.ts +1 -0
  191. package/dist/esm/constants/icons.js +2 -0
  192. package/dist/esm/constants/icons.js.map +1 -1
  193. package/dist/esm/index.d.ts +3 -5
  194. package/dist/esm/index.js +3 -5
  195. package/dist/esm/index.js.map +1 -1
  196. package/dist/esm/redux/actions/access.d.ts +1 -3
  197. package/dist/esm/redux/actions/access.js +8 -37
  198. package/dist/esm/redux/actions/access.js.map +1 -1
  199. package/dist/esm/redux/actions/asset-uploads.d.ts +10 -5
  200. package/dist/esm/redux/actions/asset-uploads.js +167 -224
  201. package/dist/esm/redux/actions/asset-uploads.js.map +1 -1
  202. package/dist/esm/redux/actions/publish.js +4 -3
  203. package/dist/esm/redux/actions/publish.js.map +1 -1
  204. package/dist/esm/redux/reducers/access.js +5 -8
  205. package/dist/esm/redux/reducers/access.js.map +1 -1
  206. package/dist/esm/redux/reducers/asset-uploads.js +47 -15
  207. package/dist/esm/redux/reducers/asset-uploads.js.map +1 -1
  208. package/dist/esm/services/Session.d.ts +9 -8
  209. package/dist/esm/services/Session.js +29 -102
  210. package/dist/esm/services/Session.js.map +1 -1
  211. package/dist/styles.css +25 -110
  212. package/dist/styles.less +100 -196
  213. package/less/components/assets.less +63 -153
  214. package/less/components/button.less +1 -7
  215. package/less/components/data-table.less +11 -17
  216. package/less/components/header.less +13 -0
  217. package/less/components/publish-wizard.less +13 -20
  218. package/less/components/story-previewer.less +0 -1
  219. package/package.json +6 -6
  220. package/src/Util.ts +0 -10
  221. package/src/components/Tooltip.tsx +9 -9
  222. package/src/components/advanced-number-field/AdvancedNumberField.tsx +1 -1
  223. package/src/components/anchor-field/AnchorField.tsx +1 -1
  224. package/src/components/app-wrapper/AppWrapper.tsx +79 -120
  225. package/src/components/assets/AssetField.tsx +8 -3
  226. package/src/components/assets/AssetsTableDurationCell.tsx +5 -2
  227. package/src/components/assets/AssetsTableNameCell.tsx +5 -3
  228. package/src/components/assets/AssetsTableRateCell.tsx +4 -11
  229. package/src/components/assets/AssetsTableTypeFilter.tsx +8 -7
  230. package/src/components/assets/AssetsUploadMenu.tsx +98 -275
  231. package/src/components/auth-gate/AuthGate.tsx +14 -8
  232. package/src/components/button-group-field/ButtonGroupField.tsx +1 -1
  233. package/src/components/checkbox-field/CheckboxField.tsx +1 -1
  234. package/src/components/color-field/ColorField.tsx +3 -3
  235. package/src/components/context-menu/ContextMenu.tsx +11 -16
  236. package/src/components/data-table/DataTable.tsx +2 -2
  237. package/src/components/header/Header.tsx +74 -39
  238. package/src/components/list-field/ListField.tsx +1 -1
  239. package/src/components/number-field/NumberField.tsx +1 -1
  240. package/src/components/publish-wizard/PublishWizard.tsx +180 -102
  241. package/src/components/publish-wizard/publish/EmailWorkflow.tsx +10 -42
  242. package/src/components/select-field/SelectField.tsx +1 -4
  243. package/src/components/slider-field/SliderField.tsx +1 -1
  244. package/src/components/smpte-field/SMPTEField.tsx +1 -1
  245. package/src/components/text-area-field/TextAreaField.tsx +1 -1
  246. package/src/components/text-field/TextField.tsx +1 -1
  247. package/src/constants/copy.ts +9 -5
  248. package/src/constants/icons.tsx +3 -0
  249. package/src/index.ts +9 -16
  250. package/src/redux/actions/access.ts +5 -67
  251. package/src/redux/actions/asset-uploads.ts +205 -305
  252. package/src/redux/actions/publish.ts +6 -3
  253. package/src/redux/reducers/access.ts +5 -8
  254. package/src/redux/reducers/asset-uploads.ts +47 -17
  255. package/src/services/Session.ts +34 -120
  256. package/dist/cjs/components/copy-prop-id-button/CopyPropIdButton.d.ts +0 -12
  257. package/dist/cjs/components/copy-prop-id-button/CopyPropIdButton.js +0 -75
  258. package/dist/cjs/components/copy-prop-id-button/CopyPropIdButton.js.map +0 -1
  259. package/dist/esm/components/copy-prop-id-button/CopyPropIdButton.d.ts +0 -12
  260. package/dist/esm/components/copy-prop-id-button/CopyPropIdButton.js +0 -24
  261. package/dist/esm/components/copy-prop-id-button/CopyPropIdButton.js.map +0 -1
  262. package/src/components/assets/AssetsTableGlobalCell.tsx +0 -15
  263. package/src/components/copy-prop-id-button/CopyPropIdButton.tsx +0 -44
  264. /package/dist/cjs/components/dropdown/{Dropdown.stories.d.ts → dropdown.stories.d.ts} +0 -0
  265. /package/dist/esm/components/dropdown/{Dropdown.stories.d.ts → dropdown.stories.d.ts} +0 -0
  266. /package/src/components/dropdown/{Dropdown.stories.tsx → dropdown.stories.tsx} +0 -0
@@ -3,36 +3,84 @@ import { doAssetTableHydration } from './asset-list';
3
3
  import axios from 'axios';
4
4
 
5
5
  const assetUploadsActions: any = {
6
+ TOGGLE_AUTO_TAG: 'assetUploads/TOGGLE_AUTO_TAG',
7
+ TOGGLE_TAG_BY_FILENAME: 'assetUploads/TOGGLE_TAG_BY_FILENAME',
8
+ TOGGLE_TAG_BY_DELIMITER: 'assetUploads/TOGGLE_TAG_BY_DELIMITER',
9
+ SET_DELIMITER: 'assetUploads/SET_DELIMITER',
10
+ TOGGLE_MANUAL_TAGGING: 'assetUploads/TOGGLE_MANUAL_TAGGING',
11
+ ADD_MANUAL_TAG: 'assetUploads/ADD_MANUAL_TAG',
12
+ DELETE_MANUAL_TAG: 'assetUploads/DELETE_MANUAL_TAG',
13
+ DELETE_MANUAL_TAGS: 'assetUploads/DELETE_MANUAL_TAGS',
14
+ TOGGLE_ASSIGN_TO_STORY: 'assetUploads/TOGGLE_ASSIGN_TO_STORY',
6
15
  ADD_UPLOAD: 'assetUploads/ADD_UPLOAD',
7
- UPDATE_UPLOAD: 'assetUploads/UPDATE_UPLOAD',
8
16
  UPDATE_PERCENT_UPLOADED: 'assetUploads/UPDATE_PERCENT_UPLOADED',
9
- ADD_UPLOAD_ASSET_ID: 'assetUploads/ADD_UPLOAD_ASSET_ID',
10
17
  REMOVE_UPLOAD: 'assetUploads/REMOVE_UPLOAD'
11
18
  };
12
19
 
13
20
  const POLL_INTERVAL: number = 5000;
14
21
 
15
- let uploadFiles: File[] = [];
16
- let setBindToOverlay;
22
+ export const toggleTagFileName = (toggle: boolean): any => ({
23
+ type: assetUploadsActions.TOGGLE_TAG_BY_FILENAME,
24
+ toggle
25
+ });
26
+
27
+ export const toggleAssignToStory = (toggle: boolean): any => ({
28
+ type: assetUploadsActions.TOGGLE_ASSIGN_TO_STORY,
29
+ toggle
30
+ });
31
+
32
+ export const toggleTagDelimiter = (toggle: boolean): any => ({
33
+ type: assetUploadsActions.TOGGLE_TAG_BY_DELIMITER,
34
+ toggle
35
+ });
36
+
37
+ export const setDelimiter = (delimiter: string): any => ({
38
+ type: assetUploadsActions.SET_DELIMITER,
39
+ delimiter
40
+ });
41
+
42
+ export const toggleManualTagging = (toggle: boolean): any => ({
43
+ type: assetUploadsActions.TOGGLE_MANUAL_TAGGING,
44
+ toggle
45
+ });
46
+
47
+ export const addManualTag = (tag: string): any => ({
48
+ type: assetUploadsActions.ADD_MANUAL_TAG,
49
+ tag
50
+ });
51
+
52
+ export const deleteManualTag = (tag: string): any => ({
53
+ type: assetUploadsActions.DELETE_MANUAL_TAG,
54
+ tag
55
+ });
56
+
57
+ export const deleteManualTags = (): any => ({
58
+ type: assetUploadsActions.DELETE_MANUAL_TAGS
59
+ });
17
60
 
18
61
  export const uploadAssets = (
19
62
  api: IImposiumAPI,
20
63
  files: File[],
64
+ storyId: string,
21
65
  bindToOverlay?: (f: any) => any
22
66
  ): any => {
23
67
  return (dispatch, getStore) => {
24
68
  const {
25
- assetUploads: { uploads },
26
- editor: {
27
- showUploadsMenu,
28
- assetUploads: { tagByFileName, tagByDelimiter, delimiter, tagManually, manualTags }
69
+ assetUploads: {
70
+ uploads,
71
+ assignToStory,
72
+ tagByFileName,
73
+ tagByDelimiter,
74
+ delimiter,
75
+ tagManually,
76
+ manualTags
29
77
  }
30
78
  } = getStore();
79
+ let currentQueue: number = 0;
80
+ let ongoingJobs: any[] = [];
81
+ const filesLength = files.length > 5 ? 4 : files.length - 1;
31
82
 
32
- uploadFiles.push(...files);
33
- setBindToOverlay = bindToOverlay;
34
-
35
- files.map((file: File) => {
83
+ const uploadBlobs: any[] = files.map((file: File) => {
36
84
  const uploadsWithSameName: any[] = uploads.filter((u: any) =>
37
85
  u.filename.includes(file.name)
38
86
  );
@@ -44,11 +92,11 @@ export const uploadAssets = (
44
92
  let tags = [];
45
93
 
46
94
  if (tagByFileName) {
47
- tags = tags.concat(file.name.slice(0, file.name.lastIndexOf('.')));
95
+ tags = tags.concat(file.name.substr(0, file.name.lastIndexOf('.')));
48
96
  }
49
97
 
50
98
  if (tagByDelimiter) {
51
- const tag = file.name.slice(0, file.name.lastIndexOf('.')).split(delimiter);
99
+ const tag = file.name.substr(0, file.name.lastIndexOf('.')).split(delimiter);
52
100
  tags = [...new Set([...tags, ...tag])];
53
101
  }
54
102
 
@@ -56,100 +104,7 @@ export const uploadAssets = (
56
104
  tags = [...new Set([...tags, ...manualTags])];
57
105
  }
58
106
 
59
- const uploadMeta: any = { filename, percent: 0, tags };
60
-
61
- dispatch({ type: assetUploadsActions.ADD_UPLOAD, uploadMeta });
62
- });
63
-
64
- if (!showUploadsMenu) {
65
- uploadAssetHandler(api, dispatch, getStore);
66
- }
67
- };
68
- };
69
-
70
- export const updateUploadTags = (): any => {
71
- return (dispatch, getStore) => {
72
- const {
73
- editor: {
74
- assetUploads: { tagByFileName, tagByDelimiter, delimiter, tagManually, manualTags }
75
- }
76
- } = getStore();
77
- const uploadMetaArray = [];
78
-
79
- if (uploadFiles) {
80
- uploadFiles.map((file: File) => {
81
- const filename: string = file.name;
82
-
83
- let tags = [];
84
-
85
- if (tagByFileName) {
86
- tags = tags.concat(file.name.slice(0, file.name.lastIndexOf('.')));
87
- }
88
-
89
- if (tagByDelimiter) {
90
- const tag = file.name.slice(0, file.name.lastIndexOf('.')).split(delimiter);
91
- tags = [...new Set([...tags, ...tag])];
92
- }
93
-
94
- if (tagManually) {
95
- tags = [...new Set([...tags, ...manualTags])];
96
- }
97
-
98
- const uploadMeta: any = { filename, percent: 0, tags };
99
-
100
- uploadMetaArray.push(uploadMeta);
101
- });
102
-
103
- dispatch({ type: assetUploadsActions.UPDATE_UPLOAD, uploadMetaArray });
104
- }
105
- };
106
- };
107
-
108
- export const uploadingAsset = (api: IImposiumAPI): any => {
109
- return (dispatch, getStore) => {
110
- uploadAssetHandler(api, dispatch, getStore);
111
- };
112
- };
113
-
114
- const uploadAssetHandler = (api: IImposiumAPI, dispatch, getStore) => {
115
- const {
116
- project: { storyId },
117
- editor: {
118
- assetUploads: {
119
- assignToStory,
120
- tagByFileName,
121
- tagByDelimiter,
122
- delimiter,
123
- tagManually,
124
- manualTags
125
- }
126
- },
127
- assetUploads: { uploads }
128
- } = getStore();
129
-
130
- let currentQueue: number = 0;
131
- let ongoingJobs: any[] = [];
132
-
133
- const uploadMetaArray = [];
134
-
135
- if (uploadFiles) {
136
- const uploadBlobs: any[] = uploadFiles.map((file: File) => {
137
- const filename: string = file.name;
138
-
139
- let tags = [];
140
-
141
- if (tagByFileName) {
142
- tags = tags.concat(file.name.slice(0, file.name.lastIndexOf('.')));
143
- }
144
-
145
- if (tagByDelimiter) {
146
- const tag = file.name.slice(0, file.name.lastIndexOf('.')).split(delimiter);
147
- tags = [...new Set([...tags, ...tag])];
148
- }
149
-
150
- if (tagManually) {
151
- tags = [...new Set([...tags, ...manualTags])];
152
- }
107
+ const uploadMeta: any = { filename, percent: 0 };
153
108
 
154
109
  const onUploadProgress = (progress: any): void => {
155
110
  dispatch({
@@ -159,96 +114,76 @@ const uploadAssetHandler = (api: IImposiumAPI, dispatch, getStore) => {
159
114
  });
160
115
  };
161
116
 
162
- const uploadMeta: any = { filename, percent: 0, tags };
163
-
164
- uploadMetaArray.push(uploadMeta);
117
+ dispatch({ type: assetUploadsActions.ADD_UPLOAD, uploadMeta });
165
118
 
166
119
  return { file, tags, filename, onUploadProgress };
167
120
  });
168
121
 
169
- dispatch({ type: assetUploadsActions.UPDATE_UPLOAD, uploadMetaArray });
170
-
171
- const filesLength = uploadFiles.length > 5 ? 4 : uploadFiles.length - 1;
172
-
173
122
  const createPromise = (activeIndex: number) => {
174
123
  const queueLength: number = uploadBlobs.length;
175
124
  const sId = assignToStory && storyId ? storyId : null;
176
125
  const processingTimeout: number = -1;
177
- const isUploading =
178
- uploads.find((f) => f.filename === uploadBlobs[activeIndex].filename)?.percent > 0;
179
- if (!isUploading) {
180
- api.uploadAsset(
181
- sId,
182
- uploadBlobs[activeIndex].tags,
183
- uploadBlobs[activeIndex].file,
184
- uploadBlobs[activeIndex].onUploadProgress,
185
- uploadBlobs[activeIndex].filename
186
- )
187
- .then((result) => {
188
- const filename = uploadBlobs.find((b) =>
189
- b.filename.includes(result[0].name)
190
- ).filename;
191
- uploadFiles = uploadFiles.filter((f) => f.name !== filename);
192
- dispatch({
193
- type: assetUploadsActions.ADD_UPLOAD_ASSET_ID,
194
- assetId: result[0].id,
195
- filename
196
- });
197
- const currentOngoingJobs = () => {
198
- if (setBindToOverlay) {
199
- setBindToOverlay(result[0]);
126
+ api.uploadAsset(
127
+ sId,
128
+ uploadBlobs[activeIndex].tags,
129
+ uploadBlobs[activeIndex].file,
130
+ uploadBlobs[activeIndex].onUploadProgress,
131
+ uploadBlobs[activeIndex].filename
132
+ )
133
+ .then((result) => {
134
+ const currentOngoingJobs = () => {
135
+ if (bindToOverlay) {
136
+ bindToOverlay(result[0]);
137
+ }
138
+ return {
139
+ footageId: result[0].id,
140
+ jobId: result[0].job_id,
141
+ filename: uploadBlobs[activeIndex].filename,
142
+ onProcessed: () => {
143
+ const fileName = ongoingJobs.filter(
144
+ (job: any) => job.jobId === result[0].job_id
145
+ )[0].filename;
146
+ dispatch({
147
+ type: assetUploadsActions.REMOVE_UPLOAD,
148
+ filename: fileName
149
+ });
150
+ doAssetTableHydration(api, storyId);
200
151
  }
201
- return {
202
- footageId: result[0].id,
203
- jobId: result[0].job_id,
204
- filename: uploadBlobs[activeIndex].filename,
205
- onProcessed: () => {
206
- const fileName = ongoingJobs.filter(
207
- (job: any) => job.jobId === result[0].job_id
208
- )[0].filename;
209
- dispatch({
210
- type: assetUploadsActions.REMOVE_UPLOAD,
211
- filename: fileName
212
- });
213
- doAssetTableHydration(api, storyId);
214
- }
215
- };
216
152
  };
217
- ongoingJobs.push(currentOngoingJobs());
218
- if (currentQueue !== queueLength - 1) {
219
- currentQueue = currentQueue + 1;
220
- createPromise(currentQueue);
221
- } else {
222
- ongoingJobs = ongoingJobs.filter((j: any, i: number) => {
223
- const jobIdExists: boolean = typeof j.jobId === 'string';
224
- if (!jobIdExists) {
225
- dispatch({
226
- type: assetUploadsActions.REMOVE_UPLOAD,
227
- filename: j.filename
228
- });
229
- doAssetTableHydration(api, storyId);
230
- }
231
- return jobIdExists;
232
- });
233
- if (ongoingJobs.length > 0) {
234
- pollAssetJobs(api, ongoingJobs, processingTimeout);
153
+ };
154
+ ongoingJobs.push(currentOngoingJobs());
155
+ if (currentQueue !== queueLength - 1) {
156
+ currentQueue = currentQueue + 1;
157
+ createPromise(currentQueue);
158
+ } else {
159
+ ongoingJobs = ongoingJobs.filter((j: any, i: number) => {
160
+ const jobIdExists: boolean = typeof j.jobId === 'string';
161
+ if (!jobIdExists) {
162
+ dispatch({
163
+ type: assetUploadsActions.REMOVE_UPLOAD,
164
+ filename: j.filename
165
+ });
166
+ doAssetTableHydration(api, storyId);
235
167
  }
168
+ return jobIdExists;
169
+ });
170
+ if (ongoingJobs.length > 0) {
171
+ pollAssetJobs(api, ongoingJobs, processingTimeout);
236
172
  }
237
- })
238
- .catch((e: Error[]) => {
239
- if (axios.isCancel(e) && currentQueue !== queueLength - 1) {
240
- currentQueue = currentQueue + 1;
241
- createPromise(currentQueue);
242
- }
243
- });
244
- }
173
+ }
174
+ })
175
+ .catch((e: Error[]) => {
176
+ if (axios.isCancel(e) && currentQueue !== queueLength - 1) {
177
+ currentQueue = currentQueue + 1;
178
+ createPromise(currentQueue);
179
+ }
180
+ });
245
181
  };
246
-
247
182
  for (let i = 0; i <= filesLength; i++) {
248
183
  createPromise(i);
249
184
  currentQueue = i;
250
185
  }
251
- }
186
+ };
252
187
  };
253
188
 
254
189
  export const replaceAsset = (
@@ -258,103 +193,95 @@ export const replaceAsset = (
258
193
  storyId: string
259
194
  ): any => {
260
195
  return (dispatch, getStore) => {
261
- return new Promise<void>((resolve) => {
262
- const {
263
- assetUploads: { uploads }
264
- } = getStore();
265
- let currentQueue: number = 0;
266
- let ongoingJobs: any[] = [];
267
- const filesLength = files.length > 5 ? 4 : files.length - 1;
268
-
269
- const replacedFileBlobs: any[] = files.map((file: File) => {
270
- const uploadsWithSameName: any[] = uploads.filter((u: any) =>
271
- u.filename.includes(file.name)
272
- );
273
- const filename: string =
274
- uploadsWithSameName.length > 0
275
- ? `${file.name} (${uploadsWithSameName.length})`
276
- : file.name;
277
-
278
- const uploadMeta: any = { filename, percent: 0 };
279
-
280
- const onUploadProgress = (progress: any): void => {
281
- dispatch({
282
- type: assetUploadsActions.UPDATE_PERCENT_UPLOADED,
283
- percent: Math.floor((progress.loaded * 100) / progress.total),
284
- filename
285
- });
286
- };
287
-
288
- dispatch({ type: assetUploadsActions.ADD_UPLOAD, uploadMeta });
289
-
290
- return { file, filename, onUploadProgress };
291
- });
196
+ const {
197
+ assetUploads: { uploads }
198
+ } = getStore();
199
+ let currentQueue: number = 0;
200
+ let ongoingJobs: any[] = [];
201
+ const filesLength = files.length > 5 ? 4 : files.length - 1;
292
202
 
293
- const createPromise = (activeIndex: number) => {
294
- const queueLength: number = replacedFileBlobs.length;
295
- const processingTimeout: number = -1;
296
- api.replaceAsset(
297
- assetId,
298
- replacedFileBlobs[activeIndex].file,
299
- replacedFileBlobs[activeIndex].onUploadProgress,
300
- replacedFileBlobs[activeIndex].filename
301
- )
302
- .then((result) => {
303
- const currentOngoingJobs = () => {
304
- return {
305
- filename: replacedFileBlobs[activeIndex].filename,
306
- onProcessed: () => {
307
- const fileName = ongoingJobs.filter(
308
- (job: any) => job.jobId === result[0].job_id
309
- )[0].filename;
310
- dispatch({
311
- type: assetUploadsActions.REMOVE_UPLOAD,
312
- filename: fileName
313
- });
314
- doAssetTableHydration(api, storyId);
315
- }
316
- };
317
- };
203
+ const uploadBlobs: any[] = files.map((file: File) => {
204
+ const uploadsWithSameName: any[] = uploads.filter((u: any) =>
205
+ u.filename.includes(file.name)
206
+ );
207
+ const filename: string =
208
+ uploadsWithSameName.length > 0
209
+ ? `${file.name} (${uploadsWithSameName.length})`
210
+ : file.name;
318
211
 
319
- ongoingJobs.push(currentOngoingJobs());
320
-
321
- if (currentQueue !== queueLength - 1) {
322
- currentQueue = currentQueue + 1;
323
- createPromise(currentQueue);
324
- } else {
325
- ongoingJobs = ongoingJobs.filter((j: any, i: number) => {
326
- const jobIdExists: boolean = typeof j.jobId === 'string';
327
-
328
- if (!jobIdExists) {
329
- dispatch({
330
- type: assetUploadsActions.REMOVE_UPLOAD,
331
- filename: j.filename
332
- });
333
- doAssetTableHydration(api, storyId);
334
- }
335
- return jobIdExists;
336
- });
337
-
338
- if (ongoingJobs.length > 0) {
339
- pollAssetJobs(api, ongoingJobs, processingTimeout);
340
- }
341
- }
212
+ const uploadMeta: any = { filename, percent: 0 };
342
213
 
343
- resolve(result);
344
- })
345
- .catch((e: Error[]) => {
346
- if (axios.isCancel(e) && currentQueue !== queueLength - 1) {
347
- currentQueue = currentQueue + 1;
348
- createPromise(currentQueue);
349
- }
350
- });
214
+ const onUploadProgress = (progress: any): void => {
215
+ dispatch({
216
+ type: assetUploadsActions.UPDATE_PERCENT_UPLOADED,
217
+ percent: Math.floor((progress.loaded * 100) / progress.total),
218
+ filename
219
+ });
351
220
  };
352
221
 
353
- for (let i = 0; i <= filesLength; i++) {
354
- createPromise(i);
355
- currentQueue = i;
356
- }
222
+ dispatch({ type: assetUploadsActions.ADD_UPLOAD, uploadMeta });
223
+
224
+ return { file, filename, onUploadProgress };
357
225
  });
226
+
227
+ const createPromise = (activeIndex: number) => {
228
+ const queueLength: number = uploadBlobs.length;
229
+ const processingTimeout: number = -1;
230
+ api.replaceAsset(
231
+ assetId,
232
+ uploadBlobs[activeIndex].file,
233
+ uploadBlobs[activeIndex].onUploadProgress,
234
+ uploadBlobs[activeIndex].filename
235
+ )
236
+ .then((result) => {
237
+ const currentOngoingJobs = () => {
238
+ return {
239
+ filename: uploadBlobs[activeIndex].filename,
240
+ onProcessed: () => {
241
+ const fileName = ongoingJobs.filter(
242
+ (job: any) => job.jobId === result[0].job_id
243
+ )[0].filename;
244
+ dispatch({
245
+ type: assetUploadsActions.REMOVE_UPLOAD,
246
+ filename: fileName
247
+ });
248
+ doAssetTableHydration(api, storyId);
249
+ }
250
+ };
251
+ };
252
+ ongoingJobs.push(currentOngoingJobs());
253
+ if (currentQueue !== queueLength - 1) {
254
+ currentQueue = currentQueue + 1;
255
+ createPromise(currentQueue);
256
+ } else {
257
+ ongoingJobs = ongoingJobs.filter((j: any, i: number) => {
258
+ const jobIdExists: boolean = typeof j.jobId === 'string';
259
+ if (!jobIdExists) {
260
+ dispatch({
261
+ type: assetUploadsActions.REMOVE_UPLOAD,
262
+ filename: j.filename
263
+ });
264
+ doAssetTableHydration(api, storyId);
265
+ }
266
+ return jobIdExists;
267
+ });
268
+ if (ongoingJobs.length > 0) {
269
+ pollAssetJobs(api, ongoingJobs, processingTimeout);
270
+ }
271
+ }
272
+ })
273
+ .catch((e: Error[]) => {
274
+ if (axios.isCancel(e) && currentQueue !== queueLength - 1) {
275
+ currentQueue = currentQueue + 1;
276
+ createPromise(currentQueue);
277
+ }
278
+ });
279
+ };
280
+
281
+ for (let i = 0; i <= filesLength; i++) {
282
+ createPromise(i);
283
+ currentQueue = i;
284
+ }
358
285
  };
359
286
  };
360
287
 
@@ -395,40 +322,13 @@ const pollAssetJobs = (api, ongoingJobs: any[], timeout: number): void => {
395
322
  }, POLL_INTERVAL);
396
323
  };
397
324
 
398
- const removeUploadHander = (fileName: string, api: IImposiumAPI, dispatch): any => {
399
- uploadFiles = uploadFiles.filter((f) => f.name !== fileName);
400
- api.cancelUploadAssets(fileName);
401
- dispatch({
402
- type: assetUploadsActions.REMOVE_UPLOAD,
403
- filename: fileName
404
- });
405
- };
406
-
407
- export const cancelAssetUpload = (fileName: string, api: IImposiumAPI, assetId: string): any => {
325
+ export const cancelAssetUpload = (fileName: string, api: IImposiumAPI): any => {
408
326
  return (dispatch) => {
409
- if (assetId) {
410
- api.deleteAsset(assetId)
411
- .then()
412
- .catch((e) => console.error(e));
413
- }
414
- removeUploadHander(fileName, api, dispatch);
415
- };
416
- };
417
-
418
- export const cancelNonUploadedAssets = (api: IImposiumAPI): any => {
419
- return (dispatch, getStore) => {
420
- const {
421
- assetUploads: { uploads }
422
- } = getStore();
423
-
424
- if (uploads.length > 0) {
425
- for (const file of uploads) {
426
- const upload = uploads.find((f) => f.filename === file.filename);
427
- if (upload.percent === 0) {
428
- removeUploadHander(file.filename, api, dispatch);
429
- }
430
- }
431
- }
327
+ api.cancelUploadAssets(fileName);
328
+ dispatch({
329
+ type: assetUploadsActions.REMOVE_UPLOAD,
330
+ filename: fileName
331
+ });
432
332
  };
433
333
  };
434
334
 
@@ -12,13 +12,17 @@ export const getStoryPublishStatus = (api: IImposiumAPI, storyId: string): any =
12
12
  api.getStoryStatus(storyId)
13
13
  .then((resStatus) => {
14
14
  if (resStatus) {
15
+ if (resStatus.status === 'failed') {
16
+ reject(resStatus.message);
17
+ }
18
+
15
19
  dispatch({ type: publish.UPDATE_PUBLISH_STATUS, data: resStatus });
20
+
16
21
  if (resStatus.publishing) {
17
22
  const jobId = resStatus.job_id;
18
23
  api.pollJob(jobId)
19
24
  .then(() => {
20
25
  return dispatch(getStoryPublishStatus(api, storyId));
21
- // Error polling job
22
26
  })
23
27
  .catch((e) => {
24
28
  api.cancelJobPolling()
@@ -29,7 +33,6 @@ export const getStoryPublishStatus = (api: IImposiumAPI, storyId: string): any =
29
33
  reject(f);
30
34
  throw f;
31
35
  });
32
- console.error(e);
33
36
  reject(copy.header.publishPollError);
34
37
  });
35
38
  }
@@ -73,7 +76,7 @@ export const publishVersion = (api: IImposiumAPI, storyId: string) => {
73
76
  return new Promise((resolve, reject) => {
74
77
  api.runPublish(storyId, '')
75
78
  .then((d) => {
76
- dispatch(getStoryPublishStatus(api, storyId));
79
+ return dispatch(getStoryPublishStatus(api, storyId));
77
80
  })
78
81
  .catch(() => {
79
82
  reject(copy.header.publishJobError);
@@ -1,12 +1,9 @@
1
- import actions, { ACCESS_CACHE_KEY } from '../actions/access';
1
+ import actions from '../actions/access';
2
2
 
3
- let initialState: any = null;
4
-
5
- try {
6
- initialState = JSON.parse(localStorage.getItem(ACCESS_CACHE_KEY));
7
- } catch (e) {
8
- console.warn('Cached access data was malformed or missing, redirected to login.');
9
- }
3
+ const initialState: any = {
4
+ organizations: [],
5
+ services: []
6
+ };
10
7
 
11
8
  const access = (state = initialState, action) => {
12
9
  switch (action.type) {