Edinburgh Update 1¶
Welcome to the documentation for the Edinburgh Update 1 release!
Don’t hesitate to send your feedback on these new features as we improve the product:
- For product and feature feedback, contact product@skuid.com
- For documentation feedback, contact documentation@skuid.com
Major features¶
New label properties for Forms¶
- Label position: Previously field labels could appear on top of fields or to the left through a Form component property, but checkbox inputs commonly need their labels on the right side—like when adjusting preferences or checking the ever-present “I have read and agree to the terms and conditions.”
With this new property, you can incorporate this common UI practice into your apps. Label position can be set to above the field or to the right of it. Available on Checkbox and Switch field types.
- Hide label: This property allows field labels to be totally hidden from the user interface while still being available to screen reader technologies.
skuid CLI 0.6 is GA!¶
(NLX feature with SFX impact)
skuid CLI—the command line interface for retrieving and deploying Skuid NLX metadata—is seeing some notable changes in its 0.6 release, which is now generally available.
You can use these features using the latest 0.6 release of skuid CLI:
--since
flag: This flag allows you to retrieve only the metadata that’s been modified since a certain timestamp. That means you retrieve only what you’ve recently updated for sandbox-to-production deployments, which means your apps get deployed faster.# Retrieve metadata updated since May 22nd, 2023 skuid retrieve --since "2023-05-22"
--ignore-skuid-db
flag: There are special constraints for working with Skuid Database in skuid CLI: skuid CLI won’t redeploy existing databases to avoid overwriting schema, and it won’t deploy more databases than a site’s allotted limit.While these safeguards can stop problematic deployments, most deployments do not rely on Skuid Database metadata. Using
--ignore-skuid-db
allows deployments to proceed, acknowledging that skuid CLI can ignore Skuid Database for the current deployment.skuid deploy --ignore-skuid-db
Improved logging and error handling, with options for more details and outputting logs to files
No longer compatible with SFX: The skuid CLI now focuses on Skuid NLX environments, and previous Salesforce-related commands are no longer supported.
For Skuid SFX, use our skuid-sfdx plugin for Salesforce’s command line interface.
Increased stability
Heads up! skuid CLI versions prior to 0.6.x will not be supported after Edinburgh Update 2 later this year. This will allow us to focus on further enhancements and optimizations both for the CLI and NLX’s backend.
Skuid SFX now uses Salesforce API 57¶
(SFX only)
Previously Skuid SFX used Salesforce API version 48 for its features. In Edinburgh Update 1, we’ve upgraded to API 57 to support even more objects and Salesforce features within the Skuid toolkit.
Notable new features include support for Accounts as Campaign Members, as well as several additional Net Zero Cloud objects.
Beta features¶
Other updates¶
Updated compatibility for Lightning Web Security¶
(SFX only)
Lightning Web Security (LWS) is replacing Lightning Locker for creating secure components in Lightning Experience.
With Salesforce’s beta release of LWS for Aura components, we found some errors would surface for our own Aura components (the Skuid Page and Skuid Page Assignment Lightning components). We’ve proactively updated our components so they will function as expected when LWS for Aura components reaches general availability on Salesforce.
These changes will also be available on Edinburgh releases 16.0.9+.
Heads Up! Internet Explorer 11 is no longer supported¶
We’re officially concluding support for Internet Explorer 11 (IE11) in Edinburgh Update 1, even at runtime. This allows us to continue to improve Skuid’s UI toolkit with modern web platform enhancements, but we can no longer guarantee Skuid will work as expected during build time or runtime for IE11.
With the conclusion of official support for IE11, we encourage all builders—and their users—to upgrade to a modern browser for continued Skuid functionality.
Included tickets¶
v16.1.4¶
CORE-4608¶
With Salesforce’s beta release of Lightning Web Security (LWS) for Aura components, we found some errors would surface for our own Aura components (the Skuid Page and Skuid Page Assignment Lightning components). We’ve proactively updated our components so they will function as expected when LWS for Aura components reaches general availability on Salesforce.
CORE-4653¶
When working within Sliding Panels and Table drawers in the Composer, fix issue where Responsive Grid divisions would disappear from view (though remain in the XML) when components were dragged into them
CORE-3433¶
Upgrade Salesforce API from version 48 to version 57
CORE-4657¶
Update {{startDate}}, {{endDate}}, and {{allDay}} merge variables to provide more consistent values in on-click and update event actions
CORE-4707¶
Update error message for Author Apex permission requirement to remove reference to “profile,” since that permission can also be assigned through permission sets
CORE-4643¶
Update component pack editor UI styles
CORE-4630¶
Set “Sanitize field values” property to default off for Table components
CORE-3744¶
Responsive Grid vertical alignment improvements for “fit to content” + minimum heights
Previously, Responsive Grids set to have vertical alignment, with a minimum height, and the “Fit to content” height strategy would only consider the contents of the divisions—instead of the full minimum height of the component—when determining vertical alignment.
Now, Responsive Grids properly consider the minimum height when applying vertical alignment to their divisions.
PLIN-4410¶
Remove unused third-party plugin
CORE-4586¶
Re-add missing runtime export options for Chart components
CORE-3545¶
Prevent invalid values in reference fields
CORE-4659¶
Pass context into conditional rendering snippets
CORE-4623¶
On the Search component, fix issue where the field picker for setting Return Objects would not function
CORE-4670¶
On the Deck component, fix issue where “Required field” error message would only appear on the first card in the Deck component. Now, these error messages appear on the appropriate card.
PLIN-3780¶
On Skuid SFX, update OData data source detail screen to match updated NLX UI
CORE-4549¶
On Skuid SFX, fix issue where users without Skuid licenses were not being redirected to standard Salesforce
CORE-4600¶
On Skuid SFX, fix issue where tooltip text wouldn’t fade on pages deployed in Lightning with the Skuid Page Lightning component
PLIN-4252¶
On Skuid SFX, fix issue where adding the first picklist entry value for a picklist field on a data source object would not properly populate the “Position” property
CORE-4607¶
On Skuid SFX in Lightning experience, fix lookup filters for polymorphic fields (e.g. OwnerId on the Case object)
Previously when selecting a value for a polymorphic reference field, an error stating a field doesn’t exist would appear—even with properly configured lookup filters. This fix ensures that reference field works as expected.
CORE-4661¶
On Firefox, fix issue where multiple authentication popups would appear for pages using Salesforce data sources
CORE-4640¶
Internal test fixes
CORE-4609¶
Internal improvements for future features
CORE-4717¶
Internal config adjustments to support deployment of newer SFX releases
CORE-4687¶
Internal code utility method improvements
CORE-3611¶
Internal code structure improvements
CORE-4719¶
Internal code improvements
CORE-4695¶
Internal code improvements
CORE-4705¶
Internal code improvements
CORE-4715¶
Internal code improvements
CORE-4755¶
Internal code improvements
CORE-4616¶
Internal build process improvements
CORE-4716¶
Internal build process improvements
CORE-4658¶
In v2 Page Include components, allow the use of merge syntax within the “Skuid page” property
CORE-4650¶
In the Wizard component, fix issue where enable messages for step buttons would not display in the expected area if the Wizard was below other components
CORE-4675¶
In the v2 Page API Migration Utility, fix component targeting behavior
CORE-4669¶
In the Design System Studio, ensure changes to Sliding Panel style variants are properly reflected in their preview
CORE-4732¶
In the Composer, remove extra “Insert fields” button since one now exists within the code editor when a related model is available
CORE-4654¶
In Table components, add interaction functionality to child relationship fields
CORE-4686¶
In Page Include components, improve merge variable handling for URL parameters—ensuring that using the “Load new page” action will properly update the Page Include even if the only change is a URL parameter value from a merge variable
CORE-4646¶
Improve row creation logic to prevent looping errors, which were apparent when working with models on data source objects that contained an “Id” field
CORE-3876¶
Improve rendering speed for Deck components, particularly for high record counts
In v16.0.3 this ticket also represents work to adjust how Skuid handles HTML encoding, which has effects particularly in Text components.
CORE-4711¶
For REST models, utilize the custom template request when making sample requests
CORE-4739¶
Fix Wizard issue where step indicators would only appear when using buttons within the Wizard’s attached button group
Previously step indicators would only render if at least one button within the Wizard’s attached button group was configured. This prevented Wizard component utilizing custom step navigation buttons from displaying step indicators.
Now, step indicators appear as expected based on the number of available steps and whether or not the “Show step indicators” property is enabled.
CORE-4624¶
Fix where builders previously could not disable the “Skip entry criteria” property for existing “Submit for Approval” Salesforce data source actions. Now builders can enable/disable this property as expected.
CORE-4752¶
Fix v1 to v2 migration utility issue where Wrapper components would break migration in newer releases
CORE-4606¶
Fix Table field issue where “Required” checkbox was not a visible property in the Composer
CORE-4612¶
Fix rendering issue with picklist fields within sliding panels that are activated within Page Include components
CORE-4638¶
Fix rendering issue for updated reference fields for PostgreSQL.
Previously, selecting a reference field value in a component attached to a PostgreSQL model would “blank out” the field, even though the value was updated. Now, reference fields update and render as expected.
CORE-4731¶
Fix regression where navigation item labels were not properly updated in the XML and did not render at runtime
CORE-4729¶
Fix regression where button groups could not be deleted—only buttons within them or the entire Button Set component
CORE-4714¶
Fix read with inline-edit mode picklist rendering issue in Safari
Previously when editing picklist fields set to “read with inline-edit” mode at runtime in Safari, clicking the dropdown to display picklist values would return the field to Read mode instead of displaying available picklist items. Now the picklist items appear as expected.
APPS-2134¶
Fix page crash when creating page packs containing 300+ pages through the Add All button
CORE-4702¶
Fix OAuth authentication request errors, which particularly affected ServiceNow connections
CORE-4666¶
Fix large gap that temporarily appeared between properties in Properties pane and add height properties to Tab Set component
CORE-3736¶
Fix issue where using the Undo button in the Design System Studio would not update the previews of any affected components
CORE-4601¶
Fix issue where the Composer would not recognize setting a previously-configured margin property back to “None” as a change, meaning it was not possible to save the page unless another change was made. Now the Composer recognizes the change, and enables the Save button, as expected.
CORE-4696¶
Fix issue where running the “Navigate to Step” component action would display all Wizard steps on the page instead of the steps for the chosen Wizard. Now, only the expected steps appear.
CORE-4633¶
Fix issue where Responsive Grid components would not reflect layout property changes within the canvas
CORE-4486¶
Fix issue where reference fields were not properly to showing updates in edit mode—even when models were refreshed and contained accurate data
CORE-4611¶
Fix issue where reference field searches would not return expected records on some objects (such as the Case object in Salesforce) due to search value and record value/label discrepancies
CORE-4649¶
Fix issue where new font families could not be added to design systems
CORE-4472¶
Fix issue where mass actions displayed as menus or comboboxes were always deactivated
CORE-4610¶
Fix issue where mass action buttons would unexpectedly remain enabled after running—even when no rows were selected
CORE-4619¶
Fix issue where included page model conditions would ignore Page Include query parameters for identically named parameters in the container page
With an included page and a container page, if the container page has a URL parameter that shares the same name as a Page Include query string parameter, the Page Include’s query string would win out—since it more specifically applied to the included page’s use.
However a bug appeared where model conditions would ignore the identically named Page Include query parameter and use the value of the container page’s parameter instead.
This fix returns the model condition behavior to the previous expected process—where Page Include query strings win out even when identically named.
CORE-4577¶
Fix issue where having one denied data source would prevent any permitted data sources from querying. Now permitted data sources can query, even if an unpermitted one is used within a page.
CORE-4419¶
Fix issue where Go to URL actions in a Chart series would not accept some Chart context-related merge variables
CORE-4673¶
Fix issue where clicking outside of sliding panels triggered by Table row actions would not close them
CORE-4599¶
Fix issue where Calendar components were not providing actions for “Run component action” picklist
CORE-4697¶
Fix issue where Autocomplete filters using model rows as options would not properly filter results based on user input
CORE-4613¶
Fix issue where “required” validations were incorrectly running on optional picklist fields
CORE-4737¶
Fix issue where “Button Icon position” values were not appearing in the dropdown menu within the Properties pane
CORE-3737¶
Fix issue in Design System Studio where datepicker style variant previews do not show correct color for weekend days
CORE-4684¶
Fix issue for donut-style Chart components where merge variables were not displaying properly without other content
Previously, when merge variables were the only value for a donut-style Chart component’s content template, no value would be displayed. The workaround was to use some empty space character, which would then cause the value to display as expected. Now, workarounds are not needed and merge variables display as expected, even if they are the only value in the template.
CORE-4738¶
Fix inability to override Vertical Navigation item styles via JSS in the Design System Studio
CORE-4592¶
Fix Edinburgh early access issue where “Required” validations were incorrectly enforced
CORE-4593¶
Fix Edinburgh early access issue where “Required” validations would sometimes run incorrectly if users pressed the Tab key to proceed to the next field
CORE-4735¶
Fix Design System Studio issue where style variant preview of sliding panel would block the properties pane—preventing the user from making edits
CORE-4635¶
Fix Design System Studio display issue when using JSS to extend variants with code
CORE-4614¶
Fix Composer preview issue where using certain URL parameters would not display queried results appropriately—particularly for RecordTypeId parameters on the Case object in Salesforce
CORE-4584¶
Fix CKEditor rendering in Form and Table components set to Edit mode within Tab Sets
CORE-4548¶
Fix Chart bug where context was not properly set after drilling down, returning to the main chart, and then drilling down into a new value
Clicking into a Chart component segment sets the context, which can be used to display filtered drilldown information. Before this fix, returning to the main chart and then drilling down into another value would not properly set the context—instead using the previous drilldown’s values. With this fix, drilldowns work as expected.
CORE-4676¶
Fix Carousel issue where nested components were not properly displaying UI-only model data
CORE-4597¶
Fix bug where the Calendar component’s “+n more” view modal displayed the previous date
CORE-4644¶
Fix bug where pencil icons would appear on button fields within a Form when changed into read/edit mode via a component action
CORE-4637¶
Fix bug where iterating over an empty REST data array using merge syntax displays “[object][Object]” instead of nothing
CORE-4743¶
Fix bug where action sequence input values were not properly passed to “Show/hide menu” actions within the action sequence
CORE-4642¶
Fix “Unpack pages from page pack” issue where setting the filter to “Last modified by me” would not not allow the filter to be set to “Last modified by any” afterwards
CORE-4698¶
Ensure context is properly handled when updating a Page Include with the “Load new page” component action
Before this ticket, some areas of Skuid NLX’s admin interface experience display errors, particularly around data source permissions. These errors are now resolved with no change or loss to saved data.
CORE-4734¶
Ensure “false” boolean values appear properly when displayed checkbox-returning picklists outside of Edit mode
CORE-4588¶
Deployment-related internal config updates
CORE-4667¶
Backend code structure improvements
CORE-4651¶
Allow hotkeys to be set without a selected modifier key
CORE-4590¶
Allow enable conditions and style variant conditions on global actions for Table components
CORE-4641¶
Allow “Export Table data” component action to run even if the Table component is hidden
PLIN-4452¶
Adjust streaming behavior for Microsoft SQL data sources
APPS-2304¶
Adjust page API version selector when creating new Skuid page to account for future feature development
CORE-4617¶
Adjust internal sharing rules for Skuid custom objects for dev/QA purposes
CORE-4596¶
Adjust Calendar component behavior to query for additional events within the selected time frame
Previously, model record query limits could unexpectedly cause a Calendar sourcing its events from that model to not display all the event records for a given time frame.
To continue allowing for record limits while also not leaving end users confused about why certain events would not appear, the Calendar component now intelligently queries for records until all events within selected time frame are displayed.
CORE-4627¶
Adjust appearance of Search component in the Composer canvas to more accurately reflect its runtime appearance
CORE-4750¶
Address a memory leak that can occur when editing large pages
CORE-4604¶
Add “Label placement” property to fields displayed as switches or checkboxes, allowing for labels to display to the right of these inputs
CORE-4605¶
Add “Hide label” property for Form fields
CORE-4594¶
Add Calendar component merge variable functionality to event on-click actions and event update actions
APPS-2310¶
Add ability to unpack page packs when no other pages exist in the Skuid environment
Future feature development¶
The following tickets represent internal code changes made for future features.
CORE-4483, CORE-4531, CORE-3583, CORE-3588, CORE-3594, CORE-3630, CORE-3682, CORE-3702, CORE-3724, CORE-3849, CORE-3856, CORE-4373, CORE-4411, CORE-4413, CORE-4468, CORE-4492, CORE-4497, CORE-4499, CORE-4501, CORE-4516, CORE-4518, CORE-4522, CORE-4524, CORE-4530, CORE-4540, CORE-4589, CORE-4625, CORE-4629, CORE-4647, CORE-4662, CORE-4665, CORE-4671, CORE-4672, CORE-4709, CORE-4710, CORE-4712, CORE-4721, CORE-4722, CORE-4751, CORE-4753, CORE-3496, CORE-3633