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:

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 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



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.


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


Upgrade Salesforce API from version 48 to version 57


Update {{startDate}}, {{endDate}}, and {{allDay}} merge variables to provide more consistent values in on-click and update event actions


Update error message for Author Apex permission requirement to remove reference to “profile,” since that permission can also be assigned through permission sets


Update component pack editor UI styles


Set “Sanitize field values” property to default off for Table components


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.


Remove unused third-party plugin


Re-add missing runtime export options for Chart components


Prevent invalid values in reference fields


Pass context into conditional rendering snippets


On the Search component, fix issue where the field picker for setting Return Objects would not function


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.


On Skuid SFX, update OData data source detail screen to match updated NLX UI


On Skuid SFX, fix issue where users without Skuid licenses were not being redirected to standard Salesforce


On Skuid SFX, fix issue where tooltip text wouldn’t fade on pages deployed in Lightning with the Skuid Page Lightning component


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


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.


On Firefox, fix issue where multiple authentication popups would appear for pages using Salesforce data sources


Internal test fixes


Internal improvements for future features


Internal config adjustments to support deployment of newer SFX releases


Internal code utility method improvements


Internal code structure improvements


Internal code improvements


Internal code improvements


Internal code improvements


Internal code improvements


Internal code improvements


Internal build process improvements


Internal build process improvements


In v2 Page Include components, allow the use of merge syntax within the “Skuid page” property


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


In the v2 Page API Migration Utility, fix component targeting behavior


In the Design System Studio, ensure changes to Sliding Panel style variants are properly reflected in their preview


In the Composer, remove extra “Insert fields” button since one now exists within the code editor when a related model is available


In Table components, add interaction functionality to child relationship fields


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


Improve row creation logic to prevent looping errors, which were apparent when working with models on data source objects that contained an “Id” field


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.


For REST models, utilize the custom template request when making sample requests


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.


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.


Fix v1 to v2 migration utility issue where Wrapper components would break migration in newer releases


Fix Table field issue where “Required” checkbox was not a visible property in the Composer


Fix rendering issue with picklist fields within sliding panels that are activated within Page Include components


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.


Fix regression where navigation item labels were not properly updated in the XML and did not render at runtime


Fix regression where button groups could not be deleted—only buttons within them or the entire Button Set component


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.


Fix page crash when creating page packs containing 300+ pages through the Add All button


Fix OAuth authentication request errors, which particularly affected ServiceNow connections


Fix large gap that temporarily appeared between properties in Properties pane and add height properties to Tab Set component


Fix issue where using the Undo button in the Design System Studio would not update the previews of any affected components


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.


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.


Fix issue where Responsive Grid components would not reflect layout property changes within the canvas


Fix issue where reference fields were not properly to showing updates in edit mode—even when models were refreshed and contained accurate data


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


Fix issue where new font families could not be added to design systems


Fix issue where mass actions displayed as menus or comboboxes were always deactivated


Fix issue where mass action buttons would unexpectedly remain enabled after running—even when no rows were selected


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.


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.


Fix issue where Go to URL actions in a Chart series would not accept some Chart context-related merge variables


Fix issue where clicking outside of sliding panels triggered by Table row actions would not close them


Fix issue where Calendar components were not providing actions for “Run component action” picklist


Fix issue where Autocomplete filters using model rows as options would not properly filter results based on user input


Fix issue where “required” validations were incorrectly running on optional picklist fields


Fix issue where “Button Icon position” values were not appearing in the dropdown menu within the Properties pane


Fix issue in Design System Studio where datepicker style variant previews do not show correct color for weekend days


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.


Fix inability to override Vertical Navigation item styles via JSS in the Design System Studio


Fix Edinburgh early access issue where “Required” validations were incorrectly enforced


Fix Edinburgh early access issue where “Required” validations would sometimes run incorrectly if users pressed the Tab key to proceed to the next field


Fix Design System Studio issue where style variant preview of sliding panel would block the properties pane—preventing the user from making edits


Fix Design System Studio display issue when using JSS to extend variants with code


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


Fix CKEditor rendering in Form and Table components set to Edit mode within Tab Sets


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.


Fix Carousel issue where nested components were not properly displaying UI-only model data


Fix bug where the Calendar component’s “+n more” view modal displayed the previous date


Fix bug where pencil icons would appear on button fields within a Form when changed into read/edit mode via a component action


Fix bug where iterating over an empty REST data array using merge syntax displays “[object][Object]” instead of nothing


Fix bug where action sequence input values were not properly passed to “Show/hide menu” actions within the action sequence


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


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.


Ensure “false” boolean values appear properly when displayed checkbox-returning picklists outside of Edit mode


Deployment-related internal config updates


Backend code structure improvements


Allow hotkeys to be set without a selected modifier key


Allow enable conditions and style variant conditions on global actions for Table components


Allow “Export Table data” component action to run even if the Table component is hidden


Adjust streaming behavior for Microsoft SQL data sources


Adjust page API version selector when creating new Skuid page to account for future feature development


Adjust internal sharing rules for Skuid custom objects for dev/QA purposes


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.


Adjust appearance of Search component in the Composer canvas to more accurately reflect its runtime appearance


Address a memory leak that can occur when editing large pages


Add “Label placement” property to fields displayed as switches or checkboxes, allowing for labels to display to the left of these inputs


Add “Hide label” property for Form fields


Add Calendar component merge variable functionality to event on-click actions and event update actions


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