@imposium-hub/components 2.9.0-11 → 2.9.0-13

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 (153) hide show
  1. package/dist/cjs/Util.js +6 -0
  2. package/dist/cjs/Util.js.map +1 -1
  3. package/dist/cjs/components/app-wrapper/AppWrapper.js +1 -5
  4. package/dist/cjs/components/app-wrapper/AppWrapper.js.map +1 -1
  5. package/dist/cjs/components/assets/AssetsTablePreviewCell.d.ts +1 -0
  6. package/dist/cjs/components/assets/AssetsTablePreviewCell.js +7 -4
  7. package/dist/cjs/components/assets/AssetsTablePreviewCell.js.map +1 -1
  8. package/dist/cjs/components/header/Header.js +1 -0
  9. package/dist/cjs/components/header/Header.js.map +1 -1
  10. package/dist/cjs/index.d.ts +2 -3
  11. package/dist/cjs/index.js +3 -6
  12. package/dist/cjs/index.js.map +1 -1
  13. package/dist/cjs/redux/actions/publish.js +1 -1
  14. package/dist/cjs/redux/actions/publish.js.map +1 -1
  15. package/dist/cjs/services/API.d.ts +2 -2
  16. package/dist/cjs/services/API.js +7 -4
  17. package/dist/cjs/services/API.js.map +1 -1
  18. package/dist/cjs/utils/modal.d.ts +0 -3
  19. package/dist/cjs/utils/modal.js +1 -9
  20. package/dist/cjs/utils/modal.js.map +1 -1
  21. package/dist/esm/Util.js +6 -0
  22. package/dist/esm/Util.js.map +1 -1
  23. package/dist/esm/components/app-wrapper/AppWrapper.js +1 -5
  24. package/dist/esm/components/app-wrapper/AppWrapper.js.map +1 -1
  25. package/dist/esm/components/assets/AssetsTablePreviewCell.d.ts +1 -0
  26. package/dist/esm/components/assets/AssetsTablePreviewCell.js +8 -5
  27. package/dist/esm/components/assets/AssetsTablePreviewCell.js.map +1 -1
  28. package/dist/esm/components/header/Header.js +1 -0
  29. package/dist/esm/components/header/Header.js.map +1 -1
  30. package/dist/esm/index.d.ts +2 -3
  31. package/dist/esm/index.js +2 -3
  32. package/dist/esm/index.js.map +1 -1
  33. package/dist/esm/redux/actions/publish.js +1 -1
  34. package/dist/esm/redux/actions/publish.js.map +1 -1
  35. package/dist/esm/services/API.d.ts +2 -2
  36. package/dist/esm/services/API.js +7 -4
  37. package/dist/esm/services/API.js.map +1 -1
  38. package/dist/esm/utils/modal.d.ts +0 -3
  39. package/dist/esm/utils/modal.js +0 -7
  40. package/dist/esm/utils/modal.js.map +1 -1
  41. package/package.json +1 -1
  42. package/src/Util.ts +9 -0
  43. package/src/components/app-wrapper/AppWrapper.tsx +0 -4
  44. package/src/components/assets/AssetsTablePreviewCell.tsx +10 -14
  45. package/src/components/header/Header.tsx +1 -0
  46. package/src/index.ts +1 -5
  47. package/src/redux/actions/publish.ts +1 -1
  48. package/src/services/API.ts +11 -6
  49. package/src/utils/modal.ts +0 -10
  50. package/dist/cjs/components/app-wrapper/AppWrapperV2.d.ts +0 -26
  51. package/dist/cjs/components/app-wrapper/AppWrapperV2.js +0 -266
  52. package/dist/cjs/components/app-wrapper/AppWrapperV2.js.map +0 -1
  53. package/dist/cjs/components/app-wrapper/AppWrapperV3.d.ts +0 -19
  54. package/dist/cjs/components/app-wrapper/AppWrapperV3.js +0 -195
  55. package/dist/cjs/components/app-wrapper/AppWrapperV3.js.map +0 -1
  56. package/dist/cjs/components/app-wrapper/AppWrapper_BACKUP_73190.d.ts +0 -27
  57. package/dist/cjs/components/app-wrapper/AppWrapper_BACKUP_73190.js +0 -243
  58. package/dist/cjs/components/app-wrapper/AppWrapper_BACKUP_73190.js.map +0 -1
  59. package/dist/cjs/components/app-wrapper/AppWrapper_BASE_73190.d.ts +0 -28
  60. package/dist/cjs/components/app-wrapper/AppWrapper_BASE_73190.js +0 -255
  61. package/dist/cjs/components/app-wrapper/AppWrapper_BASE_73190.js.map +0 -1
  62. package/dist/cjs/components/app-wrapper/AppWrapper_LOCAL_73190.d.ts +0 -27
  63. package/dist/cjs/components/app-wrapper/AppWrapper_LOCAL_73190.js +0 -243
  64. package/dist/cjs/components/app-wrapper/AppWrapper_LOCAL_73190.js.map +0 -1
  65. package/dist/cjs/components/app-wrapper/AppWrapper_REMOTE_73190.d.ts +0 -28
  66. package/dist/cjs/components/app-wrapper/AppWrapper_REMOTE_73190.js +0 -251
  67. package/dist/cjs/components/app-wrapper/AppWrapper_REMOTE_73190.js.map +0 -1
  68. package/dist/cjs/components/auth-gate/AuthGate.d.ts +0 -2
  69. package/dist/cjs/components/auth-gate/AuthGate.js +0 -105
  70. package/dist/cjs/components/auth-gate/AuthGate.js.map +0 -1
  71. package/dist/cjs/components/error-message-preview/ErrorMessagePreview.d.ts +0 -15
  72. package/dist/cjs/components/error-message-preview/ErrorMessagePreview.js +0 -91
  73. package/dist/cjs/components/error-message-preview/ErrorMessagePreview.js.map +0 -1
  74. package/dist/cjs/components/header/Header_BACKUP_73021.d.ts +0 -33
  75. package/dist/cjs/components/header/Header_BACKUP_73021.js +0 -393
  76. package/dist/cjs/components/header/Header_BACKUP_73021.js.map +0 -1
  77. package/dist/cjs/components/header/Header_BASE_73021.d.ts +0 -29
  78. package/dist/cjs/components/header/Header_BASE_73021.js +0 -376
  79. package/dist/cjs/components/header/Header_BASE_73021.js.map +0 -1
  80. package/dist/cjs/components/header/Header_LOCAL_73021.d.ts +0 -33
  81. package/dist/cjs/components/header/Header_LOCAL_73021.js +0 -382
  82. package/dist/cjs/components/header/Header_LOCAL_73021.js.map +0 -1
  83. package/dist/cjs/components/header/Header_REMOTE_73021.d.ts +0 -30
  84. package/dist/cjs/components/header/Header_REMOTE_73021.js +0 -386
  85. package/dist/cjs/components/header/Header_REMOTE_73021.js.map +0 -1
  86. package/dist/cjs/components/header/StoryDropdown.d.ts +0 -6
  87. package/dist/cjs/components/header/StoryDropdown.js +0 -111
  88. package/dist/cjs/components/header/StoryDropdown.js.map +0 -1
  89. package/dist/cjs/redux/actions/auth.d.ts +0 -9
  90. package/dist/cjs/redux/actions/auth.js +0 -30
  91. package/dist/cjs/redux/actions/auth.js.map +0 -1
  92. package/dist/cjs/redux/reducers/auth.d.ts +0 -3
  93. package/dist/cjs/redux/reducers/auth.js +0 -67
  94. package/dist/cjs/redux/reducers/auth.js.map +0 -1
  95. package/dist/cjs/services/Auth0.d.ts +0 -18
  96. package/dist/cjs/services/Auth0.js +0 -102
  97. package/dist/cjs/services/Auth0.js.map +0 -1
  98. package/dist/cjs/services/Session.d.ts +0 -26
  99. package/dist/cjs/services/Session.js +0 -155
  100. package/dist/cjs/services/Session.js.map +0 -1
  101. package/dist/esm/components/app-wrapper/AppWrapperV2.d.ts +0 -26
  102. package/dist/esm/components/app-wrapper/AppWrapperV2.js +0 -142
  103. package/dist/esm/components/app-wrapper/AppWrapperV2.js.map +0 -1
  104. package/dist/esm/components/app-wrapper/AppWrapperV3.d.ts +0 -19
  105. package/dist/esm/components/app-wrapper/AppWrapperV3.js +0 -88
  106. package/dist/esm/components/app-wrapper/AppWrapperV3.js.map +0 -1
  107. package/dist/esm/components/app-wrapper/AppWrapper_BACKUP_73190.d.ts +0 -27
  108. package/dist/esm/components/app-wrapper/AppWrapper_BACKUP_73190.js +0 -194
  109. package/dist/esm/components/app-wrapper/AppWrapper_BACKUP_73190.js.map +0 -1
  110. package/dist/esm/components/app-wrapper/AppWrapper_BASE_73190.d.ts +0 -28
  111. package/dist/esm/components/app-wrapper/AppWrapper_BASE_73190.js +0 -208
  112. package/dist/esm/components/app-wrapper/AppWrapper_BASE_73190.js.map +0 -1
  113. package/dist/esm/components/app-wrapper/AppWrapper_LOCAL_73190.d.ts +0 -27
  114. package/dist/esm/components/app-wrapper/AppWrapper_LOCAL_73190.js +0 -194
  115. package/dist/esm/components/app-wrapper/AppWrapper_LOCAL_73190.js.map +0 -1
  116. package/dist/esm/components/app-wrapper/AppWrapper_REMOTE_73190.d.ts +0 -28
  117. package/dist/esm/components/app-wrapper/AppWrapper_REMOTE_73190.js +0 -204
  118. package/dist/esm/components/app-wrapper/AppWrapper_REMOTE_73190.js.map +0 -1
  119. package/dist/esm/components/auth-gate/AuthGate.d.ts +0 -2
  120. package/dist/esm/components/auth-gate/AuthGate.js +0 -59
  121. package/dist/esm/components/auth-gate/AuthGate.js.map +0 -1
  122. package/dist/esm/components/error-message-preview/ErrorMessagePreview.d.ts +0 -15
  123. package/dist/esm/components/error-message-preview/ErrorMessagePreview.js +0 -35
  124. package/dist/esm/components/error-message-preview/ErrorMessagePreview.js.map +0 -1
  125. package/dist/esm/components/header/Header_BACKUP_73021.d.ts +0 -33
  126. package/dist/esm/components/header/Header_BACKUP_73021.js +0 -336
  127. package/dist/esm/components/header/Header_BACKUP_73021.js.map +0 -1
  128. package/dist/esm/components/header/Header_BASE_73021.d.ts +0 -29
  129. package/dist/esm/components/header/Header_BASE_73021.js +0 -322
  130. package/dist/esm/components/header/Header_BASE_73021.js.map +0 -1
  131. package/dist/esm/components/header/Header_LOCAL_73021.d.ts +0 -33
  132. package/dist/esm/components/header/Header_LOCAL_73021.js +0 -328
  133. package/dist/esm/components/header/Header_LOCAL_73021.js.map +0 -1
  134. package/dist/esm/components/header/Header_REMOTE_73021.d.ts +0 -30
  135. package/dist/esm/components/header/Header_REMOTE_73021.js +0 -329
  136. package/dist/esm/components/header/Header_REMOTE_73021.js.map +0 -1
  137. package/dist/esm/components/header/StoryDropdown.d.ts +0 -6
  138. package/dist/esm/components/header/StoryDropdown.js +0 -82
  139. package/dist/esm/components/header/StoryDropdown.js.map +0 -1
  140. package/dist/esm/redux/actions/auth.d.ts +0 -9
  141. package/dist/esm/redux/actions/auth.js +0 -25
  142. package/dist/esm/redux/actions/auth.js.map +0 -1
  143. package/dist/esm/redux/reducers/auth.d.ts +0 -3
  144. package/dist/esm/redux/reducers/auth.js +0 -27
  145. package/dist/esm/redux/reducers/auth.js.map +0 -1
  146. package/dist/esm/services/Auth0.d.ts +0 -18
  147. package/dist/esm/services/Auth0.js +0 -68
  148. package/dist/esm/services/Auth0.js.map +0 -1
  149. package/dist/esm/services/Session.d.ts +0 -26
  150. package/dist/esm/services/Session.js +0 -107
  151. package/dist/esm/services/Session.js.map +0 -1
  152. package/src/components/edit-guide-modal/EditGuideModal.tsx +0 -110
  153. package/src/components/replace-files-modal/ReplaceFilesModal.tsx +0 -217
