contensis-cli 1.6.1-beta.2 → 1.6.1-beta.20

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.
Files changed (144) hide show
  1. package/dist/index.js +58301 -11
  2. package/dist/index.js.map +4 -4
  3. package/dist/shell.js +58040 -52
  4. package/dist/shell.js.map +4 -4
  5. package/esbuild.config.js +8 -13
  6. package/package.json +3 -2
  7. package/src/commands/create.ts +48 -0
  8. package/src/commands/dev.ts +12 -2
  9. package/src/commands/globalOptions.ts +5 -3
  10. package/src/commands/import.ts +46 -5
  11. package/src/commands/push.ts +8 -1
  12. package/src/commands/set.ts +69 -1
  13. package/src/factories/RequestHandlerFactory.ts +19 -8
  14. package/src/localisation/en-GB.ts +22 -4
  15. package/src/mappers/DevRequests-to-RequestHanderCliArgs.ts +25 -17
  16. package/src/models/CliService.d.ts +5 -1
  17. package/src/providers/GitHubCliModuleProvider.ts +8 -8
  18. package/src/providers/HttpProvider.ts +2 -2
  19. package/src/providers/file-provider.ts +3 -0
  20. package/src/services/ContensisCliService.ts +265 -23
  21. package/src/services/ContensisDevService.ts +99 -35
  22. package/src/shell.ts +7 -1
  23. package/src/util/console.printer.ts +52 -0
  24. package/src/util/logger.ts +3 -4
  25. package/src/util/os.ts +5 -3
  26. package/src/version.ts +1 -1
  27. package/dist/commands/connect.js +0 -44
  28. package/dist/commands/connect.js.map +0 -7
  29. package/dist/commands/copy.js +0 -78
  30. package/dist/commands/copy.js.map +0 -7
  31. package/dist/commands/create.js +0 -170
  32. package/dist/commands/create.js.map +0 -7
  33. package/dist/commands/dev.js +0 -78
  34. package/dist/commands/dev.js.map +0 -7
  35. package/dist/commands/diff.js +0 -57
  36. package/dist/commands/diff.js.map +0 -7
  37. package/dist/commands/execute.js +0 -103
  38. package/dist/commands/execute.js.map +0 -7
  39. package/dist/commands/get.js +0 -330
  40. package/dist/commands/get.js.map +0 -7
  41. package/dist/commands/globalOptions.js +0 -252
  42. package/dist/commands/globalOptions.js.map +0 -7
  43. package/dist/commands/import.js +0 -229
  44. package/dist/commands/import.js.map +0 -7
  45. package/dist/commands/index.js +0 -107
  46. package/dist/commands/index.js.map +0 -7
  47. package/dist/commands/list.js +0 -195
  48. package/dist/commands/list.js.map +0 -7
  49. package/dist/commands/login.js +0 -55
  50. package/dist/commands/login.js.map +0 -7
  51. package/dist/commands/push.js +0 -229
  52. package/dist/commands/push.js.map +0 -7
  53. package/dist/commands/remove.js +0 -193
  54. package/dist/commands/remove.js.map +0 -7
  55. package/dist/commands/set.js +0 -180
  56. package/dist/commands/set.js.map +0 -7
  57. package/dist/commands/update.js +0 -70
  58. package/dist/commands/update.js.map +0 -7
  59. package/dist/factories/RequestHandlerFactory.js +0 -221
  60. package/dist/factories/RequestHandlerFactory.js.map +0 -7
  61. package/dist/localisation/en-GB.js +0 -552
  62. package/dist/localisation/en-GB.js.map +0 -7
  63. package/dist/mappers/ContensisCliService-to-RequestHanderSiteConfigYaml.js +0 -56
  64. package/dist/mappers/ContensisCliService-to-RequestHanderSiteConfigYaml.js.map +0 -7
  65. package/dist/mappers/DevInit-to-CIWorkflow.js +0 -409
  66. package/dist/mappers/DevInit-to-CIWorkflow.js.map +0 -7
  67. package/dist/mappers/DevInit-to-RolePermissions.js +0 -56
  68. package/dist/mappers/DevInit-to-RolePermissions.js.map +0 -7
  69. package/dist/mappers/DevRequests-to-RequestHanderCliArgs.js +0 -161
  70. package/dist/mappers/DevRequests-to-RequestHanderCliArgs.js.map +0 -7
  71. package/dist/mappers/MixedFileData.js +0 -83
  72. package/dist/mappers/MixedFileData.js.map +0 -7
  73. package/dist/models/AppError.d.js +0 -2
  74. package/dist/models/AppError.d.js.map +0 -7
  75. package/dist/models/Cache.d.js +0 -2
  76. package/dist/models/Cache.d.js.map +0 -7
  77. package/dist/models/CliService.d.js +0 -17
  78. package/dist/models/CliService.d.js.map +0 -7
  79. package/dist/models/DevService.d.js +0 -17
  80. package/dist/models/DevService.d.js.map +0 -7
  81. package/dist/models/JsModules.d.js +0 -2
  82. package/dist/models/JsModules.d.js.map +0 -7
  83. package/dist/providers/CredentialProvider.js +0 -126
  84. package/dist/providers/CredentialProvider.js.map +0 -7
  85. package/dist/providers/GitHubCliModuleProvider.js +0 -115
  86. package/dist/providers/GitHubCliModuleProvider.js.map +0 -7
  87. package/dist/providers/HttpProvider.js +0 -73
  88. package/dist/providers/HttpProvider.js.map +0 -7
  89. package/dist/providers/ManifestProvider.js +0 -50
  90. package/dist/providers/ManifestProvider.js.map +0 -7
  91. package/dist/providers/SessionCacheProvider.js +0 -132
  92. package/dist/providers/SessionCacheProvider.js.map +0 -7
  93. package/dist/providers/file-provider.js +0 -174
  94. package/dist/providers/file-provider.js.map +0 -7
  95. package/dist/services/ContensisAuthService.js +0 -88
  96. package/dist/services/ContensisAuthService.js.map +0 -7
  97. package/dist/services/ContensisCliService.js +0 -2598
  98. package/dist/services/ContensisCliService.js.map +0 -7
  99. package/dist/services/ContensisDevService.js +0 -387
  100. package/dist/services/ContensisDevService.js.map +0 -7
  101. package/dist/services/ContensisRoleService.js +0 -112
  102. package/dist/services/ContensisRoleService.js.map +0 -7
  103. package/dist/util/api-ids.js +0 -110
  104. package/dist/util/api-ids.js.map +0 -7
  105. package/dist/util/assert.js +0 -62
  106. package/dist/util/assert.js.map +0 -7
  107. package/dist/util/console.printer.js +0 -425
  108. package/dist/util/console.printer.js.map +0 -7
  109. package/dist/util/csv.formatter.js +0 -118
  110. package/dist/util/csv.formatter.js.map +0 -7
  111. package/dist/util/debug.js +0 -29
  112. package/dist/util/debug.js.map +0 -7
  113. package/dist/util/diff.js +0 -118
  114. package/dist/util/diff.js.map +0 -7
  115. package/dist/util/dotenv.js +0 -56
  116. package/dist/util/dotenv.js.map +0 -7
  117. package/dist/util/error.js +0 -36
  118. package/dist/util/error.js.map +0 -7
  119. package/dist/util/fetch.js +0 -69
  120. package/dist/util/fetch.js.map +0 -7
  121. package/dist/util/find.js +0 -39
  122. package/dist/util/find.js.map +0 -7
  123. package/dist/util/git.js +0 -145
  124. package/dist/util/git.js.map +0 -7
  125. package/dist/util/gitignore.js +0 -61
  126. package/dist/util/gitignore.js.map +0 -7
  127. package/dist/util/html.formatter.js +0 -70
  128. package/dist/util/html.formatter.js.map +0 -7
  129. package/dist/util/index.js +0 -68
  130. package/dist/util/index.js.map +0 -7
  131. package/dist/util/json.formatter.js +0 -66
  132. package/dist/util/json.formatter.js.map +0 -7
  133. package/dist/util/logger.js +0 -304
  134. package/dist/util/logger.js.map +0 -7
  135. package/dist/util/os.js +0 -46
  136. package/dist/util/os.js.map +0 -7
  137. package/dist/util/timers.js +0 -49
  138. package/dist/util/timers.js.map +0 -7
  139. package/dist/util/xml.formatter.js +0 -62
  140. package/dist/util/xml.formatter.js.map +0 -7
  141. package/dist/util/yaml.js +0 -44
  142. package/dist/util/yaml.js.map +0 -7
  143. package/dist/version.js +0 -29
  144. package/dist/version.js.map +0 -7
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../src/util/console.printer.ts"],
4
- "sourcesContent": ["import { Node } from 'contensis-delivery-api/lib/models';\nimport dayjs from 'dayjs';\nimport { deconstructApiError } from './error';\nimport { Logger, addNewLines } from './logger';\nimport {\n BlockVersion,\n CopyFieldResult,\n EntriesMigrationResult,\n EntriesResult,\n MigrateModelsResult,\n MigrateNodesTree,\n MigrateStatus,\n NodesResult,\n ProjectNodesToMigrate,\n} from 'migratortron';\nimport ContensisCli from '~/services/ContensisCliService';\n\nconst formatDate = (date: Date | string, format = 'DD/MM/YYYY HH:mm') =>\n dayjs(date).format(format);\n\nexport const printBlockVersion = (\n { log, messages }: ContensisCli,\n block: BlockVersion,\n printOptions = {\n showSource: true,\n showStatus: true,\n showStaticPaths: true,\n showImage: true,\n }\n) => {\n console.log(\n ` ${log.standardText(`v${block.version.versionNo}`)} ${block.id}`\n );\n console.log(\n ` state: ${messages.blocks.runningStatus(\n block.status.broken ? 'broken' : block.status.running.global\n )}`\n );\n console.log(\n ` released: ${log.infoText(\n block.version.released\n ? `[${formatDate(block.version.released)}] ${block.version.releasedBy}`\n : 'no'\n )}`\n );\n if (block.version.madeLive)\n console.log(\n ` live: ${log.infoText(\n `[${formatDate(block.version.madeLive)}] ${block.version.madeLiveBy}`\n )}`\n );\n if (printOptions.showStatus) {\n console.log(` status:`);\n console.log(` deployment: ${log.infoText(block.status.deployment)}`);\n console.log(` workflow: ${log.infoText(block.status.workflow)}`);\n console.log(\n ` running status: ${messages.blocks.runningStatus(\n block.status.running.global\n )}`\n );\n console.log(` datacentres:`);\n console.log(\n ` hq: ${messages.blocks.runningStatus(\n block.status.running.dataCenters.hq\n )}`\n );\n console.log(\n ` london: ${messages.blocks.runningStatus(\n block.status.running.dataCenters.london\n )}`\n );\n console.log(\n ` manchester: ${messages.blocks.runningStatus(\n block.status.running.dataCenters.manchester\n )}`\n );\n }\n if (printOptions.showSource) {\n console.log(` source:`);\n console.log(` commit: ${log.helpText(block.source.commit.id)}`);\n console.log(\n ` message: ${log.infoText(\n block.source.commit.message\n ?.replaceAll('\\n', '\\\\n')\n .replaceAll('\\\\n\\\\n', '\\\\n')\n .replaceAll('\\\\n', '; ')\n )}`\n );\n console.log(\n ` committed: ${log.infoText(\n `[${formatDate(block.source.commit.dateTime)}] ${\n block.source.commit.authorEmail\n }`\n )}`\n );\n console.log(\n ` pushed: ${log.infoText(\n `[${formatDate(block.version.pushed)}] ${block.version.pushedBy}`\n )}`\n );\n console.log(` ${log.infoText(block.source.commit.commitUrl)}`);\n }\n if (printOptions.showImage) {\n console.log(` image:`);\n console.log(` uri: ${log.infoText(block.image.uri)}`);\n console.log(` tag: ${log.helpText(block.image.tag)}`);\n }\n if (printOptions.showStaticPaths) {\n if (block.staticPaths?.length) {\n console.log(` static paths:`);\n for (const path of block.staticPaths) console.log(` - ${path}`);\n }\n }\n if (block.stagingUrl)\n console.log(` staging url: ${log.infoText(block.stagingUrl)}`);\n console.log('');\n};\n\nexport const printEntriesMigrateResult = (\n service: ContensisCli,\n migrateResult: EntriesMigrationResult | EntriesResult | CopyFieldResult,\n {\n action = 'import',\n showDiff = false,\n showAll = false,\n showChanged = false,\n }: {\n action?: 'import' | 'update' | 'delete';\n showDiff?: boolean;\n showAll?: boolean;\n showChanged?: boolean;\n } = {}\n) => {\n console.log(``);\n const { log, messages, currentProject } = service;\n for (const [contentTypeId, entryRes] of Object.entries(\n migrateResult.entriesToMigrate.entryIds\n ) as [string, any]) {\n for (const [originalId, entryStatus] of Object.entries(entryRes) as [\n string,\n any,\n ][]) {\n const projectStatus = Object.entries(\n Object.entries(entryStatus[currentProject])[0]\n )[1][1] as any;\n if (\n showAll ||\n (showChanged &&\n projectStatus.status !== 'no change' &&\n projectStatus.status !== 'ignore')\n ) {\n console.log(\n log.infoText(\n `${Object.entries(entryStatus || {})\n .filter(x => x[0] !== 'entryTitle')\n .map(([projectId, projectStatus]) => {\n const [targetGuid, { status }] = (Object.entries(\n projectStatus || {}\n )?.[0] as [string, { status: MigrateStatus }]) || [\n '',\n { x: { status: undefined } },\n ];\n return `${messages.migrate.status(status)(\n `${status}`\n )} ${originalId}${\n targetGuid !== originalId ? ` -> ${targetGuid}\\n ` : ' '\n }`;\n })}`\n ) + `${log.helpText(contentTypeId)} ${entryStatus.entryTitle}`\n );\n\n for (const [projectId, projectStatus] of Object.entries(\n entryStatus\n ).filter(([key]) => key !== 'entryTitle') as [string, any][]) {\n const [targetGuid, { error, diff, status }] = Object.entries(\n projectStatus\n )[0] as [string, any];\n if (error) log.error(error);\n if (diff && showDiff) {\n console.log(\n ` ${log.infoText(`diff: ${highlightDiffText(diff)}`)}\\n`\n );\n }\n }\n }\n }\n }\n if (showAll || showChanged) console.log(``);\n\n for (const [projectId, contentTypeCounts] of Object.entries(\n migrateResult.entries || {}\n ) as [string, any][]) {\n log.help(\n action === 'update'\n ? `update entries in project ${log.boldText(\n log.warningText(currentProject)\n )}`\n : `${action}${\n action === 'delete'\n ? ` from project ${log.warningText(currentProject)}`\n : `${projectId ? ` from project ${log.highlightText(projectId)}` : ''} to ${log.boldText(\n log.warningText(currentProject)\n )}`\n }`\n );\n for (const [contentTypeId, count] of Object.entries(contentTypeCounts) as [\n string,\n number,\n ][]) {\n const isTotalCountRow = contentTypeId === 'totalCount';\n const migrateStatusAndCount =\n migrateResult.entriesToMigrate[currentProject][contentTypeId];\n const existingCount =\n migrateResult.existing?.[currentProject]?.[contentTypeId] || 0;\n const existingPercent = ((existingCount / count) * 100).toFixed(0);\n const noChangeOrTotalEntriesCount =\n typeof migrateStatusAndCount !== 'number'\n ? (migrateStatusAndCount?.['no change'] || 0) +\n (migrateStatusAndCount?.['ignore'] || 0)\n : migrateStatusAndCount;\n\n const changedPercentage = (\n (noChangeOrTotalEntriesCount / count) *\n 100\n ).toFixed(0);\n\n const existingColor =\n existingPercent === '0' || action === 'delete'\n ? log.warningText\n : log.infoText;\n\n const changedColor = isTotalCountRow\n ? log.helpText\n : changedPercentage === '100'\n ? log.successText\n : log.warningText;\n\n if (isTotalCountRow && 'nodes' in migrateResult) {\n printNodesMigrateResult(service, migrateResult, {\n showAll,\n showDiff,\n showChanged,\n isEntriesMigration: true,\n });\n }\n console.log(\n ` - ${\n isTotalCountRow\n ? log.highlightText(\n `${contentTypeId}: ${noChangeOrTotalEntriesCount}`\n )\n : `${contentTypeId}: ${log.helpText(count)}`\n }${\n changedPercentage === '100' || isTotalCountRow\n ? ''\n : existingColor(` [existing: ${`${existingPercent}%`}]`)\n }${\n existingPercent === '0' || (action === 'import' && isTotalCountRow)\n ? ''\n : changedColor(\n ` ${\n isTotalCountRow\n ? `[to ${action}: ${noChangeOrTotalEntriesCount}]`\n : changedPercentage === '100'\n ? 'up to date'\n : `[needs update: ${100 - Number(changedPercentage)}%]`\n }`\n )\n }`\n );\n }\n }\n if (migrateResult.errors?.length) {\n console.log(\n ` - ${log.errorText(`errors: ${migrateResult.errors.length}`)}\\n`\n );\n // for (const error of migrateResult.errors)\n // log.error(error.message, null, '');\n }\n};\n\nexport const printNodesMigrateResult = (\n { log, currentProject }: ContensisCli,\n migrateResult: EntriesMigrationResult | NodesResult,\n {\n action = 'import',\n logLimit = 50,\n showDiff = false,\n showAll = false,\n showChanged = false,\n isEntriesMigration = false,\n }: {\n action?: 'import' | 'delete';\n logLimit?: number;\n showDiff?: boolean;\n showAll?: boolean;\n showChanged?: boolean;\n isEntriesMigration?: boolean;\n } = {}\n) => {\n if (!isEntriesMigration) log.raw(``);\n for (const [projectId, counts] of Object.entries(migrateResult.nodes || {})) {\n const importTitle =\n action === 'delete'\n ? `Delete from project ${log.warningText(currentProject)}`\n : `Import ${\n projectId && projectId !== 'null'\n ? `from project ${log.highlightText(projectId)} `\n : ''\n }to ${log.boldText(log.warningText(currentProject))}`;\n if (!isEntriesMigration) log.help(importTitle);\n\n const migrateStatusAndCount = migrateResult.nodesToMigrate[\n currentProject\n ] as ProjectNodesToMigrate;\n\n const existingCount = migrateResult.nodes?.[projectId]?.totalCount || 0;\n\n const totalCount = Object.keys(migrateResult.nodesToMigrate.nodeIds).length;\n const existingPercent = counts.totalCount\n ? ((existingCount / totalCount) * 100).toFixed(0)\n : '0';\n\n const noChangeCount = migrateStatusAndCount?.['no change'] || 0;\n\n const changedPercentage = counts.totalCount\n ? ((noChangeCount / totalCount) * 100).toFixed(0)\n : '0';\n\n const existingColor =\n existingPercent === '0' || action === 'delete'\n ? log.warningText\n : log.infoText;\n\n const changedColor =\n changedPercentage === '100' ? log.successText : log.warningText;\n\n if (!isEntriesMigration || migrateStatusAndCount.totalCount > 0)\n console.log(\n ` - ${log.highlightText(\n `${isEntriesMigration ? ' + nodes' : 'totalCount'}: ${\n migrateStatusAndCount.totalCount\n }`\n )}${\n changedPercentage === '100'\n ? ''\n : existingColor(` [existing: ${`${existingPercent}%`}]`)\n }${\n existingPercent === '0'\n ? ''\n : changedColor(\n ` ${\n changedPercentage === '100'\n ? 'up to date'\n : `[needs update: ${100 - Number(changedPercentage)}%]`\n }`\n )\n }`\n );\n }\n if (migrateResult.errors?.length) {\n console.log(\n ` - ${log.errorText(`errors: ${migrateResult.errors.length}`)}\\n`\n );\n\n log.limits(\n migrateResult.errors\n .map(error => {\n return log.errorText(deconstructApiError(error));\n })\n .join('\\n'),\n logLimit\n );\n }\n};\n\nconst highlightDiffText = (str: string) => {\n const addedRegex = new RegExp(/<<\\+>>(.*?)<<\\/\\+>>/, 'g');\n const removedRegex = new RegExp(/<<->>(.*?)<<\\/->>/, 'g');\n return str\n .replace(addedRegex, match => {\n return Logger.successText(\n match.replace(/<<\\+>>/g, '<+>').replace(/<<\\/\\+>>/g, '</+>')\n );\n })\n .replace(removedRegex, match => {\n return Logger.errorText(\n match.replace(/<<->>/g, '<->').replace(/<<\\/->>/g, '</->')\n );\n });\n};\n\nexport const printModelMigrationAnalysis = (\n { log, messages }: ContensisCli,\n result: any = {}\n) => {\n for (const [contentTypeId, model] of Object.entries(result) as [\n string,\n any,\n ][]) {\n let mainOutput = log.standardText(\n ` - ${contentTypeId}${\n model.contentTypeId ? ` ${log.helpText(model.contentTypeId)}` : ''\n }`\n );\n let extraOutput = '';\n let errorOutput = '';\n let diffOutput = '';\n for (const [key, details] of Object.entries(model) as [string, any][]) {\n if (key === 'dependencies') {\n extraOutput += log.infoText(\n ` references: [${details?.join(', ')}]\\n`\n );\n }\n if (key === 'dependencyOf') {\n extraOutput += log.infoText(\n ` required by: [${details?.join(', ')}]\\n`\n );\n }\n if (key === 'projects') {\n for (const [projectId, projectDetails] of Object.entries(details) as [\n string,\n any,\n ][]) {\n mainOutput += log.infoText(\n ` [${messages.migrate.status(projectDetails.status)(\n `${projectId}: ${projectDetails.status}`\n )}]${\n projectDetails.versionNo ? ` v${projectDetails.versionNo}` : ''\n }`\n );\n if (projectDetails.diff)\n diffOutput += ` ${log.highlightText(`diff:`)} ${log.infoText(\n highlightDiffText(projectDetails.diff)\n )}`;\n if (projectDetails.error)\n errorOutput += ` ${log.highlightText(\n `error:`\n )} ${log.errorText(projectDetails.error)}`;\n }\n }\n }\n console.log(mainOutput);\n if (extraOutput) {\n const search = '\\n';\n const replace = '';\n console.log(\n extraOutput.replace(\n new RegExp(search + '([^' + search + ']*)$'),\n replace + '$1'\n )\n );\n }\n if (diffOutput) console.log(diffOutput);\n if (errorOutput) console.log(errorOutput);\n }\n};\n\ntype MigrateResultSummary = MigrateModelsResult['']['contentTypes'];\ntype MigrateResultStatus = keyof MigrateResultSummary;\n\nexport const printModelMigrationResult = (\n { log, messages }: ContensisCli,\n result: MigrateResultSummary\n) => {\n for (const [status, ids] of Object.entries(result) as [\n MigrateResultStatus,\n string[],\n ][]) {\n if (ids?.length) {\n if (status === 'errors') {\n const errors: [string, MappedError][] = ids as any;\n log.raw(\n ` - ${status}: [ ${messages.migrate.models.result(status)(\n ids.map(id => id[0]).join(', ')\n )} ]\\n`\n );\n for (const [contentTypeId, error] of errors)\n log.error(\n `${log.highlightText(contentTypeId)}: ${error.message}`,\n error\n );\n } else\n log.raw(\n ` - ${status}: [ ${messages.migrate.models.result(status)(\n ids.join(', ')\n )} ]`\n );\n }\n }\n};\n\nexport const printNodeTreeOutput = (\n { log, messages }: ContensisCli,\n root: Node | Partial<MigrateNodesTree> | undefined,\n logDetail = 'errors',\n logLimit = 1000\n) => {\n log.raw('');\n const statusColour = messages.migrate.status;\n\n if (root && 'status' in root)\n log.info(\n `Migrate status: ${statusColour('no change')(\n 'N'\n )} [no change]; ${statusColour('create')('C')} [create]; ${statusColour(\n 'update'\n )('U')} [update]; ${statusColour('delete')('D')} [delete]; ${statusColour(\n 'error'\n )('E')} [error];`\n );\n log.info(\n `Node properties: ${log.highlightText(\n 'e'\n )} = has entry; ${log.highlightText('c')} = canonical; ${log.highlightText(\n 'm'\n )} = include in menu`\n );\n\n log.line();\n\n const outputNode = (\n node: Partial<Node | MigrateNodesTree>,\n spaces: string,\n isRoot = false\n ) => {\n const errorOutput =\n 'error' in node && node.error && deconstructApiError(node.error);\n const fullOutput = logDetail === 'all';\n const changesOutput =\n logDetail === 'changes' &&\n 'status' in node &&\n node.status &&\n ['create', 'update'].includes(node.status);\n\n const diffOutput =\n (fullOutput || changesOutput || errorOutput) &&\n 'diff' in node &&\n node.diff?.replaceAll('\\n', '');\n\n return `${\n 'status' in node && node.status\n ? `${statusColour(node.status)(\n node.status.substring(0, 1).toUpperCase()\n )} `\n : ''\n }${node.entry ? log.highlightText('e') : log.infoText('-')}${\n 'isCanonical' in node && node.isCanonical\n ? log.highlightText('c')\n : log.infoText('-')\n }${\n node.includeInMenu ? log.highlightText('m') : log.infoText('-')\n }${spaces}${log[\n 'status' in node && node.status === 'no change'\n ? 'infoText'\n : 'standardText'\n ](\n 'isCanonical' in node && node.isCanonical\n ? log.boldText(\n fullOutput || isRoot || !node.slug ? node.path : `/${node.slug}`\n )\n : fullOutput || isRoot || !node.slug\n ? node.path\n : `/${node.slug}`\n )}${node.entry ? ` ${log.helpText(node.entry.sys.contentTypeId)}` : ''}${\n node.childCount ? ` +${node.childCount}` : ``\n } ${'displayName' in node ? log.infoText(node.displayName) : ''}${\n fullOutput || (changesOutput && node.id !== node.originalId)\n ? `~n ${log.infoText(`id:`)} ${\n !('originalId' in node) || node.id === node.originalId\n ? node.id\n : `${node.id} ${log.infoText(`<= ${node.originalId}`)}`\n }`\n : ''\n }${\n (fullOutput ||\n (changesOutput && node.parentId !== node.originalParentId)) &&\n node.parentId\n ? `~n ${log.infoText(\n `parentId: ${\n !('originalParentId' in node) ||\n node.parentId === node.originalParentId\n ? node.parentId\n : `${node.parentId} <= ${node.originalParentId}`\n }`\n )}`\n : ''\n }${\n fullOutput && node.entry?.sys.id\n ? `~n ${log.infoText(`entryId: ${node.entry.sys.id}`)}`\n : ''\n }${\n errorOutput\n ? `~n${addNewLines(` ${log.errorText(errorOutput)}`, '~n')}`\n : ''\n }${\n diffOutput\n ? `~n${addNewLines(\n ` ${log.infoText(`diff: ${highlightDiffText(diffOutput)}`)}`,\n '~n'\n )}`\n : ''\n }`;\n };\n\n const outputChildren = (\n node: Partial<Node | MigrateNodesTree> | undefined,\n depth = 2\n ) => {\n let str = '';\n for (const child of ((node as any)?.children || []) as Node[]) {\n str += `${outputNode(child, Array(depth + 1).join(' '))}\\n`;\n if ('children' in child) str += outputChildren(child, depth + 1);\n }\n return str;\n };\n\n const children = outputChildren(root);\n log.limits(\n `${outputNode(root || {}, ' ', true)}${children ? `\\n${children}` : ''}`,\n logLimit\n );\n};\n"],
5
- "mappings": "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",
6
- "names": ["dayjs", "projectStatus", "_a"]
7
- }
@@ -1,118 +0,0 @@
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 __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
- var csv_formatter_exports = {};
20
- __export(csv_formatter_exports, {
21
- csvFormatter: () => csvFormatter,
22
- csvToJson: () => csvToJson,
23
- detectCsv: () => detectCsv
24
- });
25
- module.exports = __toCommonJS(csv_formatter_exports);
26
- var import_csv = require("csv");
27
- var import_json = require("./json.formatter");
28
- const csvFormatter = async (entries) => {
29
- const flatEntries = [];
30
- if (Array.isArray(entries))
31
- for (const entry of entries) {
32
- flatEntries.push((0, import_json.flattenObject)(entry));
33
- }
34
- else flatEntries.push((0, import_json.flattenObject)(entries));
35
- const columns = new Set(flatEntries.map((e) => Object.keys(e)).flat());
36
- const csv = await new Promise((resolve, reject) => {
37
- (0, import_csv.stringify)(
38
- flatEntries,
39
- {
40
- header: true,
41
- cast: { boolean: (value, context) => `${value}` },
42
- columns: [...columns]
43
- },
44
- (err, data) => {
45
- if (err) reject(err);
46
- resolve(data);
47
- }
48
- );
49
- });
50
- return csv;
51
- };
52
- const csvToJson = async (data) => {
53
- return new Promise((resolve, reject) => {
54
- (0, import_csv.parse)(
55
- data,
56
- {
57
- columns: true,
58
- skip_empty_lines: true,
59
- cast: (value, context) => {
60
- if (context.header || context.column === "sys.version.versionNo")
61
- return value;
62
- if (value === "") return void 0;
63
- try {
64
- return JSON.parse(value);
65
- } catch (e) {
66
- return value;
67
- }
68
- }
69
- },
70
- (err, records) => {
71
- if (err) reject(err);
72
- resolve(records);
73
- }
74
- );
75
- });
76
- };
77
- const detectCsv = (chunk, opts) => {
78
- opts = opts || {};
79
- if (Buffer.isBuffer(chunk)) chunk = chunk + "";
80
- const delimiters = opts.delimiters || [",", ";", " ", "|"];
81
- const newlines = opts.newlines || ["\n", "\r"];
82
- const lines = chunk.split(/[\n\r]+/g);
83
- const delimiter = determineMost(lines[0], delimiters);
84
- const newline = determineMost(chunk, newlines);
85
- if (!delimiter) return null;
86
- return {
87
- delimiter,
88
- newline
89
- };
90
- };
91
- const determineMost = (chunk, items) => {
92
- const itemCount = {};
93
- let ignoreString = false;
94
- let maxValue = 0;
95
- let maxChar;
96
- let currValue;
97
- items.forEach((item) => {
98
- itemCount[item] = 0;
99
- });
100
- for (let i = 0; i < chunk.length; i++) {
101
- if (chunk[i] === '"') ignoreString = !ignoreString;
102
- else if (!ignoreString && chunk[i] in itemCount) {
103
- currValue = ++itemCount[chunk[i]];
104
- if (currValue > maxValue) {
105
- maxValue = currValue;
106
- maxChar = chunk[i];
107
- }
108
- }
109
- }
110
- return maxChar;
111
- };
112
- // Annotate the CommonJS export names for ESM import in node:
113
- 0 && (module.exports = {
114
- csvFormatter,
115
- csvToJson,
116
- detectCsv
117
- });
118
- //# sourceMappingURL=csv.formatter.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../src/util/csv.formatter.ts"],
4
- "sourcesContent": ["import { parse, stringify } from 'csv';\n// import { parse, stringify } from 'csv/sync';\nimport { flattenObject } from './json.formatter';\n\nexport const csvFormatter = async <T>(entries: T | T[]) => {\n // Flatten the passed in object\n const flatEntries = [] as any[];\n if (Array.isArray(entries))\n for (const entry of entries) {\n flatEntries.push(flattenObject(entry));\n }\n else flatEntries.push(flattenObject(entries));\n\n // Parse the flattened object to csv\n // const csv = stringify(flatEntries, { header: true });\n // Create an exhaustive list of columns from the entries array\n const columns = new Set<string>(flatEntries.map(e => Object.keys(e)).flat());\n const csv = await new Promise<string>((resolve, reject) => {\n stringify(\n flatEntries,\n {\n header: true,\n cast: { boolean: (value, context) => `${value}` },\n columns: [...columns],\n },\n (err, data) => {\n if (err) reject(err);\n resolve(data);\n }\n );\n });\n return csv;\n};\n\nexport const csvToJson = async <T = any>(data: string): Promise<T[]> => {\n return new Promise((resolve, reject) => {\n parse(\n data,\n {\n columns: true,\n skip_empty_lines: true,\n cast: (value, context) => {\n if (context.header || context.column === 'sys.version.versionNo')\n return value;\n if (value === '') return undefined;\n try {\n return JSON.parse(value);\n } catch (e) {\n return value;\n }\n },\n },\n (err, records) => {\n if (err) reject(err);\n resolve(records);\n }\n );\n });\n};\n\nexport const detectCsv = (\n chunk: string,\n opts?: { delimiters?: string[]; newlines?: string[] }\n) => {\n opts = opts || {};\n if (Buffer.isBuffer(chunk)) chunk = chunk + '';\n const delimiters = opts.delimiters || [',', ';', '\\t', '|'];\n const newlines = opts.newlines || ['\\n', '\\r'];\n\n const lines = chunk.split(/[\\n\\r]+/g);\n\n const delimiter = determineMost(lines[0], delimiters);\n const newline = determineMost(chunk, newlines);\n\n if (!delimiter) return null;\n\n return {\n delimiter: delimiter,\n newline: newline,\n };\n};\n\nconst determineMost = (chunk: string, items: string[]) => {\n const itemCount = {} as any;\n let ignoreString = false;\n let maxValue = 0;\n let maxChar;\n let currValue;\n items.forEach(item => {\n itemCount[item] = 0;\n });\n for (let i = 0; i < chunk.length; i++) {\n if (chunk[i] === '\"') ignoreString = !ignoreString;\n else if (!ignoreString && chunk[i] in itemCount) {\n currValue = ++itemCount[chunk[i]];\n if (currValue > maxValue) {\n maxValue = currValue;\n maxChar = chunk[i];\n }\n }\n }\n return maxChar;\n};\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,iBAAiC;AAEjC,kBAA8B;AAEvB,MAAM,eAAe,OAAU,YAAqB;AAEzD,QAAM,cAAc,CAAC;AACrB,MAAI,MAAM,QAAQ,OAAO;AACvB,eAAW,SAAS,SAAS;AAC3B,kBAAY,SAAK,2BAAc,KAAK,CAAC;AAAA,IACvC;AAAA,MACG,aAAY,SAAK,2BAAc,OAAO,CAAC;AAK5C,QAAM,UAAU,IAAI,IAAY,YAAY,IAAI,OAAK,OAAO,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC;AAC3E,QAAM,MAAM,MAAM,IAAI,QAAgB,CAAC,SAAS,WAAW;AACzD;AAAA,MACE;AAAA,MACA;AAAA,QACE,QAAQ;AAAA,QACR,MAAM,EAAE,SAAS,CAAC,OAAO,YAAY,GAAG,KAAK,GAAG;AAAA,QAChD,SAAS,CAAC,GAAG,OAAO;AAAA,MACtB;AAAA,MACA,CAAC,KAAK,SAAS;AACb,YAAI,IAAK,QAAO,GAAG;AACnB,gBAAQ,IAAI;AAAA,MACd;AAAA,IACF;AAAA,EACF,CAAC;AACD,SAAO;AACT;AAEO,MAAM,YAAY,OAAgB,SAA+B;AACtE,SAAO,IAAI,QAAQ,CAAC,SAAS,WAAW;AACtC;AAAA,MACE;AAAA,MACA;AAAA,QACE,SAAS;AAAA,QACT,kBAAkB;AAAA,QAClB,MAAM,CAAC,OAAO,YAAY;AACxB,cAAI,QAAQ,UAAU,QAAQ,WAAW;AACvC,mBAAO;AACT,cAAI,UAAU,GAAI,QAAO;AACzB,cAAI;AACF,mBAAO,KAAK,MAAM,KAAK;AAAA,UACzB,SAAS,GAAG;AACV,mBAAO;AAAA,UACT;AAAA,QACF;AAAA,MACF;AAAA,MACA,CAAC,KAAK,YAAY;AAChB,YAAI,IAAK,QAAO,GAAG;AACnB,gBAAQ,OAAO;AAAA,MACjB;AAAA,IACF;AAAA,EACF,CAAC;AACH;AAEO,MAAM,YAAY,CACvB,OACA,SACG;AACH,SAAO,QAAQ,CAAC;AAChB,MAAI,OAAO,SAAS,KAAK,EAAG,SAAQ,QAAQ;AAC5C,QAAM,aAAa,KAAK,cAAc,CAAC,KAAK,KAAK,KAAM,GAAG;AAC1D,QAAM,WAAW,KAAK,YAAY,CAAC,MAAM,IAAI;AAE7C,QAAM,QAAQ,MAAM,MAAM,UAAU;AAEpC,QAAM,YAAY,cAAc,MAAM,CAAC,GAAG,UAAU;AACpD,QAAM,UAAU,cAAc,OAAO,QAAQ;AAE7C,MAAI,CAAC,UAAW,QAAO;AAEvB,SAAO;AAAA,IACL;AAAA,IACA;AAAA,EACF;AACF;AAEA,MAAM,gBAAgB,CAAC,OAAe,UAAoB;AACxD,QAAM,YAAY,CAAC;AACnB,MAAI,eAAe;AACnB,MAAI,WAAW;AACf,MAAI;AACJ,MAAI;AACJ,QAAM,QAAQ,UAAQ;AACpB,cAAU,IAAI,IAAI;AAAA,EACpB,CAAC;AACD,WAAS,IAAI,GAAG,IAAI,MAAM,QAAQ,KAAK;AACrC,QAAI,MAAM,CAAC,MAAM,IAAK,gBAAe,CAAC;AAAA,aAC7B,CAAC,gBAAgB,MAAM,CAAC,KAAK,WAAW;AAC/C,kBAAY,EAAE,UAAU,MAAM,CAAC,CAAC;AAChC,UAAI,YAAY,UAAU;AACxB,mBAAW;AACX,kBAAU,MAAM,CAAC;AAAA,MACnB;AAAA,IACF;AAAA,EACF;AACA,SAAO;AACT;",
6
- "names": []
7
- }
@@ -1,29 +0,0 @@
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 __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
- var debug_exports = {};
20
- __export(debug_exports, {
21
- isDebug: () => isDebug
22
- });
23
- module.exports = __toCommonJS(debug_exports);
24
- const isDebug = () => ["true", "1"].includes(process.env.debug || "");
25
- // Annotate the CommonJS export names for ESM import in node:
26
- 0 && (module.exports = {
27
- isDebug
28
- });
29
- //# sourceMappingURL=debug.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../src/util/debug.ts"],
4
- "sourcesContent": ["export const isDebug = () => ['true', '1'].includes(process.env.debug || '');\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAO,MAAM,UAAU,MAAM,CAAC,QAAQ,GAAG,EAAE,SAAS,QAAQ,IAAI,SAAS,EAAE;",
6
- "names": []
7
- }
package/dist/util/diff.js DELETED
@@ -1,118 +0,0 @@
1
- "use strict";
2
- var __create = Object.create;
3
- var __defProp = Object.defineProperty;
4
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
- var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __getProtoOf = Object.getPrototypeOf;
7
- var __hasOwnProp = Object.prototype.hasOwnProperty;
8
- var __export = (target, all) => {
9
- for (var name in all)
10
- __defProp(target, name, { get: all[name], enumerable: true });
11
- };
12
- var __copyProps = (to, from, except, desc) => {
13
- if (from && typeof from === "object" || typeof from === "function") {
14
- for (let key of __getOwnPropNames(from))
15
- if (!__hasOwnProp.call(to, key) && key !== except)
16
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
- }
18
- return to;
19
- };
20
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
- // If the importer is in node compatibility mode or this is not an ESM
22
- // file that has been converted to a CommonJS file using a Babel-
23
- // compatible transform (i.e. "__esModule" has not been set), then set
24
- // "default" to the CommonJS "module.exports" for node compatibility.
25
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
- mod
27
- ));
28
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
- var diff_exports = {};
30
- __export(diff_exports, {
31
- diffFileContent: () => diffFileContent,
32
- diffLogStrings: () => diffLogStrings
33
- });
34
- module.exports = __toCommonJS(diff_exports);
35
- var import_chalk = __toESM(require("chalk"));
36
- var import_diff = require("diff");
37
- var import_os = require("./os");
38
- const diffLogStrings = (updates, previous) => {
39
- const lastFewLines = previous.split("\n").slice(-10);
40
- const incomingLines = updates.split("\n");
41
- const incomingLineIndices = [];
42
- for (const lastRenderedLine of lastFewLines) {
43
- if (lastRenderedLine.length > 10)
44
- incomingLineIndices.push(incomingLines.lastIndexOf(lastRenderedLine));
45
- }
46
- const differentFromPos = Math.max(...incomingLineIndices, 0) + 1;
47
- return incomingLines.slice(differentFromPos).join("\n");
48
- };
49
- const diffFileContent = (existingContent, newContent) => {
50
- const existingContentNormalised = (0, import_os.normaliseLineEndings)(existingContent, "\n");
51
- const newContentNormalised = (0, import_os.normaliseLineEndings)(newContent, "\n");
52
- const diff = (0, import_diff.diffLines)(existingContentNormalised, newContentNormalised, {
53
- newlineIsToken: true
54
- });
55
- const diffRanges = addDiffPositionInfo(diff);
56
- const output = [];
57
- const lnSpaceLength = Math.max(
58
- ...diffRanges.map((d) => d.startLineNumber.toString().length),
59
- 0
60
- );
61
- const lnSpaces = Array(lnSpaceLength).join(" ");
62
- let needsNewLine = false;
63
- for (let i = 0; i < diffRanges.length; i++) {
64
- const part = diffRanges[i];
65
- if (part.added || part.removed) {
66
- const colour = part.added ? "green" : part.removed ? "red" : "grey";
67
- if (part.value !== "\n") {
68
- if (needsNewLine) {
69
- output.push("\n### --");
70
- needsNewLine = false;
71
- }
72
- output.push(
73
- `
74
- ${part.value.split("\n").map(
75
- (ln, idx) => ln.trim() !== "" ? `${part.startLineNumber ? part.startLineNumber + idx : lnSpaces}${part.added ? "+" : part.removed ? "-" : " "} ${import_chalk.default[colour](`${ln}`)}` : ln
76
- ).join("\n")}`
77
- );
78
- } else needsNewLine = true;
79
- } else needsNewLine = true;
80
- }
81
- return output.join("").replaceAll("\n\n\n", "\n\n");
82
- };
83
- const addDiffPositionInfo = (diff) => {
84
- const diffRanges = [];
85
- let lineNumber = 0;
86
- let column = 0;
87
- for (let partIndex = 0; partIndex < diff.length; partIndex++) {
88
- const part = diff[partIndex];
89
- const startLineNumber = lineNumber;
90
- const startColumn = column;
91
- const substring = part.value;
92
- const lines = substring.split("\n");
93
- lines.forEach((line, lineIndex) => {
94
- if (lineIndex === 0) {
95
- column += line.length;
96
- } else if (lineIndex > 0) {
97
- lineNumber += 1;
98
- column = line.length;
99
- }
100
- });
101
- if (part.added === true || part.removed === true) {
102
- diffRanges.push({
103
- startLineNumber: startLineNumber + 1,
104
- startColumn,
105
- endLineNumber: lineNumber,
106
- endColumn: column,
107
- ...part
108
- });
109
- }
110
- }
111
- return diffRanges;
112
- };
113
- // Annotate the CommonJS export names for ESM import in node:
114
- 0 && (module.exports = {
115
- diffFileContent,
116
- diffLogStrings
117
- });
118
- //# sourceMappingURL=diff.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../src/util/diff.ts"],
4
- "sourcesContent": ["import chalk from 'chalk';\nimport { Change, diffLines } from 'diff';\nimport { normaliseLineEndings } from './os';\n\nexport const diffLogStrings = (updates: string, previous: string) => {\n const lastFewLines = previous.split('\\n').slice(-10);\n const incomingLines = updates.split('\\n');\n\n // Find the line indices in the incoming lines\n // of the last few lines previously rendered\n const incomingLineIndices = [];\n for (const lastRenderedLine of lastFewLines) {\n if (lastRenderedLine.length > 10)\n incomingLineIndices.push(incomingLines.lastIndexOf(lastRenderedLine));\n }\n\n // Get the new lines from the next position on from the last of the already shown lines\n const differentFromPos = Math.max(...incomingLineIndices, 0) + 1;\n // Return just the incoming lines from the position we matched\n return incomingLines.slice(differentFromPos).join('\\n');\n};\n\nexport const diffFileContent = (\n existingContent: string,\n newContent: string\n) => {\n const existingContentNormalised = normaliseLineEndings(existingContent, '\\n');\n const newContentNormalised = normaliseLineEndings(newContent, '\\n');\n\n const diff = diffLines(existingContentNormalised, newContentNormalised, {\n newlineIsToken: true,\n });\n const diffRanges = addDiffPositionInfo(diff);\n\n // Create formatted output for console\n const output: string[] = [];\n const lnSpaceLength = Math.max(\n ...diffRanges.map(d => d.startLineNumber.toString().length),\n 0\n );\n\n const lnSpaces = Array(lnSpaceLength).join(' ');\n\n let needsNewLine = false;\n for (let i = 0; i < diffRanges.length; i++) {\n const part = diffRanges[i];\n if (part.added || part.removed) {\n const colour = part.added ? 'green' : part.removed ? 'red' : 'grey';\n\n if (part.value !== '\\n') {\n if (needsNewLine) {\n output.push('\\n### --');\n needsNewLine = false;\n }\n output.push(\n `\\n${part.value\n .split('\\n')\n .map((ln, idx) =>\n ln.trim() !== ''\n ? `${\n part.startLineNumber ? part.startLineNumber + idx : lnSpaces\n }${part.added ? '+' : part.removed ? '-' : ' '} ${chalk[\n colour\n ](`${ln}`)}`\n : ln\n )\n .join('\\n')}`\n );\n } else needsNewLine = true;\n } else needsNewLine = true;\n }\n\n return output.join('').replaceAll('\\n\\n\\n', '\\n\\n');\n};\n\nconst addDiffPositionInfo = (diff: Change[]) => {\n const diffRanges: (Change & {\n startLineNumber: number;\n startColumn: number;\n endLineNumber: number;\n endColumn: number;\n })[] = [];\n\n let lineNumber = 0;\n let column = 0;\n for (let partIndex = 0; partIndex < diff.length; partIndex++) {\n const part = diff[partIndex];\n\n // // Skip any parts that aren't in `after`\n // if (part.removed === true) {\n // continue;\n // }\n\n const startLineNumber = lineNumber;\n const startColumn = column;\n\n // Split the part into lines. Loop throug these lines to find\n // the line no. and column at the end of this part.\n const substring = part.value;\n const lines = substring.split('\\n');\n lines.forEach((line, lineIndex) => {\n // The first `line` is actually just a continuation of the last line\n if (lineIndex === 0) {\n column += line.length;\n // All other lines come after a line break.\n } else if (lineIndex > 0) {\n lineNumber += 1;\n column = line.length;\n }\n });\n\n // Save a range for all of the parts with position info added\n if (part.added === true || part.removed === true) {\n diffRanges.push({\n startLineNumber: startLineNumber + 1,\n startColumn: startColumn,\n endLineNumber: lineNumber,\n endColumn: column,\n ...part,\n });\n }\n }\n return diffRanges;\n};\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAkB;AAClB,kBAAkC;AAClC,gBAAqC;AAE9B,MAAM,iBAAiB,CAAC,SAAiB,aAAqB;AACnE,QAAM,eAAe,SAAS,MAAM,IAAI,EAAE,MAAM,GAAG;AACnD,QAAM,gBAAgB,QAAQ,MAAM,IAAI;AAIxC,QAAM,sBAAsB,CAAC;AAC7B,aAAW,oBAAoB,cAAc;AAC3C,QAAI,iBAAiB,SAAS;AAC5B,0BAAoB,KAAK,cAAc,YAAY,gBAAgB,CAAC;AAAA,EACxE;AAGA,QAAM,mBAAmB,KAAK,IAAI,GAAG,qBAAqB,CAAC,IAAI;AAE/D,SAAO,cAAc,MAAM,gBAAgB,EAAE,KAAK,IAAI;AACxD;AAEO,MAAM,kBAAkB,CAC7B,iBACA,eACG;AACH,QAAM,gCAA4B,gCAAqB,iBAAiB,IAAI;AAC5E,QAAM,2BAAuB,gCAAqB,YAAY,IAAI;AAElE,QAAM,WAAO,uBAAU,2BAA2B,sBAAsB;AAAA,IACtE,gBAAgB;AAAA,EAClB,CAAC;AACD,QAAM,aAAa,oBAAoB,IAAI;AAG3C,QAAM,SAAmB,CAAC;AAC1B,QAAM,gBAAgB,KAAK;AAAA,IACzB,GAAG,WAAW,IAAI,OAAK,EAAE,gBAAgB,SAAS,EAAE,MAAM;AAAA,IAC1D;AAAA,EACF;AAEA,QAAM,WAAW,MAAM,aAAa,EAAE,KAAK,GAAG;AAE9C,MAAI,eAAe;AACnB,WAAS,IAAI,GAAG,IAAI,WAAW,QAAQ,KAAK;AAC1C,UAAM,OAAO,WAAW,CAAC;AACzB,QAAI,KAAK,SAAS,KAAK,SAAS;AAC9B,YAAM,SAAS,KAAK,QAAQ,UAAU,KAAK,UAAU,QAAQ;AAE7D,UAAI,KAAK,UAAU,MAAM;AACvB,YAAI,cAAc;AAChB,iBAAO,KAAK,UAAU;AACtB,yBAAe;AAAA,QACjB;AACA,eAAO;AAAA,UACL;AAAA,EAAK,KAAK,MACP,MAAM,IAAI,EACV;AAAA,YAAI,CAAC,IAAI,QACR,GAAG,KAAK,MAAM,KACV,GACE,KAAK,kBAAkB,KAAK,kBAAkB,MAAM,QACtD,GAAG,KAAK,QAAQ,MAAM,KAAK,UAAU,MAAM,GAAG,IAAI,aAAAA,QAChD,MACF,EAAE,GAAG,EAAE,EAAE,CAAC,KACV;AAAA,UACN,EACC,KAAK,IAAI,CAAC;AAAA,QACf;AAAA,MACF,MAAO,gBAAe;AAAA,IACxB,MAAO,gBAAe;AAAA,EACxB;AAEA,SAAO,OAAO,KAAK,EAAE,EAAE,WAAW,UAAU,MAAM;AACpD;AAEA,MAAM,sBAAsB,CAAC,SAAmB;AAC9C,QAAM,aAKC,CAAC;AAER,MAAI,aAAa;AACjB,MAAI,SAAS;AACb,WAAS,YAAY,GAAG,YAAY,KAAK,QAAQ,aAAa;AAC5D,UAAM,OAAO,KAAK,SAAS;AAO3B,UAAM,kBAAkB;AACxB,UAAM,cAAc;AAIpB,UAAM,YAAY,KAAK;AACvB,UAAM,QAAQ,UAAU,MAAM,IAAI;AAClC,UAAM,QAAQ,CAAC,MAAM,cAAc;AAEjC,UAAI,cAAc,GAAG;AACnB,kBAAU,KAAK;AAAA,MAEjB,WAAW,YAAY,GAAG;AACxB,sBAAc;AACd,iBAAS,KAAK;AAAA,MAChB;AAAA,IACF,CAAC;AAGD,QAAI,KAAK,UAAU,QAAQ,KAAK,YAAY,MAAM;AAChD,iBAAW,KAAK;AAAA,QACd,iBAAiB,kBAAkB;AAAA,QACnC;AAAA,QACA,eAAe;AAAA,QACf,WAAW;AAAA,QACX,GAAG;AAAA,MACL,CAAC;AAAA,IACH;AAAA,EACF;AACA,SAAO;AACT;",
6
- "names": ["chalk"]
7
- }
@@ -1,56 +0,0 @@
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 __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
- var dotenv_exports = {};
20
- __export(dotenv_exports, {
21
- mergeDotEnvFileContents: () => mergeDotEnvFileContents
22
- });
23
- module.exports = __toCommonJS(dotenv_exports);
24
- const mergeDotEnvFileContents = (existingFileLines, envContentsToAdd) => {
25
- const envFileLines = [];
26
- if (existingFileLines.length === 0) {
27
- envFileLines.push(
28
- ...Object.entries(envContentsToAdd).map(([k, v]) => `${k}=${v}`)
29
- );
30
- } else {
31
- const updatedEnvKeys = [];
32
- for (const ln of existingFileLines) {
33
- let newline = "";
34
- for (const [k, v] of Object.entries(envContentsToAdd))
35
- if (ln.startsWith(`${k}=`)) {
36
- newline = `${k}=${v}`;
37
- updatedEnvKeys.push(k);
38
- }
39
- if (newline || ln) envFileLines.push(newline || ln);
40
- }
41
- for (const addKey of Object.keys(envContentsToAdd).filter(
42
- (efl) => !updatedEnvKeys.find((uek) => {
43
- var _a;
44
- return uek.startsWith(`${(_a = efl.split("=")) == null ? void 0 : _a[0]}`);
45
- })
46
- )) {
47
- envFileLines.push(`${addKey}=${envContentsToAdd[addKey]}`);
48
- }
49
- }
50
- return envFileLines;
51
- };
52
- // Annotate the CommonJS export names for ESM import in node:
53
- 0 && (module.exports = {
54
- mergeDotEnvFileContents
55
- });
56
- //# sourceMappingURL=dotenv.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../src/util/dotenv.ts"],
4
- "sourcesContent": ["import { EnvContentsToAdd } from \"~/models/DevService\";\n\nexport const mergeDotEnvFileContents = (\n existingFileLines: string[],\n envContentsToAdd: EnvContentsToAdd\n): string[] => {\n const envFileLines: string[] = []; // the new .env file\n if (existingFileLines.length === 0) {\n // There is no env file, just create one from envContentsToAdd\n envFileLines.push(\n ...Object.entries(envContentsToAdd).map(([k, v]) => `${k}=${v}`)\n );\n } else {\n const updatedEnvKeys: string[] = [];\n // Find lines in env that already exist for the keys in envContentsToAdd\n // update them if they exist and add them to envFileLines\n for (const ln of existingFileLines) {\n let newline = '';\n for (const [k, v] of Object.entries(envContentsToAdd))\n if (ln.startsWith(`${k}=`)) {\n newline = `${k}=${v}`;\n updatedEnvKeys.push(k);\n }\n // Ensure an updated line or other lines from the existing env file are re-added\n if (newline || ln) envFileLines.push(newline || ln);\n }\n\n // Add the envContentsToAdd lines to the file that did not previously exist or had an update\n for (const addKey of Object.keys(envContentsToAdd).filter(\n efl =>\n !updatedEnvKeys.find(uek => uek.startsWith(`${efl.split('=')?.[0]}`))\n ) as (keyof typeof envContentsToAdd)[]) {\n envFileLines.push(`${addKey}=${envContentsToAdd[addKey]}`);\n }\n }\n return envFileLines;\n};\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEO,MAAM,0BAA0B,CACrC,mBACA,qBACa;AACb,QAAM,eAAyB,CAAC;AAChC,MAAI,kBAAkB,WAAW,GAAG;AAElC,iBAAa;AAAA,MACX,GAAG,OAAO,QAAQ,gBAAgB,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,EAAE;AAAA,IACjE;AAAA,EACF,OAAO;AACL,UAAM,iBAA2B,CAAC;AAGlC,eAAW,MAAM,mBAAmB;AAClC,UAAI,UAAU;AACd,iBAAW,CAAC,GAAG,CAAC,KAAK,OAAO,QAAQ,gBAAgB;AAClD,YAAI,GAAG,WAAW,GAAG,CAAC,GAAG,GAAG;AAC1B,oBAAU,GAAG,CAAC,IAAI,CAAC;AACnB,yBAAe,KAAK,CAAC;AAAA,QACvB;AAEF,UAAI,WAAW,GAAI,cAAa,KAAK,WAAW,EAAE;AAAA,IACpD;AAGA,eAAW,UAAU,OAAO,KAAK,gBAAgB,EAAE;AAAA,MACjD,SACE,CAAC,eAAe,KAAK,SAAI;AA9BjC;AA8BoC,mBAAI,WAAW,IAAG,SAAI,MAAM,GAAG,MAAb,mBAAiB,EAAE,EAAE;AAAA,OAAC;AAAA,IACxE,GAAwC;AACtC,mBAAa,KAAK,GAAG,MAAM,IAAI,iBAAiB,MAAM,CAAC,EAAE;AAAA,IAC3D;AAAA,EACF;AACA,SAAO;AACT;",
6
- "names": []
7
- }
@@ -1,36 +0,0 @@
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 __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
- var error_exports = {};
20
- __export(error_exports, {
21
- deconstructApiError: () => deconstructApiError
22
- });
23
- module.exports = __toCommonJS(error_exports);
24
- const deconstructApiError = (error) => {
25
- var _a, _b, _c;
26
- let inner = "";
27
- if ((_a = error.data) == null ? void 0 : _a[0]) {
28
- inner = `${(_b = error.data) == null ? void 0 : _b[0].Field}: ${(_c = error.data) == null ? void 0 : _c[0].Message}`;
29
- }
30
- return `${error.message} ${inner}`;
31
- };
32
- // Annotate the CommonJS export names for ESM import in node:
33
- 0 && (module.exports = {
34
- deconstructApiError
35
- });
36
- //# sourceMappingURL=error.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../src/util/error.ts"],
4
- "sourcesContent": ["export const deconstructApiError = (error: MappedError) => {\n let inner = '';\n if (error.data?.[0]) {\n inner = `${error.data?.[0].Field}: ${error.data?.[0].Message}`;\n }\n return `${error.message} ${inner}`;\n};\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAO,MAAM,sBAAsB,CAAC,UAAuB;AAA3D;AACE,MAAI,QAAQ;AACZ,OAAI,WAAM,SAAN,mBAAa,IAAI;AACnB,YAAQ,IAAG,WAAM,SAAN,mBAAa,GAAG,KAAK,MAAK,WAAM,SAAN,mBAAa,GAAG,OAAO;AAAA,EAC9D;AACA,SAAO,GAAG,MAAM,OAAO,IAAI,KAAK;AAClC;",
6
- "names": []
7
- }
@@ -1,69 +0,0 @@
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 __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
- var fetch_exports = {};
20
- __export(fetch_exports, {
21
- doRetry: () => doRetry,
22
- enhancedFetch: () => enhancedFetch
23
- });
24
- module.exports = __toCommonJS(fetch_exports);
25
- var import_enterprise_fetch = require("enterprise-fetch");
26
- var import_logger = require("./logger");
27
- const retryPolicy = {
28
- retries: 2,
29
- minTimeout: 400,
30
- factor: 2
31
- };
32
- const applyTimeout = (s) => process.env.NODE_ENV === "test" ? 2 * 1e3 : s * 1e3;
33
- const doRetry = ({ silent = false } = {}) => {
34
- const fn = async (attempt, res, { url, options } = { url: "", options: {} }) => {
35
- const { retry = retryPolicy } = options || {};
36
- let shouldRetry = false;
37
- if (!res.status || res.status >= 400 && ![400, 404, 409, 422, 500].includes(res.status)) {
38
- if (!("message" in res) || "message" in res && !res.message.includes("Nock: No match"))
39
- shouldRetry = true;
40
- }
41
- if (attempt <= retry.retries) {
42
- const errorMessage = !res.status ? `${"name" in res && res.name || "type" in res && res.type}: ${"message" in res && res.message}` : `${res.status}: ${res.statusText}`;
43
- if (!silent)
44
- import_logger.Logger.warning(
45
- `[fetch] ${shouldRetry ? `attempt ${attempt}/${retry.retries}` : "non-retriable"} ${errorMessage} ${url || ""}`
46
- );
47
- } else {
48
- shouldRetry = false;
49
- }
50
- return await Promise.resolve(shouldRetry);
51
- };
52
- return fn;
53
- };
54
- const fetchDefaults = {
55
- // The timeout to apply to requests that do not supply a timeout option
56
- timeout: applyTimeout(60),
57
- // Retry policy for all fetch requests
58
- retry: retryPolicy,
59
- // Do retry function to examine failures and apply custom retry logic
60
- // return true to retry the fetch call
61
- doRetry: doRetry()
62
- };
63
- const enhancedFetch = (0, import_enterprise_fetch.fetchWithDefaults)(fetchDefaults);
64
- // Annotate the CommonJS export names for ESM import in node:
65
- 0 && (module.exports = {
66
- doRetry,
67
- enhancedFetch
68
- });
69
- //# sourceMappingURL=fetch.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../src/util/fetch.ts"],
4
- "sourcesContent": ["import { DoRetry, FetchInit, fetchWithDefaults } from 'enterprise-fetch';\nimport { Logger } from './logger';\n\nconst retryPolicy = {\n retries: 2,\n minTimeout: 400,\n factor: 2,\n};\n\nconst applyTimeout = (s: number) =>\n process.env.NODE_ENV === 'test' ? 2 * 1000 : s * 1000;\n\nexport const doRetry = ({ silent = false } = {}) => {\n const fn: DoRetry = async (\n attempt: number,\n res: Response | AppError,\n { url, options } = { url: '', options: {} }\n ) => {\n // Get the retry policy from options or fetchDefaults\n const { retry = retryPolicy } = options || ({} as any);\n let shouldRetry = false;\n\n // Retry request on any network error, or 4xx or 5xx status codes\n if (\n !res.status ||\n (res.status >= 400 && ![400, 404, 409, 422, 500].includes(res.status))\n )\n if (\n !('message' in res) ||\n ('message' in res &&\n !(res.message as string).includes('Nock: No match'))\n )\n shouldRetry = true;\n\n if (attempt <= retry.retries) {\n // If a res has a status it is a HTTP error\n // With no status it could be a fetch error or app error\n const errorMessage = !res.status\n ? `${('name' in res && res.name) || ('type' in res && res.type)}: ${\n 'message' in res && res.message\n }`\n : `${res.status}: ${res.statusText}`;\n\n if (!silent)\n Logger.warning(\n `[fetch] ${\n shouldRetry\n ? `attempt ${attempt}/${retry.retries}`\n : 'non-retriable'\n } ${errorMessage} ${url || ''}`\n );\n } else {\n shouldRetry = false;\n }\n return await Promise.resolve(shouldRetry);\n };\n return fn;\n};\n\nconst fetchDefaults = {\n // The timeout to apply to requests that do not supply a timeout option\n timeout: applyTimeout(60),\n // Retry policy for all fetch requests\n retry: retryPolicy,\n // Do retry function to examine failures and apply custom retry logic\n // return true to retry the fetch call\n doRetry: doRetry(),\n} as FetchInit;\n\nexport const enhancedFetch = fetchWithDefaults(fetchDefaults);\n// export const assetFetch = fetchWithDefaults({\n// ...fetchDefaults,\n// timeout: applyTimeout(1200),\n// });\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,8BAAsD;AACtD,oBAAuB;AAEvB,MAAM,cAAc;AAAA,EAClB,SAAS;AAAA,EACT,YAAY;AAAA,EACZ,QAAQ;AACV;AAEA,MAAM,eAAe,CAAC,MACpB,QAAQ,IAAI,aAAa,SAAS,IAAI,MAAO,IAAI;AAE5C,MAAM,UAAU,CAAC,EAAE,SAAS,MAAM,IAAI,CAAC,MAAM;AAClD,QAAM,KAAc,OAClB,SACA,KACA,EAAE,KAAK,QAAQ,IAAI,EAAE,KAAK,IAAI,SAAS,CAAC,EAAE,MACvC;AAEH,UAAM,EAAE,QAAQ,YAAY,IAAI,WAAY,CAAC;AAC7C,QAAI,cAAc;AAGlB,QACE,CAAC,IAAI,UACJ,IAAI,UAAU,OAAO,CAAC,CAAC,KAAK,KAAK,KAAK,KAAK,GAAG,EAAE,SAAS,IAAI,MAAM;AAEpE,UACE,EAAE,aAAa,QACd,aAAa,OACZ,CAAE,IAAI,QAAmB,SAAS,gBAAgB;AAEpD,sBAAc;AAAA;AAElB,QAAI,WAAW,MAAM,SAAS;AAG5B,YAAM,eAAe,CAAC,IAAI,SACtB,GAAI,UAAU,OAAO,IAAI,QAAU,UAAU,OAAO,IAAI,IAAK,KAC3D,aAAa,OAAO,IAAI,OAC1B,KACA,GAAG,IAAI,MAAM,KAAK,IAAI,UAAU;AAEpC,UAAI,CAAC;AACH,6BAAO;AAAA,UACL,WACE,cACI,WAAW,OAAO,IAAI,MAAM,OAAO,KACnC,eACN,IAAI,YAAY,IAAI,OAAO,EAAE;AAAA,QAC/B;AAAA,IACJ,OAAO;AACL,oBAAc;AAAA,IAChB;AACA,WAAO,MAAM,QAAQ,QAAQ,WAAW;AAAA,EAC1C;AACA,SAAO;AACT;AAEA,MAAM,gBAAgB;AAAA;AAAA,EAEpB,SAAS,aAAa,EAAE;AAAA;AAAA,EAExB,OAAO;AAAA;AAAA;AAAA,EAGP,SAAS,QAAQ;AACnB;AAEO,MAAM,oBAAgB,2CAAkB,aAAa;",
6
- "names": []
7
- }
package/dist/util/find.js DELETED
@@ -1,39 +0,0 @@
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 __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
- var find_exports = {};
20
- __export(find_exports, {
21
- findByIdOrName: () => findByIdOrName
22
- });
23
- module.exports = __toCommonJS(find_exports);
24
- const findByIdOrName = (arr, idOrName, exact = false) => arr.find(
25
- (r) => {
26
- var _a;
27
- return r.id === idOrName || typeof r.name === "string" && r.name.toLowerCase() === idOrName.toLowerCase() || typeof r.name === "object" && ((_a = Object.values(r.name || {})) == null ? void 0 : _a[0].toLowerCase()) === idOrName.toLowerCase();
28
- }
29
- ) || !exact && arr.find(
30
- (r) => {
31
- var _a;
32
- return typeof r.name === "string" && r.name.toLowerCase().includes(idOrName.toLowerCase()) || typeof r.name === "object" && ((_a = Object.values(r.name || {})) == null ? void 0 : _a[0].toLowerCase()) === idOrName.toLowerCase();
33
- }
34
- );
35
- // Annotate the CommonJS export names for ESM import in node:
36
- 0 && (module.exports = {
37
- findByIdOrName
38
- });
39
- //# sourceMappingURL=find.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../src/util/find.ts"],
4
- "sourcesContent": ["export const findByIdOrName = (arr: any[], idOrName: string, exact = false) =>\n arr.find(\n r =>\n r.id === idOrName ||\n (typeof r.name === 'string' &&\n r.name.toLowerCase() === idOrName.toLowerCase()) ||\n (typeof r.name === 'object' &&\n Object.values<string>(r.name || {})?.[0].toLowerCase() ===\n idOrName.toLowerCase())\n ) ||\n (!exact &&\n arr.find(\n r =>\n (typeof r.name === 'string' &&\n r.name.toLowerCase().includes(idOrName.toLowerCase())) ||\n (typeof r.name === 'object' &&\n Object.values<string>(r.name || {})?.[0].toLowerCase() ===\n idOrName.toLowerCase())\n ));\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAO,MAAM,iBAAiB,CAAC,KAAY,UAAkB,QAAQ,UACnE,IAAI;AAAA,EACF,OAAE;AAFN;AAGM,aAAE,OAAO,YACR,OAAO,EAAE,SAAS,YACjB,EAAE,KAAK,YAAY,MAAM,SAAS,YAAY,KAC/C,OAAO,EAAE,SAAS,cACjB,YAAO,OAAe,EAAE,QAAQ,CAAC,CAAC,MAAlC,mBAAsC,GAAG,mBACvC,SAAS,YAAY;AAAA;AAC7B,KACC,CAAC,SACA,IAAI;AAAA,EACF,OAAE;AAZR;AAaS,kBAAO,EAAE,SAAS,YACjB,EAAE,KAAK,YAAY,EAAE,SAAS,SAAS,YAAY,CAAC,KACrD,OAAO,EAAE,SAAS,cACjB,YAAO,OAAe,EAAE,QAAQ,CAAC,CAAC,MAAlC,mBAAsC,GAAG,mBACvC,SAAS,YAAY;AAAA;AAC7B;",
6
- "names": []
7
- }