@stackflow/plugin-basic-ui 0.21.3 → 0.21.4-alpha.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js.map CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../src/index.ts", "../src/basicUIPlugin.tsx", "../src/theme.css.ts", "../src/utils/compact.ts", "../src/utils/compactMap.ts", "../src/utils/listenOnce.ts", "../src/utils/listenResize.ts", "../src/utils/noop.ts", "../src/utils/requestNextFrame.tsx", "../src/components/AppScreen.tsx", "../src/hooks/useLazy.tsx", "../src/hooks/useMaxWidth.ts", "../src/hooks/useNullableActivity.ts", "../src/hooks/useStyleEffect.ts", "../src/hooks/useStyleEffectHide.ts", "../src/hooks/useStyleEffectOffset.ts", "../src/hooks/useStyleEffectSwipeBack.ts", "../src/components/AppBar.tsx", "../src/assets/IconBack.tsx", "../src/assets/IconClose.tsx", "../src/components/AppBar.css.ts", "../src/components/AppScreen.css.ts", "../src/components/BottomSheet.tsx", "../src/components/BottomSheet.css.ts", "../src/components/Modal.tsx", "../src/components/Modal.css.ts"],
4
- "sourcesContent": ["export { basicUIPlugin } from \"./basicUIPlugin\";\nexport {\n default as AppScreen,\n AppScreenContext,\n AppScreenProps,\n useAppScreen,\n} from \"./components/AppScreen\";\nexport {\n default as BottomSheet,\n BottomSheetProps,\n} from \"./components/BottomSheet\";\nexport { default as Modal, ModalProps } from \"./components/Modal\";\nexport { globalVars as cssVars } from \"./theme.css\";\n", "import type { StackflowReactPlugin } from \"@stackflow/react\";\nimport { assignInlineVars } from \"@vanilla-extract/dynamic\";\nimport React, { createContext, useContext } from \"react\";\n\nimport * as theme from \"./theme.css\";\nimport type { RecursivePartial } from \"./utils\";\nimport { compact, compactMap } from \"./utils\";\n\ntype BasicUIPluginOptions = RecursivePartial<theme.GlobalVars> & {\n theme: \"android\" | \"cupertino\";\n rootClassName?: string;\n appBar?: {\n backButton?:\n | {\n renderIcon?: () => React.ReactNode;\n ariaLabel?: string;\n }\n | {\n render?: () => React.ReactNode;\n };\n closeButton?:\n | {\n renderIcon?: () => React.ReactNode;\n ariaLabel?: string;\n onClick?: (e: React.MouseEvent<HTMLButtonElement>) => void;\n }\n | {\n render?: () => React.ReactNode;\n };\n };\n};\n\nconst GlobalOptionsContext = createContext<BasicUIPluginOptions>({\n theme: \"android\",\n});\n\nexport const GlobalOptionsProvider = GlobalOptionsContext.Provider;\n\nexport function useGlobalOptions() {\n return useContext(GlobalOptionsContext);\n}\n\nexport const basicUIPlugin: (\n options: BasicUIPluginOptions,\n) => StackflowReactPlugin = (options) => () => ({\n key: \"basic-ui\",\n wrapStack({ stack }) {\n return (\n <GlobalOptionsProvider value={options}>\n <div\n className={\n typeof window !== \"undefined\"\n ? compact([theme[options.theme], options.rootClassName]).join(\" \")\n : options.rootClassName\n }\n style={assignInlineVars(\n compactMap({\n [theme.globalVars.backgroundColor]: options.backgroundColor,\n [theme.globalVars.dimBackgroundColor]: options.dimBackgroundColor,\n [theme.globalVars.appBar.borderColor]:\n options.appBar?.borderColor,\n [theme.globalVars.appBar.borderSize]: options.appBar?.borderSize,\n [theme.globalVars.appBar.height]: options.appBar?.height,\n [theme.globalVars.appBar.iconColor]: options.appBar?.iconColor,\n [theme.globalVars.appBar.textColor]: options.appBar?.textColor,\n [theme.globalVars.bottomSheet.borderRadius]:\n options.bottomSheet?.borderRadius,\n [theme.globalVars.modal.borderRadius]:\n options.modal?.borderRadius,\n }),\n )}\n >\n {stack.render()}\n </div>\n </GlobalOptionsProvider>\n );\n },\n});\n", "import 'src/theme.css.ts.vanilla.css?source=#H4sIAAAAAAAAE+2U30rDMBTG7/cUAW8UltJWyyDik4iMNEnbYJMTTk5xTHx3s+Hu1LW9kdmRQP5+X044P45AAFozcRietSTJI0n12vTwxkM/tNbzWkar+GA5dcaZJ+k1gtUv7H3FGP/lep0OWoTBa66gBxTspmmaxzMqbd03SmxreZuv2VfPiurunJEMIS2Q14Da4E9G+WaqUbR7I1gRdmN1nbFtR4LdZxUaN03FCaWPlix4rgeUh4lg5aZycayRS5vzQrAqvXpKXVmk9jBWSmZHM6XzsKmBCByPnTF0yhRKbYeYcnX888dqAuRqCAbJelg45nlWTQe9zDZ/TvrEGP4b6tkR4+22UBCC2+fLpvharC+e4GLZBF/r8EVS/AmYPn1EXgsAAA==';\nexport var android = 'theme__1coppmz0';\nexport var cupertino = 'theme__1coppmz1';\nexport var globalVars = {backgroundColor:'var(--stackflow-plugin-basic-ui-background-color)',dimBackgroundColor:'var(--stackflow-plugin-basic-ui-dim-background-color)',appBar:{borderColor:'var(--stackflow-plugin-basic-ui-app-bar-border-color)',borderSize:'var(--stackflow-plugin-basic-ui-app-bar-border-size)',height:'var(--stackflow-plugin-basic-ui-app-bar-height)',heightTransitionDuration:'var(--stackflow-plugin-basic-ui-app-bar-height-transition-duration)',minHeight:'var(--stackflow-plugin-basic-ui-app-bar-min-height)',iconColor:'var(--stackflow-plugin-basic-ui-app-bar-icon-color)',textColor:'var(--stackflow-plugin-basic-ui-app-bar-text-color)',backgroundColor:'var(--stackflow-plugin-basic-ui-app-bar-background-color)'},bottomSheet:{borderRadius:'var(--stackflow-plugin-basic-ui-bottom-sheet-border-radius)'},modal:{borderRadius:'var(--stackflow-plugin-basic-ui-bottom-sheet-border-radius)'}};\nexport var rootAndroid = ':root[data-stackflow-plugin-basic-ui-theme=android]';\nexport var rootCupertino = ':root[data-stackflow-plugin-basic-ui-theme=cupertino]';", "export function compact<T>(arr: Array<T>): Array<NonNullable<T>> {\n return arr.filter(\n (item): item is NonNullable<typeof item> =>\n item !== undefined && item !== null,\n );\n}\n", "export function compactMap<T extends {}>(\n obj: T,\n): {\n [key in keyof T]: NonNullable<T[key]>;\n} {\n return Object.entries(obj).reduce<any>((acc, [key, value]) => {\n if (value !== null && value !== undefined) {\n acc[key] = value;\n }\n\n return acc;\n }, {});\n}\n", "export function listenOnce<T extends HTMLElement>(\n el: T,\n type: keyof HTMLElementEventMap,\n cb: () => void,\n) {\n const listener = () => {\n el.removeEventListener(type, listener);\n cb();\n };\n\n el.addEventListener(type, listener);\n}\n", "export const listenResize = (cb: () => void) => {\n cb();\n window.addEventListener(\"resize\", cb);\n\n return () => {\n window.removeEventListener(\"resize\", cb);\n };\n};\n", "export const noop = () => {};\n", "// https://github.com/MingruiZhang/react-animate-mount/blob/32300c04a4fdfa97724b70aaaf0c0f403d6da247/src/Animate.js#L171-L179\nexport function requestNextFrame(cb: () => void) {\n requestAnimationFrame(() => {\n requestAnimationFrame(() => {\n cb();\n });\n });\n}\n", "/* eslint-disable no-param-reassign */\n\nimport { useActions } from \"@stackflow/react\";\nimport { assignInlineVars } from \"@vanilla-extract/dynamic\";\nimport React, { createContext, useContext, useMemo, useRef } from \"react\";\n\nimport { useGlobalOptions } from \"../basicUIPlugin\";\nimport {\n useLazy,\n useNullableActivity,\n useStyleEffectHide,\n useStyleEffectOffset,\n useStyleEffectSwipeBack,\n} from \"../hooks\";\nimport type { GlobalVars } from \"../theme.css\";\nimport { globalVars } from \"../theme.css\";\nimport type { PropOf } from \"../utils\";\nimport { compactMap } from \"../utils\";\nimport AppBar from \"./AppBar\";\nimport * as css from \"./AppScreen.css\";\n\nexport type AppScreenContext = {\n scroll: (args: { top: number }) => void;\n};\nconst Context = createContext<AppScreenContext>(null as any);\n\nexport function useAppScreen() {\n return useContext(Context);\n}\n\nexport type AppScreenProps = Partial<\n Pick<GlobalVars, \"backgroundColor\" | \"dimBackgroundColor\">\n> & {\n appBar?: Omit<PropOf<typeof AppBar>, \"theme\" | \"ref\" | \"key\">;\n preventSwipeBack?: boolean;\n modalPresentationStyle?: \"fullScreen\";\n children: React.ReactNode;\n};\nconst AppScreen: React.FC<AppScreenProps> = ({\n backgroundColor,\n dimBackgroundColor,\n appBar,\n preventSwipeBack,\n modalPresentationStyle,\n children,\n}) => {\n const globalOptions = useGlobalOptions();\n const activity = useNullableActivity();\n\n const { pop } = useActions();\n\n const appScreenRef = useRef<HTMLDivElement>(null);\n const dimRef = useRef<HTMLDivElement>(null);\n const paperRef = useRef<HTMLDivElement>(null);\n const edgeRef = useRef<HTMLDivElement>(null);\n const appBarRef = useRef<HTMLDivElement>(null);\n\n const presentModalFullScreen = modalPresentationStyle === \"fullScreen\";\n const swipeBackPrevented = preventSwipeBack || presentModalFullScreen;\n\n useStyleEffectHide({\n refs: [appScreenRef],\n hasEffect: true,\n });\n useStyleEffectOffset({\n theme: globalOptions.theme,\n refs:\n globalOptions.theme === \"cupertino\" ? [paperRef] : [paperRef, appBarRef],\n hasEffect: !presentModalFullScreen,\n });\n useStyleEffectSwipeBack({\n theme: globalOptions.theme,\n dimRef,\n edgeRef,\n paperRef,\n hasEffect: true,\n prevented: swipeBackPrevented,\n onSwiped() {\n pop();\n },\n });\n\n const hasAppBar = !!appBar;\n\n const zIndexBase = (activity?.zIndex ?? 0) * 5;\n const zIndexDim = zIndexBase;\n const zIndexPaper =\n zIndexBase + (globalOptions.theme === \"cupertino\" && hasAppBar ? 1 : 3);\n const zIndexEdge = zIndexBase + 4;\n const zIndexAppBar =\n globalOptions.theme === \"cupertino\" ? zIndexBase + 7 : zIndexBase + 4;\n\n const transitionState = activity?.transitionState ?? \"enter-done\";\n const lazyTransitionState = useLazy(transitionState);\n\n const onAppBarTopClick: React.MouseEventHandler = (e) => {\n appBar?.onTopClick?.(e);\n\n if (!e.defaultPrevented) {\n paperRef.current?.scroll({\n top: 0,\n behavior: \"smooth\",\n });\n }\n };\n\n return (\n <Context.Provider\n value={useMemo(\n () => ({\n scroll({ top }) {\n paperRef?.current?.scroll({\n top,\n behavior: \"smooth\",\n });\n },\n }),\n [paperRef],\n )}\n >\n <div\n ref={appScreenRef}\n className={css.appScreen({\n transitionState:\n transitionState === \"enter-done\" || transitionState === \"exit-done\"\n ? transitionState\n : lazyTransitionState,\n })}\n style={assignInlineVars(\n compactMap({\n [globalVars.backgroundColor]: backgroundColor,\n [globalVars.dimBackgroundColor]: dimBackgroundColor,\n [globalVars.appBar.height]: appBar?.height,\n [globalVars.appBar.heightTransitionDuration]:\n appBar?.heightTransitionDuration,\n [css.vars.zIndexes.dim]: `${zIndexDim}`,\n [css.vars.zIndexes.paper]: `${zIndexPaper}`,\n [css.vars.zIndexes.edge]: `${zIndexEdge}`,\n [css.vars.zIndexes.appBar]: `${zIndexAppBar}`,\n [css.vars.transitionDuration]:\n transitionState === \"enter-active\" ||\n transitionState === \"exit-active\"\n ? `var(--stackflow-transition-duration)`\n : \"0ms\",\n }),\n )}\n >\n <div className={css.dim} ref={dimRef} />\n {appBar && (\n <AppBar\n {...appBar}\n ref={appBarRef}\n modalPresentationStyle={modalPresentationStyle}\n onTopClick={onAppBarTopClick}\n />\n )}\n <div\n key={activity?.id}\n className={css.paper({\n hasAppBar,\n presentModalFullScreen,\n })}\n ref={paperRef}\n >\n {children}\n </div>\n {!activity?.isRoot &&\n globalOptions.theme === \"cupertino\" &&\n !swipeBackPrevented && (\n <div className={css.edge({ hasAppBar })} ref={edgeRef} />\n )}\n </div>\n </Context.Provider>\n );\n};\n\nAppScreen.displayName = \"AppScreen\";\n\nexport default AppScreen;\n", "import { useEffect, useState } from \"react\";\n\nimport { requestNextFrame } from \"../utils\";\n\nexport function useLazy<T>(value: T) {\n const [state, setState] = useState<T | undefined>(undefined);\n\n useEffect(() => {\n requestNextFrame(() => {\n setState(value);\n });\n }, [value]);\n\n return state;\n}\n", "import type React from \"react\";\nimport { useEffect, useState } from \"react\";\n\nimport { listenResize, noop } from \"../utils\";\n\nexport function useMaxWidth({\n outerRef,\n innerRef,\n enable,\n}: {\n outerRef: React.ForwardedRef<any>;\n innerRef: React.MutableRefObject<any>;\n enable: boolean;\n}) {\n const [maxWidth, setMaxWidth] = useState<number | undefined>(undefined);\n\n useEffect(() => {\n const $outer = outerRef && \"current\" in outerRef && outerRef.current;\n const $inner = innerRef.current;\n\n if (!enable || !$outer || !$inner) {\n return noop;\n }\n\n const dispose = listenResize(() => {\n const screenWidth = $outer.clientWidth;\n\n const leftWidth = $inner.offsetLeft;\n const centerWidth = $inner.clientWidth;\n const rightWidth = screenWidth - leftWidth - centerWidth;\n\n const sideMargin = Math.max(leftWidth, rightWidth);\n\n setMaxWidth(screenWidth - 2 * sideMargin);\n });\n\n return dispose;\n }, []);\n\n return {\n maxWidth,\n };\n}\n", "import type { Activity } from \"@stackflow/core\";\nimport { useActivity } from \"@stackflow/react\";\n\nexport function useNullableActivity() {\n return useActivity() as Activity | null;\n}\n", "import type { ActivityTransitionState } from \"@stackflow/core\";\nimport type React from \"react\";\nimport { useEffect } from \"react\";\n\nimport { useNullableActivity } from \"./useNullableActivity\";\n\nconst connections: {\n [styleName: string]: Map<\n number,\n {\n refs: Array<React.RefObject<any>>;\n hasEffect: boolean;\n }\n >;\n} = {};\n\nexport function useStyleEffect({\n styleName,\n refs,\n effect,\n effectDeps,\n}: {\n styleName: string;\n refs: Array<React.RefObject<any>>;\n effect?: (params: {\n activityTransitionState: ActivityTransitionState;\n refs: Array<React.RefObject<HTMLElement>>;\n }) => (() => void) | void;\n effectDeps?: any[];\n}) {\n const activity = useNullableActivity();\n\n useEffect(() => {\n if (!activity) {\n return () => {};\n }\n if (!connections[styleName]) {\n connections[styleName] = new Map();\n }\n\n connections[styleName].set(activity.zIndex, {\n refs,\n hasEffect: !!effect,\n });\n\n return () => {\n connections[styleName].delete(activity.zIndex);\n };\n }, [activity?.id, refs, effect]);\n\n useEffect(() => {\n if (!activity) {\n return () => {};\n }\n if (!effect) {\n return () => {};\n }\n\n const refs = (() => {\n let arr: Array<React.RefObject<any>> = [];\n\n for (let i = 1; i <= activity.zIndex; i += 1) {\n const connection = connections[styleName].get(activity.zIndex - i);\n\n if (connection?.refs) {\n arr = [...arr, ...connection.refs];\n }\n if (connection?.hasEffect) {\n break;\n }\n }\n\n return arr;\n })();\n\n const cleanup = effect({\n activityTransitionState: activity.transitionState,\n refs,\n });\n\n return () => {\n cleanup?.();\n };\n }, [activity?.transitionState, ...(effectDeps ?? [])]);\n}\n", "/* eslint-disable no-param-reassign */\n\nimport type React from \"react\";\n\nimport { useStyleEffect } from \"./useStyleEffect\";\n\nexport function useStyleEffectHide({\n refs,\n hasEffect,\n}: {\n refs: Array<React.RefObject<any>>;\n hasEffect?: boolean;\n}) {\n useStyleEffect({\n styleName: \"hide\",\n refs,\n effect: hasEffect\n ? ({ activityTransitionState, refs }) => {\n const cleanup = () => {\n refs.forEach((ref) => {\n if (!ref.current) {\n return;\n }\n const $ref = ref.current;\n\n $ref.style.display = \"\";\n });\n };\n\n switch (activityTransitionState) {\n case \"enter-done\": {\n refs.forEach((ref) => {\n if (!ref.current) {\n return;\n }\n const $ref = ref.current;\n\n $ref.style.display = \"none\";\n });\n\n return () => {\n cleanup();\n };\n }\n default: {\n cleanup();\n\n return () => {};\n }\n }\n }\n : undefined,\n });\n}\n", "/* eslint-disable no-param-reassign */\n\nimport { listenOnce, requestNextFrame } from \"../utils\";\nimport { useStyleEffect } from \"./useStyleEffect\";\n\nexport const OFFSET_PX_ANDROID = 32;\nexport const OFFSET_PX_CUPERTINO = 80;\n\nexport function useStyleEffectOffset({\n refs,\n theme,\n hasEffect,\n}: {\n refs: Array<React.RefObject<any>>;\n theme: \"android\" | \"cupertino\";\n hasEffect?: boolean;\n}) {\n useStyleEffect({\n styleName: \"offset\",\n refs,\n effect: hasEffect\n ? ({ activityTransitionState, refs }) => {\n const transform =\n theme === \"cupertino\"\n ? `translate3d(-${OFFSET_PX_CUPERTINO / 16}rem, 0, 0)`\n : `translate3d(0, -${OFFSET_PX_ANDROID / 16}rem, 0)`;\n\n const cleanup = () => {\n requestNextFrame(() => {\n refs.forEach((ref) => {\n if (!ref.current) {\n return;\n }\n\n const $el = ref.current;\n\n $el.style.transform = \"\";\n\n listenOnce($el, \"transitionend\", () => {\n $el.style.transition = \"\";\n });\n });\n });\n };\n\n switch (activityTransitionState) {\n case \"enter-active\":\n case \"enter-done\": {\n refs.forEach((ref) => {\n if (!ref.current) {\n return;\n }\n\n ref.current.style.transition = `var(--stackflow-transition-duration)`;\n ref.current.style.transform = transform;\n });\n\n switch (activityTransitionState) {\n case \"enter-done\":\n return () => {\n cleanup();\n };\n case \"enter-active\":\n default:\n return () => {};\n }\n }\n case \"exit-active\":\n case \"exit-done\": {\n requestNextFrame(() => {\n cleanup();\n });\n\n return () => {};\n }\n default: {\n return () => {};\n }\n }\n }\n : undefined,\n });\n}\n", "/* eslint-disable no-param-reassign */\n\nimport { listenOnce } from \"../utils\";\nimport { useStyleEffect } from \"./useStyleEffect\";\nimport { OFFSET_PX_CUPERTINO } from \"./useStyleEffectOffset\";\n\nexport function useStyleEffectSwipeBack({\n theme,\n dimRef,\n edgeRef,\n paperRef,\n hasEffect,\n prevented,\n onSwiped,\n}: {\n theme: \"android\" | \"cupertino\";\n dimRef: React.RefObject<HTMLDivElement>;\n edgeRef: React.RefObject<HTMLDivElement>;\n paperRef: React.RefObject<HTMLDivElement>;\n hasEffect?: boolean;\n prevented?: boolean;\n onSwiped?: () => void;\n}) {\n useStyleEffect({\n styleName: \"swipe-back\",\n refs: [paperRef],\n effect: hasEffect\n ? ({ refs }) => {\n if (theme !== \"cupertino\") {\n return () => {};\n }\n\n if (!dimRef.current || !edgeRef.current || !paperRef.current) {\n return () => {};\n }\n\n const $dim = dimRef.current;\n const $edge = edgeRef.current;\n const $paper = paperRef.current;\n\n let x0: number | null = null;\n let t0: number | null = null;\n let x: number | null = null;\n\n let cachedRefs: Array<{\n style: {\n transform: string;\n transition: string;\n };\n parentElement?: {\n style: {\n display: string;\n };\n };\n }> = [];\n\n const resetState = () => {\n x0 = null;\n t0 = null;\n x = null;\n cachedRefs = [];\n };\n\n let _rAFLock = false;\n\n function movePaper(dx: number) {\n if (!_rAFLock) {\n _rAFLock = true;\n\n requestAnimationFrame(() => {\n const p = dx / $paper.clientWidth;\n\n $dim.style.opacity = `${1 - p}`;\n $dim.style.transition = \"0s\";\n\n $paper.style.overflowY = \"hidden\";\n $paper.style.transform = `translate3d(${dx}px, 0, 0)`;\n $paper.style.transition = \"0s\";\n\n refs.forEach((ref) => {\n if (!ref.current) {\n return;\n }\n\n ref.current.style.transform = `translate3d(${\n -1 * (1 - p) * OFFSET_PX_CUPERTINO\n }px, 0, 0)`;\n ref.current.style.transition = \"0s\";\n\n if (ref.current.parentElement?.style.display === \"none\") {\n ref.current.parentElement.style.display = \"block\";\n }\n });\n\n _rAFLock = false;\n });\n }\n }\n\n function resetPaper({ swiped }: { swiped: boolean }): Promise<void> {\n return new Promise((resolve) => {\n requestAnimationFrame(() => {\n $dim.style.opacity = `${swiped ? 0 : 1}`;\n $dim.style.transition = \"var(--stackflow-transition-duration)\";\n\n $paper.style.overflowY = \"hidden\";\n $paper.style.transform = `translateX(${swiped ? \"100%\" : \"0\"})`;\n $paper.style.transition =\n \"var(--stackflow-transition-duration)\";\n\n refs.forEach((ref) => {\n if (!ref.current) {\n return;\n }\n\n ref.current.style.transition = `var(--stackflow-transition-duration)`;\n ref.current.style.transform = `translate3d(${\n swiped ? \"0\" : `-${OFFSET_PX_CUPERTINO / 16}rem`\n }, 0, 0)`;\n });\n\n const _cachedRefs = [...cachedRefs];\n\n resolve();\n\n listenOnce($paper, \"transitionend\", () => {\n $dim.style.opacity = \"\";\n $paper.style.overflowY = \"\";\n $paper.style.transform = \"\";\n\n refs.forEach((ref, i) => {\n if (!ref.current) {\n return;\n }\n\n const _cachedRef = _cachedRefs[i];\n\n if (swiped) {\n ref.current.style.transition = \"\";\n ref.current.style.transform = \"\";\n\n if (ref.current.parentElement) {\n ref.current.parentElement.style.display = \"\";\n }\n } else if (_cachedRef) {\n ref.current.style.transition =\n _cachedRef.style.transition;\n ref.current.style.transform = _cachedRef.style.transform;\n\n if (\n ref.current.parentElement &&\n _cachedRef.parentElement\n ) {\n ref.current.parentElement.style.display =\n _cachedRef.parentElement.style.display;\n }\n }\n });\n });\n });\n });\n }\n\n const onTouchStart = (e: TouchEvent) => {\n const { activeElement } = document as any;\n\n activeElement?.blur?.();\n // eslint-disable-next-line no-multi-assign\n x0 = x = e.touches[0].clientX;\n t0 = Date.now();\n\n cachedRefs = refs.map((ref) => {\n if (!ref.current) {\n return {\n style: {\n transform: \"\",\n transition: \"\",\n },\n };\n }\n\n return {\n style: {\n transform: ref.current.style.transform,\n transition: ref.current.style.transition,\n },\n parentElement: ref.current.parentElement\n ? {\n style: {\n display: ref.current.parentElement.style.display,\n },\n }\n : undefined,\n };\n });\n };\n\n const onTouchMove = (e: TouchEvent) => {\n if (!x0) {\n resetState();\n return;\n }\n\n x = e.touches[0].clientX;\n\n movePaper(x - x0);\n };\n\n const onTouchEnd = () => {\n if (!x0 || !t0 || !x) {\n resetState();\n return;\n }\n\n const t = Date.now();\n const v = (x - x0) / (t - t0);\n const swiped = v > 1 || x / $paper.clientWidth > 0.4;\n\n if (swiped) {\n onSwiped?.();\n }\n\n Promise.resolve()\n .then(() => resetPaper({ swiped }))\n .then(() => resetState());\n };\n\n $edge.addEventListener(\"touchstart\", onTouchStart, { passive: true });\n $edge.addEventListener(\"touchmove\", onTouchMove, { passive: true });\n $edge.addEventListener(\"touchend\", onTouchEnd, { passive: true });\n $edge.addEventListener(\"touchcancel\", onTouchEnd, { passive: true });\n\n return () => {\n $edge.removeEventListener(\"touchstart\", onTouchStart);\n $edge.removeEventListener(\"touchmove\", onTouchMove);\n $edge.removeEventListener(\"touchend\", onTouchEnd);\n $edge.removeEventListener(\"touchcancel\", onTouchEnd);\n };\n }\n : undefined,\n effectDeps: [prevented],\n });\n}\n", "import { useActions } from \"@stackflow/react\";\nimport { assignInlineVars } from \"@vanilla-extract/dynamic\";\nimport React, { useRef } from \"react\";\n\nimport { IconBack, IconClose } from \"../assets\";\nimport { useGlobalOptions } from \"../basicUIPlugin\";\nimport { useMaxWidth, useNullableActivity } from \"../hooks\";\nimport type { GlobalVars } from \"../theme.css\";\nimport { globalVars } from \"../theme.css\";\nimport { compactMap } from \"../utils\";\nimport * as css from \"./AppBar.css\";\nimport * as appScreenCss from \"./AppScreen.css\";\n\ntype AppBarProps = Partial<\n Pick<\n GlobalVars[\"appBar\"],\n | \"borderColor\"\n | \"borderSize\"\n | \"height\"\n | \"heightTransitionDuration\"\n | \"iconColor\"\n | \"textColor\"\n | \"backgroundColor\"\n >\n> & {\n title?: React.ReactNode;\n appendLeft?: () => React.ReactNode;\n appendRight?: () => React.ReactNode;\n backButton?:\n | {\n renderIcon?: () => React.ReactNode;\n ariaLabel?: string;\n onClick?: (e: React.MouseEvent<HTMLButtonElement>) => void;\n }\n | {\n render?: () => React.ReactNode;\n };\n closeButton?:\n | {\n renderIcon?: () => React.ReactNode;\n ariaLabel?: string;\n onClick?: (e: React.MouseEvent<HTMLButtonElement>) => void;\n }\n | {\n render?: () => React.ReactNode;\n };\n closeButtonLocation?: \"left\" | \"right\";\n border?: boolean;\n modalPresentationStyle?: \"fullScreen\";\n onTopClick?: (e: React.MouseEvent) => void;\n};\nconst AppBar = React.forwardRef<HTMLDivElement, AppBarProps>(\n (\n {\n title,\n appendLeft,\n appendRight,\n backButton,\n closeButton,\n closeButtonLocation = \"left\",\n border = true,\n modalPresentationStyle,\n iconColor,\n textColor,\n borderColor,\n borderSize,\n height,\n backgroundColor,\n onTopClick,\n },\n ref,\n ) => {\n const actions = useActions();\n const activity = useNullableActivity();\n\n const globalOptions = useGlobalOptions();\n const globalCloseButton = globalOptions.appBar?.closeButton;\n const globalBackButton = globalOptions.appBar?.backButton;\n\n const centerRef = useRef<any>(null);\n\n const { maxWidth } = useMaxWidth({\n outerRef: ref,\n innerRef: centerRef,\n enable: globalOptions.theme === \"cupertino\",\n });\n\n const presentModalFullScreen = modalPresentationStyle === \"fullScreen\";\n\n const onBackClick = (e: React.MouseEvent<HTMLButtonElement>) => {\n if (backButton && \"onClick\" in backButton && backButton.onClick) {\n backButton.onClick(e);\n }\n\n if (!e.defaultPrevented) {\n actions.pop();\n }\n };\n\n const renderBackButton = () => {\n if (!activity) {\n return null;\n }\n if (activity.isRoot) {\n return null;\n }\n\n if (!backButton && !globalBackButton) {\n return (\n <button\n type=\"button\"\n className={css.backButton}\n onClick={onBackClick}\n >\n <IconBack />\n </button>\n );\n }\n\n if (backButton && \"render\" in backButton && backButton.render) {\n return backButton.render?.();\n }\n if (\n globalBackButton &&\n \"render\" in globalBackButton &&\n globalBackButton.render\n ) {\n return globalBackButton.render?.();\n }\n\n return (\n <button\n type=\"button\"\n className={css.backButton}\n aria-label={\n backButton && \"ariaLabel\" in backButton\n ? backButton.ariaLabel\n : globalBackButton && \"ariaLabel\" in globalBackButton\n ? globalBackButton.ariaLabel\n : undefined\n }\n onClick={onBackClick}\n >\n {(() => {\n if (\n backButton &&\n \"renderIcon\" in backButton &&\n backButton.renderIcon\n ) {\n return backButton.renderIcon();\n }\n if (\n globalBackButton &&\n \"renderIcon\" in globalBackButton &&\n globalBackButton.renderIcon\n ) {\n return globalBackButton.renderIcon();\n }\n\n if (presentModalFullScreen) {\n return <IconClose />;\n }\n\n return <IconBack />;\n })()}\n </button>\n );\n };\n\n const onCloseClick = (e: React.MouseEvent<HTMLButtonElement>) => {\n if (closeButton && \"onClick\" in closeButton && closeButton.onClick) {\n closeButton.onClick(e);\n }\n\n if (\n !e.defaultPrevented &&\n globalCloseButton &&\n \"onClick\" in globalCloseButton\n ) {\n globalCloseButton.onClick?.(e);\n }\n };\n\n const renderCloseButton = () => {\n const isRoot = !activity || activity.isRoot;\n\n const showCloseButton = (closeButton: AppBarProps[\"closeButton\"]) =>\n (closeButton && \"render\" in closeButton && closeButton.render) ||\n (closeButton &&\n \"renderIcon\" in closeButton &&\n closeButton.renderIcon) ||\n (closeButton && \"onClick\" in closeButton && closeButton.onClick);\n\n if (\n !(\n showCloseButton(closeButton) ||\n showCloseButton(globalOptions.appBar?.closeButton)\n ) ||\n !isRoot\n ) {\n return null;\n }\n if (closeButton && \"render\" in closeButton && closeButton.render) {\n return closeButton.render();\n }\n if (\n globalCloseButton &&\n \"render\" in globalCloseButton &&\n globalCloseButton.render\n ) {\n return globalCloseButton.render();\n }\n\n return (\n <button\n type=\"button\"\n className={css.closeButton}\n aria-label={\n closeButton && \"ariaLabel\" in closeButton\n ? closeButton.ariaLabel\n : globalCloseButton && \"ariaLabel\" in globalCloseButton\n ? globalCloseButton.ariaLabel\n : undefined\n }\n onClick={onCloseClick}\n >\n {(() => {\n if (\n closeButton &&\n \"renderIcon\" in closeButton &&\n closeButton.renderIcon\n ) {\n return closeButton.renderIcon();\n }\n if (\n globalCloseButton &&\n \"renderIcon\" in globalCloseButton &&\n globalCloseButton.renderIcon\n ) {\n return globalCloseButton.renderIcon();\n }\n\n return <IconClose />;\n })()}\n </button>\n );\n };\n\n const hasLeft = !!(\n (closeButtonLocation === \"left\" && closeButton) ||\n backButton ||\n appendLeft\n );\n\n return (\n <div\n ref={ref}\n className={css.appBar({\n border,\n presentModalFullScreen,\n })}\n style={assignInlineVars(\n compactMap({\n [globalVars.appBar.iconColor]: iconColor,\n [globalVars.appBar.textColor]: textColor,\n [globalVars.appBar.borderColor]: borderColor,\n [globalVars.appBar.borderSize]: borderSize,\n [globalVars.appBar.height]: height,\n [globalVars.appBar.backgroundColor]:\n backgroundColor || globalVars.backgroundColor,\n [appScreenCss.vars.appBar.center.mainWidth]: `${maxWidth}px`,\n }),\n )}\n >\n <div className={css.safeArea} />\n <div className={css.container}>\n <div className={css.left}>\n {closeButtonLocation === \"left\" && renderCloseButton()}\n {renderBackButton()}\n {appendLeft?.()}\n </div>\n <div ref={centerRef} className={css.center}>\n <div\n className={css.centerMain({\n hasLeft,\n })}\n >\n {typeof title === \"string\" ? (\n <div className={css.centerText}>{title}</div>\n ) : (\n title\n )}\n <button\n className={css.centerMainEdge}\n type=\"button\"\n aria-hidden=\"true\"\n onClick={onTopClick}\n />\n </div>\n </div>\n <div className={css.right}>\n {appendRight?.()}\n {closeButtonLocation === \"right\" && renderCloseButton()}\n </div>\n </div>\n </div>\n );\n },\n);\n\nAppBar.displayName = \"AppBar\";\n\nexport default AppBar;\n", "import React from \"react\";\n\nconst IconBack: React.FC<{\n className?: string;\n}> = (props) => (\n <svg\n className={props.className}\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M11.5659 5.56564C11.8783 5.25322 11.8783 4.74669 11.5659 4.43427C11.2535 4.12185 10.7469 4.12185 10.4345 4.43427L3.43451 11.4343C3.12209 11.7467 3.12209 12.2532 3.43451 12.5656L10.4345 19.5656C10.7469 19.8781 11.2535 19.8781 11.5659 19.5656C11.8783 19.2532 11.8783 18.7467 11.5659 18.4343L5.93157 12.8H20.0002C20.442 12.8 20.8002 12.4418 20.8002 12C20.8002 11.5581 20.442 11.2 20.0002 11.2H5.93157L11.5659 5.56564Z\"\n fill=\"currentColor\"\n />\n </svg>\n);\n\nexport default IconBack;\n", "import React from \"react\";\n\nconst IconClose: React.FC<{\n className?: string;\n}> = (props) => (\n <svg\n className={props.className}\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M6.56588 5.43433C6.25346 5.12191 5.74693 5.12191 5.43451 5.43433C5.12209 5.74675 5.12209 6.25328 5.43451 6.5657L10.8688 12L5.43451 17.4343C5.12209 17.7467 5.12209 18.2533 5.43451 18.5657C5.74693 18.8781 6.25346 18.8781 6.56588 18.5657L12.0002 13.1314L17.4345 18.5657C17.7469 18.8781 18.2535 18.8781 18.5659 18.5657C18.8783 18.2533 18.8783 17.7467 18.5659 17.4343L13.1316 12L18.5659 6.5657C18.8783 6.25328 18.8783 5.74675 18.5659 5.43433C18.2535 5.12191 17.7469 5.12191 17.4345 5.43433L12.0002 10.8686L6.56588 5.43433Z\"\n fill=\"currentColor\"\n />\n <path\n d=\"M6.56588 5.43433C6.25346 5.12191 5.74693 5.12191 5.43451 5.43433C5.12209 5.74675 5.12209 6.25328 5.43451 6.5657L10.8688 12L5.43451 17.4343C5.12209 17.7467 5.12209 18.2533 5.43451 18.5657C5.74693 18.8781 6.25346 18.8781 6.56588 18.5657L12.0002 13.1314L17.4345 18.5657C17.7469 18.8781 18.2535 18.8781 18.5659 18.5657C18.8783 18.2533 18.8783 17.7467 18.5659 17.4343L13.1316 12L18.5659 6.5657C18.8783 6.25328 18.8783 5.74675 18.5659 5.43433C18.2535 5.12191 17.7469 5.12191 17.4345 5.43433L12.0002 10.8686L6.56588 5.43433Z\"\n fill=\"currentColor\"\n />\n </svg>\n);\n\nexport default IconClose;\n", "import 'src/styles/f.css.ts.vanilla.css?source=LmZfX2RodGh4cTAgewogIHdpZHRoOiAxMDAlOwp9Ci5mX19kaHRoeHExIHsKICBoZWlnaHQ6IDEwMCU7Cn0KLmZfX2RodGh4cTIgewogIHRvcDogMDsKfQouZl9fZGh0aHhxMyB7CiAgbGVmdDogMDsKfQouZl9fZGh0aHhxNCB7CiAgcG9zaXRpb246IGFic29sdXRlOwp9Ci5mX19kaHRoeHE1IHsKICBwb3NpdGlvbjogcmVsYXRpdmU7Cn0KLmZfX2RodGh4cTcgewogIGRpc3BsYXk6IGZsZXg7Cn0KLmZfX2RodGh4cTggewogIGZsZXg6IDE7Cn0KLmZfX2RodGh4cTkgewogIGFsaWduLWl0ZW1zOiBjZW50ZXI7Cn0KLmZfX2RodGh4cWEgewogIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDsKfQouZl9fZGh0aHhxYiB7CiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7Cn0KLmZfX2RodGh4cWMgewogIG92ZXJmbG93OiBoaWRkZW47Cn0KLmZfX2RodGh4cWQgewogIHdoaXRlLXNwYWNlOiBub3dyYXA7Cn0KLmZfX2RodGh4cWUgewogIHRleHQtYWxpZ246IGNlbnRlcjsKfQouZl9fZGh0aHhxZiB7CiAgY3Vyc29yOiBwb2ludGVyOwogIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7Cn0KLmZfX2RodGh4cWcgewogIGJveC1zaXppbmc6IGJvcmRlci1ib3g7Cn0KLmZfX2RodGh4cWggewogIGJveC1zaXppbmc6IGNvbnRlbnQtYm94Owp9Ci5mX19kaHRoeHFpIHsKICBhcHBlYXJhbmNlOiBub25lOwogIGJvcmRlcjogMDsKICBwYWRkaW5nOiAwOwogIGJhY2tncm91bmQ6IG5vbmU7Cn0=';\nimport 'src/theme.css.ts.vanilla.css?source=#H4sIAAAAAAAAE+2U30rDMBTG7/cUAW8UltJWyyDik4iMNEnbYJMTTk5xTHx3s+Hu1LW9kdmRQP5+X044P45AAFozcRietSTJI0n12vTwxkM/tNbzWkar+GA5dcaZJ+k1gtUv7H3FGP/lep0OWoTBa66gBxTspmmaxzMqbd03SmxreZuv2VfPiurunJEMIS2Q14Da4E9G+WaqUbR7I1gRdmN1nbFtR4LdZxUaN03FCaWPlix4rgeUh4lg5aZycayRS5vzQrAqvXpKXVmk9jBWSmZHM6XzsKmBCByPnTF0yhRKbYeYcnX888dqAuRqCAbJelg45nlWTQe9zDZ/TvrEGP4b6tkR4+22UBCC2+fLpvharC+e4GLZBF/r8EVS/AmYPn1EXgsAAA==';\nimport 'src/components/AppScreen.css.ts.vanilla.css?source=#H4sIAAAAAAAAE71WTY/aMBC98yt8qQRqjMKy/QrqoVVVqYeeeqyq1WCbxGBsy3Ggpep/r52EkCxJCHS3K6TF2DPvzczzjKcftP5GDGPy4WFGxep+fv8a/R4htASyiY3KJMVECWUitAMzxji1bmMl1B5rkcVc4iWknOCMY8q3+LHVZDH6M5qeY7y5EWOo/7e5f2tAptxyJaPi+0qZbYlx2vuUGfD/K+NwEiClgXD7a8jhDgrkRMHDlgwEWDan41kYvghQ6D5d5jw3L2lEKFy41QFzSdnPY5oOX/yKpT7zld1s4k/uuRCYJCBjFh2deCC3VfxNbcK2zFkRpfX2EKI2CkF1PDJK2e8ULPQUJ3f5HiQ1itMfrR6PDn1sCeNxYiM0Cw3bLhpyiJDgkoHBsQHKmbTjm8QXIBMvYRwWmfbJnjSTcM7w3YVEtOzCxUirKs4uwS+vhyfD4cMOra2LYztm8ty6kykxSghfFLxnyw23uNottriMnaJVRpI+YWrQzFQwd+fSrK5HF7MoOhIocJdgcrKUp1qAYyqVZI2snml71pagdVAzuELdJHMRWS5Vq77XJ6fDL/+VzFsV+jzhXIYaQrj1fjwP4XaoQUUJB1WktU/eGktfp3xEujkHukPIe+mNYTypsPpiu1pWrXSfVFZ9dIeIqt7hB0ms5jKB1C0+gnmwJmMVwuY/PmECpIFS19OxVfriIwy0dguDiwFe84xp6Tpv9DWXESIgyMUh3nQ8QS8RUdIdd/M/hRXDYBi4SZMy651OngyFyV0XQOMW9fc7bVjqnipfFQXxOROi/LlRVBE03P1z4xuEWYfs74DlZOp6k25z8z2nNnFKn969Kh9uXeOf0fhEYz5Q97Lg6Mt5ZSUXtUdlrgQfDsLXuvE8/wIwJxtwFw0AAA==';\nimport 'src/components/AppBar.css.ts.vanilla.css?source=#H4sIAAAAAAAAE81XS2/cNhC+76/gpcC6MAVpH3GyRg4NigAFmlMOPQSBQUnUijFFCiS1Xm/R/16Sej8juZvGhgFb5HAe38x8HDq/pekHJB4evOfHLdrtXfD3CoCEMBhjcozVAZyQWEMoFQoeI8qfYEqzo972kSQBzAhEaao/BKzP3Nyv/lk5HcWeVexrLUfBMxbCgFMu5qvvntRGALhAwkJ8LrVc/jBfWJpDue2QRrvtbmeFnwilMIgRO+IDUAIxGXGR3AKeooCoZ+O0lip/HBXjBGsVAU/T5OKBXkC3DemD4Fx9CZFCE6FYje+DLMVCEca/9lXWGg1YKZdEEc4OAPmS00zhOT5+DgTGrIrd/1GOf99OO5oK8QJ8ihTehmvPdX+5Ba7+tUmyW0XUrpyO171aaIiFgpPwuxkpSkW7dj8ekY7FcwVOhkKqjhQVW+/9nglk/laAujdVac4RngNVJ2Xvfgx+y6zMcRT9L44OWBnJvjed/aKYaw70uQixeFAiw5XuTc6H/AxljEL+dACESayAm55BgGiwhh74dT47WgtQkgu+uQHu0nMlo7ZKaIIDU4ElZuoTDxH9mFFaINkKcHvb0vXfGHKWwaa9Ccax/eme4p/an/PI+93PQfyaXswJE72KMBd6Mb/aKj5YDIz/KoBZ6MWrb8Muze+sm+W8G3Cm4WJqLVGEIRIYQcvMUPHUOloKYnYakemb2LdMzGXnapxuo5MvL9TSgAWGBS6Drr7JZ08UhoQd9aQDXGevp5lB0QNOUo27ORASmVKkL0fGGR4SvrNiC6d+orPRmPebKJRJ37puIvP5PlTxAWycTe5vjffGuRsL4e6AAkVOuDPeOZsxc/lQ2lWD7PnCgzy4/A0CA90v+oZNEGF/me2qFvc2ooV4KHxWI3hctypWIzTVn7lRzTrXmLjRqkEdBaDmjWDC/ZZJRaJnDYDGlOnERhSfjSmh7uuahRRHes8riiDSwnYw0kuO9/auLA5KGK4euZ6zr2SfijWf0/C+nNHIxXZDMS/ppSmQ+o/Fl4E08VRswTT0UGx0pEHJLCBKjgwShROpac7W5SCq9ZYtN3usuWpRilBCqFZuCopiKJ+lMk+eDxrWx08o+Gy/P2rJHq5vXLeblzIlNnH7PNlD18Ya6s0WCb+ESnk6g+Wt1BTFT13mdZfESP6po2pfkf6LL+pe2wzr717B7c5wne0oHwZWvpWIukcqYp3OTYLOsOjc8kDndngBVS7ptuDa3RY0u62Kxac8eBwCMcznHtM8/ISFsalriVKSSiI7tU9YjAXpd0m13lePx25oA70wkeX5Q5nig+enru35xI+vS/y4xWjd4Mw/2r1/ARbbknuvFAAA';\nimport { createRuntimeFn as _7a468 } from '@vanilla-extract/recipes/createRuntimeFn';\nexport var appBar = _7a468({defaultClassName:'AppBar__1yk3a451 f__dhthxq4 f__dhthxq0 f__dhthxqh f__dhthxqc AppScreen__1dlf4347',variantClassNames:{border:{true:'AppBar_border_true__1yk3a452'},presentModalFullScreen:{true:'AppBar_presentModalFullScreen_true__1yk3a453'}},defaultVariants:{},compoundVariants:[]});\nexport var backButton = 'AppBar__1yk3a457 f__dhthxq9 f__dhthxq7 f__dhthxqb f__dhthxqf f__dhthxqi';\nexport var center = 'f__dhthxq9 f__dhthxq7 f__dhthxq8 AppBar__1yk3a450';\nexport var centerMain = _7a468({defaultClassName:'AppBar__1yk3a45a',variantClassNames:{hasLeft:{true:'AppBar_hasLeft_true__1yk3a45b'}},defaultVariants:{},compoundVariants:[]});\nexport var centerMainEdge = 'AppBar__1yk3a45c f__dhthxqi f__dhthxq4 f__dhthxq2 f__dhthxqf';\nexport var centerText = 'AppBar__1yk3a45d f__dhthxqc f__dhthxqd f__dhthxq0';\nexport var closeButton = 'AppBar__1yk3a457 f__dhthxq9 f__dhthxq7 f__dhthxqb f__dhthxqf f__dhthxqi';\nexport var container = 'AppBar__1yk3a455 f__dhthxqa f__dhthxq7 f__dhthxqc';\nexport var left = 'AppBar__1yk3a456 f__dhthxq9 f__dhthxq7 f__dhthxq1 AppBar__1yk3a450';\nexport var right = 'AppBar__1yk3a45e f__dhthxq9 f__dhthxq7 f__dhthxq1 f__dhthxq5 AppBar__1yk3a450';\nexport var safeArea = 'AppBar__1yk3a454';", "import 'src/styles/f.css.ts.vanilla.css?source=LmZfX2RodGh4cTAgewogIHdpZHRoOiAxMDAlOwp9Ci5mX19kaHRoeHExIHsKICBoZWlnaHQ6IDEwMCU7Cn0KLmZfX2RodGh4cTIgewogIHRvcDogMDsKfQouZl9fZGh0aHhxMyB7CiAgbGVmdDogMDsKfQouZl9fZGh0aHhxNCB7CiAgcG9zaXRpb246IGFic29sdXRlOwp9Ci5mX19kaHRoeHE1IHsKICBwb3NpdGlvbjogcmVsYXRpdmU7Cn0KLmZfX2RodGh4cTcgewogIGRpc3BsYXk6IGZsZXg7Cn0KLmZfX2RodGh4cTggewogIGZsZXg6IDE7Cn0KLmZfX2RodGh4cTkgewogIGFsaWduLWl0ZW1zOiBjZW50ZXI7Cn0KLmZfX2RodGh4cWEgewogIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDsKfQouZl9fZGh0aHhxYiB7CiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7Cn0KLmZfX2RodGh4cWMgewogIG92ZXJmbG93OiBoaWRkZW47Cn0KLmZfX2RodGh4cWQgewogIHdoaXRlLXNwYWNlOiBub3dyYXA7Cn0KLmZfX2RodGh4cWUgewogIHRleHQtYWxpZ246IGNlbnRlcjsKfQouZl9fZGh0aHhxZiB7CiAgY3Vyc29yOiBwb2ludGVyOwogIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7Cn0KLmZfX2RodGh4cWcgewogIGJveC1zaXppbmc6IGJvcmRlci1ib3g7Cn0KLmZfX2RodGh4cWggewogIGJveC1zaXppbmc6IGNvbnRlbnQtYm94Owp9Ci5mX19kaHRoeHFpIHsKICBhcHBlYXJhbmNlOiBub25lOwogIGJvcmRlcjogMDsKICBwYWRkaW5nOiAwOwogIGJhY2tncm91bmQ6IG5vbmU7Cn0=';\nimport 'src/theme.css.ts.vanilla.css?source=#H4sIAAAAAAAAE+2U30rDMBTG7/cUAW8UltJWyyDik4iMNEnbYJMTTk5xTHx3s+Hu1LW9kdmRQP5+X044P45AAFozcRietSTJI0n12vTwxkM/tNbzWkar+GA5dcaZJ+k1gtUv7H3FGP/lep0OWoTBa66gBxTspmmaxzMqbd03SmxreZuv2VfPiurunJEMIS2Q14Da4E9G+WaqUbR7I1gRdmN1nbFtR4LdZxUaN03FCaWPlix4rgeUh4lg5aZycayRS5vzQrAqvXpKXVmk9jBWSmZHM6XzsKmBCByPnTF0yhRKbYeYcnX888dqAuRqCAbJelg45nlWTQe9zDZ/TvrEGP4b6tkR4+22UBCC2+fLpvharC+e4GLZBF/r8EVS/AmYPn1EXgsAAA==';\nimport 'src/components/AppScreen.css.ts.vanilla.css?source=#H4sIAAAAAAAAE71WTY/aMBC98yt8qQRqjMKy/QrqoVVVqYeeeqyq1WCbxGBsy3Ggpep/r52EkCxJCHS3K6TF2DPvzczzjKcftP5GDGPy4WFGxep+fv8a/R4htASyiY3KJMVECWUitAMzxji1bmMl1B5rkcVc4iWknOCMY8q3+LHVZDH6M5qeY7y5EWOo/7e5f2tAptxyJaPi+0qZbYlx2vuUGfD/K+NwEiClgXD7a8jhDgrkRMHDlgwEWDan41kYvghQ6D5d5jw3L2lEKFy41QFzSdnPY5oOX/yKpT7zld1s4k/uuRCYJCBjFh2deCC3VfxNbcK2zFkRpfX2EKI2CkF1PDJK2e8ULPQUJ3f5HiQ1itMfrR6PDn1sCeNxYiM0Cw3bLhpyiJDgkoHBsQHKmbTjm8QXIBMvYRwWmfbJnjSTcM7w3YVEtOzCxUirKs4uwS+vhyfD4cMOra2LYztm8ty6kykxSghfFLxnyw23uNottriMnaJVRpI+YWrQzFQwd+fSrK5HF7MoOhIocJdgcrKUp1qAYyqVZI2snml71pagdVAzuELdJHMRWS5Vq77XJ6fDL/+VzFsV+jzhXIYaQrj1fjwP4XaoQUUJB1WktU/eGktfp3xEujkHukPIe+mNYTypsPpiu1pWrXSfVFZ9dIeIqt7hB0ms5jKB1C0+gnmwJmMVwuY/PmECpIFS19OxVfriIwy0dguDiwFe84xp6Tpv9DWXESIgyMUh3nQ8QS8RUdIdd/M/hRXDYBi4SZMy651OngyFyV0XQOMW9fc7bVjqnipfFQXxOROi/LlRVBE03P1z4xuEWYfs74DlZOp6k25z8z2nNnFKn969Kh9uXeOf0fhEYz5Q97Lg6Mt5ZSUXtUdlrgQfDsLXuvE8/wIwJxtwFw0AAA==';\nimport { createRuntimeFn as _7a468 } from '@vanilla-extract/recipes/createRuntimeFn';\nexport var allTransitions = 'AppScreen__1dlf4348';\nexport var appScreen = _7a468({defaultClassName:'f__dhthxq4 f__dhthxq0 f__dhthxq1 f__dhthxq2 f__dhthxq3 f__dhthxqc',variantClassNames:{transitionState:{'enter-active':'AppScreen__1dlf4349','enter-done':'AppScreen__1dlf434a','exit-active':'AppScreen__1dlf434b','exit-done':'AppScreen__1dlf434c'}},defaultVariants:{},compoundVariants:[]});\nexport var background = 'AppScreen__1dlf4347';\nexport var dim = 'AppScreen__1dlf434i f__dhthxq4 f__dhthxq0 f__dhthxq1 f__dhthxq2 f__dhthxq3 AppScreen__1dlf4346 AppScreen__1dlf4348';\nexport var edge = _7a468({defaultClassName:'AppScreen__1dlf434m f__dhthxq4 f__dhthxq2 f__dhthxq3 f__dhthxq1',variantClassNames:{hasAppBar:{true:'AppScreen_hasAppBar_true__1dlf434n'}},defaultVariants:{},compoundVariants:[]});\nexport var enterActive = 'AppScreen__1dlf4349';\nexport var enterDone = 'AppScreen__1dlf434a';\nexport var exitActive = 'AppScreen__1dlf434b';\nexport var exitDone = 'AppScreen__1dlf434c';\nexport var paper = _7a468({defaultClassName:'AppScreen__1dlf434j f__dhthxq4 f__dhthxq0 f__dhthxq1 f__dhthxq2 f__dhthxq3 AppScreen__1dlf4347 AppScreen__1dlf4348',variantClassNames:{hasAppBar:{true:'AppScreen_hasAppBar_true__1dlf434k f__dhthxqg'},presentModalFullScreen:{true:'AppScreen_presentModalFullScreen_true__1dlf434l'}},defaultVariants:{},compoundVariants:[]});\nexport var vars = {transitionDuration:'var(--transitionDuration__1dlf4340)',zIndexes:{dim:'var(--zIndexes-dim__1dlf4341)',paper:'var(--zIndexes-paper__1dlf4342)',edge:'var(--zIndexes-edge__1dlf4343)',appBar:'var(--zIndexes-appBar__1dlf4344)'},appBar:{center:{mainWidth:'var(--appBar-center-mainWidth__1dlf4345)'}}};", "/* eslint-disable jsx-a11y/no-static-element-interactions, jsx-a11y/click-events-have-key-events */\n\nimport { useActions } from \"@stackflow/react\";\nimport { assignInlineVars } from \"@vanilla-extract/dynamic\";\nimport React, { useRef } from \"react\";\n\nimport { useLazy, useNullableActivity, useStyleEffect } from \"../hooks\";\nimport type { GlobalVars } from \"../theme.css\";\nimport { globalVars } from \"../theme.css\";\nimport { compactMap } from \"../utils\";\nimport * as css from \"./BottomSheet.css\";\n\nexport type BottomSheetProps = Partial<\n Pick<GlobalVars, \"backgroundColor\" | \"dimBackgroundColor\">\n> &\n Partial<GlobalVars[\"bottomSheet\"]> & {\n onOutsideClick?: React.MouseEventHandler;\n children: React.ReactNode;\n };\nconst BottomSheet: React.FC<BottomSheetProps> = ({\n borderRadius = \"1rem\",\n backgroundColor,\n dimBackgroundColor,\n onOutsideClick,\n children,\n}) => {\n const activity = useNullableActivity();\n const { pop } = useActions();\n\n const containerRef = useRef<HTMLDivElement>(null);\n const paperRef = useRef<HTMLDivElement>(null);\n\n useStyleEffect({\n styleName: \"hide\",\n refs: [containerRef],\n });\n useStyleEffect({\n styleName: \"offset\",\n refs: [paperRef],\n });\n useStyleEffect({\n styleName: \"swipe-back\",\n refs: [paperRef],\n });\n\n const popLock = useRef(false);\n\n const onDimClick: React.MouseEventHandler = (e) => {\n onOutsideClick?.(e);\n\n if (e.defaultPrevented) {\n return;\n }\n\n if (popLock.current) {\n return;\n }\n popLock.current = true;\n\n pop();\n };\n const onPaperClick: React.MouseEventHandler = (e) => {\n e.stopPropagation();\n };\n\n const zIndexBase = (activity?.zIndex ?? 0) * 5 + 3;\n const zIndexPaper = (activity?.zIndex ?? 0) * 5 + 4;\n const transitionState = activity?.transitionState ?? \"enter-done\";\n\n return (\n <div\n className={css.container({\n transitionState: useLazy(transitionState),\n })}\n ref={containerRef}\n style={assignInlineVars(\n compactMap({\n [globalVars.bottomSheet.borderRadius]: borderRadius,\n [globalVars.backgroundColor]: backgroundColor,\n [globalVars.dimBackgroundColor]: dimBackgroundColor,\n [css.vars.zIndexes.dim]: `${zIndexBase}`,\n [css.vars.zIndexes.paper]: `${zIndexPaper}`,\n [css.vars.transitionDuration]:\n transitionState === \"enter-active\" ||\n transitionState === \"exit-active\"\n ? `var(--stackflow-transition-duration)`\n : \"0ms\",\n }),\n )}\n >\n <div className={css.dim} ref={paperRef} onClick={onDimClick}>\n <div className={css.paper} onClick={onPaperClick}>\n {children}\n </div>\n </div>\n </div>\n );\n};\n\nBottomSheet.displayName = \"BottomSheet\";\n\nexport default BottomSheet;\n", "import 'src/styles/f.css.ts.vanilla.css?source=LmZfX2RodGh4cTAgewogIHdpZHRoOiAxMDAlOwp9Ci5mX19kaHRoeHExIHsKICBoZWlnaHQ6IDEwMCU7Cn0KLmZfX2RodGh4cTIgewogIHRvcDogMDsKfQouZl9fZGh0aHhxMyB7CiAgbGVmdDogMDsKfQouZl9fZGh0aHhxNCB7CiAgcG9zaXRpb246IGFic29sdXRlOwp9Ci5mX19kaHRoeHE1IHsKICBwb3NpdGlvbjogcmVsYXRpdmU7Cn0KLmZfX2RodGh4cTcgewogIGRpc3BsYXk6IGZsZXg7Cn0KLmZfX2RodGh4cTggewogIGZsZXg6IDE7Cn0KLmZfX2RodGh4cTkgewogIGFsaWduLWl0ZW1zOiBjZW50ZXI7Cn0KLmZfX2RodGh4cWEgewogIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDsKfQouZl9fZGh0aHhxYiB7CiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7Cn0KLmZfX2RodGh4cWMgewogIG92ZXJmbG93OiBoaWRkZW47Cn0KLmZfX2RodGh4cWQgewogIHdoaXRlLXNwYWNlOiBub3dyYXA7Cn0KLmZfX2RodGh4cWUgewogIHRleHQtYWxpZ246IGNlbnRlcjsKfQouZl9fZGh0aHhxZiB7CiAgY3Vyc29yOiBwb2ludGVyOwogIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7Cn0KLmZfX2RodGh4cWcgewogIGJveC1zaXppbmc6IGJvcmRlci1ib3g7Cn0KLmZfX2RodGh4cWggewogIGJveC1zaXppbmc6IGNvbnRlbnQtYm94Owp9Ci5mX19kaHRoeHFpIHsKICBhcHBlYXJhbmNlOiBub25lOwogIGJvcmRlcjogMDsKICBwYWRkaW5nOiAwOwogIGJhY2tncm91bmQ6IG5vbmU7Cn0=';\nimport 'src/theme.css.ts.vanilla.css?source=#H4sIAAAAAAAAE+2U30rDMBTG7/cUAW8UltJWyyDik4iMNEnbYJMTTk5xTHx3s+Hu1LW9kdmRQP5+X044P45AAFozcRietSTJI0n12vTwxkM/tNbzWkar+GA5dcaZJ+k1gtUv7H3FGP/lep0OWoTBa66gBxTspmmaxzMqbd03SmxreZuv2VfPiurunJEMIS2Q14Da4E9G+WaqUbR7I1gRdmN1nbFtR4LdZxUaN03FCaWPlix4rgeUh4lg5aZycayRS5vzQrAqvXpKXVmk9jBWSmZHM6XzsKmBCByPnTF0yhRKbYeYcnX888dqAuRqCAbJelg45nlWTQe9zDZ/TvrEGP4b6tkR4+22UBCC2+fLpvharC+e4GLZBF/r8EVS/AmYPn1EXgsAAA==';\nimport 'src/components/BottomSheet.css.ts.vanilla.css?source=#H4sIAAAAAAAAE6VT3U7DIBS+71NwY7IlPQtN1ZnuznjjtQ+wUGAtkcIC1OmM7y5U20ZT3GaTJpSf7+ccPlb32jndPNWcu+02q11+V+McvScIOUOUFU5oVaAXYhYA48pDa0gYBwhebpKPZDXFth7Zdto0xdevJI7nbJFhfJUi7L84AesISkKfK6NbxYBqqU1vyjq/sZP6AHvZVkJBSayg0ApgooHfKK+C0BGEYvy1Zzg+hhm3ATCIZt1JvSdUuLcC4ai7azRtOp1ev4kc72oc5LKo3O1lcuuz5OLV8X/2frLvB8Fc7Yvzdx6mpTaMGzCEidaeQdnZAxv8wQ/schYWh/KDOSmB1kRVvBjTmvZN2sQz7NP7HeOZmeGXZYb/9bDw8KrmxCrmKBKrU46ibfoES/9iF4cEAAA=';\nimport { createRuntimeFn as _7a468 } from '@vanilla-extract/recipes/createRuntimeFn';\nexport var container = _7a468({defaultClassName:'f__dhthxq4 f__dhthxq0 f__dhthxq1 f__dhthxq2 f__dhthxq3 f__dhthxqc',variantClassNames:{transitionState:{'enter-active':'BottomSheet__1ht38h04','enter-done':'BottomSheet__1ht38h05','exit-active':'BottomSheet__1ht38h06','exit-done':'BottomSheet__1ht38h07'}},defaultVariants:{},compoundVariants:[]});\nexport var dim = 'BottomSheet__1ht38h0d f__dhthxq4 f__dhthxq0 f__dhthxq1 f__dhthxq2 f__dhthxq3 f__dhthxqc f__dhthxqa f__dhthxq7 BottomSheet__1ht38h03';\nexport var enterActive = 'BottomSheet__1ht38h04';\nexport var enterDone = 'BottomSheet__1ht38h05';\nexport var exitActive = 'BottomSheet__1ht38h06';\nexport var exitDone = 'BottomSheet__1ht38h07';\nexport var paper = 'BottomSheet__1ht38h0e f__dhthxqc BottomSheet__1ht38h03';\nexport var vars = {transitionDuration:'var(--transitionDuration__1ht38h00)',zIndexes:{dim:'var(--zIndexes-dim__1ht38h01)',paper:'var(--zIndexes-paper__1ht38h02)'}};", "/* eslint-disable jsx-a11y/no-static-element-interactions, jsx-a11y/click-events-have-key-events */\n\nimport { useActions } from \"@stackflow/react\";\nimport { assignInlineVars } from \"@vanilla-extract/dynamic\";\nimport React, { useRef } from \"react\";\n\nimport { useLazy, useNullableActivity, useStyleEffect } from \"../hooks\";\nimport type { GlobalVars } from \"../theme.css\";\nimport { globalVars } from \"../theme.css\";\nimport { compactMap } from \"../utils\";\nimport * as css from \"./Modal.css\";\n\nexport type ModalProps = Partial<\n Pick<GlobalVars, \"backgroundColor\" | \"dimBackgroundColor\">\n> &\n Partial<GlobalVars[\"modal\"]> & {\n onOutsideClick?: React.MouseEventHandler;\n children: React.ReactNode;\n };\nconst Modal: React.FC<ModalProps> = ({\n backgroundColor,\n dimBackgroundColor,\n borderRadius = \"1rem\",\n onOutsideClick,\n children,\n}) => {\n const activity = useNullableActivity();\n const { pop } = useActions();\n\n const containerRef = useRef<HTMLDivElement>(null);\n const paperRef = useRef<HTMLDivElement>(null);\n\n useStyleEffect({\n styleName: \"hide\",\n refs: [containerRef],\n });\n useStyleEffect({\n styleName: \"offset\",\n refs: [paperRef],\n });\n useStyleEffect({\n styleName: \"swipe-back\",\n refs: [paperRef],\n });\n\n const popLock = useRef(false);\n\n const onDimClick: React.MouseEventHandler = (e) => {\n onOutsideClick?.(e);\n\n if (e.defaultPrevented) {\n return;\n }\n\n if (popLock.current) {\n return;\n }\n popLock.current = true;\n\n pop();\n };\n const onPaperClick: React.MouseEventHandler = (e) => {\n e.stopPropagation();\n };\n\n const zIndexBase = (activity?.zIndex ?? 0) * 5 + 3;\n const zIndexPaper = (activity?.zIndex ?? 0) * 5 + 4;\n const transitionState = activity?.transitionState ?? \"enter-done\";\n\n return (\n <div\n className={css.container({\n transitionState: useLazy(transitionState),\n })}\n ref={containerRef}\n style={assignInlineVars(\n compactMap({\n [globalVars.bottomSheet.borderRadius]: borderRadius,\n [globalVars.backgroundColor]: backgroundColor,\n [globalVars.dimBackgroundColor]: dimBackgroundColor,\n [css.vars.zIndexes.dim]: `${zIndexBase}`,\n [css.vars.zIndexes.paper]: `${zIndexPaper}`,\n [css.vars.transitionDuration]:\n transitionState === \"enter-active\" ||\n transitionState === \"exit-active\"\n ? `var(--stackflow-transition-duration)`\n : \"0ms\",\n }),\n )}\n >\n <div className={css.dim} ref={paperRef} onClick={onDimClick}>\n <div className={css.paper} onClick={onPaperClick}>\n {children}\n </div>\n </div>\n </div>\n );\n};\n\nModal.displayName = \"Modal\";\n\nexport default Modal;\n", "import 'src/styles/f.css.ts.vanilla.css?source=LmZfX2RodGh4cTAgewogIHdpZHRoOiAxMDAlOwp9Ci5mX19kaHRoeHExIHsKICBoZWlnaHQ6IDEwMCU7Cn0KLmZfX2RodGh4cTIgewogIHRvcDogMDsKfQouZl9fZGh0aHhxMyB7CiAgbGVmdDogMDsKfQouZl9fZGh0aHhxNCB7CiAgcG9zaXRpb246IGFic29sdXRlOwp9Ci5mX19kaHRoeHE1IHsKICBwb3NpdGlvbjogcmVsYXRpdmU7Cn0KLmZfX2RodGh4cTcgewogIGRpc3BsYXk6IGZsZXg7Cn0KLmZfX2RodGh4cTggewogIGZsZXg6IDE7Cn0KLmZfX2RodGh4cTkgewogIGFsaWduLWl0ZW1zOiBjZW50ZXI7Cn0KLmZfX2RodGh4cWEgewogIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDsKfQouZl9fZGh0aHhxYiB7CiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7Cn0KLmZfX2RodGh4cWMgewogIG92ZXJmbG93OiBoaWRkZW47Cn0KLmZfX2RodGh4cWQgewogIHdoaXRlLXNwYWNlOiBub3dyYXA7Cn0KLmZfX2RodGh4cWUgewogIHRleHQtYWxpZ246IGNlbnRlcjsKfQouZl9fZGh0aHhxZiB7CiAgY3Vyc29yOiBwb2ludGVyOwogIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7Cn0KLmZfX2RodGh4cWcgewogIGJveC1zaXppbmc6IGJvcmRlci1ib3g7Cn0KLmZfX2RodGh4cWggewogIGJveC1zaXppbmc6IGNvbnRlbnQtYm94Owp9Ci5mX19kaHRoeHFpIHsKICBhcHBlYXJhbmNlOiBub25lOwogIGJvcmRlcjogMDsKICBwYWRkaW5nOiAwOwogIGJhY2tncm91bmQ6IG5vbmU7Cn0=';\nimport 'src/theme.css.ts.vanilla.css?source=#H4sIAAAAAAAAE+2U30rDMBTG7/cUAW8UltJWyyDik4iMNEnbYJMTTk5xTHx3s+Hu1LW9kdmRQP5+X044P45AAFozcRietSTJI0n12vTwxkM/tNbzWkar+GA5dcaZJ+k1gtUv7H3FGP/lep0OWoTBa66gBxTspmmaxzMqbd03SmxreZuv2VfPiurunJEMIS2Q14Da4E9G+WaqUbR7I1gRdmN1nbFtR4LdZxUaN03FCaWPlix4rgeUh4lg5aZycayRS5vzQrAqvXpKXVmk9jBWSmZHM6XzsKmBCByPnTF0yhRKbYeYcnX888dqAuRqCAbJelg45nlWTQe9zDZ/TvrEGP4b6tkR4+22UBCC2+fLpvharC+e4GLZBF/r8EVS/AmYPn1EXgsAAA==';\nimport 'src/components/Modal.css.ts.vanilla.css?source=#H4sIAAAAAAAAE51T0W6CMBR99yv6sgQT2hQZ0+HrXvawbzCXtmKzQk1bpnPZv6+AaECcbkkT2ttzzj339kLeNAe1WiX6kC9YjL4mCDkDpZVO6jJFH2ACjM+Rl8pA/e0YdLqcfE9IT2V+VllrU6TtVoETMQ8iSh9CRP0aYfKGmQF7z42uSo6ZVtp0LqzzF2uld3irqlyWOAMrGa4k5rLAQ5aXR+iAZcnFvlM4vNYnYWtClzNqgHoLTLrPFNFLV49o4DIcBJIhoCnjJBldSj7dkpz/LjniUvyzd6N920nuNt65f6z6WIDxHJ8WzUhiRFHHMr3HdgNc73x8u0eUPM3qOw+J583G5BkEtH1sv0iUTMMGSpITdHEFOuugcdRCyfM11WnrxnBhsAEuK3tH0do5XXj/Qjjc4x7LVwqzDZS5SM+DHHb9X/bH2zJQIojI3ydJ3JokMfyVjrn6me4YsItMwwG7lmmsqh+//tn1NQQAAA==';\nimport { createRuntimeFn as _7a468 } from '@vanilla-extract/recipes/createRuntimeFn';\nexport var container = _7a468({defaultClassName:'f__dhthxq4 f__dhthxq0 f__dhthxq1 f__dhthxq2 f__dhthxq3 f__dhthxqc',variantClassNames:{transitionState:{'enter-active':'Modal__5ozg8c4','enter-done':'Modal__5ozg8c5','exit-active':'Modal__5ozg8c6','exit-done':'Modal__5ozg8c7'}},defaultVariants:{},compoundVariants:[]});\nexport var dim = 'Modal__5ozg8cd f__dhthxq4 f__dhthxq0 f__dhthxq1 f__dhthxq2 f__dhthxq3 f__dhthxqc f__dhthxq9 f__dhthxq7 f__dhthxqb Modal__5ozg8c3';\nexport var enterActive = 'Modal__5ozg8c4';\nexport var enterDone = 'Modal__5ozg8c5';\nexport var exitActive = 'Modal__5ozg8c6';\nexport var exitDone = 'Modal__5ozg8c7';\nexport var paper = 'Modal__5ozg8ce f__dhthxqc Modal__5ozg8c3';\nexport var vars = {transitionDuration:'var(--transitionDuration__5ozg8c0)',zIndexes:{dim:'var(--zIndexes-dim__5ozg8c1)',paper:'var(--zIndexes-paper__5ozg8c2)'}};"],
5
- "mappings": "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",
3
+ "sources": ["../src/index.ts", "../src/basicUIPlugin.tsx", "../src/theme.css.ts", "../src/utils/compact.ts", "../src/utils/compactMap.ts", "../src/utils/isServer.ts", "../src/utils/isBrowser.ts", "../src/utils/listenOnce.ts", "../src/utils/listenResize.ts", "../src/utils/noop.ts", "../src/utils/requestNextFrame.tsx", "../src/components/AppScreen.tsx", "../src/hooks/useLazy.tsx", "../src/hooks/useMaxWidth.ts", "../src/hooks/useNullableActivity.ts", "../src/hooks/useStyleEffect.ts", "../src/hooks/useStyleEffectHide.ts", "../src/hooks/useStyleEffectOffset.ts", "../src/hooks/useStyleEffectSwipeBack.ts", "../src/components/AppBar.tsx", "../src/assets/IconBack.tsx", "../src/assets/IconClose.tsx", "../src/components/AppBar.css.ts", "../src/components/AppScreen.css.ts", "../src/components/BottomSheet.tsx", "../src/components/BottomSheet.css.ts", "../src/components/Modal.tsx", "../src/components/Modal.css.ts"],
4
+ "sourcesContent": ["export { basicUIPlugin } from \"./basicUIPlugin\";\nexport {\n default as AppScreen,\n AppScreenContext,\n AppScreenProps,\n useAppScreen,\n} from \"./components/AppScreen\";\nexport {\n default as BottomSheet,\n BottomSheetProps,\n} from \"./components/BottomSheet\";\nexport { default as Modal, ModalProps } from \"./components/Modal\";\nexport { globalVars as cssVars } from \"./theme.css\";\n", "import type { StackflowReactPlugin } from \"@stackflow/react\";\nimport { assignInlineVars } from \"@vanilla-extract/dynamic\";\nimport React, { createContext, useContext } from \"react\";\n\nimport * as theme from \"./theme.css\";\nimport type { RecursivePartial } from \"./utils\";\nimport { compact, compactMap, isBrowser } from \"./utils\";\n\ntype BasicUIPluginOptions = RecursivePartial<theme.GlobalVars> & {\n theme: \"android\" | \"cupertino\";\n rootClassName?: string;\n appBar?: {\n backButton?:\n | {\n renderIcon?: () => React.ReactNode;\n ariaLabel?: string;\n }\n | {\n render?: () => React.ReactNode;\n };\n closeButton?:\n | {\n renderIcon?: () => React.ReactNode;\n ariaLabel?: string;\n onClick?: (e: React.MouseEvent<HTMLButtonElement>) => void;\n }\n | {\n render?: () => React.ReactNode;\n };\n };\n};\n\nconst GlobalOptionsContext = createContext<BasicUIPluginOptions>({\n theme: \"android\",\n});\n\nexport const GlobalOptionsProvider = GlobalOptionsContext.Provider;\n\nexport function useGlobalOptions() {\n return useContext(GlobalOptionsContext);\n}\n\nexport const basicUIPlugin: (\n options: BasicUIPluginOptions,\n) => StackflowReactPlugin = (options) => () => ({\n key: \"basic-ui\",\n wrapStack({ stack }) {\n return (\n <GlobalOptionsProvider value={options}>\n <div\n className={\n isBrowser()\n ? compact([theme[options.theme], options.rootClassName]).join(\" \")\n : options.rootClassName\n }\n style={assignInlineVars(\n compactMap({\n [theme.globalVars.backgroundColor]: options.backgroundColor,\n [theme.globalVars.dimBackgroundColor]: options.dimBackgroundColor,\n [theme.globalVars.appBar.borderColor]:\n options.appBar?.borderColor,\n [theme.globalVars.appBar.borderSize]: options.appBar?.borderSize,\n [theme.globalVars.appBar.height]: options.appBar?.height,\n [theme.globalVars.appBar.iconColor]: options.appBar?.iconColor,\n [theme.globalVars.appBar.textColor]: options.appBar?.textColor,\n [theme.globalVars.bottomSheet.borderRadius]:\n options.bottomSheet?.borderRadius,\n [theme.globalVars.modal.borderRadius]:\n options.modal?.borderRadius,\n }),\n )}\n >\n {stack.render()}\n </div>\n </GlobalOptionsProvider>\n );\n },\n});\n", "import 'src/theme.css.ts.vanilla.css?source=#H4sIAAAAAAAAE+1VXUvDMBR9368I+KKwlLZaBhn+EpGRNml7sckNN7c6Jv53u+ne1K198aElgXyek0vuOYkiRF4LdWyejGYtI+vqpe7wTYaub8DLUkeoZA+SW+vso/aGEMyzeF8JIf/YXg4LDWHvjaywQ1Lipq7r7QWUAfcDkppS36Zr8V2TrLi7RKRDGAYkSyRj6TeidDOWKMLBKpGF/bW41kLTshL3SUHWjUNJJu0jMKCXpid97CiRbwoXryVyw+S0EKAaTj2nLs+G8nAtlO2eJ0KnyeaMxldLxw1KtGCM9ZdwJTKjk7G1ls8ZJm2gj0OOT3f1sRphjqoPlhg8ztweaVKMN0iebP7dISNjWCzyZZHkJP/dLqswBHdI563+5XOYrfKzeSt/efdnpf5PB8YrAD4MAAA=';\nexport var android = 'theme__1coppmz0';\nexport var cupertino = 'theme__1coppmz1';\nexport var globalVars = {backgroundColor:'var(--stackflow-plugin-basic-ui-background-color)',dimBackgroundColor:'var(--stackflow-plugin-basic-ui-dim-background-color)',appBar:{borderColor:'var(--stackflow-plugin-basic-ui-app-bar-border-color)',borderSize:'var(--stackflow-plugin-basic-ui-app-bar-border-size)',height:'var(--stackflow-plugin-basic-ui-app-bar-height)',heightTransitionDuration:'var(--stackflow-plugin-basic-ui-app-bar-height-transition-duration)',minHeight:'var(--stackflow-plugin-basic-ui-app-bar-min-height)',iconColor:'var(--stackflow-plugin-basic-ui-app-bar-icon-color)',textColor:'var(--stackflow-plugin-basic-ui-app-bar-text-color)',backgroundColor:'var(--stackflow-plugin-basic-ui-app-bar-background-color)',overflow:'var(--stackflow-plugin-basic-ui-app-bar-overflow)'},bottomSheet:{borderRadius:'var(--stackflow-plugin-basic-ui-bottom-sheet-border-radius)'},modal:{borderRadius:'var(--stackflow-plugin-basic-ui-bottom-sheet-border-radius)'}};\nexport var rootAndroid = ':root[data-stackflow-plugin-basic-ui-theme=android]';\nexport var rootCupertino = ':root[data-stackflow-plugin-basic-ui-theme=cupertino]';", "export function compact<T>(arr: Array<T>): Array<NonNullable<T>> {\n return arr.filter(\n (item): item is NonNullable<typeof item> =>\n item !== undefined && item !== null,\n );\n}\n", "export function compactMap<T extends {}>(\n obj: T,\n): {\n [key in keyof T]: NonNullable<T[key]>;\n} {\n return Object.entries(obj).reduce<any>((acc, [key, value]) => {\n if (value !== null && value !== undefined) {\n acc[key] = value;\n }\n\n return acc;\n }, {});\n}\n", "/**\n * @description\n * \uD604\uC7AC JS \uB7F0\uD0C0\uC784\uC774 \uC11C\uBC84 \uD658\uACBD\uC778\uC9C0 \uD655\uC778\uD574\uC694.\n */\nexport function isServer() {\n return typeof window === \"undefined\";\n}\n", "import { isServer } from \"./isServer\";\n\n/**\n * @description\n * \uD604\uC7AC JS \uB7F0\uD0C0\uC784\uC774 \uBE0C\uB77C\uC6B0\uC800 \uD658\uACBD\uC778\uC9C0 \uD655\uC778\uD574\uC694.\n */\nexport function isBrowser() {\n return !isServer();\n}\n", "export function listenOnce<T extends HTMLElement>(\n el: T,\n type: keyof HTMLElementEventMap,\n cb: () => void,\n) {\n const listener = () => {\n el.removeEventListener(type, listener);\n cb();\n };\n\n el.addEventListener(type, listener);\n}\n", "export const listenResize = (cb: () => void) => {\n cb();\n window.addEventListener(\"resize\", cb);\n\n return () => {\n window.removeEventListener(\"resize\", cb);\n };\n};\n", "export const noop = () => {};\n", "// https://github.com/MingruiZhang/react-animate-mount/blob/32300c04a4fdfa97724b70aaaf0c0f403d6da247/src/Animate.js#L171-L179\nexport function requestNextFrame(cb: () => void) {\n requestAnimationFrame(() => {\n requestAnimationFrame(() => {\n cb();\n });\n });\n}\n", "/* eslint-disable no-param-reassign */\n\nimport { useActions } from \"@stackflow/react\";\nimport { assignInlineVars } from \"@vanilla-extract/dynamic\";\nimport React, { createContext, useContext, useMemo, useRef } from \"react\";\n\nimport { useGlobalOptions } from \"../basicUIPlugin\";\nimport {\n useLazy,\n useNullableActivity,\n useStyleEffectHide,\n useStyleEffectOffset,\n useStyleEffectSwipeBack,\n} from \"../hooks\";\nimport type { GlobalVars } from \"../theme.css\";\nimport { globalVars } from \"../theme.css\";\nimport type { PropOf } from \"../utils\";\nimport { compactMap } from \"../utils\";\nimport AppBar from \"./AppBar\";\nimport * as css from \"./AppScreen.css\";\n\nexport type AppScreenContext = {\n scroll: (args: { top: number }) => void;\n};\nconst Context = createContext<AppScreenContext>(null as any);\n\nexport function useAppScreen() {\n return useContext(Context);\n}\n\nexport type AppScreenProps = Partial<\n Pick<GlobalVars, \"backgroundColor\" | \"dimBackgroundColor\">\n> & {\n appBar?: Omit<PropOf<typeof AppBar>, \"theme\" | \"ref\" | \"key\">;\n preventSwipeBack?: boolean;\n modalPresentationStyle?: \"fullScreen\";\n children: React.ReactNode;\n};\nconst AppScreen: React.FC<AppScreenProps> = ({\n backgroundColor,\n dimBackgroundColor,\n appBar,\n preventSwipeBack,\n modalPresentationStyle,\n children,\n}) => {\n const globalOptions = useGlobalOptions();\n const activity = useNullableActivity();\n\n const { pop } = useActions();\n\n const appScreenRef = useRef<HTMLDivElement>(null);\n const dimRef = useRef<HTMLDivElement>(null);\n const paperRef = useRef<HTMLDivElement>(null);\n const edgeRef = useRef<HTMLDivElement>(null);\n const appBarRef = useRef<HTMLDivElement>(null);\n\n const presentModalFullScreen = modalPresentationStyle === \"fullScreen\";\n const swipeBackPrevented = preventSwipeBack || presentModalFullScreen;\n\n useStyleEffectHide({\n refs: [appScreenRef],\n hasEffect: true,\n });\n useStyleEffectOffset({\n theme: globalOptions.theme,\n refs:\n globalOptions.theme === \"cupertino\" ? [paperRef] : [paperRef, appBarRef],\n hasEffect: !presentModalFullScreen,\n });\n useStyleEffectSwipeBack({\n theme: globalOptions.theme,\n dimRef,\n edgeRef,\n paperRef,\n hasEffect: true,\n prevented: swipeBackPrevented,\n onSwiped() {\n pop();\n },\n });\n\n const hasAppBar = !!appBar;\n\n const zIndexBase = (activity?.zIndex ?? 0) * 5;\n const zIndexDim = zIndexBase;\n const zIndexPaper =\n zIndexBase + (globalOptions.theme === \"cupertino\" && hasAppBar ? 1 : 3);\n const zIndexEdge = zIndexBase + 4;\n const zIndexAppBar =\n globalOptions.theme === \"cupertino\" ? zIndexBase + 7 : zIndexBase + 4;\n\n const transitionState = activity?.transitionState ?? \"enter-done\";\n const lazyTransitionState = useLazy(transitionState);\n\n const onAppBarTopClick: React.MouseEventHandler = (e) => {\n appBar?.onTopClick?.(e);\n\n if (!e.defaultPrevented) {\n paperRef.current?.scroll({\n top: 0,\n behavior: \"smooth\",\n });\n }\n };\n\n return (\n <Context.Provider\n value={useMemo(\n () => ({\n scroll({ top }) {\n paperRef?.current?.scroll({\n top,\n behavior: \"smooth\",\n });\n },\n }),\n [paperRef],\n )}\n >\n <div\n ref={appScreenRef}\n className={css.appScreen({\n transitionState:\n transitionState === \"enter-done\" || transitionState === \"exit-done\"\n ? transitionState\n : lazyTransitionState,\n })}\n style={assignInlineVars(\n compactMap({\n [globalVars.backgroundColor]: backgroundColor,\n [globalVars.dimBackgroundColor]: dimBackgroundColor,\n [globalVars.appBar.height]: appBar?.height,\n [globalVars.appBar.heightTransitionDuration]:\n appBar?.heightTransitionDuration,\n [css.vars.zIndexes.dim]: `${zIndexDim}`,\n [css.vars.zIndexes.paper]: `${zIndexPaper}`,\n [css.vars.zIndexes.edge]: `${zIndexEdge}`,\n [css.vars.zIndexes.appBar]: `${zIndexAppBar}`,\n [css.vars.transitionDuration]:\n transitionState === \"enter-active\" ||\n transitionState === \"exit-active\"\n ? `var(--stackflow-transition-duration)`\n : \"0ms\",\n }),\n )}\n >\n <div className={css.dim} ref={dimRef} />\n {appBar && (\n <AppBar\n {...appBar}\n ref={appBarRef}\n modalPresentationStyle={modalPresentationStyle}\n onTopClick={onAppBarTopClick}\n />\n )}\n <div\n key={activity?.id}\n className={css.paper({\n hasAppBar,\n presentModalFullScreen,\n })}\n ref={paperRef}\n >\n {children}\n </div>\n {!activity?.isRoot &&\n globalOptions.theme === \"cupertino\" &&\n !swipeBackPrevented && (\n <div className={css.edge({ hasAppBar })} ref={edgeRef} />\n )}\n </div>\n </Context.Provider>\n );\n};\n\nAppScreen.displayName = \"AppScreen\";\n\nexport default AppScreen;\n", "import { useEffect, useState } from \"react\";\n\nimport { requestNextFrame } from \"../utils\";\n\nexport function useLazy<T>(value: T) {\n const [state, setState] = useState<T | undefined>(undefined);\n\n useEffect(() => {\n requestNextFrame(() => {\n setState(value);\n });\n }, [value]);\n\n return state;\n}\n", "import type React from \"react\";\nimport { useEffect, useState } from \"react\";\n\nimport { listenResize, noop } from \"../utils\";\n\nexport function useMaxWidth({\n outerRef,\n innerRef,\n enable,\n}: {\n outerRef: React.ForwardedRef<any>;\n innerRef: React.MutableRefObject<any>;\n enable: boolean;\n}) {\n const [maxWidth, setMaxWidth] = useState<number | undefined>(undefined);\n\n useEffect(() => {\n const $outer = outerRef && \"current\" in outerRef && outerRef.current;\n const $inner = innerRef.current;\n\n if (!enable || !$outer || !$inner) {\n return noop;\n }\n\n const dispose = listenResize(() => {\n const screenWidth = $outer.clientWidth;\n\n const leftWidth = $inner.offsetLeft;\n const centerWidth = $inner.clientWidth;\n const rightWidth = screenWidth - leftWidth - centerWidth;\n\n const sideMargin = Math.max(leftWidth, rightWidth);\n\n setMaxWidth(screenWidth - 2 * sideMargin);\n });\n\n return dispose;\n }, []);\n\n return {\n maxWidth,\n };\n}\n", "import type { Activity } from \"@stackflow/core\";\nimport { useActivity } from \"@stackflow/react\";\n\nexport function useNullableActivity() {\n return useActivity() as Activity | null;\n}\n", "import type { ActivityTransitionState } from \"@stackflow/core\";\nimport type React from \"react\";\nimport { useEffect } from \"react\";\n\nimport { noop } from \"../utils\";\nimport { useNullableActivity } from \"./useNullableActivity\";\n\nconst connections: {\n [styleName: string]: Map<\n number,\n {\n refs: Array<React.RefObject<any>>;\n hasEffect: boolean;\n }\n >;\n} = {};\n\nexport function useStyleEffect<T extends HTMLElement>({\n styleName,\n refs,\n effect,\n effectDeps,\n}: {\n styleName: string;\n refs: Array<React.RefObject<T>>;\n effect?: (params: {\n activityTransitionState: ActivityTransitionState;\n refs: Array<React.RefObject<T>>;\n }) => (() => void) | void;\n effectDeps?: any[];\n}) {\n const activity = useNullableActivity();\n\n useEffect(() => {\n if (!activity) {\n return noop;\n }\n if (!connections[styleName]) {\n connections[styleName] = new Map();\n }\n\n connections[styleName].set(activity.zIndex, {\n refs,\n hasEffect: !!effect,\n });\n\n return () => {\n connections[styleName].delete(activity.zIndex);\n };\n }, [activity?.id, refs, effect]);\n\n useEffect(() => {\n if (!activity) {\n return noop;\n }\n if (!effect) {\n return noop;\n }\n\n const refs = (() => {\n let arr: Array<React.RefObject<T>> = [];\n\n for (let i = 1; i <= activity.zIndex; i += 1) {\n const connection = connections[styleName].get(activity.zIndex - i);\n\n if (connection?.refs) {\n arr = [...arr, ...connection.refs];\n }\n if (connection?.hasEffect) {\n break;\n }\n }\n\n return arr;\n })();\n\n const cleanup = effect({\n activityTransitionState: activity.transitionState,\n refs,\n });\n\n return () => {\n cleanup?.();\n };\n }, [activity?.transitionState, ...(effectDeps ?? [])]);\n}\n", "/* eslint-disable no-param-reassign */\n\nimport type React from \"react\";\n\nimport { noop } from \"../utils\";\nimport { useStyleEffect } from \"./useStyleEffect\";\n\nexport function useStyleEffectHide({\n refs,\n hasEffect,\n}: {\n refs: Array<React.RefObject<any>>;\n hasEffect?: boolean;\n}) {\n useStyleEffect({\n styleName: \"hide\",\n refs,\n effect: hasEffect\n ? ({ activityTransitionState, refs }) => {\n const cleanup = () => {\n refs.forEach((ref) => {\n if (!ref.current) {\n return;\n }\n const $ref = ref.current;\n\n $ref.style.display = \"\";\n });\n };\n\n switch (activityTransitionState) {\n case \"enter-done\": {\n refs.forEach((ref) => {\n if (!ref.current) {\n return;\n }\n const $ref = ref.current;\n\n $ref.style.display = \"none\";\n });\n\n return () => {\n cleanup();\n };\n }\n default: {\n cleanup();\n\n return noop;\n }\n }\n }\n : undefined,\n });\n}\n", "/* eslint-disable no-param-reassign */\n\nimport { listenOnce, noop, requestNextFrame } from \"../utils\";\nimport { useStyleEffect } from \"./useStyleEffect\";\n\nexport const OFFSET_PX_ANDROID = 32;\nexport const OFFSET_PX_CUPERTINO = 80;\n\nexport function useStyleEffectOffset({\n refs,\n theme,\n hasEffect,\n}: {\n refs: Array<React.RefObject<any>>;\n theme: \"android\" | \"cupertino\";\n hasEffect?: boolean;\n}) {\n useStyleEffect({\n styleName: \"offset\",\n refs,\n effect: hasEffect\n ? ({ activityTransitionState, refs }) => {\n const transform =\n theme === \"cupertino\"\n ? `translate3d(-${OFFSET_PX_CUPERTINO / 16}rem, 0, 0)`\n : `translate3d(0, -${OFFSET_PX_ANDROID / 16}rem, 0)`;\n\n const cleanup = () => {\n requestNextFrame(() => {\n refs.forEach((ref) => {\n if (!ref.current) {\n return;\n }\n\n const $el = ref.current;\n\n $el.style.transform = \"\";\n\n listenOnce($el, \"transitionend\", () => {\n $el.style.transition = \"\";\n });\n });\n });\n };\n\n switch (activityTransitionState) {\n case \"enter-active\":\n case \"enter-done\": {\n refs.forEach((ref) => {\n if (!ref.current) {\n return;\n }\n\n ref.current.style.transition = `var(--stackflow-transition-duration)`;\n ref.current.style.transform = transform;\n });\n\n switch (activityTransitionState) {\n case \"enter-done\":\n return () => {\n cleanup();\n };\n case \"enter-active\":\n default:\n return noop;\n }\n }\n case \"exit-active\":\n case \"exit-done\": {\n requestNextFrame(() => {\n cleanup();\n });\n\n return noop;\n }\n default: {\n return noop;\n }\n }\n }\n : undefined,\n });\n}\n", "/* eslint-disable no-param-reassign */\n\nimport { listenOnce, noop } from \"../utils\";\nimport { useStyleEffect } from \"./useStyleEffect\";\nimport { OFFSET_PX_CUPERTINO } from \"./useStyleEffectOffset\";\n\nexport function useStyleEffectSwipeBack({\n theme,\n dimRef,\n edgeRef,\n paperRef,\n hasEffect,\n prevented,\n onSwiped,\n}: {\n theme: \"android\" | \"cupertino\";\n dimRef: React.RefObject<HTMLDivElement>;\n edgeRef: React.RefObject<HTMLDivElement>;\n paperRef: React.RefObject<HTMLDivElement>;\n hasEffect?: boolean;\n prevented?: boolean;\n onSwiped?: () => void;\n}) {\n useStyleEffect({\n styleName: \"swipe-back\",\n refs: [paperRef],\n effect: hasEffect\n ? ({ refs }) => {\n if (theme !== \"cupertino\") {\n return noop;\n }\n\n if (!dimRef.current || !edgeRef.current || !paperRef.current) {\n return noop;\n }\n\n const $dim = dimRef.current;\n const $edge = edgeRef.current;\n const $paper = paperRef.current;\n\n let x0: number | null = null;\n let t0: number | null = null;\n let x: number | null = null;\n\n let cachedRefs: Array<{\n style: {\n transform: string;\n transition: string;\n };\n parentElement?: {\n style: {\n display: string;\n };\n };\n }> = [];\n\n const resetState = () => {\n x0 = null;\n t0 = null;\n x = null;\n cachedRefs = [];\n };\n\n let _rAFLock = false;\n\n function movePaper(dx: number) {\n if (!_rAFLock) {\n _rAFLock = true;\n\n requestAnimationFrame(() => {\n const p = dx / $paper.clientWidth;\n\n $dim.style.opacity = `${1 - p}`;\n $dim.style.transition = \"0s\";\n\n $paper.style.overflowY = \"hidden\";\n $paper.style.transform = `translate3d(${dx}px, 0, 0)`;\n $paper.style.transition = \"0s\";\n\n refs.forEach((ref) => {\n if (!ref.current) {\n return;\n }\n\n ref.current.style.transform = `translate3d(${\n -1 * (1 - p) * OFFSET_PX_CUPERTINO\n }px, 0, 0)`;\n ref.current.style.transition = \"0s\";\n\n if (ref.current.parentElement?.style.display === \"none\") {\n ref.current.parentElement.style.display = \"block\";\n }\n });\n\n _rAFLock = false;\n });\n }\n }\n\n function resetPaper({ swiped }: { swiped: boolean }): Promise<void> {\n return new Promise((resolve) => {\n requestAnimationFrame(() => {\n $dim.style.opacity = `${swiped ? 0 : 1}`;\n $dim.style.transition = \"var(--stackflow-transition-duration)\";\n\n $paper.style.overflowY = \"hidden\";\n $paper.style.transform = `translateX(${swiped ? \"100%\" : \"0\"})`;\n $paper.style.transition =\n \"var(--stackflow-transition-duration)\";\n\n refs.forEach((ref) => {\n if (!ref.current) {\n return;\n }\n\n ref.current.style.transition = `var(--stackflow-transition-duration)`;\n ref.current.style.transform = `translate3d(${\n swiped ? \"0\" : `-${OFFSET_PX_CUPERTINO / 16}rem`\n }, 0, 0)`;\n });\n\n const _cachedRefs = [...cachedRefs];\n\n resolve();\n\n listenOnce($paper, \"transitionend\", () => {\n $dim.style.opacity = \"\";\n $paper.style.overflowY = \"\";\n $paper.style.transform = \"\";\n\n refs.forEach((ref, i) => {\n if (!ref.current) {\n return;\n }\n\n const _cachedRef = _cachedRefs[i];\n\n if (swiped) {\n ref.current.style.transition = \"\";\n ref.current.style.transform = \"\";\n\n if (ref.current.parentElement) {\n ref.current.parentElement.style.display = \"\";\n }\n } else if (_cachedRef) {\n ref.current.style.transition =\n _cachedRef.style.transition;\n ref.current.style.transform = _cachedRef.style.transform;\n\n if (\n ref.current.parentElement &&\n _cachedRef.parentElement\n ) {\n ref.current.parentElement.style.display =\n _cachedRef.parentElement.style.display;\n }\n }\n });\n });\n });\n });\n }\n\n const onTouchStart = (e: TouchEvent) => {\n const { activeElement } = document as any;\n\n activeElement?.blur?.();\n // eslint-disable-next-line no-multi-assign\n x0 = x = e.touches[0].clientX;\n t0 = Date.now();\n\n cachedRefs = refs.map((ref) => {\n if (!ref.current) {\n return {\n style: {\n transform: \"\",\n transition: \"\",\n },\n };\n }\n\n return {\n style: {\n transform: ref.current.style.transform,\n transition: ref.current.style.transition,\n },\n parentElement: ref.current.parentElement\n ? {\n style: {\n display: ref.current.parentElement.style.display,\n },\n }\n : undefined,\n };\n });\n };\n\n const onTouchMove = (e: TouchEvent) => {\n if (!x0) {\n resetState();\n return;\n }\n\n x = e.touches[0].clientX;\n\n movePaper(x - x0);\n };\n\n const onTouchEnd = () => {\n if (!x0 || !t0 || !x) {\n resetState();\n return;\n }\n\n const t = Date.now();\n const v = (x - x0) / (t - t0);\n const swiped = v > 1 || x / $paper.clientWidth > 0.4;\n\n if (swiped) {\n onSwiped?.();\n }\n\n Promise.resolve()\n .then(() => resetPaper({ swiped }))\n .then(() => resetState());\n };\n\n $edge.addEventListener(\"touchstart\", onTouchStart, { passive: true });\n $edge.addEventListener(\"touchmove\", onTouchMove, { passive: true });\n $edge.addEventListener(\"touchend\", onTouchEnd, { passive: true });\n $edge.addEventListener(\"touchcancel\", onTouchEnd, { passive: true });\n\n return () => {\n $edge.removeEventListener(\"touchstart\", onTouchStart);\n $edge.removeEventListener(\"touchmove\", onTouchMove);\n $edge.removeEventListener(\"touchend\", onTouchEnd);\n $edge.removeEventListener(\"touchcancel\", onTouchEnd);\n };\n }\n : undefined,\n effectDeps: [prevented],\n });\n}\n", "import { useActions } from \"@stackflow/react\";\nimport { assignInlineVars } from \"@vanilla-extract/dynamic\";\nimport React, { useRef } from \"react\";\n\nimport { IconBack, IconClose } from \"../assets\";\nimport { useGlobalOptions } from \"../basicUIPlugin\";\nimport { useMaxWidth, useNullableActivity } from \"../hooks\";\nimport type { GlobalVars } from \"../theme.css\";\nimport { globalVars } from \"../theme.css\";\nimport { compactMap } from \"../utils\";\nimport * as css from \"./AppBar.css\";\nimport * as appScreenCss from \"./AppScreen.css\";\n\ntype AppBarProps = Partial<\n Pick<\n GlobalVars[\"appBar\"],\n | \"borderColor\"\n | \"borderSize\"\n | \"height\"\n | \"heightTransitionDuration\"\n | \"overflow\"\n | \"iconColor\"\n | \"textColor\"\n | \"backgroundColor\"\n >\n> & {\n title?: React.ReactNode;\n appendLeft?: () => React.ReactNode;\n appendRight?: () => React.ReactNode;\n backButton?:\n | {\n renderIcon?: () => React.ReactNode;\n ariaLabel?: string;\n onClick?: (e: React.MouseEvent<HTMLButtonElement>) => void;\n }\n | {\n render?: () => React.ReactNode;\n };\n closeButton?:\n | {\n renderIcon?: () => React.ReactNode;\n ariaLabel?: string;\n onClick?: (e: React.MouseEvent<HTMLButtonElement>) => void;\n }\n | {\n render?: () => React.ReactNode;\n };\n closeButtonLocation?: \"left\" | \"right\";\n border?: boolean;\n modalPresentationStyle?: \"fullScreen\";\n onTopClick?: (e: React.MouseEvent) => void;\n};\nconst AppBar = React.forwardRef<HTMLDivElement, AppBarProps>(\n (\n {\n title,\n appendLeft,\n appendRight,\n backButton,\n closeButton,\n closeButtonLocation = \"left\",\n border = true,\n modalPresentationStyle,\n iconColor,\n textColor,\n borderColor,\n borderSize,\n height,\n heightTransitionDuration,\n overflow,\n backgroundColor,\n onTopClick,\n },\n ref,\n ) => {\n const actions = useActions();\n const activity = useNullableActivity();\n\n const globalOptions = useGlobalOptions();\n const globalCloseButton = globalOptions.appBar?.closeButton;\n const globalBackButton = globalOptions.appBar?.backButton;\n\n const centerRef = useRef<any>(null);\n\n const { maxWidth } = useMaxWidth({\n outerRef: ref,\n innerRef: centerRef,\n enable: globalOptions.theme === \"cupertino\",\n });\n\n const presentModalFullScreen = modalPresentationStyle === \"fullScreen\";\n\n const onBackClick = (e: React.MouseEvent<HTMLButtonElement>) => {\n if (backButton && \"onClick\" in backButton && backButton.onClick) {\n backButton.onClick(e);\n }\n\n if (!e.defaultPrevented) {\n actions.pop();\n }\n };\n\n const renderBackButton = () => {\n if (!activity) {\n return null;\n }\n if (activity.isRoot) {\n return null;\n }\n\n if (!backButton && !globalBackButton) {\n return (\n <button\n type=\"button\"\n className={css.backButton}\n onClick={onBackClick}\n >\n <IconBack />\n </button>\n );\n }\n\n if (backButton && \"render\" in backButton && backButton.render) {\n return backButton.render?.();\n }\n if (\n globalBackButton &&\n \"render\" in globalBackButton &&\n globalBackButton.render\n ) {\n return globalBackButton.render?.();\n }\n\n return (\n <button\n type=\"button\"\n className={css.backButton}\n aria-label={\n backButton && \"ariaLabel\" in backButton\n ? backButton.ariaLabel\n : globalBackButton && \"ariaLabel\" in globalBackButton\n ? globalBackButton.ariaLabel\n : undefined\n }\n onClick={onBackClick}\n >\n {(() => {\n if (\n backButton &&\n \"renderIcon\" in backButton &&\n backButton.renderIcon\n ) {\n return backButton.renderIcon();\n }\n if (\n globalBackButton &&\n \"renderIcon\" in globalBackButton &&\n globalBackButton.renderIcon\n ) {\n return globalBackButton.renderIcon();\n }\n\n if (presentModalFullScreen) {\n return <IconClose />;\n }\n\n return <IconBack />;\n })()}\n </button>\n );\n };\n\n const onCloseClick = (e: React.MouseEvent<HTMLButtonElement>) => {\n if (closeButton && \"onClick\" in closeButton && closeButton.onClick) {\n closeButton.onClick(e);\n }\n\n if (\n !e.defaultPrevented &&\n globalCloseButton &&\n \"onClick\" in globalCloseButton\n ) {\n globalCloseButton.onClick?.(e);\n }\n };\n\n const renderCloseButton = () => {\n const isRoot = !activity || activity.isRoot;\n\n const showCloseButton = (closeButton: AppBarProps[\"closeButton\"]) =>\n (closeButton && \"render\" in closeButton && closeButton.render) ||\n (closeButton &&\n \"renderIcon\" in closeButton &&\n closeButton.renderIcon) ||\n (closeButton && \"onClick\" in closeButton && closeButton.onClick);\n\n if (\n !(\n showCloseButton(closeButton) ||\n showCloseButton(globalOptions.appBar?.closeButton)\n ) ||\n !isRoot\n ) {\n return null;\n }\n if (closeButton && \"render\" in closeButton && closeButton.render) {\n return closeButton.render();\n }\n if (\n globalCloseButton &&\n \"render\" in globalCloseButton &&\n globalCloseButton.render\n ) {\n return globalCloseButton.render();\n }\n\n return (\n <button\n type=\"button\"\n className={css.closeButton}\n aria-label={\n closeButton && \"ariaLabel\" in closeButton\n ? closeButton.ariaLabel\n : globalCloseButton && \"ariaLabel\" in globalCloseButton\n ? globalCloseButton.ariaLabel\n : undefined\n }\n onClick={onCloseClick}\n >\n {(() => {\n if (\n closeButton &&\n \"renderIcon\" in closeButton &&\n closeButton.renderIcon\n ) {\n return closeButton.renderIcon();\n }\n if (\n globalCloseButton &&\n \"renderIcon\" in globalCloseButton &&\n globalCloseButton.renderIcon\n ) {\n return globalCloseButton.renderIcon();\n }\n\n return <IconClose />;\n })()}\n </button>\n );\n };\n\n const hasLeft = !!(\n (closeButtonLocation === \"left\" && closeButton) ||\n backButton ||\n appendLeft\n );\n\n return (\n <div\n ref={ref}\n className={css.appBar({\n border,\n presentModalFullScreen,\n })}\n style={assignInlineVars(\n compactMap({\n [globalVars.appBar.iconColor]: iconColor,\n [globalVars.appBar.textColor]: textColor,\n [globalVars.appBar.borderColor]: borderColor,\n [globalVars.appBar.borderSize]: borderSize,\n [globalVars.appBar.height]: height,\n [globalVars.appBar.heightTransitionDuration]:\n heightTransitionDuration,\n [globalVars.appBar.overflow]: overflow,\n [globalVars.appBar.backgroundColor]:\n backgroundColor || globalVars.backgroundColor,\n [appScreenCss.vars.appBar.center.mainWidth]: `${maxWidth}px`,\n }),\n )}\n >\n <div className={css.safeArea} />\n <div className={css.container}>\n <div className={css.left}>\n {closeButtonLocation === \"left\" && renderCloseButton()}\n {renderBackButton()}\n {appendLeft?.()}\n </div>\n <div ref={centerRef} className={css.center}>\n <div\n className={css.centerMain({\n hasLeft,\n })}\n >\n {typeof title === \"string\" ? (\n <div className={css.centerText}>{title}</div>\n ) : (\n title\n )}\n <button\n className={css.centerMainEdge}\n type=\"button\"\n aria-hidden=\"true\"\n onClick={onTopClick}\n />\n </div>\n </div>\n <div className={css.right}>\n {appendRight?.()}\n {closeButtonLocation === \"right\" && renderCloseButton()}\n </div>\n </div>\n </div>\n );\n },\n);\n\nAppBar.displayName = \"AppBar\";\n\nexport default AppBar;\n", "import React from \"react\";\n\nconst IconBack: React.FC<{\n className?: string;\n}> = (props) => (\n <svg\n className={props.className}\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M11.5659 5.56564C11.8783 5.25322 11.8783 4.74669 11.5659 4.43427C11.2535 4.12185 10.7469 4.12185 10.4345 4.43427L3.43451 11.4343C3.12209 11.7467 3.12209 12.2532 3.43451 12.5656L10.4345 19.5656C10.7469 19.8781 11.2535 19.8781 11.5659 19.5656C11.8783 19.2532 11.8783 18.7467 11.5659 18.4343L5.93157 12.8H20.0002C20.442 12.8 20.8002 12.4418 20.8002 12C20.8002 11.5581 20.442 11.2 20.0002 11.2H5.93157L11.5659 5.56564Z\"\n fill=\"currentColor\"\n />\n </svg>\n);\n\nexport default IconBack;\n", "import React from \"react\";\n\nconst IconClose: React.FC<{\n className?: string;\n}> = (props) => (\n <svg\n className={props.className}\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M6.56588 5.43433C6.25346 5.12191 5.74693 5.12191 5.43451 5.43433C5.12209 5.74675 5.12209 6.25328 5.43451 6.5657L10.8688 12L5.43451 17.4343C5.12209 17.7467 5.12209 18.2533 5.43451 18.5657C5.74693 18.8781 6.25346 18.8781 6.56588 18.5657L12.0002 13.1314L17.4345 18.5657C17.7469 18.8781 18.2535 18.8781 18.5659 18.5657C18.8783 18.2533 18.8783 17.7467 18.5659 17.4343L13.1316 12L18.5659 6.5657C18.8783 6.25328 18.8783 5.74675 18.5659 5.43433C18.2535 5.12191 17.7469 5.12191 17.4345 5.43433L12.0002 10.8686L6.56588 5.43433Z\"\n fill=\"currentColor\"\n />\n <path\n d=\"M6.56588 5.43433C6.25346 5.12191 5.74693 5.12191 5.43451 5.43433C5.12209 5.74675 5.12209 6.25328 5.43451 6.5657L10.8688 12L5.43451 17.4343C5.12209 17.7467 5.12209 18.2533 5.43451 18.5657C5.74693 18.8781 6.25346 18.8781 6.56588 18.5657L12.0002 13.1314L17.4345 18.5657C17.7469 18.8781 18.2535 18.8781 18.5659 18.5657C18.8783 18.2533 18.8783 17.7467 18.5659 17.4343L13.1316 12L18.5659 6.5657C18.8783 6.25328 18.8783 5.74675 18.5659 5.43433C18.2535 5.12191 17.7469 5.12191 17.4345 5.43433L12.0002 10.8686L6.56588 5.43433Z\"\n fill=\"currentColor\"\n />\n </svg>\n);\n\nexport default IconClose;\n", "import 'src/styles/f.css.ts.vanilla.css?source=LmZfX2RodGh4cTAgewogIHdpZHRoOiAxMDAlOwp9Ci5mX19kaHRoeHExIHsKICBoZWlnaHQ6IDEwMCU7Cn0KLmZfX2RodGh4cTIgewogIHRvcDogMDsKfQouZl9fZGh0aHhxMyB7CiAgbGVmdDogMDsKfQouZl9fZGh0aHhxNCB7CiAgcG9zaXRpb246IGFic29sdXRlOwp9Ci5mX19kaHRoeHE1IHsKICBwb3NpdGlvbjogcmVsYXRpdmU7Cn0KLmZfX2RodGh4cTcgewogIGRpc3BsYXk6IGZsZXg7Cn0KLmZfX2RodGh4cTggewogIGZsZXg6IDE7Cn0KLmZfX2RodGh4cTkgewogIGFsaWduLWl0ZW1zOiBjZW50ZXI7Cn0KLmZfX2RodGh4cWEgewogIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDsKfQouZl9fZGh0aHhxYiB7CiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7Cn0KLmZfX2RodGh4cWMgewogIG92ZXJmbG93OiBoaWRkZW47Cn0KLmZfX2RodGh4cWQgewogIHdoaXRlLXNwYWNlOiBub3dyYXA7Cn0KLmZfX2RodGh4cWUgewogIHRleHQtYWxpZ246IGNlbnRlcjsKfQouZl9fZGh0aHhxZiB7CiAgY3Vyc29yOiBwb2ludGVyOwogIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7Cn0KLmZfX2RodGh4cWcgewogIGJveC1zaXppbmc6IGJvcmRlci1ib3g7Cn0KLmZfX2RodGh4cWggewogIGJveC1zaXppbmc6IGNvbnRlbnQtYm94Owp9Ci5mX19kaHRoeHFpIHsKICBhcHBlYXJhbmNlOiBub25lOwogIGJvcmRlcjogMDsKICBwYWRkaW5nOiAwOwogIGJhY2tncm91bmQ6IG5vbmU7Cn0=';\nimport 'src/theme.css.ts.vanilla.css?source=#H4sIAAAAAAAAE+1VXUvDMBR9368I+KKwlLZaBhn+EpGRNml7sckNN7c6Jv53u+ne1K198aElgXyek0vuOYkiRF4LdWyejGYtI+vqpe7wTYaub8DLUkeoZA+SW+vso/aGEMyzeF8JIf/YXg4LDWHvjaywQ1Lipq7r7QWUAfcDkppS36Zr8V2TrLi7RKRDGAYkSyRj6TeidDOWKMLBKpGF/bW41kLTshL3SUHWjUNJJu0jMKCXpid97CiRbwoXryVyw+S0EKAaTj2nLs+G8nAtlO2eJ0KnyeaMxldLxw1KtGCM9ZdwJTKjk7G1ls8ZJm2gj0OOT3f1sRphjqoPlhg8ztweaVKMN0iebP7dISNjWCzyZZHkJP/dLqswBHdI563+5XOYrfKzeSt/efdnpf5PB8YrAD4MAAA=';\nimport 'src/components/AppScreen.css.ts.vanilla.css?source=#H4sIAAAAAAAAE71WTY/aMBC98yt8qQRqjMKy/QrqoVVVqYeeeqyq1WCbxGBsy3Ggpep/r52EkCxJCHS3K6TF2DPvzczzjKcftP5GDGPy4WFGxep+fv8a/R4htASyiY3KJMVECWUitAMzxji1bmMl1B5rkcVc4iWknOCMY8q3+LHVZDH6M5qeY7y5EWOo/7e5f2tAptxyJaPi+0qZbYlx2vuUGfD/K+NwEiClgXD7a8jhDgrkRMHDlgwEWDan41kYvghQ6D5d5jw3L2lEKFy41QFzSdnPY5oOX/yKpT7zld1s4k/uuRCYJCBjFh2deCC3VfxNbcK2zFkRpfX2EKI2CkF1PDJK2e8ULPQUJ3f5HiQ1itMfrR6PDn1sCeNxYiM0Cw3bLhpyiJDgkoHBsQHKmbTjm8QXIBMvYRwWmfbJnjSTcM7w3YVEtOzCxUirKs4uwS+vhyfD4cMOra2LYztm8ty6kykxSghfFLxnyw23uNottriMnaJVRpI+YWrQzFQwd+fSrK5HF7MoOhIocJdgcrKUp1qAYyqVZI2snml71pagdVAzuELdJHMRWS5Vq77XJ6fDL/+VzFsV+jzhXIYaQrj1fjwP4XaoQUUJB1WktU/eGktfp3xEujkHukPIe+mNYTypsPpiu1pWrXSfVFZ9dIeIqt7hB0ms5jKB1C0+gnmwJmMVwuY/PmECpIFS19OxVfriIwy0dguDiwFe84xp6Tpv9DWXESIgyMUh3nQ8QS8RUdIdd/M/hRXDYBi4SZMy651OngyFyV0XQOMW9fc7bVjqnipfFQXxOROi/LlRVBE03P1z4xuEWYfs74DlZOp6k25z8z2nNnFKn969Kh9uXeOf0fhEYz5Q97Lg6Mt5ZSUXtUdlrgQfDsLXuvE8/wIwJxtwFw0AAA==';\nimport 'src/components/AppBar.css.ts.vanilla.css?source=#H4sIAAAAAAAAE81YS2/cNhC+76/QpcC6MAVpH7GzRg8NigAFmlMOPRSFQYnUijVFCiS1Xm/R/16Sej8jOZvEhgHvksN5fDPzcWj31zT9AMXjo//ytIW7vef8u3KchDAQY3KM1cE5QbEGQCoYPkWUP4OUZke9HUBJQpARANNUfxGgPnPzsPpv5XYU+1YxP2FhtMxXW54YVLqxSgOt4yh4xhAIOeVivvLuSW3EcS6AMITPpZbL7+YbluZQbhvRaLfd7azwM6EUhDFkR3xwlIBMRlwktw5PYUjUi3FaS5U/ropxgrWKkKdpcvGdXkC3DemD4Fz9haCCE6FYjb+EWYqFIoz/3VdZazRgpVwSRTg7ODCQnGYKz/HxcygwZlXswbdy/Mt22tFUiBfgU6jwFq19z/vp1vH0r02S3Sqi9uR0vN7VQoMMCU7QFzNSlIp27WE8Ih2L7wmcDIVUHSkqtt77LRPQ/K0A9W6q0pwjPAeqTsrefxv8llmZ4yj8Lo4OWBnJvj+d/aKYaw4MuEBYPCqR4Ur3NudDfgYyhsjQLGESK8dLz04IabgGvvPzfHa0FoAkF3xz43hLz5WM2iqhCQ5MBZaYqU8cQfoxo7RAshXg7ral6+sYcpbBpr0JxrH96Z3iH9qf88j7/Y9B/JpezAkTvokwF3oxv9oqPlgMTPAmgFnoxZtvwy7N762b5RAdcqbhYmotYYQBFBgCy8xA8dQ6WgpidhqR6Zt41zIxl52rGb2NTr68UEsDFoAKXAZdvctnT4gQYUc96Tieu9fTzKDoASepxt0cQESmFOrLkXGGh4TvrdjCqZ/obDTm/SYKZdK3npfIfL5HKj44G3eT+1vjvXHvxkK4P8BQkRPujHfuZsxcPpR21QT2fOFBHlz+BgGh7hd9wyaQsD/NdlWLexvRQjwUPqsRPK5bFasRmurP3EHNOteYuINVgzoKQM0bwYT7TyYViV40ABpTphMbUXw2poR6qGsWUBzpPb8ogkgL28FIL7n+/V1ZHJQwXL2cfXdfyT4XawGn6KGc0cjFdkMxL+mlKZD6j8XXgTTxVGzBNPRQbHSkQcksQEqODBCFE6lpztblIKr1li03e6y5alGKYEKoVm4KimIgX6QyT54PGtanTzD8bL9/1JI9XN95XjcvZUps4vZ5soeujTXQmy0Sfg2V8nQGy1upKYqfuszrLomh/ENH1b4iw1df1L22GdbfvYLbneG521E+RFa+lYi6Rypinc5NAs+g6NzyQOd2eAVVLuk2dO1uQ81uq2IJKA+fhkDMbxPbPPV/0TClJJVEdmqfsBgL0u+Sar2vPhq7oQ30wkSW5w9mig+en7q25xN/dF3ij1qM1g3OfNDu/Q+6jNVABBUAAA==';\nimport { createRuntimeFn as _7a468 } from '@vanilla-extract/recipes/createRuntimeFn';\nexport var appBar = _7a468({defaultClassName:'AppBar__1yk3a452 f__dhthxq4 f__dhthxq0 f__dhthxqh AppScreen__1dlf4347 AppBar__1yk3a451',variantClassNames:{border:{true:'AppBar_border_true__1yk3a453'},presentModalFullScreen:{true:'AppBar_presentModalFullScreen_true__1yk3a454'}},defaultVariants:{},compoundVariants:[]});\nexport var backButton = 'AppBar__1yk3a458 f__dhthxq9 f__dhthxq7 f__dhthxqb f__dhthxqf f__dhthxqi';\nexport var center = 'f__dhthxq9 f__dhthxq7 f__dhthxq8 AppBar__1yk3a450';\nexport var centerMain = _7a468({defaultClassName:'AppBar__1yk3a45b',variantClassNames:{hasLeft:{true:'AppBar_hasLeft_true__1yk3a45c'}},defaultVariants:{},compoundVariants:[]});\nexport var centerMainEdge = 'AppBar__1yk3a45d f__dhthxqi f__dhthxq4 f__dhthxq2 f__dhthxqf';\nexport var centerText = 'AppBar__1yk3a45e f__dhthxqc f__dhthxqd f__dhthxq0';\nexport var closeButton = 'AppBar__1yk3a458 f__dhthxq9 f__dhthxq7 f__dhthxqb f__dhthxqf f__dhthxqi';\nexport var container = 'AppBar__1yk3a456 f__dhthxqa f__dhthxq7 AppBar__1yk3a451';\nexport var left = 'AppBar__1yk3a457 f__dhthxq9 f__dhthxq7 f__dhthxq1 AppBar__1yk3a450';\nexport var right = 'AppBar__1yk3a45f f__dhthxq9 f__dhthxq7 f__dhthxq1 f__dhthxq5 AppBar__1yk3a450';\nexport var safeArea = 'AppBar__1yk3a455';", "import 'src/styles/f.css.ts.vanilla.css?source=LmZfX2RodGh4cTAgewogIHdpZHRoOiAxMDAlOwp9Ci5mX19kaHRoeHExIHsKICBoZWlnaHQ6IDEwMCU7Cn0KLmZfX2RodGh4cTIgewogIHRvcDogMDsKfQouZl9fZGh0aHhxMyB7CiAgbGVmdDogMDsKfQouZl9fZGh0aHhxNCB7CiAgcG9zaXRpb246IGFic29sdXRlOwp9Ci5mX19kaHRoeHE1IHsKICBwb3NpdGlvbjogcmVsYXRpdmU7Cn0KLmZfX2RodGh4cTcgewogIGRpc3BsYXk6IGZsZXg7Cn0KLmZfX2RodGh4cTggewogIGZsZXg6IDE7Cn0KLmZfX2RodGh4cTkgewogIGFsaWduLWl0ZW1zOiBjZW50ZXI7Cn0KLmZfX2RodGh4cWEgewogIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDsKfQouZl9fZGh0aHhxYiB7CiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7Cn0KLmZfX2RodGh4cWMgewogIG92ZXJmbG93OiBoaWRkZW47Cn0KLmZfX2RodGh4cWQgewogIHdoaXRlLXNwYWNlOiBub3dyYXA7Cn0KLmZfX2RodGh4cWUgewogIHRleHQtYWxpZ246IGNlbnRlcjsKfQouZl9fZGh0aHhxZiB7CiAgY3Vyc29yOiBwb2ludGVyOwogIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7Cn0KLmZfX2RodGh4cWcgewogIGJveC1zaXppbmc6IGJvcmRlci1ib3g7Cn0KLmZfX2RodGh4cWggewogIGJveC1zaXppbmc6IGNvbnRlbnQtYm94Owp9Ci5mX19kaHRoeHFpIHsKICBhcHBlYXJhbmNlOiBub25lOwogIGJvcmRlcjogMDsKICBwYWRkaW5nOiAwOwogIGJhY2tncm91bmQ6IG5vbmU7Cn0=';\nimport 'src/theme.css.ts.vanilla.css?source=#H4sIAAAAAAAAE+1VXUvDMBR9368I+KKwlLZaBhn+EpGRNml7sckNN7c6Jv53u+ne1K198aElgXyek0vuOYkiRF4LdWyejGYtI+vqpe7wTYaub8DLUkeoZA+SW+vso/aGEMyzeF8JIf/YXg4LDWHvjaywQ1Lipq7r7QWUAfcDkppS36Zr8V2TrLi7RKRDGAYkSyRj6TeidDOWKMLBKpGF/bW41kLTshL3SUHWjUNJJu0jMKCXpid97CiRbwoXryVyw+S0EKAaTj2nLs+G8nAtlO2eJ0KnyeaMxldLxw1KtGCM9ZdwJTKjk7G1ls8ZJm2gj0OOT3f1sRphjqoPlhg8ztweaVKMN0iebP7dISNjWCzyZZHkJP/dLqswBHdI563+5XOYrfKzeSt/efdnpf5PB8YrAD4MAAA=';\nimport 'src/components/AppScreen.css.ts.vanilla.css?source=#H4sIAAAAAAAAE71WTY/aMBC98yt8qQRqjMKy/QrqoVVVqYeeeqyq1WCbxGBsy3Ggpep/r52EkCxJCHS3K6TF2DPvzczzjKcftP5GDGPy4WFGxep+fv8a/R4htASyiY3KJMVECWUitAMzxji1bmMl1B5rkcVc4iWknOCMY8q3+LHVZDH6M5qeY7y5EWOo/7e5f2tAptxyJaPi+0qZbYlx2vuUGfD/K+NwEiClgXD7a8jhDgrkRMHDlgwEWDan41kYvghQ6D5d5jw3L2lEKFy41QFzSdnPY5oOX/yKpT7zld1s4k/uuRCYJCBjFh2deCC3VfxNbcK2zFkRpfX2EKI2CkF1PDJK2e8ULPQUJ3f5HiQ1itMfrR6PDn1sCeNxYiM0Cw3bLhpyiJDgkoHBsQHKmbTjm8QXIBMvYRwWmfbJnjSTcM7w3YVEtOzCxUirKs4uwS+vhyfD4cMOra2LYztm8ty6kykxSghfFLxnyw23uNottriMnaJVRpI+YWrQzFQwd+fSrK5HF7MoOhIocJdgcrKUp1qAYyqVZI2snml71pagdVAzuELdJHMRWS5Vq77XJ6fDL/+VzFsV+jzhXIYaQrj1fjwP4XaoQUUJB1WktU/eGktfp3xEujkHukPIe+mNYTypsPpiu1pWrXSfVFZ9dIeIqt7hB0ms5jKB1C0+gnmwJmMVwuY/PmECpIFS19OxVfriIwy0dguDiwFe84xp6Tpv9DWXESIgyMUh3nQ8QS8RUdIdd/M/hRXDYBi4SZMy651OngyFyV0XQOMW9fc7bVjqnipfFQXxOROi/LlRVBE03P1z4xuEWYfs74DlZOp6k25z8z2nNnFKn969Kh9uXeOf0fhEYz5Q97Lg6Mt5ZSUXtUdlrgQfDsLXuvE8/wIwJxtwFw0AAA==';\nimport { createRuntimeFn as _7a468 } from '@vanilla-extract/recipes/createRuntimeFn';\nexport var allTransitions = 'AppScreen__1dlf4348';\nexport var appScreen = _7a468({defaultClassName:'f__dhthxq4 f__dhthxq0 f__dhthxq1 f__dhthxq2 f__dhthxq3 f__dhthxqc',variantClassNames:{transitionState:{'enter-active':'AppScreen__1dlf4349','enter-done':'AppScreen__1dlf434a','exit-active':'AppScreen__1dlf434b','exit-done':'AppScreen__1dlf434c'}},defaultVariants:{},compoundVariants:[]});\nexport var background = 'AppScreen__1dlf4347';\nexport var dim = 'AppScreen__1dlf434i f__dhthxq4 f__dhthxq0 f__dhthxq1 f__dhthxq2 f__dhthxq3 AppScreen__1dlf4346 AppScreen__1dlf4348';\nexport var edge = _7a468({defaultClassName:'AppScreen__1dlf434m f__dhthxq4 f__dhthxq2 f__dhthxq3 f__dhthxq1',variantClassNames:{hasAppBar:{true:'AppScreen_hasAppBar_true__1dlf434n'}},defaultVariants:{},compoundVariants:[]});\nexport var enterActive = 'AppScreen__1dlf4349';\nexport var enterDone = 'AppScreen__1dlf434a';\nexport var exitActive = 'AppScreen__1dlf434b';\nexport var exitDone = 'AppScreen__1dlf434c';\nexport var paper = _7a468({defaultClassName:'AppScreen__1dlf434j f__dhthxq4 f__dhthxq0 f__dhthxq1 f__dhthxq2 f__dhthxq3 AppScreen__1dlf4347 AppScreen__1dlf4348',variantClassNames:{hasAppBar:{true:'AppScreen_hasAppBar_true__1dlf434k f__dhthxqg'},presentModalFullScreen:{true:'AppScreen_presentModalFullScreen_true__1dlf434l'}},defaultVariants:{},compoundVariants:[]});\nexport var vars = {transitionDuration:'var(--transitionDuration__1dlf4340)',zIndexes:{dim:'var(--zIndexes-dim__1dlf4341)',paper:'var(--zIndexes-paper__1dlf4342)',edge:'var(--zIndexes-edge__1dlf4343)',appBar:'var(--zIndexes-appBar__1dlf4344)'},appBar:{center:{mainWidth:'var(--appBar-center-mainWidth__1dlf4345)'}}};", "/* eslint-disable jsx-a11y/no-static-element-interactions, jsx-a11y/click-events-have-key-events */\n\nimport { useActions } from \"@stackflow/react\";\nimport { assignInlineVars } from \"@vanilla-extract/dynamic\";\nimport React, { useRef } from \"react\";\n\nimport { useLazy, useNullableActivity, useStyleEffect } from \"../hooks\";\nimport type { GlobalVars } from \"../theme.css\";\nimport { globalVars } from \"../theme.css\";\nimport { compactMap } from \"../utils\";\nimport * as css from \"./BottomSheet.css\";\n\nexport type BottomSheetProps = Partial<\n Pick<GlobalVars, \"backgroundColor\" | \"dimBackgroundColor\">\n> &\n Partial<GlobalVars[\"bottomSheet\"]> & {\n onOutsideClick?: React.MouseEventHandler;\n children: React.ReactNode;\n };\nconst BottomSheet: React.FC<BottomSheetProps> = ({\n borderRadius = \"1rem\",\n backgroundColor,\n dimBackgroundColor,\n onOutsideClick,\n children,\n}) => {\n const activity = useNullableActivity();\n const { pop } = useActions();\n\n const containerRef = useRef<HTMLDivElement>(null);\n const paperRef = useRef<HTMLDivElement>(null);\n\n useStyleEffect({\n styleName: \"hide\",\n refs: [containerRef],\n });\n useStyleEffect({\n styleName: \"offset\",\n refs: [paperRef],\n });\n useStyleEffect({\n styleName: \"swipe-back\",\n refs: [paperRef],\n });\n\n const popLock = useRef(false);\n\n const onDimClick: React.MouseEventHandler = (e) => {\n onOutsideClick?.(e);\n\n if (e.defaultPrevented) {\n return;\n }\n\n if (popLock.current) {\n return;\n }\n popLock.current = true;\n\n pop();\n };\n const onPaperClick: React.MouseEventHandler = (e) => {\n e.stopPropagation();\n };\n\n const zIndexBase = (activity?.zIndex ?? 0) * 5 + 3;\n const zIndexPaper = (activity?.zIndex ?? 0) * 5 + 4;\n const transitionState = activity?.transitionState ?? \"enter-done\";\n\n return (\n <div\n className={css.container({\n transitionState: useLazy(transitionState),\n })}\n ref={containerRef}\n style={assignInlineVars(\n compactMap({\n [globalVars.bottomSheet.borderRadius]: borderRadius,\n [globalVars.backgroundColor]: backgroundColor,\n [globalVars.dimBackgroundColor]: dimBackgroundColor,\n [css.vars.zIndexes.dim]: `${zIndexBase}`,\n [css.vars.zIndexes.paper]: `${zIndexPaper}`,\n [css.vars.transitionDuration]:\n transitionState === \"enter-active\" ||\n transitionState === \"exit-active\"\n ? `var(--stackflow-transition-duration)`\n : \"0ms\",\n }),\n )}\n >\n <div className={css.dim} ref={paperRef} onClick={onDimClick}>\n <div className={css.paper} onClick={onPaperClick}>\n {children}\n </div>\n </div>\n </div>\n );\n};\n\nBottomSheet.displayName = \"BottomSheet\";\n\nexport default BottomSheet;\n", "import 'src/styles/f.css.ts.vanilla.css?source=LmZfX2RodGh4cTAgewogIHdpZHRoOiAxMDAlOwp9Ci5mX19kaHRoeHExIHsKICBoZWlnaHQ6IDEwMCU7Cn0KLmZfX2RodGh4cTIgewogIHRvcDogMDsKfQouZl9fZGh0aHhxMyB7CiAgbGVmdDogMDsKfQouZl9fZGh0aHhxNCB7CiAgcG9zaXRpb246IGFic29sdXRlOwp9Ci5mX19kaHRoeHE1IHsKICBwb3NpdGlvbjogcmVsYXRpdmU7Cn0KLmZfX2RodGh4cTcgewogIGRpc3BsYXk6IGZsZXg7Cn0KLmZfX2RodGh4cTggewogIGZsZXg6IDE7Cn0KLmZfX2RodGh4cTkgewogIGFsaWduLWl0ZW1zOiBjZW50ZXI7Cn0KLmZfX2RodGh4cWEgewogIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDsKfQouZl9fZGh0aHhxYiB7CiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7Cn0KLmZfX2RodGh4cWMgewogIG92ZXJmbG93OiBoaWRkZW47Cn0KLmZfX2RodGh4cWQgewogIHdoaXRlLXNwYWNlOiBub3dyYXA7Cn0KLmZfX2RodGh4cWUgewogIHRleHQtYWxpZ246IGNlbnRlcjsKfQouZl9fZGh0aHhxZiB7CiAgY3Vyc29yOiBwb2ludGVyOwogIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7Cn0KLmZfX2RodGh4cWcgewogIGJveC1zaXppbmc6IGJvcmRlci1ib3g7Cn0KLmZfX2RodGh4cWggewogIGJveC1zaXppbmc6IGNvbnRlbnQtYm94Owp9Ci5mX19kaHRoeHFpIHsKICBhcHBlYXJhbmNlOiBub25lOwogIGJvcmRlcjogMDsKICBwYWRkaW5nOiAwOwogIGJhY2tncm91bmQ6IG5vbmU7Cn0=';\nimport 'src/theme.css.ts.vanilla.css?source=#H4sIAAAAAAAAE+1VXUvDMBR9368I+KKwlLZaBhn+EpGRNml7sckNN7c6Jv53u+ne1K198aElgXyek0vuOYkiRF4LdWyejGYtI+vqpe7wTYaub8DLUkeoZA+SW+vso/aGEMyzeF8JIf/YXg4LDWHvjaywQ1Lipq7r7QWUAfcDkppS36Zr8V2TrLi7RKRDGAYkSyRj6TeidDOWKMLBKpGF/bW41kLTshL3SUHWjUNJJu0jMKCXpid97CiRbwoXryVyw+S0EKAaTj2nLs+G8nAtlO2eJ0KnyeaMxldLxw1KtGCM9ZdwJTKjk7G1ls8ZJm2gj0OOT3f1sRphjqoPlhg8ztweaVKMN0iebP7dISNjWCzyZZHkJP/dLqswBHdI563+5XOYrfKzeSt/efdnpf5PB8YrAD4MAAA=';\nimport 'src/components/BottomSheet.css.ts.vanilla.css?source=#H4sIAAAAAAAAE6VT3U7DIBS+71NwY7IlPQtN1ZnuznjjtQ+wUGAtkcIC1OmM7y5U20ZT3GaTJpSf7+ccPlb32jndPNWcu+02q11+V+McvScIOUOUFU5oVaAXYhYA48pDa0gYBwhebpKPZDXFth7Zdto0xdevJI7nbJFhfJUi7L84AesISkKfK6NbxYBqqU1vyjq/sZP6AHvZVkJBSayg0ApgooHfKK+C0BGEYvy1Zzg+hhm3ATCIZt1JvSdUuLcC4ai7azRtOp1ev4kc72oc5LKo3O1lcuuz5OLV8X/2frLvB8Fc7Yvzdx6mpTaMGzCEidaeQdnZAxv8wQ/schYWh/KDOSmB1kRVvBjTmvZN2sQz7NP7HeOZmeGXZYb/9bDw8KrmxCrmKBKrU46ibfoES/9iF4cEAAA=';\nimport { createRuntimeFn as _7a468 } from '@vanilla-extract/recipes/createRuntimeFn';\nexport var container = _7a468({defaultClassName:'f__dhthxq4 f__dhthxq0 f__dhthxq1 f__dhthxq2 f__dhthxq3 f__dhthxqc',variantClassNames:{transitionState:{'enter-active':'BottomSheet__1ht38h04','enter-done':'BottomSheet__1ht38h05','exit-active':'BottomSheet__1ht38h06','exit-done':'BottomSheet__1ht38h07'}},defaultVariants:{},compoundVariants:[]});\nexport var dim = 'BottomSheet__1ht38h0d f__dhthxq4 f__dhthxq0 f__dhthxq1 f__dhthxq2 f__dhthxq3 f__dhthxqc f__dhthxqa f__dhthxq7 BottomSheet__1ht38h03';\nexport var enterActive = 'BottomSheet__1ht38h04';\nexport var enterDone = 'BottomSheet__1ht38h05';\nexport var exitActive = 'BottomSheet__1ht38h06';\nexport var exitDone = 'BottomSheet__1ht38h07';\nexport var paper = 'BottomSheet__1ht38h0e f__dhthxqc BottomSheet__1ht38h03';\nexport var vars = {transitionDuration:'var(--transitionDuration__1ht38h00)',zIndexes:{dim:'var(--zIndexes-dim__1ht38h01)',paper:'var(--zIndexes-paper__1ht38h02)'}};", "/* eslint-disable jsx-a11y/no-static-element-interactions, jsx-a11y/click-events-have-key-events */\n\nimport { useActions } from \"@stackflow/react\";\nimport { assignInlineVars } from \"@vanilla-extract/dynamic\";\nimport React, { useRef } from \"react\";\n\nimport { useLazy, useNullableActivity, useStyleEffect } from \"../hooks\";\nimport type { GlobalVars } from \"../theme.css\";\nimport { globalVars } from \"../theme.css\";\nimport { compactMap } from \"../utils\";\nimport * as css from \"./Modal.css\";\n\nexport type ModalProps = Partial<\n Pick<GlobalVars, \"backgroundColor\" | \"dimBackgroundColor\">\n> &\n Partial<GlobalVars[\"modal\"]> & {\n onOutsideClick?: React.MouseEventHandler;\n children: React.ReactNode;\n };\nconst Modal: React.FC<ModalProps> = ({\n backgroundColor,\n dimBackgroundColor,\n borderRadius = \"1rem\",\n onOutsideClick,\n children,\n}) => {\n const activity = useNullableActivity();\n const { pop } = useActions();\n\n const containerRef = useRef<HTMLDivElement>(null);\n const paperRef = useRef<HTMLDivElement>(null);\n\n useStyleEffect({\n styleName: \"hide\",\n refs: [containerRef],\n });\n useStyleEffect({\n styleName: \"offset\",\n refs: [paperRef],\n });\n useStyleEffect({\n styleName: \"swipe-back\",\n refs: [paperRef],\n });\n\n const popLock = useRef(false);\n\n const onDimClick: React.MouseEventHandler = (e) => {\n onOutsideClick?.(e);\n\n if (e.defaultPrevented) {\n return;\n }\n\n if (popLock.current) {\n return;\n }\n popLock.current = true;\n\n pop();\n };\n const onPaperClick: React.MouseEventHandler = (e) => {\n e.stopPropagation();\n };\n\n const zIndexBase = (activity?.zIndex ?? 0) * 5 + 3;\n const zIndexPaper = (activity?.zIndex ?? 0) * 5 + 4;\n const transitionState = activity?.transitionState ?? \"enter-done\";\n\n return (\n <div\n className={css.container({\n transitionState: useLazy(transitionState),\n })}\n ref={containerRef}\n style={assignInlineVars(\n compactMap({\n [globalVars.bottomSheet.borderRadius]: borderRadius,\n [globalVars.backgroundColor]: backgroundColor,\n [globalVars.dimBackgroundColor]: dimBackgroundColor,\n [css.vars.zIndexes.dim]: `${zIndexBase}`,\n [css.vars.zIndexes.paper]: `${zIndexPaper}`,\n [css.vars.transitionDuration]:\n transitionState === \"enter-active\" ||\n transitionState === \"exit-active\"\n ? `var(--stackflow-transition-duration)`\n : \"0ms\",\n }),\n )}\n >\n <div className={css.dim} ref={paperRef} onClick={onDimClick}>\n <div className={css.paper} onClick={onPaperClick}>\n {children}\n </div>\n </div>\n </div>\n );\n};\n\nModal.displayName = \"Modal\";\n\nexport default Modal;\n", "import 'src/styles/f.css.ts.vanilla.css?source=LmZfX2RodGh4cTAgewogIHdpZHRoOiAxMDAlOwp9Ci5mX19kaHRoeHExIHsKICBoZWlnaHQ6IDEwMCU7Cn0KLmZfX2RodGh4cTIgewogIHRvcDogMDsKfQouZl9fZGh0aHhxMyB7CiAgbGVmdDogMDsKfQouZl9fZGh0aHhxNCB7CiAgcG9zaXRpb246IGFic29sdXRlOwp9Ci5mX19kaHRoeHE1IHsKICBwb3NpdGlvbjogcmVsYXRpdmU7Cn0KLmZfX2RodGh4cTcgewogIGRpc3BsYXk6IGZsZXg7Cn0KLmZfX2RodGh4cTggewogIGZsZXg6IDE7Cn0KLmZfX2RodGh4cTkgewogIGFsaWduLWl0ZW1zOiBjZW50ZXI7Cn0KLmZfX2RodGh4cWEgewogIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDsKfQouZl9fZGh0aHhxYiB7CiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7Cn0KLmZfX2RodGh4cWMgewogIG92ZXJmbG93OiBoaWRkZW47Cn0KLmZfX2RodGh4cWQgewogIHdoaXRlLXNwYWNlOiBub3dyYXA7Cn0KLmZfX2RodGh4cWUgewogIHRleHQtYWxpZ246IGNlbnRlcjsKfQouZl9fZGh0aHhxZiB7CiAgY3Vyc29yOiBwb2ludGVyOwogIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7Cn0KLmZfX2RodGh4cWcgewogIGJveC1zaXppbmc6IGJvcmRlci1ib3g7Cn0KLmZfX2RodGh4cWggewogIGJveC1zaXppbmc6IGNvbnRlbnQtYm94Owp9Ci5mX19kaHRoeHFpIHsKICBhcHBlYXJhbmNlOiBub25lOwogIGJvcmRlcjogMDsKICBwYWRkaW5nOiAwOwogIGJhY2tncm91bmQ6IG5vbmU7Cn0=';\nimport 'src/theme.css.ts.vanilla.css?source=#H4sIAAAAAAAAE+1VXUvDMBR9368I+KKwlLZaBhn+EpGRNml7sckNN7c6Jv53u+ne1K198aElgXyek0vuOYkiRF4LdWyejGYtI+vqpe7wTYaub8DLUkeoZA+SW+vso/aGEMyzeF8JIf/YXg4LDWHvjaywQ1Lipq7r7QWUAfcDkppS36Zr8V2TrLi7RKRDGAYkSyRj6TeidDOWKMLBKpGF/bW41kLTshL3SUHWjUNJJu0jMKCXpid97CiRbwoXryVyw+S0EKAaTj2nLs+G8nAtlO2eJ0KnyeaMxldLxw1KtGCM9ZdwJTKjk7G1ls8ZJm2gj0OOT3f1sRphjqoPlhg8ztweaVKMN0iebP7dISNjWCzyZZHkJP/dLqswBHdI563+5XOYrfKzeSt/efdnpf5PB8YrAD4MAAA=';\nimport 'src/components/Modal.css.ts.vanilla.css?source=#H4sIAAAAAAAAE51T0W6CMBR99yv6sgQT2hQZ0+HrXvawbzCXtmKzQk1bpnPZv6+AaECcbkkT2ttzzj339kLeNAe1WiX6kC9YjL4mCDkDpZVO6jJFH2ACjM+Rl8pA/e0YdLqcfE9IT2V+VllrU6TtVoETMQ8iSh9CRP0aYfKGmQF7z42uSo6ZVtp0LqzzF2uld3irqlyWOAMrGa4k5rLAQ5aXR+iAZcnFvlM4vNYnYWtClzNqgHoLTLrPFNFLV49o4DIcBJIhoCnjJBldSj7dkpz/LjniUvyzd6N920nuNt65f6z6WIDxHJ8WzUhiRFHHMr3HdgNc73x8u0eUPM3qOw+J583G5BkEtH1sv0iUTMMGSpITdHEFOuugcdRCyfM11WnrxnBhsAEuK3tH0do5XXj/Qjjc4x7LVwqzDZS5SM+DHHb9X/bH2zJQIojI3ydJ3JokMfyVjrn6me4YsItMwwG7lmmsqh+//tn1NQQAAA==';\nimport { createRuntimeFn as _7a468 } from '@vanilla-extract/recipes/createRuntimeFn';\nexport var container = _7a468({defaultClassName:'f__dhthxq4 f__dhthxq0 f__dhthxq1 f__dhthxq2 f__dhthxq3 f__dhthxqc',variantClassNames:{transitionState:{'enter-active':'Modal__5ozg8c4','enter-done':'Modal__5ozg8c5','exit-active':'Modal__5ozg8c6','exit-done':'Modal__5ozg8c7'}},defaultVariants:{},compoundVariants:[]});\nexport var dim = 'Modal__5ozg8cd f__dhthxq4 f__dhthxq0 f__dhthxq1 f__dhthxq2 f__dhthxq3 f__dhthxqc f__dhthxq9 f__dhthxq7 f__dhthxqb Modal__5ozg8c3';\nexport var enterActive = 'Modal__5ozg8c4';\nexport var enterDone = 'Modal__5ozg8c5';\nexport var exitActive = 'Modal__5ozg8c6';\nexport var exitDone = 'Modal__5ozg8c7';\nexport var paper = 'Modal__5ozg8ce f__dhthxqc Modal__5ozg8c3';\nexport var vars = {transitionDuration:'var(--transitionDuration__5ozg8c0)',zIndexes:{dim:'var(--zIndexes-dim__5ozg8c1)',paper:'var(--zIndexes-paper__5ozg8c2)'}};"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACCA,qBAAiC;AACjC,mBAAiD;;;ACFjD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACO,IAAI,UAAU;AACd,IAAI,YAAY;AAChB,IAAI,aAAa,EAAC,iBAAgB,qDAAoD,oBAAmB,yDAAwD,QAAO,EAAC,aAAY,yDAAwD,YAAW,wDAAuD,QAAO,mDAAkD,0BAAyB,uEAAsE,WAAU,uDAAsD,WAAU,uDAAsD,WAAU,uDAAsD,iBAAgB,6DAA4D,UAAS,oDAAmD,GAAE,aAAY,EAAC,cAAa,8DAA6D,GAAE,OAAM,EAAC,cAAa,8DAA6D,EAAC;AAC57B,IAAI,cAAc;AAClB,IAAI,gBAAgB;;;ACLpB,SAAS,QAAW,KAAsC;AAC/D,SAAO,IAAI;AAAA,IACT,CAAC,SACC,SAAS,UAAa,SAAS;AAAA,EACnC;AACF;;;ACLO,SAAS,WACd,KAGA;AACA,SAAO,OAAO,QAAQ,GAAG,EAAE,OAAY,CAAC,KAAK,CAAC,KAAK,KAAK,MAAM;AAC5D,QAAI,UAAU,QAAQ,UAAU,QAAW;AACzC,UAAI,OAAO;AAAA,IACb;AAEA,WAAO;AAAA,EACT,GAAG,CAAC,CAAC;AACP;;;ACRO,SAAS,WAAW;AACzB,SAAO,OAAO,WAAW;AAC3B;;;ACAO,SAAS,YAAY;AAC1B,SAAO,CAAC,SAAS;AACnB;;;ACRO,SAAS,WACd,IACA,MACA,IACA;AACA,QAAM,WAAW,MAAM;AACrB,OAAG,oBAAoB,MAAM,QAAQ;AACrC,OAAG;AAAA,EACL;AAEA,KAAG,iBAAiB,MAAM,QAAQ;AACpC;;;ACXO,IAAM,eAAe,CAAC,OAAmB;AAC9C,KAAG;AACH,SAAO,iBAAiB,UAAU,EAAE;AAEpC,SAAO,MAAM;AACX,WAAO,oBAAoB,UAAU,EAAE;AAAA,EACzC;AACF;;;ACPO,IAAM,OAAO,MAAM;AAAC;;;ACCpB,SAAS,iBAAiB,IAAgB;AAC/C,wBAAsB,MAAM;AAC1B,0BAAsB,MAAM;AAC1B,SAAG;AAAA,IACL,CAAC;AAAA,EACH,CAAC;AACH;;;ATyBA,IAAM,2BAAuB,4BAAoC;AAAA,EAC/D,OAAO;AACT,CAAC;AAEM,IAAM,wBAAwB,qBAAqB;AAEnD,SAAS,mBAAmB;AACjC,aAAO,yBAAW,oBAAoB;AACxC;AAEO,IAAM,gBAEe,CAAC,YAAY,OAAO;AAAA,EAC9C,KAAK;AAAA,EACL,UAAU,EAAE,MAAM,GAAG;AA9CvB;AA+CI,WACE,6BAAAA,QAAA,cAAC;AAAA,MAAsB,OAAO;AAAA,OAC5B,6BAAAA,QAAA,cAAC;AAAA,MACC,WACE,UAAU,IACN,QAAQ,CAAC,kBAAM,QAAQ,QAAQ,QAAQ,aAAa,CAAC,EAAE,KAAK,GAAG,IAC/D,QAAQ;AAAA,MAEd,WAAO;AAAA,QACL,WAAW;AAAA,UACT,CAAO,WAAW,kBAAkB,QAAQ;AAAA,UAC5C,CAAO,WAAW,qBAAqB,QAAQ;AAAA,UAC/C,CAAO,WAAW,OAAO,eACvB,aAAQ,WAAR,mBAAgB;AAAA,UAClB,CAAO,WAAW,OAAO,cAAa,aAAQ,WAAR,mBAAgB;AAAA,UACtD,CAAO,WAAW,OAAO,UAAS,aAAQ,WAAR,mBAAgB;AAAA,UAClD,CAAO,WAAW,OAAO,aAAY,aAAQ,WAAR,mBAAgB;AAAA,UACrD,CAAO,WAAW,OAAO,aAAY,aAAQ,WAAR,mBAAgB;AAAA,UACrD,CAAO,WAAW,YAAY,gBAC5B,aAAQ,gBAAR,mBAAqB;AAAA,UACvB,CAAO,WAAW,MAAM,gBACtB,aAAQ,UAAR,mBAAe;AAAA,QACnB,CAAC;AAAA,MACH;AAAA,OAEC,MAAM,OAAO,CAChB,CACF;AAAA,EAEJ;AACF;;;AU3EA,IAAAC,iBAA2B;AAC3B,IAAAC,kBAAiC;AACjC,IAAAD,iBAAkE;;;ACJlE,IAAAE,gBAAoC;AAI7B,SAAS,QAAW,OAAU;AACnC,QAAM,CAAC,OAAO,QAAQ,QAAI,wBAAwB,MAAS;AAE3D,+BAAU,MAAM;AACd,qBAAiB,MAAM;AACrB,eAAS,KAAK;AAAA,IAChB,CAAC;AAAA,EACH,GAAG,CAAC,KAAK,CAAC;AAEV,SAAO;AACT;;;ACbA,IAAAC,gBAAoC;AAI7B,SAAS,YAAY;AAAA,EAC1B;AAAA,EACA;AAAA,EACA;AACF,GAIG;AACD,QAAM,CAAC,UAAU,WAAW,QAAI,wBAA6B,MAAS;AAEtE,+BAAU,MAAM;AACd,UAAM,SAAS,YAAY,aAAa,YAAY,SAAS;AAC7D,UAAM,SAAS,SAAS;AAExB,QAAI,CAAC,UAAU,CAAC,UAAU,CAAC,QAAQ;AACjC,aAAO;AAAA,IACT;AAEA,UAAM,UAAU,aAAa,MAAM;AACjC,YAAM,cAAc,OAAO;AAE3B,YAAM,YAAY,OAAO;AACzB,YAAM,cAAc,OAAO;AAC3B,YAAM,aAAa,cAAc,YAAY;AAE7C,YAAM,aAAa,KAAK,IAAI,WAAW,UAAU;AAEjD,kBAAY,cAAc,IAAI,UAAU;AAAA,IAC1C,CAAC;AAED,WAAO;AAAA,EACT,GAAG,CAAC,CAAC;AAEL,SAAO;AAAA,IACL;AAAA,EACF;AACF;;;ACzCA,IAAAC,gBAA4B;AAErB,SAAS,sBAAsB;AACpC,aAAO,2BAAY;AACrB;;;ACHA,IAAAC,gBAA0B;AAK1B,IAAM,cAQF,CAAC;AAEE,SAAS,eAAsC;AAAA,EACpD;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAQG;AACD,QAAM,WAAW,oBAAoB;AAErC,+BAAU,MAAM;AACd,QAAI,CAAC,UAAU;AACb,aAAO;AAAA,IACT;AACA,QAAI,CAAC,YAAY,YAAY;AAC3B,kBAAY,aAAa,oBAAI,IAAI;AAAA,IACnC;AAEA,gBAAY,WAAW,IAAI,SAAS,QAAQ;AAAA,MAC1C;AAAA,MACA,WAAW,CAAC,CAAC;AAAA,IACf,CAAC;AAED,WAAO,MAAM;AACX,kBAAY,WAAW,OAAO,SAAS,MAAM;AAAA,IAC/C;AAAA,EACF,GAAG,CAAC,qCAAU,IAAI,MAAM,MAAM,CAAC;AAE/B,+BAAU,MAAM;AACd,QAAI,CAAC,UAAU;AACb,aAAO;AAAA,IACT;AACA,QAAI,CAAC,QAAQ;AACX,aAAO;AAAA,IACT;AAEA,UAAMC,SAAQ,MAAM;AAClB,UAAI,MAAiC,CAAC;AAEtC,eAAS,IAAI,GAAG,KAAK,SAAS,QAAQ,KAAK,GAAG;AAC5C,cAAM,aAAa,YAAY,WAAW,IAAI,SAAS,SAAS,CAAC;AAEjE,YAAI,yCAAY,MAAM;AACpB,gBAAM,CAAC,GAAG,KAAK,GAAG,WAAW,IAAI;AAAA,QACnC;AACA,YAAI,yCAAY,WAAW;AACzB;AAAA,QACF;AAAA,MACF;AAEA,aAAO;AAAA,IACT,GAAG;AAEH,UAAM,UAAU,OAAO;AAAA,MACrB,yBAAyB,SAAS;AAAA,MAClC,MAAAA;AAAA,IACF,CAAC;AAED,WAAO,MAAM;AACX;AAAA,IACF;AAAA,EACF,GAAG,CAAC,qCAAU,iBAAiB,GAAI,kCAAc,CAAC,CAAE,CAAC;AACvD;;;AC9EO,SAAS,mBAAmB;AAAA,EACjC;AAAA,EACA;AACF,GAGG;AACD,iBAAe;AAAA,IACb,WAAW;AAAA,IACX;AAAA,IACA,QAAQ,YACJ,CAAC,EAAE,yBAAyB,MAAAC,MAAK,MAAM;AACrC,YAAM,UAAU,MAAM;AACpB,QAAAA,MAAK,QAAQ,CAAC,QAAQ;AACpB,cAAI,CAAC,IAAI,SAAS;AAChB;AAAA,UACF;AACA,gBAAM,OAAO,IAAI;AAEjB,eAAK,MAAM,UAAU;AAAA,QACvB,CAAC;AAAA,MACH;AAEA,cAAQ;AAAA,aACD,cAAc;AACjB,UAAAA,MAAK,QAAQ,CAAC,QAAQ;AACpB,gBAAI,CAAC,IAAI,SAAS;AAChB;AAAA,YACF;AACA,kBAAM,OAAO,IAAI;AAEjB,iBAAK,MAAM,UAAU;AAAA,UACvB,CAAC;AAED,iBAAO,MAAM;AACX,oBAAQ;AAAA,UACV;AAAA,QACF;AAAA,iBACS;AACP,kBAAQ;AAER,iBAAO;AAAA,QACT;AAAA;AAAA,IAEJ,IACA;AAAA,EACN,CAAC;AACH;;;ACjDO,IAAM,oBAAoB;AAC1B,IAAM,sBAAsB;AAE5B,SAAS,qBAAqB;AAAA,EACnC;AAAA,EACA;AAAA,EACA;AACF,GAIG;AACD,iBAAe;AAAA,IACb,WAAW;AAAA,IACX;AAAA,IACA,QAAQ,YACJ,CAAC,EAAE,yBAAyB,MAAAC,MAAK,MAAM;AACrC,YAAM,YACJ,UAAU,cACN,gBAAgB,sBAAsB,iBACtC,mBAAmB,oBAAoB;AAE7C,YAAM,UAAU,MAAM;AACpB,yBAAiB,MAAM;AACrB,UAAAA,MAAK,QAAQ,CAAC,QAAQ;AACpB,gBAAI,CAAC,IAAI,SAAS;AAChB;AAAA,YACF;AAEA,kBAAM,MAAM,IAAI;AAEhB,gBAAI,MAAM,YAAY;AAEtB,uBAAW,KAAK,iBAAiB,MAAM;AACrC,kBAAI,MAAM,aAAa;AAAA,YACzB,CAAC;AAAA,UACH,CAAC;AAAA,QACH,CAAC;AAAA,MACH;AAEA,cAAQ;AAAA,aACD;AAAA,aACA,cAAc;AACjB,UAAAA,MAAK,QAAQ,CAAC,QAAQ;AACpB,gBAAI,CAAC,IAAI,SAAS;AAChB;AAAA,YACF;AAEA,gBAAI,QAAQ,MAAM,aAAa;AAC/B,gBAAI,QAAQ,MAAM,YAAY;AAAA,UAChC,CAAC;AAED,kBAAQ;AAAA,iBACD;AACH,qBAAO,MAAM;AACX,wBAAQ;AAAA,cACV;AAAA,iBACG;AAAA;AAEH,qBAAO;AAAA;AAAA,QAEb;AAAA,aACK;AAAA,aACA,aAAa;AAChB,2BAAiB,MAAM;AACrB,oBAAQ;AAAA,UACV,CAAC;AAED,iBAAO;AAAA,QACT;AAAA,iBACS;AACP,iBAAO;AAAA,QACT;AAAA;AAAA,IAEJ,IACA;AAAA,EACN,CAAC;AACH;;;AC5EO,SAAS,wBAAwB;AAAA,EACtC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAQG;AACD,iBAAe;AAAA,IACb,WAAW;AAAA,IACX,MAAM,CAAC,QAAQ;AAAA,IACf,QAAQ,YACJ,CAAC,EAAE,KAAK,MAAM;AACZ,UAAI,UAAU,aAAa;AACzB,eAAO;AAAA,MACT;AAEA,UAAI,CAAC,OAAO,WAAW,CAAC,QAAQ,WAAW,CAAC,SAAS,SAAS;AAC5D,eAAO;AAAA,MACT;AAEA,YAAM,OAAO,OAAO;AACpB,YAAM,QAAQ,QAAQ;AACtB,YAAM,SAAS,SAAS;AAExB,UAAI,KAAoB;AACxB,UAAI,KAAoB;AACxB,UAAI,IAAmB;AAEvB,UAAI,aAUC,CAAC;AAEN,YAAM,aAAa,MAAM;AACvB,aAAK;AACL,aAAK;AACL,YAAI;AACJ,qBAAa,CAAC;AAAA,MAChB;AAEA,UAAI,WAAW;AAEf,eAAS,UAAU,IAAY;AAC7B,YAAI,CAAC,UAAU;AACb,qBAAW;AAEX,gCAAsB,MAAM;AAC1B,kBAAM,IAAI,KAAK,OAAO;AAEtB,iBAAK,MAAM,UAAU,GAAG,IAAI;AAC5B,iBAAK,MAAM,aAAa;AAExB,mBAAO,MAAM,YAAY;AACzB,mBAAO,MAAM,YAAY,eAAe;AACxC,mBAAO,MAAM,aAAa;AAE1B,iBAAK,QAAQ,CAAC,QAAQ;AA/EtC;AAgFkB,kBAAI,CAAC,IAAI,SAAS;AAChB;AAAA,cACF;AAEA,kBAAI,QAAQ,MAAM,YAAY,eAC5B,MAAM,IAAI,KAAK;AAEjB,kBAAI,QAAQ,MAAM,aAAa;AAE/B,oBAAI,SAAI,QAAQ,kBAAZ,mBAA2B,MAAM,aAAY,QAAQ;AACvD,oBAAI,QAAQ,cAAc,MAAM,UAAU;AAAA,cAC5C;AAAA,YACF,CAAC;AAED,uBAAW;AAAA,UACb,CAAC;AAAA,QACH;AAAA,MACF;AAEA,eAAS,WAAW,EAAE,OAAO,GAAuC;AAClE,eAAO,IAAI,QAAQ,CAAC,YAAY;AAC9B,gCAAsB,MAAM;AAC1B,iBAAK,MAAM,UAAU,GAAG,SAAS,IAAI;AACrC,iBAAK,MAAM,aAAa;AAExB,mBAAO,MAAM,YAAY;AACzB,mBAAO,MAAM,YAAY,cAAc,SAAS,SAAS;AACzD,mBAAO,MAAM,aACX;AAEF,iBAAK,QAAQ,CAAC,QAAQ;AACpB,kBAAI,CAAC,IAAI,SAAS;AAChB;AAAA,cACF;AAEA,kBAAI,QAAQ,MAAM,aAAa;AAC/B,kBAAI,QAAQ,MAAM,YAAY,eAC5B,SAAS,MAAM,IAAI,sBAAsB;AAAA,YAE7C,CAAC;AAED,kBAAM,cAAc,CAAC,GAAG,UAAU;AAElC,oBAAQ;AAER,uBAAW,QAAQ,iBAAiB,MAAM;AACxC,mBAAK,MAAM,UAAU;AACrB,qBAAO,MAAM,YAAY;AACzB,qBAAO,MAAM,YAAY;AAEzB,mBAAK,QAAQ,CAAC,KAAK,MAAM;AACvB,oBAAI,CAAC,IAAI,SAAS;AAChB;AAAA,gBACF;AAEA,sBAAM,aAAa,YAAY;AAE/B,oBAAI,QAAQ;AACV,sBAAI,QAAQ,MAAM,aAAa;AAC/B,sBAAI,QAAQ,MAAM,YAAY;AAE9B,sBAAI,IAAI,QAAQ,eAAe;AAC7B,wBAAI,QAAQ,cAAc,MAAM,UAAU;AAAA,kBAC5C;AAAA,gBACF,WAAW,YAAY;AACrB,sBAAI,QAAQ,MAAM,aAChB,WAAW,MAAM;AACnB,sBAAI,QAAQ,MAAM,YAAY,WAAW,MAAM;AAE/C,sBACE,IAAI,QAAQ,iBACZ,WAAW,eACX;AACA,wBAAI,QAAQ,cAAc,MAAM,UAC9B,WAAW,cAAc,MAAM;AAAA,kBACnC;AAAA,gBACF;AAAA,cACF,CAAC;AAAA,YACH,CAAC;AAAA,UACH,CAAC;AAAA,QACH,CAAC;AAAA,MACH;AAEA,YAAM,eAAe,CAAC,MAAkB;AAnKlD;AAoKY,cAAM,EAAE,cAAc,IAAI;AAE1B,6DAAe,SAAf;AAEA,aAAK,IAAI,EAAE,QAAQ,GAAG;AACtB,aAAK,KAAK,IAAI;AAEd,qBAAa,KAAK,IAAI,CAAC,QAAQ;AAC7B,cAAI,CAAC,IAAI,SAAS;AAChB,mBAAO;AAAA,cACL,OAAO;AAAA,gBACL,WAAW;AAAA,gBACX,YAAY;AAAA,cACd;AAAA,YACF;AAAA,UACF;AAEA,iBAAO;AAAA,YACL,OAAO;AAAA,cACL,WAAW,IAAI,QAAQ,MAAM;AAAA,cAC7B,YAAY,IAAI,QAAQ,MAAM;AAAA,YAChC;AAAA,YACA,eAAe,IAAI,QAAQ,gBACvB;AAAA,cACE,OAAO;AAAA,gBACL,SAAS,IAAI,QAAQ,cAAc,MAAM;AAAA,cAC3C;AAAA,YACF,IACA;AAAA,UACN;AAAA,QACF,CAAC;AAAA,MACH;AAEA,YAAM,cAAc,CAAC,MAAkB;AACrC,YAAI,CAAC,IAAI;AACP,qBAAW;AACX;AAAA,QACF;AAEA,YAAI,EAAE,QAAQ,GAAG;AAEjB,kBAAU,IAAI,EAAE;AAAA,MAClB;AAEA,YAAM,aAAa,MAAM;AACvB,YAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG;AACpB,qBAAW;AACX;AAAA,QACF;AAEA,cAAM,IAAI,KAAK,IAAI;AACnB,cAAM,KAAK,IAAI,OAAO,IAAI;AAC1B,cAAM,SAAS,IAAI,KAAK,IAAI,OAAO,cAAc;AAEjD,YAAI,QAAQ;AACV;AAAA,QACF;AAEA,gBAAQ,QAAQ,EACb,KAAK,MAAM,WAAW,EAAE,OAAO,CAAC,CAAC,EACjC,KAAK,MAAM,WAAW,CAAC;AAAA,MAC5B;AAEA,YAAM,iBAAiB,cAAc,cAAc,EAAE,SAAS,KAAK,CAAC;AACpE,YAAM,iBAAiB,aAAa,aAAa,EAAE,SAAS,KAAK,CAAC;AAClE,YAAM,iBAAiB,YAAY,YAAY,EAAE,SAAS,KAAK,CAAC;AAChE,YAAM,iBAAiB,eAAe,YAAY,EAAE,SAAS,KAAK,CAAC;AAEnE,aAAO,MAAM;AACX,cAAM,oBAAoB,cAAc,YAAY;AACpD,cAAM,oBAAoB,aAAa,WAAW;AAClD,cAAM,oBAAoB,YAAY,UAAU;AAChD,cAAM,oBAAoB,eAAe,UAAU;AAAA,MACrD;AAAA,IACF,IACA;AAAA,IACJ,YAAY,CAAC,SAAS;AAAA,EACxB,CAAC;AACH;;;AClPA,IAAAC,gBAA2B;AAC3B,IAAAC,kBAAiC;AACjC,IAAAD,gBAA8B;;;ACF9B,IAAAE,gBAAkB;AAElB,IAAM,WAED,CAAC,UACJ,8BAAAC,QAAA,cAAC;AAAA,EACC,WAAW,MAAM;AAAA,EACjB,OAAM;AAAA,EACN,QAAO;AAAA,EACP,SAAQ;AAAA,EACR,MAAK;AAAA,EACL,OAAM;AAAA,GAEN,8BAAAA,QAAA,cAAC;AAAA,EACC,GAAE;AAAA,EACF,MAAK;AAAA,CACP,CACF;AAGF,IAAO,mBAAQ;;;ACpBf,IAAAC,gBAAkB;AAElB,IAAM,YAED,CAAC,UACJ,8BAAAC,QAAA,cAAC;AAAA,EACC,WAAW,MAAM;AAAA,EACjB,OAAM;AAAA,EACN,QAAO;AAAA,EACP,SAAQ;AAAA,EACR,MAAK;AAAA,EACL,OAAM;AAAA,GAEN,8BAAAA,QAAA,cAAC;AAAA,EACC,GAAE;AAAA,EACF,MAAK;AAAA,CACP,GACA,8BAAAA,QAAA,cAAC;AAAA,EACC,GAAE;AAAA,EACF,MAAK;AAAA,CACP,CACF;AAGF,IAAO,oBAAQ;;;ACpBf,6BAA0C;AACnC,IAAI,aAAS,uBAAAC,iBAAO,EAAC,kBAAiB,0FAAyF,mBAAkB,EAAC,QAAO,EAAC,MAAK,+BAA8B,GAAE,wBAAuB,EAAC,MAAK,+CAA8C,EAAC,GAAE,iBAAgB,CAAC,GAAE,kBAAiB,CAAC,EAAC,CAAC;AACpT,IAAI,aAAa;AACjB,IAAI,SAAS;AACb,IAAI,iBAAa,uBAAAA,iBAAO,EAAC,kBAAiB,oBAAmB,mBAAkB,EAAC,SAAQ,EAAC,MAAK,gCAA+B,EAAC,GAAE,iBAAgB,CAAC,GAAE,kBAAiB,CAAC,EAAC,CAAC;AACvK,IAAI,iBAAiB;AACrB,IAAI,aAAa;AACjB,IAAI,cAAc;AAClB,IAAI,YAAY;AAChB,IAAI,OAAO;AACX,IAAI,QAAQ;AACZ,IAAI,WAAW;;;ACZtB,IAAAC,0BAA0C;AAEnC,IAAI,gBAAY,wBAAAC,iBAAO,EAAC,kBAAiB,qEAAoE,mBAAkB,EAAC,iBAAgB,EAAC,gBAAe,uBAAsB,cAAa,uBAAsB,eAAc,uBAAsB,aAAY,sBAAqB,EAAC,GAAE,iBAAgB,CAAC,GAAE,kBAAiB,CAAC,EAAC,CAAC;AAExU,IAAI,MAAM;AACV,IAAI,WAAO,wBAAAC,iBAAO,EAAC,kBAAiB,mEAAkE,mBAAkB,EAAC,WAAU,EAAC,MAAK,qCAAoC,EAAC,GAAE,iBAAgB,CAAC,GAAE,kBAAiB,CAAC,EAAC,CAAC;AAKvN,IAAI,YAAQ,wBAAAC,iBAAO,EAAC,kBAAiB,sHAAqH,mBAAkB,EAAC,WAAU,EAAC,MAAK,gDAA+C,GAAE,wBAAuB,EAAC,MAAK,kDAAiD,EAAC,GAAE,iBAAgB,CAAC,GAAE,kBAAiB,CAAC,EAAC,CAAC;AACtW,IAAI,OAAO,EAAC,oBAAmB,uCAAsC,UAAS,EAAC,KAAI,iCAAgC,OAAM,mCAAkC,MAAK,kCAAiC,QAAO,mCAAkC,GAAE,QAAO,EAAC,QAAO,EAAC,WAAU,2CAA0C,EAAC,EAAC;;;AJsCzT,IAAM,SAAS,cAAAC,QAAM;AAAA,EACnB,CACE;AAAA,IACE;AAAA,IACA;AAAA,IACA;AAAA,IACA,YAAAC;AAAA,IACA,aAAAC;AAAA,IACA,sBAAsB;AAAA,IACtB,SAAS;AAAA,IACT;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,GACA,QACG;AA1EP;AA2EI,UAAM,cAAU,0BAAW;AAC3B,UAAM,WAAW,oBAAoB;AAErC,UAAM,gBAAgB,iBAAiB;AACvC,UAAM,qBAAoB,mBAAc,WAAd,mBAAsB;AAChD,UAAM,oBAAmB,mBAAc,WAAd,mBAAsB;AAE/C,UAAM,gBAAY,sBAAY,IAAI;AAElC,UAAM,EAAE,SAAS,IAAI,YAAY;AAAA,MAC/B,UAAU;AAAA,MACV,UAAU;AAAA,MACV,QAAQ,cAAc,UAAU;AAAA,IAClC,CAAC;AAED,UAAM,yBAAyB,2BAA2B;AAE1D,UAAM,cAAc,CAAC,MAA2C;AAC9D,UAAID,eAAc,aAAaA,eAAcA,YAAW,SAAS;AAC/D,QAAAA,YAAW,QAAQ,CAAC;AAAA,MACtB;AAEA,UAAI,CAAC,EAAE,kBAAkB;AACvB,gBAAQ,IAAI;AAAA,MACd;AAAA,IACF;AAEA,UAAM,mBAAmB,MAAM;AAtGnC,UAAAE,KAAAC;AAuGM,UAAI,CAAC,UAAU;AACb,eAAO;AAAA,MACT;AACA,UAAI,SAAS,QAAQ;AACnB,eAAO;AAAA,MACT;AAEA,UAAI,CAACH,eAAc,CAAC,kBAAkB;AACpC,eACE,8BAAAD,QAAA,cAAC;AAAA,UACC,MAAK;AAAA,UACL,WAAe;AAAA,UACf,SAAS;AAAA,WAET,8BAAAA,QAAA,cAAC,sBAAS,CACZ;AAAA,MAEJ;AAEA,UAAIC,eAAc,YAAYA,eAAcA,YAAW,QAAQ;AAC7D,gBAAOE,MAAAF,YAAW,WAAX,gBAAAE,IAAA,KAAAF;AAAA,MACT;AACA,UACE,oBACA,YAAY,oBACZ,iBAAiB,QACjB;AACA,gBAAOG,MAAA,iBAAiB,WAAjB,gBAAAA,IAAA;AAAA,MACT;AAEA,aACE,8BAAAJ,QAAA,cAAC;AAAA,QACC,MAAK;AAAA,QACL,WAAe;AAAA,QACf,cACEC,eAAc,eAAeA,cACzBA,YAAW,YACX,oBAAoB,eAAe,mBACnC,iBAAiB,YACjB;AAAA,QAEN,SAAS;AAAA,UAEP,MAAM;AACN,YACEA,eACA,gBAAgBA,eAChBA,YAAW,YACX;AACA,iBAAOA,YAAW,WAAW;AAAA,QAC/B;AACA,YACE,oBACA,gBAAgB,oBAChB,iBAAiB,YACjB;AACA,iBAAO,iBAAiB,WAAW;AAAA,QACrC;AAEA,YAAI,wBAAwB;AAC1B,iBAAO,8BAAAD,QAAA,cAAC,uBAAU;AAAA,QACpB;AAEA,eAAO,8BAAAA,QAAA,cAAC,sBAAS;AAAA,MACnB,GAAG,CACL;AAAA,IAEJ;AAEA,UAAM,eAAe,CAAC,MAA2C;AA5KrE,UAAAG;AA6KM,UAAID,gBAAe,aAAaA,gBAAeA,aAAY,SAAS;AAClE,QAAAA,aAAY,QAAQ,CAAC;AAAA,MACvB;AAEA,UACE,CAAC,EAAE,oBACH,qBACA,aAAa,mBACb;AACA,SAAAC,MAAA,kBAAkB,YAAlB,gBAAAA,IAAA,wBAA4B;AAAA,MAC9B;AAAA,IACF;AAEA,UAAM,oBAAoB,MAAM;AA1LpC,UAAAA;AA2LM,YAAM,SAAS,CAAC,YAAY,SAAS;AAErC,YAAM,kBAAkB,CAACD,iBACtBA,gBAAe,YAAYA,gBAAeA,aAAY,UACtDA,gBACC,gBAAgBA,gBAChBA,aAAY,cACbA,gBAAe,aAAaA,gBAAeA,aAAY;AAE1D,UACE,EACE,gBAAgBA,YAAW,KAC3B,iBAAgBC,MAAA,cAAc,WAAd,gBAAAA,IAAsB,WAAW,MAEnD,CAAC,QACD;AACA,eAAO;AAAA,MACT;AACA,UAAID,gBAAe,YAAYA,gBAAeA,aAAY,QAAQ;AAChE,eAAOA,aAAY,OAAO;AAAA,MAC5B;AACA,UACE,qBACA,YAAY,qBACZ,kBAAkB,QAClB;AACA,eAAO,kBAAkB,OAAO;AAAA,MAClC;AAEA,aACE,8BAAAF,QAAA,cAAC;AAAA,QACC,MAAK;AAAA,QACL,WAAe;AAAA,QACf,cACEE,gBAAe,eAAeA,eAC1BA,aAAY,YACZ,qBAAqB,eAAe,oBACpC,kBAAkB,YAClB;AAAA,QAEN,SAAS;AAAA,UAEP,MAAM;AACN,YACEA,gBACA,gBAAgBA,gBAChBA,aAAY,YACZ;AACA,iBAAOA,aAAY,WAAW;AAAA,QAChC;AACA,YACE,qBACA,gBAAgB,qBAChB,kBAAkB,YAClB;AACA,iBAAO,kBAAkB,WAAW;AAAA,QACtC;AAEA,eAAO,8BAAAF,QAAA,cAAC,uBAAU;AAAA,MACpB,GAAG,CACL;AAAA,IAEJ;AAEA,UAAM,UAAU,CAAC,EACd,wBAAwB,UAAUE,gBACnCD,eACA;AAGF,WACE,8BAAAD,QAAA,cAAC;AAAA,MACC;AAAA,MACA,WAAe,OAAO;AAAA,QACpB;AAAA,QACA;AAAA,MACF,CAAC;AAAA,MACD,WAAO;AAAA,QACL,WAAW;AAAA,UACT,CAAC,WAAW,OAAO,YAAY;AAAA,UAC/B,CAAC,WAAW,OAAO,YAAY;AAAA,UAC/B,CAAC,WAAW,OAAO,cAAc;AAAA,UACjC,CAAC,WAAW,OAAO,aAAa;AAAA,UAChC,CAAC,WAAW,OAAO,SAAS;AAAA,UAC5B,CAAC,WAAW,OAAO,2BACjB;AAAA,UACF,CAAC,WAAW,OAAO,WAAW;AAAA,UAC9B,CAAC,WAAW,OAAO,kBACjB,mBAAmB,WAAW;AAAA,UAChC,CAAc,KAAK,OAAO,OAAO,YAAY,GAAG;AAAA,QAClD,CAAC;AAAA,MACH;AAAA,OAEA,8BAAAA,QAAA,cAAC;AAAA,MAAI,WAAe;AAAA,KAAU,GAC9B,8BAAAA,QAAA,cAAC;AAAA,MAAI,WAAe;AAAA,OAClB,8BAAAA,QAAA,cAAC;AAAA,MAAI,WAAe;AAAA,OACjB,wBAAwB,UAAU,kBAAkB,GACpD,iBAAiB,GACjB,0CACH,GACA,8BAAAA,QAAA,cAAC;AAAA,MAAI,KAAK;AAAA,MAAW,WAAe;AAAA,OAClC,8BAAAA,QAAA,cAAC;AAAA,MACC,WAAe,WAAW;AAAA,QACxB;AAAA,MACF,CAAC;AAAA,OAEA,OAAO,UAAU,WAChB,8BAAAA,QAAA,cAAC;AAAA,MAAI,WAAe;AAAA,OAAa,KAAM,IAEvC,OAEF,8BAAAA,QAAA,cAAC;AAAA,MACC,WAAe;AAAA,MACf,MAAK;AAAA,MACL,eAAY;AAAA,MACZ,SAAS;AAAA,KACX,CACF,CACF,GACA,8BAAAA,QAAA,cAAC;AAAA,MAAI,WAAe;AAAA,OACjB,8CACA,wBAAwB,WAAW,kBAAkB,CACxD,CACF,CACF;AAAA,EAEJ;AACF;AAEA,OAAO,cAAc;AAErB,IAAO,iBAAQ;;;ARtSf,IAAM,cAAU,8BAAgC,IAAW;AAEpD,SAAS,eAAe;AAC7B,aAAO,2BAAW,OAAO;AAC3B;AAUA,IAAM,YAAsC,CAAC;AAAA,EAC3C;AAAA,EACA;AAAA,EACA,QAAAK;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,MAAM;AA7CN;AA8CE,QAAM,gBAAgB,iBAAiB;AACvC,QAAM,WAAW,oBAAoB;AAErC,QAAM,EAAE,IAAI,QAAI,2BAAW;AAE3B,QAAM,mBAAe,uBAAuB,IAAI;AAChD,QAAM,aAAS,uBAAuB,IAAI;AAC1C,QAAM,eAAW,uBAAuB,IAAI;AAC5C,QAAM,cAAU,uBAAuB,IAAI;AAC3C,QAAM,gBAAY,uBAAuB,IAAI;AAE7C,QAAM,yBAAyB,2BAA2B;AAC1D,QAAM,qBAAqB,oBAAoB;AAE/C,qBAAmB;AAAA,IACjB,MAAM,CAAC,YAAY;AAAA,IACnB,WAAW;AAAA,EACb,CAAC;AACD,uBAAqB;AAAA,IACnB,OAAO,cAAc;AAAA,IACrB,MACE,cAAc,UAAU,cAAc,CAAC,QAAQ,IAAI,CAAC,UAAU,SAAS;AAAA,IACzE,WAAW,CAAC;AAAA,EACd,CAAC;AACD,0BAAwB;AAAA,IACtB,OAAO,cAAc;AAAA,IACrB;AAAA,IACA;AAAA,IACA;AAAA,IACA,WAAW;AAAA,IACX,WAAW;AAAA,IACX,WAAW;AACT,UAAI;AAAA,IACN;AAAA,EACF,CAAC;AAED,QAAM,YAAY,CAAC,CAACA;AAEpB,QAAM,eAAc,0CAAU,WAAV,YAAoB,KAAK;AAC7C,QAAM,YAAY;AAClB,QAAM,cACJ,cAAc,cAAc,UAAU,eAAe,YAAY,IAAI;AACvE,QAAM,aAAa,aAAa;AAChC,QAAM,eACJ,cAAc,UAAU,cAAc,aAAa,IAAI,aAAa;AAEtE,QAAM,mBAAkB,0CAAU,oBAAV,YAA6B;AACrD,QAAM,sBAAsB,QAAQ,eAAe;AAEnD,QAAM,mBAA4C,CAAC,MAAM;AA/F3D,QAAAC,KAAAC;AAgGI,KAAAD,MAAAD,WAAA,gBAAAA,QAAQ,eAAR,gBAAAC,IAAA,KAAAD,SAAqB;AAErB,QAAI,CAAC,EAAE,kBAAkB;AACvB,OAAAE,MAAA,SAAS,YAAT,gBAAAA,IAAkB,OAAO;AAAA,QACvB,KAAK;AAAA,QACL,UAAU;AAAA,MACZ;AAAA,IACF;AAAA,EACF;AAEA,SACE,+BAAAC,QAAA,cAAC,QAAQ,UAAR;AAAA,IACC,WAAO;AAAA,MACL,OAAO;AAAA,QACL,OAAO,EAAE,IAAI,GAAG;AA9G1B,cAAAF;AA+GY,WAAAA,MAAA,qCAAU,YAAV,gBAAAA,IAAmB,OAAO;AAAA,YACxB;AAAA,YACA,UAAU;AAAA,UACZ;AAAA,QACF;AAAA,MACF;AAAA,MACA,CAAC,QAAQ;AAAA,IACX;AAAA,KAEA,+BAAAE,QAAA,cAAC;AAAA,IACC,KAAK;AAAA,IACL,WAAe,UAAU;AAAA,MACvB,iBACE,oBAAoB,gBAAgB,oBAAoB,cACpD,kBACA;AAAA,IACR,CAAC;AAAA,IACD,WAAO;AAAA,MACL,WAAW;AAAA,QACT,CAAC,WAAW,kBAAkB;AAAA,QAC9B,CAAC,WAAW,qBAAqB;AAAA,QACjC,CAAC,WAAW,OAAO,SAASH,WAAA,gBAAAA,QAAQ;AAAA,QACpC,CAAC,WAAW,OAAO,2BACjBA,WAAA,gBAAAA,QAAQ;AAAA,QACV,CAAK,KAAK,SAAS,MAAM,GAAG;AAAA,QAC5B,CAAK,KAAK,SAAS,QAAQ,GAAG;AAAA,QAC9B,CAAK,KAAK,SAAS,OAAO,GAAG;AAAA,QAC7B,CAAK,KAAK,SAAS,SAAS,GAAG;AAAA,QAC/B,CAAK,KAAK,qBACR,oBAAoB,kBACpB,oBAAoB,gBAChB,yCACA;AAAA,MACR,CAAC;AAAA,IACH;AAAA,KAEA,+BAAAG,QAAA,cAAC;AAAA,IAAI,WAAe;AAAA,IAAK,KAAK;AAAA,GAAQ,GACrCH,WACC,+BAAAG,QAAA,cAAC,iDACKH,UADL;AAAA,IAEC,KAAK;AAAA,IACL;AAAA,IACA,YAAY;AAAA,IACd,GAEF,+BAAAG,QAAA,cAAC;AAAA,IACC,KAAK,qCAAU;AAAA,IACf,WAAe,MAAM;AAAA,MACnB;AAAA,MACA;AAAA,IACF,CAAC;AAAA,IACD,KAAK;AAAA,KAEJ,QACH,GACC,EAAC,qCAAU,WACV,cAAc,UAAU,eACxB,CAAC,sBACC,+BAAAA,QAAA,cAAC;AAAA,IAAI,WAAe,KAAK,EAAE,UAAU,CAAC;AAAA,IAAG,KAAK;AAAA,GAAS,CAE7D,CACF;AAEJ;AAEA,UAAU,cAAc;AAExB,IAAO,oBAAQ;;;AahLf,IAAAC,iBAA2B;AAC3B,IAAAC,kBAAiC;AACjC,IAAAD,iBAA8B;;;ACD9B,IAAAE,0BAA0C;AACnC,IAAIC,iBAAY,wBAAAC,iBAAO,EAAC,kBAAiB,qEAAoE,mBAAkB,EAAC,iBAAgB,EAAC,gBAAe,yBAAwB,cAAa,yBAAwB,eAAc,yBAAwB,aAAY,wBAAuB,EAAC,GAAE,iBAAgB,CAAC,GAAE,kBAAiB,CAAC,EAAC,CAAC;AAChV,IAAIC,OAAM;AAKV,IAAIC,SAAQ;AACZ,IAAIC,QAAO,EAAC,oBAAmB,uCAAsC,UAAS,EAAC,KAAI,iCAAgC,OAAM,kCAAiC,EAAC;;;ADQlK,IAAM,cAA0C,CAAC;AAAA,EAC/C,eAAe;AAAA,EACf;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,MAAM;AAzBN;AA0BE,QAAM,WAAW,oBAAoB;AACrC,QAAM,EAAE,IAAI,QAAI,2BAAW;AAE3B,QAAM,mBAAe,uBAAuB,IAAI;AAChD,QAAM,eAAW,uBAAuB,IAAI;AAE5C,iBAAe;AAAA,IACb,WAAW;AAAA,IACX,MAAM,CAAC,YAAY;AAAA,EACrB,CAAC;AACD,iBAAe;AAAA,IACb,WAAW;AAAA,IACX,MAAM,CAAC,QAAQ;AAAA,EACjB,CAAC;AACD,iBAAe;AAAA,IACb,WAAW;AAAA,IACX,MAAM,CAAC,QAAQ;AAAA,EACjB,CAAC;AAED,QAAM,cAAU,uBAAO,KAAK;AAE5B,QAAM,aAAsC,CAAC,MAAM;AACjD,qDAAiB;AAEjB,QAAI,EAAE,kBAAkB;AACtB;AAAA,IACF;AAEA,QAAI,QAAQ,SAAS;AACnB;AAAA,IACF;AACA,YAAQ,UAAU;AAElB,QAAI;AAAA,EACN;AACA,QAAM,eAAwC,CAAC,MAAM;AACnD,MAAE,gBAAgB;AAAA,EACpB;AAEA,QAAM,eAAc,0CAAU,WAAV,YAAoB,KAAK,IAAI;AACjD,QAAM,gBAAe,0CAAU,WAAV,YAAoB,KAAK,IAAI;AAClD,QAAM,mBAAkB,0CAAU,oBAAV,YAA6B;AAErD,SACE,+BAAAC,QAAA,cAAC;AAAA,IACC,WAAeC,WAAU;AAAA,MACvB,iBAAiB,QAAQ,eAAe;AAAA,IAC1C,CAAC;AAAA,IACD,KAAK;AAAA,IACL,WAAO;AAAA,MACL,WAAW;AAAA,QACT,CAAC,WAAW,YAAY,eAAe;AAAA,QACvC,CAAC,WAAW,kBAAkB;AAAA,QAC9B,CAAC,WAAW,qBAAqB;AAAA,QACjC,CAAKC,MAAK,SAAS,MAAM,GAAG;AAAA,QAC5B,CAAKA,MAAK,SAAS,QAAQ,GAAG;AAAA,QAC9B,CAAKA,MAAK,qBACR,oBAAoB,kBACpB,oBAAoB,gBAChB,yCACA;AAAA,MACR,CAAC;AAAA,IACH;AAAA,KAEA,+BAAAF,QAAA,cAAC;AAAA,IAAI,WAAeG;AAAA,IAAK,KAAK;AAAA,IAAU,SAAS;AAAA,KAC/C,+BAAAH,QAAA,cAAC;AAAA,IAAI,WAAeI;AAAA,IAAO,SAAS;AAAA,KACjC,QACH,CACF,CACF;AAEJ;AAEA,YAAY,cAAc;AAE1B,IAAO,sBAAQ;;;AEnGf,IAAAC,iBAA2B;AAC3B,IAAAC,kBAAiC;AACjC,IAAAD,iBAA8B;;;ACD9B,IAAAE,0BAA0C;AACnC,IAAIC,iBAAY,wBAAAC,iBAAO,EAAC,kBAAiB,qEAAoE,mBAAkB,EAAC,iBAAgB,EAAC,gBAAe,kBAAiB,cAAa,kBAAiB,eAAc,kBAAiB,aAAY,iBAAgB,EAAC,GAAE,iBAAgB,CAAC,GAAE,kBAAiB,CAAC,EAAC,CAAC;AACpT,IAAIC,OAAM;AAKV,IAAIC,SAAQ;AACZ,IAAIC,QAAO,EAAC,oBAAmB,sCAAqC,UAAS,EAAC,KAAI,gCAA+B,OAAM,iCAAgC,EAAC;;;ADQ/J,IAAM,QAA8B,CAAC;AAAA,EACnC;AAAA,EACA;AAAA,EACA,eAAe;AAAA,EACf;AAAA,EACA;AACF,MAAM;AAzBN;AA0BE,QAAM,WAAW,oBAAoB;AACrC,QAAM,EAAE,IAAI,QAAI,2BAAW;AAE3B,QAAM,mBAAe,uBAAuB,IAAI;AAChD,QAAM,eAAW,uBAAuB,IAAI;AAE5C,iBAAe;AAAA,IACb,WAAW;AAAA,IACX,MAAM,CAAC,YAAY;AAAA,EACrB,CAAC;AACD,iBAAe;AAAA,IACb,WAAW;AAAA,IACX,MAAM,CAAC,QAAQ;AAAA,EACjB,CAAC;AACD,iBAAe;AAAA,IACb,WAAW;AAAA,IACX,MAAM,CAAC,QAAQ;AAAA,EACjB,CAAC;AAED,QAAM,cAAU,uBAAO,KAAK;AAE5B,QAAM,aAAsC,CAAC,MAAM;AACjD,qDAAiB;AAEjB,QAAI,EAAE,kBAAkB;AACtB;AAAA,IACF;AAEA,QAAI,QAAQ,SAAS;AACnB;AAAA,IACF;AACA,YAAQ,UAAU;AAElB,QAAI;AAAA,EACN;AACA,QAAM,eAAwC,CAAC,MAAM;AACnD,MAAE,gBAAgB;AAAA,EACpB;AAEA,QAAM,eAAc,0CAAU,WAAV,YAAoB,KAAK,IAAI;AACjD,QAAM,gBAAe,0CAAU,WAAV,YAAoB,KAAK,IAAI;AAClD,QAAM,mBAAkB,0CAAU,oBAAV,YAA6B;AAErD,SACE,+BAAAC,QAAA,cAAC;AAAA,IACC,WAAeC,WAAU;AAAA,MACvB,iBAAiB,QAAQ,eAAe;AAAA,IAC1C,CAAC;AAAA,IACD,KAAK;AAAA,IACL,WAAO;AAAA,MACL,WAAW;AAAA,QACT,CAAC,WAAW,YAAY,eAAe;AAAA,QACvC,CAAC,WAAW,kBAAkB;AAAA,QAC9B,CAAC,WAAW,qBAAqB;AAAA,QACjC,CAAKC,MAAK,SAAS,MAAM,GAAG;AAAA,QAC5B,CAAKA,MAAK,SAAS,QAAQ,GAAG;AAAA,QAC9B,CAAKA,MAAK,qBACR,oBAAoB,kBACpB,oBAAoB,gBAChB,yCACA;AAAA,MACR,CAAC;AAAA,IACH;AAAA,KAEA,+BAAAF,QAAA,cAAC;AAAA,IAAI,WAAeG;AAAA,IAAK,KAAK;AAAA,IAAU,SAAS;AAAA,KAC/C,+BAAAH,QAAA,cAAC;AAAA,IAAI,WAAeI;AAAA,IAAO,SAAS;AAAA,KACjC,QACH,CACF,CACF;AAEJ;AAEA,MAAM,cAAc;AAEpB,IAAO,gBAAQ;",
6
6
  "names": ["React", "import_react", "import_dynamic", "import_react", "import_react", "import_react", "import_react", "refs", "refs", "refs", "import_react", "import_dynamic", "import_react", "React", "import_react", "React", "_7a468", "import_createRuntimeFn", "_7a468", "_7a468", "_7a468", "React", "backButton", "closeButton", "_a", "_b", "appBar", "_a", "_b", "React", "import_react", "import_dynamic", "import_createRuntimeFn", "container", "_7a468", "dim", "paper", "vars", "React", "container", "vars", "dim", "paper", "import_react", "import_dynamic", "import_createRuntimeFn", "container", "_7a468", "dim", "paper", "vars", "React", "container", "vars", "dim", "paper"]
7
7
  }
