@sewing-kit/types
Advanced tools
Comparing version
@@ -11,10 +11,11 @@ import { AsyncSeriesHook, AsyncSeriesWaterfallHook } from 'tapable'; | ||
export interface StepRunner { | ||
exec: typeof execa; | ||
readonly exec: typeof execa; | ||
log(arg: Loggable, level?: LogLevel): void; | ||
run(steps: Step[]): Promise<void>; | ||
} | ||
export interface Step { | ||
label?: Loggable; | ||
indefinite?: boolean; | ||
run(runner: StepRunner): void | Promise<void>; | ||
readonly label?: Loggable; | ||
readonly indefinite?: boolean; | ||
readonly steps?: ReadonlyArray<Step>; | ||
skip(skipped: string[]): boolean; | ||
run?(runner: StepRunner): void | Promise<void>; | ||
} | ||
@@ -30,3 +31,6 @@ export declare enum Env { | ||
BuildProject = 1, | ||
TestProject = 2 | ||
BuildWebApp = 2, | ||
BuildService = 3, | ||
BuildPackage = 4, | ||
TestProject = 5 | ||
} | ||
@@ -38,3 +42,3 @@ export declare const PLUGIN: unique symbol; | ||
readonly [PLUGIN]: true; | ||
readonly composes: readonly Plugin[]; | ||
readonly composes: ReadonlyArray<Plugin>; | ||
} | ||
@@ -50,3 +54,3 @@ export declare enum Runtime { | ||
root: string; | ||
plugins?: readonly Plugin[]; | ||
plugins?: ReadonlyArray<Plugin>; | ||
} | ||
@@ -86,4 +90,11 @@ export interface WebAppCoreOptions { | ||
} | ||
export interface ServiceCoreOptions { | ||
} | ||
export interface ServiceCustomOptions { | ||
} | ||
export interface ServiceOptions extends ServiceCoreOptions, Partial<ServiceCustomOptions> { | ||
} | ||
export interface ServiceCreateOptions extends ProjectCreateOptions { | ||
entry: string; | ||
options?: ServiceOptions; | ||
} | ||
@@ -107,2 +118,18 @@ export interface BuildPackageOptions { | ||
} | ||
export interface BuildServiceConfigurationCustomHooks { | ||
} | ||
export interface BuildServiceConfigurationCoreHooks { | ||
readonly output: AsyncSeriesWaterfallHook<string>; | ||
readonly entries: AsyncSeriesWaterfallHook<string[]>; | ||
readonly extensions: AsyncSeriesWaterfallHook<string[]>; | ||
readonly filename: AsyncSeriesWaterfallHook<string>; | ||
} | ||
export interface BuildServiceConfigurationHooks extends BuildServiceConfigurationCoreHooks, Partial<BuildServiceConfigurationCustomHooks> { | ||
} | ||
export interface BuildServiceHooks { | ||
readonly configure: AsyncSeriesHook<BuildServiceConfigurationHooks>; | ||
readonly steps: AsyncSeriesWaterfallHook<Step[], { | ||
config: BuildServiceConfigurationHooks; | ||
}>; | ||
} | ||
export interface BuildWebAppOptions { | ||
@@ -120,11 +147,11 @@ } | ||
} | ||
export interface ServiceWorkerBuildConfigurationCoreHooks extends BuildBrowserConfigurationCoreHooks { | ||
export interface BuildServiceWorkerConfigurationCoreHooks extends BuildBrowserConfigurationCoreHooks { | ||
} | ||
export interface ServiceWorkerBuildConfigurationCustomHooks extends BuildBrowserConfigurationCustomHooks { | ||
export interface BuildServiceWorkerConfigurationCustomHooks extends BuildBrowserConfigurationCustomHooks { | ||
} | ||
export interface ServiceWorkerBuildConfigurationHooks extends ServiceWorkerBuildConfigurationCoreHooks, Partial<ServiceWorkerBuildConfigurationCustomHooks> { | ||
export interface BuildServiceWorkerConfigurationHooks extends BuildServiceWorkerConfigurationCoreHooks, Partial<BuildServiceWorkerConfigurationCustomHooks> { | ||
} | ||
export interface BuildWebAppHooks { | ||
readonly variants: AsyncSeriesWaterfallHook<Partial<BuildWebAppOptions>[]>; | ||
readonly configure: AsyncSeriesHook<BuildBrowserConfigurationHooks | ServiceWorkerBuildConfigurationHooks, Partial<BuildWebAppOptions>>; | ||
readonly configure: AsyncSeriesHook<BuildBrowserConfigurationHooks | BuildServiceWorkerConfigurationHooks, Partial<BuildWebAppOptions>>; | ||
readonly configureBrowser: AsyncSeriesHook<BuildBrowserConfigurationHooks, Partial<BuildWebAppOptions>>; | ||
@@ -135,3 +162,3 @@ readonly configureServiceWorker: AsyncSeriesHook<BuildBrowserConfigurationHooks, Partial<BuildWebAppOptions>>; | ||
browserConfig: BuildBrowserConfigurationHooks; | ||
serviceWorkerConfig: ServiceWorkerBuildConfigurationHooks; | ||
serviceWorkerConfig: BuildServiceWorkerConfigurationHooks; | ||
}>; | ||
@@ -145,2 +172,68 @@ } | ||
} | ||
export interface DevPackageConfigurationCustomHooks { | ||
} | ||
export interface DevPackageConfigurationCoreHooks { | ||
} | ||
export interface DevPackageConfigurationHooks extends DevPackageConfigurationCoreHooks, Partial<DevPackageConfigurationCustomHooks> { | ||
} | ||
export interface DevPackageStepCustomDetails { | ||
} | ||
export interface DevPackageStepCoreDetails { | ||
readonly config: DevPackageConfigurationHooks; | ||
readonly buildConfig: BuildPackageConfigurationHooks; | ||
} | ||
export interface DevPackageStepDetails extends DevPackageStepCoreDetails, Partial<DevPackageStepCustomDetails> { | ||
} | ||
export interface DevPackageHooks { | ||
readonly configure: AsyncSeriesHook<DevPackageConfigurationHooks>; | ||
readonly details: AsyncSeriesHook<DevPackageStepDetails>; | ||
readonly steps: AsyncSeriesWaterfallHook<Step[], DevPackageStepDetails>; | ||
} | ||
export interface DevServiceConfigurationCustomHooks { | ||
} | ||
export interface DevServiceConfigurationCoreHooks { | ||
readonly ip: AsyncSeriesWaterfallHook<string | undefined>; | ||
readonly port: AsyncSeriesWaterfallHook<number | undefined>; | ||
} | ||
export interface DevServiceConfigurationHooks extends DevServiceConfigurationCoreHooks, Partial<DevServiceConfigurationCustomHooks> { | ||
} | ||
export interface DevServiceStepCustomDetails { | ||
} | ||
export interface DevServiceStepCoreDetails { | ||
readonly config: DevServiceConfigurationHooks; | ||
readonly buildConfig: BuildServiceConfigurationHooks; | ||
} | ||
export interface DevServiceStepDetails extends DevServiceStepCoreDetails, Partial<DevServiceStepCustomDetails> { | ||
} | ||
export interface DevServiceHooks { | ||
readonly configure: AsyncSeriesHook<DevServiceConfigurationHooks>; | ||
readonly details: AsyncSeriesHook<DevServiceStepDetails>; | ||
readonly steps: AsyncSeriesWaterfallHook<Step[], DevServiceStepDetails>; | ||
} | ||
export interface DevWebAppConfigurationCoreHooks { | ||
} | ||
export interface DevWebAppConfigurationCustomHooks { | ||
} | ||
export interface DevWebAppConfigurationHooks extends DevWebAppConfigurationCoreHooks, Partial<DevWebAppConfigurationCustomHooks> { | ||
} | ||
export interface DevWebAppStepCustomDetails { | ||
} | ||
export interface DevWebAppStepCoreDetails { | ||
readonly config: DevWebAppConfigurationHooks; | ||
readonly buildBrowserConfig: BuildBrowserConfigurationHooks; | ||
readonly buildServiceWorkerConfig: BuildServiceWorkerConfigurationHooks; | ||
} | ||
export interface DevWebAppStepDetails extends DevWebAppStepCoreDetails, Partial<DevWebAppStepCustomDetails> { | ||
} | ||
export interface DevWebAppHooks { | ||
readonly configure: AsyncSeriesHook<DevWebAppConfigurationHooks>; | ||
readonly details: AsyncSeriesHook<DevWebAppStepDetails>; | ||
readonly steps: AsyncSeriesWaterfallHook<Step[], DevWebAppStepDetails>; | ||
} | ||
export interface DevRootConfigurationCustomHooks { | ||
} | ||
export interface DevRootConfigurationCoreHooks { | ||
} | ||
export interface DevRootConfigurationHooks extends DevRootConfigurationCoreHooks, Partial<DevRootConfigurationCustomHooks> { | ||
} | ||
export interface LintRootConfigurationCustomHooks { | ||
@@ -147,0 +240,0 @@ } |
@@ -23,3 +23,6 @@ "use strict"; | ||
PluginTarget[PluginTarget["BuildProject"] = 1] = "BuildProject"; | ||
PluginTarget[PluginTarget["TestProject"] = 2] = "TestProject"; | ||
PluginTarget[PluginTarget["BuildWebApp"] = 2] = "BuildWebApp"; | ||
PluginTarget[PluginTarget["BuildService"] = 3] = "BuildService"; | ||
PluginTarget[PluginTarget["BuildPackage"] = 4] = "BuildPackage"; | ||
PluginTarget[PluginTarget["TestProject"] = 5] = "TestProject"; | ||
})(PluginTarget = exports.PluginTarget || (exports.PluginTarget = {})); | ||
@@ -26,0 +29,0 @@ exports.PLUGIN = Symbol('SewingKitPlugin'); |
@@ -1,1 +0,1 @@ | ||
module.exports = require("./build/cjs/index"); | ||
module.exports = require("./src/index"); |
{ | ||
"name": "@sewing-kit/types", | ||
"version": "0.0.1", | ||
"version": "0.0.2", | ||
"sideEffects": false, | ||
@@ -11,5 +11,6 @@ "publishConfig": { | ||
"@types/tapable": "^1.0.4", | ||
"execa": "^2.0.4" | ||
"execa": "^3.4.0", | ||
"tapable": "^1.1.3" | ||
}, | ||
"gitHead": "b92b7a4350e29b5c1500b895558743767617d725" | ||
"gitHead": "1fc44608f952bd67cfe6f98006e1e510ec2ce82b" | ||
} |
157
src/index.ts
@@ -22,11 +22,12 @@ import {AsyncSeriesHook, AsyncSeriesWaterfallHook} from 'tapable'; | ||
export interface StepRunner { | ||
exec: typeof execa; | ||
readonly exec: typeof execa; | ||
log(arg: Loggable, level?: LogLevel): void; | ||
run(steps: Step[]): Promise<void>; | ||
} | ||
export interface Step { | ||
label?: Loggable; | ||
indefinite?: boolean; | ||
run(runner: StepRunner): void | Promise<void>; | ||
readonly label?: Loggable; | ||
readonly indefinite?: boolean; | ||
readonly steps?: ReadonlyArray<Step>; | ||
skip(skipped: string[]): boolean; | ||
run?(runner: StepRunner): void | Promise<void>; | ||
} | ||
@@ -48,2 +49,5 @@ | ||
BuildProject, | ||
BuildWebApp, | ||
BuildService, | ||
BuildPackage, | ||
TestProject, | ||
@@ -58,3 +62,3 @@ } | ||
readonly [PLUGIN]: true; | ||
readonly composes: readonly Plugin[]; | ||
readonly composes: ReadonlyArray<Plugin>; | ||
} | ||
@@ -72,3 +76,3 @@ | ||
root: string; | ||
plugins?: readonly Plugin[]; | ||
plugins?: ReadonlyArray<Plugin>; | ||
} | ||
@@ -113,4 +117,11 @@ | ||
export interface ServiceCoreOptions {} | ||
export interface ServiceCustomOptions {} | ||
export interface ServiceOptions | ||
extends ServiceCoreOptions, | ||
Partial<ServiceCustomOptions> {} | ||
export interface ServiceCreateOptions extends ProjectCreateOptions { | ||
entry: string; | ||
options?: ServiceOptions; | ||
} | ||
@@ -153,2 +164,28 @@ | ||
// SERVICE | ||
export interface BuildServiceConfigurationCustomHooks {} | ||
export interface BuildServiceConfigurationCoreHooks { | ||
readonly output: AsyncSeriesWaterfallHook<string>; | ||
readonly entries: AsyncSeriesWaterfallHook<string[]>; | ||
readonly extensions: AsyncSeriesWaterfallHook<string[]>; | ||
readonly filename: AsyncSeriesWaterfallHook<string>; | ||
} | ||
export interface BuildServiceConfigurationHooks | ||
extends BuildServiceConfigurationCoreHooks, | ||
Partial<BuildServiceConfigurationCustomHooks> {} | ||
export interface BuildServiceHooks { | ||
readonly configure: AsyncSeriesHook<BuildServiceConfigurationHooks>; | ||
readonly steps: AsyncSeriesWaterfallHook< | ||
Step[], | ||
{ | ||
config: BuildServiceConfigurationHooks; | ||
} | ||
>; | ||
} | ||
// WEB APP | ||
@@ -171,11 +208,11 @@ | ||
export interface ServiceWorkerBuildConfigurationCoreHooks | ||
export interface BuildServiceWorkerConfigurationCoreHooks | ||
extends BuildBrowserConfigurationCoreHooks {} | ||
export interface ServiceWorkerBuildConfigurationCustomHooks | ||
export interface BuildServiceWorkerConfigurationCustomHooks | ||
extends BuildBrowserConfigurationCustomHooks {} | ||
export interface ServiceWorkerBuildConfigurationHooks | ||
extends ServiceWorkerBuildConfigurationCoreHooks, | ||
Partial<ServiceWorkerBuildConfigurationCustomHooks> {} | ||
export interface BuildServiceWorkerConfigurationHooks | ||
extends BuildServiceWorkerConfigurationCoreHooks, | ||
Partial<BuildServiceWorkerConfigurationCustomHooks> {} | ||
@@ -186,3 +223,3 @@ export interface BuildWebAppHooks { | ||
readonly configure: AsyncSeriesHook< | ||
BuildBrowserConfigurationHooks | ServiceWorkerBuildConfigurationHooks, | ||
BuildBrowserConfigurationHooks | BuildServiceWorkerConfigurationHooks, | ||
Partial<BuildWebAppOptions> | ||
@@ -204,3 +241,3 @@ >; | ||
browserConfig: BuildBrowserConfigurationHooks; | ||
serviceWorkerConfig: ServiceWorkerBuildConfigurationHooks; | ||
serviceWorkerConfig: BuildServiceWorkerConfigurationHooks; | ||
} | ||
@@ -221,2 +258,94 @@ >; | ||
// ================================================================== | ||
// DEV | ||
// ================================================================== | ||
// PACKAGE | ||
export interface DevPackageConfigurationCustomHooks {} | ||
export interface DevPackageConfigurationCoreHooks {} | ||
export interface DevPackageConfigurationHooks | ||
extends DevPackageConfigurationCoreHooks, | ||
Partial<DevPackageConfigurationCustomHooks> {} | ||
export interface DevPackageStepCustomDetails {} | ||
export interface DevPackageStepCoreDetails { | ||
readonly config: DevPackageConfigurationHooks; | ||
readonly buildConfig: BuildPackageConfigurationHooks; | ||
} | ||
export interface DevPackageStepDetails | ||
extends DevPackageStepCoreDetails, | ||
Partial<DevPackageStepCustomDetails> {} | ||
export interface DevPackageHooks { | ||
readonly configure: AsyncSeriesHook<DevPackageConfigurationHooks>; | ||
readonly details: AsyncSeriesHook<DevPackageStepDetails>; | ||
readonly steps: AsyncSeriesWaterfallHook<Step[], DevPackageStepDetails>; | ||
} | ||
// SERVICE | ||
export interface DevServiceConfigurationCustomHooks {} | ||
export interface DevServiceConfigurationCoreHooks { | ||
readonly ip: AsyncSeriesWaterfallHook<string | undefined>; | ||
readonly port: AsyncSeriesWaterfallHook<number | undefined>; | ||
} | ||
export interface DevServiceConfigurationHooks | ||
extends DevServiceConfigurationCoreHooks, | ||
Partial<DevServiceConfigurationCustomHooks> {} | ||
export interface DevServiceStepCustomDetails {} | ||
export interface DevServiceStepCoreDetails { | ||
readonly config: DevServiceConfigurationHooks; | ||
readonly buildConfig: BuildServiceConfigurationHooks; | ||
} | ||
export interface DevServiceStepDetails | ||
extends DevServiceStepCoreDetails, | ||
Partial<DevServiceStepCustomDetails> {} | ||
export interface DevServiceHooks { | ||
readonly configure: AsyncSeriesHook<DevServiceConfigurationHooks>; | ||
readonly details: AsyncSeriesHook<DevServiceStepDetails>; | ||
readonly steps: AsyncSeriesWaterfallHook<Step[], DevServiceStepDetails>; | ||
} | ||
// WEB APP | ||
export interface DevWebAppConfigurationCoreHooks {} | ||
export interface DevWebAppConfigurationCustomHooks {} | ||
export interface DevWebAppConfigurationHooks | ||
extends DevWebAppConfigurationCoreHooks, | ||
Partial<DevWebAppConfigurationCustomHooks> {} | ||
export interface DevWebAppStepCustomDetails {} | ||
export interface DevWebAppStepCoreDetails { | ||
readonly config: DevWebAppConfigurationHooks; | ||
readonly buildBrowserConfig: BuildBrowserConfigurationHooks; | ||
readonly buildServiceWorkerConfig: BuildServiceWorkerConfigurationHooks; | ||
} | ||
export interface DevWebAppStepDetails | ||
extends DevWebAppStepCoreDetails, | ||
Partial<DevWebAppStepCustomDetails> {} | ||
export interface DevWebAppHooks { | ||
readonly configure: AsyncSeriesHook<DevWebAppConfigurationHooks>; | ||
readonly details: AsyncSeriesHook<DevWebAppStepDetails>; | ||
readonly steps: AsyncSeriesWaterfallHook<Step[], DevWebAppStepDetails>; | ||
} | ||
// ROOT | ||
export interface DevRootConfigurationCustomHooks {} | ||
export interface DevRootConfigurationCoreHooks {} | ||
export interface DevRootConfigurationHooks | ||
extends DevRootConfigurationCoreHooks, | ||
Partial<DevRootConfigurationCustomHooks> {} | ||
// ================================================================== | ||
// LINT | ||
@@ -223,0 +352,0 @@ // ================================================================== |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
256527
-19.56%3
50%9
-18.18%645
-3.73%+ Added
+ Added
+ Added
+ Added
+ Added
- Removed
- Removed
Updated