@tinkoff/router 0.2.2 → 0.2.4

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.
@@ -70,7 +70,7 @@ const parseParameter = (part) => {
70
70
  const [, paramName, regexp, optional] = match;
71
71
  const useRegexp = prefix || postfix || regexp;
72
72
  return {
73
- type: 3 /* parameter */,
73
+ type: 3 /* PartType.parameter */,
74
74
  paramName,
75
75
  regexp: useRegexp
76
76
  ? new RegExp(`^${prefix}(${regexp || '.+'})${optional ? '?' : ''}${postfix}$`)
@@ -80,15 +80,15 @@ const parseParameter = (part) => {
80
80
  };
81
81
  const parse = (part) => {
82
82
  if (isHistoryFallback(part)) {
83
- return { type: 1 /* historyFallback */ };
83
+ return { type: 1 /* PartType.historyFallback */ };
84
84
  }
85
85
  if (isWildcard(part)) {
86
- return { type: 2 /* wildcard */ };
86
+ return { type: 2 /* PartType.wildcard */ };
87
87
  }
88
88
  if (isParameterized(part)) {
89
89
  return parseParameter(part);
90
90
  }
91
- return { type: 0 /* literal */, value: part };
91
+ return { type: 0 /* PartType.literal */, value: part };
92
92
  };
93
93
  const makePath = (pathname, params) => {
94
94
  const parts = getParts(pathname);
@@ -534,7 +534,7 @@ const supportsHtml5History = typeof window !== 'undefined' && window.history &&
534
534
  const wrapHistory = ({ onNavigate }) => {
535
535
  if (!supportsHtml5History) {
536
536
  const navigate = (data, title, url) => {
537
- window.location.href = url;
537
+ window.location.href = url.toString();
538
538
  };
539
539
  window.history.pushState = navigate;
540
540
  window.history.replaceState = navigate;
@@ -574,7 +574,7 @@ const wrapHistory = ({ onNavigate }) => {
574
574
  };
575
575
  const browserNavigate = (replace = false) => {
576
576
  return (navigateState, title, url) => {
577
- onNavigate({ url, replace, navigateState });
577
+ onNavigate({ url: url.toString(), replace, navigateState });
578
578
  };
579
579
  };
580
580
  window.history.pushState = browserNavigate(false);
@@ -841,15 +841,15 @@ class RouteTree {
841
841
  for (let i = 0; i < parts.length; i++) {
842
842
  const part = parts[i];
843
843
  const parsed = parse(part);
844
- if (parsed.type === 1 /* historyFallback */) {
844
+ if (parsed.type === 1 /* PartType.historyFallback */) {
845
845
  currentTree.historyFallbackRoute = route;
846
846
  return;
847
847
  }
848
- if (parsed.type === 2 /* wildcard */) {
848
+ if (parsed.type === 2 /* PartType.wildcard */) {
849
849
  currentTree.wildcardRoute = route;
850
850
  return;
851
851
  }
852
- if (parsed.type === 3 /* parameter */) {
852
+ if (parsed.type === 3 /* PartType.parameter */) {
853
853
  const { paramName, regexp, optional } = parsed;
854
854
  // prevent from creating new entries for same route
855
855
  const found = find((par) => par.key === part, currentTree.parameters);
@@ -1138,7 +1138,7 @@ const UrlContext = createContext(null);
1138
1138
  const Provider = ({ router, serverState, children }) => {
1139
1139
  const route = useSyncExternalStore((cb) => router.registerSyncHook('change', cb), () => router.getLastRoute(), serverState ? () => serverState.currentRoute : () => router.getLastRoute());
1140
1140
  const url = useSyncExternalStore((cb) => router.registerSyncHook('change', cb), () => router.getLastUrl(), serverState ? () => serverState.currentUrl : () => router.getLastUrl());
1141
- return (jsx(RouterContext.Provider, Object.assign({ value: router }, { children: jsx(RouteContext.Provider, Object.assign({ value: route }, { children: jsx(UrlContext.Provider, Object.assign({ value: url }, { children: children }), void 0) }), void 0) }), void 0));
1141
+ return (jsx(RouterContext.Provider, { value: router, children: jsx(RouteContext.Provider, { value: route, children: jsx(UrlContext.Provider, { value: url, children: children }) }) }));
1142
1142
  };
1143
1143
  Provider.displayName = 'Provider';
1144
1144
 
@@ -1190,7 +1190,7 @@ function Link(props) {
1190
1190
  }
1191
1191
  return (
1192
1192
  // eslint-disable-next-line react/jsx-props-no-spreading
1193
- jsx("a", Object.assign({}, otherProps, extraProps, { children: children }), void 0));
1193
+ jsx("a", { ...otherProps, ...extraProps, children: children }));
1194
1194
  }
1195
1195
  Link.displayName = 'Link';
1196
1196
 
package/lib/index.es.js CHANGED
@@ -70,7 +70,7 @@ const parseParameter = (part) => {
70
70
  const [, paramName, regexp, optional] = match;
71
71
  const useRegexp = prefix || postfix || regexp;
72
72
  return {
73
- type: 3 /* parameter */,
73
+ type: 3 /* PartType.parameter */,
74
74
  paramName,
75
75
  regexp: useRegexp
76
76
  ? new RegExp(`^${prefix}(${regexp || '.+'})${optional ? '?' : ''}${postfix}$`)
@@ -80,15 +80,15 @@ const parseParameter = (part) => {
80
80
  };
81
81
  const parse = (part) => {
82
82
  if (isHistoryFallback(part)) {
83
- return { type: 1 /* historyFallback */ };
83
+ return { type: 1 /* PartType.historyFallback */ };
84
84
  }
85
85
  if (isWildcard(part)) {
86
- return { type: 2 /* wildcard */ };
86
+ return { type: 2 /* PartType.wildcard */ };
87
87
  }
88
88
  if (isParameterized(part)) {
89
89
  return parseParameter(part);
90
90
  }
91
- return { type: 0 /* literal */, value: part };
91
+ return { type: 0 /* PartType.literal */, value: part };
92
92
  };
93
93
  const makePath = (pathname, params) => {
94
94
  const parts = getParts(pathname);
@@ -567,15 +567,15 @@ class RouteTree {
567
567
  for (let i = 0; i < parts.length; i++) {
568
568
  const part = parts[i];
569
569
  const parsed = parse(part);
570
- if (parsed.type === 1 /* historyFallback */) {
570
+ if (parsed.type === 1 /* PartType.historyFallback */) {
571
571
  currentTree.historyFallbackRoute = route;
572
572
  return;
573
573
  }
574
- if (parsed.type === 2 /* wildcard */) {
574
+ if (parsed.type === 2 /* PartType.wildcard */) {
575
575
  currentTree.wildcardRoute = route;
576
576
  return;
577
577
  }
578
- if (parsed.type === 3 /* parameter */) {
578
+ if (parsed.type === 3 /* PartType.parameter */) {
579
579
  const { paramName, regexp, optional } = parsed;
580
580
  // prevent from creating new entries for same route
581
581
  const found = find((par) => par.key === part, currentTree.parameters);
@@ -764,7 +764,7 @@ const supportsHtml5History = typeof window !== 'undefined' && window.history &&
764
764
  const wrapHistory = ({ onNavigate }) => {
765
765
  if (!supportsHtml5History) {
766
766
  const navigate = (data, title, url) => {
767
- window.location.href = url;
767
+ window.location.href = url.toString();
768
768
  };
769
769
  window.history.pushState = navigate;
770
770
  window.history.replaceState = navigate;
@@ -804,7 +804,7 @@ const wrapHistory = ({ onNavigate }) => {
804
804
  };
805
805
  const browserNavigate = (replace = false) => {
806
806
  return (navigateState, title, url) => {
807
- onNavigate({ url, replace, navigateState });
807
+ onNavigate({ url: url.toString(), replace, navigateState });
808
808
  };
809
809
  };
810
810
  window.history.pushState = browserNavigate(false);
@@ -1066,7 +1066,7 @@ const UrlContext = createContext(null);
1066
1066
  const Provider = ({ router, serverState, children }) => {
1067
1067
  const route = useSyncExternalStore((cb) => router.registerSyncHook('change', cb), () => router.getLastRoute(), serverState ? () => serverState.currentRoute : () => router.getLastRoute());
1068
1068
  const url = useSyncExternalStore((cb) => router.registerSyncHook('change', cb), () => router.getLastUrl(), serverState ? () => serverState.currentUrl : () => router.getLastUrl());
1069
- return (jsx(RouterContext.Provider, Object.assign({ value: router }, { children: jsx(RouteContext.Provider, Object.assign({ value: route }, { children: jsx(UrlContext.Provider, Object.assign({ value: url }, { children: children }), void 0) }), void 0) }), void 0));
1069
+ return (jsx(RouterContext.Provider, { value: router, children: jsx(RouteContext.Provider, { value: route, children: jsx(UrlContext.Provider, { value: url, children: children }) }) }));
1070
1070
  };
1071
1071
  Provider.displayName = 'Provider';
1072
1072
 
@@ -1118,7 +1118,7 @@ function Link(props) {
1118
1118
  }
1119
1119
  return (
1120
1120
  // eslint-disable-next-line react/jsx-props-no-spreading
1121
- jsx("a", Object.assign({}, otherProps, extraProps, { children: children }), void 0));
1121
+ jsx("a", { ...otherProps, ...extraProps, children: children }));
1122
1122
  }
1123
1123
  Link.displayName = 'Link';
1124
1124
 
package/lib/index.js CHANGED
@@ -85,7 +85,7 @@ const parseParameter = (part) => {
85
85
  const [, paramName, regexp, optional] = match;
86
86
  const useRegexp = prefix || postfix || regexp;
87
87
  return {
88
- type: 3 /* parameter */,
88
+ type: 3 /* PartType.parameter */,
89
89
  paramName,
90
90
  regexp: useRegexp
91
91
  ? new RegExp(`^${prefix}(${regexp || '.+'})${optional ? '?' : ''}${postfix}$`)
@@ -95,15 +95,15 @@ const parseParameter = (part) => {
95
95
  };
96
96
  const parse = (part) => {
97
97
  if (isHistoryFallback(part)) {
98
- return { type: 1 /* historyFallback */ };
98
+ return { type: 1 /* PartType.historyFallback */ };
99
99
  }
100
100
  if (isWildcard(part)) {
101
- return { type: 2 /* wildcard */ };
101
+ return { type: 2 /* PartType.wildcard */ };
102
102
  }
103
103
  if (isParameterized(part)) {
104
104
  return parseParameter(part);
105
105
  }
106
- return { type: 0 /* literal */, value: part };
106
+ return { type: 0 /* PartType.literal */, value: part };
107
107
  };
108
108
  const makePath = (pathname, params) => {
109
109
  const parts = getParts(pathname);
@@ -582,15 +582,15 @@ class RouteTree {
582
582
  for (let i = 0; i < parts.length; i++) {
583
583
  const part = parts[i];
584
584
  const parsed = parse(part);
585
- if (parsed.type === 1 /* historyFallback */) {
585
+ if (parsed.type === 1 /* PartType.historyFallback */) {
586
586
  currentTree.historyFallbackRoute = route;
587
587
  return;
588
588
  }
589
- if (parsed.type === 2 /* wildcard */) {
589
+ if (parsed.type === 2 /* PartType.wildcard */) {
590
590
  currentTree.wildcardRoute = route;
591
591
  return;
592
592
  }
593
- if (parsed.type === 3 /* parameter */) {
593
+ if (parsed.type === 3 /* PartType.parameter */) {
594
594
  const { paramName, regexp, optional } = parsed;
595
595
  // prevent from creating new entries for same route
596
596
  const found = find__default["default"]((par) => par.key === part, currentTree.parameters);
@@ -779,7 +779,7 @@ const supportsHtml5History = typeof window !== 'undefined' && window.history &&
779
779
  const wrapHistory = ({ onNavigate }) => {
780
780
  if (!supportsHtml5History) {
781
781
  const navigate = (data, title, url) => {
782
- window.location.href = url;
782
+ window.location.href = url.toString();
783
783
  };
784
784
  window.history.pushState = navigate;
785
785
  window.history.replaceState = navigate;
@@ -819,7 +819,7 @@ const wrapHistory = ({ onNavigate }) => {
819
819
  };
820
820
  const browserNavigate = (replace = false) => {
821
821
  return (navigateState, title, url) => {
822
- onNavigate({ url, replace, navigateState });
822
+ onNavigate({ url: url.toString(), replace, navigateState });
823
823
  };
824
824
  };
825
825
  window.history.pushState = browserNavigate(false);
@@ -1081,7 +1081,7 @@ const UrlContext = react.createContext(null);
1081
1081
  const Provider = ({ router, serverState, children }) => {
1082
1082
  const route = shim.useSyncExternalStore((cb) => router.registerSyncHook('change', cb), () => router.getLastRoute(), serverState ? () => serverState.currentRoute : () => router.getLastRoute());
1083
1083
  const url = shim.useSyncExternalStore((cb) => router.registerSyncHook('change', cb), () => router.getLastUrl(), serverState ? () => serverState.currentUrl : () => router.getLastUrl());
1084
- return (jsxRuntime.jsx(RouterContext.Provider, Object.assign({ value: router }, { children: jsxRuntime.jsx(RouteContext.Provider, Object.assign({ value: route }, { children: jsxRuntime.jsx(UrlContext.Provider, Object.assign({ value: url }, { children: children }), void 0) }), void 0) }), void 0));
1084
+ return (jsxRuntime.jsx(RouterContext.Provider, { value: router, children: jsxRuntime.jsx(RouteContext.Provider, { value: route, children: jsxRuntime.jsx(UrlContext.Provider, { value: url, children: children }) }) }));
1085
1085
  };
1086
1086
  Provider.displayName = 'Provider';
1087
1087
 
@@ -1133,7 +1133,7 @@ function Link(props) {
1133
1133
  }
1134
1134
  return (
1135
1135
  // eslint-disable-next-line react/jsx-props-no-spreading
1136
- jsxRuntime.jsx("a", Object.assign({}, otherProps, extraProps, { children: children }), void 0));
1136
+ jsxRuntime.jsx("a", { ...otherProps, ...extraProps, children: children }));
1137
1137
  }
1138
1138
  Link.displayName = 'Link';
1139
1139
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tinkoff/router",
3
- "version": "0.2.2",
3
+ "version": "0.2.4",
4
4
  "description": "router",
5
5
  "main": "lib/index.js",
6
6
  "typings": "lib/index.d.ts",
@@ -22,14 +22,14 @@
22
22
  "build-for-publish": "true"
23
23
  },
24
24
  "dependencies": {
25
- "@tinkoff/react-hooks": "0.1.2",
26
- "@tinkoff/url": "0.8.2",
25
+ "@tinkoff/react-hooks": "0.1.4",
26
+ "@tinkoff/url": "0.8.4",
27
27
  "@tinkoff/utils": "^2.1.2",
28
28
  "use-sync-external-store": "^1.2.0"
29
29
  },
30
30
  "peerDependencies": {
31
31
  "react": ">=16.14.0",
32
- "tslib": "^2.0.3"
32
+ "tslib": "^2.4.0"
33
33
  },
34
34
  "sideEffects": false,
35
35
  "devDependencies": {