UNPKG

create-next-app-template

Version:

This is a template set up to create Next.js App with fast speed and high performance<br/> The current template is provided in a **page routing** structure.<br/>

88 lines (80 loc) 1.99 kB
import { CSSObject } from "@emotion/react"; import { ComponentPropsWithoutRef, ElementType, HTMLAttributes } from "react"; import { MediaQueryType } from "../piece/MediaQueryType"; import { TrafficType } from "../piece/TrafficType"; import { TransitionType } from "../piece/TransitionType"; export interface TextType extends Omit< HTMLAttributes<HTMLParagraphElement>, "size" | "sizes" | "color" | "title" | "hidden" > { w?: number | string; maxW?: number | string; minW?: number | string; h?: number | string; maxH?: number | string; minH?: number | string; padding?: TrafficType; margin?: TrafficType; size?: number | string; weight?: "lighter" | "normal" | "medium" | "bold"; align?: "start" | "end" | "center"; color?: string; shadow?: string; decoration?: "underline" | string; transform?: | "none" | "capitalize" | "uppercase" | "lowercase" | "initial" | "inherit"; lineHeight?: number | string; whiteSpace?: "normal" | "nowrap" | "pre" | "pre-wrap" | "pre-line"; ellipsis?: { isActive?: boolean; line?: number }; opacity?: number; scale?: number; rotate?: string | number; } interface TextPropsType<T extends ElementType = "p"> extends TextType { as?: T; children: React.ReactNode; css?: CSSObject; zIndex?: number; transition?: TransitionType; userSelect?: "none" | "auto" | "text" | "contain" | "all"; _mq?: MediaQueryType<TextType>; _hover?: Partial<TextType>; _focus?: Partial<TextType>; _active?: Partial<TextType>; } export type TextElementType = | "h1" | "h2" | "h3" | "h4" | "h5" | "h6" | "strong" | "b" | "i" | "p" | "span" | "div" | "li" | "label"; export type TextLayoutElement = Omit< TextPropsType<TextElementType>, ExcludedProps >; export type TextPropsRef = Omit< ComponentPropsWithoutRef<TextElementType>, ExcludedProps >; type ExcludedProps = | "sizes" | "title" | "hidden" | "title" | "translate" | "radioGroup";