mirror of
https://github.com/nextui-org/nextui.git
synced 2025-12-08 19:26:11 +00:00
feat(repo): esm separated from cjs theme
This commit is contained in:
parent
b90976d48e
commit
1aad0161bf
@ -20,9 +20,9 @@
|
||||
"start:docs": "turbo start --filter=@nextui-org/docs",
|
||||
"deploy:docs": "pnpm --filter @nextui-org/docs deploy",
|
||||
"deploy:stage-docs": "pnpm --filter @nextui-org/docs deploy:stage",
|
||||
"sb": "pnpm --filter @nextui-org/storybook watch:storybook",
|
||||
"build:sb": "pnpm --filter @nextui-org/storybook build:storybook",
|
||||
"start:sb": "pnpx serve --filter @nextui-org/storybook start:storybook",
|
||||
"sb": "pnpm --filter @nextui-org/storybook storybook",
|
||||
"build:sb": "pnpm --filter @nextui-org/storybook build-storybook",
|
||||
"start:sb": "pnpx serve --filter @nextui-org/storybook start-storybook",
|
||||
"test": "jest --verbose",
|
||||
"typecheck": "turbo typecheck",
|
||||
"lint": "eslint -c .eslintrc.json ./packages/**/**/*.{ts,tsx}",
|
||||
|
||||
@ -1,35 +1,45 @@
|
||||
import React from "react";
|
||||
import {useLink as useAriaLink} from "@react-aria/link";
|
||||
import {mergeProps} from "@react-aria/utils";
|
||||
import {forwardRef} from "@nextui-org/system";
|
||||
import {useDOMRef} from "@nextui-org/dom-utils";
|
||||
import {clsx, __DEV__} from "@nextui-org/shared-utils";
|
||||
import {link} from "@nextui-org/theme";
|
||||
import {__DEV__} from "@nextui-org/shared-utils";
|
||||
import {link, cx} from "@nextui-org/theme";
|
||||
|
||||
// import {StyledLink} from "./link.styles";
|
||||
import {UseLinkProps, useLink} from "./use-link";
|
||||
import {LinkIcon} from "./link-icon";
|
||||
|
||||
export interface LinkProps extends UseLinkProps {}
|
||||
|
||||
const Link = forwardRef<LinkProps, "a">((props, ref) => {
|
||||
const {children, as, css, linkCss, isExternal, focusProps, className, ...otherProps} =
|
||||
useLink(props);
|
||||
const {
|
||||
children,
|
||||
as,
|
||||
isUnderline,
|
||||
isBlock,
|
||||
color,
|
||||
disableAnimation,
|
||||
isExternal,
|
||||
focusProps,
|
||||
className,
|
||||
...otherProps
|
||||
} = useLink(props);
|
||||
|
||||
const domRef = useDOMRef(ref);
|
||||
|
||||
const {linkProps} = useAriaLink({...otherProps, elementType: `${as}`}, domRef);
|
||||
|
||||
console.log(link());
|
||||
|
||||
return (
|
||||
<a
|
||||
ref={domRef}
|
||||
className={link()}
|
||||
// css={{
|
||||
// ...linkCss,
|
||||
// ...css,
|
||||
// }}
|
||||
className={cx(
|
||||
link({
|
||||
color,
|
||||
isUnderline,
|
||||
isBlock,
|
||||
disableAnimation,
|
||||
}),
|
||||
className,
|
||||
)}
|
||||
{...mergeProps(linkProps, focusProps, otherProps)}
|
||||
>
|
||||
<>
|
||||
|
||||
@ -1,78 +1,20 @@
|
||||
import type {AriaLinkProps} from "@react-types/link";
|
||||
import type {StyledLinkProps} from "@nextui-org/theme";
|
||||
|
||||
import {useMemo} from "react";
|
||||
import {useFocusRing} from "@react-aria/focus";
|
||||
import {HTMLNextUIProps, CSS, getTokenValue} from "@nextui-org/system";
|
||||
import {isNormalColor} from "@nextui-org/shared-utils";
|
||||
import {useIsMounted} from "@nextui-org/use-is-mounted";
|
||||
export interface Props extends HTMLNextUIProps<"a"> {
|
||||
/**
|
||||
* The link's color.
|
||||
* @default "$colors$link"
|
||||
*/
|
||||
color?: CSS["color"];
|
||||
/**
|
||||
* Whether the link should have a underline. text-decoration: underline.
|
||||
* @default false
|
||||
*/
|
||||
underline?: boolean;
|
||||
/**
|
||||
* Whether the link should be displayed as a separate block.
|
||||
*/
|
||||
block?: boolean;
|
||||
/**
|
||||
* Whether the link opacity && box-shadow should be animated.
|
||||
* @default false
|
||||
*/
|
||||
animated?: boolean;
|
||||
/**
|
||||
* Whether the link should show an icon.
|
||||
* @default false
|
||||
*/
|
||||
import {HTMLNextUIProps} from "@nextui-org/system";
|
||||
export interface Props extends HTMLNextUIProps<"a">, StyledLinkProps {
|
||||
isExternal?: boolean;
|
||||
}
|
||||
|
||||
export type UseLinkProps = Props & AriaLinkProps;
|
||||
|
||||
export function useLink(props: UseLinkProps) {
|
||||
const {
|
||||
isExternal = false,
|
||||
color = "$link",
|
||||
block = false,
|
||||
animated = true,
|
||||
autoFocus,
|
||||
...otherProps
|
||||
} = props;
|
||||
const {isExternal = false, autoFocus, ...otherProps} = props;
|
||||
|
||||
const {isFocusVisible, focusProps} = useFocusRing({autoFocus});
|
||||
|
||||
const [, isMounted] = useIsMounted({rerender: true});
|
||||
|
||||
const linkCss = useMemo(() => {
|
||||
const isNormal = isNormalColor(color as string);
|
||||
|
||||
const linkColor = isNormal ? `$${color}` : color;
|
||||
const backgroundColor = isNormal
|
||||
? `${linkColor}Light`
|
||||
: isMounted
|
||||
? getTokenValue("colors", color as string, 0.2)
|
||||
: "transparent";
|
||||
|
||||
if (block) {
|
||||
return {
|
||||
color: linkColor,
|
||||
padding: "$2 $4",
|
||||
borderRadius: "$base",
|
||||
"&:hover": {
|
||||
backgroundColor,
|
||||
},
|
||||
};
|
||||
}
|
||||
|
||||
return {color: linkColor};
|
||||
}, [color, block, isMounted]);
|
||||
|
||||
return {linkCss, focusProps, isExternal, animated, isFocusVisible, ...otherProps};
|
||||
return {focusProps, isExternal, isFocusVisible, ...otherProps};
|
||||
}
|
||||
|
||||
export type UseLinkReturn = ReturnType<typeof useLink>;
|
||||
|
||||
@ -1,30 +1,29 @@
|
||||
import React from "react";
|
||||
import {Meta} from "@storybook/react";
|
||||
import {Spacer} from "@nextui-org/spacer";
|
||||
import {Grid} from "@nextui-org/grid";
|
||||
import {Text} from "@nextui-org/text";
|
||||
|
||||
import {Link} from "../src";
|
||||
|
||||
export default {
|
||||
title: "Navigation/Link",
|
||||
component: Link,
|
||||
} as Meta;
|
||||
};
|
||||
|
||||
const text = `"First solve the problem. Then, write the code." - Jon Johnson.`;
|
||||
|
||||
export const Default = () => <Link href="#">{text}</Link>;
|
||||
|
||||
export const Underline = () => (
|
||||
<Link underline color="primary">
|
||||
<Link isUnderline color="primary" href="#">
|
||||
{text}
|
||||
</Link>
|
||||
);
|
||||
|
||||
export const Variants = () => (
|
||||
export const Colors = () => (
|
||||
<Grid.Container gap={1}>
|
||||
<Grid xs={12}>
|
||||
<Link href="#">{text}</Link>
|
||||
<Link color="primary" href="#">
|
||||
{text}
|
||||
</Link>
|
||||
</Grid>
|
||||
<Grid xs={12}>
|
||||
<Link color="secondary" href="#">
|
||||
@ -46,6 +45,11 @@ export const Variants = () => (
|
||||
{text}
|
||||
</Link>
|
||||
</Grid>
|
||||
<Grid xs={12}>
|
||||
<Link className="text-teal-600" href="#">
|
||||
{text}
|
||||
</Link>
|
||||
</Grid>
|
||||
</Grid.Container>
|
||||
);
|
||||
|
||||
@ -67,37 +71,32 @@ export const isExternal = () => (
|
||||
export const Block = () => (
|
||||
<Grid.Container gap={1}>
|
||||
<Grid xs={12}>
|
||||
<Link block color="primary" href="#">
|
||||
<Link isBlock color="primary" href="#">
|
||||
{text}
|
||||
</Link>
|
||||
</Grid>
|
||||
<Grid xs={12}>
|
||||
<Link block color="text" href="#">
|
||||
<Link isBlock color="secondary" href="#">
|
||||
{text}
|
||||
</Link>
|
||||
</Grid>
|
||||
<Grid xs={12}>
|
||||
<Link block color="secondary" href="#">
|
||||
<Link isBlock color="success" href="#">
|
||||
{text}
|
||||
</Link>
|
||||
</Grid>
|
||||
<Grid xs={12}>
|
||||
<Link block color="success" href="#">
|
||||
<Link isBlock color="warning" href="#">
|
||||
{text}
|
||||
</Link>
|
||||
</Grid>
|
||||
<Grid xs={12}>
|
||||
<Link block color="warning" href="#">
|
||||
<Link isBlock color="error" href="#">
|
||||
{text}
|
||||
</Link>
|
||||
</Grid>
|
||||
<Grid xs={12}>
|
||||
<Link block color="error" href="#">
|
||||
{text}
|
||||
</Link>
|
||||
</Grid>
|
||||
<Grid xs={12}>
|
||||
<Link block color="$pink600" href="#">
|
||||
<Link isBlock className="text-pink-600" href="#">
|
||||
{text}
|
||||
</Link>
|
||||
</Grid>
|
||||
|
||||
@ -19,7 +19,9 @@ module.exports = {
|
||||
babel: async (options) => {
|
||||
return {
|
||||
...options,
|
||||
presets: [...options.presets, "@babel/preset-react", "@babel/preset-typescript"],
|
||||
presets: [...options.presets,[ "@babel/preset-react", {
|
||||
runtime: 'automatic',
|
||||
}], "@babel/preset-typescript"],
|
||||
};
|
||||
},
|
||||
staticDirs: ["../public"],
|
||||
|
||||
@ -27,11 +27,11 @@
|
||||
"scripts": {
|
||||
"storybook": "concurrently \"pnpm:watch:*\"",
|
||||
"build-storybook": "concurrently \"pnpm:build:*\"",
|
||||
"start-storybook": "pnpx serve storybook-static",
|
||||
"build:css": "npx tailwindcss -i ./.storybook/tailwind.css -o ./public/tailwind.css",
|
||||
"build:storybook": "storybook build",
|
||||
"watch:css": "npx tailwindcss -i ./.storybook/tailwind.css -o ./public/tailwind.css --watch",
|
||||
"watch:storybook": "storybook dev -p 6006",
|
||||
"start:storybook": "pnpx serve storybook-static"
|
||||
"watch:storybook": "storybook dev -p 6006 --no-manager-cache"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@storybook/addon-a11y": "^6.5.13",
|
||||
@ -50,6 +50,8 @@
|
||||
"@babel/preset-react": "^7.14.5",
|
||||
"@babel/preset-typescript": "^7.14.5",
|
||||
"babel-loader": "^8.2.3",
|
||||
"postcss": "^8.0.9",
|
||||
"autoprefixer": "^10.4.13",
|
||||
"react": "^17.0.2",
|
||||
"react-dom": "^17.0.2",
|
||||
"prop-types": "^15.8.1",
|
||||
|
||||
@ -1,13 +1,12 @@
|
||||
/** @type {import('tailwindcss').Config} */
|
||||
const {plugin} = require('@nextui-org/theme/plugin')
|
||||
|
||||
const plugin = require("@nextui-org/theme/plugin")
|
||||
|
||||
module.exports = {
|
||||
content: ['../**/src/**/*.{js,jsx,ts,tsx}'],
|
||||
content: ["../**/src/**/*.{js,jsx,ts,tsx}"],
|
||||
// Toggle dark-mode based on data-mode="dark"
|
||||
darkMode: ['class', '[data-mode="dark"]'],
|
||||
darkMode: ["class", '[data-mode="dark"]'],
|
||||
theme: {
|
||||
extend: {},
|
||||
},
|
||||
plugins: [plugin],
|
||||
};
|
||||
};
|
||||
|
||||
146
packages/core/theme/colors.js
Normal file
146
packages/core/theme/colors.js
Normal file
@ -0,0 +1,146 @@
|
||||
module.exports = {
|
||||
blue: {
|
||||
50: "#EDF5FF",
|
||||
100: "#E1EFFF",
|
||||
200: "#CEE4FE",
|
||||
300: "#B7D5F8",
|
||||
400: "#96C1F2",
|
||||
500: "#5EA2EF",
|
||||
600: "#0072F5",
|
||||
700: "#005FCC",
|
||||
800: "#004799",
|
||||
900: "#00254D",
|
||||
},
|
||||
blueDark: {
|
||||
50: "#10253E",
|
||||
100: "#102C4C",
|
||||
200: "#0F3158",
|
||||
300: "#0D3868",
|
||||
400: "#0A4281",
|
||||
500: "#0952A5",
|
||||
600: "#0072F5",
|
||||
700: "#3694FF",
|
||||
800: "#3694FF",
|
||||
900: "#EAF4FF",
|
||||
},
|
||||
green: {
|
||||
50: "#F1FDF7",
|
||||
100: "#E8FCF1",
|
||||
200: "#DAFBE8",
|
||||
300: "#C8F9DD",
|
||||
400: "#ADF5CC",
|
||||
500: "#88F1B6",
|
||||
600: "#17C964",
|
||||
700: "#13A452",
|
||||
800: "#108944",
|
||||
900: "#06371B",
|
||||
},
|
||||
greenDark: {
|
||||
50: "#042F14",
|
||||
100: "#06381B",
|
||||
200: "#074A24",
|
||||
300: "#0A6130",
|
||||
400: "#0B7439",
|
||||
500: "#0F9549",
|
||||
600: "#17C964",
|
||||
700: "#41EC8B",
|
||||
800: "#78F2AD",
|
||||
900: "#ECFDF4",
|
||||
},
|
||||
pink: {
|
||||
50: "#FFF0FB",
|
||||
100: "#FFE5F8",
|
||||
200: "#FFD6F3",
|
||||
300: "#FFC2EE",
|
||||
400: "#FFA3E5",
|
||||
500: "#FF7AD9",
|
||||
600: "#FF4ECD",
|
||||
700: "#D6009A",
|
||||
800: "#B80084",
|
||||
900: "#4D0037",
|
||||
},
|
||||
pinkDark: {
|
||||
50: "#330025",
|
||||
100: "#470033",
|
||||
200: "#5C0042",
|
||||
300: "#750054",
|
||||
400: "#8A0063",
|
||||
500: "#AD007C",
|
||||
600: "#FF4ECD",
|
||||
700: "#FF2EC4",
|
||||
800: "#FF6BD5",
|
||||
900: "#FFEBF9",
|
||||
},
|
||||
purple: {
|
||||
50: "#F7F2FD",
|
||||
100: "#F1E8FB",
|
||||
200: "#EADCF8",
|
||||
300: "#E0CBF5",
|
||||
400: "#D1B1F0",
|
||||
500: "#BC8EE9",
|
||||
600: "#7828C8",
|
||||
700: "#6622AA",
|
||||
800: "#4D1980",
|
||||
900: "#290E44",
|
||||
},
|
||||
purpleDark: {
|
||||
50: "#1F0A33",
|
||||
100: "#240C3C",
|
||||
200: "#2E0F4D",
|
||||
300: "#3B1362",
|
||||
400: "#451773",
|
||||
500: "#571D91",
|
||||
600: "#7828C8",
|
||||
700: "#9750DD",
|
||||
800: "#B583E7",
|
||||
900: "#F7ECFC",
|
||||
},
|
||||
red: {
|
||||
50: "#FEF0F5",
|
||||
100: "#FEE7EF",
|
||||
200: "#FDD8E5",
|
||||
300: "#FCC5D8",
|
||||
400: "#FAA8C5",
|
||||
500: "#F881AB",
|
||||
600: "#F31260",
|
||||
700: "#B80A47",
|
||||
800: "#910838",
|
||||
900: "#4E041E",
|
||||
},
|
||||
redDark: {
|
||||
50: "#300313",
|
||||
100: "#300313",
|
||||
200: "#44041A",
|
||||
300: "#5C0523",
|
||||
400: "#6F062B",
|
||||
500: "#910838",
|
||||
600: "#F31260",
|
||||
700: "#F4256D",
|
||||
800: "#F75F94",
|
||||
900: "#FDD8E5",
|
||||
},
|
||||
yellow: {
|
||||
50: "#FEF9F0",
|
||||
100: "#FEF5E7",
|
||||
200: "#FDEFD8",
|
||||
300: "#FCE7C5",
|
||||
400: "#FBDBA7",
|
||||
500: "#F9CB80",
|
||||
600: "#F5A524",
|
||||
700: "#B97509",
|
||||
800: "#925D07",
|
||||
900: "#4E3104",
|
||||
},
|
||||
yellowDark: {
|
||||
50: "#3A2503",
|
||||
100: "#442B03",
|
||||
200: "#583804",
|
||||
300: "#704705",
|
||||
400: "#845306",
|
||||
500: "#A66908",
|
||||
600: "#F5A524",
|
||||
700: "#F6AD37",
|
||||
800: "#F8C572",
|
||||
900: "#FEF7EC",
|
||||
},
|
||||
};
|
||||
@ -17,7 +17,9 @@
|
||||
"main": "src/index.ts",
|
||||
"sideEffects": false,
|
||||
"files": [
|
||||
"dist"
|
||||
"dist",
|
||||
"plugin.js",
|
||||
"colors.js"
|
||||
],
|
||||
"publishConfig": {
|
||||
"access": "public"
|
||||
@ -31,8 +33,7 @@
|
||||
"url": "https://github.com/nextui-org/nextui/issues"
|
||||
},
|
||||
"scripts": {
|
||||
"build": "tsup src/index.ts --format=esm,cjs --dts && pnpm build:plugin",
|
||||
"build:plugin": "tsup plugin.js --format=cjs",
|
||||
"build": "tsup src/index.ts --format=esm,cjs --dts",
|
||||
"dev": "yarn build:fast -- --watch",
|
||||
"clean": "rimraf dist .turbo",
|
||||
"typecheck": "tsc --noEmit",
|
||||
|
||||
@ -1,136 +1,93 @@
|
||||
const twPlugin = require("tailwindcss/plugin");
|
||||
const plugin = require("tailwindcss/plugin");
|
||||
|
||||
const plugin = twPlugin(function () {}, {
|
||||
darkMode: "class",
|
||||
theme: {
|
||||
extend: {
|
||||
colors: {
|
||||
transparent: "transparent",
|
||||
white: "#ffffff",
|
||||
black: "#000000",
|
||||
gray: {
|
||||
50: "#F9FAFB",
|
||||
100: "#F3F4F6",
|
||||
200: "#E5E7EB",
|
||||
300: "#D1D5DB",
|
||||
400: "#9CA3AF",
|
||||
500: "#6B7280",
|
||||
600: "#4B5563",
|
||||
700: "#374151",
|
||||
800: "#1F2937",
|
||||
900: "#111827",
|
||||
},
|
||||
red: {
|
||||
50: "#FDF2F2",
|
||||
100: "#FDE8E8",
|
||||
200: "#FBD5D5",
|
||||
300: "#F8B4B4",
|
||||
400: "#F98080",
|
||||
500: "#F05252",
|
||||
600: "#E02424",
|
||||
700: "#C81E1E",
|
||||
800: "#9B1C1C",
|
||||
900: "#771D1D",
|
||||
},
|
||||
orange: {
|
||||
50: "#FFF8F1",
|
||||
100: "#FEECDC",
|
||||
200: "#FCD9BD",
|
||||
300: "#FDBA8C",
|
||||
400: "#FF8A4C",
|
||||
500: "#FF5A1F",
|
||||
600: "#D03801",
|
||||
700: "#B43403",
|
||||
800: "#8A2C0D",
|
||||
900: "#771D1D",
|
||||
},
|
||||
yellow: {
|
||||
50: "#FDFDEA",
|
||||
100: "#FDF6B2",
|
||||
200: "#FCE96A",
|
||||
300: "#FACA15",
|
||||
400: "#E3A008",
|
||||
500: "#C27803",
|
||||
600: "#9F580A",
|
||||
700: "#8E4B10",
|
||||
800: "#723B13",
|
||||
900: "#633112",
|
||||
},
|
||||
green: {
|
||||
50: "#F3FAF7",
|
||||
100: "#DEF7EC",
|
||||
200: "#BCF0DA",
|
||||
300: "#84E1BC",
|
||||
400: "#31C48D",
|
||||
500: "#0E9F6E",
|
||||
600: "#057A55",
|
||||
700: "#046C4E",
|
||||
800: "#03543F",
|
||||
900: "#014737",
|
||||
},
|
||||
teal: {
|
||||
50: "#EDFAFA",
|
||||
100: "#D5F5F6",
|
||||
200: "#AFECEF",
|
||||
300: "#7EDCE2",
|
||||
400: "#16BDCA",
|
||||
500: "#0694A2",
|
||||
600: "#047481",
|
||||
700: "#036672",
|
||||
800: "#05505C",
|
||||
900: "#014451",
|
||||
},
|
||||
blue: {
|
||||
50: "#EBF5FF",
|
||||
100: "#E1EFFE",
|
||||
200: "#C3DDFD",
|
||||
300: "#A4CAFE",
|
||||
400: "#76A9FA",
|
||||
500: "#3F83F8",
|
||||
600: "#1C64F2",
|
||||
700: "#1A56DB",
|
||||
800: "#1E429F",
|
||||
900: "#233876",
|
||||
},
|
||||
indigo: {
|
||||
50: "#F0F5FF",
|
||||
100: "#E5EDFF",
|
||||
200: "#CDDBFE",
|
||||
300: "#B4C6FC",
|
||||
400: "#8DA2FB",
|
||||
500: "#6875F5",
|
||||
600: "#5850EC",
|
||||
700: "#5145CD",
|
||||
800: "#42389D",
|
||||
900: "#362F78",
|
||||
},
|
||||
purple: {
|
||||
50: "#F6F5FF",
|
||||
100: "#EDEBFE",
|
||||
200: "#DCD7FE",
|
||||
300: "#CABFFD",
|
||||
400: "#AC94FA",
|
||||
500: "#9061F9",
|
||||
600: "#7E3AF2",
|
||||
700: "#6C2BD9",
|
||||
800: "#5521B5",
|
||||
900: "#4A1D96",
|
||||
},
|
||||
pink: {
|
||||
50: "#FDF2F8",
|
||||
100: "#FCE8F3",
|
||||
200: "#FAD1E8",
|
||||
300: "#F8B4D9",
|
||||
400: "#F17EB8",
|
||||
500: "#E74694",
|
||||
600: "#D61F69",
|
||||
700: "#BF125D",
|
||||
800: "#99154B",
|
||||
900: "#751A3D",
|
||||
const colors = require("./colors.js");
|
||||
|
||||
module.exports = plugin(
|
||||
function ({addUtilities}) {
|
||||
addUtilities({
|
||||
".leading-inherit": {
|
||||
"line-height": "inherit",
|
||||
},
|
||||
".bg-img-inherit": {
|
||||
"background-image": "inherit",
|
||||
},
|
||||
".bg-clip-inherit": {
|
||||
"background-clip": "inherit",
|
||||
},
|
||||
".text-fill-inherit": {
|
||||
"-webkit-text-fill-color": "inherit",
|
||||
},
|
||||
});
|
||||
},
|
||||
{
|
||||
darkMode: "class",
|
||||
theme: {
|
||||
extend: {
|
||||
colors: {
|
||||
transparent: "transparent",
|
||||
white: "#ffffff",
|
||||
black: "#000000",
|
||||
neutral: {
|
||||
light: "#889096",
|
||||
DEFAULT: "#889096",
|
||||
dark: "#697177",
|
||||
},
|
||||
primary: {
|
||||
light: colors.blue[400],
|
||||
DEFAULT: colors.blue[600],
|
||||
dark: colors.blue[700],
|
||||
},
|
||||
secondary: {
|
||||
light: colors.purple[400],
|
||||
DEFAULT: colors.purple[600],
|
||||
dark: colors.purple[700],
|
||||
},
|
||||
success: {
|
||||
light: colors.green[400],
|
||||
DEFAULT: colors.green[600],
|
||||
dark: colors.green[700],
|
||||
},
|
||||
warning: {
|
||||
light: colors.yellow[400],
|
||||
DEFAULT: colors.yellow[600],
|
||||
dark: colors.yellow[700],
|
||||
},
|
||||
error: {
|
||||
light: colors.red[400],
|
||||
DEFAULT: colors.red[600],
|
||||
dark: colors.red[700],
|
||||
},
|
||||
text: {
|
||||
light: "#11181C",
|
||||
DEFAULT: "#11181C",
|
||||
dark: "#ECEDEE",
|
||||
},
|
||||
red: {
|
||||
...colors.red,
|
||||
DEFAULT: "#F31260",
|
||||
},
|
||||
yellow: {
|
||||
...colors.yellow,
|
||||
DEFAULT: "#F5A524",
|
||||
},
|
||||
green: {
|
||||
...colors.green,
|
||||
DEFAULT: "#17C964",
|
||||
},
|
||||
blue: {
|
||||
...colors.blue,
|
||||
DEFAULT: "#0072F5",
|
||||
},
|
||||
purple: {
|
||||
...colors.purple,
|
||||
DEFAULT: "#7828C8",
|
||||
},
|
||||
pink: {
|
||||
...colors.pink,
|
||||
DEFAULT: "#FF4ECD",
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
});
|
||||
|
||||
module.exports = {plugin};
|
||||
);
|
||||
|
||||
25
packages/core/theme/src/colors/blue.ts
Normal file
25
packages/core/theme/src/colors/blue.ts
Normal file
@ -0,0 +1,25 @@
|
||||
export const blue = {
|
||||
50: "#EDF5FF",
|
||||
100: "#E1EFFF",
|
||||
200: "#CEE4FE",
|
||||
300: "#B7D5F8",
|
||||
400: "#96C1F2",
|
||||
500: "#5EA2EF",
|
||||
600: "#0072F5",
|
||||
700: "#005FCC",
|
||||
800: "#004799",
|
||||
900: "#00254D",
|
||||
};
|
||||
|
||||
export const blueDark = {
|
||||
50: "#10253E",
|
||||
100: "#102C4C",
|
||||
200: "#0F3158",
|
||||
300: "#0D3868",
|
||||
400: "#0A4281",
|
||||
500: "#0952A5",
|
||||
600: "#0072F5",
|
||||
700: "#3694FF",
|
||||
800: "#3694FF",
|
||||
900: "#EAF4FF",
|
||||
};
|
||||
25
packages/core/theme/src/colors/green.ts
Normal file
25
packages/core/theme/src/colors/green.ts
Normal file
@ -0,0 +1,25 @@
|
||||
export const green = {
|
||||
50: "#F1FDF7",
|
||||
100: "#E8FCF1",
|
||||
200: "#DAFBE8",
|
||||
300: "#C8F9DD",
|
||||
400: "#ADF5CC",
|
||||
500: "#88F1B6",
|
||||
600: "#17C964",
|
||||
700: "#13A452",
|
||||
800: "#108944",
|
||||
900: "#06371B",
|
||||
};
|
||||
|
||||
export const greenDark = {
|
||||
50: "#042F14",
|
||||
100: "#06381B",
|
||||
200: "#074A24",
|
||||
300: "#0A6130",
|
||||
400: "#0B7439",
|
||||
500: "#0F9549",
|
||||
600: "#17C964",
|
||||
700: "#41EC8B",
|
||||
800: "#78F2AD",
|
||||
900: "#ECFDF4",
|
||||
};
|
||||
6
packages/core/theme/src/colors/index.ts
Normal file
6
packages/core/theme/src/colors/index.ts
Normal file
@ -0,0 +1,6 @@
|
||||
export * from "./blue";
|
||||
export * from "./purple";
|
||||
export * from "./green";
|
||||
export * from "./yellow";
|
||||
export * from "./red";
|
||||
export * from "./pink";
|
||||
25
packages/core/theme/src/colors/pink.ts
Normal file
25
packages/core/theme/src/colors/pink.ts
Normal file
@ -0,0 +1,25 @@
|
||||
export const pink = {
|
||||
50: "#FFF0FB",
|
||||
100: "#FFE5F8",
|
||||
200: "#FFD6F3",
|
||||
300: "#FFC2EE",
|
||||
400: "#FFA3E5",
|
||||
500: "#FF7AD9",
|
||||
600: "#FF4ECD",
|
||||
700: "#D6009A",
|
||||
800: "#B80084",
|
||||
900: "#4D0037",
|
||||
};
|
||||
|
||||
export const pinkDark = {
|
||||
50: "#330025",
|
||||
100: "#470033",
|
||||
200: "#5C0042",
|
||||
300: "#750054",
|
||||
400: "#8A0063",
|
||||
500: "#AD007C",
|
||||
600: "#FF4ECD",
|
||||
700: "#FF2EC4",
|
||||
800: "#FF6BD5",
|
||||
900: "#FFEBF9",
|
||||
};
|
||||
25
packages/core/theme/src/colors/purple.ts
Normal file
25
packages/core/theme/src/colors/purple.ts
Normal file
@ -0,0 +1,25 @@
|
||||
export const purple = {
|
||||
50: "#F7F2FD",
|
||||
100: "#F1E8FB",
|
||||
200: "#EADCF8",
|
||||
300: "#E0CBF5",
|
||||
400: "#D1B1F0",
|
||||
500: "#BC8EE9",
|
||||
600: "#7828C8",
|
||||
700: "#6622AA",
|
||||
800: "#4D1980",
|
||||
900: "#290E44",
|
||||
};
|
||||
|
||||
export const purpleDark = {
|
||||
50: "#1F0A33",
|
||||
100: "#240C3C",
|
||||
200: "#2E0F4D",
|
||||
300: "#3B1362",
|
||||
400: "#451773",
|
||||
500: "#571D91",
|
||||
600: "#7828C8",
|
||||
700: "#9750DD",
|
||||
800: "#B583E7",
|
||||
900: "#F7ECFC",
|
||||
};
|
||||
25
packages/core/theme/src/colors/red.ts
Normal file
25
packages/core/theme/src/colors/red.ts
Normal file
@ -0,0 +1,25 @@
|
||||
export const red = {
|
||||
50: "#FEF0F5",
|
||||
100: "#FEE7EF",
|
||||
200: "#FDD8E5",
|
||||
300: "#FCC5D8",
|
||||
400: "#FAA8C5",
|
||||
500: "#F881AB",
|
||||
600: "#F31260",
|
||||
700: "#B80A47",
|
||||
800: "#910838",
|
||||
900: "#4E041E",
|
||||
};
|
||||
|
||||
export const redDark = {
|
||||
50: "#300313",
|
||||
100: "#300313",
|
||||
200: "#44041A",
|
||||
300: "#5C0523",
|
||||
400: "#6F062B",
|
||||
500: "#910838",
|
||||
600: "#F31260",
|
||||
700: "#F4256D",
|
||||
800: "#F75F94",
|
||||
900: "#FDD8E5",
|
||||
};
|
||||
25
packages/core/theme/src/colors/yellow.ts
Normal file
25
packages/core/theme/src/colors/yellow.ts
Normal file
@ -0,0 +1,25 @@
|
||||
export const yellow = {
|
||||
50: "#FEF9F0",
|
||||
100: "#FEF5E7",
|
||||
200: "#FDEFD8",
|
||||
300: "#FCE7C5",
|
||||
400: "#FBDBA7",
|
||||
500: "#F9CB80",
|
||||
600: "#F5A524",
|
||||
700: "#B97509",
|
||||
800: "#925D07",
|
||||
900: "#4E3104",
|
||||
};
|
||||
|
||||
export const yellowDark = {
|
||||
50: "#3A2503",
|
||||
100: "#442B03",
|
||||
200: "#583804",
|
||||
300: "#704705",
|
||||
400: "#845306",
|
||||
500: "#A66908",
|
||||
600: "#F5A524",
|
||||
700: "#F6AD37",
|
||||
800: "#F8C572",
|
||||
900: "#FEF7EC",
|
||||
};
|
||||
@ -1,17 +1,73 @@
|
||||
import {styled, type VariantProps} from "../../utils";
|
||||
|
||||
export const link = styled([
|
||||
"font-semibold",
|
||||
"text-blue-500",
|
||||
"hover:underline",
|
||||
"focus:underline",
|
||||
"active:underline",
|
||||
"focus:outline-none",
|
||||
"focus:ring-2",
|
||||
"focus:ring-blue-500",
|
||||
"focus:ring-opacity-50",
|
||||
"focus:ring-offset-2",
|
||||
"focus:ring-offset-blue-50",
|
||||
]);
|
||||
export const link = styled(
|
||||
[
|
||||
"inline-flex",
|
||||
"items-center",
|
||||
"leading-inherit",
|
||||
"text-current",
|
||||
"w-fit",
|
||||
"bg-transparent",
|
||||
"bg-img-inherit",
|
||||
"bg-clip-inherit",
|
||||
"text-fill-inherit",
|
||||
"transition-opacity",
|
||||
"hover:opacity-80",
|
||||
],
|
||||
{
|
||||
variants: {
|
||||
color: {
|
||||
primary: "text-primary",
|
||||
secondary: "text-secondary",
|
||||
success: "text-success",
|
||||
warning: "text-warning",
|
||||
error: "text-error",
|
||||
},
|
||||
isUnderline: {
|
||||
true: "hover:underline active:underline focus:underline",
|
||||
false: "no-underline",
|
||||
},
|
||||
isBlock: {
|
||||
true: "px-2 py-4 rounded transition-background transition-shadow",
|
||||
},
|
||||
disableAnimation: {
|
||||
true: "transition-none",
|
||||
},
|
||||
},
|
||||
compoundVariants: [
|
||||
{
|
||||
isBlock: true,
|
||||
color: "primary",
|
||||
class: "hover:bg-primary-light",
|
||||
},
|
||||
{
|
||||
isBlock: true,
|
||||
color: "secondary",
|
||||
class: "hover:bg-secondary-light",
|
||||
},
|
||||
{
|
||||
isBlock: true,
|
||||
color: "success",
|
||||
class: "hover:bg-success-light",
|
||||
},
|
||||
{
|
||||
isBlock: true,
|
||||
color: "warning",
|
||||
class: "hover:bg-warning-light",
|
||||
},
|
||||
{
|
||||
isBlock: true,
|
||||
color: "error",
|
||||
class: "hover:bg-error-light",
|
||||
},
|
||||
],
|
||||
defaultVariants: {
|
||||
color: "primary",
|
||||
isBlock: false,
|
||||
isUnderline: false,
|
||||
disableAnimation: false,
|
||||
},
|
||||
},
|
||||
);
|
||||
|
||||
export type StyledLinkProps = VariantProps<typeof link>;
|
||||
|
||||
@ -1,2 +1,3 @@
|
||||
export * from "./components";
|
||||
export * from "./utils";
|
||||
export * from "./colors";
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
{
|
||||
"extends": "../../../tsconfig.json",
|
||||
"include": ["src", "index.ts", "plugin.cjs"]
|
||||
"include": ["src", "index.ts"]
|
||||
}
|
||||
|
||||
@ -2,7 +2,7 @@ import {defineConfig} from "tsup";
|
||||
import {findUpSync} from "find-up";
|
||||
|
||||
export default defineConfig({
|
||||
clean: false,
|
||||
clean: true,
|
||||
minify: false,
|
||||
treeshake: false,
|
||||
format: ["cjs", "esm"],
|
||||
|
||||
@ -1,4 +1,3 @@
|
||||
import React from "react";
|
||||
import {forwardRef} from "@nextui-org/system";
|
||||
import {useDOMRef} from "@nextui-org/dom-utils";
|
||||
import {clsx, __DEV__} from "@nextui-org/shared-utils";
|
||||
|
||||
126
pnpm-lock.yaml
generated
126
pnpm-lock.yaml
generated
@ -794,8 +794,10 @@ importers:
|
||||
'@storybook/preset-create-react-app': ^4.1.2
|
||||
'@storybook/react-webpack5': ^7.0.0-beta.20
|
||||
'@storybook/testing-library': ^0.0.14-next.1
|
||||
autoprefixer: ^10.4.13
|
||||
babel-loader: ^8.2.3
|
||||
concurrently: ^7.6.0
|
||||
postcss: ^8.0.9
|
||||
prop-types: ^15.8.1
|
||||
react: ^17.0.2
|
||||
react-dom: ^17.0.2
|
||||
@ -819,14 +821,16 @@ importers:
|
||||
'@storybook/preset-create-react-app': 4.1.2_ljwg5m67v45tyeglmzmj54oibe
|
||||
'@storybook/react-webpack5': 7.0.0-beta.20_rtktkkzwwhm6za5nkhtbzdfc3a
|
||||
'@storybook/testing-library': 0.0.14-next.1
|
||||
autoprefixer: 10.4.13_postcss@8.4.21
|
||||
babel-loader: 8.3.0_webpack@5.75.0
|
||||
concurrently: 7.6.0
|
||||
postcss: 8.4.21
|
||||
prop-types: 15.8.1
|
||||
react: 17.0.2
|
||||
react-dom: 17.0.2_react@17.0.2
|
||||
storybook: 7.0.0-beta.20_sfoxds7t5ydpegc3knd667wn6m
|
||||
storybook-dark-mode: 1.1.2_sfoxds7t5ydpegc3knd667wn6m
|
||||
tailwindcss: 3.2.4
|
||||
tailwindcss: 3.2.4_postcss@8.4.21
|
||||
webpack: 5.75.0
|
||||
|
||||
packages/components/text:
|
||||
@ -11786,6 +11790,22 @@ packages:
|
||||
gulp-header: 1.8.12
|
||||
dev: true
|
||||
|
||||
/autoprefixer/10.4.13_postcss@8.4.21:
|
||||
resolution: {integrity: sha512-49vKpMqcZYsJjwotvt4+h/BCjJVnhGwcLpDt5xkcaOG3eLrG/HUYLagrihYsQ+qrIBgIzX1Rw7a6L8I/ZA1Atg==}
|
||||
engines: {node: ^10 || ^12 || >=14}
|
||||
hasBin: true
|
||||
peerDependencies:
|
||||
postcss: ^8.1.0
|
||||
dependencies:
|
||||
browserslist: 4.21.4
|
||||
caniuse-lite: 1.0.30001442
|
||||
fraction.js: 4.2.0
|
||||
normalize-range: 0.1.2
|
||||
picocolors: 1.0.0
|
||||
postcss: 8.4.21
|
||||
postcss-value-parser: 4.2.0
|
||||
dev: true
|
||||
|
||||
/available-typed-arrays/1.0.5:
|
||||
resolution: {integrity: sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==}
|
||||
engines: {node: '>= 0.4'}
|
||||
@ -12316,7 +12336,7 @@ packages:
|
||||
engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
|
||||
hasBin: true
|
||||
dependencies:
|
||||
caniuse-lite: 1.0.30001420
|
||||
caniuse-lite: 1.0.30001442
|
||||
electron-to-chromium: 1.4.283
|
||||
node-releases: 2.0.6
|
||||
update-browserslist-db: 1.0.10_browserslist@4.21.4
|
||||
@ -12465,6 +12485,10 @@ packages:
|
||||
/caniuse-lite/1.0.30001420:
|
||||
resolution: {integrity: sha512-OnyeJ9ascFA9roEj72ok2Ikp7PHJTKubtEJIQ/VK3fdsS50q4KWy+Z5X0A1/GswEItKX0ctAp8n4SYDE7wTu6A==}
|
||||
|
||||
/caniuse-lite/1.0.30001442:
|
||||
resolution: {integrity: sha512-239m03Pqy0hwxYPYR5JwOIxRJfLTWtle9FV8zosfV5pHg+/51uD4nxcUlM8+mWWGfwKtt8lJNHnD3cWw9VZ6ow==}
|
||||
dev: true
|
||||
|
||||
/canvas-confetti/1.5.1:
|
||||
resolution: {integrity: sha512-Ncz+oZJP6OvY7ti4E1slxVlyAV/3g7H7oQtcCDXgwGgARxPnwYY9PW5Oe+I8uvspYNtuHviAdgA0LfcKFWJfpg==}
|
||||
dev: false
|
||||
@ -15519,6 +15543,10 @@ packages:
|
||||
engines: {node: '>= 0.6'}
|
||||
dev: true
|
||||
|
||||
/fraction.js/4.2.0:
|
||||
resolution: {integrity: sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==}
|
||||
dev: true
|
||||
|
||||
/fragment-cache/0.2.1:
|
||||
resolution: {integrity: sha512-GMBAbW9antB8iZRHLoGw0b3HANt57diZYFO/HL1JGIC1MjKrdmhxvrJbupnVvpys0zsz7yBApXdQyfepKly2kA==}
|
||||
engines: {node: '>=0.10.0'}
|
||||
@ -19038,6 +19066,11 @@ packages:
|
||||
engines: {node: '>=0.10.0'}
|
||||
dev: true
|
||||
|
||||
/normalize-range/0.1.2:
|
||||
resolution: {integrity: sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==}
|
||||
engines: {node: '>=0.10.0'}
|
||||
dev: true
|
||||
|
||||
/npm-run-all/4.1.5:
|
||||
resolution: {integrity: sha512-Oo82gJDAVcaMdi3nuoKFavkIHBRVqQ1qvMb+9LHk/cF4P6B2m8aP04hGf7oL6wZ9BuGwX1onlLhpuoofSyoQDQ==}
|
||||
engines: {node: '>= 4'}
|
||||
@ -19745,26 +19778,46 @@ packages:
|
||||
engines: {node: '>=0.10.0'}
|
||||
dev: true
|
||||
|
||||
/postcss-import/14.1.0_postcss@8.4.18:
|
||||
/postcss-import/14.1.0:
|
||||
resolution: {integrity: sha512-flwI+Vgm4SElObFVPpTIT7SU7R3qk2L7PyduMcokiaVKuWv9d/U+Gm/QAd8NDLuykTWTkcrjOeD2Pp1rMeBTGw==}
|
||||
engines: {node: '>=10.0.0'}
|
||||
peerDependencies:
|
||||
postcss: ^8.0.0
|
||||
dependencies:
|
||||
postcss: 8.4.18
|
||||
postcss-value-parser: 4.2.0
|
||||
read-cache: 1.0.0
|
||||
resolve: 1.22.1
|
||||
dev: true
|
||||
|
||||
/postcss-js/4.0.0_postcss@8.4.18:
|
||||
/postcss-import/14.1.0_postcss@8.4.21:
|
||||
resolution: {integrity: sha512-flwI+Vgm4SElObFVPpTIT7SU7R3qk2L7PyduMcokiaVKuWv9d/U+Gm/QAd8NDLuykTWTkcrjOeD2Pp1rMeBTGw==}
|
||||
engines: {node: '>=10.0.0'}
|
||||
peerDependencies:
|
||||
postcss: ^8.0.0
|
||||
dependencies:
|
||||
postcss: 8.4.21
|
||||
postcss-value-parser: 4.2.0
|
||||
read-cache: 1.0.0
|
||||
resolve: 1.22.1
|
||||
dev: true
|
||||
|
||||
/postcss-js/4.0.0:
|
||||
resolution: {integrity: sha512-77QESFBwgX4irogGVPgQ5s07vLvFqWr228qZY+w6lW599cRlK/HmnlivnnVUxkjHnCu4J16PDMHcH+e+2HbvTQ==}
|
||||
engines: {node: ^12 || ^14 || >= 16}
|
||||
peerDependencies:
|
||||
postcss: ^8.3.3
|
||||
dependencies:
|
||||
camelcase-css: 2.0.1
|
||||
postcss: 8.4.18
|
||||
dev: true
|
||||
|
||||
/postcss-js/4.0.0_postcss@8.4.21:
|
||||
resolution: {integrity: sha512-77QESFBwgX4irogGVPgQ5s07vLvFqWr228qZY+w6lW599cRlK/HmnlivnnVUxkjHnCu4J16PDMHcH+e+2HbvTQ==}
|
||||
engines: {node: ^12 || ^14 || >= 16}
|
||||
peerDependencies:
|
||||
postcss: ^8.3.3
|
||||
dependencies:
|
||||
camelcase-css: 2.0.1
|
||||
postcss: 8.4.21
|
||||
dev: true
|
||||
|
||||
/postcss-load-config/3.1.4:
|
||||
@ -19783,7 +19836,7 @@ packages:
|
||||
yaml: 1.10.2
|
||||
dev: true
|
||||
|
||||
/postcss-load-config/3.1.4_postcss@8.4.18:
|
||||
/postcss-load-config/3.1.4_postcss@8.4.21:
|
||||
resolution: {integrity: sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==}
|
||||
engines: {node: '>= 10'}
|
||||
peerDependencies:
|
||||
@ -19796,7 +19849,7 @@ packages:
|
||||
optional: true
|
||||
dependencies:
|
||||
lilconfig: 2.0.6
|
||||
postcss: 8.4.18
|
||||
postcss: 8.4.21
|
||||
yaml: 1.10.2
|
||||
dev: true
|
||||
|
||||
@ -19841,13 +19894,22 @@ packages:
|
||||
postcss: 8.4.21
|
||||
dev: true
|
||||
|
||||
/postcss-nested/6.0.0_postcss@8.4.18:
|
||||
/postcss-nested/6.0.0:
|
||||
resolution: {integrity: sha512-0DkamqrPcmkBDsLn+vQDIrtkSbNkv5AD/M322ySo9kqFkCIYklym2xEmWkwo+Y3/qZo34tzEPNUw4y7yMCdv5w==}
|
||||
engines: {node: '>=12.0'}
|
||||
peerDependencies:
|
||||
postcss: ^8.2.14
|
||||
dependencies:
|
||||
postcss: 8.4.18
|
||||
postcss-selector-parser: 6.0.10
|
||||
dev: true
|
||||
|
||||
/postcss-nested/6.0.0_postcss@8.4.21:
|
||||
resolution: {integrity: sha512-0DkamqrPcmkBDsLn+vQDIrtkSbNkv5AD/M322ySo9kqFkCIYklym2xEmWkwo+Y3/qZo34tzEPNUw4y7yMCdv5w==}
|
||||
engines: {node: '>=12.0'}
|
||||
peerDependencies:
|
||||
postcss: ^8.2.14
|
||||
dependencies:
|
||||
postcss: 8.4.21
|
||||
postcss-selector-parser: 6.0.10
|
||||
dev: true
|
||||
|
||||
@ -22112,6 +22174,8 @@ packages:
|
||||
resolution: {integrity: sha512-AhwtHCKMtR71JgeYDaswmZXhPcW9iuI9Sp2LvZPo9upDZ7231ZJ7eA9RaURbhpXGVlrjX4cFNlB4ieTetEb7hQ==}
|
||||
engines: {node: '>=12.13.0'}
|
||||
hasBin: true
|
||||
peerDependencies:
|
||||
postcss: ^8.0.9
|
||||
dependencies:
|
||||
arg: 5.0.2
|
||||
chokidar: 3.5.3
|
||||
@ -22128,10 +22192,44 @@ packages:
|
||||
object-hash: 3.0.0
|
||||
picocolors: 1.0.0
|
||||
postcss: 8.4.18
|
||||
postcss-import: 14.1.0_postcss@8.4.18
|
||||
postcss-js: 4.0.0_postcss@8.4.18
|
||||
postcss-load-config: 3.1.4_postcss@8.4.18
|
||||
postcss-nested: 6.0.0_postcss@8.4.18
|
||||
postcss-import: 14.1.0
|
||||
postcss-js: 4.0.0
|
||||
postcss-load-config: 3.1.4
|
||||
postcss-nested: 6.0.0
|
||||
postcss-selector-parser: 6.0.10
|
||||
postcss-value-parser: 4.2.0
|
||||
quick-lru: 5.1.1
|
||||
resolve: 1.22.1
|
||||
transitivePeerDependencies:
|
||||
- ts-node
|
||||
dev: true
|
||||
|
||||
/tailwindcss/3.2.4_postcss@8.4.21:
|
||||
resolution: {integrity: sha512-AhwtHCKMtR71JgeYDaswmZXhPcW9iuI9Sp2LvZPo9upDZ7231ZJ7eA9RaURbhpXGVlrjX4cFNlB4ieTetEb7hQ==}
|
||||
engines: {node: '>=12.13.0'}
|
||||
hasBin: true
|
||||
peerDependencies:
|
||||
postcss: ^8.0.9
|
||||
dependencies:
|
||||
arg: 5.0.2
|
||||
chokidar: 3.5.3
|
||||
color-name: 1.1.4
|
||||
detective: 5.2.1
|
||||
didyoumean: 1.2.2
|
||||
dlv: 1.1.3
|
||||
fast-glob: 3.2.12
|
||||
glob-parent: 6.0.2
|
||||
is-glob: 4.0.3
|
||||
lilconfig: 2.0.6
|
||||
micromatch: 4.0.5
|
||||
normalize-path: 3.0.0
|
||||
object-hash: 3.0.0
|
||||
picocolors: 1.0.0
|
||||
postcss: 8.4.21
|
||||
postcss-import: 14.1.0_postcss@8.4.21
|
||||
postcss-js: 4.0.0_postcss@8.4.21
|
||||
postcss-load-config: 3.1.4_postcss@8.4.21
|
||||
postcss-nested: 6.0.0_postcss@8.4.21
|
||||
postcss-selector-parser: 6.0.10
|
||||
postcss-value-parser: 4.2.0
|
||||
quick-lru: 5.1.1
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user