eddev 0.3.3 → 0.3.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.
- package/components/BrowserRouter.js +21 -7
- package/entry/Root.js +3 -5
- package/package.json +1 -1
- package/routing/routing.d.ts +5 -0
- package/routing/routing.js +13 -1
|
@@ -109,12 +109,22 @@ function BrowserRouter(props) {
|
|
|
109
109
|
cancelled = true;
|
|
110
110
|
};
|
|
111
111
|
}, [pending]);
|
|
112
|
-
var
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
112
|
+
var scrollTo = function (value) {
|
|
113
|
+
if (typeof value !== "number")
|
|
114
|
+
return;
|
|
115
|
+
if (routing_1.customRouterScrollHandler.handler) {
|
|
116
|
+
routing_1.customRouterScrollHandler.handler(value);
|
|
116
117
|
}
|
|
117
|
-
|
|
118
|
+
else if (document.scrollingElement) {
|
|
119
|
+
document.scrollingElement.scrollTop = value;
|
|
120
|
+
}
|
|
121
|
+
};
|
|
122
|
+
// const [scrollPosition, setScrollPosition] = useState({ value: null as null | number })
|
|
123
|
+
// useEffect(() => {
|
|
124
|
+
// if (document.scrollingElement && typeof scrollPosition.value === "number") {
|
|
125
|
+
// document.scrollingElement.scrollTop = scrollPosition.value
|
|
126
|
+
// }
|
|
127
|
+
// }, [scrollPosition])
|
|
118
128
|
return ((0, jsx_runtime_1.jsx)(routing_1.RouterRoot, __assign({ url: url, data: data, onNavigateRequest: function (url) {
|
|
119
129
|
setPendingUrl({ popped: false, url: url });
|
|
120
130
|
}, onPreload: function (url) {
|
|
@@ -123,10 +133,14 @@ function BrowserRouter(props) {
|
|
|
123
133
|
}
|
|
124
134
|
}, onNavigated: function () {
|
|
125
135
|
if (pending && typeof pending.scrollPosition === "number") {
|
|
126
|
-
setScrollPosition({ value: pending.scrollPosition })
|
|
136
|
+
// setScrollPosition({ value: pending.scrollPosition })
|
|
137
|
+
// document.scrollingElement!.scrollTop = pending.scrollPosition
|
|
138
|
+
scrollTo(pending.scrollPosition);
|
|
127
139
|
}
|
|
128
140
|
else {
|
|
129
|
-
setScrollPosition({ value: 0 })
|
|
141
|
+
// setScrollPosition({ value: 0 })
|
|
142
|
+
// document.scrollingElement!.scrollTop = 0
|
|
143
|
+
scrollTo(0);
|
|
130
144
|
}
|
|
131
145
|
} }, { children: props.children }), void 0));
|
|
132
146
|
}
|
package/entry/Root.js
CHANGED
|
@@ -38,12 +38,10 @@ var routing_1 = require("../routing");
|
|
|
38
38
|
var loader_1 = require("../dev-ui/loader");
|
|
39
39
|
var next_1 = require("@trpc/next");
|
|
40
40
|
function Root() {
|
|
41
|
+
var _a, _b;
|
|
41
42
|
var route = (0, routing_1.useRoute)();
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
var name = _a[0], Component = _a[1];
|
|
45
|
-
return ((0, jsx_runtime_1.jsx)(routing_1.Route, __assign({ match: function (route) { var _a; return ((_a = route.data) === null || _a === void 0 ? void 0 : _a.view) === name; } }, { children: (0, jsx_runtime_1.jsx)(Component, __assign({}, (_c = (_b = route.data) === null || _b === void 0 ? void 0 : _b.viewData) === null || _c === void 0 ? void 0 : _c.data), void 0) }), name));
|
|
46
|
-
}) }, void 0) }, void 0)] }, void 0));
|
|
43
|
+
var Component = views_1.default[(_a = route.data) === null || _a === void 0 ? void 0 : _a.view];
|
|
44
|
+
return ((0, jsx_runtime_1.jsxs)(react_1.Fragment, { children: [process.devUI && (0, jsx_runtime_1.jsx)(loader_1.DevUILoader, {}, void 0), (0, jsx_runtime_1.jsx)(views_1.App, { children: Component ? (0, jsx_runtime_1.jsx)(Component, __assign({}, (_b = route.data) === null || _b === void 0 ? void 0 : _b.viewData.data), void 0) : null }, void 0)] }, void 0));
|
|
47
45
|
}
|
|
48
46
|
exports.default = process.rpcEnabled
|
|
49
47
|
? (0, next_1.withTRPC)({
|
package/package.json
CHANGED
package/routing/routing.d.ts
CHANGED
|
@@ -52,6 +52,11 @@ declare type RouteContextType = {
|
|
|
52
52
|
};
|
|
53
53
|
export declare function useRoute(): RouteItem;
|
|
54
54
|
export declare function useRouter(): RouteContextType | undefined;
|
|
55
|
+
export declare type RouterScrollHandler = (value: number) => void;
|
|
56
|
+
export declare const customRouterScrollHandler: {
|
|
57
|
+
handler: RouterScrollHandler | null;
|
|
58
|
+
};
|
|
59
|
+
export declare function useCustomRouterScrollHandler(handler: RouterScrollHandler): void;
|
|
55
60
|
export declare type RouteProps = RouteContextConfig & {
|
|
56
61
|
children: ReactNode;
|
|
57
62
|
};
|
package/routing/routing.js
CHANGED
|
@@ -50,7 +50,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
50
50
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
51
51
|
};
|
|
52
52
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
53
|
-
exports.RouteItemContext = exports.Switch = exports.Link = exports.urlDescendentsMatch = exports.urlPathsMatch = exports.isInternalPageLink = exports.RouterRoot = exports.createRouteItem = exports.Route = exports.useRouter = exports.useRoute = void 0;
|
|
53
|
+
exports.RouteItemContext = exports.Switch = exports.Link = exports.urlDescendentsMatch = exports.urlPathsMatch = exports.isInternalPageLink = exports.RouterRoot = exports.createRouteItem = exports.Route = exports.useCustomRouterScrollHandler = exports.customRouterScrollHandler = exports.useRouter = exports.useRoute = void 0;
|
|
54
54
|
var jsx_runtime_1 = require("react/jsx-runtime");
|
|
55
55
|
var react_1 = require("react");
|
|
56
56
|
var react_merge_refs_1 = require("react-merge-refs");
|
|
@@ -236,6 +236,18 @@ function useRouter() {
|
|
|
236
236
|
return (0, react_1.useContext)(RouterContext);
|
|
237
237
|
}
|
|
238
238
|
exports.useRouter = useRouter;
|
|
239
|
+
exports.customRouterScrollHandler = {
|
|
240
|
+
handler: null,
|
|
241
|
+
};
|
|
242
|
+
function useCustomRouterScrollHandler(handler) {
|
|
243
|
+
exports.customRouterScrollHandler.handler = handler;
|
|
244
|
+
(0, react_1.useEffect)(function () {
|
|
245
|
+
return function () {
|
|
246
|
+
exports.customRouterScrollHandler.handler = null;
|
|
247
|
+
};
|
|
248
|
+
}, []);
|
|
249
|
+
}
|
|
250
|
+
exports.useCustomRouterScrollHandler = useCustomRouterScrollHandler;
|
|
239
251
|
function Route(props) {
|
|
240
252
|
var ctx = useForkedRouter({
|
|
241
253
|
match: props.match,
|