@imposium-hub/components 2.6.0-0 → 2.6.0-1
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.
- package/dist/cjs/components/app-wrapper/AppWrapper.d.ts +24 -5
- package/dist/cjs/components/app-wrapper/AppWrapper.js +104 -22
- package/dist/cjs/components/app-wrapper/AppWrapper.js.map +1 -1
- package/dist/cjs/components/assets/StoryTableNameFilter.d.ts +9 -2
- package/dist/cjs/components/assets/StoryTableNameFilter.js +3 -13
- package/dist/cjs/components/assets/StoryTableNameFilter.js.map +1 -1
- package/dist/cjs/components/context-menu/AnimateComponent.d.ts +6 -6
- package/dist/cjs/components/context-menu/AnimateComponent.js.map +1 -1
- package/dist/cjs/components/context-menu/ContextMenu.d.ts +12 -27
- package/dist/cjs/components/context-menu/ContextMenu.js +2 -15
- package/dist/cjs/components/context-menu/ContextMenu.js.map +1 -1
- package/dist/cjs/components/context-menu/ContextMenuItem.d.ts +6 -18
- package/dist/cjs/components/context-menu/ContextMenuItem.js +2 -21
- package/dist/cjs/components/context-menu/ContextMenuItem.js.map +1 -1
- package/dist/cjs/components/context-menu/ContextMenuTrigger.d.ts +6 -16
- package/dist/cjs/components/context-menu/ContextMenuTrigger.js +2 -20
- package/dist/cjs/components/context-menu/ContextMenuTrigger.js.map +1 -1
- package/dist/cjs/components/context-menu/SubMenu.d.ts +4 -12
- package/dist/cjs/components/context-menu/SubMenu.js +2 -17
- package/dist/cjs/components/context-menu/SubMenu.js.map +1 -1
- package/dist/cjs/components/data-table/Paginator.d.ts +16 -1
- package/dist/cjs/components/data-table/Paginator.js +1 -1
- package/dist/cjs/components/data-table/Paginator.js.map +1 -1
- package/dist/cjs/components/font-picker/font-manager/constants.d.ts +4 -0
- package/dist/cjs/components/font-picker/font-manager/constants.js +5 -1
- package/dist/cjs/components/font-picker/font-manager/constants.js.map +1 -1
- package/dist/cjs/components/header/Header.d.ts +3 -5
- package/dist/cjs/components/header/Header.js +77 -126
- package/dist/cjs/components/header/Header.js.map +1 -1
- package/dist/cjs/components/header/ProjectDropdown.d.ts +13 -0
- package/dist/cjs/components/header/ProjectDropdown.js +128 -0
- package/dist/cjs/components/header/ProjectDropdown.js.map +1 -0
- package/dist/cjs/components/header/StoryDropdown.d.ts +6 -0
- package/dist/cjs/components/header/StoryDropdown.js +111 -0
- package/dist/cjs/components/header/StoryDropdown.js.map +1 -0
- package/dist/cjs/components/portal/Portal.d.ts +0 -2
- package/dist/cjs/components/portal/Portal.js.map +1 -1
- package/dist/cjs/components/publish-wizard/PublishWizard.d.ts +1 -3
- package/dist/cjs/components/publish-wizard/PublishWizard.js.map +1 -1
- package/dist/cjs/components/publish-wizard/publish/EmailWorkflow.js.map +1 -1
- package/dist/cjs/constants/copy.d.ts +3 -0
- package/dist/cjs/constants/copy.js +3 -0
- package/dist/cjs/constants/copy.js.map +1 -1
- package/dist/cjs/index.d.ts +3 -1
- package/dist/cjs/index.js +9 -3
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/services/API.d.ts +5 -2
- package/dist/cjs/services/API.js +198 -75
- package/dist/cjs/services/API.js.map +1 -1
- package/dist/cjs/utils/modal.d.ts +2 -0
- package/dist/cjs/utils/modal.js +11 -0
- package/dist/cjs/utils/modal.js.map +1 -0
- package/dist/cjs/utils/pendo.d.ts +24 -0
- package/dist/cjs/utils/pendo.js +62 -0
- package/dist/cjs/utils/pendo.js.map +1 -0
- package/dist/cjs/utils/routing.d.ts +2 -0
- package/dist/cjs/utils/routing.js +10 -1
- package/dist/cjs/utils/routing.js.map +1 -1
- package/dist/esm/components/app-wrapper/AppWrapper.d.ts +24 -5
- package/dist/esm/components/app-wrapper/AppWrapper.js +97 -19
- package/dist/esm/components/app-wrapper/AppWrapper.js.map +1 -1
- package/dist/esm/components/assets/StoryTableNameFilter.d.ts +9 -2
- package/dist/esm/components/assets/StoryTableNameFilter.js +3 -13
- package/dist/esm/components/assets/StoryTableNameFilter.js.map +1 -1
- package/dist/esm/components/context-menu/AnimateComponent.d.ts +6 -6
- package/dist/esm/components/context-menu/AnimateComponent.js.map +1 -1
- package/dist/esm/components/context-menu/ContextMenu.d.ts +12 -27
- package/dist/esm/components/context-menu/ContextMenu.js +2 -4
- package/dist/esm/components/context-menu/ContextMenu.js.map +1 -1
- package/dist/esm/components/context-menu/ContextMenuItem.d.ts +6 -18
- package/dist/esm/components/context-menu/ContextMenuItem.js +2 -10
- package/dist/esm/components/context-menu/ContextMenuItem.js.map +1 -1
- package/dist/esm/components/context-menu/ContextMenuTrigger.d.ts +6 -16
- package/dist/esm/components/context-menu/ContextMenuTrigger.js +2 -9
- package/dist/esm/components/context-menu/ContextMenuTrigger.js.map +1 -1
- package/dist/esm/components/context-menu/SubMenu.d.ts +4 -12
- package/dist/esm/components/context-menu/SubMenu.js +2 -6
- package/dist/esm/components/context-menu/SubMenu.js.map +1 -1
- package/dist/esm/components/data-table/Paginator.d.ts +16 -1
- package/dist/esm/components/data-table/Paginator.js +1 -1
- package/dist/esm/components/data-table/Paginator.js.map +1 -1
- package/dist/esm/components/font-picker/font-manager/constants.d.ts +4 -0
- package/dist/esm/components/font-picker/font-manager/constants.js +4 -0
- package/dist/esm/components/font-picker/font-manager/constants.js.map +1 -1
- package/dist/esm/components/header/Header.d.ts +3 -5
- package/dist/esm/components/header/Header.js +75 -115
- package/dist/esm/components/header/Header.js.map +1 -1
- package/dist/esm/components/header/ProjectDropdown.d.ts +13 -0
- package/dist/esm/components/header/ProjectDropdown.js +101 -0
- package/dist/esm/components/header/ProjectDropdown.js.map +1 -0
- package/dist/esm/components/header/StoryDropdown.d.ts +6 -0
- package/dist/esm/components/header/StoryDropdown.js +82 -0
- package/dist/esm/components/header/StoryDropdown.js.map +1 -0
- package/dist/esm/components/portal/Portal.d.ts +0 -2
- package/dist/esm/components/portal/Portal.js.map +1 -1
- package/dist/esm/components/publish-wizard/PublishWizard.d.ts +1 -3
- package/dist/esm/components/publish-wizard/PublishWizard.js.map +1 -1
- package/dist/esm/components/publish-wizard/publish/EmailWorkflow.js.map +1 -1
- package/dist/esm/constants/copy.d.ts +3 -0
- package/dist/esm/constants/copy.js +3 -0
- package/dist/esm/constants/copy.js.map +1 -1
- package/dist/esm/index.d.ts +3 -1
- package/dist/esm/index.js +3 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/services/API.d.ts +5 -2
- package/dist/esm/services/API.js +43 -18
- package/dist/esm/services/API.js.map +1 -1
- package/dist/esm/utils/modal.d.ts +2 -0
- package/dist/esm/utils/modal.js +7 -0
- package/dist/esm/utils/modal.js.map +1 -0
- package/dist/esm/utils/pendo.d.ts +24 -0
- package/dist/esm/utils/pendo.js +52 -0
- package/dist/esm/utils/pendo.js.map +1 -0
- package/dist/esm/utils/routing.d.ts +2 -0
- package/dist/esm/utils/routing.js +7 -0
- package/dist/esm/utils/routing.js.map +1 -1
- package/package.json +3 -1
- package/src/components/app-wrapper/AppWrapper.tsx +155 -26
- package/src/components/assets/StoryTableNameFilter.tsx +6 -22
- package/src/components/context-menu/AnimateComponent.tsx +12 -1
- package/src/components/context-menu/ContextMenu.tsx +16 -8
- package/src/components/context-menu/ContextMenuItem.tsx +12 -11
- package/src/components/context-menu/ContextMenuTrigger.tsx +12 -10
- package/src/components/context-menu/SubMenu.tsx +6 -8
- package/src/components/data-table/Paginator.tsx +19 -6
- package/src/components/font-picker/font-manager/constants.ts +5 -0
- package/src/components/header/Header.tsx +103 -190
- package/src/components/header/ProjectDropdown.tsx +174 -0
- package/src/components/portal/Portal.tsx +1 -2
- package/src/components/publish-wizard/PublishWizard.tsx +1 -1
- package/src/components/publish-wizard/publish/EmailWorkflow.tsx +7 -1
- package/src/constants/copy.ts +3 -0
- package/src/index.ts +5 -0
- package/src/services/API.ts +51 -20
- package/src/utils/modal.ts +9 -0
- package/src/utils/pendo.ts +61 -0
- package/src/utils/routing.ts +10 -0
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* [initPendo description]
|
|
4
|
+
* This initalizes the Pendo Help system in the application
|
|
5
|
+
* The Pendo script should be added to the DOM in `index.html`
|
|
6
|
+
* This function takes the user object and sets some initial information on Pendo for tracking
|
|
7
|
+
* For full documentation of Pendo object please see Pendo Docs
|
|
8
|
+
*
|
|
9
|
+
* To prevent application breaking things, we wrap both groups in a try/catch
|
|
10
|
+
* This allows our Application to work regardless of the status of Pendo
|
|
11
|
+
* *************************************************************
|
|
12
|
+
* We DO NOT WANT TO BREAK OUR APP if a 3rd party script fails
|
|
13
|
+
* *************************************************************
|
|
14
|
+
*
|
|
15
|
+
* @param {object} userInfo User object from crm/v1/user
|
|
16
|
+
* Each application's `user/` endpoint returns slightly different data
|
|
17
|
+
* The `visitor` object will need to be adjusted based on the data returned
|
|
18
|
+
* We should always have access to:
|
|
19
|
+
* id
|
|
20
|
+
* email
|
|
21
|
+
* full_name
|
|
22
|
+
*
|
|
23
|
+
* @return {undefined} Nothing
|
|
24
|
+
*/
|
|
25
|
+
var __assign = (this && this.__assign) || function () {
|
|
26
|
+
__assign = Object.assign || function(t) {
|
|
27
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
28
|
+
s = arguments[i];
|
|
29
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
30
|
+
t[p] = s[p];
|
|
31
|
+
}
|
|
32
|
+
return t;
|
|
33
|
+
};
|
|
34
|
+
return __assign.apply(this, arguments);
|
|
35
|
+
};
|
|
36
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
37
|
+
exports.initPendo = void 0;
|
|
38
|
+
var initPendo = function (environment, userInfo) {
|
|
39
|
+
if (/dev/gi.test(environment)) {
|
|
40
|
+
console.info('%cPendo%c is %cdisabled%c for local testing', 'color: #e247e5; font-weight:bold;', 'color:#fff; font-weight:normal;', 'color:red; font-weight:bold;', 'color:#fff; font-weight:normal;');
|
|
41
|
+
return;
|
|
42
|
+
}
|
|
43
|
+
try {
|
|
44
|
+
var visitor = {
|
|
45
|
+
id: userInfo.sub,
|
|
46
|
+
email: userInfo['https://imposium.com/email']
|
|
47
|
+
};
|
|
48
|
+
/* eslint-disable no-undef */
|
|
49
|
+
pendo.initialize({
|
|
50
|
+
visitor: __assign(__assign({}, visitor), { environment: environment, product: 'Imposium Project Editor', language: navigator.language })
|
|
51
|
+
});
|
|
52
|
+
/* eslint-enable no-undef */
|
|
53
|
+
}
|
|
54
|
+
catch (err) {
|
|
55
|
+
console.groupCollapsed('Pendo Init Problem');
|
|
56
|
+
console.error('Problem Starting up Pendo');
|
|
57
|
+
console.error(err);
|
|
58
|
+
console.groupEnd();
|
|
59
|
+
}
|
|
60
|
+
};
|
|
61
|
+
exports.initPendo = initPendo;
|
|
62
|
+
//# sourceMappingURL=pendo.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pendo.js","sourceRoot":"","sources":["../../../src/utils/pendo.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;;;;;;;;;;;;;;AAII,IAAM,SAAS,GAAG,UAAC,WAAW,EAAE,QAAQ;IAC3C,IAAI,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;QAC5B,OAAO,CAAC,IAAI,CACR,6CAA6C,EAC7C,mCAAmC,EACnC,iCAAiC,EACjC,8BAA8B,EAC9B,iCAAiC,CACpC,CAAC;QACF,OAAO;IACX,CAAC;IAED,IAAI,CAAC;QACD,IAAM,OAAO,GAAG;YACZ,EAAE,EAAE,QAAQ,CAAC,GAAG;YAChB,KAAK,EAAE,QAAQ,CAAC,4BAA4B,CAAC;SAChD,CAAC;QAEF,6BAA6B;QAC7B,KAAK,CAAC,UAAU,CAAC;YACb,OAAO,wBACA,OAAO,KACV,WAAW,aAAA,EACX,OAAO,EAAE,yBAAyB,EAClC,QAAQ,EAAE,SAAS,CAAC,QAAQ,GAC/B;SACJ,CAAC,CAAC;QACH,4BAA4B;IAChC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACX,OAAO,CAAC,cAAc,CAAC,oBAAoB,CAAC,CAAC;QAC7C,OAAO,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAC3C,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACnB,OAAO,CAAC,QAAQ,EAAE,CAAC;IACvB,CAAC;AACL,CAAC,CAAC;AAlCW,QAAA,SAAS,aAkCpB"}
|
|
@@ -1,6 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getDemoURL = void 0;
|
|
3
|
+
exports.getDemoURL = exports.replaceRoute = exports.pushRoute = void 0;
|
|
4
|
+
var react_router_1 = require("react-router");
|
|
5
|
+
var pushRoute = function (route) {
|
|
6
|
+
react_router_1.browserHistory.push(route);
|
|
7
|
+
};
|
|
8
|
+
exports.pushRoute = pushRoute;
|
|
9
|
+
var replaceRoute = function (route) {
|
|
10
|
+
react_router_1.browserHistory.replace(route);
|
|
11
|
+
};
|
|
12
|
+
exports.replaceRoute = replaceRoute;
|
|
4
13
|
var getDemoURL = function () {
|
|
5
14
|
var href = window.location.href;
|
|
6
15
|
if (href.indexOf('localhost') !== -1) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"routing.js","sourceRoot":"","sources":["../../../src/utils/routing.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"routing.js","sourceRoot":"","sources":["../../../src/utils/routing.ts"],"names":[],"mappings":";;;AAAA,6CAA8C;AAEvC,IAAM,SAAS,GAAG,UAAC,KAAK;IAC3B,6BAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAC/B,CAAC,CAAC;AAFW,QAAA,SAAS,aAEpB;AAEK,IAAM,YAAY,GAAG,UAAC,KAAK;IAC9B,6BAAc,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAClC,CAAC,CAAC;AAFW,QAAA,YAAY,gBAEvB;AAEK,IAAM,UAAU,GAAG;IAEN,IAAA,IAAI,GAChB,MAAM,cADU,CACT;IAEX,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;QACnC,OAAO,uBAAuB,CAAC;IACnC,CAAC;SAAM,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;QACxC,OAAO,mCAAmC,CAAC;IAC/C,CAAC;SAAM,CAAC;QACJ,OAAO,2BAA2B,CAAC;IACvC,CAAC;AACL,CAAC,CAAC;AAZW,QAAA,UAAU,cAYrB"}
|
|
@@ -3,17 +3,36 @@ import { IImposiumAPI } from '../../services/API';
|
|
|
3
3
|
export interface IAppWrapperProps {
|
|
4
4
|
baseUrl: string;
|
|
5
5
|
api: IImposiumAPI;
|
|
6
|
-
children?: any;
|
|
7
6
|
organizationId: string;
|
|
8
7
|
serviceId: number;
|
|
8
|
+
unsavedChanges: boolean;
|
|
9
9
|
setAccessData(getAccessData: any): void;
|
|
10
|
-
onAuthenticated: (
|
|
11
|
-
|
|
12
|
-
|
|
10
|
+
onAuthenticated: (orgId: string, storyId?: string) => any;
|
|
11
|
+
allowNoStories?: boolean;
|
|
12
|
+
saveStory?(): void;
|
|
13
13
|
storyId?: string;
|
|
14
14
|
CrMLink?: string;
|
|
15
15
|
hideStoryPicker?: boolean;
|
|
16
16
|
hideDocs?: boolean;
|
|
17
17
|
hideOrgPicker?: boolean;
|
|
18
18
|
}
|
|
19
|
-
export declare const
|
|
19
|
+
export declare const APP_WRAPPER_ERROR_STATES: {
|
|
20
|
+
UNAUTHORIZED_ORG: string;
|
|
21
|
+
NO_ORGS_FOUND: string;
|
|
22
|
+
NO_STORIES: string;
|
|
23
|
+
UNAUTHORIZED_APP: string;
|
|
24
|
+
STORY_NOT_FOUND: string;
|
|
25
|
+
};
|
|
26
|
+
export declare const AppWrapper: React.FC<IAppWrapperProps>;
|
|
27
|
+
export declare const ERROR_HEADINGS: {
|
|
28
|
+
[x: string]: string;
|
|
29
|
+
};
|
|
30
|
+
export declare const ERROR_DESCRIPTIONS: {
|
|
31
|
+
[x: string]: string;
|
|
32
|
+
};
|
|
33
|
+
export interface AppWrappeErrorProps {
|
|
34
|
+
error: string;
|
|
35
|
+
email: string;
|
|
36
|
+
onCreateStory?: () => void;
|
|
37
|
+
}
|
|
38
|
+
export declare const AppWrapperErrors: React.FC<AppWrappeErrorProps>;
|
|
@@ -2,20 +2,28 @@ import * as React from 'react';
|
|
|
2
2
|
import Header from '../header/Header';
|
|
3
3
|
import { validateAccessLevel } from '../../Util';
|
|
4
4
|
import { ConfirmModal } from '../confirm-modal/ConfirmModal';
|
|
5
|
-
import API from '../../services/API';
|
|
6
5
|
import { useAuth0 } from '@auth0/auth0-react';
|
|
7
|
-
|
|
6
|
+
import { replaceRoute } from '../../utils/routing';
|
|
7
|
+
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
|
|
8
|
+
import { faExclamationTriangle } from '@fortawesome/pro-light-svg-icons';
|
|
9
|
+
export const APP_WRAPPER_ERROR_STATES = {
|
|
8
10
|
UNAUTHORIZED_ORG: 'UNAUTHORIZED_ORG',
|
|
9
|
-
|
|
11
|
+
NO_ORGS_FOUND: 'NO_ORGS_FOUND',
|
|
12
|
+
NO_STORIES: 'NO_STORIES',
|
|
13
|
+
UNAUTHORIZED_APP: 'UNAUTHORIZED_APP',
|
|
14
|
+
STORY_NOT_FOUND: 'STORY_NOT_FOUND'
|
|
10
15
|
};
|
|
11
16
|
export const AppWrapper = (props) => {
|
|
12
17
|
const [blockRender, setBlockRender] = React.useState(true);
|
|
13
|
-
const { children, organizationId, storyId, hideStoryPicker, hideDocs, hideOrgPicker, CrMLink, baseUrl, api, serviceId } = props;
|
|
14
|
-
const { isAuthenticated, isLoading, getAccessTokenSilently, loginWithRedirect, logout } = useAuth0();
|
|
18
|
+
const { children, organizationId, storyId, hideStoryPicker, hideDocs, hideOrgPicker, CrMLink, baseUrl, api, serviceId, unsavedChanges, saveStory, allowNoStories } = props;
|
|
19
|
+
const { isAuthenticated, isLoading, getAccessTokenSilently, loginWithRedirect, logout, user } = useAuth0();
|
|
15
20
|
const [errorState, setErrorState] = React.useState(null);
|
|
16
21
|
React.useEffect(() => {
|
|
17
22
|
void doCheckSession(true);
|
|
18
23
|
}, [isAuthenticated, isLoading]);
|
|
24
|
+
React.useEffect(() => {
|
|
25
|
+
void doCheckSession(false);
|
|
26
|
+
}, [organizationId, storyId]);
|
|
19
27
|
const getCachedStoryAndOrgForService = (freshAccess, sId) => {
|
|
20
28
|
const service = freshAccess.services.find((s) => s.id === sId);
|
|
21
29
|
if (service) {
|
|
@@ -25,25 +33,76 @@ export const AppWrapper = (props) => {
|
|
|
25
33
|
};
|
|
26
34
|
}
|
|
27
35
|
};
|
|
28
|
-
const
|
|
29
|
-
const
|
|
36
|
+
const validateStoryExists = (freshAccess, oId, sId) => {
|
|
37
|
+
const org = freshAccess.organizations.find((o) => o.id === oId);
|
|
38
|
+
if (!org) {
|
|
39
|
+
return false;
|
|
40
|
+
}
|
|
41
|
+
const story = org.stories.find((s) => s.id === sId);
|
|
42
|
+
if (!story) {
|
|
43
|
+
return false;
|
|
44
|
+
}
|
|
45
|
+
return true;
|
|
46
|
+
};
|
|
47
|
+
const propagateCreds = (freshAccess) => {
|
|
48
|
+
const { storyId: initialStoryId, organizationId: initialOrganizationId, onAuthenticated } = props;
|
|
30
49
|
// If an org and story ID was passed in, we're following a deeplink. Verify we have access to it, and if so, propagate those IDs and set them on the service
|
|
31
50
|
if (initialOrganizationId && initialStoryId) {
|
|
32
51
|
// Validate the user has access to the orgId and storyID passed in, if not, show the "Unauthorized" interface
|
|
33
52
|
const validAccessLevel = validateAccessLevel(initialOrganizationId, serviceId, freshAccess);
|
|
34
53
|
if (validAccessLevel) {
|
|
35
|
-
|
|
54
|
+
// Check to see if the story exists, if not, show the error state
|
|
55
|
+
const storyExists = validateStoryExists(freshAccess, initialOrganizationId, initialStoryId);
|
|
56
|
+
if (!storyExists) {
|
|
57
|
+
setErrorState(APP_WRAPPER_ERROR_STATES.STORY_NOT_FOUND);
|
|
58
|
+
return;
|
|
59
|
+
}
|
|
60
|
+
api.init(baseUrl, getAccessTokenSilently, initialOrganizationId);
|
|
61
|
+
onAuthenticated(initialOrganizationId, initialStoryId);
|
|
36
62
|
setBlockRender(false);
|
|
63
|
+
setErrorState(null);
|
|
37
64
|
}
|
|
38
65
|
else {
|
|
39
66
|
setErrorState(APP_WRAPPER_ERROR_STATES.UNAUTHORIZED_APP);
|
|
67
|
+
return;
|
|
40
68
|
}
|
|
41
69
|
// If no orgID or storyID was passed in from the URL use the cached orgID and story ID on the service
|
|
42
70
|
}
|
|
43
|
-
else {
|
|
71
|
+
else if (!initialOrganizationId && !initialStoryId) {
|
|
44
72
|
const { story_id, organization_id } = getCachedStoryAndOrgForService(freshAccess, serviceId);
|
|
45
|
-
|
|
46
|
-
|
|
73
|
+
// No org was found to show the user
|
|
74
|
+
if (!organization_id) {
|
|
75
|
+
setErrorState(APP_WRAPPER_ERROR_STATES.NO_ORGS_FOUND);
|
|
76
|
+
return;
|
|
77
|
+
}
|
|
78
|
+
const validAccessLevel = validateAccessLevel(organization_id, serviceId, freshAccess);
|
|
79
|
+
if (validAccessLevel) {
|
|
80
|
+
api.init(baseUrl, getAccessTokenSilently, organization_id);
|
|
81
|
+
onAuthenticated(organization_id, story_id);
|
|
82
|
+
replaceRoute(`/${organization_id}/${story_id}`);
|
|
83
|
+
setBlockRender(false);
|
|
84
|
+
setErrorState(null);
|
|
85
|
+
}
|
|
86
|
+
else {
|
|
87
|
+
setErrorState(APP_WRAPPER_ERROR_STATES.UNAUTHORIZED_APP);
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
else if (initialOrganizationId) {
|
|
91
|
+
if (allowNoStories) {
|
|
92
|
+
const validAccessLevel = validateAccessLevel(initialOrganizationId, serviceId, freshAccess);
|
|
93
|
+
if (validAccessLevel) {
|
|
94
|
+
api.init(baseUrl, getAccessTokenSilently, initialOrganizationId);
|
|
95
|
+
onAuthenticated(initialOrganizationId, null);
|
|
96
|
+
setBlockRender(false);
|
|
97
|
+
setErrorState(null);
|
|
98
|
+
}
|
|
99
|
+
else {
|
|
100
|
+
setErrorState(APP_WRAPPER_ERROR_STATES.UNAUTHORIZED_APP);
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
else {
|
|
104
|
+
setErrorState(APP_WRAPPER_ERROR_STATES.NO_STORIES);
|
|
105
|
+
}
|
|
47
106
|
}
|
|
48
107
|
};
|
|
49
108
|
/*
|
|
@@ -55,21 +114,19 @@ export const AppWrapper = (props) => {
|
|
|
55
114
|
}
|
|
56
115
|
// If we're authenticated, get the access token, pull the access data, and propagate back to the parent component
|
|
57
116
|
if (isAuthenticated) {
|
|
58
|
-
let token;
|
|
59
117
|
try {
|
|
60
|
-
|
|
118
|
+
await getAccessTokenSilently();
|
|
61
119
|
}
|
|
62
120
|
catch (e) {
|
|
63
121
|
// Trigger a logout if we can't get the access token
|
|
64
122
|
onLogout();
|
|
65
123
|
}
|
|
66
124
|
const orgId = organizationId ? organizationId : null;
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
.getAccessData(false)
|
|
125
|
+
api.init(baseUrl, getAccessTokenSilently, orgId);
|
|
126
|
+
api.getAccessData(false)
|
|
70
127
|
.then((freshAccess) => {
|
|
71
128
|
props.setAccessData(freshAccess);
|
|
72
|
-
propagateCreds(freshAccess
|
|
129
|
+
propagateCreds(freshAccess);
|
|
73
130
|
})
|
|
74
131
|
.catch((e) => {
|
|
75
132
|
setErrorState(APP_WRAPPER_ERROR_STATES.UNAUTHORIZED_ORG);
|
|
@@ -88,14 +145,35 @@ export const AppWrapper = (props) => {
|
|
|
88
145
|
};
|
|
89
146
|
let innerContent;
|
|
90
147
|
if (errorState) {
|
|
91
|
-
innerContent = errorState;
|
|
148
|
+
innerContent = (React.createElement(AppWrapperErrors, { error: errorState, email: user.userEmail }));
|
|
92
149
|
}
|
|
93
150
|
else if (!blockRender) {
|
|
94
151
|
innerContent = children;
|
|
95
152
|
}
|
|
96
153
|
return (React.createElement("div", { id: 'app', className: 'app' },
|
|
97
|
-
React.createElement(Header, { onLogout: onLogout, activeServiceId: serviceId, baseUrl: baseUrl, api: api, activeOrganization: organizationId, activeStory: storyId, hideStoryPicker: hideStoryPicker, hideDocs: hideDocs, showFTLogo: false, hideOrgPicker: hideOrgPicker, CrMLink: CrMLink
|
|
154
|
+
React.createElement(Header, { errorState: errorState, saveStory: saveStory, onLogout: onLogout, activeServiceId: serviceId, baseUrl: baseUrl, api: api, unsavedChanges: unsavedChanges, activeOrganization: organizationId, activeStory: storyId, hideStoryPicker: hideStoryPicker, hideDocs: hideDocs, showFTLogo: false, hideOrgPicker: hideOrgPicker, CrMLink: CrMLink }),
|
|
98
155
|
innerContent,
|
|
99
156
|
React.createElement(ConfirmModal, null)));
|
|
100
157
|
};
|
|
158
|
+
export const ERROR_HEADINGS = {
|
|
159
|
+
[APP_WRAPPER_ERROR_STATES.UNAUTHORIZED_ORG]: 'Organization Not Found',
|
|
160
|
+
[APP_WRAPPER_ERROR_STATES.NO_ORGS_FOUND]: 'No Organizations Found',
|
|
161
|
+
[APP_WRAPPER_ERROR_STATES.UNAUTHORIZED_APP]: 'Service Not Found',
|
|
162
|
+
[APP_WRAPPER_ERROR_STATES.NO_STORIES]: 'No Projects Found',
|
|
163
|
+
[APP_WRAPPER_ERROR_STATES.STORY_NOT_FOUND]: 'Project Not Found'
|
|
164
|
+
};
|
|
165
|
+
export const ERROR_DESCRIPTIONS = {
|
|
166
|
+
[APP_WRAPPER_ERROR_STATES.UNAUTHORIZED_ORG]: 'Your user "[email]" does not have access to this organization. Please request access from an admin already on the organization.',
|
|
167
|
+
[APP_WRAPPER_ERROR_STATES.NO_ORGS_FOUND]: 'Your user "[email]" has not been added to any organizations. Please request access from an admin.',
|
|
168
|
+
[APP_WRAPPER_ERROR_STATES.UNAUTHORIZED_APP]: 'Your user "[email]" does not have access to this serivce. Please request access from an admin.',
|
|
169
|
+
[APP_WRAPPER_ERROR_STATES.NO_STORIES]: 'There are no projects on this organization.',
|
|
170
|
+
[APP_WRAPPER_ERROR_STATES.STORY_NOT_FOUND]: 'The Project cound not be found. Please check the URL and try again.'
|
|
171
|
+
};
|
|
172
|
+
export const AppWrapperErrors = ({ error, email, onCreateStory }) => {
|
|
173
|
+
return (React.createElement("div", { className: 'no-access' },
|
|
174
|
+
React.createElement(FontAwesomeIcon, { icon: faExclamationTriangle, size: '6x' }),
|
|
175
|
+
React.createElement("div", { className: 'no-access-copy' },
|
|
176
|
+
React.createElement("h1", { className: 'no-access-heading' }, ERROR_HEADINGS[error]),
|
|
177
|
+
React.createElement("p", null, ERROR_DESCRIPTIONS[error].replace('[email]', email)))));
|
|
178
|
+
};
|
|
101
179
|
//# sourceMappingURL=AppWrapper.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AppWrapper.js","sourceRoot":"","sources":["../../../../src/components/app-wrapper/AppWrapper.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,MAAM,MAAM,kBAAkB,CAAC;AACtC,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"AppWrapper.js","sourceRoot":"","sources":["../../../../src/components/app-wrapper/AppWrapper.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,2 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
interface IStoryTableNameFilterProps {
|
|
3
|
+
filter: any;
|
|
4
|
+
updateFilter: (filters: any) => any;
|
|
5
|
+
}
|
|
6
|
+
declare class StoryTableNameFilter extends React.PureComponent<IStoryTableNameFilterProps> {
|
|
7
|
+
render: () => JSX.Element;
|
|
8
|
+
}
|
|
9
|
+
export default StoryTableNameFilter;
|
|
@@ -1,20 +1,10 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import TextField from '../text-field/TextField';
|
|
3
|
-
import { connect } from 'react-redux';
|
|
4
|
-
import { bindActionCreators } from 'redux';
|
|
5
|
-
import { updateStoryFilter } from '../../redux/actions/story-filter';
|
|
6
3
|
class StoryTableNameFilter extends React.PureComponent {
|
|
7
4
|
render = () => {
|
|
8
|
-
const {
|
|
9
|
-
return (React.createElement(TextField, { className: 'story-name', focusOnMount: true, value:
|
|
5
|
+
const { filter } = this.props;
|
|
6
|
+
return (React.createElement(TextField, { className: 'story-name', focusOnMount: true, value: filter, onChange: (n) => this.props.updateFilter({ name: n }) }));
|
|
10
7
|
};
|
|
11
8
|
}
|
|
12
|
-
|
|
13
|
-
return bindActionCreators({ updateStoryFilter }, dispatch);
|
|
14
|
-
};
|
|
15
|
-
const mapStateToProps = (state) => {
|
|
16
|
-
return { storyFilter: state.storyFilter.name };
|
|
17
|
-
};
|
|
18
|
-
const StoryTableNameFilterMemoized = connect(mapStateToProps, mapDispatchToProps)(React.memo(StoryTableNameFilter));
|
|
19
|
-
export default StoryTableNameFilterMemoized;
|
|
9
|
+
export default StoryTableNameFilter;
|
|
20
10
|
//# sourceMappingURL=StoryTableNameFilter.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StoryTableNameFilter.js","sourceRoot":"","sources":["../../../../src/components/assets/StoryTableNameFilter.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,SAAS,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"StoryTableNameFilter.js","sourceRoot":"","sources":["../../../../src/components/assets/StoryTableNameFilter.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,SAAS,MAAM,yBAAyB,CAAC;AAOhD,MAAM,oBAAqB,SAAQ,KAAK,CAAC,aAAyC;IACvE,MAAM,GAAG,GAAgB,EAAE;QAC9B,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;QAE9B,OAAO,CACH,oBAAC,SAAS,IACN,SAAS,EAAC,YAAY,EACtB,YAAY,QACZ,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,GACvD,CACL,CAAC;IACN,CAAC,CAAC;CACL;AAED,eAAe,oBAAoB,CAAC"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
2
|
+
interface IAnimateComponentProps {
|
|
3
|
+
isVisible: boolean;
|
|
4
|
+
timeout: number;
|
|
5
|
+
className: string;
|
|
6
|
+
}
|
|
7
|
+
declare const AnimateComponent: React.FC<IAnimateComponentProps>;
|
|
8
8
|
export default AnimateComponent;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AnimateComponent.js","sourceRoot":"","sources":["../../../../src/components/context-menu/AnimateComponent.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,aAAa,MAAM,sCAAsC,CAAC;
|
|
1
|
+
{"version":3,"file":"AnimateComponent.js","sourceRoot":"","sources":["../../../../src/components/context-menu/AnimateComponent.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,aAAa,MAAM,sCAAsC,CAAC;AAQjE,MAAM,gBAAgB,GAAqC,CAAC,EACxD,QAAQ,EACR,SAAS,EACT,OAAO,EACP,SAAS,EACZ,EAAE,EAAE;IACD,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAEnC,OAAO,CACH,oBAAC,aAAa,IACV,OAAO,EAAE,OAAO,EAChB,EAAE,EAAE,SAAS,EACb,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,SAAS,EACrB,aAAa,UACZ,QAAQ,CACG,CACnB,CAAC;AACN,CAAC,CAAC;AAEF,eAAe,gBAAgB,CAAC"}
|
|
@@ -1,29 +1,14 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
animation: any;
|
|
15
|
-
}): React.JSX.Element;
|
|
16
|
-
defaultProps: {
|
|
17
|
-
appendTo: any;
|
|
18
|
-
hideOnLeave: boolean;
|
|
19
|
-
preventHideOnResize: boolean;
|
|
20
|
-
preventHideOnScroll: boolean;
|
|
21
|
-
attributes: {};
|
|
22
|
-
className: string;
|
|
23
|
-
animation: string;
|
|
24
|
-
onMouseLeave: () => any;
|
|
25
|
-
onHide: () => any;
|
|
26
|
-
onShow: () => any;
|
|
27
|
-
};
|
|
28
|
-
};
|
|
2
|
+
interface IContextMenuProps {
|
|
3
|
+
id: string;
|
|
4
|
+
appendTo: string;
|
|
5
|
+
hideOnLeave?: boolean;
|
|
6
|
+
onMouseLeave?: (e: any) => void;
|
|
7
|
+
onHide?: () => void;
|
|
8
|
+
onShow?: () => void;
|
|
9
|
+
preventHideOnScroll?: boolean;
|
|
10
|
+
preventHideOnResize?: boolean;
|
|
11
|
+
animation?: string;
|
|
12
|
+
}
|
|
13
|
+
declare const ContextMenu: React.FC<IContextMenuProps>;
|
|
29
14
|
export default ContextMenu;
|
|
@@ -3,7 +3,7 @@ import ReactDOM from 'react-dom';
|
|
|
3
3
|
import { registerEvent, callHideEvent } from './registerEvent';
|
|
4
4
|
import AnimateComponent from './AnimateComponent';
|
|
5
5
|
import { throttle } from './helper';
|
|
6
|
-
const ContextMenu = ({
|
|
6
|
+
const ContextMenu = ({ id, children, appendTo, hideOnLeave, onMouseLeave, onHide, onShow, preventHideOnScroll, preventHideOnResize, animation }) => {
|
|
7
7
|
const contextMenuEl = useRef(null);
|
|
8
8
|
const [isVisible, setVisible] = useState(false);
|
|
9
9
|
const [top, setTop] = useState('');
|
|
@@ -86,7 +86,7 @@ const ContextMenu = ({ children, id, appendTo, hideOnLeave, onMouseLeave, onHide
|
|
|
86
86
|
}, [isVisible, clientPosition]);
|
|
87
87
|
const childrenWithProps = React.Children.map(children, (child) => React.cloneElement(child, { id }));
|
|
88
88
|
const ContextComponent = () => {
|
|
89
|
-
return (React.createElement("div", { className: `contextmenu`, ref: contextMenuEl, style: { top, left }, onMouseLeave: handleMouseLeave
|
|
89
|
+
return (React.createElement("div", { className: `contextmenu`, ref: contextMenuEl, style: { top, left }, onMouseLeave: handleMouseLeave }, childrenWithProps));
|
|
90
90
|
};
|
|
91
91
|
const PortalContextComponent = () => ReactDOM.createPortal(React.createElement(ContextComponent, null), document.querySelector(appendTo));
|
|
92
92
|
if (document.readyState === 'complete' && appendTo) {
|
|
@@ -102,8 +102,6 @@ ContextMenu.defaultProps = {
|
|
|
102
102
|
hideOnLeave: false,
|
|
103
103
|
preventHideOnResize: false,
|
|
104
104
|
preventHideOnScroll: false,
|
|
105
|
-
attributes: {},
|
|
106
|
-
className: '',
|
|
107
105
|
animation: 'fade',
|
|
108
106
|
onMouseLeave: () => null,
|
|
109
107
|
onHide: () => null,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ContextMenu.js","sourceRoot":"","sources":["../../../../src/components/context-menu/ContextMenu.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AACxE,OAAO,QAAQ,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC/D,OAAO,gBAAgB,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"ContextMenu.js","sourceRoot":"","sources":["../../../../src/components/context-menu/ContextMenu.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,20 +1,8 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
|
|
3
|
-
(
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
attributes: any;
|
|
9
|
-
className: any;
|
|
10
|
-
}): React.JSX.Element;
|
|
11
|
-
defaultProps: {
|
|
12
|
-
disabled: boolean;
|
|
13
|
-
preventClose: boolean;
|
|
14
|
-
attributes: {};
|
|
15
|
-
className: string;
|
|
16
|
-
onClick: () => any;
|
|
17
|
-
onItemHover: () => any;
|
|
18
|
-
};
|
|
19
|
-
};
|
|
2
|
+
interface IContextMenuItemProps {
|
|
3
|
+
onClick?(e: React.MouseEvent): void;
|
|
4
|
+
disabled?: boolean;
|
|
5
|
+
preventClose?: boolean;
|
|
6
|
+
}
|
|
7
|
+
declare const ContextMenuItem: React.FC<IContextMenuItemProps>;
|
|
20
8
|
export default ContextMenuItem;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React, { useCallback, useRef } from 'react';
|
|
2
2
|
import { callHideEvent } from './registerEvent';
|
|
3
|
-
const ContextMenuItem = ({ children, onClick, disabled, preventClose
|
|
3
|
+
const ContextMenuItem = ({ children, onClick, disabled, preventClose }) => {
|
|
4
4
|
const contextMenuItem = useRef(null);
|
|
5
5
|
const handleClickEvent = useCallback((e) => {
|
|
6
6
|
if (disabled)
|
|
@@ -9,15 +9,7 @@ const ContextMenuItem = ({ children, onClick, disabled, preventClose, attributes
|
|
|
9
9
|
if (!preventClose)
|
|
10
10
|
callHideEvent('ID_NOT_REQUIRED');
|
|
11
11
|
}, []);
|
|
12
|
-
return (React.createElement("div", { className: `${disabled ? 'contextmenu__item--disabled' : 'contextmenu__item'}`, onClick: handleClickEvent,
|
|
12
|
+
return (React.createElement("div", { className: `${disabled ? 'contextmenu__item--disabled' : 'contextmenu__item'}`, onClick: handleClickEvent, ref: contextMenuItem }, children));
|
|
13
13
|
};
|
|
14
14
|
export default ContextMenuItem;
|
|
15
|
-
ContextMenuItem.defaultProps = {
|
|
16
|
-
disabled: false,
|
|
17
|
-
preventClose: false,
|
|
18
|
-
attributes: {},
|
|
19
|
-
className: '',
|
|
20
|
-
onClick: () => null,
|
|
21
|
-
onItemHover: () => null
|
|
22
|
-
};
|
|
23
15
|
//# sourceMappingURL=ContextMenuItem.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ContextMenuItem.js","sourceRoot":"","sources":["../../../../src/components/context-menu/ContextMenuItem.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"ContextMenuItem.js","sourceRoot":"","sources":["../../../../src/components/context-menu/ContextMenuItem.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAQhD,MAAM,eAAe,GAAoC,CAAC,EACtD,QAAQ,EACR,OAAO,EACP,QAAQ,EACR,YAAY,EACf,EAAE,EAAE;IACD,MAAM,eAAe,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;IAErC,MAAM,gBAAgB,GAAG,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE;QACvC,IAAI,QAAQ;YAAE,OAAO;QACrB,OAAO,CAAC,CAAC,CAAC,CAAC;QAEX,IAAI,CAAC,YAAY;YAAE,aAAa,CAAC,iBAAiB,CAAC,CAAC;IACxD,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,CACH,6BACI,SAAS,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,6BAA6B,CAAC,CAAC,CAAC,mBAAmB,EAAE,EAC9E,OAAO,EAAE,gBAAgB,EACzB,GAAG,EAAE,eAAe,IACnB,QAAQ,CACP,CACT,CAAC;AACN,CAAC,CAAC;AAEF,eAAe,eAAe,CAAC"}
|
|
@@ -1,18 +1,8 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
disable: any;
|
|
9
|
-
}): React.JSX.Element;
|
|
10
|
-
defaultProps: {
|
|
11
|
-
attributes: {};
|
|
12
|
-
disable: boolean;
|
|
13
|
-
renderTag: string;
|
|
14
|
-
disableWhileShiftPressed: boolean;
|
|
15
|
-
className: string;
|
|
16
|
-
};
|
|
17
|
-
};
|
|
2
|
+
interface IContextMenuTriggerProps {
|
|
3
|
+
id: string;
|
|
4
|
+
disableWhileShiftPressed?: boolean;
|
|
5
|
+
disable?: boolean;
|
|
6
|
+
}
|
|
7
|
+
declare const ContextMenuTrigger: React.FC<IContextMenuTriggerProps>;
|
|
18
8
|
export default ContextMenuTrigger;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React, { useRef, useCallback } from 'react';
|
|
2
2
|
import { callShowEvent, callHideEvent } from './registerEvent';
|
|
3
|
-
const ContextMenuTrigger = ({ children, id, disableWhileShiftPressed,
|
|
3
|
+
const ContextMenuTrigger = ({ children, id, disableWhileShiftPressed, disable }) => {
|
|
4
4
|
const menuTrigger = useRef(null);
|
|
5
5
|
const handleContextMenu = useCallback((e) => {
|
|
6
6
|
if (disable)
|
|
@@ -21,14 +21,7 @@ const ContextMenuTrigger = ({ children, id, disableWhileShiftPressed, attributes
|
|
|
21
21
|
};
|
|
22
22
|
callShowEvent(opts);
|
|
23
23
|
}, []);
|
|
24
|
-
return (React.createElement("div", { className: 'menu-trigger', ref: menuTrigger,
|
|
24
|
+
return (React.createElement("div", { className: 'menu-trigger', ref: menuTrigger, onContextMenu: (e) => handleContextMenu(e) }, children));
|
|
25
25
|
};
|
|
26
26
|
export default ContextMenuTrigger;
|
|
27
|
-
ContextMenuTrigger.defaultProps = {
|
|
28
|
-
attributes: {},
|
|
29
|
-
disable: false,
|
|
30
|
-
renderTag: 'div',
|
|
31
|
-
disableWhileShiftPressed: false,
|
|
32
|
-
className: ''
|
|
33
|
-
};
|
|
34
27
|
//# sourceMappingURL=ContextMenuTrigger.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ContextMenuTrigger.js","sourceRoot":"","sources":["../../../../src/components/context-menu/ContextMenuTrigger.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"ContextMenuTrigger.js","sourceRoot":"","sources":["../../../../src/components/context-menu/ContextMenuTrigger.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAQ/D,MAAM,kBAAkB,GAAuC,CAAC,EAC5D,QAAQ,EACR,EAAE,EACF,wBAAwB,EACxB,OAAO,EACV,EAAE,EAAE;IACD,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;IAEjC,MAAM,iBAAiB,GAAG,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE;QACxC,IAAI,OAAO;YAAE,OAAO;QACpB,IAAI,wBAAwB,IAAI,CAAC,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC;YACrD,aAAa,CAAC,EAAE,CAAC,CAAC;YAClB,OAAO;QACX,CAAC;QACD,CAAC,CAAC,cAAc,EAAE,CAAC;QACnB,CAAC,CAAC,eAAe,EAAE,CAAC;QAEpB,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC,WAAW,CAAC;QAC3C,MAAM,IAAI,GAAG;YACT,QAAQ,EAAE;gBACN,OAAO;gBACP,OAAO;aACV;YACD,EAAE;SACL,CAAC;QAEF,aAAa,CAAC,IAAI,CAAC,CAAC;IACxB,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,CACH,6BACI,SAAS,EAAC,cAAc,EACxB,GAAG,EAAE,WAAW,EAChB,aAAa,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,CAAC,CAAC,IACzC,QAAQ,CACP,CACT,CAAC;AACN,CAAC,CAAC;AAEF,eAAe,kBAAkB,CAAC"}
|