Coder Social home page Coder Social logo

peg_list's People

Contributors

pegros avatar tprouvot avatar

Stargazers

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

Watchers

 avatar  avatar  avatar  avatar

peg_list's Issues

[feat] sfpegCardListCmp - Propagate info of page record in sfpegCardCmp instances

Is your feature request related to a problem? Please describe.
When using the sfpegCardListCmp component, the page record context is available only for the root header actions and to determine the list of records to display. In each sfpegCardCmp instance displayed, objectApiName and recordId
properties correspond to the record displayed in the component.
For various sfpegCardCmp level actions, it may be necessary to use data of the actual page record
and it is sometimes not possible to exactly determine it (e.g. when N-N relationships are involved).

Describe the solution you'd like
The objective is to be able to access any information of the root page record within merge tokens (see sfpegMergeUtl
component) in the configuration of the child sfpegCardCmp components.

Describe alternatives you've considered
Multiple options are available:

  • add new api properties to sfpegCardCmp components to inject recordId and objectApiName of the page record and let each card execute its own merging
    ** This require an evolution of the sfpegMergeUtl component to have a new token root (e.g. PAR) and fetch data from this root record
  • define a context at sfpegCardListCmp level merged by the root component and push it within all sfpegCardCmp child components via a standard Context api property (see sfpegListCmp).
    ** This is propably more efficient (merging done once) but requires to aggregate the needs of all possible child components in the list configuration.

Additional context
N/A

[feat] sfpegActionBarCmp - Add ability to navigate to record from showDetails popup

Is your feature request related to a problem? Please describe.
When using a showDetails action type, it is possible to access a summary of a specified record (similar to the standard
compact layout upon hovering). It would be great to be able to directly navigate to this record when closing the popup
if needed by the user.

Describe the solution you'd like
Avoid having two buttons in the action bar to respectively access the summary in the popup and navigate to the record.
There should be a button to directly navigate to the record from the summary popup.

Describe alternatives you've considered
Implementing a specific navigation feature was adding up custom code.
It would be preferable to reuse the next properties for action chaining to implement such a feature.

Additional context
This showDetails is mainly a fallback to the standard compact layout display upon lookup hovering.
It would be better to get this hovering capability on many lookup fields in the PEG_LIST package.

[bug] sfpegActionBarCmp - Filters not applied in form popups for lookup fields

Describe the bug
When using a unitary or mass form action, lookup fields are properly displayed in the popup but the filter
configured on the lookup field is not applied.

To Reproduce
Steps to reproduce the behavior:
This happens for any LDS or DML unitary or mass form action as soon as a lookup filter is applied.
When in unitary LDS edit mode, the filter may be applied based on the original situation of the record.
For any mass action or DML form unitary action leveraging creation forms behind the hood, no filter is applied.

Expected behavior
The objective is to get a restricted list of records to be selected from when editing a lookup field.

Screenshots
N/A

Desktop (please complete the following information):
Any

Smartphone (please complete the following information):
N/A

Additional context
This is actually a restriction of the standard lightning-input-field component. See lookup fields in https://developer.salesforce.com/docs/component-library/bundle/lightning-input-field/documentation

[feat] sfpegActionBarCmp - add a PDF document generation action type

Is your feature request related to a problem? Please describe.
A very usual request is to be able to generate a PDF summary (e.g. a 360° summary of an Account).
Although this can be achieved via a custom VF page and a navigation action type, it would be great
to have a simple out of the box action type.

Describe the solution you'd like
When clicking on such an action, a PDF would be generated out of a simple HTML template leveraging
the already available merge capabilities.
As a baseline, there would be a logo and a title for the header, a footer text and a main body.
There would be an option to automatically register the PDF generated as related File to a record.
In a more elaborate options, it would be interesting to also include the content of one or more sfpegList
tables.

Describe alternatives you've considered
Various commercial offers exist and the idea is really to keep the solution simple and efficient
for basic documents.

