@imposium-hub/components 2.3.11-0 → 2.4.0-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 (288) 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 -157
  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 +28 -21
  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/story-previewer/StoryPreviewer.js +2 -7
  81. package/dist/cjs/components/story-previewer/StoryPreviewer.js.map +1 -1
  82. package/dist/cjs/components/text-area-field/TextAreaField.d.ts +1 -1
  83. package/dist/cjs/components/text-field/TextField.d.ts +1 -1
  84. package/dist/cjs/constants/copy.d.ts +5 -2
  85. package/dist/cjs/constants/copy.js +8 -5
  86. package/dist/cjs/constants/copy.js.map +1 -1
  87. package/dist/cjs/constants/icons.d.ts +1 -0
  88. package/dist/cjs/constants/icons.js +3 -1
  89. package/dist/cjs/constants/icons.js.map +1 -1
  90. package/dist/cjs/index.d.ts +3 -5
  91. package/dist/cjs/index.js +3 -8
  92. package/dist/cjs/index.js.map +1 -1
  93. package/dist/cjs/redux/actions/access.d.ts +1 -3
  94. package/dist/cjs/redux/actions/access.js +10 -43
  95. package/dist/cjs/redux/actions/access.js.map +1 -1
  96. package/dist/cjs/redux/actions/asset-uploads.d.ts +11 -6
  97. package/dist/cjs/redux/actions/asset-uploads.js +182 -262
  98. package/dist/cjs/redux/actions/asset-uploads.js.map +1 -1
  99. package/dist/cjs/redux/actions/publish.js +4 -3
  100. package/dist/cjs/redux/actions/publish.js.map +1 -1
  101. package/dist/cjs/redux/reducers/access.js +7 -30
  102. package/dist/cjs/redux/reducers/access.js.map +1 -1
  103. package/dist/cjs/redux/reducers/asset-uploads.js +24 -10
  104. package/dist/cjs/redux/reducers/asset-uploads.js.map +1 -1
  105. package/dist/cjs/services/API.d.ts +2 -2
  106. package/dist/cjs/services/API.js +1 -2
  107. package/dist/cjs/services/API.js.map +1 -1
  108. package/dist/cjs/services/Auth0.js +1 -0
  109. package/dist/cjs/services/Auth0.js.map +1 -1
  110. package/dist/cjs/services/Session.d.ts +9 -8
  111. package/dist/cjs/services/Session.js +31 -127
  112. package/dist/cjs/services/Session.js.map +1 -1
  113. package/dist/cjs/utils/assets.d.ts +2 -1
  114. package/dist/cjs/utils/assets.js.map +1 -1
  115. package/dist/esm/Util.d.ts +0 -1
  116. package/dist/esm/Util.js +0 -6
  117. package/dist/esm/Util.js.map +1 -1
  118. package/dist/esm/components/Tooltip.d.ts +2 -2
  119. package/dist/esm/components/Tooltip.js +4 -4
  120. package/dist/esm/components/Tooltip.js.map +1 -1
  121. package/dist/esm/components/advanced-number-field/AdvancedNumberField.d.ts +1 -1
  122. package/dist/esm/components/anchor-field/AnchorField.d.ts +1 -1
  123. package/dist/esm/components/app-wrapper/AppWrapper.d.ts +1 -2
  124. package/dist/esm/components/app-wrapper/AppWrapper.js +69 -79
  125. package/dist/esm/components/app-wrapper/AppWrapper.js.map +1 -1
  126. package/dist/esm/components/app-wrapper/AppWrapper_BACKUP_73190.d.ts +27 -0
  127. package/dist/esm/components/app-wrapper/AppWrapper_BACKUP_73190.js +194 -0
  128. package/dist/esm/components/app-wrapper/AppWrapper_BACKUP_73190.js.map +1 -0
  129. package/dist/esm/components/app-wrapper/AppWrapper_BASE_73190.d.ts +28 -0
  130. package/dist/esm/components/app-wrapper/AppWrapper_BASE_73190.js +208 -0
  131. package/dist/esm/components/app-wrapper/AppWrapper_BASE_73190.js.map +1 -0
  132. package/dist/esm/components/app-wrapper/AppWrapper_LOCAL_73190.d.ts +27 -0
  133. package/dist/esm/components/app-wrapper/AppWrapper_LOCAL_73190.js +194 -0
  134. package/dist/esm/components/app-wrapper/AppWrapper_LOCAL_73190.js.map +1 -0
  135. package/dist/esm/components/app-wrapper/AppWrapper_REMOTE_73190.d.ts +28 -0
  136. package/dist/esm/components/app-wrapper/AppWrapper_REMOTE_73190.js +204 -0
  137. package/dist/esm/components/app-wrapper/AppWrapper_REMOTE_73190.js.map +1 -0
  138. package/dist/esm/components/assets/AssetField.js +2 -2
  139. package/dist/esm/components/assets/AssetField.js.map +1 -1
  140. package/dist/esm/components/assets/AssetsTableDurationCell.js +5 -2
  141. package/dist/esm/components/assets/AssetsTableDurationCell.js.map +1 -1
  142. package/dist/esm/components/assets/AssetsTableGlobalCell.js +1 -1
  143. package/dist/esm/components/assets/AssetsTableGlobalCell.js.map +1 -1
  144. package/dist/esm/components/assets/AssetsTableNameCell.js +3 -4
  145. package/dist/esm/components/assets/AssetsTableNameCell.js.map +1 -1
  146. package/dist/esm/components/assets/AssetsTableRateCell.js +3 -9
  147. package/dist/esm/components/assets/AssetsTableRateCell.js.map +1 -1
  148. package/dist/esm/components/assets/AssetsTableTypeFilter.js +2 -2
  149. package/dist/esm/components/assets/AssetsTableTypeFilter.js.map +1 -1
  150. package/dist/esm/components/assets/AssetsUploadMenu.js +34 -138
  151. package/dist/esm/components/assets/AssetsUploadMenu.js.map +1 -1
  152. package/dist/esm/components/auth-gate/AuthGate.js +9 -6
  153. package/dist/esm/components/auth-gate/AuthGate.js.map +1 -1
  154. package/dist/esm/components/button-group-field/ButtonGroupField.d.ts +1 -1
  155. package/dist/esm/components/checkbox-field/CheckboxField.d.ts +1 -1
  156. package/dist/esm/components/color-field/ColorField.d.ts +1 -1
  157. package/dist/esm/components/color-field/ColorField.js +2 -2
  158. package/dist/esm/components/color-field/ColorField.js.map +1 -1
  159. package/dist/esm/components/context-menu/ContextMenu.js +3 -7
  160. package/dist/esm/components/context-menu/ContextMenu.js.map +1 -1
  161. package/dist/esm/components/data-table/DataTable.js +2 -2
  162. package/dist/esm/components/data-table/DataTable.js.map +1 -1
  163. package/dist/esm/components/dropdown/{Dropdown.stories.js → dropdown.stories.js} +1 -1
  164. package/dist/esm/components/dropdown/{Dropdown.stories.js.map → dropdown.stories.js.map} +1 -1
  165. package/dist/esm/components/error-message-preview/ErrorMessagePreview.d.ts +15 -0
  166. package/dist/esm/components/error-message-preview/ErrorMessagePreview.js +35 -0
  167. package/dist/esm/components/error-message-preview/ErrorMessagePreview.js.map +1 -0
  168. package/dist/esm/components/header/Header.d.ts +4 -0
  169. package/dist/esm/components/header/Header.js +28 -21
  170. package/dist/esm/components/header/Header.js.map +1 -1
  171. package/dist/esm/components/header/Header_BACKUP_73021.d.ts +33 -0
  172. package/dist/esm/components/header/Header_BACKUP_73021.js +336 -0
  173. package/dist/esm/components/header/Header_BACKUP_73021.js.map +1 -0
  174. package/dist/esm/components/header/Header_BASE_73021.d.ts +29 -0
  175. package/dist/esm/components/header/Header_BASE_73021.js +322 -0
  176. package/dist/esm/components/header/Header_BASE_73021.js.map +1 -0
  177. package/dist/esm/components/header/Header_LOCAL_73021.d.ts +33 -0
  178. package/dist/esm/components/header/Header_LOCAL_73021.js +328 -0
  179. package/dist/esm/components/header/Header_LOCAL_73021.js.map +1 -0
  180. package/dist/esm/components/header/Header_REMOTE_73021.d.ts +30 -0
  181. package/dist/esm/components/header/Header_REMOTE_73021.js +329 -0
  182. package/dist/esm/components/header/Header_REMOTE_73021.js.map +1 -0
  183. package/dist/esm/components/list-field/ListField.d.ts +1 -1
  184. package/dist/esm/components/number-field/NumberField.d.ts +1 -1
  185. package/dist/esm/components/publish-wizard/PublishWizard.js +119 -64
  186. package/dist/esm/components/publish-wizard/PublishWizard.js.map +1 -1
  187. package/dist/esm/components/publish-wizard/publish/EmailWorkflow.js +5 -28
  188. package/dist/esm/components/publish-wizard/publish/EmailWorkflow.js.map +1 -1
  189. package/dist/esm/components/select-field/SelectField.d.ts +1 -1
  190. package/dist/esm/components/select-field/SelectField.js +0 -3
  191. package/dist/esm/components/select-field/SelectField.js.map +1 -1
  192. package/dist/esm/components/slider-field/SliderField.d.ts +1 -1
  193. package/dist/esm/components/smpte-field/SMPTEField.d.ts +1 -1
  194. package/dist/esm/components/story-previewer/StoryPreviewer.js +2 -7
  195. package/dist/esm/components/story-previewer/StoryPreviewer.js.map +1 -1
  196. package/dist/esm/components/text-area-field/TextAreaField.d.ts +1 -1
  197. package/dist/esm/components/text-field/TextField.d.ts +1 -1
  198. package/dist/esm/constants/copy.d.ts +5 -2
  199. package/dist/esm/constants/copy.js +8 -5
  200. package/dist/esm/constants/copy.js.map +1 -1
  201. package/dist/esm/constants/icons.d.ts +1 -0
  202. package/dist/esm/constants/icons.js +2 -0
  203. package/dist/esm/constants/icons.js.map +1 -1
  204. package/dist/esm/index.d.ts +3 -5
  205. package/dist/esm/index.js +3 -5
  206. package/dist/esm/index.js.map +1 -1
  207. package/dist/esm/redux/actions/access.d.ts +1 -3
  208. package/dist/esm/redux/actions/access.js +8 -37
  209. package/dist/esm/redux/actions/access.js.map +1 -1
  210. package/dist/esm/redux/actions/asset-uploads.d.ts +11 -6
  211. package/dist/esm/redux/actions/asset-uploads.js +167 -224
  212. package/dist/esm/redux/actions/asset-uploads.js.map +1 -1
  213. package/dist/esm/redux/actions/publish.js +4 -3
  214. package/dist/esm/redux/actions/publish.js.map +1 -1
  215. package/dist/esm/redux/reducers/access.js +5 -8
  216. package/dist/esm/redux/reducers/access.js.map +1 -1
  217. package/dist/esm/redux/reducers/asset-uploads.js +47 -15
  218. package/dist/esm/redux/reducers/asset-uploads.js.map +1 -1
  219. package/dist/esm/services/API.d.ts +2 -2
  220. package/dist/esm/services/API.js +1 -2
  221. package/dist/esm/services/API.js.map +1 -1
  222. package/dist/esm/services/Auth0.js +1 -0
  223. package/dist/esm/services/Auth0.js.map +1 -1
  224. package/dist/esm/services/Session.d.ts +9 -8
  225. package/dist/esm/services/Session.js +29 -102
  226. package/dist/esm/services/Session.js.map +1 -1
  227. package/dist/esm/utils/assets.d.ts +2 -1
  228. package/dist/esm/utils/assets.js.map +1 -1
  229. package/dist/styles.css +25 -151
  230. package/dist/styles.less +100 -280
  231. package/less/components/assets.less +63 -237
  232. package/less/components/button.less +1 -7
  233. package/less/components/data-table.less +11 -17
  234. package/less/components/header.less +13 -0
  235. package/less/components/publish-wizard.less +13 -20
  236. package/less/components/story-previewer.less +0 -1
  237. package/package.json +6 -6
  238. package/src/Util.ts +0 -10
  239. package/src/components/Tooltip.tsx +9 -9
  240. package/src/components/advanced-number-field/AdvancedNumberField.tsx +1 -1
  241. package/src/components/anchor-field/AnchorField.tsx +1 -1
  242. package/src/components/app-wrapper/AppWrapper.tsx +79 -120
  243. package/src/components/assets/AssetField.tsx +8 -3
  244. package/src/components/assets/AssetsTableDurationCell.tsx +5 -2
  245. package/src/components/assets/AssetsTableNameCell.tsx +5 -3
  246. package/src/components/assets/AssetsTableRateCell.tsx +4 -11
  247. package/src/components/assets/AssetsTableTypeFilter.tsx +8 -7
  248. package/src/components/assets/AssetsUploadMenu.tsx +98 -271
  249. package/src/components/auth-gate/AuthGate.tsx +14 -8
  250. package/src/components/button-group-field/ButtonGroupField.tsx +1 -1
  251. package/src/components/checkbox-field/CheckboxField.tsx +1 -1
  252. package/src/components/color-field/ColorField.tsx +3 -3
  253. package/src/components/context-menu/ContextMenu.tsx +11 -16
  254. package/src/components/data-table/DataTable.tsx +2 -2
  255. package/src/components/header/Header.tsx +75 -41
  256. package/src/components/list-field/ListField.tsx +1 -1
  257. package/src/components/number-field/NumberField.tsx +1 -1
  258. package/src/components/publish-wizard/PublishWizard.tsx +180 -102
  259. package/src/components/publish-wizard/publish/EmailWorkflow.tsx +10 -42
  260. package/src/components/select-field/SelectField.tsx +1 -4
  261. package/src/components/slider-field/SliderField.tsx +1 -1
  262. package/src/components/smpte-field/SMPTEField.tsx +1 -1
  263. package/src/components/story-previewer/StoryPreviewer.tsx +6 -10
  264. package/src/components/text-area-field/TextAreaField.tsx +1 -1
  265. package/src/components/text-field/TextField.tsx +1 -1
  266. package/src/constants/copy.ts +9 -5
  267. package/src/constants/icons.tsx +3 -0
  268. package/src/index.ts +9 -16
  269. package/src/redux/actions/access.ts +5 -67
  270. package/src/redux/actions/asset-uploads.ts +206 -307
  271. package/src/redux/actions/publish.ts +6 -3
  272. package/src/redux/reducers/access.ts +5 -8
  273. package/src/redux/reducers/asset-uploads.ts +47 -17
  274. package/src/services/API.ts +2 -7
  275. package/src/services/Auth0.ts +1 -0
  276. package/src/services/Session.ts +34 -120
  277. package/src/utils/assets.ts +2 -1
  278. package/dist/cjs/components/copy-prop-id-button/CopyPropIdButton.d.ts +0 -12
  279. package/dist/cjs/components/copy-prop-id-button/CopyPropIdButton.js +0 -75
  280. package/dist/cjs/components/copy-prop-id-button/CopyPropIdButton.js.map +0 -1
  281. package/dist/esm/components/copy-prop-id-button/CopyPropIdButton.d.ts +0 -12
  282. package/dist/esm/components/copy-prop-id-button/CopyPropIdButton.js +0 -24
  283. package/dist/esm/components/copy-prop-id-button/CopyPropIdButton.js.map +0 -1
  284. package/src/components/assets/AssetsTableGlobalCell.tsx +0 -15
  285. package/src/components/copy-prop-id-button/CopyPropIdButton.tsx +0 -44
  286. /package/dist/cjs/components/dropdown/{Dropdown.stories.d.ts → dropdown.stories.d.ts} +0 -0
  287. /package/dist/esm/components/dropdown/{Dropdown.stories.d.ts → dropdown.stories.d.ts} +0 -0
  288. /package/src/components/dropdown/{Dropdown.stories.tsx → dropdown.stories.tsx} +0 -0
