contensis-cli 1.0.0-beta.63 → 1.0.0-beta.64

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.
@@ -66,6 +66,21 @@ Example call:
66
66
  description
67
67
  );
68
68
  });
69
+ create.command("role").description("create a new role").argument('<"Role name">', "the name of the role to create").argument('["Role description">', "the description of the role").option("--disabled", "do not enable the created role", false).addHelpText(
70
+ "after",
71
+ `
72
+ Example call:
73
+ > create role "My role" "This role is for testing" --disabled
74
+ `
75
+ ).action(async (roleName, description, opts) => {
76
+ await (0, import_ContensisCliService.cliCommand)(["create", "role", roleName], opts).CreateRole({
77
+ name: roleName,
78
+ description,
79
+ enabled: !opts.disabled,
80
+ assignments: { apiKeys: [], groups: [], users: [] },
81
+ permissions: { contentTypes: [], entries: [] }
82
+ });
83
+ });
69
84
  return create;
70
85
  };
71
86
  // Annotate the CommonJS export names for ESM import in node:
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/commands/create.ts"],
4
- "sourcesContent": ["import { Command } from 'commander';\nimport { Project } from 'contensis-core-api';\nimport { cliCommand } from '~/services/ContensisCliService';\nimport { shell } from '~/shell';\n\nexport const makeCreateCommand = () => {\n const create = new Command()\n .command('create')\n .description('create command')\n .addHelpText('after', `\\n`)\n .showHelpAfterError(true)\n .exitOverride();\n\n create\n .command('project')\n .description('create a new project')\n .argument('<projectId>', 'the id of the project to create')\n .argument('<name>', 'the name of the project to create')\n .argument('[description]', 'optional description of the project')\n .option(\n '-l, --language',\n 'the default language of the project to create',\n 'en-GB'\n )\n .option(\n '-langs, --supported-languages <langs...>',\n 'space separated list of other supported languages'\n )\n .usage(\n 'projectId \"Project name\" [\"Description of project\"] --language en-GB --supported-languages es-ES de-DE nl-NL'\n )\n .addHelpText('after', `\\n`)\n .action(\n async (projectId: string, name: string, description = '', opts: any) => {\n const createProject: Project = {\n id: projectId,\n name,\n description,\n primaryLanguage: opts.language,\n supportedLanguages: opts.supportedLanguages || [],\n };\n\n const project = await cliCommand(\n ['create', 'project', projectId],\n opts\n ).CreateProject(createProject);\n if (project) await shell().restart();\n }\n );\n create\n .command('key')\n .description('create a new api key')\n .argument('<\"key name\">', 'the name of the key to create')\n .argument('[\"description\"]', 'provide a description for the key (optional)')\n .usage('<\"key name\"> [\"description\"] (both args in \"double quotes\")')\n .addHelpText(\n 'after',\n `\nExample call:\n > create key \"my new key\" \"Created key for demonstration\"\\n`\n )\n .action(async (name: string, description: string, opts: any) => {\n await cliCommand(['create', 'key', name], opts).CreateApiKey(\n name,\n description\n );\n });\n\n return create;\n};\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAAwB;AAExB,iCAA2B;AAC3B,mBAAsB;AAEf,MAAM,oBAAoB,MAAM;AACrC,QAAM,SAAS,IAAI,yBAAQ,EACxB,QAAQ,QAAQ,EAChB,YAAY,gBAAgB,EAC5B,YAAY,SAAS;AAAA,CAAI,EACzB,mBAAmB,IAAI,EACvB,aAAa;AAEhB,SACG,QAAQ,SAAS,EACjB,YAAY,sBAAsB,EAClC,SAAS,eAAe,iCAAiC,EACzD,SAAS,UAAU,mCAAmC,EACtD,SAAS,iBAAiB,qCAAqC,EAC/D;AAAA,IACC;AAAA,IACA;AAAA,IACA;AAAA,EACF,EACC;AAAA,IACC;AAAA,IACA;AAAA,EACF,EACC;AAAA,IACC;AAAA,EACF,EACC,YAAY,SAAS;AAAA,CAAI,EACzB;AAAA,IACC,OAAO,WAAmB,MAAc,cAAc,IAAI,SAAc;AACtE,YAAM,gBAAyB;AAAA,QAC7B,IAAI;AAAA,QACJ;AAAA,QACA;AAAA,QACA,iBAAiB,KAAK;AAAA,QACtB,oBAAoB,KAAK,sBAAsB,CAAC;AAAA,MAClD;AAEA,YAAM,UAAU,UAAM;AAAA,QACpB,CAAC,UAAU,WAAW,SAAS;AAAA,QAC/B;AAAA,MACF,EAAE,cAAc,aAAa;AAC7B,UAAI;AAAS,kBAAM,oBAAM,EAAE,QAAQ;AAAA,IACrC;AAAA,EACF;AACF,SACG,QAAQ,KAAK,EACb,YAAY,sBAAsB,EAClC,SAAS,gBAAgB,+BAA+B,EACxD,SAAS,mBAAmB,8CAA8C,EAC1E,MAAM,6DAA6D,EACnE;AAAA,IACC;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,EAGF,EACC,OAAO,OAAO,MAAc,aAAqB,SAAc;AAC9D,cAAM,uCAAW,CAAC,UAAU,OAAO,IAAI,GAAG,IAAI,EAAE;AAAA,MAC9C;AAAA,MACA;AAAA,IACF;AAAA,EACF,CAAC;AAEH,SAAO;AACT;",
4
+ "sourcesContent": ["import { Command } from 'commander';\nimport { Project } from 'contensis-core-api';\nimport { cliCommand } from '~/services/ContensisCliService';\nimport { shell } from '~/shell';\nimport { isUuid } from '~/util';\n\nexport const makeCreateCommand = () => {\n const create = new Command()\n .command('create')\n .description('create command')\n .addHelpText('after', `\\n`)\n .showHelpAfterError(true)\n .exitOverride();\n\n create\n .command('project')\n .description('create a new project')\n .argument('<projectId>', 'the id of the project to create')\n .argument('<name>', 'the name of the project to create')\n .argument('[description]', 'optional description of the project')\n .option(\n '-l, --language',\n 'the default language of the project to create',\n 'en-GB'\n )\n .option(\n '-langs, --supported-languages <langs...>',\n 'space separated list of other supported languages'\n )\n .usage(\n 'projectId \"Project name\" [\"Description of project\"] --language en-GB --supported-languages es-ES de-DE nl-NL'\n )\n .addHelpText('after', `\\n`)\n .action(\n async (projectId: string, name: string, description = '', opts: any) => {\n const createProject: Project = {\n id: projectId,\n name,\n description,\n primaryLanguage: opts.language,\n supportedLanguages: opts.supportedLanguages || [],\n };\n\n const project = await cliCommand(\n ['create', 'project', projectId],\n opts\n ).CreateProject(createProject);\n if (project) await shell().restart();\n }\n );\n\n create\n .command('key')\n .description('create a new api key')\n .argument('<\"key name\">', 'the name of the key to create')\n .argument('[\"description\"]', 'provide a description for the key (optional)')\n .usage('<\"key name\"> [\"description\"] (both args in \"double quotes\")')\n .addHelpText(\n 'after',\n `\nExample call:\n > create key \"my new key\" \"Created key for demonstration\"\\n`\n )\n .action(async (name: string, description: string, opts: any) => {\n await cliCommand(['create', 'key', name], opts).CreateApiKey(\n name,\n description\n );\n });\n\n create\n .command('role')\n .description('create a new role')\n .argument('<\"Role name\">', 'the name of the role to create')\n .argument('[\"Role description\">', 'the description of the role')\n .option('--disabled', 'do not enable the created role', false)\n .addHelpText(\n 'after',\n `\nExample call:\n > create role \"My role\" \"This role is for testing\" --disabled \\n`\n )\n .action(async (roleName: string, description: string, opts) => {\n await cliCommand(['create', 'role', roleName], opts).CreateRole({\n name: roleName,\n description,\n enabled: !opts.disabled,\n assignments: { apiKeys: [], groups: [], users: [] },\n permissions: { contentTypes: [], entries: [] },\n });\n });\n\n return create;\n};\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAAwB;AAExB,iCAA2B;AAC3B,mBAAsB;AAGf,MAAM,oBAAoB,MAAM;AACrC,QAAM,SAAS,IAAI,yBAAQ,EACxB,QAAQ,QAAQ,EAChB,YAAY,gBAAgB,EAC5B,YAAY,SAAS;AAAA,CAAI,EACzB,mBAAmB,IAAI,EACvB,aAAa;AAEhB,SACG,QAAQ,SAAS,EACjB,YAAY,sBAAsB,EAClC,SAAS,eAAe,iCAAiC,EACzD,SAAS,UAAU,mCAAmC,EACtD,SAAS,iBAAiB,qCAAqC,EAC/D;AAAA,IACC;AAAA,IACA;AAAA,IACA;AAAA,EACF,EACC;AAAA,IACC;AAAA,IACA;AAAA,EACF,EACC;AAAA,IACC;AAAA,EACF,EACC,YAAY,SAAS;AAAA,CAAI,EACzB;AAAA,IACC,OAAO,WAAmB,MAAc,cAAc,IAAI,SAAc;AACtE,YAAM,gBAAyB;AAAA,QAC7B,IAAI;AAAA,QACJ;AAAA,QACA;AAAA,QACA,iBAAiB,KAAK;AAAA,QACtB,oBAAoB,KAAK,sBAAsB,CAAC;AAAA,MAClD;AAEA,YAAM,UAAU,UAAM;AAAA,QACpB,CAAC,UAAU,WAAW,SAAS;AAAA,QAC/B;AAAA,MACF,EAAE,cAAc,aAAa;AAC7B,UAAI;AAAS,kBAAM,oBAAM,EAAE,QAAQ;AAAA,IACrC;AAAA,EACF;AAEF,SACG,QAAQ,KAAK,EACb,YAAY,sBAAsB,EAClC,SAAS,gBAAgB,+BAA+B,EACxD,SAAS,mBAAmB,8CAA8C,EAC1E,MAAM,6DAA6D,EACnE;AAAA,IACC;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,EAGF,EACC,OAAO,OAAO,MAAc,aAAqB,SAAc;AAC9D,cAAM,uCAAW,CAAC,UAAU,OAAO,IAAI,GAAG,IAAI,EAAE;AAAA,MAC9C;AAAA,MACA;AAAA,IACF;AAAA,EACF,CAAC;AAEH,SACG,QAAQ,MAAM,EACd,YAAY,mBAAmB,EAC/B,SAAS,iBAAiB,gCAAgC,EAC1D,SAAS,wBAAwB,6BAA6B,EAC9D,OAAO,cAAc,kCAAkC,KAAK,EAC5D;AAAA,IACC;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,EAGF,EACC,OAAO,OAAO,UAAkB,aAAqB,SAAS;AAC7D,cAAM,uCAAW,CAAC,UAAU,QAAQ,QAAQ,GAAG,IAAI,EAAE,WAAW;AAAA,MAC9D,MAAM;AAAA,MACN;AAAA,MACA,SAAS,CAAC,KAAK;AAAA,MACf,aAAa,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,GAAG,OAAO,CAAC,EAAE;AAAA,MAClD,aAAa,EAAE,cAAc,CAAC,GAAG,SAAS,CAAC,EAAE;AAAA,IAC/C,CAAC;AAAA,EACH,CAAC;AAEH,SAAO;AACT;",
6
6
  "names": []
7
7
  }
@@ -47,6 +47,17 @@ Example call:
47
47
  ).action(async (id, opts) => {
48
48
  await (0, import_ContensisCliService.cliCommand)(["remove", "key", id], opts).RemoveApiKey(id);
49
49
  });
