import React from "react" import { Scrollbars } from 'react-custom-scrollbars' import { Block } from "baseui/block" import { useEffect, useState } from 'react' import ListLoadingPlaceholder from '~/components/ListLoadingPlaceholder' import { Text,Box, TapArea, Column, Mask } from "gestalt" import { HeaderText, TransformImage } from "geru-components" import { useMediaQuery } from 'react-responsive' import { useEditor, useActiveObject } from "@layerhub-io/react" import { colors } from 'geru-components/dist/utils' import {fetchPacks} from "../../../utils/services" import { currencyFormat, getImageDimensions } from '../../../utils/helper' import useAppContext from '~/hooks/useAppContext' import { motion, LayoutGroup } from 'framer-motion' export default function () { const editor = useEditor() const [fetching, setFetching] = useState(false) const [objects, setObjects] = useState([]) const { setIsShowMobileModal, dimensions, setIsAssetLoading, stickerParams } = useAppContext() const activeObject = useActiveObject() useEffect(() => { getStickers() }, [stickerParams]) const getStickers = () => { setFetching(true) fetchPacks({}) .then(res => { if(res.data.code == 0) { setObjects(res.data.packs) } }) .catch(err => console.log(err)) .then(() => setFetching(false)) } const addImateToCanvas = async (item) => { setIsAssetLoading(true) let adjustScale = 1 const recommendedSize = Math.ceil(dimensions.height / 2) const { height } = await getImageDimensions(item.url) adjustScale = recommendedSize / height const options = { type: "StaticImage", src: item.url, scaleX: adjustScale, scaleY: adjustScale } editor.objects.add(options) setIsShowMobileModal(false) setIsAssetLoading(false) } const addObject = (item) => { if (editor) { addImateToCanvas(item) } } const isTabletOrMobile = useMediaQuery({ query: '(max-width: 1224px)' }) if(isTabletOrMobile){ return (