@vercel/build-utils 2.12.3-canary.10 → 2.12.3-canary.14
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 +393 -3
- package/package.json +3 -3
package/dist/index.js
CHANGED
@@ -26248,6 +26248,7 @@ exports.frameworks = [
|
|
26248
26248
|
},
|
26249
26249
|
devCommand: 'blitz start',
|
26250
26250
|
buildCommand: 'blitz build',
|
26251
|
+
getFsOutputDir: async () => '.next',
|
26251
26252
|
getOutputDirName: async () => 'public',
|
26252
26253
|
},
|
26253
26254
|
{
|
@@ -26292,6 +26293,7 @@ exports.frameworks = [
|
|
26292
26293
|
],
|
26293
26294
|
devCommand: 'next dev --port $PORT',
|
26294
26295
|
buildCommand: 'next build',
|
26296
|
+
getFsOutputDir: async () => '.next',
|
26295
26297
|
getOutputDirName: async () => 'public',
|
26296
26298
|
cachePattern: '.next/cache/**',
|
26297
26299
|
},
|
@@ -26332,6 +26334,7 @@ exports.frameworks = [
|
|
26332
26334
|
devCommand: 'gatsby develop --port $PORT',
|
26333
26335
|
buildCommand: 'gatsby build',
|
26334
26336
|
getOutputDirName: async () => 'public',
|
26337
|
+
getFsOutputDir: async () => 'public',
|
26335
26338
|
defaultRoutes: async (dirPrefix) => {
|
26336
26339
|
// This file could be generated by gatsby-plugin-now or gatsby-plugin-zeit-now
|
26337
26340
|
try {
|
@@ -26413,6 +26416,7 @@ exports.frameworks = [
|
|
26413
26416
|
dependency: 'hexo',
|
26414
26417
|
devCommand: 'hexo server --port $PORT',
|
26415
26418
|
buildCommand: 'hexo generate',
|
26419
|
+
getFsOutputDir: async () => 'public',
|
26416
26420
|
getOutputDirName: async () => 'public',
|
26417
26421
|
},
|
26418
26422
|
{
|
@@ -26450,6 +26454,7 @@ exports.frameworks = [
|
|
26450
26454
|
dependency: '@11ty/eleventy',
|
26451
26455
|
devCommand: 'npx @11ty/eleventy --serve --watch --port $PORT',
|
26452
26456
|
buildCommand: 'npx @11ty/eleventy',
|
26457
|
+
getFsOutputDir: async () => '_site',
|
26453
26458
|
getOutputDirName: async () => '_site',
|
26454
26459
|
cachePattern: '.cache/**',
|
26455
26460
|
},
|
@@ -26487,6 +26492,21 @@ exports.frameworks = [
|
|
26487
26492
|
dependency: '@docusaurus/core',
|
26488
26493
|
devCommand: 'docusaurus start --port $PORT',
|
26489
26494
|
buildCommand: 'docusaurus build',
|
26495
|
+
getFsOutputDir: async (dirPrefix) => {
|
26496
|
+
const base = 'build';
|
26497
|
+
try {
|
26498
|
+
const location = path_1.join(dirPrefix, base);
|
26499
|
+
const content = await readdir(location, { withFileTypes: true });
|
26500
|
+
// If there is only one file in it that is a dir we'll use it as dist dir
|
26501
|
+
if (content.length === 1 && content[0].isDirectory()) {
|
26502
|
+
return path_1.join(base, content[0].name);
|
26503
|
+
}
|
26504
|
+
}
|
26505
|
+
catch (error) {
|
26506
|
+
console.error(`Error detecting output directory: `, error);
|
26507
|
+
}
|
26508
|
+
return base;
|
26509
|
+
},
|
26490
26510
|
getOutputDirName: async (dirPrefix) => {
|
26491
26511
|
const base = 'build';
|
26492
26512
|
try {
|
@@ -26502,6 +26522,51 @@ exports.frameworks = [
|
|
26502
26522
|
}
|
26503
26523
|
return base;
|
26504
26524
|
},
|
26525
|
+
defaultHeaders: [
|
26526
|
+
{
|
26527
|
+
source: '^/[^./]+\\.[0-9a-f]{8}\\.(css|js)$',
|
26528
|
+
regex: '^/[^./]+\\.[0-9a-f]{8}\\.(css|js)$',
|
26529
|
+
headers: [
|
26530
|
+
{ key: 'cache-control', value: 'max-age=31536000, immutable' },
|
26531
|
+
],
|
26532
|
+
},
|
26533
|
+
{
|
26534
|
+
source: '^/assets/images/[^/]+-[0-9a-f]{32}\\.(ico|svg|jpg|jpeg|png|gif|webp)$',
|
26535
|
+
regex: '^/assets/images/[^/]+-[0-9a-f]{32}\\.(ico|svg|jpg|jpeg|png|gif|webp)$',
|
26536
|
+
headers: [
|
26537
|
+
{ key: 'cache-control', value: 'max-age=31536000, immutable' },
|
26538
|
+
],
|
26539
|
+
},
|
26540
|
+
{
|
26541
|
+
source: '^/assets/medias/[^/]+-[0-9a-f]{32}\\.(ogv|wav|mp3|m4a|aac|oga|flac)$',
|
26542
|
+
regex: '^/assets/medias/[^/]+-[0-9a-f]{32}\\.(ogv|wav|mp3|m4a|aac|oga|flac)$',
|
26543
|
+
headers: [
|
26544
|
+
{ key: 'cache-control', value: 'max-age=31536000, immutable' },
|
26545
|
+
],
|
26546
|
+
},
|
26547
|
+
{
|
26548
|
+
source: '^/assets/files/[^/]+-[0-9a-f]{32}\\.(pdf|doc|docx|xls|xlsx|zip|rar)$',
|
26549
|
+
regex: '^/assets/files/[^/]+-[0-9a-f]{32}\\.(pdf|doc|docx|xls|xlsx|zip|rar)$',
|
26550
|
+
headers: [
|
26551
|
+
{ key: 'cache-control', value: 'max-age=31536000, immutable' },
|
26552
|
+
],
|
26553
|
+
},
|
26554
|
+
{
|
26555
|
+
source: '^/ideal-img/[^/]+\\.[0-9a-f]{7}\\.\\d+\\.(png|jpe?g|gif)$',
|
26556
|
+
regex: '^/ideal-img/[^/]+\\.[0-9a-f]{7}\\.\\d+\\.(png|jpe?g|gif)$',
|
26557
|
+
headers: [
|
26558
|
+
{ key: 'cache-control', value: 'max-age=31536000, immutable' },
|
26559
|
+
],
|
26560
|
+
},
|
26561
|
+
],
|
26562
|
+
defaultRedirects: [
|
26563
|
+
{
|
26564
|
+
source: '.*',
|
26565
|
+
regex: '.*',
|
26566
|
+
statusCode: 404,
|
26567
|
+
destination: '404.html',
|
26568
|
+
},
|
26569
|
+
],
|
26505
26570
|
defaultRoutes: [
|
26506
26571
|
{
|
26507
26572
|
src: '^/[^./]+\\.[0-9a-f]{8}\\.(css|js)$',
|
@@ -26572,6 +26637,21 @@ exports.frameworks = [
|
|
26572
26637
|
dependency: 'docusaurus',
|
26573
26638
|
devCommand: 'docusaurus-start --port $PORT',
|
26574
26639
|
buildCommand: 'docusaurus-build',
|
26640
|
+
getFsOutputDir: async (dirPrefix) => {
|
26641
|
+
const base = 'build';
|
26642
|
+
try {
|
26643
|
+
const location = path_1.join(dirPrefix, base);
|
26644
|
+
const content = await readdir(location, { withFileTypes: true });
|
26645
|
+
// If there is only one file in it that is a dir we'll use it as dist dir
|
26646
|
+
if (content.length === 1 && content[0].isDirectory()) {
|
26647
|
+
return path_1.join(base, content[0].name);
|
26648
|
+
}
|
26649
|
+
}
|
26650
|
+
catch (error) {
|
26651
|
+
console.error(`Error detecting output directory: `, error);
|
26652
|
+
}
|
26653
|
+
return base;
|
26654
|
+
},
|
26575
26655
|
getOutputDirName: async (dirPrefix) => {
|
26576
26656
|
const base = 'build';
|
26577
26657
|
try {
|
@@ -26622,6 +26702,7 @@ exports.frameworks = [
|
|
26622
26702
|
dependency: 'preact-cli',
|
26623
26703
|
devCommand: 'preact watch --port $PORT',
|
26624
26704
|
buildCommand: 'preact build',
|
26705
|
+
getFsOutputDir: async () => 'build',
|
26625
26706
|
getOutputDirName: async () => 'build',
|
26626
26707
|
defaultRoutes: [
|
26627
26708
|
{
|
@@ -26632,6 +26713,13 @@ exports.frameworks = [
|
|
26632
26713
|
dest: '/index.html',
|
26633
26714
|
},
|
26634
26715
|
],
|
26716
|
+
defaultRewrites: [
|
26717
|
+
{
|
26718
|
+
source: '/(.*)',
|
26719
|
+
regex: '/(.*)',
|
26720
|
+
destination: '/index.html',
|
26721
|
+
},
|
26722
|
+
],
|
26635
26723
|
},
|
26636
26724
|
{
|
26637
26725
|
name: 'Dojo',
|
@@ -26670,6 +26758,7 @@ exports.frameworks = [
|
|
26670
26758
|
dependency: '@dojo/cli',
|
26671
26759
|
devCommand: 'dojo build -m dev -w -s -p $PORT',
|
26672
26760
|
buildCommand: 'dojo build',
|
26761
|
+
getFsOutputDir: async () => 'output/dist',
|
26673
26762
|
getOutputDirName: async () => path_1.join('output', 'dist'),
|
26674
26763
|
defaultRoutes: [
|
26675
26764
|
{
|
@@ -26685,6 +26774,21 @@ exports.frameworks = [
|
|
26685
26774
|
dest: '/index.html',
|
26686
26775
|
},
|
26687
26776
|
],
|
26777
|
+
defaulHeaders: [
|
26778
|
+
{
|
26779
|
+
source: '/service-worker.js',
|
26780
|
+
regex: '/service-worker.js',
|
26781
|
+
headers: { 'cache-control': 's-maxage=0' },
|
26782
|
+
continue: true,
|
26783
|
+
},
|
26784
|
+
],
|
26785
|
+
defaultRewrites: [
|
26786
|
+
{
|
26787
|
+
source: '/(.*)',
|
26788
|
+
regex: '/(.*)',
|
26789
|
+
destination: '/index.html',
|
26790
|
+
},
|
26791
|
+
],
|
26688
26792
|
},
|
26689
26793
|
{
|
26690
26794
|
name: 'Ember.js',
|
@@ -26720,6 +26824,7 @@ exports.frameworks = [
|
|
26720
26824
|
dependency: 'ember-cli',
|
26721
26825
|
devCommand: 'ember serve --port $PORT',
|
26722
26826
|
buildCommand: 'ember build',
|
26827
|
+
getFsOutputDir: async () => 'dist',
|
26723
26828
|
getOutputDirName: async () => 'dist',
|
26724
26829
|
defaultRoutes: [
|
26725
26830
|
{
|
@@ -26730,6 +26835,13 @@ exports.frameworks = [
|
|
26730
26835
|
dest: '/index.html',
|
26731
26836
|
},
|
26732
26837
|
],
|
26838
|
+
defaultRewrites: [
|
26839
|
+
{
|
26840
|
+
source: '/(.*)',
|
26841
|
+
regex: '/(.*)',
|
26842
|
+
destination: '/index.html',
|
26843
|
+
},
|
26844
|
+
],
|
26733
26845
|
},
|
26734
26846
|
{
|
26735
26847
|
name: 'Vue.js',
|
@@ -26766,6 +26878,7 @@ exports.frameworks = [
|
|
26766
26878
|
dependency: '@vue/cli-service',
|
26767
26879
|
devCommand: 'vue-cli-service serve --port $PORT',
|
26768
26880
|
buildCommand: 'vue-cli-service build',
|
26881
|
+
getFsOutputDir: async () => 'dist',
|
26769
26882
|
getOutputDirName: async () => 'dist',
|
26770
26883
|
defaultRoutes: [
|
26771
26884
|
{
|
@@ -26786,6 +26899,27 @@ exports.frameworks = [
|
|
26786
26899
|
dest: '/index.html',
|
26787
26900
|
},
|
26788
26901
|
],
|
26902
|
+
defaultHeaders: [
|
26903
|
+
{
|
26904
|
+
source: '^/[^/]*\\.(js|txt|ico|json)',
|
26905
|
+
regex: '^/[^/]*\\.(js|txt|ico|json)',
|
26906
|
+
headers: [{ key: 'cache-control', value: 'max-age=300' }],
|
26907
|
+
},
|
26908
|
+
{
|
26909
|
+
source: '^/(img|js|css|fonts|media)/[^/]+\\.[0-9a-f]{8}\\.*',
|
26910
|
+
regex: '^/(img|js|css|fonts|media)/[^/]+\\.[0-9a-f]{8}\\.*',
|
26911
|
+
headers: [
|
26912
|
+
{ key: 'cache-control', value: 'max-age=31536000, immutable' },
|
26913
|
+
],
|
26914
|
+
},
|
26915
|
+
],
|
26916
|
+
defaultRewrites: [
|
26917
|
+
{
|
26918
|
+
source: '^.*',
|
26919
|
+
regex: '^.*',
|
26920
|
+
destination: '/index.html',
|
26921
|
+
},
|
26922
|
+
],
|
26789
26923
|
},
|
26790
26924
|
{
|
26791
26925
|
name: 'Scully',
|
@@ -26821,6 +26955,7 @@ exports.frameworks = [
|
|
26821
26955
|
dependency: '@scullyio/init',
|
26822
26956
|
devCommand: 'ng serve --port $PORT',
|
26823
26957
|
buildCommand: 'ng build && scully',
|
26958
|
+
getFsOutputDir: async () => 'dist',
|
26824
26959
|
getOutputDirName: async () => 'dist/static',
|
26825
26960
|
},
|
26826
26961
|
{
|
@@ -26847,15 +26982,16 @@ exports.frameworks = [
|
|
26847
26982
|
placeholder: '`npm run build` or `ng build`',
|
26848
26983
|
},
|
26849
26984
|
devCommand: {
|
26850
|
-
value: 'ng serve',
|
26985
|
+
value: 'ng serve --port $PORT',
|
26851
26986
|
},
|
26852
26987
|
outputDirectory: {
|
26853
26988
|
value: 'www',
|
26854
26989
|
},
|
26855
26990
|
},
|
26856
26991
|
dependency: '@ionic/angular',
|
26857
|
-
devCommand: 'ng serve',
|
26992
|
+
devCommand: 'ng serve --port $PORT',
|
26858
26993
|
buildCommand: 'ng build',
|
26994
|
+
getFsOutputDir: async () => 'www',
|
26859
26995
|
getOutputDirName: async () => 'www',
|
26860
26996
|
defaultRoutes: [
|
26861
26997
|
{
|
@@ -26866,6 +27002,13 @@ exports.frameworks = [
|
|
26866
27002
|
dest: '/index.html',
|
26867
27003
|
},
|
26868
27004
|
],
|
27005
|
+
defaultRewrites: [
|
27006
|
+
{
|
27007
|
+
source: '/(.*)',
|
27008
|
+
regex: '/(.*)',
|
27009
|
+
destination: '/index.html',
|
27010
|
+
},
|
27011
|
+
],
|
26869
27012
|
},
|
26870
27013
|
{
|
26871
27014
|
name: 'Angular',
|
@@ -26901,6 +27044,7 @@ exports.frameworks = [
|
|
26901
27044
|
dependency: '@angular/cli',
|
26902
27045
|
devCommand: 'ng serve --port $PORT',
|
26903
27046
|
buildCommand: 'ng build',
|
27047
|
+
getFsOutputDir: async () => 'dist',
|
26904
27048
|
getOutputDirName: async (dirPrefix) => {
|
26905
27049
|
const base = 'dist';
|
26906
27050
|
try {
|
@@ -26925,6 +27069,13 @@ exports.frameworks = [
|
|
26925
27069
|
dest: '/index.html',
|
26926
27070
|
},
|
26927
27071
|
],
|
27072
|
+
defaultRewrites: [
|
27073
|
+
{
|
27074
|
+
source: '/(.*)',
|
27075
|
+
regex: '/(.*)',
|
27076
|
+
destination: '/index.html',
|
27077
|
+
},
|
27078
|
+
],
|
26928
27079
|
},
|
26929
27080
|
{
|
26930
27081
|
name: 'Polymer',
|
@@ -26960,6 +27111,7 @@ exports.frameworks = [
|
|
26960
27111
|
dependency: 'polymer-cli',
|
26961
27112
|
devCommand: 'polymer serve --port $PORT',
|
26962
27113
|
buildCommand: 'polymer build',
|
27114
|
+
getFsOutputDir: async () => 'build',
|
26963
27115
|
getOutputDirName: async (dirPrefix) => {
|
26964
27116
|
const base = 'build';
|
26965
27117
|
try {
|
@@ -26982,6 +27134,13 @@ exports.frameworks = [
|
|
26982
27134
|
dest: '/index.html',
|
26983
27135
|
},
|
26984
27136
|
],
|
27137
|
+
defaultRewrites: [
|
27138
|
+
{
|
27139
|
+
source: '/(.*)',
|
27140
|
+
regex: '/(.*)',
|
27141
|
+
destination: '/index.html',
|
27142
|
+
},
|
27143
|
+
],
|
26985
27144
|
},
|
26986
27145
|
{
|
26987
27146
|
name: 'Svelte',
|
@@ -27020,6 +27179,7 @@ exports.frameworks = [
|
|
27020
27179
|
dependency: 'sirv-cli',
|
27021
27180
|
devCommand: 'rollup -c -w',
|
27022
27181
|
buildCommand: 'rollup -c',
|
27182
|
+
getFsOutputDir: async () => 'public',
|
27023
27183
|
getOutputDirName: async () => 'public',
|
27024
27184
|
defaultRoutes: [
|
27025
27185
|
{
|
@@ -27030,6 +27190,13 @@ exports.frameworks = [
|
|
27030
27190
|
dest: '/index.html',
|
27031
27191
|
},
|
27032
27192
|
],
|
27193
|
+
defaultRewrites: [
|
27194
|
+
{
|
27195
|
+
source: '/(.*)',
|
27196
|
+
regex: '/(.*)',
|
27197
|
+
destination: '/index.html',
|
27198
|
+
},
|
27199
|
+
],
|
27033
27200
|
},
|
27034
27201
|
{
|
27035
27202
|
name: 'SvelteKit',
|
@@ -27064,6 +27231,7 @@ exports.frameworks = [
|
|
27064
27231
|
},
|
27065
27232
|
devCommand: 'svelte-kit dev --port $PORT',
|
27066
27233
|
buildCommand: 'svelte-kit build',
|
27234
|
+
getFsOutputDir: async () => '.output',
|
27067
27235
|
getOutputDirName: async () => 'public',
|
27068
27236
|
},
|
27069
27237
|
{
|
@@ -27099,6 +27267,7 @@ exports.frameworks = [
|
|
27099
27267
|
dependency: '@ionic/react',
|
27100
27268
|
devCommand: 'react-scripts start',
|
27101
27269
|
buildCommand: 'react-scripts build',
|
27270
|
+
getFsOutputDir: async () => 'build',
|
27102
27271
|
getOutputDirName: async () => 'build',
|
27103
27272
|
defaultRoutes: [
|
27104
27273
|
{
|
@@ -27125,6 +27294,45 @@ exports.frameworks = [
|
|
27125
27294
|
dest: '/index.html',
|
27126
27295
|
},
|
27127
27296
|
],
|
27297
|
+
defaultHeaders: [
|
27298
|
+
{
|
27299
|
+
source: '/static/(.*)',
|
27300
|
+
regex: '/static/(.*)',
|
27301
|
+
headers: [
|
27302
|
+
{ key: 'cache-control', value: 's-maxage=31536000, immutable' },
|
27303
|
+
],
|
27304
|
+
},
|
27305
|
+
{
|
27306
|
+
source: '/service-worker.js',
|
27307
|
+
regex: '/service-worker.js',
|
27308
|
+
headers: [{ key: 'cache-control', value: 's-maxage=0' }],
|
27309
|
+
},
|
27310
|
+
{
|
27311
|
+
source: '/(.*)',
|
27312
|
+
regex: '/(.*)',
|
27313
|
+
headers: [{ key: 'cache-control', value: 's-maxage=0' }],
|
27314
|
+
},
|
27315
|
+
],
|
27316
|
+
defaultRedirects: [
|
27317
|
+
{
|
27318
|
+
source: '/static/(.*)',
|
27319
|
+
destination: '/404.html',
|
27320
|
+
statusCode: 404,
|
27321
|
+
regex: '/static/(.*)',
|
27322
|
+
},
|
27323
|
+
],
|
27324
|
+
defaultRewrites: [
|
27325
|
+
{
|
27326
|
+
source: '/sockjs-node/(.*)',
|
27327
|
+
destination: '/sockjs-node/$1',
|
27328
|
+
regex: '/sockjs-node/(.*)',
|
27329
|
+
},
|
27330
|
+
{
|
27331
|
+
source: '/(.*)',
|
27332
|
+
destination: '/index.html',
|
27333
|
+
regex: '/(.*)',
|
27334
|
+
},
|
27335
|
+
],
|
27128
27336
|
},
|
27129
27337
|
{
|
27130
27338
|
name: 'Create React App',
|
@@ -27164,6 +27372,7 @@ exports.frameworks = [
|
|
27164
27372
|
dependency: 'react-scripts',
|
27165
27373
|
devCommand: 'react-scripts start',
|
27166
27374
|
buildCommand: 'react-scripts build',
|
27375
|
+
getFsOutputDir: async () => 'build',
|
27167
27376
|
getOutputDirName: async () => 'build',
|
27168
27377
|
defaultRoutes: [
|
27169
27378
|
{
|
@@ -27190,6 +27399,45 @@ exports.frameworks = [
|
|
27190
27399
|
dest: '/index.html',
|
27191
27400
|
},
|
27192
27401
|
],
|
27402
|
+
defaultHeaders: [
|
27403
|
+
{
|
27404
|
+
source: '/static/(.*)',
|
27405
|
+
regex: '/static/(.*)',
|
27406
|
+
headers: [
|
27407
|
+
{ key: 'cache-control', value: 's-maxage=31536000, immutable' },
|
27408
|
+
],
|
27409
|
+
},
|
27410
|
+
{
|
27411
|
+
source: '/service-worker.js',
|
27412
|
+
regex: '/service-worker.js',
|
27413
|
+
headers: [{ key: 'cache-control', value: 's-maxage=0' }],
|
27414
|
+
},
|
27415
|
+
{
|
27416
|
+
source: '/(.*)',
|
27417
|
+
regex: '/(.*)',
|
27418
|
+
headers: [{ key: 'cache-control', value: 's-maxage=0' }],
|
27419
|
+
},
|
27420
|
+
],
|
27421
|
+
defaultRedirects: [
|
27422
|
+
{
|
27423
|
+
source: '/static/(.*)',
|
27424
|
+
destination: '/404.html',
|
27425
|
+
statusCode: 404,
|
27426
|
+
regex: '/static/(.*)',
|
27427
|
+
},
|
27428
|
+
],
|
27429
|
+
defaultRewrites: [
|
27430
|
+
{
|
27431
|
+
source: '/sockjs-node/(.*)',
|
27432
|
+
destination: '/sockjs-node/$1',
|
27433
|
+
regex: '/sockjs-node/(.*)',
|
27434
|
+
},
|
27435
|
+
{
|
27436
|
+
source: '/(.*)',
|
27437
|
+
destination: '/index.html',
|
27438
|
+
regex: '/(.*)',
|
27439
|
+
},
|
27440
|
+
],
|
27193
27441
|
},
|
27194
27442
|
{
|
27195
27443
|
name: 'Gridsome',
|
@@ -27225,6 +27473,7 @@ exports.frameworks = [
|
|
27225
27473
|
dependency: 'gridsome',
|
27226
27474
|
devCommand: 'gridsome develop -p $PORT',
|
27227
27475
|
buildCommand: 'gridsome build',
|
27476
|
+
getFsOutputDir: async () => 'dist',
|
27228
27477
|
getOutputDirName: async () => 'dist',
|
27229
27478
|
},
|
27230
27479
|
{
|
@@ -27261,6 +27510,7 @@ exports.frameworks = [
|
|
27261
27510
|
dependency: 'umi',
|
27262
27511
|
devCommand: 'umi dev --port $PORT',
|
27263
27512
|
buildCommand: 'umi build',
|
27513
|
+
getFsOutputDir: async () => 'dist',
|
27264
27514
|
getOutputDirName: async () => 'dist',
|
27265
27515
|
defaultRoutes: [
|
27266
27516
|
{
|
@@ -27271,6 +27521,13 @@ exports.frameworks = [
|
|
27271
27521
|
dest: '/index.html',
|
27272
27522
|
},
|
27273
27523
|
],
|
27524
|
+
defaultRewrites: [
|
27525
|
+
{
|
27526
|
+
source: '/(.*)',
|
27527
|
+
destination: '/index.html',
|
27528
|
+
regex: '/(.*)',
|
27529
|
+
},
|
27530
|
+
],
|
27274
27531
|
},
|
27275
27532
|
{
|
27276
27533
|
name: 'Sapper',
|
@@ -27306,6 +27563,7 @@ exports.frameworks = [
|
|
27306
27563
|
dependency: 'sapper',
|
27307
27564
|
devCommand: 'sapper dev --port $PORT',
|
27308
27565
|
buildCommand: 'sapper export',
|
27566
|
+
getFsOutputDir: async () => '__sapper__/export',
|
27309
27567
|
getOutputDirName: async () => '__sapper__/export',
|
27310
27568
|
},
|
27311
27569
|
{
|
@@ -27342,6 +27600,7 @@ exports.frameworks = [
|
|
27342
27600
|
dependency: 'saber',
|
27343
27601
|
devCommand: 'saber --port $PORT',
|
27344
27602
|
buildCommand: 'saber build',
|
27603
|
+
getFsOutputDir: async () => 'public',
|
27345
27604
|
getOutputDirName: async () => 'public',
|
27346
27605
|
defaultRoutes: [
|
27347
27606
|
{
|
@@ -27357,6 +27616,23 @@ exports.frameworks = [
|
|
27357
27616
|
dest: '404.html',
|
27358
27617
|
},
|
27359
27618
|
],
|
27619
|
+
defaultHeaders: [
|
27620
|
+
{
|
27621
|
+
source: '/_saber/.*',
|
27622
|
+
regex: '/_saber/.*',
|
27623
|
+
headers: [
|
27624
|
+
{ key: 'cache-control', value: 'max-age=31536000, immutable' },
|
27625
|
+
],
|
27626
|
+
},
|
27627
|
+
],
|
27628
|
+
defaultRedirects: [
|
27629
|
+
{
|
27630
|
+
source: '.*',
|
27631
|
+
statusCode: 404,
|
27632
|
+
destination: '404.html',
|
27633
|
+
regex: '.*',
|
27634
|
+
},
|
27635
|
+
],
|
27360
27636
|
},
|
27361
27637
|
{
|
27362
27638
|
name: 'Stencil',
|
@@ -27392,6 +27668,7 @@ exports.frameworks = [
|
|
27392
27668
|
dependency: '@stencil/core',
|
27393
27669
|
devCommand: 'stencil build --dev --watch --serve --port $PORT',
|
27394
27670
|
buildCommand: 'stencil build',
|
27671
|
+
getFsOutputDir: async () => 'www',
|
27395
27672
|
getOutputDirName: async () => 'www',
|
27396
27673
|
defaultRoutes: [
|
27397
27674
|
{
|
@@ -27417,6 +27694,32 @@ exports.frameworks = [
|
|
27417
27694
|
dest: '/index.html',
|
27418
27695
|
},
|
27419
27696
|
],
|
27697
|
+
defaultHeaders: [
|
27698
|
+
{
|
27699
|
+
source: '/assets/(.*)',
|
27700
|
+
regex: '/assets/(.*)',
|
27701
|
+
headers: [{ key: 'cache-control', value: 'max-age=2592000' }],
|
27702
|
+
},
|
27703
|
+
{
|
27704
|
+
source: '/build/p-.*',
|
27705
|
+
regex: '/build/p-.*',
|
27706
|
+
headers: [
|
27707
|
+
{ key: 'cache-control', value: 'max-age=31536000, immutable' },
|
27708
|
+
],
|
27709
|
+
},
|
27710
|
+
{
|
27711
|
+
source: '/sw.js',
|
27712
|
+
regex: '/sw.js',
|
27713
|
+
headers: [{ key: 'cache-control', value: 'no-cache' }],
|
27714
|
+
},
|
27715
|
+
],
|
27716
|
+
defaultRewrites: [
|
27717
|
+
{
|
27718
|
+
source: '/(.*)',
|
27719
|
+
destination: '/index.html',
|
27720
|
+
regex: '/(.*)',
|
27721
|
+
},
|
27722
|
+
],
|
27420
27723
|
},
|
27421
27724
|
{
|
27422
27725
|
name: 'Nuxt.js',
|
@@ -27452,6 +27755,7 @@ exports.frameworks = [
|
|
27452
27755
|
dependency: 'nuxt',
|
27453
27756
|
devCommand: 'nuxt',
|
27454
27757
|
buildCommand: 'nuxt generate',
|
27758
|
+
getFsOutputDir: async () => '.output',
|
27455
27759
|
getOutputDirName: async () => 'dist',
|
27456
27760
|
cachePattern: '.nuxt/**',
|
27457
27761
|
defaultRoutes: [
|
@@ -27510,6 +27814,7 @@ exports.frameworks = [
|
|
27510
27814
|
},
|
27511
27815
|
devCommand: 'yarn rw dev --fwd="--port=$PORT --open=false',
|
27512
27816
|
buildCommand: 'yarn rw deploy vercel',
|
27817
|
+
getFsOutputDir: async () => 'public',
|
27513
27818
|
getOutputDirName: async () => 'public',
|
27514
27819
|
},
|
27515
27820
|
{
|
@@ -27554,6 +27859,12 @@ exports.frameworks = [
|
|
27554
27859
|
},
|
27555
27860
|
devCommand: 'hugo server -D -w -p $PORT',
|
27556
27861
|
buildCommand: 'hugo -D --gc',
|
27862
|
+
getFsOutputDir: async (dirPrefix) => {
|
27863
|
+
const config = await read_config_file_1.readConfigFile(['config.json', 'config.yaml', 'config.toml'].map(fileName => {
|
27864
|
+
return path_1.join(dirPrefix, fileName);
|
27865
|
+
}));
|
27866
|
+
return (config && config.publishDir) || 'public';
|
27867
|
+
},
|
27557
27868
|
getOutputDirName: async (dirPrefix) => {
|
27558
27869
|
const config = await read_config_file_1.readConfigFile(['config.json', 'config.yaml', 'config.toml'].map(fileName => {
|
27559
27870
|
return path_1.join(dirPrefix, fileName);
|
@@ -27594,6 +27905,10 @@ exports.frameworks = [
|
|
27594
27905
|
},
|
27595
27906
|
devCommand: 'bundle exec jekyll serve --watch --port $PORT',
|
27596
27907
|
buildCommand: 'jekyll build',
|
27908
|
+
getFsOutputDir: async (dirPrefix) => {
|
27909
|
+
const config = await read_config_file_1.readConfigFile(path_1.join(dirPrefix, '_config.yml'));
|
27910
|
+
return (config && config.destination) || '_site';
|
27911
|
+
},
|
27597
27912
|
getOutputDirName: async (dirPrefix) => {
|
27598
27913
|
const config = await read_config_file_1.readConfigFile(path_1.join(dirPrefix, '_config.yml'));
|
27599
27914
|
return (config && config.destination) || '_site';
|
@@ -27632,6 +27947,7 @@ exports.frameworks = [
|
|
27632
27947
|
},
|
27633
27948
|
devCommand: 'brunch watch --server --port $PORT',
|
27634
27949
|
buildCommand: 'brunch build --production',
|
27950
|
+
getFsOutputDir: async () => 'public',
|
27635
27951
|
getOutputDirName: async () => 'public',
|
27636
27952
|
},
|
27637
27953
|
{
|
@@ -27666,6 +27982,7 @@ exports.frameworks = [
|
|
27666
27982
|
},
|
27667
27983
|
devCommand: 'bundle exec middleman server -p $PORT',
|
27668
27984
|
buildCommand: 'bundle exec middleman build',
|
27985
|
+
getFsOutputDir: async () => 'build',
|
27669
27986
|
getOutputDirName: async () => 'build',
|
27670
27987
|
cachePattern: '{vendor/bin,vendor/cache,vendor/bundle}/**',
|
27671
27988
|
},
|
@@ -27702,6 +28019,7 @@ exports.frameworks = [
|
|
27702
28019
|
},
|
27703
28020
|
devCommand: 'zola serve --port $PORT',
|
27704
28021
|
buildCommand: 'zola build',
|
28022
|
+
getFsOutputDir: async () => 'public',
|
27705
28023
|
getOutputDirName: async () => 'public',
|
27706
28024
|
defaultVersion: '0.13.0',
|
27707
28025
|
},
|
@@ -27739,13 +28057,69 @@ exports.frameworks = [
|
|
27739
28057
|
dependency: 'vite',
|
27740
28058
|
devCommand: 'vite',
|
27741
28059
|
buildCommand: 'vite build',
|
28060
|
+
getFsOutputDir: async () => 'dist',
|
27742
28061
|
getOutputDirName: async () => 'dist',
|
27743
28062
|
},
|
28063
|
+
{
|
28064
|
+
name: 'Parcel',
|
28065
|
+
slug: 'parcel',
|
28066
|
+
demo: 'https://parcel.examples.vercel.com',
|
28067
|
+
logo: 'https://raw.githubusercontent.com/vercel/vercel/main/packages/frameworks/logos/parcel.png',
|
28068
|
+
tagline: 'Parcel is a zero configuration build tool for the web that scales to projects of any size and complexity.',
|
28069
|
+
description: 'A vanilla web app built with Parcel.',
|
28070
|
+
website: 'https://parceljs.org',
|
28071
|
+
detectors: {
|
28072
|
+
every: [
|
28073
|
+
{
|
28074
|
+
path: 'package.json',
|
28075
|
+
matchContent: '"(dev)?(d|D)ependencies":\\s*{[^}]*"parcel":\\s*".+?"[^}]*}',
|
28076
|
+
},
|
28077
|
+
],
|
28078
|
+
},
|
28079
|
+
settings: {
|
28080
|
+
installCommand: {
|
28081
|
+
placeholder: '`yarn install` or `npm install`',
|
28082
|
+
},
|
28083
|
+
buildCommand: {
|
28084
|
+
placeholder: '`npm run build` or `parcel build`',
|
28085
|
+
},
|
28086
|
+
devCommand: {
|
28087
|
+
placeholder: 'parcel',
|
28088
|
+
},
|
28089
|
+
outputDirectory: {
|
28090
|
+
placeholder: 'dist',
|
28091
|
+
},
|
28092
|
+
},
|
28093
|
+
dependency: 'parcel',
|
28094
|
+
devCommand: 'parcel',
|
28095
|
+
buildCommand: 'parcel build',
|
28096
|
+
getFsOutputDir: async () => 'dist',
|
28097
|
+
getOutputDirName: async () => 'dist',
|
28098
|
+
defaultRoutes: [
|
28099
|
+
{
|
28100
|
+
src: '^/[^./]+\\.[0-9a-f]{8}\\.(css|js|png|jpg|webp|avif|svg)$',
|
28101
|
+
headers: { 'cache-control': 's-maxage=31536000, immutable' },
|
28102
|
+
continue: true,
|
28103
|
+
},
|
28104
|
+
{
|
28105
|
+
handle: 'filesystem',
|
28106
|
+
},
|
28107
|
+
],
|
28108
|
+
defaultHeaders: [
|
28109
|
+
{
|
28110
|
+
source: '^/[^./]+\\.[0-9a-f]{8}\\.(css|js|png|jpg|webp|avif|svg)$',
|
28111
|
+
regex: '^/[^./]+\\.[0-9a-f]{8}\\.(css|js|png|jpg|webp|avif|svg)$',
|
28112
|
+
headers: [
|
28113
|
+
{ key: 'cache-control', value: 's-maxage=31536000, immutable' },
|
28114
|
+
],
|
28115
|
+
},
|
28116
|
+
],
|
28117
|
+
},
|
27744
28118
|
{
|
27745
28119
|
name: 'Other',
|
27746
28120
|
slug: null,
|
27747
28121
|
logo: 'https://raw.githubusercontent.com/vercel/vercel/main/packages/frameworks/logos/other.svg',
|
27748
|
-
description: 'No framework or
|
28122
|
+
description: 'No framework or an unoptimized framework.',
|
27749
28123
|
settings: {
|
27750
28124
|
installCommand: {
|
27751
28125
|
placeholder: '`yarn install` or `npm install`',
|
@@ -27762,6 +28136,22 @@ exports.frameworks = [
|
|
27762
28136
|
},
|
27763
28137
|
devCommand: null,
|
27764
28138
|
buildCommand: null,
|
28139
|
+
getFsOutputDir: async (dirPrefix) => {
|
28140
|
+
// Public if it exists or `.`
|
28141
|
+
let base = 'public';
|
28142
|
+
try {
|
28143
|
+
const location = path_1.join(dirPrefix, base);
|
28144
|
+
const content = await readdir(location, { withFileTypes: true });
|
28145
|
+
// If there is only one file in it that is a dir we'll use it as dist dir
|
28146
|
+
if (content.length === 1 && content[0].isDirectory()) {
|
28147
|
+
return path_1.join(base, content[0].name);
|
28148
|
+
}
|
28149
|
+
}
|
28150
|
+
catch (_error) {
|
28151
|
+
base = '.';
|
28152
|
+
}
|
28153
|
+
return base;
|
28154
|
+
},
|
27765
28155
|
getOutputDirName: async () => 'public',
|
27766
28156
|
},
|
27767
28157
|
];
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@vercel/build-utils",
|
3
|
-
"version": "2.12.3-canary.
|
3
|
+
"version": "2.12.3-canary.14",
|
4
4
|
"license": "MIT",
|
5
5
|
"main": "./dist/index.js",
|
6
6
|
"types": "./dist/index.d.js",
|
@@ -30,7 +30,7 @@
|
|
30
30
|
"@types/node-fetch": "^2.1.6",
|
31
31
|
"@types/semver": "6.0.0",
|
32
32
|
"@types/yazl": "^2.4.1",
|
33
|
-
"@vercel/frameworks": "0.5.1-canary.
|
33
|
+
"@vercel/frameworks": "0.5.1-canary.10",
|
34
34
|
"@vercel/ncc": "0.24.0",
|
35
35
|
"aggregate-error": "3.0.1",
|
36
36
|
"async-retry": "1.2.3",
|
@@ -49,5 +49,5 @@
|
|
49
49
|
"typescript": "4.3.4",
|
50
50
|
"yazl": "2.4.3"
|
51
51
|
},
|
52
|
-
"gitHead": "
|
52
|
+
"gitHead": "2bf060c70880ac71e50606719a77f2b456e354bc"
|
53
53
|
}
|