@codemation/cli 0.0.15 → 0.0.18

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.d.ts CHANGED
@@ -223,6 +223,58 @@ interface PersistedRunState {
223
223
  connectionInvocations?: ReadonlyArray<ConnectionInvocationRecord>;
224
224
  }
225
225
  //#endregion
226
+ //#region ../core/src/events/runEvents.d.ts
227
+ type RunEvent = Readonly<{
228
+ kind: "runCreated";
229
+ runId: RunId;
230
+ workflowId: WorkflowId;
231
+ parent?: ParentExecutionRef;
232
+ at: string;
233
+ }> | Readonly<{
234
+ kind: "runSaved";
235
+ runId: RunId;
236
+ workflowId: WorkflowId;
237
+ parent?: ParentExecutionRef;
238
+ at: string;
239
+ state: PersistedRunState;
240
+ }> | Readonly<{
241
+ kind: "nodeQueued";
242
+ runId: RunId;
243
+ workflowId: WorkflowId;
244
+ parent?: ParentExecutionRef;
245
+ at: string;
246
+ snapshot: NodeExecutionSnapshot;
247
+ }> | Readonly<{
248
+ kind: "nodeStarted";
249
+ runId: RunId;
250
+ workflowId: WorkflowId;
251
+ parent?: ParentExecutionRef;
252
+ at: string;
253
+ snapshot: NodeExecutionSnapshot;
254
+ }> | Readonly<{
255
+ kind: "nodeCompleted";
256
+ runId: RunId;
257
+ workflowId: WorkflowId;
258
+ parent?: ParentExecutionRef;
259
+ at: string;
260
+ snapshot: NodeExecutionSnapshot;
261
+ }> | Readonly<{
262
+ kind: "nodeFailed";
263
+ runId: RunId;
264
+ workflowId: WorkflowId;
265
+ parent?: ParentExecutionRef;
266
+ at: string;
267
+ snapshot: NodeExecutionSnapshot;
268
+ }>;
269
+ //#endregion
270
+ //#region ../core/src/policies/executionLimits/EngineExecutionLimitsPolicy.d.ts
271
+ interface EngineExecutionLimitsPolicyConfig {
272
+ readonly defaultMaxNodeActivations: number;
273
+ readonly hardMaxNodeActivations: number;
274
+ readonly defaultMaxSubworkflowDepth: number;
275
+ readonly hardMaxSubworkflowDepth: number;
276
+ }
277
+ //#endregion
226
278
  //#region ../core/src/contracts/runtimeTypes.d.ts