package/dist/index.mjs CHANGED
@@ -37,7 +37,7 @@ __export(theme_css_exports, {
37
37
  });
38
38
  var android = "theme__1coppmz0";
39
39
  var cupertino = "theme__1coppmz1";
40
- var globalVars = { backgroundColor: "var(--stackflow-plugin-basic-ui-background-color)", dimBackgroundColor: "var(--stackflow-plugin-basic-ui-dim-background-color)", appBar: { borderColor: "var(--stackflow-plugin-basic-ui-app-bar-border-color)", borderSize: "var(--stackflow-plugin-basic-ui-app-bar-border-size)", height: "var(--stackflow-plugin-basic-ui-app-bar-height)", heightTransitionDuration: "var(--stackflow-plugin-basic-ui-app-bar-height-transition-duration)", minHeight: "var(--stackflow-plugin-basic-ui-app-bar-min-height)", iconColor: "var(--stackflow-plugin-basic-ui-app-bar-icon-color)", textColor: "var(--stackflow-plugin-basic-ui-app-bar-text-color)", backgroundColor: "var(--stackflow-plugin-basic-ui-app-bar-background-color)" }, bottomSheet: { borderRadius: "var(--stackflow-plugin-basic-ui-bottom-sheet-border-radius)" }, modal: { borderRadius: "var(--stackflow-plugin-basic-ui-bottom-sheet-border-radius)" } };
40
+ var globalVars = { backgroundColor: "var(--stackflow-plugin-basic-ui-background-color)", dimBackgroundColor: "var(--stackflow-plugin-basic-ui-dim-background-color)", appBar: { borderColor: "var(--stackflow-plugin-basic-ui-app-bar-border-color)", borderSize: "var(--stackflow-plugin-basic-ui-app-bar-border-size)", height: "var(--stackflow-plugin-basic-ui-app-bar-height)", heightTransitionDuration: "var(--stackflow-plugin-basic-ui-app-bar-height-transition-duration)", minHeight: "var(--stackflow-plugin-basic-ui-app-bar-min-height)", iconColor: "var(--stackflow-plugin-basic-ui-app-bar-icon-color)", textColor: "var(--stackflow-plugin-basic-ui-app-bar-text-color)", backgroundColor: "var(--stackflow-plugin-basic-ui-app-bar-background-color)", overflow: "var(--stackflow-plugin-basic-ui-app-bar-overflow)" }, bottomSheet: { borderRadius: "var(--stackflow-plugin-basic-ui-bottom-sheet-border-radius)" }, modal: { borderRadius: "var(--stackflow-plugin-basic-ui-bottom-sheet-border-radius)" } };
41
41
  var rootAndroid = ":root[data-stackflow-plugin-basic-ui-theme=android]";
