@imposium-hub/components 2.2.45-0 → 2.2.46-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 +1 -0
  2. package/dist/cjs/Util.js +8 -1
  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 +4 -7
  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 +2 -1
  10. package/dist/cjs/components/app-wrapper/AppWrapper.js +79 -71
  11. package/dist/cjs/components/app-wrapper/AppWrapper.js.map +1 -1
  12. package/dist/cjs/components/assets/AssetField.js +2 -2
  13. package/dist/cjs/components/assets/AssetField.js.map +1 -1
  14. package/dist/cjs/components/assets/AssetsTableDurationCell.js +1 -4
  15. package/dist/cjs/components/assets/AssetsTableDurationCell.js.map +1 -1
  16. package/dist/cjs/components/assets/AssetsTableGlobalCell.js +1 -1
  17. package/dist/cjs/components/assets/AssetsTableGlobalCell.js.map +1 -1
  18. package/dist/cjs/components/assets/AssetsTableNameCell.js +4 -3
  19. package/dist/cjs/components/assets/AssetsTableNameCell.js.map +1 -1
  20. package/dist/cjs/components/assets/AssetsTableRateCell.js +9 -3
  21. package/dist/cjs/components/assets/AssetsTableRateCell.js.map +1 -1
  22. package/dist/cjs/components/assets/AssetsTableTypeFilter.js +2 -2
  23. package/dist/cjs/components/assets/AssetsTableTypeFilter.js.map +1 -1
  24. package/dist/cjs/components/assets/AssetsUploadMenu.js +157 -34
  25. package/dist/cjs/components/assets/AssetsUploadMenu.js.map +1 -1
  26. package/dist/cjs/components/auth-gate/AuthGate.js +5 -8
  27. package/dist/cjs/components/auth-gate/AuthGate.js.map +1 -1
  28. package/dist/cjs/components/button-group-field/ButtonGroupField.d.ts +1 -1
  29. package/dist/cjs/components/checkbox-field/CheckboxField.d.ts +1 -1
  30. package/dist/cjs/components/color-field/ColorField.d.ts +1 -1
  31. package/dist/cjs/components/color-field/ColorField.js +2 -2
  32. package/dist/cjs/components/color-field/ColorField.js.map +1 -1
  33. package/dist/cjs/components/context-menu/ContextMenu.js +8 -4
  34. package/dist/cjs/components/context-menu/ContextMenu.js.map +1 -1
  35. package/dist/cjs/components/copy-prop-id-button/CopyPropIdButton.d.ts +12 -0
  36. package/dist/cjs/components/copy-prop-id-button/CopyPropIdButton.js +75 -0
  37. package/dist/cjs/components/copy-prop-id-button/CopyPropIdButton.js.map +1 -0
  38. package/dist/cjs/components/data-table/DataTable.js +2 -2
  39. package/dist/cjs/components/data-table/DataTable.js.map +1 -1
  40. package/dist/cjs/components/dropdown/{dropdown.stories.js → Dropdown.stories.js} +1 -1
  41. package/dist/cjs/components/dropdown/{dropdown.stories.js.map → Dropdown.stories.js.map} +1 -1
  42. package/dist/cjs/components/header/Header.d.ts +0 -4
  43. package/dist/cjs/components/header/Header.js +19 -27
  44. package/dist/cjs/components/header/Header.js.map +1 -1
  45. package/dist/cjs/components/list-field/ListField.d.ts +1 -1
  46. package/dist/cjs/components/number-field/NumberField.d.ts +1 -1
  47. package/dist/cjs/components/publish-wizard/PublishWizard.js +63 -119
  48. package/dist/cjs/components/publish-wizard/PublishWizard.js.map +1 -1
  49. package/dist/cjs/components/publish-wizard/publish/EmailWorkflow.js +28 -5
  50. package/dist/cjs/components/publish-wizard/publish/EmailWorkflow.js.map +1 -1
  51. package/dist/cjs/components/select-field/SelectField.d.ts +1 -1
  52. package/dist/cjs/components/select-field/SelectField.js +4 -0
  53. package/dist/cjs/components/select-field/SelectField.js.map +1 -1
  54. package/dist/cjs/components/slider-field/SliderField.d.ts +1 -1
  55. package/dist/cjs/components/smpte-field/SMPTEField.d.ts +1 -1
  56. package/dist/cjs/components/text-area-field/TextAreaField.d.ts +1 -1
  57. package/dist/cjs/components/text-field/TextField.d.ts +1 -1
  58. package/dist/cjs/constants/copy.d.ts +2 -5
  59. package/dist/cjs/constants/copy.js +5 -8
  60. package/dist/cjs/constants/copy.js.map +1 -1
  61. package/dist/cjs/constants/icons.d.ts +0 -1
  62. package/dist/cjs/constants/icons.js +1 -3
  63. package/dist/cjs/constants/icons.js.map +1 -1
  64. package/dist/cjs/index.d.ts +5 -3
  65. package/dist/cjs/index.js +8 -3
  66. package/dist/cjs/index.js.map +1 -1
  67. package/dist/cjs/redux/actions/access.d.ts +3 -1
  68. package/dist/cjs/redux/actions/access.js +43 -10
  69. package/dist/cjs/redux/actions/access.js.map +1 -1
  70. package/dist/cjs/redux/actions/asset-uploads.d.ts +5 -10
  71. package/dist/cjs/redux/actions/asset-uploads.js +262 -182
  72. package/dist/cjs/redux/actions/asset-uploads.js.map +1 -1
  73. package/dist/cjs/redux/actions/publish.js +3 -4
  74. package/dist/cjs/redux/actions/publish.js.map +1 -1
  75. package/dist/cjs/redux/reducers/access.js +30 -7
  76. package/dist/cjs/redux/reducers/access.js.map +1 -1
  77. package/dist/cjs/redux/reducers/asset-uploads.js +8 -24
  78. package/dist/cjs/redux/reducers/asset-uploads.js.map +1 -1
  79. package/dist/cjs/services/Session.d.ts +8 -9
  80. package/dist/cjs/services/Session.js +127 -31
  81. package/dist/cjs/services/Session.js.map +1 -1
  82. package/dist/esm/Util.d.ts +1 -0
  83. package/dist/esm/Util.js +6 -0
  84. package/dist/esm/Util.js.map +1 -1
  85. package/dist/esm/components/Tooltip.d.ts +2 -2
  86. package/dist/esm/components/Tooltip.js +4 -4
  87. package/dist/esm/components/Tooltip.js.map +1 -1
  88. package/dist/esm/components/advanced-number-field/AdvancedNumberField.d.ts +1 -1
  89. package/dist/esm/components/anchor-field/AnchorField.d.ts +1 -1
  90. package/dist/esm/components/app-wrapper/AppWrapper.d.ts +2 -1
  91. package/dist/esm/components/app-wrapper/AppWrapper.js +79 -69
  92. package/dist/esm/components/app-wrapper/AppWrapper.js.map +1 -1
  93. package/dist/esm/components/assets/AssetField.js +2 -2
  94. package/dist/esm/components/assets/AssetField.js.map +1 -1
  95. package/dist/esm/components/assets/AssetsTableDurationCell.js +2 -5
  96. package/dist/esm/components/assets/AssetsTableDurationCell.js.map +1 -1
  97. package/dist/esm/components/assets/AssetsTableGlobalCell.js +1 -1
  98. package/dist/esm/components/assets/AssetsTableGlobalCell.js.map +1 -1
  99. package/dist/esm/components/assets/AssetsTableNameCell.js +4 -3
  100. package/dist/esm/components/assets/AssetsTableNameCell.js.map +1 -1
  101. package/dist/esm/components/assets/AssetsTableRateCell.js +9 -3
  102. package/dist/esm/components/assets/AssetsTableRateCell.js.map +1 -1
  103. package/dist/esm/components/assets/AssetsTableTypeFilter.js +2 -2
  104. package/dist/esm/components/assets/AssetsTableTypeFilter.js.map +1 -1
  105. package/dist/esm/components/assets/AssetsUploadMenu.js +138 -34
  106. package/dist/esm/components/assets/AssetsUploadMenu.js.map +1 -1
  107. package/dist/esm/components/auth-gate/AuthGate.js +6 -9
  108. package/dist/esm/components/auth-gate/AuthGate.js.map +1 -1
  109. package/dist/esm/components/button-group-field/ButtonGroupField.d.ts +1 -1
  110. package/dist/esm/components/checkbox-field/CheckboxField.d.ts +1 -1
  111. package/dist/esm/components/color-field/ColorField.d.ts +1 -1
  112. package/dist/esm/components/color-field/ColorField.js +2 -2
  113. package/dist/esm/components/color-field/ColorField.js.map +1 -1
  114. package/dist/esm/components/context-menu/ContextMenu.js +7 -3
  115. package/dist/esm/components/context-menu/ContextMenu.js.map +1 -1
  116. package/dist/esm/components/copy-prop-id-button/CopyPropIdButton.d.ts +12 -0
  117. package/dist/esm/components/copy-prop-id-button/CopyPropIdButton.js +24 -0
  118. package/dist/esm/components/copy-prop-id-button/CopyPropIdButton.js.map +1 -0
  119. package/dist/esm/components/data-table/DataTable.js +2 -2
  120. package/dist/esm/components/data-table/DataTable.js.map +1 -1
  121. package/dist/esm/components/dropdown/{dropdown.stories.js → Dropdown.stories.js} +1 -1
  122. package/dist/esm/components/dropdown/{dropdown.stories.js.map → Dropdown.stories.js.map} +1 -1
  123. package/dist/esm/components/header/Header.d.ts +0 -4
  124. package/dist/esm/components/header/Header.js +19 -27
  125. package/dist/esm/components/header/Header.js.map +1 -1
  126. package/dist/esm/components/list-field/ListField.d.ts +1 -1
  127. package/dist/esm/components/number-field/NumberField.d.ts +1 -1
  128. package/dist/esm/components/publish-wizard/PublishWizard.js +64 -119
  129. package/dist/esm/components/publish-wizard/PublishWizard.js.map +1 -1
  130. package/dist/esm/components/publish-wizard/publish/EmailWorkflow.js +28 -5
  131. package/dist/esm/components/publish-wizard/publish/EmailWorkflow.js.map +1 -1
  132. package/dist/esm/components/select-field/SelectField.d.ts +1 -1
  133. package/dist/esm/components/select-field/SelectField.js +3 -0
  134. package/dist/esm/components/select-field/SelectField.js.map +1 -1
  135. package/dist/esm/components/slider-field/SliderField.d.ts +1 -1
  136. package/dist/esm/components/smpte-field/SMPTEField.d.ts +1 -1
  137. package/dist/esm/components/text-area-field/TextAreaField.d.ts +1 -1
  138. package/dist/esm/components/text-field/TextField.d.ts +1 -1
  139. package/dist/esm/constants/copy.d.ts +2 -5
  140. package/dist/esm/constants/copy.js +5 -8
  141. package/dist/esm/constants/copy.js.map +1 -1
  142. package/dist/esm/constants/icons.d.ts +0 -1
  143. package/dist/esm/constants/icons.js +0 -2
  144. package/dist/esm/constants/icons.js.map +1 -1
  145. package/dist/esm/index.d.ts +5 -3
  146. package/dist/esm/index.js +5 -3
  147. package/dist/esm/index.js.map +1 -1
  148. package/dist/esm/redux/actions/access.d.ts +3 -1
  149. package/dist/esm/redux/actions/access.js +37 -8
  150. package/dist/esm/redux/actions/access.js.map +1 -1
  151. package/dist/esm/redux/actions/asset-uploads.d.ts +5 -10
  152. package/dist/esm/redux/actions/asset-uploads.js +224 -167
  153. package/dist/esm/redux/actions/asset-uploads.js.map +1 -1
  154. package/dist/esm/redux/actions/publish.js +3 -4
  155. package/dist/esm/redux/actions/publish.js.map +1 -1
  156. package/dist/esm/redux/reducers/access.js +8 -5
  157. package/dist/esm/redux/reducers/access.js.map +1 -1
  158. package/dist/esm/redux/reducers/asset-uploads.js +11 -48
  159. package/dist/esm/redux/reducers/asset-uploads.js.map +1 -1
  160. package/dist/esm/services/Session.d.ts +8 -9
  161. package/dist/esm/services/Session.js +102 -29
  162. package/dist/esm/services/Session.js.map +1 -1
  163. package/dist/styles.css +151 -25
  164. package/dist/styles.less +280 -100
  165. package/less/components/assets.less +237 -63
  166. package/less/components/button.less +7 -1
  167. package/less/components/data-table.less +17 -11
  168. package/less/components/header.less +0 -13
  169. package/less/components/publish-wizard.less +20 -13
  170. package/less/components/story-previewer.less +1 -0
  171. package/package.json +6 -6
  172. package/src/Util.ts +10 -0
  173. package/src/components/Tooltip.tsx +9 -9
  174. package/src/components/advanced-number-field/AdvancedNumberField.tsx +1 -1
  175. package/src/components/anchor-field/AnchorField.tsx +1 -1
  176. package/src/components/app-wrapper/AppWrapper.tsx +120 -79
  177. package/src/components/assets/AssetField.tsx +3 -8
  178. package/src/components/assets/AssetsTableDurationCell.tsx +2 -5
  179. package/src/components/assets/AssetsTableGlobalCell.tsx +15 -0
  180. package/src/components/assets/AssetsTableNameCell.tsx +3 -5
  181. package/src/components/assets/AssetsTableRateCell.tsx +11 -4
  182. package/src/components/assets/AssetsTableTypeFilter.tsx +7 -8
  183. package/src/components/assets/AssetsUploadMenu.tsx +271 -98
  184. package/src/components/auth-gate/AuthGate.tsx +8 -14
  185. package/src/components/button-group-field/ButtonGroupField.tsx +1 -1
  186. package/src/components/checkbox-field/CheckboxField.tsx +1 -1
  187. package/src/components/color-field/ColorField.tsx +3 -3
  188. package/src/components/context-menu/ContextMenu.tsx +16 -11
  189. package/src/components/copy-prop-id-button/CopyPropIdButton.tsx +44 -0
  190. package/src/components/data-table/DataTable.tsx +2 -2
  191. package/src/components/header/Header.tsx +39 -74
  192. package/src/components/list-field/ListField.tsx +1 -1
  193. package/src/components/number-field/NumberField.tsx +1 -1
  194. package/src/components/publish-wizard/PublishWizard.tsx +102 -180
  195. package/src/components/publish-wizard/publish/EmailWorkflow.tsx +42 -10
  196. package/src/components/select-field/SelectField.tsx +4 -1
  197. package/src/components/slider-field/SliderField.tsx +1 -1
  198. package/src/components/smpte-field/SMPTEField.tsx +1 -1
  199. package/src/components/text-area-field/TextAreaField.tsx +1 -1
  200. package/src/components/text-field/TextField.tsx +1 -1
  201. package/src/constants/copy.ts +5 -9
  202. package/src/constants/icons.tsx +0 -3
  203. package/src/index.ts +16 -9
  204. package/src/redux/actions/access.ts +67 -5
  205. package/src/redux/actions/asset-uploads.ts +305 -205
  206. package/src/redux/actions/publish.ts +3 -6
  207. package/src/redux/reducers/access.ts +8 -5
  208. package/src/redux/reducers/asset-uploads.ts +13 -48
  209. package/src/services/Session.ts +120 -34
  210. package/dist/cjs/components/app-wrapper/AppWrapper_BACKUP_73190.d.ts +0 -27
  211. package/dist/cjs/components/app-wrapper/AppWrapper_BACKUP_73190.js +0 -243
  212. package/dist/cjs/components/app-wrapper/AppWrapper_BACKUP_73190.js.map +0 -1
  213. package/dist/cjs/components/app-wrapper/AppWrapper_BASE_73190.d.ts +0 -28
  214. package/dist/cjs/components/app-wrapper/AppWrapper_BASE_73190.js +0 -255
  215. package/dist/cjs/components/app-wrapper/AppWrapper_BASE_73190.js.map +0 -1
  216. package/dist/cjs/components/app-wrapper/AppWrapper_LOCAL_73190.d.ts +0 -27
  217. package/dist/cjs/components/app-wrapper/AppWrapper_LOCAL_73190.js +0 -243
  218. package/dist/cjs/components/app-wrapper/AppWrapper_LOCAL_73190.js.map +0 -1
  219. package/dist/cjs/components/app-wrapper/AppWrapper_REMOTE_73190.d.ts +0 -28
  220. package/dist/cjs/components/app-wrapper/AppWrapper_REMOTE_73190.js +0 -251
  221. package/dist/cjs/components/app-wrapper/AppWrapper_REMOTE_73190.js.map +0 -1
  222. package/dist/cjs/components/error-message-preview/ErrorMessagePreview.d.ts +0 -15
  223. package/dist/cjs/components/error-message-preview/ErrorMessagePreview.js +0 -91
  224. package/dist/cjs/components/error-message-preview/ErrorMessagePreview.js.map +0 -1
  225. package/dist/cjs/components/header/Header_BACKUP_73021.d.ts +0 -33
  226. package/dist/cjs/components/header/Header_BACKUP_73021.js +0 -393
  227. package/dist/cjs/components/header/Header_BACKUP_73021.js.map +0 -1
  228. package/dist/cjs/components/header/Header_BASE_73021.d.ts +0 -29
  229. package/dist/cjs/components/header/Header_BASE_73021.js +0 -376
  230. package/dist/cjs/components/header/Header_BASE_73021.js.map +0 -1
  231. package/dist/cjs/components/header/Header_LOCAL_73021.d.ts +0 -33
  232. package/dist/cjs/components/header/Header_LOCAL_73021.js +0 -382
  233. package/dist/cjs/components/header/Header_LOCAL_73021.js.map +0 -1
  234. package/dist/cjs/components/header/Header_REMOTE_73021.d.ts +0 -30
  235. package/dist/cjs/components/header/Header_REMOTE_73021.js +0 -386
  236. package/dist/cjs/components/header/Header_REMOTE_73021.js.map +0 -1
  237. package/dist/esm/components/app-wrapper/AppWrapper_BACKUP_73190.d.ts +0 -27
  238. package/dist/esm/components/app-wrapper/AppWrapper_BACKUP_73190.js +0 -194
  239. package/dist/esm/components/app-wrapper/AppWrapper_BACKUP_73190.js.map +0 -1
  240. package/dist/esm/components/app-wrapper/AppWrapper_BASE_73190.d.ts +0 -28
  241. package/dist/esm/components/app-wrapper/AppWrapper_BASE_73190.js +0 -208
  242. package/dist/esm/components/app-wrapper/AppWrapper_BASE_73190.js.map +0 -1
  243. package/dist/esm/components/app-wrapper/AppWrapper_LOCAL_73190.d.ts +0 -27
  244. package/dist/esm/components/app-wrapper/AppWrapper_LOCAL_73190.js +0 -194
  245. package/dist/esm/components/app-wrapper/AppWrapper_LOCAL_73190.js.map +0 -1
  246. package/dist/esm/components/app-wrapper/AppWrapper_REMOTE_73190.d.ts +0 -28
  247. package/dist/esm/components/app-wrapper/AppWrapper_REMOTE_73190.js +0 -204
  248. package/dist/esm/components/app-wrapper/AppWrapper_REMOTE_73190.js.map +0 -1
  249. package/dist/esm/components/error-message-preview/ErrorMessagePreview.d.ts +0 -15
  250. package/dist/esm/components/error-message-preview/ErrorMessagePreview.js +0 -35
  251. package/dist/esm/components/error-message-preview/ErrorMessagePreview.js.map +0 -1
  252. package/dist/esm/components/header/Header_BACKUP_73021.d.ts +0 -33
  253. package/dist/esm/components/header/Header_BACKUP_73021.js +0 -336
  254. package/dist/esm/components/header/Header_BACKUP_73021.js.map +0 -1
  255. package/dist/esm/components/header/Header_BASE_73021.d.ts +0 -29
  256. package/dist/esm/components/header/Header_BASE_73021.js +0 -322
  257. package/dist/esm/components/header/Header_BASE_73021.js.map +0 -1
  258. package/dist/esm/components/header/Header_LOCAL_73021.d.ts +0 -33
  259. package/dist/esm/components/header/Header_LOCAL_73021.js +0 -328
  260. package/dist/esm/components/header/Header_LOCAL_73021.js.map +0 -1
  261. package/dist/esm/components/header/Header_REMOTE_73021.d.ts +0 -30
  262. package/dist/esm/components/header/Header_REMOTE_73021.js +0 -329
  263. package/dist/esm/components/header/Header_REMOTE_73021.js.map +0 -1
  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