Additional context
Various prototypes have been implemented on this base and need to be industrialised.

[feat] sfpegCardCmp - Support non LDS-based data load/update

Is your feature request related to a problem? Please describe.
In some cases (e.g. non LDS supported objects such as Task and Event, complex data management including callouts),
it may be necessary to display cards without going through the Lightning Data Service.

Describe the solution you'd like
Currently, only a Use DML? property has been implemented to execute some special updates in "without sharing" DML
modes for some Experience Cloud usages.
The idea would be to generalize this feature and offer a way to fetch / update data directly via SOQL/DML (e.g. for Task
or Event objects) or Apex (to include callouts to external systems).

Describe alternatives you've considered
In order to avoid reimplementing the lightning-input-field base components, an option would be to systematically
leverage "proxy" SObjects and lightning-record-edit-form in creation mode to display/interact with record data.
The form load / submission would be then overriden with custom logic.

  • To support non LDS Sobjects, a simple field mapping would be required (SOQL and DML being automatically used).
  • To support custom logic, custom Apex classes implementing a generic virtual class would be also used.

Additional context
This would be quite similar to the solution used for data fetch in sfpegListCmp and dmlForm action types in
sfpegActionBarCmp.

[feat] sfpegCardCmp - Conditional display of sections

Is your feature request related to a problem? Please describe.
In order to reduce the number of sfpegCard configuration records and sfpegCardCmp component conditional
display conditions in Lightning pages, it would be great to have the ability to dynamically hide sections within the
sfpegCardCmp component.

Describe the solution you'd like
In the sfpegCard configuration, add a hidden property on section definitions,

Describe alternatives you've considered
Enforce a context merge on the sfpegCard configuration to automatically set the valuye of the hidden properties
out of any available boolean merge field (e.g. {{{NPERM.CustomPermission1}}}, see sfpegMergeUtl).

Additional context
Even though, FLS are automatically applied by the underlying lightning-record-edit-form, it would be great to have
this hidden property directly at field definition level to cope with cases where Users may have access to a field but never
see it it layouts.

[bug] sfpegList_CTL - AggregateResult SObject types are not supported

Describe the bug
In the sfpegList cmp when we define a SOQL query with AggregateResult and don't bypassFLS in the MDT record, an exception is thrown in the Apex class sfpegList_CTL

To Reproduce
Steps to reproduce the behavior:

  1. Go to CMT record
  2. Put a SOQL query with a count for example
    3-FATAL_ERROR| System.AuraHandledException: Script-thrown exception is thrown

Expected behavior
The list is shown

Additional context

The error is thrown in line 556: SObjectAccessDecision securityDecision = Security.stripInaccessible(AccessType.READABLE, results);

[bug] sfPegProfileCmp - Soucis d'affichage du chargé de clientèle sur les Sandbox en preview Winter 24

Bonjour @pegros,

Nous avons rencontré un souci sur l'affichage du chargé de clientèle (Account.OwnerId) sur les Sandbox en preview Winter 24.
Le chargé de clientèle ne s'affiche pas sur le composant sfPegProfileCmp LWC.

Sur notre analyse, le composant utilise en back-end est le lightning-output-field de Salesforce pour afficher les champs configurés sur le custom metadata sfPegProfile.

sfPegProfileCmp UI:
image

Custom Metadata:
image

Documentation du composant lightning-output-field:
https://developer.salesforce.com/docs/component-library/bundle/lightning-output-field/documentation

Pour l'instant, la solution de contournement préférable est d'utiliser un champ formule avec un hyperlien qui réplique le même comportement de celui du champ standard:
image

Est-ce que vous avez plus d'info sur le souci d'affichage du chargé de clientèle (Account.OwnerID) sur les Sandbox en preview Winter 24?

Cordialement,
Vyas

[feat] sfpegActionBarCmp - "save & next" button in ldsForm

Is your feature request related to a problem? Please describe.
When creating records via ldsForm action type, it would be great to have a "save & next" button
instead of a simple "save" one in order to chain record creations from the same popup.

