Skip to content

Commit d11ce46

Browse files
committed
inline use-neo4j
1 parent 42b196a commit d11ce46

23 files changed

+325
-549
lines changed

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,7 @@
7373
"mui-color": "^2.0.0-beta.2",
7474
"mui-nested-menu": "^3.2.1",
7575
"neo4j-client-sso": "^1.2.2",
76+
"neo4j-driver": "^4.4.5",
7677
"openai": "^3.3.0",
7778
"postcss": "^8.4.21",
7879
"postcss-loader": "^7.2.4",
@@ -101,7 +102,6 @@
101102
"tailwindcss": "^3.3.2",
102103
"three": "^0.159.0",
103104
"three-spritetext": "^1.8.1",
104-
"use-neo4j": "^0.3.13",
105105
"yaml": "^2.2.1"
106106
},
107107
"devDependencies": {

src/application/ApplicationThunks.ts

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
import { createDriver } from 'use-neo4j';
21
import { initializeSSO } from '../component/sso/SSOUtils';
32
import { DEFAULT_SCREEN, Screens } from '../config/ApplicationConfig';
43
import { setDashboard } from '../dashboard/DashboardActions';
@@ -10,43 +9,44 @@ import {
109
loadDashboardThunk,
1110
upgradeDashboardVersion,
1211
} from '../dashboard/DashboardThunks';
12+
import { version } from '../modal/AboutModal';
1313
import { createNotificationThunk } from '../page/PageThunks';
1414
import { runCypherQuery } from '../report/ReportQueryRunner';
1515
import {
1616
setPageNumberThunk,
1717
updateGlobalParametersThunk,
1818
updateSessionParameterThunk,
1919
} from '../settings/SettingsThunks';
20+
import { createDriver } from '../use-neo4j';
21+
import { createUUID } from '../utils/uuid';
2022
import {
23+
clearDesktopConnectionProperties,
24+
clearNotification,
25+
resetShareDetails,
26+
setAboutModalOpen,
2127
setConnected,
2228
setConnectionModalOpen,
2329
setConnectionProperties,
24-
setDesktopConnectionProperties,
25-
resetShareDetails,
26-
setShareDetailsFromUrl,
27-
setWelcomeScreenOpen,
30+
setCustomHeader,
2831
setDashboardToLoadAfterConnecting,
32+
setDesktopConnectionProperties,
33+
setDraft,
2934
setOldDashboard,
30-
clearDesktopConnectionProperties,
31-
clearNotification,
35+
setParametersToLoadAfterConnecting,
36+
setReportHelpModalOpen,
3237
setSSOEnabled,
3338
setSSOProviders,
39+
setShareDetailsFromUrl,
40+
setStandaloneDashboardDatabase,
3441
setStandaloneEnabled,
35-
setAboutModalOpen,
3642
setStandaloneMode,
37-
setStandaloneDashboardDatabase,
3843
setWaitForSSO,
39-
setParametersToLoadAfterConnecting,
40-
setReportHelpModalOpen,
41-
setDraft,
42-
setCustomHeader,
44+
setWelcomeScreenOpen,
4345
} from './ApplicationActions';
44-
import { setLoggingMode, setLoggingDatabase, setLogErrorNotification } from './logging/LoggingActions';
45-
import { version } from '../modal/AboutModal';
4646
import { applicationIsStandalone } from './ApplicationSelectors';
47+
import { setLogErrorNotification, setLoggingDatabase, setLoggingMode } from './logging/LoggingActions';
4748
import { applicationGetLoggingSettings } from './logging/LoggingSelectors';
4849
import { createLogThunk } from './logging/LoggingThunk';
49-
import { createUUID } from '../utils/uuid';
5050

5151
/**
5252
* Application Thunks (https://redux.js.org/usage/writing-logic-thunks) handle complex state manipulations.

src/card/Card.tsx

Lines changed: 22 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,35 +1,35 @@
11
import { Card, Collapse, debounce } from '@mui/material';
2+
import { Dialog } from '@neo4j-ndl/react';
23
import React, { useCallback, useContext, useEffect, useState } from 'react';
3-
import NeoCardSettings from './settings/CardSettings';
4-
import NeoCardView from './view/CardView';
4+
import useDimensions from 'react-cool-dimensions';
55
import { connect } from 'react-redux';
6-
import {
7-
updateFieldsThunk,
8-
updateSelectionThunk,
9-
updateReportQueryThunk,
10-
toggleCardSettingsThunk,
11-
updateReportSettingThunk,
12-
updateReportTitleThunk,
13-
updateReportTypeThunk,
14-
updateReportDatabaseThunk,
15-
} from './CardThunks';
16-
import { toggleReportSettings } from './CardActions';
17-
import { getReportState } from './CardSelectors';
6+
import { setReportHelpModalOpen } from '../application/ApplicationActions';
7+
import { downloadComponentAsImage } from '../chart/ChartUtils';
8+
import { getDashboardExtensions } from '../dashboard/DashboardSelectors';
9+
import { loadDatabaseListFromNeo4jThunk } from '../dashboard/DashboardThunks';
10+
import { createNotificationThunk } from '../page/PageThunks';
1811
import {
1912
getDashboardIsEditable,
2013
getDatabase,
2114
getGlobalParameters,
2215
getSessionParameters,
2316
} from '../settings/SettingsSelectors';
2417
import { updateGlobalParameterThunk } from '../settings/SettingsThunks';
25-
import useDimensions from 'react-cool-dimensions';
26-
import { setReportHelpModalOpen } from '../application/ApplicationActions';
27-
import { loadDatabaseListFromNeo4jThunk } from '../dashboard/DashboardThunks';
28-
import { Neo4jContext, Neo4jContextState } from 'use-neo4j/dist/neo4j.context';
29-
import { getDashboardExtensions } from '../dashboard/DashboardSelectors';
30-
import { downloadComponentAsImage } from '../chart/ChartUtils';
31-
import { Dialog } from '@neo4j-ndl/react';
32-
import { createNotificationThunk } from '../page/PageThunks';
18+
import { Neo4jContext, Neo4jContextState } from '../use-neo4j';
19+
import { toggleReportSettings } from './CardActions';
20+
import { getReportState } from './CardSelectors';
21+
import {
22+
toggleCardSettingsThunk,
23+
updateFieldsThunk,
24+
updateReportDatabaseThunk,
25+
updateReportQueryThunk,
26+
updateReportSettingThunk,
27+
updateReportTitleThunk,
28+
updateReportTypeThunk,
29+
updateSelectionThunk,
30+
} from './CardThunks';
31+
import NeoCardSettings from './settings/CardSettings';
32+
import NeoCardView from './view/CardView';
3333

3434
const NeoCard = ({
3535
id, // id of the card.

src/chart/parameter/ParameterSelectCardSettings.tsx

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
// TODO: this file (in a way) belongs to chart/parameter/ParameterSelectionChart. It would make sense to move it there
22

3+
import { Autocomplete, TextField, debounce } from '@mui/material';
4+
import { Dropdown } from '@neo4j-ndl/react';
35
import React, { useCallback, useContext, useEffect } from 'react';
6+
import NeoCodeEditorComponent from '../../component/editor/CodeEditorComponent';
7+
import NeoField from '../../component/field/Field';
48
import { RUN_QUERY_DELAY_MS } from '../../config/ReportConfig';
59
import { QueryStatus, runCypherQuery } from '../../report/ReportQueryRunner';
6-
import { Neo4jContext, Neo4jContextState } from 'use-neo4j/dist/neo4j.context';
7-
import { Autocomplete, debounce, TextField } from '@mui/material';
8-
import NeoField from '../../component/field/Field';
9-
import { Dropdown } from '@neo4j-ndl/react';
10-
import NeoCodeEditorComponent from '../../component/editor/CodeEditorComponent';
10+
import { Neo4jContext, Neo4jContextState } from '../../use-neo4j';
1111

1212
type ParameterId = string | undefined | null;
1313

src/component/misc/DashboardConnectionUpdateHandler.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
import { useConnection } from 'use-neo4j';
2-
import React from 'react';
31
import isEqual from 'lodash.isequal';
2+
import React from 'react';
3+
import { useConnection } from '../../use-neo4j';
44
/**
55
* Updates the Neo4j context when noticing an update in the global connection state.
66
* TODO - there's probably a better way to do this, but I'm not sure how at the moment.

src/dashboard/Dashboard.tsx

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,16 @@
11
import React from 'react';
2-
import NeoPage from '../page/Page';
3-
import NeoDashboardHeader from './header/DashboardHeader';
4-
import NeoDashboardTitle from './header/DashboardTitle';
5-
import NeoDashboardHeaderPageList from './header/DashboardHeaderPageList';
6-
import { createDriver, Neo4jProvider } from 'use-neo4j';
7-
import { applicationGetConnection, applicationGetStandaloneSettings } from '../application/ApplicationSelectors';
82
import { connect } from 'react-redux';
3+
import { applicationGetConnection, applicationGetStandaloneSettings } from '../application/ApplicationSelectors';
94
import NeoDashboardConnectionUpdateHandler from '../component/misc/DashboardConnectionUpdateHandler';
5+
import { version } from '../modal/AboutModal';
6+
import NeoPage from '../page/Page';
107
import { forceRefreshPage } from '../page/PageActions';
11-
import { getPageNumber } from '../settings/SettingsSelectors';
128
import { createNotificationThunk } from '../page/PageThunks';
13-
import { version } from '../modal/AboutModal';
9+
import { getPageNumber } from '../settings/SettingsSelectors';
10+
import { createDriver, Neo4jProvider } from '../use-neo4j';
11+
import NeoDashboardHeader from './header/DashboardHeader';
12+
import NeoDashboardHeaderPageList from './header/DashboardHeaderPageList';
13+
import NeoDashboardTitle from './header/DashboardTitle';
1414
import NeoDashboardSidebar from './sidebar/DashboardSidebar';
1515

1616
const Dashboard = ({

src/dashboard/sidebar/DashboardSidebar.tsx

Lines changed: 22 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,30 @@
1-
import React, { useContext, useState } from 'react';
2-
import { connect } from 'react-redux';
3-
import { getDashboardIsEditable, getPageNumber } from '../../settings/SettingsSelectors';
4-
import { getDashboardSettings, getDashboardTitle } from '../DashboardSelectors';
51
import { Button, SideNavigation, SideNavigationGroupHeader, SideNavigationList, TextInput } from '@neo4j-ndl/react';
6-
import { removeReportThunk } from '../../page/PageThunks';
72
import {
8-
PlusIconOutline,
9-
MagnifyingGlassIconOutline,
10-
CircleStackIconOutline,
113
ArrowPathIconOutline,
4+
CircleStackIconOutline,
5+
MagnifyingGlassIconOutline,
6+
PlusIconOutline,
127
} from '@neo4j-ndl/react/icons';
8+
import React, { useContext, useState } from 'react';
9+
import { connect } from 'react-redux';
10+
import { removeReportThunk } from '../../page/PageThunks';
11+
import { getDashboardIsEditable, getPageNumber } from '../../settings/SettingsSelectors';
12+
import { getDashboardSettings, getDashboardTitle } from '../DashboardSelectors';
1313

1414
import Tooltip from '@mui/material/Tooltip';
15-
import { DashboardSidebarListItem } from './DashboardSidebarListItem';
15+
import { setDraft } from '../../application/ApplicationActions';
1616
import {
1717
applicationGetConnection,
1818
applicationGetConnectionDatabase,
1919
applicationGetStandaloneSettings,
2020
applicationIsStandalone,
2121
dashboardIsDraft,
2222
} from '../../application/ApplicationSelectors';
23-
import { setDraft } from '../../application/ApplicationActions';
24-
import NeoDashboardSidebarLoadModal from './modal/DashboardSidebarLoadModal';
23+
import { getDashboardJson } from '../../modal/ModalSelectors';
24+
import { Neo4jContext, Neo4jContextState } from '../../use-neo4j';
25+
import { createUUID } from '../../utils/uuid';
2526
import { resetDashboardState } from '../DashboardActions';
26-
import NeoDashboardSidebarCreateModal from './modal/DashboardSidebarCreateModal';
27-
import NeoDashboardSidebarDatabaseMenu from './menu/DashboardSidebarDatabaseMenu';
28-
import NeoDashboardSidebarDashboardMenu from './menu/DashboardSidebarDashboardMenu';
27+
import { NEODASH_VERSION } from '../DashboardReducer';
2928
import {
3029
deleteDashboardFromNeo4jThunk,
3130
loadDashboardFromNeo4jThunk,
@@ -34,19 +33,20 @@ import {
3433
loadDatabaseListFromNeo4jThunk,
3534
saveDashboardToNeo4jThunk,
3635
} from '../DashboardThunks';
37-
import { Neo4jContext, Neo4jContextState } from 'use-neo4j/dist/neo4j.context';
38-
import NeoDashboardSidebarSaveModal from './modal/DashboardSidebarSaveModal';
39-
import { getDashboardJson } from '../../modal/ModalSelectors';
36+
import { DashboardSidebarListItem } from './DashboardSidebarListItem';
4037
import NeoDashboardSidebarCreateMenu from './menu/DashboardSidebarCreateMenu';
41-
import NeoDashboardSidebarImportModal from './modal/DashboardSidebarImportModal';
42-
import { createUUID } from '../../utils/uuid';
43-
import NeoDashboardSidebarExportModal from './modal/DashboardSidebarExportModal';
38+
import NeoDashboardSidebarDashboardMenu from './menu/DashboardSidebarDashboardMenu';
39+
import NeoDashboardSidebarDatabaseMenu from './menu/DashboardSidebarDatabaseMenu';
40+
import NeoDashboardSidebarAccessModal from './modal/DashboardSidebarAccessModal';
41+
import NeoDashboardSidebarCreateModal from './modal/DashboardSidebarCreateModal';
4442
import NeoDashboardSidebarDeleteModal from './modal/DashboardSidebarDeleteModal';
43+
import NeoDashboardSidebarExportModal from './modal/DashboardSidebarExportModal';
44+
import NeoDashboardSidebarImportModal from './modal/DashboardSidebarImportModal';
4545
import NeoDashboardSidebarInfoModal from './modal/DashboardSidebarInfoModal';
46+
import NeoDashboardSidebarLoadModal from './modal/DashboardSidebarLoadModal';
47+
import NeoDashboardSidebarSaveModal from './modal/DashboardSidebarSaveModal';
4648
import NeoDashboardSidebarShareModal from './modal/DashboardSidebarShareModal';
47-
import NeoDashboardSidebarAccessModal from './modal/DashboardSidebarAccessModal';
4849
import LegacyShareModal from './modal/legacy/LegacyShareModal';
49-
import { NEODASH_VERSION } from '../DashboardReducer';
5050

5151
// Which (small) pop-up menu is currently open for the sidebar.
5252
enum Menu {

src/dashboard/sidebar/modal/DashboardSidebarAccessModal.tsx

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
1-
import React, { useEffect, useState, useContext } from 'react';
2-
import { IconButton, Button, Dialog, TextInput } from '@neo4j-ndl/react';
3-
import { Menu, MenuItem, Chip } from '@mui/material';
4-
import { Neo4jContext, Neo4jContextState } from 'use-neo4j/dist/neo4j.context';
1+
import { Chip, Menu, MenuItem } from '@mui/material';
2+
import { Button, Dialog, IconButton, TextInput } from '@neo4j-ndl/react';
53
import { PlusCircleIconOutline } from '@neo4j-ndl/react/icons';
6-
import { QueryStatus, runCypherQuery } from '../../../report/ReportQueryRunner';
7-
import { createNotificationThunk } from '../../../page/PageThunks';
4+
import React, { useContext, useEffect, useState } from 'react';
85
import { useDispatch } from 'react-redux';
6+
import { createNotificationThunk } from '../../../page/PageThunks';
7+
import { QueryStatus, runCypherQuery } from '../../../report/ReportQueryRunner';
8+
import { Neo4jContext, Neo4jContextState } from '../../../use-neo4j';
99
/**
1010
* Configures setting the current Neo4j database connection for the dashboard.
1111
* @param open - Whether the modal is open or not.

src/dashboard/sidebar/modal/legacy/LegacyShareModal.tsx

Lines changed: 4 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,12 @@
11
import React, { useContext } from 'react';
22

3+
import { Button, Dialog, TextLink } from '@neo4j-ndl/react';
4+
import { PlayIconSolid, ShareIconOutline } from '@neo4j-ndl/react/icons';
35
import { connect } from 'react-redux';
4-
import { DataGrid } from '@mui/x-data-grid';
5-
import { Neo4jContext, Neo4jContextState } from 'use-neo4j/dist/neo4j.context';
6-
import NeoSetting from '../../../../component/field/Setting';
76
import { applicationGetConnection } from '../../../../application/ApplicationSelectors';
7+
import NeoSetting from '../../../../component/field/Setting';
88
import { SELECTION_TYPES } from '../../../../config/CardConfig';
9-
import { MenuItem, Button, Dialog, Dropdown, TextLink } from '@neo4j-ndl/react';
10-
import {
11-
ShareIconOutline,
12-
PlayIconSolid,
13-
DocumentCheckIconOutline,
14-
DatabaseAddCircleIcon,
15-
} from '@neo4j-ndl/react/icons';
9+
import { Neo4jContext, Neo4jContextState } from '../../../../use-neo4j';
1610

1711
const shareBaseURL = 'http://neodash.graphapp.io';
1812
const shareLocalURL = window.location.origin.startsWith('file') ? shareBaseURL : window.location.origin;

src/extensions/forms/settings/NeoFormCardSettings.tsx

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
// TODO: this file (in a way) belongs to chart/parameter/ParameterSelectionChart. It would make sense to move it there
22

3+
import { Banner, IconButton } from '@neo4j-ndl/react';
4+
import { PencilIconOutline, PlusIconOutline, XMarkIconOutline } from '@neo4j-ndl/react/icons';
5+
import debounce from 'lodash/debounce';
36
import React, { useCallback, useContext, useEffect } from 'react';
4-
import { Neo4jContext, Neo4jContextState } from 'use-neo4j/dist/neo4j.context';
57
import NeoCodeEditorComponent, {
68
DEFAULT_CARD_SETTINGS_HELPER_TEXT_STYLE,
79
} from '../../../component/editor/CodeEditorComponent';
8-
import debounce from 'lodash/debounce';
9-
import { Banner, IconButton } from '@neo4j-ndl/react';
10-
import { PencilIconOutline, PlusIconOutline, XMarkIconOutline } from '@neo4j-ndl/react/icons';
10+
import { Neo4jContext, Neo4jContextState } from '../../../use-neo4j';
1111
import NeoFormCardSettingsModal from './NeoFormCardSettingsModal';
1212
import { SortableList } from './list/NeoFormSortableList';
1313

0 commit comments

Comments
 (0)