@sanity/ui 3.0.0-static.2 → 3.0.0-static.21
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/README.md +7 -6
- package/bin/{ui.js → sanity-ui.cjs} +1 -1
- package/dist/_chunks-cjs/_visual-editing.cjs +2488 -0
- package/dist/_chunks-cjs/_visual-editing.cjs.map +1 -0
- package/dist/_chunks-cjs/{refractor.js → refractor.cjs} +1 -2
- package/dist/_chunks-cjs/refractor.cjs.map +1 -0
- package/dist/_chunks-es/_visual-editing.js +2500 -0
- package/dist/_chunks-es/_visual-editing.js.map +1 -0
- package/dist/_chunks-es/{refractor.mjs → refractor.js} +1 -2
- package/dist/_chunks-es/refractor.js.map +1 -0
- package/dist/_visual-editing.cjs +30 -0
- package/dist/_visual-editing.cjs.map +1 -0
- package/dist/_visual-editing.d.cts +893 -0
- package/dist/_visual-editing.d.ts +503 -416
- package/dist/_visual-editing.js +29 -30
- package/dist/_visual-editing.js.map +1 -1
- package/dist/css.cjs +598 -0
- package/dist/css.cjs.map +1 -0
- package/dist/css.d.cts +14884 -0
- package/dist/css.d.ts +14379 -1630
- package/dist/css.js +480 -4594
- package/dist/css.js.map +1 -1
- package/dist/index.cjs +2222 -0
- package/dist/index.cjs.map +1 -0
- package/dist/{index.d.mts → index.d.cts} +1284 -961
- package/dist/index.d.ts +1284 -961
- package/dist/index.js +1270 -592
- package/dist/index.js.map +1 -1
- package/dist/{theme.mjs → theme.cjs} +2843 -2571
- package/dist/theme.cjs.map +1 -0
- package/dist/{theme.d.mts → theme.d.cts} +331 -311
- package/dist/theme.d.ts +331 -311
- package/dist/theme.js +2843 -2569
- package/dist/theme.js.map +1 -1
- package/dist/ui.css +22564 -0
- package/exports/_visual-editing.ts +0 -1
- package/package.json +84 -79
- package/src/cli/buildCommand.ts +3 -41
- package/src/cli/index.ts +2 -14
- package/src/core/_compat/helpers.ts +72 -0
- package/src/core/_compat/index.ts +1 -6
- package/src/core/_compat/styles/_responsive.ts +1 -1
- package/src/core/_compat/theme/theme.test.tsx +4 -5
- package/src/core/_compat/theme/themeColorProvider.tsx +4 -10
- package/src/core/_compat/theme/themeContext.ts +5 -5
- package/src/core/_compat/theme/themeProvider.tsx +19 -13
- package/src/core/_compat/theme/types.ts +2 -4
- package/src/core/_compat/theme/useRootTheme.ts +2 -4
- package/src/core/_compat/theme/useTheme.ts +3 -7
- package/src/core/_compat/types.ts +0 -73
- package/src/core/components/autocomplete/__workshop__/async.tsx +6 -6
- package/src/core/components/autocomplete/__workshop__/constrainedHeight.tsx +11 -18
- package/src/core/components/autocomplete/__workshop__/custom.tsx +21 -20
- package/src/core/components/autocomplete/__workshop__/example.tsx +17 -17
- package/src/core/components/autocomplete/__workshop__/focusAndBlur.tsx +5 -5
- package/src/core/components/autocomplete/__workshop__/fullscreen.tsx +57 -59
- package/src/core/components/autocomplete/autocomplete.tsx +106 -140
- package/src/core/components/autocomplete/autocompleteOption.tsx +1 -1
- package/src/core/components/autocomplete/autocompleteReducer.ts +1 -1
- package/src/core/components/autocomplete/constants.ts +1 -1
- package/src/core/components/autocomplete/types.ts +4 -9
- package/src/core/components/breadcrumbs/__workshop__/example.tsx +2 -3
- package/src/core/components/breadcrumbs/breadcrumbs.tsx +32 -28
- package/src/core/components/dialog/__workshop__/activate.tsx +4 -4
- package/src/core/components/dialog/__workshop__/autoFocus.tsx +2 -2
- package/src/core/components/dialog/__workshop__/onScroll.tsx +16 -4
- package/src/core/components/dialog/__workshop__/position.tsx +4 -4
- package/src/core/components/dialog/__workshop__/props.tsx +7 -7
- package/src/core/components/dialog/__workshop__/wrapped.tsx +2 -2
- package/src/core/components/dialog/dialog.tsx +104 -304
- package/src/core/components/dialog/dialogCard.tsx +190 -0
- package/src/core/components/dialog/dialogContext.ts +5 -3
- package/src/core/components/dialog/dialogProvider.tsx +6 -7
- package/src/core/components/dialog/isTargetWithinScope.ts +14 -0
- package/src/core/components/dialog/useDialog.ts +1 -1
- package/src/core/components/hotkeys/hotkeys.tsx +41 -27
- package/src/core/components/menu/__workshop__/asComponent.tsx +6 -6
- package/src/core/components/menu/__workshop__/closableMenuButton.tsx +5 -4
- package/src/core/components/menu/__workshop__/constrainedInBoundary.tsx +2 -2
- package/src/core/components/menu/__workshop__/customMenuItem.tsx +3 -3
- package/src/core/components/menu/__workshop__/disableFocusOnClose.tsx +1 -1
- package/src/core/components/menu/__workshop__/groups.tsx +2 -2
- package/src/core/components/menu/__workshop__/menuButton.tsx +4 -4
- package/src/core/components/menu/__workshop__/menuGroupRight.tsx +1 -1
- package/src/core/components/menu/__workshop__/nestedMenu.tsx +1 -1
- package/src/core/components/menu/__workshop__/onCloseMenuButton.tsx +13 -4
- package/src/core/components/menu/__workshop__/selectedItem.tsx +2 -2
- package/src/core/components/menu/__workshop__/tones.tsx +3 -3
- package/src/core/components/menu/__workshop__/withoutArrow.tsx +1 -1
- package/src/core/components/menu/menu.test.tsx +6 -7
- package/src/core/components/menu/menu.tsx +27 -35
- package/src/core/components/menu/menuButton.tsx +18 -24
- package/src/core/components/menu/menuContext.ts +1 -1
- package/src/core/components/menu/menuDivider.tsx +25 -15
- package/src/core/components/menu/menuGroup.tsx +39 -33
- package/src/core/components/menu/menuItem.tsx +58 -46
- package/src/core/components/menu/useMenu.ts +1 -1
- package/src/core/components/menu/useMenuController.ts +4 -4
- package/src/core/components/skeleton/__workshop__/delay.tsx +3 -3
- package/src/core/components/skeleton/__workshop__/skeleton.tsx +4 -4
- package/src/core/components/skeleton/codeSkeleton.tsx +49 -0
- package/src/core/components/skeleton/headingSkeleton.tsx +48 -0
- package/src/core/components/skeleton/index.ts +3 -0
- package/src/core/components/skeleton/labelSkeleton.tsx +47 -0
- package/src/core/components/skeleton/skeleton.tsx +37 -18
- package/src/core/components/skeleton/textSkeleton.tsx +29 -112
- package/src/core/components/tab/__workshop__/example.tsx +2 -2
- package/src/core/components/tab/tab.tsx +28 -26
- package/src/core/components/tab/tabList.tsx +49 -28
- package/src/core/components/tab/tabPanel.tsx +29 -22
- package/src/core/components/toast/__workshop__/hook.tsx +1 -1
- package/src/core/components/toast/__workshop__/toast.tsx +5 -5
- package/src/core/components/toast/toast.test.tsx +5 -5
- package/src/core/components/toast/toast.tsx +30 -57
- package/src/core/components/toast/toastContext.ts +1 -1
- package/src/core/components/toast/toastLayer.tsx +29 -13
- package/src/core/components/toast/toastProvider.tsx +5 -10
- package/src/core/components/toast/types.ts +3 -7
- package/src/core/components/toast/useToast.ts +2 -4
- package/src/core/components/tree/__workshop__/basic.perf.ts +1 -1
- package/src/core/components/tree/__workshop__/basic.tsx +1 -1
- package/src/core/components/tree/__workshop__/tabFromElement.tsx +1 -1
- package/src/core/components/tree/helpers.ts +1 -1
- package/src/core/components/tree/tree.tsx +196 -191
- package/src/core/components/tree/treeContext.ts +1 -1
- package/src/core/components/tree/treeGroup.tsx +24 -6
- package/src/core/components/tree/treeItem.tsx +44 -34
- package/src/core/components/tree/types.ts +2 -2
- package/src/core/components/tree/useTree.ts +1 -1
- package/src/core/constants.ts +6 -0
- package/src/core/helpers/props.ts +18 -0
- package/src/core/hooks/index.ts +1 -0
- package/src/core/hooks/useArrayProp.ts +1 -4
- package/src/core/hooks/useClickOutside.test.tsx +15 -16
- package/src/core/hooks/useClickOutside.ts +2 -6
- package/src/core/hooks/useClickOutsideEvent.test.tsx +4 -5
- package/src/core/hooks/useClickOutsideEvent.ts +3 -9
- package/src/core/hooks/useDelayed.test.ts +6 -7
- package/src/core/hooks/useDelayedState.ts +1 -1
- package/src/core/hooks/useElementRect/__workshop__/example.tsx +1 -1
- package/src/core/hooks/useElementSize.ts +1 -1
- package/src/core/hooks/useForwardedRef.ts +1 -1
- package/src/core/hooks/useMatchMedia.ts +13 -31
- package/src/core/hooks/useMediaIndex/__workshop__/test.tsx +1 -1
- package/src/core/hooks/useMediaIndex/useMediaIndex.test.tsx +3 -18
- package/src/core/hooks/useMediaIndex/useMediaIndex.ts +12 -12
- package/src/core/hooks/usePrefersDark.hydration.test.tsx +4 -4
- package/src/core/hooks/usePrefersDark.test.tsx +1 -0
- package/src/core/hooks/usePrefersReducedMotion.hydration.test.tsx +4 -4
- package/src/core/hooks/usePrefersReducedMotion.test.tsx +1 -0
- package/src/core/hooks/useResponsiveProp.ts +28 -0
- package/src/core/index.ts +0 -1
- package/src/core/lib/isArray.ts +3 -0
- package/src/core/middleware/origin.ts +1 -1
- package/src/core/primitives/_selectable/selectable.tsx +33 -24
- package/src/core/primitives/avatar/__workshop__/asButton.tsx +2 -2
- package/src/core/primitives/avatar/__workshop__/stack.tsx +2 -2
- package/src/core/primitives/avatar/__workshop__/withinButton.tsx +2 -2
- package/src/core/primitives/avatar/__workshop__/withinMenuItem.tsx +1 -1
- package/src/core/primitives/avatar/avatar.tsx +43 -48
- package/src/core/primitives/avatar/avatarCounter.tsx +46 -39
- package/src/core/primitives/avatar/avatarStack.tsx +44 -45
- package/src/core/primitives/avatar/types.ts +3 -3
- package/src/core/primitives/badge/__workshop__/props.tsx +6 -17
- package/src/core/primitives/badge/__workshop__/tones.tsx +1 -6
- package/src/core/primitives/badge/badge.test.tsx +2 -3
- package/src/core/primitives/badge/badge.tsx +34 -40
- package/src/core/primitives/badge/types.ts +2 -1
- package/src/core/primitives/box/__workshop__/props.tsx +2 -2
- package/src/core/primitives/box/__workshop__/responsive.tsx +2 -1
- package/src/core/primitives/box/box.tsx +153 -88
- package/src/core/primitives/button/__workshop__/custom.tsx +19 -42
- package/src/core/primitives/button/__workshop__/customIcons.tsx +3 -3
- package/src/core/primitives/button/__workshop__/disabled.tsx +9 -9
- package/src/core/primitives/button/__workshop__/props.tsx +19 -22
- package/src/core/primitives/button/__workshop__/sanityUploadButton.tsx +3 -3
- package/src/core/primitives/button/__workshop__/stacked.tsx +15 -16
- package/src/core/primitives/button/__workshop__/uploadButton.tsx +2 -1
- package/src/core/primitives/button/button.test.tsx +3 -18
- package/src/core/primitives/button/button.tsx +67 -76
- package/src/core/primitives/card/__workshop__/asButton.tsx +14 -14
- package/src/core/primitives/card/__workshop__/asComponent.tsx +3 -3
- package/src/core/primitives/card/__workshop__/checkered.tsx +1 -1
- package/src/core/primitives/card/__workshop__/index.ts +1 -1
- package/src/core/primitives/card/__workshop__/interactive.tsx +3 -4
- package/src/core/primitives/card/__workshop__/listNavigation.tsx +3 -3
- package/src/core/primitives/card/__workshop__/props.tsx +14 -17
- package/src/core/primitives/card/__workshop__/selected.tsx +10 -41
- package/src/core/primitives/card/__workshop__/{allTones.tsx → tones.tsx} +3 -3
- package/src/core/primitives/card/card.tsx +52 -48
- package/src/core/primitives/card/cardContext.ts +10 -0
- package/src/core/primitives/card/cardProvider.tsx +27 -0
- package/src/core/primitives/card/index.ts +2 -0
- package/src/core/primitives/card/types.ts +19 -3
- package/src/core/primitives/card/useCard.ts +9 -0
- package/src/core/primitives/checkbox/__workshop__/props.tsx +6 -4
- package/src/core/primitives/checkbox/__workshop__/tones.tsx +11 -20
- package/src/core/primitives/checkbox/checkbox.tsx +30 -23
- package/src/core/primitives/code/__workshop__/opticalAlignment.tsx +1 -1
- package/src/core/primitives/code/__workshop__/props.tsx +4 -7
- package/src/core/primitives/code/code.tsx +27 -30
- package/src/core/primitives/code/refractor.tsx +0 -2
- package/src/core/primitives/container/__workshop__/example.tsx +2 -2
- package/src/core/primitives/container/container.tsx +27 -25
- package/src/core/primitives/flex/__workshop__/example.tsx +2 -2
- package/src/core/primitives/flex/flex.tsx +44 -17
- package/src/core/primitives/grid/grid.tsx +20 -17
- package/src/core/primitives/heading/__workshop__/opticalAlignment.tsx +2 -2
- package/src/core/primitives/heading/__workshop__/plain.tsx +12 -15
- package/src/core/primitives/heading/heading.tsx +51 -33
- package/src/core/primitives/inline/__workshop__/plain.tsx +2 -5
- package/src/core/primitives/inline/inline.tsx +46 -27
- package/src/core/primitives/inline/types.ts +1 -0
- package/src/core/primitives/kbd/kbd.tsx +28 -28
- package/src/core/primitives/label/__workshop__/plain.tsx +8 -17
- package/src/core/primitives/label/label.tsx +49 -39
- package/src/core/primitives/popover/__workshop__/AlignedStory.tsx +6 -6
- package/src/core/primitives/popover/__workshop__/MatchReferenceWidthStory.tsx +3 -3
- package/src/core/primitives/popover/__workshop__/OpenOnMountStory.tsx +1 -1
- package/src/core/primitives/popover/__workshop__/PlainStory.tsx +3 -3
- package/src/core/primitives/popover/__workshop__/RecursiveStory.tsx +3 -4
- package/src/core/primitives/popover/__workshop__/SidePanelStory.tsx +10 -6
- package/src/core/primitives/popover/__workshop__/TestStory.tsx +5 -4
- package/src/core/primitives/popover/constants.ts +1 -1
- package/src/core/primitives/popover/floating-ui/size.ts +2 -2
- package/src/core/primitives/popover/helpers.ts +1 -1
- package/src/core/primitives/popover/popover.tsx +299 -335
- package/src/core/primitives/popover/popoverLayer.tsx +147 -0
- package/src/core/primitives/popover/types.ts +3 -2
- package/src/core/primitives/radio/__workshop__/example.tsx +3 -3
- package/src/core/primitives/radio/__workshop__/plain.tsx +3 -3
- package/src/core/primitives/radio/radio.tsx +34 -19
- package/src/core/primitives/select/__workshop__/plain.tsx +15 -6
- package/src/core/primitives/select/__workshop__/readOnly.tsx +1 -1
- package/src/core/primitives/select/select.tsx +28 -28
- package/src/core/primitives/spinner/__workshop__/Props.tsx +4 -5
- package/src/core/primitives/spinner/animatedSpinnerIcon.tsx +7 -9
- package/src/core/primitives/spinner/spinner.tsx +27 -15
- package/src/core/primitives/stack/__workshop__/plain.tsx +2 -2
- package/src/core/primitives/stack/stack.tsx +44 -20
- package/src/core/primitives/switch/switch.tsx +31 -17
- package/src/core/primitives/text/__workshop__/colored.tsx +6 -6
- package/src/core/primitives/text/__workshop__/example.tsx +9 -20
- package/src/core/primitives/text/__workshop__/opticalAlignment.tsx +1 -1
- package/src/core/primitives/text/text.tsx +52 -44
- package/src/core/primitives/textArea/__workshop__/plain.tsx +44 -33
- package/src/core/primitives/textArea/textArea.tsx +47 -22
- package/src/core/primitives/textInput/__workshop__/customValidity.tsx +2 -2
- package/src/core/primitives/textInput/__workshop__/plain.tsx +36 -30
- package/src/core/primitives/textInput/__workshop__/states.tsx +5 -5
- package/src/core/primitives/textInput/__workshop__/tones.tsx +2 -2
- package/src/core/primitives/textInput/__workshop__/typed.tsx +2 -2
- package/src/core/primitives/textInput/textInput.tsx +80 -106
- package/src/core/primitives/tooltip/__workshop__/customPortal.tsx +5 -5
- package/src/core/primitives/tooltip/__workshop__/overflowingBoundary.tsx +2 -2
- package/src/core/primitives/tooltip/__workshop__/props.tsx +9 -8
- package/src/core/primitives/tooltip/__workshop__/resizableBoundary.tsx +1 -1
- package/src/core/primitives/tooltip/constants.ts +1 -1
- package/src/core/primitives/tooltip/tooltip.test.tsx +61 -60
- package/src/core/primitives/tooltip/tooltip.tsx +107 -90
- package/src/core/primitives/tooltip/tooltipDelayGroup/tooltipDelayGroupContext.tsx +1 -1
- package/src/core/primitives/tooltip/tooltipDelayGroup/tooltipDelayGroupProvider.tsx +3 -5
- package/src/core/primitives/tooltip/tooltipDelayGroup/useTooltipDelayGroup.ts +1 -1
- package/src/core/primitives/tooltip/tooltipLayer.tsx +105 -0
- package/src/core/primitives/types.ts +19 -30
- package/src/core/types/avatar.ts +3 -6
- package/src/core/types/badge.ts +2 -4
- package/src/core/types/button.ts +2 -4
- package/src/core/types/card.ts +2 -4
- package/src/core/types/dialog.ts +1 -3
- package/src/core/types/flex.ts +3 -3
- package/src/core/types/props.ts +20 -10
- package/src/core/types/selectable.ts +1 -1
- package/src/core/utils/arrow/arrow.tsx +43 -28
- package/src/core/utils/boundaryElement/boundaryElement.test.tsx +5 -5
- package/src/core/utils/boundaryElement/boundaryElementContext.ts +1 -1
- package/src/core/utils/boundaryElement/boundaryElementProvider.tsx +4 -10
- package/src/core/utils/boundaryElement/types.ts +1 -3
- package/src/core/utils/boundaryElement/useBoundaryElement.ts +2 -4
- package/src/core/utils/elementQuery/__workshop__/customMedia.tsx +15 -8
- package/src/core/utils/elementQuery/elementQuery.tsx +41 -19
- package/src/core/utils/errorBoundary.tsx +6 -4
- package/src/core/utils/index.ts +0 -1
- package/src/core/utils/layer/__workshop__/multipleRoots.tsx +5 -5
- package/src/core/utils/layer/__workshop__/nested.tsx +3 -3
- package/src/core/utils/layer/__workshop__/responsiveZOffset.tsx +9 -5
- package/src/core/utils/layer/getLayerContext.test.ts +3 -1
- package/src/core/utils/layer/getLayerContext.ts +1 -1
- package/src/core/utils/layer/layer.test.tsx +5 -5
- package/src/core/utils/layer/layer.tsx +25 -95
- package/src/core/utils/layer/layerCard.tsx +90 -0
- package/src/core/utils/layer/layerContext.ts +1 -1
- package/src/core/utils/layer/layerProvider.tsx +20 -17
- package/src/core/utils/layer/useLayer.ts +2 -4
- package/src/core/utils/portal/__workshop__/named.tsx +3 -3
- package/src/core/utils/portal/portal.test.tsx +5 -5
- package/src/core/utils/portal/{portal.ts → portal.tsx} +17 -11
- package/src/core/utils/portal/portalContext.ts +1 -1
- package/src/core/utils/portal/portalProvider.tsx +4 -10
- package/src/core/utils/portal/types.ts +1 -3
- package/src/core/utils/portal/usePortal.ts +2 -4
- package/src/core/utils/srOnly/srOnly.tsx +25 -27
- package/src/core/utils/virtualList/__workshop__/infiniteList.tsx +1 -1
- package/src/core/utils/virtualList/virtualList.tsx +71 -55
- package/src/css/__theme/index.ts +16 -0
- package/src/css/__theme/lib/contract/buildVarContract.ts +78 -0
- package/src/css/__theme/lib/contract/index.ts +4 -0
- package/src/css/__theme/lib/contract/types.ts +17 -0
- package/src/css/__theme/resolveTheme.ts +865 -0
- package/src/css/_assign.ts +3 -0
- package/src/css/_composeClassNames.ts +12 -0
- package/src/css/_fromEntries.ts +3 -0
- package/src/css/_getClassNames.ts +9 -0
- package/src/css/_responsiveClassName.ts +45 -0
- package/src/css/_responsiveStyle.css.ts +34 -0
- package/src/css/_style.css.ts +9 -0
- package/src/css/components/breadcrumbs/breadcrumbs.css.ts +6 -0
- package/src/css/components/breadcrumbs/breadcrumbs.ts +5 -3
- package/src/css/components/dialog/dialog.css.ts +81 -0
- package/src/css/components/dialog/dialog.ts +20 -11
- package/src/css/components/index.ts +6 -0
- package/src/css/components/menu/menu.css.ts +14 -0
- package/src/css/components/menu/menu.ts +8 -5
- package/src/css/components/skeleton/skeleton.css.ts +132 -0
- package/src/css/components/skeleton/skeleton.ts +14 -9
- package/src/css/components/skeleton/types.ts +13 -5
- package/src/css/components/toast/toast.css.ts +16 -0
- package/src/css/components/toast/toast.ts +5 -15
- package/src/css/components/tree/tree.css.ts +65 -0
- package/src/css/components/tree/tree.ts +5 -3
- package/src/css/constants.ts +10 -0
- package/src/css/defaultTheme.css.ts +468 -0
- package/src/css/index.ts +12 -38
- package/src/css/layers.css.ts +9 -0
- package/src/css/primitives/_arrow/_arrow.css.ts +68 -0
- package/src/css/primitives/_arrow/_arrow.ts +18 -6
- package/src/css/primitives/_input/_input.css.ts +258 -0
- package/src/css/primitives/_input/input.ts +17 -14
- package/src/css/primitives/_input/types.ts +3 -3
- package/src/css/primitives/_selectable/_selectable.css.ts +121 -0
- package/src/css/primitives/_selectable/selectable.ts +5 -5
- package/src/css/primitives/_selectable/types.ts +3 -2
- package/src/css/primitives/avatar/avatar.css.ts +175 -0
- package/src/css/primitives/avatar/avatar.ts +52 -11
- package/src/css/primitives/avatar/types.ts +5 -3
- package/src/css/primitives/badge/badge.css.ts +26 -0
- package/src/css/primitives/badge/badge.ts +4 -4
- package/src/css/primitives/badge/types.ts +5 -4
- package/src/css/primitives/box/box.css.ts +19 -0
- package/src/css/primitives/box/box.ts +52 -16
- package/src/css/primitives/box/types.ts +46 -22
- package/src/css/primitives/button/button.css.ts +285 -0
- package/src/css/primitives/button/button.ts +15 -33
- package/src/css/primitives/button/index.ts +1 -0
- package/src/css/primitives/button/types.ts +19 -0
- package/src/css/primitives/card/card.css.ts +365 -0
- package/src/css/primitives/card/card.ts +9 -12
- package/src/css/primitives/card/types.ts +4 -6
- package/src/css/primitives/checkbox/checkbox.css.ts +193 -0
- package/src/css/primitives/checkbox/checkbox.ts +13 -5
- package/src/css/primitives/code/code.css.ts +271 -0
- package/src/css/primitives/code/code.ts +13 -5
- package/src/css/primitives/code/types.ts +4 -3
- package/src/css/primitives/container/container.css.ts +4 -0
- package/src/css/primitives/container/container.ts +12 -4
- package/src/css/primitives/container/types.ts +4 -2
- package/src/css/primitives/heading/heading.css.ts +85 -0
- package/src/css/primitives/heading/heading.ts +13 -11
- package/src/css/primitives/heading/types.ts +6 -3
- package/src/css/primitives/index.ts +24 -0
- package/src/css/primitives/kbd/kbd.css.ts +16 -0
- package/src/css/primitives/kbd/kbd.ts +6 -4
- package/src/css/primitives/kbd/types.ts +2 -3
- package/src/css/primitives/label/label.css.ts +85 -0
- package/src/css/primitives/label/label.ts +13 -10
- package/src/css/primitives/label/types.ts +13 -5
- package/src/css/primitives/popover/popover.css.ts +6 -0
- package/src/css/primitives/popover/popover.ts +10 -3
- package/src/css/primitives/radio/radio.css.ts +78 -0
- package/src/css/primitives/radio/radio.ts +15 -3
- package/src/css/primitives/select/select.css.ts +24 -0
- package/src/css/primitives/select/select.ts +7 -4
- package/src/css/primitives/select/types.ts +1 -1
- package/src/css/primitives/spinner/index.ts +1 -0
- package/src/css/primitives/spinner/spinner.css.ts +23 -0
- package/src/css/primitives/spinner/spinner.ts +9 -5
- package/src/css/primitives/spinner/types.ts +4 -0
- package/src/css/primitives/stack/index.ts +1 -0
- package/src/css/primitives/stack/stack.css.ts +6 -0
- package/src/css/primitives/stack/stack.ts +7 -0
- package/src/css/primitives/switch/switch.css.ts +98 -0
- package/src/css/primitives/switch/switch.ts +13 -7
- package/src/css/primitives/text/text.css.ts +85 -0
- package/src/css/primitives/text/text.ts +13 -11
- package/src/css/primitives/text/types.ts +9 -3
- package/src/css/primitives/textArea/textArea.css.ts +4 -0
- package/src/css/primitives/textArea/textArea.ts +5 -3
- package/src/css/primitives/textArea/types.ts +5 -3
- package/src/css/primitives/textInput/textInput.css.ts +41 -0
- package/src/css/primitives/textInput/textInput.ts +20 -4
- package/src/css/primitives/textInput/types.ts +3 -7
- package/src/css/primitives/tooltip/index.ts +1 -0
- package/src/css/primitives/tooltip/tooltip.css.ts +6 -0
- package/src/css/primitives/tooltip/tooltip.ts +8 -7
- package/src/css/primitives/tooltip/types.ts +4 -0
- package/src/css/props/alignItems/alignItems.css.ts +22 -0
- package/src/css/props/alignItems/alignItems.ts +8 -0
- package/src/css/props/alignItems/index.ts +2 -0
- package/src/css/props/alignItems/types.ts +9 -0
- package/src/css/props/border/border.css.ts +65 -0
- package/src/css/props/border/border.ts +36 -0
- package/src/css/props/border/types.ts +13 -0
- package/src/css/props/boxSizing/boxSizing.css.ts +11 -0
- package/src/css/props/boxSizing/boxSizing.ts +10 -0
- package/src/css/props/boxSizing/index.ts +2 -0
- package/src/css/props/boxSizing/types.ts +7 -0
- package/src/css/props/display/display.css.ts +56 -0
- package/src/css/props/display/display.ts +17 -0
- package/src/css/{styles → props}/display/types.ts +3 -4
- package/src/css/props/flex/flex.css.ts +52 -0
- package/src/css/props/flex/flex.ts +8 -0
- package/src/css/props/flex/types.ts +9 -0
- package/src/css/props/flexDirection/flexDirection.css.ts +19 -0
- package/src/css/props/flexDirection/flexDirection.ts +8 -0
- package/src/css/props/flexDirection/index.ts +2 -0
- package/src/css/props/flexDirection/types.ts +9 -0
- package/src/css/props/flexWrap/flexWrap.css.ts +16 -0
- package/src/css/props/flexWrap/flexWrap.ts +8 -0
- package/src/css/props/flexWrap/index.ts +2 -0
- package/src/css/props/flexWrap/types.ts +9 -0
- package/src/css/props/font/font.css.ts +93 -0
- package/src/css/props/font/font.ts +8 -0
- package/src/css/props/font/types.ts +6 -0
- package/src/css/props/gap/gap.css.ts +40 -0
- package/src/css/props/gap/gap.ts +13 -0
- package/src/css/{styles → props}/gap/types.ts +2 -2
- package/src/css/props/gridAutoColumns/gridAutoColumns.css.ts +19 -0
- package/src/css/props/gridAutoColumns/gridAutoColumns.ts +8 -0
- package/src/css/props/gridAutoColumns/index.ts +2 -0
- package/src/css/props/gridAutoColumns/types.ts +19 -0
- package/src/css/props/gridAutoFlow/gridAutoFlow.css.ts +19 -0
- package/src/css/props/gridAutoFlow/gridAutoFlow.ts +8 -0
- package/src/css/props/gridAutoFlow/index.ts +2 -0
- package/src/css/props/gridAutoFlow/types.ts +13 -0
- package/src/css/props/gridAutoRows/gridAutoRows.css.ts +19 -0
- package/src/css/props/gridAutoRows/gridAutoRows.ts +8 -0
- package/src/css/props/gridAutoRows/index.ts +2 -0
- package/src/css/props/gridAutoRows/types.ts +13 -0
- package/src/css/props/gridColumn/gridColumn.css.ts +49 -0
- package/src/css/props/gridColumn/gridColumn.ts +8 -0
- package/src/css/props/gridColumn/index.ts +2 -0
- package/src/css/props/gridColumn/types.ts +19 -0
- package/src/css/props/gridColumnEnd/gridColumnEnd.css.ts +46 -0
- package/src/css/props/gridColumnEnd/gridColumnEnd.ts +8 -0
- package/src/css/props/gridColumnEnd/index.ts +2 -0
- package/src/css/props/gridColumnEnd/types.ts +19 -0
- package/src/css/props/gridColumnStart/gridColumnStart.css.ts +46 -0
- package/src/css/props/gridColumnStart/gridColumnStart.ts +11 -0
- package/src/css/props/gridColumnStart/index.ts +2 -0
- package/src/css/props/gridColumnStart/types.ts +19 -0
- package/src/css/props/gridRow/gridRow.css.ts +49 -0
- package/src/css/props/gridRow/gridRow.ts +8 -0
- package/src/css/props/gridRow/index.ts +2 -0
- package/src/css/props/gridRow/types.ts +19 -0
- package/src/css/props/gridRowEnd/gridRowEnd.css.ts +46 -0
- package/src/css/props/gridRowEnd/gridRowEnd.ts +8 -0
- package/src/css/props/gridRowEnd/index.ts +2 -0
- package/src/css/props/gridRowEnd/types.ts +19 -0
- package/src/css/props/gridRowStart/gridRowStart.css.ts +46 -0
- package/src/css/props/gridRowStart/gridRowStart.ts +8 -0
- package/src/css/props/gridRowStart/index.ts +2 -0
- package/src/css/props/gridRowStart/types.ts +19 -0
- package/src/css/props/gridTemplateColumns/gridTemplateColumns.css.ts +43 -0
- package/src/css/props/gridTemplateColumns/gridTemplateColumns.ts +8 -0
- package/src/css/props/gridTemplateColumns/index.ts +2 -0
- package/src/css/props/gridTemplateColumns/types.ts +19 -0
- package/src/css/props/gridTemplateRows/gridTemplateRows.css.ts +43 -0
- package/src/css/props/gridTemplateRows/gridTemplateRows.ts +8 -0
- package/src/css/props/gridTemplateRows/index.ts +2 -0
- package/src/css/props/gridTemplateRows/types.ts +19 -0
- package/src/css/props/height/height.css.ts +25 -0
- package/src/css/props/height/height.ts +8 -0
- package/src/css/props/height/index.ts +2 -0
- package/src/css/props/height/types.ts +15 -0
- package/src/css/props/index.ts +37 -0
- package/src/css/props/inset/inset.css.ts +37 -0
- package/src/css/props/inset/inset.ts +21 -0
- package/src/css/{styles → props}/inset/types.ts +1 -1
- package/src/css/props/justifyContent/index.ts +2 -0
- package/src/css/props/justifyContent/justifyContent.css.ts +25 -0
- package/src/css/props/justifyContent/justifyContent.ts +8 -0
- package/src/css/props/justifyContent/types.ts +15 -0
- package/src/css/props/margin/margin.css.ts +117 -0
- package/src/css/props/margin/margin.ts +25 -0
- package/src/css/props/margin/types.ts +17 -0
- package/src/css/props/maxWidth/maxWidth.css.ts +32 -0
- package/src/css/props/maxWidth/maxWidth.ts +8 -0
- package/src/css/props/maxWidth/types.ts +11 -0
- package/src/css/props/minHeight/index.ts +2 -0
- package/src/css/props/minHeight/minHeight.css.ts +13 -0
- package/src/css/props/minHeight/minHeight.ts +8 -0
- package/src/css/props/minHeight/types.ts +9 -0
- package/src/css/props/minWidth/index.ts +2 -0
- package/src/css/props/minWidth/minWidth.css.ts +25 -0
- package/src/css/props/minWidth/minWidth.ts +8 -0
- package/src/css/props/minWidth/types.ts +9 -0
- package/src/css/props/outline/index.ts +2 -0
- package/src/css/props/outline/outline.css.ts +10 -0
- package/src/css/props/outline/outline.ts +8 -0
- package/src/css/props/outline/types.ts +7 -0
- package/src/css/props/overflow/overflow.css.ts +16 -0
- package/src/css/props/overflow/overflow.ts +8 -0
- package/src/css/props/overflow/types.ts +17 -0
- package/src/css/props/padding/padding.css.ts +87 -0
- package/src/css/props/padding/padding.ts +25 -0
- package/src/css/props/padding/types.ts +17 -0
- package/src/css/props/pointerEvents/pointerEvents.css.ts +13 -0
- package/src/css/props/pointerEvents/pointerEvents.ts +8 -0
- package/src/css/props/position/position.css.ts +22 -0
- package/src/css/props/position/position.ts +8 -0
- package/src/css/{styles → props}/position/types.ts +1 -1
- package/src/css/props/radius/radius.css.ts +21 -0
- package/src/css/props/radius/radius.ts +8 -0
- package/src/css/props/radius/types.ts +8 -0
- package/src/css/props/shadow/shadow.css.ts +23 -0
- package/src/css/props/shadow/shadow.ts +8 -0
- package/src/css/props/shadow/types.ts +8 -0
- package/src/css/props/textAlign/index.ts +2 -0
- package/src/css/props/textAlign/textAlign.css.ts +22 -0
- package/src/css/props/textAlign/textAlign.ts +8 -0
- package/src/css/props/textAlign/types.ts +7 -0
- package/src/css/props/textOverflow/textOverflow.css.ts +13 -0
- package/src/css/props/textOverflow/textOverflow.ts +8 -0
- package/src/css/{styles → props}/textOverflow/types.ts +5 -1
- package/src/css/props/width/types.ts +11 -0
- package/src/css/props/width/width.css.ts +28 -0
- package/src/css/props/width/width.ts +8 -0
- package/src/css/types.ts +221 -766
- package/src/css/util.ts +3 -8
- package/src/css/utils/index.ts +1 -0
- package/src/css/utils/srOnly/srOnly.css.ts +10 -0
- package/src/css/utils/srOnly/srOnly.ts +5 -3
- package/src/css/vars.css.ts +676 -0
- package/src/theme/getScopedTheme.ts +4 -4
- package/src/theme/index.ts +0 -5
- package/src/theme/types.ts +6 -10
- package/src/theme/v0/color/_generic.ts +1 -1
- package/src/theme/v0/color/button.ts +1 -1
- package/src/theme/v0/color/card.ts +1 -1
- package/src/theme/v0/color/color.ts +11 -11
- package/src/theme/v0/color/input.ts +1 -1
- package/src/theme/v0/color/muted.ts +1 -1
- package/src/theme/v0/color/selectable.ts +1 -1
- package/src/theme/v0/color/solid.ts +1 -1
- package/src/theme/v0/color/spot.ts +1 -1
- package/src/theme/v0/focusRing.ts +1 -3
- package/src/theme/v0/font.ts +6 -19
- package/src/theme/v0/layer.ts +1 -3
- package/src/theme/v0/shadow.ts +2 -6
- package/src/theme/v0/styles.ts +1 -1
- package/src/theme/v0/theme.ts +7 -7
- package/src/theme/v2/avatar.ts +2 -4
- package/src/theme/{build → v2/build}/_deprecated/color/_selectable/createSelectableTones.ts +3 -3
- package/src/theme/{build → v2/build}/_deprecated/color/_solid/createSolidTones.ts +2 -2
- package/src/theme/{build → v2/build}/_deprecated/color/button/createButtonModes.ts +7 -2
- package/src/theme/{build → v2/build}/_deprecated/color/button/createButtonTones.ts +4 -4
- package/src/theme/{build → v2/build}/_deprecated/color/card/createCardStates.ts +3 -3
- package/src/theme/{build → v2/build}/_deprecated/color/color.test.ts +1 -1
- package/src/theme/{build → v2/build}/_deprecated/color/defaults.ts +1 -1
- package/src/theme/{build → v2/build}/_deprecated/color/factory.ts +3 -3
- package/src/theme/{build → v2/build}/_deprecated/color/input/createInputModes.ts +7 -2
- package/src/theme/{build → v2/build}/_deprecated/color/muted/createMuted.ts +2 -2
- package/src/theme/{build → v2/build}/_deprecated/color/spot/createSpot.ts +2 -2
- package/src/theme/{build → v2/build}/buildColorTheme.test.ts +3 -1
- package/src/theme/{build → v2/build}/buildColorTheme.ts +24 -24
- package/src/theme/{build → v2/build}/buildTheme.test.ts +10 -8
- package/src/theme/v2/build/buildTheme.ts +12 -0
- package/src/theme/{build → v2/build}/colorToken/colorToken.ts +2 -2
- package/src/theme/{build → v2/build}/colorToken/compileColorToken.ts +1 -1
- package/src/theme/{build → v2/build}/colorToken/types.ts +2 -2
- package/src/theme/{build → v2/build}/lib/color-fns/blend/mix.ts +1 -1
- package/src/theme/{build → v2/build}/lib/color-fns/blend/multiply.ts +1 -1
- package/src/theme/{build → v2/build}/lib/color-fns/blend/screen.ts +1 -1
- package/src/theme/{build → v2/build}/lib/color-fns/color-fns.test.ts +1 -1
- package/src/theme/{build → v2/build}/lib/color-fns/contrastRatio.ts +5 -2
- package/src/theme/{build → v2/build}/lib/color-fns/convert.ts +1 -1
- package/src/theme/{build → v2/build}/lib/color-fns/parse.ts +1 -1
- package/src/theme/{build → v2/build}/mixThemeColor.test.ts +2 -0
- package/src/theme/{build → v2/build}/mixThemeColor.ts +1 -1
- package/src/theme/{build → v2/build}/renderColorTheme.ts +27 -27
- package/src/theme/{build → v2/build}/renderColorValue.ts +3 -3
- package/src/theme/{build → v2/build}/resolveColorTokens.ts +13 -13
- package/src/theme/v2/color/_helpers.ts +2 -2
- package/src/theme/v2/color/_system.ts +2 -4
- package/src/theme/v2/color/avatar.ts +3 -7
- package/src/theme/v2/color/badge.ts +3 -7
- package/src/theme/v2/color/button.ts +5 -11
- package/src/theme/v2/color/color.ts +10 -16
- package/src/theme/v2/color/input.ts +8 -10
- package/src/theme/v2/color/kbd.ts +1 -3
- package/src/theme/v2/color/selectable.ts +4 -8
- package/src/theme/v2/color/state.ts +5 -7
- package/src/theme/v2/color/syntax.ts +1 -3
- package/src/theme/{config → v2/config}/helpers.ts +6 -13
- package/src/theme/{config → v2/config}/system.ts +11 -12
- package/src/theme/{config → v2/config}/tokens/color/types.ts +14 -10
- package/src/theme/{config → v2/config}/tokens/index.ts +0 -1
- package/src/theme/{config → v2/config}/tokens/parseTokenValue.test.ts +2 -0
- package/src/theme/{config → v2/config}/tokens/parseTokenValue.ts +2 -2
- package/src/theme/{config → v2/config}/tokens/types.ts +3 -3
- package/src/theme/{config → v2/config}/types.ts +8 -6
- package/src/theme/{defaults → v2/defaults}/colorPalette.ts +1 -1
- package/src/theme/{defaults → v2/defaults}/colorTokens.ts +3 -3
- package/src/theme/{defaults → v2/defaults}/config.ts +2 -2
- package/src/theme/{defaults → v2/defaults}/fonts.ts +5 -6
- package/src/theme/v2/index.ts +2 -0
- package/src/theme/v2/input.ts +2 -4
- package/src/theme/v2/theme.ts +10 -14
- package/src/theme/{_constants.ts → v3/_constants.ts} +6 -3
- package/src/theme/v3/{color/parseColor.ts → _parseColorToken.ts} +59 -46
- package/src/theme/v3/buildTheme_v3.ts +20 -11
- package/src/theme/v3/color/_constants.ts +15 -0
- package/src/theme/v3/color/avatar.ts +14 -0
- package/src/theme/v3/color/card.ts +58 -95
- package/src/theme/v3/color/color.ts +75 -71
- package/src/theme/v3/color/element.ts +8 -8
- package/src/theme/v3/color/index.ts +2 -2
- package/src/theme/v3/color/token.ts +19 -4
- package/src/theme/v3/color/tokens.ts +2 -2
- package/src/theme/v3/defaultFonts.ts +250 -0
- package/src/theme/v3/defaultTokens.ts +199 -0
- package/src/theme/v3/index.ts +4 -1
- package/src/theme/{palette → v3/palette}/constants.ts +3 -3
- package/src/theme/v3/palette/types.ts +7 -0
- package/src/theme/v3/resolveTokens.ts +70 -65
- package/src/theme/v3/tokens.ts +2 -2
- package/src/theme/v3/types.ts +97 -12
- package/src/theme/versioning/getTheme_v2.ts +3 -3
- package/src/theme/versioning/is_v0.ts +2 -2
- package/src/theme/versioning/is_v2.ts +2 -2
- package/src/theme/versioning/themeColor_v0_v2.ts +2 -2
- package/src/theme/versioning/themeColor_v2_v2_9.ts +1 -1
- package/src/theme/versioning/themeColor_v3_v2.ts +229 -52
- package/src/theme/versioning/v0_v2.ts +3 -3
- package/src/theme/versioning/v2_v0.ts +4 -4
- package/src/theme/versioning/v3_v2.ts +62 -40
- package/dist/_chunks-cjs/_visual-editing.js +0 -3059
- package/dist/_chunks-cjs/_visual-editing.js.map +0 -1
- package/dist/_chunks-cjs/buildCommand.js +0 -32
- package/dist/_chunks-cjs/buildCommand.js.map +0 -1
- package/dist/_chunks-cjs/refractor.js.map +0 -1
- package/dist/_chunks-cjs/v3_v2.js +0 -251
- package/dist/_chunks-cjs/v3_v2.js.map +0 -1
- package/dist/_chunks-es/_visual-editing.mjs +0 -3066
- package/dist/_chunks-es/_visual-editing.mjs.map +0 -1
- package/dist/_chunks-es/refractor.mjs.map +0 -1
- package/dist/_chunks-es/v3_v2.mjs +0 -252
- package/dist/_chunks-es/v3_v2.mjs.map +0 -1
- package/dist/_visual-editing.d.mts +0 -806
- package/dist/_visual-editing.mjs +0 -31
- package/dist/_visual-editing.mjs.map +0 -1
- package/dist/cli.d.ts +0 -1
- package/dist/cli.js +0 -357
- package/dist/cli.js.map +0 -1
- package/dist/css.d.mts +0 -2135
- package/dist/css.mjs +0 -4713
- package/dist/css.mjs.map +0 -1
- package/dist/index.mjs +0 -1542
- package/dist/index.mjs.map +0 -1
- package/dist/sanity-palette.css +0 -9
- package/dist/sanity-theme.css +0 -1
- package/dist/system.css +0 -3577
- package/dist/theme.mjs.map +0 -1
- package/src/core/StyleTags.tsx +0 -24
- package/src/core/primitives/popover/popoverCard.tsx +0 -148
- package/src/core/primitives/tooltip/tooltipCard.tsx +0 -115
- package/src/core/utils/conditionalWrapper/conditionalWrapper.tsx +0 -23
- package/src/core/utils/conditionalWrapper/index.ts +0 -1
- package/src/css/_resp.ts +0 -31
- package/src/css/compile/compilePalette.ts +0 -60
- package/src/css/compile/compileRule.ts +0 -90
- package/src/css/compile/compileRules.test.ts +0 -35
- package/src/css/compile/compileRules.ts +0 -40
- package/src/css/compile/compileSystem.ts +0 -7
- package/src/css/compile/compileTheme.ts +0 -15
- package/src/css/compile/compileTheme_v3.ts +0 -410
- package/src/css/compile/types.ts +0 -6
- package/src/css/components/breadcrumbs/rules.ts +0 -25
- package/src/css/components/dialog/rules.ts +0 -76
- package/src/css/components/menu/rules.ts +0 -15
- package/src/css/components/skeleton/rules.ts +0 -112
- package/src/css/components/toast/rules.ts +0 -17
- package/src/css/components/tree/rules.ts +0 -168
- package/src/css/composeClassNames.ts +0 -13
- package/src/css/primitives/_arrow/rules.ts +0 -71
- package/src/css/primitives/_input/rules.ts +0 -163
- package/src/css/primitives/_selectable/__style.ts +0 -117
- package/src/css/primitives/_selectable/_contants.ts +0 -11
- package/src/css/primitives/_selectable/rules.ts +0 -129
- package/src/css/primitives/avatar/rules.ts +0 -176
- package/src/css/primitives/badge/rules.ts +0 -22
- package/src/css/primitives/box/rules.ts +0 -28
- package/src/css/primitives/button/_constants.ts +0 -17
- package/src/css/primitives/button/rules.ts +0 -293
- package/src/css/primitives/card/_constants.ts +0 -13
- package/src/css/primitives/card/rules.ts +0 -471
- package/src/css/primitives/checkbox/__styles.ts +0 -129
- package/src/css/primitives/checkbox/rules.ts +0 -152
- package/src/css/primitives/code/rules.ts +0 -96
- package/src/css/primitives/container/rules.ts +0 -8
- package/src/css/primitives/heading/rules.ts +0 -155
- package/src/css/primitives/kbd/rules.ts +0 -20
- package/src/css/primitives/label/rules.ts +0 -137
- package/src/css/primitives/popover/rules.ts +0 -5
- package/src/css/primitives/radio/rules.ts +0 -121
- package/src/css/primitives/select/rules.ts +0 -22
- package/src/css/primitives/spinner/rules.ts +0 -20
- package/src/css/primitives/switch/rules.ts +0 -340
- package/src/css/primitives/text/rules.ts +0 -164
- package/src/css/primitives/textArea/rules.ts +0 -7
- package/src/css/primitives/textInput/rules.ts +0 -224
- package/src/css/primitives/token/rules.ts +0 -45
- package/src/css/primitives/tooltip/rules.ts +0 -19
- package/src/css/responsiveRules.ts +0 -25
- package/src/css/rules.ts +0 -113
- package/src/css/styles/border/border.ts +0 -22
- package/src/css/styles/border/rules.ts +0 -24
- package/src/css/styles/border/types.ts +0 -10
- package/src/css/styles/display/display.ts +0 -7
- package/src/css/styles/display/rules.ts +0 -62
- package/src/css/styles/flex/flex.ts +0 -20
- package/src/css/styles/flex/rules.ts +0 -28
- package/src/css/styles/flex/types.ts +0 -35
- package/src/css/styles/flexItem/flexItem.ts +0 -8
- package/src/css/styles/flexItem/index.ts +0 -2
- package/src/css/styles/flexItem/rules.ts +0 -12
- package/src/css/styles/flexItem/types.ts +0 -11
- package/src/css/styles/font/font.ts +0 -17
- package/src/css/styles/font/rules.ts +0 -148
- package/src/css/styles/font/types.ts +0 -12
- package/src/css/styles/gap/gap.ts +0 -8
- package/src/css/styles/gap/rules.ts +0 -34
- package/src/css/styles/grid/grid.ts +0 -13
- package/src/css/styles/grid/index.ts +0 -2
- package/src/css/styles/grid/rules.ts +0 -146
- package/src/css/styles/grid/types.ts +0 -29
- package/src/css/styles/gridItem/gridItem.ts +0 -15
- package/src/css/styles/gridItem/index.ts +0 -2
- package/src/css/styles/gridItem/rules.ts +0 -96
- package/src/css/styles/gridItem/types.ts +0 -41
- package/src/css/styles/height/rules.ts +0 -7
- package/src/css/styles/index.ts +0 -19
- package/src/css/styles/inset/inset.ts +0 -13
- package/src/css/styles/inset/rules.ts +0 -16
- package/src/css/styles/margin/margin.ts +0 -15
- package/src/css/styles/margin/rules.ts +0 -64
- package/src/css/styles/margin/types.ts +0 -11
- package/src/css/styles/maxWidth/maxWidth.ts +0 -6
- package/src/css/styles/maxWidth/rules.ts +0 -13
- package/src/css/styles/maxWidth/types.ts +0 -7
- package/src/css/styles/outline/rules.ts +0 -7
- package/src/css/styles/overflow/overflow.ts +0 -11
- package/src/css/styles/overflow/rules.ts +0 -9
- package/src/css/styles/overflow/types.ts +0 -11
- package/src/css/styles/padding/padding.ts +0 -15
- package/src/css/styles/padding/rules.ts +0 -62
- package/src/css/styles/padding/types.ts +0 -14
- package/src/css/styles/pointerEvents/pointerEvents.ts +0 -6
- package/src/css/styles/pointerEvents/rules.ts +0 -11
- package/src/css/styles/position/position.ts +0 -7
- package/src/css/styles/position/rules.ts +0 -24
- package/src/css/styles/radius/radius.ts +0 -8
- package/src/css/styles/radius/rules.ts +0 -13
- package/src/css/styles/radius/types.ts +0 -8
- package/src/css/styles/shadow/rules.ts +0 -53
- package/src/css/styles/shadow/shadow.ts +0 -7
- package/src/css/styles/shadow/types.ts +0 -8
- package/src/css/styles/textOverflow/rules.ts +0 -17
- package/src/css/styles/textOverflow/textOverflow.ts +0 -6
- package/src/css/styles/width/rules.ts +0 -7
- package/src/css/styles/width/types.ts +0 -9
- package/src/css/styles/width/width.ts +0 -6
- package/src/css/utils/srOnly/rules.ts +0 -11
- package/src/css/varNames.ts +0 -473
- package/src/css/vars.ts +0 -443
- package/src/theme/_types.ts +0 -41
- package/src/theme/build/buildTheme.ts +0 -12
- package/src/theme/build/theme.test.ts +0 -27
- package/src/theme/config/tokens/parseTokenKey.test.ts +0 -64
- package/src/theme/config/tokens/parseTokenKey.ts +0 -67
- package/src/theme/palette/types.ts +0 -16
- package/src/theme/v3/buildTheme_v3.test.ts +0 -40
- package/src/theme/v3/color/buildColor_v3.ts +0 -193
- package/src/theme/v3/color/parseColor.test.ts +0 -79
- package/src/theme/v3/color/renderColor.test.ts +0 -19
- package/src/theme/v3/color/renderColor.ts +0 -33
- package/src/theme/v3/defaults.ts +0 -205
- /package/src/core/components/autocomplete/{__mocks__ → __workshop__/mock}/apiStore.ts +0 -0
- /package/src/core/components/autocomplete/{__mocks__ → __workshop__/mock}/countries.ts +0 -0
- /package/src/css/{styles → props}/border/index.ts +0 -0
- /package/src/css/{styles → props}/display/index.ts +0 -0
- /package/src/css/{styles → props}/flex/index.ts +0 -0
- /package/src/css/{styles → props}/font/index.ts +0 -0
- /package/src/css/{styles → props}/gap/index.ts +0 -0
- /package/src/css/{styles → props}/inset/index.ts +0 -0
- /package/src/css/{styles → props}/margin/index.ts +0 -0
- /package/src/css/{styles → props}/maxWidth/index.ts +0 -0
- /package/src/css/{styles → props}/overflow/index.ts +0 -0
- /package/src/css/{styles → props}/padding/index.ts +0 -0
- /package/src/css/{styles → props}/pointerEvents/index.ts +0 -0
- /package/src/css/{styles → props}/pointerEvents/types.ts +0 -0
- /package/src/css/{styles → props}/position/index.ts +0 -0
- /package/src/css/{styles → props}/radius/index.ts +0 -0
- /package/src/css/{styles → props}/shadow/index.ts +0 -0
- /package/src/css/{styles → props}/textOverflow/index.ts +0 -0
- /package/src/css/{styles → props}/width/index.ts +0 -0
- /package/src/theme/{build → v2/build}/_deprecated/color/index.ts +0 -0
- /package/src/theme/{build → v2/build}/colorToken/index.ts +0 -0
- /package/src/theme/{build → v2/build}/index.ts +0 -0
- /package/src/theme/{build → v2/build}/lib/color-fns/blend/index.ts +0 -0
- /package/src/theme/{build → v2/build}/lib/color-fns/index.ts +0 -0
- /package/src/theme/{build → v2/build}/lib/color-fns/rgba.ts +0 -0
- /package/src/theme/{build → v2/build}/lib/color-fns/types.ts +0 -0
- /package/src/theme/{build → v2/build}/lib/isRecord.ts +0 -0
- /package/src/theme/{build → v2/build}/lib/utils.ts +0 -0
- /package/src/theme/{build → v2/build}/merge.ts +0 -0
- /package/src/theme/{config → v2/config}/index.ts +0 -0
- /package/src/theme/{config → v2/config}/tokens/color/index.ts +0 -0
- /package/src/theme/{palette → v3/palette}/index.ts +0 -0
package/dist/index.mjs.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../src/core/_compat/styles/_responsive.ts","../src/core/helpers/animation.ts","../src/core/helpers/focus.ts","../src/core/hooks/useClickOutside.ts","../src/core/hooks/useElementRect/useElementRect.ts","../src/core/hooks/useForwardedRef.ts","../src/core/utils/errorBoundary.tsx","../src/core/components/autocomplete/autocompleteOption.tsx","../src/core/components/autocomplete/autocompleteReducer.ts","../src/core/components/autocomplete/constants.ts","../src/core/components/autocomplete/autocomplete.tsx","../src/core/components/breadcrumbs/breadcrumbs.tsx","../src/core/components/dialog/dialogContext.ts","../src/core/components/dialog/useDialog.ts","../src/core/components/dialog/dialog.tsx","../src/core/components/dialog/dialogProvider.tsx","../src/core/components/menu/menuButton.tsx","../src/core/components/skeleton/skeleton.tsx","../src/core/components/skeleton/textSkeleton.tsx","../src/core/components/tab/tabPanel.tsx","../src/core/components/toast/toast.tsx","../src/core/hooks/useMounted.ts","../src/core/components/toast/toastContext.ts","../src/core/components/toast/toastLayer.tsx","../src/core/components/toast/toastState.ts","../src/core/components/toast/toastProvider.tsx","../src/core/components/toast/useToast.ts","../src/core/components/tree/helpers.ts","../src/core/components/tree/treeContext.ts","../src/core/components/tree/tree.tsx","../src/core/components/tree/useTree.ts","../src/core/components/tree/treeGroup.tsx","../src/core/components/tree/treeItem.tsx","../src/core/StyleTags.tsx"],"sourcesContent":["import {CSSObject} from '@sanity/ui/theme'\n\n/**\n * @internal\n * @deprecated do not use\n */\nexport function _responsive<T>(\n media: number[],\n values: T[],\n callback: (value: T, index: number, array: T[]) => CSSObject,\n): CSSObject[] {\n const statements = values?.map(callback) || []\n\n return statements.map((statement, mediaIndex) => {\n if (mediaIndex === 0) return statement\n\n return {[`@media screen and (min-width: ${media[mediaIndex - 1]}px)`]: statement}\n })\n}\n","/**\n * @internal\n */\nexport function _raf(fn: () => void): () => void {\n const frameId = requestAnimationFrame(fn)\n\n return () => {\n cancelAnimationFrame(frameId)\n }\n}\n\n/**\n * @internal\n */\nexport function _raf2(fn: () => void): () => void {\n let innerDispose: (() => void) | null = null\n\n const outerDispose = _raf(() => {\n innerDispose = _raf(fn)\n })\n\n return () => {\n if (innerDispose) innerDispose()\n\n outerDispose()\n }\n}\n","import {\n isHTMLAnchorElement,\n isHTMLButtonElement,\n isHTMLElement,\n isHTMLInputElement,\n isHTMLSelectElement,\n isHTMLTextAreaElement,\n} from './element'\n\n// export const globalFocusState = {\n// IgnoreUtilFocusChanges: false,\n// }\n\n/**\n * @internal\n */\nexport function _hasFocus(element: HTMLElement): boolean {\n return Boolean(document.activeElement) && element.contains(document.activeElement)\n}\n\n/**\n * @internal\n */\nexport function isFocusable(element: HTMLElement): boolean {\n if (\n element.tabIndex > 0 ||\n (element.tabIndex === 0 && element.getAttribute('tabIndex') !== null)\n ) {\n return true\n }\n\n if (isHTMLAnchorElement(element)) {\n return Boolean(element.href) && element.rel !== 'ignore'\n }\n\n if (isHTMLInputElement(element)) {\n return element.type !== 'hidden' && element.type !== 'file' && !element.disabled\n }\n\n if (\n isHTMLButtonElement(element) ||\n isHTMLSelectElement(element) ||\n isHTMLTextAreaElement(element)\n ) {\n return !element.disabled\n }\n\n return false\n}\n\n/**\n * @internal\n */\nexport function attemptFocus(element: HTMLElement): boolean {\n if (!isFocusable(element)) {\n return false\n }\n\n // globalFocusState.IgnoreUtilFocusChanges = true\n\n try {\n element.focus()\n } catch {\n // ignore\n }\n\n // globalFocusState.IgnoreUtilFocusChanges = false\n\n return document.activeElement === element\n}\n\n/**\n * @internal\n */\nexport function focusFirstDescendant(element: HTMLElement): boolean {\n for (let i = 0; i < element.childNodes.length; i++) {\n const child = element.childNodes[i]\n\n if (isHTMLElement(child) && (attemptFocus(child) || focusFirstDescendant(child))) {\n return true\n }\n }\n\n return false\n}\n\n/**\n * @internal\n */\nexport function focusLastDescendant(element: HTMLElement): boolean {\n for (let i = element.childNodes.length - 1; i >= 0; i--) {\n const child = element.childNodes[i]\n\n if (isHTMLElement(child) && (attemptFocus(child) || focusLastDescendant(child))) {\n return true\n }\n }\n\n return false\n}\n","import {useEffect, useRef, useState} from 'react'\n\nimport {EMPTY_ARRAY} from '../constants'\n\n/**\n * @public\n */\nexport type ClickOutsideListener = (event: MouseEvent) => void\n\n/**\n * @public\n */\nexport type ClickOutsideElements = (HTMLElement | null | (HTMLElement | null)[])[]\n\nfunction _getElements(\n element: HTMLElement | null,\n elementsArg: ClickOutsideElements,\n): HTMLElement[] {\n const ret = [element]\n\n for (const el of elementsArg) {\n if (Array.isArray(el)) {\n ret.push(...el)\n } else {\n ret.push(el)\n }\n }\n\n return ret.filter(Boolean) as HTMLElement[]\n}\n\n/**\n * @public\n * @deprecated replaced by the new `useClickOutsideEvent` hook, instead of:\n * ```tsx\n * const [button, setButtonElement] = useState(null)\n * useClickOutside((event) => {}, [button])\n * return <button ref={setButtonElement} />\n * ```\n * do:\n * ```tsx\n * const buttonRef = useRef()\n * useClickOutsideEvent((event) => {}, () => [buttonRef.current])\n * return <button ref={buttonRef} />\n * ```\n */\nexport function useClickOutside(\n listener: ClickOutsideListener,\n elementsArg: ClickOutsideElements = EMPTY_ARRAY,\n boundaryElement?: HTMLElement | null,\n): (el: HTMLElement | null) => void {\n const [element, setElement] = useState<HTMLElement | null>(null)\n const [elements, setElements] = useState(() => _getElements(element, elementsArg))\n const elementsRef = useRef(elements)\n\n useEffect(() => {\n const prevElements = elementsRef.current\n const nextElements = _getElements(element, elementsArg)\n\n if (prevElements.length !== nextElements.length) {\n setElements(nextElements)\n elementsRef.current = nextElements\n\n return\n }\n\n for (const el of prevElements) {\n if (!nextElements.includes(el)) {\n setElements(nextElements)\n elementsRef.current = nextElements\n\n return\n }\n }\n\n for (const el of nextElements) {\n if (!prevElements.includes(el)) {\n setElements(nextElements)\n elementsRef.current = nextElements\n\n return\n }\n }\n }, [element, elementsArg])\n\n useEffect(() => {\n if (!listener) return undefined\n\n const handleWindowMouseDown = (evt: MouseEvent) => {\n const target = evt.target\n\n if (!(target instanceof Node)) {\n return\n }\n\n if (boundaryElement && !boundaryElement.contains(target)) {\n return\n }\n\n for (const el of elements) {\n if (target === el || el.contains(target)) {\n return\n }\n }\n\n listener(evt)\n }\n\n window.addEventListener('mousedown', handleWindowMouseDown)\n\n return () => {\n window.removeEventListener('mousedown', handleWindowMouseDown)\n }\n }, [boundaryElement, listener, elements])\n\n return setElement\n}\n","import {useElementSize} from '../useElementSize'\n\n/**\n * Subscribe to the rect of a DOM element.\n * @beta\n *\n * @deprecated Use `useElementSize` instead\n */\nexport function useElementRect(element: HTMLElement | null): DOMRectReadOnly | null {\n const elementSize = useElementSize(element)\n\n return elementSize?._contentRect || null\n}\n","import {ForwardedRef, MutableRefObject, useImperativeHandle, useRef} from 'react'\n\n/**\n * @beta\n * @deprecated use `useImperativeHandle` instead\n * @example\n * ```diff\n * -const ref = useForwardedRef(forwardedRef)\n * +const ref = useRef(null)\n * +useImperativeHandle(forwardedRef, () => ref.current)\n * ```\n */\nexport function useForwardedRef<T>(ref: ForwardedRef<T>): MutableRefObject<T | null> {\n const innerRef = useRef<T | null>(null)\n\n useImperativeHandle(ref, () => innerRef.current!)\n\n return innerRef\n}\n","import {Component, ErrorInfo, PropsWithChildren, ReactNode} from 'react'\n\nimport {Code} from '../primitives/code'\n\n/**\n * DO NOT USE IN PRODUCTION\n * @beta\n */\nexport type ErrorBoundaryProps = PropsWithChildren<{\n onCatch: (params: {error: Error; info: ErrorInfo}) => void\n}>\n\n/**\n * DO NOT USE IN PRODUCTION\n * @beta\n */\nexport interface ErrorBoundaryState {\n error: Error | null\n}\n\n/**\n * DO NOT USE IN PRODUCTION\n * @beta\n */\nexport class ErrorBoundary extends Component<ErrorBoundaryProps, ErrorBoundaryState> {\n state: ErrorBoundaryState = {error: null}\n\n static getDerivedStateFromError(error: Error): ErrorBoundaryState {\n // Update state so the next render will show the fallback UI.\n return {error}\n }\n\n componentDidCatch(error: Error, info: ErrorInfo): void {\n this.props.onCatch({error, info})\n }\n\n render(): ReactNode {\n const {error} = this.state\n\n if (error) {\n const message = typeof error?.message === 'string' ? error.message : 'Error'\n\n return <Code>{message}</Code>\n }\n\n return this.props.children\n }\n}\n","import {KeyboardEvent, ReactElement, ReactNode, useCallback} from 'react'\n\nimport {_isEnterToClickElement} from '../../helpers'\n\nexport interface AutocompleteOptionProps {\n children: ReactNode\n id: string\n onSelect: (v: string) => void\n selected: boolean\n value: string\n}\n\nexport function AutocompleteOption(props: AutocompleteOptionProps): ReactElement {\n const {children, id, onSelect, selected, value} = props\n\n const handleClick = useCallback(() => {\n // Calling the `onSelect` in a timeout is a fix to\n // allow the `click` event to propagate in some cases\n setTimeout(() => {\n onSelect(value)\n }, 0)\n }, [onSelect, value])\n\n const handleKeyDown = useCallback(\n (event: KeyboardEvent<HTMLLIElement>) => {\n if (event.key === 'Enter' && !_isEnterToClickElement(event.currentTarget)) {\n handleClick()\n }\n },\n [handleClick],\n )\n\n return (\n <li\n aria-selected={selected}\n data-ui=\"AutocompleteOption\"\n id={id}\n role=\"option\"\n onClick={handleClick}\n onKeyDown={handleKeyDown}\n >\n {children}\n </li>\n )\n}\n","import {AutocompleteMsg, AutocompleteState} from './types'\n\n/**\n * @internal\n */\nexport function autocompleteReducer(\n state: AutocompleteState,\n msg: AutocompleteMsg,\n): AutocompleteState {\n if (msg.type === 'input/change') {\n return {...state, activeValue: null, focused: true, query: msg.query}\n }\n\n if (msg.type === 'input/focus') {\n return {...state, focused: true}\n }\n\n if (msg.type === 'root/blur') {\n return {...state, focused: false, query: null}\n }\n\n if (msg.type === 'root/clear') {\n return {...state, activeValue: null, query: null, value: null}\n }\n\n if (msg.type === 'root/escape') {\n return {...state, focused: false, query: null}\n }\n\n if (msg.type === 'root/open') {\n return {...state, query: state.query || msg.query}\n }\n\n if (msg.type === 'root/setActiveValue') {\n return {...state, activeValue: msg.value, listFocused: msg.listFocused || state.listFocused}\n }\n\n if (msg.type === 'root/setListFocused') {\n return {...state, listFocused: msg.listFocused}\n }\n\n if (msg.type === 'value/change') {\n return {...state, activeValue: msg.value, query: null, value: msg.value}\n }\n\n return state\n}\n","import {Placement} from '../../types'\n\n/**\n * @internal\n */\nexport const AUTOCOMPLETE_LISTBOX_IGNORE_KEYS = [\n 'Control',\n 'Shift',\n 'Alt',\n 'Enter',\n 'Home',\n 'End',\n 'PageUp',\n 'PageDown',\n 'Meta',\n 'Tab',\n 'CapsLock',\n]\n\n/**\n * @internal\n */\nexport const AUTOCOMPLETE_POPOVER_PLACEMENT: Placement = 'bottom-start'\n\n/**\n * @internal\n */\nexport const AUTOCOMPLETE_POPOVER_FALLBACK_PLACEMENTS: Placement[] = ['bottom-start', 'top-start']\n","import {ChevronDownIcon} from '@sanity/icons'\nimport {ResponsiveProp} from '@sanity/ui/css'\nimport {FontTextSize, Space} from '@sanity/ui/theme'\nimport {\n ChangeEvent,\n cloneElement,\n ElementType,\n FocusEvent,\n ForwardedRef,\n forwardRef,\n KeyboardEvent,\n MouseEvent,\n ReactElement,\n ReactNode,\n useCallback,\n useEffect,\n useImperativeHandle,\n useMemo,\n useReducer,\n useRef,\n} from 'react'\n\nimport {EMPTY_ARRAY, EMPTY_RECORD} from '../../constants'\nimport {_hasFocus, _raf, focusFirstDescendant} from '../../helpers'\nimport {useArrayProp} from '../../hooks'\nimport {\n Box,\n BoxProps,\n Button,\n Card,\n Popover,\n PopoverProps,\n Stack,\n Text,\n TextInput,\n} from '../../primitives'\nimport {AnimatedSpinnerIcon} from '../../primitives/spinner/animatedSpinnerIcon'\nimport {Props, Radius} from '../../types'\nimport {AutocompleteOption} from './autocompleteOption'\nimport {autocompleteReducer} from './autocompleteReducer'\nimport {\n AUTOCOMPLETE_LISTBOX_IGNORE_KEYS,\n AUTOCOMPLETE_POPOVER_FALLBACK_PLACEMENTS,\n AUTOCOMPLETE_POPOVER_PLACEMENT,\n} from './constants'\nimport {AutocompleteOpenButtonProps, BaseAutocompleteOption} from './types'\n\n/**\n * @public\n */\nexport interface AutocompleteProps<Option extends BaseAutocompleteOption = BaseAutocompleteOption> {\n border?: boolean\n customValidity?: string\n disabled?: boolean\n filterOption?: (query: string, option: Option) => boolean\n fontSize?: ResponsiveProp<FontTextSize>\n icon?: ElementType | ReactNode\n id: string\n /** @beta */\n listBox?: BoxProps\n loading?: boolean\n onChange?: (value: string) => void\n onQueryChange?: (query: string | null) => void\n onSelect?: (value: string) => void\n /** @beta */\n openButton?: boolean | AutocompleteOpenButtonProps\n /** @beta */\n openOnFocus?: boolean\n /** The options to render. */\n options?: Option[]\n padding?: ResponsiveProp<Space>\n // padding?: number | number[]\n popover?: Omit<Props<PopoverProps, 'div'>, 'content' | 'onMouseEnter' | 'onMouseLeave' | 'open'>\n prefix?: ReactNode\n radius?: Radius | Radius[]\n readOnly?: boolean\n ref?: ForwardedRef<HTMLInputElement>\n /** @beta */\n relatedElements?: HTMLElement[]\n /** The callback function for rendering each option. */\n renderOption?: (option: Option) => React.JSX.Element\n /** @beta */\n renderPopover?: (\n props: {\n content: React.JSX.Element | null\n hidden: boolean\n inputElement: HTMLInputElement | null\n onMouseEnter: () => void\n onMouseLeave: () => void\n },\n ref: ForwardedRef<HTMLDivElement>,\n ) => ReactNode\n renderValue?: (value: string, option?: Option) => string\n suffix?: ReactNode\n /** The current value. */\n value?: string\n}\n\nconst DEFAULT_RENDER_VALUE = (value: string, option?: BaseAutocompleteOption) =>\n option ? option.value : value\n\nconst DEFAULT_FILTER_OPTION = (query: string, option: BaseAutocompleteOption) =>\n option.value.toLowerCase().indexOf(query.toLowerCase()) > -1\n\nconst InnerAutocomplete = forwardRef(function InnerAutocomplete<\n Option extends BaseAutocompleteOption,\n>(\n props: Omit<\n Props<AutocompleteProps<Option>, 'div'>,\n | 'aria-activedescendant'\n | 'aria-autocomplete'\n | 'aria-expanded'\n | 'aria-owns'\n | 'as'\n | 'autoCapitalize'\n | 'autoComplete'\n | 'autoCorrect'\n | 'inputMode'\n | 'role'\n | 'spellCheck'\n | 'type'\n >,\n forwardedRef: ForwardedRef<HTMLInputElement>,\n) {\n const {\n border = true,\n customValidity,\n disabled,\n filterOption: filterOptionProp,\n fontSize = 1,\n icon,\n id,\n listBox = EMPTY_RECORD,\n loading,\n onBlur,\n onChange,\n onFocus,\n onQueryChange,\n onSelect,\n openButton,\n openOnFocus,\n options: optionsProp,\n padding: paddingProp = 3,\n popover = EMPTY_RECORD,\n prefix,\n radius = 2,\n readOnly,\n relatedElements,\n renderOption: renderOptionProp,\n renderPopover,\n renderValue = DEFAULT_RENDER_VALUE,\n suffix,\n value: valueProp,\n ...restProps\n } = props\n\n const [state, dispatch] = useReducer(autocompleteReducer, {\n activeValue: valueProp || null,\n focused: false,\n listFocused: false,\n query: null,\n value: valueProp || null,\n })\n\n const {activeValue, focused, listFocused, query, value} = state\n\n const defaultRenderOption = useCallback(\n ({value}: BaseAutocompleteOption) => (\n <Card\n as=\"button\"\n // data-as=\"button\"\n padding={paddingProp}\n radius={2}\n tone=\"inherit\"\n >\n <Text size={fontSize} textOverflow=\"ellipsis\">\n {value}\n </Text>\n </Card>\n ),\n [fontSize, paddingProp],\n )\n\n const renderOption =\n typeof renderOptionProp === 'function' ? renderOptionProp : defaultRenderOption\n\n const filterOption =\n typeof filterOptionProp === 'function' ? filterOptionProp : DEFAULT_FILTER_OPTION\n\n // Element refs\n const rootElementRef = useRef<HTMLDivElement | null>(null)\n const resultsPopoverElementRef = useRef<HTMLDivElement | null>(null)\n const inputElementRef = useRef<HTMLInputElement | null>(null)\n const listBoxElementRef = useRef<HTMLDivElement | null>(null)\n\n // Value refs\n const listFocusedRef = useRef(false)\n const valueRef = useRef(value)\n const valuePropRef = useRef(valueProp)\n const popoverMouseWithinRef = useRef(false)\n\n // Forward ref to parent\n useImperativeHandle<HTMLInputElement | null, HTMLInputElement | null>(\n forwardedRef,\n () => inputElementRef.current,\n )\n\n const listBoxId = `${id}-listbox`\n const options = Array.isArray(optionsProp) ? optionsProp : EMPTY_ARRAY\n const padding = useArrayProp(paddingProp)\n const currentOption = useMemo(\n () => (value !== null ? options.find((o) => o.value === value) : undefined),\n [options, value],\n )\n const filteredOptions = useMemo(\n () => options.filter((option) => (query ? filterOption(query, option) : true)),\n [filterOption, options, query],\n )\n const filteredOptionsLen = filteredOptions.length\n const activeItemId = activeValue ? `${id}-option-${activeValue}` : undefined\n const expanded = (query !== null && loading) || (focused && query !== null)\n\n const handleRootBlur = useCallback(\n (event: FocusEvent<HTMLInputElement>) => {\n setTimeout(() => {\n // NOTE: This is a workaround for a bug that may happen in Chrome (clicking the scrollbar\n // closes the results in certain situations):\n // - Do not handle blur if the mouse is within the popover\n if (popoverMouseWithinRef.current) {\n return\n }\n\n const elements: HTMLElement[] = (relatedElements || []).concat(\n rootElementRef.current ? [rootElementRef.current] : [],\n resultsPopoverElementRef.current ? [resultsPopoverElementRef.current] : [],\n )\n\n let focusInside = false\n\n if (document.activeElement) {\n for (const e of elements) {\n if (e === document.activeElement || e.contains(document.activeElement)) {\n focusInside = true\n break\n }\n }\n }\n\n if (focusInside === false) {\n dispatch({type: 'root/blur'})\n popoverMouseWithinRef.current = false\n if (onQueryChange) onQueryChange(null)\n if (onBlur) onBlur(event)\n }\n }, 0)\n },\n [onBlur, onQueryChange, relatedElements],\n )\n\n const handleRootFocus = useCallback((event: FocusEvent<HTMLDivElement>) => {\n const listBoxElement = listBoxElementRef.current\n const focusedElement = event.target instanceof HTMLElement ? event.target : null\n const listFocused = listBoxElement?.contains(focusedElement) || false\n\n if (listFocused !== listFocusedRef.current) {\n listFocusedRef.current = listFocused\n\n dispatch({type: 'root/setListFocused', listFocused})\n }\n }, [])\n\n const handleOptionSelect = useCallback(\n (v: string) => {\n dispatch({type: 'value/change', value: v})\n\n popoverMouseWithinRef.current = false\n\n if (onSelect) onSelect(v)\n\n valueRef.current = v\n\n if (onChange) onChange(v)\n if (onQueryChange) onQueryChange(null)\n\n inputElementRef.current?.focus()\n },\n [onChange, onSelect, onQueryChange],\n )\n\n const handleRootKeyDown = useCallback(\n (event: KeyboardEvent<HTMLElement>) => {\n if (event.key === 'ArrowDown') {\n event.preventDefault()\n\n if (!filteredOptionsLen) return\n\n const activeOption = filteredOptions.find((o) => o.value === activeValue)\n const activeIndex = activeOption ? filteredOptions.indexOf(activeOption) : -1\n const nextActiveOption = filteredOptions[(activeIndex + 1) % filteredOptionsLen]\n\n if (nextActiveOption) {\n dispatch({type: 'root/setActiveValue', value: nextActiveOption.value, listFocused: true})\n }\n\n return\n }\n\n if (event.key === 'ArrowUp') {\n event.preventDefault()\n\n if (!filteredOptionsLen) return\n\n const activeOption = filteredOptions.find((o) => o.value === activeValue)\n const activeIndex = activeOption ? filteredOptions.indexOf(activeOption) : -1\n const nextActiveOption =\n filteredOptions[\n activeIndex === -1\n ? filteredOptionsLen - 1\n : (filteredOptionsLen + activeIndex - 1) % filteredOptionsLen\n ]\n\n if (nextActiveOption) {\n dispatch({type: 'root/setActiveValue', value: nextActiveOption.value, listFocused: true})\n }\n\n return\n }\n\n if (event.key === 'Escape') {\n dispatch({type: 'root/escape'})\n popoverMouseWithinRef.current = false\n if (onQueryChange) onQueryChange(null)\n inputElementRef.current?.focus()\n\n return\n }\n\n const target = event.target as Node\n const listEl = listBoxElementRef.current\n\n if (\n (listEl === target || listEl?.contains(target)) &&\n !AUTOCOMPLETE_LISTBOX_IGNORE_KEYS.includes(event.key)\n ) {\n inputElementRef.current?.focus()\n\n return\n }\n },\n [activeValue, filteredOptions, filteredOptionsLen, onQueryChange],\n )\n\n const handleInputChange = useCallback(\n (event: ChangeEvent<HTMLInputElement>) => {\n const nextQuery = event.currentTarget.value\n\n dispatch({type: 'input/change', query: nextQuery})\n\n if (onQueryChange) onQueryChange(nextQuery)\n },\n [onQueryChange],\n )\n\n const dispatchOpen = useCallback(() => {\n dispatch({\n type: 'root/open',\n query: value ? renderValue(value, currentOption) : '',\n })\n }, [currentOption, renderValue, value])\n\n const handleInputFocus = useCallback(\n (event: FocusEvent<HTMLInputElement>) => {\n if (!focused) {\n dispatch({type: 'input/focus'})\n\n if (onFocus) onFocus(event)\n if (openOnFocus) dispatchOpen()\n }\n },\n [focused, onFocus, openOnFocus, dispatchOpen],\n )\n\n const handlePopoverMouseEnter = useCallback(() => {\n popoverMouseWithinRef.current = true\n }, [])\n\n const handlePopoverMouseLeave = useCallback(() => {\n popoverMouseWithinRef.current = false\n }, [])\n\n const handleClearButtonClick = useCallback(() => {\n dispatch({type: 'root/clear'})\n valueRef.current = ''\n if (onChange) onChange('')\n if (onQueryChange) onQueryChange(null)\n inputElementRef.current?.focus()\n }, [onChange, onQueryChange])\n\n const handleClearButtonFocus = useCallback(() => {\n dispatch({type: 'input/focus'})\n }, [])\n\n // Change the value when `value` prop changes\n useEffect(() => {\n // If `valueProp` changed\n if (valueProp !== valuePropRef.current) {\n valuePropRef.current = valueProp\n\n if (valueProp !== undefined) {\n dispatch({type: 'value/change', value: valueProp})\n valueRef.current = valueProp\n }\n\n return\n }\n\n // If `valueProp` is not equal to `value`\n if (valueProp !== valueRef.current) {\n valueRef.current = valueProp || null\n\n dispatch({type: 'value/change', value: valueProp || null})\n }\n }, [valueProp])\n\n // Reset active item when closing\n useEffect(() => {\n if (!focused && valueRef.current) {\n dispatch({type: 'root/setActiveValue', value: valueRef.current})\n }\n }, [focused])\n\n // Focus the selected item\n useEffect(() => {\n const listElement = listBoxElementRef.current\n\n if (!listElement) return\n\n const activeOption = filteredOptions.find((o) => o.value === activeValue)\n\n if (activeOption) {\n const activeIndex = filteredOptions.indexOf(activeOption)\n const activeItemElement = listElement.childNodes[activeIndex] as HTMLLIElement | undefined\n\n if (activeItemElement) {\n if (_hasFocus(activeItemElement)) {\n // already focused\n return\n }\n\n focusFirstDescendant(activeItemElement)\n }\n }\n }, [activeValue, filteredOptions])\n\n const clearButton = useMemo(() => {\n if (!loading && !disabled && value) {\n return {\n 'aria-label': 'Clear',\n 'onFocus': handleClearButtonFocus,\n }\n }\n\n return undefined\n }, [disabled, handleClearButtonFocus, loading, value])\n\n const openButtonBoxPadding = useMemo(\n () =>\n padding.map((v) => {\n if (v === 0) return 0\n if (v === 1) return 1\n if (v === 2) return 1\n\n return (v as Space) - 2\n }) as Space[],\n [padding],\n )\n\n const openButtonPadding = useMemo(\n () => padding.map((v) => Math.max((v as Space) - 1, 0)) as Space[],\n [padding],\n )\n\n const openButtonProps: AutocompleteOpenButtonProps = useMemo(\n () => (typeof openButton === 'object' ? openButton : EMPTY_RECORD),\n [openButton],\n )\n\n const handleOpenClick = useCallback(\n (event: MouseEvent<HTMLButtonElement>) => {\n dispatchOpen()\n\n if (openButtonProps.onClick) openButtonProps.onClick(event)\n\n _raf(() => inputElementRef.current?.focus())\n },\n [openButtonProps, dispatchOpen],\n )\n\n const openButtonNode = useMemo(\n () =>\n !disabled && !readOnly && openButton ? (\n <Box aria-hidden={expanded} padding={openButtonBoxPadding}>\n <Button\n aria-label=\"Open\"\n disabled={expanded}\n display=\"block\"\n fontSize={fontSize}\n icon={ChevronDownIcon}\n mode=\"bleed\"\n padding={openButtonPadding}\n {...openButtonProps}\n onClick={handleOpenClick}\n />\n </Box>\n ) : undefined,\n [\n disabled,\n expanded,\n fontSize,\n handleOpenClick,\n openButton,\n openButtonBoxPadding,\n openButtonPadding,\n openButtonProps,\n readOnly,\n ],\n )\n\n const inputValue = useMemo(() => {\n if (query === null) {\n if (value !== null) {\n return renderValue(value, currentOption)\n }\n\n return ''\n }\n\n return query\n }, [currentOption, query, renderValue, value])\n\n const input = (\n <TextInput\n {...restProps}\n aria-activedescendant={activeItemId}\n aria-autocomplete=\"list\"\n aria-expanded={expanded}\n aria-owns={listBoxId}\n autoCapitalize=\"off\"\n autoComplete=\"off\"\n autoCorrect=\"off\"\n border={border}\n clearButton={clearButton}\n customValidity={customValidity}\n disabled={disabled}\n fontSize={fontSize}\n icon={icon}\n iconRight={loading && AnimatedSpinnerIcon}\n id={id}\n inputMode=\"search\"\n onChange={handleInputChange}\n onClear={handleClearButtonClick}\n onFocus={handleInputFocus}\n padding={padding}\n prefix={prefix}\n radius={radius}\n readOnly={readOnly}\n ref={inputElementRef}\n role=\"combobox\"\n spellCheck={false}\n suffix={suffix || openButtonNode}\n value={inputValue}\n />\n )\n\n const handleListBoxKeyDown = useCallback(\n (event: KeyboardEvent<HTMLDivElement>) => {\n // If the focus is currently in the list, move focus to the input element\n if (event.key === 'Tab') {\n if (listFocused) inputElementRef.current?.focus()\n }\n },\n [listFocused],\n )\n\n const content = useMemo(() => {\n if (filteredOptions.length === 0) return null\n\n return (\n <Box\n data-ui=\"AutoComplete__results\"\n onKeyDown={handleListBoxKeyDown}\n padding={1}\n {...listBox}\n tabIndex={-1}\n >\n <Stack\n as=\"ul\"\n aria-multiselectable={false}\n data-ui=\"AutoComplete__resultsList\"\n id={listBoxId}\n ref={listBoxElementRef}\n role=\"listbox\"\n space={1}\n >\n {filteredOptions.map((option) => {\n const active =\n activeValue !== null ? option.value === activeValue : currentOption === option\n\n return (\n <AutocompleteOption\n id={`${id}-option-${option.value}`}\n key={option.value}\n onSelect={handleOptionSelect}\n selected={active}\n value={option.value}\n >\n {cloneElement(renderOption(option), {\n disabled: loading,\n selected: active,\n tabIndex: listFocused && active ? 0 : -1,\n })}\n </AutocompleteOption>\n )\n })}\n </Stack>\n </Box>\n )\n }, [\n activeValue,\n currentOption,\n filteredOptions,\n handleOptionSelect,\n handleListBoxKeyDown,\n id,\n listBox,\n listBoxId,\n listFocused,\n loading,\n renderOption,\n ])\n\n const results = useMemo(() => {\n if (renderPopover) {\n return renderPopover(\n {\n content,\n hidden: !expanded,\n inputElement: inputElementRef.current,\n onMouseEnter: handlePopoverMouseEnter,\n onMouseLeave: handlePopoverMouseLeave,\n },\n resultsPopoverElementRef,\n )\n }\n\n if (filteredOptionsLen === 0) {\n return null\n }\n\n return (\n <Popover\n arrow={false}\n constrainSize\n content={content}\n fallbackPlacements={AUTOCOMPLETE_POPOVER_FALLBACK_PLACEMENTS}\n matchReferenceWidth\n onMouseEnter={handlePopoverMouseEnter}\n onMouseLeave={handlePopoverMouseLeave}\n open={expanded}\n overflow=\"auto\"\n placement={AUTOCOMPLETE_POPOVER_PLACEMENT}\n portal\n radius={radius}\n ref={resultsPopoverElementRef}\n referenceElement={inputElementRef.current}\n {...popover}\n />\n )\n }, [\n content,\n expanded,\n filteredOptionsLen,\n handlePopoverMouseEnter,\n handlePopoverMouseLeave,\n popover,\n radius,\n renderPopover,\n ])\n\n return (\n // eslint-disable-next-line jsx-a11y/no-static-element-interactions\n <div\n data-ui=\"Autocomplete\"\n onBlur={handleRootBlur}\n onFocus={handleRootFocus}\n onKeyDown={handleRootKeyDown}\n ref={rootElementRef}\n >\n {input}\n {results}\n </div>\n )\n})\n\nInnerAutocomplete.displayName = 'ForwardRef(Autocomplete)'\n\n/**\n * The Autocomplete component is typically used for search components.\n * It consists of a text input for writing a query, and properties for rendering suggestions.\n *\n * @public\n */\nexport const Autocomplete = InnerAutocomplete as <Option extends BaseAutocompleteOption>(\n props: Omit<\n Props<AutocompleteProps<Option>, 'input'>,\n | 'aria-activedescendant'\n | 'aria-autocomplete'\n | 'aria-expanded'\n | 'aria-owns'\n | 'autoCapitalize'\n | 'autoComplete'\n | 'autoCorrect'\n | 'inputMode'\n | 'role'\n | 'spellCheck'\n | 'type'\n >,\n) => ReactElement\n","import {breadcrumbs, composeClassNames, GapStyleProps} from '@sanity/ui/css'\nimport {Space} from '@sanity/ui/theme'\nimport {\n Children,\n ForwardedRef,\n forwardRef,\n Fragment,\n isValidElement,\n ReactNode,\n useCallback,\n useMemo,\n useRef,\n useState,\n} from 'react'\n\nimport {useClickOutsideEvent} from '../../hooks'\nimport {Box, Button, ButtonProps, Flex, Popover, Stack, Text} from '../../primitives'\nimport {Props} from '../../types'\n\n/**\n * @beta\n */\nexport interface BreadcrumbsProps extends GapStyleProps {\n expandButton?: Omit<ButtonProps, 'onClick' | 'selected'>\n maxLength?: number\n separator?: ReactNode\n /** @deprecated - Use `gap`, `gapX`, `gapY` instead */\n space?: number | number[]\n}\n\n/**\n * @beta\n */\nexport const Breadcrumbs = forwardRef(function Breadcrumbs(\n props: Props<BreadcrumbsProps, 'div'>,\n ref: ForwardedRef<HTMLDivElement>,\n) {\n const {\n children,\n className,\n expandButton: expandButtonProps,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n gap: _gapProp,\n gapX = props.gap ?? (props.space as Space | undefined) ?? 2,\n gapY = props.gap ?? (props.space as Space | undefined) ?? 2,\n maxLength,\n separator,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n space: _spaceProp,\n ...restProps\n } = props\n const [open, setOpen] = useState(false)\n const expandElementRef = useRef<HTMLButtonElement | null>(null)\n const popoverElementRef = useRef<HTMLDivElement | null>(null)\n\n const collapse = useCallback(() => setOpen(false), [])\n const expand = useCallback(() => setOpen(true), [])\n\n useClickOutsideEvent(collapse, () => [expandElementRef.current, popoverElementRef.current])\n\n const rawItems = useMemo(() => Children.toArray(children).filter(isValidElement), [children])\n\n const items = useMemo(() => {\n const len = rawItems.length\n\n if (maxLength && len > maxLength) {\n const beforeLength = Math.ceil(maxLength / 2)\n const afterLength = Math.floor(maxLength / 2)\n\n return [\n ...rawItems.slice(0, beforeLength - 1),\n <Popover\n constrainSize\n content={\n <Stack as=\"ol\" overflow=\"auto\" space={gapY}>\n {rawItems.slice(beforeLength - 1, len - afterLength)}\n </Stack>\n }\n key=\"button\"\n open={open}\n padding={2}\n placement=\"top\"\n portal\n ref={popoverElementRef}\n >\n <Button\n mode=\"bleed\"\n padding={0}\n text=\"…\"\n {...expandButtonProps}\n onClick={open ? collapse : expand}\n ref={expandElementRef}\n selected={open}\n />\n </Popover>,\n ...rawItems.slice(len - afterLength),\n ]\n }\n\n return rawItems\n }, [collapse, expand, expandButtonProps, gapY, maxLength, open, rawItems])\n\n return (\n <Flex\n as=\"nav\"\n data-ui=\"Breadcrumbs\"\n {...restProps}\n className={composeClassNames(className, breadcrumbs())}\n gapX={gapX}\n gapY={gapY}\n ref={ref}\n >\n {items.map((item, itemIndex) => (\n <Fragment key={itemIndex}>\n {itemIndex > 0 && (\n <Box aria-hidden as=\"li\">\n {separator || <Text muted>/</Text>}\n </Box>\n )}\n <Box as=\"li\">{item}</Box>\n </Fragment>\n ))}\n </Flex>\n )\n})\n\nBreadcrumbs.displayName = 'ForwardRef(Breadcrumbs)'\n","import {createGlobalScopedContext} from '../../lib/createGlobalScopedContext'\nimport {DialogPosition} from '../../types'\n\n/**\n * This API might change. DO NOT USE IN PRODUCTION.\n * @beta\n */\nexport interface DialogContextValue {\n version: 0.0\n position?: DialogPosition | DialogPosition[]\n zOffset?: number | number[]\n}\n\n/**\n * @internal\n */\nexport const DialogContext = createGlobalScopedContext<DialogContextValue>(\n '@sanity/ui/context/dialog',\n {version: 0.0},\n)\n","import {useContext} from 'react'\n\nimport {DialogContext, DialogContextValue} from './dialogContext'\n\n/**\n * This API might change. DO NOT USE IN PRODUCTION.\n * @beta\n */\nexport function useDialog(): DialogContextValue {\n return useContext(DialogContext)\n}\n","import {CloseIcon} from '@sanity/icons'\nimport {\n composeClassNames,\n ContainerStyleProps,\n dialog,\n dialogCardRoot,\n dialogContainer,\n dialogContent,\n dialogFooter,\n dialogHeader,\n dialogLayout,\n PaddingStyleProps,\n RadiusStyleProps,\n ResponsiveProp,\n ShadowStyleProps,\n} from '@sanity/ui/css'\nimport {ThemeColorSchemeKey} from '@sanity/ui/theme'\nimport {\n FocusEvent,\n ForwardedRef,\n forwardRef,\n ReactNode,\n useCallback,\n useEffect,\n useImperativeHandle,\n useRef,\n} from 'react'\n\nimport {useTheme_v2} from '../../_compat'\nimport {\n containsOrEqualsElement,\n focusFirstDescendant,\n focusLastDescendant,\n isHTMLElement,\n} from '../../helpers'\nimport {\n useArrayProp,\n useClickOutsideEvent,\n useGlobalKeyDown,\n usePrefersReducedMotion,\n} from '../../hooks'\nimport {Box, Button, Card, Container, Flex, Text} from '../../primitives'\nimport {CardTone, DialogPosition, Props, Radius} from '../../types'\nimport {Layer, LayerProps, Portal, useBoundaryElement, useLayer, usePortal} from '../../utils'\nimport {useDialog} from './useDialog'\n\n/**\n * @public\n */\nexport interface DialogProps extends ContainerStyleProps, PaddingStyleProps, ShadowStyleProps {\n /**\n * @beta\n */\n __unstable_autoFocus?: boolean\n /**\n * @beta\n */\n __unstable_hideCloseButton?: boolean\n /**\n * Whether the dialog should animate in on mount.\n *\n * @beta\n * @defaultValue false\n */\n animate?: boolean\n cardRadius?: ResponsiveProp<Radius>\n contentRef?: ForwardedRef<HTMLDivElement>\n footer?: ReactNode\n header?: ReactNode\n id: string\n /** A callback that fires when the dialog becomes the top layer when it was not the top layer before. */\n onActivate?: LayerProps['onActivate']\n onClickOutside?: () => void\n onClose?: () => void\n open?: boolean\n portal?: string\n position?: DialogPosition | DialogPosition[]\n scheme?: ThemeColorSchemeKey\n tone?: CardTone\n zOffset?: number | number[]\n}\n\ninterface DialogCardProps extends ContainerStyleProps, RadiusStyleProps, ShadowStyleProps {\n /**\n * @beta\n */\n __unstable_autoFocus: boolean\n /**\n * @beta\n */\n __unstable_hideCloseButton: boolean\n children: ReactNode\n contentRef?: ForwardedRef<HTMLDivElement>\n footer: ReactNode\n header: ReactNode\n id: string\n onClickOutside?: () => void\n onClose?: () => void\n portal?: string\n // radius: Radius | Radius[]\n scheme?: ThemeColorSchemeKey\n // shadow: number | number[]\n tone?: CardTone\n}\n\nfunction isTargetWithinScope(\n boundaryElement: HTMLElement | null,\n portalElement: HTMLElement | null,\n target: Node,\n): boolean {\n if (!boundaryElement || !portalElement) return true\n\n return (\n containsOrEqualsElement(boundaryElement, target) ||\n containsOrEqualsElement(portalElement, target)\n )\n}\n\nconst DialogCard = forwardRef(function DialogCard(\n props: DialogCardProps,\n forwardedRef: ForwardedRef<HTMLDivElement>,\n) {\n const {\n __unstable_autoFocus: autoFocus,\n __unstable_hideCloseButton: hideCloseButton,\n children,\n contentRef: forwardedContentRef,\n footer,\n header,\n id,\n onClickOutside,\n onClose,\n portal: portalProp,\n radius: radiusProp,\n scheme,\n shadow: shadowProp = 4,\n tone,\n width: widthProp,\n } = props\n const portal = usePortal()\n const portalElement = portalProp ? portal.elements?.[portalProp] || null : portal.element\n const boundaryElement = useBoundaryElement().element\n const radius = useArrayProp(radiusProp)\n const shadow = useArrayProp(shadowProp)\n const width = useArrayProp(widthProp)\n const ref = useRef<HTMLDivElement | null>(null)\n const contentRef = useRef<HTMLDivElement | null>(null)\n const layer = useLayer()\n const {isTopLayer} = layer\n const labelId = `${id}_label`\n const showCloseButton = Boolean(onClose) && hideCloseButton === false\n const showHeader = Boolean(header) || showCloseButton\n\n useImperativeHandle<HTMLDivElement | null, HTMLDivElement | null>(forwardedRef, () => ref.current)\n useImperativeHandle<HTMLDivElement | null, HTMLDivElement | null>(\n forwardedContentRef,\n () => contentRef.current,\n )\n\n useEffect(() => {\n if (!autoFocus) return\n\n // On mount: focus the first focusable element\n if (ref.current) {\n focusFirstDescendant(ref.current)\n }\n }, [autoFocus, ref])\n\n useGlobalKeyDown(\n useCallback(\n (event: KeyboardEvent) => {\n if (!isTopLayer || !onClose) return\n\n const target = document.activeElement\n\n if (target && !isTargetWithinScope(boundaryElement, portalElement, target)) {\n // Ignore key presses when the focused element is outside of scope\n return\n }\n\n if (event.key === 'Escape') {\n event.preventDefault()\n event.stopPropagation()\n onClose()\n }\n },\n [boundaryElement, isTopLayer, onClose, portalElement],\n ),\n )\n\n useClickOutsideEvent(\n isTopLayer &&\n onClickOutside &&\n ((event) => {\n const target = event.target as Node | null\n\n if (target && !isTargetWithinScope(boundaryElement, portalElement, target)) {\n // Ignore clicks outside of the scope\n return\n }\n\n onClickOutside()\n }),\n () => [ref.current],\n )\n\n return (\n <Container\n align=\"center\"\n className={dialogContainer()}\n data-ui=\"DialogCard\"\n direction=\"column\"\n display=\"flex\"\n justify=\"center\"\n width={width}\n >\n <Card\n className={dialogCardRoot()}\n display=\"flex\"\n radius={radius}\n ref={ref}\n scheme={scheme}\n shadow={shadow}\n tone={tone}\n >\n <Flex className={dialogLayout()} direction=\"column\" flex={1}>\n {showHeader && (\n <Box className={dialogHeader()} position=\"relative\">\n <Flex align=\"flex-start\" padding={3}>\n <Box flex={1} padding={2}>\n {header && (\n <Text id={labelId} size={1} weight=\"semibold\">\n {header}\n </Text>\n )}\n </Box>\n {showCloseButton && (\n <Box flex=\"none\">\n <Button\n aria-label=\"Close dialog\"\n disabled={!onClose}\n icon={CloseIcon}\n mode=\"bleed\"\n onClick={onClose}\n padding={2}\n />\n </Box>\n )}\n </Flex>\n </Box>\n )}\n <Box\n className={dialogContent()}\n flex={1}\n overflow=\"auto\"\n position=\"relative\"\n ref={contentRef}\n tabIndex={-1}\n >\n {children}\n </Box>\n {footer && (\n <Box className={dialogFooter()} position=\"relative\">\n {footer}\n </Box>\n )}\n </Flex>\n </Card>\n </Container>\n )\n})\n\nDialogCard.displayName = 'ForwardRef(DialogCard)'\n\n/**\n * The Dialog component.\n *\n * @public\n */\nexport const Dialog = forwardRef(function Dialog(\n props: Props<DialogProps, 'div'>,\n ref: ForwardedRef<HTMLDivElement>,\n) {\n const context = useDialog()\n const {layer} = useTheme_v2()\n const {\n __unstable_autoFocus: autoFocus = true,\n __unstable_hideCloseButton: hideCloseButton = false,\n animate: _animate = false,\n cardRadius: cardRadiusProp = 4,\n // cardShadow = 3,\n children,\n className,\n contentRef,\n footer,\n header,\n id,\n onActivate,\n onClickOutside,\n onClose,\n onFocus,\n padding = 3,\n portal: portalProp,\n position: _positionProp,\n scheme,\n shadow: cardShadow,\n width: widthProp = 0,\n zOffset: _zOffsetProp,\n tone,\n ...restProps\n } = props\n const positionProp = _positionProp ?? (context.position || 'fixed')\n const zOffsetProp = _zOffsetProp ?? (context.zOffset || layer.dialog.zOffset)\n const prefersReducedMotion = usePrefersReducedMotion()\n const animate = prefersReducedMotion ? false : _animate\n const portal = usePortal()\n const portalElement = portalProp ? portal.elements?.[portalProp] || null : portal.element\n const boundaryElement = useBoundaryElement().element\n const cardRadius = useArrayProp(cardRadiusProp)\n const position = useArrayProp(positionProp)\n const width = useArrayProp(widthProp)\n const zOffset = useArrayProp(zOffsetProp)\n const preDivRef = useRef<HTMLDivElement | null>(null)\n const postDivRef = useRef<HTMLDivElement | null>(null)\n const cardRef = useRef<HTMLDivElement | null>(null)\n const focusedElementRef = useRef<HTMLElement | null>(null)\n\n const handleFocus = useCallback(\n (event: FocusEvent<HTMLDivElement>) => {\n onFocus?.(event)\n\n const target = event.target\n const cardElement = cardRef.current\n\n if (cardElement && target === preDivRef.current) {\n focusLastDescendant(cardElement)\n\n return\n }\n\n if (cardElement && target === postDivRef.current) {\n focusFirstDescendant(cardElement)\n\n return\n }\n\n if (isHTMLElement(event.target)) {\n focusedElementRef.current = event.target\n }\n },\n [onFocus],\n )\n\n const labelId = `${id}_label`\n\n const rootClickTimeoutRef = useRef<NodeJS.Timeout>(undefined)\n\n // If the resulting active element (a.k.a. focused element) is not withing scope when clicking\n // within the dialog, then we want to focus the previously interactive element in the dialog instead.\n // This is to allow the user to tab or close the dialog by pressing escape.\n const handleRootClick = useCallback(() => {\n if (rootClickTimeoutRef.current) {\n clearTimeout(rootClickTimeoutRef.current)\n }\n\n rootClickTimeoutRef.current = setTimeout(() => {\n const activeElement = document.activeElement\n\n if (activeElement && !isTargetWithinScope(boundaryElement, portalElement, activeElement)) {\n const target = focusedElementRef.current\n\n if (!target || !document.body.contains(target)) {\n // No previously focused element, or it's not in the document anymore\n const cardElement = cardRef.current\n if (cardElement) focusFirstDescendant(cardElement)\n\n return\n }\n\n target.focus()\n }\n }, 0)\n }, [boundaryElement, portalElement])\n\n return (\n <Portal __unstable_name={portalProp}>\n <Layer\n {...restProps}\n aria-labelledby={labelId}\n aria-modal\n className={composeClassNames(className, dialog())}\n data-animate={animate ? '' : undefined}\n data-ui=\"Dialog\"\n display=\"flex\"\n id={id}\n onActivate={onActivate}\n onClick={handleRootClick}\n onFocus={handleFocus}\n padding={padding}\n position={position}\n ref={ref}\n role=\"dialog\"\n zOffset={zOffset}\n >\n {/* eslint-disable-next-line jsx-a11y/no-noninteractive-tabindex */}\n <div ref={preDivRef} tabIndex={0} />\n <DialogCard\n __unstable_autoFocus={autoFocus}\n __unstable_hideCloseButton={hideCloseButton}\n contentRef={contentRef}\n footer={footer}\n header={header}\n id={id}\n onClickOutside={onClickOutside}\n onClose={onClose}\n portal={portalProp}\n radius={cardRadius}\n ref={cardRef}\n scheme={scheme}\n shadow={cardShadow}\n tone={tone}\n width={width}\n >\n {children}\n </DialogCard>\n {/* eslint-disable-next-line jsx-a11y/no-noninteractive-tabindex */}\n <div ref={postDivRef} tabIndex={0} />\n </Layer>\n </Portal>\n )\n})\n\nDialog.displayName = 'ForwardRef(Dialog)'\n","import {ReactElement, ReactNode, useMemo} from 'react'\n\nimport {DialogPosition} from '../../types'\nimport {DialogContext, DialogContextValue} from './dialogContext'\n\n/**\n * This API might change. DO NOT USE IN PRODUCTION.\n * @beta\n */\nexport interface DialogProviderProps {\n children?: ReactNode\n position?: DialogPosition | DialogPosition[]\n zOffset?: number | number[]\n}\n\n/**\n * This API might change. DO NOT USE IN PRODUCTION.\n * @beta\n */\nexport function DialogProvider(props: DialogProviderProps): ReactElement {\n const {children, position, zOffset} = props\n\n const contextValue: DialogContextValue = useMemo(\n () => ({\n version: 0.0,\n position,\n zOffset,\n }),\n [position, zOffset],\n )\n\n return <DialogContext.Provider value={contextValue}>{children}</DialogContext.Provider>\n}\n\nDialogProvider.displayName = 'DialogProvider'\n","import {ThemeColorSchemeKey} from '@sanity/ui/theme'\nimport {\n cloneElement,\n FocusEvent,\n ForwardedRef,\n forwardRef,\n KeyboardEvent,\n MouseEvent as ReactMouseEvent,\n ReactElement,\n useCallback,\n useEffect,\n useImperativeHandle,\n useMemo,\n useRef,\n useState,\n} from 'react'\n\nimport {ButtonProps, Popover, PopoverProps} from '../../primitives'\nimport {Placement, Props, Radius} from '../../types'\nimport {MenuProps} from './menu'\n\n/**\n * @public\n */\nexport interface MenuButtonProps {\n /**\n * @beta Do not use in production.\n */\n __unstable_disableRestoreFocusOnClose?: boolean\n /**\n * @deprecated Use `popover={{boundaryElement: element}}` instead.\n */\n boundaryElement?: HTMLElement\n button: ReactElement<Props<ButtonProps, 'button'>>\n id: string\n menu?: ReactElement\n onClose?: () => void\n onOpen?: () => void\n /**\n * @deprecated Use `popover={{placement: 'top'}}` instead.\n */\n placement?: Placement\n popover?: Omit<PopoverProps, 'content' | 'open'>\n /**\n * @deprecated Use `popover={{scheme: 'dark'}}` instead.\n */\n popoverScheme?: ThemeColorSchemeKey\n /**\n * @deprecated Use `popover={{radius: 2}}` instead.\n */\n popoverRadius?: Radius | Radius[]\n /**\n * @beta Do not use in production.\n * @deprecated Use `popover={{portal: true}}` instead.\n */\n portal?: boolean\n /**\n * @deprecated Use `popover={{preventOverflow: true}}` instead.\n */\n preventOverflow?: boolean\n}\n\n/**\n * The `MenuButton` component follows the WAI-ARIA specification for menu buttons.\n *\n * @public\n */\nexport const MenuButton = forwardRef(function MenuButton(\n props: MenuButtonProps,\n forwardedRef: ForwardedRef<HTMLButtonElement | null>,\n) {\n const {\n __unstable_disableRestoreFocusOnClose: disableRestoreFocusOnClose = false,\n boundaryElement: deprecated_boundaryElement,\n button: buttonProp,\n id,\n menu: menuProp,\n onClose,\n onOpen,\n placement: deprecated_placement,\n popoverScheme: deprecated_popoverScheme,\n portal: deprecated_portal = true,\n popover,\n popoverRadius: deprecated_popoverRadius,\n preventOverflow: deprecated_preventOverflow,\n } = props\n const [open, setOpen] = useState(false)\n const [shouldFocus, setShouldFocus] = useState<'first' | 'last' | null>(null)\n const [buttonElement, setButtonElement] = useState<HTMLButtonElement | null>(null)\n const [menuElements, setChildMenuElements] = useState<HTMLElement[]>([])\n const openRef = useRef<boolean>(open)\n\n // Notify consumers when the menu opens\n useEffect(() => {\n if (onOpen && open && !openRef.current) {\n onOpen()\n }\n }, [onOpen, open])\n\n // Notify consumers when the menu closes\n useEffect(() => {\n if (onClose && !open && openRef.current) {\n onClose()\n }\n }, [onClose, open])\n\n useEffect(() => {\n openRef.current = open\n }, [open])\n\n const handleButtonClick = useCallback(() => {\n setOpen((v) => !v)\n setShouldFocus(null)\n }, [])\n\n // Prevent mouse event propagation when the menu is open.\n // This is to ensure that `handleBlur` isn't triggered when clicking the menu button whilst open,\n // which can lead to `setOpen` being triggered multiple times (once by `handleBlur`, and again by `handleButtonClick`).\n const handleMouseDown = useCallback(\n (event: ReactMouseEvent<HTMLElement>) => {\n if (open) event.preventDefault()\n },\n [open],\n )\n\n const handleButtonKeyDown = useCallback((event: KeyboardEvent<HTMLButtonElement>) => {\n // On `ArrowDown`, `Enter` and `Space`\n // - Opens menu and moves focus to first menuitem\n if (event.key === 'ArrowDown' || event.key === 'Enter' || event.key === ' ') {\n event.preventDefault()\n setOpen(true)\n setShouldFocus('first')\n\n return\n }\n\n // On `ArrowUp`\n // - \tOpens menu and moves focus to last menuitem\n if (event.key === 'ArrowUp') {\n event.preventDefault()\n setOpen(true)\n setShouldFocus('last')\n\n return\n }\n }, [])\n\n const handleMenuClickOutside = useCallback(\n (event: MouseEvent) => {\n const target = event.target\n\n if (!(target instanceof Node)) {\n return\n }\n\n if (buttonElement && (target === buttonElement || buttonElement.contains(target))) {\n return\n }\n\n for (const el of menuElements) {\n if (target === el || el.contains(target)) {\n return\n }\n }\n\n setOpen(false)\n },\n [buttonElement, menuElements],\n )\n\n const handleMenuEscape = useCallback(() => {\n setOpen(false)\n if (disableRestoreFocusOnClose) return\n if (buttonElement) buttonElement.focus()\n }, [buttonElement, disableRestoreFocusOnClose])\n\n const handleBlur = useCallback(\n (event: FocusEvent<HTMLDivElement>) => {\n const target = event.relatedTarget\n\n if (!(target instanceof Node)) {\n return\n }\n\n for (const el of menuElements) {\n if (el === target || el.contains(target)) {\n return\n }\n }\n\n setOpen(false)\n },\n [menuElements],\n )\n\n const handleItemClick = useCallback(() => {\n setOpen(false)\n if (disableRestoreFocusOnClose) return\n if (buttonElement) buttonElement.focus()\n }, [buttonElement, disableRestoreFocusOnClose])\n\n const registerElement = useCallback((el: HTMLElement) => {\n setChildMenuElements((els) => els.concat([el]))\n\n return () => setChildMenuElements((els) => els.filter((_el) => _el !== el))\n }, [])\n\n const menuProps: Props<MenuProps, 'div'> = {\n 'aria-labelledby': id,\n 'onBlurCapture': handleBlur,\n 'onClickOutside': handleMenuClickOutside,\n 'onEscape': handleMenuEscape,\n 'onItemClick': handleItemClick,\n 'originElement': buttonElement,\n registerElement,\n shouldFocus,\n }\n\n const menu = menuProp && cloneElement(menuProp, menuProps)\n\n const button = useMemo(() => {\n if (!buttonProp) return null\n\n const buttonProps = {\n 'data-ui': 'MenuButton',\n id,\n 'onClick': handleButtonClick,\n 'onKeyDown': handleButtonKeyDown,\n 'onMouseDown': handleMouseDown,\n 'aria-haspopup': true,\n 'aria-expanded': open,\n 'ref': setButtonElement,\n 'selected': buttonProp.props.selected ?? open,\n } satisfies Props<ButtonProps, 'button'> & {ref: ForwardedRef<HTMLButtonElement>}\n\n return cloneElement(buttonProp, buttonProps)\n }, [buttonProp, handleButtonClick, handleButtonKeyDown, handleMouseDown, id, open])\n\n // Forward button ref to parent\n useImperativeHandle<HTMLButtonElement | null, HTMLButtonElement | null>(\n forwardedRef,\n () => buttonElement,\n [buttonElement],\n )\n\n const popoverProps: MenuButtonProps['popover'] = useMemo(\n () => ({\n boundaryElement: deprecated_boundaryElement,\n overflow: 'auto',\n placement: deprecated_placement,\n portal: deprecated_portal,\n preventOverflow: deprecated_preventOverflow,\n radius: deprecated_popoverRadius,\n scheme: deprecated_popoverScheme,\n ...(popover || {}),\n }),\n [\n deprecated_boundaryElement,\n deprecated_placement,\n deprecated_popoverRadius,\n deprecated_popoverScheme,\n deprecated_portal,\n deprecated_preventOverflow,\n popover,\n ],\n )\n\n return (\n <Popover data-ui=\"MenuButton__popover\" {...popoverProps} content={menu} open={open}>\n {button || <></>}\n </Popover>\n )\n})\n\nMenuButton.displayName = 'ForwardRef(MenuButton)'\n","import {composeClassNames, skeleton, SkeletonStyleProps} from '@sanity/ui/css'\nimport {ForwardedRef, forwardRef, useEffect, useState} from 'react'\n\nimport {Box, BoxProps} from '../../primitives'\nimport {Props} from '../../types'\n\n/**\n * This API might change. DO NOT USE IN PRODUCTION.\n * @beta\n */\nexport interface SkeletonProps extends SkeletonStyleProps, Omit<BoxProps, 'children'> {\n animated?: boolean\n delay?: number\n}\n\n/**\n * This API might change. DO NOT USE IN PRODUCTION.\n * @beta\n */\nexport const Skeleton = forwardRef(function Skeleton(\n props: Props<SkeletonProps, 'div'>,\n ref: ForwardedRef<HTMLDivElement>,\n) {\n const {animated = false, className, delay, radius, ...restProps} = props\n const [visible, setVisible] = useState<boolean>(delay ? false : true)\n\n useEffect(() => {\n if (!delay) {\n return setVisible(true)\n }\n\n const timeout = setTimeout(() => {\n setVisible(true)\n }, delay)\n\n return () => {\n clearTimeout(timeout)\n }\n }, [delay])\n\n return (\n <Box\n data-ui=\"Skeleton\"\n {...restProps}\n className={composeClassNames(className, skeleton({radius}))}\n data-animated={animated ? '' : undefined}\n data-visible={visible ? '' : undefined}\n ref={ref}\n />\n )\n})\n\nSkeleton.displayName = 'ForwardRef(Skeleton)'\n","import {\n codeSkeleton,\n composeClassNames,\n headingSkeleton,\n labelSkeleton,\n ResponsiveProp,\n textSkeleton,\n} from '@sanity/ui/css'\nimport {FontCodeSize, FontHeadingSize, FontLabelSize, FontTextSize} from '@sanity/ui/theme'\nimport {ForwardedRef, forwardRef} from 'react'\n\nimport {Props} from '../../types'\nimport {Skeleton, SkeletonProps} from './skeleton'\n\n/**\n * This API might change. DO NOT USE IN PRODUCTION.\n * @beta\n */\nexport interface TextSkeletonProps extends SkeletonProps {\n size?: ResponsiveProp<FontTextSize>\n}\n\n/**\n * This API might change. DO NOT USE IN PRODUCTION.\n * @beta\n */\nexport interface LabelSkeletonProps extends SkeletonProps {\n size?: ResponsiveProp<FontLabelSize>\n}\n\n/**\n * This API might change. DO NOT USE IN PRODUCTION.\n * @beta\n */\nexport interface HeadingSkeletonProps extends SkeletonProps {\n size?: ResponsiveProp<FontHeadingSize>\n}\n\n/**\n * This API might change. DO NOT USE IN PRODUCTION.\n * @beta\n */\nexport interface CodeSkeletonProps extends SkeletonProps {\n size?: ResponsiveProp<FontCodeSize>\n}\n\n/**\n * This API might change. DO NOT USE IN PRODUCTION.\n * @beta\n */\nexport const TextSkeleton = forwardRef(function TextSkeleton(\n props: Props<TextSkeletonProps, 'div'>,\n ref: ForwardedRef<HTMLDivElement>,\n) {\n const {className, size = 2, ...restProps} = props\n\n return (\n <Skeleton\n data-ui=\"TextSkeleton\"\n {...restProps}\n className={composeClassNames(className, textSkeleton({size}))}\n ref={ref}\n />\n )\n})\n\nTextSkeleton.displayName = 'ForwardRef(TextSkeleton)'\n\n/**\n * This API might change. DO NOT USE IN PRODUCTION.\n * @beta\n */\nexport const LabelSkeleton = forwardRef(function TextSkeleton(\n props: Props<LabelSkeletonProps, 'div'>,\n ref: ForwardedRef<HTMLDivElement>,\n) {\n const {className, size = 2, ...restProps} = props\n\n return (\n <Skeleton\n data-ui=\"LabelSkeleton\"\n {...restProps}\n className={composeClassNames(className, labelSkeleton({size}))}\n ref={ref}\n />\n )\n})\n\nLabelSkeleton.displayName = 'ForwardRef(LabelSkeleton)'\n\n/**\n * This API might change. DO NOT USE IN PRODUCTION.\n * @beta\n */\nexport const HeadingSkeleton = forwardRef(function TextSkeleton(\n props: Props<HeadingSkeletonProps, 'div'>,\n ref: ForwardedRef<HTMLDivElement>,\n) {\n const {className, size = 2, ...restProps} = props\n\n return (\n <Skeleton\n {...restProps}\n className={composeClassNames(className, headingSkeleton({size}))}\n ref={ref}\n />\n )\n})\n\nHeadingSkeleton.displayName = 'ForwardRef(HeadingSkeleton)'\n\n/**\n * This API might change. DO NOT USE IN PRODUCTION.\n * @beta\n */\nexport const CodeSkeleton = forwardRef(function TextSkeleton(\n props: Props<CodeSkeletonProps, 'div'>,\n ref: ForwardedRef<HTMLDivElement>,\n) {\n const {className, size = 2, ...restProps} = props\n\n return (\n <Skeleton\n // root\n {...restProps}\n className={composeClassNames(className, codeSkeleton({size}))}\n ref={ref}\n />\n )\n})\n\nCodeSkeleton.displayName = 'ForwardRef(CodeSkeleton)'\n","import {ForwardedRef, forwardRef} from 'react'\n\nimport {Box, BoxProps} from '../../primitives'\nimport {Props} from '../../types'\n\n/**\n * @public\n */\nexport interface TabPanelProps extends BoxProps {\n /**\n * The `id` of the correlating `Tab` component.\n */\n 'aria-labelledby': string\n 'id': string\n}\n\n/**\n * @public\n */\nexport const TabPanel = forwardRef(function TabPanel(\n props: Props<TabPanelProps, 'div'>,\n ref: ForwardedRef<HTMLDivElement>,\n) {\n const {flex, ...restProps} = props\n\n return (\n <Box\n data-ui=\"TabPanel\"\n {...restProps}\n flex={flex}\n ref={ref}\n role=\"tabpanel\"\n tabIndex={props.tabIndex === undefined ? 0 : props.tabIndex}\n >\n {props.children}\n </Box>\n )\n})\n\nTabPanel.displayName = 'ForwardRef(TabPanel)'\n","import {CloseIcon} from '@sanity/icons'\nimport {\n RadiusStyleProps,\n toast,\n toastLoadingBar,\n toastLoadingBarMask,\n toastLoadingBarProgress,\n} from '@sanity/ui/css'\nimport {ThemeColorStateToneKey} from '@sanity/ui/theme'\nimport {motion, type Variant, type Variants} from 'framer-motion'\nimport {ReactElement, ReactNode} from 'react'\n\nimport {usePrefersReducedMotion} from '../../hooks/usePrefersReducedMotion'\nimport {Box, Button, Card, Flex, Stack, Text} from '../../primitives'\nimport {ButtonTone, Props} from '../../types'\n\n/**\n * @public\n */\nexport interface ToastProps extends RadiusStyleProps {\n closable?: boolean\n description?: ReactNode\n onClose?: () => void\n title?: ReactNode\n status?: 'error' | 'warning' | 'success' | 'info'\n duration?: number\n updatedAt?: number\n}\n\nconst ROLES = {\n error: 'alert',\n warning: 'alert',\n success: 'alert',\n info: 'alert',\n} as const\n\nconst STATUS_CARD_TONE = {\n error: 'critical',\n warning: 'caution',\n success: 'positive',\n info: 'neutral',\n} satisfies {[key: string]: ThemeColorStateToneKey}\n\nconst BUTTON_TONE = {\n error: 'critical',\n warning: 'caution',\n success: 'positive',\n info: 'neutral',\n} satisfies {[key: string]: ButtonTone}\n\n// Support pattern used by Sanity Studio, that works around the lack of `duration: Infinity` support in older @sanity/ui versions\n// https://developer.mozilla.org/en-US/docs/Web/API/setTimeout#maximum_delay_value\nconst LONG_ENOUGH_BUT_NOT_TOO_LONG = 1000 * 60 * 60 * 24 * 24\n\n/**\n * The `Toast` component gives feedback to users when an action has taken place.\n *\n * Toasts can be closed with a close button, or auto-dismiss after a certain timeout.\n *\n * @public\n */\nexport function Toast(\n props: Omit<\n Props<ToastProps, 'div'>,\n 'onDrag' | 'onDragEnd' | 'onDragStart' | 'onAnimationStart'\n >,\n): ReactElement {\n const {\n closable,\n description,\n duration,\n onClose,\n radius = 3,\n title,\n status,\n updatedAt,\n ...restProps\n } = props\n\n const cardTone = status ? STATUS_CARD_TONE[status] : 'default'\n const buttonTone = status ? BUTTON_TONE[status] : 'default'\n const role = status ? ROLES[status] : 'status'\n\n const prefersReducedMotion = usePrefersReducedMotion()\n\n const visualDuration: number = prefersReducedMotion ? 0 : 0.26\n const transition = visualDuration ? {type: 'spring', visualDuration, bounce: 0.25} : {duration: 0}\n\n const hasDuration = duration && isFinite(duration) && duration < LONG_ENOUGH_BUT_NOT_TOO_LONG\n const initial: ContainerVariants[] = ['hidden', 'initial']\n const animate: ContainerVariants[] = ['visible', 'slideIn']\n const exit: ContainerVariants[] = ['hidden', 'slideOut']\n\n return (\n <MotionCard\n as=\"li\"\n className={toast()}\n data-ui=\"Toast\"\n role={role}\n {...restProps}\n data-has-duration={hasDuration ? '' : undefined}\n custom={visualDuration}\n radius={radius}\n shadow={2}\n tone={cardTone}\n layout=\"position\"\n variants={container}\n initial={initial}\n animate={animate}\n exit={exit}\n transition={transition}\n width=\"fill\"\n position=\"relative\"\n >\n <MotionFlex align=\"flex-start\" variants={content} transition={transition}>\n <Flex flex={1} overflowX=\"auto\" padding={3}>\n <Stack space={3}>\n {title && (\n <Text size={1} weight=\"medium\">\n {title}\n </Text>\n )}\n {description && (\n <MotionText muted size={1} variants={content} transition={transition}>\n {description}\n </MotionText>\n )}\n </Stack>\n </Flex>\n\n {closable && (\n <Box padding={1}>\n <Button\n as=\"button\"\n icon={CloseIcon}\n mode=\"bleed\"\n padding={2}\n tone={buttonTone}\n onClick={onClose}\n style={{verticalAlign: 'top'}}\n />\n </Box>\n )}\n </MotionFlex>\n {hasDuration && (\n <MotionBox className={toastLoadingBar()} variants={content} transition={transition}>\n <Card className={toastLoadingBarMask()} tone={cardTone} radius={radius} />\n <MotionCard\n // const MotionToast = motion.create(Card) // StyledToast\n // const MotionFlex = motion.create(Flex)\n // const MotionText = motion.create(Text)\n // const MotionLoadingBar = motion.create(Box) // LoadingBar\n // const MotionLoadingBarProgress = motion.create(Card)\n\n className={toastLoadingBarProgress()}\n key={`progress-${updatedAt}`}\n tone={cardTone}\n initial={{scaleX: 0}}\n animate={{scaleX: 1}}\n transition={{delay: visualDuration, duration: duration / 1_000, ease: 'linear'}}\n onAnimationComplete={onClose}\n />\n </MotionBox>\n )}\n </MotionCard>\n )\n}\n\nToast.displayName = 'Toast'\n\nconst container = {\n initial: {y: 32, scale: 0.5, zIndex: 1},\n hidden: {opacity: 0},\n visible: (visualDuration: number) => {\n if (!visualDuration) return {opacity: 1}\n\n return {\n opacity: 1,\n transition: {\n when: 'beforeChildren',\n staggerChildren: visualDuration / 3,\n duration: visualDuration / 3,\n },\n }\n },\n slideIn: {\n y: 0,\n scale: 1,\n },\n slideOut: {\n zIndex: 0,\n scale: 0.75,\n },\n} satisfies Variants\ntype ContainerVariants = keyof typeof container\n\nconst content = {\n initial: {\n willChange: 'transform',\n },\n hidden: {\n opacity: 0,\n },\n visible: {\n opacity: 1,\n },\n} satisfies Partial<Record<ContainerVariants, Variant>>\n\nconst MotionCard = motion.create(Card)\nconst MotionFlex = motion.create(Flex)\nconst MotionText = motion.create(Text)\nconst MotionBox = motion.create(Box)\n","import {useSyncExternalStore} from 'react'\n\n/**\n * Some components should only render after mounting to the DOM, and not be rendered at all during SSR renderToString or equivalent.\n * @public\n */\nexport function useMounted(): boolean {\n return useSyncExternalStore(\n subscribe,\n () => true,\n () => false,\n )\n}\n\nconst subscribe = () => () => {}\n","import {createGlobalScopedContext} from '../../lib/createGlobalScopedContext'\nimport {ToastContextValue} from './types'\n\nexport const ToastContext = createGlobalScopedContext<ToastContextValue | null>(\n '@sanity/ui/context/toast',\n null,\n)\n","import {GapStyleProps, PaddingStyleProps, toastLayer} from '@sanity/ui/css'\nimport {ReactNode} from 'react'\n\nimport {Grid} from '../../primitives/grid'\nimport {useLayer} from '../../utils'\n\n/**\n * @public\n */\nexport interface ToastLayerProps extends GapStyleProps, PaddingStyleProps {\n children: ReactNode\n}\n\n/**\n * @internal\n */\nexport function ToastLayer(props: ToastLayerProps): React.JSX.Element {\n const {children, padding = 4, paddingX, paddingY, gap = 3} = props\n const {zIndex} = useLayer()\n\n return (\n <Grid\n as=\"ul\"\n className={toastLayer()}\n data-ui=\"ToastProvider\"\n padding={padding}\n paddingX={paddingX}\n paddingY={paddingY}\n gap={gap}\n columns={1}\n style={{zIndex}}\n >\n {children}\n </Grid>\n )\n}\n\nToastLayer.displayName = 'ToastLayer'\n","let toastId = 0\n\n/** @internal */\nexport function generateToastId(): string {\n return String(toastId++)\n}\n","import {AnimatePresence} from 'framer-motion'\nimport {startTransition, useMemo, useState} from 'react'\n\nimport {useMounted} from '../../hooks/useMounted'\nimport {LayerProvider} from '../../utils'\nimport {Toast} from './toast'\nimport {ToastContext} from './toastContext'\nimport {ToastLayer, type ToastLayerProps} from './toastLayer'\nimport {generateToastId} from './toastState'\nimport {ToastContextValue, ToastParams} from './types'\n\ntype ToastState = {\n dismiss: () => void\n id: string\n updatedAt: number\n params: ToastParams\n}[]\n\n/**\n * @public\n */\nexport interface ToastProviderProps extends Omit<ToastLayerProps, 'children'> {\n children?: React.ReactNode\n zOffset?: number | number[]\n}\n\n/**\n * @public\n */\nexport function ToastProvider(props: ToastProviderProps): React.JSX.Element {\n const {children, padding, paddingX, paddingY, gap, zOffset = 1} = props\n const [state, setState] = useState<ToastState>([])\n const mounted = useMounted()\n\n const value: ToastContextValue = useMemo(() => {\n const push = (params: ToastParams) => {\n const id = params.id || generateToastId()\n const duration = params.duration || 5000\n\n startTransition(() => {\n setState((prevState): ToastState => {\n /**\n * Backwards compatibility for `sanity` patterns workaround a lack of programatically dismissible toasts.\n * It uses a super short duration that closes the toast immediately in previous versions of `@sanity/ui`.\n * We interpret this as a request to dismiss the toast immediately, and remove it from the state right away.\n * Even once we support programatic dismissal we'll need to keep this for backwards compatibility with v2 and v1.\n */\n if (duration === 0.01) {\n return prevState.filter((toast) => toast.id !== id)\n }\n\n /**\n * Creates a function to dismiss this specific toast.\n * This function will be passed to the Toast component\n * and called either on close button click or after duration.\n */\n const dismiss = () =>\n startTransition(() =>\n setState((currentState) => currentState.filter((toast) => toast.id !== id)),\n )\n\n /**\n * Create updated state by:\n * 1. Removing any existing toast with the same ID (prevents duplicates)\n * 2. Adding the new toast with its dismiss handler\n * 3. Updates the `updatedAt` timestamp, which resets progress bar count downs.\n */\n return [\n ...prevState.filter((toast) => toast.id !== id),\n {\n dismiss,\n id,\n updatedAt: Date.now(),\n params: {...params, duration},\n },\n ]\n })\n })\n\n return id\n }\n\n return {version: 0.0, push}\n }, [])\n\n return (\n <ToastContext.Provider value={value}>\n {children}\n {mounted && (\n <LayerProvider zOffset={zOffset}>\n <ToastLayer padding={padding} paddingX={paddingX} paddingY={paddingY} gap={gap}>\n <AnimatePresence initial={false} mode=\"popLayout\">\n {state.map(({dismiss, id, params, updatedAt}) => (\n <Toast\n key={id}\n closable={params.closable}\n description={params.description}\n onClose={dismiss}\n status={params.status}\n title={params.title}\n duration={params.duration}\n updatedAt={updatedAt}\n />\n ))}\n </AnimatePresence>\n </ToastLayer>\n </LayerProvider>\n )}\n </ToastContext.Provider>\n )\n}\n\nToastProvider.displayName = 'ToastProvider'\n","import {useContext} from 'react'\n\nimport {isRecord} from '../../lib/isRecord'\nimport {ToastContext} from './toastContext'\nimport {ToastContextValue} from './types'\n\n/**\n * @public\n */\nexport function useToast(): ToastContextValue {\n const value = useContext(ToastContext)\n\n if (!value) {\n throw new Error('useToast(): missing context value')\n }\n\n // NOTE: This check is for future-compatiblity\n // - If the value is not an object, it’s not compatible with the current version\n // - If the value is an object, but doesn’t have `version: 0.0`, it’s not compatible with the current version\n if (!isRecord(value) || value.version !== 0.0) {\n throw new Error('useToast(): the context value is not compatible')\n }\n\n return value\n}\n","import {TreeState} from './types'\n\nexport function _findPrevItemElement(\n state: TreeState,\n itemElements: HTMLElement[],\n focusedElement: HTMLElement,\n): HTMLElement | null {\n const idx = itemElements.indexOf(focusedElement)\n const els = itemElements.slice(0, idx)\n const len = els.length\n\n for (let i = len - 1; i >= 0; i -= 1) {\n const itemKey = els[i].getAttribute('data-tree-key')\n\n if (!itemKey) {\n continue\n }\n\n const segments = itemKey.split('/')\n\n segments.pop()\n\n const p: string[] = []\n\n let expanded = true\n\n for (let j = 0; j < segments.length; j += 1) {\n p.push(segments[j])\n\n const k = p.join('/')\n\n if (!state[k]?.expanded) {\n expanded = false\n break\n }\n }\n\n if (expanded) {\n return els[i]\n }\n }\n\n return null\n}\n\nexport function _findNextItemElement(\n state: TreeState,\n itemElements: HTMLElement[],\n focusedElement: HTMLElement,\n): HTMLElement | null {\n const idx = itemElements.indexOf(focusedElement)\n const els = itemElements.slice(idx)\n const len = itemElements.length\n\n for (let i = 1; i < len; i += 1) {\n if (!els[i]) {\n continue\n }\n\n const itemKey = els[i].getAttribute('data-tree-key')\n\n if (!itemKey) {\n continue\n }\n\n const segments = itemKey.split('/')\n\n segments.pop()\n\n const p: string[] = []\n\n let expanded = true\n\n for (let j = 0; j < segments.length; j += 1) {\n p.push(segments[j])\n\n const k = p.join('/')\n\n if (!state[k]?.expanded) {\n expanded = false\n break\n }\n }\n\n if (expanded) {\n return els[i]\n }\n }\n\n return null\n}\n\nexport function _focusItemElement(el: HTMLElement): void {\n if (el.getAttribute('role') === 'treeitem') {\n el.focus()\n }\n\n if (el.getAttribute('role') === 'none') {\n const firstChild = el.firstChild\n\n if (firstChild && firstChild instanceof HTMLElement) {\n firstChild.focus()\n }\n }\n}\n","import {createGlobalScopedContext} from '../../lib/createGlobalScopedContext'\nimport {TreeContextValue} from './types'\n\n/**\n * @internal\n */\nexport const TreeContext = createGlobalScopedContext<TreeContextValue | null>(\n '@sanity/ui/context/tree',\n null,\n)\n","import {GapStyleProps, ResponsiveProp} from '@sanity/ui/css'\nimport {Space} from '@sanity/ui/theme'\nimport {\n FocusEvent,\n ForwardedRef,\n forwardRef,\n KeyboardEvent,\n memo,\n ReactElement,\n useCallback,\n useEffect,\n useImperativeHandle,\n useMemo,\n useRef,\n useState,\n} from 'react'\n\nimport {Stack} from '../../primitives'\nimport {Props} from '../../types'\nimport {_findNextItemElement, _findPrevItemElement, _focusItemElement} from './helpers'\nimport {TreeContext} from './treeContext'\nimport {TreeContextValue, TreeState} from './types'\n\n/**\n * This API might change. DO NOT USE IN PRODUCTION.\n * @beta\n */\nexport interface TreeProps extends Pick<GapStyleProps, 'gap'> {\n /** @deprecated Use `gap` instead. */\n space?: ResponsiveProp<Space>\n}\n\n/**\n * This API might change. DO NOT USE IN PRODUCTION.\n * @beta\n */\nexport const Tree = memo(\n forwardRef(function Tree(\n props: Props<TreeProps, 'div'>,\n forwardedRef: ForwardedRef<HTMLDivElement>,\n ): ReactElement {\n const {children, gap, space = 1, onFocus, ...restProps} = props\n const ref = useRef<HTMLDivElement | null>(null)\n const [focusedElement, setFocusedElement] = useState<HTMLElement | null>(null)\n const focusedElementRef = useRef(focusedElement)\n const path: string[] = useMemo(() => [], [])\n const [itemElements, setItemElements] = useState<HTMLElement[]>([])\n const [state, setState] = useState<TreeState>({})\n const stateRef = useRef(state)\n\n useImperativeHandle<HTMLDivElement | null, HTMLDivElement | null>(\n forwardedRef,\n () => ref.current,\n )\n\n useEffect(() => {\n focusedElementRef.current = focusedElement\n }, [focusedElement])\n\n useEffect(() => {\n stateRef.current = state\n }, [state])\n\n const registerItem = useCallback(\n (element: HTMLElement, path: string, expanded: boolean, selected: boolean) => {\n setState((s) => ({...s, [path]: {element, expanded}}))\n\n if (selected) {\n setFocusedElement(element)\n }\n\n return () => {\n setState((s) => {\n const newState = {...s}\n\n delete newState[path]\n\n return newState\n })\n }\n },\n [],\n )\n\n const setExpanded = useCallback((path: string, expanded: boolean) => {\n setState((s) => {\n const itemState = s[path]\n\n if (!itemState) return s\n\n return {...s, [path]: {...itemState, expanded}}\n })\n }, [])\n\n const contextValue: TreeContextValue = useMemo(\n () => ({\n version: 0.0,\n focusedElement: focusedElement || itemElements[0] || null,\n level: 0,\n path,\n registerItem,\n setExpanded,\n setFocusedElement,\n space,\n state,\n }),\n [focusedElement, itemElements, path, registerItem, setExpanded, space, state],\n )\n\n const handleKeyDown = useCallback(\n (event: KeyboardEvent<HTMLDivElement>) => {\n if (!focusedElementRef.current) return\n\n if (event.key === 'ArrowDown') {\n event.preventDefault()\n\n const nextEl = _findNextItemElement(\n stateRef.current,\n itemElements,\n focusedElementRef.current,\n )\n\n if (nextEl) {\n _focusItemElement(nextEl)\n setFocusedElement(nextEl)\n }\n\n return\n }\n\n if (event.key === 'ArrowUp') {\n event.preventDefault()\n\n const prevEl = _findPrevItemElement(\n stateRef.current,\n itemElements,\n focusedElementRef.current,\n )\n\n if (prevEl) {\n _focusItemElement(prevEl)\n setFocusedElement(prevEl)\n }\n\n return\n }\n\n if (event.key === 'ArrowLeft') {\n event.preventDefault()\n\n const itemKey = focusedElementRef.current.getAttribute('data-tree-key')\n\n if (!itemKey) return\n\n const itemState = stateRef.current[itemKey]\n\n if (!itemState) return\n\n if (itemState.expanded) {\n setState((s) => {\n const itemState = s[itemKey]\n\n if (!itemState) return s\n\n return {...s, [itemKey]: {...itemState, expanded: false}}\n })\n } else {\n const itemPath = itemKey.split('/')\n\n itemPath.pop()\n\n const parentKey = itemPath.join('/')\n const parentState = parentKey && stateRef.current[parentKey]\n\n if (parentState) {\n parentState.element.focus()\n setFocusedElement(parentState.element)\n }\n }\n\n return\n }\n\n if (event.key === 'ArrowRight') {\n event.preventDefault()\n\n const focusedKey = focusedElementRef.current.getAttribute('data-tree-key')\n\n if (!focusedKey) return\n\n if (!stateRef.current[focusedKey]?.expanded) {\n setState((s) => {\n const itemState = s[focusedKey]\n\n if (!itemState) return s\n\n return {...s, [focusedKey]: {...itemState, expanded: true}}\n })\n }\n\n return\n }\n },\n [itemElements],\n )\n\n const handleFocus = useCallback(\n (event: FocusEvent<HTMLDivElement>) => {\n setFocusedElement(event.target)\n\n // Call the element's `focus` handler\n onFocus?.(event)\n },\n [onFocus],\n )\n\n useEffect(() => {\n if (!ref.current) return\n const _itemElements = Array.from(\n ref.current.querySelectorAll('[data-ui=\"TreeItem\"]'),\n ) as HTMLElement[]\n\n setItemElements(_itemElements)\n }, [children])\n\n return (\n <TreeContext.Provider value={contextValue}>\n <Stack\n as=\"ul\"\n data-ui=\"Tree\"\n {...restProps}\n gap={gap ?? space}\n onFocus={handleFocus}\n onKeyDown={handleKeyDown}\n ref={ref}\n role=\"tree\"\n >\n {children}\n </Stack>\n </TreeContext.Provider>\n )\n }),\n)\nTree.displayName = 'Memo(ForwardRef(Tree))'\n","import {useContext} from 'react'\n\nimport {TreeContext} from './treeContext'\nimport {TreeContextValue} from './types'\n\n/**\n * @beta\n */\nexport function useTree(): TreeContextValue {\n const tree = useContext(TreeContext)\n\n if (!tree) {\n throw new Error('Tree: missing context value')\n }\n\n return tree\n}\n","import {memo, ReactElement} from 'react'\n\nimport {Stack} from '../../primitives'\nimport {Props} from '../../types'\nimport {useTree} from './useTree'\n\nexport interface TreeGroupProps {\n expanded?: boolean\n}\n\nexport const TreeGroup = memo(function TreeGroup(\n props: Props<TreeGroupProps, 'div'>,\n): ReactElement {\n const {children, expanded = false, ...restProps} = props\n const tree = useTree()\n\n return (\n <Stack\n as=\"ul\"\n data-ui=\"TreeGroup\"\n {...restProps}\n hidden={!expanded}\n marginTop={tree.space}\n role=\"group\"\n space={tree.space}\n >\n {children}\n </Stack>\n )\n})\n","import {ToggleArrowRightIcon} from '@sanity/icons'\nimport {composeClassNames, ResponsiveProp, treeItem} from '@sanity/ui/css'\nimport {FontTextSize, Space, ThemeFontWeightKey} from '@sanity/ui/theme'\nimport {\n ElementType,\n KeyboardEvent,\n memo,\n MouseEvent,\n ReactElement,\n ReactNode,\n useCallback,\n useEffect,\n useId,\n useMemo,\n useRef,\n} from 'react'\n\nimport {Box, CardProps, Flex, Text} from '../../primitives'\nimport {Selectable} from '../../primitives/_selectable'\nimport {Props} from '../../types'\nimport {TreeContext} from './treeContext'\nimport {TreeGroup} from './treeGroup'\nimport {useTree} from './useTree'\n\n/**\n * @beta\n */\nexport interface TreeItemProps extends CardProps {\n expanded?: boolean\n fontSize?: ResponsiveProp<FontTextSize>\n icon?: ElementType\n /**\n * Allows passing a custom element type to the link component\n */\n linkAs?: ElementType\n padding?: ResponsiveProp<Space>\n space?: ResponsiveProp<Space>\n text?: ReactNode\n weight?: ThemeFontWeightKey\n}\n\n/**\n * This API might change. DO NOT USE IN PRODUCTION.\n * @beta\n */\nexport const TreeItem = memo(function TreeItem(\n props: Omit<Props<TreeItemProps, 'div'>, 'as'>,\n): ReactElement {\n const {\n children,\n className,\n expanded: expandedProp = false,\n fontSize = 1,\n href,\n icon: IconComponent,\n id: idProp,\n linkAs = 'a',\n muted,\n onClick,\n padding = 2,\n radius = 2,\n selected = false,\n space = 2,\n text,\n weight,\n ...restProps\n } = props\n const rootRef = useRef<HTMLDivElement | null>(null)\n const treeitemRef = useRef<HTMLDivElement | null>(null)\n const tree = useTree()\n const {path, registerItem, setExpanded, setFocusedElement} = tree\n const _id = useId()\n const id = idProp || _id\n const itemPath = useMemo(() => path.concat([id || '']), [id, path])\n const itemKey = itemPath.join('/')\n const itemState = tree.state[itemKey]\n const focused = tree.focusedElement === rootRef.current\n const expanded = itemState?.expanded === undefined ? expandedProp : itemState?.expanded || false\n const tabIndex = tree.focusedElement && tree.focusedElement === rootRef.current ? 0 : -1\n const contextValue = useMemo(\n () => ({...tree, level: tree.level + 1, path: itemPath}),\n [itemPath, tree],\n )\n\n const handleClick = useCallback(\n (event: MouseEvent<HTMLDivElement>) => {\n if (onClick) onClick(event)\n\n const target = event.target\n\n if (\n target instanceof HTMLElement &&\n (target.getAttribute('data-ui') === 'TreeItem' ||\n target.closest('[data-ui=\"TreeItem__box\"]'))\n ) {\n event.stopPropagation()\n setExpanded(itemKey, !expanded)\n setFocusedElement(rootRef.current)\n }\n },\n [expanded, itemKey, onClick, setExpanded, setFocusedElement],\n )\n\n const handleKeyDown = useCallback(\n (event: KeyboardEvent<HTMLElement>) => {\n if (focused && event.key === 'Enter') {\n const el = treeitemRef.current || rootRef.current\n\n el?.click()\n }\n },\n [focused],\n )\n\n useEffect(() => {\n if (!rootRef.current) return\n\n return registerItem(rootRef.current, itemPath.join('/'), expanded, selected)\n }, [expanded, itemPath, registerItem, selected])\n\n const content = (\n <Flex gap={space} padding={padding}>\n <Box\n style={{\n visibility: IconComponent || children ? 'visible' : 'hidden',\n pointerEvents: 'none',\n }}\n >\n {IconComponent && (\n <Text muted={muted} size={fontSize} weight={weight}>\n <IconComponent />\n </Text>\n )}\n {!IconComponent && (\n <Text muted={muted} size={fontSize} weight={weight}>\n <ToggleArrowRightIcon style={{transform: expanded ? 'rotate(90deg)' : undefined}} />\n </Text>\n )}\n </Box>\n <Box flex={1}>\n <Text muted={muted} size={fontSize} textOverflow=\"ellipsis\" weight={weight}>\n {text}\n </Text>\n </Box>\n </Flex>\n )\n\n if (href) {\n return (\n <Box\n data-selected={selected ? '' : undefined}\n data-tree-id={id}\n data-tree-key={itemKey}\n data-ui=\"TreeItem\"\n {...restProps}\n as=\"li\"\n className={composeClassNames(className, treeItem())}\n onClick={handleClick}\n ref={rootRef}\n role=\"none\"\n >\n <Selectable\n aria-expanded={expanded}\n as={linkAs}\n data-pressed={selected ? '' : undefined}\n data-ui=\"TreeItem__box\"\n href={href}\n radius={radius}\n ref={treeitemRef}\n role=\"treeitem\"\n tabIndex={tabIndex}\n style={{\n paddingLeft: `calc(var(--space-2) * ${tree.level})`,\n }}\n >\n {content}\n </Selectable>\n\n <TreeContext.Provider value={contextValue}>\n {children && <TreeGroup hidden={!expanded}>{children}</TreeGroup>}\n </TreeContext.Provider>\n </Box>\n )\n }\n\n return (\n <Box\n data-selected={selected ? '' : undefined}\n data-ui=\"TreeItem\"\n data-tree-id={id}\n data-tree-key={itemKey}\n {...restProps}\n aria-expanded={expanded}\n className={composeClassNames(className, treeItem())}\n onClick={handleClick}\n onKeyDown={handleKeyDown}\n ref={rootRef}\n role=\"treeitem\"\n tabIndex={tabIndex}\n >\n <Selectable\n as=\"button\"\n data-pressed={selected ? '' : undefined}\n data-ui=\"TreeItem__box\"\n radius={radius}\n style={{\n paddingLeft: `calc(var(--space-2) * ${tree.level})`,\n }}\n >\n {content}\n </Selectable>\n\n <TreeContext.Provider value={contextValue}>\n {children && <TreeGroup expanded={expanded}>{children}</TreeGroup>}\n </TreeContext.Provider>\n </Box>\n )\n})\n\nTreeItem.displayName = 'Memo(TreeItem)'\n","import {compilePalette, compileSystem, compileTheme} from '@sanity/ui/css'\nimport {buildTheme_v3, RootTheme, Theme_v3} from '@sanity/ui/theme'\nimport {ReactNode} from 'react'\n\n/* @beta */\nexport function StyleTags(props: {theme?: Theme_v3}): ReactNode {\n const {theme: themeProp} = props\n\n const theme = themeProp ?? buildTheme_v3()\n\n return (\n <>\n <style href=\"sanity-palette\" precedence=\"palette\">\n {compilePalette(theme._palette)}\n </style>\n <style href=\"sanity-theme\" precedence=\"theme\">\n {compileTheme({v3: theme} as RootTheme)}\n </style>\n <style href=\"sanity-system\" precedence=\"system\">\n {compileSystem()}\n </style>\n </>\n )\n}\n"],"names":["_responsive","media","values","callback","map","statement","mediaIndex","_raf","fn","frameId","requestAnimationFrame","cancelAnimationFrame","_raf2","innerDispose","outerDispose","_hasFocus","element","Boolean","document","activeElement","contains","isFocusable","tabIndex","getAttribute","isHTMLAnchorElement","href","rel","isHTMLInputElement","type","disabled","isHTMLButtonElement","isHTMLSelectElement","isHTMLTextAreaElement","attemptFocus","focus","focusFirstDescendant","i","childNodes","length","child","isHTMLElement","focusLastDescendant","_getElements","elementsArg","ret","el","Array","isArray","push","filter","useClickOutside","listener","t0","boundaryElement","$","_c","undefined","EMPTY_ARRAY","setElement","useState","t1","elements","setElements","elementsRef","useRef","t2","t3","prevElements","current","nextElements","includes","el_0","useEffect","t4","t5","handleWindowMouseDown","evt","target","Node","el_1","window","addEventListener","removeEventListener","useElementRect","useElementSize","_contentRect","useForwardedRef","ref","innerRef","Symbol","for","useImperativeHandle","ErrorBoundary","Component","state","error","getDerivedStateFromError","componentDidCatch","info","props","onCatch","render","message","children","AutocompleteOption","id","onSelect","selected","value","setTimeout","handleClick","event","key","_isEnterToClickElement","currentTarget","handleKeyDown","autocompleteReducer","msg","activeValue","focused","query","listFocused","AUTOCOMPLETE_LISTBOX_IGNORE_KEYS","AUTOCOMPLETE_POPOVER_PLACEMENT","AUTOCOMPLETE_POPOVER_FALLBACK_PLACEMENTS","DEFAULT_RENDER_VALUE","option","DEFAULT_FILTER_OPTION","toLowerCase","indexOf","InnerAutocomplete","forwardRef","forwardedRef","border","customValidity","filterOption","filterOptionProp","fontSize","icon","listBox","EMPTY_RECORD","loading","onBlur","onChange","onFocus","onQueryChange","openButton","openOnFocus","options","optionsProp","padding","paddingProp","popover","prefix","radius","readOnly","relatedElements","renderOption","renderOptionProp","renderPopover","renderValue","suffix","valueProp","restProps","dispatch","useReducer","defaultRenderOption","useCallback","rootElementRef","resultsPopoverElementRef","inputElementRef","listBoxElementRef","listFocusedRef","valueRef","valuePropRef","popoverMouseWithinRef","listBoxId","useArrayProp","currentOption","useMemo","find","o","filteredOptions","filteredOptionsLen","activeItemId","expanded","handleRootBlur","concat","focusInside","e","handleRootFocus","listBoxElement","focusedElement","HTMLElement","handleOptionSelect","v","handleRootKeyDown","preventDefault","activeOption","activeIndex","nextActiveOption","listEl","handleInputChange","nextQuery","dispatchOpen","handleInputFocus","handlePopoverMouseEnter","handlePopoverMouseLeave","handleClearButtonClick","handleClearButtonFocus","listElement","activeItemElement","clearButton","openButtonBoxPadding","openButtonPadding","Math","max","openButtonProps","handleOpenClick","onClick","openButtonNode","ChevronDownIcon","inputValue","input","AnimatedSpinnerIcon","handleListBoxKeyDown","content","active","cloneElement","results","hidden","inputElement","onMouseEnter","onMouseLeave","displayName","Autocomplete","Breadcrumbs","className","expandButton","expandButtonProps","gap","_gapProp","gapX","space","gapY","maxLength","separator","_spaceProp","open","setOpen","expandElementRef","popoverElementRef","collapse","expand","useClickOutsideEvent","rawItems","Children","toArray","isValidElement","items","len","beforeLength","ceil","afterLength","floor","slice","composeClassNames","breadcrumbs","item","itemIndex","DialogContext","createGlobalScopedContext","version","useDialog","useContext","isTargetWithinScope","portalElement","containsOrEqualsElement","DialogCard","__unstable_autoFocus","autoFocus","__unstable_hideCloseButton","hideCloseButton","contentRef","forwardedContentRef","footer","header","onClickOutside","onClose","portal","portalProp","radiusProp","scheme","shadow","tone","width","widthProp","shadowProp","usePortal","useBoundaryElement","layer","useLayer","isTopLayer","labelId","showCloseButton","showHeader","stopPropagation","useGlobalKeyDown","t6","event_0","target_0","t7","t8","dialogContainer","t9","dialogCardRoot","t10","dialogLayout","t11","dialogHeader","CloseIcon","t12","dialogContent","t13","t14","dialogFooter","t15","t16","t17","Dialog","context","useTheme_v2","_positionProp","_zOffsetProp","cardShadow","onActivate","animate","cardRadius","position","zOffset","_animate","cardRadiusProp","positionProp","zOffsetProp","dialog","usePrefersReducedMotion","preDivRef","postDivRef","cardRef","focusedElementRef","cardElement","handleFocus","rootClickTimeoutRef","clearTimeout","body","cardElement_0","handleRootClick","DialogProvider","contextValue","MenuButton","__unstable_disableRestoreFocusOnClose","deprecated_boundaryElement","button","buttonProp","menu","menuProp","onOpen","placement","deprecated_placement","popoverScheme","deprecated_popoverScheme","popoverRadius","deprecated_popoverRadius","preventOverflow","deprecated_preventOverflow","disableRestoreFocusOnClose","deprecated_portal","shouldFocus","setShouldFocus","buttonElement","setButtonElement","menuElements","setChildMenuElements","openRef","_temp","handleButtonClick","handleMouseDown","handleButtonKeyDown","event_1","handleMenuClickOutside","handleMenuEscape","event_2","relatedTarget","handleBlur","handleItemClick","els","els_0","_el","registerElement","t18","bb0","t19","t20","t21","t22","t23","overflow","popoverProps","t24","t25","Skeleton","delay","animated","visible","setVisible","timeout","skeleton","TextSkeleton","size","textSkeleton","LabelSkeleton","labelSkeleton","HeadingSkeleton","headingSkeleton","CodeSkeleton","codeSkeleton","TabPanel","flex","ROLES","warning","success","STATUS_CARD_TONE","BUTTON_TONE","LONG_ENOUGH_BUT_NOT_TOO_LONG","Toast","closable","description","duration","status","title","updatedAt","cardTone","buttonTone","role","visualDuration","bounce","transition","hasDuration","isFinite","initial","exit","toast","verticalAlign","toastLoadingBar","toastLoadingBarMask","toastLoadingBarProgress","scaleX","ease","container","y","scale","zIndex","opacity","when","staggerChildren","slideIn","slideOut","willChange","MotionCard","motion","create","Card","MotionFlex","Flex","MotionText","Text","MotionBox","Box","useMounted","useSyncExternalStore","subscribe","_temp2","ToastContext","ToastLayer","paddingX","paddingY","toastLayer","toastId","generateToastId","String","ToastProvider","setState","mounted","params","startTransition","prevState","dismiss","currentState","toast_0","toast_1","Date","now","dismiss_0","id_0","params_0","useToast","Error","isRecord","_findPrevItemElement","itemElements","idx","itemKey","segments","split","pop","p","j","k","join","_findNextItemElement","_focusItemElement","firstChild","TreeContext","Tree","memo","setFocusedElement","path","setItemElements","stateRef","path_0","s","s_0","newState","registerItem","path_1","expanded_0","s_1","itemState","setExpanded","level","nextEl","prevEl","itemState_0","s_2","itemState_1","itemPath","parentKey","parentState","focusedKey","s_3","itemState_2","_itemElements","from","querySelectorAll","useTree","tree","TreeGroup","TreeItem","expandedProp","IconComponent","idProp","linkAs","muted","text","weight","rootRef","treeitemRef","_id","useId","closest","click","visibility","pointerEvents","transform","treeItem","paddingLeft","StyleTags","theme","themeProp","buildTheme_v3","_palette","compilePalette","compileTheme","v3","compileSystem"],"mappings":";;;;;;;;;;AAMgBA,SAAAA,YACdC,OACAC,QACAC,UACa;AAGb,UAFmBD,QAAQE,IAAID,QAAQ,KAAK,CAAE,GAE5BC,IAAI,CAACC,WAAWC,eAC5BA,eAAe,IAAUD,YAEtB;AAAA,IAAC,CAAC,iCAAiCJ,MAAMK,aAAa,CAAC,CAAC,KAAK,GAAGD;AAAAA,EAAAA,CACxE;AACH;ACfO,SAASE,KAAKC,IAA4B;AACzCC,QAAAA,UAAUC,sBAAsBF,EAAE;AAExC,SAAO,MAAM;AACXG,yBAAqBF,OAAO;AAAA,EAC9B;AACF;AAKO,SAASG,MAAMJ,IAA4B;AAChD,MAAIK,eAAoC;AAElCC,QAAAA,eAAeP,KAAK,MAAM;AAC9BM,mBAAeN,KAAKC,EAAE;AAAA,EAAA,CACvB;AAED,SAAO,MAAM;AACPK,oBAAcA,aAAa,GAE/BC,aAAa;AAAA,EACf;AACF;ACVO,SAASC,UAAUC,SAA+B;AACvD,SAAOC,EAAQC,SAASC,iBAAkBH,QAAQI,SAASF,SAASC,aAAa;AACnF;AAKO,SAASE,YAAYL,SAA+B;AAEvDA,SAAAA,QAAQM,WAAW,KAClBN,QAAQM,aAAa,KAAKN,QAAQO,aAAa,UAAU,MAAM,OAEzD,KAGLC,oBAAoBR,OAAO,IACtBC,CAAAA,CAAQD,QAAQS,QAAST,QAAQU,QAAQ,WAG9CC,mBAAmBX,OAAO,IACrBA,QAAQY,SAAS,YAAYZ,QAAQY,SAAS,UAAU,CAACZ,QAAQa,WAIxEC,oBAAoBd,OAAO,KAC3Be,oBAAoBf,OAAO,KAC3BgB,sBAAsBhB,OAAO,IAEtB,CAACA,QAAQa,WAGX;AACT;AAKO,SAASI,aAAajB,SAA+B;AACtD,MAAA,CAACK,YAAYL,OAAO;AACf,WAAA;AAKL,MAAA;AACFA,YAAQkB,MAAM;AAAA,EAAA,QACR;AAAA,EAAA;AAMR,SAAOhB,SAASC,kBAAkBH;AACpC;AAKO,SAASmB,qBAAqBnB,SAA+B;AAClE,WAASoB,IAAI,GAAGA,IAAIpB,QAAQqB,WAAWC,QAAQF,KAAK;AAC5CG,UAAAA,QAAQvB,QAAQqB,WAAWD,CAAC;AAElC,QAAII,cAAcD,KAAK,MAAMN,aAAaM,KAAK,KAAKJ,qBAAqBI,KAAK;AACrE,aAAA;AAAA,EAAA;AAIJ,SAAA;AACT;AAKO,SAASE,oBAAoBzB,SAA+B;AACjE,WAASoB,IAAIpB,QAAQqB,WAAWC,SAAS,GAAGF,KAAK,GAAGA,KAAK;AACjDG,UAAAA,QAAQvB,QAAQqB,WAAWD,CAAC;AAElC,QAAII,cAAcD,KAAK,MAAMN,aAAaM,KAAK,KAAKE,oBAAoBF,KAAK;AACpE,aAAA;AAAA,EAAA;AAIJ,SAAA;AACT;ACrFA,SAASG,aACP1B,SACA2B,aACe;AACTC,QAAAA,MAAM,CAAC5B,OAAO;AAEpB,aAAW6B,MAAMF;AACXG,UAAMC,QAAQF,EAAE,IAClBD,IAAII,KAAK,GAAGH,EAAE,IAEdD,IAAII,KAAKH,EAAE;AAIRD,SAAAA,IAAIK,OAAOhC,OAAO;AAC3B;AAiBOiC,SAAAA,gBAAAC,UAAAC,IAAAC,iBAAA;AAAA,QAAAC,IAAAC,EAAA,EAAA,GAELZ,cAAAS,OAA+CI,SAAAC,cAA/CL,IAGA,CAAApC,SAAA0C,UAAA,IAA8BC,aAAiC;AAACC,MAAAA;AAAAN,IAAAtC,CAAAA,MAAAA,WAAAsC,SAAAX,eACvBiB,KAAAA,MAAMlB,aAAa1B,SAAS2B,WAAW,GAACW,OAAAtC,SAAAsC,OAAAX,aAAAW,OAAAM,MAAAA,KAAAN,EAAA,CAAA;AAAjF,QAAA,CAAAO,UAAAC,WAAA,IAAgCH,SAASC,EAAwC,GACjFG,cAAoBC,OAAOH,QAAQ;AAAC,MAAAI,IAAAC;AAAAZ,IAAAtC,CAAAA,MAAAA,WAAAsC,SAAAX,eAE1BsB,KAAAA,MAAA;AACR,UAAAE,eAAqBJ,YAAWK,SAChCC,eAAqB3B,aAAa1B,SAAS2B,WAAW;AAElDwB,QAAAA,aAAY7B,WAAY+B,aAAY/B,QAAO;AACjC+B,kBAAAA,YAAY,GACxBN,YAAWK,UAAWC;AAAY;AAAA,IAAA;AAAA,eAK/BxB,MAAYsB;AAAY,UAAA,CACtBE,aAAYC,SAAUzB,EAAE,GAAC;AAChBwB,oBAAAA,YAAY,GACxBN,YAAWK,UAAWC;AAAY;AAAA,MAAA;AAAA,eAMjCE,QAAYF;AAAY,UAAA,CACtBF,aAAYG,SAAUzB,IAAE,GAAC;AAChBwB,oBAAAA,YAAY,GACxBN,YAAWK,UAAWC;AAAY;AAAA,MAAA;AAAA,EAKrCH,GAAAA,KAAA,CAAClD,SAAS2B,WAAW,GAACW,OAAAtC,SAAAsC,OAAAX,aAAAW,OAAAW,IAAAX,OAAAY,OAAAD,KAAAX,EAAA,CAAA,GAAAY,KAAAZ,EAAA,CAAA,IA5BzBkB,UAAUP,IA4BPC,EAAsB;AAAC,MAAAO,IAAAC;AAAA,SAAApB,EAAAD,CAAAA,MAAAA,mBAAAC,SAAAO,YAAAP,EAAA,CAAA,MAAAH,YAEhBsB,KAAAA,MAAA;AAAA,QAAA,CACHtB;AAAQ;AAEb,UAAAwB,wBAAAC,CAAA,QAAA;AACE,YAAAC,SAAeD,IAAGC;AAAO,UAEnBA,kBAAMC,QAIRzB,EAAAA,mBAAoBA,CAAAA,gBAAejC,SAAUyD,MAAM,IAAC;AAAA,mBAInDE,QAAYlB;AAAQ,cACnBgB,WAAWhC,QAAMA,KAAEzB,SAAUyD,MAAM;AAAC;AAK1C1B,iBAASyB,GAAG;AAAA,MAAA;AAAA,IAAC;AAGfI,WAAAA,OAAAC,iBAAwB,aAAaN,qBAAqB,GAAC,MAAA;AAGzDO,aAAAA,oBAA2B,aAAaP,qBAAqB;AAAA,IAAC;AAAA,EAAA,GAE/DD,KAACrB,CAAAA,iBAAiBF,UAAUU,QAAQ,GAACP,OAAAD,iBAAAC,OAAAO,UAAAP,OAAAH,UAAAG,QAAAmB,IAAAnB,QAAAoB,OAAAD,KAAAnB,EAAA,EAAA,GAAAoB,KAAApB,EAAA,EAAA,IA5BxCkB,UAAUC,IA4BPC,EAAqC,GAEjChB;AAAU;AC3GZ,SAAAyB,eAAAnE,SAAA;AACeoE,SAAAA,eAAepE,OAAO,GAExBqE,gBAAsB;AAAA;ACCnC,SAAAC,gBAAAC,KAAA;AAAA,QAAAjC,IAAAC,EAAA,CAAA,GACLiC,WAAiBxB,OAAA,IAAqB;AAACZ,MAAAA;AAAAE,SAAAA,EAAA,CAAA,MAAAmC,OAAAC,IAAA,2BAAA,KAEdtC,KAAAA,MAAMoC,SAAQpB,SAASd,OAAAF,MAAAA,KAAAE,EAAA,CAAA,GAAhDqC,oBAAoBJ,KAAKnC,EAAuB,GAEzCoC;AAAQ;ACOV,MAAMI,sBAAsBC,UAAkD;AAAA,EACnFC,QAA4B;AAAA,IAACC,OAAO;AAAA,EAAI;AAAA,EAExC,OAAOC,yBAAyBD,OAAkC;AAEzD,WAAA;AAAA,MAACA;AAAAA,IAAK;AAAA,EAAA;AAAA,EAGfE,kBAAkBF,OAAcG,MAAuB;AACrD,SAAKC,MAAMC,QAAQ;AAAA,MAACL;AAAAA,MAAOG;AAAAA,IAAAA,CAAK;AAAA,EAAA;AAAA,EAGlCG,SAAoB;AACZ,UAAA;AAAA,MAACN;AAAAA,QAAS,KAAKD;AAErB,QAAIC,OAAO;AACT,YAAMO,UAAU,OAAOP,OAAOO,WAAY,WAAWP,MAAMO,UAAU;AAE9D,aAAA,oBAAC,QAAMA,UAAQ,QAAA,CAAA;AAAA,IAAA;AAGxB,WAAO,KAAKH,MAAMI;AAAAA,EAAAA;AAEtB;ACnCO,SAAAC,mBAAAL,OAAA;AAAA7C,QAAAA,IAAAC,EAAA,EAAA,GACL;AAAA,IAAAgD;AAAAA,IAAAE;AAAAA,IAAAC;AAAAA,IAAAC;AAAAA,IAAAC;AAAAA,EAAAA,IAAkDT;AAAK/C,MAAAA;AAAAE,IAAAoD,CAAAA,MAAAA,YAAApD,SAAAsD,SAEvBxD,KAAAA,MAAA;AAG9ByD,eAAA,MAAA;AACEH,eAASE,KAAK;AAAA,OAAC,CACb;AAAA,EACLtD,GAAAA,OAAAoD,UAAApD,OAAAsD,OAAAtD,OAAAF,MAAAA,KAAAE,EAAA,CAAA;AAND,QAAAwD,cAAoB1D;AAMCQ,MAAAA;AAAAN,WAAAwD,eAGnBlD,KAAAmD,CAAA,UAAA;AACMA,UAAKC,QAAS,WAAYC,CAAAA,uBAAuBF,MAAKG,aAAc,KACtEJ,YAAY;AAAA,EAAC,GAEhBxD,OAAAwD,aAAAxD,OAAAM,MAAAA,KAAAN,EAAA,CAAA;AALH,QAAA6D,gBAAsBvD;AAOrBK,MAAAA;AAAA,SAAAX,EAAAiD,CAAAA,MAAAA,YAAAjD,EAAA,CAAA,MAAAwD,eAAAxD,EAAA6D,CAAAA,MAAAA,iBAAA7D,EAAA,CAAA,MAAAmD,MAAAnD,SAAAqD,YAGC1C,KASK,oBAAA,MARY0C,EAAAA,2BACP,WAAA,sBACJF,IACC,MAAA,UACIK,sBACEK,0BAEH,SACV,CAAA,GAAK7D,OAAAiD,UAAAjD,OAAAwD,aAAAxD,OAAA6D,eAAA7D,OAAAmD,IAAAnD,OAAAqD,UAAArD,QAAAW,MAAAA,KAAAX,EAAA,EAAA,GATLW;AASK;ACrCOmD,SAAAA,oBACdtB,OACAuB,KACmB;AACfA,SAAAA,IAAIzF,SAAS,iBACR;AAAA,IAAC,GAAGkE;AAAAA,IAAOwB,aAAa;AAAA,IAAMC,SAAS;AAAA,IAAMC,OAAOH,IAAIG;AAAAA,EAAAA,IAG7DH,IAAIzF,SAAS,gBACR;AAAA,IAAC,GAAGkE;AAAAA,IAAOyB,SAAS;AAAA,EAAA,IAGzBF,IAAIzF,SAAS,cACR;AAAA,IAAC,GAAGkE;AAAAA,IAAOyB,SAAS;AAAA,IAAOC,OAAO;AAAA,EAAA,IAGvCH,IAAIzF,SAAS,eACR;AAAA,IAAC,GAAGkE;AAAAA,IAAOwB,aAAa;AAAA,IAAME,OAAO;AAAA,IAAMZ,OAAO;AAAA,EAAA,IAGvDS,IAAIzF,SAAS,gBACR;AAAA,IAAC,GAAGkE;AAAAA,IAAOyB,SAAS;AAAA,IAAOC,OAAO;AAAA,EAAA,IAGvCH,IAAIzF,SAAS,cACR;AAAA,IAAC,GAAGkE;AAAAA,IAAO0B,OAAO1B,MAAM0B,SAASH,IAAIG;AAAAA,EAAAA,IAG1CH,IAAIzF,SAAS,wBACR;AAAA,IAAC,GAAGkE;AAAAA,IAAOwB,aAAaD,IAAIT;AAAAA,IAAOa,aAAaJ,IAAII,eAAe3B,MAAM2B;AAAAA,EAAAA,IAG9EJ,IAAIzF,SAAS,wBACR;AAAA,IAAC,GAAGkE;AAAAA,IAAO2B,aAAaJ,IAAII;AAAAA,EAAAA,IAGjCJ,IAAIzF,SAAS,iBACR;AAAA,IAAC,GAAGkE;AAAAA,IAAOwB,aAAaD,IAAIT;AAAAA,IAAOY,OAAO;AAAA,IAAMZ,OAAOS,IAAIT;AAAAA,EAAAA,IAG7Dd;AACT;ACzCO,MAAM4B,mCAAmC,CAC9C,WACA,SACA,OACA,SACA,QACA,OACA,UACA,YACA,QACA,OACA,UAAU,GAMCC,iCAA4C,gBAK5CC,2CAAwD,CAAC,gBAAgB,WAAW,GCuE3FC,uBAAuBA,CAACjB,OAAekB,WAC3CA,SAASA,OAAOlB,QAAQA,OAEpBmB,wBAAwBA,CAACP,OAAeM,WAC5CA,OAAOlB,MAAMoB,YAAY,EAAEC,QAAQT,MAAMQ,YAAa,CAAA,IAAI,IAEtDE,oBAAoBC,WAAW,SAGnChC,OAeAiC,cACA;AACM,QAAA;AAAA,IACJC,SAAS;AAAA,IACTC;AAAAA,IACAzG;AAAAA,IACA0G,cAAcC;AAAAA,IACdC,WAAW;AAAA,IACXC;AAAAA,IACAjC;AAAAA,IACAkC,UAAUC;AAAAA,IACVC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAvC;AAAAA,IACAwC;AAAAA,IACAC;AAAAA,IACAC,SAASC;AAAAA,IACTC,SAASC,cAAc;AAAA,IACvBC,UAAUZ;AAAAA,IACVa;AAAAA,IACAC,SAAS;AAAA,IACTC;AAAAA,IACAC;AAAAA,IACAC,cAAcC;AAAAA,IACdC;AAAAA,IACAC,cAAcnC;AAAAA,IACdoC;AAAAA,IACArD,OAAOsD;AAAAA,IACP,GAAGC;AAAAA,EAAAA,IACDhE,OAEE,CAACL,OAAOsE,QAAQ,IAAIC,WAAWjD,qBAAqB;AAAA,IACxDE,aAAa4C,aAAa;AAAA,IAC1B3C,SAAS;AAAA,IACTE,aAAa;AAAA,IACbD,OAAO;AAAA,IACPZ,OAAOsD,aAAa;AAAA,EAAA,CACrB,GAEK;AAAA,IAAC5C;AAAAA,IAAaC;AAAAA,IAASE;AAAAA,IAAaD;AAAAA,IAAOZ;AAAAA,EAAAA,IAASd,OAEpDwE,sBAAsBC,YAC1B,CAAC;AAAA,IAAC3D,OAAAA;AAAAA,EAAAA,MACA;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,IAAG;AAAA,MAEH,SAAS2C;AAAAA,MACT,QAAQ;AAAA,MACR,MAAK;AAAA,MAEL,8BAAC,MAAK,EAAA,MAAMd,UAAU,cAAa,YAChC7B,UACH,QAAA,CAAA;AAAA,IAAA;AAAA,EAAA,GAGJ,CAAC6B,UAAUc,WAAW,CACxB,GAEMM,eACJ,OAAOC,oBAAqB,aAAaA,mBAAmBQ,qBAExD/B,eACJ,OAAOC,oBAAqB,aAAaA,mBAAmBT,uBAGxDyC,iBAAiBxG,OAA8B,IAAI,GACnDyG,2BAA2BzG,OAA8B,IAAI,GAC7D0G,kBAAkB1G,OAAgC,IAAI,GACtD2G,oBAAoB3G,OAA8B,IAAI,GAGtD4G,iBAAiB5G,OAAO,EAAK,GAC7B6G,WAAW7G,OAAO4C,KAAK,GACvBkE,eAAe9G,OAAOkG,SAAS,GAC/Ba,wBAAwB/G,OAAO,EAAK;AAIxCoE,sBAAAA,cACA,MAAMsC,gBAAgBtG,OACxB;AAEA,QAAM4G,YAAY,GAAGvE,EAAE,YACjB2C,UAAUtG,MAAMC,QAAQsG,WAAW,IAAIA,cAAc5F,aACrD6F,UAAU2B,aAAa1B,WAAW,GAClC2B,gBAAgBC,QACpB,MAAOvE,UAAU,OAAOwC,QAAQgC,KAAMC,CAAAA,MAAMA,EAAEzE,UAAUA,KAAK,IAAIpD,QACjE,CAAC4F,SAASxC,KAAK,CACjB,GACM0E,kBAAkBH,QACtB,MAAM/B,QAAQnG,OAAQ6E,CAAYN,WAAAA,QAAQe,aAAaf,OAAOM,MAAM,IAAI,EAAK,GAC7E,CAACS,cAAca,SAAS5B,KAAK,CAC/B,GACM+D,qBAAqBD,gBAAgBhJ,QACrCkJ,eAAelE,cAAc,GAAGb,EAAE,WAAWa,WAAW,KAAK9D,QAC7DiI,WAAYjE,UAAU,QAAQqB,WAAatB,WAAWC,UAAU,MAEhEkE,iBAAiBnB,YACpBxD,CAAwC,UAAA;AACvCF,eAAW,MAAM;AAIf,UAAIkE,sBAAsB3G;AACxB;AAGIP,YAAAA,YAA2B+F,mBAAmB,CAAA,GAAI+B,OACtDnB,eAAepG,UAAU,CAACoG,eAAepG,OAAO,IAAI,CAAA,GACpDqG,yBAAyBrG,UAAU,CAACqG,yBAAyBrG,OAAO,IAAI,EAC1E;AAEA,UAAIwH,cAAc;AAElB,UAAI1K,SAASC;AACX,mBAAW0K,KAAKhI;AACd,cAAIgI,MAAM3K,SAASC,iBAAiB0K,EAAEzK,SAASF,SAASC,aAAa,GAAG;AACxD,0BAAA;AACd;AAAA,UAAA;AAAA;AAKFyK,sBAAgB,OAClBxB,SAAS;AAAA,QAACxI,MAAM;AAAA,MAAY,CAAA,GAC5BmJ,sBAAsB3G,UAAU,IAC5B6E,iBAAeA,cAAc,IAAI,GACjCH,UAAQA,OAAO/B,KAAK;AAAA,OAEzB,CAAC;AAAA,EAAA,GAEN,CAAC+B,QAAQG,eAAeW,eAAe,CACzC,GAEMkC,kBAAkBvB,YAAaxD,CAAsC,YAAA;AACzE,UAAMgF,iBAAiBpB,kBAAkBvG,SACnC4H,iBAAiBjF,QAAMlC,kBAAkBoH,cAAclF,QAAMlC,SAAS,MACtE4C,gBAAcsE,gBAAgB3K,SAAS4K,cAAc,KAAK;AAE5DvE,sBAAgBmD,eAAexG,YACjCwG,eAAexG,UAAUqD,eAEzB2C,SAAS;AAAA,MAACxI,MAAM;AAAA,MAAuB6F,aAAAA;AAAAA,IAAAA,CAAY;AAAA,KAEpD,CAAE,CAAA,GAECyE,qBAAqB3B,YACxB4B,CAAc,MAAA;AACJ,aAAA;AAAA,MAACvK,MAAM;AAAA,MAAgBgF,OAAOuF;AAAAA,IAAAA,CAAE,GAEzCpB,sBAAsB3G,UAAU,IAE5BsC,YAAUA,SAASyF,CAAC,GAExBtB,SAASzG,UAAU+H,GAEfpD,YAAUA,SAASoD,CAAC,GACpBlD,iBAAeA,cAAc,IAAI,GAErCyB,gBAAgBtG,SAASlC,MAAM;AAAA,EAAA,GAEjC,CAAC6G,UAAUrC,UAAUuC,aAAa,CACpC,GAEMmD,oBAAoB7B,YACvBxD,CAAsC,YAAA;AACjCA,QAAAA,QAAMC,QAAQ,aAAa;AAG7B,UAFAD,QAAMsF,kBAEF,CAACd,mBAAoB;AAEzB,YAAMe,eAAehB,gBAAgBF,KAAMC,SAAMA,IAAEzE,UAAUU,WAAW,GAClEiF,cAAcD,eAAehB,gBAAgBrD,QAAQqE,YAAY,IAAI,IACrEE,mBAAmBlB,iBAAiBiB,cAAc,KAAKhB,kBAAkB;AAE3EiB,0BACFpC,SAAS;AAAA,QAACxI,MAAM;AAAA,QAAuBgF,OAAO4F,iBAAiB5F;AAAAA,QAAOa,aAAa;AAAA,MAAA,CAAK;AAG1F;AAAA,IAAA;AAGEV,QAAAA,QAAMC,QAAQ,WAAW;AAG3B,UAFAD,QAAMsF,kBAEF,CAACd,mBAAoB;AAEnBe,YAAAA,iBAAehB,gBAAgBF,KAAMC,CAAMA,QAAAA,IAAEzE,UAAUU,WAAW,GAClEiF,gBAAcD,iBAAehB,gBAAgBrD,QAAQqE,cAAY,IAAI,IACrEE,qBACJlB,gBACEiB,kBAAgB,KACZhB,qBAAqB,KACpBA,qBAAqBgB,gBAAc,KAAKhB,kBAAkB;AAG/DiB,4BACFpC,SAAS;AAAA,QAACxI,MAAM;AAAA,QAAuBgF,OAAO4F,mBAAiB5F;AAAAA,QAAOa,aAAa;AAAA,MAAA,CAAK;AAG1F;AAAA,IAAA;AAGEV,QAAAA,QAAMC,QAAQ,UAAU;AACjB,eAAA;AAAA,QAACpF,MAAM;AAAA,MAAc,CAAA,GAC9BmJ,sBAAsB3G,UAAU,IAC5B6E,iBAAeA,cAAc,IAAI,GACrCyB,gBAAgBtG,SAASlC,MAAM;AAE/B;AAAA,IAAA;AAGF,UAAM2C,SAASkC,QAAMlC,QACf4H,SAAS9B,kBAAkBvG;AAG9BqI,SAAAA,WAAW5H,UAAU4H,QAAQrL,SAASyD,MAAM,MAC7C,CAAC6C,iCAAiCpD,SAASyC,QAAMC,GAAG,GACpD;AACA0D,sBAAgBtG,SAASlC,MAAM;AAE/B;AAAA,IAAA;AAAA,EACF,GAEF,CAACoF,aAAagE,iBAAiBC,oBAAoBtC,aAAa,CAClE,GAEMyD,oBAAoBnC,YACvBxD,CAAyC,YAAA;AAClC4F,UAAAA,YAAY5F,QAAMG,cAAcN;AAE7B,aAAA;AAAA,MAAChF,MAAM;AAAA,MAAgB4F,OAAOmF;AAAAA,IAAAA,CAAU,GAE7C1D,iBAAeA,cAAc0D,SAAS;AAAA,KAE5C,CAAC1D,aAAa,CAChB,GAEM2D,eAAerC,YAAY,MAAM;AAC5B,aAAA;AAAA,MACP3I,MAAM;AAAA,MACN4F,OAAOZ,QAAQoD,YAAYpD,OAAOsE,aAAa,IAAI;AAAA,IAAA,CACpD;AAAA,EAAA,GACA,CAACA,eAAelB,aAAapD,KAAK,CAAC,GAEhCiG,mBAAmBtC,YACtBxD,CAAwC,YAAA;AAClCQ,gBACH6C,SAAS;AAAA,MAACxI,MAAM;AAAA,IAAA,CAAc,GAE1BoH,WAASA,QAAQjC,OAAK,GACtBoC,eAAayD;EAAa,GAGlC,CAACrF,SAASyB,SAASG,aAAayD,YAAY,CAC9C,GAEME,0BAA0BvC,YAAY,MAAM;AAChDQ,0BAAsB3G,UAAU;AAAA,KAC/B,EAAE,GAEC2I,0BAA0BxC,YAAY,MAAM;AAChDQ,0BAAsB3G,UAAU;AAAA,KAC/B,EAAE,GAEC4I,yBAAyBzC,YAAY,MAAM;AACtC,aAAA;AAAA,MAAC3I,MAAM;AAAA,IAAa,CAAA,GAC7BiJ,SAASzG,UAAU,IACf2E,YAAUA,SAAS,EAAE,GACrBE,iBAAeA,cAAc,IAAI,GACrCyB,gBAAgBtG,SAASlC,MAAM;AAAA,EAAA,GAC9B,CAAC6G,UAAUE,aAAa,CAAC,GAEtBgE,yBAAyB1C,YAAY,MAAM;AACtC,aAAA;AAAA,MAAC3I,MAAM;AAAA,IAAA,CAAc;AAAA,EAChC,GAAG,EAAE;AAGL4C,YAAU,MAAM;AAEV0F,QAAAA,cAAcY,aAAa1G,SAAS;AACtC0G,mBAAa1G,UAAU8F,WAEnBA,cAAc1G,WAChB4G,SAAS;AAAA,QAACxI,MAAM;AAAA,QAAgBgF,OAAOsD;AAAAA,MAAAA,CAAU,GACjDW,SAASzG,UAAU8F;AAGrB;AAAA,IAAA;AAIEA,kBAAcW,SAASzG,YACzByG,SAASzG,UAAU8F,aAAa,MAEhCE,SAAS;AAAA,MAACxI,MAAM;AAAA,MAAgBgF,OAAOsD,aAAa;AAAA,IAAA,CAAK;AAAA,KAE1D,CAACA,SAAS,CAAC,GAGd1F,UAAU,MAAM;AACV,KAAC+C,WAAWsD,SAASzG,WACvBgG,SAAS;AAAA,MAACxI,MAAM;AAAA,MAAuBgF,OAAOiE,SAASzG;AAAAA,IAAAA,CAAQ;AAAA,KAEhE,CAACmD,OAAO,CAAC,GAGZ/C,UAAU,MAAM;AACd,UAAM0I,cAAcvC,kBAAkBvG;AAEtC,QAAI,CAAC8I,YAAa;AAElB,UAAMZ,iBAAehB,gBAAgBF,KAAMC,CAAMA,QAAAA,IAAEzE,UAAUU,WAAW;AAExE,QAAIgF,gBAAc;AACVC,YAAAA,gBAAcjB,gBAAgBrD,QAAQqE,cAAY,GAClDa,oBAAoBD,YAAY7K,WAAWkK,aAAW;AAE5D,UAAIY,mBAAmB;AACrB,YAAIpM,UAAUoM,iBAAiB;AAE7B;AAGFhL,6BAAqBgL,iBAAiB;AAAA,MAAA;AAAA,IACxC;AAAA,EACF,GACC,CAAC7F,aAAagE,eAAe,CAAC;AAE3B8B,QAAAA,cAAcjC,QAAQ,MAAM;AAC5B,QAAA,CAACtC,WAAW,CAAChH,YAAY+E;AACpB,aAAA;AAAA,QACL,cAAc;AAAA,QACd,SAAWqG;AAAAA,MACb;AAAA,EAID,GAAA,CAACpL,UAAUoL,wBAAwBpE,SAASjC,KAAK,CAAC,GAE/CyG,uBAAuBlC,QAC3B,MACE7B,QAAQlJ,IAAK+L,CAAAA,QACPA,QAAM,IAAU,IAChBA,QAAM,KACNA,QAAM,IAAU,IAEZA,MAAc,CACvB,GACH,CAAC7C,OAAO,CACV,GAEMgE,oBAAoBnC,QACxB,MAAM7B,QAAQlJ,IAAK+L,CAAMoB,QAAAA,KAAKC,IAAKrB,MAAc,GAAG,CAAC,CAAC,GACtD,CAAC7C,OAAO,CACV,GAEMmE,kBAA+CtC,QACnD,MAAO,OAAOjC,cAAe,WAAWA,aAAaN,cACrD,CAACM,UAAU,CACb,GAEMwE,kBAAkBnD,YACrBxD,CAAyC,YAAA;AACxC6F,oBAEIa,gBAAgBE,WAASF,gBAAgBE,QAAQ5G,OAAK,GAE1DxG,KAAK,MAAMmK,gBAAgBtG,SAASlC,MAAAA,CAAO;AAAA,EAE7C,GAAA,CAACuL,iBAAiBb,YAAY,CAChC,GAEMgB,iBAAiBzC,QACrB,MACE,CAACtJ,YAAY,CAAC8H,YAAYT,aACvB,oBAAA,KAAA,EAAI,eAAauC,UAAU,SAAS4B,sBACnC,UAAC,oBAAA,QAAA,EACC,cAAW,QACX,UAAU5B,UACV,SAAQ,SACR,UACA,MAAMoC,iBACN,MAAK,SACL,SAASP,sBACLG,iBACJ,SAASC,gBAAAA,CAAgB,EAE7B,CAAA,IACElK,QACN,CACE3B,UACA4J,UACAhD,UACAiF,iBACAxE,YACAmE,sBACAC,mBACAG,iBACA9D,QAAQ,CAEZ,GAEMmE,aAAa3C,QAAQ,MACrB3D,UAAU,OACRZ,UAAU,OACLoD,YAAYpD,OAAOsE,aAAa,IAGlC,KAGF1D,OACN,CAAC0D,eAAe1D,OAAOwC,aAAapD,KAAK,CAAC,GAEvCmH,QACJ,oBAAC,gBACK5D,WACJ,yBAAuBqB,cACvB,qBAAkB,QAClB,iBAAeC,UACf,aAAWT,WACX,gBAAe,OACf,cAAa,OACb,aAAY,OACZ,QACA,aACA,gBACA,UACA,UACA,MACA,WAAWnC,WAAWmF,qBACtB,IACA,WAAU,UACV,UAAUtB,mBACV,SAASM,wBACT,SAASH,kBACT,SACA,QACA,QACA,UACA,KAAKnC,iBACL,MAAK,YACL,YAAY,IACZ,QAAQT,UAAU2D,gBAClB,OAAOE,WAAAA,CAEV,GAEKG,uBAAuB1D,YAC1BxD,CAAyC,YAAA;AAEpCA,YAAMC,QAAQ,SACZS,eAAaiD,gBAAgBtG,SAASlC,MAAM;AAAA,EAAA,GAGpD,CAACuF,WAAW,CACd,GAEMyG,WAAU/C,QAAQ,MAClBG,gBAAgBhJ,WAAW,IAAU,2BAGtC,KACC,EAAA,WAAQ,yBACR,WAAW2L,sBACX,SAAS,GACT,GAAItF,SACJ,UAAU,IAEV,UAAC,oBAAA,OAAA,EACC,IAAG,MACH,wBAAsB,IACtB,WAAQ,6BACR,IAAIqC,WACJ,KAAKL,mBACL,MAAK,WACL,OAAO,GAENW,UAAAA,gBAAgBlL,IAAK0H,CAAW,aAAA;AAC/B,UAAMqG,SACJ7G,gBAAgB,OAAOQ,SAAOlB,UAAUU,cAAc4D,kBAAkBpD;AAE1E,+BACG,oBACC,EAAA,IAAI,GAAGrB,EAAE,WAAWqB,SAAOlB,KAAK,IAEhC,UAAUsF,oBACV,UAAUiC,QACV,OAAOrG,SAAOlB,OAEbwH,UAAavE,aAAAA,aAAa/B,QAAM,GAAG;AAAA,MAClCjG,UAAUgH;AAAAA,MACVlC,UAAUwH;AAAAA,MACV7M,UAAUmG,eAAe0G,SAAS,IAAI;AAAA,IAAA,CACvC,EATIrG,GAAAA,SAAOlB,KAUd;AAAA,EAAA,CAEH,EACH,CAAA,EACF,CAAA,GAED,CACDU,aACA4D,eACAI,iBACAY,oBACA+B,sBACAxH,IACAkC,SACAqC,WACAvD,aACAoB,SACAgB,YAAY,CACb,GAEKwE,UAAUlD,QAAQ,MAClBpB,gBACKA,cACL;AAAA,IACEmE,SAAAA;AAAAA,IACAI,QAAQ,CAAC7C;AAAAA,IACT8C,cAAc7D,gBAAgBtG;AAAAA,IAC9BoK,cAAc1B;AAAAA,IACd2B,cAAc1B;AAAAA,EAAAA,GAEhBtC,wBACF,IAGEc,uBAAuB,IAClB,OAIP,oBAAC,WACC,OAAO,IACP,eAAa,IACb,SAAA2C,UACA,oBAAoBtG,0CACpB,qBAAmB,IACnB,cAAckF,yBACd,cAAcC,yBACd,MAAMtB,UACN,UAAS,QACT,WAAW9D,gCACX,QAAM,IACN,QACA,KAAK8C,0BACL,kBAAkBC,gBAAgBtG,SAC9BoF,GAAAA,SACJ,GAEH,CACD0E,UACAzC,UACAF,oBACAuB,yBACAC,yBACAvD,SACAE,QACAK,aAAa,CACd;AAED;AAAA;AAAA,IAEE,qBAAC,OACC,EAAA,WAAQ,gBACR,QAAQ2B,gBACR,SAASI,iBACT,WAAWM,mBACX,KAAK5B,gBAEJuD,UAAAA;AAAAA,MAAAA;AAAAA,MACAM;AAAAA,IAAAA,EACH,CAAA;AAAA;AAEJ,CAAC;AAEDnG,kBAAkBwG,cAAc;AAQzB,MAAMC,eAAezG,mBCvqBf0G,cAAczG,WAAW,SACpChC,OACAZ,KACA;AACM,QAAA;AAAA,IACJgB;AAAAA,IACAsI;AAAAA,IACAC,cAAcC;AAAAA;AAAAA,IAEdC,KAAKC;AAAAA,IACLC,OAAO/I,MAAM6I,OAAQ7I,MAAMgJ,SAA+B;AAAA,IAC1DC,OAAOjJ,MAAM6I,OAAQ7I,MAAMgJ,SAA+B;AAAA,IAC1DE;AAAAA,IACAC;AAAAA;AAAAA,IAEAH,OAAOI;AAAAA,IACP,GAAGpF;AAAAA,EACDhE,IAAAA,OACE,CAACqJ,MAAMC,OAAO,IAAI9L,SAAS,EAAK,GAChC+L,mBAAmB1L,OAAiC,IAAI,GACxD2L,oBAAoB3L,OAA8B,IAAI,GAEtD4L,WAAWrF,YAAY,MAAMkF,QAAQ,EAAK,GAAG,CAAE,CAAA,GAC/CI,SAAStF,YAAY,MAAMkF,QAAQ,EAAI,GAAG,CAAA,CAAE;AAElDK,uBAAqBF,UAAU,MAAM,CAACF,iBAAiBtL,SAASuL,kBAAkBvL,OAAO,CAAC;AAE1F,QAAM2L,WAAW5E,QAAQ,MAAM6E,SAASC,QAAQ1J,QAAQ,EAAEtD,OAAOiN,cAAc,GAAG,CAAC3J,QAAQ,CAAC,GAEtF4J,QAAQhF,QAAQ,MAAM;AAC1B,UAAMiF,MAAML,SAASzN;AAEjB+M,QAAAA,aAAae,MAAMf,WAAW;AAC1BgB,YAAAA,eAAe9C,KAAK+C,KAAKjB,YAAY,CAAC,GACtCkB,cAAchD,KAAKiD,MAAMnB,YAAY,CAAC;AAE5C,aAAO,CACL,GAAGU,SAASU,MAAM,GAAGJ,eAAe,CAAC,GACpC,oBAAA,SAAA,EACC,eAAa,IACb,SACG,oBAAA,OAAA,EAAM,IAAG,MAAK,UAAS,QAAO,OAAOjB,MACnCW,UAASU,SAAAA,MAAMJ,eAAe,GAAGD,MAAMG,WAAW,EACrD,CAAA,GAGF,MACA,SAAS,GACT,WAAU,OACV,QAAM,IACN,KAAKZ,mBAEL,UAAC,oBAAA,QAAA,EACC,MAAK,SACL,SAAS,GACT,MAAK,aACDZ,mBACJ,SAASS,OAAOI,WAAWC,QAC3B,KAAKH,kBACL,UAAUF,KAAK,CAAA,EAAA,GAdb,QAgBN,GACA,GAAGO,SAASU,MAAML,MAAMG,WAAW,CAAC;AAAA,IAAA;AAIjCR,WAAAA;AAAAA,EAAAA,GACN,CAACH,UAAUC,QAAQd,mBAAmBK,MAAMC,WAAWG,MAAMO,QAAQ,CAAC;AAGvE,SAAA,oBAAC,QACC,IAAG,OACH,WAAQ,eACJ5F,GAAAA,WACJ,WAAWuG,kBAAkB7B,WAAW8B,aAAa,GACrD,MACA,MACA,KAECR,UAAAA,MAAM/P,IAAI,CAACwQ,MAAMC,cAChB,qBAAC,UACEA,EAAAA,UAAAA;AAAAA,IAAAA,YAAY,KACX,oBAAC,KAAI,EAAA,eAAW,IAAC,IAAG,MACjBvB,UAAAA,aAAc,oBAAA,MAAA,EAAK,OAAK,IAAC,cAAC,CAAA,GAC7B;AAAA,IAED,oBAAA,KAAA,EAAI,IAAG,MAAMsB,UAAK,KAAA,CAAA;AAAA,EAAA,KANNC,SAOf,CACD,GACH;AAEJ,CAAC;AAEDjC,YAAYF,cAAc;AC9GboC,MAAAA,gBAAgBC,0BAC3B,6BACA;AAAA,EAACC,SAAS;AAAG,CACf;ACXO,SAAAC,YAAA;AAAA,SACEC,WAAAJ,aAAwB;AAAC;ACgGlC,SAASK,oBACP9N,iBACA+N,eACAvM,QACS;AACL,SAAA,CAACxB,mBAAmB,CAAC+N,gBAAsB,KAG7CC,wBAAwBhO,iBAAiBwB,MAAM,KAC/CwM,wBAAwBD,eAAevM,MAAM;AAEjD;AAEA,MAAMyM,aAAanJ,WAAW,SAAAhC,OAAAiC,cAAA;AAAA9E,QAAAA,IAAAC,EAAA,EAAA,GAI5B;AAAA,IAAAgO,sBAAAC;AAAAA,IAAAC,4BAAAC;AAAAA,IAAAnL;AAAAA,IAAAoL,YAAAC;AAAAA,IAAAC;AAAAA,IAAAC;AAAAA,IAAArL;AAAAA,IAAAsL;AAAAA,IAAAC;AAAAA,IAAAC,QAAAC;AAAAA,IAAAxI,QAAAyI;AAAAA,IAAAC;AAAAA,IAAAC,QAAAjP;AAAAA,IAAAkP;AAAAA,IAAAC,OAAAC;AAAAA,EAAAA,IAgBIrM,OAHMsM,aAAArP,OAAcI,aAAdJ,IAIV6O,SAAeS,aACftB,gBAAsBc,aAAaD,OAAMpO,WAAYqO,UAAU,KAAA,OAAYD,OAAMjR,SACjFqC,kBAAwBsP,mBAAmB,EAAC3R,SAC5C0I,SAAeuB,aAAakH,UAAU,GACtCE,SAAepH,aAAawH,UAAU,GACtCF,QAActH,aAAauH,SAAS,GACpCjN,MAAYvB,OAAA,IAAkC,GAC9C2N,aAAmB3N,OAAA,IAAkC,GACrD4O,QAAcC,YACd;AAAA,IAAAC;AAAAA,EAAAA,IAAqBF,OACrBG,UAAgB,GAAGtM,EAAE,UACrBuM,kBAAwB/R,CAAAA,CAAQ+Q,WAAYN,oBAAyB,IACrEuB,aAAmBhS,EAAQ6Q,UAAWkB;AAAepP,MAAAA;AAAAN,IAAA,CAAA,MAAAmC,OAAAC,IAAA,2BAAA,KAE2B9B,KAAAA,MAAM2B,IAAGnB,SAAQd,OAAAM,MAAAA,KAAAN,EAAA,CAAA,GAAjGqC,oBAAkEyC,cAAcxE,EAAiB;AAACK,MAAAA;AAAAX,IAAA,CAAA,MAAAmC,OAAAC,IAAA,2BAAA,KAGhGzB,KAAAA,MAAM0N,WAAUvN,SAAQd,OAAAW,MAAAA,KAAAX,EAAA,CAAA,GAF1BqC,oBACEiM,qBACA3N,EACF;AAAC,MAAAC,IAAAO;AAAAnB,WAAAkO,aAEStN,KAAAA,MAAA;AACHsN,iBAGDjM,IAAGnB,WACLjC,qBAAqBoD,IAAGnB,OAAQ;AAAA,EAEjCK,GAAAA,KAAA,CAAC+M,WAAWjM,GAAG,GAACjC,OAAAkO,WAAAlO,OAAAY,IAAAZ,OAAAmB,OAAAP,KAAAZ,EAAA,CAAA,GAAAmB,KAAAnB,EAAA,CAAA,IAPnBkB,UAAUN,IAOPO,EAAgB;AAACC,MAAAA;AAAApB,IAAA,CAAA,MAAAD,mBAAAC,EAAAwP,CAAAA,MAAAA,cAAAxP,EAAA0O,CAAAA,MAAAA,WAAA1O,SAAA8N,iBAIhB1M,KAAAqC,CAAA,UAAA;AACM,QAAA,CAAC+L,cAAU,CAAKd;AAAO;AAE3B,UAAAnN,SAAA3D,SAAAC;AAEI0D,eAAWsM,oBAAoB9N,iBAAiB+N,eAAevM,MAAM,KAKrEkC,MAAKC,QAAS,aAChBD,MAAKsF,eAAgB,GACrBtF,MAAKmM,gBAAAA,GACLlB;EAAS,GAEZ1O,OAAAD,iBAAAC,OAAAwP,YAAAxP,OAAA0O,SAAA1O,OAAA8N,eAAA9N,OAAAoB,MAAAA,KAAApB,EAAA,CAAA,GAjBL6P,iBACEzO,EAmBF;AAAC0O,MAAAA;AAAA9P,IAAA,EAAA,MAAAD,mBAAAC,EAAAwP,EAAAA,MAAAA,cAAAxP,EAAAyO,EAAAA,MAAAA,kBAAAzO,UAAA8N,iBAGCgC,KAAAN,cACEf,mBAAcsB,CAAA,YAAA;AAEZ,UAAAC,WAAevM,QAAKlC;AAEhBA,iBAAWsM,oBAAoB9N,iBAAiB+N,eAAevM,QAAM,KAKzEkN,eAAe;AAAA,EAAA,IACfzO,QAAAD,iBAAAC,QAAAwP,YAAAxP,QAAAyO,gBAAAzO,QAAA8N,eAAA9N,QAAA8P,MAAAA,KAAA9P,EAAA,EAAA;AAAAiQ,MAAAA;AAAAjQ,IAAA,EAAA,MAAAmC,OAAAC,IAAA,2BAAA,KACJ6N,KAAAA,MAAOhO,CAAAA,IAAGnB,OAAA,GAASd,QAAAiQ,MAAAA,KAAAjQ,EAAA,EAAA,GAbrBwM,qBACEsD,IAYAG,EACF;AAACC,MAAAA;AAAAlQ,IAAA,EAAA,MAAAmC,OAAAC,IAAA,2BAAA,KAKc8N,KAAAC,gBAAgB,GAACnQ,QAAAkQ,MAAAA,KAAAlQ,EAAA,EAAA;AAAAoQ,MAAAA;AAAApQ,IAAA,EAAA,MAAAmC,OAAAC,IAAA,2BAAA,KAQfgO,KAAAC,eAAe,GAACrQ,QAAAoQ,MAAAA,KAAApQ,EAAA,EAAA;AAAAsQ,MAAAA;AAAAtQ,IAAA,EAAA,MAAAmC,OAAAC,IAAA,2BAAA,KAQVkO,MAAAC,aAAa,GAACvQ,QAAAsQ,OAAAA,MAAAtQ,EAAA,EAAA;AAAAwQ,MAAAA;AAAAxQ,IAAAwO,EAAAA,MAAAA,UAAAxO,EAAA,EAAA,MAAAyP,WAAAzP,EAAA0O,EAAAA,MAAAA,WAAA1O,EAAA,EAAA,MAAA0P,mBAAA1P,UAAA2P,cAC5Ba,MAAAb,cACC,oBAAC,OAAe,WAAAc,aAAyB,GAAA,UAAA,YACvC,UAAC,qBAAA,MAAA,EAAW,OAAA,cAAsB,SAAC,GACjC,UAAA;AAAA,IAAA,oBAAC,KAAU,EAAA,MAAC,GAAW,SAAC,GACrBjC,UACC,UAAA,oBAAC,MAASiB,EAAAA,IAAAA,SAAe,MAAC,GAAS,QAAA,6BAEnC,CAAA,GAEJ;AAAA,IACCC,uCACE,KAAS,EAAA,MAAA,QACR,UAAC,oBAAA,QAAA,EACY,cAAA,gBACD,UAAChB,CAAAA,SACLgC,MAAAA,WACD,MAAA,SACIhC,SAAM,SACN,SAAA,GAEb,EAAA,CAAA;AAAA,EAAA,EAAA,CAEJ,EACF,CAAA,GACD1O,QAAAwO,QAAAxO,QAAAyP,SAAAzP,QAAA0O,SAAA1O,QAAA0P,iBAAA1P,QAAA2P,YAAA3P,QAAAwQ,OAAAA,MAAAxQ,EAAA,EAAA;AAAA2Q,MAAAA;AAAA3Q,IAAA,EAAA,MAAAmC,OAAAC,IAAA,2BAAA,KAEYuO,MAAAC,cAAc,GAAC5Q,QAAA2Q,OAAAA,MAAA3Q,EAAA,EAAA;AAAA6Q,MAAAA;AAAA7Q,YAAAiD,YAD5B4N,MAAC,oBAAA,KACY,EAAA,WAAAF,KACL,MAAA,GACG,UAAA,QACA,UAAA,YACJtC,KAAAA,YACK,UAAA,IAETpL,SACH,CAAA,GAAMjD,QAAAiD,UAAAjD,QAAA6Q,OAAAA,MAAA7Q,EAAA,EAAA;AAAA8Q,MAAAA;AAAA9Q,YAAAuO,UACLuC,MAAAvC,UACE,oBAAA,KAAA,EAAe,WAAAwC,aAAyB,GAAA,UAAA,YACjC,UACR,QAAA,GACD/Q,QAAAuO,QAAAvO,QAAA8Q,OAAAA,MAAA9Q,EAAA,EAAA;AAAAgR,MAAAA;AAAAhR,IAAAwQ,EAAAA,MAAAA,OAAAxQ,UAAA6Q,OAAA7Q,EAAA,EAAA,MAAA8Q,OAxCHE,2BAAC,MAAgB,EAAA,WAAAV,KAA0B,WAAA,UAAe,MAAA,GACvDE,UAAAA;AAAAA,IAAAA;AAAAA,IAyBDK;AAAAA,IAUCC;AAAAA,EAAAA,GAKH,GAAO9Q,QAAAwQ,KAAAxQ,QAAA6Q,KAAA7Q,QAAA8Q,KAAA9Q,QAAAgR,OAAAA,MAAAhR,EAAA,EAAA;AAAAiR,MAAAA;AAAAjR,IAAAoG,EAAAA,MAAAA,UAAApG,EAAA,EAAA,MAAA8O,UAAA9O,EAAA+O,EAAAA,MAAAA,UAAA/O,EAAA,EAAA,MAAAgR,OAAAhR,UAAAgP,QAlDTiC,0BAAC,MACY,EAAA,WAAAb,IACH,SAAA,QACAhK,QACHnE,KACG6M,QACAC,QACFC,MAENgC,UA0CF,KAAA,GAAOhR,QAAAoG,QAAApG,QAAA8O,QAAA9O,QAAA+O,QAAA/O,QAAAgR,KAAAhR,QAAAgP,MAAAhP,QAAAiR,OAAAA,MAAAjR,EAAA,EAAA;AAAAkR,MAAAA;AAAA,SAAAlR,EAAAiR,EAAAA,MAAAA,OAAAjR,UAAAiP,SA5DTiC,MAAC,oBAAA,WAAA,EACO,OAAA,UACK,WAAAhB,IACH,WAAA,cACE,WAAA,UACF,SAAA,QACA,SAAA,UACDjB,OAEPgC,UAAAA,IAoDF,CAAA,GAAYjR,QAAAiR,KAAAjR,QAAAiP,OAAAjP,QAAAkR,OAAAA,MAAAlR,EAAA,EAAA,GA7DZkR;AA6DY,CAEf;AAEDlD,WAAW5C,cAAc;AAOlB,MAAM+F,SAAStM,WAAW,SAAAhC,OAAAZ,KAAA;AAAA,QAAAjC,IAAAC,EAAA,EAAA,GAI/BmR,UAAgBzD,aAChB;AAAA,IAAA2B;AAAAA,MAAgB+B,YAAY;AAACC,MAAAA,eAAAC,cAAAC,YAAAvO,UAAAsI,WAAA8C,YAAAE,QAAAC,QAAArL,IAAAsO,YAAAhD,gBAAAC,SAAAhJ,SAAAkJ,YAAA/H,WAAAiI,QAAAhP,IAAAQ,IAAAK,IAAAC,IAAAO,IAAAC,IAAA4N;AAAAhP,WAAA6C,SAC7B;AAAA,IAAAoL,sBAAAnO;AAAAA,IAAAqO,4BAAA7N;AAAAA,IAAAoR,SAAA/Q;AAAAA,IAAAgR,YAAA/Q;AAAAA,IAAAqC;AAAAA,IAAAsI;AAAAA,IAAA8C;AAAAA,IAAAE;AAAAA,IAAAC;AAAAA,IAAArL;AAAAA,IAAAsO;AAAAA,IAAAhD;AAAAA,IAAAC;AAAAA,IAAAhJ;AAAAA,IAAAM,SAAA7E;AAAAA,IAAAwN,QAAAC;AAAAA,IAAAgD,UAAAN;AAAAA,IAAAxC;AAAAA,IAAAC,QAAAyC;AAAAA,IAAAvC,OAAA7N;AAAAA,IAAAyQ,SAAAN;AAAAA,IAAAvC;AAAAA,IAAA,GAAAnI;AAAAA,EAAAA,IAyBIhE,OAAK7C,OAAA6C,OAAA7C,OAAAsR,eAAAtR,OAAAuR,cAAAvR,OAAAwR,YAAAxR,OAAAiD,UAAAjD,OAAAuL,WAAAvL,OAAAqO,YAAArO,OAAAuO,QAAAvO,OAAAwO,QAAAxO,OAAAmD,IAAAnD,QAAAyR,YAAAzR,QAAAyO,gBAAAzO,QAAA0O,SAAA1O,QAAA0F,SAAA1F,QAAA4O,YAAA5O,QAAA6G,WAAA7G,QAAA8O,QAAA9O,QAAAF,IAAAE,QAAAM,IAAAN,QAAAW,IAAAX,QAAAY,IAAAZ,QAAAmB,IAAAnB,QAAAoB,IAAApB,QAAAgP,SAAAsC,gBAAAtR,EAAA,CAAA,GAAAuR,eAAAvR,EAAA,CAAA,GAAAwR,aAAAxR,EAAA,CAAA,GAAAiD,WAAAjD,EAAA,CAAA,GAAAuL,YAAAvL,EAAA,CAAA,GAAAqO,aAAArO,EAAA,CAAA,GAAAuO,SAAAvO,EAAA,CAAA,GAAAwO,SAAAxO,EAAA,CAAA,GAAAmD,KAAAnD,EAAA,CAAA,GAAAyR,aAAAzR,EAAA,EAAA,GAAAyO,iBAAAzO,EAAA,EAAA,GAAA0O,UAAA1O,EAAA,EAAA,GAAA0F,UAAA1F,EAAA,EAAA,GAAA4O,aAAA5O,EAAA,EAAA,GAAA6G,YAAA7G,EAAA,EAAA,GAAA8O,SAAA9O,EAAA,EAAA,GAAAF,KAAAE,EAAA,EAAA,GAAAM,KAAAN,EAAA,EAAA,GAAAW,KAAAX,EAAA,EAAA,GAAAY,KAAAZ,EAAA,EAAA,GAAAmB,KAAAnB,EAAA,EAAA,GAAAoB,KAAApB,EAAA,EAAA,GAAAgP,OAAAhP,EAAA,EAAA;AAxBekO,QAAAA,YAAApO,OAAgBI,cAAhBJ,IACMsO,kBAAA9N,OAAuBJ,cAAvBI,IACnBwR,WAAAnR,OAAgBT,cAAhBS,IACGoR,iBAAAnR,OAAkBV,aAAlBU,IAYZoF,UAAA7E,OAAWjB,aAAXiB,IAKO+N,YAAA9N,OAAalB,aAAbkB,IAKT4Q,eAAqBV,kBAAkBF,QAAOQ,YAAa,UAC3DK,cAAoBV,iBAAiBH,QAAOS,WAAYvC,MAAK4C,OAAAL,UAE7DH,UAD6BS,4BACO,KAAWL,UAC/CnD,SAAeS,UAAAA,GACftB,gBAAsBc,aAAaD,OAAMpO,WAAYqO,UAAU,KAAA,OAAYD,OAAMjR,SACjFqC,kBAAwBsP,qBAAoB3R,SAC5CiU,aAAmBhK,aAAaoK,cAAc,GAC9CH,WAAiBjK,aAAaqK,YAAY,GAC1C/C,QAActH,aAAauH,SAAS,GACpC2C,UAAgBlK,aAAasK,WAAW,GACxCG,YAAkB1R,OAAA,IAAkC,GACpD2R,aAAmB3R,OAAA,IAAkC,GACrD4R,UAAgB5R,OAAA,IAAkC,GAClD6R,oBAA0B7R,OAAA,IAA+B;AAACoP,MAAAA;AAAA9P,YAAA0F,WAGxDoK,KAAArM,CAAA,UAAA;AACEiC,cAAUjC,KAAK;AAEf,UAAAlC,SAAekC,MAAKlC,QACpBiR,cAAoBF,QAAOxR;AAEvB0R,QAAAA,eAAejR,WAAW6Q,UAAStR,SAAQ;AAC7C3B,0BAAoBqT,WAAW;AAAC;AAAA,IAAA;AAK9BA,QAAAA,eAAejR,WAAW8Q,WAAUvR,SAAQ;AAC9CjC,2BAAqB2T,WAAW;AAAC;AAAA,IAAA;AAK/BtT,kBAAcuE,MAAKlC,MAAO,MAC5BgR,kBAAiBzR,UAAW2C,MAAKlC;AAAAA,EAAA,GAEpCvB,QAAA0F,SAAA1F,QAAA8P,MAAAA,KAAA9P,EAAA,EAAA;AAtBHyS,QAAAA,cAAoB3C,IA0BpBL,UAAgB,GAAGtM,EAAE,UAErBuP,sBAA4BhS,OAAAR,MAAgC;AAAC+P,MAAAA;AAAAjQ,IAAAD,EAAAA,MAAAA,mBAAAC,UAAA8N,iBAKzBmC,KAAAA,MAAA;AAC9ByC,wBAAmB5R,WACrB6R,aAAaD,oBAAmB5R,OAAQ,GAG1C4R,oBAAmB5R,UAAWyC,WAAA,MAAA;AAC5B,YAAA1F,gBAAAD,SAAAC;AAA4C,UAExCA,kBAAkBgQ,oBAAoB9N,iBAAiB+N,eAAejQ,aAAa,GAAC;AACtF,cAAAmS,WAAeuC,kBAAiBzR;AAAQ,YAEpC,CAACS,YAAM,CAAK3D,SAAAgV,KAAA9U,SAAuByD,QAAM,GAAC;AAE5C,gBAAAsR,gBAAoBP,QAAOxR;AACvB0R,2BAAa3T,qBAAqB2T,aAAW;AAAC;AAAA,QAAA;AAKpDjR,iBAAM3C,MAAO;AAAA,MAAA;AAAA,OAAC,CAEd;AAAA,EACLoB,GAAAA,QAAAD,iBAAAC,QAAA8N,eAAA9N,QAAAiQ,MAAAA,KAAAjQ,EAAA,EAAA;AAtBD,QAAA8S,kBAAwB7C;AAsBYC,MAAAA;AAAAlQ,YAAAuL,aAQnB2E,KAAA9C,kBAAkB7B,WAAW2G,QAAQ,GAAClS,QAAAuL,WAAAvL,QAAAkQ,MAAAA,KAAAlQ,EAAA,EAAA;AACnCoQ,QAAAA,KAAAsB,UAAU,KAAExR;AAAYoQ,MAAAA;AAAAtQ,IAAA,EAAA,MAAAmC,OAAAC,IAAA,2BAAA,KActCkO,MAAA,oBAAA,OAAA,EAAU8B,KAAAA,WAAqB,UAAA,EAAK,CAAA,GAAApS,QAAAsQ,OAAAA,MAAAtQ,EAAA,EAAA;AAAAwQ,MAAAA;AAAAxQ,IAAAkO,EAAAA,MAAAA,aAAAlO,EAAA2R,EAAAA,MAAAA,cAAA3R,EAAAwR,EAAAA,MAAAA,cAAAxR,EAAAiD,EAAAA,MAAAA,YAAAjD,EAAAqO,EAAAA,MAAAA,cAAArO,EAAAuO,EAAAA,MAAAA,UAAAvO,EAAAwO,EAAAA,MAAAA,UAAAxO,UAAAoO,mBAAApO,EAAA,EAAA,MAAAmD,MAAAnD,EAAA,EAAA,MAAAyO,kBAAAzO,EAAA,EAAA,MAAA0O,WAAA1O,EAAA,EAAA,MAAA4O,cAAA5O,EAAA,EAAA,MAAA8O,UAAA9O,EAAA,EAAA,MAAAgP,QAAAhP,EAAA,EAAA,MAAAiP,SACpCuB,MAAC,oBAAA,YAAA,EACuBtC,iCACME,6CAChBC,YACJE,QACAC,QACJrL,IACYsL,gBACPC,SACDE,QAAAA,YACA+C,QAAAA,YACHW,KAAAA,SACGxD,QACA0C,QAAS,YACXxC,MACCC,iBAGT,GAAajP,QAAAkO,WAAAlO,QAAA2R,YAAA3R,QAAAwR,YAAAxR,QAAAiD,UAAAjD,QAAAqO,YAAArO,QAAAuO,QAAAvO,QAAAwO,QAAAxO,QAAAoO,iBAAApO,QAAAmD,IAAAnD,QAAAyO,gBAAAzO,QAAA0O,SAAA1O,QAAA4O,YAAA5O,QAAA8O,QAAA9O,QAAAgP,MAAAhP,QAAAiP,OAAAjP,QAAAwQ,OAAAA,MAAAxQ,EAAA,EAAA;AAAA2Q,MAAAA;AAAA3Q,IAAA,EAAA,MAAAmC,OAAAC,IAAA,2BAAA,KAEbuO,MAAA,oBAAA,OAAA,EAAU0B,KAAAA,YAAsB,UAAA,EAAK,CAAA,GAAArS,QAAA2Q,OAAAA,MAAA3Q,EAAA,EAAA;AAAA6Q,MAAAA;AAAA7Q,YAAAyS,eAAAzS,EAAA8S,EAAAA,MAAAA,mBAAA9S,EAAAmD,EAAAA,MAAAA,MAAAnD,EAAA,EAAA,MAAAyP,WAAAzP,EAAA,EAAA,MAAAyR,cAAAzR,EAAAgG,EAAAA,MAAAA,WAAAhG,UAAA4R,YAAA5R,EAAAiC,EAAAA,MAAAA,OAAAjC,EAAA,EAAA,MAAA6G,aAAA7G,EAAA,EAAA,MAAAwQ,OAAAxQ,EAAAkQ,EAAAA,MAAAA,MAAAlQ,UAAAoQ,MAAApQ,EAAA,EAAA,MAAA6R,WAxCvChB,MAAC,qBAAA,OAAA,EAAK,GACAhK,WACa4I,mBAAM,SACvB,kBACW,WAAAS,IACG,gBAAAE,IACN,WAAA,UACA,SAAA,QACJjN,IACQsO,YACHqB,0BACAL,SAAAA,aACAzM,SACC4L,UACL3P,KACA,MAAA,UACI4P,SAGTvB,UAAAA;AAAAA,IAAAA;AAAAA,IACAE;AAAAA,IAoBAG;AAAAA,EACF,EAAA,CAAA,GAAQ3Q,QAAAyS,aAAAzS,QAAA8S,iBAAA9S,QAAAmD,IAAAnD,QAAAyP,SAAAzP,QAAAyR,YAAAzR,QAAAgG,SAAAhG,QAAA4R,UAAA5R,QAAAiC,KAAAjC,QAAA6G,WAAA7G,QAAAwQ,KAAAxQ,QAAAkQ,IAAAlQ,QAAAoQ,IAAApQ,QAAA6R,SAAA7R,QAAA6Q,OAAAA,MAAA7Q,EAAA,EAAA;AAAA8Q,MAAAA;AAAA,SAAA9Q,EAAA4O,EAAAA,MAAAA,cAAA5O,UAAA6Q,OA1CVC,MAAC,oBAAA,QAAwBlC,EAAAA,iBAAAA,YACvBiC,UA0CF,IAAA,CAAA,GAAS7Q,QAAA4O,YAAA5O,QAAA6Q,KAAA7Q,QAAA8Q,OAAAA,MAAA9Q,EAAA,EAAA,GA3CT8Q;AA2CS,CAEZ;AAEDK,OAAO/F,cAAc;AC7Zd,SAAA2H,eAAAlQ,OAAA;AAAA7C,QAAAA,IAAAC,EAAA,CAAA,GACL;AAAA,IAAAgD;AAAAA,IAAA2O;AAAAA,IAAAC;AAAAA,EAAAA,IAAsChP;AAAK,MAAA/C,IAAAQ;AAAAN,IAAA4R,CAAAA,MAAAA,YAAA5R,SAAA6R,WAGlCvR,KAAA;AAAA,IAAAoN,SAAA;AAAA,IAAAkE;AAAAA,IAAAC;AAAAA,EAAAA,GAIN7R,OAAA4R,UAAA5R,OAAA6R,SAAA7R,OAAAM,MAAAA,KAAAN,EAAA,CAAA,GAAAF,KAJMQ;AADT,QAAA0S,eAAyClT;AAOxCa,MAAAA;AAAA,SAAAX,EAAAiD,CAAAA,MAAAA,YAAAjD,SAAAgT,gBAEMrS,KAAA,oBAAA,cAAA,UAAA,EAA+BqS,OAAAA,cAAe/P,SAAAA,CAAS,GAAyBjD,OAAAiD,UAAAjD,OAAAgT,cAAAhT,OAAAW,MAAAA,KAAAX,EAAA,CAAA,GAAhFW;AAAgF;AAGzFoS,eAAe3H,cAAc;ACiCtB,MAAM6H,aAAapO,WAAW,SAAAhC,OAAAiC,cAAA;AAAA9E,QAAAA,IAAAC,EAAA,EAAA,GAInC;AAAA,IAAAiT,uCAAApT;AAAAA,IAAAC,iBAAAoT;AAAAA,IAAAC,QAAAC;AAAAA,IAAAlQ;AAAAA,IAAAmQ,MAAAC;AAAAA,IAAA7E;AAAAA,IAAA8E;AAAAA,IAAAC,WAAAC;AAAAA,IAAAC,eAAAC;AAAAA,IAAAjF,QAAArO;AAAAA,IAAA4F;AAAAA,IAAA2N,eAAAC;AAAAA,IAAAC,iBAAAC;AAAAA,EAcInR,IAAAA,OAbqCoR,6BAAAnU,OAAkCI,cAAlCJ,IAS/BoU,oBAAA5T,OAAwBJ,cAAxBI,IAKV,CAAA4L,MAAAC,OAAA,IAAwB9L,WAAc,GACtC,CAAA8T,aAAAC,cAAA,IAAsC/T,aAAsC,GAC5E,CAAAgU,eAAAC,gBAAA,IAA0CjU,aAAuC;AAACM,MAAAA;AAAAX,IAAA,CAAA,MAAAmC,OAAAC,IAAA,2BAAA,KACbzB,KAAA,CAAA,GAAEX,OAAAW,MAAAA,KAAAX,EAAA,CAAA;AAAvE,QAAA,CAAAuU,cAAAC,oBAAA,IAA6CnU,SAAwBM,EAAE,GACvE8T,UAAgB/T,OAAgBwL,IAAI;AAAC,MAAAtL,IAAAO;AAAAnB,IAAAwT,CAAAA,MAAAA,UAAAxT,SAAAkM,QAG3BtL,KAAAA,MAAA;AACJ4S,cAAUtH,QAASuI,CAAAA,QAAO3T,WAC5B0S,OAAO;AAAA,EAERrS,GAAAA,KAAA,CAACqS,QAAQtH,IAAI,GAAClM,OAAAwT,QAAAxT,OAAAkM,MAAAlM,OAAAY,IAAAZ,OAAAmB,OAAAP,KAAAZ,EAAA,CAAA,GAAAmB,KAAAnB,EAAA,CAAA,IAJjBkB,UAAUN,IAIPO,EAAc;AAAC,MAAAC,IAAA0O;AAAA9P,IAAA0O,CAAAA,MAAAA,WAAA1O,SAAAkM,QAGR9K,KAAAA,MAAA;AACJsN,eAAYxC,CAAAA,QAAQuI,QAAO3T,WAC7B4N,QAAQ;AAAA,EAEToB,GAAAA,KAAA,CAACpB,SAASxC,IAAI,GAAClM,OAAA0O,SAAA1O,OAAAkM,MAAAlM,OAAAoB,IAAApB,OAAA8P,OAAA1O,KAAApB,EAAA,CAAA,GAAA8P,KAAA9P,EAAA,CAAA,IAJlBkB,UAAUE,IAIP0O,EAAe;AAAC,MAAAG,IAAAC;AAAAlQ,WAAAkM,QAET+D,KAAAA,MAAA;AACRwE,YAAO3T,UAAWoL;AAAAA,EAAI,GACrBgE,MAAChE,IAAI,GAAClM,OAAAkM,MAAAlM,QAAAiQ,IAAAjQ,QAAAkQ,OAAAD,KAAAjQ,EAAA,EAAA,GAAAkQ,KAAAlQ,EAAA,EAAA,IAFTkB,UAAU+O,IAEPC,EAAM;AAACE,MAAAA;AAAApQ,IAAA,EAAA,MAAAmC,OAAAC,IAAA,2BAAA,KAE4BgO,KAAAA,MAAA;AAC7BsE,YAAAA,OAAU,GACjBN,mBAAmB;AAAA,EAAA,GACpBpU,QAAAoQ,MAAAA,KAAApQ,EAAA,EAAA;AAHD,QAAA2U,oBAA0BvE;AAGpBE,MAAAA;AAAAtQ,YAAAkM,QAMJoE,MAAA7M,CAAA,UAAA;AACMyI,YAAMzI,MAAKsF,eAAgB;AAAA,EAAC,GACjC/I,QAAAkM,MAAAlM,QAAAsQ,OAAAA,MAAAtQ,EAAA,EAAA;AAHH,QAAA4U,kBAAwBtE;AAKvBE,MAAAA;AAAAxQ,IAAA,EAAA,MAAAmC,OAAAC,IAAA,2BAAA,KAEuCoO,MAAAT,CAAA,YAAA;AAGlCtM,QAAAA,QAAKC,QAAS,eAAeD,QAAKC,QAAS,WAAWD,QAAKC,QAAS,KAAG;AACzED,cAAKsF,kBACLoD,UAAY,GACZiI,eAAe,OAAO;AAAC;AAAA,IAAA;AAOrB3Q,QAAAA,QAAKC,QAAS,WAAS;AACzBD,cAAKsF,kBACLoD,UAAY,GACZiI,eAAe,MAAM;AAAC;AAAA,IAAA;AAAA,EAAA,GAIzBpU,QAAAwQ,OAAAA,MAAAxQ,EAAA,EAAA;AApBD,QAAA6U,sBAA4BrE;AAoBtBG,MAAAA;AAAA3Q,IAAAqU,EAAAA,MAAAA,iBAAArU,UAAAuU,gBAGJ5D,MAAAmE,CAAA,YAAA;AACE,UAAAvT,SAAekC,QAAKlC;AAEdA,QAAAA,kBAAMC,QAIR6S,EAAkB9S,kBAAAA,WAAW8S,iBAAiBA,cAAavW,SAAUyD,MAAM,KAAE;AAAA,iBAI5EhC,MAAYgV;AAAY,YACvBhT,WAAWhC,MAAMA,GAAEzB,SAAUyD,MAAM;AAAC;AAK1C4K,gBAAa;AAAA,IAAA;AAAA,EACdnM,GAAAA,QAAAqU,eAAArU,QAAAuU,cAAAvU,QAAA2Q,OAAAA,MAAA3Q,EAAA,EAAA;AAnBH,QAAA+U,yBAA+BpE;AAqB9BE,MAAAA;AAAA7Q,IAAAqU,EAAAA,MAAAA,iBAAArU,UAAAiU,8BAEoCpD,MAAAA,MAAA;AACnC1E,cAAa,GACT8H,CACAI,8BAAAA,iBAAeA,cAAazV,MAAO;AAAA,EACxCoB,GAAAA,QAAAqU,eAAArU,QAAAiU,4BAAAjU,QAAA6Q,OAAAA,MAAA7Q,EAAA,EAAA;AAJD,QAAAgV,mBAAyBnE;AAIsBC,MAAAA;AAAA9Q,YAAAuU,gBAG7CzD,MAAAmE,CAAA,YAAA;AACE,UAAAjF,WAAevM,QAAKyR;AAAc,QAE5B3T,oBAAMC,MAAgB;AAAA,iBAIvBP,QAAYsT;AAAY,YACvBhV,SAAOgC,YAAUhC,KAAEzB,SAAUyD,QAAM;AAAC;AAK1C4K,gBAAa;AAAA,IAAA;AAAA,EAAC,GACfnM,QAAAuU,cAAAvU,QAAA8Q,OAAAA,MAAA9Q,EAAA,EAAA;AAfH,QAAAmV,aAAmBrE;AAiBlBE,MAAAA;AAAAhR,IAAAqU,EAAAA,MAAAA,iBAAArU,UAAAiU,8BAEmCjD,MAAAA,MAAA;AAClC7E,cAAa,GACT8H,CACAI,8BAAAA,iBAAeA,cAAazV,MAAO;AAAA,EACxCoB,GAAAA,QAAAqU,eAAArU,QAAAiU,4BAAAjU,QAAAgR,OAAAA,MAAAhR,EAAA,EAAA;AAJD,QAAAoV,kBAAwBpE;AAIuBC,MAAAA;AAAAjR,IAAA,EAAA,MAAAmC,OAAAC,IAAA,2BAAA,KAEX6O,MAAAxP,CAAAA,UAClC+S,qBAAoBa,CAAUA,QAAAA,IAAGhN,OAAS9I,CAAAA,IAAE,CAAC,CAAC,GAAC,MAElCiV,qBAAoBc,CAAAA,UAAUD,MAAG1V,OAAA4V,SAAiBA,QAAQhW,IAAE,CAAC,IAC3ES,QAAAiR,OAAAA,MAAAjR,EAAA,EAAA;AAJD,QAAAwV,kBAAwBvE;AAIlBC,MAAAA;AAAAlR,IAAA,EAAA,MAAAqU,iBAAArU,EAAA,EAAA,MAAAmV,cAAAnV,EAAA,EAAA,MAAAoV,mBAAApV,EAAA+U,EAAAA,MAAAA,0BAAA/U,EAAAgV,EAAAA,MAAAA,oBAAAhV,EAAAmD,EAAAA,MAAAA,MAAAnD,EAAAuT,EAAAA,MAAAA,YAAAvT,UAAAmU,eAaOjD,MAAAqC,YAAYzI,aAAayI,UAXtC;AAAA,IAAA,mBACqBpQ;AAAAA,IAAE,eACJgS;AAAAA,IAAU,gBACTJ;AAAAA,IAAsB,UAC5BC;AAAAA,IAAgB,aACbI;AAAAA,IAAe,eACbf;AAAAA,IAAamB;AAAAA,IAAArB;AAAAA,EAAAA,CAKyB,GAACnU,QAAAqU,eAAArU,QAAAmV,YAAAnV,QAAAoV,iBAAApV,QAAA+U,wBAAA/U,QAAAgV,kBAAAhV,QAAAmD,IAAAnD,QAAAuT,UAAAvT,QAAAmU,aAAAnU,QAAAkR,OAAAA,MAAAlR,EAAA,EAAA;AAA1D,QAAAsT,OAAapC;AAA6CuE,MAAAA;AAAA,OAAA;AAAA,QAAA,CAGnDpC,YAAU;AAAE,YAAA;AAAWqC,YAAAA;AAAAA,IAAAA;AAWdC,UAAAA,OAAAtC,WAAUxQ,MAAAQ,YAAmB6I;AAAI0J,QAAAA;AAAA5V,MAAAqT,EAAAA,MAAAA,cAAArT,EAAA,EAAA,MAAA4U,mBAAA5U,EAAAmD,EAAAA,MAAAA,MAAAnD,EAAA,EAAA,MAAAkM,QAAAlM,UAAA2V,QAGxCC,OAAA9K,aAAauI,YAZpB;AAAA,MAAA,WACa;AAAA,MAAYlQ;AAAAA,MAAA,SAEZwR;AAAAA,MAAiB,WACfE;AAAAA,MAAmB,aACjBD;AAAAA,MAAe,iBAAA;AAAA,MAAA,iBAEb1I;AAAAA,MAAI,KACdoI;AAAAA,MAAgB,UACXqB;AAAAA,IAG6B,CAAA,GAAC3V,QAAAqT,YAAArT,QAAA4U,iBAAA5U,QAAAmD,IAAAnD,QAAAkM,MAAAlM,QAAA2V,MAAA3V,QAAA4V,QAAAA,OAAA5V,EAAA,EAAA,GAA5CyV,MAAOG;AAAAA,EAAAA;AAfT,QAAAxC,SAAeqC;AAgBoE,MAAAE,KAAAC;AAAA5V,YAAAqU,iBAKjFsB,MAAAA,MAAMtB,eACNuB,OAACvB,aAAa,GAACrU,QAAAqU,eAAArU,QAAA2V,KAAA3V,QAAA4V,QAAAD,MAAA3V,EAAA,EAAA,GAAA4V,MAAA5V,EAAA,EAAA,IAHjBqC,oBACEyC,cACA6Q,KACAC,GACF;AAAC,MAAAC,KAAAC;AAAA9V,YAAAkG,WAWO4P,MAAA5P,WAAa,CAAAlG,GAAAA,QAAAkG,SAAAlG,QAAA8V,OAAAA,MAAA9V,EAAA,EAAA;AAAA+V,MAAAA;AAAA/V,IAAAmT,EAAAA,MAAAA,8BAAAnT,EAAA0T,EAAAA,MAAAA,wBAAA1T,EAAA8T,EAAAA,MAAAA,4BAAA9T,UAAA4T,4BAAA5T,EAAA,EAAA,MAAAkU,qBAAAlU,EAAA,EAAA,MAAAgU,8BAAAhU,EAAA,EAAA,MAAA8V,OARZC,MAAA;AAAA,IAAAhW,iBACYoT;AAAAA,IAA0B6C,UACjC;AAAA,IAAMvC,WACLC;AAAAA,IAAoB/E,QACvBuF;AAAAA,IAAiBH,iBACRC;AAAAA,IAA0B5N,QACnC0N;AAAAA,IAAwBhF,QACxB8E;AAAAA,IAAwB,GAC5BkC;AAAAA,EAAAA,GACL9V,QAAAmT,4BAAAnT,QAAA0T,sBAAA1T,QAAA8T,0BAAA9T,QAAA4T,0BAAA5T,QAAAkU,mBAAAlU,QAAAgU,4BAAAhU,QAAA8V,KAAA9V,QAAA+V,OAAAA,MAAA/V,EAAA,EAAA,GAAA6V,MATME;AADT,QAAAE,eAAiDJ;AAoBhDK,MAAAA;AAAAlW,YAAAoT,UAII8C,MAAA9C,4CAAe,GAAApT,QAAAoT,QAAApT,QAAAkW,OAAAA,MAAAlW,EAAA,EAAA;AAAAmW,MAAAA;AAAAnW,SAAAA,EAAA,EAAA,MAAAsT,QAAAtT,EAAAkM,EAAAA,MAAAA,QAAAlM,EAAAiW,EAAAA,MAAAA,gBAAAjW,UAAAkW,OADlBC,MAAA,oBAAC,WAAgB,WAAA,uBAA0BF,GAAAA,cAAuB3C,SAAAA,MAAYpH,MAC3EgK,UACH,IAAA,CAAA,GAAUlW,QAAAsT,MAAAtT,QAAAkM,MAAAlM,QAAAiW,cAAAjW,QAAAkW,KAAAlW,QAAAmW,OAAAA,MAAAnW,EAAA,EAAA,GAFVmW;AAEU,CAEb;AAEDlD,WAAW7H,cAAc;AA/MY,SAAAsJ,QAAA7L,GAAA;AAAA,SAAA,CA4CjBA;AAAC;AC5Fd,MAAMuN,WAAWvR,WAAW,SAAAhC,OAAAZ,KAAA;AAAAjC,QAAAA,IAAAC,EAAA,EAAA;AAAAsL,MAAAA,WAAA8K,OAAAjQ,QAAAS,WAAA/G;AAAAE,WAAA6C,SAIjC;AAAA,IAAAyT,UAAAxW;AAAAA,IAAAyL;AAAAA,IAAA8K;AAAAA,IAAAjQ;AAAAA,IAAA,GAAAS;AAAAA,EAAAA,IAAmEhE,OAAK7C,OAAA6C,OAAA7C,OAAAuL,WAAAvL,OAAAqW,OAAArW,OAAAoG,QAAApG,OAAA6G,WAAA7G,OAAAF,OAAAyL,YAAAvL,EAAA,CAAA,GAAAqW,QAAArW,EAAA,CAAA,GAAAoG,SAAApG,EAAA,CAAA,GAAA6G,YAAA7G,EAAA,CAAA,GAAAF,KAAAE,EAAA,CAAA;AAAjEsW,QAAAA,WAAAxW,OAAgBI,cAAhBJ,IACPyW,CAAAA,SAAAC,UAAA,IAA8BnW,SAAkBgW,CAAoB,KAAA;AAAC,MAAA/V,IAAAK;AAAAX,WAAAqW,SAE3D/V,KAAAA,MAAA;AAAA,QAAA,CACH+V;AAAK,aACDG,aAAe;AAGxBC,UAAAA,UAAgBlT,WAAA,MAAA;AACdiT,mBAAe;AAAA,OACdH,KAAK;AAAC,WAAA,MAAA;AAGP1D,mBAAa8D,OAAO;AAAA,IAAC;AAAA,EAAA,GAEtB9V,MAAC0V,KAAK,GAACrW,OAAAqW,OAAArW,OAAAM,IAAAN,OAAAW,OAAAL,KAAAN,EAAA,CAAA,GAAAW,KAAAX,EAAA,CAAA,IAZVkB,UAAUZ,IAYPK,EAAO;AAACC,MAAAA;AAAAZ,IAAAuL,CAAAA,MAAAA,aAAAvL,UAAAoG,UAMIxF,KAAAwM,kBAAkB7B,WAAWmL,SAAA;AAAA,IAAAtQ;AAAAA,EAAAA,CAAiB,CAAC,GAACpG,OAAAuL,WAAAvL,QAAAoG,QAAApG,QAAAY,MAAAA,KAAAZ,EAAA,EAAA;AAC5C,QAAAmB,KAAAmV,WAAW,KAAEpW,QACdkB,KAAAmV,UAAU,KAAErW;AAAY4P,MAAAA;AAAA,SAAA9P,EAAAiC,EAAAA,MAAAA,OAAAjC,EAAA,EAAA,MAAA6G,aAAA7G,EAAAY,EAAAA,MAAAA,MAAAZ,EAAA,EAAA,MAAAmB,MAAAnB,UAAAoB,MALxC0O,KAAC,oBAAA,KACS,EAAA,WAAA,YACJjJ,GAAAA,WACO,WAAAjG,IACI,iBAAAO,IACD,gBAAAC,IACTa,IACL,CAAA,GAAAjC,QAAAiC,KAAAjC,QAAA6G,WAAA7G,QAAAY,IAAAZ,QAAAmB,IAAAnB,QAAAoB,IAAApB,QAAA8P,MAAAA,KAAA9P,EAAA,EAAA,GAPF8P;AAOE,CAEL;AAEDsG,SAAShL,cAAc;ACFhB,MAAMuL,eAAe9R,WAAW,SAAAhC,OAAAZ,KAAA;AAAAjC,QAAAA,IAAAC,EAAA,EAAA;AAAA,MAAAsL,WAAA1E,WAAA/G;AAAAE,WAAA6C,SAIrC;AAAA,IAAA0I;AAAAA,IAAAqL,MAAA9W;AAAAA,IAAA,GAAA+G;AAAAA,EAA4ChE,IAAAA,OAAK7C,OAAA6C,OAAA7C,OAAAuL,WAAAvL,OAAA6G,WAAA7G,OAAAF,OAAAyL,YAAAvL,EAAA,CAAA,GAAA6G,YAAA7G,EAAA,CAAA,GAAAF,KAAAE,EAAA,CAAA;AAA/B4W,QAAAA,OAAA9W,OAAQI,aAARJ;AAAQQ,MAAAA;AAAAN,IAAAuL,CAAAA,MAAAA,aAAAvL,SAAA4W,QAMXtW,KAAA8M,kBAAkB7B,WAAWsL,aAAA;AAAA,IAAAD;AAAAA,EAAAA,CAAmB,CAAC,GAAC5W,OAAAuL,WAAAvL,OAAA4W,MAAA5W,OAAAM,MAAAA,KAAAN,EAAA,CAAA;AAAAW,MAAAA;AAAA,SAAAX,EAAAiC,CAAAA,MAAAA,OAAAjC,SAAA6G,aAAA7G,EAAA,CAAA,MAAAM,MAH/DK,KAAC,oBAAA,UAAA,EACS,WAAA,mBACJkG,WACO,WAAAvG,IACN2B,KACL,GAAAjC,OAAAiC,KAAAjC,OAAA6G,WAAA7G,OAAAM,IAAAN,QAAAW,MAAAA,KAAAX,EAAA,EAAA,GALFW;AAKE,CAEL;AAEDgW,aAAavL,cAAc;AAMpB,MAAM0L,gBAAgBjS,WAAW,SAAAhC,OAAAZ,KAAA;AAAAjC,QAAAA,IAAAC,EAAA,EAAA;AAAA,MAAAsL,WAAA1E,WAAA/G;AAAAE,WAAA6C,SAItC;AAAA,IAAA0I;AAAAA,IAAAqL,MAAA9W;AAAAA,IAAA,GAAA+G;AAAAA,EAA4ChE,IAAAA,OAAK7C,OAAA6C,OAAA7C,OAAAuL,WAAAvL,OAAA6G,WAAA7G,OAAAF,OAAAyL,YAAAvL,EAAA,CAAA,GAAA6G,YAAA7G,EAAA,CAAA,GAAAF,KAAAE,EAAA,CAAA;AAA/B4W,QAAAA,OAAA9W,OAAQI,aAARJ;AAAQQ,MAAAA;AAAAN,IAAAuL,CAAAA,MAAAA,aAAAvL,SAAA4W,QAMXtW,KAAA8M,kBAAkB7B,WAAWwL,cAAA;AAAA,IAAAH;AAAAA,EAAAA,CAAoB,CAAC,GAAC5W,OAAAuL,WAAAvL,OAAA4W,MAAA5W,OAAAM,MAAAA,KAAAN,EAAA,CAAA;AAAAW,MAAAA;AAAA,SAAAX,EAAAiC,CAAAA,MAAAA,OAAAjC,SAAA6G,aAAA7G,EAAA,CAAA,MAAAM,MAHhEK,KAAC,oBAAA,UAAA,EACS,WAAA,oBACJkG,WACO,WAAAvG,IACN2B,KACL,GAAAjC,OAAAiC,KAAAjC,OAAA6G,WAAA7G,OAAAM,IAAAN,QAAAW,MAAAA,KAAAX,EAAA,EAAA,GALFW;AAKE,CAEL;AAEDmW,cAAc1L,cAAc;AAMrB,MAAM4L,kBAAkBnS,WAAW,SAAAhC,OAAAZ,KAAA;AAAAjC,QAAAA,IAAAC,EAAA,EAAA;AAAA,MAAAsL,WAAA1E,WAAA/G;AAAAE,WAAA6C,SAIxC;AAAA,IAAA0I;AAAAA,IAAAqL,MAAA9W;AAAAA,IAAA,GAAA+G;AAAAA,EAA4ChE,IAAAA,OAAK7C,OAAA6C,OAAA7C,OAAAuL,WAAAvL,OAAA6G,WAAA7G,OAAAF,OAAAyL,YAAAvL,EAAA,CAAA,GAAA6G,YAAA7G,EAAA,CAAA,GAAAF,KAAAE,EAAA,CAAA;AAA/B4W,QAAAA,OAAA9W,OAAQI,aAARJ;AAAQQ,MAAAA;AAAAN,IAAAuL,CAAAA,MAAAA,aAAAvL,SAAA4W,QAKXtW,KAAA8M,kBAAkB7B,WAAW0L,gBAAA;AAAA,IAAAL;AAAAA,EAAAA,CAAsB,CAAC,GAAC5W,OAAAuL,WAAAvL,OAAA4W,MAAA5W,OAAAM,MAAAA,KAAAN,EAAA,CAAA;AAAAW,MAAAA;AAAA,SAAAX,EAAAiC,CAAAA,MAAAA,OAAAjC,SAAA6G,aAAA7G,EAAA,CAAA,MAAAM,MAFlEK,KAAC,oBAAA,YACKkG,GAAAA,WACO,WAAAvG,IACN2B,IACL,CAAA,GAAAjC,OAAAiC,KAAAjC,OAAA6G,WAAA7G,OAAAM,IAAAN,QAAAW,MAAAA,KAAAX,EAAA,EAAA,GAJFW;AAIE,CAEL;AAEDqW,gBAAgB5L,cAAc;AAMvB,MAAM8L,eAAerS,WAAW,SAAAhC,OAAAZ,KAAA;AAAAjC,QAAAA,IAAAC,EAAA,EAAA;AAAA,MAAAsL,WAAA1E,WAAA/G;AAAAE,WAAA6C,SAIrC;AAAA,IAAA0I;AAAAA,IAAAqL,MAAA9W;AAAAA,IAAA,GAAA+G;AAAAA,EAA4ChE,IAAAA,OAAK7C,OAAA6C,OAAA7C,OAAAuL,WAAAvL,OAAA6G,WAAA7G,OAAAF,OAAAyL,YAAAvL,EAAA,CAAA,GAAA6G,YAAA7G,EAAA,CAAA,GAAAF,KAAAE,EAAA,CAAA;AAA/B4W,QAAAA,OAAA9W,OAAQI,aAARJ;AAAQQ,MAAAA;AAAAN,IAAAuL,CAAAA,MAAAA,aAAAvL,SAAA4W,QAMXtW,KAAA8M,kBAAkB7B,WAAW4L,aAAA;AAAA,IAAAP;AAAAA,EAAAA,CAAmB,CAAC,GAAC5W,OAAAuL,WAAAvL,OAAA4W,MAAA5W,OAAAM,MAAAA,KAAAN,EAAA,CAAA;AAAAW,MAAAA;AAAA,SAAAX,EAAAiC,CAAAA,MAAAA,OAAAjC,SAAA6G,aAAA7G,EAAA,CAAA,MAAAM,MAH/DK,KAAC,oBAAA,YAEKkG,GAAAA,WACO,WAAAvG,IACN2B,IACL,CAAA,GAAAjC,OAAAiC,KAAAjC,OAAA6G,WAAA7G,OAAAM,IAAAN,QAAAW,MAAAA,KAAAX,EAAA,EAAA,GALFW;AAKE,CAEL;AAEDuW,aAAa9L,cAAc;AChHpB,MAAMgM,WAAWvS,WAAW,SAAAhC,OAAAZ,KAAA;AAAAjC,QAAAA,IAAAC,EAAA,CAAA;AAAA,MAAAoX,MAAAxQ;AAAA7G,WAAA6C,SAIjC;AAAA,IAAAwU;AAAAA,IAAA,GAAAxQ;AAAAA,EAAAA,IAA6BhE,OAAK7C,OAAA6C,OAAA7C,OAAAqX,MAAArX,OAAA6G,cAAAwQ,OAAArX,EAAA,CAAA,GAAA6G,YAAA7G,EAAA,CAAA;AASpB,QAAAF,KAAA+C,MAAK7E,aAAAkC,SAAuB,IAAO2C,MAAK7E;AAASsC,MAAAA;AAAA,SAAAN,SAAAqX,QAAArX,EAAA6C,CAAAA,MAAAA,MAAAI,YAAAjD,EAAAiC,CAAAA,MAAAA,OAAAjC,EAAA,CAAA,MAAA6G,aAAA7G,SAAAF,MAN7DQ,yBAAC,KACS,EAAA,WAAA,YACJuG,GAAAA,WACEwQ,MACDpV,KACA,MAAA,YACK,UAAAnC,IAET+C,UAAKI,MAAAA,SACR,CAAA,GAAMjD,OAAAqX,MAAArX,EAAA,CAAA,IAAA6C,MAAAI,UAAAjD,OAAAiC,KAAAjC,OAAA6G,WAAA7G,OAAAF,IAAAE,OAAAM,MAAAA,KAAAN,EAAA,CAAA,GATNM;AASM,CAET;AAED8W,SAAShM,cAAc;ACVvB,MAAMkM,QAAQ;AAAA,EACZ7U,OAAO;AAAA,EACP8U,SAAS;AAAA,EACTC,SAAS;AAAA,EACT5U,MAAM;AACR,GAEM6U,mBAAmB;AAAA,EACvBhV,OAAO;AAAA,EACP8U,SAAS;AAAA,EACTC,SAAS;AAAA,EACT5U,MAAM;AACR,GAEM8U,cAAc;AAAA,EAClBjV,OAAO;AAAA,EACP8U,SAAS;AAAA,EACTC,SAAS;AAAA,EACT5U,MAAM;AACR,GAIM+U,+BAA+B,MAAO,KAAK,KAAK,KAAK;AASpD,SAAAC,MAAA/U,OAAA;AAAA7C,QAAAA,IAAAC,EAAA,EAAA;AAAA,MAAA4X,UAAAC,aAAAC,UAAArJ,SAAA7H,WAAAmR,QAAAlY,IAAAmY,OAAAC;AAAAlY,WAAA6C,SAML;AAAA,IAAAgV;AAAAA,IAAAC;AAAAA,IAAAC;AAAAA,IAAArJ;AAAAA,IAAAtI,QAAAtG;AAAAA,IAAAmY;AAAAA,IAAAD;AAAAA,IAAAE;AAAAA,IAAA,GAAArR;AAAAA,EAAAA,IAUIhE,OAAK7C,OAAA6C,OAAA7C,OAAA6X,UAAA7X,OAAA8X,aAAA9X,OAAA+X,UAAA/X,OAAA0O,SAAA1O,OAAA6G,WAAA7G,OAAAgY,QAAAhY,OAAAF,IAAAE,OAAAiY,OAAAjY,OAAAkY,cAAAL,WAAA7X,EAAA,CAAA,GAAA8X,cAAA9X,EAAA,CAAA,GAAA+X,WAAA/X,EAAA,CAAA,GAAA0O,UAAA1O,EAAA,CAAA,GAAA6G,YAAA7G,EAAA,CAAA,GAAAgY,SAAAhY,EAAA,CAAA,GAAAF,KAAAE,EAAA,CAAA,GAAAiY,QAAAjY,EAAA,CAAA,GAAAkY,YAAAlY,EAAA,CAAA;AALPoG,QAAAA,SAAAtG,OAAUI,aAAVJ,IAOFqY,WAAiBH,SAAMP,iBAAoBO,MAAM,IAAI,WACrDI,aAAmBJ,SAAMN,YAAeM,MAAM,IAAI,WAClDK,OAAaL,SAAMV,MAASU,MAAM,IAAI,UAItCM,iBAF6BnG,wBAAwB,IAES,IAAA;AAAA7R,MAAAA;AAAAN,YAAAsY,kBAC3ChY,KAAAgY,iBAAc;AAAA,IAAAha,MAAU;AAAA,IAAQga;AAAAA,IAAAC,QAAA;AAAA,EAAA,IAAA;AAAA,IAAAR,UAAA;AAAA,EAAA,GAA+C/X,QAAAsY,gBAAAtY,QAAAM,MAAAA,KAAAN,EAAA,EAAA;AAAlG,QAAAwY,aAAmBlY,IAEnBmY,cAAoBV,YAAYW,SAASX,QAAQ,KAAKA,WAAQJ;AAA+BhX,MAAAA;AAAAX,IAAA,EAAA,MAAAmC,OAAAC,IAAA,2BAAA,KACxDzB,KAAA,CAAC,UAAU,SAAS,GAACX,QAAAW,MAAAA,KAAAX,EAAA,EAAA;AAA1D,QAAA2Y,UAAqChY;AAAqBC,MAAAA;AAAAZ,IAAA,EAAA,MAAAmC,OAAAC,IAAA,2BAAA,KACrBxB,KAAA,CAAC,WAAW,SAAS,GAACZ,QAAAY,MAAAA,KAAAZ,EAAA,EAAA;AAA3D,QAAA0R,UAAqC9Q;AAAsBO,MAAAA;AAAAnB,IAAA,EAAA,MAAAmC,OAAAC,IAAA,2BAAA,KACzBjB,KAAA,CAAC,UAAU,UAAU,GAACnB,QAAAmB,MAAAA,KAAAnB,EAAA,EAAA;AAAxD,QAAA4Y,OAAkCzX;AAAsBC,MAAAA;AAAApB,IAAA,EAAA,MAAAmC,OAAAC,IAAA,2BAAA,KAKzChB,KAAAyX,MAAM,GAAC7Y,QAAAoB,MAAAA,KAAApB,EAAA,EAAA;AAIC8P,QAAAA,KAAA2I,cAAc,KAAEvY;AAAY+P,MAAAA;AAAAjQ,YAAAiY,SAiBxChI,KAAAgI,SACE,oBAAA,MAAA,EAAW,MAAA,GAAU,QAAA,2BAEtB,GACDjY,QAAAiY,OAAAjY,QAAAiQ,MAAAA,KAAAjQ,EAAA,EAAA;AAAAkQ,MAAAA;AAAAlQ,IAAA8X,EAAAA,MAAAA,eAAA9X,UAAAwY,cACAtI,KAAA4H,eACE,oBAAA,YAAA,EAAW,OAAI,IAAQ,MAAA,GAAalN,UAAAA,SAAqB4N,YACvDV,uBACH,GACD9X,QAAA8X,aAAA9X,QAAAwY,YAAAxY,QAAAkQ,MAAAA,KAAAlQ,EAAA,EAAA;AAAAoQ,MAAAA;AAAApQ,IAAAiQ,EAAAA,MAAAA,MAAAjQ,UAAAkQ,MAXLE,KAAC,oBAAA,QAAW,MAAC,GAAY,WAAA,QAAgB,YACvC,UAAC,qBAAA,OAAA,EAAa,OAAC,GACZH,UAAAA;AAAAA,IAAAA;AAAAA,IAKAC;AAAAA,EAAAA,EAKH,CAAA,EACF,CAAA,GAAOlQ,QAAAiQ,IAAAjQ,QAAAkQ,IAAAlQ,QAAAoQ,MAAAA,KAAApQ,EAAA,EAAA;AAAAsQ,MAAAA;AAAAtQ,IAAAoY,EAAAA,MAAAA,cAAApY,UAAA6X,YAAA7X,EAAA,EAAA,MAAA0O,WAEN4B,MAAAuH,YACE,oBAAA,KAAA,EAAa,SAAA,GACZ,UAAC,oBAAA,QAAA,EACI,IAAA,UACGnH,MAAAA,WACD,MAAA,SACI,YACH0H,MAAS,YACN1J,kBACF,OAAA;AAAA,IAAAoK,eAAgB;AAAA,EAAA,GAAM,GAEjC,GACD9Y,QAAAoY,YAAApY,QAAA6X,UAAA7X,QAAA0O,SAAA1O,QAAAsQ,OAAAA,MAAAtQ,EAAA,EAAA;AAAAwQ,MAAAA;AAAAxQ,IAAAsQ,EAAAA,MAAAA,OAAAtQ,UAAAoQ,MAAApQ,EAAA,EAAA,MAAAwY,cA5BHhI,MAAC,qBAAA,YAAA,EAAiB,OAAA,cAAuB5F,UAAAA,SAAqB4N,YAC5DpI,UAAAA;AAAAA,IAAAA;AAAAA,IAeCE;AAAAA,EAAAA,GAaH,GAAatQ,QAAAsQ,KAAAtQ,QAAAoQ,IAAApQ,QAAAwY,YAAAxY,QAAAwQ,OAAAA,MAAAxQ,EAAA,EAAA;AAAA2Q,MAAAA;AAAA3Q,IAAA,EAAA,MAAAmY,YAAAnY,EAAA,EAAA,MAAA+X,YAAA/X,EAAA,EAAA,MAAAyY,eAAAzY,EAAA0O,EAAAA,MAAAA,WAAA1O,EAAAoG,EAAAA,MAAAA,UAAApG,EAAAwY,EAAAA,MAAAA,cAAAxY,EAAAkY,EAAAA,MAAAA,aAAAlY,UAAAsY,kBACZ3H,MAAA8H,oCACE,WAAqB,EAAA,WAAAM,gBAA6BnO,GAAAA,UAAMA,SAAe4N,YACtE,UAAA;AAAA,IAAA,oBAAC,QAAgB,WAAAQ,oBAA6Bb,GAAAA,MAAO,UAAW/R,QAAM;AAAA,wBACrE,YAOY,EAAA,WAAA6S,2BAELd,MAAAA,UACG,SAAA;AAAA,MAAAe,QAAA;AAAA,OACA,SAAA;AAAA,MAAAA,QAAA;AAAA,OACG,YAAA;AAAA,MAAA7C,OAAQiC;AAAAA,MAAcP,UAAYA,WAAgB;AAAA,MAAAoB,MAAQ;AAAA,IACjDzK,GAAAA,qBAAAA,QALhB,GAAA,YAAYwJ,SAAS,EAO9B;AAAA,EAAA,EAAA,CAAA,GACDlY,QAAAmY,UAAAnY,QAAA+X,UAAA/X,QAAAyY,aAAAzY,QAAA0O,SAAA1O,QAAAoG,QAAApG,QAAAwY,YAAAxY,QAAAkY,WAAAlY,QAAAsY,gBAAAtY,QAAA2Q,OAAAA,MAAA3Q,EAAA,EAAA;AAAA6Q,MAAAA;AAAA,SAAA7Q,EAAA,EAAA,MAAAmY,YAAAnY,EAAAoG,EAAAA,MAAAA,UAAApG,UAAA6G,aAAA7G,EAAA,EAAA,MAAAqY,QAAArY,EAAAwQ,EAAAA,MAAAA,OAAAxQ,EAAA2Q,EAAAA,MAAAA,OAAA3Q,EAAA,EAAA,MAAA8P,MAAA9P,EAAAwY,EAAAA,MAAAA,cAAAxY,UAAAsY,kBArEHzH,MAAA,qBAAC,YACI,EAAA,IAAA,MACQ,WAAAzP,IACH,WAAA,SACFiX,MAAI,GACNxR,WACe,qBAAAiJ,IACXwI,QAAa,gBACblS,QACA,QAAA,GACF+R,MAAAA,UACC,QAAA,YACGiB,UAAAA,WACDT,SACAjH,SACHkH,MACMJ,YACN,OAAA,QACG,UAAA,YAEThI,UAAAA;AAAAA,IAAAA;AAAAA,IA8BCG;AAAAA,EAAAA,GAoBH,GAAa3Q,QAAAmY,UAAAnY,QAAAoG,QAAApG,QAAA6G,WAAA7G,QAAAqY,MAAArY,QAAAwQ,KAAAxQ,QAAA2Q,KAAA3Q,QAAA8P,IAAA9P,QAAAwY,YAAAxY,QAAAsY,gBAAAtY,QAAA6Q,OAAAA,MAAA7Q,EAAA,EAAA,GAtEb6Q;AAsEa;AAIjB+G,MAAMxM,cAAc;AAEpB,MAAMgO,YAAY;AAAA,EAChBT,SAAS;AAAA,IAACU,GAAG;AAAA,IAAIC,OAAO;AAAA,IAAKC,QAAQ;AAAA,EAAC;AAAA,EACtCvO,QAAQ;AAAA,IAACwO,SAAS;AAAA,EAAC;AAAA,EACnBjD,SAAU+B,oBACHA,iBAEE;AAAA,IACLkB,SAAS;AAAA,IACThB,YAAY;AAAA,MACViB,MAAM;AAAA,MACNC,iBAAiBpB,iBAAiB;AAAA,MAClCP,UAAUO,iBAAiB;AAAA,IAAA;AAAA,EAC7B,IAR0B;AAAA,IAACkB,SAAS;AAAA,EAAC;AAAA,EAWzCG,SAAS;AAAA,IACPN,GAAG;AAAA,IACHC,OAAO;AAAA,EACT;AAAA,EACAM,UAAU;AAAA,IACRL,QAAQ;AAAA,IACRD,OAAO;AAAA,EAAA;AAEX,GAGM1O,UAAU;AAAA,EACd+N,SAAS;AAAA,IACPkB,YAAY;AAAA,EACd;AAAA,EACA7O,QAAQ;AAAA,IACNwO,SAAS;AAAA,EACX;AAAA,EACAjD,SAAS;AAAA,IACPiD,SAAS;AAAA,EAAA;AAEb,GAEMM,aAAaC,OAAOC,OAAOC,IAAI,GAC/BC,aAAaH,OAAOC,OAAOG,IAAI,GAC/BC,aAAaL,OAAOC,OAAOK,IAAI,GAC/BC,YAAYP,OAAOC,OAAOO,GAAG;AC7M5B,SAAAC,aAAA;AACEC,SAAAA,qBAAAC,WAAAhG,SAAAiG,MAIP;AAAC;AALI,SAAAA,SAAA;AAAA,SAAA;AAAA;AAAA,SAAAjG,UAAA;AAAA,SAAA;AAAA;AAQP,MAAMgG,YAAYA,MAAM,MAAM;AAAC,GCXlBE,eAAenN,0BAC1B,4BACA,IACF;ACUO,SAAAoN,WAAAhY,OAAA;AAAA7C,QAAAA,IAAAC,EAAA,EAAA,GACL;AAAA,IAAAgD;AAAAA,IAAA+C,SAAAlG;AAAAA,IAAAgb;AAAAA,IAAAC;AAAAA,IAAArP,KAAApL;AAAAA,EAAA,IAA6DuC,OAA5CmD,UAAAlG,OAAWI,aAAXJ,IAAiC4L,MAAApL,OAAOJ,aAAPI,IAClD;AAAA,IAAAiZ;AAAAA,MAAiBhK,SAAS;AAAC5O,MAAAA;AAAAX,IAAA,CAAA,MAAAmC,OAAAC,IAAA,2BAAA,KAKZzB,KAAAqa,WAAW,GAAChb,OAAAW,MAAAA,KAAAX,EAAA,CAAA;AAAAY,MAAAA;AAAAZ,WAAAuZ,UAOhB3Y,KAAA;AAAA,IAAA2Y;AAAAA,EAAA,GAAQvZ,OAAAuZ,QAAAvZ,OAAAY,MAAAA,KAAAZ,EAAA,CAAA;AAAAmB,MAAAA;AAAA,SAAAnB,SAAAiD,YAAAjD,EAAA0L,CAAAA,MAAAA,OAAA1L,EAAAgG,CAAAA,MAAAA,WAAAhG,EAAA,CAAA,MAAA8a,YAAA9a,SAAA+a,YAAA/a,EAAA,CAAA,MAAAY,MATjBO,KAAC,oBAAA,MAAA,EACI,IAAA,MACQ,WAAAR,IACH,WAAA,iBACCqF,SACC8U,UACAC,UACLrP,KACI,YACF,OAAA9K,IAEC,SACV,CAAA,GAAOZ,OAAAiD,UAAAjD,OAAA0L,KAAA1L,OAAAgG,SAAAhG,OAAA8a,UAAA9a,OAAA+a,UAAA/a,OAAAY,IAAAZ,OAAAmB,MAAAA,KAAAnB,EAAA,CAAA,GAZPmB;AAYO;AAIX0Z,WAAWzP,cAAc;ACrCzB,IAAI6P,UAAU;AAGP,SAASC,kBAA0B;AACxC,SAAOC,OAAOF,SAAS;AACzB;ACwBO,SAAAG,cAAAvY,OAAA;AAAA7C,QAAAA,IAAAC,EAAA,EAAA,GACL;AAAA,IAAAgD;AAAAA,IAAA+C;AAAAA,IAAA8U;AAAAA,IAAAC;AAAAA,IAAArP;AAAAA,IAAAmG,SAAA/R;AAAAA,EAAkE+C,IAAAA,OAAfgP,UAAA/R,OAAWI,aAAXJ;AAAWQ,MAAAA;AAAAN,IAAA,CAAA,MAAAmC,OAAAC,IAAA,2BAAA,KACf9B,KAAA,CAAA,GAAEN,OAAAM,MAAAA,KAAAN,EAAA,CAAA;AAAjD,QAAA,CAAAwC,OAAA6Y,QAAA,IAA0Bhb,SAAqBC,EAAE,GACjDgb,UAAgBd,WAAW;AAAC,MAAA7Z,IAAAC;AAAAZ,IAAA,CAAA,MAAAmC,OAAAC,IAAA,2BAAA,KAkDnBxB,KAAA;AAAA,IAAA8M,SAAA;AAAA,IAAAhO,MA/CP6b,CAAA,WAAA;AACE,YAAApY,KAAWoY,OAAMpY,MAAO+X,gBACxBnD,GAAAA,WAAiBwD,OAAMxD,YAAiB;AAExCyD,aAAAA,gBAAA,MAAA;AACEH,iBAAQI,CAAA,cAAA;AAAA,cAOF1D,aAAiB;AAAA,mBACZ0D,UAAS9b,OAAAkZ,CAAmBA,WAAAA,OAAK1V,OAAQA,EAAE;AAQpD,gBAAAuY,UAAAA,MACEF,gBACEH,MAAAA,SAAQM,CAAAA,iBAAmBA,aAAYhc,OAAAic,CAAmB/C,YAAAA,QAAK1V,OAAQA,EAAE,CAAC,CAC5E;AASGsY,iBAAAA,CAAAA,GAAAA,UAAS9b,OAAAkc,aAAmBhD,QAAK1V,OAAQA,EAAE,GAAC;AAAA,YAAAuY;AAAAA,YAAAvY;AAAAA,YAAA+U,WAIlC4D,KAAAC,IAAS;AAAA,YAACR,QAAA;AAAA,cAAA,GACTA;AAAAA,cAAMxD;AAAAA,YAAAA;AAAAA,UAAA,CAAA;AAAA,QAAA,CAGvB;AAAA,MACF,CAAA,GAEM5U;AAAAA,IAAAA;AAAAA,EAAE,GAGgBnD,OAAAY,MAAAA,KAAAZ,EAAA,CAAA,GAA3BW,KAAOC;AAhDT,QAAA0C,QAAiC3C;AAiD3BQ,MAAAA;AAAAnB,IAAA0L,CAAAA,MAAAA,OAAA1L,EAAAsb,CAAAA,MAAAA,WAAAtb,EAAAgG,CAAAA,MAAAA,WAAAhG,SAAA8a,YAAA9a,EAAA,CAAA,MAAA+a,YAAA/a,EAAA,CAAA,MAAAwC,SAAAxC,EAAA,CAAA,MAAA6R,WAKD1Q,KAAAma,WACC,oBAAC,iBAAuBzJ,SACtB,UAAA,oBAAC,cAAoB7L,SAAmB8U,UAAoBC,UAAerP,KACzE,UAAA,oBAAC,mBAAyB,SAAA,IAAY,MAAA,aACnClJ,gBAAK1F,IAAA4X,KAWL,GACH,EACF,CAAA,EACF,CAAA,GACD1U,OAAA0L,KAAA1L,OAAAsb,SAAAtb,OAAAgG,SAAAhG,OAAA8a,UAAA9a,OAAA+a,UAAA/a,OAAAwC,OAAAxC,OAAA6R,SAAA7R,OAAAmB,MAAAA,KAAAnB,EAAA,CAAA;AAAAoB,MAAAA;AAAA,SAAApB,EAAAiD,EAAAA,MAAAA,YAAAjD,UAAAmB,MArBHC,KAAA,qBAAA,aAAA,UAAA,EAA8BkC,OAC3BL,UAAAA;AAAAA,IAAAA;AAAAA,IACA9B;AAAAA,EAAAA,EAoBH,CAAA,GAAwBnB,QAAAiD,UAAAjD,QAAAmB,IAAAnB,QAAAoB,MAAAA,KAAApB,EAAA,EAAA,GAtBxBoB;AAsBwB;AA/ErB,SAAAsT,MAAA5U,IAAA;AA+DmB,QAAA;AAAA,IAAA4b,SAAAM;AAAAA,IAAA7Y,IAAA8Y;AAAAA,IAAAV,QAAAW;AAAAA,IAAAhE;AAAAA,EAAAA,IAAApY;AACV,SAAA,oBAAC,SAEW,UAAAyb,SAAM1D,UACH,aAAA0D,SAAMzD,aACV4D,SAAM,WACP,QAAAH,SAAMvD,QACP,OAAAuD,SAAMtD,OACH,UAAAsD,SAAMxD,UACLG,aAPL,IAQN;AAAA;AAUlBkD,cAAchQ,cAAc;ACvGrB,SAAA+Q,WAAA;AACL7Y,QAAAA,QAAcsK,WAAAgN,YAAuB;AAAC,MAAA,CAEjCtX;AAAK8Y,UAAAA,IAAAA,MACQ,mCAAmC;AAAA,MAMjD,CAACC,SAAS/Y,KAAK,KAAKA,MAAKoK,YAAgB;AAAA0O,UAAAA,IAAAA,MAC3B,iDAAiD;AAG5D9Y,SAAAA;AAAK;ACrBEgZ,SAAAA,qBACd9Z,OACA+Z,cACA7T,gBACoB;AACpB,QAAM8T,MAAMD,aAAa5X,QAAQ+D,cAAc,GACzC2M,MAAMkH,aAAapP,MAAM,GAAGqP,GAAG,GAC/B1P,MAAMuI,IAAIrW;AAEhB,WAASF,IAAIgO,MAAM,GAAGhO,KAAK,GAAGA,KAAK,GAAG;AACpC,UAAM2d,UAAUpH,IAAIvW,CAAC,EAAEb,aAAa,eAAe;AAEnD,QAAI,CAACwe;AACH;AAGIC,UAAAA,WAAWD,QAAQE,MAAM,GAAG;AAElCD,aAASE,IAAI;AAEb,UAAMC,IAAc,CAAE;AAEtB,QAAI1U,WAAW;AAEf,aAAS2U,IAAI,GAAGA,IAAIJ,SAAS1d,QAAQ8d,KAAK,GAAG;AACzCpd,QAAAA,KAAKgd,SAASI,CAAC,CAAC;AAEZC,YAAAA,IAAIF,EAAEG,KAAK,GAAG;AAEpB,UAAI,CAACxa,MAAMua,CAAC,GAAG5U,UAAU;AACZ,mBAAA;AACX;AAAA,MAAA;AAAA,IACF;AAGEA,QAAAA;AACF,aAAOkN,IAAIvW,CAAC;AAAA,EAAA;AAIT,SAAA;AACT;AAEgBme,SAAAA,qBACdza,OACA+Z,cACA7T,gBACoB;AACd8T,QAAAA,MAAMD,aAAa5X,QAAQ+D,cAAc,GACzC2M,MAAMkH,aAAapP,MAAMqP,GAAG,GAC5B1P,MAAMyP,aAAavd;AAEzB,WAASF,IAAI,GAAGA,IAAIgO,KAAKhO,KAAK,GAAG;AAC3B,QAAA,CAACuW,IAAIvW,CAAC;AACR;AAGF,UAAM2d,UAAUpH,IAAIvW,CAAC,EAAEb,aAAa,eAAe;AAEnD,QAAI,CAACwe;AACH;AAGIC,UAAAA,WAAWD,QAAQE,MAAM,GAAG;AAElCD,aAASE,IAAI;AAEb,UAAMC,IAAc,CAAE;AAEtB,QAAI1U,WAAW;AAEf,aAAS2U,IAAI,GAAGA,IAAIJ,SAAS1d,QAAQ8d,KAAK,GAAG;AACzCpd,QAAAA,KAAKgd,SAASI,CAAC,CAAC;AAEZC,YAAAA,IAAIF,EAAEG,KAAK,GAAG;AAEpB,UAAI,CAACxa,MAAMua,CAAC,GAAG5U,UAAU;AACZ,mBAAA;AACX;AAAA,MAAA;AAAA,IACF;AAGEA,QAAAA;AACF,aAAOkN,IAAIvW,CAAC;AAAA,EAAA;AAIT,SAAA;AACT;AAEO,SAASoe,kBAAkB3d,IAAuB;AAKvD,MAJIA,GAAGtB,aAAa,MAAM,MAAM,cAC9BsB,GAAGX,MAAM,GAGPW,GAAGtB,aAAa,MAAM,MAAM,QAAQ;AACtC,UAAMkf,aAAa5d,GAAG4d;AAElBA,kBAAcA,sBAAsBxU,eACtCwU,WAAWve,MAAM;AAAA,EAAA;AAGvB;AClGawe,MAAAA,cAAc3P,0BACzB,2BACA,IACF,GC2Ba4P,OAAOC,KAClBzY,WAAW,SAAAhC,OAAAiC,cAAA;AAAA9E,QAAAA,IAAAC,EAAA,EAAA;AAAAgD,MAAAA,UAAAyI,KAAAhG,SAAAmB,WAAA/G;AAAAE,WAAA6C,SAIT;AAAA,IAAAI;AAAAA,IAAAyI;AAAAA,IAAAG,OAAA/L;AAAAA,IAAA4F;AAAAA,IAAA,GAAAmB;AAAAA,EAAAA,IAA0DhE,OAAK7C,OAAA6C,OAAA7C,OAAAiD,UAAAjD,OAAA0L,KAAA1L,OAAA0F,SAAA1F,OAAA6G,WAAA7G,OAAAF,OAAAmD,WAAAjD,EAAA,CAAA,GAAA0L,MAAA1L,EAAA,CAAA,GAAA0F,UAAA1F,EAAA,CAAA,GAAA6G,YAAA7G,EAAA,CAAA,GAAAF,KAAAE,EAAA,CAAA;AAAzC,QAAA6L,QAAA/L,OAASI,aAATJ,IACtBmC,MAAYvB,OAAA,IAAkC,GAC9C,CAAAgI,gBAAA6U,iBAAA,IAA4Cld,aAAiC,GAC7EkS,oBAA0B7R,OAAOgI,cAAc;AAAC,MAAApI,IAAAK;AAAAX,IAAA,CAAA,MAAAmC,OAAAC,IAAA,2BAAA,KACXzB,KAAA,CAAEX,GAAAA,OAAAW,MAAAA,KAAAX,EAAA,CAAA,GAAAM,KAAFK;AAArC,QAAA6c,OAAuBld;AAAqBM,MAAAA;AAAAZ,IAAA,CAAA,MAAAmC,OAAAC,IAAA,2BAAA,KACoBxB,KAAA,CAAA,GAAEZ,OAAAY,MAAAA,KAAAZ,EAAA,CAAA;AAAlE,QAAA,CAAAuc,cAAAkB,eAAA,IAAwCpd,SAAwBO,EAAE;AAACO,MAAAA;AAAAnB,IAAA,CAAA,MAAAmC,OAAAC,IAAA,2BAAA,KACrBjB,KAAA,CAAA,GAAEnB,OAAAmB,MAAAA,KAAAnB,EAAA,CAAA;AAAhD,QAAA,CAAAwC,OAAA6Y,QAAA,IAA0Bhb,SAAoBc,EAAE,GAChDuc,WAAiBhd,OAAO8B,KAAK;AAACpB,MAAAA;AAAApB,IAAA,CAAA,MAAAmC,OAAAC,IAAA,2BAAA,KAI5BhB,KAAAA,MAAMa,IAAGnB,SAAQd,OAAAoB,MAAAA,KAAApB,EAAA,CAAA,GAFnBqC,oBACEyC,cACA1D,EACF;AAAC,MAAA0O,IAAAG;AAAAjQ,YAAA0I,kBAESoH,KAAAA,MAAA;AACRyC,sBAAiBzR,UAAW4H;AAAAA,EAAc,GACzCuH,MAACvH,cAAc,GAAC1I,QAAA0I,gBAAA1I,QAAA8P,IAAA9P,QAAAiQ,OAAAH,KAAA9P,EAAA,EAAA,GAAAiQ,KAAAjQ,EAAA,EAAA,IAFnBkB,UAAU4O,IAEPG,EAAgB;AAAC,MAAAC,IAAAE;AAAApQ,YAAAwC,SAEV0N,KAAAA,MAAA;AACRwN,aAAQ5c,UAAW0B;AAAAA,EAAK,GACvB4N,MAAC5N,KAAK,GAACxC,QAAAwC,OAAAxC,QAAAkQ,IAAAlQ,QAAAoQ,OAAAF,KAAAlQ,EAAA,EAAA,GAAAoQ,KAAApQ,EAAA,EAAA,IAFVkB,UAAUgP,IAEPE,EAAO;AAACE,MAAAA;AAAAtQ,IAAA,EAAA,MAAAmC,OAAAC,IAAA,2BAAA,KAGTkO,MAAAA,CAAA5S,SAAAigB,QAAAxV,UAAA9E,cACEgY,SAAQuC,CAAA,OAAA;AAAA,IAAA,GAAaA;AAAAA,IAAC,CAAGJ,MAAI,GAAA;AAAA,MAAA9f;AAAAA,MAAAyK;AAAAA,IAAAA;AAAAA,IAAwB,GAEjD9E,YACFka,kBAAkB7f,OAAO,GAAC,MAAA;AAI1B2d,aAAQwC,CAAA,QAAA;AACN,YAAAC,WAAA;AAAA,QAAA,GAAqBF;AAAAA,MAAC;AAEfE,aAAAA,OAAAA,SAASN,MAAI,GAEbM;AAAAA,IAAAA,CACR;AAAA,EAAA,IAEJ9d,QAAAsQ,OAAAA,MAAAtQ,EAAA,EAAA;AAjBH,QAAA+d,eAAqBzN;AAmBpBE,MAAAA;AAAAxQ,IAAA,EAAA,MAAAmC,OAAAC,IAAA,2BAAA,KAE+BoO,MAAAA,CAAAwN,QAAAC,eAAA;AAC9B5C,aAAQ6C,CAAA,QAAA;AACNC,YAAAA,YAAkBP,IAAEJ,MAAI;AAAC,aAEpBW,YAAmB;AAAA,QAAA,GAEbP;AAAAA,QAAC,CAAGJ,MAAI,GAAA;AAAA,UAAA,GAAOW;AAAAA,UAAShW,UAAEA;AAAAA,QAAAA;AAAAA,MAAQ,IAFtByV;AAAAA,IAAAA,CAGxB;AAAA,EAAA,GACF5d,QAAAwQ,OAAAA,MAAAxQ,EAAA,EAAA;AARD,QAAAoe,cAAoB5N;AAQdG,MAAAA;AAKc,QAAAE,MAAAnI,kBAAkB6T,mBAAuB;AAAAzL,MAAAA;AAAA9Q,IAAA6L,EAAAA,MAAAA,SAAA7L,UAAAwC,SAAAxC,EAAA,EAAA,MAAA6Q,OAFpDC,MAAA;AAAA,IAAApD,SAAA;AAAA,IAAAhF,gBAEWmI;AAAAA,IAAyCwN,OAAA;AAAA,IAAAb;AAAAA,IAAAO;AAAAA,IAAAK;AAAAA,IAAAb;AAAAA,IAAA1R;AAAAA,IAAArJ;AAAAA,EAAAA,GAQ1DxC,QAAA6L,OAAA7L,QAAAwC,OAAAxC,QAAA6Q,KAAA7Q,QAAA8Q,OAAAA,MAAA9Q,EAAA,EAAA,GAAA2Q,MAVMG;AADT,QAAAkC,eAAuCrC;AAatCK,MAAAA;AAAAhR,YAAAuc,gBAGCvL,MAAAvN,CAAA,UAAA;AAAA,QACO8O,kBAAiBzR,SAAA;AAElB2C,UAAAA,MAAKC,QAAS,aAAW;AAC3BD,cAAKsF,eAAgB;AAErB,cAAAuV,SAAerB,qBACbS,SAAQ5c,SACRyb,cACAhK,kBAAiBzR,OACnB;AAEIwd,mBACFpB,kBAAkBoB,MAAM,GACxBf,kBAAkBe,MAAM;AAAC;AAAA,MAAA;AAMzB7a,UAAAA,MAAKC,QAAS,WAAS;AACzBD,cAAKsF,eAAgB;AAErB,cAAAwV,SAAejC,qBACboB,SAAQ5c,SACRyb,cACAhK,kBAAiBzR,OACnB;AAEIyd,mBACFrB,kBAAkBqB,MAAM,GACxBhB,kBAAkBgB,MAAM;AAAC;AAAA,MAAA;AAMzB9a,UAAAA,MAAKC,QAAS,aAAW;AAC3BD,cAAKsF,eAAgB;AAErB,cAAA0T,UAAgBlK,kBAAiBzR,QAAA7C,aAAsB,eAAe;AAAC,YAAA,CAElEwe;AAAO;AAEZ+B,cAAAA,cAAkBd,SAAQ5c,QAAS2b,OAAO;AAAC,YAAA,CAEtC0B;AAAS;AAAA,YAEVA,YAAShW;AACXkT,mBAAQoD,CAAA,QAAA;AACNC,kBAAAA,cAAkBd,IAAEnB,OAAO;AAAC,mBAEvB0B,cAAmB;AAAA,cAAA,GAEbP;AAAAA,cAAC,CAAGnB,OAAO,GAAA;AAAA,gBAAA,GAAO0B;AAAAA,gBAAShW,UAAA;AAAA,cAAA;AAAA,YAAA,IAFfyV;AAAAA,UAAAA,CAGxB;AAAA,aAAC;AAEFe,gBAAAA,WAAiBlC,QAAOE,MAAO,GAAG;AAElCgC,mBAAQ/B,IAAK;AAEbgC,gBAAAA,YAAkBD,SAAQ3B,KAAM,GAAG,GACnC6B,cAAoBD,aAAalB,SAAQ5c,QAAS8d,SAAS;AAEvDC,0BACFA,YAAWnhB,QAAAkB,MACX2e,GAAAA,kBAAkBsB,YAAWnhB,OAAQ;AAAA,QAAA;AAAC;AAAA,MAAA;AAOxC+F,UAAAA,MAAKC,QAAS,cAAY;AAC5BD,cAAKsF,eAAgB;AAErB,cAAA+V,aAAmBvM,kBAAiBzR,QAAA7C,aAAsB,eAAe;AAAC,YAAA,CAErE6gB;AAAU;AAEVpB,iBAAQ5c,QAASge,UAAU,GAAA3W,YAC9BkT,SAAQ0D,CAAA,QAAA;AACNC,gBAAAA,cAAkBpB,IAAEkB,UAAU;AAAC,iBAE1BX,cAAmB;AAAA,YAAA,GAEbP;AAAAA,YAAC,CAAGkB,UAAU,GAAA;AAAA,cAAA,GAAOX;AAAAA,cAAShW,UAAA;AAAA,YAAA;AAAA,UAAA,IAFlByV;AAAAA,QAAAA,CAGxB;AAAC;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA,GAKP5d,QAAAuc,cAAAvc,QAAAgR,OAAAA,MAAAhR,EAAA,EAAA;AA7FH,QAAA6D,gBAAsBmN;AA+FrBC,MAAAA;AAAAjR,YAAA0F,WAGCuL,MAAAlB,CAAA,YAAA;AACEwN,sBAAkB9Z,QAAKlC,MAAO,GAG9BmE,UAAUjC,OAAK;AAAA,EAAA,GAChBzD,QAAA0F,SAAA1F,QAAAiR,OAAAA,MAAAjR,EAAA,EAAA;AANH,QAAAyS,cAAoBxB;AAQnBC,MAAAA;AAAAlR,IAAA,EAAA,MAAAmC,OAAAC,IAAA,2BAAA,KAES8O,MAAAA,MAAA;AAAA,QACHjP,CAAAA,IAAGnB;AAAA;AACR,UAAAme,gBAAsBzf,MAAA0f,KACpBjd,IAAGnB,QAAAqe,iBAA0B,sBAAsB,CACrD;AAEA1B,oBAAgBwB,aAAa;AAAA,EAAA,GAC9Bjf,QAAAkR,OAAAA,MAAAlR,EAAA,EAAA;AAAAyV,MAAAA;AAAAzV,YAAAiD,YAAEwS,OAACxS,QAAQ,GAACjD,QAAAiD,UAAAjD,QAAAyV,OAAAA,MAAAzV,EAAA,EAAA,GAPbkB,UAAUgQ,KAOPuE,GAAU;AAQF,QAAAE,MAAAjK,OAAOG;AAAK+J,MAAAA;AAAA5V,IAAAiD,EAAAA,MAAAA,YAAAjD,EAAA,EAAA,MAAAyS,eAAAzS,EAAA6D,EAAAA,MAAAA,iBAAA7D,EAAA,EAAA,MAAA6G,aAAA7G,UAAA2V,OAJnBC,0BAAC,OACI,EAAA,IAAA,MACK,WAAA,QACJ/O,GAAAA,WACC,KAAA8O,KACIlD,SAAU,aACR5O,0BACN5B,KACA,MAAA,iBAGP,CAAA,GAAQjC,QAAAiD,UAAAjD,QAAAyS,aAAAzS,QAAA6D,eAAA7D,QAAA6G,WAAA7G,QAAA2V,KAAA3V,QAAA4V,OAAAA,MAAA5V,EAAA,EAAA;AAAA6V,MAAAA;AAAA,SAAA7V,EAAAgT,EAAAA,MAAAA,gBAAAhT,UAAA4V,OAZVC,MAAA,oBAAA,YAAA,UAAA,EAA6B7C,OAAAA,cAC3B4C,UAAAA,IAYF,CAAA,GAAuB5V,QAAAgT,cAAAhT,QAAA4V,KAAA5V,QAAA6V,OAAAA,MAAA7V,EAAA,EAAA,GAbvB6V;AAauB,CAE1B,CACH;AACAwH,KAAKjS,cAAc;AC3OZ,SAAAgU,UAAA;AACLC,QAAAA,OAAazR,WAAAwP,WAAsB;AAAC,MAAA,CAE/BiC;AAAIjD,UAAAA,IAAAA,MACS,6BAA6B;AAGxCiD,SAAAA;AAAI;ACLAC,MAAAA,YAAYhC,KAAK,SAAAza,OAAA;AAAA7C,QAAAA,IAAAC,EAAA,CAAA;AAAA,MAAAgD,UAAA4D,WAAA/G;AAAAE,WAAA6C,SAG5B;AAAA,IAAAI;AAAAA,IAAAkF,UAAArI;AAAAA,IAAA,GAAA+G;AAAAA,EAAmDhE,IAAAA,OAAK7C,OAAA6C,OAAA7C,OAAAiD,UAAAjD,OAAA6G,WAAA7G,OAAAF,OAAAmD,WAAAjD,EAAA,CAAA,GAAA6G,YAAA7G,EAAA,CAAA,GAAAF,KAAAE,EAAA,CAAA;AAAvCmI,QAAAA,WAAArI,OAAgBI,cAAhBJ,IACjBuf,OAAaD,QAAAA,GAOD9e,MAAC6H;AAAQxH,MAAAA;AAAA,SAAAX,EAAAiD,CAAAA,MAAAA,YAAAjD,SAAA6G,aAAA7G,EAAA,CAAA,MAAAM,MAAAN,EAAAqf,CAAAA,MAAAA,KAAAxT,SAJnBlL,KAAC,oBAAA,OAAA,EACI,IAAA,MACK,WAAA,aACJkG,GAAAA,WACI,QAAAvG,IACG,WAAA+e,KAAIxT,OACV,MAAA,SACE,OAAAwT,KAAIxT,iBAGb,GAAQ7L,OAAAiD,UAAAjD,OAAA6G,WAAA7G,OAAAM,IAAAN,EAAA,CAAA,IAAAqf,KAAAxT,OAAA7L,OAAAW,MAAAA,KAAAX,EAAA,CAAA,GAVRW;AAUQ,CAEX,GCgBY4e,WAAWjC,KAAK,SAC3Bza,OACc;AACR,QAAA;AAAA,IACJI;AAAAA,IACAsI;AAAAA,IACApD,UAAUqX,eAAe;AAAA,IACzBra,WAAW;AAAA,IACXhH;AAAAA,IACAiH,MAAMqa;AAAAA,IACNtc,IAAIuc;AAAAA,IACJC,SAAS;AAAA,IACTC;AAAAA,IACAvV;AAAAA,IACArE,UAAU;AAAA,IACVI,SAAS;AAAA,IACT/C,WAAW;AAAA,IACXwI,QAAQ;AAAA,IACRgU;AAAAA,IACAC;AAAAA,IACA,GAAGjZ;AAAAA,EACDhE,IAAAA,OACEkd,UAAUrf,OAA8B,IAAI,GAC5Csf,cAActf,OAA8B,IAAI,GAChD2e,OAAOD,QAAAA,GACP;AAAA,IAAC5B;AAAAA,IAAMO;AAAAA,IAAcK;AAAAA,IAAab;AAAAA,EAAiB,IAAI8B,MACvDY,MAAMC,MAAM,GACZ/c,KAAKuc,UAAUO,KACftB,WAAW9W,QAAQ,MAAM2V,KAAKnV,OAAO,CAAClF,MAAM,EAAE,CAAC,GAAG,CAACA,IAAIqa,IAAI,CAAC,GAC5Df,UAAUkC,SAAS3B,KAAK,GAAG,GAC3BmB,YAAYkB,KAAK7c,MAAMia,OAAO,GAC9BxY,UAAUob,KAAK3W,mBAAmBqX,QAAQjf,SAC1CqH,WAAWgW,WAAWhW,aAAajI,SAAYsf,eAAerB,WAAWhW,YAAY,IACrFnK,WAAWqhB,KAAK3W,kBAAkB2W,KAAK3W,mBAAmBqX,QAAQjf,UAAU,IAAI,IAChFkS,eAAenL,QACnB,OAAO;AAAA,IAAC,GAAGwX;AAAAA,IAAMhB,OAAOgB,KAAKhB,QAAQ;AAAA,IAAGb,MAAMmB;AAAAA,EAAAA,IAC9C,CAACA,UAAUU,IAAI,CACjB,GAEM7b,cAAcyD,YACjBxD,CAAsC,UAAA;AACjC4G,eAASA,QAAQ5G,KAAK;AAE1B,UAAMlC,SAASkC,MAAMlC;AAGnBA,sBAAkBoH,gBACjBpH,OAAOtD,aAAa,SAAS,MAAM,cAClCsD,OAAO4e,QAAQ,2BAA2B,OAE5C1c,MAAMmM,gBAAAA,GACNwO,YAAY3B,SAAS,CAACtU,QAAQ,GAC9BoV,kBAAkBwC,QAAQjf,OAAO;AAAA,EAErC,GACA,CAACqH,UAAUsU,SAASpS,SAAS+T,aAAab,iBAAiB,CAC7D,GAEM1Z,gBAAgBoD,YACnBxD,CAAsC,YAAA;AACjCQ,eAAWR,QAAMC,QAAQ,YAChBsc,YAAYlf,WAAWif,QAAQjf,UAEtCsf,MAAM;AAAA,EAAA,GAGd,CAACnc,OAAO,CACV;AAEA/C,YAAU,MAAM;AACd,QAAK6e,QAAQjf;AAENid,aAAAA,aAAagC,QAAQjf,SAAS6d,SAAS3B,KAAK,GAAG,GAAG7U,UAAU9E,QAAQ;AAAA,KAC1E,CAAC8E,UAAUwW,UAAUZ,cAAc1a,QAAQ,CAAC;AAE/C,QAAMuH,WACJ,qBAAC,MAAK,EAAA,KAAKiB,OAAO,SAChB,UAAA;AAAA,IAAA,qBAAC,OACC,OAAO;AAAA,MACLwU,YAAYZ,iBAAiBxc,WAAW,YAAY;AAAA,MACpDqd,eAAe;AAAA,IAGhBb,GAAAA,UAAAA;AAAAA,MACC,iBAAA,oBAAC,QAAK,OAAc,MAAMta,UAAU,QAClC,UAAA,oBAAC,iBAAa,EAChB,CAAA;AAAA,MAED,CAACsa,iBACA,oBAAC,MAAK,EAAA,OAAc,MAAMta,UAAU,QAClC,UAAC,oBAAA,sBAAA,EAAqB,OAAO;AAAA,QAACob,WAAWpY,WAAW,kBAAkBjI;AAAAA,SAAW,EACnF,CAAA;AAAA,IAAA,GAEJ;AAAA,IACC,oBAAA,KAAA,EAAI,MAAM,GACT,UAAC,oBAAA,MAAA,EAAK,OAAc,MAAMiF,UAAU,cAAa,YAAW,QACzD0a,gBACH,EACF,CAAA;AAAA,EAAA,GACF;AAGF,SAAI1hB,OAEA,qBAAC,KACC,EAAA,iBAAekF,WAAW,KAAKnD,QAC/B,gBAAciD,IACd,iBAAesZ,SACf,WAAQ,eACJ5V,WACJ,IAAG,MACH,WAAWuG,kBAAkB7B,WAAWiV,SAAU,CAAA,GAClD,SAAShd,aACT,KAAKuc,SACL,MAAK,QAEL,UAAA;AAAA,IAAA,oBAAC,cACC,iBAAe5X,UACf,IAAIwX,QACJ,gBAActc,WAAW,KAAKnD,QAC9B,WAAQ,iBACR,MACA,QACA,KAAK8f,aACL,MAAK,YACL,UACA,OAAO;AAAA,MACLS,aAAa,yBAAyBpB,KAAKhB,KAAK;AAAA,IAAA,GAGjDzT,UACHA,UAAA;AAAA,IAEC,oBAAA,YAAY,UAAZ,EAAqB,OAAOoI,cAC1B/P,UAAY,YAAA,oBAAC,WAAU,EAAA,QAAQ,CAACkF,UAAWlF,SAAS,CAAA,EACvD,CAAA;AAAA,EAAA,EACF,CAAA,IAKF,qBAAC,KACC,EAAA,iBAAeI,WAAW,KAAKnD,QAC/B,WAAQ,YACR,gBAAciD,IACd,iBAAesZ,SACf,GAAI5V,WACJ,iBAAesB,UACf,WAAWiF,kBAAkB7B,WAAWiV,SAAU,CAAA,GAClD,SAAShd,aACT,WAAWK,eACX,KAAKkc,SACL,MAAK,YACL,UAEA,UAAA;AAAA,IAAC,oBAAA,YAAA,EACC,IAAG,UACH,gBAAc1c,WAAW,KAAKnD,QAC9B,WAAQ,iBACR,QACA,OAAO;AAAA,MACLugB,aAAa,yBAAyBpB,KAAKhB,KAAK;AAAA,IAAA,GAGjDzT,UACHA,UAAA;AAAA,IAEA,oBAAC,YAAY,UAAZ,EAAqB,OAAOoI,cAC1B/P,UAAAA,YAAa,oBAAA,WAAA,EAAU,UAAqBA,SAAS,CAAA,EACxD,CAAA;AAAA,EAAA,GACF;AAEJ,CAAC;AAEDsc,SAASnU,cAAc;ACtNhB,SAAAsV,UAAA7d,OAAA;AAAA7C,QAAAA,IAAAC,EAAA,EAAA,GACL;AAAA,IAAA0gB,OAAAC;AAAAA,EAAAA,IAA2B/d;AAAK/C,MAAAA;AAAAE,WAAA4gB,aAElB9gB,KAAA8gB,aAAaC,iBAAe7gB,OAAA4gB,WAAA5gB,OAAAF,MAAAA,KAAAE,EAAA,CAAA;AAA1C,QAAA2gB,QAAc7gB;AAA4BQ,MAAAA;AAAAN,IAAA,CAAA,MAAA2gB,MAAAG,YAKnCxgB,KAAAygB,eAAeJ,MAAKG,QAAS,GAAC9gB,EAAA,CAAA,IAAA2gB,MAAAG,UAAA9gB,OAAAM,MAAAA,KAAAN,EAAA,CAAA;AAAAW,MAAAA;AAAAX,WAAAM,MADjCK,KAEQ,oBAAA,SAAA,EAFI,MAAA,kBAA4B,YAAA,WACrCL,cACH,GAAQN,OAAAM,IAAAN,OAAAW,MAAAA,KAAAX,EAAA,CAAA;AAAAY,MAAAA;AAAAZ,WAAA2gB,SAEL/f,KAAAogB,aAAA;AAAA,IAAAC,IAAkBN;AAAAA,EAAmB,CAAA,GAAC3gB,OAAA2gB,OAAA3gB,OAAAY,MAAAA,KAAAZ,EAAA,CAAA;AAAAmB,MAAAA;AAAAnB,WAAAY,MADzCO,KAEQ,oBAAA,SAAA,EAFI,MAAA,gBAA0B,YAAA,SACnCP,cACH,GAAQZ,OAAAY,IAAAZ,OAAAmB,MAAAA,KAAAnB,EAAA,CAAA;AAAAoB,MAAAA;AAAApB,IAAA,EAAA,MAAAmC,OAAAC,IAAA,2BAAA,KACRhB,KAEQ,oBAAA,SAFI,EAAA,MAAA,iBAA2B,YAAA,UACpC8f,UAAc,cAAA,EAAA,CACjB,GAAQlhB,QAAAoB,MAAAA,KAAApB,EAAA,EAAA;AAAA8P,MAAAA;AAAA9P,SAAAA,EAAAW,EAAAA,MAAAA,MAAAX,UAAAmB,MATV2O,KACEnP,qBAAAA,YAAAA,EAAAA,UAAAA;AAAAA,IAAAA;AAAAA,IAGAQ;AAAAA,IAGAC;AAAAA,EAAAA,EAEQ,CAAA,GACPpB,QAAAW,IAAAX,QAAAmB,IAAAnB,QAAA8P,MAAAA,KAAA9P,EAAA,EAAA,GAVH8P;AAUG;"}
|
package/dist/sanity-palette.css
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
:root{--l-min:18.75%;--l-max:100%;--l-range:calc(var(--l-max) - var(--l-min));--c-min:0.005;--c-max:0.2325;--c-range:calc(var(--c-max) - var(--c-min));--gray-h:277;--gray-c:0.04;--gray-c-max:min(var(--c-max), var(--gray-c));--gray-c-range:calc(var(--gray-c-max) - var(--c-min));--gray-50:oklch(calc(var(--l-min) + 0.95 * var(--l-range)) calc(var(--c-min) + 0.1 * var(--gray-c-range)) var(--gray-h));--gray-100:oklch(calc(var(--l-min) + 0.9 * var(--l-range)) calc(var(--c-min) + 0.2 * var(--gray-c-range)) var(--gray-h));--gray-150:oklch(calc(var(--l-min) + 0.85 * var(--l-range)) calc(var(--c-min) + 0.3 * var(--gray-c-range)) var(--gray-h));--gray-200:oklch(calc(var(--l-min) + 0.8 * var(--l-range)) calc(var(--c-min) + 0.4 * var(--gray-c-range)) var(--gray-h));--gray-250:oklch(calc(var(--l-min) + 0.75 * var(--l-range)) calc(var(--c-min) + 0.5 * var(--gray-c-range)) var(--gray-h));--gray-300:oklch(calc(var(--l-min) + 0.7 * var(--l-range)) calc(var(--c-min) + 0.6 * var(--gray-c-range)) var(--gray-h));--gray-350:oklch(calc(var(--l-min) + 0.65 * var(--l-range)) calc(var(--c-min) + 0.7 * var(--gray-c-range)) var(--gray-h));--gray-400:oklch(calc(var(--l-min) + 0.6 * var(--l-range)) calc(var(--c-min) + 0.8 * var(--gray-c-range)) var(--gray-h));--gray-450:oklch(calc(var(--l-min) + 0.55 * var(--l-range)) calc(var(--c-min) + 0.9 * var(--gray-c-range)) var(--gray-h));--gray-500:oklch(calc(var(--l-min) + 0.5 * var(--l-range)) calc(var(--c-min) + 1 * var(--gray-c-range)) var(--gray-h));--gray-550:oklch(calc(var(--l-min) + 0.45 * var(--l-range)) calc(var(--c-min) + 0.9 * var(--gray-c-range)) var(--gray-h));--gray-600:oklch(calc(var(--l-min) + 0.4 * var(--l-range)) calc(var(--c-min) + 0.8 * var(--gray-c-range)) var(--gray-h));--gray-650:oklch(calc(var(--l-min) + 0.35 * var(--l-range)) calc(var(--c-min) + 0.7 * var(--gray-c-range)) var(--gray-h));--gray-700:oklch(calc(var(--l-min) + 0.3 * var(--l-range)) calc(var(--c-min) + 0.6 * var(--gray-c-range)) var(--gray-h));--gray-750:oklch(calc(var(--l-min) + 0.25 * var(--l-range)) calc(var(--c-min) + 0.5 * var(--gray-c-range)) var(--gray-h));--gray-800:oklch(calc(var(--l-min) + 0.2 * var(--l-range)) calc(var(--c-min) + 0.4 * var(--gray-c-range)) var(--gray-h));--gray-850:oklch(calc(var(--l-min) + 0.15 * var(--l-range)) calc(var(--c-min) + 0.3 * var(--gray-c-range)) var(--gray-h));--gray-900:oklch(calc(var(--l-min) + 0.1 * var(--l-range)) calc(var(--c-min) + 0.2 * var(--gray-c-range)) var(--gray-h));--gray-950:oklch(calc(var(--l-min) + 0.05 * var(--l-range)) calc(var(--c-min) + 0.1 * var(--gray-c-range)) var(--gray-h));--blue-h:273;--blue-c:0.185;--blue-c-max:min(var(--c-max), var(--blue-c));--blue-c-range:calc(var(--blue-c-max) - var(--c-min));--blue-50:oklch(calc(var(--l-min) + 0.95 * var(--l-range)) calc(var(--c-min) + 0.1 * var(--blue-c-range)) var(--blue-h));--blue-100:oklch(calc(var(--l-min) + 0.9 * var(--l-range)) calc(var(--c-min) + 0.2 * var(--blue-c-range)) var(--blue-h));--blue-150:oklch(calc(var(--l-min) + 0.85 * var(--l-range)) calc(var(--c-min) + 0.3 * var(--blue-c-range)) var(--blue-h));--blue-200:oklch(calc(var(--l-min) + 0.8 * var(--l-range)) calc(var(--c-min) + 0.4 * var(--blue-c-range)) var(--blue-h));--blue-250:oklch(calc(var(--l-min) + 0.75 * var(--l-range)) calc(var(--c-min) + 0.5 * var(--blue-c-range)) var(--blue-h));--blue-300:oklch(calc(var(--l-min) + 0.7 * var(--l-range)) calc(var(--c-min) + 0.6 * var(--blue-c-range)) var(--blue-h));--blue-350:oklch(calc(var(--l-min) + 0.65 * var(--l-range)) calc(var(--c-min) + 0.7 * var(--blue-c-range)) var(--blue-h));--blue-400:oklch(calc(var(--l-min) + 0.6 * var(--l-range)) calc(var(--c-min) + 0.8 * var(--blue-c-range)) var(--blue-h));--blue-450:oklch(calc(var(--l-min) + 0.55 * var(--l-range)) calc(var(--c-min) + 0.9 * var(--blue-c-range)) var(--blue-h));--blue-500:oklch(calc(var(--l-min) + 0.5 * var(--l-range)) calc(var(--c-min) + 1 * var(--blue-c-range)) var(--blue-h));--blue-550:oklch(calc(var(--l-min) + 0.45 * var(--l-range)) calc(var(--c-min) + 0.9 * var(--blue-c-range)) var(--blue-h));--blue-600:oklch(calc(var(--l-min) + 0.4 * var(--l-range)) calc(var(--c-min) + 0.8 * var(--blue-c-range)) var(--blue-h));--blue-650:oklch(calc(var(--l-min) + 0.35 * var(--l-range)) calc(var(--c-min) + 0.7 * var(--blue-c-range)) var(--blue-h));--blue-700:oklch(calc(var(--l-min) + 0.3 * var(--l-range)) calc(var(--c-min) + 0.6 * var(--blue-c-range)) var(--blue-h));--blue-750:oklch(calc(var(--l-min) + 0.25 * var(--l-range)) calc(var(--c-min) + 0.5 * var(--blue-c-range)) var(--blue-h));--blue-800:oklch(calc(var(--l-min) + 0.2 * var(--l-range)) calc(var(--c-min) + 0.4 * var(--blue-c-range)) var(--blue-h));--blue-850:oklch(calc(var(--l-min) + 0.15 * var(--l-range)) calc(var(--c-min) + 0.3 * var(--blue-c-range)) var(--blue-h));--blue-900:oklch(calc(var(--l-min) + 0.1 * var(--l-range)) calc(var(--c-min) + 0.2 * var(--blue-c-range)) var(--blue-h));--blue-950:oklch(calc(var(--l-min) + 0.05 * var(--l-range)) calc(var(--c-min) + 0.1 * var(--blue-c-range)) var(--blue-h));--purple-h:295;--purple-c:0.4;--purple-c-max:min(var(--c-max), var(--purple-c));--purple-c-range:calc(var(--purple-c-max) - var(--c-min));--purple-50:oklch(calc(var(--l-min) + 0.95 * var(--l-range)) calc(var(--c-min) + 0.1 * var(--purple-c-range)) var(--purple-h));--purple-100:oklch(calc(var(--l-min) + 0.9 * var(--l-range)) calc(var(--c-min) + 0.2 * var(--purple-c-range)) var(--purple-h));--purple-150:oklch(calc(var(--l-min) + 0.85 * var(--l-range)) calc(var(--c-min) + 0.3 * var(--purple-c-range)) var(--purple-h));--purple-200:oklch(calc(var(--l-min) + 0.8 * var(--l-range)) calc(var(--c-min) + 0.4 * var(--purple-c-range)) var(--purple-h));--purple-250:oklch(calc(var(--l-min) + 0.75 * var(--l-range)) calc(var(--c-min) + 0.5 * var(--purple-c-range)) var(--purple-h));--purple-300:oklch(calc(var(--l-min) + 0.7 * var(--l-range)) calc(var(--c-min) + 0.6 * var(--purple-c-range)) var(--purple-h));--purple-350:oklch(calc(var(--l-min) + 0.65 * var(--l-range)) calc(var(--c-min) + 0.7 * var(--purple-c-range)) var(--purple-h));--purple-400:oklch(calc(var(--l-min) + 0.6 * var(--l-range)) calc(var(--c-min) + 0.8 * var(--purple-c-range)) var(--purple-h));--purple-450:oklch(calc(var(--l-min) + 0.55 * var(--l-range)) calc(var(--c-min) + 0.9 * var(--purple-c-range)) var(--purple-h));--purple-500:oklch(calc(var(--l-min) + 0.5 * var(--l-range)) calc(var(--c-min) + 1 * var(--purple-c-range)) var(--purple-h));--purple-550:oklch(calc(var(--l-min) + 0.45 * var(--l-range)) calc(var(--c-min) + 0.9 * var(--purple-c-range)) var(--purple-h));--purple-600:oklch(calc(var(--l-min) + 0.4 * var(--l-range)) calc(var(--c-min) + 0.8 * var(--purple-c-range)) var(--purple-h));--purple-650:oklch(calc(var(--l-min) + 0.35 * var(--l-range)) calc(var(--c-min) + 0.7 * var(--purple-c-range)) var(--purple-h));--purple-700:oklch(calc(var(--l-min) + 0.3 * var(--l-range)) calc(var(--c-min) + 0.6 * var(--purple-c-range)) var(--purple-h));--purple-750:oklch(calc(var(--l-min) + 0.25 * var(--l-range)) calc(var(--c-min) + 0.5 * var(--purple-c-range)) var(--purple-h));--purple-800:oklch(calc(var(--l-min) + 0.2 * var(--l-range)) calc(var(--c-min) + 0.4 * var(--purple-c-range)) var(--purple-h));--purple-850:oklch(calc(var(--l-min) + 0.15 * var(--l-range)) calc(var(--c-min) + 0.3 * var(--purple-c-range)) var(--purple-h));--purple-900:oklch(calc(var(--l-min) + 0.1 * var(--l-range)) calc(var(--c-min) + 0.2 * var(--purple-c-range)) var(--purple-h));--purple-950:oklch(calc(var(--l-min) + 0.05 * var(--l-range)) calc(var(--c-min) + 0.1 * var(--purple-c-range)) var(--purple-h));--magenta-h:12;--magenta-c:0.4;--magenta-c-max:min(var(--c-max), var(--magenta-c));--magenta-c-range:calc(var(--magenta-c-max) - var(--c-min));--magenta-50:oklch(calc(var(--l-min) + 0.95 * var(--l-range)) calc(var(--c-min) + 0.1 * var(--magenta-c-range)) var(--magenta-h));--magenta-100:oklch(calc(var(--l-min) + 0.9 * var(--l-range)) calc(var(--c-min) + 0.2 * var(--magenta-c-range)) var(--magenta-h));--magenta-150:oklch(calc(var(--l-min) + 0.85 * var(--l-range)) calc(var(--c-min) + 0.3 * var(--magenta-c-range)) var(--magenta-h));--magenta-200:oklch(calc(var(--l-min) + 0.8 * var(--l-range)) calc(var(--c-min) + 0.4 * var(--magenta-c-range)) var(--magenta-h));--magenta-250:oklch(calc(var(--l-min) + 0.75 * var(--l-range)) calc(var(--c-min) + 0.5 * var(--magenta-c-range)) var(--magenta-h));--magenta-300:oklch(calc(var(--l-min) + 0.7 * var(--l-range)) calc(var(--c-min) + 0.6 * var(--magenta-c-range)) var(--magenta-h));--magenta-350:oklch(calc(var(--l-min) + 0.65 * var(--l-range)) calc(var(--c-min) + 0.7 * var(--magenta-c-range)) var(--magenta-h));--magenta-400:oklch(calc(var(--l-min) + 0.6 * var(--l-range)) calc(var(--c-min) + 0.8 * var(--magenta-c-range)) var(--magenta-h));--magenta-450:oklch(calc(var(--l-min) + 0.55 * var(--l-range)) calc(var(--c-min) + 0.9 * var(--magenta-c-range)) var(--magenta-h));--magenta-500:oklch(calc(var(--l-min) + 0.5 * var(--l-range)) calc(var(--c-min) + 1 * var(--magenta-c-range)) var(--magenta-h));--magenta-550:oklch(calc(var(--l-min) + 0.45 * var(--l-range)) calc(var(--c-min) + 0.9 * var(--magenta-c-range)) var(--magenta-h));--magenta-600:oklch(calc(var(--l-min) + 0.4 * var(--l-range)) calc(var(--c-min) + 0.8 * var(--magenta-c-range)) var(--magenta-h));--magenta-650:oklch(calc(var(--l-min) + 0.35 * var(--l-range)) calc(var(--c-min) + 0.7 * var(--magenta-c-range)) var(--magenta-h));--magenta-700:oklch(calc(var(--l-min) + 0.3 * var(--l-range)) calc(var(--c-min) + 0.6 * var(--magenta-c-range)) var(--magenta-h));--magenta-750:oklch(calc(var(--l-min) + 0.25 * var(--l-range)) calc(var(--c-min) + 0.5 * var(--magenta-c-range)) var(--magenta-h));--magenta-800:oklch(calc(var(--l-min) + 0.2 * var(--l-range)) calc(var(--c-min) + 0.4 * var(--magenta-c-range)) var(--magenta-h));--magenta-850:oklch(calc(var(--l-min) + 0.15 * var(--l-range)) calc(var(--c-min) + 0.3 * var(--magenta-c-range)) var(--magenta-h));--magenta-900:oklch(calc(var(--l-min) + 0.1 * var(--l-range)) calc(var(--c-min) + 0.2 * var(--magenta-c-range)) var(--magenta-h));--magenta-950:oklch(calc(var(--l-min) + 0.05 * var(--l-range)) calc(var(--c-min) + 0.1 * var(--magenta-c-range)) var(--magenta-h));--red-h:30;--red-c:0.4;--red-c-max:min(var(--c-max), var(--red-c));--red-c-range:calc(var(--red-c-max) - var(--c-min));--red-50:oklch(calc(var(--l-min) + 0.95 * var(--l-range)) calc(var(--c-min) + 0.1 * var(--red-c-range)) var(--red-h));--red-100:oklch(calc(var(--l-min) + 0.9 * var(--l-range)) calc(var(--c-min) + 0.2 * var(--red-c-range)) var(--red-h));--red-150:oklch(calc(var(--l-min) + 0.85 * var(--l-range)) calc(var(--c-min) + 0.3 * var(--red-c-range)) var(--red-h));--red-200:oklch(calc(var(--l-min) + 0.8 * var(--l-range)) calc(var(--c-min) + 0.4 * var(--red-c-range)) var(--red-h));--red-250:oklch(calc(var(--l-min) + 0.75 * var(--l-range)) calc(var(--c-min) + 0.5 * var(--red-c-range)) var(--red-h));--red-300:oklch(calc(var(--l-min) + 0.7 * var(--l-range)) calc(var(--c-min) + 0.6 * var(--red-c-range)) var(--red-h));--red-350:oklch(calc(var(--l-min) + 0.65 * var(--l-range)) calc(var(--c-min) + 0.7 * var(--red-c-range)) var(--red-h));--red-400:oklch(calc(var(--l-min) + 0.6 * var(--l-range)) calc(var(--c-min) + 0.8 * var(--red-c-range)) var(--red-h));--red-450:oklch(calc(var(--l-min) + 0.55 * var(--l-range)) calc(var(--c-min) + 0.9 * var(--red-c-range)) var(--red-h));--red-500:oklch(calc(var(--l-min) + 0.5 * var(--l-range)) calc(var(--c-min) + 1 * var(--red-c-range)) var(--red-h));--red-550:oklch(calc(var(--l-min) + 0.45 * var(--l-range)) calc(var(--c-min) + 0.9 * var(--red-c-range)) var(--red-h));--red-600:oklch(calc(var(--l-min) + 0.4 * var(--l-range)) calc(var(--c-min) + 0.8 * var(--red-c-range)) var(--red-h));--red-650:oklch(calc(var(--l-min) + 0.35 * var(--l-range)) calc(var(--c-min) + 0.7 * var(--red-c-range)) var(--red-h));--red-700:oklch(calc(var(--l-min) + 0.3 * var(--l-range)) calc(var(--c-min) + 0.6 * var(--red-c-range)) var(--red-h));--red-750:oklch(calc(var(--l-min) + 0.25 * var(--l-range)) calc(var(--c-min) + 0.5 * var(--red-c-range)) var(--red-h));--red-800:oklch(calc(var(--l-min) + 0.2 * var(--l-range)) calc(var(--c-min) + 0.4 * var(--red-c-range)) var(--red-h));--red-850:oklch(calc(var(--l-min) + 0.15 * var(--l-range)) calc(var(--c-min) + 0.3 * var(--red-c-range)) var(--red-h));--red-900:oklch(calc(var(--l-min) + 0.1 * var(--l-range)) calc(var(--c-min) + 0.2 * var(--red-c-range)) var(--red-h));--red-950:oklch(calc(var(--l-min) + 0.05 * var(--l-range)) calc(var(--c-min) + 0.1 * var(--red-c-range)) var(--red-h));--orange-h:68;--orange-c:0.4;--orange-c-max:min(var(--c-max), var(--orange-c));--orange-c-range:calc(var(--orange-c-max) - var(--c-min));--orange-50:oklch(calc(var(--l-min) + 0.95 * var(--l-range)) calc(var(--c-min) + 0.1 * var(--orange-c-range)) var(--orange-h));--orange-100:oklch(calc(var(--l-min) + 0.9 * var(--l-range)) calc(var(--c-min) + 0.2 * var(--orange-c-range)) var(--orange-h));--orange-150:oklch(calc(var(--l-min) + 0.85 * var(--l-range)) calc(var(--c-min) + 0.3 * var(--orange-c-range)) var(--orange-h));--orange-200:oklch(calc(var(--l-min) + 0.8 * var(--l-range)) calc(var(--c-min) + 0.4 * var(--orange-c-range)) var(--orange-h));--orange-250:oklch(calc(var(--l-min) + 0.75 * var(--l-range)) calc(var(--c-min) + 0.5 * var(--orange-c-range)) var(--orange-h));--orange-300:oklch(calc(var(--l-min) + 0.7 * var(--l-range)) calc(var(--c-min) + 0.6 * var(--orange-c-range)) var(--orange-h));--orange-350:oklch(calc(var(--l-min) + 0.65 * var(--l-range)) calc(var(--c-min) + 0.7 * var(--orange-c-range)) var(--orange-h));--orange-400:oklch(calc(var(--l-min) + 0.6 * var(--l-range)) calc(var(--c-min) + 0.8 * var(--orange-c-range)) var(--orange-h));--orange-450:oklch(calc(var(--l-min) + 0.55 * var(--l-range)) calc(var(--c-min) + 0.9 * var(--orange-c-range)) var(--orange-h));--orange-500:oklch(calc(var(--l-min) + 0.5 * var(--l-range)) calc(var(--c-min) + 1 * var(--orange-c-range)) var(--orange-h));--orange-550:oklch(calc(var(--l-min) + 0.45 * var(--l-range)) calc(var(--c-min) + 0.9 * var(--orange-c-range)) var(--orange-h));--orange-600:oklch(calc(var(--l-min) + 0.4 * var(--l-range)) calc(var(--c-min) + 0.8 * var(--orange-c-range)) var(--orange-h));--orange-650:oklch(calc(var(--l-min) + 0.35 * var(--l-range)) calc(var(--c-min) + 0.7 * var(--orange-c-range)) var(--orange-h));--orange-700:oklch(calc(var(--l-min) + 0.3 * var(--l-range)) calc(var(--c-min) + 0.6 * var(--orange-c-range)) var(--orange-h));--orange-750:oklch(calc(var(--l-min) + 0.25 * var(--l-range)) calc(var(--c-min) + 0.5 * var(--orange-c-range)) var(--orange-h));--orange-800:oklch(calc(var(--l-min) + 0.2 * var(--l-range)) calc(var(--c-min) + 0.4 * var(--orange-c-range)) var(--orange-h));--orange-850:oklch(calc(var(--l-min) + 0.15 * var(--l-range)) calc(var(--c-min) + 0.3 * var(--orange-c-range)) var(--orange-h));--orange-900:oklch(calc(var(--l-min) + 0.1 * var(--l-range)) calc(var(--c-min) + 0.2 * var(--orange-c-range)) var(--orange-h));--orange-950:oklch(calc(var(--l-min) + 0.05 * var(--l-range)) calc(var(--c-min) + 0.1 * var(--orange-c-range)) var(--orange-h));--yellow-h:90;--yellow-c:0.4;--yellow-c-max:min(var(--c-max), var(--yellow-c));--yellow-c-range:calc(var(--yellow-c-max) - var(--c-min));--yellow-50:oklch(calc(var(--l-min) + 0.95 * var(--l-range)) calc(var(--c-min) + 0.1 * var(--yellow-c-range)) var(--yellow-h));--yellow-100:oklch(calc(var(--l-min) + 0.9 * var(--l-range)) calc(var(--c-min) + 0.2 * var(--yellow-c-range)) var(--yellow-h));--yellow-150:oklch(calc(var(--l-min) + 0.85 * var(--l-range)) calc(var(--c-min) + 0.3 * var(--yellow-c-range)) var(--yellow-h));--yellow-200:oklch(calc(var(--l-min) + 0.8 * var(--l-range)) calc(var(--c-min) + 0.4 * var(--yellow-c-range)) var(--yellow-h));--yellow-250:oklch(calc(var(--l-min) + 0.75 * var(--l-range)) calc(var(--c-min) + 0.5 * var(--yellow-c-range)) var(--yellow-h));--yellow-300:oklch(calc(var(--l-min) + 0.7 * var(--l-range)) calc(var(--c-min) + 0.6 * var(--yellow-c-range)) var(--yellow-h));--yellow-350:oklch(calc(var(--l-min) + 0.65 * var(--l-range)) calc(var(--c-min) + 0.7 * var(--yellow-c-range)) var(--yellow-h));--yellow-400:oklch(calc(var(--l-min) + 0.6 * var(--l-range)) calc(var(--c-min) + 0.8 * var(--yellow-c-range)) var(--yellow-h));--yellow-450:oklch(calc(var(--l-min) + 0.55 * var(--l-range)) calc(var(--c-min) + 0.9 * var(--yellow-c-range)) var(--yellow-h));--yellow-500:oklch(calc(var(--l-min) + 0.5 * var(--l-range)) calc(var(--c-min) + 1 * var(--yellow-c-range)) var(--yellow-h));--yellow-550:oklch(calc(var(--l-min) + 0.45 * var(--l-range)) calc(var(--c-min) + 0.9 * var(--yellow-c-range)) var(--yellow-h));--yellow-600:oklch(calc(var(--l-min) + 0.4 * var(--l-range)) calc(var(--c-min) + 0.8 * var(--yellow-c-range)) var(--yellow-h));--yellow-650:oklch(calc(var(--l-min) + 0.35 * var(--l-range)) calc(var(--c-min) + 0.7 * var(--yellow-c-range)) var(--yellow-h));--yellow-700:oklch(calc(var(--l-min) + 0.3 * var(--l-range)) calc(var(--c-min) + 0.6 * var(--yellow-c-range)) var(--yellow-h));--yellow-750:oklch(calc(var(--l-min) + 0.25 * var(--l-range)) calc(var(--c-min) + 0.5 * var(--yellow-c-range)) var(--yellow-h));--yellow-800:oklch(calc(var(--l-min) + 0.2 * var(--l-range)) calc(var(--c-min) + 0.4 * var(--yellow-c-range)) var(--yellow-h));--yellow-850:oklch(calc(var(--l-min) + 0.15 * var(--l-range)) calc(var(--c-min) + 0.3 * var(--yellow-c-range)) var(--yellow-h));--yellow-900:oklch(calc(var(--l-min) + 0.1 * var(--l-range)) calc(var(--c-min) + 0.2 * var(--yellow-c-range)) var(--yellow-h));--yellow-950:oklch(calc(var(--l-min) + 0.05 * var(--l-range)) calc(var(--c-min) + 0.1 * var(--yellow-c-range)) var(--yellow-h));--green-h:171;--green-c:0.4;--green-c-max:min(var(--c-max), var(--green-c));--green-c-range:calc(var(--green-c-max) - var(--c-min));--green-50:oklch(calc(var(--l-min) + 0.95 * var(--l-range)) calc(var(--c-min) + 0.1 * var(--green-c-range)) var(--green-h));--green-100:oklch(calc(var(--l-min) + 0.9 * var(--l-range)) calc(var(--c-min) + 0.2 * var(--green-c-range)) var(--green-h));--green-150:oklch(calc(var(--l-min) + 0.85 * var(--l-range)) calc(var(--c-min) + 0.3 * var(--green-c-range)) var(--green-h));--green-200:oklch(calc(var(--l-min) + 0.8 * var(--l-range)) calc(var(--c-min) + 0.4 * var(--green-c-range)) var(--green-h));--green-250:oklch(calc(var(--l-min) + 0.75 * var(--l-range)) calc(var(--c-min) + 0.5 * var(--green-c-range)) var(--green-h));--green-300:oklch(calc(var(--l-min) + 0.7 * var(--l-range)) calc(var(--c-min) + 0.6 * var(--green-c-range)) var(--green-h));--green-350:oklch(calc(var(--l-min) + 0.65 * var(--l-range)) calc(var(--c-min) + 0.7 * var(--green-c-range)) var(--green-h));--green-400:oklch(calc(var(--l-min) + 0.6 * var(--l-range)) calc(var(--c-min) + 0.8 * var(--green-c-range)) var(--green-h));--green-450:oklch(calc(var(--l-min) + 0.55 * var(--l-range)) calc(var(--c-min) + 0.9 * var(--green-c-range)) var(--green-h));--green-500:oklch(calc(var(--l-min) + 0.5 * var(--l-range)) calc(var(--c-min) + 1 * var(--green-c-range)) var(--green-h));--green-550:oklch(calc(var(--l-min) + 0.45 * var(--l-range)) calc(var(--c-min) + 0.9 * var(--green-c-range)) var(--green-h));--green-600:oklch(calc(var(--l-min) + 0.4 * var(--l-range)) calc(var(--c-min) + 0.8 * var(--green-c-range)) var(--green-h));--green-650:oklch(calc(var(--l-min) + 0.35 * var(--l-range)) calc(var(--c-min) + 0.7 * var(--green-c-range)) var(--green-h));--green-700:oklch(calc(var(--l-min) + 0.3 * var(--l-range)) calc(var(--c-min) + 0.6 * var(--green-c-range)) var(--green-h));--green-750:oklch(calc(var(--l-min) + 0.25 * var(--l-range)) calc(var(--c-min) + 0.5 * var(--green-c-range)) var(--green-h));--green-800:oklch(calc(var(--l-min) + 0.2 * var(--l-range)) calc(var(--c-min) + 0.4 * var(--green-c-range)) var(--green-h));--green-850:oklch(calc(var(--l-min) + 0.15 * var(--l-range)) calc(var(--c-min) + 0.3 * var(--green-c-range)) var(--green-h));--green-900:oklch(calc(var(--l-min) + 0.1 * var(--l-range)) calc(var(--c-min) + 0.2 * var(--green-c-range)) var(--green-h));--green-950:oklch(calc(var(--l-min) + 0.05 * var(--l-range)) calc(var(--c-min) + 0.1 * var(--green-c-range)) var(--green-h));--cyan-h:194;--cyan-c:0.4;--cyan-c-max:min(var(--c-max), var(--cyan-c));--cyan-c-range:calc(var(--cyan-c-max) - var(--c-min));--cyan-50:oklch(calc(var(--l-min) + 0.95 * var(--l-range)) calc(var(--c-min) + 0.1 * var(--cyan-c-range)) var(--cyan-h));--cyan-100:oklch(calc(var(--l-min) + 0.9 * var(--l-range)) calc(var(--c-min) + 0.2 * var(--cyan-c-range)) var(--cyan-h));--cyan-150:oklch(calc(var(--l-min) + 0.85 * var(--l-range)) calc(var(--c-min) + 0.3 * var(--cyan-c-range)) var(--cyan-h));--cyan-200:oklch(calc(var(--l-min) + 0.8 * var(--l-range)) calc(var(--c-min) + 0.4 * var(--cyan-c-range)) var(--cyan-h));--cyan-250:oklch(calc(var(--l-min) + 0.75 * var(--l-range)) calc(var(--c-min) + 0.5 * var(--cyan-c-range)) var(--cyan-h));--cyan-300:oklch(calc(var(--l-min) + 0.7 * var(--l-range)) calc(var(--c-min) + 0.6 * var(--cyan-c-range)) var(--cyan-h));--cyan-350:oklch(calc(var(--l-min) + 0.65 * var(--l-range)) calc(var(--c-min) + 0.7 * var(--cyan-c-range)) var(--cyan-h));--cyan-400:oklch(calc(var(--l-min) + 0.6 * var(--l-range)) calc(var(--c-min) + 0.8 * var(--cyan-c-range)) var(--cyan-h));--cyan-450:oklch(calc(var(--l-min) + 0.55 * var(--l-range)) calc(var(--c-min) + 0.9 * var(--cyan-c-range)) var(--cyan-h));--cyan-500:oklch(calc(var(--l-min) + 0.5 * var(--l-range)) calc(var(--c-min) + 1 * var(--cyan-c-range)) var(--cyan-h));--cyan-550:oklch(calc(var(--l-min) + 0.45 * var(--l-range)) calc(var(--c-min) + 0.9 * var(--cyan-c-range)) var(--cyan-h));--cyan-600:oklch(calc(var(--l-min) + 0.4 * var(--l-range)) calc(var(--c-min) + 0.8 * var(--cyan-c-range)) var(--cyan-h));--cyan-650:oklch(calc(var(--l-min) + 0.35 * var(--l-range)) calc(var(--c-min) + 0.7 * var(--cyan-c-range)) var(--cyan-h));--cyan-700:oklch(calc(var(--l-min) + 0.3 * var(--l-range)) calc(var(--c-min) + 0.6 * var(--cyan-c-range)) var(--cyan-h));--cyan-750:oklch(calc(var(--l-min) + 0.25 * var(--l-range)) calc(var(--c-min) + 0.5 * var(--cyan-c-range)) var(--cyan-h));--cyan-800:oklch(calc(var(--l-min) + 0.2 * var(--l-range)) calc(var(--c-min) + 0.4 * var(--cyan-c-range)) var(--cyan-h));--cyan-850:oklch(calc(var(--l-min) + 0.15 * var(--l-range)) calc(var(--c-min) + 0.3 * var(--cyan-c-range)) var(--cyan-h));--cyan-900:oklch(calc(var(--l-min) + 0.1 * var(--l-range)) calc(var(--c-min) + 0.2 * var(--cyan-c-range)) var(--cyan-h));--cyan-950:oklch(calc(var(--l-min) + 0.05 * var(--l-range)) calc(var(--c-min) + 0.1 * var(--cyan-c-range)) var(--cyan-h));--black:oklch(
|
|
2
|
-
calc(var(--l-min) + 0.0 * var(--l-range))
|
|
3
|
-
calc(var(--c-min) + 0.0 * var(--gray-c-range))
|
|
4
|
-
var(--gray-h)
|
|
5
|
-
);--white:oklch(
|
|
6
|
-
calc(var(--l-min) + 1.0 * var(--l-range))
|
|
7
|
-
calc(var(--c-min) + 0.0 * var(--gray-c-range))
|
|
8
|
-
var(--gray-h)
|
|
9
|
-
);}
|