JSPM

  • Created
  • Published
  • Downloads 40499
  • Score
    100M100P100Q163594F
  • License MIT

Color Compact component for React.

Package Exports

  • @uiw/react-color-compact
  • @uiw/react-color-compact/cjs/index.js
  • @uiw/react-color-compact/esm/index.js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@uiw/react-color-compact) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

React Color Compact

Buy me a coffee npm bundle size npm version Open in unpkg

Compact Component is a subcomponent of @react-color.

react-color-compact

Install

npm i @uiw/react-color-compact

Usage

import React, { useState } from 'react';
import Compact from '@uiw/react-color-compact';

export default function Demo() {
  const [hex, setHex] = useState("#fff");
  return (
    <Compact
      color={hex}
      style={{
        boxShadow: 'rgb(0 0 0 / 15%) 0px 0px 0px 1px, rgb(0 0 0 / 15%) 0px 8px 16px',
      }}
      onChange={(color) => {
        setHex(color.hex);
      }}
    />
  );
}

Add clear button

import React, { useState } from 'react';
import Compact from '@uiw/react-color-compact';

export default function Demo() {
  const [hex, setHex] = useState("#fff");
  return (
    <Compact
      color={hex}
      style={{
        boxShadow: 'rgb(0 0 0 / 15%) 0px 0px 0px 1px, rgb(0 0 0 / 15%) 0px 8px 16px',
      }}
      onChange={(color) => {
        setHex(color.hex);
      }}
      rectRender={(props) => {
        console.log(props.key)
        if (props.key == 35) {
          return <button key={props.key} style={{ width: 15, height: 15, padding: 0, lineHeight: "10px" }} onClick={() => setHex(null)}>x</button>
        }
      }}
    />
  );
}

Props

import React from 'react';
import { ColorResult, HsvaColor } from '@uiw/color-convert';
import { type SwatchProps, type SwatchRectRenderProps } from '@uiw/react-color-swatch';
export interface CompactProps<T> extends Omit<React.HTMLAttributes<HTMLDivElement>, 'onChange' | 'color'> {
  prefixCls?: string;
  color?: string | HsvaColor;
  colors?: string[];
  onChange?: (color: ColorResult, evn?: T) => void;
  rectRender?: (props: SwatchRectRenderProps) => JSX.Element | undefined;
  rectProps?: SwatchProps['rectProps'];
}
declare const Compact: React.ForwardRefExoticComponent<CompactProps<React.MouseEvent<HTMLDivElement, MouseEvent>> & React.RefAttributes<HTMLDivElement>>;
export default Compact;

Contributors

As always, thanks to our amazing contributors!

Made with contributors.

License

Licensed under the MIT License.