@zenkigen-inc/component-ui 1.11.2 → 1.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.esm.js +12 -9
- package/dist/index.esm.js.map +1 -1
- package/dist/index.js +11 -7
- package/dist/index.js.map +1 -1
- package/package.json +5 -5
package/dist/index.esm.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.esm.js","sources":["../src/avatar/avatar.tsx","../src/breadcrumb/breadcrumb-item.tsx","../src/breadcrumb/breadcrumb.tsx","../src/button/button.tsx","../src/checkbox/checked-icon.tsx","../src/checkbox/minus-icon.tsx","../src/checkbox/checkbox.tsx","../src/hooks/use-outside-click.ts","../src/icon/icon.tsx","../src/dropdown/dropdown-context.ts","../src/dropdown/dropdown-item.tsx","../src/dropdown/dropdown-menu.tsx","../src/dropdown/dropdown.tsx","../src/evaluation-star/evaluation-star.tsx","../src/heading/heading.tsx","../src/icon-button/icon-button.tsx","../src/loading/loading.tsx","../src/modal/modal-body.tsx","../src/modal/modal-context.ts","../src/modal/modal-footer.tsx","../src/modal/modal-header.tsx","../src/modal/modal.tsx","../src/notification-inline/notification-inline.tsx","../src/pagination/pagination-context.ts","../src/pagination/pagination-button.tsx","../src/pagination/pagination.tsx","../src/select/select-context.ts","../src/select/select-item.tsx","../src/select/select-list.tsx","../src/select/select.tsx","../src/pagination-select/pagination-select.tsx","../src/radio/radio.tsx","../src/search/search.tsx","../src/select-sort/select-item.tsx","../src/select-sort/select-list.tsx","../src/select-sort/select-sort.tsx","../src/tab/tab-item.tsx","../src/tab/tab.tsx","../src/table/table-cell.tsx","../src/table/table-row.tsx","../src/table/table.tsx","../src/tag/delete-icon.tsx","../src/tag/tag.tsx","../src/text-area/text-area.tsx","../src/text-input/text-input.tsx","../src/toast/toast.tsx","../src/toast/toast-provider.tsx","../src/toggle/toggle.tsx","../src/tooltip/tooltip.hook.ts","../src/tooltip/tail-icon.tsx","../src/tooltip/tooltip-content.tsx","../src/tooltip/tooltip.tsx"],"sourcesContent":["import { userColors } from '@zenkigen-inc/component-theme';\nimport { clsx } from 'clsx';\n\nexport const isAsciiString = (str: string) => {\n return str.charCodeAt(0) < 256;\n};\n\ntype Props = {\n size?: 'x-small' | 'small' | 'medium' | 'large' | 'x-large';\n userId?: number;\n firstName: string;\n lastName: string;\n isDisabled?: boolean;\n};\n\nexport function Avatar({ size = 'medium', ...props }: Props) {\n const classes = clsx('flex items-center justify-center rounded-full text-textOnColor', {\n 'w-16 h-16 typography-label16regular': size === 'x-large',\n 'w-12 h-12 typography-label14regular': size === 'large',\n 'w-10 h-10 typography-label14regular': size === 'medium',\n 'w-8 h-8 typography-label11regular': size === 'small',\n 'w-6 h-6 typography-label11regular': size === 'x-small',\n 'bg-disabled01': props.isDisabled,\n 'bg-icon01': props.userId == null,\n [userColors[(props.userId ?? 0) % userColors.length] as string]:\n props.userId != null && !(props.isDisabled ?? false),\n });\n\n const trimmedFirstName = props.firstName.replace(' ', ' ').trim();\n const trimmedLastName = props.lastName.replace(' ', ' ').trim().trim();\n const nameOnIcon = isAsciiString(trimmedLastName)\n ? trimmedFirstName.slice(0, 1).toUpperCase() + trimmedLastName.slice(0, 1).toUpperCase()\n : (trimmedLastName + trimmedFirstName).slice(0, 2);\n\n return <span className={classes}>{nameOnIcon}</span>;\n}\n","import type { PropsWithChildren } from 'react';\n\nexport const BreadcrumbItem = ({ children }: PropsWithChildren) => {\n return (\n <li className=\"flex gap-2 after:content-['/'] last:after:content-none [&_a]:text-interactive02 [&_a]:hover:underline\">\n {children}\n </li>\n );\n};\n","import type { PropsWithChildren } from 'react';\n\nimport { BreadcrumbItem } from './breadcrumb-item';\n\nexport function Breadcrumb({ children }: PropsWithChildren) {\n return (\n <nav aria-label=\"breadcrumb\">\n <ul className=\"typography-label14regular flex flex-wrap gap-2 whitespace-nowrap text-text01\">{children}</ul>\n </nav>\n );\n}\n\nBreadcrumb.Item = BreadcrumbItem;\n","import { buttonColors, focusVisible } from '@zenkigen-inc/component-theme';\nimport { clsx } from 'clsx';\nimport type { ComponentPropsWithoutRef, CSSProperties, ElementType, PropsWithChildren, ReactNode } from 'react';\n\ntype Size = 'small' | 'medium' | 'large';\n\ntype Variant = 'fill' | 'fillDanger' | 'outline' | 'text';\n\nexport type ElementAs = ElementType;\n\nexport type AsProp<T extends ElementAs> = {\n elementAs?: T;\n};\n\nexport type PolymorphicPropsWithoutRef<T extends ElementAs, P extends object> = PropsWithChildren<P> &\n ComponentPropsWithoutRef<T> &\n AsProp<T>;\n\ntype Props<T extends ElementAs> = PolymorphicPropsWithoutRef<\n T,\n {\n size?: Size;\n width?: CSSProperties['width'];\n isSelected?: boolean;\n isDisabled?: boolean;\n variant?: Variant;\n before?: ReactNode;\n after?: ReactNode;\n borderRadius?: CSSProperties['borderRadius'];\n }\n>;\n\nexport const Button = <T extends ElementAs = 'button'>({\n size = 'medium',\n variant = 'fill',\n isDisabled,\n isSelected = false,\n width,\n borderRadius,\n before,\n after,\n elementAs,\n children,\n ...props\n}: Props<T>) => {\n const baseClasses = clsx(\n 'flex shrink-0 items-center justify-center gap-1',\n buttonColors[variant].hover,\n buttonColors[variant].active,\n buttonColors[variant].disabled,\n focusVisible.normal,\n {\n 'h-6 px-2.5': size === 'small',\n 'h-8 px-3': size === 'medium',\n 'h-10 px-4 leading-[24px]': size === 'large',\n 'inline-flex': elementAs === 'a',\n [buttonColors[variant].selected]: isSelected,\n [buttonColors[variant].base]: !isSelected,\n 'hover:text-textOnColor active:text-textOnColor [&:hover>*]:fill-iconOnColor [&:active>*]:fill-iconOnColor':\n isSelected && variant !== 'outline' && variant !== 'text',\n 'pointer-events-none': isDisabled,\n 'rounded-button': borderRadius == null,\n 'typography-label16regular': size === 'large',\n 'typography-label14regular': size !== 'large',\n },\n );\n\n const Component = elementAs ?? 'button';\n\n return (\n <Component className={baseClasses} style={{ width, borderRadius }} disabled={isDisabled} {...props}>\n {before}\n {children}\n {after}\n </Component>\n );\n};\n","export const CheckedIcon = () => {\n return (\n <svg\n viewBox=\"0 0 20 20\"\n xmlns=\"http://www.w3.org/2000/svg\"\n className=\"absolute z-10 size-5 rounded-sm fill-iconOnColor hover:rounded-sm\"\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M16.2887 5.38099C16.0069 5.09924 15.5518 5.09924 15.2701 5.38099L7.55461 13.0893L4.72993 10.2646C4.44818 9.98283 3.99305 9.98283 3.71131 10.2646C3.42956 10.5463 3.42956 11.0014 3.71131 11.2832L7.04891 14.6208C7.1934 14.7653 7.374 14.8303 7.56183 14.8303C7.74966 14.8303 7.93027 14.7581 8.07475 14.6208L16.2887 6.40683C16.5704 6.12508 16.5704 5.66273 16.2887 5.38099Z\"\n />\n </svg>\n );\n};\n","export const MinusIcon = () => {\n return (\n <svg\n viewBox=\"0 0 20 20\"\n xmlns=\"http://www.w3.org/2000/svg\"\n className=\"absolute z-10 size-5 rounded-sm fill-iconOnColor hover:rounded-sm\"\n >\n <path d=\"M4.94723 10.5028H9.49726H10.5028H15.0528C15.3293 10.5028 15.5556 10.2766 15.5556 10C15.5556 9.72352 15.3293 9.49725 15.0528 9.49725H10.5028H9.49726H4.94723C4.67071 9.49725 4.44446 9.72352 4.44446 10C4.44446 10.2766 4.67071 10.5028 4.94723 10.5028Z\" />\n </svg>\n );\n};\n","import { focusVisible } from '@zenkigen-inc/component-theme';\nimport clsx from 'clsx';\nimport type { ChangeEvent } from 'react';\nimport { useCallback, useState } from 'react';\n\nimport { CheckedIcon } from './checked-icon';\nimport { MinusIcon } from './minus-icon';\n\ntype Props = {\n name?: string;\n value?: string;\n id?: string;\n isChecked?: boolean;\n color?: 'default' | 'gray' | 'error';\n isIndeterminate?: boolean;\n isDisabled?: boolean;\n label?: string;\n onChange?: (e: ChangeEvent<HTMLInputElement>) => void;\n};\n\nexport function Checkbox({\n name,\n value,\n id,\n isChecked = false,\n isIndeterminate = false,\n isDisabled = false,\n onChange,\n label,\n color = 'default',\n}: Props) {\n const [isMouseOver, setIsMouseOver] = useState(false);\n\n const handleMouseOverInput = useCallback(() => {\n setIsMouseOver(true);\n }, []);\n\n const handleMouseOutInput = useCallback(() => {\n setIsMouseOver(false);\n }, []);\n\n const handleChange = useCallback(\n (e: ChangeEvent<HTMLInputElement>) => !isDisabled && onChange?.(e),\n [isDisabled, onChange],\n );\n\n const baseInputClasses = clsx('peer absolute z-[1] size-5 opacity-0', {\n 'cursor-not-allowed': isDisabled,\n 'cursor-pointer': !isDisabled,\n });\n\n const boxClasses = clsx(\n 'inline-flex size-5 items-center justify-center rounded-sm border bg-white',\n focusVisible.normalPeer,\n {\n 'border-disabled01': isDisabled,\n 'border-hoverUiBorder': !isDisabled && isMouseOver && color === 'default',\n 'border-uiBorder03': !isDisabled && !isMouseOver && color === 'default',\n 'border-interactive02': !isDisabled && !isMouseOver && color === 'gray',\n 'border-hoverError': !isDisabled && isMouseOver && color === 'error',\n 'border-supportError': !isDisabled && !isMouseOver && color === 'error',\n },\n );\n\n const indicatorClasses = clsx('relative flex size-5 flex-[0_0_auto] items-center justify-center', {\n 'bg-disabled01': isDisabled && isChecked,\n 'border-disabled01': isDisabled,\n });\n\n const afterClasses = clsx('absolute inset-0 m-auto block rounded-sm', {\n 'bg-disabled01': isDisabled && isChecked,\n 'bg-hover01': !(isDisabled && isChecked) && isMouseOver,\n 'bg-interactive01': !(isDisabled && isChecked) && !isMouseOver,\n 'bg-hover02Dark': !(isDisabled && isChecked) && isMouseOver && color === 'gray',\n 'bg-interactive02': !(isDisabled && isChecked) && !isMouseOver && color === 'gray',\n 'bg-hoverError': !(isDisabled && isChecked) && isMouseOver && color === 'error',\n 'bg-supportError': !(isDisabled && isChecked) && !isMouseOver && color === 'error',\n 'scale-0': !isChecked,\n 'scale-100': isChecked,\n });\n\n const hoverIndicatorClasses = clsx('inline-block size-3 rounded-[1px]', {\n 'bg-hoverUi': !isDisabled && !isChecked && isMouseOver,\n });\n\n const labelClasses = clsx('typography-label14regular ml-2 flex-[1_0_0] break-all', {\n 'pointer-events-none cursor-not-allowed text-disabled01': isDisabled,\n 'cursor-pointer text-text01': !isDisabled,\n });\n\n return (\n <div className=\"flex items-center\">\n <div className=\"relative flex size-6 items-center justify-center\">\n <input\n type=\"checkbox\"\n value={value}\n name={name}\n id={id}\n checked={isChecked}\n disabled={isDisabled}\n onChange={handleChange}\n onMouseOver={handleMouseOverInput}\n onMouseLeave={handleMouseOutInput}\n className={baseInputClasses}\n />\n <div className={boxClasses}>\n <div className={indicatorClasses}>\n <span className={afterClasses}>\n {isChecked && !isIndeterminate && <CheckedIcon />}\n {isIndeterminate && <MinusIcon />}\n </span>\n <span className={hoverIndicatorClasses} />\n </div>\n </div>\n </div>\n {label != null && (\n <label htmlFor={id} className={labelClasses}>\n {label}\n </label>\n )}\n </div>\n );\n}\n","import type { RefObject } from 'react';\nimport { useEffect } from 'react';\n\nexport const useOutsideClick = <T extends HTMLElement = HTMLElement>(\n ref: RefObject<T>,\n handler: (event: Event) => void,\n enabled = true,\n) => {\n useEffect(() => {\n const listener = (event: Event) => {\n const element = ref?.current;\n if (element == null || Boolean(element.contains((event?.target as Node) ?? null))) {\n return;\n }\n handler(event);\n };\n\n if (enabled) {\n document.addEventListener('click', listener);\n }\n\n return () => document.removeEventListener('click', listener);\n }, [ref, enabled, handler]);\n};\n","import type { IconName } from '@zenkigen-inc/component-icons';\nimport { iconElements } from '@zenkigen-inc/component-icons';\nimport { iconColors } from '@zenkigen-inc/component-theme';\nimport { clsx } from 'clsx';\n\ntype Size = 'x-small' | 'small' | 'medium' | 'large' | 'x-large';\n\ntype Color = keyof typeof iconColors;\n\ntype Props = {\n name: IconName;\n size?: Size;\n color?: Color;\n isDisabled?: boolean;\n className?: string;\n};\n\nexport const Icon = ({ size = 'medium', isDisabled = false, ...props }: Props) => {\n const classes = clsx(\n 'inline-block shrink-0',\n {\n 'fill-disabled01': isDisabled,\n [iconColors.icon01]: !isDisabled && props.color === 'icon01',\n [iconColors.icon01Dark]: !isDisabled && props.color === 'icon01Dark',\n [iconColors.icon02]: !isDisabled && props.color === 'icon02',\n [iconColors.icon02Dark]: !isDisabled && props.color === 'icon02Dark',\n [iconColors.icon03]: !isDisabled && props.color === 'icon03',\n [iconColors.icon03Dark]: !isDisabled && props.color === 'icon03Dark',\n [iconColors.iconOnColor]: !isDisabled && props.color === 'iconOnColor',\n 'w-3 h-3': size === 'x-small',\n 'w-4 h-4': size === 'small',\n 'w-6 h-6': size === 'medium',\n 'w-8 h-8': size === 'large',\n 'w-10 h-10': size === 'x-large',\n },\n props.className,\n );\n\n return <span className={classes}>{iconElements[props.name]}</span>;\n};\n","import type { MutableRefObject } from 'react';\nimport { createContext } from 'react';\n\ntype UseDropdownReturnType = {\n isVisible: boolean;\n setIsVisible: React.Dispatch<React.SetStateAction<boolean>>;\n isDisabled: boolean;\n portalTargetRef?: MutableRefObject<HTMLElement | null>;\n targetDimensions: {\n width: number;\n height: number;\n };\n variant: 'text' | 'outline';\n};\n\nexport const DropdownContext = createContext<UseDropdownReturnType>({\n isVisible: false,\n setIsVisible: () => false,\n isDisabled: false,\n targetDimensions: { width: 0, height: 0 },\n variant: 'outline',\n});\n","import { focusVisible } from '@zenkigen-inc/component-theme';\nimport clsx from 'clsx';\nimport type { MouseEvent, PropsWithChildren } from 'react';\nimport { useContext } from 'react';\n\nimport { DropdownContext } from './dropdown-context';\n\ntype Props = {\n color?: 'gray' | 'red';\n onClick?: (event: MouseEvent<HTMLButtonElement>) => void;\n};\n\nexport function DropdownItem({ children, color = 'gray', onClick }: PropsWithChildren<Props>) {\n const { setIsVisible } = useContext(DropdownContext);\n const handleClickItem = (event: MouseEvent<HTMLButtonElement>) => {\n setIsVisible(false);\n onClick?.(event);\n };\n const itemClasses = clsx(\n 'typography-label14regular flex h-8 w-full items-center px-3 hover:bg-hover02 active:bg-active02',\n focusVisible.inset,\n {\n 'bg-uiBackground01 fill-icon01 text-interactive02': color === 'gray',\n 'fill-supportDanger text-supportDanger': color === 'red',\n },\n );\n\n return (\n <li className=\"flex w-full items-center\">\n <button className={itemClasses} type=\"button\" onClick={handleClickItem}>\n {children}\n </button>\n </li>\n );\n}\n","import clsx from 'clsx';\nimport type { CSSProperties, PropsWithChildren } from 'react';\nimport { useContext } from 'react';\n\nimport { DropdownContext } from './dropdown-context';\nimport type { DropdownHorizontalAlign, DropdownVerticalPosition } from './type';\n\ntype Props = {\n maxHeight?: CSSProperties['height'];\n isNoPadding?: boolean;\n verticalPosition?: DropdownVerticalPosition;\n horizontalAlign?: DropdownHorizontalAlign;\n};\n\nexport function DropdownMenu({\n children,\n maxHeight,\n isNoPadding = false,\n verticalPosition = 'bottom',\n horizontalAlign = 'left',\n}: PropsWithChildren<Props>) {\n const { isVisible, isDisabled, targetDimensions, variant, portalTargetRef } = useContext(DropdownContext);\n const wrapperClasses = clsx('z-dropdown w-max overflow-y-auto rounded bg-uiBackground01 shadow-floatingShadow', {\n absolute: !portalTargetRef,\n 'border-solid border border-uiBorder01': variant === 'outline',\n 'py-1': !isNoPadding,\n 'left-0': horizontalAlign === 'left',\n 'right-0': horizontalAlign === 'right',\n 'left-auto': horizontalAlign === 'center',\n });\n\n return (\n isVisible &&\n !isDisabled && (\n <ul\n className={wrapperClasses}\n style={{\n top: !portalTargetRef && verticalPosition === 'bottom' ? `${targetDimensions.height + 4}px` : 'unset',\n bottom: !portalTargetRef && verticalPosition === 'top' ? `${targetDimensions.height + 4}px` : 'unset',\n maxHeight,\n }}\n >\n {children}\n </ul>\n )\n );\n}\n","import type { IconName } from '@zenkigen-inc/component-icons';\nimport { buttonColors, focusVisible } from '@zenkigen-inc/component-theme';\nimport clsx from 'clsx';\nimport type { MutableRefObject, PropsWithChildren, ReactElement } from 'react';\nimport { useCallback, useRef, useState } from 'react';\nimport { createPortal } from 'react-dom';\n\nimport { useOutsideClick } from '../hooks/use-outside-click';\nimport { Icon } from '../icon';\nimport { DropdownContext } from './dropdown-context';\nimport { DropdownItem } from './dropdown-item';\nimport { DropdownMenu } from './dropdown-menu';\n\ntype Props = {\n size?: 'x-small' | 'small' | 'medium' | 'large';\n variant?: 'text' | 'outline';\n title?: string;\n isDisabled?: boolean;\n isArrowHidden?: boolean;\n portalTargetRef?: MutableRefObject<HTMLElement | null>;\n} & (\n | { target: ReactElement; label?: never; icon?: never }\n | {\n target?: undefined;\n label: string;\n icon?: IconName;\n }\n);\n\nexport function Dropdown({\n children,\n target,\n label,\n icon,\n size = 'medium',\n variant = 'outline',\n title,\n isDisabled = false,\n isArrowHidden = false,\n portalTargetRef,\n}: PropsWithChildren<Props>) {\n const [isVisible, setIsVisible] = useState(false);\n const [targetDimensions, setTargetDimensions] = useState({\n width: 0,\n height: 0,\n });\n\n const targetRef = useRef<HTMLDivElement>(null);\n useOutsideClick(targetRef, () => setIsVisible(false));\n\n const handleToggle = useCallback(() => {\n if (targetRef.current === null) {\n return;\n }\n\n if (isVisible) {\n setIsVisible(false);\n } else {\n const dimensions = targetRef.current.getBoundingClientRect();\n const calculatedDimensions = {\n width: dimensions.right - dimensions.left,\n height: dimensions.bottom - dimensions.top,\n };\n\n setTargetDimensions(calculatedDimensions);\n setIsVisible(true);\n }\n }, [isVisible]);\n\n const wrapperClasses = clsx('relative flex shrink-0 items-center gap-1 rounded', {\n 'cursor-not-allowed': isDisabled,\n });\n\n const childrenButtonClasses = clsx(\n 'flex items-center justify-center rounded bg-uiBackground01 p-1 hover:bg-hover02 active:bg-active02',\n focusVisible.normal,\n {\n 'pointer-events-none': isDisabled,\n 'border border-uiBorder02': variant === 'outline',\n },\n );\n\n const buttonClasses = clsx(\n 'flex items-center rounded bg-uiBackground01',\n buttonColors[variant].base,\n buttonColors[variant].hover,\n buttonColors[variant].active,\n buttonColors[variant].disabled,\n focusVisible.normal,\n {\n 'pointer-events-none': isDisabled,\n 'h-6 px-2': size === 'x-small' || size === 'small',\n 'h-8 px-4': size === 'medium',\n 'h-10 px-4': size === 'large',\n },\n );\n\n const labelClasses = clsx('flex items-center', {\n 'mr-1': !isArrowHidden && size === 'x-small',\n 'mr-2': !isArrowHidden && size !== 'x-small',\n 'typography-label12regular': size === 'x-small',\n 'typography-label14regular': size === 'small' || size === 'medium',\n 'typography-label16regular': size === 'large',\n });\n\n return (\n <DropdownContext.Provider\n value={{ isVisible, setIsVisible, isDisabled, targetDimensions, variant, portalTargetRef }}\n >\n <div ref={targetRef} className={wrapperClasses}>\n {target ? (\n <button\n type=\"button\"\n title={title}\n className={childrenButtonClasses}\n onClick={handleToggle}\n disabled={isDisabled}\n >\n {target}\n {!isArrowHidden && (\n <div className=\"ml-2 flex items-center fill-icon01\">\n <Icon\n name={isVisible ? 'angle-small-up' : 'angle-small-down'}\n size={size === 'large' ? 'medium' : 'small'}\n />\n </div>\n )}\n </button>\n ) : (\n <button type=\"button\" title={title} className={buttonClasses} onClick={handleToggle} disabled={isDisabled}>\n {icon && (\n <span className=\"mr-1 flex\">\n <Icon name={icon} size={size === 'large' ? 'medium' : 'small'} />\n </span>\n )}\n <span className={labelClasses}>{label}</span>\n {!isArrowHidden && (\n <div className=\"ml-auto flex items-center\">\n <Icon name={isVisible ? 'angle-small-up' : 'angle-small-down'} size=\"small\" />\n </div>\n )}\n </button>\n )}\n {!portalTargetRef\n ? children\n : portalTargetRef != null && portalTargetRef.current && createPortal(children, portalTargetRef.current)}\n </div>\n </DropdownContext.Provider>\n );\n}\n\nDropdown.Menu = DropdownMenu;\nDropdown.Item = DropdownItem;\n","import { iconElements } from '@zenkigen-inc/component-icons';\nimport { focusVisible } from '@zenkigen-inc/component-theme';\nimport clsx from 'clsx';\nimport { useCallback, useState } from 'react';\n\ntype Props = {\n value: number;\n isEditable?: boolean;\n onChangeRating?: (newRating: number) => void | null;\n size?: 'medium' | 'large';\n};\n\nexport function EvaluationStar({ value, isEditable = false, onChangeRating, size = 'medium' }: Props) {\n const maxRating = 5;\n const [currentRating, setCurrentRating] = useState(value);\n\n const handleChangeRating = useCallback(\n (newRating: number) => {\n if (isEditable) {\n setCurrentRating(newRating);\n if (onChangeRating) {\n onChangeRating(newRating);\n }\n }\n },\n [isEditable, onChangeRating],\n );\n\n const starClasses = clsx(focusVisible.inset, { 'w-6 h-6': size === 'large', 'w-4 h-4': size === 'medium' });\n const ratingStars = [];\n for (let i = 1; i < maxRating + 1; i++) {\n const color = i <= currentRating ? 'fill-yellow-yellow50' : 'fill-icon03';\n ratingStars.push(\n <button\n type=\"button\"\n key={i}\n onClick={() => handleChangeRating(i)}\n className={clsx(color, starClasses)}\n disabled={!isEditable}\n >\n {iconElements['star-filled']}\n </button>,\n );\n }\n\n return <span className=\"flex flex-row\">{ratingStars}</span>;\n}\n","import { typography } from '@zenkigen-inc/component-theme';\nimport { clsx } from 'clsx';\nimport type { ReactNode } from 'react';\n\ntype Level = 1 | 2 | 3 | 4 | 5;\n\ntype Props = {\n level: Level;\n before?: ReactNode;\n after?: ReactNode;\n children?: ReactNode;\n};\n\nexport function Heading(props: Props) {\n const TagName = `h${props.level}` as const;\n\n const classes = clsx(`flex items-center text-text01`, typography.heading[TagName], {\n 'gap-2': props.level === 1,\n 'gap-1': props.level > 1,\n });\n\n return (\n <TagName className={classes}>\n {props.before}\n {props.children}\n {props.after}\n </TagName>\n );\n}\n","import type { IconName } from '@zenkigen-inc/component-icons';\nimport { buttonColors, focusVisible } from '@zenkigen-inc/component-theme';\nimport { clsx } from 'clsx';\n\nimport { Icon } from '../icon/icon';\n\ntype Size = 'small' | 'medium' | 'large';\n\ntype Variant = 'outline' | 'text';\n\ntype Props = {\n icon: IconName;\n size?: Size;\n isDisabled?: boolean;\n isNoPadding?: boolean;\n variant?: Variant;\n} & (\n | {\n isAnchor: true;\n href: string;\n target?: HTMLAnchorElement['target'];\n }\n | {\n isAnchor?: false;\n onClick?: () => void;\n }\n);\n\nexport function IconButton({\n size = 'medium',\n variant = 'outline',\n isNoPadding = false,\n isDisabled = false,\n ...props\n}: Props) {\n const baseClasses = clsx(\n 'typography-label16regular flex items-center justify-center gap-1 rounded',\n buttonColors[variant].base,\n buttonColors[variant].hover,\n buttonColors[variant].active,\n buttonColors[variant].disabled,\n focusVisible.normal,\n {\n 'h-4 w-4': size === 'small' && isNoPadding,\n 'h-6 w-6': (size === 'small' && !isNoPadding) || ((size === 'medium' || size === 'large') && isNoPadding),\n 'h-8 w-8': size === 'medium' && !isNoPadding,\n 'h-10 w-10': size === 'large' && !isNoPadding,\n 'inline-flex': props.isAnchor,\n 'pointer-events-none': isDisabled,\n },\n );\n\n const iconSize = size === 'small' ? 'small' : 'medium';\n\n if (props.isAnchor === true) {\n return (\n <a className={baseClasses} href={props.href} target={props.target}>\n <Icon name={props.icon} size={iconSize} />\n </a>\n );\n } else {\n return (\n <button type=\"button\" className={baseClasses} disabled={isDisabled} onClick={props.onClick}>\n <Icon name={props.icon} size={iconSize} />\n </button>\n );\n }\n}\n","import clsx from 'clsx';\n\ntype Props = {\n size?: 'small' | 'medium' | 'large';\n position?: 'fixed' | 'absolute' | 'static';\n height?: string;\n};\n\nexport function Loading({ size = 'medium', position = 'fixed', height = '100%' }: Props) {\n const wrapperClasses = clsx(position, 'left-0 top-0 z-20 flex w-full items-center justify-center');\n\n const svgClasses = clsx({\n 'h-4 w-4': size === 'small',\n 'h-8 w-8': size === 'medium',\n 'h-16 w-16': size === 'large',\n });\n\n return (\n <>\n <div className={wrapperClasses} style={{ height }}>\n {size === 'small' && (\n <svg className={svgClasses} viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <circle\n className=\"origin-center animate-circular-small-move stroke-interactive01\"\n cx=\"8\"\n cy=\"8\"\n r=\"7\"\n stroke=\"currentColor\"\n strokeWidth=\"1.5\"\n fill=\"none\"\n />\n </svg>\n )}\n {size === 'medium' && (\n <svg className={svgClasses} viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <circle\n className=\"origin-center animate-circular-medium-move stroke-interactive01\"\n cx=\"16\"\n cy=\"16\"\n r=\"15\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n fill=\"none\"\n />\n </svg>\n )}\n {size === 'large' && (\n <svg className={svgClasses} viewBox=\"0 0 64 64\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <circle\n className=\"origin-center animate-circular-large-move stroke-interactive01\"\n cx=\"32\"\n cy=\"32\"\n r=\"30\"\n stroke=\"currentColor\"\n strokeWidth=\"3\"\n fill=\"none\"\n />\n </svg>\n )}\n </div>\n </>\n );\n}\n","import type { PropsWithChildren } from 'react';\n\nexport function ModalBody({ children }: PropsWithChildren) {\n return <div className=\"overflow-y-auto\">{children}</div>;\n}\n","import { createContext } from 'react';\n\ntype ModalReturnType = {\n onClose?: () => void;\n};\n\nexport const ModalContext = createContext<ModalReturnType>({\n onClose: () => null,\n});\n","import clsx from 'clsx';\nimport type { PropsWithChildren } from 'react';\nimport React from 'react';\n\ntype Props = {\n isNoBorder?: boolean;\n};\n\nexport function ModalFooter({ children, isNoBorder = false }: PropsWithChildren<Props>) {\n const wrapperClasses = clsx('flex w-full shrink-0 items-center rounded-b-lg px-6 py-4', {\n 'border-t-[1px] border-uiBorder01': !isNoBorder,\n });\n\n return <div className={wrapperClasses}>{children}</div>;\n}\n","import clsx from 'clsx';\nimport type { PropsWithChildren } from 'react';\nimport { useContext } from 'react';\n\nimport { IconButton } from '../icon-button';\nimport { ModalContext } from './modal-context';\n\ntype Props = {\n isNoBorder?: boolean;\n};\n\nexport function ModalHeader({ children, isNoBorder = false }: PropsWithChildren<Props>) {\n const { onClose } = useContext(ModalContext);\n\n const headerClasses = clsx(\n 'typography-h5 flex w-full shrink-0 items-center justify-between rounded-t-lg px-6 text-text01',\n {\n 'border-b border-uiBorder01': !isNoBorder,\n 'h-14': !onClose,\n 'h-12': onClose,\n },\n );\n\n return (\n <div className={headerClasses}>\n <div>{children}</div>\n {onClose && <IconButton icon=\"close\" size=\"small\" variant=\"text\" onClick={onClose} />}\n </div>\n );\n}\n","import type { CSSProperties, MutableRefObject, PropsWithChildren } from 'react';\nimport { useEffect, useState } from 'react';\nimport { createPortal } from 'react-dom';\n\nimport { ModalBody } from './modal-body';\nimport { ModalContext } from './modal-context';\nimport { ModalFooter } from './modal-footer';\nimport { ModalHeader } from './modal-header';\n\nconst LIMIT_WIDTH = 320;\nconst LIMIT_HEIGHT = 184;\n\ntype Props = {\n width?: CSSProperties['width'];\n height?: CSSProperties['height'];\n isOpen: boolean;\n onClose?: () => void;\n portalTargetRef?: MutableRefObject<HTMLElement | null>;\n};\n\nexport function Modal({ children, width = 480, height, isOpen, onClose, portalTargetRef }: PropsWithChildren<Props>) {\n const [isMounted, setIsMounted] = useState(false);\n\n const renderWidth = typeof width === 'number' ? Math.max(width, LIMIT_WIDTH) : width;\n const renderHeight = typeof height === 'number' ? Math.max(height, LIMIT_HEIGHT) : height;\n\n useEffect(() => {\n setIsMounted(true);\n }, []);\n\n return isMounted && isOpen\n ? createPortal(\n <ModalContext.Provider value={{ onClose }}>\n <div className=\"fixed left-0 top-0 z-overlay flex size-full items-center justify-center bg-backgroundOverlayBlack py-4\">\n <div\n className=\"grid max-h-full min-h-[120px] grid-rows-[max-content_1fr_max-content] flex-col rounded-lg bg-uiBackground01 shadow-modalShadow\"\n style={{ width: renderWidth, height: renderHeight }}\n >\n {children}\n </div>\n </div>\n </ModalContext.Provider>,\n portalTargetRef?.current != null ? portalTargetRef.current : document.body,\n )\n : null;\n}\n\nModal.Body = ModalBody;\nModal.Header = ModalHeader;\nModal.Footer = ModalFooter;\n","import { clsx } from 'clsx';\nimport type { ReactNode } from 'react';\n\nimport { Icon } from '../icon';\nimport { IconButton } from '../icon-button';\n\ntype Props = {\n state?: 'success' | 'warning' | 'information' | 'attention' | 'default';\n size?: 'small' | 'medium';\n children?: ReactNode;\n} & (\n | { showClose?: false }\n | {\n showClose: true;\n onClickClose: () => void;\n }\n);\n\nexport function NotificationInline({ state = 'default', size = 'medium', ...props }: Props) {\n const wrapperClasses = clsx('typography-body13regular flex items-center gap-1 rounded text-text01', {\n 'bg-uiBackgroundError': state === 'attention',\n 'bg-uiBackgroundWarning': state === 'warning',\n 'bg-uiBackgroundBlue': state === 'information',\n 'bg-uiBackgroundSuccess': state === 'success',\n 'bg-uiBackgroundGray': state === 'default',\n 'p-2': size === 'small',\n 'p-3': size === 'medium',\n });\n\n const iconClasses = clsx('flex items-center', {\n 'fill-supportError': state === 'attention',\n 'fill-supportWarning': state === 'warning',\n 'fill-blue-blue50': state === 'information',\n 'fill-supportSuccess': state === 'success',\n });\n\n const iconName = {\n attention: 'attention',\n success: 'success-filled',\n warning: 'warning',\n information: 'information-filled',\n } as const;\n\n const iconSize = {\n small: 'small',\n medium: 'medium',\n } as const;\n\n return (\n <div className={wrapperClasses}>\n {state !== 'default' && (\n <div className={iconClasses}>\n <Icon name={iconName[state]} size={iconSize[size]} />\n </div>\n )}\n <p className=\"flex-1\">{props.children}</p>\n {props.showClose === true && (\n <div className=\"flex items-center\">\n <IconButton icon=\"close\" size=\"small\" variant=\"text\" />\n </div>\n )}\n </div>\n );\n}\n","import { createContext } from 'react';\n\ntype PaginationContextType = {\n /** 現在のページ番号 */\n currentPage: number;\n};\n\nexport const PaginationContext = createContext<PaginationContextType>({\n currentPage: 0,\n});\n","import { clsx } from 'clsx';\nimport { useContext } from 'react';\n\nimport { PaginationContext } from './pagination-context';\n\ntype Props = {\n page: number;\n onClick: (value: number) => void;\n};\n\nexport function PaginationButton({ page, onClick }: Props) {\n const { currentPage } = useContext(PaginationContext);\n\n const buttonClasses = clsx(\n 'flex h-8 min-w-8 items-center justify-center rounded fill-icon01 px-1',\n 'typography-label14regular',\n 'text-interactive02',\n 'hover:bg-hover02',\n { 'border border-uiBorder02': page === currentPage },\n { 'border-transparent': page !== currentPage },\n );\n\n return (\n <button type=\"button\" className={buttonClasses} onClick={() => onClick(page)}>\n {page}\n </button>\n );\n}\n","import { Icon } from '../icon';\nimport { IconButton } from '../icon-button';\nimport { PaginationButton } from './pagination-button';\nimport { PaginationContext } from './pagination-context';\n\nconst START_PAGE = 1;\n\ntype Props = {\n /** 現在のページ番号 */\n currentPage: number;\n /** トータルのページ数 */\n totalPage: number;\n /** 現在のページ番号を中心としたときの、左右のページボタン数 */\n sideNumPagesToShow?: number;\n /** ボタンが押されたときのイベントハンドラ */\n onClick: (value: number) => void;\n};\n\nexport function Pagination({ currentPage, totalPage, sideNumPagesToShow = 3, onClick }: Props) {\n let center = Math.max(currentPage, START_PAGE + 1);\n center = Math.min(center, totalPage - 1);\n\n const start = Math.max(center - sideNumPagesToShow, START_PAGE + 1);\n const end = Math.min(center + sideNumPagesToShow, totalPage - 1);\n const offsetStart = center + sideNumPagesToShow >= totalPage ? totalPage - center - sideNumPagesToShow : 0;\n const offsetEnd = center <= sideNumPagesToShow ? sideNumPagesToShow - center + 1 : 0;\n\n const pageList: Array<number> = [];\n for (let i = start + offsetStart; i <= end + offsetEnd; i++) {\n pageList.push(i);\n }\n\n const threeDotIconClasses = 'flex h-8 w-8 items-center justify-center gap-1 fill-icon01';\n\n return (\n <PaginationContext.Provider\n value={{\n currentPage,\n }}\n >\n <ul className=\"flex gap-1\">\n <li className=\"flex items-center\">\n <IconButton\n isDisabled={currentPage === START_PAGE}\n variant=\"text\"\n icon=\"angle-left\"\n size=\"small\"\n onClick={() => onClick(currentPage - 1)}\n />\n </li>\n <li>\n <PaginationButton onClick={() => onClick(START_PAGE)} page={START_PAGE} />\n </li>\n {pageList.length !== 0 && pageList[0] !== 2 && (\n <li className={threeDotIconClasses}>\n <Icon name=\"more\" size=\"small\" />\n </li>\n )}\n {pageList.map((page: number, index: number) => (\n <li key={index}>\n <PaginationButton onClick={() => onClick(page)} page={page} />\n </li>\n ))}\n {pageList.length !== 0 && pageList[pageList.length - 1] !== totalPage - 1 && (\n <li className={threeDotIconClasses}>\n <Icon name=\"more\" size=\"small\" />\n </li>\n )}\n <li>\n <PaginationButton onClick={() => onClick(totalPage)} page={totalPage} />\n </li>\n <li className=\"flex items-center\">\n <IconButton\n isDisabled={currentPage === totalPage}\n variant=\"text\"\n icon=\"angle-right\"\n size=\"small\"\n onClick={() => onClick(currentPage + 1)}\n />\n </li>\n </ul>\n </PaginationContext.Provider>\n );\n}\n","import { createContext } from 'react';\n\nimport type { SelectOption } from './type';\n\ntype UseSelectReturnType = {\n size?: 'x-small' | 'small' | 'medium' | 'large';\n placeholder?: string;\n selectedOption?: SelectOption | null;\n setIsOptionListOpen: React.Dispatch<React.SetStateAction<boolean>>;\n onChange?: (option: SelectOption | null) => void;\n variant?: 'text' | 'outline';\n};\n\nexport const SelectContext = createContext<UseSelectReturnType>({\n size: 'medium',\n setIsOptionListOpen: () => false,\n variant: 'outline',\n});\n","import { focusVisible } from '@zenkigen-inc/component-theme';\nimport clsx from 'clsx';\nimport { useContext } from 'react';\n\nimport { Icon } from '../icon';\nimport { SelectContext } from './select-context';\nimport type { SelectOption } from './type';\n\ntype Props = {\n option: SelectOption;\n};\n\nexport function SelectItem({ option }: Props) {\n const { setIsOptionListOpen, selectedOption, onChange } = useContext(SelectContext);\n\n const handleClickItem = (option: SelectOption) => {\n onChange?.(option);\n setIsOptionListOpen(false);\n };\n\n const itemClasses = clsx(\n 'typography-label14regular flex h-8 w-full items-center px-3 hover:bg-hover02 active:bg-active02',\n focusVisible.inset,\n {\n 'text-interactive01 fill-interactive01 bg-selectedUi': option.id === selectedOption?.id,\n 'text-interactive02 fill-icon01 bg-uiBackground01': option.id !== selectedOption?.id,\n },\n );\n\n return (\n <li className=\"flex w-full items-center\" key={option.id} data-id={option.id}>\n <button className={itemClasses} type=\"button\" onClick={() => handleClickItem(option)}>\n {option.icon && <Icon name={option.icon} size=\"small\" />}\n <span className=\"ml-1 mr-6\">{option.label}</span>\n {option.id === selectedOption?.id && (\n <div className=\"ml-auto flex items-center\">\n <Icon name=\"check\" size=\"small\" />\n </div>\n )}\n </button>\n </li>\n );\n}\n","import { focusVisible } from '@zenkigen-inc/component-theme';\nimport clsx from 'clsx';\nimport type { CSSProperties, PropsWithChildren } from 'react';\nimport { useContext, useLayoutEffect, useRef } from 'react';\n\nimport { SelectContext } from './select-context';\n\ntype Props = {\n maxHeight?: CSSProperties['height'];\n};\n\nexport function SelectList({ children, maxHeight }: PropsWithChildren<Props>) {\n const ref = useRef<HTMLUListElement>(null);\n const { size, selectedOption, setIsOptionListOpen, variant, placeholder, onChange } = useContext(SelectContext);\n\n const handleClickDeselect = () => {\n onChange?.(null);\n setIsOptionListOpen(false);\n };\n\n useLayoutEffect(() => {\n if (maxHeight != null && ref.current) {\n const element = Array.from(ref.current.children ?? []).find(\n (item) => item.getAttribute('data-id') === selectedOption?.id,\n );\n if (element != null && ref.current.scroll != null) {\n const wrapRect = ref.current.getBoundingClientRect();\n const rect = element.getBoundingClientRect();\n ref.current.scroll(0, rect.top - wrapRect.top - wrapRect.height / 2 + rect.height / 2);\n }\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const listClasses = clsx(\n 'absolute z-dropdown w-max overflow-y-auto rounded bg-uiBackground01 py-2 shadow-floatingShadow',\n {\n 'top-7': size === 'x-small' || size === 'small',\n 'top-9': size === 'medium',\n 'top-11': size === 'large',\n 'border-solid border border-uiBorder01': variant === 'outline',\n },\n );\n\n const deselectButtonClasses = clsx(\n 'typography-label14regular flex h-8 w-full items-center px-3 text-interactive02 hover:bg-hover02 active:bg-active02',\n focusVisible.inset,\n );\n\n return (\n <ul className={listClasses} style={{ maxHeight }} ref={ref}>\n {children}\n {placeholder != null && selectedOption !== null && (\n <li>\n <button className={deselectButtonClasses} type=\"button\" onClick={handleClickDeselect}>\n 選択解除\n </button>\n </li>\n )}\n </ul>\n );\n}\n","import type { IconName } from '@zenkigen-inc/component-icons';\nimport { buttonColors, focusVisible } from '@zenkigen-inc/component-theme';\nimport clsx from 'clsx';\nimport type { CSSProperties, PropsWithChildren } from 'react';\nimport { useRef, useState } from 'react';\n\nimport { useOutsideClick } from '../hooks/use-outside-click';\nimport { Icon } from '../icon';\nimport { SelectContext } from './select-context';\nimport { SelectItem } from './select-item';\nimport { SelectList } from './select-list';\nimport type { SelectOption } from './type';\n\ntype Props = {\n size?: 'x-small' | 'small' | 'medium' | 'large';\n variant?: 'outline' | 'text';\n width?: CSSProperties['width'];\n maxWidth?: CSSProperties['maxWidth'];\n placeholder?: string;\n placeholderIcon?: IconName;\n selectedOption?: SelectOption | null;\n optionListMaxHeight?: CSSProperties['height'];\n isDisabled?: boolean;\n isOptionSelected?: boolean;\n onChange?: (option: SelectOption | null) => void;\n};\n\nexport function Select({\n children,\n size = 'medium',\n variant = 'outline',\n width,\n maxWidth,\n placeholder,\n placeholderIcon,\n selectedOption = null,\n isDisabled = false,\n isOptionSelected = false,\n onChange,\n optionListMaxHeight,\n}: PropsWithChildren<Props>) {\n const [isOptionListOpen, setIsOptionListOpen] = useState(false);\n const targetRef = useRef<HTMLDivElement>(null);\n useOutsideClick(targetRef, () => setIsOptionListOpen(false));\n\n const handleClickToggle = () => setIsOptionListOpen((prev) => !prev);\n\n const wrapperClasses = clsx('relative flex shrink-0 items-center gap-1 rounded bg-uiBackground01', {\n 'h-6': size === 'x-small' || size === 'small',\n 'h-8': size === 'medium',\n 'h-10': size === 'large',\n 'cursor-not-allowed': isDisabled,\n });\n\n const buttonClasses = clsx(\n 'flex size-full items-center rounded',\n buttonColors[variant].hover,\n buttonColors[variant].active,\n buttonColors[variant].disabled,\n focusVisible.normal,\n {\n [buttonColors[variant].selected]: isOptionSelected && !isDisabled && selectedOption,\n [buttonColors[variant].base]: !(isOptionSelected && !isDisabled && selectedOption),\n 'px-2': size === 'x-small' || size === 'small',\n 'px-4': size === 'medium' || size === 'large',\n 'pointer-events-none': isDisabled,\n },\n );\n\n const labelClasses = clsx('overflow-hidden', {\n 'mr-1': size === 'x-small',\n 'mr-2': size !== 'x-small',\n 'typography-label12regular': size === 'x-small',\n 'typography-label14regular': size === 'small' || size === 'medium',\n 'typography-label16regular': size === 'large',\n });\n\n return (\n <SelectContext.Provider\n value={{\n size,\n variant,\n placeholder,\n setIsOptionListOpen,\n selectedOption,\n onChange,\n }}\n >\n <div className={wrapperClasses} style={{ width, maxWidth }} ref={targetRef}>\n <button className={buttonClasses} type=\"button\" onClick={handleClickToggle} disabled={isDisabled}>\n {selectedOption?.icon ? (\n <div className=\"mr-1 flex\">\n <Icon name={selectedOption.icon} size={size === 'large' ? 'medium' : 'small'} />\n </div>\n ) : (\n placeholder != null &&\n placeholderIcon && (\n <div className=\"mr-1 flex\">\n <Icon name={placeholderIcon} size={size === 'large' ? 'medium' : 'small'} />\n </div>\n )\n )}\n <div className={labelClasses}>\n <div className=\"truncate\">{selectedOption ? selectedOption.label : placeholder != null && placeholder}</div>\n </div>\n <div className=\"ml-auto flex items-center\">\n <Icon\n name={isOptionListOpen ? 'angle-small-up' : 'angle-small-down'}\n size={size === 'large' ? 'medium' : 'small'}\n />\n </div>\n </button>\n {isOptionListOpen && !isDisabled && <SelectList maxHeight={optionListMaxHeight}>{children}</SelectList>}\n </div>\n </SelectContext.Provider>\n );\n}\n\nSelect.Option = SelectItem;\n","import { IconButton } from '../icon-button';\nimport type { SelectOption } from '../select';\nimport { Select } from '../select';\n\ntype Props = {\n /** トータル件数 */\n totalSize: number;\n /** ページあたり件数 */\n sizePerPage: number;\n /** 現在のページ番号 */\n currentPage: number;\n /** 件数表示単位ラベル */\n countLabel?: string;\n /** ページ表示単位ラベル */\n pageLabel?: string;\n /** Selectのリストの最大の高さ */\n optionListMaxHeight?: number;\n /** 戻るボタンクリック時のイベントハンドラ */\n onClickPrevButton: () => void;\n /** 進むボタンクリック時のイベントハンドラ */\n onClickNextButton: () => void;\n /** Selectが切り替わった時のイベントハンドラ */\n onChange: (value: number) => void;\n};\n\nexport function PaginationSelect({\n totalSize,\n currentPage,\n sizePerPage,\n countLabel = '件',\n pageLabel = 'ページ',\n optionListMaxHeight = 190,\n onClickPrevButton,\n onClickNextButton,\n onChange,\n}: Props) {\n const pageMax = Math.ceil(totalSize / sizePerPage);\n\n const optionsList: SelectOption[] = [...Array(pageMax)].map((_, index) => {\n const value = (index + 1).toString();\n\n return {\n id: value,\n value,\n label: value,\n };\n });\n\n const minCount = totalSize ? (currentPage - 1) * sizePerPage + 1 : 0;\n const maxCount = currentPage * sizePerPage > totalSize ? totalSize : currentPage * sizePerPage;\n\n return (\n <nav aria-label=\"pagination\" className=\"flex items-center gap-x-1\">\n <div className=\"flex items-center gap-x-2\">\n <div className=\"typography-label14regular text-text01\">\n {minCount > 0 && `${minCount} - `}\n {maxCount}\n {countLabel}\n </div>\n <Select\n size=\"medium\"\n variant=\"outline\"\n selectedOption={optionsList.find((option) => option.value === currentPage.toString())}\n optionListMaxHeight={optionListMaxHeight}\n onChange={(option) => option && onChange(Number(option.value))}\n isDisabled={pageMax === 0}\n >\n {optionsList.map((option) => (\n <Select.Option key={option.id} option={option} />\n ))}\n </Select>\n <div className=\"typography-label14regular text-text03\">\n / {pageMax}\n {pageLabel}\n </div>\n </div>\n <div className=\"flex items-center\">\n <IconButton\n variant=\"text\"\n icon=\"angle-left\"\n size=\"small\"\n isDisabled={currentPage === 1}\n onClick={onClickPrevButton}\n />\n <IconButton\n variant=\"text\"\n icon=\"angle-right\"\n size=\"small\"\n isDisabled={currentPage === pageMax || pageMax === 0}\n onClick={onClickNextButton}\n />\n </div>\n </nav>\n );\n}\n","import { focusVisible } from '@zenkigen-inc/component-theme';\nimport clsx from 'clsx';\nimport type { ChangeEvent } from 'react';\nimport { useCallback, useState } from 'react';\n\ntype Props = {\n name?: string;\n value?: string;\n id?: string;\n label?: string;\n isChecked?: boolean;\n isDisabled?: boolean;\n onChange?: (e: ChangeEvent<HTMLInputElement>) => void;\n};\n\nexport function Radio({ name, value, id, label, isChecked = false, isDisabled = false, onChange }: Props) {\n const [isMouseOver, setIsMouseOver] = useState(false);\n\n const handleMouseOverInput = useCallback(() => {\n setIsMouseOver(true);\n }, []);\n\n const handleMouseOutInput = useCallback(() => {\n setIsMouseOver(false);\n }, []);\n\n const handleChange = useCallback(\n (e: ChangeEvent<HTMLInputElement>) => !isDisabled && onChange?.(e),\n [isDisabled, onChange],\n );\n\n const inputClasses = clsx('peer absolute z-[1] size-6 opacity-0', {\n 'cursor-not-allowed': isDisabled,\n 'cursor-pointer': !isDisabled,\n });\n\n const boxClasses = clsx(\n 'inline-flex size-5 items-center justify-center rounded-full border border-solid bg-white',\n focusVisible.normalPeer,\n {\n 'border-disabled01 hover:border-disabled01': isDisabled && !isMouseOver,\n 'border-hoverUiBorder': !isDisabled && isMouseOver,\n 'border-uiBorder03': !isDisabled,\n 'cursor-not-allowed': isDisabled,\n 'cursor-pointer': !isDisabled,\n },\n );\n\n const afterClasses = clsx('absolute inset-0 m-auto block size-3 rounded-full', {\n 'bg-disabled01': isDisabled && isChecked,\n 'bg-activeSelectedUi': !isDisabled && isChecked,\n 'scale-0': !isChecked,\n 'scale-100': isChecked,\n });\n\n const hoverIndicatorClasses = clsx('inline-block size-3 rounded-full', {\n 'bg-hoverUi': !isDisabled && !isChecked && isMouseOver,\n });\n\n const labelClasses = clsx('typography-label14regular ml-2 flex-[1_0_0] select-none break-all', {\n 'pointer-events-none cursor-not-allowed text-disabled01': isDisabled,\n 'cursor-pointer text-text01': !isDisabled,\n });\n\n return (\n <div className=\"flex items-center\">\n <div className=\"flex size-6 items-center justify-center\">\n <input\n type=\"checkbox\"\n value={value}\n name={name}\n id={id}\n checked={isChecked}\n disabled={isDisabled}\n onChange={handleChange}\n onMouseOver={handleMouseOverInput}\n onMouseLeave={handleMouseOutInput}\n className={inputClasses}\n />\n <div className={boxClasses}>\n <div className=\"relative flex size-5 flex-[0_0_auto] items-center justify-center\">\n <span className={afterClasses} />\n <span className={hoverIndicatorClasses} />\n </div>\n </div>\n </div>\n <label htmlFor={id} className={labelClasses}>\n {label}\n </label>\n </div>\n );\n}\n","import { clsx } from 'clsx';\nimport type { ChangeEvent, FormEvent } from 'react';\nimport { forwardRef } from 'react';\n\nimport { Icon } from '../icon';\nimport { IconButton } from '../icon-button';\n\ntype Props = {\n size?: 'medium' | 'large';\n placeholder?: string;\n width?: string;\n value: string;\n onChange?: (e: ChangeEvent<HTMLInputElement>) => void;\n onSubmit?: (e: FormEvent<HTMLFormElement>) => void;\n onClickClearButton?: () => void;\n};\n\nexport const Search = forwardRef<HTMLDivElement, Props>(({ width = '100%', size = 'medium', ...props }: Props, ref) => {\n const classes = clsx(\n 'flex items-center rounded-full border border-uiBorder02 bg-uiBackground01 focus-within:border-activeInput',\n { 'h-8 px-3': size === 'medium' },\n { 'h-10 px-4': size === 'large' },\n );\n\n const inputClasses = clsx('mx-2.5 h-full flex-1 text-text01 outline-0 placeholder:text-textPlaceholder', {\n ['typography-label14regular']: size === 'medium',\n ['typography-label16regular']: size === 'large',\n });\n\n return (\n <div className=\"relative\" ref={ref}>\n <form onSubmit={props.onSubmit}>\n <div className={classes} style={{ width }}>\n <Icon name=\"search\" color=\"icon01\" size=\"medium\" />\n <input\n type=\"text\"\n size={1}\n value={props.value}\n className={inputClasses}\n placeholder={props.placeholder}\n onChange={props.onChange}\n />\n {props.onClickClearButton && props.value && props.value.length !== 0 && (\n <IconButton\n variant=\"text\"\n icon=\"close\"\n size={size === 'medium' ? 'small' : 'medium'}\n isNoPadding\n onClick={props.onClickClearButton}\n />\n )}\n </div>\n </form>\n </div>\n );\n});\nSearch.displayName = 'Search';\n","import { focusVisible } from '@zenkigen-inc/component-theme';\nimport clsx from 'clsx';\nimport type { PropsWithChildren } from 'react';\n\nimport { Icon } from '../icon';\n\ntype Props = {\n isSortKey: boolean;\n onClickItem: () => void;\n};\n\nexport function SelectItem({ children, isSortKey, onClickItem }: PropsWithChildren<Props>) {\n const itemClasses = clsx(\n 'typography-label14regular flex h-8 w-full items-center px-3 hover:bg-hover02 active:bg-active02',\n focusVisible.inset,\n {\n 'bg-selectedUi fill-interactive01 text-interactive01': isSortKey,\n 'bg-uiBackground01 fill-icon01 text-interactive02': !isSortKey,\n },\n );\n\n return (\n <li className=\"flex w-full items-center\" onClick={onClickItem}>\n <button className={itemClasses} type=\"button\">\n <span className=\"ml-1 mr-6\">{children}</span>\n {isSortKey && (\n <div className=\"ml-auto flex items-center\">\n <Icon name=\"check\" size=\"small\" />\n </div>\n )}\n </button>\n </li>\n );\n}\n","import { focusVisible } from '@zenkigen-inc/component-theme';\nimport clsx from 'clsx';\n\nimport { SelectItem } from './select-item';\nimport type { SortOrder } from './type';\n\ntype Props = {\n size: 'x-small' | 'small' | 'medium' | 'large';\n variant: 'text' | 'outline';\n sortOrder: SortOrder;\n onClickItem: (value: SortOrder) => void;\n onClickDeselect?: () => void;\n};\n\nexport function SelectList({ size, variant, sortOrder, onClickItem, onClickDeselect }: Props) {\n const listClasses = clsx(\n 'absolute z-dropdown w-max overflow-y-auto rounded bg-uiBackground01 py-2 shadow-floatingShadow',\n {\n 'top-7': size === 'x-small' || size === 'small',\n 'top-9': size === 'medium',\n 'top-11': size === 'large',\n 'border-solid border border-uiBorder01': variant === 'outline',\n },\n );\n\n const deselectButtonClasses = clsx(\n 'typography-label14regular flex h-8 w-full items-center px-3 text-interactive02 hover:bg-hover02 active:bg-active02',\n focusVisible.inset,\n );\n\n return (\n <ul className={listClasses}>\n <SelectItem isSortKey={sortOrder === 'ascend'} onClickItem={() => onClickItem('ascend')}>\n 昇順で並び替え\n </SelectItem>\n <SelectItem isSortKey={sortOrder === 'descend'} onClickItem={() => onClickItem('descend')}>\n 降順で並び替え\n </SelectItem>\n {sortOrder !== null && onClickDeselect && (\n <li>\n <button className={deselectButtonClasses} type=\"button\" onClick={onClickDeselect}>\n 選択解除\n </button>\n </li>\n )}\n </ul>\n );\n}\n","import { buttonColors, focusVisible } from '@zenkigen-inc/component-theme';\nimport clsx from 'clsx';\nimport type { CSSProperties } from 'react';\nimport { useCallback, useRef, useState } from 'react';\n\nimport { useOutsideClick } from '../hooks/use-outside-click';\nimport { Icon } from '../icon';\nimport { SelectList } from './select-list';\nimport type { SortOrder } from './type';\n\ntype Props = {\n size?: 'x-small' | 'small' | 'medium' | 'large';\n variant?: 'outline' | 'text';\n width?: CSSProperties['width'];\n label: string;\n sortOrder: SortOrder;\n isDisabled?: boolean;\n isSortKey?: boolean;\n onChange?: (value: SortOrder) => void;\n onClickDeselect?: () => void;\n};\n\nexport function SelectSort({\n size = 'medium',\n variant = 'outline',\n width,\n label,\n sortOrder,\n isDisabled = false,\n isSortKey = false,\n onChange,\n onClickDeselect,\n}: Props) {\n const [isOptionListOpen, setIsOptionListOpen] = useState(false);\n const targetRef = useRef<HTMLDivElement>(null);\n useOutsideClick(targetRef, () => setIsOptionListOpen(false));\n\n const handleClickToggle = () => setIsOptionListOpen((prev) => !prev);\n const handleClickItem = useCallback(\n (value: SortOrder) => {\n onChange?.(value);\n setIsOptionListOpen(false);\n },\n [onChange],\n );\n\n const wrapperClasses = clsx('relative flex shrink-0 items-center gap-1 rounded', {\n 'h-6': size === 'x-small' || size === 'small',\n 'h-8': size === 'medium',\n 'h-10': size === 'large',\n 'cursor-not-allowed': isDisabled,\n });\n\n const buttonClasses = clsx(\n 'flex size-full items-center rounded',\n buttonColors[variant].hover,\n buttonColors[variant].active,\n buttonColors[variant].disabled,\n focusVisible.normal,\n {\n [buttonColors[variant].selected]: isSortKey,\n [buttonColors[variant].base]: !isSortKey,\n 'px-2': size === 'x-small' || size === 'small',\n 'px-4': size === 'medium' || size === 'large',\n 'pointer-events-none': isDisabled,\n },\n );\n\n const labelClasses = clsx('truncate', {\n 'typography-label12regular': size === 'x-small',\n 'typography-label14regular': size === 'small' || size === 'medium',\n 'typography-label16regular': size === 'large',\n 'mr-1': size === 'x-small',\n 'mr-2': size !== 'x-small',\n });\n\n return (\n <div className={wrapperClasses} style={{ width }} ref={targetRef}>\n <button className={buttonClasses} type=\"button\" onClick={handleClickToggle} disabled={isDisabled}>\n <div className={labelClasses}>{label}</div>\n <div className=\"ml-auto flex items-center\">\n {isSortKey ? (\n <Icon\n name={sortOrder === 'ascend' ? 'arrow-up' : 'arrow-down'}\n size={size === 'large' ? 'medium' : 'small'}\n />\n ) : (\n <Icon\n name={isOptionListOpen ? 'angle-small-up' : 'angle-small-down'}\n size={size === 'large' ? 'medium' : 'small'}\n />\n )}\n </div>\n </button>\n {isOptionListOpen && !isDisabled && (\n <SelectList\n size={size}\n variant={variant}\n sortOrder={sortOrder}\n onClickItem={handleClickItem}\n onClickDeselect={onClickDeselect}\n />\n )}\n </div>\n );\n}\n","import { clsx } from 'clsx';\nimport type { ReactNode } from 'react';\n\ntype Props = {\n id: string;\n isSelected?: boolean;\n isDisabled?: boolean;\n children?: ReactNode;\n onClick: (id: string) => void;\n};\n\nexport const TabItem = ({ isSelected = false, ...props }: Props) => {\n const classes = clsx(\n 'relative z-0 flex py-2 leading-[24px] before:absolute before:inset-x-0 before:bottom-0 before:h-px hover:text-text01 disabled:pointer-events-none disabled:text-disabled01',\n {\n 'typography-label14regular': !isSelected,\n 'text-interactive02 hover:before:bg-uiBorder02Dark': !isSelected,\n 'typography-label14bold': isSelected,\n 'before:bg-interactive01 hover:before:bg-interactive01 pointer-events-none': isSelected,\n },\n );\n\n return (\n <button\n type=\"button\"\n role=\"tab\"\n aria-selected={isSelected}\n className={classes}\n disabled={props.isDisabled}\n onClick={() => props.onClick(props.id)}\n >\n {props.children}\n </button>\n );\n};\n","import type { ReactNode } from 'react';\n\nimport { TabItem } from './tab-item';\n\ntype Props = {\n children?: ReactNode;\n};\n\nexport function Tab({ children }: Props) {\n return (\n <div\n role=\"tablist\"\n className=\"relative flex gap-4 px-6 before:absolute before:inset-x-0 before:bottom-0 before:h-px before:bg-uiBorder01\"\n >\n {children}\n </div>\n );\n}\n\nTab.Item = TabItem;\n","import clsx from 'clsx';\nimport type { ReactNode } from 'react';\n\ntype Props = {\n children?: ReactNode;\n className?: string;\n isHeader?: boolean;\n};\n\nexport function TableCell({ children, className, isHeader = false }: Props) {\n const classes = clsx('border-b border-uiBorder01', { 'sticky top-0 z-10 bg-white': isHeader }, className);\n\n return <div className={classes}>{children}</div>;\n}\n","import clsx from 'clsx';\nimport type { ReactNode } from 'react';\n\ntype Props = {\n children?: ReactNode;\n isHoverBackgroundVisible?: boolean;\n};\nexport function TableRow({ children, isHoverBackgroundVisible = false }: Props) {\n const rowClasses = clsx('contents', isHoverBackgroundVisible && '[&:hover>div]:bg-hoverUi02');\n\n return <div className={rowClasses}>{children}</div>;\n}\n","import type { CSSProperties, PropsWithChildren } from 'react';\n\nimport { TableCell } from './table-cell';\nimport { TableRow } from './table-row';\n\ntype Props = {\n width?: CSSProperties['width'];\n templateRows?: CSSProperties['gridTemplateRows'];\n templateColumns?: CSSProperties['gridTemplateColumns'];\n autoColumns?: CSSProperties['gridAutoColumns'];\n autoRows?: CSSProperties['gridAutoRows'];\n};\n\nexport function Table({\n width,\n templateRows,\n templateColumns,\n autoColumns,\n autoRows,\n children,\n}: PropsWithChildren<Props>) {\n return (\n <div\n className=\"grid\"\n style={{\n width,\n gridTemplateRows: templateRows,\n gridTemplateColumns: templateColumns,\n gridAutoColumns: autoColumns,\n gridAutoRows: autoRows,\n }}\n >\n {children}\n </div>\n );\n}\n\nTable.Row = TableRow;\nTable.Cell = TableCell;\n","import { focusVisible } from '@zenkigen-inc/component-theme';\nimport clsx from 'clsx';\n\nimport type { ColorVariant, TagColor } from './type';\n\ntype Props = {\n color?: TagColor;\n variant?: ColorVariant;\n onClick?: () => void;\n};\n\nexport const DeleteIcon = ({ color, variant, onClick }: Props) => {\n const deleteButtonClasses = clsx(\n 'group ml-2 size-[14px] rounded-full p-0.5 hover:cursor-pointer hover:bg-iconOnColor focus-visible:bg-iconOnColor',\n focusVisible.normal,\n );\n\n const deletePathClasses = clsx({\n 'fill-interactive02': color === 'gray' || variant === 'light',\n 'group-hover:fill-interactive02 group-focus-visible:fill-interactive02 fill-iconOnColor': color !== 'gray',\n });\n\n return (\n <button type=\"button\" className={deleteButtonClasses} onClick={onClick}>\n <svg viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M19.7745 4.21818C19.384 3.82765 18.7508 3.82765 18.3603 4.21818L11.9963 10.5821L5.6324 4.21818C5.24187 3.82765 4.60871 3.82765 4.21818 4.21818C3.82766 4.6087 3.82766 5.24187 4.21818 5.63239L10.5821 11.9964L4.21818 18.3603C3.82766 18.7508 3.82766 19.384 4.21818 19.7745C4.60871 20.1651 5.24187 20.165 5.6324 19.7745L11.9963 13.4106L18.3603 19.7745C18.7508 20.165 19.384 20.1651 19.7745 19.7745C20.165 19.384 20.165 18.7508 19.7745 18.3603L13.4106 11.9964L19.7745 5.63239C20.165 5.24187 20.165 4.6087 19.7745 4.21818Z\"\n className={deletePathClasses}\n ></path>\n </svg>\n </button>\n );\n};\n","import { tagColors, tagLightColors } from '@zenkigen-inc/component-theme';\nimport clsx from 'clsx';\n\nimport { DeleteIcon } from './delete-icon';\nimport type { ColorVariant, TagColor } from './type';\n\ntype Props = {\n id: string;\n children: string;\n color: TagColor;\n variant?: ColorVariant;\n size?: 'x-small' | 'small' | 'medium';\n} & ({ isEditable: true; onDelete: (id: string) => void } | { isEditable?: undefined; onDelete?: never });\n\nexport function Tag({ id, children, color, variant = 'normal', size = 'medium', isEditable, onDelete }: Props) {\n const wrapperClasses = clsx('flex', 'items-center', 'justify-center', {\n [tagColors[color]]: variant === 'normal',\n [tagLightColors[color]]: variant === 'light',\n 'h-[14px] typography-label11regular': !isEditable && size === 'x-small',\n 'h-4 typography-label12regular': !isEditable && size === 'small',\n 'h-[18px] typography-label14regular': !isEditable && size === 'medium',\n 'h-[22px] typography-label14regular': isEditable && size === 'medium',\n 'rounded-full': isEditable,\n rounded: !isEditable,\n 'py-0.5 px-1': !isEditable,\n 'py-1 px-2': isEditable,\n });\n\n return (\n <div className={wrapperClasses}>\n {children}\n {isEditable ? <DeleteIcon onClick={() => onDelete(id)} color={color} variant={variant} /> : null}\n </div>\n );\n}\n","import { clsx } from 'clsx';\nimport type { CSSProperties, TextareaHTMLAttributes } from 'react';\nimport { forwardRef } from 'react';\n\ntype Props = TextareaHTMLAttributes<HTMLTextAreaElement> & {\n size?: 'medium' | 'large';\n value: string;\n height?: CSSProperties['height'];\n isResizable?: boolean;\n isError?: boolean;\n};\n\nexport const TextArea = forwardRef<HTMLTextAreaElement, Props>(\n ({ size = 'medium', isResizable = false, isError = false, disabled = false, ...props }: Props, ref) => {\n const classes = clsx(\n 'w-full rounded border outline-0 placeholder:text-textPlaceholder disabled:text-textPlaceholder',\n {\n 'border-supportError': isError && !disabled,\n 'hover:border-hoverInput': !disabled && !isError,\n 'border-uiBorder02 hover:focus-within:border-activeInput focus-within:border-activeInput text-text01': !isError,\n 'bg-disabled02 border-disabled01': disabled,\n ['typography-body14regular px-2 pt-1.5 pb-2']: size === 'medium',\n ['text-4 leading-normal px-3.5 py-2.5']: size === 'large',\n 'text-supportError': isError,\n 'resize-none': !isResizable,\n },\n );\n\n return (\n <div className=\"flex\">\n <textarea ref={ref} className={classes} {...props} disabled={disabled} style={{ height: props.height }} />\n </div>\n );\n },\n);\nTextArea.displayName = 'TextArea';\n","import { clsx } from 'clsx';\nimport type { InputHTMLAttributes } from 'react';\nimport { forwardRef } from 'react';\n\nimport { IconButton } from '../icon-button';\n\ntype Props = Omit<InputHTMLAttributes<HTMLInputElement>, 'size'> & {\n size?: 'medium' | 'large';\n value: string;\n isError?: boolean;\n onClickClearButton?: () => void;\n};\n\nexport const TextInput = forwardRef<HTMLInputElement, Props>(\n ({ size = 'medium', isError = false, disabled = false, onClickClearButton, ...props }: Props, ref) => {\n const inputWrapClasses = clsx('relative flex items-center gap-2 overflow-hidden rounded border', {\n 'border-uiBorder02': !isError && !disabled,\n 'border-supportError': isError && !disabled,\n 'hover:border-hoverInput': !disabled && !isError,\n 'hover:focus-within:border-activeInput': !isError,\n 'focus-within:border-activeInput': !isError,\n 'bg-disabled02 border-disabled01': disabled,\n });\n\n const inputClasses = clsx(\n 'flex-1 pl-2 pr-3 outline-0 placeholder:text-textPlaceholder disabled:text-textPlaceholder',\n {\n ['typography-label14regular min-h-8']: size === 'medium',\n ['typography-label16regular min-h-10']: size === 'large',\n 'text-text01': !isError,\n 'text-supportError': isError,\n },\n );\n\n return (\n <div className={inputWrapClasses}>\n <input ref={ref} size={1} className={inputClasses} disabled={disabled} onChange={props.onChange} {...props} />\n {onClickClearButton && props.value.length !== 0 && !disabled && (\n <div className=\"absolute right-3\">\n <IconButton variant=\"text\" icon=\"close\" size=\"small\" isNoPadding onClick={onClickClearButton} />\n </div>\n )}\n </div>\n );\n },\n);\nTextInput.displayName = 'TextInput';\n","import clsx from 'clsx';\nimport type { AnimationEvent, CSSProperties, ReactNode } from 'react';\nimport { useCallback, useEffect, useState } from 'react';\n\nimport { Icon } from '../icon';\nimport { IconButton } from '../icon-button';\nimport type { ToastState } from './type';\n\nconst CLOSE_TIME_MSEC = 5000;\n\ntype Props = {\n state?: ToastState;\n width?: CSSProperties['width'];\n isAutoClose?: boolean;\n isAnimation?: boolean;\n children?: ReactNode;\n onClickClose: () => void;\n};\n\nexport function Toast({\n state = 'information',\n width = 'auto',\n isAutoClose = false,\n isAnimation = false,\n children,\n onClickClose,\n}: Props) {\n const [isRemoving, setIsRemoving] = useState(false);\n\n const handleClose = useCallback(() => {\n if (isAnimation) {\n setIsRemoving(true);\n } else {\n onClickClose();\n }\n }, [isAnimation, onClickClose]);\n\n const handleAnimationEnd = (e: AnimationEvent<HTMLDivElement>) =>\n window.getComputedStyle(e.currentTarget).opacity === '0' && onClickClose();\n\n const wrapperClasses = clsx('pointer-events-auto flex items-start gap-1 bg-white p-4 shadow-floatingShadow', {\n ['animate-toast-in']: isAnimation && !isRemoving,\n ['animate-toast-out opacity-0']: isAnimation && isRemoving,\n });\n const iconClasses = clsx('flex items-center', {\n 'fill-supportSuccess': state === 'success',\n 'fill-supportError': state === 'error',\n 'fill-supportWarning': state === 'warning',\n 'fill-supportInfo': state === 'information',\n });\n const textClasses = clsx('typography-body13regular flex-1 pt-[3px]', {\n 'text-supportError': state === 'error',\n 'text-text01': state === 'success' || state === 'warning' || state === 'information',\n });\n\n const iconName = {\n success: 'success-filled',\n error: 'attention',\n warning: 'warning',\n information: 'information-filled',\n } as const;\n\n useEffect(() => {\n const timer = window.setTimeout(() => {\n if (isAutoClose) {\n setIsRemoving(true);\n }\n }, CLOSE_TIME_MSEC);\n\n return () => window.clearTimeout(timer);\n }, [isAutoClose]);\n\n return (\n <div className={wrapperClasses} style={{ width }} onAnimationEnd={handleAnimationEnd}>\n <div className={iconClasses}>\n <Icon name={iconName[state]} />\n </div>\n <p className={textClasses}>{children}</p>\n <IconButton icon=\"close\" size=\"medium\" variant=\"text\" onClick={handleClose} isNoPadding />\n </div>\n );\n}\n","import type { PropsWithChildren } from 'react';\nimport { createContext, useCallback, useContext, useEffect, useState } from 'react';\nimport { createPortal } from 'react-dom';\n\nimport { Toast } from './toast';\nimport type { ToastState } from './type';\n\ntype AddToastArgs = { message: string; state: ToastState };\n\ntype ToastProviderProps = {\n addToast: (args: AddToastArgs) => void;\n removeToast: (id: number) => void;\n};\n\nconst ToastContext = createContext<ToastProviderProps>({} as ToastProviderProps);\n\nexport const ToastProvider = ({ children }: PropsWithChildren) => {\n const [isClientRender, setIsClientRender] = useState(false);\n const [toasts, setToasts] = useState<{ id: number; message: string; state: ToastState }[]>([]);\n\n const addToast = useCallback(({ message, state }: AddToastArgs) => {\n setToasts((prev) => [...prev, { id: Math.trunc(Math.random() * 100000), message, state }]);\n }, []);\n\n const removeToast = useCallback((id: number) => {\n setToasts((prev) => prev.filter((snackbar) => snackbar.id !== id));\n }, []);\n\n useEffect(() => {\n setIsClientRender(true);\n }, []);\n\n return (\n <ToastContext.Provider value={{ addToast, removeToast }}>\n {children}\n {isClientRender &&\n createPortal(\n <div className=\"pointer-events-none fixed bottom-0 left-0 z-toast mb-4 ml-4 flex w-full flex-col-reverse gap-[16px]\">\n {toasts.map(({ id, message, state }) => (\n <Toast key={id} state={state} isAutoClose isAnimation onClickClose={() => removeToast(id)} width={475}>\n {message}\n </Toast>\n ))}\n </div>,\n document.body,\n )}\n </ToastContext.Provider>\n );\n};\n\nexport const useToast = () => {\n return useContext(ToastContext);\n};\n","import clsx from 'clsx';\nimport type { ReactNode } from 'react';\n\ntype Props = {\n id: string;\n size: 'small' | 'medium';\n isChecked: boolean;\n onChange: () => void;\n label?: ReactNode;\n labelPosition?: 'left' | 'right';\n isDisabled?: boolean;\n};\n\nexport function Toggle({\n id,\n size = 'medium',\n isChecked,\n onChange,\n label,\n labelPosition = 'right',\n isDisabled = false,\n}: Props) {\n const baseClasses = clsx('relative flex items-center rounded-full', {\n 'bg-disabledOn': isDisabled && isChecked,\n 'bg-disabled01': isDisabled && !isChecked,\n 'bg-interactive01 peer-hover:bg-hover01': !isDisabled && isChecked,\n 'bg-interactive02 peer-hover:bg-hover02Dark': !isDisabled && !isChecked,\n 'w-8 h-4 px-[3px]': size === 'small',\n 'w-12 h-6 px-1': size === 'medium',\n });\n const inputClasses = clsx(\n 'peer absolute inset-0 z-[1] opacity-0',\n isDisabled ? 'cursor-not-allowed' : 'cursor-pointer',\n );\n const indicatorClasses = clsx('rounded-full bg-iconOnColor', {\n 'w-2.5 h-2.5': size === 'small',\n 'w-4 h-4': size === 'medium',\n 'ml-auto': isChecked,\n });\n const labelClasses = clsx('break-all', {\n 'mr-2': labelPosition === 'left',\n 'ml-2': labelPosition === 'right',\n 'typography-label12regular': size === 'small',\n 'typography-label16regular': size === 'medium',\n 'pointer-events-none cursor-not-allowed text-disabled01': isDisabled,\n 'cursor-pointer text-text01': !isDisabled,\n });\n\n return (\n <div className=\"relative flex flex-[0_0_auto] items-center\">\n {label != null && labelPosition === 'left' && (\n <label htmlFor={id} className={labelClasses}>\n {label}\n </label>\n )}\n <input\n className={inputClasses}\n type=\"checkbox\"\n name={id}\n id={id}\n checked={isChecked}\n onChange={onChange}\n disabled={isDisabled}\n />\n <div className={baseClasses}>\n <span className={indicatorClasses} />\n </div>\n {label != null && labelPosition === 'right' && (\n <label htmlFor={id} className={labelClasses}>\n {label}\n </label>\n )}\n </div>\n );\n}\n","import type { CSSProperties } from 'react';\nimport { useCallback } from 'react';\n\nimport type { TooltipHorizontalAlign, TooltipPosition, TooltipSize, TooltipVerticalPosition } from './type';\n\nexport const useTooltip = () => {\n const calculatePosition = useCallback(\n (args: {\n dimensions: DOMRect;\n maxWidth?: CSSProperties['width'];\n verticalPosition: TooltipVerticalPosition;\n horizontalAlign: TooltipHorizontalAlign;\n tooltipSize: TooltipSize;\n }) => {\n const result: TooltipPosition = {\n maxWidth: 'none',\n width: 'auto',\n left: '0px',\n top: '0px',\n bottom: '0px',\n translateX: '0',\n translateY: '0',\n };\n result.maxWidth = args.maxWidth ?? 'none';\n\n const offsetH = args.tooltipSize === 'small' ? 11 : 22;\n const targetHorizontalCenter = args.dimensions.right - (args.dimensions.right - args.dimensions.left) / 2;\n const targetLeft = args.dimensions.left;\n const targetRight = args.dimensions.right;\n const targetWidth = args.dimensions.width;\n\n switch (args.horizontalAlign) {\n case 'center':\n result.left = `${targetHorizontalCenter}px`;\n result.translateX = '-50%';\n break;\n case 'left':\n result.left = `${targetLeft - offsetH}px`;\n result.translateX = `${targetWidth / 2}px`;\n break;\n case 'right':\n result.left = `${targetRight + offsetH}px`;\n result.translateX = `-${targetWidth / 2}px`;\n break;\n }\n\n switch (args.verticalPosition) {\n case 'bottom':\n result.top = `${args.dimensions.top + args.dimensions.height + window.scrollY}px`;\n result.bottom = 'unset';\n break;\n case 'top':\n result.top = `${args.dimensions.top + window.scrollY}px`;\n result.bottom = 'unset';\n result.translateY = '-100%';\n break;\n }\n\n return result;\n },\n [],\n );\n\n return {\n calculatePosition,\n };\n};\n","import clsx from 'clsx';\n\nimport type { TooltipHorizontalAlign, TooltipSize, TooltipVerticalPosition } from './type';\n\ntype Props = {\n size: TooltipSize;\n verticalPosition: TooltipVerticalPosition;\n horizontalAlign: TooltipHorizontalAlign;\n};\n\nexport const TailIcon = (props: Props) => {\n const tailClasses = clsx('absolute fill-uiBackgroundTooltip', {\n 'rotate-180': props.verticalPosition === 'bottom',\n 'rotate-0': props.verticalPosition !== 'bottom',\n '-top-1': props.verticalPosition === 'bottom' && props.size === 'small',\n '-top-2': props.verticalPosition === 'bottom' && props.size !== 'small',\n '-bottom-1': props.verticalPosition !== 'bottom' && props.size === 'small',\n '-bottom-2': props.verticalPosition !== 'bottom' && props.size !== 'small',\n 'right-2': props.horizontalAlign === 'right' && props.size === 'small',\n 'right-4': props.horizontalAlign === 'right' && props.size !== 'small',\n 'left-2': props.horizontalAlign === 'left' && props.size === 'small',\n 'left-4': props.horizontalAlign === 'left' && props.size !== 'small',\n 'left-1/2 -translate-x-1': props.horizontalAlign === 'center' && props.size === 'small',\n 'left-1/2 -translate-x-2': props.horizontalAlign === 'center' && props.size !== 'small',\n });\n\n if (props.size === 'small') {\n return (\n <svg className={tailClasses} width=\"8\" height=\"4\" viewBox=\"0 0 8 4\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M4 4L0 0H8L4 4Z\" />\n </svg>\n );\n } else {\n return (\n <svg\n className={tailClasses}\n width=\"14\"\n height=\"8\"\n viewBox=\"0 0 14 8\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path d=\"M7 8L0 0H14L7 8Z\" />\n </svg>\n );\n }\n};\n","import clsx from 'clsx';\nimport type { CSSProperties, ReactNode } from 'react';\n\nimport { TailIcon } from './tail-icon';\nimport type { TooltipHorizontalAlign, TooltipPosition, TooltipSize, TooltipVerticalPosition } from './type';\n\nexport const TooltipContent = ({\n content,\n horizontalAlign,\n verticalPosition,\n size,\n tooltipPosition,\n maxWidth,\n isPortal = false,\n}: {\n content: ReactNode;\n size: TooltipSize;\n maxWidth: CSSProperties['maxWidth'];\n verticalPosition: TooltipVerticalPosition;\n horizontalAlign: TooltipHorizontalAlign;\n tooltipPosition: TooltipPosition;\n isPortal?: boolean;\n}) => {\n const tooltipWrapperClasses = clsx('absolute z-tooltip m-auto flex', {\n 'top-0': !isPortal && verticalPosition === 'top',\n 'bottom-0': !isPortal && verticalPosition === 'bottom',\n 'justify-start': horizontalAlign === 'left',\n 'justify-center': horizontalAlign === 'center',\n 'justify-end': horizontalAlign === 'right',\n 'w-[24px]': size === 'small',\n 'w-[46px]': size !== 'small',\n });\n\n const tooltipBodyClasses = clsx(\n 'absolute z-tooltip inline-block w-max rounded bg-uiBackgroundTooltip text-textOnColor',\n {\n 'typography-body12regular': size === 'small',\n 'typography-body13regular': size === 'medium',\n 'px-2 pb-1 pt-1.5': size === 'small',\n 'px-4 py-3': size === 'medium',\n 'bottom-2': verticalPosition !== 'bottom' && size === 'small',\n 'bottom-3': verticalPosition !== 'bottom' && size === 'medium',\n 'top-2': verticalPosition === 'bottom' && size === 'small',\n 'top-3': verticalPosition === 'bottom' && size === 'medium',\n },\n );\n\n const tooltipWrapperStyle = isPortal\n ? {\n transform: `translate(${tooltipPosition.translateX}, ${tooltipPosition.translateY})`,\n ...tooltipPosition,\n }\n : {};\n\n return (\n <div className={tooltipWrapperClasses} style={tooltipWrapperStyle}>\n <div\n className={tooltipBodyClasses}\n style={{\n maxWidth,\n }}\n >\n {content}\n <TailIcon size={size} verticalPosition={verticalPosition} horizontalAlign={horizontalAlign} />\n </div>\n </div>\n );\n};\n","import type { CSSProperties, PropsWithChildren, ReactNode } from 'react';\nimport { useCallback, useEffect, useRef, useState } from 'react';\nimport { createPortal } from 'react-dom';\n\nimport { useTooltip } from './tooltip.hook';\nimport { TooltipContent } from './tooltip-content';\nimport type { TooltipHorizontalAlign, TooltipPosition, TooltipSize, TooltipVerticalPosition } from './type';\n\ntype Props = {\n content: ReactNode;\n size?: TooltipSize;\n maxWidth?: CSSProperties['maxWidth'];\n verticalPosition?: TooltipVerticalPosition;\n horizontalAlign?: TooltipHorizontalAlign;\n isDisabledHover?: boolean;\n portalTarget?: HTMLElement;\n};\n\nexport function Tooltip({\n children,\n content,\n size = 'small',\n maxWidth,\n verticalPosition = 'bottom',\n horizontalAlign = 'center',\n isDisabledHover = false,\n portalTarget,\n}: PropsWithChildren<Props>) {\n const { calculatePosition } = useTooltip();\n\n const [isVisible, setIsVisible] = useState(false);\n const [tooltipPosition, setTooltipPosition] = useState<TooltipPosition>({\n maxWidth: 'none',\n width: 'auto',\n left: '0px',\n top: '0px',\n bottom: '0px',\n translateX: '0',\n translateY: '0',\n });\n\n const targetRef = useRef<HTMLDivElement>(null);\n\n const handleMouseOverWrapper = useCallback(() => {\n if (isDisabledHover) {\n return;\n }\n setIsVisible(true);\n }, [isDisabledHover]);\n\n const handleMouseOutWrapper = useCallback(() => {\n setIsVisible(false);\n }, []);\n\n useEffect(() => {\n if (targetRef.current === null) return;\n\n const dimensions = targetRef.current?.getBoundingClientRect();\n const position = calculatePosition({ dimensions, maxWidth, verticalPosition, horizontalAlign, tooltipSize: size });\n\n setTooltipPosition(position);\n }, [calculatePosition, horizontalAlign, maxWidth, size, verticalPosition]);\n\n return (\n <div\n ref={targetRef}\n className=\"relative flex items-center justify-center\"\n onMouseOver={handleMouseOverWrapper}\n onMouseLeave={handleMouseOutWrapper}\n >\n {children}\n {isVisible &&\n (portalTarget == null ? (\n <TooltipContent\n content={content}\n size={size}\n maxWidth={maxWidth}\n verticalPosition={verticalPosition}\n horizontalAlign={horizontalAlign}\n tooltipPosition={tooltipPosition}\n />\n ) : (\n createPortal(\n <TooltipContent\n isPortal\n content={content}\n size={size}\n maxWidth={maxWidth}\n verticalPosition={verticalPosition}\n horizontalAlign={horizontalAlign}\n tooltipPosition={tooltipPosition}\n />,\n portalTarget,\n )\n ))}\n </div>\n );\n}\n"],"names":["isAsciiString","str","charCodeAt","Avatar","_ref","_props$userId","_props$isDisabled","_clsx","_ref$size","size","props","_objectWithoutPropertiesLoose","_excluded","classes","clsx","isDisabled","userId","userColors","length","trimmedFirstName","firstName","replace","trim","trimmedLastName","lastName","nameOnIcon","slice","toUpperCase","_jsx","className","children","BreadcrumbItem","Breadcrumb","Item","Button","_ref$variant","variant","_ref$isSelected","isSelected","width","borderRadius","before","after","elementAs","baseClasses","buttonColors","hover","active","disabled","focusVisible","normal","selected","base","Component","_jsxs","_extends","style","CheckedIcon","viewBox","xmlns","fillRule","clipRule","d","MinusIcon","Checkbox","name","value","id","_ref$isChecked","isChecked","_ref$isIndeterminate","isIndeterminate","_ref$isDisabled","onChange","label","_ref$color","color","_useState","useState","isMouseOver","setIsMouseOver","handleMouseOverInput","useCallback","handleMouseOutInput","handleChange","e","baseInputClasses","boxClasses","normalPeer","indicatorClasses","afterClasses","hoverIndicatorClasses","labelClasses","type","checked","onMouseOver","onMouseLeave","htmlFor","useOutsideClick","ref","handler","enabled","useEffect","listener","event","_event$target","element","current","Boolean","contains","target","document","addEventListener","removeEventListener","Icon","iconColors","icon01","icon01Dark","icon02","icon02Dark","icon03","icon03Dark","iconOnColor","iconElements","DropdownContext","createContext","isVisible","setIsVisible","targetDimensions","height","DropdownItem","onClick","_useContext","useContext","handleClickItem","itemClasses","inset","DropdownMenu","maxHeight","_ref$isNoPadding","isNoPadding","_ref$verticalPosition","verticalPosition","_ref$horizontalAlign","horizontalAlign","portalTargetRef","wrapperClasses","absolute","top","bottom","Dropdown","icon","title","_ref$isArrowHidden","isArrowHidden","_useState2","setTargetDimensions","targetRef","useRef","handleToggle","dimensions","getBoundingClientRect","calculatedDimensions","right","left","childrenButtonClasses","buttonClasses","Provider","createPortal","Menu","EvaluationStar","_ref$isEditable","isEditable","onChangeRating","maxRating","currentRating","setCurrentRating","handleChangeRating","newRating","starClasses","ratingStars","_loop","i","push","Heading","TagName","level","typography","heading","IconButton","isAnchor","iconSize","href","Loading","_ref$position","position","_ref$height","svgClasses","_Fragment","fill","cx","cy","r","stroke","strokeWidth","ModalBody","ModalContext","onClose","ModalFooter","_ref$isNoBorder","isNoBorder","ModalHeader","headerClasses","LIMIT_WIDTH","LIMIT_HEIGHT","Modal","_ref$width","isOpen","isMounted","setIsMounted","renderWidth","Math","max","renderHeight","body","Body","Header","Footer","NotificationInline","_ref$state","state","iconClasses","iconName","attention","success","warning","information","small","medium","showClose","PaginationContext","currentPage","PaginationButton","page","START_PAGE","Pagination","totalPage","_ref$sideNumPagesToSh","sideNumPagesToShow","center","min","start","end","offsetStart","offsetEnd","pageList","threeDotIconClasses","map","index","SelectContext","setIsOptionListOpen","SelectItem","option","selectedOption","SelectList","placeholder","handleClickDeselect","useLayoutEffect","_ref$current$children","Array","from","find","item","getAttribute","scroll","wrapRect","rect","listClasses","deselectButtonClasses","Select","maxWidth","placeholderIcon","_ref$selectedOption","_ref$isOptionSelected","isOptionSelected","optionListMaxHeight","isOptionListOpen","handleClickToggle","prev","Option","PaginationSelect","totalSize","sizePerPage","_ref$countLabel","countLabel","_ref$pageLabel","pageLabel","_ref$optionListMaxHei","onClickPrevButton","onClickNextButton","pageMax","ceil","optionsList","concat","_","toString","minCount","maxCount","Number","Radio","inputClasses","Search","forwardRef","onSubmit","onClickClearButton","displayName","isSortKey","onClickItem","sortOrder","onClickDeselect","SelectSort","_ref$isSortKey","TabItem","role","Tab","TableCell","_ref$isHeader","isHeader","TableRow","_ref$isHoverBackgroun","isHoverBackgroundVisible","rowClasses","Table","templateRows","templateColumns","autoColumns","autoRows","gridTemplateRows","gridTemplateColumns","gridAutoColumns","gridAutoRows","Row","Cell","DeleteIcon","deleteButtonClasses","deletePathClasses","Tag","onDelete","tagColors","tagLightColors","rounded","TextArea","_ref$isResizable","isResizable","_ref$isError","isError","_ref$disabled","TextInput","inputWrapClasses","CLOSE_TIME_MSEC","Toast","_ref$isAutoClose","isAutoClose","_ref$isAnimation","isAnimation","onClickClose","isRemoving","setIsRemoving","handleClose","handleAnimationEnd","window","getComputedStyle","currentTarget","opacity","textClasses","error","timer","setTimeout","clearTimeout","onAnimationEnd","ToastContext","ToastProvider","isClientRender","setIsClientRender","toasts","setToasts","addToast","_ref2","message","trunc","random","removeToast","filter","snackbar","_ref3","useToast","Toggle","_ref$labelPosition","labelPosition","useTooltip","calculatePosition","args","_args$maxWidth","result","translateX","translateY","offsetH","tooltipSize","targetHorizontalCenter","targetLeft","targetRight","targetWidth","scrollY","TailIcon","tailClasses","TooltipContent","content","tooltipPosition","_ref$isPortal","isPortal","tooltipWrapperClasses","tooltipBodyClasses","tooltipWrapperStyle","transform","Tooltip","_ref$isDisabledHover","isDisabledHover","portalTarget","_useTooltip","setTooltipPosition","handleMouseOverWrapper","handleMouseOutWrapper","_targetRef$current"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.esm.js","sources":["../src/avatar/avatar.tsx","../src/breadcrumb/breadcrumb-item.tsx","../src/breadcrumb/breadcrumb.tsx","../src/button/button.tsx","../src/checkbox/checked-icon.tsx","../src/checkbox/minus-icon.tsx","../src/checkbox/checkbox.tsx","../src/hooks/use-outside-click.ts","../src/icon/icon.tsx","../src/dropdown/dropdown-context.ts","../src/dropdown/dropdown-item.tsx","../src/dropdown/dropdown-menu.tsx","../src/dropdown/dropdown.tsx","../src/evaluation-star/evaluation-star.tsx","../src/heading/heading.tsx","../src/icon-button/icon-button.tsx","../src/loading/loading.tsx","../src/modal/modal-body.tsx","../src/modal/modal-context.ts","../src/modal/modal-footer.tsx","../src/modal/modal-header.tsx","../src/modal/modal.tsx","../src/notification-inline/notification-inline.tsx","../src/pagination/pagination-context.ts","../src/pagination/pagination-button.tsx","../src/pagination/pagination.tsx","../src/select/select-context.ts","../src/select/select-item.tsx","../src/select/select-list.tsx","../src/select/select.tsx","../src/pagination-select/pagination-select.tsx","../src/radio/radio.tsx","../src/search/search.tsx","../src/select-sort/select-item.tsx","../src/select-sort/select-list.tsx","../src/select-sort/select-sort.tsx","../src/tab/tab-item.tsx","../src/tab/tab.tsx","../src/table/table-cell.tsx","../src/table/table-row.tsx","../src/table/table.tsx","../src/tag/delete-icon.tsx","../src/tag/tag.tsx","../src/text-area/text-area.tsx","../src/text-input/text-input.tsx","../src/toast/toast.tsx","../src/toast/toast-provider.tsx","../src/toggle/toggle.tsx","../src/tooltip/tooltip.hook.ts","../src/tooltip/tail-icon.tsx","../src/tooltip/tooltip-content.tsx","../src/tooltip/tooltip.tsx"],"sourcesContent":["import { userColors } from '@zenkigen-inc/component-theme';\nimport { clsx } from 'clsx';\n\nexport const isAsciiString = (str: string) => {\n return str.charCodeAt(0) < 256;\n};\n\ntype Props = {\n size?: 'x-small' | 'small' | 'medium' | 'large' | 'x-large';\n userId?: number;\n firstName: string;\n lastName: string;\n isDisabled?: boolean;\n};\n\nexport function Avatar({ size = 'medium', ...props }: Props) {\n const classes = clsx('flex items-center justify-center rounded-full text-textOnColor', {\n 'w-16 h-16 typography-label16regular': size === 'x-large',\n 'w-12 h-12 typography-label14regular': size === 'large',\n 'w-10 h-10 typography-label14regular': size === 'medium',\n 'w-8 h-8 typography-label11regular': size === 'small',\n 'w-6 h-6 typography-label11regular': size === 'x-small',\n 'bg-disabled01': props.isDisabled,\n 'bg-icon01': props.userId == null,\n [userColors[(props.userId ?? 0) % userColors.length] as string]:\n props.userId != null && !(props.isDisabled ?? false),\n });\n\n const trimmedFirstName = props.firstName.replace(' ', ' ').trim();\n const trimmedLastName = props.lastName.replace(' ', ' ').trim().trim();\n const nameOnIcon = isAsciiString(trimmedLastName)\n ? trimmedFirstName.slice(0, 1).toUpperCase() + trimmedLastName.slice(0, 1).toUpperCase()\n : (trimmedLastName + trimmedFirstName).slice(0, 2);\n\n return <span className={classes}>{nameOnIcon}</span>;\n}\n","import type { PropsWithChildren } from 'react';\n\nexport const BreadcrumbItem = ({ children }: PropsWithChildren) => {\n return (\n <li className=\"flex gap-2 after:content-['/'] last:after:content-none [&_a]:text-interactive02 [&_a]:hover:underline\">\n {children}\n </li>\n );\n};\n","import type { PropsWithChildren } from 'react';\n\nimport { BreadcrumbItem } from './breadcrumb-item';\n\nexport function Breadcrumb({ children }: PropsWithChildren) {\n return (\n <nav aria-label=\"breadcrumb\">\n <ul className=\"typography-label14regular flex flex-wrap gap-2 whitespace-nowrap text-text01\">{children}</ul>\n </nav>\n );\n}\n\nBreadcrumb.Item = BreadcrumbItem;\n","import { buttonColors, focusVisible } from '@zenkigen-inc/component-theme';\nimport { clsx } from 'clsx';\nimport type { ComponentPropsWithoutRef, CSSProperties, ElementType, PropsWithChildren, ReactNode } from 'react';\n\ntype Size = 'small' | 'medium' | 'large';\n\ntype Variant = 'fill' | 'fillDanger' | 'outline' | 'text';\n\nexport type ElementAs = ElementType;\n\nexport type AsProp<T extends ElementAs> = {\n elementAs?: T;\n};\n\nexport type PolymorphicPropsWithoutRef<T extends ElementAs, P extends object> = PropsWithChildren<P> &\n ComponentPropsWithoutRef<T> &\n AsProp<T>;\n\ntype Props<T extends ElementAs> = PolymorphicPropsWithoutRef<\n T,\n {\n size?: Size;\n width?: CSSProperties['width'];\n isSelected?: boolean;\n isDisabled?: boolean;\n variant?: Variant;\n before?: ReactNode;\n after?: ReactNode;\n borderRadius?: CSSProperties['borderRadius'];\n }\n>;\n\nexport const Button = <T extends ElementAs = 'button'>({\n size = 'medium',\n variant = 'fill',\n isDisabled,\n isSelected = false,\n width,\n borderRadius,\n before,\n after,\n elementAs,\n children,\n ...props\n}: Props<T>) => {\n const baseClasses = clsx(\n 'flex shrink-0 items-center justify-center gap-1',\n buttonColors[variant].hover,\n buttonColors[variant].active,\n buttonColors[variant].disabled,\n focusVisible.normal,\n {\n 'h-6 px-2.5': size === 'small',\n 'h-8 px-3': size === 'medium',\n 'h-10 px-4 leading-[24px]': size === 'large',\n 'inline-flex': elementAs === 'a',\n [buttonColors[variant].selected]: isSelected,\n [buttonColors[variant].base]: !isSelected,\n 'hover:text-textOnColor active:text-textOnColor [&:hover>*]:fill-iconOnColor [&:active>*]:fill-iconOnColor':\n isSelected && variant !== 'outline' && variant !== 'text',\n 'pointer-events-none': isDisabled,\n 'rounded-button': borderRadius == null,\n 'typography-label16regular': size === 'large',\n 'typography-label14regular': size !== 'large',\n },\n );\n\n const Component = elementAs ?? 'button';\n\n return (\n <Component className={baseClasses} style={{ width, borderRadius }} disabled={isDisabled} {...props}>\n {before}\n {children}\n {after}\n </Component>\n );\n};\n","export const CheckedIcon = () => {\n return (\n <svg\n viewBox=\"0 0 20 20\"\n xmlns=\"http://www.w3.org/2000/svg\"\n className=\"absolute z-10 size-5 rounded-sm fill-iconOnColor hover:rounded-sm\"\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M16.2887 5.38099C16.0069 5.09924 15.5518 5.09924 15.2701 5.38099L7.55461 13.0893L4.72993 10.2646C4.44818 9.98283 3.99305 9.98283 3.71131 10.2646C3.42956 10.5463 3.42956 11.0014 3.71131 11.2832L7.04891 14.6208C7.1934 14.7653 7.374 14.8303 7.56183 14.8303C7.74966 14.8303 7.93027 14.7581 8.07475 14.6208L16.2887 6.40683C16.5704 6.12508 16.5704 5.66273 16.2887 5.38099Z\"\n />\n </svg>\n );\n};\n","export const MinusIcon = () => {\n return (\n <svg\n viewBox=\"0 0 20 20\"\n xmlns=\"http://www.w3.org/2000/svg\"\n className=\"absolute z-10 size-5 rounded-sm fill-iconOnColor hover:rounded-sm\"\n >\n <path d=\"M4.94723 10.5028H9.49726H10.5028H15.0528C15.3293 10.5028 15.5556 10.2766 15.5556 10C15.5556 9.72352 15.3293 9.49725 15.0528 9.49725H10.5028H9.49726H4.94723C4.67071 9.49725 4.44446 9.72352 4.44446 10C4.44446 10.2766 4.67071 10.5028 4.94723 10.5028Z\" />\n </svg>\n );\n};\n","import { focusVisible } from '@zenkigen-inc/component-theme';\nimport clsx from 'clsx';\nimport type { ChangeEvent } from 'react';\nimport { useCallback, useState } from 'react';\n\nimport { CheckedIcon } from './checked-icon';\nimport { MinusIcon } from './minus-icon';\n\ntype Props = {\n name?: string;\n value?: string;\n id?: string;\n isChecked?: boolean;\n color?: 'default' | 'gray' | 'error';\n isIndeterminate?: boolean;\n isDisabled?: boolean;\n label?: string;\n onChange?: (e: ChangeEvent<HTMLInputElement>) => void;\n};\n\nexport function Checkbox({\n name,\n value,\n id,\n isChecked = false,\n isIndeterminate = false,\n isDisabled = false,\n onChange,\n label,\n color = 'default',\n}: Props) {\n const [isMouseOver, setIsMouseOver] = useState(false);\n\n const handleMouseOverInput = useCallback(() => {\n setIsMouseOver(true);\n }, []);\n\n const handleMouseOutInput = useCallback(() => {\n setIsMouseOver(false);\n }, []);\n\n const handleChange = useCallback(\n (e: ChangeEvent<HTMLInputElement>) => !isDisabled && onChange?.(e),\n [isDisabled, onChange],\n );\n\n const baseInputClasses = clsx('peer absolute z-[1] size-5 opacity-0', {\n 'cursor-not-allowed': isDisabled,\n 'cursor-pointer': !isDisabled,\n });\n\n const boxClasses = clsx(\n 'inline-flex size-5 items-center justify-center rounded-sm border bg-white',\n focusVisible.normalPeer,\n {\n 'border-disabled01': isDisabled,\n 'border-hoverUiBorder': !isDisabled && isMouseOver && color === 'default',\n 'border-uiBorder03': !isDisabled && !isMouseOver && color === 'default',\n 'border-interactive02': !isDisabled && !isMouseOver && color === 'gray',\n 'border-hoverError': !isDisabled && isMouseOver && color === 'error',\n 'border-supportError': !isDisabled && !isMouseOver && color === 'error',\n },\n );\n\n const indicatorClasses = clsx('relative flex size-5 flex-[0_0_auto] items-center justify-center', {\n 'bg-disabled01': isDisabled && isChecked,\n 'border-disabled01': isDisabled,\n });\n\n const afterClasses = clsx('absolute inset-0 m-auto block rounded-sm', {\n 'bg-disabled01': isDisabled && isChecked,\n 'bg-hover01': !(isDisabled && isChecked) && isMouseOver,\n 'bg-interactive01': !(isDisabled && isChecked) && !isMouseOver,\n 'bg-hover02Dark': !(isDisabled && isChecked) && isMouseOver && color === 'gray',\n 'bg-interactive02': !(isDisabled && isChecked) && !isMouseOver && color === 'gray',\n 'bg-hoverError': !(isDisabled && isChecked) && isMouseOver && color === 'error',\n 'bg-supportError': !(isDisabled && isChecked) && !isMouseOver && color === 'error',\n 'scale-0': !isChecked,\n 'scale-100': isChecked,\n });\n\n const hoverIndicatorClasses = clsx('inline-block size-3 rounded-[1px]', {\n 'bg-hoverUi': !isDisabled && !isChecked && isMouseOver,\n });\n\n const labelClasses = clsx('typography-label14regular ml-2 flex-[1_0_0] break-all', {\n 'pointer-events-none cursor-not-allowed text-disabled01': isDisabled,\n 'cursor-pointer text-text01': !isDisabled,\n });\n\n return (\n <div className=\"flex items-center\">\n <div className=\"relative flex size-6 items-center justify-center\">\n <input\n type=\"checkbox\"\n value={value}\n name={name}\n id={id}\n checked={isChecked}\n disabled={isDisabled}\n onChange={handleChange}\n onMouseOver={handleMouseOverInput}\n onMouseLeave={handleMouseOutInput}\n className={baseInputClasses}\n />\n <div className={boxClasses}>\n <div className={indicatorClasses}>\n <span className={afterClasses}>\n {isChecked && !isIndeterminate && <CheckedIcon />}\n {isIndeterminate && <MinusIcon />}\n </span>\n <span className={hoverIndicatorClasses} />\n </div>\n </div>\n </div>\n {label != null && (\n <label htmlFor={id} className={labelClasses}>\n {label}\n </label>\n )}\n </div>\n );\n}\n","import type { RefObject } from 'react';\nimport { useEffect } from 'react';\n\nexport const useOutsideClick = <T extends HTMLElement = HTMLElement>(\n ref: RefObject<T>,\n handler: (event: Event) => void,\n enabled = true,\n) => {\n useEffect(() => {\n const listener = (event: Event) => {\n const element = ref?.current;\n if (element == null || Boolean(element.contains((event?.target as Node) ?? null))) {\n return;\n }\n handler(event);\n };\n\n if (enabled) {\n document.addEventListener('click', listener);\n }\n\n return () => document.removeEventListener('click', listener);\n }, [ref, enabled, handler]);\n};\n","import type { IconName } from '@zenkigen-inc/component-icons';\nimport { iconElements } from '@zenkigen-inc/component-icons';\nimport { iconColors } from '@zenkigen-inc/component-theme';\nimport { clsx } from 'clsx';\n\ntype Size = 'x-small' | 'small' | 'medium' | 'large' | 'x-large';\n\ntype Color = keyof typeof iconColors;\n\ntype Props = {\n name: IconName;\n size?: Size;\n color?: Color;\n isDisabled?: boolean;\n className?: string;\n};\n\nexport const Icon = ({ size = 'medium', isDisabled = false, ...props }: Props) => {\n const classes = clsx(\n 'inline-block shrink-0',\n {\n 'fill-disabled01': isDisabled,\n [iconColors.icon01]: !isDisabled && props.color === 'icon01',\n [iconColors.icon01Dark]: !isDisabled && props.color === 'icon01Dark',\n [iconColors.icon02]: !isDisabled && props.color === 'icon02',\n [iconColors.icon02Dark]: !isDisabled && props.color === 'icon02Dark',\n [iconColors.icon03]: !isDisabled && props.color === 'icon03',\n [iconColors.icon03Dark]: !isDisabled && props.color === 'icon03Dark',\n [iconColors.iconOnColor]: !isDisabled && props.color === 'iconOnColor',\n 'w-3 h-3': size === 'x-small',\n 'w-4 h-4': size === 'small',\n 'w-6 h-6': size === 'medium',\n 'w-8 h-8': size === 'large',\n 'w-10 h-10': size === 'x-large',\n },\n props.className,\n );\n\n return <span className={classes}>{iconElements[props.name]}</span>;\n};\n","import type { MutableRefObject } from 'react';\nimport { createContext } from 'react';\n\ntype UseDropdownReturnType = {\n isVisible: boolean;\n setIsVisible: React.Dispatch<React.SetStateAction<boolean>>;\n isDisabled: boolean;\n portalTargetRef?: MutableRefObject<HTMLElement | null>;\n targetDimensions: {\n width: number;\n height: number;\n };\n variant: 'text' | 'outline';\n};\n\nexport const DropdownContext = createContext<UseDropdownReturnType>({\n isVisible: false,\n setIsVisible: () => false,\n isDisabled: false,\n targetDimensions: { width: 0, height: 0 },\n variant: 'outline',\n});\n","import { focusVisible } from '@zenkigen-inc/component-theme';\nimport clsx from 'clsx';\nimport type { MouseEvent, PropsWithChildren } from 'react';\nimport { useContext } from 'react';\n\nimport { DropdownContext } from './dropdown-context';\n\ntype Props = {\n color?: 'gray' | 'red';\n onClick?: (event: MouseEvent<HTMLButtonElement>) => void;\n};\n\nexport function DropdownItem({ children, color = 'gray', onClick }: PropsWithChildren<Props>) {\n const { setIsVisible } = useContext(DropdownContext);\n const handleClickItem = (event: MouseEvent<HTMLButtonElement>) => {\n setIsVisible(false);\n onClick?.(event);\n };\n const itemClasses = clsx(\n 'typography-label14regular flex h-8 w-full items-center px-3 hover:bg-hover02 active:bg-active02',\n focusVisible.inset,\n {\n 'bg-uiBackground01 fill-icon01 text-interactive02': color === 'gray',\n 'fill-supportDanger text-supportDanger': color === 'red',\n },\n );\n\n return (\n <li className=\"flex w-full items-center\">\n <button className={itemClasses} type=\"button\" onClick={handleClickItem}>\n {children}\n </button>\n </li>\n );\n}\n","import clsx from 'clsx';\nimport type { CSSProperties, PropsWithChildren } from 'react';\nimport { useContext } from 'react';\n\nimport { DropdownContext } from './dropdown-context';\nimport type { DropdownHorizontalAlign, DropdownVerticalPosition } from './type';\n\ntype Props = {\n maxHeight?: CSSProperties['height'];\n isNoPadding?: boolean;\n verticalPosition?: DropdownVerticalPosition;\n horizontalAlign?: DropdownHorizontalAlign;\n};\n\nexport function DropdownMenu({\n children,\n maxHeight,\n isNoPadding = false,\n verticalPosition = 'bottom',\n horizontalAlign = 'left',\n}: PropsWithChildren<Props>) {\n const { isVisible, isDisabled, targetDimensions, variant, portalTargetRef } = useContext(DropdownContext);\n const wrapperClasses = clsx('z-dropdown w-max overflow-y-auto rounded bg-uiBackground01 shadow-floatingShadow', {\n absolute: !portalTargetRef,\n 'border-solid border border-uiBorder01': variant === 'outline',\n 'py-1': !isNoPadding,\n 'left-0': horizontalAlign === 'left',\n 'right-0': horizontalAlign === 'right',\n 'left-auto': horizontalAlign === 'center',\n });\n\n return (\n isVisible &&\n !isDisabled && (\n <ul\n className={wrapperClasses}\n style={{\n top: !portalTargetRef && verticalPosition === 'bottom' ? `${targetDimensions.height + 4}px` : 'unset',\n bottom: !portalTargetRef && verticalPosition === 'top' ? `${targetDimensions.height + 4}px` : 'unset',\n maxHeight,\n }}\n >\n {children}\n </ul>\n )\n );\n}\n","import type { IconName } from '@zenkigen-inc/component-icons';\nimport { buttonColors, focusVisible } from '@zenkigen-inc/component-theme';\nimport clsx from 'clsx';\nimport type { MutableRefObject, PropsWithChildren, ReactElement } from 'react';\nimport { useCallback, useRef, useState } from 'react';\nimport { createPortal } from 'react-dom';\n\nimport { useOutsideClick } from '../hooks/use-outside-click';\nimport { Icon } from '../icon';\nimport { DropdownContext } from './dropdown-context';\nimport { DropdownItem } from './dropdown-item';\nimport { DropdownMenu } from './dropdown-menu';\n\ntype Props = {\n size?: 'x-small' | 'small' | 'medium' | 'large';\n variant?: 'text' | 'outline';\n title?: string;\n isDisabled?: boolean;\n isArrowHidden?: boolean;\n portalTargetRef?: MutableRefObject<HTMLElement | null>;\n} & (\n | { target: ReactElement; label?: never; icon?: never }\n | {\n target?: undefined;\n label: string;\n icon?: IconName;\n }\n);\n\nexport function Dropdown({\n children,\n target,\n label,\n icon,\n size = 'medium',\n variant = 'outline',\n title,\n isDisabled = false,\n isArrowHidden = false,\n portalTargetRef,\n}: PropsWithChildren<Props>) {\n const [isVisible, setIsVisible] = useState(false);\n const [targetDimensions, setTargetDimensions] = useState({\n width: 0,\n height: 0,\n });\n\n const targetRef = useRef<HTMLDivElement>(null);\n useOutsideClick(targetRef, () => setIsVisible(false));\n\n const handleToggle = useCallback(() => {\n if (targetRef.current === null) {\n return;\n }\n\n if (isVisible) {\n setIsVisible(false);\n } else {\n const dimensions = targetRef.current.getBoundingClientRect();\n const calculatedDimensions = {\n width: dimensions.right - dimensions.left,\n height: dimensions.bottom - dimensions.top,\n };\n\n setTargetDimensions(calculatedDimensions);\n setIsVisible(true);\n }\n }, [isVisible]);\n\n const wrapperClasses = clsx('relative flex shrink-0 items-center gap-1 rounded', {\n 'cursor-not-allowed': isDisabled,\n });\n\n const childrenButtonClasses = clsx(\n 'flex items-center justify-center rounded bg-uiBackground01 p-1 hover:bg-hover02 active:bg-active02',\n focusVisible.normal,\n {\n 'pointer-events-none': isDisabled,\n 'border border-uiBorder02': variant === 'outline',\n },\n );\n\n const buttonClasses = clsx(\n 'flex items-center rounded bg-uiBackground01',\n buttonColors[variant].base,\n buttonColors[variant].hover,\n buttonColors[variant].active,\n buttonColors[variant].disabled,\n focusVisible.normal,\n {\n 'pointer-events-none': isDisabled,\n 'h-6 px-2': size === 'x-small' || size === 'small',\n 'h-8 px-4': size === 'medium',\n 'h-10 px-4': size === 'large',\n },\n );\n\n const labelClasses = clsx('flex items-center', {\n 'mr-1': !isArrowHidden && size === 'x-small',\n 'mr-2': !isArrowHidden && size !== 'x-small',\n 'typography-label12regular': size === 'x-small',\n 'typography-label14regular': size === 'small' || size === 'medium',\n 'typography-label16regular': size === 'large',\n });\n\n return (\n <DropdownContext.Provider\n value={{ isVisible, setIsVisible, isDisabled, targetDimensions, variant, portalTargetRef }}\n >\n <div ref={targetRef} className={wrapperClasses}>\n {target ? (\n <button\n type=\"button\"\n title={title}\n className={childrenButtonClasses}\n onClick={handleToggle}\n disabled={isDisabled}\n >\n {target}\n {!isArrowHidden && (\n <div className=\"ml-2 flex items-center fill-icon01\">\n <Icon\n name={isVisible ? 'angle-small-up' : 'angle-small-down'}\n size={size === 'large' ? 'medium' : 'small'}\n />\n </div>\n )}\n </button>\n ) : (\n <button type=\"button\" title={title} className={buttonClasses} onClick={handleToggle} disabled={isDisabled}>\n {icon && (\n <span className=\"mr-1 flex\">\n <Icon name={icon} size={size === 'large' ? 'medium' : 'small'} />\n </span>\n )}\n <span className={labelClasses}>{label}</span>\n {!isArrowHidden && (\n <div className=\"ml-auto flex items-center\">\n <Icon name={isVisible ? 'angle-small-up' : 'angle-small-down'} size=\"small\" />\n </div>\n )}\n </button>\n )}\n {!portalTargetRef\n ? children\n : portalTargetRef != null && portalTargetRef.current && createPortal(children, portalTargetRef.current)}\n </div>\n </DropdownContext.Provider>\n );\n}\n\nDropdown.Menu = DropdownMenu;\nDropdown.Item = DropdownItem;\n","import { iconElements } from '@zenkigen-inc/component-icons';\nimport { focusVisible } from '@zenkigen-inc/component-theme';\nimport clsx from 'clsx';\nimport { useCallback, useState } from 'react';\n\ntype Props = {\n value: number;\n isEditable?: boolean;\n onChangeRating?: (newRating: number) => void | null;\n size?: 'medium' | 'large';\n};\n\nexport function EvaluationStar({ value, isEditable = false, onChangeRating, size = 'medium' }: Props) {\n const maxRating = 5;\n const [currentRating, setCurrentRating] = useState(value);\n\n const handleChangeRating = useCallback(\n (newRating: number) => {\n if (isEditable) {\n setCurrentRating(newRating);\n if (onChangeRating) {\n onChangeRating(newRating);\n }\n }\n },\n [isEditable, onChangeRating],\n );\n\n const starClasses = clsx(focusVisible.inset, { 'w-6 h-6': size === 'large', 'w-4 h-4': size === 'medium' });\n\n // 各評価のレンダリングロジックを分離(React Hooksのルールに準拠)\n const renderStar = (rating: number) => {\n const color = rating <= currentRating ? 'fill-yellow-yellow50' : 'fill-icon03';\n\n return (\n <button\n type=\"button\"\n key={rating}\n onClick={() => handleChangeRating(rating)}\n className={clsx(color, starClasses)}\n disabled={!isEditable}\n >\n {iconElements['star-filled']}\n </button>\n );\n };\n\n // 宣言的な方法で評価の配列を生成\n const ratingStars = Array.from({ length: maxRating }, (_, index) => renderStar(index + 1));\n\n return <span className=\"flex flex-row\">{ratingStars}</span>;\n}\n","import { typography } from '@zenkigen-inc/component-theme';\nimport { clsx } from 'clsx';\nimport type { ReactNode } from 'react';\n\ntype Level = 1 | 2 | 3 | 4 | 5;\n\ntype Props = {\n level: Level;\n before?: ReactNode;\n after?: ReactNode;\n children?: ReactNode;\n};\n\nexport function Heading(props: Props) {\n const TagName = `h${props.level}` as const;\n\n const classes = clsx(`flex items-center text-text01`, typography.heading[TagName], {\n 'gap-2': props.level === 1,\n 'gap-1': props.level > 1,\n });\n\n return (\n <TagName className={classes}>\n {props.before}\n {props.children}\n {props.after}\n </TagName>\n );\n}\n","import type { IconName } from '@zenkigen-inc/component-icons';\nimport { buttonColors, focusVisible } from '@zenkigen-inc/component-theme';\nimport { clsx } from 'clsx';\n\nimport { Icon } from '../icon/icon';\n\ntype Size = 'small' | 'medium' | 'large';\n\ntype Variant = 'outline' | 'text';\n\ntype Props = {\n icon: IconName;\n size?: Size;\n isDisabled?: boolean;\n isNoPadding?: boolean;\n variant?: Variant;\n} & (\n | {\n isAnchor: true;\n href: string;\n target?: HTMLAnchorElement['target'];\n }\n | {\n isAnchor?: false;\n onClick?: () => void;\n }\n);\n\nexport function IconButton({\n size = 'medium',\n variant = 'outline',\n isNoPadding = false,\n isDisabled = false,\n ...props\n}: Props) {\n const baseClasses = clsx(\n 'typography-label16regular flex items-center justify-center gap-1 rounded',\n buttonColors[variant].base,\n buttonColors[variant].hover,\n buttonColors[variant].active,\n buttonColors[variant].disabled,\n focusVisible.normal,\n {\n 'h-4 w-4': size === 'small' && isNoPadding,\n 'h-6 w-6': (size === 'small' && !isNoPadding) || ((size === 'medium' || size === 'large') && isNoPadding),\n 'h-8 w-8': size === 'medium' && !isNoPadding,\n 'h-10 w-10': size === 'large' && !isNoPadding,\n 'inline-flex': props.isAnchor,\n 'pointer-events-none': isDisabled,\n },\n );\n\n const iconSize = size === 'small' ? 'small' : 'medium';\n\n if (props.isAnchor === true) {\n return (\n <a className={baseClasses} href={props.href} target={props.target}>\n <Icon name={props.icon} size={iconSize} />\n </a>\n );\n } else {\n return (\n <button type=\"button\" className={baseClasses} disabled={isDisabled} onClick={props.onClick}>\n <Icon name={props.icon} size={iconSize} />\n </button>\n );\n }\n}\n","import clsx from 'clsx';\n\ntype Props = {\n size?: 'small' | 'medium' | 'large';\n position?: 'fixed' | 'absolute' | 'static';\n height?: string;\n};\n\nexport function Loading({ size = 'medium', position = 'fixed', height = '100%' }: Props) {\n const wrapperClasses = clsx(position, 'left-0 top-0 z-20 flex w-full items-center justify-center');\n\n const svgClasses = clsx({\n 'h-4 w-4': size === 'small',\n 'h-8 w-8': size === 'medium',\n 'h-16 w-16': size === 'large',\n });\n\n return (\n <>\n <div className={wrapperClasses} style={{ height }}>\n {size === 'small' && (\n <svg className={svgClasses} viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <circle\n className=\"origin-center animate-circular-small-move stroke-interactive01\"\n cx=\"8\"\n cy=\"8\"\n r=\"7\"\n stroke=\"currentColor\"\n strokeWidth=\"1.5\"\n fill=\"none\"\n />\n </svg>\n )}\n {size === 'medium' && (\n <svg className={svgClasses} viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <circle\n className=\"origin-center animate-circular-medium-move stroke-interactive01\"\n cx=\"16\"\n cy=\"16\"\n r=\"15\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n fill=\"none\"\n />\n </svg>\n )}\n {size === 'large' && (\n <svg className={svgClasses} viewBox=\"0 0 64 64\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <circle\n className=\"origin-center animate-circular-large-move stroke-interactive01\"\n cx=\"32\"\n cy=\"32\"\n r=\"30\"\n stroke=\"currentColor\"\n strokeWidth=\"3\"\n fill=\"none\"\n />\n </svg>\n )}\n </div>\n </>\n );\n}\n","import type { PropsWithChildren } from 'react';\n\nexport function ModalBody({ children }: PropsWithChildren) {\n return <div className=\"overflow-y-auto\">{children}</div>;\n}\n","import { createContext } from 'react';\n\ntype ModalReturnType = {\n onClose?: () => void;\n};\n\nexport const ModalContext = createContext<ModalReturnType>({\n onClose: () => null,\n});\n","import clsx from 'clsx';\nimport type { PropsWithChildren } from 'react';\nimport React from 'react';\n\ntype Props = {\n isNoBorder?: boolean;\n};\n\nexport function ModalFooter({ children, isNoBorder = false }: PropsWithChildren<Props>) {\n const wrapperClasses = clsx('flex w-full shrink-0 items-center rounded-b-lg px-6 py-4', {\n 'border-t-[1px] border-uiBorder01': !isNoBorder,\n });\n\n return <div className={wrapperClasses}>{children}</div>;\n}\n","import clsx from 'clsx';\nimport type { PropsWithChildren } from 'react';\nimport { useContext } from 'react';\n\nimport { IconButton } from '../icon-button';\nimport { ModalContext } from './modal-context';\n\ntype Props = {\n isNoBorder?: boolean;\n};\n\nexport function ModalHeader({ children, isNoBorder = false }: PropsWithChildren<Props>) {\n const { onClose } = useContext(ModalContext);\n\n const headerClasses = clsx(\n 'typography-h5 flex w-full shrink-0 items-center justify-between rounded-t-lg px-6 text-text01',\n {\n 'border-b border-uiBorder01': !isNoBorder,\n 'h-14': !onClose,\n 'h-12': onClose,\n },\n );\n\n return (\n <div className={headerClasses}>\n <div>{children}</div>\n {onClose && <IconButton icon=\"close\" size=\"small\" variant=\"text\" onClick={onClose} />}\n </div>\n );\n}\n","import type { CSSProperties, MutableRefObject, PropsWithChildren } from 'react';\nimport { useEffect, useState } from 'react';\nimport { createPortal } from 'react-dom';\n\nimport { ModalBody } from './modal-body';\nimport { ModalContext } from './modal-context';\nimport { ModalFooter } from './modal-footer';\nimport { ModalHeader } from './modal-header';\n\nconst LIMIT_WIDTH = 320;\nconst LIMIT_HEIGHT = 184;\n\ntype Props = {\n width?: CSSProperties['width'];\n height?: CSSProperties['height'];\n isOpen: boolean;\n onClose?: () => void;\n portalTargetRef?: MutableRefObject<HTMLElement | null>;\n};\n\nexport function Modal({ children, width = 480, height, isOpen, onClose, portalTargetRef }: PropsWithChildren<Props>) {\n const [isMounted, setIsMounted] = useState(false);\n\n const renderWidth = typeof width === 'number' ? Math.max(width, LIMIT_WIDTH) : width;\n const renderHeight = typeof height === 'number' ? Math.max(height, LIMIT_HEIGHT) : height;\n\n useEffect(() => {\n setIsMounted(true);\n }, []);\n\n return isMounted && isOpen\n ? createPortal(\n <ModalContext.Provider value={{ onClose }}>\n <div className=\"fixed left-0 top-0 z-overlay flex size-full items-center justify-center bg-backgroundOverlayBlack py-4\">\n <div\n className=\"grid max-h-full min-h-[120px] grid-rows-[max-content_1fr_max-content] flex-col rounded-lg bg-uiBackground01 shadow-modalShadow\"\n style={{ width: renderWidth, height: renderHeight }}\n >\n {children}\n </div>\n </div>\n </ModalContext.Provider>,\n portalTargetRef?.current != null ? portalTargetRef.current : document.body,\n )\n : null;\n}\n\nModal.Body = ModalBody;\nModal.Header = ModalHeader;\nModal.Footer = ModalFooter;\n","import { clsx } from 'clsx';\nimport type { ReactNode } from 'react';\n\nimport { Icon } from '../icon';\nimport { IconButton } from '../icon-button';\n\ntype Props = {\n state?: 'success' | 'warning' | 'information' | 'attention' | 'default';\n size?: 'small' | 'medium';\n children?: ReactNode;\n} & (\n | { showClose?: false }\n | {\n showClose: true;\n onClickClose: () => void;\n }\n);\n\nexport function NotificationInline({ state = 'default', size = 'medium', ...props }: Props) {\n const wrapperClasses = clsx('typography-body13regular flex items-center gap-1 rounded text-text01', {\n 'bg-uiBackgroundError': state === 'attention',\n 'bg-uiBackgroundWarning': state === 'warning',\n 'bg-uiBackgroundBlue': state === 'information',\n 'bg-uiBackgroundSuccess': state === 'success',\n 'bg-uiBackgroundGray': state === 'default',\n 'p-2': size === 'small',\n 'p-3': size === 'medium',\n });\n\n const iconClasses = clsx('flex items-center', {\n 'fill-supportError': state === 'attention',\n 'fill-supportWarning': state === 'warning',\n 'fill-blue-blue50': state === 'information',\n 'fill-supportSuccess': state === 'success',\n });\n\n const iconName = {\n attention: 'attention',\n success: 'success-filled',\n warning: 'warning',\n information: 'information-filled',\n } as const;\n\n const iconSize = {\n small: 'small',\n medium: 'medium',\n } as const;\n\n return (\n <div className={wrapperClasses}>\n {state !== 'default' && (\n <div className={iconClasses}>\n <Icon name={iconName[state]} size={iconSize[size]} />\n </div>\n )}\n <p className=\"flex-1\">{props.children}</p>\n {props.showClose === true && (\n <div className=\"flex items-center\">\n <IconButton icon=\"close\" size=\"small\" variant=\"text\" />\n </div>\n )}\n </div>\n );\n}\n","import { createContext } from 'react';\n\ntype PaginationContextType = {\n /** 現在のページ番号 */\n currentPage: number;\n};\n\nexport const PaginationContext = createContext<PaginationContextType>({\n currentPage: 0,\n});\n","import { clsx } from 'clsx';\nimport { useContext } from 'react';\n\nimport { PaginationContext } from './pagination-context';\n\ntype Props = {\n page: number;\n onClick: (value: number) => void;\n};\n\nexport function PaginationButton({ page, onClick }: Props) {\n const { currentPage } = useContext(PaginationContext);\n\n const buttonClasses = clsx(\n 'flex h-8 min-w-8 items-center justify-center rounded fill-icon01 px-1',\n 'typography-label14regular',\n 'text-interactive02',\n 'hover:bg-hover02',\n { 'border border-uiBorder02': page === currentPage },\n { 'border-transparent': page !== currentPage },\n );\n\n return (\n <button type=\"button\" className={buttonClasses} onClick={() => onClick(page)}>\n {page}\n </button>\n );\n}\n","import { Icon } from '../icon';\nimport { IconButton } from '../icon-button';\nimport { PaginationButton } from './pagination-button';\nimport { PaginationContext } from './pagination-context';\n\nconst START_PAGE = 1;\n\ntype Props = {\n /** 現在のページ番号 */\n currentPage: number;\n /** トータルのページ数 */\n totalPage: number;\n /** 現在のページ番号を中心としたときの、左右のページボタン数 */\n sideNumPagesToShow?: number;\n /** ボタンが押されたときのイベントハンドラ */\n onClick: (value: number) => void;\n};\n\nexport function Pagination({ currentPage, totalPage, sideNumPagesToShow = 3, onClick }: Props) {\n let center = Math.max(currentPage, START_PAGE + 1);\n center = Math.min(center, totalPage - 1);\n\n const start = Math.max(center - sideNumPagesToShow, START_PAGE + 1);\n const end = Math.min(center + sideNumPagesToShow, totalPage - 1);\n const offsetStart = center + sideNumPagesToShow >= totalPage ? totalPage - center - sideNumPagesToShow : 0;\n const offsetEnd = center <= sideNumPagesToShow ? sideNumPagesToShow - center + 1 : 0;\n\n const pageList: Array<number> = [];\n for (let i = start + offsetStart; i <= end + offsetEnd; i++) {\n pageList.push(i);\n }\n\n const threeDotIconClasses = 'flex h-8 w-8 items-center justify-center gap-1 fill-icon01';\n\n return (\n <PaginationContext.Provider\n value={{\n currentPage,\n }}\n >\n <ul className=\"flex gap-1\">\n <li className=\"flex items-center\">\n <IconButton\n isDisabled={currentPage === START_PAGE}\n variant=\"text\"\n icon=\"angle-left\"\n size=\"small\"\n onClick={() => onClick(currentPage - 1)}\n />\n </li>\n <li>\n <PaginationButton onClick={() => onClick(START_PAGE)} page={START_PAGE} />\n </li>\n {pageList.length !== 0 && pageList[0] !== 2 && (\n <li className={threeDotIconClasses}>\n <Icon name=\"more\" size=\"small\" />\n </li>\n )}\n {pageList.map((page: number, index: number) => (\n <li key={index}>\n <PaginationButton onClick={() => onClick(page)} page={page} />\n </li>\n ))}\n {pageList.length !== 0 && pageList[pageList.length - 1] !== totalPage - 1 && (\n <li className={threeDotIconClasses}>\n <Icon name=\"more\" size=\"small\" />\n </li>\n )}\n <li>\n <PaginationButton onClick={() => onClick(totalPage)} page={totalPage} />\n </li>\n <li className=\"flex items-center\">\n <IconButton\n isDisabled={currentPage === totalPage}\n variant=\"text\"\n icon=\"angle-right\"\n size=\"small\"\n onClick={() => onClick(currentPage + 1)}\n />\n </li>\n </ul>\n </PaginationContext.Provider>\n );\n}\n","import { createContext } from 'react';\n\nimport type { SelectOption } from './type';\n\ntype UseSelectReturnType = {\n size?: 'x-small' | 'small' | 'medium' | 'large';\n placeholder?: string;\n selectedOption?: SelectOption | null;\n setIsOptionListOpen: React.Dispatch<React.SetStateAction<boolean>>;\n onChange?: (option: SelectOption | null) => void;\n variant?: 'text' | 'outline';\n};\n\nexport const SelectContext = createContext<UseSelectReturnType>({\n size: 'medium',\n setIsOptionListOpen: () => false,\n variant: 'outline',\n});\n","import { focusVisible } from '@zenkigen-inc/component-theme';\nimport clsx from 'clsx';\nimport { useContext } from 'react';\n\nimport { Icon } from '../icon';\nimport { SelectContext } from './select-context';\nimport type { SelectOption } from './type';\n\ntype Props = {\n option: SelectOption;\n};\n\nexport function SelectItem({ option }: Props) {\n const { setIsOptionListOpen, selectedOption, onChange } = useContext(SelectContext);\n\n const handleClickItem = (option: SelectOption) => {\n onChange?.(option);\n setIsOptionListOpen(false);\n };\n\n const itemClasses = clsx(\n 'typography-label14regular flex h-8 w-full items-center px-3 hover:bg-hover02 active:bg-active02',\n focusVisible.inset,\n {\n 'text-interactive01 fill-interactive01 bg-selectedUi': option.id === selectedOption?.id,\n 'text-interactive02 fill-icon01 bg-uiBackground01': option.id !== selectedOption?.id,\n },\n );\n\n return (\n <li className=\"flex w-full items-center\" key={option.id} data-id={option.id}>\n <button className={itemClasses} type=\"button\" onClick={() => handleClickItem(option)}>\n {option.icon && <Icon name={option.icon} size=\"small\" />}\n <span className=\"ml-1 mr-6\">{option.label}</span>\n {option.id === selectedOption?.id && (\n <div className=\"ml-auto flex items-center\">\n <Icon name=\"check\" size=\"small\" />\n </div>\n )}\n </button>\n </li>\n );\n}\n","import { focusVisible } from '@zenkigen-inc/component-theme';\nimport clsx from 'clsx';\nimport type { CSSProperties, PropsWithChildren } from 'react';\nimport { useContext, useLayoutEffect, useRef } from 'react';\n\nimport { SelectContext } from './select-context';\n\ntype Props = {\n maxHeight?: CSSProperties['height'];\n};\n\nexport function SelectList({ children, maxHeight }: PropsWithChildren<Props>) {\n const ref = useRef<HTMLUListElement>(null);\n const { size, selectedOption, setIsOptionListOpen, variant, placeholder, onChange } = useContext(SelectContext);\n\n const handleClickDeselect = () => {\n onChange?.(null);\n setIsOptionListOpen(false);\n };\n\n useLayoutEffect(() => {\n if (maxHeight != null && ref.current) {\n const element = Array.from(ref.current.children ?? []).find(\n (item) => item.getAttribute('data-id') === selectedOption?.id,\n );\n if (element != null && ref.current.scroll != null) {\n const wrapRect = ref.current.getBoundingClientRect();\n const rect = element.getBoundingClientRect();\n ref.current.scroll(0, rect.top - wrapRect.top - wrapRect.height / 2 + rect.height / 2);\n }\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const listClasses = clsx(\n 'absolute z-dropdown w-max overflow-y-auto rounded bg-uiBackground01 py-2 shadow-floatingShadow',\n {\n 'top-7': size === 'x-small' || size === 'small',\n 'top-9': size === 'medium',\n 'top-11': size === 'large',\n 'border-solid border border-uiBorder01': variant === 'outline',\n },\n );\n\n const deselectButtonClasses = clsx(\n 'typography-label14regular flex h-8 w-full items-center px-3 text-interactive02 hover:bg-hover02 active:bg-active02',\n focusVisible.inset,\n );\n\n return (\n <ul className={listClasses} style={{ maxHeight }} ref={ref}>\n {children}\n {placeholder != null && selectedOption !== null && (\n <li>\n <button className={deselectButtonClasses} type=\"button\" onClick={handleClickDeselect}>\n 選択解除\n </button>\n </li>\n )}\n </ul>\n );\n}\n","import type { IconName } from '@zenkigen-inc/component-icons';\nimport { buttonColors, focusVisible } from '@zenkigen-inc/component-theme';\nimport clsx from 'clsx';\nimport type { CSSProperties, PropsWithChildren } from 'react';\nimport { useRef, useState } from 'react';\n\nimport { useOutsideClick } from '../hooks/use-outside-click';\nimport { Icon } from '../icon';\nimport { SelectContext } from './select-context';\nimport { SelectItem } from './select-item';\nimport { SelectList } from './select-list';\nimport type { SelectOption } from './type';\n\ntype Props = {\n size?: 'x-small' | 'small' | 'medium' | 'large';\n variant?: 'outline' | 'text';\n width?: CSSProperties['width'];\n maxWidth?: CSSProperties['maxWidth'];\n placeholder?: string;\n placeholderIcon?: IconName;\n selectedOption?: SelectOption | null;\n optionListMaxHeight?: CSSProperties['height'];\n isDisabled?: boolean;\n isOptionSelected?: boolean;\n onChange?: (option: SelectOption | null) => void;\n};\n\nexport function Select({\n children,\n size = 'medium',\n variant = 'outline',\n width,\n maxWidth,\n placeholder,\n placeholderIcon,\n selectedOption = null,\n isDisabled = false,\n isOptionSelected = false,\n onChange,\n optionListMaxHeight,\n}: PropsWithChildren<Props>) {\n const [isOptionListOpen, setIsOptionListOpen] = useState(false);\n const targetRef = useRef<HTMLDivElement>(null);\n useOutsideClick(targetRef, () => setIsOptionListOpen(false));\n\n const handleClickToggle = () => setIsOptionListOpen((prev) => !prev);\n\n const wrapperClasses = clsx('relative flex shrink-0 items-center gap-1 rounded bg-uiBackground01', {\n 'h-6': size === 'x-small' || size === 'small',\n 'h-8': size === 'medium',\n 'h-10': size === 'large',\n 'cursor-not-allowed': isDisabled,\n });\n\n const buttonClasses = clsx(\n 'flex size-full items-center rounded',\n buttonColors[variant].hover,\n buttonColors[variant].active,\n buttonColors[variant].disabled,\n focusVisible.normal,\n {\n [buttonColors[variant].selected]: isOptionSelected && !isDisabled && selectedOption,\n [buttonColors[variant].base]: !(isOptionSelected && !isDisabled && selectedOption),\n 'px-2': size === 'x-small' || size === 'small',\n 'px-4': size === 'medium' || size === 'large',\n 'pointer-events-none': isDisabled,\n },\n );\n\n const labelClasses = clsx('overflow-hidden', {\n 'mr-1': size === 'x-small',\n 'mr-2': size !== 'x-small',\n 'typography-label12regular': size === 'x-small',\n 'typography-label14regular': size === 'small' || size === 'medium',\n 'typography-label16regular': size === 'large',\n });\n\n return (\n <SelectContext.Provider\n value={{\n size,\n variant,\n placeholder,\n setIsOptionListOpen,\n selectedOption,\n onChange,\n }}\n >\n <div className={wrapperClasses} style={{ width, maxWidth }} ref={targetRef}>\n <button className={buttonClasses} type=\"button\" onClick={handleClickToggle} disabled={isDisabled}>\n {selectedOption?.icon ? (\n <div className=\"mr-1 flex\">\n <Icon name={selectedOption.icon} size={size === 'large' ? 'medium' : 'small'} />\n </div>\n ) : (\n placeholder != null &&\n placeholderIcon && (\n <div className=\"mr-1 flex\">\n <Icon name={placeholderIcon} size={size === 'large' ? 'medium' : 'small'} />\n </div>\n )\n )}\n <div className={labelClasses}>\n <div className=\"truncate\">{selectedOption ? selectedOption.label : placeholder != null && placeholder}</div>\n </div>\n <div className=\"ml-auto flex items-center\">\n <Icon\n name={isOptionListOpen ? 'angle-small-up' : 'angle-small-down'}\n size={size === 'large' ? 'medium' : 'small'}\n />\n </div>\n </button>\n {isOptionListOpen && !isDisabled && <SelectList maxHeight={optionListMaxHeight}>{children}</SelectList>}\n </div>\n </SelectContext.Provider>\n );\n}\n\nSelect.Option = SelectItem;\n","import { IconButton } from '../icon-button';\nimport type { SelectOption } from '../select';\nimport { Select } from '../select';\n\ntype Props = {\n /** トータル件数 */\n totalSize: number;\n /** ページあたり件数 */\n sizePerPage: number;\n /** 現在のページ番号 */\n currentPage: number;\n /** 件数表示単位ラベル */\n countLabel?: string;\n /** ページ表示単位ラベル */\n pageLabel?: string;\n /** Selectのリストの最大の高さ */\n optionListMaxHeight?: number;\n /** 戻るボタンクリック時のイベントハンドラ */\n onClickPrevButton: () => void;\n /** 進むボタンクリック時のイベントハンドラ */\n onClickNextButton: () => void;\n /** Selectが切り替わった時のイベントハンドラ */\n onChange: (value: number) => void;\n};\n\nexport function PaginationSelect({\n totalSize,\n currentPage,\n sizePerPage,\n countLabel = '件',\n pageLabel = 'ページ',\n optionListMaxHeight = 190,\n onClickPrevButton,\n onClickNextButton,\n onChange,\n}: Props) {\n const pageMax = Math.ceil(totalSize / sizePerPage);\n\n const optionsList: SelectOption[] = [...Array(pageMax)].map((_, index) => {\n const value = (index + 1).toString();\n\n return {\n id: value,\n value,\n label: value,\n };\n });\n\n const minCount = totalSize ? (currentPage - 1) * sizePerPage + 1 : 0;\n const maxCount = currentPage * sizePerPage > totalSize ? totalSize : currentPage * sizePerPage;\n\n return (\n <nav aria-label=\"pagination\" className=\"flex items-center gap-x-1\">\n <div className=\"flex items-center gap-x-2\">\n <div className=\"typography-label14regular text-text01\">\n {minCount > 0 && `${minCount} - `}\n {maxCount}\n {countLabel}\n </div>\n <Select\n size=\"medium\"\n variant=\"outline\"\n selectedOption={optionsList.find((option) => option.value === currentPage.toString())}\n optionListMaxHeight={optionListMaxHeight}\n onChange={(option) => option && onChange(Number(option.value))}\n isDisabled={pageMax === 0}\n >\n {optionsList.map((option) => (\n <Select.Option key={option.id} option={option} />\n ))}\n </Select>\n <div className=\"typography-label14regular text-text03\">\n / {pageMax}\n {pageLabel}\n </div>\n </div>\n <div className=\"flex items-center\">\n <IconButton\n variant=\"text\"\n icon=\"angle-left\"\n size=\"small\"\n isDisabled={currentPage === 1}\n onClick={onClickPrevButton}\n />\n <IconButton\n variant=\"text\"\n icon=\"angle-right\"\n size=\"small\"\n isDisabled={currentPage === pageMax || pageMax === 0}\n onClick={onClickNextButton}\n />\n </div>\n </nav>\n );\n}\n","import { focusVisible } from '@zenkigen-inc/component-theme';\nimport clsx from 'clsx';\nimport type { ChangeEvent } from 'react';\nimport { useCallback, useState } from 'react';\n\ntype Props = {\n name?: string;\n value?: string;\n id?: string;\n label?: string;\n isChecked?: boolean;\n isDisabled?: boolean;\n onChange?: (e: ChangeEvent<HTMLInputElement>) => void;\n};\n\nexport function Radio({ name, value, id, label, isChecked = false, isDisabled = false, onChange }: Props) {\n const [isMouseOver, setIsMouseOver] = useState(false);\n\n const handleMouseOverInput = useCallback(() => {\n setIsMouseOver(true);\n }, []);\n\n const handleMouseOutInput = useCallback(() => {\n setIsMouseOver(false);\n }, []);\n\n const handleChange = useCallback(\n (e: ChangeEvent<HTMLInputElement>) => !isDisabled && onChange?.(e),\n [isDisabled, onChange],\n );\n\n const inputClasses = clsx('peer absolute z-[1] size-6 opacity-0', {\n 'cursor-not-allowed': isDisabled,\n 'cursor-pointer': !isDisabled,\n });\n\n const boxClasses = clsx(\n 'inline-flex size-5 items-center justify-center rounded-full border border-solid bg-white',\n focusVisible.normalPeer,\n {\n 'border-disabled01 hover:border-disabled01': isDisabled && !isMouseOver,\n 'border-hoverUiBorder': !isDisabled && isMouseOver,\n 'border-uiBorder03': !isDisabled,\n 'cursor-not-allowed': isDisabled,\n 'cursor-pointer': !isDisabled,\n },\n );\n\n const afterClasses = clsx('absolute inset-0 m-auto block size-3 rounded-full', {\n 'bg-disabled01': isDisabled && isChecked,\n 'bg-activeSelectedUi': !isDisabled && isChecked,\n 'scale-0': !isChecked,\n 'scale-100': isChecked,\n });\n\n const hoverIndicatorClasses = clsx('inline-block size-3 rounded-full', {\n 'bg-hoverUi': !isDisabled && !isChecked && isMouseOver,\n });\n\n const labelClasses = clsx('typography-label14regular ml-2 flex-[1_0_0] select-none break-all', {\n 'pointer-events-none cursor-not-allowed text-disabled01': isDisabled,\n 'cursor-pointer text-text01': !isDisabled,\n });\n\n return (\n <div className=\"flex items-center\">\n <div className=\"flex size-6 items-center justify-center\">\n <input\n type=\"checkbox\"\n value={value}\n name={name}\n id={id}\n checked={isChecked}\n disabled={isDisabled}\n onChange={handleChange}\n onMouseOver={handleMouseOverInput}\n onMouseLeave={handleMouseOutInput}\n className={inputClasses}\n />\n <div className={boxClasses}>\n <div className=\"relative flex size-5 flex-[0_0_auto] items-center justify-center\">\n <span className={afterClasses} />\n <span className={hoverIndicatorClasses} />\n </div>\n </div>\n </div>\n <label htmlFor={id} className={labelClasses}>\n {label}\n </label>\n </div>\n );\n}\n","import { clsx } from 'clsx';\nimport type { ChangeEvent, FormEvent } from 'react';\nimport { forwardRef } from 'react';\n\nimport { Icon } from '../icon';\nimport { IconButton } from '../icon-button';\n\ntype Props = {\n size?: 'medium' | 'large';\n placeholder?: string;\n width?: string;\n value: string;\n onChange?: (e: ChangeEvent<HTMLInputElement>) => void;\n onSubmit?: (e: FormEvent<HTMLFormElement>) => void;\n onClickClearButton?: () => void;\n};\n\nexport const Search = forwardRef<HTMLDivElement, Props>(({ width = '100%', size = 'medium', ...props }: Props, ref) => {\n const classes = clsx(\n 'flex items-center rounded-full border border-uiBorder02 bg-uiBackground01 focus-within:border-activeInput',\n { 'h-8 px-3': size === 'medium' },\n { 'h-10 px-4': size === 'large' },\n );\n\n const inputClasses = clsx('mx-2.5 h-full flex-1 text-text01 outline-0 placeholder:text-textPlaceholder', {\n ['typography-label14regular']: size === 'medium',\n ['typography-label16regular']: size === 'large',\n });\n\n return (\n <div className=\"relative\" ref={ref}>\n <form onSubmit={props.onSubmit}>\n <div className={classes} style={{ width }}>\n <Icon name=\"search\" color=\"icon01\" size=\"medium\" />\n <input\n type=\"text\"\n size={1}\n value={props.value}\n className={inputClasses}\n placeholder={props.placeholder}\n onChange={props.onChange}\n />\n {props.onClickClearButton && props.value && props.value.length !== 0 && (\n <IconButton\n variant=\"text\"\n icon=\"close\"\n size={size === 'medium' ? 'small' : 'medium'}\n isNoPadding\n onClick={props.onClickClearButton}\n />\n )}\n </div>\n </form>\n </div>\n );\n});\nSearch.displayName = 'Search';\n","import { focusVisible } from '@zenkigen-inc/component-theme';\nimport clsx from 'clsx';\nimport type { PropsWithChildren } from 'react';\n\nimport { Icon } from '../icon';\n\ntype Props = {\n isSortKey: boolean;\n onClickItem: () => void;\n};\n\nexport function SelectItem({ children, isSortKey, onClickItem }: PropsWithChildren<Props>) {\n const itemClasses = clsx(\n 'typography-label14regular flex h-8 w-full items-center px-3 hover:bg-hover02 active:bg-active02',\n focusVisible.inset,\n {\n 'bg-selectedUi fill-interactive01 text-interactive01': isSortKey,\n 'bg-uiBackground01 fill-icon01 text-interactive02': !isSortKey,\n },\n );\n\n return (\n <li className=\"flex w-full items-center\" onClick={onClickItem}>\n <button className={itemClasses} type=\"button\">\n <span className=\"ml-1 mr-6\">{children}</span>\n {isSortKey && (\n <div className=\"ml-auto flex items-center\">\n <Icon name=\"check\" size=\"small\" />\n </div>\n )}\n </button>\n </li>\n );\n}\n","import { focusVisible } from '@zenkigen-inc/component-theme';\nimport clsx from 'clsx';\n\nimport { SelectItem } from './select-item';\nimport type { SortOrder } from './type';\n\ntype Props = {\n size: 'x-small' | 'small' | 'medium' | 'large';\n variant: 'text' | 'outline';\n sortOrder: SortOrder;\n onClickItem: (value: SortOrder) => void;\n onClickDeselect?: () => void;\n};\n\nexport function SelectList({ size, variant, sortOrder, onClickItem, onClickDeselect }: Props) {\n const listClasses = clsx(\n 'absolute z-dropdown w-max overflow-y-auto rounded bg-uiBackground01 py-2 shadow-floatingShadow',\n {\n 'top-7': size === 'x-small' || size === 'small',\n 'top-9': size === 'medium',\n 'top-11': size === 'large',\n 'border-solid border border-uiBorder01': variant === 'outline',\n },\n );\n\n const deselectButtonClasses = clsx(\n 'typography-label14regular flex h-8 w-full items-center px-3 text-interactive02 hover:bg-hover02 active:bg-active02',\n focusVisible.inset,\n );\n\n return (\n <ul className={listClasses}>\n <SelectItem isSortKey={sortOrder === 'ascend'} onClickItem={() => onClickItem('ascend')}>\n 昇順で並び替え\n </SelectItem>\n <SelectItem isSortKey={sortOrder === 'descend'} onClickItem={() => onClickItem('descend')}>\n 降順で並び替え\n </SelectItem>\n {sortOrder !== null && onClickDeselect && (\n <li>\n <button className={deselectButtonClasses} type=\"button\" onClick={onClickDeselect}>\n 選択解除\n </button>\n </li>\n )}\n </ul>\n );\n}\n","import { buttonColors, focusVisible } from '@zenkigen-inc/component-theme';\nimport clsx from 'clsx';\nimport type { CSSProperties } from 'react';\nimport { useCallback, useRef, useState } from 'react';\n\nimport { useOutsideClick } from '../hooks/use-outside-click';\nimport { Icon } from '../icon';\nimport { SelectList } from './select-list';\nimport type { SortOrder } from './type';\n\ntype Props = {\n size?: 'x-small' | 'small' | 'medium' | 'large';\n variant?: 'outline' | 'text';\n width?: CSSProperties['width'];\n label: string;\n sortOrder: SortOrder;\n isDisabled?: boolean;\n isSortKey?: boolean;\n onChange?: (value: SortOrder) => void;\n onClickDeselect?: () => void;\n};\n\nexport function SelectSort({\n size = 'medium',\n variant = 'outline',\n width,\n label,\n sortOrder,\n isDisabled = false,\n isSortKey = false,\n onChange,\n onClickDeselect,\n}: Props) {\n const [isOptionListOpen, setIsOptionListOpen] = useState(false);\n const targetRef = useRef<HTMLDivElement>(null);\n useOutsideClick(targetRef, () => setIsOptionListOpen(false));\n\n const handleClickToggle = () => setIsOptionListOpen((prev) => !prev);\n const handleClickItem = useCallback(\n (value: SortOrder) => {\n onChange?.(value);\n setIsOptionListOpen(false);\n },\n [onChange],\n );\n\n const wrapperClasses = clsx('relative flex shrink-0 items-center gap-1 rounded', {\n 'h-6': size === 'x-small' || size === 'small',\n 'h-8': size === 'medium',\n 'h-10': size === 'large',\n 'cursor-not-allowed': isDisabled,\n });\n\n const buttonClasses = clsx(\n 'flex size-full items-center rounded',\n buttonColors[variant].hover,\n buttonColors[variant].active,\n buttonColors[variant].disabled,\n focusVisible.normal,\n {\n [buttonColors[variant].selected]: isSortKey,\n [buttonColors[variant].base]: !isSortKey,\n 'px-2': size === 'x-small' || size === 'small',\n 'px-4': size === 'medium' || size === 'large',\n 'pointer-events-none': isDisabled,\n },\n );\n\n const labelClasses = clsx('truncate', {\n 'typography-label12regular': size === 'x-small',\n 'typography-label14regular': size === 'small' || size === 'medium',\n 'typography-label16regular': size === 'large',\n 'mr-1': size === 'x-small',\n 'mr-2': size !== 'x-small',\n });\n\n return (\n <div className={wrapperClasses} style={{ width }} ref={targetRef}>\n <button className={buttonClasses} type=\"button\" onClick={handleClickToggle} disabled={isDisabled}>\n <div className={labelClasses}>{label}</div>\n <div className=\"ml-auto flex items-center\">\n {isSortKey ? (\n <Icon\n name={sortOrder === 'ascend' ? 'arrow-up' : 'arrow-down'}\n size={size === 'large' ? 'medium' : 'small'}\n />\n ) : (\n <Icon\n name={isOptionListOpen ? 'angle-small-up' : 'angle-small-down'}\n size={size === 'large' ? 'medium' : 'small'}\n />\n )}\n </div>\n </button>\n {isOptionListOpen && !isDisabled && (\n <SelectList\n size={size}\n variant={variant}\n sortOrder={sortOrder}\n onClickItem={handleClickItem}\n onClickDeselect={onClickDeselect}\n />\n )}\n </div>\n );\n}\n","import { clsx } from 'clsx';\nimport type { ReactNode } from 'react';\n\ntype Props = {\n id: string;\n isSelected?: boolean;\n isDisabled?: boolean;\n children?: ReactNode;\n onClick: (id: string) => void;\n};\n\nexport const TabItem = ({ isSelected = false, ...props }: Props) => {\n const classes = clsx(\n 'relative z-0 flex py-2 leading-[24px] before:absolute before:inset-x-0 before:bottom-0 before:h-px hover:text-text01 disabled:pointer-events-none disabled:text-disabled01',\n {\n 'typography-label14regular': !isSelected,\n 'text-interactive02 hover:before:bg-uiBorder02Dark': !isSelected,\n 'typography-label14bold': isSelected,\n 'before:bg-interactive01 hover:before:bg-interactive01 pointer-events-none': isSelected,\n },\n );\n\n return (\n <button\n type=\"button\"\n role=\"tab\"\n aria-selected={isSelected}\n className={classes}\n disabled={props.isDisabled}\n onClick={() => props.onClick(props.id)}\n >\n {props.children}\n </button>\n );\n};\n","import type { ReactNode } from 'react';\n\nimport { TabItem } from './tab-item';\n\ntype Props = {\n children?: ReactNode;\n};\n\nexport function Tab({ children }: Props) {\n return (\n <div\n role=\"tablist\"\n className=\"relative flex gap-4 px-6 before:absolute before:inset-x-0 before:bottom-0 before:h-px before:bg-uiBorder01\"\n >\n {children}\n </div>\n );\n}\n\nTab.Item = TabItem;\n","import clsx from 'clsx';\nimport type { ReactNode } from 'react';\n\ntype Props = {\n children?: ReactNode;\n className?: string;\n isHeader?: boolean;\n};\n\nexport function TableCell({ children, className, isHeader = false }: Props) {\n const classes = clsx('border-b border-uiBorder01', { 'sticky top-0 z-10 bg-white': isHeader }, className);\n\n return <div className={classes}>{children}</div>;\n}\n","import clsx from 'clsx';\nimport type { ReactNode } from 'react';\n\ntype Props = {\n children?: ReactNode;\n isHoverBackgroundVisible?: boolean;\n};\nexport function TableRow({ children, isHoverBackgroundVisible = false }: Props) {\n const rowClasses = clsx('contents', isHoverBackgroundVisible && '[&:hover>div]:bg-hoverUi02');\n\n return <div className={rowClasses}>{children}</div>;\n}\n","import type { CSSProperties, PropsWithChildren } from 'react';\n\nimport { TableCell } from './table-cell';\nimport { TableRow } from './table-row';\n\ntype Props = {\n width?: CSSProperties['width'];\n templateRows?: CSSProperties['gridTemplateRows'];\n templateColumns?: CSSProperties['gridTemplateColumns'];\n autoColumns?: CSSProperties['gridAutoColumns'];\n autoRows?: CSSProperties['gridAutoRows'];\n};\n\nexport function Table({\n width,\n templateRows,\n templateColumns,\n autoColumns,\n autoRows,\n children,\n}: PropsWithChildren<Props>) {\n return (\n <div\n className=\"grid\"\n style={{\n width,\n gridTemplateRows: templateRows,\n gridTemplateColumns: templateColumns,\n gridAutoColumns: autoColumns,\n gridAutoRows: autoRows,\n }}\n >\n {children}\n </div>\n );\n}\n\nTable.Row = TableRow;\nTable.Cell = TableCell;\n","import { focusVisible } from '@zenkigen-inc/component-theme';\nimport clsx from 'clsx';\n\nimport type { ColorVariant, TagColor } from './type';\n\ntype Props = {\n color?: TagColor;\n variant?: ColorVariant;\n onClick?: () => void;\n};\n\nexport const DeleteIcon = ({ color, variant, onClick }: Props) => {\n const deleteButtonClasses = clsx(\n 'group ml-2 size-[14px] rounded-full p-0.5 hover:cursor-pointer hover:bg-iconOnColor focus-visible:bg-iconOnColor',\n focusVisible.normal,\n );\n\n const deletePathClasses = clsx({\n 'fill-interactive02': color === 'gray' || variant === 'light',\n 'group-hover:fill-interactive02 group-focus-visible:fill-interactive02 fill-iconOnColor': color !== 'gray',\n });\n\n return (\n <button type=\"button\" className={deleteButtonClasses} onClick={onClick}>\n <svg viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M19.7745 4.21818C19.384 3.82765 18.7508 3.82765 18.3603 4.21818L11.9963 10.5821L5.6324 4.21818C5.24187 3.82765 4.60871 3.82765 4.21818 4.21818C3.82766 4.6087 3.82766 5.24187 4.21818 5.63239L10.5821 11.9964L4.21818 18.3603C3.82766 18.7508 3.82766 19.384 4.21818 19.7745C4.60871 20.1651 5.24187 20.165 5.6324 19.7745L11.9963 13.4106L18.3603 19.7745C18.7508 20.165 19.384 20.1651 19.7745 19.7745C20.165 19.384 20.165 18.7508 19.7745 18.3603L13.4106 11.9964L19.7745 5.63239C20.165 5.24187 20.165 4.6087 19.7745 4.21818Z\"\n className={deletePathClasses}\n ></path>\n </svg>\n </button>\n );\n};\n","import { tagColors, tagLightColors } from '@zenkigen-inc/component-theme';\nimport clsx from 'clsx';\n\nimport { DeleteIcon } from './delete-icon';\nimport type { ColorVariant, TagColor } from './type';\n\ntype Props = {\n id: string;\n children: string;\n color: TagColor;\n variant?: ColorVariant;\n size?: 'x-small' | 'small' | 'medium';\n} & ({ isEditable: true; onDelete: (id: string) => void } | { isEditable?: undefined; onDelete?: never });\n\nexport function Tag({ id, children, color, variant = 'normal', size = 'medium', isEditable, onDelete }: Props) {\n const wrapperClasses = clsx('flex', 'items-center', 'justify-center', {\n [tagColors[color]]: variant === 'normal',\n [tagLightColors[color]]: variant === 'light',\n 'h-[14px] typography-label11regular': !isEditable && size === 'x-small',\n 'h-4 typography-label12regular': !isEditable && size === 'small',\n 'h-[18px] typography-label14regular': !isEditable && size === 'medium',\n 'h-[22px] typography-label14regular': isEditable && size === 'medium',\n 'rounded-full': isEditable,\n rounded: !isEditable,\n 'py-0.5 px-1': !isEditable,\n 'py-1 px-2': isEditable,\n });\n\n return (\n <div className={wrapperClasses}>\n {children}\n {isEditable ? <DeleteIcon onClick={() => onDelete(id)} color={color} variant={variant} /> : null}\n </div>\n );\n}\n","import { clsx } from 'clsx';\nimport type { CSSProperties, TextareaHTMLAttributes } from 'react';\nimport { forwardRef } from 'react';\n\ntype Props = TextareaHTMLAttributes<HTMLTextAreaElement> & {\n size?: 'medium' | 'large';\n value: string;\n height?: CSSProperties['height'];\n isResizable?: boolean;\n isError?: boolean;\n};\n\nexport const TextArea = forwardRef<HTMLTextAreaElement, Props>(\n ({ size = 'medium', isResizable = false, isError = false, disabled = false, ...props }: Props, ref) => {\n const classes = clsx(\n 'w-full rounded border outline-0 placeholder:text-textPlaceholder disabled:text-textPlaceholder',\n {\n 'border-supportError': isError && !disabled,\n 'hover:border-hoverInput': !disabled && !isError,\n 'border-uiBorder02 hover:focus-within:border-activeInput focus-within:border-activeInput text-text01': !isError,\n 'bg-disabled02 border-disabled01': disabled,\n ['typography-body14regular px-2 pt-1.5 pb-2']: size === 'medium',\n ['text-4 leading-normal px-3.5 py-2.5']: size === 'large',\n 'text-supportError': isError,\n 'resize-none': !isResizable,\n },\n );\n\n return (\n <div className=\"flex\">\n <textarea ref={ref} className={classes} {...props} disabled={disabled} style={{ height: props.height }} />\n </div>\n );\n },\n);\nTextArea.displayName = 'TextArea';\n","import { clsx } from 'clsx';\nimport type { InputHTMLAttributes } from 'react';\nimport { forwardRef } from 'react';\n\nimport { IconButton } from '../icon-button';\n\ntype Props = Omit<InputHTMLAttributes<HTMLInputElement>, 'size'> & {\n size?: 'medium' | 'large';\n value: string;\n isError?: boolean;\n onClickClearButton?: () => void;\n};\n\nexport const TextInput = forwardRef<HTMLInputElement, Props>(\n ({ size = 'medium', isError = false, disabled = false, onClickClearButton, ...props }: Props, ref) => {\n const inputWrapClasses = clsx('relative flex items-center gap-2 overflow-hidden rounded border', {\n 'border-uiBorder02': !isError && !disabled,\n 'border-supportError': isError && !disabled,\n 'hover:border-hoverInput': !disabled && !isError,\n 'hover:focus-within:border-activeInput': !isError,\n 'focus-within:border-activeInput': !isError,\n 'bg-disabled02 border-disabled01': disabled,\n });\n\n const inputClasses = clsx(\n 'flex-1 pl-2 pr-3 outline-0 placeholder:text-textPlaceholder disabled:text-textPlaceholder',\n {\n ['typography-label14regular min-h-8']: size === 'medium',\n ['typography-label16regular min-h-10']: size === 'large',\n 'text-text01': !isError,\n 'text-supportError': isError,\n },\n );\n\n return (\n <div className={inputWrapClasses}>\n <input ref={ref} size={1} className={inputClasses} disabled={disabled} onChange={props.onChange} {...props} />\n {onClickClearButton && props.value.length !== 0 && !disabled && (\n <div className=\"absolute right-3\">\n <IconButton variant=\"text\" icon=\"close\" size=\"small\" isNoPadding onClick={onClickClearButton} />\n </div>\n )}\n </div>\n );\n },\n);\nTextInput.displayName = 'TextInput';\n","import clsx from 'clsx';\nimport type { AnimationEvent, CSSProperties, ReactNode } from 'react';\nimport { useCallback, useEffect, useState } from 'react';\n\nimport { Icon } from '../icon';\nimport { IconButton } from '../icon-button';\nimport type { ToastState } from './type';\n\nconst CLOSE_TIME_MSEC = 5000;\n\ntype Props = {\n state?: ToastState;\n width?: CSSProperties['width'];\n isAutoClose?: boolean;\n isAnimation?: boolean;\n children?: ReactNode;\n onClickClose: () => void;\n};\n\nexport function Toast({\n state = 'information',\n width = 'auto',\n isAutoClose = false,\n isAnimation = false,\n children,\n onClickClose,\n}: Props) {\n const [isRemoving, setIsRemoving] = useState(false);\n\n const handleClose = useCallback(() => {\n if (isAnimation) {\n setIsRemoving(true);\n } else {\n onClickClose();\n }\n }, [isAnimation, onClickClose]);\n\n const handleAnimationEnd = (e: AnimationEvent<HTMLDivElement>) =>\n window.getComputedStyle(e.currentTarget).opacity === '0' && onClickClose();\n\n const wrapperClasses = clsx('pointer-events-auto flex items-start gap-1 bg-white p-4 shadow-floatingShadow', {\n ['animate-toast-in']: isAnimation && !isRemoving,\n ['animate-toast-out opacity-0']: isAnimation && isRemoving,\n });\n const iconClasses = clsx('flex items-center', {\n 'fill-supportSuccess': state === 'success',\n 'fill-supportError': state === 'error',\n 'fill-supportWarning': state === 'warning',\n 'fill-supportInfo': state === 'information',\n });\n const textClasses = clsx('typography-body13regular flex-1 pt-[3px]', {\n 'text-supportError': state === 'error',\n 'text-text01': state === 'success' || state === 'warning' || state === 'information',\n });\n\n const iconName = {\n success: 'success-filled',\n error: 'attention',\n warning: 'warning',\n information: 'information-filled',\n } as const;\n\n useEffect(() => {\n const timer = window.setTimeout(() => {\n if (isAutoClose) {\n setIsRemoving(true);\n }\n }, CLOSE_TIME_MSEC);\n\n return () => window.clearTimeout(timer);\n }, [isAutoClose]);\n\n return (\n <div className={wrapperClasses} style={{ width }} onAnimationEnd={handleAnimationEnd}>\n <div className={iconClasses}>\n <Icon name={iconName[state]} />\n </div>\n <p className={textClasses}>{children}</p>\n <IconButton icon=\"close\" size=\"medium\" variant=\"text\" onClick={handleClose} isNoPadding />\n </div>\n );\n}\n","import type { PropsWithChildren } from 'react';\nimport { createContext, useCallback, useContext, useEffect, useState } from 'react';\nimport { createPortal } from 'react-dom';\n\nimport { Toast } from './toast';\nimport type { ToastState } from './type';\n\ntype AddToastArgs = { message: string; state: ToastState };\n\ntype ToastProviderProps = {\n addToast: (args: AddToastArgs) => void;\n removeToast: (id: number) => void;\n};\n\nconst ToastContext = createContext<ToastProviderProps>({} as ToastProviderProps);\n\nexport const ToastProvider = ({ children }: PropsWithChildren) => {\n const [isClientRender, setIsClientRender] = useState(false);\n const [toasts, setToasts] = useState<{ id: number; message: string; state: ToastState }[]>([]);\n\n const addToast = useCallback(({ message, state }: AddToastArgs) => {\n setToasts((prev) => [...prev, { id: Math.trunc(Math.random() * 100000), message, state }]);\n }, []);\n\n const removeToast = useCallback((id: number) => {\n setToasts((prev) => prev.filter((snackbar) => snackbar.id !== id));\n }, []);\n\n useEffect(() => {\n setIsClientRender(true);\n }, []);\n\n return (\n <ToastContext.Provider value={{ addToast, removeToast }}>\n {children}\n {isClientRender &&\n createPortal(\n <div className=\"pointer-events-none fixed bottom-0 left-0 z-toast mb-4 ml-4 flex w-full flex-col-reverse gap-[16px]\">\n {toasts.map(({ id, message, state }) => (\n <Toast key={id} state={state} isAutoClose isAnimation onClickClose={() => removeToast(id)} width={475}>\n {message}\n </Toast>\n ))}\n </div>,\n document.body,\n )}\n </ToastContext.Provider>\n );\n};\n\nexport const useToast = () => {\n return useContext(ToastContext);\n};\n","import clsx from 'clsx';\nimport type { ReactNode } from 'react';\n\ntype Props = {\n id: string;\n size: 'small' | 'medium';\n isChecked: boolean;\n onChange: () => void;\n label?: ReactNode;\n labelPosition?: 'left' | 'right';\n isDisabled?: boolean;\n};\n\nexport function Toggle({\n id,\n size = 'medium',\n isChecked,\n onChange,\n label,\n labelPosition = 'right',\n isDisabled = false,\n}: Props) {\n const baseClasses = clsx('relative flex items-center rounded-full', {\n 'bg-disabledOn': isDisabled && isChecked,\n 'bg-disabled01': isDisabled && !isChecked,\n 'bg-interactive01 peer-hover:bg-hover01': !isDisabled && isChecked,\n 'bg-interactive02 peer-hover:bg-hover02Dark': !isDisabled && !isChecked,\n 'w-8 h-4 px-[3px]': size === 'small',\n 'w-12 h-6 px-1': size === 'medium',\n });\n const inputClasses = clsx(\n 'peer absolute inset-0 z-[1] opacity-0',\n isDisabled ? 'cursor-not-allowed' : 'cursor-pointer',\n );\n const indicatorClasses = clsx('rounded-full bg-iconOnColor', {\n 'w-2.5 h-2.5': size === 'small',\n 'w-4 h-4': size === 'medium',\n 'ml-auto': isChecked,\n });\n const labelClasses = clsx('break-all', {\n 'mr-2': labelPosition === 'left',\n 'ml-2': labelPosition === 'right',\n 'typography-label12regular': size === 'small',\n 'typography-label16regular': size === 'medium',\n 'pointer-events-none cursor-not-allowed text-disabled01': isDisabled,\n 'cursor-pointer text-text01': !isDisabled,\n });\n\n return (\n <div className=\"relative flex flex-[0_0_auto] items-center\">\n {label != null && labelPosition === 'left' && (\n <label htmlFor={id} className={labelClasses}>\n {label}\n </label>\n )}\n <input\n className={inputClasses}\n type=\"checkbox\"\n name={id}\n id={id}\n checked={isChecked}\n onChange={onChange}\n disabled={isDisabled}\n />\n <div className={baseClasses}>\n <span className={indicatorClasses} />\n </div>\n {label != null && labelPosition === 'right' && (\n <label htmlFor={id} className={labelClasses}>\n {label}\n </label>\n )}\n </div>\n );\n}\n","import type { CSSProperties } from 'react';\nimport { useCallback } from 'react';\n\nimport type { TooltipHorizontalAlign, TooltipPosition, TooltipSize, TooltipVerticalPosition } from './type';\n\nexport const useTooltip = () => {\n const calculatePosition = useCallback(\n (args: {\n dimensions: DOMRect;\n maxWidth?: CSSProperties['width'];\n verticalPosition: TooltipVerticalPosition;\n horizontalAlign: TooltipHorizontalAlign;\n tooltipSize: TooltipSize;\n }) => {\n const result: TooltipPosition = {\n maxWidth: 'none',\n width: 'auto',\n left: '0px',\n top: '0px',\n bottom: '0px',\n translateX: '0',\n translateY: '0',\n };\n result.maxWidth = args.maxWidth ?? 'none';\n\n const offsetH = args.tooltipSize === 'small' ? 11 : 22;\n const targetHorizontalCenter = args.dimensions.right - (args.dimensions.right - args.dimensions.left) / 2;\n const targetLeft = args.dimensions.left;\n const targetRight = args.dimensions.right;\n const targetWidth = args.dimensions.width;\n\n switch (args.horizontalAlign) {\n case 'center':\n result.left = `${targetHorizontalCenter}px`;\n result.translateX = '-50%';\n break;\n case 'left':\n result.left = `${targetLeft - offsetH}px`;\n result.translateX = `${targetWidth / 2}px`;\n break;\n case 'right':\n result.left = `${targetRight + offsetH}px`;\n result.translateX = `-${targetWidth / 2}px`;\n break;\n }\n\n switch (args.verticalPosition) {\n case 'bottom':\n result.top = `${args.dimensions.top + args.dimensions.height + window.scrollY}px`;\n result.bottom = 'unset';\n break;\n case 'top':\n result.top = `${args.dimensions.top + window.scrollY}px`;\n result.bottom = 'unset';\n result.translateY = '-100%';\n break;\n }\n\n return result;\n },\n [],\n );\n\n return {\n calculatePosition,\n };\n};\n","import clsx from 'clsx';\n\nimport type { TooltipHorizontalAlign, TooltipSize, TooltipVerticalPosition } from './type';\n\ntype Props = {\n size: TooltipSize;\n verticalPosition: TooltipVerticalPosition;\n horizontalAlign: TooltipHorizontalAlign;\n};\n\nexport const TailIcon = (props: Props) => {\n const tailClasses = clsx('absolute fill-uiBackgroundTooltip', {\n 'rotate-180': props.verticalPosition === 'bottom',\n 'rotate-0': props.verticalPosition !== 'bottom',\n '-top-1': props.verticalPosition === 'bottom' && props.size === 'small',\n '-top-2': props.verticalPosition === 'bottom' && props.size !== 'small',\n '-bottom-1': props.verticalPosition !== 'bottom' && props.size === 'small',\n '-bottom-2': props.verticalPosition !== 'bottom' && props.size !== 'small',\n 'right-2': props.horizontalAlign === 'right' && props.size === 'small',\n 'right-4': props.horizontalAlign === 'right' && props.size !== 'small',\n 'left-2': props.horizontalAlign === 'left' && props.size === 'small',\n 'left-4': props.horizontalAlign === 'left' && props.size !== 'small',\n 'left-1/2 -translate-x-1': props.horizontalAlign === 'center' && props.size === 'small',\n 'left-1/2 -translate-x-2': props.horizontalAlign === 'center' && props.size !== 'small',\n });\n\n if (props.size === 'small') {\n return (\n <svg className={tailClasses} width=\"8\" height=\"4\" viewBox=\"0 0 8 4\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M4 4L0 0H8L4 4Z\" />\n </svg>\n );\n } else {\n return (\n <svg\n className={tailClasses}\n width=\"14\"\n height=\"8\"\n viewBox=\"0 0 14 8\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path d=\"M7 8L0 0H14L7 8Z\" />\n </svg>\n );\n }\n};\n","import clsx from 'clsx';\nimport type { CSSProperties, ReactNode } from 'react';\n\nimport { TailIcon } from './tail-icon';\nimport type { TooltipHorizontalAlign, TooltipPosition, TooltipSize, TooltipVerticalPosition } from './type';\n\nexport const TooltipContent = ({\n content,\n horizontalAlign,\n verticalPosition,\n size,\n tooltipPosition,\n maxWidth,\n isPortal = false,\n}: {\n content: ReactNode;\n size: TooltipSize;\n maxWidth: CSSProperties['maxWidth'];\n verticalPosition: TooltipVerticalPosition;\n horizontalAlign: TooltipHorizontalAlign;\n tooltipPosition: TooltipPosition;\n isPortal?: boolean;\n}) => {\n const tooltipWrapperClasses = clsx('absolute z-tooltip m-auto flex', {\n 'top-0': !isPortal && verticalPosition === 'top',\n 'bottom-0': !isPortal && verticalPosition === 'bottom',\n 'justify-start': horizontalAlign === 'left',\n 'justify-center': horizontalAlign === 'center',\n 'justify-end': horizontalAlign === 'right',\n 'w-[24px]': size === 'small',\n 'w-[46px]': size !== 'small',\n });\n\n const tooltipBodyClasses = clsx(\n 'absolute z-tooltip inline-block w-max rounded bg-uiBackgroundTooltip text-textOnColor',\n {\n 'typography-body12regular': size === 'small',\n 'typography-body13regular': size === 'medium',\n 'px-2 pb-1 pt-1.5': size === 'small',\n 'px-4 py-3': size === 'medium',\n 'bottom-2': verticalPosition !== 'bottom' && size === 'small',\n 'bottom-3': verticalPosition !== 'bottom' && size === 'medium',\n 'top-2': verticalPosition === 'bottom' && size === 'small',\n 'top-3': verticalPosition === 'bottom' && size === 'medium',\n },\n );\n\n const tooltipWrapperStyle = isPortal\n ? {\n transform: `translate(${tooltipPosition.translateX}, ${tooltipPosition.translateY})`,\n ...tooltipPosition,\n }\n : {};\n\n return (\n <div className={tooltipWrapperClasses} style={tooltipWrapperStyle}>\n <div\n className={tooltipBodyClasses}\n style={{\n maxWidth,\n }}\n >\n {content}\n <TailIcon size={size} verticalPosition={verticalPosition} horizontalAlign={horizontalAlign} />\n </div>\n </div>\n );\n};\n","import type { CSSProperties, PropsWithChildren, ReactNode } from 'react';\nimport { useCallback, useEffect, useRef, useState } from 'react';\nimport { createPortal } from 'react-dom';\n\nimport { useTooltip } from './tooltip.hook';\nimport { TooltipContent } from './tooltip-content';\nimport type { TooltipHorizontalAlign, TooltipPosition, TooltipSize, TooltipVerticalPosition } from './type';\n\ntype Props = {\n content: ReactNode;\n size?: TooltipSize;\n maxWidth?: CSSProperties['maxWidth'];\n verticalPosition?: TooltipVerticalPosition;\n horizontalAlign?: TooltipHorizontalAlign;\n isDisabledHover?: boolean;\n portalTarget?: HTMLElement;\n};\n\nexport function Tooltip({\n children,\n content,\n size = 'small',\n maxWidth,\n verticalPosition = 'bottom',\n horizontalAlign = 'center',\n isDisabledHover = false,\n portalTarget,\n}: PropsWithChildren<Props>) {\n const { calculatePosition } = useTooltip();\n\n const [isVisible, setIsVisible] = useState(false);\n const [tooltipPosition, setTooltipPosition] = useState<TooltipPosition>({\n maxWidth: 'none',\n width: 'auto',\n left: '0px',\n top: '0px',\n bottom: '0px',\n translateX: '0',\n translateY: '0',\n });\n\n const targetRef = useRef<HTMLDivElement>(null);\n\n const handleMouseOverWrapper = useCallback(() => {\n if (isDisabledHover) {\n return;\n }\n setIsVisible(true);\n }, [isDisabledHover]);\n\n const handleMouseOutWrapper = useCallback(() => {\n setIsVisible(false);\n }, []);\n\n useEffect(() => {\n if (targetRef.current === null) return;\n\n const dimensions = targetRef.current?.getBoundingClientRect();\n const position = calculatePosition({ dimensions, maxWidth, verticalPosition, horizontalAlign, tooltipSize: size });\n\n setTooltipPosition(position);\n }, [calculatePosition, horizontalAlign, maxWidth, size, verticalPosition]);\n\n return (\n <div\n ref={targetRef}\n className=\"relative flex items-center justify-center\"\n onMouseOver={handleMouseOverWrapper}\n onMouseLeave={handleMouseOutWrapper}\n >\n {children}\n {isVisible &&\n (portalTarget == null ? (\n <TooltipContent\n content={content}\n size={size}\n maxWidth={maxWidth}\n verticalPosition={verticalPosition}\n horizontalAlign={horizontalAlign}\n tooltipPosition={tooltipPosition}\n />\n ) : (\n createPortal(\n <TooltipContent\n isPortal\n content={content}\n size={size}\n maxWidth={maxWidth}\n verticalPosition={verticalPosition}\n horizontalAlign={horizontalAlign}\n tooltipPosition={tooltipPosition}\n />,\n portalTarget,\n )\n ))}\n </div>\n );\n}\n"],"names":["isAsciiString","str","charCodeAt","Avatar","_ref","_props$userId","_props$isDisabled","_clsx","_ref$size","size","props","_objectWithoutPropertiesLoose","_excluded","classes","clsx","isDisabled","userId","userColors","length","trimmedFirstName","firstName","replace","trim","trimmedLastName","lastName","nameOnIcon","slice","toUpperCase","_jsx","className","children","BreadcrumbItem","Breadcrumb","Item","Button","_ref$variant","variant","_ref$isSelected","isSelected","width","borderRadius","before","after","elementAs","baseClasses","buttonColors","hover","active","disabled","focusVisible","normal","selected","base","Component","_jsxs","_extends","style","CheckedIcon","viewBox","xmlns","fillRule","clipRule","d","MinusIcon","Checkbox","name","value","id","_ref$isChecked","isChecked","_ref$isIndeterminate","isIndeterminate","_ref$isDisabled","onChange","label","_ref$color","color","_useState","useState","isMouseOver","setIsMouseOver","handleMouseOverInput","useCallback","handleMouseOutInput","handleChange","e","baseInputClasses","boxClasses","normalPeer","indicatorClasses","afterClasses","hoverIndicatorClasses","labelClasses","type","checked","onMouseOver","onMouseLeave","htmlFor","useOutsideClick","ref","handler","enabled","useEffect","listener","event","_event$target","element","current","Boolean","contains","target","document","addEventListener","removeEventListener","Icon","iconColors","icon01","icon01Dark","icon02","icon02Dark","icon03","icon03Dark","iconOnColor","iconElements","DropdownContext","createContext","isVisible","setIsVisible","targetDimensions","height","DropdownItem","onClick","_useContext","useContext","handleClickItem","itemClasses","inset","DropdownMenu","maxHeight","_ref$isNoPadding","isNoPadding","_ref$verticalPosition","verticalPosition","_ref$horizontalAlign","horizontalAlign","portalTargetRef","wrapperClasses","absolute","top","bottom","Dropdown","icon","title","_ref$isArrowHidden","isArrowHidden","_useState2","setTargetDimensions","targetRef","useRef","handleToggle","dimensions","getBoundingClientRect","calculatedDimensions","right","left","childrenButtonClasses","buttonClasses","Provider","createPortal","Menu","EvaluationStar","_ref$isEditable","isEditable","onChangeRating","maxRating","currentRating","setCurrentRating","handleChangeRating","newRating","starClasses","renderStar","rating","ratingStars","Array","from","_","index","Heading","TagName","level","typography","heading","IconButton","isAnchor","iconSize","href","Loading","_ref$position","position","_ref$height","svgClasses","_Fragment","fill","cx","cy","r","stroke","strokeWidth","ModalBody","ModalContext","onClose","ModalFooter","_ref$isNoBorder","isNoBorder","ModalHeader","headerClasses","LIMIT_WIDTH","LIMIT_HEIGHT","Modal","_ref$width","isOpen","isMounted","setIsMounted","renderWidth","Math","max","renderHeight","body","Body","Header","Footer","NotificationInline","_ref$state","state","iconClasses","iconName","attention","success","warning","information","small","medium","showClose","PaginationContext","currentPage","PaginationButton","page","START_PAGE","Pagination","totalPage","_ref$sideNumPagesToSh","sideNumPagesToShow","center","min","start","end","offsetStart","offsetEnd","pageList","i","push","threeDotIconClasses","map","SelectContext","setIsOptionListOpen","SelectItem","option","selectedOption","SelectList","placeholder","handleClickDeselect","useLayoutEffect","_ref$current$children","find","item","getAttribute","scroll","wrapRect","rect","listClasses","deselectButtonClasses","Select","maxWidth","placeholderIcon","_ref$selectedOption","_ref$isOptionSelected","isOptionSelected","optionListMaxHeight","isOptionListOpen","handleClickToggle","prev","Option","PaginationSelect","totalSize","sizePerPage","_ref$countLabel","countLabel","_ref$pageLabel","pageLabel","_ref$optionListMaxHei","onClickPrevButton","onClickNextButton","pageMax","ceil","optionsList","concat","toString","minCount","maxCount","Number","Radio","inputClasses","Search","forwardRef","onSubmit","onClickClearButton","displayName","isSortKey","onClickItem","sortOrder","onClickDeselect","SelectSort","_ref$isSortKey","TabItem","role","Tab","TableCell","_ref$isHeader","isHeader","TableRow","_ref$isHoverBackgroun","isHoverBackgroundVisible","rowClasses","Table","templateRows","templateColumns","autoColumns","autoRows","gridTemplateRows","gridTemplateColumns","gridAutoColumns","gridAutoRows","Row","Cell","DeleteIcon","deleteButtonClasses","deletePathClasses","Tag","onDelete","tagColors","tagLightColors","rounded","TextArea","_ref$isResizable","isResizable","_ref$isError","isError","_ref$disabled","TextInput","inputWrapClasses","CLOSE_TIME_MSEC","Toast","_ref$isAutoClose","isAutoClose","_ref$isAnimation","isAnimation","onClickClose","isRemoving","setIsRemoving","handleClose","handleAnimationEnd","window","getComputedStyle","currentTarget","opacity","textClasses","error","timer","setTimeout","clearTimeout","onAnimationEnd","ToastContext","ToastProvider","isClientRender","setIsClientRender","toasts","setToasts","addToast","_ref2","message","trunc","random","removeToast","filter","snackbar","_ref3","useToast","Toggle","_ref$labelPosition","labelPosition","useTooltip","calculatePosition","args","_args$maxWidth","result","translateX","translateY","offsetH","tooltipSize","targetHorizontalCenter","targetLeft","targetRight","targetWidth","scrollY","TailIcon","tailClasses","TooltipContent","content","tooltipPosition","_ref$isPortal","isPortal","tooltipWrapperClasses","tooltipBodyClasses","tooltipWrapperStyle","transform","Tooltip","_ref$isDisabledHover","isDisabledHover","portalTarget","_useTooltip","setTooltipPosition","handleMouseOverWrapper","handleMouseOutWrapper","_targetRef$current"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAGO,IAAMA,aAAa,GAAG,SAAhBA,aAAaA,CAAIC,GAAW,EAAI;AAC3C,EAAA,OAAOA,GAAG,CAACC,UAAU,CAAC,CAAC,CAAC,GAAG,GAAG,CAAA;AAChC,CAAC,CAAA;AAUK,SAAUC,MAAMA,CAAAC,IAAA,EAAqC;AAAA,EAAA,IAAAC,aAAA,EAAAC,iBAAA,EAAAC,KAAA,CAAA;AAAA,EAAA,IAAAC,SAAA,GAAAJ,IAAA,CAAlCK,IAAI;AAAJA,IAAAA,IAAI,GAAAD,SAAA,KAAG,KAAA,CAAA,GAAA,QAAQ,GAAAA,SAAA;AAAKE,IAAAA,KAAK,GAAAC,6BAAA,CAAAP,IAAA,EAAAQ,WAAA,CAAA,CAAA;AAChD,EAAA,IAAMC,OAAO,GAAGC,IAAI,CAAC,gEAAgE,GAAAP,KAAA,GAAA;IACnF,qCAAqC,EAAEE,IAAI,KAAK,SAAS;IACzD,qCAAqC,EAAEA,IAAI,KAAK,OAAO;IACvD,qCAAqC,EAAEA,IAAI,KAAK,QAAQ;IACxD,mCAAmC,EAAEA,IAAI,KAAK,OAAO;IACrD,mCAAmC,EAAEA,IAAI,KAAK,SAAS;IACvD,eAAe,EAAEC,KAAK,CAACK,UAAU;AACjC,IAAA,WAAW,EAAEL,KAAK,CAACM,MAAM,IAAI,IAAA;AAAI,GAAA,EAAAT,KAAA,CAChCU,UAAU,CAAC,CAAAZ,CAAAA,aAAA,GAACK,KAAK,CAACM,MAAM,KAAA,IAAA,GAAAX,aAAA,GAAI,CAAC,IAAIY,UAAU,CAACC,MAAM,CAAW,CAAA,GAC5DR,KAAK,CAACM,MAAM,IAAI,IAAI,IAAI,EAAAV,CAAAA,iBAAA,GAAEI,KAAK,CAACK,UAAU,KAAA,IAAA,GAAAT,iBAAA,GAAI,KAAK,CAAC,EAAAC,KAAA,EACtD,CAAA;AAEF,EAAA,IAAMY,gBAAgB,GAAGT,KAAK,CAACU,SAAS,CAACC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAACC,IAAI,EAAE,CAAA;AACjE,EAAA,IAAMC,eAAe,GAAGb,KAAK,CAACc,QAAQ,CAACH,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAACC,IAAI,EAAE,CAACA,IAAI,EAAE,CAAA;AACtE,EAAA,IAAMG,UAAU,GAAGzB,aAAa,CAACuB,eAAe,CAAC,GAC7CJ,gBAAgB,CAACO,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAACC,WAAW,EAAE,GAAGJ,eAAe,CAACG,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAACC,WAAW,EAAE,GACtF,CAACJ,eAAe,GAAGJ,gBAAgB,EAAEO,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;AAEpD,EAAA,oBAAOE,GAAA,CAAA,MAAA,EAAA;AAAMC,IAAAA,SAAS,EAAEhB,OAAQ;AAAAiB,IAAAA,QAAA,EAAEL,UAAAA;AAAU,GAAO,CAAC,CAAA;AACtD;;ACjCO,IAAMM,cAAc,GAAG,SAAjBA,cAAcA,CAAA3B,IAAA,EAAuC;AAAA,EAAA,IAAjC0B,QAAQ,GAAA1B,IAAA,CAAR0B,QAAQ,CAAA;AACvC,EAAA,oBACEF,GAAA,CAAA,IAAA,EAAA;AAAIC,IAAAA,SAAS,EAAC,uGAAuG;AAAAC,IAAAA,QAAA,EAClHA,QAAAA;AAAQ,GACP,CAAC,CAAA;AAET,CAAC;;ACJe,SAAAE,UAAUA,CAAA5B,IAAA,EAAgC;AAAA,EAAA,IAA7B0B,QAAQ,GAAA1B,IAAA,CAAR0B,QAAQ,CAAA;AACnC,EAAA,oBACEF,GAAA,CAAA,KAAA,EAAA;AAAK,IAAA,YAAA,EAAW,YAAY;AAAAE,IAAAA,QAAA,eAC1BF,GAAA,CAAA,IAAA,EAAA;AAAIC,MAAAA,SAAS,EAAC,8EAA8E;AAAAC,MAAAA,QAAA,EAAEA,QAAAA;KAAa,CAAA;AAC7G,GAAK,CAAC,CAAA;AAEV,CAAA;AAEAE,UAAU,CAACC,IAAI,GAAGF,cAAc;;;ICoBnBG,MAAM,GAAG,SAATA,MAAMA,CAAA9B,IAAA,EAYJ;AAAA,EAAA,IAAAG,KAAA,CAAA;AAAA,EAAA,IAAAC,SAAA,GAAAJ,IAAA,CAXbK,IAAI;AAAJA,IAAAA,IAAI,GAAAD,SAAA,KAAG,KAAA,CAAA,GAAA,QAAQ,GAAAA,SAAA;IAAA2B,YAAA,GAAA/B,IAAA,CACfgC,OAAO;AAAPA,IAAAA,OAAO,GAAAD,YAAA,KAAG,KAAA,CAAA,GAAA,MAAM,GAAAA,YAAA;IAChBpB,UAAU,GAAAX,IAAA,CAAVW,UAAU;IAAAsB,eAAA,GAAAjC,IAAA,CACVkC,UAAU;AAAVA,IAAAA,UAAU,GAAAD,eAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,eAAA;IAClBE,KAAK,GAAAnC,IAAA,CAALmC,KAAK;IACLC,YAAY,GAAApC,IAAA,CAAZoC,YAAY;IACZC,MAAM,GAAArC,IAAA,CAANqC,MAAM;IACNC,KAAK,GAAAtC,IAAA,CAALsC,KAAK;IACLC,SAAS,GAAAvC,IAAA,CAATuC,SAAS;IACTb,QAAQ,GAAA1B,IAAA,CAAR0B,QAAQ;AACLpB,IAAAA,KAAK,GAAAC,6BAAA,CAAAP,IAAA,EAAAQ,WAAA,CAAA,CAAA;AAER,EAAA,IAAMgC,WAAW,GAAG9B,IAAI,CACtB,iDAAiD,EACjD+B,YAAY,CAACT,OAAO,CAAC,CAACU,KAAK,EAC3BD,YAAY,CAACT,OAAO,CAAC,CAACW,MAAM,EAC5BF,YAAY,CAACT,OAAO,CAAC,CAACY,QAAQ,EAC9BC,YAAY,CAACC,MAAM,GAAA3C,KAAA,GAAA;IAEjB,YAAY,EAAEE,IAAI,KAAK,OAAO;IAC9B,UAAU,EAAEA,IAAI,KAAK,QAAQ;IAC7B,0BAA0B,EAAEA,IAAI,KAAK,OAAO;IAC5C,aAAa,EAAEkC,SAAS,KAAK,GAAA;AAAG,GAAA,EAAApC,KAAA,CAC/BsC,YAAY,CAACT,OAAO,CAAC,CAACe,QAAQ,CAAA,GAAGb,UAAU,EAAA/B,KAAA,CAC3CsC,YAAY,CAACT,OAAO,CAAC,CAACgB,IAAI,CAAA,GAAG,CAACd,UAAU,EAAA/B,KAAA,CACzC,2GAA2G,CAAA,GACzG+B,UAAU,IAAIF,OAAO,KAAK,SAAS,IAAIA,OAAO,KAAK,MAAM,EAAA7B,KAAA,CAC3D,qBAAqB,IAAEQ,UAAU,EAAAR,KAAA,CACjC,gBAAgB,CAAA,GAAEiC,YAAY,IAAI,IAAI,EAAAjC,KAAA,CACtC,2BAA2B,CAAEE,GAAAA,IAAI,KAAK,OAAO,EAAAF,KAAA,CAC7C,2BAA2B,CAAA,GAAEE,IAAI,KAAK,OAAO,EAAAF,KAAA,EAEhD,CAAA;AAED,EAAA,IAAM8C,SAAS,GAAGV,SAAS,IAATA,IAAAA,GAAAA,SAAS,GAAI,QAAQ,CAAA;AAEvC,EAAA,oBACEW,IAAA,CAACD,SAAS,EAAAE,QAAA,CAAA;AAAC1B,IAAAA,SAAS,EAAEe,WAAY;AAACY,IAAAA,KAAK,EAAE;AAAEjB,MAAAA,KAAK,EAALA,KAAK;AAAEC,MAAAA,YAAY,EAAZA,YAAAA;KAAe;AAACQ,IAAAA,QAAQ,EAAEjC,UAAAA;AAAW,GAAA,EAAKL,KAAK,EAAA;AAAAoB,IAAAA,QAAA,EAC/FW,CAAAA,MAAM,EACNX,QAAQ,EACRY,KAAK,CAAA;AAAA,GAAA,CACG,CAAC,CAAA;AAEhB;;AC5EO,IAAMe,WAAW,GAAG,SAAdA,WAAWA,GAAQ;AAC9B,EAAA,oBACE7B,GAAA,CAAA,KAAA,EAAA;AACE8B,IAAAA,OAAO,EAAC,WAAW;AACnBC,IAAAA,KAAK,EAAC,4BAA4B;AAClC9B,IAAAA,SAAS,EAAC,mEAAmE;AAAAC,IAAAA,QAAA,eAE7EF,GAAA,CAAA,MAAA,EAAA;AACEgC,MAAAA,QAAQ,EAAC,SAAS;AAClBC,MAAAA,QAAQ,EAAC,SAAS;AAClBC,MAAAA,CAAC,EAAC,gXAAA;KAEN,CAAA;AAAA,GAAK,CAAC,CAAA;AAEV,CAAC;;ACdM,IAAMC,SAAS,GAAG,SAAZA,SAASA,GAAQ;AAC5B,EAAA,oBACEnC,GAAA,CAAA,KAAA,EAAA;AACE8B,IAAAA,OAAO,EAAC,WAAW;AACnBC,IAAAA,KAAK,EAAC,4BAA4B;AAClC9B,IAAAA,SAAS,EAAC,mEAAmE;AAAAC,IAAAA,QAAA,eAE7EF,GAAA,CAAA,MAAA,EAAA;AAAMkC,MAAAA,CAAC,EAAC,yPAAA;KACV,CAAA;AAAA,GAAK,CAAC,CAAA;AAEV,CAAC;;ACUe,SAAAE,QAAQA,CAAA5D,IAAA,EAUhB;AAAA,EAAA,IATN6D,IAAI,GAAA7D,IAAA,CAAJ6D,IAAI;IACJC,KAAK,GAAA9D,IAAA,CAAL8D,KAAK;IACLC,EAAE,GAAA/D,IAAA,CAAF+D,EAAE;IAAAC,cAAA,GAAAhE,IAAA,CACFiE,SAAS;AAATA,IAAAA,SAAS,GAAAD,cAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,cAAA;IAAAE,oBAAA,GAAAlE,IAAA,CACjBmE,eAAe;AAAfA,IAAAA,eAAe,GAAAD,oBAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,oBAAA;IAAAE,eAAA,GAAApE,IAAA,CACvBW,UAAU;AAAVA,IAAAA,UAAU,GAAAyD,eAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,eAAA;IAClBC,QAAQ,GAAArE,IAAA,CAARqE,QAAQ;IACRC,KAAK,GAAAtE,IAAA,CAALsE,KAAK;IAAAC,UAAA,GAAAvE,IAAA,CACLwE,KAAK;AAALA,IAAAA,KAAK,GAAAD,UAAA,KAAG,KAAA,CAAA,GAAA,SAAS,GAAAA,UAAA,CAAA;AAEjB,EAAA,IAAAE,SAAA,GAAsCC,QAAQ,CAAC,KAAK,CAAC;AAA9CC,IAAAA,WAAW,GAAAF,SAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,cAAc,GAAAH,SAAA,CAAA,CAAA,CAAA,CAAA;AAElC,EAAA,IAAMI,oBAAoB,GAAGC,WAAW,CAAC,YAAK;IAC5CF,cAAc,CAAC,IAAI,CAAC,CAAA;GACrB,EAAE,EAAE,CAAC,CAAA;AAEN,EAAA,IAAMG,mBAAmB,GAAGD,WAAW,CAAC,YAAK;IAC3CF,cAAc,CAAC,KAAK,CAAC,CAAA;GACtB,EAAE,EAAE,CAAC,CAAA;AAEN,EAAA,IAAMI,YAAY,GAAGF,WAAW,CAC9B,UAACG,CAAgC,EAAA;IAAA,OAAK,CAACtE,UAAU,KAAI0D,QAAQ,oBAARA,QAAQ,CAAGY,CAAC,CAAC,CAAA,CAAA;AAAA,GAAA,EAClE,CAACtE,UAAU,EAAE0D,QAAQ,CAAC,CACvB,CAAA;AAED,EAAA,IAAMa,gBAAgB,GAAGxE,MAAI,CAAC,sCAAsC,EAAE;AACpE,IAAA,oBAAoB,EAAEC,UAAU;AAChC,IAAA,gBAAgB,EAAE,CAACA,UAAAA;AACpB,GAAA,CAAC,CAAA;EAEF,IAAMwE,UAAU,GAAGzE,MAAI,CACrB,2EAA2E,EAC3EmC,YAAY,CAACuC,UAAU,EACvB;AACE,IAAA,mBAAmB,EAAEzE,UAAU;IAC/B,sBAAsB,EAAE,CAACA,UAAU,IAAIgE,WAAW,IAAIH,KAAK,KAAK,SAAS;IACzE,mBAAmB,EAAE,CAAC7D,UAAU,IAAI,CAACgE,WAAW,IAAIH,KAAK,KAAK,SAAS;IACvE,sBAAsB,EAAE,CAAC7D,UAAU,IAAI,CAACgE,WAAW,IAAIH,KAAK,KAAK,MAAM;IACvE,mBAAmB,EAAE,CAAC7D,UAAU,IAAIgE,WAAW,IAAIH,KAAK,KAAK,OAAO;IACpE,qBAAqB,EAAE,CAAC7D,UAAU,IAAI,CAACgE,WAAW,IAAIH,KAAK,KAAK,OAAA;AACjE,GAAA,CACF,CAAA;AAED,EAAA,IAAMa,gBAAgB,GAAG3E,MAAI,CAAC,kEAAkE,EAAE;IAChG,eAAe,EAAEC,UAAU,IAAIsD,SAAS;AACxC,IAAA,mBAAmB,EAAEtD,UAAAA;AACtB,GAAA,CAAC,CAAA;AAEF,EAAA,IAAM2E,YAAY,GAAG5E,MAAI,CAAC,0CAA0C,EAAE;IACpE,eAAe,EAAEC,UAAU,IAAIsD,SAAS;AACxC,IAAA,YAAY,EAAE,EAAEtD,UAAU,IAAIsD,SAAS,CAAC,IAAIU,WAAW;IACvD,kBAAkB,EAAE,EAAEhE,UAAU,IAAIsD,SAAS,CAAC,IAAI,CAACU,WAAW;IAC9D,gBAAgB,EAAE,EAAEhE,UAAU,IAAIsD,SAAS,CAAC,IAAIU,WAAW,IAAIH,KAAK,KAAK,MAAM;AAC/E,IAAA,kBAAkB,EAAE,EAAE7D,UAAU,IAAIsD,SAAS,CAAC,IAAI,CAACU,WAAW,IAAIH,KAAK,KAAK,MAAM;IAClF,eAAe,EAAE,EAAE7D,UAAU,IAAIsD,SAAS,CAAC,IAAIU,WAAW,IAAIH,KAAK,KAAK,OAAO;AAC/E,IAAA,iBAAiB,EAAE,EAAE7D,UAAU,IAAIsD,SAAS,CAAC,IAAI,CAACU,WAAW,IAAIH,KAAK,KAAK,OAAO;IAClF,SAAS,EAAE,CAACP,SAAS;AACrB,IAAA,WAAW,EAAEA,SAAAA;AACd,GAAA,CAAC,CAAA;AAEF,EAAA,IAAMsB,qBAAqB,GAAG7E,MAAI,CAAC,mCAAmC,EAAE;AACtE,IAAA,YAAY,EAAE,CAACC,UAAU,IAAI,CAACsD,SAAS,IAAIU,WAAAA;AAC5C,GAAA,CAAC,CAAA;AAEF,EAAA,IAAMa,YAAY,GAAG9E,MAAI,CAAC,uDAAuD,EAAE;AACjF,IAAA,wDAAwD,EAAEC,UAAU;AACpE,IAAA,4BAA4B,EAAE,CAACA,UAAAA;AAChC,GAAA,CAAC,CAAA;AAEF,EAAA,oBACEuC,IAAA,CAAA,KAAA,EAAA;AAAKzB,IAAAA,SAAS,EAAC,mBAAmB;AAAAC,IAAAA,QAAA,gBAChCwB,IAAA,CAAA,KAAA,EAAA;AAAKzB,MAAAA,SAAS,EAAC,kDAAkD;AAAAC,MAAAA,QAAA,gBAC/DF,GAAA,CAAA,OAAA,EAAA;AACEiE,QAAAA,IAAI,EAAC,UAAU;AACf3B,QAAAA,KAAK,EAAEA,KAAM;AACbD,QAAAA,IAAI,EAAEA,IAAK;AACXE,QAAAA,EAAE,EAAEA,EAAG;AACP2B,QAAAA,OAAO,EAAEzB,SAAU;AACnBrB,QAAAA,QAAQ,EAAEjC,UAAW;AACrB0D,QAAAA,QAAQ,EAAEW,YAAa;AACvBW,QAAAA,WAAW,EAAEd,oBAAqB;AAClCe,QAAAA,YAAY,EAAEb,mBAAoB;AAClCtD,QAAAA,SAAS,EAAEyD,gBAAAA;OAEb,CAAA,eAAA1D,GAAA,CAAA,KAAA,EAAA;AAAKC,QAAAA,SAAS,EAAE0D,UAAW;AAAAzD,QAAAA,QAAA,eACzBwB,IAAA,CAAA,KAAA,EAAA;AAAKzB,UAAAA,SAAS,EAAE4D,gBAAiB;AAAA3D,UAAAA,QAAA,gBAC/BwB,IAAA,CAAA,MAAA,EAAA;AAAMzB,YAAAA,SAAS,EAAE6D,YAAa;AAAA5D,YAAAA,QAAA,GAC3BuC,SAAS,IAAI,CAACE,eAAe,iBAAI3C,GAAA,CAAC6B,WAAW,EAAA,EAAA,CAAG,EAChDc,eAAe,iBAAI3C,GAAA,CAACmC,SAAS,KAAG,CAAA;WAC7B,CACN,eAAAnC,GAAA,CAAA,MAAA,EAAA;AAAMC,YAAAA,SAAS,EAAE8D,qBAAAA;AAAsB,WACzC,CAAA,CAAA;SAAK,CAAA;AACP,OAAK,CACP,CAAA;AAAA,KAAK,CACL,EAACjB,KAAK,IAAI,IAAI,iBACZ9C,GAAA,CAAA,OAAA,EAAA;AAAOqE,MAAAA,OAAO,EAAE9B,EAAG;AAACtC,MAAAA,SAAS,EAAE+D,YAAa;AAAA9D,MAAAA,QAAA,EACzC4C,KAAAA;AAAK,KACD,CACR,CAAA;AAAA,GACE,CAAC,CAAA;AAEV;;ACvHO,IAAMwB,eAAe,GAAG,SAAlBA,eAAeA,CAC1BC,GAAiB,EACjBC,OAA+B,EAC/BC,OAAO,EACL;AAAA,EAAA,IADFA,OAAO,KAAA,KAAA,CAAA,EAAA;AAAPA,IAAAA,OAAO,GAAG,IAAI,CAAA;AAAA,GAAA;AAEdC,EAAAA,SAAS,CAAC,YAAK;AACb,IAAA,IAAMC,QAAQ,GAAG,SAAXA,QAAQA,CAAIC,KAAY,EAAI;AAAA,MAAA,IAAAC,aAAA,CAAA;AAChC,MAAA,IAAMC,OAAO,GAAGP,GAAG,IAAHA,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,GAAG,CAAEQ,OAAO,CAAA;MAC5B,IAAID,OAAO,IAAI,IAAI,IAAIE,OAAO,CAACF,OAAO,CAACG,QAAQ,CAAAJ,CAAAA,aAAA,GAAED,KAAK,IAAA,IAAA,GAAA,KAAA,CAAA,GAALA,KAAK,CAAEM,MAAe,KAAA,IAAA,GAAAL,aAAA,GAAI,IAAI,CAAC,CAAC,EAAE;AACjF,QAAA,OAAA;AACF,OAAA;MACAL,OAAO,CAACI,KAAK,CAAC,CAAA;KACf,CAAA;AAED,IAAA,IAAIH,OAAO,EAAE;AACXU,MAAAA,QAAQ,CAACC,gBAAgB,CAAC,OAAO,EAAET,QAAQ,CAAC,CAAA;AAC9C,KAAA;IAEA,OAAO,YAAA;AAAA,MAAA,OAAMQ,QAAQ,CAACE,mBAAmB,CAAC,OAAO,EAAEV,QAAQ,CAAC,CAAA;AAAA,KAAA,CAAA;GAC7D,EAAE,CAACJ,GAAG,EAAEE,OAAO,EAAED,OAAO,CAAC,CAAC,CAAA;AAC7B;;;ICNac,IAAI,GAAG,SAAPA,IAAIA,CAAA9G,IAAA,EAAgE;AAAA,EAAA,IAAAG,KAAA,CAAA;AAAA,EAAA,IAAAC,SAAA,GAAAJ,IAAA,CAA1DK,IAAI;AAAJA,IAAAA,IAAI,GAAAD,SAAA,KAAG,KAAA,CAAA,GAAA,QAAQ,GAAAA,SAAA;IAAAgE,eAAA,GAAApE,IAAA,CAAEW,UAAU;AAAVA,IAAAA,UAAU,GAAAyD,eAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,eAAA;AAAK9D,IAAAA,KAAK,GAAAC,6BAAA,CAAAP,IAAA,EAAAQ,WAAA,CAAA,CAAA;AAClE,EAAA,IAAMC,OAAO,GAAGC,IAAI,CAClB,uBAAuB,GAAAP,KAAA,GAAA;AAErB,IAAA,iBAAiB,EAAEQ,UAAAA;AAAU,GAAA,EAAAR,KAAA,CAC5B4G,UAAU,CAACC,MAAM,CAAG,GAAA,CAACrG,UAAU,IAAIL,KAAK,CAACkE,KAAK,KAAK,QAAQ,EAAArE,KAAA,CAC3D4G,UAAU,CAACE,UAAU,CAAA,GAAG,CAACtG,UAAU,IAAIL,KAAK,CAACkE,KAAK,KAAK,YAAY,EAAArE,KAAA,CACnE4G,UAAU,CAACG,MAAM,CAAA,GAAG,CAACvG,UAAU,IAAIL,KAAK,CAACkE,KAAK,KAAK,QAAQ,EAAArE,KAAA,CAC3D4G,UAAU,CAACI,UAAU,CAAG,GAAA,CAACxG,UAAU,IAAIL,KAAK,CAACkE,KAAK,KAAK,YAAY,EAAArE,KAAA,CACnE4G,UAAU,CAACK,MAAM,CAAG,GAAA,CAACzG,UAAU,IAAIL,KAAK,CAACkE,KAAK,KAAK,QAAQ,EAAArE,KAAA,CAC3D4G,UAAU,CAACM,UAAU,CAAA,GAAG,CAAC1G,UAAU,IAAIL,KAAK,CAACkE,KAAK,KAAK,YAAY,EAAArE,KAAA,CACnE4G,UAAU,CAACO,WAAW,CAAA,GAAG,CAAC3G,UAAU,IAAIL,KAAK,CAACkE,KAAK,KAAK,aAAa,EAAArE,KAAA,CACtE,SAAS,CAAEE,GAAAA,IAAI,KAAK,SAAS,EAAAF,KAAA,CAC7B,SAAS,CAAA,GAAEE,IAAI,KAAK,OAAO,EAAAF,KAAA,CAC3B,SAAS,IAAEE,IAAI,KAAK,QAAQ,EAAAF,KAAA,CAC5B,SAAS,CAAEE,GAAAA,IAAI,KAAK,OAAO,EAAAF,KAAA,CAC3B,WAAW,CAAEE,GAAAA,IAAI,KAAK,SAAS,EAAAF,KAAA,GAEjCG,KAAK,CAACmB,SAAS,CAChB,CAAA;AAED,EAAA,oBAAOD,GAAA,CAAA,MAAA,EAAA;AAAMC,IAAAA,SAAS,EAAEhB,OAAQ;AAAAiB,IAAAA,QAAA,EAAE6F,YAAY,CAACjH,KAAK,CAACuD,IAAI,CAAA;AAAC,GAAO,CAAC,CAAA;AACpE;;ACxBO,IAAM2D,eAAe,gBAAGC,aAAa,CAAwB;AAClEC,EAAAA,SAAS,EAAE,KAAK;EAChBC,YAAY,EAAE,SAAdA,YAAYA,GAAA;AAAA,IAAA,OAAQ,KAAK,CAAA;AAAA,GAAA;AACzBhH,EAAAA,UAAU,EAAE,KAAK;AACjBiH,EAAAA,gBAAgB,EAAE;AAAEzF,IAAAA,KAAK,EAAE,CAAC;AAAE0F,IAAAA,MAAM,EAAE,CAAA;GAAG;AACzC7F,EAAAA,OAAO,EAAE,SAAA;AACV,CAAA,CAAC;;ACTI,SAAU8F,YAAYA,CAAA9H,IAAA,EAAgE;AAAA,EAAA,IAA7D0B,QAAQ,GAAA1B,IAAA,CAAR0B,QAAQ;IAAA6C,UAAA,GAAAvE,IAAA,CAAEwE,KAAK;AAALA,IAAAA,KAAK,GAAAD,UAAA,KAAG,KAAA,CAAA,GAAA,MAAM,GAAAA,UAAA;IAAEwD,OAAO,GAAA/H,IAAA,CAAP+H,OAAO,CAAA;AAC9D,EAAA,IAAAC,WAAA,GAAyBC,UAAU,CAACT,eAAe,CAAC;IAA5CG,YAAY,GAAAK,WAAA,CAAZL,YAAY,CAAA;AACpB,EAAA,IAAMO,eAAe,GAAG,SAAlBA,eAAeA,CAAI9B,KAAoC,EAAI;IAC/DuB,YAAY,CAAC,KAAK,CAAC,CAAA;AACnBI,IAAAA,OAAO,IAAPA,IAAAA,IAAAA,OAAO,CAAG3B,KAAK,CAAC,CAAA;GACjB,CAAA;EACD,IAAM+B,WAAW,GAAGzH,MAAI,CACtB,iGAAiG,EACjGmC,YAAY,CAACuF,KAAK,EAClB;IACE,kDAAkD,EAAE5D,KAAK,KAAK,MAAM;IACpE,uCAAuC,EAAEA,KAAK,KAAK,KAAA;AACpD,GAAA,CACF,CAAA;AAED,EAAA,oBACEhD,GAAA,CAAA,IAAA,EAAA;AAAIC,IAAAA,SAAS,EAAC,0BAA0B;AAAAC,IAAAA,QAAA,eACtCF,GAAA,CAAA,QAAA,EAAA;AAAQC,MAAAA,SAAS,EAAE0G,WAAY;AAAC1C,MAAAA,IAAI,EAAC,QAAQ;AAACsC,MAAAA,OAAO,EAAEG,eAAgB;AAAAxG,MAAAA,QAAA,EACpEA,QAAAA;KACK,CAAA;AACV,GAAI,CAAC,CAAA;AAET;;SCpBgB2G,YAAYA,CAAArI,IAAA,EAMD;AAAA,EAAA,IALzB0B,QAAQ,GAAA1B,IAAA,CAAR0B,QAAQ;IACR4G,SAAS,GAAAtI,IAAA,CAATsI,SAAS;IAAAC,gBAAA,GAAAvI,IAAA,CACTwI,WAAW;AAAXA,IAAAA,WAAW,GAAAD,gBAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,gBAAA;IAAAE,qBAAA,GAAAzI,IAAA,CACnB0I,gBAAgB;AAAhBA,IAAAA,gBAAgB,GAAAD,qBAAA,KAAG,KAAA,CAAA,GAAA,QAAQ,GAAAA,qBAAA;IAAAE,oBAAA,GAAA3I,IAAA,CAC3B4I,eAAe;AAAfA,IAAAA,eAAe,GAAAD,oBAAA,KAAG,KAAA,CAAA,GAAA,MAAM,GAAAA,oBAAA,CAAA;AAExB,EAAA,IAAAX,WAAA,GAA8EC,UAAU,CAACT,eAAe,CAAC;IAAjGE,SAAS,GAAAM,WAAA,CAATN,SAAS;IAAE/G,UAAU,GAAAqH,WAAA,CAAVrH,UAAU;IAAEiH,gBAAgB,GAAAI,WAAA,CAAhBJ,gBAAgB;IAAE5F,OAAO,GAAAgG,WAAA,CAAPhG,OAAO;IAAE6G,eAAe,GAAAb,WAAA,CAAfa,eAAe,CAAA;AACzE,EAAA,IAAMC,cAAc,GAAGpI,MAAI,CAAC,kFAAkF,EAAE;IAC9GqI,QAAQ,EAAE,CAACF,eAAe;IAC1B,uCAAuC,EAAE7G,OAAO,KAAK,SAAS;IAC9D,MAAM,EAAE,CAACwG,WAAW;IACpB,QAAQ,EAAEI,eAAe,KAAK,MAAM;IACpC,SAAS,EAAEA,eAAe,KAAK,OAAO;IACtC,WAAW,EAAEA,eAAe,KAAK,QAAA;AAClC,GAAA,CAAC,CAAA;AAEF,EAAA,OACElB,SAAS,IACT,CAAC/G,UAAU,iBACTa,GAAA,CAAA,IAAA,EAAA;AACEC,IAAAA,SAAS,EAAEqH,cAAe;AAC1B1F,IAAAA,KAAK,EAAE;AACL4F,MAAAA,GAAG,EAAE,CAACH,eAAe,IAAIH,gBAAgB,KAAK,QAAQ,GAAMd,gBAAgB,CAACC,MAAM,GAAG,CAAC,UAAO,OAAO;AACrGoB,MAAAA,MAAM,EAAE,CAACJ,eAAe,IAAIH,gBAAgB,KAAK,KAAK,GAAMd,gBAAgB,CAACC,MAAM,GAAG,CAAC,UAAO,OAAO;AACrGS,MAAAA,SAAS,EAATA,SAAAA;KACA;AAAA5G,IAAAA,QAAA,EAEDA,QAAAA;AAAQ,GACP,CACL,CAAA;AAEL;;ACjBgB,SAAAwH,QAAQA,CAAAlJ,IAAA,EAWG;AAAA,EAAA,IAVzB0B,QAAQ,GAAA1B,IAAA,CAAR0B,QAAQ;IACRgF,MAAM,GAAA1G,IAAA,CAAN0G,MAAM;IACNpC,KAAK,GAAAtE,IAAA,CAALsE,KAAK;IACL6E,IAAI,GAAAnJ,IAAA,CAAJmJ,IAAI;IAAA/I,SAAA,GAAAJ,IAAA,CACJK,IAAI;AAAJA,IAAAA,IAAI,GAAAD,SAAA,KAAG,KAAA,CAAA,GAAA,QAAQ,GAAAA,SAAA;IAAA2B,YAAA,GAAA/B,IAAA,CACfgC,OAAO;AAAPA,IAAAA,OAAO,GAAAD,YAAA,KAAG,KAAA,CAAA,GAAA,SAAS,GAAAA,YAAA;IACnBqH,KAAK,GAAApJ,IAAA,CAALoJ,KAAK;IAAAhF,eAAA,GAAApE,IAAA,CACLW,UAAU;AAAVA,IAAAA,UAAU,GAAAyD,eAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,eAAA;IAAAiF,kBAAA,GAAArJ,IAAA,CAClBsJ,aAAa;AAAbA,IAAAA,aAAa,GAAAD,kBAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,kBAAA;IACrBR,eAAe,GAAA7I,IAAA,CAAf6I,eAAe,CAAA;AAEf,EAAA,IAAApE,SAAA,GAAkCC,QAAQ,CAAC,KAAK,CAAC;AAA1CgD,IAAAA,SAAS,GAAAjD,SAAA,CAAA,CAAA,CAAA;AAAEkD,IAAAA,YAAY,GAAAlD,SAAA,CAAA,CAAA,CAAA,CAAA;EAC9B,IAAA8E,UAAA,GAAgD7E,QAAQ,CAAC;AACvDvC,MAAAA,KAAK,EAAE,CAAC;AACR0F,MAAAA,MAAM,EAAE,CAAA;AACT,KAAA,CAAC;AAHKD,IAAAA,gBAAgB,GAAA2B,UAAA,CAAA,CAAA,CAAA;AAAEC,IAAAA,mBAAmB,GAAAD,UAAA,CAAA,CAAA,CAAA,CAAA;AAK5C,EAAA,IAAME,SAAS,GAAGC,MAAM,CAAiB,IAAI,CAAC,CAAA;EAC9C5D,eAAe,CAAC2D,SAAS,EAAE,YAAA;IAAA,OAAM9B,YAAY,CAAC,KAAK,CAAC,CAAA;GAAC,CAAA,CAAA;AAErD,EAAA,IAAMgC,YAAY,GAAG7E,WAAW,CAAC,YAAK;AACpC,IAAA,IAAI2E,SAAS,CAAClD,OAAO,KAAK,IAAI,EAAE;AAC9B,MAAA,OAAA;AACF,KAAA;AAEA,IAAA,IAAImB,SAAS,EAAE;MACbC,YAAY,CAAC,KAAK,CAAC,CAAA;AACrB,KAAC,MAAM;MACL,IAAMiC,UAAU,GAAGH,SAAS,CAAClD,OAAO,CAACsD,qBAAqB,EAAE,CAAA;AAC5D,MAAA,IAAMC,oBAAoB,GAAG;AAC3B3H,QAAAA,KAAK,EAAEyH,UAAU,CAACG,KAAK,GAAGH,UAAU,CAACI,IAAI;AACzCnC,QAAAA,MAAM,EAAE+B,UAAU,CAACX,MAAM,GAAGW,UAAU,CAACZ,GAAAA;OACxC,CAAA;MAEDQ,mBAAmB,CAACM,oBAAoB,CAAC,CAAA;MACzCnC,YAAY,CAAC,IAAI,CAAC,CAAA;AACpB,KAAA;AACF,GAAC,EAAE,CAACD,SAAS,CAAC,CAAC,CAAA;AAEf,EAAA,IAAMoB,cAAc,GAAGpI,MAAI,CAAC,mDAAmD,EAAE;AAC/E,IAAA,oBAAoB,EAAEC,UAAAA;AACvB,GAAA,CAAC,CAAA;EAEF,IAAMsJ,qBAAqB,GAAGvJ,MAAI,CAChC,oGAAoG,EACpGmC,YAAY,CAACC,MAAM,EACnB;AACE,IAAA,qBAAqB,EAAEnC,UAAU;IACjC,0BAA0B,EAAEqB,OAAO,KAAK,SAAA;AACzC,GAAA,CACF,CAAA;AAED,EAAA,IAAMkI,aAAa,GAAGxJ,MAAI,CACxB,6CAA6C,EAC7C+B,YAAY,CAACT,OAAO,CAAC,CAACgB,IAAI,EAC1BP,YAAY,CAACT,OAAO,CAAC,CAACU,KAAK,EAC3BD,YAAY,CAACT,OAAO,CAAC,CAACW,MAAM,EAC5BF,YAAY,CAACT,OAAO,CAAC,CAACY,QAAQ,EAC9BC,YAAY,CAACC,MAAM,EACnB;AACE,IAAA,qBAAqB,EAAEnC,UAAU;AACjC,IAAA,UAAU,EAAEN,IAAI,KAAK,SAAS,IAAIA,IAAI,KAAK,OAAO;IAClD,UAAU,EAAEA,IAAI,KAAK,QAAQ;IAC7B,WAAW,EAAEA,IAAI,KAAK,OAAA;AACvB,GAAA,CACF,CAAA;AAED,EAAA,IAAMmF,YAAY,GAAG9E,MAAI,CAAC,mBAAmB,EAAE;AAC7C,IAAA,MAAM,EAAE,CAAC4I,aAAa,IAAIjJ,IAAI,KAAK,SAAS;AAC5C,IAAA,MAAM,EAAE,CAACiJ,aAAa,IAAIjJ,IAAI,KAAK,SAAS;IAC5C,2BAA2B,EAAEA,IAAI,KAAK,SAAS;AAC/C,IAAA,2BAA2B,EAAEA,IAAI,KAAK,OAAO,IAAIA,IAAI,KAAK,QAAQ;IAClE,2BAA2B,EAAEA,IAAI,KAAK,OAAA;AACvC,GAAA,CAAC,CAAA;AAEF,EAAA,oBACEmB,GAAA,CAACgG,eAAe,CAAC2C,QAAQ,EAAA;AACvBrG,IAAAA,KAAK,EAAE;AAAE4D,MAAAA,SAAS,EAATA,SAAS;AAAEC,MAAAA,YAAY,EAAZA,YAAY;AAAEhH,MAAAA,UAAU,EAAVA,UAAU;AAAEiH,MAAAA,gBAAgB,EAAhBA,gBAAgB;AAAE5F,MAAAA,OAAO,EAAPA,OAAO;AAAE6G,MAAAA,eAAe,EAAfA,eAAAA;KAAkB;AAAAnH,IAAAA,QAAA,eAE3FwB,IAAA,CAAA,KAAA,EAAA;AAAK6C,MAAAA,GAAG,EAAE0D,SAAU;AAAChI,MAAAA,SAAS,EAAEqH,cAAe;MAAApH,QAAA,EAAA,CAC5CgF,MAAM,gBACLxD,IAAA,CAAA,QAAA,EAAA;AACEuC,QAAAA,IAAI,EAAC,QAAQ;AACb2D,QAAAA,KAAK,EAAEA,KAAM;AACb3H,QAAAA,SAAS,EAAEwI,qBAAsB;AACjClC,QAAAA,OAAO,EAAE4B,YAAa;AACtB/G,QAAAA,QAAQ,EAAEjC,UAAW;AAAAe,QAAAA,QAAA,GAEpBgF,MAAM,EACN,CAAC4C,aAAa,iBACb9H,GAAA,CAAA,KAAA,EAAA;AAAKC,UAAAA,SAAS,EAAC,oCAAoC;UAAAC,QAAA,eACjDF,GAAA,CAACsF,IAAI,EAAA;AACHjD,YAAAA,IAAI,EAAE6D,SAAS,GAAG,gBAAgB,GAAG,kBAAmB;AACxDrH,YAAAA,IAAI,EAAEA,IAAI,KAAK,OAAO,GAAG,QAAQ,GAAG,OAAA;WAExC,CAAA;AAAA,SAAK,CACN,CAAA;OACK,CAAC,gBAET6C,IAAA,CAAA,QAAA,EAAA;AAAQuC,QAAAA,IAAI,EAAC,QAAQ;AAAC2D,QAAAA,KAAK,EAAEA,KAAM;AAAC3H,QAAAA,SAAS,EAAEyI,aAAc;AAACnC,QAAAA,OAAO,EAAE4B,YAAa;AAAC/G,QAAAA,QAAQ,EAAEjC,UAAW;QAAAe,QAAA,EAAA,CACvGyH,IAAI,iBACH3H,GAAA,CAAA,MAAA,EAAA;AAAMC,UAAAA,SAAS,EAAC,WAAW;UAAAC,QAAA,eACzBF,GAAA,CAACsF,IAAI,EAAA;AAACjD,YAAAA,IAAI,EAAEsF,IAAK;AAAC9I,YAAAA,IAAI,EAAEA,IAAI,KAAK,OAAO,GAAG,QAAQ,GAAG,OAAA;WACxD,CAAA;SAAM,CACP,eACDmB,GAAA,CAAA,MAAA,EAAA;AAAMC,UAAAA,SAAS,EAAE+D,YAAa;AAAA9D,UAAAA,QAAA,EAAE4C,KAAAA;AAAK,SAAO,CAC5C,EAAC,CAACgF,aAAa,iBACb9H,GAAA,CAAA,KAAA,EAAA;AAAKC,UAAAA,SAAS,EAAC,2BAA2B;UAAAC,QAAA,eACxCF,GAAA,CAACsF,IAAI,EAAA;AAACjD,YAAAA,IAAI,EAAE6D,SAAS,GAAG,gBAAgB,GAAG,kBAAmB;AAACrH,YAAAA,IAAI,EAAC,OAAA;WACtE,CAAA;AAAA,SAAK,CACN,CAAA;OACK,CACT,EACA,CAACwI,eAAe,GACbnH,QAAQ,GACRmH,eAAe,IAAI,IAAI,IAAIA,eAAe,CAACtC,OAAO,iBAAI6D,YAAY,CAAC1I,QAAQ,EAAEmH,eAAe,CAACtC,OAAO,CAAC,CAAA;KACtG,CAAA;AACP,GAA0B,CAAC,CAAA;AAE/B,CAAA;AAEA2C,QAAQ,CAACmB,IAAI,GAAGhC,YAAY,CAAA;AAC5Ba,QAAQ,CAACrH,IAAI,GAAGiG,YAAY;;AC5IZ,SAAAwC,cAAcA,CAAAtK,IAAA,EAAsE;AAAA,EAAA,IAAnE8D,KAAK,GAAA9D,IAAA,CAAL8D,KAAK;IAAAyG,eAAA,GAAAvK,IAAA,CAAEwK,UAAU;AAAVA,IAAAA,UAAU,GAAAD,eAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,eAAA;IAAEE,cAAc,GAAAzK,IAAA,CAAdyK,cAAc;IAAArK,SAAA,GAAAJ,IAAA,CAAEK,IAAI;AAAJA,IAAAA,IAAI,GAAAD,SAAA,KAAG,KAAA,CAAA,GAAA,QAAQ,GAAAA,SAAA,CAAA;EACzF,IAAMsK,SAAS,GAAG,CAAC,CAAA;AACnB,EAAA,IAAAjG,SAAA,GAA0CC,QAAQ,CAACZ,KAAK,CAAC;AAAlD6G,IAAAA,aAAa,GAAAlG,SAAA,CAAA,CAAA,CAAA;AAAEmG,IAAAA,gBAAgB,GAAAnG,SAAA,CAAA,CAAA,CAAA,CAAA;AAEtC,EAAA,IAAMoG,kBAAkB,GAAG/F,WAAW,CACpC,UAACgG,SAAiB,EAAI;AACpB,IAAA,IAAIN,UAAU,EAAE;MACdI,gBAAgB,CAACE,SAAS,CAAC,CAAA;AAC3B,MAAA,IAAIL,cAAc,EAAE;QAClBA,cAAc,CAACK,SAAS,CAAC,CAAA;AAC3B,OAAA;AACF,KAAA;AACF,GAAC,EACD,CAACN,UAAU,EAAEC,cAAc,CAAC,CAC7B,CAAA;AAED,EAAA,IAAMM,WAAW,GAAGrK,MAAI,CAACmC,YAAY,CAACuF,KAAK,EAAE;IAAE,SAAS,EAAE/H,IAAI,KAAK,OAAO;IAAE,SAAS,EAAEA,IAAI,KAAK,QAAA;AAAU,GAAA,CAAC,CAAA;AAE3G;AACA,EAAA,IAAM2K,UAAU,GAAG,SAAbA,UAAUA,CAAIC,MAAc,EAAI;IACpC,IAAMzG,KAAK,GAAGyG,MAAM,IAAIN,aAAa,GAAG,sBAAsB,GAAG,aAAa,CAAA;AAE9E,IAAA,oBACEnJ,GAAA,CAAA,QAAA,EAAA;AACEiE,MAAAA,IAAI,EAAC,QAAQ;MAEbsC,OAAO,EAAE,SAATA,OAAOA,GAAA;QAAA,OAAQ8C,kBAAkB,CAACI,MAAM,CAAC,CAAA;OAAC;AAC1CxJ,MAAAA,SAAS,EAAEf,MAAI,CAAC8D,KAAK,EAAEuG,WAAW,CAAE;MACpCnI,QAAQ,EAAE,CAAC4H,UAAW;MAAA9I,QAAA,EAErB6F,YAAY,CAAC,aAAa,CAAA;AAAC,KAAA,EALvB0D,MAMC,CAAC,CAAA;GAEZ,CAAA;AAED;AACA,EAAA,IAAMC,WAAW,GAAGC,KAAK,CAACC,IAAI,CAAC;AAAEtK,IAAAA,MAAM,EAAE4J,SAAAA;AAAS,GAAE,EAAE,UAACW,CAAC,EAAEC,KAAK,EAAA;AAAA,IAAA,OAAKN,UAAU,CAACM,KAAK,GAAG,CAAC,CAAC,CAAA;GAAC,CAAA,CAAA;AAE1F,EAAA,oBAAO9J,GAAA,CAAA,MAAA,EAAA;AAAMC,IAAAA,SAAS,EAAC,eAAe;AAAAC,IAAAA,QAAA,EAAEwJ,WAAAA;AAAW,GAAO,CAAC,CAAA;AAC7D;;ACtCM,SAAUK,OAAOA,CAACjL,KAAY,EAAA;AAClC,EAAA,IAAMkL,OAAO,GAAA,GAAA,GAAOlL,KAAK,CAACmL,KAAgB,CAAA;EAE1C,IAAMhL,OAAO,GAAGC,IAAI,CAAkCgL,+BAAAA,EAAAA,UAAU,CAACC,OAAO,CAACH,OAAO,CAAC,EAAE;AACjF,IAAA,OAAO,EAAElL,KAAK,CAACmL,KAAK,KAAK,CAAC;AAC1B,IAAA,OAAO,EAAEnL,KAAK,CAACmL,KAAK,GAAG,CAAA;AACxB,GAAA,CAAC,CAAA;EAEF,oBACEvI,IAAA,CAACsI,OAAO,EAAA;AAAC/J,IAAAA,SAAS,EAAEhB,OAAQ;IAAAiB,QAAA,EAAA,CACzBpB,KAAK,CAAC+B,MAAM,EACZ/B,KAAK,CAACoB,QAAQ,EACdpB,KAAK,CAACgC,KAAK,CAAA;AAAA,GACL,CAAC,CAAA;AAEd;;;ACAM,SAAUsJ,UAAUA,CAAA5L,IAAA,EAMlB;AAAA,EAAA,IAAAI,SAAA,GAAAJ,IAAA,CALNK,IAAI;AAAJA,IAAAA,IAAI,GAAAD,SAAA,KAAG,KAAA,CAAA,GAAA,QAAQ,GAAAA,SAAA;IAAA2B,YAAA,GAAA/B,IAAA,CACfgC,OAAO;AAAPA,IAAAA,OAAO,GAAAD,YAAA,KAAG,KAAA,CAAA,GAAA,SAAS,GAAAA,YAAA;IAAAwG,gBAAA,GAAAvI,IAAA,CACnBwI,WAAW;AAAXA,IAAAA,WAAW,GAAAD,gBAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,gBAAA;IAAAnE,eAAA,GAAApE,IAAA,CACnBW,UAAU;AAAVA,IAAAA,UAAU,GAAAyD,eAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,eAAA;AACf9D,IAAAA,KAAK,GAAAC,6BAAA,CAAAP,IAAA,EAAAQ,WAAA,CAAA,CAAA;AAER,EAAA,IAAMgC,WAAW,GAAG9B,IAAI,CACtB,0EAA0E,EAC1E+B,YAAY,CAACT,OAAO,CAAC,CAACgB,IAAI,EAC1BP,YAAY,CAACT,OAAO,CAAC,CAACU,KAAK,EAC3BD,YAAY,CAACT,OAAO,CAAC,CAACW,MAAM,EAC5BF,YAAY,CAACT,OAAO,CAAC,CAACY,QAAQ,EAC9BC,YAAY,CAACC,MAAM,EACnB;AACE,IAAA,SAAS,EAAEzC,IAAI,KAAK,OAAO,IAAImI,WAAW;AAC1C,IAAA,SAAS,EAAGnI,IAAI,KAAK,OAAO,IAAI,CAACmI,WAAW,IAAM,CAACnI,IAAI,KAAK,QAAQ,IAAIA,IAAI,KAAK,OAAO,KAAKmI,WAAY;AACzG,IAAA,SAAS,EAAEnI,IAAI,KAAK,QAAQ,IAAI,CAACmI,WAAW;AAC5C,IAAA,WAAW,EAAEnI,IAAI,KAAK,OAAO,IAAI,CAACmI,WAAW;IAC7C,aAAa,EAAElI,KAAK,CAACuL,QAAQ;AAC7B,IAAA,qBAAqB,EAAElL,UAAAA;AACxB,GAAA,CACF,CAAA;EAED,IAAMmL,QAAQ,GAAGzL,IAAI,KAAK,OAAO,GAAG,OAAO,GAAG,QAAQ,CAAA;AAEtD,EAAA,IAAIC,KAAK,CAACuL,QAAQ,KAAK,IAAI,EAAE;AAC3B,IAAA,oBACErK,GAAA,CAAA,GAAA,EAAA;AAAGC,MAAAA,SAAS,EAAEe,WAAY;MAACuJ,IAAI,EAAEzL,KAAK,CAACyL,IAAK;MAACrF,MAAM,EAAEpG,KAAK,CAACoG,MAAO;MAAAhF,QAAA,eAChEF,GAAA,CAACsF,IAAI,EAAA;QAACjD,IAAI,EAAEvD,KAAK,CAAC6I,IAAK;AAAC9I,QAAAA,IAAI,EAAEyL,QAAAA;OAChC,CAAA;AAAA,KAAG,CAAC,CAAA;AAER,GAAC,MAAM;AACL,IAAA,oBACEtK,GAAA,CAAA,QAAA,EAAA;AAAQiE,MAAAA,IAAI,EAAC,QAAQ;AAAChE,MAAAA,SAAS,EAAEe,WAAY;AAACI,MAAAA,QAAQ,EAAEjC,UAAW;MAACoH,OAAO,EAAEzH,KAAK,CAACyH,OAAQ;MAAArG,QAAA,eACzFF,GAAA,CAACsF,IAAI,EAAA;QAACjD,IAAI,EAAEvD,KAAK,CAAC6I,IAAK;AAAC9I,QAAAA,IAAI,EAAEyL,QAAAA;OAChC,CAAA;AAAA,KAAQ,CAAC,CAAA;AAEb,GAAA;AACF;;AC3DgB,SAAAE,OAAOA,CAAAhM,IAAA,EAAgE;AAAA,EAAA,IAAAI,SAAA,GAAAJ,IAAA,CAA7DK,IAAI;AAAJA,IAAAA,IAAI,GAAAD,SAAA,KAAG,KAAA,CAAA,GAAA,QAAQ,GAAAA,SAAA;IAAA6L,aAAA,GAAAjM,IAAA,CAAEkM,QAAQ;AAARA,IAAAA,QAAQ,GAAAD,aAAA,KAAG,KAAA,CAAA,GAAA,OAAO,GAAAA,aAAA;IAAAE,WAAA,GAAAnM,IAAA,CAAE6H,MAAM;AAANA,IAAAA,MAAM,GAAAsE,WAAA,KAAG,KAAA,CAAA,GAAA,MAAM,GAAAA,WAAA,CAAA;AAC5E,EAAA,IAAMrD,cAAc,GAAGpI,MAAI,CAACwL,QAAQ,EAAE,2DAA2D,CAAC,CAAA;EAElG,IAAME,UAAU,GAAG1L,MAAI,CAAC;IACtB,SAAS,EAAEL,IAAI,KAAK,OAAO;IAC3B,SAAS,EAAEA,IAAI,KAAK,QAAQ;IAC5B,WAAW,EAAEA,IAAI,KAAK,OAAA;AACvB,GAAA,CAAC,CAAA;EAEF,oBACEmB,GAAA,CAAA6K,QAAA,EAAA;AAAA3K,IAAAA,QAAA,eACEwB,IAAA,CAAA,KAAA,EAAA;AAAKzB,MAAAA,SAAS,EAAEqH,cAAe;AAAC1F,MAAAA,KAAK,EAAE;AAAEyE,QAAAA,MAAM,EAANA,MAAAA;OAAS;AAAAnG,MAAAA,QAAA,EAC/CrB,CAAAA,IAAI,KAAK,OAAO,iBACfmB,GAAA,CAAA,KAAA,EAAA;AAAKC,QAAAA,SAAS,EAAE2K,UAAW;AAAC9I,QAAAA,OAAO,EAAC,WAAW;AAACgJ,QAAAA,IAAI,EAAC,MAAM;AAAC/I,QAAAA,KAAK,EAAC,4BAA4B;AAAA7B,QAAAA,QAAA,eAC5FF,GAAA,CAAA,QAAA,EAAA;AACEC,UAAAA,SAAS,EAAC,gEAAgE;AAC1E8K,UAAAA,EAAE,EAAC,GAAG;AACNC,UAAAA,EAAE,EAAC,GAAG;AACNC,UAAAA,CAAC,EAAC,GAAG;AACLC,UAAAA,MAAM,EAAC,cAAc;AACrBC,UAAAA,WAAW,EAAC,KAAK;AACjBL,UAAAA,IAAI,EAAC,MAAA;SAET,CAAA;AAAA,OAAK,CACN,EACAjM,IAAI,KAAK,QAAQ,iBAChBmB,GAAA,CAAA,KAAA,EAAA;AAAKC,QAAAA,SAAS,EAAE2K,UAAW;AAAC9I,QAAAA,OAAO,EAAC,WAAW;AAACgJ,QAAAA,IAAI,EAAC,MAAM;AAAC/I,QAAAA,KAAK,EAAC,4BAA4B;AAAA7B,QAAAA,QAAA,eAC5FF,GAAA,CAAA,QAAA,EAAA;AACEC,UAAAA,SAAS,EAAC,iEAAiE;AAC3E8K,UAAAA,EAAE,EAAC,IAAI;AACPC,UAAAA,EAAE,EAAC,IAAI;AACPC,UAAAA,CAAC,EAAC,IAAI;AACNC,UAAAA,MAAM,EAAC,cAAc;AACrBC,UAAAA,WAAW,EAAC,GAAG;AACfL,UAAAA,IAAI,EAAC,MAAA;SAET,CAAA;AAAA,OAAK,CACN,EACAjM,IAAI,KAAK,OAAO,iBACfmB,GAAA,CAAA,KAAA,EAAA;AAAKC,QAAAA,SAAS,EAAE2K,UAAW;AAAC9I,QAAAA,OAAO,EAAC,WAAW;AAACgJ,QAAAA,IAAI,EAAC,MAAM;AAAC/I,QAAAA,KAAK,EAAC,4BAA4B;AAAA7B,QAAAA,QAAA,eAC5FF,GAAA,CAAA,QAAA,EAAA;AACEC,UAAAA,SAAS,EAAC,gEAAgE;AAC1E8K,UAAAA,EAAE,EAAC,IAAI;AACPC,UAAAA,EAAE,EAAC,IAAI;AACPC,UAAAA,CAAC,EAAC,IAAI;AACNC,UAAAA,MAAM,EAAC,cAAc;AACrBC,UAAAA,WAAW,EAAC,GAAG;AACfL,UAAAA,IAAI,EAAC,MAAA;SAET,CAAA;AAAA,OAAK,CACN,CAAA;KACE,CAAA;AACP,GAAA,CAAG,CAAA;AAEP;;AC5DgB,SAAAM,SAASA,CAAA5M,IAAA,EAAgC;AAAA,EAAA,IAA7B0B,QAAQ,GAAA1B,IAAA,CAAR0B,QAAQ,CAAA;AAClC,EAAA,oBAAOF,GAAA,CAAA,KAAA,EAAA;AAAKC,IAAAA,SAAS,EAAC,iBAAiB;AAAAC,IAAAA,QAAA,EAAEA,QAAAA;AAAQ,GAAM,CAAC,CAAA;AAC1D;;ACEO,IAAMmL,YAAY,gBAAGpF,aAAa,CAAkB;EACzDqF,OAAO,EAAE,SAATA,OAAOA,GAAA;AAAA,IAAA,OAAQ,IAAI,CAAA;AAAA,GAAA;AACpB,CAAA,CAAC;;ACAI,SAAUC,WAAWA,CAAA/M,IAAA,EAA2D;AAAA,EAAA,IAAxD0B,QAAQ,GAAA1B,IAAA,CAAR0B,QAAQ;IAAAsL,eAAA,GAAAhN,IAAA,CAAEiN,UAAU;AAAVA,IAAAA,UAAU,GAAAD,eAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,eAAA,CAAA;AACxD,EAAA,IAAMlE,cAAc,GAAGpI,MAAI,CAAC,0DAA0D,EAAE;AACtF,IAAA,kCAAkC,EAAE,CAACuM,UAAAA;AACtC,GAAA,CAAC,CAAA;AAEF,EAAA,oBAAOzL,GAAA,CAAA,KAAA,EAAA;AAAKC,IAAAA,SAAS,EAAEqH,cAAe;AAAApH,IAAAA,QAAA,EAAEA,QAAAA;AAAQ,GAAM,CAAC,CAAA;AACzD;;ACHM,SAAUwL,WAAWA,CAAAlN,IAAA,EAA2D;AAAA,EAAA,IAAxD0B,QAAQ,GAAA1B,IAAA,CAAR0B,QAAQ;IAAAsL,eAAA,GAAAhN,IAAA,CAAEiN,UAAU;AAAVA,IAAAA,UAAU,GAAAD,eAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,eAAA,CAAA;AACxD,EAAA,IAAAhF,WAAA,GAAoBC,UAAU,CAAC4E,YAAY,CAAC;IAApCC,OAAO,GAAA9E,WAAA,CAAP8E,OAAO,CAAA;AAEf,EAAA,IAAMK,aAAa,GAAGzM,MAAI,CACxB,+FAA+F,EAC/F;IACE,4BAA4B,EAAE,CAACuM,UAAU;IACzC,MAAM,EAAE,CAACH,OAAO;AAChB,IAAA,MAAM,EAAEA,OAAAA;AACT,GAAA,CACF,CAAA;AAED,EAAA,oBACE5J,IAAA,CAAA,KAAA,EAAA;AAAKzB,IAAAA,SAAS,EAAE0L,aAAc;AAAAzL,IAAAA,QAAA,gBAC5BF,GAAA,CAAA,KAAA,EAAA;AAAAE,MAAAA,QAAA,EAAMA,QAAAA;AAAQ,KAAM,CACpB,EAACoL,OAAO,iBAAItL,GAAA,CAACoK,UAAU,EAAA;AAACzC,MAAAA,IAAI,EAAC,OAAO;AAAC9I,MAAAA,IAAI,EAAC,OAAO;AAAC2B,MAAAA,OAAO,EAAC,MAAM;AAAC+F,MAAAA,OAAO,EAAE+E,OAAAA;AAAQ,KAAA,CAAG,CAAA;AAAA,GAClF,CAAC,CAAA;AAEV;;ACpBA,IAAMM,WAAW,GAAG,GAAG,CAAA;AACvB,IAAMC,YAAY,GAAG,GAAG,CAAA;SAURC,KAAKA,CAAAtN,IAAA,EAA8F;AAAA,EAAA,IAA3F0B,QAAQ,GAAA1B,IAAA,CAAR0B,QAAQ;IAAA6L,UAAA,GAAAvN,IAAA,CAAEmC,KAAK;AAALA,IAAAA,KAAK,GAAAoL,UAAA,KAAG,KAAA,CAAA,GAAA,GAAG,GAAAA,UAAA;IAAE1F,MAAM,GAAA7H,IAAA,CAAN6H,MAAM;IAAE2F,MAAM,GAAAxN,IAAA,CAANwN,MAAM;IAAEV,OAAO,GAAA9M,IAAA,CAAP8M,OAAO;IAAEjE,eAAe,GAAA7I,IAAA,CAAf6I,eAAe,CAAA;AACrF,EAAA,IAAApE,SAAA,GAAkCC,QAAQ,CAAC,KAAK,CAAC;AAA1C+I,IAAAA,SAAS,GAAAhJ,SAAA,CAAA,CAAA,CAAA;AAAEiJ,IAAAA,YAAY,GAAAjJ,SAAA,CAAA,CAAA,CAAA,CAAA;AAE9B,EAAA,IAAMkJ,WAAW,GAAG,OAAOxL,KAAK,KAAK,QAAQ,GAAGyL,IAAI,CAACC,GAAG,CAAC1L,KAAK,EAAEiL,WAAW,CAAC,GAAGjL,KAAK,CAAA;AACpF,EAAA,IAAM2L,YAAY,GAAG,OAAOjG,MAAM,KAAK,QAAQ,GAAG+F,IAAI,CAACC,GAAG,CAAChG,MAAM,EAAEwF,YAAY,CAAC,GAAGxF,MAAM,CAAA;AAEzF3B,EAAAA,SAAS,CAAC,YAAK;IACbwH,YAAY,CAAC,IAAI,CAAC,CAAA;GACnB,EAAE,EAAE,CAAC,CAAA;EAEN,OAAOD,SAAS,IAAID,MAAM,gBACtBpD,YAAY,eACV5I,GAAA,CAACqL,YAAY,CAAC1C,QAAQ,EAAA;AAACrG,IAAAA,KAAK,EAAE;AAAEgJ,MAAAA,OAAO,EAAPA,OAAAA;KAAU;AAAApL,IAAAA,QAAA,eACxCF,GAAA,CAAA,KAAA,EAAA;AAAKC,MAAAA,SAAS,EAAC,wGAAwG;AAAAC,MAAAA,QAAA,eACrHF,GAAA,CAAA,KAAA,EAAA;AACEC,QAAAA,SAAS,EAAC,gIAAgI;AAC1I2B,QAAAA,KAAK,EAAE;AAAEjB,UAAAA,KAAK,EAAEwL,WAAW;AAAE9F,UAAAA,MAAM,EAAEiG,YAAAA;SAAe;AAAApM,QAAAA,QAAA,EAEnDA,QAAAA;OACE,CAAA;KACF,CAAA;GACgB,CAAC,EACxB,CAAAmH,eAAe,oBAAfA,eAAe,CAAEtC,OAAO,KAAI,IAAI,GAAGsC,eAAe,CAACtC,OAAO,GAAGI,QAAQ,CAACoH,IAAI,CAC3E,GACD,IAAI,CAAA;AACV,CAAA;AAEAT,KAAK,CAACU,IAAI,GAAGpB,SAAS,CAAA;AACtBU,KAAK,CAACW,MAAM,GAAGf,WAAW,CAAA;AAC1BI,KAAK,CAACY,MAAM,GAAGnB,WAAW;;;AC/BV,SAAAoB,kBAAkBA,CAAAnO,IAAA,EAAwD;AAAA,EAAA,IAAAoO,UAAA,GAAApO,IAAA,CAArDqO,KAAK;AAALA,IAAAA,KAAK,GAAAD,UAAA,KAAG,KAAA,CAAA,GAAA,SAAS,GAAAA,UAAA;IAAAhO,SAAA,GAAAJ,IAAA,CAAEK,IAAI;AAAJA,IAAAA,IAAI,GAAAD,SAAA,KAAG,KAAA,CAAA,GAAA,QAAQ,GAAAA,SAAA;AAAKE,IAAAA,KAAK,GAAAC,6BAAA,CAAAP,IAAA,EAAAQ,WAAA,CAAA,CAAA;AAC/E,EAAA,IAAMsI,cAAc,GAAGpI,IAAI,CAAC,sEAAsE,EAAE;IAClG,sBAAsB,EAAE2N,KAAK,KAAK,WAAW;IAC7C,wBAAwB,EAAEA,KAAK,KAAK,SAAS;IAC7C,qBAAqB,EAAEA,KAAK,KAAK,aAAa;IAC9C,wBAAwB,EAAEA,KAAK,KAAK,SAAS;IAC7C,qBAAqB,EAAEA,KAAK,KAAK,SAAS;IAC1C,KAAK,EAAEhO,IAAI,KAAK,OAAO;IACvB,KAAK,EAAEA,IAAI,KAAK,QAAA;AACjB,GAAA,CAAC,CAAA;AAEF,EAAA,IAAMiO,WAAW,GAAG5N,IAAI,CAAC,mBAAmB,EAAE;IAC5C,mBAAmB,EAAE2N,KAAK,KAAK,WAAW;IAC1C,qBAAqB,EAAEA,KAAK,KAAK,SAAS;IAC1C,kBAAkB,EAAEA,KAAK,KAAK,aAAa;IAC3C,qBAAqB,EAAEA,KAAK,KAAK,SAAA;AAClC,GAAA,CAAC,CAAA;AAEF,EAAA,IAAME,QAAQ,GAAG;AACfC,IAAAA,SAAS,EAAE,WAAW;AACtBC,IAAAA,OAAO,EAAE,gBAAgB;AACzBC,IAAAA,OAAO,EAAE,SAAS;AAClBC,IAAAA,WAAW,EAAE,oBAAA;GACL,CAAA;AAEV,EAAA,IAAM7C,QAAQ,GAAG;AACf8C,IAAAA,KAAK,EAAE,OAAO;AACdC,IAAAA,MAAM,EAAE,QAAA;GACA,CAAA;AAEV,EAAA,oBACE3L,IAAA,CAAA,KAAA,EAAA;AAAKzB,IAAAA,SAAS,EAAEqH,cAAe;AAAApH,IAAAA,QAAA,EAC5B2M,CAAAA,KAAK,KAAK,SAAS,iBAClB7M,GAAA,CAAA,KAAA,EAAA;AAAKC,MAAAA,SAAS,EAAE6M,WAAY;MAAA5M,QAAA,eAC1BF,GAAA,CAACsF,IAAI,EAAA;AAACjD,QAAAA,IAAI,EAAE0K,QAAQ,CAACF,KAAK,CAAE;QAAChO,IAAI,EAAEyL,QAAQ,CAACzL,IAAI,CAAA;OAClD,CAAA;KAAK,CACN,eACDmB,GAAA,CAAA,GAAA,EAAA;AAAGC,MAAAA,SAAS,EAAC,QAAQ;MAAAC,QAAA,EAAEpB,KAAK,CAACoB,QAAAA;KAAY,CACzC,EAACpB,KAAK,CAACwO,SAAS,KAAK,IAAI,iBACvBtN,GAAA,CAAA,KAAA,EAAA;AAAKC,MAAAA,SAAS,EAAC,mBAAmB;MAAAC,QAAA,eAChCF,GAAA,CAACoK,UAAU,EAAA;AAACzC,QAAAA,IAAI,EAAC,OAAO;AAAC9I,QAAAA,IAAI,EAAC,OAAO;AAAC2B,QAAAA,OAAO,EAAC,MAAA;OAChD,CAAA;AAAA,KAAK,CACN,CAAA;AAAA,GACE,CAAC,CAAA;AAEV;;ACxDO,IAAM+M,iBAAiB,gBAAGtH,aAAa,CAAwB;AACpEuH,EAAAA,WAAW,EAAE,CAAA;AACd,CAAA,CAAC;;SCCcC,gBAAgBA,CAAAjP,IAAA,EAAyB;AAAA,EAAA,IAAtBkP,IAAI,GAAAlP,IAAA,CAAJkP,IAAI;IAAEnH,QAAO,GAAA/H,IAAA,CAAP+H,OAAO,CAAA;AAC9C,EAAA,IAAAC,WAAA,GAAwBC,UAAU,CAAC8G,iBAAiB,CAAC;IAA7CC,WAAW,GAAAhH,WAAA,CAAXgH,WAAW,CAAA;EAEnB,IAAM9E,aAAa,GAAGxJ,IAAI,CACxB,uEAAuE,EACvE,2BAA2B,EAC3B,oBAAoB,EACpB,kBAAkB,EAClB;IAAE,0BAA0B,EAAEwO,IAAI,KAAKF,WAAAA;AAAa,GAAA,EACpD;IAAE,oBAAoB,EAAEE,IAAI,KAAKF,WAAAA;AAAa,GAAA,CAC/C,CAAA;AAED,EAAA,oBACExN,GAAA,CAAA,QAAA,EAAA;AAAQiE,IAAAA,IAAI,EAAC,QAAQ;AAAChE,IAAAA,SAAS,EAAEyI,aAAc;IAACnC,OAAO,EAAE,SAATA,OAAOA,GAAA;MAAA,OAAQA,QAAO,CAACmH,IAAI,CAAC,CAAA;KAAC;AAAAxN,IAAAA,QAAA,EAC1EwN,IAAAA;AAAI,GACC,CAAC,CAAA;AAEb;;ACtBA,IAAMC,UAAU,GAAG,CAAC,CAAA;AAaJ,SAAAC,UAAUA,CAAApP,IAAA,EAAmE;AAAA,EAAA,IAAhEgP,WAAW,GAAAhP,IAAA,CAAXgP,WAAW;IAAEK,SAAS,GAAArP,IAAA,CAATqP,SAAS;IAAAC,qBAAA,GAAAtP,IAAA,CAAEuP,kBAAkB;AAAlBA,IAAAA,kBAAkB,GAAAD,qBAAA,KAAG,KAAA,CAAA,GAAA,CAAC,GAAAA,qBAAA;IAAEvH,QAAO,GAAA/H,IAAA,CAAP+H,OAAO,CAAA;EAClF,IAAIyH,MAAM,GAAG5B,IAAI,CAACC,GAAG,CAACmB,WAAW,EAAEG,UAAU,GAAG,CAAC,CAAC,CAAA;EAClDK,MAAM,GAAG5B,IAAI,CAAC6B,GAAG,CAACD,MAAM,EAAEH,SAAS,GAAG,CAAC,CAAC,CAAA;AAExC,EAAA,IAAMK,KAAK,GAAG9B,IAAI,CAACC,GAAG,CAAC2B,MAAM,GAAGD,kBAAkB,EAAEJ,UAAU,GAAG,CAAC,CAAC,CAAA;AACnE,EAAA,IAAMQ,GAAG,GAAG/B,IAAI,CAAC6B,GAAG,CAACD,MAAM,GAAGD,kBAAkB,EAAEF,SAAS,GAAG,CAAC,CAAC,CAAA;AAChE,EAAA,IAAMO,WAAW,GAAGJ,MAAM,GAAGD,kBAAkB,IAAIF,SAAS,GAAGA,SAAS,GAAGG,MAAM,GAAGD,kBAAkB,GAAG,CAAC,CAAA;AAC1G,EAAA,IAAMM,SAAS,GAAGL,MAAM,IAAID,kBAAkB,GAAGA,kBAAkB,GAAGC,MAAM,GAAG,CAAC,GAAG,CAAC,CAAA;EAEpF,IAAMM,QAAQ,GAAkB,EAAE,CAAA;AAClC,EAAA,KAAK,IAAIC,CAAC,GAAGL,KAAK,GAAGE,WAAW,EAAEG,CAAC,IAAIJ,GAAG,GAAGE,SAAS,EAAEE,CAAC,EAAE,EAAE;AAC3DD,IAAAA,QAAQ,CAACE,IAAI,CAACD,CAAC,CAAC,CAAA;AAClB,GAAA;EAEA,IAAME,mBAAmB,GAAG,4DAA4D,CAAA;AAExF,EAAA,oBACEzO,GAAA,CAACuN,iBAAiB,CAAC5E,QAAQ,EAAA;AACzBrG,IAAAA,KAAK,EAAE;AACLkL,MAAAA,WAAW,EAAXA,WAAAA;KACA;AAAAtN,IAAAA,QAAA,eAEFwB,IAAA,CAAA,IAAA,EAAA;AAAIzB,MAAAA,SAAS,EAAC,YAAY;AAAAC,MAAAA,QAAA,gBACxBF,GAAA,CAAA,IAAA,EAAA;AAAIC,QAAAA,SAAS,EAAC,mBAAmB;QAAAC,QAAA,eAC/BF,GAAA,CAACoK,UAAU,EAAA;UACTjL,UAAU,EAAEqO,WAAW,KAAKG,UAAW;AACvCnN,UAAAA,OAAO,EAAC,MAAM;AACdmH,UAAAA,IAAI,EAAC,YAAY;AACjB9I,UAAAA,IAAI,EAAC,OAAO;UACZ0H,OAAO,EAAE,SAATA,OAAOA,GAAA;AAAA,YAAA,OAAQA,QAAO,CAACiH,WAAW,GAAG,CAAC,CAAC,CAAA;AAAA,WAAA;SAE3C,CAAA;OAAI,CACJ,eAAAxN,GAAA,CAAA,IAAA,EAAA;QAAAE,QAAA,eACEF,GAAA,CAACyN,gBAAgB,EAAA;UAAClH,OAAO,EAAE,SAATA,OAAOA,GAAA;YAAA,OAAQA,QAAO,CAACoH,UAAU,CAAC,CAAA;WAAC;AAACD,UAAAA,IAAI,EAAEC,UAAAA;SAC9D,CAAA;AAAA,OAAI,CACJ,EAACW,QAAQ,CAAChP,MAAM,KAAK,CAAC,IAAIgP,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,iBACzCtO,GAAA,CAAA,IAAA,EAAA;AAAIC,QAAAA,SAAS,EAAEwO,mBAAoB;QAAAvO,QAAA,eACjCF,GAAA,CAACsF,IAAI,EAAA;AAACjD,UAAAA,IAAI,EAAC,MAAM;AAACxD,UAAAA,IAAI,EAAC,OAAA;SACzB,CAAA;OAAI,CACL,EACAyP,QAAQ,CAACI,GAAG,CAAC,UAAChB,IAAY,EAAE5D,KAAa,EAAA;AAAA,QAAA,oBACxC9J,GAAA,CAAA,IAAA,EAAA;UAAAE,QAAA,eACEF,GAAA,CAACyN,gBAAgB,EAAA;YAAClH,OAAO,EAAE,SAATA,OAAOA,GAAA;cAAA,OAAQA,QAAO,CAACmH,IAAI,CAAC,CAAA;aAAC;AAACA,YAAAA,IAAI,EAAEA,IAAAA;WACxD,CAAA;AAAA,SAAA,EAFS5D,KAEL,CAAC,CAAA;OACN,CAAC,EACDwE,QAAQ,CAAChP,MAAM,KAAK,CAAC,IAAIgP,QAAQ,CAACA,QAAQ,CAAChP,MAAM,GAAG,CAAC,CAAC,KAAKuO,SAAS,GAAG,CAAC,iBACvE7N,GAAA,CAAA,IAAA,EAAA;AAAIC,QAAAA,SAAS,EAAEwO,mBAAoB;QAAAvO,QAAA,eACjCF,GAAA,CAACsF,IAAI,EAAA;AAACjD,UAAAA,IAAI,EAAC,MAAM;AAACxD,UAAAA,IAAI,EAAC,OAAA;SACzB,CAAA;OAAI,CACL,eACDmB,GAAA,CAAA,IAAA,EAAA;QAAAE,QAAA,eACEF,GAAA,CAACyN,gBAAgB,EAAA;UAAClH,OAAO,EAAE,SAATA,OAAOA,GAAA;YAAA,OAAQA,QAAO,CAACsH,SAAS,CAAC,CAAA;WAAC;AAACH,UAAAA,IAAI,EAAEG,SAAAA;SAC7D,CAAA;OAAI,CACJ,eAAA7N,GAAA,CAAA,IAAA,EAAA;AAAIC,QAAAA,SAAS,EAAC,mBAAmB;QAAAC,QAAA,eAC/BF,GAAA,CAACoK,UAAU,EAAA;UACTjL,UAAU,EAAEqO,WAAW,KAAKK,SAAU;AACtCrN,UAAAA,OAAO,EAAC,MAAM;AACdmH,UAAAA,IAAI,EAAC,aAAa;AAClB9I,UAAAA,IAAI,EAAC,OAAO;UACZ0H,OAAO,EAAE,SAATA,OAAOA,GAAA;AAAA,YAAA,OAAQA,QAAO,CAACiH,WAAW,GAAG,CAAC,CAAC,CAAA;AAAA,WAAA;SAE3C,CAAA;AAAA,OAAI,CACN,CAAA;KAAI,CAAA;AACN,GAA4B,CAAC,CAAA;AAEjC;;ACtEO,IAAMmB,aAAa,gBAAG1I,aAAa,CAAsB;AAC9DpH,EAAAA,IAAI,EAAE,QAAQ;EACd+P,mBAAmB,EAAE,SAArBA,mBAAmBA,GAAA;AAAA,IAAA,OAAQ,KAAK,CAAA;AAAA,GAAA;AAChCpO,EAAAA,OAAO,EAAE,SAAA;AACV,CAAA,CAAC;;ACLc,SAAAqO,YAAUA,CAAArQ,IAAA,EAAkB;AAAA,EAAA,IAAfsQ,MAAM,GAAAtQ,IAAA,CAANsQ,MAAM,CAAA;AACjC,EAAA,IAAAtI,WAAA,GAA0DC,UAAU,CAACkI,aAAa,CAAC;IAA3EC,mBAAmB,GAAApI,WAAA,CAAnBoI,mBAAmB;IAAEG,cAAc,GAAAvI,WAAA,CAAduI,cAAc;IAAElM,QAAQ,GAAA2D,WAAA,CAAR3D,QAAQ,CAAA;AAErD,EAAA,IAAM6D,eAAe,GAAG,SAAlBA,eAAeA,CAAIoI,MAAoB,EAAI;AAC/CjM,IAAAA,QAAQ,IAARA,IAAAA,IAAAA,QAAQ,CAAGiM,MAAM,CAAC,CAAA;IAClBF,mBAAmB,CAAC,KAAK,CAAC,CAAA;GAC3B,CAAA;EAED,IAAMjI,WAAW,GAAGzH,MAAI,CACtB,iGAAiG,EACjGmC,YAAY,CAACuF,KAAK,EAClB;IACE,qDAAqD,EAAEkI,MAAM,CAACvM,EAAE,MAAKwM,cAAc,IAAA,IAAA,GAAA,KAAA,CAAA,GAAdA,cAAc,CAAExM,EAAE,CAAA;IACvF,kDAAkD,EAAEuM,MAAM,CAACvM,EAAE,MAAKwM,cAAc,IAAA,IAAA,GAAA,KAAA,CAAA,GAAdA,cAAc,CAAExM,EAAE,CAAA;AACrF,GAAA,CACF,CAAA;AAED,EAAA,oBACEvC,GAAA,CAAA,IAAA,EAAA;AAAIC,IAAAA,SAAS,EAAC,0BAA0B;IAAiB,SAAS6O,EAAAA,MAAM,CAACvM,EAAG;AAAArC,IAAAA,QAAA,eAC1EwB,IAAA,CAAA,QAAA,EAAA;AAAQzB,MAAAA,SAAS,EAAE0G,WAAY;AAAC1C,MAAAA,IAAI,EAAC,QAAQ;MAACsC,OAAO,EAAE,SAATA,OAAOA,GAAA;QAAA,OAAQG,eAAe,CAACoI,MAAM,CAAC,CAAA;OAAC;AAAA5O,MAAAA,QAAA,GAClF4O,MAAM,CAACnH,IAAI,iBAAI3H,GAAA,CAACsF,IAAI,EAAA;QAACjD,IAAI,EAAEyM,MAAM,CAACnH,IAAK;AAAC9I,QAAAA,IAAI,EAAC,OAAA;QAAU,eACxDmB,GAAA,CAAA,MAAA,EAAA;AAAMC,QAAAA,SAAS,EAAC,WAAW;QAAAC,QAAA,EAAE4O,MAAM,CAAChM,KAAAA;AAAK,OAAO,CAChD,EAACgM,MAAM,CAACvM,EAAE,MAAKwM,cAAc,IAAA,IAAA,GAAA,KAAA,CAAA,GAAdA,cAAc,CAAExM,EAAE,CAAA,iBAC/BvC,GAAA,CAAA,KAAA,EAAA;AAAKC,QAAAA,SAAS,EAAC,2BAA2B;QAAAC,QAAA,eACxCF,GAAA,CAACsF,IAAI,EAAA;AAACjD,UAAAA,IAAI,EAAC,OAAO;AAACxD,UAAAA,IAAI,EAAC,OAAA;SAC1B,CAAA;AAAA,OAAK,CACN,CAAA;KACK,CAAA;GAToCiQ,EAAAA,MAAM,CAACvM,EAUjD,CAAC,CAAA;AAET;;SC/BgByM,YAAUA,CAAAxQ,IAAA,EAAkD;AAAA,EAAA,IAA/C0B,QAAQ,GAAA1B,IAAA,CAAR0B,QAAQ;IAAE4G,SAAS,GAAAtI,IAAA,CAATsI,SAAS,CAAA;AAC9C,EAAA,IAAMvC,GAAG,GAAG2D,MAAM,CAAmB,IAAI,CAAC,CAAA;AAC1C,EAAA,IAAA1B,WAAA,GAAsFC,UAAU,CAACkI,aAAa,CAAC;IAAvG9P,IAAI,GAAA2H,WAAA,CAAJ3H,IAAI;IAAEkQ,cAAc,GAAAvI,WAAA,CAAduI,cAAc;IAAEH,mBAAmB,GAAApI,WAAA,CAAnBoI,mBAAmB;IAAEpO,OAAO,GAAAgG,WAAA,CAAPhG,OAAO;IAAEyO,WAAW,GAAAzI,WAAA,CAAXyI,WAAW;IAAEpM,QAAQ,GAAA2D,WAAA,CAAR3D,QAAQ,CAAA;AAEjF,EAAA,IAAMqM,mBAAmB,GAAG,SAAtBA,mBAAmBA,GAAQ;AAC/BrM,IAAAA,QAAQ,IAARA,IAAAA,IAAAA,QAAQ,CAAG,IAAI,CAAC,CAAA;IAChB+L,mBAAmB,CAAC,KAAK,CAAC,CAAA;GAC3B,CAAA;AAEDO,EAAAA,eAAe,CAAC,YAAK;AACnB,IAAA,IAAIrI,SAAS,IAAI,IAAI,IAAIvC,GAAG,CAACQ,OAAO,EAAE;AAAA,MAAA,IAAAqK,qBAAA,CAAA;MACpC,IAAMtK,OAAO,GAAG6E,KAAK,CAACC,IAAI,CAAAwF,CAAAA,qBAAA,GAAC7K,GAAG,CAACQ,OAAO,CAAC7E,QAAQ,KAAA,IAAA,GAAAkP,qBAAA,GAAI,EAAE,CAAC,CAACC,IAAI,CACzD,UAACC,IAAI,EAAA;QAAA,OAAKA,IAAI,CAACC,YAAY,CAAC,SAAS,CAAC,MAAKR,cAAc,IAAA,IAAA,GAAA,KAAA,CAAA,GAAdA,cAAc,CAAExM,EAAE,CAAA,CAAA;OAC9D,CAAA,CAAA;MACD,IAAIuC,OAAO,IAAI,IAAI,IAAIP,GAAG,CAACQ,OAAO,CAACyK,MAAM,IAAI,IAAI,EAAE;QACjD,IAAMC,QAAQ,GAAGlL,GAAG,CAACQ,OAAO,CAACsD,qBAAqB,EAAE,CAAA;AACpD,QAAA,IAAMqH,IAAI,GAAG5K,OAAO,CAACuD,qBAAqB,EAAE,CAAA;QAC5C9D,GAAG,CAACQ,OAAO,CAACyK,MAAM,CAAC,CAAC,EAAEE,IAAI,CAAClI,GAAG,GAAGiI,QAAQ,CAACjI,GAAG,GAAGiI,QAAQ,CAACpJ,MAAM,GAAG,CAAC,GAAGqJ,IAAI,CAACrJ,MAAM,GAAG,CAAC,CAAC,CAAA;AACxF,OAAA;AACF,KAAA;AACA;GACD,EAAE,EAAE,CAAC,CAAA;AAEN,EAAA,IAAMsJ,WAAW,GAAGzQ,MAAI,CACtB,gGAAgG,EAChG;AACE,IAAA,OAAO,EAAEL,IAAI,KAAK,SAAS,IAAIA,IAAI,KAAK,OAAO;IAC/C,OAAO,EAAEA,IAAI,KAAK,QAAQ;IAC1B,QAAQ,EAAEA,IAAI,KAAK,OAAO;IAC1B,uCAAuC,EAAE2B,OAAO,KAAK,SAAA;AACtD,GAAA,CACF,CAAA;EAED,IAAMoP,qBAAqB,GAAG1Q,MAAI,CAChC,oHAAoH,EACpHmC,YAAY,CAACuF,KAAK,CACnB,CAAA;AAED,EAAA,oBACElF,IAAA,CAAA,IAAA,EAAA;AAAIzB,IAAAA,SAAS,EAAE0P,WAAY;AAAC/N,IAAAA,KAAK,EAAE;AAAEkF,MAAAA,SAAS,EAATA,SAAAA;KAAY;AAACvC,IAAAA,GAAG,EAAEA,GAAI;IAAArE,QAAA,EAAA,CACxDA,QAAQ,EACR+O,WAAW,IAAI,IAAI,IAAIF,cAAc,KAAK,IAAI,iBAC7C/O,GAAA,CAAA,IAAA,EAAA;AAAAE,MAAAA,QAAA,eACEF,GAAA,CAAA,QAAA,EAAA;AAAQC,QAAAA,SAAS,EAAE2P,qBAAsB;AAAC3L,QAAAA,IAAI,EAAC,QAAQ;AAACsC,QAAAA,OAAO,EAAE2I,mBAAoB;AAAAhP,QAAAA,QAAA,EACnF,0BAAA;OACM,CAAA;AACV,KAAI,CACL,CAAA;AAAA,GACC,CAAC,CAAA;AAET;;SClCgB2P,MAAMA,CAAArR,IAAA,EAaK;AAAA,EAAA,IAAAG,KAAA,CAAA;AAAA,EAAA,IAZzBuB,QAAQ,GAAA1B,IAAA,CAAR0B,QAAQ;IAAAtB,SAAA,GAAAJ,IAAA,CACRK,IAAI;AAAJA,IAAAA,IAAI,GAAAD,SAAA,KAAG,KAAA,CAAA,GAAA,QAAQ,GAAAA,SAAA;IAAA2B,YAAA,GAAA/B,IAAA,CACfgC,OAAO;AAAPA,IAAAA,OAAO,GAAAD,YAAA,KAAG,KAAA,CAAA,GAAA,SAAS,GAAAA,YAAA;IACnBI,KAAK,GAAAnC,IAAA,CAALmC,KAAK;IACLmP,QAAQ,GAAAtR,IAAA,CAARsR,QAAQ;IACRb,WAAW,GAAAzQ,IAAA,CAAXyQ,WAAW;IACXc,eAAe,GAAAvR,IAAA,CAAfuR,eAAe;IAAAC,mBAAA,GAAAxR,IAAA,CACfuQ,cAAc;AAAdA,IAAAA,cAAc,GAAAiB,mBAAA,KAAG,KAAA,CAAA,GAAA,IAAI,GAAAA,mBAAA;IAAApN,eAAA,GAAApE,IAAA,CACrBW,UAAU;AAAVA,IAAAA,UAAU,GAAAyD,eAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,eAAA;IAAAqN,qBAAA,GAAAzR,IAAA,CAClB0R,gBAAgB;AAAhBA,IAAAA,gBAAgB,GAAAD,qBAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,qBAAA;IACxBpN,QAAQ,GAAArE,IAAA,CAARqE,QAAQ;IACRsN,mBAAmB,GAAA3R,IAAA,CAAnB2R,mBAAmB,CAAA;AAEnB,EAAA,IAAAlN,SAAA,GAAgDC,QAAQ,CAAC,KAAK,CAAC;AAAxDkN,IAAAA,gBAAgB,GAAAnN,SAAA,CAAA,CAAA,CAAA;AAAE2L,IAAAA,mBAAmB,GAAA3L,SAAA,CAAA,CAAA,CAAA,CAAA;AAC5C,EAAA,IAAMgF,SAAS,GAAGC,MAAM,CAAiB,IAAI,CAAC,CAAA;EAC9C5D,eAAe,CAAC2D,SAAS,EAAE,YAAA;IAAA,OAAM2G,mBAAmB,CAAC,KAAK,CAAC,CAAA;GAAC,CAAA,CAAA;AAE5D,EAAA,IAAMyB,iBAAiB,GAAG,SAApBA,iBAAiBA,GAAA;IAAA,OAASzB,mBAAmB,CAAC,UAAC0B,IAAI,EAAA;AAAA,MAAA,OAAK,CAACA,IAAI,CAAA;KAAC,CAAA,CAAA;AAAA,GAAA,CAAA;AAEpE,EAAA,IAAMhJ,cAAc,GAAGpI,MAAI,CAAC,qEAAqE,EAAE;AACjG,IAAA,KAAK,EAAEL,IAAI,KAAK,SAAS,IAAIA,IAAI,KAAK,OAAO;IAC7C,KAAK,EAAEA,IAAI,KAAK,QAAQ;IACxB,MAAM,EAAEA,IAAI,KAAK,OAAO;AACxB,IAAA,oBAAoB,EAAEM,UAAAA;AACvB,GAAA,CAAC,CAAA;EAEF,IAAMuJ,aAAa,GAAGxJ,MAAI,CACxB,qCAAqC,EACrC+B,YAAY,CAACT,OAAO,CAAC,CAACU,KAAK,EAC3BD,YAAY,CAACT,OAAO,CAAC,CAACW,MAAM,EAC5BF,YAAY,CAACT,OAAO,CAAC,CAACY,QAAQ,EAC9BC,YAAY,CAACC,MAAM,GAAA3C,KAAA,GAAAA,EAAAA,EAAAA,KAAA,CAEhBsC,YAAY,CAACT,OAAO,CAAC,CAACe,QAAQ,CAAA,GAAG2O,gBAAgB,IAAI,CAAC/Q,UAAU,IAAI4P,cAAc,EAAApQ,KAAA,CAClFsC,YAAY,CAACT,OAAO,CAAC,CAACgB,IAAI,CAAA,GAAG,EAAE0O,gBAAgB,IAAI,CAAC/Q,UAAU,IAAI4P,cAAc,CAAC,EAAApQ,KAAA,CAClF,MAAM,CAAA,GAAEE,IAAI,KAAK,SAAS,IAAIA,IAAI,KAAK,OAAO,EAAAF,KAAA,CAC9C,MAAM,CAAEE,GAAAA,IAAI,KAAK,QAAQ,IAAIA,IAAI,KAAK,OAAO,EAAAF,KAAA,CAC7C,qBAAqB,IAAEQ,UAAU,EAAAR,KAAA,EAEpC,CAAA;AAED,EAAA,IAAMqF,YAAY,GAAG9E,MAAI,CAAC,iBAAiB,EAAE;IAC3C,MAAM,EAAEL,IAAI,KAAK,SAAS;IAC1B,MAAM,EAAEA,IAAI,KAAK,SAAS;IAC1B,2BAA2B,EAAEA,IAAI,KAAK,SAAS;AAC/C,IAAA,2BAA2B,EAAEA,IAAI,KAAK,OAAO,IAAIA,IAAI,KAAK,QAAQ;IAClE,2BAA2B,EAAEA,IAAI,KAAK,OAAA;AACvC,GAAA,CAAC,CAAA;AAEF,EAAA,oBACEmB,GAAA,CAAC2O,aAAa,CAAChG,QAAQ,EAAA;AACrBrG,IAAAA,KAAK,EAAE;AACLzD,MAAAA,IAAI,EAAJA,IAAI;AACJ2B,MAAAA,OAAO,EAAPA,OAAO;AACPyO,MAAAA,WAAW,EAAXA,WAAW;AACXL,MAAAA,mBAAmB,EAAnBA,mBAAmB;AACnBG,MAAAA,cAAc,EAAdA,cAAc;AACdlM,MAAAA,QAAQ,EAARA,QAAAA;KACA;AAAA3C,IAAAA,QAAA,eAEFwB,IAAA,CAAA,KAAA,EAAA;AAAKzB,MAAAA,SAAS,EAAEqH,cAAe;AAAC1F,MAAAA,KAAK,EAAE;AAAEjB,QAAAA,KAAK,EAALA,KAAK;AAAEmP,QAAAA,QAAQ,EAARA,QAAAA;OAAW;AAACvL,MAAAA,GAAG,EAAE0D,SAAU;AAAA/H,MAAAA,QAAA,gBACzEwB,IAAA,CAAA,QAAA,EAAA;AAAQzB,QAAAA,SAAS,EAAEyI,aAAc;AAACzE,QAAAA,IAAI,EAAC,QAAQ;AAACsC,QAAAA,OAAO,EAAE8J,iBAAkB;AAACjP,QAAAA,QAAQ,EAAEjC,UAAW;AAAAe,QAAAA,QAAA,GAC9F6O,cAAc,IAAA,IAAA,IAAdA,cAAc,CAAEpH,IAAI,gBACnB3H,GAAA,CAAA,KAAA,EAAA;AAAKC,UAAAA,SAAS,EAAC,WAAW;UAAAC,QAAA,eACxBF,GAAA,CAACsF,IAAI,EAAA;YAACjD,IAAI,EAAE0M,cAAc,CAACpH,IAAK;AAAC9I,YAAAA,IAAI,EAAEA,IAAI,KAAK,OAAO,GAAG,QAAQ,GAAG,OAAA;WACvE,CAAA;SAAK,CAAC,GAENoQ,WAAW,IAAI,IAAI,IACnBc,eAAe,iBACb/P,GAAA,CAAA,KAAA,EAAA;AAAKC,UAAAA,SAAS,EAAC,WAAW;UAAAC,QAAA,eACxBF,GAAA,CAACsF,IAAI,EAAA;AAACjD,YAAAA,IAAI,EAAE0N,eAAgB;AAAClR,YAAAA,IAAI,EAAEA,IAAI,KAAK,OAAO,GAAG,QAAQ,GAAG,OAAA;WACnE,CAAA;SAAK,CAER,eACDmB,GAAA,CAAA,KAAA,EAAA;AAAKC,UAAAA,SAAS,EAAE+D,YAAa;AAAA9D,UAAAA,QAAA,eAC3BF,GAAA,CAAA,KAAA,EAAA;AAAKC,YAAAA,SAAS,EAAC,UAAU;YAAAC,QAAA,EAAE6O,cAAc,GAAGA,cAAc,CAACjM,KAAK,GAAGmM,WAAW,IAAI,IAAI,IAAIA,WAAAA;WAAiB,CAAA;SACxG,CACL,eAAAjP,GAAA,CAAA,KAAA,EAAA;AAAKC,UAAAA,SAAS,EAAC,2BAA2B;UAAAC,QAAA,eACxCF,GAAA,CAACsF,IAAI,EAAA;AACHjD,YAAAA,IAAI,EAAE+N,gBAAgB,GAAG,gBAAgB,GAAG,kBAAmB;AAC/DvR,YAAAA,IAAI,EAAEA,IAAI,KAAK,OAAO,GAAG,QAAQ,GAAG,OAAA;WAExC,CAAA;AAAA,SAAK,CACP,CAAA;OAAQ,CACR,EAACuR,gBAAgB,IAAI,CAACjR,UAAU,iBAAIa,GAAA,CAACgP,YAAU,EAAA;AAAClI,QAAAA,SAAS,EAAEqJ,mBAAoB;AAAAjQ,QAAAA,QAAA,EAAEA,QAAAA;AAAQ,OAAa,CAAC,CAAA;KACpG,CAAA;AACP,GAAwB,CAAC,CAAA;AAE7B,CAAA;AAEA2P,MAAM,CAACU,MAAM,GAAG1B,YAAU;;AC7FpB,SAAU2B,gBAAgBA,CAAAhS,IAAA,EAUxB;AAAA,EAAA,IATNiS,SAAS,GAAAjS,IAAA,CAATiS,SAAS;IACTjD,WAAW,GAAAhP,IAAA,CAAXgP,WAAW;IACXkD,WAAW,GAAAlS,IAAA,CAAXkS,WAAW;IAAAC,eAAA,GAAAnS,IAAA,CACXoS,UAAU;AAAVA,IAAAA,UAAU,GAAAD,eAAA,KAAG,KAAA,CAAA,GAAA,GAAG,GAAAA,eAAA;IAAAE,cAAA,GAAArS,IAAA,CAChBsS,SAAS;AAATA,IAAAA,SAAS,GAAAD,cAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,cAAA;IAAAE,qBAAA,GAAAvS,IAAA,CACjB2R,mBAAmB;AAAnBA,IAAAA,mBAAmB,GAAAY,qBAAA,KAAG,KAAA,CAAA,GAAA,GAAG,GAAAA,qBAAA;IACzBC,iBAAiB,GAAAxS,IAAA,CAAjBwS,iBAAiB;IACjBC,iBAAiB,GAAAzS,IAAA,CAAjByS,iBAAiB;IACjBpO,SAAQ,GAAArE,IAAA,CAARqE,QAAQ,CAAA;EAER,IAAMqO,OAAO,GAAG9E,IAAI,CAAC+E,IAAI,CAACV,SAAS,GAAGC,WAAW,CAAC,CAAA;AAElD,EAAA,IAAMU,WAAW,GAAmB,EAAA,CAAAC,MAAA,CAAI1H,KAAK,CAACuH,OAAO,CAAC,CAAA,CAAExC,GAAG,CAAC,UAAC7E,CAAC,EAAEC,KAAK,EAAI;IACvE,IAAMxH,KAAK,GAAG,CAACwH,KAAK,GAAG,CAAC,EAAEwH,QAAQ,EAAE,CAAA;IAEpC,OAAO;AACL/O,MAAAA,EAAE,EAAED,KAAK;AACTA,MAAAA,KAAK,EAALA,KAAK;AACLQ,MAAAA,KAAK,EAAER,KAAAA;KACR,CAAA;AACH,GAAC,CAAC,CAAA;AAEF,EAAA,IAAMiP,QAAQ,GAAGd,SAAS,GAAG,CAACjD,WAAW,GAAG,CAAC,IAAIkD,WAAW,GAAG,CAAC,GAAG,CAAC,CAAA;AACpE,EAAA,IAAMc,QAAQ,GAAGhE,WAAW,GAAGkD,WAAW,GAAGD,SAAS,GAAGA,SAAS,GAAGjD,WAAW,GAAGkD,WAAW,CAAA;AAE9F,EAAA,oBACEhP,IAAA,CAAA,KAAA,EAAA;AAAK,IAAA,YAAA,EAAW,YAAY;AAACzB,IAAAA,SAAS,EAAC,2BAA2B;AAAAC,IAAAA,QAAA,gBAChEwB,IAAA,CAAA,KAAA,EAAA;AAAKzB,MAAAA,SAAS,EAAC,2BAA2B;AAAAC,MAAAA,QAAA,gBACxCwB,IAAA,CAAA,KAAA,EAAA;AAAKzB,QAAAA,SAAS,EAAC,uCAAuC;QAAAC,QAAA,EAAA,CACnDqR,QAAQ,GAAG,CAAC,IAAOA,QAAQ,GAAK,KAAA,EAChCC,QAAQ,EACRZ,UAAU,CAAA;AAAA,OACR,CACL,eAAA5Q,GAAA,CAAC6P,MAAM,EAAA;AACLhR,QAAAA,IAAI,EAAC,QAAQ;AACb2B,QAAAA,OAAO,EAAC,SAAS;AACjBuO,QAAAA,cAAc,EAAEqC,WAAW,CAAC/B,IAAI,CAAC,UAACP,MAAM,EAAA;UAAA,OAAKA,MAAM,CAACxM,KAAK,KAAKkL,WAAW,CAAC8D,QAAQ,EAAE,CAAA;SAAE,CAAA;AACtFnB,QAAAA,mBAAmB,EAAEA,mBAAoB;AACzCtN,QAAAA,QAAQ,EAAE,SAAVA,QAAQA,CAAGiM,MAAM,EAAA;UAAA,OAAKA,MAAM,IAAIjM,SAAQ,CAAC4O,MAAM,CAAC3C,MAAM,CAACxM,KAAK,CAAC,CAAC,CAAA;SAAC;QAC/DnD,UAAU,EAAE+R,OAAO,KAAK,CAAE;AAAAhR,QAAAA,QAAA,EAEzBkR,WAAW,CAAC1C,GAAG,CAAC,UAACI,MAAM,EAAA;AAAA,UAAA,oBACtB9O,GAAA,CAAC6P,MAAM,CAACU,MAAM,EAAA;AAAiBzB,YAAAA,MAAM,EAAEA,MAAAA;WAAnBA,EAAAA,MAAM,CAACvM,EAAsB,CAAA,CAAA;SAClD,CAAA;OACK,CACR,eAAAb,IAAA,CAAA,KAAA,EAAA;AAAKzB,QAAAA,SAAS,EAAC,uCAAuC;AAAAC,QAAAA,QAAA,EACpD,CAAA,IAAE,EAACgR,OAAO,EACTJ,SAAS,CAAA;AAAA,OACP,CACP,CAAA;KAAK,CACL,eAAApP,IAAA,CAAA,KAAA,EAAA;AAAKzB,MAAAA,SAAS,EAAC,mBAAmB;MAAAC,QAAA,EAAA,cAChCF,GAAA,CAACoK,UAAU,EAAA;AACT5J,QAAAA,OAAO,EAAC,MAAM;AACdmH,QAAAA,IAAI,EAAC,YAAY;AACjB9I,QAAAA,IAAI,EAAC,OAAO;QACZM,UAAU,EAAEqO,WAAW,KAAK,CAAE;AAC9BjH,QAAAA,OAAO,EAAEyK,iBAAAA;AAAkB,OAE7B,CAAA,eAAAhR,GAAA,CAACoK,UAAU,EAAA;AACT5J,QAAAA,OAAO,EAAC,MAAM;AACdmH,QAAAA,IAAI,EAAC,aAAa;AAClB9I,QAAAA,IAAI,EAAC,OAAO;AACZM,QAAAA,UAAU,EAAEqO,WAAW,KAAK0D,OAAO,IAAIA,OAAO,KAAK,CAAE;AACrD3K,QAAAA,OAAO,EAAE0K,iBAAAA;AAAkB,OAE/B,CAAA,CAAA;AAAA,KAAK,CACP,CAAA;AAAA,GAAK,CAAC,CAAA;AAEV;;AC/EM,SAAUS,KAAKA,CAAAlT,IAAA,EAAmF;AAAA,EAAA,IAAhF6D,IAAI,GAAA7D,IAAA,CAAJ6D,IAAI;IAAEC,KAAK,GAAA9D,IAAA,CAAL8D,KAAK;IAAEC,EAAE,GAAA/D,IAAA,CAAF+D,EAAE;IAAEO,KAAK,GAAAtE,IAAA,CAALsE,KAAK;IAAAN,cAAA,GAAAhE,IAAA,CAAEiE,SAAS;AAATA,IAAAA,SAAS,GAAAD,cAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,cAAA;IAAAI,eAAA,GAAApE,IAAA,CAAEW,UAAU;AAAVA,IAAAA,UAAU,GAAAyD,eAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,eAAA;IAAEC,QAAQ,GAAArE,IAAA,CAARqE,QAAQ,CAAA;AAC7F,EAAA,IAAAI,SAAA,GAAsCC,QAAQ,CAAC,KAAK,CAAC;AAA9CC,IAAAA,WAAW,GAAAF,SAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,cAAc,GAAAH,SAAA,CAAA,CAAA,CAAA,CAAA;AAElC,EAAA,IAAMI,oBAAoB,GAAGC,WAAW,CAAC,YAAK;IAC5CF,cAAc,CAAC,IAAI,CAAC,CAAA;GACrB,EAAE,EAAE,CAAC,CAAA;AAEN,EAAA,IAAMG,mBAAmB,GAAGD,WAAW,CAAC,YAAK;IAC3CF,cAAc,CAAC,KAAK,CAAC,CAAA;GACtB,EAAE,EAAE,CAAC,CAAA;AAEN,EAAA,IAAMI,YAAY,GAAGF,WAAW,CAC9B,UAACG,CAAgC,EAAA;IAAA,OAAK,CAACtE,UAAU,KAAI0D,QAAQ,oBAARA,QAAQ,CAAGY,CAAC,CAAC,CAAA,CAAA;AAAA,GAAA,EAClE,CAACtE,UAAU,EAAE0D,QAAQ,CAAC,CACvB,CAAA;AAED,EAAA,IAAM8O,YAAY,GAAGzS,MAAI,CAAC,sCAAsC,EAAE;AAChE,IAAA,oBAAoB,EAAEC,UAAU;AAChC,IAAA,gBAAgB,EAAE,CAACA,UAAAA;AACpB,GAAA,CAAC,CAAA;EAEF,IAAMwE,UAAU,GAAGzE,MAAI,CACrB,0FAA0F,EAC1FmC,YAAY,CAACuC,UAAU,EACvB;AACE,IAAA,2CAA2C,EAAEzE,UAAU,IAAI,CAACgE,WAAW;AACvE,IAAA,sBAAsB,EAAE,CAAChE,UAAU,IAAIgE,WAAW;IAClD,mBAAmB,EAAE,CAAChE,UAAU;AAChC,IAAA,oBAAoB,EAAEA,UAAU;AAChC,IAAA,gBAAgB,EAAE,CAACA,UAAAA;AACpB,GAAA,CACF,CAAA;AAED,EAAA,IAAM2E,YAAY,GAAG5E,MAAI,CAAC,mDAAmD,EAAE;IAC7E,eAAe,EAAEC,UAAU,IAAIsD,SAAS;AACxC,IAAA,qBAAqB,EAAE,CAACtD,UAAU,IAAIsD,SAAS;IAC/C,SAAS,EAAE,CAACA,SAAS;AACrB,IAAA,WAAW,EAAEA,SAAAA;AACd,GAAA,CAAC,CAAA;AAEF,EAAA,IAAMsB,qBAAqB,GAAG7E,MAAI,CAAC,kCAAkC,EAAE;AACrE,IAAA,YAAY,EAAE,CAACC,UAAU,IAAI,CAACsD,SAAS,IAAIU,WAAAA;AAC5C,GAAA,CAAC,CAAA;AAEF,EAAA,IAAMa,YAAY,GAAG9E,MAAI,CAAC,mEAAmE,EAAE;AAC7F,IAAA,wDAAwD,EAAEC,UAAU;AACpE,IAAA,4BAA4B,EAAE,CAACA,UAAAA;AAChC,GAAA,CAAC,CAAA;AAEF,EAAA,oBACEuC,IAAA,CAAA,KAAA,EAAA;AAAKzB,IAAAA,SAAS,EAAC,mBAAmB;AAAAC,IAAAA,QAAA,gBAChCwB,IAAA,CAAA,KAAA,EAAA;AAAKzB,MAAAA,SAAS,EAAC,yCAAyC;AAAAC,MAAAA,QAAA,gBACtDF,GAAA,CAAA,OAAA,EAAA;AACEiE,QAAAA,IAAI,EAAC,UAAU;AACf3B,QAAAA,KAAK,EAAEA,KAAM;AACbD,QAAAA,IAAI,EAAEA,IAAK;AACXE,QAAAA,EAAE,EAAEA,EAAG;AACP2B,QAAAA,OAAO,EAAEzB,SAAU;AACnBrB,QAAAA,QAAQ,EAAEjC,UAAW;AACrB0D,QAAAA,QAAQ,EAAEW,YAAa;AACvBW,QAAAA,WAAW,EAAEd,oBAAqB;AAClCe,QAAAA,YAAY,EAAEb,mBAAoB;AAClCtD,QAAAA,SAAS,EAAE0R,YAAAA;OAEb,CAAA,eAAA3R,GAAA,CAAA,KAAA,EAAA;AAAKC,QAAAA,SAAS,EAAE0D,UAAW;AAAAzD,QAAAA,QAAA,eACzBwB,IAAA,CAAA,KAAA,EAAA;AAAKzB,UAAAA,SAAS,EAAC,kEAAkE;AAAAC,UAAAA,QAAA,gBAC/EF,GAAA,CAAA,MAAA,EAAA;AAAMC,YAAAA,SAAS,EAAE6D,YAAAA;WACjB,CAAA,eAAA9D,GAAA,CAAA,MAAA,EAAA;AAAMC,YAAAA,SAAS,EAAE8D,qBAAAA;AAAsB,WACzC,CAAA,CAAA;SAAK,CAAA;AACP,OAAK,CACP,CAAA;KAAK,CACL,eAAA/D,GAAA,CAAA,OAAA,EAAA;AAAOqE,MAAAA,OAAO,EAAE9B,EAAG;AAACtC,MAAAA,SAAS,EAAE+D,YAAa;AAAA9D,MAAAA,QAAA,EACzC4C,KAAAA;AAAK,KACD,CACT,CAAA;AAAA,GAAK,CAAC,CAAA;AAEV;;;AC1EO,IAAM8O,MAAM,gBAAGC,UAAU,CAAwB,UAAArT,IAAA,EAAuD+F,GAAG,EAAI;AAAA,EAAA,IAAA5F,KAAA,CAAA;AAAA,EAAA,IAAAoN,UAAA,GAAAvN,IAAA,CAA3DmC,KAAK;AAALA,IAAAA,KAAK,GAAAoL,UAAA,KAAG,KAAA,CAAA,GAAA,MAAM,GAAAA,UAAA;IAAAnN,SAAA,GAAAJ,IAAA,CAAEK,IAAI;AAAJA,IAAAA,IAAI,GAAAD,SAAA,KAAG,KAAA,CAAA,GAAA,QAAQ,GAAAA,SAAA;AAAKE,IAAAA,KAAK,GAAAC,6BAAA,CAAAP,IAAA,EAAAQ,WAAA,CAAA,CAAA;AAClG,EAAA,IAAMC,OAAO,GAAGC,IAAI,CAClB,2GAA2G,EAC3G;IAAE,UAAU,EAAEL,IAAI,KAAK,QAAA;AAAU,GAAA,EACjC;IAAE,WAAW,EAAEA,IAAI,KAAK,OAAA;AAAS,GAAA,CAClC,CAAA;EAED,IAAM8S,YAAY,GAAGzS,IAAI,CAAC,6EAA6E,GAAAP,KAAA,GAAAA,EAAAA,EAAAA,KAAA,CACpG,2BAA2B,CAAGE,GAAAA,IAAI,KAAK,QAAQ,EAAAF,KAAA,CAC/C,2BAA2B,CAAA,GAAGE,IAAI,KAAK,OAAO,EAAAF,KAAA,EAC/C,CAAA;AAEF,EAAA,oBACEqB,GAAA,CAAA,KAAA,EAAA;AAAKC,IAAAA,SAAS,EAAC,UAAU;AAACsE,IAAAA,GAAG,EAAEA,GAAI;AAAArE,IAAAA,QAAA,eACjCF,GAAA,CAAA,MAAA,EAAA;MAAM8R,QAAQ,EAAEhT,KAAK,CAACgT,QAAS;AAAA5R,MAAAA,QAAA,eAC7BwB,IAAA,CAAA,KAAA,EAAA;AAAKzB,QAAAA,SAAS,EAAEhB,OAAQ;AAAC2C,QAAAA,KAAK,EAAE;AAAEjB,UAAAA,KAAK,EAALA,KAAAA;SAAQ;QAAAT,QAAA,EAAA,cACxCF,GAAA,CAACsF,IAAI,EAAA;AAACjD,UAAAA,IAAI,EAAC,QAAQ;AAACW,UAAAA,KAAK,EAAC,QAAQ;AAACnE,UAAAA,IAAI,EAAC,QAAA;SACxC,CAAA,eAAAmB,GAAA,CAAA,OAAA,EAAA;AACEiE,UAAAA,IAAI,EAAC,MAAM;AACXpF,UAAAA,IAAI,EAAE,CAAE;UACRyD,KAAK,EAAExD,KAAK,CAACwD,KAAM;AACnBrC,UAAAA,SAAS,EAAE0R,YAAa;UACxB1C,WAAW,EAAEnQ,KAAK,CAACmQ,WAAY;UAC/BpM,QAAQ,EAAE/D,KAAK,CAAC+D,QAAAA;SAElB,CAAA,EAAC/D,KAAK,CAACiT,kBAAkB,IAAIjT,KAAK,CAACwD,KAAK,IAAIxD,KAAK,CAACwD,KAAK,CAAChD,MAAM,KAAK,CAAC,iBAClEU,GAAA,CAACoK,UAAU,EAAA;AACT5J,UAAAA,OAAO,EAAC,MAAM;AACdmH,UAAAA,IAAI,EAAC,OAAO;AACZ9I,UAAAA,IAAI,EAAEA,IAAI,KAAK,QAAQ,GAAG,OAAO,GAAG,QAAS;UAC7CmI,WAAW,EAAA,IAAA;UACXT,OAAO,EAAEzH,KAAK,CAACiT,kBAAAA;AAAmB,SAClC,CACH,CAAA;OACE,CAAA;KACD,CAAA;AACR,GAAK,CAAC,CAAA;AAEV,CAAC,EAAC;AACFH,MAAM,CAACI,WAAW,GAAG,QAAQ;;AC7CvB,SAAUnD,UAAUA,CAAArQ,IAAA,EAA+D;AAAA,EAAA,IAA5D0B,QAAQ,GAAA1B,IAAA,CAAR0B,QAAQ;IAAE+R,SAAS,GAAAzT,IAAA,CAATyT,SAAS;IAAEC,WAAW,GAAA1T,IAAA,CAAX0T,WAAW,CAAA;EAC3D,IAAMvL,WAAW,GAAGzH,MAAI,CACtB,iGAAiG,EACjGmC,YAAY,CAACuF,KAAK,EAClB;AACE,IAAA,qDAAqD,EAAEqL,SAAS;AAChE,IAAA,kDAAkD,EAAE,CAACA,SAAAA;AACtD,GAAA,CACF,CAAA;AAED,EAAA,oBACEjS,GAAA,CAAA,IAAA,EAAA;AAAIC,IAAAA,SAAS,EAAC,0BAA0B;AAACsG,IAAAA,OAAO,EAAE2L,WAAY;AAAAhS,IAAAA,QAAA,eAC5DwB,IAAA,CAAA,QAAA,EAAA;AAAQzB,MAAAA,SAAS,EAAE0G,WAAY;AAAC1C,MAAAA,IAAI,EAAC,QAAQ;AAAA/D,MAAAA,QAAA,gBAC3CF,GAAA,CAAA,MAAA,EAAA;AAAMC,QAAAA,SAAS,EAAC,WAAW;AAAAC,QAAAA,QAAA,EAAEA,QAAAA;AAAQ,OAAO,CAC5C,EAAC+R,SAAS,iBACRjS,GAAA,CAAA,KAAA,EAAA;AAAKC,QAAAA,SAAS,EAAC,2BAA2B;QAAAC,QAAA,eACxCF,GAAA,CAACsF,IAAI,EAAA;AAACjD,UAAAA,IAAI,EAAC,OAAO;AAACxD,UAAAA,IAAI,EAAC,OAAA;SAC1B,CAAA;AAAA,OAAK,CACN,CAAA;KACK,CAAA;AACV,GAAI,CAAC,CAAA;AAET;;ACnBgB,SAAAmQ,UAAUA,CAAAxQ,IAAA,EAAkE;AAAA,EAAA,IAA/DK,IAAI,GAAAL,IAAA,CAAJK,IAAI;IAAE2B,OAAO,GAAAhC,IAAA,CAAPgC,OAAO;IAAE2R,SAAS,GAAA3T,IAAA,CAAT2T,SAAS;IAAED,YAAW,GAAA1T,IAAA,CAAX0T,WAAW;IAAEE,eAAe,GAAA5T,IAAA,CAAf4T,eAAe,CAAA;AACjF,EAAA,IAAMzC,WAAW,GAAGzQ,MAAI,CACtB,gGAAgG,EAChG;AACE,IAAA,OAAO,EAAEL,IAAI,KAAK,SAAS,IAAIA,IAAI,KAAK,OAAO;IAC/C,OAAO,EAAEA,IAAI,KAAK,QAAQ;IAC1B,QAAQ,EAAEA,IAAI,KAAK,OAAO;IAC1B,uCAAuC,EAAE2B,OAAO,KAAK,SAAA;AACtD,GAAA,CACF,CAAA;EAED,IAAMoP,qBAAqB,GAAG1Q,MAAI,CAChC,oHAAoH,EACpHmC,YAAY,CAACuF,KAAK,CACnB,CAAA;AAED,EAAA,oBACElF,IAAA,CAAA,IAAA,EAAA;AAAIzB,IAAAA,SAAS,EAAE0P,WAAY;IAAAzP,QAAA,EAAA,cACzBF,GAAA,CAAC6O,UAAU,EAAA;MAACoD,SAAS,EAAEE,SAAS,KAAK,QAAS;MAACD,WAAW,EAAE,SAAbA,WAAWA,GAAA;QAAA,OAAQA,YAAW,CAAC,QAAQ,CAAC,CAAA;OAAC;AAAAhS,MAAAA,QAAA,EACtF,4CAAA;AACF,KAAY,CACZ,eAAAF,GAAA,CAAC6O,UAAU,EAAA;MAACoD,SAAS,EAAEE,SAAS,KAAK,SAAU;MAACD,WAAW,EAAE,SAAbA,WAAWA,GAAA;QAAA,OAAQA,YAAW,CAAC,SAAS,CAAC,CAAA;OAAC;AAAAhS,MAAAA,QAAA,EACxF,4CAAA;KACU,CACZ,EAACiS,SAAS,KAAK,IAAI,IAAIC,eAAe,iBACpCpS,GAAA,CAAA,IAAA,EAAA;AAAAE,MAAAA,QAAA,eACEF,GAAA,CAAA,QAAA,EAAA;AAAQC,QAAAA,SAAS,EAAE2P,qBAAsB;AAAC3L,QAAAA,IAAI,EAAC,QAAQ;AAACsC,QAAAA,OAAO,EAAE6L,eAAgB;AAAAlS,QAAAA,QAAA,EAC/E,0BAAA;OACM,CAAA;AACV,KAAI,CACL,CAAA;AAAA,GACC,CAAC,CAAA;AAET;;ACzBgB,SAAAmS,UAAUA,CAAA7T,IAAA,EAUlB;AAAA,EAAA,IAAAG,KAAA,CAAA;AAAA,EAAA,IAAAC,SAAA,GAAAJ,IAAA,CATNK,IAAI;AAAJA,IAAAA,IAAI,GAAAD,SAAA,KAAG,KAAA,CAAA,GAAA,QAAQ,GAAAA,SAAA;IAAA2B,YAAA,GAAA/B,IAAA,CACfgC,OAAO;AAAPA,IAAAA,OAAO,GAAAD,YAAA,KAAG,KAAA,CAAA,GAAA,SAAS,GAAAA,YAAA;IACnBI,KAAK,GAAAnC,IAAA,CAALmC,KAAK;IACLmC,KAAK,GAAAtE,IAAA,CAALsE,KAAK;IACLqP,SAAS,GAAA3T,IAAA,CAAT2T,SAAS;IAAAvP,eAAA,GAAApE,IAAA,CACTW,UAAU;AAAVA,IAAAA,UAAU,GAAAyD,eAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,eAAA;IAAA0P,cAAA,GAAA9T,IAAA,CAClByT,SAAS;AAATA,IAAAA,SAAS,GAAAK,cAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,cAAA;IACjBzP,QAAQ,GAAArE,IAAA,CAARqE,QAAQ;IACRuP,eAAe,GAAA5T,IAAA,CAAf4T,eAAe,CAAA;AAEf,EAAA,IAAAnP,SAAA,GAAgDC,QAAQ,CAAC,KAAK,CAAC;AAAxDkN,IAAAA,gBAAgB,GAAAnN,SAAA,CAAA,CAAA,CAAA;AAAE2L,IAAAA,mBAAmB,GAAA3L,SAAA,CAAA,CAAA,CAAA,CAAA;AAC5C,EAAA,IAAMgF,SAAS,GAAGC,MAAM,CAAiB,IAAI,CAAC,CAAA;EAC9C5D,eAAe,CAAC2D,SAAS,EAAE,YAAA;IAAA,OAAM2G,mBAAmB,CAAC,KAAK,CAAC,CAAA;GAAC,CAAA,CAAA;AAE5D,EAAA,IAAMyB,iBAAiB,GAAG,SAApBA,iBAAiBA,GAAA;IAAA,OAASzB,mBAAmB,CAAC,UAAC0B,IAAI,EAAA;AAAA,MAAA,OAAK,CAACA,IAAI,CAAA;KAAC,CAAA,CAAA;AAAA,GAAA,CAAA;AACpE,EAAA,IAAM5J,eAAe,GAAGpD,WAAW,CACjC,UAAChB,KAAgB,EAAI;AACnBO,IAAAA,QAAQ,IAARA,IAAAA,IAAAA,QAAQ,CAAGP,KAAK,CAAC,CAAA;IACjBsM,mBAAmB,CAAC,KAAK,CAAC,CAAA;AAC5B,GAAC,EACD,CAAC/L,QAAQ,CAAC,CACX,CAAA;AAED,EAAA,IAAMyE,cAAc,GAAGpI,MAAI,CAAC,mDAAmD,EAAE;AAC/E,IAAA,KAAK,EAAEL,IAAI,KAAK,SAAS,IAAIA,IAAI,KAAK,OAAO;IAC7C,KAAK,EAAEA,IAAI,KAAK,QAAQ;IACxB,MAAM,EAAEA,IAAI,KAAK,OAAO;AACxB,IAAA,oBAAoB,EAAEM,UAAAA;AACvB,GAAA,CAAC,CAAA;AAEF,EAAA,IAAMuJ,aAAa,GAAGxJ,MAAI,CACxB,qCAAqC,EACrC+B,YAAY,CAACT,OAAO,CAAC,CAACU,KAAK,EAC3BD,YAAY,CAACT,OAAO,CAAC,CAACW,MAAM,EAC5BF,YAAY,CAACT,OAAO,CAAC,CAACY,QAAQ,EAC9BC,YAAY,CAACC,MAAM,GAAA3C,KAAA,OAAAA,KAAA,CAEhBsC,YAAY,CAACT,OAAO,CAAC,CAACe,QAAQ,IAAG0Q,SAAS,EAAAtT,KAAA,CAC1CsC,YAAY,CAACT,OAAO,CAAC,CAACgB,IAAI,IAAG,CAACyQ,SAAS,EAAAtT,KAAA,CACxC,MAAM,CAAEE,GAAAA,IAAI,KAAK,SAAS,IAAIA,IAAI,KAAK,OAAO,EAAAF,KAAA,CAC9C,MAAM,CAAA,GAAEE,IAAI,KAAK,QAAQ,IAAIA,IAAI,KAAK,OAAO,EAAAF,KAAA,CAC7C,qBAAqB,CAAA,GAAEQ,UAAU,EAAAR,KAAA,EAEpC,CAAA;AAED,EAAA,IAAMqF,YAAY,GAAG9E,MAAI,CAAC,UAAU,EAAE;IACpC,2BAA2B,EAAEL,IAAI,KAAK,SAAS;AAC/C,IAAA,2BAA2B,EAAEA,IAAI,KAAK,OAAO,IAAIA,IAAI,KAAK,QAAQ;IAClE,2BAA2B,EAAEA,IAAI,KAAK,OAAO;IAC7C,MAAM,EAAEA,IAAI,KAAK,SAAS;IAC1B,MAAM,EAAEA,IAAI,KAAK,SAAA;AAClB,GAAA,CAAC,CAAA;AAEF,EAAA,oBACE6C,IAAA,CAAA,KAAA,EAAA;AAAKzB,IAAAA,SAAS,EAAEqH,cAAe;AAAC1F,IAAAA,KAAK,EAAE;AAAEjB,MAAAA,KAAK,EAALA,KAAAA;KAAQ;AAAC4D,IAAAA,GAAG,EAAE0D,SAAU;AAAA/H,IAAAA,QAAA,gBAC/DwB,IAAA,CAAA,QAAA,EAAA;AAAQzB,MAAAA,SAAS,EAAEyI,aAAc;AAACzE,MAAAA,IAAI,EAAC,QAAQ;AAACsC,MAAAA,OAAO,EAAE8J,iBAAkB;AAACjP,MAAAA,QAAQ,EAAEjC,UAAW;AAAAe,MAAAA,QAAA,gBAC/FF,GAAA,CAAA,KAAA,EAAA;AAAKC,QAAAA,SAAS,EAAE+D,YAAa;AAAA9D,QAAAA,QAAA,EAAE4C,KAAAA;OAAW,CAC1C,eAAA9C,GAAA,CAAA,KAAA,EAAA;AAAKC,QAAAA,SAAS,EAAC,2BAA2B;AAAAC,QAAAA,QAAA,EACvC+R,SAAS,gBACRjS,GAAA,CAACsF,IAAI,EAAA;AACHjD,UAAAA,IAAI,EAAE8P,SAAS,KAAK,QAAQ,GAAG,UAAU,GAAG,YAAa;AACzDtT,UAAAA,IAAI,EAAEA,IAAI,KAAK,OAAO,GAAG,QAAQ,GAAG,OAAA;AAAQ,SAC5C,CAAA,gBAEFmB,GAAA,CAACsF,IAAI,EAAA;AACHjD,UAAAA,IAAI,EAAE+N,gBAAgB,GAAG,gBAAgB,GAAG,kBAAmB;AAC/DvR,UAAAA,IAAI,EAAEA,IAAI,KAAK,OAAO,GAAG,QAAQ,GAAG,OAAA;SAAQ,CAAA;AAE/C,OACE,CACP,CAAA;KAAQ,CACR,EAACuR,gBAAgB,IAAI,CAACjR,UAAU,iBAC9Ba,GAAA,CAACgP,UAAU,EAAA;AACTnQ,MAAAA,IAAI,EAAEA,IAAK;AACX2B,MAAAA,OAAO,EAAEA,OAAQ;AACjB2R,MAAAA,SAAS,EAAEA,SAAU;AACrBD,MAAAA,WAAW,EAAExL,eAAgB;AAC7B0L,MAAAA,eAAe,EAAEA,eAAAA;AAAgB,KAAA,CAEpC,CAAA;AAAA,GACE,CAAC,CAAA;AAEV;;;IC9FaG,OAAO,GAAG,SAAVA,OAAOA,CAAA/T,IAAA,EAA+C;AAAA,EAAA,IAAAiC,eAAA,GAAAjC,IAAA,CAAzCkC,UAAU;AAAVA,IAAAA,UAAU,GAAAD,eAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,eAAA;AAAK3B,IAAAA,KAAK,GAAAC,6BAAA,CAAAP,IAAA,EAAAQ,WAAA,CAAA,CAAA;AACpD,EAAA,IAAMC,OAAO,GAAGC,IAAI,CAClB,4KAA4K,EAC5K;IACE,2BAA2B,EAAE,CAACwB,UAAU;IACxC,mDAAmD,EAAE,CAACA,UAAU;AAChE,IAAA,wBAAwB,EAAEA,UAAU;AACpC,IAAA,2EAA2E,EAAEA,UAAAA;AAC9E,GAAA,CACF,CAAA;AAED,EAAA,oBACEV,GAAA,CAAA,QAAA,EAAA;AACEiE,IAAAA,IAAI,EAAC,QAAQ;AACbuO,IAAAA,IAAI,EAAC,KAAK;AACV,IAAA,eAAA,EAAe9R,UAAW;AAC1BT,IAAAA,SAAS,EAAEhB,OAAQ;IACnBmC,QAAQ,EAAEtC,KAAK,CAACK,UAAW;IAC3BoH,OAAO,EAAE,SAATA,OAAOA,GAAA;AAAA,MAAA,OAAQzH,KAAK,CAACyH,OAAO,CAACzH,KAAK,CAACyD,EAAE,CAAC,CAAA;KAAC;IAAArC,QAAA,EAEtCpB,KAAK,CAACoB,QAAAA;AAAQ,GACT,CAAC,CAAA;AAEb;;AC1BgB,SAAAuS,GAAGA,CAAAjU,IAAA,EAAoB;AAAA,EAAA,IAAjB0B,QAAQ,GAAA1B,IAAA,CAAR0B,QAAQ,CAAA;AAC5B,EAAA,oBACEF,GAAA,CAAA,KAAA,EAAA;AACEwS,IAAAA,IAAI,EAAC,SAAS;AACdvS,IAAAA,SAAS,EAAC,4GAA4G;AAAAC,IAAAA,QAAA,EAErHA,QAAAA;AAAQ,GACN,CAAC,CAAA;AAEV,CAAA;AAEAuS,GAAG,CAACpS,IAAI,GAAGkS,OAAO;;ACVZ,SAAUG,SAASA,CAAAlU,IAAA,EAAiD;AAAA,EAAA,IAA9C0B,QAAQ,GAAA1B,IAAA,CAAR0B,QAAQ;IAAED,SAAS,GAAAzB,IAAA,CAATyB,SAAS;IAAA0S,aAAA,GAAAnU,IAAA,CAAEoU,QAAQ;AAARA,IAAAA,QAAQ,GAAAD,aAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,aAAA,CAAA;AAC/D,EAAA,IAAM1T,OAAO,GAAGC,MAAI,CAAC,4BAA4B,EAAE;AAAE,IAAA,4BAA4B,EAAE0T,QAAAA;GAAU,EAAE3S,SAAS,CAAC,CAAA;AAEzG,EAAA,oBAAOD,GAAA,CAAA,KAAA,EAAA;AAAKC,IAAAA,SAAS,EAAEhB,OAAQ;AAAAiB,IAAAA,QAAA,EAAEA,QAAAA;AAAQ,GAAM,CAAC,CAAA;AAClD;;ACNM,SAAU2S,QAAQA,CAAArU,IAAA,EAAsD;AAAA,EAAA,IAAnD0B,QAAQ,GAAA1B,IAAA,CAAR0B,QAAQ;IAAA4S,qBAAA,GAAAtU,IAAA,CAAEuU,wBAAwB;AAAxBA,IAAAA,wBAAwB,GAAAD,qBAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,qBAAA,CAAA;EACnE,IAAME,UAAU,GAAG9T,MAAI,CAAC,UAAU,EAAE6T,wBAAwB,IAAI,4BAA4B,CAAC,CAAA;AAE7F,EAAA,oBAAO/S,GAAA,CAAA,KAAA,EAAA;AAAKC,IAAAA,SAAS,EAAE+S,UAAW;AAAA9S,IAAAA,QAAA,EAAEA,QAAAA;AAAQ,GAAM,CAAC,CAAA;AACrD;;ACEgB,SAAA+S,KAAKA,CAAAzU,IAAA,EAOM;AAAA,EAAA,IANzBmC,KAAK,GAAAnC,IAAA,CAALmC,KAAK;IACLuS,YAAY,GAAA1U,IAAA,CAAZ0U,YAAY;IACZC,eAAe,GAAA3U,IAAA,CAAf2U,eAAe;IACfC,WAAW,GAAA5U,IAAA,CAAX4U,WAAW;IACXC,QAAQ,GAAA7U,IAAA,CAAR6U,QAAQ;IACRnT,QAAQ,GAAA1B,IAAA,CAAR0B,QAAQ,CAAA;AAER,EAAA,oBACEF,GAAA,CAAA,KAAA,EAAA;AACEC,IAAAA,SAAS,EAAC,MAAM;AAChB2B,IAAAA,KAAK,EAAE;AACLjB,MAAAA,KAAK,EAALA,KAAK;AACL2S,MAAAA,gBAAgB,EAAEJ,YAAY;AAC9BK,MAAAA,mBAAmB,EAAEJ,eAAe;AACpCK,MAAAA,eAAe,EAAEJ,WAAW;AAC5BK,MAAAA,YAAY,EAAEJ,QAAAA;KACd;AAAAnT,IAAAA,QAAA,EAEDA,QAAAA;AAAQ,GACN,CAAC,CAAA;AAEV,CAAA;AAEA+S,KAAK,CAACS,GAAG,GAAGb,QAAQ,CAAA;AACpBI,KAAK,CAACU,IAAI,GAAGjB,SAAS;;AC3Bf,IAAMkB,UAAU,GAAG,SAAbA,UAAUA,CAAApV,IAAA,EAA0C;AAAA,EAAA,IAApCwE,KAAK,GAAAxE,IAAA,CAALwE,KAAK;IAAExC,OAAO,GAAAhC,IAAA,CAAPgC,OAAO;IAAE+F,OAAO,GAAA/H,IAAA,CAAP+H,OAAO,CAAA;EAClD,IAAMsN,mBAAmB,GAAG3U,MAAI,CAC9B,kHAAkH,EAClHmC,YAAY,CAACC,MAAM,CACpB,CAAA;EAED,IAAMwS,iBAAiB,GAAG5U,MAAI,CAAC;AAC7B,IAAA,oBAAoB,EAAE8D,KAAK,KAAK,MAAM,IAAIxC,OAAO,KAAK,OAAO;IAC7D,wFAAwF,EAAEwC,KAAK,KAAK,MAAA;AACrG,GAAA,CAAC,CAAA;AAEF,EAAA,oBACEhD,GAAA,CAAA,QAAA,EAAA;AAAQiE,IAAAA,IAAI,EAAC,QAAQ;AAAChE,IAAAA,SAAS,EAAE4T,mBAAoB;AAACtN,IAAAA,OAAO,EAAEA,OAAQ;AAAArG,IAAAA,QAAA,eACrEF,GAAA,CAAA,KAAA,EAAA;AAAK8B,MAAAA,OAAO,EAAC,WAAW;AAACC,MAAAA,KAAK,EAAC,4BAA4B;AAAA7B,MAAAA,QAAA,eACzDF,GAAA,CAAA,MAAA,EAAA;AACEgC,QAAAA,QAAQ,EAAC,SAAS;AAClBC,QAAAA,QAAQ,EAAC,SAAS;AAClBC,QAAAA,CAAC,EAAC,qgBAAqgB;AACvgBjC,QAAAA,SAAS,EAAE6T,iBAAAA;OACN,CAAA;KACJ,CAAA;AACP,GAAQ,CAAC,CAAA;AAEb,CAAC;;ACpBK,SAAUC,GAAGA,CAAAvV,IAAA,EAA0F;AAAA,EAAA,IAAAG,KAAA,CAAA;AAAA,EAAA,IAAvF4D,EAAE,GAAA/D,IAAA,CAAF+D,EAAE;IAAErC,QAAQ,GAAA1B,IAAA,CAAR0B,QAAQ;IAAE8C,KAAK,GAAAxE,IAAA,CAALwE,KAAK;IAAAzC,YAAA,GAAA/B,IAAA,CAAEgC,OAAO;AAAPA,IAAAA,OAAO,GAAAD,YAAA,KAAG,KAAA,CAAA,GAAA,QAAQ,GAAAA,YAAA;IAAA3B,SAAA,GAAAJ,IAAA,CAAEK,IAAI;AAAJA,IAAAA,IAAI,GAAAD,SAAA,KAAG,KAAA,CAAA,GAAA,QAAQ,GAAAA,SAAA;IAAEoK,UAAU,GAAAxK,IAAA,CAAVwK,UAAU;IAAEgL,QAAQ,GAAAxV,IAAA,CAARwV,QAAQ,CAAA;EAClG,IAAM1M,cAAc,GAAGpI,MAAI,CAAC,MAAM,EAAE,cAAc,EAAE,gBAAgB,GAAAP,KAAA,OAAAA,KAAA,CACjEsV,SAAS,CAACjR,KAAK,CAAC,IAAGxC,OAAO,KAAK,QAAQ,EAAA7B,KAAA,CACvCuV,cAAc,CAAClR,KAAK,CAAC,CAAGxC,GAAAA,OAAO,KAAK,OAAO,EAAA7B,KAAA,CAC5C,oCAAoC,CAAA,GAAE,CAACqK,UAAU,IAAInK,IAAI,KAAK,SAAS,EAAAF,KAAA,CACvE,+BAA+B,CAAE,GAAA,CAACqK,UAAU,IAAInK,IAAI,KAAK,OAAO,EAAAF,KAAA,CAChE,oCAAoC,CAAE,GAAA,CAACqK,UAAU,IAAInK,IAAI,KAAK,QAAQ,EAAAF,KAAA,CACtE,oCAAoC,CAAEqK,GAAAA,UAAU,IAAInK,IAAI,KAAK,QAAQ,EAAAF,KAAA,CACrE,cAAc,CAAEqK,GAAAA,UAAU,EAAArK,KAAA,CAC1BwV,OAAO,GAAE,CAACnL,UAAU,EAAArK,KAAA,CACpB,aAAa,IAAE,CAACqK,UAAU,EAAArK,KAAA,CAC1B,WAAW,IAAEqK,UAAU,EAAArK,KAAA,EACvB,CAAA;AAEF,EAAA,oBACE+C,IAAA,CAAA,KAAA,EAAA;AAAKzB,IAAAA,SAAS,EAAEqH,cAAe;AAAApH,IAAAA,QAAA,GAC5BA,QAAQ,EACR8I,UAAU,gBAAGhJ,GAAA,CAAC4T,UAAU,EAAA;MAACrN,OAAO,EAAE,SAATA,OAAOA,GAAA;QAAA,OAAQyN,QAAQ,CAACzR,EAAE,CAAC,CAAA;OAAC;AAACS,MAAAA,KAAK,EAAEA,KAAM;AAACxC,MAAAA,OAAO,EAAEA,OAAAA;KAAW,CAAA,GAAG,IAAI,CAAA;AAAA,GAC7F,CAAC,CAAA;AAEV;;;ACtBO,IAAM4T,QAAQ,gBAAGvC,UAAU,CAChC,UAAArT,IAAA,EAA+F+F,GAAG,EAAI;AAAA,EAAA,IAAA5F,KAAA,CAAA;AAAA,EAAA,IAAAC,SAAA,GAAAJ,IAAA,CAAnGK,IAAI;AAAJA,IAAAA,IAAI,GAAAD,SAAA,KAAG,KAAA,CAAA,GAAA,QAAQ,GAAAA,SAAA;IAAAyV,gBAAA,GAAA7V,IAAA,CAAE8V,WAAW;AAAXA,IAAAA,WAAW,GAAAD,gBAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,gBAAA;IAAAE,YAAA,GAAA/V,IAAA,CAAEgW,OAAO;AAAPA,IAAAA,OAAO,GAAAD,YAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,YAAA;IAAAE,aAAA,GAAAjW,IAAA,CAAE4C,QAAQ;AAARA,IAAAA,QAAQ,GAAAqT,aAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,aAAA;AAAK3V,IAAAA,KAAK,GAAAC,6BAAA,CAAAP,IAAA,EAAAQ,WAAA,CAAA,CAAA;AAClF,EAAA,IAAMC,OAAO,GAAGC,IAAI,CAClB,gGAAgG,GAAAP,KAAA,GAAA;AAE9F,IAAA,qBAAqB,EAAE6V,OAAO,IAAI,CAACpT,QAAQ;AAC3C,IAAA,yBAAyB,EAAE,CAACA,QAAQ,IAAI,CAACoT,OAAO;IAChD,qGAAqG,EAAE,CAACA,OAAO;AAC/G,IAAA,iCAAiC,EAAEpT,QAAAA;AAAQ,GAAA,EAAAzC,KAAA,CAC1C,2CAA2C,CAAA,GAAGE,IAAI,KAAK,QAAQ,EAAAF,KAAA,CAC/D,qCAAqC,CAAA,GAAGE,IAAI,KAAK,OAAO,EAAAF,KAAA,CACzD,mBAAmB,CAAE6V,GAAAA,OAAO,EAAA7V,KAAA,CAC5B,aAAa,CAAA,GAAE,CAAC2V,WAAW,EAAA3V,KAAA,EAE9B,CAAA;AAED,EAAA,oBACEqB,GAAA,CAAA,KAAA,EAAA;AAAKC,IAAAA,SAAS,EAAC,MAAM;IAAAC,QAAA,eACnBF,GAAA,CAAA,UAAA,EAAA2B,QAAA,CAAA;AAAU4C,MAAAA,GAAG,EAAEA,GAAI;AAACtE,MAAAA,SAAS,EAAEhB,OAAAA;AAAQ,KAAA,EAAKH,KAAK,EAAA;AAAEsC,MAAAA,QAAQ,EAAEA,QAAS;AAACQ,MAAAA,KAAK,EAAE;QAAEyE,MAAM,EAAEvH,KAAK,CAACuH,MAAAA;AAAM,OAAA;KACtG,CAAA,CAAA;AAAA,GAAK,CAAC,CAAA;AAEV,CAAC,EACF;AACD+N,QAAQ,CAACpC,WAAW,GAAG,UAAU;;;ACtB1B,IAAM0C,SAAS,gBAAG7C,UAAU,CACjC,UAAArT,IAAA,EAA8F+F,GAAG,EAAI;AAAA,EAAA,IAAA5F,KAAA,CAAA;AAAA,EAAA,IAAAC,SAAA,GAAAJ,IAAA,CAAlGK,IAAI;AAAJA,IAAAA,IAAI,GAAAD,SAAA,KAAG,KAAA,CAAA,GAAA,QAAQ,GAAAA,SAAA;IAAA2V,YAAA,GAAA/V,IAAA,CAAEgW,OAAO;AAAPA,IAAAA,OAAO,GAAAD,YAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,YAAA;IAAAE,aAAA,GAAAjW,IAAA,CAAE4C,QAAQ;AAARA,IAAAA,QAAQ,GAAAqT,aAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,aAAA;IAAE1C,kBAAkB,GAAAvT,IAAA,CAAlBuT,kBAAkB;AAAKjT,IAAAA,KAAK,GAAAC,6BAAA,CAAAP,IAAA,EAAAQ,SAAA,CAAA,CAAA;AACjF,EAAA,IAAM2V,gBAAgB,GAAGzV,IAAI,CAAC,iEAAiE,EAAE;AAC/F,IAAA,mBAAmB,EAAE,CAACsV,OAAO,IAAI,CAACpT,QAAQ;AAC1C,IAAA,qBAAqB,EAAEoT,OAAO,IAAI,CAACpT,QAAQ;AAC3C,IAAA,yBAAyB,EAAE,CAACA,QAAQ,IAAI,CAACoT,OAAO;IAChD,uCAAuC,EAAE,CAACA,OAAO;IACjD,iCAAiC,EAAE,CAACA,OAAO;AAC3C,IAAA,iCAAiC,EAAEpT,QAAAA;AACpC,GAAA,CAAC,CAAA;AAEF,EAAA,IAAMuQ,YAAY,GAAGzS,IAAI,CACvB,2FAA2F,GAAAP,KAAA,GAAA,EAAA,EAAAA,KAAA,CAExF,mCAAmC,CAAGE,GAAAA,IAAI,KAAK,QAAQ,EAAAF,KAAA,CACvD,oCAAoC,CAAGE,GAAAA,IAAI,KAAK,OAAO,EAAAF,KAAA,CACxD,aAAa,IAAE,CAAC6V,OAAO,EAAA7V,KAAA,CACvB,mBAAmB,CAAA,GAAE6V,OAAO,EAAA7V,KAAA,EAE/B,CAAA;AAED,EAAA,oBACE+C,IAAA,CAAA,KAAA,EAAA;AAAKzB,IAAAA,SAAS,EAAE0U,gBAAiB;IAAAzU,QAAA,EAAA,cAC/BF,GAAA,CAAA,OAAA,EAAA2B,QAAA,CAAA;AAAO4C,MAAAA,GAAG,EAAEA,GAAI;AAAC1F,MAAAA,IAAI,EAAE,CAAE;AAACoB,MAAAA,SAAS,EAAE0R,YAAa;AAACvQ,MAAAA,QAAQ,EAAEA,QAAS;MAACyB,QAAQ,EAAE/D,KAAK,CAAC+D,QAAAA;AAAS,KAAA,EAAK/D,KAAK,CAC1G,CAAA,EAACiT,kBAAkB,IAAIjT,KAAK,CAACwD,KAAK,CAAChD,MAAM,KAAK,CAAC,IAAI,CAAC8B,QAAQ,iBAC1DpB,GAAA,CAAA,KAAA,EAAA;AAAKC,MAAAA,SAAS,EAAC,kBAAkB;MAAAC,QAAA,eAC/BF,GAAA,CAACoK,UAAU,EAAA;AAAC5J,QAAAA,OAAO,EAAC,MAAM;AAACmH,QAAAA,IAAI,EAAC,OAAO;AAAC9I,QAAAA,IAAI,EAAC,OAAO;QAACmI,WAAW,EAAA,IAAA;AAACT,QAAAA,OAAO,EAAEwL,kBAAAA;OAC5E,CAAA;AAAA,KAAK,CACN,CAAA;AAAA,GACE,CAAC,CAAA;AAEV,CAAC,EACF;AACD2C,SAAS,CAAC1C,WAAW,GAAG,WAAW;;ACtCnC,IAAM4C,eAAe,GAAG,IAAI,CAAA;AAWtB,SAAUC,KAAKA,CAAArW,IAAA,EAOb;AAAA,EAAA,IAAAG,KAAA,CAAA;AAAA,EAAA,IAAAiO,UAAA,GAAApO,IAAA,CANNqO,KAAK;AAALA,IAAAA,KAAK,GAAAD,UAAA,KAAG,KAAA,CAAA,GAAA,aAAa,GAAAA,UAAA;IAAAb,UAAA,GAAAvN,IAAA,CACrBmC,KAAK;AAALA,IAAAA,KAAK,GAAAoL,UAAA,KAAG,KAAA,CAAA,GAAA,MAAM,GAAAA,UAAA;IAAA+I,gBAAA,GAAAtW,IAAA,CACduW,WAAW;AAAXA,IAAAA,WAAW,GAAAD,gBAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,gBAAA;IAAAE,gBAAA,GAAAxW,IAAA,CACnByW,WAAW;AAAXA,IAAAA,WAAW,GAAAD,gBAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,gBAAA;IACnB9U,QAAQ,GAAA1B,IAAA,CAAR0B,QAAQ;IACRgV,YAAY,GAAA1W,IAAA,CAAZ0W,YAAY,CAAA;AAEZ,EAAA,IAAAjS,SAAA,GAAoCC,QAAQ,CAAC,KAAK,CAAC;AAA5CiS,IAAAA,UAAU,GAAAlS,SAAA,CAAA,CAAA,CAAA;AAAEmS,IAAAA,aAAa,GAAAnS,SAAA,CAAA,CAAA,CAAA,CAAA;AAEhC,EAAA,IAAMoS,WAAW,GAAG/R,WAAW,CAAC,YAAK;AACnC,IAAA,IAAI2R,WAAW,EAAE;MACfG,aAAa,CAAC,IAAI,CAAC,CAAA;AACrB,KAAC,MAAM;AACLF,MAAAA,YAAY,EAAE,CAAA;AAChB,KAAA;AACF,GAAC,EAAE,CAACD,WAAW,EAAEC,YAAY,CAAC,CAAC,CAAA;AAE/B,EAAA,IAAMI,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAI7R,CAAiC,EAAA;AAAA,IAAA,OAC3D8R,MAAM,CAACC,gBAAgB,CAAC/R,CAAC,CAACgS,aAAa,CAAC,CAACC,OAAO,KAAK,GAAG,IAAIR,YAAY,EAAE,CAAA;AAAA,GAAA,CAAA;EAE5E,IAAM5N,cAAc,GAAGpI,MAAI,CAAC,+EAA+E,GAAAP,KAAA,GAAAA,EAAAA,EAAAA,KAAA,CACxG,kBAAkB,CAAGsW,GAAAA,WAAW,IAAI,CAACE,UAAU,EAAAxW,KAAA,CAC/C,6BAA6B,CAAA,GAAGsW,WAAW,IAAIE,UAAU,EAAAxW,KAAA,EAC1D,CAAA;AACF,EAAA,IAAMmO,WAAW,GAAG5N,MAAI,CAAC,mBAAmB,EAAE;IAC5C,qBAAqB,EAAE2N,KAAK,KAAK,SAAS;IAC1C,mBAAmB,EAAEA,KAAK,KAAK,OAAO;IACtC,qBAAqB,EAAEA,KAAK,KAAK,SAAS;IAC1C,kBAAkB,EAAEA,KAAK,KAAK,aAAA;AAC/B,GAAA,CAAC,CAAA;AACF,EAAA,IAAM8I,WAAW,GAAGzW,MAAI,CAAC,0CAA0C,EAAE;IACnE,mBAAmB,EAAE2N,KAAK,KAAK,OAAO;IACtC,aAAa,EAAEA,KAAK,KAAK,SAAS,IAAIA,KAAK,KAAK,SAAS,IAAIA,KAAK,KAAK,aAAA;AACxE,GAAA,CAAC,CAAA;AAEF,EAAA,IAAME,QAAQ,GAAG;AACfE,IAAAA,OAAO,EAAE,gBAAgB;AACzB2I,IAAAA,KAAK,EAAE,WAAW;AAClB1I,IAAAA,OAAO,EAAE,SAAS;AAClBC,IAAAA,WAAW,EAAE,oBAAA;GACL,CAAA;AAEVzI,EAAAA,SAAS,CAAC,YAAK;AACb,IAAA,IAAMmR,KAAK,GAAGN,MAAM,CAACO,UAAU,CAAC,YAAK;AACnC,MAAA,IAAIf,WAAW,EAAE;QACfK,aAAa,CAAC,IAAI,CAAC,CAAA;AACrB,OAAA;KACD,EAAER,eAAe,CAAC,CAAA;IAEnB,OAAO,YAAA;AAAA,MAAA,OAAMW,MAAM,CAACQ,YAAY,CAACF,KAAK,CAAC,CAAA;AAAA,KAAA,CAAA;AACzC,GAAC,EAAE,CAACd,WAAW,CAAC,CAAC,CAAA;AAEjB,EAAA,oBACErT,IAAA,CAAA,KAAA,EAAA;AAAKzB,IAAAA,SAAS,EAAEqH,cAAe;AAAC1F,IAAAA,KAAK,EAAE;AAAEjB,MAAAA,KAAK,EAALA,KAAAA;KAAQ;AAACqV,IAAAA,cAAc,EAAEV,kBAAmB;AAAApV,IAAAA,QAAA,gBACnFF,GAAA,CAAA,KAAA,EAAA;AAAKC,MAAAA,SAAS,EAAE6M,WAAY;MAAA5M,QAAA,eAC1BF,GAAA,CAACsF,IAAI,EAAA;QAACjD,IAAI,EAAE0K,QAAQ,CAACF,KAAK,CAAA;OAC5B,CAAA;KAAK,CACL,eAAA7M,GAAA,CAAA,GAAA,EAAA;AAAGC,MAAAA,SAAS,EAAE0V,WAAY;AAAAzV,MAAAA,QAAA,EAAEA,QAAAA;AAAQ,KAAI,CACxC,eAAAF,GAAA,CAACoK,UAAU,EAAA;AAACzC,MAAAA,IAAI,EAAC,OAAO;AAAC9I,MAAAA,IAAI,EAAC,QAAQ;AAAC2B,MAAAA,OAAO,EAAC,MAAM;AAAC+F,MAAAA,OAAO,EAAE8O,WAAY;MAACrO,WAAW,EAAA,IAAA;AAAA,KACzF,CAAA,CAAA;AAAA,GAAK,CAAC,CAAA;AAEV;;ACnEA,IAAMiP,YAAY,gBAAGhQ,aAAa,CAAqB,EAAwB,CAAC,CAAA;IAEnEiQ,aAAa,GAAG,SAAhBA,aAAaA,CAAA1X,IAAA,EAAuC;AAAA,EAAA,IAAjC0B,QAAQ,GAAA1B,IAAA,CAAR0B,QAAQ,CAAA;AACtC,EAAA,IAAA+C,SAAA,GAA4CC,QAAQ,CAAC,KAAK,CAAC;AAApDiT,IAAAA,cAAc,GAAAlT,SAAA,CAAA,CAAA,CAAA;AAAEmT,IAAAA,iBAAiB,GAAAnT,SAAA,CAAA,CAAA,CAAA,CAAA;AACxC,EAAA,IAAA8E,UAAA,GAA4B7E,QAAQ,CAAuD,EAAE,CAAC;AAAvFmT,IAAAA,MAAM,GAAAtO,UAAA,CAAA,CAAA,CAAA;AAAEuO,IAAAA,SAAS,GAAAvO,UAAA,CAAA,CAAA,CAAA,CAAA;AAExB,EAAA,IAAMwO,QAAQ,GAAGjT,WAAW,CAAC,UAAAkT,KAAA,EAAqC;AAAA,IAAA,IAAlCC,OAAO,GAAAD,KAAA,CAAPC,OAAO;MAAE5J,KAAK,GAAA2J,KAAA,CAAL3J,KAAK,CAAA;IAC5CyJ,SAAS,CAAC,UAAChG,IAAI,EAAA;MAAA,OAAAe,EAAAA,CAAAA,MAAA,CAASf,IAAI,EAAE,CAAA;AAAE/N,QAAAA,EAAE,EAAE6J,IAAI,CAACsK,KAAK,CAACtK,IAAI,CAACuK,MAAM,EAAE,GAAG,MAAM,CAAC;AAAEF,QAAAA,OAAO,EAAPA,OAAO;AAAE5J,QAAAA,KAAK,EAALA,KAAAA;OAAO,CAAA,CAAA,CAAA;AAAA,KAAC,CAAC,CAAA;GAC3F,EAAE,EAAE,CAAC,CAAA;AAEN,EAAA,IAAM+J,WAAW,GAAGtT,WAAW,CAAC,UAACf,EAAU,EAAI;IAC7C+T,SAAS,CAAC,UAAChG,IAAI,EAAA;AAAA,MAAA,OAAKA,IAAI,CAACuG,MAAM,CAAC,UAACC,QAAQ,EAAA;AAAA,QAAA,OAAKA,QAAQ,CAACvU,EAAE,KAAKA,EAAE,CAAA;OAAC,CAAA,CAAA;KAAC,CAAA,CAAA;GACnE,EAAE,EAAE,CAAC,CAAA;AAENmC,EAAAA,SAAS,CAAC,YAAK;IACb0R,iBAAiB,CAAC,IAAI,CAAC,CAAA;GACxB,EAAE,EAAE,CAAC,CAAA;AAEN,EAAA,oBACE1U,IAAA,CAACuU,YAAY,CAACtN,QAAQ,EAAA;AAACrG,IAAAA,KAAK,EAAE;AAAEiU,MAAAA,QAAQ,EAARA,QAAQ;AAAEK,MAAAA,WAAW,EAAXA,WAAAA;KAAc;AAAA1W,IAAAA,QAAA,GACrDA,QAAQ,EACRiW,cAAc,iBACbvN,YAAY,eACV5I,GAAA,CAAA,KAAA,EAAA;AAAKC,MAAAA,SAAS,EAAC,qGAAqG;AAAAC,MAAAA,QAAA,EACjHmW,MAAM,CAAC3H,GAAG,CAAC,UAAAqI,KAAA,EAAA;AAAA,QAAA,IAAGxU,EAAE,GAAAwU,KAAA,CAAFxU,EAAE;UAAEkU,OAAO,GAAAM,KAAA,CAAPN,OAAO;UAAE5J,KAAK,GAAAkK,KAAA,CAALlK,KAAK,CAAA;QAAA,oBAC/B7M,GAAA,CAAC6U,KAAK,EAAA;AAAUhI,UAAAA,KAAK,EAAEA,KAAM;UAACkI,WAAW,EAAA,IAAA;UAACE,WAAW,EAAA,IAAA;UAACC,YAAY,EAAE,SAAdA,YAAYA,GAAA;YAAA,OAAQ0B,WAAW,CAACrU,EAAE,CAAC,CAAA;WAAC;AAAC5B,UAAAA,KAAK,EAAE,GAAI;AAAAT,UAAAA,QAAA,EACnGuW,OAAAA;AAAO,SAAA,EADElU,EAEL,CAAC,CAAA;OACT,CAAA;AAAC,KACC,CAAC,EACN4C,QAAQ,CAACoH,IAAI,CACd,CAAA;AAAA,GACkB,CAAC,CAAA;AAE5B,EAAC;IAEYyK,QAAQ,GAAG,SAAXA,QAAQA,GAAQ;EAC3B,OAAOvQ,UAAU,CAACwP,YAAY,CAAC,CAAA;AACjC;;ACvCM,SAAUgB,MAAMA,CAAAzY,IAAA,EAQd;AAAA,EAAA,IAPN+D,EAAE,GAAA/D,IAAA,CAAF+D,EAAE;IAAA3D,SAAA,GAAAJ,IAAA,CACFK,IAAI;AAAJA,IAAAA,IAAI,GAAAD,SAAA,KAAG,KAAA,CAAA,GAAA,QAAQ,GAAAA,SAAA;IACf6D,SAAS,GAAAjE,IAAA,CAATiE,SAAS;IACTI,QAAQ,GAAArE,IAAA,CAARqE,QAAQ;IACRC,KAAK,GAAAtE,IAAA,CAALsE,KAAK;IAAAoU,kBAAA,GAAA1Y,IAAA,CACL2Y,aAAa;AAAbA,IAAAA,aAAa,GAAAD,kBAAA,KAAG,KAAA,CAAA,GAAA,OAAO,GAAAA,kBAAA;IAAAtU,eAAA,GAAApE,IAAA,CACvBW,UAAU;AAAVA,IAAAA,UAAU,GAAAyD,eAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,eAAA,CAAA;AAElB,EAAA,IAAM5B,WAAW,GAAG9B,MAAI,CAAC,yCAAyC,EAAE;IAClE,eAAe,EAAEC,UAAU,IAAIsD,SAAS;AACxC,IAAA,eAAe,EAAEtD,UAAU,IAAI,CAACsD,SAAS;AACzC,IAAA,wCAAwC,EAAE,CAACtD,UAAU,IAAIsD,SAAS;AAClE,IAAA,4CAA4C,EAAE,CAACtD,UAAU,IAAI,CAACsD,SAAS;IACvE,kBAAkB,EAAE5D,IAAI,KAAK,OAAO;IACpC,eAAe,EAAEA,IAAI,KAAK,QAAA;AAC3B,GAAA,CAAC,CAAA;EACF,IAAM8S,YAAY,GAAGzS,MAAI,CACvB,uCAAuC,EACvCC,UAAU,GAAG,oBAAoB,GAAG,gBAAgB,CACrD,CAAA;AACD,EAAA,IAAM0E,gBAAgB,GAAG3E,MAAI,CAAC,6BAA6B,EAAE;IAC3D,aAAa,EAAEL,IAAI,KAAK,OAAO;IAC/B,SAAS,EAAEA,IAAI,KAAK,QAAQ;AAC5B,IAAA,SAAS,EAAE4D,SAAAA;AACZ,GAAA,CAAC,CAAA;AACF,EAAA,IAAMuB,YAAY,GAAG9E,MAAI,CAAC,WAAW,EAAE;IACrC,MAAM,EAAEiY,aAAa,KAAK,MAAM;IAChC,MAAM,EAAEA,aAAa,KAAK,OAAO;IACjC,2BAA2B,EAAEtY,IAAI,KAAK,OAAO;IAC7C,2BAA2B,EAAEA,IAAI,KAAK,QAAQ;AAC9C,IAAA,wDAAwD,EAAEM,UAAU;AACpE,IAAA,4BAA4B,EAAE,CAACA,UAAAA;AAChC,GAAA,CAAC,CAAA;AAEF,EAAA,oBACEuC,IAAA,CAAA,KAAA,EAAA;AAAKzB,IAAAA,SAAS,EAAC,4CAA4C;IAAAC,QAAA,EAAA,CACxD4C,KAAK,IAAI,IAAI,IAAIqU,aAAa,KAAK,MAAM,iBACxCnX,GAAA,CAAA,OAAA,EAAA;AAAOqE,MAAAA,OAAO,EAAE9B,EAAG;AAACtC,MAAAA,SAAS,EAAE+D,YAAa;AAAA9D,MAAAA,QAAA,EACzC4C,KAAAA;KACI,CACR,eACD9C,GAAA,CAAA,OAAA,EAAA;AACEC,MAAAA,SAAS,EAAE0R,YAAa;AACxB1N,MAAAA,IAAI,EAAC,UAAU;AACf5B,MAAAA,IAAI,EAAEE,EAAG;AACTA,MAAAA,EAAE,EAAEA,EAAG;AACP2B,MAAAA,OAAO,EAAEzB,SAAU;AACnBI,MAAAA,QAAQ,EAAEA,QAAS;AACnBzB,MAAAA,QAAQ,EAAEjC,UAAAA;KAEZ,CAAA,eAAAa,GAAA,CAAA,KAAA,EAAA;AAAKC,MAAAA,SAAS,EAAEe,WAAY;AAAAd,MAAAA,QAAA,eAC1BF,GAAA,CAAA,MAAA,EAAA;AAAMC,QAAAA,SAAS,EAAE4D,gBAAAA;OACnB,CAAA;KAAK,CACL,EAACf,KAAK,IAAI,IAAI,IAAIqU,aAAa,KAAK,OAAO,iBACzCnX,GAAA,CAAA,OAAA,EAAA;AAAOqE,MAAAA,OAAO,EAAE9B,EAAG;AAACtC,MAAAA,SAAS,EAAE+D,YAAa;AAAA9D,MAAAA,QAAA,EACzC4C,KAAAA;AAAK,KACD,CACR,CAAA;AAAA,GACE,CAAC,CAAA;AAEV;;ACrEO,IAAMsU,UAAU,GAAG,SAAbA,UAAUA,GAAQ;AAC7B,EAAA,IAAMC,iBAAiB,GAAG/T,WAAW,CACnC,UAACgU,IAMA,EAAI;AAAA,IAAA,IAAAC,cAAA,CAAA;AACH,IAAA,IAAMC,MAAM,GAAoB;AAC9B1H,MAAAA,QAAQ,EAAE,MAAM;AAChBnP,MAAAA,KAAK,EAAE,MAAM;AACb6H,MAAAA,IAAI,EAAE,KAAK;AACXhB,MAAAA,GAAG,EAAE,KAAK;AACVC,MAAAA,MAAM,EAAE,KAAK;AACbgQ,MAAAA,UAAU,EAAE,GAAG;AACfC,MAAAA,UAAU,EAAE,GAAA;KACb,CAAA;IACDF,MAAM,CAAC1H,QAAQ,GAAA,CAAAyH,cAAA,GAAGD,IAAI,CAACxH,QAAQ,KAAA,IAAA,GAAAyH,cAAA,GAAI,MAAM,CAAA;IAEzC,IAAMI,OAAO,GAAGL,IAAI,CAACM,WAAW,KAAK,OAAO,GAAG,EAAE,GAAG,EAAE,CAAA;IACtD,IAAMC,sBAAsB,GAAGP,IAAI,CAAClP,UAAU,CAACG,KAAK,GAAG,CAAC+O,IAAI,CAAClP,UAAU,CAACG,KAAK,GAAG+O,IAAI,CAAClP,UAAU,CAACI,IAAI,IAAI,CAAC,CAAA;AACzG,IAAA,IAAMsP,UAAU,GAAGR,IAAI,CAAClP,UAAU,CAACI,IAAI,CAAA;AACvC,IAAA,IAAMuP,WAAW,GAAGT,IAAI,CAAClP,UAAU,CAACG,KAAK,CAAA;AACzC,IAAA,IAAMyP,WAAW,GAAGV,IAAI,CAAClP,UAAU,CAACzH,KAAK,CAAA;IAEzC,QAAQ2W,IAAI,CAAClQ,eAAe;AAC1B,MAAA,KAAK,QAAQ;AACXoQ,QAAAA,MAAM,CAAChP,IAAI,GAAMqP,sBAAsB,GAAI,IAAA,CAAA;QAC3CL,MAAM,CAACC,UAAU,GAAG,MAAM,CAAA;AAC1B,QAAA,MAAA;AACF,MAAA,KAAK,MAAM;AACTD,QAAAA,MAAM,CAAChP,IAAI,GAAMsP,UAAU,GAAGH,OAAO,GAAI,IAAA,CAAA;AACzCH,QAAAA,MAAM,CAACC,UAAU,GAAMO,WAAW,GAAG,CAAC,GAAI,IAAA,CAAA;AAC1C,QAAA,MAAA;AACF,MAAA,KAAK,OAAO;AACVR,QAAAA,MAAM,CAAChP,IAAI,GAAMuP,WAAW,GAAGJ,OAAO,GAAI,IAAA,CAAA;AAC1CH,QAAAA,MAAM,CAACC,UAAU,GAAA,GAAA,GAAOO,WAAW,GAAG,CAAC,GAAI,IAAA,CAAA;AAC3C,QAAA,MAAA;AACJ,KAAA;IAEA,QAAQV,IAAI,CAACpQ,gBAAgB;AAC3B,MAAA,KAAK,QAAQ;AACXsQ,QAAAA,MAAM,CAAChQ,GAAG,GAAM8P,IAAI,CAAClP,UAAU,CAACZ,GAAG,GAAG8P,IAAI,CAAClP,UAAU,CAAC/B,MAAM,GAAGkP,MAAM,CAAC0C,OAAO,GAAI,IAAA,CAAA;QACjFT,MAAM,CAAC/P,MAAM,GAAG,OAAO,CAAA;AACvB,QAAA,MAAA;AACF,MAAA,KAAK,KAAK;AACR+P,QAAAA,MAAM,CAAChQ,GAAG,GAAM8P,IAAI,CAAClP,UAAU,CAACZ,GAAG,GAAG+N,MAAM,CAAC0C,OAAO,GAAI,IAAA,CAAA;QACxDT,MAAM,CAAC/P,MAAM,GAAG,OAAO,CAAA;QACvB+P,MAAM,CAACE,UAAU,GAAG,OAAO,CAAA;AAC3B,QAAA,MAAA;AACJ,KAAA;AAEA,IAAA,OAAOF,MAAM,CAAA;GACd,EACD,EAAE,CACH,CAAA;EAED,OAAO;AACLH,IAAAA,iBAAiB,EAAjBA,iBAAAA;GACD,CAAA;AACH,CAAC;;ACxDM,IAAMa,QAAQ,GAAG,SAAXA,QAAQA,CAAIpZ,KAAY,EAAI;AACvC,EAAA,IAAMqZ,WAAW,GAAGjZ,MAAI,CAAC,mCAAmC,EAAE;AAC5D,IAAA,YAAY,EAAEJ,KAAK,CAACoI,gBAAgB,KAAK,QAAQ;AACjD,IAAA,UAAU,EAAEpI,KAAK,CAACoI,gBAAgB,KAAK,QAAQ;IAC/C,QAAQ,EAAEpI,KAAK,CAACoI,gBAAgB,KAAK,QAAQ,IAAIpI,KAAK,CAACD,IAAI,KAAK,OAAO;IACvE,QAAQ,EAAEC,KAAK,CAACoI,gBAAgB,KAAK,QAAQ,IAAIpI,KAAK,CAACD,IAAI,KAAK,OAAO;IACvE,WAAW,EAAEC,KAAK,CAACoI,gBAAgB,KAAK,QAAQ,IAAIpI,KAAK,CAACD,IAAI,KAAK,OAAO;IAC1E,WAAW,EAAEC,KAAK,CAACoI,gBAAgB,KAAK,QAAQ,IAAIpI,KAAK,CAACD,IAAI,KAAK,OAAO;IAC1E,SAAS,EAAEC,KAAK,CAACsI,eAAe,KAAK,OAAO,IAAItI,KAAK,CAACD,IAAI,KAAK,OAAO;IACtE,SAAS,EAAEC,KAAK,CAACsI,eAAe,KAAK,OAAO,IAAItI,KAAK,CAACD,IAAI,KAAK,OAAO;IACtE,QAAQ,EAAEC,KAAK,CAACsI,eAAe,KAAK,MAAM,IAAItI,KAAK,CAACD,IAAI,KAAK,OAAO;IACpE,QAAQ,EAAEC,KAAK,CAACsI,eAAe,KAAK,MAAM,IAAItI,KAAK,CAACD,IAAI,KAAK,OAAO;IACpE,yBAAyB,EAAEC,KAAK,CAACsI,eAAe,KAAK,QAAQ,IAAItI,KAAK,CAACD,IAAI,KAAK,OAAO;IACvF,yBAAyB,EAAEC,KAAK,CAACsI,eAAe,KAAK,QAAQ,IAAItI,KAAK,CAACD,IAAI,KAAK,OAAA;AACjF,GAAA,CAAC,CAAA;AAEF,EAAA,IAAIC,KAAK,CAACD,IAAI,KAAK,OAAO,EAAE;AAC1B,IAAA,oBACEmB,GAAA,CAAA,KAAA,EAAA;AAAKC,MAAAA,SAAS,EAAEkY,WAAY;AAACxX,MAAAA,KAAK,EAAC,GAAG;AAAC0F,MAAAA,MAAM,EAAC,GAAG;AAACvE,MAAAA,OAAO,EAAC,SAAS;AAACC,MAAAA,KAAK,EAAC,4BAA4B;AAAA7B,MAAAA,QAAA,eACpGF,GAAA,CAAA,MAAA,EAAA;AAAMkC,QAAAA,CAAC,EAAC,iBAAA;OACV,CAAA;AAAA,KAAK,CAAC,CAAA;AAEV,GAAC,MAAM;AACL,IAAA,oBACElC,GAAA,CAAA,KAAA,EAAA;AACEC,MAAAA,SAAS,EAAEkY,WAAY;AACvBxX,MAAAA,KAAK,EAAC,IAAI;AACV0F,MAAAA,MAAM,EAAC,GAAG;AACVvE,MAAAA,OAAO,EAAC,UAAU;AAClBgJ,MAAAA,IAAI,EAAC,MAAM;AACX/I,MAAAA,KAAK,EAAC,4BAA4B;AAAA7B,MAAAA,QAAA,eAElCF,GAAA,CAAA,MAAA,EAAA;AAAMkC,QAAAA,CAAC,EAAC,kBAAA;OACV,CAAA;AAAA,KAAK,CAAC,CAAA;AAEV,GAAA;AACF,CAAC;;ACxCM,IAAMkW,cAAc,GAAG,SAAjBA,cAAcA,CAAA5Z,IAAA,EAgBtB;AAAA,EAAA,IAfH6Z,OAAO,GAAA7Z,IAAA,CAAP6Z,OAAO;IACPjR,eAAe,GAAA5I,IAAA,CAAf4I,eAAe;IACfF,gBAAgB,GAAA1I,IAAA,CAAhB0I,gBAAgB;IAChBrI,IAAI,GAAAL,IAAA,CAAJK,IAAI;IACJyZ,eAAe,GAAA9Z,IAAA,CAAf8Z,eAAe;IACfxI,QAAQ,GAAAtR,IAAA,CAARsR,QAAQ;IAAAyI,aAAA,GAAA/Z,IAAA,CACRga,QAAQ;AAARA,IAAAA,QAAQ,GAAAD,aAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,aAAA,CAAA;AAUhB,EAAA,IAAME,qBAAqB,GAAGvZ,MAAI,CAAC,gCAAgC,EAAE;AACnE,IAAA,OAAO,EAAE,CAACsZ,QAAQ,IAAItR,gBAAgB,KAAK,KAAK;AAChD,IAAA,UAAU,EAAE,CAACsR,QAAQ,IAAItR,gBAAgB,KAAK,QAAQ;IACtD,eAAe,EAAEE,eAAe,KAAK,MAAM;IAC3C,gBAAgB,EAAEA,eAAe,KAAK,QAAQ;IAC9C,aAAa,EAAEA,eAAe,KAAK,OAAO;IAC1C,UAAU,EAAEvI,IAAI,KAAK,OAAO;IAC5B,UAAU,EAAEA,IAAI,KAAK,OAAA;AACtB,GAAA,CAAC,CAAA;AAEF,EAAA,IAAM6Z,kBAAkB,GAAGxZ,MAAI,CAC7B,uFAAuF,EACvF;IACE,0BAA0B,EAAEL,IAAI,KAAK,OAAO;IAC5C,0BAA0B,EAAEA,IAAI,KAAK,QAAQ;IAC7C,kBAAkB,EAAEA,IAAI,KAAK,OAAO;IACpC,WAAW,EAAEA,IAAI,KAAK,QAAQ;AAC9B,IAAA,UAAU,EAAEqI,gBAAgB,KAAK,QAAQ,IAAIrI,IAAI,KAAK,OAAO;AAC7D,IAAA,UAAU,EAAEqI,gBAAgB,KAAK,QAAQ,IAAIrI,IAAI,KAAK,QAAQ;AAC9D,IAAA,OAAO,EAAEqI,gBAAgB,KAAK,QAAQ,IAAIrI,IAAI,KAAK,OAAO;AAC1D,IAAA,OAAO,EAAEqI,gBAAgB,KAAK,QAAQ,IAAIrI,IAAI,KAAK,QAAA;AACpD,GAAA,CACF,CAAA;AAED,EAAA,IAAM8Z,mBAAmB,GAAGH,QAAQ,GAAA7W,QAAA,CAAA;AAE9BiX,IAAAA,SAAS,iBAAeN,eAAe,CAACb,UAAU,GAAKa,IAAAA,GAAAA,eAAe,CAACZ,UAAU,GAAA,GAAA;GAC9EY,EAAAA,eAAe,CAEpB,GAAA,EAAE,CAAA;AAEN,EAAA,oBACEtY,GAAA,CAAA,KAAA,EAAA;AAAKC,IAAAA,SAAS,EAAEwY,qBAAsB;AAAC7W,IAAAA,KAAK,EAAE+W,mBAAoB;AAAAzY,IAAAA,QAAA,eAChEwB,IAAA,CAAA,KAAA,EAAA;AACEzB,MAAAA,SAAS,EAAEyY,kBAAmB;AAC9B9W,MAAAA,KAAK,EAAE;AACLkO,QAAAA,QAAQ,EAARA,QAAAA;OACA;AAAA5P,MAAAA,QAAA,EAEDmY,CAAAA,OAAO,eACRrY,GAAA,CAACkY,QAAQ,EAAA;AAACrZ,QAAAA,IAAI,EAAEA,IAAK;AAACqI,QAAAA,gBAAgB,EAAEA,gBAAiB;AAACE,QAAAA,eAAe,EAAEA,eAAAA;AAAgB,OAC7F,CAAA,CAAA;KAAK,CAAA;AACP,GAAK,CAAC,CAAA;AAEV,CAAC;;ACjDK,SAAUyR,OAAOA,CAAAra,IAAA,EASI;AAAA,EAAA,IARzB0B,QAAQ,GAAA1B,IAAA,CAAR0B,QAAQ;IACRmY,OAAO,GAAA7Z,IAAA,CAAP6Z,OAAO;IAAAzZ,SAAA,GAAAJ,IAAA,CACPK,IAAI;AAAJA,IAAAA,IAAI,GAAAD,SAAA,KAAG,KAAA,CAAA,GAAA,OAAO,GAAAA,SAAA;IACdkR,QAAQ,GAAAtR,IAAA,CAARsR,QAAQ;IAAA7I,qBAAA,GAAAzI,IAAA,CACR0I,gBAAgB;AAAhBA,IAAAA,gBAAgB,GAAAD,qBAAA,KAAG,KAAA,CAAA,GAAA,QAAQ,GAAAA,qBAAA;IAAAE,oBAAA,GAAA3I,IAAA,CAC3B4I,eAAe;AAAfA,IAAAA,eAAe,GAAAD,oBAAA,KAAG,KAAA,CAAA,GAAA,QAAQ,GAAAA,oBAAA;IAAA2R,oBAAA,GAAAta,IAAA,CAC1Bua,eAAe;AAAfA,IAAAA,eAAe,GAAAD,oBAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,oBAAA;IACvBE,YAAY,GAAAxa,IAAA,CAAZwa,YAAY,CAAA;AAEZ,EAAA,IAAAC,WAAA,GAA8B7B,UAAU,EAAE;IAAlCC,iBAAiB,GAAA4B,WAAA,CAAjB5B,iBAAiB,CAAA;AAEzB,EAAA,IAAApU,SAAA,GAAkCC,QAAQ,CAAC,KAAK,CAAC;AAA1CgD,IAAAA,SAAS,GAAAjD,SAAA,CAAA,CAAA,CAAA;AAAEkD,IAAAA,YAAY,GAAAlD,SAAA,CAAA,CAAA,CAAA,CAAA;EAC9B,IAAA8E,UAAA,GAA8C7E,QAAQ,CAAkB;AACtE4M,MAAAA,QAAQ,EAAE,MAAM;AAChBnP,MAAAA,KAAK,EAAE,MAAM;AACb6H,MAAAA,IAAI,EAAE,KAAK;AACXhB,MAAAA,GAAG,EAAE,KAAK;AACVC,MAAAA,MAAM,EAAE,KAAK;AACbgQ,MAAAA,UAAU,EAAE,GAAG;AACfC,MAAAA,UAAU,EAAE,GAAA;AACb,KAAA,CAAC;AARKY,IAAAA,eAAe,GAAAvQ,UAAA,CAAA,CAAA,CAAA;AAAEmR,IAAAA,kBAAkB,GAAAnR,UAAA,CAAA,CAAA,CAAA,CAAA;AAU1C,EAAA,IAAME,SAAS,GAAGC,MAAM,CAAiB,IAAI,CAAC,CAAA;AAE9C,EAAA,IAAMiR,sBAAsB,GAAG7V,WAAW,CAAC,YAAK;AAC9C,IAAA,IAAIyV,eAAe,EAAE;AACnB,MAAA,OAAA;AACF,KAAA;IACA5S,YAAY,CAAC,IAAI,CAAC,CAAA;AACpB,GAAC,EAAE,CAAC4S,eAAe,CAAC,CAAC,CAAA;AAErB,EAAA,IAAMK,qBAAqB,GAAG9V,WAAW,CAAC,YAAK;IAC7C6C,YAAY,CAAC,KAAK,CAAC,CAAA;GACpB,EAAE,EAAE,CAAC,CAAA;AAENzB,EAAAA,SAAS,CAAC,YAAK;AAAA,IAAA,IAAA2U,kBAAA,CAAA;AACb,IAAA,IAAIpR,SAAS,CAAClD,OAAO,KAAK,IAAI,EAAE,OAAA;AAEhC,IAAA,IAAMqD,UAAU,GAAA,CAAAiR,kBAAA,GAAGpR,SAAS,CAAClD,OAAO,KAAA,IAAA,GAAA,KAAA,CAAA,GAAjBsU,kBAAA,CAAmBhR,qBAAqB,EAAE,CAAA;IAC7D,IAAMqC,QAAQ,GAAG2M,iBAAiB,CAAC;AAAEjP,MAAAA,UAAU,EAAVA,UAAU;AAAE0H,MAAAA,QAAQ,EAARA,QAAQ;AAAE5I,MAAAA,gBAAgB,EAAhBA,gBAAgB;AAAEE,MAAAA,eAAe,EAAfA,eAAe;AAAEwQ,MAAAA,WAAW,EAAE/Y,IAAAA;AAAI,KAAE,CAAC,CAAA;IAElHqa,kBAAkB,CAACxO,QAAQ,CAAC,CAAA;AAC9B,GAAC,EAAE,CAAC2M,iBAAiB,EAAEjQ,eAAe,EAAE0I,QAAQ,EAAEjR,IAAI,EAAEqI,gBAAgB,CAAC,CAAC,CAAA;AAE1E,EAAA,oBACExF,IAAA,CAAA,KAAA,EAAA;AACE6C,IAAAA,GAAG,EAAE0D,SAAU;AACfhI,IAAAA,SAAS,EAAC,2CAA2C;AACrDkE,IAAAA,WAAW,EAAEgV,sBAAuB;AACpC/U,IAAAA,YAAY,EAAEgV,qBAAsB;IAAAlZ,QAAA,EAAA,CAEnCA,QAAQ,EACRgG,SAAS,KACP8S,YAAY,IAAI,IAAI,gBACnBhZ,GAAA,CAACoY,cAAc,EAAA;AACbC,MAAAA,OAAO,EAAEA,OAAQ;AACjBxZ,MAAAA,IAAI,EAAEA,IAAK;AACXiR,MAAAA,QAAQ,EAAEA,QAAS;AACnB5I,MAAAA,gBAAgB,EAAEA,gBAAiB;AACnCE,MAAAA,eAAe,EAAEA,eAAgB;AACjCkR,MAAAA,eAAe,EAAEA,eAAAA;AAAgB,KACjC,CAAA,kBAEF1P,YAAY,eACV5I,GAAA,CAACoY,cAAc,EAAA;MACbI,QAAQ,EAAA,IAAA;AACRH,MAAAA,OAAO,EAAEA,OAAQ;AACjBxZ,MAAAA,IAAI,EAAEA,IAAK;AACXiR,MAAAA,QAAQ,EAAEA,QAAS;AACnB5I,MAAAA,gBAAgB,EAAEA,gBAAiB;AACnCE,MAAAA,eAAe,EAAEA,eAAgB;AACjCkR,MAAAA,eAAe,EAAEA,eAAAA;AAAgB,KAAA,CACjC,EACFU,YAAY,CACb,CACF,CAAC,CAAA;AAAA,GACD,CAAC,CAAA;AAEV;;;;"}
|