@peernova/cuneiform-sf 1.0.2 → 1.0.4-beta.8

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 (494) hide show
  1. package/LICENSE +81 -30
  2. package/README.md +59 -95
  3. package/lib/adapters/connection-facade.d.ts +458 -0
  4. package/lib/adapters/connection-facade.js +379 -0
  5. package/lib/adapters/connection-facade.js.map +1 -0
  6. package/lib/adapters/errors.d.ts +547 -0
  7. package/lib/adapters/errors.js +937 -0
  8. package/lib/adapters/errors.js.map +1 -0
  9. package/lib/adapters/index.d.ts +33 -0
  10. package/lib/adapters/index.js +50 -0
  11. package/lib/adapters/index.js.map +1 -0
  12. package/lib/adapters/lifecycle.d.ts +119 -0
  13. package/lib/adapters/lifecycle.js +94 -0
  14. package/lib/adapters/lifecycle.js.map +1 -0
  15. package/lib/adapters/rest/cache.d.ts +69 -0
  16. package/lib/adapters/rest/cache.js +133 -0
  17. package/lib/adapters/rest/cache.js.map +1 -0
  18. package/lib/adapters/rest/index.d.ts +11 -0
  19. package/lib/adapters/rest/index.js +18 -0
  20. package/lib/adapters/rest/index.js.map +1 -0
  21. package/lib/adapters/rest/profiling-rest-client.d.ts +137 -0
  22. package/lib/adapters/rest/profiling-rest-client.js +115 -0
  23. package/lib/adapters/rest/profiling-rest-client.js.map +1 -0
  24. package/lib/adapters/rest/rest-api-adapter.d.ts +389 -0
  25. package/lib/adapters/rest/rest-api-adapter.js +747 -0
  26. package/lib/adapters/rest/rest-api-adapter.js.map +1 -0
  27. package/lib/adapters/rest/types.d.ts +34 -0
  28. package/lib/adapters/rest/types.js +9 -0
  29. package/lib/adapters/rest/types.js.map +1 -0
  30. package/lib/adapters/retry.d.ts +91 -0
  31. package/lib/adapters/retry.js +215 -0
  32. package/lib/adapters/retry.js.map +1 -0
  33. package/lib/adapters/soql/cuneiform-query-builder.d.ts +391 -0
  34. package/lib/adapters/soql/cuneiform-query-builder.js +559 -0
  35. package/lib/adapters/soql/cuneiform-query-builder.js.map +1 -0
  36. package/lib/adapters/soql/index.d.ts +13 -0
  37. package/lib/adapters/soql/index.js +21 -0
  38. package/lib/adapters/soql/index.js.map +1 -0
  39. package/lib/adapters/soql/soql-query-adapter.d.ts +141 -0
  40. package/lib/adapters/soql/soql-query-adapter.js +259 -0
  41. package/lib/adapters/soql/soql-query-adapter.js.map +1 -0
  42. package/lib/adapters/soql/types.d.ts +37 -0
  43. package/lib/adapters/soql/types.js +19 -0
  44. package/lib/adapters/soql/types.js.map +1 -0
  45. package/lib/adapters/testing/index.d.ts +37 -0
  46. package/lib/adapters/testing/index.js +20 -0
  47. package/lib/adapters/testing/index.js.map +1 -0
  48. package/lib/adapters/testing/mock-connection.d.ts +77 -0
  49. package/lib/adapters/testing/mock-connection.js +207 -0
  50. package/lib/adapters/testing/mock-connection.js.map +1 -0
  51. package/lib/adapters/testing/mock-logger.d.ts +29 -0
  52. package/lib/adapters/testing/mock-logger.js +57 -0
  53. package/lib/adapters/testing/mock-logger.js.map +1 -0
  54. package/lib/adapters/testing/mock-mcp-adapters.d.ts +32 -0
  55. package/lib/adapters/testing/mock-mcp-adapters.js +52 -0
  56. package/lib/adapters/testing/mock-mcp-adapters.js.map +1 -0
  57. package/lib/adapters/testing/mock-oclif-config.d.ts +22 -0
  58. package/lib/adapters/testing/mock-oclif-config.js +90 -0
  59. package/lib/adapters/testing/mock-oclif-config.js.map +1 -0
  60. package/lib/adapters/testing/mock-rest-adapter.d.ts +26 -0
  61. package/lib/adapters/testing/mock-rest-adapter.js +243 -0
  62. package/lib/adapters/testing/mock-rest-adapter.js.map +1 -0
  63. package/lib/adapters/testing/mock-salesforce-connection.d.ts +40 -0
  64. package/lib/adapters/testing/mock-salesforce-connection.js +61 -0
  65. package/lib/adapters/testing/mock-salesforce-connection.js.map +1 -0
  66. package/lib/adapters/testing/mock-soql-adapter.d.ts +30 -0
  67. package/lib/adapters/testing/mock-soql-adapter.js +120 -0
  68. package/lib/adapters/testing/mock-soql-adapter.js.map +1 -0
  69. package/lib/adapters/testing/mock-tooling-adapter.d.ts +24 -0
  70. package/lib/adapters/testing/mock-tooling-adapter.js +163 -0
  71. package/lib/adapters/testing/mock-tooling-adapter.js.map +1 -0
  72. package/lib/adapters/testing/stub-connection.d.ts +93 -0
  73. package/lib/adapters/testing/stub-connection.js +97 -0
  74. package/lib/adapters/testing/stub-connection.js.map +1 -0
  75. package/lib/adapters/testing/stub-rest-adapter.d.ts +52 -0
  76. package/lib/adapters/testing/stub-rest-adapter.js +58 -0
  77. package/lib/adapters/testing/stub-rest-adapter.js.map +1 -0
  78. package/lib/adapters/testing/stub-soql-adapter.d.ts +56 -0
  79. package/lib/adapters/testing/stub-soql-adapter.js +50 -0
  80. package/lib/adapters/testing/stub-soql-adapter.js.map +1 -0
  81. package/lib/adapters/testing/types.d.ts +71 -0
  82. package/lib/adapters/testing/types.js +9 -0
  83. package/lib/adapters/testing/types.js.map +1 -0
  84. package/lib/adapters/tooling/index.d.ts +10 -0
  85. package/lib/adapters/tooling/index.js +17 -0
  86. package/lib/adapters/tooling/index.js.map +1 -0
  87. package/lib/adapters/tooling/tooling-api-adapter.d.ts +157 -0
  88. package/lib/adapters/tooling/tooling-api-adapter.js +339 -0
  89. package/lib/adapters/tooling/tooling-api-adapter.js.map +1 -0
  90. package/lib/adapters/tooling/types.d.ts +81 -0
  91. package/lib/adapters/tooling/types.js +9 -0
  92. package/lib/adapters/tooling/types.js.map +1 -0
  93. package/lib/adapters/types.d.ts +112 -0
  94. package/lib/adapters/types.js +169 -0
  95. package/lib/adapters/types.js.map +1 -0
  96. package/lib/base/cuneiform-command.d.ts +152 -0
  97. package/lib/base/cuneiform-command.js +243 -0
  98. package/lib/base/cuneiform-command.js.map +1 -0
  99. package/lib/commands/cuneiform/compatibility/check.d.ts +43 -0
  100. package/lib/commands/cuneiform/compatibility/check.js +114 -0
  101. package/lib/commands/cuneiform/compatibility/check.js.map +1 -0
  102. package/lib/commands/cuneiform/definition/create.d.ts +119 -0
  103. package/lib/commands/cuneiform/definition/create.js +693 -0
  104. package/lib/commands/cuneiform/definition/create.js.map +1 -0
  105. package/lib/commands/cuneiform/definition/export.d.ts +57 -0
  106. package/lib/commands/cuneiform/definition/export.js +133 -0
  107. package/lib/commands/cuneiform/definition/export.js.map +1 -0
  108. package/lib/commands/cuneiform/definition/get.d.ts +86 -0
  109. package/lib/commands/cuneiform/definition/get.js +270 -0
  110. package/lib/commands/cuneiform/definition/get.js.map +1 -0
  111. package/lib/commands/cuneiform/definition/import.d.ts +54 -0
  112. package/lib/commands/cuneiform/definition/import.js +118 -0
  113. package/lib/commands/cuneiform/definition/import.js.map +1 -0
  114. package/lib/commands/cuneiform/definition/list.d.ts +110 -0
  115. package/lib/commands/cuneiform/definition/list.js +344 -0
  116. package/lib/commands/cuneiform/definition/list.js.map +1 -0
  117. package/lib/commands/cuneiform/definition/purge.d.ts +105 -0
  118. package/lib/commands/cuneiform/definition/purge.js +533 -0
  119. package/lib/commands/cuneiform/definition/purge.js.map +1 -0
  120. package/lib/commands/cuneiform/definition/update.d.ts +58 -0
  121. package/lib/commands/cuneiform/definition/update.js +206 -0
  122. package/lib/commands/cuneiform/definition/update.js.map +1 -0
  123. package/lib/commands/cuneiform/mcp/serve.d.ts +56 -0
  124. package/lib/commands/cuneiform/mcp/serve.js +109 -0
  125. package/lib/commands/cuneiform/mcp/serve.js.map +1 -0
  126. package/lib/commands/cuneiform/object/describe.d.ts +61 -0
  127. package/lib/commands/cuneiform/object/describe.js +461 -0
  128. package/lib/commands/cuneiform/object/describe.js.map +1 -0
  129. package/lib/commands/cuneiform/object/list.d.ts +111 -0
  130. package/lib/commands/cuneiform/object/list.js +239 -0
  131. package/lib/commands/cuneiform/object/list.js.map +1 -0
  132. package/lib/commands/cuneiform/org/details.d.ts +99 -0
  133. package/lib/commands/cuneiform/org/details.js +521 -0
  134. package/lib/commands/cuneiform/org/details.js.map +1 -0
  135. package/lib/commands/cuneiform/org/reset.d.ts +46 -0
  136. package/lib/commands/cuneiform/org/reset.js +135 -0
  137. package/lib/commands/cuneiform/org/reset.js.map +1 -0
  138. package/lib/commands/cuneiform/profile/request/cancel.d.ts +59 -0
  139. package/lib/commands/cuneiform/profile/request/cancel.js +202 -0
  140. package/lib/commands/cuneiform/profile/request/cancel.js.map +1 -0
  141. package/lib/commands/cuneiform/profile/request/delete.d.ts +59 -0
  142. package/lib/commands/cuneiform/profile/request/delete.js +223 -0
  143. package/lib/commands/cuneiform/profile/request/delete.js.map +1 -0
  144. package/lib/commands/cuneiform/profile/request/list.d.ts +35 -0
  145. package/lib/commands/cuneiform/profile/request/list.js +102 -0
  146. package/lib/commands/cuneiform/profile/request/list.js.map +1 -0
  147. package/lib/commands/cuneiform/profile.d.ts +90 -0
  148. package/lib/commands/cuneiform/profile.js +322 -0
  149. package/lib/commands/cuneiform/profile.js.map +1 -0
  150. package/lib/commands/cuneiform/summary/purge.d.ts +77 -0
  151. package/lib/commands/cuneiform/summary/purge.js +429 -0
  152. package/lib/commands/cuneiform/summary/purge.js.map +1 -0
  153. package/lib/commands/cuneiform/summary/reprofile.d.ts +60 -0
  154. package/lib/commands/cuneiform/summary/reprofile.js +236 -0
  155. package/lib/commands/cuneiform/summary/reprofile.js.map +1 -0
  156. package/lib/commands/cuneiform/summary/stop.d.ts +59 -0
  157. package/lib/commands/cuneiform/summary/stop.js +234 -0
  158. package/lib/commands/cuneiform/summary/stop.js.map +1 -0
  159. package/lib/commands/cuneiform/user/details.d.ts +73 -0
  160. package/lib/commands/cuneiform/user/details.js +391 -0
  161. package/lib/commands/cuneiform/user/details.js.map +1 -0
  162. package/lib/constants/index.d.ts +8 -0
  163. package/lib/constants/index.js +16 -0
  164. package/lib/constants/index.js.map +1 -0
  165. package/lib/constants/namespace-constants.d.ts +91 -0
  166. package/lib/constants/namespace-constants.js +211 -0
  167. package/lib/constants/namespace-constants.js.map +1 -0
  168. package/lib/debug/command-debug-proxy.d.ts +101 -0
  169. package/lib/debug/command-debug-proxy.js +171 -0
  170. package/lib/debug/command-debug-proxy.js.map +1 -0
  171. package/lib/debug/debug-logger.d.ts +85 -0
  172. package/lib/debug/debug-logger.js +133 -0
  173. package/lib/debug/debug-logger.js.map +1 -0
  174. package/lib/debug/index.d.ts +12 -0
  175. package/lib/debug/index.js +20 -0
  176. package/lib/debug/index.js.map +1 -0
  177. package/lib/debug/service-debug-proxy.d.ts +30 -0
  178. package/lib/debug/service-debug-proxy.js +102 -0
  179. package/lib/debug/service-debug-proxy.js.map +1 -0
  180. package/lib/hooks/prerun.d.ts +25 -0
  181. package/lib/hooks/prerun.js +47 -0
  182. package/lib/hooks/prerun.js.map +1 -0
  183. package/lib/mcp/config/mcp-config.d.ts +55 -0
  184. package/lib/mcp/config/mcp-config.js +51 -0
  185. package/lib/mcp/config/mcp-config.js.map +1 -0
  186. package/lib/mcp/config/pagination.d.ts +96 -0
  187. package/lib/mcp/config/pagination.js +108 -0
  188. package/lib/mcp/config/pagination.js.map +1 -0
  189. package/lib/mcp/config/system-prompts.d.ts +18 -0
  190. package/lib/mcp/config/system-prompts.js +92 -0
  191. package/lib/mcp/config/system-prompts.js.map +1 -0
  192. package/lib/mcp/errors.d.ts +23 -0
  193. package/lib/mcp/errors.js +27 -0
  194. package/lib/mcp/errors.js.map +1 -0
  195. package/lib/mcp/schemas/input-schemas.d.ts +327 -0
  196. package/lib/mcp/schemas/input-schemas.js +302 -0
  197. package/lib/mcp/schemas/input-schemas.js.map +1 -0
  198. package/lib/mcp/server.d.ts +40 -0
  199. package/lib/mcp/server.js +316 -0
  200. package/lib/mcp/server.js.map +1 -0
  201. package/lib/mcp/tools/contactpoint-tools.d.ts +14 -0
  202. package/lib/mcp/tools/contactpoint-tools.js +34 -0
  203. package/lib/mcp/tools/contactpoint-tools.js.map +1 -0
  204. package/lib/mcp/tools/definition-io-tools.d.ts +19 -0
  205. package/lib/mcp/tools/definition-io-tools.js +152 -0
  206. package/lib/mcp/tools/definition-io-tools.js.map +1 -0
  207. package/lib/mcp/tools/definition-tools.d.ts +51 -0
  208. package/lib/mcp/tools/definition-tools.js +199 -0
  209. package/lib/mcp/tools/definition-tools.js.map +1 -0
  210. package/lib/mcp/tools/index.d.ts +37 -0
  211. package/lib/mcp/tools/index.js +88 -0
  212. package/lib/mcp/tools/index.js.map +1 -0
  213. package/lib/mcp/tools/object-tools.d.ts +22 -0
  214. package/lib/mcp/tools/object-tools.js +306 -0
  215. package/lib/mcp/tools/object-tools.js.map +1 -0
  216. package/lib/mcp/tools/org-tools.d.ts +14 -0
  217. package/lib/mcp/tools/org-tools.js +177 -0
  218. package/lib/mcp/tools/org-tools.js.map +1 -0
  219. package/lib/mcp/tools/profile-tools.d.ts +59 -0
  220. package/lib/mcp/tools/profile-tools.js +213 -0
  221. package/lib/mcp/tools/profile-tools.js.map +1 -0
  222. package/lib/mcp/tools/summary-tools.d.ts +14 -0
  223. package/lib/mcp/tools/summary-tools.js +38 -0
  224. package/lib/mcp/tools/summary-tools.js.map +1 -0
  225. package/lib/mcp/tools/tool-factory.d.ts +63 -0
  226. package/lib/mcp/tools/tool-factory.js +146 -0
  227. package/lib/mcp/tools/tool-factory.js.map +1 -0
  228. package/lib/mcp/tools/user-tools.d.ts +25 -0
  229. package/lib/mcp/tools/user-tools.js +167 -0
  230. package/lib/mcp/tools/user-tools.js.map +1 -0
  231. package/lib/models/date-literal.d.ts +211 -0
  232. package/lib/models/date-literal.js +615 -0
  233. package/lib/models/date-literal.js.map +1 -0
  234. package/lib/models/object-describe-types.d.ts +173 -0
  235. package/lib/models/object-describe-types.js +9 -0
  236. package/lib/models/object-describe-types.js.map +1 -0
  237. package/lib/models/profile-request-types.d.ts +118 -0
  238. package/lib/models/profile-request-types.js +23 -0
  239. package/lib/models/profile-request-types.js.map +1 -0
  240. package/lib/models/profiling-execution-types.d.ts +154 -0
  241. package/lib/models/profiling-execution-types.js +14 -0
  242. package/lib/models/profiling-execution-types.js.map +1 -0
  243. package/lib/models/service-result.d.ts +114 -0
  244. package/lib/models/service-result.js +81 -0
  245. package/lib/models/service-result.js.map +1 -0
  246. package/lib/models/sfdmu-types.d.ts +53 -0
  247. package/lib/models/sfdmu-types.js +23 -0
  248. package/lib/models/sfdmu-types.js.map +1 -0
  249. package/lib/models/status-types.d.ts +38 -0
  250. package/lib/models/status-types.js +12 -0
  251. package/lib/models/status-types.js.map +1 -0
  252. package/lib/models/summary-bulk-types.d.ts +61 -0
  253. package/lib/models/summary-bulk-types.js +23 -0
  254. package/lib/models/summary-bulk-types.js.map +1 -0
  255. package/lib/models/user-details-types.d.ts +163 -0
  256. package/lib/models/user-details-types.js +9 -0
  257. package/lib/models/user-details-types.js.map +1 -0
  258. package/lib/models/year-range.d.ts +78 -0
  259. package/lib/models/year-range.js +153 -0
  260. package/lib/models/year-range.js.map +1 -0
  261. package/lib/operations/CompatibilityCheckOperation.d.ts +62 -0
  262. package/lib/operations/CompatibilityCheckOperation.js +102 -0
  263. package/lib/operations/CompatibilityCheckOperation.js.map +1 -0
  264. package/lib/operations/DefinitionCreateOperation.d.ts +411 -0
  265. package/lib/operations/DefinitionCreateOperation.js +1121 -0
  266. package/lib/operations/DefinitionCreateOperation.js.map +1 -0
  267. package/lib/operations/DefinitionExportOperation.d.ts +155 -0
  268. package/lib/operations/DefinitionExportOperation.js +281 -0
  269. package/lib/operations/DefinitionExportOperation.js.map +1 -0
  270. package/lib/operations/DefinitionImportOperation.d.ts +144 -0
  271. package/lib/operations/DefinitionImportOperation.js +357 -0
  272. package/lib/operations/DefinitionImportOperation.js.map +1 -0
  273. package/lib/operations/DefinitionListOperation.d.ts +66 -0
  274. package/lib/operations/DefinitionListOperation.js +108 -0
  275. package/lib/operations/DefinitionListOperation.js.map +1 -0
  276. package/lib/operations/DefinitionPurgeOperation.d.ts +199 -0
  277. package/lib/operations/DefinitionPurgeOperation.js +465 -0
  278. package/lib/operations/DefinitionPurgeOperation.js.map +1 -0
  279. package/lib/operations/DefinitionUpdateOperation.d.ts +78 -0
  280. package/lib/operations/DefinitionUpdateOperation.js +142 -0
  281. package/lib/operations/DefinitionUpdateOperation.js.map +1 -0
  282. package/lib/operations/OrgDetailsOperation.d.ts +253 -0
  283. package/lib/operations/OrgDetailsOperation.js +456 -0
  284. package/lib/operations/OrgDetailsOperation.js.map +1 -0
  285. package/lib/operations/OrgResetOperation.d.ts +114 -0
  286. package/lib/operations/OrgResetOperation.js +209 -0
  287. package/lib/operations/OrgResetOperation.js.map +1 -0
  288. package/lib/operations/ProfileOperation.d.ts +187 -0
  289. package/lib/operations/ProfileOperation.js +373 -0
  290. package/lib/operations/ProfileOperation.js.map +1 -0
  291. package/lib/operations/ProfileRequestCancelOperation.d.ts +59 -0
  292. package/lib/operations/ProfileRequestCancelOperation.js +137 -0
  293. package/lib/operations/ProfileRequestCancelOperation.js.map +1 -0
  294. package/lib/operations/ProfileRequestDeleteOperation.d.ts +64 -0
  295. package/lib/operations/ProfileRequestDeleteOperation.js +134 -0
  296. package/lib/operations/ProfileRequestDeleteOperation.js.map +1 -0
  297. package/lib/operations/ProfileRequestListOperation.d.ts +39 -0
  298. package/lib/operations/ProfileRequestListOperation.js +61 -0
  299. package/lib/operations/ProfileRequestListOperation.js.map +1 -0
  300. package/lib/operations/SummaryPurgeOperation.d.ts +134 -0
  301. package/lib/operations/SummaryPurgeOperation.js +257 -0
  302. package/lib/operations/SummaryPurgeOperation.js.map +1 -0
  303. package/lib/operations/SummaryReprofileOperation.d.ts +88 -0
  304. package/lib/operations/SummaryReprofileOperation.js +174 -0
  305. package/lib/operations/SummaryReprofileOperation.js.map +1 -0
  306. package/lib/operations/SummaryStopOperation.d.ts +87 -0
  307. package/lib/operations/SummaryStopOperation.js +175 -0
  308. package/lib/operations/SummaryStopOperation.js.map +1 -0
  309. package/lib/services/BulkExecutionService.d.ts +120 -0
  310. package/lib/services/BulkExecutionService.js +535 -0
  311. package/lib/services/BulkExecutionService.js.map +1 -0
  312. package/lib/services/CompatibilityService.d.ts +81 -0
  313. package/lib/services/CompatibilityService.js +118 -0
  314. package/lib/services/CompatibilityService.js.map +1 -0
  315. package/lib/services/ConfigureMode.d.ts +85 -0
  316. package/lib/services/ConfigureMode.js +390 -0
  317. package/lib/services/ConfigureMode.js.map +1 -0
  318. package/lib/services/ContactPointService.d.ts +111 -0
  319. package/lib/services/ContactPointService.js +286 -0
  320. package/lib/services/ContactPointService.js.map +1 -0
  321. package/lib/services/DataAvailabilityService.d.ts +81 -0
  322. package/lib/services/DataAvailabilityService.js +128 -0
  323. package/lib/services/DataAvailabilityService.js.map +1 -0
  324. package/lib/services/DefinitionFieldGenerationService.d.ts +309 -0
  325. package/lib/services/DefinitionFieldGenerationService.js +795 -0
  326. package/lib/services/DefinitionFieldGenerationService.js.map +1 -0
  327. package/lib/services/DefinitionQueryBuilder.d.ts +59 -0
  328. package/lib/services/DefinitionQueryBuilder.js +234 -0
  329. package/lib/services/DefinitionQueryBuilder.js.map +1 -0
  330. package/lib/services/ObjectDescribeService.d.ts +436 -0
  331. package/lib/services/ObjectDescribeService.js +869 -0
  332. package/lib/services/ObjectDescribeService.js.map +1 -0
  333. package/lib/services/ObjectFilteringService.d.ts +400 -0
  334. package/lib/services/ObjectFilteringService.js +878 -0
  335. package/lib/services/ObjectFilteringService.js.map +1 -0
  336. package/lib/services/ObjectListCommandService.d.ts +429 -0
  337. package/lib/services/ObjectListCommandService.js +873 -0
  338. package/lib/services/ObjectListCommandService.js.map +1 -0
  339. package/lib/services/ObjectListService.d.ts +201 -0
  340. package/lib/services/ObjectListService.js +345 -0
  341. package/lib/services/ObjectListService.js.map +1 -0
  342. package/lib/services/OrgInfoService.d.ts +485 -0
  343. package/lib/services/OrgInfoService.js +1122 -0
  344. package/lib/services/OrgInfoService.js.map +1 -0
  345. package/lib/services/PollingService.d.ts +105 -0
  346. package/lib/services/PollingService.js +117 -0
  347. package/lib/services/PollingService.js.map +1 -0
  348. package/lib/services/ProfileRequestService.d.ts +186 -0
  349. package/lib/services/ProfileRequestService.js +555 -0
  350. package/lib/services/ProfileRequestService.js.map +1 -0
  351. package/lib/services/ProfilingDefinitionService.d.ts +535 -0
  352. package/lib/services/ProfilingDefinitionService.js +981 -0
  353. package/lib/services/ProfilingDefinitionService.js.map +1 -0
  354. package/lib/services/ProfilingExecutionService.d.ts +122 -0
  355. package/lib/services/ProfilingExecutionService.js +320 -0
  356. package/lib/services/ProfilingExecutionService.js.map +1 -0
  357. package/lib/services/ProfilingSummaryService.d.ts +292 -0
  358. package/lib/services/ProfilingSummaryService.js +685 -0
  359. package/lib/services/ProfilingSummaryService.js.map +1 -0
  360. package/lib/services/RecordTypeService.d.ts +129 -0
  361. package/lib/services/RecordTypeService.js +284 -0
  362. package/lib/services/RecordTypeService.js.map +1 -0
  363. package/lib/services/SFDMUService.d.ts +133 -0
  364. package/lib/services/SFDMUService.js +295 -0
  365. package/lib/services/SFDMUService.js.map +1 -0
  366. package/lib/services/TabDetectionService.d.ts +105 -0
  367. package/lib/services/TabDetectionService.js +206 -0
  368. package/lib/services/TabDetectionService.js.map +1 -0
  369. package/lib/services/UnconfigureMode.d.ts +74 -0
  370. package/lib/services/UnconfigureMode.js +378 -0
  371. package/lib/services/UnconfigureMode.js.map +1 -0
  372. package/lib/services/UserConfigurationService.d.ts +155 -0
  373. package/lib/services/UserConfigurationService.js +573 -0
  374. package/lib/services/UserConfigurationService.js.map +1 -0
  375. package/lib/services/UserConfigurationTypes.d.ts +181 -0
  376. package/lib/services/UserConfigurationTypes.js +14 -0
  377. package/lib/services/UserConfigurationTypes.js.map +1 -0
  378. package/lib/services/UserReadinessService.d.ts +330 -0
  379. package/lib/services/UserReadinessService.js +831 -0
  380. package/lib/services/UserReadinessService.js.map +1 -0
  381. package/lib/services/constants.d.ts +53 -0
  382. package/lib/services/constants.js +71 -0
  383. package/lib/services/constants.js.map +1 -0
  384. package/lib/services/namespace-constants.d.ts +1 -0
  385. package/lib/services/namespace-constants.js +11 -0
  386. package/lib/services/namespace-constants.js.map +1 -0
  387. package/lib/services/validation.d.ts +47 -0
  388. package/lib/services/validation.js +119 -0
  389. package/lib/services/validation.js.map +1 -0
  390. package/lib/utils/batch-processor.d.ts +13 -0
  391. package/lib/utils/batch-processor.js +39 -0
  392. package/lib/utils/batch-processor.js.map +1 -0
  393. package/lib/utils/formatting/availability-grid.d.ts +81 -0
  394. package/lib/utils/formatting/availability-grid.js +94 -0
  395. package/lib/utils/formatting/availability-grid.js.map +1 -0
  396. package/lib/utils/formatting/business-process-grid.d.ts +51 -0
  397. package/lib/utils/formatting/business-process-grid.js +58 -0
  398. package/lib/utils/formatting/business-process-grid.js.map +1 -0
  399. package/lib/utils/formatting/command-display.d.ts +154 -0
  400. package/lib/utils/formatting/command-display.js +154 -0
  401. package/lib/utils/formatting/command-display.js.map +1 -0
  402. package/lib/utils/formatting/definition-create-display.d.ts +118 -0
  403. package/lib/utils/formatting/definition-create-display.js +231 -0
  404. package/lib/utils/formatting/definition-create-display.js.map +1 -0
  405. package/lib/utils/formatting/empty-states.d.ts +35 -0
  406. package/lib/utils/formatting/empty-states.js +70 -0
  407. package/lib/utils/formatting/empty-states.js.map +1 -0
  408. package/lib/utils/formatting/errors.d.ts +33 -0
  409. package/lib/utils/formatting/errors.js +72 -0
  410. package/lib/utils/formatting/errors.js.map +1 -0
  411. package/lib/utils/formatting/field-types.d.ts +32 -0
  412. package/lib/utils/formatting/field-types.js +88 -0
  413. package/lib/utils/formatting/field-types.js.map +1 -0
  414. package/lib/utils/formatting/index.d.ts +29 -0
  415. package/lib/utils/formatting/index.js +28 -0
  416. package/lib/utils/formatting/index.js.map +1 -0
  417. package/lib/utils/formatting/indicators.d.ts +113 -0
  418. package/lib/utils/formatting/indicators.js +161 -0
  419. package/lib/utils/formatting/indicators.js.map +1 -0
  420. package/lib/utils/formatting/loading-messages.d.ts +37 -0
  421. package/lib/utils/formatting/loading-messages.js +50 -0
  422. package/lib/utils/formatting/loading-messages.js.map +1 -0
  423. package/lib/utils/formatting/namespace-display.d.ts +31 -0
  424. package/lib/utils/formatting/namespace-display.js +64 -0
  425. package/lib/utils/formatting/namespace-display.js.map +1 -0
  426. package/lib/utils/formatting/numbers.d.ts +73 -0
  427. package/lib/utils/formatting/numbers.js +187 -0
  428. package/lib/utils/formatting/numbers.js.map +1 -0
  429. package/lib/utils/formatting/object-describe-display.d.ts +114 -0
  430. package/lib/utils/formatting/object-describe-display.js +440 -0
  431. package/lib/utils/formatting/object-describe-display.js.map +1 -0
  432. package/lib/utils/formatting/object-list-display.d.ts +213 -0
  433. package/lib/utils/formatting/object-list-display.js +672 -0
  434. package/lib/utils/formatting/object-list-display.js.map +1 -0
  435. package/lib/utils/formatting/org-identity.d.ts +15 -0
  436. package/lib/utils/formatting/org-identity.js +28 -0
  437. package/lib/utils/formatting/org-identity.js.map +1 -0
  438. package/lib/utils/formatting/record-age-grid.d.ts +41 -0
  439. package/lib/utils/formatting/record-age-grid.js +56 -0
  440. package/lib/utils/formatting/record-age-grid.js.map +1 -0
  441. package/lib/utils/formatting/sections.d.ts +108 -0
  442. package/lib/utils/formatting/sections.js +150 -0
  443. package/lib/utils/formatting/sections.js.map +1 -0
  444. package/lib/utils/formatting/tables.d.ts +90 -0
  445. package/lib/utils/formatting/tables.js +113 -0
  446. package/lib/utils/formatting/tables.js.map +1 -0
  447. package/lib/utils/formatting/user-details-display.d.ts +101 -0
  448. package/lib/utils/formatting/user-details-display.js +425 -0
  449. package/lib/utils/formatting/user-details-display.js.map +1 -0
  450. package/lib/utils/pagination/index.d.ts +11 -0
  451. package/lib/utils/pagination/index.js +18 -0
  452. package/lib/utils/pagination/index.js.map +1 -0
  453. package/lib/utils/pagination/keypress-reader.d.ts +20 -0
  454. package/lib/utils/pagination/keypress-reader.js +63 -0
  455. package/lib/utils/pagination/keypress-reader.js.map +1 -0
  456. package/lib/utils/pagination/paginate-output.d.ts +48 -0
  457. package/lib/utils/pagination/paginate-output.js +136 -0
  458. package/lib/utils/pagination/paginate-output.js.map +1 -0
  459. package/messages/compatibility.check.md +71 -0
  460. package/messages/cuneiform.access.md +138 -0
  461. package/messages/definition.create.md +511 -0
  462. package/messages/definition.export.md +84 -0
  463. package/messages/definition.get.md +147 -0
  464. package/messages/definition.import.md +65 -0
  465. package/messages/definition.list.md +264 -0
  466. package/messages/definition.purge.md +318 -0
  467. package/messages/definition.update.md +118 -0
  468. package/messages/mcp.serve.md +66 -0
  469. package/messages/object.describe.md +201 -0
  470. package/messages/object.list.md +443 -0
  471. package/messages/org.details.md +386 -0
  472. package/messages/org.reset.md +71 -0
  473. package/messages/profile.md +231 -0
  474. package/messages/profile.request.cancel.md +143 -0
  475. package/messages/profile.request.delete.md +139 -0
  476. package/messages/profile.request.list.md +89 -0
  477. package/messages/summary.purge.md +218 -0
  478. package/messages/summary.reprofile.md +150 -0
  479. package/messages/summary.stop.md +157 -0
  480. package/messages/user.details.md +501 -0
  481. package/oclif.lock +2887 -2149
  482. package/oclif.manifest.json +2813 -31
  483. package/package.json +94 -19
  484. package/lib/commands/cuneiform/about.d.ts +0 -13
  485. package/lib/commands/cuneiform/about.js +0 -26
  486. package/lib/commands/cuneiform/about.js.map +0 -1
  487. package/lib/commands/hello/world.d.ts +0 -14
  488. package/lib/commands/hello/world.js +0 -27
  489. package/lib/commands/hello/world.js.map +0 -1
  490. package/lib/index.d.ts +0 -2
  491. package/lib/index.js +0 -2
  492. package/lib/index.js.map +0 -1
  493. package/messages/cuneiform.about.md +0 -19
  494. package/messages/hello.world.md +0 -29