@@ -1,20 +1,63 @@
1
1
  import assetUploadsActions from '../actions/asset-uploads';
2
2
 
3
3
  const initialState: any = {
4
+ tagByDelimiter: true,
5
+ delimiter: '_',
6
+ tagManually: false,
7
+ manualTags: [],
8
+ tagByFileName: false,
9
+ assignToStory: true,
4
10
  uploads: []
5
11
  };
6
12
 
7
13
  const assetUploads = (state = initialState, action): any => {
8
14
  switch (action.type) {
9
- case assetUploadsActions.ADD_UPLOAD:
15
+ case assetUploadsActions.TOGGLE_TAG_BY_FILENAME:
10
16
  return {
11
17
  ...state,
12
- uploads: [...state.uploads, action.uploadMeta]
18
+ tagByFileName: action.toggle
19
+ };
20
+ case assetUploadsActions.TOGGLE_TAG_BY_DELIMITER:
21
+ return {
22
+ ...state,
23
+ tagByDelimiter: action.toggle
24
+ };
25
+ case assetUploadsActions.SET_DELIMITER:
26
+ return {
27
+ ...state,
28
+ delimiter: action.delimiter
29
+ };
30
+ case assetUploadsActions.TOGGLE_MANUAL_TAGGING:
31
+ return {
32
+ ...state,
33
+ tagManually: action.toggle
34
+ };
35
+ case assetUploadsActions.ADD_MANUAL_TAG:
36
+ const newManualTags = [...state.manualTags];
37
+ newManualTags.push(action.tag);
38
+ return {
39
+ ...state,
40
+ manualTags: newManualTags
41
+ };
42
+ case assetUploadsActions.DELETE_MANUAL_TAG:
43
+ return {
44
+ ...state,
45
+ manualTags: state.manualTags.filter((t: string) => t !== action.tag)
13
46
  };
14
- case assetUploadsActions.UPDATE_UPLOAD:
47
+ case assetUploadsActions.DELETE_MANUAL_TAGS:
15
48
  return {
16
49
  ...state,
17
- uploads: action.uploadMetaArray
50
+ manualTags: []
51
+ };
52
+ case assetUploadsActions.TOGGLE_ASSIGN_TO_STORY:
53
+ return {
54
+ ...state,
55
+ assignToStory: action.toggle
56
+ };
57
+ case assetUploadsActions.ADD_UPLOAD:
58
+ return {
59
+ ...state,
60
+ uploads: [...state.uploads, action.uploadMeta]
18
61
  };
19
62
  case assetUploadsActions.UPDATE_PERCENT_UPLOADED:
20
63
  const newUploads = state.uploads.map((u: any) => {
@@ -29,19 +72,6 @@ const assetUploads = (state = initialState, action): any => {
29
72
  ...state,
30
73
  uploads: newUploads
31
74
  };
32
- case assetUploadsActions.ADD_UPLOAD_ASSET_ID:
33
- const updateUploads = state.uploads.map((u: any) => {
34
- if (u.filename === action.filename) {
35
- return { ...u, assetId: action.assetId };
36
- }
37
-
38
- return u;
39
- });
40
-
41
- return {
42
- ...state,
43
- uploads: updateUploads
44
- };
45
75
  case assetUploadsActions.REMOVE_UPLOAD:
46
76
  return {
47
77
  ...state,
@@ -123,7 +123,7 @@ export interface IImposiumAPI {
123
123
  getPlayerMetrics(storyId: string, start: number, end: number, alias: string);
124
124
  getSystemMetrics(storyId: string, start: number, end: number, step: number, alias: string);
125
125
  getOrganizations(page: number, itemsPerPage: number): Promise<any[]>;
126
- addOrganization(orgName: string, enableCloudfront: boolean, defaultStory?: string);
126
+ addOrganization(orgName: string);
127
127
  cancelExperiencePolling();
128
128
  createCompositionAsset(
129
129
  storyId: string,
@@ -1430,17 +1430,12 @@ export default class API {
1430
1430
  });
1431
1431
  };
1432
1432
 
1433
- public addOrganization = (
1434
- orgName: string,
1435
- enableCloudfront: boolean,
1436
- defaultStory?: string
1437
- ): Promise<any> => {
1433
+ public addOrganization = (orgName: string, defaultStory?: string): Promise<any> => {
1438
1434
  return this.doRequest({
1439
1435
  url: '/account',
1440
1436
  method: 'POST',
1441
1437
  data: {
1442
1438
  name: orgName,
1443
- enable_cloudfront: enableCloudfront,
1444
1439
  initial_story: defaultStory
1445
1440
  }
1446
1441
  });
@@ -12,6 +12,7 @@ export interface IIdentity {
12
12
  export default class AuthService {
13
13
  private static readonly IMPOSIUM_APP_DEFAULTS: any = {
14
14
  scope: 'openid',
15
+ audience: 'https://api.4cinsights.io/',
15
16
  responseType: 'token id_token',
16
17
  redirectUri: `${window.location.origin}/auth`
17
18
  };
@@ -6,23 +6,19 @@ export interface IHubSession {
6
6
  sub: string;
7
7
  organization_id: string;
8
8
  story_id: string;
9
- stories_hash: number;
10
- orgs_hash: number;
11
9
  }
12
10
 
13
11
  export default class SessionService {
14
- private static readonly LAST_STORY_ID_CACHE: string = 'imp_hub_last_story_id';
12
+ private static readonly LOGIN_STORY_ID_CACHE: string = 'imp_hub_last_story_id';
15
13
 
16
- private static readonly LAST_ORG_ID_CACHE: string = 'imp_hub_last_org_id';
14
+ private static readonly LOGIN_ORG_ID_CACHE: string = 'imp_hub_last_org_id';
17
15
 
18
16
  private static readonly SESSION_COOKIE_NAME: string = 'auth_state';
19
17
 
20
18
  private static readonly FRESH_COOKIE: IHubSession = {
21
19
  sub: '',
22
20
  organization_id: '',
23
- story_id: '',
24
- stories_hash: 0,
25
- orgs_hash: 0
21
+ story_id: ''
26
22
  };
27
23
 
28
24
  /*
@@ -65,75 +61,27 @@ export default class SessionService {
65
61
  Cookies.remove(SessionService.SESSION_COOKIE_NAME, { domain });
66
62
  };
67
63
 
68
- public static buildFreshSession = (freshIdentity: IIdentity, freshAccess: any): void => {
64
+ public static buildFreshSession = (
65
+ freshIdentity: IIdentity,
66
+ orgId: string = null,
67
+ storyId: string = null
68
+ ): void => {
69
69
  const {
70
70
  idTokenPayload: { sub, exp }
71
71
  } = freshIdentity;
72
- const { organizations } = freshAccess;
73
-
74
- let cachedOrganizationId: string;
75
- let cachedStoryId: string;
76
- let organizationId: string = '';
77
- let activeStoryId: string = '';
78
- let activeOrg: any;
79
-
80
- try {
81
- cachedOrganizationId = localStorage.getItem(SessionService.LAST_ORG_ID_CACHE);
82
- cachedStoryId = localStorage.getItem(SessionService.LAST_STORY_ID_CACHE);
83
- } catch (e) {
84
- console.warn('Failed to look up cached hub settings', e);
85
- }
86
-
87
- // Check if org exists in access data fetched from imposium
88
- if (cachedOrganizationId) {
89
- activeOrg = freshAccess.organizations.find((o: any) => o.id === cachedOrganizationId);
90
-
91
- if (typeof activeOrg === 'object' && activeOrg.hasOwnProperty('id')) {
92
- organizationId = cachedOrganizationId;
93
- }
94
- }
95
72
 
96
- // If the cached org id matched up with an org record, check to see if the cached story id also
97
- // matches an existing story
98
- if (
99
- cachedStoryId &&
100
- organizationId &&
101
- activeOrg.stories &&
102
- activeOrg.stories.find((s: any) => s.id === cachedStoryId)
103
- ) {
104
- activeStoryId = cachedStoryId;
105
- }
73
+ const freshSession: any = {
74
+ sub
75
+ };
106
76
 
107
- // If the cached org id was missing / not belonging to the current org, use the first org id if possible
108
- if (
109
- !organizationId &&
110
- organizations.length > 0 &&
111
- typeof organizations[0] === 'object' &&
112
- organizations[0].hasOwnProperty('id')
113
- ) {
114
- organizationId = organizations[0].id;
77
+ if (orgId) {
78
+ freshSession.organization_id = orgId;
115
79
  }
116
80
 
117
- // Same for story id if the cache was missing / belonging to a different org
118
- if (
119
- !activeStoryId &&
120
- organizations &&
121
- organizations[0] &&
122
- organizations[0].stories.length > 0 &&
123
- typeof organizations[0].stories[0] === 'object' &&
124
- organizations[0].stories[0].hasOwnProperty('id')
125
- ) {
126
- activeStoryId = organizations[0].stories[0].id;
81
+ if (storyId) {
82
+ freshSession.story_id = storyId;
127
83
  }
128
84
 
129
- const freshSession: IHubSession = {
130
- sub,
131
- organization_id: organizationId,
132
- story_id: activeStoryId,
133
- stories_hash: SessionService.generateStoriesHash(freshAccess),
134
- orgs_hash: SessionService.generateOrgsHash(freshAccess)
135
- };
136
-
137
85
  SessionService.storeSession(freshSession, exp);
138
86
  };
139
87
 
@@ -145,69 +93,35 @@ export default class SessionService {
145
93
  Cookies.set(SessionService.SESSION_COOKIE_NAME, cookieData, { domain, expires: expiry });
146
94
  };
147
95
 
148
- public static updateSession = (values: any, auth0Expiry: number): void => {
149
- const prevCookieData: IHubSession = SessionService.getSession();
150
- const nextCookieData: IHubSession = { ...prevCookieData, ...values };
151
-
152
- if (values.hasOwnProperty('organization_id')) {
153
- try {
154
- localStorage.setItem(SessionService.LAST_ORG_ID_CACHE, values.organization_id);
155
- } catch (e) {
156
- console.warn('Failed to cache last organization id selected', e);
157
- }
158
- }
159
-
160
- if (values.hasOwnProperty('story_id')) {
161
- try {
162
- localStorage.setItem(SessionService.LAST_STORY_ID_CACHE, values.story_id);
163
- } catch (e) {
164
- console.warn('Failed to cache last story id selected', e);
165
- }
166
- }
167
-
168
- SessionService.storeSession(nextCookieData, auth0Expiry);
96
+ public static cacheOrgId = (organizationId: string): void => {
97
+ localStorage.setItem(SessionService.LOGIN_ORG_ID_CACHE, organizationId);
169
98
  };
170
99
 
171
- /*
172
- Hash org ids on an account so distributed apps can detected if this state changed (i.e new org got added)
173
- */
174
- public static generateOrgsHash = (accessData: any): number => {
175
- const allOrgIdsStringified: string = accessData.organizations.map((o) => o.id).join('');
100
+ public static clearCachedOrgId = () => {
101
+ localStorage.removeItem(SessionService.LOGIN_ORG_ID_CACHE);
102
+ };
176
103
 
177
- return SessionService.string2Hash(allOrgIdsStringified);
104
+ public static getCachedOrgId = (): string => {
105
+ return localStorage.getItem(SessionService.LOGIN_ORG_ID_CACHE);
178
106
  };
179
107
 
180
- /*
181
- Hash a combination of story ids & names on an account so distributed apps can detect if this state changed
182
- */
183
- public static generateStoriesHash = (accessData: any): number => {
184
- const allStories: any[] = accessData.organizations.reduce(
185
- (p, c) => [...p, ...c.stories],
186
- []
187
- );
188
- const allStoriesStringified: string = allStories
189
- .map((story) => `${story.id}${story.name}`)
190
- .join('');
191
-
192
- return SessionService.string2Hash(allStoriesStringified);
108
+ public static cacheStoryId = (storyId: string): void => {
109
+ localStorage.setItem(SessionService.LOGIN_STORY_ID_CACHE, storyId);
193
110
  };
194
111
 
195
- /*
196
- Generate hash from string
197
- */
198
- private static string2Hash = (s: string): number => {
199
- let hash: number = 0;
112
+ public static clearCachedStoryId = (): void => {
113
+ localStorage.removeItem(SessionService.LOGIN_STORY_ID_CACHE);
114
+ };
200
115
 
201
- if (s.length === 0) {
202
- return hash;
203
- }
116
+ public static getCachedStoryId = (): string => {
117
+ return localStorage.getItem(SessionService.LOGIN_STORY_ID_CACHE);
118
+ };
204
119
 
205
- for (let i = 0; i < s.length; i++) {
206
- hash = (hash << 5) - hash + s.charCodeAt(i);
207
- hash |= 0;
208
- }
120
+ public static updateSession = (values: any, auth0Expiry: number): void => {
121
+ const prevCookieData: IHubSession = SessionService.getSession();
122
+ const nextCookieData: IHubSession = { ...prevCookieData, ...values };
209
123
 
210
- return hash;
124
+ SessionService.storeSession(nextCookieData, auth0Expiry);
211
125
  };
212
126
 
213
127
  /*
@@ -1,11 +1,12 @@
1
1
  import { HEADER_HEIGHT, PREVIEW_MAX_HEIGHT, PREVIEW_MAX_WIDTH } from '../constants/assets';
2
+ import { CSSProperties } from 'react';
2
3
 
3
4
  export const getMediaPreviewStyle = (
4
5
  mediaWidth: number,
5
6
  mediaHeight: number,
6
7
  element: any,
7
8
  offsetY: number = 0
8
- ): React.CSSProperties => {
9
+ ): CSSProperties => {
9
10
  if (!element) {
10
11
  return;
11
12
  }
@@ -1,12 +0,0 @@
1
- import React from 'react';
2
- interface ICopyPropIdButtonProps {
3
- copyPropId: string;
4
- onNotification?(e: any): void;
5
- onError?(e: any): void;
6
- }
7
- declare class CopyPropIdButton extends React.PureComponent<ICopyPropIdButtonProps, undefined> {
8
- private clickHandler;
9
- private copyPropId;
10
- render(): React.JSX.Element;
11
- }
12
- export default CopyPropIdButton;
@@ -1,75 +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 __read = (this && this.__read) || function (o, n) {
18
- var m = typeof Symbol === "function" && o[Symbol.iterator];
19
- if (!m) return o;
20
- var i = m.call(o), r, ar = [], e;
21
- try {
22
- while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
23
- }
24
- catch (error) { e = { error: error }; }
25
- finally {
26
- try {
27
- if (r && !r.done && (m = i["return"])) m.call(i);
28
- }
29
- finally { if (e) throw e.error; }
30
- }
31
- return ar;
32
- };
33
- var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
34
- if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
35
- if (ar || !(i in from)) {
36
- if (!ar) ar = Array.prototype.slice.call(from, 0, i);
37
- ar[i] = from[i];
38
- }
39
- }
40
- return to.concat(ar || Array.prototype.slice.call(from));
41
- };
42
- var __importDefault = (this && this.__importDefault) || function (mod) {
43
- return (mod && mod.__esModule) ? mod : { "default": mod };
44
- };
45
- Object.defineProperty(exports, "__esModule", { value: true });
46
- var react_1 = __importDefault(require("react"));
47
- var icons_1 = require("../../constants/icons");
48
- var Button_1 = __importDefault(require("../button/Button"));
49
- var copy_1 = require("../../constants/copy");
50
- var CopyPropIdButton = /** @class */ (function (_super) {
51
- __extends(CopyPropIdButton, _super);
52
- function CopyPropIdButton() {
53
- var _this = _super.apply(this, __spreadArray([], __read(arguments), false)) || this;
54
- _this.clickHandler = function () { return _this.copyPropId(); };
55
- return _this;
56
- }
57
- CopyPropIdButton.prototype.copyPropId = function () {
58
- var _a = this.props, onNotification = _a.onNotification, onError = _a.onError, copyPropId = _a.copyPropId;
59
- navigator.clipboard.writeText(copyPropId).then(function () {
60
- if (onNotification) {
61
- onNotification("Property ID copied to clipboard.");
62
- }
63
- }, function () {
64
- if (onError) {
65
- onError('Error copying property ID to clipboard.');
66
- }
67
- });
68
- };
69
- CopyPropIdButton.prototype.render = function () {
70
- return (react_1.default.createElement(Button_1.default, { tooltip: copy_1.compositions.tooltipPropId, onClick: this.clickHandler, size: 'small', style: 'subtle' }, icons_1.ICON_CLIPBOARD));
71
- };
72
- return CopyPropIdButton;
73
- }(react_1.default.PureComponent));
74
- exports.default = CopyPropIdButton;
75
- //# sourceMappingURL=CopyPropIdButton.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CopyPropIdButton.js","sourceRoot":"","sources":["../../../../src/components/copy-prop-id-button/CopyPropIdButton.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gDAA0B;AAC1B,+CAAuD;AACvD,4DAAsC;AACtC,6CAA4D;AAQ5D;IAA+B,oCAAsD;IAArF;;QACY,kBAAY,GAAG,cAAM,OAAA,KAAI,CAAC,UAAU,EAAE,EAAjB,CAAiB,CAAC;;IA6BnD,CAAC;IA3BW,qCAAU,GAAlB;QACU,IAAA,KAA0C,IAAI,CAAC,KAAK,EAAlD,cAAc,oBAAA,EAAE,OAAO,aAAA,EAAE,UAAU,gBAAe,CAAC;QAC3D,SAAS,CAAC,SAAS,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,IAAI,CAC1C;YACI,IAAI,cAAc,EAAE,CAAC;gBACjB,cAAc,CAAC,kCAAkC,CAAC,CAAC;YACvD,CAAC;QACL,CAAC,EACD;YACI,IAAI,OAAO,EAAE,CAAC;gBACV,OAAO,CAAC,yCAAyC,CAAC,CAAC;YACvD,CAAC;QACL,CAAC,CACJ,CAAC;IACN,CAAC;IAEM,iCAAM,GAAb;QACI,OAAO,CACH,8BAAC,gBAAM,IACH,OAAO,EAAE,mBAAI,CAAC,aAAa,EAC3B,OAAO,EAAE,IAAI,CAAC,YAAY,EAC1B,IAAI,EAAC,OAAO,EACZ,KAAK,EAAC,QAAQ,IACb,sBAAc,CACV,CACZ,CAAC;IACN,CAAC;IACL,uBAAC;AAAD,CAAC,AA9BD,CAA+B,eAAK,CAAC,aAAa,GA8BjD;AAED,kBAAe,gBAAgB,CAAC"}
@@ -1,12 +0,0 @@
1
- import React from 'react';
2
- interface ICopyPropIdButtonProps {
3
- copyPropId: string;
4
- onNotification?(e: any): void;
5
- onError?(e: any): void;
6
- }
7
- declare class CopyPropIdButton extends React.PureComponent<ICopyPropIdButtonProps, undefined> {
8
- private clickHandler;
9
- private copyPropId;
10
- render(): React.JSX.Element;
11
- }
12
- export default CopyPropIdButton;
@@ -1,24 +0,0 @@
1
- import React from 'react';
2
- import { ICON_CLIPBOARD } from '../../constants/icons';
3
- import Button from '../button/Button';
4
- import { compositions as copy } from '../../constants/copy';
5
- class CopyPropIdButton extends React.PureComponent {
6
- clickHandler = () => this.copyPropId();
7
- copyPropId() {
8
- const { onNotification, onError, copyPropId } = this.props;
9
- navigator.clipboard.writeText(copyPropId).then(() => {
10
- if (onNotification) {
11
- onNotification(`Property ID copied to clipboard.`);
12
- }
13
- }, () => {
14
- if (onError) {
15
- onError('Error copying property ID to clipboard.');
16
- }
17
- });
18
- }
19
- render() {
20
- return (React.createElement(Button, { tooltip: copy.tooltipPropId, onClick: this.clickHandler, size: 'small', style: 'subtle' }, ICON_CLIPBOARD));
21
- }
22
- }
23
- export default CopyPropIdButton;
24
- //# sourceMappingURL=CopyPropIdButton.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CopyPropIdButton.js","sourceRoot":"","sources":["../../../../src/components/copy-prop-id-button/CopyPropIdButton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,MAAM,MAAM,kBAAkB,CAAC;AACtC,OAAO,EAAE,YAAY,IAAI,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAQ5D,MAAM,gBAAiB,SAAQ,KAAK,CAAC,aAAgD;IACzE,YAAY,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;IAEvC,UAAU;QACd,MAAM,EAAE,cAAc,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;QAC3D,SAAS,CAAC,SAAS,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,IAAI,CAC1C,GAAG,EAAE;YACD,IAAI,cAAc,EAAE,CAAC;gBACjB,cAAc,CAAC,kCAAkC,CAAC,CAAC;YACvD,CAAC;QACL,CAAC,EACD,GAAG,EAAE;YACD,IAAI,OAAO,EAAE,CAAC;gBACV,OAAO,CAAC,yCAAyC,CAAC,CAAC;YACvD,CAAC;QACL,CAAC,CACJ,CAAC;IACN,CAAC;IAEM,MAAM;QACT,OAAO,CACH,oBAAC,MAAM,IACH,OAAO,EAAE,IAAI,CAAC,aAAa,EAC3B,OAAO,EAAE,IAAI,CAAC,YAAY,EAC1B,IAAI,EAAC,OAAO,EACZ,KAAK,EAAC,QAAQ,IACb,cAAc,CACV,CACZ,CAAC;IACN,CAAC;CACJ;AAED,eAAe,gBAAgB,CAAC"}
@@ -1,15 +0,0 @@
1
- import * as React from 'react';
2
- import { ICON_GLOBE } from '../../constants/icons';
3
-
4
- interface IAssetsTableGlobalCell {
5
- cell: any; // React table cell wrapper
6
- }
7
-
8
- const AssetsTableGlobalCell: React.FC<IAssetsTableGlobalCell> = (p: IAssetsTableGlobalCell) => {
9
- return (
10
- <div className='asset-global-cell'>{p.cell.row.original.story_id ? null : ICON_GLOBE}</div>
11
- );
12
- };
13
-
14
- const AssetsTableGlobalCellMemoized = React.memo(AssetsTableGlobalCell);
15
- export default AssetsTableGlobalCellMemoized;
@@ -1,44 +0,0 @@
1
- import React from 'react';
2
- import { ICON_CLIPBOARD } from '../../constants/icons';
3
- import Button from '../button/Button';
4
- import { compositions as copy } from '../../constants/copy';
5
-
6
- interface ICopyPropIdButtonProps {
7
- copyPropId: string;
8
- onNotification?(e): void;
9
- onError?(e): void;
10
- }
11
-
12
- class CopyPropIdButton extends React.PureComponent<ICopyPropIdButtonProps, undefined> {
13
- private clickHandler = () => this.copyPropId();
14
-
15
- private copyPropId() {
16
- const { onNotification, onError, copyPropId } = this.props;
17
- navigator.clipboard.writeText(copyPropId).then(
18
- () => {
19
- if (onNotification) {
20
- onNotification(`Property ID copied to clipboard.`);
21
- }
22
- },
23
- () => {
24
- if (onError) {
25
- onError('Error copying property ID to clipboard.');
26
- }
27
- }
28
- );
29
- }
30
-
31
- public render() {
32
- return (
33
- <Button
34
- tooltip={copy.tooltipPropId}
35
- onClick={this.clickHandler}
36
- size='small'
37
- style='subtle'>
38
- {ICON_CLIPBOARD}
39
- </Button>
40
- );
41
- }
42
- }
43
-
44
- export default CopyPropIdButton;