eddev 0.3.2 → 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/build/get-webpack-config.js +13 -1
- package/build/workers/codegen-worker-script.js +1 -1
- package/components/BrowserRouter.js +21 -7
- package/dev-ui/loader.js +4 -22
- package/entry/Root.js +3 -5
- package/hooks/useRPC.d.ts +1 -1
- package/hooks/useRPC.js +8 -6
- package/package.json +1 -1
- package/routing/routing.d.ts +5 -0
- package/routing/routing.js +13 -1
|
@@ -145,7 +145,11 @@ function getWebpackConfig(opts) {
|
|
|
145
145
|
require.resolve("@babel/preset-env"),
|
|
146
146
|
{
|
|
147
147
|
useBuiltIns: "entry",
|
|
148
|
-
exclude: [
|
|
148
|
+
exclude: [
|
|
149
|
+
"@babel/plugin-transform-regenerator",
|
|
150
|
+
"proposal-dynamic-import",
|
|
151
|
+
"transform-modules-commonjs",
|
|
152
|
+
],
|
|
149
153
|
targets: "> 0.25%, not dead",
|
|
150
154
|
corejs: 3,
|
|
151
155
|
},
|
|
@@ -314,6 +318,8 @@ function getWebpackConfig(opts) {
|
|
|
314
318
|
writeVirtualModule(ALIAS["@manifest/blocks"], manifest);
|
|
315
319
|
},
|
|
316
320
|
}));
|
|
321
|
+
ALIAS["@devtools"] = path_1.default.resolve(opts.baseDirectory, "_devtools.js");
|
|
322
|
+
writeVirtualModule(ALIAS["@devtools"], "\n import { dynamic } from 'eddev/dynamic'\n export const DevUI = dynamic(async () => await import(\"eddev/dev-ui/components/DevUI\"), { ssr: false })\n ");
|
|
317
323
|
// Wait for all manifests to resolve
|
|
318
324
|
return [4 /*yield*/, Promise.all(manifestLoaders)
|
|
319
325
|
// External Gutenberg
|
|
@@ -358,6 +364,12 @@ function getWebpackConfig(opts) {
|
|
|
358
364
|
rpcExists = (0, fs_1.existsSync)(path_1.default.join(opts.baseDirectory, "apis/_rpc.ts")) ||
|
|
359
365
|
(0, fs_1.existsSync)(path_1.default.join(opts.baseDirectory, "apis/_rpc/index.ts"));
|
|
360
366
|
DEFINES["process.rpcEnabled"] = rpcExists ? "true" : "false";
|
|
367
|
+
if (!rpcExists) {
|
|
368
|
+
EXTERNALS["@trpc/react"] = "{}";
|
|
369
|
+
EXTERNALS["@trpc/server"] = "{}";
|
|
370
|
+
EXTERNALS["@trpc/client"] = "{}";
|
|
371
|
+
EXTERNALS["@trpc/next"] = "{}";
|
|
372
|
+
}
|
|
361
373
|
if (isBrowser) {
|
|
362
374
|
DEFINES["process.env.themePath"] = "window.THEME_PATH || ".concat(DEFINES["process.env.themePath"]);
|
|
363
375
|
}
|
|
@@ -167,7 +167,7 @@ function beginWork(opts) {
|
|
|
167
167
|
});
|
|
168
168
|
}); };
|
|
169
169
|
// Create RPC/API types
|
|
170
|
-
(0, promises_1.writeFile)(Path.join(opts.baseDirectory, "types.api.ts"), "\n import type { router, createContext } from \"./apis/_rpc\"\n import { createReactQueryHooks } from \"@trpc/react\"\n export {}\n \n const createQueryHooks = () => createReactQueryHooks<typeof router>()\n \n declare global {\n type RPCUse = ReturnType<typeof createQueryHooks>\n type RPCRouter = typeof router\n type RPCContextType = Awaited<ReturnType<typeof createContext>>\n type RPCClient = ReturnType<RPCUse[\"createClient\"]>\n type RPCUseQuery = RPCUse[\"useQuery\"]\n type RPCUseMutation = RPCUse[\"useMutation\"]\n type RPCUseInfiniteQuery = RPCUse[\"useInfiniteQuery\"]\n }\n\n declare global {\n namespace NodeJS {\n interface Process {\n // @ts-ignore\n browser: boolean\n dev: boolean\n admin: boolean\n serverless: boolean\n }\n }\n }\n \n ");
|
|
170
|
+
(0, promises_1.writeFile)(Path.join(opts.baseDirectory, "types.api.ts"), "\n import type { router, createContext } from \"./apis/_rpc\"\n import { createReactQueryHooks } from \"@trpc/react\"\n export {}\n \n const createQueryHooks = process.rpcEnabled ? () => createReactQueryHooks<typeof router>() : null\n \n declare global {\n type RPCUse = ReturnType<typeof createQueryHooks>\n type RPCRouter = typeof router\n type RPCContextType = Awaited<ReturnType<typeof createContext>>\n type RPCClient = ReturnType<RPCUse[\"createClient\"]>\n type RPCUseQuery = RPCUse[\"useQuery\"]\n type RPCUseMutation = RPCUse[\"useMutation\"]\n type RPCUseInfiniteQuery = RPCUse[\"useInfiniteQuery\"]\n }\n\n declare global {\n namespace NodeJS {\n interface Process {\n // @ts-ignore\n browser: boolean\n dev: boolean\n admin: boolean\n serverless: boolean\n }\n }\n }\n \n ");
|
|
171
171
|
regenerate = debounce(100, function () { return __awaiter(_this, void 0, void 0, function () {
|
|
172
172
|
var startTime, hasChanged, err_1, documentSets, parseErrors, _loop_1, _a, _b, _i, key, generates, errors, _c, _d, _e, file, base, config, output, err_2;
|
|
173
173
|
var _this = this;
|
|
@@ -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/dev-ui/loader.js
CHANGED
|
@@ -1,30 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
5
|
-
}) : (function(o, m, k, k2) {
|
|
6
|
-
if (k2 === undefined) k2 = k;
|
|
7
|
-
o[k2] = m[k];
|
|
8
|
-
}));
|
|
9
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
10
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
11
|
-
}) : function(o, v) {
|
|
12
|
-
o["default"] = v;
|
|
13
|
-
});
|
|
14
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
15
|
-
if (mod && mod.__esModule) return mod;
|
|
16
|
-
var result = {};
|
|
17
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
18
|
-
__setModuleDefault(result, mod);
|
|
19
|
-
return result;
|
|
20
|
-
};
|
|
21
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
3
|
exports.DevUILoader = void 0;
|
|
23
4
|
var jsx_runtime_1 = require("react/jsx-runtime");
|
|
24
5
|
var react_1 = require("react");
|
|
25
|
-
var dynamic_1 = require("../dynamic");
|
|
26
6
|
var usePersistState_1 = require("./hooks/usePersistState");
|
|
27
|
-
|
|
7
|
+
// Defined as a webpack dynamic module
|
|
8
|
+
// @ts-ignore
|
|
9
|
+
var _devtools_1 = require("@devtools");
|
|
28
10
|
function DevUILoader() {
|
|
29
11
|
var _a = (0, usePersistState_1.usePersistState)("enable_devui", process.dev || (typeof window !== "undefined" && window["ENABLE_DEV_UI"])), render = _a[0], setRender = _a[1];
|
|
30
12
|
(0, react_1.useEffect)(function () {
|
|
@@ -33,7 +15,7 @@ function DevUILoader() {
|
|
|
33
15
|
}
|
|
34
16
|
}, []);
|
|
35
17
|
if (render) {
|
|
36
|
-
return (0, jsx_runtime_1.jsx)(DevUI, {}, void 0);
|
|
18
|
+
return (0, jsx_runtime_1.jsx)(_devtools_1.DevUI, {}, void 0);
|
|
37
19
|
}
|
|
38
20
|
else {
|
|
39
21
|
return null;
|
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/hooks/useRPC.d.ts
CHANGED
|
@@ -3,7 +3,7 @@ declare const trpc: any;
|
|
|
3
3
|
export declare const useRPCQuery: RPCUseQuery;
|
|
4
4
|
export declare const useRPCMutation: RPCUseMutation;
|
|
5
5
|
export declare const useRPCInfiniteQuery: RPCUseInfiniteQuery;
|
|
6
|
-
export declare const rpcClient:
|
|
6
|
+
export declare const rpcClient: any;
|
|
7
7
|
export declare type UseRPCMutationResult = ReturnType<typeof trpc.useMutation>;
|
|
8
8
|
export declare type UseRPCQueryResult = ReturnType<typeof trpc.useQuery>;
|
|
9
9
|
export declare type UseRPCInfiniteQueryResult = ReturnType<typeof trpc.useInfiniteQuery>;
|
package/hooks/useRPC.js
CHANGED
|
@@ -3,16 +3,18 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.RPCClientError = exports.rpcClient = exports.useRPCInfiniteQuery = exports.useRPCMutation = exports.useRPCQuery = void 0;
|
|
4
4
|
var react_1 = require("@trpc/react");
|
|
5
5
|
var client_1 = require("@trpc/client");
|
|
6
|
-
var trpc = (0, react_1.createReactQueryHooks)();
|
|
6
|
+
var trpc = process.rpcEnabled ? (0, react_1.createReactQueryHooks)() : {};
|
|
7
7
|
// @ts-ignore
|
|
8
8
|
exports.useRPCQuery = trpc.useQuery;
|
|
9
9
|
// @ts-ignore
|
|
10
10
|
exports.useRPCMutation = trpc.useMutation;
|
|
11
11
|
// @ts-ignore
|
|
12
12
|
exports.useRPCInfiniteQuery = trpc.useInfiniteQuery;
|
|
13
|
-
exports.rpcClient =
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
13
|
+
exports.rpcClient = process.rpcEnabled
|
|
14
|
+
? trpc.createClient({
|
|
15
|
+
// @ts-ignore
|
|
16
|
+
url: process.serverlessEndpoint.replace(/\/$/, "") + "/api/trpc",
|
|
17
|
+
// @ts-ignore
|
|
18
|
+
})
|
|
19
|
+
: null;
|
|
18
20
|
exports.RPCClientError = client_1.TRPCClientError;
|
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,
|