component.tsx 1.1 KB

1234567891011121314151617181920212223242526272829303132333435
  1. import { string } from "vue-types";
  2. import { useCompData } from ".";
  3. import { Image, Text } from "../../../basicUI";
  4. import { useEditor } from "../../../../..";
  5. import { createUIComp } from "../../../defines/createUIComp";
  6. import { css } from "@linaria/core";
  7. export const Component = createUIComp({
  8. props: {
  9. compId: string().isRequired,
  10. },
  11. setup(props) {
  12. const { designToNaturalSize } = useEditor().helper;
  13. const { value, children } = useCompData(props.compId);
  14. return () => (
  15. <div class="relative w-full">
  16. <div class="!absolute w-full h-full flex justify-center items-center">
  17. <Text.Component class="!absolute w-full" compId={children.text1.id} />
  18. </div>
  19. <div class="flex justify-center">
  20. <Image.Component
  21. style={{
  22. width: designToNaturalSize(368),
  23. height: designToNaturalSize(275),
  24. }}
  25. compId={children.bgImg.id} />
  26. </div>
  27. </div>
  28. );
  29. },
  30. });
  31. const upStyle = css`
  32. position:relative;
  33. `