contensis-cli 1.3.1-beta.1 → 1.3.1-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.
- package/dist/commands/copy.js +1 -1
- package/dist/commands/copy.js.map +2 -2
- package/dist/commands/globalOptions.js +10 -2
- package/dist/commands/globalOptions.js.map +2 -2
- package/dist/commands/import.js +1 -1
- package/dist/commands/import.js.map +2 -2
- package/dist/services/ContensisCliService.js +26 -22
- package/dist/services/ContensisCliService.js.map +2 -2
- package/dist/shell.js +16 -8
- package/dist/shell.js.map +2 -2
- package/dist/version.js +1 -1
- package/dist/version.js.map +1 -1
- package/package.json +1 -1
- package/src/commands/copy.ts +2 -0
- package/src/commands/globalOptions.ts +7 -1
- package/src/commands/import.ts +2 -0
- package/src/services/ContensisCliService.ts +107 -84
- package/src/shell.ts +16 -8
- package/src/version.ts +1 -1
package/dist/shell.js
CHANGED
|
@@ -46,17 +46,18 @@ var import_version = require("./version");
|
|
|
46
46
|
class ContensisShell {
|
|
47
47
|
currentEnvironment;
|
|
48
48
|
emptyInputCounter = 0;
|
|
49
|
+
cache;
|
|
49
50
|
env;
|
|
50
51
|
firstStart = true;
|
|
51
52
|
userId = "";
|
|
52
53
|
log = import_logger.Logger;
|
|
53
54
|
messages = import_en_GB.LogMessages;
|
|
54
55
|
refreshEnvironment = () => {
|
|
55
|
-
const {
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
this.env = environments[currentEnvironment];
|
|
56
|
+
const { cache } = new import_ContensisCliService.default([]);
|
|
57
|
+
this.cache = cache;
|
|
58
|
+
this.currentEnvironment = cache.currentEnvironment || "";
|
|
59
|
+
const environments = cache.environments || {};
|
|
60
|
+
this.env = environments[this.currentEnvironment];
|
|
60
61
|
(0, import_util.Logging)("en-GB").then(({ messages, Log }) => {
|
|
61
62
|
this.log = Log;
|
|
62
63
|
this.messages = messages;
|
|
@@ -146,11 +147,19 @@ class ContensisShell {
|
|
|
146
147
|
}
|
|
147
148
|
},
|
|
148
149
|
"connect",
|
|
150
|
+
...Object.keys(this.cache.environments || {}).map(
|
|
151
|
+
(alias) => `connect ${alias}`
|
|
152
|
+
),
|
|
149
153
|
"list envs",
|
|
150
154
|
"quit"
|
|
151
155
|
];
|
|
152
156
|
if (currentEnvironment)
|
|
153
|
-
availableCommands.push(
|
|
157
|
+
availableCommands.push(
|
|
158
|
+
"login",
|
|
159
|
+
"list projects",
|
|
160
|
+
"set project",
|
|
161
|
+
...(this.env.projects || []).map((project) => `set project ${project}`)
|
|
162
|
+
);
|
|
154
163
|
if (userId)
|
|
155
164
|
availableCommands.push(
|
|
156
165
|
"copy field",
|
|
@@ -254,9 +263,8 @@ class ContensisShell {
|
|
|
254
263
|
ex,
|
|
255
264
|
`Shell ${ex instanceof Error ? ex.toString() : JSON.stringify(ex, null, 2)}`
|
|
256
265
|
);
|
|
257
|
-
} finally {
|
|
258
|
-
return this.contensisPrompt();
|
|
259
266
|
}
|
|
267
|
+
return this.contensisPrompt();
|
|
260
268
|
}
|
|
261
269
|
}).catch((err) => {
|
|
262
270
|
log.error(err.message);
|
package/dist/shell.js.map
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/shell.ts"],
|
|
4
|
-
"sourcesContent": ["import figlet from 'figlet';\nimport inquirer from 'inquirer';\nimport inquirerPrompt from 'inquirer-command-prompt';\nimport { split } from 'split-cmd';\nimport commands from './commands';\nimport { LogMessages } from './localisation/en-GB';\nimport CredentialProvider from './providers/CredentialProvider';\nimport { appRootDir } from './providers/file-provider';\nimport ContensisCli, { cliCommand } from './services/ContensisCliService';\nimport { Logging } from './util';\nimport { logError, Logger } from './util/logger';\nimport { LIB_VERSION } from './version';\n\nclass ContensisShell {\n private currentEnvironment!: string;\n private emptyInputCounter: number = 0;\n private env!: EnvironmentCache;\n private firstStart = true;\n private userId: string = '';\n private log = Logger;\n private messages = LogMessages;\n\n private refreshEnvironment = () => {\n // Reload any persisted changes from the disk cache\n const {
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAAmB;AACnB,sBAAqB;AACrB,qCAA2B;AAC3B,uBAAsB;AACtB,sBAAqB;AACrB,mBAA4B;AAC5B,gCAA+B;AAC/B,2BAA2B;AAC3B,iCAAyC;AACzC,kBAAwB;AACxB,oBAAiC;AACjC,qBAA4B;AAE5B,MAAM,eAAe;AAAA,EACX;AAAA,EACA,oBAA4B;AAAA,EAC5B;AAAA,EACA,aAAa;AAAA,EACb,SAAiB;AAAA,EACjB,MAAM;AAAA,EACN,WAAW;AAAA,EAEX,qBAAqB,MAAM;AAEjC,UAAM
|
|
4
|
+
"sourcesContent": ["import figlet from 'figlet';\nimport inquirer from 'inquirer';\nimport inquirerPrompt from 'inquirer-command-prompt';\nimport { split } from 'split-cmd';\nimport commands from './commands';\nimport { LogMessages } from './localisation/en-GB';\nimport CredentialProvider from './providers/CredentialProvider';\nimport { appRootDir } from './providers/file-provider';\nimport ContensisCli, { cliCommand } from './services/ContensisCliService';\nimport { Logging } from './util';\nimport { logError, Logger } from './util/logger';\nimport { LIB_VERSION } from './version';\n\nclass ContensisShell {\n private currentEnvironment!: string;\n private emptyInputCounter: number = 0;\n private cache!: SessionCache;\n private env!: EnvironmentCache;\n private firstStart = true;\n private userId: string = '';\n private log = Logger;\n private messages = LogMessages;\n\n private refreshEnvironment = () => {\n // Reload any persisted changes from the disk cache\n const { cache } = new ContensisCli([]);\n this.cache = cache; // read the cache to pre-load suggestions\n // console.log(`refreshing env w/${currentEnvironment}`);\n this.currentEnvironment = cache.currentEnvironment || '';\n const environments = cache.environments || {};\n this.env = environments[this.currentEnvironment];\n\n // Reload logging here to support changing language\n Logging('en-GB').then(({ messages, Log }) => {\n this.log = Log;\n this.messages = messages;\n });\n };\n\n constructor() {\n this.refreshEnvironment();\n inquirerPrompt.setConfig({\n history: {\n save: true,\n folder: appRootDir,\n limit: 100,\n blacklist: ['quit'],\n },\n });\n\n const { log, messages } = this;\n\n figlet.text(\n messages.app.contensis(),\n {\n font: 'Block',\n horizontalLayout: 'default',\n verticalLayout: 'default',\n width: process.stdout.columns,\n whitespaceBreak: true,\n },\n (err, data) => {\n if (err) {\n log.error(messages.app.unknownError());\n console.dir(err);\n return;\n }\n console.log(log.successText(data));\n console.log(log.infoText(messages.app.startup(LIB_VERSION)));\n console.log(log.helpText(messages.app.help()));\n\n this.start().catch(ex => log.error(ex));\n }\n );\n }\n\n restart = async () => {\n this.firstStart = false;\n this.log.line(); // add a line so we can see where the shell has been restarted\n await this.start();\n };\n\n start = async () => {\n this.refreshEnvironment();\n this.userId = '';\n const { currentEnvironment, env, log, messages } = this;\n\n if (env?.lastUserId) {\n const [credsErr, credentials] = await new CredentialProvider(\n {\n userId: env.lastUserId,\n alias: currentEnvironment,\n },\n env.passwordFallback\n ).Init();\n if (credsErr && !credentials.current) {\n log.error(credsErr.message);\n }\n if (credentials.current) {\n if (this.firstStart) {\n const token = await cliCommand(['login', env.lastUserId]).Login(\n env.lastUserId,\n {\n promptPassword: false,\n silent: true,\n }\n );\n if (token) {\n this.userId = env.lastUserId;\n if (!env.currentProject) log.warning(messages.projects.tip());\n }\n this.firstStart = false;\n this.refreshEnvironment();\n } else {\n this.userId = env.lastUserId;\n }\n }\n }\n await this.contensisPrompt();\n };\n\n contensisPrompt = async (): Promise<any> => {\n const { currentEnvironment, env, log, messages, userId } = this;\n\n const availableCommands = [\n {\n filter: (str: string) => {\n return str.replace(/ \\[.*$/, '');\n },\n },\n 'connect',\n ...Object.keys(this.cache.environments || {}).map(\n alias => `connect ${alias}`\n ),\n 'list envs',\n 'quit',\n ];\n\n if (currentEnvironment)\n availableCommands.push(\n 'login',\n 'list projects',\n 'set project',\n ...(this.env.projects || []).map(project => `set project ${project}`)\n );\n if (userId)\n availableCommands.push(\n 'copy field',\n 'create key',\n 'create project',\n 'create role',\n 'diff models',\n 'execute block action release',\n 'execute block action makelive',\n 'execute block action rollback',\n 'execute block action markasbroken',\n 'get assets',\n 'get block',\n 'get block logs',\n 'get contenttype',\n 'get component',\n 'get entries',\n 'get nodes',\n 'get model',\n 'get project',\n 'get proxy',\n 'get renderer',\n 'get role',\n 'get token',\n 'get version',\n 'get webhook',\n 'get workflow',\n 'import contenttypes',\n 'import components',\n 'import entries',\n 'import models',\n 'import nodes',\n 'list blocks',\n 'list contenttypes',\n 'list components',\n 'list keys',\n 'list models',\n 'list proxies',\n 'list renderers',\n 'list roles',\n 'list webhooks',\n 'list workflows',\n 'push block',\n 'remove components',\n 'remove contenttypes',\n 'remove key',\n 'remove entries',\n 'remove nodes',\n 'remove role',\n 'set project name',\n 'set project description',\n 'set role name',\n 'set role description',\n 'set role assignments',\n 'set role enabled',\n 'set role permissions'\n );\n\n const prompt = inquirer.createPromptModule();\n prompt.registerPrompt('command', inquirerPrompt);\n return prompt([\n {\n type: 'command',\n name: 'cmd',\n autoCompletion: availableCommands.sort(),\n autocompletePrompt: log.infoText(messages.app.autocomplete()),\n message: `${userId ? `${userId}@` : ''}${currentEnvironment || ''}>`,\n context: 0,\n validate: (val: string) => {\n if (!val) this.emptyInputCounter++;\n if (this.emptyInputCounter > 1)\n console.log(this.log.infoText(this.messages.app.suggestions()));\n if (val) {\n this.emptyInputCounter = 0;\n return true;\n }\n },\n prefix: `${env?.currentProject || log.infoText('contensis')}`,\n short: true,\n },\n ])\n .then(async (answers: { cmd: string }) => {\n if (answers.cmd === 'quit') {\n this.quit();\n } else {\n try {\n if (answers.cmd) {\n const program = commands();\n await program.parseAsync(\n split(answers.cmd).map(e => e.replace(/\\\\\"/g, '\"')),\n // answers.cmd\n // .match(/\"[^\"]+\"|[^\\s]+/g)\n // ?.map(e => e.replace(/\"(.+)\"/, '$1')),\n {\n from: 'user',\n }\n );\n }\n } catch (ex: any) {\n const str = ex.toString();\n if (!str.includes('CommanderError'))\n logError(\n ex,\n `Shell ${\n ex instanceof Error\n ? ex.toString()\n : JSON.stringify(ex, null, 2)\n }`\n );\n }\n return this.contensisPrompt();\n }\n })\n .catch((err: Error) => {\n log.error(err.message);\n this.quit();\n });\n };\n\n quit = (error?: Error) => {\n const { log, messages } = this;\n process.removeAllListeners('exit');\n\n if (error) {\n log.error(error.message);\n process.exit(1);\n } else {\n log.success(messages.app.quit());\n process.exitCode = 0;\n process.exit(0);\n }\n };\n}\n\nlet globalShell: ContensisShell;\n\nexport const shell = () => {\n // Return a benign function for shell().restart() when used in cli context\n // as some commands need to restart the shell to show an updated prompt\n // after successful connect / login / set project\n if (typeof process.argv?.[2] !== 'undefined')\n return {\n quit: ContensisCli.quit,\n restart() {},\n } as any;\n if (!globalShell) globalShell = new ContensisShell();\n return globalShell;\n};\n\nprocess.on('uncaughtException', function (err) {\n // Handle the error safely\n console.log(err);\n});\n\nprocess.on('SIGINT', () => {\n Logger.warning('received SIGINT');\n shell().quit();\n // setTimeout(() => {\n // }, 2000);\n});\n\nprocess.on('SIGTERM', () => {\n Logger.warning('received SIGTERM');\n shell().quit();\n});\n\nprocess.stdin.on('data', key => {\n if ((key as any) == '\\u0003') {\n console.log('');\n Logger.info(`[CTRL]+[C] detected, exiting shell...`);\n shell().quit();\n }\n});\n\n// process.env.http_proxy = 'http://127.0.0.1:8888';\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": ["ContensisCli", "inquirerPrompt", "figlet", "CredentialProvider", "inquirer", "commands"]
|
|
7
7
|
}
|
package/dist/version.js
CHANGED
|
@@ -21,7 +21,7 @@ __export(version_exports, {
|
|
|
21
21
|
LIB_VERSION: () => LIB_VERSION
|
|
22
22
|
});
|
|
23
23
|
module.exports = __toCommonJS(version_exports);
|
|
24
|
-
const LIB_VERSION = "1.3.1-beta.
|
|
24
|
+
const LIB_VERSION = "1.3.1-beta.3";
|
|
25
25
|
// Annotate the CommonJS export names for ESM import in node:
|
|
26
26
|
0 && (module.exports = {
|
|
27
27
|
LIB_VERSION
|
package/dist/version.js.map
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/version.ts"],
|
|
4
|
-
"sourcesContent": ["export const LIB_VERSION = \"1.3.1-beta.
|
|
4
|
+
"sourcesContent": ["export const LIB_VERSION = \"1.3.1-beta.3\";\n"],
|
|
5
5
|
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAO,MAAM,cAAc;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "contensis-cli",
|
|
3
|
-
"version": "1.3.1-beta.
|
|
3
|
+
"version": "1.3.1-beta.3",
|
|
4
4
|
"description": "A fully featured Contensis command line interface with a shell UI provides simple and intuitive ways to manage or profile your content in any NodeJS terminal.",
|
|
5
5
|
"repository": "https://github.com/contensis/cli",
|
|
6
6
|
"homepage": "https://github.com/contensis/cli/tree/main/packages/contensis-cli#readme",
|
package/src/commands/copy.ts
CHANGED
|
@@ -9,6 +9,7 @@ import {
|
|
|
9
9
|
latest,
|
|
10
10
|
mapContensisOpts,
|
|
11
11
|
noCache,
|
|
12
|
+
noPublish,
|
|
12
13
|
outputDetail,
|
|
13
14
|
saveEntries,
|
|
14
15
|
versionStatus,
|
|
@@ -45,6 +46,7 @@ export const makeCopyCommand = () => {
|
|
|
45
46
|
.addOption(ignoreErrors)
|
|
46
47
|
.addOption(outputDetail)
|
|
47
48
|
.addOption(noCache)
|
|
49
|
+
.addOption(noPublish)
|
|
48
50
|
.option(
|
|
49
51
|
'--search <phrase>',
|
|
50
52
|
'get entries with the search phrase, use quotes for multiple words'
|
|
@@ -49,6 +49,7 @@ export const mapContensisOpts = (opts: any = {}): MigrateRequest => ({
|
|
|
49
49
|
noCache: !opts.cache, // arg is inverted automatically from `--no-cache` to `cache: false`
|
|
50
50
|
includeDefaults: opts.defaults, // arg is inverted automatically from `--no-defaults` to `defaults: false`
|
|
51
51
|
concurrency: opts.concurrency ? Number(opts.concurrency) : undefined,
|
|
52
|
+
noPublish: !opts.publish, // arg is inverted automatically from `--no-publish` to `publish: false`
|
|
52
53
|
});
|
|
53
54
|
|
|
54
55
|
/* Output options */
|
|
@@ -177,7 +178,12 @@ export const concurrency = new Option(
|
|
|
177
178
|
|
|
178
179
|
export const noCache = new Option(
|
|
179
180
|
'--no-cache',
|
|
180
|
-
'
|
|
181
|
+
'ignore internal cache and rebuild all resources from scratch'
|
|
182
|
+
);
|
|
183
|
+
|
|
184
|
+
export const noPublish = new Option(
|
|
185
|
+
'--no-publish',
|
|
186
|
+
'don\'t publish created or updated entries'
|
|
181
187
|
);
|
|
182
188
|
|
|
183
189
|
export const addConnectOptions = (program: Command) =>
|
package/src/commands/import.ts
CHANGED
|
@@ -10,6 +10,7 @@ import {
|
|
|
10
10
|
latest,
|
|
11
11
|
mapContensisOpts,
|
|
12
12
|
noCache,
|
|
13
|
+
noPublish,
|
|
13
14
|
outputDetail,
|
|
14
15
|
saveEntries,
|
|
15
16
|
versionStatus,
|
|
@@ -139,6 +140,7 @@ Example call:
|
|
|
139
140
|
.addOption(outputDetail)
|
|
140
141
|
.addOption(ignoreErrors)
|
|
141
142
|
.addOption(noCache)
|
|
143
|
+
.addOption(noPublish)
|
|
142
144
|
.addOption(saveEntries)
|
|
143
145
|
.addHelpText(
|
|
144
146
|
'after',
|
|
@@ -107,7 +107,7 @@ class ContensisCli {
|
|
|
107
107
|
const environments = this.cache.environments || {};
|
|
108
108
|
|
|
109
109
|
if (!currentEnvironment) return {} as EnvironmentCache;
|
|
110
|
-
else if (
|
|
110
|
+
else if (environments[currentEnvironment])
|
|
111
111
|
return environments[currentEnvironment];
|
|
112
112
|
else {
|
|
113
113
|
return {
|
|
@@ -126,14 +126,14 @@ class ContensisCli {
|
|
|
126
126
|
) {
|
|
127
127
|
// console.log('args: ', JSON.stringify(args, null, 2));
|
|
128
128
|
|
|
129
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
130
129
|
const [exe, script, verb = '', noun = '', ...restArgs] = args;
|
|
131
130
|
this.verb = verb?.toLowerCase();
|
|
132
131
|
this.noun = noun?.toLowerCase();
|
|
133
132
|
this.thirdArg = restArgs?.[0];
|
|
134
133
|
|
|
135
|
-
const commandText = `${this.verb} ${this.noun} ${
|
|
136
|
-
|
|
134
|
+
const commandText = `${this.verb} ${this.noun} ${
|
|
135
|
+
restArgs ? restArgs.join(' ') : ''
|
|
136
|
+
}`.trim();
|
|
137
137
|
|
|
138
138
|
this.session = new SessionCacheProvider();
|
|
139
139
|
|
|
@@ -295,12 +295,12 @@ class ContensisCli {
|
|
|
295
295
|
commit?: boolean;
|
|
296
296
|
fromFile?: string;
|
|
297
297
|
importDataType?:
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
298
|
+
| 'entries'
|
|
299
|
+
| 'contentTypes'
|
|
300
|
+
| 'components'
|
|
301
|
+
| 'models'
|
|
302
|
+
| 'nodes'
|
|
303
|
+
| 'user-input';
|
|
304
304
|
}) => {
|
|
305
305
|
const source: 'contensis' | 'file' = fromFile ? 'file' : 'contensis';
|
|
306
306
|
|
|
@@ -645,9 +645,10 @@ class ContensisCli {
|
|
|
645
645
|
color = chalk.white;
|
|
646
646
|
}
|
|
647
647
|
console.log(
|
|
648
|
-
`${
|
|
649
|
-
|
|
650
|
-
|
|
648
|
+
`${
|
|
649
|
+
nextCurrentProject === project.id
|
|
650
|
+
? `>> ${log.boldText(color(project.id))}`
|
|
651
|
+
: ` ${color(project.id)}`
|
|
651
652
|
} ${log.infoText(
|
|
652
653
|
`[${project.supportedLanguages
|
|
653
654
|
.map(l =>
|
|
@@ -762,7 +763,8 @@ class ContensisCli {
|
|
|
762
763
|
modifiedBy,
|
|
763
764
|
} of apiKeys) {
|
|
764
765
|
console.log(
|
|
765
|
-
` - ${name}${
|
|
766
|
+
` - ${name}${
|
|
767
|
+
description ? ` (${description})` : ''
|
|
766
768
|
} [${dateModified.toString().substring(0, 10)} ${modifiedBy}]`
|
|
767
769
|
);
|
|
768
770
|
console.log(` ${id}`);
|
|
@@ -1191,8 +1193,8 @@ class ContensisCli {
|
|
|
1191
1193
|
// Models to output to console
|
|
1192
1194
|
const returnModels = modelIds?.length
|
|
1193
1195
|
? models?.filter((m: Model) =>
|
|
1194
|
-
|
|
1195
|
-
|
|
1196
|
+
modelIds.some(id => id.toLowerCase() === m.id.toLowerCase())
|
|
1197
|
+
)
|
|
1196
1198
|
: undefined;
|
|
1197
1199
|
const exportResources: (ContentType | Component)[] = [];
|
|
1198
1200
|
|
|
@@ -1278,17 +1280,22 @@ class ContensisCli {
|
|
|
1278
1280
|
const hasAny =
|
|
1279
1281
|
components + contentTypes + dependencies + dependencyOf;
|
|
1280
1282
|
log.raw(
|
|
1281
|
-
` - ${log.highlightText(log.boldText(model.id))} ${
|
|
1282
|
-
|
|
1283
|
-
|
|
1284
|
-
|
|
1285
|
-
|
|
1286
|
-
|
|
1287
|
-
|
|
1288
|
-
|
|
1289
|
-
|
|
1290
|
-
|
|
1291
|
-
|
|
1283
|
+
` - ${log.highlightText(log.boldText(model.id))} ${
|
|
1284
|
+
hasAny
|
|
1285
|
+
? log.infoText(
|
|
1286
|
+
`{ ${
|
|
1287
|
+
components ? `components: ${components}, ` : ''
|
|
1288
|
+
}${
|
|
1289
|
+
contentTypes
|
|
1290
|
+
? `contentTypes: ${contentTypes}, `
|
|
1291
|
+
: ''
|
|
1292
|
+
}${defaults ? `defaults: ${defaults}, ` : ''}${
|
|
1293
|
+
dependencies ? `references: ${dependencies}, ` : ''
|
|
1294
|
+
}${
|
|
1295
|
+
dependencyOf ? `required by: ${dependencyOf}` : ''
|
|
1296
|
+
} }`
|
|
1297
|
+
)
|
|
1298
|
+
: ''
|
|
1292
1299
|
}`
|
|
1293
1300
|
);
|
|
1294
1301
|
}
|
|
@@ -1419,7 +1426,8 @@ class ContensisCli {
|
|
|
1419
1426
|
for (const contentType of contentTypes) {
|
|
1420
1427
|
const fieldsLength = contentType.fields?.length || 0;
|
|
1421
1428
|
console.log(
|
|
1422
|
-
` - ${contentType.id} [${fieldsLength} field${
|
|
1429
|
+
` - ${contentType.id} [${fieldsLength} field${
|
|
1430
|
+
fieldsLength !== 1 ? 's' : ''
|
|
1423
1431
|
}]`
|
|
1424
1432
|
);
|
|
1425
1433
|
}
|
|
@@ -1518,10 +1526,9 @@ class ContensisCli {
|
|
|
1518
1526
|
contentType.projectId = currentProject;
|
|
1519
1527
|
delete contentType.uuid;
|
|
1520
1528
|
|
|
1521
|
-
const [err, , createStatus] =
|
|
1522
|
-
|
|
1523
|
-
|
|
1524
|
-
].repo.UpsertContentType(false, contentType);
|
|
1529
|
+
const [err, , createStatus] = await contensis.models.targetRepos[
|
|
1530
|
+
currentProject
|
|
1531
|
+
].repo.UpsertContentType(false, contentType);
|
|
1525
1532
|
|
|
1526
1533
|
if (err) log.error(err.message, err);
|
|
1527
1534
|
if (createStatus) {
|
|
@@ -1533,7 +1540,7 @@ class ContensisCli {
|
|
|
1533
1540
|
)
|
|
1534
1541
|
);
|
|
1535
1542
|
// print the content type to console
|
|
1536
|
-
await this.HandleFormattingAndOutput(contentType, () => {
|
|
1543
|
+
await this.HandleFormattingAndOutput(contentType, () => {});
|
|
1537
1544
|
}
|
|
1538
1545
|
}
|
|
1539
1546
|
else {
|
|
@@ -1611,7 +1618,8 @@ class ContensisCli {
|
|
|
1611
1618
|
for (const component of components) {
|
|
1612
1619
|
const fieldsLength = component.fields?.length || 0;
|
|
1613
1620
|
console.log(
|
|
1614
|
-
` - ${component.id} [${fieldsLength} field${
|
|
1621
|
+
` - ${component.id} [${fieldsLength} field${
|
|
1622
|
+
fieldsLength !== 1 ? 's' : ''
|
|
1615
1623
|
}]`
|
|
1616
1624
|
);
|
|
1617
1625
|
}
|
|
@@ -1709,10 +1717,9 @@ class ContensisCli {
|
|
|
1709
1717
|
component.projectId = currentProject;
|
|
1710
1718
|
delete component.uuid;
|
|
1711
1719
|
|
|
1712
|
-
const [err, , createStatus] =
|
|
1713
|
-
|
|
1714
|
-
|
|
1715
|
-
].repo.UpsertComponent(false, component);
|
|
1720
|
+
const [err, , createStatus] = await contensis.models.targetRepos[
|
|
1721
|
+
currentProject
|
|
1722
|
+
].repo.UpsertComponent(false, component);
|
|
1716
1723
|
|
|
1717
1724
|
if (err) log.error(err.message, err);
|
|
1718
1725
|
if (createStatus) {
|
|
@@ -1724,7 +1731,7 @@ class ContensisCli {
|
|
|
1724
1731
|
)
|
|
1725
1732
|
);
|
|
1726
1733
|
// print the component to console
|
|
1727
|
-
await this.HandleFormattingAndOutput(component, () => {
|
|
1734
|
+
await this.HandleFormattingAndOutput(component, () => {});
|
|
1728
1735
|
}
|
|
1729
1736
|
}
|
|
1730
1737
|
else {
|
|
@@ -1793,15 +1800,23 @@ class ContensisCli {
|
|
|
1793
1800
|
// Add a full sys.uri to asset entries
|
|
1794
1801
|
// Add sys.metadata.exportCms
|
|
1795
1802
|
// Add sys.metadata.exportProjectId
|
|
1803
|
+
const nodes = contensis.content.source.nodes.raw;
|
|
1804
|
+
const combinedOutput = [...entries, ...nodes];
|
|
1796
1805
|
|
|
1797
|
-
await this.HandleFormattingAndOutput(
|
|
1806
|
+
await this.HandleFormattingAndOutput(combinedOutput, () => {
|
|
1798
1807
|
// print the entries to console
|
|
1799
1808
|
logEntitiesTable({
|
|
1800
1809
|
entries,
|
|
1801
1810
|
projectId: currentProject,
|
|
1802
1811
|
fields: contensis.payload.query?.fields,
|
|
1803
|
-
})
|
|
1804
|
-
|
|
1812
|
+
});
|
|
1813
|
+
if (nodes.length)
|
|
1814
|
+
logEntitiesTable({
|
|
1815
|
+
nodes,
|
|
1816
|
+
projectId: currentProject,
|
|
1817
|
+
fields: contensis.payload.query?.fields,
|
|
1818
|
+
});
|
|
1819
|
+
});
|
|
1805
1820
|
} else {
|
|
1806
1821
|
log.warning(messages.models.noList(currentProject));
|
|
1807
1822
|
log.help(messages.connect.tip());
|
|
@@ -1842,7 +1857,11 @@ class ContensisCli {
|
|
|
1842
1857
|
const { entries, nodes } = contensis.content.targets[currentProject];
|
|
1843
1858
|
|
|
1844
1859
|
const output = saveEntries
|
|
1845
|
-
? entries
|
|
1860
|
+
? // include entries and dependent nodes when saving entries
|
|
1861
|
+
[
|
|
1862
|
+
entries.migrate?.map(me => me.toJSON()) || [],
|
|
1863
|
+
nodes.migrateNodes.map(mn => mn.node),
|
|
1864
|
+
].flat()
|
|
1846
1865
|
: result;
|
|
1847
1866
|
await this.HandleFormattingAndOutput(output, () => {
|
|
1848
1867
|
// print the migrateResult to console
|
|
@@ -1876,13 +1895,13 @@ class ContensisCli {
|
|
|
1876
1895
|
commit,
|
|
1877
1896
|
commit
|
|
1878
1897
|
? (result.migrateResult?.created || 0) +
|
|
1879
|
-
|
|
1898
|
+
(result.migrateResult?.updated || 0)
|
|
1880
1899
|
: result.entriesToMigrate[currentProject].totalCount,
|
|
1881
1900
|
commit
|
|
1882
1901
|
? (result.nodesResult?.created || 0) +
|
|
1883
|
-
|
|
1902
|
+
(result.nodesResult?.updated || 0)
|
|
1884
1903
|
: (result.nodesToMigrate?.[currentProject]
|
|
1885
|
-
|
|
1904
|
+
.totalCount as number) || 0
|
|
1886
1905
|
)
|
|
1887
1906
|
);
|
|
1888
1907
|
if (!commit) {
|
|
@@ -1935,8 +1954,8 @@ class ContensisCli {
|
|
|
1935
1954
|
if (result) {
|
|
1936
1955
|
const output = saveEntries
|
|
1937
1956
|
? contensis.content.copy.targets[currentProject].entries.migrate?.map(
|
|
1938
|
-
|
|
1939
|
-
|
|
1957
|
+
me => me.toJSON()
|
|
1958
|
+
)
|
|
1940
1959
|
: result;
|
|
1941
1960
|
await this.HandleFormattingAndOutput(output, () => {
|
|
1942
1961
|
// print the migrateResult to console
|
|
@@ -1962,7 +1981,7 @@ class ContensisCli {
|
|
|
1962
1981
|
commit,
|
|
1963
1982
|
commit
|
|
1964
1983
|
? (result.migrateResult?.created || 0) +
|
|
1965
|
-
|
|
1984
|
+
(result.migrateResult?.updated || 0)
|
|
1966
1985
|
: result.entriesToMigrate[currentProject].totalCount
|
|
1967
1986
|
)
|
|
1968
1987
|
);
|
|
@@ -2153,14 +2172,14 @@ class ContensisCli {
|
|
|
2153
2172
|
|
|
2154
2173
|
const filteredResults = subscriptionIdsOrNames?.length
|
|
2155
2174
|
? webhooks?.filter(
|
|
2156
|
-
|
|
2157
|
-
|
|
2158
|
-
|
|
2159
|
-
|
|
2160
|
-
|
|
2161
|
-
|
|
2162
|
-
|
|
2163
|
-
|
|
2175
|
+
w =>
|
|
2176
|
+
subscriptionIdsOrNames?.some(idname =>
|
|
2177
|
+
w.name?.toLowerCase().includes(idname.toLowerCase())
|
|
2178
|
+
) ||
|
|
2179
|
+
subscriptionIdsOrNames?.some(
|
|
2180
|
+
id => id.toLowerCase() === w.id.toLowerCase()
|
|
2181
|
+
)
|
|
2182
|
+
)
|
|
2164
2183
|
: webhooks;
|
|
2165
2184
|
|
|
2166
2185
|
if (Array.isArray(filteredResults)) {
|
|
@@ -2187,7 +2206,8 @@ class ContensisCli {
|
|
|
2187
2206
|
version.modified || version.created
|
|
2188
2207
|
)
|
|
2189
2208
|
.toString()
|
|
2190
|
-
.substring(0, 10)} ${
|
|
2209
|
+
.substring(0, 10)} ${
|
|
2210
|
+
version.modifiedBy || version.createdBy
|
|
2191
2211
|
}]`
|
|
2192
2212
|
)
|
|
2193
2213
|
);
|
|
@@ -2256,12 +2276,14 @@ class ContensisCli {
|
|
|
2256
2276
|
versionsSinceLive,
|
|
2257
2277
|
} of blocks) {
|
|
2258
2278
|
console.log(
|
|
2259
|
-
` - ${id}${description ? ` (${description})` : ''}${
|
|
2260
|
-
|
|
2261
|
-
|
|
2262
|
-
|
|
2263
|
-
|
|
2264
|
-
|
|
2279
|
+
` - ${id}${description ? ` (${description})` : ''}${
|
|
2280
|
+
madeLive
|
|
2281
|
+
? ` [${madeLive.toString().substring(0, 10)} v${liveVersion}]`
|
|
2282
|
+
: ''
|
|
2283
|
+
}${
|
|
2284
|
+
versionsSinceLive
|
|
2285
|
+
? log.warningText(` +${versionsSinceLive}`)
|
|
2286
|
+
: ''
|
|
2265
2287
|
}`
|
|
2266
2288
|
);
|
|
2267
2289
|
for (const branch of branches)
|
|
@@ -2326,11 +2348,11 @@ class ContensisCli {
|
|
|
2326
2348
|
block,
|
|
2327
2349
|
!version
|
|
2328
2350
|
? {
|
|
2329
|
-
|
|
2330
|
-
|
|
2331
|
-
|
|
2332
|
-
|
|
2333
|
-
|
|
2351
|
+
showImage: false,
|
|
2352
|
+
showSource: true,
|
|
2353
|
+
showStaticPaths: false,
|
|
2354
|
+
showStatus: false,
|
|
2355
|
+
}
|
|
2334
2356
|
: undefined
|
|
2335
2357
|
);
|
|
2336
2358
|
});
|
|
@@ -2357,9 +2379,8 @@ class ContensisCli {
|
|
|
2357
2379
|
const contensis = await this.ConnectContensis();
|
|
2358
2380
|
if (contensis) {
|
|
2359
2381
|
// Push new block version
|
|
2360
|
-
const [err, blockVersion] =
|
|
2361
|
-
block
|
|
2362
|
-
);
|
|
2382
|
+
const [err, blockVersion] =
|
|
2383
|
+
await contensis.blocks.PushBlockVersion(block);
|
|
2363
2384
|
if (!err) {
|
|
2364
2385
|
log.success(
|
|
2365
2386
|
messages.blocks.pushed(
|
|
@@ -2436,9 +2457,8 @@ class ContensisCli {
|
|
|
2436
2457
|
|
|
2437
2458
|
// If action is release and version is latest, find the latest version number
|
|
2438
2459
|
if (action === 'release' && version === 'latest') {
|
|
2439
|
-
const [getErr, blockVersion] =
|
|
2440
|
-
blockId
|
|
2441
|
-
);
|
|
2460
|
+
const [getErr, blockVersion] =
|
|
2461
|
+
await this.GetLatestBlockVersion(blockId);
|
|
2442
2462
|
|
|
2443
2463
|
if (getErr) {
|
|
2444
2464
|
// Log error getting latest block version no
|
|
@@ -2525,7 +2545,8 @@ class ContensisCli {
|
|
|
2525
2545
|
await this.HandleFormattingAndOutput(renderLogs, () => {
|
|
2526
2546
|
// print the logs to console
|
|
2527
2547
|
console.log(
|
|
2528
|
-
` - ${blockId} ${branch} ${
|
|
2548
|
+
` - ${blockId} ${branch} ${
|
|
2549
|
+
Number(version) ? `v${version}` : version
|
|
2529
2550
|
} ${dataCenter ? `[${dataCenter}]` : ''}`
|
|
2530
2551
|
);
|
|
2531
2552
|
log.line();
|
|
@@ -2578,11 +2599,11 @@ class ContensisCli {
|
|
|
2578
2599
|
|
|
2579
2600
|
const [lastErr, lastLogs] = following
|
|
2580
2601
|
? await contensis.blocks.GetBlockLogs({
|
|
2581
|
-
|
|
2582
|
-
|
|
2583
|
-
|
|
2584
|
-
|
|
2585
|
-
|
|
2602
|
+
blockId,
|
|
2603
|
+
branchId: branch,
|
|
2604
|
+
version,
|
|
2605
|
+
dataCenter,
|
|
2606
|
+
})
|
|
2586
2607
|
: [null, null];
|
|
2587
2608
|
|
|
2588
2609
|
if (lastLogs) {
|
|
@@ -2630,7 +2651,8 @@ class ContensisCli {
|
|
|
2630
2651
|
log.success(messages.proxies.list(currentEnv, env.currentProject));
|
|
2631
2652
|
for (const { id, name, description, endpoints, version } of proxies) {
|
|
2632
2653
|
console.log(
|
|
2633
|
-
` - ${name} [${
|
|
2654
|
+
` - ${name} [${
|
|
2655
|
+
version.versionNo
|
|
2634
2656
|
}] ${id} ${log.infoText`${description}`}`
|
|
2635
2657
|
);
|
|
2636
2658
|
for (const [language, endpoint] of Object.entries(
|
|
@@ -2684,8 +2706,9 @@ class ContensisCli {
|
|
|
2684
2706
|
for (const rule of rules)
|
|
2685
2707
|
if (rule.return)
|
|
2686
2708
|
console.log(
|
|
2687
|
-
log.infoText` ${
|
|
2688
|
-
|
|
2709
|
+
log.infoText` ${
|
|
2710
|
+
rule.return.endpointId ? 'endpointId' : 'blockId'
|
|
2711
|
+
}: ${rule.return.endpointId || rule.return.blockId}`
|
|
2689
2712
|
);
|
|
2690
2713
|
}
|
|
2691
2714
|
});
|