vocs 1.2.2 → 1.3.1

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/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # vocs
2
2
 
3
+ ## 1.3.1
4
+
5
+ ### Patch Changes
6
+
7
+ - [#357](https://github.com/wevm/vocs/pull/357) [`dc417ac`](https://github.com/wevm/vocs/commit/dc417ac51d256459a40e1188120def0070a20a36) Thanks [@tmm](https://github.com/tmm)! - Added handling for "Failed to fetch dynamically imported module" errors, which can be caused by version skew.
8
+
9
+ ## 1.3.0
10
+
11
+ ### Minor Changes
12
+
13
+ - [`892835c`](https://github.com/wevm/vocs/commit/892835cc3bc81142c390944b99395d644f212c45) Thanks [@tmm](https://github.com/tmm)! - Added `topNav.match` function
14
+
3
15
  ## 1.2.2
4
16
 
5
17
  ### Patch Changes
@@ -1 +1 @@
1
- {"version":3,"file":"useActiveNavIds.d.ts","sourceRoot":"","sources":["../../../app/hooks/useActiveNavIds.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AA2BvD,wBAAgB,eAAe,CAAC,EAC9B,KAAK,EACL,QAAQ,GACT,EAAE;IACD,KAAK,EAAE,gBAAgB,EAAE,CAAA;IACzB,QAAQ,EAAE,MAAM,CAAA;CACjB,GAAG,MAAM,EAAE,CAEX"}
1
+ {"version":3,"file":"useActiveNavIds.d.ts","sourceRoot":"","sources":["../../../app/hooks/useActiveNavIds.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AAgCvD,wBAAgB,eAAe,CAAC,EAC9B,KAAK,EACL,QAAQ,GACT,EAAE;IACD,KAAK,EAAE,gBAAgB,EAAE,CAAA;IACzB,QAAQ,EAAE,MAAM,CAAA;CACjB,GAAG,MAAM,EAAE,CAEX"}
@@ -3,7 +3,10 @@ function getActiveNavIds({ items, pathname, }) {
3
3
  const path = pathname.replace(/\.html$/, '');
4
4
  const matches = [];
5
5
  for (const item of items) {
6
- if (item.link && path.startsWith(item.match || item.link))
6
+ if (item.link &&
7
+ (typeof item.match === 'function'
8
+ ? item.match(path)
9
+ : path.startsWith(item.match || item.link)))
7
10
  matches.push({ id: item.id, children: [] });
8
11
  else if (item.items) {
9
12
  const activeChildItems = getActiveNavIds({ items: item.items, pathname });
@@ -1 +1 @@
1
- {"version":3,"file":"useActiveNavIds.js","sourceRoot":"","sources":["../../../app/hooks/useActiveNavIds.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAA;AAG/B,SAAS,eAAe,CAAC,EACvB,KAAK,EACL,QAAQ,GAIT;IACC,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAA;IAC5C,MAAM,OAAO,GAAyC,EAAE,CAAA;IAExD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC;YACvD,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAA;aACxC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACpB,MAAM,gBAAgB,GAAG,eAAe,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAA;YACzE,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC;gBAAE,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,gBAAgB,EAAE,CAAC,CAAA;QAC5F,CAAC;IACH,CAAC;IAED,gFAAgF;IAChF,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAA;IACnC,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;IAC7C,OAAO,CAAC,SAAS,CAAC,EAAE,EAAE,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAA;AAC9C,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,EAC9B,KAAK,EACL,QAAQ,GAIT;IACC,OAAO,OAAO,CAAC,GAAG,EAAE,CAAC,eAAe,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAA;AAC/E,CAAC"}
1
+ {"version":3,"file":"useActiveNavIds.js","sourceRoot":"","sources":["../../../app/hooks/useActiveNavIds.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAA;AAG/B,SAAS,eAAe,CAAC,EACvB,KAAK,EACL,QAAQ,GAIT;IACC,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAA;IAC5C,MAAM,OAAO,GAAyC,EAAE,CAAA;IAExD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IACE,IAAI,CAAC,IAAI;YACT,CAAC,OAAO,IAAI,CAAC,KAAK,KAAK,UAAU;gBAC/B,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;gBAClB,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC;YAE7C,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAA;aACxC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACpB,MAAM,gBAAgB,GAAG,eAAe,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAA;YACzE,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC;gBAAE,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,gBAAgB,EAAE,CAAC,CAAA;QAC5F,CAAC;IACH,CAAC;IAED,gFAAgF;IAChF,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAA;IACnC,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;IAC7C,OAAO,CAAC,SAAS,CAAC,EAAE,EAAE,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAA;AAC9C,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,EAC9B,KAAK,EACL,QAAQ,GAIT;IACC,OAAO,OAAO,CAAC,GAAG,EAAE,CAAC,eAAe,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAA;AAC/E,CAAC"}
@@ -5,6 +5,7 @@ import { hydrateRoot } from 'react-dom/client';
5
5
  import { createBrowserRouter, RouterProvider } from 'react-router';
6
6
  import { ConfigProvider, getConfig } from './hooks/useConfig.js';
7
7
  import { routes } from './routes.js';
8
+ import { clearChunkReloadFlag } from './utils/chunkError.js';
8
9
  import { hydrateLazyRoutes } from './utils/hydrateLazyRoutes.js';
9
10
  import { removeTempStyles } from './utils/removeTempStyles.js';
10
11
  hydrate();
@@ -12,6 +13,7 @@ async function hydrate() {
12
13
  const basePath = getConfig().basePath;
13
14
  await hydrateLazyRoutes(routes, basePath);
14
15
  removeTempStyles();
16
+ clearChunkReloadFlag();
15
17
  const router = createBrowserRouter(routes, { basename: basePath });
16
18
  hydrateRoot(document.getElementById('app'), _jsx(ConfigProvider, { children: _jsx(NuqsAdapter, { children: _jsx(RouterProvider, { router: router }) }) }));
17
19
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.client.js","sourceRoot":"","sources":["../../app/index.client.tsx"],"names":[],"mappings":";AAAA,OAAO,uBAAuB,CAAA;AAE9B,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAClE,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAChE,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAA;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AAE9D,OAAO,EAAE,CAAA;AAET,KAAK,UAAU,OAAO;IACpB,MAAM,QAAQ,GAAG,SAAS,EAAE,CAAC,QAAQ,CAAA;IAErC,MAAM,iBAAiB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;IACzC,gBAAgB,EAAE,CAAA;IAElB,MAAM,MAAM,GAAG,mBAAmB,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAA;IAClE,WAAW,CACT,QAAQ,CAAC,cAAc,CAAC,KAAK,CAAE,EAC/B,KAAC,cAAc,cACb,KAAC,WAAW,cACV,KAAC,cAAc,IAAC,MAAM,EAAE,MAAM,GAAI,GACtB,GACC,CAClB,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"index.client.js","sourceRoot":"","sources":["../../app/index.client.tsx"],"names":[],"mappings":";AAAA,OAAO,uBAAuB,CAAA;AAE9B,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAClE,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAChE,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAA;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAA;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AAE9D,OAAO,EAAE,CAAA;AAET,KAAK,UAAU,OAAO;IACpB,MAAM,QAAQ,GAAG,SAAS,EAAE,CAAC,QAAQ,CAAA;IAErC,MAAM,iBAAiB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;IACzC,gBAAgB,EAAE,CAAA;IAClB,oBAAoB,EAAE,CAAA;IAEtB,MAAM,MAAM,GAAG,mBAAmB,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAA;IAClE,WAAW,CACT,QAAQ,CAAC,cAAc,CAAC,KAAK,CAAE,EAC/B,KAAC,cAAc,cACb,KAAC,WAAW,cACV,KAAC,cAAc,IAAC,MAAM,EAAE,MAAM,GAAI,GACtB,GACC,CAClB,CAAA;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../../app/routes.tsx"],"names":[],"mappings":"AAyCA,eAAO,MAAM,MAAM;;;;;;;;;;IA2BM,CAAA"}
1
+ {"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../../app/routes.tsx"],"names":[],"mappings":"AA+CA,eAAO,MAAM,MAAM;;;;;;;;;;IAgCM,CAAA"}
@@ -3,17 +3,24 @@ import { routes as routes_virtual } from 'virtual:routes';
3
3
  import { NotFound } from './components/NotFound.js';
4
4
  import { DocsLayout } from './layouts/DocsLayout.js';
5
5
  import { Root } from './root.js';
6
+ import { maybeHandleChunkError } from './utils/chunkError.js';
6
7
  const notFoundRoute = (() => {
7
8
  const virtualRoute = routes_virtual.find(({ path }) => path === '*');
8
9
  if (virtualRoute)
9
10
  return {
10
11
  path: virtualRoute.path,
11
12
  lazy: async () => {
12
- const { frontmatter, ...route } = await virtualRoute.lazy();
13
- return {
14
- ...route,
15
- element: (_jsx(Root, { frontmatter: frontmatter, path: virtualRoute.path, children: _jsx(DocsLayout, { children: _jsx(route.default, {}) }) })),
16
- };
13
+ try {
14
+ const { frontmatter, ...route } = await virtualRoute.lazy();
15
+ return {
16
+ ...route,
17
+ element: (_jsx(Root, { frontmatter: frontmatter, path: virtualRoute.path, children: _jsx(DocsLayout, { children: _jsx(route.default, {}) }) })),
18
+ };
19
+ }
20
+ catch (error) {
21
+ maybeHandleChunkError(error);
22
+ throw error;
23
+ }
17
24
  },
18
25
  };
19
26
  return {
@@ -28,11 +35,17 @@ export const routes = [
28
35
  .map((route_virtual) => ({
29
36
  path: route_virtual.path,
30
37
  lazy: async () => {
31
- const { frontmatter, ...route } = await route_virtual.lazy();
32
- return {
33
- ...route,
34
- element: (_jsx(Root, { content: decodeURIComponent(route_virtual.content ?? ''), filePath: route_virtual.filePath, frontmatter: frontmatter, lastUpdatedAt: route_virtual.lastUpdatedAt, path: route_virtual.path, children: _jsx(DocsLayout, { children: _jsx(route.default, {}) }) })),
35
- };
38
+ try {
39
+ const { frontmatter, ...route } = await route_virtual.lazy();
40
+ return {
41
+ ...route,
42
+ element: (_jsx(Root, { content: decodeURIComponent(route_virtual.content ?? ''), filePath: route_virtual.filePath, frontmatter: frontmatter, lastUpdatedAt: route_virtual.lastUpdatedAt, path: route_virtual.path, children: _jsx(DocsLayout, { children: _jsx(route.default, {}) }) })),
43
+ };
44
+ }
45
+ catch (error) {
46
+ maybeHandleChunkError(error);
47
+ throw error;
48
+ }
36
49
  },
37
50
  })),
38
51
  notFoundRoute,
@@ -1 +1 @@
1
- {"version":3,"file":"routes.js","sourceRoot":"","sources":["../../app/routes.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,IAAI,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAGzD,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AACpD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAEhC,MAAM,aAAa,GAAG,CAAC,GAAG,EAAE;IAC1B,MAAM,YAAY,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,KAAK,GAAG,CAAC,CAAA;IACpE,IAAI,YAAY;QACd,OAAO;YACL,IAAI,EAAE,YAAY,CAAC,IAAI;YACvB,IAAI,EAAE,KAAK,IAAI,EAAE;gBACf,MAAM,EAAE,WAAW,EAAE,GAAG,KAAK,EAAE,GAAG,MAAM,YAAY,CAAC,IAAI,EAAE,CAAA;gBAE3D,OAAO;oBACL,GAAG,KAAK;oBACR,OAAO,EAAE,CACP,KAAC,IAAI,IAAC,WAAW,EAAE,WAAW,EAAE,IAAI,EAAE,YAAY,CAAC,IAAI,YACrD,KAAC,UAAU,cACT,KAAC,KAAK,CAAC,OAAO,KAAG,GACN,GACR,CACR;iBACoB,CAAA;YACzB,CAAC;SACF,CAAA;IAEH,OAAO;QACL,IAAI,EAAE,GAAG,EAAE,MAAM;QACjB,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,CACP,KAAC,IAAI,IAAC,WAAW,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,IAAI,EAAC,GAAG,YAChD,KAAC,UAAU,cACT,KAAC,QAAQ,KAAG,GACD,GACR,CACR;KACF,CAAA;AACH,CAAC,CAAC,EAAE,CAAA;AAEJ,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,GAAG,cAAc;SACd,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,KAAK,GAAG,CAAC;SAClC,GAAG,CAAC,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;QACvB,IAAI,EAAE,aAAa,CAAC,IAAI;QACxB,IAAI,EAAE,KAAK,IAAI,EAAE;YACf,MAAM,EAAE,WAAW,EAAE,GAAG,KAAK,EAAE,GAAG,MAAM,aAAa,CAAC,IAAI,EAAE,CAAA;YAE5D,OAAO;gBACL,GAAG,KAAK;gBACR,OAAO,EAAE,CACP,KAAC,IAAI,IACH,OAAO,EAAE,kBAAkB,CAAC,aAAa,CAAC,OAAO,IAAI,EAAE,CAAC,EACxD,QAAQ,EAAE,aAAa,CAAC,QAAQ,EAChC,WAAW,EAAE,WAAW,EACxB,aAAa,EAAE,aAAa,CAAC,aAAa,EAC1C,IAAI,EAAE,aAAa,CAAC,IAAI,YAExB,KAAC,UAAU,cACT,KAAC,KAAK,CAAC,OAAO,KAAG,GACN,GACR,CACR;aACoB,CAAA;QACzB,CAAC;KACF,CAAC,CAAC;IACL,aAAa;CACU,CAAA"}
1
+ {"version":3,"file":"routes.js","sourceRoot":"","sources":["../../app/routes.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,IAAI,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAGzD,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AACpD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAA;AAE7D,MAAM,aAAa,GAAG,CAAC,GAAG,EAAE;IAC1B,MAAM,YAAY,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,KAAK,GAAG,CAAC,CAAA;IACpE,IAAI,YAAY;QACd,OAAO;YACL,IAAI,EAAE,YAAY,CAAC,IAAI;YACvB,IAAI,EAAE,KAAK,IAAI,EAAE;gBACf,IAAI,CAAC;oBACH,MAAM,EAAE,WAAW,EAAE,GAAG,KAAK,EAAE,GAAG,MAAM,YAAY,CAAC,IAAI,EAAE,CAAA;oBAE3D,OAAO;wBACL,GAAG,KAAK;wBACR,OAAO,EAAE,CACP,KAAC,IAAI,IAAC,WAAW,EAAE,WAAW,EAAE,IAAI,EAAE,YAAY,CAAC,IAAI,YACrD,KAAC,UAAU,cACT,KAAC,KAAK,CAAC,OAAO,KAAG,GACN,GACR,CACR;qBACoB,CAAA;gBACzB,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,qBAAqB,CAAC,KAAc,CAAC,CAAA;oBACrC,MAAM,KAAK,CAAA;gBACb,CAAC;YACH,CAAC;SACF,CAAA;IAEH,OAAO;QACL,IAAI,EAAE,GAAG,EAAE,MAAM;QACjB,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,CACP,KAAC,IAAI,IAAC,WAAW,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,IAAI,EAAC,GAAG,YAChD,KAAC,UAAU,cACT,KAAC,QAAQ,KAAG,GACD,GACR,CACR;KACF,CAAA;AACH,CAAC,CAAC,EAAE,CAAA;AAEJ,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,GAAG,cAAc;SACd,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,KAAK,GAAG,CAAC;SAClC,GAAG,CAAC,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;QACvB,IAAI,EAAE,aAAa,CAAC,IAAI;QACxB,IAAI,EAAE,KAAK,IAAI,EAAE;YACf,IAAI,CAAC;gBACH,MAAM,EAAE,WAAW,EAAE,GAAG,KAAK,EAAE,GAAG,MAAM,aAAa,CAAC,IAAI,EAAE,CAAA;gBAE5D,OAAO;oBACL,GAAG,KAAK;oBACR,OAAO,EAAE,CACP,KAAC,IAAI,IACH,OAAO,EAAE,kBAAkB,CAAC,aAAa,CAAC,OAAO,IAAI,EAAE,CAAC,EACxD,QAAQ,EAAE,aAAa,CAAC,QAAQ,EAChC,WAAW,EAAE,WAAW,EACxB,aAAa,EAAE,aAAa,CAAC,aAAa,EAC1C,IAAI,EAAE,aAAa,CAAC,IAAI,YAExB,KAAC,UAAU,cACT,KAAC,KAAK,CAAC,OAAO,KAAG,GACN,GACR,CACR;iBACoB,CAAA;YACzB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,qBAAqB,CAAC,KAAc,CAAC,CAAA;gBACrC,MAAM,KAAK,CAAA;YACb,CAAC;QACH,CAAC;KACF,CAAC,CAAC;IACL,aAAa;CACU,CAAA"}
@@ -0,0 +1,4 @@
1
+ export declare function isChunkError(error: Error): boolean;
2
+ export declare function maybeHandleChunkError(error: Error): void;
3
+ export declare function clearChunkReloadFlag(): void;
4
+ //# sourceMappingURL=chunkError.d.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chunkError.d.ts","sourceRoot":"","sources":["../../../app/utils/chunkError.ts"],"names":[],"mappings":"AAAA,wBAAgB,YAAY,CAAC,KAAK,EAAE,KAAK,WASxC;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,KAAK,QAQjD;AAED,wBAAgB,oBAAoB,SAEnC"}
@@ -0,0 +1,26 @@
1
+ export function isChunkError(error) {
2
+ if (!error)
3
+ return false;
4
+ if (!error.message)
5
+ return false;
6
+ const message = error.message.toLowerCase();
7
+ return (message.includes('failed to fetch dynamically imported module') || // Chrome
8
+ message.includes('error loading dynamically imported module') || // Firefox/Safari
9
+ message.includes('dynamically imported module') // fallback
10
+ );
11
+ }
12
+ export function maybeHandleChunkError(error) {
13
+ if (!isChunkError(error))
14
+ return;
15
+ if (sessionStorage.getItem(reloadKey)) {
16
+ sessionStorage.removeItem(reloadKey);
17
+ return;
18
+ }
19
+ sessionStorage.setItem(reloadKey, 'true');
20
+ window.location.reload();
21
+ }
22
+ export function clearChunkReloadFlag() {
23
+ sessionStorage.removeItem(reloadKey);
24
+ }
25
+ const reloadKey = 'vocs.reload';
26
+ //# sourceMappingURL=chunkError.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chunkError.js","sourceRoot":"","sources":["../../../app/utils/chunkError.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,YAAY,CAAC,KAAY;IACvC,IAAI,CAAC,KAAK;QAAE,OAAO,KAAK,CAAA;IACxB,IAAI,CAAC,KAAK,CAAC,OAAO;QAAE,OAAO,KAAK,CAAA;IAChC,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,CAAA;IAC3C,OAAO,CACL,OAAO,CAAC,QAAQ,CAAC,6CAA6C,CAAC,IAAI,SAAS;QAC5E,OAAO,CAAC,QAAQ,CAAC,2CAA2C,CAAC,IAAI,iBAAiB;QAClF,OAAO,CAAC,QAAQ,CAAC,6BAA6B,CAAC,CAAC,WAAW;KAC5D,CAAA;AACH,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,KAAY;IAChD,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC;QAAE,OAAM;IAChC,IAAI,cAAc,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;QACtC,cAAc,CAAC,UAAU,CAAC,SAAS,CAAC,CAAA;QACpC,OAAM;IACR,CAAC;IACD,cAAc,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;IACzC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAA;AAC1B,CAAC;AAED,MAAM,UAAU,oBAAoB;IAClC,cAAc,CAAC,UAAU,CAAC,SAAS,CAAC,CAAA;AACtC,CAAC;AAED,MAAM,SAAS,GAAG,aAAa,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"hydrateLazyRoutes.d.ts","sourceRoot":"","sources":["../../../app/utils/hydrateLazyRoutes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,KAAK,WAAW,EAAE,MAAM,cAAc,CAAA;AAE5D,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAG,SAAS,iBAiB1F"}
1
+ {"version":3,"file":"hydrateLazyRoutes.d.ts","sourceRoot":"","sources":["../../../app/utils/hydrateLazyRoutes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,KAAK,WAAW,EAAE,MAAM,cAAc,CAAA;AAI5D,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAG,SAAS,iBAsB1F"}
@@ -1,17 +1,23 @@
1
1
  import { matchRoutes } from 'react-router';
2
+ import { maybeHandleChunkError } from './chunkError.js';
2
3
  export async function hydrateLazyRoutes(routes, basePath) {
3
4
  // Determine if any of the initial routes are lazy
4
5
  const lazyMatches = matchRoutes(routes, window.location, basePath)?.filter((m) => m.route.lazy);
5
6
  // Load the lazy matches and update the routes before creating your router
6
7
  // so we can hydrate the SSR-rendered content synchronously
7
- if (lazyMatches && lazyMatches?.length > 0) {
8
- await Promise.all(lazyMatches.map(async (m) => {
9
- const routeModule = typeof m.route.lazy === 'function' ? await m.route.lazy() : m.route.lazy;
10
- Object.assign(m.route, {
11
- ...routeModule,
12
- lazy: undefined,
13
- });
14
- }));
15
- }
8
+ if (lazyMatches && lazyMatches?.length > 0)
9
+ try {
10
+ await Promise.all(lazyMatches.map(async (m) => {
11
+ const routeModule = typeof m.route.lazy === 'function' ? await m.route.lazy() : m.route.lazy;
12
+ Object.assign(m.route, {
13
+ ...routeModule,
14
+ lazy: undefined,
15
+ });
16
+ }));
17
+ }
18
+ catch (error) {
19
+ maybeHandleChunkError(error);
20
+ throw error;
21
+ }
16
22
  }
17
23
  //# sourceMappingURL=hydrateLazyRoutes.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"hydrateLazyRoutes.js","sourceRoot":"","sources":["../../../app/utils/hydrateLazyRoutes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAoB,MAAM,cAAc,CAAA;AAE5D,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,MAAqB,EAAE,QAA4B;IACzF,kDAAkD;IAClD,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IAE/F,0EAA0E;IAC1E,2DAA2D;IAC3D,IAAI,WAAW,IAAI,WAAW,EAAE,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3C,MAAM,OAAO,CAAC,GAAG,CACf,WAAW,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;YAC1B,MAAM,WAAW,GAAG,OAAO,CAAC,CAAC,KAAK,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAA;YAC5F,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,EAAE;gBACrB,GAAG,WAAW;gBACd,IAAI,EAAE,SAAS;aAChB,CAAC,CAAA;QACJ,CAAC,CAAC,CACH,CAAA;IACH,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"hydrateLazyRoutes.js","sourceRoot":"","sources":["../../../app/utils/hydrateLazyRoutes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAoB,MAAM,cAAc,CAAA;AAE5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAA;AAEvD,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,MAAqB,EAAE,QAA4B;IACzF,kDAAkD;IAClD,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IAE/F,0EAA0E;IAC1E,2DAA2D;IAC3D,IAAI,WAAW,IAAI,WAAW,EAAE,MAAM,GAAG,CAAC;QACxC,IAAI,CAAC;YACH,MAAM,OAAO,CAAC,GAAG,CACf,WAAW,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;gBAC1B,MAAM,WAAW,GACf,OAAO,CAAC,CAAC,KAAK,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAA;gBAC1E,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,EAAE;oBACrB,GAAG,WAAW;oBACd,IAAI,EAAE,SAAS;iBAChB,CAAC,CAAA;YACJ,CAAC,CAAC,CACH,CAAA;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,qBAAqB,CAAC,KAAc,CAAC,CAAA;YACrC,MAAM,KAAK,CAAA;QACb,CAAC;AACL,CAAC"}
@@ -1,2 +1,2 @@
1
- export declare const version = "1.2.2";
1
+ export declare const version = "1.3.1";
2
2
  //# sourceMappingURL=version.d.js.map
@@ -1,2 +1,2 @@
1
- export const version = '1.2.2';
1
+ export const version = '1.3.1';
2
2
  //# sourceMappingURL=version.js.map
package/_lib/config.d.ts CHANGED
@@ -315,7 +315,7 @@ export type TopNavItem<parsed extends boolean = false> = {
315
315
  text?: never;
316
316
  } | ({
317
317
  element?: never;
318
- match?: string;
318
+ match?: string | ((path: string) => boolean);
319
319
  text: string;
320
320
  } & ({
321
321
  link: string;
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AACzD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAC/C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAA;AACzC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAC/C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAC5C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,MAAM,CAAA;AACtC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAA;AAC1D,OAAO,KAAK,EACV,gBAAgB,EAChB,WAAW,EACX,cAAc,EACd,YAAY,EACZ,cAAc,EACd,cAAc,EACd,WAAW,EACX,kBAAkB,EAClB,iBAAiB,EACjB,WAAW,EACX,SAAS,EACT,UAAU,EACV,YAAY,EACZ,UAAU,EACX,MAAM,0BAA0B,CAAA;AAEjC,KAAK,UAAU,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;AAEzE,KAAK,kBAAkB,GAAG,SAAS,GAAG,UAAU,GAAG,SAAS,GAAG,OAAO,GAAG,eAAe,CAAA;AAExF,MAAM,MAAM,MAAM,CAChB,MAAM,SAAS,OAAO,GAAG,KAAK,EAC9B,WAAW,SAAS,WAAW,GAAG,WAAW,IAC3C,UAAU,CACZ;IACE;;;OAGG;IACH,KAAK,CAAC,EACF,OAAO,GACP;QACE;;WAEG;QACH,KAAK,EAAE,CAAC,CAAC,EAAE;YAAE,QAAQ,EAAE,MAAM,CAAA;SAAE,KAAK,MAAM,CAAA;KAC3C,CAAA;IACL;;;;;;;;;OASG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,CAAA;IACvB;;;;;;;;OAQG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB;;;;;;;;OAQG;IACH,cAAc,CAAC,EAAE,OAAO,GAAG,MAAM,CAAA;IACjC;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB;;OAEG;IACH,QAAQ,CAAC,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAA;IAC9B;;;;OAIG;IACH,IAAI,CAAC,EAAE,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAA;IAC9B;;OAEG;IACH,IAAI,CAAC,EACD,YAAY,GACZ;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,CAAA;KAAE,GAChC,CAAC,CAAC,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,KAAK,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,CAAA;IACxE;;OAEG;IACH,OAAO,CAAC,EAAE,SAAS,CAAC,OAAO,CAAC,CAAA;IAC5B;;OAEG;IACH,OAAO,CAAC,EAAE,SAAS,CAAC,OAAO,CAAC,CAAA;IAC5B;;;;;;OAMG;IACH,UAAU,CAAC,EAAE,MAAM,GAAG;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAA;IAChD;;OAEG;IACH,aAAa,CAAC,EAAE,YAAY,CAAA;IAC5B;;OAEG;IACH,QAAQ,CAAC,EAAE,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAA;IACtC;;;;;OAKG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB;;OAEG;IACH,MAAM,CAAC,EAAE,SAAS,CAAC,MAAM,CAAC,CAAA;IAC1B;;OAEG;IACH,OAAO,CAAC,EAAE,SAAS,CAAC,OAAO,CAAC,CAAA;IAC5B;;OAEG;IACH,OAAO,CAAC,EAAE,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAA;IACpC;;OAEG;IACH,QAAQ,CAAC,EAAE,UAAU,EAAE,CAAA;IACvB;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC,KAAK,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAA;IAC7C;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAA;IACd;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB;;OAEG;IACH,MAAM,CAAC,EAAE,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAA;IAClC;;OAEG;IACH,QAAQ,CAAC,EAAE,SAAS,CAAC,eAAe,CAAC,GAAG,KAAK,CAAA;IAC7C;;OAEG;IACH,IAAI,CAAC,EAAE,UAAU,CAAA;CAClB,EACD,MAAM,SAAS,IAAI,GAAG,kBAAkB,GAAG,KAAK,CACjD,CAAA;AAED,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,CAAA;AAEvC,wBAAsB,YAAY,CAAC,WAAW,SAAS,WAAW,GAAG,SAAS,EAAE,EAC9E,KAAY,EACZ,OAAwB,EACxB,QAAQ,EACR,cAAqB,EACrB,IAAI,EACJ,UAAU,EACV,OAAgB,EAChB,KAAc,EACd,aAA+B,EAC/B,GAAG,MAAM,EACV,EAAE,MAAM,CAAC,KAAK,EAAE,WAAW,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC,CA8BpD;AAED,eAAO,MAAM,gBAAgB,6BAAqC,CAAA;AA8KlE,wBAAgB,eAAe,CAC7B,UAAU,EAAE,UAAU,GAAG,SAAS,EAClC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GAClC,UAAU,CAKZ;AAKD,KAAK,SAAS,CAAC,CAAC,IAAI;KACjB,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CACrB,GAAG,EAAE,CAAA;AAEN,MAAM,MAAM,MAAM,CAAC,MAAM,SAAS,OAAO,GAAG,KAAK,IAAI,OAAO,CACxD,MAAM,GACN,YAAY,GACZ;IACE,kDAAkD;IAClD,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,0CAA0C;IAC1C,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,iCAAiC;IACjC,OAAO,EAAE,MAAM,GAAG,YAAY,CAAA;IAC9B,gCAAgC;IAChC,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,oCAAoC;IACpC,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,GACD,SAAS,EACX,MAAM,SAAS,IAAI,GAAG,MAAM,GAAG,YAAY,GAAG,KAAK,CACpD,CAAA;AAED,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,MAAM,GAAG,QAAQ,GAAG,SAAS,CAAA;AAEjE,MAAM,MAAM,QAAQ,GAAG;IACrB;;OAEG;IACH,OAAO,EAAE,MAAM,GAAG,CAAC,CAAC,QAAQ,EAAE,QAAQ,KAAK,MAAM,CAAC,CAAA;IAClD;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAA;CACd,CAAA;AAED,KAAK,UAAU,GAAG,SAAS,CAAC;IAC1B,sCAAsC;IACtC,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB,CAAC,CAAA;AACF,KAAK,UAAU,GAAG;IAChB,OAAO,CAAC,EAAE,UAAU,CAAA;IACpB,IAAI,CAAC,EAAE,UAAU,CAAA;CAClB,CAAA;AACD,MAAM,MAAM,IAAI,CAAC,MAAM,SAAS,OAAO,GAAG,KAAK,IAAI,MAAM,SAAS,IAAI,GAClE,UAAU,GACV,UAAU,GAAG,UAAU,CAAA;AAE3B,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAA;AAE/D,MAAM,MAAM,OAAO,GAAG,QAAQ,CAAA;AAE9B,MAAM,MAAM,OAAO,GAAG,QAAQ,CAAA;AAE9B,MAAM,MAAM,QAAQ,CAAC,MAAM,SAAS,OAAO,GAAG,KAAK,IAAI,UAAU,CAC/D;IACE,IAAI,CAAC,EAAE,SAAS,CAAC,kBAAkB,CAAC,CAAA;IACpC,aAAa,CAAC,EAAE,aAAa,CAAA;IAC7B,aAAa,CAAC,EAAE,aAAa,CAAA;CAC9B,EACD,MAAM,SAAS,IAAI,GAAG,MAAM,GAAG,KAAK,CACrC,CAAA;AAED,MAAM,MAAM,MAAM,GAAG,aAAa,CAAA;AAElC,MAAM,MAAM,WAAW,GAAG;IACxB,8DAA8D;IAC9D,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,kDAAkD;IAClD,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,sCAAsC;IACtC,IAAI,EAAE,MAAM,CAAA;IACZ,0DAA0D;IAC1D,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,iDAAiD;IACjD,KAAK,CAAC,EAAE,WAAW,EAAE,CAAA;CACtB,CAAA;AAED,MAAM,MAAM,OAAO,GACf,WAAW,EAAE,GACb;IAAE,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,EAAE,GAAG;QAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;QAAC,KAAK,EAAE,WAAW,EAAE,CAAA;KAAE,CAAA;CAAE,CAAA;AAEpF,MAAM,MAAM,UAAU,GAClB,SAAS,GACT,SAAS,GACT,WAAW,GACX,QAAQ,GACR,UAAU,GACV,UAAU,GACV,GAAG,CAAA;AACP,MAAM,MAAM,UAAU,GAAG;IACvB,8BAA8B;IAC9B,IAAI,EAAE,UAAU,CAAA;IAChB,4BAA4B;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,0BAA0B;IAC1B,IAAI,EAAE,MAAM,CAAA;CACb,CAAA;AACD,MAAM,MAAM,gBAAgB,GAAG,QAAQ,CAAC,UAAU,CAAC,GAAG;IACpD,+BAA+B;IAC/B,IAAI,EAAE,UAAU,CAAA;CACjB,CAAA;AAED,MAAM,MAAM,OAAO,CAAC,MAAM,SAAS,OAAO,GAAG,KAAK,IAAI,MAAM,SAAS,IAAI,GACrE,gBAAgB,EAAE,GAClB,UAAU,EAAE,CAAA;AAEhB,MAAM,MAAM,OAAO,GAAG;IACpB,+BAA+B;IAC/B,IAAI,EAAE,MAAM,CAAA;IACZ,yCAAyC;IACzC,IAAI,EAAE,MAAM,CAAA;IACZ,4CAA4C;IAC5C,KAAK,EAAE,MAAM,CAAA;CACd,CAAA;AACD,MAAM,MAAM,UAAU,GAAG;IACvB,uCAAuC;IACvC,KAAK,EAAE,CAAC,OAAO,GAAG,IAAI,CAAC,EAAE,EAAE,CAAA;IAC3B,gFAAgF;IAChF,IAAI,EAAE,MAAM,CAAA;IACZ,wCAAwC;IACxC,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB,CAAA;AAED,MAAM,MAAM,cAAc,CAAC,SAAS,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,KAAK,IAAI;KAC5E,GAAG,IAAI,MAAM,SAAS,CAAC,CAAC,EAAE,KAAK;CACjC,CAAA;AACD,MAAM,MAAM,KAAK,CACf,MAAM,SAAS,OAAO,GAAG,KAAK,EAC9B,WAAW,SAAS,WAAW,GAAG,WAAW,EAE7C,UAAU,GAAG,WAAW,SAAS,QAAQ,GAAG,SAAS,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,IAC9F;IACF,WAAW,CAAC,EAAE,OAAO,CACjB,MAAM,GACN,CAAC,WAAW,SAAS,QAAQ,GAAG,SAAS,GAAG;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,KAAK,CAAC,GACpF,QAAQ,CACN,cAAc,CACZ,IAAI,CACF,OAAO,kBAAkB,EACvB,kBAAkB,GAClB,uBAAuB,GACvB,sBAAsB,GACtB,cAAc,GACd,YAAY,GACZ,iBAAiB,CACpB,EACD,UAAU,CACX,CACF,EACH,MAAM,SAAS,IAAI,GAAG,MAAM,GAAG;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,KAAK,CACvE,CAAA;IACD,WAAW,CAAC,EAAE,WAAW,CAAA;IACzB,SAAS,CAAC,EAAE;QACV,YAAY,CAAC,EAAE,cAAc,CAAC,OAAO,gBAAgB,EAAE,MAAM,CAAC,CAAA;QAC9D,KAAK,CAAC,EAAE,cAAc,CAAC,OAAO,kBAAkB,EAAE,UAAU,CAAC,GAC3D,cAAc,CAAC,OAAO,iBAAiB,EAAE,UAAU,CAAC,CAAA;QACtD,OAAO,CAAC,EAAE,cAAc,CAAC,OAAO,WAAW,EAAE,MAAM,CAAC,CAAA;QACpD,UAAU,CAAC,EAAE,cAAc,CAAC,OAAO,cAAc,EAAE,MAAM,CAAC,CAAA;QAC1D,QAAQ,CAAC,EAAE,cAAc,CAAC,OAAO,YAAY,EAAE,MAAM,CAAC,CAAA;QACtD,UAAU,CAAC,EAAE,cAAc,CAAC,OAAO,cAAc,EAAE,MAAM,CAAC,CAAA;QAC1D,UAAU,CAAC,EAAE,cAAc,CAAC,OAAO,cAAc,EAAE,MAAM,CAAC,CAAA;QAC1D,OAAO,CAAC,EAAE,cAAc,CAAC,OAAO,WAAW,EAAE,MAAM,CAAC,CAAA;QACpD,OAAO,CAAC,EAAE,cAAc,CAAC,OAAO,WAAW,EAAE,MAAM,CAAC,CAAA;QACpD,KAAK,CAAC,EAAE,cAAc,CAAC,OAAO,SAAS,EAAE,MAAM,CAAC,CAAA;QAChD,MAAM,CAAC,EAAE,cAAc,CAAC,OAAO,UAAU,EAAE,MAAM,CAAC,CAAA;QAClD,QAAQ,CAAC,EAAE,cAAc,CAAC,OAAO,YAAY,EAAE,MAAM,CAAC,CAAA;QACtD,MAAM,CAAC,EAAE,cAAc,CAAC,OAAO,UAAU,EAAE,MAAM,CAAC,CAAA;KACnD,CAAA;CACF,CAAA;AAED,MAAM,MAAM,UAAU,CAAC,MAAM,SAAS,OAAO,GAAG,KAAK,IACjD;IACE,OAAO,EAAE,YAAY,CAAA;IACrB,IAAI,CAAC,EAAE,KAAK,CAAA;IACZ,KAAK,CAAC,EAAE,KAAK,CAAA;IACb,KAAK,CAAC,EAAE,KAAK,CAAA;IACb,IAAI,CAAC,EAAE,KAAK,CAAA;CACb,GACD,CAAC;IACC,OAAO,CAAC,EAAE,KAAK,CAAA;IACf,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,MAAM,CAAA;CACb,GAAG,CACA;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,KAAK,CAAA;CAAE,GAC/B;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,SAAS,IAAI,GAAG,gBAAgB,EAAE,GAAG,UAAU,EAAE,CAAA;CAAE,CACpF,CAAC,CAAA;AAEN,MAAM,MAAM,gBAAgB,GAAG,UAAU,CAAC,IAAI,CAAC,GAAG;IAChD,EAAE,EAAE,MAAM,CAAA;CACX,CAAA;AAED,MAAM,MAAM,MAAM,CAAC,MAAM,SAAS,OAAO,GAAG,KAAK,IAAI,MAAM,SAAS,IAAI,GACpE,gBAAgB,EAAE,GAClB,UAAU,EAAE,CAAA;AAKhB,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,UAE7C;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,OAE/C;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,GAAG,CAmBhE;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,GAAG,GAAG,GAAG,CAcpD;AAED,eAAO,MAAM,+BAA+B,igBAe3C,CAAA"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../config.ts"],"names":[],"mappings":"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"}
@@ -12,7 +12,12 @@ function getActiveNavIds({
12
12
  const matches: { id: number; children: number[] }[] = []
13
13
 
14
14
  for (const item of items) {
15
- if (item.link && path.startsWith(item.match || item.link))
15
+ if (
16
+ item.link &&
17
+ (typeof item.match === 'function'
18
+ ? item.match(path)
19
+ : path.startsWith(item.match || item.link))
20
+ )
16
21
  matches.push({ id: item.id, children: [] })
17
22
  else if (item.items) {
18
23
  const activeChildItems = getActiveNavIds({ items: item.items, pathname })
@@ -5,6 +5,7 @@ import { hydrateRoot } from 'react-dom/client'
5
5
  import { createBrowserRouter, RouterProvider } from 'react-router'
6
6
  import { ConfigProvider, getConfig } from './hooks/useConfig.js'
7
7
  import { routes } from './routes.js'
8
+ import { clearChunkReloadFlag } from './utils/chunkError.js'
8
9
  import { hydrateLazyRoutes } from './utils/hydrateLazyRoutes.js'
9
10
  import { removeTempStyles } from './utils/removeTempStyles.js'
10
11
 
@@ -15,6 +16,7 @@ async function hydrate() {
15
16
 
16
17
  await hydrateLazyRoutes(routes, basePath)
17
18
  removeTempStyles()
19
+ clearChunkReloadFlag()
18
20
 
19
21
  const router = createBrowserRouter(routes, { basename: basePath })
20
22
  hydrateRoot(
package/app/routes.tsx CHANGED
@@ -4,6 +4,7 @@ import type { RouteObject } from 'react-router'
4
4
  import { NotFound } from './components/NotFound.js'
5
5
  import { DocsLayout } from './layouts/DocsLayout.js'
6
6
  import { Root } from './root.js'
7
+ import { maybeHandleChunkError } from './utils/chunkError.js'
7
8
 
8
9
  const notFoundRoute = (() => {
9
10
  const virtualRoute = routes_virtual.find(({ path }) => path === '*')
@@ -11,18 +12,23 @@ const notFoundRoute = (() => {
11
12
  return {
12
13
  path: virtualRoute.path,
13
14
  lazy: async () => {
14
- const { frontmatter, ...route } = await virtualRoute.lazy()
15
+ try {
16
+ const { frontmatter, ...route } = await virtualRoute.lazy()
15
17
 
16
- return {
17
- ...route,
18
- element: (
19
- <Root frontmatter={frontmatter} path={virtualRoute.path}>
20
- <DocsLayout>
21
- <route.default />
22
- </DocsLayout>
23
- </Root>
24
- ),
25
- } satisfies RouteObject
18
+ return {
19
+ ...route,
20
+ element: (
21
+ <Root frontmatter={frontmatter} path={virtualRoute.path}>
22
+ <DocsLayout>
23
+ <route.default />
24
+ </DocsLayout>
25
+ </Root>
26
+ ),
27
+ } satisfies RouteObject
28
+ } catch (error) {
29
+ maybeHandleChunkError(error as Error)
30
+ throw error
31
+ }
26
32
  },
27
33
  }
28
34
 
@@ -45,24 +51,29 @@ export const routes = [
45
51
  .map((route_virtual) => ({
46
52
  path: route_virtual.path,
47
53
  lazy: async () => {
48
- const { frontmatter, ...route } = await route_virtual.lazy()
54
+ try {
55
+ const { frontmatter, ...route } = await route_virtual.lazy()
49
56
 
50
- return {
51
- ...route,
52
- element: (
53
- <Root
54
- content={decodeURIComponent(route_virtual.content ?? '')}
55
- filePath={route_virtual.filePath}
56
- frontmatter={frontmatter}
57
- lastUpdatedAt={route_virtual.lastUpdatedAt}
58
- path={route_virtual.path}
59
- >
60
- <DocsLayout>
61
- <route.default />
62
- </DocsLayout>
63
- </Root>
64
- ),
65
- } satisfies RouteObject
57
+ return {
58
+ ...route,
59
+ element: (
60
+ <Root
61
+ content={decodeURIComponent(route_virtual.content ?? '')}
62
+ filePath={route_virtual.filePath}
63
+ frontmatter={frontmatter}
64
+ lastUpdatedAt={route_virtual.lastUpdatedAt}
65
+ path={route_virtual.path}
66
+ >
67
+ <DocsLayout>
68
+ <route.default />
69
+ </DocsLayout>
70
+ </Root>
71
+ ),
72
+ } satisfies RouteObject
73
+ } catch (error) {
74
+ maybeHandleChunkError(error as Error)
75
+ throw error
76
+ }
66
77
  },
67
78
  })),
68
79
  notFoundRoute,
@@ -0,0 +1,26 @@
1
+ export function isChunkError(error: Error) {
2
+ if (!error) return false
3
+ if (!error.message) return false
4
+ const message = error.message.toLowerCase()
5
+ return (
6
+ message.includes('failed to fetch dynamically imported module') || // Chrome
7
+ message.includes('error loading dynamically imported module') || // Firefox/Safari
8
+ message.includes('dynamically imported module') // fallback
9
+ )
10
+ }
11
+
12
+ export function maybeHandleChunkError(error: Error) {
13
+ if (!isChunkError(error)) return
14
+ if (sessionStorage.getItem(reloadKey)) {
15
+ sessionStorage.removeItem(reloadKey)
16
+ return
17
+ }
18
+ sessionStorage.setItem(reloadKey, 'true')
19
+ window.location.reload()
20
+ }
21
+
22
+ export function clearChunkReloadFlag() {
23
+ sessionStorage.removeItem(reloadKey)
24
+ }
25
+
26
+ const reloadKey = 'vocs.reload'
@@ -1,20 +1,27 @@
1
1
  import { matchRoutes, type RouteObject } from 'react-router'
2
2
 
3
+ import { maybeHandleChunkError } from './chunkError.js'
4
+
3
5
  export async function hydrateLazyRoutes(routes: RouteObject[], basePath: string | undefined) {
4
6
  // Determine if any of the initial routes are lazy
5
7
  const lazyMatches = matchRoutes(routes, window.location, basePath)?.filter((m) => m.route.lazy)
6
8
 
7
9
  // Load the lazy matches and update the routes before creating your router
8
10
  // so we can hydrate the SSR-rendered content synchronously
9
- if (lazyMatches && lazyMatches?.length > 0) {
10
- await Promise.all(
11
- lazyMatches.map(async (m) => {
12
- const routeModule = typeof m.route.lazy === 'function' ? await m.route.lazy() : m.route.lazy
13
- Object.assign(m.route, {
14
- ...routeModule,
15
- lazy: undefined,
16
- })
17
- }),
18
- )
19
- }
11
+ if (lazyMatches && lazyMatches?.length > 0)
12
+ try {
13
+ await Promise.all(
14
+ lazyMatches.map(async (m) => {
15
+ const routeModule =
16
+ typeof m.route.lazy === 'function' ? await m.route.lazy() : m.route.lazy
17
+ Object.assign(m.route, {
18
+ ...routeModule,
19
+ lazy: undefined,
20
+ })
21
+ }),
22
+ )
23
+ } catch (error) {
24
+ maybeHandleChunkError(error as Error)
25
+ throw error
26
+ }
20
27
  }
package/cli/version.ts CHANGED
@@ -1 +1 @@
1
- export const version = '1.2.2'
1
+ export const version = '1.3.1'
package/config.ts CHANGED
@@ -610,7 +610,7 @@ export type TopNavItem<parsed extends boolean = false> =
610
610
  }
611
611
  | ({
612
612
  element?: never
613
- match?: string
613
+ match?: string | ((path: string) => boolean)
614
614
  text: string
615
615
  } & (
616
616
  | { link: string; items?: never }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "vocs",
3
3
  "description": "React Documentation Generator, powered by Vite.",
4
- "version": "1.2.2",
4
+ "version": "1.3.1",
5
5
  "type": "module",
6
6
  "bin": {
7
7
  "vocs": "./_lib/cli/index.js"