@bprogress/next
Version:
NProgress bar like for Next.js compatible with new app directory
1 lines • 13 kB
Source Map (JSON)
{"version":3,"sources":["/Users/elliotsutton/Documents/Skyleen/npm-package/bprogress/packages/next/dist/pages.cjs","../src/pages.ts","../src/providers/pages-progress-provider.tsx","../src/components/pages-progress.tsx","../src/providers/next-progress-provider.tsx"],"names":["__create","Object","create","__defProp","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__getProtoOf","getPrototypeOf","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toESM","mod","isNodeMode","__esModule","value","__toCommonJS","pages_exports","ProgressProvider","PagesProgressProvider","module","exports","import_react","require","import_core","import_router","PagesProgressComponent","shallowRouting","disableSameURL","startPosition","delay","stopDelay","import_react2","useProgress","start","stop","useEffect","handleRouteStart","url","targetUrl","URL","location","href","currentUrl","isSameURLWithoutSearch","isSameURL","handleRouteDone","Router","events","on","off","PagesProgress","withMemo","displayName","NextProgressProvider","children","ProgressComponent","color","height","options","spinnerPosition","style","disableStyle","nonce","props","import_react3","React","createElement","import_react4","import_react5"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAIA,WAAWC,OAAOC,MAAM;AAC5B,IAAIC,YAAYF,OAAOG,cAAc;AACrC,IAAIC,mBAAmBJ,OAAOK,wBAAwB;AACtD,IAAIC,oBAAoBN,OAAOO,mBAAmB;AAClD,IAAIC,eAAeR,OAAOS,cAAc;AACxC,IAAIC,eAAeV,OAAOW,SAAS,CAACC,cAAc;AAClD,IAAIC,WAAW,SAACC,QAAQC;IACtB,IAAK,IAAIC,QAAQD,IACfb,UAAUY,QAAQE,MAAM;QAAEC,KAAKF,GAAG,CAACC,KAAK;QAAEE,YAAY;IAAK;AAC/D;AACA,IAAIC,cAAc,SAACC,IAAIC,MAAMC,QAAQC;IACnC,IAAIF,QAAQ,CAAA,OAAOA,qCAAP,SAAOA,KAAG,MAAM,YAAY,OAAOA,SAAS,YAAY;YAC7D,kCAAA,2BAAA;;;gBAAA,IAAIG,MAAJ;gBACH,IAAI,CAACd,aAAae,IAAI,CAACL,IAAII,QAAQA,QAAQF,QACzCpB,UAAUkB,IAAII,KAAK;oBAAEP,KAAK;+BAAMI,IAAI,CAACG,IAAI;;oBAAEN,YAAY,CAAEK,CAAAA,OAAOnB,iBAAiBiB,MAAMG,IAAG,KAAMD,KAAKL,UAAU;gBAAC;;YAFpH,QAAK,YAAWZ,kBAAkBe,0BAA7B,SAAA,6BAAA,QAAA,yBAAA;;YAAA;YAAA;;;qBAAA,6BAAA;oBAAA;;;oBAAA;0BAAA;;;;IAGP;IACA,OAAOD;AACT;AACA,IAAIM,UAAU,SAACC,KAAKC,YAAYd;WAAYA,SAASa,OAAO,OAAO5B,SAASS,aAAamB,QAAQ,CAAC,GAAGR,YACnG,sEAAsE;IACtE,iEAAiE;IACjE,sEAAsE;IACtE,qEAAqE;IACrES,cAAc,CAACD,OAAO,CAACA,IAAIE,UAAU,GAAG3B,UAAUY,QAAQ,WAAW;QAAEgB,OAAOH;QAAKT,YAAY;IAAK,KAAKJ,QACzGa;;AAEF,IAAII,eAAe,SAACJ;WAAQR,YAAYjB,UAAU,CAAC,GAAG,cAAc;QAAE4B,OAAO;IAAK,IAAIH;;AAEtF,eAAe;AC5Bf,IAAAK,gBAAA,CAAA;AAAAnB,SAAAmB,eAAA;IAAAC,kBAAA;eAAAC;;AAAA;AAAAC,OAAAC,OAAA,GAAAL,aAAAC;ADmCA,4CAA4C;AEnC5C,IAAAK,gBAAkBX,QAAAY,QAAA,UAAA;AFsClB,oCAAoC;AGtCpC,IAAAD,eAA0BC,QAAA;AAC1B,IAAAC,cAAkDD,QAAA;AAClD,IAAAD,gBAA2DC,QAAA;AAC3D,IAAAE,gBAAmBd,QAAAY,QAAA,mBAAA;AAEnB,IAAMG,yBAAyB;sCAC7BC,gBAAAA,oDAAiB,6DACjBC,gBAAAA,oDAAiB,2DACjBC,eAAAA,kDAAgB,+CAChBC,OAAAA,kCAAQ,2CACRC,WAAAA,0CAAY;IAEZ,IAAoB,OAAA,CAAA,GAAIC,cAAAC,WAAA,KAAhBC,QAAY,KAAZA,OAAOC,OAAK,KAALA;IAEf,CAAA,GAAAb,aAAAc,SAAA,EAAU;QACR,IAAMC,mBAAmB,SAACC;YACxB,IAAMC,YAAY,IAAIC,IAAIF,KAAKG,SAASC,IAAI;YAC5C,IAAMC,aAAa,IAAIH,IAAIC,SAASC,IAAI;YAExC,IACEf,kBAAA,CAAA,GACAH,YAAAoB,sBAAA,EAAuBL,WAAWI,eAClCf,gBAEA;YAGF,IAAA,CAAA,GAAIJ,YAAAqB,SAAA,EAAUN,WAAWI,eAAef,gBAAgB;YAExDM,MAAML,eAAeC;QACvB;QAEA,IAAMgB,kBAAkB;mBAAMX,KAAKJ;;QAEnCN,cAAAsB,OAAAA,CAAOC,MAAA,CAAOC,EAAA,CAAG,oBAAoBZ;QACrCZ,cAAAsB,OAAAA,CAAOC,MAAA,CAAOC,EAAA,CAAG,uBAAuBH;QACxCrB,cAAAsB,OAAAA,CAAOC,MAAA,CAAOC,EAAA,CAAG,oBAAoBH;QAErC,OAAO;YAELrB,cAAAsB,OAAAA,CAAOC,MAAA,CAAOE,GAAA,CAAI,oBAAoBb;YACtCZ,cAAAsB,OAAAA,CAAOC,MAAA,CAAOE,GAAA,CAAI,uBAAuBJ;YACzCrB,cAAAsB,OAAAA,CAAOC,MAAA,CAAOE,GAAA,CAAI,oBAAoBJ;QACxC;IAEF,GAAG,EAAE;IAEL,OAAO;AACT;AAEO,IAAMK,gBAAA,CAAA,GAAgBnB,cAAAoB,QAAA,EAAS1B;AAEtCyB,cAAcE,WAAA,GAAc;AHuB5B,2CAA2C;AI3E3C,IAAA/B,gBAAkBX,QAAAY,QAAA,UAAA;AAClB,IAAAD,gBAKOC,QAAA;AASA,IAAM+B,uBAAuB;QAClCC,kBAAAA,UACAC,2BAAAA,mBACAC,eAAAA,OACAC,gBAAAA,QACAC,iBAAAA,SACAC,yBAAAA,iBACAC,eAAAA,OACAC,sBAAAA,cACAC,eAAAA,OACAhC,mBAAAA,WACAD,eAAAA,OACAD,uBAAAA,eACAD,wBAAAA,gBACAD,wBAAAA,gBACGqC;QAdHT;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAhC;QACAD;QACAD;QACAD;QACAD;;IAGA,OACE,aAAA,GAAAsC,cAAAC,OAAAA,CAAAC,aAAA,CAACC,cAAAlD,gBAAA,EAAA;QACCuC,OAAAA;QACAC,QAAAA;QACAC,SAAAA;QACAC,iBAAAA;QACAC,OAAAA;QACAC,cAAAA;QACAC,OAAAA;QACAhC,WAAAA;QACAD,OAAAA;QACAD,eAAAA;QACAD,gBAAAA;QACAD,gBAAAA;IAAA,GAEA,aAAA,GAAAsC,cAAAC,OAAAA,CAAAC,aAAA,CAACX,mBAAA;QACCzB,WAAAA;QACAD,OAAAA;QACAD,eAAAA;QACAD,gBAAAA;QACAD,gBAAAA;OACIqC,SAELT;AAGP;AJoEA,4CAA4C;AEzHrC,IAAMpC,wBAAwB;QACnCoC,kBAAAA,UACGS;QADHT;;IAGA,OACE,aAAA,GAAAc,cAAAH,OAAAA,CAAAC,aAAA,CAACb,sBAAA;QAAqBE,mBAAmBL;OAAmBa,QACzDT;AAGP;AFuHA,6DAA6D;AAC7D,KAAMnC,CAAAA,OAAOC,OAAO,GAAG;IACrBH,kBAAAA;AACF,CAAA","sourcesContent":["var __create = Object.create;\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __getProtoOf = Object.getPrototypeOf;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(\n // If the importer is in node compatibility mode or this is not an ESM\n // file that has been converted to a CommonJS file using a Babel-\n // compatible transform (i.e. \"__esModule\" has not been set), then set\n // \"default\" to the CommonJS \"module.exports\" for node compatibility.\n isNodeMode || !mod || !mod.__esModule ? __defProp(target, \"default\", { value: mod, enumerable: true }) : target,\n mod\n));\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\n\n// src/pages.ts\nvar pages_exports = {};\n__export(pages_exports, {\n ProgressProvider: () => PagesProgressProvider\n});\nmodule.exports = __toCommonJS(pages_exports);\n\n// src/providers/pages-progress-provider.tsx\nvar import_react5 = __toESM(require(\"react\"), 1);\n\n// src/components/pages-progress.tsx\nvar import_react = require(\"react\");\nvar import_core = require(\"@bprogress/core\");\nvar import_react2 = require(\"@bprogress/react\");\nvar import_router = __toESM(require(\"next/router.js\"), 1);\nvar PagesProgressComponent = ({\n shallowRouting = false,\n disableSameURL = true,\n startPosition = 0,\n delay = 0,\n stopDelay = 0\n}) => {\n const { start, stop } = (0, import_react2.useProgress)();\n (0, import_react.useEffect)(() => {\n const handleRouteStart = (url) => {\n const targetUrl = new URL(url, location.href);\n const currentUrl = new URL(location.href);\n if (shallowRouting && (0, import_core.isSameURLWithoutSearch)(targetUrl, currentUrl) && disableSameURL)\n return;\n if ((0, import_core.isSameURL)(targetUrl, currentUrl) && disableSameURL) return;\n start(startPosition, delay);\n };\n const handleRouteDone = () => stop(stopDelay);\n import_router.default.events.on(\"routeChangeStart\", handleRouteStart);\n import_router.default.events.on(\"routeChangeComplete\", handleRouteDone);\n import_router.default.events.on(\"routeChangeError\", handleRouteDone);\n return () => {\n import_router.default.events.off(\"routeChangeStart\", handleRouteStart);\n import_router.default.events.off(\"routeChangeComplete\", handleRouteDone);\n import_router.default.events.off(\"routeChangeError\", handleRouteDone);\n };\n }, []);\n return null;\n};\nvar PagesProgress = (0, import_react2.withMemo)(PagesProgressComponent);\nPagesProgress.displayName = \"PagesProgress\";\n\n// src/providers/next-progress-provider.tsx\nvar import_react3 = __toESM(require(\"react\"), 1);\nvar import_react4 = require(\"@bprogress/react\");\nvar NextProgressProvider = ({\n children,\n ProgressComponent,\n color,\n height,\n options,\n spinnerPosition,\n style,\n disableStyle,\n nonce,\n stopDelay,\n delay,\n startPosition,\n disableSameURL,\n shallowRouting,\n ...props\n}) => {\n return /* @__PURE__ */ import_react3.default.createElement(\n import_react4.ProgressProvider,\n {\n color,\n height,\n options,\n spinnerPosition,\n style,\n disableStyle,\n nonce,\n stopDelay,\n delay,\n startPosition,\n disableSameURL,\n shallowRouting\n },\n /* @__PURE__ */ import_react3.default.createElement(\n ProgressComponent,\n {\n stopDelay,\n delay,\n startPosition,\n disableSameURL,\n shallowRouting,\n ...props\n }\n ),\n children\n );\n};\n\n// src/providers/pages-progress-provider.tsx\nvar PagesProgressProvider = ({\n children,\n ...props\n}) => {\n return /* @__PURE__ */ import_react5.default.createElement(NextProgressProvider, { ProgressComponent: PagesProgress, ...props }, children);\n};\n// Annotate the CommonJS export names for ESM import in node:\n0 && (module.exports = {\n ProgressProvider\n});\n","export { PagesProgressProvider as ProgressProvider } from \"./providers/pages-progress-provider\";\n","import React from 'react';\nimport type { PagesProgressProviderProps } from '../types';\nimport { PagesProgress } from '../components/pages-progress';\nimport { NextProgressProvider } from './next-progress-provider';\n\nexport const PagesProgressProvider = ({\n children,\n ...props\n}: PagesProgressProviderProps) => {\n return (\n <NextProgressProvider ProgressComponent={PagesProgress} {...props}>\n {children}\n </NextProgressProvider>\n );\n};\n","import { useEffect } from 'react';\nimport { isSameURL, isSameURLWithoutSearch } from '@bprogress/core';\nimport { RouterProgressProps, useProgress, withMemo } from '@bprogress/react';\nimport Router from 'next/router.js';\n\nconst PagesProgressComponent = ({\n shallowRouting = false,\n disableSameURL = true,\n startPosition = 0,\n delay = 0,\n stopDelay = 0,\n}: RouterProgressProps) => {\n const { start, stop } = useProgress();\n\n useEffect(() => {\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\n // If the URL is the same, we don't want to start the progress bar\n if (isSameURL(targetUrl, currentUrl) && disableSameURL) return;\n\n start(startPosition, delay);\n };\n\n const handleRouteDone = () => stop(stopDelay);\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 // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return null;\n};\n\nexport const PagesProgress = withMemo(PagesProgressComponent);\n\nPagesProgress.displayName = 'PagesProgress';\n","import React from 'react';\nimport {\n AnchorProgressProps,\n ProgressProvider,\n ProgressProviderProps,\n RouterProgressProps,\n} from '@bprogress/react';\n\nexport interface NextProgressProviderComponentProps\n extends ProgressProviderProps {\n ProgressComponent: React.ComponentType<\n RouterProgressProps | AnchorProgressProps\n >;\n}\n\nexport const NextProgressProvider = ({\n children,\n ProgressComponent,\n color,\n height,\n options,\n spinnerPosition,\n style,\n disableStyle,\n nonce,\n stopDelay,\n delay,\n startPosition,\n disableSameURL,\n shallowRouting,\n ...props\n}: NextProgressProviderComponentProps) => {\n return (\n <ProgressProvider\n color={color}\n height={height}\n options={options}\n spinnerPosition={spinnerPosition}\n style={style}\n disableStyle={disableStyle}\n nonce={nonce}\n stopDelay={stopDelay}\n delay={delay}\n startPosition={startPosition}\n disableSameURL={disableSameURL}\n shallowRouting={shallowRouting}\n >\n <ProgressComponent\n stopDelay={stopDelay}\n delay={delay}\n startPosition={startPosition}\n disableSameURL={disableSameURL}\n shallowRouting={shallowRouting}\n {...props}\n />\n {children}\n </ProgressProvider>\n );\n};\n"]}