Describe the solution you'd like
Replicate the standard Lightning behaviour for creation forms.

Describe alternatives you've considered
Current workaround is to leverage a Flow action (via the Aura sfpegActionUtilityCmp component)
chaining creations in the process.

Additional context
Beware of internal complexity induced by such a feature not considered from the start in the popup.
Potential complexity when configuring fields to replicate from one record to the next.

[feat] sfpegListCmp - Support record selection in tile & card display modes

Is your feature request related to a problem? Please describe.
Currently, record selection for mass actions is only available in datatable and treegrid display modes
(feature provided by the underlying Lightning base components). It would be great to have a similar
capability when in tileList and cardList modes.

Describe the solution you'd like
Simply implement a similar feature as in datatable to:

  • activate tile selection and set the max number of selectable records (reuse current configuration properties)
  • give an easy way to mass select/deselect records in the component.

Describe alternatives you've considered

Additional context
Beware to keep title links actionable in tiles when activating tile selection.

[feat] sfpegList - Treegrid component does not work on salesforce mobile

Hello @pegros ,
Currently we are implementing a mobile solution using the standard salesforce mobile application. However when using the sfpegList tree component, the component does not behave correctly.

Here is the component on salesforce:
image

and here is the same component when used on salesforce mobile on the same record:
image

We would like to be able to use the sfpegList component with treegrid on salesforce mobile as well

[feat] sfpegCardCmp - Enforce save on edits before closing the page

Hello @pegros ,
I've been using your amazing PEG component repository for many of my client's use cases. We have encountered a puzzling behavior of the system that I was wondering if you believe that could be solved with PEG.
We are trying to enforce standard Salesforce record behavior on screen flows. When a user enters/changes a value in one of the screen's fields and navigates outside of the context of a screen flow (on a lightning page layout) to another tab or out of the focus of the tab that the screen flow is on he should be prompted to choose whether they want to save, discard or cancel the action (same as with a new/update record standard action).
Another alternative would be some kind of "Autosave" mechanism if possible. The idea is to minimize the risk of losing precious screen flow data entry updates.
Adding an example of the record detail component and a screen flow side by side under the same tab. When editing the record detail component and trying to close the tab without saving it throws the prompt. However, when you edit the screen input fields in the flow and try to close the tab it doesn't warn the user. The client thought/idea was to have a similar experience. Attaching a screen shot and recording.
Do you think this is achievable with PEG components/events or if we'll wrap the flow in a LWC container? Is there some way to identify that a flow screen input field has been edited and use the event to create an interaction between the LWC and flow?

[feat] sfpegListCmp - Add a Map display option

Is your feature request related to a problem? Please describe.
Instead of a data-table or tile list, an interesting way to display data fetched by a sfpegListCmp
is to use a map.

Describe the solution you'd like
The idea is to fetch a set of record via a sfpegListCmp configuration and display them on a Map
as icons and offer the ability to interact with them ("Row Actions" and "Mass Actions") .

Describe alternatives you've considered
Leverage the standard lightning-map base component.

Additional context
In the legacy Aura component, such a component was available --> porting in LWC, simplification of the configuration,
use of the new capabilities...

[bug] sfpegCardCmp - Peg card Display of formula field

Is your feature request related to a problem? Please describe.
When editing on the peg card , the html tags always show up

Describe the solution you'd like
Display the formula field in html stripped format

Describe alternatives you've considered

Additional context
image

image

[feat] sfpegListCmp - Support SAQL queries

Is your feature request related to a problem? Please describe.
Provide SAQL support in a similar way to SOQL and SOSL to fetch data.

Describe the solution you'd like
Register a SAQL query in the sfpegList configuration record and choose SAQL as query mode.

Describe alternatives you've considered
Initially a direct SAQL support within the component was prototyped, but this prevented any deployment
on an Org with CRM Analytics not activated.
A better option would then be to provide an add-on Apex generic class implementing SAQL queries and
relying on the sfpegList configuration record (query template) to know which query to execute.

