@easy-editor/setters 0.1.2 → 0.1.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.
package/dist/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../src/lib/popover.tsx","../../../node_modules/.pnpm/clsx@2.1.1/node_modules/clsx/dist/clsx.mjs","../src/lib/utils.ts","../../../node_modules/.pnpm/lucide-react@0.561.0_react@18.3.1/node_modules/lucide-react/dist/esm/shared/src/utils.js","../../../node_modules/.pnpm/lucide-react@0.561.0_react@18.3.1/node_modules/lucide-react/dist/esm/defaultAttributes.js","../../../node_modules/.pnpm/lucide-react@0.561.0_react@18.3.1/node_modules/lucide-react/dist/esm/Icon.js","../../../node_modules/.pnpm/lucide-react@0.561.0_react@18.3.1/node_modules/lucide-react/dist/esm/createLucideIcon.js","../../../node_modules/.pnpm/lucide-react@0.561.0_react@18.3.1/node_modules/lucide-react/dist/esm/icons/align-end-horizontal.js","../../../node_modules/.pnpm/lucide-react@0.561.0_react@18.3.1/node_modules/lucide-react/dist/esm/icons/align-end-vertical.js","../../../node_modules/.pnpm/lucide-react@0.561.0_react@18.3.1/node_modules/lucide-react/dist/esm/icons/align-horizontal-distribute-center.js","../../../node_modules/.pnpm/lucide-react@0.561.0_react@18.3.1/node_modules/lucide-react/dist/esm/icons/align-start-horizontal.js","../../../node_modules/.pnpm/lucide-react@0.561.0_react@18.3.1/node_modules/lucide-react/dist/esm/icons/align-start-vertical.js","../../../node_modules/.pnpm/lucide-react@0.561.0_react@18.3.1/node_modules/lucide-react/dist/esm/icons/align-vertical-distribute-center.js","../../../node_modules/.pnpm/lucide-react@0.561.0_react@18.3.1/node_modules/lucide-react/dist/esm/icons/arrow-right.js","../../../node_modules/.pnpm/lucide-react@0.561.0_react@18.3.1/node_modules/lucide-react/dist/esm/icons/check.js","../../../node_modules/.pnpm/lucide-react@0.561.0_react@18.3.1/node_modules/lucide-react/dist/esm/icons/chevron-down.js","../../../node_modules/.pnpm/lucide-react@0.561.0_react@18.3.1/node_modules/lucide-react/dist/esm/icons/chevrons-up-down.js","../../../node_modules/.pnpm/lucide-react@0.561.0_react@18.3.1/node_modules/lucide-react/dist/esm/icons/code.js","../../../node_modules/.pnpm/lucide-react@0.561.0_react@18.3.1/node_modules/lucide-react/dist/esm/icons/database.js","../../../node_modules/.pnpm/lucide-react@0.561.0_react@18.3.1/node_modules/lucide-react/dist/esm/icons/file-braces.js","../../../node_modules/.pnpm/lucide-react@0.561.0_react@18.3.1/node_modules/lucide-react/dist/esm/icons/grip-vertical.js","../../../node_modules/.pnpm/lucide-react@0.561.0_react@18.3.1/node_modules/lucide-react/dist/esm/icons/link-2.js","../../../node_modules/.pnpm/lucide-react@0.561.0_react@18.3.1/node_modules/lucide-react/dist/esm/icons/link.js","../../../node_modules/.pnpm/lucide-react@0.561.0_react@18.3.1/node_modules/lucide-react/dist/esm/icons/maximize-2.js","../../../node_modules/.pnpm/lucide-react@0.561.0_react@18.3.1/node_modules/lucide-react/dist/esm/icons/plus.js","../../../node_modules/.pnpm/lucide-react@0.561.0_react@18.3.1/node_modules/lucide-react/dist/esm/icons/settings-2.js","../../../node_modules/.pnpm/lucide-react@0.561.0_react@18.3.1/node_modules/lucide-react/dist/esm/icons/trash-2.js","../../../node_modules/.pnpm/lucide-react@0.561.0_react@18.3.1/node_modules/lucide-react/dist/esm/icons/unlink.js","../../../node_modules/.pnpm/lucide-react@0.561.0_react@18.3.1/node_modules/lucide-react/dist/esm/icons/upload.js","../../../node_modules/.pnpm/lucide-react@0.561.0_react@18.3.1/node_modules/lucide-react/dist/esm/icons/x.js","../src/basic/align-setter/index.tsx","../src/basic/array-setter/index.tsx","../../../node_modules/.pnpm/@babel+runtime@7.28.4/node_modules/@babel/runtime/helpers/esm/extends.js","../../../node_modules/.pnpm/@babel+runtime@7.28.4/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","../../../node_modules/.pnpm/@uiw+color-convert@2.9.2_@babel+runtime@7.28.4/node_modules/@uiw/color-convert/esm/index.js","../../../node_modules/.pnpm/@uiw+react-drag-event-inter_d5f728b5f55192767ab96b2d0d7fcc3a/node_modules/@uiw/react-drag-event-interactive/esm/utils.js","../../../node_modules/.pnpm/@uiw+react-drag-event-inter_d5f728b5f55192767ab96b2d0d7fcc3a/node_modules/@uiw/react-drag-event-interactive/esm/index.js","../../../node_modules/.pnpm/@uiw+react-color-saturation_8216b62520c30d5ea7d170d351512b33/node_modules/@uiw/react-color-saturation/esm/Pointer.js","../../../node_modules/.pnpm/@uiw+react-color-saturation_8216b62520c30d5ea7d170d351512b33/node_modules/@uiw/react-color-saturation/esm/index.js","../../../node_modules/.pnpm/@uiw+react-color-alpha@2.9._619913fcbc8213ba1f7be7f8c1f19ad2/node_modules/@uiw/react-color-alpha/esm/Pointer.js","../../../node_modules/.pnpm/@uiw+react-color-alpha@2.9._619913fcbc8213ba1f7be7f8c1f19ad2/node_modules/@uiw/react-color-alpha/esm/index.js","../../../node_modules/.pnpm/@uiw+react-color-editable-i_210419129ad9c6c340bb62901866df9f/node_modules/@uiw/react-color-editable-input/esm/index.js","../../../node_modules/.pnpm/@uiw+react-color-editable-i_3a326f881d1eeaa72edc47417e05a0be/node_modules/@uiw/react-color-editable-input-rgba/esm/index.js","../../../node_modules/.pnpm/@uiw+react-color-hue@2.9.2__25e8fd7111ac1a0694ffb9a3979fba60/node_modules/@uiw/react-color-hue/esm/index.js","../../../node_modules/.pnpm/@uiw+react-color-swatch@2.9_4f07c5f3d19a8724672b900546356e8d/node_modules/@uiw/react-color-swatch/esm/index.js","../../../node_modules/.pnpm/@uiw+react-color-sketch@2.9_21a5722c15cd24a622567997874764e6/node_modules/@uiw/react-color-sketch/esm/index.js","../src/basic/color-setter/index.tsx","../src/basic/data-binding-setter/index.tsx","../src/basic/data-mapping-setter/index.tsx","../src/basic/json-setter/index.tsx","../src/basic/node-id-setter/index.tsx","../src/basic/number-setter/index.tsx","../src/basic/object-setter/index.tsx","../src/basic/rect-setter/index.tsx","../src/basic/segmented-setter/index.tsx","../src/basic/select-setter/index.tsx","../src/basic/slider-setter/index.tsx","../src/basic/spacing-setter/index.tsx","../src/basic/string-setter/index.tsx","../src/basic/switch-setter/index.tsx","../src/basic/textarea-setter/index.tsx","../src/basic/upload-setter/index.tsx","../src/group/collapse-setter/index.tsx","../src/group/tab-setter/index.tsx","../src/index.ts"],"sourcesContent":["/**\n * Popover - 共享弹窗组件\n * - 使用 Portal 渲染到 document.body,避免被父容器遮挡\n * - 自动匹配触发器宽度\n */\nimport { useEffect, useRef, useState } from 'react'\nimport { createPortal } from 'react-dom'\n\nexport interface PopoverProps {\n open: boolean\n onClose: () => void\n trigger: React.ReactNode\n children: React.ReactNode\n width?: number | 'trigger' // 弹窗宽度,'trigger' 表示匹配触发器宽度\n}\n\nconst Popover = (props: PopoverProps) => {\n const { open, onClose, trigger, children, width = 'trigger' } = props\n\n const triggerRef = useRef<HTMLDivElement>(null)\n const [position, setPosition] = useState({ top: 0, left: 0 })\n const [popoverWidth, setPopoverWidth] = useState(0)\n\n // 计算弹窗位置\n useEffect(() => {\n if (open && triggerRef.current) {\n const triggerRect = triggerRef.current.getBoundingClientRect()\n const triggerWidth = triggerRect.width\n\n // 设置弹窗宽度\n if (width === 'trigger') {\n setPopoverWidth(triggerWidth)\n }\n\n setPosition({\n top: triggerRect.bottom + 4,\n left: triggerRect.left,\n })\n }\n }, [open, width])\n\n // 点击外部关闭\n useEffect(() => {\n const handleClickOutside = (event: MouseEvent) => {\n const target = event.target as Element\n const popoverEl = document.querySelector('.es-popover-portal')\n if (popoverEl && !popoverEl.contains(target) && triggerRef.current && !triggerRef.current.contains(target)) {\n onClose()\n }\n }\n\n if (open) {\n document.addEventListener('mousedown', handleClickOutside)\n return () => document.removeEventListener('mousedown', handleClickOutside)\n }\n }, [open, onClose])\n\n return (\n <>\n <div ref={triggerRef}>{trigger}</div>\n {open\n ? createPortal(\n <div\n className='es-popover-portal'\n style={{\n position: 'fixed',\n top: position.top,\n left: position.left,\n width: popoverWidth || 'auto',\n zIndex: 1000,\n }}\n >\n {children}\n </div>,\n document.body,\n )\n : ''}\n </>\n )\n}\n\nexport default Popover\n","function r(e){var t,f,n=\"\";if(\"string\"==typeof e||\"number\"==typeof e)n+=e;else if(\"object\"==typeof e)if(Array.isArray(e)){var o=e.length;for(t=0;t<o;t++)e[t]&&(f=r(e[t]))&&(n&&(n+=\" \"),n+=f)}else for(f in e)e[f]&&(n&&(n+=\" \"),n+=f);return n}export function clsx(){for(var e,t,f=0,n=\"\",o=arguments.length;f<o;f++)(e=arguments[f])&&(t=r(e))&&(n&&(n+=\" \"),n+=t);return n}export default clsx;","import { clsx, type ClassValue } from 'clsx'\n\nexport function cn(...inputs: ClassValue[]) {\n return clsx(inputs)\n}\n","/**\n * @license lucide-react v0.561.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nconst toKebabCase = (string) => string.replace(/([a-z0-9])([A-Z])/g, \"$1-$2\").toLowerCase();\nconst toCamelCase = (string) => string.replace(\n /^([A-Z])|[\\s-_]+(\\w)/g,\n (match, p1, p2) => p2 ? p2.toUpperCase() : p1.toLowerCase()\n);\nconst toPascalCase = (string) => {\n const camelCase = toCamelCase(string);\n return camelCase.charAt(0).toUpperCase() + camelCase.slice(1);\n};\nconst mergeClasses = (...classes) => classes.filter((className, index, array) => {\n return Boolean(className) && className.trim() !== \"\" && array.indexOf(className) === index;\n}).join(\" \").trim();\nconst hasA11yProp = (props) => {\n for (const prop in props) {\n if (prop.startsWith(\"aria-\") || prop === \"role\" || prop === \"title\") {\n return true;\n }\n }\n};\n\nexport { hasA11yProp, mergeClasses, toCamelCase, toKebabCase, toPascalCase };\n//# sourceMappingURL=utils.js.map\n","/**\n * @license lucide-react v0.561.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nvar defaultAttributes = {\n xmlns: \"http://www.w3.org/2000/svg\",\n width: 24,\n height: 24,\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n stroke: \"currentColor\",\n strokeWidth: 2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n};\n\nexport { defaultAttributes as default };\n//# sourceMappingURL=defaultAttributes.js.map\n","/**\n * @license lucide-react v0.561.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport { forwardRef, createElement } from 'react';\nimport defaultAttributes from './defaultAttributes.js';\nimport { mergeClasses, hasA11yProp } from './shared/src/utils.js';\n\nconst Icon = forwardRef(\n ({\n color = \"currentColor\",\n size = 24,\n strokeWidth = 2,\n absoluteStrokeWidth,\n className = \"\",\n children,\n iconNode,\n ...rest\n }, ref) => createElement(\n \"svg\",\n {\n ref,\n ...defaultAttributes,\n width: size,\n height: size,\n stroke: color,\n strokeWidth: absoluteStrokeWidth ? Number(strokeWidth) * 24 / Number(size) : strokeWidth,\n className: mergeClasses(\"lucide\", className),\n ...!children && !hasA11yProp(rest) && { \"aria-hidden\": \"true\" },\n ...rest\n },\n [\n ...iconNode.map(([tag, attrs]) => createElement(tag, attrs)),\n ...Array.isArray(children) ? children : [children]\n ]\n )\n);\n\nexport { Icon as default };\n//# sourceMappingURL=Icon.js.map\n","/**\n * @license lucide-react v0.561.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport { forwardRef, createElement } from 'react';\nimport { mergeClasses, toKebabCase, toPascalCase } from './shared/src/utils.js';\nimport Icon from './Icon.js';\n\nconst createLucideIcon = (iconName, iconNode) => {\n const Component = forwardRef(\n ({ className, ...props }, ref) => createElement(Icon, {\n ref,\n iconNode,\n className: mergeClasses(\n `lucide-${toKebabCase(toPascalCase(iconName))}`,\n `lucide-${iconName}`,\n className\n ),\n ...props\n })\n );\n Component.displayName = toPascalCase(iconName);\n return Component;\n};\n\nexport { createLucideIcon as default };\n//# sourceMappingURL=createLucideIcon.js.map\n","/**\n * @license lucide-react v0.561.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"rect\", { width: \"6\", height: \"16\", x: \"4\", y: \"2\", rx: \"2\", key: \"z5wdxg\" }],\n [\"rect\", { width: \"6\", height: \"9\", x: \"14\", y: \"9\", rx: \"2\", key: \"um7a8w\" }],\n [\"path\", { d: \"M22 22H2\", key: \"19qnx5\" }]\n];\nconst AlignEndHorizontal = createLucideIcon(\"align-end-horizontal\", __iconNode);\n\nexport { __iconNode, AlignEndHorizontal as default };\n//# sourceMappingURL=align-end-horizontal.js.map\n","/**\n * @license lucide-react v0.561.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"rect\", { width: \"16\", height: \"6\", x: \"2\", y: \"4\", rx: \"2\", key: \"10wcwx\" }],\n [\"rect\", { width: \"9\", height: \"6\", x: \"9\", y: \"14\", rx: \"2\", key: \"4p5bwg\" }],\n [\"path\", { d: \"M22 22V2\", key: \"12ipfv\" }]\n];\nconst AlignEndVertical = createLucideIcon(\"align-end-vertical\", __iconNode);\n\nexport { __iconNode, AlignEndVertical as default };\n//# sourceMappingURL=align-end-vertical.js.map\n","/**\n * @license lucide-react v0.561.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"rect\", { width: \"6\", height: \"14\", x: \"4\", y: \"5\", rx: \"2\", key: \"1wwnby\" }],\n [\"rect\", { width: \"6\", height: \"10\", x: \"14\", y: \"7\", rx: \"2\", key: \"1fe6j6\" }],\n [\"path\", { d: \"M17 22v-5\", key: \"4b6g73\" }],\n [\"path\", { d: \"M17 7V2\", key: \"hnrr36\" }],\n [\"path\", { d: \"M7 22v-3\", key: \"1r4jpn\" }],\n [\"path\", { d: \"M7 5V2\", key: \"liy1u9\" }]\n];\nconst AlignHorizontalDistributeCenter = createLucideIcon(\n \"align-horizontal-distribute-center\",\n __iconNode\n);\n\nexport { __iconNode, AlignHorizontalDistributeCenter as default };\n//# sourceMappingURL=align-horizontal-distribute-center.js.map\n","/**\n * @license lucide-react v0.561.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"rect\", { width: \"6\", height: \"16\", x: \"4\", y: \"6\", rx: \"2\", key: \"1n4dg1\" }],\n [\"rect\", { width: \"6\", height: \"9\", x: \"14\", y: \"6\", rx: \"2\", key: \"17khns\" }],\n [\"path\", { d: \"M22 2H2\", key: \"fhrpnj\" }]\n];\nconst AlignStartHorizontal = createLucideIcon(\"align-start-horizontal\", __iconNode);\n\nexport { __iconNode, AlignStartHorizontal as default };\n//# sourceMappingURL=align-start-horizontal.js.map\n","/**\n * @license lucide-react v0.561.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"rect\", { width: \"9\", height: \"6\", x: \"6\", y: \"14\", rx: \"2\", key: \"lpm2y7\" }],\n [\"rect\", { width: \"16\", height: \"6\", x: \"6\", y: \"4\", rx: \"2\", key: \"rdj6ps\" }],\n [\"path\", { d: \"M2 2v20\", key: \"1ivd8o\" }]\n];\nconst AlignStartVertical = createLucideIcon(\"align-start-vertical\", __iconNode);\n\nexport { __iconNode, AlignStartVertical as default };\n//# sourceMappingURL=align-start-vertical.js.map\n","/**\n * @license lucide-react v0.561.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"M22 17h-3\", key: \"1lwga1\" }],\n [\"path\", { d: \"M22 7h-5\", key: \"o2endc\" }],\n [\"path\", { d: \"M5 17H2\", key: \"1gx9xc\" }],\n [\"path\", { d: \"M7 7H2\", key: \"6bq26l\" }],\n [\"rect\", { x: \"5\", y: \"14\", width: \"14\", height: \"6\", rx: \"2\", key: \"1qrzuf\" }],\n [\"rect\", { x: \"7\", y: \"4\", width: \"10\", height: \"6\", rx: \"2\", key: \"we8e9z\" }]\n];\nconst AlignVerticalDistributeCenter = createLucideIcon(\n \"align-vertical-distribute-center\",\n __iconNode\n);\n\nexport { __iconNode, AlignVerticalDistributeCenter as default };\n//# sourceMappingURL=align-vertical-distribute-center.js.map\n","/**\n * @license lucide-react v0.561.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"M5 12h14\", key: \"1ays0h\" }],\n [\"path\", { d: \"m12 5 7 7-7 7\", key: \"xquz4c\" }]\n];\nconst ArrowRight = createLucideIcon(\"arrow-right\", __iconNode);\n\nexport { __iconNode, ArrowRight as default };\n//# sourceMappingURL=arrow-right.js.map\n","/**\n * @license lucide-react v0.561.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [[\"path\", { d: \"M20 6 9 17l-5-5\", key: \"1gmf2c\" }]];\nconst Check = createLucideIcon(\"check\", __iconNode);\n\nexport { __iconNode, Check as default };\n//# sourceMappingURL=check.js.map\n","/**\n * @license lucide-react v0.561.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [[\"path\", { d: \"m6 9 6 6 6-6\", key: \"qrunsl\" }]];\nconst ChevronDown = createLucideIcon(\"chevron-down\", __iconNode);\n\nexport { __iconNode, ChevronDown as default };\n//# sourceMappingURL=chevron-down.js.map\n","/**\n * @license lucide-react v0.561.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"m7 15 5 5 5-5\", key: \"1hf1tw\" }],\n [\"path\", { d: \"m7 9 5-5 5 5\", key: \"sgt6xg\" }]\n];\nconst ChevronsUpDown = createLucideIcon(\"chevrons-up-down\", __iconNode);\n\nexport { __iconNode, ChevronsUpDown as default };\n//# sourceMappingURL=chevrons-up-down.js.map\n","/**\n * @license lucide-react v0.561.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"m16 18 6-6-6-6\", key: \"eg8j8\" }],\n [\"path\", { d: \"m8 6-6 6 6 6\", key: \"ppft3o\" }]\n];\nconst Code = createLucideIcon(\"code\", __iconNode);\n\nexport { __iconNode, Code as default };\n//# sourceMappingURL=code.js.map\n","/**\n * @license lucide-react v0.561.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"ellipse\", { cx: \"12\", cy: \"5\", rx: \"9\", ry: \"3\", key: \"msslwz\" }],\n [\"path\", { d: \"M3 5V19A9 3 0 0 0 21 19V5\", key: \"1wlel7\" }],\n [\"path\", { d: \"M3 12A9 3 0 0 0 21 12\", key: \"mv7ke4\" }]\n];\nconst Database = createLucideIcon(\"database\", __iconNode);\n\nexport { __iconNode, Database as default };\n//# sourceMappingURL=database.js.map\n","/**\n * @license lucide-react v0.561.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\n \"path\",\n {\n d: \"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z\",\n key: \"1oefj6\"\n }\n ],\n [\"path\", { d: \"M14 2v5a1 1 0 0 0 1 1h5\", key: \"wfsgrz\" }],\n [\n \"path\",\n { d: \"M10 12a1 1 0 0 0-1 1v1a1 1 0 0 1-1 1 1 1 0 0 1 1 1v1a1 1 0 0 0 1 1\", key: \"1oajmo\" }\n ],\n [\n \"path\",\n { d: \"M14 18a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1 1 1 0 0 1-1-1v-1a1 1 0 0 0-1-1\", key: \"mpwhp6\" }\n ]\n];\nconst FileBraces = createLucideIcon(\"file-braces\", __iconNode);\n\nexport { __iconNode, FileBraces as default };\n//# sourceMappingURL=file-braces.js.map\n","/**\n * @license lucide-react v0.561.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"circle\", { cx: \"9\", cy: \"12\", r: \"1\", key: \"1vctgf\" }],\n [\"circle\", { cx: \"9\", cy: \"5\", r: \"1\", key: \"hp0tcf\" }],\n [\"circle\", { cx: \"9\", cy: \"19\", r: \"1\", key: \"fkjjf6\" }],\n [\"circle\", { cx: \"15\", cy: \"12\", r: \"1\", key: \"1tmaij\" }],\n [\"circle\", { cx: \"15\", cy: \"5\", r: \"1\", key: \"19l28e\" }],\n [\"circle\", { cx: \"15\", cy: \"19\", r: \"1\", key: \"f4zoj3\" }]\n];\nconst GripVertical = createLucideIcon(\"grip-vertical\", __iconNode);\n\nexport { __iconNode, GripVertical as default };\n//# sourceMappingURL=grip-vertical.js.map\n","/**\n * @license lucide-react v0.561.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"M9 17H7A5 5 0 0 1 7 7h2\", key: \"8i5ue5\" }],\n [\"path\", { d: \"M15 7h2a5 5 0 1 1 0 10h-2\", key: \"1b9ql8\" }],\n [\"line\", { x1: \"8\", x2: \"16\", y1: \"12\", y2: \"12\", key: \"1jonct\" }]\n];\nconst Link2 = createLucideIcon(\"link-2\", __iconNode);\n\nexport { __iconNode, Link2 as default };\n//# sourceMappingURL=link-2.js.map\n","/**\n * @license lucide-react v0.561.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71\", key: \"1cjeqo\" }],\n [\"path\", { d: \"M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71\", key: \"19qd67\" }]\n];\nconst Link = createLucideIcon(\"link\", __iconNode);\n\nexport { __iconNode, Link as default };\n//# sourceMappingURL=link.js.map\n","/**\n * @license lucide-react v0.561.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"M15 3h6v6\", key: \"1q9fwt\" }],\n [\"path\", { d: \"m21 3-7 7\", key: \"1l2asr\" }],\n [\"path\", { d: \"m3 21 7-7\", key: \"tjx5ai\" }],\n [\"path\", { d: \"M9 21H3v-6\", key: \"wtvkvv\" }]\n];\nconst Maximize2 = createLucideIcon(\"maximize-2\", __iconNode);\n\nexport { __iconNode, Maximize2 as default };\n//# sourceMappingURL=maximize-2.js.map\n","/**\n * @license lucide-react v0.561.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"M5 12h14\", key: \"1ays0h\" }],\n [\"path\", { d: \"M12 5v14\", key: \"s699le\" }]\n];\nconst Plus = createLucideIcon(\"plus\", __iconNode);\n\nexport { __iconNode, Plus as default };\n//# sourceMappingURL=plus.js.map\n","/**\n * @license lucide-react v0.561.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"M14 17H5\", key: \"gfn3mx\" }],\n [\"path\", { d: \"M19 7h-9\", key: \"6i9tg\" }],\n [\"circle\", { cx: \"17\", cy: \"17\", r: \"3\", key: \"18b49y\" }],\n [\"circle\", { cx: \"7\", cy: \"7\", r: \"3\", key: \"dfmy0x\" }]\n];\nconst Settings2 = createLucideIcon(\"settings-2\", __iconNode);\n\nexport { __iconNode, Settings2 as default };\n//# sourceMappingURL=settings-2.js.map\n","/**\n * @license lucide-react v0.561.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"M10 11v6\", key: \"nco0om\" }],\n [\"path\", { d: \"M14 11v6\", key: \"outv1u\" }],\n [\"path\", { d: \"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6\", key: \"miytrc\" }],\n [\"path\", { d: \"M3 6h18\", key: \"d0wm0j\" }],\n [\"path\", { d: \"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2\", key: \"e791ji\" }]\n];\nconst Trash2 = createLucideIcon(\"trash-2\", __iconNode);\n\nexport { __iconNode, Trash2 as default };\n//# sourceMappingURL=trash-2.js.map\n","/**\n * @license lucide-react v0.561.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\n \"path\",\n {\n d: \"m18.84 12.25 1.72-1.71h-.02a5.004 5.004 0 0 0-.12-7.07 5.006 5.006 0 0 0-6.95 0l-1.72 1.71\",\n key: \"yqzxt4\"\n }\n ],\n [\n \"path\",\n {\n d: \"m5.17 11.75-1.71 1.71a5.004 5.004 0 0 0 .12 7.07 5.006 5.006 0 0 0 6.95 0l1.71-1.71\",\n key: \"4qinb0\"\n }\n ],\n [\"line\", { x1: \"8\", x2: \"8\", y1: \"2\", y2: \"5\", key: \"1041cp\" }],\n [\"line\", { x1: \"2\", x2: \"5\", y1: \"8\", y2: \"8\", key: \"14m1p5\" }],\n [\"line\", { x1: \"16\", x2: \"16\", y1: \"19\", y2: \"22\", key: \"rzdirn\" }],\n [\"line\", { x1: \"19\", x2: \"22\", y1: \"16\", y2: \"16\", key: \"ox905f\" }]\n];\nconst Unlink = createLucideIcon(\"unlink\", __iconNode);\n\nexport { __iconNode, Unlink as default };\n//# sourceMappingURL=unlink.js.map\n","/**\n * @license lucide-react v0.561.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"M12 3v12\", key: \"1x0j5s\" }],\n [\"path\", { d: \"m17 8-5-5-5 5\", key: \"7q97r8\" }],\n [\"path\", { d: \"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\", key: \"ih7n3h\" }]\n];\nconst Upload = createLucideIcon(\"upload\", __iconNode);\n\nexport { __iconNode, Upload as default };\n//# sourceMappingURL=upload.js.map\n","/**\n * @license lucide-react v0.561.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"M18 6 6 18\", key: \"1bl5f8\" }],\n [\"path\", { d: \"m6 6 12 12\", key: \"d8bk6v\" }]\n];\nconst X = createLucideIcon(\"x\", __iconNode);\n\nexport { __iconNode, X as default };\n//# sourceMappingURL=x.js.map\n","import { cn } from '@/lib/utils'\nimport type { SetterProps } from '@easy-editor/core'\nimport {\n AlignEndHorizontal,\n AlignEndVertical,\n AlignHorizontalDistributeCenter,\n AlignStartHorizontal,\n AlignStartVertical,\n AlignVerticalDistributeCenter,\n Maximize2,\n} from 'lucide-react'\nimport { useCallback } from 'react'\nimport styles from './styles.module.css'\n\nexport interface AlignValue {\n horizontal: 'left' | 'center' | 'right' | 'stretch'\n vertical: 'top' | 'center' | 'bottom' | 'stretch'\n}\n\nexport interface AlignSetterProps extends SetterProps<AlignValue> {\n showHorizontal?: boolean\n showVertical?: boolean\n mode?: 'flex' | 'text'\n}\n\nconst defaultValue: AlignValue = {\n horizontal: 'left',\n vertical: 'top',\n}\n\nconst horizontalOptions: Array<{\n value: AlignValue['horizontal']\n icon: React.ComponentType<{ className?: string }>\n label: string\n}> = [\n { value: 'left', icon: AlignStartVertical, label: '左对齐' },\n { value: 'center', icon: AlignVerticalDistributeCenter, label: '水平居中' },\n { value: 'right', icon: AlignEndVertical, label: '右对齐' },\n { value: 'stretch', icon: Maximize2, label: '水平拉伸' },\n]\n\nconst verticalOptions: Array<{\n value: AlignValue['vertical']\n icon: React.ComponentType<{ className?: string }>\n label: string\n}> = [\n { value: 'top', icon: AlignStartHorizontal, label: '顶部对齐' },\n { value: 'center', icon: AlignHorizontalDistributeCenter, label: '垂直居中' },\n { value: 'bottom', icon: AlignEndHorizontal, label: '底部对齐' },\n { value: 'stretch', icon: Maximize2, label: '垂直拉伸' },\n]\n\n// 9宫格位置映射\nconst gridPositions: Array<{ h: AlignValue['horizontal']; v: AlignValue['vertical'] }> = [\n { h: 'left', v: 'top' },\n { h: 'center', v: 'top' },\n { h: 'right', v: 'top' },\n { h: 'left', v: 'center' },\n { h: 'center', v: 'center' },\n { h: 'right', v: 'center' },\n { h: 'left', v: 'bottom' },\n { h: 'center', v: 'bottom' },\n { h: 'right', v: 'bottom' },\n]\n\n// 获取元素在容器中的位置样式\nconst getElementPosition = (h: AlignValue['horizontal'], v: AlignValue['vertical']) => {\n const style: React.CSSProperties = {\n position: 'absolute',\n }\n\n // 水平位置\n if (h === 'left') {\n style.left = '4px'\n style.width = '30%'\n } else if (h === 'center') {\n style.left = '50%'\n style.transform = 'translateX(-50%)'\n style.width = '30%'\n } else if (h === 'right') {\n style.right = '4px'\n style.width = '30%'\n } else {\n style.left = '4px'\n style.right = '4px'\n style.width = 'auto'\n }\n\n // 垂直位置\n if (v === 'top') {\n style.top = '4px'\n style.height = '30%'\n } else if (v === 'center') {\n style.top = '50%'\n style.transform = h === 'center' ? 'translate(-50%, -50%)' : 'translateY(-50%)'\n style.height = '30%'\n } else if (v === 'bottom') {\n style.bottom = '4px'\n style.height = '30%'\n } else {\n style.top = '4px'\n style.bottom = '4px'\n style.height = 'auto'\n }\n\n return style\n}\n\nconst AlignSetter = (props: AlignSetterProps) => {\n const { value, initialValue, onChange, showHorizontal = true, showVertical = true } = props\n\n const currentValue = value ?? initialValue ?? defaultValue\n\n const updateAlign = useCallback(\n (updates: Partial<AlignValue>) => {\n onChange({ ...currentValue, ...updates })\n },\n [currentValue, onChange],\n )\n\n const handleGridClick = useCallback(\n (h: AlignValue['horizontal'], v: AlignValue['vertical']) => {\n onChange({ horizontal: h, vertical: v })\n },\n [onChange],\n )\n\n const isGridSelected = (h: AlignValue['horizontal'], v: AlignValue['vertical']) =>\n currentValue.horizontal === h && currentValue.vertical === v\n\n return (\n <div className={styles.container}>\n {/* 可视化对齐预览 + 9宫格选择器 */}\n {showHorizontal === true && showVertical === true ? (\n <div className={styles.visualWrapper}>\n {/* 预览区域 */}\n <div className={styles.previewBox}>\n <div\n className={styles.previewElement}\n style={getElementPosition(currentValue.horizontal, currentValue.vertical)}\n />\n </div>\n\n {/* 9宫格选择器 */}\n <div className={styles.grid}>\n {gridPositions.map(pos => (\n <button\n aria-label={`Align ${pos.h} ${pos.v}`}\n className={cn(styles.gridButton, isGridSelected(pos.h, pos.v) ? styles.gridButtonSelected : '')}\n key={`${pos.h}-${pos.v}`}\n onClick={() => handleGridClick(pos.h, pos.v)}\n type='button'\n />\n ))}\n </div>\n </div>\n ) : null}\n\n {/* 水平对齐 */}\n {showHorizontal === true ? (\n <div className={styles.section}>\n <span className={styles.sectionLabel}>水平对齐</span>\n <div className={styles.buttonGroup}>\n {horizontalOptions.map(option => {\n const Icon = option.icon\n const isRotated = option.value === 'stretch'\n return (\n <button\n aria-label={option.label}\n className={cn(\n styles.alignButton,\n currentValue.horizontal === option.value ? styles.alignButtonSelected : '',\n )}\n key={option.value}\n onClick={() => updateAlign({ horizontal: option.value })}\n title={option.label}\n type='button'\n >\n <Icon className={cn(styles.alignIcon, isRotated ? styles.alignIconRotated : '')} />\n </button>\n )\n })}\n </div>\n </div>\n ) : null}\n\n {/* 垂直对齐 */}\n {showVertical === true ? (\n <div className={styles.section}>\n <span className={styles.sectionLabel}>垂直对齐</span>\n <div className={styles.buttonGroup}>\n {verticalOptions.map(option => {\n const Icon = option.icon\n return (\n <button\n aria-label={option.label}\n className={cn(\n styles.alignButton,\n currentValue.vertical === option.value ? styles.alignButtonSelected : '',\n )}\n key={option.value}\n onClick={() => updateAlign({ vertical: option.value })}\n title={option.label}\n type='button'\n >\n <Icon className={styles.alignIcon} />\n </button>\n )\n })}\n </div>\n </div>\n ) : null}\n </div>\n )\n}\n\nexport default AlignSetter\n","import type { SetterProps } from '@easy-editor/core'\nimport { GripVertical, Plus, Trash2 } from 'lucide-react'\nimport { useCallback } from 'react'\nimport styles from './styles.module.css'\n\nexport interface ArraySetterProps extends SetterProps<unknown[]> {\n itemSetter?: 'string' | 'number'\n maxItems?: number\n minItems?: number\n placeholder?: string\n addButtonText?: string\n}\n\nconst ArraySetter = (props: ArraySetterProps) => {\n const {\n value,\n initialValue,\n itemSetter = 'string',\n maxItems,\n minItems = 0,\n placeholder,\n addButtonText = '添加项',\n onChange,\n } = props\n\n const items = value ?? initialValue ?? []\n\n const handleAdd = useCallback(() => {\n if (maxItems && items.length >= maxItems) {\n return\n }\n const newItem = itemSetter === 'number' ? 0 : ''\n onChange([...items, newItem])\n }, [items, maxItems, itemSetter, onChange])\n\n const handleRemove = useCallback(\n (index: number) => {\n if (items.length <= minItems) {\n return\n }\n const newItems = items.filter((_, i) => i !== index)\n onChange(newItems)\n },\n [items, minItems, onChange],\n )\n\n const handleChange = useCallback(\n (index: number, newValue: unknown) => {\n const newItems = [...items]\n newItems[index] = newValue\n onChange(newItems)\n },\n [items, onChange],\n )\n\n const canAdd = !maxItems || items.length < maxItems\n const canRemove = items.length > minItems\n\n return (\n <div className={styles.container}>\n {items.map((item, index) => (\n <div className={styles.item} key={`item-${String(item)}-${index}`}>\n <GripVertical className={styles.dragHandle} />\n <input\n className={styles.input}\n onChange={e => {\n const val = itemSetter === 'number' ? +e.target.value : e.target.value\n handleChange(index, val)\n }}\n placeholder={placeholder}\n type={itemSetter === 'number' ? 'number' : 'text'}\n value={item as string | number}\n />\n <button\n className={styles.removeButton}\n disabled={!canRemove}\n onClick={() => handleRemove(index)}\n type='button'\n >\n <Trash2 className={styles.removeIcon} />\n </button>\n </div>\n ))}\n <button className={styles.addButton} disabled={!canAdd} onClick={handleAdd} type='button'>\n <Plus className={styles.addIcon} />\n {addButtonText}\n </button>\n </div>\n )\n}\n\nexport default ArraySetter\n","function _extends() {\n return _extends = Object.assign ? Object.assign.bind() : function (n) {\n for (var e = 1; e < arguments.length; e++) {\n var t = arguments[e];\n for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);\n }\n return n;\n }, _extends.apply(null, arguments);\n}\nexport { _extends as default };","function _objectWithoutPropertiesLoose(r, e) {\n if (null == r) return {};\n var t = {};\n for (var n in r) if ({}.hasOwnProperty.call(r, n)) {\n if (-1 !== e.indexOf(n)) continue;\n t[n] = r[n];\n }\n return t;\n}\nexport { _objectWithoutPropertiesLoose as default };","import _extends from \"@babel/runtime/helpers/extends\";\nvar RGB_MAX = 255;\nvar HUE_MAX = 360;\nvar SV_MAX = 100;\n/**\n * ```js\n * rgbaToHsva({ r: 255, g: 255, b: 255, a: 1 }) //=> { h: 0, s: 0, v: 100, a: 1 }\n * ```\n */\nexport var rgbaToHsva = _ref => {\n var {\n r,\n g,\n b,\n a\n } = _ref;\n var max = Math.max(r, g, b);\n var delta = max - Math.min(r, g, b);\n\n // prettier-ignore\n var hh = delta ? max === r ? (g - b) / delta : max === g ? 2 + (b - r) / delta : 4 + (r - g) / delta : 0;\n return {\n h: 60 * (hh < 0 ? hh + 6 : hh),\n s: max ? delta / max * SV_MAX : 0,\n v: max / RGB_MAX * SV_MAX,\n a\n };\n};\nexport var hsvaToHslString = hsva => {\n var {\n h,\n s,\n l\n } = hsvaToHsla(hsva);\n // return `hsl(${h}, ${s}%, ${l}%)`;\n return \"hsl(\" + h + \", \" + Math.round(s) + \"%, \" + Math.round(l) + \"%)\";\n};\nexport var hsvaToHsvString = _ref2 => {\n var {\n h,\n s,\n v\n } = _ref2;\n return \"hsv(\" + h + \", \" + s + \"%, \" + v + \"%)\";\n};\nexport var hsvaToHsvaString = _ref3 => {\n var {\n h,\n s,\n v,\n a\n } = _ref3;\n return \"hsva(\" + h + \", \" + s + \"%, \" + v + \"%, \" + a + \")\";\n};\nexport var hsvaToHslaString = hsva => {\n var {\n h,\n s,\n l,\n a\n } = hsvaToHsla(hsva);\n return \"hsla(\" + h + \", \" + s + \"%, \" + l + \"%, \" + a + \")\";\n};\nexport var hslStringToHsla = str => {\n var [h, s, l, a] = (str.match(/\\d+/g) || []).map(Number);\n return {\n h,\n s,\n l,\n a\n };\n};\nexport var hslaStringToHsva = hslString => {\n var matcher = /hsla?\\(?\\s*(-?\\d*\\.?\\d+)(deg|rad|grad|turn)?[,\\s]+(-?\\d*\\.?\\d+)%?[,\\s]+(-?\\d*\\.?\\d+)%?,?\\s*[/\\s]*(-?\\d*\\.?\\d+)?(%)?\\s*\\)?/i;\n var match = matcher.exec(hslString);\n if (!match) return {\n h: 0,\n s: 0,\n v: 0,\n a: 1\n };\n return hslaToHsva({\n h: parseHue(match[1], match[2]),\n s: Number(match[3]),\n l: Number(match[4]),\n a: match[5] === undefined ? 1 : Number(match[5]) / (match[6] ? 100 : 1)\n });\n};\nexport var hslStringToHsva = hslaStringToHsva;\nexport var hslaToHsva = _ref4 => {\n var {\n h,\n s,\n l,\n a\n } = _ref4;\n s *= (l < 50 ? l : SV_MAX - l) / SV_MAX;\n return {\n h: h,\n s: s > 0 ? 2 * s / (l + s) * SV_MAX : 0,\n v: l + s,\n a\n };\n};\nexport var hsvaToHsla = _ref5 => {\n var {\n h,\n s,\n v,\n a\n } = _ref5;\n var hh = (200 - s) * v / SV_MAX;\n return {\n h,\n s: hh > 0 && hh < 200 ? s * v / SV_MAX / (hh <= SV_MAX ? hh : 200 - hh) * SV_MAX : 0,\n l: hh / 2,\n a\n };\n};\nexport var hsvaStringToHsva = hsvString => {\n var matcher = /hsva?\\(?\\s*(-?\\d*\\.?\\d+)(deg|rad|grad|turn)?[,\\s]+(-?\\d*\\.?\\d+)%?[,\\s]+(-?\\d*\\.?\\d+)%?,?\\s*[/\\s]*(-?\\d*\\.?\\d+)?(%)?\\s*\\)?/i;\n var match = matcher.exec(hsvString);\n if (!match) return {\n h: 0,\n s: 0,\n v: 0,\n a: 1\n };\n return {\n h: parseHue(match[1], match[2]),\n s: Number(match[3]),\n v: Number(match[4]),\n a: match[5] === undefined ? 1 : Number(match[5]) / (match[6] ? SV_MAX : 1)\n };\n};\n\n/**\n * Valid CSS <angle> units.\n * https://developer.mozilla.org/en-US/docs/Web/CSS/angle\n */\nvar angleUnits = {\n grad: HUE_MAX / 400,\n turn: HUE_MAX,\n rad: HUE_MAX / (Math.PI * 2)\n};\nexport var parseHue = function parseHue(value, unit) {\n if (unit === void 0) {\n unit = 'deg';\n }\n return Number(value) * (angleUnits[unit] || 1);\n};\nexport var hsvStringToHsva = hsvaStringToHsva;\nexport var rgbaStringToHsva = rgbaString => {\n var matcher = /rgba?\\(?\\s*(-?\\d*\\.?\\d+)(%)?[,\\s]+(-?\\d*\\.?\\d+)(%)?[,\\s]+(-?\\d*\\.?\\d+)(%)?,?\\s*[/\\s]*(-?\\d*\\.?\\d+)?(%)?\\s*\\)?/i;\n var match = matcher.exec(rgbaString);\n if (!match) return {\n h: 0,\n s: 0,\n v: 0,\n a: 1\n };\n return rgbaToHsva({\n r: Number(match[1]) / (match[2] ? SV_MAX / RGB_MAX : 1),\n g: Number(match[3]) / (match[4] ? SV_MAX / RGB_MAX : 1),\n b: Number(match[5]) / (match[6] ? SV_MAX / RGB_MAX : 1),\n a: match[7] === undefined ? 1 : Number(match[7]) / (match[8] ? SV_MAX : 1)\n });\n};\nexport var rgbStringToHsva = rgbaStringToHsva;\n\n/** Converts an RGBA color plus alpha transparency to hex */\nexport var rgbaToHex = _ref6 => {\n var {\n r,\n g,\n b\n } = _ref6;\n return rgbToHex({\n r,\n g,\n b\n });\n};\nexport var rgbToHex = _ref7 => {\n var {\n r,\n g,\n b\n } = _ref7;\n var bin = r << 16 | g << 8 | b;\n return \"#\" + (h => new Array(7 - h.length).join('0') + h)(bin.toString(16));\n};\nexport var rgbaToHexa = _ref8 => {\n var {\n r,\n g,\n b,\n a\n } = _ref8;\n var alpha = typeof a === 'number' && (a * 255 | 1 << 8).toString(16).slice(1);\n return \"\" + rgbToHex({\n r,\n g,\n b\n }) + (alpha ? alpha : '');\n};\nexport var hexToHsva = hex => rgbaToHsva(hexToRgba(hex));\nexport var hexToRgba = hex => {\n var htemp = hex.replace('#', '');\n if (/^#?/.test(hex) && htemp.length === 3) {\n hex = \"#\" + htemp.charAt(0) + htemp.charAt(0) + htemp.charAt(1) + htemp.charAt(1) + htemp.charAt(2) + htemp.charAt(2);\n }\n var reg = new RegExp(\"[A-Za-z0-9]{2}\", 'g');\n var [r, g, b = 0, a] = hex.match(reg).map(v => parseInt(v, 16));\n return {\n r,\n g,\n b,\n a: (a != null ? a : 255) / RGB_MAX\n };\n};\n\n/**\n * Converts HSVA to RGBA. Based on formula from https://en.wikipedia.org/wiki/HSL_and_HSV\n * @param color HSVA color as an array [0-360, 0-1, 0-1, 0-1]\n */\nexport var hsvaToRgba = _ref9 => {\n var {\n h,\n s,\n v,\n a\n } = _ref9;\n var _h = h / 60,\n _s = s / SV_MAX,\n _v = v / SV_MAX,\n hi = Math.floor(_h) % 6;\n var f = _h - Math.floor(_h),\n _p = RGB_MAX * _v * (1 - _s),\n _q = RGB_MAX * _v * (1 - _s * f),\n _t = RGB_MAX * _v * (1 - _s * (1 - f));\n _v *= RGB_MAX;\n var rgba = {};\n switch (hi) {\n case 0:\n rgba.r = _v;\n rgba.g = _t;\n rgba.b = _p;\n break;\n case 1:\n rgba.r = _q;\n rgba.g = _v;\n rgba.b = _p;\n break;\n case 2:\n rgba.r = _p;\n rgba.g = _v;\n rgba.b = _t;\n break;\n case 3:\n rgba.r = _p;\n rgba.g = _q;\n rgba.b = _v;\n break;\n case 4:\n rgba.r = _t;\n rgba.g = _p;\n rgba.b = _v;\n break;\n case 5:\n rgba.r = _v;\n rgba.g = _p;\n rgba.b = _q;\n break;\n }\n rgba.r = Math.round(rgba.r);\n rgba.g = Math.round(rgba.g);\n rgba.b = Math.round(rgba.b);\n return _extends({}, rgba, {\n a\n });\n};\nexport var hsvaToRgbString = hsva => {\n var {\n r,\n g,\n b\n } = hsvaToRgba(hsva);\n return \"rgb(\" + r + \", \" + g + \", \" + b + \")\";\n};\nexport var hsvaToRgbaString = hsva => {\n var {\n r,\n g,\n b,\n a\n } = hsvaToRgba(hsva);\n return \"rgba(\" + r + \", \" + g + \", \" + b + \", \" + a + \")\";\n};\nexport var rgbaToRgb = _ref0 => {\n var {\n r,\n g,\n b\n } = _ref0;\n return {\n r,\n g,\n b\n };\n};\nexport var hslaToHsl = _ref1 => {\n var {\n h,\n s,\n l\n } = _ref1;\n return {\n h,\n s,\n l\n };\n};\nexport var hsvaToHex = hsva => rgbToHex(hsvaToRgba(hsva));\nexport var hsvaToHexa = hsva => rgbaToHexa(hsvaToRgba(hsva));\nexport var hsvaToHsv = _ref10 => {\n var {\n h,\n s,\n v\n } = _ref10;\n return {\n h,\n s,\n v\n };\n};\nexport var hexToXY = hex => rgbToXY(rgbaToRgb(hexToRgba(hex)));\nexport var xyToHex = xy => rgbToHex(_extends({}, xyToRgb(xy)));\n\n/**\n * Converts XY to RGB. Based on formula from https://developers.meethue.com/develop/application-design-guidance/color-conversion-formulas-rgb-to-xy-and-back/\n * @param color XY color and brightness as an array [0-1, 0-1, 0-1]\n */\nexport var xyToRgb = _ref11 => {\n var {\n x,\n y,\n bri = 255\n } = _ref11;\n var red = x * 3.2406255 + y * -1.537208 + bri * -0.4986286;\n var green = x * -0.9689307 + y * 1.8757561 + bri * 0.0415175;\n var blue = x * 0.0557101 + y * -0.2040211 + bri * 1.0569959;\n var translate = function translate(color) {\n return color <= 0.0031308 ? 12.92 * color : 1.055 * Math.pow(color, 1 / 2.4) - 0.055;\n };\n return {\n r: Math.round(255 * translate(red)),\n g: Math.round(255 * translate(green)),\n b: Math.round(255 * translate(blue))\n };\n};\n\n/**\n * Converts RGB to XY. Based on formula from https://developers.meethue.com/develop/application-design-guidance/color-conversion-formulas-rgb-to-xy-and-back/\n * @param color RGB color as an array [0-255, 0-255, 0-255]\n */\nexport var rgbToXY = _ref12 => {\n var {\n r,\n g,\n b\n } = _ref12;\n var translateColor = function translateColor(color) {\n return color <= 0.04045 ? color / 12.92 : Math.pow((color + 0.055) / 1.055, 2.4);\n };\n var red = translateColor(r / 255);\n var green = translateColor(g / 255);\n var blue = translateColor(b / 255);\n var xyz = {};\n xyz.x = red * 0.4124 + green * 0.3576 + blue * 0.1805;\n xyz.y = red * 0.2126 + green * 0.7152 + blue * 0.0722;\n xyz.bri = red * 0.0193 + green * 0.1192 + blue * 0.9505;\n return xyz;\n};\nexport var color = str => {\n var rgb;\n var hsl;\n var hsv;\n var rgba;\n var hsla;\n var hsva;\n var xy;\n var hex;\n var hexa;\n if (typeof str === 'string' && validHex(str)) {\n hsva = hexToHsva(str);\n hex = str;\n } else if (typeof str !== 'string') {\n hsva = str;\n }\n if (hsva) {\n hsv = hsvaToHsv(hsva);\n hsla = hsvaToHsla(hsva);\n rgba = hsvaToRgba(hsva);\n hexa = rgbaToHexa(rgba);\n hex = hsvaToHex(hsva);\n hsl = hslaToHsl(hsla);\n rgb = rgbaToRgb(rgba);\n xy = rgbToXY(rgb);\n }\n return {\n rgb,\n hsl,\n hsv,\n rgba,\n hsla,\n hsva,\n hex,\n hexa,\n xy\n };\n};\nexport var getContrastingColor = str => {\n if (!str) {\n return '#ffffff';\n }\n var col = color(str);\n var yiq = (col.rgb.r * 299 + col.rgb.g * 587 + col.rgb.b * 114) / 1000;\n return yiq >= 128 ? '#000000' : '#ffffff';\n};\nexport var equalColorObjects = (first, second) => {\n if (first === second) return true;\n for (var prop in first) {\n // The following allows for a type-safe calling of this function (first & second have to be HSL, HSV, or RGB)\n // with type-unsafe iterating over object keys. TS does not allow this without an index (`[key: string]: number`)\n // on an object to define how iteration is normally done. To ensure extra keys are not allowed on our types,\n // we must cast our object to unknown (as RGB demands `r` be a key, while `Record<string, x>` does not care if\n // there is or not), and then as a type TS can iterate over.\n if (first[prop] !== second[prop]) return false;\n }\n return true;\n};\nexport var equalColorString = (first, second) => {\n return first.replace(/\\s/g, '') === second.replace(/\\s/g, '');\n};\nexport var equalHex = (first, second) => {\n if (first.toLowerCase() === second.toLowerCase()) return true;\n\n // To compare colors like `#FFF` and `ffffff` we convert them into RGB objects\n return equalColorObjects(hexToRgba(first), hexToRgba(second));\n};\nexport var validHex = hex => /^#?([A-Fa-f0-9]{3,4}){1,2}$/.test(hex);","import { useRef, useEffect, useCallback } from 'react';\n\n// Saves incoming handler to the ref in order to avoid \"useCallback hell\"\nexport function useEventCallback(handler) {\n var callbackRef = useRef(handler);\n useEffect(() => {\n callbackRef.current = handler;\n });\n return useCallback((value, event) => callbackRef.current && callbackRef.current(value, event), []);\n}\n\n// Check if an event was triggered by touch\nexport var isTouch = event => 'touches' in event;\n\n// Browsers introduced an intervention, making touch events passive by default.\n// This workaround removes `preventDefault` call from the touch handlers.\n// https://github.com/facebook/react/issues/19651\nexport var preventDefaultMove = event => {\n !isTouch(event) && event.preventDefault && event.preventDefault();\n};\n// Clamps a value between an upper and lower bound.\n// We use ternary operators because it makes the minified code\n// 2 times shorter then `Math.min(Math.max(a,b),c)`\nexport var clamp = function clamp(number, min, max) {\n if (min === void 0) {\n min = 0;\n }\n if (max === void 0) {\n max = 1;\n }\n return number > max ? max : number < min ? min : number;\n};\n// Returns a relative position of the pointer inside the node's bounding box\nexport var getRelativePosition = (node, event) => {\n var rect = node.getBoundingClientRect();\n\n // Get user's pointer position from `touches` array if it's a `TouchEvent`\n var pointer = isTouch(event) ? event.touches[0] : event;\n return {\n left: clamp((pointer.pageX - (rect.left + window.pageXOffset)) / rect.width),\n top: clamp((pointer.pageY - (rect.top + window.pageYOffset)) / rect.height),\n width: rect.width,\n height: rect.height,\n x: pointer.pageX - (rect.left + window.pageXOffset),\n y: pointer.pageY - (rect.top + window.pageYOffset)\n };\n};","import _extends from \"@babel/runtime/helpers/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/objectWithoutPropertiesLoose\";\nvar _excluded = [\"prefixCls\", \"className\", \"onMove\", \"onDown\"];\nimport React, { useRef, useState, useCallback, useEffect } from 'react';\nimport { isTouch, preventDefaultMove, getRelativePosition, useEventCallback } from \"./utils.js\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport * from \"./utils.js\";\nvar Interactive = /*#__PURE__*/React.forwardRef((props, ref) => {\n var {\n prefixCls = 'w-color-interactive',\n className,\n onMove,\n onDown\n } = props,\n reset = _objectWithoutPropertiesLoose(props, _excluded);\n var container = useRef(null);\n var hasTouched = useRef(false);\n var [isDragging, setDragging] = useState(false);\n var onMoveCallback = useEventCallback(onMove);\n var onKeyCallback = useEventCallback(onDown);\n\n // Prevent mobile browsers from handling mouse events (conflicting with touch ones).\n // If we detected a touch interaction before, we prefer reacting to touch events only.\n var isValid = event => {\n if (hasTouched.current && !isTouch(event)) return false;\n hasTouched.current = isTouch(event);\n return true;\n };\n var handleMove = useCallback(event => {\n preventDefaultMove(event);\n if (!container.current) return;\n var isDown = isTouch(event) ? event.touches.length > 0 : event.buttons > 0;\n if (!isDown) {\n setDragging(false);\n return;\n }\n onMoveCallback == null || onMoveCallback(getRelativePosition(container.current, event), event);\n }, [onMoveCallback]);\n var handleMoveEnd = useCallback(() => setDragging(false), []);\n var toggleDocumentEvents = useCallback(state => {\n if (state) {\n window.addEventListener(hasTouched.current ? 'touchmove' : 'mousemove', handleMove);\n window.addEventListener(hasTouched.current ? 'touchend' : 'mouseup', handleMoveEnd);\n } else {\n window.removeEventListener('mousemove', handleMove);\n window.removeEventListener('mouseup', handleMoveEnd);\n window.removeEventListener('touchmove', handleMove);\n window.removeEventListener('touchend', handleMoveEnd);\n }\n }, [handleMove, handleMoveEnd]);\n useEffect(() => {\n toggleDocumentEvents(isDragging);\n return () => {\n toggleDocumentEvents(false);\n };\n }, [isDragging, handleMove, handleMoveEnd, toggleDocumentEvents]);\n var handleMoveStart = useCallback(event => {\n var activeEl = document.activeElement;\n activeEl == null || activeEl.blur();\n preventDefaultMove(event.nativeEvent);\n if (!isValid(event.nativeEvent)) return;\n if (!container.current) return;\n onKeyCallback == null || onKeyCallback(getRelativePosition(container.current, event.nativeEvent), event.nativeEvent);\n setDragging(true);\n }, [onKeyCallback]);\n return /*#__PURE__*/_jsx(\"div\", _extends({}, reset, {\n className: [prefixCls, className || ''].filter(Boolean).join(' '),\n style: _extends({}, reset.style, {\n touchAction: 'none'\n }),\n ref: container,\n tabIndex: 0,\n onMouseDown: handleMoveStart,\n onTouchStart: handleMoveStart\n }));\n});\nInteractive.displayName = 'Interactive';\nexport default Interactive;","import React, { useMemo } from 'react';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var Pointer = _ref => {\n var {\n className,\n color,\n left,\n top,\n prefixCls\n } = _ref;\n var style = {\n position: 'absolute',\n top,\n left\n };\n var stylePointer = {\n '--saturation-pointer-box-shadow': 'rgb(255 255 255) 0px 0px 0px 1.5px, rgb(0 0 0 / 30%) 0px 0px 1px 1px inset, rgb(0 0 0 / 40%) 0px 0px 1px 2px',\n width: 6,\n height: 6,\n transform: 'translate(-3px, -3px)',\n boxShadow: 'var(--saturation-pointer-box-shadow)',\n borderRadius: '50%',\n backgroundColor: color\n };\n return useMemo(() => /*#__PURE__*/_jsx(\"div\", {\n className: prefixCls + \"-pointer \" + (className || ''),\n style: style,\n children: /*#__PURE__*/_jsx(\"div\", {\n className: prefixCls + \"-fill\",\n style: stylePointer\n })\n }), [top, left, color, className, prefixCls]);\n};","import _extends from \"@babel/runtime/helpers/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/objectWithoutPropertiesLoose\";\nvar _excluded = [\"prefixCls\", \"radius\", \"pointer\", \"className\", \"hue\", \"style\", \"hsva\", \"onChange\"];\nimport React, { useCallback, useMemo } from 'react';\nimport { hsvaToHslaString } from '@uiw/color-convert';\nimport Interactive from '@uiw/react-drag-event-interactive';\nimport { Pointer } from \"./Pointer.js\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nvar Saturation = /*#__PURE__*/React.forwardRef((props, ref) => {\n var _hsva$h;\n var {\n prefixCls = 'w-color-saturation',\n radius = 0,\n pointer,\n className,\n hue = 0,\n style,\n hsva,\n onChange\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n var containerStyle = _extends({\n width: 200,\n height: 200,\n borderRadius: radius\n }, style, {\n position: 'relative'\n });\n var handleChange = (interaction, event) => {\n onChange && hsva && onChange({\n h: hsva.h,\n s: interaction.left * 100,\n v: (1 - interaction.top) * 100,\n a: hsva.a\n // source: 'hsv',\n });\n };\n var handleKeyDown = useCallback(event => {\n if (!hsva || !onChange) return;\n var step = 1; // 1% step for saturation and value\n var newS = hsva.s;\n var newV = hsva.v;\n var changed = false;\n switch (event.key) {\n case 'ArrowLeft':\n newS = Math.max(0, hsva.s - step);\n changed = true;\n event.preventDefault();\n break;\n case 'ArrowRight':\n newS = Math.min(100, hsva.s + step);\n changed = true;\n event.preventDefault();\n break;\n case 'ArrowUp':\n newV = Math.min(100, hsva.v + step);\n changed = true;\n event.preventDefault();\n break;\n case 'ArrowDown':\n newV = Math.max(0, hsva.v - step);\n changed = true;\n event.preventDefault();\n break;\n default:\n return;\n }\n if (changed) {\n onChange({\n h: hsva.h,\n s: newS,\n v: newV,\n a: hsva.a\n });\n }\n }, [hsva, onChange]);\n var pointerElement = useMemo(() => {\n if (!hsva) return null;\n var comProps = {\n top: 100 - hsva.v + \"%\",\n left: hsva.s + \"%\",\n color: hsvaToHslaString(hsva)\n };\n if (pointer && typeof pointer === 'function') {\n return pointer(_extends({\n prefixCls\n }, comProps));\n }\n return /*#__PURE__*/_jsx(Pointer, _extends({\n prefixCls: prefixCls\n }, comProps));\n }, [hsva, pointer, prefixCls]);\n var handleClick = useCallback(event => {\n event.target.focus();\n }, []);\n return /*#__PURE__*/_jsx(Interactive, _extends({\n className: [prefixCls, className || ''].filter(Boolean).join(' ')\n }, other, {\n style: _extends({\n position: 'absolute',\n inset: 0,\n cursor: 'crosshair',\n backgroundImage: \"linear-gradient(0deg, #000, transparent), linear-gradient(90deg, #fff, hsl(\" + ((_hsva$h = hsva == null ? void 0 : hsva.h) != null ? _hsva$h : hue) + \", 100%, 50%))\"\n }, containerStyle, {\n outline: 'none'\n }),\n ref: ref,\n onMove: handleChange,\n onDown: handleChange,\n onKeyDown: handleKeyDown,\n onClick: handleClick,\n children: pointerElement\n }));\n});\nSaturation.displayName = 'Saturation';\nexport default Saturation;","import _extends from \"@babel/runtime/helpers/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/objectWithoutPropertiesLoose\";\nvar _excluded = [\"className\", \"prefixCls\", \"left\", \"top\", \"style\", \"fillProps\"];\nimport React from 'react';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport var Pointer = _ref => {\n var {\n className,\n prefixCls,\n left,\n top,\n style,\n fillProps\n } = _ref,\n reset = _objectWithoutPropertiesLoose(_ref, _excluded);\n var styleWrapper = _extends({}, style, {\n position: 'absolute',\n left,\n top\n });\n var stylePointer = _extends({\n width: 18,\n height: 18,\n boxShadow: 'var(--alpha-pointer-box-shadow)',\n borderRadius: '50%',\n backgroundColor: 'var(--alpha-pointer-background-color)'\n }, fillProps == null ? void 0 : fillProps.style, {\n transform: left ? 'translate(-9px, -1px)' : 'translate(-1px, -9px)'\n });\n return /*#__PURE__*/_jsx(\"div\", _extends({\n className: prefixCls + \"-pointer \" + (className || ''),\n style: styleWrapper\n }, reset, {\n children: /*#__PURE__*/_jsx(\"div\", _extends({\n className: prefixCls + \"-fill\"\n }, fillProps, {\n style: stylePointer\n }))\n }));\n};","import _extends from \"@babel/runtime/helpers/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/objectWithoutPropertiesLoose\";\nvar _excluded = [\"prefixCls\", \"className\", \"hsva\", \"background\", \"bgProps\", \"innerProps\", \"pointerProps\", \"radius\", \"width\", \"height\", \"direction\", \"style\", \"onChange\", \"pointer\"];\nimport React, { useCallback } from 'react';\nimport { hsvaToHslaString } from '@uiw/color-convert';\nimport Interactive from '@uiw/react-drag-event-interactive';\nimport { Pointer } from \"./Pointer.js\";\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nexport * from \"./Pointer.js\";\nexport var BACKGROUND_IMG = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAMUlEQVQ4T2NkYGAQYcAP3uCTZhw1gGGYhAGBZIA/nYDCgBDAm9BGDWAAJyRCgLaBCAAgXwixzAS0pgAAAABJRU5ErkJggg==';\nvar Alpha = /*#__PURE__*/React.forwardRef((props, ref) => {\n var {\n prefixCls = 'w-color-alpha',\n className,\n hsva,\n background,\n bgProps = {},\n innerProps = {},\n pointerProps = {},\n radius = 0,\n width,\n height = 16,\n direction = 'horizontal',\n style,\n onChange,\n pointer\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n var handleChange = offset => {\n onChange && onChange(_extends({}, hsva, {\n a: direction === 'horizontal' ? offset.left : offset.top\n }), offset);\n };\n var colorTo = hsvaToHslaString(Object.assign({}, hsva, {\n a: 1\n }));\n var innerBackground = \"linear-gradient(to \" + (direction === 'horizontal' ? 'right' : 'bottom') + \", rgba(244, 67, 54, 0) 0%, \" + colorTo + \" 100%)\";\n var comProps = {};\n if (direction === 'horizontal') {\n comProps.left = hsva.a * 100 + \"%\";\n } else {\n comProps.top = hsva.a * 100 + \"%\";\n }\n var styleWrapper = _extends({\n '--alpha-background-color': '#fff',\n '--alpha-pointer-background-color': 'rgb(248, 248, 248)',\n '--alpha-pointer-box-shadow': 'rgb(0 0 0 / 37%) 0px 1px 4px 0px',\n borderRadius: radius,\n background: \"url(\" + BACKGROUND_IMG + \") left center\",\n backgroundColor: 'var(--alpha-background-color)'\n }, {\n width,\n height\n }, style, {\n position: 'relative'\n });\n var handleKeyDown = useCallback(event => {\n var step = 0.01; // 1% step\n var currentAlpha = hsva.a;\n var newAlpha = currentAlpha;\n switch (event.key) {\n case 'ArrowLeft':\n if (direction === 'horizontal') {\n newAlpha = Math.max(0, currentAlpha - step);\n event.preventDefault();\n }\n break;\n case 'ArrowRight':\n if (direction === 'horizontal') {\n newAlpha = Math.min(1, currentAlpha + step);\n event.preventDefault();\n }\n break;\n case 'ArrowUp':\n if (direction === 'vertical') {\n newAlpha = Math.max(0, currentAlpha - step);\n event.preventDefault();\n }\n break;\n case 'ArrowDown':\n if (direction === 'vertical') {\n newAlpha = Math.min(1, currentAlpha + step);\n event.preventDefault();\n }\n break;\n default:\n return;\n }\n if (newAlpha !== currentAlpha) {\n var syntheticOffset = {\n left: direction === 'horizontal' ? newAlpha : hsva.a,\n top: direction === 'vertical' ? newAlpha : hsva.a,\n width: 0,\n height: 0,\n x: 0,\n y: 0\n };\n onChange && onChange(_extends({}, hsva, {\n a: newAlpha\n }), syntheticOffset);\n }\n }, [hsva, direction, onChange]);\n var handleClick = useCallback(event => {\n event.target.focus();\n }, []);\n var pointerElement = pointer && typeof pointer === 'function' ? pointer(_extends({\n prefixCls\n }, pointerProps, comProps)) : /*#__PURE__*/_jsx(Pointer, _extends({}, pointerProps, {\n prefixCls: prefixCls\n }, comProps));\n return /*#__PURE__*/_jsxs(\"div\", _extends({}, other, {\n className: [prefixCls, prefixCls + \"-\" + direction, className || ''].filter(Boolean).join(' '),\n style: styleWrapper,\n ref: ref,\n children: [/*#__PURE__*/_jsx(\"div\", _extends({}, bgProps, {\n style: _extends({\n inset: 0,\n position: 'absolute',\n background: background || innerBackground,\n borderRadius: radius\n }, bgProps.style)\n })), /*#__PURE__*/_jsx(Interactive, _extends({}, innerProps, {\n style: _extends({}, innerProps.style, {\n inset: 0,\n zIndex: 1,\n position: 'absolute',\n outline: 'none'\n }),\n onMove: handleChange,\n onDown: handleChange,\n onClick: handleClick,\n onKeyDown: handleKeyDown,\n children: pointerElement\n }))]\n }));\n});\nAlpha.displayName = 'Alpha';\nexport default Alpha;","import _extends from \"@babel/runtime/helpers/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/objectWithoutPropertiesLoose\";\nvar _excluded = [\"prefixCls\", \"placement\", \"label\", \"value\", \"className\", \"style\", \"labelStyle\", \"inputStyle\", \"onChange\", \"onBlur\", \"renderInput\"];\nimport React from 'react';\nimport { useRef, useEffect, useState } from 'react';\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nvar validHex = hex => /^#?([A-Fa-f0-9]{3,4}){1,2}$/.test(hex);\nvar getNumberValue = value => Number(String(value).replace(/%/g, ''));\nvar EditableInput = /*#__PURE__*/React.forwardRef((props, ref) => {\n var {\n prefixCls = 'w-color-editable-input',\n placement = 'bottom',\n label,\n value: initValue,\n className,\n style,\n labelStyle,\n inputStyle,\n onChange,\n onBlur,\n renderInput\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n var [value, setValue] = useState(initValue);\n var isFocus = useRef(false);\n useEffect(() => {\n if (props.value !== value) {\n if (!isFocus.current) {\n setValue(props.value);\n }\n }\n }, [props.value]);\n function handleChange(evn, valInit) {\n var value = (valInit || evn.target.value).trim().replace(/^#/, '');\n if (validHex(value)) {\n onChange && onChange(evn, value);\n }\n var val = getNumberValue(value);\n if (!isNaN(val)) {\n onChange && onChange(evn, val);\n }\n setValue(value);\n }\n function handleBlur(evn) {\n isFocus.current = false;\n setValue(props.value);\n onBlur && onBlur(evn);\n }\n var placementStyle = {};\n if (placement === 'bottom') {\n placementStyle['flexDirection'] = 'column';\n }\n if (placement === 'top') {\n placementStyle['flexDirection'] = 'column-reverse';\n }\n if (placement === 'left') {\n placementStyle['flexDirection'] = 'row-reverse';\n }\n var wrapperStyle = _extends({\n '--editable-input-label-color': 'rgb(153, 153, 153)',\n '--editable-input-box-shadow': 'rgb(204 204 204) 0px 0px 0px 1px inset',\n '--editable-input-color': '#666',\n position: 'relative',\n alignItems: 'center',\n display: 'flex',\n fontSize: 11\n }, placementStyle, style);\n var editableStyle = _extends({\n width: '100%',\n paddingTop: 2,\n paddingBottom: 2,\n paddingLeft: 3,\n paddingRight: 3,\n fontSize: 11,\n background: 'transparent',\n boxSizing: 'border-box',\n border: 'none',\n color: 'var(--editable-input-color)',\n boxShadow: 'var(--editable-input-box-shadow)'\n }, inputStyle);\n var inputProps = _extends({\n value,\n onChange: handleChange,\n onBlur: handleBlur,\n autoComplete: 'off',\n onFocus: () => isFocus.current = true\n }, other, {\n style: editableStyle,\n onFocusCapture: e => {\n var elm = e.target;\n elm.setSelectionRange(elm.value.length, elm.value.length);\n }\n });\n return /*#__PURE__*/_jsxs(\"div\", {\n className: [prefixCls, className || ''].filter(Boolean).join(' '),\n style: wrapperStyle,\n children: [renderInput ? renderInput(inputProps, ref) : /*#__PURE__*/_jsx(\"input\", _extends({\n ref: ref\n }, inputProps)), label && /*#__PURE__*/_jsx(\"span\", {\n style: _extends({\n color: 'var(--editable-input-label-color)',\n textTransform: 'capitalize'\n }, labelStyle),\n children: label\n })]\n });\n});\nEditableInput.displayName = 'EditableInput';\nexport default EditableInput;","import _extends from \"@babel/runtime/helpers/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/objectWithoutPropertiesLoose\";\nvar _excluded = [\"prefixCls\", \"hsva\", \"placement\", \"rProps\", \"gProps\", \"bProps\", \"aProps\", \"className\", \"style\", \"onChange\"];\nimport React from 'react';\nimport EditableInput from '@uiw/react-color-editable-input';\nimport { color as handleColor, hsvaToRgba, rgbaToHsva } from '@uiw/color-convert';\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nvar EditableInputRGBA = /*#__PURE__*/React.forwardRef((props, ref) => {\n var {\n prefixCls = 'w-color-editable-input-rgba',\n hsva,\n placement = 'bottom',\n rProps = {},\n gProps = {},\n bProps = {},\n aProps = {},\n className,\n style,\n onChange\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n var rgba = hsva ? hsvaToRgba(hsva) : {};\n function handleBlur(evn) {\n var value = Number(evn.target.value);\n if (value && value > 255) {\n evn.target.value = '255';\n }\n if (value && value < 0) {\n evn.target.value = '0';\n }\n }\n var handleAlphaBlur = evn => {\n var value = Number(evn.target.value);\n if (value && value > 100) {\n evn.target.value = '100';\n }\n if (value && value < 0) {\n evn.target.value = '0';\n }\n };\n var handleChange = (value, type, evn) => {\n if (typeof value === 'number') {\n if (type === 'a') {\n if (value < 0) value = 0;\n if (value > 100) value = 100;\n onChange && onChange(handleColor(rgbaToHsva(_extends({}, rgba, {\n a: value / 100\n }))));\n }\n if (value > 255) {\n value = 255;\n evn.target.value = '255';\n }\n if (value < 0) {\n value = 0;\n evn.target.value = '0';\n }\n if (type === 'r') {\n onChange && onChange(handleColor(rgbaToHsva(_extends({}, rgba, {\n r: value\n }))));\n }\n if (type === 'g') {\n onChange && onChange(handleColor(rgbaToHsva(_extends({}, rgba, {\n g: value\n }))));\n }\n if (type === 'b') {\n onChange && onChange(handleColor(rgbaToHsva(_extends({}, rgba, {\n b: value\n }))));\n }\n }\n };\n var roundedAlpha = rgba.a ? Math.round(rgba.a * 100) / 100 : 0;\n return /*#__PURE__*/_jsxs(\"div\", _extends({\n ref: ref,\n className: [prefixCls, className || ''].filter(Boolean).join(' ')\n }, other, {\n style: _extends({\n fontSize: 11,\n display: 'flex'\n }, style),\n children: [/*#__PURE__*/_jsx(EditableInput, _extends({\n label: \"R\",\n value: rgba.r || 0,\n onBlur: handleBlur,\n placement: placement,\n onChange: (evn, val) => handleChange(val, 'r', evn)\n }, rProps, {\n style: _extends({}, rProps.style)\n })), /*#__PURE__*/_jsx(EditableInput, _extends({\n label: \"G\",\n value: rgba.g || 0,\n onBlur: handleBlur,\n placement: placement,\n onChange: (evn, val) => handleChange(val, 'g', evn)\n }, gProps, {\n style: _extends({\n marginLeft: 5\n }, rProps.style)\n })), /*#__PURE__*/_jsx(EditableInput, _extends({\n label: \"B\",\n value: rgba.b || 0,\n onBlur: handleBlur,\n placement: placement,\n onChange: (evn, val) => handleChange(val, 'b', evn)\n }, bProps, {\n style: _extends({\n marginLeft: 5\n }, bProps.style)\n })), aProps && /*#__PURE__*/_jsx(EditableInput, _extends({\n label: \"A\",\n value: parseInt(String(roundedAlpha * 100), 10),\n onBlur: handleAlphaBlur,\n placement: placement,\n onChange: (evn, val) => handleChange(val, 'a', evn)\n }, aProps, {\n style: _extends({\n marginLeft: 5\n }, aProps.style)\n }))]\n }));\n});\nEditableInputRGBA.displayName = 'EditableInputRGBA';\nexport default EditableInputRGBA;","import _extends from \"@babel/runtime/helpers/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/objectWithoutPropertiesLoose\";\nvar _excluded = [\"prefixCls\", \"className\", \"hue\", \"onChange\", \"direction\"];\nimport React from 'react';\nimport Alpha from '@uiw/react-color-alpha';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nvar Hue = /*#__PURE__*/React.forwardRef((props, ref) => {\n var {\n prefixCls = 'w-color-hue',\n className,\n hue = 0,\n onChange: _onChange,\n direction = 'horizontal'\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n return /*#__PURE__*/_jsx(Alpha, _extends({\n ref: ref,\n className: prefixCls + \" \" + (className || '')\n }, other, {\n direction: direction,\n background: \"linear-gradient(to \" + (direction === 'horizontal' ? 'right' : 'bottom') + \", rgb(255, 0, 0) 0%, rgb(255, 255, 0) 17%, rgb(0, 255, 0) 33%, rgb(0, 255, 255) 50%, rgb(0, 0, 255) 67%, rgb(255, 0, 255) 83%, rgb(255, 0, 0) 100%)\",\n hsva: {\n h: hue,\n s: 100,\n v: 100,\n a: hue / 360\n },\n onChange: (_, interaction) => {\n _onChange && _onChange({\n h: direction === 'horizontal' ? 360 * interaction.left : 360 * interaction.top\n });\n }\n }));\n});\nHue.displayName = 'Hue';\nexport default Hue;","import _extends from \"@babel/runtime/helpers/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/objectWithoutPropertiesLoose\";\nvar _excluded = [\"prefixCls\", \"className\", \"color\", \"colors\", \"style\", \"rectProps\", \"onChange\", \"addonAfter\", \"addonBefore\", \"rectRender\"];\nimport React, { Fragment } from 'react';\nimport { hexToHsva, color as handleColor } from '@uiw/color-convert';\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nvar Swatch = /*#__PURE__*/React.forwardRef((props, ref) => {\n var {\n prefixCls = 'w-color-swatch',\n className,\n color,\n colors = [],\n style,\n rectProps = {},\n onChange,\n addonAfter,\n addonBefore,\n rectRender\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n var rectStyle = _extends({\n '--swatch-background-color': 'rgb(144, 19, 254)',\n background: 'var(--swatch-background-color)',\n height: 15,\n width: 15,\n marginRight: 5,\n marginBottom: 5,\n cursor: 'pointer',\n position: 'relative',\n outline: 'none',\n borderRadius: 2\n }, rectProps.style);\n var handleClick = (hex, evn) => {\n onChange && onChange(hexToHsva(hex), handleColor(hexToHsva(hex)), evn);\n };\n return /*#__PURE__*/_jsxs(\"div\", _extends({\n ref: ref\n }, other, {\n className: [prefixCls, className || ''].filter(Boolean).join(' '),\n style: _extends({\n display: 'flex',\n flexWrap: 'wrap',\n position: 'relative'\n }, style),\n children: [addonBefore && /*#__PURE__*/React.isValidElement(addonBefore) && addonBefore, colors && Array.isArray(colors) && colors.map((item, idx) => {\n var title = '';\n var background = '';\n if (typeof item === 'string') {\n title = item;\n background = item;\n }\n if (typeof item === 'object' && item.color) {\n title = item.title || item.color;\n background = item.color;\n }\n var checked = color && color.toLocaleLowerCase() === background.toLocaleLowerCase();\n var render = rectRender && rectRender({\n title,\n color: background,\n checked: !!checked,\n style: _extends({}, rectStyle, {\n background\n }),\n onClick: evn => handleClick(background, evn)\n });\n if (render) {\n return /*#__PURE__*/_jsx(Fragment, {\n children: render\n }, idx);\n }\n var child = rectProps.children && /*#__PURE__*/React.isValidElement(rectProps.children) ? /*#__PURE__*/React.cloneElement(rectProps.children, {\n color: background,\n checked\n }) : null;\n return /*#__PURE__*/_jsx(\"div\", _extends({\n tabIndex: 0,\n title: title,\n onClick: evn => handleClick(background, evn)\n }, rectProps, {\n children: child,\n style: _extends({}, rectStyle, {\n background\n })\n }), idx);\n }), addonAfter && /*#__PURE__*/React.isValidElement(addonAfter) && addonAfter]\n }));\n});\nSwatch.displayName = 'Swatch';\nexport default Swatch;","import _extends from \"@babel/runtime/helpers/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/objectWithoutPropertiesLoose\";\nvar _excluded = [\"prefixCls\", \"className\", \"onChange\", \"width\", \"presetColors\", \"color\", \"editableDisable\", \"disableAlpha\", \"style\"];\nimport React, { useState, Fragment } from 'react';\nimport Saturation from '@uiw/react-color-saturation';\nimport Alpha from '@uiw/react-color-alpha';\nimport EditableInput from '@uiw/react-color-editable-input';\nimport RGBA from '@uiw/react-color-editable-input-rgba';\nimport Hue from '@uiw/react-color-hue';\nimport { validHex, hsvaToHex, hsvaToRgbaString, hexToHsva, color as handleColor } from '@uiw/color-convert';\nimport Swatch from '@uiw/react-color-swatch';\nimport { useEffect } from 'react';\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nvar PRESET_COLORS = ['#D0021B', '#F5A623', '#f8e61b', '#8B572A', '#7ED321', '#417505', '#BD10E0', '#9013FE', '#4A90E2', '#50E3C2', '#B8E986', '#000000', '#4A4A4A', '#9B9B9B', '#FFFFFF'];\nvar Bar = props => /*#__PURE__*/_jsx(\"div\", {\n style: {\n boxShadow: 'rgb(0 0 0 / 60%) 0px 0px 2px',\n width: 4,\n top: 1,\n bottom: 1,\n left: props.left,\n borderRadius: 1,\n position: 'absolute',\n backgroundColor: '#fff'\n }\n});\nvar Sketch = /*#__PURE__*/React.forwardRef((props, ref) => {\n var {\n prefixCls = 'w-color-sketch',\n className,\n onChange,\n width = 218,\n presetColors = PRESET_COLORS,\n color,\n editableDisable = true,\n disableAlpha = false,\n style\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n var [hsva, setHsva] = useState({\n h: 209,\n s: 36,\n v: 90,\n a: 1\n });\n useEffect(() => {\n if (typeof color === 'string' && validHex(color)) {\n setHsva(hexToHsva(color));\n }\n if (typeof color === 'object') {\n setHsva(color);\n }\n }, [color]);\n var handleChange = hsv => {\n setHsva(hsv);\n onChange && onChange(handleColor(hsv));\n };\n var handleHex = (value, evn) => {\n if (typeof value === 'string' && validHex(value) && /(3|6)/.test(String(value.length))) {\n handleChange(hexToHsva(value));\n }\n };\n var handleAlphaChange = newAlpha => handleChange(_extends({}, hsva, {\n a: newAlpha.a\n }));\n var handleSaturationChange = newColor => handleChange(_extends({}, hsva, newColor, {\n a: hsva.a\n }));\n var styleMain = _extends({\n '--sketch-background': 'rgb(255, 255, 255)',\n '--sketch-box-shadow': 'rgb(0 0 0 / 15%) 0px 0px 0px 1px, rgb(0 0 0 / 15%) 0px 8px 16px',\n '--sketch-swatch-box-shadow': 'rgb(0 0 0 / 15%) 0px 0px 0px 1px inset',\n '--sketch-alpha-box-shadow': 'rgb(0 0 0 / 15%) 0px 0px 0px 1px inset, rgb(0 0 0 / 25%) 0px 0px 4px inset',\n '--sketch-swatch-border-top': '1px solid rgb(238, 238, 238)',\n background: 'var(--sketch-background)',\n borderRadius: 4,\n boxShadow: 'var(--sketch-box-shadow)',\n width\n }, style);\n var styleAlpha = {\n borderRadius: 2,\n background: hsvaToRgbaString(hsva),\n boxShadow: 'var(--sketch-alpha-box-shadow)'\n };\n var styleSwatch = {\n borderTop: 'var(--sketch-swatch-border-top)',\n paddingTop: 10,\n paddingLeft: 10\n };\n var styleSwatchRect = {\n marginRight: 10,\n marginBottom: 10,\n borderRadius: 3,\n boxShadow: 'var(--sketch-swatch-box-shadow)'\n };\n return /*#__PURE__*/_jsxs(\"div\", _extends({}, other, {\n className: prefixCls + \" \" + (className || ''),\n ref: ref,\n style: styleMain,\n children: [/*#__PURE__*/_jsxs(\"div\", {\n style: {\n padding: '10px 10px 8px'\n },\n children: [/*#__PURE__*/_jsx(Saturation, {\n hsva: hsva,\n style: {\n width: 'auto',\n height: 150\n },\n onChange: handleSaturationChange\n }), /*#__PURE__*/_jsxs(\"div\", {\n style: {\n display: 'flex',\n marginTop: 4\n },\n children: [/*#__PURE__*/_jsxs(\"div\", {\n style: {\n flex: 1\n },\n children: [/*#__PURE__*/_jsx(Hue, {\n width: \"auto\",\n height: 10,\n hue: hsva.h,\n pointer: Bar,\n innerProps: {\n style: {\n marginLeft: 1,\n marginRight: 5\n }\n },\n onChange: newHue => handleChange(_extends({}, hsva, newHue))\n }), !disableAlpha && /*#__PURE__*/_jsx(Alpha, {\n width: \"auto\",\n height: 10,\n hsva: hsva,\n pointer: Bar,\n style: {\n marginTop: 4\n },\n innerProps: {\n style: {\n marginLeft: 1,\n marginRight: 5\n }\n },\n onChange: handleAlphaChange\n })]\n }), !disableAlpha && /*#__PURE__*/_jsx(Alpha, {\n width: 24,\n height: 24,\n hsva: hsva,\n radius: 2,\n style: {\n marginLeft: 4\n },\n bgProps: {\n style: {\n background: 'transparent'\n }\n },\n innerProps: {\n style: styleAlpha\n },\n pointer: () => /*#__PURE__*/_jsx(Fragment, {})\n })]\n })]\n }), editableDisable && /*#__PURE__*/_jsxs(\"div\", {\n style: {\n display: 'flex',\n margin: '0 10px 3px 10px'\n },\n children: [/*#__PURE__*/_jsx(EditableInput, {\n label: \"Hex\",\n value: hsvaToHex(hsva).replace(/^#/, '').toLocaleUpperCase(),\n onChange: (evn, val) => handleHex(val, evn),\n style: {\n minWidth: 58\n }\n }), /*#__PURE__*/_jsx(RGBA, {\n hsva: hsva,\n style: {\n marginLeft: 6\n },\n aProps: !disableAlpha ? {} : false,\n onChange: result => handleChange(result.hsva)\n })]\n }), presetColors && presetColors.length > 0 && /*#__PURE__*/_jsx(Swatch, {\n style: styleSwatch,\n colors: presetColors,\n color: hsvaToHex(hsva),\n onChange: hsvColor => handleChange(hsvColor),\n rectProps: {\n style: styleSwatchRect\n }\n })]\n }));\n});\nSketch.displayName = 'Sketch';\nexport default Sketch;","import type { SetterProps } from '@easy-editor/core'\nimport Popover from '@/lib/popover'\nimport Sketch from '@uiw/react-color-sketch'\nimport { useState } from 'react'\nimport styles from './styles.module.css'\n\nexport interface ColorSetterProps extends SetterProps<string> {\n disableAlpha?: boolean\n}\n\nconst ColorSetter = (props: ColorSetterProps) => {\n const { value, initialValue, onChange, disableAlpha = false } = props\n const [open, setOpen] = useState(false)\n\n return (\n <Popover\n onClose={() => setOpen(false)}\n open={open}\n trigger={\n <button aria-label='Select color' className={styles.trigger} onClick={() => setOpen(true)} type='button'>\n <div\n aria-label='Current color'\n className={styles.colorPreview}\n style={{ backgroundColor: value ?? initialValue }}\n />\n <span className={styles.colorValue}>{value ?? initialValue}</span>\n </button>\n }\n >\n <div className={styles.popover}>\n <Sketch color={value} disableAlpha={disableAlpha} onChange={res => onChange(res.hexa)} presetColors={[]} />\n </div>\n </Popover>\n )\n}\n\nexport default ColorSetter\n","import { cn } from '@/lib/utils'\nimport type { SetterProps } from '@easy-editor/core'\nimport Popover from '@/lib/popover'\nimport { Database, FileJson, Link2 } from 'lucide-react'\nimport { useCallback, useMemo, useState } from 'react'\nimport styles from './styles.module.css'\n\nexport interface DataBindingValue {\n type: 'static' | 'datasource'\n staticValue?: unknown\n datasourceId?: string\n datasourcePath?: string\n}\n\nexport interface DataBindingSetterProps extends SetterProps<DataBindingValue> {\n dataType?: 'string' | 'number' | 'boolean' | 'array' | 'object' | 'any'\n showPreview?: boolean\n staticSetter?: string\n dataSources?: Array<{ id: string; name: string }>\n}\n\nconst defaultValue: DataBindingValue = {\n type: 'static',\n staticValue: '',\n}\n\nconst DataBindingSetter = (props: DataBindingSetterProps) => {\n const { value, initialValue, onChange, dataType = 'any', showPreview = true, dataSources = [] } = props\n\n const currentValue = value ?? initialValue ?? defaultValue\n const [open, setOpen] = useState(false)\n const [activeTab, setActiveTab] = useState<'static' | 'datasource'>(currentValue.type)\n\n const updateBinding = useCallback(\n (updates: Partial<DataBindingValue>) => {\n onChange({ ...currentValue, ...updates })\n },\n [currentValue, onChange],\n )\n\n const handleTypeChange = useCallback(\n (type: 'static' | 'datasource') => {\n setActiveTab(type)\n updateBinding({ type })\n },\n [updateBinding],\n )\n\n const handleStaticValueChange = useCallback(\n (staticValue: unknown) => {\n updateBinding({ staticValue })\n },\n [updateBinding],\n )\n\n const handleDatasourceChange = useCallback(\n (datasourceId: string) => {\n updateBinding({ datasourceId, datasourcePath: '' })\n },\n [updateBinding],\n )\n\n const handlePathChange = useCallback(\n (datasourcePath: string) => {\n updateBinding({ datasourcePath })\n },\n [updateBinding],\n )\n\n // 渲染静态值输入\n const renderStaticInput = useMemo(() => {\n switch (dataType) {\n case 'number':\n return (\n <input\n className={styles.input}\n onChange={e => handleStaticValueChange(Number(e.target.value))}\n placeholder='输入数值'\n type='number'\n value={(currentValue.staticValue as number) ?? ''}\n />\n )\n case 'boolean':\n return (\n <div className={styles.booleanButtons}>\n <button\n className={cn(styles.booleanButton, currentValue.staticValue === true ? styles.booleanButtonActive : '')}\n onClick={() => handleStaticValueChange(true)}\n type='button'\n >\n True\n </button>\n <button\n className={cn(styles.booleanButton, currentValue.staticValue === false ? styles.booleanButtonActive : '')}\n onClick={() => handleStaticValueChange(false)}\n type='button'\n >\n False\n </button>\n </div>\n )\n case 'array':\n case 'object':\n return (\n <textarea\n className={styles.textarea}\n onChange={e => {\n try {\n const parsed = JSON.parse(e.target.value)\n handleStaticValueChange(parsed)\n } catch {\n handleStaticValueChange(e.target.value)\n }\n }}\n placeholder={dataType === 'array' ? '[\"item1\", \"item2\"]' : '{\"key\": \"value\"}'}\n value={\n typeof currentValue.staticValue === 'string'\n ? currentValue.staticValue\n : (JSON.stringify(currentValue.staticValue, null, 2) ?? '')\n }\n />\n )\n default:\n return (\n <input\n className={styles.input}\n onChange={e => handleStaticValueChange(e.target.value)}\n placeholder='输入值'\n type='text'\n value={(currentValue.staticValue as string) ?? ''}\n />\n )\n }\n }, [dataType, currentValue.staticValue, handleStaticValueChange])\n\n // 绑定状态显示\n const bindingStatus = useMemo(() => {\n if (currentValue.type === 'datasource' && currentValue.datasourceId) {\n const ds = dataSources.find(d => d.id === currentValue.datasourceId)\n return {\n icon: <Link2 className={cn(styles.triggerIcon, styles.triggerIconPrimary)} />,\n text: `${ds?.name ?? currentValue.datasourceId}${currentValue.datasourcePath ? `.${currentValue.datasourcePath}` : ''}`,\n }\n }\n return {\n icon: <FileJson className={cn(styles.triggerIcon, styles.triggerIconMuted)} />,\n text: '静态数据',\n }\n }, [currentValue, dataSources])\n\n return (\n <Popover\n onClose={() => setOpen(false)}\n open={open}\n trigger={\n <button aria-label='Data binding' className={styles.trigger} onClick={() => setOpen(true)} type='button'>\n {bindingStatus.icon}\n <span className={styles.triggerText}>{bindingStatus.text}</span>\n </button>\n }\n width={300}\n >\n <div className={styles.popoverContent}>\n {/* Tabs */}\n <div className={styles.tabsList} role='tablist'>\n <button\n aria-selected={activeTab === 'static'}\n className={cn(styles.tabTrigger, activeTab === 'static' ? styles.tabTriggerActive : '')}\n onClick={() => handleTypeChange('static')}\n role='tab'\n type='button'\n >\n <FileJson className={styles.tabTriggerIcon} />\n 静态数据\n </button>\n <button\n aria-selected={activeTab === 'datasource'}\n className={cn(styles.tabTrigger, activeTab === 'datasource' ? styles.tabTriggerActive : '')}\n onClick={() => handleTypeChange('datasource')}\n role='tab'\n type='button'\n >\n <Database className={styles.tabTriggerIcon} />\n 数据源\n </button>\n </div>\n\n {/* Static Tab Content */}\n <div className={cn(styles.tabContent, activeTab === 'static' ? styles.tabContentActive : '')} role='tabpanel'>\n <div className={styles.section}>\n <span className={styles.sectionLabel}>值 ({dataType})</span>\n {renderStaticInput}\n </div>\n </div>\n\n {/* Datasource Tab Content */}\n <div\n className={cn(styles.tabContent, activeTab === 'datasource' ? styles.tabContentActive : '')}\n role='tabpanel'\n >\n <div className={styles.section}>\n {/* 数据源选择 */}\n <span className={styles.sectionLabel}>数据源</span>\n {dataSources.length > 0 ? (\n <div className={styles.datasourceList}>\n {dataSources.map(ds => (\n <button\n className={cn(\n styles.datasourceButton,\n currentValue.datasourceId === ds.id ? styles.datasourceButtonActive : '',\n )}\n key={ds.id}\n onClick={() => handleDatasourceChange(ds.id)}\n type='button'\n >\n <Database className={styles.datasourceIcon} />\n {ds.name}\n </button>\n ))}\n </div>\n ) : (\n <div className={styles.emptyState}>暂无可用数据源</div>\n )}\n\n {/* 数据路径 */}\n {currentValue.datasourceId ? (\n <>\n <span className={styles.sectionLabel}>数据路径</span>\n <input\n className={cn(styles.input, styles.inputMono)}\n onChange={e => handlePathChange(e.target.value)}\n placeholder='data.list[0].name'\n type='text'\n value={currentValue.datasourcePath ?? ''}\n />\n <span className={styles.hint}>使用点号访问嵌套属性,如: data.items[0].value</span>\n </>\n ) : null}\n\n {/* 数据预览 */}\n {showPreview === true && currentValue.datasourceId ? (\n <>\n <span className={styles.sectionLabel}>数据预览</span>\n <div className={styles.preview}>绑定后可在预览模式查看数据</div>\n </>\n ) : null}\n </div>\n </div>\n </div>\n </Popover>\n )\n}\n\nexport default DataBindingSetter\n","import type { SetterProps } from '@easy-editor/core'\nimport Popover from '@/lib/popover'\nimport { ArrowRight, Code, Settings2 } from 'lucide-react'\nimport { useCallback, useState } from 'react'\nimport styles from './styles.module.css'\n\nexport interface DataMappingItem {\n targetField: string\n sourceField: string\n transform?: string\n}\n\nexport interface DataMappingValue {\n mappings: DataMappingItem[]\n}\n\nexport interface TargetFieldConfig {\n name: string\n label: string\n type: 'string' | 'number' | 'boolean' | 'array'\n required?: boolean\n}\n\nexport interface DataMappingSetterProps extends SetterProps<DataMappingValue> {\n targetFields: TargetFieldConfig[]\n sourceFields?: string[]\n}\n\nconst defaultValue: DataMappingValue = {\n mappings: [],\n}\n\nconst DataMappingSetter = (props: DataMappingSetterProps) => {\n const { value, initialValue, onChange, targetFields, sourceFields = [] } = props\n\n const currentValue = value ?? initialValue ?? defaultValue\n const [open, setOpen] = useState(false)\n\n // 获取字段的映射\n const getMapping = useCallback(\n (targetField: string): DataMappingItem | undefined =>\n currentValue.mappings.find(m => m.targetField === targetField),\n [currentValue.mappings],\n )\n\n // 更新映射\n const updateMapping = useCallback(\n (targetField: string, updates: Partial<Omit<DataMappingItem, 'targetField'>>) => {\n const existingIndex = currentValue.mappings.findIndex(m => m.targetField === targetField)\n const newMappings = [...currentValue.mappings]\n\n if (existingIndex >= 0) {\n newMappings[existingIndex] = { ...newMappings[existingIndex], ...updates }\n } else {\n newMappings.push({\n targetField,\n sourceField: updates.sourceField ?? '',\n transform: updates.transform,\n })\n }\n\n onChange({ mappings: newMappings })\n },\n [currentValue.mappings, onChange],\n )\n\n // 清除映射\n const clearMapping = useCallback(\n (targetField: string) => {\n const newMappings = currentValue.mappings.filter(m => m.targetField !== targetField)\n onChange({ mappings: newMappings })\n },\n [currentValue.mappings, onChange],\n )\n\n // 统计已映射字段数\n const mappedCount = currentValue.mappings.filter(m => m.sourceField).length\n\n return (\n <Popover\n onClose={() => setOpen(false)}\n open={open}\n trigger={\n <button aria-label='Data mapping' className={styles.trigger} onClick={() => setOpen(true)} type='button'>\n <Settings2 className={styles.triggerIcon} />\n <span className={styles.triggerText}>\n 字段映射 ({mappedCount}/{targetFields.length})\n </span>\n </button>\n }\n width={320}\n >\n <div className={styles.popoverContent}>\n <div className={styles.header}>\n <span className={styles.headerTitle}>字段映射配置</span>\n <span className={styles.headerCount}>\n {mappedCount}/{targetFields.length} 已映射\n </span>\n </div>\n\n {/* 映射列表 */}\n <div className={styles.mappingList}>\n {targetFields.map(field => {\n const mapping = getMapping(field.name)\n return (\n <div className={styles.mappingItem} key={field.name}>\n {/* 字段标题 */}\n <div className={styles.mappingHeader}>\n <span className={styles.mappingTitle}>\n {field.label}\n {field.required ? <span className={styles.mappingRequired}>*</span> : null}\n </span>\n <span className={styles.mappingType}>{field.type}</span>\n </div>\n\n {/* 映射配置 */}\n <div className={styles.mappingRow}>\n {/* 源字段 */}\n {sourceFields.length > 0 ? (\n <select\n className={styles.select}\n onChange={e => updateMapping(field.name, { sourceField: e.target.value })}\n value={mapping?.sourceField ?? ''}\n >\n <option value=''>选择字段</option>\n {sourceFields.map(sf => (\n <option key={sf} value={sf}>\n {sf}\n </option>\n ))}\n </select>\n ) : (\n <input\n className={styles.input}\n onChange={e => updateMapping(field.name, { sourceField: e.target.value })}\n placeholder='源字段路径'\n type='text'\n value={mapping?.sourceField ?? ''}\n />\n )}\n\n <ArrowRight className={styles.arrowIcon} />\n\n {/* 目标字段 (只读) */}\n <div className={styles.targetField}>{field.name}</div>\n </div>\n\n {/* 转换表达式 */}\n {mapping?.sourceField ? (\n <div className={styles.transformRow}>\n <Code className={styles.transformIcon} />\n <input\n className={styles.transformInput}\n onChange={e => updateMapping(field.name, { transform: e.target.value })}\n placeholder='转换表达式 (可选)'\n type='text'\n value={mapping?.transform ?? ''}\n />\n </div>\n ) : null}\n\n {/* 清除按钮 */}\n {mapping?.sourceField ? (\n <button className={styles.clearButton} onClick={() => clearMapping(field.name)} type='button'>\n 清除映射\n </button>\n ) : null}\n </div>\n )\n })}\n </div>\n\n {/* 帮助文本 */}\n <div className={styles.helpText}>\n <p>• 源字段: 数据源中的字段路径</p>\n <p>• 转换表达式: 如 value * 100, value.toFixed(2)</p>\n </div>\n </div>\n </Popover>\n )\n}\n\nexport default DataMappingSetter\n","import { cn } from '@/lib/utils'\nimport type { SetterProps } from '@easy-editor/core'\nimport { useCallback, useEffect, useState } from 'react'\nimport styles from './styles.module.css'\n\nexport interface JsonSetterProps extends SetterProps<unknown> {\n placeholder?: string\n rows?: number\n}\n\nconst JsonSetter = (props: JsonSetterProps) => {\n const { value, initialValue, placeholder, rows = 6, onChange } = props\n\n const [text, setText] = useState('')\n const [error, setError] = useState<string | null>(null)\n\n // Sync value to text\n useEffect(() => {\n const currentValue = value ?? initialValue\n if (currentValue !== undefined) {\n try {\n setText(JSON.stringify(currentValue, null, 2))\n setError(null)\n } catch {\n setText(String(currentValue))\n }\n } else {\n setText('')\n }\n }, [value, initialValue])\n\n const handleChange = useCallback(\n (newText: string) => {\n setText(newText)\n if (!newText.trim()) {\n setError(null)\n onChange(undefined)\n return\n }\n try {\n const parsed = JSON.parse(newText)\n setError(null)\n onChange(parsed)\n } catch (e) {\n setError((e as Error).message)\n }\n },\n [onChange],\n )\n\n const lineHeight = 1.5\n const minHeight = rows * lineHeight * 14 // 14px base font size\n\n return (\n <div className={styles.container}>\n <textarea\n className={cn(styles.textarea, error ? styles.textareaError : null)}\n onChange={e => handleChange(e.target.value)}\n placeholder={placeholder || '输入 JSON 数据'}\n spellCheck={false}\n style={{ minHeight }}\n value={text}\n />\n {error ? <div className={styles.error}>{error}</div> : null}\n </div>\n )\n}\n\nexport default JsonSetter\n","import type { SetterProps } from '@easy-editor/core'\nimport styles from './styles.module.css'\n\nexport interface NodeIdSetterProps extends SetterProps<string> {}\n\nconst NodeIdSetter = (props: NodeIdSetterProps) => {\n const { selected } = props\n\n return (\n <div className={styles.container}>\n <p className={styles.id}>{selected.id}</p>\n <p className={styles.title}>{selected.componentMeta.title}</p>\n </div>\n )\n}\n\nexport default NodeIdSetter\n","import { cn } from '@/lib/utils'\nimport type { SetterProps } from '@easy-editor/core'\nimport styles from './styles.module.css'\n\nexport interface NumberSetterProps extends SetterProps<number> {\n placeholder?: string\n suffix?: string\n}\n\nconst NumberSetter = (props: NumberSetterProps) => {\n const { value, initialValue, placeholder, onChange, suffix } = props\n\n return (\n <div className={styles.container}>\n <input\n className={cn(styles.input, suffix ? styles.inputWithSuffix : '')}\n onChange={e => onChange(+e.target.value)}\n placeholder={placeholder || ''}\n type='number'\n value={value ?? initialValue ?? ''}\n />\n {suffix ? (\n <span aria-label={`Unit: ${suffix}`} className={styles.suffix}>\n {suffix}\n </span>\n ) : null}\n </div>\n )\n}\n\nexport default NumberSetter\n","import type { SetterProps } from '@easy-editor/core'\nimport { Plus, Trash2 } from 'lucide-react'\nimport { useCallback } from 'react'\nimport styles from './styles.module.css'\n\nexport interface ObjectField {\n key: string\n label: string\n type?: 'string' | 'number'\n placeholder?: string\n}\n\nexport interface ObjectSetterProps extends SetterProps<Record<string, unknown>> {\n fields?: ObjectField[]\n allowCustomFields?: boolean\n addFieldText?: string\n}\n\nconst ObjectSetter = (props: ObjectSetterProps) => {\n const { value, initialValue, fields = [], allowCustomFields = false, addFieldText = '添加字段', onChange } = props\n\n const currentValue = value ?? initialValue ?? {}\n\n const handleFieldChange = useCallback(\n (key: string, newValue: unknown) => {\n onChange({ ...currentValue, [key]: newValue })\n },\n [currentValue, onChange],\n )\n\n const handleAddField = useCallback(() => {\n const newKey = `field_${Date.now()}`\n onChange({ ...currentValue, [newKey]: '' })\n }, [currentValue, onChange])\n\n const handleRemoveField = useCallback(\n (key: string) => {\n const newValue = { ...currentValue }\n delete newValue[key]\n onChange(newValue)\n },\n [currentValue, onChange],\n )\n\n // Get all keys: defined fields + custom fields\n const definedKeys = fields.map(f => f.key)\n const customKeys = Object.keys(currentValue).filter(k => !definedKeys.includes(k))\n\n return (\n <div className={styles.container}>\n {/* Defined fields */}\n {fields.map(field => (\n <div className={styles.field} key={field.key}>\n <span className={styles.label}>{field.label}</span>\n <input\n className={styles.input}\n onChange={e => {\n const val = field.type === 'number' ? +e.target.value : e.target.value\n handleFieldChange(field.key, val)\n }}\n placeholder={field.placeholder}\n type={field.type === 'number' ? 'number' : 'text'}\n value={(currentValue[field.key] as string | number) ?? ''}\n />\n </div>\n ))}\n\n {/* Custom fields */}\n {customKeys.map(key => (\n <div className={styles.customField} key={key}>\n <div className={styles.customFieldInputs}>\n <input\n className={styles.keyInput}\n onChange={e => {\n const newKey = e.target.value\n if (newKey && newKey !== key) {\n const newValue = { ...currentValue }\n newValue[newKey] = newValue[key]\n delete newValue[key]\n onChange(newValue)\n }\n }}\n placeholder='字段名'\n type='text'\n value={key}\n />\n <input\n className={styles.input}\n onChange={e => handleFieldChange(key, e.target.value)}\n placeholder='值'\n type='text'\n value={(currentValue[key] as string) ?? ''}\n />\n </div>\n <button className={styles.removeButton} onClick={() => handleRemoveField(key)} type='button'>\n <Trash2 className={styles.removeIcon} />\n </button>\n </div>\n ))}\n\n {/* Add custom field button */}\n {allowCustomFields ? (\n <button className={styles.addButton} onClick={handleAddField} type='button'>\n <Plus className={styles.addIcon} />\n {addFieldText}\n </button>\n ) : null}\n </div>\n )\n}\n\nexport default ObjectSetter\n","import type { SetterProps } from '@easy-editor/core'\nimport styles from './styles.module.css'\n\nexport interface RectSetterProps extends SetterProps<DOMRect> {}\n\nconst RectSetter = (props: RectSetterProps) => {\n const { value, onChange } = props\n\n const handleChange = (key: keyof DOMRect, newValue: number) => {\n onChange({ ...value, [key]: newValue })\n }\n\n return (\n <div className={styles.container}>\n <div className={styles.inputWrapper}>\n <input\n className={styles.input}\n onChange={e => handleChange('x', Number(e.target.value))}\n type='number'\n value={formatDecimal(value.x)}\n />\n <span aria-label='Unit: X' className={styles.suffix}>\n X\n </span>\n </div>\n <div className={styles.inputWrapper}>\n <input\n className={styles.input}\n onChange={e => handleChange('y', Number(e.target.value))}\n type='number'\n value={formatDecimal(value.y)}\n />\n <span aria-label='Unit: Y' className={styles.suffix}>\n Y\n </span>\n </div>\n <div className={styles.inputWrapper}>\n <input\n className={styles.input}\n onChange={e => handleChange('width', Number(e.target.value))}\n type='number'\n value={formatDecimal(value.width)}\n />\n <span aria-label='Unit: W' className={styles.suffix}>\n W\n </span>\n </div>\n <div className={styles.inputWrapper}>\n <input\n className={styles.input}\n onChange={e => handleChange('height', Number(e.target.value))}\n type='number'\n value={formatDecimal(value.height)}\n />\n <span aria-label='Unit: H' className={styles.suffix}>\n H\n </span>\n </div>\n </div>\n )\n}\n\nexport default RectSetter\n\nconst decimalRegex = /(\\.\\d{2})\\d+$/\nconst formatDecimal = (num: number) => num.toString().replace(decimalRegex, '$1')\n","/**\n * SegmentedSetter - 分段控制器\n * 用于在多个选项之间切换,类似于 iOS 的 UISegmentedControl\n */\nimport { cn } from '@/lib/utils'\nimport type { SetterProps } from '@easy-editor/core'\nimport styles from './styles.module.css'\n\nexport interface SegmentedOption {\n label: string\n value: string\n disabled?: boolean\n}\n\nexport interface SegmentedSetterProps extends SetterProps<string> {\n options?: SegmentedOption[]\n size?: 'sm' | 'md'\n}\n\nconst SegmentedSetter = (props: SegmentedSetterProps) => {\n const { value, initialValue, options = [], onChange, size = 'md' } = props\n\n const currentValue = value ?? initialValue ?? options[0]?.value ?? ''\n\n return (\n <div className={cn(styles.container, size === 'sm' ? styles.containerSm : '')}>\n {options.map(option => (\n <button\n className={cn(\n styles.segment,\n currentValue === option.value ? styles.segmentSelected : '',\n option.disabled === true ? styles.segmentDisabled : '',\n )}\n disabled={option.disabled}\n key={option.value}\n onClick={() => !option.disabled && onChange(option.value)}\n type='button'\n >\n {option.label}\n </button>\n ))}\n </div>\n )\n}\n\nexport default SegmentedSetter\n","import { cn } from '@/lib/utils'\nimport type { SetterProps } from '@easy-editor/core'\nimport Popover from '@/lib/popover'\nimport { ChevronDown } from 'lucide-react'\nimport { useState } from 'react'\nimport styles from './styles.module.css'\n\nexport interface SelectOption {\n label: string\n value: string\n disabled?: boolean\n}\n\nexport interface SelectSetterProps extends SetterProps<string> {\n options?: SelectOption[]\n placeholder?: string\n}\n\nconst SelectSetter = (props: SelectSetterProps) => {\n const { value, initialValue, options = [], placeholder, onChange } = props\n const [open, setOpen] = useState(false)\n\n const currentValue = value ?? initialValue ?? ''\n const selectedOption = options.find(opt => opt.value === currentValue)\n\n const handleSelect = (optionValue: string, disabled?: boolean) => {\n if (disabled) {\n return\n }\n onChange(optionValue)\n setOpen(false)\n }\n\n return (\n <Popover\n onClose={() => setOpen(false)}\n open={open}\n trigger={\n <button\n aria-expanded={open}\n aria-haspopup='listbox'\n className={styles.trigger}\n onClick={() => setOpen(true)}\n type='button'\n >\n <span className={cn(styles.triggerValue, selectedOption ? '' : styles.placeholder)}>\n {selectedOption?.label || placeholder || '请选择'}\n </span>\n <ChevronDown className={cn(styles.chevron, open ? styles.chevronOpen : '')} />\n </button>\n }\n >\n <div className={styles.dropdown} role='listbox'>\n {options.map(option => (\n <button\n aria-selected={option.value === currentValue}\n className={cn(\n styles.option,\n option.value === currentValue ? styles.optionSelected : '',\n option.disabled === true ? styles.optionDisabled : '',\n )}\n key={option.value}\n onClick={() => handleSelect(option.value, option.disabled)}\n role='option'\n type='button'\n >\n {option.label}\n </button>\n ))}\n </div>\n </Popover>\n )\n}\n\nexport default SelectSetter\n","import type { SetterProps } from '@easy-editor/core'\nimport { useRef, useCallback } from 'react'\nimport styles from './styles.module.css'\n\nexport interface SliderSetterProps extends SetterProps<number> {\n min?: number\n max?: number\n step?: number\n showValue?: boolean\n suffix?: string\n}\n\nconst SliderSetter = (props: SliderSetterProps) => {\n const { value, initialValue, min = 0, max = 100, step = 1, showValue = true, suffix, onChange } = props\n\n const currentValue = value ?? initialValue ?? min\n const trackRef = useRef<HTMLDivElement>(null)\n\n const percentage = ((currentValue - min) / (max - min)) * 100\n\n const handleChange = useCallback(\n (clientX: number) => {\n if (!trackRef.current) {\n return\n }\n const rect = trackRef.current.getBoundingClientRect()\n const percent = Math.max(0, Math.min(1, (clientX - rect.left) / rect.width))\n const rawValue = min + percent * (max - min)\n const steppedValue = Math.round(rawValue / step) * step\n const clampedValue = Math.max(min, Math.min(max, steppedValue))\n onChange(clampedValue)\n },\n [min, max, step, onChange],\n )\n\n const handleMouseDown = (event: React.MouseEvent) => {\n handleChange(event.clientX)\n\n const handleMouseMove = (moveEvent: MouseEvent) => {\n handleChange(moveEvent.clientX)\n }\n\n const handleMouseUp = () => {\n document.removeEventListener('mousemove', handleMouseMove)\n document.removeEventListener('mouseup', handleMouseUp)\n }\n\n document.addEventListener('mousemove', handleMouseMove)\n document.addEventListener('mouseup', handleMouseUp)\n }\n\n return (\n <div className={styles.container}>\n <div className={styles.slider}>\n <div className={styles.track} onMouseDown={handleMouseDown} ref={trackRef} role='presentation'>\n <div className={styles.range} style={{ width: `${percentage}%` }} />\n <div\n aria-valuemax={max}\n aria-valuemin={min}\n aria-valuenow={currentValue}\n className={styles.thumb}\n role='slider'\n style={{ left: `${percentage}%` }}\n tabIndex={0}\n />\n </div>\n </div>\n {showValue === true ? (\n <span className={styles.value}>\n {currentValue}\n {suffix}\n </span>\n ) : null}\n </div>\n )\n}\n\nexport default SliderSetter\n","import { cn } from '@/lib/utils'\nimport type { SetterProps } from '@easy-editor/core'\nimport { Link, Unlink } from 'lucide-react'\nimport { useCallback, useState } from 'react'\nimport styles from './styles.module.css'\n\nexport interface SpacingValue {\n top: number\n right: number\n bottom: number\n left: number\n}\n\nexport interface SpacingSetterProps extends SetterProps<SpacingValue> {\n mode?: 'padding' | 'margin'\n linked?: boolean\n min?: number\n max?: number\n}\n\nconst defaultValue: SpacingValue = {\n top: 0,\n right: 0,\n bottom: 0,\n left: 0,\n}\n\nconst presetValues = [0, 4, 8, 12, 16, 24, 32]\n\nconst SpacingSetter = (props: SpacingSetterProps) => {\n const { value, initialValue, onChange, mode = 'padding', linked: initialLinked = false, min = 0, max = 100 } = props\n\n const currentValue = value ?? initialValue ?? defaultValue\n const [isLinked, setIsLinked] = useState(initialLinked)\n\n const updateSpacing = useCallback(\n (updates: Partial<SpacingValue>) => {\n if (isLinked) {\n const newValue = Object.values(updates)[0] as number\n onChange({ top: newValue, right: newValue, bottom: newValue, left: newValue })\n } else {\n onChange({ ...currentValue, ...updates })\n }\n },\n [currentValue, isLinked, onChange],\n )\n\n const handlePresetClick = useCallback(\n (presetValue: number) => {\n onChange({ top: presetValue, right: presetValue, bottom: presetValue, left: presetValue })\n },\n [onChange],\n )\n\n const toggleLinked = useCallback(() => {\n setIsLinked(prev => !prev)\n }, [])\n\n return (\n <div className={styles.container}>\n {/* 可视化盒模型 */}\n <div className={styles.boxModel}>\n {/* 上 */}\n <div className={styles.inputTop}>\n <input\n className={styles.spacingInput}\n max={max}\n min={min}\n onChange={e => updateSpacing({ top: Number(e.target.value) })}\n type='number'\n value={currentValue.top}\n />\n </div>\n\n {/* 右 */}\n <div className={styles.inputRight}>\n <input\n className={styles.spacingInput}\n max={max}\n min={min}\n onChange={e => updateSpacing({ right: Number(e.target.value) })}\n type='number'\n value={currentValue.right}\n />\n </div>\n\n {/* 下 */}\n <div className={styles.inputBottom}>\n <input\n className={styles.spacingInput}\n max={max}\n min={min}\n onChange={e => updateSpacing({ bottom: Number(e.target.value) })}\n type='number'\n value={currentValue.bottom}\n />\n </div>\n\n {/* 左 */}\n <div className={styles.inputLeft}>\n <input\n className={styles.spacingInput}\n max={max}\n min={min}\n onChange={e => updateSpacing({ left: Number(e.target.value) })}\n type='number'\n value={currentValue.left}\n />\n </div>\n\n {/* 中心区域 - 联动按钮 */}\n <button\n aria-label={isLinked ? 'Unlink values' : 'Link values'}\n className={cn(styles.linkButton, isLinked ? styles.linkButtonActive : '')}\n onClick={toggleLinked}\n type='button'\n >\n {isLinked ? <Link className={styles.linkIcon} /> : <Unlink className={styles.linkIcon} />}\n </button>\n </div>\n\n {/* 快捷预设 */}\n <div className={styles.presets}>\n {presetValues.map(presetValue => (\n <button\n className={styles.presetButton}\n key={presetValue}\n onClick={() => handlePresetClick(presetValue)}\n type='button'\n >\n {presetValue}\n </button>\n ))}\n </div>\n\n {/* 模式标签 */}\n <div className={styles.modeLabel}>{mode === 'padding' ? '内边距' : '外边距'} (px)</div>\n </div>\n )\n}\n\nexport default SpacingSetter\n","import { cn } from '@/lib/utils'\nimport type { SetterProps } from '@easy-editor/core'\nimport styles from './styles.module.css'\n\nexport interface StringSetterProps extends SetterProps<string> {\n placeholder?: string\n suffix?: string\n}\n\nconst StringSetter = (props: StringSetterProps) => {\n const { value, initialValue, placeholder, onChange, suffix } = props\n\n return (\n <div className={styles.container}>\n <input\n className={cn(styles.input, suffix ? styles.inputWithSuffix : '')}\n onChange={e => onChange(e.target.value)}\n placeholder={placeholder || ''}\n type='text'\n value={value || initialValue || ''}\n />\n {suffix ? (\n <span aria-label={`Unit: ${suffix}`} className={styles.suffix}>\n {suffix}\n </span>\n ) : null}\n </div>\n )\n}\n\nexport default StringSetter\n","/**\n * SwitchSetter - 布尔值设置器\n * 提供多种 UI 模式:switch(开关)、checkbox(复选框)、segmented(分段)\n */\nimport { cn } from '@/lib/utils'\nimport type { SetterProps } from '@easy-editor/core'\nimport { Check } from 'lucide-react'\nimport styles from './styles.module.css'\n\nexport interface SwitchSetterProps extends SetterProps<boolean> {\n mode?: 'switch' | 'checkbox' | 'segmented'\n trueLabel?: string\n falseLabel?: string\n}\n\nconst SwitchSetter = (props: SwitchSetterProps) => {\n const { value, initialValue, onChange, mode = 'switch', trueLabel = '是', falseLabel = '否' } = props\n\n const currentValue = value ?? initialValue ?? false\n\n // 分段模式\n if (mode === 'segmented') {\n return (\n <div className={styles.segmented}>\n <button\n className={cn(styles.segmentedButton, currentValue === false ? styles.segmentedButtonSelected : '')}\n onClick={() => onChange(false)}\n type='button'\n >\n {falseLabel}\n </button>\n <button\n className={cn(styles.segmentedButton, currentValue === true ? styles.segmentedButtonSelected : '')}\n onClick={() => onChange(true)}\n type='button'\n >\n {trueLabel}\n </button>\n </div>\n )\n }\n\n // 复选框模式\n if (mode === 'checkbox') {\n return (\n <label className={styles.checkboxWrapper}>\n <input\n checked={currentValue}\n className={styles.checkboxInput}\n onChange={e => onChange(e.target.checked)}\n type='checkbox'\n />\n <span className={cn(styles.checkbox, currentValue ? styles.checkboxChecked : '')}>\n {currentValue ? <Check className={styles.checkIcon} /> : null}\n </span>\n </label>\n )\n }\n\n // 开关模式(默认)\n return (\n <button\n aria-checked={currentValue}\n className={cn(styles.switch, currentValue ? styles.switchChecked : '')}\n onClick={() => onChange(!currentValue)}\n role='switch'\n type='button'\n >\n <span className={cn(styles.switchThumb, currentValue ? styles.switchThumbChecked : '')} />\n </button>\n )\n}\n\nexport default SwitchSetter\n","import type { SetterProps } from '@easy-editor/core'\nimport styles from './styles.module.css'\n\nexport interface TextAreaSetterProps extends SetterProps<string> {\n placeholder?: string\n rows?: number\n maxLength?: number\n}\n\nconst TextAreaSetter = (props: TextAreaSetterProps) => {\n const { value, initialValue, placeholder, rows = 3, maxLength, onChange } = props\n\n return (\n <div className={styles.container}>\n <textarea\n className={styles.textarea}\n maxLength={maxLength}\n onChange={e => onChange(e.target.value)}\n placeholder={placeholder || ''}\n rows={rows}\n value={value ?? initialValue ?? ''}\n />\n {maxLength ? (\n <div className={styles.counter}>\n {(value ?? initialValue ?? '').length}/{maxLength}\n </div>\n ) : null}\n </div>\n )\n}\n\nexport default TextAreaSetter\n","import type { SetterProps } from '@easy-editor/core'\nimport { Upload, X } from 'lucide-react'\nimport { useRef, useState } from 'react'\nimport styles from './styles.module.css'\n\nexport interface UploadValue {\n raw: {\n name: string\n size: number\n type: string\n width: number\n height: number\n }\n base64: string\n}\n\nexport interface UploadSetterProps extends SetterProps<UploadValue | null> {\n accept?: string\n maxSize?: number\n}\n\nconst UploadSetter = (props: UploadSetterProps) => {\n const { value, onChange, accept = '.jpg,.jpeg,.png,.gif', maxSize = 10 * 1024 * 1024 } = props\n const [error, setError] = useState('')\n const inputRef = useRef<HTMLInputElement>(null)\n\n const handleFileChange = async (e: React.ChangeEvent<HTMLInputElement>) => {\n const file = e.target.files?.[0]\n setError('')\n\n if (!file) {\n onChange(null)\n return\n }\n\n const ext = `.${file.name.split('.').pop()?.toLowerCase()}`\n if (!accept.includes(ext)) {\n setError(`仅支持 ${accept} 格式文件`)\n onChange(null)\n return\n }\n\n if (file.size > maxSize) {\n setError(`文件大小不能超过 ${maxSize / 1024 / 1024}MB`)\n onChange(null)\n return\n }\n\n try {\n const [base64, dimensions] = await Promise.all([\n new Promise<string>((resolve, reject) => {\n const reader = new FileReader()\n reader.onload = () => resolve(reader.result as string)\n reader.onerror = err => reject(err)\n reader.readAsDataURL(file)\n }),\n new Promise<{ width: number; height: number }>((resolve, reject) => {\n const img = new Image()\n img.onload = () =>\n resolve({\n width: img.naturalWidth,\n height: img.naturalHeight,\n })\n img.onerror = reject\n img.src = URL.createObjectURL(file)\n }),\n ])\n\n onChange({\n raw: {\n name: file.name,\n size: file.size,\n type: file.type,\n width: dimensions.width,\n height: dimensions.height,\n },\n base64,\n })\n } catch (_) {\n setError('文件读取失败,请重试')\n onChange(null)\n }\n }\n\n const handleClear = () => {\n onChange(null)\n if (inputRef.current) {\n inputRef.current.value = ''\n }\n }\n\n return (\n <div className={styles.container}>\n <div className={styles.row}>\n <label className={styles.label}>\n <input\n accept={accept}\n className={styles.hiddenInput}\n onChange={handleFileChange}\n ref={inputRef}\n type='file'\n />\n <div className={styles.uploadArea}>\n <Upload className={styles.uploadIcon} />\n <span>{value ? '更换文件' : '点击上传'}</span>\n </div>\n </label>\n\n {value ? (\n <button aria-label='清除文件' className={styles.clearButton} onClick={handleClear} type='button'>\n <X className={styles.clearIcon} />\n </button>\n ) : null}\n </div>\n\n {value ? (\n <div className={styles.fileInfo}>\n <span className={styles.fileName}>{value.raw?.name}</span>\n <span className={styles.fileSize}>{(value.raw?.size / 1024).toFixed(1)}KB</span>\n </div>\n ) : null}\n\n {error ? (\n <p className={styles.error} role='alert'>\n {error}\n </p>\n ) : null}\n </div>\n )\n}\n\nexport default UploadSetter\n","import { cn } from '@/lib/utils'\nimport type { SetterProps } from '@easy-editor/core'\nimport { ChevronsUpDown } from 'lucide-react'\nimport type { PropsWithChildren } from 'react'\nimport { useState } from 'react'\nimport styles from './styles.module.css'\n\nexport interface CollapseSetterProps extends SetterProps<boolean>, PropsWithChildren {\n icon?: boolean\n}\n\nconst CollapseSetter = (props: CollapseSetterProps) => {\n const { field, children, initialValue, icon = true } = props\n const [isOpen, setIsOpen] = useState(initialValue ?? true)\n\n return (\n <div className={styles.container}>\n <div className={styles.header}>\n <h4 className={styles.title}>{field.title}</h4>\n {icon ? (\n <button\n aria-expanded={isOpen}\n className={styles.toggleButton}\n onClick={() => setIsOpen(!isOpen)}\n type='button'\n >\n <ChevronsUpDown className={styles.toggleIcon} />\n <span className={styles.srOnly}>Toggle</span>\n </button>\n ) : null}\n </div>\n <div className={cn(styles.content, isOpen === false ? styles.contentHidden : '')}>{children}</div>\n </div>\n )\n}\n\nexport default CollapseSetter\n","import { cn } from '@/lib/utils'\nimport type { SetterProps } from '@easy-editor/core'\nimport type { PropsWithChildren } from 'react'\nimport React, { useState } from 'react'\nimport styles from './styles.module.css'\n\nexport interface TabSetterProps extends SetterProps<string>, PropsWithChildren {\n tabs?: {\n label: string\n value: string\n }[]\n}\n\nconst TabSetter = (props: TabSetterProps) => {\n const { tabs, initialValue, children } = props\n\n const tabsList = React.useMemo(() => {\n if (tabs) {\n return tabs\n }\n if (Array.isArray(children) && children.length > 0) {\n return children.map(child => ({\n label: child.props.field.config.title,\n value: child.props.field.config.key,\n }))\n }\n throw new Error('TabSetter: children or tabs must be an array')\n }, [tabs, children])\n\n const firstTabValue = React.useMemo(() => tabsList[0]?.value, [tabsList])\n const [activeTab, setActiveTab] = useState(initialValue ?? firstTabValue)\n\n return (\n <div className={styles.container}>\n <div\n className={styles.tabsList}\n role='tablist'\n style={{\n gridTemplateColumns: `repeat(${tabsList.length}, minmax(0, 1fr))`,\n }}\n >\n {tabsList.map(tab => (\n <button\n aria-selected={activeTab === tab.value}\n className={cn(styles.tabTrigger, activeTab === tab.value ? styles.tabTriggerActive : '')}\n key={tab.value}\n onClick={() => setActiveTab(tab.value)}\n role='tab'\n type='button'\n >\n {tab.label}\n </button>\n ))}\n </div>\n {Array.isArray(children)\n ? children.map(child => (\n <div\n className={cn(\n styles.tabContent,\n activeTab === child.props.field.config.key ? styles.tabContentActive : '',\n )}\n key={child.props.field.config.key}\n role='tabpanel'\n >\n {child}\n </div>\n ))\n : null}\n </div>\n )\n}\n\nexport default TabSetter\n","/**\n * @easy-editor/setters\n * Official setters library for EasyEditor\n */\n\n// Import styles\nimport './styles/variables.css'\n\n// Shared components\nexport { default as Popover } from './lib/popover'\n\n// Setters\nexport { default as AlignSetter } from './basic/align-setter'\nexport { default as ArraySetter } from './basic/array-setter'\nexport { default as ColorSetter } from './basic/color-setter'\nexport { default as DataBindingSetter } from './basic/data-binding-setter'\nexport { default as DataMappingSetter } from './basic/data-mapping-setter'\nexport { default as JsonSetter } from './basic/json-setter'\nexport { default as NodeIdSetter } from './basic/node-id-setter'\nexport { default as NumberSetter } from './basic/number-setter'\nexport { default as ObjectSetter } from './basic/object-setter'\nexport { default as RectSetter } from './basic/rect-setter'\nexport { default as SegmentedSetter } from './basic/segmented-setter'\nexport { default as SelectSetter } from './basic/select-setter'\nexport { default as SliderSetter } from './basic/slider-setter'\nexport { default as SpacingSetter } from './basic/spacing-setter'\nexport { default as StringSetter } from './basic/string-setter'\nexport { default as SwitchSetter } from './basic/switch-setter'\nexport { default as TextAreaSetter } from './basic/textarea-setter'\nexport { default as UploadSetter } from './basic/upload-setter'\n\nexport { default as CollapseSetter } from './group/collapse-setter'\nexport { default as TabSetter } from './group/tab-setter'\n\n// Export Setter Props types\nexport type { AlignSetterProps, AlignValue } from './basic/align-setter'\nexport type { ArraySetterProps } from './basic/array-setter'\nexport type { ColorSetterProps } from './basic/color-setter'\nexport type { DataBindingSetterProps, DataBindingValue } from './basic/data-binding-setter'\nexport type {\n DataMappingItem,\n DataMappingSetterProps,\n DataMappingValue,\n TargetFieldConfig,\n} from './basic/data-mapping-setter'\nexport type { JsonSetterProps } from './basic/json-setter'\nexport type { NodeIdSetterProps } from './basic/node-id-setter'\nexport type { NumberSetterProps } from './basic/number-setter'\nexport type { ObjectField, ObjectSetterProps } from './basic/object-setter'\nexport type { RectSetterProps } from './basic/rect-setter'\nexport type { SegmentedOption, SegmentedSetterProps } from './basic/segmented-setter'\nexport type { SelectOption, SelectSetterProps } from './basic/select-setter'\nexport type { SliderSetterProps } from './basic/slider-setter'\nexport type { SpacingSetterProps, SpacingValue } from './basic/spacing-setter'\nexport type { StringSetterProps } from './basic/string-setter'\nexport type { SwitchSetterProps } from './basic/switch-setter'\nexport type { TextAreaSetterProps } from './basic/textarea-setter'\nexport type { UploadSetterProps, UploadValue } from './basic/upload-setter'\n\nexport type { CollapseSetterProps } from './group/collapse-setter'\nexport type { TabSetterProps } from './group/tab-setter'\n\n// Default setter map\nimport AlignSetter from './basic/align-setter'\nimport ArraySetter from './basic/array-setter'\nimport ColorSetter from './basic/color-setter'\nimport DataBindingSetter from './basic/data-binding-setter'\nimport DataMappingSetter from './basic/data-mapping-setter'\nimport JsonSetter from './basic/json-setter'\nimport NodeIdSetter from './basic/node-id-setter'\nimport NumberSetter from './basic/number-setter'\nimport ObjectSetter from './basic/object-setter'\nimport RectSetter from './basic/rect-setter'\nimport SegmentedSetter from './basic/segmented-setter'\nimport SelectSetter from './basic/select-setter'\nimport SliderSetter from './basic/slider-setter'\nimport SpacingSetter from './basic/spacing-setter'\nimport StringSetter from './basic/string-setter'\nimport SwitchSetter from './basic/switch-setter'\nimport TextAreaSetter from './basic/textarea-setter'\nimport UploadSetter from './basic/upload-setter'\nimport CollapseSetter from './group/collapse-setter'\nimport TabSetter from './group/tab-setter'\n\nexport const setterMap = {\n ColorSetter,\n NodeIdSetter,\n NumberSetter,\n RectSetter,\n StringSetter,\n SwitchSetter,\n UploadSetter,\n SegmentedSetter,\n CollapseSetter,\n TabSetter,\n SpacingSetter,\n AlignSetter,\n DataBindingSetter,\n DataMappingSetter,\n SelectSetter,\n SliderSetter,\n TextAreaSetter,\n ArraySetter,\n JsonSetter,\n ObjectSetter,\n}\n\nexport default setterMap\n"],"names":["Popover","props","open","onClose","trigger","children","width","triggerRef","useRef","position","setPosition","useState","top","left","popoverWidth","setPopoverWidth","useEffect","current","triggerRect","getBoundingClientRect","triggerWidth","bottom","handleClickOutside","event","target","popoverEl","document","querySelector","contains","addEventListener","removeEventListener","React","createElement","Fragment","ref","createPortal","className","style","zIndex","body","cn","inputs","clsx","toKebabCase","string","replace","toLowerCase","toCamelCase","match","p1","p2","toUpperCase","toPascalCase","camelCase","charAt","slice","mergeClasses","classes","filter","index","array","Boolean","trim","indexOf","join","hasA11yProp","prop","startsWith","defaultAttributes","xmlns","height","viewBox","fill","stroke","strokeWidth","strokeLinecap","strokeLinejoin","Icon","forwardRef","color","size","absoluteStrokeWidth","iconNode","rest","Number","map","tag","attrs","Array","isArray","createLucideIcon","iconName","Component","displayName","__iconNode","x","y","rx","key","d","AlignEndHorizontal","AlignEndVertical","AlignHorizontalDistributeCenter","AlignStartHorizontal","AlignStartVertical","AlignVerticalDistributeCenter","ArrowRight","Check","ChevronDown","ChevronsUpDown","Code","cx","cy","ry","Database","FileBraces","r","GripVertical","x1","x2","y1","y2","Link2","Link","Maximize2","Plus","Settings2","Trash2","Unlink","Upload","X","defaultValue","horizontal","vertical","horizontalOptions","value","icon","label","verticalOptions","gridPositions","h","v","getElementPosition","transform","right","AlignSetter","initialValue","onChange","showHorizontal","showVertical","currentValue","updateAlign","useCallback","updates","handleGridClick","isGridSelected","styles","container","visualWrapper","previewBox","previewElement","grid","pos","gridButton","gridButtonSelected","onClick","type","section","sectionLabel","buttonGroup","option","isRotated","alignButton","alignButtonSelected","title","alignIcon","alignIconRotated","ArraySetter","itemSetter","maxItems","minItems","placeholder","addButtonText","items","handleAdd","length","newItem","handleRemove","newItems","_","i","handleChange","newValue","canAdd","canRemove","item","String","dragHandle","input","e","val","removeButton","disabled","removeIcon","addButton","addIcon","_extends","Object","assign","bind","n","arguments","t","hasOwnProperty","call","apply","_objectWithoutPropertiesLoose","RGB_MAX","SV_MAX","rgbaToHsva","_ref","g","b","a","max","Math","delta","min","hh","s","hsvaToHslaString","hsva","l","hsvaToHsla","_ref5","rgbToHex","_ref7","bin","toString","rgbaToHexa","_ref8","alpha","hexToHsva","hex","hexToRgba","htemp","test","reg","RegExp","parseInt","hsvaToRgba","_ref9","_h","_s","_v","hi","floor","f","_p","_q","_t","rgba","round","hsvaToRgbaString","rgbaToRgb","_ref0","hslaToHsl","_ref1","hsvaToHex","hsvaToHsv","_ref10","rgbToXY","_ref12","translateColor","pow","red","green","blue","xyz","bri","str","rgb","hsl","hsv","hsla","xy","hexa","validHex","useEventCallback","handler","callbackRef","isTouch","preventDefaultMove","preventDefault","clamp","number","getRelativePosition","node","rect","pointer","touches","pageX","window","pageXOffset","pageY","pageYOffset","_excluded","Interactive","prefixCls","onMove","onDown","reset","hasTouched","isDragging","setDragging","onMoveCallback","onKeyCallback","isValid","handleMove","isDown","buttons","handleMoveEnd","toggleDocumentEvents","state","handleMoveStart","activeEl","activeElement","blur","nativeEvent","_jsx","touchAction","tabIndex","onMouseDown","onTouchStart","Pointer","stylePointer","boxShadow","borderRadius","backgroundColor","useMemo","Saturation","_hsva$h","radius","hue","other","containerStyle","interaction","handleKeyDown","step","newS","newV","changed","pointerElement","comProps","handleClick","focus","inset","cursor","backgroundImage","outline","onKeyDown","fillProps","styleWrapper","BACKGROUND_IMG","Alpha","background","bgProps","innerProps","pointerProps","direction","offset","colorTo","innerBackground","currentAlpha","newAlpha","syntheticOffset","_jsxs","getNumberValue","EditableInput","placement","initValue","labelStyle","inputStyle","onBlur","renderInput","setValue","isFocus","evn","valInit","isNaN","handleBlur","placementStyle","wrapperStyle","alignItems","display","fontSize","editableStyle","paddingTop","paddingBottom","paddingLeft","paddingRight","boxSizing","border","inputProps","autoComplete","onFocus","onFocusCapture","elm","setSelectionRange","textTransform","EditableInputRGBA","rProps","gProps","bProps","aProps","handleAlphaBlur","handleColor","roundedAlpha","marginLeft","Hue","_onChange","Swatch","colors","rectProps","addonAfter","addonBefore","rectRender","rectStyle","marginRight","marginBottom","flexWrap","isValidElement","idx","checked","toLocaleLowerCase","render","child","cloneElement","PRESET_COLORS","Bar","Sketch","presetColors","editableDisable","disableAlpha","setHsva","handleHex","handleAlphaChange","handleSaturationChange","newColor","styleMain","styleAlpha","styleSwatch","borderTop","styleSwatchRect","padding","marginTop","flex","newHue","margin","toLocaleUpperCase","minWidth","RGBA","result","hsvColor","ColorSetter","setOpen","colorPreview","colorValue","popover","res","staticValue","DataBindingSetter","dataType","showPreview","dataSources","activeTab","setActiveTab","updateBinding","handleTypeChange","handleStaticValueChange","handleDatasourceChange","datasourceId","datasourcePath","handlePathChange","renderStaticInput","booleanButtons","booleanButton","booleanButtonActive","textarea","parsed","JSON","parse","stringify","bindingStatus","ds","find","id","triggerIcon","triggerIconPrimary","text","name","FileJson","triggerIconMuted","triggerText","popoverContent","tabsList","role","tabTrigger","tabTriggerActive","tabTriggerIcon","tabContent","tabContentActive","datasourceList","datasourceButton","datasourceButtonActive","datasourceIcon","emptyState","inputMono","hint","preview","mappings","DataMappingSetter","targetFields","sourceFields","getMapping","targetField","m","updateMapping","existingIndex","findIndex","newMappings","push","sourceField","clearMapping","mappedCount","header","headerTitle","headerCount","mappingList","field","mapping","mappingItem","mappingHeader","mappingTitle","required","mappingRequired","mappingType","mappingRow","select","sf","arrowIcon","transformRow","transformIcon","transformInput","clearButton","helpText","JsonSetter","rows","setText","error","setError","undefined","newText","message","lineHeight","minHeight","textareaError","spellCheck","NodeIdSetter","selected","componentMeta","NumberSetter","suffix","inputWithSuffix","ObjectSetter","fields","allowCustomFields","addFieldText","handleFieldChange","handleAddField","newKey","Date","now","handleRemoveField","definedKeys","customKeys","keys","k","includes","customField","customFieldInputs","keyInput","RectSetter","inputWrapper","formatDecimal","decimalRegex","num","SegmentedSetter","options","containerSm","segment","segmentSelected","segmentDisabled","SelectSetter","selectedOption","opt","handleSelect","optionValue","triggerValue","chevron","chevronOpen","dropdown","optionSelected","optionDisabled","SliderSetter","showValue","trackRef","percentage","clientX","percent","rawValue","steppedValue","clampedValue","handleMouseDown","handleMouseMove","moveEvent","handleMouseUp","slider","track","range","thumb","presetValues","SpacingSetter","mode","linked","initialLinked","isLinked","setIsLinked","updateSpacing","values","handlePresetClick","presetValue","toggleLinked","prev","boxModel","inputTop","spacingInput","inputRight","inputBottom","inputLeft","linkButton","linkButtonActive","linkIcon","presets","presetButton","modeLabel","StringSetter","SwitchSetter","trueLabel","falseLabel","segmented","segmentedButton","segmentedButtonSelected","checkboxWrapper","checkboxInput","checkbox","checkboxChecked","checkIcon","switch","switchChecked","switchThumb","switchThumbChecked","TextAreaSetter","maxLength","counter","UploadSetter","accept","maxSize","inputRef","handleFileChange","file","files","ext","split","pop","base64","dimensions","Promise","all","resolve","reject","reader","FileReader","onload","onerror","err","readAsDataURL","img","Image","naturalWidth","naturalHeight","src","URL","createObjectURL","raw","handleClear","row","hiddenInput","uploadArea","uploadIcon","clearIcon","fileInfo","fileName","fileSize","toFixed","CollapseSetter","isOpen","setIsOpen","toggleButton","toggleIcon","srOnly","content","contentHidden","TabSetter","tabs","config","Error","firstTabValue","gridTemplateColumns","tab","setterMap"],"mappings":"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","x_google_ignoreList":[1,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,32,33,34,35,36,37,38,39,40,41,42,43,44,45]}