Giter Site home page Giter Site logo

trailheadapps / automation-components Goto Github PK

View Code? Open in Web Editor NEW
342.0 25.0 78.0 3.23 MB

Automation Components are a collection of reusable and production-ready extensions that include invocable actions, flow screen components and local actions.

Home Page: https://developer.salesforce.com

License: Creative Commons Zero v1.0 Universal

JavaScript 16.33% Shell 0.20% Apex 78.76% HTML 4.42% CSS 0.07% Batchfile 0.21%
flow action salesforce apex

automation-components's Introduction

Automation Components

CI Workflow Packaging Workflow codecov

Automation Components provides a set of reusable and production-ready extensions that include invocable actions, flow screen components and local actions. These are intended as an easy to install, easy to use toolbox. Read more in this blog post.

Trailhead Badge Learn more about this app by completing the Quick Start: Explore the Automation Components Sample App Trailhead project.


This is an Open Source project. A special thanks to the project contributors.

Check out the community site unofficialsf.com for more Automation developer resources.

Table of contents

Installing the components using Managed Packages

Follow this set of instructions if you want to deploy the components to your production org or to a development environment that's more permanent than a Scratch org. You can use a non source-tracked orgs such as a free Developer Edition Org, a Trailhead Playground or a production org.

  1. Log in to your org

  2. Click links from the table to install the managed packages in your org.

    Disclaimer: these packages haven't gone through security review yet but that is our plan for the future.

Package Name Install Link Documentation Link
Apex Formula Evaluator Install Documentation
Collections Install Documentation
Data Install Documentation
Flows Install Documentation
Messaging Install Documentation
Security Install Documentation
Strings Install Documentation
UI Install Documentation
Utilities Install Documentation

Installing the components using a Scratch Org

  1. Set up your environment. Follow the steps in the Quick Start: Lightning Web Components Trailhead project. The steps include:

    • Enable Dev Hub in your Trailhead Playground
    • Install Salesforce CLI
    • Install Visual Studio Code
    • Install the Visual Studio Code Salesforce extensions, including the Lightning Web Components extension
  2. If you haven't already done so, authorize your hub org and provide it with an alias (myhuborg in the command below):

    sf org login web -d -a myhuborg
    
  3. Clone this repository:

    git clone https://github.com/trailheadapps/automation-components
    cd automation-components
    
  4. Create a scratch org and provide it with an alias (automation in the command below):

    sf org create scratch -d -f config/project-scratch-def.json -c -a automation
    
  5. Push the app to your scratch org:

    sf project deploy start
    
  6. Open the scratch org:

    sf org open
    

Installing the components using a Developer Edition Org or a Trailhead Playground

Follow this set of instructions if you want to deploy the app to a more permanent environment than a Scratch org. This includes non source-tracked orgs such as a free Developer Edition Org or a Trailhead Playground.

  1. Clone this repository:

    git clone https://github.com/trailheadapps/automation-components
    cd automation-components
    
  2. Authorize your Trailhead Playground or Developer org and provide it with an alias (mydevorg in the command below):

    sf org login web -s -a mydevorg
    
  3. Run this command in a terminal to deploy the app.

    sf project deploy start -d src-collections,src-data,src-flows,src-messaging,src-security,src-strings,src-ui,src-utilities
    
  4. If your org isn't already open, open it now:

    sf org open -o mydevorg
    

Optional Installation Instructions

This repository contains several files that are relevant if you want to integrate modern web development tooling to your Salesforce development processes, or to your continuous integration/continuous deployment processes.

Code formatting

Prettier is a code formatter used to ensure consistent formatting across your code base. To use Prettier with Visual Studio Code, install this extension from the Visual Studio Code Marketplace. The .prettierignore and .prettierrc files are provided as part of this repository to control the behavior of the Prettier formatter.

Warning The current Apex Prettier plugin version requires that you install Java 11 or above.

Code linting

ESLint is a popular JavaScript linting tool used to identify stylistic errors and erroneous constructs. To use ESLint with Visual Studio Code, install this extension from the Visual Studio Code Marketplace. The .eslintignore file is provided as part of this repository to exclude specific files from the linting process in the context of Lightning Web Components development.

Pre-commit hook

This repository also comes with a package.json file that makes it easy to set up a pre-commit hook that enforces code formatting and linting by running Prettier and ESLint every time you git commit changes.

To set up the formatting and linting pre-commit hook:

  1. Install Node.js if you haven't already done so
  2. Run npm install in your project's root folder to install the ESLint and Prettier modules (Note: Mac users should verify that Xcode command line tools are installed before running this command.)

