@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,391 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Sort order for ORDER BY clauses.
|
|
3
|
+
*/
|
|
4
|
+
export type SortOrder = 'ASC' | 'DESC';
|
|
5
|
+
/**
|
|
6
|
+
* Comparison operators supported in WHERE clauses.
|
|
7
|
+
*/
|
|
8
|
+
export type ComparisonOperator = '=' | '!=' | '<' | '<=' | '>' | '>=' | 'LIKE';
|
|
9
|
+
/**
|
|
10
|
+
* Logical operators for combining WHERE conditions.
|
|
11
|
+
*/
|
|
12
|
+
export type LogicalOperator = 'AND' | 'OR';
|
|
13
|
+
/**
|
|
14
|
+
* Null handling options for ORDER BY clauses.
|
|
15
|
+
*/
|
|
16
|
+
export type NullsOrder = 'NULLS FIRST' | 'NULLS LAST';
|
|
17
|
+
/**
|
|
18
|
+
* Interface for the fluent SOQL query builder.
|
|
19
|
+
*
|
|
20
|
+
* Enables dependency injection and testing by decoupling consumers
|
|
21
|
+
* from the concrete CuneiformQueryBuilder implementation.
|
|
22
|
+
*/
|
|
23
|
+
export interface ICuneiformQueryBuilder {
|
|
24
|
+
select(fields: string[]): this;
|
|
25
|
+
count(): this;
|
|
26
|
+
from(objectName: string): this;
|
|
27
|
+
where(field: string, operator: ComparisonOperator, value: string | number | boolean): this;
|
|
28
|
+
andWhere(field: string, operator: ComparisonOperator, value: string | number | boolean): this;
|
|
29
|
+
orWhere(field: string, operator: ComparisonOperator, value: string | number | boolean): this;
|
|
30
|
+
andWhereIn(field: string, values: Array<string | number>): this;
|
|
31
|
+
andWhereNotIn(field: string, values: Array<string | number>): this;
|
|
32
|
+
orWhereIn(field: string, values: Array<string | number>): this;
|
|
33
|
+
andWhereNull(field: string, isNull?: boolean): this;
|
|
34
|
+
andWhereDatetime(field: string, operator: ComparisonOperator, datetimeValue: string): this;
|
|
35
|
+
whereDatetime(field: string, operator: ComparisonOperator, datetimeValue: string): this;
|
|
36
|
+
orderBy(field: string, order?: SortOrder, nullsOrder?: NullsOrder): this;
|
|
37
|
+
limit(count: number): this;
|
|
38
|
+
offset(count: number | undefined): this;
|
|
39
|
+
groupBy(fields: string[]): this;
|
|
40
|
+
having(field: string, operator: ComparisonOperator, value: string | number): this;
|
|
41
|
+
toSOQL(): string;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Fluent query builder for constructing type-safe SOQL queries.
|
|
45
|
+
*
|
|
46
|
+
* This class wraps @jetstreamapp/soql-parser-js to provide a fluent API
|
|
47
|
+
* for building SOQL queries programmatically, replacing ad-hoc string
|
|
48
|
+
* concatenation patterns throughout the codebase.
|
|
49
|
+
*
|
|
50
|
+
* @example Simple query
|
|
51
|
+
* ```typescript
|
|
52
|
+
* const soql = new CuneiformQueryBuilder()
|
|
53
|
+
* .select(['Id', 'Name', 'CreatedDate'])
|
|
54
|
+
* .from('Account')
|
|
55
|
+
* .where('Industry', '=', 'Technology')
|
|
56
|
+
* .orderBy('Name', 'ASC')
|
|
57
|
+
* .limit(50)
|
|
58
|
+
* .toSOQL();
|
|
59
|
+
* ```
|
|
60
|
+
*
|
|
61
|
+
* @example Aggregate query
|
|
62
|
+
* ```typescript
|
|
63
|
+
* const soql = new CuneiformQueryBuilder()
|
|
64
|
+
* .count()
|
|
65
|
+
* .from('Account')
|
|
66
|
+
* .toSOQL();
|
|
67
|
+
* // Result: SELECT COUNT() FROM Account
|
|
68
|
+
* ```
|
|
69
|
+
*
|
|
70
|
+
* @example Complex WHERE with IN clause
|
|
71
|
+
* ```typescript
|
|
72
|
+
* const soql = new CuneiformQueryBuilder()
|
|
73
|
+
* .select(['Id', 'Name'])
|
|
74
|
+
* .from('PermissionSetAssignment')
|
|
75
|
+
* .where('AssigneeId', '=', userId)
|
|
76
|
+
* .andWhereIn('PermissionSet.Name', ['CuneiformUser', 'CuneiformAdmin'])
|
|
77
|
+
* .toSOQL();
|
|
78
|
+
* ```
|
|
79
|
+
*/
|
|
80
|
+
export declare class CuneiformQueryBuilder implements ICuneiformQueryBuilder {
|
|
81
|
+
private fields;
|
|
82
|
+
private sObject;
|
|
83
|
+
private conditions;
|
|
84
|
+
private firstCondition;
|
|
85
|
+
private orderByFields;
|
|
86
|
+
private limitValue;
|
|
87
|
+
private offsetValue;
|
|
88
|
+
private groupByFields;
|
|
89
|
+
private havingCondition;
|
|
90
|
+
private isCountQuery;
|
|
91
|
+
/**
|
|
92
|
+
* Returns a new builder instance (for reuse patterns).
|
|
93
|
+
*
|
|
94
|
+
* @returns A new CuneiformQueryBuilder instance
|
|
95
|
+
*/
|
|
96
|
+
static create(): CuneiformQueryBuilder;
|
|
97
|
+
/**
|
|
98
|
+
* Escapes special characters in SOQL string values.
|
|
99
|
+
*
|
|
100
|
+
* @param value - The string value to escape
|
|
101
|
+
* @returns The escaped string
|
|
102
|
+
*/
|
|
103
|
+
private static escapeString;
|
|
104
|
+
/**
|
|
105
|
+
* Creates a simple comparison condition.
|
|
106
|
+
*/
|
|
107
|
+
private static createCondition;
|
|
108
|
+
/**
|
|
109
|
+
* Creates an IN or NOT IN condition.
|
|
110
|
+
*/
|
|
111
|
+
private static createInCondition;
|
|
112
|
+
/**
|
|
113
|
+
* Specifies the fields to select in the query.
|
|
114
|
+
*
|
|
115
|
+
* @param fields - Array of field API names (supports relationship notation like 'Account.Name')
|
|
116
|
+
* @returns this for method chaining
|
|
117
|
+
*
|
|
118
|
+
* @example
|
|
119
|
+
* ```typescript
|
|
120
|
+
* builder.select(['Id', 'Name', 'Account.Name', 'CreatedDate'])
|
|
121
|
+
* ```
|
|
122
|
+
*/
|
|
123
|
+
select(fields: string[]): this;
|
|
124
|
+
/**
|
|
125
|
+
* Creates a COUNT() aggregate query.
|
|
126
|
+
*
|
|
127
|
+
* When using count(), do not call select() as COUNT() replaces field selection.
|
|
128
|
+
*
|
|
129
|
+
* @returns this for method chaining
|
|
130
|
+
*
|
|
131
|
+
* @example
|
|
132
|
+
* ```typescript
|
|
133
|
+
* const soql = builder.count().from('Account').toSOQL();
|
|
134
|
+
* // Result: SELECT COUNT() FROM Account
|
|
135
|
+
* ```
|
|
136
|
+
*/
|
|
137
|
+
count(): this;
|
|
138
|
+
/**
|
|
139
|
+
* Specifies the sObject to query.
|
|
140
|
+
*
|
|
141
|
+
* @param objectName - The API name of the Salesforce object
|
|
142
|
+
* @returns this for method chaining
|
|
143
|
+
*
|
|
144
|
+
* @example
|
|
145
|
+
* ```typescript
|
|
146
|
+
* builder.from('Account')
|
|
147
|
+
* builder.from('Profiling_Definition__c')
|
|
148
|
+
* ```
|
|
149
|
+
*/
|
|
150
|
+
from(objectName: string): this;
|
|
151
|
+
/**
|
|
152
|
+
* Adds a WHERE condition to the query.
|
|
153
|
+
*
|
|
154
|
+
* This is the initial WHERE condition. Use andWhere() or orWhere() to add additional conditions.
|
|
155
|
+
*
|
|
156
|
+
* @param field - The field API name
|
|
157
|
+
* @param operator - The comparison operator
|
|
158
|
+
* @param value - The value to compare against (automatically escaped for strings)
|
|
159
|
+
* @returns this for method chaining
|
|
160
|
+
*
|
|
161
|
+
* @example
|
|
162
|
+
* ```typescript
|
|
163
|
+
* builder.where('Industry', '=', 'Technology')
|
|
164
|
+
* builder.where('Amount', '>', 1000)
|
|
165
|
+
* builder.where('Name', 'LIKE', 'Acme%')
|
|
166
|
+
* ```
|
|
167
|
+
*/
|
|
168
|
+
where(field: string, operator: ComparisonOperator, value: string | number | boolean): this;
|
|
169
|
+
/**
|
|
170
|
+
* Adds an AND condition to the WHERE clause.
|
|
171
|
+
*
|
|
172
|
+
* @param field - The field API name
|
|
173
|
+
* @param operator - The comparison operator
|
|
174
|
+
* @param value - The value to compare against
|
|
175
|
+
* @returns this for method chaining
|
|
176
|
+
*
|
|
177
|
+
* @example
|
|
178
|
+
* ```typescript
|
|
179
|
+
* builder
|
|
180
|
+
* .where('Industry', '=', 'Technology')
|
|
181
|
+
* .andWhere('IsActive', '=', true)
|
|
182
|
+
* .andWhere('Revenue', '>', 1000000)
|
|
183
|
+
* ```
|
|
184
|
+
*/
|
|
185
|
+
andWhere(field: string, operator: ComparisonOperator, value: string | number | boolean): this;
|
|
186
|
+
/**
|
|
187
|
+
* Adds an OR condition to the WHERE clause.
|
|
188
|
+
*
|
|
189
|
+
* @param field - The field API name
|
|
190
|
+
* @param operator - The comparison operator
|
|
191
|
+
* @param value - The value to compare against
|
|
192
|
+
* @returns this for method chaining
|
|
193
|
+
*
|
|
194
|
+
* @example
|
|
195
|
+
* ```typescript
|
|
196
|
+
* builder
|
|
197
|
+
* .where('Status', '=', 'Active')
|
|
198
|
+
* .orWhere('Status', '=', 'Pending')
|
|
199
|
+
* ```
|
|
200
|
+
*/
|
|
201
|
+
orWhere(field: string, operator: ComparisonOperator, value: string | number | boolean): this;
|
|
202
|
+
/**
|
|
203
|
+
* Adds an IN clause condition to the WHERE clause with AND logic.
|
|
204
|
+
*
|
|
205
|
+
* @param field - The field API name
|
|
206
|
+
* @param values - Array of values for the IN clause
|
|
207
|
+
* @returns this for method chaining
|
|
208
|
+
*
|
|
209
|
+
* @example
|
|
210
|
+
* ```typescript
|
|
211
|
+
* builder.andWhereIn('PermissionSet.Name', ['CuneiformUser', 'CuneiformAdmin'])
|
|
212
|
+
* // Generates: ... AND PermissionSet.Name IN ('CuneiformUser', 'CuneiformAdmin')
|
|
213
|
+
* ```
|
|
214
|
+
*/
|
|
215
|
+
andWhereIn(field: string, values: Array<string | number>): this;
|
|
216
|
+
/**
|
|
217
|
+
* Adds a NOT IN clause condition to the WHERE clause with AND logic.
|
|
218
|
+
*
|
|
219
|
+
* @param field - The field API name
|
|
220
|
+
* @param values - Array of values for the NOT IN clause
|
|
221
|
+
* @returns this for method chaining
|
|
222
|
+
*
|
|
223
|
+
* @example
|
|
224
|
+
* ```typescript
|
|
225
|
+
* builder.andWhereNotIn('Status', ['Complete', 'Failed', 'Cancelled'])
|
|
226
|
+
* // Generates: ... AND Status NOT IN ('Complete', 'Failed', 'Cancelled')
|
|
227
|
+
* ```
|
|
228
|
+
*/
|
|
229
|
+
andWhereNotIn(field: string, values: Array<string | number>): this;
|
|
230
|
+
/**
|
|
231
|
+
* Adds an IN clause condition to the WHERE clause with OR logic.
|
|
232
|
+
*
|
|
233
|
+
* @param field - The field API name
|
|
234
|
+
* @param values - Array of values for the IN clause
|
|
235
|
+
* @returns this for method chaining
|
|
236
|
+
*/
|
|
237
|
+
orWhereIn(field: string, values: Array<string | number>): this;
|
|
238
|
+
/**
|
|
239
|
+
* Adds a NULL check condition with AND logic.
|
|
240
|
+
*
|
|
241
|
+
* @param field - The field API name
|
|
242
|
+
* @param isNull - true for IS NULL, false for IS NOT NULL
|
|
243
|
+
* @returns this for method chaining
|
|
244
|
+
*
|
|
245
|
+
* @example
|
|
246
|
+
* ```typescript
|
|
247
|
+
* builder.andWhereNull('ParentId', true) // ParentId = null
|
|
248
|
+
* builder.andWhereNull('Email', false) // Email != null
|
|
249
|
+
* ```
|
|
250
|
+
*/
|
|
251
|
+
andWhereNull(field: string, isNull?: boolean): this;
|
|
252
|
+
/**
|
|
253
|
+
* Adds a DATETIME literal condition with AND logic.
|
|
254
|
+
*
|
|
255
|
+
* DATETIME literals in SOQL are not quoted and follow the format:
|
|
256
|
+
* YYYY-MM-DDTHH:MM:SSZ (e.g., 2024-01-01T00:00:00Z)
|
|
257
|
+
*
|
|
258
|
+
* @param field - The field API name (typically CreatedDate, LastModifiedDate, etc.)
|
|
259
|
+
* @param operator - The comparison operator
|
|
260
|
+
* @param datetimeValue - ISO 8601 datetime string (e.g., '2024-01-01T00:00:00Z')
|
|
261
|
+
* @returns this for method chaining
|
|
262
|
+
*
|
|
263
|
+
* @example
|
|
264
|
+
* ```typescript
|
|
265
|
+
* builder
|
|
266
|
+
* .select(['Id'])
|
|
267
|
+
* .from('Account')
|
|
268
|
+
* .andWhereDatetime('CreatedDate', '>=', '2024-01-01T00:00:00Z')
|
|
269
|
+
* .andWhereDatetime('CreatedDate', '<', '2025-01-01T00:00:00Z')
|
|
270
|
+
* ```
|
|
271
|
+
*/
|
|
272
|
+
andWhereDatetime(field: string, operator: ComparisonOperator, datetimeValue: string): this;
|
|
273
|
+
/**
|
|
274
|
+
* Adds a DATETIME literal as the initial WHERE condition.
|
|
275
|
+
*
|
|
276
|
+
* @param field - The field API name
|
|
277
|
+
* @param operator - The comparison operator
|
|
278
|
+
* @param datetimeValue - ISO 8601 datetime string
|
|
279
|
+
* @returns this for method chaining
|
|
280
|
+
*/
|
|
281
|
+
whereDatetime(field: string, operator: ComparisonOperator, datetimeValue: string): this;
|
|
282
|
+
/**
|
|
283
|
+
* Adds an ORDER BY clause.
|
|
284
|
+
*
|
|
285
|
+
* @param field - The field API name to sort by
|
|
286
|
+
* @param order - Sort direction ('ASC' or 'DESC')
|
|
287
|
+
* @param nullsOrder - Optional null handling ('NULLS FIRST' or 'NULLS LAST')
|
|
288
|
+
* @returns this for method chaining
|
|
289
|
+
*
|
|
290
|
+
* @example
|
|
291
|
+
* ```typescript
|
|
292
|
+
* builder.orderBy('Name', 'ASC')
|
|
293
|
+
* builder.orderBy('CreatedDate', 'DESC', 'NULLS LAST')
|
|
294
|
+
* ```
|
|
295
|
+
*/
|
|
296
|
+
orderBy(field: string, order?: SortOrder, nullsOrder?: NullsOrder): this;
|
|
297
|
+
/**
|
|
298
|
+
* Adds a LIMIT clause to the query.
|
|
299
|
+
*
|
|
300
|
+
* @param count - Maximum number of records to return
|
|
301
|
+
* @returns this for method chaining
|
|
302
|
+
*
|
|
303
|
+
* @example
|
|
304
|
+
* ```typescript
|
|
305
|
+
* builder.limit(50)
|
|
306
|
+
* ```
|
|
307
|
+
*/
|
|
308
|
+
limit(count: number): this;
|
|
309
|
+
/**
|
|
310
|
+
* Adds an OFFSET clause for pagination.
|
|
311
|
+
*
|
|
312
|
+
* @param count - Number of records to skip
|
|
313
|
+
* @returns this for method chaining
|
|
314
|
+
*
|
|
315
|
+
* @example
|
|
316
|
+
* ```typescript
|
|
317
|
+
* builder.limit(50).offset(100) // Skip first 100, return next 50
|
|
318
|
+
* ```
|
|
319
|
+
*/
|
|
320
|
+
offset(count: number | undefined): this;
|
|
321
|
+
/**
|
|
322
|
+
* Adds a GROUP BY clause for aggregate queries.
|
|
323
|
+
*
|
|
324
|
+
* @param fields - Array of field API names to group by
|
|
325
|
+
* @returns this for method chaining
|
|
326
|
+
*
|
|
327
|
+
* @example
|
|
328
|
+
* ```typescript
|
|
329
|
+
* const soql = builder
|
|
330
|
+
* .select(['SobjectType'])
|
|
331
|
+
* .from('RecordType')
|
|
332
|
+
* .where('IsActive', '=', true)
|
|
333
|
+
* .groupBy(['SobjectType'])
|
|
334
|
+
* .toSOQL();
|
|
335
|
+
* ```
|
|
336
|
+
*/
|
|
337
|
+
groupBy(fields: string[]): this;
|
|
338
|
+
/**
|
|
339
|
+
* Adds a HAVING clause for filtering grouped results.
|
|
340
|
+
*
|
|
341
|
+
* @param field - The aggregate function or field to filter on
|
|
342
|
+
* @param operator - The comparison operator
|
|
343
|
+
* @param value - The value to compare against
|
|
344
|
+
* @returns this for method chaining
|
|
345
|
+
*
|
|
346
|
+
* @example
|
|
347
|
+
* ```typescript
|
|
348
|
+
* builder
|
|
349
|
+
* .select(['Industry', 'COUNT(Id)'])
|
|
350
|
+
* .from('Account')
|
|
351
|
+
* .groupBy(['Industry'])
|
|
352
|
+
* .having('COUNT(Id)', '>', 5)
|
|
353
|
+
* ```
|
|
354
|
+
*/
|
|
355
|
+
having(field: string, operator: ComparisonOperator, value: string | number): this;
|
|
356
|
+
/**
|
|
357
|
+
* Generates the SOQL query string.
|
|
358
|
+
*
|
|
359
|
+
* @returns The complete SOQL query string
|
|
360
|
+
* @throws Error if required components (fields or sObject) are missing
|
|
361
|
+
*
|
|
362
|
+
* @example
|
|
363
|
+
* ```typescript
|
|
364
|
+
* const soql = builder
|
|
365
|
+
* .select(['Id', 'Name'])
|
|
366
|
+
* .from('Account')
|
|
367
|
+
* .where('Industry', '=', 'Technology')
|
|
368
|
+
* .toSOQL();
|
|
369
|
+
* // Returns: "SELECT Id, Name FROM Account WHERE Industry = 'Technology'"
|
|
370
|
+
* ```
|
|
371
|
+
*/
|
|
372
|
+
toSOQL(): string;
|
|
373
|
+
/**
|
|
374
|
+
* Validates the query has required components.
|
|
375
|
+
*/
|
|
376
|
+
private validate;
|
|
377
|
+
/**
|
|
378
|
+
* Adds a condition to the internal list.
|
|
379
|
+
*/
|
|
380
|
+
private addCondition;
|
|
381
|
+
/**
|
|
382
|
+
* Builds the WHERE clause from accumulated conditions.
|
|
383
|
+
*
|
|
384
|
+
* The soql-parser-js library expects WHERE clauses in this format:
|
|
385
|
+
* A AND B AND C becomes:
|
|
386
|
+
* { left: A, operator: AND, right: { left: B, operator: AND, right: { left: C } } }
|
|
387
|
+
*
|
|
388
|
+
* We build from right to left to create the proper nesting structure.
|
|
389
|
+
*/
|
|
390
|
+
private buildWhereClause;
|
|
391
|
+
}
|