@imposium-hub/components 2.9.0-5 → 2.9.0-6

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 (176) hide show
  1. package/dist/cjs/components/app-wrapper/AppWrapper.js +3 -1
  2. package/dist/cjs/components/app-wrapper/AppWrapper.js.map +1 -1
  3. package/dist/cjs/components/assets/AssetsUploadMenu.js +2 -1
  4. package/dist/cjs/components/assets/AssetsUploadMenu.js.map +1 -1
  5. package/dist/cjs/components/confirm-modal/ConfirmModal.js +3 -2
  6. package/dist/cjs/components/confirm-modal/ConfirmModal.js.map +1 -1
  7. package/dist/cjs/components/number-field/NumberField.js +2 -2
  8. package/dist/cjs/components/number-field/NumberField.js.map +1 -1
  9. package/dist/cjs/components/replace-files-modal/ReplaceFilesModal.d.ts +11 -0
  10. package/dist/cjs/components/replace-files-modal/ReplaceFilesModal.js +192 -0
  11. package/dist/cjs/components/replace-files-modal/ReplaceFilesModal.js.map +1 -0
  12. package/dist/cjs/constants/copy.d.ts +4 -0
  13. package/dist/cjs/constants/copy.js +5 -1
  14. package/dist/cjs/constants/copy.js.map +1 -1
  15. package/dist/cjs/constants/icons.d.ts +2 -0
  16. package/dist/cjs/constants/icons.js +3 -1
  17. package/dist/cjs/constants/icons.js.map +1 -1
  18. package/dist/cjs/index.d.ts +3 -3
  19. package/dist/cjs/index.js +6 -5
  20. package/dist/cjs/index.js.map +1 -1
  21. package/dist/cjs/redux/actions/asset-uploads.d.ts +1 -1
  22. package/dist/cjs/redux/actions/asset-uploads.js +169 -119
  23. package/dist/cjs/redux/actions/asset-uploads.js.map +1 -1
  24. package/dist/cjs/redux/reducers/asset-uploads.js +2 -1
  25. package/dist/cjs/redux/reducers/asset-uploads.js.map +1 -1
  26. package/dist/cjs/utils/modal.d.ts +4 -0
  27. package/dist/cjs/utils/modal.js +11 -2
  28. package/dist/cjs/utils/modal.js.map +1 -1
  29. package/dist/esm/components/app-wrapper/AppWrapper.js +3 -1
  30. package/dist/esm/components/app-wrapper/AppWrapper.js.map +1 -1
  31. package/dist/esm/components/assets/AssetsUploadMenu.js +3 -2
  32. package/dist/esm/components/assets/AssetsUploadMenu.js.map +1 -1
  33. package/dist/esm/components/confirm-modal/ConfirmModal.js +3 -2
  34. package/dist/esm/components/confirm-modal/ConfirmModal.js.map +1 -1
  35. package/dist/esm/components/number-field/NumberField.js +2 -2
  36. package/dist/esm/components/number-field/NumberField.js.map +1 -1
  37. package/dist/esm/components/replace-files-modal/ReplaceFilesModal.d.ts +11 -0
  38. package/dist/esm/components/replace-files-modal/ReplaceFilesModal.js +133 -0
  39. package/dist/esm/components/replace-files-modal/ReplaceFilesModal.js.map +1 -0
  40. package/dist/esm/constants/copy.d.ts +4 -0
  41. package/dist/esm/constants/copy.js +5 -1
  42. package/dist/esm/constants/copy.js.map +1 -1
  43. package/dist/esm/constants/icons.d.ts +2 -0
  44. package/dist/esm/constants/icons.js +3 -1
  45. package/dist/esm/constants/icons.js.map +1 -1
  46. package/dist/esm/index.d.ts +3 -3
  47. package/dist/esm/index.js +3 -3
  48. package/dist/esm/index.js.map +1 -1
  49. package/dist/esm/redux/actions/asset-uploads.d.ts +1 -1
  50. package/dist/esm/redux/actions/asset-uploads.js +165 -115
  51. package/dist/esm/redux/actions/asset-uploads.js.map +1 -1
  52. package/dist/esm/redux/reducers/asset-uploads.js +2 -1
  53. package/dist/esm/redux/reducers/asset-uploads.js.map +1 -1
  54. package/dist/esm/utils/modal.d.ts +4 -0
  55. package/dist/esm/utils/modal.js +9 -1
  56. package/dist/esm/utils/modal.js.map +1 -1
  57. package/dist/styles.css +49 -6
  58. package/dist/styles.less +64 -58
  59. package/less/components/assets.less +5 -39
  60. package/less/components/button-menu.less +1 -0
  61. package/less/components/button.less +57 -19
  62. package/less/components/story-previewer.less +1 -1
  63. package/package.json +1 -1
  64. package/src/components/app-wrapper/AppWrapper.tsx +2 -0
  65. package/src/components/assets/AssetsUploadMenu.tsx +17 -10
  66. package/src/components/confirm-modal/ConfirmModal.tsx +3 -2
  67. package/src/components/number-field/NumberField.tsx +2 -2
  68. package/src/components/replace-files-modal/ReplaceFilesModal.tsx +209 -0
  69. package/src/constants/copy.ts +5 -1
  70. package/src/constants/icons.tsx +10 -1
  71. package/src/index.ts +3 -2
  72. package/src/redux/actions/asset-uploads.ts +193 -162
  73. package/src/redux/reducers/asset-uploads.ts +2 -1
  74. package/src/utils/modal.ts +13 -1
  75. package/dist/cjs/components/app-wrapper/AppWrapperV2.d.ts +0 -26
  76. package/dist/cjs/components/app-wrapper/AppWrapperV2.js +0 -266
  77. package/dist/cjs/components/app-wrapper/AppWrapperV2.js.map +0 -1
  78. package/dist/cjs/components/app-wrapper/AppWrapperV3.d.ts +0 -19
  79. package/dist/cjs/components/app-wrapper/AppWrapperV3.js +0 -195
  80. package/dist/cjs/components/app-wrapper/AppWrapperV3.js.map +0 -1
  81. package/dist/cjs/components/app-wrapper/AppWrapper_BACKUP_73190.d.ts +0 -27
  82. package/dist/cjs/components/app-wrapper/AppWrapper_BACKUP_73190.js +0 -243
  83. package/dist/cjs/components/app-wrapper/AppWrapper_BACKUP_73190.js.map +0 -1
  84. package/dist/cjs/components/app-wrapper/AppWrapper_BASE_73190.d.ts +0 -28
  85. package/dist/cjs/components/app-wrapper/AppWrapper_BASE_73190.js +0 -255
  86. package/dist/cjs/components/app-wrapper/AppWrapper_BASE_73190.js.map +0 -1
  87. package/dist/cjs/components/app-wrapper/AppWrapper_LOCAL_73190.d.ts +0 -27
  88. package/dist/cjs/components/app-wrapper/AppWrapper_LOCAL_73190.js +0 -243
  89. package/dist/cjs/components/app-wrapper/AppWrapper_LOCAL_73190.js.map +0 -1
  90. package/dist/cjs/components/app-wrapper/AppWrapper_REMOTE_73190.d.ts +0 -28
  91. package/dist/cjs/components/app-wrapper/AppWrapper_REMOTE_73190.js +0 -251
  92. package/dist/cjs/components/app-wrapper/AppWrapper_REMOTE_73190.js.map +0 -1
  93. package/dist/cjs/components/auth-gate/AuthGate.d.ts +0 -2
  94. package/dist/cjs/components/auth-gate/AuthGate.js +0 -105
  95. package/dist/cjs/components/auth-gate/AuthGate.js.map +0 -1
  96. package/dist/cjs/components/error-message-preview/ErrorMessagePreview.d.ts +0 -15
  97. package/dist/cjs/components/error-message-preview/ErrorMessagePreview.js +0 -91
  98. package/dist/cjs/components/error-message-preview/ErrorMessagePreview.js.map +0 -1
  99. package/dist/cjs/components/header/Header_BACKUP_73021.d.ts +0 -33
  100. package/dist/cjs/components/header/Header_BACKUP_73021.js +0 -393
  101. package/dist/cjs/components/header/Header_BACKUP_73021.js.map +0 -1
  102. package/dist/cjs/components/header/Header_BASE_73021.d.ts +0 -29
  103. package/dist/cjs/components/header/Header_BASE_73021.js +0 -376
  104. package/dist/cjs/components/header/Header_BASE_73021.js.map +0 -1
  105. package/dist/cjs/components/header/Header_LOCAL_73021.d.ts +0 -33
  106. package/dist/cjs/components/header/Header_LOCAL_73021.js +0 -382
  107. package/dist/cjs/components/header/Header_LOCAL_73021.js.map +0 -1
  108. package/dist/cjs/components/header/Header_REMOTE_73021.d.ts +0 -30
  109. package/dist/cjs/components/header/Header_REMOTE_73021.js +0 -386
  110. package/dist/cjs/components/header/Header_REMOTE_73021.js.map +0 -1
  111. package/dist/cjs/components/header/StoryDropdown.d.ts +0 -6
  112. package/dist/cjs/components/header/StoryDropdown.js +0 -111
  113. package/dist/cjs/components/header/StoryDropdown.js.map +0 -1
  114. package/dist/cjs/redux/actions/auth.d.ts +0 -9
  115. package/dist/cjs/redux/actions/auth.js +0 -30
  116. package/dist/cjs/redux/actions/auth.js.map +0 -1
  117. package/dist/cjs/redux/reducers/auth.d.ts +0 -3
  118. package/dist/cjs/redux/reducers/auth.js +0 -67
  119. package/dist/cjs/redux/reducers/auth.js.map +0 -1
  120. package/dist/cjs/services/Auth0.d.ts +0 -18
  121. package/dist/cjs/services/Auth0.js +0 -102
  122. package/dist/cjs/services/Auth0.js.map +0 -1
  123. package/dist/cjs/services/Session.d.ts +0 -26
  124. package/dist/cjs/services/Session.js +0 -155
  125. package/dist/cjs/services/Session.js.map +0 -1
  126. package/dist/esm/components/app-wrapper/AppWrapperV2.d.ts +0 -26
  127. package/dist/esm/components/app-wrapper/AppWrapperV2.js +0 -142
  128. package/dist/esm/components/app-wrapper/AppWrapperV2.js.map +0 -1
  129. package/dist/esm/components/app-wrapper/AppWrapperV3.d.ts +0 -19
  130. package/dist/esm/components/app-wrapper/AppWrapperV3.js +0 -88
  131. package/dist/esm/components/app-wrapper/AppWrapperV3.js.map +0 -1
  132. package/dist/esm/components/app-wrapper/AppWrapper_BACKUP_73190.d.ts +0 -27
  133. package/dist/esm/components/app-wrapper/AppWrapper_BACKUP_73190.js +0 -194
  134. package/dist/esm/components/app-wrapper/AppWrapper_BACKUP_73190.js.map +0 -1
  135. package/dist/esm/components/app-wrapper/AppWrapper_BASE_73190.d.ts +0 -28
  136. package/dist/esm/components/app-wrapper/AppWrapper_BASE_73190.js +0 -208
  137. package/dist/esm/components/app-wrapper/AppWrapper_BASE_73190.js.map +0 -1
  138. package/dist/esm/components/app-wrapper/AppWrapper_LOCAL_73190.d.ts +0 -27
  139. package/dist/esm/components/app-wrapper/AppWrapper_LOCAL_73190.js +0 -194
  140. package/dist/esm/components/app-wrapper/AppWrapper_LOCAL_73190.js.map +0 -1
  141. package/dist/esm/components/app-wrapper/AppWrapper_REMOTE_73190.d.ts +0 -28
  142. package/dist/esm/components/app-wrapper/AppWrapper_REMOTE_73190.js +0 -204
  143. package/dist/esm/components/app-wrapper/AppWrapper_REMOTE_73190.js.map +0 -1
  144. package/dist/esm/components/auth-gate/AuthGate.d.ts +0 -2
  145. package/dist/esm/components/auth-gate/AuthGate.js +0 -59
  146. package/dist/esm/components/auth-gate/AuthGate.js.map +0 -1
  147. package/dist/esm/components/error-message-preview/ErrorMessagePreview.d.ts +0 -15
  148. package/dist/esm/components/error-message-preview/ErrorMessagePreview.js +0 -35
  149. package/dist/esm/components/error-message-preview/ErrorMessagePreview.js.map +0 -1
  150. package/dist/esm/components/header/Header_BACKUP_73021.d.ts +0 -33
  151. package/dist/esm/components/header/Header_BACKUP_73021.js +0 -336
  152. package/dist/esm/components/header/Header_BACKUP_73021.js.map +0 -1
  153. package/dist/esm/components/header/Header_BASE_73021.d.ts +0 -29
  154. package/dist/esm/components/header/Header_BASE_73021.js +0 -322
  155. package/dist/esm/components/header/Header_BASE_73021.js.map +0 -1
  156. package/dist/esm/components/header/Header_LOCAL_73021.d.ts +0 -33
  157. package/dist/esm/components/header/Header_LOCAL_73021.js +0 -328
  158. package/dist/esm/components/header/Header_LOCAL_73021.js.map +0 -1
  159. package/dist/esm/components/header/Header_REMOTE_73021.d.ts +0 -30
  160. package/dist/esm/components/header/Header_REMOTE_73021.js +0 -329
  161. package/dist/esm/components/header/Header_REMOTE_73021.js.map +0 -1
  162. package/dist/esm/components/header/StoryDropdown.d.ts +0 -6
  163. package/dist/esm/components/header/StoryDropdown.js +0 -82
  164. package/dist/esm/components/header/StoryDropdown.js.map +0 -1
  165. package/dist/esm/redux/actions/auth.d.ts +0 -9
  166. package/dist/esm/redux/actions/auth.js +0 -25
  167. package/dist/esm/redux/actions/auth.js.map +0 -1
  168. package/dist/esm/redux/reducers/auth.d.ts +0 -3
  169. package/dist/esm/redux/reducers/auth.js +0 -27
  170. package/dist/esm/redux/reducers/auth.js.map +0 -1
  171. package/dist/esm/services/Auth0.d.ts +0 -18
  172. package/dist/esm/services/Auth0.js +0 -68
  173. package/dist/esm/services/Auth0.js.map +0 -1
  174. package/dist/esm/services/Session.d.ts +0 -26
  175. package/dist/esm/services/Session.js +0 -107
  176. package/dist/esm/services/Session.js.map +0 -1
@@ -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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"}