@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,521 @@
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 { makeTable } from '@oclif/table';
10
+ import { Messages } from '@salesforce/core';
11
+ import { CuneiformCommand, createAdapterStack } from '../../../base/cuneiform-command.js';
12
+ import { OrgInfoService } from '../../../services/OrgInfoService.js';
13
+ import { OrgDetailsOperation, } from '../../../operations/OrgDetailsOperation.js';
14
+ import { sectionHeader, sectionHeaderWithCount, formatNumber, booleanDisplay, renderSummaryBox, renderContextualHeader, renderWarningBlock, logSectionGap, } from '../../../utils/formatting/index.js';
15
+ /**
16
+ * Default border style for all tables rendered by this command.
17
+ */
18
+ const TABLE_BORDER_STYLE = 'headers-only';
19
+ Messages.importMessagesDirectoryFromMetaUrl(import.meta.url);
20
+ const messages = Messages.loadMessages('@peernova/cuneiform-sf', 'org.details');
21
+ /**
22
+ * Creates the OrgInfoService with all required adapters.
23
+ */
24
+ function createOrgInfoService(facade) {
25
+ const { soqlAdapter, toolingAdapter, restAdapter } = createAdapterStack(facade);
26
+ return new OrgInfoService({
27
+ connectionFacade: facade,
28
+ soqlAdapter,
29
+ toolingAdapter,
30
+ restAdapter,
31
+ });
32
+ }
33
+ /**
34
+ * Displays comprehensive Salesforce org configuration details.
35
+ *
36
+ * Use this command to:
37
+ * - Identify org type and edition
38
+ * - Check Cuneiform for Salesforce installation status
39
+ * - Detect installed Salesforce Clouds
40
+ * - Discover installed namespaces and packages
41
+ * - Review API usage limits
42
+ *
43
+ * @example
44
+ * ```bash
45
+ * # Display org details
46
+ * sf cuneiform org details --target-org myOrg
47
+ *
48
+ * # Output as JSON
49
+ * sf cuneiform org details --target-org myOrg --json
50
+ * ```
51
+ */
52
+ // eslint-disable-next-line sf-plugin/only-extend-SfCommand -- CuneiformCommand extends SfCommand with shared access gate logic
53
+ export default class OrgDetails extends CuneiformCommand {
54
+ static summary = messages.getMessage('summary');
55
+ static description = messages.getMessage('description');
56
+ static examples = messages.getMessages('examples');
57
+ // eslint-disable-next-line sf-plugin/spread-base-flags -- CuneiformCommand has no additional flags to spread
58
+ static flags = {
59
+ 'target-org': Flags.requiredOrg({
60
+ summary: messages.getMessage('flags.target-org.summary'),
61
+ char: 'o',
62
+ required: true,
63
+ }),
64
+ 'api-version': Flags.orgApiVersion({
65
+ summary: messages.getMessage('flags.api-version.summary'),
66
+ char: 'a',
67
+ }),
68
+ sections: Flags.string({
69
+ summary: messages.getMessage('flags.sections.summary'),
70
+ char: 's',
71
+ multiple: true,
72
+ required: false,
73
+ }),
74
+ };
75
+ /**
76
+ * Resolves the limits display mode from sections filter.
77
+ * Returns 'default' for 7 profiling-relevant limits, 'all' for grouped, or a group key.
78
+ */
79
+ static resolveLimitsMode(sections) {
80
+ if (!sections)
81
+ return 'default';
82
+ for (const s of sections) {
83
+ if (s === 'limits-all')
84
+ return 'all';
85
+ if (s.startsWith('limits-'))
86
+ return s.slice('limits-'.length);
87
+ }
88
+ return 'default';
89
+ }
90
+ /**
91
+ * Builds contextual object list command suggestions based on org data.
92
+ * Returns 1-3 label/flags pairs, most relevant first.
93
+ *
94
+ * Selection logic:
95
+ * - Always: --with-records
96
+ * - Namespaces + package clouds: --namespace <top cloud>
97
+ * - Namespaces, no clouds: --namespace <largest namespace>
98
+ * - No namespaces: --filter custom
99
+ * - With namespaces: --filter standard --with-records --classification customer
100
+ */
101
+ static buildObjectListSuggestions(result) {
102
+ const suggestions = [];
103
+ const hasNamespaces = result.namespaces.count > 0;
104
+ const hasMultipleNamespaces = result.namespaces.count > 1;
105
+ const packageClouds = result.clouds.details.filter((c) => c.installed && c.type === 'package');
106
+ const hasPackageClouds = packageClouds.length > 0;
107
+ // Always lead with --with-records (most useful default)
108
+ suggestions.push({
109
+ label: messages.getMessage('output.nextSteps.objectListWithRecords'),
110
+ flags: '--with-records',
111
+ });
112
+ // Customer-facing objects with records (always useful)
113
+ suggestions.push({
114
+ label: messages.getMessage('output.nextSteps.objectListCustomerFacing'),
115
+ flags: '--with-records --classification customer',
116
+ });
117
+ // If there are package-based clouds with namespaces, suggest the top one
118
+ if (hasPackageClouds && packageClouds[0].namespace) {
119
+ const topCloud = packageClouds[0];
120
+ suggestions.push({
121
+ label: messages.getMessage('output.nextSteps.objectListNamespace', [topCloud.name]),
122
+ flags: `--namespace ${String(topCloud.namespace)}`,
123
+ });
124
+ }
125
+ else if (hasMultipleNamespaces) {
126
+ // Many namespaces — suggest filtering by the largest (most objects)
127
+ const sorted = [...result.namespaces.details].sort((a, b) => b.objectCount - a.objectCount);
128
+ const topNs = sorted[0];
129
+ suggestions.push({
130
+ label: messages.getMessage('output.nextSteps.objectListNamespace', [topNs.productName]),
131
+ flags: `--namespace ${topNs.prefix}`,
132
+ });
133
+ }
134
+ else if (!hasNamespaces) {
135
+ // No namespaces — suggest custom objects filter
136
+ suggestions.push({
137
+ label: messages.getMessage('output.nextSteps.objectListCustom'),
138
+ flags: '--filter custom',
139
+ });
140
+ }
141
+ // When namespaces are present, offer --filter standard to view platform objects separately
142
+ if (hasNamespaces) {
143
+ suggestions.push({
144
+ label: messages.getMessage('output.nextSteps.objectListStandard'),
145
+ flags: '--filter standard --with-records --classification customer',
146
+ });
147
+ }
148
+ return suggestions;
149
+ }
150
+ /**
151
+ * Executes the org details command.
152
+ *
153
+ * @returns OrgDetailsResult with comprehensive org information
154
+ */
155
+ async run() {
156
+ const { flags } = await this.parse(OrgDetails);
157
+ const { facade } = await this.initConnection(flags);
158
+ const orgInfoService = createOrgInfoService(facade);
159
+ const instanceUrl = facade.instanceUrl ?? '';
160
+ const rawSections = flags.sections ?? [];
161
+ const sections = rawSections.length > 0 ? rawSections.flatMap((s) => s.split(',').map((v) => v.trim())) : undefined;
162
+ this.spinner.start(messages.getMessage('info.fetching'));
163
+ const operation = new OrgDetailsOperation({ orgInfoService, instanceUrl, sections });
164
+ const operationResult = await operation.execute();
165
+ this.spinner.stop();
166
+ if (!operationResult.success) {
167
+ this.error(operationResult.message ?? messages.getMessage('errors.identityFailed'), {
168
+ code: operationResult.errorCode,
169
+ });
170
+ }
171
+ const result = operationResult.data;
172
+ const warnings = result.warnings ?? [];
173
+ this.displayAllSections(result, warnings, sections);
174
+ return result;
175
+ }
176
+ /**
177
+ * Displays all output sections, filtered by the optional sections list.
178
+ */
179
+ displayAllSections(result, warnings, sections) {
180
+ // Separate limits-* modifiers from section filters — limits-all/limits-<group>
181
+ // only affect the limits display mode, they don't hide other sections.
182
+ const sectionFilters = sections?.filter((s) => !s.startsWith('limits-'));
183
+ const showSection = (s) => !sectionFilters || sectionFilters.length === 0 || sectionFilters.includes(s);
184
+ const gap = () => logSectionGap(this.log.bind(this));
185
+ // R-01: Contextual header — "Cuneiform Org Details for {Org Name} ({Org Type})"
186
+ this.log('');
187
+ this.log(renderContextualHeader({
188
+ commandTitle: messages.getMessage('output.headerTitle'),
189
+ username: result.identity.orgName,
190
+ orgName: result.identity.orgType,
191
+ }));
192
+ if (showSection('identity')) {
193
+ gap();
194
+ this.displayIdentity(result.identity);
195
+ }
196
+ if (showSection('cuneiform')) {
197
+ gap();
198
+ this.displayCuneiform(result.cuneiform);
199
+ }
200
+ if (showSection('features')) {
201
+ gap();
202
+ this.displayFeatures(result.features);
203
+ }
204
+ if (showSection('clouds')) {
205
+ gap();
206
+ this.displayClouds(result.clouds);
207
+ }
208
+ if (showSection('namespaces')) {
209
+ gap();
210
+ this.displayNamespaces(result.namespaces);
211
+ }
212
+ if (showSection('processes')) {
213
+ gap();
214
+ this.displayProcesses(result.processes);
215
+ }
216
+ if (result.limits && (showSection('limits') || sections?.some((s) => s.startsWith('limits-')))) {
217
+ gap();
218
+ const limitsMode = OrgDetails.resolveLimitsMode(sections);
219
+ this.displayLimits(result.limits, limitsMode);
220
+ // PTA-1434: Storage warning when data storage >= 95%
221
+ if (result.limits.dataStorageMB && result.limits.dataStorageMB.percentUsed >= 95) {
222
+ this.log('');
223
+ this.log(` ⚠ ${messages.getMessage('warnings.storageNearCapacity')}`);
224
+ this.log(` ⚠ ${messages.getMessage('warnings.storageProfilingImpact')}`);
225
+ this.log(` ⚠ ${messages.getMessage('warnings.storageProfilingFailure')}`);
226
+ }
227
+ }
228
+ if (warnings.length > 0) {
229
+ gap();
230
+ this.log(renderWarningBlock({ title: messages.getMessage('warnings.header'), items: warnings }));
231
+ }
232
+ // Next steps section — always rendered, not gated by section filters
233
+ gap();
234
+ this.displayNextSteps(result);
235
+ // Trailing blank line so the terminal prompt has separation from output
236
+ this.log('');
237
+ }
238
+ /**
239
+ * Displays contextual next steps with tailored object list commands.
240
+ */
241
+ displayNextSteps(result) {
242
+ const targetOrg = result.identity.username;
243
+ const suggestions = OrgDetails.buildObjectListSuggestions(result);
244
+ this.log(messages.getMessage('output.nextSteps.header'));
245
+ this.log('');
246
+ // Dynamic object list suggestions (1-3)
247
+ for (const suggestion of suggestions) {
248
+ this.log(` ${suggestion.label}`);
249
+ this.log(` sf cuneiform object list --target-org ${targetOrg} ${suggestion.flags}`);
250
+ this.log('');
251
+ }
252
+ // Static: object describe
253
+ this.log(` ${messages.getMessage('output.nextSteps.objectDescribe')}`);
254
+ this.log(' sf cuneiform object describe --help');
255
+ this.log('');
256
+ // Static: definition create
257
+ this.log(` ${messages.getMessage('output.nextSteps.definitionCreate')}`);
258
+ this.log(' sf cuneiform definition create --help');
259
+ }
260
+ /**
261
+ * Displays identity information.
262
+ */
263
+ displayIdentity(identity) {
264
+ this.log(renderSummaryBox({
265
+ title: messages.getMessage('output.identity.header'),
266
+ // R-10: Overlapping fields (Org Name, Org ID, Instance URL, Org Type) match renderOrgContext order
267
+ entries: [
268
+ { key: messages.getMessage('output.identity.orgName'), value: identity.orgName },
269
+ { key: messages.getMessage('output.identity.orgId'), value: identity.orgId },
270
+ { key: messages.getMessage('output.identity.instanceUrl'), value: identity.instanceUrl },
271
+ { key: messages.getMessage('output.identity.orgType'), value: identity.orgType },
272
+ { key: messages.getMessage('output.identity.edition'), value: identity.edition },
273
+ { key: messages.getMessage('output.identity.namespace'), value: identity.namespace ?? 'None' },
274
+ { key: messages.getMessage('output.identity.username'), value: identity.username },
275
+ ],
276
+ }));
277
+ }
278
+ /**
279
+ * Displays Cuneiform for Salesforce status.
280
+ */
281
+ displayCuneiform(cuneiform) {
282
+ const entries = [];
283
+ if (cuneiform.installed) {
284
+ entries.push({
285
+ key: messages.getMessage('output.cuneiform.status'),
286
+ value: messages.getMessage('output.cuneiform.installed'),
287
+ });
288
+ entries.push({
289
+ key: messages.getMessage('output.cuneiform.version'),
290
+ value: String(cuneiform.version ?? messages.getMessage('output.unknownFallback')),
291
+ });
292
+ entries.push({ key: messages.getMessage('output.cuneiform.license'), value: cuneiform.licenseStatus });
293
+ }
294
+ else {
295
+ entries.push({
296
+ key: messages.getMessage('output.cuneiform.status'),
297
+ value: messages.getMessage('output.cuneiform.notInstalled'),
298
+ });
299
+ }
300
+ this.log(renderSummaryBox({ title: messages.getMessage('output.cuneiform.header'), entries }));
301
+ // PTA-1431: License guidance for expired/suspended
302
+ if (cuneiform.licenseStatus === 'Expired' || cuneiform.licenseStatus === 'Suspended') {
303
+ this.log('');
304
+ this.log(` • ${messages.getMessage('output.cuneiform.licenseStatus', [cuneiform.licenseStatus.toLowerCase()])}`);
305
+ this.log(` • ${messages.getMessage('output.cuneiform.licenseContactSupport')}`);
306
+ this.log(` • ${messages.getMessage('output.cuneiform.licenseContactOrgDetails')}`);
307
+ }
308
+ // PTA-1432: Installation guide when not installed
309
+ if (!cuneiform.installed) {
310
+ this.log('');
311
+ this.log(` ${messages.getMessage('output.cuneiform.installGuide')}`);
312
+ }
313
+ }
314
+ /**
315
+ * Displays org features.
316
+ */
317
+ displayFeatures(features) {
318
+ this.log(sectionHeader(messages.getMessage('output.features.header')));
319
+ const featureList = [
320
+ { label: messages.getMessage('output.features.multiCurrency'), enabled: features.multiCurrency },
321
+ { label: messages.getMessage('output.features.enhancedNotes'), enabled: features.enhancedNotes },
322
+ { label: messages.getMessage('output.features.stateCountryPicklists'), enabled: features.stateCountryPicklists },
323
+ { label: messages.getMessage('output.features.territoryManagement'), enabled: features.territoryManagement },
324
+ { label: messages.getMessage('output.features.personAccounts'), enabled: features.personAccounts },
325
+ { label: messages.getMessage('output.features.digitalExperiences'), enabled: features.digitalExperiences },
326
+ { label: messages.getMessage('output.features.einsteinAI'), enabled: features.einsteinAI },
327
+ ];
328
+ for (const feature of featureList) {
329
+ const symbol = booleanDisplay(feature.enabled, { style: 'symbol' });
330
+ this.log(` ${symbol} ${feature.label}`);
331
+ }
332
+ }
333
+ /**
334
+ * Displays detected clouds.
335
+ */
336
+ displayClouds(clouds) {
337
+ const installedClouds = clouds.details.filter((c) => c.installed);
338
+ if (installedClouds.length === 0) {
339
+ this.log(sectionHeader(messages.getMessage('output.clouds.header')));
340
+ this.log(` ${messages.getMessage('output.clouds.none')}`);
341
+ return;
342
+ }
343
+ const licenseClouds = installedClouds.filter((c) => c.type === 'license');
344
+ const packageClouds = installedClouds.filter((c) => c.type === 'package');
345
+ if (licenseClouds.length > 0) {
346
+ const sorted = [...licenseClouds].sort((a, b) => a.name.localeCompare(b.name));
347
+ this.log(sectionHeaderWithCount(messages.getMessage('output.clouds.licenseSubheader'), licenseClouds.length));
348
+ this.log(makeTable({
349
+ data: sorted.map((c) => ({
350
+ cloud: c.name,
351
+ status: c.status ?? '',
352
+ usedLicenses: formatNumber(c.usedLicenses ?? 0),
353
+ total: formatNumber(c.totalLicenses ?? 0),
354
+ })),
355
+ columns: [
356
+ { key: 'cloud', name: messages.getMessage('table.clouds.cloud') },
357
+ { key: 'status', name: messages.getMessage('table.clouds.status') },
358
+ {
359
+ key: 'usedLicenses',
360
+ name: messages.getMessage('table.clouds.usedLicenses'),
361
+ horizontalAlignment: 'right',
362
+ },
363
+ { key: 'total', name: messages.getMessage('table.clouds.total'), horizontalAlignment: 'right' },
364
+ ],
365
+ borderStyle: TABLE_BORDER_STYLE,
366
+ }).trimEnd());
367
+ }
368
+ if (packageClouds.length > 0) {
369
+ const sorted = [...packageClouds].sort((a, b) => a.name.localeCompare(b.name));
370
+ if (licenseClouds.length > 0)
371
+ logSectionGap(this.log.bind(this));
372
+ this.log(sectionHeaderWithCount(messages.getMessage('output.clouds.namespaceSubheader'), packageClouds.length));
373
+ this.log(makeTable({
374
+ data: sorted.map((c) => ({
375
+ cloud: c.name,
376
+ version: c.version ?? '',
377
+ namespace: c.namespace ?? '',
378
+ })),
379
+ columns: [
380
+ { key: 'cloud', name: messages.getMessage('table.cloudsDetail.cloud') },
381
+ { key: 'version', name: messages.getMessage('table.cloudsDetail.version') },
382
+ { key: 'namespace', name: messages.getMessage('table.cloudsDetail.namespace') },
383
+ ],
384
+ borderStyle: TABLE_BORDER_STYLE,
385
+ }).trimEnd());
386
+ }
387
+ }
388
+ /**
389
+ * Displays namespace summary.
390
+ */
391
+ displayNamespaces(namespaces) {
392
+ this.log(sectionHeaderWithCount(messages.getMessage('output.namespaces.header'), namespaces.count));
393
+ if (namespaces.details.length > 0) {
394
+ const sorted = [...namespaces.details].sort((a, b) => {
395
+ const countDiff = b.objectCount - a.objectCount;
396
+ return countDiff !== 0 ? countDiff : a.prefix.localeCompare(b.prefix);
397
+ });
398
+ this.log(makeTable({
399
+ data: sorted.map((n) => ({
400
+ namespace: n.prefix,
401
+ product: n.productName,
402
+ objects: String(n.objectCount),
403
+ populated: String(n.populatedCount),
404
+ empty: String(n.emptyCount),
405
+ })),
406
+ columns: [
407
+ { key: 'namespace', name: messages.getMessage('table.namespaces.namespace') },
408
+ { key: 'product', name: messages.getMessage('table.namespaces.product') },
409
+ { key: 'objects', name: messages.getMessage('table.namespaces.objects'), horizontalAlignment: 'right' },
410
+ { key: 'populated', name: messages.getMessage('table.namespaces.populated'), horizontalAlignment: 'right' },
411
+ { key: 'empty', name: messages.getMessage('table.namespaces.empty'), horizontalAlignment: 'right' },
412
+ ],
413
+ borderStyle: TABLE_BORDER_STYLE,
414
+ }).trimEnd());
415
+ }
416
+ }
417
+ /**
418
+ * Displays business processes with record type associations.
419
+ */
420
+ displayProcesses(processes) {
421
+ this.log(sectionHeaderWithCount(messages.getMessage('output.processes.header'), processes.count));
422
+ if (processes.details.length > 0) {
423
+ this.log(makeTable({
424
+ data: processes.details.map((p) => ({
425
+ name: p.name,
426
+ object: p.objectName,
427
+ active: p.isActive ? 'Yes' : 'No',
428
+ recordTypes: String(p.recordTypeCount),
429
+ })),
430
+ columns: [
431
+ { key: 'name', name: messages.getMessage('table.processes.name') },
432
+ { key: 'object', name: messages.getMessage('table.processes.object') },
433
+ { key: 'active', name: messages.getMessage('table.processes.active') },
434
+ {
435
+ key: 'recordTypes',
436
+ name: messages.getMessage('table.processes.recordTypes'),
437
+ horizontalAlignment: 'right',
438
+ },
439
+ ],
440
+ borderStyle: TABLE_BORDER_STYLE,
441
+ }).trimEnd());
442
+ }
443
+ }
444
+ /**
445
+ * Displays API limits — default (7 key limits), all (grouped), or a specific group.
446
+ */
447
+ displayLimits(limits, mode) {
448
+ this.log(sectionHeader(messages.getMessage('output.limits.header')));
449
+ this.displayDefaultLimits(limits);
450
+ if (mode !== 'default') {
451
+ logSectionGap(this.log.bind(this));
452
+ this.displayGroupedLimits(limits.groups, mode);
453
+ }
454
+ }
455
+ /**
456
+ * Displays the 7 profiling-relevant limits (default mode).
457
+ */
458
+ displayDefaultLimits(limits) {
459
+ const rows = [];
460
+ const add = (label, data) => {
461
+ if (data)
462
+ rows.push({
463
+ limit: label,
464
+ used: formatNumber(data.used),
465
+ max: formatNumber(data.max),
466
+ percent: `${data.percentUsed.toFixed(1)}%`,
467
+ });
468
+ };
469
+ add(messages.getMessage('output.limits.dailyApiRequests'), limits.dailyApiRequests);
470
+ add(messages.getMessage('output.limits.dataStorageWithUnit'), limits.dataStorageMB);
471
+ add(messages.getMessage('output.limits.fileStorageWithUnit'), limits.fileStorageMB);
472
+ add(messages.getMessage('output.limits.bulkApiRequests'), limits.dailyBulkApiRequests);
473
+ add(messages.getMessage('output.limits.bulkV2QueryJobs'), limits.dailyBulkV2QueryJobs);
474
+ add(messages.getMessage('output.limits.asyncApexExecutions'), limits.dailyAsyncApexExecutions);
475
+ add(messages.getMessage('output.limits.streamingApiEvents'), limits.dailyStreamingApiEvents);
476
+ if (rows.length === 0)
477
+ return;
478
+ this.log(makeTable({
479
+ data: rows,
480
+ columns: [
481
+ { key: 'limit', name: messages.getMessage('table.limits.limit') },
482
+ { key: 'used', name: messages.getMessage('table.limits.used'), horizontalAlignment: 'right' },
483
+ { key: 'max', name: messages.getMessage('table.limits.max'), horizontalAlignment: 'right' },
484
+ { key: 'percent', name: messages.getMessage('table.limits.percent'), horizontalAlignment: 'right' },
485
+ ],
486
+ borderStyle: TABLE_BORDER_STYLE,
487
+ }).trimEnd());
488
+ }
489
+ /**
490
+ * Displays grouped limits with sub-headers per category.
491
+ */
492
+ displayGroupedLimits(groups, mode) {
493
+ const filtered = mode === 'all' ? groups : groups.filter((g) => g.key === mode);
494
+ if (filtered.length === 0)
495
+ return;
496
+ for (let i = 0; i < filtered.length; i++) {
497
+ if (i > 0) {
498
+ this.log('');
499
+ this.log('');
500
+ }
501
+ const group = filtered[i];
502
+ this.log(` ${group.label}`);
503
+ this.log(makeTable({
504
+ data: group.limits.map((l) => ({
505
+ limit: l.label,
506
+ used: formatNumber(l.used),
507
+ max: formatNumber(l.max),
508
+ percent: `${l.percentUsed.toFixed(1)}%`,
509
+ })),
510
+ columns: [
511
+ { key: 'limit', name: messages.getMessage('table.limits.limit') },
512
+ { key: 'used', name: messages.getMessage('table.limits.used'), horizontalAlignment: 'right' },
513
+ { key: 'max', name: messages.getMessage('table.limits.max'), horizontalAlignment: 'right' },
514
+ { key: 'percent', name: messages.getMessage('table.limits.percent'), horizontalAlignment: 'right' },
515
+ ],
516
+ borderStyle: TABLE_BORDER_STYLE,
517
+ }).trimEnd());
518
+ }
519
+ }
520
+ }
521
+ //# sourceMappingURL=details.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"details.js","sourceRoot":"","sources":["../../../../src/commands/cuneiform/org/details.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,46 @@
1
+ import { CuneiformCommand } from '../../../base/cuneiform-command.js';
2
+ import { type OrgResetResult } from '../../../operations/OrgResetOperation.js';
3
+ export type { OrgResetResult };
4
+ /**
5
+ * Resets a Salesforce org by removing Cuneiform test data created by NUT tests.
6
+ *
7
+ * Purges definitions matching a name pattern (default: [NUT-*]),
8
+ * cancels active profiling requests, and deletes terminal requests.
9
+ * Use this command to restore a scratch org to a clean state.
10
+ *
11
+ * @example
12
+ * ```bash
13
+ * # Reset org with default pattern
14
+ * sf cuneiform org reset --target-org myOrg
15
+ *
16
+ * # Dry-run preview
17
+ * sf cuneiform org reset --target-org myOrg --dry-run
18
+ * ```
19
+ */
20
+ export default class OrgReset extends CuneiformCommand<OrgResetResult> {
21
+ static readonly summary: string;
22
+ static readonly description: string;
23
+ static readonly examples: string[];
24
+ static readonly flags: {
25
+ 'target-org': import("@oclif/core/interfaces").OptionFlag<import("@salesforce/core").Org, import("@oclif/core/interfaces").CustomOptions>;
26
+ 'api-version': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
27
+ pattern: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
28
+ 'dry-run': import("@oclif/core/interfaces").BooleanFlag<boolean>;
29
+ 'no-prompt': import("@oclif/core/interfaces").BooleanFlag<boolean>;
30
+ };
31
+ static readonly hidden = true;
32
+ /**
33
+ * This command skips the access gate because it is a developer utility
34
+ * for cleaning up NUT test data, not a user-facing profiling command.
35
+ */
36
+ protected static skipAccessGate: boolean;
37
+ run(): Promise<OrgResetResult>;
38
+ /**
39
+ * Updates the spinner with progress events.
40
+ */
41
+ private handleProgress;
42
+ /**
43
+ * Renders the operation result as human-readable output.
44
+ */
45
+ private renderResult;
46
+ }