Changelog
Our release notes contain more details on features and changes.
v1.16.1 – September 14th, 2023#
Breaking Changes
Non Breaking Changes
- UBQ/Swift: Fix malformed frameworks for macOS & Mac Catalyst.
v1.16.0 – September 8th, 2023#
Breaking Changes
- UBQ: Replace granular color-specific APIs with a more generic approach, that eases interactions with colors. Add
get|setColor
,get|setSettingColor
,get|setDropShadowColor
, andget|setStrokeColor
in favour of the color-space specific endpoints. Deprecate the following APIs:BlockAPI.getColorRGBA
-> UseBlockAPI.getColor
insteadBlockAPI.setColorRGBA
-> UseBlockAPI.setColor
insteadBlockAPI.setColorSpot
-> UseBlockAPI.setColor
insteadBlockAPI.getColorSpotName
-> UseBlockAPI.getColor
insteadBlockAPI.getColorSpotTint
-> UseBlockAPI.getColor
insteadBlockAPI.getBackgroundColorRGBA
-> UseBlockAPI.getColor
querying the"backgroundColor/color"
property insteadBlockAPI.setBackgroundColorRGBA
-> UseBlockAPI.setColor
modifying the"backgroundColor/color"
property insteadBlockAPI.setStrokeColorRGBA
-> UseBlockAPI.setStrokeColor
insteadBlockAPI.getStrokeColorRGBA
-> UseBlockAPI.getStrokeColor
insteadBlockAPI.setDropShadowColorRGBA
-> UseBlockAPI.setDropShadowColor
insteadBlockAPI.getDropShadowColorRGBA
-> UseBlockAPI.getDropShadowColor
insteadEditorAPI.setSettingColorRGBA
-> UseEditorAPI.setSettingColor
insteadEditorAPI.getSettingColorRGBA
-> UseEditorAPI.getSettingColor
instead
Non Breaking Changes
- CESDK: Added unstable clamp camera position and clamp camera zoom APIs.
- CESDK: Add
cardLabelPosition
for better easier positioning of the label in a asset library card - CESDK: Add
cardBorder
for enabling a border in a asset library card - UBQ/Android: Add
baseUri
as a parameter with a default value to theEngine.addDemoAssetSources()
method. - UBQ: Setting the
defaultEmojiFontFileURI
to an empty string will now disable emoji rendering and force text rendering to use the non-emoji font for all glyphs. - CE.SDK: During video export suspend inactivity detection while tab is in the background.
- UBQ: Fixed the
replaceText
API when the text contains variables. - CESDK: Add support for loading WASM and DATA from HTTP URLs (
config.core.baseUrl
) - CESDK: Remove purple flashing for placeholders
- CESDK: Added multitouch support on the web for CE.SDK and the CreativeEngine.
- CESDK: Introduces a new color inspector with support for multiple color palettes.
- CESDK: Introduced support for CMYK colorSpace and Spot colors in our color pickers.
- CESDK: It's now possible to add color libraries as asset sources.
- CESDK: Introduced the new
ui.colorLibraries
configuration option to configure the asset sources for the color inspector. - CESDK: deprecated the
ui.colorPalettes
configuration option in favor of using asset sources. - UBQ/Web: fix H.264 videos that need a large frame re-order window. This issue manifested as videos running into timeout during loading.
- CE.SDK: Fix labels for entries in text library not shown after language has been switched in settings panel
- CESDK: Fix labels in color library not showing up in other languages
v1.15.0 – September 1st, 2023#
Breaking Changes
- UBQ: Split the permission to crop a block from
content/replace
anddesign/style
into a separate scope:layer/crop
.
Non Breaking Changes
- UBQ: Add
getKind
,setKind
andfindByKind
block APIs. The "kind" of a block is a custom label that can be assigned to design blocks to give them semantics beyond their immutable type ID. - CESDK: Add
EditorAPI.findAllSettings
,EditorAPI.getSettingType
, andEditorAPI.getSettingEnumOptions
. - UBQ: When querying properties, nested properties like
scene/pageDimensions/width
andpage/margin/bottom
are also listed. - UBQ: The export function now fails with an error if a relevant asset fails to load.
- UBQ: Fixed an issue where a video scene would start to flicker if the total scene duration was greater than 30s and the playback time would match the total scene duration.
- UBQ: Fix orientation of video thumbnails generated by
BlockAPI.generateVideoThumbnailSequence
. - CE.SDK: Improve memory performance on older iOS devices
- UBQ: Deprecated the
design/arrange
scope and renameddesign/arrange/move
,design/arrange/resize
,design/arrange/rotate
anddesign/arrange/flip
tolayer/move
,layer/resize
,layer/rotate
andlayer/flip
. - UBQ: Deprecated the
content/replace
scope. For//ly.img.ubq/text
blocks, it is replaced with the newtext/edit
scope. For other blocks it is replaced withfill/change
. - UBQ: Deprecated the
design/style
scope and replaced it with the following fine-grained scopes:text/character
,stroke/change
,layer/opacity
,layer/blendMode
,layer/visibility
,layer/clipping
,appearance/adjustments
,appearance/filter
,appearance/effect
,appearance/blur
,appearance/shadow
- UBQ: The deprecated scopes are automatically mapped to their new corresponding scopes by the scope APIs for now until they will be removed completely in a future update.
- UBQ: Introduce
fill/change
,stroke/change
, andshape/change
scopes that control whether the fill, stroke or shape of a block may be edited by a user with an "Adopter" role. - CESDK: User interface API added to open/close panels
- CESDK: Add callback as possible value for UI scale configuration
- CESDK: Move color inputs from popovers to panels
- CESDK: Relayout user interface based on viewport width
- CESDK: Hide labels on canvas menu and some topbar inputs if there is no space
- UBQ: Fix bug where serializing block from a scene with a certain design unit and deserializing them into a scene with a different design unit, the blocks would be rendered incorrectly.
- CESDK: Asset panel uses full height on small viewports and small embeds
- CESDK: Fixed highlighting frames occasionaly beeing stuck until mouse move when exiting text mode.
- CESDK: Fixed touch-rotate gesture not triggering rotation in all cases.
- UBQ: Fallback to video frame dimensions if video track dimensions are 0.
- UBQ: Fallback to identity matrix if video transformation matrix is singular.
v1.14.0 – July 21st, 2023#
Breaking Changes
- UBQ/Android: Deprecated Android block API 'isPropertyWriteable' in favor of 'isPropertyWritable' to be consistent with iOS and web bindings.
- UBQ/Swift: Moved
BlockAPI.getSpotColorForCutoutType
andBlockAPI.setSpotColorForCutoutType
toEditorAPI
- UBQ/Swift: Deprecated Swift scene API
load(fromString string: String, ...)
in favor ofload(from string: String, ...)
. - UBQ/Swift: Deprecated Swift scene API
load(fromURL url: URL,...)
in favor ofload(from url: URL, ...)
. - UBQ/Swift: Deprecated Swift scene API
applyTemplate(fromString string: String, ...)
in favor ofapplyTemplate(from string: String, ...)
. - UBQ/Swift: Deprecated Swift scene API
applyTemplate(fromURL url: URL, ...)
in favor ofapplyTemplate(from url: URL, ...)
. - UBQ/Swift: Deprecated Swift asset API
removeAsset(fromSource sourceID, ...)
in favor ofremoveAsset(from sourceID, ...)
. - UBQ/Swift: Deprecated Swift asset API
addAsset(toSource sourceID, ...)
in favor ofaddAsset(to sourceID, ...)
. - UBQ: Deprecated
BlockAPI.getVideoFillThumbnail
,BlockAPI.getVideoFillThumbnailAtlas
, andBlockAPI.getPageThumbnailAtlas
in favor ofBlockAPI.getVideoThumbnailSequence
.
Non Breaking Changes
- UBQ: Add
BlockAPI.getVideoWidth
andBlockAPI.getVideoHeight
. - CESDK: Fix issue with exported PDFs as zips
- CESDK: Fix audio trim seeker mispositioning
- CESDK: Fix crop area possibly exceeding the content area when editing rotated crops with the edge handles.
- UBQ: Introduce
placeholderBehavior/enabled
property, that allows controlling whether a block should behave like a placeholder. For text blocks, the flag triggers selection of the entire text upon first edit. - UBQ: Introduce
block.onClicked
subscription. - CESDK: Add a timeout to the video export to detect and handle an unresponsive
VideoEncoder
. - UBQ: Automatically correct some video rotation matrices with a translation
- CESDK: Fix Asset Library upload not working correctly with groups
- CESDK: Fix an issue where the selected page was appearing out of focus after undo/redo
- CESDK/Swift: Add missing public
GradientColorStop.init
- CESDK: Fix an issue where the Windows 11 video encoder would insert duplicated frames, doubling the duration of the exported video.
v1.13.1 – July 10th, 2023#
Breaking Changes
Non Breaking Changes
- CESDK/Swift: Add missing public
GradientColorStop.init
v1.13.0 – July 3rd, 2023#
Breaking Changes
- UBQ: An initial undo step is now always added after scene creation. If you previously manually added the initial undo state, this now no longer necessary.
- CESDK: Remove configuration options
A series of options have been removed from the configuration object that is
passed into
CreativeEditorSDK.init
andCreativeEngine.init
. For a full list and detailed description of how to adapt to these changes, check out our documentation - UBQ/CESDK: Typescript changes
ConfigTypes
has been removed from the@cesdk/engine
package. For more information check out our documentation
Non Breaking Changes
- CESDK: Added
CreativeEditorSDK.create()
method for better customization of the init process. Also addedcreateDesignScene()
,createVideoScene()
, andcreateFromImage()
methods to the CE.SDK instance for setting up an initial scene aftercreate()
. - UBQ: Add
playback/timeOffset
andplayback/duration
properties to the following blocks:shapes/ellipse
,image
,shapes/line
,shapes/polygon
,shapes/rect
,shapes/star
,sticker
,vector_path
,text
- CESDK: Fix empty tooltips on Align controls.
- CESDK: Fix issue where using the
@cesdk/cesdk-js
module in certain contexts, such as Next.js or Create React App would render a warning about a failedrequire('@emotion/is-valid-prop')
. - UBQ: Fix exported videos not playing in some video players
- UBQ: Group children are no longer tied to the groups arrange scopes. For the
arrange/move
scope, a fallback to the group is made in adopter mode, allowing to move the entire group along with the child. This only applies, if the group has the scope, but the child does not. - CESDK: Added path-based selection for precise selection of shapes, vector paths, etc.
- UBQ: Fix memory leak in Node environments
v1.12.2 – June 30th, 2023#
Breaking Changes
Non Breaking Changes
- CESDK: Fix Typescript circular dependency error for config types
v1.12.1 – June 12th, 2023#
Breaking Changes
Non Breaking Changes
- UBQ: Fix exported videos not playing in some video players
v1.12.0 – June 2nd, 2023#
Breaking Changes
- UBQ: Improved the resizing behavior of
sceneAPI.applyTemplateFromString
andsceneAPI.applyTemplateFromURL
. If the target size is different from the template size, the resulting layout might change to better fit the target size.
Non Breaking Changes
- CESDK: Providing asset sources via
config.assetSources
has been deprecated and will be removed completely in a future version. Please use the AssetAPI to add asset sources instead. - UBQ: Add
BlockAPI.isDistributable
,BlockAPI.distributeHorizontally
, andBlockAPI.distributeVertically
. - UBQ: Add
blockAPI.resizeContentAware
to resize blocks and fit their content, the same asapplyTemplate...
does for resizing pages. - CESDK: Providing variable definitions via
config.variables
orcesdk.setVariableDefinitions
has been deprecated and will be removed completely in a future version. Please use the VariableAPI to configure placeholder variables instead. - CESDK: The
config.defaultFont
key has been moved from the CreativeEngine to the CreativeEditorSDK, since it is not used in the CreativeEngine. - CESDK: The
config.callbacks.log
key has deprecated and will be moved toconfig.logger
in the future. TheLogLevel
enum has been deprecated and will replaced with a string union. - CESDK: Fix a bug in sliders of effects 'Radial Pixel' and 'Tilt Shift'.
- CESDK: Fix a bug which resulted in the options menu button inside a timeline audio element to overlap the left handle preventing it from being used.
- CESDK: Add a paragraph spacing option to the text block.
- CESDK: Fix timeline seeker time label overlapping with seeker head.
- CESDK: Fix a bug with some sliders not updating on undo/redo.
- CESDK: Add clipping controls to advanced text subinspector.
- CESDK: Fix a bug with audio clips moving around when zooming the timeline.
- UBQ: Fix clipped lines of text to not contribute to the vertical alignment.
- CESDK: Add 'Distribute' actions to Default UI and Advanced UI.
- CESDK: 'Move & Align' dropdown in Default UI, and 'Move' dropdown in Advanced UI, have been labeled 'Position' to address new functionality.
- CESDK: Added translation keys 'action.align.elements', 'action.align.toPage', 'action.position', 'action.distribute', 'action.distribute.horizontally', 'action.distribute.horizontally.description', 'action.distribute.vertically', and 'action.distribute.vertically.description'.
- CESDK: Update move/arrange action translations
- CESDK: Fix inspector bar change in height if scrollbar is being displayed.
- CESDK: Fix sub inspector not having a border based on the panel alignment configuration.
- UBQ: Set the text fill color to the color of the last remaining text run before the run is deleted.
- UBQ: Add
getTextCursorRange
API for querying the cursor position during text editing. - CESDK: Prevent style inheritance overwriting internal styling
- UBQ: Fix cases where changing a text blocks text would cause it to loose its font.
v1.11.1 – May 17th, 2023#
Breaking Changes
Non Breaking Changes
CESDK: Fix crash when adding text block UBQ: Fix design unit conversion for Cutout blocks UBQ: Fix export for selected Cutout blocks UBQ: Fix text variable handling for range-based APIs
v1.11.0 – May 10th, 2023#
See the announcement post for details on features.
Breaking Changes
- UBQ: Made the
timeOffset
,duration
, andframerate
parameters of theBlockAPI#exportVideo
function optional. - UBQ: Renamed
SceneAPI.unstable_getDesignUnit
andSceneAPI.unstable_setDesignUnit
intoSceneAPI.getDesignUnit
andSceneAPI.setDesignUnit
- UBQ:
SceneAPI.setDesignUnit
now accepts"Pixel"
,"Millimeter"
or"Inch"
as arguments instead of"px"
,"mm"
or"in"
- UBQ:
SceneAPI.getDesignUnit
now returns"Pixel"
,"Millimeter"
or"Inch"
as values instead of"px"
,"mm"
or"in"
- UBQ/Swift: Renamed first parameter of the
SceneAPI.create
method fromfrom imageURL: URL
tofromImage url: URL
to differentiate between the image and the video variant - CESDK: Removal of the
scene
config option. You can set a scene'sdpi
andpixelScaleFactor
via the BlockApi'ssetInt(sceneId, 'scene/dpi', dpi)
andsetInt(sceneId, 'scene/pixelScaleFactor', factor)
. - UBQ/Android: Color which used to represent RGB color has now become a sealed interface and has two implementations:
RGBAColor
andSpotColor
Non Breaking Changes
- CESDK: Notifications have been redesigned. They always align to the bottom right edge now and are using updated design tokens to increase their visibility
- CESDK: Fix an issue where dragging from the canvas outside the browser window could put the mouse input system into an undefined state
- CESDK: Fix inspector headings not being truncated properly if their content is too long to fit the visible space
- UBQ: Add
SceneAPI.createFromVideo
method analogous toSceneAPI.createFromImage
- UBQ: Add
BlockAPI.isAlignable
,BlockAPI.alignHorizontally
, andBlockAPI.alignVertically
. - CESDK: Fix bleed margin not updating correctly when switching page format or design unit.
- CESDK:
PageFormatDefinition.dpi
andPageFormatDefinition.bleedMargin
properties have been removed. They were never actually used in the CESDK. - CESDK: Stroke properties are now being controlled via select inputs instead of segmented controls, improving their usability
- CESDK: Fix a bug in the 'Edit' canvas action for text blocks.
- CESDK: Fix for touch-gestures sometimes triggering accidental selection- CESDK: Stroke properties are now being controlled via select inputs instead of segmented controls, improving their usability
- CESDK: Fix a bug in the 'Edit' canvas action for text blocks.
- CESDK: Fix for touch-gestures sometimes triggering accidental selection
- CESDK: Fix moving groups between pages resulting in groups jumping around.
- CESDK: Number inputs now default to two fraction digits for number inputs
- UBQ: Merged CompositedText and Text blocks
- UBQ: Add TextCase options to the Text block and API
- CESDK: Add support for
file:/path
format and special characters in@cesdk/node
URL handling. - CESDK: Introduce the crop, filters, adjustments, effects, and blur inspector for page blocks.
- CESDK: Add Alignment UI to Design & Studio UI
- CESDK: Fix various bugs related to undo/redo in the Video Editor.
- CESDK: Fix a bug for 'flip' operations not saving undo/redo steps.
- CESDK: Fix editor crashing when loading scenes with specific combinations of block indices.
- UBQ: Add
text/clipLinesOutsideOfFrame
andtext/hasClippedLines
properties to the Text block. - UBQ: Add automatic font size options (
text/automaticFontSizeEnabled
,text/minAutomaticFontSize
,text/maxAutomaticFontSize
) to the Text block. - UBQ: Fix occasions where the scene export failed with an error stating "Block to export has size 0".
v1.10.1 – March 29th, 2023#
Non Breaking Changes
- UBQ/Android: Fix android keyboard not opening on some devices
- UBQ: Fix for touch-gestures sometimes triggering accidental selection
v1.10.0 – March 14th, 2023#
See the announcement post for details on features.
Breaking Changes
⚠️ Starting with
v1.10.0
we no longer ship our default assets within theassets/extensions
folder. Instead, both engine and UIs now offer convenienceaddDefaultAssetSources
endpoints, that selectively register asset sources, that serve our default assets. If you're actively using the example assets we shipped beforev1.10.0
, check the Serving Assets Guide for your target platform.
⚠️ Image uploads are no longer stored in the scene and will not reappear upon scene load. To offer specific assets in your editor, configure and add an asset source containing the desired assets.
Asset Management
- CESDK: Removed presets configuration for images (
presets.images
). Please use the local asset sources to add single images, e.g. withAssetAPI#addAssetToSource
. - UBQ: The
applyAsset
callbacks anddefaultApplyAsset
API now return an optional design block id in their callback if they created a new block - UBQ: Removed the required
thumbUri
andsize
properties fromAssetDefinition
andAssetResult
. They are now stored under thethumbUri
,width
andheight
keys in themeta
property dictionary - UBQ: Values of the
blockType
asset meta property must now be design block type ids (e.g.//ly.img.ubq/image
) - CESDK: Removed the
AssetElement
,ImageElement
,VideoElement
andAudioElement
types and replaced them withAssetDefinition
- CESDK: The
onUpload
callback must now return an instance ofAssetDefinition
- UBQ: Renamed default upload source for images (
ly.img.upload
) toly.img.image.upload
to match naming of video and audio upload sources. - UBQ: Upload asset sources and library entries for video and audio were added to the default configuration from
addDefaultAssetSources
. If you have added these sources manually (like mentioned in our docs) you can remove it now.
General
- CESDK: Fix text-alignment
center
andbottom
not working properly since v1.5.0 for the case when a fixed frame size was used and the text exceeded the frame. This can cause text elements with a fixed frame andcenter
orbottom
text alignment, where the text exceeds the frame, to render differently than before.
APIs & Properties
- UBQ: Renamed Audio's and VideoFill's specific looping, volume, and muted properties to share a common playback prefix:
'fill/video/looping'
and'audio/looping'
are now'playback/looping'
'fill/video/volume'
and'audio/volume'
are now'playback/volume'
'fill/video/muted'
and'audio/muted'
are now'playback/muted'
- UBQ: Deprecated the
camera/clearColor
property and replaced it with a globalclearColor
setting. - UBQ: Deprecated fill color related APIs in favor of a 'Fill' based approach
- Deprecated
hasFillColor
, usehasFill
and queryblock.getEnum(id, 'fill/type')
forSolid
type instead. - Deprecated
get/setFillColorRGBA
, usesetFillSolidColor
instead.. - Deprecated
isFillColorEnabled
, useisFillEnabled
instead. - Deprecated
setFillType
andsetFillGradientType
, usecreateFill
, e.g., with type 'color' and then apply the fill block withsetFill
to the block instead. If the block has a fill, it should be removed withgetFill
anddestroy
. - Deprecated
getFillType
andgetFillGradientType
, queryblock.getEnum(id, 'fill/type')
andblock.getEnum(id, 'fill/gradient/type')
instead instead - Deprecated
add/removeFillGradientColorStop
andget/setFillGradientColorStops
. - Deprecated
get/setFillGradientControlPointX/Y
, useblock.getFloat(fill, keypath)
andblock.setFloat(fill, keypath, value)
with key paths 'fill/gradient/linear/startPointX/Y', 'fill/gradient/radial/centerPointX/Y', and 'fill/gradient/conical/centerPointX/Y' instead. - Deprecated
get/setFillGradientRadius
, useblock.getFloat(fill, 'fill/gradient/radial/radius')
andblock.setFloat(fill, 'fill/gradient/radial/radius', value)
instead."
- Deprecated
Non Breaking Changes
- CESDK: Fix issue with asset replacement panel hiding when selecting new audio.
- CESDK: Add callback and utility method for checking against unsupported browsers
- CESDK: Audio clip is deleted automatically if being out of bounds after page deletion
- UBQ: Fix potential out of memory issue when loading lots of scenes with a single engine instance
- UBQ: Fix event subscription for common props, i.e., name, exportable, and always-on-top properties.
- CESDK: Removed the emoji default font from the bundle and exposed the URI setting (setting
ubq://defaultEmojiFontFileUri
) - CESDK: Fix for text variables not showing when editing text resulting in wrong cursor positions since v1.7.0.
- CESDK: Fix audio element clamping and stale timeline scale label value
- CESDK: Remove re-uploading of Unsplash images and hotlink them directly into the scene
- CESDK: Fix empty page inspector in default UI on certain constraints settings
- UBQ: Introduce
PlaceholderControls
which allow controlling the placeholder appearance on each block. Replacesimage/showsPlaceholderButton
andimage/showsPlaceholderOverlay
properties, which are now deprecated. - CESDK: Fix blend mode UI not being reflecting state properly for shapes, text and stickers
- CESDK: Add
--ubq-border_radius-xs
token - CESDK: Allow bitmaps to be uploaded
- CESDK: Remove official
image/x-tga
support from documentation - UBQ: Add
subscribeToAssetSourceAdded
andsubscribeToAssetSourceRemoved
methods to subscribe to additions to and removals from the list of asset sources - CESDK: Deprecate
canManageAssets
in favor ofcanAdd
andcanRemove
in the asset library entries - CESDK:
--ubq-stroke-contrast-3
token has been added - CESDK: Copy/Paste now respects scopes and configuration for page management
- UBQ: Introduce
block.getUUID
- CESDK: Fix an issue where the search query was kept across dock entries
- CESDK: Add support for
Allow to Replace Content
placeholder option for blocks that have a video Fill
v1.9.2 – January 18th, 2023#
Breaking Changes
Non Breaking Changes
- CESDK: Added a missing type export for Typescript
v1.9.1 – December 15th, 2022#
Breaking Changes
Non Breaking Changes
- UBQ: Fix invalid audio sample rate in the header of exported video files.
- UBQ: Expose video export API
- CESDK: Fix issue where replacing a video didn't work once it was in an error state
- CESDK: Optimize page thumbnail generation
v1.9.0 – December 12th, 2022#
See the announcement post for details on features.
Breaking Changes
- CESDK:
--ubq-border-outline
,--ubq-border-divider
and--ubq-border-contrast
have been renamed to--ubq-border-default
,--ubq-stroke-contrast-1
and--ubq-stroke-contrast-2
- UBQ: Splitted
showsPlaceholderOverlay
into two settings:showsPlaceholderOverlay
andshowsPlaceholderButton
to control the placeholder overlay and button separately. - CESDK: Remove the second
canvas
argument fromCreativeEngine.init
. Using a custom canvas is strongly discouraged in favor of using our managed canvas instead. If using a custom canvas can't be avoided, it can be provided viaconfig.canvas
. - CESDK: Setting
touchScrollingEnabled
changed totouch/singlePointPanning
- CESDK: Setting
touchDragRequiresSelectionEnabled
changed totouch/dragStartCanSelect
(inverted truth value) - CESDK: Configuration
ui.elements.libraries.replace.entries
determines if a replace button will be shown for any block. If you have customized this configuration for images, you have to make this a function, check the argument for the selected block type, and only return your customization if an image is selected. Otherwise, you will see the replace button for non-image blocks as well. If you haven't customized this configuration you do not have to do anything. See documentation for further information.
Non Breaking Changes
- UBQ: Fix text-editing cursor movement changes via touch not working while auto-completion is active in mobile Chrome
- CESDK: Extended the placeholder arrange scopes to support individual control over
move
,scale
,rotate
andflip
- CESDK: Add
meta+.
shortcut to show/hide UI - CESDK: Fix HEX color value differs for color preview input field and HEX input field
- CESDK: InspectorBar SubInspector toggle buttons now have same special highlight styling as inside the sidebar Inspector
- UBQ: Fix mime type detection not working when saving to an archive
- UBQ: Fix text variables containing emojis not rendering the emojis
- CESDK: Add video export with audio
- UBQ: Fix mime type detection not working when saving to an archive
- CESDK: Fix wrong fallback for baseURL if set explicitly to
null
orundefined
- UBQ: Fix export to only contain elements that are part of the specified hierarchy
- UBQ: Add an automatic block layouting when needed in API calls. Can be turned off with the feature flag
implicitUpdatesEnabled
. - UBQ: Add placeholder line rendering to empty image and video fills
- CESDK: Change background color of the subinspector
- CESDK: change sorting of duplicated elements; on top of existing element, instead of at the very front
- CESDK: Fixing shape translations in the asset library
- CESDK: Fix problem where mouse handlers were not correctly installed when the custom element or canvas were detached.
- UBQ:
SceneAPI.create
now acceptssceneLayout
as an optional parameter defaulting toFree
- UBQ:
SceneAPI.createFromImage
now accepts three additional optional parameter:sceneLayout
defaulting toFree
,spacing
defaulting to0
, andspacingInScreenSpace
defaulting tofalse
- CESDK: improve texture sampling in the Web version when WebGL2 contexts are available
- UBQ: Add
isPropertyWritable
/isPropertyReadable
api methods - UBQ: Add
subscribeToZoomLevel
method to subscribe to changes in the zoom level - UBQ: Removed the fixed export size limit of 4096 px and used the device limit instead.
- CESDK: Add
SceneAPI.onZoomLevelChanged
method to subscribe to change in the zoom level - UBQ: Add support for spot colors. Spot colors can be applied to the properties
fill/solid/color
,stroke/color
andbackgroundColor/color
. - CESDK: Prevent painting past the boundaries of the
<cesdk-canvas>
element in certain situations. - UBQ: Introduce
features/highQualityMipmaps
flag to enable improved image sampling - CESDK: Show replace asset library even if asset library is hidden
- CESDK: Improve texture sampling in the Web version when WebGL2 contexts are available
- UBQ: Add
subscribeToSelectionChange
method to subscribe to changes to the current selection - UBQ: Add
subscribeToHistory
method to subscribe to changes in the undo/redo history - CESDK: Add
BlockAPI.onSelectionChanged
method to subscribe to changes in the current selection - CESDK: Add
EditorAPI.onHistoryUpdated
method to subscribe to changes in the undo/redo history - UBQ: Improve startup time by caching WASM compilation
- CESDK: Add video not supported error dialog
- UBQ: Add
subscribeToActiveSceneChange
method to subscribe to changes of the active scene - CESDK: Add
SceneAPI.onActiveChanged
method to subscribe to changes of the active scene - CESDK: Introduced settings touch related settings
touch/*
includingpinchCanScale
,pinchCanZoom
andturnCanRotate
- CESDK: Made some control Gizmos configurable via
controlGizmo/*
, includingshowCropHandles
,showResizeHandles
,showScaleHandles
andshowRotateHandles
- UBQ: Improve
BlockAPI.export
to handle exporting of arbitrary blocks - CESDK: Add support for
filters
,adjustments
,effects
andblurs
to all supported elements - UBQ: Transform and crop handles have a wider area of interaction when on mobile
- UBQ: When the size of the slected element is too small, rotation and move handles are displayed together at the bottom center of the selection
- CESDK: Introduce history management via the
EditorAPI
- CESDK: Introduce
config.initialSceneMode
option - UBQ: Add
scene/defaultPageDuration
property
v1.8.0 – October 21st, 2022#
See the announcement post for details on features.
Breaking Changes
- CESDK: I18n keys related to shadows have changed:
- 'action.shadow.direction.change' is now 'action.shadow.angle.change'
- 'action.shadow.direction.rotate' is now 'action.shadow.angle.rotate'
- 'action.shadow.size.change' is now 'action.shadow.distance.change'
- 'input.shadow.direction' is now 'input.shadow.angle'
- 'input.shadow.direction.description' is now 'input.shadow.angle.description'
- 'input.shadow.size' is now 'input.shadow.distance'
- 'input.shadow.size.description' is now 'input.shadow.angle.distance'
- UBQ: Highlight placeholder button on hover
- CESDK: Initializing the engine no longer requires a
<canvas>
. Instead, the instance will instantiate its own canvas that can then be inserted into the DOM - CESDK: Fix snapping guides aren't cleared on mouse/touch up
- CESDK: Fix modals and dialogs not being positioned properly
- UBQ: the
design/arrange
scope provides more fine-grained withdesign/arrange/move
,design/arrange/resize
,design/arrange/rotate
,design/arrange/scale
anddesign/arrange/flip
. It is still possible to read or write all at once usingdesign/arrange
. - CESDK: Fix i18n issues with multiple CE.SDK instances
- CESDK: Fix edge handle snapping on rotated elements
Non Breaking Changes
- CESDK: Fix broken typography on inspector panel welcome text for adopter role
- CESDK: Insert and replace panels now have the same default settings
- CESDK: Add Image Straighten UI
- UBQ: Add drop shadow support to the sticker block
- CESDK: Update how the replace button is drawn on small frames
- CESDK: Fixed hover highlight outline when changing selection via the API
- CESDK: Add content-hashes to the core (WASM) asset filenames. Verify CESDK Version during WASM instantiation
- CESDK: Add configuration options to show/hide UI to manage/format pages
- CESDK: A multi-selection can be rotated
- UBQ: Fixed the selection behavior of rectangle elements with outside or center strokes
- CESDK: Add optional
fixedOrientation
flag to page format preset type. - UBQ: Added a high compatibility mode for PDF exports to the export settings and enabled it by default
- UBQ: Add
ubq://maxImageSize
to control the engine's memory footprint. The default value is 4096 pixels. Images with a higher resolution get downscaled automatically. - UBQ: Improved memory handling.
- CESDK: Fix settings panel CSS theme generator not including all necessary CSS custom properties
- CESDK: Fix drag handle snapping accuracy sporadically slightly off
- UBQ: Add iOS inline text editing
- UBQ: Added
exportWithColorMask
to the API and bindings - UBQ: Fix property modification for
duotone_filter
,lut_filter
,adjustments
&hsp_selective_adjustments
- UBQ:
findAllProperties
now returns correctly prefixed keys for blurs, effects and fills - UBQ: Add flipCropHorizontal and flipCropVertical APIs
- UBQ: Fixed page dimensions and font sizes in the PDF export of pixel-unit scenes
- UBQ: Fixed issue when adding another block after an selected image in the default UI
- UBQ: Expose
cropOverlayColor
setting - UBQ: Add
findAllMetadata
endpoint - UBQ: Fix console error when touch dragging on the web
- UBQ: Fix
null
values forgetGroups
callback in AssetSources - UBQ: Add helper functions to determine the support for WASM and Video (
supportsWasm
&supportsVideo
) - UBQ: Added support for emojis, rendered with
NotoColorEmoji.ttf
- CESDK: Added
touchScrollingEnabled
andtouchDragRequiresSelectionEnabled
settings to configure the touch behavior. - CreativeEngine: Add Node.JS package @cesdk/node
- UBQ: Fix crashes during event delivery
- UBQ: Fix dragging through UI elements
- UBQ: Fix crashes when duplicating fill, effects and blurs
v1.7.0 – August 11th, 2022#
See the announcement post for details on features.
Breaking Changes
- CESDK: Change export options provided to the onExport callback
options['image/jpeg'].quality
-> options.jpegQualityoptions['image/png'].compressionLevel
-> options.pngCompressionLevel
- UBQ: Update zoom APIs to be more user-friendly
editor.getZoomLevel
->scene.getZoomLevel
editor.setZoomLevel
->scene.setZoomLevel
get
/setZoomLevel
is in relation to pixel dimensions instead of design units of the scene, which requires an update of the values if the scene is in design unit inch or millimeter
- CESDK: Changed translation keys in the settings panel
- UBQ: Replace backgroundColor properties (
backgroundColor/color
,backgroundColor/enabled
) of the page block with fill properties (fill/enabled
,fill/gradient/type
,fill/solid/color
,fill/type
). - CESDK: UI (Default or Advanced) is now independent of Role (Creator or Adopter).
- Configuration key
ui.elements.view.adopter.style
has been removed. - Configuration key
ui.elements.view.style
is used to configure the view for all roles.
- Configuration key
- UBQ: Asset Source
findAssets
does not have a 'type' argument anymore. All user-configured asset source have to remove thetype
as well - CESDK: Removed the following configuration entries. It is replaced by configuration of
ui.elements.libraries.insert.entries
andui.elements.libraries.replace.entries
ui.elements.libraries.upload
has been removed.ui.elements.libraries.template
has been removed.ui.elements.libraries.image
has been removed.ui.elements.libraries.text
has been removed.ui.elements.libraries.element
has been removed.
- CESDK: Deprecate
libraries.panel.insert
andlibraries.panel.replace
and move their entries tolibraries.insert
andlibraries.replace
- UBQ: Rename drop shadow related function and properties:
[get/set]DropShadow[X/Y]Offset
->[get/set]DropShadowOffset[X/Y]
[get/set]DropShadow[X/Y]BlurRadius
->[get/set]DropShadowBlurRadius[X/Y]
dropShadow/x/offset
->dropShadow/offset/x
dropShadow/y/offset
->dropShadow/offset/y
dropShadow/x/blurRadius
->dropShadow/blurRadius/x
dropShadow/y/blurRadius
->dropShadow/blurRadius/y
- UBQ:
hasPlaceholderContent
has been renamed toshowsPlaceholderContent
- CESDK: Changed i18n key
input.document
toinput.canvas
- CESDK: default stroke position is centered rather than outside
Non Breaking Changes
- CESDK: Add option to auto close asset library after insert or replace
- UBQ: new API functionality to add and edit a block's drop shadow
- CESDK: Update border radius values
- UBQ: Add export options to export API
- UBQ: Introduce asset API
- CESDK: Add Stroke controls to Default UI for Images
- UBQ: Add setting to control double-click behavior
- UBQ: Add gradient option to page fill
- UBQ: Add block metadata API
- CESDK: Add labels to Shape Options sliders.
- CESDK: Improved UI usability on small screens
- CESDK: Fix Unsplash library displaying the same image multiple times
- CESDK: Fix filter card labels not readable in dark theme
- CESDK: Can rotate and flip groups
- CESDK: Fix template library cards displaying templates wrong
- CESDK: Add configurable icons for custom libraries
- UBQ: Add scopes API
- CESDK: Add Shadows controls to Advanced UI
- CESDK: Fixed line shape handles not moveable in some conditions
- CESDK: Add possibility to pass function to dock group configuration
- CESDK: Add stroke to pages.
- UBQ: Always clip content to pages on export
- CESDK: Add effect & blur APIs.
- CESDK: Fix to properly ignore mouse events over UI elements
- CESDK: Remove text background color from the UI
- CESDK: Fix word wrapping of text for keyboard input in Safari
- CESDK: The entry point for the Creative Engine at
@cesdk/cesdk-js/creative-engine.umd.js
has been removed. Use the@cesdk/engine
package instead. - CESDK: Fix translation issues in the asset library
- CESDK: Change default template card backgroundType to
contain
- CESDK: Added support for changing cursors depending on the action performed
in the
@cesdk/engine
package. - CESDK: Fix lost keyboard focus after clicking canvas
v1.6.3 – June 13th, 2022#
Non Breaking Changes
- CESDK: Fix replace library behavior during template adoption.
v1.6.2 – May 24th, 2022#
Non Breaking Changes
- CESDK: Fix broken fill color on star, polygon, and vector shapes.
v1.6.1 – May 23rd, 2022#
Breaking Changes
- UBQ: Rename fill & background color related properties:
fill_color/value
->fill/solid/color
fill_color/enabled
->fill/enabled
background_color/value
->backgroundColor/color
background_color/enabled
->backgroundColor/enabled
Non Breaking Changes
- CESDK: Settingspanel library checkboxes working again
v1.6.0 – May 16th, 2022#
See the announcement post for details on features.
Breaking Changes
- UBQ: Fix "Cross Cut" effect output differences.
- CESDK: Some of the exported types of the @cesdk/cesdk-js package have changed:
- The
DesignElementId
type alias has been renamed toDesignBlockId
- The
PositionMode
,SizeMode
, andPropertyType
enums for use with the BlockAPI are gone. Instead you can use literal string values that map 1:1 to the previous enum value names.PositionMode.Absolute
becomes"Absolute"
, etc.
- The
- CESDK: Add template library
- Template configuration now needs to include a label for each template
- JNI: Use
long
instead ofint
for IDs because Java does not offer unsigned ints. - CESDK: Deprecate imports of the CreativeEngine module from
@cesdk/cesdk-js/cesdk-engine.umd.js
. To use the CreativeEngine module, import it as its own package from the@cesdk/engine
npm module.
Non Breaking Changes
- UBQ: Add
findAllPlaceholders
API - CESDK: Fix snapping guides not always covering the entire screen
- CESDK: Split cesdk_engine from cesdk_web
- UBQ: Add
scale
API for proportional scaling of blocks, groups and hierarchies - CESDK: Add API options
setContentFillMode
andgetContentFillMode
- UBQ: Fix blur bleeding with CPU backend
- UBQ: Fix Tiltshift effect alpha handling
- CESDK: Improved Stroke options for Shapes and Text
- CESDK: Add Gradient Fills.
- CESDK: Fix unselectable elements being selectable by keyboard interaction for Adopter.
- CESDK: Fix uploaded images being added immediately.
- CESDK: Add placeholder options for Pages.
- UBQ: Add
applyTemplate
APIs - UBQ: more properties can be set through the set of
set/get
functions which take a single parameter. - CESDK: Update line and stroke width of handles, selection frames, and gizmos.
- UBQ: Fix text blocks changing position during design unit changes.
v1.5.1 – May 9th, 2022#
Non Breaking Changes
- CESDK: Added exports for a few enums that had been forgotten in a previous release:
DesignBlockType
, which was previously calledDesignElementType
is required as an argument to many methods in the BlockAPI)MimeType
StrokePosition
,StrokeCornerGeometry
, andStrokeStyle
v1.5.0 – April 4th, 2022#
See the announcement post for details on features.
- CESDK: Introduce event API and editor API.
- UBQ:
export
now always unhides the element that's being exported. - UBQ: Selection and placeholder highlighting for children of hidden elements are disabled.
- CESDK: Fix bug when no sources for a type are configured
- UBQ: Add
Opacity
component toCompositedText
- UBQ: Switch to fixed
Stack
spacing during export - UBQ: Limit image render resolution to 4096x4096
- CESDK: Disabled color inputs inside colorselection popover can be enabled via click anywhere inside the popover
- CESDK: Introduce grouping of elements. A group can be moved and has its own opacity.
- CESDK: Added new vector shapes.
- UBQ: Add PDF export
- UBQ: Move pending and error state rendering from the frontend into UBQ
- CESDK: Update supported browser versions
- UBQ: Add options for page clipping and out-of-page dimming
- UBQ: Add
showsPlaceholderOverlay
property toImage
- UBQ: Allow exporting scenes as an archive
- CESDK: Allow usage of inline text editing in
cesdk_engine
headless mode - CESDK: Add dock configuration option to show/hide labels and choose between icon sizes
- CESDK: 'Replace Asset' library panel now automatically opens for Adopters when selecting a replaceable image, and stays open after selection.
v1.4.7 – May 3rd, 2022#
Breaking Changes
- JNI: Use
long
instead ofint
for IDs because Java does not offer unsigned ints.
Non Breaking Changes
- CESDK: Fixed spinners showing on hidden pages, e.g. in single-page mode.
- CESDK: Preserve font
externalReference
in textRuns when loading scenes.
v1.4.6 – April 14th, 2022#
- Add auto close feature
v1.4.5 – April 1st, 2022#
Non Breaking Changes
- Fixes Canvas Actions / Actionbar not correctly updating its position when text box height changes during typing
- Fixes
externalReference
not being updated when an image was replaced - Fixes multiple issues in single page mode
- Elements created by an adopter are no longer highlighted, which also fixes occasional highlighting of the entire scene
- Non-visible elements are no longer selectable via
tab
- Loading spinners no longer show for elements on hidden pages
- Fixes wrong pointer offsets for adopters, noticeable in embedded deployments leading to wild element jumps during drag
- Fixes empty library for image replacement, if only uploads are in there
- Allows disabling the image placeholder overlay via a new
showsPlaceholderOverlay
property - Adds an
activePageCallback
that allows registering for undo/redo induced page change
v1.4.4 – March 9th, 2022#
- Fixed mouse offsets during dragging
v1.4.3 – March 7th, 2022#
- CESDK: Fix bug when no sources for a type are configured
- UBQ:
export
now always unhides the element that's being exported. - UBQ: Selection and placeholder highlighting for children of hidden elements is disabled.
v1.4.2 – February 23rd, 2022#
- Fixes an error in the public TS type declarations.
v1.4.1 – February 22nd, 2022#
Fixes
- Placeholder overlay not getting removed when replacing image as adopter
- Missing bindings for
getGlobalXYZ
&referencesAnyVariables
endpoints - Various guide fixes (broken links, broken buttons & wrong examples)
- Delay lookup of legacy vector path blocks
Breaking Changes
- CESDK: Moved property API functions into the block API namespace.
.property.findAll
and.property.getType
have been renamed to.block.findAllProperties
and.block.findPropertyType
resp.
v1.4.0 – February 18th, 2022#
See the announcement post for details on features.
Breaking Changes
- CESDK: Add new elevation color theming token
- CESDK: Add design tokens for danger button variant
- CESDK:
//ly.img.ubq/adjustableImage
was renamed to//ly.img.ubq/image
(serialized scenes are automatically converted) - CESDK: Changes made in preview mode are discarded when leaving the mode
- CESDK: Shapes may now be resized non aspect-aware via the edge handles
- CESDK:
presets.variables
was moved to the top level of theConfiguration
object - CESDK: Renamed configuration key for the view style from classic to advanced and from minimal to default
- CESDK: Changed default image fill mode from
none
tocover
- CESDK: I18n files have been restructured (flat keys).
- CESDK: Extended layout functions of the block API for more control
- CESDK: Introduce
--ubq-margin-xl
theming api token - CESDK: Introduce
--ubq-interactive-selected
theming api token
Non Breaking Changes
- CESDK: Changes made in 'Preview' mode don't affect the current scene anymore
- CreativeEngine: Introduces headless
CreativeEngine
viacesdk-engine
package and makes the editors underlying engine available viacesdk.engine
- CESDK: Add manual number input for slider elements via Enter key
- CESDK: Add ability to remove variables
- UBQ: Store & handle relative paths by resolving them relative to the
ubq://basePath
setting - CESDK: Add "Always on top" toggle for design elements
- CESDK: Add ability to remove variables
- CESDK: Remove
ubq://waitForAssets
setting - CESDK:
image.uri
was replaced withimage.imageFileURI
. The property now holds a file URI, the previously stored asset ID is now stored inimage.externalReference
. Same applies toimage.lutFilter/uri
andsticker.uri
. - CESDK: Add block-based
saveToString
&loadFromString
to block API - CESDK:
VectorPath
blocks now only receive paths & size instead of an asset key. - CESDK: Snapping behaviour extended to multi-selected elements
- CESDK: Add
getGlobalBoundingBox…
&referencesAnyVariables
to block API - CESDK: Replace
image.duotoneFilter/assetUri
with individual colors and introduceimage.duotoneFilter/externalReference
- CESDK: Hide inspector bar inputs without necessary placeholder settings in classic UI
v1.3.0 – January 6th, 2022#
See the announcement post for details on features.
Breaking Changes
- CESDK: Theming API endpoints for typographic settings has changed
Non Breaking Changes
- CESDK: Fix scrollbar pixel scaling
- CESDK: Add
initialImageURL
configuration option - CESDK: Make Editor unloading clean up more resources
- CESDK: Add
Page
related configuration options (title.show
&title.font
) - CESDK: Add Multi Selection capabilities
v1.2.1 – November 30th, 2021#
Breaking Changes
- CESDK: Deprecated
load
method ofCreativeEditorSDK
in favour ofloadFromString
andloadFromURL
- CESDK: Rename
config.initialScene
toconfig.initialSceneString
Non Breaking Changes
- CESDK: Fix SVG without height and width attribute not being displayed
- CESDK: Add Layout switch to Canvas Inspector
- CESDK: Add
initialSceneURL
configuration option - CESDK: Add saner default for constraints in templates
v1.2.0 – November 22nd, 2021#
Non Breaking Changes
- CESDK: Replace Storybook with hand-rolled styleguide
- UBQ: Add support for
POST
requests, HTTP body & headers - CESDK: Add UI for renaming design elements
- CESDK: Replace constraints section with placeholder UI
- CESDK: New content library
- CESDK: Inspector Panel content is reduced or hidden entirely for Adopter Role.
v1.1.1 – October 29th, 2021#
Non Breaking Changes
- CESDK: Fix vanilla js integration example not working
v1.1.0 – October 28th, 2021#
Breaking Changes
- CESDK: Fix line-breaking of words in text variables only having 1 character per-line for all but the last word
- CESDK: Decrease default PNG compression level from 9 to 5.
- CESDK: Alter export return from Promise<Blob[]> to Promise<{ blobs: Blob[], options: EncodeOptions }>.
- CESDK: Shadow DOM UI encapsulation to prevent style bleeding
Non Breaking Changes
- CESDK: Display style of first character in selection when text is selected (instead of always style of the character before the cursor)
- UBQ: Fix line resize handles being rendered wrong occasionally
- UBQ: Add default Description component to all design blocks
- CESDK/UBQ: Expose image encoding parameters for JPEG quality & PNG compression level
- CESDK: Enable Doodle, Hands and Emoji sticker packs by default
- CESDK: Update CanvasActions misaligned paddings
- CESDK: Wire config.assets & config.presets.images
- CESDK: Refactor initialization to untangle dependencies
- CESDK: Add improved LineRenderer (better angled lines, no disappearing sub-pixel lines)
- CESDK: Decrease minimal line-width
- CESDK: Introduce RasterizedDesignBlocksRenderer and refactor CESDKImage to use it
- CESDK: Add Copy/Paste functionality
- CESDK: Add Stack design block
- CESDK: Move from manual to automatic page layouting
- CESDK: Wire config.presets.typefaces
- CESDK: Add design token CSS custom property for disabled opacity value
- CESDK: Remove unused design tokens regarding disabled input state
- CESDK: Page Dimension Aspect Ratio Lock is now saved in Scene.
- CESDK/UBQ: Implement frame flipping for all elements
- UBQ: Add basic SVG support to the image element
v1.0.0 – August 18th, 2021#
Breaking Changes
- UBQ: Migrate to flexbox-based layouting
designElements
are now serialized withbase_props_version
6block_position
is now a struct with four values:json "block_position": { "version": 1, "left": { "version": 1, "unit": 1, "value": 18.0 }, "top": { "version": 1, "unit": 1, "value": 16.5 }, "right": { "version": 1, "unit": 0, "value": 0.0 }, "bottom": { "version": 1, "unit": 0, "value": 0.0 } }
- Each value is a
LayoutValue
, whereunit
encodes whether it is anundefined
,design unit
,percent
orauto
- The example is therefore positioned 18 design units from the left & 16.5 design units from the top, right and bottom are undefined and therefore ignored
- Each value is a
block_dimensions
is nowblock_size
:json "block_size": { "version": 1, "width": { "version": 1, "unit": 1, "value": 43.08553695678711 }, "height": { "version": 1, "unit": 1, "value": 64.61538696289063 } }
- Consists of two
LayoutValue
s encoding this elements size in either absolute design units, percent values relative to its parent orauto
for auto sizing
- Consists of two
- The third dimensions,
z-index
&depth
have moved into their own attributesblock_z_index
&block_depth
along withhas_block_z_index
&has_block_depth
. They just consist offloat
values.
- CESDK: Made the initialization process more robust when dealing with large scenes.
CESDK::load
is now an async endpoint returning aPromise<void>
that fulfills when the scene was loaded. - CESDK: Remove styled-components dependency
- CESDK: Changed location of .wasm, .data, *.js files as well as the fonts and extension packs
- CESDK: Added default font configuration (set
defaultFont: '//ly.img.cesdk.fonts/roboto_regular'
for the previous default. This needs the font extension pack installed) - CESDK: If
fontPath
is not specified it defaults to assetPath + 'fonts/' instead of just 'fonts/' - CESDK: Changed package name to @cesdk/cesdk-js
- CESDK: Scale the text font proportionally when resizing a text element via its corner handles
- CESDK: Create Text elements with auto height mode enabled
- CESDK: Change 'Editor' role to 'Adopter'
- CESDK: Element scopes are now false by default. Adopters therefore won't be able to interact with any element added by a 'Creator' user, unless the creator has manually enabled the corresponding scopes in the inspector.
- CESDK:
CESDK::save
is now asynchronous. - CESDK/UBQ:
CESDKScene
is now part ofUBQ
, but old//ly.img.cesdk/scene
IDs are mapped to//ly.img.ubq/scene
block. - CESDK/UBQ: Changes scene
format
to//ly.img.ubq/scene
, but still allows old format. Saving will create a scene file with the new format. - CESDK: Change token styling system and default themes
- CESDK: Remove all old and unused CSS custom properties
- CESDK: Add Text element option to hide lines outside of the frame
- CESDK: Add Text layouting option for long word per-character line-break option
- UBQ: Serializations are now base64 encoded
- CESDK: Renamed effects and switched to only showing effects which were registered as an asset
- CESDK: replace scene format selector
- CESDK: Remove react as peer depedency for
@cesdk/cesdk-js
- CESDK: Changed public API surface
- CESDK: draw fallback glyphs in text for codepoints that are not present in the font
- CESDK: Removed the
ly.img.cesdk.stickers.shapes
extension pack - UBQ: Cleared default paths of
CESDKVectorPath
&VectorPath
blocks - CESDK: Move
Molle
,Codystar
&Lobster
fonts intoly.img.cesdk.legacy-fonts
pack
Non Breaking Changes
- CESDK/UBQ: Do not show element handles while dragging
- CESDK: Made the initialization process more robust when dealing with large scenes
- UBQ: Fix positioning of circular progress bar
- CESDK: Add LayerList feature simple implementation with sorting and layer hide
- CESDK: Add auto-sized text elements
- CESDK: Fix bleed margin popover selected option styling
- UIKIT: Add
ListBox
component entirley based on existingSelect
component with only the list and options encapsulated - UBQ: Fix localized punctuation in number inputs
- UBQ: Fix number input up/down stepping
- UBQ: Fix movement of text input cursor
- UBQ: Fix stop propagation of Popover scroll events
- CESDK: Use regular cursor when move is not permitted on element
- UIKIT: Use
ListBox
insideLayerList
- CESDK: Don't render text variable select if there are no placeholers
- CESDK: Fix ghost image drag in elements library for emoticons
- CESDK: Bump to react@17.02 and react-dom@17.0.2
- CESDK: Move 'Add Page' button to the bottom of the canvas
- CESDK: Support multiple file upload
- UBQ: Add settings registry that allows registration per scheme & corresponding commands
- CESDK: Fix active inspector library selection
- CESDK: Added transform and text subinspectors
- CESDK: Update Library style
- CESDK: Move Effect- and Filter-Sliders into collapsible cards
- CESDK: Group 'Load', 'Save', 'Export' and 'Download' buttons in navigation
- CESDK: Add proper large ui mode
- CESDK: Fix margins on Buttons in ButtonGroup / SegmentedGroup
- CESDK: Add crop UI controls
- UBQ: Add crop commands to control crop from UI
- UBQ/CESDK: Add support for copy & paste of design elements
- CESDK: Add value labels to image sub inspectors
- CESDK: Add theme color CSS configurator to settings panel
- CESDK: fix bug where moving page up/down required two clicks
- CESDK: Fix Backend useScene hook not initializing properly
- CESDK: Add Zoom levels dropdown
- CESDK: Fix ListBox active selection state
- CESDK: Add template presets
- UBQ: Introduce various
xyzEnabled
props on designblocks to control properties without losing their state - CESDK: Add UI for
xyzEnabled
from sub inspector and a separate component - CESDK: Add
data-ubq-theme
anddata-ubq-scale
HTML attributes - CESDK: Add "Allow to select" scope to shape elments
- CESDK: Fix for unhelpful error message when measureImage fails du to a large file size
- CESDK: Fix number input not valid input to show last valid one
- CESDK:
init
returns promise which resolved if the engine is ready - UBQ: Add TextShapeCacheService to substantially increase performance when there's text in a scene
- CESDK: Add page move up and down to history
- CESDK: Move color change event emit to parent component
- CESDK: Build target is now ES2017 (supports async functions and object spreads natively)
- CESDK: Add new fonts & styles to
ly.img.cesdk.fonts
- CESDK: Add Outline to active Card item
- CESDK: Add asset settings
- CESDK: New default values for blur and shape outlines
- CESDK: Remvoe listbox overlay scrollbar
- CESDK: Add public typings to release folder
- CESDK: Disable crop area transform when arrange is disabled from constraints
- CESDK: Fix empty snapshot from crop sub inspector
- CESDK: Fix and adjust canvas scroll bars styles
- CESDK: Fix to allow transform handles on pages