Additional context
Tricky issue is the retrieval of DashboardId and VersionId to be set in the SAQL query, IDs required when
executing SAQ queries from Apex.

[feat] sfpegActionBarCmp - Propose a copy to clipboard action type

Is your feature request related to a problem? Please describe.
To speed up some activities, it would be great to be able to easily copy predefined data via a single button clip.
Typical use case is the copy/page of a record page URL to mention it in an email or message.

Describe the solution you'd like
New action type to trigger a "copy to clipboard".

Describe alternatives you've considered
N/A

Additional context
N/A

[feat] sfpegActionBarCmp - Enable usage/selection of other fields instead of Name when creating a datasource to filter a lookup field

Is your feature request related to a problem? Please describe.
When creating a datasource that is used in a LDS form in an sfpegAction , even when specifying the fieldname as PRM_CodePortefeuille__c in the display configuration, the name is being displayed as default on the LDS form.

Describe the solution you'd like
Display other fields than name in the lookup datasource field

Additional context
s3
s2
s1

[feat] common - Securize Javascript eval() statements

Is your feature request related to a problem? Please describe.
There a few Javascript sensitive eval() statements in the components to implement
dynamic configuration of features, e.g. hidden/required/read-only fields, display of buttons...
This usage has been already minimised and no implicit execution is possible: administrators need
to explicitly activate dynamic condition evaluation via a dedicated boolean flag in the configuration.
At last, most of the time, conditions rely on boolean, picklist, numeric or lookup fields, leaving less options
open to inject malicious code than text or richtext fields (especially those modifiable by users).

Describe the solution you'd like
N/A

