2022-08-26 16:19:39 +05:00
|
|
|
import { FlatList, View } from "react-native";
|
|
|
|
|
import { useSelectionStore } from "../../stores/use-selection-store";
|
|
|
|
|
import { useMessageStore } from "../../stores/use-message-store";
|
|
|
|
|
import { useThemeStore } from "../../stores/use-theme-store";
|
|
|
|
|
import { allowedOnPlatform, renderItem } from "./functions";
|
2021-11-23 15:06:35 +05:00
|
|
|
|
2022-01-22 12:57:05 +05:00
|
|
|
export const Announcement = ({ color }) => {
|
2022-08-26 16:19:39 +05:00
|
|
|
const colors = useThemeStore((state) => state.colors);
|
|
|
|
|
const announcements = useMessageStore((state) => state.announcements);
|
2021-11-23 15:06:35 +05:00
|
|
|
let announcement = announcements.length > 0 ? announcements[0] : null;
|
2022-08-26 16:19:39 +05:00
|
|
|
const selectionMode = useSelectionStore((state) => state.selectionMode);
|
2021-11-23 15:06:35 +05:00
|
|
|
return !announcement || selectionMode ? null : (
|
|
|
|
|
<View
|
|
|
|
|
style={{
|
|
|
|
|
backgroundColor: colors.bg,
|
2022-08-26 16:19:39 +05:00
|
|
|
width: "100%",
|
2022-03-10 23:23:36 +05:00
|
|
|
paddingHorizontal: 12,
|
|
|
|
|
paddingTop: 12,
|
|
|
|
|
paddingBottom: 12
|
2022-01-22 12:57:05 +05:00
|
|
|
}}
|
|
|
|
|
>
|
2021-11-23 15:06:35 +05:00
|
|
|
<View
|
|
|
|
|
style={{
|
2022-08-26 16:19:39 +05:00
|
|
|
width: "100%",
|
2021-11-23 15:06:35 +05:00
|
|
|
borderRadius: 10,
|
2022-08-26 16:19:39 +05:00
|
|
|
overflow: "hidden",
|
2022-07-19 19:09:06 +05:00
|
|
|
backgroundColor: colors.nav,
|
|
|
|
|
paddingBottom: 12
|
2022-01-22 12:57:05 +05:00
|
|
|
}}
|
|
|
|
|
>
|
2021-11-23 15:06:35 +05:00
|
|
|
<View>
|
|
|
|
|
<FlatList
|
|
|
|
|
style={{
|
2022-08-26 16:19:39 +05:00
|
|
|
width: "100%",
|
2022-03-10 23:23:36 +05:00
|
|
|
marginTop: 12
|
2021-11-23 15:06:35 +05:00
|
|
|
}}
|
2022-08-26 16:19:39 +05:00
|
|
|
data={announcement?.body.filter((item) =>
|
|
|
|
|
allowedOnPlatform(item.platforms)
|
|
|
|
|
)}
|
2022-01-22 12:57:05 +05:00
|
|
|
renderItem={({ item, index }) =>
|
2022-08-26 16:19:39 +05:00
|
|
|
renderItem({
|
|
|
|
|
item: item,
|
|
|
|
|
index: index,
|
|
|
|
|
color: colors[color],
|
|
|
|
|
inline: true
|
|
|
|
|
})
|
2021-11-23 15:06:35 +05:00
|
|
|
}
|
|
|
|
|
/>
|
|
|
|
|
</View>
|
|
|
|
|
</View>
|
|
|
|
|
</View>
|
|
|
|
|
);
|
|
|
|
|
};
|