@nocobase/app 2.3.0-alpha.1 → 3.0.0-alpha.2
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/__tests__/browserChecker.test.ts +129 -0
- package/__tests__/settingsDevProxy.test.ts +96 -0
- package/__tests__/settingsPluginImports.test.ts +106 -0
- package/client/rsbuild.config.ts +37 -15
- package/client-settings/generatePluginImports.ts +36 -0
- package/client-settings/index.html +11 -0
- package/client-settings/rsbuild.config.ts +270 -0
- package/client-settings/src/.plugins/index.ts +4 -0
- package/client-settings/src/SettingsPresetPlugin.ts +56 -0
- package/client-settings/src/__tests__/runtimePublicPath.test.ts +23 -0
- package/client-settings/src/__tests__/runtimeScope.test.ts +29 -0
- package/client-settings/src/env.d.ts +22 -0
- package/client-settings/src/main.tsx +78 -0
- package/client-settings/src/runtimePublicPath.ts +21 -0
- package/client-settings/src/runtimeScope.ts +49 -0
- package/client-settings/tsconfig.json +19 -0
- package/client-v2/public/browser-checker.js +76 -1
- package/client-v2/rsbuild.config.ts +31 -9
- package/dist/client/assets/{index-800d06ee.js → index-c94119b4.js} +369 -355
- package/dist/client/assets/{vendor-antd-f421fb70.js → vendor-antd-b77deb8f.js} +4 -4
- package/dist/client/index.html +1 -1
- package/dist/client/index.html.tpl +1 -1
- package/dist/client/settings/assets/1052-2ed99808.js +1 -0
- package/dist/client/settings/assets/108-76a3fdea.js +82 -0
- package/dist/client/settings/assets/108-76a3fdea.js.LICENSE.txt +17 -0
- package/dist/client/settings/assets/1101-53bb815a.js +1 -0
- package/dist/client/settings/assets/1179-1ec4826c.js +1 -0
- package/dist/client/settings/assets/1310-c0031389.js +59 -0
- package/dist/client/settings/assets/1329-0e47aabd.js +1 -0
- package/dist/client/settings/assets/1425-69534606.js +42 -0
- package/dist/client/settings/assets/1434-d603f255.js +1 -0
- package/dist/client/settings/assets/1463-11b9abe3.js +1 -0
- package/dist/client/settings/assets/1469-477cfa59.js +1 -0
- package/dist/client/settings/assets/1481-59e4188c.js +1 -0
- package/dist/client/settings/assets/1507-9a211af0.js +7 -0
- package/dist/client/settings/assets/158-5273dfbb.js +23 -0
- package/dist/client/settings/assets/1586-73831f88.js +1 -0
- package/dist/client/settings/assets/1667-88ad86eb.js +1 -0
- package/dist/client/settings/assets/1675-3cbafc50.js +1 -0
- package/dist/client/settings/assets/1676-5db7433e.js +9 -0
- package/dist/client/settings/assets/1725-d9ce2582.js +83 -0
- package/dist/client/settings/assets/1786-e6c321bb.js +16 -0
- package/dist/client/settings/assets/183-963396ee.js +1 -0
- package/dist/client/settings/assets/1846-0deb6fc0.js +1 -0
- package/dist/client/settings/assets/1848-0ef98f01.js +1 -0
- package/dist/client/settings/assets/1863-9160dd98.js +1 -0
- package/dist/client/settings/assets/1887-bf619cb3.js +1 -0
- package/dist/client/settings/assets/192-c347bb96.js +1 -0
- package/dist/client/settings/assets/1951-84be8ebc.js +55 -0
- package/dist/client/settings/assets/1979-a893b852.js +1 -0
- package/dist/client/settings/assets/1986-01c03982.js +1 -0
- package/dist/client/settings/assets/2017-29a9879a.js +26 -0
- package/dist/client/settings/assets/2110-961b6f8e.js +1 -0
- package/dist/client/settings/assets/212-0f8a26a2.js +18 -0
- package/dist/client/settings/assets/2203-9aa79271.js +4 -0
- package/dist/client/settings/assets/2258-f667d700.js +1 -0
- package/dist/client/settings/assets/2270-ff70d8cb.js +1 -0
- package/dist/client/settings/assets/2301-2db05359.js +1 -0
- package/dist/client/settings/assets/2322-b9f077c3.js +1 -0
- package/dist/client/settings/assets/2335-669f21bd.js +22 -0
- package/dist/client/settings/assets/242-c3e15c94.js +1 -0
- package/dist/client/settings/assets/2446-ac5fccd3.js +1 -0
- package/dist/client/settings/assets/2512-5343dabb.js +1185 -0
- package/dist/client/settings/assets/2512-5343dabb.js.LICENSE.txt +9 -0
- package/dist/client/settings/assets/2555-4ca49e21.js +31 -0
- package/dist/client/settings/assets/2565-ad63e92f.js +1 -0
- package/dist/client/settings/assets/2606-c4dcd1e1.js +1 -0
- package/dist/client/settings/assets/2613-98648bd2.js +1 -0
- package/dist/client/settings/assets/2622-3389992f.js +1 -0
- package/dist/client/settings/assets/2702-5ce93acd.js +5 -0
- package/dist/client/settings/assets/2710-e7286996.js +36 -0
- package/dist/client/settings/assets/2726-4d19faa1.js +23 -0
- package/dist/client/settings/assets/2861-48106fd8.js +3 -0
- package/dist/client/settings/assets/2898-7656f7f9.js +17 -0
- package/dist/client/settings/assets/2913-6b4e6c17.js +1 -0
- package/dist/client/settings/assets/2958-93de29a6.js +27 -0
- package/dist/client/settings/assets/300-ca09229f.js +1 -0
- package/dist/client/settings/assets/3005-1449fc4e.js +56 -0
- package/dist/client/settings/assets/3018-fc630932.js +3 -0
- package/dist/client/settings/assets/3028-efe6f61f.js +1 -0
- package/dist/client/settings/assets/3039-7f273921.js +1 -0
- package/dist/client/settings/assets/3102-b985963e.js +1 -0
- package/dist/client/settings/assets/3117-cc936eae.js +33 -0
- package/dist/client/settings/assets/32-88d3c82f.js +2 -0
- package/dist/client/settings/assets/3260-3b3c7cd3.js +1 -0
- package/dist/client/settings/assets/3279-8d73fd19.js +1 -0
- package/dist/client/settings/assets/3283-654f42f7.js +1 -0
- package/dist/client/settings/assets/3309-172e3f79.js +1 -0
- package/dist/client/settings/assets/335-da9c4d81.js +1 -0
- package/dist/client/settings/assets/338-2f192edd.js +3 -0
- package/dist/client/settings/assets/3396-4422ee26.js +1 -0
- package/dist/client/settings/assets/3458-2958f051.js +1 -0
- package/dist/client/settings/assets/3475-be655098.js +1 -0
- package/dist/client/settings/assets/3523-5313a211.js +1 -0
- package/dist/client/settings/assets/3526-17f4e8e7.js +1 -0
- package/dist/client/settings/assets/3641-c2439c22.js +1 -0
- package/dist/client/settings/assets/3646-aa6a2478.js +1 -0
- package/dist/client/settings/assets/3660-280439df.js +6 -0
- package/dist/client/settings/assets/3662-8dff1ffe.js +28 -0
- package/dist/client/settings/assets/3690-4a8bdf43.js +12 -0
- package/dist/client/settings/assets/3727-1cfef422.js +44 -0
- package/dist/client/settings/assets/3859-fa4f6d5d.js +1 -0
- package/dist/client/settings/assets/3898-6236af03.js +1 -0
- package/dist/client/settings/assets/3916-3b34f216.js +6 -0
- package/dist/client/settings/assets/3937-af967d62.js +3 -0
- package/dist/client/settings/assets/3977-3feadc2c.js +1 -0
- package/dist/client/settings/assets/3978-29c2602c.js +1 -0
- package/dist/client/settings/assets/3989-c8fcfd6c.js +27 -0
- package/dist/client/settings/assets/406-497829bb.js +1 -0
- package/dist/client/settings/assets/4076-f68c25bd.js +1 -0
- package/dist/client/settings/assets/4096-0050f491.js +1 -0
- package/dist/client/settings/assets/4171-0710965d.js +2 -0
- package/dist/client/settings/assets/4171-0710965d.js.LICENSE.txt +6 -0
- package/dist/client/settings/assets/4195-2a00794d.js +1 -0
- package/dist/client/settings/assets/4222-29a8147d.js +5 -0
- package/dist/client/settings/assets/4223-3821a30e.js +1 -0
- package/dist/client/settings/assets/4313-ab774fd9.js +28 -0
- package/dist/client/settings/assets/4358-0a504478.js +1 -0
- package/dist/client/settings/assets/4419-3ab9c709.js +1 -0
- package/dist/client/settings/assets/4456-49679669.js +1 -0
- package/dist/client/settings/assets/448-57d6a00d.js +1 -0
- package/dist/client/settings/assets/4594-4e72041f.js +1 -0
- package/dist/client/settings/assets/4672-573e9a61.js +1 -0
- package/dist/client/settings/assets/4686-afbf676f.js +1 -0
- package/dist/client/settings/assets/474-ce4285d1.js +1 -0
- package/dist/client/settings/assets/4767-8f9d30dc.js +1 -0
- package/dist/client/settings/assets/4784-c69aaa68.js +1 -0
- package/dist/client/settings/assets/4801-06781ed7.js +1 -0
- package/dist/client/settings/assets/492-937af2ba.js +1 -0
- package/dist/client/settings/assets/4930-41adc6b7.js +1 -0
- package/dist/client/settings/assets/5064-93d8e29e.js +10 -0
- package/dist/client/settings/assets/5087-c505a60e.js +1 -0
- package/dist/client/settings/assets/5108-a028f8af.js +1 -0
- package/dist/client/settings/assets/5122-649463de.js +1 -0
- package/dist/client/settings/assets/5123-0bd0a6f2.js +1 -0
- package/dist/client/settings/assets/5139-3039fde4.js +1 -0
- package/dist/client/settings/assets/5459-c1f208e3.js +1 -0
- package/dist/client/settings/assets/5501-387a31be.js +17 -0
- package/dist/client/settings/assets/5506-a1f27be3.js +1 -0
- package/dist/client/settings/assets/553-1c3126df.js +1 -0
- package/dist/client/settings/assets/557-950114e1.js +1 -0
- package/dist/client/settings/assets/5640-f846c2a0.js +1 -0
- package/dist/client/settings/assets/5642-5c0bab20.js +1 -0
- package/dist/client/settings/assets/5674-e33e384f.js +1 -0
- package/dist/client/settings/assets/5701-8fe417d1.js +1 -0
- package/dist/client/settings/assets/5721-af25e047.js +18 -0
- package/dist/client/settings/assets/5757-81a89522.js +1 -0
- package/dist/client/settings/assets/5759-2b3bdcc6.js +47 -0
- package/dist/client/settings/assets/5761-857b6bbb.js +28 -0
- package/dist/client/settings/assets/5791-7c59ba08.js +1 -0
- package/dist/client/settings/assets/58-77bfd6c9.js +1 -0
- package/dist/client/settings/assets/5815-04fc432a.js +1 -0
- package/dist/client/settings/assets/5819-225de680.js +1 -0
- package/dist/client/settings/assets/5861-ac056534.js +1 -0
- package/dist/client/settings/assets/5870-0c3ecc40.js +1 -0
- package/dist/client/settings/assets/5881-b4c942f1.js +1 -0
- package/dist/client/settings/assets/5905-a5c3fce6.js +1 -0
- package/dist/client/settings/assets/5933-fbe50cd6.js +1 -0
- package/dist/client/settings/assets/6062-0e469079.js +1 -0
- package/dist/client/settings/assets/6093-641fcafc.js +1 -0
- package/dist/client/settings/assets/6157-8e763248.js +1 -0
- package/dist/client/settings/assets/6241-55a319df.js +1 -0
- package/dist/client/settings/assets/6269-a8a1ea3f.js +1 -0
- package/dist/client/settings/assets/630-110e12f4.js +1 -0
- package/dist/client/settings/assets/6345-187e76cf.js +1 -0
- package/dist/client/settings/assets/6346-94bdf034.js +1 -0
- package/dist/client/settings/assets/6373-9d047c6b.js +13 -0
- package/dist/client/settings/assets/6437-3865fd7e.js +12 -0
- package/dist/client/settings/assets/6581-51c928bf.js +21 -0
- package/dist/client/settings/assets/6660-54e08a8d.js +1 -0
- package/dist/client/settings/assets/6738-c6598897.js +20 -0
- package/dist/client/settings/assets/6870-6a6dba63.js +1 -0
- package/dist/client/settings/assets/6914-00d913e7.js +1 -0
- package/dist/client/settings/assets/70-f4dc53ad.js +1 -0
- package/dist/client/settings/assets/700-e75b7faa.js +15 -0
- package/dist/client/settings/assets/7021-4975d54d.js +45 -0
- package/dist/client/settings/assets/7095-4f425b85.js +1 -0
- package/dist/client/settings/assets/7141-b8e2a787.js +1 -0
- package/dist/client/settings/assets/7201-5b49ce84.js +14 -0
- package/dist/client/settings/assets/7211-b8c71ed2.js +9 -0
- package/dist/client/settings/assets/7245-1058e96e.js +474 -0
- package/dist/client/settings/assets/7245-1058e96e.js.LICENSE.txt +2567 -0
- package/dist/client/settings/assets/7245-db3cd5c2.css +1 -0
- package/dist/client/settings/assets/7318-6e1c7877.js +1 -0
- package/dist/client/settings/assets/7386-2f5752d4.js +1 -0
- package/dist/client/settings/assets/7413-241d463c.js +1 -0
- package/dist/client/settings/assets/7492-5c593f52.js +5 -0
- package/dist/client/settings/assets/7507-a015d8cf.js +1 -0
- package/dist/client/settings/assets/754-41b763b9.js +17 -0
- package/dist/client/settings/assets/7555-f42cdb72.js +1 -0
- package/dist/client/settings/assets/7608-2b3f2db0.js +1 -0
- package/dist/client/settings/assets/7669-8bd94b73.js +1 -0
- package/dist/client/settings/assets/7761-637067c6.js +123 -0
- package/dist/client/settings/assets/7876-673cbc3c.js +6 -0
- package/dist/client/settings/assets/791-9cfa98c8.js +1 -0
- package/dist/client/settings/assets/7946-e07199df.js +13 -0
- package/dist/client/settings/assets/7959-f7ef21c6.js +40 -0
- package/dist/client/settings/assets/8053-fa93540e.js +1 -0
- package/dist/client/settings/assets/8087-90829087.js +1 -0
- package/dist/client/settings/assets/8138-e90c290e.js +24 -0
- package/dist/client/settings/assets/8217-de1369d7.js +1 -0
- package/dist/client/settings/assets/8242-3f880357.js +108 -0
- package/dist/client/settings/assets/8252-1153ffdd.js +1 -0
- package/dist/client/settings/assets/8262-7a324b59.js +9 -0
- package/dist/client/settings/assets/8269-52ea88cd.js +1 -0
- package/dist/client/settings/assets/8276-b3dfc452.js +1 -0
- package/dist/client/settings/assets/828-55028e33.js +1 -0
- package/dist/client/settings/assets/8294-9c81768d.js +1 -0
- package/dist/client/settings/assets/8295-447d3bb3.js +1 -0
- package/dist/client/settings/assets/8349-82eb3ecd.js +1 -0
- package/dist/client/settings/assets/8434-9140d106.js +25 -0
- package/dist/client/settings/assets/8438-d2ff6bc1.js +37 -0
- package/dist/client/settings/assets/8473-b1118703.js +1 -0
- package/dist/client/settings/assets/8480-c16f7ee4.js +1 -0
- package/dist/client/settings/assets/8562-ffa35312.js +17 -0
- package/dist/client/settings/assets/8624-847569d9.js +1 -0
- package/dist/client/settings/assets/8631-b2fd9aac.js +1 -0
- package/dist/client/settings/assets/8635-27980c94.js +1 -0
- package/dist/client/settings/assets/8676-987fe455.js +1 -0
- package/dist/client/settings/assets/8729-9adea5fe.js +1 -0
- package/dist/client/settings/assets/8759-4d7f7a69.js +1 -0
- package/dist/client/settings/assets/896-d07bab4d.js +1 -0
- package/dist/client/settings/assets/9021-ec1b8442.js +1 -0
- package/dist/client/settings/assets/9065-5df7b63d.js +1 -0
- package/dist/client/settings/assets/9170-efbfcc1e.js +1 -0
- package/dist/client/settings/assets/9204-6cb7a01b.js +1 -0
- package/dist/client/settings/assets/9217-f27c2dcb.js +1 -0
- package/dist/client/settings/assets/9248-ff8e06d0.js +1 -0
- package/dist/client/settings/assets/9274-83aa1da2.js +1 -0
- package/dist/client/settings/assets/929-a37c623d.js +1 -0
- package/dist/client/settings/assets/93-dc732e8a.js +1 -0
- package/dist/client/settings/assets/9518-4c8b8805.js +1 -0
- package/dist/client/settings/assets/9550-2daf603c.js +1 -0
- package/dist/client/settings/assets/9565-2158d75f.js +1 -0
- package/dist/client/settings/assets/9578-f64d8970.js +1 -0
- package/dist/client/settings/assets/9584-969e1d2b.js +1 -0
- package/dist/client/settings/assets/9592-523a3fa6.js +1 -0
- package/dist/client/settings/assets/9827-d1f02095.js +9 -0
- package/dist/client/settings/assets/9836-fcbb81f6.js +22 -0
- package/dist/client/settings/assets/9847-bc9f1ba4.js +1 -0
- package/dist/client/settings/assets/9953-407a1cde.js +1 -0
- package/dist/client/settings/assets/index-3da8ef5b.js +1946 -0
- package/dist/client/settings/assets/index-3da8ef5b.js.LICENSE.txt +1 -0
- package/dist/client/settings/assets/runtime-6b2f3ebe.js +1 -0
- package/dist/client/settings/browser-checker.js +282 -0
- package/dist/client/settings/favicon/favicon.ico +0 -0
- package/dist/client/settings/file-placeholder/ai-200-200.png +0 -0
- package/dist/client/settings/file-placeholder/audio-200-200.png +0 -0
- package/dist/client/settings/file-placeholder/docx-200-200.png +0 -0
- package/dist/client/settings/file-placeholder/eps-200-200.png +0 -0
- package/dist/client/settings/file-placeholder/gif-200-200.png +0 -0
- package/dist/client/settings/file-placeholder/jpeg-200-200.png +0 -0
- package/dist/client/settings/file-placeholder/pdf-200-200.png +0 -0
- package/dist/client/settings/file-placeholder/png-200-200.png +0 -0
- package/dist/client/settings/file-placeholder/pptx-200-200.png +0 -0
- package/dist/client/settings/file-placeholder/psd-200-200.png +0 -0
- package/dist/client/settings/file-placeholder/svg-200-200.png +0 -0
- package/dist/client/settings/file-placeholder/unknown-200-200.png +0 -0
- package/dist/client/settings/file-placeholder/video-200-200.png +0 -0
- package/dist/client/settings/file-placeholder/xlsx-200-200.png +0 -0
- package/dist/client/settings/file-placeholder/zip-200-200.png +0 -0
- package/dist/client/settings/global.css +63 -0
- package/dist/client/settings/index.html +22 -0
- package/dist/client/settings/nocobase.png +0 -0
- package/dist/client/settings/robots.txt +2 -0
- package/dist/client/v/assets/{index-2f7426fe.js → index-41529ca7.js} +167 -153
- package/dist/client/v/assets/index-41529ca7.js.LICENSE.txt +1 -0
- package/dist/client/v/browser-checker.js +76 -1
- package/dist/client/v/index.html +1 -1
- package/package.json +7 -7
- package/settingsDevProxy.ts +52 -0
- /package/dist/client/assets/{index-800d06ee.js.LICENSE.txt → index-c94119b4.js.LICENSE.txt} +0 -0
- /package/dist/client/{v/assets/index-2f7426fe.js.LICENSE.txt → settings/assets/32-88d3c82f.js.LICENSE.txt} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
/* istanbul ignore file -- @preserve */
|
|
@@ -17,11 +17,86 @@ function normalizePublicPath(value) {
|
|
|
17
17
|
return ensureTrailingSlash(normalized);
|
|
18
18
|
}
|
|
19
19
|
|
|
20
|
+
function normalizePathname(value) {
|
|
21
|
+
const normalized = ensureLeadingSlash(String(value || '/').trim() || '/').replace(/\/{2,}/g, '/');
|
|
22
|
+
return normalized === '/' ? normalized : normalized.replace(/\/+$/g, '');
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
function resolveSettingsRootPath(publicPath, modernPrefix, pathname) {
|
|
26
|
+
const normalizedPublicPath = normalizePublicPath(publicPath);
|
|
27
|
+
const normalizedModernPrefix =
|
|
28
|
+
String(modernPrefix || 'v')
|
|
29
|
+
.trim()
|
|
30
|
+
.replace(/^\/+|\/+$/g, '') || 'v';
|
|
31
|
+
const modernPublicPathSuffix = `/${normalizedModernPrefix}/`;
|
|
32
|
+
if (!normalizedPublicPath.endsWith(modernPublicPathSuffix)) {
|
|
33
|
+
return null;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
const modernRootPath = normalizePathname(normalizedPublicPath);
|
|
37
|
+
const normalizedPathname = normalizePathname(pathname);
|
|
38
|
+
let relativePath = '';
|
|
39
|
+
if (normalizedPathname !== modernRootPath) {
|
|
40
|
+
if (!normalizedPathname.startsWith(`${modernRootPath}/`)) {
|
|
41
|
+
return null;
|
|
42
|
+
}
|
|
43
|
+
relativePath = normalizedPathname.slice(modernRootPath.length + 1);
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
let appScope = '';
|
|
47
|
+
if (relativePath) {
|
|
48
|
+
const match = /^(apps|_app)\/([^/]+)$/.exec(relativePath);
|
|
49
|
+
if (!match) {
|
|
50
|
+
return null;
|
|
51
|
+
}
|
|
52
|
+
appScope = `/${match[1]}/${match[2]}`;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
const rootPublicPath = normalizedPublicPath.slice(0, -(normalizedModernPrefix.length + 1));
|
|
56
|
+
const rootPrefix = rootPublicPath === '/' ? '' : rootPublicPath.replace(/\/+$/g, '');
|
|
57
|
+
return `${rootPrefix}/settings${appScope}`;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
function isSettingsBrowserCheckerScript(script) {
|
|
61
|
+
const source = String((script && script.src) || '').split(/[?#]/)[0];
|
|
62
|
+
return source.endsWith('/settings/browser-checker.js');
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
function resolveScopedSettingsRootPath(publicPath, pathname) {
|
|
66
|
+
const normalizedPublicPath = normalizePublicPath(publicPath);
|
|
67
|
+
const rootPrefix = normalizedPublicPath === '/' ? '' : normalizedPublicPath.replace(/\/+$/g, '');
|
|
68
|
+
const settingsRootPath = `${rootPrefix}/settings`;
|
|
69
|
+
if (!pathname.startsWith(`${settingsRootPath}/`)) {
|
|
70
|
+
return null;
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
const relativePath = pathname.slice(settingsRootPath.length + 1);
|
|
74
|
+
if (!/^(apps|_app)\/[^/]+$/.test(relativePath)) {
|
|
75
|
+
return null;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
return `${pathname}/`;
|
|
79
|
+
}
|
|
80
|
+
|
|
20
81
|
const basename = normalizePublicPath(window['__nocobase_public_path__'] || '/');
|
|
21
82
|
const currentPath = ensureLeadingSlash(String(window.location.pathname || '/').trim() || '/').replace(/\/{2,}/g, '/');
|
|
22
83
|
const basenameWithoutTrailingSlash = basename === '/' ? '/' : basename.replace(/\/+$/, '');
|
|
84
|
+
const appClientEntryMode = window['__nocobase_app_client_entry_mode__'];
|
|
85
|
+
const settingsRootPath =
|
|
86
|
+
appClientEntryMode === 'modern-only'
|
|
87
|
+
? resolveSettingsRootPath(basename, window['__nocobase_modern_client_prefix__'], currentPath)
|
|
88
|
+
: null;
|
|
89
|
+
const scopedSettingsRootPath = isSettingsBrowserCheckerScript(document.currentScript)
|
|
90
|
+
? resolveScopedSettingsRootPath(basename, currentPath)
|
|
91
|
+
: null;
|
|
23
92
|
|
|
24
|
-
if (
|
|
93
|
+
if (settingsRootPath) {
|
|
94
|
+
const newUrl = `${window.location.origin}${settingsRootPath}${window.location.search}${window.location.hash}`;
|
|
95
|
+
window.location.replace(newUrl);
|
|
96
|
+
} else if (scopedSettingsRootPath) {
|
|
97
|
+
const newUrl = `${window.location.origin}${scopedSettingsRootPath}${window.location.search}${window.location.hash}`;
|
|
98
|
+
window.location.replace(newUrl);
|
|
99
|
+
} else if (basename !== '/' && currentPath === basenameWithoutTrailingSlash) {
|
|
25
100
|
const newUrl = `${window.location.origin}${basename}${window.location.search}${window.location.hash}`;
|
|
26
101
|
window.location.replace(newUrl);
|
|
27
102
|
} else if (basename !== '/' && !currentPath.startsWith(basename)) {
|
package/dist/client/v/index.html
CHANGED
|
@@ -14,7 +14,7 @@ window['__nocobase_ws_url__'] = window['__nocobase_ws_url__'] || "";
|
|
|
14
14
|
window['__nocobase_ws_path__'] = window['__nocobase_ws_path__'] || "/ws";
|
|
15
15
|
window['__nocobase_app_dev__'] = window['__nocobase_app_dev__'] || false;
|
|
16
16
|
window['__esm_cdn_base_url__'] = window['__esm_cdn_base_url__'] || "https://esm.sh";
|
|
17
|
-
window['__esm_cdn_suffix__'] = window['__esm_cdn_suffix__'] || "";</script><script src="/v/browser-checker.js?v=1"></script><script type="module" src="/v/assets/runtime-72080663.js"></script><script type="module" src="/v/assets/vendor-antd-ecosystem-de737eca.js"></script><script type="module" src="/v/assets/vendor-moment-84b317dc.js"></script><script type="module" src="/v/assets/vendor-lodash-905dd3b8.js"></script><script type="module" src="/v/assets/vendor-ses-b7bccbcd.js"></script><script type="module" src="/v/assets/vendor-antd-icons-97ed2369.js"></script><script type="module" src="/v/assets/vendor-antd-155a4c9b.js"></script><script type="module" src="/v/assets/8384-1634db4d.js"></script><script type="module" src="/v/assets/index-
|
|
17
|
+
window['__esm_cdn_suffix__'] = window['__esm_cdn_suffix__'] || "";</script><script src="/v/browser-checker.js?v=1"></script><script type="module" src="/v/assets/runtime-72080663.js"></script><script type="module" src="/v/assets/vendor-antd-ecosystem-de737eca.js"></script><script type="module" src="/v/assets/vendor-moment-84b317dc.js"></script><script type="module" src="/v/assets/vendor-lodash-905dd3b8.js"></script><script type="module" src="/v/assets/vendor-ses-b7bccbcd.js"></script><script type="module" src="/v/assets/vendor-antd-icons-97ed2369.js"></script><script type="module" src="/v/assets/vendor-antd-155a4c9b.js"></script><script type="module" src="/v/assets/8384-1634db4d.js"></script><script type="module" src="/v/assets/index-41529ca7.js"></script><link href="/v/assets/vendor-antd-debce1bd.css" rel="stylesheet"><link href="/v/assets/8384-336ef7b3.css" rel="stylesheet"></head>
|
|
18
18
|
<body>
|
|
19
19
|
<div id="root"></div>
|
|
20
20
|
</body>
|
package/package.json
CHANGED
|
@@ -1,23 +1,23 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nocobase/app",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "3.0.0-alpha.2",
|
|
4
4
|
"description": "",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"main": "./lib/index.js",
|
|
7
7
|
"types": "./lib/index.d.ts",
|
|
8
8
|
"dependencies": {
|
|
9
|
-
"@nocobase/cli-v1": "
|
|
10
|
-
"@nocobase/database": "
|
|
11
|
-
"@nocobase/preset-nocobase": "
|
|
12
|
-
"@nocobase/server": "
|
|
9
|
+
"@nocobase/cli-v1": "3.0.0-alpha.2",
|
|
10
|
+
"@nocobase/database": "3.0.0-alpha.2",
|
|
11
|
+
"@nocobase/preset-nocobase": "3.0.0-alpha.2",
|
|
12
|
+
"@nocobase/server": "3.0.0-alpha.2"
|
|
13
13
|
},
|
|
14
14
|
"devDependencies": {
|
|
15
|
-
"@nocobase/client": "
|
|
15
|
+
"@nocobase/client": "3.0.0-alpha.2"
|
|
16
16
|
},
|
|
17
17
|
"repository": {
|
|
18
18
|
"type": "git",
|
|
19
19
|
"url": "git+https://github.com/nocobase/nocobase.git",
|
|
20
20
|
"directory": "packages/core/app"
|
|
21
21
|
},
|
|
22
|
-
"gitHead": "
|
|
22
|
+
"gitHead": "a3faea21082b30989301de04591ee1b91fd4e6a5"
|
|
23
23
|
}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This file is part of the NocoBase (R) project.
|
|
3
|
+
* Copyright (c) 2020-2024 NocoBase Co., Ltd.
|
|
4
|
+
* Authors: NocoBase Team.
|
|
5
|
+
*
|
|
6
|
+
* This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
|
|
7
|
+
* For more information, please refer to: https://www.nocobase.com/agreement.
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
function normalizePublicPath(value: string) {
|
|
11
|
+
let normalized = value || '/';
|
|
12
|
+
if (!normalized.startsWith('/')) {
|
|
13
|
+
normalized = `/${normalized}`;
|
|
14
|
+
}
|
|
15
|
+
if (!normalized.endsWith('/')) {
|
|
16
|
+
normalized = `${normalized}/`;
|
|
17
|
+
}
|
|
18
|
+
return normalized.replace(/\/{2,}/g, '/');
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
function escapeRegExp(value: string) {
|
|
22
|
+
return value.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
function createSettingsPathPattern(appPublicPath: string) {
|
|
26
|
+
const publicPath = normalizePublicPath(appPublicPath);
|
|
27
|
+
return new RegExp(`^${escapeRegExp(publicPath)}settings(?:/|$)`);
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
export function isSettingsDevPath(url: string, appPublicPath: string) {
|
|
31
|
+
const [pathname] = String(url || '/').split(/[?#]/, 1);
|
|
32
|
+
return createSettingsPathPattern(appPublicPath).test(pathname);
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
export function rewriteSettingsDevProxyPath(url: string, appPublicPath: string) {
|
|
36
|
+
const publicPath = normalizePublicPath(appPublicPath);
|
|
37
|
+
const settingsRoot = `${publicPath}settings`;
|
|
38
|
+
const settingsRootWithoutTrailingSlash = new RegExp(`^${escapeRegExp(settingsRoot)}(?=[?#]|$)`);
|
|
39
|
+
|
|
40
|
+
return url.replace(settingsRootWithoutTrailingSlash, `${settingsRoot}/`);
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
export function createSettingsDevProxyOptions(appPublicPath: string, settingsPort: number) {
|
|
44
|
+
return {
|
|
45
|
+
context: (pathname: string) => isSettingsDevPath(pathname, appPublicPath),
|
|
46
|
+
target: `http://127.0.0.1:${settingsPort}`,
|
|
47
|
+
changeOrigin: true,
|
|
48
|
+
ws: true,
|
|
49
|
+
xfwd: true,
|
|
50
|
+
pathRewrite: (pathname: string) => rewriteSettingsDevProxyPath(pathname, appPublicPath),
|
|
51
|
+
};
|
|
52
|
+
}
|
|
File without changes
|
|
File without changes
|