@sanity/color-input 6.0.3 → 6.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ColorInput.js","sources":["../../src/ColorList.tsx","../../src/ColorPickerFields.tsx","../../src/ColorInput.tsx"],"sourcesContent":["import type {Color, ColorChangeHandler} from 'react-color'\n\nimport {Flex} from '@sanity/ui'\nimport {styled} from 'styled-components'\nimport tinycolor from 'tinycolor2'\n\nconst ColorListWrap = styled(Flex)`\n gap: 0.25em;\n`\n\nconst ColorBoxContainer = styled.div`\n width: 2.1em;\n height: 2.1em;\n cursor: pointer;\n position: relative;\n overflow: hidden;\n border-radius: 3px;\n background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAADFJREFUOE9jZGBgEGHAD97gk2YcNYBhmIQBgWSAP52AwoAQwJvQRg1gACckQoC2gQgAIF8IscwEtKYAAAAASUVORK5CYII=')\n left center #fff;\n`\n\nconst ColorBox = styled.div`\n border-radius: inherit;\n box-shadow: inset 0 0 0 1px var(--card-shadow-outline-color);\n content: '';\n position: absolute;\n inset: 0;\n z-index: 1;\n`\n\ninterface ValidatedColor {\n color: Color\n backgroundColor: string\n}\n\ninterface ColorListProps {\n colors?: Array<Color>\n onChange: ColorChangeHandler<Color>\n}\n\nconst validateColors = (colors: Array<Color>) =>\n colors.reduce((cls: Array<ValidatedColor>, c) => {\n // @ts-expect-error fix types later\n const color = c.hex ? tinycolor(c.hex) : tinycolor(c)\n if (color.isValid()) {\n cls.push({\n color: c,\n backgroundColor: color.toRgbString(),\n })\n }\n return cls\n }, [])\n\nexport function ColorList({colors, onChange}: ColorListProps): React.JSX.Element | null {\n if (!colors) return null\n return (\n <ColorListWrap wrap=\"wrap\">\n {validateColors(colors).map(({color, backgroundColor}, idx) => (\n <ColorBoxContainer\n key={`${backgroundColor}-${idx}`}\n onClick={() => {\n onChange(color)\n }}\n >\n <ColorBox style={{background: backgroundColor}} />\n </ColorBoxContainer>\n ))}\n </ColorListWrap>\n )\n}\n","import type {Color, ColorChangeHandler, HSLColor, RGBColor} from 'react-color'\nimport type {EditableInputStyles} from 'react-color/lib/components/common/EditableInput'\n\nimport {Box, Flex, useTheme} from '@sanity/ui'\nimport {useCallback, useMemo} from 'react'\nimport {EditableInput} from 'react-color/lib/components/common'\n// @ts-expect-error missing export\nimport {isValidHex} from 'react-color/lib/helpers/color'\n\ninterface ColorPickerFieldsProps {\n rgb?: RGBColor\n hsl?: HSLColor\n hex?: string\n disableAlpha: boolean\n onChange: ColorChangeHandler<Color>\n}\n\nexport const ColorPickerFields = ({\n onChange,\n rgb,\n hsl,\n hex,\n disableAlpha,\n}: ColorPickerFieldsProps): React.JSX.Element => {\n const {sanity} = useTheme()\n\n const inputStyles: EditableInputStyles = useMemo(\n () => ({\n input: {\n width: '80%',\n padding: '4px 10% 3px',\n border: 'none',\n boxShadow: `inset 0 0 0 1px ${sanity.color.input.default.enabled.border}`,\n color: sanity.color.input.default.enabled.fg,\n backgroundColor: sanity.color.input.default.enabled.bg,\n fontSize: sanity.fonts.text.sizes[0]?.fontSize,\n textAlign: 'center',\n },\n label: {\n display: 'block',\n textAlign: 'center',\n fontSize: sanity.fonts.label.sizes[0]?.fontSize,\n color: sanity.color.base.fg,\n paddingTop: '3px',\n paddingBottom: '4px',\n textTransform: 'capitalize',\n },\n }),\n [sanity],\n )\n\n const handleChange: ColorChangeHandler<Record<string, string>> = useCallback(\n (data) => {\n if ('hex' in data && data['hex'] && isValidHex(data['hex'])) {\n onChange({\n hex: data['hex'],\n source: 'hex',\n })\n } else if (\n rgb &&\n (('r' in data && data['r']) || ('g' in data && data['g']) || ('b' in data && data['b']))\n ) {\n onChange({\n r: Number(data['r']) || rgb.r,\n g: Number(data['g']) || rgb.g,\n b: Number(data['b']) || rgb.b,\n a: rgb.a,\n source: 'rgb',\n })\n } else if (hsl && 'a' in data && data['a']) {\n let alpha = Number(data['a'])\n if (alpha < 0) {\n alpha = 0\n } else if (alpha > 100) {\n alpha = 100\n }\n alpha /= 100\n\n onChange({\n h: hsl.h,\n s: hsl.s,\n l: hsl.l,\n a: alpha,\n source: 'hsl',\n })\n }\n },\n [onChange, hsl, rgb],\n )\n\n return (\n <Flex>\n <Box flex={2} marginRight={1}>\n <EditableInput\n style={inputStyles}\n label=\"hex\"\n value={hex?.replace('#', '')}\n onChange={handleChange}\n />\n </Box>\n <Box flex={1} marginRight={1}>\n <EditableInput\n style={inputStyles}\n label=\"r\"\n value={rgb?.r}\n onChange={handleChange}\n dragLabel\n dragMax={255}\n />\n </Box>\n <Box flex={1} marginRight={1}>\n <EditableInput\n style={inputStyles}\n label=\"g\"\n value={rgb?.g}\n onChange={handleChange}\n dragLabel\n dragMax={255}\n />\n </Box>\n <Box flex={1} marginRight={1}>\n <EditableInput\n style={inputStyles}\n label=\"b\"\n value={rgb?.b}\n onChange={handleChange}\n dragLabel\n dragMax={255}\n />\n </Box>\n {!disableAlpha && (\n <Box flex={1}>\n <EditableInput\n style={inputStyles}\n label=\"a\"\n value={Math.round((rgb?.a ?? 1) * 100)}\n onChange={handleChange}\n dragLabel\n dragMax={100}\n />\n </Box>\n )}\n </Flex>\n )\n}\n","import type {CustomPickerInjectedProps} from 'react-color/lib/components/common/ColorWrap'\n\nimport {AddIcon, TrashIcon} from '@sanity/icons'\nimport {Box, Button, Card, Flex, Inline, Stack, Text} from '@sanity/ui'\nimport {startTransition, useOptimistic, useRef} from 'react'\nimport {type Color, CustomPicker} from 'react-color'\nimport {Alpha, Checkboard, Hue, Saturation} from 'react-color/lib/components/common'\nimport {type ObjectInputProps, set, setIfMissing, unset} from 'sanity'\nimport {styled} from 'styled-components'\n\nimport type {ColorSchemaType, ColorValue} from './types'\n\nimport {ColorList} from './ColorList'\nimport {ColorPickerFields} from './ColorPickerFields'\n\nconst ColorBox = styled(Box)`\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n`\n\nconst ReadOnlyContainer = styled(Flex)`\n margin-top: 6rem;\n background-color: var(--card-bg-color);\n position: relative;\n width: 100%;\n`\n\ninterface ColorPickerProps extends CustomPickerInjectedProps<Color> {\n width?: string\n disableAlpha: boolean\n colorList?: Array<Color> | undefined\n readOnly?: boolean\n onUnset: () => void\n color: ColorValue\n}\n\nconst ColorPickerInner = (props: ColorPickerProps) => {\n const {\n width,\n color: {rgb, hex, hsv, hsl},\n onChange,\n onUnset,\n disableAlpha,\n colorList,\n readOnly,\n } = props\n\n if (!hsl || !hsv) {\n return null\n }\n\n return (\n <div style={{width}}>\n <Card padding={1} border radius={1}>\n <Stack space={2}>\n {!readOnly && (\n <>\n <Card overflow=\"hidden\" style={{position: 'relative', height: '5em'}}>\n <Saturation onChange={onChange} hsl={hsl} hsv={hsv} />\n </Card>\n\n <Card\n shadow={1}\n radius={3}\n overflow=\"hidden\"\n style={{position: 'relative', height: '10px'}}\n >\n <Hue hsl={hsl} onChange={!readOnly && onChange} />\n </Card>\n\n {!disableAlpha && (\n <Card\n shadow={1}\n radius={3}\n overflow=\"hidden\"\n style={{position: 'relative', height: '10px', background: '#fff'}}\n >\n <Alpha rgb={rgb} hsl={hsl} onChange={onChange} />\n </Card>\n )}\n </>\n )}\n <Flex>\n <Card\n flex={1}\n radius={2}\n overflow=\"hidden\"\n style={{position: 'relative', minWidth: '4em', background: '#fff'}}\n >\n <Checkboard\n size={8}\n white=\"transparent\"\n grey=\"rgba(0,0,0,.08)\"\n // oxlint-disable-next-line no-unsafe-type-assertion\n renderers={{} as {canvas: unknown}}\n />\n <ColorBox\n style={{\n backgroundColor: `rgba(${rgb?.r},${rgb?.g},${rgb?.b},${rgb?.a})`,\n }}\n />\n\n {readOnly && (\n <ReadOnlyContainer\n padding={2}\n paddingBottom={1}\n sizing=\"border\"\n justify=\"space-between\"\n >\n <Stack space={3} marginTop={1}>\n <Text size={3} weight=\"bold\">\n {hex}\n </Text>\n\n <Inline space={3}>\n <Text size={1}>\n <strong>RGB: </strong>\n {rgb?.r} {rgb?.g} {rgb?.b}\n </Text>\n <Text size={1}>\n <strong>HSL: </strong> {Math.round(hsl?.h ?? 0)}{' '}\n {Math.round((hsl?.s ?? 0) * 100)}% {Math.round((hsl?.l ?? 0) * 100)}%\n </Text>\n </Inline>\n </Stack>\n </ReadOnlyContainer>\n )}\n </Card>\n\n {!readOnly && (\n <Flex align=\"flex-start\" marginLeft={2}>\n <Box style={{width: 200}}>\n <ColorPickerFields\n rgb={rgb}\n hsl={hsl}\n hex={hex}\n onChange={onChange}\n disableAlpha={disableAlpha}\n />\n </Box>\n <Box marginLeft={2}>\n <Button onClick={onUnset} title=\"Delete color\" icon={TrashIcon} tone=\"critical\" />\n </Box>\n </Flex>\n )}\n </Flex>\n {colorList && <ColorList colors={colorList} onChange={onChange} />}\n </Stack>\n </Card>\n </div>\n )\n}\n\nconst ColorPicker = CustomPicker(ColorPickerInner)\n\nconst DEFAULT_COLOR: ColorValue & {source: string} = {\n hex: '#24a3e3',\n hsl: {h: 200, s: 0.7732, l: 0.5156, a: 1},\n hsv: {h: 200, s: 0.8414, v: 0.8901, a: 1},\n rgb: {r: 46, g: 163, b: 227, a: 1},\n source: 'hex',\n}\n\nexport default function ColorInput(props: ObjectInputProps): React.JSX.Element {\n const {onChange, readOnly} = props\n // oxlint-disable-next-line no-unsafe-type-assertion\n const _value = props.value as ColorValue | undefined\n const [value, setColorOptimistic] = useOptimistic(_value)\n const type = props.schemaType as ColorSchemaType\n const focusRef = useRef<HTMLButtonElement>(null)\n\n function handleChange(nextColor: ColorValue) {\n const fieldPatches = type.fields\n .filter((field) => field.name in nextColor)\n .map((field) => {\n // oxlint-disable-next-line no-unsafe-type-assertion\n const nextFieldValue = nextColor[field.name as keyof ColorValue]\n const isObject = field.type.jsonType === 'object'\n return set(\n isObject ? Object.assign({_type: field.type.name}, nextFieldValue) : nextFieldValue,\n [field.name],\n )\n })\n\n onChange([\n setIfMissing({_type: type.name}),\n set(type.name, ['_type']),\n set(nextColor.rgb?.a, ['alpha']),\n ...fieldPatches,\n ])\n }\n\n return (\n <>\n {value && value.hex ? (\n <ColorPicker\n color={value}\n onChange={(nextColor) =>\n startTransition(() => {\n setColorOptimistic(nextColor)\n handleChange(nextColor)\n })\n }\n readOnly={readOnly || (typeof type.readOnly === 'boolean' && type.readOnly)}\n disableAlpha={!!type.options?.disableAlpha}\n colorList={type.options?.colorList}\n onUnset={() =>\n startTransition(() => {\n setColorOptimistic(undefined)\n onChange(unset())\n })\n }\n />\n ) : (\n <Button\n icon={AddIcon}\n mode=\"ghost\"\n text=\"Create color\"\n ref={focusRef}\n disabled={Boolean(readOnly)}\n onClick={() =>\n startTransition(() => {\n setColorOptimistic(DEFAULT_COLOR)\n handleChange(DEFAULT_COLOR)\n })\n }\n />\n )}\n </>\n )\n}\n"],"names":["ColorListWrap","styled","Flex","withConfig","displayName","componentId","ColorBoxContainer","div","ColorBox","validateColors","colors","reduce","cls","c","color","hex","tinycolor","isValid","push","backgroundColor","toRgbString","ColorList","t0","$","_c","onChange","t1","t2","t3","idx","background","map","ColorPickerFields","rgb","hsl","disableAlpha","sanity","useTheme","input","default","enabled","border","fonts","text","sizes","fontSize","bg","fg","width","padding","boxShadow","textAlign","t4","label","t5","base","display","paddingTop","paddingBottom","textTransform","t6","inputStyles","t7","data","isValidHex","source","r","g","b","Number","a","alpha","h","s","l","handleChange","t8","replace","t9","t10","t11","t12","t13","t14","t15","t16","Math","round","t17","Box","ReadOnlyContainer","ColorPickerInner","props","onUnset","colorList","readOnly","hsv","position","height","for","minWidth","Symbol","TrashIcon","ColorPicker","CustomPicker","DEFAULT_COLOR","v","ColorInput","_value","value","setColorOptimistic","useOptimistic","type","schemaType","focusRef","useRef","nextColor","fieldPatches","fields","filter","field","name","field_0","nextFieldValue","isObject","jsonType","set","Object","assign","_type","setIfMissing","nextColor_0","startTransition","options","undefined","unset","AddIcon","Boolean"],"mappings":";;;;;;;;;;;AAMA,MAAMA,gBAAgBC,OAAOC,IAAI,EAACC,WAAA;AAAA,EAAAC,aAAA;AAAA,EAAAC,aAAA;AAAA,CAAA,gBAI5BC,oBAAoBL,OAAOM,IAAGJ,WAAA;AAAA,EAAAC,aAAA;AAAA,EAAAC,aAAA;AAAA,CAAA,2TAW9BG,aAAWP,OAAOM,IAAGJ,WAAA;AAAA,EAAAC,aAAA;AAAA,EAAAC,aAAA;AAAA,CAAA,sIAmBrBI,iBAAkBC,CAAAA,WACtBA,OAAOC,OAAO,CAACC,KAA4BC,OAAM;AAE/C,QAAMC,QAAQD,GAAEE,MAAMC,UAAUH,GAAEE,GAAG,IAAIC,UAAUH,EAAC;AACpD,SAAIC,MAAMG,aACRL,IAAIM,KAAK;AAAA,IACPJ,OAAOD;AAAAA,IACPM,iBAAiBL,MAAMM,YAAAA;AAAAA,EAAY,CACpC,GAEIR;AACT,GAAG,EAAE;AAEA,SAAAS,UAAAC,IAAA;AAAA,QAAAC,IAAAC,EAAA,CAAA,GAAmB;AAAA,IAAAd;AAAAA,IAAAe;AAAAA,EAAAA,IAAAH;AACxB,MAAI,CAACZ;AAAM,WAAS;AAAI,MAAAgB;AAAA,MAAAH,EAAA,CAAA,MAAAb,UAAAa,SAAAE,UAAA;AAAA,QAAAE;AAAAJ,aAAAE,YAGQE,MAAAA,CAAAC,IAAAC,QAAA;AAAC,YAAA;AAAA,QAAAf;AAAAA,QAAAK;AAAAA,MAAAA,IAAAS;AAAwB,aACnD,oBAAC,mBAAA,EAEU,SAAA,MAAA;AACPH,iBAASX,KAAK;AAAA,MAAC,GAGjB,UAAA,oBAACN,YAAA,EAAgB,OAAA;AAAA,QAAAsB,YAAaX;AAAAA,MAAAA,GAAgB,EAAA,GALzC,GAAGA,eAAe,IAAIU,GAAG,EAMhC;AAAA,IAAoB,GACrBN,OAAAE,UAAAF,OAAAI,OAAAA,MAAAJ,EAAA,CAAA,GATAG,KAAAjB,eAAeC,MAAM,EAACqB,IAAKJ,GAS3B,GAACJ,OAAAb,QAAAa,OAAAE,UAAAF,OAAAG;AAAAA,EAAA;AAAAA,SAAAH,EAAA,CAAA;AAAA,MAAAI;AAAA,SAAAJ,SAAAG,MAVJC,KAAA,oBAAC,eAAA,EAAmB,MAAA,QACjBD,UAAAA,GAAAA,CAUH,GAAgBH,OAAAG,IAAAH,OAAAI,MAAAA,KAAAJ,EAAA,CAAA,GAXhBI;AAWgB;AClDb,MAAMK,oBAAoBV,CAAAA,OAAA;AAAA,QAAAC,IAAAC,EAAA,EAAA,GAAC;AAAA,IAAAC;AAAAA,IAAAQ;AAAAA,IAAAC;AAAAA,IAAAnB;AAAAA,IAAAoB;AAAAA,EAAAA,IAAAb,IAOhC;AAAA,IAAAc;AAAAA,EAAAA,IAAiBC,SAAAA,GAQAX,KAAA,mBAAmBU,OAAMtB,MAAMwB,MAAMC,QAAQC,QAAQC,MAAO,IAG7Dd,KAAAS,OAAMM,MAAMC,KAAKC,MAAM,CAAA,GAAaC;AAAA,MAAAjB;AAAAL,IAAA,CAAA,MAAAa,OAAAtB,MAAAwB,MAAAC,QAAAC,QAAAM,MAAAvB,EAAA,CAAA,MAAAa,OAAAtB,MAAAwB,MAAAC,QAAAC,QAAAO,MAAAxB,EAAA,CAAA,MAAAG,MAAAH,SAAAI,MAPzCC,KAAA;AAAA,IAAAoB,OACE;AAAA,IAAKC,SACH;AAAA,IAAaR,QACd;AAAA,IAAMS,WACHxB;AAAAA,IAA8DZ,OAClEsB,OAAMtB,MAAMwB,MAAMC,QAAQC,QAAQO;AAAAA,IAAG5B,iBAC3BiB,OAAMtB,MAAMwB,MAAMC,QAAQC,QAAQM;AAAAA,IAAGD,UAC5ClB;AAAAA,IAAoCwB,WACnC;AAAA,EAAA,GACZ5B,EAAA,CAAA,IAAAa,OAAAtB,MAAAwB,MAAAC,QAAAC,QAAAM,IAAAvB,EAAA,CAAA,IAAAa,OAAAtB,MAAAwB,MAAAC,QAAAC,QAAAO,IAAAxB,OAAAG,IAAAH,OAAAI,IAAAJ,OAAAK,MAAAA,KAAAL,EAAA,CAAA;AAIW,QAAA6B,KAAAhB,OAAMM,MAAMW,MAAMT,MAAM,CAAA,GAAaC;AAAA,MAAAS;AAAA/B,IAAA,CAAA,MAAAa,OAAAtB,MAAAyC,KAAAR,MAAAxB,EAAA,CAAA,MAAA6B,MAH1CE,KAAA;AAAA,IAAAE,SACI;AAAA,IAAOL,WACL;AAAA,IAAQN,UACTO;AAAAA,IAAqCtC,OACxCsB,OAAMtB,MAAMyC,KAAKR;AAAAA,IAAGU,YACf;AAAA,IAAKC,eACF;AAAA,IAAKC,eACL;AAAA,EAAA,GAChBpC,OAAAa,OAAAtB,MAAAyC,KAAAR,IAAAxB,OAAA6B,IAAA7B,OAAA+B,MAAAA,KAAA/B,EAAA,CAAA;AAAA,MAAAqC;AAAArC,IAAA,CAAA,MAAAK,MAAAL,SAAA+B,MAnBIM,KAAA;AAAA,IAAAtB,OACEV;AAAAA,IASNyB,OACMC;AAAAA,EAAAA,GASR/B,OAAAK,IAAAL,OAAA+B,IAAA/B,QAAAqC,MAAAA,KAAArC,EAAA,EAAA;AArBH,QAAAsC,cACSD;AAsBR,MAAAE;AAAAvC,IAAA,EAAA,MAAAW,OAAAX,UAAAE,YAAAF,EAAA,EAAA,MAAAU,OAGC6B,KAAAC,CAAAA,SAAA;AACE,QAAI,SAASA,QAAQA,KAAIhD,OAAWiD,WAAWD,KAAIhD,GAAO;AACxDU,eAAS;AAAA,QAAAV,KACFgD,KAAIhD;AAAAA,QAAOkD,QACR;AAAA,MAAA,CACT;AAAA,aAEDhC,QACE,OAAO8B,QAAQA,KAAIG,KAAW,OAAOH,QAAQA,KAAII,KAAW,OAAOJ,QAAQA,KAAIK;AAEjF3C,eAAS;AAAA,QAAAyC,GACJG,OAAON,KAAIG,CAAc,KAAJjC,IAAGiC;AAAAA,QAAEC,GAC1BE,OAAON,KAAII,CAAc,KAAJlC,IAAGkC;AAAAA,QAAEC,GAC1BC,OAAON,KAAIK,CAAc,KAAJnC,IAAGmC;AAAAA,QAAEE,GAC1BrC,IAAGqC;AAAAA,QAAEL,QACA;AAAA,MAAA,CACT;AAAA,aACQ/B,OAAO,OAAO6B,QAAQA,KAAIO,GAAK;AACxC,UAAAC,QAAYF,OAAON,KAAIO,CAAK;AACxBC,cAAQ,IACVA,QAAQA,IACCA,QAAQ,QACjBA,QAAQA,MAEVA,QAAAA,QAAS,KAET9C,SAAS;AAAA,QAAA+C,GACJtC,IAAGsC;AAAAA,QAAEC,GACLvC,IAAGuC;AAAAA,QAAEC,GACLxC,IAAGwC;AAAAA,QAAEJ,GACLC;AAAAA,QAAKN,QACA;AAAA,MAAA,CACT;AAAA,IAAC;AAAA,EACH,GACF1C,QAAAW,KAAAX,QAAAE,UAAAF,QAAAU,KAAAV,QAAAuC,MAAAA,KAAAvC,EAAA,EAAA;AAnCH,QAAAoD,eAAiEb;AAqChE,MAAAc;AAAArD,YAAAR,OAQc6D,KAAA7D,KAAG8D,QAAU,KAAK,EAAE,GAACtD,QAAAR,KAAAQ,QAAAqD,MAAAA,KAAArD,EAAA,EAAA;AAAA,MAAAuD;AAAAvD,IAAA,EAAA,MAAAoD,gBAAApD,UAAAsC,eAAAtC,EAAA,EAAA,MAAAqD,MAJhCE,yBAAC,OAAU,SAAgB,aAAA,GACzB,UAAA,oBAAC,eAAA,EACQjB,OAAAA,aACD,OAAA,OACC,OAAAe,IACGD,UAAAA,aAAAA,CAAY,GAE1B,GAAMpD,QAAAoD,cAAApD,QAAAsC,aAAAtC,QAAAqD,IAAArD,QAAAuD,MAAAA,KAAAvD,EAAA,EAAA;AAKK,QAAAwD,MAAA9C,KAAGiC;AAAG,MAAAc;AAAAzD,IAAA,EAAA,MAAAoD,gBAAApD,UAAAsC,eAAAtC,EAAA,EAAA,MAAAwD,OAJjBC,MAAA,oBAAC,KAAA,EAAU,MAAA,GAAgB,aAAA,GACzB,8BAAC,eAAA,EACQnB,oBACD,OAAA,KACC,OAAAkB,KACGJ,UAAAA,cACV,WAAA,IACS,cAAG,GAEhB,GAAMpD,QAAAoD,cAAApD,QAAAsC,aAAAtC,QAAAwD,KAAAxD,QAAAyD,OAAAA,MAAAzD,EAAA,EAAA;AAKK,QAAA0D,MAAAhD,KAAGkC;AAAG,MAAAe;AAAA3D,IAAA,EAAA,MAAAoD,gBAAApD,UAAAsC,eAAAtC,EAAA,EAAA,MAAA0D,OAJjBC,MAAA,oBAAC,KAAA,EAAU,MAAA,GAAgB,aAAA,GACzB,8BAAC,eAAA,EACQrB,oBACD,OAAA,KACC,OAAAoB,KACGN,UAAAA,cACV,WAAA,IACS,cAAG,GAEhB,GAAMpD,QAAAoD,cAAApD,QAAAsC,aAAAtC,QAAA0D,KAAA1D,QAAA2D,OAAAA,MAAA3D,EAAA,EAAA;AAKK,QAAA4D,MAAAlD,KAAGmC;AAAG,MAAAgB;AAAA7D,IAAA,EAAA,MAAAoD,gBAAApD,UAAAsC,eAAAtC,EAAA,EAAA,MAAA4D,OAJjBC,MAAA,oBAAC,KAAA,EAAU,MAAA,GAAgB,aAAA,GACzB,8BAAC,eAAA,EACQvB,oBACD,OAAA,KACC,OAAAsB,KACGR,UAAAA,cACV,WAAA,IACS,cAAG,GAEhB,GAAMpD,QAAAoD,cAAApD,QAAAsC,aAAAtC,QAAA4D,KAAA5D,QAAA6D,OAAAA,MAAA7D,EAAA,EAAA;AAAA,MAAA8D;AAAA9D,IAAA,EAAA,MAAAY,gBAAAZ,UAAAoD,gBAAApD,EAAA,EAAA,MAAAsC,eAAAtC,EAAA,EAAA,MAAAU,KAAAqC,KACLe,MAAA,CAAClD,gBACA,oBAAC,KAAA,EAAU,MAAA,GACT,UAAA,oBAAC,eAAA,EACQ0B,OAAAA,aACD,OAAA,KACC,OAAAyB,KAAIC,OAAQtD,KAAGqC,KAAH,KAAe,GAAG,GAC3BK,UAAAA,cACV,WAAA,IACS,SAAA,IAAA,CAAG,EAAA,CAEhB,GACDpD,QAAAY,cAAAZ,QAAAoD,cAAApD,QAAAsC,aAAAtC,EAAA,EAAA,IAAAU,KAAAqC,GAAA/C,QAAA8D,OAAAA,MAAA9D,EAAA,EAAA;AAAA,MAAAiE;AAAA,SAAAjE,EAAA,EAAA,MAAAyD,OAAAzD,EAAA,EAAA,MAAA2D,OAAA3D,EAAA,EAAA,MAAA6D,OAAA7D,EAAA,EAAA,MAAA8D,OAAA9D,UAAAuD,MAlDHU,MAAA,qBAAC,MAAA,EACCV,UAAAA;AAAAA,IAAAA;AAAAA,IAQAE;AAAAA,IAUAE;AAAAA,IAUAE;AAAAA,IAUCC;AAAAA,EAAAA,EAAAA,CAYH,GAAO9D,QAAAyD,KAAAzD,QAAA2D,KAAA3D,QAAA6D,KAAA7D,QAAA8D,KAAA9D,QAAAuD,IAAAvD,QAAAiE,OAAAA,MAAAjE,EAAA,EAAA,GAnDPiE;AAmDO,GC/HLhF,WAAWP,OAAOwF,GAAG,EAACtF,WAAA;AAAA,EAAAC,aAAA;AAAA,EAAAC,aAAA;AAAA,CAAA,2DAQtBqF,oBAAoBzF,OAAOC,IAAI,EAACC,WAAA;AAAA,EAAAC,aAAA;AAAA,EAAAC,aAAA;AAAA,CAAA,wFAgBhCsF,mBAAmBC,CAAAA,UAAA;AAAA,QAAArE,IAAAC,EAAA,EAAA,GACvB;AAAA,IAAAwB;AAAAA,IAAAlC,OAAAQ;AAAAA,IAAAG;AAAAA,IAAAoE;AAAAA,IAAA1D;AAAAA,IAAA2D;AAAAA,IAAAC;AAAAA,EAAAA,IAQIH,OANK;AAAA,IAAA3D;AAAAA,IAAAlB;AAAAA,IAAAiF;AAAAA,IAAA9D;AAAAA,EAAAA,IAAAZ;AAQT,MAAI,CAACY,OAAD,CAAS8D;AAAG,WACP;AACR,MAAAtE;AAAAH,WAAAyB,SAGatB,KAAA;AAAA,IAAAsB;AAAAA,EAAAA,GAAOzB,OAAAyB,OAAAzB,OAAAG,MAAAA,KAAAH,EAAA,CAAA;AAAA,MAAAI;AAAAJ,WAAAY,gBAAAZ,EAAA,CAAA,MAAAW,OAAAX,EAAA,CAAA,MAAAyE,OAAAzE,EAAA,CAAA,MAAAE,YAAAF,SAAAwE,YAAAxE,EAAA,CAAA,MAAAU,OAGZN,KAAA,CAACoE,YAAD,qBAAA,UAAA,EAEG,UAAA;AAAA,IAAA,oBAAC,MAAA,EAAc,UAAA,UAAgB,OAAA;AAAA,MAAAE,UAAW;AAAA,MAAUC,QAAU;AAAA,IAAA,GAC5D,UAAA,oBAAC,YAAA,EAAqBzE,UAAeS,KAAU8D,KAAG,GACpD;AAAA,IAEA,oBAAC,QACS,QAAA,GACA,WACC,UAAA,UACF,OAAA;AAAA,MAAAC,UAAW;AAAA,MAAUC,QAAU;AAAA,IAAA,GAEtC,8BAAC,KAAA,EAAShE,KAAe,UAAA,CAAC6D,YAADtE,aAC3B;AAAA,IAEC,CAACU,gBACA,oBAAC,MAAA,EACS,QAAA,GACA,WACC,UAAA,UACF,OAAA;AAAA,MAAA8D,UAAW;AAAA,MAAUC,QAAU;AAAA,MAAMpE,YAAc;AAAA,IAAA,GAE1D,UAAA,oBAAC,OAAA,EAAWG,KAAUC,KAAeT,aACvC;AAAA,EAAA,EAAA,CACD,GAEJF,OAAAY,cAAAZ,OAAAW,KAAAX,OAAAyE,KAAAzE,OAAAE,UAAAF,OAAAwE,UAAAxE,OAAAU,KAAAV,OAAAI,MAAAA,KAAAJ,EAAA,CAAA;AAAA,MAAAK;AAAAL,IAAA,CAAA,6BAAA4E,IAAA,2BAAA,KAMUvE,KAAA;AAAA,IAAAqE,UAAW;AAAA,IAAUG,UAAY;AAAA,IAAKtE,YAAc;AAAA,EAAA,GAAOP,OAAAK,MAAAA,KAAAL,EAAA,CAAA;AAAA,MAAA6B;AAAA7B,IAAA,EAAA,MAAA8E,uBAAAF,IAAA,2BAAA,KAOrD/C,SAAE7B,QAAA6B,MAAAA,KAAA7B,EAAA,EAAA;AAAA,MAAA+B;AAAA/B,IAAA,EAAA,MAAA8E,uBAAAF,IAAA,2BAAA,KALf7C,KAAA,oBAAC,YAAA,EACO,MAAA,GACA,OAAA,eACD,MAAA,mBAEM,WAAAF,GAAAA,CAAuB,GAClC7B,QAAA+B,MAAAA,KAAA/B,EAAA,EAAA;AAGmB,QAAAqC,KAAA,QAAQ3B,KAAGiC,CAAG,IAAIjC,KAAGkC,CAAG,IAAIlC,KAAGmC,CAAG,IAAInC,KAAGqC,CAAG;AAAG,MAAAR;AAAAvC,YAAAqC,MAFpEE,KAAA,oBAAC,YACQ,OAAA;AAAA,IAAA3C,iBACYyC;AAAAA,EAAAA,EACnB,CAAC,GACDrC,QAAAqC,IAAArC,QAAAuC,MAAAA,KAAAvC,EAAA,EAAA;AAAA,MAAAqD;AAAArD,IAAA,EAAA,MAAAR,OAAAQ,EAAA,EAAA,MAAAW,KAAAsC,KAAAjD,EAAA,EAAA,MAAAW,KAAAwC,KAAAnD,EAAA,EAAA,MAAAW,KAAAuC,KAAAlD,UAAAwE,YAAAxE,EAAA,EAAA,MAAAU,KAAAmC,KAAA7C,EAAA,EAAA,MAAAU,KAAAkC,KAAA5C,EAAA,EAAA,MAAAU,KAAAiC,KAEDU,KAAAmB,YACC,oBAAC,mBAAA,EACU,SAAA,GACM,eAAA,GACR,QAAA,UACC,SAAA,iBAER,UAAA,qBAAC,OAAA,EAAa,OAAA,GAAc,WAAA,GAC1B,UAAA;AAAA,IAAA,oBAAC,MAAA,EAAW,MAAA,GAAU,QAAA,QACnBhF,UAAAA,KACH;AAAA,IAEA,qBAAC,QAAA,EAAc,OAAA,GACb,UAAA;AAAA,MAAA,qBAAC,MAAA,EAAW,MAAA,GACV,UAAA;AAAA,QAAA,oBAAA,YAAQ,UAAA,QAAA,CAAK;AAAA,QACZkB,KAAGiC;AAAAA,QAAI;AAAA,QAAEjC,KAAGkC;AAAAA,QAAI;AAAA,QAAElC,KAAGmC;AAAAA,MAAAA,GACxB;AAAA,MACA,qBAAC,MAAA,EAAW,MAAA,GACV,UAAA;AAAA,QAAA,oBAAA,YAAQ,UAAA,QAAA,CAAK;AAAA,QAAS;AAAA,QAAEkB,KAAIC,MAAOrD,KAAGsC,KAAH,CAAW;AAAA,QAAG;AAAA,QAChDc,KAAIC,OAAQrD,KAAGuC,KAAH,KAAe,GAAG;AAAA,QAAE;AAAA,QAAGa,KAAIC,OAAQrD,KAAGwC,KAAH,KAAe,GAAG;AAAA,QAAE;AAAA,MAAA,EAAA,CACtE;AAAA,IAAA,EAAA,CACF;AAAA,EAAA,GACF,EAAA,CACF,GACDnD,QAAAR,KAAAQ,EAAA,EAAA,IAAAW,KAAAsC,GAAAjD,EAAA,EAAA,IAAAW,KAAAwC,GAAAnD,EAAA,EAAA,IAAAW,KAAAuC,GAAAlD,QAAAwE,UAAAxE,EAAA,EAAA,IAAAU,KAAAmC,GAAA7C,EAAA,EAAA,IAAAU,KAAAkC,GAAA5C,EAAA,EAAA,IAAAU,KAAAiC,GAAA3C,QAAAqD,MAAAA,KAAArD,EAAA,EAAA;AAAA,MAAAuD;AAAAvD,IAAA,EAAA,MAAAuC,MAAAvC,UAAAqD,MA3CHE,KAAA,qBAAC,MAAA,EACO,MAAA,GACE,QAAA,GACC,UAAA,UACF,OAAAlD,IAEP0B,UAAAA;AAAAA,IAAAA;AAAAA,IAOAQ;AAAAA,IAMCc;AAAAA,EAAAA,EAAAA,CAyBH,GAAOrD,QAAAuC,IAAAvC,QAAAqD,IAAArD,QAAAuD,MAAAA,KAAAvD,EAAA,EAAA;AAAA,MAAAwD;AAAAxD,IAAA,EAAA,MAAAY,gBAAAZ,EAAA,EAAA,MAAAR,OAAAQ,EAAA,EAAA,MAAAW,OAAAX,UAAAE,YAAAF,EAAA,EAAA,MAAAsE,WAAAtE,EAAA,EAAA,MAAAwE,YAAAxE,EAAA,EAAA,MAAAU,OAEN8C,OAACgB,YACA,qBAAC,MAAA,EAAW,OAAA,cAAyB,YAAA,GACnC,UAAA;AAAA,IAAA,oBAAC,OAAW,OAAA;AAAA,MAAA/C,OAAQ;AAAA,IAAA,GAClB,8BAAC,mBAAA,EACMf,KACAC,KACAnB,KACKU,UACIU,cAAY,GAE9B;AAAA,IACA,oBAAC,KAAA,EAAgB,YAAA,GACf,8BAAC,QAAA,EAAgB0D,SAAAA,SAAe,OAAA,gBAAqBS,MAAAA,WAAgB,MAAA,YAAU,EAAA,CACjF;AAAA,EAAA,EAAA,CACF,GACD/E,QAAAY,cAAAZ,QAAAR,KAAAQ,QAAAW,KAAAX,QAAAE,UAAAF,QAAAsE,SAAAtE,QAAAwE,UAAAxE,QAAAU,KAAAV,QAAAwD,OAAAA,MAAAxD,EAAA,EAAA;AAAA,MAAAyD;AAAAzD,IAAA,EAAA,MAAAwD,OAAAxD,UAAAuD,MA9DHE,MAAA,qBAAC,MAAA,EACCF,UAAAA;AAAAA,IAAAA;AAAAA,IA8CCC;AAAAA,EAAAA,EAAAA,CAgBH,GAAOxD,QAAAwD,KAAAxD,QAAAuD,IAAAvD,QAAAyD,OAAAA,MAAAzD,EAAA,EAAA;AAAA,MAAA0D;AAAA1D,IAAA,EAAA,MAAAuE,aAAAvE,UAAAE,YACNwD,MAAAa,aAAa,oBAAC,WAAA,EAAkBA,QAAAA,WAAqBrE,UAAQ,GAAIF,QAAAuE,WAAAvE,QAAAE,UAAAF,QAAA0D,OAAAA,MAAA1D,EAAA,EAAA;AAAA,MAAA2D;AAAA3D,IAAA,EAAA,MAAAyD,OAAAzD,UAAA0D,OAAA1D,EAAA,EAAA,MAAAI,MA7FtEuD,0BAAC,MAAA,EAAc,YAAG,QAAA,IAAe,QAAA,GAC/B,UAAA,qBAAC,OAAA,EAAa,OAAA,GACXvD,UAAAA;AAAAA,IAAAA;AAAAA,IA2BDqD;AAAAA,IAgECC;AAAAA,EAAAA,GACH,EAAA,CACF,GAAO1D,QAAAyD,KAAAzD,QAAA0D,KAAA1D,QAAAI,IAAAJ,QAAA2D,OAAAA,MAAA3D,EAAA,EAAA;AAAA,MAAA4D;AAAA,SAAA5D,EAAA,EAAA,MAAAG,MAAAH,UAAA2D,OAhGTC,MAAA,oBAAA,OAAA,EAAY,OAAAzD,IACVwD,UAAAA,IAAAA,CAgGF,GAAM3D,QAAAG,IAAAH,QAAA2D,KAAA3D,QAAA4D,OAAAA,MAAA5D,EAAA,EAAA,GAjGN4D;AAiGM,GAIJoB,cAAcC,aAAab,gBAAgB,GAE3Cc,gBAA+C;AAAA,EACnD1F,KAAK;AAAA,EACLmB,KAAK;AAAA,IAACsC,GAAG;AAAA,IAAKC,GAAG;AAAA,IAAQC,GAAG;AAAA,IAAQJ,GAAG;AAAA,EAAA;AAAA,EACvC0B,KAAK;AAAA,IAACxB,GAAG;AAAA,IAAKC,GAAG;AAAA,IAAQiC,GAAG;AAAA,IAAQpC,GAAG;AAAA,EAAA;AAAA,EACvCrC,KAAK;AAAA,IAACiC,GAAG;AAAA,IAAIC,GAAG;AAAA,IAAKC,GAAG;AAAA,IAAKE,GAAG;AAAA,EAAA;AAAA,EAChCL,QAAQ;AACV;AAEA,SAAe0C,WAAAf,OAAA;AAAA,QAAArE,IAAAC,EAAA,EAAA,GACb;AAAA,IAAAC;AAAAA,IAAAsE;AAAAA,EAAAA,IAA6BH,OAE7BgB,SAAehB,MAAKiB,OACpB,CAAAA,OAAAC,kBAAA,IAAoCC,cAAcH,MAAM,GACxDI,OAAapB,MAAKqB,YAClBC,WAAiBC,OAA0B,IAAI;AAAC,MAAA7F;AAAAC,IAAA,CAAA,MAAAE,YAAAF,SAAAyF,QAEhD1F,KAAA,SAAA8F,WAAA;AACE,UAAAC,eAAqBL,KAAIM,OAAOC,OACtBC,CAAAA,UAAWA,MAAKC,QAASL,SAAS,EAACrF,IACtC2F,CAAAA,YAAA;AAEH,YAAAC,iBAAuBP,UAAUI,QAAKC,IAAK,GAC3CG,WAAiBJ,QAAKR,KAAKa,aAAc;AAAQ,aAC1CC,IACLF,WAAWG,OAAMC,OAAQ;AAAA,QAAAC,OAAQT,QAAKR,KAAKS;AAAAA,MAAAA,GAAQE,cAA+B,IAAlFA,gBACA,CAACH,QAAKC,IAAK,CACb;AAAA,IAAC,CACF;AAEHhG,aAAS,CACPyG,aAAa;AAAA,MAAAD,OAAQjB,KAAIS;AAAAA,IAAAA,CAAM,GAC/BK,IAAId,KAAIS,MAAO,CAAC,OAAO,CAAC,GACxBK,IAAIV,UAASnF,KAAOqC,GAAE,CAAC,OAAO,CAAC,GAAC,GAC7B+C,YAAY,CAChB;AAAA,EAAC,GACH9F,OAAAE,UAAAF,OAAAyF,MAAAzF,OAAAD,MAAAA,KAAAC,EAAA,CAAA;AAnBD,QAAAoD,eAAArD;AAmBC,MAAAI;AAAA,SAAAH,SAAAoD,gBAAApD,EAAA,CAAA,MAAAE,YAAAF,EAAA,CAAA,MAAAwE,YAAAxE,EAAA,CAAA,MAAAuF,sBAAAvF,SAAAyF,QAAAzF,EAAA,CAAA,MAAAsF,SAGCnF,qCACGmF,UAAAA,SAASA,MAAK9F,MACb,oBAAC,eACQ8F,OAAAA,OACG,UAAAsB,CAAAA,gBACRC,gBAAgB,MAAA;AACdtB,uBAAmBM,WAAS,GAC5BzC,aAAayC,WAAS;AAAA,EAAC,CACxB,GAEO,UAAArB,YAAa,OAAOiB,KAAIjB,YAAc,aAAaiB,KAAIjB,UACnD,cAAA,CAAC,CAACiB,KAAIqB,SAAsBlG,cAC/B,WAAA6E,KAAIqB,SAAmBvC,WACzB,SAAA,MACPsC,gBAAgB,MAAA;AACdtB,uBAAmBwB,MAAS,GAC5B7G,SAAS8G,MAAAA,CAAO;AAAA,EAAC,CAClB,EAAA,CAAC,wBAIL,QAAA,EACOC,MAAAA,SACD,MAAA,SACA,MAAA,gBACAtB,KAAAA,UACK,UAAAuB,CAAAA,CAAQ1C,UACT,SAAA,MACPqC,gBAAgB,MAAA;AACdtB,uBAAmBL,aAAa,GAChC9B,aAAa8B,aAAa;AAAA,EAAC,CAC5B,EAAA,CAAC,EAAA,CAGP,GACAlF,OAAAoD,cAAApD,OAAAE,UAAAF,OAAAwE,UAAAxE,OAAAuF,oBAAAvF,OAAAyF,MAAAzF,OAAAsF,OAAAtF,OAAAG,MAAAA,KAAAH,EAAA,CAAA,GAnCHG;AAmCG;"}
|
|
1
|
+
{"version":3,"file":"ColorInput.js","sources":["../../src/ColorList.tsx","../../src/ColorPickerFields.tsx","../../src/ColorInput.tsx"],"sourcesContent":["import type {Color, ColorChangeHandler} from 'react-color'\n\nimport {Flex} from '@sanity/ui'\nimport {styled} from 'styled-components'\nimport tinycolor from 'tinycolor2'\n\nconst ColorListWrap = styled(Flex)`\n gap: 0.25em;\n`\n\nconst ColorBoxContainer = styled.div`\n width: 2.1em;\n height: 2.1em;\n cursor: pointer;\n position: relative;\n overflow: hidden;\n border-radius: 3px;\n background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAADFJREFUOE9jZGBgEGHAD97gk2YcNYBhmIQBgWSAP52AwoAQwJvQRg1gACckQoC2gQgAIF8IscwEtKYAAAAASUVORK5CYII=')\n left center #fff;\n`\n\nconst ColorBox = styled.div`\n border-radius: inherit;\n box-shadow: inset 0 0 0 1px var(--card-shadow-outline-color);\n content: '';\n position: absolute;\n inset: 0;\n z-index: 1;\n`\n\ninterface ValidatedColor {\n color: Color\n backgroundColor: string\n}\n\ninterface ColorListProps {\n colors?: Array<Color>\n onChange: ColorChangeHandler<Color>\n}\n\nconst validateColors = (colors: Array<Color>) =>\n colors.reduce((cls: Array<ValidatedColor>, c) => {\n // @ts-expect-error fix types later\n const color = c.hex ? tinycolor(c.hex) : tinycolor(c)\n if (color.isValid()) {\n cls.push({\n color: c,\n backgroundColor: color.toRgbString(),\n })\n }\n return cls\n }, [])\n\nexport function ColorList({colors, onChange}: ColorListProps): React.JSX.Element | null {\n if (!colors) return null\n return (\n <ColorListWrap wrap=\"wrap\">\n {validateColors(colors).map(({color, backgroundColor}, idx) => (\n <ColorBoxContainer\n key={`${backgroundColor}-${idx}`}\n onClick={() => {\n onChange(color)\n }}\n >\n <ColorBox style={{background: backgroundColor}} />\n </ColorBoxContainer>\n ))}\n </ColorListWrap>\n )\n}\n","import type {Color, ColorChangeHandler, HSLColor, RGBColor} from 'react-color'\nimport type {EditableInputStyles} from 'react-color/lib/components/common/EditableInput'\n\nimport {Box, Flex, useTheme} from '@sanity/ui'\nimport {useCallback, useMemo} from 'react'\nimport {EditableInput} from 'react-color/lib/components/common'\n// @ts-expect-error missing export\nimport {isValidHex} from 'react-color/lib/helpers/color'\n\ninterface ColorPickerFieldsProps {\n rgb?: RGBColor\n hsl?: HSLColor\n hex?: string\n disableAlpha: boolean\n onChange: ColorChangeHandler<Color>\n}\n\nexport const ColorPickerFields = ({\n onChange,\n rgb,\n hsl,\n hex,\n disableAlpha,\n}: ColorPickerFieldsProps): React.JSX.Element => {\n const {sanity} = useTheme()\n\n const inputStyles: EditableInputStyles = useMemo(\n () => ({\n input: {\n width: '80%',\n padding: '4px 10% 3px',\n border: 'none',\n // TODO: when upgrading to @sanity/ui@4 start using the new tokens\n // oxlint-disable-next-line typescript/no-deprecated\n boxShadow: `inset 0 0 0 1px ${sanity.color.input.default.enabled.border}`,\n // oxlint-disable-next-line typescript/no-deprecated\n color: sanity.color.input.default.enabled.fg,\n // oxlint-disable-next-line typescript/no-deprecated\n backgroundColor: sanity.color.input.default.enabled.bg,\n // oxlint-disable-next-line typescript/no-deprecated\n fontSize: sanity.fonts.text.sizes[0]?.fontSize,\n textAlign: 'center',\n },\n label: {\n display: 'block',\n textAlign: 'center',\n // oxlint-disable-next-line typescript/no-deprecated\n fontSize: sanity.fonts.label.sizes[0]?.fontSize,\n // oxlint-disable-next-line typescript/no-deprecated\n color: sanity.color.base.fg,\n paddingTop: '3px',\n paddingBottom: '4px',\n textTransform: 'capitalize',\n },\n }),\n [sanity],\n )\n\n const handleChange: ColorChangeHandler<Record<string, string>> = useCallback(\n (data) => {\n if ('hex' in data && data['hex'] && isValidHex(data['hex'])) {\n onChange({\n hex: data['hex'],\n source: 'hex',\n })\n } else if (\n rgb &&\n (('r' in data && data['r']) || ('g' in data && data['g']) || ('b' in data && data['b']))\n ) {\n onChange({\n r: Number(data['r']) || rgb.r,\n g: Number(data['g']) || rgb.g,\n b: Number(data['b']) || rgb.b,\n a: rgb.a,\n source: 'rgb',\n })\n } else if (hsl && 'a' in data && data['a']) {\n let alpha = Number(data['a'])\n if (alpha < 0) {\n alpha = 0\n } else if (alpha > 100) {\n alpha = 100\n }\n alpha /= 100\n\n onChange({\n h: hsl.h,\n s: hsl.s,\n l: hsl.l,\n a: alpha,\n source: 'hsl',\n })\n }\n },\n [onChange, hsl, rgb],\n )\n\n return (\n <Flex>\n <Box flex={2} marginRight={1}>\n <EditableInput\n style={inputStyles}\n label=\"hex\"\n value={hex?.replace('#', '')}\n onChange={handleChange}\n />\n </Box>\n <Box flex={1} marginRight={1}>\n <EditableInput\n style={inputStyles}\n label=\"r\"\n value={rgb?.r}\n onChange={handleChange}\n dragLabel\n dragMax={255}\n />\n </Box>\n <Box flex={1} marginRight={1}>\n <EditableInput\n style={inputStyles}\n label=\"g\"\n value={rgb?.g}\n onChange={handleChange}\n dragLabel\n dragMax={255}\n />\n </Box>\n <Box flex={1} marginRight={1}>\n <EditableInput\n style={inputStyles}\n label=\"b\"\n value={rgb?.b}\n onChange={handleChange}\n dragLabel\n dragMax={255}\n />\n </Box>\n {!disableAlpha && (\n <Box flex={1}>\n <EditableInput\n style={inputStyles}\n label=\"a\"\n value={Math.round((rgb?.a ?? 1) * 100)}\n onChange={handleChange}\n dragLabel\n dragMax={100}\n />\n </Box>\n )}\n </Flex>\n )\n}\n","import type {CustomPickerInjectedProps} from 'react-color/lib/components/common/ColorWrap'\n\nimport {AddIcon, TrashIcon} from '@sanity/icons'\nimport {Box, Button, Card, Flex, Inline, Stack, Text} from '@sanity/ui'\nimport {startTransition, useOptimistic, useRef} from 'react'\nimport {type Color, CustomPicker} from 'react-color'\nimport {Alpha, Checkboard, Hue, Saturation} from 'react-color/lib/components/common'\nimport {type ObjectInputProps, set, setIfMissing, unset} from 'sanity'\nimport {styled} from 'styled-components'\n\nimport type {ColorSchemaType, ColorValue} from './types'\n\nimport {ColorList} from './ColorList'\nimport {ColorPickerFields} from './ColorPickerFields'\n\nconst ColorBox = styled(Box)`\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n`\n\nconst ReadOnlyContainer = styled(Flex)`\n margin-top: 6rem;\n background-color: var(--card-bg-color);\n position: relative;\n width: 100%;\n`\n\ninterface ColorPickerProps extends CustomPickerInjectedProps<Color> {\n width?: string\n disableAlpha: boolean\n colorList?: Array<Color> | undefined\n readOnly?: boolean\n onUnset: () => void\n color: ColorValue\n}\n\nconst ColorPickerInner = (props: ColorPickerProps) => {\n const {\n width,\n color: {rgb, hex, hsv, hsl},\n onChange,\n onUnset,\n disableAlpha,\n colorList,\n readOnly,\n } = props\n\n if (!hsl || !hsv) {\n return null\n }\n\n return (\n <div style={{width}}>\n <Card padding={1} border radius={1}>\n <Stack space={2}>\n {!readOnly && (\n <>\n <Card overflow=\"hidden\" style={{position: 'relative', height: '5em'}}>\n <Saturation onChange={onChange} hsl={hsl} hsv={hsv} />\n </Card>\n\n <Card\n shadow={1}\n radius={3}\n overflow=\"hidden\"\n style={{position: 'relative', height: '10px'}}\n >\n <Hue hsl={hsl} onChange={!readOnly && onChange} />\n </Card>\n\n {!disableAlpha && (\n <Card\n shadow={1}\n radius={3}\n overflow=\"hidden\"\n style={{position: 'relative', height: '10px', background: '#fff'}}\n >\n <Alpha rgb={rgb} hsl={hsl} onChange={onChange} />\n </Card>\n )}\n </>\n )}\n <Flex>\n <Card\n flex={1}\n radius={2}\n overflow=\"hidden\"\n style={{position: 'relative', minWidth: '4em', background: '#fff'}}\n >\n <Checkboard\n size={8}\n white=\"transparent\"\n grey=\"rgba(0,0,0,.08)\"\n // oxlint-disable-next-line no-unsafe-type-assertion\n renderers={{} as {canvas: unknown}}\n />\n <ColorBox\n style={{\n backgroundColor: `rgba(${rgb?.r},${rgb?.g},${rgb?.b},${rgb?.a})`,\n }}\n />\n\n {readOnly && (\n <ReadOnlyContainer\n padding={2}\n paddingBottom={1}\n sizing=\"border\"\n justify=\"space-between\"\n >\n <Stack space={3} marginTop={1}>\n <Text size={3} weight=\"bold\">\n {hex}\n </Text>\n\n <Inline space={3}>\n <Text size={1}>\n <strong>RGB: </strong>\n {rgb?.r} {rgb?.g} {rgb?.b}\n </Text>\n <Text size={1}>\n <strong>HSL: </strong> {Math.round(hsl?.h ?? 0)}{' '}\n {Math.round((hsl?.s ?? 0) * 100)}% {Math.round((hsl?.l ?? 0) * 100)}%\n </Text>\n </Inline>\n </Stack>\n </ReadOnlyContainer>\n )}\n </Card>\n\n {!readOnly && (\n <Flex align=\"flex-start\" marginLeft={2}>\n <Box style={{width: 200}}>\n <ColorPickerFields\n rgb={rgb}\n hsl={hsl}\n hex={hex}\n onChange={onChange}\n disableAlpha={disableAlpha}\n />\n </Box>\n <Box marginLeft={2}>\n <Button onClick={onUnset} title=\"Delete color\" icon={TrashIcon} tone=\"critical\" />\n </Box>\n </Flex>\n )}\n </Flex>\n {colorList && <ColorList colors={colorList} onChange={onChange} />}\n </Stack>\n </Card>\n </div>\n )\n}\n\nconst ColorPicker = CustomPicker(ColorPickerInner)\n\nconst DEFAULT_COLOR: ColorValue & {source: string} = {\n hex: '#24a3e3',\n hsl: {h: 200, s: 0.7732, l: 0.5156, a: 1},\n hsv: {h: 200, s: 0.8414, v: 0.8901, a: 1},\n rgb: {r: 46, g: 163, b: 227, a: 1},\n source: 'hex',\n}\n\nexport default function ColorInput(props: ObjectInputProps): React.JSX.Element {\n const {onChange, readOnly} = props\n // oxlint-disable-next-line no-unsafe-type-assertion\n const _value = props.value as ColorValue | undefined\n const [value, setColorOptimistic] = useOptimistic(_value)\n const type = props.schemaType as ColorSchemaType\n const focusRef = useRef<HTMLButtonElement>(null)\n\n function handleChange(nextColor: ColorValue) {\n const fieldPatches = type.fields\n .filter((field) => field.name in nextColor)\n .map((field) => {\n // oxlint-disable-next-line no-unsafe-type-assertion\n const nextFieldValue = nextColor[field.name as keyof ColorValue]\n const isObject = field.type.jsonType === 'object'\n return set(\n isObject ? Object.assign({_type: field.type.name}, nextFieldValue) : nextFieldValue,\n [field.name],\n )\n })\n\n onChange([\n setIfMissing({_type: type.name}),\n set(type.name, ['_type']),\n set(nextColor.rgb?.a, ['alpha']),\n ...fieldPatches,\n ])\n }\n\n return (\n <>\n {value && value.hex ? (\n <ColorPicker\n color={value}\n onChange={(nextColor) =>\n startTransition(() => {\n setColorOptimistic(nextColor)\n handleChange(nextColor)\n })\n }\n readOnly={readOnly || (typeof type.readOnly === 'boolean' && type.readOnly)}\n disableAlpha={!!type.options?.disableAlpha}\n colorList={type.options?.colorList}\n onUnset={() =>\n startTransition(() => {\n setColorOptimistic(undefined)\n onChange(unset())\n })\n }\n />\n ) : (\n <Button\n icon={AddIcon}\n mode=\"ghost\"\n text=\"Create color\"\n ref={focusRef}\n disabled={Boolean(readOnly)}\n onClick={() =>\n startTransition(() => {\n setColorOptimistic(DEFAULT_COLOR)\n handleChange(DEFAULT_COLOR)\n })\n }\n />\n )}\n </>\n )\n}\n"],"names":["ColorListWrap","styled","Flex","withConfig","displayName","componentId","ColorBoxContainer","div","ColorBox","validateColors","colors","reduce","cls","c","color","hex","tinycolor","isValid","push","backgroundColor","toRgbString","ColorList","t0","$","_c","onChange","t1","t2","t3","idx","background","map","ColorPickerFields","rgb","hsl","disableAlpha","sanity","useTheme","input","default","enabled","border","fonts","text","sizes","fontSize","bg","fg","width","padding","boxShadow","textAlign","t4","label","t5","base","display","paddingTop","paddingBottom","textTransform","t6","inputStyles","t7","data","isValidHex","source","r","g","b","Number","a","alpha","h","s","l","handleChange","t8","replace","t9","t10","t11","t12","t13","t14","t15","t16","Math","round","t17","Box","ReadOnlyContainer","ColorPickerInner","props","onUnset","colorList","readOnly","hsv","position","height","for","minWidth","Symbol","TrashIcon","ColorPicker","CustomPicker","DEFAULT_COLOR","v","ColorInput","_value","value","setColorOptimistic","useOptimistic","type","schemaType","focusRef","useRef","nextColor","fieldPatches","fields","filter","field","name","field_0","nextFieldValue","isObject","jsonType","set","Object","assign","_type","setIfMissing","nextColor_0","startTransition","options","undefined","unset","AddIcon","Boolean"],"mappings":"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"}
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","names":[],"sources":["../src/types.ts","../src/schemas/color.tsx","../src/schemas/hslaColor.ts","../src/schemas/hsvaColor.ts","../src/schemas/rgbaColor.ts","../src/ColorInput.tsx","../src/LazyColorInput.tsx","../src/index.ts"],"
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":[],"sources":["../src/types.ts","../src/schemas/color.tsx","../src/schemas/hslaColor.ts","../src/schemas/hsvaColor.ts","../src/schemas/rgbaColor.ts","../src/ColorInput.tsx","../src/LazyColorInput.tsx","../src/index.ts"],"mappings":";;;;UAGiB,UAAA;EACf,GAAA;EACA,GAAA,EAAK,QAAA;EACL,GAAA,EAAK,QAAA;EACL,GAAA,EAAK,QAAA;AAAA;AAAA,UAGU,YAAA,SAAqB,IAAA,CAAK,aAAA;EACzC,YAAA;EACA,SAAA,GAAY,KAAA,CAAM,KAAA;AAAA;AAAA,KAGR,eAAA,GAAkB,IAAA,CAAK,gBAAA;EACjC,OAAA,GAAU,YAAA;AAAA;AAAA,KAEA,eAAA,GAAkB,gBAAA,CAAiB,UAAA,EAAY,eAAA;AAAA,cCXrD,aAAA;;;ADJN;UCSiB,eAAA,SAAwB,IAAA,CAAK,gBAAA;EAC5C,IAAA,SAAa,aAAA;EACb,OAAA,GAAU,YAAA;AAAA;AAAA;EAAA,UAKO,oBAAA;IACf,KAAA,EAAO,eAAA;EAAA;AAAA;AAAA,cAIE,KAAA;;;;;;;;;;;cCtBA,SAAA;;;SAUX,OAAA,CAAA,gBAAA;;;cCVW,SAAA;;;SAUX,OAAA,CAAA,gBAAA;;;cCVW,SAAA;;;SAUX,OAAA,CAAA,gBAAA;;;iBC0JsB,YAAA,CAAW,KAAA,EAAO,gBAAA,GAAmB,KAAA,CAAM,GAAA,CAAI,OAAA;AAAA,cCpK1D,UAAA,EAAU,MAAA,CAAA,mBAAA,QAAqC,YAAA;AAAA,cCK/C,UAAA,EAKX,OAAA,CALqB,MAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sanity/color-input",
|
|
3
|
-
"version": "6.0.
|
|
3
|
+
"version": "6.0.4",
|
|
4
4
|
"description": "Color input",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"cms",
|
|
@@ -38,16 +38,16 @@
|
|
|
38
38
|
"tinycolor2": "^1.6.0"
|
|
39
39
|
},
|
|
40
40
|
"devDependencies": {
|
|
41
|
-
"@sanity/pkg-utils": "^10.
|
|
42
|
-
"@types/react": "^19.2.
|
|
41
|
+
"@sanity/pkg-utils": "^10.4.1",
|
|
42
|
+
"@types/react": "^19.2.10",
|
|
43
43
|
"@types/react-color": "^2.17.12",
|
|
44
44
|
"@types/tinycolor2": "^1.4.6",
|
|
45
45
|
"babel-plugin-react-compiler": "^1.0.0",
|
|
46
46
|
"babel-plugin-styled-components": "^2.1.4",
|
|
47
47
|
"eslint": "^9.39.2",
|
|
48
|
-
"react": "^19.2.
|
|
49
|
-
"sanity": "^5.
|
|
50
|
-
"styled-components": "^6.
|
|
48
|
+
"react": "^19.2.4",
|
|
49
|
+
"sanity": "^5.7.0",
|
|
50
|
+
"styled-components": "^6.3.8",
|
|
51
51
|
"@repo/eslint-config": "0.0.0",
|
|
52
52
|
"@repo/package.config": "0.0.0",
|
|
53
53
|
"@repo/tsconfig": "0.0.0"
|