42
42
  var rootCupertino = ":root[data-stackflow-plugin-basic-ui-theme=cupertino]";
43
43
 
@@ -58,6 +58,16 @@ function compactMap(obj) {
58
58
  }, {});
59
59
  }
60
60
 
61
+ // src/utils/isServer.ts
62
+ function isServer() {
63
+ return typeof window === "undefined";
64
+ }
65
+
66
+ // src/utils/isBrowser.ts
67
+ function isBrowser() {
68
+ return !isServer();
69
+ }
70
+
61
71
  // src/utils/listenOnce.ts
62
72
  function listenOnce(el, type, cb) {
63
73
  const listener = () => {
@@ -104,7 +114,7 @@ var basicUIPlugin = (options) => () => ({
104
114
  return /* @__PURE__ */ React.createElement(GlobalOptionsProvider, {
105
115
  value: options
106
116
  }, /* @__PURE__ */ React.createElement("div", {
107
- className: typeof window !== "undefined" ? compact([theme_css_exports[options.theme], options.rootClassName]).join(" ") : options.rootClassName,
117
+ className: isBrowser() ? compact([theme_css_exports[options.theme], options.rootClassName]).join(" ") : options.rootClassName,
108
118
  style: assignInlineVars(
109
119
  compactMap({
110
120
  [globalVars.backgroundColor]: options.backgroundColor,
@@ -186,8 +196,7 @@ function useStyleEffect({
186
196
  const activity = useNullableActivity();
187
197
  useEffect3(() => {
188
198
  if (!activity) {
189
- return () => {
190
- };
199
+ return noop;
191
200
  }
192
201
  if (!connections[styleName]) {
193
202
  connections[styleName] = /* @__PURE__ */ new Map();
@@ -202,12 +211,10 @@ function useStyleEffect({
202
211
  }, [activity == null ? void 0 : activity.id, refs, effect]);
203
212
  useEffect3(() => {
204
213
  if (!activity) {
205
- return () => {
206
- };
214
+ return noop;
207
215
  }
208
216
  if (!effect) {
209
- return () => {
210
- };
217
+ return noop;
211
218
  }
212
219
  const refs2 = (() => {
213
220
  let arr = [];
@@ -265,8 +272,7 @@ function useStyleEffectHide({
265
272
  }
266
273
  default: {
267
274
  cleanup();
268
- return () => {
269
- };
275
+ return noop;
270
276
  }
271
277
  }
272
278
  } : void 0
@@ -317,8 +323,7 @@ function useStyleEffectOffset({
317
323
  };
318
324
  case "enter-active":
319
325
  default:
320
- return () => {
321
- };
326
+ return noop;
322
327
  }
323
328
  }
324
329
  case "exit-active":
@@ -326,12 +331,10 @@ function useStyleEffectOffset({
326
331
  requestNextFrame(() => {
327
332
  cleanup();
328
333
  });
329
- return () => {
330
- };
334
+ return noop;
331
335
  }
332
336
  default: {
333
- return () => {
334
- };
337
+ return noop;
335
338
  }
336
339
  }
337
340
  } : void 0
@@ -353,12 +356,10 @@ function useStyleEffectSwipeBack({
353
356
  refs: [paperRef],
354
357
  effect: hasEffect ? ({ refs }) => {
355
358
  if (theme !== "cupertino") {
356
- return () => {
357
- };
359
+ return noop;
358
360
  }
359
361
  if (!dimRef.current || !edgeRef.current || !paperRef.current) {
360
- return () => {
361
- };
362
+ return noop;
362
363
  }
363
364
  const $dim = dimRef.current;
364
365
  const $edge = edgeRef.current;
@@ -547,17 +548,17 @@ var IconClose_default = IconClose;
547
548
 
548
549
  // src/components/AppBar.css.ts
549
550
  import { createRuntimeFn as _7a468 } from "@vanilla-extract/recipes/createRuntimeFn";
550
- var appBar = _7a468({ defaultClassName: "AppBar__1yk3a451 f__dhthxq4 f__dhthxq0 f__dhthxqh f__dhthxqc AppScreen__1dlf4347", variantClassNames: { border: { true: "AppBar_border_true__1yk3a452" }, presentModalFullScreen: { true: "AppBar_presentModalFullScreen_true__1yk3a453" } }, defaultVariants: {}, compoundVariants: [] });
551
- var backButton = "AppBar__1yk3a457 f__dhthxq9 f__dhthxq7 f__dhthxqb f__dhthxqf f__dhthxqi";
551
+ var appBar = _7a468({ defaultClassName: "AppBar__1yk3a452 f__dhthxq4 f__dhthxq0 f__dhthxqh AppScreen__1dlf4347 AppBar__1yk3a451", variantClassNames: { border: { true: "AppBar_border_true__1yk3a453" }, presentModalFullScreen: { true: "AppBar_presentModalFullScreen_true__1yk3a454" } }, defaultVariants: {}, compoundVariants: [] });
552
+ var backButton = "AppBar__1yk3a458 f__dhthxq9 f__dhthxq7 f__dhthxqb f__dhthxqf f__dhthxqi";
552
553
  var center = "f__dhthxq9 f__dhthxq7 f__dhthxq8 AppBar__1yk3a450";
553
- var centerMain = _7a468({ defaultClassName: "AppBar__1yk3a45a", variantClassNames: { hasLeft: { true: "AppBar_hasLeft_true__1yk3a45b" } }, defaultVariants: {}, compoundVariants: [] });
554
- var centerMainEdge = "AppBar__1yk3a45c f__dhthxqi f__dhthxq4 f__dhthxq2 f__dhthxqf";
555
- var centerText = "AppBar__1yk3a45d f__dhthxqc f__dhthxqd f__dhthxq0";
556
- var closeButton = "AppBar__1yk3a457 f__dhthxq9 f__dhthxq7 f__dhthxqb f__dhthxqf f__dhthxqi";
557
- var container = "AppBar__1yk3a455 f__dhthxqa f__dhthxq7 f__dhthxqc";
558
- var left = "AppBar__1yk3a456 f__dhthxq9 f__dhthxq7 f__dhthxq1 AppBar__1yk3a450";
559
- var right = "AppBar__1yk3a45e f__dhthxq9 f__dhthxq7 f__dhthxq1 f__dhthxq5 AppBar__1yk3a450";
560
- var safeArea = "AppBar__1yk3a454";
554
+ var centerMain = _7a468({ defaultClassName: "AppBar__1yk3a45b", variantClassNames: { hasLeft: { true: "AppBar_hasLeft_true__1yk3a45c" } }, defaultVariants: {}, compoundVariants: [] });
555
+ var centerMainEdge = "AppBar__1yk3a45d f__dhthxqi f__dhthxq4 f__dhthxq2 f__dhthxqf";
556
+ var centerText = "AppBar__1yk3a45e f__dhthxqc f__dhthxqd f__dhthxq0";
557
+ var closeButton = "AppBar__1yk3a458 f__dhthxq9 f__dhthxq7 f__dhthxqb f__dhthxqf f__dhthxqi";
558
+ var container = "AppBar__1yk3a456 f__dhthxqa f__dhthxq7 AppBar__1yk3a451";
559
+ var left = "AppBar__1yk3a457 f__dhthxq9 f__dhthxq7 f__dhthxq1 AppBar__1yk3a450";
560
+ var right = "AppBar__1yk3a45f f__dhthxq9 f__dhthxq7 f__dhthxq1 f__dhthxq5 AppBar__1yk3a450";
561
+ var safeArea = "AppBar__1yk3a455";
561
562
 
562
563
  // src/components/AppScreen.css.ts
563
564
  import { createRuntimeFn as _7a4682 } from "@vanilla-extract/recipes/createRuntimeFn";
@@ -583,6 +584,8 @@ var AppBar = React4.forwardRef(
583
584
  borderColor,
584
585
  borderSize,
585
586
  height,
587
+ heightTransitionDuration,
588
+ overflow,
586
589
  backgroundColor,
587
590
  onTopClick
588
591
  }, ref) => {
@@ -697,6 +700,8 @@ var AppBar = React4.forwardRef(
697
700
  [globalVars.appBar.borderColor]: borderColor,
698
701
  [globalVars.appBar.borderSize]: borderSize,
699
702
  [globalVars.appBar.height]: height,
703
+ [globalVars.appBar.heightTransitionDuration]: heightTransitionDuration,
704
+ [globalVars.appBar.overflow]: overflow,
700
705
  [globalVars.appBar.backgroundColor]: backgroundColor || globalVars.backgroundColor,
701
706
  [vars.appBar.center.mainWidth]: `${maxWidth}px`
702
707
  })