Prettier and ESLint will now run automatically every time you commit changes. The commit will fail if linting errors are detected. You can also run the formatting and linting from the command line using the following commands (check out package.json for the full list):

npm run lint
npm run prettier

Code Tours

Code Tours are guided walkthroughs that will help you understand the app code better. To be able to run them, install the CodeTour VSCode extension.

automation-components's People

Contributors

actions-user avatar albarivas avatar dependabot-preview[bot] avatar dependabot[bot] avatar github-actions[bot] avatar imaginecrm-vcs avatar jakranz33 avatar pozil avatar realevanponter avatar satyasekharcvb avatar svc-scm avatar trailheadapps-bot avatar yasarshaikh avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

automation-components's Issues

GACK In Quick Choice CPE

Summary

When setting up a quick choice component and selecting Picklist as the input source, when you click into the Qualified Picklist Field Name (or anywhere in the CPE really), you get a GACK:

Uncaught TypeError: Cannot read properties of undefined (reading 'apply') throws at https://afloworg.lightning.force.com/auraFW/javascript/MDM0c01pMVUtd244bVVLc2VRYzQ2UWRkdk8xRWxIam5GeGw0LU1mRHRYQ3cyNDYuMTUuNC0zLjAuNA/aura_prod.js:51:43031

Salesforce Org Type

Production Org

Steps To Reproduce

Add a Quick Choice component to a screen flow.

Select 'Picklist' as your data source

Click the input/picker for Qualified Picklist Field Name

Current Behavior

No response

Expected Behavior

No response

Relevant Log Output

No response

Code of Conduct

  • I agree to follow this project's Code of Conduct

Launch Autolaunched Flow input params are not visible

I've installed the Launch Autolaunched Flow action. When attempting to configure the inputs, I only see "Flow API Name" and "namespace".
image

I can see in the source code that there are 6 other inputs for the params, but they have the "public" access modifier instead of "global".
image

Hoping you can take a look and let me know the best way to resolve this. I can submit a PR to change those access modifiers to "global" if that's the best path forward.

Thanks!

Quick Choice does not allow for Record Type Id to be set in the Custom Property Editor

Summary

When implementing a Quick Choice screen component, the documentation suggests that a Record Type Id value can be set in the property editor (it is noted as being a required parameter when Input Source is set to "Picklist"). This is not currently possible.

Steps To Reproduce:

  1. Install the UI package
  2. Create a new flow
  3. Add a screen to the canvas
  4. Add the Quick Choice screen component to the screen
  5. Choose the "Picklist" input source
  6. Notice there is no Record Type Id property to be specified

Expected result

There should be a Record Type Id property that accepts a flow resource

Actual result

There is no Record Type Id property

Additional information

Here is a screenshot after installing version 50.3 of "AC- UI", adding a quick choice component to a screen, and selecting "picklist" for the Input Source.
image

How to specify Output Class in Process Builder

Hi,

How do I specify an the field to Output to in the 'Calculate Business Hours' class when called from a Process Builder

I have specified my inputs, but there doesn't appear to be an area for setting which field should be updated

Thanks

Process-Builder

ExecuteSOQLQuery does not allow output to be stored in Flow variable

Summary

When using the ExecuteSOQLQuery action in a flow, there is no option to store the output value when configuring the action. The action cannot be referenced directly by the flow either.

Steps To Reproduce:

  1. Install the ExecuteSOQLQuery managed package
  2. Create a new flow
  3. Drag an "Action" element to the canvas
  4. Search for the ExecuteSOQLQuery action
  5. Notice there is only an option to specify the input query. There is no option to specify the object for the SObject "records" output or subsequent flow collection variable selection.

Expected result

An option to specify the object for the SObject "records" output should appear.

Actual result

There is only an option to specify the input query

Additional information

Here is the action configuration screen for the managed package version:
image

I copied the source code from this repository and created a custom class called "ExecuteSOQLQueryCustom". I pasted that code, saved, and tested this version to find that the object for the output can be selected, which then lets you Manually assign variables and save the output in a flow collection of that object.
image

I'm thinking that the version of code in the managed package install link might be outdated? Or there is some other consideration for exposing output variables for managed packages?

test

Summary

test

Salesforce Org Type

Developer Edition Org

Steps To Reproduce

No response

Current Behavior

No response

Expected Behavior

No response

Relevant Log Output

No response

Code of Conduct

  • I agree to follow this project's Code of Conduct

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.