From c5085190745d074d7d765b2d13421a11f8dce72a Mon Sep 17 00:00:00 2001 From: samueljd Date: Fri, 26 May 2023 22:20:08 +0530 Subject: [PATCH] inserting xref and footnote --- package.json | 6 +- renderer/public/icons/Xelah/Copy.svg | 3 + renderer/public/icons/Xelah/Paste.svg | 3 + .../components/EditorPage/Scribex/Buttons.jsx | 32 +- .../components/EditorPage/Scribex/Editor.jsx | 78 +- .../{FootNoteEditor.jsx => GraftEditor.jsx} | 2 +- .../EditorPage/Scribex/InsertMenu.jsx | 57 + .../components/EditorPage/Scribex/Popup.jsx | 6 +- .../EditorPage/Scribex/RecursiveBlock.jsx | 12 +- .../components/EditorPage/Scribex/Scribex.jsx | 17 +- .../src/components/hooks/scribex/usePerf.js | 30 +- .../biblenavigation/BibleNavigationXref.js | 236 + .../modules/editorsidebar/CrossReferences.js | 86 +- .../editorsidebar/EditCrossReference.js | 14 +- .../modules/editorsidebar/EditorSideBar.js | 10 +- .../{FootNoteEditor.jsx => GraftEditor.jsx} | 7 +- renderer/src/util/cursorUtils.js | 52 +- styles/globals.css | 23 +- yarn.lock | 5164 ++++++++++++++++- 19 files changed, 5563 insertions(+), 275 deletions(-) create mode 100644 renderer/public/icons/Xelah/Copy.svg create mode 100644 renderer/public/icons/Xelah/Paste.svg rename renderer/src/components/EditorPage/Scribex/{FootNoteEditor.jsx => GraftEditor.jsx} (96%) create mode 100644 renderer/src/components/EditorPage/Scribex/InsertMenu.jsx create mode 100644 renderer/src/modules/biblenavigation/BibleNavigationXref.js rename renderer/src/modules/editorsidebar/{FootNoteEditor.jsx => GraftEditor.jsx} (84%) diff --git a/package.json b/package.json index b9444866..83694507 100644 --- a/package.json +++ b/package.json @@ -141,7 +141,8 @@ "electron-log": "4.4.7", "electron-next": "^3.1.5", "electron-updater": "^5.0.1", - "epitelete-html": "0.2.19-beta.1", + "epitelete": "0.2.20-beta.1", + "epitelete-html": "0.2.20-beta.2", "eslint-import-resolver-alias": "^1.1.2", "font-list": "^1.4.5", "fs-extra": "^10.1.0", @@ -168,6 +169,7 @@ "raw-loader": "^4.0.2", "react": "^18.2.0", "react-dom": "^18.2.0", + "react-hotkeys-hook": "^4.4.0", "react-i18next": "^11.17.1", "react-media-recorder": "^1.6.6", "react-scripts": "5.0.1", @@ -198,4 +200,4 @@ "word-aligner": "$word-aligner", "@mui/lab": "$@mui/lab" } -} +} \ No newline at end of file diff --git a/renderer/public/icons/Xelah/Copy.svg b/renderer/public/icons/Xelah/Copy.svg new file mode 100644 index 00000000..6c6be15e --- /dev/null +++ b/renderer/public/icons/Xelah/Copy.svg @@ -0,0 +1,3 @@ + + + diff --git a/renderer/public/icons/Xelah/Paste.svg b/renderer/public/icons/Xelah/Paste.svg new file mode 100644 index 00000000..e1da9114 --- /dev/null +++ b/renderer/public/icons/Xelah/Paste.svg @@ -0,0 +1,3 @@ + + + diff --git a/renderer/src/components/EditorPage/Scribex/Buttons.jsx b/renderer/src/components/EditorPage/Scribex/Buttons.jsx index fcdf7b62..83604558 100644 --- a/renderer/src/components/EditorPage/Scribex/Buttons.jsx +++ b/renderer/src/components/EditorPage/Scribex/Buttons.jsx @@ -8,6 +8,9 @@ import Bars4Icon from '@/icons/Xelah/Bars4.svg'; import ArrowUturnLeftIcon from '@/icons/Xelah/ArrowUturnLeft.svg'; import ArrowUturnRightIcon from '@/icons/Xelah/ArrowUturnRight.svg'; import PencilIcon from '@/icons/Common/Pencil.svg'; +import Copy from '@/icons/Xelah/Copy.svg'; +import Paste from '@/icons/Xelah/Paste.svg'; +import { copyText, pasteText } from '@/util/cursorUtils'; export const classNames = (...classes) => classes.filter(Boolean).join(' '); @@ -53,7 +56,7 @@ export default function Buttons(props) { sectionable ? 'fill-current' : '', 'h-5 mr-2 w-5 text-white cursor-pointer', )} - aria-hidden="true" + // aria-hidden="true" onClick={onSectionable} title={ sectionable ? 'Expand all Chapters' : 'Collapse Chapters' @@ -66,7 +69,7 @@ export default function Buttons(props) { editable ? 'fill-current' : '', 'h-5 mr-2 w-5 text-white cursor-pointer', )} - aria-hidden="true" + // aria-hidden="true" onClick={onEditable} title={editable ? 'Disable Edit' : 'Enable Edit'} /> @@ -74,7 +77,7 @@ export default function Buttons(props) {