@uniflowed/config 0.34.0 → 0.36.0
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/internal/schema.js +57 -57
- package/package.json +1 -1
package/internal/schema.js
CHANGED
|
@@ -69,10 +69,10 @@ export type TaskArgument = {
|
|
|
69
69
|
export type TaskDefinition =
|
|
70
70
|
| string
|
|
71
71
|
| {
|
|
72
|
-
readonly command: string,
|
|
73
|
-
readonly cwd
|
|
72
|
+
readonly command : string,
|
|
73
|
+
readonly cwd? : string,
|
|
74
74
|
readonly dependsOn?: $ReadOnlyArray<string>,
|
|
75
|
-
readonly env
|
|
75
|
+
readonly env? : { readonly [string]: string },
|
|
76
76
|
// Everything the task reads, as paths or globs from the project root; a
|
|
77
77
|
// pattern beginning `!` excludes. This is the whole of the cache key, so
|
|
78
78
|
// a task that lists nothing is never cached and always runs.
|
|
@@ -217,7 +217,7 @@ export type BuilderSpec = string;
|
|
|
217
217
|
export type PluginEntry =
|
|
218
218
|
| string
|
|
219
219
|
| {
|
|
220
|
-
readonly name: string,
|
|
220
|
+
readonly name : string,
|
|
221
221
|
readonly order?: "pre" | "normal" | "post",
|
|
222
222
|
readonly apply?: "build" | "serve" | "always",
|
|
223
223
|
};
|
|
@@ -240,9 +240,9 @@ export type PluginEntry =
|
|
|
240
240
|
* `307`; both keep the method.
|
|
241
241
|
*/
|
|
242
242
|
export type RouteRedirect = {
|
|
243
|
-
readonly source: string,
|
|
243
|
+
readonly source : string,
|
|
244
244
|
readonly destination: string,
|
|
245
|
-
readonly permanent: boolean,
|
|
245
|
+
readonly permanent : boolean,
|
|
246
246
|
};
|
|
247
247
|
|
|
248
248
|
/**
|
|
@@ -255,7 +255,7 @@ export type RouteRedirect = {
|
|
|
255
255
|
* runs is the destination's.
|
|
256
256
|
*/
|
|
257
257
|
export type RouteRewrite = {
|
|
258
|
-
readonly source: string,
|
|
258
|
+
readonly source : string,
|
|
259
259
|
readonly destination: string,
|
|
260
260
|
};
|
|
261
261
|
|
|
@@ -265,7 +265,7 @@ export type RouteRewrite = {
|
|
|
265
265
|
* same name wins — over the response's own header of that name, too.
|
|
266
266
|
*/
|
|
267
267
|
export type RouteHeaders = {
|
|
268
|
-
readonly source: string,
|
|
268
|
+
readonly source : string,
|
|
269
269
|
readonly headers: { readonly [name: string]: string },
|
|
270
270
|
};
|
|
271
271
|
|
|
@@ -287,7 +287,7 @@ export type RouterTrailingSlash = "never" | "always" | "ignore";
|
|
|
287
287
|
* because a budget is written by hand and read back by a report.
|
|
288
288
|
*/
|
|
289
289
|
export type SizeBudget = {
|
|
290
|
-
readonly max: number | string,
|
|
290
|
+
readonly max : number | string,
|
|
291
291
|
readonly metric?: "raw" | "gzip" | "brotli",
|
|
292
292
|
};
|
|
293
293
|
|
|
@@ -315,11 +315,11 @@ export type SizeBudget = {
|
|
|
315
315
|
* environment — and not the project's own files.
|
|
316
316
|
*/
|
|
317
317
|
export type Permissions = {
|
|
318
|
-
readonly read
|
|
318
|
+
readonly read? : $ReadOnlyArray<string>,
|
|
319
319
|
readonly write?: $ReadOnlyArray<string>,
|
|
320
|
-
readonly net
|
|
321
|
-
readonly env
|
|
322
|
-
readonly run
|
|
320
|
+
readonly net? : $ReadOnlyArray<string>,
|
|
321
|
+
readonly env? : $ReadOnlyArray<string>,
|
|
322
|
+
readonly run? : $ReadOnlyArray<string>,
|
|
323
323
|
};
|
|
324
324
|
|
|
325
325
|
/**
|
|
@@ -330,9 +330,9 @@ export type Permissions = {
|
|
|
330
330
|
* wrong, so the absent case is the one that means nothing is required.
|
|
331
331
|
*/
|
|
332
332
|
export type CoverageThresholds = {
|
|
333
|
-
readonly lines
|
|
333
|
+
readonly lines? : number,
|
|
334
334
|
readonly functions?: number,
|
|
335
|
-
readonly branches
|
|
335
|
+
readonly branches? : number,
|
|
336
336
|
};
|
|
337
337
|
|
|
338
338
|
export type UniflowedConfig = {
|
|
@@ -361,9 +361,9 @@ export type UniflowedConfig = {
|
|
|
361
361
|
readonly devAudit?: boolean,
|
|
362
362
|
readonly axe?: {
|
|
363
363
|
// Run only rules carrying one of these axe tags; every rule when absent.
|
|
364
|
-
readonly tags
|
|
364
|
+
readonly tags? : $ReadOnlyArray<string>,
|
|
365
365
|
readonly disabledRules?: $ReadOnlyArray<string>,
|
|
366
|
-
readonly minImpact
|
|
366
|
+
readonly minImpact? : "minor" | "moderate" | "serious" | "critical",
|
|
367
367
|
},
|
|
368
368
|
},
|
|
369
369
|
readonly app?: {
|
|
@@ -376,7 +376,7 @@ export type UniflowedConfig = {
|
|
|
376
376
|
},
|
|
377
377
|
// Whether the project builds React Server Components at all, and whether
|
|
378
378
|
// a `"use server"` export is wired to an endpoint.
|
|
379
|
-
readonly rsc
|
|
379
|
+
readonly rsc? : boolean,
|
|
380
380
|
readonly serverActions?: boolean,
|
|
381
381
|
// The runtimes the build must satisfy.
|
|
382
382
|
readonly targets?: $ReadOnlyArray<"web" | "react-native" | "server" | "hermes">,
|
|
@@ -385,7 +385,7 @@ export type UniflowedConfig = {
|
|
|
385
385
|
readonly style?: "style-x",
|
|
386
386
|
readonly reactCompiler?: {
|
|
387
387
|
readonly enabled?: boolean,
|
|
388
|
-
readonly mode
|
|
388
|
+
readonly mode? : "syntax",
|
|
389
389
|
},
|
|
390
390
|
readonly markdown?: {
|
|
391
391
|
readonly mdx?: {
|
|
@@ -402,7 +402,7 @@ export type UniflowedConfig = {
|
|
|
402
402
|
readonly enabled?: boolean,
|
|
403
403
|
readonly themes?: {
|
|
404
404
|
readonly light?: string,
|
|
405
|
-
readonly dark
|
|
405
|
+
readonly dark? : string,
|
|
406
406
|
},
|
|
407
407
|
// Grammars beyond the ones a uf project uses by default.
|
|
408
408
|
readonly langs?: $ReadOnlyArray<string>,
|
|
@@ -413,8 +413,8 @@ export type UniflowedConfig = {
|
|
|
413
413
|
readonly enabled?: boolean,
|
|
414
414
|
// The widths a layout asks for. uf emits one variant per width that is
|
|
415
415
|
// not wider than the source, plus one at the source's own width.
|
|
416
|
-
readonly widths
|
|
417
|
-
readonly quality
|
|
416
|
+
readonly widths? : $ReadOnlyArray<number>,
|
|
417
|
+
readonly quality? : number,
|
|
418
418
|
readonly placeholder?: boolean,
|
|
419
419
|
// The remote images `/__uf/image` may fetch, resize and re-encode —
|
|
420
420
|
// Next.js's `images.remotePatterns`, with its four keys and its
|
|
@@ -476,27 +476,27 @@ export type UniflowedConfig = {
|
|
|
476
476
|
},
|
|
477
477
|
},
|
|
478
478
|
readonly runtime?: {
|
|
479
|
-
readonly default
|
|
479
|
+
readonly default? : RuntimeEngine,
|
|
480
480
|
readonly compatibility?: $ReadOnlyArray<RuntimeEngine>,
|
|
481
481
|
readonly capabilityJsHost?: {
|
|
482
|
-
readonly default
|
|
483
|
-
readonly hosts
|
|
482
|
+
readonly default? : CapabilityJsHost,
|
|
483
|
+
readonly hosts? : $ReadOnlyArray<CapabilityJsHost>,
|
|
484
484
|
readonly autoDetect?: boolean,
|
|
485
485
|
},
|
|
486
486
|
readonly deploy?: {
|
|
487
487
|
readonly enabled?: boolean,
|
|
488
488
|
// The target `uf build` writes an artefact for when none is named on
|
|
489
489
|
// the command line; `--adapter` beats it.
|
|
490
|
-
readonly adapter
|
|
490
|
+
readonly adapter? : DeployAdapter,
|
|
491
491
|
readonly adapters?: $ReadOnlyArray<DeployAdapter>,
|
|
492
492
|
},
|
|
493
493
|
},
|
|
494
494
|
readonly router?: {
|
|
495
495
|
// `false` says this project is not a uf application, and is the only way
|
|
496
496
|
// to say it: a library has no routes to scan for.
|
|
497
|
-
readonly enabled
|
|
498
|
-
readonly entry
|
|
499
|
-
readonly root
|
|
497
|
+
readonly enabled? : boolean,
|
|
498
|
+
readonly entry? : string,
|
|
499
|
+
readonly root? : string,
|
|
500
500
|
readonly manifest?: string,
|
|
501
501
|
// Turning the file-system router off is what makes a project a
|
|
502
502
|
// **library** rather than an application, and `uf build` reads it: see
|
|
@@ -535,11 +535,11 @@ export type UniflowedConfig = {
|
|
|
535
535
|
readonly trailingSlash?: RouterTrailingSlash,
|
|
536
536
|
/** HTTPS links explicitly claimed by the iOS and Android applications. */
|
|
537
537
|
readonly nativeLinks?: {|
|
|
538
|
-
readonly origins: $ReadOnlyArray<string>,
|
|
539
|
-
readonly routes: $ReadOnlyArray<string>,
|
|
540
|
-
readonly iosAppIds: $ReadOnlyArray<string>,
|
|
538
|
+
readonly origins : $ReadOnlyArray<string>,
|
|
539
|
+
readonly routes : $ReadOnlyArray<string>,
|
|
540
|
+
readonly iosAppIds : $ReadOnlyArray<string>,
|
|
541
541
|
readonly androidPackage: string,
|
|
542
|
-
readonly androidSha256: $ReadOnlyArray<string>,
|
|
542
|
+
readonly androidSha256 : $ReadOnlyArray<string>,
|
|
543
543
|
|},
|
|
544
544
|
},
|
|
545
545
|
readonly rendering?: {
|
|
@@ -562,7 +562,7 @@ export type UniflowedConfig = {
|
|
|
562
562
|
// clear it. See docs/app/guide/routing and docs/app/guide/cache.
|
|
563
563
|
readonly staleTime?: number,
|
|
564
564
|
readonly cache?: {
|
|
565
|
-
readonly data
|
|
565
|
+
readonly data? : boolean,
|
|
566
566
|
readonly fetch?: boolean,
|
|
567
567
|
readonly route?: boolean,
|
|
568
568
|
// Where cache entries live, and the only thing here that is a *name*
|
|
@@ -583,17 +583,17 @@ export type UniflowedConfig = {
|
|
|
583
583
|
// Size ceilings that fail the build. Unset by default: failing a build
|
|
584
584
|
// nobody asked uf to police is worse than reporting the size.
|
|
585
585
|
readonly budgets?: {
|
|
586
|
-
readonly total
|
|
586
|
+
readonly total? : SizeBudget,
|
|
587
587
|
readonly initialJs?: SizeBudget,
|
|
588
|
-
readonly perRoute
|
|
589
|
-
readonly perAsset
|
|
588
|
+
readonly perRoute? : SizeBudget,
|
|
589
|
+
readonly perAsset? : SizeBudget,
|
|
590
590
|
},
|
|
591
591
|
readonly entries?: $ReadOnlyArray<string>,
|
|
592
|
-
readonly outDir
|
|
592
|
+
readonly outDir? : string,
|
|
593
593
|
// Prerender every route and leave no server bundle behind. Read together
|
|
594
594
|
// with `app.rendering.modes`; see docs/app/reference/config.
|
|
595
595
|
readonly staticBuild?: boolean,
|
|
596
|
-
readonly sourcemap
|
|
596
|
+
readonly sourcemap? : boolean,
|
|
597
597
|
/**
|
|
598
598
|
* What a **library** build writes, for a project whose
|
|
599
599
|
* `app.router.enabled` is false.
|
|
@@ -660,14 +660,14 @@ export type UniflowedConfig = {
|
|
|
660
660
|
readonly module?: string,
|
|
661
661
|
},
|
|
662
662
|
readonly dev?: {
|
|
663
|
-
readonly host
|
|
664
|
-
readonly port
|
|
663
|
+
readonly host? : string,
|
|
664
|
+
readonly port? : number,
|
|
665
665
|
readonly strictPort?: boolean,
|
|
666
666
|
// Which files the dev server may serve. `deny` is evaluated on the
|
|
667
667
|
// canonical path and beats `allow`; see docs/security.md.
|
|
668
668
|
readonly fs?: {
|
|
669
669
|
readonly allow?: $ReadOnlyArray<string>,
|
|
670
|
-
readonly deny
|
|
670
|
+
readonly deny? : $ReadOnlyArray<string>,
|
|
671
671
|
},
|
|
672
672
|
// `--host` refuses to bind a routable address while this is empty: a dev
|
|
673
673
|
// server reachable from the network with no host allow-list is a file
|
|
@@ -687,7 +687,7 @@ export type UniflowedConfig = {
|
|
|
687
687
|
*/
|
|
688
688
|
readonly env?: {
|
|
689
689
|
readonly active?: string,
|
|
690
|
-
readonly files
|
|
690
|
+
readonly files? : $ReadOnlyArray<string>,
|
|
691
691
|
/**
|
|
692
692
|
* Runtimes and package managers by exact version — `{ node: "24.14.0" }`.
|
|
693
693
|
*
|
|
@@ -702,7 +702,7 @@ export type UniflowedConfig = {
|
|
|
702
702
|
},
|
|
703
703
|
readonly fmt?: {
|
|
704
704
|
readonly indentWidth?: number,
|
|
705
|
-
readonly lineWidth
|
|
705
|
+
readonly lineWidth? : number,
|
|
706
706
|
/** Align related match arms, component hook bindings, and object entries. */
|
|
707
707
|
readonly align?: boolean,
|
|
708
708
|
readonly nonFlow?: {
|
|
@@ -718,7 +718,7 @@ export type UniflowedConfig = {
|
|
|
718
718
|
*/
|
|
719
719
|
readonly arguments?: $ReadOnlyArray<string>,
|
|
720
720
|
},
|
|
721
|
-
readonly quotes
|
|
721
|
+
readonly quotes? : "single" | "double",
|
|
722
722
|
readonly semicolons?: boolean,
|
|
723
723
|
/**
|
|
724
724
|
* Paths `uf fmt` leaves alone, on top of the top-level `ignore`.
|
|
@@ -769,14 +769,14 @@ export type UniflowedConfig = {
|
|
|
769
769
|
* `package.json#packageManager` and the lockfile. See `PackageManagerSpec`.
|
|
770
770
|
*/
|
|
771
771
|
readonly packageManager?: PackageManagerSpec,
|
|
772
|
-
readonly permissions
|
|
772
|
+
readonly permissions? : Permissions,
|
|
773
773
|
// Plugins the project adds, appended to uf's own and resolved in the order
|
|
774
774
|
// they are written. A name that names a file is code to run, so `uf_plugin`
|
|
775
775
|
// refuses any that reaches outside the project root.
|
|
776
776
|
readonly plugins?: $ReadOnlyArray<PluginEntry>,
|
|
777
777
|
readonly pm?: {
|
|
778
|
-
readonly lockfile
|
|
779
|
-
readonly storeDir
|
|
778
|
+
readonly lockfile? : "uf.lock",
|
|
779
|
+
readonly storeDir? : string,
|
|
780
780
|
readonly allowLifecycleScripts?: false,
|
|
781
781
|
/**
|
|
782
782
|
* The package manager uf drives, in the spelling that came before the
|
|
@@ -843,11 +843,11 @@ export type UniflowedConfig = {
|
|
|
843
843
|
// no `robots.txt` are written at all, because a build cannot guess the host
|
|
844
844
|
// it will be deployed to and a wrong `<loc>` is worse than a missing one.
|
|
845
845
|
readonly site?: {
|
|
846
|
-
readonly url
|
|
846
|
+
readonly url? : string,
|
|
847
847
|
readonly sitemap?: boolean,
|
|
848
848
|
readonly robots?: {
|
|
849
|
-
readonly enabled
|
|
850
|
-
readonly allow
|
|
849
|
+
readonly enabled? : boolean,
|
|
850
|
+
readonly allow? : $ReadOnlyArray<string>,
|
|
851
851
|
readonly disallow?: $ReadOnlyArray<string>,
|
|
852
852
|
},
|
|
853
853
|
},
|
|
@@ -914,12 +914,12 @@ export type UniflowedConfig = {
|
|
|
914
914
|
* collected, so `enabled: false` plus `--coverage` still gates.
|
|
915
915
|
*/
|
|
916
916
|
readonly coverage?: {
|
|
917
|
-
readonly enabled
|
|
918
|
-
readonly directory
|
|
919
|
-
readonly reporters
|
|
920
|
-
readonly include
|
|
921
|
-
readonly exclude
|
|
922
|
-
readonly thresholds
|
|
917
|
+
readonly enabled? : boolean,
|
|
918
|
+
readonly directory? : string,
|
|
919
|
+
readonly reporters? : $ReadOnlyArray<"text" | "lcov" | "cobertura">,
|
|
920
|
+
readonly include? : $ReadOnlyArray<string>,
|
|
921
|
+
readonly exclude? : $ReadOnlyArray<string>,
|
|
922
|
+
readonly thresholds? : CoverageThresholds,
|
|
923
923
|
readonly perFileThresholds?: CoverageThresholds,
|
|
924
924
|
},
|
|
925
925
|
},
|