Describe alternatives you've considered
One option would be to implement some regex matching rules to prevent some usual dangerous
keywords or syntax in the conditions being evaluated: e.g. check that there are no “;”, “{”, “window”
or “document” keywords, see safe-eval() for node.js.

Additional context
N/A

[feat] sfpegActionBarCmp - Habilité de charger des fichiers excel/csv

Bonjour,

Est-ce qu'on a la possibilité de charger des fichiers excel/ csv sur le bouton d'action du type upload car on reçois un message d'erreur à la chargement d'un fichier excel comme vue dans le pj ci dessous.

image

Et voici le config qu'on a mis en place sur PRM:

    [
        {
        "name": "file",
        "label": "Charger des fichiers",
        "iconName": "utility:upload",
        "action": {
        "type": "upload",
        "params": {
        "title": "Charger des fichiers",
        "label": "Plusieurs fichiers possibles",
        "recordId": "{{{GEN.recordId}}}",
        "formats": [
        ".pdf",
        ".jpg",
        ".jpeg"
        ],
        "allowMultiple": true,
        "next": {
        "type": "notify",
        "channel": "RefreshList",
        "params": {
        "type": "done",
        "params": {
        "type": "refresh"
        }
        }
        }
        }
        }
        }
        ]

Merci par avance pour ton aide.

[feat] sfpegListCmp - Hovering on record name

Is your feature request related to a problem? Please describe.
In many standard Salesforce lists, the compact layout is displayed when hovering over a lookup field.
It would be great to hav a similar behaviour on name fields in sfpegListCmp.

Describe the solution you'd like
Compact layout display when hovering over a lookup field.

Describe alternatives you've considered
For the time being the showDetails action type provides a similar feature, which however requires
the user to explicitly click on the link. Only configured title properties are displayed upon hovering.

The idea would be to rely in the lightning-record-form standard base component with the compact
layout specified to determine the set of fields to display. This feature would therefore only work with LDS
supported objects (e.g. not Tasks or Events) and would be activated in the configuration via a specific
boolean flag.

Additional context
For full custom implementation (tileList and cardList display modes), this hovering should be relatively
easy to implement, whereas for implementation relying on standard lightning base components (datatable
and treeGrid display modes), this may be trickier. An option would be to support this feature at least for
tiles based display.

[feat] componentName - Feature title

Hello,

Request for desired development:
Add the possibility in the SFPEGCard component to manage hidden fields. For example, manage dependent selection lists whose dependent field should not be displayed

Details of the desired development:
Add the ability to handle a "class" attribute in the display fields definition to inject an SLDS-style class

Example of expected evolution:

Custom metadata "sfpegCard"
"Display Configuration" field:
{
"size": 6,
"fields": [
{
"name": "Suivi__c"
},
{
"name": "canal__c",
"class": "slds-hide"  
}
]
}

[feat] sfpegProfileCmp - Support wider range of banner and avatar images

Is your feature request related to a problem? Please describe.
Avatars (and banners) pictures are given by a Static Ressource. Even if it provides a flexibility (name of the image within the Static Ressource can be given by a custom field), it would be super useful, if a "File" can be used instead, so it could be completely dynamic (name).
My requirement is to display the picture (name give by a custom field) of a user (custom object), without the constraint of the maximum size of static ressources (5M), and the need to update the Static Ressource image zip file, each time a new user is created (and a new avatar is needed).

Describe the solution you'd like
Ideally, the url to the Avatar could be given by a field of the record (formula field), linking to a File / asset. By the way, this could allow to mutualise images used on CRM-A dashboards.

Describe alternatives you've considered
Having the name of the static ressource given by a custom field (instead of SfpegAvatars fixed values), which will allow to get rip of the max size limitation (use of more than 1 Static ressource).

Additional context
n/a

[feat] sfpegFlowDsp - Replace Aura by LWC implementation

Is your feature request related to a problem? Please describe.
With Winter 23, the LWC lightning-flow base component has been introduced.

Describe the solution you'd like
This removes the need to go through an Aura wrapper to launch a flow from a component.

Describe alternatives you've considered
N/A

Additional context
In the PEG_FLW, the sfpegFlowLaunch_CMP component might be refactored as well.

[bug] sfpegCardCmp - Google Map & Address Bar not displaying for field type Address

Bonjour @pegros,

J'ai reçu une demande dans laquelle je dois utiliser le composant sfpegCardCmp pour afficher l'adresse postale (Data type = Address, API Name= BillingAddress) d'un compte, ainsi que sa carte google.

Exemple :
image
Cela a été fait via le composant standard de Salesforce Record Detail.

Cependant, lorsque j'utilise le composant sfpegCardCmp avec la configuration suivante :

{
"size":6,
"fields":[
{
"name":"BillingAddress"
}
]
}

Seule l'adresse est affichée et non la carte Google. Exemple :
image

De plus, lorsqu'on modifie l'adresse, une barre de recherche s'affiche normalement, comme indiqué ci-dessous.

image

Cette barre ne s'affiche pas non plus lorsque j'utilise sfpegCardCmp.

Merci d'avance pour ton précieux retour d'information.

Cdt,
Bousun

[feat] sfpegActionBarCmp - Support Apex Form action

Is your feature request related to a problem? Please describe.
Support ability to call an apex method from a form action in addition to LDS/DML.

Describe the solution you'd like
The idea is to have the same feature as dmlForm but call a custom Apex method (implementing
a virtual class) instead of doing a DML.
This would enable to include callouts to external systems before executing a DML.

Describe alternatives you've considered
N/A

Additional context
Some legacy PEG components (callout form) was providing such a capability.
May be mutualised with Issue #17

[feat] sfpegListCmp - Récupérer une liste d'IDs provenant de rangées sélectionnées sous un Header Action pour effectuer une action

Hello @pegros

Je ne peux pas faire une action custom qui appelle un flux en passant la liste des Ids pour les rangées sélectionnées en masse.

C'est possible de faire évoluer le composant pour qu'on puisse r'écupérer les IDs des donné sélecté en masse afin qu'on puisse faire des action. Ex: passer les ID sélectionner dans un flow lorsque je clique sur un header action dans la PEG LIST?

                   "flowparams" : [
                       {
                          "name" : "lwcInput",
                          "type"  : "String",
                          "value" : "selectedRows.AccountId"
                       }
                   ]

Untitled (5)

[feat] sfpegActionBarCmp - Support Dynamic Interaction features

Is your feature request related to a problem? Please describe.
It would be great to add action type to trigger "Dynamic Interaction" events.

Describe the solution you'd like
The objective is to support the standard "Dynamic Interaction" feature and be able to trigger events in that framework
from the sfpegActionBarCmp as well as handle incoming ones in other components.
Typical use case would be to update a sfpegCardCmp content when selecting a row in sfpegListCmp
in the same App page.

Describe alternatives you've considered
For the time being, notification action types already enable to propagate events between LWC components in a custom
way. the objective here would be to leverage standard Lightning feature instead.

Additional context
see https://help.salesforce.com/s/articleView?language=en_US&id=release-notes.rn_lwc_dynamic_interactions.htm&type=5&release=234&_ga=2.237403910.765208447.1666250149-1185991831.1665749505

[feat] sfpegListCmp - Properly support filtering in treeGrid display mode

Is your feature request related to a problem? Please describe.
When in treeGrid display mode, filtering only works on the first level of nodes displayed.
It would be great to filter the whole hierarchy.

Describe the solution you'd like
It would be great to filter the whole hierarchy, displaying only parents of children meeting the
search criteria.

Describe alternatives you've considered
The treeGrid display mode faces currently multiple restrictions as most features were
initially designed for lists. Such a feature requires a rework of the filtering logic in a tree
instead of list mode. A separate filter function would be preferable to limit regressions
on lists.

Additional context
N/A

[tech] global - Review package structure to split common from component specific items

The objective is to split the common force-app/main/default folder in separate ones to isolate and better manage
dependencies, e.g. when a wishing to deploy only a subset of components.

Target would be to have a common folder with the base elements and folders by App Builder component grouping all
their specific items.

Please refer to what has been done on the PEG_MISC and PEG_CRMA repositories.

[feat] sfpegListCmp - enforce FLS on returned data in SOQL mode

Is your feature request related to a problem? Please describe.
Currently sharing is enforced (and possibly bypassed if needed) but FLS may be checked in SOQL
queries only by explicitly setting the "WITH SECURITY_ENFORCED" keyword. This is not optimal
as users get error messages as soon as they cannot access one of the fields displayed in the results.

Describe the solution you'd like
The idea would be to automatically filter out fields the user has not access to and display
a data-table with the remaining information only.
This feature should be possibly bypassed if needed in the configuration (e.g. leveraging a custom permission).

Describe alternatives you've considered
Leverage the Security.stripInaccessible Apex feature after the SOQL queries.

Additional context
Add any other context or screenshots about the feature request here.

[feat] sfpegKpiListCmp - Support KPIs based on Related List Counts

Is your feature request related to a problem? Please describe.
Currently, KPIs are exclusively based on numeric values stored explicitly on the records.
It would be great to automatically and dynamically compute some of them (e.g. counts of related list records)
instead of having to pre-compute and store them.

Describe the solution you'd like
LWC framework provides the uiRelatedListApi
wire service which could be leveraged to automatically refresh the KPIs if an update occurs on a related list
(e.g. the getRelatedListCount wire adapter).

Describe alternatives you've considered
N/A

Additional context
The objective is to propose a more open framework to include KPIs computed dynamically without impacting
performances too much.

[feat] sfpegMessageListCmp - Make visible SfpegActionBar

We use the SfpegActionBar component to display action buttons related to the current record, we want to display error messages in the event that the button cannot be displayed.

SfpegMessageListCmp will meet our need well if the "sfpegactionbar" component includes in is possible to make it visible

can we have parent-context param in sfpegactionBar included in SfpegMessageListCmp

image

[feat] sfpegKpiListCmp - Fetch KPI values from Apex instead of LDS

Is your feature request related to a problem?
For home/app pages without record context or for KPIs too complex to pre-compute on the records, it would be great to be able to invoke an Apex method to fetch KPI values instead of relying exclusively on Lightning Data Service to fetch them.

Describe the solution you'd like
The objective is still to preferably leverage KPI record fields but support also custom Apex ways to fetch KPI values.
Ideally, a basic SOQL count() based mechanism would be nice to avoid coding custom Apex classes.
When calling Apex, it is key to provide contextual information about the current record
(at least objectApiName and recordId) but leveraging the sfpegMergeUtl feature might simplify
implementation of simple SOQL query based solution (and optimise performances).

Describe alternatives you've considered
In order to minimise impacts on the component, an option would be to implement a separate Context loading feature relying
on an Apex class (implementing a common virtual class) and provide contextName instead of name / fieldName
properties to provide information for values.

Additional context
KPI list component in legacy Aura PEG package enabled to display custom KPIs based on SOQL queries.
This approach was abandoned in LWC (and replaced by KPI LDS retrieval) mainly for performance reasons.
Introducing the Apex retrieval feature should not impact performances too much (usage of Apex continuation?
split of LDS vs Apex KPI retrieval to avoid blocking rendering ?).

[bug] sfpegCardCmp - FIeld labels not displayed correctly

Describe the bug
The fields label are not displayed correctly when the user display density is set to compact. However when set to comfy, the display is okay.

To Reproduce
Steps to reproduce the behavior:

  1. Load sfpegCardCmp on a lightning page
  2. Click on the user icon on the top right
  3. Set display density to compact

Expected behavior
The fields label displayed correctly when display density is set to compact or comfy.

Screenshots
Compact:
image

Comfy:
image

[feat] sfpegListCmp - Dynamic action menu per row in datatable mode

Is your feature request related to a problem? Please describe.
Dynamic menu feature is already available for tileList and cardList display modes.
It would be nice to have the same option for dataTable and treeGrid display mode.

Describe the solution you'd like
Ability to dynamically show/hide or activate/deactivate row menu entries on a per row
basis when in dataTable and treeGrid display mode.

Describe alternatives you've considered

  • Requires a specific dynamic menu injection instead of the static approach.
  • Ideally, a fix in the standard lightning-datatable base component would be better to support the {fieldName:xxx}syntax for menu entries similarly to buttons.

Additional context
Best option would be to push a Pull Request for the standard opensource lightning-datatable component.

[feat] sfpegListCmp - Server Side SOQL filtering (& sorting)

Is your feature request related to a problem? Please describe.
Currently, the filtering of record in the sfpegListCmp is done on client side on all records available
(or only those already retrieved in case of pagination). When this list is possibly large, it would be great
to have this filtering done server side to retrieve only the applicable records.

Describe the solution you'd like

  • Have an option to executed the filtering server- instead of client-side.
  • Provide the filter context (i.e. selected field name) entered by the user as input to the SOQL query
  • Automatically convert the filter context in a relevant SOQL WHERE clause (depending on the field type)
  • Possibly let the User set multiple criteria (see standard Salesforce filter in record lists)
  • Handle empty filter context.

Describe alternatives you've considered
Either have 2 separate filter features to still provide local vs remote filtering or only a single one to
simplify UX.

Additional context

  • A similar capability would be great for sorting, especially when leveraging pagination.
  • Beware that "all" filter option would not be possible for server side filtering.

[feat] sfpegListCmp - Keyword input for SOSL

Is your feature request related to a problem? Please describe.
Currently, SOSL may only be used in a static way, e.g. to find data related to a User/Record context.
It would be great to let the User enter keywords in the component to refine a predefined SOSL search.

Describe the solution you'd like
Similarly to the current filter option which filter records loaded in the component, a find popup would enable
users to enter additional search keyword provided as input to the SOSL query.
The search would then be refined on server side instead of locally, possibly enabling to start with a fully
empty list when no keyword is entered.
The option would be to have a specific {{{SEARCH}}} token available for SOSL queries to be replaced
with the text entered by the User in the component.

Describe alternatives you've considered
This might be a new feature of the sfpegListCmp component or a new wrapper component displaying a
search bar above the list and injecting the search keyword within the current context property.

Additional context
N/A

[feat] sfpegListCmp - Offer a list configuration selector

Is your feature request related to a problem? Please describe.
In order to reduce the number of related lists displayed in a page, it would be great to let the User choose
the list configuration to apply. This would enable him to opt for various scopes of records (and related columns)
right from a single list (similarly to the record list view selector).

Describe the solution you'd like

  • Provide a list of available sfpegList configurations to choose from in a drop-down
  • Apply the proper sfpegList configuration when selected (and display its label)

Describe alternatives you've considered

  • Add this feature as a built-in sfpegListCmp capability (with a dedicated header dropdown)
  • Add a new sfpegActionBarCmp action type similar to the filter one to leverage the header actions to set the applicable configuration.
  • build a new wrapper component providing the configuration selector and injecting it within a child sfpegListCmp.

Additional context
Configuration should remain simple and consistent.

[feat] sfpegProfileCmp - Add KPI list below header

Is your feature request related to a problem? Please describe.
In order to provide more visual information, it would be great to graphically display a small set of KPIs just below the Profile header.

Describe the solution you'd like
Similar feature as the sfpegKpiListCmp but embedded within the sfpegProfileCmp.

Describe alternatives you've considered

  • insert a standard sfpegKpiListCmp component in the sfpegProfileCmp if a sfpegKpiList configuration name is provided.
  • replicate sfpegKpiList configuration elements directly within sfpegProfile configuration and mutualise display code between the 2 components.

Additional context
N/A

[feat] sfpegActionBarCmp - Enhanced action chaining

Is your feature request related to a problem? Please describe.
It is currently possible to chain actions within a sfpegAction configuration to execute an action when
another has succeeded (or failed). However, this is quite basic and it is not possible to leverage data
returned by the first action in the chain.

Describe the solution you'd like
Various use cases apply:

  • execute a record creation action (e.g. via LDS with no form) and redirect the user to the created record
  • execute a first Apex action to fetch a token and use this token within the URL of a later navigation action
  • execute a first control Apex action and trigger different actions if successful or depending on the actual exception raised.

Describe alternatives you've considered
Main option would be to support a new RES merge token within sfpegMergeUtl representing
data returned by an action, which would be progressively evaluated/reevaluated after each prior action.

In addition to basic next and error chaining properties, the idea would be also to set add a condition property, e.g. to determine which if an / which action should be triggered.

Additional context
The objective is to keep this feature simple. Any complex logic would be preferably implemented
in a Flow triggered via a Flow popup action.

[feat] sfpegCardCmp - Customize the label shown in the card

Is your feature request related to a problem? Please describe.
The business team often want to customize the fields' name shown in the card cmp. For exemple: The account Name fields Label in core is 'Account Name' for all record types and that's fine for internal purpose, however, in portal (for a better End user experience), the business want to customize the label shown ex: 'Intermédiaire Name', 'Site Name'

Describe the solution you'd like
Add a 'Label' param as in the SfpeglistCMP to customize the column name.

Describe alternatives you've considered
NA

Additional context
NA

[feat] sfpegActionBarCmp - Support mass Apex action type

Is your feature request related to a problem? Please describe.
There are already massForm and massDML action types to act on a list of selected records.
It would be nice to provide similar features but leveraging a custom Apex class instead of a DML to
execute the mass operation.

Describe the solution you'd like
The idea is to have the same feature as massForm and massDML but call a custom Apex method
(implementing a virtual class) instead of doing a DML.
This would enable to include callouts to external systems before executing a DML.

Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.

Additional context
May be mutualised with Issue #16

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.