{"version":3,"file":"static/chunks/app/not-found-3d73e3691155e201.js","mappings":"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","sources":["webpack://_N_E/?0445","webpack://_N_E/../client/use-merged-ref.ts","webpack://_N_E/../src/index.tsx","webpack://_N_E/../src/utils.tsx"],"sourcesContent":["import(/* webpackMode: \"eager\", webpackExports: [\"__esModule\",\"default\"] */ \"/codebuild/output/src3873721467/src/mtalkz.com/node_modules/next/dist/client/app-dir/link.js\");\n;\nimport(/* webpackMode: \"eager\" */ \"/codebuild/output/src3873721467/src/mtalkz.com/node_modules/react-wrap-balancer/dist/index.mjs\");\n","import { useCallback, useRef, type Ref } from 'react'\n\n// This is a compatibility hook to support React 18 and 19 refs.\n// In 19, a cleanup function from refs may be returned.\n// In 18, returning a cleanup function creates a warning.\n// Since we take userspace refs, we don't know ahead of time if a cleanup function will be returned.\n// This implements cleanup functions with the old behavior in 18.\n// We know refs are always called alternating with `null` and then `T`.\n// So a call with `null` means we need to call the previous cleanup functions.\nexport function useMergedRef(\n refA: Ref,\n refB: Ref\n): Ref {\n const cleanupA = useRef<(() => void) | null>(null)\n const cleanupB = useRef<(() => void) | null>(null)\n\n // NOTE: In theory, we could skip the wrapping if only one of the refs is non-null.\n // (this happens often if the user doesn't pass a ref to Link/Form/Image)\n // But this can cause us to leak a cleanup-ref into user code (e.g. via ``),\n // and the user might pass that ref into ref-merging library that doesn't support cleanup refs\n // (because it hasn't been updated for React 19)\n // which can then cause things to blow up, because a cleanup-returning ref gets called with `null`.\n // So in practice, it's safer to be defensive and always wrap the ref, even on React 19.\n return useCallback(\n (current: TElement | null): void => {\n if (current === null) {\n const cleanupFnA = cleanupA.current\n if (cleanupFnA) {\n cleanupA.current = null\n cleanupFnA()\n }\n const cleanupFnB = cleanupB.current\n if (cleanupFnB) {\n cleanupB.current = null\n cleanupFnB()\n }\n } else {\n if (refA) {\n cleanupA.current = applyRef(refA, current)\n }\n if (refB) {\n cleanupB.current = applyRef(refB, current)\n }\n }\n },\n [refA, refB]\n )\n}\n\nfunction applyRef(\n refA: NonNullable>,\n current: TElement\n) {\n if (typeof refA === 'function') {\n const cleanup = refA(current)\n if (typeof cleanup === 'function') {\n return cleanup\n } else {\n return () => refA(null)\n }\n } else {\n refA.current = current\n return () => {\n refA.current = null\n }\n }\n}\n","'use client'\n\nimport React from 'react'\nimport { useId, IS_SERVER, useIsomorphicLayoutEffect } from './utils'\n\nconst SYMBOL_KEY = '__wrap_b'\nconst SYMBOL_NATIVE_KEY = '__wrap_n'\nconst SYMBOL_OBSERVER_KEY = '__wrap_o'\n\ninterface WrapperElement extends HTMLElement {\n [SYMBOL_OBSERVER_KEY]?: ResizeObserver | undefined\n}\n\ntype RelayoutFn = (\n id: string | number,\n ratio: number,\n wrapper?: WrapperElement\n) => void\n\ndeclare global {\n interface Window {\n [SYMBOL_KEY]: RelayoutFn\n // A flag to indicate whether the browser supports text-balancing natively.\n // undefined: not injected\n // 1: injected and supported\n // 2: injected but not supported\n [SYMBOL_NATIVE_KEY]?: number\n }\n}\n\nconst relayout: RelayoutFn = (id, ratio, wrapper) => {\n wrapper =\n wrapper || document.querySelector(`[data-br=\"${id}\"]`)\n const container = wrapper?.parentElement\n\n if (!container) { return; }\n\n const update = (width: number) => (wrapper.style.maxWidth = width + 'px')\n\n // Reset wrapper width\n wrapper.style.maxWidth = ''\n\n // Get the initial container size\n const width = container.clientWidth\n const height = container.clientHeight\n\n // Synchronously do binary search and calculate the layout\n let lower: number = width / 2 - 0.25\n let upper: number = width + 0.5\n let middle: number\n\n if (width) {\n // Ensure we don't search widths lower than when the text overflows\n update(lower)\n lower = Math.max(wrapper.scrollWidth, lower)\n\n while (lower + 1 < upper) {\n middle = Math.round((lower + upper) / 2)\n update(middle)\n if (container.clientHeight === height) {\n upper = middle\n } else {\n lower = middle\n }\n }\n\n // Update the wrapper width\n update(upper * ratio + width * (1 - ratio))\n }\n\n // Create a new observer if we don't have one.\n // Note that we must inline the key here as we use `toString()` to serialize\n // the function.\n if (!wrapper['__wrap_o']) {\n if (typeof ResizeObserver !== 'undefined') {\n ;(wrapper['__wrap_o'] = new ResizeObserver(() => {\n self.__wrap_b(0, +wrapper.dataset.brr, wrapper)\n })).observe(container)\n } else {\n // Silently ignore ResizeObserver for production builds\n if (process.env.NODE_ENV === 'development') {\n console.warn(\n 'The browser you are using does not support the ResizeObserver API. ' +\n 'Please consider add polyfill for this API to avoid potential layout shifts or upgrade your browser. ' +\n 'Read more: https://github.com/shuding/react-wrap-balancer#browser-support-information'\n )\n }\n }\n }\n}\n\nconst RELAYOUT_STR = relayout.toString()\n\nconst isTextWrapBalanceSupported = `(self.CSS&&CSS.supports(\"text-wrap\",\"balance\")?1:2)`\n\nconst createScriptElement = (\n injected: boolean,\n nonce?: string,\n suffix: string = ''\n) => {\n if (suffix) {\n suffix = `self.${SYMBOL_NATIVE_KEY}!=1&&${suffix}`\n }\n return (\n \n )\n}\n\ninterface BalancerOwnProps<\n ElementType extends React.ElementType = React.ElementType\n> extends React.HTMLAttributes {\n /**\n * The HTML tag to use for the wrapper element.\n * @default 'span'\n */\n as?: ElementType\n /**\n * The balance ratio of the wrapper width (0 <= ratio <= 1).\n * 0 means the wrapper width is the same as the container width (no balance, browser default).\n * 1 means the wrapper width is the minimum (full balance, most compact).\n * @default 1\n */\n ratio?: number\n /**\n * An option to skip the re-balance logic\n * and use the native CSS text-balancing if supported.\n * @default true\n */\n preferNative?: boolean\n /**\n * The nonce attribute to allowlist inline script injection by the component.\n */\n nonce?: string\n}\n\ntype BalancerProps =\n BalancerOwnProps &\n Omit, keyof BalancerOwnProps>\n\n/**\n * An optional provider to inject the global relayout function, so all children\n * Balancer components can share it.\n */\nconst BalancerContext = React.createContext<{\n preferNative: boolean\n hasProvider: boolean\n}>({ preferNative: true, hasProvider: false })\nconst Provider: React.FC<{\n /**\n * An option to skip the re-balance logic\n * and use the native CSS text-balancing if supported.\n * @default true\n */\n preferNative?: boolean\n /**\n * The nonce attribute to allowlist inline script injection by the component\n */\n nonce?: string\n children?: React.ReactNode\n}> = ({ preferNative = true, nonce, children }) => {\n const contextValue = React.useMemo(() => {\n return {\n preferNative,\n hasProvider: true,\n }\n }, [preferNative])\n return (\n \n {createScriptElement(false, nonce)}\n {children}\n \n )\n}\n\nconst Balancer = React.forwardRef(\n (\n {\n ratio = 1,\n preferNative,\n nonce,\n children,\n as,\n ...props\n }: BalancerProps,\n ref\n ) => {\n const id = useId()\n const wrapperRef = React.useRef()\n const contextValue = React.useContext(BalancerContext)\n const preferNativeBalancing = preferNative ?? contextValue.preferNative\n const Wrapper: React.ElementType = as || 'span'\n\n React.useImperativeHandle(ref, () => wrapperRef.current, [])\n\n // Re-balance on content change and on mount/hydration.\n useIsomorphicLayoutEffect(() => {\n // Skip if the browser supports text-balancing natively.\n if (preferNativeBalancing && self[SYMBOL_NATIVE_KEY] === 1) return\n\n if (wrapperRef.current) {\n // Re-assign the function here as the component can be dynamically rendered, and script tag won't work in that case.\n ;(self[SYMBOL_KEY] = relayout)(0, ratio, wrapperRef.current)\n }\n }, [children, preferNativeBalancing, ratio])\n\n // Remove the observer when unmounting.\n useIsomorphicLayoutEffect(() => {\n // Skip if the browser supports text-balancing natively.\n if (preferNativeBalancing && self[SYMBOL_NATIVE_KEY] === 1) return\n\n return () => {\n if (!wrapperRef.current) return\n\n const resizeObserver = wrapperRef.current[SYMBOL_OBSERVER_KEY]\n if (!resizeObserver) return\n\n resizeObserver.disconnect()\n delete wrapperRef.current[SYMBOL_OBSERVER_KEY]\n }\n }, [preferNativeBalancing])\n\n if (process.env.NODE_ENV === 'development') {\n // In development, we check `children`'s type to ensure we are not wrapping\n // elements like

or

inside. Instead should directly\n // wrap text nodes.\n if (\n children &&\n !Array.isArray(children) &&\n typeof children === 'object'\n ) {\n if (\n 'type' in children &&\n typeof children.type === 'string' &&\n children.type !== 'span'\n ) {\n console.warn(\n ` should not wrap <${children.type}> inside. Instead, it should directly wrap text or inline nodes.\n\nTry changing this:\n <${children.type}>content\nTo:\n <${children.type}>content`\n )\n }\n }\n }\n\n return (\n <>\n \n {children}\n \n {createScriptElement(\n contextValue.hasProvider,\n nonce,\n `self.${SYMBOL_KEY}(\"${id}\",${ratio})`\n )}\n \n )\n }\n)\n\n// As Next.js adds `display: none` to `body` for development, we need to trigger\n// a re-balance right after the style is removed, synchronously.\nif (!IS_SERVER && process.env.NODE_ENV !== 'production') {\n const next_dev_style = document.querySelector(\n '[data-next-hide-fouc]'\n )\n if (next_dev_style) {\n const callback: MutationCallback = (mutationList) => {\n for (const mutation of mutationList) {\n for (const node of Array.from(mutation.removedNodes)) {\n if (node !== next_dev_style) continue\n\n observer.disconnect()\n const elements =\n document.querySelectorAll('[data-br]')\n\n for (const element of Array.from(elements)) {\n self[SYMBOL_KEY](0, +element.dataset.brr, element)\n }\n }\n }\n }\n const observer = new MutationObserver(callback)\n observer.observe(document.head, { childList: true })\n }\n}\n\nexport default Balancer\nexport { Provider, Balancer, BalancerOwnProps }\n","import React from 'react'\n\nexport const IS_SERVER = typeof window === 'undefined'\nexport const useIsomorphicLayoutEffect = IS_SERVER\n ? React.useEffect\n : React.useLayoutEffect\n\nlet ID = 0\nconst genId = () => ++ID\nlet serverHandoffComplete = false\n\nfunction useIdPolyfill() {\n const [id, setId] = React.useState(serverHandoffComplete ? genId : undefined)\n\n useIsomorphicLayoutEffect(() => {\n if (id === undefined) {\n setId(genId())\n }\n\n serverHandoffComplete = true\n }, [])\n\n if (id === undefined) {\n return id\n }\n\n return `rwb-${id.toString(32)}`\n}\n\n/**\n * A hook for generating unique IDs that are stable across the server and client,\n * while avoiding hydration mismatches. Compatible with React 16+ by using\n * [React 18's useId](https://reactjs.org/docs/hooks-reference.html#useid) if\n * it's available, and a polyfill implementation inspired by\n * [@accessible/use-id](https://github.com/accessible-ui/use-id) if it is not.\n *\n * \"rwb-\" is hard-coded as a prefix in the polyfill. When using React 18+,\n * a prefix can be provided with the `identifierPrefix` option in\n * [ReactDOMClient](https://reactjs.org/docs/react-dom-client.html).\n */\nexport function useId() {\n const implementation = React.useMemo((): (() => string | number) => {\n if ('useId' in React) return React.useId\n return useIdPolyfill\n }, [])\n\n return implementation()\n}\n"],"names":["useMergedRef","refA","refB","cleanupA","useRef","cleanupB","useCallback","current","cleanupFnA","cleanupFnB","applyRef","cleanup","useIsomorphicLayoutEffect","IS_SERVER","ID","SYMBOL_KEY","genId","SYMBOL_NATIVE_KEY","serverHandoffComplete","SYMBOL_OBSERVER_KEY","relayout","id","ratio","wrapper","container","update","width","height","lower","upper","middle","RELAYOUT_STR","createScriptElement","isTextWrapBalanceSupported","injected","nonce","suffix","preferNative","BalancerContext","Provider","children","contextValue","Balancer","ref","as","props","React","wrapperRef","preferNativeBalancing","Wrapper","resizeObserver","src_default"],"sourceRoot":"","ignoreList":[]}