reactive-route 0.0.1-alpha.28 → 0.0.1-alpha.29

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.
@@ -1 +1 @@
1
- {"version":3,"file":"vue.d.ts","sourceRoot":"","sources":["../../packages/adapters/vue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG9C,eAAO,MAAM,QAAQ,EAAE,YAYtB,CAAC"}
1
+ {"version":3,"file":"vue.d.ts","sourceRoot":"","sources":["../../packages/adapters/vue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG9C,eAAO,MAAM,QAAQ,EAAE,YAatB,CAAC"}
@@ -26,7 +26,7 @@ module.exports = __toCommonJS(vue_exports);
26
26
  var import_vue = require("vue");
27
27
  var adapters = {
28
28
  batch: (cb) => cb(),
29
- autorun: import_vue.watchEffect,
29
+ autorun: (cb) => (0, import_vue.watchEffect)(cb, { flush: "post" }),
30
30
  replaceObject: (obj, newObj) => {
31
31
  for (const variableKey in obj) {
32
32
  if (obj.hasOwnProperty(variableKey)) {
@@ -35,5 +35,6 @@ var adapters = {
35
35
  }
36
36
  Object.assign(obj, newObj);
37
37
  },
38
- makeObservable: import_vue.reactive
38
+ makeObservable: import_vue.reactive,
39
+ immediateSetComponent: true
39
40
  };
package/dist/cjs/index.js CHANGED
@@ -219,7 +219,7 @@ function createRouter(config) {
219
219
  return router.redirect(getInitialRoute({ routes: router.routes, ...params }));
220
220
  };
221
221
  router.redirect = async function redirect(config2) {
222
- const { route: routeName, noHistoryPush } = config2;
222
+ const { route: routeName, replace } = config2;
223
223
  let currentRoute;
224
224
  let currentPathname;
225
225
  let currentUrl;
@@ -264,7 +264,7 @@ function createRouter(config) {
264
264
  });
265
265
  router.routesHistory.push(nextUrl);
266
266
  });
267
- if (history && !noHistoryPush) {
267
+ if (history && !replace) {
268
268
  history.push({
269
269
  hash: history.location.hash,
270
270
  search: nextSearch,
@@ -351,7 +351,7 @@ function createRouter(config) {
351
351
  if (lastUrl !== nextUrl) {
352
352
  router.routesHistory.push(nextUrl);
353
353
  }
354
- if (history && !noHistoryPush) {
354
+ if (history && !replace) {
355
355
  history.push({
356
356
  hash: history.location.hash,
357
357
  search: "query" in config2 ? `?${queryString.stringify(config2.query)}` : "",
@@ -40,7 +40,7 @@ function RouterInner(props) {
40
40
  }
41
41
  void props.router.restoreFromURL({
42
42
  pathname: import_reactive_route.history.location.pathname,
43
- noHistoryPush: true
43
+ replace: true
44
44
  });
45
45
  });
46
46
  }, []);
@@ -40,7 +40,7 @@ function RouterInner(props) {
40
40
  }
41
41
  void props.router.restoreFromURL({
42
42
  pathname: import_reactive_route.history.location.pathname,
43
- noHistoryPush: true
43
+ replace: true
44
44
  });
45
45
  });
46
46
  }, []);
@@ -47,7 +47,7 @@ function Router(props) {
47
47
  }
48
48
  void props.router.restoreFromURL({
49
49
  pathname: import_reactive_route.history.location.pathname,
50
- noHistoryPush: true
50
+ replace: true
51
51
  });
52
52
  });
53
53
  }
Binary file
@@ -4,17 +4,17 @@ export type TypeRedirectParams<TRoutes extends Record<string, TypeRoute>, TRoute
4
4
  route: TRouteName;
5
5
  params: Record<keyof TRoutes[TRouteName]['params'], string>;
6
6
  query?: Partial<Record<keyof TRoutes[TRouteName]['query'], string>>;
7
- noHistoryPush?: boolean;
7
+ replace?: boolean;
8
8
  } : {
9
9
  route: TRouteName;
10
10
  params: Record<keyof TRoutes[TRouteName]['params'], string>;
11
- noHistoryPush?: boolean;
11
+ replace?: boolean;
12
12
  } : TRoutes[TRouteName]['query'] extends Record<string, TypeValidator> ? {
13
13
  route: TRouteName;
14
14
  query?: Partial<Record<keyof TRoutes[TRouteName]['query'], string>>;
15
- noHistoryPush?: boolean;
15
+ replace?: boolean;
16
16
  } : {
17
17
  route: TRouteName;
18
- noHistoryPush?: boolean;
18
+ replace?: boolean;
19
19
  };