50
+ remove.command("role").description("remove a role").argument('<"Role name" or id>', "the existing role name or id to delete").addHelpText(
51
+ "after",
52
+ `
53
+ Example call:
54
+ > remove role "My role"
55
+ `
56
+ ).action(async (roleNameOrId, opts) => {
57
+ await (0, import_ContensisCliService.cliCommand)(["remove", "role", roleNameOrId], opts).RemoveRole(
58
+ roleNameOrId
59
+ );
60
+ });
50
61
  remove.command("components").description("delete components").argument("<id...>", "the id(s) of the components to delete").addOption(import_globalOptions.commit).usage("<id> [--commit]").addHelpText(
51
62
  "after",
52
63
  `
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/commands/remove.ts"],
4
- "sourcesContent": ["import { Command } from 'commander';\nimport { cliCommand } from '~/services/ContensisCliService';\nimport { shell } from '~/shell';\nimport { Logger } from '~/util/logger';\nimport { commit, mapContensisOpts, zenql } from './globalOptions';\n\nexport const makeRemoveCommand = () => {\n const remove = new Command()\n .command('remove')\n .description('remove command')\n .addHelpText('after', `\\n`)\n .showHelpAfterError(true)\n .exitOverride();\n\n remove\n .command('project')\n .description('remove an entire project')\n .argument('<projectId>', 'the project id to delete')\n .usage('<projectId>')\n .addHelpText('after', `\\n`)\n .action(async (projectId, opts) => {\n const project = await cliCommand(\n ['remove', 'project', projectId],\n opts\n ).SetProject(projectId);\n if (project) await shell().restart();\n });\n\n remove\n .command('key')\n .description('remove api key')\n .argument('<id>', 'the id of the API key to delete')\n .usage('<id>')\n .addHelpText(\n 'after',\n `\nExample call:\n > remove key 4ceb9575-28d3-4d5b-a77b-5e5221e603dd\n`\n )\n .action(async (id, opts) => {\n await cliCommand(['remove', 'key', id], opts).RemoveApiKey(id);\n });\n\n remove\n .command('components')\n .description('delete components')\n .argument('<id...>', 'the id(s) of the components to delete')\n .addOption(commit)\n .usage('<id> [--commit]')\n .addHelpText(\n 'after',\n `\nExample call:\n > remove components addressComponent\n`\n )\n .action(async (id: string[], opts) => {\n await cliCommand(\n ['remove', 'components', id.join(' ')],\n opts\n ).RemoveComponents(id, opts.commit);\n });\n\n remove\n .command('contenttypes')\n .description('delete content types')\n .argument('<id...>', 'the id(s) of the content types to delete')\n .addOption(commit)\n .usage('<id> [--commit]')\n .addHelpText(\n 'after',\n `\nExample call:\n > remove contenttypes blogPost\n`\n )\n .action(async (id: string[], opts) => {\n await cliCommand(\n ['remove', 'contenttypes', id.join(' ')],\n opts\n ).RemoveContentTypes(id, opts.commit);\n });\n\n const removeEntries = remove\n .command('entries')\n .description('delete entries')\n .argument(\n '[ids...]',\n 'the entry id(s) to delete ...or add *** if you wish to delete all entries in all content types'\n )\n .addOption(zenql)\n .addOption(commit)\n .addHelpText(\n 'after',\n `\nExample call:\n > remove entries a1c25591-8c9b-50e2-96d8-f6c774fcf023 8df914cc-1da1-59d6-86e0-8ea4ebd99aaa\n > remove entries --zenql \"sys.contentTypeId = test\"\n`\n )\n .action(async (entryIds: string[], opts) => {\n const removeAll = entryIds?.[0] === '***';\n\n // Remove all asterisks from args\n if (entryIds?.[0] && !entryIds[0].replace(/\\*/g, '')) entryIds.pop();\n\n const hasArgs = !!(entryIds?.length || opts.zenql || removeAll);\n if (!hasArgs) {\n Logger.help(\n `Not enough arguments supplied\\n\\n${removeEntries.helpInformation()}`\n );\n } else {\n await cliCommand(\n ['remove', 'entries', entryIds.join(' ')],\n opts,\n mapContensisOpts({ entryIds, ...opts })\n ).RemoveEntries(opts.commit);\n }\n });\n\n return remove;\n};\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAAwB;AACxB,iCAA2B;AAC3B,mBAAsB;AACtB,oBAAuB;AACvB,2BAAgD;AAEzC,MAAM,oBAAoB,MAAM;AACrC,QAAM,SAAS,IAAI,yBAAQ,EACxB,QAAQ,QAAQ,EAChB,YAAY,gBAAgB,EAC5B,YAAY,SAAS;AAAA,CAAI,EACzB,mBAAmB,IAAI,EACvB,aAAa;AAEhB,SACG,QAAQ,SAAS,EACjB,YAAY,0BAA0B,EACtC,SAAS,eAAe,0BAA0B,EAClD,MAAM,aAAa,EACnB,YAAY,SAAS;AAAA,CAAI,EACzB,OAAO,OAAO,WAAW,SAAS;AACjC,UAAM,UAAU,UAAM;AAAA,MACpB,CAAC,UAAU,WAAW,SAAS;AAAA,MAC/B;AAAA,IACF,EAAE,WAAW,SAAS;AACtB,QAAI;AAAS,gBAAM,oBAAM,EAAE,QAAQ;AAAA,EACrC,CAAC;AAEH,SACG,QAAQ,KAAK,EACb,YAAY,gBAAgB,EAC5B,SAAS,QAAQ,iCAAiC,EAClD,MAAM,MAAM,EACZ;AAAA,IACC;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,EAIF,EACC,OAAO,OAAO,IAAI,SAAS;AAC1B,cAAM,uCAAW,CAAC,UAAU,OAAO,EAAE,GAAG,IAAI,EAAE,aAAa,EAAE;AAAA,EAC/D,CAAC;AAEH,SACG,QAAQ,YAAY,EACpB,YAAY,mBAAmB,EAC/B,SAAS,WAAW,uCAAuC,EAC3D,UAAU,2BAAM,EAChB,MAAM,iBAAiB,EACvB;AAAA,IACC;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,EAIF,EACC,OAAO,OAAO,IAAc,SAAS;AACpC,cAAM;AAAA,MACJ,CAAC,UAAU,cAAc,GAAG,KAAK,GAAG,CAAC;AAAA,MACrC;AAAA,IACF,EAAE,iBAAiB,IAAI,KAAK,MAAM;AAAA,EACpC,CAAC;AAEH,SACG,QAAQ,cAAc,EACtB,YAAY,sBAAsB,EAClC,SAAS,WAAW,0CAA0C,EAC9D,UAAU,2BAAM,EAChB,MAAM,iBAAiB,EACvB;AAAA,IACC;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,EAIF,EACC,OAAO,OAAO,IAAc,SAAS;AACpC,cAAM;AAAA,MACJ,CAAC,UAAU,gBAAgB,GAAG,KAAK,GAAG,CAAC;AAAA,MACvC;AAAA,IACF,EAAE,mBAAmB,IAAI,KAAK,MAAM;AAAA,EACtC,CAAC;AAEH,QAAM,gBAAgB,OACnB,QAAQ,SAAS,EACjB,YAAY,gBAAgB,EAC5B;AAAA,IACC;AAAA,IACA;AAAA,EACF,EACC,UAAU,0BAAK,EACf,UAAU,2BAAM,EAChB;AAAA,IACC;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,EAKF,EACC,OAAO,OAAO,UAAoB,SAAS;AAC1C,UAAM,aAAY,qCAAW,QAAO;AAGpC,SAAI,qCAAW,OAAM,CAAC,SAAS,GAAG,QAAQ,OAAO,EAAE;AAAG,eAAS,IAAI;AAEnE,UAAM,UAAU,CAAC,GAAE,qCAAU,WAAU,KAAK,SAAS;AACrD,QAAI,CAAC,SAAS;AACZ,2BAAO;AAAA,QACL;AAAA;AAAA,EAAoC,cAAc,gBAAgB;AAAA,MACpE;AAAA,IACF,OAAO;AACL,gBAAM;AAAA,QACJ,CAAC,UAAU,WAAW,SAAS,KAAK,GAAG,CAAC;AAAA,QACxC;AAAA,YACA,uCAAiB,EAAE,UAAU,GAAG,KAAK,CAAC;AAAA,MACxC,EAAE,cAAc,KAAK,MAAM;AAAA,IAC7B;AAAA,EACF,CAAC;AAEH,SAAO;AACT;",
4
+ "sourcesContent": ["import { Command } from 'commander';\nimport { cliCommand } from '~/services/ContensisCliService';\nimport { shell } from '~/shell';\nimport { Logger } from '~/util/logger';\nimport { commit, mapContensisOpts, zenql } from './globalOptions';\n\nexport const makeRemoveCommand = () => {\n const remove = new Command()\n .command('remove')\n .description('remove command')\n .addHelpText('after', `\\n`)\n .showHelpAfterError(true)\n .exitOverride();\n\n remove\n .command('project')\n .description('remove an entire project')\n .argument('<projectId>', 'the project id to delete')\n .usage('<projectId>')\n .addHelpText('after', `\\n`)\n .action(async (projectId, opts) => {\n const project = await cliCommand(\n ['remove', 'project', projectId],\n opts\n ).SetProject(projectId);\n if (project) await shell().restart();\n });\n\n remove\n .command('key')\n .description('remove api key')\n .argument('<id>', 'the id of the API key to delete')\n .usage('<id>')\n .addHelpText(\n 'after',\n `\nExample call:\n > remove key 4ceb9575-28d3-4d5b-a77b-5e5221e603dd\n`\n )\n .action(async (id, opts) => {\n await cliCommand(['remove', 'key', id], opts).RemoveApiKey(id);\n });\n\n remove\n .command('role')\n .description('remove a role')\n .argument('<\"Role name\" or id>', 'the existing role name or id to delete')\n .addHelpText(\n 'after',\n `\nExample call:\n > remove role \"My role\"\\n`\n )\n .action(async (roleNameOrId: string, opts) => {\n await cliCommand(['remove', 'role', roleNameOrId], opts).RemoveRole(\n roleNameOrId\n );\n });\n\n remove\n .command('components')\n .description('delete components')\n .argument('<id...>', 'the id(s) of the components to delete')\n .addOption(commit)\n .usage('<id> [--commit]')\n .addHelpText(\n 'after',\n `\nExample call:\n > remove components addressComponent\n`\n )\n .action(async (id: string[], opts) => {\n await cliCommand(\n ['remove', 'components', id.join(' ')],\n opts\n ).RemoveComponents(id, opts.commit);\n });\n\n remove\n .command('contenttypes')\n .description('delete content types')\n .argument('<id...>', 'the id(s) of the content types to delete')\n .addOption(commit)\n .usage('<id> [--commit]')\n .addHelpText(\n 'after',\n `\nExample call:\n > remove contenttypes blogPost\n`\n )\n .action(async (id: string[], opts) => {\n await cliCommand(\n ['remove', 'contenttypes', id.join(' ')],\n opts\n ).RemoveContentTypes(id, opts.commit);\n });\n\n const removeEntries = remove\n .command('entries')\n .description('delete entries')\n .argument(\n '[ids...]',\n 'the entry id(s) to delete ...or add *** if you wish to delete all entries in all content types'\n )\n .addOption(zenql)\n .addOption(commit)\n .addHelpText(\n 'after',\n `\nExample call:\n > remove entries a1c25591-8c9b-50e2-96d8-f6c774fcf023 8df914cc-1da1-59d6-86e0-8ea4ebd99aaa\n > remove entries --zenql \"sys.contentTypeId = test\"\n`\n )\n .action(async (entryIds: string[], opts) => {\n const removeAll = entryIds?.[0] === '***';\n\n // Remove all asterisks from args\n if (entryIds?.[0] && !entryIds[0].replace(/\\*/g, '')) entryIds.pop();\n\n const hasArgs = !!(entryIds?.length || opts.zenql || removeAll);\n if (!hasArgs) {\n Logger.help(\n `Not enough arguments supplied\\n\\n${removeEntries.helpInformation()}`\n );\n } else {\n await cliCommand(\n ['remove', 'entries', entryIds.join(' ')],\n opts,\n mapContensisOpts({ entryIds, ...opts })\n ).RemoveEntries(opts.commit);\n }\n });\n\n return remove;\n};\n"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -79,7 +79,37 @@ Example call:
79
79
  name: newName
80
80
  });
