bingo 0.3.0 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE.md +16 -3
- package/README.md +4 -4
- package/bin/index.js +4 -0
- package/lib/cli/clearLocalGitTags.d.ts +3 -0
- package/lib/cli/clearLocalGitTags.d.ts.map +1 -0
- package/lib/cli/clearLocalGitTags.js +7 -0
- package/lib/cli/clearLocalGitTags.js.map +1 -0
- package/lib/cli/clearLocalGitTags.test.d.ts +2 -0
- package/lib/cli/clearLocalGitTags.test.d.ts.map +1 -0
- package/lib/cli/clearLocalGitTags.test.js +16 -0
- package/lib/cli/clearLocalGitTags.test.js.map +1 -0
- package/lib/cli/createInitialCommit.d.ts +7 -0
- package/lib/cli/createInitialCommit.d.ts.map +1 -0
- package/lib/cli/createInitialCommit.js +10 -0
- package/lib/cli/createInitialCommit.js.map +1 -0
- package/lib/cli/createInitialCommit.test.d.ts +2 -0
- package/lib/cli/createInitialCommit.test.d.ts.map +1 -0
- package/lib/cli/createInitialCommit.test.js +53 -0
- package/lib/cli/createInitialCommit.test.js.map +1 -0
- package/lib/cli/display/createClackDisplay.d.ts +10 -0
- package/lib/cli/display/createClackDisplay.d.ts.map +1 -0
- package/lib/cli/display/createClackDisplay.js +25 -0
- package/lib/cli/display/createClackDisplay.js.map +1 -0
- package/lib/cli/display/createClackDisplay.test.d.ts +2 -0
- package/lib/cli/display/createClackDisplay.test.d.ts.map +1 -0
- package/lib/cli/display/createClackDisplay.test.js +20 -0
- package/lib/cli/display/createClackDisplay.test.js.map +1 -0
- package/lib/cli/display/runSpinnerTask.d.ts +3 -0
- package/lib/cli/display/runSpinnerTask.d.ts.map +1 -0
- package/lib/cli/display/runSpinnerTask.js +16 -0
- package/lib/cli/display/runSpinnerTask.js.map +1 -0
- package/lib/cli/display/runSpinnerTask.test.d.ts +2 -0
- package/lib/cli/display/runSpinnerTask.test.d.ts.map +1 -0
- package/lib/cli/display/runSpinnerTask.test.js +47 -0
- package/lib/cli/display/runSpinnerTask.test.js.map +1 -0
- package/lib/cli/findPositionalFrom.d.ts +2 -0
- package/lib/cli/findPositionalFrom.d.ts.map +1 -0
- package/lib/cli/findPositionalFrom.js +8 -0
- package/lib/cli/findPositionalFrom.js.map +1 -0
- package/lib/cli/findPositionalFrom.test.d.ts +2 -0
- package/lib/cli/findPositionalFrom.test.d.ts.map +1 -0
- package/lib/cli/findPositionalFrom.test.js +15 -0
- package/lib/cli/findPositionalFrom.test.js.map +1 -0
- package/lib/cli/importers/createNpxInstallationConfirm.d.ts +3 -0
- package/lib/cli/importers/createNpxInstallationConfirm.d.ts.map +1 -0
- package/lib/cli/importers/createNpxInstallationConfirm.js +20 -0
- package/lib/cli/importers/createNpxInstallationConfirm.js.map +1 -0
- package/lib/cli/importers/createNpxInstallationConfirm.test.d.ts +2 -0
- package/lib/cli/importers/createNpxInstallationConfirm.test.d.ts.map +1 -0
- package/lib/cli/importers/createNpxInstallationConfirm.test.js +88 -0
- package/lib/cli/importers/createNpxInstallationConfirm.test.js.map +1 -0
- package/lib/cli/importers/tryImportAndInstallIfNecessary.d.ts +2 -0
- package/lib/cli/importers/tryImportAndInstallIfNecessary.d.ts.map +1 -0
- package/lib/cli/importers/tryImportAndInstallIfNecessary.js +23 -0
- package/lib/cli/importers/tryImportAndInstallIfNecessary.js.map +1 -0
- package/lib/cli/importers/tryImportAndInstallIfNecessary.test.d.ts +2 -0
- package/lib/cli/importers/tryImportAndInstallIfNecessary.test.d.ts.map +1 -0
- package/lib/cli/importers/tryImportAndInstallIfNecessary.test.js +72 -0
- package/lib/cli/importers/tryImportAndInstallIfNecessary.test.js.map +1 -0
- package/lib/cli/importers/tryImportTemplate.d.ts +2 -0
- package/lib/cli/importers/tryImportTemplate.d.ts.map +1 -0
- package/lib/cli/importers/tryImportTemplate.js +7 -0
- package/lib/cli/importers/tryImportTemplate.js.map +1 -0
- package/lib/cli/importers/tryImportTemplate.test.d.ts +2 -0
- package/lib/cli/importers/tryImportTemplate.test.d.ts.map +1 -0
- package/lib/cli/importers/tryImportTemplate.test.js +23 -0
- package/lib/cli/importers/tryImportTemplate.test.js.map +1 -0
- package/lib/cli/loggers/formatFlag.d.ts +2 -0
- package/lib/cli/loggers/formatFlag.d.ts.map +1 -0
- package/lib/cli/loggers/formatFlag.js +11 -0
- package/lib/cli/loggers/formatFlag.js.map +1 -0
- package/lib/cli/loggers/logHelpOptions.d.ts +8 -0
- package/lib/cli/loggers/logHelpOptions.d.ts.map +1 -0
- package/lib/cli/loggers/logHelpOptions.js +22 -0
- package/lib/cli/loggers/logHelpOptions.js.map +1 -0
- package/lib/cli/loggers/logHelpOptions.test.d.ts +2 -0
- package/lib/cli/loggers/logHelpOptions.test.d.ts.map +1 -0
- package/lib/cli/loggers/logHelpOptions.test.js +65 -0
- package/lib/cli/loggers/logHelpOptions.test.js.map +1 -0
- package/lib/cli/loggers/logHelpText.d.ts +6 -0
- package/lib/cli/loggers/logHelpText.d.ts.map +1 -0
- package/lib/cli/loggers/logHelpText.js +62 -0
- package/lib/cli/loggers/logHelpText.js.map +1 -0
- package/lib/cli/loggers/logHelpText.test.d.ts +2 -0
- package/lib/cli/loggers/logHelpText.test.d.ts.map +1 -0
- package/lib/cli/loggers/logHelpText.test.js +37 -0
- package/lib/cli/loggers/logHelpText.test.js.map +1 -0
- package/lib/cli/loggers/logOutro.d.ts +7 -0
- package/lib/cli/loggers/logOutro.d.ts.map +1 -0
- package/lib/cli/loggers/logOutro.js +23 -0
- package/lib/cli/loggers/logOutro.js.map +1 -0
- package/lib/cli/loggers/logOutro.test.d.ts +2 -0
- package/lib/cli/loggers/logOutro.test.d.ts.map +1 -0
- package/lib/cli/loggers/logOutro.test.js +70 -0
- package/lib/cli/loggers/logOutro.test.js.map +1 -0
- package/lib/cli/loggers/logRerunSuggestion.d.ts +2 -0
- package/lib/cli/loggers/logRerunSuggestion.d.ts.map +1 -0
- package/lib/cli/loggers/logRerunSuggestion.js +32 -0
- package/lib/cli/loggers/logRerunSuggestion.js.map +1 -0
- package/lib/cli/loggers/logRerunSuggestion.test.d.ts +2 -0
- package/lib/cli/loggers/logRerunSuggestion.test.d.ts.map +1 -0
- package/lib/cli/loggers/logRerunSuggestion.test.js +38 -0
- package/lib/cli/loggers/logRerunSuggestion.test.js.map +1 -0
- package/lib/cli/loggers/logSchemasHelpOptions.d.ts +3 -0
- package/lib/cli/loggers/logSchemasHelpOptions.d.ts.map +1 -0
- package/lib/cli/loggers/logSchemasHelpOptions.js +16 -0
- package/lib/cli/loggers/logSchemasHelpOptions.js.map +1 -0
- package/lib/cli/loggers/logSchemasHelpOptions.test.d.ts +2 -0
- package/lib/cli/loggers/logSchemasHelpOptions.test.d.ts.map +1 -0
- package/lib/cli/loggers/logSchemasHelpOptions.test.js +64 -0
- package/lib/cli/loggers/logSchemasHelpOptions.test.js.map +1 -0
- package/lib/cli/loggers/logSetupHelpText.d.ts +10 -0
- package/lib/cli/loggers/logSetupHelpText.d.ts.map +1 -0
- package/lib/cli/loggers/logSetupHelpText.js +42 -0
- package/lib/cli/loggers/logSetupHelpText.js.map +1 -0
- package/lib/cli/loggers/logSetupHelpText.test.d.ts +2 -0
- package/lib/cli/loggers/logSetupHelpText.test.d.ts.map +1 -0
- package/lib/cli/loggers/logSetupHelpText.test.js +91 -0
- package/lib/cli/loggers/logSetupHelpText.test.js.map +1 -0
- package/lib/cli/loggers/logStartText.d.ts +3 -0
- package/lib/cli/loggers/logStartText.d.ts.map +1 -0
- package/lib/cli/loggers/logStartText.js +12 -0
- package/lib/cli/loggers/logStartText.js.map +1 -0
- package/lib/cli/loggers/logStartText.test.d.ts +2 -0
- package/lib/cli/loggers/logStartText.test.d.ts.map +1 -0
- package/lib/cli/loggers/logStartText.test.js +42 -0
- package/lib/cli/loggers/logStartText.test.js.map +1 -0
- package/lib/cli/loggers/logTransitionHelpText.d.ts +11 -0
- package/lib/cli/loggers/logTransitionHelpText.d.ts.map +1 -0
- package/lib/cli/loggers/logTransitionHelpText.js +24 -0
- package/lib/cli/loggers/logTransitionHelpText.js.map +1 -0
- package/lib/cli/loggers/logTransitionHelpText.test.d.ts +2 -0
- package/lib/cli/loggers/logTransitionHelpText.test.d.ts.map +1 -0
- package/lib/cli/loggers/logTransitionHelpText.test.js +78 -0
- package/lib/cli/loggers/logTransitionHelpText.test.js.map +1 -0
- package/lib/cli/messages.d.ts +5 -0
- package/lib/cli/messages.d.ts.map +1 -0
- package/lib/cli/messages.js +6 -0
- package/lib/cli/messages.js.map +1 -0
- package/lib/cli/parsers/parseZodArgs.d.ts +3 -0
- package/lib/cli/parsers/parseZodArgs.d.ts.map +1 -0
- package/lib/cli/parsers/parseZodArgs.js +55 -0
- package/lib/cli/parsers/parseZodArgs.js.map +1 -0
- package/lib/cli/parsers/parseZodArgs.test.d.ts +2 -0
- package/lib/cli/parsers/parseZodArgs.test.d.ts.map +1 -0
- package/lib/cli/parsers/parseZodArgs.test.js +47 -0
- package/lib/cli/parsers/parseZodArgs.test.js.map +1 -0
- package/lib/cli/prompts/produceOptionsDefaults.d.ts +7 -0
- package/lib/cli/prompts/produceOptionsDefaults.d.ts.map +1 -0
- package/lib/cli/prompts/produceOptionsDefaults.js +9 -0
- package/lib/cli/prompts/produceOptionsDefaults.js.map +1 -0
- package/lib/cli/prompts/promptForDirectory.d.ts +8 -0
- package/lib/cli/prompts/promptForDirectory.d.ts.map +1 -0
- package/lib/cli/prompts/promptForDirectory.js +28 -0
- package/lib/cli/prompts/promptForDirectory.js.map +1 -0
- package/lib/cli/prompts/promptForDirectory.test.d.ts +2 -0
- package/lib/cli/prompts/promptForDirectory.test.d.ts.map +1 -0
- package/lib/cli/prompts/promptForDirectory.test.js +116 -0
- package/lib/cli/prompts/promptForDirectory.test.js.map +1 -0
- package/lib/cli/prompts/promptForOptions.d.ts +20 -0
- package/lib/cli/prompts/promptForOptions.d.ts.map +1 -0
- package/lib/cli/prompts/promptForOptions.js +38 -0
- package/lib/cli/prompts/promptForOptions.js.map +1 -0
- package/lib/cli/prompts/promptForSchema.d.ts +3 -0
- package/lib/cli/prompts/promptForSchema.d.ts.map +1 -0
- package/lib/cli/prompts/promptForSchema.js +42 -0
- package/lib/cli/prompts/promptForSchema.js.map +1 -0
- package/lib/cli/prompts/validators.d.ts +5 -0
- package/lib/cli/prompts/validators.d.ts.map +1 -0
- package/lib/cli/prompts/validators.js +23 -0
- package/lib/cli/prompts/validators.js.map +1 -0
- package/lib/cli/prompts/validators.test.d.ts +2 -0
- package/lib/cli/prompts/validators.test.d.ts.map +1 -0
- package/lib/cli/prompts/validators.test.js +51 -0
- package/lib/cli/prompts/validators.test.js.map +1 -0
- package/lib/cli/readProductionSettings.d.ts +8 -0
- package/lib/cli/readProductionSettings.d.ts.map +1 -0
- package/lib/cli/readProductionSettings.js +27 -0
- package/lib/cli/readProductionSettings.js.map +1 -0
- package/lib/cli/readProductionSettings.test.d.ts +2 -0
- package/lib/cli/readProductionSettings.test.d.ts.map +1 -0
- package/lib/cli/readProductionSettings.test.js +81 -0
- package/lib/cli/readProductionSettings.test.js.map +1 -0
- package/lib/cli/runCli.d.ts +2 -0
- package/lib/cli/runCli.d.ts.map +1 -0
- package/lib/cli/runCli.js +95 -0
- package/lib/cli/runCli.js.map +1 -0
- package/lib/cli/runCli.test.d.ts +2 -0
- package/lib/cli/runCli.test.d.ts.map +1 -0
- package/lib/cli/runCli.test.js +154 -0
- package/lib/cli/runCli.test.js.map +1 -0
- package/lib/cli/setup/createRepositoryOnGitHub.d.ts +4 -0
- package/lib/cli/setup/createRepositoryOnGitHub.d.ts.map +1 -0
- package/lib/cli/setup/createRepositoryOnGitHub.js +25 -0
- package/lib/cli/setup/createRepositoryOnGitHub.js.map +1 -0
- package/lib/cli/setup/createRepositoryOnGitHub.test.d.ts +2 -0
- package/lib/cli/setup/createRepositoryOnGitHub.test.d.ts.map +1 -0
- package/lib/cli/setup/createRepositoryOnGitHub.test.js +61 -0
- package/lib/cli/setup/createRepositoryOnGitHub.test.js.map +1 -0
- package/lib/cli/setup/createTrackingBranches.d.ts +4 -0
- package/lib/cli/setup/createTrackingBranches.d.ts.map +1 -0
- package/lib/cli/setup/createTrackingBranches.js +9 -0
- package/lib/cli/setup/createTrackingBranches.js.map +1 -0
- package/lib/cli/setup/createTrackingBranches.test.d.ts +2 -0
- package/lib/cli/setup/createTrackingBranches.test.d.ts.map +1 -0
- package/lib/cli/setup/createTrackingBranches.test.js +19 -0
- package/lib/cli/setup/createTrackingBranches.test.js.map +1 -0
- package/lib/cli/setup/getRepositoryLocator.d.ts +9 -0
- package/lib/cli/setup/getRepositoryLocator.d.ts.map +1 -0
- package/lib/cli/setup/getRepositoryLocator.js +16 -0
- package/lib/cli/setup/getRepositoryLocator.js.map +1 -0
- package/lib/cli/setup/getRepositoryLocator.test.d.ts +2 -0
- package/lib/cli/setup/getRepositoryLocator.test.d.ts.map +1 -0
- package/lib/cli/setup/getRepositoryLocator.test.js +42 -0
- package/lib/cli/setup/getRepositoryLocator.test.js.map +1 -0
- package/lib/cli/setup/runModeSetup.d.ts +15 -0
- package/lib/cli/setup/runModeSetup.d.ts.map +1 -0
- package/lib/cli/setup/runModeSetup.js +105 -0
- package/lib/cli/setup/runModeSetup.js.map +1 -0
- package/lib/cli/status.d.ts +6 -0
- package/lib/cli/status.d.ts.map +1 -0
- package/lib/cli/status.js +7 -0
- package/lib/cli/status.js.map +1 -0
- package/lib/cli/transition/clearTemplateFiles.d.ts +2 -0
- package/lib/cli/transition/clearTemplateFiles.d.ts.map +1 -0
- package/lib/cli/transition/clearTemplateFiles.js +10 -0
- package/lib/cli/transition/clearTemplateFiles.js.map +1 -0
- package/lib/cli/transition/clearTemplateFiles.test.d.ts +2 -0
- package/lib/cli/transition/clearTemplateFiles.test.d.ts.map +1 -0
- package/lib/cli/transition/clearTemplateFiles.test.js +36 -0
- package/lib/cli/transition/clearTemplateFiles.test.js.map +1 -0
- package/lib/cli/transition/getForkedRepositoryLocator.d.ts +3 -0
- package/lib/cli/transition/getForkedRepositoryLocator.d.ts.map +1 -0
- package/lib/cli/transition/getForkedRepositoryLocator.js +15 -0
- package/lib/cli/transition/getForkedRepositoryLocator.js.map +1 -0
- package/lib/cli/transition/getForkedRepositoryLocator.test.d.ts +2 -0
- package/lib/cli/transition/getForkedRepositoryLocator.test.d.ts.map +1 -0
- package/lib/cli/transition/getForkedRepositoryLocator.test.js +70 -0
- package/lib/cli/transition/getForkedRepositoryLocator.test.js.map +1 -0
- package/lib/cli/transition/parseTransitionSource.d.ts +14 -0
- package/lib/cli/transition/parseTransitionSource.d.ts.map +1 -0
- package/lib/cli/transition/parseTransitionSource.js +26 -0
- package/lib/cli/transition/parseTransitionSource.js.map +1 -0
- package/lib/cli/transition/parseTransitionSource.test.d.ts +2 -0
- package/lib/cli/transition/parseTransitionSource.test.d.ts.map +1 -0
- package/lib/cli/transition/parseTransitionSource.test.js +74 -0
- package/lib/cli/transition/parseTransitionSource.test.js.map +1 -0
- package/lib/cli/transition/runModeTransition.d.ts +14 -0
- package/lib/cli/transition/runModeTransition.d.ts.map +1 -0
- package/lib/cli/transition/runModeTransition.js +97 -0
- package/lib/cli/transition/runModeTransition.js.map +1 -0
- package/lib/cli/transition/runModeTransition.test.d.ts +2 -0
- package/lib/cli/transition/runModeTransition.test.d.ts.map +1 -0
- package/lib/cli/transition/runModeTransition.test.js +285 -0
- package/lib/cli/transition/runModeTransition.test.js.map +1 -0
- package/lib/cli/tryImportWithPredicate.d.ts +2 -0
- package/lib/cli/tryImportWithPredicate.d.ts.map +1 -0
- package/lib/cli/tryImportWithPredicate.js +16 -0
- package/lib/cli/tryImportWithPredicate.js.map +1 -0
- package/lib/cli/tryImportWithPredicate.test.d.ts +2 -0
- package/lib/cli/tryImportWithPredicate.test.d.ts.map +1 -0
- package/lib/cli/tryImportWithPredicate.test.js +26 -0
- package/lib/cli/tryImportWithPredicate.test.js.map +1 -0
- package/lib/cli/types.d.ts +14 -0
- package/lib/cli/types.d.ts.map +1 -0
- package/lib/cli/types.js +2 -0
- package/lib/cli/types.js.map +1 -0
- package/lib/cli/utils.d.ts +3 -0
- package/lib/cli/utils.d.ts.map +1 -0
- package/lib/cli/utils.js +7 -0
- package/lib/cli/utils.js.map +1 -0
- package/lib/config/createConfig.d.ts +9 -0
- package/lib/config/createConfig.d.ts.map +1 -0
- package/lib/config/createConfig.js +4 -0
- package/lib/config/createConfig.js.map +1 -0
- package/lib/config/tryImportConfig.d.ts +2 -0
- package/lib/config/tryImportConfig.d.ts.map +1 -0
- package/lib/config/tryImportConfig.js +6 -0
- package/lib/config/tryImportConfig.js.map +1 -0
- package/lib/config/tryImportConfigTemplate.d.ts +2 -0
- package/lib/config/tryImportConfigTemplate.d.ts.map +1 -0
- package/lib/config/tryImportConfigTemplate.js +6 -0
- package/lib/config/tryImportConfigTemplate.js.map +1 -0
- package/lib/config/types.d.ts +8 -0
- package/lib/config/types.d.ts.map +1 -0
- package/lib/config/types.js +2 -0
- package/lib/config/types.js.map +1 -0
- package/lib/contexts/createDisplay.d.ts +11 -0
- package/lib/contexts/createDisplay.d.ts.map +1 -0
- package/lib/contexts/createDisplay.js +13 -0
- package/lib/contexts/createDisplay.js.map +1 -0
- package/lib/contexts/createSystemContext.d.ts +18 -0
- package/lib/contexts/createSystemContext.d.ts.map +1 -0
- package/lib/contexts/createSystemContext.js +20 -0
- package/lib/contexts/createSystemContext.js.map +1 -0
- package/lib/contexts/createSystemContext.test.d.ts +2 -0
- package/lib/contexts/createSystemContext.test.d.ts.map +1 -0
- package/lib/contexts/createSystemContext.test.js +105 -0
- package/lib/contexts/createSystemContext.test.js.map +1 -0
- package/lib/contexts/createSystemContextWithAuth.d.ts +10 -0
- package/lib/contexts/createSystemContextWithAuth.d.ts.map +1 -0
- package/lib/contexts/createSystemContextWithAuth.js +10 -0
- package/lib/contexts/createSystemContextWithAuth.js.map +1 -0
- package/lib/contexts/createSystemDisplay.d.ts +10 -0
- package/lib/contexts/createSystemDisplay.js +13 -0
- package/lib/contexts/createSystemDisplay.js.map +1 -0
- package/lib/creators/createInput.d.ts +12 -0
- package/lib/creators/createInput.d.ts.map +1 -0
- package/lib/creators/createInput.js +19 -0
- package/lib/creators/createInput.js.map +1 -0
- package/lib/creators/createInput.test.d.ts +2 -0
- package/lib/creators/createInput.test.d.ts.map +1 -0
- package/lib/creators/createInput.test.js +45 -0
- package/lib/creators/createInput.test.js.map +1 -0
- package/lib/creators/createTemplate.d.ts +5 -0
- package/lib/creators/createTemplate.d.ts.map +1 -0
- package/lib/creators/createTemplate.js +7 -0
- package/lib/creators/createTemplate.js.map +1 -0
- package/lib/creators/utils.d.ts +2 -0
- package/lib/creators/utils.d.ts.map +1 -0
- package/lib/creators/utils.js +4 -0
- package/lib/creators/utils.js.map +1 -0
- package/lib/index.d.ts +25 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +24 -0
- package/lib/index.js.map +1 -0
- package/lib/mergers/applyMerger.d.ts +2 -0
- package/lib/mergers/applyMerger.d.ts.map +1 -0
- package/lib/mergers/applyMerger.js +7 -0
- package/lib/mergers/applyMerger.js.map +1 -0
- package/lib/mergers/applyMerger.test.d.ts +2 -0
- package/lib/mergers/applyMerger.test.d.ts.map +1 -0
- package/lib/mergers/applyMerger.test.js +19 -0
- package/lib/mergers/applyMerger.test.js.map +1 -0
- package/lib/mergers/mergeCreatedDirectories.d.ts +3 -0
- package/lib/mergers/mergeCreatedDirectories.d.ts.map +1 -0
- package/lib/mergers/mergeCreatedDirectories.js +26 -0
- package/lib/mergers/mergeCreatedDirectories.js.map +1 -0
- package/lib/mergers/mergeCreatedDirectories.test.d.ts +2 -0
- package/lib/mergers/mergeCreatedDirectories.test.d.ts.map +1 -0
- package/lib/mergers/mergeCreatedDirectories.test.js +36 -0
- package/lib/mergers/mergeCreatedDirectories.test.js.map +1 -0
- package/lib/mergers/mergeCreations.d.ts +3 -0
- package/lib/mergers/mergeCreations.d.ts.map +1 -0
- package/lib/mergers/mergeCreations.js +15 -0
- package/lib/mergers/mergeCreations.js.map +1 -0
- package/lib/mergers/mergeCreations.test.d.ts +2 -0
- package/lib/mergers/mergeCreations.test.d.ts.map +1 -0
- package/lib/mergers/mergeCreations.test.js +74 -0
- package/lib/mergers/mergeCreations.test.js.map +1 -0
- package/lib/mergers/mergeFileEntries.d.ts +3 -0
- package/lib/mergers/mergeFileEntries.d.ts.map +1 -0
- package/lib/mergers/mergeFileEntries.js +24 -0
- package/lib/mergers/mergeFileEntries.js.map +1 -0
- package/lib/mergers/mergeFileEntries.test.d.ts +2 -0
- package/lib/mergers/mergeFileEntries.test.d.ts.map +1 -0
- package/lib/mergers/mergeFileEntries.test.js +49 -0
- package/lib/mergers/mergeFileEntries.test.js.map +1 -0
- package/lib/mergers/mergeRequests.d.ts +3 -0
- package/lib/mergers/mergeRequests.d.ts.map +1 -0
- package/lib/mergers/mergeRequests.js +8 -0
- package/lib/mergers/mergeRequests.js.map +1 -0
- package/lib/mergers/mergeRequests.test.d.ts +2 -0
- package/lib/mergers/mergeRequests.test.d.ts.map +1 -0
- package/lib/mergers/mergeRequests.test.js +29 -0
- package/lib/mergers/mergeRequests.test.js.map +1 -0
- package/lib/mergers/mergeScripts.d.ts +3 -0
- package/lib/mergers/mergeScripts.d.ts.map +1 -0
- package/lib/mergers/mergeScripts.js +55 -0
- package/lib/mergers/mergeScripts.js.map +1 -0
- package/lib/mergers/mergeScripts.test.d.ts +2 -0
- package/lib/mergers/mergeScripts.test.d.ts.map +1 -0
- package/lib/mergers/mergeScripts.test.js +370 -0
- package/lib/mergers/mergeScripts.test.js.map +1 -0
- package/lib/mergers/mergeSuggestions.d.ts +2 -0
- package/lib/mergers/mergeSuggestions.d.ts.map +1 -0
- package/lib/mergers/mergeSuggestions.js +4 -0
- package/lib/mergers/mergeSuggestions.js.map +1 -0
- package/lib/mergers/mergeSuggestions.test.d.ts +2 -0
- package/lib/mergers/mergeSuggestions.test.d.ts.map +1 -0
- package/lib/mergers/mergeSuggestions.test.js +20 -0
- package/lib/mergers/mergeSuggestions.test.js.map +1 -0
- package/lib/options.d.ts +14 -0
- package/lib/options.d.ts.map +1 -0
- package/lib/options.js +2 -0
- package/lib/options.js.map +1 -0
- package/lib/packageData.d.ts +2 -0
- package/lib/packageData.d.ts.map +1 -0
- package/lib/packageData.js +6 -0
- package/lib/packageData.js.map +1 -0
- package/lib/packageData.test.d.ts +2 -0
- package/lib/packageData.test.d.ts.map +1 -0
- package/lib/packageData.test.js +9 -0
- package/lib/packageData.test.js.map +1 -0
- package/lib/predicates/isCreatedConfig.d.ts +3 -0
- package/lib/predicates/isCreatedConfig.d.ts.map +1 -0
- package/lib/predicates/isCreatedConfig.js +8 -0
- package/lib/predicates/isCreatedConfig.js.map +1 -0
- package/lib/predicates/isCreatedConfig.test.d.ts +2 -0
- package/lib/predicates/isCreatedConfig.test.d.ts.map +1 -0
- package/lib/predicates/isCreatedConfig.test.js +33 -0
- package/lib/predicates/isCreatedConfig.test.js.map +1 -0
- package/lib/predicates/isTemplate.d.ts +3 -0
- package/lib/predicates/isTemplate.d.ts.map +1 -0
- package/lib/predicates/isTemplate.js +10 -0
- package/lib/predicates/isTemplate.js.map +1 -0
- package/lib/predicates/isTemplate.test.d.ts +2 -0
- package/lib/predicates/isTemplate.test.d.ts.map +1 -0
- package/lib/predicates/isTemplate.test.js +32 -0
- package/lib/predicates/isTemplate.test.js.map +1 -0
- package/lib/preparation/prepareOptions.d.ts +14 -0
- package/lib/preparation/prepareOptions.d.ts.map +1 -0
- package/lib/preparation/prepareOptions.js +17 -0
- package/lib/preparation/prepareOptions.js.map +1 -0
- package/lib/preparation/prepareOptions.test.d.ts +2 -0
- package/lib/preparation/prepareOptions.test.d.ts.map +1 -0
- package/lib/preparation/prepareOptions.test.js +91 -0
- package/lib/preparation/prepareOptions.test.js.map +1 -0
- package/lib/preparation/produceBase.d.ts +10 -0
- package/lib/preparation/produceBase.d.ts.map +1 -0
- package/lib/preparation/produceBase.js +15 -0
- package/lib/preparation/produceBase.js.map +1 -0
- package/lib/preparation/produceBase.test.d.ts +2 -0
- package/lib/preparation/produceBase.test.d.ts.map +1 -0
- package/lib/preparation/produceBase.test.js +77 -0
- package/lib/preparation/produceBase.test.js.map +1 -0
- package/lib/preparation/produceTemplate.d.ts +12 -0
- package/lib/preparation/produceTemplate.d.ts.map +1 -0
- package/lib/preparation/produceTemplate.js +19 -0
- package/lib/preparation/produceTemplate.js.map +1 -0
- package/lib/producers/produceInput.d.ts +11 -0
- package/lib/producers/produceInput.d.ts.map +1 -0
- package/lib/producers/produceInput.js +12 -0
- package/lib/producers/produceInput.js.map +1 -0
- package/lib/producers/produceInput.test.d.ts +2 -0
- package/lib/producers/produceInput.test.d.ts.map +1 -0
- package/lib/producers/produceInput.test.js +37 -0
- package/lib/producers/produceInput.test.js.map +1 -0
- package/lib/producers/produceTemplate.d.ts +12 -0
- package/lib/producers/produceTemplate.d.ts.map +1 -0
- package/lib/producers/produceTemplate.js +19 -0
- package/lib/producers/produceTemplate.js.map +1 -0
- package/lib/producers/runInput.d.ts +11 -0
- package/lib/producers/runInput.d.ts.map +1 -0
- package/lib/producers/runInput.js +12 -0
- package/lib/producers/runInput.js.map +1 -0
- package/lib/producers/runInput.test.d.ts +2 -0
- package/lib/producers/runInput.test.d.ts.map +1 -0
- package/lib/producers/runInput.test.js +37 -0
- package/lib/producers/runInput.test.js.map +1 -0
- package/lib/producers copy/produceTemplate.d.ts +12 -0
- package/lib/producers copy/produceTemplate.d.ts.map +1 -0
- package/lib/producers copy/produceTemplate.js +19 -0
- package/lib/producers copy/produceTemplate.js.map +1 -0
- package/lib/runners/applyFilesToSystem.d.ts +4 -0
- package/lib/runners/applyFilesToSystem.d.ts.map +1 -0
- package/lib/runners/applyFilesToSystem.js +47 -0
- package/lib/runners/applyFilesToSystem.js.map +1 -0
- package/lib/runners/applyRequestsToSystem.d.ts +4 -0
- package/lib/runners/applyRequestsToSystem.d.ts.map +1 -0
- package/lib/runners/applyRequestsToSystem.js +13 -0
- package/lib/runners/applyRequestsToSystem.js.map +1 -0
- package/lib/runners/applyRequestsToSystem.test.d.ts +2 -0
- package/lib/runners/applyRequestsToSystem.test.d.ts.map +1 -0
- package/lib/runners/applyRequestsToSystem.test.js +33 -0
- package/lib/runners/applyRequestsToSystem.test.js.map +1 -0
- package/lib/runners/applyScriptsToSystem.d.ts +4 -0
- package/lib/runners/applyScriptsToSystem.d.ts.map +1 -0
- package/lib/runners/applyScriptsToSystem.js +28 -0
- package/lib/runners/applyScriptsToSystem.js.map +1 -0
- package/lib/runners/applyScriptsToSystem.test.d.ts +2 -0
- package/lib/runners/applyScriptsToSystem.test.d.ts.map +1 -0
- package/lib/runners/applyScriptsToSystem.test.js +93 -0
- package/lib/runners/applyScriptsToSystem.test.js.map +1 -0
- package/lib/runners/runCreation.d.ts +8 -0
- package/lib/runners/runCreation.d.ts.map +1 -0
- package/lib/runners/runCreation.js +15 -0
- package/lib/runners/runCreation.js.map +1 -0
- package/lib/runners/runInput.d.ts +11 -0
- package/lib/runners/runInput.d.ts.map +1 -0
- package/lib/runners/runInput.js +12 -0
- package/lib/runners/runInput.js.map +1 -0
- package/lib/runners/runInput.test.d.ts +2 -0
- package/lib/runners/runInput.test.d.ts.map +1 -0
- package/lib/runners/runInput.test.js +37 -0
- package/lib/runners/runInput.test.js.map +1 -0
- package/lib/runners/runTemplate.d.ts +17 -0
- package/lib/runners/runTemplate.d.ts.map +1 -0
- package/lib/runners/runTemplate.js +16 -0
- package/lib/runners/runTemplate.js.map +1 -0
- package/lib/runners/runTemplate.test.d.ts +2 -0
- package/lib/runners/runTemplate.test.d.ts.map +1 -0
- package/lib/runners/runTemplate.test.js +64 -0
- package/lib/runners/runTemplate.test.js.map +1 -0
- package/lib/types/about.d.ts +5 -0
- package/lib/types/about.d.ts.map +1 -0
- package/lib/types/about.js +2 -0
- package/lib/types/about.js.map +1 -0
- package/lib/types/creations.d.ts +20 -0
- package/lib/types/creations.d.ts.map +1 -0
- package/lib/types/creations.js +2 -0
- package/lib/types/creations.js.map +1 -0
- package/lib/types/inputs.d.ts +25 -0
- package/lib/types/inputs.d.ts.map +1 -0
- package/lib/types/inputs.js +2 -0
- package/lib/types/inputs.js.map +1 -0
- package/lib/types/modes.d.ts +2 -0
- package/lib/types/modes.d.ts.map +1 -0
- package/lib/types/modes.js +2 -0
- package/lib/types/modes.js.map +1 -0
- package/lib/types/options.d.ts +11 -0
- package/lib/types/options.d.ts.map +1 -0
- package/lib/types/options.js +2 -0
- package/lib/types/options.js.map +1 -0
- package/lib/types/system.d.ts +9 -0
- package/lib/types/system.d.ts.map +1 -0
- package/lib/types/system.js +2 -0
- package/lib/types/system.js.map +1 -0
- package/lib/types/templates.d.ts +28 -0
- package/lib/types/templates.d.ts.map +1 -0
- package/lib/types/templates.js +2 -0
- package/lib/types/templates.js.map +1 -0
- package/lib/utils/awaitLazyProperties.d.ts +6 -0
- package/lib/utils/awaitLazyProperties.d.ts.map +1 -0
- package/lib/utils/awaitLazyProperties.js +24 -0
- package/lib/utils/awaitLazyProperties.js.map +1 -0
- package/lib/utils/awaitLazyProperties.test.d.ts +2 -0
- package/lib/utils/awaitLazyProperties.test.d.ts.map +1 -0
- package/lib/utils/awaitLazyProperties.test.js +33 -0
- package/lib/utils/awaitLazyProperties.test.js.map +1 -0
- package/lib/utils/getSchemaDefaultValue.d.ts +3 -0
- package/lib/utils/getSchemaDefaultValue.d.ts.map +1 -0
- package/lib/utils/getSchemaDefaultValue.js +4 -0
- package/lib/utils/getSchemaDefaultValue.js.map +1 -0
- package/lib/utils/getSchemaTypeName.d.ts +3 -0
- package/lib/utils/getSchemaTypeName.d.ts.map +1 -0
- package/lib/utils/getSchemaTypeName.js +34 -0
- package/lib/utils/getSchemaTypeName.js.map +1 -0
- package/lib/utils/groupBy.d.ts +5 -0
- package/lib/utils/groupBy.d.ts.map +1 -0
- package/lib/utils/groupBy.js +12 -0
- package/lib/utils/groupBy.js.map +1 -0
- package/lib/utils/tryCatch.d.ts +3 -0
- package/lib/utils/tryCatch.d.ts.map +1 -0
- package/lib/utils/tryCatch.js +17 -0
- package/lib/utils/tryCatch.js.map +1 -0
- package/package.json +49 -4
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prepareOptions.d.ts","sourceRoot":"","sources":["../../src/preparation/prepareOptions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAG5C,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAG1E,MAAM,WAAW,oBAAoB,CAAC,YAAY,SAAS,QAAQ;IAClE,OAAO,EAAE,YAAY,CAAC;IACtB,OAAO,CAAC,EAAE,CACT,OAAO,EAAE,cAAc,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,KACjD,mBAAmB,CAAC,OAAO,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;CAChE;AAED,MAAM,WAAW,sBAAsB,CAAC,YAAY,SAAS,QAAQ,CACpE,SAAQ,OAAO,CAAC,WAAW,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,CAAC;IACjD,OAAO,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,wBAAsB,cAAc,CAAC,YAAY,SAAS,QAAQ,EACjE,IAAI,EAAE,oBAAoB,CAAC,YAAY,CAAC,EACxC,QAAQ,GAAE,sBAAsB,CAAC,YAAY,CAAM,GACjD,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,CAAC,CAiBhD"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { createSystemContextWithAuth } from "../contexts/createSystemContextWithAuth.js";
|
|
2
|
+
import { awaitLazyProperties } from "../utils/awaitLazyProperties.js";
|
|
3
|
+
export async function prepareOptions(base, settings = {}) {
|
|
4
|
+
const { existing = {} } = settings;
|
|
5
|
+
if (!base.prepare) {
|
|
6
|
+
return existing;
|
|
7
|
+
}
|
|
8
|
+
const system = await createSystemContextWithAuth({
|
|
9
|
+
directory: settings.directory ?? ".",
|
|
10
|
+
...settings,
|
|
11
|
+
});
|
|
12
|
+
return await awaitLazyProperties(base.prepare({
|
|
13
|
+
options: existing,
|
|
14
|
+
...system,
|
|
15
|
+
}));
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=prepareOptions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prepareOptions.js","sourceRoot":"","sources":["../../src/preparation/prepareOptions.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,2BAA2B,EAAE,MAAM,4CAA4C,CAAC;AAGzF,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAgBtE,MAAM,CAAC,KAAK,UAAU,cAAc,CACnC,IAAwC,EACxC,WAAiD,EAAE;IAEnD,MAAM,EAAE,QAAQ,GAAG,EAAE,EAAE,GAAG,QAAQ,CAAC;IACnC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;QACnB,OAAO,QAAQ,CAAC;IACjB,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,2BAA2B,CAAC;QAChD,SAAS,EAAE,QAAQ,CAAC,SAAS,IAAI,GAAG;QACpC,GAAG,QAAQ;KACX,CAAC,CAAC;IAEH,OAAO,MAAM,mBAAmB,CAC/B,IAAI,CAAC,OAAO,CAAC;QACZ,OAAO,EAAE,QAAQ;QACjB,GAAG,MAAM;KACT,CAAC,CACF,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prepareOptions.test.d.ts","sourceRoot":"","sources":["../../src/preparation/prepareOptions.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import { describe, expect, it, vi } from "vitest";
|
|
2
|
+
import { z } from "zod";
|
|
3
|
+
import { createTemplate } from "../creators/createTemplate.js";
|
|
4
|
+
import { prepareOptions } from "./prepareOptions.js";
|
|
5
|
+
const system = {
|
|
6
|
+
fetchers: {
|
|
7
|
+
fetch: vi.fn(),
|
|
8
|
+
octokit: {},
|
|
9
|
+
},
|
|
10
|
+
fs: {
|
|
11
|
+
readDirectory: vi.fn(),
|
|
12
|
+
readFile: vi.fn(),
|
|
13
|
+
writeDirectory: vi.fn(),
|
|
14
|
+
writeFile: vi.fn(),
|
|
15
|
+
},
|
|
16
|
+
runner: vi.fn(),
|
|
17
|
+
};
|
|
18
|
+
describe("prepareOptions", () => {
|
|
19
|
+
it("returns {} when no settings.options exists and the base does not have a prepare()", async () => {
|
|
20
|
+
const baseWithNoPrepare = {
|
|
21
|
+
options: {
|
|
22
|
+
value: z.string().optional(),
|
|
23
|
+
},
|
|
24
|
+
};
|
|
25
|
+
const actual = await prepareOptions(baseWithNoPrepare, { ...system });
|
|
26
|
+
expect(actual).toEqual({});
|
|
27
|
+
});
|
|
28
|
+
it("returns settings.options directly when it exists and the base does not have a prepare()", async () => {
|
|
29
|
+
const baseWithNoPrepare = {
|
|
30
|
+
options: {
|
|
31
|
+
value: z.string().optional(),
|
|
32
|
+
},
|
|
33
|
+
};
|
|
34
|
+
const options = { value: "input" };
|
|
35
|
+
const actual = await prepareOptions(baseWithNoPrepare, {
|
|
36
|
+
...system,
|
|
37
|
+
existing: options,
|
|
38
|
+
});
|
|
39
|
+
expect(actual).toEqual(options);
|
|
40
|
+
});
|
|
41
|
+
describe("prepare", () => {
|
|
42
|
+
const baseWithOptionalOption = {
|
|
43
|
+
options: {
|
|
44
|
+
value: z.string().optional(),
|
|
45
|
+
},
|
|
46
|
+
prepare({ options }) {
|
|
47
|
+
return {
|
|
48
|
+
value: options.value ?? "default",
|
|
49
|
+
};
|
|
50
|
+
},
|
|
51
|
+
};
|
|
52
|
+
it("uses an option value from produce when settings do not have options", async () => {
|
|
53
|
+
const actual = await prepareOptions(baseWithOptionalOption, system);
|
|
54
|
+
expect(actual).toEqual({ value: "default" });
|
|
55
|
+
});
|
|
56
|
+
it("uses an option value from produce when settings do not have the options value", async () => {
|
|
57
|
+
const actual = await prepareOptions(baseWithOptionalOption, {
|
|
58
|
+
...system,
|
|
59
|
+
existing: {},
|
|
60
|
+
});
|
|
61
|
+
expect(actual).toEqual({ value: "default" });
|
|
62
|
+
});
|
|
63
|
+
it("uses an option value from settings when settings have the options value", async () => {
|
|
64
|
+
const actual = await prepareOptions(baseWithOptionalOption, {
|
|
65
|
+
...system,
|
|
66
|
+
existing: {
|
|
67
|
+
value: "override",
|
|
68
|
+
},
|
|
69
|
+
});
|
|
70
|
+
expect(actual).toEqual({ value: "override" });
|
|
71
|
+
});
|
|
72
|
+
it("prepares options when given a template", async () => {
|
|
73
|
+
const template = createTemplate({
|
|
74
|
+
options: {
|
|
75
|
+
value: z.string(),
|
|
76
|
+
},
|
|
77
|
+
prepare() {
|
|
78
|
+
return {
|
|
79
|
+
value: () => Promise.resolve("default"),
|
|
80
|
+
};
|
|
81
|
+
},
|
|
82
|
+
produce() {
|
|
83
|
+
return {};
|
|
84
|
+
},
|
|
85
|
+
});
|
|
86
|
+
const actual = await prepareOptions(template);
|
|
87
|
+
expect(actual).toEqual({ value: "default" });
|
|
88
|
+
});
|
|
89
|
+
});
|
|
90
|
+
});
|
|
91
|
+
//# sourceMappingURL=prepareOptions.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prepareOptions.test.js","sourceRoot":"","sources":["../../src/preparation/prepareOptions.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { AnyShape, InferredObject } from "bingo";
|
|
2
|
+
import { BingoSystem } from "bingo-systems";
|
|
3
|
+
import { Base } from "../../../bingo-stratum/src/types/bases.js";
|
|
4
|
+
export interface ProduceBaseSettings<OptionsShape extends AnyShape> extends Partial<BingoSystem> {
|
|
5
|
+
directory?: string;
|
|
6
|
+
offline?: boolean;
|
|
7
|
+
options?: Partial<InferredObject<OptionsShape>>;
|
|
8
|
+
}
|
|
9
|
+
export declare function produceBase<OptionsShape extends AnyShape>(base: Base<OptionsShape>, settings?: ProduceBaseSettings<OptionsShape>): Promise<Partial<InferredObject<OptionsShape>>>;
|
|
10
|
+
//# sourceMappingURL=produceBase.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"produceBase.d.ts","sourceRoot":"","sources":["../../src/preparation/produceBase.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,QAAQ,EAGR,cAAc,EACd,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,EAAE,IAAI,EAAE,MAAM,2CAA2C,CAAC;AAEjE,MAAM,WAAW,mBAAmB,CAAC,YAAY,SAAS,QAAQ,CACjE,SAAQ,OAAO,CAAC,WAAW,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,CAAC;CAChD;AAED,wBAAsB,WAAW,CAAC,YAAY,SAAS,QAAQ,EAC9D,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,EACxB,QAAQ,GAAE,mBAAmB,CAAC,YAAY,CAAM,GAC9C,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,CAAC,CAgBhD"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { awaitLazyProperties, createSystemContextWithAuth, } from "bingo";
|
|
2
|
+
export async function produceBase(base, settings = {}) {
|
|
3
|
+
if (!base.produce) {
|
|
4
|
+
return settings.options ?? {};
|
|
5
|
+
}
|
|
6
|
+
const system = await createSystemContextWithAuth({
|
|
7
|
+
directory: settings.directory ?? ".",
|
|
8
|
+
...settings,
|
|
9
|
+
});
|
|
10
|
+
return await awaitLazyProperties(base.produce({
|
|
11
|
+
options: settings.options ?? {},
|
|
12
|
+
...system,
|
|
13
|
+
}));
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=produceBase.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"produceBase.js","sourceRoot":"","sources":["../../src/preparation/produceBase.ts"],"names":[],"mappings":"AAAA,OAAO,EAEN,mBAAmB,EACnB,2BAA2B,GAE3B,MAAM,OAAO,CAAC;AAYf,MAAM,CAAC,KAAK,UAAU,WAAW,CAChC,IAAwB,EACxB,WAA8C,EAAE;IAEhD,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;QACnB,OAAO,QAAQ,CAAC,OAAO,IAAI,EAAE,CAAC;IAC/B,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,2BAA2B,CAAC;QAChD,SAAS,EAAE,QAAQ,CAAC,SAAS,IAAI,GAAG;QACpC,GAAG,QAAQ;KACX,CAAC,CAAC;IAEH,OAAO,MAAM,mBAAmB,CAC/B,IAAI,CAAC,OAAO,CAAC;QACZ,OAAO,EAAE,QAAQ,CAAC,OAAO,IAAI,EAAE;QAC/B,GAAG,MAAM;KACT,CAAC,CACF,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"produceBase.test.d.ts","sourceRoot":"","sources":["../../src/preparation/produceBase.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import { describe, expect, it, vi } from "vitest";
|
|
2
|
+
import { z } from "zod";
|
|
3
|
+
import { createBase } from "../../../bingo-stratum/src/creators/createBase.js";
|
|
4
|
+
import { produceBase } from "./produceBase.js";
|
|
5
|
+
const system = {
|
|
6
|
+
fetchers: {
|
|
7
|
+
fetch: vi.fn(),
|
|
8
|
+
octokit: {},
|
|
9
|
+
},
|
|
10
|
+
fs: {
|
|
11
|
+
readDirectory: vi.fn(),
|
|
12
|
+
readFile: vi.fn(),
|
|
13
|
+
writeDirectory: vi.fn(),
|
|
14
|
+
writeFile: vi.fn(),
|
|
15
|
+
},
|
|
16
|
+
runner: vi.fn(),
|
|
17
|
+
};
|
|
18
|
+
describe("produceBase", () => {
|
|
19
|
+
it("returns {} when no settings.options exists and the Base does not have a produce()", async () => {
|
|
20
|
+
const baseWithNoProduce = createBase({
|
|
21
|
+
options: {
|
|
22
|
+
value: z.string().optional(),
|
|
23
|
+
},
|
|
24
|
+
});
|
|
25
|
+
const actual = await produceBase(baseWithNoProduce, { ...system });
|
|
26
|
+
expect(actual).toEqual({});
|
|
27
|
+
});
|
|
28
|
+
it("returns settings.options directly when it exists and the Base does not have a produce()", async () => {
|
|
29
|
+
const baseWithNoProduce = createBase({
|
|
30
|
+
options: {
|
|
31
|
+
value: z.string().optional(),
|
|
32
|
+
},
|
|
33
|
+
});
|
|
34
|
+
const options = { value: "input" };
|
|
35
|
+
const actual = await produceBase(baseWithNoProduce, { ...system, options });
|
|
36
|
+
expect(actual).toEqual(options);
|
|
37
|
+
});
|
|
38
|
+
describe("produce", () => {
|
|
39
|
+
const baseWithOptionalOption = createBase({
|
|
40
|
+
options: {
|
|
41
|
+
value: z.string().optional(),
|
|
42
|
+
},
|
|
43
|
+
produce({ options }) {
|
|
44
|
+
return {
|
|
45
|
+
value: options.value ?? "default",
|
|
46
|
+
};
|
|
47
|
+
},
|
|
48
|
+
});
|
|
49
|
+
it("uses an option value from produce when settings do not have options", async () => {
|
|
50
|
+
const actual = await produceBase(baseWithOptionalOption, system);
|
|
51
|
+
expect(actual).toEqual({
|
|
52
|
+
value: "default",
|
|
53
|
+
});
|
|
54
|
+
});
|
|
55
|
+
it("uses an option value from produce when settings do not have the options value", async () => {
|
|
56
|
+
const actual = await produceBase(baseWithOptionalOption, {
|
|
57
|
+
...system,
|
|
58
|
+
options: {},
|
|
59
|
+
});
|
|
60
|
+
expect(actual).toEqual({
|
|
61
|
+
value: "default",
|
|
62
|
+
});
|
|
63
|
+
});
|
|
64
|
+
it("uses an option value from settings when settings have the options value", async () => {
|
|
65
|
+
const actual = await produceBase(baseWithOptionalOption, {
|
|
66
|
+
...system,
|
|
67
|
+
options: {
|
|
68
|
+
value: "override",
|
|
69
|
+
},
|
|
70
|
+
});
|
|
71
|
+
expect(actual).toEqual({
|
|
72
|
+
value: "override",
|
|
73
|
+
});
|
|
74
|
+
});
|
|
75
|
+
});
|
|
76
|
+
});
|
|
77
|
+
//# sourceMappingURL=produceBase.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"produceBase.test.js","sourceRoot":"","sources":["../../src/preparation/produceBase.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { BingoSystem } from "bingo-systems";
|
|
2
|
+
import { AnyShape, InferredObject } from "../options.js";
|
|
3
|
+
import { Creation } from "../types/creations.js";
|
|
4
|
+
import { ProductionMode } from "../types/modes.js";
|
|
5
|
+
import { Template } from "../types/templates.js";
|
|
6
|
+
export interface ProduceTemplateSettings<OptionsShape extends AnyShape> extends Partial<BingoSystem> {
|
|
7
|
+
mode?: ProductionMode;
|
|
8
|
+
offline?: boolean;
|
|
9
|
+
options: InferredObject<OptionsShape>;
|
|
10
|
+
}
|
|
11
|
+
export declare function produceTemplate<OptionsShape extends AnyShape>(template: Template<OptionsShape>, settings: ProduceTemplateSettings<OptionsShape>): Promise<Partial<Creation>>;
|
|
12
|
+
//# sourceMappingURL=produceTemplate.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"produceTemplate.d.ts","sourceRoot":"","sources":["../../src/preparation/produceTemplate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAI5C,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjD,MAAM,WAAW,uBAAuB,CAAC,YAAY,SAAS,QAAQ,CACrE,SAAQ,OAAO,CAAC,WAAW,CAAC;IAC5B,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,cAAc,CAAC,YAAY,CAAC,CAAC;CACtC;AAED,wBAAsB,eAAe,CAAC,YAAY,SAAS,QAAQ,EAClE,QAAQ,EAAE,QAAQ,CAAC,YAAY,CAAC,EAChC,QAAQ,EAAE,uBAAuB,CAAC,YAAY,CAAC,GAC7C,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAmB5B"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { createSystemContextWithAuth } from "../contexts/createSystemContextWithAuth.js";
|
|
2
|
+
import { mergeCreations } from "../mergers/mergeCreations.js";
|
|
3
|
+
export async function produceTemplate(template, settings) {
|
|
4
|
+
const system = await createSystemContextWithAuth({
|
|
5
|
+
directory: ".",
|
|
6
|
+
...settings,
|
|
7
|
+
});
|
|
8
|
+
const context = {
|
|
9
|
+
...system,
|
|
10
|
+
options: settings.options,
|
|
11
|
+
};
|
|
12
|
+
let creation = template.produce(context);
|
|
13
|
+
const augmenter = settings.mode && template[settings.mode];
|
|
14
|
+
if (augmenter) {
|
|
15
|
+
creation = mergeCreations(creation, augmenter(context));
|
|
16
|
+
}
|
|
17
|
+
return creation;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=produceTemplate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"produceTemplate.js","sourceRoot":"","sources":["../../src/preparation/produceTemplate.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,2BAA2B,EAAE,MAAM,4CAA4C,CAAC;AACzF,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAa9D,MAAM,CAAC,KAAK,UAAU,eAAe,CACpC,QAAgC,EAChC,QAA+C;IAE/C,MAAM,MAAM,GAAG,MAAM,2BAA2B,CAAC;QAChD,SAAS,EAAE,GAAG;QACd,GAAG,QAAQ;KACX,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG;QACf,GAAG,MAAM;QACT,OAAO,EAAE,QAAQ,CAAC,OAAO;KACzB,CAAC;IAEF,IAAI,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAEzC,MAAM,SAAS,GAAG,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC3D,IAAI,SAAS,EAAE,CAAC;QACf,QAAQ,GAAG,cAAc,CAAC,QAAQ,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;IACzD,CAAC;IAED,OAAO,QAAQ,CAAC;AACjB,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { BingoSystem } from "bingo-systems";
|
|
2
|
+
import { AnyShape, InferredObject } from "../options.js";
|
|
3
|
+
import { Input } from "../types/inputs.js";
|
|
4
|
+
export interface RunInputSettings<Args extends object = object> extends Partial<BingoSystem> {
|
|
5
|
+
args: Args;
|
|
6
|
+
auth?: string;
|
|
7
|
+
directory?: string;
|
|
8
|
+
offline?: boolean;
|
|
9
|
+
}
|
|
10
|
+
export declare function runInput<Result, ArgsShape extends AnyShape>(input: Input<Result, ArgsShape>, settings: RunInputSettings<InferredObject<ArgsShape>>): Result;
|
|
11
|
+
//# sourceMappingURL=produceInput.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"produceInput.d.ts","sourceRoot":"","sources":["../../src/producers/produceInput.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAG5C,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAE3C,MAAM,WAAW,gBAAgB,CAAC,IAAI,SAAS,MAAM,GAAG,MAAM,CAC7D,SAAQ,OAAO,CAAC,WAAW,CAAC;IAC5B,IAAI,EAAE,IAAI,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,wBAAgB,QAAQ,CAAC,MAAM,EAAE,SAAS,SAAS,QAAQ,EAC1D,KAAK,EAAE,KAAK,CAAC,MAAM,EAAE,SAAS,CAAC,EAC/B,QAAQ,EAAE,gBAAgB,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,UAWrD"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { createSystemContext } from "../contexts/createSystemContext.js";
|
|
2
|
+
export function runInput(input, settings) {
|
|
3
|
+
const system = createSystemContext({
|
|
4
|
+
directory: settings.directory ?? ".",
|
|
5
|
+
...settings,
|
|
6
|
+
});
|
|
7
|
+
return input({
|
|
8
|
+
args: settings.args,
|
|
9
|
+
...system,
|
|
10
|
+
});
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=produceInput.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"produceInput.js","sourceRoot":"","sources":["../../src/producers/produceInput.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AAYzE,MAAM,UAAU,QAAQ,CACvB,KAA+B,EAC/B,QAAqD;IAErD,MAAM,MAAM,GAAG,mBAAmB,CAAC;QAClC,SAAS,EAAE,QAAQ,CAAC,SAAS,IAAI,GAAG;QACpC,GAAG,QAAQ;KACX,CAAC,CAAC;IAEH,OAAO,KAAK,CAAC;QACZ,IAAI,EAAE,QAAQ,CAAC,IAAI;QACnB,GAAG,MAAM;KACT,CAAC,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"produceInput.test.d.ts","sourceRoot":"","sources":["../../src/producers/produceInput.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import path from "node:path";
|
|
2
|
+
import { describe, expect, it } from "vitest";
|
|
3
|
+
import { z } from "zod";
|
|
4
|
+
import { createInput } from "../creators/createInput.js";
|
|
5
|
+
import { runInput } from "./runInput.js";
|
|
6
|
+
const input = createInput({
|
|
7
|
+
args: {
|
|
8
|
+
value: z.number(),
|
|
9
|
+
},
|
|
10
|
+
async produce({ args, runner }) {
|
|
11
|
+
return {
|
|
12
|
+
directory: (await runner("pwd")).stdout,
|
|
13
|
+
doubled: args.value * 2,
|
|
14
|
+
};
|
|
15
|
+
},
|
|
16
|
+
});
|
|
17
|
+
describe("produceInput", () => {
|
|
18
|
+
it("defaults directory to '.' when not provided", async () => {
|
|
19
|
+
const actual = await runInput(input, { args: { value: 2 } });
|
|
20
|
+
expect(actual).toEqual({
|
|
21
|
+
directory: process.cwd(),
|
|
22
|
+
doubled: 4,
|
|
23
|
+
});
|
|
24
|
+
});
|
|
25
|
+
it("sets directory when provided", async () => {
|
|
26
|
+
const directory = path.join(process.cwd(), "..");
|
|
27
|
+
const actual = await runInput(input, {
|
|
28
|
+
args: { value: 2 },
|
|
29
|
+
directory,
|
|
30
|
+
});
|
|
31
|
+
expect(actual).toEqual({
|
|
32
|
+
directory,
|
|
33
|
+
doubled: 4,
|
|
34
|
+
});
|
|
35
|
+
});
|
|
36
|
+
});
|
|
37
|
+
//# sourceMappingURL=produceInput.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"produceInput.test.js","sourceRoot":"","sources":["../../src/producers/produceInput.test.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,MAAM,KAAK,GAAG,WAAW,CAAC;IACzB,IAAI,EAAE;QACL,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;KACjB;IACD,KAAK,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE;QAC7B,OAAO;YACN,SAAS,EAAE,CAAC,MAAM,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM;YACvC,OAAO,EAAE,IAAI,CAAC,KAAK,GAAG,CAAC;SACvB,CAAC;IACH,CAAC;CACD,CAAC,CAAC;AAEH,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;IAC7B,EAAE,CAAC,6CAA6C,EAAE,KAAK,IAAI,EAAE;QAC5D,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;QAE7D,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;YACtB,SAAS,EAAE,OAAO,CAAC,GAAG,EAAE;YACxB,OAAO,EAAE,CAAC;SACV,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8BAA8B,EAAE,KAAK,IAAI,EAAE;QAC7C,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,CAAC;QAEjD,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,KAAK,EAAE;YACpC,IAAI,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE;YAClB,SAAS;SACT,CAAC,CAAC;QAEH,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;YACtB,SAAS;YACT,OAAO,EAAE,CAAC;SACV,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { BingoSystem } from "bingo-systems";
|
|
2
|
+
import { AnyShape, InferredObject } from "../options.js";
|
|
3
|
+
import { Creation } from "../types/creations.js";
|
|
4
|
+
import { ProductionMode } from "../types/modes.js";
|
|
5
|
+
import { Template } from "../types/templates.js";
|
|
6
|
+
export interface ProduceTemplateSettings<OptionsShape extends AnyShape> extends Partial<BingoSystem> {
|
|
7
|
+
mode?: ProductionMode;
|
|
8
|
+
offline?: boolean;
|
|
9
|
+
options: InferredObject<OptionsShape>;
|
|
10
|
+
}
|
|
11
|
+
export declare function produceTemplate<OptionsShape extends AnyShape>(template: Template<OptionsShape>, settings: ProduceTemplateSettings<OptionsShape>): Promise<Partial<Creation>>;
|
|
12
|
+
//# sourceMappingURL=produceTemplate.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"produceTemplate.d.ts","sourceRoot":"","sources":["../../src/producers/produceTemplate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAI5C,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjD,MAAM,WAAW,uBAAuB,CAAC,YAAY,SAAS,QAAQ,CACrE,SAAQ,OAAO,CAAC,WAAW,CAAC;IAC5B,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,cAAc,CAAC,YAAY,CAAC,CAAC;CACtC;AAED,wBAAsB,eAAe,CAAC,YAAY,SAAS,QAAQ,EAClE,QAAQ,EAAE,QAAQ,CAAC,YAAY,CAAC,EAChC,QAAQ,EAAE,uBAAuB,CAAC,YAAY,CAAC,GAC7C,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAmB5B"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { createSystemContextWithAuth } from "../contexts/createSystemContextWithAuth.js";
|
|
2
|
+
import { mergeCreations } from "../mergers/mergeCreations.js";
|
|
3
|
+
export async function produceTemplate(template, settings) {
|
|
4
|
+
const system = await createSystemContextWithAuth({
|
|
5
|
+
directory: ".",
|
|
6
|
+
...settings,
|
|
7
|
+
});
|
|
8
|
+
const context = {
|
|
9
|
+
...system,
|
|
10
|
+
options: settings.options,
|
|
11
|
+
};
|
|
12
|
+
let creation = template.produce(context);
|
|
13
|
+
const augmenter = settings.mode && template[settings.mode];
|
|
14
|
+
if (augmenter) {
|
|
15
|
+
creation = mergeCreations(creation, augmenter(context));
|
|
16
|
+
}
|
|
17
|
+
return creation;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=produceTemplate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"produceTemplate.js","sourceRoot":"","sources":["../../src/producers/produceTemplate.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,2BAA2B,EAAE,MAAM,4CAA4C,CAAC;AACzF,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAa9D,MAAM,CAAC,KAAK,UAAU,eAAe,CACpC,QAAgC,EAChC,QAA+C;IAE/C,MAAM,MAAM,GAAG,MAAM,2BAA2B,CAAC;QAChD,SAAS,EAAE,GAAG;QACd,GAAG,QAAQ;KACX,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG;QACf,GAAG,MAAM;QACT,OAAO,EAAE,QAAQ,CAAC,OAAO;KACzB,CAAC;IAEF,IAAI,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAEzC,MAAM,SAAS,GAAG,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC3D,IAAI,SAAS,EAAE,CAAC;QACf,QAAQ,GAAG,cAAc,CAAC,QAAQ,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;IACzD,CAAC;IAED,OAAO,QAAQ,CAAC;AACjB,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { BingoSystem } from "bingo-systems";
|
|
2
|
+
import { AnyShape, InferredObject } from "../options.js";
|
|
3
|
+
import { Input } from "../types/inputs.js";
|
|
4
|
+
export interface RunInputSettings<Args extends object = object> extends Partial<BingoSystem> {
|
|
5
|
+
args: Args;
|
|
6
|
+
auth?: string;
|
|
7
|
+
directory?: string;
|
|
8
|
+
offline?: boolean;
|
|
9
|
+
}
|
|
10
|
+
export declare function runInput<Result, ArgsShape extends AnyShape>(input: Input<Result, ArgsShape>, settings: RunInputSettings<InferredObject<ArgsShape>>): Result;
|
|
11
|
+
//# sourceMappingURL=runInput.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runInput.d.ts","sourceRoot":"","sources":["../../src/producers/runInput.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAG5C,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAE3C,MAAM,WAAW,gBAAgB,CAAC,IAAI,SAAS,MAAM,GAAG,MAAM,CAC7D,SAAQ,OAAO,CAAC,WAAW,CAAC;IAC5B,IAAI,EAAE,IAAI,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,wBAAgB,QAAQ,CAAC,MAAM,EAAE,SAAS,SAAS,QAAQ,EAC1D,KAAK,EAAE,KAAK,CAAC,MAAM,EAAE,SAAS,CAAC,EAC/B,QAAQ,EAAE,gBAAgB,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,UAWrD"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { createSystemContext } from "../contexts/createSystemContext.js";
|
|
2
|
+
export function runInput(input, settings) {
|
|
3
|
+
const system = createSystemContext({
|
|
4
|
+
directory: settings.directory ?? ".",
|
|
5
|
+
...settings,
|
|
6
|
+
});
|
|
7
|
+
return input({
|
|
8
|
+
args: settings.args,
|
|
9
|
+
...system,
|
|
10
|
+
});
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=runInput.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runInput.js","sourceRoot":"","sources":["../../src/producers/runInput.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AAYzE,MAAM,UAAU,QAAQ,CACvB,KAA+B,EAC/B,QAAqD;IAErD,MAAM,MAAM,GAAG,mBAAmB,CAAC;QAClC,SAAS,EAAE,QAAQ,CAAC,SAAS,IAAI,GAAG;QACpC,GAAG,QAAQ;KACX,CAAC,CAAC;IAEH,OAAO,KAAK,CAAC;QACZ,IAAI,EAAE,QAAQ,CAAC,IAAI;QACnB,GAAG,MAAM;KACT,CAAC,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runInput.test.d.ts","sourceRoot":"","sources":["../../src/producers/runInput.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import path from "node:path";
|
|
2
|
+
import { describe, expect, it } from "vitest";
|
|
3
|
+
import { z } from "zod";
|
|
4
|
+
import { createInput } from "../creators/createInput.js";
|
|
5
|
+
import { runInput } from "./runInput.js";
|
|
6
|
+
const input = createInput({
|
|
7
|
+
args: {
|
|
8
|
+
value: z.number(),
|
|
9
|
+
},
|
|
10
|
+
async produce({ args, runner }) {
|
|
11
|
+
return {
|
|
12
|
+
directory: (await runner("pwd")).stdout,
|
|
13
|
+
doubled: args.value * 2,
|
|
14
|
+
};
|
|
15
|
+
},
|
|
16
|
+
});
|
|
17
|
+
describe("produceInput", () => {
|
|
18
|
+
it("defaults directory to '.' when not provided", async () => {
|
|
19
|
+
const actual = await runInput(input, { args: { value: 2 } });
|
|
20
|
+
expect(actual).toEqual({
|
|
21
|
+
directory: process.cwd(),
|
|
22
|
+
doubled: 4,
|
|
23
|
+
});
|
|
24
|
+
});
|
|
25
|
+
it("sets directory when provided", async () => {
|
|
26
|
+
const directory = path.join(process.cwd(), "..");
|
|
27
|
+
const actual = await runInput(input, {
|
|
28
|
+
args: { value: 2 },
|
|
29
|
+
directory,
|
|
30
|
+
});
|
|
31
|
+
expect(actual).toEqual({
|
|
32
|
+
directory,
|
|
33
|
+
doubled: 4,
|
|
34
|
+
});
|
|
35
|
+
});
|
|
36
|
+
});
|
|
37
|
+
//# sourceMappingURL=runInput.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runInput.test.js","sourceRoot":"","sources":["../../src/producers/runInput.test.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,MAAM,KAAK,GAAG,WAAW,CAAC;IACzB,IAAI,EAAE;QACL,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;KACjB;IACD,KAAK,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE;QAC7B,OAAO;YACN,SAAS,EAAE,CAAC,MAAM,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM;YACvC,OAAO,EAAE,IAAI,CAAC,KAAK,GAAG,CAAC;SACvB,CAAC;IACH,CAAC;CACD,CAAC,CAAC;AAEH,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;IAC7B,EAAE,CAAC,6CAA6C,EAAE,KAAK,IAAI,EAAE;QAC5D,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;QAE7D,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;YACtB,SAAS,EAAE,OAAO,CAAC,GAAG,EAAE;YACxB,OAAO,EAAE,CAAC;SACV,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8BAA8B,EAAE,KAAK,IAAI,EAAE;QAC7C,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,CAAC;QAEjD,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,KAAK,EAAE;YACpC,IAAI,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE;YAClB,SAAS;SACT,CAAC,CAAC;QAEH,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;YACtB,SAAS;YACT,OAAO,EAAE,CAAC;SACV,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { BingoSystem } from "bingo-systems";
|
|
2
|
+
import { AnyShape, InferredObject } from "../options.js";
|
|
3
|
+
import { Creation } from "../types/creations.js";
|
|
4
|
+
import { ProductionMode } from "../types/modes.js";
|
|
5
|
+
import { Template } from "../types/templates.js";
|
|
6
|
+
export interface ProduceTemplateSettings<OptionsShape extends AnyShape> extends Partial<BingoSystem> {
|
|
7
|
+
mode?: ProductionMode;
|
|
8
|
+
offline?: boolean;
|
|
9
|
+
options: InferredObject<OptionsShape>;
|
|
10
|
+
}
|
|
11
|
+
export declare function produceTemplate<OptionsShape extends AnyShape>(template: Template<OptionsShape>, settings: ProduceTemplateSettings<OptionsShape>): Promise<Partial<Creation>>;
|
|
12
|
+
//# sourceMappingURL=produceTemplate.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"produceTemplate.d.ts","sourceRoot":"","sources":["../../src/producers copy/produceTemplate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAI5C,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjD,MAAM,WAAW,uBAAuB,CAAC,YAAY,SAAS,QAAQ,CACrE,SAAQ,OAAO,CAAC,WAAW,CAAC;IAC5B,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,cAAc,CAAC,YAAY,CAAC,CAAC;CACtC;AAED,wBAAsB,eAAe,CAAC,YAAY,SAAS,QAAQ,EAClE,QAAQ,EAAE,QAAQ,CAAC,YAAY,CAAC,EAChC,QAAQ,EAAE,uBAAuB,CAAC,YAAY,CAAC,GAC7C,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAmB5B"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { createSystemContextWithAuth } from "../contexts/createSystemContextWithAuth.js";
|
|
2
|
+
import { mergeCreations } from "../mergers/mergeCreations.js";
|
|
3
|
+
export async function produceTemplate(template, settings) {
|
|
4
|
+
const system = await createSystemContextWithAuth({
|
|
5
|
+
directory: ".",
|
|
6
|
+
...settings,
|
|
7
|
+
});
|
|
8
|
+
const context = {
|
|
9
|
+
...system,
|
|
10
|
+
options: settings.options,
|
|
11
|
+
};
|
|
12
|
+
let creation = template.produce(context);
|
|
13
|
+
const augmenter = settings.mode && template[settings.mode];
|
|
14
|
+
if (augmenter) {
|
|
15
|
+
creation = mergeCreations(creation, augmenter(context));
|
|
16
|
+
}
|
|
17
|
+
return creation;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=produceTemplate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"produceTemplate.js","sourceRoot":"","sources":["../../src/producers copy/produceTemplate.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,2BAA2B,EAAE,MAAM,4CAA4C,CAAC;AACzF,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAa9D,MAAM,CAAC,KAAK,UAAU,eAAe,CACpC,QAAgC,EAChC,QAA+C;IAE/C,MAAM,MAAM,GAAG,MAAM,2BAA2B,CAAC;QAChD,SAAS,EAAE,GAAG;QACd,GAAG,QAAQ;KACX,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG;QACf,GAAG,MAAM;QACT,OAAO,EAAE,QAAQ,CAAC,OAAO;KACzB,CAAC;IAEF,IAAI,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAEzC,MAAM,SAAS,GAAG,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC3D,IAAI,SAAS,EAAE,CAAC;QACf,QAAQ,GAAG,cAAc,CAAC,QAAQ,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;IACzD,CAAC;IAED,OAAO,QAAQ,CAAC;AACjB,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { CreatedDirectory } from "bingo-fs";
|
|
2
|
+
import { WritingFileSystem } from "bingo-systems";
|
|
3
|
+
export declare function applyFilesToSystem(files: CreatedDirectory, system: WritingFileSystem, directory: string): Promise<void>;
|
|
4
|
+
//# sourceMappingURL=applyFilesToSystem.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"applyFilesToSystem.d.ts","sourceRoot":"","sources":["../../src/runners/applyFilesToSystem.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAIlD,wBAAsB,kBAAkB,CACvC,KAAK,EAAE,gBAAgB,EACvB,MAAM,EAAE,iBAAiB,EACzB,SAAS,EAAE,MAAM,iBAGjB"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import * as path from "node:path";
|
|
2
|
+
import prettier from "prettier";
|
|
3
|
+
export async function applyFilesToSystem(files, system, directory) {
|
|
4
|
+
await writeToSystemWorker(files, system, directory);
|
|
5
|
+
}
|
|
6
|
+
async function format(fileName, text) {
|
|
7
|
+
const parser = inferParser(fileName, text);
|
|
8
|
+
if (!parser) {
|
|
9
|
+
return text;
|
|
10
|
+
}
|
|
11
|
+
return await prettier.format(text, {
|
|
12
|
+
parser,
|
|
13
|
+
useTabs: true,
|
|
14
|
+
});
|
|
15
|
+
}
|
|
16
|
+
function inferParser(fileName, text) {
|
|
17
|
+
if (text.startsWith("{")) {
|
|
18
|
+
return "json";
|
|
19
|
+
}
|
|
20
|
+
switch (fileName.split(".").at(-1)) {
|
|
21
|
+
case "cjs":
|
|
22
|
+
case "js":
|
|
23
|
+
return "babel";
|
|
24
|
+
case "json":
|
|
25
|
+
return "json";
|
|
26
|
+
case "md":
|
|
27
|
+
return "markdown";
|
|
28
|
+
case "yml":
|
|
29
|
+
return "yaml";
|
|
30
|
+
}
|
|
31
|
+
return undefined;
|
|
32
|
+
}
|
|
33
|
+
async function writeToSystemWorker(files, system, basePath) {
|
|
34
|
+
await system.writeDirectory(basePath);
|
|
35
|
+
for (const [fileName, contents] of Object.entries(files)) {
|
|
36
|
+
if (typeof contents === "string") {
|
|
37
|
+
await system.writeFile(path.join(basePath, fileName), await format(fileName, contents));
|
|
38
|
+
}
|
|
39
|
+
else if (Array.isArray(contents)) {
|
|
40
|
+
await system.writeFile(path.join(basePath, fileName), await format(fileName, contents[0]), contents[1]);
|
|
41
|
+
}
|
|
42
|
+
else if (typeof contents === "object") {
|
|
43
|
+
await writeToSystemWorker(contents, system, path.join(basePath, fileName));
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=applyFilesToSystem.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"applyFilesToSystem.js","sourceRoot":"","sources":["../../src/runners/applyFilesToSystem.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,QAAQ,MAAM,UAAU,CAAC;AAEhC,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACvC,KAAuB,EACvB,MAAyB,EACzB,SAAiB;IAEjB,MAAM,mBAAmB,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;AACrD,CAAC;AAED,KAAK,UAAU,MAAM,CAAC,QAAgB,EAAE,IAAY;IACnD,MAAM,MAAM,GAAG,WAAW,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IAC3C,IAAI,CAAC,MAAM,EAAE,CAAC;QACb,OAAO,IAAI,CAAC;IACb,CAAC;IAED,OAAO,MAAM,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE;QAClC,MAAM;QACN,OAAO,EAAE,IAAI;KACb,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAAC,QAAgB,EAAE,IAAY;IAClD,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QAC1B,OAAO,MAAM,CAAC;IACf,CAAC;IAED,QAAQ,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACpC,KAAK,KAAK,CAAC;QACX,KAAK,IAAI;YACR,OAAO,OAAO,CAAC;QAChB,KAAK,MAAM;YACV,OAAO,MAAM,CAAC;QACf,KAAK,IAAI;YACR,OAAO,UAAU,CAAC;QACnB,KAAK,KAAK;YACT,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,OAAO,SAAS,CAAC;AAClB,CAAC;AAED,KAAK,UAAU,mBAAmB,CACjC,KAAuB,EACvB,MAAyB,EACzB,QAAgB;IAEhB,MAAM,MAAM,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;IAEtC,KAAK,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1D,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;YAClC,MAAM,MAAM,CAAC,SAAS,CACrB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAC7B,MAAM,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAChC,CAAC;QACH,CAAC;aAAM,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;YACpC,MAAM,MAAM,CAAC,SAAS,CACrB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAC7B,MAAM,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,EACnC,QAAQ,CAAC,CAAC,CAAC,CACX,CAAC;QACH,CAAC;aAAM,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;YACzC,MAAM,mBAAmB,CACxB,QAAQ,EACR,MAAM,EACN,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAC7B,CAAC;QACH,CAAC;IACF,CAAC;AACF,CAAC"}
|