@@ -488,12 +488,7 @@ class EmailWorkflow extends React.PureComponent<IEmailWorkflowProps, IEmailWorkf
488
488
  }
489
489
 
490
490
  public renderLabel() {
491
- const {
492
- isExport,
493
- batchJobs,
494
- publishDataset,
495
- batchesList: { error }
496
- } = this.props;
491
+ const { isExport, batchJobs, publishDataset } = this.props;
497
492
  const { renderedBatch, selectedBatchId, uploading, uploadComplete } = this.state;
498
493
 
499
494
  if (
@@ -512,10 +507,6 @@ class EmailWorkflow extends React.PureComponent<IEmailWorkflowProps, IEmailWorkf
512
507
  );
513
508
  }
514
509
 
515
- if (batchJobs.failed && error[selectedBatchId]) {
516
- return <>{error[selectedBatchId].error}</>;
517
- }
518
-
519
510
  if (uploading) {
520
511
  const uploadingCopy = isExport
521
512
  ? copy.publish.importingData
@@ -670,9 +661,14 @@ class EmailWorkflow extends React.PureComponent<IEmailWorkflowProps, IEmailWorkf
670
661
  batchError,
671
662
  creativeManagerOverrides
672
663
  } = this.state;
664
+
673
665
  const {
674
666
  isExport,
675
667
  batchJobs: { missing, renders, failed },
668
+ batchesList: {
669
+ error,
670
+ selected: { name }
671
+ },
676
672
  isCrM,
677
673
  publishDataset
678
674
  } = this.props;