81
81
  });
82
- role.command("assignments").description("update role assignments").argument('<"Role name" or id>', "the role name or id to update").option(
82
+ role.command("description").description("update role description").argument('<"Role name" or id>', "the existing role name or id to update").argument('<"New description">', "the new description for the role").usage('<"Role name"> <"New description">').addHelpText(
83
+ "after",
84
+ `
85
+ Example call:
86
+ > set role description "Existing role" "New role description"
87
+ `
88
+ ).action(async (roleNameOrId, description, opts) => {
89
+ await (0, import_ContensisCliService.cliCommand)(["set", "role", "description"], opts).UpdateRole(
90
+ roleNameOrId,
91
+ {
92
+ description
93
+ }
94
+ );
95
+ });
96
+ role.command("enabled").description("enable or disable a role").argument('<"Role name" or id>', "the existing role name or id to update").usage('<"Role name"> --disabled').option("--disabled", "disable the role", false).addHelpText(
97
+ "after",
98
+ `
99
+ Example call:
100
+ > set role enabled "Existing role"
101
+
102
+ > set role enabled "Other role" --disabled
103
+ `
104
+ ).action(async (roleNameOrId, opts) => {
105
+ await (0, import_ContensisCliService.cliCommand)(
106
+ ["set", "role", opts.disabled ? "disabled" : "enabled"],
107
+ opts
108
+ ).UpdateRole(roleNameOrId, {
109
+ enabled: !opts.disabled
110
+ });
111
+ });
112
+ role.command("assignments").description("assign users, groups or keys to a role").argument('<"Role name" or id>', "the role name or id to update").option(
83
113
  "-users --assign-users [assign-users...]",
84
114
  "the user id(s) to assign"
85
115
  ).option(
@@ -103,17 +133,15 @@ Example call:
103
133
  }
104
134
  );
