@farm.js/core 0.1.17 → 0.1.19
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/dist/after.cjs +12 -225
- package/dist/agent-runtime.cjs +83 -2800
- package/dist/api/client.cjs +17 -4060
- package/dist/api/route-manager.cjs +34 -4354
- package/dist/api/runtime.cjs +29 -2696
- package/dist/api.cjs +88 -8434
- package/dist/app-markdown.cjs +39 -280
- package/dist/app-markdown.mjs +3 -3
- package/dist/cache.cjs +38 -1560
- package/dist/chunk-22GUSVNJ.cjs +351 -0
- package/dist/{chunk-EN7WTEAY.mjs → chunk-2ANEVVF7.mjs} +1 -1
- package/dist/chunk-2CQ74SP6.cjs +13 -0
- package/dist/{chunk-YD4J4XCI.mjs → chunk-2GNATDDE.mjs} +1 -1
- package/dist/chunk-2SJ4RQ6P.cjs +57 -0
- package/dist/chunk-3376ZTRC.cjs +1 -0
- package/dist/chunk-4PNUXIVU.cjs +472 -0
- package/dist/chunk-4PPEPOZZ.cjs +21 -0
- package/dist/chunk-4ZFL5GFN.cjs +520 -0
- package/dist/chunk-5OVTOKGH.cjs +65 -0
- package/dist/chunk-5QIKR7RR.cjs +224 -0
- package/dist/chunk-5ZSWG4UX.cjs +127 -0
- package/dist/chunk-62YJ2IEB.cjs +238 -0
- package/dist/chunk-6EODJYCX.cjs +183 -0
- package/dist/chunk-6EXBPJ24.cjs +434 -0
- package/dist/chunk-6QQDAAAZ.cjs +38 -0
- package/dist/chunk-6V4TDWEC.cjs +455 -0
- package/dist/chunk-72ADZ6GQ.cjs +19 -0
- package/dist/chunk-75BRBIFP.cjs +172 -0
- package/dist/{chunk-ZCNJKLA2.mjs → chunk-7BC6GAL7.mjs} +1 -1
- package/dist/chunk-7W3CPVXS.cjs +24 -0
- package/dist/chunk-A6WIQH5Z.cjs +31 -0
- package/dist/chunk-A777V5WU.cjs +725 -0
- package/dist/chunk-AFOD3LYZ.cjs +377 -0
- package/dist/chunk-AH7HOAQ3.cjs +151 -0
- package/dist/chunk-AMDMVWMI.cjs +39 -0
- package/dist/chunk-AORPIPNB.cjs +552 -0
- package/dist/chunk-ARJWXNQL.cjs +256 -0
- package/dist/chunk-AYJR42WX.cjs +711 -0
- package/dist/chunk-BBVSJVBZ.cjs +600 -0
- package/dist/chunk-BIDYX3SL.cjs +91 -0
- package/dist/chunk-BYODCJD6.cjs +663 -0
- package/dist/chunk-C3VRMB6H.cjs +85 -0
- package/dist/chunk-C5GUTBZK.cjs +173 -0
- package/dist/chunk-CIAGU2X4.cjs +337 -0
- package/dist/chunk-CMGMGHUZ.cjs +27 -0
- package/dist/chunk-CXP5U3RW.cjs +54 -0
- package/dist/chunk-D2ULAULS.cjs +166 -0
- package/dist/chunk-D7JTOLFK.cjs +285 -0
- package/dist/chunk-DVM4FKZL.cjs +169 -0
- package/dist/chunk-DYEJQTDN.cjs +49 -0
- package/dist/chunk-E2ROOWQC.cjs +2225 -0
- package/dist/chunk-E3UK5IIB.cjs +593 -0
- package/dist/chunk-EM6SBQKM.cjs +470 -0
- package/dist/chunk-FJSWYIR7.cjs +482 -0
- package/dist/chunk-FK6GO24V.cjs +54 -0
- package/dist/{chunk-MVIWBEJF.mjs → chunk-FVZGEVTO.mjs} +7 -7
- package/dist/chunk-FXUUWYAX.cjs +654 -0
- package/dist/chunk-G3HRIVEY.cjs +395 -0
- package/dist/chunk-G643DQCH.cjs +13 -0
- package/dist/chunk-G7HXGLEC.cjs +175 -0
- package/dist/chunk-GDSHDTJ4.cjs +152 -0
- package/dist/chunk-GPVTX3HT.cjs +1415 -0
- package/dist/chunk-H6G5INWM.cjs +1094 -0
- package/dist/{chunk-DHDVMXYK.mjs → chunk-HALDNTIV.mjs} +30 -4
- package/dist/chunk-HBTUGXHS.cjs +180 -0
- package/dist/chunk-HREOKQWT.cjs +45 -0
- package/dist/{chunk-5QOEPUYE.mjs → chunk-HSDL2AUR.mjs} +1 -1
- package/dist/chunk-I4J452B7.cjs +435 -0
- package/dist/chunk-I57LW5VZ.cjs +94 -0
- package/dist/chunk-I5YBCWQ6.cjs +40 -0
- package/dist/chunk-I7PUUDGY.cjs +389 -0
- package/dist/chunk-IAMRBF3Z.cjs +86 -0
- package/dist/chunk-IQXFRNY2.cjs +169 -0
- package/dist/chunk-ISTFC3MZ.cjs +1357 -0
- package/dist/chunk-IXTFU4PL.cjs +2355 -0
- package/dist/chunk-J3LOGE4T.cjs +42 -0
- package/dist/chunk-J7FSKED3.cjs +93 -0
- package/dist/chunk-JDNHKPTD.cjs +22 -0
- package/dist/chunk-JSROZYYO.cjs +164 -0
- package/dist/chunk-K6FNHVDR.cjs +696 -0
- package/dist/chunk-KGZIORNL.cjs +43 -0
- package/dist/chunk-KR6CKSXT.cjs +15 -0
- package/dist/chunk-KROWKCUH.cjs +185 -0
- package/dist/chunk-KVFPGF2M.cjs +46 -0
- package/dist/{chunk-TNBAYAWO.mjs → chunk-L4DVIHOC.mjs} +1 -1
- package/dist/chunk-LCCBO7PJ.cjs +46 -0
- package/dist/chunk-LIUGYUX3.cjs +22 -0
- package/dist/chunk-LTNGXMQ6.cjs +55 -0
- package/dist/chunk-M2L4MYDQ.cjs +14 -0
- package/dist/chunk-MCJLA63J.cjs +1 -0
- package/dist/chunk-MKB2EGIR.cjs +148 -0
- package/dist/chunk-MQ3H6LT5.cjs +202 -0
- package/dist/chunk-MT763TDW.cjs +43 -0
- package/dist/{chunk-XWAYMDLB.mjs → chunk-MVUREHPN.mjs} +1 -1
- package/dist/chunk-MWSK6C4J.cjs +18 -0
- package/dist/chunk-MWWVKDW3.cjs +169 -0
- package/dist/{chunk-6VQIKZZO.mjs → chunk-N255VYFP.mjs} +1 -1
- package/dist/chunk-NBAHDVOJ.cjs +2040 -0
- package/dist/chunk-NO3WWW3N.cjs +192 -0
- package/dist/chunk-NSFC3LHB.cjs +10244 -0
- package/dist/chunk-NZKJGRB3.cjs +230 -0
- package/dist/chunk-OAVTUMJP.cjs +1496 -0
- package/dist/{chunk-SXHV42UQ.mjs → chunk-OFEY6KHO.mjs} +88 -13
- package/dist/chunk-OHY2ZWUG.cjs +25 -0
- package/dist/chunk-OI6CMLWX.cjs +47 -0
- package/dist/chunk-OWOUTKIJ.cjs +558 -0
- package/dist/chunk-OX6O6WVA.cjs +74 -0
- package/dist/chunk-OXSIH4D6.cjs +476 -0
- package/dist/chunk-OYDRPBBV.cjs +453 -0
- package/dist/chunk-OYEUREB6.cjs +35 -0
- package/dist/chunk-PCOTGFSM.cjs +139 -0
- package/dist/{chunk-76DG3LF3.mjs → chunk-PGQBL5DN.mjs} +1 -1
- package/dist/chunk-PZYCPSCC.cjs +35 -0
- package/dist/chunk-QBK2AA4U.cjs +445 -0
- package/dist/{chunk-UTBVHYS3.mjs → chunk-QBPKKQTD.mjs} +2 -2
- package/dist/chunk-QBPXNZGV.cjs +487 -0
- package/dist/chunk-QNPEUFHQ.cjs +27 -0
- package/dist/chunk-QZRVZSPN.cjs +236 -0
- package/dist/chunk-R5A5KNVX.cjs +20 -0
- package/dist/chunk-R5JIFR6B.cjs +42 -0
- package/dist/chunk-R6AIILII.cjs +193 -0
- package/dist/chunk-RFYO7QUD.cjs +9 -0
- package/dist/chunk-RG3ZOTG5.cjs +34 -0
- package/dist/chunk-ROUTX2E5.cjs +390 -0
- package/dist/chunk-RTHIVJ2G.cjs +54 -0
- package/dist/chunk-S27FMYAM.cjs +644 -0
- package/dist/chunk-S3A45T7F.cjs +166 -0
- package/dist/chunk-S3JO3N4H.cjs +17 -0
- package/dist/chunk-SK35NQKK.cjs +27 -0
- package/dist/chunk-SU7MH53P.cjs +180 -0
- package/dist/chunk-SVRTJOUF.cjs +113 -0
- package/dist/chunk-SWN467MP.cjs +18 -0
- package/dist/chunk-SYQ3MOWW.cjs +73 -0
- package/dist/chunk-T5CERMEH.cjs +417 -0
- package/dist/chunk-TFAXUHWX.cjs +206 -0
- package/dist/chunk-TIWHTW3Q.cjs +24 -0
- package/dist/chunk-TKJZFIML.cjs +20 -0
- package/dist/chunk-TKNSDBBN.cjs +193 -0
- package/dist/chunk-U4KT7QP3.cjs +23 -0
- package/dist/chunk-U5BMPGS3.cjs +862 -0
- package/dist/chunk-UJ2C4ICS.cjs +277 -0
- package/dist/chunk-UQZ4AYTH.cjs +168 -0
- package/dist/chunk-US2QVW3E.cjs +36 -0
- package/dist/{chunk-QGVJVSNX.mjs → chunk-V4AICMQA.mjs} +2 -2
- package/dist/chunk-VB6UCX3V.cjs +421 -0
- package/dist/chunk-VEKFLAQM.cjs +300 -0
- package/dist/chunk-VQDBNVOO.cjs +14 -0
- package/dist/chunk-W4E7WMXE.cjs +71 -0
- package/dist/chunk-WJ3HK3LJ.cjs +1102 -0
- package/dist/chunk-WMAPPDMM.cjs +28 -0
- package/dist/chunk-WMOGFOUJ.cjs +223 -0
- package/dist/chunk-WPYFSQKK.cjs +37 -0
- package/dist/{chunk-56DAX2BE.mjs → chunk-WZXN4R5Y.mjs} +24 -13
- package/dist/chunk-XDGMADQM.cjs +14225 -0
- package/dist/chunk-XGC343EY.cjs +443 -0
- package/dist/chunk-XSKZORAS.cjs +727 -0
- package/dist/chunk-XWAWFQFS.cjs +82 -0
- package/dist/chunk-Y4YMF2NQ.cjs +460 -0
- package/dist/chunk-Y4YWHNKU.cjs +250 -0
- package/dist/chunk-Y53ZSFN6.cjs +504 -0
- package/dist/chunk-YA6LLTIJ.cjs +411 -0
- package/dist/chunk-YFPGHF5F.cjs +202 -0
- package/dist/chunk-YJRZR7VU.cjs +28 -0
- package/dist/chunk-YTAABQEV.cjs +1 -0
- package/dist/chunk-YX3DBN4M.cjs +18 -0
- package/dist/chunk-YZTASLPQ.cjs +64 -0
- package/dist/chunk-Z5HIWVDP.cjs +2173 -0
- package/dist/chunk-ZEG3OPIB.cjs +93 -0
- package/dist/chunk-ZMN3H73H.cjs +155 -0
- package/dist/client/lifecycle.cjs +6 -35
- package/dist/client-plugins.cjs +7 -448
- package/dist/client.cjs +171 -9808
- package/dist/config.cjs +8 -36
- package/dist/cron.cjs +24 -491
- package/dist/deferred.cjs +26 -475
- package/dist/deployment.cjs +39 -210
- package/dist/devtools-5KGPDVKL.cjs +388 -0
- package/dist/{devtools-UFVTMQX5.mjs → devtools-FY5R7TQ4.mjs} +3 -3
- package/dist/devtools-client-4WAPJY5L.cjs +254 -0
- package/dist/devtools-ui-5GBDIGMK.cjs +1296 -0
- package/dist/docs.cjs +46 -5657
- package/dist/docs.mjs +5 -5
- package/dist/env-types.cjs +5 -226
- package/dist/env.cjs +21 -338
- package/dist/environment/vite.cjs +8 -372
- package/dist/environment.cjs +12 -94
- package/dist/font.cjs +13 -63
- package/dist/headers.cjs +7 -123
- package/dist/i18n/client.cjs +55 -294
- package/dist/i18n/index.cjs +22 -209
- package/dist/i18n/server.cjs +22 -745
- package/dist/image/server.cjs +13 -729
- package/dist/image/sharp.cjs +33 -171
- package/dist/image.cjs +41 -85
- package/dist/index.cjs +1151 -68080
- package/dist/index.mjs +14 -14
- package/dist/instrumentation.cjs +12 -138
- package/dist/integration-orm-55F7CII5.cjs +13 -0
- package/dist/integrations.cjs +55 -4090
- package/dist/internal/app-markdown-runtime.cjs +27 -224
- package/dist/internal/app-markdown-runtime.mjs +2 -2
- package/dist/internal/build-runtime.cjs +120 -52259
- package/dist/internal/build-runtime.mjs +13 -13
- package/dist/internal/cli-runtime.cjs +67 -13811
- package/dist/internal/cli-runtime.mjs +7 -7
- package/dist/internal/client-error-overlay.cjs +80 -733
- package/dist/internal/client-error-overlay.mjs +1 -1
- package/dist/internal/client-runtime.cjs +81 -913
- package/dist/internal/compression-runtime.cjs +8 -214
- package/dist/internal/config-runtime.cjs +42 -6547
- package/dist/internal/config-runtime.mjs +3 -3
- package/dist/internal/docs-precompiled-runtime.cjs +26 -46
- package/dist/internal/infra-analytics-runtime.cjs +10 -536
- package/dist/internal/isolated-boundary.cjs +14 -414
- package/dist/internal/metadata-image-runtime.cjs +7 -285
- package/dist/internal/product-telemetry-runtime.cjs +42 -97
- package/dist/internal/product-telemetry-runtime.mjs +1 -1
- package/dist/internal/production-node-env.cjs +6 -63
- package/dist/internal/production-runtime.cjs +418 -7133
- package/dist/internal/production-runtime.mjs +3 -3
- package/dist/internal/request-cookies.cjs +6 -54
- package/dist/json-ld.cjs +24 -50
- package/dist/layers-E4WPJNY5.cjs +17 -0
- package/dist/manager-G4B2IPYE.cjs +14 -0
- package/dist/markdown.cjs +21 -547
- package/dist/markdown.mjs +1 -1
- package/dist/middleware.cjs +36 -2995
- package/dist/navigation.cjs +22 -2588
- package/dist/nitro-4I2MYLY2.cjs +652 -0
- package/dist/observability.cjs +22 -614
- package/dist/og.cjs +5 -28
- package/dist/plugin.cjs +106 -37442
- package/dist/plugin.mjs +9 -9
- package/dist/query/client.cjs +113 -449
- package/dist/query/index.cjs +26 -288
- package/dist/query/parsers.cjs +23 -247
- package/dist/query/server.cjs +36 -298
- package/dist/renderer/react/client.cjs +9 -43
- package/dist/renderer/react/server.cjs +40 -103
- package/dist/renderer/react/vite.cjs +7 -29
- package/dist/renderer-client.cjs +126 -4295
- package/dist/renderer.cjs +31 -249
- package/dist/request.cjs +5 -68
- package/dist/router.cjs +11 -474
- package/dist/routes.cjs +42 -2461
- package/dist/{schema-dev-notice-2IE2F2XI.mjs → schema-dev-notice-O67CPXJ6.mjs} +1 -1
- package/dist/schema-dev-notice-Y7MQEFGN.cjs +56 -0
- package/dist/schema.cjs +6 -33
- package/dist/search-client-G3RICOFU.cjs +13 -0
- package/dist/server-action-security.cjs +25 -541
- package/dist/server-fn-client.cjs +6 -337
- package/dist/server-fn.cjs +32 -1841
- package/dist/server-plugins.cjs +15 -884
- package/dist/server-query-client.cjs +15 -1883
- package/dist/server-query.cjs +16 -1838
- package/dist/server.cjs +296 -44681
- package/dist/server.mjs +11 -11
- package/dist/storage.cjs +57 -576
- package/dist/testing.cjs +89 -3186
- package/dist/theme/client.cjs +13 -108
- package/dist/theme/index.cjs +6 -68
- package/dist/theme/runtime.cjs +13 -78
- package/dist/theme/server.cjs +10 -179
- package/dist/version.cjs +4 -32
- package/dist/version.mjs +1 -1
- package/dist/vite.cjs +119 -37773
- package/dist/vite.mjs +9 -9
- package/dist/workflows.cjs +19 -1040
- package/package.json +1 -1
|
@@ -0,0 +1,254 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
var _chunkYJRZR7VUcjs = require('./chunk-YJRZR7VU.cjs');
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
var _chunkS3JO3N4Hcjs = require('./chunk-S3JO3N4H.cjs');
|
|
8
|
+
|
|
9
|
+
// src/devtools-client.ts
|
|
10
|
+
function parseShortcut(shortcut) {
|
|
11
|
+
const tokens = shortcut.toLowerCase().split("+").map((token) => token.trim()).filter(Boolean);
|
|
12
|
+
const key = tokens.find(
|
|
13
|
+
(token) => !["alt", "ctrl", "control", "meta", "cmd", "command", "mod", "shift"].includes(token)
|
|
14
|
+
);
|
|
15
|
+
if (!key) {
|
|
16
|
+
return null;
|
|
17
|
+
}
|
|
18
|
+
return {
|
|
19
|
+
key,
|
|
20
|
+
alt: tokens.includes("alt"),
|
|
21
|
+
ctrl: tokens.includes("ctrl") || tokens.includes("control"),
|
|
22
|
+
meta: tokens.includes("meta") || tokens.includes("cmd") || tokens.includes("command"),
|
|
23
|
+
mod: tokens.includes("mod"),
|
|
24
|
+
shift: tokens.includes("shift")
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
_chunkS3JO3N4Hcjs.__name.call(void 0, parseShortcut, "parseShortcut");
|
|
28
|
+
function generateFarmDevtoolsClientRuntime(config) {
|
|
29
|
+
if (!config.enabled) {
|
|
30
|
+
return "";
|
|
31
|
+
}
|
|
32
|
+
const shortcut = config.shortcut ? parseShortcut(config.shortcut) : null;
|
|
33
|
+
const overlayStyles = `
|
|
34
|
+
#__farm_devtools_overlay__ {
|
|
35
|
+
position: fixed;
|
|
36
|
+
inset: 0;
|
|
37
|
+
z-index: 2147483646;
|
|
38
|
+
display: grid;
|
|
39
|
+
place-items: center;
|
|
40
|
+
box-sizing: border-box;
|
|
41
|
+
padding: 20px;
|
|
42
|
+
background: rgb(0 0 0 / 0);
|
|
43
|
+
backdrop-filter: blur(6px);
|
|
44
|
+
-webkit-backdrop-filter: blur(6px);
|
|
45
|
+
overscroll-behavior: none;
|
|
46
|
+
isolation: isolate;
|
|
47
|
+
opacity: 0;
|
|
48
|
+
pointer-events: none;
|
|
49
|
+
transition: opacity 150ms ease-out;
|
|
50
|
+
}
|
|
51
|
+
#__farm_devtools_overlay__[data-open="true"] {
|
|
52
|
+
background: rgb(0 0 0 / 0.32);
|
|
53
|
+
opacity: 1;
|
|
54
|
+
pointer-events: auto;
|
|
55
|
+
}
|
|
56
|
+
#__farm_devtools_overlay__ > iframe {
|
|
57
|
+
display: block;
|
|
58
|
+
width: min(1100px, calc(100vw - 48px));
|
|
59
|
+
height: min(720px, calc(100dvh - 48px));
|
|
60
|
+
border: 0;
|
|
61
|
+
border-radius: 12px;
|
|
62
|
+
background: transparent;
|
|
63
|
+
box-shadow: 0 24px 80px rgb(0 0 0 / 0.48), 0 4px 18px rgb(0 0 0 / 0.24);
|
|
64
|
+
transform: scale(0.985) translateY(4px);
|
|
65
|
+
transition: transform 150ms ease-out;
|
|
66
|
+
}
|
|
67
|
+
#__farm_devtools_overlay__[data-open="true"] > iframe {
|
|
68
|
+
transform: scale(1) translateY(0);
|
|
69
|
+
}
|
|
70
|
+
@media (max-width: 700px) {
|
|
71
|
+
#__farm_devtools_overlay__ { padding: 8px; }
|
|
72
|
+
#__farm_devtools_overlay__ > iframe {
|
|
73
|
+
width: calc(100vw - 16px);
|
|
74
|
+
height: calc(100dvh - 16px);
|
|
75
|
+
border-radius: 12px;
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
@media (prefers-reduced-motion: reduce) {
|
|
79
|
+
#__farm_devtools_overlay__, #__farm_devtools_overlay__ > iframe { transition: none; }
|
|
80
|
+
}
|
|
81
|
+
`;
|
|
82
|
+
return `
|
|
83
|
+
(() => {
|
|
84
|
+
const overlayId = "__farm_devtools_overlay__";
|
|
85
|
+
const styleId = "__farm_devtools_overlay_styles__";
|
|
86
|
+
const runtimeKey = "__FARM_DEVTOOLS_RUNTIME__";
|
|
87
|
+
const launchParam = ${JSON.stringify(_chunkYJRZR7VUcjs.FARM_DEVTOOLS_LAUNCH_PARAM)};
|
|
88
|
+
const devtoolsPath = ${JSON.stringify(_chunkYJRZR7VUcjs.FARM_DEVTOOLS_PATH)};
|
|
89
|
+
const validViews = new Set(["overview", "routes", "api", "systems", "runtime", "raw", "inspect", "diagnostics"]);
|
|
90
|
+
const shortcut = ${JSON.stringify(shortcut)};
|
|
91
|
+
const isMac = /Mac|iPhone|iPad|iPod/.test(navigator.platform);
|
|
92
|
+
let returnFocus = null;
|
|
93
|
+
let restorePage = null;
|
|
94
|
+
let closeTimer = null;
|
|
95
|
+
|
|
96
|
+
const lockPage = () => {
|
|
97
|
+
const styles = [];
|
|
98
|
+
for (const element of [document.documentElement, document.body]) {
|
|
99
|
+
for (const [property, value] of [["overflow-x", "hidden"], ["overflow-y", "hidden"], ["overscroll-behavior", "none"]]) {
|
|
100
|
+
const previous = element.style.getPropertyValue(property);
|
|
101
|
+
const priority = element.style.getPropertyPriority(property);
|
|
102
|
+
element.style.setProperty(property, value, "important");
|
|
103
|
+
styles.push({ element, property, value, previous, priority });
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
return () => {
|
|
107
|
+
for (const { element, property, value, previous, priority } of styles) {
|
|
108
|
+
// Do not overwrite a newer style set by the application while the panel was open.
|
|
109
|
+
if (element.style.getPropertyValue(property) !== value || element.style.getPropertyPriority(property) !== "important") continue;
|
|
110
|
+
if (previous) element.style.setProperty(property, previous, priority);
|
|
111
|
+
else element.style.removeProperty(property);
|
|
112
|
+
}
|
|
113
|
+
};
|
|
114
|
+
};
|
|
115
|
+
|
|
116
|
+
const matchesShortcut = (event) => {
|
|
117
|
+
if (!shortcut || event.repeat) return false;
|
|
118
|
+
const expectedCtrl = shortcut.ctrl || (shortcut.mod && !isMac);
|
|
119
|
+
const expectedMeta = shortcut.meta || (shortcut.mod && isMac);
|
|
120
|
+
if (
|
|
121
|
+
Boolean(event.altKey) !== shortcut.alt ||
|
|
122
|
+
Boolean(event.ctrlKey) !== expectedCtrl ||
|
|
123
|
+
Boolean(event.metaKey) !== expectedMeta ||
|
|
124
|
+
Boolean(event.shiftKey) !== shortcut.shift
|
|
125
|
+
) return false;
|
|
126
|
+
|
|
127
|
+
if (shortcut.key === "." || shortcut.key === "period") return event.code === "Period";
|
|
128
|
+
if (shortcut.key === "," || shortcut.key === "comma") return event.code === "Comma";
|
|
129
|
+
if (shortcut.key === "/" || shortcut.key === "slash") return event.code === "Slash";
|
|
130
|
+
return String(event.key || "").toLowerCase() === shortcut.key;
|
|
131
|
+
};
|
|
132
|
+
|
|
133
|
+
const ensureStyles = () => {
|
|
134
|
+
if (document.getElementById(styleId)) return;
|
|
135
|
+
const style = document.createElement("style");
|
|
136
|
+
style.id = styleId;
|
|
137
|
+
style.textContent = ${JSON.stringify(overlayStyles)};
|
|
138
|
+
document.head.appendChild(style);
|
|
139
|
+
};
|
|
140
|
+
|
|
141
|
+
const finishClose = () => {
|
|
142
|
+
if (closeTimer !== null) window.clearTimeout(closeTimer);
|
|
143
|
+
closeTimer = null;
|
|
144
|
+
const overlay = document.getElementById(overlayId);
|
|
145
|
+
overlay?.remove();
|
|
146
|
+
restorePage?.();
|
|
147
|
+
restorePage = null;
|
|
148
|
+
const focusTarget = returnFocus;
|
|
149
|
+
returnFocus = null;
|
|
150
|
+
focusTarget?.focus?.({ preventScroll: true });
|
|
151
|
+
};
|
|
152
|
+
|
|
153
|
+
const close = () => {
|
|
154
|
+
const overlay = document.getElementById(overlayId);
|
|
155
|
+
if (!overlay || closeTimer !== null) return;
|
|
156
|
+
overlay.dataset.open = "false";
|
|
157
|
+
closeTimer = window.setTimeout(finishClose, 160);
|
|
158
|
+
};
|
|
159
|
+
|
|
160
|
+
const open = (view = "overview") => {
|
|
161
|
+
if (closeTimer !== null) finishClose();
|
|
162
|
+
if (document.getElementById(overlayId)) return;
|
|
163
|
+
ensureStyles();
|
|
164
|
+
returnFocus = document.activeElement;
|
|
165
|
+
restorePage = lockPage();
|
|
166
|
+
const overlay = document.createElement("div");
|
|
167
|
+
overlay.id = overlayId;
|
|
168
|
+
overlay.setAttribute("role", "dialog");
|
|
169
|
+
overlay.setAttribute("aria-modal", "true");
|
|
170
|
+
overlay.setAttribute("aria-label", "Farm.js DevTools overlay");
|
|
171
|
+
const frame = document.createElement("iframe");
|
|
172
|
+
const resolvedView = validViews.has(view) ? view : "overview";
|
|
173
|
+
frame.src = devtoolsPath + "?embedded=1" + (resolvedView === "overview" ? "" : "#" + resolvedView);
|
|
174
|
+
frame.title = "Farm.js DevTools";
|
|
175
|
+
frame.addEventListener("load", () => frame.contentWindow?.focus(), { once: true });
|
|
176
|
+
overlay.appendChild(frame);
|
|
177
|
+
overlay.addEventListener("pointerdown", (event) => {
|
|
178
|
+
if (event.target === overlay) close();
|
|
179
|
+
});
|
|
180
|
+
overlay.addEventListener("wheel", (event) => event.preventDefault(), { passive: false });
|
|
181
|
+
overlay.addEventListener("touchmove", (event) => event.preventDefault(), { passive: false });
|
|
182
|
+
document.body.appendChild(overlay);
|
|
183
|
+
requestAnimationFrame(() => {
|
|
184
|
+
if (overlay.isConnected && closeTimer === null) overlay.dataset.open = "true";
|
|
185
|
+
});
|
|
186
|
+
};
|
|
187
|
+
|
|
188
|
+
const toggle = () => {
|
|
189
|
+
if (document.getElementById(overlayId)) close();
|
|
190
|
+
else open();
|
|
191
|
+
};
|
|
192
|
+
|
|
193
|
+
const onKeydown = (event) => {
|
|
194
|
+
if (event.key === "Escape" && document.getElementById(overlayId)) {
|
|
195
|
+
event.preventDefault();
|
|
196
|
+
close();
|
|
197
|
+
return;
|
|
198
|
+
}
|
|
199
|
+
if (!matchesShortcut(event)) return;
|
|
200
|
+
event.preventDefault();
|
|
201
|
+
event.stopPropagation();
|
|
202
|
+
toggle();
|
|
203
|
+
};
|
|
204
|
+
|
|
205
|
+
const onMessage = (event) => {
|
|
206
|
+
if (event.origin !== location.origin) return;
|
|
207
|
+
const frame = document.querySelector("#" + overlayId + " > iframe");
|
|
208
|
+
if (!frame || event.source !== frame.contentWindow) return;
|
|
209
|
+
if (event.data?.type === "farm:devtools:close") close();
|
|
210
|
+
if (event.data?.type === "farm:devtools:keydown" && matchesShortcut(event.data.event || {})) close();
|
|
211
|
+
};
|
|
212
|
+
|
|
213
|
+
window[runtimeKey]?.dispose?.();
|
|
214
|
+
window.addEventListener("keydown", onKeydown, true);
|
|
215
|
+
window.addEventListener("message", onMessage);
|
|
216
|
+
window[runtimeKey] = {
|
|
217
|
+
dispose() {
|
|
218
|
+
finishClose();
|
|
219
|
+
window.removeEventListener("keydown", onKeydown, true);
|
|
220
|
+
window.removeEventListener("message", onMessage);
|
|
221
|
+
},
|
|
222
|
+
};
|
|
223
|
+
window.__FARM_DEVTOOLS__ = { open, close, toggle };
|
|
224
|
+
|
|
225
|
+
const launchUrl = new URL(location.href);
|
|
226
|
+
const launchRequest = launchUrl.searchParams.get(launchParam);
|
|
227
|
+
if (launchRequest !== null) {
|
|
228
|
+
const hashView = launchUrl.hash.slice(1);
|
|
229
|
+
const launchView = validViews.has(launchRequest)
|
|
230
|
+
? launchRequest
|
|
231
|
+
: validViews.has(hashView)
|
|
232
|
+
? hashView
|
|
233
|
+
: "overview";
|
|
234
|
+
launchUrl.searchParams.delete(launchParam);
|
|
235
|
+
if (validViews.has(hashView)) launchUrl.hash = "";
|
|
236
|
+
history.replaceState(
|
|
237
|
+
history.state,
|
|
238
|
+
"",
|
|
239
|
+
launchUrl.pathname + launchUrl.search + launchUrl.hash,
|
|
240
|
+
);
|
|
241
|
+
const launch = () => requestAnimationFrame(() => open(launchView));
|
|
242
|
+
if (document.readyState === "loading") {
|
|
243
|
+
document.addEventListener("DOMContentLoaded", launch, { once: true });
|
|
244
|
+
} else {
|
|
245
|
+
launch();
|
|
246
|
+
}
|
|
247
|
+
}
|
|
248
|
+
})();
|
|
249
|
+
`;
|
|
250
|
+
}
|
|
251
|
+
_chunkS3JO3N4Hcjs.__name.call(void 0, generateFarmDevtoolsClientRuntime, "generateFarmDevtoolsClientRuntime");
|
|
252
|
+
|
|
253
|
+
|
|
254
|
+
exports.generateFarmDevtoolsClientRuntime = generateFarmDevtoolsClientRuntime;
|