UNPKG

create-nx-workspace

Version:

Smart Repos · Fast Builds

62 lines (61 loc) 2.08 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getMessageFactory = getMessageFactory; const git_1 = require("../git/git"); function getSetupMessage(url, pushedToVcs) { if (pushedToVcs === git_1.VcsPushStatus.PushedToVcs) { return url ? `Go to Nx Cloud and finish the setup: ${url}` : 'Return to Nx Cloud and finish the setup.'; } // Default case: FailedToPushToVcs const action = url ? 'go' : 'return'; const urlSuffix = url ? `: ${url}` : '.'; return `Push your repo, then ${action} to Nx Cloud and finish the setup${urlSuffix}`; } const outputMessages = { 'create-nx-workspace-success-ci-setup': [ { code: 'ci-setup-visit', createMessage: (url, pushedToVcs) => { return { title: `Your CI setup is almost complete.`, type: 'success', bodyLines: [getSetupMessage(url, pushedToVcs)], }; }, }, ], 'create-nx-workspace-success-cache-setup': [ { code: 'remote-cache-visit', createMessage: (url, pushedToVcs) => { return { title: `Your remote cache is almost complete.`, type: 'success', bodyLines: [getSetupMessage(url, pushedToVcs)], }; }, }, ], }; class ABTestingMessages { constructor() { this.selectedMessages = {}; } getMessageFactory(key) { if (this.selectedMessages[key] === undefined) { if (process.env.NX_GENERATE_DOCS_PROCESS === 'true') { this.selectedMessages[key] = 0; } else { this.selectedMessages[key] = Math.floor(Math.random() * outputMessages[key].length); } } return outputMessages[key][this.selectedMessages[key]]; } } const messages = new ABTestingMessages(); function getMessageFactory(key) { return messages.getMessageFactory(key); }