@@ -1,26 +0,0 @@
1
- import { IIdentity } from './Auth0';
2
- export interface IHubSession {
3
- sub: string;
4
- organization_id: string;
5
- story_id: string;
6
- }
7
- export default class SessionService {
8
- private static readonly LOGIN_STORY_ID_CACHE;
9
- private static readonly LOGIN_ORG_ID_CACHE;
10
- private static readonly SESSION_COOKIE_NAME;
11
- private static readonly FRESH_COOKIE;
12
- static getAccessData: (idToken: string, baseUrl?: string, getTotalRenders?: boolean, accountId?: string) => Promise<any[]>;
13
- static getSession: () => IHubSession;
14
- static removeSession: () => void;
15
- static buildFreshSession: (freshIdentity: IIdentity, orgId?: string, storyId?: string) => void;
16
- static storeSession: (values: any, auth0Expiry: number) => void;
17
- static cacheOrgId: (organizationId: string) => void;
18
- static clearCachedOrgId: () => void;
19
- static getCachedOrgId: () => string;
20
- static cacheStoryId: (storyId: string) => void;
21
- static clearCachedStoryId: () => void;
22
- static getCachedStoryId: () => string;
23
- static updateSession: (values: any, auth0Expiry: number) => void;
24
- private static scrapeDomain;
25
- private static determineAccessUrl;
26
- }
@@ -1,107 +0,0 @@
1
- import * as Cookies from 'js-cookie';
2
- import axios from 'axios';
3
- export default class SessionService {
4
- static LOGIN_STORY_ID_CACHE = 'imp_hub_last_story_id';
5
- static LOGIN_ORG_ID_CACHE = 'imp_hub_last_org_id';
6
- static SESSION_COOKIE_NAME = 'auth_state';
7
- static FRESH_COOKIE = {
8
- sub: '',
9
- organization_id: '',
10
- story_id: ''
11
- };
12
- /*
13
- Get list of accessible services with themes from Imposium API
14
- */
15
- static getAccessData = (idToken, baseUrl, getTotalRenders = false, accountId) => {
16
- return new Promise((resolve, reject) => {
17
- let accessUrl = baseUrl ? `${baseUrl}/access` : SessionService.determineAccessUrl();
18
- const headers = { Authorization: `Bearer ${idToken}` };
19
- if (getTotalRenders) {
20
- accessUrl += '?include_total_renders=true';
21
- }
22
- if (accountId && accountId !== 'undefined') {
23
- headers['X-Imposium-Account-Id'] = accountId;
24
- }
25
- axios
26
- .get(accessUrl, { headers })
27
- .then((res) => {
28
- resolve(res.data ? res.data : []);
29
- })
30
- .catch((e) => {
31
- reject(e);
32
- });
33
- });
34
- };
35
- static getSession = () => Cookies.getJSON(SessionService.SESSION_COOKIE_NAME);
36
- static removeSession = () => {
37
- const domain = SessionService.scrapeDomain();
38
- Cookies.remove(SessionService.SESSION_COOKIE_NAME, { domain });
39
- SessionService.clearCachedOrgId();
40
- SessionService.clearCachedStoryId();
41
- };
42
- static buildFreshSession = (freshIdentity, orgId = null, storyId = null) => {
43
- const { idTokenPayload: { sub, exp } } = freshIdentity;
44
- const freshSession = {
45
- sub
46
- };
47
- if (orgId) {
48
- freshSession.organization_id = orgId;
49
- }
50
- if (storyId) {
51
- freshSession.story_id = storyId;
52
- }
53
- SessionService.storeSession(freshSession, exp);
54
- };
55
- static storeSession = (values, auth0Expiry) => {
56
- const cookieData = { ...SessionService.FRESH_COOKIE, ...values };
57
- const domain = SessionService.scrapeDomain();
58
- const expiry = new Date(auth0Expiry * 1000);
59
- Cookies.set(SessionService.SESSION_COOKIE_NAME, cookieData, { domain, expires: expiry });
60
- };
61
- static cacheOrgId = (organizationId) => {
62
- localStorage.setItem(SessionService.LOGIN_ORG_ID_CACHE, organizationId);
63
- };
64
- static clearCachedOrgId = () => {
65
- localStorage.removeItem(SessionService.LOGIN_ORG_ID_CACHE);
66
- };
67
- static getCachedOrgId = () => {
68
- return localStorage.getItem(SessionService.LOGIN_ORG_ID_CACHE);
69
- };
70
- static cacheStoryId = (storyId) => {
71
- localStorage.setItem(SessionService.LOGIN_STORY_ID_CACHE, storyId);
72
- };
73
- static clearCachedStoryId = () => {
74
- localStorage.removeItem(SessionService.LOGIN_STORY_ID_CACHE);
75
- };
76
- static getCachedStoryId = () => {
77
- return localStorage.getItem(SessionService.LOGIN_STORY_ID_CACHE);
78
- };
79
- static updateSession = (values, auth0Expiry) => {
80
- const prevCookieData = SessionService.getSession();
81
- const nextCookieData = { ...prevCookieData, ...values };
82
- SessionService.storeSession(nextCookieData, auth0Expiry);
83
- };
84
- /*
85
- Determine which domain to assign cookie to
86
- */
87
- static scrapeDomain = () => {
88
- const domainParts = window.location.host.split('.').reverse();
89
- return domainParts.length > 2 ? `.${domainParts[1]}.${domainParts[0].split(':')[0]}` : null;
90
- };
91
- /*
92
- Figure out which access endpoint to hit based on env
93
- */
94
- static determineAccessUrl = () => {
95
- const { location: { hostname, host } } = window;
96
- if (hostname === 'localhost') {
97
- return 'https://api/access';
98
- }
99
- else if (host.includes('.staging.')) {
100
- return 'https://api.staging.imposium.com/access';
101
- }
102
- else {
103
- return 'https://api.imposium.com/access';
104
- }
105
- };
106
- }
107
- //# sourceMappingURL=Session.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Session.js","sourceRoot":"","sources":["../../../src/services/Session.ts"],"names":[],"mappings":"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"}
@@ -1,110 +0,0 @@
1
- import React, { useCallback, useEffect, useState } from 'react';
2
- import ReactDOM from 'react-dom';
3
- import Modal from '../modal/Modal';
4
- import Button from '../button/Button';
5
- import Section from '../section/Section';
6
- import NumberField from '../number-field/NumberField';
7
-
8
- export interface IEditGuideModalProps {
9
- guide: number;
10
- onClose: () => any;
11
- onContinue: (e) => any;
12
- isHorizontal: boolean;
13
- }
14
-
15
- export const EditGuideModal = () => {
16
- const [props, setProps] = useState<IEditGuideModalProps>(null);
17
- const [isOpen, setIsOpen] = useState<boolean>(false);
18
- const [guide, setGuide] = useState<number>(null);
19
-
20
- const onOpen = (event) => {
21
- setProps({
22
- ...event.detail
23
- });
24
- setIsOpen(true);
25
- };
26
-
27
- const onClose = () => setIsOpen(false);
28
-
29
- useEffect(() => {
30
- window.addEventListener('openeditguidemodal', onOpen);
31
- return () => {
32
- window.removeEventListener('openeditguidemodal', onOpen);
33
- };
34
- }, []);
35
-
36
- useEffect(() => {
37
- if (props?.guide) {
38
- setGuide(props.guide);
39
- }
40
- }, [props?.guide]);
41
-
42
- const onKeyDown = (e) => {
43
- if (e.key === 'Enter') {
44
- e.preventDefault();
45
- onContinue(guide);
46
- }
47
- };
48
-
49
- useEffect(() => {
50
- if (isOpen) {
51
- window.addEventListener('keypress', onKeyDown);
52
- } else {
53
- window.removeEventListener('keypress', onKeyDown);
54
- }
55
- return () => {
56
- window.removeEventListener('keypress', onKeyDown);
57
- };
58
- }, [isOpen, onKeyDown]);
59
-
60
- const onContinue = useCallback(
61
- (e) => {
62
- if (e) {
63
- props.onContinue(e);
64
- onClose();
65
- }
66
- },
67
- [isOpen]
68
- );
69
-
70
- const modal = isOpen && (
71
- <Modal
72
- onRequestClose={onClose}
73
- style={{
74
- width: '200px',
75
- height: '110px',
76
- top: '25%',
77
- left: '55%'
78
- }}
79
- isOpen={true}>
80
- <Section
81
- title={`Edit ${props.isHorizontal ? 'Horizontal Guide' : 'Vertical Guide'}`}
82
- style={{ padding: '10px' }}>
83
- <NumberField
84
- label={'Guide Position'}
85
- labelPosition='top'
86
- onChange={(e) => setGuide(Number(e))}
87
- focusOnMount={true}
88
- value={guide}
89
- />
90
- <Button
91
- onClick={onClose}
92
- style='bold'
93
- color='secondary'>
94
- Cancel
95
- </Button>
96
- <Button
97
- onClick={() => onContinue(guide)}
98
- style='bold'
99
- color='primary'>
100
- Ok
101
- </Button>
102
- </Section>
103
- </Modal>
104
- );
105
-
106
- const PortalContextComponent = () =>
107
- ReactDOM.createPortal(modal, document.querySelector('#react-root'));
108
-
109
- return <PortalContextComponent />;
110
- };
@@ -1,217 +0,0 @@
1
- import React, { useCallback, useEffect, useRef, useState } from 'react';
2
- import ReactDOM from 'react-dom';
3
- import Modal from '../modal/Modal';
4
- import Button from '../button/Button';
5
- import CheckboxField from '../checkbox-field/CheckboxField';
6
- import Section from '../section/Section';
7
- import { assets as copy } from '../../constants/copy';
8
- import { replaceFilesModalEvent } from '../../utils/modal';
9
-
10
- export interface IReplaceFilesModalProps {
11
- onUpload: (f) => any;
12
- onInstantUpload: (f) => any;
13
- onApplyToAll: (e) => any;
14
- onClose: () => void;
15
- applyToAll: boolean;
16
- existedAssets: any[];
17
- existedAssetIds: any[];
18
- }
19
-
20
- export const ReplaceFilesModal = () => {
21
- const [props, setProps] = useState<IReplaceFilesModalProps>(null);
22
- const [isOpen, setIsOpen] = useState<boolean>(false);
23
- const [applyToAll, setApplyToAll] = useState<boolean>();
24
- const [height, setHeight] = useState(200);
25
- const [index, setIndex] = useState<number>(0);
26
-
27
- const replaceFileModalRef = useRef(null);
28
-
29
- useEffect(() => {
30
- if (replaceFileModalRef.current) {
31
- const {
32
- current: { clientHeight }
33
- } = replaceFileModalRef;
34
- setHeight(clientHeight + 40);
35
- }
36
- });
37
-
38
- const onOpen = (event) => {
39
- setProps({
40
- ...event.detail
41
- });
42
- setIsOpen(true);
43
- };
44
-
45
- const onClose = () => {
46
- props.onClose();
47
- setIsOpen(false);
48
- };
49
-
50
- const onReplaceHandler = (curApplyToAll, curIndex, file, assetId) => {
51
- const newIndex = curIndex + 1;
52
-
53
- if (curApplyToAll && curIndex === 0) {
54
- const updatedAssets = props.existedAssets.map((asset, i) => {
55
- const updatefile = asset;
56
- updatefile['assetId'] = props.existedAssetIds[i];
57
- return updatefile;
58
- });
59
-
60
- props.onInstantUpload(updatedAssets);
61
- setIndex(0);
62
- setIsOpen(false);
63
- } else if (curApplyToAll) {
64
- const updatedAssets = [];
65
-
66
- for (let i = 0; i < props.existedAssets.length; i++) {
67
- const updateFile =
68
- curIndex === 0
69
- ? props.existedAssets[i]
70
- : [
71
- ...props.existedAssets.slice(0, curIndex - 1),
72
- ...props.existedAssets.slice(curIndex)
73
- ][i];
74
-
75
- if (updateFile) {
76
- updateFile['assetId'] =
77
- curIndex === 0
78
- ? props.existedAssetIds[i]
79
- : [
80
- ...props.existedAssetIds.slice(0, curIndex - 1),
81
- ...props.existedAssetIds.slice(curIndex)
82
- ][i];
83
- updatedAssets.push(updateFile);
84
- props.onInstantUpload(updatedAssets);
85
- setIndex(0);
86
- onClose();
87
- }
88
- }
89
- } else {
90
- if (newIndex === props.existedAssets.length) {
91
- setIndex(0);
92
- onClose();
93
- } else {
94
- setIndex(newIndex);
95
- }
96
-
97
- const updateFile = file;
98
- updateFile['assetId'] = assetId;
99
- props.onUpload([updateFile]);
100
- }
101
- };
102
-
103
- const onAsNewHandler = (curApplyToAll, curIndex, file) => {
104
- const newIndex = curIndex + 1;
105
-
106
- if (curApplyToAll) {
107
- props.onUpload(
108
- curIndex === 0 ? props.existedAssets : props.existedAssets.slice(curIndex)
109
- );
110
-
111
- setIndex(0);
112
- onClose();
113
- } else {
114
- if (newIndex === props.existedAssets.length) {
115
- setIndex(0);
116
- onClose();
117
- } else {
118
- setIndex(newIndex);
119
- }
120
-
121
- props.onUpload([file]);
122
- }
123
- };
124
-
125
- const onApplyToAllHandler = (e) => {
126
- setApplyToAll(e);
127
- props.onApplyToAll(e);
128
- };
129
-
130
- const onReplace = useCallback(
131
- (curApplyToAll, curIndex, file, assetId) =>
132
- onReplaceHandler(curApplyToAll, curIndex, file, assetId),
133
- [isOpen]
134
- );
135
-
136
- const onApplyToAll = useCallback((e) => onApplyToAllHandler(e), [isOpen]);
137
-
138
- const onAsNew = useCallback(
139
- (curApplyToAll, curIndex, file) => onAsNewHandler(curApplyToAll, curIndex, file),
140
- [isOpen]
141
- );
142
-
143
- useEffect(() => {
144
- window.addEventListener(replaceFilesModalEvent, onOpen);
145
- return () => {
146
- window.removeEventListener(replaceFilesModalEvent, onOpen);
147
- };
148
- }, []);
149
-
150
- const modal = () => {
151
- if (isOpen) {
152
- const file = props.existedAssets[index];
153
- const assetId = props.existedAssetIds[index];
154
- const name = file.name.slice(0, file.name.lastIndexOf('.'));
155
- return (
156
- <Modal
157
- onRequestClose={onClose}
158
- wrapperStyle={{
159
- left: '0px',
160
- width: '100%'
161
- }}
162
- style={{
163
- width: '400px',
164
- height: `${height}px`,
165
- top: 'calc(50% - 150px)',
166
- left: 'calc((100% - 400px) / 2)'
167
- }}
168
- isOpen={true}>
169
- <Section>
170
- <div
171
- className='replace-files-modal'
172
- ref={replaceFileModalRef}>
173
- <p>{copy.uploads.title.replace('[name]', name)}</p>
174
- <div className='replace-files-buttons'>
175
- <div className='checkbox'>
176
- <CheckboxField
177
- label={copy.uploads.applyAll}
178
- value={applyToAll}
179
- onChange={onApplyToAll}
180
- />
181
- </div>
182
- <div className='buttons'>
183
- <Button
184
- onClick={() => onAsNew(applyToAll, index, file)}
185
- size='large'
186
- style='bold'
187
- color='primary'>
188
- {copy.uploads.keepBoth}
189
- </Button>
190
- <Button
191
- onClick={() => onReplace(applyToAll, index, file, assetId)}
192
- size='large'
193
- style='bold'
194
- color='primary'>
195
- {copy.uploads.replace}
196
- </Button>
197
- <Button
198
- onClick={onClose}
199
- size='large'
200
- style='bold'
201
- color='default'>
202
- {copy.uploads.cancelButton}
203
- </Button>
204
- </div>
205
- </div>
206
- </div>
207
- </Section>
208
- </Modal>
209
- );
210
- }
211
- };
212
-
213
- const PortalContextComponent = () =>
214
- ReactDOM.createPortal(modal(), document.querySelector('#react-root'));
215
-
216
- return <PortalContextComponent />;
217
- };