105
135
  });
106
- role.command("permissions").description("update role permissions").argument('<"Role name" or id>', "the role name or id to update").option(
107
- "-contenttype --content-type-id [content-type-id...]",
108
- "the content type id to add permissions for"
136
+ role.command("permissions").description("add entry permissions to a role").argument('<"Role name" or id>', "the role name or id to update").option(
137
+ "-contenttypes, --content-type-ids [content-type-id...]",
138
+ "any content type ids to add permissions for"
109
139
  ).option(
110
- "-actions --entry-actions [entry-actions...]",
111
- "the entry actions to add to the role permissions",
112
- "*"
140
+ "--entry-actions [entry-actions...]",
141
+ "the entry actions to add to the role permissions"
113
142
  ).option(
114
- "-languages --entry-languages [entry-languages...]",
115
- "the entry languages to add to the role permissions",
116
- "*"
143
+ "--entry-languages [entry-languages...]",
144
+ "the entry languages to add to the role permissions"
117
145
  ).addHelpText(
118
146
  "after",
119
147
  `
@@ -126,10 +154,10 @@ Example call:
126
154
  roleNameOrId,
127
155
  {
128
156
  permissions: {
129
- entries: (_a = opts.contentTypeId) == null ? void 0 : _a.map((id) => ({
157
+ entries: (_a = opts.contentTypeIds) == null ? void 0 : _a.map((id) => ({
130
158
  id,
131
- actions: opts.entryActions,
132
- languages: opts.entryLanguages
159
+ actions: opts.entryActions || [],
160
+ languages: opts.entryLanguages || []
133
161
  }))
134
162
  }
135
163
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/commands/set.ts"],
4
- "sourcesContent": ["import { Argument, Command } from 'commander';\nimport { cliCommand } from '~/services/ContensisCliService';\nimport { shell } from '~/shell';\n\nexport const makeSetCommand = () => {\n const set = new Command()\n .command('set')\n .description('set command')\n .addHelpText('after', `\\n`)\n .showHelpAfterError(true)\n .exitOverride();\n\n const project = set\n .command('project')\n .description('set current working project')\n .argument('<projectId>', 'the project id to work with')\n .usage('<projectId>')\n .addHelpText(\n 'after',\n `\nExample call:\n > set project website\\n`\n )\n .action(async projectId => {\n const nextProjectId = cliCommand([\n 'set',\n 'project',\n projectId,\n ]).SetProject(projectId);\n if (nextProjectId) await shell().restart();\n });\n\n project\n .command('name')\n .description('update project name')\n .argument('<\"Project name\">', 'update the current project name')\n .usage('<\"Project name\">')\n .addHelpText(\n 'after',\n `\nExample call:\n > set project name \"Project name\"\\n`\n )\n .action(async (name: string, opts) => {\n await cliCommand(['set', 'project', 'name'], opts).UpdateProject({\n name,\n });\n });\n\n project\n .command('description')\n .description('update project description')\n .argument(\n '<\"Project description\">',\n 'update the current project description'\n )\n .usage('<\"Project description\">')\n .addHelpText(\n 'after',\n `\nExample call:\n > set project description \"Description of project\"\\n`\n )\n .action(async (description: string, opts) => {\n await cliCommand(['set', 'project', 'description'], opts).UpdateProject({\n description,\n });\n });\n\n const role = set.command('role').description('update a role');\n role\n .command('name')\n .description('update role name')\n .argument('<\"Role name\">', 'update the existing role name')\n .argument('<\"New name\">', 'the new name for the role')\n .usage('<\"Role name\"> <\"New name\">')\n .addHelpText(\n 'after',\n `\nExample call:\n > set role name \"Existing name\" \"New role name\"\\n`\n )\n .action(async (roleNameOrId: string, newName: string, opts) => {\n await cliCommand(['set', 'role', 'name'], opts).UpdateRole(roleNameOrId, {\n name: newName,\n });\n });\n\n role\n .command('assignments')\n .description('update role assignments')\n .argument('<\"Role name\" or id>', 'the role name or id to update')\n .option(\n '-users --assign-users [assign-users...]',\n 'the user id(s) to assign'\n )\n .option(\n '-groups --assign-groups [assign-groups...]',\n 'the groups name(s) to assign'\n )\n .option('-keys --assign-keys [assign-keys...]', 'the key name(s) to assign')\n .addHelpText(\n 'after',\n `\nExample call:\n > set role assignments \"My role\" --assign-users admin \\n`\n )\n .action(async (roleNameOrId: string, opts) => {\n await cliCommand(['set', 'role', 'assignments'], opts).UpdateRole(\n roleNameOrId,\n {\n assignments: {\n apiKeys: opts.assignKeys || undefined,\n groups: opts.assignGroups || undefined,\n users: opts.assignUsers || undefined,\n },\n }\n );\n });\n\n role\n .command('permissions')\n .description('update role permissions')\n .argument('<\"Role name\" or id>', 'the role name or id to update')\n .option(\n '-contenttype --content-type-id [content-type-id...]',\n 'the content type id to add permissions for'\n )\n .option(\n '-actions --entry-actions [entry-actions...]',\n 'the entry actions to add to the role permissions',\n '*'\n )\n .option(\n '-languages --entry-languages [entry-languages...]',\n 'the entry languages to add to the role permissions',\n '*'\n )\n .addHelpText(\n 'after',\n `\nExample call:\n > set role permissions \"My role\" --content-type-id blogs -- \\n`\n )\n .action(async (roleNameOrId: string, opts) => {\n await cliCommand(['set', 'role', 'permissions'], opts).UpdateRole(\n roleNameOrId,\n {\n permissions: {\n entries: opts.contentTypeId?.map((id: string) => ({\n id,\n actions: opts.entryActions,\n languages: opts.entryLanguages,\n })),\n },\n }\n );\n });\n\n set\n .command('version')\n .description('set content version')\n .addArgument(\n new Argument('<versionStatus>', 'content version status')\n .choices(['latest', 'published'])\n .default('latest')\n )\n .usage('<latest/published>')\n .addHelpText('after', `\\n`)\n .action(async versionStatus => {\n const success = cliCommand(['set', 'version', versionStatus]).SetVersion(\n versionStatus\n );\n if (success) await shell().restart();\n });\n\n return set;\n};\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["import { Argument, Command } from 'commander';\nimport { cliCommand } from '~/services/ContensisCliService';\nimport { shell } from '~/shell';\n\nexport const makeSetCommand = () => {\n const set = new Command()\n .command('set')\n .description('set command')\n .addHelpText('after', `\\n`)\n .showHelpAfterError(true)\n .exitOverride();\n\n const project = set\n .command('project')\n .description('set current working project')\n .argument('<projectId>', 'the project id to work with')\n .usage('<projectId>')\n .addHelpText(\n 'after',\n `\nExample call:\n > set project website\\n`\n )\n .action(async projectId => {\n const nextProjectId = cliCommand([\n 'set',\n 'project',\n projectId,\n ]).SetProject(projectId);\n if (nextProjectId) await shell().restart();\n });\n\n project\n .command('name')\n .description('update project name')\n .argument('<\"Project name\">', 'update the current project name')\n .usage('<\"Project name\">')\n .addHelpText(\n 'after',\n `\nExample call:\n > set project name \"Project name\"\\n`\n )\n .action(async (name: string, opts) => {\n await cliCommand(['set', 'project', 'name'], opts).UpdateProject({\n name,\n });\n });\n\n project\n .command('description')\n .description('update project description')\n .argument(\n '<\"Project description\">',\n 'update the current project description'\n )\n .usage('<\"Project description\">')\n .addHelpText(\n 'after',\n `\nExample call:\n > set project description \"Description of project\"\\n`\n )\n .action(async (description: string, opts) => {\n await cliCommand(['set', 'project', 'description'], opts).UpdateProject({\n description,\n });\n });\n\n const role = set.command('role').description('update a role');\n\n role\n .command('name')\n .description('update role name')\n .argument('<\"Role name\">', 'update the existing role name')\n .argument('<\"New name\">', 'the new name for the role')\n .usage('<\"Role name\"> <\"New name\">')\n .addHelpText(\n 'after',\n `\nExample call:\n > set role name \"Existing name\" \"New role name\"\\n`\n )\n .action(async (roleNameOrId: string, newName: string, opts) => {\n await cliCommand(['set', 'role', 'name'], opts).UpdateRole(roleNameOrId, {\n name: newName,\n });\n });\n\n role\n .command('description')\n .description('update role description')\n .argument('<\"Role name\" or id>', 'the existing role name or id to update')\n .argument('<\"New description\">', 'the new description for the role')\n .usage('<\"Role name\"> <\"New description\">')\n .addHelpText(\n 'after',\n `\nExample call:\n > set role description \"Existing role\" \"New role description\"\\n`\n )\n .action(async (roleNameOrId: string, description: string, opts) => {\n await cliCommand(['set', 'role', 'description'], opts).UpdateRole(\n roleNameOrId,\n {\n description,\n }\n );\n });\n\n role\n .command('enabled')\n .description('enable or disable a role')\n .argument('<\"Role name\" or id>', 'the existing role name or id to update')\n .usage('<\"Role name\"> --disabled')\n .option('--disabled', 'disable the role', false)\n .addHelpText(\n 'after',\n `\nExample call:\n > set role enabled \"Existing role\"\\n\n > set role enabled \"Other role\" --disabled\\n`\n )\n .action(async (roleNameOrId: string, opts) => {\n await cliCommand(\n ['set', 'role', opts.disabled ? 'disabled' : 'enabled'],\n opts\n ).UpdateRole(roleNameOrId, {\n enabled: !opts.disabled,\n });\n });\n\n role\n .command('assignments')\n .description('assign users, groups or keys to a role')\n .argument('<\"Role name\" or id>', 'the role name or id to update')\n .option(\n '-users --assign-users [assign-users...]',\n 'the user id(s) to assign'\n )\n .option(\n '-groups --assign-groups [assign-groups...]',\n 'the groups name(s) to assign'\n )\n .option('-keys --assign-keys [assign-keys...]', 'the key name(s) to assign')\n .addHelpText(\n 'after',\n `\nExample call:\n > set role assignments \"My role\" --assign-users admin \\n`\n )\n .action(async (roleNameOrId: string, opts) => {\n await cliCommand(['set', 'role', 'assignments'], opts).UpdateRole(\n roleNameOrId,\n {\n assignments: {\n apiKeys: opts.assignKeys || undefined,\n groups: opts.assignGroups || undefined,\n users: opts.assignUsers || undefined,\n },\n }\n );\n });\n\n role\n .command('permissions')\n .description('add entry permissions to a role')\n .argument('<\"Role name\" or id>', 'the role name or id to update')\n .option(\n '-contenttypes, --content-type-ids [content-type-id...]',\n 'any content type ids to add permissions for'\n )\n .option(\n '--entry-actions [entry-actions...]',\n 'the entry actions to add to the role permissions'\n )\n .option(\n '--entry-languages [entry-languages...]',\n 'the entry languages to add to the role permissions'\n )\n .addHelpText(\n 'after',\n `\nExample call:\n > set role permissions \"My role\" --content-type-id blogs -- \\n`\n )\n .action(async (roleNameOrId: string, opts) => {\n await cliCommand(['set', 'role', 'permissions'], opts).UpdateRole(\n roleNameOrId,\n {\n permissions: {\n entries: opts.contentTypeIds?.map((id: string) => ({\n id,\n actions: opts.entryActions || [],\n languages: opts.entryLanguages || [],\n })),\n },\n }\n );\n });\n\n set\n .command('version')\n .description('set content version')\n .addArgument(\n new Argument('<versionStatus>', 'content version status')\n .choices(['latest', 'published'])\n .default('latest')\n )\n .usage('<latest/published>')\n .addHelpText('after', `\\n`)\n .action(async versionStatus => {\n const success = cliCommand(['set', 'version', versionStatus]).SetVersion(\n versionStatus\n );\n if (success) await shell().restart();\n });\n\n return set;\n};\n"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -183,17 +183,25 @@ ${import_logger.Logger.errorText(">>")} Available commands:`,
183
183
  list: (env) => `[${env}] API keys:`,
184
184
  noList: (env) => `[${env}] Cannot retrieve API keys`,
185
185
  created: (env, name) => `[${env}] Created API key ${import_logger.Logger.highlightText(name)}`,
186
+ tip: () => `Assign your new key to a role with "set role assignments", or create a new role with "create role"`,
186
187
  failedCreate: (env, name) => `[${env}] Unable to create API key ${import_logger.Logger.highlightText(name)}`,
187
188
  removed: (env, id) => `[${env}] Deleted API key ${import_logger.Logger.highlightText(id)}`,
188
189
  failedRemove: (env, id) => `[${env}] Unable to delete API key ${import_logger.Logger.highlightText(id)}`
189
190
  },
190
191
  roles: {
191
- list: (env) => `[${env}] Retrieved roles:`,
192
+ list: (env) => `[${env}] Retrieved roles`,
192
193
  noList: (env) => `[${env}] Cannot retrieve roles`,
193
194
  failedGet: (env, name) => `[${env}] Unable to find role ${import_logger.Logger.highlightText(name)}`,
194
195
  created: (env, name) => `[${env}] Created role ${import_logger.Logger.highlightText(name)}`,
196
+ tip: () => `Give access to your role with "set role assignments", allow your role to do things with "set role permissions"`,
195
197
  failedCreate: (env, name) => `[${env}] Unable to create role ${import_logger.Logger.highlightText(name)}`,
196
- removed: (env, id) => `[${env}] Deleted role ${import_logger.Logger.highlightText(id)}`,
198
+ setPayload: () => `Updating role with details
199
+ `,
200
+ set: () => `Succesfully updated role
201
+ `,
202
+ failedSet: (env, name) => `[${env}] Unable to update role ${import_logger.Logger.highlightText(name)}`,
203
+ removed: (env, id) => `[${env}] Deleted role ${import_logger.Logger.highlightText(id)}
204
+ `,
197
205
  failedRemove: (env, id) => `[${env}] Unable to delete role ${import_logger.Logger.highlightText(id)}`
198
206
  },
199
207
  blocks: {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/localisation/en-GB.ts"],
4
- "sourcesContent": ["import {\n BlockRunningStatus,\n MigrateModelsResult,\n MigrateStatus,\n} from 'migratortron';\nimport { Logger } from '~/util/logger';\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 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 failedCreate: (env: string, name: string) =>\n `[${env}] Unable to create 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 roles: {\n list: (env: string) => `[${env}] Retrieved roles:`,\n noList: (env: string) => `[${env}] Cannot retrieve roles`,\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 failedCreate: (env: string, name: string) =>\n `[${env}] Unable to create role ${Logger.highlightText(name)}`,\n removed: (env: string, id: string) =>\n `[${env}] Deleted role ${Logger.highlightText(id)}`,\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: (id: string, env: string, projectId?: string) =>\n `[${env}] Block ${id} in project ${projectId}:`,\n list: (env: string, projectId?: string) =>\n `[${env}] Blocks in project ${projectId}:`,\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 released: (id: string, env: string, projectId?: string) =>\n `[${env}] Released block ${Logger.highlightText(\n id\n )} in project ${projectId}`,\n failedRelease: (id: string, env: string, projectId?: string) =>\n `[${env}] Unable to release 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 },\n webhooks: {\n list: (env: string) => `[${env}] Webhook subscriptions:`,\n noList: (env: string) => `[${env}] Cannot retrieve webhook subscriptions`,\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};\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["import {\n BlockRunningStatus,\n MigrateModelsResult,\n MigrateStatus,\n} from 'migratortron';\nimport { Logger } from '~/util/logger';\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 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 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 roles: {\n list: (env: string) => `[${env}] Retrieved roles`,\n noList: (env: string) => `[${env}] Cannot retrieve roles`,\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 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: (id: string, env: string, projectId?: string) =>\n `[${env}] Block ${id} in project ${projectId}:`,\n list: (env: string, projectId?: string) =>\n `[${env}] Blocks in project ${projectId}:`,\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 released: (id: string, env: string, projectId?: string) =>\n `[${env}] Released block ${Logger.highlightText(\n id\n )} in project ${projectId}`,\n failedRelease: (id: string, env: string, projectId?: string) =>\n `[${env}] Unable to release 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 },\n webhooks: {\n list: (env: string) => `[${env}] Webhook subscriptions:`,\n noList: (env: string) => `[${env}] Cannot retrieve webhook subscriptions`,\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};\n"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -574,12 +574,17 @@ class ContensisCli {
574
574
  if (key) {
575
575
  log.success(messages.keys.created(currentEnv, name));
576
576
  console.log(
577
- ` - ${key.name}${key.description ? ` (${key.description})` : ""} [${key.dateModified.toString().substring(0, 10)} ${key.modifiedBy}]`
577
+ ` - ${import_chalk.default.bold(key.name)} [${key.dateModified.toString().substring(0, 10)} ${key.modifiedBy}]`
578
578
  );
579
- console.log(` - id: ${key.id}`);
580
- console.log(` - sharedSecret: ${key.sharedSecret}`);
579
+ if (key.description)
580
+ console.log(` ${log.infoText(key.description)}`);
581
+ console.log(` ${import_chalk.default.bold.grey`id`}: ${key.id}`);
582
+ console.log(
583
+ ` ${import_chalk.default.bold.grey`sharedSecret`}: ${key.sharedSecret}`
584
+ );
585
+ console.log("");
586
+ log.help(messages.keys.tip());
581
587
  }
582
- console.log("");
583
588
  if (err) {
584
589
  log.error(messages.keys.failedCreate(currentEnv, name), err);
585
590
  }
@@ -616,9 +621,11 @@ class ContensisCli {
616
621
  permissions
617
622
  } of roles) {
618
623
  const color = enabled ? (s) => s : log.infoText;
619
- console.log(color(` - ${name} ${log.infoText(id)}`));
624
+ console.log(color(` - ${import_chalk.default.bold(name)} ${log.infoText(id)}`));
620
625
  if (description)
621
626
  console.log(log.infoText(` ${description}`));
627
+ if (enabled === false)
628
+ console.log(` ${import_chalk.default.bold.grey("enabled")}: false`);
622
629
  if ((_a = assignments.groups) == null ? void 0 : _a.length)
623
630
  console.log(
624
631
  ` ${import_chalk.default.bold.grey("groups")}: ${assignments.groups.join(
@@ -688,6 +695,27 @@ class ContensisCli {
688
695
  }
689
696
  }
690
697
  };
698
+ CreateRole = async (role) => {
699
+ const { currentEnv, log, messages } = this;
700
+ const contensis = await this.ConnectContensis();
701
+ if (contensis) {
702
+ const [err, created] = await contensis.roles.CreateRole(role);
703
+ if (created) {
704
+ log.success(
705
+ messages.roles.created(currentEnv, role.id || role.name || "")
706
+ );
707
+ this.HandleFormattingAndOutput(created, log.object);
708
+ log.help(messages.roles.tip());
709
+ return role.id;
710
+ }
711
+ if (err) {
712
+ log.error(
713
+ messages.roles.failedCreate(currentEnv, role.id || role.name || ""),
714
+ err
715
+ );
716
+ }
717
+ }
718
+ };
691
719
  UpdateRole = async (roleNameOrId, role) => {
692
720
  const { currentEnv, log, messages } = this;
693
721
  const contensis = await this.ConnectContensis();
@@ -699,11 +727,48 @@ class ContensisCli {
699
727
  (r) => r.id === roleNameOrId || r.name.toLowerCase() === roleNameOrId.toLowerCase()
700
728
  );
701
729
  if (existingRole) {
702
- const rolesService = contensis.roles.sourceRepo.roles;
703
- await rolesService.UpdateRole(existingRole.id, role);
730
+ log.info(messages.roles.setPayload());
731
+ log.object(role);
732
+ log.raw(``);
733
+ const [updateErr, updated] = await contensis.roles.UpdateRole(
734
+ existingRole.id,
735
+ role
736
+ );
737
+ if (updateErr)
738
+ log.error(messages.roles.failedSet(currentEnv, roleNameOrId));
739
+ else {
740
+ log.success(messages.roles.set());
741
+ this.HandleFormattingAndOutput(updated, log.object);
742
+ }
743
+ } else {
744
+ log.error(messages.roles.failedGet(currentEnv, roleNameOrId));
745
+ }
746
+ }
747
+ if (rolesErr) {
748
+ log.error(messages.roles.noList(currentEnv));
749
+ log.error((0, import_json.jsonFormatter)(rolesErr));
750
+ }
751
+ }
752
+ };
753
+ RemoveRole = async (roleNameOrId) => {
754
+ const { currentEnv, log, messages } = this;
755
+ const contensis = await this.ConnectContensis();
756
+ if (contensis) {
757
+ const [rolesErr, roles] = await (0, import_await_to_js.default)(contensis.roles.GetRoles());
758
+ if (Array.isArray(roles)) {
759
+ log.success(messages.roles.list(currentEnv));
760
+ const existingRole = roles.find(
761
+ (r) => r.id === roleNameOrId || r.name.toLowerCase() === roleNameOrId.toLowerCase()
762
+ );
763
+ if (existingRole) {
764
+ const [deleteErr] = await contensis.roles.RemoveRole(existingRole.id);
765
+ if (deleteErr)
766
+ log.error(messages.roles.failedRemove(currentEnv, roleNameOrId));
767
+ else
768
+ log.success(messages.roles.removed(currentEnv, roleNameOrId));
704
769
  } else {
770
+ log.error(messages.roles.failedGet(currentEnv, roleNameOrId));
705
771
  }
706
- this.HandleFormattingAndOutput(role, log.object);
707
772
  }
708
773
  if (rolesErr) {
709
774
  log.error(messages.roles.noList(currentEnv));