@salesforce/afv-skills 1.8.0 → 1.9.0
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/package.json +1 -1
- package/skills/activating-datacloud/CREDITS.md +5 -0
- package/skills/activating-datacloud/README.md +39 -0
- package/skills/activating-datacloud/SKILL.md +118 -0
- package/skills/analyzing-omnistudio-dependencies/CREDITS.md +5 -0
- package/skills/analyzing-omnistudio-dependencies/SKILL.md +477 -0
- package/skills/analyzing-omnistudio-dependencies/references/dependency-patterns.md +508 -0
- package/skills/analyzing-omnistudio-dependencies/references/namespace-guide.md +300 -0
- package/skills/building-omnistudio-callable-apex/CREDITS.md +9 -0
- package/skills/building-omnistudio-callable-apex/README.md +80 -0
- package/skills/building-omnistudio-callable-apex/SKILL.md +276 -0
- package/skills/building-omnistudio-callable-apex/assets/pattern_callable_openinterface.cls +40 -0
- package/skills/building-omnistudio-callable-apex/assets/pattern_callable_vanilla.cls +32 -0
- package/skills/building-omnistudio-callable-apex/assets/pattern_migration.cls +54 -0
- package/skills/building-omnistudio-callable-apex/assets/pattern_openinterface.cls +45 -0
- package/skills/building-omnistudio-callable-apex/assets/pattern_test_class.cls +65 -0
- package/skills/building-omnistudio-callable-apex/examples/Test_QuoteByProductCallable/IndustriesCallableException.cls +7 -0
- package/skills/building-omnistudio-callable-apex/examples/Test_QuoteByProductCallable/Industries_QuoteByProductCallable.cls +115 -0
- package/skills/building-omnistudio-callable-apex/examples/Test_QuoteByProductCallable/Industries_QuoteByProductCallableTest.cls +189 -0
- package/skills/building-omnistudio-callable-apex/examples/Test_QuoteByProductCallable/TRANSCRIPT.md +115 -0
- package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterface2Conversion/IndustriesCallableException.cls +7 -0
- package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterface2Conversion/MyCustomCallable.cls +74 -0
- package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterface2Conversion/MyCustomCallableTest.cls +146 -0
- package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterface2Conversion/MyCustomRemoteClass.cls +16 -0
- package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterface2Conversion/TRANSCRIPT.md +120 -0
- package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterfaceConversion/IndustriesCallableException.cls +7 -0
- package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterfaceConversion/MyCustomCallable.cls +73 -0
- package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterfaceConversion/MyCustomCallableTest.cls +128 -0
- package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterfaceConversion/MyCustomVlocityOpenInterface2.cls +23 -0
- package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterfaceConversion/TRANSCRIPT.md +75 -0
- package/skills/building-omnistudio-datamapper/CREDITS.md +5 -0
- package/skills/building-omnistudio-datamapper/SKILL.md +270 -0
- package/skills/building-omnistudio-datamapper/assets/completion-summary-template.md +28 -0
- package/skills/building-omnistudio-datamapper/assets/omni-data-transform-extract.json +6 -0
- package/skills/building-omnistudio-datamapper/assets/omni-data-transform-item.json +12 -0
- package/skills/building-omnistudio-datamapper/assets/omni-data-transform-load.json +6 -0
- package/skills/building-omnistudio-datamapper/assets/omni-data-transform-transform.json +6 -0
- package/skills/building-omnistudio-datamapper/references/best-practices.md +277 -0
- package/skills/building-omnistudio-datamapper/references/naming-conventions.md +145 -0
- package/skills/building-omnistudio-flexcard/CREDITS.md +5 -0
- package/skills/building-omnistudio-flexcard/SKILL.md +325 -0
- package/skills/building-omnistudio-flexcard/assets/omni-ui-card.json +10 -0
- package/skills/building-omnistudio-flexcard/references/best-practices.md +291 -0
- package/skills/building-omnistudio-flexcard/references/data-binding-guide.md +311 -0
- package/skills/building-omnistudio-flexcard/references/scoring-rubric.md +66 -0
- package/skills/building-omnistudio-flexcard/scripts/flexcard-commands.sh +24 -0
- package/skills/building-omnistudio-integration-procedure/CREDITS.md +5 -0
- package/skills/building-omnistudio-integration-procedure/SKILL.md +275 -0
- package/skills/building-omnistudio-integration-procedure/assets/omni-process-element-dr-extract.json +10 -0
- package/skills/building-omnistudio-integration-procedure/assets/omni-process-element-set-values.json +10 -0
- package/skills/building-omnistudio-integration-procedure/assets/omni-process-ip.json +12 -0
- package/skills/building-omnistudio-integration-procedure/assets/scoring-report-format.txt +14 -0
- package/skills/building-omnistudio-integration-procedure/references/best-practices.md +388 -0
- package/skills/building-omnistudio-integration-procedure/references/element-types.md +588 -0
- package/skills/building-omnistudio-integration-procedure/scripts/cli-commands.sh +18 -0
- package/skills/building-omnistudio-omniscript/CREDITS.md +5 -0
- package/skills/building-omnistudio-omniscript/SKILL.md +367 -0
- package/skills/building-omnistudio-omniscript/assets/omni-process-element-step.json +10 -0
- package/skills/building-omnistudio-omniscript/assets/omni-process-element-text-block.json +11 -0
- package/skills/building-omnistudio-omniscript/assets/omni-process-omniscript.json +12 -0
- package/skills/building-omnistudio-omniscript/references/best-practices.md +480 -0
- package/skills/building-omnistudio-omniscript/references/element-types.md +1172 -0
- package/skills/building-omnistudio-omniscript/scripts/check-duplicate-omniscript.sh +13 -0
- package/skills/building-omnistudio-omniscript/scripts/cli-reference.sh +21 -0
- package/skills/building-omnistudio-omniscript/scripts/deploy-omniscript.sh +29 -0
- package/skills/building-sf-integrations/CREDITS.md +5 -0
- package/skills/building-sf-integrations/README.md +95 -0
- package/skills/building-sf-integrations/SKILL.md +192 -0
- package/skills/building-sf-integrations/assets/callouts/callout-retry-handler.cls +167 -0
- package/skills/building-sf-integrations/assets/callouts/http-response-handler.cls +257 -0
- package/skills/building-sf-integrations/assets/callouts/rest-queueable-callout.cls +262 -0
- package/skills/building-sf-integrations/assets/callouts/rest-sync-callout.cls +211 -0
- package/skills/building-sf-integrations/assets/cdc/cdc-handler.cls +246 -0
- package/skills/building-sf-integrations/assets/cdc/cdc-subscriber-trigger.trigger +139 -0
- package/skills/building-sf-integrations/assets/endpoint-security/example.cspTrustedSite-meta.xml +58 -0
- package/skills/building-sf-integrations/assets/endpoint-security/example.remoteSite-meta.xml +39 -0
- package/skills/building-sf-integrations/assets/external-credentials/jwt-external-credential.externalCredential-meta.xml +90 -0
- package/skills/building-sf-integrations/assets/external-credentials/oauth-external-credential.externalCredential-meta.xml +87 -0
- package/skills/building-sf-integrations/assets/external-services/external-service-operations.md +221 -0
- package/skills/building-sf-integrations/assets/external-services/openapi-registration.externalServiceRegistration-meta.xml +193 -0
- package/skills/building-sf-integrations/assets/named-credentials/certificate-auth.namedCredential-meta.xml +62 -0
- package/skills/building-sf-integrations/assets/named-credentials/custom-auth.namedCredential-meta.xml +71 -0
- package/skills/building-sf-integrations/assets/named-credentials/oauth-client-credentials.namedCredential-meta.xml +51 -0
- package/skills/building-sf-integrations/assets/named-credentials/oauth-jwt-bearer.namedCredential-meta.xml +67 -0
- package/skills/building-sf-integrations/assets/platform-events/event-publisher.cls +191 -0
- package/skills/building-sf-integrations/assets/platform-events/event-subscriber-action.cls +295 -0
- package/skills/building-sf-integrations/assets/platform-events/event-subscriber-trigger.trigger +108 -0
- package/skills/building-sf-integrations/assets/platform-events/platform-event-definition.object-meta.xml +124 -0
- package/skills/building-sf-integrations/assets/soap/soap-callout-service.cls +186 -0
- package/skills/building-sf-integrations/assets/soap/wsdl2apex-guide.md +213 -0
- package/skills/building-sf-integrations/hooks/scripts/suggest_credential_setup.py +271 -0
- package/skills/building-sf-integrations/hooks/scripts/validate_integration.py +363 -0
- package/skills/building-sf-integrations/references/callout-patterns.md +719 -0
- package/skills/building-sf-integrations/references/cdc-guide.md +288 -0
- package/skills/building-sf-integrations/references/cli-reference.md +94 -0
- package/skills/building-sf-integrations/references/event-driven-architecture-guide.md +266 -0
- package/skills/building-sf-integrations/references/event-patterns.md +838 -0
- package/skills/building-sf-integrations/references/external-services-guide.md +303 -0
- package/skills/building-sf-integrations/references/messaging-api-v2.md +609 -0
- package/skills/building-sf-integrations/references/named-credentials-automation.md +201 -0
- package/skills/building-sf-integrations/references/named-credentials-guide.md +173 -0
- package/skills/building-sf-integrations/references/platform-events-guide.md +288 -0
- package/skills/building-sf-integrations/references/rest-callout-patterns.md +288 -0
- package/skills/building-sf-integrations/references/scoring-rubric.md +59 -0
- package/skills/building-sf-integrations/references/security-best-practices.md +248 -0
- package/skills/building-sf-integrations/scripts/README.md +100 -0
- package/skills/building-sf-integrations/scripts/configure-named-credential.sh +236 -0
- package/skills/building-sf-integrations/scripts/set-api-credential.sh +146 -0
- package/skills/building-sf-integrations/scripts/templates/setup-credentials-with-csp.sh +158 -0
- package/skills/configuring-connected-apps/CREDITS.md +3 -0
- package/skills/configuring-connected-apps/README.md +99 -0
- package/skills/configuring-connected-apps/SKILL.md +224 -0
- package/skills/configuring-connected-apps/assets/connected-app-basic.xml +29 -0
- package/skills/configuring-connected-apps/assets/connected-app-canvas.xml +62 -0
- package/skills/configuring-connected-apps/assets/connected-app-jwt.xml +49 -0
- package/skills/configuring-connected-apps/assets/connected-app-oauth.xml +65 -0
- package/skills/configuring-connected-apps/assets/eca-global-oauth.xml +36 -0
- package/skills/configuring-connected-apps/assets/eca-oauth-settings.xml +36 -0
- package/skills/configuring-connected-apps/assets/eca-policies.xml +36 -0
- package/skills/configuring-connected-apps/assets/external-client-app.xml +35 -0
- package/skills/configuring-connected-apps/references/example-usage.md +256 -0
- package/skills/configuring-connected-apps/references/migration-guide.md +328 -0
- package/skills/configuring-connected-apps/references/oauth-flows-reference.md +660 -0
- package/skills/configuring-connected-apps/references/security-checklist.md +209 -0
- package/skills/configuring-connected-apps/references/testing-validation-guide.md +275 -0
- package/skills/connecting-datacloud/CREDITS.md +5 -0
- package/skills/connecting-datacloud/README.md +59 -0
- package/skills/connecting-datacloud/SKILL.md +155 -0
- package/skills/connecting-datacloud/examples/connections/heroku-postgres.json +15 -0
- package/skills/connecting-datacloud/examples/connections/ingest-api-connection.json +5 -0
- package/skills/connecting-datacloud/examples/connections/ingest-api-schema.json +31 -0
- package/skills/connecting-datacloud/examples/connections/redshift.json +16 -0
- package/skills/connecting-datacloud/examples/connections/sharepoint-unstructured.json +20 -0
- package/skills/connecting-datacloud/examples/connections/snowflake-connection.json +42 -0
- package/skills/debugging-apex-logs/CREDITS.md +22 -0
- package/skills/debugging-apex-logs/README.md +74 -0
- package/skills/debugging-apex-logs/SKILL.md +172 -0
- package/skills/debugging-apex-logs/assets/benchmarking-template.cls +327 -0
- package/skills/debugging-apex-logs/assets/cpu-heap-optimization.cls +307 -0
- package/skills/debugging-apex-logs/assets/dml-in-loop-fix.cls +219 -0
- package/skills/debugging-apex-logs/assets/null-pointer-fix.cls +252 -0
- package/skills/debugging-apex-logs/assets/soql-in-loop-fix.cls +157 -0
- package/skills/debugging-apex-logs/references/analysis-playbook.md +53 -0
- package/skills/debugging-apex-logs/references/benchmarking-guide.md +287 -0
- package/skills/debugging-apex-logs/references/cli-commands.md +368 -0
- package/skills/debugging-apex-logs/references/common-issues.md +68 -0
- package/skills/debugging-apex-logs/references/debug-log-reference.md +328 -0
- package/skills/debugging-apex-logs/references/log-analysis-tools.md +248 -0
- package/skills/debugging-apex-logs/references/scoring-rubric.md +21 -0
- package/skills/deploying-metadata/CREDITS.md +25 -0
- package/skills/deploying-metadata/README.md +104 -0
- package/skills/deploying-metadata/SKILL.md +214 -0
- package/skills/deploying-metadata/assets/destructiveChanges.xml +143 -0
- package/skills/deploying-metadata/assets/package.xml +121 -0
- package/skills/deploying-metadata/references/agent-deployment-guide.md +628 -0
- package/skills/deploying-metadata/references/deploy.sh +73 -0
- package/skills/deploying-metadata/references/deployment-report-template.md +89 -0
- package/skills/deploying-metadata/references/deployment-workflows.md +395 -0
- package/skills/deploying-metadata/references/orchestration.md +183 -0
- package/skills/deploying-metadata/references/trigger-deployment-safety.md +376 -0
- package/skills/deploying-omnistudio-datapacks/CREDITS.md +5 -0
- package/skills/deploying-omnistudio-datapacks/README.md +88 -0
- package/skills/deploying-omnistudio-datapacks/SKILL.md +174 -0
- package/skills/deploying-omnistudio-datapacks/examples/business-internet-plus-bundle/TRANSCRIPT.md +124 -0
- package/skills/deploying-omnistudio-datapacks/examples/business-internet-plus-bundle/deploy-business-internet-plus-bundle.yaml +11 -0
- package/skills/deploying-omnistudio-datapacks/examples/business-internet-plus-bundle-deploy/TRANSCRIPT.md +142 -0
- package/skills/deploying-omnistudio-datapacks/examples/business-internet-plus-bundle-deploy/deploy-business-internet-plus-bundle.yaml +10 -0
- package/skills/deploying-omnistudio-datapacks/references/job-file-template.md +42 -0
- package/skills/deploying-omnistudio-datapacks/references/troubleshooting-matrix.md +24 -0
- package/skills/developing-agentforce/assets/metadata/http-callout-flow.flow-meta.xml +1 -1
- package/skills/developing-agentforce/references/actions-reference.md +8 -8
- package/skills/fetching-salesforce-docs/README.md +66 -0
- package/skills/fetching-salesforce-docs/SKILL.md +209 -0
- package/skills/fetching-salesforce-docs/requirements.txt +2 -0
- package/skills/fetching-salesforce-docs/scripts/extract_help_salesforce.py +497 -0
- package/skills/fetching-salesforce-docs/scripts/extract_salesforce_doc.py +357 -0
- package/skills/fetching-salesforce-docs/scripts/runtime_bootstrap.py +58 -0
- package/skills/generating-apex/CREDITS.md +1 -26
- package/skills/generating-apex-test/CREDITS.md +2 -27
- package/skills/generating-lwc-components/CREDITS.md +5 -0
- package/skills/generating-lwc-components/README.md +126 -0
- package/skills/generating-lwc-components/SKILL.md +191 -0
- package/skills/generating-lwc-components/assets/apex-controller/LwcController.cls +327 -0
- package/skills/generating-lwc-components/assets/basic-component/basicComponent.css +72 -0
- package/skills/generating-lwc-components/assets/basic-component/basicComponent.html +111 -0
- package/skills/generating-lwc-components/assets/basic-component/basicComponent.js +163 -0
- package/skills/generating-lwc-components/assets/basic-component/basicComponent.js-meta.xml +137 -0
- package/skills/generating-lwc-components/assets/datatable-component/datatableComponent.html +111 -0
- package/skills/generating-lwc-components/assets/datatable-component/datatableComponent.js +367 -0
- package/skills/generating-lwc-components/assets/flow-screen-component/flowScreenComponent.css +63 -0
- package/skills/generating-lwc-components/assets/flow-screen-component/flowScreenComponent.html +154 -0
- package/skills/generating-lwc-components/assets/flow-screen-component/flowScreenComponent.js +348 -0
- package/skills/generating-lwc-components/assets/flow-screen-component/flowScreenComponent.js-meta.xml +87 -0
- package/skills/generating-lwc-components/assets/form-component/formComponent.html +165 -0
- package/skills/generating-lwc-components/assets/form-component/formComponent.js +275 -0
- package/skills/generating-lwc-components/assets/graphql-component/graphqlComponent.html +100 -0
- package/skills/generating-lwc-components/assets/graphql-component/graphqlComponent.js +336 -0
- package/skills/generating-lwc-components/assets/jest-test/componentName.test.js.example +371 -0
- package/skills/generating-lwc-components/assets/message-channel/RecordSelected.messageChannel-meta.xml +71 -0
- package/skills/generating-lwc-components/assets/message-channel/lmsPublisher.js +103 -0
- package/skills/generating-lwc-components/assets/message-channel/lmsSubscriber.js +181 -0
- package/skills/generating-lwc-components/assets/modal-component/modalComponent.html +85 -0
- package/skills/generating-lwc-components/assets/modal-component/modalComponent.js +199 -0
- package/skills/generating-lwc-components/assets/record-picker/recordPicker.html +55 -0
- package/skills/generating-lwc-components/assets/record-picker/recordPicker.js +199 -0
- package/skills/generating-lwc-components/assets/state-store/store.js +282 -0
- package/skills/generating-lwc-components/assets/typescript-component/typescriptComponent.css +65 -0
- package/skills/generating-lwc-components/assets/typescript-component/typescriptComponent.html +95 -0
- package/skills/generating-lwc-components/assets/typescript-component/typescriptComponent.js-meta.xml +75 -0
- package/skills/generating-lwc-components/assets/typescript-component/typescriptComponent.test.ts.example +301 -0
- package/skills/generating-lwc-components/assets/typescript-component/typescriptComponent.ts +295 -0
- package/skills/generating-lwc-components/assets/workspace-api/workspaceComponent.html +71 -0
- package/skills/generating-lwc-components/assets/workspace-api/workspaceComponent.js +316 -0
- package/skills/generating-lwc-components/hooks/scripts/lwc-lsp-validate.py +295 -0
- package/skills/generating-lwc-components/hooks/scripts/post-tool-validate.py +347 -0
- package/skills/generating-lwc-components/hooks/scripts/slds_data/deprecated_patterns.json +74 -0
- package/skills/generating-lwc-components/hooks/scripts/slds_data/styling_hooks.json +111 -0
- package/skills/generating-lwc-components/hooks/scripts/slds_data/valid_slds_classes.json +127 -0
- package/skills/generating-lwc-components/hooks/scripts/slds_linter_wrapper.py +294 -0
- package/skills/generating-lwc-components/hooks/scripts/slds_rules/__init__.py +22 -0
- package/skills/generating-lwc-components/hooks/scripts/template_validator.py +332 -0
- package/skills/generating-lwc-components/hooks/scripts/validate_slds.py +595 -0
- package/skills/generating-lwc-components/references/accessibility-guide.md +843 -0
- package/skills/generating-lwc-components/references/advanced-features.md +108 -0
- package/skills/generating-lwc-components/references/async-notification-patterns.md +661 -0
- package/skills/generating-lwc-components/references/cli-commands.md +545 -0
- package/skills/generating-lwc-components/references/component-patterns.md +1476 -0
- package/skills/generating-lwc-components/references/flow-integration-guide.md +675 -0
- package/skills/generating-lwc-components/references/jest-testing.md +1011 -0
- package/skills/generating-lwc-components/references/lms-guide.md +860 -0
- package/skills/generating-lwc-components/references/lwc-best-practices.md +1310 -0
- package/skills/generating-lwc-components/references/performance-guide.md +861 -0
- package/skills/generating-lwc-components/references/scoring-and-testing.md +116 -0
- package/skills/generating-lwc-components/references/slds-blueprints.json +14389 -0
- package/skills/generating-lwc-components/references/slds-design-guide.md +166 -0
- package/skills/generating-lwc-components/references/state-management.md +642 -0
- package/skills/generating-lwc-components/references/template-anti-patterns.md +948 -0
- package/skills/generating-lwc-components/references/triangle-pattern.md +365 -0
- package/skills/generating-lwc-components/scripts/local-dev-preview.sh +34 -0
- package/skills/generating-mermaid-diagrams/CREDITS.md +46 -0
- package/skills/generating-mermaid-diagrams/README.md +114 -0
- package/skills/generating-mermaid-diagrams/SKILL.md +218 -0
- package/skills/generating-mermaid-diagrams/assets/agentforce/agent-flow.md +313 -0
- package/skills/generating-mermaid-diagrams/assets/architecture/system-landscape.md +351 -0
- package/skills/generating-mermaid-diagrams/assets/datamodel/b2b-commerce-erd.md +317 -0
- package/skills/generating-mermaid-diagrams/assets/datamodel/campaigns-erd.md +195 -0
- package/skills/generating-mermaid-diagrams/assets/datamodel/consent-erd.md +262 -0
- package/skills/generating-mermaid-diagrams/assets/datamodel/files-erd.md +266 -0
- package/skills/generating-mermaid-diagrams/assets/datamodel/forecasting-erd.md +261 -0
- package/skills/generating-mermaid-diagrams/assets/datamodel/fsl-erd.md +332 -0
- package/skills/generating-mermaid-diagrams/assets/datamodel/party-model-erd.md +237 -0
- package/skills/generating-mermaid-diagrams/assets/datamodel/quote-order-erd.md +277 -0
- package/skills/generating-mermaid-diagrams/assets/datamodel/revenue-cloud-erd.md +343 -0
- package/skills/generating-mermaid-diagrams/assets/datamodel/sales-cloud-erd.md +192 -0
- package/skills/generating-mermaid-diagrams/assets/datamodel/salesforce-erd.md +209 -0
- package/skills/generating-mermaid-diagrams/assets/datamodel/scheduler-erd.md +276 -0
- package/skills/generating-mermaid-diagrams/assets/datamodel/service-cloud-erd.md +217 -0
- package/skills/generating-mermaid-diagrams/assets/datamodel/territory-management-erd.md +241 -0
- package/skills/generating-mermaid-diagrams/assets/integration/api-sequence.md +387 -0
- package/skills/generating-mermaid-diagrams/assets/oauth/authorization-code-pkce.md +197 -0
- package/skills/generating-mermaid-diagrams/assets/oauth/authorization-code.md +152 -0
- package/skills/generating-mermaid-diagrams/assets/oauth/client-credentials.md +233 -0
- package/skills/generating-mermaid-diagrams/assets/oauth/device-authorization.md +295 -0
- package/skills/generating-mermaid-diagrams/assets/oauth/jwt-bearer.md +256 -0
- package/skills/generating-mermaid-diagrams/assets/oauth/refresh-token.md +281 -0
- package/skills/generating-mermaid-diagrams/assets/oauth/user-agent-social-sign-on.md +281 -0
- package/skills/generating-mermaid-diagrams/assets/role-hierarchy/user-hierarchy.md +322 -0
- package/skills/generating-mermaid-diagrams/references/color-palette.md +464 -0
- package/skills/generating-mermaid-diagrams/references/diagram-conventions.md +313 -0
- package/skills/generating-mermaid-diagrams/references/erd-conventions.md +320 -0
- package/skills/generating-mermaid-diagrams/references/mermaid-reference.md +434 -0
- package/skills/generating-mermaid-diagrams/references/mermaid-styling.md +81 -0
- package/skills/generating-mermaid-diagrams/references/preview-guide.md +49 -0
- package/skills/generating-mermaid-diagrams/references/usage-examples.md +340 -0
- package/skills/generating-mermaid-diagrams/scripts/README.md +160 -0
- package/skills/generating-mermaid-diagrams/scripts/mermaid_preview.py +654 -0
- package/skills/generating-mermaid-diagrams/scripts/query-org-metadata.py +293 -0
- package/skills/generating-visual-diagrams/CREDITS.md +80 -0
- package/skills/generating-visual-diagrams/README.md +83 -0
- package/skills/generating-visual-diagrams/SKILL.md +208 -0
- package/skills/generating-visual-diagrams/assets/architecture/integration-flow.md +55 -0
- package/skills/generating-visual-diagrams/assets/erd/core-objects.md +131 -0
- package/skills/generating-visual-diagrams/assets/erd/custom-objects.md +60 -0
- package/skills/generating-visual-diagrams/assets/lwc/dashboard-card.md +45 -0
- package/skills/generating-visual-diagrams/assets/lwc/data-table.md +57 -0
- package/skills/generating-visual-diagrams/assets/lwc/record-form.md +60 -0
- package/skills/generating-visual-diagrams/assets/review/apex-review.md +57 -0
- package/skills/generating-visual-diagrams/assets/review/lwc-review.md +48 -0
- package/skills/generating-visual-diagrams/references/architect-aesthetic-guide.md +257 -0
- package/skills/generating-visual-diagrams/references/examples-index.md +35 -0
- package/skills/generating-visual-diagrams/references/gemini-cli-setup.md +65 -0
- package/skills/generating-visual-diagrams/references/interview-questions.md +529 -0
- package/skills/generating-visual-diagrams/references/iteration-workflow.md +173 -0
- package/skills/generating-visual-diagrams/scripts/check-prerequisites.sh +101 -0
- package/skills/generating-visual-diagrams/scripts/generate_image.py +243 -0
- package/skills/handling-sf-data/CREDITS.md +5 -0
- package/skills/handling-sf-data/README.md +112 -0
- package/skills/handling-sf-data/SKILL.md +235 -0
- package/skills/handling-sf-data/assets/bulk/bulk-insert-10000.apex +293 -0
- package/skills/handling-sf-data/assets/bulk/bulk-insert-200.apex +208 -0
- package/skills/handling-sf-data/assets/bulk/bulk-insert-500.apex +219 -0
- package/skills/handling-sf-data/assets/bulk/bulk-upsert-external-id.apex +324 -0
- package/skills/handling-sf-data/assets/cleanup/delete-by-created-date.apex +319 -0
- package/skills/handling-sf-data/assets/cleanup/delete-by-name.apex +240 -0
- package/skills/handling-sf-data/assets/cleanup/delete-test-data.apex +311 -0
- package/skills/handling-sf-data/assets/cleanup/rollback-transaction.apex +266 -0
- package/skills/handling-sf-data/assets/csv/account-import.csv +11 -0
- package/skills/handling-sf-data/assets/csv/contact-import.csv +11 -0
- package/skills/handling-sf-data/assets/csv/custom-object-import.csv +11 -0
- package/skills/handling-sf-data/assets/csv/opportunity-import.csv +11 -0
- package/skills/handling-sf-data/assets/factories/account-factory.apex +165 -0
- package/skills/handling-sf-data/assets/factories/case-factory.apex +237 -0
- package/skills/handling-sf-data/assets/factories/contact-factory.apex +168 -0
- package/skills/handling-sf-data/assets/factories/custom-object-factory.apex +260 -0
- package/skills/handling-sf-data/assets/factories/event-factory.apex +275 -0
- package/skills/handling-sf-data/assets/factories/hierarchy-factory.apex +372 -0
- package/skills/handling-sf-data/assets/factories/lead-factory.apex +190 -0
- package/skills/handling-sf-data/assets/factories/opportunity-factory.apex +206 -0
- package/skills/handling-sf-data/assets/factories/task-factory.apex +246 -0
- package/skills/handling-sf-data/assets/factories/user-factory.apex +278 -0
- package/skills/handling-sf-data/assets/json/account-contact-tree.json +130 -0
- package/skills/handling-sf-data/assets/json/account-opportunity-tree.json +110 -0
- package/skills/handling-sf-data/assets/json/full-hierarchy-tree.json +188 -0
- package/skills/handling-sf-data/assets/soql/aggregate.soql +226 -0
- package/skills/handling-sf-data/assets/soql/child-to-parent.soql +162 -0
- package/skills/handling-sf-data/assets/soql/parent-to-child.soql +153 -0
- package/skills/handling-sf-data/assets/soql/polymorphic.soql +198 -0
- package/skills/handling-sf-data/assets/soql/subquery.soql +287 -0
- package/skills/handling-sf-data/references/anonymous-apex-guide.md +98 -0
- package/skills/handling-sf-data/references/bulk-operations-guide.md +94 -0
- package/skills/handling-sf-data/references/bulk-testing-example.md +194 -0
- package/skills/handling-sf-data/references/cleanup-rollback-example.md +322 -0
- package/skills/handling-sf-data/references/cleanup-rollback-guide.md +84 -0
- package/skills/handling-sf-data/references/crud-workflow-example.md +183 -0
- package/skills/handling-sf-data/references/governor-limits-reference.md +74 -0
- package/skills/handling-sf-data/references/orchestration.md +174 -0
- package/skills/handling-sf-data/references/relationship-query-examples.md +249 -0
- package/skills/handling-sf-data/references/sf-cli-data-commands.md +158 -0
- package/skills/handling-sf-data/references/soql-relationship-guide.md +84 -0
- package/skills/handling-sf-data/references/test-data-best-practices.md +104 -0
- package/skills/handling-sf-data/references/test-data-factory-usage.md +290 -0
- package/skills/handling-sf-data/references/test-data-patterns.md +98 -0
- package/skills/handling-sf-data/scripts/soql_validator.py +292 -0
- package/skills/handling-sf-data/scripts/validate_data_operation.py +379 -0
- package/skills/harmonizing-datacloud/CREDITS.md +3 -0
- package/skills/harmonizing-datacloud/README.md +31 -0
- package/skills/harmonizing-datacloud/SKILL.md +117 -0
- package/skills/modeling-omnistudio-epc-catalog/CREDITS.md +14 -0
- package/skills/modeling-omnistudio-epc-catalog/README.md +89 -0
- package/skills/modeling-omnistudio-epc-catalog/SKILL.md +395 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/attribute-assignment-template.json +402 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/compiled-attribute-overrides-template.json +43 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/completion-block-template.txt +8 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/decomposition-relationships-template.json +233 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_AttributeAssignments.json +514 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_CompiledAttributeOverrides.json +21 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_DataPack.json +649 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_DecompositionRelationships.json +200 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_ObjectFieldAttributes.json +138 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_OrchestrationScenarios.json +54 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_OverrideDefinitions.json +266 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_ParentKeys.json +23 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_PriceListEntries.json +54 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_PricebookEntries.json +35 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_ProductChildItems.json +34 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_RuleAssignments.json +21 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_AttributeAssignments.json +410 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_DataPack.json +535 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_DecompositionRelationships.json +35 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_ObjectFieldAttributes.json +138 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_OrchestrationScenarios.json +28 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_ParentKeys.json +23 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_PriceListEntries.json +220 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_PricebookEntries.json +35 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_ProductChildItems.json +414 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_AttributeAssignments.json +382 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_DataPack.json +565 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_DecompositionRelationships.json +35 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_ObjectFieldAttributes.json +104 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_OrchestrationScenarios.json +28 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_ParentKeys.json +13 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_PriceListEntries.json +106 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_PricebookEntries.json +35 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_ProductChildItems.json +72 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_AttributeAssignments.json +142 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_DataPack.json +377 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_DecompositionRelationships.json +35 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_ObjectFieldAttributes.json +36 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_ParentKeys.json +8 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_PriceListEntries.json +54 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_PricebookEntries.json +35 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_ProductChildItems.json +34 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/object-field-attributes-template.json +138 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/orchestration-scenarios-template.json +54 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/override-definitions-template.json +134 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/parent-keys-template.json +29 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/price-list-entries-template.json +158 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/pricebook-entries-template.json +35 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/product-child-item-template.json +338 -0
- package/skills/modeling-omnistudio-epc-catalog/assets/product2-offer-template.json +527 -0
- package/skills/modeling-omnistudio-epc-catalog/examples/.gitkeep +1 -0
- package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_AttributeAssignments.json +95 -0
- package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_CompiledAttributeOverrides.json +1 -0
- package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_DataPack.json +214 -0
- package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_DecompositionRelationships.json +28 -0
- package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_ObjectFieldAttributes.json +98 -0
- package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_OrchestrationScenarios.json +22 -0
- package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_OverrideDefinitions.json +1 -0
- package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_ParentKeys.json +13 -0
- package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_PriceListEntries.json +35 -0
- package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_PricebookEntries.json +28 -0
- package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_ProductChildItems.json +110 -0
- package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/TRANSCRIPT.md +58 -0
- package/skills/modeling-omnistudio-epc-catalog/references/epc-field-guide.md +90 -0
- package/skills/modeling-omnistudio-epc-catalog/references/naming-conventions.md +80 -0
- package/skills/modeling-omnistudio-epc-catalog/references/scoring-model.md +57 -0
- package/skills/modeling-omnistudio-epc-catalog/scripts/cli-validation-commands.sh +19 -0
- package/skills/modeling-omnistudio-epc-catalog/scripts/sample-invocations.sh +18 -0
- package/skills/orchestrating-datacloud/CREDITS.md +15 -0
- package/skills/orchestrating-datacloud/README.md +129 -0
- package/skills/orchestrating-datacloud/SKILL.md +236 -0
- package/skills/orchestrating-datacloud/UPSTREAM.md +45 -0
- package/skills/orchestrating-datacloud/assets/definitions/activation-target.template.json +5 -0
- package/skills/orchestrating-datacloud/assets/definitions/activation.template.json +7 -0
- package/skills/orchestrating-datacloud/assets/definitions/calculated-insight.template.json +7 -0
- package/skills/orchestrating-datacloud/assets/definitions/data-action-target.template.json +5 -0
- package/skills/orchestrating-datacloud/assets/definitions/data-action.template.json +5 -0
- package/skills/orchestrating-datacloud/assets/definitions/data-graph.template.json +21 -0
- package/skills/orchestrating-datacloud/assets/definitions/data-stream.template.json +55 -0
- package/skills/orchestrating-datacloud/assets/definitions/dmo.template.json +17 -0
- package/skills/orchestrating-datacloud/assets/definitions/identity-resolution.template.json +30 -0
- package/skills/orchestrating-datacloud/assets/definitions/mapping.template.json +14 -0
- package/skills/orchestrating-datacloud/assets/definitions/relationship.template.json +12 -0
- package/skills/orchestrating-datacloud/assets/definitions/search-index.template.json +9 -0
- package/skills/orchestrating-datacloud/assets/definitions/segment.template.json +16 -0
- package/skills/orchestrating-datacloud/references/feature-readiness.md +157 -0
- package/skills/orchestrating-datacloud/references/plugin-setup.md +140 -0
- package/skills/orchestrating-datacloud/scripts/bootstrap-plugin.sh +53 -0
- package/skills/orchestrating-datacloud/scripts/diagnose-org.mjs +511 -0
- package/skills/orchestrating-datacloud/scripts/generate-manifest.mjs +68 -0
- package/skills/orchestrating-datacloud/scripts/verify-plugin.sh +58 -0
- package/skills/preparing-datacloud/CREDITS.md +7 -0
- package/skills/preparing-datacloud/README.md +51 -0
- package/skills/preparing-datacloud/SKILL.md +191 -0
- package/skills/preparing-datacloud/examples/ingestion-api/.env.example +8 -0
- package/skills/preparing-datacloud/examples/ingestion-api/README.md +48 -0
- package/skills/preparing-datacloud/examples/ingestion-api/send-data.py +144 -0
- package/skills/querying-soql/CREDITS.md +21 -0
- package/skills/querying-soql/README.md +41 -0
- package/skills/querying-soql/SKILL.md +143 -0
- package/skills/querying-soql/assets/aggregate-queries.soql +242 -0
- package/skills/querying-soql/assets/basic-queries.soql +188 -0
- package/skills/querying-soql/assets/bulkified-query-pattern.cls +280 -0
- package/skills/querying-soql/assets/optimization-patterns.soql +259 -0
- package/skills/querying-soql/assets/relationship-queries.soql +203 -0
- package/skills/querying-soql/assets/selector-class.cls +219 -0
- package/skills/querying-soql/references/anti-patterns.md +348 -0
- package/skills/querying-soql/references/cli-commands.md +358 -0
- package/skills/querying-soql/references/field-coverage-rules.md +514 -0
- package/skills/querying-soql/references/query-optimization.md +142 -0
- package/skills/querying-soql/references/selector-patterns.md +479 -0
- package/skills/querying-soql/references/soql-reference.md +227 -0
- package/skills/querying-soql/references/soql-syntax-reference.md +208 -0
- package/skills/querying-soql/scripts/post-tool-validate.py +322 -0
- package/skills/retrieving-datacloud/CREDITS.md +7 -0
- package/skills/retrieving-datacloud/README.md +44 -0
- package/skills/retrieving-datacloud/SKILL.md +120 -0
- package/skills/retrieving-datacloud/examples/search-indexes/hybrid-structured.json +44 -0
- package/skills/retrieving-datacloud/examples/search-indexes/vector-knowledge.json +43 -0
- package/skills/running-apex-tests/CREDITS.md +22 -0
- package/skills/running-apex-tests/README.md +94 -0
- package/skills/running-apex-tests/SKILL.md +158 -0
- package/skills/running-apex-tests/assets/basic-test.cls +169 -0
- package/skills/running-apex-tests/assets/bulk-test.cls +255 -0
- package/skills/running-apex-tests/assets/dml-mock.cls +339 -0
- package/skills/running-apex-tests/assets/mock-callout-test.cls +353 -0
- package/skills/running-apex-tests/assets/stub-provider-example.cls +364 -0
- package/skills/running-apex-tests/assets/test-data-factory.cls +328 -0
- package/skills/running-apex-tests/hooks/scripts/parse-test-results.py +364 -0
- package/skills/running-apex-tests/references/cli-commands.md +289 -0
- package/skills/running-apex-tests/references/mocking-patterns.md +500 -0
- package/skills/running-apex-tests/references/performance-optimization.md +283 -0
- package/skills/running-apex-tests/references/test-fix-loop.md +49 -0
- package/skills/running-apex-tests/references/test-patterns.md +154 -0
- package/skills/running-apex-tests/references/testing-best-practices.md +509 -0
- package/skills/segmenting-datacloud/CREDITS.md +3 -0
- package/skills/segmenting-datacloud/README.md +36 -0
- package/skills/segmenting-datacloud/SKILL.md +115 -0
|
@@ -0,0 +1,545 @@
|
|
|
1
|
+
<!-- Parent: generating-lwc-components/SKILL.md -->
|
|
2
|
+
# Salesforce CLI Commands for LWC Development
|
|
3
|
+
|
|
4
|
+
## Quick Reference
|
|
5
|
+
|
|
6
|
+
| Task | Command |
|
|
7
|
+
|------|---------|
|
|
8
|
+
| Create component | `sf template generate lightning component --name myComp --type lwc` |
|
|
9
|
+
| Create FlexiPage | `sf template generate flexipage --name MyPage --template DefaultAppPage` |
|
|
10
|
+
| Run all tests | `sf force lightning lwc test run` |
|
|
11
|
+
| Preview a component locally | `sf lightning dev component --target-org my-sandbox` |
|
|
12
|
+
| Preview an app locally | `sf lightning dev app --target-org my-sandbox` |
|
|
13
|
+
| Preview an Experience Cloud site locally | `sf lightning dev site --target-org my-sandbox` |
|
|
14
|
+
| Deploy component | `sf project deploy start --source-dir force-app/.../lwc/myComp` |
|
|
15
|
+
| Create message channel | Manual XML: `force-app/.../messageChannels/MyChannel.messageChannel-meta.xml` |
|
|
16
|
+
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
## Component Generation
|
|
20
|
+
|
|
21
|
+
### Create New LWC
|
|
22
|
+
|
|
23
|
+
```bash
|
|
24
|
+
# Basic component
|
|
25
|
+
sf template generate lightning component \
|
|
26
|
+
--name accountList \
|
|
27
|
+
--type lwc \
|
|
28
|
+
--output-dir force-app/main/default/lwc
|
|
29
|
+
|
|
30
|
+
# Creates:
|
|
31
|
+
# force-app/main/default/lwc/accountList/
|
|
32
|
+
# ├── accountList.js
|
|
33
|
+
# ├── accountList.html
|
|
34
|
+
# └── accountList.js-meta.xml
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
### Generate with Jest Test
|
|
38
|
+
|
|
39
|
+
```bash
|
|
40
|
+
# The test file must be created manually in __tests__ folder
|
|
41
|
+
mkdir -p force-app/main/default/lwc/accountList/__tests__
|
|
42
|
+
touch force-app/main/default/lwc/accountList/__tests__/accountList.test.js
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
---
|
|
46
|
+
|
|
47
|
+
## Testing
|
|
48
|
+
|
|
49
|
+
### Run All Jest Tests
|
|
50
|
+
|
|
51
|
+
```bash
|
|
52
|
+
sf force lightning lwc test run
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
### Run Specific Test File
|
|
56
|
+
|
|
57
|
+
```bash
|
|
58
|
+
sf force lightning lwc test run \
|
|
59
|
+
--spec force-app/main/default/lwc/accountList/__tests__/accountList.test.js
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
### Watch Mode (Development)
|
|
63
|
+
|
|
64
|
+
```bash
|
|
65
|
+
# Re-runs tests when files change
|
|
66
|
+
sf force lightning lwc test run --watch
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
### Coverage Report
|
|
70
|
+
|
|
71
|
+
```bash
|
|
72
|
+
# Generate HTML coverage report
|
|
73
|
+
sf force lightning lwc test run --coverage
|
|
74
|
+
# Report at: coverage/lcov-report/index.html
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
### Debug Tests
|
|
78
|
+
|
|
79
|
+
```bash
|
|
80
|
+
# Run with Node debugger
|
|
81
|
+
sf force lightning lwc test run --debug
|
|
82
|
+
|
|
83
|
+
# Then in Chrome: chrome://inspect
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
### Update Snapshots
|
|
87
|
+
|
|
88
|
+
```bash
|
|
89
|
+
sf force lightning lwc test run --update-snapshot
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
---
|
|
93
|
+
|
|
94
|
+
## Linting
|
|
95
|
+
|
|
96
|
+
### Run ESLint
|
|
97
|
+
|
|
98
|
+
> **Note**: `sf lightning lint` does not exist. Use `npx eslint` directly or `sf code-analyzer run`.
|
|
99
|
+
|
|
100
|
+
```bash
|
|
101
|
+
# Lint LWC files with ESLint (requires @salesforce/eslint-config-lwc)
|
|
102
|
+
npx eslint force-app/main/default/lwc
|
|
103
|
+
|
|
104
|
+
# Lint specific component
|
|
105
|
+
npx eslint force-app/main/default/lwc/accountList
|
|
106
|
+
|
|
107
|
+
# Auto-fix issues
|
|
108
|
+
npx eslint force-app/main/default/lwc --fix
|
|
109
|
+
|
|
110
|
+
# Or use Code Analyzer (includes ESLint + PMD + RetireJS)
|
|
111
|
+
sf code-analyzer run --workspace force-app/main/default/lwc
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
---
|
|
115
|
+
|
|
116
|
+
## Deployment
|
|
117
|
+
|
|
118
|
+
### Deploy Single Component
|
|
119
|
+
|
|
120
|
+
```bash
|
|
121
|
+
sf project deploy start \
|
|
122
|
+
--source-dir force-app/main/default/lwc/accountList \
|
|
123
|
+
--target-org my-sandbox
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
### Deploy Multiple Components
|
|
127
|
+
|
|
128
|
+
```bash
|
|
129
|
+
sf project deploy start \
|
|
130
|
+
--source-dir force-app/main/default/lwc/accountList \
|
|
131
|
+
--source-dir force-app/main/default/lwc/accountForm \
|
|
132
|
+
--target-org my-sandbox
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
### Deploy with Related Apex
|
|
136
|
+
|
|
137
|
+
```bash
|
|
138
|
+
sf project deploy start \
|
|
139
|
+
--source-dir force-app/main/default/lwc/accountList \
|
|
140
|
+
--source-dir force-app/main/default/classes/AccountController.cls \
|
|
141
|
+
--target-org my-sandbox
|
|
142
|
+
```
|
|
143
|
+
|
|
144
|
+
### Validate Without Deploying
|
|
145
|
+
|
|
146
|
+
```bash
|
|
147
|
+
sf project deploy start \
|
|
148
|
+
--source-dir force-app/main/default/lwc \
|
|
149
|
+
--target-org my-sandbox \
|
|
150
|
+
--dry-run
|
|
151
|
+
```
|
|
152
|
+
|
|
153
|
+
---
|
|
154
|
+
|
|
155
|
+
## Retrieval
|
|
156
|
+
|
|
157
|
+
### Retrieve Component from Org
|
|
158
|
+
|
|
159
|
+
```bash
|
|
160
|
+
sf project retrieve start \
|
|
161
|
+
--metadata LightningComponentBundle:accountList \
|
|
162
|
+
--target-org my-sandbox \
|
|
163
|
+
--output-dir force-app/main/default
|
|
164
|
+
```
|
|
165
|
+
|
|
166
|
+
### Retrieve All LWC
|
|
167
|
+
|
|
168
|
+
```bash
|
|
169
|
+
sf project retrieve start \
|
|
170
|
+
--metadata LightningComponentBundle \
|
|
171
|
+
--target-org my-sandbox
|
|
172
|
+
```
|
|
173
|
+
|
|
174
|
+
---
|
|
175
|
+
|
|
176
|
+
## Local Development
|
|
177
|
+
|
|
178
|
+
### Preview Components Locally
|
|
179
|
+
|
|
180
|
+
> **Note**: `sf lightning dev-server` was deprecated. In current SF CLI releases, Local Dev commands are installed just-in-time on first use via the Local Dev plugin.
|
|
181
|
+
|
|
182
|
+
```bash
|
|
183
|
+
# Preview an LWC component in isolation
|
|
184
|
+
sf lightning dev component --name myComp --target-org my-sandbox
|
|
185
|
+
|
|
186
|
+
# Launch component preview and choose the component interactively
|
|
187
|
+
sf lightning dev component --target-org my-sandbox
|
|
188
|
+
|
|
189
|
+
# Preview a Lightning Experience app locally
|
|
190
|
+
sf lightning dev app --target-org my-sandbox
|
|
191
|
+
|
|
192
|
+
# Preview an Experience Cloud site locally
|
|
193
|
+
sf lightning dev site --name "Partner Central" --target-org my-sandbox
|
|
194
|
+
```
|
|
195
|
+
|
|
196
|
+
These commands start long-running local preview sessions with hot reload. Use `sf project deploy start` for changes that Local Dev can't reflect automatically.
|
|
197
|
+
|
|
198
|
+
---
|
|
199
|
+
|
|
200
|
+
## Message Channels
|
|
201
|
+
|
|
202
|
+
### Create Message Channel
|
|
203
|
+
|
|
204
|
+
> **Note**: There is no `sf lightning generate messageChannel` command. Message Channels are created as metadata XML files manually.
|
|
205
|
+
|
|
206
|
+
```bash
|
|
207
|
+
# Create the directory if it doesn't exist
|
|
208
|
+
mkdir -p force-app/main/default/messageChannels
|
|
209
|
+
|
|
210
|
+
# Create the XML file manually:
|
|
211
|
+
# force-app/main/default/messageChannels/RecordSelected.messageChannel-meta.xml
|
|
212
|
+
```
|
|
213
|
+
|
|
214
|
+
### Deploy Message Channel
|
|
215
|
+
|
|
216
|
+
```bash
|
|
217
|
+
sf project deploy start \
|
|
218
|
+
--metadata LightningMessageChannel:RecordSelected__c \
|
|
219
|
+
--target-org my-sandbox
|
|
220
|
+
```
|
|
221
|
+
|
|
222
|
+
---
|
|
223
|
+
|
|
224
|
+
## Debugging
|
|
225
|
+
|
|
226
|
+
### Open Component in Browser
|
|
227
|
+
|
|
228
|
+
```bash
|
|
229
|
+
# Open Lightning App Builder
|
|
230
|
+
sf org open --target-org my-sandbox --path /lightning/setup/FlexiPageList/home
|
|
231
|
+
```
|
|
232
|
+
|
|
233
|
+
### View Debug Logs
|
|
234
|
+
|
|
235
|
+
```bash
|
|
236
|
+
# Tail logs while testing
|
|
237
|
+
sf apex tail log --target-org my-sandbox --color
|
|
238
|
+
```
|
|
239
|
+
|
|
240
|
+
### Check Deployment Errors
|
|
241
|
+
|
|
242
|
+
```bash
|
|
243
|
+
# If deployment fails, check status
|
|
244
|
+
sf project deploy report --job-id <job-id>
|
|
245
|
+
```
|
|
246
|
+
|
|
247
|
+
---
|
|
248
|
+
|
|
249
|
+
## Package Development
|
|
250
|
+
|
|
251
|
+
### Create Unlocked Package
|
|
252
|
+
|
|
253
|
+
```bash
|
|
254
|
+
# Create package
|
|
255
|
+
sf package create \
|
|
256
|
+
--name "My LWC Package" \
|
|
257
|
+
--package-type Unlocked \
|
|
258
|
+
--path force-app
|
|
259
|
+
|
|
260
|
+
# Create version
|
|
261
|
+
sf package version create \
|
|
262
|
+
--package "My LWC Package" \
|
|
263
|
+
--installation-key test1234 \
|
|
264
|
+
--wait 10
|
|
265
|
+
```
|
|
266
|
+
|
|
267
|
+
---
|
|
268
|
+
|
|
269
|
+
## Jest Configuration
|
|
270
|
+
|
|
271
|
+
### Setup Jest (if not already configured)
|
|
272
|
+
|
|
273
|
+
```bash
|
|
274
|
+
# Install Jest dependencies
|
|
275
|
+
npm install @salesforce/sfdx-lwc-jest --save-dev
|
|
276
|
+
|
|
277
|
+
# Add to package.json scripts
|
|
278
|
+
{
|
|
279
|
+
"scripts": {
|
|
280
|
+
"test:unit": "sfdx-lwc-jest",
|
|
281
|
+
"test:unit:watch": "sfdx-lwc-jest --watch",
|
|
282
|
+
"test:unit:debug": "sfdx-lwc-jest --debug",
|
|
283
|
+
"test:unit:coverage": "sfdx-lwc-jest --coverage"
|
|
284
|
+
}
|
|
285
|
+
}
|
|
286
|
+
```
|
|
287
|
+
|
|
288
|
+
### Jest Config (jest.config.js)
|
|
289
|
+
|
|
290
|
+
```javascript
|
|
291
|
+
const { jestConfig } = require('@salesforce/sfdx-lwc-jest/config');
|
|
292
|
+
|
|
293
|
+
module.exports = {
|
|
294
|
+
...jestConfig,
|
|
295
|
+
roots: ['<rootDir>/force-app'],
|
|
296
|
+
modulePathIgnorePatterns: ['<rootDir>/.localdevserver'],
|
|
297
|
+
testPathIgnorePatterns: [
|
|
298
|
+
'<rootDir>/node_modules/',
|
|
299
|
+
'<rootDir>/.sfdx/',
|
|
300
|
+
'<rootDir>/.agents/',
|
|
301
|
+
'<rootDir>/.cursor/',
|
|
302
|
+
'<rootDir>/.claude/',
|
|
303
|
+
'<rootDir>/.pi/'
|
|
304
|
+
],
|
|
305
|
+
testTimeout: 10000
|
|
306
|
+
};
|
|
307
|
+
```
|
|
308
|
+
|
|
309
|
+
If you copy example tests from `generating-lwc-components/assets/`, rename the `.example` file after placing it in your component's `__tests__` folder.
|
|
310
|
+
|
|
311
|
+
---
|
|
312
|
+
|
|
313
|
+
## Useful Patterns
|
|
314
|
+
|
|
315
|
+
### Deploy and Test Flow
|
|
316
|
+
|
|
317
|
+
```bash
|
|
318
|
+
# 1. Run local tests
|
|
319
|
+
sf force lightning lwc test run
|
|
320
|
+
|
|
321
|
+
# 2. Deploy to sandbox
|
|
322
|
+
sf project deploy start \
|
|
323
|
+
--source-dir force-app/main/default/lwc/myComponent \
|
|
324
|
+
--target-org my-sandbox
|
|
325
|
+
|
|
326
|
+
# 3. Open org to test
|
|
327
|
+
sf org open --target-org my-sandbox
|
|
328
|
+
```
|
|
329
|
+
|
|
330
|
+
### CI/CD Pipeline Pattern
|
|
331
|
+
|
|
332
|
+
```bash
|
|
333
|
+
#!/bin/bash
|
|
334
|
+
|
|
335
|
+
# Lint
|
|
336
|
+
npx eslint ./force-app/main/default/lwc || exit 1
|
|
337
|
+
|
|
338
|
+
# Test
|
|
339
|
+
sf force lightning lwc test run --coverage || exit 1
|
|
340
|
+
|
|
341
|
+
# Validate deployment
|
|
342
|
+
sf project deploy start \
|
|
343
|
+
--source-dir force-app/main/default/lwc \
|
|
344
|
+
--target-org ci-sandbox \
|
|
345
|
+
--dry-run \
|
|
346
|
+
--json || exit 1
|
|
347
|
+
|
|
348
|
+
# Deploy if validation passes
|
|
349
|
+
sf project deploy start \
|
|
350
|
+
--source-dir force-app/main/default/lwc \
|
|
351
|
+
--target-org ci-sandbox \
|
|
352
|
+
--json
|
|
353
|
+
```
|
|
354
|
+
|
|
355
|
+
### Watch and Auto-Deploy
|
|
356
|
+
|
|
357
|
+
```bash
|
|
358
|
+
# Using nodemon or similar
|
|
359
|
+
npx nodemon \
|
|
360
|
+
--watch "force-app/main/default/lwc/**/*" \
|
|
361
|
+
--exec "sf project deploy start --source-dir force-app/main/default/lwc --target-org my-sandbox"
|
|
362
|
+
```
|
|
363
|
+
|
|
364
|
+
---
|
|
365
|
+
|
|
366
|
+
## Troubleshooting
|
|
367
|
+
|
|
368
|
+
### Component Not Visible in App Builder
|
|
369
|
+
|
|
370
|
+
1. Check `isExposed` is `true` in meta.xml
|
|
371
|
+
2. Check `targets` include the desired location
|
|
372
|
+
3. Verify deployment was successful
|
|
373
|
+
|
|
374
|
+
```bash
|
|
375
|
+
# Re-deploy with verbose output
|
|
376
|
+
sf project deploy start \
|
|
377
|
+
--source-dir force-app/main/default/lwc/myComponent \
|
|
378
|
+
--target-org my-sandbox \
|
|
379
|
+
--verbose
|
|
380
|
+
```
|
|
381
|
+
|
|
382
|
+
### Jest Tests Not Finding Component
|
|
383
|
+
|
|
384
|
+
If Jest reports errors from `.agents/`, `.cursor/`, `.claude/`, or `.pi/`, it is discovering files outside your real Salesforce source tree. Scope Jest to `force-app` and ignore agent folders.
|
|
385
|
+
|
|
386
|
+
```bash
|
|
387
|
+
# Clear Jest cache
|
|
388
|
+
npx jest --clearCache
|
|
389
|
+
|
|
390
|
+
# Re-run tests
|
|
391
|
+
sf force lightning lwc test run
|
|
392
|
+
```
|
|
393
|
+
|
|
394
|
+
### Wire Service Not Working
|
|
395
|
+
|
|
396
|
+
1. Verify `cacheable=true` on Apex method
|
|
397
|
+
2. Check reactive parameter has `$` prefix
|
|
398
|
+
3. Verify Apex method is accessible
|
|
399
|
+
|
|
400
|
+
```bash
|
|
401
|
+
# Test Apex method directly
|
|
402
|
+
sf apex run --target-org my-sandbox <<< "System.debug(MyController.getRecords());"
|
|
403
|
+
```
|
|
404
|
+
|
|
405
|
+
### Deployment Conflicts
|
|
406
|
+
|
|
407
|
+
```bash
|
|
408
|
+
# Check what's different
|
|
409
|
+
sf project retrieve start \
|
|
410
|
+
--metadata LightningComponentBundle:myComponent \
|
|
411
|
+
--target-org my-sandbox \
|
|
412
|
+
--output-dir temp-retrieve
|
|
413
|
+
|
|
414
|
+
# Compare and resolve
|
|
415
|
+
diff -r force-app/main/default/lwc/myComponent temp-retrieve/force-app/.../myComponent
|
|
416
|
+
```
|
|
417
|
+
|
|
418
|
+
---
|
|
419
|
+
|
|
420
|
+
## Static Analysis (Code Analyzer v5)
|
|
421
|
+
|
|
422
|
+
### Salesforce Code Analyzer
|
|
423
|
+
|
|
424
|
+
Code Analyzer v5 (`@salesforce/plugin-code-analyzer`) validates LWC files for SLDS 2 compliance, accessibility, and security.
|
|
425
|
+
|
|
426
|
+
```bash
|
|
427
|
+
# Install Code Analyzer v5 plugin
|
|
428
|
+
sf plugins install @salesforce/plugin-code-analyzer
|
|
429
|
+
|
|
430
|
+
# Run scan on LWC components
|
|
431
|
+
sf code-analyzer run \
|
|
432
|
+
--workspace force-app/main/default/lwc \
|
|
433
|
+
--output-file lwc-scan-results.html
|
|
434
|
+
|
|
435
|
+
# Run with specific rules
|
|
436
|
+
sf code-analyzer run \
|
|
437
|
+
--workspace force-app/main/default/lwc \
|
|
438
|
+
--rule-selector "Category:Best Practices,Security"
|
|
439
|
+
```
|
|
440
|
+
|
|
441
|
+
> **Migration from sfdx-scanner**: v5 uses `--workspace` instead of `--target`, `--output-file` instead of `--outfile` (format inferred from extension), `--view` for table/detail display, and `--rule-selector` instead of `--engine`/`--category`.
|
|
442
|
+
|
|
443
|
+
### SLDS 2 Compliance Checks
|
|
444
|
+
|
|
445
|
+
```bash
|
|
446
|
+
# Check for hardcoded colors (breaks dark mode)
|
|
447
|
+
rg -n '#[0-9A-Fa-f]{3,8}' force-app/main/default/lwc/**/*.css
|
|
448
|
+
|
|
449
|
+
# Find deprecated SLDS 1 tokens
|
|
450
|
+
rg -n '\-\-lwc\-' force-app/main/default/lwc/**/*.css
|
|
451
|
+
|
|
452
|
+
# Find missing alternative-text on icons
|
|
453
|
+
rg -n '<lightning-icon' force-app/main/default/lwc/**/*.html | \
|
|
454
|
+
rg -v 'alternative-text'
|
|
455
|
+
|
|
456
|
+
# Check for !important overrides
|
|
457
|
+
rg -n '!important' force-app/main/default/lwc/**/*.css
|
|
458
|
+
```
|
|
459
|
+
|
|
460
|
+
### Dark Mode Validation
|
|
461
|
+
|
|
462
|
+
```bash
|
|
463
|
+
# Find all hardcoded colors that may break dark mode
|
|
464
|
+
rg -n 'rgb\(|rgba\(|#[0-9A-Fa-f]{3,8}' \
|
|
465
|
+
force-app/main/default/lwc/**/*.css \
|
|
466
|
+
--glob '!**/node_modules/**'
|
|
467
|
+
|
|
468
|
+
# Verify CSS variables usage (SLDS 2 global hooks)
|
|
469
|
+
rg -n '\-\-slds-g-color' force-app/main/default/lwc/**/*.css
|
|
470
|
+
```
|
|
471
|
+
|
|
472
|
+
---
|
|
473
|
+
|
|
474
|
+
## GraphQL Debugging
|
|
475
|
+
|
|
476
|
+
### GraphQL Wire Service
|
|
477
|
+
|
|
478
|
+
```bash
|
|
479
|
+
# View GraphQL queries in debug mode (enable in Setup → Debug Logs)
|
|
480
|
+
sf apex tail log --target-org my-sandbox --color
|
|
481
|
+
# Note: Debug levels are configured via TraceFlag records in Setup, not CLI flags
|
|
482
|
+
|
|
483
|
+
# Test GraphQL query via Anonymous Apex (for syntax validation)
|
|
484
|
+
sf apex run --target-org my-sandbox <<'EOF'
|
|
485
|
+
// GraphQL syntax can't be tested directly in Apex
|
|
486
|
+
// But you can verify field access:
|
|
487
|
+
System.debug([SELECT Id, Name FROM Account LIMIT 1]);
|
|
488
|
+
EOF
|
|
489
|
+
```
|
|
490
|
+
|
|
491
|
+
### GraphQL Troubleshooting
|
|
492
|
+
|
|
493
|
+
| Issue | Possible Cause | Solution |
|
|
494
|
+
|-------|---------------|----------|
|
|
495
|
+
| "Field not found" | FLS restriction | Check user has read access |
|
|
496
|
+
| "Object not supported" | GraphQL scope | Not all objects support GraphQL |
|
|
497
|
+
| Cursor pagination fails | Invalid cursor | Use exact cursor from `pageInfo.endCursor` |
|
|
498
|
+
| Null data | Query error | Check `errors` array in wire result |
|
|
499
|
+
|
|
500
|
+
### Monitor GraphQL Performance
|
|
501
|
+
|
|
502
|
+
```bash
|
|
503
|
+
# Open Developer Console for network inspection
|
|
504
|
+
sf org open --target-org my-sandbox \
|
|
505
|
+
--path /lightning/setup/ApexDebugLogDetail/home
|
|
506
|
+
|
|
507
|
+
# View Event Monitoring logs (if enabled)
|
|
508
|
+
sf data query \
|
|
509
|
+
--query "SELECT EventType, LogDate FROM EventLogFile WHERE EventType='LightningPageView' ORDER BY LogDate DESC LIMIT 5" \
|
|
510
|
+
--target-org my-sandbox
|
|
511
|
+
```
|
|
512
|
+
|
|
513
|
+
---
|
|
514
|
+
|
|
515
|
+
## Workspace API (Console Apps)
|
|
516
|
+
|
|
517
|
+
### Console Detection
|
|
518
|
+
|
|
519
|
+
```bash
|
|
520
|
+
# Check if an app is a Console app
|
|
521
|
+
sf data query \
|
|
522
|
+
--query "SELECT DeveloperName, NavType FROM AppDefinition WHERE NavType='Console'" \
|
|
523
|
+
--target-org my-sandbox
|
|
524
|
+
|
|
525
|
+
# List all Lightning Apps
|
|
526
|
+
sf data query \
|
|
527
|
+
--query "SELECT DeveloperName, NavType, Label FROM AppDefinition ORDER BY Label" \
|
|
528
|
+
--target-org my-sandbox
|
|
529
|
+
```
|
|
530
|
+
|
|
531
|
+
### Console App Testing
|
|
532
|
+
|
|
533
|
+
```bash
|
|
534
|
+
# Open Service Console
|
|
535
|
+
sf org open --target-org my-sandbox \
|
|
536
|
+
--path /lightning/app/standard__ServiceConsole
|
|
537
|
+
|
|
538
|
+
# Open Sales Console
|
|
539
|
+
sf org open --target-org my-sandbox \
|
|
540
|
+
--path /lightning/app/standard__SalesConsole
|
|
541
|
+
|
|
542
|
+
# Open custom console app
|
|
543
|
+
sf org open --target-org my-sandbox \
|
|
544
|
+
--path /lightning/app/c__MyConsoleApp
|
|
545
|
+
```
|