contensis-cli 1.5.1-beta.7 → 1.5.1-beta.9
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/globalOptions.js +2 -0
- package/dist/commands/globalOptions.js.map +2 -2
- package/dist/commands/import.js +3 -0
- package/dist/commands/import.js.map +2 -2
- package/dist/localisation/en-GB.js +3 -2
- package/dist/localisation/en-GB.js.map +2 -2
- package/dist/mappers/MixedFileData.js +83 -0
- package/dist/mappers/MixedFileData.js.map +7 -0
- package/dist/services/ContensisCliService.js +66 -91
- package/dist/services/ContensisCliService.js.map +2 -2
- package/dist/util/console.printer.js +9 -8
- package/dist/util/console.printer.js.map +3 -3
- package/dist/util/index.js +0 -21
- package/dist/util/index.js.map +2 -2
- package/dist/version.js +1 -1
- package/dist/version.js.map +1 -1
- package/package.json +2 -2
- package/src/commands/globalOptions.ts +1 -0
- package/src/commands/import.ts +4 -0
- package/src/localisation/en-GB.ts +8 -1
- package/src/mappers/MixedFileData.ts +80 -0
- package/src/services/ContensisCliService.ts +75 -122
- package/src/util/console.printer.ts +8 -7
- package/src/util/index.ts +0 -26
- package/src/version.ts +1 -1
|
@@ -78,6 +78,8 @@ const mapContensisOpts = (opts = {}) => ({
|
|
|
78
78
|
// arg is inverted automatically from `--no-cache` to `cache: false`
|
|
79
79
|
includeDefaults: opts.defaults,
|
|
80
80
|
// arg is inverted automatically from `--no-defaults` to `defaults: false`
|
|
81
|
+
includeValidations: opts.validations,
|
|
82
|
+
// arg is inverted automatically from `--no-validations` to `validations: false`
|
|
81
83
|
concurrency: opts.concurrency ? Number(opts.concurrency) : void 0,
|
|
82
84
|
noPublish: !opts.publish,
|
|
83
85
|
// arg is inverted automatically from `--no-publish` to `publish: false`
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/commands/globalOptions.ts"],
|
|
4
|
-
"sourcesContent": ["import { Command, Option } from 'commander';\nimport { MigrateRequest } from 'migratortron';\nimport { url } from '~/util';\n\n// Map various input options into a request to be processed\n// by Migratortron / Contensis import library\nexport const mapContensisOpts = (opts: any = {}): MigrateRequest => ({\n source:\n opts.sourceAlias || opts.sourceProjectId\n ? {\n url: opts.sourceAlias\n ? url(opts.sourceAlias, 'website').cms\n : (undefined as any),\n project: opts.sourceProjectId || (undefined as any),\n }\n : undefined,\n models: opts.modelIds,\n copyField: opts.copyField,\n updateField: opts.updateField,\n // convert various cli options into MigrateRequest.query format\n query:\n opts.id ||\n opts.entryIds ||\n opts.search ||\n opts.fields ||\n opts.orderBy ||\n opts.paths ||\n opts.assetType ||\n opts.contentType ||\n opts.dataFormat ||\n opts.deliveryApi ||\n opts.latest ||\n opts.versionStatus\n ? {\n assetTypes: opts.assetType,\n contentTypeIds: opts.contentType,\n dataFormats: opts.dataFormat ? [opts.dataFormat] : undefined,\n fields: opts.fields,\n includeIds: opts.id || opts.entryIds,\n includePaths: opts.paths,\n orderBy: opts.orderBy,\n searchTerm: opts.search,\n useDelivery: opts.deliveryApi,\n versionStatus: opts.latest ? 'latest' : opts.versionStatus,\n }\n : undefined,\n zenQL: opts.zenql,\n transformGuids: !opts.preserveGuids,\n ignoreErrors: opts.ignoreErrors,\n noCache: !opts.cache, // arg is inverted automatically from `--no-cache` to `cache: false`\n includeDefaults: opts.defaults, // arg is inverted automatically from `--no-defaults` to `defaults: false`\n concurrency: opts.concurrency ? Number(opts.concurrency) : undefined,\n noPublish: !opts.publish, // arg is inverted automatically from `--no-publish` to `publish: false`\n outputLogs: opts.logLevel,\n stopLevel:\n typeof opts.stopLevel === 'number'\n ? Number(opts.stopLevel)\n : typeof opts.dependents === 'number'\n ? Number(opts.dependents)\n : undefined,\n});\n\n/* Output options */\nconst output = new Option(\n '-o --output <output>',\n 'save output to a file e.g. --output ./output.txt'\n);\n\nconst format = new Option(\n '-f --format <format>',\n 'format output as csv, json, html, xml or default'\n).choices(['csv', 'json', 'html', 'xml', 'table']);\n\n/* Connect options */\nconst alias = new Option(\n '-a --alias <alias>',\n 'the cloud CMS alias to connect your request with'\n);\n\nexport const project = new Option(\n '-p --project-id <projectId>',\n 'the projectId to make your request with'\n);\n\n/* Authentication options */\nconst user = new Option(\n '-u --user <user>',\n 'the username to authenticate your request with'\n);\nconst password = new Option(\n '-pw --password <password>',\n 'the password to use to login with (optional/insecure)'\n);\nconst clientId = new Option(\n '-id --client-id <clientId>',\n 'the clientId to authenticate your request with'\n);\nconst sharedSecret = new Option(\n '-s --shared-secret <sharedSecret>',\n 'the shared secret to use when logging in with a client id'\n);\n\n/* Model get options */\nexport const requiredBy = new Option(\n '--required-by',\n 'shows the id(s) that created each dependency'\n);\nexport const exportOption = new Option(\n '--export',\n 'export the raw resources that make up the content model(s) (used with --output)'\n);\n\n/* Entry get options */\nexport const delivery = new Option(\n '-delivery --delivery-api',\n 'use delivery api to get the entries'\n);\nexport const search = new Option(\n '--search <phrase>',\n 'get entries with the search phrase, use quotes for multiple words'\n);\nexport const zenql = new Option(\n '-q --zenql <zenql>',\n 'get entries with a supplied ZenQL statement'\n);\n\nexport const entryId = new Option('-i --id <id...>', 'the entry id(s) to get');\nexport const contentTypes = new Option(\n '-c --content-type <contentType...>',\n 'get entries of these content type(s)'\n);\nexport const assetTypes = new Option(\n '-at --asset-type <assetType...>',\n 'get assets of given content type(s) e.g. image word pdf'\n);\nexport const versionStatus = new Option(\n '-vs --version-status <versionStatus>',\n 'the entry versions to get'\n)\n .choices(['latest', 'published'])\n .default('published');\n\nexport const latest = new Option('--latest', 'get the latest entry versions');\n\n/* Import options */\nexport const fromFile = new Option(\n '-file --from-file <fromFile>',\n 'file path to import asset(s) from'\n);\n\nexport const fromCms = new Option(\n '-source --source-alias <fromCms>',\n 'the cloud CMS alias to import asset(s) from'\n);\nexport const fromProject = new Option(\n '-sp --source-project-id <fromProject>',\n 'the id of the Contensis project to import asset(s) from (Default: [last connected project])'\n);\n\nexport const commit = new Option(\n '--commit',\n 'add this flag only after you have run a preview of the import and agree with the analysis'\n).default(false);\n\nexport const ignoreErrors = new Option(\n '-ignore --ignore-errors',\n 'commit the import ignoring any reported errors'\n).default(false);\n\nexport const logLevel = new Option(\n '-ll --log-level <logLevel>',\n 'set the logging level to output more detailed logs'\n)\n .choices(['debug', 'info', 'warning', 'error', 'none'])\n .default('warning');\n\nexport const outputDetail = new Option(\n '-od --output-detail <outputDetail>',\n 'how much detail to output from the import'\n)\n .choices(['errors', 'changes', 'all'])\n .default('errors');\n\nexport const saveEntries = new Option(\n '-save --save-entries',\n \"save the entries we're migrating instead of the migration preview (used with --output)\"\n);\n\nexport const concurrency = new Option(\n '-conc --concurrency <concurrency>',\n 'the number of entries to load in parallel'\n).default(2);\n\nexport const noCache = new Option(\n '--no-cache',\n 'ignore internal cache and rebuild all resources from scratch'\n);\n\nexport const noPublish = new Option(\n '--no-publish',\n \"don't publish created or updated entries\"\n);\n\nexport const stopLevel = new Option(\n '-d --stop-level <stopLevel>',\n 'the level at which to stop resolving dependent entries (may result in incomplete entries)'\n).argParser(parseInt);\n\nexport const addConnectOptions = (program: Command) =>\n program.addOption(alias.hideHelp()).addOption(project.hideHelp());\n\nexport const addAuthenticationOptions = (program: Command) =>\n program\n .addOption(user.hideHelp())\n .addOption(password.hideHelp())\n .addOption(clientId.hideHelp())\n .addOption(sharedSecret.hideHelp());\n\nconst addOutputAndFormatOptions = (program: Command) =>\n program.addOption(output).addOption(format);\n\nexport const addImportOptions = (program: Command) => {\n for (const command of program.commands) {\n command.addOption(fromCms).addOption(fromProject).addOption(fromFile);\n }\n return program;\n};\n\nexport const addGlobalOptions = (program: Command) => {\n for (const command of program.commands) {\n command.addOption(logLevel.hideHelp());\n addOutputAndFormatOptions(command);\n addConnectOptions(command);\n addAuthenticationOptions(command);\n }\n return program;\n};\n"],
|
|
5
|
-
"mappings": "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",
|
|
4
|
+
"sourcesContent": ["import { Command, Option } from 'commander';\nimport { MigrateRequest } from 'migratortron';\nimport { url } from '~/util';\n\n// Map various input options into a request to be processed\n// by Migratortron / Contensis import library\nexport const mapContensisOpts = (opts: any = {}): MigrateRequest => ({\n source:\n opts.sourceAlias || opts.sourceProjectId\n ? {\n url: opts.sourceAlias\n ? url(opts.sourceAlias, 'website').cms\n : (undefined as any),\n project: opts.sourceProjectId || (undefined as any),\n }\n : undefined,\n models: opts.modelIds,\n copyField: opts.copyField,\n updateField: opts.updateField,\n // convert various cli options into MigrateRequest.query format\n query:\n opts.id ||\n opts.entryIds ||\n opts.search ||\n opts.fields ||\n opts.orderBy ||\n opts.paths ||\n opts.assetType ||\n opts.contentType ||\n opts.dataFormat ||\n opts.deliveryApi ||\n opts.latest ||\n opts.versionStatus\n ? {\n assetTypes: opts.assetType,\n contentTypeIds: opts.contentType,\n dataFormats: opts.dataFormat ? [opts.dataFormat] : undefined,\n fields: opts.fields,\n includeIds: opts.id || opts.entryIds,\n includePaths: opts.paths,\n orderBy: opts.orderBy,\n searchTerm: opts.search,\n useDelivery: opts.deliveryApi,\n versionStatus: opts.latest ? 'latest' : opts.versionStatus,\n }\n : undefined,\n zenQL: opts.zenql,\n transformGuids: !opts.preserveGuids,\n ignoreErrors: opts.ignoreErrors,\n noCache: !opts.cache, // arg is inverted automatically from `--no-cache` to `cache: false`\n includeDefaults: opts.defaults, // arg is inverted automatically from `--no-defaults` to `defaults: false`\n includeValidations: opts.validations, // arg is inverted automatically from `--no-validations` to `validations: false`\n concurrency: opts.concurrency ? Number(opts.concurrency) : undefined,\n noPublish: !opts.publish, // arg is inverted automatically from `--no-publish` to `publish: false`\n outputLogs: opts.logLevel,\n stopLevel:\n typeof opts.stopLevel === 'number'\n ? Number(opts.stopLevel)\n : typeof opts.dependents === 'number'\n ? Number(opts.dependents)\n : undefined,\n});\n\n/* Output options */\nconst output = new Option(\n '-o --output <output>',\n 'save output to a file e.g. --output ./output.txt'\n);\n\nconst format = new Option(\n '-f --format <format>',\n 'format output as csv, json, html, xml or default'\n).choices(['csv', 'json', 'html', 'xml', 'table']);\n\n/* Connect options */\nconst alias = new Option(\n '-a --alias <alias>',\n 'the cloud CMS alias to connect your request with'\n);\n\nexport const project = new Option(\n '-p --project-id <projectId>',\n 'the projectId to make your request with'\n);\n\n/* Authentication options */\nconst user = new Option(\n '-u --user <user>',\n 'the username to authenticate your request with'\n);\nconst password = new Option(\n '-pw --password <password>',\n 'the password to use to login with (optional/insecure)'\n);\nconst clientId = new Option(\n '-id --client-id <clientId>',\n 'the clientId to authenticate your request with'\n);\nconst sharedSecret = new Option(\n '-s --shared-secret <sharedSecret>',\n 'the shared secret to use when logging in with a client id'\n);\n\n/* Model get options */\nexport const requiredBy = new Option(\n '--required-by',\n 'shows the id(s) that created each dependency'\n);\nexport const exportOption = new Option(\n '--export',\n 'export the raw resources that make up the content model(s) (used with --output)'\n);\n\n/* Entry get options */\nexport const delivery = new Option(\n '-delivery --delivery-api',\n 'use delivery api to get the entries'\n);\nexport const search = new Option(\n '--search <phrase>',\n 'get entries with the search phrase, use quotes for multiple words'\n);\nexport const zenql = new Option(\n '-q --zenql <zenql>',\n 'get entries with a supplied ZenQL statement'\n);\n\nexport const entryId = new Option('-i --id <id...>', 'the entry id(s) to get');\nexport const contentTypes = new Option(\n '-c --content-type <contentType...>',\n 'get entries of these content type(s)'\n);\nexport const assetTypes = new Option(\n '-at --asset-type <assetType...>',\n 'get assets of given content type(s) e.g. image word pdf'\n);\nexport const versionStatus = new Option(\n '-vs --version-status <versionStatus>',\n 'the entry versions to get'\n)\n .choices(['latest', 'published'])\n .default('published');\n\nexport const latest = new Option('--latest', 'get the latest entry versions');\n\n/* Import options */\nexport const fromFile = new Option(\n '-file --from-file <fromFile>',\n 'file path to import asset(s) from'\n);\n\nexport const fromCms = new Option(\n '-source --source-alias <fromCms>',\n 'the cloud CMS alias to import asset(s) from'\n);\nexport const fromProject = new Option(\n '-sp --source-project-id <fromProject>',\n 'the id of the Contensis project to import asset(s) from (Default: [last connected project])'\n);\n\nexport const commit = new Option(\n '--commit',\n 'add this flag only after you have run a preview of the import and agree with the analysis'\n).default(false);\n\nexport const ignoreErrors = new Option(\n '-ignore --ignore-errors',\n 'commit the import ignoring any reported errors'\n).default(false);\n\nexport const logLevel = new Option(\n '-ll --log-level <logLevel>',\n 'set the logging level to output more detailed logs'\n)\n .choices(['debug', 'info', 'warning', 'error', 'none'])\n .default('warning');\n\nexport const outputDetail = new Option(\n '-od --output-detail <outputDetail>',\n 'how much detail to output from the import'\n)\n .choices(['errors', 'changes', 'all'])\n .default('errors');\n\nexport const saveEntries = new Option(\n '-save --save-entries',\n \"save the entries we're migrating instead of the migration preview (used with --output)\"\n);\n\nexport const concurrency = new Option(\n '-conc --concurrency <concurrency>',\n 'the number of entries to load in parallel'\n).default(2);\n\nexport const noCache = new Option(\n '--no-cache',\n 'ignore internal cache and rebuild all resources from scratch'\n);\n\nexport const noPublish = new Option(\n '--no-publish',\n \"don't publish created or updated entries\"\n);\n\nexport const stopLevel = new Option(\n '-d --stop-level <stopLevel>',\n 'the level at which to stop resolving dependent entries (may result in incomplete entries)'\n).argParser(parseInt);\n\nexport const addConnectOptions = (program: Command) =>\n program.addOption(alias.hideHelp()).addOption(project.hideHelp());\n\nexport const addAuthenticationOptions = (program: Command) =>\n program\n .addOption(user.hideHelp())\n .addOption(password.hideHelp())\n .addOption(clientId.hideHelp())\n .addOption(sharedSecret.hideHelp());\n\nconst addOutputAndFormatOptions = (program: Command) =>\n program.addOption(output).addOption(format);\n\nexport const addImportOptions = (program: Command) => {\n for (const command of program.commands) {\n command.addOption(fromCms).addOption(fromProject).addOption(fromFile);\n }\n return program;\n};\n\nexport const addGlobalOptions = (program: Command) => {\n for (const command of program.commands) {\n command.addOption(logLevel.hideHelp());\n addOutputAndFormatOptions(command);\n addConnectOptions(command);\n addAuthenticationOptions(command);\n }\n return program;\n};\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
package/dist/commands/import.js
CHANGED
|
@@ -31,6 +31,9 @@ const makeImportCommand = () => {
|
|
|
31
31
|
program.command("models").description("import complete content models").argument("[modelIds...]", "ids of the content models to import (optional)").addOption(import_globalOptions.noCache).addOption(import_globalOptions.commit).option(
|
|
32
32
|
"-nod --no-defaults",
|
|
33
33
|
"ignore any default entries or nodes attached to content types or fields"
|
|
34
|
+
).option(
|
|
35
|
+
"-nov --no-validations",
|
|
36
|
+
"import fields with validations removed"
|
|
34
37
|
).option(
|
|
35
38
|
"-preserve --preserve-guids",
|
|
36
39
|
"import any default entries or nodes using the same id as the source"
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/commands/import.ts"],
|
|
4
|
-
"sourcesContent": ["import { Command, Option } from 'commander';\nimport { cliCommand } from '~/services/ContensisCliService';\nimport {\n assetTypes,\n commit,\n concurrency,\n contentTypes,\n entryId,\n ignoreErrors,\n latest,\n mapContensisOpts,\n noCache,\n noPublish,\n outputDetail,\n saveEntries,\n stopLevel,\n versionStatus,\n zenql,\n} from './globalOptions';\n\nexport const makeImportCommand = () => {\n const program = new Command()\n .command('import')\n .description('import command')\n .addHelpText('after', `\\n`)\n .showHelpAfterError(true)\n .exitOverride();\n\n program\n .command('models')\n .description('import complete content models')\n .argument('[modelIds...]', 'ids of the content models to import (optional)')\n .addOption(noCache)\n .addOption(commit)\n .option(\n '-nod --no-defaults',\n 'ignore any default entries or nodes attached to content types or fields'\n )\n .option(\n '-preserve --preserve-guids',\n 'import any default entries or nodes using the same id as the source'\n )\n .addOption(ignoreErrors)\n .addHelpText(\n 'after',\n `\nExample call:\n > import models blogPost --from-file contentmodels-backup.json\n > import models --source-alias example-dev\n`\n )\n .action(async (modelIds: string[], opts) => {\n await cliCommand(\n ['import', 'models', modelIds.join(' ')],\n opts,\n mapContensisOpts({ modelIds, ...opts })\n ).ImportContentModels({\n fromFile: opts.fromFile,\n commit: opts.commit,\n });\n });\n\n program\n .command('contenttypes')\n .description('import content types')\n .argument(\n '[contentTypeIds...]',\n 'Optional list of API id(s) of the content type(s) to import'\n )\n .addOption(commit)\n .addHelpText(\n 'after',\n `\nExample call:\n > import contenttypes {contentTypeIds} --from-file contenttypes-backup.json\n > import contenttypes {contentTypeIds} --source-alias example-dev\n`\n )\n .action(async (contentTypeIds: string[], opts) => {\n await cliCommand(\n ['import', 'contenttypes'],\n opts,\n mapContensisOpts({ contentTypeIds, ...opts })\n ).ImportContentTypes(\n {\n fromFile: opts.fromFile,\n commit: opts.commit,\n },\n contentTypeIds\n );\n });\n\n program\n .command('components')\n .description('import components')\n .argument(\n '[componentIds...]',\n 'Optional list of API id(s) of the component(s) to import'\n )\n .addOption(commit)\n .addHelpText(\n 'after',\n `\nExample call:\n > import components {componentIds} --from-file component-backup.json\n > import components {componentIds} --source-alias example-dev\n`\n )\n .action(async (componentIds: string[], opts) => {\n await cliCommand(\n ['import', 'component'],\n opts,\n mapContensisOpts({ componentIds, ...opts })\n ).ImportComponents(\n {\n fromFile: opts.fromFile,\n commit: opts.commit,\n },\n componentIds\n );\n });\n\n program\n .command('entries')\n .description('import entries')\n .argument(\n '[search phrase]',\n 'get entries with the search phrase, use quotes for multiple words'\n )\n .addOption(entryId)\n .addOption(zenql)\n .addOption(contentTypes)\n .addOption(assetTypes)\n .addOption(latest)\n .addOption(versionStatus)\n .addOption(stopLevel)\n .addOption(commit)\n .option(\n '-preserve --preserve-guids',\n 'include this flag when you are importing entries that you have previously exported and wish to update'\n )\n .addOption(concurrency)\n .addOption(outputDetail)\n .addOption(ignoreErrors)\n .addOption(noCache)\n .addOption(noPublish)\n .addOption(saveEntries)\n .addHelpText(\n 'after',\n `\nExample call:\n > import entries --source-cms example-dev --source-project-id microsite --zenql \"sys.contentTypeId = blog\"\n > import entries --from-file myImportData.json --preserve-guids\n`\n )\n .action(async (search: string, opts, cmd) => {\n await cliCommand(\n ['import', 'entries'],\n opts,\n mapContensisOpts({ search, ...opts })\n ).ImportEntries({\n commit: opts.commit,\n fromFile: opts.fromFile,\n logOutput: opts.outputDetail,\n saveEntries: opts.saveEntries,\n });\n });\n\n // TODO: add options to import one an array of nodes? nodeIds: string[]\n program\n .command('nodes')\n .description('import nodes')\n .argument('[root]', 'import nodes from the specified path e.g. /blog', '/')\n .option(\n '-preserve --preserve-guids',\n 'include this flag when you are importing nodes that you have previously exported and wish to update'\n )\n .addOption(ignoreErrors)\n .addOption(commit)\n .addOption(\n new Option(\n '-od --output-detail <outputDetail>',\n 'how much detail to output from the import'\n )\n .choices(['errors', 'changes', 'all'])\n .default('errors')\n )\n .option(\n '-ol --output-limit <outputLimit>',\n 'expand or limit the number of records output to the console',\n '200'\n )\n .addHelpText(\n 'after',\n `\nExample call:\n > import nodes /blog --source-alias example-alias --source-project-id example-project\n > import nodes --from-file site-backup.json --preserve-guids\n`\n )\n .action(async (root: string, opts) => {\n await cliCommand(\n ['import', 'nodes'],\n opts,\n mapContensisOpts({ paths: root.split(' '), ...opts })\n ).ImportNodes({\n commit: opts.commit,\n fromFile: opts.fromFile,\n logOutput: opts.outputDetail,\n logLimit: Number(opts.outputLimit),\n });\n });\n\n program\n .command('taggroups')\n .description('import taggroups')\n .argument('[query]', 'apply a filter')\n .option('-i --id <ids...>', 'limit to the supplied tag group id(s)')\n .addOption(commit)\n .option(\n '-preserve --preserve-guids',\n 'include this flag when you are importing tags that you have previously exported and wish to update'\n )\n .addOption(concurrency)\n .addOption(ignoreErrors)\n .option(\n '--save',\n \"save the tag groups we're migrating instead of the migration preview (used with --output)\"\n )\n .addHelpText(\n 'after',\n `\n Example call:\n > import taggroups --source-cms example-dev --source-project-id microsite --zenql \"sys.contentTypeId = blog\"\n > import taggroups --from-file myImportData.json --preserve-guids\n `\n )\n .action(async (query: string, opts) => {\n await cliCommand(\n ['import', 'taggroups'],\n opts,\n mapContensisOpts(opts)\n ).ImportTagGroups({\n commit: opts.commit,\n fromFile: opts.fromFile,\n getBy: {\n id: opts.id?.length === 1 ? opts.id[0] : undefined,\n ids: opts.id?.length > 1 ? opts.id : undefined,\n q: query,\n },\n save: opts.save,\n });\n });\n\n program\n .command('tags')\n .description('import tags')\n .option('-in --group <groupId>', 'id of the tag group containing tags')\n .option('--label <label>', 'filter by tags that match this label')\n .option('-l --language <language>', 'find tags in the supplied language')\n .option('-i --id <ids...>', 'limit to the supplied tag group id(s)')\n .addOption(commit)\n .option(\n '-preserve --preserve-guids',\n 'include this flag when you are importing tags that you have previously exported and wish to update'\n )\n .addOption(concurrency)\n .addOption(ignoreErrors)\n .option(\n '--save',\n \"save the tags we're migrating instead of the migration preview (used with --output)\"\n )\n .addHelpText(\n 'after',\n `\n Example call:\n > import tags --source-cms example-dev --source-project-id microsite --group example\n > import tags --from-file myImportData.json --preserve-guids\n `\n )\n .action(async opts => {\n await cliCommand(\n ['import', 'tags'],\n opts,\n mapContensisOpts(opts)\n ).ImportTags({\n commit: opts.commit,\n fromFile: opts.fromFile,\n getBy: {\n groupId: opts.group,\n id: opts.id?.length === 1 ? opts.id[0] : undefined,\n ids: opts.id?.length > 1 ? opts.id : undefined,\n label: opts.label,\n language: opts.language,\n },\n save: opts.save,\n });\n });\n\n return program;\n};\n\nexport const get = makeImportCommand();\n"],
|
|
5
|
-
"mappings": "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
|
|
4
|
+
"sourcesContent": ["import { Command, Option } from 'commander';\nimport { cliCommand } from '~/services/ContensisCliService';\nimport {\n assetTypes,\n commit,\n concurrency,\n contentTypes,\n entryId,\n ignoreErrors,\n latest,\n mapContensisOpts,\n noCache,\n noPublish,\n outputDetail,\n saveEntries,\n stopLevel,\n versionStatus,\n zenql,\n} from './globalOptions';\n\nexport const makeImportCommand = () => {\n const program = new Command()\n .command('import')\n .description('import command')\n .addHelpText('after', `\\n`)\n .showHelpAfterError(true)\n .exitOverride();\n\n program\n .command('models')\n .description('import complete content models')\n .argument('[modelIds...]', 'ids of the content models to import (optional)')\n .addOption(noCache)\n .addOption(commit)\n .option(\n '-nod --no-defaults',\n 'ignore any default entries or nodes attached to content types or fields'\n )\n .option(\n '-nov --no-validations',\n 'import fields with validations removed'\n )\n .option(\n '-preserve --preserve-guids',\n 'import any default entries or nodes using the same id as the source'\n )\n .addOption(ignoreErrors)\n .addHelpText(\n 'after',\n `\nExample call:\n > import models blogPost --from-file contentmodels-backup.json\n > import models --source-alias example-dev\n`\n )\n .action(async (modelIds: string[], opts) => {\n await cliCommand(\n ['import', 'models', modelIds.join(' ')],\n opts,\n mapContensisOpts({ modelIds, ...opts })\n ).ImportContentModels({\n fromFile: opts.fromFile,\n commit: opts.commit,\n });\n });\n\n program\n .command('contenttypes')\n .description('import content types')\n .argument(\n '[contentTypeIds...]',\n 'Optional list of API id(s) of the content type(s) to import'\n )\n .addOption(commit)\n .addHelpText(\n 'after',\n `\nExample call:\n > import contenttypes {contentTypeIds} --from-file contenttypes-backup.json\n > import contenttypes {contentTypeIds} --source-alias example-dev\n`\n )\n .action(async (contentTypeIds: string[], opts) => {\n await cliCommand(\n ['import', 'contenttypes'],\n opts,\n mapContensisOpts({ contentTypeIds, ...opts })\n ).ImportContentTypes(\n {\n fromFile: opts.fromFile,\n commit: opts.commit,\n },\n contentTypeIds\n );\n });\n\n program\n .command('components')\n .description('import components')\n .argument(\n '[componentIds...]',\n 'Optional list of API id(s) of the component(s) to import'\n )\n .addOption(commit)\n .addHelpText(\n 'after',\n `\nExample call:\n > import components {componentIds} --from-file component-backup.json\n > import components {componentIds} --source-alias example-dev\n`\n )\n .action(async (componentIds: string[], opts) => {\n await cliCommand(\n ['import', 'component'],\n opts,\n mapContensisOpts({ componentIds, ...opts })\n ).ImportComponents(\n {\n fromFile: opts.fromFile,\n commit: opts.commit,\n },\n componentIds\n );\n });\n\n program\n .command('entries')\n .description('import entries')\n .argument(\n '[search phrase]',\n 'get entries with the search phrase, use quotes for multiple words'\n )\n .addOption(entryId)\n .addOption(zenql)\n .addOption(contentTypes)\n .addOption(assetTypes)\n .addOption(latest)\n .addOption(versionStatus)\n .addOption(stopLevel)\n .addOption(commit)\n .option(\n '-preserve --preserve-guids',\n 'include this flag when you are importing entries that you have previously exported and wish to update'\n )\n .addOption(concurrency)\n .addOption(outputDetail)\n .addOption(ignoreErrors)\n .addOption(noCache)\n .addOption(noPublish)\n .addOption(saveEntries)\n .addHelpText(\n 'after',\n `\nExample call:\n > import entries --source-cms example-dev --source-project-id microsite --zenql \"sys.contentTypeId = blog\"\n > import entries --from-file myImportData.json --preserve-guids\n`\n )\n .action(async (search: string, opts, cmd) => {\n await cliCommand(\n ['import', 'entries'],\n opts,\n mapContensisOpts({ search, ...opts })\n ).ImportEntries({\n commit: opts.commit,\n fromFile: opts.fromFile,\n logOutput: opts.outputDetail,\n saveEntries: opts.saveEntries,\n });\n });\n\n // TODO: add options to import one an array of nodes? nodeIds: string[]\n program\n .command('nodes')\n .description('import nodes')\n .argument('[root]', 'import nodes from the specified path e.g. /blog', '/')\n .option(\n '-preserve --preserve-guids',\n 'include this flag when you are importing nodes that you have previously exported and wish to update'\n )\n .addOption(ignoreErrors)\n .addOption(commit)\n .addOption(\n new Option(\n '-od --output-detail <outputDetail>',\n 'how much detail to output from the import'\n )\n .choices(['errors', 'changes', 'all'])\n .default('errors')\n )\n .option(\n '-ol --output-limit <outputLimit>',\n 'expand or limit the number of records output to the console',\n '200'\n )\n .addHelpText(\n 'after',\n `\nExample call:\n > import nodes /blog --source-alias example-alias --source-project-id example-project\n > import nodes --from-file site-backup.json --preserve-guids\n`\n )\n .action(async (root: string, opts) => {\n await cliCommand(\n ['import', 'nodes'],\n opts,\n mapContensisOpts({ paths: root.split(' '), ...opts })\n ).ImportNodes({\n commit: opts.commit,\n fromFile: opts.fromFile,\n logOutput: opts.outputDetail,\n logLimit: Number(opts.outputLimit),\n });\n });\n\n program\n .command('taggroups')\n .description('import taggroups')\n .argument('[query]', 'apply a filter')\n .option('-i --id <ids...>', 'limit to the supplied tag group id(s)')\n .addOption(commit)\n .option(\n '-preserve --preserve-guids',\n 'include this flag when you are importing tags that you have previously exported and wish to update'\n )\n .addOption(concurrency)\n .addOption(ignoreErrors)\n .option(\n '--save',\n \"save the tag groups we're migrating instead of the migration preview (used with --output)\"\n )\n .addHelpText(\n 'after',\n `\n Example call:\n > import taggroups --source-cms example-dev --source-project-id microsite --zenql \"sys.contentTypeId = blog\"\n > import taggroups --from-file myImportData.json --preserve-guids\n `\n )\n .action(async (query: string, opts) => {\n await cliCommand(\n ['import', 'taggroups'],\n opts,\n mapContensisOpts(opts)\n ).ImportTagGroups({\n commit: opts.commit,\n fromFile: opts.fromFile,\n getBy: {\n id: opts.id?.length === 1 ? opts.id[0] : undefined,\n ids: opts.id?.length > 1 ? opts.id : undefined,\n q: query,\n },\n save: opts.save,\n });\n });\n\n program\n .command('tags')\n .description('import tags')\n .option('-in --group <groupId>', 'id of the tag group containing tags')\n .option('--label <label>', 'filter by tags that match this label')\n .option('-l --language <language>', 'find tags in the supplied language')\n .option('-i --id <ids...>', 'limit to the supplied tag group id(s)')\n .addOption(commit)\n .option(\n '-preserve --preserve-guids',\n 'include this flag when you are importing tags that you have previously exported and wish to update'\n )\n .addOption(concurrency)\n .addOption(ignoreErrors)\n .option(\n '--save',\n \"save the tags we're migrating instead of the migration preview (used with --output)\"\n )\n .addHelpText(\n 'after',\n `\n Example call:\n > import tags --source-cms example-dev --source-project-id microsite --group example\n > import tags --from-file myImportData.json --preserve-guids\n `\n )\n .action(async opts => {\n await cliCommand(\n ['import', 'tags'],\n opts,\n mapContensisOpts(opts)\n ).ImportTags({\n commit: opts.commit,\n fromFile: opts.fromFile,\n getBy: {\n groupId: opts.group,\n id: opts.id?.length === 1 ? opts.id[0] : undefined,\n ids: opts.id?.length > 1 ? opts.id : undefined,\n label: opts.label,\n language: opts.language,\n },\n save: opts.save,\n });\n });\n\n return program;\n};\n\nexport const get = makeImportCommand();\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -202,9 +202,10 @@ ${import_logger.Logger.errorText(">>")} Available commands:`,
|
|
|
202
202
|
noEnv: () => `No Contensis environment set, connect to your Contensis cloud instance using "contensis connect {cms alias}"`
|
|
203
203
|
},
|
|
204
204
|
entries: {
|
|
205
|
-
imported: (env, commit, entries, nodes = 0) => LogMessages.migrate.imported(env, commit, {
|
|
205
|
+
imported: (env, commit, entries, nodes = 0, tags = 0) => LogMessages.migrate.imported(env, commit, {
|
|
206
206
|
entry: entries,
|
|
207
|
-
node: nodes
|
|
207
|
+
node: nodes,
|
|
208
|
+
tag: tags
|
|
208
209
|
}),
|
|
209
210
|
failedImport: (env) => `[${env}] Unable to import entries`,
|
|
210
211
|
update: {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/localisation/en-GB.ts"],
|
|
4
|
-
"sourcesContent": ["import {\n BlockActionType,\n BlockRunningStatus,\n MigrateModelsResult,\n MigrateStatus,\n} from 'migratortron';\nimport pl from 'pluralize';\nimport { GitHelper } from '~/util/git';\nimport { Logger } from '~/util/logger';\nimport { winSlash } from '~/util/os';\n\nexport const LogMessages = {\n app: {\n contensis: () => 'Contensis',\n quit: () => `Goodbye \uD83D\uDC4B\\n`,\n startup: (version: string) =>\n `v${version} \u00A9 2001-${new Date().getFullYear()} Zengenti \uD83C\uDDEC\uD83C\uDDE7. \\n - Creators of Contensis and purveyors of other fine software\\n\\n\uD83D\uDC4B Welcome to the contensis-cli\\n`,\n help: () =>\n 'Press [CTRL]+[C] or type \"quit\" to return to your system shell\\nPress [TAB] for suggestions\\n',\n suggestions: () =>\n `\\n${Logger.errorText('>>')} Press [TAB] for suggestions\\n`,\n autocomplete: () => `\\n${Logger.errorText('>>')} Available commands:`,\n unknownError: () => `Something went wrong...`,\n fileOutput: (format = 'json', path?: string) =>\n `Output ${format} file: ${Logger.infoText(path)}\\n`,\n noFileOutput: () => `No output written\\n`,\n },\n command: {\n notKnown: (command: string) => `${command} is not known`,\n },\n envs: {\n found: (num: number) =>\n `Environments store found containing ${pl('environment', num, true)}`,\n notFound: (alias: string) =>\n `Environment ${Logger.highlightText(alias)} was not found in session cache`,\n removed: (alias: string) =>\n `Removed environment ${Logger.highlightText(alias)} from session cache`,\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 commitTip: () => `Add --commit flag to commit the previewed changes`,\n preview: (verb = 'IMPORT') => `\uD83D\uDD0D ${verb} PREVIEW \uD83D\uDD2D`,\n commit: (verb = 'IMPORT') => `COMMITTING ${verb} \u2728\u2604\uFE0F `,\n imported: (\n env: string,\n commit: boolean,\n entities: { [noun: string]: number }\n ) =>\n `${commit ? `Imported` : `Will import`} ${Object.entries(entities)\n .map(([noun, count]) => pl(noun, count, true))\n .join(' and ')} into ${env} environment`,\n\n models: {\n result: (\n status: keyof MigrateModelsResult['project']['contentTypes']\n ) => {\n switch (status) {\n case 'created':\n case 'updated':\n return Logger.successText;\n case 'errors':\n return Logger.errorText;\n default:\n return Logger.infoText;\n }\n },\n },\n status: (status: MigrateStatus) => {\n switch (status) {\n case 'no change':\n return Logger.successText;\n case 'create':\n case 'two-pass':\n case 'update':\n case 'delete':\n return Logger.warningText;\n case 'error':\n case 'not found':\n return Logger.errorText;\n default:\n return Logger.infoText;\n }\n },\n },\n models: {\n list: (projectId: string) =>\n `Content models in ${Logger.highlightText(projectId)}:`,\n noList: (projectId: string) =>\n `[${projectId}] Cannot retrieve content models`,\n get: (projectId: string, id: string) =>\n `[${projectId}] Content models ${Logger.infoText(`[ ${id} ]`)}`,\n failedGet: (projectId: string, id: string) =>\n `[${projectId}] Unable to get content models ${Logger.highlightText(id)}`,\n },\n nodes: {\n imported: (env: string, commit: boolean, count: number) =>\n LogMessages.migrate.imported(env, commit, { node: count }),\n failedImport: (env: string) => `[${env}] Unable to import nodes`,\n removed: (env: string, commit: boolean, root: string) =>\n `[${env}] ${commit ? `Deleted` : `Will delete`} nodes at ${root}`,\n failedRemove: (env: string) => `[${env}] Unable to delete nodes`,\n notFound: (env: string) => `[${env}] Nodes were not found `,\n commitTip: () => `Add --commit flag to commit the previewed changes`,\n failedGet: (projectId: string) =>\n `[${projectId}] Cannot retrieve nodes from Site view`,\n get: (projectId: string, root: string, depth: number) =>\n `[${projectId}] Site view nodes at: ${Logger.highlightText(root)}${\n depth ? ` to a depth of ${depth}` : ``\n }\\n`,\n noChange: (env: string) => `[${env}] No changes to be made`,\n },\n contenttypes: {\n list: (projectId: string) =>\n `Content types in ${Logger.highlightText(projectId)}:`,\n get: (projectId: string, id: string) =>\n `[${projectId}] Content type ${Logger.highlightText(id)}`,\n failedGet: (projectId: string, id: string) =>\n `[${projectId}] Unable to get content type ${Logger.highlightText(id)}`,\n created: (projectId: string, id: string, status?: string) =>\n `[${projectId}] Content type ${status}d ${Logger.highlightText(id)}`,\n removed: (env: string, id: string, commit: boolean) =>\n `[${env}] ${\n commit ? `Deleted` : `Will delete`\n } content type(s) ${Logger.highlightText(id)}`,\n failedRemove: (env: string, id: string) =>\n `[${env}] Unable to delete content type(s) ${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(s) ${Logger.highlightText(id)}`,\n failedRemove: (env: string, id: string) =>\n `[${env}] Unable to delete component(s) ${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, entries: number, nodes = 0) =>\n LogMessages.migrate.imported(env, commit, {\n entry: entries,\n node: nodes,\n }),\n failedImport: (env: string) => `[${env}] Unable to import entries`,\n update: {\n preview: () => LogMessages.migrate.preview('UPDATE FIELD'),\n commit: () => LogMessages.migrate.preview('FIELD UPDATES'),\n success: (env: string, commit: boolean, entries: number, nodes = 0) =>\n `${commit ? `Updated` : `Will update`} ${pl('entry', entries, true)}${\n nodes > 0 ? ` and ${pl('node', nodes, true)}` : ''\n } in ${env} environment`,\n failed: (env: string) => `[${env}] Unable to update any entries`,\n },\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 noChange: (env: string) => `[${env}] No changes to be made`,\n },\n keys: {\n list: (env: string) => `[${env}] API keys:`,\n noList: (env: string) => `[${env}] Cannot retrieve API keys`,\n created: (env: string, name: string) =>\n `[${env}] Created API key ${Logger.highlightText(name)}`,\n tip: () =>\n `Assign your new key to a role with \"set role assignments\", or create a new role with \"create role\"`,\n failedCreate: (env: string, name: string) =>\n `[${env}] Unable to create API key ${Logger.highlightText(name)}`,\n failedUpdate: (env: string, name: string) =>\n `[${env}] Unable to update API key ${Logger.highlightText(name)}`,\n removed: (env: string, id: string) =>\n `[${env}] Deleted API key ${Logger.highlightText(id)}`,\n failedRemove: (env: string, id: string) =>\n `[${env}] Unable to delete API key ${Logger.highlightText(id)}`,\n },\n proxies: {\n list: (env: string, projectId: string | undefined) =>\n `[${env}] Retrieved proxies in project ${projectId}:`,\n noList: (env: string, projectId: string | undefined) =>\n `[${env}] Cannot retrieve proxies in project ${projectId}`,\n // noneExist: () => `Create a role with \"create renderer\"`,\n failedGet: (env: string, name: string, projectId: string) =>\n `[${env}] Unable to find proxy ${Logger.highlightText(\n name\n )} in project ${projectId}`,\n created: (env: string, name: string, projectId: string) =>\n `[${env}] Created proxy ${Logger.highlightText(\n name\n )} in project ${projectId}\\n`,\n failedCreate: (env: string, name: string, projectId: string) =>\n `[${env}] Unable to create proxy ${Logger.highlightText(\n name\n )} in project ${projectId}`,\n setPayload: () => `Updating proxy with details\\n`,\n set: () => `Succesfully updated proxy\\n`,\n failedSet: (env: string, name: string, projectId: string) =>\n `[${env}] Unable to update proxy ${Logger.highlightText(\n name\n )} in project ${projectId}`,\n removed: (env: string, id: string, projectId: string) =>\n `[${env}] Deleted proxy ${Logger.highlightText(\n id\n )} in project ${projectId}\\n`,\n failedRemove: (env: string, id: string, projectId: string) =>\n `[${env}] Unable to delete proxy ${Logger.highlightText(\n id\n )} in project ${projectId}`,\n },\n renderers: {\n list: (env: string, projectId: string | undefined) =>\n `[${env}] Retrieved renderers in project ${projectId}:`,\n noList: (env: string, projectId: string | undefined) =>\n `[${env}] Cannot retrieve renderers in project ${projectId}`,\n // noneExist: () => `Create a role with \"create renderer\"`,\n failedGet: (env: string, name: string, projectId: string) =>\n `[${env}] Unable to find renderer ${Logger.highlightText(\n name\n )} in project ${projectId}`,\n created: (env: string, name: string, projectId: string) =>\n `[${env}] Created renderer ${Logger.highlightText(\n name\n )} in project ${projectId}\\n`,\n failedCreate: (env: string, name: string, projectId: string) =>\n `[${env}] Unable to create renderer ${Logger.highlightText(\n name\n )} in project ${projectId}`,\n setPayload: () => `Updating renderer with details\\n`,\n set: () => `Succesfully updated renderer\\n`,\n failedSet: (env: string, name: string, projectId: string) =>\n `[${env}] Unable to update renderer ${Logger.highlightText(\n name\n )} in project ${projectId}`,\n removed: (env: string, id: string, projectId: string) =>\n `[${env}] Deleted renderer ${Logger.highlightText(\n id\n )} in project ${projectId}\\n`,\n failedRemove: (env: string, id: string, projectId: string) =>\n `[${env}] Unable to delete renderer ${Logger.highlightText(\n id\n )} in project ${projectId}`,\n },\n roles: {\n list: (env: string) => `[${env}] Retrieved roles`,\n noList: (env: string) => `[${env}] Cannot retrieve roles`,\n noneExist: () => `Create a role with \"create role\"`,\n failedGet: (env: string, name: string) =>\n `[${env}] Unable to find role ${Logger.highlightText(name)}`,\n created: (env: string, name: string) =>\n `[${env}] Created role ${Logger.highlightText(name)}\\n`,\n tip: () =>\n `Give access to your role with \"set role assignments\", allow your role to do things with \"set role permissions\"`,\n failedCreate: (env: string, name?: string) =>\n `[${env}] Unable to create role ${Logger.highlightText(name)}`,\n setPayload: () => `Updating role with details\\n`,\n set: () => `Succesfully updated role\\n`,\n failedSet: (env: string, name?: string) =>\n `[${env}] Unable to update role ${Logger.highlightText(name)}`,\n removed: (env: string, id: string) =>\n `[${env}] Deleted role ${Logger.highlightText(id)}\\n`,\n failedRemove: (env: string, id: string) =>\n `[${env}] Unable to delete role ${Logger.highlightText(id)}`,\n },\n taggroups: {\n list: (env: string, length: number) =>\n `[${env}] Retrieved ${pl('tag group', length, true)}`,\n noList: (env: string) => `[${env}] Cannot retrieve tag groups`,\n noneExist: () => `Create a tag group with \"create taggroup <name>\"`,\n imported: (env: string, commit: boolean, groups: number, tags: number) =>\n LogMessages.migrate.imported(env, commit, {\n 'tag group': groups,\n tag: tags,\n }),\n failedGet: (env: string, name: string) =>\n `[${env}] Unable to find a tag group ${Logger.highlightText(name)}`,\n created: (env: string, name: string) =>\n `[${env}] Created tag group ${Logger.highlightText(name)}\\n`,\n tip: () =>\n `Give access to your role with \"set role assignments\", allow your role to do things with \"set role permissions\"`,\n failedCreate: (env: string, name?: string) =>\n `[${env}] Unable to create ${name ? `tag group ${Logger.highlightText(name)}` : 'tag groups'}`,\n removed: (env: string, id: string, commit: boolean) =>\n `[${env}] ${\n commit ? `Deleted` : `Will delete`\n } tag group ${Logger.highlightText(id)}\\n`,\n failedRemove: (env: string, id: string) =>\n `[${env}] Unable to delete tag group ${Logger.highlightText(id)}`,\n },\n tags: {\n list: (env: string, length: number) =>\n `[${env}] Retrieved ${pl('tag', length, true)}`,\n noList: (env: string) => `[${env}] Cannot retrieve tags`,\n noneExist: () =>\n `Create a tag with \"create tag in <groupId> <tag label(s)...>\"`,\n imported: (env: string, commit: boolean, tags: number) =>\n LogMessages.migrate.imported(env, commit, { tag: tags }),\n failedGet: (env: string) => `[${env}] Unable to find tags`,\n created: (env: string, name: string) =>\n `[${env}] Created tag ${Logger.highlightText(name)}\\n`,\n failedCreate: (env: string, name?: string) =>\n `[${env}] Unable to create ${name ? `tag ${Logger.highlightText(name)}` : 'tags'}`,\n removed: (env: string, length: number, commit: boolean) =>\n `[${env}] ${\n !length\n ? 'No tags to delete'\n : `${commit ? `Deleted` : `Will delete`} ${pl('tag', length, true)}\\n`\n }`,\n failedRemove: (env: string, length: number) =>\n `[${env}] Unable to delete tags with ${pl('error', length)}`,\n noChange: (env: string) => `[${env}] No changes to be made`,\n },\n blocks: {\n runningStatus: (status: BlockRunningStatus | 'broken') => {\n switch (status) {\n case 'available':\n return Logger.successText(status);\n case 'pending':\n case 'starting':\n case 'stopped':\n return Logger.warningText(status);\n case 'degraded':\n case 'faulted':\n case 'broken':\n return Logger.errorText(status);\n default:\n return Logger.infoText(status);\n }\n },\n get: (\n id: string,\n branch: string,\n version: string,\n env: string,\n projectId?: string\n ) =>\n `[${env}] ${\n version && version !== 'latest'\n ? `Found v${version}`\n : 'Latest block versions'\n } for ${Logger.infoText(`${branch}/`)}${Logger.highlightText(\n id\n )} in project ${projectId}\\n`,\n noGet: (\n id: string,\n branch: string,\n version: string,\n env: string,\n projectId?: string\n ) =>\n `[${env}] Did not find ${\n version ? `v${version}` : 'any block versions'\n } for ${Logger.highlightText(id)} in branch ${Logger.infoText(\n branch\n )} in ${Logger.infoText(projectId)} project`,\n noGetTip: () =>\n `Check the available blocks and branches in this project by running \"list blocks\"`,\n list: (env: string, projectId?: string) =>\n `[${env}] Blocks in project ${projectId}\\n`,\n noList: (env: string, projectId?: string) =>\n `[${env}] Cannot retrieve blocks in project ${projectId}`,\n getLogs: (id: string, branch: string, env: string, projectId?: string) =>\n `[${env}] Requesting logs from block ${Logger.highlightText(\n id\n )} in branch ${branch} in project ${projectId}`,\n failedGetLogs: (id: string, env: string, projectId?: string) =>\n `[${env}] Unable to fetch block logs for ${Logger.highlightText(\n id\n )} in project ${projectId}`,\n tryPush: (id: string, branch: string, env: string, projectId?: string) =>\n `[${env}] Request to push block ${Logger.highlightText(\n id\n )} in branch ${branch} in project ${projectId}`,\n pushed: (id: string, branch: string, env: string, projectId?: string) =>\n `[${env}] Pushed block ${Logger.highlightText(\n id\n )} in branch ${branch} in project ${projectId}`,\n failedPush: (id: string, env: string, projectId?: string) =>\n `[${env}] Unable to push block ${Logger.highlightText(\n id\n )} in project ${projectId}`,\n failedParsingVersion: () =>\n `Did not find a \"version.versionNo\" in response`,\n actionComplete: (\n action: BlockActionType,\n id: string,\n env: string,\n projectId?: string\n ) =>\n `[${env}] Action ${Logger.highlightText(\n action\n )} on ${Logger.highlightText(\n id\n )} in project ${projectId} requested successfully`,\n actionFailed: (\n action: BlockActionType,\n id: string,\n env: string,\n projectId?: string\n ) =>\n `[${env}] Problem executing ${action} on block ${Logger.highlightText(\n id\n )} in project ${projectId}`,\n deleted: (id: string, env: string, projectId?: string) =>\n `[${env}] Deleted block ${Logger.highlightText(\n id\n )} in project ${projectId}`,\n failedDelete: (id: string, env: string, projectId?: string) =>\n `[${env}] Unable to delete block ${Logger.highlightText(\n id\n )} in project ${projectId}`,\n stopFollow: (id: string, env: string, projectId?: string) =>\n `[${env}]\\n\\n \uD83D\uDC4C stop fetching new ${Logger.highlightText(\n id\n )} logs in project ${projectId}`,\n timeoutFollow: (id: string, env: string, projectId?: string) =>\n `[${env}]\\n\\n \uD83E\uDD0F pausing fetching new ${Logger.highlightText(\n id\n )} logs in project ${projectId} due to too many requests`,\n },\n webhooks: {\n list: (env: string) => `[${env}] Webhook subscriptions:`,\n noList: (env: string) => `[${env}] Cannot retrieve webhook subscriptions`,\n noneExist: () => `No webhook subscriptions exist`,\n created: (env: string, name: string) =>\n `[${env}] Created Webhook subscription ${Logger.highlightText(name)}`,\n failedCreate: (env: string, name: string) =>\n `[${env}] Unable to create Webhook subscription ${Logger.highlightText(\n name\n )}`,\n deleted: (env: string, id: string) =>\n `[${env}] Deleted Webhook subscription ${Logger.highlightText(id)}`,\n failedDelete: (env: string, id: string) =>\n `[${env}] Unable to delete Webhook subscription ${Logger.highlightText(\n id\n )}`,\n },\n workflows: {\n list: (env: string) => `[${env}] Retrieved workflows`,\n noList: (env: string) => `[${env}] Cannot retrieve workflows`,\n noneExist: () => `No workflows found`,\n failedGet: (env: string, name: string) =>\n `[${env}] Unable to find workflow ${Logger.highlightText(name)}`,\n },\n devinit: {\n intro: () => `Contensis developer environment initialisation`,\n //`This will initialise your local working directory to develop with the current connected Contensis project`,\n projectDetails: (\n name: string,\n env: string,\n projectId: string,\n blockId: string,\n git: GitHelper\n ) =>\n `\n Project: ${Logger.standardText(name)}\n - Home: ${Logger.standardText(git.gitcwd())}\n - Repository: ${Logger.standardText(git.home)} \n - Block id: ${Logger.highlightText(blockId)}\n \n Connect to Contensis instance: ${Logger.standardText(env)}\n - Project id: ${Logger.standardText(projectId)}\n `,\n developmentKey: (name: string, existing: boolean) =>\n ` - ${\n !existing ? 'Create development API key' : 'Development API key found'\n }: ${Logger[!existing ? 'highlightText' : 'standardText'](name)}`,\n deploymentKey: (name: string, existing: boolean) =>\n ` - ${\n !existing ? 'Create deployment API key' : 'Deployment API key found'\n }: ${Logger[!existing ? 'highlightText' : 'standardText'](name)}`,\n ciIntro: (git: GitHelper, location: 'git' | 'env') =>\n `We will create API keys with permissions to use this project with Contensis, and add a job to your CI that will deploy a container build.\n ${\n location === 'git'\n ? `We will ask you to add secrets/variables to your git repository to give your workflow permission to push a Block to Contensis.\n ${Logger.infoText(`You could visit ${git.secretsUri} to check that you can see repository settings, \n a page not found generally indicates you need to ask the repo owner for permission to add repository secrets, \n or ask the repo owner to add these secrets for you.`)}`\n : ''\n }`,\n ciDetails: (filename: string) =>\n `Add push-block job to CI file: ${Logger.highlightText(filename)}\\n`,\n ciMultipleChoices: () =>\n `Multiple GitHub workflow files found\\n${Logger.infoText(\n `Tell us which GitHub workflow builds a container image after each push:`\n )}`,\n ciMultipleBuildJobChoices: () =>\n `Multiple build jobs found in workflow\\n${Logger.infoText(\n `Choose the build job that produces a fresh container image to push to a block:`\n )}`,\n ciMultipleJobChoices: () =>\n `Other jobs found in workflow\\n${Logger.infoText(\n `Choose the job that produces a fresh container image we can push to a block:`\n )}`,\n ciMultipleAppImageVarChoices: () =>\n `Do one of these variables point to your tagged app image?\\n${Logger.infoText(\n `we have included a default choice - ensure your build image is tagged exactly the same as this`\n )}`,\n ciEnterOwnAppImagePrompt: (git: GitHelper) =>\n `Tell us the registry uri your app image is tagged and pushed with (\u23CE accept default) \\n${Logger.infoText(\n `Tip: ${\n git.type === 'github'\n ? `GitHub context variables available\\nhttps://docs.github.com/en/actions/learn-github-actions/variables#using-contexts-to-access-variable-values`\n : `GitLab CI/CD variables available\\nhttps://docs.gitlab.com/ee/ci/variables/`\n }`\n )}\\n`,\n confirm: () =>\n `Confirm these details are correct so we can make changes to your project`,\n createDevKey: (keyName: string, existing: boolean) =>\n `${\n !existing ? 'Created' : 'Checked permissions for'\n } development API key ${Logger.standardText(keyName)}`,\n createDeployKey: (keyName: string, existing: boolean) =>\n `${\n !existing ? 'Created' : 'Checked permissions for'\n } deployment API key ${Logger.standardText(keyName)}`,\n createKeyFail: (keyName: string, existing: boolean) =>\n `Failed to ${\n !existing ? 'create' : 'update'\n } API key ${Logger.highlightText(keyName)}`,\n writeEnvFile: () => `Written .env file to project home directory`,\n useEnvFileTip: () =>\n `You should alter existing project code that connects a Contensis client to use the variables from this file`,\n writeCiFile: (ciFilePath: string) =>\n `Updated CI file ${Logger.standardText(winSlash(ciFilePath))}`,\n ciFileNoChanges: (ciFilePath: string) =>\n `No updates needed for CI file ${Logger.standardText(\n winSlash(ciFilePath)\n )}`,\n ciBlockTip: (blockId: string, env: string, projectId: string) =>\n `A job is included to deploy your built container image to ${Logger.standardText(\n projectId\n )} at ${Logger.standardText(env)} in a block called ${Logger.standardText(\n blockId\n )}`,\n addGitSecretsIntro: () =>\n `We have created an API key that allows you to deploy your app image to a Contensis Block but we need you to add these details to your GitLab repository.`,\n addGitSecretsHelp: (git: GitHelper, id?: string, secret?: string) =>\n `Add secrets or variables in your repository's settings page\\n\\nGo to ${Logger.highlightText(\n git.secretsUri\n )}\\n\\n${\n git.type === 'github'\n ? `Add a \"New repository secret\"`\n : `Expand \"Variables\" and hit \"Add variable\"`\n }\\n\\n ${\n git.type === 'github' ? `Secret name:` : `Key:`\n } ${Logger.highlightText(`CONTENSIS_CLIENT_ID`)}\\n ${\n git.type === 'github' ? `Secret:` : `Value:`\n } ${Logger.standardText(\n id\n )}\\n\\n ${`Add one more secret/variable to the repository`}\\n\\n ${\n git.type === 'github' ? `Secret name:` : `Key:`\n } ${Logger.highlightText(`CONTENSIS_SHARED_SECRET`)}\\n ${\n git.type === 'github' ? `Secret:` : `Value:`\n } ${Logger.standardText(secret)}`,\n accessTokenFetch: () =>\n `Please wait, fetching Delivery API access token \u23F3`,\n accessTokenSuccess: (token: string) =>\n `Successfully fetched Delivery API token\\n ${Logger.infoText(token)}`,\n accessTokenFailed: () =>\n `Something went wrong! If the problem persists, please contact our support team \uD83D\uDEDF`,\n accessTokenPermission: () =>\n `We need permission to fetch your Delivery API token, please try again \u26A0\uFE0F`,\n clientDetailsLocation: () =>\n `Which option would you like to use for storing your client ID and secret`,\n clientDetailsInGit: (git: GitHelper) =>\n `${\n git.type === 'github' ? 'GitHub' : 'GitLab'\n } variables (recommended for public repositories)`,\n clientDetailsInEnv: () =>\n `Env variables (recommended for private repositories)`,\n success: () => `Contensis developer environment initialisation complete`,\n partialSuccess: () =>\n `Contensis developer environment initialisation completed with errors`,\n failed: () => `Contensis developer environment initialisation failed`,\n dryRun: () =>\n `Contensis developer environment initialisation dry run completed`,\n dryRunKeyMessage: (dryRun: boolean) =>\n dryRun ? '<< not created: dry-run >>' : undefined,\n noChanges: () =>\n `No changes were made to your project, run the command again without the ${Logger.highlightText(\n '--dry-run'\n )} flag to update your project with these changes`,\n startProjectTip: () =>\n `Start up your project in the normal way for development`,\n blockIdQuestion: () =>\n `Please enter your block id, this should be unquie and in kebab case e.g ${Logger.highlightText(\n 'my-awesome-website'\n )}`,\n },\n devrequests: {\n install: {\n notFound: (repo: string) =>\n `Could not find a release in ${repo} repo - please check github`,\n download: (repo: string, version: string) => `Found release ${version}`,\n downloading: (repo: string, version: string) =>\n `Downloading ${repo} ${version}`,\n downloadFail: (repo: string, version: string) =>\n `Problem downloading release ${version} from ${repo}`,\n downloaded: (repo: string, version: string) =>\n `Downloaded ${repo} ${version}`,\n applyUpdate: (version: string, existing: string) =>\n `Use updated version ${version} ${Logger.infoText(\n `(replaces ${existing})`\n )}?`,\n },\n launch: () => `Launching request handler for local development`,\n overrideBlock: () => `Which block will you be running?`,\n overrideUri: () => `How to access your development site`,\n spawn: () =>\n `If you see a firewall popup requesting network access, it is safe to approve`,\n exited: (code: number | null) =>\n `Request handler exited with code ${code}\\n`,\n errored: (error: Error) =>\n `Could not launch request handler due to error \\n${error}`,\n },\n};\n"],
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,uBAAe;AAEf,oBAAuB;AACvB,gBAAyB;AAElB,MAAM,cAAc;AAAA,EACzB,KAAK;AAAA,IACH,WAAW,MAAM;AAAA,IACjB,MAAM,MAAM;AAAA;AAAA,IACZ,SAAS,CAAC,YACR,IAAI,OAAO,eAAW,oBAAI,KAAK,GAAE,YAAY,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA,IAChD,MAAM,MACJ;AAAA,IACF,aAAa,MACX;AAAA,EAAK,qBAAO,UAAU,IAAI,CAAC;AAAA;AAAA,IAC7B,cAAc,MAAM;AAAA,EAAK,qBAAO,UAAU,IAAI,CAAC;AAAA,IAC/C,cAAc,MAAM;AAAA,IACpB,YAAY,CAAC,SAAS,QAAQ,SAC5B,UAAU,MAAM,UAAU,qBAAO,SAAS,IAAI,CAAC;AAAA;AAAA,IACjD,cAAc,MAAM;AAAA;AAAA,EACtB;AAAA,EACA,SAAS;AAAA,IACP,UAAU,CAAC,YAAoB,GAAG,OAAO;AAAA,EAC3C;AAAA,EACA,MAAM;AAAA,IACJ,OAAO,CAAC,QACN,2CAAuC,iBAAAA,SAAG,eAAe,KAAK,IAAI,CAAC;AAAA,IACrE,UAAU,CAAC,UACT,eAAe,qBAAO,cAAc,KAAK,CAAC;AAAA,IAC5C,SAAS,CAAC,UACR,uBAAuB,qBAAO,cAAc,KAAK,CAAC;AAAA,IACpD,KAAK,MACH;AAAA,EACJ;AAAA,EACA,SAAS;AAAA,IACP,SAAS;AAAA,MACP,MAAM,MAAM;AAAA,MACZ,SAAS,MAAM;AAAA;AAAA,IACjB;AAAA,IACA,MAAM;AAAA,MACJ,OAAO;AAAA,QACL,MAAM,MAAM;AAAA,QACZ,aAAa,MAAM;AAAA,MACrB;AAAA,IACF;AAAA,IACA,OAAO,MAAM;AAAA,IACb,aAAa,CAAC,KAAa,WACzB,gBAAgB,GAAG,GAAG,SAAS,aAAa,MAAM,KAAK,EAAE;AAAA,IAC3D,WAAW,CAAC,QAAgB,+BAA+B,GAAG;AAAA,IAC9D,MAAM,MACJ;AAAA,IACF,UAAU,MAAM;AAAA,IAChB,YAAY,MAAM;AAAA,IAClB,KAAK,MACH;AAAA,EACJ;AAAA,EACA,OAAO;AAAA,IACL,SAAS;AAAA,MACP,MAAM,MAAM;AAAA,MACZ,OAAO,MAAM;AAAA,MACb,SAAS,MACP;AAAA;AAAA;AAAA;AAAA,IACJ;AAAA,IACA,MAAM;AAAA,MACJ,MAAM;AAAA,QACJ,MAAM,MAAM;AAAA,QACZ,aAAa,MAAM;AAAA,MACrB;AAAA,MACA,UAAU;AAAA,QACR,MAAM,MAAM;AAAA,QACZ,aAAa,MACX;AAAA,MACJ;AAAA,MACA,QAAQ;AAAA,QACN,MAAM,MAAM;AAAA,QACZ,aAAa,MACX;AAAA,MACJ;AAAA,IACF;AAAA,IACA,gBAAgB,CAAC,KAAc,WAC7B,SACI,sBAAsB,MAAM,IAAI,GAAG,MACnC;AAAA,IACN,QAAQ,CAAC,KAAa,WACpB,sBAAsB,GAAG,OAAO,MAAM;AAAA,IACxC,SAAS,CAAC,KAAa,WACrB,QAAQ,MAAM,iBAAiB,GAAG;AAAA;AAAA,IACpC,kBAAkB,MAChB;AAAA,IACF,OAAO,MAAM;AAAA,IACb,UAAU,MAAM;AAAA,EAClB;AAAA,EACA,UAAU;AAAA,IACR,MAAM,MAAM;AAAA,IACZ,QAAQ,MAAM;AAAA,IACd,KAAK,CAAC,cACJ,6BAA6B,qBAAO,cAAc,SAAS,CAAC;AAAA,IAC9D,WAAW,CAAC,cACV,WAAW,qBAAO,cAAc,SAAS,CAAC;AAAA,IAC5C,KAAK,MACH;AAAA,IACF,SAAS,CAAC,KAAa,OACrB,IAAI,GAAG,qBAAqB,qBAAO,cAAc,EAAE,CAAC;AAAA,IACtD,cAAc,CAAC,KAAa,OAC1B,IAAI,GAAG,8BAA8B,qBAAO,cAAc,EAAE,CAAC;AAAA,IAC/D,SAAS,CAAC,KAAa,OACrB,IAAI,GAAG,qBAAqB,qBAAO,cAAc,EAAE,CAAC;AAAA,IACtD,cAAc,CAAC,KAAa,OAC1B,IAAI,GAAG,8BAA8B,qBAAO,cAAc,EAAE,CAAC;AAAA,EACjE;AAAA,EACA,SAAS;AAAA,IACP,WAAW,MAAM;AAAA,IACjB,SAAS,CAAC,OAAO,aAAa,aAAM,IAAI;AAAA,IACxC,QAAQ,CAAC,OAAO,aAAa,cAAc,IAAI;AAAA,IAC/C,UAAU,CACR,KACA,QACA,aAEA,GAAG,SAAS,aAAa,aAAa,IAAI,OAAO,QAAQ,QAAQ,EAC9D,IAAI,CAAC,CAAC,MAAM,KAAK,UAAM,iBAAAA,SAAG,MAAM,OAAO,IAAI,CAAC,EAC5C,KAAK,OAAO,CAAC,SAAS,GAAG;AAAA,IAE9B,QAAQ;AAAA,MACN,QAAQ,CACN,WACG;AACH,gBAAQ,QAAQ;AAAA,UACd,KAAK;AAAA,UACL,KAAK;AACH,mBAAO,qBAAO;AAAA,UAChB,KAAK;AACH,mBAAO,qBAAO;AAAA,UAChB;AACE,mBAAO,qBAAO;AAAA,QAClB;AAAA,MACF;AAAA,IACF;AAAA,IACA,QAAQ,CAAC,WAA0B;AACjC,cAAQ,QAAQ;AAAA,QACd,KAAK;AACH,iBAAO,qBAAO;AAAA,QAChB,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AACH,iBAAO,qBAAO;AAAA,QAChB,KAAK;AAAA,QACL,KAAK;AACH,iBAAO,qBAAO;AAAA,QAChB;AACE,iBAAO,qBAAO;AAAA,MAClB;AAAA,IACF;AAAA,EACF;AAAA,EACA,QAAQ;AAAA,IACN,MAAM,CAAC,cACL,qBAAqB,qBAAO,cAAc,SAAS,CAAC;AAAA,IACtD,QAAQ,CAAC,cACP,IAAI,SAAS;AAAA,IACf,KAAK,CAAC,WAAmB,OACvB,IAAI,SAAS,oBAAoB,qBAAO,SAAS,KAAK,EAAE,IAAI,CAAC;AAAA,IAC/D,WAAW,CAAC,WAAmB,OAC7B,IAAI,SAAS,kCAAkC,qBAAO,cAAc,EAAE,CAAC;AAAA,EAC3E;AAAA,EACA,OAAO;AAAA,IACL,UAAU,CAAC,KAAa,QAAiB,UACvC,YAAY,QAAQ,SAAS,KAAK,QAAQ,EAAE,MAAM,MAAM,CAAC;AAAA,IAC3D,cAAc,CAAC,QAAgB,IAAI,GAAG;AAAA,IACtC,SAAS,CAAC,KAAa,QAAiB,SACtC,IAAI,GAAG,KAAK,SAAS,YAAY,aAAa,aAAa,IAAI;AAAA,IACjE,cAAc,CAAC,QAAgB,IAAI,GAAG;AAAA,IACtC,UAAU,CAAC,QAAgB,IAAI,GAAG;AAAA,IAClC,WAAW,MAAM;AAAA,IACjB,WAAW,CAAC,cACV,IAAI,SAAS;AAAA,IACf,KAAK,CAAC,WAAmB,MAAc,UACrC,IAAI,SAAS,yBAAyB,qBAAO,cAAc,IAAI,CAAC,GAC9D,QAAQ,kBAAkB,KAAK,KAAK,EACtC;AAAA;AAAA,IACF,UAAU,CAAC,QAAgB,IAAI,GAAG;AAAA,EACpC;AAAA,EACA,cAAc;AAAA,IACZ,MAAM,CAAC,cACL,oBAAoB,qBAAO,cAAc,SAAS,CAAC;AAAA,IACrD,KAAK,CAAC,WAAmB,OACvB,IAAI,SAAS,kBAAkB,qBAAO,cAAc,EAAE,CAAC;AAAA,IACzD,WAAW,CAAC,WAAmB,OAC7B,IAAI,SAAS,gCAAgC,qBAAO,cAAc,EAAE,CAAC;AAAA,IACvE,SAAS,CAAC,WAAmB,IAAY,WACvC,IAAI,SAAS,kBAAkB,MAAM,KAAK,qBAAO,cAAc,EAAE,CAAC;AAAA,IACpE,SAAS,CAAC,KAAa,IAAY,WACjC,IAAI,GAAG,KACL,SAAS,YAAY,aACvB,oBAAoB,qBAAO,cAAc,EAAE,CAAC;AAAA,IAC9C,cAAc,CAAC,KAAa,OAC1B,IAAI,GAAG,sCAAsC,qBAAO,cAAc,EAAE,CAAC;AAAA,EACzE;AAAA,EACA,YAAY;AAAA,IACV,MAAM,CAAC,cACL,iBAAiB,qBAAO,cAAc,SAAS,CAAC;AAAA,IAClD,KAAK,CAAC,WAAmB,OACvB,IAAI,SAAS,eAAe,qBAAO,cAAc,EAAE,CAAC;AAAA,IACtD,WAAW,CAAC,WAAmB,OAC7B,IAAI,SAAS,6BAA6B,qBAAO,cAAc,EAAE,CAAC;AAAA,IACpE,SAAS,CAAC,WAAmB,IAAY,WACvC,IAAI,SAAS,eAAe,MAAM,KAAK,qBAAO,cAAc,EAAE,CAAC;AAAA,IACjE,SAAS,CAAC,KAAa,IAAY,WACjC,IAAI,GAAG,KACL,SAAS,YAAY,aACvB,iBAAiB,qBAAO,cAAc,EAAE,CAAC;AAAA,IAC3C,cAAc,CAAC,KAAa,OAC1B,IAAI,GAAG,mCAAmC,qBAAO,cAAc,EAAE,CAAC;AAAA,EACtE;AAAA,EACA,SAAS;AAAA,IACP,KAAK,CAAC,KAAa,kBACjB,IAAI,GAAG,oCAAoC,aAAa;AAAA,IAC1D,SAAS,CAAC,kBACR,2BAA2B,aAAa;AAAA,IAC1C,OAAO,MACL;AAAA,EACJ;AAAA,EACA,SAAS;AAAA,IACP,UAAU,CAAC,KAAa,QAAiB,SAAiB,QAAQ,MAChE,YAAY,QAAQ,SAAS,KAAK,QAAQ;AAAA,MACxC,OAAO;AAAA,MACP,MAAM;AAAA,IACR,CAAC;AAAA,IACH,cAAc,CAAC,QAAgB,IAAI,GAAG;AAAA,IACtC,QAAQ;AAAA,MACN,SAAS,MAAM,YAAY,QAAQ,QAAQ,cAAc;AAAA,MACzD,QAAQ,MAAM,YAAY,QAAQ,QAAQ,eAAe;AAAA,MACzD,SAAS,CAAC,KAAa,QAAiB,SAAiB,QAAQ,MAC/D,GAAG,SAAS,YAAY,aAAa,QAAI,iBAAAA,SAAG,SAAS,SAAS,IAAI,CAAC,GACjE,QAAQ,IAAI,YAAQ,iBAAAA,SAAG,QAAQ,OAAO,IAAI,CAAC,KAAK,EAClD,OAAO,GAAG;AAAA,MACZ,QAAQ,CAAC,QAAgB,IAAI,GAAG;AAAA,IAClC;AAAA,IACA,SAAS,CAAC,KAAa,WACrB,IAAI,GAAG,KAAK,SAAS,YAAY,aAAa;AAAA,IAChD,cAAc,CAAC,QAAgB,IAAI,GAAG;AAAA,IACtC,UAAU,CAAC,QAAgB,IAAI,GAAG;AAAA,IAClC,UAAU,CAAC,QAAgB,IAAI,GAAG;AAAA,EACpC;AAAA,EACA,MAAM;AAAA,IACJ,MAAM,CAAC,QAAgB,IAAI,GAAG;AAAA,IAC9B,QAAQ,CAAC,QAAgB,IAAI,GAAG;AAAA,IAChC,SAAS,CAAC,KAAa,SACrB,IAAI,GAAG,qBAAqB,qBAAO,cAAc,IAAI,CAAC;AAAA,IACxD,KAAK,MACH;AAAA,IACF,cAAc,CAAC,KAAa,SAC1B,IAAI,GAAG,8BAA8B,qBAAO,cAAc,IAAI,CAAC;AAAA,IACjE,cAAc,CAAC,KAAa,SAC1B,IAAI,GAAG,8BAA8B,qBAAO,cAAc,IAAI,CAAC;AAAA,IACjE,SAAS,CAAC,KAAa,OACrB,IAAI,GAAG,qBAAqB,qBAAO,cAAc,EAAE,CAAC;AAAA,IACtD,cAAc,CAAC,KAAa,OAC1B,IAAI,GAAG,8BAA8B,qBAAO,cAAc,EAAE,CAAC;AAAA,EACjE;AAAA,EACA,SAAS;AAAA,IACP,MAAM,CAAC,KAAa,cAClB,IAAI,GAAG,kCAAkC,SAAS;AAAA,IACpD,QAAQ,CAAC,KAAa,cACpB,IAAI,GAAG,wCAAwC,SAAS;AAAA;AAAA,IAE1D,WAAW,CAAC,KAAa,MAAc,cACrC,IAAI,GAAG,0BAA0B,qBAAO;AAAA,MACtC;AAAA,IACF,CAAC,eAAe,SAAS;AAAA,IAC3B,SAAS,CAAC,KAAa,MAAc,cACnC,IAAI,GAAG,mBAAmB,qBAAO;AAAA,MAC/B;AAAA,IACF,CAAC,eAAe,SAAS;AAAA;AAAA,IAC3B,cAAc,CAAC,KAAa,MAAc,cACxC,IAAI,GAAG,4BAA4B,qBAAO;AAAA,MACxC;AAAA,IACF,CAAC,eAAe,SAAS;AAAA,IAC3B,YAAY,MAAM;AAAA;AAAA,IAClB,KAAK,MAAM;AAAA;AAAA,IACX,WAAW,CAAC,KAAa,MAAc,cACrC,IAAI,GAAG,4BAA4B,qBAAO;AAAA,MACxC;AAAA,IACF,CAAC,eAAe,SAAS;AAAA,IAC3B,SAAS,CAAC,KAAa,IAAY,cACjC,IAAI,GAAG,mBAAmB,qBAAO;AAAA,MAC/B;AAAA,IACF,CAAC,eAAe,SAAS;AAAA;AAAA,IAC3B,cAAc,CAAC,KAAa,IAAY,cACtC,IAAI,GAAG,4BAA4B,qBAAO;AAAA,MACxC;AAAA,IACF,CAAC,eAAe,SAAS;AAAA,EAC7B;AAAA,EACA,WAAW;AAAA,IACT,MAAM,CAAC,KAAa,cAClB,IAAI,GAAG,oCAAoC,SAAS;AAAA,IACtD,QAAQ,CAAC,KAAa,cACpB,IAAI,GAAG,0CAA0C,SAAS;AAAA;AAAA,IAE5D,WAAW,CAAC,KAAa,MAAc,cACrC,IAAI,GAAG,6BAA6B,qBAAO;AAAA,MACzC;AAAA,IACF,CAAC,eAAe,SAAS;AAAA,IAC3B,SAAS,CAAC,KAAa,MAAc,cACnC,IAAI,GAAG,sBAAsB,qBAAO;AAAA,MAClC;AAAA,IACF,CAAC,eAAe,SAAS;AAAA;AAAA,IAC3B,cAAc,CAAC,KAAa,MAAc,cACxC,IAAI,GAAG,+BAA+B,qBAAO;AAAA,MAC3C;AAAA,IACF,CAAC,eAAe,SAAS;AAAA,IAC3B,YAAY,MAAM;AAAA;AAAA,IAClB,KAAK,MAAM;AAAA;AAAA,IACX,WAAW,CAAC,KAAa,MAAc,cACrC,IAAI,GAAG,+BAA+B,qBAAO;AAAA,MAC3C;AAAA,IACF,CAAC,eAAe,SAAS;AAAA,IAC3B,SAAS,CAAC,KAAa,IAAY,cACjC,IAAI,GAAG,sBAAsB,qBAAO;AAAA,MAClC;AAAA,IACF,CAAC,eAAe,SAAS;AAAA;AAAA,IAC3B,cAAc,CAAC,KAAa,IAAY,cACtC,IAAI,GAAG,+BAA+B,qBAAO;AAAA,MAC3C;AAAA,IACF,CAAC,eAAe,SAAS;AAAA,EAC7B;AAAA,EACA,OAAO;AAAA,IACL,MAAM,CAAC,QAAgB,IAAI,GAAG;AAAA,IAC9B,QAAQ,CAAC,QAAgB,IAAI,GAAG;AAAA,IAChC,WAAW,MAAM;AAAA,IACjB,WAAW,CAAC,KAAa,SACvB,IAAI,GAAG,yBAAyB,qBAAO,cAAc,IAAI,CAAC;AAAA,IAC5D,SAAS,CAAC,KAAa,SACrB,IAAI,GAAG,kBAAkB,qBAAO,cAAc,IAAI,CAAC;AAAA;AAAA,IACrD,KAAK,MACH;AAAA,IACF,cAAc,CAAC,KAAa,SAC1B,IAAI,GAAG,2BAA2B,qBAAO,cAAc,IAAI,CAAC;AAAA,IAC9D,YAAY,MAAM;AAAA;AAAA,IAClB,KAAK,MAAM;AAAA;AAAA,IACX,WAAW,CAAC,KAAa,SACvB,IAAI,GAAG,2BAA2B,qBAAO,cAAc,IAAI,CAAC;AAAA,IAC9D,SAAS,CAAC,KAAa,OACrB,IAAI,GAAG,kBAAkB,qBAAO,cAAc,EAAE,CAAC;AAAA;AAAA,IACnD,cAAc,CAAC,KAAa,OAC1B,IAAI,GAAG,2BAA2B,qBAAO,cAAc,EAAE,CAAC;AAAA,EAC9D;AAAA,EACA,WAAW;AAAA,IACT,MAAM,CAAC,KAAa,WAClB,IAAI,GAAG,mBAAe,iBAAAA,SAAG,aAAa,QAAQ,IAAI,CAAC;AAAA,IACrD,QAAQ,CAAC,QAAgB,IAAI,GAAG;AAAA,IAChC,WAAW,MAAM;AAAA,IACjB,UAAU,CAAC,KAAa,QAAiB,QAAgB,SACvD,YAAY,QAAQ,SAAS,KAAK,QAAQ;AAAA,MACxC,aAAa;AAAA,MACb,KAAK;AAAA,IACP,CAAC;AAAA,IACH,WAAW,CAAC,KAAa,SACvB,IAAI,GAAG,gCAAgC,qBAAO,cAAc,IAAI,CAAC;AAAA,IACnE,SAAS,CAAC,KAAa,SACrB,IAAI,GAAG,uBAAuB,qBAAO,cAAc,IAAI,CAAC;AAAA;AAAA,IAC1D,KAAK,MACH;AAAA,IACF,cAAc,CAAC,KAAa,SAC1B,IAAI,GAAG,sBAAsB,OAAO,aAAa,qBAAO,cAAc,IAAI,CAAC,KAAK,YAAY;AAAA,IAC9F,SAAS,CAAC,KAAa,IAAY,WACjC,IAAI,GAAG,KACL,SAAS,YAAY,aACvB,cAAc,qBAAO,cAAc,EAAE,CAAC;AAAA;AAAA,IACxC,cAAc,CAAC,KAAa,OAC1B,IAAI,GAAG,gCAAgC,qBAAO,cAAc,EAAE,CAAC;AAAA,EACnE;AAAA,EACA,MAAM;AAAA,IACJ,MAAM,CAAC,KAAa,WAClB,IAAI,GAAG,mBAAe,iBAAAA,SAAG,OAAO,QAAQ,IAAI,CAAC;AAAA,IAC/C,QAAQ,CAAC,QAAgB,IAAI,GAAG;AAAA,IAChC,WAAW,MACT;AAAA,IACF,UAAU,CAAC,KAAa,QAAiB,SACvC,YAAY,QAAQ,SAAS,KAAK,QAAQ,EAAE,KAAK,KAAK,CAAC;AAAA,IACzD,WAAW,CAAC,QAAgB,IAAI,GAAG;AAAA,IACnC,SAAS,CAAC,KAAa,SACrB,IAAI,GAAG,iBAAiB,qBAAO,cAAc,IAAI,CAAC;AAAA;AAAA,IACpD,cAAc,CAAC,KAAa,SAC1B,IAAI,GAAG,sBAAsB,OAAO,OAAO,qBAAO,cAAc,IAAI,CAAC,KAAK,MAAM;AAAA,IAClF,SAAS,CAAC,KAAa,QAAgB,WACrC,IAAI,GAAG,KACL,CAAC,SACG,sBACA,GAAG,SAAS,YAAY,aAAa,QAAI,iBAAAA,SAAG,OAAO,QAAQ,IAAI,CAAC;AAAA,CACtE;AAAA,IACF,cAAc,CAAC,KAAa,WAC1B,IAAI,GAAG,oCAAgC,iBAAAA,SAAG,SAAS,MAAM,CAAC;AAAA,IAC5D,UAAU,CAAC,QAAgB,IAAI,GAAG;AAAA,EACpC;AAAA,EACA,QAAQ;AAAA,IACN,eAAe,CAAC,WAA0C;AACxD,cAAQ,QAAQ;AAAA,QACd,KAAK;AACH,iBAAO,qBAAO,YAAY,MAAM;AAAA,QAClC,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AACH,iBAAO,qBAAO,YAAY,MAAM;AAAA,QAClC,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AACH,iBAAO,qBAAO,UAAU,MAAM;AAAA,QAChC;AACE,iBAAO,qBAAO,SAAS,MAAM;AAAA,MACjC;AAAA,IACF;AAAA,IACA,KAAK,CACH,IACA,QACA,SACA,KACA,cAEA,IAAI,GAAG,KACL,WAAW,YAAY,WACnB,UAAU,OAAO,KACjB,uBACN,QAAQ,qBAAO,SAAS,GAAG,MAAM,GAAG,CAAC,GAAG,qBAAO;AAAA,MAC7C;AAAA,IACF,CAAC,eAAe,SAAS;AAAA;AAAA,IAC3B,OAAO,CACL,IACA,QACA,SACA,KACA,cAEA,IAAI,GAAG,kBACL,UAAU,IAAI,OAAO,KAAK,oBAC5B,QAAQ,qBAAO,cAAc,EAAE,CAAC,cAAc,qBAAO;AAAA,MACnD;AAAA,IACF,CAAC,OAAO,qBAAO,SAAS,SAAS,CAAC;AAAA,IACpC,UAAU,MACR;AAAA,IACF,MAAM,CAAC,KAAa,cAClB,IAAI,GAAG,uBAAuB,SAAS;AAAA;AAAA,IACzC,QAAQ,CAAC,KAAa,cACpB,IAAI,GAAG,uCAAuC,SAAS;AAAA,IACzD,SAAS,CAAC,IAAY,QAAgB,KAAa,cACjD,IAAI,GAAG,gCAAgC,qBAAO;AAAA,MAC5C;AAAA,IACF,CAAC,cAAc,MAAM,eAAe,SAAS;AAAA,IAC/C,eAAe,CAAC,IAAY,KAAa,cACvC,IAAI,GAAG,oCAAoC,qBAAO;AAAA,MAChD;AAAA,IACF,CAAC,eAAe,SAAS;AAAA,IAC3B,SAAS,CAAC,IAAY,QAAgB,KAAa,cACjD,IAAI,GAAG,2BAA2B,qBAAO;AAAA,MACvC;AAAA,IACF,CAAC,cAAc,MAAM,eAAe,SAAS;AAAA,IAC/C,QAAQ,CAAC,IAAY,QAAgB,KAAa,cAChD,IAAI,GAAG,kBAAkB,qBAAO;AAAA,MAC9B;AAAA,IACF,CAAC,cAAc,MAAM,eAAe,SAAS;AAAA,IAC/C,YAAY,CAAC,IAAY,KAAa,cACpC,IAAI,GAAG,0BAA0B,qBAAO;AAAA,MACtC;AAAA,IACF,CAAC,eAAe,SAAS;AAAA,IAC3B,sBAAsB,MACpB;AAAA,IACF,gBAAgB,CACd,QACA,IACA,KACA,cAEA,IAAI,GAAG,YAAY,qBAAO;AAAA,MACxB;AAAA,IACF,CAAC,OAAO,qBAAO;AAAA,MACb;AAAA,IACF,CAAC,eAAe,SAAS;AAAA,IAC3B,cAAc,CACZ,QACA,IACA,KACA,cAEA,IAAI,GAAG,uBAAuB,MAAM,aAAa,qBAAO;AAAA,MACtD;AAAA,IACF,CAAC,eAAe,SAAS;AAAA,IAC3B,SAAS,CAAC,IAAY,KAAa,cACjC,IAAI,GAAG,mBAAmB,qBAAO;AAAA,MAC/B;AAAA,IACF,CAAC,eAAe,SAAS;AAAA,IAC3B,cAAc,CAAC,IAAY,KAAa,cACtC,IAAI,GAAG,4BAA4B,qBAAO;AAAA,MACxC;AAAA,IACF,CAAC,eAAe,SAAS;AAAA,IAC3B,YAAY,CAAC,IAAY,KAAa,cACpC,IAAI,GAAG;AAAA;AAAA,+BAA8B,qBAAO;AAAA,MAC1C;AAAA,IACF,CAAC,oBAAoB,SAAS;AAAA,IAChC,eAAe,CAAC,IAAY,KAAa,cACvC,IAAI,GAAG;AAAA;AAAA,kCAAiC,qBAAO;AAAA,MAC7C;AAAA,IACF,CAAC,oBAAoB,SAAS;AAAA,EAClC;AAAA,EACA,UAAU;AAAA,IACR,MAAM,CAAC,QAAgB,IAAI,GAAG;AAAA,IAC9B,QAAQ,CAAC,QAAgB,IAAI,GAAG;AAAA,IAChC,WAAW,MAAM;AAAA,IACjB,SAAS,CAAC,KAAa,SACrB,IAAI,GAAG,kCAAkC,qBAAO,cAAc,IAAI,CAAC;AAAA,IACrE,cAAc,CAAC,KAAa,SAC1B,IAAI,GAAG,2CAA2C,qBAAO;AAAA,MACvD;AAAA,IACF,CAAC;AAAA,IACH,SAAS,CAAC,KAAa,OACrB,IAAI,GAAG,kCAAkC,qBAAO,cAAc,EAAE,CAAC;AAAA,IACnE,cAAc,CAAC,KAAa,OAC1B,IAAI,GAAG,2CAA2C,qBAAO;AAAA,MACvD;AAAA,IACF,CAAC;AAAA,EACL;AAAA,EACA,WAAW;AAAA,IACT,MAAM,CAAC,QAAgB,IAAI,GAAG;AAAA,IAC9B,QAAQ,CAAC,QAAgB,IAAI,GAAG;AAAA,IAChC,WAAW,MAAM;AAAA,IACjB,WAAW,CAAC,KAAa,SACvB,IAAI,GAAG,6BAA6B,qBAAO,cAAc,IAAI,CAAC;AAAA,EAClE;AAAA,EACA,SAAS;AAAA,IACP,OAAO,MAAM;AAAA;AAAA,IAEb,gBAAgB,CACd,MACA,KACA,WACA,SACA,QAEA;AAAA,iBACW,qBAAO,aAAa,IAAI,CAAC;AAAA,gBAC1B,qBAAO,aAAa,IAAI,OAAO,CAAC,CAAC;AAAA,sBAC3B,qBAAO,aAAa,IAAI,IAAI,CAAC;AAAA,oBAC/B,qBAAO,cAAc,OAAO,CAAC;AAAA;AAAA,uCAEV,qBAAO,aAAa,GAAG,CAAC;AAAA,sBACzC,qBAAO,aAAa,SAAS,CAAC;AAAA;AAAA,IAEhD,gBAAgB,CAAC,MAAc,aAC7B,OACE,CAAC,WAAW,+BAA+B,2BAC7C,KAAK,qBAAO,CAAC,WAAW,kBAAkB,cAAc,EAAE,IAAI,CAAC;AAAA,IACjE,eAAe,CAAC,MAAc,aAC5B,OACE,CAAC,WAAW,8BAA8B,0BAC5C,KAAK,qBAAO,CAAC,WAAW,kBAAkB,cAAc,EAAE,IAAI,CAAC;AAAA,IACjE,SAAS,CAAC,KAAgB,aACxB;AAAA,QAEE,aAAa,QACT;AAAA,QACJ,qBAAO,SAAS,mBAAmB,IAAI,UAAU;AAAA;AAAA,0DAEC,CAAC,KAC/C,EACN;AAAA,IACF,WAAW,CAAC,aACV,kCAAkC,qBAAO,cAAc,QAAQ,CAAC;AAAA;AAAA,IAClE,mBAAmB,MACjB;AAAA,EAAyC,qBAAO;AAAA,MAC9C;AAAA,IACF,CAAC;AAAA,IACH,2BAA2B,MACzB;AAAA,EAA0C,qBAAO;AAAA,MAC/C;AAAA,IACF,CAAC;AAAA,IACH,sBAAsB,MACpB;AAAA,EAAiC,qBAAO;AAAA,MACtC;AAAA,IACF,CAAC;AAAA,IACH,8BAA8B,MAC5B;AAAA,EAA8D,qBAAO;AAAA,MACnE;AAAA,IACF,CAAC;AAAA,IACH,0BAA0B,CAAC,QACzB;AAAA,EAA0F,qBAAO;AAAA,MAC/F,QACE,IAAI,SAAS,WACT;AAAA,8GACA;AAAA,yCACN;AAAA,IACF,CAAC;AAAA;AAAA,IACH,SAAS,MACP;AAAA,IACF,cAAc,CAAC,SAAiB,aAC9B,GACE,CAAC,WAAW,YAAY,yBAC1B,wBAAwB,qBAAO,aAAa,OAAO,CAAC;AAAA,IACtD,iBAAiB,CAAC,SAAiB,aACjC,GACE,CAAC,WAAW,YAAY,yBAC1B,uBAAuB,qBAAO,aAAa,OAAO,CAAC;AAAA,IACrD,eAAe,CAAC,SAAiB,aAC/B,aACE,CAAC,WAAW,WAAW,QACzB,YAAY,qBAAO,cAAc,OAAO,CAAC;AAAA,IAC3C,cAAc,MAAM;AAAA,IACpB,eAAe,MACb;AAAA,IACF,aAAa,CAAC,eACZ,mBAAmB,qBAAO,iBAAa,oBAAS,UAAU,CAAC,CAAC;AAAA,IAC9D,iBAAiB,CAAC,eAChB,iCAAiC,qBAAO;AAAA,UACtC,oBAAS,UAAU;AAAA,IACrB,CAAC;AAAA,IACH,YAAY,CAAC,SAAiB,KAAa,cACzC,6DAA6D,qBAAO;AAAA,MAClE;AAAA,IACF,CAAC,OAAO,qBAAO,aAAa,GAAG,CAAC,sBAAsB,qBAAO;AAAA,MAC3D;AAAA,IACF,CAAC;AAAA,IACH,oBAAoB,MAClB;AAAA,IACF,mBAAmB,CAAC,KAAgB,IAAa,WAC/C;AAAA;AAAA,QAAwE,qBAAO;AAAA,MAC7E,IAAI;AAAA,IACN,CAAC;AAAA;AAAA,EACC,IAAI,SAAS,WACT,kCACA,2CACN;AAAA;AAAA,MACE,IAAI,SAAS,WAAW,iBAAiB,MAC3C,IAAI,qBAAO,cAAc,qBAAqB,CAAC;AAAA,MAC7C,IAAI,SAAS,WAAW,YAAY,QACtC,IAAI,qBAAO;AAAA,MACT;AAAA,IACF,CAAC;AAAA;AAAA,GAAQ,gDAAgD;AAAA;AAAA,MACvD,IAAI,SAAS,WAAW,iBAAiB,MAC3C,IAAI,qBAAO,cAAc,yBAAyB,CAAC;AAAA,MACjD,IAAI,SAAS,WAAW,YAAY,QACtC,IAAI,qBAAO,aAAa,MAAM,CAAC;AAAA,IACjC,kBAAkB,MAChB;AAAA,IACF,oBAAoB,CAAC,UACnB;AAAA,IAA8C,qBAAO,SAAS,KAAK,CAAC;AAAA,IACtE,mBAAmB,MACjB;AAAA,IACF,uBAAuB,MACrB;AAAA,IACF,uBAAuB,MACrB;AAAA,IACF,oBAAoB,CAAC,QACnB,GACE,IAAI,SAAS,WAAW,WAAW,QACrC;AAAA,IACF,oBAAoB,MAClB;AAAA,IACF,SAAS,MAAM;AAAA,IACf,gBAAgB,MACd;AAAA,IACF,QAAQ,MAAM;AAAA,IACd,QAAQ,MACN;AAAA,IACF,kBAAkB,CAAC,WACjB,SAAS,+BAA+B;AAAA,IAC1C,WAAW,MACT,2EAA2E,qBAAO;AAAA,MAChF;AAAA,IACF,CAAC;AAAA,IACH,iBAAiB,MACf;AAAA,IACF,iBAAiB,MACf,2EAA2E,qBAAO;AAAA,MAChF;AAAA,IACF,CAAC;AAAA,EACL;AAAA,EACA,aAAa;AAAA,IACX,SAAS;AAAA,MACP,UAAU,CAAC,SACT,+BAA+B,IAAI;AAAA,MACrC,UAAU,CAAC,MAAc,YAAoB,iBAAiB,OAAO;AAAA,MACrE,aAAa,CAAC,MAAc,YAC1B,eAAe,IAAI,IAAI,OAAO;AAAA,MAChC,cAAc,CAAC,MAAc,YAC3B,+BAA+B,OAAO,SAAS,IAAI;AAAA,MACrD,YAAY,CAAC,MAAc,YACzB,cAAc,IAAI,IAAI,OAAO;AAAA,MAC/B,aAAa,CAAC,SAAiB,aAC7B,uBAAuB,OAAO,IAAI,qBAAO;AAAA,QACvC,aAAa,QAAQ;AAAA,MACvB,CAAC;AAAA,IACL;AAAA,IACA,QAAQ,MAAM;AAAA,IACd,eAAe,MAAM;AAAA,IACrB,aAAa,MAAM;AAAA,IACnB,OAAO,MACL;AAAA,IACF,QAAQ,CAAC,SACP,oCAAoC,IAAI;AAAA;AAAA,IAC1C,SAAS,CAAC,UACR;AAAA,EAAmD,KAAK;AAAA,EAC5D;AACF;",
|
|
4
|
+
"sourcesContent": ["import {\n BlockActionType,\n BlockRunningStatus,\n MigrateModelsResult,\n MigrateStatus,\n} from 'migratortron';\nimport pl from 'pluralize';\nimport { GitHelper } from '~/util/git';\nimport { Logger } from '~/util/logger';\nimport { winSlash } from '~/util/os';\n\nexport const LogMessages = {\n app: {\n contensis: () => 'Contensis',\n quit: () => `Goodbye \uD83D\uDC4B\\n`,\n startup: (version: string) =>\n `v${version} \u00A9 2001-${new Date().getFullYear()} Zengenti \uD83C\uDDEC\uD83C\uDDE7. \\n - Creators of Contensis and purveyors of other fine software\\n\\n\uD83D\uDC4B Welcome to the contensis-cli\\n`,\n help: () =>\n 'Press [CTRL]+[C] or type \"quit\" to return to your system shell\\nPress [TAB] for suggestions\\n',\n suggestions: () =>\n `\\n${Logger.errorText('>>')} Press [TAB] for suggestions\\n`,\n autocomplete: () => `\\n${Logger.errorText('>>')} Available commands:`,\n unknownError: () => `Something went wrong...`,\n fileOutput: (format = 'json', path?: string) =>\n `Output ${format} file: ${Logger.infoText(path)}\\n`,\n noFileOutput: () => `No output written\\n`,\n },\n command: {\n notKnown: (command: string) => `${command} is not known`,\n },\n envs: {\n found: (num: number) =>\n `Environments store found containing ${pl('environment', num, true)}`,\n notFound: (alias: string) =>\n `Environment ${Logger.highlightText(alias)} was not found in session cache`,\n removed: (alias: string) =>\n `Removed environment ${Logger.highlightText(alias)} from session cache`,\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 commitTip: () => `Add --commit flag to commit the previewed changes`,\n preview: (verb = 'IMPORT') => `\uD83D\uDD0D ${verb} PREVIEW \uD83D\uDD2D`,\n commit: (verb = 'IMPORT') => `COMMITTING ${verb} \u2728\u2604\uFE0F `,\n imported: (\n env: string,\n commit: boolean,\n entities: { [noun: string]: number }\n ) =>\n `${commit ? `Imported` : `Will import`} ${Object.entries(entities)\n .map(([noun, count]) => pl(noun, count, true))\n .join(' and ')} into ${env} environment`,\n\n models: {\n result: (\n status: keyof MigrateModelsResult['project']['contentTypes']\n ) => {\n switch (status) {\n case 'created':\n case 'updated':\n return Logger.successText;\n case 'errors':\n return Logger.errorText;\n default:\n return Logger.infoText;\n }\n },\n },\n status: (status: MigrateStatus) => {\n switch (status) {\n case 'no change':\n return Logger.successText;\n case 'create':\n case 'two-pass':\n case 'update':\n case 'delete':\n return Logger.warningText;\n case 'error':\n case 'not found':\n return Logger.errorText;\n default:\n return Logger.infoText;\n }\n },\n },\n models: {\n list: (projectId: string) =>\n `Content models in ${Logger.highlightText(projectId)}:`,\n noList: (projectId: string) =>\n `[${projectId}] Cannot retrieve content models`,\n get: (projectId: string, id: string) =>\n `[${projectId}] Content models ${Logger.infoText(`[ ${id} ]`)}`,\n failedGet: (projectId: string, id: string) =>\n `[${projectId}] Unable to get content models ${Logger.highlightText(id)}`,\n },\n nodes: {\n imported: (env: string, commit: boolean, count: number) =>\n LogMessages.migrate.imported(env, commit, { node: count }),\n failedImport: (env: string) => `[${env}] Unable to import nodes`,\n removed: (env: string, commit: boolean, root: string) =>\n `[${env}] ${commit ? `Deleted` : `Will delete`} nodes at ${root}`,\n failedRemove: (env: string) => `[${env}] Unable to delete nodes`,\n notFound: (env: string) => `[${env}] Nodes were not found `,\n commitTip: () => `Add --commit flag to commit the previewed changes`,\n failedGet: (projectId: string) =>\n `[${projectId}] Cannot retrieve nodes from Site view`,\n get: (projectId: string, root: string, depth: number) =>\n `[${projectId}] Site view nodes at: ${Logger.highlightText(root)}${\n depth ? ` to a depth of ${depth}` : ``\n }\\n`,\n noChange: (env: string) => `[${env}] No changes to be made`,\n },\n contenttypes: {\n list: (projectId: string) =>\n `Content types in ${Logger.highlightText(projectId)}:`,\n get: (projectId: string, id: string) =>\n `[${projectId}] Content type ${Logger.highlightText(id)}`,\n failedGet: (projectId: string, id: string) =>\n `[${projectId}] Unable to get content type ${Logger.highlightText(id)}`,\n created: (projectId: string, id: string, status?: string) =>\n `[${projectId}] Content type ${status}d ${Logger.highlightText(id)}`,\n removed: (env: string, id: string, commit: boolean) =>\n `[${env}] ${\n commit ? `Deleted` : `Will delete`\n } content type(s) ${Logger.highlightText(id)}`,\n failedRemove: (env: string, id: string) =>\n `[${env}] Unable to delete content type(s) ${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(s) ${Logger.highlightText(id)}`,\n failedRemove: (env: string, id: string) =>\n `[${env}] Unable to delete component(s) ${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: (\n env: string,\n commit: boolean,\n entries: number,\n nodes = 0,\n tags = 0\n ) =>\n LogMessages.migrate.imported(env, commit, {\n entry: entries,\n node: nodes,\n tag: tags,\n }),\n failedImport: (env: string) => `[${env}] Unable to import entries`,\n update: {\n preview: () => LogMessages.migrate.preview('UPDATE FIELD'),\n commit: () => LogMessages.migrate.preview('FIELD UPDATES'),\n success: (env: string, commit: boolean, entries: number, nodes = 0) =>\n `${commit ? `Updated` : `Will update`} ${pl('entry', entries, true)}${\n nodes > 0 ? ` and ${pl('node', nodes, true)}` : ''\n } in ${env} environment`,\n failed: (env: string) => `[${env}] Unable to update any entries`,\n },\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 noChange: (env: string) => `[${env}] No changes to be made`,\n },\n keys: {\n list: (env: string) => `[${env}] API keys:`,\n noList: (env: string) => `[${env}] Cannot retrieve API keys`,\n created: (env: string, name: string) =>\n `[${env}] Created API key ${Logger.highlightText(name)}`,\n tip: () =>\n `Assign your new key to a role with \"set role assignments\", or create a new role with \"create role\"`,\n failedCreate: (env: string, name: string) =>\n `[${env}] Unable to create API key ${Logger.highlightText(name)}`,\n failedUpdate: (env: string, name: string) =>\n `[${env}] Unable to update API key ${Logger.highlightText(name)}`,\n removed: (env: string, id: string) =>\n `[${env}] Deleted API key ${Logger.highlightText(id)}`,\n failedRemove: (env: string, id: string) =>\n `[${env}] Unable to delete API key ${Logger.highlightText(id)}`,\n },\n proxies: {\n list: (env: string, projectId: string | undefined) =>\n `[${env}] Retrieved proxies in project ${projectId}:`,\n noList: (env: string, projectId: string | undefined) =>\n `[${env}] Cannot retrieve proxies in project ${projectId}`,\n // noneExist: () => `Create a role with \"create renderer\"`,\n failedGet: (env: string, name: string, projectId: string) =>\n `[${env}] Unable to find proxy ${Logger.highlightText(\n name\n )} in project ${projectId}`,\n created: (env: string, name: string, projectId: string) =>\n `[${env}] Created proxy ${Logger.highlightText(\n name\n )} in project ${projectId}\\n`,\n failedCreate: (env: string, name: string, projectId: string) =>\n `[${env}] Unable to create proxy ${Logger.highlightText(\n name\n )} in project ${projectId}`,\n setPayload: () => `Updating proxy with details\\n`,\n set: () => `Succesfully updated proxy\\n`,\n failedSet: (env: string, name: string, projectId: string) =>\n `[${env}] Unable to update proxy ${Logger.highlightText(\n name\n )} in project ${projectId}`,\n removed: (env: string, id: string, projectId: string) =>\n `[${env}] Deleted proxy ${Logger.highlightText(\n id\n )} in project ${projectId}\\n`,\n failedRemove: (env: string, id: string, projectId: string) =>\n `[${env}] Unable to delete proxy ${Logger.highlightText(\n id\n )} in project ${projectId}`,\n },\n renderers: {\n list: (env: string, projectId: string | undefined) =>\n `[${env}] Retrieved renderers in project ${projectId}:`,\n noList: (env: string, projectId: string | undefined) =>\n `[${env}] Cannot retrieve renderers in project ${projectId}`,\n // noneExist: () => `Create a role with \"create renderer\"`,\n failedGet: (env: string, name: string, projectId: string) =>\n `[${env}] Unable to find renderer ${Logger.highlightText(\n name\n )} in project ${projectId}`,\n created: (env: string, name: string, projectId: string) =>\n `[${env}] Created renderer ${Logger.highlightText(\n name\n )} in project ${projectId}\\n`,\n failedCreate: (env: string, name: string, projectId: string) =>\n `[${env}] Unable to create renderer ${Logger.highlightText(\n name\n )} in project ${projectId}`,\n setPayload: () => `Updating renderer with details\\n`,\n set: () => `Succesfully updated renderer\\n`,\n failedSet: (env: string, name: string, projectId: string) =>\n `[${env}] Unable to update renderer ${Logger.highlightText(\n name\n )} in project ${projectId}`,\n removed: (env: string, id: string, projectId: string) =>\n `[${env}] Deleted renderer ${Logger.highlightText(\n id\n )} in project ${projectId}\\n`,\n failedRemove: (env: string, id: string, projectId: string) =>\n `[${env}] Unable to delete renderer ${Logger.highlightText(\n id\n )} in project ${projectId}`,\n },\n roles: {\n list: (env: string) => `[${env}] Retrieved roles`,\n noList: (env: string) => `[${env}] Cannot retrieve roles`,\n noneExist: () => `Create a role with \"create role\"`,\n failedGet: (env: string, name: string) =>\n `[${env}] Unable to find role ${Logger.highlightText(name)}`,\n created: (env: string, name: string) =>\n `[${env}] Created role ${Logger.highlightText(name)}\\n`,\n tip: () =>\n `Give access to your role with \"set role assignments\", allow your role to do things with \"set role permissions\"`,\n failedCreate: (env: string, name?: string) =>\n `[${env}] Unable to create role ${Logger.highlightText(name)}`,\n setPayload: () => `Updating role with details\\n`,\n set: () => `Succesfully updated role\\n`,\n failedSet: (env: string, name?: string) =>\n `[${env}] Unable to update role ${Logger.highlightText(name)}`,\n removed: (env: string, id: string) =>\n `[${env}] Deleted role ${Logger.highlightText(id)}\\n`,\n failedRemove: (env: string, id: string) =>\n `[${env}] Unable to delete role ${Logger.highlightText(id)}`,\n },\n taggroups: {\n list: (env: string, length: number) =>\n `[${env}] Retrieved ${pl('tag group', length, true)}`,\n noList: (env: string) => `[${env}] Cannot retrieve tag groups`,\n noneExist: () => `Create a tag group with \"create taggroup <name>\"`,\n imported: (env: string, commit: boolean, groups: number, tags: number) =>\n LogMessages.migrate.imported(env, commit, {\n 'tag group': groups,\n tag: tags,\n }),\n failedGet: (env: string, name: string) =>\n `[${env}] Unable to find a tag group ${Logger.highlightText(name)}`,\n created: (env: string, name: string) =>\n `[${env}] Created tag group ${Logger.highlightText(name)}\\n`,\n tip: () =>\n `Give access to your role with \"set role assignments\", allow your role to do things with \"set role permissions\"`,\n failedCreate: (env: string, name?: string) =>\n `[${env}] Unable to create ${name ? `tag group ${Logger.highlightText(name)}` : 'tag groups'}`,\n removed: (env: string, id: string, commit: boolean) =>\n `[${env}] ${\n commit ? `Deleted` : `Will delete`\n } tag group ${Logger.highlightText(id)}\\n`,\n failedRemove: (env: string, id: string) =>\n `[${env}] Unable to delete tag group ${Logger.highlightText(id)}`,\n },\n tags: {\n list: (env: string, length: number) =>\n `[${env}] Retrieved ${pl('tag', length, true)}`,\n noList: (env: string) => `[${env}] Cannot retrieve tags`,\n noneExist: () =>\n `Create a tag with \"create tag in <groupId> <tag label(s)...>\"`,\n imported: (env: string, commit: boolean, tags: number) =>\n LogMessages.migrate.imported(env, commit, { tag: tags }),\n failedGet: (env: string) => `[${env}] Unable to find tags`,\n created: (env: string, name: string) =>\n `[${env}] Created tag ${Logger.highlightText(name)}\\n`,\n failedCreate: (env: string, name?: string) =>\n `[${env}] Unable to create ${name ? `tag ${Logger.highlightText(name)}` : 'tags'}`,\n removed: (env: string, length: number, commit: boolean) =>\n `[${env}] ${\n !length\n ? 'No tags to delete'\n : `${commit ? `Deleted` : `Will delete`} ${pl('tag', length, true)}\\n`\n }`,\n failedRemove: (env: string, length: number) =>\n `[${env}] Unable to delete tags with ${pl('error', length)}`,\n noChange: (env: string) => `[${env}] No changes to be made`,\n },\n blocks: {\n runningStatus: (status: BlockRunningStatus | 'broken') => {\n switch (status) {\n case 'available':\n return Logger.successText(status);\n case 'pending':\n case 'starting':\n case 'stopped':\n return Logger.warningText(status);\n case 'degraded':\n case 'faulted':\n case 'broken':\n return Logger.errorText(status);\n default:\n return Logger.infoText(status);\n }\n },\n get: (\n id: string,\n branch: string,\n version: string,\n env: string,\n projectId?: string\n ) =>\n `[${env}] ${\n version && version !== 'latest'\n ? `Found v${version}`\n : 'Latest block versions'\n } for ${Logger.infoText(`${branch}/`)}${Logger.highlightText(\n id\n )} in project ${projectId}\\n`,\n noGet: (\n id: string,\n branch: string,\n version: string,\n env: string,\n projectId?: string\n ) =>\n `[${env}] Did not find ${\n version ? `v${version}` : 'any block versions'\n } for ${Logger.highlightText(id)} in branch ${Logger.infoText(\n branch\n )} in ${Logger.infoText(projectId)} project`,\n noGetTip: () =>\n `Check the available blocks and branches in this project by running \"list blocks\"`,\n list: (env: string, projectId?: string) =>\n `[${env}] Blocks in project ${projectId}\\n`,\n noList: (env: string, projectId?: string) =>\n `[${env}] Cannot retrieve blocks in project ${projectId}`,\n getLogs: (id: string, branch: string, env: string, projectId?: string) =>\n `[${env}] Requesting logs from block ${Logger.highlightText(\n id\n )} in branch ${branch} in project ${projectId}`,\n failedGetLogs: (id: string, env: string, projectId?: string) =>\n `[${env}] Unable to fetch block logs for ${Logger.highlightText(\n id\n )} in project ${projectId}`,\n tryPush: (id: string, branch: string, env: string, projectId?: string) =>\n `[${env}] Request to push block ${Logger.highlightText(\n id\n )} in branch ${branch} in project ${projectId}`,\n pushed: (id: string, branch: string, env: string, projectId?: string) =>\n `[${env}] Pushed block ${Logger.highlightText(\n id\n )} in branch ${branch} in project ${projectId}`,\n failedPush: (id: string, env: string, projectId?: string) =>\n `[${env}] Unable to push block ${Logger.highlightText(\n id\n )} in project ${projectId}`,\n failedParsingVersion: () =>\n `Did not find a \"version.versionNo\" in response`,\n actionComplete: (\n action: BlockActionType,\n id: string,\n env: string,\n projectId?: string\n ) =>\n `[${env}] Action ${Logger.highlightText(\n action\n )} on ${Logger.highlightText(\n id\n )} in project ${projectId} requested successfully`,\n actionFailed: (\n action: BlockActionType,\n id: string,\n env: string,\n projectId?: string\n ) =>\n `[${env}] Problem executing ${action} on block ${Logger.highlightText(\n id\n )} in project ${projectId}`,\n deleted: (id: string, env: string, projectId?: string) =>\n `[${env}] Deleted block ${Logger.highlightText(\n id\n )} in project ${projectId}`,\n failedDelete: (id: string, env: string, projectId?: string) =>\n `[${env}] Unable to delete block ${Logger.highlightText(\n id\n )} in project ${projectId}`,\n stopFollow: (id: string, env: string, projectId?: string) =>\n `[${env}]\\n\\n \uD83D\uDC4C stop fetching new ${Logger.highlightText(\n id\n )} logs in project ${projectId}`,\n timeoutFollow: (id: string, env: string, projectId?: string) =>\n `[${env}]\\n\\n \uD83E\uDD0F pausing fetching new ${Logger.highlightText(\n id\n )} logs in project ${projectId} due to too many requests`,\n },\n webhooks: {\n list: (env: string) => `[${env}] Webhook subscriptions:`,\n noList: (env: string) => `[${env}] Cannot retrieve webhook subscriptions`,\n noneExist: () => `No webhook subscriptions exist`,\n created: (env: string, name: string) =>\n `[${env}] Created Webhook subscription ${Logger.highlightText(name)}`,\n failedCreate: (env: string, name: string) =>\n `[${env}] Unable to create Webhook subscription ${Logger.highlightText(\n name\n )}`,\n deleted: (env: string, id: string) =>\n `[${env}] Deleted Webhook subscription ${Logger.highlightText(id)}`,\n failedDelete: (env: string, id: string) =>\n `[${env}] Unable to delete Webhook subscription ${Logger.highlightText(\n id\n )}`,\n },\n workflows: {\n list: (env: string) => `[${env}] Retrieved workflows`,\n noList: (env: string) => `[${env}] Cannot retrieve workflows`,\n noneExist: () => `No workflows found`,\n failedGet: (env: string, name: string) =>\n `[${env}] Unable to find workflow ${Logger.highlightText(name)}`,\n },\n devinit: {\n intro: () => `Contensis developer environment initialisation`,\n //`This will initialise your local working directory to develop with the current connected Contensis project`,\n projectDetails: (\n name: string,\n env: string,\n projectId: string,\n blockId: string,\n git: GitHelper\n ) =>\n `\n Project: ${Logger.standardText(name)}\n - Home: ${Logger.standardText(git.gitcwd())}\n - Repository: ${Logger.standardText(git.home)} \n - Block id: ${Logger.highlightText(blockId)}\n \n Connect to Contensis instance: ${Logger.standardText(env)}\n - Project id: ${Logger.standardText(projectId)}\n `,\n developmentKey: (name: string, existing: boolean) =>\n ` - ${\n !existing ? 'Create development API key' : 'Development API key found'\n }: ${Logger[!existing ? 'highlightText' : 'standardText'](name)}`,\n deploymentKey: (name: string, existing: boolean) =>\n ` - ${\n !existing ? 'Create deployment API key' : 'Deployment API key found'\n }: ${Logger[!existing ? 'highlightText' : 'standardText'](name)}`,\n ciIntro: (git: GitHelper, location: 'git' | 'env') =>\n `We will create API keys with permissions to use this project with Contensis, and add a job to your CI that will deploy a container build.\n ${\n location === 'git'\n ? `We will ask you to add secrets/variables to your git repository to give your workflow permission to push a Block to Contensis.\n ${Logger.infoText(`You could visit ${git.secretsUri} to check that you can see repository settings, \n a page not found generally indicates you need to ask the repo owner for permission to add repository secrets, \n or ask the repo owner to add these secrets for you.`)}`\n : ''\n }`,\n ciDetails: (filename: string) =>\n `Add push-block job to CI file: ${Logger.highlightText(filename)}\\n`,\n ciMultipleChoices: () =>\n `Multiple GitHub workflow files found\\n${Logger.infoText(\n `Tell us which GitHub workflow builds a container image after each push:`\n )}`,\n ciMultipleBuildJobChoices: () =>\n `Multiple build jobs found in workflow\\n${Logger.infoText(\n `Choose the build job that produces a fresh container image to push to a block:`\n )}`,\n ciMultipleJobChoices: () =>\n `Other jobs found in workflow\\n${Logger.infoText(\n `Choose the job that produces a fresh container image we can push to a block:`\n )}`,\n ciMultipleAppImageVarChoices: () =>\n `Do one of these variables point to your tagged app image?\\n${Logger.infoText(\n `we have included a default choice - ensure your build image is tagged exactly the same as this`\n )}`,\n ciEnterOwnAppImagePrompt: (git: GitHelper) =>\n `Tell us the registry uri your app image is tagged and pushed with (\u23CE accept default) \\n${Logger.infoText(\n `Tip: ${\n git.type === 'github'\n ? `GitHub context variables available\\nhttps://docs.github.com/en/actions/learn-github-actions/variables#using-contexts-to-access-variable-values`\n : `GitLab CI/CD variables available\\nhttps://docs.gitlab.com/ee/ci/variables/`\n }`\n )}\\n`,\n confirm: () =>\n `Confirm these details are correct so we can make changes to your project`,\n createDevKey: (keyName: string, existing: boolean) =>\n `${\n !existing ? 'Created' : 'Checked permissions for'\n } development API key ${Logger.standardText(keyName)}`,\n createDeployKey: (keyName: string, existing: boolean) =>\n `${\n !existing ? 'Created' : 'Checked permissions for'\n } deployment API key ${Logger.standardText(keyName)}`,\n createKeyFail: (keyName: string, existing: boolean) =>\n `Failed to ${\n !existing ? 'create' : 'update'\n } API key ${Logger.highlightText(keyName)}`,\n writeEnvFile: () => `Written .env file to project home directory`,\n useEnvFileTip: () =>\n `You should alter existing project code that connects a Contensis client to use the variables from this file`,\n writeCiFile: (ciFilePath: string) =>\n `Updated CI file ${Logger.standardText(winSlash(ciFilePath))}`,\n ciFileNoChanges: (ciFilePath: string) =>\n `No updates needed for CI file ${Logger.standardText(\n winSlash(ciFilePath)\n )}`,\n ciBlockTip: (blockId: string, env: string, projectId: string) =>\n `A job is included to deploy your built container image to ${Logger.standardText(\n projectId\n )} at ${Logger.standardText(env)} in a block called ${Logger.standardText(\n blockId\n )}`,\n addGitSecretsIntro: () =>\n `We have created an API key that allows you to deploy your app image to a Contensis Block but we need you to add these details to your GitLab repository.`,\n addGitSecretsHelp: (git: GitHelper, id?: string, secret?: string) =>\n `Add secrets or variables in your repository's settings page\\n\\nGo to ${Logger.highlightText(\n git.secretsUri\n )}\\n\\n${\n git.type === 'github'\n ? `Add a \"New repository secret\"`\n : `Expand \"Variables\" and hit \"Add variable\"`\n }\\n\\n ${\n git.type === 'github' ? `Secret name:` : `Key:`\n } ${Logger.highlightText(`CONTENSIS_CLIENT_ID`)}\\n ${\n git.type === 'github' ? `Secret:` : `Value:`\n } ${Logger.standardText(\n id\n )}\\n\\n ${`Add one more secret/variable to the repository`}\\n\\n ${\n git.type === 'github' ? `Secret name:` : `Key:`\n } ${Logger.highlightText(`CONTENSIS_SHARED_SECRET`)}\\n ${\n git.type === 'github' ? `Secret:` : `Value:`\n } ${Logger.standardText(secret)}`,\n accessTokenFetch: () =>\n `Please wait, fetching Delivery API access token \u23F3`,\n accessTokenSuccess: (token: string) =>\n `Successfully fetched Delivery API token\\n ${Logger.infoText(token)}`,\n accessTokenFailed: () =>\n `Something went wrong! If the problem persists, please contact our support team \uD83D\uDEDF`,\n accessTokenPermission: () =>\n `We need permission to fetch your Delivery API token, please try again \u26A0\uFE0F`,\n clientDetailsLocation: () =>\n `Which option would you like to use for storing your client ID and secret`,\n clientDetailsInGit: (git: GitHelper) =>\n `${\n git.type === 'github' ? 'GitHub' : 'GitLab'\n } variables (recommended for public repositories)`,\n clientDetailsInEnv: () =>\n `Env variables (recommended for private repositories)`,\n success: () => `Contensis developer environment initialisation complete`,\n partialSuccess: () =>\n `Contensis developer environment initialisation completed with errors`,\n failed: () => `Contensis developer environment initialisation failed`,\n dryRun: () =>\n `Contensis developer environment initialisation dry run completed`,\n dryRunKeyMessage: (dryRun: boolean) =>\n dryRun ? '<< not created: dry-run >>' : undefined,\n noChanges: () =>\n `No changes were made to your project, run the command again without the ${Logger.highlightText(\n '--dry-run'\n )} flag to update your project with these changes`,\n startProjectTip: () =>\n `Start up your project in the normal way for development`,\n blockIdQuestion: () =>\n `Please enter your block id, this should be unquie and in kebab case e.g ${Logger.highlightText(\n 'my-awesome-website'\n )}`,\n },\n devrequests: {\n install: {\n notFound: (repo: string) =>\n `Could not find a release in ${repo} repo - please check github`,\n download: (repo: string, version: string) => `Found release ${version}`,\n downloading: (repo: string, version: string) =>\n `Downloading ${repo} ${version}`,\n downloadFail: (repo: string, version: string) =>\n `Problem downloading release ${version} from ${repo}`,\n downloaded: (repo: string, version: string) =>\n `Downloaded ${repo} ${version}`,\n applyUpdate: (version: string, existing: string) =>\n `Use updated version ${version} ${Logger.infoText(\n `(replaces ${existing})`\n )}?`,\n },\n launch: () => `Launching request handler for local development`,\n overrideBlock: () => `Which block will you be running?`,\n overrideUri: () => `How to access your development site`,\n spawn: () =>\n `If you see a firewall popup requesting network access, it is safe to approve`,\n exited: (code: number | null) =>\n `Request handler exited with code ${code}\\n`,\n errored: (error: Error) =>\n `Could not launch request handler due to error \\n${error}`,\n },\n};\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,uBAAe;AAEf,oBAAuB;AACvB,gBAAyB;AAElB,MAAM,cAAc;AAAA,EACzB,KAAK;AAAA,IACH,WAAW,MAAM;AAAA,IACjB,MAAM,MAAM;AAAA;AAAA,IACZ,SAAS,CAAC,YACR,IAAI,OAAO,eAAW,oBAAI,KAAK,GAAE,YAAY,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA,IAChD,MAAM,MACJ;AAAA,IACF,aAAa,MACX;AAAA,EAAK,qBAAO,UAAU,IAAI,CAAC;AAAA;AAAA,IAC7B,cAAc,MAAM;AAAA,EAAK,qBAAO,UAAU,IAAI,CAAC;AAAA,IAC/C,cAAc,MAAM;AAAA,IACpB,YAAY,CAAC,SAAS,QAAQ,SAC5B,UAAU,MAAM,UAAU,qBAAO,SAAS,IAAI,CAAC;AAAA;AAAA,IACjD,cAAc,MAAM;AAAA;AAAA,EACtB;AAAA,EACA,SAAS;AAAA,IACP,UAAU,CAAC,YAAoB,GAAG,OAAO;AAAA,EAC3C;AAAA,EACA,MAAM;AAAA,IACJ,OAAO,CAAC,QACN,2CAAuC,iBAAAA,SAAG,eAAe,KAAK,IAAI,CAAC;AAAA,IACrE,UAAU,CAAC,UACT,eAAe,qBAAO,cAAc,KAAK,CAAC;AAAA,IAC5C,SAAS,CAAC,UACR,uBAAuB,qBAAO,cAAc,KAAK,CAAC;AAAA,IACpD,KAAK,MACH;AAAA,EACJ;AAAA,EACA,SAAS;AAAA,IACP,SAAS;AAAA,MACP,MAAM,MAAM;AAAA,MACZ,SAAS,MAAM;AAAA;AAAA,IACjB;AAAA,IACA,MAAM;AAAA,MACJ,OAAO;AAAA,QACL,MAAM,MAAM;AAAA,QACZ,aAAa,MAAM;AAAA,MACrB;AAAA,IACF;AAAA,IACA,OAAO,MAAM;AAAA,IACb,aAAa,CAAC,KAAa,WACzB,gBAAgB,GAAG,GAAG,SAAS,aAAa,MAAM,KAAK,EAAE;AAAA,IAC3D,WAAW,CAAC,QAAgB,+BAA+B,GAAG;AAAA,IAC9D,MAAM,MACJ;AAAA,IACF,UAAU,MAAM;AAAA,IAChB,YAAY,MAAM;AAAA,IAClB,KAAK,MACH;AAAA,EACJ;AAAA,EACA,OAAO;AAAA,IACL,SAAS;AAAA,MACP,MAAM,MAAM;AAAA,MACZ,OAAO,MAAM;AAAA,MACb,SAAS,MACP;AAAA;AAAA;AAAA;AAAA,IACJ;AAAA,IACA,MAAM;AAAA,MACJ,MAAM;AAAA,QACJ,MAAM,MAAM;AAAA,QACZ,aAAa,MAAM;AAAA,MACrB;AAAA,MACA,UAAU;AAAA,QACR,MAAM,MAAM;AAAA,QACZ,aAAa,MACX;AAAA,MACJ;AAAA,MACA,QAAQ;AAAA,QACN,MAAM,MAAM;AAAA,QACZ,aAAa,MACX;AAAA,MACJ;AAAA,IACF;AAAA,IACA,gBAAgB,CAAC,KAAc,WAC7B,SACI,sBAAsB,MAAM,IAAI,GAAG,MACnC;AAAA,IACN,QAAQ,CAAC,KAAa,WACpB,sBAAsB,GAAG,OAAO,MAAM;AAAA,IACxC,SAAS,CAAC,KAAa,WACrB,QAAQ,MAAM,iBAAiB,GAAG;AAAA;AAAA,IACpC,kBAAkB,MAChB;AAAA,IACF,OAAO,MAAM;AAAA,IACb,UAAU,MAAM;AAAA,EAClB;AAAA,EACA,UAAU;AAAA,IACR,MAAM,MAAM;AAAA,IACZ,QAAQ,MAAM;AAAA,IACd,KAAK,CAAC,cACJ,6BAA6B,qBAAO,cAAc,SAAS,CAAC;AAAA,IAC9D,WAAW,CAAC,cACV,WAAW,qBAAO,cAAc,SAAS,CAAC;AAAA,IAC5C,KAAK,MACH;AAAA,IACF,SAAS,CAAC,KAAa,OACrB,IAAI,GAAG,qBAAqB,qBAAO,cAAc,EAAE,CAAC;AAAA,IACtD,cAAc,CAAC,KAAa,OAC1B,IAAI,GAAG,8BAA8B,qBAAO,cAAc,EAAE,CAAC;AAAA,IAC/D,SAAS,CAAC,KAAa,OACrB,IAAI,GAAG,qBAAqB,qBAAO,cAAc,EAAE,CAAC;AAAA,IACtD,cAAc,CAAC,KAAa,OAC1B,IAAI,GAAG,8BAA8B,qBAAO,cAAc,EAAE,CAAC;AAAA,EACjE;AAAA,EACA,SAAS;AAAA,IACP,WAAW,MAAM;AAAA,IACjB,SAAS,CAAC,OAAO,aAAa,aAAM,IAAI;AAAA,IACxC,QAAQ,CAAC,OAAO,aAAa,cAAc,IAAI;AAAA,IAC/C,UAAU,CACR,KACA,QACA,aAEA,GAAG,SAAS,aAAa,aAAa,IAAI,OAAO,QAAQ,QAAQ,EAC9D,IAAI,CAAC,CAAC,MAAM,KAAK,UAAM,iBAAAA,SAAG,MAAM,OAAO,IAAI,CAAC,EAC5C,KAAK,OAAO,CAAC,SAAS,GAAG;AAAA,IAE9B,QAAQ;AAAA,MACN,QAAQ,CACN,WACG;AACH,gBAAQ,QAAQ;AAAA,UACd,KAAK;AAAA,UACL,KAAK;AACH,mBAAO,qBAAO;AAAA,UAChB,KAAK;AACH,mBAAO,qBAAO;AAAA,UAChB;AACE,mBAAO,qBAAO;AAAA,QAClB;AAAA,MACF;AAAA,IACF;AAAA,IACA,QAAQ,CAAC,WAA0B;AACjC,cAAQ,QAAQ;AAAA,QACd,KAAK;AACH,iBAAO,qBAAO;AAAA,QAChB,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AACH,iBAAO,qBAAO;AAAA,QAChB,KAAK;AAAA,QACL,KAAK;AACH,iBAAO,qBAAO;AAAA,QAChB;AACE,iBAAO,qBAAO;AAAA,MAClB;AAAA,IACF;AAAA,EACF;AAAA,EACA,QAAQ;AAAA,IACN,MAAM,CAAC,cACL,qBAAqB,qBAAO,cAAc,SAAS,CAAC;AAAA,IACtD,QAAQ,CAAC,cACP,IAAI,SAAS;AAAA,IACf,KAAK,CAAC,WAAmB,OACvB,IAAI,SAAS,oBAAoB,qBAAO,SAAS,KAAK,EAAE,IAAI,CAAC;AAAA,IAC/D,WAAW,CAAC,WAAmB,OAC7B,IAAI,SAAS,kCAAkC,qBAAO,cAAc,EAAE,CAAC;AAAA,EAC3E;AAAA,EACA,OAAO;AAAA,IACL,UAAU,CAAC,KAAa,QAAiB,UACvC,YAAY,QAAQ,SAAS,KAAK,QAAQ,EAAE,MAAM,MAAM,CAAC;AAAA,IAC3D,cAAc,CAAC,QAAgB,IAAI,GAAG;AAAA,IACtC,SAAS,CAAC,KAAa,QAAiB,SACtC,IAAI,GAAG,KAAK,SAAS,YAAY,aAAa,aAAa,IAAI;AAAA,IACjE,cAAc,CAAC,QAAgB,IAAI,GAAG;AAAA,IACtC,UAAU,CAAC,QAAgB,IAAI,GAAG;AAAA,IAClC,WAAW,MAAM;AAAA,IACjB,WAAW,CAAC,cACV,IAAI,SAAS;AAAA,IACf,KAAK,CAAC,WAAmB,MAAc,UACrC,IAAI,SAAS,yBAAyB,qBAAO,cAAc,IAAI,CAAC,GAC9D,QAAQ,kBAAkB,KAAK,KAAK,EACtC;AAAA;AAAA,IACF,UAAU,CAAC,QAAgB,IAAI,GAAG;AAAA,EACpC;AAAA,EACA,cAAc;AAAA,IACZ,MAAM,CAAC,cACL,oBAAoB,qBAAO,cAAc,SAAS,CAAC;AAAA,IACrD,KAAK,CAAC,WAAmB,OACvB,IAAI,SAAS,kBAAkB,qBAAO,cAAc,EAAE,CAAC;AAAA,IACzD,WAAW,CAAC,WAAmB,OAC7B,IAAI,SAAS,gCAAgC,qBAAO,cAAc,EAAE,CAAC;AAAA,IACvE,SAAS,CAAC,WAAmB,IAAY,WACvC,IAAI,SAAS,kBAAkB,MAAM,KAAK,qBAAO,cAAc,EAAE,CAAC;AAAA,IACpE,SAAS,CAAC,KAAa,IAAY,WACjC,IAAI,GAAG,KACL,SAAS,YAAY,aACvB,oBAAoB,qBAAO,cAAc,EAAE,CAAC;AAAA,IAC9C,cAAc,CAAC,KAAa,OAC1B,IAAI,GAAG,sCAAsC,qBAAO,cAAc,EAAE,CAAC;AAAA,EACzE;AAAA,EACA,YAAY;AAAA,IACV,MAAM,CAAC,cACL,iBAAiB,qBAAO,cAAc,SAAS,CAAC;AAAA,IAClD,KAAK,CAAC,WAAmB,OACvB,IAAI,SAAS,eAAe,qBAAO,cAAc,EAAE,CAAC;AAAA,IACtD,WAAW,CAAC,WAAmB,OAC7B,IAAI,SAAS,6BAA6B,qBAAO,cAAc,EAAE,CAAC;AAAA,IACpE,SAAS,CAAC,WAAmB,IAAY,WACvC,IAAI,SAAS,eAAe,MAAM,KAAK,qBAAO,cAAc,EAAE,CAAC;AAAA,IACjE,SAAS,CAAC,KAAa,IAAY,WACjC,IAAI,GAAG,KACL,SAAS,YAAY,aACvB,iBAAiB,qBAAO,cAAc,EAAE,CAAC;AAAA,IAC3C,cAAc,CAAC,KAAa,OAC1B,IAAI,GAAG,mCAAmC,qBAAO,cAAc,EAAE,CAAC;AAAA,EACtE;AAAA,EACA,SAAS;AAAA,IACP,KAAK,CAAC,KAAa,kBACjB,IAAI,GAAG,oCAAoC,aAAa;AAAA,IAC1D,SAAS,CAAC,kBACR,2BAA2B,aAAa;AAAA,IAC1C,OAAO,MACL;AAAA,EACJ;AAAA,EACA,SAAS;AAAA,IACP,UAAU,CACR,KACA,QACA,SACA,QAAQ,GACR,OAAO,MAEP,YAAY,QAAQ,SAAS,KAAK,QAAQ;AAAA,MACxC,OAAO;AAAA,MACP,MAAM;AAAA,MACN,KAAK;AAAA,IACP,CAAC;AAAA,IACH,cAAc,CAAC,QAAgB,IAAI,GAAG;AAAA,IACtC,QAAQ;AAAA,MACN,SAAS,MAAM,YAAY,QAAQ,QAAQ,cAAc;AAAA,MACzD,QAAQ,MAAM,YAAY,QAAQ,QAAQ,eAAe;AAAA,MACzD,SAAS,CAAC,KAAa,QAAiB,SAAiB,QAAQ,MAC/D,GAAG,SAAS,YAAY,aAAa,QAAI,iBAAAA,SAAG,SAAS,SAAS,IAAI,CAAC,GACjE,QAAQ,IAAI,YAAQ,iBAAAA,SAAG,QAAQ,OAAO,IAAI,CAAC,KAAK,EAClD,OAAO,GAAG;AAAA,MACZ,QAAQ,CAAC,QAAgB,IAAI,GAAG;AAAA,IAClC;AAAA,IACA,SAAS,CAAC,KAAa,WACrB,IAAI,GAAG,KAAK,SAAS,YAAY,aAAa;AAAA,IAChD,cAAc,CAAC,QAAgB,IAAI,GAAG;AAAA,IACtC,UAAU,CAAC,QAAgB,IAAI,GAAG;AAAA,IAClC,UAAU,CAAC,QAAgB,IAAI,GAAG;AAAA,EACpC;AAAA,EACA,MAAM;AAAA,IACJ,MAAM,CAAC,QAAgB,IAAI,GAAG;AAAA,IAC9B,QAAQ,CAAC,QAAgB,IAAI,GAAG;AAAA,IAChC,SAAS,CAAC,KAAa,SACrB,IAAI,GAAG,qBAAqB,qBAAO,cAAc,IAAI,CAAC;AAAA,IACxD,KAAK,MACH;AAAA,IACF,cAAc,CAAC,KAAa,SAC1B,IAAI,GAAG,8BAA8B,qBAAO,cAAc,IAAI,CAAC;AAAA,IACjE,cAAc,CAAC,KAAa,SAC1B,IAAI,GAAG,8BAA8B,qBAAO,cAAc,IAAI,CAAC;AAAA,IACjE,SAAS,CAAC,KAAa,OACrB,IAAI,GAAG,qBAAqB,qBAAO,cAAc,EAAE,CAAC;AAAA,IACtD,cAAc,CAAC,KAAa,OAC1B,IAAI,GAAG,8BAA8B,qBAAO,cAAc,EAAE,CAAC;AAAA,EACjE;AAAA,EACA,SAAS;AAAA,IACP,MAAM,CAAC,KAAa,cAClB,IAAI,GAAG,kCAAkC,SAAS;AAAA,IACpD,QAAQ,CAAC,KAAa,cACpB,IAAI,GAAG,wCAAwC,SAAS;AAAA;AAAA,IAE1D,WAAW,CAAC,KAAa,MAAc,cACrC,IAAI,GAAG,0BAA0B,qBAAO;AAAA,MACtC;AAAA,IACF,CAAC,eAAe,SAAS;AAAA,IAC3B,SAAS,CAAC,KAAa,MAAc,cACnC,IAAI,GAAG,mBAAmB,qBAAO;AAAA,MAC/B;AAAA,IACF,CAAC,eAAe,SAAS;AAAA;AAAA,IAC3B,cAAc,CAAC,KAAa,MAAc,cACxC,IAAI,GAAG,4BAA4B,qBAAO;AAAA,MACxC;AAAA,IACF,CAAC,eAAe,SAAS;AAAA,IAC3B,YAAY,MAAM;AAAA;AAAA,IAClB,KAAK,MAAM;AAAA;AAAA,IACX,WAAW,CAAC,KAAa,MAAc,cACrC,IAAI,GAAG,4BAA4B,qBAAO;AAAA,MACxC;AAAA,IACF,CAAC,eAAe,SAAS;AAAA,IAC3B,SAAS,CAAC,KAAa,IAAY,cACjC,IAAI,GAAG,mBAAmB,qBAAO;AAAA,MAC/B;AAAA,IACF,CAAC,eAAe,SAAS;AAAA;AAAA,IAC3B,cAAc,CAAC,KAAa,IAAY,cACtC,IAAI,GAAG,4BAA4B,qBAAO;AAAA,MACxC;AAAA,IACF,CAAC,eAAe,SAAS;AAAA,EAC7B;AAAA,EACA,WAAW;AAAA,IACT,MAAM,CAAC,KAAa,cAClB,IAAI,GAAG,oCAAoC,SAAS;AAAA,IACtD,QAAQ,CAAC,KAAa,cACpB,IAAI,GAAG,0CAA0C,SAAS;AAAA;AAAA,IAE5D,WAAW,CAAC,KAAa,MAAc,cACrC,IAAI,GAAG,6BAA6B,qBAAO;AAAA,MACzC;AAAA,IACF,CAAC,eAAe,SAAS;AAAA,IAC3B,SAAS,CAAC,KAAa,MAAc,cACnC,IAAI,GAAG,sBAAsB,qBAAO;AAAA,MAClC;AAAA,IACF,CAAC,eAAe,SAAS;AAAA;AAAA,IAC3B,cAAc,CAAC,KAAa,MAAc,cACxC,IAAI,GAAG,+BAA+B,qBAAO;AAAA,MAC3C;AAAA,IACF,CAAC,eAAe,SAAS;AAAA,IAC3B,YAAY,MAAM;AAAA;AAAA,IAClB,KAAK,MAAM;AAAA;AAAA,IACX,WAAW,CAAC,KAAa,MAAc,cACrC,IAAI,GAAG,+BAA+B,qBAAO;AAAA,MAC3C;AAAA,IACF,CAAC,eAAe,SAAS;AAAA,IAC3B,SAAS,CAAC,KAAa,IAAY,cACjC,IAAI,GAAG,sBAAsB,qBAAO;AAAA,MAClC;AAAA,IACF,CAAC,eAAe,SAAS;AAAA;AAAA,IAC3B,cAAc,CAAC,KAAa,IAAY,cACtC,IAAI,GAAG,+BAA+B,qBAAO;AAAA,MAC3C;AAAA,IACF,CAAC,eAAe,SAAS;AAAA,EAC7B;AAAA,EACA,OAAO;AAAA,IACL,MAAM,CAAC,QAAgB,IAAI,GAAG;AAAA,IAC9B,QAAQ,CAAC,QAAgB,IAAI,GAAG;AAAA,IAChC,WAAW,MAAM;AAAA,IACjB,WAAW,CAAC,KAAa,SACvB,IAAI,GAAG,yBAAyB,qBAAO,cAAc,IAAI,CAAC;AAAA,IAC5D,SAAS,CAAC,KAAa,SACrB,IAAI,GAAG,kBAAkB,qBAAO,cAAc,IAAI,CAAC;AAAA;AAAA,IACrD,KAAK,MACH;AAAA,IACF,cAAc,CAAC,KAAa,SAC1B,IAAI,GAAG,2BAA2B,qBAAO,cAAc,IAAI,CAAC;AAAA,IAC9D,YAAY,MAAM;AAAA;AAAA,IAClB,KAAK,MAAM;AAAA;AAAA,IACX,WAAW,CAAC,KAAa,SACvB,IAAI,GAAG,2BAA2B,qBAAO,cAAc,IAAI,CAAC;AAAA,IAC9D,SAAS,CAAC,KAAa,OACrB,IAAI,GAAG,kBAAkB,qBAAO,cAAc,EAAE,CAAC;AAAA;AAAA,IACnD,cAAc,CAAC,KAAa,OAC1B,IAAI,GAAG,2BAA2B,qBAAO,cAAc,EAAE,CAAC;AAAA,EAC9D;AAAA,EACA,WAAW;AAAA,IACT,MAAM,CAAC,KAAa,WAClB,IAAI,GAAG,mBAAe,iBAAAA,SAAG,aAAa,QAAQ,IAAI,CAAC;AAAA,IACrD,QAAQ,CAAC,QAAgB,IAAI,GAAG;AAAA,IAChC,WAAW,MAAM;AAAA,IACjB,UAAU,CAAC,KAAa,QAAiB,QAAgB,SACvD,YAAY,QAAQ,SAAS,KAAK,QAAQ;AAAA,MACxC,aAAa;AAAA,MACb,KAAK;AAAA,IACP,CAAC;AAAA,IACH,WAAW,CAAC,KAAa,SACvB,IAAI,GAAG,gCAAgC,qBAAO,cAAc,IAAI,CAAC;AAAA,IACnE,SAAS,CAAC,KAAa,SACrB,IAAI,GAAG,uBAAuB,qBAAO,cAAc,IAAI,CAAC;AAAA;AAAA,IAC1D,KAAK,MACH;AAAA,IACF,cAAc,CAAC,KAAa,SAC1B,IAAI,GAAG,sBAAsB,OAAO,aAAa,qBAAO,cAAc,IAAI,CAAC,KAAK,YAAY;AAAA,IAC9F,SAAS,CAAC,KAAa,IAAY,WACjC,IAAI,GAAG,KACL,SAAS,YAAY,aACvB,cAAc,qBAAO,cAAc,EAAE,CAAC;AAAA;AAAA,IACxC,cAAc,CAAC,KAAa,OAC1B,IAAI,GAAG,gCAAgC,qBAAO,cAAc,EAAE,CAAC;AAAA,EACnE;AAAA,EACA,MAAM;AAAA,IACJ,MAAM,CAAC,KAAa,WAClB,IAAI,GAAG,mBAAe,iBAAAA,SAAG,OAAO,QAAQ,IAAI,CAAC;AAAA,IAC/C,QAAQ,CAAC,QAAgB,IAAI,GAAG;AAAA,IAChC,WAAW,MACT;AAAA,IACF,UAAU,CAAC,KAAa,QAAiB,SACvC,YAAY,QAAQ,SAAS,KAAK,QAAQ,EAAE,KAAK,KAAK,CAAC;AAAA,IACzD,WAAW,CAAC,QAAgB,IAAI,GAAG;AAAA,IACnC,SAAS,CAAC,KAAa,SACrB,IAAI,GAAG,iBAAiB,qBAAO,cAAc,IAAI,CAAC;AAAA;AAAA,IACpD,cAAc,CAAC,KAAa,SAC1B,IAAI,GAAG,sBAAsB,OAAO,OAAO,qBAAO,cAAc,IAAI,CAAC,KAAK,MAAM;AAAA,IAClF,SAAS,CAAC,KAAa,QAAgB,WACrC,IAAI,GAAG,KACL,CAAC,SACG,sBACA,GAAG,SAAS,YAAY,aAAa,QAAI,iBAAAA,SAAG,OAAO,QAAQ,IAAI,CAAC;AAAA,CACtE;AAAA,IACF,cAAc,CAAC,KAAa,WAC1B,IAAI,GAAG,oCAAgC,iBAAAA,SAAG,SAAS,MAAM,CAAC;AAAA,IAC5D,UAAU,CAAC,QAAgB,IAAI,GAAG;AAAA,EACpC;AAAA,EACA,QAAQ;AAAA,IACN,eAAe,CAAC,WAA0C;AACxD,cAAQ,QAAQ;AAAA,QACd,KAAK;AACH,iBAAO,qBAAO,YAAY,MAAM;AAAA,QAClC,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AACH,iBAAO,qBAAO,YAAY,MAAM;AAAA,QAClC,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AACH,iBAAO,qBAAO,UAAU,MAAM;AAAA,QAChC;AACE,iBAAO,qBAAO,SAAS,MAAM;AAAA,MACjC;AAAA,IACF;AAAA,IACA,KAAK,CACH,IACA,QACA,SACA,KACA,cAEA,IAAI,GAAG,KACL,WAAW,YAAY,WACnB,UAAU,OAAO,KACjB,uBACN,QAAQ,qBAAO,SAAS,GAAG,MAAM,GAAG,CAAC,GAAG,qBAAO;AAAA,MAC7C;AAAA,IACF,CAAC,eAAe,SAAS;AAAA;AAAA,IAC3B,OAAO,CACL,IACA,QACA,SACA,KACA,cAEA,IAAI,GAAG,kBACL,UAAU,IAAI,OAAO,KAAK,oBAC5B,QAAQ,qBAAO,cAAc,EAAE,CAAC,cAAc,qBAAO;AAAA,MACnD;AAAA,IACF,CAAC,OAAO,qBAAO,SAAS,SAAS,CAAC;AAAA,IACpC,UAAU,MACR;AAAA,IACF,MAAM,CAAC,KAAa,cAClB,IAAI,GAAG,uBAAuB,SAAS;AAAA;AAAA,IACzC,QAAQ,CAAC,KAAa,cACpB,IAAI,GAAG,uCAAuC,SAAS;AAAA,IACzD,SAAS,CAAC,IAAY,QAAgB,KAAa,cACjD,IAAI,GAAG,gCAAgC,qBAAO;AAAA,MAC5C;AAAA,IACF,CAAC,cAAc,MAAM,eAAe,SAAS;AAAA,IAC/C,eAAe,CAAC,IAAY,KAAa,cACvC,IAAI,GAAG,oCAAoC,qBAAO;AAAA,MAChD;AAAA,IACF,CAAC,eAAe,SAAS;AAAA,IAC3B,SAAS,CAAC,IAAY,QAAgB,KAAa,cACjD,IAAI,GAAG,2BAA2B,qBAAO;AAAA,MACvC;AAAA,IACF,CAAC,cAAc,MAAM,eAAe,SAAS;AAAA,IAC/C,QAAQ,CAAC,IAAY,QAAgB,KAAa,cAChD,IAAI,GAAG,kBAAkB,qBAAO;AAAA,MAC9B;AAAA,IACF,CAAC,cAAc,MAAM,eAAe,SAAS;AAAA,IAC/C,YAAY,CAAC,IAAY,KAAa,cACpC,IAAI,GAAG,0BAA0B,qBAAO;AAAA,MACtC;AAAA,IACF,CAAC,eAAe,SAAS;AAAA,IAC3B,sBAAsB,MACpB;AAAA,IACF,gBAAgB,CACd,QACA,IACA,KACA,cAEA,IAAI,GAAG,YAAY,qBAAO;AAAA,MACxB;AAAA,IACF,CAAC,OAAO,qBAAO;AAAA,MACb;AAAA,IACF,CAAC,eAAe,SAAS;AAAA,IAC3B,cAAc,CACZ,QACA,IACA,KACA,cAEA,IAAI,GAAG,uBAAuB,MAAM,aAAa,qBAAO;AAAA,MACtD;AAAA,IACF,CAAC,eAAe,SAAS;AAAA,IAC3B,SAAS,CAAC,IAAY,KAAa,cACjC,IAAI,GAAG,mBAAmB,qBAAO;AAAA,MAC/B;AAAA,IACF,CAAC,eAAe,SAAS;AAAA,IAC3B,cAAc,CAAC,IAAY,KAAa,cACtC,IAAI,GAAG,4BAA4B,qBAAO;AAAA,MACxC;AAAA,IACF,CAAC,eAAe,SAAS;AAAA,IAC3B,YAAY,CAAC,IAAY,KAAa,cACpC,IAAI,GAAG;AAAA;AAAA,+BAA8B,qBAAO;AAAA,MAC1C;AAAA,IACF,CAAC,oBAAoB,SAAS;AAAA,IAChC,eAAe,CAAC,IAAY,KAAa,cACvC,IAAI,GAAG;AAAA;AAAA,kCAAiC,qBAAO;AAAA,MAC7C;AAAA,IACF,CAAC,oBAAoB,SAAS;AAAA,EAClC;AAAA,EACA,UAAU;AAAA,IACR,MAAM,CAAC,QAAgB,IAAI,GAAG;AAAA,IAC9B,QAAQ,CAAC,QAAgB,IAAI,GAAG;AAAA,IAChC,WAAW,MAAM;AAAA,IACjB,SAAS,CAAC,KAAa,SACrB,IAAI,GAAG,kCAAkC,qBAAO,cAAc,IAAI,CAAC;AAAA,IACrE,cAAc,CAAC,KAAa,SAC1B,IAAI,GAAG,2CAA2C,qBAAO;AAAA,MACvD;AAAA,IACF,CAAC;AAAA,IACH,SAAS,CAAC,KAAa,OACrB,IAAI,GAAG,kCAAkC,qBAAO,cAAc,EAAE,CAAC;AAAA,IACnE,cAAc,CAAC,KAAa,OAC1B,IAAI,GAAG,2CAA2C,qBAAO;AAAA,MACvD;AAAA,IACF,CAAC;AAAA,EACL;AAAA,EACA,WAAW;AAAA,IACT,MAAM,CAAC,QAAgB,IAAI,GAAG;AAAA,IAC9B,QAAQ,CAAC,QAAgB,IAAI,GAAG;AAAA,IAChC,WAAW,MAAM;AAAA,IACjB,WAAW,CAAC,KAAa,SACvB,IAAI,GAAG,6BAA6B,qBAAO,cAAc,IAAI,CAAC;AAAA,EAClE;AAAA,EACA,SAAS;AAAA,IACP,OAAO,MAAM;AAAA;AAAA,IAEb,gBAAgB,CACd,MACA,KACA,WACA,SACA,QAEA;AAAA,iBACW,qBAAO,aAAa,IAAI,CAAC;AAAA,gBAC1B,qBAAO,aAAa,IAAI,OAAO,CAAC,CAAC;AAAA,sBAC3B,qBAAO,aAAa,IAAI,IAAI,CAAC;AAAA,oBAC/B,qBAAO,cAAc,OAAO,CAAC;AAAA;AAAA,uCAEV,qBAAO,aAAa,GAAG,CAAC;AAAA,sBACzC,qBAAO,aAAa,SAAS,CAAC;AAAA;AAAA,IAEhD,gBAAgB,CAAC,MAAc,aAC7B,OACE,CAAC,WAAW,+BAA+B,2BAC7C,KAAK,qBAAO,CAAC,WAAW,kBAAkB,cAAc,EAAE,IAAI,CAAC;AAAA,IACjE,eAAe,CAAC,MAAc,aAC5B,OACE,CAAC,WAAW,8BAA8B,0BAC5C,KAAK,qBAAO,CAAC,WAAW,kBAAkB,cAAc,EAAE,IAAI,CAAC;AAAA,IACjE,SAAS,CAAC,KAAgB,aACxB;AAAA,QAEE,aAAa,QACT;AAAA,QACJ,qBAAO,SAAS,mBAAmB,IAAI,UAAU;AAAA;AAAA,0DAEC,CAAC,KAC/C,EACN;AAAA,IACF,WAAW,CAAC,aACV,kCAAkC,qBAAO,cAAc,QAAQ,CAAC;AAAA;AAAA,IAClE,mBAAmB,MACjB;AAAA,EAAyC,qBAAO;AAAA,MAC9C;AAAA,IACF,CAAC;AAAA,IACH,2BAA2B,MACzB;AAAA,EAA0C,qBAAO;AAAA,MAC/C;AAAA,IACF,CAAC;AAAA,IACH,sBAAsB,MACpB;AAAA,EAAiC,qBAAO;AAAA,MACtC;AAAA,IACF,CAAC;AAAA,IACH,8BAA8B,MAC5B;AAAA,EAA8D,qBAAO;AAAA,MACnE;AAAA,IACF,CAAC;AAAA,IACH,0BAA0B,CAAC,QACzB;AAAA,EAA0F,qBAAO;AAAA,MAC/F,QACE,IAAI,SAAS,WACT;AAAA,8GACA;AAAA,yCACN;AAAA,IACF,CAAC;AAAA;AAAA,IACH,SAAS,MACP;AAAA,IACF,cAAc,CAAC,SAAiB,aAC9B,GACE,CAAC,WAAW,YAAY,yBAC1B,wBAAwB,qBAAO,aAAa,OAAO,CAAC;AAAA,IACtD,iBAAiB,CAAC,SAAiB,aACjC,GACE,CAAC,WAAW,YAAY,yBAC1B,uBAAuB,qBAAO,aAAa,OAAO,CAAC;AAAA,IACrD,eAAe,CAAC,SAAiB,aAC/B,aACE,CAAC,WAAW,WAAW,QACzB,YAAY,qBAAO,cAAc,OAAO,CAAC;AAAA,IAC3C,cAAc,MAAM;AAAA,IACpB,eAAe,MACb;AAAA,IACF,aAAa,CAAC,eACZ,mBAAmB,qBAAO,iBAAa,oBAAS,UAAU,CAAC,CAAC;AAAA,IAC9D,iBAAiB,CAAC,eAChB,iCAAiC,qBAAO;AAAA,UACtC,oBAAS,UAAU;AAAA,IACrB,CAAC;AAAA,IACH,YAAY,CAAC,SAAiB,KAAa,cACzC,6DAA6D,qBAAO;AAAA,MAClE;AAAA,IACF,CAAC,OAAO,qBAAO,aAAa,GAAG,CAAC,sBAAsB,qBAAO;AAAA,MAC3D;AAAA,IACF,CAAC;AAAA,IACH,oBAAoB,MAClB;AAAA,IACF,mBAAmB,CAAC,KAAgB,IAAa,WAC/C;AAAA;AAAA,QAAwE,qBAAO;AAAA,MAC7E,IAAI;AAAA,IACN,CAAC;AAAA;AAAA,EACC,IAAI,SAAS,WACT,kCACA,2CACN;AAAA;AAAA,MACE,IAAI,SAAS,WAAW,iBAAiB,MAC3C,IAAI,qBAAO,cAAc,qBAAqB,CAAC;AAAA,MAC7C,IAAI,SAAS,WAAW,YAAY,QACtC,IAAI,qBAAO;AAAA,MACT;AAAA,IACF,CAAC;AAAA;AAAA,GAAQ,gDAAgD;AAAA;AAAA,MACvD,IAAI,SAAS,WAAW,iBAAiB,MAC3C,IAAI,qBAAO,cAAc,yBAAyB,CAAC;AAAA,MACjD,IAAI,SAAS,WAAW,YAAY,QACtC,IAAI,qBAAO,aAAa,MAAM,CAAC;AAAA,IACjC,kBAAkB,MAChB;AAAA,IACF,oBAAoB,CAAC,UACnB;AAAA,IAA8C,qBAAO,SAAS,KAAK,CAAC;AAAA,IACtE,mBAAmB,MACjB;AAAA,IACF,uBAAuB,MACrB;AAAA,IACF,uBAAuB,MACrB;AAAA,IACF,oBAAoB,CAAC,QACnB,GACE,IAAI,SAAS,WAAW,WAAW,QACrC;AAAA,IACF,oBAAoB,MAClB;AAAA,IACF,SAAS,MAAM;AAAA,IACf,gBAAgB,MACd;AAAA,IACF,QAAQ,MAAM;AAAA,IACd,QAAQ,MACN;AAAA,IACF,kBAAkB,CAAC,WACjB,SAAS,+BAA+B;AAAA,IAC1C,WAAW,MACT,2EAA2E,qBAAO;AAAA,MAChF;AAAA,IACF,CAAC;AAAA,IACH,iBAAiB,MACf;AAAA,IACF,iBAAiB,MACf,2EAA2E,qBAAO;AAAA,MAChF;AAAA,IACF,CAAC;AAAA,EACL;AAAA,EACA,aAAa;AAAA,IACX,SAAS;AAAA,MACP,UAAU,CAAC,SACT,+BAA+B,IAAI;AAAA,MACrC,UAAU,CAAC,MAAc,YAAoB,iBAAiB,OAAO;AAAA,MACrE,aAAa,CAAC,MAAc,YAC1B,eAAe,IAAI,IAAI,OAAO;AAAA,MAChC,cAAc,CAAC,MAAc,YAC3B,+BAA+B,OAAO,SAAS,IAAI;AAAA,MACrD,YAAY,CAAC,MAAc,YACzB,cAAc,IAAI,IAAI,OAAO;AAAA,MAC/B,aAAa,CAAC,SAAiB,aAC7B,uBAAuB,OAAO,IAAI,qBAAO;AAAA,QACvC,aAAa,QAAQ;AAAA,MACvB,CAAC;AAAA,IACL;AAAA,IACA,QAAQ,MAAM;AAAA,IACd,eAAe,MAAM;AAAA,IACrB,aAAa,MAAM;AAAA,IACnB,OAAO,MACL;AAAA,IACF,QAAQ,CAAC,SACP,oCAAoC,IAAI;AAAA;AAAA,IAC1C,SAAS,CAAC,UACR;AAAA,EAAmD,KAAK;AAAA,EAC5D;AACF;",
|
|
6
6
|
"names": ["pl"]
|
|
7
7
|
}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __typeError = (msg) => {
|
|
7
|
+
throw TypeError(msg);
|
|
8
|
+
};
|
|
9
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
10
|
+
var __export = (target, all) => {
|
|
11
|
+
for (var name in all)
|
|
12
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
13
|
+
};
|
|
14
|
+
var __copyProps = (to, from, except, desc) => {
|
|
15
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
16
|
+
for (let key of __getOwnPropNames(from))
|
|
17
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
18
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
19
|
+
}
|
|
20
|
+
return to;
|
|
21
|
+
};
|
|
22
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
23
|
+
var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
24
|
+
var __accessCheck = (obj, member, msg) => member.has(obj) || __typeError("Cannot " + msg);
|
|
25
|
+
var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
|
|
26
|
+
var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
|
|
27
|
+
var MixedFileData_exports = {};
|
|
28
|
+
__export(MixedFileData_exports, {
|
|
29
|
+
MixedFileData: () => MixedFileData
|
|
30
|
+
});
|
|
31
|
+
module.exports = __toCommonJS(MixedFileData_exports);
|
|
32
|
+
var import_file_provider = require("../providers/file-provider");
|
|
33
|
+
var _isProject, _isContentType, _isComponent, _isForm, _isAsset, _isEntry, _isNode, _isTag, _isTagGroup;
|
|
34
|
+
class MixedFileData {
|
|
35
|
+
constructor(fileData) {
|
|
36
|
+
__publicField(this, "models", []);
|
|
37
|
+
__publicField(this, "entries", []);
|
|
38
|
+
__publicField(this, "nodes", []);
|
|
39
|
+
__publicField(this, "tagGroups", []);
|
|
40
|
+
__publicField(this, "tags", []);
|
|
41
|
+
__publicField(this, "init", (fileData) => {
|
|
42
|
+
for (const item of fileData) {
|
|
43
|
+
if (__privateGet(this, _isContentType).call(this, item) || __privateGet(this, _isComponent).call(this, item) || __privateGet(this, _isForm).call(this, item))
|
|
44
|
+
this.models.push(item);
|
|
45
|
+
if (__privateGet(this, _isEntry).call(this, item) || __privateGet(this, _isAsset).call(this, item)) this.entries.push(item);
|
|
46
|
+
if (__privateGet(this, _isNode).call(this, item)) this.nodes.push(item);
|
|
47
|
+
if (__privateGet(this, _isTagGroup).call(this, item)) this.tagGroups.push(item);
|
|
48
|
+
if (__privateGet(this, _isTag).call(this, item)) this.tags.push(item);
|
|
49
|
+
}
|
|
50
|
+
});
|
|
51
|
+
__privateAdd(this, _isProject, (item) => "id" in item && "name" in item && "primaryLanguage" in item);
|
|
52
|
+
__privateAdd(this, _isContentType, (item) => "dataFormat" in item && item.dataFormat === "entry");
|
|
53
|
+
__privateAdd(this, _isComponent, (item) => "dataFormat" in item && item.dataFormat === "component");
|
|
54
|
+
__privateAdd(this, _isForm, (item) => "dataFormat" in item && item.dataFormat === "form");
|
|
55
|
+
__privateAdd(this, _isAsset, (item) => "sys" in item && "contentTypeId" in item.sys && "dataFormat" in item.sys && item.sys.dataFormat === "asset");
|
|
56
|
+
__privateAdd(this, _isEntry, (item) => "sys" in item && "contentTypeId" in item.sys && "dataFormat" in item.sys && item.sys.dataFormat === "entry");
|
|
57
|
+
__privateAdd(this, _isNode, (item) => ("slug" in item || "path" in item) && "displayName" in item);
|
|
58
|
+
__privateAdd(this, _isTag, (item) => "id" in item && "groupId" in item && "label" in item);
|
|
59
|
+
__privateAdd(this, _isTagGroup, (item) => "id" in item && "name" in item && "tagCount" in item);
|
|
60
|
+
if (Array.isArray(fileData)) this.init(fileData);
|
|
61
|
+
}
|
|
62
|
+
async readFile(filePath) {
|
|
63
|
+
const fileData = await (0, import_file_provider.readFileAsJSON)(filePath);
|
|
64
|
+
if (typeof fileData === "string")
|
|
65
|
+
throw new Error(`Import file format must be of type JSON`);
|
|
66
|
+
if (Array.isArray(fileData)) this.init(fileData);
|
|
67
|
+
return this;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
_isProject = new WeakMap();
|
|
71
|
+
_isContentType = new WeakMap();
|
|
72
|
+
_isComponent = new WeakMap();
|
|
73
|
+
_isForm = new WeakMap();
|
|
74
|
+
_isAsset = new WeakMap();
|
|
75
|
+
_isEntry = new WeakMap();
|
|
76
|
+
_isNode = new WeakMap();
|
|
77
|
+
_isTag = new WeakMap();
|
|
78
|
+
_isTagGroup = new WeakMap();
|
|
79
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
80
|
+
0 && (module.exports = {
|
|
81
|
+
MixedFileData
|
|
82
|
+
});
|
|
83
|
+
//# sourceMappingURL=MixedFileData.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/mappers/MixedFileData.ts"],
|
|
4
|
+
"sourcesContent": ["import { Component, ContentType, Project } from 'contensis-core-api';\nimport {\n Entry,\n ICreateNode,\n ICreateTag,\n ICreateTagGroup,\n Tag,\n TagGroup,\n} from 'contensis-management-api';\nimport { MigrateRequest } from 'migratortron';\nimport { readFileAsJSON } from '~/providers/file-provider';\n\nexport class MixedFileData\n implements\n Pick<MigrateRequest, 'models' | 'entries' | 'nodes' | 'tagGroups' | 'tags'>\n{\n models: (ContentType | Component)[] = [];\n entries: Entry[] = [];\n nodes: ICreateNode[] = [];\n tagGroups: (TagGroup | ICreateTagGroup)[] = [];\n tags: (Tag | ICreateTag)[] = [];\n\n constructor(fileData?: any[]) {\n if (Array.isArray(fileData)) this.init(fileData);\n }\n init = (fileData: any[]) => {\n for (const item of fileData) {\n if (\n this.#isContentType(item) ||\n this.#isComponent(item) ||\n this.#isForm(item)\n )\n this.models.push(item);\n if (this.#isEntry(item) || this.#isAsset(item)) this.entries.push(item);\n if (this.#isNode(item)) this.nodes.push(item);\n if (this.#isTagGroup(item)) this.tagGroups.push(item);\n if (this.#isTag(item)) this.tags.push(item);\n }\n };\n async readFile(filePath: string): Promise<any> {\n const fileData = await readFileAsJSON(filePath);\n if (typeof fileData === 'string')\n throw new Error(`Import file format must be of type JSON`);\n if (Array.isArray(fileData)) this.init(fileData);\n return this;\n }\n\n #isProject = (item: any): item is Project =>\n 'id' in item && 'name' in item && 'primaryLanguage' in item;\n\n #isContentType = (item: any): item is ContentType =>\n 'dataFormat' in item && item.dataFormat === 'entry';\n\n #isComponent = (item: any): item is Component =>\n 'dataFormat' in item && item.dataFormat === 'component';\n\n #isForm = (item: any): item is ContentType =>\n 'dataFormat' in item && item.dataFormat === 'form';\n\n #isAsset = (item: any): item is Entry =>\n 'sys' in item &&\n 'contentTypeId' in item.sys &&\n 'dataFormat' in item.sys &&\n item.sys.dataFormat === 'asset';\n\n #isEntry = (item: any): item is Entry =>\n 'sys' in item &&\n 'contentTypeId' in item.sys &&\n 'dataFormat' in item.sys &&\n item.sys.dataFormat === 'entry';\n\n #isNode = (item: any): item is ICreateNode =>\n ('slug' in item || 'path' in item) && 'displayName' in item;\n\n #isTag = (item: any): item is ICreateTag =>\n 'id' in item && 'groupId' in item && 'label' in item;\n\n #isTagGroup = (item: any): item is ICreateTagGroup =>\n 'id' in item && 'name' in item && 'tagCount' in item;\n}\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAUA,2BAA+B;AAV/B;AAYO,MAAM,cAGb;AAAA,EAOE,YAAY,UAAkB;AAN9B,kCAAsC,CAAC;AACvC,mCAAmB,CAAC;AACpB,iCAAuB,CAAC;AACxB,qCAA4C,CAAC;AAC7C,gCAA6B,CAAC;AAK9B,gCAAO,CAAC,aAAoB;AAC1B,iBAAW,QAAQ,UAAU;AAC3B,YACE,mBAAK,gBAAL,WAAoB,SACpB,mBAAK,cAAL,WAAkB,SAClB,mBAAK,SAAL,WAAa;AAEb,eAAK,OAAO,KAAK,IAAI;AACvB,YAAI,mBAAK,UAAL,WAAc,SAAS,mBAAK,UAAL,WAAc,MAAO,MAAK,QAAQ,KAAK,IAAI;AACtE,YAAI,mBAAK,SAAL,WAAa,MAAO,MAAK,MAAM,KAAK,IAAI;AAC5C,YAAI,mBAAK,aAAL,WAAiB,MAAO,MAAK,UAAU,KAAK,IAAI;AACpD,YAAI,mBAAK,QAAL,WAAY,MAAO,MAAK,KAAK,KAAK,IAAI;AAAA,MAC5C;AAAA,IACF;AASA,mCAAa,CAAC,SACZ,QAAQ,QAAQ,UAAU,QAAQ,qBAAqB;AAEzD,uCAAiB,CAAC,SAChB,gBAAgB,QAAQ,KAAK,eAAe;AAE9C,qCAAe,CAAC,SACd,gBAAgB,QAAQ,KAAK,eAAe;AAE9C,gCAAU,CAAC,SACT,gBAAgB,QAAQ,KAAK,eAAe;AAE9C,iCAAW,CAAC,SACV,SAAS,QACT,mBAAmB,KAAK,OACxB,gBAAgB,KAAK,OACrB,KAAK,IAAI,eAAe;AAE1B,iCAAW,CAAC,SACV,SAAS,QACT,mBAAmB,KAAK,OACxB,gBAAgB,KAAK,OACrB,KAAK,IAAI,eAAe;AAE1B,gCAAU,CAAC,UACR,UAAU,QAAQ,UAAU,SAAS,iBAAiB;AAEzD,+BAAS,CAAC,SACR,QAAQ,QAAQ,aAAa,QAAQ,WAAW;AAElD,oCAAc,CAAC,SACb,QAAQ,QAAQ,UAAU,QAAQ,cAAc;AAvDhD,QAAI,MAAM,QAAQ,QAAQ,EAAG,MAAK,KAAK,QAAQ;AAAA,EACjD;AAAA,EAeA,MAAM,SAAS,UAAgC;AAC7C,UAAM,WAAW,UAAM,qCAAe,QAAQ;AAC9C,QAAI,OAAO,aAAa;AACtB,YAAM,IAAI,MAAM,yCAAyC;AAC3D,QAAI,MAAM,QAAQ,QAAQ,EAAG,MAAK,KAAK,QAAQ;AAC/C,WAAO;AAAA,EACT;AAkCF;AAhCE;AAGA;AAGA;AAGA;AAGA;AAMA;AAMA;AAGA;AAGA;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|