From a646450b0504b96a41c0cf71ec08dbdabceb634e Mon Sep 17 00:00:00 2001 From: Ammar Ahmed Date: Thu, 30 Nov 2023 11:21:12 +0500 Subject: [PATCH] mobile: migrate share extension --- .../app/components/properties/notebooks.js | 36 +- apps/mobile/app/utils/note-bundle.js | 42 +- apps/mobile/e2e/tests/vault.e2e.js | 2 + apps/mobile/share/add-notebooks.jsx | 139 +++++ apps/mobile/share/add-tags.jsx | 133 +++++ apps/mobile/share/search.js | 391 ------------- apps/mobile/share/search.tsx | 548 ++++++++++++++++++ apps/mobile/share/share.js | 218 +------ 8 files changed, 859 insertions(+), 650 deletions(-) create mode 100644 apps/mobile/share/add-notebooks.jsx create mode 100644 apps/mobile/share/add-tags.jsx delete mode 100644 apps/mobile/share/search.js create mode 100644 apps/mobile/share/search.tsx diff --git a/apps/mobile/app/components/properties/notebooks.js b/apps/mobile/app/components/properties/notebooks.js index 1d7c27f2d..abbf38221 100644 --- a/apps/mobile/app/components/properties/notebooks.js +++ b/apps/mobile/app/components/properties/notebooks.js @@ -28,31 +28,35 @@ import { eClearEditor } from "../../utils/events"; import { SIZE } from "../../utils/size"; import { Button } from "../ui/button"; import Heading from "../ui/typography/heading"; +import { PressableButton } from "../ui/pressable"; export default function Notebooks({ note, close, full }) { const { colors } = useThemeColors(); - async function getNotebooks(item) { - let filteredNotebooks = []; - const relations = await db.relations.to(note, "notebook").resolve(); - filteredNotebooks.push(relations); - if (!item.notebooks || item.notebooks.length < 1) return filteredNotebooks; - return filteredNotebooks; + async function getNotebooks() { + let filteredNotebooks = await db.relations.to(note, "notebook").resolve(); + return filteredNotebooks || []; } const [noteNotebooks, setNoteNotebooks] = useState([]); useEffect(() => { getNotebooks().then((notebooks) => setNoteNotebooks(notebooks)); }); - const navigateNotebook = (id) => { - let item = db.notebooks.notebook(id)?.data; + const navigateNotebook = async (id) => { + let item = await db.notebooks.notebook(id); if (!item) return; NotebookScreen.navigate(item, true); }; const renderItem = (item) => ( - { + navigateNotebook(item.id); + eSendEvent(eClearEditor); + close(); + }} + type={full ? "transparent" : "grayBg"} + customStyle={{ justifyContent: "flex-start", paddingHorizontal: 12, flexDirection: "row", @@ -60,10 +64,7 @@ export default function Notebooks({ note, close, full }) { flexShrink: 1, flexGrow: 1, padding: 6, - borderWidth: full ? 0 : 1, - borderColor: colors.primary.background, borderRadius: 10, - backgroundColor: full ? "transparent" : colors.secondary.background, minHeight: 42 }} > @@ -81,15 +82,10 @@ export default function Notebooks({ note, close, full }) { maxWidth: "50%" }} size={SIZE.sm} - onPress={() => { - navigateNotebook(item.id); - eSendEvent(eClearEditor); - close(); - }} > {item.title} - + ); return noteNotebooks.length === 0 ? null : ( @@ -106,7 +102,7 @@ export default function Notebooks({ note, close, full }) { {noteNotebooks.length > 1 && !full ? (