@uapkg/cli 1.2.0 → 1.3.1
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/app/CompositionRoot.d.ts +36 -33
- package/dist/app/CompositionRoot.d.ts.map +1 -1
- package/dist/app/CompositionRoot.js +91 -109
- package/dist/app/CompositionRoot.js.map +1 -1
- package/dist/app/UAPKGApplication.d.ts +6 -3
- package/dist/app/UAPKGApplication.d.ts.map +1 -1
- package/dist/app/UAPKGApplication.js +155 -169
- package/dist/app/UAPKGApplication.js.map +1 -1
- package/dist/build/BuildMetadata.d.ts +9 -6
- package/dist/build/BuildMetadata.d.ts.map +1 -1
- package/dist/build/BuildMetadata.js +2 -2
- package/dist/cli/UAPKGCommandLine.d.ts +259 -257
- package/dist/cli/UAPKGCommandLine.d.ts.map +1 -1
- package/dist/cli/UAPKGCommandLine.js +248 -239
- package/dist/cli/UAPKGCommandLine.js.map +1 -1
- package/dist/cli/parseCommandLine.d.ts +5 -1
- package/dist/cli/parseCommandLine.d.ts.map +1 -1
- package/dist/cli/parseCommandLine.js +8 -3
- package/dist/cli/parseCommandLine.js.map +1 -1
- package/dist/cli/parsing/UAPKGCommandLineParser.d.ts +9 -6
- package/dist/cli/parsing/UAPKGCommandLineParser.d.ts.map +1 -1
- package/dist/cli/parsing/UAPKGCommandLineParser.js +23 -31
- package/dist/cli/parsing/UAPKGCommandLineParser.js.map +1 -1
- package/dist/cli/parsing/UAPKGParserRegistry.d.ts +12 -9
- package/dist/cli/parsing/UAPKGParserRegistry.d.ts.map +1 -1
- package/dist/cli/parsing/UAPKGParserRegistry.js +53 -50
- package/dist/cli/parsing/UAPKGParserRegistry.js.map +1 -1
- package/dist/cli/parsing/contracts/UAPKGCommandModule.d.ts +9 -6
- package/dist/cli/parsing/contracts/UAPKGCommandModule.d.ts.map +1 -1
- package/dist/cli/parsing/contracts/UAPKGCommandModule.js +1 -2
- package/dist/cli/parsing/modules/AddCommandModule.d.ts +8 -5
- package/dist/cli/parsing/modules/AddCommandModule.d.ts.map +1 -1
- package/dist/cli/parsing/modules/AddCommandModule.js +49 -36
- package/dist/cli/parsing/modules/AddCommandModule.js.map +1 -1
- package/dist/cli/parsing/modules/ConfigCommandModule.d.ts +8 -5
- package/dist/cli/parsing/modules/ConfigCommandModule.d.ts.map +1 -1
- package/dist/cli/parsing/modules/ConfigCommandModule.js +87 -83
- package/dist/cli/parsing/modules/ConfigCommandModule.js.map +1 -1
- package/dist/cli/parsing/modules/InitCommandModule.d.ts +8 -5
- package/dist/cli/parsing/modules/InitCommandModule.d.ts.map +1 -1
- package/dist/cli/parsing/modules/InitCommandModule.js +25 -22
- package/dist/cli/parsing/modules/InitCommandModule.js.map +1 -1
- package/dist/cli/parsing/modules/InstallCommandModule.d.ts +8 -5
- package/dist/cli/parsing/modules/InstallCommandModule.d.ts.map +1 -1
- package/dist/cli/parsing/modules/InstallCommandModule.js +36 -28
- package/dist/cli/parsing/modules/InstallCommandModule.js.map +1 -1
- package/dist/cli/parsing/modules/LifecycleCommandModule.d.ts +8 -5
- package/dist/cli/parsing/modules/LifecycleCommandModule.d.ts.map +1 -1
- package/dist/cli/parsing/modules/LifecycleCommandModule.js +78 -50
- package/dist/cli/parsing/modules/LifecycleCommandModule.js.map +1 -1
- package/dist/cli/parsing/modules/ListCommandModule.d.ts +8 -5
- package/dist/cli/parsing/modules/ListCommandModule.d.ts.map +1 -1
- package/dist/cli/parsing/modules/ListCommandModule.js +26 -15
- package/dist/cli/parsing/modules/ListCommandModule.js.map +1 -1
- package/dist/cli/parsing/modules/LoginCommandModule.d.ts +8 -5
- package/dist/cli/parsing/modules/LoginCommandModule.d.ts.map +1 -1
- package/dist/cli/parsing/modules/LoginCommandModule.js +34 -33
- package/dist/cli/parsing/modules/LoginCommandModule.js.map +1 -1
- package/dist/cli/parsing/modules/LogoutCommandModule.d.ts +8 -5
- package/dist/cli/parsing/modules/LogoutCommandModule.d.ts.map +1 -1
- package/dist/cli/parsing/modules/LogoutCommandModule.js +30 -28
- package/dist/cli/parsing/modules/LogoutCommandModule.js.map +1 -1
- package/dist/cli/parsing/modules/OutdatedCommandModule.d.ts +8 -5
- package/dist/cli/parsing/modules/OutdatedCommandModule.d.ts.map +1 -1
- package/dist/cli/parsing/modules/OutdatedCommandModule.js +21 -16
- package/dist/cli/parsing/modules/OutdatedCommandModule.js.map +1 -1
- package/dist/cli/parsing/modules/PackCommandModule.d.ts +8 -5
- package/dist/cli/parsing/modules/PackCommandModule.d.ts.map +1 -1
- package/dist/cli/parsing/modules/PackCommandModule.js +30 -28
- package/dist/cli/parsing/modules/PackCommandModule.js.map +1 -1
- package/dist/cli/parsing/modules/ProjectGetNameCommandModule.d.ts +8 -5
- package/dist/cli/parsing/modules/ProjectGetNameCommandModule.d.ts.map +1 -1
- package/dist/cli/parsing/modules/ProjectGetNameCommandModule.js +14 -11
- package/dist/cli/parsing/modules/ProjectGetNameCommandModule.js.map +1 -1
- package/dist/cli/parsing/modules/PublishCommandModule.d.ts +8 -5
- package/dist/cli/parsing/modules/PublishCommandModule.d.ts.map +1 -1
- package/dist/cli/parsing/modules/PublishCommandModule.js +63 -47
- package/dist/cli/parsing/modules/PublishCommandModule.js.map +1 -1
- package/dist/cli/parsing/modules/RegistryCommandModule.d.ts +8 -5
- package/dist/cli/parsing/modules/RegistryCommandModule.d.ts.map +1 -1
- package/dist/cli/parsing/modules/RegistryCommandModule.js +117 -120
- package/dist/cli/parsing/modules/RegistryCommandModule.js.map +1 -1
- package/dist/cli/parsing/modules/RemoveCommandModule.d.ts +8 -5
- package/dist/cli/parsing/modules/RemoveCommandModule.d.ts.map +1 -1
- package/dist/cli/parsing/modules/RemoveCommandModule.js +25 -14
- package/dist/cli/parsing/modules/RemoveCommandModule.js.map +1 -1
- package/dist/cli/parsing/modules/RequestsCommandModule.d.ts +8 -5
- package/dist/cli/parsing/modules/RequestsCommandModule.d.ts.map +1 -1
- package/dist/cli/parsing/modules/RequestsCommandModule.js +56 -60
- package/dist/cli/parsing/modules/RequestsCommandModule.js.map +1 -1
- package/dist/cli/parsing/modules/UpdateCommandModule.d.ts +8 -5
- package/dist/cli/parsing/modules/UpdateCommandModule.d.ts.map +1 -1
- package/dist/cli/parsing/modules/UpdateCommandModule.js +38 -25
- package/dist/cli/parsing/modules/UpdateCommandModule.js.map +1 -1
- package/dist/cli/parsing/modules/WhoamiCommandModule.d.ts +8 -5
- package/dist/cli/parsing/modules/WhoamiCommandModule.d.ts.map +1 -1
- package/dist/cli/parsing/modules/WhoamiCommandModule.js +30 -28
- package/dist/cli/parsing/modules/WhoamiCommandModule.js.map +1 -1
- package/dist/cli/parsing/modules/WhyCommandModule.d.ts +8 -5
- package/dist/cli/parsing/modules/WhyCommandModule.d.ts.map +1 -1
- package/dist/cli/parsing/modules/WhyCommandModule.js +25 -14
- package/dist/cli/parsing/modules/WhyCommandModule.js.map +1 -1
- package/dist/cli/parsing/modules/sharedOptions.d.ts +8 -5
- package/dist/cli/parsing/modules/sharedOptions.d.ts.map +1 -1
- package/dist/cli/parsing/modules/sharedOptions.js +18 -23
- package/dist/cli/parsing/modules/sharedOptions.js.map +1 -1
- package/dist/cli/runUAPKGCLI.d.ts +4 -1
- package/dist/cli/runUAPKGCLI.d.ts.map +1 -1
- package/dist/cli/runUAPKGCLI.js +10 -5
- package/dist/cli/runUAPKGCLI.js.map +1 -1
- package/dist/cli-bootstrap.d.ts +1 -2
- package/dist/cli-bootstrap.js +15 -12
- package/dist/cli-bootstrap.js.map +1 -1
- package/dist/commands/AddCommand.d.ts +19 -16
- package/dist/commands/AddCommand.d.ts.map +1 -1
- package/dist/commands/AddCommand.js +49 -53
- package/dist/commands/AddCommand.js.map +1 -1
- package/dist/commands/Command.d.ts +5 -2
- package/dist/commands/Command.d.ts.map +1 -1
- package/dist/commands/Command.js +1 -2
- package/dist/commands/ConfigCommand.d.ts +28 -25
- package/dist/commands/ConfigCommand.d.ts.map +1 -1
- package/dist/commands/ConfigCommand.js +165 -186
- package/dist/commands/ConfigCommand.js.map +1 -1
- package/dist/commands/InitCommand.d.ts +19 -16
- package/dist/commands/InitCommand.d.ts.map +1 -1
- package/dist/commands/InitCommand.js +65 -60
- package/dist/commands/InitCommand.js.map +1 -1
- package/dist/commands/InstallCommand.d.ts +16 -13
- package/dist/commands/InstallCommand.d.ts.map +1 -1
- package/dist/commands/InstallCommand.js +118 -110
- package/dist/commands/InstallCommand.js.map +1 -1
- package/dist/commands/ListCommand.d.ts +13 -10
- package/dist/commands/ListCommand.d.ts.map +1 -1
- package/dist/commands/ListCommand.js +76 -81
- package/dist/commands/ListCommand.js.map +1 -1
- package/dist/commands/LoginCommand.d.ts +17 -14
- package/dist/commands/LoginCommand.d.ts.map +1 -1
- package/dist/commands/LoginCommand.js +66 -72
- package/dist/commands/LoginCommand.js.map +1 -1
- package/dist/commands/LogoutCommand.d.ts +15 -12
- package/dist/commands/LogoutCommand.d.ts.map +1 -1
- package/dist/commands/LogoutCommand.js +36 -37
- package/dist/commands/LogoutCommand.js.map +1 -1
- package/dist/commands/OutdatedCommand.d.ts +12 -9
- package/dist/commands/OutdatedCommand.d.ts.map +1 -1
- package/dist/commands/OutdatedCommand.js +41 -40
- package/dist/commands/OutdatedCommand.js.map +1 -1
- package/dist/commands/PackCommand.d.ts +13 -10
- package/dist/commands/PackCommand.d.ts.map +1 -1
- package/dist/commands/PackCommand.js +26 -21
- package/dist/commands/PackCommand.js.map +1 -1
- package/dist/commands/PackageLifecycleCommand.d.ts +23 -19
- package/dist/commands/PackageLifecycleCommand.d.ts.map +1 -1
- package/dist/commands/PackageLifecycleCommand.js +144 -129
- package/dist/commands/PackageLifecycleCommand.js.map +1 -1
- package/dist/commands/PostinstallCandidateBuilder.d.ts +11 -8
- package/dist/commands/PostinstallCandidateBuilder.d.ts.map +1 -1
- package/dist/commands/PostinstallCandidateBuilder.js +42 -42
- package/dist/commands/PostinstallCandidateBuilder.js.map +1 -1
- package/dist/commands/ProjectGetNameCommand.d.ts +10 -7
- package/dist/commands/ProjectGetNameCommand.d.ts.map +1 -1
- package/dist/commands/ProjectGetNameCommand.js +25 -25
- package/dist/commands/ProjectGetNameCommand.js.map +1 -1
- package/dist/commands/PublishCommand.d.ts +29 -23
- package/dist/commands/PublishCommand.d.ts.map +1 -1
- package/dist/commands/PublishCommand.js +243 -244
- package/dist/commands/PublishCommand.js.map +1 -1
- package/dist/commands/RegistryCommand.d.ts +38 -35
- package/dist/commands/RegistryCommand.d.ts.map +1 -1
- package/dist/commands/RegistryCommand.js +195 -223
- package/dist/commands/RegistryCommand.js.map +1 -1
- package/dist/commands/RemoveCommand.d.ts +14 -11
- package/dist/commands/RemoveCommand.d.ts.map +1 -1
- package/dist/commands/RemoveCommand.js +47 -54
- package/dist/commands/RemoveCommand.js.map +1 -1
- package/dist/commands/RequestsCommand.d.ts +21 -18
- package/dist/commands/RequestsCommand.d.ts.map +1 -1
- package/dist/commands/RequestsCommand.js +82 -95
- package/dist/commands/RequestsCommand.js.map +1 -1
- package/dist/commands/UpdateCommand.d.ts +29 -26
- package/dist/commands/UpdateCommand.d.ts.map +1 -1
- package/dist/commands/UpdateCommand.js +111 -111
- package/dist/commands/UpdateCommand.js.map +1 -1
- package/dist/commands/WhoamiCommand.d.ts +30 -27
- package/dist/commands/WhoamiCommand.d.ts.map +1 -1
- package/dist/commands/WhoamiCommand.js +63 -72
- package/dist/commands/WhoamiCommand.js.map +1 -1
- package/dist/commands/WhyCommand.d.ts +13 -10
- package/dist/commands/WhyCommand.d.ts.map +1 -1
- package/dist/commands/WhyCommand.js +45 -44
- package/dist/commands/WhyCommand.js.map +1 -1
- package/dist/commands/add/DependencyAddResolver.d.ts +14 -11
- package/dist/commands/add/DependencyAddResolver.d.ts.map +1 -1
- package/dist/commands/add/DependencyAddResolver.js +36 -36
- package/dist/commands/add/DependencyAddResolver.js.map +1 -1
- package/dist/control-plane/AccountManager.d.ts +96 -94
- package/dist/control-plane/AccountManager.d.ts.map +1 -1
- package/dist/control-plane/AccountManager.js +775 -967
- package/dist/control-plane/AccountManager.js.map +1 -1
- package/dist/control-plane/ArtifactObserver.d.ts +19 -16
- package/dist/control-plane/ArtifactObserver.d.ts.map +1 -1
- package/dist/control-plane/ArtifactObserver.js +73 -59
- package/dist/control-plane/ArtifactObserver.js.map +1 -1
- package/dist/control-plane/AuthMetadataStore.d.ts +16 -13
- package/dist/control-plane/AuthMetadataStore.d.ts.map +1 -1
- package/dist/control-plane/AuthMetadataStore.js +111 -113
- package/dist/control-plane/AuthMetadataStore.js.map +1 -1
- package/dist/control-plane/AuthStoragePaths.d.ts +7 -4
- package/dist/control-plane/AuthStoragePaths.d.ts.map +1 -1
- package/dist/control-plane/AuthStoragePaths.js +19 -14
- package/dist/control-plane/AuthStoragePaths.js.map +1 -1
- package/dist/control-plane/AuthenticationSelector.d.ts +21 -18
- package/dist/control-plane/AuthenticationSelector.d.ts.map +1 -1
- package/dist/control-plane/AuthenticationSelector.js +69 -63
- package/dist/control-plane/AuthenticationSelector.js.map +1 -1
- package/dist/control-plane/ControlPlaneClient.d.ts +37 -28
- package/dist/control-plane/ControlPlaneClient.d.ts.map +1 -1
- package/dist/control-plane/ControlPlaneClient.js +265 -254
- package/dist/control-plane/ControlPlaneClient.js.map +1 -1
- package/dist/control-plane/ControlPlaneEndpoints.d.ts +9 -6
- package/dist/control-plane/ControlPlaneEndpoints.d.ts.map +1 -1
- package/dist/control-plane/ControlPlaneEndpoints.js +17 -12
- package/dist/control-plane/ControlPlaneEndpoints.js.map +1 -1
- package/dist/control-plane/ControlPlaneTypes.d.ts +176 -152
- package/dist/control-plane/ControlPlaneTypes.d.ts.map +1 -1
- package/dist/control-plane/ControlPlaneTypes.js +88 -81
- package/dist/control-plane/ControlPlaneTypes.js.map +1 -1
- package/dist/control-plane/CredentialStore.d.ts +20 -18
- package/dist/control-plane/CredentialStore.d.ts.map +1 -1
- package/dist/control-plane/CredentialStore.js +66 -83
- package/dist/control-plane/CredentialStore.js.map +1 -1
- package/dist/control-plane/DPoPKeyStore.d.ts +12 -9
- package/dist/control-plane/DPoPKeyStore.d.ts.map +1 -1
- package/dist/control-plane/DPoPKeyStore.js +57 -53
- package/dist/control-plane/DPoPKeyStore.js.map +1 -1
- package/dist/control-plane/GitHubActionsOidcCredentialProvider.d.ts +37 -4
- package/dist/control-plane/GitHubActionsOidcCredentialProvider.d.ts.map +1 -1
- package/dist/control-plane/GitHubActionsOidcCredentialProvider.js +197 -63
- package/dist/control-plane/GitHubActionsOidcCredentialProvider.js.map +1 -1
- package/dist/control-plane/PublishIdempotencyStore.d.ts +25 -9
- package/dist/control-plane/PublishIdempotencyStore.d.ts.map +1 -1
- package/dist/control-plane/PublishIdempotencyStore.js +97 -68
- package/dist/control-plane/PublishIdempotencyStore.js.map +1 -1
- package/dist/control-plane/PublishRequestErrorMapper.d.ts +155 -0
- package/dist/control-plane/PublishRequestErrorMapper.d.ts.map +1 -0
- package/dist/control-plane/PublishRequestErrorMapper.js +597 -0
- package/dist/control-plane/PublishRequestErrorMapper.js.map +1 -0
- package/dist/control-plane/RegistryGrantLock.d.ts +29 -26
- package/dist/control-plane/RegistryGrantLock.d.ts.map +1 -1
- package/dist/control-plane/RegistryGrantLock.js +149 -185
- package/dist/control-plane/RegistryGrantLock.js.map +1 -1
- package/dist/control-plane/RegistryTrustResolver.d.ts +13 -10
- package/dist/control-plane/RegistryTrustResolver.d.ts.map +1 -1
- package/dist/control-plane/RegistryTrustResolver.js +97 -132
- package/dist/control-plane/RegistryTrustResolver.js.map +1 -1
- package/dist/index.d.ts +62 -39
- package/dist/index.js +60 -53
- package/dist/postinstall/api/PostinstallDsl.d.ts +24 -21
- package/dist/postinstall/api/PostinstallDsl.d.ts.map +1 -1
- package/dist/postinstall/api/PostinstallDsl.js +32 -35
- package/dist/postinstall/api/PostinstallDsl.js.map +1 -1
- package/dist/postinstall/api/definePostinstall.d.ts +5 -2
- package/dist/postinstall/api/definePostinstall.d.ts.map +1 -1
- package/dist/postinstall/api/definePostinstall.js +20 -16
- package/dist/postinstall/api/definePostinstall.js.map +1 -1
- package/dist/postinstall/index.d.ts +25 -26
- package/dist/postinstall/index.js +25 -37
- package/dist/postinstall/loader/EntryResolver.d.ts +11 -9
- package/dist/postinstall/loader/EntryResolver.d.ts.map +1 -1
- package/dist/postinstall/loader/EntryResolver.js +36 -32
- package/dist/postinstall/loader/EntryResolver.js.map +1 -1
- package/dist/postinstall/loader/EsbuildTranspiler.d.ts +6 -3
- package/dist/postinstall/loader/EsbuildTranspiler.d.ts.map +1 -1
- package/dist/postinstall/loader/EsbuildTranspiler.js +52 -56
- package/dist/postinstall/loader/EsbuildTranspiler.js.map +1 -1
- package/dist/postinstall/loader/ExportValidator.d.ts +8 -5
- package/dist/postinstall/loader/ExportValidator.d.ts.map +1 -1
- package/dist/postinstall/loader/ExportValidator.js +36 -32
- package/dist/postinstall/loader/ExportValidator.js.map +1 -1
- package/dist/postinstall/loader/ModuleImporter.d.ts +17 -14
- package/dist/postinstall/loader/ModuleImporter.d.ts.map +1 -1
- package/dist/postinstall/loader/ModuleImporter.js +50 -58
- package/dist/postinstall/loader/ModuleImporter.js.map +1 -1
- package/dist/postinstall/loader/PostinstallLoader.d.ts +22 -19
- package/dist/postinstall/loader/PostinstallLoader.d.ts.map +1 -1
- package/dist/postinstall/loader/PostinstallLoader.js +62 -58
- package/dist/postinstall/loader/PostinstallLoader.js.map +1 -1
- package/dist/postinstall/markers/MarkerBlockEditor.d.ts +19 -16
- package/dist/postinstall/markers/MarkerBlockEditor.d.ts.map +1 -1
- package/dist/postinstall/markers/MarkerBlockEditor.js +48 -44
- package/dist/postinstall/markers/MarkerBlockEditor.js.map +1 -1
- package/dist/postinstall/markers/MarkerBlockService.d.ts +10 -7
- package/dist/postinstall/markers/MarkerBlockService.d.ts.map +1 -1
- package/dist/postinstall/markers/MarkerBlockService.js +44 -44
- package/dist/postinstall/markers/MarkerBlockService.js.map +1 -1
- package/dist/postinstall/markers/MarkerIntegrityValidator.d.ts +12 -9
- package/dist/postinstall/markers/MarkerIntegrityValidator.d.ts.map +1 -1
- package/dist/postinstall/markers/MarkerIntegrityValidator.js +47 -52
- package/dist/postinstall/markers/MarkerIntegrityValidator.js.map +1 -1
- package/dist/postinstall/policy/PostinstallPolicyGate.d.ts +25 -23
- package/dist/postinstall/policy/PostinstallPolicyGate.d.ts.map +1 -1
- package/dist/postinstall/policy/PostinstallPolicyGate.js +63 -52
- package/dist/postinstall/policy/PostinstallPolicyGate.js.map +1 -1
- package/dist/postinstall/runner/PostinstallOrchestrator.d.ts +48 -45
- package/dist/postinstall/runner/PostinstallOrchestrator.d.ts.map +1 -1
- package/dist/postinstall/runner/PostinstallOrchestrator.js +172 -170
- package/dist/postinstall/runner/PostinstallOrchestrator.js.map +1 -1
- package/dist/postinstall/unreal/BuildCsInjector.d.ts +16 -13
- package/dist/postinstall/unreal/BuildCsInjector.d.ts.map +1 -1
- package/dist/postinstall/unreal/BuildCsInjector.js +58 -53
- package/dist/postinstall/unreal/BuildCsInjector.js.map +1 -1
- package/dist/postinstall/unreal/CSharpInjectionEngine.d.ts +13 -10
- package/dist/postinstall/unreal/CSharpInjectionEngine.d.ts.map +1 -1
- package/dist/postinstall/unreal/CSharpInjectionEngine.js +56 -59
- package/dist/postinstall/unreal/CSharpInjectionEngine.js.map +1 -1
- package/dist/postinstall/unreal/CSharpStructureAnalyzer.d.ts +11 -8
- package/dist/postinstall/unreal/CSharpStructureAnalyzer.d.ts.map +1 -1
- package/dist/postinstall/unreal/CSharpStructureAnalyzer.js +123 -127
- package/dist/postinstall/unreal/CSharpStructureAnalyzer.js.map +1 -1
- package/dist/postinstall/unreal/CSharpStructures.d.ts +18 -15
- package/dist/postinstall/unreal/CSharpStructures.d.ts.map +1 -1
- package/dist/postinstall/unreal/CSharpStructures.js +1 -2
- package/dist/postinstall/unreal/CSharpWrapperFactory.d.ts +7 -4
- package/dist/postinstall/unreal/CSharpWrapperFactory.d.ts.map +1 -1
- package/dist/postinstall/unreal/CSharpWrapperFactory.js +54 -58
- package/dist/postinstall/unreal/CSharpWrapperFactory.js.map +1 -1
- package/dist/postinstall/unreal/PluginHash.d.ts +5 -2
- package/dist/postinstall/unreal/PluginHash.d.ts.map +1 -1
- package/dist/postinstall/unreal/PluginHash.js +13 -8
- package/dist/postinstall/unreal/PluginHash.js.map +1 -1
- package/dist/postinstall/unreal/PrettyParseError.d.ts +8 -5
- package/dist/postinstall/unreal/PrettyParseError.d.ts.map +1 -1
- package/dist/postinstall/unreal/PrettyParseError.js +37 -37
- package/dist/postinstall/unreal/PrettyParseError.js.map +1 -1
- package/dist/postinstall/unreal/ProjectFileLocator.d.ts +12 -9
- package/dist/postinstall/unreal/ProjectFileLocator.d.ts.map +1 -1
- package/dist/postinstall/unreal/ProjectFileLocator.js +49 -51
- package/dist/postinstall/unreal/ProjectFileLocator.js.map +1 -1
- package/dist/postinstall/unreal/TargetCsInjector.d.ts +16 -13
- package/dist/postinstall/unreal/TargetCsInjector.d.ts.map +1 -1
- package/dist/postinstall/unreal/TargetCsInjector.js +58 -53
- package/dist/postinstall/unreal/TargetCsInjector.js.map +1 -1
- package/dist/postinstall/unreal/UProjectInjector.d.ts +6 -3
- package/dist/postinstall/unreal/UProjectInjector.d.ts.map +1 -1
- package/dist/postinstall/unreal/UProjectInjector.js +56 -52
- package/dist/postinstall/unreal/UProjectInjector.js.map +1 -1
- package/dist/postinstall/unreal/UProjectMetadataReader.d.ts +5 -2
- package/dist/postinstall/unreal/UProjectMetadataReader.d.ts.map +1 -1
- package/dist/postinstall/unreal/UProjectMetadataReader.js +22 -18
- package/dist/postinstall/unreal/UProjectMetadataReader.js.map +1 -1
- package/dist/postinstall/unreal/UnrealSourceCatalog.d.ts +17 -14
- package/dist/postinstall/unreal/UnrealSourceCatalog.d.ts.map +1 -1
- package/dist/postinstall/unreal/UnrealSourceCatalog.js +50 -50
- package/dist/postinstall/unreal/UnrealSourceCatalog.js.map +1 -1
- package/dist/prompts/InkPromptService.d.ts +10 -7
- package/dist/prompts/InkPromptService.d.ts.map +1 -1
- package/dist/prompts/InkPromptService.js +100 -71
- package/dist/prompts/InkPromptService.js.map +1 -1
- package/dist/prompts/ProjectContextDetector.d.ts +10 -7
- package/dist/prompts/ProjectContextDetector.d.ts.map +1 -1
- package/dist/prompts/ProjectContextDetector.js +32 -26
- package/dist/prompts/ProjectContextDetector.js.map +1 -1
- package/dist/prompts/PromptService.d.ts +11 -8
- package/dist/prompts/PromptService.d.ts.map +1 -1
- package/dist/prompts/PromptService.js +1 -8
- package/dist/reporting/DiagnosticDeduplicator.d.ts +8 -5
- package/dist/reporting/DiagnosticDeduplicator.d.ts.map +1 -1
- package/dist/reporting/DiagnosticDeduplicator.js +36 -35
- package/dist/reporting/DiagnosticDeduplicator.js.map +1 -1
- package/dist/reporting/DiagnosticRenderer.d.ts +11 -8
- package/dist/reporting/DiagnosticRenderer.d.ts.map +1 -1
- package/dist/reporting/DiagnosticRenderer.js +1 -2
- package/dist/reporting/DiagnosticReporter.d.ts +12 -9
- package/dist/reporting/DiagnosticReporter.d.ts.map +1 -1
- package/dist/reporting/DiagnosticReporter.js +40 -39
- package/dist/reporting/DiagnosticReporter.js.map +1 -1
- package/dist/reporting/InkDiagnosticRenderer.d.ts +12 -9
- package/dist/reporting/InkDiagnosticRenderer.d.ts.map +1 -1
- package/dist/reporting/InkDiagnosticRenderer.js +50 -42
- package/dist/reporting/InkDiagnosticRenderer.js.map +1 -1
- package/dist/reporting/InstallProgressReporter.d.ts +23 -20
- package/dist/reporting/InstallProgressReporter.d.ts.map +1 -1
- package/dist/reporting/InstallProgressReporter.js +48 -47
- package/dist/reporting/InstallProgressReporter.js.map +1 -1
- package/dist/reporting/JsonReporter.d.ts +16 -13
- package/dist/reporting/JsonReporter.d.ts.map +1 -1
- package/dist/reporting/JsonReporter.js +34 -20
- package/dist/reporting/JsonReporter.js.map +1 -1
- package/dist/reporting/RegistryRequestTerminalFormatter.d.ts +36 -0
- package/dist/reporting/RegistryRequestTerminalFormatter.d.ts.map +1 -0
- package/dist/reporting/RegistryRequestTerminalFormatter.js +90 -0
- package/dist/reporting/RegistryRequestTerminalFormatter.js.map +1 -0
- package/dist/reporting/TextDiagnosticRenderer.d.ts +11 -8
- package/dist/reporting/TextDiagnosticRenderer.d.ts.map +1 -1
- package/dist/reporting/TextDiagnosticRenderer.js +36 -28
- package/dist/reporting/TextDiagnosticRenderer.js.map +1 -1
- package/dist/reporting/TextSink.d.ts +14 -11
- package/dist/reporting/TextSink.d.ts.map +1 -1
- package/dist/reporting/TextSink.js +24 -20
- package/dist/reporting/TextSink.js.map +1 -1
- package/package.json +31 -32
- package/dist/cli/parsing/contracts/UAPKGCommandModule.js.map +0 -1
- package/dist/cli-bootstrap.d.ts.map +0 -1
- package/dist/commands/Command.js.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/postinstall/index.d.ts.map +0 -1
- package/dist/postinstall/index.js.map +0 -1
- package/dist/postinstall/unreal/CSharpStructures.js.map +0 -1
- package/dist/prompts/PromptService.js.map +0 -1
- package/dist/reporting/DiagnosticRenderer.js.map +0 -1
|
@@ -1,55 +1,60 @@
|
|
|
1
|
-
import
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import
|
|
8
|
-
|
|
1
|
+
import { MarkerBlockEditor } from "../markers/MarkerBlockEditor.js";
|
|
2
|
+
import { CSharpInjectionEngine } from "./CSharpInjectionEngine.js";
|
|
3
|
+
import { CSharpStructureAnalyzer } from "./CSharpStructureAnalyzer.js";
|
|
4
|
+
import { CSharpWrapperFactory } from "./CSharpWrapperFactory.js";
|
|
5
|
+
import { getWrapperClassName } from "./PluginHash.js";
|
|
6
|
+
import { createIoErrorDiagnostic, fail, ok } from "@uapkg/diagnostics";
|
|
7
|
+
import fs from "node:fs";
|
|
8
|
+
|
|
9
|
+
//#region src/postinstall/unreal/TargetCsInjector.ts
|
|
10
|
+
const TARGET_CS_ZONES = [
|
|
11
|
+
"target-includes",
|
|
12
|
+
"target-class-body",
|
|
13
|
+
"target-constructor"
|
|
14
|
+
];
|
|
9
15
|
/**
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
}
|
|
16
|
+
* Injects a plugin's `setupTargets` content into a single `*.Target.cs` file.
|
|
17
|
+
*
|
|
18
|
+
* Mirrors {@link BuildCsInjector} but targets `TargetRules`/`TargetInfo` and a
|
|
19
|
+
* different marker-zone name-space. Never throws — errors become diagnostics.
|
|
20
|
+
* Pre-existing owned marker blocks are integrity-checked before mutation and
|
|
21
|
+
* surfaced as `POSTINSTALL_MARKER_CORRUPT` on failure.
|
|
22
|
+
*/
|
|
23
|
+
var TargetCsInjector = class {
|
|
24
|
+
analyzer;
|
|
25
|
+
wrapperFactory;
|
|
26
|
+
injector;
|
|
27
|
+
markerEditor;
|
|
28
|
+
constructor(analyzer = new CSharpStructureAnalyzer(), wrapperFactory = new CSharpWrapperFactory(), injector = new CSharpInjectionEngine(), markerEditor = new MarkerBlockEditor()) {
|
|
29
|
+
this.analyzer = analyzer;
|
|
30
|
+
this.wrapperFactory = wrapperFactory;
|
|
31
|
+
this.injector = injector;
|
|
32
|
+
this.markerEditor = markerEditor;
|
|
33
|
+
}
|
|
34
|
+
apply(filePath, pluginName, zones) {
|
|
35
|
+
try {
|
|
36
|
+
let source = fs.readFileSync(filePath, "utf-8");
|
|
37
|
+
for (const zone of TARGET_CS_ZONES) {
|
|
38
|
+
const check = this.markerEditor.validate(source, pluginName, zone, filePath);
|
|
39
|
+
if (!check.ok) return fail(check.diagnostics);
|
|
40
|
+
}
|
|
41
|
+
if (zones.includes?.trim()) source = this.injector.applyIncludes(source, pluginName, zones.includes, "target-includes");
|
|
42
|
+
if (zones.classBody?.trim()) {
|
|
43
|
+
const parsedForWrapper = this.analyzer.parseTarget(filePath, source);
|
|
44
|
+
const wrapperClassName = getWrapperClassName(pluginName);
|
|
45
|
+
const wrapper = this.wrapperFactory.createWrapper(wrapperClassName, "TargetRules", "target", zones.classBody);
|
|
46
|
+
source = this.injector.applyClassWrapper(parsedForWrapper, pluginName, wrapper, "target-class-body");
|
|
47
|
+
const parsedForCtor = this.analyzer.parseTarget(filePath, source);
|
|
48
|
+
source = this.injector.applyConstructorCall(parsedForCtor, pluginName, `${wrapperClassName}.Apply(this)`, "target-constructor");
|
|
49
|
+
}
|
|
50
|
+
fs.writeFileSync(filePath, source, "utf-8");
|
|
51
|
+
return ok(void 0);
|
|
52
|
+
} catch (error) {
|
|
53
|
+
return fail([createIoErrorDiagnostic(filePath, error instanceof Error ? error.message : String(error))]);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
//#endregion
|
|
59
|
+
export { TargetCsInjector };
|
|
55
60
|
//# sourceMappingURL=TargetCsInjector.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TargetCsInjector.js","
|
|
1
|
+
{"version":3,"file":"TargetCsInjector.js","names":[],"sources":["../../../src/postinstall/unreal/TargetCsInjector.ts"],"sourcesContent":["import fs from 'node:fs';\nimport { createIoErrorDiagnostic, fail, ok, type Result } from '@uapkg/diagnostics';\nimport type { ZoneDefinition } from '../api/PostinstallDsl.js';\nimport { MarkerBlockEditor } from '../markers/MarkerBlockEditor.js';\nimport { CSharpInjectionEngine } from './CSharpInjectionEngine.js';\nimport { CSharpStructureAnalyzer } from './CSharpStructureAnalyzer.js';\nimport { CSharpWrapperFactory } from './CSharpWrapperFactory.js';\nimport { getWrapperClassName } from './PluginHash.js';\n\nconst TARGET_CS_ZONES = ['target-includes', 'target-class-body', 'target-constructor'] as const;\n\n/**\n * Injects a plugin's `setupTargets` content into a single `*.Target.cs` file.\n *\n * Mirrors {@link BuildCsInjector} but targets `TargetRules`/`TargetInfo` and a\n * different marker-zone name-space. Never throws — errors become diagnostics.\n * Pre-existing owned marker blocks are integrity-checked before mutation and\n * surfaced as `POSTINSTALL_MARKER_CORRUPT` on failure.\n */\nexport class TargetCsInjector {\n public constructor(\n private readonly analyzer: CSharpStructureAnalyzer = new CSharpStructureAnalyzer(),\n private readonly wrapperFactory: CSharpWrapperFactory = new CSharpWrapperFactory(),\n private readonly injector: CSharpInjectionEngine = new CSharpInjectionEngine(),\n private readonly markerEditor: MarkerBlockEditor = new MarkerBlockEditor(),\n ) {}\n\n public apply(filePath: string, pluginName: string, zones: ZoneDefinition): Result<void> {\n try {\n let source = fs.readFileSync(filePath, 'utf-8');\n\n for (const zone of TARGET_CS_ZONES) {\n const check = this.markerEditor.validate(source, pluginName, zone, filePath);\n if (!check.ok) return fail(check.diagnostics);\n }\n\n if (zones.includes?.trim()) {\n source = this.injector.applyIncludes(source, pluginName, zones.includes, 'target-includes');\n }\n if (zones.classBody?.trim()) {\n const parsedForWrapper = this.analyzer.parseTarget(filePath, source);\n const wrapperClassName = getWrapperClassName(pluginName);\n const wrapper = this.wrapperFactory.createWrapper(wrapperClassName, 'TargetRules', 'target', zones.classBody);\n source = this.injector.applyClassWrapper(parsedForWrapper, pluginName, wrapper, 'target-class-body');\n\n const parsedForCtor = this.analyzer.parseTarget(filePath, source);\n source = this.injector.applyConstructorCall(\n parsedForCtor,\n pluginName,\n `${wrapperClassName}.Apply(this)`,\n 'target-constructor',\n );\n }\n fs.writeFileSync(filePath, source, 'utf-8');\n return ok(undefined);\n } catch (error) {\n return fail([createIoErrorDiagnostic(filePath, error instanceof Error ? error.message : String(error))]);\n }\n }\n}\n"],"mappings":";;;;;;;;;AASA,MAAM,kBAAkB;CAAC;CAAmB;CAAqB;AAAoB;;;;;;;;;AAUrF,IAAa,mBAAb,MAA8B;CAET;CACA;CACA;CACA;CAJnB,AAAO,YACL,AAAiB,WAAoC,IAAI,wBAAwB,GACjF,AAAiB,iBAAuC,IAAI,qBAAqB,GACjF,AAAiB,WAAkC,IAAI,sBAAsB,GAC7E,AAAiB,eAAkC,IAAI,kBAAkB,GACzE;EAJiB;EACA;EACA;EACA;CAChB;CAEH,AAAO,MAAM,UAAkB,YAAoB,OAAqC;EACtF,IAAI;GACF,IAAI,SAAS,GAAG,aAAa,UAAU,OAAO;GAE9C,KAAK,MAAM,QAAQ,iBAAiB;IAClC,MAAM,QAAQ,KAAK,aAAa,SAAS,QAAQ,YAAY,MAAM,QAAQ;IAC3E,IAAI,CAAC,MAAM,IAAI,OAAO,KAAK,MAAM,WAAW;GAC9C;GAEA,IAAI,MAAM,UAAU,KAAK,GACvB,SAAS,KAAK,SAAS,cAAc,QAAQ,YAAY,MAAM,UAAU,iBAAiB;GAE5F,IAAI,MAAM,WAAW,KAAK,GAAG;IAC3B,MAAM,mBAAmB,KAAK,SAAS,YAAY,UAAU,MAAM;IACnE,MAAM,mBAAmB,oBAAoB,UAAU;IACvD,MAAM,UAAU,KAAK,eAAe,cAAc,kBAAkB,eAAe,UAAU,MAAM,SAAS;IAC5G,SAAS,KAAK,SAAS,kBAAkB,kBAAkB,YAAY,SAAS,mBAAmB;IAEnG,MAAM,gBAAgB,KAAK,SAAS,YAAY,UAAU,MAAM;IAChE,SAAS,KAAK,SAAS,qBACrB,eACA,YACA,GAAG,iBAAiB,eACpB,oBACF;GACF;GACA,GAAG,cAAc,UAAU,QAAQ,OAAO;GAC1C,OAAO,GAAG,MAAS;EACrB,SAAS,OAAO;GACd,OAAO,KAAK,CAAC,wBAAwB,UAAU,iBAAiB,QAAQ,MAAM,UAAU,OAAO,KAAK,CAAC,CAAC,CAAC;EACzG;CACF;AACF"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Result } from "@uapkg/diagnostics";
|
|
2
|
+
//#region src/postinstall/unreal/UProjectInjector.d.ts
|
|
2
3
|
/**
|
|
3
4
|
* Enables the given plugin names in the host project's `.uproject` file,
|
|
4
5
|
* preserving all other fields. Adds new entries with `Enabled: true` when the
|
|
@@ -6,7 +7,9 @@ import { type Result } from '@uapkg/diagnostics';
|
|
|
6
7
|
*
|
|
7
8
|
* Never throws — returns a `Result<void>`.
|
|
8
9
|
*/
|
|
9
|
-
|
|
10
|
-
|
|
10
|
+
declare class UProjectInjector {
|
|
11
|
+
apply(projectFilePath: string, pluginNames: readonly string[]): Result<void>;
|
|
11
12
|
}
|
|
13
|
+
//#endregion
|
|
14
|
+
export { UProjectInjector };
|
|
12
15
|
//# sourceMappingURL=UProjectInjector.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UProjectInjector.d.ts","
|
|
1
|
+
{"version":3,"file":"UProjectInjector.d.ts","names":[],"sources":["../../../src/postinstall/unreal/UProjectInjector.ts"],"mappings":";;;;;;;;;cAqBa;EACJ,MAAM,yBAAyB,iCAAiC"}
|
|
@@ -1,54 +1,58 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
1
|
+
import { createIoErrorDiagnostic, createParseErrorDiagnostic, fail, ok } from "@uapkg/diagnostics";
|
|
2
|
+
import fs from "node:fs";
|
|
3
|
+
|
|
4
|
+
//#region src/postinstall/unreal/UProjectInjector.ts
|
|
3
5
|
/**
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
6
|
+
* Enables the given plugin names in the host project's `.uproject` file,
|
|
7
|
+
* preserving all other fields. Adds new entries with `Enabled: true` when the
|
|
8
|
+
* plugin isn't already listed; toggles `Enabled: true` on existing entries.
|
|
9
|
+
*
|
|
10
|
+
* Never throws — returns a `Result<void>`.
|
|
11
|
+
*/
|
|
12
|
+
var UProjectInjector = class {
|
|
13
|
+
apply(projectFilePath, pluginNames) {
|
|
14
|
+
if (pluginNames.length === 0) return ok(void 0);
|
|
15
|
+
let source;
|
|
16
|
+
try {
|
|
17
|
+
source = fs.readFileSync(projectFilePath, "utf-8");
|
|
18
|
+
} catch (error) {
|
|
19
|
+
return fail([createIoErrorDiagnostic(projectFilePath, error instanceof Error ? error.message : String(error))]);
|
|
20
|
+
}
|
|
21
|
+
let parsed;
|
|
22
|
+
try {
|
|
23
|
+
parsed = JSON.parse(source);
|
|
24
|
+
} catch (error) {
|
|
25
|
+
return fail([createParseErrorDiagnostic(error instanceof Error ? error.message : String(error), projectFilePath)]);
|
|
26
|
+
}
|
|
27
|
+
const plugins = Array.isArray(parsed.Plugins) ? [...parsed.Plugins] : [];
|
|
28
|
+
const indexByName = /* @__PURE__ */ new Map();
|
|
29
|
+
plugins.forEach((entry, index) => {
|
|
30
|
+
if (typeof entry.Name === "string" && entry.Name.trim()) indexByName.set(entry.Name, index);
|
|
31
|
+
});
|
|
32
|
+
for (const pluginName of pluginNames) {
|
|
33
|
+
const existingIndex = indexByName.get(pluginName);
|
|
34
|
+
if (existingIndex === void 0) {
|
|
35
|
+
plugins.push({
|
|
36
|
+
Name: pluginName,
|
|
37
|
+
Enabled: true
|
|
38
|
+
});
|
|
39
|
+
continue;
|
|
40
|
+
}
|
|
41
|
+
plugins[existingIndex] = {
|
|
42
|
+
...plugins[existingIndex],
|
|
43
|
+
Enabled: true
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
parsed.Plugins = plugins;
|
|
47
|
+
try {
|
|
48
|
+
fs.writeFileSync(projectFilePath, `${JSON.stringify(parsed, null, 2)}\n`, "utf-8");
|
|
49
|
+
} catch (error) {
|
|
50
|
+
return fail([createIoErrorDiagnostic(projectFilePath, error instanceof Error ? error.message : String(error))]);
|
|
51
|
+
}
|
|
52
|
+
return ok(void 0);
|
|
53
|
+
}
|
|
54
|
+
};
|
|
55
|
+
|
|
56
|
+
//#endregion
|
|
57
|
+
export { UProjectInjector };
|
|
54
58
|
//# sourceMappingURL=UProjectInjector.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UProjectInjector.js","
|
|
1
|
+
{"version":3,"file":"UProjectInjector.js","names":[],"sources":["../../../src/postinstall/unreal/UProjectInjector.ts"],"sourcesContent":["import fs from 'node:fs';\nimport { createIoErrorDiagnostic, createParseErrorDiagnostic, fail, ok, type Result } from '@uapkg/diagnostics';\n\ninterface UProjectPluginEntry {\n Name?: string;\n Enabled?: boolean;\n [key: string]: unknown;\n}\n\ninterface UProjectDocument {\n Plugins?: UProjectPluginEntry[];\n [key: string]: unknown;\n}\n\n/**\n * Enables the given plugin names in the host project's `.uproject` file,\n * preserving all other fields. Adds new entries with `Enabled: true` when the\n * plugin isn't already listed; toggles `Enabled: true` on existing entries.\n *\n * Never throws — returns a `Result<void>`.\n */\nexport class UProjectInjector {\n public apply(projectFilePath: string, pluginNames: readonly string[]): Result<void> {\n if (pluginNames.length === 0) return ok(undefined);\n\n let source: string;\n try {\n source = fs.readFileSync(projectFilePath, 'utf-8');\n } catch (error) {\n return fail([createIoErrorDiagnostic(projectFilePath, error instanceof Error ? error.message : String(error))]);\n }\n\n let parsed: UProjectDocument;\n try {\n parsed = JSON.parse(source) as UProjectDocument;\n } catch (error) {\n return fail([\n createParseErrorDiagnostic(error instanceof Error ? error.message : String(error), projectFilePath),\n ]);\n }\n\n const plugins = Array.isArray(parsed.Plugins) ? [...parsed.Plugins] : [];\n const indexByName = new Map<string, number>();\n plugins.forEach((entry, index) => {\n if (typeof entry.Name === 'string' && entry.Name.trim()) indexByName.set(entry.Name, index);\n });\n\n for (const pluginName of pluginNames) {\n const existingIndex = indexByName.get(pluginName);\n if (existingIndex === undefined) {\n plugins.push({ Name: pluginName, Enabled: true });\n continue;\n }\n plugins[existingIndex] = { ...plugins[existingIndex], Enabled: true };\n }\n\n parsed.Plugins = plugins;\n try {\n fs.writeFileSync(projectFilePath, `${JSON.stringify(parsed, null, 2)}\\n`, 'utf-8');\n } catch (error) {\n return fail([createIoErrorDiagnostic(projectFilePath, error instanceof Error ? error.message : String(error))]);\n }\n return ok(undefined);\n }\n}\n"],"mappings":";;;;;;;;;;;AAqBA,IAAa,mBAAb,MAA8B;CAC5B,AAAO,MAAM,iBAAyB,aAA8C;EAClF,IAAI,YAAY,WAAW,GAAG,OAAO,GAAG,MAAS;EAEjD,IAAI;EACJ,IAAI;GACF,SAAS,GAAG,aAAa,iBAAiB,OAAO;EACnD,SAAS,OAAO;GACd,OAAO,KAAK,CAAC,wBAAwB,iBAAiB,iBAAiB,QAAQ,MAAM,UAAU,OAAO,KAAK,CAAC,CAAC,CAAC;EAChH;EAEA,IAAI;EACJ,IAAI;GACF,SAAS,KAAK,MAAM,MAAM;EAC5B,SAAS,OAAO;GACd,OAAO,KAAK,CACV,2BAA2B,iBAAiB,QAAQ,MAAM,UAAU,OAAO,KAAK,GAAG,eAAe,CACpG,CAAC;EACH;EAEA,MAAM,UAAU,MAAM,QAAQ,OAAO,OAAO,IAAI,CAAC,GAAG,OAAO,OAAO,IAAI,CAAC;EACvE,MAAM,8BAAc,IAAI,IAAoB;EAC5C,QAAQ,SAAS,OAAO,UAAU;GAChC,IAAI,OAAO,MAAM,SAAS,YAAY,MAAM,KAAK,KAAK,GAAG,YAAY,IAAI,MAAM,MAAM,KAAK;EAC5F,CAAC;EAED,KAAK,MAAM,cAAc,aAAa;GACpC,MAAM,gBAAgB,YAAY,IAAI,UAAU;GAChD,IAAI,kBAAkB,QAAW;IAC/B,QAAQ,KAAK;KAAE,MAAM;KAAY,SAAS;IAAK,CAAC;IAChD;GACF;GACA,QAAQ,iBAAiB;IAAE,GAAG,QAAQ;IAAgB,SAAS;GAAK;EACtE;EAEA,OAAO,UAAU;EACjB,IAAI;GACF,GAAG,cAAc,iBAAiB,GAAG,KAAK,UAAU,QAAQ,MAAM,CAAC,EAAE,KAAK,OAAO;EACnF,SAAS,OAAO;GACd,OAAO,KAAK,CAAC,wBAAwB,iBAAiB,iBAAiB,QAAQ,MAAM,UAAU,OAAO,KAAK,CAAC,CAAC,CAAC;EAChH;EACA,OAAO,GAAG,MAAS;CACrB;AACF"}
|
|
@@ -1,9 +1,12 @@
|
|
|
1
|
+
//#region src/postinstall/unreal/UProjectMetadataReader.d.ts
|
|
1
2
|
/**
|
|
2
3
|
* Reads the `Modules` array from a `.uproject` JSON file and returns the list
|
|
3
4
|
* of module names. Used when no explicit `postinstall.modules` is configured
|
|
4
5
|
* on the project manifest.
|
|
5
6
|
*/
|
|
6
|
-
|
|
7
|
-
|
|
7
|
+
declare class UProjectMetadataReader {
|
|
8
|
+
readModuleNames(uprojectPath: string): string[];
|
|
8
9
|
}
|
|
10
|
+
//#endregion
|
|
11
|
+
export { UProjectMetadataReader };
|
|
9
12
|
//# sourceMappingURL=UProjectMetadataReader.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UProjectMetadataReader.d.ts","
|
|
1
|
+
{"version":3,"file":"UProjectMetadataReader.d.ts","names":[],"sources":["../../../src/postinstall/unreal/UProjectMetadataReader.ts"],"mappings":";;;;;;cAea;EACJ,gBAAgB"}
|
|
@@ -1,20 +1,24 @@
|
|
|
1
|
-
import fs from
|
|
1
|
+
import fs from "node:fs";
|
|
2
|
+
|
|
3
|
+
//#region src/postinstall/unreal/UProjectMetadataReader.ts
|
|
2
4
|
/**
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
5
|
+
* Reads the `Modules` array from a `.uproject` JSON file and returns the list
|
|
6
|
+
* of module names. Used when no explicit `postinstall.modules` is configured
|
|
7
|
+
* on the project manifest.
|
|
8
|
+
*/
|
|
9
|
+
var UProjectMetadataReader = class {
|
|
10
|
+
readModuleNames(uprojectPath) {
|
|
11
|
+
const source = fs.readFileSync(uprojectPath, "utf-8");
|
|
12
|
+
let parsed;
|
|
13
|
+
try {
|
|
14
|
+
parsed = JSON.parse(source);
|
|
15
|
+
} catch (error) {
|
|
16
|
+
throw new Error(`Failed to parse ${uprojectPath}: ${error instanceof Error ? error.message : String(error)}`);
|
|
17
|
+
}
|
|
18
|
+
return (parsed.Modules ?? []).map((entry) => entry.Name?.trim()).filter((value) => Boolean(value));
|
|
19
|
+
}
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
//#endregion
|
|
23
|
+
export { UProjectMetadataReader };
|
|
20
24
|
//# sourceMappingURL=UProjectMetadataReader.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UProjectMetadataReader.js","
|
|
1
|
+
{"version":3,"file":"UProjectMetadataReader.js","names":[],"sources":["../../../src/postinstall/unreal/UProjectMetadataReader.ts"],"sourcesContent":["import fs from 'node:fs';\n\ninterface UProjectModule {\n Name?: string;\n}\n\ninterface UProjectDocument {\n Modules?: UProjectModule[];\n}\n\n/**\n * Reads the `Modules` array from a `.uproject` JSON file and returns the list\n * of module names. Used when no explicit `postinstall.modules` is configured\n * on the project manifest.\n */\nexport class UProjectMetadataReader {\n public readModuleNames(uprojectPath: string): string[] {\n const source = fs.readFileSync(uprojectPath, 'utf-8');\n let parsed: UProjectDocument;\n try {\n parsed = JSON.parse(source) as UProjectDocument;\n } catch (error) {\n throw new Error(`Failed to parse ${uprojectPath}: ${error instanceof Error ? error.message : String(error)}`);\n }\n\n return (parsed.Modules ?? []).map((entry) => entry.Name?.trim()).filter((value): value is string => Boolean(value));\n }\n}\n"],"mappings":";;;;;;;;AAeA,IAAa,yBAAb,MAAoC;CAClC,AAAO,gBAAgB,cAAgC;EACrD,MAAM,SAAS,GAAG,aAAa,cAAc,OAAO;EACpD,IAAI;EACJ,IAAI;GACF,SAAS,KAAK,MAAM,MAAM;EAC5B,SAAS,OAAO;GACd,MAAM,IAAI,MAAM,mBAAmB,aAAa,IAAI,iBAAiB,QAAQ,MAAM,UAAU,OAAO,KAAK,GAAG;EAC9G;EAEA,QAAQ,OAAO,WAAW,CAAC,EAAC,CAAE,KAAK,UAAU,MAAM,MAAM,KAAK,CAAC,CAAC,CAAC,QAAQ,UAA2B,QAAQ,KAAK,CAAC;CACpH;AACF"}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import { CSharpStructureAnalyzer } from
|
|
2
|
-
import { ProjectFileLocator } from
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
1
|
+
import { CSharpStructureAnalyzer } from "./CSharpStructureAnalyzer.js";
|
|
2
|
+
import { ProjectFileLocator } from "./ProjectFileLocator.js";
|
|
3
|
+
//#region src/postinstall/unreal/UnrealSourceCatalog.d.ts
|
|
4
|
+
interface SourceCatalog {
|
|
5
|
+
/** ModuleName → absolute path of its `*.Build.cs`. */
|
|
6
|
+
readonly moduleFiles: ReadonlyMap<string, string>;
|
|
7
|
+
/** Absolute paths to every `*.Target.cs` in the project source tree. */
|
|
8
|
+
readonly targetFiles: readonly string[];
|
|
8
9
|
}
|
|
9
10
|
/**
|
|
10
11
|
* Scans the project source tree and validates every discovered `Build.cs` /
|
|
@@ -12,12 +13,14 @@ export interface SourceCatalog {
|
|
|
12
13
|
* pre-flight check: the orchestrator runs it once before any injector mutates
|
|
13
14
|
* a file, so we fail fast on malformed sources.
|
|
14
15
|
*/
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
16
|
+
declare class UnrealSourceCatalogBuilder {
|
|
17
|
+
private readonly fileLocator;
|
|
18
|
+
private readonly analyzer;
|
|
19
|
+
constructor(fileLocator?: ProjectFileLocator, analyzer?: CSharpStructureAnalyzer);
|
|
20
|
+
build(projectRoot: string, expectedModules: readonly string[]): SourceCatalog;
|
|
21
|
+
private resolveModules;
|
|
22
|
+
private resolveTargets;
|
|
22
23
|
}
|
|
24
|
+
//#endregion
|
|
25
|
+
export { SourceCatalog, UnrealSourceCatalogBuilder };
|
|
23
26
|
//# sourceMappingURL=UnrealSourceCatalog.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UnrealSourceCatalog.d.ts","
|
|
1
|
+
{"version":3,"file":"UnrealSourceCatalog.d.ts","names":[],"sources":["../../../src/postinstall/unreal/UnrealSourceCatalog.ts"],"mappings":";;;UAIiB;;WAEN,aAAa;;WAEb;;;;;;;;cASE;mBAEQ;mBACA;EAFnB,YACmB,cAAa,oBACb,WAAU;EAGtB,MAAM,qBAAqB,qCAAqC;UAM/D;UA0BA"}
|
|
@@ -1,52 +1,52 @@
|
|
|
1
|
-
import
|
|
2
|
-
import {
|
|
3
|
-
import
|
|
1
|
+
import { CSharpStructureAnalyzer } from "./CSharpStructureAnalyzer.js";
|
|
2
|
+
import { ProjectFileLocator } from "./ProjectFileLocator.js";
|
|
3
|
+
import fs from "node:fs";
|
|
4
|
+
|
|
5
|
+
//#region src/postinstall/unreal/UnrealSourceCatalog.ts
|
|
4
6
|
/**
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
}
|
|
51
|
-
}
|
|
7
|
+
* Scans the project source tree and validates every discovered `Build.cs` /
|
|
8
|
+
* `Target.cs` with {@link CSharpStructureAnalyzer}. This is a one-shot
|
|
9
|
+
* pre-flight check: the orchestrator runs it once before any injector mutates
|
|
10
|
+
* a file, so we fail fast on malformed sources.
|
|
11
|
+
*/
|
|
12
|
+
var UnrealSourceCatalogBuilder = class {
|
|
13
|
+
fileLocator;
|
|
14
|
+
analyzer;
|
|
15
|
+
constructor(fileLocator = new ProjectFileLocator(), analyzer = new CSharpStructureAnalyzer()) {
|
|
16
|
+
this.fileLocator = fileLocator;
|
|
17
|
+
this.analyzer = analyzer;
|
|
18
|
+
}
|
|
19
|
+
build(projectRoot, expectedModules) {
|
|
20
|
+
return {
|
|
21
|
+
moduleFiles: this.resolveModules(projectRoot, expectedModules),
|
|
22
|
+
targetFiles: this.resolveTargets(projectRoot)
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
resolveModules(projectRoot, expectedModules) {
|
|
26
|
+
const files = this.fileLocator.findBuildFiles(projectRoot);
|
|
27
|
+
const discovered = /* @__PURE__ */ new Map();
|
|
28
|
+
for (const filePath of files) {
|
|
29
|
+
const source = fs.readFileSync(filePath, "utf-8");
|
|
30
|
+
const parsed = this.analyzer.parseModule(filePath, source);
|
|
31
|
+
if (discovered.has(parsed.classInfo.className)) throw new Error(`Duplicate ModuleRules class '${parsed.classInfo.className}' in ${discovered.get(parsed.classInfo.className)} and ${filePath}`);
|
|
32
|
+
discovered.set(parsed.classInfo.className, filePath);
|
|
33
|
+
}
|
|
34
|
+
const missing = expectedModules.filter((name) => !discovered.has(name));
|
|
35
|
+
if (missing.length > 0) throw new Error(`Missing module Build.cs files for: ${missing.join(", ")}`);
|
|
36
|
+
const moduleFiles = /* @__PURE__ */ new Map();
|
|
37
|
+
for (const moduleName of expectedModules) moduleFiles.set(moduleName, discovered.get(moduleName));
|
|
38
|
+
return moduleFiles;
|
|
39
|
+
}
|
|
40
|
+
resolveTargets(projectRoot) {
|
|
41
|
+
const files = this.fileLocator.findTargetFiles(projectRoot);
|
|
42
|
+
for (const filePath of files) {
|
|
43
|
+
const source = fs.readFileSync(filePath, "utf-8");
|
|
44
|
+
this.analyzer.parseTarget(filePath, source);
|
|
45
|
+
}
|
|
46
|
+
return files;
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
|
|
50
|
+
//#endregion
|
|
51
|
+
export { UnrealSourceCatalogBuilder };
|
|
52
52
|
//# sourceMappingURL=UnrealSourceCatalog.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UnrealSourceCatalog.js","
|
|
1
|
+
{"version":3,"file":"UnrealSourceCatalog.js","names":[],"sources":["../../../src/postinstall/unreal/UnrealSourceCatalog.ts"],"sourcesContent":["import fs from 'node:fs';\nimport { CSharpStructureAnalyzer } from './CSharpStructureAnalyzer.js';\nimport { ProjectFileLocator } from './ProjectFileLocator.js';\n\nexport interface SourceCatalog {\n /** ModuleName → absolute path of its `*.Build.cs`. */\n readonly moduleFiles: ReadonlyMap<string, string>;\n /** Absolute paths to every `*.Target.cs` in the project source tree. */\n readonly targetFiles: readonly string[];\n}\n\n/**\n * Scans the project source tree and validates every discovered `Build.cs` /\n * `Target.cs` with {@link CSharpStructureAnalyzer}. This is a one-shot\n * pre-flight check: the orchestrator runs it once before any injector mutates\n * a file, so we fail fast on malformed sources.\n */\nexport class UnrealSourceCatalogBuilder {\n public constructor(\n private readonly fileLocator: ProjectFileLocator = new ProjectFileLocator(),\n private readonly analyzer: CSharpStructureAnalyzer = new CSharpStructureAnalyzer(),\n ) {}\n\n public build(projectRoot: string, expectedModules: readonly string[]): SourceCatalog {\n const moduleFiles = this.resolveModules(projectRoot, expectedModules);\n const targetFiles = this.resolveTargets(projectRoot);\n return { moduleFiles, targetFiles };\n }\n\n private resolveModules(projectRoot: string, expectedModules: readonly string[]): Map<string, string> {\n const files = this.fileLocator.findBuildFiles(projectRoot);\n const discovered = new Map<string, string>();\n for (const filePath of files) {\n const source = fs.readFileSync(filePath, 'utf-8');\n const parsed = this.analyzer.parseModule(filePath, source);\n if (discovered.has(parsed.classInfo.className)) {\n throw new Error(\n `Duplicate ModuleRules class '${parsed.classInfo.className}' in ${discovered.get(parsed.classInfo.className)} and ${filePath}`,\n );\n }\n discovered.set(parsed.classInfo.className, filePath);\n }\n\n const missing = expectedModules.filter((name) => !discovered.has(name));\n if (missing.length > 0) {\n throw new Error(`Missing module Build.cs files for: ${missing.join(', ')}`);\n }\n\n const moduleFiles = new Map<string, string>();\n for (const moduleName of expectedModules) {\n moduleFiles.set(moduleName, discovered.get(moduleName) as string);\n }\n return moduleFiles;\n }\n\n private resolveTargets(projectRoot: string): string[] {\n const files = this.fileLocator.findTargetFiles(projectRoot);\n for (const filePath of files) {\n const source = fs.readFileSync(filePath, 'utf-8');\n this.analyzer.parseTarget(filePath, source);\n }\n return files;\n }\n}\n"],"mappings":";;;;;;;;;;;AAiBA,IAAa,6BAAb,MAAwC;CAEnB;CACA;CAFnB,AAAO,YACL,AAAiB,cAAkC,IAAI,mBAAmB,GAC1E,AAAiB,WAAoC,IAAI,wBAAwB,GACjF;EAFiB;EACA;CAChB;CAEH,AAAO,MAAM,aAAqB,iBAAmD;EAGnF,OAAO;GAAE,aAFW,KAAK,eAAe,aAAa,eAElC;GAAG,aADF,KAAK,eAAe,WACR;EAAE;CACpC;CAEA,AAAQ,eAAe,aAAqB,iBAAyD;EACnG,MAAM,QAAQ,KAAK,YAAY,eAAe,WAAW;EACzD,MAAM,6BAAa,IAAI,IAAoB;EAC3C,KAAK,MAAM,YAAY,OAAO;GAC5B,MAAM,SAAS,GAAG,aAAa,UAAU,OAAO;GAChD,MAAM,SAAS,KAAK,SAAS,YAAY,UAAU,MAAM;GACzD,IAAI,WAAW,IAAI,OAAO,UAAU,SAAS,GAC3C,MAAM,IAAI,MACR,gCAAgC,OAAO,UAAU,UAAU,OAAO,WAAW,IAAI,OAAO,UAAU,SAAS,EAAE,OAAO,UACtH;GAEF,WAAW,IAAI,OAAO,UAAU,WAAW,QAAQ;EACrD;EAEA,MAAM,UAAU,gBAAgB,QAAQ,SAAS,CAAC,WAAW,IAAI,IAAI,CAAC;EACtE,IAAI,QAAQ,SAAS,GACnB,MAAM,IAAI,MAAM,sCAAsC,QAAQ,KAAK,IAAI,GAAG;EAG5E,MAAM,8BAAc,IAAI,IAAoB;EAC5C,KAAK,MAAM,cAAc,iBACvB,YAAY,IAAI,YAAY,WAAW,IAAI,UAAU,CAAW;EAElE,OAAO;CACT;CAEA,AAAQ,eAAe,aAA+B;EACpD,MAAM,QAAQ,KAAK,YAAY,gBAAgB,WAAW;EAC1D,KAAK,MAAM,YAAY,OAAO;GAC5B,MAAM,SAAS,GAAG,aAAa,UAAU,OAAO;GAChD,KAAK,SAAS,YAAY,UAAU,MAAM;EAC5C;EACA,OAAO;CACT;AACF"}
|
|
@@ -1,9 +1,12 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
1
|
+
import { PromptService, SelectOption } from "./PromptService.js";
|
|
2
|
+
//#region src/prompts/InkPromptService.d.ts
|
|
3
|
+
declare class InkPromptService implements PromptService {
|
|
4
|
+
private readonly isInteractive;
|
|
5
|
+
constructor(isInteractive?: boolean);
|
|
6
|
+
select(message: string, options: SelectOption[], fallbackValue: string): Promise<string>;
|
|
7
|
+
text(message: string, initialValue: string): Promise<string>;
|
|
8
|
+
secret(message: string): Promise<string>;
|
|
8
9
|
}
|
|
10
|
+
//#endregion
|
|
11
|
+
export { InkPromptService };
|
|
9
12
|
//# sourceMappingURL=InkPromptService.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InkPromptService.d.ts","
|
|
1
|
+
{"version":3,"file":"InkPromptService.d.ts","names":[],"sources":["../../src/prompts/InkPromptService.tsx"],"mappings":";;cAca,4BAA4B;mBACH;EAApC,YAAoC;EAEvB,OAAO,iBAAiB,SAAS,gBAAgB,wBAAwB;EAUzE,KAAK,iBAAiB,uBAAuB;EAY7C,OAAO,kBAAkB"}
|