@@ -0,0 +1,54 @@
1
+ import { CuneiformCommand } from '../../../base/cuneiform-command.js';
2
+ /**
3
+ * Command result type for JSON output.
4
+ */
5
+ export type DefinitionImportResult = {
6
+ /** Whether the import was successful */
7
+ success: boolean;
8
+ /** Number of definitions imported */
9
+ definitionsImported: number;
10
+ /** Source directory used */
11
+ sourceDir: string;
12
+ /** Whether this was a simulation (no data modified) */
13
+ simulation: boolean;
14
+ /** Error message if failed */
15
+ error?: string;
16
+ };
17
+ /**
18
+ * Imports profiling definitions from SFDMU-compatible CSV files.
19
+ *
20
+ * Use this command to:
21
+ * - Restore definitions from backup
22
+ * - Migrate definitions to a new environment
23
+ * - Deploy standardized definition templates
24
+ * - Sync definitions across orgs
25
+ *
26
+ * @example
27
+ * ```bash
28
+ * # Import definitions from a backup directory
29
+ * sf cuneiform definition import --target-org myOrg --source ./backup
30
+ *
31
+ * # Import with upsert (update existing, insert new)
32
+ * sf cuneiform definition import --target-org myOrg --source ./backup --operation Upsert
33
+ *
34
+ * # Simulate import (preview changes without modifying data)
35
+ * sf cuneiform definition import --target-org myOrg --source ./backup --simulation
36
+ * ```
37
+ */
38
+ export default class DefinitionImport extends CuneiformCommand<DefinitionImportResult> {
39
+ static readonly summary: string;
40
+ static readonly description: string;
41
+ static readonly examples: string[];
42
+ static readonly flags: {
43
+ 'target-org': import("@oclif/core/interfaces").OptionFlag<import("@salesforce/core").Org, import("@oclif/core/interfaces").CustomOptions>;
44
+ source: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
45
+ operation: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
46
+ simulation: import("@oclif/core/interfaces").BooleanFlag<boolean>;
47
+ };
48
+ /**
49
+ * Executes the import command.
50
+ *
51
+ * @returns DefinitionImportResult with success status, count, source path, and simulation flag
52
+ */
53
+ run(): Promise<DefinitionImportResult>;
54
+ }
@@ -0,0 +1,118 @@
1
+ /*
2
+ * Copyright (c) 2026, PeerNova, Inc. All Rights Reserved.
3
+ * PROPRIETARY AND CONFIDENTIAL. Unauthorized copying, modification,
4
+ * or distribution is strictly prohibited. Use is governed by the
5
+ * Master Subscription Agreement (MSA) between PeerNova, Inc. and the
6
+ * licensee. See LICENSE file in the repo root.
7
+ */
8
+ import { Flags } from '@salesforce/sf-plugins-core';
9
+ import { Messages } from '@salesforce/core';
10
+ import { CuneiformCommand } from '../../../base/cuneiform-command.js';
11
+ import { SFDMUService } from '../../../services/SFDMUService.js';
12
+ import { DefinitionImportOperation } from '../../../operations/DefinitionImportOperation.js';
13
+ import { renderWarningBlock } from '../../../utils/formatting/command-display.js';
14
+ Messages.importMessagesDirectoryFromMetaUrl(import.meta.url);
15
+ const messages = Messages.loadMessages('@peernova/cuneiform-sf', 'definition.import');
16
+ /**
17
+ * Imports profiling definitions from SFDMU-compatible CSV files.
18
+ *
19
+ * Use this command to:
20
+ * - Restore definitions from backup
21
+ * - Migrate definitions to a new environment
22
+ * - Deploy standardized definition templates
23
+ * - Sync definitions across orgs
24
+ *
25
+ * @example
26
+ * ```bash
27
+ * # Import definitions from a backup directory
28
+ * sf cuneiform definition import --target-org myOrg --source ./backup
29
+ *
30
+ * # Import with upsert (update existing, insert new)
31
+ * sf cuneiform definition import --target-org myOrg --source ./backup --operation Upsert
32
+ *
33
+ * # Simulate import (preview changes without modifying data)
34
+ * sf cuneiform definition import --target-org myOrg --source ./backup --simulation
35
+ * ```
36
+ */
37
+ // eslint-disable-next-line sf-plugin/only-extend-SfCommand -- CuneiformCommand extends SfCommand with shared access gate logic
38
+ export default class DefinitionImport extends CuneiformCommand {
39
+ static summary = messages.getMessage('summary');
40
+ static description = messages.getMessage('description');
41
+ static examples = messages.getMessages('examples');
42
+ // eslint-disable-next-line sf-plugin/spread-base-flags -- CuneiformCommand has no additional flags to spread
43
+ static flags = {
44
+ 'target-org': Flags.requiredOrg({
45
+ summary: messages.getMessage('flags.target-org.summary'),
46
+ char: 'o',
47
+ required: true,
48
+ }),
49
+ source: Flags.directory({
50
+ summary: messages.getMessage('flags.source.summary'),
51
+ char: 's',
52
+ required: true,
53
+ exists: true,
54
+ }),
55
+ operation: Flags.string({
56
+ summary: messages.getMessage('flags.operation.summary'),
57
+ options: ['Insert', 'Upsert'],
58
+ default: 'Insert',
59
+ }),
60
+ simulation: Flags.boolean({
61
+ summary: messages.getMessage('flags.simulation.summary'),
62
+ char: 'm',
63
+ default: false,
64
+ }),
65
+ };
66
+ /**
67
+ * Executes the import command.
68
+ *
69
+ * @returns DefinitionImportResult with success status, count, source path, and simulation flag
70
+ */
71
+ async run() {
72
+ const { flags } = await this.parse(DefinitionImport);
73
+ const targetOrg = flags['target-org'].getUsername();
74
+ if (!targetOrg) {
75
+ this.error('Could not determine target org username');
76
+ }
77
+ // Access gate check
78
+ await this.initConnection(flags);
79
+ // Initialize service and operation
80
+ const sfdmuService = new SFDMUService();
81
+ const importOperation = new DefinitionImportOperation(sfdmuService);
82
+ // Display start message
83
+ const simulationLabel = flags.simulation ? ' (SIMULATION)' : '';
84
+ this.log(`Importing profiling definitions to ${targetOrg}${simulationLabel}...`);
85
+ this.log(` Source: ${flags.source}`);
86
+ this.log(` Operation: ${flags.operation}`);
87
+ // Execute import
88
+ const result = await importOperation.execute({
89
+ targetOrg,
90
+ sourceDir: flags.source,
91
+ operation: flags.operation,
92
+ simulation: flags.simulation,
93
+ });
94
+ if (!result.success) {
95
+ this.error(result.message ?? 'Import failed', { code: result.errorCode });
96
+ }
97
+ // Display success output
98
+ this.log('');
99
+ if (flags.simulation) {
100
+ this.log('Simulation completed - no changes were made.');
101
+ }
102
+ else {
103
+ this.log('Import completed successfully!');
104
+ }
105
+ this.log(` Definitions imported: ${result.data.definitionsImported}`);
106
+ if (result.warnings && result.warnings.length > 0) {
107
+ this.log('');
108
+ this.log(renderWarningBlock({ title: messages.getMessage('warnings.title'), items: result.warnings }));
109
+ }
110
+ return {
111
+ success: true,
112
+ definitionsImported: result.data.definitionsImported,
113
+ sourceDir: result.data.sourceDir,
114
+ simulation: result.data.simulation,
115
+ };
116
+ }
117
+ }
118
+ //# sourceMappingURL=import.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"import.js","sourceRoot":"","sources":["../../../../src/commands/cuneiform/definition/import.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,110 @@
1
+ import { type ProfilingDefinition, type ListSummary } from '../../../services/ProfilingDefinitionService.js';
2
+ import { CuneiformCommand } from '../../../base/cuneiform-command.js';
3
+ /**
4
+ * Command result type for JSON output.
5
+ */
6
+ export type DefinitionListCommandResult = {
7
+ /** Whether the command was successful */
8
+ success: boolean;
9
+ /** Total count of definitions matching filters (ignoring pagination) */
10
+ totalCount: number;
11
+ /** The definitions on this page */
12
+ definitions: ProfilingDefinition[];
13
+ /**
14
+ * Aggregate bucket counts across the full filtered set (ignoring pagination).
15
+ * Counts are computed server-side via SOQL GROUP BY — see ListSummary.
16
+ */
17
+ summary: ListSummary;
18
+ /** Applied filters */
19
+ filters?: {
20
+ status?: string;
21
+ method?: string;
22
+ objects?: string[];
23
+ pattern?: string;
24
+ category?: string;
25
+ namespace?: string;
26
+ };
27
+ /** Pagination info */
28
+ pagination?: {
29
+ limit: number;
30
+ offset: number;
31
+ };
32
+ /** Error message if failed */
33
+ error?: string;
34
+ };
35
+ /**
36
+ * Lists profiling definitions in a Salesforce org with filtering, sorting, and pagination.
37
+ *
38
+ * Use this command to:
39
+ * - List all definitions with key, name, object, method, category, status, and last profiled date
40
+ * - Filter by object, status, method, category, namespace, or name pattern
41
+ * - Sort results by key, name, object name, or last profiled date
42
+ * - Paginate results with --limit and --offset
43
+ *
44
+ * @example
45
+ * ```bash
46
+ * # List all definitions
47
+ * sf cuneiform definition list --target-org myOrg
48
+ *
49
+ * # List active definitions only
50
+ * sf cuneiform definition list --target-org myOrg --status active
51
+ *
52
+ * # List definitions for a specific object
53
+ * sf cuneiform definition list --target-org myOrg --objects Account
54
+ * ```
55
+ */
56
+ export default class DefinitionList extends CuneiformCommand<DefinitionListCommandResult> {
57
+ static readonly summary: string;
58
+ static readonly description: string;
59
+ static readonly examples: string[];
60
+ static readonly flags: {
61
+ 'target-org': import("@oclif/core/interfaces").OptionFlag<import("@salesforce/core").Org, import("@oclif/core/interfaces").CustomOptions>;
62
+ 'api-version': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
63
+ status: import("@oclif/core/interfaces").OptionFlag<"active" | "inactive" | "all", import("@oclif/core/interfaces").CustomOptions>;
64
+ method: import("@oclif/core/interfaces").OptionFlag<"metadata" | "historical" | "comparative" | undefined, import("@oclif/core/interfaces").CustomOptions>;
65
+ objects: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
66
+ pattern: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
67
+ category: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
68
+ namespace: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
69
+ limit: import("@oclif/core/interfaces").OptionFlag<number, import("@oclif/core/interfaces").CustomOptions>;
70
+ offset: import("@oclif/core/interfaces").OptionFlag<number, import("@oclif/core/interfaces").CustomOptions>;
71
+ sort: import("@oclif/core/interfaces").OptionFlag<"name" | "objectName" | "key" | "lastProfiledDate", import("@oclif/core/interfaces").CustomOptions>;
72
+ };
73
+ /**
74
+ * Displays the summary statistics section.
75
+ *
76
+ * Bucket counts come from the service-provided ListSummary (computed via SOQL
77
+ * GROUP BY across the full filtered set). The command must NOT derive bucket
78
+ * counts from the paginated `definitions` array — that was the CLI-3084 bug
79
+ * where Active/Inactive/Profiled/Not Profiled silently reflected only the
80
+ * current page instead of the org-wide totals.
81
+ *
82
+ * Static because it consumes pre-aggregated values; no instance state needed.
83
+ */
84
+ private static displaySummary;
85
+ /**
86
+ * Executes the definition list command.
87
+ *
88
+ * @returns DefinitionListCommandResult with definitions, count, and pagination info
89
+ */
90
+ run(): Promise<DefinitionListCommandResult>;
91
+ /**
92
+ * Displays the full command output following UX guidelines.
93
+ *
94
+ * Renders: contextual header -> Org Identity -> Active Filters ->
95
+ * Definitions table -> Summary -> Limit notice -> Next Steps.
96
+ */
97
+ private displayOutput;
98
+ /**
99
+ * Builds a list of human-readable descriptions for active filters.
100
+ */
101
+ private getActiveFilters;
102
+ /**
103
+ * Returns active filters as flag strings for empty state display.
104
+ */
105
+ private getSelectiveFilters;
106
+ /**
107
+ * Displays contextual next steps based on the listed definitions.
108
+ */
109
+ private displayNextSteps;
110
+ }
@@ -0,0 +1,344 @@
1
+ /*
2
+ * Copyright (c) 2026, PeerNova, Inc. All Rights Reserved.
3
+ * PROPRIETARY AND CONFIDENTIAL. Unauthorized copying, modification,
4
+ * or distribution is strictly prohibited. Use is governed by the
5
+ * Master Subscription Agreement (MSA) between PeerNova, Inc. and the
6
+ * licensee. See LICENSE file in the repo root.
7
+ */
8
+ import { makeTable } from '@oclif/table';
9
+ import { Messages } from '@salesforce/core';
10
+ import { Flags } from '@salesforce/sf-plugins-core';
11
+ import { OrgInfoService } from '../../../services/OrgInfoService.js';
12
+ import { ProfilingDefinitionService, } from '../../../services/ProfilingDefinitionService.js';
13
+ import { DefinitionListOperation } from '../../../operations/DefinitionListOperation.js';
14
+ import { renderSummaryBox, renderContextualHeader, sectionHeaderWithCount, logSectionGap, formatEmptyState, } from '../../../utils/formatting/index.js';
15
+ import { CuneiformCommand } from '../../../base/cuneiform-command.js';
16
+ const TABLE_BORDER_STYLE = 'headers-only';
17
+ Messages.importMessagesDirectoryFromMetaUrl(import.meta.url);
18
+ const messages = Messages.loadMessages('@peernova/cuneiform-sf', 'definition.list');
19
+ /**
20
+ * Lists profiling definitions in a Salesforce org with filtering, sorting, and pagination.
21
+ *
22
+ * Use this command to:
23
+ * - List all definitions with key, name, object, method, category, status, and last profiled date
24
+ * - Filter by object, status, method, category, namespace, or name pattern
25
+ * - Sort results by key, name, object name, or last profiled date
26
+ * - Paginate results with --limit and --offset
27
+ *
28
+ * @example
29
+ * ```bash
30
+ * # List all definitions
31
+ * sf cuneiform definition list --target-org myOrg
32
+ *
33
+ * # List active definitions only
34
+ * sf cuneiform definition list --target-org myOrg --status active
35
+ *
36
+ * # List definitions for a specific object
37
+ * sf cuneiform definition list --target-org myOrg --objects Account
38
+ * ```
39
+ */
40
+ // eslint-disable-next-line sf-plugin/only-extend-SfCommand -- CuneiformCommand extends SfCommand with shared access gate logic
41
+ export default class DefinitionList extends CuneiformCommand {
42
+ static summary = messages.getMessage('summary');
43
+ static description = messages.getMessage('description');
44
+ static examples = messages.getMessages('examples');
45
+ // eslint-disable-next-line sf-plugin/spread-base-flags -- CuneiformCommand has no additional flags to spread
46
+ static flags = {
47
+ 'target-org': Flags.requiredOrg({
48
+ summary: messages.getMessage('flags.target-org.summary'),
49
+ char: 'o',
50
+ required: true,
51
+ }),
52
+ 'api-version': Flags.orgApiVersion(),
53
+ status: Flags.option({
54
+ summary: messages.getMessage('flags.status.summary'),
55
+ options: ['active', 'inactive', 'all'],
56
+ default: 'all',
57
+ })(),
58
+ method: Flags.option({
59
+ summary: messages.getMessage('flags.method.summary'),
60
+ options: ['metadata', 'historical', 'comparative'],
61
+ })(),
62
+ objects: Flags.string({
63
+ summary: messages.getMessage('flags.objects.summary'),
64
+ }),
65
+ pattern: Flags.string({
66
+ summary: messages.getMessage('flags.pattern.summary'),
67
+ }),
68
+ category: Flags.string({
69
+ summary: messages.getMessage('flags.category.summary'),
70
+ }),
71
+ namespace: Flags.string({
72
+ summary: messages.getMessage('flags.namespace.summary'),
73
+ }),
74
+ limit: Flags.integer({
75
+ summary: messages.getMessage('flags.limit.summary'),
76
+ default: 25,
77
+ min: 1,
78
+ max: 200,
79
+ }),
80
+ offset: Flags.integer({
81
+ summary: messages.getMessage('flags.offset.summary'),
82
+ default: 0,
83
+ min: 0,
84
+ }),
85
+ sort: Flags.option({
86
+ summary: messages.getMessage('flags.sort.summary'),
87
+ options: ['key', 'name', 'objectName', 'lastProfiledDate'],
88
+ default: 'name',
89
+ })(),
90
+ };
91
+ /**
92
+ * Displays the summary statistics section.
93
+ *
94
+ * Bucket counts come from the service-provided ListSummary (computed via SOQL
95
+ * GROUP BY across the full filtered set). The command must NOT derive bucket
96
+ * counts from the paginated `definitions` array — that was the CLI-3084 bug
97
+ * where Active/Inactive/Profiled/Not Profiled silently reflected only the
98
+ * current page instead of the org-wide totals.
99
+ *
100
+ * Static because it consumes pre-aggregated values; no instance state needed.
101
+ */
102
+ static displaySummary(log, totalCount, summary) {
103
+ logSectionGap(log);
104
+ log(renderSummaryBox({
105
+ title: messages.getMessage('output.summary.header'),
106
+ entries: [
107
+ { key: messages.getMessage('output.summary.totalDefinitions'), value: String(totalCount) },
108
+ { key: messages.getMessage('output.summary.active'), value: String(summary.activeCount) },
109
+ { key: messages.getMessage('output.summary.inactive'), value: String(summary.inactiveCount) },
110
+ { key: messages.getMessage('output.summary.profiled'), value: String(summary.profiledCount) },
111
+ { key: messages.getMessage('output.summary.notProfiled'), value: String(summary.notProfiledCount) },
112
+ ],
113
+ }));
114
+ }
115
+ /**
116
+ * Executes the definition list command.
117
+ *
118
+ * @returns DefinitionListCommandResult with definitions, count, and pagination info
119
+ */
120
+ async run() {
121
+ const { flags } = await this.parse(DefinitionList);
122
+ const targetOrg = flags['target-org'].getUsername();
123
+ if (!targetOrg) {
124
+ this.error(messages.getMessage('errors.noTargetOrg'));
125
+ }
126
+ // Initialize services
127
+ const { facade, soqlAdapter } = await this.initConnection(flags);
128
+ const definitionService = new ProfilingDefinitionService({ soqlAdapter });
129
+ const orgInfoService = new OrgInfoService({ connectionFacade: facade, soqlAdapter });
130
+ // Build operation options from flags
131
+ const options = {
132
+ filter: {
133
+ status: flags.status,
134
+ method: flags.method,
135
+ objects: flags.objects ? flags.objects.split(',').map((o) => o.trim()) : undefined,
136
+ pattern: flags.pattern,
137
+ category: flags.category,
138
+ namespace: flags.namespace,
139
+ },
140
+ pagination: {
141
+ limit: flags.limit,
142
+ offset: flags.offset,
143
+ },
144
+ sort: {
145
+ field: flags.sort,
146
+ direction: 'asc',
147
+ },
148
+ };
149
+ // Execute operation and org identity fetch in parallel
150
+ const operation = new DefinitionListOperation(definitionService);
151
+ const [result, orgIdentityResult] = await Promise.all([
152
+ operation.execute(options),
153
+ orgInfoService.getOrgIdentity(),
154
+ ]);
155
+ if (!result.success) {
156
+ this.error(result.message ?? messages.getMessage('errors.queryFailed', ['unknown error']), {
157
+ code: result.errorCode,
158
+ });
159
+ }
160
+ const { definitions, totalCount, summary } = result.data;
161
+ // Display output
162
+ this.displayOutput(orgIdentityResult, facade.instanceUrl ?? '', targetOrg, definitions, totalCount, summary, flags);
163
+ return {
164
+ success: true,
165
+ totalCount,
166
+ definitions,
167
+ summary,
168
+ filters: {
169
+ status: flags.status !== 'all' ? flags.status : undefined,
170
+ method: flags.method,
171
+ objects: flags.objects ? flags.objects.split(',').map((o) => o.trim()) : undefined,
172
+ pattern: flags.pattern,
173
+ category: flags.category,
174
+ namespace: flags.namespace,
175
+ },
176
+ pagination: {
177
+ limit: flags.limit,
178
+ offset: flags.offset,
179
+ },
180
+ };
181
+ }
182
+ /**
183
+ * Displays the full command output following UX guidelines.
184
+ *
185
+ * Renders: contextual header -> Org Identity -> Active Filters ->
186
+ * Definitions table -> Summary -> Limit notice -> Next Steps.
187
+ */
188
+ displayOutput(orgIdentityResult, instanceUrl, targetOrg, definitions, totalCount, summary, flags) {
189
+ const identity = orgIdentityResult.data;
190
+ const orgName = identity?.organizationName ?? '(unknown)';
191
+ const orgType = identity?.isSandbox ? 'Sandbox' : 'Production';
192
+ // R-01: Contextual header
193
+ this.log('');
194
+ this.log(renderContextualHeader({
195
+ commandTitle: messages.getMessage('output.headerTitle'),
196
+ username: orgName,
197
+ orgName: orgType,
198
+ }));
199
+ // R-02: Org Identity (7-field component)
200
+ if (orgIdentityResult.success && identity?.organizationId) {
201
+ logSectionGap(this.log.bind(this));
202
+ this.log(renderSummaryBox({
203
+ title: messages.getMessage('output.identity.header'),
204
+ entries: [
205
+ { key: messages.getMessage('output.identity.orgName'), value: orgName },
206
+ { key: messages.getMessage('output.identity.orgId'), value: identity.organizationId },
207
+ { key: messages.getMessage('output.identity.instanceUrl'), value: instanceUrl },
208
+ { key: messages.getMessage('output.identity.orgType'), value: orgType },
209
+ { key: messages.getMessage('output.identity.edition'), value: identity.organizationType ?? '(unknown)' },
210
+ { key: messages.getMessage('output.identity.namespace'), value: identity.namespacePrefix ?? 'None' },
211
+ { key: messages.getMessage('output.identity.username'), value: identity.username },
212
+ ],
213
+ }));
214
+ }
215
+ // R-03: Active filters
216
+ const activeFilters = this.getActiveFilters(flags);
217
+ if (activeFilters.length > 0) {
218
+ logSectionGap(this.log.bind(this));
219
+ for (const filter of activeFilters) {
220
+ this.log(` ${filter}`);
221
+ }
222
+ }
223
+ // R-04: Definitions table or empty state
224
+ if (definitions.length > 0) {
225
+ logSectionGap(this.log.bind(this));
226
+ this.log(sectionHeaderWithCount(messages.getMessage('output.definitions.header'), definitions.length));
227
+ this.log(makeTable({
228
+ data: definitions.map((def) => ({
229
+ key: def.key,
230
+ name: def.name,
231
+ object: def.objectName,
232
+ method: def.type,
233
+ category: def.category ?? '--',
234
+ status: def.status,
235
+ lastProfiled: def.lastProfiledDate ? new Date(def.lastProfiledDate).toLocaleDateString() : '--',
236
+ })),
237
+ columns: [
238
+ { key: 'key', name: messages.getMessage('table.header.key') },
239
+ { key: 'name', name: messages.getMessage('table.header.name') },
240
+ { key: 'object', name: messages.getMessage('table.header.object') },
241
+ { key: 'method', name: messages.getMessage('table.header.method') },
242
+ { key: 'category', name: messages.getMessage('table.header.category') },
243
+ { key: 'status', name: messages.getMessage('table.header.status') },
244
+ { key: 'lastProfiled', name: messages.getMessage('table.header.lastProfiled') },
245
+ ],
246
+ borderStyle: TABLE_BORDER_STYLE,
247
+ }).trimEnd());
248
+ }
249
+ else {
250
+ logSectionGap(this.log.bind(this));
251
+ const emptyLines = formatEmptyState({
252
+ entityType: messages.getMessage('output.entityType'),
253
+ appliedFilters: this.getSelectiveFilters(flags),
254
+ suggestions: [messages.getMessage('output.noResults.suggestion')],
255
+ });
256
+ for (const line of emptyLines) {
257
+ this.log(` ${line}`);
258
+ }
259
+ }
260
+ // R-05: Summary section
261
+ DefinitionList.displaySummary(this.log.bind(this), totalCount, summary);
262
+ // R-06: Limit notice when results are paginated
263
+ if (definitions.length < totalCount) {
264
+ this.log('');
265
+ this.log(` ${messages.getMessage('output.limitNotice', [String(definitions.length), String(totalCount)])}`);
266
+ }
267
+ // R-07: Next Steps
268
+ logSectionGap(this.log.bind(this));
269
+ this.displayNextSteps(targetOrg, definitions);
270
+ // Trailing blank line for terminal prompt separation
271
+ this.log('');
272
+ }
273
+ /**
274
+ * Builds a list of human-readable descriptions for active filters.
275
+ */
276
+ // eslint-disable-next-line class-methods-use-this
277
+ getActiveFilters(flags) {
278
+ const active = [];
279
+ if (flags.status && flags.status !== 'all') {
280
+ active.push(messages.getMessage('output.filters.status', [flags.status]));
281
+ }
282
+ if (flags.method) {
283
+ active.push(messages.getMessage('output.filters.method', [flags.method]));
284
+ }
285
+ if (flags.objects) {
286
+ active.push(messages.getMessage('output.filters.objects', [flags.objects]));
287
+ }
288
+ if (flags.pattern) {
289
+ active.push(messages.getMessage('output.filters.pattern', [flags.pattern]));
290
+ }
291
+ if (flags.category) {
292
+ active.push(messages.getMessage('output.filters.category', [flags.category]));
293
+ }
294
+ if (flags.namespace) {
295
+ active.push(messages.getMessage('output.filters.namespace', [flags.namespace]));
296
+ }
297
+ return active;
298
+ }
299
+ /**
300
+ * Returns active filters as flag strings for empty state display.
301
+ */
302
+ // eslint-disable-next-line class-methods-use-this
303
+ getSelectiveFilters(flags) {
304
+ const selective = [];
305
+ if (flags.pattern)
306
+ selective.push(`--pattern ${flags.pattern}`);
307
+ if (flags.namespace)
308
+ selective.push(`--namespace ${flags.namespace}`);
309
+ if (flags.objects)
310
+ selective.push(`--objects ${flags.objects}`);
311
+ if (flags.category)
312
+ selective.push(`--category ${flags.category}`);
313
+ if (flags.method)
314
+ selective.push(`--method ${flags.method}`);
315
+ if (flags.status && flags.status !== 'all')
316
+ selective.push(`--status ${flags.status}`);
317
+ return selective;
318
+ }
319
+ /**
320
+ * Displays contextual next steps based on the listed definitions.
321
+ */
322
+ displayNextSteps(targetOrg, definitions) {
323
+ this.log(messages.getMessage('output.nextSteps.header'));
324
+ this.log('');
325
+ // Suggest definition get for the first definition if any exist
326
+ if (definitions.length > 0) {
327
+ const firstKey = definitions[0].key;
328
+ this.log(` ${messages.getMessage('output.nextSteps.getLabel')}`);
329
+ this.log(` ${messages.getMessage('output.nextSteps.getCommand', [targetOrg, firstKey])}`);
330
+ this.log('');
331
+ }
332
+ // Always suggest definition create
333
+ this.log(` ${messages.getMessage('output.nextSteps.createLabel')}`);
334
+ this.log(` ${messages.getMessage('output.nextSteps.createCommand')}`);
335
+ this.log('');
336
+ // Suggest profiling if definitions exist
337
+ if (definitions.length > 0) {
338
+ const firstKey = definitions[0].key;
339
+ this.log(` ${messages.getMessage('output.nextSteps.profileLabel')}`);
340
+ this.log(` ${messages.getMessage('output.nextSteps.profileCommand', [targetOrg, firstKey])}`);
341
+ }
342
+ }
343
+ }
344
+ //# sourceMappingURL=list.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list.js","sourceRoot":"","sources":["../../../../src/commands/cuneiform/definition/list.ts"],"names":[],"mappings":"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"}