/* This file is part of the Notesnook project (https://notesnook.com/) Copyright (C) 2023 Streetwriters (Private) Limited This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . */ import React from "react"; import { ActivityIndicator, useWindowDimensions, View } from "react-native"; import { notesnook } from "../../../e2e/test.ids"; import useGlobalSafeAreaInsets from "../../hooks/use-global-safe-area-insets"; import { useTip } from "../../services/tip-manager"; import { useSettingStore } from "../../stores/use-setting-store"; import { useThemeColors } from "@notesnook/theme"; import { ColorValues } from "../../utils/colors"; import { SIZE } from "../../utils/size"; import { Tip } from "../tip"; import { Button } from "../ui/button"; import Seperator from "../ui/seperator"; import Heading from "../ui/typography/heading"; import Paragraph from "../ui/typography/paragraph"; export const Empty = React.memo( function Empty({ loading = true, placeholderData, headerProps, type, screen }) { const { colors } = useThemeColors(); const insets = useGlobalSafeAreaInsets(); const { height } = useWindowDimensions(); const introCompleted = useSettingStore( (state) => state.settings.introCompleted ); const tip = useTip( screen === "Notes" && introCompleted ? "first-note" : placeholderData.type || type, screen === "Notes" ? "notes" : null ); return ( {!loading ? ( <> {placeholderData.button && (