API
`@parcel/types`で指定されている残りの型
AST parcel/packages/core/types/index.js:18
プラグイン固有の AST、any
型
type AST = _AST; 参照元
BaseAsset、BundleResult、MutableAsset、Transformer、TransformerResultConfigResult parcel/packages/core/types/index.js:19
型
type ConfigResult = _ConfigResult; 参照元
MultiThreadValidatorConfigResultWithFilePath parcel/packages/core/types/index.js:21
プラグイン固有の設定結果、any
type ConfigResultWithFilePath<T> = {| contents: T, filePath: FilePath, |} 参照元
設定EnvMap parcel/packages/core/types/index.js:26
process.env
型
type EnvMap = typeof process.env; 参照元
InitialParcelOptions、PluginOptionsJSONValue parcel/packages/core/types/index.js:28
型
type JSONValue = null | void | boolean | number | string | Array<JSONValue> | JSONObject; JSONObject parcel/packages/core/types/index.js:38
JSONオブジェクト(マップとして)
type JSONObject = { } 参照元
JSONValue、Meta、ResolveResultPackageName parcel/packages/core/types/index.js:40
型
type PackageName = string; 参照元
Environment、EnvironmentOptions、PackageJSON、PackageTargetDescriptor、RawParcelConfig、RawParcelConfigPipelineFilePath parcel/packages/core/types/index.js:41
型
type FilePath = string; 参照元
BaseAsset、BundleGraph、Config、ConfigResultWithFilePath、Dependency、DependencyOptions、DevDepOptions、File、FileAboveInvalidation、FileInvalidation、HTTPSOptions、InitialParcelOptions、MutableAsset、Namer、PackageJSON、PackageTargetDescriptor、PackagedBundle、PluginOptions、RawParcelConfig、ResolveConfigFn、ResolveConfigWithPathFn、ResolveFn、ResolveResult、ResolvedParcelConfigFile、Resolver、RuntimeAsset、ServerOptions、Target、TargetDescriptor、TransformingProgressEvent、ValidationEventGlob parcel/packages/core/types/index.js:42
型
type Glob = string; 参照元
GlobInvalidation、PackageJSON、RawParcelConfigSemverRange parcel/packages/core/types/index.js:44
型
type SemverRange = string; 参照元
Dependency、DependencyOptions、DevDepOptions、EnginesDependencySpecifier parcel/packages/core/types/index.js:46
Dependencyを参照
型
type DependencySpecifier = string; 参照元
Dependency、DependencyOptions、DevDepOptions、InitialParcelOptionsRawParcelConfigPipeline parcel/packages/core/types/index.js:51
型
type RawParcelConfigPipeline = Array<PackageName>; 参照元
RawParcelConfigHMROptions parcel/packages/core/types/index.js:53
type HMROptions = { port?: number, host?: string, } 参照元
InitialParcelOptions、PluginOptionsRawParcelConfig parcel/packages/core/types/index.js:56
.parcelrcの形式
type RawParcelConfig = {| extends?: PackageName | FilePath | Array<PackageName | FilePath>, resolvers?: RawParcelConfigPipeline, transformers?: {
[Glob]: RawParcelConfigPipeline,
...
}, bundler?: PackageName, namers?: RawParcelConfigPipeline, runtimes?: RawParcelConfigPipeline, packagers?: {
[Glob]: PackageName,
...
}, optimizers?: {
[Glob]: RawParcelConfigPipeline,
...
}, compressors?: {
[Glob]: RawParcelConfigPipeline,
...
}, reporters?: RawParcelConfigPipeline, validators?: {
[Glob]: RawParcelConfigPipeline,
...
}, |} 参照元
ResolvedParcelConfigFileResolvedParcelConfigFile parcel/packages/core/types/index.js:71
すべてのpackage名が解決された.parcelrc
type ResolvedParcelConfigFile = {| ...RawParcelConfig, +filePath: FilePath, +resolveFrom?: FilePath, |} Engines parcel/packages/core/types/index.js:78
pkg#enginesに対応
type Engines = { +browsers?: string | Array<string>, +electron?: SemverRange, +node?: SemverRange, +parcel?: SemverRange, } 参照元
Environment、EnvironmentOptions、InitialParcelOptions、PackageJSON、PackageTargetDescriptorTargetSourceMapOptions parcel/packages/core/types/index.js:87
pkg#targets.*.sourceMapに対応
type TargetSourceMapOptions = {| +sourceRoot?: string, +inline?: boolean, +inlineSources?: boolean, |} 参照元
Environment、EnvironmentOptions、PackageTargetDescriptorTarget parcel/packages/core/types/index.js:96
PackageTargetDescriptorの解析済みバージョン
interface Target { +distEntry: ?FilePath, エントリの出力ファイル名
+distDir: FilePath, 出力フォルダ
+env: Environment, +name: string, +publicUrl: string, +loc: ?SourceLocation, このTargetを作成した場所、例:package.json#main
} 参照元
Bundle、BundleGraph、BundleGroup、CreateBundleOpts、Dependency、MutableBundleGraph、PackageTargetDescriptorEnvironmentContext parcel/packages/core/types/index.js:109
出力が実行される環境(バンドルローダーなどに影響を与える)
型
type EnvironmentContext = 'browser' | 'web-worker' | 'service-worker' | 'worklet' | 'node' | 'electron-main' | 'electron-renderer'; 参照元
Environment、EnvironmentOptions、PackageTargetDescriptorOutputFormat parcel/packages/core/types/index.js:119
バンドル出力のJSモジュール形式
型
type OutputFormat = 'esmodule' | 'commonjs' | 'global'; 参照元
Environment、EnvironmentOptions、InitialParcelOptions、PackageTargetDescriptorPackageTargetDescriptor parcel/packages/core/types/index.js:126
pkg#targets.*の形式
EnvironmentとTargetを参照。
type PackageTargetDescriptor = {| +context?: EnvironmentContext, +engines?: Engines, +includeNodeModules?: boolean | Array<PackageName> | {
[PackageName]: boolean,
...
}, +outputFormat?: OutputFormat, +publicUrl?: string, +distDir?: FilePath, +sourceMap?: boolean | TargetSourceMapOptions, +isLibrary?: boolean, +optimize?: boolean, +scopeHoist?: boolean, +source?: FilePath | Array<FilePath>, |} 参照元
PackageJSON、Target、TargetDescriptorTargetDescriptor parcel/packages/core/types/index.js:148
JS APIを使用する場合のターゲット形式。
(PackageTargetDescriptorと同じだが、distDirが必要。)
type TargetDescriptor = {| ...PackageTargetDescriptor, +distDir: FilePath, +distEntry?: FilePath, |} 参照元
InitialParcelOptionsSourceType parcel/packages/core/types/index.js:154
型
type SourceType = 'script' | 'module'; 参照元
Environment、EnvironmentOptionsEnvironmentOptions parcel/packages/core/types/index.js:159
Environmentの作成時に使用されます(そちらを参照)。
type EnvironmentOptions = {| +context?: EnvironmentContext, +engines?: Engines, +includeNodeModules?: boolean | Array<PackageName> | {
[PackageName]: boolean,
...
}, +outputFormat?: OutputFormat, +sourceType?: SourceType, +isLibrary?: boolean, +shouldOptimize?: boolean, +shouldScopeHoist?: boolean, +sourceMap?: ?TargetSourceMapOptions, +loc?: ?SourceLocation, |} 参照元
DependencyOptions、MutableAsset、RuntimeAsset、TransformerResultVersionMap parcel/packages/core/types/index.js:187
解決済みのbrowserslist、例:
{
edge: '76',
firefox: '67',
chrome: '63',
safari: '11.1',
opera: '50',
}
type VersionMap = { } 参照元
環境EnvironmentFeature parcel/packages/core/types/index.js:192
型
type EnvironmentFeature = 'esmodules' | 'dynamic-import' | 'worker-module' | 'service-worker-module' | 'import-meta-url' | 'arrow-functions'; 参照元
環境Environment parcel/packages/core/types/index.js:203
出力バンドルの環境を定義します
interface Environment { +id: string, +context: EnvironmentContext, +engines: Engines, +includeNodeModules: boolean | Array<PackageName> | {
[PackageName]: boolean,
...
}, すべての/いずれのpackageを含めるか(`true/false`)、含めるpackage名の配列、またはオブジェクト(packageが指定されていない場合、含まれる)。
+outputFormat: OutputFormat, +sourceType: SourceType, +isLibrary: boolean, これがライブラリビルドかどうか(例:少ないローダー)
+shouldOptimize: boolean, 出力を縮小するかどうか。
+shouldScopeHoist: boolean, スコープホーイスティングが有効かどうか。
+sourceMap: ?TargetSourceMapOptions, +loc: ?SourceLocation, isBrowser(): boolean, contextがブラウザコンテキストを指定しているかどうか。
isNode(): boolean, contextがノードコンテキストを指定しているかどうか。
isElectron(): boolean, contextがエレクトロンコンテキストを指定しているかどうか。
isWorker(): boolean, contextがワーカーコンテキストを指定しているかどうか。
isWorklet(): boolean, contextがワークレットコンテキストを指定しているかどうか。
isIsolated(): boolean, contextが独立したコンテキストを指定しているかどうか(ロードされた祖先バンドルにアクセスできない)。
matchesEngines(minVersions: VersionMap, defaultValue?: boolean): boolean, supports(feature: EnvironmentFeature, defaultValue?: boolean): boolean, } 参照元
BaseAsset、Bundle、Config、CreateBundleOpts、Dependency、EnvironmentOptions、PackageTargetDescriptor、Target、TransformerResultPackageDependencies parcel/packages/core/types/index.js:245
pkg#dependencies、pkg#devDependencies、pkg#peerDependenciesのフォーマット
type PackageDependencies = {| |} 参照元
PackageJSONPackageJSON parcel/packages/core/types/index.js:252
package.jsonのフォーマット
type PackageJSON = { name: PackageName, version: Semver, type?: 'module', main?: FilePath, module?: FilePath, types?: FilePath, browser?: FilePath | {
[FilePath]: FilePath | boolean,
...
}, source?: FilePath | Array<FilePath>, alias?: {
[PackageName | FilePath | Glob]: PackageName | FilePath | {|
global: string
|},
...
}, browserslist?: Array<string> | {
[string]: Array<string>
}, engines?: Engines, targets?: {
[string]: PackageTargetDescriptor,
...
}, dependencies?: PackageDependencies, devDependencies?: PackageDependencies, peerDependencies?: PackageDependencies, sideEffects?: boolean | FilePath | Array<FilePath>, bin?: string | {|
[string]: FilePath
|}, } 参照元
設定LogLevel parcel/packages/core/types/index.js:279
型
type LogLevel = 'none' | 'error' | 'warn' | 'info' | 'verbose'; 参照元
InitialParcelOptions、PluginOptionsBuildMode parcel/packages/core/types/index.js:280
型
type BuildMode = 'development' | 'production' | string; 参照元
InitialParcelOptions、PluginOptionsDetailedReportOptions parcel/packages/core/types/index.js:281
type DetailedReportOptions = {| assetsPerBundle?: number, |} 参照元
InitialParcelOptions、PluginOptionsInitialParcelOptions parcel/packages/core/types/index.js:285
type InitialParcelOptions = {| +entries?: FilePath | Array<FilePath>, +config?: DependencySpecifier, +defaultConfig?: DependencySpecifier, +env?: EnvMap, +targets?: ?(Array<string> | {
+[string]: TargetDescriptor,
...
}), +shouldDisableCache?: boolean, +cacheDir?: FilePath, +mode?: BuildMode, +hmrOptions?: ?HMROptions, +shouldContentHash?: boolean, +serveOptions?: InitialServerOptions | false, +shouldAutoInstall?: boolean, +logLevel?: LogLevel, +shouldProfile?: boolean, +shouldPatchConsole?: boolean, +shouldBuildLazily?: boolean, +shouldBundleIncrementally?: boolean, +inputFS?: FileSystem, +outputFS?: FileSystem, +cache?: Cache, +workerFarm?: WorkerFarm, +packageManager?: PackageManager, +detailedReport?: ?DetailedReportOptions, +defaultTargetOptions?: {|
+shouldOptimize?: boolean,
+shouldScopeHoist?: boolean,
+sourceMaps?: boolean,
+publicUrl?: string,
+distDir?: FilePath,
+engines?: Engines,
+outputFormat?: OutputFormat,
+isLibrary?: boolean,
|}, +additionalReporters?: Array<{|
packageName: DependencySpecifier,
resolveFrom: FilePath,
|}>, |} InitialServerOptions parcel/packages/core/types/index.js:332
type InitialServerOptions = {| +publicUrl?: string, +host?: string, +port: number, +https?: HTTPSOptions | boolean, |} 参照元
InitialParcelOptionsPluginOptions parcel/packages/core/types/index.js:339
interface PluginOptions { +mode: BuildMode, +env: EnvMap, +hmrOptions: ?HMROptions, +serveOptions: ServerOptions | false, +shouldBuildLazily: boolean, +shouldAutoInstall: boolean, +logLevel: LogLevel, +projectRoot: FilePath, +cacheDir: FilePath, +inputFS: FileSystem, +outputFS: FileSystem, +packageManager: PackageManager, +instanceId: string, +detailedReport: ?DetailedReportOptions, } 参照元
Bundler、Compressor、DedicatedThreadValidator、MultiThreadValidator、Namer、Optimizer、Packager、Reporter、Resolver、Runtime、TransformerServerOptions parcel/packages/core/types/index.js:356
type ServerOptions = {| +distDir: FilePath, +host?: string, +port: number, +https?: HTTPSOptions | boolean, +publicUrl?: string, |} 参照元
PluginOptionsHTTPSOptions parcel/packages/core/types/index.js:364
type HTTPSOptions = {| +cert: FilePath, +key: FilePath, |} 参照元
InitialServerOptions、ServerOptionsSourceLocation parcel/packages/core/types/index.js:372
ソースロケーションは1ベースです。つまり、行番号と列番号は1から始まります。
type SourceLocation = {| +filePath: string, +start: {|
+line: number,
+column: number,
|}, 包含的
+end: {|
+line: number,
+column: number,
|}, 排他的
|} 参照元
AssetSymbols、Dependency、DependencyOptions、Environment、EnvironmentOptions、MutableAssetSymbols、MutableDependencySymbols、SymbolResolution、Target、TransformerResultMeta parcel/packages/core/types/index.js:389
プラグインが任意のデータを書き込むことができるオブジェクト。
型
type Meta = JSONObject; 参照元
AssetSymbols、BaseAsset、Dependency、DependencyOptions、MutableAssetSymbols、MutableDependencySymbols、TransformerResultSymbol parcel/packages/core/types/index.js:394
アセット内の識別子(おそらくインポート/エクスポート)。
型
type Symbol = string; 参照元
AssetSymbols、BundleGraph、DependencyOptions、ExportSymbolResolution、MutableAssetSymbols、MutableDependencySymbols、SymbolResolution、TransformerResultAssetSymbols parcel/packages/core/types/index.js:399
エクスポート名と対応するアセットのローカル変数名のマップ。
interface AssetSymbols extends Iterable<[Symbol, {|
local: Symbol,
loc: ?SourceLocation,
meta?: ?Meta,
|}]> { +isCleared: boolean, アセットのエクスポートは空ではなく、不明です。これはデフォルトの状態です。
get(exportSymbol: Symbol): ?{|
local: Symbol,
loc: ?SourceLocation,
meta?: ?Meta,
|}, hasExportSymbol(exportSymbol: Symbol): boolean, hasLocalSymbol(local: Symbol): boolean, exportSymbols(): Iterable<Symbol>, } 参照元
BaseAsset、MutableAssetSymbolsMutableAssetSymbols parcel/packages/core/types/index.js:418
interface MutableAssetSymbols extends AssetSymbols { ensure(): void, マップを初期化し、isClearedをfalseに設定します。
set(exportSymbol: Symbol, local: Symbol, loc: ?SourceLocation, meta?: ?Meta): void, delete(exportSymbol: Symbol): void, } 参照元
MutableAssetMutableDependencySymbols parcel/packages/core/types/index.js:435
isWeakの意味:シンボルは親アセット自体では使用されず、単に再エクスポートされます。
interface MutableDependencySymbols extends Iterable<[Symbol, {|
local: Symbol,
loc: ?SourceLocation,
isWeak: boolean,
meta?: ?Meta,
|}]> { ensure(): void, マップを初期化し、isClearedをfalseに設定します。
+isCleared: boolean, インポートであるシンボルは空ではなく、不明です。これはデフォルトの状態です。
get(exportSymbol: Symbol): ?{|
local: Symbol,
loc: ?SourceLocation,
isWeak: boolean,
meta?: ?Meta,
|}, hasExportSymbol(exportSymbol: Symbol): boolean, hasLocalSymbol(local: Symbol): boolean, exportSymbols(): Iterable<Symbol>, set(exportSymbol: Symbol, local: Symbol, loc: ?SourceLocation, isWeak: ?boolean): void, delete(exportSymbol: Symbol): void, } 参照元
DependencyDependencyPriority parcel/packages/core/types/index.js:469
型
type DependencyPriority = 'sync' | 'parallel' | 'lazy'; 参照元
Dependency、DependencyOptions、ResolveResultSpecifierType parcel/packages/core/types/index.js:470
型
type SpecifierType = 'commonjs' | 'esm' | 'url' | 'custom'; 参照元
Dependency、DependencyOptions、ResolveOptionsBundleBehavior parcel/packages/core/types/index.js:644
型
type BundleBehavior = 'inline' | 'isolated'; 参照元
BaseAsset、Bundle、CreateBundleOpts、Dependency、DependencyOptions、MutableAsset、TransformerResultDevDepOptions parcel/packages/core/types/index.js:790
type DevDepOptions = {| specifier: DependencySpecifier, resolveFrom: FilePath, range?: ?SemverRange, additionalInvalidations?: Array<{|
specifier: DependencySpecifier,
resolveFrom: FilePath,
range?: ?SemverRange,
|}>, このdev依存関係が無効になった場合、これらの依存関係も無効にします。これは、Parcelプラグインまたは他の親依存関係が、Nodeのrequireキャッシュ以外のこのdev依存関係に対する独自のキャッシュを持つ場合に便利です。
|} 参照元
設定Stats parcel/packages/core/types/index.js:874
type Stats = {| time: number, size: number, |} 参照元
Asset、PackagedBundleBlob parcel/packages/core/types/index.js:887
型
type Blob = string | Buffer | Readable; 参照元
BundleResult、GenerateOutput、Optimizer、Packager、TransformerResultAsync parcel/packages/core/types/index.js:941
型
type Async<T> = T | Promise<T>; 参照元
Bundler、Compressor、DedicatedThreadValidator、MultiThreadValidator、Namer、Optimizer、Packager、Reporter、Resolver、Runtime、TransformerPackagedBundle parcel/packages/core/types/index.js:1330
interface PackagedBundle extends NamedBundle { +filePath: FilePath, 書き込まれたバンドルの絶対ファイルパス。最終的なコンテンツハッシュが含まれる場合もある。
+stats: Stats, バンドルに関する統計情報。
} 参照元
BuildSuccessEventGlobInvalidation parcel/packages/core/types/index.js:1518
type GlobInvalidation = {| glob: Glob, |} 参照元
FileCreateInvalidationFileInvalidation parcel/packages/core/types/index.js:1522
type FileInvalidation = {| filePath: FilePath, |} 参照元
FileCreateInvalidationFileAboveInvalidation parcel/packages/core/types/index.js:1526
type FileAboveInvalidation = {| fileName: string, aboveFilePath: FilePath, |} 参照元
FileCreateInvalidationFileCreateInvalidation parcel/packages/core/types/index.js:1531
型
type FileCreateInvalidation = FileInvalidation | GlobInvalidation | FileAboveInvalidation; 参照元
Config、MutableAsset、ResolveResultRuntimeAssetPriority parcel/packages/core/types/index.js:1613
型
type RuntimeAssetPriority = 'sync' | 'parallel'; 参照元
RuntimeAssetBundledProgressEvent parcel/packages/core/types/index.js:1826
type BundledProgressEvent = {| +type: 'buildProgress', +phase: 'bundled', +bundleGraph: BundleGraph<NamedBundle>, +changedAssets: Map<string, Asset>, |} 参照元
BuildProgressEventErrorWithCode parcel/packages/core/types/index.js:1923
interface ErrorWithCode extends Error { +code?: string, } AsyncSubscription parcel/packages/core/types/index.js:1931
type AsyncSubscription = {| unsubscribe(): Promise<mixed>, |}