Ensemble Update - February 2024

In a nutshell!

  • Advanced Styling inspired by CSS 🎨
  • Precision with executeConditionalAction 🎯
  • Mastering Flexibility: Say Hello to FlexRow and FlexColumn 💪
  • Enhanced Scanning: QRCodeScanner Widget 📷
  • ActionGroup: Streamlining Parallel Actions ↔️
  • Leveraging Dispatch Event 🔓
  • And a range of other features 🚀

Advanced Styling inspired by CSS 🎨

We're excited to unveil an enhanced version of the Themes section allowing multiple themes, inheritance between themes, named styles and much more, following CSS styling rules. This upgrade empowers users to consolidate all styles into one convenient location, streamlining the styling process for a more efficient and cohesive design experience. Explore our documentation for more information!

Precision with executeConditionalAction 🎯

0:00
/0:08

The new feature, executeConditionalActionGroup, is now available for use! This feature allows users to execute actions based on if/elseif/else conditions, providing precise control over triggered actions. Empowering users to tailor their app's behavior to specific conditions. Experience it yourself here!

Mastering Flexibility: Say Hello to FlexRow and FlexColumn 💪

FlexRow and FlexColumn now replace the old FittedRow and FittedColumn for better style compatibility. You can adjust individually under each child's style using flex: integer. There's also flexMode with 2 options: expanded (default) fills space based on Flex score, flexible fills only necessary space. Read more about it here!

Enhanced Scanning: QRCodeScanner Widget 📷

0:00
/0:11

The QRCodeScanner Widget facilitates efficient QR code scanning and data retrieval. Its methods include flipCamera(), toggleFlash(), pauseCamera(), and resumeCamera(). Properties like formatsAllowed and initialCamera offer customization options, while actions such as onInitialized and onPermissionSet provide feedback. Try it here!

ActionGroup: Streamlining Parallel Actions ↔️

0:00
/0:05

We're introducing ActionGroup to address the challenge of executing actions in parallel. With ActionGroup, you can now perform multiple actions simultaneously wherever actions are supported. This solution allows for more efficient coding by encapsulating actions and enabling their execution based on conditions. Seeking deeper insight? Click here!

Leveraging Dispatch Event 🔓

0:00
/0:18

Custom widgets now have the capability to dispatch events. The dispatchEvent action is utilized within custom widgets to inform the caller when significant actions occur. Create an account and view code in studio!

And a range of other features 🚀

  1. The Carousel widget in Ensemble now provides numerous customizable options. Notably, to enhance performance, a new option called buildOnDemand has been introduced. Enabling this option utilizes the itemBuilder pattern, enhancing efficiency by rendering widgets on demand.
  2. Users now have the capability to encode text for seamless transmission via URLs. Example: https://wa.me/1XXXXXXXXXX?
  3. Enable the option to copy the Preview link by selecting it from the dropdown menu within the screen.
  4. Passing Ensemble Live context to the JS editor enables IntelliSense and autocomplete functionalities, allowing for quick and efficient code completion based on field properties.
  5. Two new properties, readOnly and selectable, have been added to the textInput component, allowing for restriction of text modifications and enabling text selection via long-pressing
  6. Now featuring a comprehensive inclusion of Font Awesome and Material icons.