20
20
  //# sourceMappingURL=TypeRedirectParams.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TypeRedirectParams.d.ts","sourceRoot":"","sources":["../../../packages/core/types/TypeRedirectParams.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,MAAM,MAAM,kBAAkB,CAC5B,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,EACzC,UAAU,SAAS,MAAM,OAAO,IAC9B,OAAO,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,GACnE,OAAO,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,GAChE;IACE,KAAK,EAAE,UAAU,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,CAAC;IAC5D,KAAK,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;IACpE,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB,GACD;IACE,KAAK,EAAE,UAAU,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,CAAC;IAC5D,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB,GACH,OAAO,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,GAChE;IACE,KAAK,EAAE,UAAU,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;IACpE,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB,GACD;IACE,KAAK,EAAE,UAAU,CAAC;IAClB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB,CAAC"}
1
+ {"version":3,"file":"TypeRedirectParams.d.ts","sourceRoot":"","sources":["../../../packages/core/types/TypeRedirectParams.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,MAAM,MAAM,kBAAkB,CAC5B,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,EACzC,UAAU,SAAS,MAAM,OAAO,IAC9B,OAAO,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,GACnE,OAAO,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,GAChE;IACE,KAAK,EAAE,UAAU,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,CAAC;IAC5D,KAAK,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;IACpE,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,GACD;IACE,KAAK,EAAE,UAAU,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,CAAC;IAC5D,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,GACH,OAAO,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,GAChE;IACE,KAAK,EAAE,UAAU,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;IACpE,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,GACD;IACE,KAAK,EAAE,UAAU,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC"}
@@ -11,7 +11,7 @@ export type TypeRouter<TRoutes extends Record<string | 'notFound' | 'internalErr
11
11
  redirect<TRouteName extends keyof TRoutes>(config: TypeRedirectParams<TRoutes, TRouteName>): Promise<void>;
12
12
  restoreFromURL(params: {
13
13
  pathname: string;
14
- noHistoryPush?: boolean;
14
+ replace?: boolean;
15
15
  }): Promise<void>;
16
16
  restoreFromServer(obj: {
17
17
  routesHistory: Array<string>;
@@ -1 +1 @@
1
- {"version":3,"file":"TypeRouter.d.ts","sourceRoot":"","sources":["../../../packages/core/types/TypeRouter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,MAAM,MAAM,UAAU,CAAC,OAAO,SAAS,MAAM,CAAC,MAAM,GAAG,UAAU,GAAG,eAAe,EAAE,SAAS,CAAC,IAAI;IACjG,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,YAAY,CAAC;IACvB,YAAY,EAAE,gBAAgB,CAAC,OAAO,CAAC,MAAM,OAAO,CAAC,CAAC,CAAC;IACvD,aAAa,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAC7B,aAAa,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,UAAU,SAAS,MAAM,OAAO,EACvC,MAAM,EAAE,kBAAkB,CAAC,OAAO,EAAE,UAAU,CAAC,GAC9C,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,cAAc,CAAC,MAAM,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,aAAa,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACrF,iBAAiB,CAAC,GAAG,EAAE;QACrB,aAAa,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QAC7B,YAAY,EAAE,gBAAgB,CAAC,OAAO,CAAC,MAAM,OAAO,CAAC,CAAC,CAAC;KACxD,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAClB,eAAe,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;CAC9B,CAAC"}
1
+ {"version":3,"file":"TypeRouter.d.ts","sourceRoot":"","sources":["../../../packages/core/types/TypeRouter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,MAAM,MAAM,UAAU,CAAC,OAAO,SAAS,MAAM,CAAC,MAAM,GAAG,UAAU,GAAG,eAAe,EAAE,SAAS,CAAC,IAAI;IACjG,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,YAAY,CAAC;IACvB,YAAY,EAAE,gBAAgB,CAAC,OAAO,CAAC,MAAM,OAAO,CAAC,CAAC,CAAC;IACvD,aAAa,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAC7B,aAAa,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,UAAU,SAAS,MAAM,OAAO,EACvC,MAAM,EAAE,kBAAkB,CAAC,OAAO,EAAE,UAAU,CAAC,GAC9C,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,cAAc,CAAC,MAAM,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/E,iBAAiB,CAAC,GAAG,EAAE;QACrB,aAAa,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QAC7B,YAAY,EAAE,gBAAgB,CAAC,OAAO,CAAC,MAAM,OAAO,CAAC,CAAC,CAAC;KACxD,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAClB,eAAe,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;CAC9B,CAAC"}
@@ -2,7 +2,7 @@
2
2
  import { reactive, watchEffect } from "vue";
3
3
  var adapters = {
4
4
  batch: (cb) => cb(),
5
- autorun: watchEffect,
5
+ autorun: (cb) => watchEffect(cb, { flush: "post" }),
6
6
  replaceObject: (obj, newObj) => {
7
7
  for (const variableKey in obj) {
8
8
  if (obj.hasOwnProperty(variableKey)) {
@@ -11,7 +11,8 @@ var adapters = {
11
11
  }
12
12
  Object.assign(obj, newObj);
13
13
  },
14
- makeObservable: reactive
14
+ makeObservable: reactive,
15
+ immediateSetComponent: true
15
16
  };
16
17
  export {
17
18
  adapters
package/dist/esm/index.js CHANGED
@@ -188,7 +188,7 @@ function createRouter(config) {
188
188
  return router.redirect(getInitialRoute({ routes: router.routes, ...params }));
189
189
  };
190
190
  router.redirect = async function redirect(config2) {
191
- const { route: routeName, noHistoryPush } = config2;
191
+ const { route: routeName, replace } = config2;
192
192
  let currentRoute;
193
193
  let currentPathname;
194
194
  let currentUrl;
@@ -233,7 +233,7 @@ function createRouter(config) {
233
233
  });
234
234
  router.routesHistory.push(nextUrl);
235
235
  });
236
- if (history && !noHistoryPush) {
236
+ if (history && !replace) {
237
237
  history.push({
238
238
  hash: history.location.hash,
239
239
  search: nextSearch,
@@ -320,7 +320,7 @@ function createRouter(config) {
320
320
  if (lastUrl !== nextUrl) {
321
321
  router.routesHistory.push(nextUrl);
322
322
  }
323
- if (history && !noHistoryPush) {
323
+ if (history && !replace) {
324
324
  history.push({
325
325
  hash: history.location.hash,
326
326
  search: "query" in config2 ? `?${queryString.stringify(config2.query)}` : "",
@@ -14,7 +14,7 @@ function RouterInner(props) {
14
14
  }
15
15
  void props.router.restoreFromURL({
16
16
  pathname: history.location.pathname,
17
- noHistoryPush: true
17
+ replace: true
18
18
  });
19
19
  });
20
20
  }, []);
@@ -14,7 +14,7 @@ function RouterInner(props) {
14
14
  }
15
15
  void props.router.restoreFromURL({
16
16
  pathname: history.location.pathname,
17
- noHistoryPush: true
17
+ replace: true
18
18
  });
19
19
  });
20
20
  }, []);
@@ -21,7 +21,7 @@ function Router(props) {
21
21
  }
22
22
  void props.router.restoreFromURL({
23
23
  pathname: history.location.pathname,
24
- noHistoryPush: true
24
+ replace: true
25
25
  });
26
26
  });
27
27
  }
Binary file
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "reactive-route",
3
3
  "author": "Dmitry Kazakov",
4
4
  "license": "MIT",
5
- "version": "0.0.1-alpha.28",
5
+ "version": "0.0.1-alpha.29",
6
6
  "description": "Reactive Router for different frameworks",
7
7
  "repository": {
8
8
  "type": "git",
@@ -21,7 +21,7 @@
21
21
  "upgrade-lib": "bash -c 'pnpm upgrade -r $@' bash",
22
22
  "test": "vitest run&&node --import tsx ./scripts/genCoverageBadge.ts",
23
23
  "test-watch": "vitest --coverage=false",
24
- "test-vue": "vitest run --config ./vitest.vue.config.mjs --coverage=false",
24
+ "test-vue": "vitest --config ./vitest.vue.config.mjs --coverage=false",
25
25
  "e2e": "playwright test",
26
26
  "e2e:ui": "playwright test --ui",
27
27
  "e2e:install": "playwright install --with-deps",
@@ -68,7 +68,7 @@ await router.redirect({
68
68
  // with query parameters
69
69
  query: { q: 's' },
70
70
  // if you want to replace history state instead of pushing
71
- noHistoryPush: true,
71
+ replace: true,
72
72
  });
73
73
  ```
74
74
 
@@ -2,7 +2,7 @@ import { defineConfig } from 'vitest/config';
2
2
 
3
3
  export default defineConfig({
4
4
  test: {
5
- projects: ['packages/vue/vitest.config.mjs'],
5
+ projects: ['packages/vue/vitest.config.mjs' /*, 'packages/vue/vitest.ssr.config.mjs'*/],
6
6
  coverage: {
7
7
  clean: false,
8
8
  enabled: true,