@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.
- package/LICENSE +81 -30
- package/README.md +59 -95
- package/lib/adapters/connection-facade.d.ts +458 -0
- package/lib/adapters/connection-facade.js +379 -0
- package/lib/adapters/connection-facade.js.map +1 -0
- package/lib/adapters/errors.d.ts +547 -0
- package/lib/adapters/errors.js +937 -0
- package/lib/adapters/errors.js.map +1 -0
- package/lib/adapters/index.d.ts +33 -0
- package/lib/adapters/index.js +50 -0
- package/lib/adapters/index.js.map +1 -0
- package/lib/adapters/lifecycle.d.ts +119 -0
- package/lib/adapters/lifecycle.js +94 -0
- package/lib/adapters/lifecycle.js.map +1 -0
- package/lib/adapters/rest/cache.d.ts +69 -0
- package/lib/adapters/rest/cache.js +133 -0
- package/lib/adapters/rest/cache.js.map +1 -0
- package/lib/adapters/rest/index.d.ts +11 -0
- package/lib/adapters/rest/index.js +18 -0
- package/lib/adapters/rest/index.js.map +1 -0
- package/lib/adapters/rest/profiling-rest-client.d.ts +137 -0
- package/lib/adapters/rest/profiling-rest-client.js +115 -0
- package/lib/adapters/rest/profiling-rest-client.js.map +1 -0
- package/lib/adapters/rest/rest-api-adapter.d.ts +389 -0
- package/lib/adapters/rest/rest-api-adapter.js +747 -0
- package/lib/adapters/rest/rest-api-adapter.js.map +1 -0
- package/lib/adapters/rest/types.d.ts +34 -0
- package/lib/adapters/rest/types.js +9 -0
- package/lib/adapters/rest/types.js.map +1 -0
- package/lib/adapters/retry.d.ts +91 -0
- package/lib/adapters/retry.js +215 -0
- package/lib/adapters/retry.js.map +1 -0
- package/lib/adapters/soql/cuneiform-query-builder.d.ts +391 -0
- package/lib/adapters/soql/cuneiform-query-builder.js +559 -0
- package/lib/adapters/soql/cuneiform-query-builder.js.map +1 -0
- package/lib/adapters/soql/index.d.ts +13 -0
- package/lib/adapters/soql/index.js +21 -0
- package/lib/adapters/soql/index.js.map +1 -0
- package/lib/adapters/soql/soql-query-adapter.d.ts +141 -0
- package/lib/adapters/soql/soql-query-adapter.js +259 -0
- package/lib/adapters/soql/soql-query-adapter.js.map +1 -0
- package/lib/adapters/soql/types.d.ts +37 -0
- package/lib/adapters/soql/types.js +19 -0
- package/lib/adapters/soql/types.js.map +1 -0
- package/lib/adapters/testing/index.d.ts +37 -0
- package/lib/adapters/testing/index.js +20 -0
- package/lib/adapters/testing/index.js.map +1 -0
- package/lib/adapters/testing/mock-connection.d.ts +77 -0
- package/lib/adapters/testing/mock-connection.js +207 -0
- package/lib/adapters/testing/mock-connection.js.map +1 -0
- package/lib/adapters/testing/mock-logger.d.ts +29 -0
- package/lib/adapters/testing/mock-logger.js +57 -0
- package/lib/adapters/testing/mock-logger.js.map +1 -0
- package/lib/adapters/testing/mock-mcp-adapters.d.ts +32 -0
- package/lib/adapters/testing/mock-mcp-adapters.js +52 -0
- package/lib/adapters/testing/mock-mcp-adapters.js.map +1 -0
- package/lib/adapters/testing/mock-oclif-config.d.ts +22 -0
- package/lib/adapters/testing/mock-oclif-config.js +90 -0
- package/lib/adapters/testing/mock-oclif-config.js.map +1 -0
- package/lib/adapters/testing/mock-rest-adapter.d.ts +26 -0
- package/lib/adapters/testing/mock-rest-adapter.js +243 -0
- package/lib/adapters/testing/mock-rest-adapter.js.map +1 -0
- package/lib/adapters/testing/mock-salesforce-connection.d.ts +40 -0
- package/lib/adapters/testing/mock-salesforce-connection.js +61 -0
- package/lib/adapters/testing/mock-salesforce-connection.js.map +1 -0
- package/lib/adapters/testing/mock-soql-adapter.d.ts +30 -0
- package/lib/adapters/testing/mock-soql-adapter.js +120 -0
- package/lib/adapters/testing/mock-soql-adapter.js.map +1 -0
- package/lib/adapters/testing/mock-tooling-adapter.d.ts +24 -0
- package/lib/adapters/testing/mock-tooling-adapter.js +163 -0
- package/lib/adapters/testing/mock-tooling-adapter.js.map +1 -0
- package/lib/adapters/testing/stub-connection.d.ts +93 -0
- package/lib/adapters/testing/stub-connection.js +97 -0
- package/lib/adapters/testing/stub-connection.js.map +1 -0
- package/lib/adapters/testing/stub-rest-adapter.d.ts +52 -0
- package/lib/adapters/testing/stub-rest-adapter.js +58 -0
- package/lib/adapters/testing/stub-rest-adapter.js.map +1 -0
- package/lib/adapters/testing/stub-soql-adapter.d.ts +56 -0
- package/lib/adapters/testing/stub-soql-adapter.js +50 -0
- package/lib/adapters/testing/stub-soql-adapter.js.map +1 -0
- package/lib/adapters/testing/types.d.ts +71 -0
- package/lib/adapters/testing/types.js +9 -0
- package/lib/adapters/testing/types.js.map +1 -0
- package/lib/adapters/tooling/index.d.ts +10 -0
- package/lib/adapters/tooling/index.js +17 -0
- package/lib/adapters/tooling/index.js.map +1 -0
- package/lib/adapters/tooling/tooling-api-adapter.d.ts +157 -0
- package/lib/adapters/tooling/tooling-api-adapter.js +339 -0
- package/lib/adapters/tooling/tooling-api-adapter.js.map +1 -0
- package/lib/adapters/tooling/types.d.ts +81 -0
- package/lib/adapters/tooling/types.js +9 -0
- package/lib/adapters/tooling/types.js.map +1 -0
- package/lib/adapters/types.d.ts +112 -0
- package/lib/adapters/types.js +169 -0
- package/lib/adapters/types.js.map +1 -0
- package/lib/base/cuneiform-command.d.ts +152 -0
- package/lib/base/cuneiform-command.js +243 -0
- package/lib/base/cuneiform-command.js.map +1 -0
- package/lib/commands/cuneiform/compatibility/check.d.ts +43 -0
- package/lib/commands/cuneiform/compatibility/check.js +114 -0
- package/lib/commands/cuneiform/compatibility/check.js.map +1 -0
- package/lib/commands/cuneiform/definition/create.d.ts +119 -0
- package/lib/commands/cuneiform/definition/create.js +693 -0
- package/lib/commands/cuneiform/definition/create.js.map +1 -0
- package/lib/commands/cuneiform/definition/export.d.ts +57 -0
- package/lib/commands/cuneiform/definition/export.js +133 -0
- package/lib/commands/cuneiform/definition/export.js.map +1 -0
- package/lib/commands/cuneiform/definition/get.d.ts +86 -0
- package/lib/commands/cuneiform/definition/get.js +270 -0
- package/lib/commands/cuneiform/definition/get.js.map +1 -0
- package/lib/commands/cuneiform/definition/import.d.ts +54 -0
- package/lib/commands/cuneiform/definition/import.js +118 -0
- package/lib/commands/cuneiform/definition/import.js.map +1 -0
- package/lib/commands/cuneiform/definition/list.d.ts +110 -0
- package/lib/commands/cuneiform/definition/list.js +344 -0
- package/lib/commands/cuneiform/definition/list.js.map +1 -0
- package/lib/commands/cuneiform/definition/purge.d.ts +105 -0
- package/lib/commands/cuneiform/definition/purge.js +533 -0
- package/lib/commands/cuneiform/definition/purge.js.map +1 -0
- package/lib/commands/cuneiform/definition/update.d.ts +58 -0
- package/lib/commands/cuneiform/definition/update.js +206 -0
- package/lib/commands/cuneiform/definition/update.js.map +1 -0
- package/lib/commands/cuneiform/mcp/serve.d.ts +56 -0
- package/lib/commands/cuneiform/mcp/serve.js +109 -0
- package/lib/commands/cuneiform/mcp/serve.js.map +1 -0
- package/lib/commands/cuneiform/object/describe.d.ts +61 -0
- package/lib/commands/cuneiform/object/describe.js +461 -0
- package/lib/commands/cuneiform/object/describe.js.map +1 -0
- package/lib/commands/cuneiform/object/list.d.ts +111 -0
- package/lib/commands/cuneiform/object/list.js +239 -0
- package/lib/commands/cuneiform/object/list.js.map +1 -0
- package/lib/commands/cuneiform/org/details.d.ts +99 -0
- package/lib/commands/cuneiform/org/details.js +521 -0
- package/lib/commands/cuneiform/org/details.js.map +1 -0
- package/lib/commands/cuneiform/org/reset.d.ts +46 -0
- package/lib/commands/cuneiform/org/reset.js +135 -0
- package/lib/commands/cuneiform/org/reset.js.map +1 -0
- package/lib/commands/cuneiform/profile/request/cancel.d.ts +59 -0
- package/lib/commands/cuneiform/profile/request/cancel.js +202 -0
- package/lib/commands/cuneiform/profile/request/cancel.js.map +1 -0
- package/lib/commands/cuneiform/profile/request/delete.d.ts +59 -0
- package/lib/commands/cuneiform/profile/request/delete.js +223 -0
- package/lib/commands/cuneiform/profile/request/delete.js.map +1 -0
- package/lib/commands/cuneiform/profile/request/list.d.ts +35 -0
- package/lib/commands/cuneiform/profile/request/list.js +102 -0
- package/lib/commands/cuneiform/profile/request/list.js.map +1 -0
- package/lib/commands/cuneiform/profile.d.ts +90 -0
- package/lib/commands/cuneiform/profile.js +322 -0
- package/lib/commands/cuneiform/profile.js.map +1 -0
- package/lib/commands/cuneiform/summary/purge.d.ts +77 -0
- package/lib/commands/cuneiform/summary/purge.js +429 -0
- package/lib/commands/cuneiform/summary/purge.js.map +1 -0
- package/lib/commands/cuneiform/summary/reprofile.d.ts +60 -0
- package/lib/commands/cuneiform/summary/reprofile.js +236 -0
- package/lib/commands/cuneiform/summary/reprofile.js.map +1 -0
- package/lib/commands/cuneiform/summary/stop.d.ts +59 -0
- package/lib/commands/cuneiform/summary/stop.js +234 -0
- package/lib/commands/cuneiform/summary/stop.js.map +1 -0
- package/lib/commands/cuneiform/user/details.d.ts +73 -0
- package/lib/commands/cuneiform/user/details.js +391 -0
- package/lib/commands/cuneiform/user/details.js.map +1 -0
- package/lib/constants/index.d.ts +8 -0
- package/lib/constants/index.js +16 -0
- package/lib/constants/index.js.map +1 -0
- package/lib/constants/namespace-constants.d.ts +91 -0
- package/lib/constants/namespace-constants.js +211 -0
- package/lib/constants/namespace-constants.js.map +1 -0
- package/lib/debug/command-debug-proxy.d.ts +101 -0
- package/lib/debug/command-debug-proxy.js +171 -0
- package/lib/debug/command-debug-proxy.js.map +1 -0
- package/lib/debug/debug-logger.d.ts +85 -0
- package/lib/debug/debug-logger.js +133 -0
- package/lib/debug/debug-logger.js.map +1 -0
- package/lib/debug/index.d.ts +12 -0
- package/lib/debug/index.js +20 -0
- package/lib/debug/index.js.map +1 -0
- package/lib/debug/service-debug-proxy.d.ts +30 -0
- package/lib/debug/service-debug-proxy.js +102 -0
- package/lib/debug/service-debug-proxy.js.map +1 -0
- package/lib/hooks/prerun.d.ts +25 -0
- package/lib/hooks/prerun.js +47 -0
- package/lib/hooks/prerun.js.map +1 -0
- package/lib/mcp/config/mcp-config.d.ts +55 -0
- package/lib/mcp/config/mcp-config.js +51 -0
- package/lib/mcp/config/mcp-config.js.map +1 -0
- package/lib/mcp/config/pagination.d.ts +96 -0
- package/lib/mcp/config/pagination.js +108 -0
- package/lib/mcp/config/pagination.js.map +1 -0
- package/lib/mcp/config/system-prompts.d.ts +18 -0
- package/lib/mcp/config/system-prompts.js +92 -0
- package/lib/mcp/config/system-prompts.js.map +1 -0
- package/lib/mcp/errors.d.ts +23 -0
- package/lib/mcp/errors.js +27 -0
- package/lib/mcp/errors.js.map +1 -0
- package/lib/mcp/schemas/input-schemas.d.ts +327 -0
- package/lib/mcp/schemas/input-schemas.js +302 -0
- package/lib/mcp/schemas/input-schemas.js.map +1 -0
- package/lib/mcp/server.d.ts +40 -0
- package/lib/mcp/server.js +316 -0
- package/lib/mcp/server.js.map +1 -0
- package/lib/mcp/tools/contactpoint-tools.d.ts +14 -0
- package/lib/mcp/tools/contactpoint-tools.js +34 -0
- package/lib/mcp/tools/contactpoint-tools.js.map +1 -0
- package/lib/mcp/tools/definition-io-tools.d.ts +19 -0
- package/lib/mcp/tools/definition-io-tools.js +152 -0
- package/lib/mcp/tools/definition-io-tools.js.map +1 -0
- package/lib/mcp/tools/definition-tools.d.ts +51 -0
- package/lib/mcp/tools/definition-tools.js +199 -0
- package/lib/mcp/tools/definition-tools.js.map +1 -0
- package/lib/mcp/tools/index.d.ts +37 -0
- package/lib/mcp/tools/index.js +88 -0
- package/lib/mcp/tools/index.js.map +1 -0
- package/lib/mcp/tools/object-tools.d.ts +22 -0
- package/lib/mcp/tools/object-tools.js +306 -0
- package/lib/mcp/tools/object-tools.js.map +1 -0
- package/lib/mcp/tools/org-tools.d.ts +14 -0
- package/lib/mcp/tools/org-tools.js +177 -0
- package/lib/mcp/tools/org-tools.js.map +1 -0
- package/lib/mcp/tools/profile-tools.d.ts +59 -0
- package/lib/mcp/tools/profile-tools.js +213 -0
- package/lib/mcp/tools/profile-tools.js.map +1 -0
- package/lib/mcp/tools/summary-tools.d.ts +14 -0
- package/lib/mcp/tools/summary-tools.js +38 -0
- package/lib/mcp/tools/summary-tools.js.map +1 -0
- package/lib/mcp/tools/tool-factory.d.ts +63 -0
- package/lib/mcp/tools/tool-factory.js +146 -0
- package/lib/mcp/tools/tool-factory.js.map +1 -0
- package/lib/mcp/tools/user-tools.d.ts +25 -0
- package/lib/mcp/tools/user-tools.js +167 -0
- package/lib/mcp/tools/user-tools.js.map +1 -0
- package/lib/models/date-literal.d.ts +211 -0
- package/lib/models/date-literal.js +615 -0
- package/lib/models/date-literal.js.map +1 -0
- package/lib/models/object-describe-types.d.ts +173 -0
- package/lib/models/object-describe-types.js +9 -0
- package/lib/models/object-describe-types.js.map +1 -0
- package/lib/models/profile-request-types.d.ts +118 -0
- package/lib/models/profile-request-types.js +23 -0
- package/lib/models/profile-request-types.js.map +1 -0
- package/lib/models/profiling-execution-types.d.ts +154 -0
- package/lib/models/profiling-execution-types.js +14 -0
- package/lib/models/profiling-execution-types.js.map +1 -0
- package/lib/models/service-result.d.ts +114 -0
- package/lib/models/service-result.js +81 -0
- package/lib/models/service-result.js.map +1 -0
- package/lib/models/sfdmu-types.d.ts +53 -0
- package/lib/models/sfdmu-types.js +23 -0
- package/lib/models/sfdmu-types.js.map +1 -0
- package/lib/models/status-types.d.ts +38 -0
- package/lib/models/status-types.js +12 -0
- package/lib/models/status-types.js.map +1 -0
- package/lib/models/summary-bulk-types.d.ts +61 -0
- package/lib/models/summary-bulk-types.js +23 -0
- package/lib/models/summary-bulk-types.js.map +1 -0
- package/lib/models/user-details-types.d.ts +163 -0
- package/lib/models/user-details-types.js +9 -0
- package/lib/models/user-details-types.js.map +1 -0
- package/lib/models/year-range.d.ts +78 -0
- package/lib/models/year-range.js +153 -0
- package/lib/models/year-range.js.map +1 -0
- package/lib/operations/CompatibilityCheckOperation.d.ts +62 -0
- package/lib/operations/CompatibilityCheckOperation.js +102 -0
- package/lib/operations/CompatibilityCheckOperation.js.map +1 -0
- package/lib/operations/DefinitionCreateOperation.d.ts +411 -0
- package/lib/operations/DefinitionCreateOperation.js +1121 -0
- package/lib/operations/DefinitionCreateOperation.js.map +1 -0
- package/lib/operations/DefinitionExportOperation.d.ts +155 -0
- package/lib/operations/DefinitionExportOperation.js +281 -0
- package/lib/operations/DefinitionExportOperation.js.map +1 -0
- package/lib/operations/DefinitionImportOperation.d.ts +144 -0
- package/lib/operations/DefinitionImportOperation.js +357 -0
- package/lib/operations/DefinitionImportOperation.js.map +1 -0
- package/lib/operations/DefinitionListOperation.d.ts +66 -0
- package/lib/operations/DefinitionListOperation.js +108 -0
- package/lib/operations/DefinitionListOperation.js.map +1 -0
- package/lib/operations/DefinitionPurgeOperation.d.ts +199 -0
- package/lib/operations/DefinitionPurgeOperation.js +465 -0
- package/lib/operations/DefinitionPurgeOperation.js.map +1 -0
- package/lib/operations/DefinitionUpdateOperation.d.ts +78 -0
- package/lib/operations/DefinitionUpdateOperation.js +142 -0
- package/lib/operations/DefinitionUpdateOperation.js.map +1 -0
- package/lib/operations/OrgDetailsOperation.d.ts +253 -0
- package/lib/operations/OrgDetailsOperation.js +456 -0
- package/lib/operations/OrgDetailsOperation.js.map +1 -0
- package/lib/operations/OrgResetOperation.d.ts +114 -0
- package/lib/operations/OrgResetOperation.js +209 -0
- package/lib/operations/OrgResetOperation.js.map +1 -0
- package/lib/operations/ProfileOperation.d.ts +187 -0
- package/lib/operations/ProfileOperation.js +373 -0
- package/lib/operations/ProfileOperation.js.map +1 -0
- package/lib/operations/ProfileRequestCancelOperation.d.ts +59 -0
- package/lib/operations/ProfileRequestCancelOperation.js +137 -0
- package/lib/operations/ProfileRequestCancelOperation.js.map +1 -0
- package/lib/operations/ProfileRequestDeleteOperation.d.ts +64 -0
- package/lib/operations/ProfileRequestDeleteOperation.js +134 -0
- package/lib/operations/ProfileRequestDeleteOperation.js.map +1 -0
- package/lib/operations/ProfileRequestListOperation.d.ts +39 -0
- package/lib/operations/ProfileRequestListOperation.js +61 -0
- package/lib/operations/ProfileRequestListOperation.js.map +1 -0
- package/lib/operations/SummaryPurgeOperation.d.ts +134 -0
- package/lib/operations/SummaryPurgeOperation.js +257 -0
- package/lib/operations/SummaryPurgeOperation.js.map +1 -0
- package/lib/operations/SummaryReprofileOperation.d.ts +88 -0
- package/lib/operations/SummaryReprofileOperation.js +174 -0
- package/lib/operations/SummaryReprofileOperation.js.map +1 -0
- package/lib/operations/SummaryStopOperation.d.ts +87 -0
- package/lib/operations/SummaryStopOperation.js +175 -0
- package/lib/operations/SummaryStopOperation.js.map +1 -0
- package/lib/services/BulkExecutionService.d.ts +120 -0
- package/lib/services/BulkExecutionService.js +535 -0
- package/lib/services/BulkExecutionService.js.map +1 -0
- package/lib/services/CompatibilityService.d.ts +81 -0
- package/lib/services/CompatibilityService.js +118 -0
- package/lib/services/CompatibilityService.js.map +1 -0
- package/lib/services/ConfigureMode.d.ts +85 -0
- package/lib/services/ConfigureMode.js +390 -0
- package/lib/services/ConfigureMode.js.map +1 -0
- package/lib/services/ContactPointService.d.ts +111 -0
- package/lib/services/ContactPointService.js +286 -0
- package/lib/services/ContactPointService.js.map +1 -0
- package/lib/services/DataAvailabilityService.d.ts +81 -0
- package/lib/services/DataAvailabilityService.js +128 -0
- package/lib/services/DataAvailabilityService.js.map +1 -0
- package/lib/services/DefinitionFieldGenerationService.d.ts +309 -0
- package/lib/services/DefinitionFieldGenerationService.js +795 -0
- package/lib/services/DefinitionFieldGenerationService.js.map +1 -0
- package/lib/services/DefinitionQueryBuilder.d.ts +59 -0
- package/lib/services/DefinitionQueryBuilder.js +234 -0
- package/lib/services/DefinitionQueryBuilder.js.map +1 -0
- package/lib/services/ObjectDescribeService.d.ts +436 -0
- package/lib/services/ObjectDescribeService.js +869 -0
- package/lib/services/ObjectDescribeService.js.map +1 -0
- package/lib/services/ObjectFilteringService.d.ts +400 -0
- package/lib/services/ObjectFilteringService.js +878 -0
- package/lib/services/ObjectFilteringService.js.map +1 -0
- package/lib/services/ObjectListCommandService.d.ts +429 -0
- package/lib/services/ObjectListCommandService.js +873 -0
- package/lib/services/ObjectListCommandService.js.map +1 -0
- package/lib/services/ObjectListService.d.ts +201 -0
- package/lib/services/ObjectListService.js +345 -0
- package/lib/services/ObjectListService.js.map +1 -0
- package/lib/services/OrgInfoService.d.ts +485 -0
- package/lib/services/OrgInfoService.js +1122 -0
- package/lib/services/OrgInfoService.js.map +1 -0
- package/lib/services/PollingService.d.ts +105 -0
- package/lib/services/PollingService.js +117 -0
- package/lib/services/PollingService.js.map +1 -0
- package/lib/services/ProfileRequestService.d.ts +186 -0
- package/lib/services/ProfileRequestService.js +555 -0
- package/lib/services/ProfileRequestService.js.map +1 -0
- package/lib/services/ProfilingDefinitionService.d.ts +535 -0
- package/lib/services/ProfilingDefinitionService.js +981 -0
- package/lib/services/ProfilingDefinitionService.js.map +1 -0
- package/lib/services/ProfilingExecutionService.d.ts +122 -0
- package/lib/services/ProfilingExecutionService.js +320 -0
- package/lib/services/ProfilingExecutionService.js.map +1 -0
- package/lib/services/ProfilingSummaryService.d.ts +292 -0
- package/lib/services/ProfilingSummaryService.js +685 -0
- package/lib/services/ProfilingSummaryService.js.map +1 -0
- package/lib/services/RecordTypeService.d.ts +129 -0
- package/lib/services/RecordTypeService.js +284 -0
- package/lib/services/RecordTypeService.js.map +1 -0
- package/lib/services/SFDMUService.d.ts +133 -0
- package/lib/services/SFDMUService.js +295 -0
- package/lib/services/SFDMUService.js.map +1 -0
- package/lib/services/TabDetectionService.d.ts +105 -0
- package/lib/services/TabDetectionService.js +206 -0
- package/lib/services/TabDetectionService.js.map +1 -0
- package/lib/services/UnconfigureMode.d.ts +74 -0
- package/lib/services/UnconfigureMode.js +378 -0
- package/lib/services/UnconfigureMode.js.map +1 -0
- package/lib/services/UserConfigurationService.d.ts +155 -0
- package/lib/services/UserConfigurationService.js +573 -0
- package/lib/services/UserConfigurationService.js.map +1 -0
- package/lib/services/UserConfigurationTypes.d.ts +181 -0
- package/lib/services/UserConfigurationTypes.js +14 -0
- package/lib/services/UserConfigurationTypes.js.map +1 -0
- package/lib/services/UserReadinessService.d.ts +330 -0
- package/lib/services/UserReadinessService.js +831 -0
- package/lib/services/UserReadinessService.js.map +1 -0
- package/lib/services/constants.d.ts +53 -0
- package/lib/services/constants.js +71 -0
- package/lib/services/constants.js.map +1 -0
- package/lib/services/namespace-constants.d.ts +1 -0
- package/lib/services/namespace-constants.js +11 -0
- package/lib/services/namespace-constants.js.map +1 -0
- package/lib/services/validation.d.ts +47 -0
- package/lib/services/validation.js +119 -0
- package/lib/services/validation.js.map +1 -0
- package/lib/utils/batch-processor.d.ts +13 -0
- package/lib/utils/batch-processor.js +39 -0
- package/lib/utils/batch-processor.js.map +1 -0
- package/lib/utils/formatting/availability-grid.d.ts +81 -0
- package/lib/utils/formatting/availability-grid.js +94 -0
- package/lib/utils/formatting/availability-grid.js.map +1 -0
- package/lib/utils/formatting/business-process-grid.d.ts +51 -0
- package/lib/utils/formatting/business-process-grid.js +58 -0
- package/lib/utils/formatting/business-process-grid.js.map +1 -0
- package/lib/utils/formatting/command-display.d.ts +154 -0
- package/lib/utils/formatting/command-display.js +154 -0
- package/lib/utils/formatting/command-display.js.map +1 -0
- package/lib/utils/formatting/definition-create-display.d.ts +118 -0
- package/lib/utils/formatting/definition-create-display.js +231 -0
- package/lib/utils/formatting/definition-create-display.js.map +1 -0
- package/lib/utils/formatting/empty-states.d.ts +35 -0
- package/lib/utils/formatting/empty-states.js +70 -0
- package/lib/utils/formatting/empty-states.js.map +1 -0
- package/lib/utils/formatting/errors.d.ts +33 -0
- package/lib/utils/formatting/errors.js +72 -0
- package/lib/utils/formatting/errors.js.map +1 -0
- package/lib/utils/formatting/field-types.d.ts +32 -0
- package/lib/utils/formatting/field-types.js +88 -0
- package/lib/utils/formatting/field-types.js.map +1 -0
- package/lib/utils/formatting/index.d.ts +29 -0
- package/lib/utils/formatting/index.js +28 -0
- package/lib/utils/formatting/index.js.map +1 -0
- package/lib/utils/formatting/indicators.d.ts +113 -0
- package/lib/utils/formatting/indicators.js +161 -0
- package/lib/utils/formatting/indicators.js.map +1 -0
- package/lib/utils/formatting/loading-messages.d.ts +37 -0
- package/lib/utils/formatting/loading-messages.js +50 -0
- package/lib/utils/formatting/loading-messages.js.map +1 -0
- package/lib/utils/formatting/namespace-display.d.ts +31 -0
- package/lib/utils/formatting/namespace-display.js +64 -0
- package/lib/utils/formatting/namespace-display.js.map +1 -0
- package/lib/utils/formatting/numbers.d.ts +73 -0
- package/lib/utils/formatting/numbers.js +187 -0
- package/lib/utils/formatting/numbers.js.map +1 -0
- package/lib/utils/formatting/object-describe-display.d.ts +114 -0
- package/lib/utils/formatting/object-describe-display.js +440 -0
- package/lib/utils/formatting/object-describe-display.js.map +1 -0
- package/lib/utils/formatting/object-list-display.d.ts +213 -0
- package/lib/utils/formatting/object-list-display.js +672 -0
- package/lib/utils/formatting/object-list-display.js.map +1 -0
- package/lib/utils/formatting/org-identity.d.ts +15 -0
- package/lib/utils/formatting/org-identity.js +28 -0
- package/lib/utils/formatting/org-identity.js.map +1 -0
- package/lib/utils/formatting/record-age-grid.d.ts +41 -0
- package/lib/utils/formatting/record-age-grid.js +56 -0
- package/lib/utils/formatting/record-age-grid.js.map +1 -0
- package/lib/utils/formatting/sections.d.ts +108 -0
- package/lib/utils/formatting/sections.js +150 -0
- package/lib/utils/formatting/sections.js.map +1 -0
- package/lib/utils/formatting/tables.d.ts +90 -0
- package/lib/utils/formatting/tables.js +113 -0
- package/lib/utils/formatting/tables.js.map +1 -0
- package/lib/utils/formatting/user-details-display.d.ts +101 -0
- package/lib/utils/formatting/user-details-display.js +425 -0
- package/lib/utils/formatting/user-details-display.js.map +1 -0
- package/lib/utils/pagination/index.d.ts +11 -0
- package/lib/utils/pagination/index.js +18 -0
- package/lib/utils/pagination/index.js.map +1 -0
- package/lib/utils/pagination/keypress-reader.d.ts +20 -0
- package/lib/utils/pagination/keypress-reader.js +63 -0
- package/lib/utils/pagination/keypress-reader.js.map +1 -0
- package/lib/utils/pagination/paginate-output.d.ts +48 -0
- package/lib/utils/pagination/paginate-output.js +136 -0
- package/lib/utils/pagination/paginate-output.js.map +1 -0
- package/messages/compatibility.check.md +71 -0
- package/messages/cuneiform.access.md +138 -0
- package/messages/definition.create.md +511 -0
- package/messages/definition.export.md +84 -0
- package/messages/definition.get.md +147 -0
- package/messages/definition.import.md +65 -0
- package/messages/definition.list.md +264 -0
- package/messages/definition.purge.md +318 -0
- package/messages/definition.update.md +118 -0
- package/messages/mcp.serve.md +66 -0
- package/messages/object.describe.md +201 -0
- package/messages/object.list.md +443 -0
- package/messages/org.details.md +386 -0
- package/messages/org.reset.md +71 -0
- package/messages/profile.md +231 -0
- package/messages/profile.request.cancel.md +143 -0
- package/messages/profile.request.delete.md +139 -0
- package/messages/profile.request.list.md +89 -0
- package/messages/summary.purge.md +218 -0
- package/messages/summary.reprofile.md +150 -0
- package/messages/summary.stop.md +157 -0
- package/messages/user.details.md +501 -0
- package/oclif.lock +2887 -2149
- package/oclif.manifest.json +2813 -31
- package/package.json +94 -19
- package/lib/commands/cuneiform/about.d.ts +0 -13
- package/lib/commands/cuneiform/about.js +0 -26
- package/lib/commands/cuneiform/about.js.map +0 -1
- package/lib/commands/hello/world.d.ts +0 -14
- package/lib/commands/hello/world.js +0 -27
- package/lib/commands/hello/world.js.map +0 -1
- package/lib/index.d.ts +0 -2
- package/lib/index.js +0 -2
- package/lib/index.js.map +0 -1
- package/messages/cuneiform.about.md +0 -19
- package/messages/hello.world.md +0 -29
|
@@ -0,0 +1,113 @@
|
|
|
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
|
+
/**
|
|
9
|
+
* Table column definition utilities for type-safe oclif table rendering.
|
|
10
|
+
*
|
|
11
|
+
* Provides a `ColumnDef` type for declaring table columns with optional formatters,
|
|
12
|
+
* a `buildColumns` function to convert definitions to oclif's table column format,
|
|
13
|
+
* and pre-built column helpers for common data types.
|
|
14
|
+
*
|
|
15
|
+
* @module utils/formatting/tables
|
|
16
|
+
*/
|
|
17
|
+
import { formatNumber } from './numbers.js';
|
|
18
|
+
/**
|
|
19
|
+
* Renders a table with optional per-column alignment.
|
|
20
|
+
*
|
|
21
|
+
* Computes column widths from the widest value in each column (including header),
|
|
22
|
+
* then formats all rows using two-space separators between columns.
|
|
23
|
+
*
|
|
24
|
+
* @param header - Column header labels
|
|
25
|
+
* @param rows - 2D array of string cell values
|
|
26
|
+
* @param align - Per-column alignment ('l' for left, 'r' for right). Defaults to 'l' for unspecified columns.
|
|
27
|
+
* @returns Formatted table string with two-space column separators
|
|
28
|
+
*
|
|
29
|
+
* @example
|
|
30
|
+
* renderAlignedTable(['Name', 'Count'], [['Alpha', '42'], ['Beta', '1,234']], ['l', 'r'])
|
|
31
|
+
* // 'Name Count\nAlpha 42\nBeta 1,234'
|
|
32
|
+
*/
|
|
33
|
+
export function renderAlignedTable(header, rows, align = []) {
|
|
34
|
+
const allRows = [header, ...rows];
|
|
35
|
+
const colWidths = header.map((_, colIdx) => Math.max(...allRows.map((row) => (row[colIdx] ?? '').length)));
|
|
36
|
+
const formatRow = (row) => row
|
|
37
|
+
.map((cell, i) => {
|
|
38
|
+
const width = colWidths[i];
|
|
39
|
+
return (align[i] ?? 'l') === 'r' ? cell.padStart(width) : cell.padEnd(width);
|
|
40
|
+
})
|
|
41
|
+
.join(' ');
|
|
42
|
+
return allRows.map(formatRow).join('\n');
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Converts an array of `ColumnDef` definitions to oclif's table column format.
|
|
46
|
+
*
|
|
47
|
+
* Strips the `format` property and returns plain `{ key, name }` objects suitable
|
|
48
|
+
* for passing directly to oclif v4's `ux.table()` API.
|
|
49
|
+
*
|
|
50
|
+
* @typeParam T - The row data type
|
|
51
|
+
* @param defs - Array of column definitions
|
|
52
|
+
* @returns Array of `{ key, name }` objects for oclif table rendering
|
|
53
|
+
*
|
|
54
|
+
* @example
|
|
55
|
+
* buildColumns([{ key: 'name', name: 'Object Name' }, { key: 'count', name: 'Records' }])
|
|
56
|
+
*/
|
|
57
|
+
export function buildColumns(defs) {
|
|
58
|
+
return defs.map(({ key, name }) => ({ key, name }));
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Creates a column definition for numeric values.
|
|
62
|
+
*
|
|
63
|
+
* The returned `ColumnDef` includes a `format` function that applies locale-aware
|
|
64
|
+
* number formatting via `formatNumber()`. Handles null, undefined, NaN, and
|
|
65
|
+
* Infinity by returning '--'.
|
|
66
|
+
*
|
|
67
|
+
* @typeParam T - The row data type
|
|
68
|
+
* @param key - Property key on the row data type
|
|
69
|
+
* @param name - Column header display name
|
|
70
|
+
* @returns A `ColumnDef` with a number formatting function
|
|
71
|
+
*
|
|
72
|
+
* @example
|
|
73
|
+
* type Row = { name: string; recordCount: number };
|
|
74
|
+
* numberColumn<Row>('recordCount', 'Records');
|
|
75
|
+
* // { key: 'recordCount', name: 'Records', format: [Function] }
|
|
76
|
+
*/
|
|
77
|
+
export function numberColumn(key, name) {
|
|
78
|
+
return {
|
|
79
|
+
key,
|
|
80
|
+
name,
|
|
81
|
+
format: (value) => formatNumber(value),
|
|
82
|
+
};
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Creates a column definition for boolean values.
|
|
86
|
+
*
|
|
87
|
+
* The returned `ColumnDef` includes a `format` function that converts boolean
|
|
88
|
+
* values to 'Yes' or 'No' strings. Non-boolean values (null, undefined, or
|
|
89
|
+
* other types) are rendered as '--'.
|
|
90
|
+
*
|
|
91
|
+
* @typeParam T - The row data type
|
|
92
|
+
* @param key - Property key on the row data type
|
|
93
|
+
* @param name - Column header display name
|
|
94
|
+
* @returns A `ColumnDef` with a boolean formatting function
|
|
95
|
+
*
|
|
96
|
+
* @example
|
|
97
|
+
* type Row = { name: string; isActive: boolean };
|
|
98
|
+
* booleanColumn<Row>('isActive', 'Active');
|
|
99
|
+
* // { key: 'isActive', name: 'Active', format: [Function] }
|
|
100
|
+
*/
|
|
101
|
+
export function booleanColumn(key, name) {
|
|
102
|
+
return {
|
|
103
|
+
key,
|
|
104
|
+
name,
|
|
105
|
+
format: (value) => {
|
|
106
|
+
if (typeof value === 'boolean') {
|
|
107
|
+
return value ? 'Yes' : 'No';
|
|
108
|
+
}
|
|
109
|
+
return '--';
|
|
110
|
+
},
|
|
111
|
+
};
|
|
112
|
+
}
|
|
113
|
+
//# sourceMappingURL=tables.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tables.js","sourceRoot":"","sources":["../../../src/utils/formatting/tables.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;;;;;;GAQG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAO5C;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,kBAAkB,CAAC,MAAgB,EAAE,IAAgB,EAAE,QAA2B,EAAE;IAClG,MAAM,OAAO,GAAG,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC;IAClC,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAE3G,MAAM,SAAS,GAAG,CAAC,GAAa,EAAU,EAAE,CAC1C,GAAG;SACA,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;QACf,MAAM,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;QAC3B,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC/E,CAAC,CAAC;SACD,IAAI,CAAC,IAAI,CAAC,CAAC;IAEhB,OAAO,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC3C,CAAC;AAoBD;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,YAAY,CAC1B,IAAiC;IAEjC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AACtD,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,YAAY,CAAoC,GAAqB,EAAE,IAAY;IACjG,OAAO;QACL,GAAG;QACH,IAAI;QACJ,MAAM,EAAE,CAAC,KAA0B,EAAE,EAAE,CAAC,YAAY,CAAC,KAAkC,CAAC;KACzF,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,aAAa,CAAoC,GAAqB,EAAE,IAAY;IAClG,OAAO;QACL,GAAG;QACH,IAAI;QACJ,MAAM,EAAE,CAAC,KAA0B,EAAU,EAAE;YAC7C,IAAI,OAAO,KAAK,KAAK,SAAS,EAAE,CAAC;gBAC/B,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;YAC9B,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
import type { UserReadiness } from '../../services/UserReadinessService.js';
|
|
2
|
+
import type { UserInfo } from '../../services/UserReadinessService.js';
|
|
3
|
+
import type { UserDetailsResult, ConfigurationResult, ConfigurationActionResult } from '../../models/user-details-types.js';
|
|
4
|
+
/**
|
|
5
|
+
* Returns a properly pluralized count string (e.g., "1 change", "2 changes", "0 changes").
|
|
6
|
+
*/
|
|
7
|
+
export declare function pluralize(count: number, singular: string): string;
|
|
8
|
+
/**
|
|
9
|
+
* Returns a status indicator symbol for configuration actions.
|
|
10
|
+
* checkmark = applied or skipped (desired state achieved), cross = failed, ? = planned
|
|
11
|
+
*/
|
|
12
|
+
export declare function actionSymbol(status: 'applied' | 'skipped' | 'failed' | 'planned'): string;
|
|
13
|
+
/**
|
|
14
|
+
* Resolves the message key for a configuration action based on its type and status.
|
|
15
|
+
*/
|
|
16
|
+
export declare function resolveActionMessageKey(action: ConfigurationActionResult, isDryRun: boolean): {
|
|
17
|
+
key: string;
|
|
18
|
+
args: string[];
|
|
19
|
+
};
|
|
20
|
+
/**
|
|
21
|
+
* Displays the full human-readable output for the user details command.
|
|
22
|
+
*
|
|
23
|
+
* Orchestrates all display sub-sections: contextual header, org context,
|
|
24
|
+
* user identity, prerequisites, readiness status, resolution guidance,
|
|
25
|
+
* configuration actions, and next steps.
|
|
26
|
+
*
|
|
27
|
+
* @param log - The logging function (typically `this.log.bind(this)`)
|
|
28
|
+
* @param userInfo - The authenticated user information
|
|
29
|
+
* @param readiness - The user readiness assessment from the service
|
|
30
|
+
* @param result - The fully built command result
|
|
31
|
+
*/
|
|
32
|
+
export declare function displayOutput(log: (msg: string) => void, userInfo: UserInfo, readiness: UserReadiness, result: UserDetailsResult): void;
|
|
33
|
+
/**
|
|
34
|
+
* Displays the readiness status section (permission sets, config profile, warnings).
|
|
35
|
+
*
|
|
36
|
+
* @param log - The logging function
|
|
37
|
+
* @param result - The command result
|
|
38
|
+
* @param readiness - The readiness data from the service
|
|
39
|
+
*/
|
|
40
|
+
export declare function displayReadinessStatus(log: (msg: string) => void, result: UserDetailsResult, readiness: UserReadiness): void;
|
|
41
|
+
/**
|
|
42
|
+
* Displays the prerequisites section.
|
|
43
|
+
*
|
|
44
|
+
* @param log - The logging function
|
|
45
|
+
* @param result - The command result
|
|
46
|
+
*/
|
|
47
|
+
export declare function displayPrerequisites(log: (msg: string) => void, result: UserDetailsResult): void;
|
|
48
|
+
/**
|
|
49
|
+
* Displays configuration actions taken or planned.
|
|
50
|
+
*
|
|
51
|
+
* @param log - The logging function
|
|
52
|
+
* @param config - The configuration result
|
|
53
|
+
* @param isReady - Whether the user is ready after configuration
|
|
54
|
+
*/
|
|
55
|
+
export declare function displayConfigurationActions(log: (msg: string) => void, config: ConfigurationResult, isReady: boolean): void;
|
|
56
|
+
/**
|
|
57
|
+
* Displays action failure warnings as indented bullets under the Readiness section.
|
|
58
|
+
*
|
|
59
|
+
* @param log - The logging function
|
|
60
|
+
* @param configuration - The configuration result (may be undefined)
|
|
61
|
+
*/
|
|
62
|
+
export declare function displayActionWarnings(log: (msg: string) => void, configuration: ConfigurationResult | undefined): void;
|
|
63
|
+
/**
|
|
64
|
+
* Displays ready confirmation message based on readiness and configuration state.
|
|
65
|
+
*
|
|
66
|
+
* @param log - The logging function
|
|
67
|
+
* @param readiness - The readiness data from the service
|
|
68
|
+
* @param result - The command result
|
|
69
|
+
* @param username - The authenticated username
|
|
70
|
+
*/
|
|
71
|
+
export declare function displayReadyConfirmation(log: (msg: string) => void, readiness: UserReadiness, result: UserDetailsResult, username: string): void;
|
|
72
|
+
/**
|
|
73
|
+
* Displays next-step commands after a successful readiness check or configure.
|
|
74
|
+
*
|
|
75
|
+
* @param log - The logging function
|
|
76
|
+
* @param username - The authenticated username
|
|
77
|
+
*/
|
|
78
|
+
export declare function displayNextSteps(log: (msg: string) => void, username: string): void;
|
|
79
|
+
/**
|
|
80
|
+
* Displays structured "Next steps:" for the not-ready diagnostic state.
|
|
81
|
+
* Conditionally suppresses configure CTA when Admin PS is not assigned.
|
|
82
|
+
*
|
|
83
|
+
* @param log - The logging function
|
|
84
|
+
* @param result - The command result
|
|
85
|
+
* @param username - The authenticated username
|
|
86
|
+
*/
|
|
87
|
+
export declare function displayNotReadyNextSteps(log: (msg: string) => void, result: UserDetailsResult, username: string): void;
|
|
88
|
+
/**
|
|
89
|
+
* Displays structured "Next steps:" after configure partial failure.
|
|
90
|
+
*
|
|
91
|
+
* @param log - The logging function
|
|
92
|
+
* @param username - The authenticated username
|
|
93
|
+
*/
|
|
94
|
+
export declare function displayRetryNextSteps(log: (msg: string) => void, username: string): void;
|
|
95
|
+
/**
|
|
96
|
+
* Displays structured "Next steps:" after unconfigure success.
|
|
97
|
+
*
|
|
98
|
+
* @param log - The logging function
|
|
99
|
+
* @param username - The authenticated username
|
|
100
|
+
*/
|
|
101
|
+
export declare function displayUnconfigureNextSteps(log: (msg: string) => void, username: string): void;
|
|
@@ -0,0 +1,425 @@
|
|
|
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
|
+
/**
|
|
9
|
+
* Display formatting functions for the `sf cuneiform user details` command.
|
|
10
|
+
*
|
|
11
|
+
* Extracted from the command class to keep the command as a thin orchestration
|
|
12
|
+
* shell. All functions are pure (no `this` references) and accept a `log`
|
|
13
|
+
* callback for output. Functions compose primitives from the shared formatting
|
|
14
|
+
* barrel (`utils/formatting/index.ts`).
|
|
15
|
+
*
|
|
16
|
+
* @module utils/formatting/user-details-display
|
|
17
|
+
*/
|
|
18
|
+
import { Messages } from '@salesforce/core';
|
|
19
|
+
import { sectionHeader, keyValue, booleanDisplay, renderSummaryBox, renderOrgContext, renderContextualHeader, } from './index.js';
|
|
20
|
+
/**
|
|
21
|
+
* Lazily loads messages for the user.details command.
|
|
22
|
+
* Using a getter to avoid module-level side effects.
|
|
23
|
+
*/
|
|
24
|
+
function getMessages() {
|
|
25
|
+
return Messages.loadMessages('@peernova/cuneiform-sf', 'user.details');
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Returns a properly pluralized count string (e.g., "1 change", "2 changes", "0 changes").
|
|
29
|
+
*/
|
|
30
|
+
export function pluralize(count, singular) {
|
|
31
|
+
return count === 1 ? `${count} ${singular}` : `${count} ${singular}s`;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Returns a status indicator symbol for configuration actions.
|
|
35
|
+
* checkmark = applied or skipped (desired state achieved), cross = failed, ? = planned
|
|
36
|
+
*/
|
|
37
|
+
export function actionSymbol(status) {
|
|
38
|
+
switch (status) {
|
|
39
|
+
case 'applied':
|
|
40
|
+
case 'skipped':
|
|
41
|
+
return '✓';
|
|
42
|
+
case 'failed':
|
|
43
|
+
return '✗';
|
|
44
|
+
case 'planned':
|
|
45
|
+
return '?';
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Resolves the message key for a configuration action based on its type and status.
|
|
50
|
+
*/
|
|
51
|
+
export function resolveActionMessageKey(action, isDryRun) {
|
|
52
|
+
const label = action.targetLabel;
|
|
53
|
+
switch (action.type) {
|
|
54
|
+
case 'assignPermissionSet': {
|
|
55
|
+
const key = isDryRun ? 'wouldAssign' : action.status === 'skipped' ? 'alreadyAssigned' : 'assign';
|
|
56
|
+
return { key: `output.action.${key}`, args: [label] };
|
|
57
|
+
}
|
|
58
|
+
case 'enableApiOnlyProfiling': {
|
|
59
|
+
const key = isDryRun ? 'wouldEnable' : action.status === 'skipped' ? 'alreadyEnabled' : 'enable';
|
|
60
|
+
return { key: `output.action.${key}`, args: [] };
|
|
61
|
+
}
|
|
62
|
+
case 'unassignPermissionSet': {
|
|
63
|
+
const key = action.status === 'skipped' ? 'alreadyUnassigned' : 'unassign';
|
|
64
|
+
return { key: `output.action.${key}`, args: [label] };
|
|
65
|
+
}
|
|
66
|
+
case 'disableApiOnlyProfiling': {
|
|
67
|
+
const key = action.status === 'skipped' ? 'alreadyDisabled' : 'disable';
|
|
68
|
+
return { key: `output.action.${key}`, args: [] };
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Displays the full human-readable output for the user details command.
|
|
74
|
+
*
|
|
75
|
+
* Orchestrates all display sub-sections: contextual header, org context,
|
|
76
|
+
* user identity, prerequisites, readiness status, resolution guidance,
|
|
77
|
+
* configuration actions, and next steps.
|
|
78
|
+
*
|
|
79
|
+
* @param log - The logging function (typically `this.log.bind(this)`)
|
|
80
|
+
* @param userInfo - The authenticated user information
|
|
81
|
+
* @param readiness - The user readiness assessment from the service
|
|
82
|
+
* @param result - The fully built command result
|
|
83
|
+
*/
|
|
84
|
+
export function displayOutput(log, userInfo, readiness, result) {
|
|
85
|
+
const messages = getMessages();
|
|
86
|
+
// Contextual Header
|
|
87
|
+
log('');
|
|
88
|
+
const orgNameForHeader = result.orgContext.orgName !== '(unknown)' ? result.orgContext.orgName : undefined;
|
|
89
|
+
log(renderContextualHeader({
|
|
90
|
+
commandTitle: messages.getMessage('output.headerTitle'),
|
|
91
|
+
username: userInfo.username,
|
|
92
|
+
orgName: orgNameForHeader,
|
|
93
|
+
}));
|
|
94
|
+
// Org Context Section (only if org identity was retrieved)
|
|
95
|
+
if (result.orgContext.orgId !== '(unknown)') {
|
|
96
|
+
log('');
|
|
97
|
+
log(renderOrgContext({
|
|
98
|
+
orgName: result.orgContext.orgName,
|
|
99
|
+
orgId: result.orgContext.orgId,
|
|
100
|
+
instanceUrl: result.orgContext.instanceUrl,
|
|
101
|
+
isSandbox: result.orgContext.isSandbox,
|
|
102
|
+
}));
|
|
103
|
+
}
|
|
104
|
+
// User Identity Section
|
|
105
|
+
log('');
|
|
106
|
+
log(renderSummaryBox({
|
|
107
|
+
title: messages.getMessage('output.userIdentity.title'),
|
|
108
|
+
entries: [
|
|
109
|
+
{ key: messages.getMessage('output.userIdentity.id'), value: userInfo.id },
|
|
110
|
+
{ key: messages.getMessage('output.userIdentity.username'), value: userInfo.username },
|
|
111
|
+
{ key: messages.getMessage('output.userIdentity.email'), value: userInfo.email },
|
|
112
|
+
{ key: messages.getMessage('output.userIdentity.profile'), value: userInfo.profileName },
|
|
113
|
+
{
|
|
114
|
+
key: messages.getMessage('output.userIdentity.role'),
|
|
115
|
+
value: userInfo.roleName ?? messages.getMessage('output.userIdentity.noRole'),
|
|
116
|
+
},
|
|
117
|
+
],
|
|
118
|
+
}));
|
|
119
|
+
// Prerequisites Section
|
|
120
|
+
displayPrerequisites(log, result);
|
|
121
|
+
// Readiness Status Section
|
|
122
|
+
displayReadinessStatus(log, result, readiness);
|
|
123
|
+
// Resolution Guidance Section (only if not ready)
|
|
124
|
+
if (result.resolutionGuidance.length > 0) {
|
|
125
|
+
log('');
|
|
126
|
+
log(sectionHeader(messages.getMessage('output.guidance.header')));
|
|
127
|
+
for (const item of result.resolutionGuidance) {
|
|
128
|
+
log(` • ${item.issue}`);
|
|
129
|
+
if (item.detail) {
|
|
130
|
+
for (const line of item.detail) {
|
|
131
|
+
log(` - ${line}`);
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
log(` ${item.action}`);
|
|
135
|
+
}
|
|
136
|
+
// Add structured "Next steps:" when not ready and not already configuring
|
|
137
|
+
if (!result.configuration && result.prerequisites.cuneiformInstalled) {
|
|
138
|
+
displayNotReadyNextSteps(log, result, userInfo.username);
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
// Configuration Actions Section (only if --configure was used)
|
|
142
|
+
if (result.configuration) {
|
|
143
|
+
displayConfigurationActions(log, result.configuration, readiness.isReady);
|
|
144
|
+
}
|
|
145
|
+
// Ready confirmation
|
|
146
|
+
displayReadyConfirmation(log, readiness, result, userInfo.username);
|
|
147
|
+
log('');
|
|
148
|
+
}
|
|
149
|
+
/**
|
|
150
|
+
* Displays the readiness status section (permission sets, config profile, warnings).
|
|
151
|
+
*
|
|
152
|
+
* @param log - The logging function
|
|
153
|
+
* @param result - The command result
|
|
154
|
+
* @param readiness - The readiness data from the service
|
|
155
|
+
*/
|
|
156
|
+
export function displayReadinessStatus(log, result, readiness) {
|
|
157
|
+
const messages = getMessages();
|
|
158
|
+
log('');
|
|
159
|
+
log(sectionHeader(messages.getMessage('output.readiness.header')));
|
|
160
|
+
if (!result.prerequisites.cuneiformInstalled) {
|
|
161
|
+
log(keyValue(messages.getMessage('output.readiness.status'), messages.getMessage('output.readiness.notInstalled')));
|
|
162
|
+
log(keyValue(messages.getMessage('output.readiness.detail'), messages.getMessage('guidance.cuneiformNotInstalled')));
|
|
163
|
+
}
|
|
164
|
+
else {
|
|
165
|
+
const statusLabel = readiness.isReady
|
|
166
|
+
? messages.getMessage('output.readiness.ready')
|
|
167
|
+
: messages.getMessage('output.readiness.notReady');
|
|
168
|
+
log(keyValue(messages.getMessage('output.readiness.status'), statusLabel));
|
|
169
|
+
// Permission Sets
|
|
170
|
+
log('');
|
|
171
|
+
log(` ${messages.getMessage('output.readiness.permissionSets')}`);
|
|
172
|
+
for (const ps of result.readiness.permissionSets) {
|
|
173
|
+
const symbol = booleanDisplay(ps.isAssigned, { style: 'symbol' });
|
|
174
|
+
const displayName = ps.label ?? ps.apiName;
|
|
175
|
+
log(` ${symbol} ${displayName}`);
|
|
176
|
+
}
|
|
177
|
+
// Configuration Profile
|
|
178
|
+
log('');
|
|
179
|
+
if (result.readiness.configProfile.isConfigured) {
|
|
180
|
+
const profileLabel = result.readiness.configProfile.profileLabel ?? messages.getMessage('output.readiness.unknown');
|
|
181
|
+
log(` ${messages.getMessage('output.readiness.configProfile', [profileLabel])}`);
|
|
182
|
+
const profilingSymbol = booleanDisplay(result.readiness.configProfile.apiOnlyProfilingEnabled ?? false, {
|
|
183
|
+
style: 'symbol',
|
|
184
|
+
});
|
|
185
|
+
log(` ${profilingSymbol} ${messages.getMessage('output.readiness.globalProfiling')}`);
|
|
186
|
+
// Only show self-registration status when the Admin PS prerequisite is met
|
|
187
|
+
const hasAdminPS = result.readiness.permissionSets.some((ps) => ps.apiName.includes('PRO_Administrative_User') && ps.isAssigned);
|
|
188
|
+
if (hasAdminPS) {
|
|
189
|
+
const selfRegSymbol = booleanDisplay(result.readiness.configProfile.selfRegistrationEnabled ?? false, {
|
|
190
|
+
style: 'symbol',
|
|
191
|
+
});
|
|
192
|
+
log(` ${selfRegSymbol} ${messages.getMessage('output.readiness.selfRegistration')}`);
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
else {
|
|
196
|
+
log(` ${messages.getMessage('output.readiness.configProfile', [messages.getMessage('output.readiness.unknown')])}`);
|
|
197
|
+
log(` ${messages.getMessage('output.readiness.noActiveProfile')}`);
|
|
198
|
+
}
|
|
199
|
+
displayActionWarnings(log, result.configuration);
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
/**
|
|
203
|
+
* Displays the prerequisites section.
|
|
204
|
+
*
|
|
205
|
+
* @param log - The logging function
|
|
206
|
+
* @param result - The command result
|
|
207
|
+
*/
|
|
208
|
+
export function displayPrerequisites(log, result) {
|
|
209
|
+
const messages = getMessages();
|
|
210
|
+
log('');
|
|
211
|
+
log(sectionHeader(messages.getMessage('prerequisites.header')));
|
|
212
|
+
log('');
|
|
213
|
+
if (result.prerequisites.cuneiformInstalled) {
|
|
214
|
+
log(` ${booleanDisplay(true, { style: 'symbol' })} ${messages.getMessage('prerequisites.cuneiformInstalled')}`);
|
|
215
|
+
}
|
|
216
|
+
else {
|
|
217
|
+
log(` ${booleanDisplay(false, { style: 'symbol' })} ${messages.getMessage('prerequisites.cuneiformNotInstalled')}`);
|
|
218
|
+
log(` ${messages.getMessage('prerequisites.cuneiformInstallUrl')}`);
|
|
219
|
+
}
|
|
220
|
+
if (!result.prerequisites.cuneiformInstalled) {
|
|
221
|
+
return;
|
|
222
|
+
}
|
|
223
|
+
if (result.prerequisites.adminAccessAssigned) {
|
|
224
|
+
log(` ${booleanDisplay(true, { style: 'symbol' })} ${messages.getMessage('prerequisites.adminAccess')}`);
|
|
225
|
+
}
|
|
226
|
+
else {
|
|
227
|
+
log(` ${booleanDisplay(false, { style: 'symbol' })} ${messages.getMessage('prerequisites.adminNoAccess')}`);
|
|
228
|
+
log(` ${messages.getMessage('prerequisites.adminRemediation')}`);
|
|
229
|
+
}
|
|
230
|
+
}
|
|
231
|
+
/**
|
|
232
|
+
* Displays configuration actions taken or planned.
|
|
233
|
+
*
|
|
234
|
+
* @param log - The logging function
|
|
235
|
+
* @param config - The configuration result
|
|
236
|
+
* @param isReady - Whether the user is ready after configuration
|
|
237
|
+
*/
|
|
238
|
+
export function displayConfigurationActions(log, config, isReady) {
|
|
239
|
+
const messages = getMessages();
|
|
240
|
+
log('');
|
|
241
|
+
const headerKey = config.dryRun ? 'info.plannedActions' : 'info.completedActions';
|
|
242
|
+
log(sectionHeader(messages.getMessage(headerKey)));
|
|
243
|
+
for (const action of config.actions) {
|
|
244
|
+
const symbol = actionSymbol(action.status);
|
|
245
|
+
const { key, args } = resolveActionMessageKey(action, config.dryRun);
|
|
246
|
+
log(` ${symbol} ${messages.getMessage(key, args)}`);
|
|
247
|
+
}
|
|
248
|
+
// Idempotent messaging and proper pluralization
|
|
249
|
+
const isUnconfigure = config.actions.some((a) => a.type === 'unassignPermissionSet' || a.type === 'disableApiOnlyProfiling');
|
|
250
|
+
const changeCount = config.dryRun ? config.summary.changesRequired : config.summary.changesApplied;
|
|
251
|
+
log('');
|
|
252
|
+
if (!config.dryRun && changeCount === 0 && !isReady) {
|
|
253
|
+
// Nothing was changed and user still isn't ready — show actionable bullets
|
|
254
|
+
log(` • ${messages.getMessage('info.userConfigureIncomplete')}`);
|
|
255
|
+
log(` • ${messages.getMessage('info.userConfigureIncompleteAction')}`);
|
|
256
|
+
}
|
|
257
|
+
else if (!config.dryRun && changeCount === 0) {
|
|
258
|
+
// Nothing was changed but user IS ready — idempotent success
|
|
259
|
+
log(` • ${messages.getMessage(isUnconfigure ? 'info.alreadyUnconfiguredSummary' : 'info.alreadyConfiguredSummary')}`);
|
|
260
|
+
}
|
|
261
|
+
else if (!config.dryRun && config.summary.changesFailed > 0) {
|
|
262
|
+
// Partial failure: no summary line — markers on each action already communicate success/failure
|
|
263
|
+
}
|
|
264
|
+
else {
|
|
265
|
+
// Full success or dry-run
|
|
266
|
+
const summaryKey = config.dryRun
|
|
267
|
+
? 'info.dryRunSummary'
|
|
268
|
+
: isUnconfigure
|
|
269
|
+
? 'info.unconfigureComplete'
|
|
270
|
+
: 'info.configurationComplete';
|
|
271
|
+
log(` • ${messages.getMessage(summaryKey, [pluralize(changeCount, 'change')])}`);
|
|
272
|
+
}
|
|
273
|
+
if (config.deploymentJobId) {
|
|
274
|
+
log(` ${messages.getMessage('output.jobIdSuffix', [config.deploymentJobId])}`);
|
|
275
|
+
}
|
|
276
|
+
}
|
|
277
|
+
/**
|
|
278
|
+
* Displays action failure warnings as indented bullets under the Readiness section.
|
|
279
|
+
*
|
|
280
|
+
* @param log - The logging function
|
|
281
|
+
* @param configuration - The configuration result (may be undefined)
|
|
282
|
+
*/
|
|
283
|
+
export function displayActionWarnings(log, configuration) {
|
|
284
|
+
if (!configuration)
|
|
285
|
+
return;
|
|
286
|
+
const messages = getMessages();
|
|
287
|
+
const warnings = configuration.actions.filter((a) => a.status === 'failed' && a.message).map((a) => a.message);
|
|
288
|
+
if (warnings.length === 0)
|
|
289
|
+
return;
|
|
290
|
+
log('');
|
|
291
|
+
log(` ${messages.getMessage('output.readiness.warnings')}`);
|
|
292
|
+
for (const warning of warnings) {
|
|
293
|
+
log(` • ${warning}`);
|
|
294
|
+
}
|
|
295
|
+
}
|
|
296
|
+
/**
|
|
297
|
+
* Displays ready confirmation message based on readiness and configuration state.
|
|
298
|
+
*
|
|
299
|
+
* @param log - The logging function
|
|
300
|
+
* @param readiness - The readiness data from the service
|
|
301
|
+
* @param result - The command result
|
|
302
|
+
* @param username - The authenticated username
|
|
303
|
+
*/
|
|
304
|
+
export function displayReadyConfirmation(log, readiness, result, username) {
|
|
305
|
+
const messages = getMessages();
|
|
306
|
+
if (result.configuration && !result.configuration.dryRun && result.readiness.isReady) {
|
|
307
|
+
log('');
|
|
308
|
+
// Use present-tense "is ready" when no changes were applied (already configured);
|
|
309
|
+
// use past-tense "is now ready" when changes were actually applied
|
|
310
|
+
const readyMessage = result.configuration.summary.changesApplied > 0 ? 'info.userConfigured' : 'info.userReady';
|
|
311
|
+
log(messages.getMessage(readyMessage));
|
|
312
|
+
// Next steps after successful configure
|
|
313
|
+
displayNextSteps(log, username);
|
|
314
|
+
}
|
|
315
|
+
else if (result.configuration && !result.configuration.dryRun && !result.readiness.isReady) {
|
|
316
|
+
const wasUnconfigure = result.configuration.actions.some((a) => a.type === 'unassignPermissionSet' || a.type === 'disableApiOnlyProfiling');
|
|
317
|
+
// Only show the end-state text when changes were actually attempted
|
|
318
|
+
if (wasUnconfigure ||
|
|
319
|
+
result.configuration.summary.changesApplied > 0 ||
|
|
320
|
+
result.configuration.summary.changesFailed > 0) {
|
|
321
|
+
log('');
|
|
322
|
+
if (wasUnconfigure) {
|
|
323
|
+
log(messages.getMessage('info.userUnconfigured'));
|
|
324
|
+
}
|
|
325
|
+
else {
|
|
326
|
+
log(` • ${messages.getMessage('info.userConfigureIncomplete')}`);
|
|
327
|
+
log(` • ${messages.getMessage('info.userConfigureIncompleteAction')}`);
|
|
328
|
+
}
|
|
329
|
+
}
|
|
330
|
+
// Structured "Next steps:" — context-aware
|
|
331
|
+
if (wasUnconfigure) {
|
|
332
|
+
displayUnconfigureNextSteps(log, username);
|
|
333
|
+
}
|
|
334
|
+
else {
|
|
335
|
+
displayRetryNextSteps(log, username);
|
|
336
|
+
}
|
|
337
|
+
}
|
|
338
|
+
else if (result.configuration && result.configuration.dryRun && result.configuration.summary.changesRequired > 0) {
|
|
339
|
+
log('');
|
|
340
|
+
log(messages.getMessage('info.userWouldBeReady'));
|
|
341
|
+
}
|
|
342
|
+
else if (!result.configuration && readiness.isReady && result.resolutionGuidance.length === 0) {
|
|
343
|
+
log('');
|
|
344
|
+
log(messages.getMessage('info.userReady'));
|
|
345
|
+
displayNextSteps(log, username);
|
|
346
|
+
}
|
|
347
|
+
}
|
|
348
|
+
/**
|
|
349
|
+
* Displays next-step commands after a successful readiness check or configure.
|
|
350
|
+
*
|
|
351
|
+
* @param log - The logging function
|
|
352
|
+
* @param username - The authenticated username
|
|
353
|
+
*/
|
|
354
|
+
export function displayNextSteps(log, username) {
|
|
355
|
+
const messages = getMessages();
|
|
356
|
+
log('');
|
|
357
|
+
log(messages.getMessage('info.nextSteps'));
|
|
358
|
+
log('');
|
|
359
|
+
log(` ${messages.getMessage('info.nextStepsOrgDetailsLabel')}`);
|
|
360
|
+
log(` ${messages.getMessage('info.nextStepsOrgDetails', [username])}`);
|
|
361
|
+
log('');
|
|
362
|
+
log(` ${messages.getMessage('info.nextStepsObjectListLabel')}`);
|
|
363
|
+
log(` ${messages.getMessage('info.nextStepsObjectList', [username])}`);
|
|
364
|
+
log('');
|
|
365
|
+
log(` ${messages.getMessage('info.nextStepsObjectDescribeLabel')}`);
|
|
366
|
+
log(` ${messages.getMessage('info.nextStepsObjectDescribe')}`);
|
|
367
|
+
log('');
|
|
368
|
+
log(` ${messages.getMessage('info.nextStepsDefinitionCreateLabel')}`);
|
|
369
|
+
log(` ${messages.getMessage('info.nextStepsDefinitionCreate')}`);
|
|
370
|
+
}
|
|
371
|
+
/**
|
|
372
|
+
* Displays structured "Next steps:" for the not-ready diagnostic state.
|
|
373
|
+
* Conditionally suppresses configure CTA when Admin PS is not assigned.
|
|
374
|
+
*
|
|
375
|
+
* @param log - The logging function
|
|
376
|
+
* @param result - The command result
|
|
377
|
+
* @param username - The authenticated username
|
|
378
|
+
*/
|
|
379
|
+
export function displayNotReadyNextSteps(log, result, username) {
|
|
380
|
+
const messages = getMessages();
|
|
381
|
+
const hasAdminPS = result.readiness.permissionSets.some((ps) => ps.apiName.includes('PRO_Administrative_User') && ps.isAssigned);
|
|
382
|
+
log('');
|
|
383
|
+
log(messages.getMessage('info.nextSteps'));
|
|
384
|
+
if (hasAdminPS) {
|
|
385
|
+
log('');
|
|
386
|
+
log(` ${messages.getMessage('info.nextStepsPreviewLabel')}`);
|
|
387
|
+
log(` ${messages.getMessage('info.nextStepsPreview', [username])}`);
|
|
388
|
+
log('');
|
|
389
|
+
log(` ${messages.getMessage('info.nextStepsConfigureLabel')}`);
|
|
390
|
+
log(` ${messages.getMessage('info.nextStepsConfigure', [username])}`);
|
|
391
|
+
}
|
|
392
|
+
else {
|
|
393
|
+
log('');
|
|
394
|
+
log(` ${messages.getMessage('info.nextStepsContactAdmin')}`);
|
|
395
|
+
}
|
|
396
|
+
}
|
|
397
|
+
/**
|
|
398
|
+
* Displays structured "Next steps:" after configure partial failure.
|
|
399
|
+
*
|
|
400
|
+
* @param log - The logging function
|
|
401
|
+
* @param username - The authenticated username
|
|
402
|
+
*/
|
|
403
|
+
export function displayRetryNextSteps(log, username) {
|
|
404
|
+
const messages = getMessages();
|
|
405
|
+
log('');
|
|
406
|
+
log(messages.getMessage('info.nextSteps'));
|
|
407
|
+
log('');
|
|
408
|
+
log(` ${messages.getMessage('info.nextStepsRetryLabel')}`);
|
|
409
|
+
log(` ${messages.getMessage('info.nextStepsConfigure', [username])}`);
|
|
410
|
+
}
|
|
411
|
+
/**
|
|
412
|
+
* Displays structured "Next steps:" after unconfigure success.
|
|
413
|
+
*
|
|
414
|
+
* @param log - The logging function
|
|
415
|
+
* @param username - The authenticated username
|
|
416
|
+
*/
|
|
417
|
+
export function displayUnconfigureNextSteps(log, username) {
|
|
418
|
+
const messages = getMessages();
|
|
419
|
+
log('');
|
|
420
|
+
log(messages.getMessage('info.nextSteps'));
|
|
421
|
+
log('');
|
|
422
|
+
log(` ${messages.getMessage('info.nextStepsReconfigureLabel')}`);
|
|
423
|
+
log(` ${messages.getMessage('info.nextStepsConfigure', [username])}`);
|
|
424
|
+
}
|
|
425
|
+
//# sourceMappingURL=user-details-display.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"user-details-display.js","sourceRoot":"","sources":["../../../src/utils/formatting/user-details-display.ts"],"names":[],"mappings":"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"}
|