@imgly/codesign-mcp 0.1.5 → 0.1.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +51 -1
- package/assets/docs/guide/SKILL.md +45 -53
- package/assets/docs/guide/animation/create/base.md +234 -243
- package/assets/docs/guide/animation/create/text.md +250 -231
- package/assets/docs/guide/animation/create.md +197 -231
- package/assets/docs/guide/animation/edit.md +196 -271
- package/assets/docs/guide/animation/types.md +182 -185
- package/assets/docs/guide/animation.md +9 -6
- package/assets/docs/guide/api/AssetAPI.md +7 -53
- package/assets/docs/guide/api/BlockAPI.md +725 -648
- package/assets/docs/guide/api/CreativeEngine.md +7 -16
- package/assets/docs/guide/api/EditorAPI.md +32 -93
- package/assets/docs/guide/api/EventAPI.md +1 -2
- package/assets/docs/guide/api/SceneAPI.md +47 -98
- package/assets/docs/guide/api/VariableAPI.md +1 -4
- package/assets/docs/guide/api/node/classes/assetapi.md +1090 -0
- package/assets/docs/guide/api/node/classes/blockapi.md +12965 -0
- package/assets/docs/guide/api/node/classes/creativeengine.md +319 -0
- package/assets/docs/guide/api/node/classes/editorapi.md +3417 -0
- package/assets/docs/guide/api/node/classes/engineactions.md +319 -0
- package/assets/docs/guide/api/node/classes/eventapi.md +56 -0
- package/assets/docs/guide/api/node/classes/sceneapi.md +1370 -0
- package/assets/docs/guide/api/node/classes/variableapi.md +143 -0
- package/assets/docs/guide/api/node/enumerations/compressionformat.md +23 -0
- package/assets/docs/guide/api/node/enumerations/compressionlevel.md +24 -0
- package/assets/docs/guide/api/node/functions/iscmykcolor.md +30 -0
- package/assets/docs/guide/api/node/functions/isrgbacolor.md +30 -0
- package/assets/docs/guide/api/node/functions/isspotcolor.md +30 -0
- package/assets/docs/guide/api/node/interfaces/addvideooptions.md +31 -0
- package/assets/docs/guide/api/node/interfaces/applyassetoptions.md +31 -0
- package/assets/docs/guide/api/node/interfaces/asset.md +30 -0
- package/assets/docs/guide/api/node/interfaces/assetbooleanproperty.md +25 -0
- package/assets/docs/guide/api/node/interfaces/assetcmykcolor.md +26 -0
- package/assets/docs/guide/api/node/interfaces/assetcolorproperty.md +25 -0
- package/assets/docs/guide/api/node/interfaces/assetcontentaspectratio.md +23 -0
- package/assets/docs/guide/api/node/interfaces/assetdefinition.md +31 -0
- package/assets/docs/guide/api/node/interfaces/assetenumproperty.md +26 -0
- package/assets/docs/guide/api/node/interfaces/assetfixedaspectratio.md +24 -0
- package/assets/docs/guide/api/node/interfaces/assetfixedsize.md +25 -0
- package/assets/docs/guide/api/node/interfaces/assetfreeaspectratio.md +22 -0
- package/assets/docs/guide/api/node/interfaces/assetnumberproperty.md +28 -0
- package/assets/docs/guide/api/node/interfaces/assetpayload.md +27 -0
- package/assets/docs/guide/api/node/interfaces/assetquerydata.md +32 -0
- package/assets/docs/guide/api/node/interfaces/assetresult.md +46 -0
- package/assets/docs/guide/api/node/interfaces/assetrgbcolor.md +25 -0
- package/assets/docs/guide/api/node/interfaces/assetsource.md +111 -0
- package/assets/docs/guide/api/node/interfaces/assetspotcolor.md +25 -0
- package/assets/docs/guide/api/node/interfaces/assetsqueryresult.md +31 -0
- package/assets/docs/guide/api/node/interfaces/assetstringproperty.md +25 -0
- package/assets/docs/guide/api/node/interfaces/assetstylepreset.md +39 -0
- package/assets/docs/guide/api/node/interfaces/assetstylepresetanimation.md +23 -0
- package/assets/docs/guide/api/node/interfaces/audiotrackinfo.md +32 -0
- package/assets/docs/guide/api/node/interfaces/blockevent.md +26 -0
- package/assets/docs/guide/api/node/interfaces/blockstateerror.md +26 -0
- package/assets/docs/guide/api/node/interfaces/blockstatepending.md +26 -0
- package/assets/docs/guide/api/node/interfaces/blockstateready.md +25 -0
- package/assets/docs/guide/api/node/interfaces/buffer.md +26 -0
- package/assets/docs/guide/api/node/interfaces/characterinkbox.md +29 -0
- package/assets/docs/guide/api/node/interfaces/cmykcolor.md +34 -0
- package/assets/docs/guide/api/node/interfaces/completeassetresult.md +46 -0
- package/assets/docs/guide/api/node/interfaces/configuration.md +38 -0
- package/assets/docs/guide/api/node/interfaces/dominantcolor.md +25 -0
- package/assets/docs/guide/api/node/interfaces/dominantcolorsoptions.md +23 -0
- package/assets/docs/guide/api/node/interfaces/engineactioninfo.md +24 -0
- package/assets/docs/guide/api/node/interfaces/engineactionsregistry.md +18 -0
- package/assets/docs/guide/api/node/interfaces/engineplugin.md +30 -0
- package/assets/docs/guide/api/node/interfaces/font.md +27 -0
- package/assets/docs/guide/api/node/interfaces/fontmetrics.md +32 -0
- package/assets/docs/guide/api/node/interfaces/gradientcolorstop.md +28 -0
- package/assets/docs/guide/api/node/interfaces/logger.md +39 -0
- package/assets/docs/guide/api/node/interfaces/pageduration.md +23 -0
- package/assets/docs/guide/api/node/interfaces/range.md +23 -0
- package/assets/docs/guide/api/node/interfaces/rgbacolor.md +32 -0
- package/assets/docs/guide/api/node/interfaces/rgbcolor.md +30 -0
- package/assets/docs/guide/api/node/interfaces/settings.md +126 -0
- package/assets/docs/guide/api/node/interfaces/size2.md +21 -0
- package/assets/docs/guide/api/node/interfaces/source.md +24 -0
- package/assets/docs/guide/api/node/interfaces/spotcolor.md +30 -0
- package/assets/docs/guide/api/node/interfaces/textdecorationconfig.md +31 -0
- package/assets/docs/guide/api/node/interfaces/textfontsizeoptions.md +24 -0
- package/assets/docs/guide/api/node/interfaces/textruninfo.md +33 -0
- package/assets/docs/guide/api/node/interfaces/transientresource.md +26 -0
- package/assets/docs/guide/api/node/interfaces/typeface.md +23 -0
- package/assets/docs/guide/api/node/interfaces/vec2.md +21 -0
- package/assets/docs/guide/api/node/interfaces/vec3.md +22 -0
- package/assets/docs/guide/api/node/type-aliases/addimageoptions.md +36 -0
- package/assets/docs/guide/api/node/type-aliases/animationbaselinedirection.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/animationblockswipetextdirection.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/animationeasing.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/animationentry.md +28 -0
- package/assets/docs/guide/api/node/type-aliases/animationgrowdirection.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/animationjumploopdirection.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/animationkenburnsdirection.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/animationmergetextdirection.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/animationoptions.md +28 -0
- package/assets/docs/guide/api/node/type-aliases/animationspindirection.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/animationspinloopdirection.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/animationtype.md +24 -0
- package/assets/docs/guide/api/node/type-aliases/animationtypelonghand.md +21 -0
- package/assets/docs/guide/api/node/type-aliases/animationtypeshorthand.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/animationtypewritertextwritingstyle.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/animationwipedirection.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/applicationmimetype.md +20 -0
- package/assets/docs/guide/api/node/type-aliases/assetcolor.md +23 -0
- package/assets/docs/guide/api/node/type-aliases/assetfilter.md +47 -0
- package/assets/docs/guide/api/node/type-aliases/assetgroups.md +25 -0
- package/assets/docs/guide/api/node/type-aliases/assetmetadata.md +42 -0
- package/assets/docs/guide/api/node/type-aliases/assetproperty.md +25 -0
- package/assets/docs/guide/api/node/type-aliases/assetpropertyfilter.md +41 -0
- package/assets/docs/guide/api/node/type-aliases/assetpropertypath.md +26 -0
- package/assets/docs/guide/api/node/type-aliases/assetstylepresetanimationproperties.md +34 -0
- package/assets/docs/guide/api/node/type-aliases/assetstylepresetproperties.md +29 -0
- package/assets/docs/guide/api/node/type-aliases/assetstylepresetpropertyvalue.md +29 -0
- package/assets/docs/guide/api/node/type-aliases/assetstylepresetscalableproperty.md +28 -0
- package/assets/docs/guide/api/node/type-aliases/assettransformpreset.md +24 -0
- package/assets/docs/guide/api/node/type-aliases/asyncuriresolver.md +36 -0
- package/assets/docs/guide/api/node/type-aliases/audioexportoptions.md +43 -0
- package/assets/docs/guide/api/node/type-aliases/audiofromvideooptions.md +27 -0
- package/assets/docs/guide/api/node/type-aliases/audiomimetype.md +20 -0
- package/assets/docs/guide/api/node/type-aliases/blendmode.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/blockenumtype.md +63 -0
- package/assets/docs/guide/api/node/type-aliases/blockstate.md +26 -0
- package/assets/docs/guide/api/node/type-aliases/blurtype.md +24 -0
- package/assets/docs/guide/api/node/type-aliases/blurtypelonghand.md +21 -0
- package/assets/docs/guide/api/node/type-aliases/blurtypeshorthand.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/booleanoperation.md +27 -0
- package/assets/docs/guide/api/node/type-aliases/boolpropertyname.md +79 -0
- package/assets/docs/guide/api/node/type-aliases/cameraclampingovershootmode.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/captionhorizontalalignment.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/captionverticalalignment.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/cmyk.md +23 -0
- package/assets/docs/guide/api/node/type-aliases/color.md +23 -0
- package/assets/docs/guide/api/node/type-aliases/colorpickercolormode.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/colorpropertyname.md +31 -0
- package/assets/docs/guide/api/node/type-aliases/colorspace.md +20 -0
- package/assets/docs/guide/api/node/type-aliases/contentfillmode.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/controlgizmomovehandlevisibility.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/controlgizmoresizehandlesvisibility.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/controlgizmorotatehandlesvisibility.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/controlgizmoscalehandlesvisibility.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/createsceneoptions.md +30 -0
- package/assets/docs/guide/api/node/type-aliases/cutoutoperation.md +20 -0
- package/assets/docs/guide/api/node/type-aliases/cutouttype.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/defaultassetsourceid.md +37 -0
- package/assets/docs/guide/api/node/type-aliases/demoassetsourceid.md +33 -0
- package/assets/docs/guide/api/node/type-aliases/designblockid.md +20 -0
- package/assets/docs/guide/api/node/type-aliases/designblocktype.md +24 -0
- package/assets/docs/guide/api/node/type-aliases/designblocktypelonghand.md +21 -0
- package/assets/docs/guide/api/node/type-aliases/designblocktypeshorthand.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/designunit.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/doubleclickselectionmode.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/doublepropertyname.md +26 -0
- package/assets/docs/guide/api/node/type-aliases/dropshadowoptions.md +32 -0
- package/assets/docs/guide/api/node/type-aliases/editmode.md +27 -0
- package/assets/docs/guide/api/node/type-aliases/effecttype.md +24 -0
- package/assets/docs/guide/api/node/type-aliases/effecttypelonghand.md +21 -0
- package/assets/docs/guide/api/node/type-aliases/effecttypeshorthand.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/engineactionid.md +20 -0
- package/assets/docs/guide/api/node/type-aliases/enginecustomactionfunction.md +30 -0
- package/assets/docs/guide/api/node/type-aliases/engineplugincontext.md +30 -0
- package/assets/docs/guide/api/node/type-aliases/enumpropertyname.md +59 -0
- package/assets/docs/guide/api/node/type-aliases/enumvalues.md +59 -0
- package/assets/docs/guide/api/node/type-aliases/exportoptions.md +57 -0
- package/assets/docs/guide/api/node/type-aliases/fillpixelstreamorientation.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/filltype.md +24 -0
- package/assets/docs/guide/api/node/type-aliases/filltypelonghand.md +21 -0
- package/assets/docs/guide/api/node/type-aliases/filltypeshorthand.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/floatpropertyname.md +184 -0
- package/assets/docs/guide/api/node/type-aliases/fontsizeunit.md +23 -0
- package/assets/docs/guide/api/node/type-aliases/fontstyle.md +20 -0
- package/assets/docs/guide/api/node/type-aliases/fontweight.md +30 -0
- package/assets/docs/guide/api/node/type-aliases/gradientstoprgba.md +23 -0
- package/assets/docs/guide/api/node/type-aliases/heightmode.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/hexcolorstring.md +20 -0
- package/assets/docs/guide/api/node/type-aliases/historyid.md +20 -0
- package/assets/docs/guide/api/node/type-aliases/historyupdate.md +25 -0
- package/assets/docs/guide/api/node/type-aliases/horizontalblockalignment.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/horizontalcontentfillalignment.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/horizontaltextalignment.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/imagemimetype.md +25 -0
- package/assets/docs/guide/api/node/type-aliases/intpropertyname.md +26 -0
- package/assets/docs/guide/api/node/type-aliases/liststyle.md +20 -0
- package/assets/docs/guide/api/node/type-aliases/locale.md +20 -0
- package/assets/docs/guide/api/node/type-aliases/loglevel.md +24 -0
- package/assets/docs/guide/api/node/type-aliases/mimetype.md +20 -0
- package/assets/docs/guide/api/node/type-aliases/objecttype.md +24 -0
- package/assets/docs/guide/api/node/type-aliases/objecttypelonghand.md +27 -0
- package/assets/docs/guide/api/node/type-aliases/objecttypeshorthand.md +27 -0
- package/assets/docs/guide/api/node/type-aliases/optionalprefix.md +24 -0
- package/assets/docs/guide/api/node/type-aliases/pageguidessource.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/palettecolor.md +24 -0
- package/assets/docs/guide/api/node/type-aliases/positionmode.md +20 -0
- package/assets/docs/guide/api/node/type-aliases/positionxmode.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/positionymode.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/propertytype.md +31 -0
- package/assets/docs/guide/api/node/type-aliases/rgba.md +23 -0
- package/assets/docs/guide/api/node/type-aliases/rolestring.md +23 -0
- package/assets/docs/guide/api/node/type-aliases/scenefontsizeunit.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/scenelayout.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/scenemode.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/scope.md +50 -0
- package/assets/docs/guide/api/node/type-aliases/settingboolpropertyname.md +62 -0
- package/assets/docs/guide/api/node/type-aliases/settingcolorpropertyname.md +38 -0
- package/assets/docs/guide/api/node/type-aliases/settingenumpropertyname.md +29 -0
- package/assets/docs/guide/api/node/type-aliases/settingenumtype.md +33 -0
- package/assets/docs/guide/api/node/type-aliases/settingenumvalues.md +29 -0
- package/assets/docs/guide/api/node/type-aliases/settingfloatpropertyname.md +25 -0
- package/assets/docs/guide/api/node/type-aliases/settingintpropertyname.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/settingkey.md +20 -0
- package/assets/docs/guide/api/node/type-aliases/settingsbool.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/settingscolor.md +20 -0
- package/assets/docs/guide/api/node/type-aliases/settingscolorrgba.md +24 -0
- package/assets/docs/guide/api/node/type-aliases/settingsenum.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/settingsfloat.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/settingsint.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/settingsstring.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/settingstringpropertyname.md +28 -0
- package/assets/docs/guide/api/node/type-aliases/settingtype.md +20 -0
- package/assets/docs/guide/api/node/type-aliases/settingvaluetype.md +26 -0
- package/assets/docs/guide/api/node/type-aliases/shapetype.md +24 -0
- package/assets/docs/guide/api/node/type-aliases/shapetypelonghand.md +21 -0
- package/assets/docs/guide/api/node/type-aliases/shapetypeshorthand.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/shapevectorpathfillrule.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/sizemode.md +20 -0
- package/assets/docs/guide/api/node/type-aliases/sortingorder.md +21 -0
- package/assets/docs/guide/api/node/type-aliases/sourcesetpropertyname.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/splitoptions.md +28 -0
- package/assets/docs/guide/api/node/type-aliases/stringpropertyname.md +43 -0
- package/assets/docs/guide/api/node/type-aliases/strokecap.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/strokecornergeometry.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/strokedashendcap.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/strokedashstartcap.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/strokeendcap.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/strokeposition.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/strokestartcap.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/strokestyle.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/syncuriresolver.md +31 -0
- package/assets/docs/guide/api/node/type-aliases/textanimationwritingstyle.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/textcase.md +20 -0
- package/assets/docs/guide/api/node/type-aliases/textdecorationline.md +27 -0
- package/assets/docs/guide/api/node/type-aliases/textdecorationstyle.md +26 -0
- package/assets/docs/guide/api/node/type-aliases/textverticalalignment.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/timelinetrackvisibility.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/touchpinchaction.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/touchrotateaction.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/typefacedefinition.md +41 -0
- package/assets/docs/guide/api/node/type-aliases/verticalblockalignment.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/verticalcontentfillalignment.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/videoexportoptions.md +54 -0
- package/assets/docs/guide/api/node/type-aliases/videomimetype.md +20 -0
- package/assets/docs/guide/api/node/type-aliases/widthmode.md +18 -0
- package/assets/docs/guide/api/node/type-aliases/xywh.md +23 -0
- package/assets/docs/guide/api/node/type-aliases/zoomautofitaxis.md +20 -0
- package/assets/docs/guide/api/node/type-aliases/zoomoptions.md +27 -0
- package/assets/docs/guide/api/node/variables/animation_types.md +21 -0
- package/assets/docs/guide/api/node/variables/animationbaselinedirectionvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/animationblockswipetextdirectionvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/animationeasingvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/animationgrowdirectionvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/animationjumploopdirectionvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/animationkenburnsdirectionvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/animationmergetextdirectionvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/animationspindirectionvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/animationspinloopdirectionvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/animationtypewritertextwritingstylevalues.md +18 -0
- package/assets/docs/guide/api/node/variables/animationwipedirectionvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/blendmodevalues.md +18 -0
- package/assets/docs/guide/api/node/variables/blur_types.md +21 -0
- package/assets/docs/guide/api/node/variables/cameraclampingovershootmodevalues.md +18 -0
- package/assets/docs/guide/api/node/variables/captionhorizontalalignmentvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/captionverticalalignmentvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/colorpickercolormodevalues.md +18 -0
- package/assets/docs/guide/api/node/variables/contentfillmodevalues.md +18 -0
- package/assets/docs/guide/api/node/variables/controlgizmomovehandlevisibilityvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/controlgizmoresizehandlesvisibilityvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/controlgizmorotatehandlesvisibilityvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/controlgizmoscalehandlesvisibilityvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/cutouttypevalues.md +18 -0
- package/assets/docs/guide/api/node/variables/design_block_types.md +21 -0
- package/assets/docs/guide/api/node/variables/doubleclickselectionmodevalues.md +18 -0
- package/assets/docs/guide/api/node/variables/effect_types.md +21 -0
- package/assets/docs/guide/api/node/variables/fill_types.md +21 -0
- package/assets/docs/guide/api/node/variables/fillpixelstreamorientationvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/heightmodevalues.md +18 -0
- package/assets/docs/guide/api/node/variables/horizontalcontentfillalignmentvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/loglevel.md +37 -0
- package/assets/docs/guide/api/node/variables/mimetype.md +41 -0
- package/assets/docs/guide/api/node/variables/pageguidessourcevalues.md +18 -0
- package/assets/docs/guide/api/node/variables/positionxmodevalues.md +18 -0
- package/assets/docs/guide/api/node/variables/positionymodevalues.md +18 -0
- package/assets/docs/guide/api/node/variables/scenedesignunitvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/scenefontsizeunitvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/scenelayoutvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/scenemodevalues.md +18 -0
- package/assets/docs/guide/api/node/variables/shape_types.md +21 -0
- package/assets/docs/guide/api/node/variables/shapevectorpathfillrulevalues.md +18 -0
- package/assets/docs/guide/api/node/variables/strokecapvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/strokecornergeometryvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/strokedashendcapvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/strokedashstartcapvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/strokeendcapvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/strokepositionvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/strokestartcapvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/strokestylevalues.md +18 -0
- package/assets/docs/guide/api/node/variables/textanimationwritingstylevalues.md +18 -0
- package/assets/docs/guide/api/node/variables/texthorizontalalignmentvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/textverticalalignmentvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/timelinetrackvisibilityvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/touchpinchactionvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/touchrotateactionvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/verticalcontentfillalignmentvalues.md +18 -0
- package/assets/docs/guide/api/node/variables/widthmodevalues.md +18 -0
- package/assets/docs/guide/api/types.md +5 -9
- package/assets/docs/guide/api-reference/overview.md +7 -7
- package/assets/docs/guide/automation/auto-resize.md +263 -300
- package/assets/docs/guide/automation/data-merge.md +246 -275
- package/assets/docs/guide/automation/design-generation.md +102 -31
- package/assets/docs/guide/automation/multi-image-generation.md +758 -0
- package/assets/docs/guide/automation/overview.md +21 -4
- package/assets/docs/guide/automation.md +10 -5
- package/assets/docs/guide/capabilities.md +6 -4
- package/assets/docs/guide/colors/adjust.md +247 -249
- package/assets/docs/guide/colors/apply.md +127 -138
- package/assets/docs/guide/colors/basics.md +126 -150
- package/assets/docs/guide/colors/conversion.md +171 -177
- package/assets/docs/guide/colors/create-color-palette.md +244 -245
- package/assets/docs/guide/colors/extract-colors.md +144 -0
- package/assets/docs/guide/colors/for-print/cmyk.md +292 -352
- package/assets/docs/guide/colors/for-print/spot.md +521 -578
- package/assets/docs/guide/colors/for-print.md +9 -4
- package/assets/docs/guide/colors/for-screen/p3.md +12 -10
- package/assets/docs/guide/colors/for-screen/srgb.md +107 -133
- package/assets/docs/guide/colors/for-screen.md +9 -4
- package/assets/docs/guide/colors/overview.md +6 -4
- package/assets/docs/guide/colors/replace.md +381 -419
- package/assets/docs/guide/colors.md +9 -4
- package/assets/docs/guide/compatibility.md +7 -5
- package/assets/docs/guide/concepts/architecture.md +17 -15
- package/assets/docs/guide/concepts/assets.md +152 -140
- package/assets/docs/guide/concepts/blocks.md +227 -323
- package/assets/docs/guide/concepts/buffers.md +147 -276
- package/assets/docs/guide/concepts/design-units.md +95 -145
- package/assets/docs/guide/concepts/editing-workflow.md +69 -183
- package/assets/docs/guide/concepts/events.md +80 -122
- package/assets/docs/guide/concepts/headless-mode.md +237 -0
- package/assets/docs/guide/concepts/pages.md +137 -127
- package/assets/docs/guide/concepts/resources.md +156 -217
- package/assets/docs/guide/concepts/scenes.md +191 -210
- package/assets/docs/guide/concepts/templating.md +118 -74
- package/assets/docs/guide/concepts/terminology.md +49 -47
- package/assets/docs/guide/concepts/undo-and-history.md +229 -303
- package/assets/docs/guide/concepts.md +9 -7
- package/assets/docs/guide/configuration.md +252 -380
- package/assets/docs/guide/conversion/overview.md +33 -4
- package/assets/docs/guide/conversion/to-base64.md +127 -167
- package/assets/docs/guide/conversion/to-pdf.md +24 -474
- package/assets/docs/guide/conversion/to-png.md +168 -211
- package/assets/docs/guide/conversion.md +9 -4
- package/assets/docs/guide/create-audio/audio/add-music.md +301 -327
- package/assets/docs/guide/create-audio/audio/add-sound-effects.md +475 -359
- package/assets/docs/guide/create-audio/audio/loop.md +232 -272
- package/assets/docs/guide/create-composition/add-background.md +237 -239
- package/assets/docs/guide/create-composition/blend-modes.md +118 -209
- package/assets/docs/guide/create-composition/collage.md +538 -320
- package/assets/docs/guide/create-composition/group-and-ungroup.md +216 -261
- package/assets/docs/guide/create-composition/layer-management.md +219 -257
- package/assets/docs/guide/create-composition/layout.md +513 -315
- package/assets/docs/guide/create-composition/lock-design.md +90 -109
- package/assets/docs/guide/create-composition/multi-page.md +133 -113
- package/assets/docs/guide/create-composition/overview.md +16 -4
- package/assets/docs/guide/create-composition/programmatic.md +288 -344
- package/assets/docs/guide/create-composition.md +10 -5
- package/assets/docs/guide/create-templates/add-dynamic-content/placeholders.md +443 -569
- package/assets/docs/guide/create-templates/add-dynamic-content/set-editing-constraints.md +567 -470
- package/assets/docs/guide/create-templates/add-dynamic-content/text-variables.md +179 -516
- package/assets/docs/guide/create-templates/add-dynamic-content.md +226 -224
- package/assets/docs/guide/create-templates/add-to-template-library.md +183 -193
- package/assets/docs/guide/create-templates/edit-or-remove.md +297 -303
- package/assets/docs/guide/create-templates/from-scratch.md +207 -268
- package/assets/docs/guide/create-templates/import/from-scene-file.md +158 -236
- package/assets/docs/guide/create-templates/import.md +145 -161
- package/assets/docs/guide/create-templates/lock.md +42 -295
- package/assets/docs/guide/create-templates/overview.md +33 -4
- package/assets/docs/guide/create-templates.md +9 -5
- package/assets/docs/guide/create-video/audio/adjust-speed.md +157 -207
- package/assets/docs/guide/create-video/audio/adjust-volume.md +116 -227
- package/assets/docs/guide/create-video/control.md +352 -193
- package/assets/docs/guide/create-video/limitations.md +175 -280
- package/assets/docs/guide/create-video.md +11 -10
- package/assets/docs/guide/edit-image/add-watermark.md +283 -330
- package/assets/docs/guide/edit-image/overview.md +29 -4
- package/assets/docs/guide/edit-image/remove-bg.md +283 -337
- package/assets/docs/guide/edit-image/replace-colors.md +424 -502
- package/assets/docs/guide/edit-image/transform/crop.md +463 -402
- package/assets/docs/guide/edit-image/transform/flip.md +353 -0
- package/assets/docs/guide/edit-image/transform/move.md +143 -100
- package/assets/docs/guide/edit-image/transform/resize.md +118 -88
- package/assets/docs/guide/edit-image/transform/rotate.md +132 -165
- package/assets/docs/guide/edit-image/transform/scale.md +230 -228
- package/assets/docs/guide/edit-image/transform.md +10 -5
- package/assets/docs/guide/edit-image.md +11 -7
- package/assets/docs/guide/edit-video/add-captions.md +344 -421
- package/assets/docs/guide/edit-video/add-watermark.md +312 -258
- package/assets/docs/guide/edit-video/join-and-arrange.md +237 -371
- package/assets/docs/guide/edit-video/redaction.md +419 -385
- package/assets/docs/guide/edit-video/split.md +243 -493
- package/assets/docs/guide/edit-video/transform/crop.md +21 -352
- package/assets/docs/guide/edit-video/transform/flip.md +102 -76
- package/assets/docs/guide/edit-video/transform/move.md +258 -310
- package/assets/docs/guide/edit-video/transform/resize.md +264 -428
- package/assets/docs/guide/edit-video/transform/rotate.md +265 -228
- package/assets/docs/guide/edit-video/transform/scale.md +320 -417
- package/assets/docs/guide/edit-video/transform.md +10 -6
- package/assets/docs/guide/edit-video/trim.md +448 -494
- package/assets/docs/guide/engine-interface.md +51 -62
- package/assets/docs/guide/export-save-publish/create-thumbnail.md +148 -184
- package/assets/docs/guide/export-save-publish/export/compress.md +161 -559
- package/assets/docs/guide/export-save-publish/export/overview.md +224 -373
- package/assets/docs/guide/export-save-publish/export/partial-export.md +386 -577
- package/assets/docs/guide/export-save-publish/export/size-limits.md +215 -310
- package/assets/docs/guide/export-save-publish/export/to-jpeg.md +132 -213
- package/assets/docs/guide/export-save-publish/export/to-pdf.md +139 -267
- package/assets/docs/guide/export-save-publish/export/to-png.md +121 -165
- package/assets/docs/guide/export-save-publish/export/to-raw-data.md +187 -234
- package/assets/docs/guide/export-save-publish/export/to-webp.md +160 -190
- package/assets/docs/guide/export-save-publish/export/with-color-mask.md +359 -203
- package/assets/docs/guide/export-save-publish/export.md +14 -11
- package/assets/docs/guide/export-save-publish/for-printing.md +141 -237
- package/assets/docs/guide/export-save-publish/for-social-media.md +124 -261
- package/assets/docs/guide/export-save-publish/pre-export-validation.md +436 -522
- package/assets/docs/guide/export-save-publish/save.md +167 -226
- package/assets/docs/guide/export-save-publish/store-custom-metadata.md +97 -162
- package/assets/docs/guide/file-format-support.md +9 -9
- package/assets/docs/guide/fills/color.md +370 -347
- package/assets/docs/guide/fills/image.md +167 -196
- package/assets/docs/guide/fills/overview.md +6 -4
- package/assets/docs/guide/fills/video.md +286 -438
- package/assets/docs/guide/fills.md +12 -8
- package/assets/docs/guide/filters-and-effects/apply.md +598 -664
- package/assets/docs/guide/filters-and-effects/blur.md +261 -159
- package/assets/docs/guide/filters-and-effects/chroma-key-green-screen.md +194 -293
- package/assets/docs/guide/filters-and-effects/create-custom-filters.md +548 -466
- package/assets/docs/guide/filters-and-effects/create-custom-lut-filter.md +176 -244
- package/assets/docs/guide/filters-and-effects/distortion.md +317 -384
- package/assets/docs/guide/filters-and-effects/duotone.md +221 -217
- package/assets/docs/guide/filters-and-effects/gradients.md +670 -813
- package/assets/docs/guide/filters-and-effects/overview.md +7 -7
- package/assets/docs/guide/filters-and-effects/support.md +97 -132
- package/assets/docs/guide/filters-and-effects.md +11 -6
- package/assets/docs/guide/get-started/agent-skills.md +20 -18
- package/assets/docs/guide/get-started/build-with-ai.md +7 -4
- package/assets/docs/guide/get-started/bun.md +219 -0
- package/assets/docs/guide/get-started/deno.md +161 -0
- package/assets/docs/guide/get-started/mcp-server.md +6 -4
- package/assets/docs/guide/get-started/overview.md +11 -6
- package/assets/docs/guide/get-started/vanilla-aws-lambda.md +506 -0
- package/assets/docs/guide/get-started/vanilla-clone-github-project.md +124 -0
- package/assets/docs/guide/get-started/vanilla.md +235 -0
- package/assets/docs/guide/guides/export-save-publish/export/audio.md +80 -66
- package/assets/docs/guide/guides.md +10 -9
- package/assets/docs/guide/import-media/asset-panel/refresh-assets.md +259 -288
- package/assets/docs/guide/import-media/concepts.md +20 -38
- package/assets/docs/guide/import-media/content-json-schema.md +145 -125
- package/assets/docs/guide/import-media/default-assets.md +113 -161
- package/assets/docs/guide/import-media/edit-or-remove-assets.md +391 -395
- package/assets/docs/guide/import-media/file-format-support.md +78 -61
- package/assets/docs/guide/import-media/from-remote-source/asset-versioning.md +273 -244
- package/assets/docs/guide/import-media/from-remote-source/remote-asset.md +152 -222
- package/assets/docs/guide/import-media/from-remote-source.md +9 -11
- package/assets/docs/guide/import-media/overview.md +5 -5
- package/assets/docs/guide/import-media/retrieve-mimetype.md +216 -108
- package/assets/docs/guide/import-media/size-limits.md +6 -4
- package/assets/docs/guide/import-media/source-sets.md +190 -251
- package/assets/docs/guide/import-media.md +10 -8
- package/assets/docs/guide/insert-media/audio.md +202 -195
- package/assets/docs/guide/insert-media/images.md +190 -188
- package/assets/docs/guide/insert-media/position-and-align.md +284 -551
- package/assets/docs/guide/insert-media/shapes-or-stickers.md +402 -418
- package/assets/docs/guide/insert-media/videos.md +236 -203
- package/assets/docs/guide/insert-media.md +10 -5
- package/assets/docs/guide/key-capabilities.md +36 -4
- package/assets/docs/guide/key-concepts.md +6 -4
- package/assets/docs/guide/licensing.md +6 -4
- package/assets/docs/guide/llms-txt.md +11 -7
- package/assets/docs/guide/open-the-editor/blank-canvas.md +102 -63
- package/assets/docs/guide/open-the-editor/from-image.md +157 -127
- package/assets/docs/guide/open-the-editor/from-template.md +131 -92
- package/assets/docs/guide/open-the-editor/from-video.md +204 -212
- package/assets/docs/guide/open-the-editor/import-design/from-archive.md +310 -360
- package/assets/docs/guide/open-the-editor/import-design/from-indesign.md +716 -513
- package/assets/docs/guide/open-the-editor/import-design/from-photoshop.md +667 -695
- package/assets/docs/guide/open-the-editor/import-design.md +228 -266
- package/assets/docs/guide/open-the-editor/load-scene.md +72 -68
- package/assets/docs/guide/open-the-editor/overview.md +6 -4
- package/assets/docs/guide/open-the-editor/uri-resolver.md +160 -251
- package/assets/docs/guide/open-the-editor.md +11 -9
- package/assets/docs/guide/outlines/overview.md +12 -4
- package/assets/docs/guide/outlines/shadows-and-glows.md +105 -410
- package/assets/docs/guide/outlines/strokes.md +218 -166
- package/assets/docs/guide/outlines.md +9 -4
- package/assets/docs/guide/overview.md +14 -6
- package/assets/docs/guide/performance.md +220 -113
- package/assets/docs/guide/plugins/print-ready-pdf.md +273 -368
- package/assets/docs/guide/plugins.md +10 -16
- package/assets/docs/guide/rules/asset-handling.md +7 -18
- package/assets/docs/guide/rules/common-pitfalls.md +25 -42
- package/assets/docs/guide/rules/content-fill-mode.md +4 -4
- package/assets/docs/guide/rules/enforce-brand-guidelines.md +398 -567
- package/assets/docs/guide/rules/lock-content.md +188 -231
- package/assets/docs/guide/rules/moderate-content.md +580 -571
- package/assets/docs/guide/rules/overview.md +345 -380
- package/assets/docs/guide/rules/silent-init-errors.md +4 -1
- package/assets/docs/guide/rules/verify-properties-before-use.md +2 -11
- package/assets/docs/guide/rules.md +10 -5
- package/assets/docs/guide/security.md +7 -5
- package/assets/docs/guide/serve-assets.md +57 -284
- package/assets/docs/guide/settings.md +96 -74
- package/assets/docs/guide/shapes.md +10 -5
- package/assets/docs/guide/stickers-and-shapes/combine.md +397 -583
- package/assets/docs/guide/stickers-and-shapes/create-cutout.md +181 -268
- package/assets/docs/guide/stickers-and-shapes/create-edit/create-shapes.md +418 -431
- package/assets/docs/guide/stickers-and-shapes/create-edit/create-stickers.md +147 -226
- package/assets/docs/guide/stickers-and-shapes/create-edit/edit-shapes.md +138 -123
- package/assets/docs/guide/stickers-and-shapes/insert-qr-code.md +151 -149
- package/assets/docs/guide/stickers.md +9 -4
- package/assets/docs/guide/text/add.md +470 -482
- package/assets/docs/guide/text/adjust-spacing.md +179 -214
- package/assets/docs/guide/text/auto-size.md +210 -271
- package/assets/docs/guide/text/edit.md +294 -309
- package/assets/docs/guide/text/effects.md +154 -190
- package/assets/docs/guide/text/emojis.md +199 -232
- package/assets/docs/guide/text/language-support.md +369 -382
- package/assets/docs/guide/text/overview.md +41 -4
- package/assets/docs/guide/text/styling.md +239 -273
- package/assets/docs/guide/text/text-designs.md +405 -544
- package/assets/docs/guide/text.md +10 -9
- package/assets/docs/guide/to-v1-19.md +12 -10
- package/assets/docs/guide/upgrade.md +8 -9
- package/assets/docs/guide/use-templates/apply-template.md +174 -163
- package/assets/docs/guide/use-templates/generate.md +171 -152
- package/assets/docs/guide/use-templates/overview.md +32 -4
- package/assets/docs/guide/use-templates/programmatic.md +266 -301
- package/assets/docs/guide/use-templates/replace-content.md +181 -171
- package/assets/docs/guide/what-is-cesdk.md +71 -282
- package/assets/docs/handbook/SKILL.md +24 -0
- package/dist/assets/inline.generated.d.ts.map +1 -1
- package/dist/assets/inline.generated.js +544 -406
- package/dist/assets/inline.generated.js.map +1 -1
- package/dist/assets/load-browser.d.ts +1 -1
- package/dist/assets/load-browser.js +1 -1
- package/dist/assets/load-browser.js.map +1 -1
- package/dist/assets/load-node.d.ts +1 -1
- package/dist/assets/load-node.js +1 -1
- package/dist/assets/load-node.js.map +1 -1
- package/dist/cli/http.d.ts.map +1 -1
- package/dist/cli/http.js +4 -28
- package/dist/cli/http.js.map +1 -1
- package/dist/cli/redirect-console.d.ts +1 -1
- package/dist/cli/redirect-console.d.ts.map +1 -1
- package/dist/cli/redirect-console.js +12 -3
- package/dist/cli/redirect-console.js.map +1 -1
- package/dist/cli/resolve-license.d.ts.map +1 -1
- package/dist/cli/resolve-license.js +8 -6
- package/dist/cli/resolve-license.js.map +1 -1
- package/dist/cli/stdio.d.ts +9 -0
- package/dist/cli/stdio.d.ts.map +1 -1
- package/dist/cli/stdio.js +48 -4
- package/dist/cli/stdio.js.map +1 -1
- package/dist/cli.js +10 -1
- package/dist/cli.js.map +1 -1
- package/dist/config.d.ts +11 -2
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +20 -1
- package/dist/config.js.map +1 -1
- package/dist/diagnostics/bundle.d.ts +10 -0
- package/dist/diagnostics/bundle.d.ts.map +1 -0
- package/dist/diagnostics/bundle.js +148 -0
- package/dist/diagnostics/bundle.js.map +1 -0
- package/dist/diagnostics/compose.d.ts +3 -0
- package/dist/diagnostics/compose.d.ts.map +1 -0
- package/dist/diagnostics/compose.js +15 -0
- package/dist/diagnostics/compose.js.map +1 -0
- package/dist/diagnostics/events.d.ts +34 -0
- package/dist/diagnostics/events.d.ts.map +1 -0
- package/dist/diagnostics/events.js +3 -0
- package/dist/diagnostics/events.js.map +1 -0
- package/dist/diagnostics/file-sink.d.ts +38 -0
- package/dist/diagnostics/file-sink.d.ts.map +1 -0
- package/dist/diagnostics/file-sink.js +157 -0
- package/dist/diagnostics/file-sink.js.map +1 -0
- package/dist/diagnostics/redact.d.ts +7 -0
- package/dist/diagnostics/redact.d.ts.map +1 -0
- package/dist/diagnostics/redact.js +43 -0
- package/dist/diagnostics/redact.js.map +1 -0
- package/dist/diagnostics/tool-call-adapter.d.ts +4 -0
- package/dist/diagnostics/tool-call-adapter.d.ts.map +1 -0
- package/dist/diagnostics/tool-call-adapter.js +21 -0
- package/dist/diagnostics/tool-call-adapter.js.map +1 -0
- package/dist/engine/cesdk-adapter.d.ts +5 -1
- package/dist/engine/cesdk-adapter.d.ts.map +1 -1
- package/dist/engine/cesdk-adapter.js +9 -2
- package/dist/engine/cesdk-adapter.js.map +1 -1
- package/dist/engine/index.d.ts +1 -0
- package/dist/engine/index.d.ts.map +1 -1
- package/dist/engine/index.js +4 -0
- package/dist/engine/index.js.map +1 -1
- package/dist/engine/scene-resource-schemes.d.ts +2 -0
- package/dist/engine/scene-resource-schemes.d.ts.map +1 -0
- package/dist/engine/scene-resource-schemes.js +20 -0
- package/dist/engine/scene-resource-schemes.js.map +1 -0
- package/dist/http/server.d.ts +0 -6
- package/dist/http/server.d.ts.map +1 -1
- package/dist/http/server.js +1 -2
- package/dist/http/server.js.map +1 -1
- package/dist/server.d.ts +0 -4
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +4 -60
- package/dist/server.js.map +1 -1
- package/dist/test/scripts/changelog-add.d.ts +8 -0
- package/dist/test/scripts/changelog-add.d.ts.map +1 -0
- package/dist/test/scripts/changelog-add.js +50 -0
- package/dist/test/scripts/changelog-add.js.map +1 -0
- package/dist/test/scripts/changelog-collate.d.ts +38 -0
- package/dist/test/scripts/changelog-collate.d.ts.map +1 -0
- package/dist/test/scripts/changelog-collate.js +171 -0
- package/dist/test/scripts/changelog-collate.js.map +1 -0
- package/dist/test/test/changelog.test.d.ts +2 -0
- package/dist/test/test/changelog.test.d.ts.map +1 -0
- package/dist/test/test/changelog.test.js +293 -0
- package/dist/test/test/changelog.test.js.map +1 -0
- package/dist/test/test/cli/dispatcher.test.js +10 -3
- package/dist/test/test/cli/dispatcher.test.js.map +1 -1
- package/dist/test/test/cli/redirect-console.test.js +31 -0
- package/dist/test/test/cli/redirect-console.test.js.map +1 -1
- package/dist/test/test/cli/resolve-license.test.js +10 -1
- package/dist/test/test/cli/resolve-license.test.js.map +1 -1
- package/dist/test/test/cli/stdio-diagnostics.test.d.ts +2 -0
- package/dist/test/test/cli/stdio-diagnostics.test.d.ts.map +1 -0
- package/dist/test/test/cli/stdio-diagnostics.test.js +31 -0
- package/dist/test/test/cli/stdio-diagnostics.test.js.map +1 -0
- package/dist/test/test/config.test.js +17 -13
- package/dist/test/test/config.test.js.map +1 -1
- package/dist/test/test/diagnostics/bundle.test.d.ts +2 -0
- package/dist/test/test/diagnostics/bundle.test.d.ts.map +1 -0
- package/dist/test/test/diagnostics/bundle.test.js +53 -0
- package/dist/test/test/diagnostics/bundle.test.js.map +1 -0
- package/dist/test/test/diagnostics/compose.test.d.ts +2 -0
- package/dist/test/test/diagnostics/compose.test.d.ts.map +1 -0
- package/dist/test/test/diagnostics/compose.test.js +31 -0
- package/dist/test/test/diagnostics/compose.test.js.map +1 -0
- package/dist/test/test/diagnostics/file-sink.test.d.ts +2 -0
- package/dist/test/test/diagnostics/file-sink.test.d.ts.map +1 -0
- package/dist/test/test/diagnostics/file-sink.test.js +113 -0
- package/dist/test/test/diagnostics/file-sink.test.js.map +1 -0
- package/dist/test/test/diagnostics/redact.test.d.ts +2 -0
- package/dist/test/test/diagnostics/redact.test.d.ts.map +1 -0
- package/dist/test/test/diagnostics/redact.test.js +59 -0
- package/dist/test/test/diagnostics/redact.test.js.map +1 -0
- package/dist/test/test/diagnostics/tool-call-adapter.test.d.ts +2 -0
- package/dist/test/test/diagnostics/tool-call-adapter.test.d.ts.map +1 -0
- package/dist/test/test/diagnostics/tool-call-adapter.test.js +34 -0
- package/dist/test/test/diagnostics/tool-call-adapter.test.js.map +1 -0
- package/dist/test/test/engine/cesdk-adapter.test.d.ts +2 -0
- package/dist/test/test/engine/cesdk-adapter.test.d.ts.map +1 -0
- package/dist/test/test/engine/cesdk-adapter.test.js +32 -0
- package/dist/test/test/engine/cesdk-adapter.test.js.map +1 -0
- package/dist/test/test/handbook-contract.test.js +6 -2
- package/dist/test/test/handbook-contract.test.js.map +1 -1
- package/dist/test/test/http/server.test.js +0 -36
- package/dist/test/test/http/server.test.js.map +1 -1
- package/dist/test/test/http/workspace-auth.test.js +0 -1
- package/dist/test/test/http/workspace-auth.test.js.map +1 -1
- package/dist/test/test/server.test.js +0 -40
- package/dist/test/test/server.test.js.map +1 -1
- package/dist/test/test/tools/edit-harness.d.ts +14 -0
- package/dist/test/test/tools/edit-harness.d.ts.map +1 -0
- package/dist/test/test/tools/edit-harness.js +30 -0
- package/dist/test/test/tools/edit-harness.js.map +1 -0
- package/dist/test/test/tools/edit.telemetry.test.d.ts +2 -0
- package/dist/test/test/tools/edit.telemetry.test.d.ts.map +1 -0
- package/dist/test/test/tools/edit.telemetry.test.js +46 -0
- package/dist/test/test/tools/edit.telemetry.test.js.map +1 -0
- package/dist/test/test/tools/export-harness.d.ts +13 -0
- package/dist/test/test/tools/export-harness.d.ts.map +1 -0
- package/dist/test/test/tools/export-harness.js +27 -0
- package/dist/test/test/tools/export-harness.js.map +1 -0
- package/dist/test/test/tools/export.telemetry.test.d.ts +2 -0
- package/dist/test/test/tools/export.telemetry.test.d.ts.map +1 -0
- package/dist/test/test/tools/export.telemetry.test.js +65 -0
- package/dist/test/test/tools/export.telemetry.test.js.map +1 -0
- package/dist/test/test/tools/import.test.d.ts +2 -0
- package/dist/test/test/tools/import.test.d.ts.map +1 -0
- package/dist/test/test/tools/import.test.js +122 -0
- package/dist/test/test/tools/import.test.js.map +1 -0
- package/dist/test/test/tools/index.test.js +78 -16
- package/dist/test/test/tools/index.test.js.map +1 -1
- package/dist/test/test/tools/load.integration.test.d.ts +2 -0
- package/dist/test/test/tools/load.integration.test.d.ts.map +1 -0
- package/dist/test/test/tools/load.integration.test.js +165 -0
- package/dist/test/test/tools/load.integration.test.js.map +1 -0
- package/dist/test/test/tools/load.test.d.ts +2 -0
- package/dist/test/test/tools/load.test.d.ts.map +1 -0
- package/dist/test/test/tools/load.test.js +387 -0
- package/dist/test/test/tools/load.test.js.map +1 -0
- package/dist/test/test/tools/preview-harness.d.ts +9 -0
- package/dist/test/test/tools/preview-harness.d.ts.map +1 -0
- package/dist/test/test/tools/preview-harness.js +23 -0
- package/dist/test/test/tools/preview-harness.js.map +1 -0
- package/dist/test/test/tools/preview.telemetry.test.d.ts +2 -0
- package/dist/test/test/tools/preview.telemetry.test.d.ts.map +1 -0
- package/dist/test/test/tools/preview.telemetry.test.js +36 -0
- package/dist/test/test/tools/preview.telemetry.test.js.map +1 -0
- package/dist/test/test/tools/schema-best-practices.d.ts +13 -0
- package/dist/test/test/tools/schema-best-practices.d.ts.map +1 -0
- package/dist/test/test/tools/schema-best-practices.js +169 -0
- package/dist/test/test/tools/schema-best-practices.js.map +1 -0
- package/dist/test/test/tools/schema-best-practices.test.d.ts +3 -0
- package/dist/test/test/tools/schema-best-practices.test.d.ts.map +1 -0
- package/dist/test/test/tools/schema-best-practices.test.js +194 -0
- package/dist/test/test/tools/schema-best-practices.test.js.map +1 -0
- package/dist/test/test/tools/spans.test.d.ts +2 -0
- package/dist/test/test/tools/spans.test.d.ts.map +1 -0
- package/dist/test/test/tools/spans.test.js +84 -0
- package/dist/test/test/tools/spans.test.js.map +1 -0
- package/dist/test/test/viewer/cesdk-cdn.test.d.ts +2 -0
- package/dist/test/test/viewer/cesdk-cdn.test.d.ts.map +1 -0
- package/dist/test/test/viewer/cesdk-cdn.test.js +19 -0
- package/dist/test/test/viewer/cesdk-cdn.test.js.map +1 -0
- package/dist/test/test/viewer/config-route.test.d.ts +2 -0
- package/dist/test/test/viewer/config-route.test.d.ts.map +1 -0
- package/dist/test/test/viewer/config-route.test.js +28 -0
- package/dist/test/test/viewer/config-route.test.js.map +1 -0
- package/dist/test/test/viewer/spa-version.test.d.ts +2 -0
- package/dist/test/test/viewer/spa-version.test.d.ts.map +1 -0
- package/dist/test/test/viewer/spa-version.test.js +14 -0
- package/dist/test/test/viewer/spa-version.test.js.map +1 -0
- package/dist/test/test/workspace/content-hash.test.d.ts +2 -0
- package/dist/test/test/workspace/content-hash.test.d.ts.map +1 -0
- package/dist/test/test/workspace/content-hash.test.js +17 -0
- package/dist/test/test/workspace/content-hash.test.js.map +1 -0
- package/dist/test/tsconfig.test.tsbuildinfo +1 -1
- package/dist/test/vitest.config.js +1 -1
- package/dist/test/vitest.config.js.map +1 -1
- package/dist/tools/asset-generate.d.ts.map +1 -1
- package/dist/tools/asset-generate.js +1 -8
- package/dist/tools/asset-generate.js.map +1 -1
- package/dist/tools/edit.d.ts +3 -0
- package/dist/tools/edit.d.ts.map +1 -1
- package/dist/tools/edit.js +145 -96
- package/dist/tools/edit.js.map +1 -1
- package/dist/tools/export.d.ts +3 -0
- package/dist/tools/export.d.ts.map +1 -1
- package/dist/tools/export.js +146 -108
- package/dist/tools/export.js.map +1 -1
- package/dist/tools/import.d.ts +12 -0
- package/dist/tools/import.d.ts.map +1 -0
- package/dist/tools/import.js +144 -0
- package/dist/tools/import.js.map +1 -0
- package/dist/tools/index.d.ts +3 -0
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +44 -4
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/load.d.ts +26 -0
- package/dist/tools/load.d.ts.map +1 -0
- package/dist/tools/load.js +400 -0
- package/dist/tools/load.js.map +1 -0
- package/dist/tools/preview.d.ts +3 -0
- package/dist/tools/preview.d.ts.map +1 -1
- package/dist/tools/preview.js +79 -44
- package/dist/tools/preview.js.map +1 -1
- package/dist/tools/result.d.ts +1 -1
- package/dist/tools/result.js +2 -2
- package/dist/tools/result.js.map +1 -1
- package/dist/tools/spans.d.ts +45 -0
- package/dist/tools/spans.d.ts.map +1 -0
- package/dist/tools/spans.js +77 -0
- package/dist/tools/spans.js.map +1 -0
- package/dist/tools/telemetry-wrapper.d.ts +4 -0
- package/dist/tools/telemetry-wrapper.d.ts.map +1 -0
- package/dist/tools/telemetry-wrapper.js +43 -0
- package/dist/tools/telemetry-wrapper.js.map +1 -0
- package/dist/viewer/cesdk-cdn.d.ts +16 -0
- package/dist/viewer/cesdk-cdn.d.ts.map +1 -0
- package/dist/viewer/cesdk-cdn.js +30 -0
- package/dist/viewer/cesdk-cdn.js.map +1 -0
- package/dist/viewer/router.d.ts +6 -0
- package/dist/viewer/router.d.ts.map +1 -1
- package/dist/viewer/router.js +4 -1
- package/dist/viewer/router.js.map +1 -1
- package/dist/viewer/spa-assets.generated.d.ts.map +1 -1
- package/dist/viewer/spa-assets.generated.js +2 -3
- package/dist/viewer/spa-assets.generated.js.map +1 -1
- package/dist/workspace/content-hash.d.ts +2 -0
- package/dist/workspace/content-hash.d.ts.map +1 -0
- package/dist/workspace/content-hash.js +15 -0
- package/dist/workspace/content-hash.js.map +1 -0
- package/package.json +18 -9
- package/assets/docs/guide/actions.md +0 -1038
- package/assets/docs/guide/animation/overview.md +0 -22
- package/assets/docs/guide/automation/batch-processing.md +0 -474
- package/assets/docs/guide/browser-support.md +0 -38
- package/assets/docs/guide/concepts/edit-modes.md +0 -431
- package/assets/docs/guide/concepts/headless-mode/browser.md +0 -291
- package/assets/docs/guide/create-audio/audio.md +0 -336
- package/assets/docs/guide/create-video/overview.md +0 -224
- package/assets/docs/guide/create-video/timeline-editor.md +0 -622
- package/assets/docs/guide/create-video/update-caption-presets.md +0 -676
- package/assets/docs/guide/edit-image/vectorize.md +0 -204
- package/assets/docs/guide/export-save-publish/export/to-html5.md +0 -474
- package/assets/docs/guide/export-save-publish/export/to-mp4.md +0 -364
- package/assets/docs/guide/get-started/vanilla-js/quickstart.md +0 -175
- package/assets/docs/guide/grid-and-rulers.md +0 -222
- package/assets/docs/guide/guides/text/rendering-internals.md +0 -796
- package/assets/docs/guide/import-media/asset-library.md +0 -23
- package/assets/docs/guide/import-media/asset-panel/basics.md +0 -324
- package/assets/docs/guide/import-media/asset-panel/customize.md +0 -478
- package/assets/docs/guide/import-media/asset-panel/thumbnails.md +0 -633
- package/assets/docs/guide/import-media/capture-from-camera/record-video.md +0 -137
- package/assets/docs/guide/import-media/capture-from-camera.md +0 -20
- package/assets/docs/guide/import-media/from-local-source/user-upload.md +0 -438
- package/assets/docs/guide/import-media/from-local-source.md +0 -20
- package/assets/docs/guide/import-media/from-remote-source/getty-images.md +0 -627
- package/assets/docs/guide/import-media/from-remote-source/imgly-premium-assets.md +0 -625
- package/assets/docs/guide/import-media/from-remote-source/pexels.md +0 -692
- package/assets/docs/guide/import-media/from-remote-source/soundstripe.md +0 -497
- package/assets/docs/guide/import-media/from-remote-source/third-party.md +0 -51
- package/assets/docs/guide/import-media/from-remote-source/unsplash.md +0 -914
- package/assets/docs/guide/import-media/from-remote-source/your-server.md +0 -764
- package/assets/docs/guide/open-the-editor/from-htmlcanvas.md +0 -228
- package/assets/docs/guide/open-the-editor/set-zoom-level.md +0 -303
- package/assets/docs/guide/plugins/asset-sources.md +0 -553
- package/assets/docs/guide/starterkits/3d-mockup-editor.md +0 -748
- package/assets/docs/guide/starterkits/advanced-editor.md +0 -698
- package/assets/docs/guide/starterkits/advanced-video-editor.md +0 -696
- package/assets/docs/guide/starterkits/ai-editor.md +0 -749
- package/assets/docs/guide/starterkits/airtable-image-editor.md +0 -672
- package/assets/docs/guide/starterkits/apparel-ui.md +0 -188
- package/assets/docs/guide/starterkits/assets.md +0 -27
- package/assets/docs/guide/starterkits/auto-resize.md +0 -586
- package/assets/docs/guide/starterkits/automated-video-generation.md +0 -692
- package/assets/docs/guide/starterkits/background-removal-editor.md +0 -480
- package/assets/docs/guide/starterkits/content-moderation.md +0 -863
- package/assets/docs/guide/starterkits/creative-automation.md +0 -28
- package/assets/docs/guide/starterkits/custom-built-uis.md +0 -26
- package/assets/docs/guide/starterkits/customization.md +0 -29
- package/assets/docs/guide/starterkits/cutout-lines-editor.md +0 -470
- package/assets/docs/guide/starterkits/data-merge.md +0 -850
- package/assets/docs/guide/starterkits/design-editor.md +0 -698
- package/assets/docs/guide/starterkits/design-generation.md +0 -719
- package/assets/docs/guide/starterkits/design-validation.md +0 -808
- package/assets/docs/guide/starterkits/editor-ui-configurations.md +0 -14
- package/assets/docs/guide/starterkits/export-options.md +0 -724
- package/assets/docs/guide/starterkits/export-using-renderer.md +0 -708
- package/assets/docs/guide/starterkits/extensibility.md +0 -28
- package/assets/docs/guide/starterkits/force-crop-editor.md +0 -675
- package/assets/docs/guide/starterkits/form-based-template-adoption.md +0 -522
- package/assets/docs/guide/starterkits/getty-images-editor.md +0 -700
- package/assets/docs/guide/starterkits/html5-ads-exporter.md +0 -719
- package/assets/docs/guide/starterkits/indesign-template-import.md +0 -580
- package/assets/docs/guide/starterkits/layouts-editor.md +0 -724
- package/assets/docs/guide/starterkits/mobile-ui.md +0 -185
- package/assets/docs/guide/starterkits/mockup-editor.md +0 -745
- package/assets/docs/guide/starterkits/multi-image-generation.md +0 -542
- package/assets/docs/guide/starterkits/page-sizes-editor.md +0 -657
- package/assets/docs/guide/starterkits/pexels-image-editor.md +0 -665
- package/assets/docs/guide/starterkits/photo-editor.md +0 -755
- package/assets/docs/guide/starterkits/photo-ui.md +0 -186
- package/assets/docs/guide/starterkits/photobook-ui.md +0 -188
- package/assets/docs/guide/starterkits/placeholders.md +0 -678
- package/assets/docs/guide/starterkits/player.md +0 -405
- package/assets/docs/guide/starterkits/plugins.md +0 -25
- package/assets/docs/guide/starterkits/postcard-editor.md +0 -202
- package/assets/docs/guide/starterkits/pptx-template-import.md +0 -581
- package/assets/docs/guide/starterkits/print-ready-pdf-editor.md +0 -746
- package/assets/docs/guide/starterkits/product-editor.md +0 -773
- package/assets/docs/guide/starterkits/psd-template-import.md +0 -580
- package/assets/docs/guide/starterkits/qr-code-editor.md +0 -470
- package/assets/docs/guide/starterkits/single-page-editor.md +0 -661
- package/assets/docs/guide/starterkits/start-with-image.md +0 -684
- package/assets/docs/guide/starterkits/start-with-video.md +0 -651
- package/assets/docs/guide/starterkits/t-shirt-designer.md +0 -742
- package/assets/docs/guide/starterkits/templating.md +0 -23
- package/assets/docs/guide/starterkits/theming.md +0 -662
- package/assets/docs/guide/starterkits/translation-internationalization.md +0 -662
- package/assets/docs/guide/starterkits/unsplash-editor.md +0 -839
- package/assets/docs/guide/starterkits/vectorizer-editor.md +0 -466
- package/assets/docs/guide/starterkits/version-history.md +0 -745
- package/assets/docs/guide/starterkits/video-animations.md +0 -853
- package/assets/docs/guide/starterkits/video-captions.md +0 -884
- package/assets/docs/guide/starterkits/video-editing.md +0 -25
- package/assets/docs/guide/starterkits/video-editor.md +0 -696
- package/assets/docs/guide/starterkits/video-export-options.md +0 -676
- package/assets/docs/guide/starterkits/viewer.md +0 -400
- package/assets/docs/guide/starterkits.md +0 -41
- package/assets/docs/guide/stickers-and-shapes/create-edit/vector-edit.md +0 -362
- package/assets/docs/guide/text/custom-fonts.md +0 -401
- package/assets/docs/guide/text/decorations.md +0 -330
- package/assets/docs/guide/text/enumerations.md +0 -258
- package/assets/docs/guide/to-v1-10.md +0 -131
- package/assets/docs/guide/to-v1-13.md +0 -165
- package/assets/docs/guide/to-v1-32.md +0 -110
- package/assets/docs/guide/to-v1-69.md +0 -468
- package/assets/docs/guide/to-v1-72.md +0 -193
- package/assets/docs/guide/use-templates/library.md +0 -450
- package/assets/docs/guide/user-interface/ai-integration/audio-generation.md +0 -428
- package/assets/docs/guide/user-interface/ai-integration/auto-captions.md +0 -337
- package/assets/docs/guide/user-interface/ai-integration/custom-provider.md +0 -853
- package/assets/docs/guide/user-interface/ai-integration/gateway-provider.md +0 -1045
- package/assets/docs/guide/user-interface/ai-integration/image-generation.md +0 -641
- package/assets/docs/guide/user-interface/ai-integration/integrate.md +0 -966
- package/assets/docs/guide/user-interface/ai-integration/proxy-server.md +0 -99
- package/assets/docs/guide/user-interface/ai-integration/text-generation.md +0 -498
- package/assets/docs/guide/user-interface/ai-integration/video-generation.md +0 -493
- package/assets/docs/guide/user-interface/ai-integration.md +0 -30
- package/assets/docs/guide/user-interface/appearance/change-ui-font.md +0 -316
- package/assets/docs/guide/user-interface/appearance/custom-labels.md +0 -509
- package/assets/docs/guide/user-interface/appearance/icons.md +0 -373
- package/assets/docs/guide/user-interface/appearance/theming.md +0 -665
- package/assets/docs/guide/user-interface/appearance.md +0 -23
- package/assets/docs/guide/user-interface/build-your-own-ui.md +0 -620
- package/assets/docs/guide/user-interface/customization/canvas-menu.md +0 -412
- package/assets/docs/guide/user-interface/customization/canvas.md +0 -281
- package/assets/docs/guide/user-interface/customization/color-palette.md +0 -413
- package/assets/docs/guide/user-interface/customization/crop-presets.md +0 -384
- package/assets/docs/guide/user-interface/customization/disable-or-enable.md +0 -676
- package/assets/docs/guide/user-interface/customization/dock.md +0 -399
- package/assets/docs/guide/user-interface/customization/force-crop.md +0 -289
- package/assets/docs/guide/user-interface/customization/inspector-bar.md +0 -371
- package/assets/docs/guide/user-interface/customization/navigation-bar.md +0 -516
- package/assets/docs/guide/user-interface/customization/page-format.md +0 -436
- package/assets/docs/guide/user-interface/customization/panel.md +0 -605
- package/assets/docs/guide/user-interface/customization/quick-start/add-action-buttons.md +0 -531
- package/assets/docs/guide/user-interface/customization/quick-start/add-dock-buttons.md +0 -358
- package/assets/docs/guide/user-interface/customization/quick-start/create-custom-components.md +0 -374
- package/assets/docs/guide/user-interface/customization/quick-start/reorder-components.md +0 -323
- package/assets/docs/guide/user-interface/customization/quick-start/show-hide-components.md +0 -294
- package/assets/docs/guide/user-interface/customization/quick-start.md +0 -12
- package/assets/docs/guide/user-interface/customization/reference/component-order-api.md +0 -519
- package/assets/docs/guide/user-interface/customization/reference/component-reference.md +0 -333
- package/assets/docs/guide/user-interface/customization/reference.md +0 -12
- package/assets/docs/guide/user-interface/customization.md +0 -39
- package/assets/docs/guide/user-interface/localization.md +0 -633
- package/assets/docs/guide/user-interface/overview.md +0 -167
- package/assets/docs/guide/user-interface/ui-extensions/add-custom-feature.md +0 -411
- package/assets/docs/guide/user-interface/ui-extensions/asset-library.md +0 -721
- package/assets/docs/guide/user-interface/ui-extensions/create-custom-panel.md +0 -331
- package/assets/docs/guide/user-interface/ui-extensions/customize-behaviour.md +0 -553
- package/assets/docs/guide/user-interface/ui-extensions/notifications-and-dialogs.md +0 -672
- package/assets/docs/guide/user-interface/ui-extensions/quick-actions.md +0 -415
- package/assets/docs/guide/user-interface/ui-extensions/register-new-component.md +0 -521
- package/assets/docs/guide/user-interface/ui-extensions.md +0 -26
- package/assets/docs/guide/user-interface.md +0 -25
- package/assets/prompts/evals-assetGenerate.md +0 -12
- package/assets/prompts/evals-brutalistCore.md +0 -34
- package/assets/prompts/evals-danskCatalogue.md +0 -31
- package/assets/prompts/evals-exportRoundTrip.md +0 -12
- package/assets/prompts/evals-inspectPriorCode.md +0 -16
- package/assets/prompts/evals-listProjectFiles.md +0 -6
- package/assets/prompts/evals-readAndExplainScript.md +0 -6
- package/assets/prompts/evals-resumeAcrossRestart.md +0 -15
- package/assets/prompts/evals-rewindRecovery.md +0 -10
- package/assets/prompts/evals-searchAcrossFiles.md +0 -6
- package/assets/prompts/evals-weddingCard.md +0 -20
- package/assets/prompts/explain.md +0 -6
- package/assets/prompts/review.md +0 -6
- package/dist/frontmatter.d.ts +0 -15
- package/dist/frontmatter.d.ts.map +0 -1
- package/dist/frontmatter.js +0 -46
- package/dist/frontmatter.js.map +0 -1
- package/dist/test/test/frontmatter.test.d.ts +0 -2
- package/dist/test/test/frontmatter.test.d.ts.map +0 -1
- package/dist/test/test/frontmatter.test.js +0 -55
- package/dist/test/test/frontmatter.test.js.map +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
> This is one page of the CE.SDK
|
|
1
|
+
> This is one page of the CE.SDK Node.js documentation. For a complete overview, see the [Node.js Documentation Index](https://img.ly/docs/cesdk/node.md). For all docs in one file, see [llms-full.txt](./llms-full.txt.md).
|
|
2
2
|
|
|
3
3
|
**Navigation:** [Guides](./guides.md) > [Automate Workflows](./automation.md) > [Auto-Resize](./automation/auto-resize.md)
|
|
4
4
|
|
|
@@ -6,42 +6,28 @@
|
|
|
6
6
|
|
|
7
7
|
Configure blocks to dynamically adjust their dimensions using three sizing modes: Absolute for fixed values, Percent for parent-relative sizing, and Auto for content-driven expansion.
|
|
8
8
|
|
|
9
|
-

|
|
10
|
-
|
|
11
9
|
> **Reading time:** 10 minutes
|
|
12
10
|
>
|
|
13
11
|
> **Resources:**
|
|
14
12
|
>
|
|
15
13
|
> - [Download examples](https://github.com/imgly/cesdk-web-examples/archive/refs/tags/release-$UBQ_VERSION$.zip)
|
|
16
|
-
>
|
|
17
|
-
> - [
|
|
18
|
-
>
|
|
14
|
+
>
|
|
15
|
+
> - [View source on GitHub](https://github.com/imgly/cesdk-web-examples/tree/release-$UBQ_VERSION$/guides-automation-auto-resize-server-js)
|
|
16
|
+
>
|
|
17
|
+
> - [Open in StackBlitz](https://stackblitz.com/github/imgly/cesdk-web-examples/tree/v$UBQ_VERSION$/guides-automation-auto-resize-server-js)
|
|
19
18
|
|
|
20
19
|
CE.SDK provides three sizing modes for controlling block dimensions. Absolute mode uses fixed pixel values. Percent mode sizes blocks relative to their parent container. Auto mode automatically expands blocks to fit their content. You can set width and height modes independently, allowing flexible combinations like fixed width with auto height for text that wraps.
|
|
21
20
|
|
|
22
|
-
```typescript file=@cesdk_web_examples/guides-automation-auto-resize-
|
|
23
|
-
import
|
|
24
|
-
|
|
25
|
-
import {
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
DemoAssetSources,
|
|
30
|
-
EffectsAssetSource,
|
|
31
|
-
FiltersAssetSource,
|
|
32
|
-
PagePresetsAssetSource,
|
|
33
|
-
StickerAssetSource,
|
|
34
|
-
TextAssetSource,
|
|
35
|
-
TextComponentAssetSource,
|
|
36
|
-
TypefaceAssetSource,
|
|
37
|
-
UploadAssetSources,
|
|
38
|
-
VectorShapeAssetSource
|
|
39
|
-
} from '@cesdk/cesdk-js/plugins';
|
|
40
|
-
import { DesignEditorConfig } from './design-editor/plugin';
|
|
41
|
-
import packageJson from './package.json';
|
|
21
|
+
```typescript file=@cesdk_web_examples/guides-automation-auto-resize-server-js/server-js.ts reference-only
|
|
22
|
+
import CreativeEngine from '@cesdk/node';
|
|
23
|
+
import { config } from 'dotenv';
|
|
24
|
+
import { writeFileSync, mkdirSync, existsSync } from 'fs';
|
|
25
|
+
|
|
26
|
+
// Load environment variables
|
|
27
|
+
config();
|
|
42
28
|
|
|
43
29
|
/**
|
|
44
|
-
* CE.SDK
|
|
30
|
+
* CE.SDK Server Guide: Auto-Resize
|
|
45
31
|
*
|
|
46
32
|
* Demonstrates block sizing modes and responsive layout patterns:
|
|
47
33
|
* - Setting width and height modes (Absolute, Percent, Auto)
|
|
@@ -49,192 +35,148 @@ import packageJson from './package.json';
|
|
|
49
35
|
* - Centering text blocks based on computed dimensions
|
|
50
36
|
* - Creating responsive layouts with percentage-based sizing
|
|
51
37
|
*/
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
// Add asset source plugins
|
|
65
|
-
await cesdk.addPlugin(new BlurAssetSource());
|
|
66
|
-
await cesdk.addPlugin(new ColorPaletteAssetSource());
|
|
67
|
-
await cesdk.addPlugin(new CropPresetsAssetSource());
|
|
68
|
-
await cesdk.addPlugin(
|
|
69
|
-
new UploadAssetSources({ include: ['ly.img.image.upload'] })
|
|
70
|
-
);
|
|
71
|
-
await cesdk.addPlugin(
|
|
72
|
-
new DemoAssetSources({
|
|
73
|
-
include: [
|
|
74
|
-
'ly.img.templates.blank.*',
|
|
75
|
-
'ly.img.templates.presentation.*',
|
|
76
|
-
'ly.img.templates.print.*',
|
|
77
|
-
'ly.img.templates.social.*',
|
|
78
|
-
'ly.img.image.*'
|
|
79
|
-
]
|
|
80
|
-
})
|
|
81
|
-
);
|
|
82
|
-
await cesdk.addPlugin(new EffectsAssetSource());
|
|
83
|
-
await cesdk.addPlugin(new FiltersAssetSource());
|
|
84
|
-
await cesdk.addPlugin(new PagePresetsAssetSource());
|
|
85
|
-
await cesdk.addPlugin(new StickerAssetSource());
|
|
86
|
-
await cesdk.addPlugin(new TextAssetSource());
|
|
87
|
-
await cesdk.addPlugin(new TextComponentAssetSource());
|
|
88
|
-
await cesdk.addPlugin(new TypefaceAssetSource());
|
|
89
|
-
await cesdk.addPlugin(new VectorShapeAssetSource());
|
|
90
|
-
|
|
91
|
-
await cesdk.actions.run('scene.create', {
|
|
92
|
-
page: { width: 800, height: 600, unit: 'Pixel' }
|
|
93
|
-
});
|
|
94
|
-
|
|
95
|
-
const engine = cesdk.engine;
|
|
96
|
-
const page = engine.block.findByType('page')[0];
|
|
97
|
-
|
|
98
|
-
// Create a text block with Auto sizing mode
|
|
99
|
-
// Auto mode makes the block expand to fit its content
|
|
100
|
-
const titleBlock = engine.block.create('text');
|
|
101
|
-
engine.block.replaceText(titleBlock, 'Auto-Resize Demo');
|
|
102
|
-
engine.block.setFloat(titleBlock, 'text/fontSize', 64);
|
|
103
|
-
|
|
104
|
-
// Set width and height modes to Auto
|
|
105
|
-
// The block will automatically size to fit the text content
|
|
106
|
-
engine.block.setWidthMode(titleBlock, 'Auto');
|
|
107
|
-
engine.block.setHeightMode(titleBlock, 'Auto');
|
|
108
|
-
engine.block.appendChild(page, titleBlock);
|
|
109
|
-
|
|
110
|
-
// Read computed frame dimensions after layout
|
|
111
|
-
// getFrameWidth/getFrameHeight return the actual rendered size
|
|
112
|
-
const titleWidth = engine.block.getFrameWidth(titleBlock);
|
|
113
|
-
const titleHeight = engine.block.getFrameHeight(titleBlock);
|
|
114
|
-
|
|
115
|
-
console.log(
|
|
116
|
-
`Title dimensions: ${titleWidth.toFixed(0)}x${titleHeight.toFixed(
|
|
117
|
-
0
|
|
118
|
-
)} pixels`
|
|
119
|
-
);
|
|
120
|
-
|
|
121
|
-
// Calculate centered position using frame dimensions
|
|
122
|
-
const pageWidth = engine.block.getWidth(page);
|
|
123
|
-
const pageHeight = engine.block.getHeight(page);
|
|
124
|
-
const centerX = (pageWidth - titleWidth) / 2;
|
|
125
|
-
const centerY = (pageHeight - titleHeight) / 2 - 100; // Offset up for layout
|
|
126
|
-
|
|
127
|
-
// Position the title at center
|
|
128
|
-
engine.block.setPositionX(titleBlock, centerX);
|
|
129
|
-
engine.block.setPositionY(titleBlock, centerY);
|
|
130
|
-
|
|
131
|
-
// Create a block using Percent mode for responsive sizing
|
|
132
|
-
// Percent mode sizes the block relative to its parent
|
|
133
|
-
const backgroundBlock = engine.block.create('graphic');
|
|
134
|
-
engine.block.setShape(backgroundBlock, engine.block.createShape('rect'));
|
|
135
|
-
const fill = engine.block.createFill('color');
|
|
136
|
-
engine.block.setColor(fill, 'fill/color/value', {
|
|
137
|
-
r: 0.2,
|
|
138
|
-
g: 0.4,
|
|
139
|
-
b: 0.8,
|
|
140
|
-
a: 0.3
|
|
141
|
-
});
|
|
142
|
-
engine.block.setFill(backgroundBlock, fill);
|
|
143
|
-
|
|
144
|
-
// Set to Percent mode - values are normalized (0-1)
|
|
145
|
-
engine.block.setWidthMode(backgroundBlock, 'Percent');
|
|
146
|
-
engine.block.setHeightMode(backgroundBlock, 'Percent');
|
|
147
|
-
engine.block.setWidth(backgroundBlock, 0.8); // 80% of parent width
|
|
148
|
-
engine.block.setHeight(backgroundBlock, 0.3); // 30% of parent height
|
|
149
|
-
|
|
150
|
-
// Center the background block
|
|
151
|
-
engine.block.setPositionX(backgroundBlock, pageWidth * 0.1); // 10% margin
|
|
152
|
-
engine.block.setPositionY(backgroundBlock, pageHeight * 0.6);
|
|
153
|
-
engine.block.appendChild(page, backgroundBlock);
|
|
154
|
-
|
|
155
|
-
// Create a subtitle with Auto mode
|
|
156
|
-
const subtitleBlock = engine.block.create('text');
|
|
157
|
-
engine.block.replaceText(
|
|
158
|
-
subtitleBlock,
|
|
159
|
-
'Text automatically sizes to fit content'
|
|
160
|
-
);
|
|
161
|
-
engine.block.setFloat(subtitleBlock, 'text/fontSize', 32);
|
|
162
|
-
engine.block.setWidthMode(subtitleBlock, 'Auto');
|
|
163
|
-
engine.block.setHeightMode(subtitleBlock, 'Auto');
|
|
164
|
-
engine.block.appendChild(page, subtitleBlock);
|
|
165
|
-
|
|
166
|
-
// Read computed dimensions and center
|
|
167
|
-
const subtitleWidth = engine.block.getFrameWidth(subtitleBlock);
|
|
168
|
-
const subtitleCenterX = (pageWidth - subtitleWidth) / 2;
|
|
169
|
-
engine.block.setPositionX(subtitleBlock, subtitleCenterX);
|
|
170
|
-
engine.block.setPositionY(subtitleBlock, pageHeight * 0.7);
|
|
171
|
-
|
|
172
|
-
// Verify sizing modes
|
|
173
|
-
const titleWidthMode = engine.block.getWidthMode(titleBlock);
|
|
174
|
-
const titleHeightMode = engine.block.getHeightMode(titleBlock);
|
|
175
|
-
const bgWidthMode = engine.block.getWidthMode(backgroundBlock);
|
|
176
|
-
const bgHeightMode = engine.block.getHeightMode(backgroundBlock);
|
|
177
|
-
|
|
178
|
-
console.log(
|
|
179
|
-
`Title modes: width=${titleWidthMode}, height=${titleHeightMode}`
|
|
180
|
-
);
|
|
181
|
-
console.log(
|
|
182
|
-
`Background modes: width=${bgWidthMode}, height=${bgHeightMode}`
|
|
183
|
-
);
|
|
184
|
-
|
|
185
|
-
// Select the title block to show the auto-sized result
|
|
186
|
-
engine.block.select(titleBlock);
|
|
187
|
-
|
|
188
|
-
console.log(
|
|
189
|
-
'Auto-resize guide initialized. Try changing text content to see auto-sizing in action.'
|
|
190
|
-
);
|
|
38
|
+
|
|
39
|
+
// Initialize CE.SDK engine in headless mode
|
|
40
|
+
const engine = await CreativeEngine.init({
|
|
41
|
+
baseURL: process.env.IMGLY_LOCAL_ASSETS_URL
|
|
42
|
+
// license: process.env.CESDK_LICENSE, // Optional (trial mode available)
|
|
43
|
+
});
|
|
44
|
+
|
|
45
|
+
try {
|
|
46
|
+
// Create output directory
|
|
47
|
+
const outputDir = './output';
|
|
48
|
+
if (!existsSync(outputDir)) {
|
|
49
|
+
mkdirSync(outputDir, { recursive: true });
|
|
191
50
|
}
|
|
192
|
-
}
|
|
193
51
|
|
|
194
|
-
|
|
52
|
+
// Create a scene with a page
|
|
53
|
+
engine.scene.create('VerticalStack', {
|
|
54
|
+
page: { size: { width: 800, height: 600 } }
|
|
55
|
+
});
|
|
56
|
+
const page = engine.block.findByType('page')[0];
|
|
57
|
+
|
|
58
|
+
// Create a text block with Auto sizing mode
|
|
59
|
+
// Auto mode makes the block expand to fit its content
|
|
60
|
+
const titleBlock = engine.block.create('text');
|
|
61
|
+
engine.block.replaceText(titleBlock, 'Auto-Resize Demo');
|
|
62
|
+
engine.block.setTextFontSize(titleBlock, 64);
|
|
63
|
+
|
|
64
|
+
// Set width and height modes to Auto
|
|
65
|
+
// The block will automatically size to fit the text content
|
|
66
|
+
engine.block.setWidthMode(titleBlock, 'Auto');
|
|
67
|
+
engine.block.setHeightMode(titleBlock, 'Auto');
|
|
68
|
+
engine.block.appendChild(page, titleBlock);
|
|
69
|
+
|
|
70
|
+
// Read computed frame dimensions after layout
|
|
71
|
+
// getFrameWidth/getFrameHeight return the actual rendered size
|
|
72
|
+
const titleWidth = engine.block.getFrameWidth(titleBlock);
|
|
73
|
+
const titleHeight = engine.block.getFrameHeight(titleBlock);
|
|
74
|
+
|
|
75
|
+
// eslint-disable-next-line no-console
|
|
76
|
+
console.log(
|
|
77
|
+
`Title dimensions: ${titleWidth.toFixed(0)}x${titleHeight.toFixed(0)} pixels`
|
|
78
|
+
);
|
|
79
|
+
|
|
80
|
+
// Calculate centered position using frame dimensions
|
|
81
|
+
const pageWidth = engine.block.getWidth(page);
|
|
82
|
+
const pageHeight = engine.block.getHeight(page);
|
|
83
|
+
const centerX = (pageWidth - titleWidth) / 2;
|
|
84
|
+
const centerY = (pageHeight - titleHeight) / 2 - 100; // Offset up for layout
|
|
85
|
+
|
|
86
|
+
// Position the title at center
|
|
87
|
+
engine.block.setPositionX(titleBlock, centerX);
|
|
88
|
+
engine.block.setPositionY(titleBlock, centerY);
|
|
89
|
+
|
|
90
|
+
// Create a block using Percent mode for responsive sizing
|
|
91
|
+
// Percent mode sizes the block relative to its parent
|
|
92
|
+
const backgroundBlock = engine.block.create('graphic');
|
|
93
|
+
engine.block.setShape(backgroundBlock, engine.block.createShape('rect'));
|
|
94
|
+
const fill = engine.block.createFill('color');
|
|
95
|
+
engine.block.setColor(fill, 'fill/color/value', {
|
|
96
|
+
r: 0.2,
|
|
97
|
+
g: 0.4,
|
|
98
|
+
b: 0.8,
|
|
99
|
+
a: 0.3
|
|
100
|
+
});
|
|
101
|
+
engine.block.setFill(backgroundBlock, fill);
|
|
102
|
+
|
|
103
|
+
// Set to Percent mode - values are normalized (0-1)
|
|
104
|
+
engine.block.setWidthMode(backgroundBlock, 'Percent');
|
|
105
|
+
engine.block.setHeightMode(backgroundBlock, 'Percent');
|
|
106
|
+
engine.block.setWidth(backgroundBlock, 0.8); // 80% of parent width
|
|
107
|
+
engine.block.setHeight(backgroundBlock, 0.3); // 30% of parent height
|
|
108
|
+
|
|
109
|
+
// Center the background block
|
|
110
|
+
engine.block.setPositionX(backgroundBlock, pageWidth * 0.1); // 10% margin
|
|
111
|
+
engine.block.setPositionY(backgroundBlock, pageHeight * 0.6);
|
|
112
|
+
engine.block.appendChild(page, backgroundBlock);
|
|
113
|
+
|
|
114
|
+
// Create a subtitle with Auto mode
|
|
115
|
+
const subtitleBlock = engine.block.create('text');
|
|
116
|
+
engine.block.replaceText(
|
|
117
|
+
subtitleBlock,
|
|
118
|
+
'Text automatically sizes to fit content'
|
|
119
|
+
);
|
|
120
|
+
engine.block.setTextFontSize(subtitleBlock, 32);
|
|
121
|
+
engine.block.setWidthMode(subtitleBlock, 'Auto');
|
|
122
|
+
engine.block.setHeightMode(subtitleBlock, 'Auto');
|
|
123
|
+
engine.block.appendChild(page, subtitleBlock);
|
|
124
|
+
|
|
125
|
+
// Read computed dimensions and center
|
|
126
|
+
const subtitleWidth = engine.block.getFrameWidth(subtitleBlock);
|
|
127
|
+
const subtitleCenterX = (pageWidth - subtitleWidth) / 2;
|
|
128
|
+
engine.block.setPositionX(subtitleBlock, subtitleCenterX);
|
|
129
|
+
engine.block.setPositionY(subtitleBlock, pageHeight * 0.7);
|
|
130
|
+
|
|
131
|
+
// Verify sizing modes
|
|
132
|
+
const titleWidthMode = engine.block.getWidthMode(titleBlock);
|
|
133
|
+
const titleHeightMode = engine.block.getHeightMode(titleBlock);
|
|
134
|
+
const bgWidthMode = engine.block.getWidthMode(backgroundBlock);
|
|
135
|
+
const bgHeightMode = engine.block.getHeightMode(backgroundBlock);
|
|
136
|
+
|
|
137
|
+
// eslint-disable-next-line no-console
|
|
138
|
+
console.log(
|
|
139
|
+
`Title modes: width=${titleWidthMode}, height=${titleHeightMode}`
|
|
140
|
+
);
|
|
141
|
+
// eslint-disable-next-line no-console
|
|
142
|
+
console.log(`Background modes: width=${bgWidthMode}, height=${bgHeightMode}`);
|
|
143
|
+
|
|
144
|
+
// Export the result
|
|
145
|
+
const blob = await engine.block.export(page, { mimeType: 'image/png' });
|
|
146
|
+
const buffer = Buffer.from(await blob.arrayBuffer());
|
|
147
|
+
writeFileSync(`${outputDir}/auto-resize-demo.png`, buffer);
|
|
148
|
+
|
|
149
|
+
// eslint-disable-next-line no-console
|
|
150
|
+
console.log(`\n✓ Exported auto-resize-demo.png to ${outputDir}/`);
|
|
151
|
+
} finally {
|
|
152
|
+
// Always dispose the engine to free resources
|
|
153
|
+
engine.dispose();
|
|
154
|
+
}
|
|
195
155
|
```
|
|
196
156
|
|
|
197
157
|
This guide covers how to set and query sizing modes, read computed frame dimensions after layout, center blocks using frame dimensions, and create responsive layouts with percentage-based sizing.
|
|
198
158
|
|
|
199
|
-
##
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
```typescript highlight
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
await cesdk.addPlugin(new ColorPaletteAssetSource());
|
|
209
|
-
await cesdk.addPlugin(new CropPresetsAssetSource());
|
|
210
|
-
await cesdk.addPlugin(
|
|
211
|
-
new UploadAssetSources({ include: ['ly.img.image.upload'] })
|
|
212
|
-
);
|
|
213
|
-
await cesdk.addPlugin(
|
|
214
|
-
new DemoAssetSources({
|
|
215
|
-
include: [
|
|
216
|
-
'ly.img.templates.blank.*',
|
|
217
|
-
'ly.img.templates.presentation.*',
|
|
218
|
-
'ly.img.templates.print.*',
|
|
219
|
-
'ly.img.templates.social.*',
|
|
220
|
-
'ly.img.image.*'
|
|
221
|
-
]
|
|
222
|
-
})
|
|
223
|
-
);
|
|
224
|
-
await cesdk.addPlugin(new EffectsAssetSource());
|
|
225
|
-
await cesdk.addPlugin(new FiltersAssetSource());
|
|
226
|
-
await cesdk.addPlugin(new PagePresetsAssetSource());
|
|
227
|
-
await cesdk.addPlugin(new StickerAssetSource());
|
|
228
|
-
await cesdk.addPlugin(new TextAssetSource());
|
|
229
|
-
await cesdk.addPlugin(new TextComponentAssetSource());
|
|
230
|
-
await cesdk.addPlugin(new TypefaceAssetSource());
|
|
231
|
-
await cesdk.addPlugin(new VectorShapeAssetSource());
|
|
232
|
-
|
|
233
|
-
await cesdk.actions.run('scene.create', {
|
|
234
|
-
page: { width: 800, height: 600, unit: 'Pixel' }
|
|
159
|
+
## Setup
|
|
160
|
+
|
|
161
|
+
Initialize the CE.SDK engine for server-side automation:
|
|
162
|
+
|
|
163
|
+
```typescript highlight-setup
|
|
164
|
+
// Initialize CE.SDK engine in headless mode
|
|
165
|
+
const engine = await CreativeEngine.init({
|
|
166
|
+
baseURL: process.env.IMGLY_LOCAL_ASSETS_URL
|
|
167
|
+
// license: process.env.CESDK_LICENSE, // Optional (trial mode available)
|
|
235
168
|
});
|
|
169
|
+
```
|
|
170
|
+
|
|
171
|
+
## Create a Scene
|
|
172
|
+
|
|
173
|
+
Create a scene with a page to work with:
|
|
236
174
|
|
|
237
|
-
|
|
175
|
+
```typescript highlight-create-scene
|
|
176
|
+
// Create a scene with a page
|
|
177
|
+
engine.scene.create('VerticalStack', {
|
|
178
|
+
page: { size: { width: 800, height: 600 } }
|
|
179
|
+
});
|
|
238
180
|
const page = engine.block.findByType('page')[0];
|
|
239
181
|
```
|
|
240
182
|
|
|
@@ -254,18 +196,18 @@ Use `setWidthMode()` and `setHeightMode()` to configure how a block calculates i
|
|
|
254
196
|
|
|
255
197
|
Auto mode makes text blocks expand to fit their content:
|
|
256
198
|
|
|
257
|
-
```typescript highlight
|
|
258
|
-
// Create a text block with Auto sizing mode
|
|
259
|
-
// Auto mode makes the block expand to fit its content
|
|
260
|
-
const titleBlock = engine.block.create('text');
|
|
261
|
-
engine.block.replaceText(titleBlock, 'Auto-Resize Demo');
|
|
262
|
-
engine.block.
|
|
263
|
-
|
|
264
|
-
// Set width and height modes to Auto
|
|
265
|
-
// The block will automatically size to fit the text content
|
|
266
|
-
engine.block.setWidthMode(titleBlock, 'Auto');
|
|
267
|
-
engine.block.setHeightMode(titleBlock, 'Auto');
|
|
268
|
-
engine.block.appendChild(page, titleBlock);
|
|
199
|
+
```typescript highlight-auto-mode
|
|
200
|
+
// Create a text block with Auto sizing mode
|
|
201
|
+
// Auto mode makes the block expand to fit its content
|
|
202
|
+
const titleBlock = engine.block.create('text');
|
|
203
|
+
engine.block.replaceText(titleBlock, 'Auto-Resize Demo');
|
|
204
|
+
engine.block.setTextFontSize(titleBlock, 64);
|
|
205
|
+
|
|
206
|
+
// Set width and height modes to Auto
|
|
207
|
+
// The block will automatically size to fit the text content
|
|
208
|
+
engine.block.setWidthMode(titleBlock, 'Auto');
|
|
209
|
+
engine.block.setHeightMode(titleBlock, 'Auto');
|
|
210
|
+
engine.block.appendChild(page, titleBlock);
|
|
269
211
|
```
|
|
270
212
|
|
|
271
213
|
With Auto mode, the block's dimensions are calculated automatically based on the content. This is useful when the text content varies and you want the block to always fit exactly.
|
|
@@ -274,30 +216,30 @@ With Auto mode, the block's dimensions are calculated automatically based on the
|
|
|
274
216
|
|
|
275
217
|
Percent mode sizes blocks relative to their parent:
|
|
276
218
|
|
|
277
|
-
```typescript highlight
|
|
278
|
-
// Create a block using Percent mode for responsive sizing
|
|
279
|
-
// Percent mode sizes the block relative to its parent
|
|
280
|
-
const backgroundBlock = engine.block.create('graphic');
|
|
281
|
-
engine.block.setShape(backgroundBlock, engine.block.createShape('rect'));
|
|
282
|
-
const fill = engine.block.createFill('color');
|
|
283
|
-
engine.block.setColor(fill, 'fill/color/value', {
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
});
|
|
289
|
-
engine.block.setFill(backgroundBlock, fill);
|
|
290
|
-
|
|
291
|
-
// Set to Percent mode - values are normalized (0-1)
|
|
292
|
-
engine.block.setWidthMode(backgroundBlock, 'Percent');
|
|
293
|
-
engine.block.setHeightMode(backgroundBlock, 'Percent');
|
|
294
|
-
engine.block.setWidth(backgroundBlock, 0.8); // 80% of parent width
|
|
295
|
-
engine.block.setHeight(backgroundBlock, 0.3); // 30% of parent height
|
|
296
|
-
|
|
297
|
-
// Center the background block
|
|
298
|
-
engine.block.setPositionX(backgroundBlock, pageWidth * 0.1); // 10% margin
|
|
299
|
-
engine.block.setPositionY(backgroundBlock, pageHeight * 0.6);
|
|
300
|
-
engine.block.appendChild(page, backgroundBlock);
|
|
219
|
+
```typescript highlight-percent-mode
|
|
220
|
+
// Create a block using Percent mode for responsive sizing
|
|
221
|
+
// Percent mode sizes the block relative to its parent
|
|
222
|
+
const backgroundBlock = engine.block.create('graphic');
|
|
223
|
+
engine.block.setShape(backgroundBlock, engine.block.createShape('rect'));
|
|
224
|
+
const fill = engine.block.createFill('color');
|
|
225
|
+
engine.block.setColor(fill, 'fill/color/value', {
|
|
226
|
+
r: 0.2,
|
|
227
|
+
g: 0.4,
|
|
228
|
+
b: 0.8,
|
|
229
|
+
a: 0.3
|
|
230
|
+
});
|
|
231
|
+
engine.block.setFill(backgroundBlock, fill);
|
|
232
|
+
|
|
233
|
+
// Set to Percent mode - values are normalized (0-1)
|
|
234
|
+
engine.block.setWidthMode(backgroundBlock, 'Percent');
|
|
235
|
+
engine.block.setHeightMode(backgroundBlock, 'Percent');
|
|
236
|
+
engine.block.setWidth(backgroundBlock, 0.8); // 80% of parent width
|
|
237
|
+
engine.block.setHeight(backgroundBlock, 0.3); // 30% of parent height
|
|
238
|
+
|
|
239
|
+
// Center the background block
|
|
240
|
+
engine.block.setPositionX(backgroundBlock, pageWidth * 0.1); // 10% margin
|
|
241
|
+
engine.block.setPositionY(backgroundBlock, pageHeight * 0.6);
|
|
242
|
+
engine.block.appendChild(page, backgroundBlock);
|
|
301
243
|
```
|
|
302
244
|
|
|
303
245
|
Percent values represent the percentage of the parent container. A width of 80 with Percent mode means 80% of the parent's width.
|
|
@@ -306,15 +248,16 @@ Percent values represent the percentage of the parent container. A width of 80 w
|
|
|
306
248
|
|
|
307
249
|
After layout, use `getFrameWidth()` and `getFrameHeight()` to read the computed dimensions:
|
|
308
250
|
|
|
309
|
-
```typescript highlight
|
|
310
|
-
// Read computed frame dimensions after layout
|
|
311
|
-
// getFrameWidth/getFrameHeight return the actual rendered size
|
|
312
|
-
const titleWidth = engine.block.getFrameWidth(titleBlock);
|
|
313
|
-
const titleHeight = engine.block.getFrameHeight(titleBlock);
|
|
251
|
+
```typescript highlight-read-frame-dimensions
|
|
252
|
+
// Read computed frame dimensions after layout
|
|
253
|
+
// getFrameWidth/getFrameHeight return the actual rendered size
|
|
254
|
+
const titleWidth = engine.block.getFrameWidth(titleBlock);
|
|
255
|
+
const titleHeight = engine.block.getFrameHeight(titleBlock);
|
|
314
256
|
|
|
315
|
-
console
|
|
316
|
-
|
|
317
|
-
)
|
|
257
|
+
// eslint-disable-next-line no-console
|
|
258
|
+
console.log(
|
|
259
|
+
`Title dimensions: ${titleWidth.toFixed(0)}x${titleHeight.toFixed(0)} pixels`
|
|
260
|
+
);
|
|
318
261
|
```
|
|
319
262
|
|
|
320
263
|
Frame dimensions return the actual rendered size regardless of the sizing mode. This is essential when using Auto mode since you need the computed size for positioning calculations.
|
|
@@ -323,16 +266,16 @@ Frame dimensions return the actual rendered size regardless of the sizing mode.
|
|
|
323
266
|
|
|
324
267
|
Combine Auto mode with frame dimensions to center blocks based on their actual size:
|
|
325
268
|
|
|
326
|
-
```typescript highlight
|
|
327
|
-
// Calculate centered position using frame dimensions
|
|
328
|
-
const pageWidth = engine.block.getWidth(page);
|
|
329
|
-
const pageHeight = engine.block.getHeight(page);
|
|
330
|
-
const centerX = (pageWidth - titleWidth) / 2;
|
|
331
|
-
const centerY = (pageHeight - titleHeight) / 2 - 100; // Offset up for layout
|
|
269
|
+
```typescript highlight-center-block
|
|
270
|
+
// Calculate centered position using frame dimensions
|
|
271
|
+
const pageWidth = engine.block.getWidth(page);
|
|
272
|
+
const pageHeight = engine.block.getHeight(page);
|
|
273
|
+
const centerX = (pageWidth - titleWidth) / 2;
|
|
274
|
+
const centerY = (pageHeight - titleHeight) / 2 - 100; // Offset up for layout
|
|
332
275
|
|
|
333
|
-
// Position the title at center
|
|
334
|
-
engine.block.setPositionX(titleBlock, centerX);
|
|
335
|
-
engine.block.setPositionY(titleBlock, centerY);
|
|
276
|
+
// Position the title at center
|
|
277
|
+
engine.block.setPositionX(titleBlock, centerX);
|
|
278
|
+
engine.block.setPositionY(titleBlock, centerY);
|
|
336
279
|
```
|
|
337
280
|
|
|
338
281
|
This pattern reads the computed dimensions after Auto sizing and calculates the centered position.
|
|
@@ -341,38 +284,56 @@ This pattern reads the computed dimensions after Auto sizing and calculates the
|
|
|
341
284
|
|
|
342
285
|
You can create multiple auto-sized blocks and position them relative to each other:
|
|
343
286
|
|
|
344
|
-
```typescript highlight
|
|
345
|
-
// Create a subtitle with Auto mode
|
|
346
|
-
const subtitleBlock = engine.block.create('text');
|
|
347
|
-
engine.block.replaceText(
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
);
|
|
351
|
-
engine.block.
|
|
352
|
-
engine.block.setWidthMode(subtitleBlock, 'Auto');
|
|
353
|
-
engine.block.setHeightMode(subtitleBlock, 'Auto');
|
|
354
|
-
engine.block.appendChild(page, subtitleBlock);
|
|
355
|
-
|
|
356
|
-
// Read computed dimensions and center
|
|
357
|
-
const subtitleWidth = engine.block.getFrameWidth(subtitleBlock);
|
|
358
|
-
const subtitleCenterX = (pageWidth - subtitleWidth) / 2;
|
|
359
|
-
engine.block.setPositionX(subtitleBlock, subtitleCenterX);
|
|
360
|
-
engine.block.setPositionY(subtitleBlock, pageHeight * 0.7);
|
|
287
|
+
```typescript highlight-subtitle-auto
|
|
288
|
+
// Create a subtitle with Auto mode
|
|
289
|
+
const subtitleBlock = engine.block.create('text');
|
|
290
|
+
engine.block.replaceText(
|
|
291
|
+
subtitleBlock,
|
|
292
|
+
'Text automatically sizes to fit content'
|
|
293
|
+
);
|
|
294
|
+
engine.block.setTextFontSize(subtitleBlock, 32);
|
|
295
|
+
engine.block.setWidthMode(subtitleBlock, 'Auto');
|
|
296
|
+
engine.block.setHeightMode(subtitleBlock, 'Auto');
|
|
297
|
+
engine.block.appendChild(page, subtitleBlock);
|
|
298
|
+
|
|
299
|
+
// Read computed dimensions and center
|
|
300
|
+
const subtitleWidth = engine.block.getFrameWidth(subtitleBlock);
|
|
301
|
+
const subtitleCenterX = (pageWidth - subtitleWidth) / 2;
|
|
302
|
+
engine.block.setPositionX(subtitleBlock, subtitleCenterX);
|
|
303
|
+
engine.block.setPositionY(subtitleBlock, pageHeight * 0.7);
|
|
361
304
|
```
|
|
362
305
|
|
|
363
306
|
## Verifying Size Modes
|
|
364
307
|
|
|
365
308
|
Query the current size modes to verify your configuration:
|
|
366
309
|
|
|
367
|
-
```typescript highlight
|
|
368
|
-
// Verify sizing modes
|
|
369
|
-
const titleWidthMode = engine.block.getWidthMode(titleBlock);
|
|
370
|
-
const titleHeightMode = engine.block.getHeightMode(titleBlock);
|
|
371
|
-
const bgWidthMode = engine.block.getWidthMode(backgroundBlock);
|
|
372
|
-
const bgHeightMode = engine.block.getHeightMode(backgroundBlock);
|
|
310
|
+
```typescript highlight-check-modes
|
|
311
|
+
// Verify sizing modes
|
|
312
|
+
const titleWidthMode = engine.block.getWidthMode(titleBlock);
|
|
313
|
+
const titleHeightMode = engine.block.getHeightMode(titleBlock);
|
|
314
|
+
const bgWidthMode = engine.block.getWidthMode(backgroundBlock);
|
|
315
|
+
const bgHeightMode = engine.block.getHeightMode(backgroundBlock);
|
|
316
|
+
|
|
317
|
+
// eslint-disable-next-line no-console
|
|
318
|
+
console.log(
|
|
319
|
+
`Title modes: width=${titleWidthMode}, height=${titleHeightMode}`
|
|
320
|
+
);
|
|
321
|
+
// eslint-disable-next-line no-console
|
|
322
|
+
console.log(`Background modes: width=${bgWidthMode}, height=${bgHeightMode}`);
|
|
323
|
+
```
|
|
373
324
|
|
|
374
|
-
|
|
375
|
-
|
|
325
|
+
## Export
|
|
326
|
+
|
|
327
|
+
Export the result to verify the layout:
|
|
328
|
+
|
|
329
|
+
```typescript highlight-export
|
|
330
|
+
// Export the result
|
|
331
|
+
const blob = await engine.block.export(page, { mimeType: 'image/png' });
|
|
332
|
+
const buffer = Buffer.from(await blob.arrayBuffer());
|
|
333
|
+
writeFileSync(`${outputDir}/auto-resize-demo.png`, buffer);
|
|
334
|
+
|
|
335
|
+
// eslint-disable-next-line no-console
|
|
336
|
+
console.log(`\n✓ Exported auto-resize-demo.png to ${outputDir}/`);
|
|
376
337
|
```
|
|
377
338
|
|
|
378
339
|
## Troubleshooting
|
|
@@ -387,26 +348,28 @@ console.log(`Background modes: width=${bgWidthMode}, height=${bgHeightMode}`);
|
|
|
387
348
|
|
|
388
349
|
## API Reference
|
|
389
350
|
|
|
390
|
-
| Method
|
|
391
|
-
|
|
|
392
|
-
| `engine.block.getWidth(block)`
|
|
393
|
-
| `engine.block.setWidth(block, value)`
|
|
394
|
-
| `engine.block.getWidthMode(block)`
|
|
395
|
-
| `engine.block.setWidthMode(block, mode)`
|
|
396
|
-
| `engine.block.getHeight(block)`
|
|
397
|
-
| `engine.block.setHeight(block, value)`
|
|
398
|
-
| `engine.block.getHeightMode(block)`
|
|
399
|
-
| `engine.block.setHeightMode(block, mode)` | Set height mode: Absolute, Percent, or Auto
|
|
400
|
-
| `engine.block.getFrameWidth(block)`
|
|
401
|
-
| `engine.block.getFrameHeight(block)`
|
|
402
|
-
| `engine.block.setPositionX(block, value)` | Set block X position
|
|
403
|
-
| `engine.block.setPositionY(block, value)` | Set block Y position
|
|
351
|
+
| Method | Description |
|
|
352
|
+
| ------ | ----------- |
|
|
353
|
+
| `engine.block.getWidth(block)` | Get block width in current mode |
|
|
354
|
+
| `engine.block.setWidth(block, value)` | Set block width in current mode |
|
|
355
|
+
| `engine.block.getWidthMode(block)` | Get current width mode: Absolute, Percent, or Auto |
|
|
356
|
+
| `engine.block.setWidthMode(block, mode)` | Set width mode: Absolute, Percent, or Auto |
|
|
357
|
+
| `engine.block.getHeight(block)` | Get block height in current mode |
|
|
358
|
+
| `engine.block.setHeight(block, value)` | Set block height in current mode |
|
|
359
|
+
| `engine.block.getHeightMode(block)` | Get current height mode: Absolute, Percent, or Auto |
|
|
360
|
+
| `engine.block.setHeightMode(block, mode)` | Set height mode: Absolute, Percent, or Auto |
|
|
361
|
+
| `engine.block.getFrameWidth(block)` | Get computed width after layout |
|
|
362
|
+
| `engine.block.getFrameHeight(block)` | Get computed height after layout |
|
|
363
|
+
| `engine.block.setPositionX(block, value)` | Set block X position |
|
|
364
|
+
| `engine.block.setPositionY(block, value)` | Set block Y position |
|
|
365
|
+
|
|
366
|
+
|
|
404
367
|
|
|
405
368
|
---
|
|
406
369
|
|
|
407
370
|
## More Resources
|
|
408
371
|
|
|
409
|
-
- **[
|
|
372
|
+
- **[Node.js Documentation Index](https://img.ly/docs/cesdk/node.md)** - Browse all Node.js documentation
|
|
410
373
|
- **[Complete Documentation](./llms-full.txt.md)** - Full documentation in one file (for LLMs)
|
|
411
|
-
- **[Web Documentation](./
|
|
412
|
-
- **[Support](mailto:support@img.ly)** - Contact IMG.LY support
|
|
374
|
+
- **[Web Documentation](./node.md)** - Interactive documentation with examples
|
|
375
|
+
- **[Support](mailto:support@img.ly)** - Contact IMG.LY support
|