{"version":3,"sources":["jsdelivr-header.js","/npm/@univerjs/design@0.25.1/lib/es/index.js"],"names":[],"mappings":"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","file":"/npm/@univerjs/design@0.25.1/lib/es/index.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.48.0.\n * Original file: /npm/@univerjs/design@0.25.1/lib/es/index.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","import { CalendarIcon, CheckMarkIcon, ClockIcon, CloseIcon, DeleteIcon, DownIcon, DropdownIcon, ErrorIcon, InfoIcon, LoadingMultiIcon, MoreDownIcon, MoreLeftIcon, MoreRightIcon, MoreUpIcon, OneToOneIcon, SuccessIcon, WarningIcon, ZoomInIcon, ZoomOutIcon } from \"@univerjs/icons\";\nimport { Children, cloneElement, createContext, forwardRef, isValidElement, memo, useCallback, useContext, useEffect, useId, useImperativeHandle, useLayoutEffect, useMemo, useRef, useState } from \"react\";\nimport { clsx as clsx$1 } from \"clsx\";\nimport { twMerge } from \"tailwind-merge\";\nimport { Fragment, jsx, jsxs } from \"react/jsx-runtime\";\nimport { cva } from \"class-variance-authority\";\nimport { Slot } from \"@radix-ui/react-slot\";\nimport { DirectionProvider } from \"@radix-ui/react-direction\";\nimport { Close, Content, Description, Overlay, Portal, Root, Title } from \"@radix-ui/react-dialog\";\nimport { Content as Content$1, Portal as Portal$1, Root as Root$1, Trigger } from \"@radix-ui/react-popover\";\nimport { createPortal } from \"react-dom\";\nimport { CheckboxItem, Content as Content$2, Item, ItemIndicator, Portal as Portal$2, RadioGroup as RadioGroup$1, RadioItem, Root as Root$2, Separator as Separator$1, Sub, SubContent, SubTrigger, Trigger as Trigger$1 } from \"@radix-ui/react-dropdown-menu\";\nimport { Content as Content$3, Portal as Portal$3, Root as Root$3, Trigger as Trigger$2 } from \"@radix-ui/react-hover-card\";\nimport { Toaster as Toaster$1, toast, toast as toast$1 } from \"sonner\";\nimport { CSSTransition } from \"react-transition-group\";\nimport { Root as Root$4 } from \"@radix-ui/react-separator\";\nimport { createRoot } from \"react-dom/client\";\n\n//#region src/helper/clsx.ts\nfunction clsx(...inputs) {\n\treturn twMerge(clsx$1(inputs));\n}\n\n//#endregion\n//#region src/components/accordion/Accordion.tsx\nfunction Accordion(props) {\n\tconst { className, items } = props;\n\tconst [openIndex, setOpenIndex] = useState(null);\n\tconst toggleItem = (index) => {\n\t\tsetOpenIndex(openIndex === index ? null : index);\n\t};\n\treturn /* @__PURE__ */ jsx(\"div\", {\n\t\t\"data-u-comp\": \"accordion\",\n\t\tclassName: clsx(\"univer-divide-x-0 univer-divide-y univer-divide-solid univer-divide-gray-200 dark:!univer-divide-gray-600\", className),\n\t\tchildren: items.map((item, index) => /* @__PURE__ */ jsxs(\"div\", { children: [/* @__PURE__ */ jsxs(\"button\", {\n\t\t\tclassName: \"univer-box-border univer-flex univer-w-full univer-cursor-pointer univer-items-center univer-gap-1.5 univer-border-none univer-bg-transparent univer-p-4 univer-text-left univer-text-gray-700 hover:univer-text-gray-900 focus:univer-outline-none dark:!univer-text-gray-200 dark:hover:!univer-text-white\",\n\t\t\ttype: \"button\",\n\t\t\tonClick: () => toggleItem(index),\n\t\t\tchildren: [/* @__PURE__ */ jsx(DownIcon, { className: clsx(\"univer-size-2.5 univer-flex-shrink-0 univer-transition-transform\", {\n\t\t\t\t\"-univer-rotate-90\": openIndex !== index,\n\t\t\t\t\"univer-rotate-0\": openIndex === index\n\t\t\t}) }), /* @__PURE__ */ jsx(\"span\", {\n\t\t\t\tclassName: \"univer-font-medium\",\n\t\t\t\tchildren: item.label\n\t\t\t})]\n\t\t}), /* @__PURE__ */ jsx(\"div\", {\n\t\t\tclassName: clsx(\"univer-overflow-hidden univer-transition-[max-height,opacity] univer-duration-500 univer-ease-in-out\", {\n\t\t\t\t\"univer-max-h-screen\": openIndex === index,\n\t\t\t\t\"univer-max-h-0\": openIndex !== index\n\t\t\t}),\n\t\t\tchildren: /* @__PURE__ */ jsx(\"div\", {\n\t\t\t\tclassName: \"univer-box-border univer-px-4 univer-py-1.5\",\n\t\t\t\tchildren: item.children\n\t\t\t})\n\t\t})] }, index))\n\t});\n}\n\n//#endregion\n//#region src/components/avatar/Avatar.tsx\nconst avatarVariants = cva(`\n      univer-relative univer-inline-block univer-overflow-hidden univer-whitespace-nowrap univer-bg-gray-200\n      univer-text-center univer-align-middle univer-text-white\n    `, {\n\tvariants: {\n\t\t/**\n\t\t* The shape of the avatar\n\t\t* @default 'circle'\n\t\t*/\n\t\tshape: {\n\t\t\tcircle: \"univer-rounded-full\",\n\t\t\tsquare: \"univer-rounded\"\n\t\t},\n\t\tsize: {\n\t\t\tmiddle: \"univer-size-9 univer-leading-9\",\n\t\t\tsmall: \"univer-size-7 univer-leading-7\"\n\t\t}\n\t},\n\tdefaultVariants: {\n\t\tshape: \"circle\",\n\t\tsize: \"middle\"\n\t}\n});\n/**\n* Avatar Component\n*/\nfunction Avatar(props) {\n\tconst { children, className, style, title, alt, shape = \"circle\", size = \"middle\", src, fit = \"fill\", onError, onLoad } = props;\n\tconst sizeStyle = typeof size === \"number\" ? {\n\t\twidth: `${size}px`,\n\t\theight: `${size}px`,\n\t\tlineHeight: `${size}px`\n\t} : {};\n\tconst fitStyle = { objectFit: fit };\n\treturn /* @__PURE__ */ jsxs(\"span\", {\n\t\tclassName: clsx(avatarVariants({\n\t\t\tshape,\n\t\t\tsize: typeof size === \"number\" ? \"middle\" : size\n\t\t}), { \"univer-bg-transparent\": src }, className),\n\t\tstyle: {\n\t\t\t...sizeStyle,\n\t\t\t...style,\n\t\t\t...src && fitStyle\n\t\t},\n\t\tchildren: [src && /* @__PURE__ */ jsx(\"img\", {\n\t\t\tclassName: \"univer-block univer-size-full\",\n\t\t\tsrc,\n\t\t\ttitle,\n\t\t\talt,\n\t\t\tonError,\n\t\t\tonLoad\n\t\t}), children]\n\t});\n}\n\n//#endregion\n//#region src/components/badge/Badge.tsx\nfunction Badge(props) {\n\tconst { className, children, closable = false, onClose } = props;\n\treturn /* @__PURE__ */ jsxs(\"span\", {\n\t\t\"data-u-comp\": \"badge\",\n\t\tclassName: clsx(\"univer-box-border univer-inline-flex univer-items-center univer-gap-1 univer-truncate univer-rounded-md univer-border univer-border-solid univer-border-gray-100 univer-bg-gray-100 univer-px-2.5 univer-py-0.5 univer-text-xs univer-font-medium univer-text-gray-900 dark:!univer-border-gray-500 dark:!univer-bg-gray-700 dark:!univer-text-gray-300\", className),\n\t\tchildren: [/* @__PURE__ */ jsx(\"span\", {\n\t\t\tclassName: \"univer-flex-1 univer-truncate\",\n\t\t\tchildren\n\t\t}), closable && /* @__PURE__ */ jsx(\"button\", {\n\t\t\tclassName: \"univer-flex univer-cursor-pointer univer-items-center univer-justify-center univer-border-none univer-p-0 univer-outline-none univer-transition-opacity hover:univer-opacity-70\",\n\t\t\ttype: \"button\",\n\t\t\t\"aria-label\": \"Close badge\",\n\t\t\tonClick: onClose,\n\t\t\tchildren: /* @__PURE__ */ jsx(CloseIcon, { className: \"univer-text-current\" })\n\t\t})]\n\t});\n}\n\n//#endregion\n//#region src/components/button/Button.tsx\nconst buttonVariants = cva(`\n      univer-box-border univer-inline-flex univer-cursor-pointer univer-select-none univer-items-center\n      univer-justify-center univer-gap-2 univer-whitespace-nowrap univer-rounded-md univer-border univer-border-solid\n      univer-text-sm univer-font-medium univer-transition-colors\n      disabled:univer-pointer-events-none disabled:univer-cursor-not-allowed disabled:univer-opacity-50\n      [&_svg]:univer-pointer-events-none [&_svg]:univer-size-4 [&_svg]:univer-shrink-0\n    `, {\n\tvariants: {\n\t\tvariant: {\n\t\t\tdefault: `\n                  univer-border-gray-200 univer-bg-white univer-text-gray-700\n                  hover:univer-bg-gray-100\n                  active:univer-bg-gray-200\n                  dark:!univer-border-gray-600 dark:!univer-bg-gray-700 dark:!univer-text-white\n                  dark:hover:!univer-bg-gray-600\n                  dark:active:!univer-bg-gray-700\n                `,\n\t\t\tprimary: `\n                  univer-border-primary-600 univer-bg-primary-600 univer-text-white\n                  hover:univer-bg-primary-500\n                  active:univer-bg-primary-700\n                `,\n\t\t\tdanger: `\n                  univer-border-red-500 univer-bg-red-500 univer-text-white\n                  hover:univer-border-red-400 hover:univer-bg-red-400\n                  active:univer-border-red-600 active:univer-bg-red-600\n                `,\n\t\t\ttext: `\n                  univer-border-transparent univer-bg-transparent univer-text-gray-900\n                  hover:univer-bg-gray-100\n                  active:univer-bg-gray-200\n                  dark:!univer-text-white\n                  dark:hover:!univer-bg-gray-700\n                  dark:active:!univer-bg-gray-600\n                `,\n\t\t\tlink: `\n                  univer-underline-current univer-border-transparent univer-bg-transparent univer-text-primary-600\n                  univer-underline-offset-4\n                  hover:univer-text-primary-500 hover:univer-underline\n                  active:univer-text-primary-700\n                `,\n\t\t\tghost: `\n                  univer-border-transparent univer-bg-transparent univer-text-gray-900\n                  hover:univer-bg-gray-100\n                  active:univer-bg-gray-200\n                  dark:!univer-text-white\n                  dark:hover:!univer-bg-gray-700\n                  dark:active:!univer-bg-gray-600\n                `\n\t\t},\n\t\tsize: {\n\t\t\tsmall: \"univer-h-6 univer-rounded-md univer-px-1.5 univer-text-xs\",\n\t\t\tmiddle: \"univer-h-8 univer-rounded-lg univer-px-2 univer-text-sm\",\n\t\t\tlarge: \"univer-h-10 univer-rounded-lg univer-px-3 univer-text-sm\"\n\t\t}\n\t},\n\tdefaultVariants: {\n\t\tvariant: \"default\",\n\t\tsize: \"middle\"\n\t}\n});\nconst Button = forwardRef(({ className, variant, size, asChild = false, ...props }, ref) => {\n\treturn /* @__PURE__ */ jsx(asChild ? Slot : \"button\", {\n\t\tclassName: clsx(buttonVariants({\n\t\t\tvariant,\n\t\t\tsize,\n\t\t\tclassName\n\t\t})),\n\t\tref,\n\t\t\"data-u-comp\": \"button\",\n\t\t...props\n\t});\n});\nButton.displayName = \"Button\";\n\n//#endregion\n//#region src/components/button/ButtonGroup.tsx\nconst ButtonGroup = ({ className, orientation = \"horizontal\", children }) => {\n\tconst totalButtons = Children.count(children);\n\tconst isHorizontal = orientation === \"horizontal\";\n\tconst isVertical = orientation === \"vertical\";\n\treturn /* @__PURE__ */ jsx(\"div\", {\n\t\tclassName: clsx(\"univer-grid\", {\n\t\t\t\"univer-grid-flow-row\": isVertical,\n\t\t\t\"univer-w-fit\": isVertical\n\t\t}, className),\n\t\tchildren: Children.map(children, (child, index) => {\n\t\t\tconst isFirst = index === 0;\n\t\t\tconst isLast = index === totalButtons - 1;\n\t\t\treturn cloneElement(child, { className: clsx({\n\t\t\t\t\"!univer-rounded-l-none\": isHorizontal && !isFirst,\n\t\t\t\t\"!univer-rounded-r-none\": isHorizontal && !isLast,\n\t\t\t\t\"!univer-border-l-0\": isHorizontal && !isFirst,\n\t\t\t\t\"!univer-rounded-t-none\": isVertical && !isFirst,\n\t\t\t\t\"!univer-rounded-b-none\": isVertical && !isLast,\n\t\t\t\t\"!univer-border-t-0\": isVertical && !isFirst\n\t\t\t}, child.props.className) });\n\t\t})\n\t});\n};\n\n//#endregion\n//#region src/helper/is-browser.ts\n/**\n* Copyright 2023-present DreamNum Co., Ltd.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n*     http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\nfunction isBrowser() {\n\treturn typeof window !== \"undefined\" && typeof document !== \"undefined\";\n}\n\n//#endregion\n//#region src/components/config-provider/ConfigProvider.tsx\nconst ConfigContext = createContext({ mountContainer: isBrowser() ? document.body : null });\nfunction ConfigProvider(props) {\n\tconst { children, locale, mountContainer, direction } = props;\n\tconst value = useMemo(() => {\n\t\treturn {\n\t\t\tlocale,\n\t\t\tdirection,\n\t\t\tmountContainer\n\t\t};\n\t}, [\n\t\tlocale,\n\t\tdirection,\n\t\tmountContainer\n\t]);\n\treturn /* @__PURE__ */ jsx(ConfigContext.Provider, {\n\t\tvalue,\n\t\tchildren: /* @__PURE__ */ jsx(DirectionProvider, {\n\t\t\tdir: direction !== null && direction !== void 0 ? direction : \"ltr\",\n\t\t\tchildren\n\t\t})\n\t});\n}\n\n//#endregion\n//#region src/helper/class-utilities.ts\n/**\n* Copyright 2023-present DreamNum Co., Ltd.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n*     http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\nconst scrollbarClassName = \"univer-scrollbar-thin univer-scrollbar-track-gray-50 univer-scrollbar-thumb-gray-300 dark:!univer-scrollbar-track-gray-900 dark:!univer-scrollbar-thumb-gray-700\";\nconst borderBasicClassName = \"univer-border-gray-200 dark:!univer-border-gray-600 univer-border-solid\";\nconst borderClassName = clsx(borderBasicClassName, \"univer-border\");\nconst borderLeftBottomClassName = clsx(borderBasicClassName, \"univer-border-l univer-border-b univer-border-t-0 univer-border-r-0\");\nconst borderLeftClassName = clsx(borderBasicClassName, \"univer-border-l univer-border-b-0 univer-border-t-0 univer-border-r-0\");\nconst borderLeftRTLClassName = clsx(borderBasicClassName, \"univer-border-b-0 univer-border-t-0 rtl:univer-border-l-0 rtl:univer-border-r\");\nconst borderTopClassName = clsx(borderBasicClassName, \"univer-border-l-0 univer-border-b-0 univer-border-t univer-border-r-0\");\nconst borderBottomClassName = clsx(borderBasicClassName, \"univer-border-l-0 univer-border-b univer-border-t-0 univer-border-r-0\");\nconst borderRightClassName = clsx(borderBasicClassName, \"univer-border-l-0 univer-border-b-0 univer-border-t-0 univer-border-r\");\nconst divideYClassName = \"univer-divide-gray-200 dark:!univer-divide-gray-600 univer-divide-y univer-divide-x-0 univer-divide-solid\";\nconst divideXClassName = \"univer-divide-gray-200 dark:!univer-divide-gray-600 univer-divide-x univer-divide-y-0 univer-divide-solid\";\n\n//#endregion\n//#region src/helper/date.ts\n/**\n* Copyright 2023-present DreamNum Co., Ltd.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n*     http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\nfunction pad(value, length = 2) {\n\treturn String(value).padStart(length, \"0\");\n}\nfunction formatDateWithPattern(value, pattern) {\n\tconst date = value !== null && value !== void 0 ? value : /* @__PURE__ */ new Date();\n\tif (Number.isNaN(date.getTime())) return \"Invalid Date\";\n\tconst tokenMap = {\n\t\tYYYY: String(date.getFullYear()),\n\t\tMM: pad(date.getMonth() + 1),\n\t\tDD: pad(date.getDate()),\n\t\tHH: pad(date.getHours()),\n\t\tmm: pad(date.getMinutes()),\n\t\tss: pad(date.getSeconds())\n\t};\n\treturn pattern.replace(/YYYY|MM|DD|HH|mm|ss/g, (token) => {\n\t\tvar _tokenMap$token;\n\t\treturn (_tokenMap$token = tokenMap[token]) !== null && _tokenMap$token !== void 0 ? _tokenMap$token : token;\n\t});\n}\n\n//#endregion\n//#region src/components/time-input/TimeInput.tsx\nfunction TimeInput(props) {\n\tconst { className, value, onValueChange } = props;\n\tfunction handleChangeTime(event) {\n\t\tconst [hours, minutes, seconds] = event.target.value.split(\":\").map(Number);\n\t\tconst newValue = new Date(value !== null && value !== void 0 ? value : Date.now());\n\t\tnewValue.setHours(hours, minutes, seconds, 0);\n\t\tonValueChange === null || onValueChange === void 0 || onValueChange(newValue);\n\t}\n\treturn /* @__PURE__ */ jsxs(\"div\", {\n\t\t\"data-u-comp\": \"time-input\",\n\t\tclassName: \"univer-relative univer-mx-auto univer-mt-1 univer-w-fit\",\n\t\tchildren: [/* @__PURE__ */ jsx(ClockIcon, { className: \"univer-absolute univer-left-2 univer-top-1/2 -univer-translate-y-1/2 univer-text-gray-600 dark:!univer-text-gray-400\" }), /* @__PURE__ */ jsx(\"input\", {\n\t\t\tclassName: clsx(\"univer-block univer-h-7 univer-w-fit univer-appearance-none univer-rounded-md univer-bg-transparent univer-pl-6 univer-pr-2 univer-text-center univer-text-gray-800 univer-shadow univer-outline-none univer-transition-all univer-duration-200 focus:univer-border-primary-600 dark:!univer-text-white dark:focus:!univer-border-primary-500 [&::-webkit-calendar-picker-indicator]:univer-hidden [&::-webkit-calendar-picker-indicator]:univer-appearance-none\", borderClassName, className),\n\t\t\ttype: \"time\",\n\t\t\tstep: \"1\",\n\t\t\tvalue: formatDateWithPattern(value, \"HH:mm:ss\"),\n\t\t\tonChange: handleChangeTime\n\t\t})]\n\t});\n}\n\n//#endregion\n//#region src/components/calendar/Calendar.tsx\nfunction getDaysInMonth(year, month) {\n\treturn new Date(year, month + 1, 0).getDate();\n}\nfunction getFirstDayOfWeek(year, month) {\n\treturn new Date(year, month, 1).getDay();\n}\nfunction DayButton(props) {\n\tconst { className, ...restProps } = props;\n\treturn /* @__PURE__ */ jsx(\"button\", {\n\t\tclassName: clsx(\"univer-size-7 univer-rounded-md univer-border-none univer-bg-transparent univer-p-1 univer-transition-all hover:univer-bg-gray-200 dark:hover:!univer-bg-gray-600\", className),\n\t\ttype: \"button\",\n\t\t...restProps\n\t});\n}\nfunction Calendar(props) {\n\tconst { className, max, min, showTime = false, value, onValueChange } = props;\n\tconst { locale } = useContext(ConfigContext);\n\tconst { year, weekDays, months } = locale === null || locale === void 0 ? void 0 : locale.Calendar;\n\tconst today = /* @__PURE__ */ new Date();\n\tconst [currentYear, setCurrentYear] = useState((value !== null && value !== void 0 ? value : today).getFullYear());\n\tconst [currentMonth, setCurrentMonth] = useState((value !== null && value !== void 0 ? value : today).getMonth());\n\tfunction prevMonth() {\n\t\tsetCurrentMonth((prev) => {\n\t\t\tif (prev === 0) {\n\t\t\t\tsetCurrentYear((y) => y - 1);\n\t\t\t\treturn 11;\n\t\t\t}\n\t\t\treturn prev - 1;\n\t\t});\n\t}\n\tfunction nextMonth() {\n\t\tsetCurrentMonth((prev) => {\n\t\t\tif (prev === 11) {\n\t\t\t\tsetCurrentYear((y) => y + 1);\n\t\t\t\treturn 0;\n\t\t\t}\n\t\t\treturn prev + 1;\n\t\t});\n\t}\n\tconst daysInMonth = getDaysInMonth(currentYear, currentMonth);\n\tconst firstDay = getFirstDayOfWeek(currentYear, currentMonth);\n\tconst days = useMemo(() => {\n\t\tconst daysArray = [];\n\t\tfor (let i = 0; i < firstDay; i++) daysArray.push(null);\n\t\tfor (let d = 1; d <= daysInMonth; d++) daysArray.push(d);\n\t\treturn daysArray;\n\t}, [daysInMonth, firstDay]);\n\tfunction isSelected(day) {\n\t\treturn day && currentYear === (value === null || value === void 0 ? void 0 : value.getFullYear()) && currentMonth === (value === null || value === void 0 ? void 0 : value.getMonth()) && day === (value === null || value === void 0 ? void 0 : value.getDate());\n\t}\n\tfunction isToday(day) {\n\t\treturn day && currentYear === today.getFullYear() && currentMonth === today.getMonth() && day === today.getDate();\n\t}\n\tfunction isDisabled(day) {\n\t\tvar _value$getHours, _value$getMinutes, _value$getSeconds;\n\t\tif (!day) return false;\n\t\tconst hours = (_value$getHours = value === null || value === void 0 ? void 0 : value.getHours()) !== null && _value$getHours !== void 0 ? _value$getHours : today.getHours();\n\t\tconst minutes = (_value$getMinutes = value === null || value === void 0 ? void 0 : value.getMinutes()) !== null && _value$getMinutes !== void 0 ? _value$getMinutes : today.getMinutes();\n\t\tconst seconds = (_value$getSeconds = value === null || value === void 0 ? void 0 : value.getSeconds()) !== null && _value$getSeconds !== void 0 ? _value$getSeconds : today.getSeconds();\n\t\tconst d = new Date(currentYear, currentMonth, day, hours, minutes, seconds);\n\t\tif (min && d < min) return true;\n\t\tif (max && d > max) return true;\n\t\treturn false;\n\t}\n\tfunction handleChangeDate(day) {\n\t\tvar _value$getHours2, _value$getMinutes2, _value$getSeconds2;\n\t\tif (isDisabled(day)) return;\n\t\tconst hours = (_value$getHours2 = value === null || value === void 0 ? void 0 : value.getHours()) !== null && _value$getHours2 !== void 0 ? _value$getHours2 : today.getHours();\n\t\tconst minutes = (_value$getMinutes2 = value === null || value === void 0 ? void 0 : value.getMinutes()) !== null && _value$getMinutes2 !== void 0 ? _value$getMinutes2 : today.getMinutes();\n\t\tconst seconds = (_value$getSeconds2 = value === null || value === void 0 ? void 0 : value.getSeconds()) !== null && _value$getSeconds2 !== void 0 ? _value$getSeconds2 : today.getSeconds();\n\t\tconst selectedDate = new Date(currentYear, currentMonth, day, hours, minutes, seconds);\n\t\tonValueChange === null || onValueChange === void 0 || onValueChange(selectedDate);\n\t}\n\tfunction handleChangeTime(time) {\n\t\tvar _value$getDate;\n\t\tconst hours = time.getHours();\n\t\tconst minutes = time.getMinutes();\n\t\tconst seconds = time.getSeconds();\n\t\tconst updatedDate = new Date(currentYear, currentMonth, (_value$getDate = value === null || value === void 0 ? void 0 : value.getDate()) !== null && _value$getDate !== void 0 ? _value$getDate : today.getDate(), hours, minutes, seconds);\n\t\tonValueChange === null || onValueChange === void 0 || onValueChange(updatedDate);\n\t}\n\treturn /* @__PURE__ */ jsxs(\"div\", {\n\t\t\"data-u-comp\": \"calendar\",\n\t\tclassName: clsx(\"univer-mx-auto univer-max-w-xs univer-select-none univer-rounded univer-bg-white univer-text-gray-900 dark:!univer-bg-gray-900 dark:!univer-text-white\", className),\n\t\tchildren: [\n\t\t\t/* @__PURE__ */ jsxs(\"nav\", {\n\t\t\t\tclassName: \"univer-mb-4 univer-flex univer-items-center univer-justify-between\",\n\t\t\t\tchildren: [\n\t\t\t\t\t/* @__PURE__ */ jsx(DayButton, {\n\t\t\t\t\t\tclassName: \"univer-text-lg univer-text-gray-500 dark:!univer-text-gray-200\",\n\t\t\t\t\t\t\"aria-label\": \"Previous Month\",\n\t\t\t\t\t\tonClick: prevMonth,\n\t\t\t\t\t\tchildren: /* @__PURE__ */ jsx(MoreRightIcon, { className: \"univer-rotate-180\" })\n\t\t\t\t\t}),\n\t\t\t\t\t/* @__PURE__ */ jsxs(\"span\", {\n\t\t\t\t\t\tclassName: \"univer-flex univer-gap-0.5 univer-text-sm univer-font-medium\",\n\t\t\t\t\t\tchildren: [\n\t\t\t\t\t\t\t/* @__PURE__ */ jsx(\"span\", { children: currentYear }),\n\t\t\t\t\t\t\t/* @__PURE__ */ jsx(\"span\", { children: year }),\n\t\t\t\t\t\t\t/* @__PURE__ */ jsx(\"span\", { children: months[currentMonth] })\n\t\t\t\t\t\t]\n\t\t\t\t\t}),\n\t\t\t\t\t/* @__PURE__ */ jsx(DayButton, {\n\t\t\t\t\t\tclassName: \"univer-text-lg univer-text-gray-500 dark:!univer-text-gray-200\",\n\t\t\t\t\t\t\"aria-label\": \"Next Month\",\n\t\t\t\t\t\tonClick: nextMonth,\n\t\t\t\t\t\tchildren: /* @__PURE__ */ jsx(MoreRightIcon, {})\n\t\t\t\t\t})\n\t\t\t\t]\n\t\t\t}),\n\t\t\t/* @__PURE__ */ jsx(\"div\", {\n\t\t\t\tclassName: \"univer-mb-1 univer-grid univer-grid-cols-7 univer-gap-1 univer-text-center univer-text-sm univer-text-gray-500 dark:!univer-text-gray-200\",\n\t\t\t\tchildren: weekDays.map((wd) => /* @__PURE__ */ jsx(\"div\", { children: wd }, wd))\n\t\t\t}),\n\t\t\t/* @__PURE__ */ jsx(\"div\", {\n\t\t\t\tclassName: \"univer-grid univer-grid-cols-7 univer-gap-1 univer-text-center\",\n\t\t\t\tchildren: days.map((day, idx) => day ? /* @__PURE__ */ jsx(DayButton, {\n\t\t\t\t\tclassName: clsx({\n\t\t\t\t\t\t\"!univer-bg-primary-600 univer-font-bold univer-text-white\": !isToday(day) && isSelected(day),\n\t\t\t\t\t\t\"dark:!univer-text-white\": !isToday(day) && !isSelected(day),\n\t\t\t\t\t\t\"!univer-bg-primary-600 univer-text-white\": isToday(day) && isSelected(day),\n\t\t\t\t\t\t\"univer-font-semibold univer-text-primary-600 dark:!univer-text-primary-500\": isToday(day) && !isSelected(day),\n\t\t\t\t\t\t\"univer-cursor-not-allowed univer-opacity-40\": isDisabled(day),\n\t\t\t\t\t\t\"univer-hover:bg-primary-100 univer-cursor-pointer univer-text-gray-800\": !isSelected(day) && !isDisabled(day)\n\t\t\t\t\t}),\n\t\t\t\t\tonClick: () => handleChangeDate(day),\n\t\t\t\t\tdisabled: isDisabled(day),\n\t\t\t\t\tchildren: day\n\t\t\t\t}, idx) : /* @__PURE__ */ jsx(\"div\", {}, idx))\n\t\t\t}),\n\t\t\tshowTime && /* @__PURE__ */ jsx(TimeInput, {\n\t\t\t\tvalue,\n\t\t\t\tonValueChange: handleChangeTime\n\t\t\t})\n\t\t]\n\t});\n}\n\n//#endregion\n//#region src/components/cascader-list/CascaderList.tsx\n/**\n* Copyright 2023-present DreamNum Co., Ltd.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n*     http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\nfunction Empty({ emptyText }) {\n\treturn /* @__PURE__ */ jsx(\"section\", {\n\t\tclassName: \"univer-h-8 univer-px-2 univer-pr-32 univer-text-sm/8 univer-text-gray-600 dark:!univer-text-gray-200\",\n\t\tchildren: emptyText\n\t});\n}\nfunction CascaderList(props) {\n\tconst { value, options = [], onChange, contentClassName, wrapperClassName } = props;\n\tconst { locale } = useContext(ConfigContext);\n\tconst activeOptions = useMemo(() => {\n\t\tconst activeOptions = [options];\n\t\tvalue.forEach((item, index) => {\n\t\t\tconst option = activeOptions[index].find((option) => option.value === item);\n\t\t\tif (option === null || option === void 0 ? void 0 : option.children) activeOptions.push(option.children);\n\t\t});\n\t\treturn activeOptions;\n\t}, [value]);\n\tfunction handleChange(index, v) {\n\t\tif (v === value[index]) return;\n\t\tif (value[index + 1]) {\n\t\t\tconst newValue = value.slice(0, index + 1);\n\t\t\tnewValue[index] = v;\n\t\t\tonChange(newValue);\n\t\t\treturn;\n\t\t}\n\t\tconst newValue = [...value];\n\t\tnewValue[index] = v;\n\t\tonChange(newValue);\n\t}\n\treturn /* @__PURE__ */ jsxs(\"section\", {\n\t\t\"data-u-comp\": \"cascader-list\",\n\t\tclassName: clsx(\"univer-overflow-auto-y univer-grid univer-h-full univer-max-h-80 univer-grid-flow-col univer-rounded univer-py-2 univer-text-gray-900 dark:!univer-text-white [&>ul:not(:last-child)]:univer-border-0 [&>ul:not(:last-child)]:univer-border-r [&>ul:not(:last-child)]:univer-border-solid [&>ul:not(:last-child)]:univer-border-r-gray-200\", borderClassName, scrollbarClassName, wrapperClassName),\n\t\tchildren: [activeOptions.map((options, index) => options.length ? /* @__PURE__ */ jsx(\"ul\", {\n\t\t\tclassName: clsx(\"univer-m-0 univer-h-full univer-max-h-full univer-list-none univer-overflow-auto univer-px-2\", scrollbarClassName, contentClassName),\n\t\t\tchildren: options.map((option) => /* @__PURE__ */ jsx(\"li\", { children: /* @__PURE__ */ jsxs(\"a\", {\n\t\t\t\tclassName: clsx(\"univer-relative univer-block univer-h-8 univer-cursor-pointer univer-rounded univer-text-sm/8\", {\n\t\t\t\t\t\"univer-px-7\": index > 0,\n\t\t\t\t\t\"univer-px-1.5\": index === 0,\n\t\t\t\t\t\"univer-bg-gray-200 dark:!univer-bg-gray-600\": option.value === value[index]\n\t\t\t\t}),\n\t\t\t\tonClick: () => handleChange(index, option.value),\n\t\t\t\tchildren: [index > 0 && /* @__PURE__ */ jsx(\"span\", {\n\t\t\t\t\tclassName: \"univer-absolute univer-left-2 univer-flex univer-h-full univer-items-center\",\n\t\t\t\t\tchildren: option.value === value[index] && /* @__PURE__ */ jsx(CheckMarkIcon, { className: \"univer-text-primary-600\" })\n\t\t\t\t}), /* @__PURE__ */ jsx(\"span\", { children: option.label })]\n\t\t\t}) }, option.value))\n\t\t}, index) : /* @__PURE__ */ jsx(Empty, { emptyText: locale === null || locale === void 0 ? void 0 : locale.CascaderList.empty }, index)), value.length <= 0 && /* @__PURE__ */ jsx(Empty, { emptyText: locale === null || locale === void 0 ? void 0 : locale.CascaderList.empty })]\n\t});\n}\n\n//#endregion\n//#region src/components/checkbox-group/CheckboxGroup.tsx\n/**\n* CheckboxGroup Component\n*/\nfunction CheckboxGroup(props) {\n\tconst { children, className, style, value, disabled, direction = \"horizontal\", onChange } = props;\n\tconst handleChange = (item) => {\n\t\tif (value.includes(item)) onChange(value.filter((i) => i !== item));\n\t\telse onChange([...value, item]);\n\t};\n\treturn /* @__PURE__ */ jsx(\"div\", {\n\t\tclassName: clsx(\"univer-flex univer-gap-2\", { \"univer-flex-col\": direction === \"vertical\" }, className),\n\t\tstyle,\n\t\tchildren: Children.map(children, (child, index) => {\n\t\t\tif (isValidElement(child)) return cloneElement(child, {\n\t\t\t\tkey: index,\n\t\t\t\tchildren: child.props.children,\n\t\t\t\tchecked: child.props.value ? value.includes(child.props.value) : false,\n\t\t\t\tdisabled: disabled !== null && disabled !== void 0 ? disabled : child.props.disabled,\n\t\t\t\tonChange: handleChange\n\t\t\t});\n\t\t\treturn child;\n\t\t})\n\t});\n}\n\n//#endregion\n//#region src/components/checkbox/Checkbox.tsx\n/**\n* Checkbox Component\n*/\nfunction Checkbox(props) {\n\tconst { children, className, style, checked = false, indeterminate = false, value, disabled = false, onChange, contentClassName } = props;\n\tconst inputRef = useRef(null);\n\tfunction handleChange(e) {\n\t\te.stopPropagation();\n\t\tif (!onChange || disabled) return;\n\t\tif (typeof value !== \"undefined\") onChange === null || onChange === void 0 || onChange(value);\n\t\telse {\n\t\t\tvar _inputRef$current$che, _inputRef$current;\n\t\t\tconst checked = (_inputRef$current$che = inputRef === null || inputRef === void 0 || (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : _inputRef$current.checked) !== null && _inputRef$current$che !== void 0 ? _inputRef$current$che : false;\n\t\t\tonChange === null || onChange === void 0 || onChange(checked);\n\t\t}\n\t}\n\treturn /* @__PURE__ */ jsxs(\"label\", {\n\t\t\"data-u-comp\": \"checkbox\",\n\t\tclassName: clsx(\"univer-box-border univer-inline-flex univer-items-center univer-gap-2 univer-text-sm\", {\n\t\t\t\"univer-cursor-pointer univer-text-gray-900 dark:!univer-text-white\": !disabled,\n\t\t\t\"univer-text-gray-400\": disabled\n\t\t}, className),\n\t\tstyle,\n\t\tchildren: [/* @__PURE__ */ jsxs(\"span\", {\n\t\t\tclassName: \"univer-relative univer-block\",\n\t\t\tchildren: [/* @__PURE__ */ jsx(\"input\", {\n\t\t\t\tref: inputRef,\n\t\t\t\tclassName: \"univer-absolute univer-size-0 univer-opacity-0\",\n\t\t\t\ttype: \"checkbox\",\n\t\t\t\tchecked,\n\t\t\t\tdisabled,\n\t\t\t\tonChange: handleChange\n\t\t\t}), /* @__PURE__ */ jsxs(\"span\", {\n\t\t\t\tclassName: clsx(\"univer-relative univer-box-border univer-flex univer-size-4 univer-items-center univer-justify-center univer-overflow-hidden univer-rounded univer-border univer-border-solid univer-transition-colors\", {\n\t\t\t\t\t\"univer-opacity-50\": disabled,\n\t\t\t\t\t\"univer-border-primary-600 univer-bg-primary-600\": checked || indeterminate,\n\t\t\t\t\t\"univer-border-gray-300 univer-bg-gray-50 dark:!univer-border-gray-500 dark:!univer-bg-gray-600\": !checked && !indeterminate\n\t\t\t\t}),\n\t\t\t\tchildren: [checked && /* @__PURE__ */ jsx(CheckMarkIcon, { className: \"univer-absolute univer-left-1/2 univer-top-1/2 univer-block univer-size-3 -univer-translate-x-1/2 -univer-translate-y-1/2 univer-text-white\" }), indeterminate && !checked && /* @__PURE__ */ jsx(\"span\", { className: \"univer-absolute univer-left-1/2 univer-top-1/2 univer-block univer-h-0.5 univer-w-2.5 -univer-translate-x-1/2 -univer-translate-y-1/2 univer-rounded univer-bg-white\" })]\n\t\t\t})]\n\t\t}), /* @__PURE__ */ jsx(\"span\", {\n\t\t\tclassName: clsx(\"univer-select-none\", contentClassName),\n\t\t\tchildren\n\t\t})]\n\t});\n}\n\n//#endregion\n//#region src/components/dialog/DialogPrimitive.tsx\nconst Dialog$1 = Root;\nconst DialogPortal = Portal;\nconst DialogOverlay = forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(Overlay, {\n\tref,\n\tclassName: clsx(\"data-[state=open]:univer-animate-in data-[state=open]:univer-fade-in-0 data-[state=closed]:univer-animate-out data-[state=closed]:univer-fade-out-0 univer-fixed univer-inset-0 univer-z-[1080] univer-bg-[rgba(0,0,0,0.8)]\", className),\n\t...props\n}));\nDialogOverlay.displayName = Overlay.displayName;\nconst DialogContent = forwardRef(({ className, children, closable = true, onClickClose, ...props }, ref) => /* @__PURE__ */ jsxs(DialogPortal, { children: [/* @__PURE__ */ jsx(DialogOverlay, {}), /* @__PURE__ */ jsxs(Content, {\n\tref,\n\tclassName: clsx(\"data-[state=open]:univer-animate-in data-[state=open]:univer-fade-in-0 data-[state=open]:univer-zoom-in-95 data-[state=open]:univer-slide-in-from-left-1/2 data-[state=open]:univer-slide-in-from-top-[48%] data-[state=closed]:univer-animate-out data-[state=closed]:univer-fade-out-0 data-[state=closed]:univer-zoom-out-95 data-[state=closed]:univer-slide-out-to-left-1/2 data-[state=closed]:univer-slide-out-to-top-[48%] univer-fixed univer-left-1/2 univer-top-1/2 univer-z-[1080] univer-box-border univer-grid univer-w-full univer-max-w-lg -univer-translate-x-1/2 -univer-translate-y-1/2 univer-gap-4 univer-bg-white univer-p-4 univer-text-gray-500 univer-shadow-md univer-duration-200 sm:!univer-rounded-lg dark:!univer-bg-gray-700 dark:!univer-text-gray-400\", borderClassName, className),\n\t...props,\n\tchildren: [children, closable && /* @__PURE__ */ jsxs(Close, {\n\t\tclassName: \"univer-absolute univer-right-4 univer-top-4 univer-size-6 univer-cursor-pointer univer-rounded-sm univer-border-none univer-bg-transparent univer-p-0 univer-transition-opacity hover:univer-opacity-100 disabled:univer-pointer-events-none\",\n\t\tonClick: onClickClose,\n\t\tchildren: [/* @__PURE__ */ jsx(CloseIcon, { className: \"univer-size-4 univer-text-gray-400\" }), /* @__PURE__ */ jsx(\"span\", {\n\t\t\tclassName: \"univer-sr-only\",\n\t\t\tchildren: \"Close\"\n\t\t})]\n\t})]\n})] }));\nDialogContent.displayName = Content.displayName;\nconst DialogHeader = ({ className, ...props }) => /* @__PURE__ */ jsx(\"div\", {\n\tclassName: clsx(\"univer-flex univer-flex-col univer-space-y-1.5 univer-text-center sm:!univer-text-left\", className),\n\t...props\n});\nDialogHeader.displayName = \"DialogHeader\";\nconst DialogFooter = ({ className, ...props }) => /* @__PURE__ */ jsx(\"div\", {\n\tclassName: clsx(\"univer-flex univer-flex-col-reverse sm:!univer-flex-row sm:!univer-justify-end sm:!univer-space-x-2\", className),\n\t...props\n});\nDialogFooter.displayName = \"DialogFooter\";\nconst DialogTitle = forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(Title, {\n\tref,\n\tclassName: clsx(\"univer-my-0 univer-text-lg univer-font-semibold univer-leading-none univer-tracking-tight univer-text-gray-900 dark:!univer-text-white\", className),\n\t...props\n}));\nDialogTitle.displayName = Title.displayName;\nconst DialogDescription = forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(Description, {\n\tref,\n\tclassName: clsx(\"univer-text-sm univer-text-gray-500\", className),\n\t...props\n}));\nDialogDescription.displayName = Description.displayName;\n\n//#endregion\n//#region src/components/dialog/Dialog.tsx\nfunction useDraggable(options = {}) {\n\tconst getCenteredPosition = useCallback(() => {\n\t\tconst { innerWidth, innerHeight } = window;\n\t\treturn {\n\t\t\tx: Math.max(0, (innerWidth - 0) / 2),\n\t\t\ty: Math.max(0, (innerHeight - 0) / 2)\n\t\t};\n\t}, []);\n\tconst { defaultPosition = getCenteredPosition(), enabled = false } = options;\n\tconst [position, setPosition] = useState(defaultPosition);\n\tconst [isDragging, setIsDragging] = useState(false);\n\tconst elementRef = useRef(null);\n\tconst startPosRef = useRef({\n\t\tx: 0,\n\t\ty: 0\n\t});\n\tconst startClientRef = useRef({\n\t\tx: 0,\n\t\ty: 0\n\t});\n\tconst initializedRef = useRef(false);\n\tuseEffect(() => {\n\t\tif (!elementRef.current || initializedRef.current || options.defaultPosition) return;\n\t\tconst { width, height } = elementRef.current.getBoundingClientRect();\n\t\tconst { innerWidth, innerHeight } = window;\n\t\tconst centeredX = Math.max(0, (innerWidth - width) / 2);\n\t\tconst centeredY = Math.max(0, (innerHeight - height) / 2);\n\t\tsetPosition({\n\t\t\tx: centeredX,\n\t\t\ty: centeredY\n\t\t});\n\t\tstartPosRef.current = {\n\t\t\tx: centeredX,\n\t\t\ty: centeredY\n\t\t};\n\t\tinitializedRef.current = true;\n\t}, [options.defaultPosition]);\n\tconst calculateBounds = useCallback((clientX, clientY) => {\n\t\tif (!elementRef.current) return {\n\t\t\tx: clientX,\n\t\t\ty: clientY\n\t\t};\n\t\tconst rect = elementRef.current.getBoundingClientRect();\n\t\tconst { clientWidth, clientHeight } = document.documentElement;\n\t\tlet newX = startPosRef.current.x + (clientX - startClientRef.current.x);\n\t\tlet newY = startPosRef.current.y + (clientY - startClientRef.current.y);\n\t\tif (newX < 0) newX = 0;\n\t\tif (newY < 0) newY = 0;\n\t\tif (newX + rect.width > clientWidth) newX = clientWidth - rect.width;\n\t\tif (newY + rect.height > clientHeight) newY = clientHeight - rect.height;\n\t\treturn {\n\t\t\tx: newX,\n\t\t\ty: newY\n\t\t};\n\t}, []);\n\tconst startDrag = useCallback((e) => {\n\t\tif (!enabled) return;\n\t\te.preventDefault();\n\t\te.stopPropagation();\n\t\tstartPosRef.current = { ...position };\n\t\tstartClientRef.current = {\n\t\t\tx: e.clientX,\n\t\t\ty: e.clientY\n\t\t};\n\t\tsetIsDragging(true);\n\t\tdocument.body.style.userSelect = \"none\";\n\t}, [enabled, position]);\n\tconst onDrag = useCallback((e) => {\n\t\tif (!isDragging) return;\n\t\te.preventDefault();\n\t\te.stopPropagation();\n\t\tsetPosition(calculateBounds(e.clientX, e.clientY));\n\t}, [isDragging, calculateBounds]);\n\tconst endDrag = useCallback(() => {\n\t\tsetIsDragging(false);\n\t\tdocument.body.style.userSelect = \"\";\n\t}, []);\n\tuseEffect(() => {\n\t\tif (enabled) {\n\t\t\tdocument.addEventListener(\"mousemove\", onDrag);\n\t\t\tdocument.addEventListener(\"mouseup\", endDrag);\n\t\t\treturn () => {\n\t\t\t\tdocument.removeEventListener(\"mousemove\", onDrag);\n\t\t\t\tdocument.removeEventListener(\"mouseup\", endDrag);\n\t\t\t};\n\t\t}\n\t}, [\n\t\tenabled,\n\t\tonDrag,\n\t\tendDrag\n\t]);\n\treturn {\n\t\tposition,\n\t\tisDragging,\n\t\telementRef,\n\t\tsetElementRef: (el) => {\n\t\t\telementRef.current = el;\n\t\t\tif (el && !initializedRef.current && !options.defaultPosition) {\n\t\t\t\tconst { width, height } = el.getBoundingClientRect();\n\t\t\t\tconst { innerWidth, innerHeight } = window;\n\t\t\t\tconst centeredX = Math.max(0, (innerWidth - width) / 2);\n\t\t\t\tconst centeredY = Math.max(0, (innerHeight - height) / 2);\n\t\t\t\tsetPosition({\n\t\t\t\t\tx: centeredX,\n\t\t\t\t\ty: centeredY\n\t\t\t\t});\n\t\t\t\tstartPosRef.current = {\n\t\t\t\t\tx: centeredX,\n\t\t\t\t\ty: centeredY\n\t\t\t\t};\n\t\t\t\tinitializedRef.current = true;\n\t\t\t}\n\t\t},\n\t\thandleMouseDown: startDrag\n\t};\n}\nfunction Dialog(props) {\n\tvar _locale$Confirm$cance, _locale$Confirm, _locale$Confirm$confi, _locale$Confirm2;\n\tconst { className, children, style, open = false, title, width, draggable = false, defaultPosition, footer: propFooter, mask = true, keyboard = true, closable = true, maskClosable = true, showOk, showCancel, onOpenChange, onClose, onOk, onCancel } = props;\n\tconst { locale } = useContext(ConfigContext);\n\tconst { position, isDragging, setElementRef, handleMouseDown } = useDraggable({\n\t\tdefaultPosition,\n\t\tenabled: draggable\n\t});\n\tconst footer = propFooter !== null && propFooter !== void 0 ? propFooter : showOk || showCancel ? /* @__PURE__ */ jsxs(\"div\", {\n\t\tclassName: \"univer-flex univer-justify-end univer-gap-2\",\n\t\tchildren: [showCancel && /* @__PURE__ */ jsx(Button, {\n\t\t\tonClick: onCancel,\n\t\t\tchildren: (_locale$Confirm$cance = locale === null || locale === void 0 || (_locale$Confirm = locale.Confirm) === null || _locale$Confirm === void 0 ? void 0 : _locale$Confirm.cancel) !== null && _locale$Confirm$cance !== void 0 ? _locale$Confirm$cance : \"Cancel\"\n\t\t}), showOk && /* @__PURE__ */ jsx(Button, {\n\t\t\tvariant: \"primary\",\n\t\t\tonClick: onOk,\n\t\t\tchildren: (_locale$Confirm$confi = locale === null || locale === void 0 || (_locale$Confirm2 = locale.Confirm) === null || _locale$Confirm2 === void 0 ? void 0 : _locale$Confirm2.confirm) !== null && _locale$Confirm$confi !== void 0 ? _locale$Confirm$confi : \"OK\"\n\t\t})]\n\t}) : null;\n\tconst handleContentRef = useCallback((node) => {\n\t\tif (node && draggable) setElementRef(node);\n\t}, [draggable, setElementRef]);\n\tconst handleOpenChange = useCallback((isOpen) => {\n\t\tif (!mask && !isOpen) return;\n\t\tonOpenChange === null || onOpenChange === void 0 || onOpenChange(isOpen);\n\t\tif (!isOpen) onClose === null || onClose === void 0 || onClose();\n\t}, [onClose, onOpenChange]);\n\tfunction handleClickClose() {\n\t\tonOpenChange === null || onOpenChange === void 0 || onOpenChange(false);\n\t\tonClose === null || onClose === void 0 || onClose();\n\t}\n\treturn /* @__PURE__ */ jsx(Dialog$1, {\n\t\topen,\n\t\tonOpenChange: handleOpenChange,\n\t\tmodal: mask !== false,\n\t\tchildren: /* @__PURE__ */ jsxs(DialogContent, {\n\t\t\tref: handleContentRef,\n\t\t\tclassName: clsx(className, { \"!univer-animate-none\": draggable }),\n\t\t\tstyle: {\n\t\t\t\t...style,\n\t\t\t\twidth: width ? typeof width === \"number\" ? `${width}px` : width : void 0,\n\t\t\t\tmaxWidth: width ? \"initial\" : void 0,\n\t\t\t\t...draggable ? {\n\t\t\t\t\tposition: \"absolute\",\n\t\t\t\t\tmargin: 0,\n\t\t\t\t\tleft: 0,\n\t\t\t\t\ttop: 0,\n\t\t\t\t\ttransform: `translate(${position.x}px, ${position.y}px)`,\n\t\t\t\t\ttransition: isDragging ? \"none\" : void 0,\n\t\t\t\t\tcursor: isDragging ? \"grabbing\" : void 0\n\t\t\t\t} : {}\n\t\t\t},\n\t\t\tclosable,\n\t\t\tonClickClose: handleClickClose,\n\t\t\tonEscapeKeyDown: (e) => {\n\t\t\t\tif (keyboard) handleClickClose();\n\t\t\t\te.preventDefault();\n\t\t\t},\n\t\t\tonPointerDownOutside: (e) => {\n\t\t\t\tif (maskClosable) handleClickClose();\n\t\t\t\te.preventDefault();\n\t\t\t},\n\t\t\tchildren: [\n\t\t\t\t/* @__PURE__ */ jsxs(DialogHeader, {\n\t\t\t\t\tclassName: clsx({ \"!univer-hidden\": !title }),\n\t\t\t\t\t\"data-drag-handle\": draggable ? \"true\" : void 0,\n\t\t\t\t\tstyle: {\n\t\t\t\t\t\tcursor: draggable ? \"grab\" : void 0,\n\t\t\t\t\t\tuserSelect: draggable ? \"none\" : void 0,\n\t\t\t\t\t\ttouchAction: draggable ? \"none\" : void 0\n\t\t\t\t\t},\n\t\t\t\t\tonMouseDown: draggable ? handleMouseDown : void 0,\n\t\t\t\t\tchildren: [/* @__PURE__ */ jsx(DialogTitle, { children: title }), /* @__PURE__ */ jsx(DialogDescription, { className: \"univer-hidden\" })]\n\t\t\t\t}),\n\t\t\t\tchildren,\n\t\t\t\tfooter && /* @__PURE__ */ jsx(DialogFooter, { children: footer })\n\t\t\t]\n\t\t})\n\t});\n}\n\n//#endregion\n//#region src/components/color-picker/color-conversion.ts\n/**\n* Copyright 2023-present DreamNum Co., Ltd.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n*     http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\nconst hsvToRgb = (h, s, v) => {\n\th = h % 360;\n\ts = s / 100;\n\tv = v / 100;\n\tconst c = v * s;\n\tconst x = c * (1 - Math.abs(h / 60 % 2 - 1));\n\tconst m = v - c;\n\tlet r = 0;\n\tlet g = 0;\n\tlet b = 0;\n\tif (h >= 0 && h < 60) {\n\t\tr = c;\n\t\tg = x;\n\t\tb = 0;\n\t} else if (h >= 60 && h < 120) {\n\t\tr = x;\n\t\tg = c;\n\t\tb = 0;\n\t} else if (h >= 120 && h < 180) {\n\t\tr = 0;\n\t\tg = c;\n\t\tb = x;\n\t} else if (h >= 180 && h < 240) {\n\t\tr = 0;\n\t\tg = x;\n\t\tb = c;\n\t} else if (h >= 240 && h < 300) {\n\t\tr = x;\n\t\tg = 0;\n\t\tb = c;\n\t} else if (h >= 300 && h < 360) {\n\t\tr = c;\n\t\tg = 0;\n\t\tb = x;\n\t}\n\treturn [\n\t\tMath.round((r + m) * 255),\n\t\tMath.round((g + m) * 255),\n\t\tMath.round((b + m) * 255)\n\t];\n};\nconst rgbToHex = (r, g, b) => {\n\tconst toHex = (n) => n.toString(16).padStart(2, \"0\");\n\treturn `#${toHex(r)}${toHex(g)}${toHex(b)}`;\n};\nconst rgbToHsv = (r, g, b) => {\n\tr /= 255;\n\tg /= 255;\n\tb /= 255;\n\tconst max = Math.max(r, g, b);\n\tconst d = max - Math.min(r, g, b);\n\tlet h = 0;\n\tlet s = 0;\n\tconst v = max;\n\tif (max !== 0) s = d / max;\n\tif (d !== 0) {\n\t\tif (max === r) h = (g - b) / d + (g < b ? 6 : 0);\n\t\telse if (max === g) h = (b - r) / d + 2;\n\t\telse if (max === b) h = (r - g) / d + 4;\n\t\th *= 60;\n\t}\n\treturn [\n\t\th,\n\t\ts * 100,\n\t\tv * 100\n\t];\n};\nconst hexToHsv = (hex) => {\n\tif (hex.length === 4) hex = `#${hex.slice(1).split(\"\").map((i) => i + i).join(\"\")}`;\n\tconst [r, g, b] = hex.match(/\\w\\w/g).map((x) => Number.parseInt(x, 16));\n\treturn rgbToHsv(r, g, b);\n};\nconst hsvToHex = (h, s, v) => {\n\tconst [r, g, b] = hsvToRgb(h, s, v);\n\treturn rgbToHex(r, g, b);\n};\nconst hsvToRgba = (h, s, v, a) => {\n\tconst [r, g, b] = hsvToRgb(h, s, v);\n\treturn `rgba(${r}, ${g}, ${b}, ${a})`;\n};\nconst parseRgba = (rgba) => {\n\tconst match = rgba.match(/rgba?\\((\\d+),\\s*(\\d+),\\s*(\\d+)(?:,\\s*(\\d*\\.?\\d+))?\\)/);\n\tif (!match) throw new Error(\"Invalid RGBA string\");\n\treturn [\n\t\tNumber.parseInt(match[1], 10),\n\t\tNumber.parseInt(match[2], 10),\n\t\tNumber.parseInt(match[3], 10),\n\t\tmatch[4] ? Number.parseFloat(match[4]) : 1\n\t];\n};\n\n//#endregion\n//#region src/components/color-picker/AlphaSlider.tsx\n/**\n* Copyright 2023-present DreamNum Co., Ltd.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n*     http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\nfunction AlphaSlider({ hsv, alpha, onChange, onChanged }) {\n\tconst [isDragging, setIsDragging] = useState(false);\n\tconst sliderRef = useRef(null);\n\tconst thumbRef = useRef(null);\n\tconst alphaRef = useRef(alpha);\n\tconst calculateAlpha = useCallback((clientX) => {\n\t\tvar _thumbRef$current$cli, _thumbRef$current;\n\t\tconst slider = sliderRef.current;\n\t\tif (!slider) return;\n\t\tconst thumbSize = (_thumbRef$current$cli = (_thumbRef$current = thumbRef.current) === null || _thumbRef$current === void 0 ? void 0 : _thumbRef$current.clientWidth) !== null && _thumbRef$current$cli !== void 0 ? _thumbRef$current$cli : 0;\n\t\tconst rect = slider.getBoundingClientRect();\n\t\tconst maxX = rect.width - thumbSize;\n\t\tif (maxX <= 0) {\n\t\t\tonChange(0);\n\t\t\treturn;\n\t\t}\n\t\tconst x = Math.max(0, Math.min(clientX - rect.left, maxX));\n\t\tonChange(Math.round(x / maxX * 100) / 100);\n\t}, [onChange]);\n\tconst handlePointerMove = useCallback((e) => {\n\t\tif (!isDragging) return;\n\t\tcalculateAlpha(e.clientX);\n\t}, [isDragging, calculateAlpha]);\n\tuseEffect(() => {\n\t\talphaRef.current = alpha;\n\t}, [alpha]);\n\tconst handlePointerUp = useCallback(() => {\n\t\tsetIsDragging(false);\n\t\tonChanged === null || onChanged === void 0 || onChanged(alphaRef.current);\n\t}, [onChanged]);\n\tuseEffect(() => {\n\t\tif (isDragging) {\n\t\t\twindow.addEventListener(\"pointermove\", handlePointerMove);\n\t\t\twindow.addEventListener(\"pointerup\", handlePointerUp);\n\t\t\twindow.addEventListener(\"mouseup\", handlePointerUp);\n\t\t}\n\t\treturn () => {\n\t\t\twindow.removeEventListener(\"pointermove\", handlePointerMove);\n\t\t\twindow.removeEventListener(\"pointerup\", handlePointerUp);\n\t\t\twindow.removeEventListener(\"mouseup\", handlePointerUp);\n\t\t};\n\t}, [\n\t\tisDragging,\n\t\thandlePointerMove,\n\t\thandlePointerUp\n\t]);\n\tconst getThumbPosition = () => {\n\t\tvar _thumbRef$current$cli2, _thumbRef$current2, _sliderRef$current$cl, _sliderRef$current;\n\t\tconst safeAlpha = Math.min(Math.max(alpha * 100, 0), 100);\n\t\tconst thumbSize = (_thumbRef$current$cli2 = (_thumbRef$current2 = thumbRef.current) === null || _thumbRef$current2 === void 0 ? void 0 : _thumbRef$current2.clientWidth) !== null && _thumbRef$current$cli2 !== void 0 ? _thumbRef$current$cli2 : 0;\n\t\tconst sliderWidth = (_sliderRef$current$cl = (_sliderRef$current = sliderRef.current) === null || _sliderRef$current === void 0 ? void 0 : _sliderRef$current.clientWidth) !== null && _sliderRef$current$cl !== void 0 ? _sliderRef$current$cl : 0;\n\t\tconst thumbOffsetPercent = sliderWidth > 0 ? thumbSize / sliderWidth * 100 : 0;\n\t\treturn `${safeAlpha / 100 * (100 - thumbOffsetPercent)}%`;\n\t};\n\tconst color = hsvToRgb(...hsv);\n\treturn /* @__PURE__ */ jsxs(\"div\", {\n\t\t\"data-u-comp\": \"color-picker-alpha-slider\",\n\t\tclassName: \"univer-relative univer-w-full univer-select-none\",\n\t\tchildren: [/* @__PURE__ */ jsx(\"div\", {\n\t\t\tclassName: \"univer-absolute univer-inset-0 univer-rounded-full\",\n\t\t\tstyle: {\n\t\t\t\tbackgroundImage: \"linear-gradient(45deg, #E3E5EA 25%, transparent 25%), linear-gradient(-45deg, #E3E5EA 25%, transparent 25%), linear-gradient(45deg, transparent 75%, #E3E5EA 75%), linear-gradient(-45deg, transparent 75%, #E3E5EA 75%)\",\n\t\t\t\tbackgroundPosition: \"0 0, 0 4px, 4px -4px, -4px 0\",\n\t\t\t\tbackgroundSize: \"8px 8px\"\n\t\t\t}\n\t\t}), /* @__PURE__ */ jsx(\"div\", {\n\t\t\tref: sliderRef,\n\t\t\t\"data-u-comp\": \"color-picker-alpha-slider-track\",\n\t\t\tclassName: \"univer-relative univer-h-2 univer-w-full univer-cursor-pointer univer-rounded-full univer-shadow-inner\",\n\t\t\tstyle: { background: `linear-gradient(to right, transparent, rgb(${color.join(\",\")}))` },\n\t\t\tonPointerDown: (e) => {\n\t\t\t\tsetIsDragging(true);\n\t\t\t\tcalculateAlpha(e.clientX);\n\t\t\t},\n\t\t\tchildren: /* @__PURE__ */ jsx(\"div\", {\n\t\t\t\tref: thumbRef,\n\t\t\t\t\"data-u-comp\": \"color-picker-alpha-slider-thumb\",\n\t\t\t\tclassName: \"univer-absolute univer-top-1/2 univer-box-border univer-size-2 univer-rounded-full univer-bg-transparent univer-shadow-md univer-ring-2 univer-ring-white univer-transition-transform univer-duration-75 univer-will-change-transform\",\n\t\t\t\tstyle: {\n\t\t\t\t\tleft: getThumbPosition(),\n\t\t\t\t\ttransform: \"translateY(-50%)\",\n\t\t\t\t\ttransition: isDragging ? \"none\" : \"all 0.1s ease-out\"\n\t\t\t\t}\n\t\t\t})\n\t\t})]\n\t});\n}\n\n//#endregion\n//#region src/components/color-picker/ColorInput.tsx\nfunction HexInput({ hsv, onChange }) {\n\tconst [inputValue, setInputValue] = useState(\"\");\n\tconst hexValue = useMemo(() => hsvToHex(hsv[0], hsv[1], hsv[2]), [hsv]);\n\tuseEffect(() => {\n\t\tsetInputValue(hexValue.replace(/^#/, \"\"));\n\t}, [hexValue]);\n\tconst isValidHex = (hex) => {\n\t\treturn /^[0-9A-Fa-f]{6}$/.test(hex);\n\t};\n\tconst handleChange = (e) => {\n\t\tconst newValue = e.target.value.trim();\n\t\tif (newValue.length > 6) return;\n\t\tif (newValue !== \"\" && !/^[0-9A-Fa-f]*$/.test(newValue)) return;\n\t\tsetInputValue(newValue);\n\t\tif (isValidHex(newValue)) {\n\t\t\tconst hsvValue = hexToHsv(newValue);\n\t\t\tif (hsvValue && onChange) onChange(...hsvValue);\n\t\t}\n\t};\n\tconst handleBlur = () => {\n\t\tif (!isValidHex(inputValue)) setInputValue(hexValue.replace(/^#/, \"\"));\n\t};\n\treturn /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx(\"input\", {\n\t\tclassName: clsx(\"univer-w-full univer-px-2 !univer-pl-4 univer-uppercase focus:univer-border-primary-500 focus:univer-outline-none dark:!univer-text-white\", borderClassName),\n\t\tvalue: inputValue,\n\t\tonChange: handleChange,\n\t\tonBlur: handleBlur,\n\t\tmaxLength: 6,\n\t\tspellCheck: false\n\t}), /* @__PURE__ */ jsx(\"span\", {\n\t\tclassName: \"univer-absolute univer-left-1.5 univer-top-1/2 -univer-translate-y-1/2 univer-text-sm univer-text-gray-400\",\n\t\tchildren: \"#\"\n\t})] });\n}\nfunction RgbInput({ hsv, alpha, format, onChange }) {\n\tconst [localValues, setLocalValues] = useState({\n\t\tr: 0,\n\t\tg: 0,\n\t\tb: 0,\n\t\ta: 1\n\t});\n\tuseEffect(() => {\n\t\tconst [r, g, b] = hsvToRgb(hsv[0], hsv[1], hsv[2]);\n\t\tsetLocalValues({\n\t\t\tr: Math.round(r),\n\t\t\tg: Math.round(g),\n\t\t\tb: Math.round(b),\n\t\t\ta: alpha !== null && alpha !== void 0 ? alpha : 1\n\t\t});\n\t}, [hsv, alpha]);\n\tconst handleChange = (color, value) => {\n\t\tif (color === \"a\") {\n\t\t\tif (value !== \"\" && !/^\\d*\\.?\\d*$/.test(value)) return;\n\t\t\tconst numValue = value === \"\" ? 0 : Number.parseFloat(value);\n\t\t\tif (numValue > 1) return;\n\t\t\tsetLocalValues({\n\t\t\t\t...localValues,\n\t\t\t\ta: numValue\n\t\t\t});\n\t\t\tif (onChange) onChange(hsv[0], hsv[1], hsv[2], numValue);\n\t\t\treturn;\n\t\t}\n\t\tif (value !== \"\" && !/^\\d*$/.test(value)) return;\n\t\tconst numValue = value === \"\" ? 0 : Number.parseInt(value, 10);\n\t\tif (numValue > 255) return;\n\t\tconst newValues = {\n\t\t\t...localValues,\n\t\t\t[color]: numValue\n\t\t};\n\t\tsetLocalValues(newValues);\n\t\tif (onChange) onChange(...rgbToHsv(newValues.r, newValues.g, newValues.b), localValues.a);\n\t};\n\tconst handleBlur = () => {\n\t\tconst [r, g, b] = hsvToRgb(hsv[0], hsv[1], hsv[2]);\n\t\tsetLocalValues({\n\t\t\tr: Math.round(r),\n\t\t\tg: Math.round(g),\n\t\t\tb: Math.round(b),\n\t\t\ta: alpha !== null && alpha !== void 0 ? alpha : 1\n\t\t});\n\t};\n\treturn /* @__PURE__ */ jsxs(\"div\", {\n\t\tclassName: \"univer-flex univer-items-center univer-gap-2 [&>input]:univer-w-11 [&>input]:univer-border-gray-200 [&>input]:focus:univer-border-primary-500 dark:[&>input]:!univer-border-gray-600 dark:[&>input]:!univer-text-white\",\n\t\tchildren: [\n\t\t\t/* @__PURE__ */ jsx(\"input\", {\n\t\t\t\tvalue: localValues.r,\n\t\t\t\tonChange: (e) => handleChange(\"r\", e.target.value),\n\t\t\t\tonBlur: handleBlur,\n\t\t\t\tmaxLength: 3\n\t\t\t}),\n\t\t\t/* @__PURE__ */ jsx(\"input\", {\n\t\t\t\tvalue: localValues.g,\n\t\t\t\tonChange: (e) => handleChange(\"g\", e.target.value),\n\t\t\t\tonBlur: handleBlur,\n\t\t\t\tmaxLength: 3\n\t\t\t}),\n\t\t\t/* @__PURE__ */ jsx(\"input\", {\n\t\t\t\tvalue: localValues.b,\n\t\t\t\tonChange: (e) => handleChange(\"b\", e.target.value),\n\t\t\t\tonBlur: handleBlur,\n\t\t\t\tmaxLength: 3\n\t\t\t}),\n\t\t\tformat === \"rgba\" && /* @__PURE__ */ jsx(\"input\", {\n\t\t\t\tvalue: localValues.a,\n\t\t\t\tonChange: (e) => handleChange(\"a\", e.target.value),\n\t\t\t\tonBlur: handleBlur,\n\t\t\t\tmaxLength: 4\n\t\t\t})\n\t\t]\n\t});\n}\nfunction ColorInput({ hsv, alpha, format, onChange }) {\n\treturn /* @__PURE__ */ jsx(\"div\", {\n\t\tclassName: \"dark:![&_input]:univer-border-gray-600 dark:![&_input]:univer-text-white univer-flex univer-gap-2 [&_input]:univer-box-border [&_input]:univer-flex [&_input]:univer-h-7 [&_input]:univer-items-center [&_input]:univer-rounded [&_input]:univer-border [&_input]:univer-border-solid [&_input]:univer-border-gray-200 [&_input]:univer-bg-transparent [&_input]:univer-px-1.5 [&_input]:univer-text-sm [&_input]:univer-text-gray-700 [&_input]:univer-outline-none\",\n\t\tchildren: /* @__PURE__ */ jsxs(\"div\", {\n\t\t\tclassName: \"univer-relative univer-flex univer-flex-1 univer-gap-2\",\n\t\t\tchildren: [/* @__PURE__ */ jsx(HexInput, {\n\t\t\t\thsv,\n\t\t\t\tonChange\n\t\t\t}), /* @__PURE__ */ jsx(RgbInput, {\n\t\t\t\thsv,\n\t\t\t\talpha,\n\t\t\t\tformat,\n\t\t\t\tonChange\n\t\t\t})]\n\t\t})\n\t});\n}\n\n//#endregion\n//#region src/components/color-picker/presets.ts\n/**\n* Copyright 2023-present DreamNum Co., Ltd.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n*     http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\nconst colorPresets = [\n\t[\n\t\t\"#FFFFFF\",\n\t\t\"#E1EFFE\",\n\t\t\"#FDE8E8\",\n\t\t\"#FEECDC\",\n\t\t\"#FFF4B9\",\n\t\t\"#DEF7EC\",\n\t\t\"#D5F5F6\",\n\t\t\"#EDEBFE\",\n\t\t\"#FCE8F3\"\n\t],\n\t[\n\t\t\"#CDD0D8\",\n\t\t\"#A4CAFE\",\n\t\t\"#F8B4B4\",\n\t\t\"#FDBA8C\",\n\t\t\"#FAC815\",\n\t\t\"#84E1BC\",\n\t\t\"#7EDCE2\",\n\t\t\"#CABFFD\",\n\t\t\"#F8B4D9\"\n\t],\n\t[\n\t\t\"#979DAC\",\n\t\t\"#3F83F8\",\n\t\t\"#F05252\",\n\t\t\"#FF5A1F\",\n\t\t\"#D49D0F\",\n\t\t\"#0DA471\",\n\t\t\"#0694A2\",\n\t\t\"#9061F9\",\n\t\t\"#E74694\"\n\t],\n\t[\n\t\t\"#414657\",\n\t\t\"#1A56DB\",\n\t\t\"#C81E1E\",\n\t\t\"#B43403\",\n\t\t\"#9A6D15\",\n\t\t\"#046C4E\",\n\t\t\"#036672\",\n\t\t\"#6C2BD9\",\n\t\t\"#BF125D\"\n\t],\n\t[\n\t\t\"#000000\",\n\t\t\"#233876\",\n\t\t\"#771D1D\",\n\t\t\"#8A2C0D\",\n\t\t\"#634312\",\n\t\t\"#014737\",\n\t\t\"#014451\",\n\t\t\"#4A1D96\",\n\t\t\"#751A3D\"\n\t]\n];\n\n//#endregion\n//#region src/components/color-picker/ColorPresets.tsx\n/**\n* Copyright 2023-present DreamNum Co., Ltd.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n*     http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\nfunction ColorPresets({ hsv, onChange }) {\n\tconst handleSelectPreset = useCallback((color) => {\n\t\tconst [h, s, v] = hexToHsv(color);\n\t\tonChange(h, s, v);\n\t}, [onChange]);\n\tconst currentColor = hsvToHex(hsv[0], hsv[1], hsv[2]);\n\treturn /* @__PURE__ */ jsx(\"div\", {\n\t\t\"data-u-comp\": \"color-picker-presets\",\n\t\tclassName: \"univer-grid univer-content-center univer-gap-2\",\n\t\tchildren: colorPresets.map((row, i) => /* @__PURE__ */ jsx(\"div\", {\n\t\t\tclassName: \"univer-grid univer-grid-flow-col univer-items-center univer-justify-between univer-gap-2\",\n\t\t\tchildren: row.map((color, j) => /* @__PURE__ */ jsx(\"button\", {\n\t\t\t\ttype: \"button\",\n\t\t\t\tclassName: clsx(\"univer-box-border univer-size-5 univer-cursor-pointer univer-rounded-full univer-border univer-border-solid univer-border-transparent univer-bg-gray-300 univer-transition-shadow\", {\n\t\t\t\t\t\"univer-ring-2 univer-ring-offset-2 univer-ring-offset-white dark:!univer-ring-primary-600 dark:!univer-ring-offset-gray-600\": color.toUpperCase() === currentColor.toUpperCase(),\n\t\t\t\t\t\"!univer-border-gray-200\": i === 0 && j === 0\n\t\t\t\t}),\n\t\t\t\tstyle: { backgroundColor: color },\n\t\t\t\tonClick: () => handleSelectPreset(color)\n\t\t\t}, j))\n\t\t}, i))\n\t});\n}\n\n//#endregion\n//#region src/components/color-picker/ColorSpectrum.tsx\nfunction ColorSpectrum({ hsv, onChange, onChanged }) {\n\tconst canvasRef = useRef(null);\n\tconst containerRef = useRef(null);\n\tconst [isDragging, setIsDragging] = useState(false);\n\tuseEffect(() => {\n\t\tconst canvas = canvasRef.current;\n\t\tif (!canvas) return;\n\t\tconst ctx = canvas.getContext(\"2d\");\n\t\tif (!ctx) return;\n\t\tconst gradientS = ctx.createLinearGradient(0, 0, canvas.width, 0);\n\t\tgradientS.addColorStop(0, `hsl(${hsv[0]}, 0%, 50%)`);\n\t\tgradientS.addColorStop(1, `hsl(${hsv[0]}, 100%, 50%)`);\n\t\tctx.fillStyle = gradientS;\n\t\tctx.fillRect(0, 0, canvas.width, canvas.height);\n\t\tconst gradientV = ctx.createLinearGradient(0, 0, 0, canvas.height);\n\t\tgradientV.addColorStop(0, \"rgba(255, 255, 255, 0)\");\n\t\tgradientV.addColorStop(1, \"rgba(0, 0, 0, 1)\");\n\t\tctx.fillStyle = gradientV;\n\t\tctx.fillRect(0, 0, canvas.width, canvas.height);\n\t}, [hsv[0]]);\n\tconst handlePointerEvent = (e) => {\n\t\te.stopPropagation();\n\t\tconst canvas = canvasRef.current;\n\t\tif (!canvas) return;\n\t\tconst rect = canvas.getBoundingClientRect();\n\t\tconst x = Math.max(0, Math.min(e.clientX - rect.left, rect.width));\n\t\tconst y = Math.max(0, Math.min(e.clientY - rect.top, rect.height));\n\t\tconst s = x / rect.width * 100;\n\t\tconst v = 100 - y / rect.height * 100;\n\t\tonChange(hsv[0], s, v);\n\t};\n\tconst handlePointerUp = useCallback(() => {\n\t\tsetIsDragging(false);\n\t}, []);\n\tfunction handleChange() {\n\t\tonChanged === null || onChanged === void 0 || onChanged(hsv[0], hsv[1], hsv[2]);\n\t}\n\tuseEffect(() => {\n\t\tvar _containerRef$current;\n\t\t(_containerRef$current = containerRef.current) === null || _containerRef$current === void 0 || _containerRef$current.addEventListener(\"mouseup\", handleChange);\n\t\twindow.addEventListener(\"pointerup\", handlePointerUp);\n\t\twindow.addEventListener(\"mouseup\", handlePointerUp);\n\t\treturn () => {\n\t\t\tvar _containerRef$current2;\n\t\t\t(_containerRef$current2 = containerRef.current) === null || _containerRef$current2 === void 0 || _containerRef$current2.removeEventListener(\"mouseup\", handleChange);\n\t\t\twindow.removeEventListener(\"pointerup\", handlePointerUp);\n\t\t\twindow.removeEventListener(\"mouseup\", handlePointerUp);\n\t\t};\n\t}, [hsv]);\n\tconst getIndicatorStyles = () => {\n\t\tvar _containerRef$current3, _containerRef$current4, _containerRef$current5, _containerRef$current6;\n\t\tconst halfIndicatorSize = 16 / 2;\n\t\tconst w = (_containerRef$current3 = (_containerRef$current4 = containerRef.current) === null || _containerRef$current4 === void 0 ? void 0 : _containerRef$current4.clientWidth) !== null && _containerRef$current3 !== void 0 ? _containerRef$current3 : 0;\n\t\tconst h = (_containerRef$current5 = (_containerRef$current6 = containerRef.current) === null || _containerRef$current6 === void 0 ? void 0 : _containerRef$current6.clientHeight) !== null && _containerRef$current5 !== void 0 ? _containerRef$current5 : 0;\n\t\treturn {\n\t\t\ttransform: `translate(${hsv[1] / 100 * w - halfIndicatorSize}px, ${(100 - hsv[2]) / 100 * h - halfIndicatorSize}px)`,\n\t\t\ttransition: isDragging ? \"none\" : \"transform 0.1s ease-out\"\n\t\t};\n\t};\n\tuseEffect(() => {\n\t\tconst handlePointerUp = () => {\n\t\t\tsetIsDragging(false);\n\t\t};\n\t\twindow.addEventListener(\"pointerup\", handlePointerUp);\n\t\twindow.addEventListener(\"mouseup\", handlePointerUp);\n\t\treturn () => {\n\t\t\twindow.removeEventListener(\"pointerup\", handlePointerUp);\n\t\t\twindow.removeEventListener(\"mouseup\", handlePointerUp);\n\t\t};\n\t}, []);\n\treturn /* @__PURE__ */ jsxs(\"div\", {\n\t\t\"data-u-comp\": \"color-picker-spectrum\",\n\t\tref: containerRef,\n\t\tclassName: \"univer-relative univer-overflow-hidden\",\n\t\tchildren: [/* @__PURE__ */ jsx(\"canvas\", {\n\t\t\tref: canvasRef,\n\t\t\t\"data-u-comp\": \"color-picker-spectrum-canvas\",\n\t\t\tclassName: \"univer-size-full univer-cursor-crosshair univer-rounded\",\n\t\t\tonPointerDown: (e) => {\n\t\t\t\tsetIsDragging(true);\n\t\t\t\thandlePointerEvent(e);\n\t\t\t},\n\t\t\tonPointerMove: (e) => isDragging && handlePointerEvent(e)\n\t\t}), /* @__PURE__ */ jsx(\"div\", {\n\t\t\tclassName: \"univer-pointer-events-none univer-absolute univer-left-0 univer-top-0 univer-size-4 univer-rounded-full univer-border-2 univer-border-white univer-shadow-md univer-ring-2 univer-ring-white univer-will-change-transform\",\n\t\t\tstyle: getIndicatorStyles()\n\t\t})]\n\t});\n}\n\n//#endregion\n//#region src/components/color-picker/HueSlider.tsx\n/**\n* Copyright 2023-present DreamNum Co., Ltd.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n*     http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\nfunction HueSlider({ hsv, onChange, onChanged }) {\n\tconst [isDragging, setIsDragging] = useState(false);\n\tconst sliderRef = useRef(null);\n\tconst thumbRef = useRef(null);\n\tconst hsvRef = useRef(hsv);\n\tconst calculateHue = useCallback((clientX) => {\n\t\tvar _thumbRef$current$cli, _thumbRef$current;\n\t\tconst slider = sliderRef.current;\n\t\tif (!slider) return;\n\t\tconst thumbSize = (_thumbRef$current$cli = (_thumbRef$current = thumbRef.current) === null || _thumbRef$current === void 0 ? void 0 : _thumbRef$current.clientWidth) !== null && _thumbRef$current$cli !== void 0 ? _thumbRef$current$cli : 0;\n\t\tconst rect = slider.getBoundingClientRect();\n\t\tconst maxX = rect.width - thumbSize;\n\t\tif (maxX <= 0) {\n\t\t\tonChange(0, hsv[1], hsv[2]);\n\t\t\treturn;\n\t\t}\n\t\tconst x = Math.max(0, Math.min(clientX - rect.left, maxX));\n\t\tonChange(Math.round(x / maxX * 360), hsv[1], hsv[2]);\n\t}, [hsv, onChange]);\n\tconst handlePointerMove = useCallback((e) => {\n\t\te.stopPropagation();\n\t\tif (!isDragging) return;\n\t\tcalculateHue(e.clientX);\n\t}, [isDragging, calculateHue]);\n\tuseEffect(() => {\n\t\thsvRef.current = hsv;\n\t}, [hsv]);\n\tconst handlePointerUp = useCallback(() => {\n\t\tsetIsDragging(false);\n\t\tconst [h, s, v] = hsvRef.current;\n\t\tonChanged === null || onChanged === void 0 || onChanged(h, s, v);\n\t}, [onChanged]);\n\tuseEffect(() => {\n\t\tif (isDragging) {\n\t\t\twindow.addEventListener(\"pointermove\", handlePointerMove);\n\t\t\twindow.addEventListener(\"pointerup\", handlePointerUp);\n\t\t\twindow.addEventListener(\"mouseup\", handlePointerUp);\n\t\t}\n\t\treturn () => {\n\t\t\twindow.removeEventListener(\"pointermove\", handlePointerMove);\n\t\t\twindow.removeEventListener(\"pointerup\", handlePointerUp);\n\t\t\twindow.removeEventListener(\"mouseup\", handlePointerUp);\n\t\t};\n\t}, [\n\t\tisDragging,\n\t\thandlePointerMove,\n\t\thandlePointerUp\n\t]);\n\tconst getThumbPosition = () => {\n\t\tvar _thumbRef$current$cli2, _thumbRef$current2, _sliderRef$current$cl, _sliderRef$current;\n\t\tconst safeHue = Math.min(Math.max(hsv[0], 0), 360);\n\t\tconst thumbSize = (_thumbRef$current$cli2 = (_thumbRef$current2 = thumbRef.current) === null || _thumbRef$current2 === void 0 ? void 0 : _thumbRef$current2.clientWidth) !== null && _thumbRef$current$cli2 !== void 0 ? _thumbRef$current$cli2 : 0;\n\t\tconst sliderWidth = (_sliderRef$current$cl = (_sliderRef$current = sliderRef.current) === null || _sliderRef$current === void 0 ? void 0 : _sliderRef$current.clientWidth) !== null && _sliderRef$current$cl !== void 0 ? _sliderRef$current$cl : 0;\n\t\tconst thumbOffsetPercent = sliderWidth > 0 ? thumbSize / sliderWidth * 100 : 0;\n\t\treturn `${safeHue / 360 * (100 - thumbOffsetPercent)}%`;\n\t};\n\treturn /* @__PURE__ */ jsx(\"div\", {\n\t\t\"data-u-comp\": \"color-picker-hue-slider\",\n\t\tclassName: \"univer-relative univer-w-full univer-select-none\",\n\t\tchildren: /* @__PURE__ */ jsx(\"div\", {\n\t\t\tref: sliderRef,\n\t\t\tclassName: \"univer-relative univer-h-2 univer-w-full univer-cursor-pointer univer-rounded-full univer-shadow-inner\",\n\t\t\tstyle: { background: `linear-gradient(to right,\n                        hsl(0, 100%, 50%),\n                        hsl(60, 100%, 50%),\n                        hsl(120, 100%, 50%),\n                        hsl(180, 100%, 50%),\n                        hsl(240, 100%, 50%),\n                        hsl(300, 100%, 50%),\n                        hsl(360, 100%, 50%))` },\n\t\t\tonPointerDown: (e) => {\n\t\t\t\tsetIsDragging(true);\n\t\t\t\tcalculateHue(e.clientX);\n\t\t\t},\n\t\t\tchildren: /* @__PURE__ */ jsx(\"div\", {\n\t\t\t\tref: thumbRef,\n\t\t\t\t\"data-u-comp\": \"color-picker-hue-slider-thumb\",\n\t\t\t\tclassName: \"univer-absolute univer-top-1/2 univer-box-border univer-size-2 univer-rounded-full univer-bg-transparent univer-shadow-md univer-ring-2 univer-ring-white univer-transition-transform univer-duration-75 univer-will-change-transform\",\n\t\t\t\tstyle: {\n\t\t\t\t\tleft: getThumbPosition(),\n\t\t\t\t\ttransform: \"translateY(-50%)\",\n\t\t\t\t\ttransition: isDragging ? \"none\" : \"all 0.1s ease-out\"\n\t\t\t\t}\n\t\t\t})\n\t\t})\n\t});\n}\n\n//#endregion\n//#region src/components/color-picker/ColorPicker.tsx\n/**\n* Copyright 2023-present DreamNum Co., Ltd.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n*     http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\nconst MemoizedColorSpectrum = memo(ColorSpectrum);\nconst MemoizedHueSlider = memo(HueSlider);\nconst MemoizedAlphaSlider = memo(AlphaSlider);\nconst MemoizedColorInput = memo(ColorInput);\nconst MemoizedColorPresets = memo(ColorPresets);\nfunction ColorPicker({ format = \"hex\", value, onChange }) {\n\tif (!isBrowser) return null;\n\tconst { locale } = useContext(ConfigContext);\n\tconst [hsv, setHsv] = useState([\n\t\t0,\n\t\t100,\n\t\t100\n\t]);\n\tconst [alpha, setAlpha] = useState(1);\n\tconst [visible, setVisible] = useState(false);\n\tconst getRgb = useCallback((h, s, v) => {\n\t\treturn hsvToRgb(h, s, v);\n\t}, []);\n\tuseEffect(() => {\n\t\ttry {\n\t\t\tconst actualValue = value || (format === \"hex\" ? \"#000000\" : \"rgba(0, 0, 0, 1)\");\n\t\t\tif (format === \"hex\") {\n\t\t\t\tconst [h, s, v] = hexToHsv(actualValue);\n\t\t\t\tsetHsv([\n\t\t\t\t\th,\n\t\t\t\t\ts,\n\t\t\t\t\tv\n\t\t\t\t]);\n\t\t\t\tsetAlpha(1);\n\t\t\t} else if (format === \"rgba\") {\n\t\t\t\tconst [r, g, b, a] = parseRgba(actualValue);\n\t\t\t\tconst [h, s, v] = rgbToHsv(r, g, b);\n\t\t\t\tsetHsv([\n\t\t\t\t\th,\n\t\t\t\t\ts,\n\t\t\t\t\tv\n\t\t\t\t]);\n\t\t\t\tsetAlpha(a);\n\t\t\t}\n\t\t} catch (error) {\n\t\t\tconsole.error(\"Invalid value:\", error);\n\t\t}\n\t}, [value, format]);\n\tfunction handleColorChange(h, s, v) {\n\t\tsetHsv([\n\t\t\th,\n\t\t\ts,\n\t\t\tv\n\t\t]);\n\t}\n\tfunction handleAlphaChange(a) {\n\t\tsetAlpha(a);\n\t}\n\tfunction handleColorChanged(h, s, v, a = alpha) {\n\t\tif (format === \"hex\") {\n\t\t\tconst [r, g, b] = getRgb(h, s, v);\n\t\t\tconst hex = rgbToHex(r, g, b);\n\t\t\tonChange === null || onChange === void 0 || onChange(hex);\n\t\t} else if (format === \"rgba\") {\n\t\t\tconst [r, g, b] = getRgb(h, s, v);\n\t\t\tonChange === null || onChange === void 0 || onChange(`rgba(${r}, ${g}, ${b}, ${a})`);\n\t\t}\n\t}\n\tfunction handleConfirmCustomColor() {\n\t\tconst [h, s, v] = hsv;\n\t\tif (format === \"hex\") {\n\t\t\tconst hex = hsvToHex(h, s, v);\n\t\t\tonChange === null || onChange === void 0 || onChange(hex);\n\t\t} else if (format === \"rgba\") {\n\t\t\tconst [r, g, b] = getRgb(h, s, v);\n\t\t\tonChange === null || onChange === void 0 || onChange(`rgba(${r}, ${g}, ${b}, ${alpha})`);\n\t\t}\n\t\tsetVisible(false);\n\t}\n\treturn /* @__PURE__ */ jsxs(\"div\", {\n\t\t\"data-u-comp\": \"color-picker\",\n\t\tclassName: \"univer-cursor-default univer-space-y-2 univer-rounded-lg\",\n\t\tonClick: (e) => e.stopPropagation(),\n\t\tchildren: [\n\t\t\t/* @__PURE__ */ jsx(MemoizedColorPresets, {\n\t\t\t\thsv,\n\t\t\t\tonChange: (h, s, v) => {\n\t\t\t\t\thandleColorChange(h, s, v);\n\t\t\t\t\thandleAlphaChange(1);\n\t\t\t\t\thandleColorChanged(h, s, v, 1);\n\t\t\t\t}\n\t\t\t}),\n\t\t\t/* @__PURE__ */ jsx(\"div\", {\n\t\t\t\tclassName: \"univer-flex univer-h-7 univer-items-center\",\n\t\t\t\tchildren: /* @__PURE__ */ jsx(\"a\", {\n\t\t\t\t\tclassName: \"univer-cursor-pointer univer-gap-2 univer-text-sm univer-text-gray-900 univer-transition-opacity hover:univer-opacity-80 dark:!univer-text-white\",\n\t\t\t\t\tonClick: () => setVisible(true),\n\t\t\t\t\tchildren: locale === null || locale === void 0 ? void 0 : locale.ColorPicker.more\n\t\t\t\t})\n\t\t\t}),\n\t\t\t/* @__PURE__ */ jsx(Dialog, {\n\t\t\t\tclassName: \"!univer-w-fit !univer-p-2.5\",\n\t\t\t\tclosable: false,\n\t\t\t\tmaskClosable: false,\n\t\t\t\topen: visible,\n\t\t\t\tonOpenChange: setVisible,\n\t\t\t\tchildren: /* @__PURE__ */ jsxs(\"div\", {\n\t\t\t\t\tclassName: \"univer-grid univer-w-64 univer-gap-2\",\n\t\t\t\t\tchildren: [\n\t\t\t\t\t\t/* @__PURE__ */ jsx(MemoizedColorSpectrum, {\n\t\t\t\t\t\t\thsv,\n\t\t\t\t\t\t\tonChange: handleColorChange\n\t\t\t\t\t\t}),\n\t\t\t\t\t\t/* @__PURE__ */ jsxs(\"div\", {\n\t\t\t\t\t\t\tclassName: \"univer-flex univer-items-center univer-gap-2\",\n\t\t\t\t\t\t\tchildren: [/* @__PURE__ */ jsx(\"div\", {\n\t\t\t\t\t\t\t\tclassName: \"univer-size-6 univer-flex-shrink-0 univer-rounded-sm\",\n\t\t\t\t\t\t\t\tstyle: { backgroundColor: format === \"hex\" ? hsvToHex(...hsv) : hsvToRgba(...hsv, alpha) }\n\t\t\t\t\t\t\t}), /* @__PURE__ */ jsxs(\"div\", {\n\t\t\t\t\t\t\t\tclassName: \"univer-flex-1 univer-space-y-2\",\n\t\t\t\t\t\t\t\tchildren: [/* @__PURE__ */ jsx(MemoizedHueSlider, {\n\t\t\t\t\t\t\t\t\thsv,\n\t\t\t\t\t\t\t\t\tonChange: handleColorChange\n\t\t\t\t\t\t\t\t}), format === \"rgba\" && /* @__PURE__ */ jsx(MemoizedAlphaSlider, {\n\t\t\t\t\t\t\t\t\thsv,\n\t\t\t\t\t\t\t\t\talpha,\n\t\t\t\t\t\t\t\t\tonChange: handleAlphaChange\n\t\t\t\t\t\t\t\t})]\n\t\t\t\t\t\t\t})]\n\t\t\t\t\t\t}),\n\t\t\t\t\t\t/* @__PURE__ */ jsx(MemoizedColorInput, {\n\t\t\t\t\t\t\thsv,\n\t\t\t\t\t\t\talpha,\n\t\t\t\t\t\t\tformat,\n\t\t\t\t\t\t\tonChange: (h, s, v, a) => {\n\t\t\t\t\t\t\t\thandleColorChange(h, s, v);\n\t\t\t\t\t\t\t\tif (a !== void 0) handleAlphaChange(a);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}),\n\t\t\t\t\t\t/* @__PURE__ */ jsxs(\"footer\", {\n\t\t\t\t\t\t\tclassName: \"univer-flex univer-items-center univer-justify-end univer-gap-2\",\n\t\t\t\t\t\t\tchildren: [/* @__PURE__ */ jsx(Button, {\n\t\t\t\t\t\t\t\tonClick: () => setVisible(false),\n\t\t\t\t\t\t\t\tchildren: locale === null || locale === void 0 ? void 0 : locale.ColorPicker.cancel\n\t\t\t\t\t\t\t}), /* @__PURE__ */ jsx(Button, {\n\t\t\t\t\t\t\t\tvariant: \"primary\",\n\t\t\t\t\t\t\t\tonClick: handleConfirmCustomColor,\n\t\t\t\t\t\t\t\tchildren: locale === null || locale === void 0 ? void 0 : locale.ColorPicker.confirm\n\t\t\t\t\t\t\t})]\n\t\t\t\t\t\t})\n\t\t\t\t\t]\n\t\t\t\t})\n\t\t\t})\n\t\t]\n\t});\n}\n\n//#endregion\n//#region src/components/confirm/Confirm.tsx\nfunction Footer(props) {\n\tconst { locale, cancelText, confirmText, onClose, onConfirm, closable = true } = props;\n\treturn /* @__PURE__ */ jsxs(\"footer\", {\n\t\tclassName: \"univer-flex univer-items-center univer-justify-end univer-gap-2\",\n\t\tchildren: [closable && /* @__PURE__ */ jsx(Button, {\n\t\t\tonClick: onClose,\n\t\t\tchildren: cancelText !== null && cancelText !== void 0 ? cancelText : locale === null || locale === void 0 ? void 0 : locale.Confirm.cancel\n\t\t}), /* @__PURE__ */ jsx(Button, {\n\t\t\tvariant: \"primary\",\n\t\t\tonClick: onConfirm,\n\t\t\tchildren: confirmText !== null && confirmText !== void 0 ? confirmText : locale === null || locale === void 0 ? void 0 : locale.Confirm.confirm\n\t\t})]\n\t});\n}\nfunction Confirm(props) {\n\tconst { children, visible = false, title, cancelText, confirmText, width, onClose, onConfirm, closable = true } = props;\n\tconst { locale } = useContext(ConfigContext);\n\treturn /* @__PURE__ */ jsx(Dialog, {\n\t\topen: visible,\n\t\ttitle,\n\t\tmaskClosable: false,\n\t\tfooter: /* @__PURE__ */ jsx(Footer, {\n\t\t\tlocale,\n\t\t\tcancelText,\n\t\t\tconfirmText,\n\t\t\tonClose,\n\t\t\tonConfirm,\n\t\t\tclosable\n\t\t}),\n\t\tonClose,\n\t\twidth,\n\t\tclosable,\n\t\tchildren\n\t});\n}\n\n//#endregion\n//#region src/components/dropdown/PopoverPrimitive.tsx\nfunction PopoverPrimitive({ ...props }) {\n\treturn /* @__PURE__ */ jsx(Root$1, {\n\t\t\"data-slot\": \"popover\",\n\t\t...props\n\t});\n}\nfunction PopoverTrigger({ ...props }) {\n\treturn /* @__PURE__ */ jsx(Trigger, {\n\t\t\"data-slot\": \"popover-trigger\",\n\t\t...props\n\t});\n}\nfunction PopoverContent({ className, align = \"center\", sideOffset = 4, ...props }) {\n\treturn /* @__PURE__ */ jsx(Portal$1, { children: /* @__PURE__ */ jsx(Content$1, {\n\t\t\"data-slot\": \"popover-content\",\n\t\talign,\n\t\tsideOffset,\n\t\tclassName: clsx(\"univer-outline-hidden data-[state=open]:univer-animate-in data-[state=open]:univer-fade-in-0 data-[state=open]:univer-zoom-in-95 data-[state=closed]:univer-animate-out data-[state=closed]:univer-fade-out-0 data-[state=closed]:univer-zoom-out-95 data-[side=bottom]:univer-slide-in-from-top-2 data-[side=left]:univer-slide-in-from-right-2 data-[side=right]:univer-slide-in-from-left-2 data-[side=top]:univer-slide-in-from-bottom-2 univer-z-[1080] univer-max-h-[--radix-popper-available-height] univer-overflow-y-auto univer-rounded-md univer-bg-white univer-text-gray-900 univer-shadow-md dark:!univer-bg-gray-900 dark:!univer-text-white dark:focus-visible:!univer-border-gray-600\", borderClassName, scrollbarClassName, className),\n\t\t...props\n\t}) });\n}\n\n//#endregion\n//#region src/components/dropdown/Dropdown.tsx\nfunction Dropdown(props) {\n\tconst { children, overlay, disabled, open: controlledOpen, onOpenChange: controlledOnOpenChange, ...restProps } = props;\n\tconst [uncontrolledOpen, setUncontrolledOpen] = useState(false);\n\tconst isControlled = controlledOpen !== void 0;\n\tconst open = isControlled ? controlledOpen : uncontrolledOpen;\n\tfunction handleChangeOpen(newOpen) {\n\t\tif (disabled) return;\n\t\tif (!isControlled) setUncontrolledOpen(newOpen);\n\t\tcontrolledOnOpenChange === null || controlledOnOpenChange === void 0 || controlledOnOpenChange(newOpen);\n\t}\n\treturn /* @__PURE__ */ jsxs(PopoverPrimitive, {\n\t\topen,\n\t\tonOpenChange: handleChangeOpen,\n\t\tchildren: [/* @__PURE__ */ jsx(PopoverTrigger, {\n\t\t\tasChild: true,\n\t\t\tchildren\n\t\t}), /* @__PURE__ */ jsx(PopoverContent, {\n\t\t\t...restProps,\n\t\t\tchildren: overlay\n\t\t})]\n\t});\n}\n\n//#endregion\n//#region src/components/date-picker/DatePicker.tsx\n/**\n* Copyright 2023-present DreamNum Co., Ltd.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n*     http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\nfunction DatePicker(props) {\n\tconst { value, onValueChange, className } = props;\n\tconst [open, setOpen] = useState(false);\n\tfunction handleValueChange(date) {\n\t\tonValueChange === null || onValueChange === void 0 || onValueChange(date);\n\t\tsetOpen(false);\n\t}\n\treturn /* @__PURE__ */ jsx(Dropdown, {\n\t\talign: \"start\",\n\t\toverlay: /* @__PURE__ */ jsx(\"div\", {\n\t\t\tclassName: \"univer-p-2\",\n\t\t\tchildren: /* @__PURE__ */ jsx(Calendar, {\n\t\t\t\tvalue,\n\t\t\t\tonValueChange: handleValueChange\n\t\t\t})\n\t\t}),\n\t\topen,\n\t\tonOpenChange: setOpen,\n\t\tchildren: /* @__PURE__ */ jsxs(\"button\", {\n\t\t\tclassName: clsx(\"univer-flex univer-h-8 univer-items-center univer-justify-between univer-gap-2 univer-rounded-md univer-bg-transparent univer-px-2 univer-text-sm univer-text-gray-800 univer-transition-all hover:univer-border-primary-600 dark:!univer-text-white\", borderClassName, className),\n\t\t\ttype: \"button\",\n\t\t\tchildren: [formatDateWithPattern(value, \"YYYY-MM-DD\"), /* @__PURE__ */ jsx(CalendarIcon, { className: \"univer-text-gray-600 dark:!univer-text-gray-400\" })]\n\t\t})\n\t});\n}\n\n//#endregion\n//#region src/components/date-range-picker/DateRangePicker.tsx\n/**\n* Copyright 2023-present DreamNum Co., Ltd.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n*     http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\nfunction DateRangePicker(props) {\n\tconst { value = [/* @__PURE__ */ new Date(), /* @__PURE__ */ new Date()], onValueChange, className } = props;\n\tconst [open, setOpen] = useState(false);\n\tfunction handleValueChange(date) {\n\t\tlet [start, end] = date;\n\t\tif (start > end) [start, end] = [end, start];\n\t\tonValueChange === null || onValueChange === void 0 || onValueChange([start, end]);\n\t\tsetOpen(false);\n\t}\n\treturn /* @__PURE__ */ jsx(Dropdown, {\n\t\talign: \"start\",\n\t\toverlay: /* @__PURE__ */ jsxs(\"div\", {\n\t\t\tclassName: \"univer-grid univer-grid-cols-2 univer-gap-2 univer-p-2\",\n\t\t\tchildren: [/* @__PURE__ */ jsx(Calendar, {\n\t\t\t\tvalue: value[0],\n\t\t\t\tmax: value[1],\n\t\t\t\tonValueChange: (date) => {\n\t\t\t\t\thandleValueChange([date, value[1]]);\n\t\t\t\t}\n\t\t\t}), /* @__PURE__ */ jsx(Calendar, {\n\t\t\t\tvalue: value[1],\n\t\t\t\tmin: value[0],\n\t\t\t\tonValueChange: (date) => {\n\t\t\t\t\thandleValueChange([value[0], date]);\n\t\t\t\t}\n\t\t\t})]\n\t\t}),\n\t\topen,\n\t\tonOpenChange: setOpen,\n\t\tchildren: /* @__PURE__ */ jsxs(\"button\", {\n\t\t\tclassName: clsx(\"univer-flex univer-h-8 univer-items-center univer-justify-between univer-gap-2 univer-rounded-md univer-bg-transparent univer-px-2 univer-text-sm univer-text-gray-800 univer-transition-all hover:univer-border-primary-600 dark:!univer-text-white\", borderClassName, className),\n\t\t\ttype: \"button\",\n\t\t\tchildren: [/* @__PURE__ */ jsxs(\"span\", {\n\t\t\t\tclassName: \"univer-flex univer-gap-1\",\n\t\t\t\tchildren: [\n\t\t\t\t\t/* @__PURE__ */ jsx(\"span\", { children: formatDateWithPattern(value[0], \"YYYY-MM-DD\") }),\n\t\t\t\t\t/* @__PURE__ */ jsx(\"span\", { children: \"-\" }),\n\t\t\t\t\t/* @__PURE__ */ jsx(\"span\", { children: formatDateWithPattern(value[1], \"YYYY-MM-DD\") })\n\t\t\t\t]\n\t\t\t}), /* @__PURE__ */ jsx(CalendarIcon, { className: \"univer-text-gray-600 dark:!univer-text-gray-400\" })]\n\t\t})\n\t});\n}\n\n//#endregion\n//#region src/components/draggable-list/DraggableList.tsx\nfunction moveItemByIndex(list, fromIndex, toIndex) {\n\tif (fromIndex === toIndex || fromIndex < 0 || toIndex < 0 || fromIndex >= list.length || toIndex >= list.length) return list;\n\tconst next = [...list];\n\tconst [item] = next.splice(fromIndex, 1);\n\tnext.splice(toIndex, 0, item);\n\treturn next;\n}\nfunction DraggableList(props) {\n\tconst { list, onListChange, idKey, itemRender, className, style, draggableHandle, rowHeight, margin = [0, 0], onDragStart, onDragStop, ...restProps } = props;\n\tconst [displayList, setDisplayList] = useState(list);\n\tconst displayListRef = useRef(list);\n\tconst [draggingId, setDraggingId] = useState(null);\n\tconst [dragOverId, setDragOverId] = useState(null);\n\tconst [ghostElement, setGhostElement] = useState(null);\n\tconst [ghostPosition, setGhostPosition] = useState(null);\n\tconst [canUsePortal, setCanUsePortal] = useState(false);\n\tconst pointerIdRef = useRef(null);\n\tconst dragPointerOffsetRef = useRef({\n\t\tx: 0,\n\t\ty: 0\n\t});\n\tconst dragItemSizeRef = useRef({\n\t\twidth: 0,\n\t\theight: 0\n\t});\n\tconst ghostContainerRef = useRef(null);\n\tconst pressedHandleIdRef = useRef(null);\n\tconst dragSourceIdRef = useRef(null);\n\tconst dragStartIndexRef = useRef(-1);\n\tconst { direction } = useContext(ConfigContext);\n\tuseEffect(() => {\n\t\tif (!draggingId) {\n\t\t\tsetDisplayList(list);\n\t\t\tdisplayListRef.current = list;\n\t\t}\n\t}, [draggingId, list]);\n\tuseEffect(() => {\n\t\tsetCanUsePortal(typeof document !== \"undefined\");\n\t}, []);\n\tuseEffect(() => {\n\t\tconst container = ghostContainerRef.current;\n\t\tif (!container) return;\n\t\tcontainer.replaceChildren();\n\t\tif (ghostElement) container.appendChild(ghostElement);\n\t}, [ghostElement]);\n\tuseEffect(() => {\n\t\tif (!draggingId) return;\n\t\tconst handlePointerMove = (evt) => {\n\t\t\tconst sourceId = dragSourceIdRef.current;\n\t\t\tif (!sourceId || pointerIdRef.current !== evt.pointerId) return;\n\t\t\tsetGhostPosition({\n\t\t\t\tx: evt.clientX - dragPointerOffsetRef.current.x,\n\t\t\t\ty: evt.clientY - dragPointerOffsetRef.current.y\n\t\t\t});\n\t\t\tconst element = document.elementFromPoint(evt.clientX, evt.clientY);\n\t\t\tconst itemElement = element === null || element === void 0 ? void 0 : element.closest(\"[data-draggable-list-item-id]\");\n\t\t\tconst targetId = itemElement === null || itemElement === void 0 ? void 0 : itemElement.dataset.draggableListItemId;\n\t\t\tif (!targetId || targetId === sourceId) return;\n\t\t\tsetDragOverId(targetId);\n\t\t\tsetDisplayList((prev) => {\n\t\t\t\tconst fromIndex = prev.findIndex((it) => getItemId(it) === sourceId);\n\t\t\t\tconst toIndex = prev.findIndex((it) => getItemId(it) === targetId);\n\t\t\t\tif (fromIndex < 0 || toIndex < 0 || fromIndex === toIndex) return prev;\n\t\t\t\tconst next = moveItemByIndex(prev, fromIndex, toIndex);\n\t\t\t\tdisplayListRef.current = next;\n\t\t\t\treturn next;\n\t\t\t});\n\t\t};\n\t\tconst handlePointerUp = (evt) => {\n\t\t\tif (pointerIdRef.current !== evt.pointerId) return;\n\t\t\tconst sourceId = dragSourceIdRef.current;\n\t\t\tconst startIndex = dragStartIndexRef.current;\n\t\t\tconst currentList = displayListRef.current;\n\t\t\tif (sourceId) {\n\t\t\t\tconst finalIndex = currentList.findIndex((it) => getItemId(it) === sourceId);\n\t\t\t\tonDragStop === null || onDragStop === void 0 || onDragStop(void 0, { y: startIndex }, { y: finalIndex });\n\t\t\t\tif (startIndex >= 0) onListChange([...currentList]);\n\t\t\t}\n\t\t\tpointerIdRef.current = null;\n\t\t\tpressedHandleIdRef.current = null;\n\t\t\tdragSourceIdRef.current = null;\n\t\t\tdragStartIndexRef.current = -1;\n\t\t\tsetDragOverId(null);\n\t\t\tsetGhostElement(null);\n\t\t\tsetGhostPosition(null);\n\t\t\tsetDraggingId(null);\n\t\t};\n\t\twindow.addEventListener(\"pointermove\", handlePointerMove);\n\t\twindow.addEventListener(\"pointerup\", handlePointerUp);\n\t\twindow.addEventListener(\"pointercancel\", handlePointerUp);\n\t\treturn () => {\n\t\t\twindow.removeEventListener(\"pointermove\", handlePointerMove);\n\t\t\twindow.removeEventListener(\"pointerup\", handlePointerUp);\n\t\t\twindow.removeEventListener(\"pointercancel\", handlePointerUp);\n\t\t};\n\t}, [\n\t\tdraggingId,\n\t\tonDragStop,\n\t\tonListChange\n\t]);\n\tconst gapStyle = useMemo(() => {\n\t\tconst [horizontal, vertical] = margin;\n\t\treturn {\n\t\t\trowGap: `${vertical}px`,\n\t\t\tpaddingLeft: horizontal ? `${horizontal}px` : void 0,\n\t\t\tpaddingRight: horizontal ? `${horizontal}px` : void 0,\n\t\t\t...style\n\t\t};\n\t}, [margin, style]);\n\tconst getItemId = (item) => String(item[idKey]);\n\tconst draggingItem = draggingId ? displayList.find((item) => getItemId(item) === draggingId) : null;\n\treturn /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx(\"div\", {\n\t\t...restProps,\n\t\tclassName: clsx(\"univer-flex univer-flex-col\", draggingId && \"univer-cursor-grabbing univer-select-none\", className),\n\t\tstyle: gapStyle,\n\t\tchildren: displayList.map((item, index) => {\n\t\t\tconst itemId = getItemId(item);\n\t\t\tconst isDraggingItem = draggingId === itemId;\n\t\t\treturn /* @__PURE__ */ jsxs(\"div\", {\n\t\t\t\t\"data-draggable-list-item-id\": itemId,\n\t\t\t\tclassName: clsx(\"univer-relative univer-transition-all univer-duration-150\", isDraggingItem && \"univer-opacity-0\", dragOverId === itemId && !isDraggingItem && `\n                                  univer-bg-primary-50/60\n                                  dark:!univer-bg-primary-900/20\n                                  univer-rounded univer-border univer-border-primary-200\n                                  dark:!univer-border-primary-700\n                                `),\n\t\t\t\tonPointerDownCapture: (e) => {\n\t\t\t\t\tif (pointerIdRef.current !== null) return;\n\t\t\t\t\tif (!draggableHandle) pressedHandleIdRef.current = itemId;\n\t\t\t\t\telse pressedHandleIdRef.current = !!e.target.closest(draggableHandle) ? itemId : null;\n\t\t\t\t\tif (pressedHandleIdRef.current !== itemId) return;\n\t\t\t\t\tconst rect = e.currentTarget.getBoundingClientRect();\n\t\t\t\t\tdragPointerOffsetRef.current = {\n\t\t\t\t\t\tx: e.clientX - rect.left,\n\t\t\t\t\t\ty: e.clientY - rect.top\n\t\t\t\t\t};\n\t\t\t\t\tdragItemSizeRef.current = {\n\t\t\t\t\t\twidth: rect.width,\n\t\t\t\t\t\theight: rect.height\n\t\t\t\t\t};\n\t\t\t\t\tsetGhostPosition({\n\t\t\t\t\t\tx: rect.left,\n\t\t\t\t\t\ty: rect.top\n\t\t\t\t\t});\n\t\t\t\t\tsetGhostElement(e.currentTarget.cloneNode(true));\n\t\t\t\t\tpointerIdRef.current = e.pointerId;\n\t\t\t\t\tdragSourceIdRef.current = itemId;\n\t\t\t\t\tdragStartIndexRef.current = index;\n\t\t\t\t\tsetDraggingId(itemId);\n\t\t\t\t\tdisplayListRef.current = displayList;\n\t\t\t\t\tonDragStart === null || onDragStart === void 0 || onDragStart(void 0, { y: index });\n\t\t\t\t\te.preventDefault();\n\t\t\t\t\te.currentTarget.setPointerCapture(e.pointerId);\n\t\t\t\t},\n\t\t\t\tstyle: {\n\t\t\t\t\t...rowHeight ? { minHeight: `${rowHeight}px` } : void 0,\n\t\t\t\t\tcursor: draggingId ? \"grabbing\" : void 0\n\t\t\t\t},\n\t\t\t\tchildren: [isDraggingItem && /* @__PURE__ */ jsx(\"div\", { className: \"\\n                                      univer-bg-primary-50/50 univer-absolute univer-inset-0 univer-rounded\\n                                      univer-border univer-border-dashed univer-border-primary-300\\n                                    \" }), itemRender(item, index)]\n\t\t\t}, itemId);\n\t\t})\n\t}), canUsePortal && draggingItem && ghostPosition && createPortal(/* @__PURE__ */ jsx(\"div\", {\n\t\tdir: direction,\n\t\tclassName: clsx(\"univer-pointer-events-none univer-fixed univer-rounded-md univer-border univer-border-gray-200 univer-bg-white univer-shadow-lg dark:!univer-border-gray-700 dark:!univer-bg-gray-800\"),\n\t\tstyle: {\n\t\t\tzIndex: 2147483647,\n\t\t\tleft: `${ghostPosition.x}px`,\n\t\t\ttop: `${ghostPosition.y}px`,\n\t\t\twidth: `${dragItemSizeRef.current.width}px`,\n\t\t\theight: `${dragItemSizeRef.current.height}px`,\n\t\t\topacity: .95\n\t\t},\n\t\tchildren: ghostElement ? /* @__PURE__ */ jsx(\"div\", { ref: ghostContainerRef }) : itemRender(draggingItem, displayList.findIndex((item) => getItemId(item) === getItemId(draggingItem)))\n\t}), document.body)] });\n}\n\n//#endregion\n//#region src/components/dropdown-menu/DropdownMenuPrimitive.tsx\nfunction DropdownMenuPrimitive({ ...props }) {\n\treturn /* @__PURE__ */ jsx(Root$2, {\n\t\t\"data-slot\": \"dropdown-menu\",\n\t\t...props\n\t});\n}\nfunction DropdownMenuPortal({ ...props }) {\n\treturn /* @__PURE__ */ jsx(Portal$2, {\n\t\t\"data-slot\": \"dropdown-menu-portal\",\n\t\t...props\n\t});\n}\nfunction DropdownMenuTrigger({ ...props }) {\n\treturn /* @__PURE__ */ jsx(Trigger$1, {\n\t\t\"data-slot\": \"dropdown-menu-trigger\",\n\t\t...props\n\t});\n}\nfunction DropdownMenuSub({ ...props }) {\n\treturn /* @__PURE__ */ jsx(Sub, {\n\t\t\"data-slot\": \"dropdown-menu-sub\",\n\t\t...props\n\t});\n}\nfunction DropdownMenuRadioGroup({ ...props }) {\n\treturn /* @__PURE__ */ jsx(RadioGroup$1, {\n\t\t\"data-slot\": \"dropdown-menu-radio-group\",\n\t\t...props\n\t});\n}\nfunction DropdownMenuSubTrigger({ className, inset, children, ...props }) {\n\treturn /* @__PURE__ */ jsxs(SubTrigger, {\n\t\t\"data-slot\": \"dropdown-menu-sub-trigger\",\n\t\t\"data-inset\": inset,\n\t\tclassName: clsx(\"univer-flex univer-cursor-default univer-select-none univer-items-center univer-justify-between univer-gap-2 univer-rounded univer-px-2 univer-py-1.5 univer-text-sm univer-outline-none data-[state=open]:univer-bg-gray-100 focus:univer-bg-gray-100 dark:data-[state=open]:!univer-bg-gray-600 dark:focus:!univer-bg-gray-600 [&_svg]:univer-pointer-events-none [&_svg]:univer-size-4 [&_svg]:univer-shrink-0\", className),\n\t\t...props,\n\t\tchildren: [children, /* @__PURE__ */ jsx(MoreRightIcon, { className: \"ml-auto\" })]\n\t});\n}\nfunction DropdownMenuSubContent({ className, ...props }) {\n\treturn /* @__PURE__ */ jsx(SubContent, {\n\t\t\"data-slot\": \"dropdown-menu-sub-content\",\n\t\tclassName: clsx(\"data-[state=open]:univer-animate-in data-[state=open]:univer-fade-in-0 data-[state=open]:univer-zoom-in-95 data-[state=closed]:univer-animate-out data-[state=closed]:univer-fade-out-0 data-[state=closed]:univer-zoom-out-95 data-[side=bottom]:univer-slide-in-from-top-2 data-[side=left]:univer-slide-in-from-right-2 data-[side=right]:univer-slide-in-from-left-2 data-[side=top]:univer-slide-in-from-bottom-2 univer-z-[1080] univer-box-border univer-max-h-[--radix-popper-available-height] univer-overflow-y-auto univer-rounded-md univer-bg-white univer-p-1.5 univer-text-gray-900 univer-shadow-md dark:!univer-bg-gray-700 dark:!univer-text-white\", borderClassName, scrollbarClassName, className),\n\t\t...props\n\t});\n}\nfunction DropdownMenuContent({ className, sideOffset = 4, ...props }) {\n\treturn /* @__PURE__ */ jsx(Portal$2, { children: /* @__PURE__ */ jsx(Content$2, {\n\t\t\"data-slot\": \"dropdown-menu-content\",\n\t\tsideOffset,\n\t\tclassName: clsx(\"data-[state=open]:univer-animate-in data-[state=open]:univer-fade-in-0 data-[state=open]:univer-zoom-in-95 data-[state=closed]:univer-animate-out data-[state=closed]:univer-fade-out-0 data-[state=closed]:univer-zoom-out-95 data-[side=bottom]:univer-slide-in-from-top-2 data-[side=left]:univer-slide-in-from-right-2 data-[side=right]:univer-slide-in-from-left-2 data-[side=top]:univer-slide-in-from-bottom-2 univer-z-[1080] univer-box-border univer-max-h-[--radix-popper-available-height] univer-overflow-y-auto univer-rounded-md univer-bg-white univer-p-1.5 univer-text-gray-900 univer-shadow-md dark:!univer-bg-gray-700 dark:!univer-text-white\", borderClassName, scrollbarClassName, className),\n\t\t...props\n\t}) });\n}\nfunction DropdownMenuItem({ className, inset, variant = \"default\", ...props }) {\n\treturn /* @__PURE__ */ jsx(Item, {\n\t\t\"data-slot\": \"dropdown-menu-item\",\n\t\t\"data-inset\": inset,\n\t\t\"data-variant\": variant,\n\t\tclassName: clsx(\"univer-relative univer-flex univer-cursor-default univer-select-none univer-items-center univer-gap-2 univer-rounded univer-px-2 univer-py-1.5 univer-text-sm univer-outline-none univer-transition-colors data-[disabled]:univer-pointer-events-none data-[disabled]:univer-opacity-50 focus:univer-bg-gray-100 dark:focus:!univer-bg-gray-600 [&>svg]:univer-size-4 [&>svg]:univer-shrink-0\", className),\n\t\t...props\n\t});\n}\nfunction DropdownMenuCheckboxItem({ className, children, hideIndicator, checked, ...props }) {\n\treturn /* @__PURE__ */ jsxs(CheckboxItem, {\n\t\t\"data-slot\": \"dropdown-menu-checkbox-item\",\n\t\tclassName: clsx(\"univer-relative univer-flex univer-cursor-default univer-select-none univer-items-center univer-rounded univer-py-1.5 univer-pr-2 univer-text-sm univer-outline-none univer-transition-colors data-[disabled]:univer-pointer-events-none data-[disabled]:univer-opacity-50 focus:univer-bg-gray-100 dark:focus:!univer-bg-gray-600\", {\n\t\t\t\"univer-pl-8\": !hideIndicator,\n\t\t\t\"univer-pl-2\": hideIndicator\n\t\t}, className),\n\t\tchecked,\n\t\t...props,\n\t\tchildren: [!hideIndicator && /* @__PURE__ */ jsx(\"span\", {\n\t\t\tclassName: \"univer-absolute univer-left-2 univer-flex univer-size-3.5 univer-items-center univer-justify-center\",\n\t\t\tchildren: /* @__PURE__ */ jsx(ItemIndicator, { children: /* @__PURE__ */ jsx(CheckMarkIcon, { className: \"univer-block univer-size-4 univer-fill-current univer-text-primary-600\" }) })\n\t\t}), children]\n\t});\n}\nfunction DropdownMenuRadioItem({ className, children, hideIndicator, ...props }) {\n\treturn /* @__PURE__ */ jsxs(RadioItem, {\n\t\t\"data-slot\": \"dropdown-menu-radio-item\",\n\t\tclassName: clsx(\"univer-relative univer-flex univer-cursor-default univer-select-none univer-items-center univer-rounded univer-py-1.5 univer-pr-2 univer-text-sm univer-outline-none univer-transition-colors data-[disabled]:univer-pointer-events-none data-[disabled]:univer-opacity-50 focus:univer-bg-gray-100 dark:focus:!univer-bg-gray-600\", {\n\t\t\t\"univer-pl-8\": !hideIndicator,\n\t\t\t\"univer-pl-2\": hideIndicator\n\t\t}, className),\n\t\t...props,\n\t\tchildren: [!hideIndicator && /* @__PURE__ */ jsx(\"span\", {\n\t\t\tclassName: \"univer-absolute univer-left-2 univer-flex univer-size-3.5 univer-items-center univer-justify-center\",\n\t\t\tchildren: /* @__PURE__ */ jsx(ItemIndicator, { children: /* @__PURE__ */ jsx(CheckMarkIcon, { className: \"univer-block univer-size-4 univer-fill-current univer-text-primary-600\" }) })\n\t\t}), children]\n\t});\n}\nfunction DropdownMenuSeparator({ className, ...props }) {\n\treturn /* @__PURE__ */ jsx(Separator$1, {\n\t\tclassName: clsx(\"-univer-mx-1 univer-my-1 univer-h-px univer-bg-gray-200 dark:!univer-bg-gray-600\", className),\n\t\t...props\n\t});\n}\n\n//#endregion\n//#region src/components/dropdown-menu/DropdownMenu.tsx\nfunction DropdownMenu(props) {\n\tconst { children, items, disabled, open: controlledOpen, onOpenChange: controlledOnOpenChange, ...restProps } = props;\n\tconst [uncontrolledOpen, setUncontrolledOpen] = useState(false);\n\tconst isControlled = controlledOpen !== void 0;\n\tconst open = isControlled ? controlledOpen : uncontrolledOpen;\n\tfunction handleChangeOpen(newOpen) {\n\t\tif (disabled) return;\n\t\tif (!isControlled) setUncontrolledOpen(newOpen);\n\t\tcontrolledOnOpenChange === null || controlledOnOpenChange === void 0 || controlledOnOpenChange(newOpen);\n\t}\n\tfunction renderMenuItem(item, index) {\n\t\tconst { className, type } = item;\n\t\tif (type === \"separator\") return /* @__PURE__ */ jsx(DropdownMenuSeparator, { className }, index);\n\t\telse if (type === \"radio\") return /* @__PURE__ */ jsx(DropdownMenuRadioGroup, {\n\t\t\tclassName,\n\t\t\tvalue: item.value,\n\t\t\tonValueChange: item.onSelect,\n\t\t\tchildren: item.options.map((option, index) => {\n\t\t\t\tif (\"type\" in option) {\n\t\t\t\t\tif (option.type === \"separator\") return /* @__PURE__ */ jsx(DropdownMenuSeparator, { className: option.className }, index);\n\t\t\t\t} else {\n\t\t\t\t\tif (option.value === void 0) throw new Error(\"[DropdownMenu]: `value` is required\");\n\t\t\t\t\treturn /* @__PURE__ */ jsx(DropdownMenuRadioItem, {\n\t\t\t\t\t\tvalue: option.value,\n\t\t\t\t\t\tdisabled: option.disabled,\n\t\t\t\t\t\thideIndicator: item.hideIndicator,\n\t\t\t\t\t\tchildren: option.label\n\t\t\t\t\t}, option.value);\n\t\t\t\t}\n\t\t\t\treturn null;\n\t\t\t})\n\t\t}, index);\n\t\telse if (type === \"checkbox\") return /* @__PURE__ */ jsx(DropdownMenuCheckboxItem, {\n\t\t\tclassName,\n\t\t\tdisabled: item.disabled,\n\t\t\tchecked: item.checked,\n\t\t\tonSelect: () => {\n\t\t\t\tvar _item$onSelect;\n\t\t\t\t(_item$onSelect = item.onSelect) === null || _item$onSelect === void 0 || _item$onSelect.call(item, item.value);\n\t\t\t},\n\t\t\tchildren: item.label\n\t\t}, index);\n\t\telse if (type === \"item\") return /* @__PURE__ */ jsx(DropdownMenuItem, {\n\t\t\tclassName,\n\t\t\tdisabled: item.disabled,\n\t\t\tonSelect: () => {\n\t\t\t\tvar _item$onSelect2;\n\t\t\t\t(_item$onSelect2 = item.onSelect) === null || _item$onSelect2 === void 0 || _item$onSelect2.call(item, item);\n\t\t\t},\n\t\t\tchildren: item.children\n\t\t}, index);\n\t\telse if (type === \"subItem\") {\n\t\t\tvar _item$options;\n\t\t\treturn /* @__PURE__ */ jsxs(DropdownMenuSub, { children: [/* @__PURE__ */ jsx(DropdownMenuSubTrigger, { children: item.children }), /* @__PURE__ */ jsx(DropdownMenuPortal, { children: /* @__PURE__ */ jsx(DropdownMenuSubContent, {\n\t\t\t\tsideOffset: 12,\n\t\t\t\tchildren: (_item$options = item.options) === null || _item$options === void 0 ? void 0 : _item$options.map((subItem, subIndex) => renderMenuItem(subItem, subIndex))\n\t\t\t}) })] }, index);\n\t\t}\n\t}\n\treturn /* @__PURE__ */ jsxs(DropdownMenuPrimitive, {\n\t\tmodal: false,\n\t\topen,\n\t\tonOpenChange: handleChangeOpen,\n\t\tchildren: [/* @__PURE__ */ jsx(DropdownMenuTrigger, {\n\t\t\tasChild: true,\n\t\t\tchildren\n\t\t}), /* @__PURE__ */ jsx(DropdownMenuContent, {\n\t\t\tclassName: \"univer-text-sm\",\n\t\t\tcollisionPadding: {\n\t\t\t\ttop: 12,\n\t\t\t\tbottom: 12\n\t\t\t},\n\t\t\tonWheel: (e) => e.stopPropagation(),\n\t\t\t...restProps,\n\t\t\tchildren: items.map((item, index) => renderMenuItem(item, index))\n\t\t})]\n\t});\n}\n\n//#endregion\n//#region src/components/form-layout/FormLayout.tsx\nconst FormLayoutContext = createContext(false);\nconst FormLayout = (props) => {\n\tconst { label, desc, children, style, className, error, contentStyle, collapsable = false, defaultCollapsed = false } = props;\n\tconst [collapsed, setCollapsed] = useState(defaultCollapsed);\n\treturn /* @__PURE__ */ jsx(FormLayoutContext.Provider, {\n\t\tvalue: true,\n\t\tchildren: /* @__PURE__ */ jsxs(\"div\", {\n\t\t\t\"data-u-comp\": \"form-layout\",\n\t\t\tclassName: clsx(\"univer-mb-3 univer-flex univer-flex-col\", className),\n\t\t\tstyle,\n\t\t\tchildren: [label && /* @__PURE__ */ jsxs(\"div\", {\n\t\t\t\tclassName: clsx(\"univer-mb-2 univer-flex univer-min-h-3.5 univer-items-center univer-text-sm univer-text-gray-900 dark:!univer-text-white\", { \"univer-cursor-pointer\": collapsable }),\n\t\t\t\tonClick: () => setCollapsed(!collapsed),\n\t\t\t\tchildren: [label, collapsable && /* @__PURE__ */ jsx(MoreUpIcon, { className: clsx(\"univer-ml-1 univer-transition-transform\", { \"univer-rotate-180\": collapsed }) })]\n\t\t\t}), collapsed && collapsable ? null : /* @__PURE__ */ jsxs(Fragment, { children: [desc && /* @__PURE__ */ jsx(\"div\", {\n\t\t\t\tclassName: \"univer-mt-1 univer-text-sm univer-text-gray-600 dark:!univer-text-gray-200\",\n\t\t\t\tchildren: desc\n\t\t\t}), children ? /* @__PURE__ */ jsxs(\"div\", {\n\t\t\t\tclassName: clsx(\"last:univer-mb-0 [&_[data-u-comp=input]]:univer-w-full [&_[data-u-comp=select]]:univer-w-full\", {\n\t\t\t\t\t\"[&_[data-u-comp=input]]:univer-border-red-500\": error,\n\t\t\t\t\t\"[&_[data-u-comp=select]]:univer-border-red-500\": error\n\t\t\t\t}),\n\t\t\t\tstyle: contentStyle,\n\t\t\t\tchildren: [children, error ? /* @__PURE__ */ jsx(\"div\", {\n\t\t\t\t\tclassName: \"univer-mt-1 univer-text-xs univer-text-red-500\",\n\t\t\t\t\tchildren: error\n\t\t\t\t}) : null]\n\t\t\t}) : null] })]\n\t\t})\n\t});\n};\n/**\n* A dual columns layout component for the form.\n* @param props props of the component\n*/\nconst FormDualColumnLayout = (props) => {\n\treturn /* @__PURE__ */ jsx(\"div\", {\n\t\tclassName: \"univer-flex univer-justify-between [&_[data-u-comp=form-layout]]:univer-max-w-[calc(50%-8px)] [&_[data-u-comp=form-layout]]:univer-shrink [&_[data-u-comp=form-layout]]:univer-grow\",\n\t\tchildren: props.children\n\t});\n};\n\n//#endregion\n//#region src/components/pager/Pager.tsx\n/**\n* Copyright 2023-present DreamNum Co., Ltd.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n*     http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\nfunction Pager(props) {\n\tconst { className, value: current = 0, total: count = 0, loop, text: propText, onChange } = props;\n\tconst text = useMemo(() => propText !== null && propText !== void 0 ? propText : `${current}/${count}`, [\n\t\tcurrent,\n\t\tcount,\n\t\tpropText\n\t]);\n\tconst hasValue = count > 0;\n\tconst onClickLeftArrow = () => {\n\t\tif (current === 1) {\n\t\t\tif (loop) onChange === null || onChange === void 0 || onChange(count);\n\t\t} else onChange === null || onChange === void 0 || onChange(current - 1);\n\t};\n\tconst onClickRightArrow = () => {\n\t\tif (current === count) {\n\t\t\tif (loop) onChange === null || onChange === void 0 || onChange(1);\n\t\t} else onChange === null || onChange === void 0 || onChange(current + 1);\n\t};\n\treturn /* @__PURE__ */ jsx(\"div\", {\n\t\t\"data-u-comp\": \"pager\",\n\t\tclassName: clsx(\"univer-flex univer-flex-shrink-0 univer-items-center univer-text-sm univer-text-gray-700 dark:!univer-text-gray-400\", className),\n\t\tchildren: hasValue ? /* @__PURE__ */ jsxs(Fragment, { children: [\n\t\t\t/* @__PURE__ */ jsx(\"button\", {\n\t\t\t\t\"data-u-comp\": \"pager-left-arrow\",\n\t\t\t\tclassName: \"univer-inline-flex univer-size-4 univer-cursor-pointer univer-items-center univer-rounded univer-border-none univer-bg-transparent univer-p-0 hover:univer-bg-gray-50 dark:hover:!univer-bg-gray-600\",\n\t\t\t\ttype: \"button\",\n\t\t\t\trole: \"button\",\n\t\t\t\tonClick: onClickLeftArrow,\n\t\t\t\tchildren: /* @__PURE__ */ jsx(MoreLeftIcon, {})\n\t\t\t}),\n\t\t\t/* @__PURE__ */ jsx(\"span\", {\n\t\t\t\tclassName: \"univer-mx-1\",\n\t\t\t\tchildren: text\n\t\t\t}),\n\t\t\t/* @__PURE__ */ jsx(\"button\", {\n\t\t\t\t\"data-u-comp\": \"pager-right-arrow\",\n\t\t\t\tclassName: \"univer-inline-flex univer-size-4 univer-cursor-pointer univer-items-center univer-rounded univer-border-none univer-bg-transparent univer-p-0 hover:univer-bg-gray-50 dark:hover:!univer-bg-gray-600\",\n\t\t\t\ttype: \"button\",\n\t\t\t\trole: \"button\",\n\t\t\t\tonClick: onClickRightArrow,\n\t\t\t\tchildren: /* @__PURE__ */ jsx(MoreRightIcon, {})\n\t\t\t})\n\t\t] }) : /* @__PURE__ */ jsx(\"div\", {\n\t\t\tclassName: \"univer-mx-1\",\n\t\t\tchildren: text\n\t\t})\n\t});\n}\n\n//#endregion\n//#region src/components/gallery/Gallery.tsx\n/**\n* Copyright 2023-present DreamNum Co., Ltd.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n*     http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\nconst buttonClassName = `\n    univer-flex univer-cursor-pointer univer-items-center univer-justify-center univer-border-none\n    univer-bg-transparent univer-p-0 univer-text-current\n    hover:univer-text-white\n`;\nfunction Gallery(props) {\n\tconst { className, images, open, onOpenChange } = props;\n\tconst [isVisible, setIsVisible] = useState(false);\n\tconst [activeImageIndex, setActiveImageIndex] = useState(0);\n\tconst [zoomLevel, setZoomLevel] = useState(1);\n\tconst { direction } = useContext(ConfigContext);\n\tconst dialogRef = useRef(null);\n\tconst activeImage = useMemo(() => images[activeImageIndex], [activeImageIndex, images]);\n\tuseEffect(() => {\n\t\tif (open && dialogRef.current) dialogRef.current.focus();\n\t}, [open]);\n\tuseEffect(() => {\n\t\tif (!open) return;\n\t\tconst handler = (e) => {\n\t\t\tif (e.key === \"Escape\") onOpenChange === null || onOpenChange === void 0 || onOpenChange(false);\n\t\t};\n\t\twindow.addEventListener(\"keydown\", handler);\n\t\treturn () => window.removeEventListener(\"keydown\", handler);\n\t}, [open, onOpenChange]);\n\tuseEffect(() => {\n\t\tif (open) setIsVisible(true);\n\t\telse {\n\t\t\tconst timer = setTimeout(() => {\n\t\t\t\tsetIsVisible(false);\n\t\t\t}, 150);\n\t\t\treturn () => clearTimeout(timer);\n\t\t}\n\t}, [open]);\n\tuseEffect(() => {\n\t\tif (!open) return;\n\t\tconst handleWheel = (e) => {\n\t\t\te.preventDefault();\n\t\t\tconst step = -e.deltaY * .001;\n\t\t\tsetZoomLevel((prev) => Math.min(Math.max(.5, prev + step), 2));\n\t\t};\n\t\twindow.addEventListener(\"wheel\", handleWheel, { passive: false });\n\t\treturn () => {\n\t\t\twindow.removeEventListener(\"wheel\", handleWheel);\n\t\t};\n\t}, [open]);\n\tif (!open && !isVisible) return null;\n\tfunction handleToggleZoom(ratio) {\n\t\tif (ratio === \"reset\") {\n\t\t\tsetZoomLevel(1);\n\t\t\treturn;\n\t\t}\n\t\tconst newZoomLevel = zoomLevel + ratio;\n\t\tif (newZoomLevel < .5) return;\n\t\tif (newZoomLevel > 2) return;\n\t\tsetZoomLevel(newZoomLevel);\n\t}\n\treturn createPortal(/* @__PURE__ */ jsxs(\"div\", {\n\t\t\"data-u-comp\": \"gallery\",\n\t\tdir: direction,\n\t\trole: \"dialog\",\n\t\t\"aria-modal\": \"true\",\n\t\t\"aria-label\": \"Image gallery\",\n\t\ttabIndex: -1,\n\t\tref: dialogRef,\n\t\tclassName: clsx(\"univer-absolute univer-inset-0 univer-z-[1080] univer-flex univer-size-full univer-select-none univer-items-center univer-justify-center\", {\n\t\t\t\"univer-animate-in univer-fade-in\": open,\n\t\t\t\"univer-animate-out univer-fade-out\": !open\n\t\t}, className),\n\t\tchildren: [\n\t\t\t/* @__PURE__ */ jsx(\"div\", {\n\t\t\t\tclassName: \"univer-absolute univer-inset-0 univer-size-full univer-bg-gray-900 univer-opacity-80\",\n\t\t\t\t\"aria-hidden\": \"true\",\n\t\t\t\tonClick: () => onOpenChange === null || onOpenChange === void 0 ? void 0 : onOpenChange(false)\n\t\t\t}),\n\t\t\t/* @__PURE__ */ jsx(\"div\", {\n\t\t\t\tclassName: \"univer-relative\",\n\t\t\t\tchildren: activeImage && /* @__PURE__ */ jsx(\"img\", {\n\t\t\t\t\tclassName: \"univer-max-h-[40vh] univer-max-w-[60vw] univer-transition-transform univer-duration-300 univer-ease-out\",\n\t\t\t\t\tstyle: { transform: `scale(${zoomLevel})` },\n\t\t\t\t\tsrc: activeImage,\n\t\t\t\t\talt: `Image ${activeImageIndex + 1} of ${images.length}`,\n\t\t\t\t\tdraggable: false\n\t\t\t\t})\n\t\t\t}),\n\t\t\t/* @__PURE__ */ jsxs(\"footer\", {\n\t\t\t\tclassName: \"univer-absolute univer-bottom-6 univer-left-1/2 univer-flex -univer-translate-x-1/2 univer-items-center univer-gap-3 univer-rounded-full univer-bg-gray-800 univer-px-6 univer-py-3 univer-text-gray-400\",\n\t\t\t\tchildren: [\n\t\t\t\t\t/* @__PURE__ */ jsx(Pager, {\n\t\t\t\t\t\tclassName: \"!univer-text-gray-400 [&_[data-u-comp=pager-left-arrow]:hover]:!univer-bg-gray-600 [&_[data-u-comp=pager-right-arrow]:hover]:!univer-bg-gray-600\",\n\t\t\t\t\t\tvalue: activeImageIndex + 1,\n\t\t\t\t\t\ttotal: images.length,\n\t\t\t\t\t\tonChange: (value) => setActiveImageIndex(value - 1)\n\t\t\t\t\t}),\n\t\t\t\t\t/* @__PURE__ */ jsx(\"button\", {\n\t\t\t\t\t\ttype: \"button\",\n\t\t\t\t\t\t\"aria-label\": \"Zoom in\",\n\t\t\t\t\t\tclassName: buttonClassName,\n\t\t\t\t\t\tonClick: () => handleToggleZoom(.25),\n\t\t\t\t\t\tchildren: /* @__PURE__ */ jsx(ZoomInIcon, { \"aria-hidden\": \"true\" })\n\t\t\t\t\t}),\n\t\t\t\t\t/* @__PURE__ */ jsx(\"button\", {\n\t\t\t\t\t\ttype: \"button\",\n\t\t\t\t\t\t\"aria-label\": \"Zoom out\",\n\t\t\t\t\t\tclassName: buttonClassName,\n\t\t\t\t\t\tonClick: () => handleToggleZoom(-.25),\n\t\t\t\t\t\tchildren: /* @__PURE__ */ jsx(ZoomOutIcon, { \"aria-hidden\": \"true\" })\n\t\t\t\t\t}),\n\t\t\t\t\t/* @__PURE__ */ jsx(\"button\", {\n\t\t\t\t\t\ttype: \"button\",\n\t\t\t\t\t\t\"aria-label\": \"Reset zoom\",\n\t\t\t\t\t\tclassName: buttonClassName,\n\t\t\t\t\t\tonClick: () => handleToggleZoom(\"reset\"),\n\t\t\t\t\t\tchildren: /* @__PURE__ */ jsx(OneToOneIcon, { \"aria-hidden\": \"true\" })\n\t\t\t\t\t})\n\t\t\t\t]\n\t\t\t})\n\t\t]\n\t}), document.body);\n}\n\n//#endregion\n//#region src/components/input/Input.tsx\nconst inputVariants = cva(`\n      univer-box-border univer-w-full univer-rounded-md univer-bg-white univer-transition-colors univer-duration-200\n      placeholder:univer-text-gray-400\n      focus:univer-border-primary-600 focus:univer-outline-none focus:univer-ring-2 focus:univer-ring-primary-50\n      dark:!univer-bg-gray-700 dark:!univer-text-white\n      dark:focus:!univer-ring-primary-900\n    `, {\n\tvariants: { size: {\n\t\tmini: \"univer-h-7 univer-px-1.5 univer-text-sm\",\n\t\tsmall: \"univer-h-8 univer-px-2 univer-text-sm\",\n\t\tmiddle: \"univer-h-10 univer-px-3 univer-text-base\",\n\t\tlarge: \"univer-h-12 univer-px-4 univer-text-lg\"\n\t} },\n\tdefaultVariants: { size: \"small\" }\n});\nconst Input = forwardRef(({ autoFocus = false, className, style, type = \"text\", placeholder, value, size = \"small\", allowClear = false, disabled = false, onClick, onKeyDown, onChange, onFocus, onBlur, slot, inputClass, inputStyle, ...props }, ref) => {\n\tconst handleClear = (e) => {\n\t\te.stopPropagation();\n\t\tonChange === null || onChange === void 0 || onChange(\"\");\n\t};\n\tconst handleChange = (e) => {\n\t\tonChange === null || onChange === void 0 || onChange(e.target.value);\n\t};\n\tconst hasSlotContent = useMemo(() => {\n\t\treturn allowClear && value && !disabled || slot;\n\t}, [\n\t\tallowClear,\n\t\tdisabled,\n\t\tslot,\n\t\tvalue\n\t]);\n\tconst [paddingRight, setPaddingRight] = useState(0);\n\tconst slotRef = useRef(null);\n\tuseEffect(() => {\n\t\tlet observer = null;\n\t\tif (slot && slotRef.current) {\n\t\t\tobserver = new MutationObserver(() => {\n\t\t\t\tif (slotRef.current) setPaddingRight(slotRef.current.offsetWidth + 8);\n\t\t\t});\n\t\t\tobserver.observe(slotRef.current, {\n\t\t\t\tchildList: true,\n\t\t\t\tsubtree: true\n\t\t\t});\n\t\t\tsetPaddingRight(slotRef.current.offsetWidth + 8);\n\t\t}\n\t\treturn () => observer === null || observer === void 0 ? void 0 : observer.disconnect();\n\t}, [slotRef.current]);\n\tuseEffect(() => {\n\t\tif (allowClear && !(slot && slotRef.current)) setPaddingRight(26);\n\t}, []);\n\treturn /* @__PURE__ */ jsxs(\"div\", {\n\t\t\"data-u-comp\": \"input\",\n\t\tclassName: clsx(\"univer-relative univer-inline-flex univer-w-full univer-items-center univer-rounded-md\", disabled && \"univer-cursor-not-allowed\", className),\n\t\tstyle,\n\t\tchildren: [/* @__PURE__ */ jsx(\"input\", {\n\t\t\tref,\n\t\t\ttype,\n\t\t\tclassName: clsx(inputVariants({ size }), borderClassName, disabled && `\n                          univer-cursor-not-allowed univer-bg-gray-50 univer-text-gray-400\n                          dark:!univer-text-gray-500\n                        `, allowClear && !slot && \"univer-pr-8\", inputClass),\n\t\t\tplaceholder,\n\t\t\tvalue,\n\t\t\tdisabled,\n\t\t\tautoFocus,\n\t\t\tonClick,\n\t\t\tonKeyDown,\n\t\t\tonChange: handleChange,\n\t\t\tonFocus,\n\t\t\tonBlur,\n\t\t\tstyle: {\n\t\t\t\t...inputStyle,\n\t\t\t\tpaddingRight\n\t\t\t},\n\t\t\t...props\n\t\t}), hasSlotContent && /* @__PURE__ */ jsxs(\"div\", {\n\t\t\tclassName: \"univer-absolute univer-right-2 univer-flex univer-items-center univer-gap-1 univer-rounded-full\",\n\t\t\tref: slotRef,\n\t\t\tchildren: [slot, allowClear && value && !disabled && /* @__PURE__ */ jsx(\"button\", {\n\t\t\t\ttype: \"button\",\n\t\t\t\tonClick: handleClear,\n\t\t\t\tclassName: \"univer-flex univer-size-4 univer-cursor-pointer univer-items-center univer-rounded-full univer-border-none univer-bg-transparent univer-p-1 univer-text-gray-400 univer-transition-colors univer-duration-200 hover:univer-text-gray-500 focus:univer-outline-none\",\n\t\t\t\tchildren: /* @__PURE__ */ jsx(CloseIcon, { className: \"univer-size-3\" })\n\t\t\t})]\n\t\t})]\n\t});\n});\n\n//#endregion\n//#region src/components/input-number/InputNumber.tsx\nconst InputNumber = forwardRef(({ value, defaultValue, size = \"small\", min = Number.MIN_SAFE_INTEGER, max = Number.MAX_SAFE_INTEGER, step = 1, precision, formatter, parser, controls = true, className, inputClassName, controlsClassName, disabled, onChange, onKeyDown, onPressEnter, onFocus, onBlur, allowEmpty = false }, ref) => {\n\tconst [internalValue, setInternalValue] = useState(value !== void 0 ? value : defaultValue !== void 0 ? defaultValue : null);\n\tconst lastValidValueRef = useRef(internalValue);\n\tconst [inputValue, setInputValue] = useState(formatValue(internalValue));\n\tconst inputRef = useRef(null);\n\tconst longPressTimerRef = useRef(null);\n\tconst longPressIntervalRef = useRef(null);\n\tconst mergedRef = (node) => {\n\t\tif (ref) if (typeof ref === \"function\") ref(node);\n\t\telse ref.current = node;\n\t\tinputRef.current = node;\n\t};\n\tuseEffect(() => {\n\t\tif (value !== void 0 && value !== internalValue) {\n\t\t\tsetInternalValue(value);\n\t\t\tlastValidValueRef.current = value;\n\t\t\tsetInputValue(formatValue(value));\n\t\t}\n\t}, [value]);\n\tuseEffect(() => {\n\t\tif (internalValue !== null) lastValidValueRef.current = internalValue;\n\t}, [internalValue]);\n\tuseEffect(() => {\n\t\treturn () => {\n\t\t\tif (longPressTimerRef.current) clearTimeout(longPressTimerRef.current);\n\t\t\tif (longPressIntervalRef.current) clearInterval(longPressIntervalRef.current);\n\t\t};\n\t}, []);\n\tfunction formatValue(val) {\n\t\tif (val === null || val === void 0) return \"\";\n\t\tlet formattedValue = val;\n\t\tif (precision !== void 0) formattedValue = Number(val).toFixed(precision);\n\t\tif (formatter) return formatter(formattedValue);\n\t\treturn String(formattedValue);\n\t}\n\tfunction parseValue(val) {\n\t\tif (!val) return null;\n\t\tlet parsedValue = val;\n\t\tif (parser) parsedValue = parser(val);\n\t\ttry {\n\t\t\tconst parts = parsedValue.replace(/[^\\d.-]/g, \"\").split(\".\");\n\t\t\tconst firstPart = parts[0];\n\t\t\tconst secondPart = parts.length > 1 ? parts.slice(1).join(\"\") : \"\";\n\t\t\tconst normalizedValue = firstPart + (secondPart ? `.${secondPart}` : \"\");\n\t\t\tconst num = Number(normalizedValue);\n\t\t\tif (Number.isNaN(num)) return null;\n\t\t\tlet result;\n\t\t\tif (precision !== void 0) {\n\t\t\t\tconst factor = 10 ** precision;\n\t\t\t\tconst roundedNum = Math.round(num * factor) / factor;\n\t\t\t\tif (roundedNum.toString().includes(\"e\")) result = Number.parseFloat(roundedNum.toFixed(precision));\n\t\t\t\telse result = roundedNum;\n\t\t\t} else if (num.toString().includes(\"e\")) result = Number.parseFloat(num.toFixed(16).replace(/\\.?0+$/, \"\"));\n\t\t\telse result = num;\n\t\t\tif (max !== void 0 && result > max) result = max;\n\t\t\tif (min !== void 0 && result < min) result = min;\n\t\t\treturn result;\n\t\t} catch (e) {\n\t\t\treturn null;\n\t\t}\n\t}\n\tfunction handleInputChange(value) {\n\t\tsetInputValue(value);\n\t\tif (allowEmpty && value === \"\") {\n\t\t\tsetInternalValue(null);\n\t\t\tonChange === null || onChange === void 0 || onChange(null);\n\t\t\treturn;\n\t\t}\n\t\tconst parsedValue = parseValue(value);\n\t\tsetInternalValue(parsedValue);\n\t\tonChange === null || onChange === void 0 || onChange(parsedValue);\n\t}\n\tfunction handleBlur(e) {\n\t\tif (internalValue === null) {\n\t\t\tif (inputValue === \"\" && allowEmpty) {\n\t\t\t\tif (onChange) onChange(null);\n\t\t\t} else {\n\t\t\t\tconst valueToRestore = lastValidValueRef.current;\n\t\t\t\tsetInternalValue(valueToRestore);\n\t\t\t\tsetInputValue(formatValue(valueToRestore));\n\t\t\t\tif (onChange) onChange(valueToRestore);\n\t\t\t}\n\t\t\tonBlur === null || onBlur === void 0 || onBlur(e);\n\t\t\treturn;\n\t\t}\n\t\tlet valueInRange = internalValue;\n\t\tif (max !== void 0 && valueInRange > max) valueInRange = max;\n\t\tif (min !== void 0 && valueInRange < min) valueInRange = min;\n\t\tif (valueInRange !== internalValue) {\n\t\t\tsetInternalValue(valueInRange);\n\t\t\tsetInputValue(formatValue(valueInRange));\n\t\t\tonChange === null || onChange === void 0 || onChange(valueInRange);\n\t\t} else setInputValue(formatValue(internalValue));\n\t\tonBlur === null || onBlur === void 0 || onBlur(e);\n\t}\n\tfunction handleStep(isUp) {\n\t\tif (disabled) return;\n\t\tconst stepValue = isUp ? step : -step;\n\t\tlet currentValue;\n\t\tif (internalValue !== null) currentValue = internalValue;\n\t\telse if (lastValidValueRef.current !== null) currentValue = lastValidValueRef.current;\n\t\telse currentValue = min > 0 ? min : 0;\n\t\tlet newValue = currentValue + stepValue;\n\t\tif (max !== void 0 && newValue > max) newValue = max;\n\t\tif (min !== void 0 && newValue < min) newValue = min;\n\t\tif (newValue === currentValue) return;\n\t\tsetInternalValue(newValue);\n\t\tlastValidValueRef.current = newValue;\n\t\tsetInputValue(formatValue(newValue));\n\t\tonChange === null || onChange === void 0 || onChange(newValue);\n\t}\n\tfunction handleKeyDown(e) {\n\t\tif (disabled) return;\n\t\tonKeyDown === null || onKeyDown === void 0 || onKeyDown(e);\n\t\tif (e.key === \"ArrowUp\") {\n\t\t\te.preventDefault();\n\t\t\thandleStep(true);\n\t\t} else if (e.key === \"ArrowDown\") {\n\t\t\te.preventDefault();\n\t\t\thandleStep(false);\n\t\t} else if (e.key === \"Enter\") onPressEnter === null || onPressEnter === void 0 || onPressEnter(e);\n\t}\n\tfunction handleClick(isUp) {\n\t\tvar _inputRef$current;\n\t\tif (disabled) return;\n\t\thandleStep(isUp);\n\t\t(_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 || _inputRef$current.focus();\n\t}\n\tconst incrementDisabled = disabled || max !== void 0 && internalValue !== null && internalValue >= max;\n\tconst decrementDisabled = disabled || min !== void 0 && internalValue !== null && internalValue <= min;\n\treturn /* @__PURE__ */ jsx(\"div\", {\n\t\tclassName: clsx(\"univer-inline-block\", className),\n\t\tchildren: /* @__PURE__ */ jsxs(\"div\", {\n\t\t\tclassName: \"univer-relative univer-w-full\",\n\t\t\tchildren: [/* @__PURE__ */ jsx(Input, {\n\t\t\t\tref: mergedRef,\n\t\t\t\tclassName: clsx(\"univer-box-border\", inputClassName),\n\t\t\t\tsize,\n\t\t\t\tvalue: inputValue,\n\t\t\t\tdisabled,\n\t\t\t\tonChange: handleInputChange,\n\t\t\t\tonFocus,\n\t\t\t\tonBlur: handleBlur,\n\t\t\t\tonKeyDown: handleKeyDown\n\t\t\t}), controls && /* @__PURE__ */ jsxs(\"div\", {\n\t\t\t\tclassName: clsx(\"univer-absolute univer-right-px univer-top-px univer-flex univer-h-[calc(100%-2px)] univer-flex-col univer-overflow-hidden univer-rounded-r-md before:univer-absolute before:univer-top-1/2 before:univer-block before:univer-h-px before:univer-w-full before:-univer-translate-y-1/2 before:univer-bg-gray-200 before:univer-content-[\\\"\\\"] rtl:univer-left-px rtl:univer-right-auto rtl:univer-rounded-l-md rtl:univer-rounded-r-none dark:before:!univer-bg-gray-600\", borderLeftClassName, borderLeftRTLClassName, controlsClassName),\n\t\t\t\tchildren: [/* @__PURE__ */ jsx(\"span\", {\n\t\t\t\t\tclassName: clsx(\"univer-box-border univer-flex univer-h-1/2 univer-w-5 univer-cursor-pointer univer-items-center univer-justify-center univer-border-none univer-bg-transparent univer-p-0 univer-transition-colors hover:univer-bg-gray-100 dark:!univer-text-white dark:hover:!univer-bg-gray-600\", incrementDisabled && \"univer-cursor-not-allowed univer-opacity-60\"),\n\t\t\t\t\trole: \"button\",\n\t\t\t\t\t\"aria-label\": \"increment\",\n\t\t\t\t\t\"aria-disabled\": incrementDisabled,\n\t\t\t\t\ttabIndex: -1,\n\t\t\t\t\tonMouseDown: (e) => e.preventDefault(),\n\t\t\t\t\tonClick: () => {\n\t\t\t\t\t\tif (incrementDisabled) return;\n\t\t\t\t\t\thandleClick(true);\n\t\t\t\t\t},\n\t\t\t\t\tchildren: \"+\"\n\t\t\t\t}), /* @__PURE__ */ jsx(\"span\", {\n\t\t\t\t\tclassName: clsx(\"univer-box-border univer-flex univer-h-1/2 univer-w-5 univer-cursor-pointer univer-items-center univer-justify-center univer-border-none univer-bg-transparent univer-p-0 univer-transition-colors hover:univer-bg-gray-100 dark:!univer-text-white dark:hover:!univer-bg-gray-600\", decrementDisabled && \"univer-cursor-not-allowed univer-opacity-60\"),\n\t\t\t\t\trole: \"button\",\n\t\t\t\t\t\"aria-label\": \"decrement\",\n\t\t\t\t\t\"aria-disabled\": decrementDisabled,\n\t\t\t\t\ttabIndex: -1,\n\t\t\t\t\tonMouseDown: (e) => e.preventDefault(),\n\t\t\t\t\tonClick: () => {\n\t\t\t\t\t\tif (decrementDisabled) return;\n\t\t\t\t\t\thandleClick(false);\n\t\t\t\t\t},\n\t\t\t\t\tchildren: \"-\"\n\t\t\t\t})]\n\t\t\t})]\n\t\t})\n\t});\n});\n\n//#endregion\n//#region src/components/segmented/Segmented.tsx\nfunction Segmented({ items, value, defaultValue, onChange, className = \"\" }) {\n\tconst [selectedItem, setSelectedItem] = useState(value !== void 0 ? value : defaultValue || items[0].value);\n\tconst [slideStyle, setSlideStyle] = useState({});\n\tconst itemRefs = useRef(/* @__PURE__ */ new Map());\n\tconst containerRef = useRef(null);\n\tuseEffect(() => {\n\t\tif (value !== void 0 && value !== selectedItem) setSelectedItem(value);\n\t}, [value]);\n\tconst updateSliderPosition = (newValue, oldValue) => {\n\t\tconst newItemElement = itemRefs.current.get(newValue);\n\t\tconst oldItemElement = oldValue ? itemRefs.current.get(oldValue) : null;\n\t\tif (newItemElement && containerRef.current) {\n\t\t\tconst containerRect = containerRef.current.getBoundingClientRect();\n\t\t\tconst newRect = newItemElement.getBoundingClientRect();\n\t\t\tconst newLeft = newRect.left - containerRect.left - 4;\n\t\t\tif (oldItemElement) setSlideStyle({\n\t\t\t\t\"--slide-from\": `${oldItemElement.getBoundingClientRect().left - containerRect.left - 4}px`,\n\t\t\t\t\"--slide-to\": `${newLeft}px`,\n\t\t\t\twidth: `${newRect.width}px`,\n\t\t\t\ttransform: `translateX(${newLeft}px)`\n\t\t\t});\n\t\t\telse setSlideStyle({\n\t\t\t\twidth: `${newRect.width}px`,\n\t\t\t\ttransform: `translateX(${newLeft}px)`\n\t\t\t});\n\t\t}\n\t};\n\tuseEffect(() => {\n\t\tupdateSliderPosition(selectedItem);\n\t}, [selectedItem]);\n\tconst handleClick = (itemValue) => {\n\t\tconst oldValue = selectedItem;\n\t\tsetSelectedItem(itemValue);\n\t\tonChange === null || onChange === void 0 || onChange(itemValue);\n\t\tupdateSliderPosition(itemValue, oldValue);\n\t};\n\treturn /* @__PURE__ */ jsxs(\"div\", {\n\t\t\"data-u-comp\": \"segmented\",\n\t\tref: containerRef,\n\t\tclassName: clsx(\"univer-relative univer-box-border univer-flex univer-gap-4 univer-rounded-lg univer-bg-gray-100 univer-p-1 dark:!univer-bg-gray-800\", className),\n\t\tchildren: [/* @__PURE__ */ jsx(\"div\", {\n\t\t\tclassName: \"univer-animate-univer-slide univer-absolute univer-h-6 univer-rounded-md univer-bg-white univer-shadow-sm univer-transition-all univer-duration-200 dark:!univer-bg-gray-700 dark:!univer-text-gray-400\",\n\t\t\tstyle: slideStyle\n\t\t}), items.map((item) => /* @__PURE__ */ jsx(\"button\", {\n\t\t\tref: (el) => {\n\t\t\t\tif (el) itemRefs.current.set(item.value, el);\n\t\t\t},\n\t\t\tclassName: clsx(\"univer-relative univer-box-border univer-flex-1 univer-cursor-pointer univer-border-none univer-bg-transparent univer-px-3 univer-py-1 univer-text-xs univer-font-medium univer-transition-colors\", {\n\t\t\t\t\"univer-text-gray-900 dark:!univer-text-white\": selectedItem === item.value,\n\t\t\t\t\"univer-text-gray-500 hover:univer-text-gray-900 dark:hover:!univer-text-white\": selectedItem !== item.value\n\t\t\t}),\n\t\t\ttype: \"button\",\n\t\t\tonClick: () => handleClick(item.value),\n\t\t\tchildren: item.label\n\t\t}, String(item.value)))]\n\t});\n}\n\n//#endregion\n//#region src/components/tooltip/Tooltip.tsx\nfunction Tooltip(props) {\n\tconst { children, className, asChild = true, title, placement = \"bottom\", showIfEllipsis = false, visible: controlledVisible, onVisibleChange } = props;\n\tconst { direction } = useContext(ConfigContext);\n\tconst [uncontrolledVisible, setUncontrolledVisible] = useState(false);\n\tconst isControlled = controlledVisible !== void 0;\n\tconst visible = isControlled ? controlledVisible : uncontrolledVisible;\n\tconst triggerRef = useRef(null);\n\tconst tooltipRef = useRef(null);\n\tconst arrowRef = useRef(null);\n\tconst [coords, setCoords] = useState(null);\n\tconst [currentPlacement, setCurrentPlacement] = useState(placement);\n\tfunction isContentOverflowing(element) {\n\t\treturn Math.abs(element.scrollWidth - element.clientWidth) > 1;\n\t}\n\tfunction showTooltip() {\n\t\tif (isControlled) onVisibleChange === null || onVisibleChange === void 0 || onVisibleChange(true);\n\t\telse setUncontrolledVisible(true);\n\t}\n\tfunction hideTooltip() {\n\t\tif (isControlled) onVisibleChange === null || onVisibleChange === void 0 || onVisibleChange(false);\n\t\telse setUncontrolledVisible(false);\n\t}\n\tuseLayoutEffect(() => {\n\t\tif (!visible) return;\n\t\tconst trigger = triggerRef.current;\n\t\tconst tip = tooltipRef.current;\n\t\tif (!trigger || !tip) return;\n\t\tconst triggerRect = trigger.getBoundingClientRect();\n\t\tconst tipRect = tip.getBoundingClientRect();\n\t\tconst offset = 8;\n\t\tconst viewportWidth = window.innerWidth;\n\t\tconst viewportHeight = window.innerHeight;\n\t\tconst placements = [\n\t\t\tplacement,\n\t\t\t\"bottom\",\n\t\t\t\"top\",\n\t\t\t\"right\",\n\t\t\t\"left\"\n\t\t];\n\t\tlet chosen = placement;\n\t\tlet top = 0;\n\t\tlet left = 0;\n\t\tconst computeFor = (p) => {\n\t\t\tlet t = 0;\n\t\t\tlet l = 0;\n\t\t\tif (p === \"bottom\") {\n\t\t\t\tt = triggerRect.bottom + offset;\n\t\t\t\tl = triggerRect.left + triggerRect.width / 2 - tipRect.width / 2;\n\t\t\t} else if (p === \"top\") {\n\t\t\t\tt = triggerRect.top - tipRect.height - offset;\n\t\t\t\tl = triggerRect.left + triggerRect.width / 2 - tipRect.width / 2;\n\t\t\t} else if (p === \"left\") {\n\t\t\t\tt = triggerRect.top + triggerRect.height / 2 - tipRect.height / 2;\n\t\t\t\tl = triggerRect.left - tipRect.width - offset;\n\t\t\t} else {\n\t\t\t\tt = triggerRect.top + triggerRect.height / 2 - tipRect.height / 2;\n\t\t\t\tl = triggerRect.right + offset;\n\t\t\t}\n\t\t\treturn {\n\t\t\t\tt,\n\t\t\t\tl\n\t\t\t};\n\t\t};\n\t\tfor (const p of placements) {\n\t\t\tconst { t, l } = computeFor(p);\n\t\t\tconst fitsHorizontally = l >= 0 && l + tipRect.width <= viewportWidth;\n\t\t\tconst fitsVertically = t >= 0 && t + tipRect.height <= viewportHeight;\n\t\t\tif (fitsHorizontally && fitsVertically) {\n\t\t\t\tchosen = p;\n\t\t\t\ttop = t;\n\t\t\t\tleft = l;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\tif (!top && !left) {\n\t\t\tconst c = computeFor(placement);\n\t\t\ttop = Math.min(Math.max(0, c.t), viewportHeight - tipRect.height);\n\t\t\tleft = Math.min(Math.max(0, c.l), viewportWidth - tipRect.width);\n\t\t}\n\t\tsetCurrentPlacement(chosen);\n\t\tsetCoords({\n\t\t\ttop: Math.round(top + window.scrollY),\n\t\t\tleft: Math.round(left + window.scrollX)\n\t\t});\n\t}, [visible, placement]);\n\tuseEffect(() => {\n\t\tif (!visible) return;\n\t\tconst handler = () => {\n\t\t\tif (!triggerRef.current || !tooltipRef.current) return;\n\t\t\tconst triggerRect = triggerRef.current.getBoundingClientRect();\n\t\t\tconst tipRect = tooltipRef.current.getBoundingClientRect();\n\t\t\tconst offset = 8;\n\t\t\tlet top = 0;\n\t\t\tlet left = 0;\n\t\t\tif (currentPlacement === \"bottom\") {\n\t\t\t\ttop = triggerRect.bottom + offset;\n\t\t\t\tleft = triggerRect.left + triggerRect.width / 2 - tipRect.width / 2;\n\t\t\t} else if (currentPlacement === \"top\") {\n\t\t\t\ttop = triggerRect.top - tipRect.height - offset;\n\t\t\t\tleft = triggerRect.left + triggerRect.width / 2 - tipRect.width / 2;\n\t\t\t} else if (currentPlacement === \"left\") {\n\t\t\t\ttop = triggerRect.top + triggerRect.height / 2 - tipRect.height / 2;\n\t\t\t\tleft = triggerRect.left - tipRect.width - offset;\n\t\t\t} else {\n\t\t\t\ttop = triggerRect.top + triggerRect.height / 2 - tipRect.height / 2;\n\t\t\t\tleft = triggerRect.right + offset;\n\t\t\t}\n\t\t\tsetCoords({\n\t\t\t\ttop: Math.round(top + window.scrollY),\n\t\t\t\tleft: Math.round(left + window.scrollX)\n\t\t\t});\n\t\t};\n\t\twindow.addEventListener(\"scroll\", handler, true);\n\t\twindow.addEventListener(\"resize\", handler);\n\t\treturn () => {\n\t\t\twindow.removeEventListener(\"scroll\", handler, true);\n\t\t\twindow.removeEventListener(\"resize\", handler);\n\t\t};\n\t}, [visible, currentPlacement]);\n\tconst commonProps = {\n\t\tref: (node) => triggerRef.current = node,\n\t\tonMouseEnter: () => {\n\t\t\tif (showIfEllipsis && triggerRef.current) {\n\t\t\t\tif (!isContentOverflowing(triggerRef.current)) return;\n\t\t\t}\n\t\t\tshowTooltip();\n\t\t},\n\t\tonMouseLeave: () => hideTooltip(),\n\t\tonFocus: () => showTooltip(),\n\t\tonBlur: () => hideTooltip()\n\t};\n\tconst triggerElement = asChild ? /* @__PURE__ */ jsx(\"span\", {\n\t\t...commonProps,\n\t\tclassName: \"univer-inline-block univer-max-w-full univer-truncate\",\n\t\tchildren\n\t}) : /* @__PURE__ */ jsx(\"button\", {\n\t\ttype: \"button\",\n\t\t...commonProps,\n\t\tchildren\n\t});\n\tlet tooltipNode = null;\n\tif (typeof document !== \"undefined\" && visible && title && document.body) {\n\t\tvar _coords$top, _coords$left;\n\t\ttooltipNode = createPortal(/* @__PURE__ */ jsxs(\"div\", {\n\t\t\tref: tooltipRef,\n\t\t\tdir: direction,\n\t\t\trole: \"tooltip\",\n\t\t\tclassName: clsx(\"univer-animate-in univer-fade-in-0 univer-zoom-in-95 univer-pointer-events-auto univer-absolute univer-z-[1081] univer-box-border univer-w-fit univer-max-w-sm univer-text-balance univer-rounded-lg univer-bg-gray-700 univer-px-2.5 univer-py-2 univer-text-xs univer-font-medium univer-text-white univer-shadow-lg univer-drop-shadow-sm dark:!univer-bg-gray-100 dark:!univer-text-gray-900\", className),\n\t\t\tstyle: {\n\t\t\t\ttop: (_coords$top = coords === null || coords === void 0 ? void 0 : coords.top) !== null && _coords$top !== void 0 ? _coords$top : -9999,\n\t\t\t\tleft: (_coords$left = coords === null || coords === void 0 ? void 0 : coords.left) !== null && _coords$left !== void 0 ? _coords$left : -9999\n\t\t\t},\n\t\t\tonMouseEnter: () => showTooltip(),\n\t\t\tonMouseLeave: () => hideTooltip(),\n\t\t\tchildren: [/* @__PURE__ */ jsx(\"div\", {\n\t\t\t\tclassName: \"univer-break-words\",\n\t\t\t\tchildren: title\n\t\t\t}), /* @__PURE__ */ jsx(\"div\", {\n\t\t\t\tref: arrowRef,\n\t\t\t\tclassName: \"univer-absolute univer-size-2.5 univer-rotate-45 univer-rounded-sm univer-bg-gray-700 dark:!univer-bg-gray-100\",\n\t\t\t\tstyle: {\n\t\t\t\t\t...currentPlacement === \"bottom\" && {\n\t\t\t\t\t\ttop: -5,\n\t\t\t\t\t\tleft: \"50%\",\n\t\t\t\t\t\ttransform: \"translateX(-50%) rotate(45deg)\"\n\t\t\t\t\t},\n\t\t\t\t\t...currentPlacement === \"top\" && {\n\t\t\t\t\t\tbottom: -5,\n\t\t\t\t\t\tleft: \"50%\",\n\t\t\t\t\t\ttransform: \"translateX(-50%) rotate(45deg)\"\n\t\t\t\t\t},\n\t\t\t\t\t...currentPlacement === \"left\" && {\n\t\t\t\t\t\tright: -5,\n\t\t\t\t\t\ttop: \"50%\",\n\t\t\t\t\t\ttransform: \"translateY(-50%) rotate(45deg)\"\n\t\t\t\t\t},\n\t\t\t\t\t...currentPlacement === \"right\" && {\n\t\t\t\t\t\tleft: -5,\n\t\t\t\t\t\ttop: \"50%\",\n\t\t\t\t\t\ttransform: \"translateY(-50%) rotate(45deg)\"\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t})]\n\t\t}), document.body);\n\t}\n\treturn /* @__PURE__ */ jsxs(Fragment, { children: [triggerElement, tooltipNode] });\n}\n\n//#endregion\n//#region src/components/gradient-color-picker/GradientColorPicker.tsx\n/**\n* Copyright 2023-present DreamNum Co., Ltd.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n*     http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\nconst DEFAULT_VALUE = {\n\ttype: \"linear\",\n\tstops: [{\n\t\tcolor: \"#ffffff\",\n\t\toffset: 0\n\t}, {\n\t\tcolor: \"#000000\",\n\t\toffset: 100\n\t}],\n\tangle: 90\n};\nfunction GradientColorPicker(props) {\n\tvar _value$stops$selected, _value$stops$selected2;\n\tconst { className, value = DEFAULT_VALUE, onChange } = props;\n\tconst { locale } = useContext(ConfigContext);\n\tconst [selectedIndex, setSelectedIndex] = useState(0);\n\tconst barRef = useRef(null);\n\tconst cleanupRef = useRef(null);\n\tuseEffect(() => {\n\t\tsetSelectedIndex((prev) => {\n\t\t\tif (prev >= value.stops.length) return Math.max(0, value.stops.length - 1);\n\t\t\treturn prev;\n\t\t});\n\t}, [value.stops.length]);\n\tuseEffect(() => {\n\t\treturn () => {\n\t\t\tvar _cleanupRef$current;\n\t\t\t(_cleanupRef$current = cleanupRef.current) === null || _cleanupRef$current === void 0 || _cleanupRef$current.call(cleanupRef);\n\t\t};\n\t}, []);\n\tconst stops = useMemo(() => {\n\t\treturn [...value.stops].sort((a, b) => a.offset - b.offset);\n\t}, [value.stops]);\n\tconst handleTypeChange = (type) => {\n\t\tonChange === null || onChange === void 0 || onChange({\n\t\t\t...value,\n\t\t\ttype\n\t\t});\n\t};\n\tconst handleAngleChange = (angle) => {\n\t\tonChange === null || onChange === void 0 || onChange({\n\t\t\t...value,\n\t\t\tangle: angle !== null && angle !== void 0 ? angle : 0\n\t\t});\n\t};\n\tconst handleStopColorChange = (color) => {\n\t\tconst newStops = [...value.stops];\n\t\tnewStops[selectedIndex] = {\n\t\t\t...newStops[selectedIndex],\n\t\t\tcolor\n\t\t};\n\t\tonChange === null || onChange === void 0 || onChange({\n\t\t\t...value,\n\t\t\tstops: newStops\n\t\t});\n\t};\n\tconst handleStopOffsetChange = (offset) => {\n\t\tif (offset === null) return;\n\t\tconst newStops = [...value.stops];\n\t\tnewStops[selectedIndex] = {\n\t\t\t...newStops[selectedIndex],\n\t\t\toffset\n\t\t};\n\t\tonChange === null || onChange === void 0 || onChange({\n\t\t\t...value,\n\t\t\tstops: newStops\n\t\t});\n\t};\n\tconst handleAddStop = (e) => {\n\t\tif (!barRef.current) return;\n\t\tconst rect = barRef.current.getBoundingClientRect();\n\t\tconst offset = Math.round((e.clientX - rect.left) / rect.width * 100);\n\t\tconst newStop = {\n\t\t\tcolor: ([...stops].reverse().find((s) => s.offset <= offset) || stops[0]).color,\n\t\t\toffset\n\t\t};\n\t\tconst newStops = [...value.stops, newStop];\n\t\tonChange === null || onChange === void 0 || onChange({\n\t\t\t...value,\n\t\t\tstops: newStops\n\t\t});\n\t\tsetSelectedIndex(newStops.length - 1);\n\t};\n\tconst handleRemoveStop = () => {\n\t\tif (value.stops.length <= 2) return;\n\t\tconst newStops = value.stops.filter((_, i) => i !== selectedIndex);\n\t\tonChange === null || onChange === void 0 || onChange({\n\t\t\t...value,\n\t\t\tstops: newStops\n\t\t});\n\t\tsetSelectedIndex(0);\n\t};\n\tconst gradientPreview = useMemo(() => {\n\t\treturn `linear-gradient(to right, ${stops.map((s) => `${s.color} ${s.offset}%`).join(\", \")})`;\n\t}, [stops]);\n\tconst mainPreview = useMemo(() => {\n\t\tconst stopsStr = stops.map((s) => `${s.color} ${s.offset}%`).join(\", \");\n\t\tswitch (value.type) {\n\t\t\tcase \"linear\": return `linear-gradient(${value.angle}deg, ${stopsStr})`;\n\t\t\tcase \"radial\": return `radial-gradient(circle, ${stopsStr})`;\n\t\t\tcase \"angular\": return `conic-gradient(from ${value.angle}deg, ${stopsStr})`;\n\t\t\tcase \"diamond\": return `radial-gradient(circle, ${stopsStr})`;\n\t\t\tdefault: return `linear-gradient(${value.angle}deg, ${stopsStr})`;\n\t\t}\n\t}, [value, stops]);\n\treturn /* @__PURE__ */ jsxs(\"div\", {\n\t\tclassName: clsx(\"univer-flex univer-w-64 univer-flex-col univer-gap-4 univer-rounded-lg univer-bg-white univer-p-4 univer-shadow-lg dark:!univer-bg-gray-800\", className),\n\t\tchildren: [\n\t\t\t/* @__PURE__ */ jsx(Segmented, {\n\t\t\t\titems: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: locale === null || locale === void 0 ? void 0 : locale.GradientColorPicker.linear,\n\t\t\t\t\t\tvalue: \"linear\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: locale === null || locale === void 0 ? void 0 : locale.GradientColorPicker.radial,\n\t\t\t\t\t\tvalue: \"radial\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: locale === null || locale === void 0 ? void 0 : locale.GradientColorPicker.angular,\n\t\t\t\t\t\tvalue: \"angular\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: locale === null || locale === void 0 ? void 0 : locale.GradientColorPicker.diamond,\n\t\t\t\t\t\tvalue: \"diamond\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\tvalue: value.type,\n\t\t\t\tonChange: (v) => handleTypeChange(v)\n\t\t\t}),\n\t\t\t/* @__PURE__ */ jsx(\"div\", {\n\t\t\t\t\"data-u-comp\": \"gradient-color-picker-preview\",\n\t\t\t\tclassName: \"univer-h-32 univer-w-full univer-rounded-md univer-border univer-border-gray-200 dark:!univer-border-gray-600\",\n\t\t\t\tstyle: { background: mainPreview }\n\t\t\t}),\n\t\t\t/* @__PURE__ */ jsxs(\"div\", {\n\t\t\t\tclassName: \"univer-relative univer-mt-4 univer-h-6\",\n\t\t\t\tchildren: [/* @__PURE__ */ jsx(\"div\", {\n\t\t\t\t\tref: barRef,\n\t\t\t\t\t\"data-u-comp\": \"gradient-color-picker-bar\",\n\t\t\t\t\tclassName: \"univer-absolute univer-inset-x-0 univer-top-1/2 univer-h-2 -univer-translate-y-1/2 univer-cursor-crosshair univer-rounded-full\",\n\t\t\t\t\tstyle: { background: gradientPreview },\n\t\t\t\t\tonClick: handleAddStop\n\t\t\t\t}), value.stops.map((stop, index) => /* @__PURE__ */ jsx(\"div\", {\n\t\t\t\t\t\"data-u-comp\": \"gradient-color-picker-stop\",\n\t\t\t\t\t\"data-selected\": selectedIndex === index,\n\t\t\t\t\tclassName: clsx(\"univer-absolute univer-top-1/2 univer-size-4 -univer-translate-x-1/2 -univer-translate-y-1/2 univer-cursor-pointer univer-rounded-full univer-border-2 univer-border-white univer-shadow-md\", selectedIndex === index ? \"univer-z-10 univer-ring-2 univer-ring-primary-500\" : \"univer-z-0\"),\n\t\t\t\t\tstyle: {\n\t\t\t\t\t\tleft: `${stop.offset}%`,\n\t\t\t\t\t\tbackgroundColor: stop.color\n\t\t\t\t\t},\n\t\t\t\t\tonClick: (e) => {\n\t\t\t\t\t\te.stopPropagation();\n\t\t\t\t\t\tsetSelectedIndex(index);\n\t\t\t\t\t},\n\t\t\t\t\tonPointerDown: (e) => {\n\t\t\t\t\t\tconst startX = e.clientX;\n\t\t\t\t\t\tconst startOffset = stop.offset;\n\t\t\t\t\t\tconst handlePointerMove = (moveEvent) => {\n\t\t\t\t\t\t\tif (!barRef.current) return;\n\t\t\t\t\t\t\tconst rect = barRef.current.getBoundingClientRect();\n\t\t\t\t\t\t\tconst deltaOffset = (moveEvent.clientX - startX) / rect.width * 100;\n\t\t\t\t\t\t\tconst newOffset = Math.max(0, Math.min(100, Math.round(startOffset + deltaOffset)));\n\t\t\t\t\t\t\tconst newStops = [...value.stops];\n\t\t\t\t\t\t\tnewStops[index] = {\n\t\t\t\t\t\t\t\t...newStops[index],\n\t\t\t\t\t\t\t\toffset: newOffset\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\tonChange === null || onChange === void 0 || onChange({\n\t\t\t\t\t\t\t\t...value,\n\t\t\t\t\t\t\t\tstops: newStops\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t};\n\t\t\t\t\t\tconst handlePointerUp = () => {\n\t\t\t\t\t\t\twindow.removeEventListener(\"pointermove\", handlePointerMove);\n\t\t\t\t\t\t\twindow.removeEventListener(\"pointerup\", handlePointerUp);\n\t\t\t\t\t\t\tcleanupRef.current = null;\n\t\t\t\t\t\t};\n\t\t\t\t\t\tcleanupRef.current = handlePointerUp;\n\t\t\t\t\t\twindow.addEventListener(\"pointermove\", handlePointerMove);\n\t\t\t\t\t\twindow.addEventListener(\"pointerup\", handlePointerUp);\n\t\t\t\t\t}\n\t\t\t\t}, index))]\n\t\t\t}),\n\t\t\t/* @__PURE__ */ jsxs(\"div\", {\n\t\t\t\tclassName: \"univer-flex univer-items-end univer-gap-2\",\n\t\t\t\tchildren: [\n\t\t\t\t\t/* @__PURE__ */ jsxs(\"div\", {\n\t\t\t\t\t\tclassName: \"univer-flex-1\",\n\t\t\t\t\t\tchildren: [/* @__PURE__ */ jsx(\"div\", {\n\t\t\t\t\t\t\tclassName: \"univer-mb-1 univer-text-xs univer-text-gray-500\",\n\t\t\t\t\t\t\tchildren: locale === null || locale === void 0 ? void 0 : locale.GradientColorPicker.offset\n\t\t\t\t\t\t}), /* @__PURE__ */ jsx(InputNumber, {\n\t\t\t\t\t\t\tvalue: (_value$stops$selected = value.stops[selectedIndex]) === null || _value$stops$selected === void 0 ? void 0 : _value$stops$selected.offset,\n\t\t\t\t\t\t\tmin: 0,\n\t\t\t\t\t\t\tmax: 100,\n\t\t\t\t\t\t\tonChange: handleStopOffsetChange\n\t\t\t\t\t\t})]\n\t\t\t\t\t}),\n\t\t\t\t\t(value.type === \"linear\" || value.type === \"angular\") && /* @__PURE__ */ jsxs(\"div\", {\n\t\t\t\t\t\tclassName: \"univer-flex-1\",\n\t\t\t\t\t\tchildren: [/* @__PURE__ */ jsx(\"div\", {\n\t\t\t\t\t\t\tclassName: \"univer-mb-1 univer-text-xs univer-text-gray-500\",\n\t\t\t\t\t\t\tchildren: locale === null || locale === void 0 ? void 0 : locale.GradientColorPicker.angle\n\t\t\t\t\t\t}), /* @__PURE__ */ jsx(InputNumber, {\n\t\t\t\t\t\t\tvalue: value.angle,\n\t\t\t\t\t\t\tmin: 0,\n\t\t\t\t\t\t\tmax: 360,\n\t\t\t\t\t\t\tonChange: handleAngleChange\n\t\t\t\t\t\t})]\n\t\t\t\t\t}),\n\t\t\t\t\t/* @__PURE__ */ jsx(\"div\", {\n\t\t\t\t\t\tclassName: \"univer-flex univer-gap-1\",\n\t\t\t\t\t\tchildren: /* @__PURE__ */ jsx(Tooltip, {\n\t\t\t\t\t\t\ttitle: locale === null || locale === void 0 ? void 0 : locale.GradientColorPicker.delete,\n\t\t\t\t\t\t\tchildren: /* @__PURE__ */ jsx(Button, {\n\t\t\t\t\t\t\t\t\"data-u-comp\": \"gradient-color-picker-delete\",\n\t\t\t\t\t\t\t\tvariant: \"danger\",\n\t\t\t\t\t\t\t\tonClick: handleRemoveStop,\n\t\t\t\t\t\t\t\tdisabled: value.stops.length <= 2,\n\t\t\t\t\t\t\t\tchildren: /* @__PURE__ */ jsx(DeleteIcon, {})\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t})\n\t\t\t\t\t})\n\t\t\t\t]\n\t\t\t}),\n\t\t\t/* @__PURE__ */ jsx(\"div\", {\n\t\t\t\tclassName: \"univer-border-t univer-border-gray-100 univer-pt-4 dark:!univer-border-gray-700\",\n\t\t\t\tchildren: /* @__PURE__ */ jsx(ColorPicker, {\n\t\t\t\t\tvalue: (_value$stops$selected2 = value.stops[selectedIndex]) === null || _value$stops$selected2 === void 0 ? void 0 : _value$stops$selected2.color,\n\t\t\t\t\tonChange: handleStopColorChange\n\t\t\t\t})\n\t\t\t})\n\t\t]\n\t});\n}\n\n//#endregion\n//#region src/components/hover-card/HoverCardPrimitive.tsx\nconst HoverCardPrimitive = Root$3;\nconst HoverCardPortal = Portal$3;\nconst HoverCardTrigger = Trigger$2;\nconst HoverCardContent = forwardRef(({ className, align = \"center\", sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsx(Content$3, {\n\tref,\n\talign,\n\tsideOffset,\n\tclassName: clsx(\"data-[state=open]:univer-animate-in data-[state=open]:univer-fade-in-0 data-[state=open]:univer-zoom-in-95 data-[state=closed]:univer-animate-out data-[state=closed]:univer-fade-out-0 data-[state=closed]:univer-zoom-out-95 data-[side=bottom]:univer-slide-in-from-top-2 data-[side=left]:univer-slide-in-from-right-2 data-[side=right]:univer-slide-in-from-left-2 data-[side=top]:univer-slide-in-from-bottom-2 univer-z-[1080] univer-w-64 univer-origin-[--radix-hover-card-content-transform-origin] univer-rounded-md univer-bg-white univer-text-gray-900 univer-shadow-md univer-outline-none dark:!univer-bg-gray-900 dark:!univer-text-white\", borderClassName, className),\n\t...props\n}));\nHoverCardContent.displayName = Content$3.displayName;\n\n//#endregion\n//#region src/components/hover-card/HoverCard.tsx\nfunction HoverCard(props) {\n\tconst { children, overlay, disabled, openDelay = 200, open: controlledOpen, onOpenChange: controlledOnOpenChange, ...restProps } = props;\n\tconst [uncontrolledOpen, setUncontrolledOpen] = useState(false);\n\tconst isControlled = controlledOpen !== void 0;\n\tconst open = isControlled ? controlledOpen : uncontrolledOpen;\n\tfunction handleChangeOpen(newOpen) {\n\t\tif (disabled) return;\n\t\tif (!isControlled) setUncontrolledOpen(newOpen);\n\t\tcontrolledOnOpenChange === null || controlledOnOpenChange === void 0 || controlledOnOpenChange(newOpen);\n\t}\n\treturn /* @__PURE__ */ jsxs(HoverCardPrimitive, {\n\t\topen,\n\t\tonOpenChange: handleChangeOpen,\n\t\topenDelay,\n\t\tchildren: [/* @__PURE__ */ jsx(HoverCardTrigger, {\n\t\t\tasChild: true,\n\t\t\tchildren\n\t\t}), /* @__PURE__ */ jsx(HoverCardPortal, { children: /* @__PURE__ */ jsx(HoverCardContent, {\n\t\t\t...restProps,\n\t\t\tchildren: overlay\n\t\t}) })]\n\t});\n}\n\n//#endregion\n//#region src/components/kbd/Kbd.tsx\n/**\n* Copyright 2023-present DreamNum Co., Ltd.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n*     http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\nfunction KBD(props) {\n\tconst { keyboard, className } = props;\n\tconst keys = keyboard.split(\"+\");\n\treturn /* @__PURE__ */ jsx(\"span\", {\n\t\tclassName: clsx(\"univer-inline-block univer-h-6 univer-select-none univer-whitespace-nowrap univer-rounded-md univer-bg-gray-50 univer-px-2 univer-font-mono univer-text-xs/6 univer-font-medium univer-text-gray-700 dark:!univer-bg-gray-700 dark:!univer-text-white\", borderClassName, className),\n\t\tchildren: keys.map((text, index) => /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx(\"kbd\", {\n\t\t\tclassName: \"univer-inline-block univer-h-full\",\n\t\t\tchildren: text\n\t\t}), index < keys.length - 1 && /* @__PURE__ */ jsx(\"span\", {\n\t\t\tclassName: \"univer-inline-block univer-h-full univer-px-1\",\n\t\t\tchildren: \"+\"\n\t\t})] }, index))\n\t});\n}\n\n//#endregion\n//#region src/components/message/Message.tsx\nlet MessageType = /* @__PURE__ */ function(MessageType) {\n\tMessageType[\"Success\"] = \"success\";\n\tMessageType[\"Info\"] = \"info\";\n\tMessageType[\"Warning\"] = \"warning\";\n\tMessageType[\"Error\"] = \"error\";\n\tMessageType[\"Loading\"] = \"loading\";\n\treturn MessageType;\n}({});\nconst MESSAGE_TOASTER_ID = \"univer-message-toaster\";\nconst DEFAULT_MESSAGE_DURATION = 3e3;\nconst activeMessageIds = /* @__PURE__ */ new Set();\nconst loadingIcon = /* @__PURE__ */ jsx(LoadingMultiIcon, { className: \"univer-animate-spin univer-text-violet-500\" });\nlet messageCount = 0;\nconst iconMap = {\n\t[\"success\"]: /* @__PURE__ */ jsx(SuccessIcon, { className: \"univer-text-green-500\" }),\n\t[\"info\"]: /* @__PURE__ */ jsx(InfoIcon, { className: \"univer-text-sky-500 dark:!univer-text-sky-400\" }),\n\t[\"warning\"]: /* @__PURE__ */ jsx(WarningIcon, { className: \"univer-text-amber-500\" }),\n\t[\"error\"]: /* @__PURE__ */ jsx(ErrorIcon, { className: \"univer-text-red-500\" }),\n\t[\"loading\"]: loadingIcon\n};\nconst typeClassMap = {\n\t[\"success\"]: \"[&_[data-icon]]:univer-text-green-500\",\n\t[\"info\"]: \"[&_[data-icon]]:univer-text-sky-500\",\n\t[\"warning\"]: \"[&_[data-icon]]:univer-text-amber-500\",\n\t[\"error\"]: \"[&_[data-icon]]:univer-text-red-500\",\n\t[\"loading\"]: \"[&_[data-icon]]:univer-text-violet-500\"\n};\nconst resolveToastMethod = (type) => {\n\tswitch (type) {\n\t\tcase \"success\": return toast$1.success;\n\t\tcase \"warning\": return toast$1.warning;\n\t\tcase \"error\": return toast$1.error;\n\t\tcase \"loading\": return toast$1.loading;\n\t\tdefault: return toast$1.info;\n\t}\n};\nconst createMessageId = () => {\n\tconst id = `univer-message-${messageCount}`;\n\tmessageCount += 1;\n\treturn id;\n};\nconst Messager = ({ className, ...props }) => /* @__PURE__ */ jsx(Toaster$1, {\n\tid: MESSAGE_TOASTER_ID,\n\tposition: \"top-center\",\n\tvisibleToasts: 4,\n\tcloseButton: false,\n\texpand: false,\n\ticons: { loading: loadingIcon },\n\toffset: { top: 16 },\n\tclassName: clsx(\"[&_[data-sonner-toast]]:univer-bg-white/95 dark:[&_[data-sonner-toast]]:!univer-bg-gray-800/95 [&_[data-sonner-toast]]:univer-rounded-2xl [&_[data-sonner-toast]]:univer-border [&_[data-sonner-toast]]:univer-border-solid [&_[data-sonner-toast]]:univer-border-gray-200 [&_[data-sonner-toast]]:univer-shadow-[0_16px_40px_-20px_rgba(15,23,42,0.55)] [&_[data-sonner-toast]]:univer-backdrop-blur-sm dark:[&_[data-sonner-toast]]:!univer-border-gray-600\", className),\n\ttoastOptions: {\n\t\tduration: DEFAULT_MESSAGE_DURATION,\n\t\tclassNames: {\n\t\t\ttoast: `\n                  univer-group univer-min-h-0 univer-min-w-[320px] univer-max-w-[520px] univer-px-3.5 univer-py-3\n                  univer-font-sans univer-transition-all univer-duration-300\n                `,\n\t\t\ttitle: `\n                  univer-m-0 univer-font-sans univer-text-sm univer-font-medium univer-leading-5 univer-text-gray-700\n                  dark:!univer-text-gray-100\n                `,\n\t\t\tcontent: \"univer-gap-2.5\",\n\t\t\ticon: \"[&>svg]:univer-block [&>svg]:univer-size-4\",\n\t\t\tsuccess: typeClassMap[\"success\"],\n\t\t\tinfo: typeClassMap[\"info\"],\n\t\t\twarning: typeClassMap[\"warning\"],\n\t\t\terror: typeClassMap[\"error\"],\n\t\t\tloading: typeClassMap[\"loading\"]\n\t\t}\n\t},\n\t...props\n});\nconst message = ({ content, duration, id, onClose, type = \"info\" }) => {\n\tconst messageId = id !== null && id !== void 0 ? id : createMessageId();\n\tconst method = resolveToastMethod(type);\n\tlet closed = false;\n\tconst handleClose = () => {\n\t\tif (closed) return;\n\t\tclosed = true;\n\t\tactiveMessageIds.delete(messageId);\n\t\tonClose === null || onClose === void 0 || onClose();\n\t};\n\tmethod(content, {\n\t\tid: messageId,\n\t\ttoasterId: MESSAGE_TOASTER_ID,\n\t\tduration: duration !== null && duration !== void 0 ? duration : DEFAULT_MESSAGE_DURATION,\n\t\ticon: type === \"loading\" ? void 0 : iconMap[type],\n\t\tonDismiss: handleClose,\n\t\tonAutoClose: handleClose\n\t});\n\tactiveMessageIds.add(messageId);\n\treturn messageId;\n};\nconst removeMessage = (id) => {\n\tif (typeof id !== \"undefined\") {\n\t\ttoast$1.dismiss(id);\n\t\tactiveMessageIds.delete(id);\n\t\treturn;\n\t}\n\tactiveMessageIds.forEach((messageId) => {\n\t\ttoast$1.dismiss(messageId);\n\t});\n\tactiveMessageIds.clear();\n};\n\n//#endregion\n//#region src/components/panel/Panel.tsx\nfunction Panel(props) {\n\tconst { children, className, style } = props;\n\treturn /* @__PURE__ */ jsx(\"div\", {\n\t\t\"data-u-comp\": \"panel\",\n\t\tclassName: clsx(\"univer-flex univer-flex-col univer-gap-5 univer-py-2\", className),\n\t\tstyle,\n\t\tchildren\n\t});\n}\nfunction PanelSection(props) {\n\tconst { title, children, className, defaultExpanded = true, collapsible = true } = props;\n\tconst [expanded, setExpanded] = useState(defaultExpanded);\n\tconst contentId = useId();\n\tconst headerId = useId();\n\treturn /* @__PURE__ */ jsxs(\"div\", {\n\t\t\"data-u-comp\": \"panel-section\",\n\t\tclassName: clsx(\"univer-flex univer-flex-col\", className),\n\t\tchildren: [/* @__PURE__ */ jsxs(\"button\", {\n\t\t\tid: headerId,\n\t\t\ttype: \"button\",\n\t\t\t\"aria-expanded\": expanded,\n\t\t\t\"aria-controls\": contentId,\n\t\t\tdisabled: !collapsible,\n\t\t\tclassName: clsx(\"univer-box-border univer-flex univer-w-full univer-items-center univer-gap-1.5 univer-border-none univer-bg-transparent univer-p-0 univer-pb-2.5 univer-text-left univer-text-sm univer-font-medium univer-text-gray-700 dark:!univer-text-gray-200\", {\n\t\t\t\t\"univer-cursor-pointer\": collapsible,\n\t\t\t\t\"univer-cursor-default\": !collapsible\n\t\t\t}),\n\t\t\tonClick: () => collapsible && setExpanded((v) => !v),\n\t\t\tchildren: [collapsible && /* @__PURE__ */ jsx(DownIcon, { className: clsx(\"univer-size-2.5 univer-flex-shrink-0 univer-transition-transform\", {\n\t\t\t\t\"-univer-rotate-90\": !expanded,\n\t\t\t\t\"univer-rotate-0\": expanded\n\t\t\t}) }), /* @__PURE__ */ jsx(\"span\", { children: title })]\n\t\t}), /* @__PURE__ */ jsx(\"div\", {\n\t\t\tid: contentId,\n\t\t\trole: \"region\",\n\t\t\t\"aria-labelledby\": headerId,\n\t\t\tclassName: clsx(\"univer-overflow-hidden univer-transition-[max-height,opacity] univer-duration-300 univer-ease-in-out\", {\n\t\t\t\t\"univer-max-h-[1000px] univer-opacity-100\": expanded,\n\t\t\t\t\"univer-max-h-0 univer-opacity-0\": !expanded\n\t\t\t}),\n\t\t\tchildren: /* @__PURE__ */ jsx(\"div\", {\n\t\t\t\tclassName: \"univer-box-border univer-flex univer-flex-col univer-gap-3 univer-py-1\",\n\t\t\t\tchildren\n\t\t\t})\n\t\t})]\n\t});\n}\nfunction PanelField(props) {\n\tconst { label, children, className, required, error } = props;\n\treturn /* @__PURE__ */ jsxs(\"div\", {\n\t\t\"data-u-comp\": \"panel-field\",\n\t\tclassName: clsx(\"univer-flex univer-flex-col univer-gap-1.5\", className),\n\t\tchildren: [\n\t\t\t/* @__PURE__ */ jsxs(\"div\", {\n\t\t\t\tclassName: \"univer-flex univer-items-center univer-gap-1\",\n\t\t\t\tchildren: [/* @__PURE__ */ jsx(\"span\", {\n\t\t\t\t\tclassName: \"univer-text-xs univer-text-gray-600 dark:!univer-text-gray-300\",\n\t\t\t\t\tchildren: label\n\t\t\t\t}), required && /* @__PURE__ */ jsx(\"span\", {\n\t\t\t\t\tclassName: \"univer-text-xs univer-text-red-500\",\n\t\t\t\t\tchildren: \"*\"\n\t\t\t\t})]\n\t\t\t}),\n\t\t\t/* @__PURE__ */ jsx(\"div\", {\n\t\t\t\tclassName: \"univer-w-full\",\n\t\t\t\tchildren\n\t\t\t}),\n\t\t\terror && /* @__PURE__ */ jsx(\"span\", {\n\t\t\t\tclassName: \"univer-text-xs univer-text-red-500\",\n\t\t\t\tchildren: error\n\t\t\t})\n\t\t]\n\t});\n}\n\n//#endregion\n//#region src/components/popup/Popup.tsx\nconst POPUP_POINTER_OFFSET = 2;\nconst HIDDEN_POPUP_OFFSET = [-9999, -9999];\nfunction Popup(props) {\n\tconst { children, visible = false, offset = [0, 0], overflowVisible = false, placementY = \"below\" } = props;\n\tconst nodeRef = useRef(null);\n\tconst [realOffset, setRealOffset] = useState(HIDDEN_POPUP_OFFSET);\n\tconst { mountContainer, direction } = useContext(ConfigContext);\n\tconst calculateOffset = () => {\n\t\tconst element = nodeRef.current;\n\t\tif (!element) return null;\n\t\tconst [left, top] = offset;\n\t\tconst { clientWidth, clientHeight } = element;\n\t\tconst { innerWidth, innerHeight } = window;\n\t\tconst maxX = Math.max(0, innerWidth - clientWidth - POPUP_POINTER_OFFSET);\n\t\tconst maxY = Math.max(0, innerHeight - clientHeight - POPUP_POINTER_OFFSET);\n\t\tconst x = Math.min(Math.max(left, 0), maxX);\n\t\tconst topWithPlacement = placementY === \"above\" ? top - clientHeight : top;\n\t\treturn [x, Math.min(Math.max(topWithPlacement, 0), maxY)];\n\t};\n\tuseLayoutEffect(() => {\n\t\tif (!visible) {\n\t\t\tsetRealOffset(HIDDEN_POPUP_OFFSET);\n\t\t\treturn;\n\t\t}\n\t\tconst nextOffset = calculateOffset();\n\t\tif (nextOffset) setRealOffset(nextOffset);\n\t}, [\n\t\toffset,\n\t\tplacementY,\n\t\tvisible\n\t]);\n\tuseEffect(() => {\n\t\tif (!visible) return;\n\t\tconst handleResize = () => {\n\t\t\tconst nextOffset = calculateOffset();\n\t\t\tif (nextOffset) setRealOffset(nextOffset);\n\t\t};\n\t\twindow.addEventListener(\"resize\", handleResize);\n\t\treturn () => {\n\t\t\twindow.removeEventListener(\"resize\", handleResize);\n\t\t};\n\t}, [\n\t\toffset,\n\t\tplacementY,\n\t\tvisible\n\t]);\n\tfunction preventDefault(event) {\n\t\tevent.preventDefault();\n\t}\n\treturn createPortal(/* @__PURE__ */ jsx(CSSTransition, {\n\t\tin: visible,\n\t\tnodeRef,\n\t\ttimeout: 500,\n\t\tclassNames: {\n\t\t\tenter: \"univer-popup-enter\",\n\t\t\tenterActive: \"univer-popup-enter-active\",\n\t\t\tenterDone: \"univer-popup-enter-done\",\n\t\t\texitActive: \"univer-popup-exit\",\n\t\t\texitDone: \"univer-popup-exit-active\"\n\t\t},\n\t\tchildren: /* @__PURE__ */ jsx(\"section\", {\n\t\t\tref: nodeRef,\n\t\t\tdir: direction,\n\t\t\tclassName: \"univer-popup\",\n\t\t\tstyle: {\n\t\t\t\tleft: realOffset[0] + POPUP_POINTER_OFFSET,\n\t\t\t\ttop: realOffset[1] + POPUP_POINTER_OFFSET,\n\t\t\t\toverflow: overflowVisible ? \"visible\" : void 0\n\t\t\t},\n\t\t\tonContextMenu: preventDefault,\n\t\t\tchildren\n\t\t})\n\t}), mountContainer);\n}\n\n//#endregion\n//#region src/components/radio-group/RadioGroup.tsx\n/**\n* RadioGroup Component\n*/\nfunction RadioGroup(props) {\n\tconst { children, className, style, value, disabled = false, direction = \"horizontal\", onChange } = props;\n\tconst handleChange = (value) => {\n\t\tonChange(value);\n\t};\n\treturn /* @__PURE__ */ jsx(\"div\", {\n\t\tclassName: clsx(\"univer-flex univer-gap-2\", { \"univer-flex-col\": direction === \"vertical\" }, className),\n\t\tstyle,\n\t\tchildren: Children.map(children, (child, index) => {\n\t\t\tif (isValidElement(child)) return cloneElement(child, {\n\t\t\t\tkey: index,\n\t\t\t\tchildren: child.props.children,\n\t\t\t\tvalue: child.props.value,\n\t\t\t\tchecked: value === child.props.value,\n\t\t\t\tdisabled: disabled !== null && disabled !== void 0 ? disabled : child.props.disabled,\n\t\t\t\tonChange: handleChange\n\t\t\t});\n\t\t\treturn child;\n\t\t})\n\t});\n}\n\n//#endregion\n//#region src/components/radio/Radio.tsx\n/**\n* Radio Component\n*/\nfunction Radio(props) {\n\tconst { children, checked, value, disabled = false, onChange } = props;\n\tconst inputRef = useRef(null);\n\tfunction handleChange(e) {\n\t\te.stopPropagation();\n\t\tif (!onChange || disabled) return;\n\t\tif (typeof value !== \"undefined\") onChange && onChange(value);\n\t\telse {\n\t\t\tconst checked = inputRef.current.checked;\n\t\t\tonChange && onChange(checked);\n\t\t}\n\t}\n\treturn /* @__PURE__ */ jsxs(\"label\", {\n\t\t\"data-u-comp\": \"radio\",\n\t\tclassName: clsx(\"univer-box-border univer-inline-flex univer-items-center univer-gap-2 univer-text-sm\", {\n\t\t\t\"univer-cursor-pointer univer-text-gray-900 dark:!univer-text-white\": !disabled,\n\t\t\t\"univer-text-gray-400\": disabled\n\t\t}),\n\t\tchildren: [/* @__PURE__ */ jsxs(\"span\", {\n\t\t\tclassName: \"univer-relative univer-block\",\n\t\t\tchildren: [/* @__PURE__ */ jsx(\"input\", {\n\t\t\t\tref: inputRef,\n\t\t\t\tclassName: \"univer-absolute univer-size-0 univer-opacity-0\",\n\t\t\t\ttype: \"radio\",\n\t\t\t\tchecked,\n\t\t\t\tdisabled,\n\t\t\t\tonChange: handleChange\n\t\t\t}), /* @__PURE__ */ jsx(\"span\", {\n\t\t\t\tclassName: clsx(\"univer-relative univer-box-border univer-flex univer-size-4 univer-items-center univer-justify-center univer-overflow-hidden univer-rounded-full univer-border univer-border-solid univer-transition-colors\", {\n\t\t\t\t\t\"univer-opacity-50\": disabled,\n\t\t\t\t\t\"univer-border-primary-600 univer-bg-primary-600 dark:!univer-bg-primary-600\": checked,\n\t\t\t\t\t\"univer-border-gray-300 univer-bg-gray-50 dark:!univer-border-gray-500 dark:!univer-bg-gray-600\": !checked\n\t\t\t\t}),\n\t\t\t\tchildren: checked && /* @__PURE__ */ jsx(\"span\", { className: \"univer-absolute univer-left-1/2 univer-top-1/2 univer-block univer-size-2 -univer-translate-x-1/2 -univer-translate-y-1/2 univer-rounded-full univer-bg-white\" })\n\t\t\t})]\n\t\t}), /* @__PURE__ */ jsx(\"span\", { children })]\n\t});\n}\n\n//#endregion\n//#region src/components/select-list/SelectList.tsx\n/**\n* Copyright 2023-present DreamNum Co., Ltd.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n*     http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\nfunction SelectList(props) {\n\tconst { value: _value, options = [], hideCheckMark = false, onChange, multiple, className, optionClassName } = props;\n\tconst value = Array.isArray(_value) ? _value : [_value];\n\tfunction handleSelect(newValue) {\n\t\tconst index = value.indexOf(newValue);\n\t\tif (!multiple) if (index > -1) onChange(void 0);\n\t\telse onChange(newValue);\n\t\telse if (index > -1) onChange(value.filter((i) => i === newValue));\n\t\telse onChange([...value, newValue]);\n\t}\n\treturn /* @__PURE__ */ jsx(\"ul\", {\n\t\tclassName: clsx(\"univer-m-0 univer-grid univer-max-h-80 univer-list-none univer-gap-1 univer-overflow-y-auto univer-rounded univer-p-1.5\", borderClassName, scrollbarClassName, className),\n\t\tchildren: options.map((option, index) => {\n\t\t\tconst checked = value.indexOf(option.value) > -1;\n\t\t\treturn /* @__PURE__ */ jsx(\"li\", { children: /* @__PURE__ */ jsxs(\"a\", {\n\t\t\t\tclassName: clsx(\"univer-relative univer-block univer-cursor-pointer univer-select-none univer-rounded univer-py-1.5 univer-pl-8 univer-pr-2 univer-text-sm univer-text-gray-900 univer-transition-colors hover:univer-bg-gray-100 dark:!univer-text-white dark:hover:!univer-bg-gray-600\", optionClassName, { \"univer-bg-gray-200 dark:!univer-bg-gray-500\": checked }),\n\t\t\t\tonClick: () => handleSelect(option.value),\n\t\t\t\tchildren: [!hideCheckMark && checked && /* @__PURE__ */ jsx(CheckMarkIcon, { className: \"univer-absolute univer-left-0 univer-top-1/2 -univer-translate-y-1/2 univer-pl-2 univer-text-primary-600\" }), /* @__PURE__ */ jsx(\"span\", {\n\t\t\t\t\tstyle: { color: option.color },\n\t\t\t\t\tchildren: option.label\n\t\t\t\t})]\n\t\t\t}) }, index);\n\t\t})\n\t});\n}\n\n//#endregion\n//#region src/components/select/Select.tsx\nconst selectClassName = clsx(\"univer-box-border univer-inline-flex univer-h-8 univer-min-w-36 univer-items-center univer-justify-between univer-gap-2 univer-rounded-lg univer-bg-white univer-px-2.5 univer-transition-colors univer-duration-200 dark:!univer-bg-gray-700 dark:!univer-text-white\", borderClassName);\nfunction Select(props) {\n\tconst { className, value, disabled = false, options = [], borderless = false, onChange } = props;\n\tconst [open, setOpen] = useState(false);\n\tfunction handleOpenChange(open) {\n\t\tsetOpen(open);\n\t}\n\tconst items = useMemo(() => {\n\t\tconst selectOptions = [];\n\t\tfor (const option of options) if (option.options) {\n\t\t\toption.options.forEach((opt) => {\n\t\t\t\tselectOptions.push({\n\t\t\t\t\tlabel: opt.label,\n\t\t\t\t\tvalue: opt.value,\n\t\t\t\t\tdisabled: opt.disabled\n\t\t\t\t});\n\t\t\t});\n\t\t\tselectOptions.push({ type: \"separator\" });\n\t\t} else selectOptions.push({\n\t\t\tlabel: option.label,\n\t\t\tvalue: option.value,\n\t\t\tdisabled: option.disabled\n\t\t});\n\t\treturn [{\n\t\t\ttype: \"radio\",\n\t\t\tvalue,\n\t\t\thideIndicator: true,\n\t\t\toptions: selectOptions,\n\t\t\tonSelect: (item) => {\n\t\t\t\tonChange(item);\n\t\t\t}\n\t\t}];\n\t}, [options]);\n\tconst displayValue = useMemo(() => {\n\t\tlet label = null;\n\t\tfor (const option of options) if (option.options) {\n\t\t\tfor (const opt of option.options) if (opt.value === value) {\n\t\t\t\tlabel = opt.label;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t} else if (option.value === value) {\n\t\t\tlabel = option.label;\n\t\t\tbreak;\n\t\t}\n\t\treturn label || value;\n\t}, [options, value]);\n\treturn /* @__PURE__ */ jsx(DropdownMenu, {\n\t\tclassName: \"max-h univer-w-[--radix-popper-anchor-width] univer-min-w-36\",\n\t\talign: \"start\",\n\t\topen,\n\t\titems,\n\t\tdisabled,\n\t\tonOpenChange: handleOpenChange,\n\t\tchildren: /* @__PURE__ */ jsxs(\"div\", {\n\t\t\t\"data-u-comp\": \"select\",\n\t\t\tclassName: clsx(selectClassName, {\n\t\t\t\t\"univer-border-primary-600 univer-outline-none univer-ring-2 univer-ring-primary-50 dark:!univer-ring-primary-900\": open && !borderless,\n\t\t\t\t\"univer-border-transparent univer-bg-transparent hover:univer-border-transparent\": borderless,\n\t\t\t\t\"univer-cursor-not-allowed\": disabled,\n\t\t\t\t\"hover:univer-border-primary-600\": !disabled && !borderless,\n\t\t\t\t\"univer-cursor-pointer\": !disabled && !open\n\t\t\t}, className),\n\t\t\tchildren: [/* @__PURE__ */ jsx(\"div\", {\n\t\t\t\tclassName: \"univer-flex-1 univer-truncate univer-text-sm univer-text-gray-500 dark:!univer-text-white\",\n\t\t\t\tchildren: displayValue\n\t\t\t}), /* @__PURE__ */ jsx(MoreDownIcon, { className: \"univer-flex-shrink-0 dark:!univer-text-white\" })]\n\t\t})\n\t});\n}\n\n//#endregion\n//#region src/components/select/MultipleSelect.tsx\nfunction MultipleSelect(props) {\n\tconst { className, value = [], disabled = false, options = [], borderless = false, onChange } = props;\n\tconst [open, setOpen] = useState(false);\n\tfunction handleOpenChange(open) {\n\t\tsetOpen(open);\n\t}\n\tconst items = useMemo(() => {\n\t\treturn options.map((option) => {\n\t\t\treturn {\n\t\t\t\ttype: \"checkbox\",\n\t\t\t\tvalue: option.value,\n\t\t\t\tlabel: option.label,\n\t\t\t\tdisabled: option.disabled,\n\t\t\t\tchecked: value.includes(option.value),\n\t\t\t\tonSelect: (item) => {\n\t\t\t\t\tonChange(value.includes(item) ? value.filter((v) => v !== item) : [...value, item]);\n\t\t\t\t}\n\t\t\t};\n\t\t});\n\t}, [options]);\n\tfunction handleClose(item) {\n\t\tonChange(value.filter((v) => v !== item));\n\t}\n\tconst displayValue = useMemo(() => {\n\t\treturn options.filter((option) => value.includes(option.value)).map((option, index) => /* @__PURE__ */ jsx(Badge, {\n\t\t\tclassName: \"univer-max-w-32\",\n\t\t\tclosable: true,\n\t\t\tonClose: () => handleClose(option.value),\n\t\t\tchildren: option.label\n\t\t}, index));\n\t}, [options, value]);\n\treturn /* @__PURE__ */ jsx(DropdownMenu, {\n\t\tclassName: \"univer-w-[--radix-popper-anchor-width] univer-min-w-36\",\n\t\talign: \"start\",\n\t\topen,\n\t\titems,\n\t\tdisabled,\n\t\tonOpenChange: handleOpenChange,\n\t\tchildren: /* @__PURE__ */ jsxs(\"div\", {\n\t\t\t\"data-u-comp\": \"multiple-select\",\n\t\t\tclassName: clsx(selectClassName, {\n\t\t\t\t\"univer-border-primary-600 univer-outline-none univer-ring-2 univer-ring-primary-50 dark:!univer-ring-primary-900\": open && !borderless,\n\t\t\t\t\"univer-border-transparent univer-bg-transparent hover:univer-border-transparent\": borderless,\n\t\t\t\t\"univer-cursor-not-allowed\": disabled,\n\t\t\t\t\"hover:univer-border-primary-600\": !disabled && !borderless,\n\t\t\t\t\"univer-cursor-pointer\": !disabled && !open\n\t\t\t}, className),\n\t\t\tchildren: [/* @__PURE__ */ jsx(\"div\", {\n\t\t\t\tclassName: \"univer-box-border univer-flex univer-w-[calc(100%-16px)] univer-gap-2 univer-pr-2\",\n\t\t\t\tchildren: displayValue\n\t\t\t}), /* @__PURE__ */ jsx(MoreDownIcon, { className: \"univer-flex-shrink-0 dark:!univer-text-white\" })]\n\t\t})\n\t});\n}\n\n//#endregion\n//#region src/components/separator/Separator.tsx\nfunction Separator({ className, orientation = \"horizontal\", decorative = true, ...props }) {\n\treturn /* @__PURE__ */ jsx(Root$4, {\n\t\t\"data-u-comp\": \"separator\",\n\t\t\"data-slot\": \"separator-root\",\n\t\tdecorative,\n\t\torientation,\n\t\tclassName: clsx(\"univer-shrink-0 univer-bg-gray-200 data-[orientation=horizontal]:univer-h-px data-[orientation=vertical]:univer-h-full data-[orientation=horizontal]:univer-w-full data-[orientation=vertical]:univer-w-px dark:!univer-bg-gray-600\", className),\n\t\t...props\n\t});\n}\n\n//#endregion\n//#region src/components/switch/Switch.tsx\n/**\n* Copyright 2023-present DreamNum Co., Ltd.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n*     http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\nconst Switch = (props) => {\n\tconst { defaultChecked = false, onChange } = props;\n\tconst [checked, setChecked] = useState(defaultChecked);\n\tconst handleChange = () => {\n\t\tsetChecked(!checked);\n\t\tonChange === null || onChange === void 0 || onChange(!checked);\n\t};\n\tuseEffect(() => {\n\t\tsetChecked(defaultChecked);\n\t}, [defaultChecked]);\n\treturn /* @__PURE__ */ jsx(\"div\", {\n\t\tclassName: \"univer-h-4\",\n\t\tchildren: /* @__PURE__ */ jsxs(\"label\", {\n\t\t\tclassName: \"univer-relative univer-inline-block univer-h-4 univer-w-7\",\n\t\t\tchildren: [/* @__PURE__ */ jsx(\"input\", {\n\t\t\t\tclassName: \"univer-size-0 univer-opacity-0\",\n\t\t\t\ttype: \"checkbox\",\n\t\t\t\tchecked,\n\t\t\t\tonChange: handleChange\n\t\t\t}), /* @__PURE__ */ jsx(\"span\", {\n\t\t\t\tclassName: clsx(\"univer-absolute univer-inset-0 univer-cursor-pointer univer-rounded-2xl univer-transition-colors univer-duration-200\", {\n\t\t\t\t\t\"univer-bg-primary-600\": checked,\n\t\t\t\t\t\"univer-bg-gray-200 dark:!univer-bg-gray-600\": !checked\n\t\t\t\t}),\n\t\t\t\tchildren: /* @__PURE__ */ jsx(\"span\", { className: clsx(\"univer-absolute univer-bottom-0.5 univer-left-0.5 univer-size-3 univer-rounded-full univer-bg-white univer-transition-transform univer-duration-200\", { \"univer-translate-x-3\": checked }) })\n\t\t\t})]\n\t\t})\n\t});\n};\n\n//#endregion\n//#region src/components/textarea/Textarea.tsx\nconst Textarea = forwardRef((props, ref) => {\n\tconst textareaRef = useRef(null);\n\tconst lastSizeRef = useRef({\n\t\twidth: 0,\n\t\theight: 0\n\t});\n\tconst { className, onResize, onValueChange, ...restProps } = props;\n\tuseImperativeHandle(ref, () => textareaRef.current, []);\n\tuseLayoutEffect(() => {\n\t\tconst textarea = textareaRef.current;\n\t\tif (textarea && onResize) {\n\t\t\tconst resizeObserver = new ResizeObserver((entries) => {\n\t\t\t\tconst { width, height } = entries[0].target.getBoundingClientRect();\n\t\t\t\tif (width === 0 || height === 0) return;\n\t\t\t\tif (lastSizeRef.current.width !== width || lastSizeRef.current.height !== height) {\n\t\t\t\t\tlastSizeRef.current = {\n\t\t\t\t\t\twidth,\n\t\t\t\t\t\theight\n\t\t\t\t\t};\n\t\t\t\t\tonResize(width, height);\n\t\t\t\t}\n\t\t\t});\n\t\t\tresizeObserver.observe(textarea);\n\t\t\treturn () => {\n\t\t\t\tresizeObserver.unobserve(textarea);\n\t\t\t\tresizeObserver.disconnect();\n\t\t\t};\n\t\t}\n\t}, [onResize]);\n\tfunction handleChange(event) {\n\t\tconst value = event.target.value;\n\t\tonValueChange === null || onValueChange === void 0 || onValueChange(value);\n\t}\n\treturn /* @__PURE__ */ jsx(\"textarea\", {\n\t\tref: textareaRef,\n\t\t\"data-u-comp\": \"textarea\",\n\t\t\"data-slot\": \"textarea\",\n\t\tclassName: clsx(\"univer-box-border univer-flex univer-w-full univer-resize univer-rounded-md univer-bg-transparent univer-p-2 univer-text-base univer-text-gray-900 univer-outline-none univer-transition-[color,box-shadow] placeholder:univer-text-gray-200 disabled:univer-cursor-not-allowed disabled:univer-opacity-50 dark:!univer-text-white\", borderClassName, scrollbarClassName, className),\n\t\tonChange: handleChange,\n\t\t...restProps\n\t});\n});\n\n//#endregion\n//#region src/components/toaster/Toaster.tsx\nfunction Toaster({ visibleToasts, ...props }) {\n\treturn /* @__PURE__ */ jsx(Toaster$1, {\n\t\tclassName: \"dark:![&_[data-description]]:univer-text-gray-200 [&_[data-description]]:univer-text-sm [&_[data-description]]:univer-text-gray-600 [&_[data-icon]>svg]:univer-relative [&_[data-icon]>svg]:univer-top-1 [&_[data-icon]]:univer-self-baseline [&_[data-sonner-toast]]:univer-shadow-md [&_[data-title]]:univer-text-sm [&_[data-title]]:univer-text-gray-900\",\n\t\ttoastOptions: { classNames: {\n\t\t\tcontent: \"univer-leading-normal\",\n\t\t\tsuccess: \"[&_[data-icon]]:univer-text-green-500\",\n\t\t\tinfo: \"[&_[data-icon]]:univer-text-primary-600\",\n\t\t\terror: \"[&_[data-icon]]:univer-text-red-500\",\n\t\t\twarning: \"[&_[data-icon]]:univer-text-yellow-500\"\n\t\t} },\n\t\tvisibleToasts: visibleToasts !== null && visibleToasts !== void 0 ? visibleToasts : 5,\n\t\t...props\n\t});\n}\n\n//#endregion\n//#region src/components/virtual-list/VirtualList.tsx\nfunction VirtualList(props) {\n\tconst { data, itemKey, children, height, itemHeight, overscan = 2, className, style } = props;\n\tconst [scrollTop, setScrollTop] = useState(0);\n\tif (!height || !itemHeight || itemHeight <= 0) return /* @__PURE__ */ jsx(\"div\", {\n\t\tclassName,\n\t\tstyle,\n\t\tchildren: data.map((item, index) => {\n\t\t\tconst key = typeof itemKey === \"function\" ? itemKey(item) : item[itemKey];\n\t\t\treturn /* @__PURE__ */ jsx(\"div\", { children: children(item, index) }, key);\n\t\t})\n\t});\n\tconst start = Math.max(0, Math.floor(scrollTop / itemHeight) - overscan);\n\tconst visibleCount = Math.ceil(height / itemHeight) + overscan * 2;\n\tconst end = Math.min(data.length, start + visibleCount);\n\tconst offsetY = start * itemHeight;\n\tconst totalHeight = data.length * itemHeight;\n\tconst visibleItems = data.slice(start, end);\n\treturn /* @__PURE__ */ jsx(\"div\", {\n\t\tclassName,\n\t\tstyle: {\n\t\t\t...style,\n\t\t\theight,\n\t\t\toverflowY: \"auto\"\n\t\t},\n\t\tonScroll: (e) => setScrollTop(e.currentTarget.scrollTop),\n\t\tchildren: /* @__PURE__ */ jsx(\"div\", {\n\t\t\tstyle: {\n\t\t\t\theight: totalHeight,\n\t\t\t\tposition: \"relative\"\n\t\t\t},\n\t\t\tchildren: /* @__PURE__ */ jsx(\"div\", {\n\t\t\t\tstyle: { transform: `translateY(${offsetY}px)` },\n\t\t\t\tchildren: visibleItems.map((item, index) => {\n\t\t\t\t\tconst key = typeof itemKey === \"function\" ? itemKey(item) : item[itemKey];\n\t\t\t\t\treturn /* @__PURE__ */ jsx(\"div\", { children: children(item, start + index) }, key);\n\t\t\t\t})\n\t\t\t})\n\t\t})\n\t});\n}\n\n//#endregion\n//#region src/components/tree/util.ts\nconst findNodePathFromTree = (tree, key) => {\n\tconst result = [];\n\tconst recursive = (node) => {\n\t\tvar _node$children;\n\t\tresult.push(node.key);\n\t\tif (key === node.key) return true;\n\t\tif ((_node$children = node.children) === null || _node$children === void 0 ? void 0 : _node$children.length) {\n\t\t\tif (node.children.some(recursive)) return true;\n\t\t}\n\t\tresult.pop();\n\t};\n\ttree.some(recursive);\n\treturn result;\n};\nconst createCacheWithFindNodePathFromTree = (tree, defaultCache) => {\n\tconst cache = defaultCache !== null && defaultCache !== void 0 ? defaultCache : /* @__PURE__ */ new Map();\n\tlet cacheTree = tree;\n\treturn {\n\t\tfindNodePathFromTreeWithCache: (key) => {\n\t\t\tconst cacheValue = cache.get(key);\n\t\t\tif (cacheValue) return cacheValue;\n\t\t\tconst path = findNodePathFromTree(cacheTree, key);\n\t\t\tpath.map((k, index, arr) => {\n\t\t\t\tconst result = [];\n\t\t\t\tfor (let i = 0; i <= index; i++) result.push(arr[i]);\n\t\t\t\treturn result;\n\t\t\t}).reverse().forEach((list) => {\n\t\t\t\tconst key = list[list.length - 1];\n\t\t\t\tcache.set(key, list);\n\t\t\t});\n\t\t\treturn path;\n\t\t},\n\t\treset: (newTree) => {\n\t\t\tcache.clear();\n\t\t\tif (newTree) cacheTree = newTree;\n\t\t}\n\t};\n};\nconst findSubTreeFromPath = (tree, path) => {\n\tif (!path.length) return tree;\n\treturn path.reduce((list, key) => {\n\t\tconst item = list.find((node) => node.key === key);\n\t\treturn (item === null || item === void 0 ? void 0 : item.children) || [];\n\t}, tree);\n};\nconst findNodeFromPath = (tree, _path) => {\n\tconst path = _path.slice(0);\n\tconst key = path.pop();\n\treturn findSubTreeFromPath(tree, path).find((node) => node.key === key);\n};\nconst mergeTreeSelected = (treeData, treeSelected, path) => {\n\tconst set = new Set(treeSelected);\n\tconst key = path[path.length - 1];\n\tconst subTree = findSubTreeFromPath(treeData, path);\n\tif (!set.has(key)) {\n\t\tconst addRecursive = (node) => {\n\t\t\tset.add(node.key);\n\t\t\tif (node.children) node.children.forEach((n) => addRecursive(n));\n\t\t};\n\t\tpath.forEach((k) => set.add(k));\n\t\tif (subTree.length) subTree.forEach(addRecursive);\n\t} else {\n\t\tif (subTree.length) {\n\t\t\tconst deleteRecursive = (node) => {\n\t\t\t\tset.delete(node.key);\n\t\t\t\tif (node.children) node.children.forEach((n) => deleteRecursive(n));\n\t\t\t};\n\t\t\tsubTree.forEach(deleteRecursive);\n\t\t}\n\t\tpath.map((k, index, arr) => {\n\t\t\tconst result = [];\n\t\t\tfor (let i = 0; i <= index; i++) result.push(arr[i]);\n\t\t\treturn result;\n\t\t}).reverse().some((path) => {\n\t\t\tconst list = findSubTreeFromPath(treeData, path);\n\t\t\tconst key = path[path.length - 1];\n\t\t\tif (list.every((e) => !set.has(e.key))) set.delete(key);\n\t\t\telse return true;\n\t\t\treturn false;\n\t\t});\n\t}\n\treturn [...set];\n};\nconst isIntermediated = (treeSelected, node) => {\n\tconst list = node.children || [];\n\tconst checkIsSelected = (node) => {\n\t\tvar _node$children2;\n\t\tif ((_node$children2 = node.children) === null || _node$children2 === void 0 ? void 0 : _node$children2.length) {\n\t\t\tif (node.children.every(checkIsSelected)) return true;\n\t\t\treturn false;\n\t\t}\n\t\treturn treeSelected.has(node.key);\n\t};\n\tif (list.length) return list.some((node) => !checkIsSelected(node));\n\treturn false;\n};\nconst filterLeafNode = (tree, keyList) => {\n\tconst result = [];\n\tconst find = createCacheWithFindNodePathFromTree(tree);\n\tkeyList.forEach((key) => {\n\t\tconst node = findNodeFromPath(tree, find.findNodePathFromTreeWithCache(key));\n\t\tif (node) {\n\t\t\tvar _node$children3;\n\t\t\tif (!((_node$children3 = node.children) === null || _node$children3 === void 0 ? void 0 : _node$children3.length)) result.push(node);\n\t\t}\n\t});\n\treturn result;\n};\n\n//#endregion\n//#region src/components/tree/Tree.tsx\nlet TreeSelectionMode = /* @__PURE__ */ function(TreeSelectionMode) {\n\tTreeSelectionMode[TreeSelectionMode[\"ONLY_LEAF_NODE\"] = 0] = \"ONLY_LEAF_NODE\";\n\tTreeSelectionMode[TreeSelectionMode[\"ALL\"] = 1] = \"ALL\";\n\treturn TreeSelectionMode;\n}({});\nfunction flattenTree(items, expandedKeys, level = 1) {\n\tconst flatItems = [];\n\titems.forEach((item) => {\n\t\tflatItems.push({\n\t\t\t...item,\n\t\t\tlevel\n\t\t});\n\t\tif (item.children && expandedKeys.has(item.key)) flatItems.push(...flattenTree(item.children, expandedKeys, level + 1));\n\t});\n\treturn flatItems;\n}\n/**\n* Tree Component\n*/\nfunction Tree(props) {\n\tconst { data = [], defaultCache, style, defaultExpandAll = false, selectionMode = 1, valueGroup = [], onChange, onExpend, height = 200, itemHeight = 32, attachRender } = props;\n\tconst [update, forceUpdate] = useState({});\n\tconst expandKeySet = useMemo(() => {\n\t\treturn /* @__PURE__ */ new Set();\n\t}, []);\n\tconst findNode = useMemo(() => createCacheWithFindNodePathFromTree(data, defaultCache), [data, defaultCache]);\n\tconst selectedNodeKeySet = useMemo(() => {\n\t\tconst set = /* @__PURE__ */ new Set();\n\t\tvalueGroup.forEach((key) => {\n\t\t\tfindNode.findNodePathFromTreeWithCache(key).forEach((k) => set.add(k));\n\t\t});\n\t\treturn set;\n\t}, [valueGroup, findNode]);\n\tuseEffect(() => {\n\t\tfunction walkData(item) {\n\t\t\tvar _item$children;\n\t\t\texpandKeySet.add(item.key);\n\t\t\t(_item$children = item.children) === null || _item$children === void 0 || _item$children.forEach(walkData);\n\t\t}\n\t\tif (defaultExpandAll) data.forEach(walkData);\n\t\tforceUpdate({});\n\t}, [defaultExpandAll, data]);\n\tconst flatData = useMemo(() => flattenTree(data, expandKeySet), [\n\t\tdata,\n\t\tupdate,\n\t\texpandKeySet\n\t]);\n\tfunction handleExpendItem(treeItem) {\n\t\tvar _treeItem$children;\n\t\tif ((_treeItem$children = treeItem.children) === null || _treeItem$children === void 0 ? void 0 : _treeItem$children.length) {\n\t\t\tif (expandKeySet.has(treeItem.key)) expandKeySet.delete(treeItem.key);\n\t\t\telse expandKeySet.add(treeItem.key);\n\t\t\tforceUpdate({});\n\t\t}\n\t\tif (selectionMode === 0) {\n\t\t\tif (treeItem.children) return;\n\t\t}\n\t\tonExpend === null || onExpend === void 0 || onExpend(treeItem.key);\n\t}\n\tfunction renderTreeItem(treeItem) {\n\t\tconst { title, key, level = 0 } = treeItem;\n\t\tconst treeNodeClassName = props.treeNodeClassName;\n\t\tconst expended = expandKeySet.has(key);\n\t\tconst selected = selectedNodeKeySet.has(key);\n\t\tconst intermediated = isIntermediated(selectedNodeKeySet, treeItem);\n\t\treturn /* @__PURE__ */ jsx(\"div\", {\n\t\t\tclassName: clsx(\"univer-relative univer-text-[13px]\", treeNodeClassName),\n\t\t\tstyle: { paddingLeft: `${level * 20}px` },\n\t\t\tchildren: /* @__PURE__ */ jsxs(\"div\", {\n\t\t\t\tclassName: \"univer-relative univer-my-1 univer-flex univer-w-full univer-items-center\",\n\t\t\t\tchildren: [\n\t\t\t\t\ttreeItem.children && treeItem.children.length > 0 && /* @__PURE__ */ jsx(\"span\", {\n\t\t\t\t\t\tclassName: clsx(\"univer-absolute univer-left-[-16px] univer-top-1/2 univer-flex univer--translate-y-1/2 univer-items-center univer-justify-center univer-text-[8px]\", { \"univer-rotate-[-90deg]\": !expended }),\n\t\t\t\t\t\tonClick: (e) => {\n\t\t\t\t\t\t\te.stopPropagation();\n\t\t\t\t\t\t\thandleExpendItem(treeItem);\n\t\t\t\t\t\t},\n\t\t\t\t\t\tchildren: /* @__PURE__ */ jsx(DropdownIcon, {})\n\t\t\t\t\t}),\n\t\t\t\t\t/* @__PURE__ */ jsx(Checkbox, {\n\t\t\t\t\t\tchecked: selected && !intermediated,\n\t\t\t\t\t\tindeterminate: selected && intermediated,\n\t\t\t\t\t\tonChange: () => {\n\t\t\t\t\t\t\tonChange === null || onChange === void 0 || onChange(treeItem);\n\t\t\t\t\t\t}\n\t\t\t\t\t}),\n\t\t\t\t\t/* @__PURE__ */ jsx(\"div\", {\n\t\t\t\t\t\tclassName: \"\\n                          univer-mx-1 univer-flex univer-h-full univer-shrink univer-items-center univer-overflow-hidden\\n                          univer-text-ellipsis univer-whitespace-nowrap\\n                        \",\n\t\t\t\t\t\tonClick: (e) => {\n\t\t\t\t\t\t\te.stopPropagation();\n\t\t\t\t\t\t\thandleExpendItem(treeItem);\n\t\t\t\t\t\t},\n\t\t\t\t\t\tchildren: /* @__PURE__ */ jsx(Tooltip, {\n\t\t\t\t\t\t\tclassName: \"univer-block\",\n\t\t\t\t\t\t\tshowIfEllipsis: true,\n\t\t\t\t\t\t\tplacement: \"top\",\n\t\t\t\t\t\t\ttitle,\n\t\t\t\t\t\t\tchildren: /* @__PURE__ */ jsx(\"span\", {\n\t\t\t\t\t\t\t\tclassName: \"univer-block\",\n\t\t\t\t\t\t\t\tchildren: title\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t})\n\t\t\t\t\t}),\n\t\t\t\t\tattachRender && attachRender(treeItem)\n\t\t\t\t]\n\t\t\t})\n\t\t}, key);\n\t}\n\treturn /* @__PURE__ */ jsx(\"section\", {\n\t\tclassName: \"\\n              univer-relative univer-select-none univer-text-gray-900\\n              dark:!univer-text-white\\n            \",\n\t\tchildren: /* @__PURE__ */ jsx(\"div\", {\n\t\t\tclassName: \"univer-m-0 univer-h-full univer-list-none univer-p-0\",\n\t\t\tstyle,\n\t\t\tchildren: /* @__PURE__ */ jsx(VirtualList, {\n\t\t\t\tdata: flatData,\n\t\t\t\titemKey: (item) => item.key,\n\t\t\t\theight,\n\t\t\t\titemHeight,\n\t\t\t\tchildren: (item) => renderTreeItem(item)\n\t\t\t})\n\t\t})\n\t});\n}\n\n//#endregion\n//#region src/helper/react-dom.ts\nconst rootMap = /* @__PURE__ */ new WeakMap();\nfunction render(node, container) {\n\tlet root = rootMap.get(container);\n\tif (!root) {\n\t\troot = createRoot(container);\n\t\trootMap.set(container, root);\n\t}\n\troot.render(node);\n}\nfunction unmount(container) {\n\tconst root = rootMap.get(container);\n\tif (root) {\n\t\troot.unmount();\n\t\trootMap.delete(container);\n\t}\n}\n\n//#endregion\n//#region src/helper/resize-observer.ts\n/**\n* Copyright 2023-present DreamNum Co., Ltd.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n*     http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n/**\n* All elements are observed by a single ResizeObserver is got greater performance than each element observed by separate ResizeObserver\n* See issue https://github.com/WICG/resize-observer/issues/59#issuecomment-408098151\n*/\nconst _resizeObserverCallbacks = /* @__PURE__ */ new Set();\nlet _resizeObserver;\nfunction resizeObserverCtor(callback) {\n\tif (!_resizeObserver) _resizeObserver = new ResizeObserver((...args) => {\n\t\t_resizeObserverCallbacks.forEach((callback) => callback(...args));\n\t});\n\treturn {\n\t\tobserve(target, options) {\n\t\t\t_resizeObserverCallbacks.add(callback);\n\t\t\t_resizeObserver.observe(target, options);\n\t\t},\n\t\tunobserve(target) {\n\t\t\t_resizeObserverCallbacks.delete(callback);\n\t\t\t_resizeObserver.unobserve(target);\n\t\t}\n\t};\n}\n\n//#endregion\nexport { Accordion, Avatar, Badge, Button, ButtonGroup, Calendar, CascaderList, Checkbox, CheckboxGroup, ColorPicker, ConfigContext, ConfigProvider, Confirm, DatePicker, DateRangePicker, Dialog, DraggableList, Dropdown, DropdownMenu, FormDualColumnLayout, FormLayout, Gallery, GradientColorPicker, HoverCard, Input, InputNumber, KBD, MessageType, Messager, MultipleSelect, Pager, Panel, PanelField, PanelSection, Popup, Radio, RadioGroup, Segmented, Select, SelectList, Separator, Switch, Textarea, TimeInput, Toaster, Tooltip, Tree, TreeSelectionMode, borderBottomClassName, borderClassName, borderLeftBottomClassName, borderLeftClassName, borderRightClassName, borderTopClassName, clsx, divideXClassName, divideYClassName, filterLeafNode, findNodePathFromTree, findSubTreeFromPath, isBrowser, mergeTreeSelected, message, removeMessage, render, resizeObserverCtor, scrollbarClassName, toast, unmount };"]}