contensis-cli 1.1.2-beta.1 → 1.1.2-beta.3

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.
@@ -50,17 +50,24 @@ Example call:
50
50
  { ...opts, dryRun: opts.dryRun }
51
51
  );
52
52
  });
53
- dev.command("requests").description("launch request handler for local development").argument("[block-ids...]", "ids of any blocks to develop locally").option("--args <args...>", "override or add additional args").usage("[block-ids...]").addHelpText(
53
+ dev.command("requests").description("launch request handler for local development").argument(
54
+ "[block-id...]",
55
+ "id of block to develop locally and the local uri to pass requests for this block onto"
56
+ ).option("--args <args...>", "override or add additional args").option(
57
+ "--release <release>",
58
+ "launch a specific release version of the request handler"
59
+ ).usage("[block-id] [local-uri]").addHelpText(
54
60
  "after",
55
61
  `
56
62
  Example call:
57
63
  > dev requests test-block-one
64
+ > dev requests my-website http://localhost:8080
58
65
  `
59
- ).action(async (blockIds = [], opts) => {
66
+ ).action(async (blockId = [], opts) => {
60
67
  await (0, import_ContensisDevService.devCommand)(
61
- ["dev", "requests", blockIds.join(" ")],
68
+ ["dev", "requests", blockId.join(" ")],
62
69
  opts
63
- ).ExecRequestHandler(blockIds, opts == null ? void 0 : opts.args);
70
+ ).ExecRequestHandler(blockId, opts == null ? void 0 : opts.args, opts.release);
64
71
  });
65
72
  return dev;
66
73
  };
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/commands/dev.ts"],
4
- "sourcesContent": ["import { Command } from 'commander';\nimport { devCommand } from '~/services/ContensisDevService';\n\nexport const makeDevCommand = () => {\n const dev = new Command()\n .command('dev')\n .description('dev command')\n .addHelpText('after', `\\n`)\n .showHelpAfterError(true)\n .exitOverride();\n\n dev\n .command('init')\n .description(\n 'initialise a git clone directory to connect and deploy to Contensis'\n )\n .argument(\n '[projectHome]',\n 'the path of the folder to initialise',\n process.cwd()\n )\n .option(\n '--url <url>',\n 'override the git url or add one to initialise a non-git folder'\n )\n .option(\n '-d --dry-run',\n 'perform a dry run of the project initialisation where no changes are made'\n )\n // .option(\n // '--commit',\n // 'commit change (will eventually be deprecated in favour of --dry-run)',\n // true\n // )\n .addHelpText(\n 'after',\n `\nExample call:\n > dev init\\n`\n )\n .action(async (projectHome: string, opts) => {\n // TODO: add opts for overriding project name and git url\n await devCommand(['dev', 'init', projectHome], opts).DevelopmentInit(\n projectHome,\n { ...opts, dryRun: opts.dryRun }\n );\n });\n\n dev\n .command('requests')\n .description('launch request handler for local development')\n .argument('[block-ids...]', 'ids of any blocks to develop locally')\n .option('--args <args...>', 'override or add additional args')\n .usage('[block-ids...]')\n .addHelpText(\n 'after',\n `\nExample call:\n > dev requests test-block-one\\n`\n )\n .action(async (blockIds: string[] = [], opts) => {\n await devCommand(\n ['dev', 'requests', blockIds.join(' ')],\n opts\n ).ExecRequestHandler(blockIds, opts?.args);\n });\n\n return dev;\n};\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAAwB;AACxB,iCAA2B;AAEpB,MAAM,iBAAiB,MAAM;AAClC,QAAM,MAAM,IAAI,yBAAQ,EACrB,QAAQ,KAAK,EACb,YAAY,aAAa,EACzB,YAAY,SAAS;AAAA,CAAI,EACzB,mBAAmB,IAAI,EACvB,aAAa;AAEhB,MACG,QAAQ,MAAM,EACd;AAAA,IACC;AAAA,EACF,EACC;AAAA,IACC;AAAA,IACA;AAAA,IACA,QAAQ,IAAI;AAAA,EACd,EACC;AAAA,IACC;AAAA,IACA;AAAA,EACF,EACC;AAAA,IACC;AAAA,IACA;AAAA,EACF,EAMC;AAAA,IACC;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,EAGF,EACC,OAAO,OAAO,aAAqB,SAAS;AAE3C,cAAM,uCAAW,CAAC,OAAO,QAAQ,WAAW,GAAG,IAAI,EAAE;AAAA,MACnD;AAAA,MACA,EAAE,GAAG,MAAM,QAAQ,KAAK,OAAO;AAAA,IACjC;AAAA,EACF,CAAC;AAEH,MACG,QAAQ,UAAU,EAClB,YAAY,8CAA8C,EAC1D,SAAS,kBAAkB,sCAAsC,EACjE,OAAO,oBAAoB,iCAAiC,EAC5D,MAAM,gBAAgB,EACtB;AAAA,IACC;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,EAGF,EACC,OAAO,OAAO,WAAqB,CAAC,GAAG,SAAS;AAC/C,cAAM;AAAA,MACJ,CAAC,OAAO,YAAY,SAAS,KAAK,GAAG,CAAC;AAAA,MACtC;AAAA,IACF,EAAE,mBAAmB,UAAU,6BAAM,IAAI;AAAA,EAC3C,CAAC;AAEH,SAAO;AACT;",
4
+ "sourcesContent": ["import { Command } from 'commander';\nimport { devCommand } from '~/services/ContensisDevService';\n\nexport const makeDevCommand = () => {\n const dev = new Command()\n .command('dev')\n .description('dev command')\n .addHelpText('after', `\\n`)\n .showHelpAfterError(true)\n .exitOverride();\n\n dev\n .command('init')\n .description(\n 'initialise a git clone directory to connect and deploy to Contensis'\n )\n .argument(\n '[projectHome]',\n 'the path of the folder to initialise',\n process.cwd()\n )\n .option(\n '--url <url>',\n 'override the git url or add one to initialise a non-git folder'\n )\n .option(\n '-d --dry-run',\n 'perform a dry run of the project initialisation where no changes are made'\n )\n // .option(\n // '--commit',\n // 'commit change (will eventually be deprecated in favour of --dry-run)',\n // true\n // )\n .addHelpText(\n 'after',\n `\nExample call:\n > dev init\\n`\n )\n .action(async (projectHome: string, opts) => {\n // TODO: add opts for overriding project name and git url\n await devCommand(['dev', 'init', projectHome], opts).DevelopmentInit(\n projectHome,\n { ...opts, dryRun: opts.dryRun }\n );\n });\n\n dev\n .command('requests')\n .description('launch request handler for local development')\n .argument(\n '[block-id...]',\n 'id of block to develop locally and the local uri to pass requests for this block onto'\n )\n .option('--args <args...>', 'override or add additional args')\n .option(\n '--release <release>',\n 'launch a specific release version of the request handler'\n )\n .usage('[block-id] [local-uri]')\n .addHelpText(\n 'after',\n `\nExample call:\n > dev requests test-block-one\n > dev requests my-website http://localhost:8080\\n`\n )\n .action(async (blockId: string[] = [], opts) => {\n await devCommand(\n ['dev', 'requests', blockId.join(' ')],\n opts\n ).ExecRequestHandler(blockId, opts?.args, opts.release);\n });\n\n return dev;\n};\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAAwB;AACxB,iCAA2B;AAEpB,MAAM,iBAAiB,MAAM;AAClC,QAAM,MAAM,IAAI,yBAAQ,EACrB,QAAQ,KAAK,EACb,YAAY,aAAa,EACzB,YAAY,SAAS;AAAA,CAAI,EACzB,mBAAmB,IAAI,EACvB,aAAa;AAEhB,MACG,QAAQ,MAAM,EACd;AAAA,IACC;AAAA,EACF,EACC;AAAA,IACC;AAAA,IACA;AAAA,IACA,QAAQ,IAAI;AAAA,EACd,EACC;AAAA,IACC;AAAA,IACA;AAAA,EACF,EACC;AAAA,IACC;AAAA,IACA;AAAA,EACF,EAMC;AAAA,IACC;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,EAGF,EACC,OAAO,OAAO,aAAqB,SAAS;AAE3C,cAAM,uCAAW,CAAC,OAAO,QAAQ,WAAW,GAAG,IAAI,EAAE;AAAA,MACnD;AAAA,MACA,EAAE,GAAG,MAAM,QAAQ,KAAK,OAAO;AAAA,IACjC;AAAA,EACF,CAAC;AAEH,MACG,QAAQ,UAAU,EAClB,YAAY,8CAA8C,EAC1D;AAAA,IACC;AAAA,IACA;AAAA,EACF,EACC,OAAO,oBAAoB,iCAAiC,EAC5D;AAAA,IACC;AAAA,IACA;AAAA,EACF,EACC,MAAM,wBAAwB,EAC9B;AAAA,IACC;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,EAIF,EACC,OAAO,OAAO,UAAoB,CAAC,GAAG,SAAS;AAC9C,cAAM;AAAA,MACJ,CAAC,OAAO,YAAY,QAAQ,KAAK,GAAG,CAAC;AAAA,MACrC;AAAA,IACF,EAAE,mBAAmB,SAAS,6BAAM,MAAM,KAAK,OAAO;AAAA,EACxD,CAAC;AAEH,SAAO;AACT;",
6
6
  "names": []
7
7
  }
@@ -215,6 +215,7 @@ Example call:
215
215
  Example call:
216
216
  > get block contensis-website
217
217
  > get block contensis-website develop latest
218
+ > get block contensis-website feature-branch 3
218
219
  `
219
220
  ).action(async (blockId, branch, version, opts) => {
220
221
  await (0, import_ContensisCliService.cliCommand)(["get", "block", blockId], opts).PrintBlockVersions(
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/commands/get.ts"],
4
- "sourcesContent": ["import { Argument, Command, Option } from 'commander';\nimport { merge } from 'lodash';\nimport { cliCommand } from '~/services/ContensisCliService';\nimport {\n addGlobalOptions,\n assetTypes,\n contentTypes,\n entryId,\n mapContensisOpts,\n zenql,\n} from './globalOptions';\n\nexport const makeGetCommand = () => {\n const program = new Command()\n .command('get')\n .description('get command')\n .addHelpText('after', `\\n`)\n .showHelpAfterError(true)\n .exitOverride();\n\n program\n .command('version')\n .description('get current Contensis version')\n .addHelpText(\n 'after',\n `\nExample call:\n > version\n`\n )\n .action(async opts => {\n await cliCommand(['get', 'version'], opts).PrintContensisVersion();\n });\n\n program\n .command('token')\n .description('show a bearer token for the currently logged in user')\n .addHelpText(\n 'after',\n `\nExample call:\n > get token\n`\n )\n .action(async opts => {\n await cliCommand(['get', 'token'], opts).PrintBearerToken();\n });\n\n program\n .command('project')\n .description('get a project')\n .argument('[projectId]', 'id of the project to get (default: current)')\n .addHelpText(\n 'after',\n `\nExample call:\n > get project website\n`\n )\n .action(async (projectId: string, opts) => {\n await cliCommand(['get', 'project', projectId], opts).PrintProject(\n projectId\n );\n });\n\n program\n .command('role')\n .description('get a role')\n .argument('<roleNameOrId>', 'id or name of the role to get')\n .addHelpText(\n 'after',\n `\nExample call:\n > get role \"entry admin\"\n`\n )\n .action(async (roleNameOrId: string, opts) => {\n await cliCommand(['get', 'role', roleNameOrId], opts).PrintRole(\n roleNameOrId\n );\n });\n\n program\n .command('webhook')\n .description('get a webhook')\n .argument('<webhookNameOrId...>', 'id or name of the webhook(s) to get')\n .addHelpText(\n 'after',\n `\nExample call:\n > get webhook \"Slack notification\"\n`\n )\n .action(async (webhookNameOrId: string[], opts) => {\n await cliCommand(\n ['get', 'webhook', webhookNameOrId.join(' ')],\n opts\n ).PrintWebhookSubscriptions(webhookNameOrId);\n });\n\n program\n .command('workflow')\n .description('get a workflow')\n .argument('<workflowNameOrId>', 'id or name of the workflow to get')\n .addHelpText(\n 'after',\n `\nExample call:\n > get workflow \"Approval workflow\"\n`\n )\n .action(async (workflowNameOrId: string, opts) => {\n await cliCommand(\n ['get', 'workflow', workflowNameOrId],\n opts\n ).PrintWorkflow(workflowNameOrId);\n });\n\n program\n .command('model')\n .description('get a content model')\n .argument('<contentTypeId...>', 'ids of the content models to get')\n .addHelpText(\n 'after',\n `\nExample call:\n > get model podcast podcastLinks\n`\n )\n .action(async (modelIds: string[], opts) => {\n await cliCommand(\n ['get', 'model', modelIds.join(' ')],\n opts\n ).PrintContentModels(modelIds);\n });\n\n program\n .command('contenttype')\n .description('get a content type')\n .argument('<contentTypeId>', 'the API id of the content type to get')\n .addHelpText(\n 'after',\n `\nExample call:\n > get contenttype {contentTypeId} -o content-type-backup.json\n`\n )\n .action(async (contentTypeId: string, opts) => {\n await cliCommand(\n ['get', 'contenttype', contentTypeId],\n opts\n ).PrintContentType(contentTypeId);\n });\n\n program\n .command('component')\n .description('get a component')\n .argument('<componentId>', 'the API id of the component to get')\n .addHelpText(\n 'after',\n `\nExample call:\n > get component {componentId} -o component-backup.json\n`\n )\n .action(async (componentId: string, opts) => {\n await cliCommand(['get', 'component', componentId], opts).PrintComponent(\n componentId\n );\n });\n\n const sharedGetEntryOptions = (command: Command) =>\n command\n .addOption(entryId)\n .addOption(zenql)\n .addOption(\n new Option(\n '-fi --fields <fields...>',\n 'limit the output fields on returned entries'\n )\n )\n .addOption(\n new Option(\n '-ob --order-by <orderBy...>',\n 'field name(s) to order the results by (prefix \"-\" for descending)'\n )\n );\n\n sharedGetEntryOptions(\n program\n .command('assets')\n .description('get asset entries')\n .argument(\n '[search phrase]',\n 'get assets with the search phrase, use quotes for multiple words'\n )\n .addOption(assetTypes)\n )\n .option('-l --paths <paths...>', 'get assets under the given path(s)')\n .addHelpText(\n 'after',\n `\nExample call:\n > get assets --zenql \"sys.contentTypeId = blog\" --fields sys.id sys.properties.filePath sys.properties.filename\n`\n )\n .action(async (phrase: string, opts) => {\n // Maintaining a separate command for assets vs entries\n // allows us to offer up more options when dealing with just assets\n await cliCommand(\n ['get', 'assets'],\n opts,\n mapContensisOpts({ dataFormat: 'asset', phrase, ...opts })\n ).GetEntries({});\n });\n\n sharedGetEntryOptions(\n program\n .command('entries')\n .description('get entries')\n .argument(\n '[search phrase]',\n 'get entries with the search phrase, use quotes for multiple words'\n )\n .addOption(contentTypes)\n .option(\n '-d --dependents',\n 'find and return any dependencies of all found entries'\n )\n )\n .addOption(\n new Option(\n '--data-format <dataFormat>',\n 'find and return entries of a specific data format'\n )\n .choices(['entry', 'asset', 'webpage'])\n .default('entry')\n )\n .addHelpText(\n 'after',\n `\nExample call:\n > get entries --zenql \"sys.contentTypeId = blog\" --fields entryTitle entryDescription sys.id --output ./blog-posts.csv --format csv\n > get entries --content-type blog --fields entryTitle sys.version.modified --order-by -sys.version.modified\n`\n )\n .action(async (phrase: string, opts, cmd) => {\n // console.log('phrase: ', phrase, '\\nopts:', JSON.stringify(opts, null, 2));\n // console.log('opts:', JSON.stringify(opts, null, 2));\n await cliCommand(\n ['get', 'entries'],\n opts,\n mapContensisOpts({ phrase, ...opts })\n ).GetEntries({\n withDependents: opts.dependents,\n });\n });\n\n program\n .command('nodes')\n .description('get nodes')\n .argument('[root]', 'get node(s) from the specified path e.g. /blog', '/')\n .option(\n '-d --depth <depth>',\n 'get nodes with children to a specified depth',\n '1'\n )\n .addHelpText(\n 'after',\n `\nExample call:\n > get nodes /blog --depth 1\n`\n )\n .action(async (root: string, opts) => {\n await cliCommand(['get', 'nodes'], opts, mapContensisOpts(opts)).GetNodes(\n root,\n opts.depth\n );\n });\n\n const block = program\n .command('block')\n .description('get a block or block version')\n .argument('[blockId]', 'the block to get version details for')\n .argument(\n '[branch]',\n 'the branch of the block to get version details for',\n 'default'\n )\n .argument(\n '[version]',\n 'get a specific version of the block pushed to the specified branch'\n )\n .addHelpText(\n 'after',\n `\nExample call:\n > get block contensis-website\n > get block contensis-website develop latest\n`\n )\n .action(async (blockId: string, branch: string, version: string, opts) => {\n await cliCommand(['get', 'block', blockId], opts).PrintBlockVersions(\n blockId,\n branch,\n version\n );\n });\n\n block\n .command('logs')\n .description('get logs for a block')\n .argument('[blockId]', 'the block to get version logs for')\n .argument(\n '[branch]',\n 'the branch of the block to get version details for',\n 'default'\n )\n .argument(\n '[version]',\n 'the version of the block pushed to the branch to get logs for',\n 'latest'\n )\n .addArgument(\n new Argument(\n '[dataCenter]',\n 'the datacentre of the block to get logs for'\n )\n .choices(['hq', 'london', 'manchester', 'all'])\n .default('all')\n )\n .option('-t --follow', 'follow block logs in near realtime', false)\n .usage('get block logs [blockId] [branch] [version] [dataCenter]')\n .addHelpText(\n 'after',\n `\nExample call:\n > get block logs contensis-website default\n > get block logs contensis-website master latest london --follow\n`\n )\n .action(\n async (\n blockId: string,\n branch: string,\n version: string,\n dataCenter: 'hq' | 'manchester' | 'london' | 'all',\n opts\n ) => {\n const parentOpts = block.opts() || {};\n await cliCommand(\n ['get', 'block', 'logs'],\n merge(opts, parentOpts)\n ).PrintBlockLogs(\n blockId,\n branch,\n version,\n dataCenter === 'all' ? undefined : dataCenter,\n opts.follow as boolean\n );\n }\n );\n\n // Add global opts for inner sub-commands\n addGlobalOptions(block);\n\n return program;\n};\n\nexport const get = makeGetCommand();\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAA0C;AAC1C,oBAAsB;AACtB,iCAA2B;AAC3B,2BAOO;AAEA,MAAM,iBAAiB,MAAM;AAClC,QAAM,UAAU,IAAI,yBAAQ,EACzB,QAAQ,KAAK,EACb,YAAY,aAAa,EACzB,YAAY,SAAS;AAAA,CAAI,EACzB,mBAAmB,IAAI,EACvB,aAAa;AAEhB,UACG,QAAQ,SAAS,EACjB,YAAY,+BAA+B,EAC3C;AAAA,IACC;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,EAIF,EACC,OAAO,OAAM,SAAQ;AACpB,cAAM,uCAAW,CAAC,OAAO,SAAS,GAAG,IAAI,EAAE,sBAAsB;AAAA,EACnE,CAAC;AAEH,UACG,QAAQ,OAAO,EACf,YAAY,sDAAsD,EAClE;AAAA,IACC;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,EAIF,EACC,OAAO,OAAM,SAAQ;AACpB,cAAM,uCAAW,CAAC,OAAO,OAAO,GAAG,IAAI,EAAE,iBAAiB;AAAA,EAC5D,CAAC;AAEH,UACG,QAAQ,SAAS,EACjB,YAAY,eAAe,EAC3B,SAAS,eAAe,6CAA6C,EACrE;AAAA,IACC;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,EAIF,EACC,OAAO,OAAO,WAAmB,SAAS;AACzC,cAAM,uCAAW,CAAC,OAAO,WAAW,SAAS,GAAG,IAAI,EAAE;AAAA,MACpD;AAAA,IACF;AAAA,EACF,CAAC;AAEH,UACG,QAAQ,MAAM,EACd,YAAY,YAAY,EACxB,SAAS,kBAAkB,+BAA+B,EAC1D;AAAA,IACC;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,EAIF,EACC,OAAO,OAAO,cAAsB,SAAS;AAC5C,cAAM,uCAAW,CAAC,OAAO,QAAQ,YAAY,GAAG,IAAI,EAAE;AAAA,MACpD;AAAA,IACF;AAAA,EACF,CAAC;AAEH,UACG,QAAQ,SAAS,EACjB,YAAY,eAAe,EAC3B,SAAS,wBAAwB,qCAAqC,EACtE;AAAA,IACC;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,EAIF,EACC,OAAO,OAAO,iBAA2B,SAAS;AACjD,cAAM;AAAA,MACJ,CAAC,OAAO,WAAW,gBAAgB,KAAK,GAAG,CAAC;AAAA,MAC5C;AAAA,IACF,EAAE,0BAA0B,eAAe;AAAA,EAC7C,CAAC;AAEH,UACG,QAAQ,UAAU,EAClB,YAAY,gBAAgB,EAC5B,SAAS,sBAAsB,mCAAmC,EAClE;AAAA,IACC;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,EAIF,EACC,OAAO,OAAO,kBAA0B,SAAS;AAChD,cAAM;AAAA,MACJ,CAAC,OAAO,YAAY,gBAAgB;AAAA,MACpC;AAAA,IACF,EAAE,cAAc,gBAAgB;AAAA,EAClC,CAAC;AAEH,UACG,QAAQ,OAAO,EACf,YAAY,qBAAqB,EACjC,SAAS,sBAAsB,kCAAkC,EACjE;AAAA,IACC;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,EAIF,EACC,OAAO,OAAO,UAAoB,SAAS;AAC1C,cAAM;AAAA,MACJ,CAAC,OAAO,SAAS,SAAS,KAAK,GAAG,CAAC;AAAA,MACnC;AAAA,IACF,EAAE,mBAAmB,QAAQ;AAAA,EAC/B,CAAC;AAEH,UACG,QAAQ,aAAa,EACrB,YAAY,oBAAoB,EAChC,SAAS,mBAAmB,uCAAuC,EACnE;AAAA,IACC;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,EAIF,EACC,OAAO,OAAO,eAAuB,SAAS;AAC7C,cAAM;AAAA,MACJ,CAAC,OAAO,eAAe,aAAa;AAAA,MACpC;AAAA,IACF,EAAE,iBAAiB,aAAa;AAAA,EAClC,CAAC;AAEH,UACG,QAAQ,WAAW,EACnB,YAAY,iBAAiB,EAC7B,SAAS,iBAAiB,oCAAoC,EAC9D;AAAA,IACC;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,EAIF,EACC,OAAO,OAAO,aAAqB,SAAS;AAC3C,cAAM,uCAAW,CAAC,OAAO,aAAa,WAAW,GAAG,IAAI,EAAE;AAAA,MACxD;AAAA,IACF;AAAA,EACF,CAAC;AAEH,QAAM,wBAAwB,CAAC,YAC7B,QACG,UAAU,4BAAO,EACjB,UAAU,0BAAK,EACf;AAAA,IACC,IAAI;AAAA,MACF;AAAA,MACA;AAAA,IACF;AAAA,EACF,EACC;AAAA,IACC,IAAI;AAAA,MACF;AAAA,MACA;AAAA,IACF;AAAA,EACF;AAEJ;AAAA,IACE,QACG,QAAQ,QAAQ,EAChB,YAAY,mBAAmB,EAC/B;AAAA,MACC;AAAA,MACA;AAAA,IACF,EACC,UAAU,+BAAU;AAAA,EACzB,EACG,OAAO,yBAAyB,oCAAoC,EACpE;AAAA,IACC;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,EAIF,EACC,OAAO,OAAO,QAAgB,SAAS;AAGtC,cAAM;AAAA,MACJ,CAAC,OAAO,QAAQ;AAAA,MAChB;AAAA,UACA,uCAAiB,EAAE,YAAY,SAAS,QAAQ,GAAG,KAAK,CAAC;AAAA,IAC3D,EAAE,WAAW,CAAC,CAAC;AAAA,EACjB,CAAC;AAEH;AAAA,IACA,QACG,QAAQ,SAAS,EACjB,YAAY,aAAa,EACzB;AAAA,MACC;AAAA,MACA;AAAA,IACF,EACG,UAAU,iCAAY,EACxB;AAAA,MACG;AAAA,MACF;AAAA,IACF;AAAA,EACF,EACG;AAAA,IACC,IAAI;AAAA,MACF;AAAA,MACA;AAAA,IACJ,EACK,QAAQ,CAAC,SAAS,SAAS,SAAS,CAAC,EACrC,QAAQ,OAAO;AAAA,EACpB,EACC;AAAA,IACC;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,EAKF,EACC,OAAO,OAAO,QAAgB,MAAM,QAAQ;AAG3C,cAAM;AAAA,MACJ,CAAC,OAAO,SAAS;AAAA,MACjB;AAAA,UACA,uCAAiB,EAAE,QAAQ,GAAG,KAAK,CAAC;AAAA,IACtC,EAAE,WAAW;AAAA,MACX,gBAAgB,KAAK;AAAA,IACvB,CAAC;AAAA,EACH,CAAC;AAEH,UACG,QAAQ,OAAO,EACf,YAAY,WAAW,EACvB,SAAS,UAAU,kDAAkD,GAAG,EACxE;AAAA,IACC;AAAA,IACA;AAAA,IACA;AAAA,EACF,EACC;AAAA,IACC;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,EAIF,EACC,OAAO,OAAO,MAAc,SAAS;AACpC,cAAM,uCAAW,CAAC,OAAO,OAAO,GAAG,UAAM,uCAAiB,IAAI,CAAC,EAAE;AAAA,MAC/D;AAAA,MACA,KAAK;AAAA,IACP;AAAA,EACF,CAAC;AAEH,QAAM,QAAQ,QACX,QAAQ,OAAO,EACf,YAAY,8BAA8B,EAC1C,SAAS,aAAa,sCAAsC,EAC5D;AAAA,IACC;AAAA,IACA;AAAA,IACA;AAAA,EACF,EACC;AAAA,IACC;AAAA,IACA;AAAA,EACF,EACC;AAAA,IACC;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,EAKF,EACC,OAAO,OAAO,SAAiB,QAAgB,SAAiB,SAAS;AACxE,cAAM,uCAAW,CAAC,OAAO,SAAS,OAAO,GAAG,IAAI,EAAE;AAAA,MAChD;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EACF,CAAC;AAEH,QACG,QAAQ,MAAM,EACd,YAAY,sBAAsB,EAClC,SAAS,aAAa,mCAAmC,EACzD;AAAA,IACC;AAAA,IACA;AAAA,IACA;AAAA,EACF,EACC;AAAA,IACC;AAAA,IACA;AAAA,IACA;AAAA,EACF,EACC;AAAA,IACC,IAAI;AAAA,MACF;AAAA,MACA;AAAA,IACF,EACG,QAAQ,CAAC,MAAM,UAAU,cAAc,KAAK,CAAC,EAC7C,QAAQ,KAAK;AAAA,EAClB,EACC,OAAO,eAAe,sCAAsC,KAAK,EACjE,MAAM,0DAA0D,EAChE;AAAA,IACC;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,EAKF,EACC;AAAA,IACC,OACE,SACA,QACA,SACA,YACA,SACG;AACH,YAAM,aAAa,MAAM,KAAK,KAAK,CAAC;AACpC,gBAAM;AAAA,QACJ,CAAC,OAAO,SAAS,MAAM;AAAA,YACvB,qBAAM,MAAM,UAAU;AAAA,MACxB,EAAE;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA,eAAe,QAAQ,SAAY;AAAA,QACnC,KAAK;AAAA,MACP;AAAA,IACF;AAAA,EACF;AAGF,6CAAiB,KAAK;AAEtB,SAAO;AACT;AAEO,MAAM,MAAM,eAAe;",
4
+ "sourcesContent": ["import { Argument, Command, Option } from 'commander';\nimport { merge } from 'lodash';\nimport { cliCommand } from '~/services/ContensisCliService';\nimport {\n addGlobalOptions,\n assetTypes,\n contentTypes,\n entryId,\n mapContensisOpts,\n zenql,\n} from './globalOptions';\n\nexport const makeGetCommand = () => {\n const program = new Command()\n .command('get')\n .description('get command')\n .addHelpText('after', `\\n`)\n .showHelpAfterError(true)\n .exitOverride();\n\n program\n .command('version')\n .description('get current Contensis version')\n .addHelpText(\n 'after',\n `\nExample call:\n > version\n`\n )\n .action(async opts => {\n await cliCommand(['get', 'version'], opts).PrintContensisVersion();\n });\n\n program\n .command('token')\n .description('show a bearer token for the currently logged in user')\n .addHelpText(\n 'after',\n `\nExample call:\n > get token\n`\n )\n .action(async opts => {\n await cliCommand(['get', 'token'], opts).PrintBearerToken();\n });\n\n program\n .command('project')\n .description('get a project')\n .argument('[projectId]', 'id of the project to get (default: current)')\n .addHelpText(\n 'after',\n `\nExample call:\n > get project website\n`\n )\n .action(async (projectId: string, opts) => {\n await cliCommand(['get', 'project', projectId], opts).PrintProject(\n projectId\n );\n });\n\n program\n .command('role')\n .description('get a role')\n .argument('<roleNameOrId>', 'id or name of the role to get')\n .addHelpText(\n 'after',\n `\nExample call:\n > get role \"entry admin\"\n`\n )\n .action(async (roleNameOrId: string, opts) => {\n await cliCommand(['get', 'role', roleNameOrId], opts).PrintRole(\n roleNameOrId\n );\n });\n\n program\n .command('webhook')\n .description('get a webhook')\n .argument('<webhookNameOrId...>', 'id or name of the webhook(s) to get')\n .addHelpText(\n 'after',\n `\nExample call:\n > get webhook \"Slack notification\"\n`\n )\n .action(async (webhookNameOrId: string[], opts) => {\n await cliCommand(\n ['get', 'webhook', webhookNameOrId.join(' ')],\n opts\n ).PrintWebhookSubscriptions(webhookNameOrId);\n });\n\n program\n .command('workflow')\n .description('get a workflow')\n .argument('<workflowNameOrId>', 'id or name of the workflow to get')\n .addHelpText(\n 'after',\n `\nExample call:\n > get workflow \"Approval workflow\"\n`\n )\n .action(async (workflowNameOrId: string, opts) => {\n await cliCommand(\n ['get', 'workflow', workflowNameOrId],\n opts\n ).PrintWorkflow(workflowNameOrId);\n });\n\n program\n .command('model')\n .description('get a content model')\n .argument('<contentTypeId...>', 'ids of the content models to get')\n .addHelpText(\n 'after',\n `\nExample call:\n > get model podcast podcastLinks\n`\n )\n .action(async (modelIds: string[], opts) => {\n await cliCommand(\n ['get', 'model', modelIds.join(' ')],\n opts\n ).PrintContentModels(modelIds);\n });\n\n program\n .command('contenttype')\n .description('get a content type')\n .argument('<contentTypeId>', 'the API id of the content type to get')\n .addHelpText(\n 'after',\n `\nExample call:\n > get contenttype {contentTypeId} -o content-type-backup.json\n`\n )\n .action(async (contentTypeId: string, opts) => {\n await cliCommand(\n ['get', 'contenttype', contentTypeId],\n opts\n ).PrintContentType(contentTypeId);\n });\n\n program\n .command('component')\n .description('get a component')\n .argument('<componentId>', 'the API id of the component to get')\n .addHelpText(\n 'after',\n `\nExample call:\n > get component {componentId} -o component-backup.json\n`\n )\n .action(async (componentId: string, opts) => {\n await cliCommand(['get', 'component', componentId], opts).PrintComponent(\n componentId\n );\n });\n\n const sharedGetEntryOptions = (command: Command) =>\n command\n .addOption(entryId)\n .addOption(zenql)\n .addOption(\n new Option(\n '-fi --fields <fields...>',\n 'limit the output fields on returned entries'\n )\n )\n .addOption(\n new Option(\n '-ob --order-by <orderBy...>',\n 'field name(s) to order the results by (prefix \"-\" for descending)'\n )\n );\n\n sharedGetEntryOptions(\n program\n .command('assets')\n .description('get asset entries')\n .argument(\n '[search phrase]',\n 'get assets with the search phrase, use quotes for multiple words'\n )\n .addOption(assetTypes)\n )\n .option('-l --paths <paths...>', 'get assets under the given path(s)')\n .addHelpText(\n 'after',\n `\nExample call:\n > get assets --zenql \"sys.contentTypeId = blog\" --fields sys.id sys.properties.filePath sys.properties.filename\n`\n )\n .action(async (phrase: string, opts) => {\n // Maintaining a separate command for assets vs entries\n // allows us to offer up more options when dealing with just assets\n await cliCommand(\n ['get', 'assets'],\n opts,\n mapContensisOpts({ dataFormat: 'asset', phrase, ...opts })\n ).GetEntries({});\n });\n\n sharedGetEntryOptions(\n program\n .command('entries')\n .description('get entries')\n .argument(\n '[search phrase]',\n 'get entries with the search phrase, use quotes for multiple words'\n )\n .addOption(contentTypes)\n .option(\n '-d --dependents',\n 'find and return any dependencies of all found entries'\n )\n )\n .addOption(\n new Option(\n '--data-format <dataFormat>',\n 'find and return entries of a specific data format'\n )\n .choices(['entry', 'asset', 'webpage'])\n .default('entry')\n )\n .addHelpText(\n 'after',\n `\nExample call:\n > get entries --zenql \"sys.contentTypeId = blog\" --fields entryTitle entryDescription sys.id --output ./blog-posts.csv --format csv\n > get entries --content-type blog --fields entryTitle sys.version.modified --order-by -sys.version.modified\n`\n )\n .action(async (phrase: string, opts, cmd) => {\n // console.log('phrase: ', phrase, '\\nopts:', JSON.stringify(opts, null, 2));\n // console.log('opts:', JSON.stringify(opts, null, 2));\n await cliCommand(\n ['get', 'entries'],\n opts,\n mapContensisOpts({ phrase, ...opts })\n ).GetEntries({\n withDependents: opts.dependents,\n });\n });\n\n program\n .command('nodes')\n .description('get nodes')\n .argument('[root]', 'get node(s) from the specified path e.g. /blog', '/')\n .option(\n '-d --depth <depth>',\n 'get nodes with children to a specified depth',\n '1'\n )\n .addHelpText(\n 'after',\n `\nExample call:\n > get nodes /blog --depth 1\n`\n )\n .action(async (root: string, opts) => {\n await cliCommand(['get', 'nodes'], opts, mapContensisOpts(opts)).GetNodes(\n root,\n opts.depth\n );\n });\n\n const block = program\n .command('block')\n .description('get a block or block version')\n .argument('[blockId]', 'the block to get version details for')\n .argument(\n '[branch]',\n 'the branch of the block to get version details for',\n 'default'\n )\n .argument(\n '[version]',\n 'get a specific version of the block pushed to the specified branch'\n )\n .addHelpText(\n 'after',\n `\nExample call:\n > get block contensis-website\n > get block contensis-website develop latest\n > get block contensis-website feature-branch 3\n`\n )\n .action(async (blockId: string, branch: string, version: string, opts) => {\n await cliCommand(['get', 'block', blockId], opts).PrintBlockVersions(\n blockId,\n branch,\n version\n );\n });\n\n block\n .command('logs')\n .description('get logs for a block')\n .argument('[blockId]', 'the block to get version logs for')\n .argument(\n '[branch]',\n 'the branch of the block to get version details for',\n 'default'\n )\n .argument(\n '[version]',\n 'the version of the block pushed to the branch to get logs for',\n 'latest'\n )\n .addArgument(\n new Argument(\n '[dataCenter]',\n 'the datacentre of the block to get logs for'\n )\n .choices(['hq', 'london', 'manchester', 'all'])\n .default('all')\n )\n .option('-t --follow', 'follow block logs in near realtime', false)\n .usage('get block logs [blockId] [branch] [version] [dataCenter]')\n .addHelpText(\n 'after',\n `\nExample call:\n > get block logs contensis-website default\n > get block logs contensis-website master latest london --follow\n`\n )\n .action(\n async (\n blockId: string,\n branch: string,\n version: string,\n dataCenter: 'hq' | 'manchester' | 'london' | 'all',\n opts\n ) => {\n const parentOpts = block.opts() || {};\n await cliCommand(\n ['get', 'block', 'logs'],\n merge(opts, parentOpts)\n ).PrintBlockLogs(\n blockId,\n branch,\n version,\n dataCenter === 'all' ? undefined : dataCenter,\n opts.follow as boolean\n );\n }\n );\n\n // Add global opts for inner sub-commands\n addGlobalOptions(block);\n\n return program;\n};\n\nexport const get = makeGetCommand();\n"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -47,6 +47,7 @@ class RequestHandlerFactory {
47
47
  name = "request-handler-localdevelopment";
48
48
  cmd = "Zengenti.Contensis.RequestHandler.LocalDevelopment";
49
49
  prerelease;
50
+ version;
50
51
  get exePath() {
51
52
  return import_path.default.join(this.basePath, `${this.name}-${this.moduleInfo.version}`);
52
53
  }
@@ -56,18 +57,19 @@ class RequestHandlerFactory {
56
57
  version: "*"
57
58
  };
58
59
  }
59
- constructor(prerelease = false) {
60
+ constructor(version, prerelease = false) {
60
61
  this.prerelease = prerelease;
62
+ this.version = version;
61
63
  }
62
64
  async Create() {
63
- const { moduleInfo } = this;
64
- const firstUse = !(moduleInfo == null ? void 0 : moduleInfo.version) || (moduleInfo == null ? void 0 : moduleInfo.version) === "*";
65
- if (firstUse) {
65
+ const { moduleInfo, version } = this;
66
+ const downloadImmediately = !(moduleInfo == null ? void 0 : moduleInfo.version) || (moduleInfo == null ? void 0 : moduleInfo.version) === "*" || this.version;
67
+ if (downloadImmediately) {
66
68
  this.manifest.writeModule(this.name, this.moduleInfo);
67
- await this.CheckUpdate({ verbose: true });
69
+ await this.CheckUpdate({ verbose: true, version });
68
70
  }
69
71
  await this.ApplyUpdate();
70
- if (!firstUse)
72
+ if (!downloadImmediately)
71
73
  this.CheckUpdate();
72
74
  return this.CreateInvoke(this);
73
75
  }
@@ -114,10 +116,13 @@ class RequestHandlerFactory {
114
116
  }
115
117
  };
116
118
  }
117
- async CheckUpdate({ verbose = false } = {}) {
118
- const { debug, log, manifest, messages, moduleInfo } = this;
119
+ async CheckUpdate({
120
+ verbose = false,
121
+ version
122
+ } = {}) {
123
+ const { cmd, debug, log, manifest, messages, moduleInfo } = this;
119
124
  const github = new import_GitHubCliModuleProvider.default(moduleInfo.github);
120
- const release = await github.FindLatestRelease();
125
+ const release = await github.FindLatestRelease(version);
121
126
  if (verbose || debug)
122
127
  if (release)
123
128
  log.info(
@@ -129,7 +134,8 @@ ${release.html_url}`
129
134
  );
130
135
  else
131
136
  log.warning(messages.devrequests.install.notFound(moduleInfo.github));
132
- if ((release == null ? void 0 : release.tag_name) && ![moduleInfo.version, moduleInfo.install].includes(release.tag_name)) {
137
+ const downloadSpecificRelease = version && !(0, import_file_provider.checkDir)("c") && (release == null ? void 0 : release.tag_name);
138
+ if ((release == null ? void 0 : release.tag_name) && ![moduleInfo.version, moduleInfo.install].includes(release.tag_name) || downloadSpecificRelease) {
133
139
  const downloadPath = import_path.default.join(
134
140
  this.basePath,
135
141
  `${this.name}-${release.tag_name}`
@@ -145,6 +151,7 @@ ${release.html_url}`
145
151
  }
146
152
  try {
147
153
  await github.DownloadRelease(release, {
154
+ cmd,
148
155
  path: downloadPath,
149
156
  platforms: [
150
157
  ["win32", "win-x64"],
@@ -169,8 +176,12 @@ ${release.html_url}`
169
176
  release.tag_name
170
177
  )
171
178
  });
172
- this.moduleInfo.install = release.tag_name;
173
- manifest.writeModule(this.name, this.moduleInfo);
179
+ if (!version) {
180
+ this.moduleInfo.install = release.tag_name;
181
+ manifest.writeModule(this.name, this.moduleInfo);
182
+ } else {
183
+ this.moduleInfo.version = release.tag_name;
184
+ }
174
185
  }
175
186
  }
176
187
  }
@@ -194,7 +205,7 @@ ${release.html_url}`
194
205
  }
195
206
  }
196
207
  }
197
- const createRequestHandler = () => new RequestHandlerFactory().Create();
208
+ const createRequestHandler = (version) => new RequestHandlerFactory(version).Create();
198
209
  // Annotate the CommonJS export names for ESM import in node:
199
210
  0 && (module.exports = {
200
211
  RequestHandlerFactory,
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/factories/RequestHandlerFactory.ts"],
4
- "sourcesContent": ["import { spawn } from 'child_process';\nimport inquirer from 'inquirer';\nimport { createSpinner } from 'nanospinner';\nimport path from 'path';\nimport { LogMessages } from '~/localisation/en-GB';\nimport GitHubCliModuleProvider from '~/providers/GitHubCliModuleProvider';\n\nimport ManifestProvider from '~/providers/ManifestProvider';\nimport { appRootDir, joinPath } from '~/providers/file-provider';\nimport { isDebug } from '~/util/debug';\nimport { Logger } from '~/util/logger';\n\nexport class RequestHandlerFactory {\n debug = isDebug();\n log = Logger;\n messages = LogMessages;\n manifest = new ManifestProvider(); // Load cli-manifest.json\n\n basePath = path.join(appRootDir);\n name = 'request-handler-localdevelopment';\n cmd = 'Zengenti.Contensis.RequestHandler.LocalDevelopment';\n\n prerelease;\n\n get exePath() {\n return path.join(this.basePath, `${this.name}-${this.moduleInfo.version}`);\n }\n\n get moduleInfo() {\n return (\n this.manifest.getModule(this.name) || {\n github: 'contensis/request-handler-localdevelopment',\n version: '*',\n }\n );\n }\n\n constructor(prerelease = false) {\n this.prerelease = prerelease;\n }\n\n // Use the factory to create a request handler instance\n // handling the download and updating of the external binary\n async Create() {\n const { moduleInfo } = this;\n const firstUse = !moduleInfo?.version || moduleInfo?.version === '*';\n\n if (firstUse) {\n // Create cli-manifest.json\n this.manifest.writeModule(this.name, this.moduleInfo);\n\n // Download for first time use (await)\n await this.CheckUpdate({ verbose: true });\n }\n\n // Apply any downloaded/pending update so we launch that version\n await this.ApplyUpdate();\n\n // Fire an async update check and continue working in the background (do not await)\n if (!firstUse) this.CheckUpdate();\n\n // Return a RequestHandler ready to invoke\n return this.CreateInvoke(this);\n }\n\n CreateInvoke(self = this) {\n // Hoist the vars we need from `this` as we lose scope\n // when the function is returned from the Create() method\n const { debug, log, messages, cmd, exePath } = self;\n\n // Invoke request handler method\n return async (args: string[]) => {\n const child = spawn(joinPath(exePath, cmd), args, { stdio: 'inherit' });\n\n if (args?.length && debug)\n log.warning(\n `Spawning process with supplied args: ${JSON.stringify(\n child.spawnargs,\n null,\n 2\n )}`\n );\n\n let isRunning = false;\n\n // Log child output through event listeners\n child?.stdout?.on('data', data => {\n isRunning = true;\n log.raw(data);\n });\n\n child?.stderr?.on('data', data => {\n log.error(data);\n });\n\n child.on('spawn', () => {\n isRunning = true;\n log.help(messages.devrequests.spawn());\n });\n\n child.on('exit', code => {\n isRunning = false;\n\n log[code === 0 ? 'success' : 'warning'](\n messages.devrequests.exited(code)\n );\n });\n\n child.on('error', error => {\n isRunning = false;\n log.error(messages.devrequests.errored(error));\n });\n\n await new Promise(resolve => setTimeout(resolve, 2000));\n\n // keep the method running until we can return\n while (true === true) {\n if (!isRunning) return;\n await new Promise(resolve => setTimeout(resolve, 1000));\n }\n };\n }\n\n async CheckUpdate({ verbose = false }: { verbose?: boolean } = {}) {\n const { debug, log, manifest, messages, moduleInfo } = this;\n const github = new GitHubCliModuleProvider(moduleInfo.github);\n // Find latest version\n const release = await github.FindLatestRelease();\n if (verbose || debug)\n if (release)\n log.info(\n `${messages.devrequests.install.download(\n moduleInfo.github,\n release.tag_name\n )}\\n${release.html_url}`\n );\n else\n log.warning(messages.devrequests.install.notFound(moduleInfo.github));\n\n // Should we download an update?\n if (\n release?.tag_name &&\n ![moduleInfo.version, moduleInfo.install].includes(release.tag_name)\n ) {\n // Download platform-specific release asset\n const downloadPath = path.join(\n this.basePath,\n `${this.name}-${release.tag_name}`\n );\n\n // add spinner while downloading\n const spinner = createSpinner(\n messages.devrequests.install.downloading(\n moduleInfo.github,\n release.tag_name\n )\n );\n if (verbose || debug) {\n spinner.start();\n }\n try {\n await github.DownloadRelease(release, {\n path: downloadPath,\n // Map NodeJS os platform to release asset name\n platforms: [\n ['win32', 'win-x64'],\n ['darwin', 'osx-x64'],\n ['linux', 'linux-x64'],\n ],\n });\n } catch (ex: any) {\n spinner.error();\n log.error(\n messages.devrequests.install.downloadFail(\n moduleInfo.github,\n release.tag_name\n ),\n ex\n );\n } finally {\n if (verbose || debug)\n spinner.success({\n text: messages.devrequests.install.downloaded(\n moduleInfo.github,\n release.tag_name\n ),\n });\n\n // Update module info with downloaded release\n this.moduleInfo.install = release.tag_name;\n // Write module info update to manifest so it installs on next invoke\n manifest.writeModule(this.name, this.moduleInfo);\n }\n }\n }\n\n async ApplyUpdate() {\n const { manifest, messages, moduleInfo } = this;\n\n if (moduleInfo.install && moduleInfo.version !== moduleInfo.install) {\n let { apply } =\n moduleInfo.version === '*'\n ? { apply: true }\n : await inquirer.prompt({\n name: 'apply',\n type: 'confirm',\n message: messages.devrequests.install.applyUpdate(\n moduleInfo.install,\n moduleInfo.version\n ),\n default: 'Y',\n });\n\n if (apply) {\n moduleInfo.version = moduleInfo.install;\n delete moduleInfo.install;\n manifest.writeModule(this.name, this.moduleInfo);\n\n // TODO: clean up user folder by deleting old version(s)}\n }\n }\n }\n}\n\nexport const createRequestHandler = () => new RequestHandlerFactory().Create();\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["import { spawn } from 'child_process';\nimport inquirer from 'inquirer';\nimport { createSpinner } from 'nanospinner';\nimport path from 'path';\nimport { LogMessages } from '~/localisation/en-GB';\nimport GitHubCliModuleProvider from '~/providers/GitHubCliModuleProvider';\n\nimport ManifestProvider from '~/providers/ManifestProvider';\nimport { appRootDir, checkDir, joinPath } from '~/providers/file-provider';\nimport { isDebug } from '~/util/debug';\nimport { Logger } from '~/util/logger';\n\nexport class RequestHandlerFactory {\n debug = isDebug();\n log = Logger;\n messages = LogMessages;\n manifest = new ManifestProvider(); // Load cli-manifest.json\n\n basePath = path.join(appRootDir);\n name = 'request-handler-localdevelopment';\n cmd = 'Zengenti.Contensis.RequestHandler.LocalDevelopment';\n\n prerelease;\n version; // pass in a specific release version to run\n\n get exePath() {\n return path.join(this.basePath, `${this.name}-${this.moduleInfo.version}`);\n }\n\n get moduleInfo() {\n return (\n this.manifest.getModule(this.name) || {\n github: 'contensis/request-handler-localdevelopment',\n version: '*',\n }\n );\n }\n\n constructor(version?: string, prerelease = false) {\n this.prerelease = prerelease;\n this.version = version;\n }\n\n // Use the factory to create a request handler instance\n // handling the download and updating of the external binary\n async Create() {\n const { moduleInfo, version } = this;\n const downloadImmediately =\n !moduleInfo?.version || moduleInfo?.version === '*' || this.version;\n\n if (downloadImmediately) {\n // Create cli-manifest.json\n this.manifest.writeModule(this.name, this.moduleInfo);\n\n // Download for first time use (await)\n await this.CheckUpdate({ verbose: true, version });\n }\n\n // Apply any downloaded/pending update so we launch that version\n await this.ApplyUpdate();\n\n // Fire an async update check and continue working in the background (do not await)\n if (!downloadImmediately) this.CheckUpdate();\n\n // Return a RequestHandler ready to invoke\n return this.CreateInvoke(this);\n }\n\n CreateInvoke(self = this) {\n // Hoist the vars we need from `this` as we lose scope\n // when the function is returned from the Create() method\n const { debug, log, messages, cmd, exePath } = self;\n\n // Invoke request handler method\n return async (args: string[]) => {\n const child = spawn(joinPath(exePath, cmd), args, { stdio: 'inherit' });\n\n if (args?.length && debug)\n log.warning(\n `Spawning process with supplied args: ${JSON.stringify(\n child.spawnargs,\n null,\n 2\n )}`\n );\n\n let isRunning = false;\n\n // Log child output through event listeners\n child?.stdout?.on('data', data => {\n isRunning = true;\n log.raw(data);\n });\n\n child?.stderr?.on('data', data => {\n log.error(data);\n });\n\n child.on('spawn', () => {\n isRunning = true;\n log.help(messages.devrequests.spawn());\n });\n\n child.on('exit', code => {\n isRunning = false;\n\n log[code === 0 ? 'success' : 'warning'](\n messages.devrequests.exited(code)\n );\n });\n\n child.on('error', error => {\n isRunning = false;\n log.error(messages.devrequests.errored(error));\n });\n\n await new Promise(resolve => setTimeout(resolve, 2000));\n\n // keep the method running until we can return\n while (true === true) {\n if (!isRunning) return;\n await new Promise(resolve => setTimeout(resolve, 1000));\n }\n };\n }\n\n async CheckUpdate({\n verbose = false,\n version,\n }: { verbose?: boolean; version?: string } = {}) {\n const { cmd, debug, log, manifest, messages, moduleInfo } = this;\n\n const github = new GitHubCliModuleProvider(moduleInfo.github);\n\n // Find latest version\n const release = await github.FindLatestRelease(version);\n\n if (verbose || debug)\n if (release)\n log.info(\n `${messages.devrequests.install.download(\n moduleInfo.github,\n release.tag_name\n )}\\n${release.html_url}`\n );\n else\n log.warning(messages.devrequests.install.notFound(moduleInfo.github));\n\n const downloadSpecificRelease =\n version && !checkDir('c') && release?.tag_name;\n\n // Should we download an update?\n if (\n (release?.tag_name &&\n ![moduleInfo.version, moduleInfo.install].includes(release.tag_name)) ||\n downloadSpecificRelease\n ) {\n // Download platform-specific release asset\n const downloadPath = path.join(\n this.basePath,\n `${this.name}-${release.tag_name}`\n );\n\n // add spinner while downloading\n const spinner = createSpinner(\n messages.devrequests.install.downloading(\n moduleInfo.github,\n release.tag_name\n )\n );\n if (verbose || debug) {\n spinner.start();\n }\n try {\n await github.DownloadRelease(release, {\n cmd,\n path: downloadPath,\n // Map NodeJS os platform to release asset name\n platforms: [\n ['win32', 'win-x64'],\n ['darwin', 'osx-x64'],\n ['linux', 'linux-x64'],\n ],\n });\n } catch (ex: any) {\n spinner.error();\n log.error(\n messages.devrequests.install.downloadFail(\n moduleInfo.github,\n release.tag_name\n ),\n ex\n );\n } finally {\n if (verbose || debug)\n spinner.success({\n text: messages.devrequests.install.downloaded(\n moduleInfo.github,\n release.tag_name\n ),\n });\n\n if (!version) {\n // Update module info with downloaded release\n this.moduleInfo.install = release.tag_name;\n // Write module info update to manifest so it installs on next invoke\n manifest.writeModule(this.name, this.moduleInfo);\n } else {\n // Set module version in memory so the request handler\n // will be invoked with this version this time only\n this.moduleInfo.version = release.tag_name;\n }\n }\n }\n }\n\n async ApplyUpdate() {\n const { manifest, messages, moduleInfo } = this;\n\n if (moduleInfo.install && moduleInfo.version !== moduleInfo.install) {\n let { apply } =\n moduleInfo.version === '*'\n ? { apply: true }\n : await inquirer.prompt({\n name: 'apply',\n type: 'confirm',\n message: messages.devrequests.install.applyUpdate(\n moduleInfo.install,\n moduleInfo.version\n ),\n default: 'Y',\n });\n\n if (apply) {\n moduleInfo.version = moduleInfo.install;\n delete moduleInfo.install;\n manifest.writeModule(this.name, this.moduleInfo);\n\n // TODO: clean up user folder by deleting old version(s)}\n }\n }\n }\n}\n\nexport const createRequestHandler = (version?: string) =>\n new RequestHandlerFactory(version).Create();\n"],
5
+ "mappings": "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",
6
6
  "names": ["ManifestProvider", "path", "GitHubCliModuleProvider", "inquirer"]
7
7
  }
@@ -464,7 +464,7 @@ ${git.type === "github" ? `Add a "New repository secret"` : `Expand "Variables"
464
464
  devrequests: {
465
465
  install: {
466
466
  notFound: (repo) => `Could not find a release in ${repo} repo - please check github`,
467
- download: (repo, version) => `Found release ${repo} ${version}`,
467
+ download: (repo, version) => `Found release ${version}`,
468
468
  downloading: (repo, version) => `Downloading ${repo} ${version}`,
469
469
  downloadFail: (repo, version) => `Problem downloading release ${version} from ${repo}`,
470
470
  downloaded: (repo, version) => `Downloaded ${repo} ${version}`,
@@ -473,6 +473,8 @@ ${git.type === "github" ? `Add a "New repository secret"` : `Expand "Variables"
473
473
  )}?`
474
474
  },
475
475
  launch: () => `Launching request handler for local development`,
476
+ overrideBlock: () => `Which block will you be running?`,
477
+ overrideUri: () => `How to access your development site`,
476
478
  spawn: () => `If you see a firewall popup requesting network access, it is safe to approve`,
477
479
  exited: (code) => `Request handler exited with code ${code}
478
480
  `,
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/localisation/en-GB.ts"],
4
- "sourcesContent": ["import {\n BlockActionType,\n BlockRunningStatus,\n MigrateModelsResult,\n MigrateStatus,\n} from 'migratortron';\nimport { GitHelper } from '~/util/git';\nimport { Logger } from '~/util/logger';\nimport { winSlash } from '~/util/os';\n\nexport const LogMessages = {\n app: {\n contensis: () => 'Contensis',\n quit: () => `Goodbye \uD83D\uDC4B\\n`,\n startup: (version: string) =>\n `v${version} \u00A9 2001-${new Date().getFullYear()} Zengenti \uD83C\uDDEC\uD83C\uDDE7. \\n - Creators of Contensis and purveyors of other fine software\\n\\n\uD83D\uDC4B Welcome to the contensis-cli\\n`,\n help: () =>\n 'Press [CTRL]+[C] or type \"quit\" to return to your system shell\\nPress [TAB] for suggestions\\n',\n suggestions: () =>\n `\\n${Logger.errorText('>>')} Press [TAB] for suggestions\\n`,\n autocomplete: () => `\\n${Logger.errorText('>>')} Available commands:`,\n unknownError: () => `Something went wrong...`,\n fileOutput: (format = 'json', path?: string) =>\n `Output ${format} file: ${Logger.infoText(path)}\\n`,\n noFileOutput: () => `No output written\\n`,\n },\n command: {\n notKnown: (command: string) => `${command} is not known`,\n },\n envs: {\n found: (num: number) =>\n `environments store found containing ${num} environment${\n num === 1 ? '' : 's'\n }`,\n tip: () =>\n `Connect to a Contensis cloud instance using \"contensis connect {cms alias}\"`,\n },\n connect: {\n command: {\n name: () => 'connect',\n example: () => `Example call:\\n > connect example-dev`,\n },\n args: {\n alias: {\n name: () => '<alias>',\n description: () => 'the Contensis Cloud alias to connect with',\n },\n },\n noEnv: () => `Cannot connect - no environment alias specified`,\n unreachable: (url: string, status: number) =>\n `Cannot reach ${url}${status ? ` - status ${status}` : ''}`,\n connected: (env: string) => `Current environment set to \"${env}\"`,\n help: () =>\n `Connect to a Contensis cloud instance using \"contensis connect {cms alias}\"`,\n projects: () => `Available projects:`,\n noProjects: () => `Cannot retrieve projects list`,\n tip: () =>\n `Introduce yourself with \"login {username}\" or \"login {clientId} -s {secret}\" or by passing credentials as options with your command`,\n },\n login: {\n command: {\n name: () => 'login',\n usage: () => `<user/clientId> [password] [-s <sharedSecret>]`,\n example: () =>\n `Example call:\\n > login myuserid\\n -- or --\\n > login {clientId} -s {sharedSecret}`,\n },\n args: {\n user: {\n name: () => '<user/clientId>',\n description: () => 'the username to login with',\n },\n password: {\n name: () => '[password]',\n description: () =>\n 'the password to use to login with (optional/insecure)',\n },\n secret: {\n name: () => '-s --sharedSecret <sharedSecret>',\n description: () =>\n 'the shared secret to use when logging in with a client id',\n },\n },\n passwordPrompt: (env?: string, userId?: string) =>\n userId\n ? `Enter password for ${userId}@${env}:`\n : `Please enter a password`,\n failed: (env: string, userId: string) =>\n `Unable to login to ${env} as ${userId}`,\n success: (env: string, userId: string) =>\n `User ${userId} connected to ${env} successfully\\n`,\n insecurePassword: () =>\n `Could not connect to local keystore - your password could be stored unencrypted!`,\n noEnv: () => `No environment set, use \"contensis connect {alias}\" first`,\n noUserId: () => `No user id specified`,\n },\n projects: {\n list: () => `Available projects:`,\n noList: () => `Cannot retrieve projects list`,\n set: (projectId: string) =>\n `Current project is set to ${Logger.highlightText(projectId)}`,\n failedSet: (projectId: string) =>\n `Project ${Logger.highlightText(projectId)} not found`,\n tip: () =>\n `You need to set your current working project with \"set project {projectId}\"`,\n created: (env: string, id: string) =>\n `[${env}] Created project ${Logger.highlightText(id)}`,\n failedCreate: (env: string, id: string) =>\n `[${env}] Unable to create project ${Logger.highlightText(id)}`,\n updated: (env: string, id: string) =>\n `[${env}] Updated project ${Logger.highlightText(id)}`,\n failedUpdate: (env: string, id: string) =>\n `[${env}] Unable to update project ${Logger.highlightText(id)}`,\n },\n migrate: {\n models: {\n result: (\n status: keyof MigrateModelsResult['project']['contentTypes']\n ) => {\n switch (status) {\n case 'created':\n case 'updated':\n return Logger.successText;\n case 'errors':\n return Logger.errorText;\n default:\n return Logger.infoText;\n }\n },\n },\n status: (status: MigrateStatus) => {\n switch (status) {\n case 'no change':\n return Logger.successText;\n case 'create':\n case 'two-pass':\n case 'update':\n case 'delete':\n return Logger.warningText;\n case 'error':\n case 'not found':\n return Logger.errorText;\n default:\n return Logger.infoText;\n }\n },\n },\n models: {\n list: (projectId: string) =>\n `Content models in ${Logger.highlightText(projectId)}:`,\n noList: (projectId: string) =>\n `[${projectId}] Cannot retrieve content models`,\n get: (projectId: string, id: string) =>\n `[${projectId}] Content models ${Logger.infoText(`[ ${id} ]`)}`,\n failedGet: (projectId: string, id: string) =>\n `[${projectId}] Unable to get content models ${Logger.highlightText(id)}`,\n },\n nodes: {\n imported: (env: string, commit: boolean, count: number) =>\n `[${env}] ${commit ? `Imported` : `Will import`} ${count} nodes`,\n failedImport: (env: string) => `[${env}] Unable to import nodes`,\n removed: (env: string, commit: boolean, root: string) =>\n `[${env}] ${commit ? `Deleted` : `Will delete`} nodes at ${root}`,\n failedRemove: (env: string) => `[${env}] Unable to delete nodes`,\n notFound: (env: string) => `[${env}] Nodes were not found `,\n commitTip: () => `Add --commit flag to commit the previewed changes`,\n failedGet: (projectId: string) =>\n `[${projectId}] Cannot retrieve nodes from Site view`,\n get: (projectId: string, root: string, depth: number) =>\n `[${projectId}] Site view nodes at: ${Logger.highlightText(root)}${\n depth ? ` to a depth of ${depth}` : ``\n }\\n`,\n noChange: (env: string) => `[${env}] No changes to be made`,\n },\n contenttypes: {\n list: (projectId: string) =>\n `Content types in ${Logger.highlightText(projectId)}:`,\n get: (projectId: string, id: string) =>\n `[${projectId}] Content type ${Logger.highlightText(id)}`,\n failedGet: (projectId: string, id: string) =>\n `[${projectId}] Unable to get content type ${Logger.highlightText(id)}`,\n created: (projectId: string, id: string, status?: string) =>\n `[${projectId}] Content type ${status}d ${Logger.highlightText(id)}`,\n removed: (env: string, id: string, commit: boolean) =>\n `[${env}] ${\n commit ? `Deleted` : `Will delete`\n } content type ${Logger.highlightText(id)}`,\n failedRemove: (env: string, id: string) =>\n `[${env}] Unable to delete content type ${Logger.highlightText(id)}`,\n },\n components: {\n list: (projectId: string) =>\n `Components in ${Logger.highlightText(projectId)}:`,\n get: (projectId: string, id: string) =>\n `[${projectId}] Component ${Logger.highlightText(id)}`,\n failedGet: (projectId: string, id: string) =>\n `[${projectId}] Unable to get component ${Logger.highlightText(id)}`,\n created: (projectId: string, id: string, status?: string) =>\n `[${projectId}] Component ${status}d ${Logger.highlightText(id)}`,\n removed: (env: string, id: string, commit: boolean) =>\n `[${env}] ${\n commit ? `Deleted` : `Will delete`\n } component ${Logger.highlightText(id)}`,\n failedRemove: (env: string, id: string) =>\n `[${env}] Unable to delete component ${Logger.highlightText(id)}`,\n },\n version: {\n set: (env: string, versionStatus: string) =>\n `[${env}] Content version status set to \"${versionStatus}\"`,\n invalid: (versionStatus: string) =>\n `Content version status \"${versionStatus}\" is not valid, allowed values are \"published\" or \"latest\".`,\n noEnv: () =>\n `No Contensis environment set, connect to your Contensis cloud instance using \"contensis connect {cms alias}\"`,\n },\n entries: {\n imported: (env: string, commit: boolean, count: number) =>\n `[${env}] ${commit ? `Imported` : `Will import`} ${count} entries`,\n failedImport: (env: string) => `[${env}] Unable to import entries`,\n removed: (env: string, commit: boolean) =>\n `[${env}] ${commit ? `Deleted` : `Will delete`} entries`,\n failedRemove: (env: string) => `[${env}] Unable to delete entries`,\n notFound: (env: string) => `[${env}] Entries were not found`,\n commitTip: () => `Add --commit flag to commit the previewed changes`,\n },\n keys: {\n list: (env: string) => `[${env}] API keys:`,\n noList: (env: string) => `[${env}] Cannot retrieve API keys`,\n created: (env: string, name: string) =>\n `[${env}] Created API key ${Logger.highlightText(name)}`,\n tip: () =>\n `Assign your new key to a role with \"set role assignments\", or create a new role with \"create role\"`,\n failedCreate: (env: string, name: string) =>\n `[${env}] Unable to create API key ${Logger.highlightText(name)}`,\n failedUpdate: (env: string, name: string) =>\n `[${env}] Unable to update API key ${Logger.highlightText(name)}`,\n removed: (env: string, id: string) =>\n `[${env}] Deleted API key ${Logger.highlightText(id)}`,\n failedRemove: (env: string, id: string) =>\n `[${env}] Unable to delete API key ${Logger.highlightText(id)}`,\n },\n proxies: {\n list: (env: string, projectId: string | undefined) =>\n `[${env}] Retrieved proxies in project ${projectId}:`,\n noList: (env: string, projectId: string | undefined) =>\n `[${env}] Cannot retrieve proxies in project ${projectId}`,\n // noneExist: () => `Create a role with \"create renderer\"`,\n failedGet: (env: string, name: string, projectId: string) =>\n `[${env}] Unable to find proxy ${Logger.highlightText(\n name\n )} in project ${projectId}`,\n created: (env: string, name: string, projectId: string) =>\n `[${env}] Created proxy ${Logger.highlightText(\n name\n )} in project ${projectId}\\n`,\n failedCreate: (env: string, name: string, projectId: string) =>\n `[${env}] Unable to create proxy ${Logger.highlightText(\n name\n )} in project ${projectId}`,\n setPayload: () => `Updating proxy with details\\n`,\n set: () => `Succesfully updated proxy\\n`,\n failedSet: (env: string, name: string, projectId: string) =>\n `[${env}] Unable to update proxy ${Logger.highlightText(\n name\n )} in project ${projectId}`,\n removed: (env: string, id: string, projectId: string) =>\n `[${env}] Deleted proxy ${Logger.highlightText(\n id\n )} in project ${projectId}\\n`,\n failedRemove: (env: string, id: string, projectId: string) =>\n `[${env}] Unable to delete proxy ${Logger.highlightText(\n id\n )} in project ${projectId}`,\n },\n renderers: {\n list: (env: string, projectId: string | undefined) =>\n `[${env}] Retrieved renderers in project ${projectId}:`,\n noList: (env: string, projectId: string | undefined) =>\n `[${env}] Cannot retrieve renderers in project ${projectId}`,\n // noneExist: () => `Create a role with \"create renderer\"`,\n failedGet: (env: string, name: string, projectId: string) =>\n `[${env}] Unable to find renderer ${Logger.highlightText(\n name\n )} in project ${projectId}`,\n created: (env: string, name: string, projectId: string) =>\n `[${env}] Created renderer ${Logger.highlightText(\n name\n )} in project ${projectId}\\n`,\n failedCreate: (env: string, name: string, projectId: string) =>\n `[${env}] Unable to create renderer ${Logger.highlightText(\n name\n )} in project ${projectId}`,\n setPayload: () => `Updating renderer with details\\n`,\n set: () => `Succesfully updated renderer\\n`,\n failedSet: (env: string, name: string, projectId: string) =>\n `[${env}] Unable to update renderer ${Logger.highlightText(\n name\n )} in project ${projectId}`,\n removed: (env: string, id: string, projectId: string) =>\n `[${env}] Deleted renderer ${Logger.highlightText(\n id\n )} in project ${projectId}\\n`,\n failedRemove: (env: string, id: string, projectId: string) =>\n `[${env}] Unable to delete renderer ${Logger.highlightText(\n id\n )} in project ${projectId}`,\n },\n roles: {\n list: (env: string) => `[${env}] Retrieved roles`,\n noList: (env: string) => `[${env}] Cannot retrieve roles`,\n noneExist: () => `Create a role with \"create role\"`,\n failedGet: (env: string, name: string) =>\n `[${env}] Unable to find role ${Logger.highlightText(name)}`,\n created: (env: string, name: string) =>\n `[${env}] Created role ${Logger.highlightText(name)}\\n`,\n tip: () =>\n `Give access to your role with \"set role assignments\", allow your role to do things with \"set role permissions\"`,\n failedCreate: (env: string, name?: string) =>\n `[${env}] Unable to create role ${Logger.highlightText(name)}`,\n setPayload: () => `Updating role with details\\n`,\n set: () => `Succesfully updated role\\n`,\n failedSet: (env: string, name?: string) =>\n `[${env}] Unable to update role ${Logger.highlightText(name)}`,\n removed: (env: string, id: string) =>\n `[${env}] Deleted role ${Logger.highlightText(id)}\\n`,\n failedRemove: (env: string, id: string) =>\n `[${env}] Unable to delete role ${Logger.highlightText(id)}`,\n },\n blocks: {\n runningStatus: (status: BlockRunningStatus | 'broken') => {\n switch (status) {\n case 'available':\n return Logger.successText(status);\n case 'pending':\n case 'starting':\n case 'stopped':\n return Logger.warningText(status);\n case 'degraded':\n case 'faulted':\n case 'broken':\n return Logger.errorText(status);\n default:\n return Logger.infoText(status);\n }\n },\n get: (\n id: string,\n branch: string,\n version: string,\n env: string,\n projectId?: string\n ) =>\n `[${env}] ${\n version && version !== 'latest'\n ? `Found v${version}`\n : 'Latest block versions'\n } for ${Logger.infoText(`${branch}/`)}${Logger.highlightText(\n id\n )} in project ${projectId}\\n`,\n noGet: (\n id: string,\n branch: string,\n version: string,\n env: string,\n projectId?: string\n ) =>\n `[${env}] Did not find ${\n version ? `v${version}` : 'any block versions'\n } for ${Logger.highlightText(id)} in branch ${Logger.infoText(\n branch\n )} in ${Logger.infoText(projectId)} project`,\n noGetTip: () =>\n `Check the available blocks and branches in this project by running \"list blocks\"`,\n list: (env: string, projectId?: string) =>\n `[${env}] Blocks in project ${projectId}\\n`,\n noList: (env: string, projectId?: string) =>\n `[${env}] Cannot retrieve blocks in project ${projectId}`,\n getLogs: (id: string, branch: string, env: string, projectId?: string) =>\n `[${env}] Requesting logs from block ${Logger.highlightText(\n id\n )} in branch ${branch} in project ${projectId}`,\n failedGetLogs: (id: string, env: string, projectId?: string) =>\n `[${env}] Unable to fetch block logs for ${Logger.highlightText(\n id\n )} in project ${projectId}`,\n tryPush: (id: string, branch: string, env: string, projectId?: string) =>\n `[${env}] Request to push block ${Logger.highlightText(\n id\n )} in branch ${branch} in project ${projectId}`,\n pushed: (id: string, branch: string, env: string, projectId?: string) =>\n `[${env}] Pushed block ${Logger.highlightText(\n id\n )} in branch ${branch} in project ${projectId}`,\n failedPush: (id: string, env: string, projectId?: string) =>\n `[${env}] Unable to push block ${Logger.highlightText(\n id\n )} in project ${projectId}`,\n failedParsingVersion: () =>\n `Did not find a \"version.versionNo\" in response`,\n actionComplete: (\n action: BlockActionType,\n id: string,\n env: string,\n projectId?: string\n ) =>\n `[${env}] Action ${Logger.highlightText(\n action\n )} on ${Logger.highlightText(\n id\n )} in project ${projectId} requested successfully`,\n actionFailed: (\n action: BlockActionType,\n id: string,\n env: string,\n projectId?: string\n ) =>\n `[${env}] Problem executing ${action} on block ${Logger.highlightText(\n id\n )} in project ${projectId}`,\n deleted: (id: string, env: string, projectId?: string) =>\n `[${env}] Deleted block ${Logger.highlightText(\n id\n )} in project ${projectId}`,\n failedDelete: (id: string, env: string, projectId?: string) =>\n `[${env}] Unable to delete block ${Logger.highlightText(\n id\n )} in project ${projectId}`,\n stopFollow: (id: string, env: string, projectId?: string) =>\n `[${env}]\\n\\n \uD83D\uDC4C stop fetching new ${Logger.highlightText(\n id\n )} logs in project ${projectId}`,\n timeoutFollow: (id: string, env: string, projectId?: string) =>\n `[${env}]\\n\\n \uD83E\uDD0F pausing fetching new ${Logger.highlightText(\n id\n )} logs in project ${projectId} due to too many requests`,\n },\n webhooks: {\n list: (env: string) => `[${env}] Webhook subscriptions:`,\n noList: (env: string) => `[${env}] Cannot retrieve webhook subscriptions`,\n noneExist: () => `No webhook subscriptions exist`,\n created: (env: string, name: string) =>\n `[${env}] Created Webhook subscription ${Logger.highlightText(name)}`,\n failedCreate: (env: string, name: string) =>\n `[${env}] Unable to create Webhook subscription ${Logger.highlightText(\n name\n )}`,\n deleted: (env: string, id: string) =>\n `[${env}] Deleted Webhook subscription ${Logger.highlightText(id)}`,\n failedDelete: (env: string, id: string) =>\n `[${env}] Unable to delete Webhook subscription ${Logger.highlightText(\n id\n )}`,\n },\n workflows: {\n list: (env: string) => `[${env}] Retrieved workflows`,\n noList: (env: string) => `[${env}] Cannot retrieve workflows`,\n noneExist: () => `No workflows found`,\n failedGet: (env: string, name: string) =>\n `[${env}] Unable to find workflow ${Logger.highlightText(name)}`,\n },\n devinit: {\n intro: () => `Contensis developer environment initialisation`,\n //`This will initialise your local working directory to develop with the current connected Contensis project`,\n projectDetails: (\n name: string,\n env: string,\n projectId: string,\n blockId: string,\n git: GitHelper\n ) =>\n `\n Project: ${Logger.standardText(name)}\n - Home: ${Logger.standardText(git.gitcwd())}\n - Repository: ${Logger.standardText(git.home)} \n - Block id: ${Logger.highlightText(blockId)}\n \n Connect to Contensis instance: ${Logger.standardText(env)}\n - Project id: ${Logger.standardText(projectId)}\n `,\n developmentKey: (name: string, existing: boolean) =>\n ` - ${\n !existing ? 'Create development API key' : 'Development API key found'\n }: ${Logger[!existing ? 'highlightText' : 'standardText'](name)}`,\n deploymentKey: (name: string, existing: boolean) =>\n ` - ${\n !existing ? 'Create deployment API key' : 'Deployment API key found'\n }: ${Logger[!existing ? 'highlightText' : 'standardText'](name)}`,\n ciIntro: (git: GitHelper, location: 'git' | 'env') =>\n `We will create API keys with permissions to use this project with Contensis, and add a job to your CI that will deploy a container build.\n ${\n location === 'git'\n ? `We will ask you to add secrets/variables to your git repository to give your workflow permission to push a Block to Contensis.\n ${Logger.infoText(`You could visit ${git.secretsUri} to check that you can see repository settings, \n a page not found generally indicates you need to ask the repo owner for permission to add repository secrets, \n or ask the repo owner to add these secrets for you.`)}`\n : ''\n }`,\n ciDetails: (filename: string) =>\n `Add push-block job to CI file: ${Logger.highlightText(filename)}\\n`,\n ciMultipleChoices: () =>\n `Multiple GitHub workflow files found\\n${Logger.infoText(\n `Tell us which GitHub workflow builds a container image after each push:`\n )}`,\n ciMultipleBuildJobChoices: () =>\n `Multiple build jobs found in workflow\\n${Logger.infoText(\n `Choose the build job that produces a fresh container image to push to a block:`\n )}`,\n ciMultipleJobChoices: () =>\n `Other jobs found in workflow\\n${Logger.infoText(\n `Choose the job that produces a fresh container image we can push to a block:`\n )}`,\n ciMultipleAppImageVarChoices: () =>\n `Do one of these variables point to your tagged app image?\\n${Logger.infoText(\n `we have included a default choice - ensure your build image is tagged exactly the same as this`\n )}`,\n ciEnterOwnAppImagePrompt: (git: GitHelper) =>\n `Tell us the registry uri your app image is tagged and pushed with (\u23CE accept default) \\n${Logger.infoText(\n `Tip: ${\n git.type === 'github'\n ? `GitHub context variables available\\nhttps://docs.github.com/en/actions/learn-github-actions/variables#using-contexts-to-access-variable-values`\n : `GitLab CI/CD variables available\\nhttps://docs.gitlab.com/ee/ci/variables/`\n }`\n )}\\n`,\n confirm: () =>\n `Confirm these details are correct so we can make changes to your project`,\n createDevKey: (keyName: string, existing: boolean) =>\n `${\n !existing ? 'Created' : 'Checked permissions for'\n } development API key ${Logger.standardText(keyName)}`,\n createDeployKey: (keyName: string, existing: boolean) =>\n `${\n !existing ? 'Created' : 'Checked permissions for'\n } deployment API key ${Logger.standardText(keyName)}`,\n createKeyFail: (keyName: string, existing: boolean) =>\n `Failed to ${\n !existing ? 'create' : 'update'\n } API key ${Logger.highlightText(keyName)}`,\n writeEnvFile: () => `Written .env file to project home directory`,\n useEnvFileTip: () =>\n `You should alter existing project code that connects a Contensis client to use the variables from this file`,\n writeCiFile: (ciFilePath: string) =>\n `Updated CI file ${Logger.standardText(winSlash(ciFilePath))}`,\n ciFileNoChanges: (ciFilePath: string) =>\n `No updates needed for CI file ${Logger.standardText(\n winSlash(ciFilePath)\n )}`,\n ciBlockTip: (blockId: string, env: string, projectId: string) =>\n `A job is included to deploy your built container image to ${Logger.standardText(\n projectId\n )} at ${Logger.standardText(env)} in a block called ${Logger.standardText(\n blockId\n )}`,\n addGitSecretsIntro: () =>\n `We have created an API key that allows you to deploy your app image to a Contensis Block but we need you to add these details to your GitLab repository.`,\n addGitSecretsHelp: (git: GitHelper, id?: string, secret?: string) =>\n `Add secrets or variables in your repository's settings page\\n\\nGo to ${Logger.highlightText(\n git.secretsUri\n )}\\n\\n${\n git.type === 'github'\n ? `Add a \"New repository secret\"`\n : `Expand \"Variables\" and hit \"Add variable\"`\n }\\n\\n ${\n git.type === 'github' ? `Secret name:` : `Key:`\n } ${Logger.highlightText(`CONTENSIS_CLIENT_ID`)}\\n ${\n git.type === 'github' ? `Secret:` : `Value:`\n } ${Logger.standardText(\n id\n )}\\n\\n ${`Add one more secret/variable to the repository`}\\n\\n ${\n git.type === 'github' ? `Secret name:` : `Key:`\n } ${Logger.highlightText(`CONTENSIS_SHARED_SECRET`)}\\n ${\n git.type === 'github' ? `Secret:` : `Value:`\n } ${Logger.standardText(secret)}`,\n accessTokenFetch: () =>\n `Please wait, fetching Delivery API access token \u23F3`,\n accessTokenSuccess: (token: string) =>\n `Successfully fetched Delivery API token\\n ${Logger.infoText(token)}`,\n accessTokenFailed: () =>\n `Something went wrong! If the problem persists, please contact our support team \uD83D\uDEDF`,\n accessTokenPermission: () =>\n `We need permission to fetch your Delivery API token, please try again \u26A0\uFE0F`,\n clientDetailsLocation: () =>\n `Which option would you like to use for storing your client ID and secret`,\n clientDetailsInGit: (git: GitHelper) =>\n `${\n git.type === 'github' ? 'GitHub' : 'GitLab'\n } variables (recommended for public repositories)`,\n clientDetailsInEnv: () =>\n `Env variables (recommended for private repositories)`,\n success: () => `Contensis developer environment initialisation complete`,\n partialSuccess: () =>\n `Contensis developer environment initialisation completed with errors`,\n failed: () => `Contensis developer environment initialisation failed`,\n dryRun: () =>\n `Contensis developer environment initialisation dry run completed`,\n dryRunKeyMessage: (dryRun: boolean) =>\n dryRun ? '<< not created: dry-run >>' : undefined,\n noChanges: () =>\n `No changes were made to your project, run the command again without the ${Logger.highlightText(\n '--dry-run'\n )} flag to update your project with these changes`,\n startProjectTip: () =>\n `Start up your project in the normal way for development`,\n blockIdQuestion: () =>\n `Please enter your block id, this should be unquie and in kebab case e.g ${Logger.highlightText(\n 'my-awesome-website'\n )}`,\n },\n devrequests: {\n install: {\n notFound: (repo: string) =>\n `Could not find a release in ${repo} repo - please check github`,\n download: (repo: string, version: string) =>\n `Found release ${repo} ${version}`,\n downloading: (repo: string, version: string) =>\n `Downloading ${repo} ${version}`,\n downloadFail: (repo: string, version: string) =>\n `Problem downloading release ${version} from ${repo}`,\n downloaded: (repo: string, version: string) =>\n `Downloaded ${repo} ${version}`,\n applyUpdate: (version: string, existing: string) =>\n `Use updated version ${version} ${Logger.infoText(\n `(replaces ${existing})`\n )}?`,\n },\n launch: () => `Launching request handler for local development`,\n spawn: () =>\n `If you see a firewall popup requesting network access, it is safe to approve`,\n exited: (code: number | null) =>\n `Request handler exited with code ${code}\\n`,\n errored: (error: Error) =>\n `Could not launch request handler due to error \\n${error}`,\n },\n};\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["import {\n BlockActionType,\n BlockRunningStatus,\n MigrateModelsResult,\n MigrateStatus,\n} from 'migratortron';\nimport { GitHelper } from '~/util/git';\nimport { Logger } from '~/util/logger';\nimport { winSlash } from '~/util/os';\n\nexport const LogMessages = {\n app: {\n contensis: () => 'Contensis',\n quit: () => `Goodbye \uD83D\uDC4B\\n`,\n startup: (version: string) =>\n `v${version} \u00A9 2001-${new Date().getFullYear()} Zengenti \uD83C\uDDEC\uD83C\uDDE7. \\n - Creators of Contensis and purveyors of other fine software\\n\\n\uD83D\uDC4B Welcome to the contensis-cli\\n`,\n help: () =>\n 'Press [CTRL]+[C] or type \"quit\" to return to your system shell\\nPress [TAB] for suggestions\\n',\n suggestions: () =>\n `\\n${Logger.errorText('>>')} Press [TAB] for suggestions\\n`,\n autocomplete: () => `\\n${Logger.errorText('>>')} Available commands:`,\n unknownError: () => `Something went wrong...`,\n fileOutput: (format = 'json', path?: string) =>\n `Output ${format} file: ${Logger.infoText(path)}\\n`,\n noFileOutput: () => `No output written\\n`,\n },\n command: {\n notKnown: (command: string) => `${command} is not known`,\n },\n envs: {\n found: (num: number) =>\n `environments store found containing ${num} environment${\n num === 1 ? '' : 's'\n }`,\n tip: () =>\n `Connect to a Contensis cloud instance using \"contensis connect {cms alias}\"`,\n },\n connect: {\n command: {\n name: () => 'connect',\n example: () => `Example call:\\n > connect example-dev`,\n },\n args: {\n alias: {\n name: () => '<alias>',\n description: () => 'the Contensis Cloud alias to connect with',\n },\n },\n noEnv: () => `Cannot connect - no environment alias specified`,\n unreachable: (url: string, status: number) =>\n `Cannot reach ${url}${status ? ` - status ${status}` : ''}`,\n connected: (env: string) => `Current environment set to \"${env}\"`,\n help: () =>\n `Connect to a Contensis cloud instance using \"contensis connect {cms alias}\"`,\n projects: () => `Available projects:`,\n noProjects: () => `Cannot retrieve projects list`,\n tip: () =>\n `Introduce yourself with \"login {username}\" or \"login {clientId} -s {secret}\" or by passing credentials as options with your command`,\n },\n login: {\n command: {\n name: () => 'login',\n usage: () => `<user/clientId> [password] [-s <sharedSecret>]`,\n example: () =>\n `Example call:\\n > login myuserid\\n -- or --\\n > login {clientId} -s {sharedSecret}`,\n },\n args: {\n user: {\n name: () => '<user/clientId>',\n description: () => 'the username to login with',\n },\n password: {\n name: () => '[password]',\n description: () =>\n 'the password to use to login with (optional/insecure)',\n },\n secret: {\n name: () => '-s --sharedSecret <sharedSecret>',\n description: () =>\n 'the shared secret to use when logging in with a client id',\n },\n },\n passwordPrompt: (env?: string, userId?: string) =>\n userId\n ? `Enter password for ${userId}@${env}:`\n : `Please enter a password`,\n failed: (env: string, userId: string) =>\n `Unable to login to ${env} as ${userId}`,\n success: (env: string, userId: string) =>\n `User ${userId} connected to ${env} successfully\\n`,\n insecurePassword: () =>\n `Could not connect to local keystore - your password could be stored unencrypted!`,\n noEnv: () => `No environment set, use \"contensis connect {alias}\" first`,\n noUserId: () => `No user id specified`,\n },\n projects: {\n list: () => `Available projects:`,\n noList: () => `Cannot retrieve projects list`,\n set: (projectId: string) =>\n `Current project is set to ${Logger.highlightText(projectId)}`,\n failedSet: (projectId: string) =>\n `Project ${Logger.highlightText(projectId)} not found`,\n tip: () =>\n `You need to set your current working project with \"set project {projectId}\"`,\n created: (env: string, id: string) =>\n `[${env}] Created project ${Logger.highlightText(id)}`,\n failedCreate: (env: string, id: string) =>\n `[${env}] Unable to create project ${Logger.highlightText(id)}`,\n updated: (env: string, id: string) =>\n `[${env}] Updated project ${Logger.highlightText(id)}`,\n failedUpdate: (env: string, id: string) =>\n `[${env}] Unable to update project ${Logger.highlightText(id)}`,\n },\n migrate: {\n models: {\n result: (\n status: keyof MigrateModelsResult['project']['contentTypes']\n ) => {\n switch (status) {\n case 'created':\n case 'updated':\n return Logger.successText;\n case 'errors':\n return Logger.errorText;\n default:\n return Logger.infoText;\n }\n },\n },\n status: (status: MigrateStatus) => {\n switch (status) {\n case 'no change':\n return Logger.successText;\n case 'create':\n case 'two-pass':\n case 'update':\n case 'delete':\n return Logger.warningText;\n case 'error':\n case 'not found':\n return Logger.errorText;\n default:\n return Logger.infoText;\n }\n },\n },\n models: {\n list: (projectId: string) =>\n `Content models in ${Logger.highlightText(projectId)}:`,\n noList: (projectId: string) =>\n `[${projectId}] Cannot retrieve content models`,\n get: (projectId: string, id: string) =>\n `[${projectId}] Content models ${Logger.infoText(`[ ${id} ]`)}`,\n failedGet: (projectId: string, id: string) =>\n `[${projectId}] Unable to get content models ${Logger.highlightText(id)}`,\n },\n nodes: {\n imported: (env: string, commit: boolean, count: number) =>\n `[${env}] ${commit ? `Imported` : `Will import`} ${count} nodes`,\n failedImport: (env: string) => `[${env}] Unable to import nodes`,\n removed: (env: string, commit: boolean, root: string) =>\n `[${env}] ${commit ? `Deleted` : `Will delete`} nodes at ${root}`,\n failedRemove: (env: string) => `[${env}] Unable to delete nodes`,\n notFound: (env: string) => `[${env}] Nodes were not found `,\n commitTip: () => `Add --commit flag to commit the previewed changes`,\n failedGet: (projectId: string) =>\n `[${projectId}] Cannot retrieve nodes from Site view`,\n get: (projectId: string, root: string, depth: number) =>\n `[${projectId}] Site view nodes at: ${Logger.highlightText(root)}${\n depth ? ` to a depth of ${depth}` : ``\n }\\n`,\n noChange: (env: string) => `[${env}] No changes to be made`,\n },\n contenttypes: {\n list: (projectId: string) =>\n `Content types in ${Logger.highlightText(projectId)}:`,\n get: (projectId: string, id: string) =>\n `[${projectId}] Content type ${Logger.highlightText(id)}`,\n failedGet: (projectId: string, id: string) =>\n `[${projectId}] Unable to get content type ${Logger.highlightText(id)}`,\n created: (projectId: string, id: string, status?: string) =>\n `[${projectId}] Content type ${status}d ${Logger.highlightText(id)}`,\n removed: (env: string, id: string, commit: boolean) =>\n `[${env}] ${\n commit ? `Deleted` : `Will delete`\n } content type ${Logger.highlightText(id)}`,\n failedRemove: (env: string, id: string) =>\n `[${env}] Unable to delete content type ${Logger.highlightText(id)}`,\n },\n components: {\n list: (projectId: string) =>\n `Components in ${Logger.highlightText(projectId)}:`,\n get: (projectId: string, id: string) =>\n `[${projectId}] Component ${Logger.highlightText(id)}`,\n failedGet: (projectId: string, id: string) =>\n `[${projectId}] Unable to get component ${Logger.highlightText(id)}`,\n created: (projectId: string, id: string, status?: string) =>\n `[${projectId}] Component ${status}d ${Logger.highlightText(id)}`,\n removed: (env: string, id: string, commit: boolean) =>\n `[${env}] ${\n commit ? `Deleted` : `Will delete`\n } component ${Logger.highlightText(id)}`,\n failedRemove: (env: string, id: string) =>\n `[${env}] Unable to delete component ${Logger.highlightText(id)}`,\n },\n version: {\n set: (env: string, versionStatus: string) =>\n `[${env}] Content version status set to \"${versionStatus}\"`,\n invalid: (versionStatus: string) =>\n `Content version status \"${versionStatus}\" is not valid, allowed values are \"published\" or \"latest\".`,\n noEnv: () =>\n `No Contensis environment set, connect to your Contensis cloud instance using \"contensis connect {cms alias}\"`,\n },\n entries: {\n imported: (env: string, commit: boolean, count: number) =>\n `[${env}] ${commit ? `Imported` : `Will import`} ${count} entries`,\n failedImport: (env: string) => `[${env}] Unable to import entries`,\n removed: (env: string, commit: boolean) =>\n `[${env}] ${commit ? `Deleted` : `Will delete`} entries`,\n failedRemove: (env: string) => `[${env}] Unable to delete entries`,\n notFound: (env: string) => `[${env}] Entries were not found`,\n commitTip: () => `Add --commit flag to commit the previewed changes`,\n },\n keys: {\n list: (env: string) => `[${env}] API keys:`,\n noList: (env: string) => `[${env}] Cannot retrieve API keys`,\n created: (env: string, name: string) =>\n `[${env}] Created API key ${Logger.highlightText(name)}`,\n tip: () =>\n `Assign your new key to a role with \"set role assignments\", or create a new role with \"create role\"`,\n failedCreate: (env: string, name: string) =>\n `[${env}] Unable to create API key ${Logger.highlightText(name)}`,\n failedUpdate: (env: string, name: string) =>\n `[${env}] Unable to update API key ${Logger.highlightText(name)}`,\n removed: (env: string, id: string) =>\n `[${env}] Deleted API key ${Logger.highlightText(id)}`,\n failedRemove: (env: string, id: string) =>\n `[${env}] Unable to delete API key ${Logger.highlightText(id)}`,\n },\n proxies: {\n list: (env: string, projectId: string | undefined) =>\n `[${env}] Retrieved proxies in project ${projectId}:`,\n noList: (env: string, projectId: string | undefined) =>\n `[${env}] Cannot retrieve proxies in project ${projectId}`,\n // noneExist: () => `Create a role with \"create renderer\"`,\n failedGet: (env: string, name: string, projectId: string) =>\n `[${env}] Unable to find proxy ${Logger.highlightText(\n name\n )} in project ${projectId}`,\n created: (env: string, name: string, projectId: string) =>\n `[${env}] Created proxy ${Logger.highlightText(\n name\n )} in project ${projectId}\\n`,\n failedCreate: (env: string, name: string, projectId: string) =>\n `[${env}] Unable to create proxy ${Logger.highlightText(\n name\n )} in project ${projectId}`,\n setPayload: () => `Updating proxy with details\\n`,\n set: () => `Succesfully updated proxy\\n`,\n failedSet: (env: string, name: string, projectId: string) =>\n `[${env}] Unable to update proxy ${Logger.highlightText(\n name\n )} in project ${projectId}`,\n removed: (env: string, id: string, projectId: string) =>\n `[${env}] Deleted proxy ${Logger.highlightText(\n id\n )} in project ${projectId}\\n`,\n failedRemove: (env: string, id: string, projectId: string) =>\n `[${env}] Unable to delete proxy ${Logger.highlightText(\n id\n )} in project ${projectId}`,\n },\n renderers: {\n list: (env: string, projectId: string | undefined) =>\n `[${env}] Retrieved renderers in project ${projectId}:`,\n noList: (env: string, projectId: string | undefined) =>\n `[${env}] Cannot retrieve renderers in project ${projectId}`,\n // noneExist: () => `Create a role with \"create renderer\"`,\n failedGet: (env: string, name: string, projectId: string) =>\n `[${env}] Unable to find renderer ${Logger.highlightText(\n name\n )} in project ${projectId}`,\n created: (env: string, name: string, projectId: string) =>\n `[${env}] Created renderer ${Logger.highlightText(\n name\n )} in project ${projectId}\\n`,\n failedCreate: (env: string, name: string, projectId: string) =>\n `[${env}] Unable to create renderer ${Logger.highlightText(\n name\n )} in project ${projectId}`,\n setPayload: () => `Updating renderer with details\\n`,\n set: () => `Succesfully updated renderer\\n`,\n failedSet: (env: string, name: string, projectId: string) =>\n `[${env}] Unable to update renderer ${Logger.highlightText(\n name\n )} in project ${projectId}`,\n removed: (env: string, id: string, projectId: string) =>\n `[${env}] Deleted renderer ${Logger.highlightText(\n id\n )} in project ${projectId}\\n`,\n failedRemove: (env: string, id: string, projectId: string) =>\n `[${env}] Unable to delete renderer ${Logger.highlightText(\n id\n )} in project ${projectId}`,\n },\n roles: {\n list: (env: string) => `[${env}] Retrieved roles`,\n noList: (env: string) => `[${env}] Cannot retrieve roles`,\n noneExist: () => `Create a role with \"create role\"`,\n failedGet: (env: string, name: string) =>\n `[${env}] Unable to find role ${Logger.highlightText(name)}`,\n created: (env: string, name: string) =>\n `[${env}] Created role ${Logger.highlightText(name)}\\n`,\n tip: () =>\n `Give access to your role with \"set role assignments\", allow your role to do things with \"set role permissions\"`,\n failedCreate: (env: string, name?: string) =>\n `[${env}] Unable to create role ${Logger.highlightText(name)}`,\n setPayload: () => `Updating role with details\\n`,\n set: () => `Succesfully updated role\\n`,\n failedSet: (env: string, name?: string) =>\n `[${env}] Unable to update role ${Logger.highlightText(name)}`,\n removed: (env: string, id: string) =>\n `[${env}] Deleted role ${Logger.highlightText(id)}\\n`,\n failedRemove: (env: string, id: string) =>\n `[${env}] Unable to delete role ${Logger.highlightText(id)}`,\n },\n blocks: {\n runningStatus: (status: BlockRunningStatus | 'broken') => {\n switch (status) {\n case 'available':\n return Logger.successText(status);\n case 'pending':\n case 'starting':\n case 'stopped':\n return Logger.warningText(status);\n case 'degraded':\n case 'faulted':\n case 'broken':\n return Logger.errorText(status);\n default:\n return Logger.infoText(status);\n }\n },\n get: (\n id: string,\n branch: string,\n version: string,\n env: string,\n projectId?: string\n ) =>\n `[${env}] ${\n version && version !== 'latest'\n ? `Found v${version}`\n : 'Latest block versions'\n } for ${Logger.infoText(`${branch}/`)}${Logger.highlightText(\n id\n )} in project ${projectId}\\n`,\n noGet: (\n id: string,\n branch: string,\n version: string,\n env: string,\n projectId?: string\n ) =>\n `[${env}] Did not find ${\n version ? `v${version}` : 'any block versions'\n } for ${Logger.highlightText(id)} in branch ${Logger.infoText(\n branch\n )} in ${Logger.infoText(projectId)} project`,\n noGetTip: () =>\n `Check the available blocks and branches in this project by running \"list blocks\"`,\n list: (env: string, projectId?: string) =>\n `[${env}] Blocks in project ${projectId}\\n`,\n noList: (env: string, projectId?: string) =>\n `[${env}] Cannot retrieve blocks in project ${projectId}`,\n getLogs: (id: string, branch: string, env: string, projectId?: string) =>\n `[${env}] Requesting logs from block ${Logger.highlightText(\n id\n )} in branch ${branch} in project ${projectId}`,\n failedGetLogs: (id: string, env: string, projectId?: string) =>\n `[${env}] Unable to fetch block logs for ${Logger.highlightText(\n id\n )} in project ${projectId}`,\n tryPush: (id: string, branch: string, env: string, projectId?: string) =>\n `[${env}] Request to push block ${Logger.highlightText(\n id\n )} in branch ${branch} in project ${projectId}`,\n pushed: (id: string, branch: string, env: string, projectId?: string) =>\n `[${env}] Pushed block ${Logger.highlightText(\n id\n )} in branch ${branch} in project ${projectId}`,\n failedPush: (id: string, env: string, projectId?: string) =>\n `[${env}] Unable to push block ${Logger.highlightText(\n id\n )} in project ${projectId}`,\n failedParsingVersion: () =>\n `Did not find a \"version.versionNo\" in response`,\n actionComplete: (\n action: BlockActionType,\n id: string,\n env: string,\n projectId?: string\n ) =>\n `[${env}] Action ${Logger.highlightText(\n action\n )} on ${Logger.highlightText(\n id\n )} in project ${projectId} requested successfully`,\n actionFailed: (\n action: BlockActionType,\n id: string,\n env: string,\n projectId?: string\n ) =>\n `[${env}] Problem executing ${action} on block ${Logger.highlightText(\n id\n )} in project ${projectId}`,\n deleted: (id: string, env: string, projectId?: string) =>\n `[${env}] Deleted block ${Logger.highlightText(\n id\n )} in project ${projectId}`,\n failedDelete: (id: string, env: string, projectId?: string) =>\n `[${env}] Unable to delete block ${Logger.highlightText(\n id\n )} in project ${projectId}`,\n stopFollow: (id: string, env: string, projectId?: string) =>\n `[${env}]\\n\\n \uD83D\uDC4C stop fetching new ${Logger.highlightText(\n id\n )} logs in project ${projectId}`,\n timeoutFollow: (id: string, env: string, projectId?: string) =>\n `[${env}]\\n\\n \uD83E\uDD0F pausing fetching new ${Logger.highlightText(\n id\n )} logs in project ${projectId} due to too many requests`,\n },\n webhooks: {\n list: (env: string) => `[${env}] Webhook subscriptions:`,\n noList: (env: string) => `[${env}] Cannot retrieve webhook subscriptions`,\n noneExist: () => `No webhook subscriptions exist`,\n created: (env: string, name: string) =>\n `[${env}] Created Webhook subscription ${Logger.highlightText(name)}`,\n failedCreate: (env: string, name: string) =>\n `[${env}] Unable to create Webhook subscription ${Logger.highlightText(\n name\n )}`,\n deleted: (env: string, id: string) =>\n `[${env}] Deleted Webhook subscription ${Logger.highlightText(id)}`,\n failedDelete: (env: string, id: string) =>\n `[${env}] Unable to delete Webhook subscription ${Logger.highlightText(\n id\n )}`,\n },\n workflows: {\n list: (env: string) => `[${env}] Retrieved workflows`,\n noList: (env: string) => `[${env}] Cannot retrieve workflows`,\n noneExist: () => `No workflows found`,\n failedGet: (env: string, name: string) =>\n `[${env}] Unable to find workflow ${Logger.highlightText(name)}`,\n },\n devinit: {\n intro: () => `Contensis developer environment initialisation`,\n //`This will initialise your local working directory to develop with the current connected Contensis project`,\n projectDetails: (\n name: string,\n env: string,\n projectId: string,\n blockId: string,\n git: GitHelper\n ) =>\n `\n Project: ${Logger.standardText(name)}\n - Home: ${Logger.standardText(git.gitcwd())}\n - Repository: ${Logger.standardText(git.home)} \n - Block id: ${Logger.highlightText(blockId)}\n \n Connect to Contensis instance: ${Logger.standardText(env)}\n - Project id: ${Logger.standardText(projectId)}\n `,\n developmentKey: (name: string, existing: boolean) =>\n ` - ${\n !existing ? 'Create development API key' : 'Development API key found'\n }: ${Logger[!existing ? 'highlightText' : 'standardText'](name)}`,\n deploymentKey: (name: string, existing: boolean) =>\n ` - ${\n !existing ? 'Create deployment API key' : 'Deployment API key found'\n }: ${Logger[!existing ? 'highlightText' : 'standardText'](name)}`,\n ciIntro: (git: GitHelper, location: 'git' | 'env') =>\n `We will create API keys with permissions to use this project with Contensis, and add a job to your CI that will deploy a container build.\n ${\n location === 'git'\n ? `We will ask you to add secrets/variables to your git repository to give your workflow permission to push a Block to Contensis.\n ${Logger.infoText(`You could visit ${git.secretsUri} to check that you can see repository settings, \n a page not found generally indicates you need to ask the repo owner for permission to add repository secrets, \n or ask the repo owner to add these secrets for you.`)}`\n : ''\n }`,\n ciDetails: (filename: string) =>\n `Add push-block job to CI file: ${Logger.highlightText(filename)}\\n`,\n ciMultipleChoices: () =>\n `Multiple GitHub workflow files found\\n${Logger.infoText(\n `Tell us which GitHub workflow builds a container image after each push:`\n )}`,\n ciMultipleBuildJobChoices: () =>\n `Multiple build jobs found in workflow\\n${Logger.infoText(\n `Choose the build job that produces a fresh container image to push to a block:`\n )}`,\n ciMultipleJobChoices: () =>\n `Other jobs found in workflow\\n${Logger.infoText(\n `Choose the job that produces a fresh container image we can push to a block:`\n )}`,\n ciMultipleAppImageVarChoices: () =>\n `Do one of these variables point to your tagged app image?\\n${Logger.infoText(\n `we have included a default choice - ensure your build image is tagged exactly the same as this`\n )}`,\n ciEnterOwnAppImagePrompt: (git: GitHelper) =>\n `Tell us the registry uri your app image is tagged and pushed with (\u23CE accept default) \\n${Logger.infoText(\n `Tip: ${\n git.type === 'github'\n ? `GitHub context variables available\\nhttps://docs.github.com/en/actions/learn-github-actions/variables#using-contexts-to-access-variable-values`\n : `GitLab CI/CD variables available\\nhttps://docs.gitlab.com/ee/ci/variables/`\n }`\n )}\\n`,\n confirm: () =>\n `Confirm these details are correct so we can make changes to your project`,\n createDevKey: (keyName: string, existing: boolean) =>\n `${\n !existing ? 'Created' : 'Checked permissions for'\n } development API key ${Logger.standardText(keyName)}`,\n createDeployKey: (keyName: string, existing: boolean) =>\n `${\n !existing ? 'Created' : 'Checked permissions for'\n } deployment API key ${Logger.standardText(keyName)}`,\n createKeyFail: (keyName: string, existing: boolean) =>\n `Failed to ${\n !existing ? 'create' : 'update'\n } API key ${Logger.highlightText(keyName)}`,\n writeEnvFile: () => `Written .env file to project home directory`,\n useEnvFileTip: () =>\n `You should alter existing project code that connects a Contensis client to use the variables from this file`,\n writeCiFile: (ciFilePath: string) =>\n `Updated CI file ${Logger.standardText(winSlash(ciFilePath))}`,\n ciFileNoChanges: (ciFilePath: string) =>\n `No updates needed for CI file ${Logger.standardText(\n winSlash(ciFilePath)\n )}`,\n ciBlockTip: (blockId: string, env: string, projectId: string) =>\n `A job is included to deploy your built container image to ${Logger.standardText(\n projectId\n )} at ${Logger.standardText(env)} in a block called ${Logger.standardText(\n blockId\n )}`,\n addGitSecretsIntro: () =>\n `We have created an API key that allows you to deploy your app image to a Contensis Block but we need you to add these details to your GitLab repository.`,\n addGitSecretsHelp: (git: GitHelper, id?: string, secret?: string) =>\n `Add secrets or variables in your repository's settings page\\n\\nGo to ${Logger.highlightText(\n git.secretsUri\n )}\\n\\n${\n git.type === 'github'\n ? `Add a \"New repository secret\"`\n : `Expand \"Variables\" and hit \"Add variable\"`\n }\\n\\n ${\n git.type === 'github' ? `Secret name:` : `Key:`\n } ${Logger.highlightText(`CONTENSIS_CLIENT_ID`)}\\n ${\n git.type === 'github' ? `Secret:` : `Value:`\n } ${Logger.standardText(\n id\n )}\\n\\n ${`Add one more secret/variable to the repository`}\\n\\n ${\n git.type === 'github' ? `Secret name:` : `Key:`\n } ${Logger.highlightText(`CONTENSIS_SHARED_SECRET`)}\\n ${\n git.type === 'github' ? `Secret:` : `Value:`\n } ${Logger.standardText(secret)}`,\n accessTokenFetch: () =>\n `Please wait, fetching Delivery API access token \u23F3`,\n accessTokenSuccess: (token: string) =>\n `Successfully fetched Delivery API token\\n ${Logger.infoText(token)}`,\n accessTokenFailed: () =>\n `Something went wrong! If the problem persists, please contact our support team \uD83D\uDEDF`,\n accessTokenPermission: () =>\n `We need permission to fetch your Delivery API token, please try again \u26A0\uFE0F`,\n clientDetailsLocation: () =>\n `Which option would you like to use for storing your client ID and secret`,\n clientDetailsInGit: (git: GitHelper) =>\n `${\n git.type === 'github' ? 'GitHub' : 'GitLab'\n } variables (recommended for public repositories)`,\n clientDetailsInEnv: () =>\n `Env variables (recommended for private repositories)`,\n success: () => `Contensis developer environment initialisation complete`,\n partialSuccess: () =>\n `Contensis developer environment initialisation completed with errors`,\n failed: () => `Contensis developer environment initialisation failed`,\n dryRun: () =>\n `Contensis developer environment initialisation dry run completed`,\n dryRunKeyMessage: (dryRun: boolean) =>\n dryRun ? '<< not created: dry-run >>' : undefined,\n noChanges: () =>\n `No changes were made to your project, run the command again without the ${Logger.highlightText(\n '--dry-run'\n )} flag to update your project with these changes`,\n startProjectTip: () =>\n `Start up your project in the normal way for development`,\n blockIdQuestion: () =>\n `Please enter your block id, this should be unquie and in kebab case e.g ${Logger.highlightText(\n 'my-awesome-website'\n )}`,\n },\n devrequests: {\n install: {\n notFound: (repo: string) =>\n `Could not find a release in ${repo} repo - please check github`,\n download: (repo: string, version: string) => `Found release ${version}`,\n downloading: (repo: string, version: string) =>\n `Downloading ${repo} ${version}`,\n downloadFail: (repo: string, version: string) =>\n `Problem downloading release ${version} from ${repo}`,\n downloaded: (repo: string, version: string) =>\n `Downloaded ${repo} ${version}`,\n applyUpdate: (version: string, existing: string) =>\n `Use updated version ${version} ${Logger.infoText(\n `(replaces ${existing})`\n )}?`,\n },\n launch: () => `Launching request handler for local development`,\n overrideBlock: () => `Which block will you be running?`,\n overrideUri: () => `How to access your development site`,\n spawn: () =>\n `If you see a firewall popup requesting network access, it is safe to approve`,\n exited: (code: number | null) =>\n `Request handler exited with code ${code}\\n`,\n errored: (error: Error) =>\n `Could not launch request handler due to error \\n${error}`,\n },\n};\n"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }