@vercel/static-build 2.7.22 → 2.7.24
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/index.js +342 -10
- package/package.json +6 -6
package/dist/index.js
CHANGED
|
@@ -9713,14 +9713,14 @@ var require_frameworks = __commonJS({
|
|
|
9713
9713
|
]
|
|
9714
9714
|
},
|
|
9715
9715
|
{
|
|
9716
|
-
name: "Nuxt
|
|
9716
|
+
name: "Nuxt",
|
|
9717
9717
|
slug: "nuxtjs",
|
|
9718
9718
|
demo: "https://nuxtjs-template.vercel.app",
|
|
9719
9719
|
logo: "https://api-frameworks.vercel.sh/framework-logos/nuxt.svg",
|
|
9720
9720
|
screenshot: "https://assets.vercel.com/image/upload/v1647366075/front/import/nuxtjs.png",
|
|
9721
|
-
tagline: "Nuxt
|
|
9722
|
-
description: "A Nuxt
|
|
9723
|
-
website: "https://
|
|
9721
|
+
tagline: "Nuxt is the open source framework that makes full-stack development with Vue.js intuitive.",
|
|
9722
|
+
description: "A Nuxt app, bootstrapped with create-nuxt-app.",
|
|
9723
|
+
website: "https://nuxt.com",
|
|
9724
9724
|
sort: 2,
|
|
9725
9725
|
envPrefix: "NUXT_ENV_",
|
|
9726
9726
|
supersedes: ["nitro"],
|
|
@@ -9734,6 +9734,9 @@ var require_frameworks = __commonJS({
|
|
|
9734
9734
|
},
|
|
9735
9735
|
{
|
|
9736
9736
|
matchPackage: "nuxt-edge"
|
|
9737
|
+
},
|
|
9738
|
+
{
|
|
9739
|
+
matchPackage: "nuxt-nightly"
|
|
9737
9740
|
}
|
|
9738
9741
|
]
|
|
9739
9742
|
},
|
|
@@ -9746,7 +9749,7 @@ var require_frameworks = __commonJS({
|
|
|
9746
9749
|
value: "nuxt build"
|
|
9747
9750
|
},
|
|
9748
9751
|
devCommand: {
|
|
9749
|
-
value: "nuxt"
|
|
9752
|
+
value: "nuxt dev"
|
|
9750
9753
|
},
|
|
9751
9754
|
outputDirectory: {
|
|
9752
9755
|
value: "dist"
|
|
@@ -10193,7 +10196,60 @@ var require_frameworks = __commonJS({
|
|
|
10193
10196
|
]
|
|
10194
10197
|
},
|
|
10195
10198
|
{
|
|
10196
|
-
name: "
|
|
10199
|
+
name: "FastAPI",
|
|
10200
|
+
slug: "fastapi",
|
|
10201
|
+
demo: "https://vercel-fastapi-gamma-smoky.vercel.app/",
|
|
10202
|
+
logo: "https://api-frameworks.vercel.sh/framework-logos/fastapi.svg",
|
|
10203
|
+
darkModeLogo: "https://api-frameworks.vercel.sh/framework-logos/fastapi.svg",
|
|
10204
|
+
tagline: "FastAPI framework, high performance, easy to learn, fast to code, ready for production",
|
|
10205
|
+
description: "FastAPI framework, high performance, easy to learn, fast to code, ready for production",
|
|
10206
|
+
website: "https://fastapi.tiangolo.com",
|
|
10207
|
+
useRuntime: { src: "index.py", use: "@vercel/python" },
|
|
10208
|
+
detectors: {
|
|
10209
|
+
some: [
|
|
10210
|
+
{
|
|
10211
|
+
path: "requirements.txt",
|
|
10212
|
+
matchContent: "fastapi"
|
|
10213
|
+
},
|
|
10214
|
+
{
|
|
10215
|
+
path: "pyproject.toml",
|
|
10216
|
+
matchContent: "fastapi"
|
|
10217
|
+
},
|
|
10218
|
+
{
|
|
10219
|
+
path: "Pipfile",
|
|
10220
|
+
matchContent: "fastapi"
|
|
10221
|
+
}
|
|
10222
|
+
]
|
|
10223
|
+
},
|
|
10224
|
+
settings: {
|
|
10225
|
+
installCommand: {
|
|
10226
|
+
placeholder: "`pip install -r requirements.txt`"
|
|
10227
|
+
},
|
|
10228
|
+
buildCommand: {
|
|
10229
|
+
placeholder: "None",
|
|
10230
|
+
value: null
|
|
10231
|
+
},
|
|
10232
|
+
devCommand: {
|
|
10233
|
+
placeholder: "None",
|
|
10234
|
+
value: null
|
|
10235
|
+
},
|
|
10236
|
+
outputDirectory: {
|
|
10237
|
+
value: "N/A"
|
|
10238
|
+
}
|
|
10239
|
+
},
|
|
10240
|
+
getOutputDirName: async () => "public",
|
|
10241
|
+
defaultRoutes: [
|
|
10242
|
+
{
|
|
10243
|
+
handle: "filesystem"
|
|
10244
|
+
},
|
|
10245
|
+
{
|
|
10246
|
+
src: "/(.*)",
|
|
10247
|
+
dest: "/"
|
|
10248
|
+
}
|
|
10249
|
+
]
|
|
10250
|
+
},
|
|
10251
|
+
{
|
|
10252
|
+
name: "FastHTML",
|
|
10197
10253
|
slug: "fasthtml",
|
|
10198
10254
|
demo: "https://fasthtml-template.vercel.app",
|
|
10199
10255
|
logo: "https://api-frameworks.vercel.sh/framework-logos/fasthtml.png",
|
|
@@ -10603,6 +10659,7 @@ var require_frameworks = __commonJS({
|
|
|
10603
10659
|
name: "Express",
|
|
10604
10660
|
slug: "express",
|
|
10605
10661
|
logo: "https://api-frameworks.vercel.sh/framework-logos/express.svg",
|
|
10662
|
+
demo: "https://express-vercel-example-demo.vercel.app/",
|
|
10606
10663
|
darkModeLogo: "https://api-frameworks.vercel.sh/framework-logos/express-dark.svg",
|
|
10607
10664
|
tagline: "Fast, unopinionated, minimalist web framework for Node.js",
|
|
10608
10665
|
description: "Fast, unopinionated, minimalist web framework for Node.js",
|
|
@@ -10785,6 +10842,236 @@ var require_frameworks = __commonJS({
|
|
|
10785
10842
|
dependency: "express",
|
|
10786
10843
|
getOutputDirName: async () => "public"
|
|
10787
10844
|
},
|
|
10845
|
+
{
|
|
10846
|
+
name: "H3",
|
|
10847
|
+
slug: "h3",
|
|
10848
|
+
logo: "https://api-frameworks.vercel.sh/framework-logos/h3.svg",
|
|
10849
|
+
tagline: "Universal, Tiny, and Fast Servers",
|
|
10850
|
+
description: "H(TTP) server framework built on top of web standards for high performance and composability.",
|
|
10851
|
+
website: "https://h3.dev/",
|
|
10852
|
+
useRuntime: { src: "index.js", use: "@vercel/h3" },
|
|
10853
|
+
defaultRoutes: [
|
|
10854
|
+
{
|
|
10855
|
+
handle: "filesystem"
|
|
10856
|
+
},
|
|
10857
|
+
{
|
|
10858
|
+
src: "/(.*)",
|
|
10859
|
+
dest: "/"
|
|
10860
|
+
}
|
|
10861
|
+
],
|
|
10862
|
+
detectors: {
|
|
10863
|
+
every: [{ matchPackage: "h3" }],
|
|
10864
|
+
some: [
|
|
10865
|
+
{
|
|
10866
|
+
path: "app.cjs",
|
|
10867
|
+
matchContent: `(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`
|
|
10868
|
+
},
|
|
10869
|
+
{
|
|
10870
|
+
path: "app.js",
|
|
10871
|
+
matchContent: `(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`
|
|
10872
|
+
},
|
|
10873
|
+
{
|
|
10874
|
+
path: "app.mjs",
|
|
10875
|
+
matchContent: `(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`
|
|
10876
|
+
},
|
|
10877
|
+
{
|
|
10878
|
+
path: "app.mts",
|
|
10879
|
+
matchContent: `(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`
|
|
10880
|
+
},
|
|
10881
|
+
{
|
|
10882
|
+
path: "app.ts",
|
|
10883
|
+
matchContent: `(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`
|
|
10884
|
+
},
|
|
10885
|
+
{
|
|
10886
|
+
path: "app.cts",
|
|
10887
|
+
matchContent: `(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`
|
|
10888
|
+
},
|
|
10889
|
+
{
|
|
10890
|
+
path: "index.cjs",
|
|
10891
|
+
matchContent: `(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`
|
|
10892
|
+
},
|
|
10893
|
+
{
|
|
10894
|
+
path: "index.js",
|
|
10895
|
+
matchContent: `(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`
|
|
10896
|
+
},
|
|
10897
|
+
{
|
|
10898
|
+
path: "index.mjs",
|
|
10899
|
+
matchContent: `(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`
|
|
10900
|
+
},
|
|
10901
|
+
{
|
|
10902
|
+
path: "index.mts",
|
|
10903
|
+
matchContent: `(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`
|
|
10904
|
+
},
|
|
10905
|
+
{
|
|
10906
|
+
path: "index.ts",
|
|
10907
|
+
matchContent: `(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`
|
|
10908
|
+
},
|
|
10909
|
+
{
|
|
10910
|
+
path: "index.cts",
|
|
10911
|
+
matchContent: `(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`
|
|
10912
|
+
},
|
|
10913
|
+
{
|
|
10914
|
+
path: "server.cjs",
|
|
10915
|
+
matchContent: `(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`
|
|
10916
|
+
},
|
|
10917
|
+
{
|
|
10918
|
+
path: "server.js",
|
|
10919
|
+
matchContent: `(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`
|
|
10920
|
+
},
|
|
10921
|
+
{
|
|
10922
|
+
path: "server.mjs",
|
|
10923
|
+
matchContent: `(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`
|
|
10924
|
+
},
|
|
10925
|
+
{
|
|
10926
|
+
path: "server.mts",
|
|
10927
|
+
matchContent: `(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`
|
|
10928
|
+
},
|
|
10929
|
+
{
|
|
10930
|
+
path: "server.ts",
|
|
10931
|
+
matchContent: `(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`
|
|
10932
|
+
},
|
|
10933
|
+
{
|
|
10934
|
+
path: "server.cts",
|
|
10935
|
+
matchContent: `(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`
|
|
10936
|
+
},
|
|
10937
|
+
{
|
|
10938
|
+
path: "src/index.cjs",
|
|
10939
|
+
matchContent: `(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`
|
|
10940
|
+
},
|
|
10941
|
+
{
|
|
10942
|
+
path: "src/index.js",
|
|
10943
|
+
matchContent: `(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`
|
|
10944
|
+
},
|
|
10945
|
+
{
|
|
10946
|
+
path: "src/index.mjs",
|
|
10947
|
+
matchContent: `(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`
|
|
10948
|
+
},
|
|
10949
|
+
{
|
|
10950
|
+
path: "src/index.mts",
|
|
10951
|
+
matchContent: `(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`
|
|
10952
|
+
},
|
|
10953
|
+
{
|
|
10954
|
+
path: "src/index.ts",
|
|
10955
|
+
matchContent: `(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`
|
|
10956
|
+
},
|
|
10957
|
+
{
|
|
10958
|
+
path: "src/index.cts",
|
|
10959
|
+
matchContent: `(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`
|
|
10960
|
+
},
|
|
10961
|
+
{
|
|
10962
|
+
path: "src/app.cjs",
|
|
10963
|
+
matchContent: `(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`
|
|
10964
|
+
},
|
|
10965
|
+
{
|
|
10966
|
+
path: "src/app.js",
|
|
10967
|
+
matchContent: `(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`
|
|
10968
|
+
},
|
|
10969
|
+
{
|
|
10970
|
+
path: "src/app.mjs",
|
|
10971
|
+
matchContent: `(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`
|
|
10972
|
+
},
|
|
10973
|
+
{
|
|
10974
|
+
path: "src/app.mts",
|
|
10975
|
+
matchContent: `(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`
|
|
10976
|
+
},
|
|
10977
|
+
{
|
|
10978
|
+
path: "src/app.ts",
|
|
10979
|
+
matchContent: `(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`
|
|
10980
|
+
},
|
|
10981
|
+
{
|
|
10982
|
+
path: "src/app.cts",
|
|
10983
|
+
matchContent: `(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`
|
|
10984
|
+
},
|
|
10985
|
+
{
|
|
10986
|
+
path: "src/server.cjs",
|
|
10987
|
+
matchContent: `(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`
|
|
10988
|
+
},
|
|
10989
|
+
{
|
|
10990
|
+
path: "src/server.js",
|
|
10991
|
+
matchContent: `(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`
|
|
10992
|
+
},
|
|
10993
|
+
{
|
|
10994
|
+
path: "src/server.mjs",
|
|
10995
|
+
matchContent: `(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`
|
|
10996
|
+
},
|
|
10997
|
+
{
|
|
10998
|
+
path: "src/server.mts",
|
|
10999
|
+
matchContent: `(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`
|
|
11000
|
+
},
|
|
11001
|
+
{
|
|
11002
|
+
path: "src/server.ts",
|
|
11003
|
+
matchContent: `(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`
|
|
11004
|
+
},
|
|
11005
|
+
{
|
|
11006
|
+
path: "src/server.cts",
|
|
11007
|
+
matchContent: `(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`
|
|
11008
|
+
}
|
|
11009
|
+
]
|
|
11010
|
+
},
|
|
11011
|
+
settings: {
|
|
11012
|
+
installCommand: {
|
|
11013
|
+
placeholder: "`yarn install`, `pnpm install`, `npm install`, or `bun install`"
|
|
11014
|
+
},
|
|
11015
|
+
buildCommand: {
|
|
11016
|
+
placeholder: "None",
|
|
11017
|
+
value: null
|
|
11018
|
+
},
|
|
11019
|
+
devCommand: {
|
|
11020
|
+
placeholder: "None",
|
|
11021
|
+
value: null
|
|
11022
|
+
},
|
|
11023
|
+
outputDirectory: {
|
|
11024
|
+
value: "N/A"
|
|
11025
|
+
}
|
|
11026
|
+
},
|
|
11027
|
+
dependency: "h3",
|
|
11028
|
+
getOutputDirName: async () => "public"
|
|
11029
|
+
},
|
|
11030
|
+
{
|
|
11031
|
+
name: "NestJS",
|
|
11032
|
+
slug: "nestjs",
|
|
11033
|
+
logo: "https://api-frameworks.vercel.sh/framework-logos/nestjs.svg",
|
|
11034
|
+
tagline: "Framework for building efficient, scalable Node.js server-side applications",
|
|
11035
|
+
description: "A progressive Node.js framework for building efficient, reliable and scalable server-side applications.",
|
|
11036
|
+
website: "https://nestjs.com/",
|
|
11037
|
+
useRuntime: { src: "index.js", use: "@vercel/nestjs" },
|
|
11038
|
+
defaultRoutes: [
|
|
11039
|
+
{
|
|
11040
|
+
handle: "filesystem"
|
|
11041
|
+
},
|
|
11042
|
+
{
|
|
11043
|
+
src: "/(.*)",
|
|
11044
|
+
dest: "/"
|
|
11045
|
+
}
|
|
11046
|
+
],
|
|
11047
|
+
detectors: {
|
|
11048
|
+
every: [{ matchPackage: "@nestjs/core" }],
|
|
11049
|
+
some: [
|
|
11050
|
+
{
|
|
11051
|
+
path: "src/main.ts",
|
|
11052
|
+
matchContent: `(?:from|require|import)\\s*(?:\\(\\s*)?["']@nestjs/core["']\\s*(?:\\))?`
|
|
11053
|
+
}
|
|
11054
|
+
]
|
|
11055
|
+
},
|
|
11056
|
+
settings: {
|
|
11057
|
+
installCommand: {
|
|
11058
|
+
placeholder: "`yarn install`, `pnpm install`, `npm install`, or `bun install`"
|
|
11059
|
+
},
|
|
11060
|
+
buildCommand: {
|
|
11061
|
+
placeholder: "None",
|
|
11062
|
+
value: null
|
|
11063
|
+
},
|
|
11064
|
+
devCommand: {
|
|
11065
|
+
placeholder: "None",
|
|
11066
|
+
value: null
|
|
11067
|
+
},
|
|
11068
|
+
outputDirectory: {
|
|
11069
|
+
value: "N/A"
|
|
11070
|
+
}
|
|
11071
|
+
},
|
|
11072
|
+
dependency: "nestjs",
|
|
11073
|
+
getOutputDirName: async () => "public"
|
|
11074
|
+
},
|
|
10788
11075
|
{
|
|
10789
11076
|
name: "xmcp",
|
|
10790
11077
|
slug: "xmcp",
|
|
@@ -18575,6 +18862,16 @@ var require_detect_builders = __commonJS({
|
|
|
18575
18862
|
builders.push(...apiBuilders);
|
|
18576
18863
|
}
|
|
18577
18864
|
if (frontendBuilder) {
|
|
18865
|
+
if (frontendBuilder?.use === "@vercel/express" || frontendBuilder?.use === "@vercel/hono" || frontendBuilder?.use === "@vercel/python") {
|
|
18866
|
+
builders.push({
|
|
18867
|
+
src: "public/**/*",
|
|
18868
|
+
use: "@vercel/static",
|
|
18869
|
+
config: {
|
|
18870
|
+
zeroConfig: true,
|
|
18871
|
+
outputDirectory: "public"
|
|
18872
|
+
}
|
|
18873
|
+
});
|
|
18874
|
+
}
|
|
18578
18875
|
builders.push(frontendBuilder);
|
|
18579
18876
|
if (hasNextApiFiles && apiBuilders.some((b) => (0, import_is_official_runtime.isOfficialRuntime)("node", b.use))) {
|
|
18580
18877
|
warnings.push({
|
|
@@ -18832,6 +19129,25 @@ var require_detect_builders = __commonJS({
|
|
|
18832
19129
|
}
|
|
18833
19130
|
}
|
|
18834
19131
|
}
|
|
19132
|
+
if (frontendBuilder && ((0, import_is_official_runtime.isOfficialRuntime)("express", frontendBuilder.use) || (0, import_is_official_runtime.isOfficialRuntime)("hono", frontendBuilder.use))) {
|
|
19133
|
+
const validFilenames = [
|
|
19134
|
+
"app",
|
|
19135
|
+
"index",
|
|
19136
|
+
"server",
|
|
19137
|
+
"src/app",
|
|
19138
|
+
"src/index",
|
|
19139
|
+
"src/server"
|
|
19140
|
+
];
|
|
19141
|
+
const validExtensions = ["js", "cjs", "mjs", "ts", "cts", "mts"];
|
|
19142
|
+
const validEntrypoints = validFilenames.flatMap(
|
|
19143
|
+
(filename) => validExtensions.map((extension) => `${filename}.${extension}`)
|
|
19144
|
+
);
|
|
19145
|
+
for (const fnKey of unusedFunctions.values()) {
|
|
19146
|
+
if (validEntrypoints.includes(fnKey)) {
|
|
19147
|
+
unusedFunctions.delete(fnKey);
|
|
19148
|
+
}
|
|
19149
|
+
}
|
|
19150
|
+
}
|
|
18835
19151
|
if (unusedFunctions.size) {
|
|
18836
19152
|
const [fnKey] = Array.from(unusedFunctions);
|
|
18837
19153
|
return {
|
|
@@ -27877,16 +28193,32 @@ async function checkForPort(port, timeout) {
|
|
|
27877
28193
|
await sleep(100);
|
|
27878
28194
|
}
|
|
27879
28195
|
}
|
|
27880
|
-
function validateDistDir(distDir) {
|
|
28196
|
+
function validateDistDir(distDir, workPath) {
|
|
27881
28197
|
const distDirName = import_path6.default.basename(distDir);
|
|
27882
28198
|
const exists = () => (0, import_fs4.existsSync)(distDir);
|
|
27883
28199
|
const isDirectory = () => (0, import_fs4.statSync)(distDir).isDirectory();
|
|
27884
28200
|
const isEmpty = () => (0, import_fs4.readdirSync)(distDir).length === 0;
|
|
27885
28201
|
const link = "https://vercel.link/missing-public-directory";
|
|
27886
28202
|
if (!exists()) {
|
|
28203
|
+
const vercelJsonPath = import_path6.default.join(workPath, "vercel.json");
|
|
28204
|
+
const vercelJsonExists = (0, import_fs4.existsSync)(vercelJsonPath);
|
|
28205
|
+
let buildCommandExists = false;
|
|
28206
|
+
if (vercelJsonExists) {
|
|
28207
|
+
try {
|
|
28208
|
+
const vercelJson = JSON.parse((0, import_fs4.readFileSync)(vercelJsonPath, "utf8"));
|
|
28209
|
+
buildCommandExists = vercelJson.buildCommand !== void 0;
|
|
28210
|
+
} catch (e) {
|
|
28211
|
+
}
|
|
28212
|
+
}
|
|
28213
|
+
let message = `No Output Directory named "${distDirName}" found after the Build completed.`;
|
|
28214
|
+
if (vercelJsonExists && buildCommandExists) {
|
|
28215
|
+
message += ` Update vercel.json#outputDirectory to ensure the correct output directory is generated.`;
|
|
28216
|
+
} else {
|
|
28217
|
+
message += ` Configure the Output Directory in your Project Settings. Alternatively, configure vercel.json#outputDirectory.`;
|
|
28218
|
+
}
|
|
27887
28219
|
throw new import_build_utils4.NowBuildError({
|
|
27888
28220
|
code: "STATIC_BUILD_NO_OUT_DIR",
|
|
27889
|
-
message
|
|
28221
|
+
message,
|
|
27890
28222
|
link
|
|
27891
28223
|
});
|
|
27892
28224
|
}
|
|
@@ -28426,7 +28758,7 @@ Details: https://err.sh/vercel/vercel/now-static-build-failed-to-detect-a-server
|
|
|
28426
28758
|
);
|
|
28427
28759
|
} else {
|
|
28428
28760
|
if (!extraOutputs.functions) {
|
|
28429
|
-
validateDistDir(distPath);
|
|
28761
|
+
validateDistDir(distPath, workPath);
|
|
28430
28762
|
}
|
|
28431
28763
|
if (framework && !extraOutputs.routes) {
|
|
28432
28764
|
const frameworkRoutes = await getFrameworkRoutes(
|
|
@@ -28467,7 +28799,7 @@ Details: https://err.sh/vercel/vercel/now-static-build-failed-to-detect-a-server
|
|
|
28467
28799
|
);
|
|
28468
28800
|
const spawnOpts = (0, import_build_utils4.getSpawnOptions)(meta, nodeVersion);
|
|
28469
28801
|
await (0, import_build_utils4.runShellScript)(import_path6.default.join(workPath, entrypoint), [], spawnOpts);
|
|
28470
|
-
validateDistDir(distPath);
|
|
28802
|
+
validateDistDir(distPath, workPath);
|
|
28471
28803
|
const output = await (0, import_build_utils4.glob)("**", distPath, mountpoint);
|
|
28472
28804
|
return {
|
|
28473
28805
|
output,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vercel/static-build",
|
|
3
|
-
"version": "2.7.
|
|
3
|
+
"version": "2.7.24",
|
|
4
4
|
"license": "Apache-2.0",
|
|
5
5
|
"main": "./dist/index",
|
|
6
6
|
"homepage": "https://vercel.com/docs/build-step",
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
},
|
|
15
15
|
"dependencies": {
|
|
16
16
|
"@vercel/gatsby-plugin-vercel-analytics": "1.0.11",
|
|
17
|
-
"@vercel/gatsby-plugin-vercel-builder": "2.0.
|
|
17
|
+
"@vercel/gatsby-plugin-vercel-builder": "2.0.96",
|
|
18
18
|
"@vercel/static-config": "3.1.2",
|
|
19
19
|
"ts-morph": "12.0.0"
|
|
20
20
|
},
|
|
@@ -28,11 +28,11 @@
|
|
|
28
28
|
"@types/node-fetch": "2.5.4",
|
|
29
29
|
"@types/promise-timeout": "1.3.0",
|
|
30
30
|
"@types/semver": "7.3.13",
|
|
31
|
-
"@vercel/build-utils": "12.1.
|
|
31
|
+
"@vercel/build-utils": "12.1.1",
|
|
32
32
|
"@vercel/error-utils": "2.0.3",
|
|
33
|
-
"@vercel/frameworks": "3.
|
|
34
|
-
"@vercel/fs-detectors": "5.
|
|
35
|
-
"@vercel/routing-utils": "5.
|
|
33
|
+
"@vercel/frameworks": "3.11.0",
|
|
34
|
+
"@vercel/fs-detectors": "5.6.0",
|
|
35
|
+
"@vercel/routing-utils": "5.2.0",
|
|
36
36
|
"execa": "3.2.0",
|
|
37
37
|
"fs-extra": "10.0.0",
|
|
38
38
|
"get-port": "5.0.0",
|