227
279
  interface NodeExecutionStatePublisher {
228
280
  markQueued(args: {
@@ -288,10 +340,10 @@ interface ExecutionContext {
288
340
  binary: ExecutionBinaryService;
289
341
  getCredential<TSession = unknown>(slotKey: string): Promise<TSession>;
290
342
  }
291
- interface NodeExecutionContext<TConfig extends NodeConfigBase = NodeConfigBase> extends ExecutionContext {
343
+ interface NodeExecutionContext<TConfig$1 extends NodeConfigBase = NodeConfigBase> extends ExecutionContext {
292
344
  nodeId: NodeId;
293
345
  activationId: NodeActivationId;
294
- config: TConfig;
346
+ config: TConfig$1;
295
347
  binary: NodeBinaryAttachmentService;
296
348
  }
297
349
  //#endregion
@@ -460,15 +512,15 @@ interface WorkflowErrorContext {
460
512
  readonly finishedAt: string;
461
513
  }
462
514
  type WorkflowErrorHandlerSpec = TypeToken<WorkflowErrorHandler> | WorkflowErrorHandler;
463
- interface NodeErrorHandlerArgs<TConfig extends NodeConfigBase = NodeConfigBase> {
515
+ interface NodeErrorHandlerArgs<TConfig$1 extends NodeConfigBase = NodeConfigBase> {
464
516
  readonly kind: "single" | "multi";
465
517
  readonly items: Items;
466
518
  readonly inputsByPort: Readonly<Record<InputPortKey, Items>> | undefined;
467
- readonly ctx: NodeExecutionContext<TConfig>;
519
+ readonly ctx: NodeExecutionContext<TConfig$1>;
468
520
  readonly error: Error;
469
521
  }
470
522
  interface NodeErrorHandler {
471
- handle<TConfig extends NodeConfigBase>(args: NodeErrorHandlerArgs<TConfig>): Promise<NodeOutputs>;
523
+ handle<TConfig$1 extends NodeConfigBase>(args: NodeErrorHandlerArgs<TConfig$1>): Promise<NodeOutputs>;
472
524
  }
473
525
  type NodeErrorHandlerSpec = TypeToken<NodeErrorHandler> | NodeErrorHandler;
474
526
  //#endregion
@@ -588,56 +640,15 @@ type CredentialType<TPublicConfig extends CredentialJsonRecord = CredentialJsonR
588
640
  */
589
641
  type AnyCredentialType = CredentialType<any, any, unknown>;
590
642
  //#endregion
591
- //#region ../core/src/events/runEvents.d.ts
592
- type RunEvent = Readonly<{
593
- kind: "runCreated";
594
- runId: RunId;
595
- workflowId: WorkflowId;
596
- parent?: ParentExecutionRef;
597
- at: string;
598
- }> | Readonly<{
599
- kind: "runSaved";
600
- runId: RunId;
601
- workflowId: WorkflowId;
602
- parent?: ParentExecutionRef;
603
- at: string;
604
- state: PersistedRunState;
605
- }> | Readonly<{
606
- kind: "nodeQueued";
607
- runId: RunId;
608
- workflowId: WorkflowId;
609
- parent?: ParentExecutionRef;
610
- at: string;
611
- snapshot: NodeExecutionSnapshot;
612
- }> | Readonly<{
613
- kind: "nodeStarted";
614
- runId: RunId;
615
- workflowId: WorkflowId;
616
- parent?: ParentExecutionRef;
617
- at: string;
618
- snapshot: NodeExecutionSnapshot;
619
- }> | Readonly<{
620
- kind: "nodeCompleted";
621
- runId: RunId;
622
- workflowId: WorkflowId;
623
- parent?: ParentExecutionRef;
624
- at: string;
625
- snapshot: NodeExecutionSnapshot;
626
- }> | Readonly<{
627
- kind: "nodeFailed";
628
- runId: RunId;
629
- workflowId: WorkflowId;
630
- parent?: ParentExecutionRef;
631
- at: string;
632
- snapshot: NodeExecutionSnapshot;
633
- }>;
634
- //#endregion
635
- //#region ../core/src/policies/executionLimits/EngineExecutionLimitsPolicy.d.ts
636
- interface EngineExecutionLimitsPolicyConfig {
637
- readonly defaultMaxNodeActivations: number;
638
- readonly hardMaxNodeActivations: number;
639
- readonly defaultMaxSubworkflowDepth: number;
640
- readonly hardMaxSubworkflowDepth: number;
643
+ //#region ../host/src/application/logging/Logger.d.ts
644
+ interface Logger {
645
+ info(message: string, exception?: Error): void;
646
+ warn(message: string, exception?: Error): void;
647
+ error(message: string, exception?: Error): void;
648
+ debug(message: string, exception?: Error): void;
649
+ }
650
+ interface LoggerFactory {
651
+ create(scope: string): Logger;
641
652
  }
642
653
  //#endregion
643
654
  //#region ../host/src/presentation/config/CodemationClassToken.d.ts
@@ -658,17 +669,6 @@ interface CodemationFactoryRegistration<TValue> extends CodemationContainerRegis
658
669
  }
659
670
  type CodemationContainerRegistration<TValue = unknown> = CodemationValueRegistration<TValue> | CodemationClassRegistration<TValue> | CodemationFactoryRegistration<TValue>;
660
671
  //#endregion
661
- //#region ../host/src/application/logging/Logger.d.ts
662
- interface Logger {
663
- info(message: string, exception?: Error): void;
664
- warn(message: string, exception?: Error): void;
665
- error(message: string, exception?: Error): void;
666
- debug(message: string, exception?: Error): void;
667
- }
668
- interface LoggerFactory {
669
- create(scope: string): Logger;
670
- }
671
- //#endregion
672
672
  //#region ../host/src/presentation/config/CodemationAppContext.d.ts
673
673
  interface CodemationRegistrationContextBase {
674
674
  readonly appConfig?: AppConfig;
@@ -684,22 +684,6 @@ interface CodemationAppContext extends CodemationRegistrationContextBase {
684
684
  discoverWorkflows(...directories: ReadonlyArray<string>): void;
685
685
  }
686
686
  //#endregion
687
- //#region ../host/src/presentation/config/CodemationPlugin.d.ts
688
- interface CodemationPluginContext extends CodemationRegistrationContextBase {
689
- readonly container: Container;
690
- readonly appConfig: AppConfig;
691
- readonly loggerFactory: LoggerFactory;
692
- }
693
- interface CodemationPlugin {
694
- /**
695
- * Optional npm package name for this plugin (e.g. `"@codemation/core-nodes-gmail"`).
696
- * When set, the host merges configured and discovered plugin lists by this id so the same package is not
697
- * registered twice when separate module graphs load duplicate class instances (different `constructor` values).
698
- */
699
- readonly pluginPackageId?: string;
700
- register(context: CodemationPluginContext): void | Promise<void>;
701
- }
702
- //#endregion
703
687
  //#region ../host/src/presentation/config/CodemationAuthConfig.d.ts
704
688
  /**
705
689
  * Consumer-declared authentication profile for the hosted UI + HTTP API.
@@ -841,6 +825,20 @@ interface CodemationConfig {
841
825
  readonly log?: CodemationLogConfig;
842
826
  }
843
827
  //#endregion
828
+ //#region ../host/src/presentation/config/CodemationPlugin.d.ts
829
+ interface CodemationPluginContext extends CodemationRegistrationContextBase {
830
+ readonly container: Container;
831
+ readonly appConfig: AppConfig;
832
+ readonly loggerFactory: LoggerFactory;
833
+ }
834
+ interface CodemationPluginConfig {
835
+ readonly pluginPackageId?: string;
836
+ readonly credentialTypes?: ReadonlyArray<AnyCredentialType>;
837
+ readonly register?: (context: CodemationPluginContext) => void | Promise<void>;
838
+ readonly sandbox?: CodemationConfig;
839
+ }
840
+ type CodemationPlugin = CodemationPluginConfig;
841
+ //#endregion
844
842
  //#region ../host/src/presentation/config/AppConfig.d.ts
845
843
  type AppPersistenceConfig = Readonly<{
846
844
  kind: "none";
@@ -851,6 +849,10 @@ type AppPersistenceConfig = Readonly<{
851
849
  kind: "pglite";
852
850
  dataDir: string;
853
851
  }>;
852
+ type AppPluginLoadSummary = Readonly<{
853
+ packageName: string;
854
+ source: "configured" | "discovered";
855
+ }>;
854
856
  interface AppConfig {
855
857
  readonly consumerRoot: string;
856
858
  readonly repoRoot: string;
@@ -860,6 +862,7 @@ interface AppConfig {
860
862
  readonly containerRegistrations: ReadonlyArray<CodemationContainerRegistration<unknown>>;
861
863
  readonly credentialTypes: ReadonlyArray<AnyCredentialType>;
862
864
  readonly plugins: ReadonlyArray<CodemationPlugin>;
865
+ readonly pluginLoadSummary?: ReadonlyArray<AppPluginLoadSummary>;
863
866
  readonly hasConfiguredCredentialSessionServiceRegistration: boolean;
864
867
  readonly log?: CodemationLogConfig;
865
868
  readonly engineExecutionLimits?: CodemationEngineExecutionLimitsConfig;
@@ -882,6 +885,101 @@ interface AppConfig {
882
885
  readonly webSocketPort: number;
883
886
  readonly webSocketBindHost: string;
884
887
  }
888
+ //#endregion
889
+ //#region ../host/src/infrastructure/config/CodemationPluginRegistrar.d.ts
890
+ declare class CodemationPluginRegistrar {
891
+ apply(args: Readonly<{
892
+ plugins: ReadonlyArray<CodemationPlugin>;
893
+ container: Container;
894
+ appConfig: AppConfig;
895
+ registerCredentialType: (type: AnyCredentialType) => void;
896
+ loggerFactory: LoggerFactory;
897
+ }>): Promise<void>;
898
+ }
899
+ //#endregion
900
+ //#region ../host/src/application/contracts/WorkflowWebsocketMessage.d.ts
901
+ type WorkflowWebsocketMessage = Readonly<{
902
+ kind: "event";
903
+ event: RunEvent;
904
+ }> | Readonly<{
905
+ kind: "workflowChanged";
906
+ workflowId: string;
907
+ }> | Readonly<{
908
+ kind: "devBuildStarted";
909
+ workflowId: string;
910
+ buildVersion?: string;
911
+ }> | Readonly<{
912
+ kind: "devBuildCompleted";
913
+ workflowId: string;
914
+ buildVersion: string;
915
+ }> | Readonly<{
916
+ kind: "devBuildFailed";
917
+ workflowId: string;
918
+ message: string;
919
+ }>;
920
+ //#endregion
921
+ //#region ../host/src/application/websocket/WorkflowWebsocketPublisher.d.ts
922
+ interface WorkflowWebsocketPublisher {
923
+ publishToRoom(roomId: string, message: WorkflowWebsocketMessage): Promise<void>;
924
+ }
925
+ //#endregion
926
+ //#region ../host/src/presentation/websocket/WorkflowWebsocketServer.d.ts
927
+ declare class WorkflowWebsocketServer implements WorkflowWebsocketPublisher {
928
+ private readonly port;
929
+ private readonly bindHost;
930
+ private readonly logger;
931
+ private websocketServer;
932
+ private readonly sockets;
933
+ private readonly roomIdsBySocket;
934
+ private started;
935
+ constructor(port: number, bindHost: string, logger: Logger);
936
+ start(): Promise<void>;
937
+ stop(): Promise<void>;
938
+ publishToRoom(roomId: string, message: WorkflowWebsocketMessage): Promise<void>;
939
+ private connect;
940
+ private handleMessage;
941
+ private awaitListening;
942
+ private closeAfterFailedStart;
943
+ private parseClientMessage;
944
+ }
945
+ //#endregion
946
+ //#region ../host/src/bootstrap/CodemationContainerRegistrationRegistrar.d.ts
947
+ declare class CodemationContainerRegistrationRegistrar {
948
+ apply(container: Container, registrations: ReadonlyArray<CodemationContainerRegistration<unknown>>): void;
949
+ private applyRegistration;
950
+ private isValueRegistration;
951
+ private isClassRegistration;
952
+ }
953
+ //#endregion
954
+ //#region ../host/src/bootstrap/AppContainerFactory.d.ts
955
+ type AppContainerInputs = Readonly<{
956
+ appConfig: AppConfig;
957
+ sharedWorkflowWebsocketServer: WorkflowWebsocketServer | null;
958
+ }>;
959
+ declare class AppContainerFactory {
960
+ private readonly containerRegistrationRegistrar;
961
+ private readonly pluginRegistrar;
962
+ private static readonly queryHandlers;
963
+ private static readonly commandHandlers;
964
+ private static readonly honoRouteRegistrars;
965
+ constructor(containerRegistrationRegistrar?: CodemationContainerRegistrationRegistrar, pluginRegistrar?: CodemationPluginRegistrar);
966
+ create(inputs: AppContainerInputs): Promise<Container>;
967
+ private collectCredentialTypes;
968
+ private applyPlugins;
969
+ private registerCredentialTypes;
970
+ private registerConfiguredRegistrations;
971
+ private registerCoreInfrastructure;
972
+ private registerRepositoriesAndBuses;
973
+ private registerApplicationServicesAndRoutes;
974
+ private registerOperationalInfrastructure;
975
+ private registerRuntimeInfrastructure;
976
+ private resolvePrismaOwnership;
977
+ private registerRuntimeNodeActivationScheduler;
978
+ private createBinaryStorage;
979
+ private createRuntimeSummary;
980
+ private requireRedisUrl;
981
+ private synchronizeLiveWorkflowRepository;
982
+ }
885
983
  declare namespace client_d_exports {
886
984
  export { Action, Aggregate, AllModelsToStringIndex, AnyNull, AnyNullClass, ApplyOmit, Args, Args_3, BaseDMMF, Bytes, Call, Cast, ClientArg, ClientArgs, ClientBuiltInProp, ClientOptionDef, ClientOtherOps, Compute, ComputeDeep, Count, DMMF, DbNull, DbNullClass, Debug, Decimal, DecimalJsLike, DefaultArgs, DefaultSelection, DevTypeMapDef, DevTypeMapFnDef, DynamicClientExtensionArgs, DynamicClientExtensionThis, DynamicClientExtensionThisBuiltin, DynamicModelExtensionArgs, DynamicModelExtensionFluentApi, DynamicModelExtensionFnResult, DynamicModelExtensionFnResultBase, DynamicModelExtensionFnResultNull, DynamicModelExtensionOperationFn, DynamicModelExtensionThis, DynamicQueryExtensionArgs, DynamicQueryExtensionCb, DynamicQueryExtensionCbArgs, DynamicQueryExtensionCbArgsArgs, DynamicResultExtensionArgs, DynamicResultExtensionData, DynamicResultExtensionNeeds, EmptyToUnknown, Equals, Exact, ExtendsHook, ExtensionArgs, Extensions, ExtractGlobalOmit, FieldRef$1 as FieldRef, Fn, GetAggregateResult, GetBatchResult, GetCountResult, GetFindResult, GetGroupByResult, GetOmit, GetPayloadResult, GetPayloadResultExtensionKeys, GetPayloadResultExtensionObject, GetPrismaClientConfig, GetResult, GetSelect, ITXClientDenyList, InputJsonArray, InputJsonObject, InputJsonValue, InternalArgs, JsArgs, JsInputValue, JsOutputValue, JsPromise, JsonArray, JsonBatchQuery, JsonConvertible, JsonNull, JsonNullClass, JsonObject, JsonQuery, JsonValue, MergeExtArgs, ModelArg, ModelArgs, ModelKey, ModelQueryOptionsCb, ModelQueryOptionsCbArgs, NameArgs, Narrow, Narrowable, NeverToUnknown, NullTypes$1 as NullTypes, ObjectEnumValue, Omission, Omit_2 as Omit, OmitValue, Operation, OperationPayload, Optional, OptionalFlat$1 as OptionalFlat, OptionalKeys, Or$1 as Or, Param, PatchFlat, Path, Payload, PayloadToResult, Pick_2 as Pick, PrismaClientInitializationError, PrismaClientKnownRequestError, PrismaClientOptions, PrismaClientRustPanicError, PrismaClientUnknownRequestError, PrismaClientValidationError, PrismaPromise, PrivateResultType, Public, QueryOptions, QueryOptionsCb, QueryOptionsCbArgs, RawParameters, RawQueryArgs, RawValue, ReadonlyDeep, Record_2 as Record, RenameAndNestPayloadKeys, RequiredExtensionArgs, RequiredKeys$1 as RequiredKeys, Result, ResultArg, ResultArgs, ResultArgsFieldCompute, ResultFieldDefinition, Result_2, Return, RuntimeDataModel, Select, SelectField, SelectablePayloadFields, Selection_2 as Selection, Sql, SqlCommenterContext, SqlCommenterPlugin, SqlCommenterQueryInfo, SqlCommenterSingleQueryInfo, SqlCommenterTags, SqlDriverAdapterFactory, ToTuple, TypeMapCbDef, TypeMapDef, TypedSql, Types, UnknownTypedSql, UnwrapPayload, UnwrapPromise, UnwrapTuple, RequiredExtensionArgs as UserArgs, Value, createParam, defineDmmfProperty, deserializeJsonObject, deserializeRawResult, dmmfToRuntimeDataModel, empty, getPrismaClient, getRuntime, isAnyNull, isDbNull, isJsonNull, isObjectEnumValue, isTypedSql, itxClientDenyList, join, makeStrictEnum, makeTypedQueryFactory, raw, serializeJsonQuery, skip, sqltag, warnOnce };
887
985
  }
@@ -22844,99 +22942,6 @@ declare namespace Prisma {
22844
22942
  export const dmmf: BaseDMMF;
22845
22943
  }
22846
22944
  //#endregion
22847
- //#region ../host/src/infrastructure/config/CodemationPluginRegistrar.d.ts
22848
- declare class CodemationPluginRegistrar {
22849
- apply(args: Readonly<{
22850
- plugins: ReadonlyArray<CodemationPlugin>;
22851
- container: Container;
22852
- appConfig: AppConfig;
22853
- registerCredentialType: (type: AnyCredentialType) => void;
22854
- loggerFactory: LoggerFactory;
22855
- }>): Promise<void>;
22856
- }
22857
- //#endregion
22858
- //#region ../host/src/application/contracts/WorkflowWebsocketMessage.d.ts
22859
- type WorkflowWebsocketMessage = Readonly<{
22860
- kind: "event";
22861
- event: RunEvent;
22862
- }> | Readonly<{
22863
- kind: "workflowChanged";
22864
- workflowId: string;
22865
- }> | Readonly<{
22866
- kind: "devBuildStarted";
22867
- workflowId: string;
22868
- buildVersion?: string;
22869
- }> | Readonly<{
22870
- kind: "devBuildCompleted";
22871
- workflowId: string;
22872
- buildVersion: string;
22873
- }> | Readonly<{
22874
- kind: "devBuildFailed";
22875
- workflowId: string;
22876
- message: string;
22877
- }>;
22878
- //#endregion
22879
- //#region ../host/src/application/websocket/WorkflowWebsocketPublisher.d.ts
22880
- interface WorkflowWebsocketPublisher {
22881
- publishToRoom(roomId: string, message: WorkflowWebsocketMessage): Promise<void>;
22882
- }
22883
- //#endregion
22884
- //#region ../host/src/presentation/websocket/WorkflowWebsocketServer.d.ts
22885
- declare class WorkflowWebsocketServer implements WorkflowWebsocketPublisher {
22886
- private readonly port;
22887
- private readonly bindHost;
22888
- private readonly logger;
22889
- private websocketServer;
22890
- private readonly sockets;
22891
- private readonly roomIdsBySocket;
22892
- private started;
22893
- constructor(port: number, bindHost: string, logger: Logger);
22894
- start(): Promise<void>;
22895
- stop(): Promise<void>;
22896
- publishToRoom(roomId: string, message: WorkflowWebsocketMessage): Promise<void>;
22897
- private connect;
22898
- private handleMessage;
22899
- private awaitListening;
22900
- private closeAfterFailedStart;
22901
- private parseClientMessage;
22902
- }
22903
- //#endregion
22904
- //#region ../host/src/bootstrap/CodemationContainerRegistrationRegistrar.d.ts
22905
- declare class CodemationContainerRegistrationRegistrar {
22906
- apply(container: Container, registrations: ReadonlyArray<CodemationContainerRegistration<unknown>>): void;
22907
- private applyRegistration;
22908
- private isValueRegistration;
22909
- private isClassRegistration;
22910
- }
22911
- //#endregion
22912
- //#region ../host/src/bootstrap/AppContainerFactory.d.ts
22913
- type AppContainerInputs = Readonly<{
22914
- appConfig: AppConfig;
22915
- sharedWorkflowWebsocketServer: WorkflowWebsocketServer | null;
22916
- }>;
22917
- declare class AppContainerFactory {
22918
- private readonly containerRegistrationRegistrar;
22919
- private readonly pluginRegistrar;
22920
- private static readonly honoRouteRegistrars;
22921
- constructor(containerRegistrationRegistrar?: CodemationContainerRegistrationRegistrar, pluginRegistrar?: CodemationPluginRegistrar);
22922
- create(inputs: AppContainerInputs): Promise<Container>;
22923
- private collectCredentialTypes;
22924
- private applyPlugins;
22925
- private registerCredentialTypes;
22926
- private registerConfiguredRegistrations;
22927
- private registerCoreInfrastructure;
22928
- private registerRepositoriesAndBuses;
22929
- private registerApplicationServicesAndRoutes;
22930
- private registerOperationalInfrastructure;
22931
- private registerRuntimeInfrastructure;
22932
- private resolvePrismaOwnership;
22933
- private registerRuntimeNodeActivationScheduler;
22934
- private createBinaryStorage;
22935
- private createRuntimeSummary;
22936
- private requireRedisUrl;
22937
- private synchronizeLiveWorkflowRepository;
22938
- }
22939
- //#endregion
22940
22945
  //#region ../host/src/presentation/config/CodemationConfigNormalizer.d.ts
22941
22946
  type NormalizedCodemationConfig = CodemationConfig & Readonly<{
22942
22947
  containerRegistrations: ReadonlyArray<CodemationContainerRegistration<unknown>>;
@@ -22944,6 +22949,7 @@ type NormalizedCodemationConfig = CodemationConfig & Readonly<{
22944
22949
  //#endregion
22945
22950
  //#region ../host/src/bootstrap/runtime/AppConfigFactory.d.ts
22946
22951
  declare class AppConfigFactory {
22952
+ private readonly pluginPackageMetadata;
22947
22953
  create(args: Readonly<{
22948
22954
  repoRoot: string;
22949
22955
  consumerRoot: string;
@@ -22951,6 +22957,7 @@ declare class AppConfigFactory {
22951
22957
  config: NormalizedCodemationConfig;
22952
22958
  workflowSources: ReadonlyArray<string>;
22953
22959
  }>): AppConfig;
22960
+ private createConfiguredPluginLoadSummary;
22954
22961
  private resolvePersistence;
22955
22962
  private resolveDatabaseKind;
22956
22963
  private resolvePgliteDataDir;
@@ -22961,39 +22968,6 @@ declare class AppConfigFactory {
22961
22968
  private resolveWebSocketPort;
22962
22969
  }
22963
22970
  //#endregion
22964
- //#region ../host/src/presentation/frontend/CodemationFrontendAuthSnapshot.d.ts
22965
- type CodemationFrontendAuthProviderSnapshot = Readonly<{
22966
- id: string;
22967
- name: string;
22968
- }>;
22969
- type CodemationFrontendAuthSnapshot = Readonly<{
22970
- config: CodemationAuthConfig | undefined;
22971
- credentialsEnabled: boolean;
22972
- oauthProviders: ReadonlyArray<CodemationFrontendAuthProviderSnapshot>;
22973
- secret: string | null;
22974
- uiAuthEnabled: boolean;
22975
- }>;
22976
- //#endregion
22977
- //#region ../host/src/presentation/frontend/FrontendAppConfig.d.ts
22978
- /**
22979
- * Frontend-safe projection of host app configuration for packaged Next UI and SSR.
22980
- */
22981
- type FrontendAppConfig = Readonly<{
22982
- auth: CodemationFrontendAuthSnapshot;
22983
- productName: string;
22984
- logoUrl: string | null;
22985
- }>;
22986
- //#endregion
22987
- //#region ../host/src/presentation/config/CodemationPackageManifest.d.ts
22988
- interface CodemationPluginPackageManifest {
22989
- readonly kind: "plugin";
22990
- readonly entry: string;
22991
- readonly exportName?: string;
22992
- }
22993
- interface CodemationPackageManifest {
22994
- readonly plugin?: CodemationPluginPackageManifest;
22995
- }
22996
- //#endregion
22997
22971
  //#region ../host/src/presentation/server/CodemationConsumerConfigLoader.d.ts
22998
22972
  type CodemationConsumerConfigResolution = Readonly<{
22999
22973
  config: NormalizedCodemationConfig;
@@ -23002,6 +22976,7 @@ type CodemationConsumerConfigResolution = Readonly<{
23002
22976
  }>;
23003
22977
  declare class CodemationConsumerConfigLoader {
23004
22978
  private static readonly importerRegistrationsByTsconfig;
22979
+ private static readonly importerNamespaceVersionByTsconfig;
23005
22980
  private readonly configExportsResolver;
23006
22981
  private readonly configNormalizer;
23007
22982
  private readonly workflowModulePathFinder;
@@ -23023,10 +22998,13 @@ declare class CodemationConsumerConfigLoader {
23023
22998
  private resolveTsconfigPath;
23024
22999
  private getOrCreateImporter;
23025
23000
  private resetImporter;
23001
+ private nextNamespaceVersion;
23026
23002
  private toNamespace;
23003
+ private resolveTsxImporterModuleSpecifier;
23027
23004
  private findNearestTsconfig;
23028
23005
  private createImportSpecifier;
23029
23006
  private shouldUseNativeRuntimeImport;
23007
+ private shouldResetImporterBeforeImport;
23030
23008
  private isStoppedTransformServiceError;
23031
23009
  private exists;
23032
23010
  }
@@ -23052,13 +23030,14 @@ declare class AppConfigLoader {
23052
23030
  type CodemationDiscoveredPluginPackage = Readonly<{
23053
23031
  packageName: string;
23054
23032
  packageRoot: string;
23055
- manifest: NonNullable<CodemationPackageManifest["plugin"]>;
23033
+ pluginEntry: string;
23056
23034
  developmentEntry?: string;
23057
23035
  }>;
23058
23036
  type CodemationResolvedPluginPackage = Readonly<CodemationDiscoveredPluginPackage & {
23059
23037
  plugin: CodemationPlugin;
23060
23038
  }>;
23061
23039
  declare class CodemationPluginDiscovery {
23040
+ private readonly pluginPackageMetadata;
23062
23041
  discover(consumerRoot: string): Promise<ReadonlyArray<CodemationDiscoveredPluginPackage>>;
23063
23042
  resolvePlugins(consumerRoot: string): Promise<ReadonlyArray<CodemationResolvedPluginPackage>>;
23064
23043
  resolveDiscoveredPackages(discoveredPackages: ReadonlyArray<CodemationDiscoveredPluginPackage>): Promise<ReadonlyArray<CodemationResolvedPluginPackage>>;
@@ -23066,33 +23045,11 @@ declare class CodemationPluginDiscovery {
23066
23045
  private readPackageJson;
23067
23046
  private loadPlugin;
23068
23047
  private resolvePluginValue;
23069
- private isPlugin;
23070
- private isPluginConstructor;
23048
+ private isPluginConfig;
23071
23049
  private resolvePluginEntry;
23072
23050
  private resolveDevelopmentPluginEntry;
23073
- }
23074
- //#endregion
23075
- //#region ../host/src/presentation/frontend/CodemationFrontendAuthSnapshotFactory.d.ts
23076
- declare class CodemationFrontendAuthSnapshotFactory {
23077
- createFromAppConfig(appConfig: AppConfig): CodemationFrontendAuthSnapshot;
23078
- createFromResolvedInputs(args: Readonly<{
23079
- authConfig: CodemationAuthConfig | undefined;
23080
- env: NodeJS.ProcessEnv;
23081
- uiAuthEnabled: boolean;
23082
- }>): CodemationFrontendAuthSnapshot;
23083
- private resolveUiAuthEnabled;
23084
- private resolveAuthSecret;
23085
- private createOauthProviders;
23086
- private createOAuthProvider;
23087
- private createOidcProvider;
23088
- }
23089
- //#endregion
23090
- //#region ../host/src/presentation/frontend/FrontendAppConfigJsonCodec.d.ts
23091
- declare class FrontendAppConfigJsonCodec {
23092
- serialize(config: FrontendAppConfig): string;
23093
- deserialize(serialized: string | undefined): FrontendAppConfig | null;
23094
- private resolveAuthConfig;
23095
- private resolveOauthProviders;
23051
+ private exists;
23052
+ private resolvePluginModuleSpecifier;
23096
23053
  }
23097
23054
  //#endregion
23098
23055
  //#region src/bootstrap/CodemationCliApplicationSession.d.ts
@@ -23152,6 +23109,10 @@ type DevBootstrapSummaryJson = Readonly<{
23152
23109
  id: string;
23153
23110
  name: string;
23154
23111
  }>>;
23112
+ plugins: ReadonlyArray<Readonly<{
23113
+ packageName: string;
23114
+ source: "configured" | "discovered";
23115
+ }>>;
23155
23116
  }>;
23156
23117
  //#endregion
23157
23118
  //#region src/consumer/ConsumerOutputBuilder.d.ts
@@ -23169,6 +23130,7 @@ type ConsumerOutputBuildSnapshot = Readonly<{
23169
23130
  }>;
23170
23131
  declare class ConsumerOutputBuilder {
23171
23132
  private readonly consumerRoot;
23133
+ private readonly configPathOverride?;
23172
23134
  private static readonly ignoredDirectoryNames;
23173
23135
  private static readonly supportedSourceExtensions;
23174
23136
  private static readonly watchBuildDebounceMs;
@@ -23185,7 +23147,7 @@ declare class ConsumerOutputBuilder {
23185
23147
  private lastIssuedBuildVersion;
23186
23148
  private readonly log;
23187
23149
  private readonly buildOptions;
23188
- constructor(consumerRoot: string, logOverride?: Logger, buildOptionsOverride?: ConsumerBuildOptions);
23150
+ constructor(consumerRoot: string, logOverride?: Logger, buildOptionsOverride?: ConsumerBuildOptions, configPathOverride?: string | undefined);
23189
23151
  ensureBuilt(): Promise<ConsumerOutputBuildSnapshot>;
23190
23152
  /**
23191
23153
  * Stops the chokidar watcher and clears debounce timers. Safe to call when not watching.
@@ -23213,6 +23175,7 @@ declare class ConsumerOutputBuilder {
23213
23175
  private shouldCopyAssetPath;
23214
23176
  private copyAssetFile;
23215
23177
  private emitSourceFile;
23178
+ private emitConfigSourceFile;
23216
23179
  private createCompilerOptions;
23217
23180
  private writeEntryFile;
23218
23181
  private rewriteRelativeImportSpecifiers;
@@ -23262,11 +23225,16 @@ declare class ConsumerBuildArtifactsPublisher {
23262
23225
  publish(snapshot: ConsumerOutputBuildSnapshot, discoveredPlugins: ReadonlyArray<CodemationDiscoveredPluginPackage>): Promise<ConsumerBuildManifest>;
23263
23226
  private writeDiscoveredPluginsOutput;
23264
23227
  private writeBuildManifest;
23228
+ private resolvePluginEntry;
23265
23229
  }
23266
23230
  //#endregion
23267
- //#region src/consumer/Loader.d.ts
23268
- declare class ConsumerOutputBuilderLoader {
23269
- create(consumerRoot: string, buildOptions: ConsumerBuildOptions): ConsumerOutputBuilder;
23231
+ //#region src/consumer/ConsumerOutputBuilderFactory.d.ts
23232
+ declare class ConsumerOutputBuilderFactory {
23233
+ create(consumerRoot: string, args?: Readonly<{
23234
+ buildOptions?: ConsumerBuildOptions;
23235
+ configPathOverride?: string;
23236
+ logger?: Logger;
23237
+ }>): ConsumerOutputBuilder;
23270
23238
  }
23271
23239
  //#endregion
23272
23240
  //#region src/path/CliPathResolver.d.ts
@@ -23289,11 +23257,11 @@ declare class TypeScriptRuntimeConfigurator {
23289
23257
  declare class BuildCommand {
23290
23258
  private readonly cliLogger;
23291
23259
  private readonly pathResolver;
23260
+ private readonly consumerOutputBuilderFactory;
23292
23261
  private readonly pluginDiscovery;
23293
- private readonly artifactsPublisher;
23262
+ private readonly consumerBuildArtifactsPublisher;
23294
23263
  private readonly tsRuntime;
23295
- private readonly outputBuilderLoader;
23296
- constructor(cliLogger: Logger, pathResolver: CliPathResolver, pluginDiscovery: CodemationPluginDiscovery, artifactsPublisher: ConsumerBuildArtifactsPublisher, tsRuntime: TypeScriptRuntimeConfigurator, outputBuilderLoader: ConsumerOutputBuilderLoader);
23264
+ constructor(cliLogger: Logger, pathResolver: CliPathResolver, consumerOutputBuilderFactory: ConsumerOutputBuilderFactory, pluginDiscovery: CodemationPluginDiscovery, consumerBuildArtifactsPublisher: ConsumerBuildArtifactsPublisher, tsRuntime: TypeScriptRuntimeConfigurator);
23297
23265
  execute(consumerRoot: string, buildOptions: ConsumerBuildOptions): Promise<void>;
23298
23266
  }
23299
23267
  //#endregion
@@ -23388,6 +23356,7 @@ declare class LoopbackPortAllocator {
23388
23356
  //#endregion
23389
23357
  //#region src/dev/DevApiRuntimeTypes.d.ts
23390
23358
  type DevApiRuntimeFactoryArgs = Readonly<{
23359
+ configPathOverride?: string;
23391
23360
  consumerRoot: string;
23392
23361
  env: NodeJS.ProcessEnv;
23393
23362
  runtimeWorkingDirectory: string;
@@ -23422,8 +23391,12 @@ declare class ListenPortConflictDescriber {
23422
23391
  private readonly platform;
23423
23392
  constructor(platform?: NodeJS.Platform);
23424
23393
  describeLoopbackPort(port: number): Promise<string | null>;
23394
+ private resolveLoopbackOccupants;
23425
23395
  private readLsofOutput;
23426
23396
  private parseLsofOutput;
23397
+ private readSsOutput;
23398
+ private execFileStdout;
23399
+ private parseSsListenOutput;
23427
23400
  }
23428
23401
  //#endregion
23429
23402
  //#region src/dev/CliDevProxyServer.d.ts
@@ -23461,6 +23434,7 @@ declare class CliDevProxyServer {
23461
23434
  private handleHttpRequest;
23462
23435
  private handleUpgrade;
23463
23436
  private safePathname;
23437
+ private extractOccupyingPids;
23464
23438
  private rejectListenError;
23465
23439
  private broadcastDev;
23466
23440
  private broadcastWorkflowLifecycleToSubscribedRooms;
@@ -23507,21 +23481,7 @@ declare class DevCliBannerRenderer {
23507
23481
  private renderFigletTitle;
23508
23482
  private buildDetailBody;
23509
23483
  private buildActiveWorkflowsSection;
23510
- }
23511
- //#endregion
23512
- //#region src/dev/DevConsumerPublishBootstrap.d.ts
23513
- /**
23514
- * Ensures `.codemation/output/current.json` and transpiled consumer config exist before the Next host boots.
23515
- * Without this, `codemation dev` can serve a stale built `codemation.config.js` (e.g. missing whitelabel).
23516
- */
23517
- declare class DevConsumerPublishBootstrap {
23518
- private readonly cliLogger;
23519
- private readonly pluginDiscovery;
23520
- private readonly artifactsPublisher;
23521
- private readonly outputBuilderLoader;
23522
- private readonly buildOptionsParser;
23523
- constructor(cliLogger: Logger, pluginDiscovery: CodemationPluginDiscovery, artifactsPublisher: ConsumerBuildArtifactsPublisher, outputBuilderLoader: ConsumerOutputBuilderLoader, buildOptionsParser: ConsumerBuildOptionsParser);
23524
- ensurePublished(paths: CliPaths): Promise<void>;
23484
+ private buildPluginsSection;
23525
23485
  }
23526
23486
  //#endregion
23527
23487
  //#region src/dev/ConsumerEnvDotenvFilePredicate.d.ts
@@ -23536,7 +23496,7 @@ declare class ConsumerEnvDotenvFilePredicate {
23536
23496
  //#region src/dev/DevRebuildQueue.d.ts
23537
23497
  type DevRebuildRequest = Readonly<{
23538
23498
  changedPaths: ReadonlyArray<string>;
23539
- shouldRepublishConsumerOutput: boolean;
23499
+ configPathOverride?: string;
23540
23500
  shouldRestartUi: boolean;
23541
23501
  }>;
23542
23502
  interface DevRebuildHandler {
@@ -23578,22 +23538,6 @@ declare class SourceMapNodeOptions {
23578
23538
  appendToNodeOptions(existingNodeOptions: string | undefined): string;
23579
23539
  }
23580
23540
  //#endregion
23581
- //#region src/dev/DevAuthSettingsLoader.d.ts
23582
- type DevResolvedAuthSettings = Readonly<{
23583
- authConfigJson: string;
23584
- authSecret: string;
23585
- skipUiAuth: boolean;
23586
- }>;
23587
- declare class DevAuthSettingsLoader {
23588
- private readonly configLoader;
23589
- private readonly consumerEnvLoader;
23590
- static readonly defaultDevelopmentAuthSecret = "codemation-dev-auth-secret-not-for-production";
23591
- constructor(configLoader: CodemationConsumerConfigLoader, consumerEnvLoader: ConsumerEnvLoader);
23592
- resolveDevelopmentServerToken(rawToken: string | undefined): string;
23593
- loadForConsumer(consumerRoot: string): Promise<DevResolvedAuthSettings>;
23594
- resolveDevelopmentAuthSecret(env: NodeJS.ProcessEnv): string;
23595
- }
23596
- //#endregion
23597
23541
  //#region src/dev/DevHttpProbe.d.ts
23598
23542
  declare class DevHttpProbe {
23599
23543
  waitUntilUrlRespondsOk(url: string): Promise<void>;
@@ -23609,12 +23553,11 @@ declare class DevHttpProbe {
23609
23553
  declare class DevNextHostEnvironmentBuilder {
23610
23554
  private readonly consumerEnvLoader;
23611
23555
  private readonly sourceMapNodeOptions;
23612
- private readonly frontendAuthSnapshotFactory;
23613
- private readonly frontendAppConfigJsonCodec;
23614
- constructor(consumerEnvLoader: ConsumerEnvLoader, sourceMapNodeOptions: SourceMapNodeOptions, frontendAuthSnapshotFactory?: CodemationFrontendAuthSnapshotFactory, frontendAppConfigJsonCodec?: FrontendAppConfigJsonCodec);
23556
+ constructor(consumerEnvLoader: ConsumerEnvLoader, sourceMapNodeOptions: SourceMapNodeOptions);
23615
23557
  buildConsumerUiProxy(args: Readonly<{
23616
- authConfigJson: string;
23617
23558
  authSecret: string;
23559
+ configPathOverride?: string;
23560
+ consumerOutputManifestPath?: string;
23618
23561
  consumerRoot: string;
23619
23562
  developmentServerToken: string;
23620
23563
  nextPort: number;
@@ -23622,21 +23565,19 @@ declare class DevNextHostEnvironmentBuilder {
23622
23565
  runtimeDevUrl: string;
23623
23566
  skipUiAuth: boolean;
23624
23567
  websocketPort: number;
23625
- consumerOutputManifestPath?: string;
23626
23568
  }>): NodeJS.ProcessEnv;
23627
23569
  build(args: Readonly<{
23628
- authConfigJson: string;
23629
23570
  authSecret?: string;
23571
+ configPathOverride?: string;
23572
+ consumerOutputManifestPath?: string;
23630
23573
  consumerRoot: string;
23631
23574
  developmentServerToken: string;
23632
23575
  nextPort: number;
23633
23576
  skipUiAuth: boolean;
23634
23577
  websocketPort: number;
23635
23578
  runtimeDevUrl?: string;
23636
- /** Same manifest as `codemation build` / serve-web so @codemation/next-host can load consumer config (whitelabel, etc.). */
23637
- consumerOutputManifestPath?: string;
23638
23579
  }>): NodeJS.ProcessEnv;
23639
- private parseAuthConfig;
23580
+ private resolvePublicWebsocketPort;
23640
23581
  }
23641
23582
  //#endregion
23642
23583
  //#region src/runtime/ListenPortResolver.d.ts
@@ -23670,11 +23611,8 @@ declare class DevSessionPortsResolver {
23670
23611
  //#endregion
23671
23612
  //#region src/dev/DevSourceChangeClassifier.d.ts
23672
23613
  declare class DevSourceChangeClassifier {
23673
- private static readonly configFileNames;
23674
- shouldRepublishConsumerOutput(args: Readonly<{
23675
- changedPaths: ReadonlyArray<string>;
23676
- consumerRoot: string;
23677
- }>): boolean;
23614
+ private static readonly uiConfigFileNames;
23615
+ private static readonly pluginConfigFileNames;
23678
23616
  requiresUiRestart(args: Readonly<{
23679
23617
  changedPaths: ReadonlyArray<string>;
23680
23618
  consumerRoot: string;
@@ -23683,6 +23621,23 @@ declare class DevSourceChangeClassifier {
23683
23621
  private pathRequiresUiRestart;
23684
23622
  }
23685
23623
  //#endregion
23624
+ //#region src/dev/NextHostEdgeSeedLoader.d.ts
23625
+ type NextHostEdgeSeed = Readonly<{
23626
+ authSecret: string;
23627
+ uiAuthEnabled: boolean;
23628
+ }>;
23629
+ declare class NextHostEdgeSeedLoader {
23630
+ private readonly configLoader;
23631
+ private readonly consumerEnvLoader;
23632
+ static readonly defaultDevelopmentAuthSecret = "codemation-dev-auth-secret-not-for-production";
23633
+ constructor(configLoader: CodemationConsumerConfigLoader, consumerEnvLoader: ConsumerEnvLoader);
23634
+ resolveDevelopmentServerToken(rawToken: string | undefined): string;
23635
+ loadForConsumer(consumerRoot: string, options?: Readonly<{
23636
+ configPathOverride?: string;
23637
+ }>): Promise<NextHostEdgeSeed>;
23638
+ resolveDevelopmentAuthSecret(env: NodeJS.ProcessEnv): string;
23639
+ }
23640
+ //#endregion
23686
23641
  //#region src/dev/WatchRootsResolver.d.ts
23687
23642
  declare class WatchRootsResolver {
23688
23643
  resolve(args: Readonly<{
@@ -23702,11 +23657,11 @@ declare class DevSessionServices {
23702
23657
  readonly sessionPorts: DevSessionPortsResolver;
23703
23658
  readonly loopbackPortAllocator: LoopbackPortAllocator;
23704
23659
  readonly devHttpProbe: DevHttpProbe;
23705
- readonly devAuthLoader: DevAuthSettingsLoader;
23660
+ readonly nextHostEdgeSeedLoader: NextHostEdgeSeedLoader;
23706
23661
  readonly nextHostEnvBuilder: DevNextHostEnvironmentBuilder;
23707
23662
  readonly watchRootsResolver: WatchRootsResolver;
23708
23663
  readonly sourceChangeClassifier: DevSourceChangeClassifier;
23709
- constructor(consumerEnvLoader: ConsumerEnvLoader, sourceMapNodeOptions: SourceMapNodeOptions, sessionPorts: DevSessionPortsResolver, loopbackPortAllocator: LoopbackPortAllocator, devHttpProbe: DevHttpProbe, devAuthLoader: DevAuthSettingsLoader, nextHostEnvBuilder: DevNextHostEnvironmentBuilder, watchRootsResolver: WatchRootsResolver, sourceChangeClassifier: DevSourceChangeClassifier);
23664
+ constructor(consumerEnvLoader: ConsumerEnvLoader, sourceMapNodeOptions: SourceMapNodeOptions, sessionPorts: DevSessionPortsResolver, loopbackPortAllocator: LoopbackPortAllocator, devHttpProbe: DevHttpProbe, nextHostEdgeSeedLoader: NextHostEdgeSeedLoader, nextHostEnvBuilder: DevNextHostEnvironmentBuilder, watchRootsResolver: WatchRootsResolver, sourceChangeClassifier: DevSourceChangeClassifier);
23710
23665
  }
23711
23666
  //#endregion
23712
23667
  //#region src/dev/DevLock.d.ts
@@ -23795,9 +23750,11 @@ declare class DevCommand {
23795
23750
  private readonly cliLogger;
23796
23751
  private readonly session;
23797
23752
  private readonly databaseMigrationsApplyService;
23753
+ private readonly consumerOutputBuilderFactory;
23754
+ private readonly pluginDiscovery;
23755
+ private readonly consumerBuildArtifactsPublisher;
23798
23756
  private readonly devBootstrapSummaryFetcher;
23799
23757
  private readonly devCliBannerRenderer;
23800
- private readonly devConsumerPublishBootstrap;
23801
23758
  private readonly consumerEnvDotenvFilePredicate;
23802
23759
  private readonly devTrackedProcessTreeKiller;
23803
23760
  private readonly nextHostConsumerServerCommandFactory;
@@ -23805,16 +23762,19 @@ declare class DevCommand {
23805
23762
  private readonly cliDevProxyServerFactory;
23806
23763
  private readonly devRebuildQueueFactory;
23807
23764
  private readonly require;
23808
- constructor(pathResolver: CliPathResolver, tsRuntime: TypeScriptRuntimeConfigurator, devLockFactory: DevLockFactory, devSourceWatcherFactory: DevSourceWatcherFactory, cliLogger: Logger, session: DevSessionServices, databaseMigrationsApplyService: DatabaseMigrationsApplyService, devBootstrapSummaryFetcher: DevBootstrapSummaryFetcher, devCliBannerRenderer: DevCliBannerRenderer, devConsumerPublishBootstrap: DevConsumerPublishBootstrap, consumerEnvDotenvFilePredicate: ConsumerEnvDotenvFilePredicate, devTrackedProcessTreeKiller: DevTrackedProcessTreeKiller, nextHostConsumerServerCommandFactory: NextHostConsumerServerCommandFactory, devApiRuntimeFactory: DevApiRuntimeFactory, cliDevProxyServerFactory: CliDevProxyServerFactory, devRebuildQueueFactory: DevRebuildQueueFactory);
23765
+ constructor(pathResolver: CliPathResolver, tsRuntime: TypeScriptRuntimeConfigurator, devLockFactory: DevLockFactory, devSourceWatcherFactory: DevSourceWatcherFactory, cliLogger: Logger, session: DevSessionServices, databaseMigrationsApplyService: DatabaseMigrationsApplyService, consumerOutputBuilderFactory: ConsumerOutputBuilderFactory, pluginDiscovery: CodemationPluginDiscovery, consumerBuildArtifactsPublisher: ConsumerBuildArtifactsPublisher, devBootstrapSummaryFetcher: DevBootstrapSummaryFetcher, devCliBannerRenderer: DevCliBannerRenderer, consumerEnvDotenvFilePredicate: ConsumerEnvDotenvFilePredicate, devTrackedProcessTreeKiller: DevTrackedProcessTreeKiller, nextHostConsumerServerCommandFactory: NextHostConsumerServerCommandFactory, devApiRuntimeFactory: DevApiRuntimeFactory, cliDevProxyServerFactory: CliDevProxyServerFactory, devRebuildQueueFactory: DevRebuildQueueFactory);
23809
23766
  execute(args: Readonly<{
23810
23767
  consumerRoot: string;
23811
23768
  watchFramework?: boolean;
23769
+ commandName?: "dev" | "dev:plugin";
23770
+ configPathOverride?: string;
23812
23771
  }>): Promise<void>;
23813
23772
  private resolveDevMode;
23814
23773
  private prepareDevRuntime;
23815
23774
  private createInitialProcessState;
23816
23775
  private wireStopPromise;
23817
23776
  private gatewayBaseHttpUrl;
23777
+ private preparePackagedUiBaseUrlWhenNeeded;
23818
23778
  private startPackagedUiWhenNeeded;
23819
23779
  private spawnPackagedUi;
23820
23780
  private startProxyServer;
@@ -23832,25 +23792,44 @@ declare class DevCommand {
23832
23792
  private stopLiveProcesses;
23833
23793
  private stopCurrentRuntime;
23834
23794
  private createRuntime;
23795
+ private publishConsumerArtifacts;
23835
23796
  private logPackagedUiDevHintWhenNeeded;
23836
23797
  }
23837
23798
  //#endregion
23799
+ //#region src/dev/PluginDevConfigFactory.d.ts
23800
+ type PluginDevConfigBootstrap = Readonly<{
23801
+ configPath: string;
23802
+ }>;
23803
+ declare class PluginDevConfigFactory {
23804
+ prepare(pluginRoot: string): Promise<PluginDevConfigBootstrap>;
23805
+ private resolvePluginEntryPath;
23806
+ private createConfigSource;
23807
+ private toRelativeImportPath;
23808
+ private exists;
23809
+ }
23810
+ //#endregion
23811
+ //#region src/commands/DevPluginCommand.d.ts
23812
+ declare class DevPluginCommand {
23813
+ private readonly pluginDevConfigFactory;
23814
+ private readonly devCommand;
23815
+ constructor(pluginDevConfigFactory: PluginDevConfigFactory, devCommand: DevCommand);
23816
+ execute(args: Readonly<{
23817
+ pluginRoot: string;
23818
+ watchFramework?: boolean;
23819
+ }>): Promise<void>;
23820
+ }
23821
+ //#endregion
23838
23822
  //#region src/commands/ServeWebCommand.d.ts
23839
23823
  declare class ServeWebCommand {
23840
23824
  private readonly pathResolver;
23841
23825
  private readonly configLoader;
23842
- private readonly pluginDiscovery;
23843
- private readonly artifactsPublisher;
23844
23826
  private readonly tsRuntime;
23845
23827
  private readonly sourceMapNodeOptions;
23846
- private readonly outputBuilderLoader;
23847
23828
  private readonly envLoader;
23848
23829
  private readonly listenPortResolver;
23849
23830
  private readonly nextHostConsumerServerCommandFactory;
23850
- private readonly frontendAuthSnapshotFactory;
23851
- private readonly frontendAppConfigJsonCodec;
23852
23831
  private readonly require;
23853
- constructor(pathResolver: CliPathResolver, configLoader: CodemationConsumerConfigLoader, pluginDiscovery: CodemationPluginDiscovery, artifactsPublisher: ConsumerBuildArtifactsPublisher, tsRuntime: TypeScriptRuntimeConfigurator, sourceMapNodeOptions: SourceMapNodeOptions, outputBuilderLoader: ConsumerOutputBuilderLoader, envLoader: ConsumerEnvLoader, listenPortResolver: ListenPortResolver, nextHostConsumerServerCommandFactory: NextHostConsumerServerCommandFactory, frontendAuthSnapshotFactory: CodemationFrontendAuthSnapshotFactory, frontendAppConfigJsonCodec: FrontendAppConfigJsonCodec);
23832
+ constructor(pathResolver: CliPathResolver, configLoader: CodemationConsumerConfigLoader, tsRuntime: TypeScriptRuntimeConfigurator, sourceMapNodeOptions: SourceMapNodeOptions, envLoader: ConsumerEnvLoader, listenPortResolver: ListenPortResolver, nextHostConsumerServerCommandFactory: NextHostConsumerServerCommandFactory);
23854
23833
  execute(consumerRoot: string, buildOptions: ConsumerBuildOptions): Promise<void>;
23855
23834
  }
23856
23835
  //#endregion
@@ -23935,12 +23914,13 @@ declare class CliProgram {
23935
23914
  private readonly buildOptionsParser;
23936
23915
  private readonly buildCommand;
23937
23916
  private readonly devCommand;
23917
+ private readonly devPluginCommand;
23938
23918
  private readonly serveWebCommand;
23939
23919
  private readonly serveWorkerCommand;
23940
23920
  private readonly dbMigrateCommand;
23941
23921
  private readonly userCreateCommand;
23942
23922
  private readonly userListCommand;
23943
- constructor(buildOptionsParser: ConsumerBuildOptionsParser, buildCommand: BuildCommand, devCommand: DevCommand, serveWebCommand: ServeWebCommand, serveWorkerCommand: ServeWorkerCommand, dbMigrateCommand: DbMigrateCommand, userCreateCommand: UserCreateCommand, userListCommand: UserListCommand);
23923
+ constructor(buildOptionsParser: ConsumerBuildOptionsParser, buildCommand: BuildCommand, devCommand: DevCommand, devPluginCommand: DevPluginCommand, serveWebCommand: ServeWebCommand, serveWorkerCommand: ServeWorkerCommand, dbMigrateCommand: DbMigrateCommand, userCreateCommand: UserCreateCommand, userListCommand: UserListCommand);
23944
23924
  run(argv: ReadonlyArray<string>): Promise<void>;
23945
23925
  private readCliPackageVersion;
23946
23926
  }