diff --git a/dist/index.js b/dist/index.js index f7351a3..41b90e0 100644 --- a/dist/index.js +++ b/dist/index.js @@ -326,7 +326,7 @@ var PagesProgressBar = React.memo(function (_a) { }; var handleRouteStart = function (url) { var targetUrl = new URL(url, location.href); - var currentUrl = new URL(Router.route, location.href); + var currentUrl = new URL(location.href); if (shallowRouting && isSameURLWithoutSearch(targetUrl, currentUrl) && disableSameURL) diff --git a/dist/index.js.map b/dist/index.js.map index 222d70c..8358831 100644 --- a/dist/index.js.map +++ b/dist/index.js.map @@ -1 +1 @@ -{"version":3,"file":"index.js","sources":["../src/utils/sameURL.ts","../src/utils/getAnchorProperty.ts","../src/utils/css.ts","../src/AppProgressBar.tsx","../src/WithSuspense.tsx","../src/PagesProgressBar.tsx","../src/index.tsx"],"sourcesContent":["export function isSameURL(target: URL, current: URL) {\n const cleanTarget =\n target.protocol + '//' + target.host + target.pathname + target.search;\n const cleanCurrent =\n current.protocol + '//' + current.host + current.pathname + current.search;\n\n return cleanTarget === cleanCurrent;\n}\n\nexport function isSameURLWithoutSearch(target: URL, current: URL) {\n const cleanTarget = target.protocol + '//' + target.host + target.pathname;\n const cleanCurrent =\n current.protocol + '//' + current.host + current.pathname;\n\n return cleanTarget === cleanCurrent;\n}\n","function parsePath(path: string) {\n const hashIndex = path.indexOf('#');\n const queryIndex = path.indexOf('?');\n const hasQuery = queryIndex > -1 && (hashIndex < 0 || queryIndex < hashIndex);\n\n if (hasQuery || hashIndex > -1) {\n return {\n pathname: path.substring(0, hasQuery ? queryIndex : hashIndex),\n query: hasQuery\n ? path.substring(queryIndex, hashIndex > -1 ? hashIndex : undefined)\n : '',\n hash: hashIndex > -1 ? path.slice(hashIndex) : '',\n };\n }\n\n return { pathname: path, query: '', hash: '' };\n}\n\nfunction addPathPrefix(path: string, prefix?: string) {\n if (!path.startsWith('/') || !prefix) {\n return path;\n }\n\n const { pathname, query, hash } = parsePath(path);\n return `${prefix}${pathname}${query}${hash}`;\n}\n\nexport function getAnchorProperty<\n T extends HTMLAnchorElement | SVGAElement,\n K extends keyof T,\n P extends T[K],\n>(a: T, key: K): P extends SVGAnimatedString ? string : P {\n if (typeof key === 'string' && key === 'data-disable-nprogress') {\n const dataKey = key.substring(5) as keyof DOMStringMap;\n return a.dataset[dataKey] as any;\n }\n\n const prop = a[key];\n\n if (prop instanceof SVGAnimatedString) {\n const value = prop.baseVal as unknown;\n\n if (key === 'href') {\n return addPathPrefix(value as string, location.origin) as any;\n }\n\n return value as any;\n }\n\n return prop as any;\n}\n","import type { SpinnerPosition } from '..';\n\nexport const css = ({\n color,\n height,\n spinnerPosition,\n}: {\n color?: string;\n height?: string;\n spinnerPosition?: SpinnerPosition;\n}) => `\n#nprogress {\n pointer-events: none;\n}\n\n#nprogress .bar {\n background: ${color};\n\n position: fixed;\n z-index: 99999;\n top: 0;\n left: 0;\n\n width: 100%;\n height: ${height};\n}\n\n/* Fancy blur effect */\n#nprogress .peg {\n display: block;\n position: absolute;\n right: 0px;\n width: 100px;\n height: 100%;\n box-shadow: 0 0 10px ${color}, 0 0 5px ${color};\n opacity: 1.0;\n\n -webkit-transform: rotate(3deg) translate(0px, -4px);\n -ms-transform: rotate(3deg) translate(0px, -4px);\n transform: rotate(3deg) translate(0px, -4px);\n}\n\n/* Remove these to get rid of the spinner */\n#nprogress .spinner {\n display: block;\n position: fixed;\n z-index: 1031;\n top: ${\n spinnerPosition === 'top-right' || spinnerPosition === 'top-left'\n ? '15px'\n : 'auto'\n };\n bottom: ${\n spinnerPosition === 'bottom-right' || spinnerPosition === 'bottom-left'\n ? '15px'\n : 'auto'\n };\n right: ${\n spinnerPosition === 'top-right' || spinnerPosition === 'bottom-right'\n ? '15px'\n : 'auto'\n };\n left: ${\n spinnerPosition === 'top-left' || spinnerPosition === 'bottom-left'\n ? '15px'\n : 'auto'\n };\n}\n\n#nprogress .spinner-icon {\n width: 18px;\n height: 18px;\n box-sizing: border-box;\n\n border: solid 2px transparent;\n border-top-color: ${color};\n border-left-color: ${color};\n border-radius: 50%;\n\n -webkit-animation: nprogress-spinner 400ms linear infinite;\n animation: nprogress-spinner 400ms linear infinite;\n}\n\n.nprogress-custom-parent {\n overflow: hidden;\n position: relative;\n}\n\n.nprogress-custom-parent #nprogress .spinner,\n.nprogress-custom-parent #nprogress .bar {\n position: absolute;\n}\n\n@-webkit-keyframes nprogress-spinner {\n 0% { -webkit-transform: rotate(0deg); }\n 100% { -webkit-transform: rotate(360deg); }\n}\n@keyframes nprogress-spinner {\n 0% { transform: rotate(0deg); }\n 100% { transform: rotate(360deg); }\n}\n`;\n","'use client';\n\nimport React, { useCallback, useEffect, useMemo, useRef } from 'react';\nimport { NProgress } from 'nprogress-v2';\nimport { isSameURL, isSameURLWithoutSearch } from './utils/sameURL';\nimport {\n usePathname,\n useSearchParams,\n useRouter as useNextRouter,\n} from 'next/navigation';\nimport type { ProgressBarProps, RouterNProgressOptions } from '.';\nimport { getAnchorProperty } from './utils/getAnchorProperty';\nimport {\n type AppRouterInstance,\n NavigateOptions,\n} from 'next/dist/shared/lib/app-router-context.shared-runtime';\nimport { css } from './utils/css';\n\ntype PushStateInput = [\n data: any,\n unused: string,\n url?: string | URL | null | undefined,\n];\n\nexport const AppProgressBar = React.memo(\n ({\n color = '#0A2FFF',\n height = '2px',\n options,\n spinnerPosition = 'top-right',\n shallowRouting = false,\n disableSameURL = true,\n startPosition = 0,\n delay = 0,\n stopDelay = 0,\n style,\n nonce,\n targetPreprocessor,\n disableAnchorClick = false,\n }: ProgressBarProps) => {\n const styles = (\n \n );\n\n NProgress.configure(options || {});\n\n let progressDoneTimer: NodeJS.Timeout;\n\n const pathname = usePathname();\n const searchParams = useSearchParams();\n\n useEffect(() => {\n if (progressDoneTimer) clearTimeout(progressDoneTimer);\n progressDoneTimer = setTimeout(() => {\n NProgress.done();\n }, stopDelay);\n }, [pathname, searchParams]);\n\n const elementsWithAttachedHandlers = useRef<\n (HTMLAnchorElement | SVGAElement)[]\n >([]);\n useEffect(() => {\n if (disableAnchorClick) {\n return;\n }\n\n let timer: NodeJS.Timeout;\n\n const startProgress = () => {\n timer = setTimeout(() => {\n if (startPosition > 0) NProgress.set(startPosition);\n NProgress.start();\n }, delay);\n };\n\n const stopProgress = () => {\n if (timer) clearTimeout(timer);\n timer = setTimeout(() => {\n if (!NProgress.isStarted()) return;\n NProgress.done();\n }, stopDelay);\n };\n\n const handleAnchorClick = (event: MouseEvent) => {\n // Skip preventDefault\n if (event.defaultPrevented) return;\n\n const anchorElement = event.currentTarget as\n | HTMLAnchorElement\n | SVGAElement;\n const target = event.target as HTMLElement | Element;\n let preventProgress =\n target?.getAttribute('data-prevent-nprogress') === 'true' ||\n anchorElement?.getAttribute('data-prevent-nprogress') === 'true';\n\n if (!preventProgress) {\n let element: HTMLElement | Element | null = target;\n\n while (element && element.tagName.toLowerCase() !== 'a') {\n if (\n element.parentElement?.getAttribute('data-prevent-nprogress') ===\n 'true'\n ) {\n preventProgress = true;\n break;\n }\n element = element.parentElement;\n }\n }\n\n if (preventProgress) return;\n\n const anchorTarget = getAnchorProperty(anchorElement, 'target');\n // Skip anchors with target=\"_blank\"\n if (anchorTarget === '_blank') return;\n\n // Skip control/command/option/alt+click\n if (event.metaKey || event.ctrlKey || event.shiftKey || event.altKey)\n return;\n\n const targetHref = getAnchorProperty(anchorElement, 'href');\n const targetUrl = targetPreprocessor\n ? targetPreprocessor(new URL(targetHref))\n : new URL(targetHref);\n const currentUrl = new URL(location.href);\n\n if (\n shallowRouting &&\n isSameURLWithoutSearch(targetUrl, currentUrl) &&\n disableSameURL\n )\n return;\n if (isSameURL(targetUrl, currentUrl) && disableSameURL) return;\n\n startProgress();\n };\n\n const handleMutation: MutationCallback = () => {\n const anchorElements = Array.from(document.querySelectorAll('a')) as (\n | HTMLAnchorElement\n | SVGAElement\n )[];\n\n const validAnchorElements = anchorElements.filter((anchor) => {\n const href = getAnchorProperty(anchor, 'href');\n const isNProgressDisabled =\n anchor.getAttribute('data-disable-nprogress') === 'true';\n const isNotTelOrMailto =\n href &&\n !href.startsWith('tel:') &&\n !href.startsWith('mailto:') &&\n !href.startsWith('blob:') &&\n !href.startsWith('javascript:');\n\n return (\n !isNProgressDisabled &&\n isNotTelOrMailto &&\n getAnchorProperty(anchor, 'target') !== '_blank'\n );\n });\n\n validAnchorElements.forEach((anchor) => {\n anchor.addEventListener('click', handleAnchorClick, true);\n });\n elementsWithAttachedHandlers.current = validAnchorElements;\n };\n\n const mutationObserver = new MutationObserver(handleMutation);\n mutationObserver.observe(document, { childList: true, subtree: true });\n\n const originalWindowHistoryPushState = window.history.pushState;\n window.history.pushState = new Proxy(window.history.pushState, {\n apply: (target, thisArg, argArray: PushStateInput) => {\n stopProgress();\n return target.apply(thisArg, argArray);\n },\n });\n\n return () => {\n mutationObserver.disconnect();\n elementsWithAttachedHandlers.current.forEach((anchor) => {\n anchor.removeEventListener('click', handleAnchorClick, true);\n });\n elementsWithAttachedHandlers.current = [];\n window.history.pushState = originalWindowHistoryPushState;\n };\n }, [\n disableAnchorClick,\n targetPreprocessor,\n shallowRouting,\n disableSameURL,\n ]);\n\n return styles;\n },\n (prevProps, nextProps) => {\n if (nextProps?.memo === false) {\n return false;\n }\n\n if (!nextProps?.shouldCompareComplexProps) {\n return true;\n }\n\n return (\n prevProps?.color === nextProps?.color &&\n prevProps?.height === nextProps?.height &&\n prevProps?.shallowRouting === nextProps?.shallowRouting &&\n prevProps?.startPosition === nextProps?.startPosition &&\n prevProps?.delay === nextProps?.delay &&\n prevProps?.disableSameURL === nextProps?.disableSameURL &&\n prevProps?.stopDelay === nextProps?.stopDelay &&\n prevProps?.nonce === nextProps?.nonce &&\n JSON.stringify(prevProps?.options) ===\n JSON.stringify(nextProps?.options) &&\n prevProps?.style === nextProps?.style &&\n prevProps.disableAnchorClick === nextProps.disableAnchorClick\n );\n },\n);\n\nAppProgressBar.displayName = 'AppProgressBar';\n\nexport function useRouter(customRouter?: () => AppRouterInstance) {\n const useSelectedRouter = useCallback(() => {\n if (customRouter) return customRouter();\n return useNextRouter();\n }, [customRouter]);\n\n const router = useSelectedRouter();\n\n const startProgress = useCallback(\n (startPosition?: number) => {\n if (startPosition && startPosition > 0) NProgress.set(startPosition);\n NProgress.start();\n },\n [router],\n );\n\n const progress = useCallback(\n (\n href: string,\n options?: NavigateOptions,\n NProgressOptions?: RouterNProgressOptions,\n ) => {\n if (NProgressOptions?.showProgressBar === false) {\n return router.push(href, options);\n }\n\n const currentUrl = new URL(location.href);\n const targetUrl = new URL(href, location.href);\n\n if (\n isSameURL(targetUrl, currentUrl) &&\n NProgressOptions?.disableSameURL !== false\n )\n return router.push(href, options);\n\n startProgress(NProgressOptions?.startPosition);\n },\n [router],\n );\n\n const push = useCallback(\n (\n href: string,\n options?: NavigateOptions,\n NProgressOptions?: RouterNProgressOptions,\n ) => {\n progress(href, options, NProgressOptions);\n return router.push(href, options);\n },\n [router, startProgress],\n );\n\n const replace = useCallback(\n (\n href: string,\n options?: NavigateOptions,\n NProgressOptions?: RouterNProgressOptions,\n ) => {\n progress(href, options, NProgressOptions);\n return router.replace(href, options);\n },\n [router, startProgress],\n );\n\n const back = useCallback(\n (NProgressOptions?: RouterNProgressOptions) => {\n if (NProgressOptions?.showProgressBar === false) return router.back();\n\n startProgress(NProgressOptions?.startPosition);\n\n return router.back();\n },\n [router],\n );\n\n const enhancedRouter = useMemo(() => {\n return { ...router, push, replace, back };\n }, [router, push, replace, back]);\n\n return enhancedRouter;\n}\n","import React, { ComponentType, Suspense } from 'react';\n\nexport default function withSuspense

(\n Component: ComponentType

,\n) {\n return function WithSuspenseComponent(props: P) {\n return (\n \n \n \n );\n };\n}\n","import React, { useEffect } from 'react';\nimport { NProgress } from 'nprogress-v2';\nimport { isSameURL, isSameURLWithoutSearch } from './utils/sameURL';\nimport Router from 'next/router';\nimport type { ProgressBarProps } from '.';\nimport { css } from './utils/css';\n\nexport const PagesProgressBar = React.memo(\n ({\n color = '#0A2FFF',\n height = '2px',\n options,\n spinnerPosition = 'top-right',\n shallowRouting = false,\n disableSameURL = true,\n startPosition = 0,\n delay = 0,\n stopDelay = 0,\n style,\n nonce,\n }: Omit) => {\n const styles = (\n \n );\n\n NProgress.configure(options || {});\n\n useEffect(() => {\n let timer: NodeJS.Timeout;\n\n const startProgress = () => {\n timer = setTimeout(() => {\n if (startPosition > 0) NProgress.set(startPosition);\n NProgress.start();\n }, delay);\n };\n\n const stopProgress = () => {\n if (timer) clearTimeout(timer);\n timer = setTimeout(() => {\n if (!NProgress.isStarted()) return;\n NProgress.done(true);\n }, stopDelay);\n };\n\n const handleRouteStart = (url: string) => {\n const targetUrl = new URL(url, location.href);\n const currentUrl = new URL(Router.route, location.href);\n\n if (\n shallowRouting &&\n isSameURLWithoutSearch(targetUrl, currentUrl) &&\n disableSameURL\n )\n return;\n if (isSameURL(targetUrl, currentUrl) && disableSameURL) return;\n\n startProgress();\n };\n const handleRouteDone = () => stopProgress();\n\n Router.events.on('routeChangeStart', handleRouteStart);\n Router.events.on('routeChangeComplete', handleRouteDone);\n Router.events.on('routeChangeError', handleRouteDone);\n\n return () => {\n // Make sure to remove the event handler on unmount!\n Router.events.off('routeChangeStart', handleRouteStart);\n Router.events.off('routeChangeComplete', handleRouteDone);\n Router.events.off('routeChangeError', handleRouteDone);\n };\n }, []);\n\n return styles;\n },\n (prevProps, nextProps) => {\n if (nextProps?.memo === false) {\n return false;\n }\n\n if (!nextProps?.shouldCompareComplexProps) {\n return true;\n }\n\n return (\n prevProps?.color === nextProps?.color &&\n prevProps?.height === nextProps?.height &&\n prevProps?.shallowRouting === nextProps?.shallowRouting &&\n prevProps?.startPosition === nextProps?.startPosition &&\n prevProps?.delay === nextProps?.delay &&\n prevProps?.disableSameURL === nextProps?.disableSameURL &&\n prevProps?.stopDelay === nextProps?.stopDelay &&\n prevProps?.nonce === nextProps?.nonce &&\n JSON.stringify(prevProps?.options) ===\n JSON.stringify(nextProps?.options) &&\n prevProps?.style === nextProps?.style\n );\n },\n);\n\nPagesProgressBar.displayName = 'PagesProgressBar';\n","import { NProgress, NProgressOptions } from 'nprogress-v2';\nimport {\n AppProgressBar as AppProgressBarComponent,\n useRouter,\n} from './AppProgressBar';\nimport withSuspense from './WithSuspense';\n\nexport type SpinnerPosition =\n | 'top-left'\n | 'top-right'\n | 'bottom-left'\n | 'bottom-right';\n\n/**\n * @param color Color of the progress bar. @default #0A2FFF\n * @param height Height of the progress bar. @default 2px\n * @param options NProgress options. @default undefined\n * @param spinnerPosition Position of the spinner. @default top-right\n * @param shallowRouting If the progress bar is not displayed when you use shallow routing - @default false\n * @param startPosition The position of the progress bar at the start of the page load - @default 0\n * @param delay When the page loads faster than the progress bar, it does not display - @default 0\n * @param stopDelay Delay to stop the progress bar - @default 0\n * @param style Custom css - @default undefined\n * @param nonce Custom nonce for Content-Security-Policy directives - @default undefined\n * @param shouldCompareComplexProps If you want to compare props in the React.memo return - @default false\n * @param targetPreprocessor If you want to./AppProgressBaress the target URL - @default undefined\n * @param disableAnchorClick Disable triggering progress bar on anchor clicks - @default false\n * @param disableSameURL Disable triggering progress bar on the same URL - @default true\n */\nexport interface ProgressBarProps {\n color?: string;\n height?: string;\n options?: Partial;\n spinnerPosition?: SpinnerPosition;\n shallowRouting?: boolean;\n disableSameURL?: boolean;\n startPosition?: number;\n delay?: number;\n stopDelay?: number;\n style?: string;\n nonce?: string;\n memo?: boolean;\n shouldCompareComplexProps?: boolean;\n targetPreprocessor?: (url: URL) => URL;\n disableAnchorClick?: boolean;\n}\n\nexport interface RouterNProgressOptions {\n showProgressBar?: boolean;\n startPosition?: number;\n disableSameURL?: boolean;\n}\n\nexport const startProgress = () => {\n NProgress.start();\n};\n\nexport const stopProgress = (force?: boolean) => {\n NProgress.done(force);\n};\n\nconst AppProgressBar = withSuspense(AppProgressBarComponent);\nexport { AppProgressBar, useRouter, NProgressOptions };\nexport { PagesProgressBar } from './PagesProgressBar';\n"],"names":["AppProgressBar","NProgress","usePathname","useSearchParams","useEffect","useRef","useCallback","useNextRouter","useMemo","Suspense","AppProgressBarComponent"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"index.js","sources":["../src/utils/sameURL.ts","../src/utils/getAnchorProperty.ts","../src/utils/css.ts","../src/AppProgressBar.tsx","../src/WithSuspense.tsx","../src/PagesProgressBar.tsx","../src/index.tsx"],"sourcesContent":["export function isSameURL(target: URL, current: URL) {\n const cleanTarget =\n target.protocol + '//' + target.host + target.pathname + target.search;\n const cleanCurrent =\n current.protocol + '//' + current.host + current.pathname + current.search;\n\n return cleanTarget === cleanCurrent;\n}\n\nexport function isSameURLWithoutSearch(target: URL, current: URL) {\n const cleanTarget = target.protocol + '//' + target.host + target.pathname;\n const cleanCurrent =\n current.protocol + '//' + current.host + current.pathname;\n\n return cleanTarget === cleanCurrent;\n}\n","function parsePath(path: string) {\n const hashIndex = path.indexOf('#');\n const queryIndex = path.indexOf('?');\n const hasQuery = queryIndex > -1 && (hashIndex < 0 || queryIndex < hashIndex);\n\n if (hasQuery || hashIndex > -1) {\n return {\n pathname: path.substring(0, hasQuery ? queryIndex : hashIndex),\n query: hasQuery\n ? path.substring(queryIndex, hashIndex > -1 ? hashIndex : undefined)\n : '',\n hash: hashIndex > -1 ? path.slice(hashIndex) : '',\n };\n }\n\n return { pathname: path, query: '', hash: '' };\n}\n\nfunction addPathPrefix(path: string, prefix?: string) {\n if (!path.startsWith('/') || !prefix) {\n return path;\n }\n\n const { pathname, query, hash } = parsePath(path);\n return `${prefix}${pathname}${query}${hash}`;\n}\n\nexport function getAnchorProperty<\n T extends HTMLAnchorElement | SVGAElement,\n K extends keyof T,\n P extends T[K],\n>(a: T, key: K): P extends SVGAnimatedString ? string : P {\n if (typeof key === 'string' && key === 'data-disable-nprogress') {\n const dataKey = key.substring(5) as keyof DOMStringMap;\n return a.dataset[dataKey] as any;\n }\n\n const prop = a[key];\n\n if (prop instanceof SVGAnimatedString) {\n const value = prop.baseVal as unknown;\n\n if (key === 'href') {\n return addPathPrefix(value as string, location.origin) as any;\n }\n\n return value as any;\n }\n\n return prop as any;\n}\n","import type { SpinnerPosition } from '..';\n\nexport const css = ({\n color,\n height,\n spinnerPosition,\n}: {\n color?: string;\n height?: string;\n spinnerPosition?: SpinnerPosition;\n}) => `\n#nprogress {\n pointer-events: none;\n}\n\n#nprogress .bar {\n background: ${color};\n\n position: fixed;\n z-index: 99999;\n top: 0;\n left: 0;\n\n width: 100%;\n height: ${height};\n}\n\n/* Fancy blur effect */\n#nprogress .peg {\n display: block;\n position: absolute;\n right: 0px;\n width: 100px;\n height: 100%;\n box-shadow: 0 0 10px ${color}, 0 0 5px ${color};\n opacity: 1.0;\n\n -webkit-transform: rotate(3deg) translate(0px, -4px);\n -ms-transform: rotate(3deg) translate(0px, -4px);\n transform: rotate(3deg) translate(0px, -4px);\n}\n\n/* Remove these to get rid of the spinner */\n#nprogress .spinner {\n display: block;\n position: fixed;\n z-index: 1031;\n top: ${\n spinnerPosition === 'top-right' || spinnerPosition === 'top-left'\n ? '15px'\n : 'auto'\n };\n bottom: ${\n spinnerPosition === 'bottom-right' || spinnerPosition === 'bottom-left'\n ? '15px'\n : 'auto'\n };\n right: ${\n spinnerPosition === 'top-right' || spinnerPosition === 'bottom-right'\n ? '15px'\n : 'auto'\n };\n left: ${\n spinnerPosition === 'top-left' || spinnerPosition === 'bottom-left'\n ? '15px'\n : 'auto'\n };\n}\n\n#nprogress .spinner-icon {\n width: 18px;\n height: 18px;\n box-sizing: border-box;\n\n border: solid 2px transparent;\n border-top-color: ${color};\n border-left-color: ${color};\n border-radius: 50%;\n\n -webkit-animation: nprogress-spinner 400ms linear infinite;\n animation: nprogress-spinner 400ms linear infinite;\n}\n\n.nprogress-custom-parent {\n overflow: hidden;\n position: relative;\n}\n\n.nprogress-custom-parent #nprogress .spinner,\n.nprogress-custom-parent #nprogress .bar {\n position: absolute;\n}\n\n@-webkit-keyframes nprogress-spinner {\n 0% { -webkit-transform: rotate(0deg); }\n 100% { -webkit-transform: rotate(360deg); }\n}\n@keyframes nprogress-spinner {\n 0% { transform: rotate(0deg); }\n 100% { transform: rotate(360deg); }\n}\n`;\n","'use client';\n\nimport React, { useCallback, useEffect, useMemo, useRef } from 'react';\nimport { NProgress } from 'nprogress-v2';\nimport { isSameURL, isSameURLWithoutSearch } from './utils/sameURL';\nimport {\n usePathname,\n useSearchParams,\n useRouter as useNextRouter,\n} from 'next/navigation';\nimport type { ProgressBarProps, RouterNProgressOptions } from '.';\nimport { getAnchorProperty } from './utils/getAnchorProperty';\nimport {\n type AppRouterInstance,\n NavigateOptions,\n} from 'next/dist/shared/lib/app-router-context.shared-runtime';\nimport { css } from './utils/css';\n\ntype PushStateInput = [\n data: any,\n unused: string,\n url?: string | URL | null | undefined,\n];\n\nexport const AppProgressBar = React.memo(\n ({\n color = '#0A2FFF',\n height = '2px',\n options,\n spinnerPosition = 'top-right',\n shallowRouting = false,\n disableSameURL = true,\n startPosition = 0,\n delay = 0,\n stopDelay = 0,\n style,\n nonce,\n targetPreprocessor,\n disableAnchorClick = false,\n }: ProgressBarProps) => {\n const styles = (\n \n );\n\n NProgress.configure(options || {});\n\n let progressDoneTimer: NodeJS.Timeout;\n\n const pathname = usePathname();\n const searchParams = useSearchParams();\n\n useEffect(() => {\n if (progressDoneTimer) clearTimeout(progressDoneTimer);\n progressDoneTimer = setTimeout(() => {\n NProgress.done();\n }, stopDelay);\n }, [pathname, searchParams]);\n\n const elementsWithAttachedHandlers = useRef<\n (HTMLAnchorElement | SVGAElement)[]\n >([]);\n useEffect(() => {\n if (disableAnchorClick) {\n return;\n }\n\n let timer: NodeJS.Timeout;\n\n const startProgress = () => {\n timer = setTimeout(() => {\n if (startPosition > 0) NProgress.set(startPosition);\n NProgress.start();\n }, delay);\n };\n\n const stopProgress = () => {\n if (timer) clearTimeout(timer);\n timer = setTimeout(() => {\n if (!NProgress.isStarted()) return;\n NProgress.done();\n }, stopDelay);\n };\n\n const handleAnchorClick = (event: MouseEvent) => {\n // Skip preventDefault\n if (event.defaultPrevented) return;\n\n const anchorElement = event.currentTarget as\n | HTMLAnchorElement\n | SVGAElement;\n const target = event.target as HTMLElement | Element;\n let preventProgress =\n target?.getAttribute('data-prevent-nprogress') === 'true' ||\n anchorElement?.getAttribute('data-prevent-nprogress') === 'true';\n\n if (!preventProgress) {\n let element: HTMLElement | Element | null = target;\n\n while (element && element.tagName.toLowerCase() !== 'a') {\n if (\n element.parentElement?.getAttribute('data-prevent-nprogress') ===\n 'true'\n ) {\n preventProgress = true;\n break;\n }\n element = element.parentElement;\n }\n }\n\n if (preventProgress) return;\n\n const anchorTarget = getAnchorProperty(anchorElement, 'target');\n // Skip anchors with target=\"_blank\"\n if (anchorTarget === '_blank') return;\n\n // Skip control/command/option/alt+click\n if (event.metaKey || event.ctrlKey || event.shiftKey || event.altKey)\n return;\n\n const targetHref = getAnchorProperty(anchorElement, 'href');\n const targetUrl = targetPreprocessor\n ? targetPreprocessor(new URL(targetHref))\n : new URL(targetHref);\n const currentUrl = new URL(location.href);\n\n if (\n shallowRouting &&\n isSameURLWithoutSearch(targetUrl, currentUrl) &&\n disableSameURL\n )\n return;\n if (isSameURL(targetUrl, currentUrl) && disableSameURL) return;\n\n startProgress();\n };\n\n const handleMutation: MutationCallback = () => {\n const anchorElements = Array.from(document.querySelectorAll('a')) as (\n | HTMLAnchorElement\n | SVGAElement\n )[];\n\n const validAnchorElements = anchorElements.filter((anchor) => {\n const href = getAnchorProperty(anchor, 'href');\n const isNProgressDisabled =\n anchor.getAttribute('data-disable-nprogress') === 'true';\n const isNotTelOrMailto =\n href &&\n !href.startsWith('tel:') &&\n !href.startsWith('mailto:') &&\n !href.startsWith('blob:') &&\n !href.startsWith('javascript:');\n\n return (\n !isNProgressDisabled &&\n isNotTelOrMailto &&\n getAnchorProperty(anchor, 'target') !== '_blank'\n );\n });\n\n validAnchorElements.forEach((anchor) => {\n anchor.addEventListener('click', handleAnchorClick, true);\n });\n elementsWithAttachedHandlers.current = validAnchorElements;\n };\n\n const mutationObserver = new MutationObserver(handleMutation);\n mutationObserver.observe(document, { childList: true, subtree: true });\n\n const originalWindowHistoryPushState = window.history.pushState;\n window.history.pushState = new Proxy(window.history.pushState, {\n apply: (target, thisArg, argArray: PushStateInput) => {\n stopProgress();\n return target.apply(thisArg, argArray);\n },\n });\n\n return () => {\n mutationObserver.disconnect();\n elementsWithAttachedHandlers.current.forEach((anchor) => {\n anchor.removeEventListener('click', handleAnchorClick, true);\n });\n elementsWithAttachedHandlers.current = [];\n window.history.pushState = originalWindowHistoryPushState;\n };\n }, [\n disableAnchorClick,\n targetPreprocessor,\n shallowRouting,\n disableSameURL,\n ]);\n\n return styles;\n },\n (prevProps, nextProps) => {\n if (nextProps?.memo === false) {\n return false;\n }\n\n if (!nextProps?.shouldCompareComplexProps) {\n return true;\n }\n\n return (\n prevProps?.color === nextProps?.color &&\n prevProps?.height === nextProps?.height &&\n prevProps?.shallowRouting === nextProps?.shallowRouting &&\n prevProps?.startPosition === nextProps?.startPosition &&\n prevProps?.delay === nextProps?.delay &&\n prevProps?.disableSameURL === nextProps?.disableSameURL &&\n prevProps?.stopDelay === nextProps?.stopDelay &&\n prevProps?.nonce === nextProps?.nonce &&\n JSON.stringify(prevProps?.options) ===\n JSON.stringify(nextProps?.options) &&\n prevProps?.style === nextProps?.style &&\n prevProps.disableAnchorClick === nextProps.disableAnchorClick\n );\n },\n);\n\nAppProgressBar.displayName = 'AppProgressBar';\n\nexport function useRouter(customRouter?: () => AppRouterInstance) {\n const useSelectedRouter = useCallback(() => {\n if (customRouter) return customRouter();\n return useNextRouter();\n }, [customRouter]);\n\n const router = useSelectedRouter();\n\n const startProgress = useCallback(\n (startPosition?: number) => {\n if (startPosition && startPosition > 0) NProgress.set(startPosition);\n NProgress.start();\n },\n [router],\n );\n\n const progress = useCallback(\n (\n href: string,\n options?: NavigateOptions,\n NProgressOptions?: RouterNProgressOptions,\n ) => {\n if (NProgressOptions?.showProgressBar === false) {\n return router.push(href, options);\n }\n\n const currentUrl = new URL(location.href);\n const targetUrl = new URL(href, location.href);\n\n if (\n isSameURL(targetUrl, currentUrl) &&\n NProgressOptions?.disableSameURL !== false\n )\n return router.push(href, options);\n\n startProgress(NProgressOptions?.startPosition);\n },\n [router],\n );\n\n const push = useCallback(\n (\n href: string,\n options?: NavigateOptions,\n NProgressOptions?: RouterNProgressOptions,\n ) => {\n progress(href, options, NProgressOptions);\n return router.push(href, options);\n },\n [router, startProgress],\n );\n\n const replace = useCallback(\n (\n href: string,\n options?: NavigateOptions,\n NProgressOptions?: RouterNProgressOptions,\n ) => {\n progress(href, options, NProgressOptions);\n return router.replace(href, options);\n },\n [router, startProgress],\n );\n\n const back = useCallback(\n (NProgressOptions?: RouterNProgressOptions) => {\n if (NProgressOptions?.showProgressBar === false) return router.back();\n\n startProgress(NProgressOptions?.startPosition);\n\n return router.back();\n },\n [router],\n );\n\n const enhancedRouter = useMemo(() => {\n return { ...router, push, replace, back };\n }, [router, push, replace, back]);\n\n return enhancedRouter;\n}\n","import React, { ComponentType, Suspense } from 'react';\n\nexport default function withSuspense

(\n Component: ComponentType

,\n) {\n return function WithSuspenseComponent(props: P) {\n return (\n \n \n \n );\n };\n}\n","import React, { useEffect } from 'react';\nimport { NProgress } from 'nprogress-v2';\nimport { isSameURL, isSameURLWithoutSearch } from './utils/sameURL';\nimport Router from 'next/router';\nimport type { ProgressBarProps } from '.';\nimport { css } from './utils/css';\n\nexport const PagesProgressBar = React.memo(\n ({\n color = '#0A2FFF',\n height = '2px',\n options,\n spinnerPosition = 'top-right',\n shallowRouting = false,\n disableSameURL = true,\n startPosition = 0,\n delay = 0,\n stopDelay = 0,\n style,\n nonce,\n }: Omit) => {\n const styles = (\n \n );\n\n NProgress.configure(options || {});\n\n useEffect(() => {\n let timer: NodeJS.Timeout;\n\n const startProgress = () => {\n timer = setTimeout(() => {\n if (startPosition > 0) NProgress.set(startPosition);\n NProgress.start();\n }, delay);\n };\n\n const stopProgress = () => {\n if (timer) clearTimeout(timer);\n timer = setTimeout(() => {\n if (!NProgress.isStarted()) return;\n NProgress.done(true);\n }, stopDelay);\n };\n\n const handleRouteStart = (url: string) => {\n const targetUrl = new URL(url, location.href);\n const currentUrl = new URL(location.href);\n\n if (\n shallowRouting &&\n isSameURLWithoutSearch(targetUrl, currentUrl) &&\n disableSameURL\n )\n return;\n if (isSameURL(targetUrl, currentUrl) && disableSameURL) return;\n\n startProgress();\n };\n const handleRouteDone = () => stopProgress();\n\n Router.events.on('routeChangeStart', handleRouteStart);\n Router.events.on('routeChangeComplete', handleRouteDone);\n Router.events.on('routeChangeError', handleRouteDone);\n\n return () => {\n // Make sure to remove the event handler on unmount!\n Router.events.off('routeChangeStart', handleRouteStart);\n Router.events.off('routeChangeComplete', handleRouteDone);\n Router.events.off('routeChangeError', handleRouteDone);\n };\n }, []);\n\n return styles;\n },\n (prevProps, nextProps) => {\n if (nextProps?.memo === false) {\n return false;\n }\n\n if (!nextProps?.shouldCompareComplexProps) {\n return true;\n }\n\n return (\n prevProps?.color === nextProps?.color &&\n prevProps?.height === nextProps?.height &&\n prevProps?.shallowRouting === nextProps?.shallowRouting &&\n prevProps?.startPosition === nextProps?.startPosition &&\n prevProps?.delay === nextProps?.delay &&\n prevProps?.disableSameURL === nextProps?.disableSameURL &&\n prevProps?.stopDelay === nextProps?.stopDelay &&\n prevProps?.nonce === nextProps?.nonce &&\n JSON.stringify(prevProps?.options) ===\n JSON.stringify(nextProps?.options) &&\n prevProps?.style === nextProps?.style\n );\n },\n);\n\nPagesProgressBar.displayName = 'PagesProgressBar';\n","import { NProgress, NProgressOptions } from 'nprogress-v2';\nimport {\n AppProgressBar as AppProgressBarComponent,\n useRouter,\n} from './AppProgressBar';\nimport withSuspense from './WithSuspense';\n\nexport type SpinnerPosition =\n | 'top-left'\n | 'top-right'\n | 'bottom-left'\n | 'bottom-right';\n\n/**\n * @param color Color of the progress bar. @default #0A2FFF\n * @param height Height of the progress bar. @default 2px\n * @param options NProgress options. @default undefined\n * @param spinnerPosition Position of the spinner. @default top-right\n * @param shallowRouting If the progress bar is not displayed when you use shallow routing - @default false\n * @param startPosition The position of the progress bar at the start of the page load - @default 0\n * @param delay When the page loads faster than the progress bar, it does not display - @default 0\n * @param stopDelay Delay to stop the progress bar - @default 0\n * @param style Custom css - @default undefined\n * @param nonce Custom nonce for Content-Security-Policy directives - @default undefined\n * @param shouldCompareComplexProps If you want to compare props in the React.memo return - @default false\n * @param targetPreprocessor If you want to./AppProgressBaress the target URL - @default undefined\n * @param disableAnchorClick Disable triggering progress bar on anchor clicks - @default false\n * @param disableSameURL Disable triggering progress bar on the same URL - @default true\n */\nexport interface ProgressBarProps {\n color?: string;\n height?: string;\n options?: Partial;\n spinnerPosition?: SpinnerPosition;\n shallowRouting?: boolean;\n disableSameURL?: boolean;\n startPosition?: number;\n delay?: number;\n stopDelay?: number;\n style?: string;\n nonce?: string;\n memo?: boolean;\n shouldCompareComplexProps?: boolean;\n targetPreprocessor?: (url: URL) => URL;\n disableAnchorClick?: boolean;\n}\n\nexport interface RouterNProgressOptions {\n showProgressBar?: boolean;\n startPosition?: number;\n disableSameURL?: boolean;\n}\n\nexport const startProgress = () => {\n NProgress.start();\n};\n\nexport const stopProgress = (force?: boolean) => {\n NProgress.done(force);\n};\n\nconst AppProgressBar = withSuspense(AppProgressBarComponent);\nexport { AppProgressBar, useRouter, NProgressOptions };\nexport { PagesProgressBar } from './PagesProgressBar';\n"],"names":["AppProgressBar","NProgress","usePathname","useSearchParams","useEffect","useRef","useCallback","useNextRouter","useMemo","Suspense","AppProgressBarComponent"],"mappings":"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"} \ No newline at end of file diff --git a/package.json b/package.json index 38eb7d0..6c1af4f 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "next-nprogress-bar", - "version": "2.4.2", + "version": "2.4.3", "description": "NextJS progress bar compatible with new app directory", "repository": { "type": "git",