@@ -776,13 +772,49 @@ class EmailWorkflow extends React.PureComponent<IEmailWorkflowProps, IEmailWorkf
776
772
  const title = publishDataset
777
773
  ? copy.publish.datasetTitle.replace('[dataset_name]', this.props.activeDataset?.name)
778
774
  : copy.publish.emailTitle;
775
+
779
776
  const desc = publishDataset ? '' : copy.publish.emailDesc;
780
777
 
778
+ const showBatchError = () => {
779
+ if (failed && error && error[selectedBatchId]) {
780
+ let errorMsg: JSX.Element = <></>;
781
+ let errorExpMsg: JSX.Element = <></>;
782
+ if (error[selectedBatchId]) {
783
+ const { experience } = error[selectedBatchId];
784
+ errorMsg = <span className='error-title'>{error[selectedBatchId].error}</span>;
785
+ errorExpMsg = experience?.error ? <div>{experience.error}</div> : <></>;
786
+ }
787
+
788
+ return (
789
+ <div className='batch-job-error'>
790
+ <h2>{`Batch "${name}" stopped due to errors.`}</h2>
791
+ <table>
792
+ <thead></thead>
793
+ <tbody>
794
+ <tr>
795
+ <td>Batch ID:</td>
796
+ <td>{selectedBatchId}</td>
797
+ </tr>
798
+ <tr>
799
+ <td>First Error:</td>
800
+ <td>
801
+ {errorMsg}
802
+ <br />
803
+ {errorExpMsg}
804
+ </td>
805
+ </tr>
806
+ </tbody>
807
+ </table>
808
+ </div>
809
+ );
810
+ }
811
+ };
781
812
  const uploadCSV = (
782
813
  <div>
783
814
  <h2>{title}</h2>
784
815
  <HRule />
785
816
  <p>{desc}</p>
817
+ {showBatchError()}
786
818
  <input
787
819
  type='file'
788
820
  style={{ display: 'none' }}
@@ -7,7 +7,7 @@ import { copying } from '../../constants/copy';
7
7
 
8
8
  interface ISelectFieldProps {
9
9
  buttons?: any;
10
- label?: string;
10
+ label?: any;
11
11
  selectRef?: any;
12
12
  options: any;
13
13
  disable?: boolean;
@@ -61,6 +61,9 @@ class SelectField extends React.PureComponent<ISelectFieldProps> {
61
61
  }
62
62
 
63
63
  this.props.onChange(val);
64
+ if (this.props.selectRef?.current) {
65
+ this.props.selectRef.current.blur();
66
+ }
64
67
  }
65
68
 
66
69
  public render() {
@@ -3,7 +3,7 @@ import FieldWrapper from '../field-wrapper/FieldWrapper';
3
3
  import { IToolTipConfig } from '../Tooltip';
4
4
 
5
5
  interface ISliderFieldProps {
6
- label?: string;
6
+ label?: any;
7
7
  value: number;
8
8
  width?: string | number;
9
9
  min: number;
@@ -5,7 +5,7 @@ import { TIMECODE } from '../../constants/timecode';
5
5
  import { getSMPTE } from '../../Util';
6
6
 
7
7
  interface ISMPTEFieldProps {
8
- label?: string;
8
+ label?: any;
9
9
  placeholder?: string;
10
10
  readOnly?: boolean;
11
11
  tooltip?: IToolTipConfig | string;
@@ -9,7 +9,7 @@ interface ITextAreaFieldProps {
9
9
  buttons?: any;
10
10
  controlled?: boolean;
11
11
  disabled?: boolean;
12
- label?: string;
12
+ label?: any;
13
13
  placeholder?: string;
14
14
  readOnly?: boolean;
15
15
  value: string;
@@ -23,7 +23,7 @@ interface ITextFieldProps {
23
23
  disabled?: boolean;
24
24
  submittable?: boolean;
25
25
  focusOnMount?: boolean;
26
- label?: string;
26
+ label?: any;
27
27
  placeholder?: string;
28
28
  readOnly?: boolean;
29
29
  value?: string;
@@ -1,6 +1,7 @@
1
1
  export const assets = {
2
2
  tooltipFilter: 'Filter by Asset type',
3
3
  previewNotAvailable: 'Preview Not Available for this Asset Type',
4
+ dropAsset: 'Drop file(s) here.',
4
5
  iconTypes: {
5
6
  filter: 'Filter By Type',
6
7
  lut: 'LUT',
@@ -17,15 +18,15 @@ export const assets = {
17
18
  after_effects: 'After Effects'
18
19
  },
19
20
  uploads: {
20
- noUploads: 'There are currently no assets uploading...',
21
+ noUploads: 'No files selected, drag and drop files here to begin.',
21
22
  preparePhase: 'Preparing asset...',
22
23
  autoTagFilname: 'Tag by file name',
23
24
  autoTagDelimiter: 'Tag by Delimiter',
24
25
  delimiterOptions: 'Delimiter Options',
25
26
  manualTagging: 'Tag Manually',
26
- assignToProjectInput: 'Assign to Project',
27
+ assignToProjectInput: 'Make Global',
27
28
  assignToProjectInfo:
28
- 'If selected, any assets uploaded will only be available to use with the currently selected project.',
29
+ 'If selected, any assets uploaded will be available to use with all projects on the current organization.',
29
30
  uploadButton: 'Upload',
30
31
  cancelButton: 'Cancel'
31
32
  },
@@ -76,6 +77,7 @@ export const previewer = {
76
77
  };
77
78
 
78
79
  export const compositions = {
80
+ tooltipPropId: 'Copy Property ID',
79
81
  name: 'Name',
80
82
  width: 'Width',
81
83
  height: 'Height',
@@ -115,9 +117,6 @@ export const compositions = {
115
117
  };
116
118
 
117
119
  export const publish = {
118
- publishInProgress: 'Publish to Creative Manager in progress',
119
- btnRunTestBatch: 'Run Test Batch',
120
- btnCrM: 'Creative Manager',
121
120
  creativeLibraryId: 'Creative Library ID',
122
121
  creativeId: 'Creative ID',
123
122
  email: 'Notification Email',
@@ -138,11 +137,8 @@ export const publish = {
138
137
 
139
138
  // distribute
140
139
  distributeStepTitle: 'STEP 2: How do you want your users to view their video?',
141
- distributeStepTitleFromCrM: 'STEP 2: Run a test batch or return to Creative Manager?',
142
140
  distributeStepDesc:
143
141
  'Select which Composition you want to deliver, access credentials you want to use, and distribution channel.',
144
- distributeStepDescFromCrM:
145
- 'You can run a test batch to preview a sample data set, or return to Creative Manager where you can publish the final version set.',
146
142
  compositionError: 'Please Select Composition',
147
143
 
148
144
  // webpage
@@ -37,7 +37,6 @@ import { faFont } from '@fortawesome/free-solid-svg-icons/faFont';
37
37
  import { faAlignLeft } from '@fortawesome/free-solid-svg-icons/faAlignLeft';
38
38
  import { faAlignRight } from '@fortawesome/free-solid-svg-icons/faAlignRight';
39
39
  import { faAlignCenter } from '@fortawesome/free-solid-svg-icons/faAlignCenter';
40
- import { faUpRightFromSquare } from '@fortawesome/free-solid-svg-icons/faUpRightFromSquare';
41
40
  import { faBars } from '@fortawesome/free-solid-svg-icons/faBars';
42
41
  import { faArrowToTop } from '@fortawesome/pro-light-svg-icons/faArrowToTop';
43
42
  import { faArrowToBottom } from '@fortawesome/pro-light-svg-icons/faArrowToBottom';
@@ -213,5 +212,3 @@ export const ICON_CENTER_ANCHOR = <FontAwesomeIcon icon={faCircleSmall} />;
213
212
  export const ICON_CLAPPERBOARD_PLAY = <FontAwesomeIcon icon={faClapperboardPlay} />;
214
213
 
215
214
  export const ICON_CODE = <FontAwesomeIcon icon={faCode} />;
216
-
217
- export const ICON_UP_RIGHT_FROM_SQUARE = <FontAwesomeIcon icon={faUpRightFromSquare} />;
package/src/index.ts CHANGED
@@ -46,6 +46,7 @@ import AssetsTableTagsFilter from './components/assets/AssetsTableTagsFilter';
46
46
  import AssetsTableTagsPivot from './components/assets/AssetsTableTagsPivot';
47
47
  import AssetsTableComplexTagCell from './components/assets/AssetsTableComplexTagCell';
48
48
  import AssetsTableTypeCell from './components/assets/AssetsTableTypeCell';
49
+ import AssetsTableGlobalCell from './components/assets/AssetsTableGlobalCell';
49
50
  import AssetsTableStatusCell from './components/assets/AssetsTableStatusCell';
50
51
  import AssetsTableTypeFilter from './components/assets/AssetsTableTypeFilter';
51
52
  import AssetsTypeIcon from './components/assets/AssetsTypeIcon';
@@ -80,7 +81,14 @@ import {
80
81
  clearStoryPublishStatus,
81
82
  getStoryPublishStatus
82
83
  } from './redux/actions/publish';
83
- import { storyAdded, storyNameMutated, orgNameMutated, storyDeleted } from './redux/actions/access';
84
+ import {
85
+ cacheAccessData,
86
+ clearCachedAccessList,
87
+ storyAdded,
88
+ storyNameMutated,
89
+ orgNameMutated,
90
+ storyDeleted
91
+ } from './redux/actions/access';
84
92
  import { resetFilters, updateFilters } from './redux/actions/asset-filters';
85
93
  import {
86
94
  getAssets,
@@ -96,12 +104,7 @@ import {
96
104
  updateAssetStory
97
105
  } from './redux/actions/asset-list';
98
106
  import { getAssetTagList, addAssetTagToList } from './redux/actions/asset-tags';
99
- import {
100
- cancelAssetUpload,
101
- toggleTagFileName,
102
- uploadAssets,
103
- replaceAsset
104
- } from './redux/actions/asset-uploads';
107
+ import { cancelAssetUpload, uploadAssets, replaceAsset } from './redux/actions/asset-uploads';
105
108
  import { selectAsset, deselectAsset, resetSelection } from './redux/actions/selected-assets';
106
109
  import assetFilters from './redux/reducers/asset-filters';
107
110
  import assetList from './redux/reducers/asset-list';
@@ -153,6 +156,7 @@ import AssetsTableRateCell from './components/assets/AssetsTableRateCell';
153
156
  import ContextMenu from './components/context-menu/ContextMenu';
154
157
  import ContextMenuItem from './components/context-menu/ContextMenuItem';
155
158
  import ContextMenuTrigger from './components/context-menu/ContextMenuTrigger';
159
+ import CopyPropIdButton from './components/copy-prop-id-button/CopyPropIdButton';
156
160
  import Submenu from './components/context-menu/SubMenu';
157
161
 
158
162
  export {
@@ -209,6 +213,7 @@ export {
209
213
  AssetsTableSelectCell,
210
214
  AssetsTableTypeFilter,
211
215
  AssetsTableTypeCell,
216
+ AssetsTableGlobalCell,
212
217
  AssetsTableStatusCell,
213
218
  AssetsTableNameFilter,
214
219
  AssetsTableNameCell,
@@ -228,6 +233,8 @@ export {
228
233
  login,
229
234
  clearCachedAuth,
230
235
  access,
236
+ cacheAccessData,
237
+ clearCachedAccessList,
231
238
  storyAdded,
232
239
  storyNameMutated,
233
240
  orgNameMutated,
@@ -242,7 +249,6 @@ export {
242
249
  updateAssetName,
243
250
  updateAssetData,
244
251
  doAssetTableHydration,
245
- toggleTagFileName,
246
252
  uploadAssets,
247
253
  replaceAsset,
248
254
  selectAsset,
@@ -304,5 +310,6 @@ export {
304
310
  ContextMenu,
305
311
  ContextMenuItem,
306
312
  ContextMenuTrigger,
307
- Submenu
313
+ Submenu,
314
+ CopyPropIdButton
308
315
  };
@@ -1,7 +1,29 @@
1
+ import SessionService from '../../services/Session';
2
+
3
+ export const ACCESS_CACHE_KEY: string = 'imposium_access_list';
4
+
5
+ export const cacheAccessData = (accessData: any): any => {
6
+ doCacheAccessData(accessData);
7
+ return { type: actions.SET, accessData };
8
+ };
9
+
10
+ export const clearCachedAccessList = (): any => {
11
+ try {
12
+ localStorage.removeItem(ACCESS_CACHE_KEY);
13
+ } catch (e) {
14
+ console.warn('Failed to clear access list cache from local storage.');
15
+ }
16
+
17
+ return { type: actions.CLEAR };
18
+ };
19
+
1
20
  export const storyAdded = (storyId: string, storyName: string): any => {
2
21
  return (dispatch, getStore) => {
3
22
  const {
4
23
  access,
24
+ auth: {
25
+ idTokenPayload: { exp }
26
+ },
5
27
  routing: {
6
28
  locationBeforeTransitions: { query }
7
29
  }
@@ -27,13 +49,24 @@ export const storyAdded = (storyId: string, storyName: string): any => {
27
49
  return o;
28
50
  })
29
51
  };
52
+
53
+ SessionService.updateSession(
54
+ { stories_hash: SessionService.generateStoriesHash(accessData) },
55
+ exp
56
+ );
57
+ doCacheAccessData(accessData);
30
58
  dispatch({ type: actions.STORY_ADDED, accessData });
31
59
  };
32
60
  };
33
61
 
34
62
  export const orgNameMutated = (orgId: string, newOrgName: string): any => {
35
63
  return (dispatch, getStore) => {
36
- const { access } = getStore();
64
+ const {
65
+ access,
66
+ auth: {
67
+ idTokenPayload: { exp }
68
+ }
69
+ } = getStore();
37
70
 
38
71
  const accessData: any = {
39
72
  ...access,
@@ -48,6 +81,12 @@ export const orgNameMutated = (orgId: string, newOrgName: string): any => {
48
81
  return o;
49
82
  })
50
83
  };
84
+
85
+ SessionService.updateSession(
86
+ { stories_hash: SessionService.generateOrgsHash(accessData) },
87
+ exp
88
+ );
89
+ doCacheAccessData(accessData);
51
90
  dispatch({ type: actions.ORG_NAME_MUTATION, accessData });
52
91
  };
53
92
  };
@@ -56,6 +95,9 @@ export const storyNameMutated = (storyId: string, newStoryName: string): any =>
56
95
  return (dispatch, getStore) => {
57
96
  const {
58
97
  access,
98
+ auth: {
99
+ idTokenPayload: { exp }
100
+ },
59
101
  routing: {
60
102
  locationBeforeTransitions: { query }
61
103
  }
@@ -81,6 +123,12 @@ export const storyNameMutated = (storyId: string, newStoryName: string): any =>
81
123
  return o;
82
124
  })
83
125
  };
126
+
127
+ SessionService.updateSession(
128
+ { stories_hash: SessionService.generateOrgsHash(accessData) },
129
+ exp
130
+ );
131
+ doCacheAccessData(accessData);
84
132
  dispatch({ type: actions.STORY_NAME_MUTATION, accessData });
85
133
  };
86
134
  };
@@ -89,6 +137,9 @@ export const storyDeleted = (storyId: string): any => {
89
137
  return (dispatch, getStore) => {
90
138
  const {
91
139
  access,
140
+ auth: {
141
+ idTokenPayload: { exp }
142
+ },
92
143
  routing: {
93
144
  locationBeforeTransitions: { query }
94
145
  }
@@ -108,14 +159,25 @@ export const storyDeleted = (storyId: string): any => {
108
159
  return o;
109
160
  })
110
161
  };
162
+
163
+ SessionService.updateSession(
164
+ {
165
+ story_id: '',
166
+ stories_hash: SessionService.generateStoriesHash(accessData)
167
+ },
168
+ exp
169
+ );
170
+ doCacheAccessData(accessData);
111
171
  dispatch({ type: actions.STORY_DELETED, accessData });
112
172
  };
113
173
  };
114
174
 
115
- export const setAccessData = (accessData: any): any => {
116
- return (dispatch) => {
117
- dispatch({ type: actions.SET, accessData });
118
- };
175
+ const doCacheAccessData = (accessData: any): any => {
176
+ try {
177
+ localStorage.setItem(ACCESS_CACHE_KEY, JSON.stringify(accessData));
178
+ } catch (e) {
179
+ console.warn('Failed to cache access list in local storage.');
180
+ }
119
181
  };
120
182
 
121
183
  const actions = {