@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) > [Fills](./fills.md) > [Solid Color](./fills/color.md)
|
|
4
4
|
|
|
@@ -7,188 +7,87 @@
|
|
|
7
7
|
Apply uniform solid colors to shapes, text, and design blocks using CE.SDK's
|
|
8
8
|
comprehensive color fill system with support for multiple color spaces.
|
|
9
9
|
|
|
10
|
-

|
|
11
|
-
|
|
12
10
|
> **Reading time:** 15 minutes
|
|
13
11
|
>
|
|
14
12
|
> **Resources:**
|
|
15
13
|
>
|
|
16
14
|
> - [Download examples](https://github.com/imgly/cesdk-web-examples/archive/refs/tags/release-$UBQ_VERSION$.zip)
|
|
17
|
-
>
|
|
18
|
-
> - [
|
|
19
|
-
>
|
|
15
|
+
>
|
|
16
|
+
> - [View source on GitHub](https://github.com/imgly/cesdk-web-examples/tree/release-$UBQ_VERSION$/guides-fills-color-server-js)
|
|
17
|
+
>
|
|
18
|
+
> - [Open in StackBlitz](https://stackblitz.com/github/imgly/cesdk-web-examples/tree/v$UBQ_VERSION$/guides-fills-color-server-js)
|
|
20
19
|
|
|
21
20
|
Color fills are one of the fundamental fill types in CE.SDK, allowing you to paint design blocks with solid, uniform colors. Unlike gradient fills that transition between colors or image fills that display photo content, color fills apply a single color across the entire block. The color fill system supports multiple color spaces including RGB for screen display, CMYK for print workflows, and Spot Colors for brand consistency.
|
|
22
21
|
|
|
23
|
-
```typescript file=@cesdk_web_examples/guides-fills-color-
|
|
24
|
-
import
|
|
25
|
-
import {
|
|
26
|
-
|
|
27
|
-
ColorPaletteAssetSource,
|
|
28
|
-
CropPresetsAssetSource,
|
|
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';
|
|
42
|
-
import { calculateGridLayout } from './utils';
|
|
43
|
-
|
|
44
|
-
/**
|
|
45
|
-
* CE.SDK Plugin: Color Fills Guide
|
|
46
|
-
*
|
|
47
|
-
* This example demonstrates:
|
|
48
|
-
* - Creating and applying color fills
|
|
49
|
-
* - Working with RGB, CMYK, and Spot Colors
|
|
50
|
-
* - Managing fill properties
|
|
51
|
-
* - Enabling/disabling fills
|
|
52
|
-
* - Sharing fills between blocks
|
|
53
|
-
*/
|
|
54
|
-
class Example implements EditorPlugin {
|
|
55
|
-
name = packageJson.name;
|
|
56
|
-
|
|
57
|
-
version = packageJson.version;
|
|
58
|
-
|
|
59
|
-
async initialize({ cesdk }: EditorPluginContext): Promise<void> {
|
|
60
|
-
if (!cesdk) {
|
|
61
|
-
throw new Error('CE.SDK instance is required for this plugin');
|
|
62
|
-
}
|
|
22
|
+
```typescript file=@cesdk_web_examples/guides-fills-color-server-js/server-js.ts reference-only
|
|
23
|
+
import CreativeEngine from '@cesdk/node';
|
|
24
|
+
import { writeFileSync, mkdirSync, existsSync } from 'fs';
|
|
25
|
+
import { config } from 'dotenv';
|
|
63
26
|
|
|
64
|
-
|
|
65
|
-
// Add asset source plugins
|
|
66
|
-
await cesdk.addPlugin(new BlurAssetSource());
|
|
67
|
-
await cesdk.addPlugin(new ColorPaletteAssetSource());
|
|
68
|
-
await cesdk.addPlugin(new CropPresetsAssetSource());
|
|
69
|
-
await cesdk.addPlugin(
|
|
70
|
-
new UploadAssetSources({ include: ['ly.img.image.upload'] })
|
|
71
|
-
);
|
|
72
|
-
await cesdk.addPlugin(
|
|
73
|
-
new DemoAssetSources({
|
|
74
|
-
include: [
|
|
75
|
-
'ly.img.templates.blank.*',
|
|
76
|
-
'ly.img.templates.presentation.*',
|
|
77
|
-
'ly.img.templates.print.*',
|
|
78
|
-
'ly.img.templates.social.*',
|
|
79
|
-
'ly.img.image.*'
|
|
80
|
-
]
|
|
81
|
-
})
|
|
82
|
-
);
|
|
83
|
-
await cesdk.addPlugin(new EffectsAssetSource());
|
|
84
|
-
await cesdk.addPlugin(new FiltersAssetSource());
|
|
85
|
-
await cesdk.addPlugin(new PagePresetsAssetSource());
|
|
86
|
-
await cesdk.addPlugin(new StickerAssetSource());
|
|
87
|
-
await cesdk.addPlugin(new TextAssetSource());
|
|
88
|
-
await cesdk.addPlugin(new TextComponentAssetSource());
|
|
89
|
-
await cesdk.addPlugin(new TypefaceAssetSource());
|
|
90
|
-
await cesdk.addPlugin(new VectorShapeAssetSource());
|
|
91
|
-
|
|
92
|
-
// Create a design scene using CE.SDK cesdk method
|
|
93
|
-
await cesdk.actions.run('scene.create', {
|
|
94
|
-
page: { width: 800, height: 600, unit: 'Pixel' }
|
|
95
|
-
});
|
|
27
|
+
config();
|
|
96
28
|
|
|
97
|
-
|
|
29
|
+
async function main() {
|
|
30
|
+
const engine = await CreativeEngine.init({
|
|
31
|
+
baseURL: process.env.IMGLY_LOCAL_ASSETS_URL
|
|
32
|
+
// license: process.env.CESDK_LICENSE,
|
|
33
|
+
});
|
|
98
34
|
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
throw new Error('No page found');
|
|
104
|
-
}
|
|
105
|
-
|
|
106
|
-
// Set page background to light gray
|
|
107
|
-
const pageFill = engine.block.getFill(page);
|
|
108
|
-
engine.block.setColor(pageFill, 'fill/color/value', {
|
|
109
|
-
r: 0.96,
|
|
110
|
-
g: 0.96,
|
|
111
|
-
b: 0.96,
|
|
112
|
-
a: 1.0
|
|
35
|
+
try {
|
|
36
|
+
// Create a scene with a page
|
|
37
|
+
engine.scene.create('VerticalStack', {
|
|
38
|
+
page: { size: { width: 800, height: 600 } }
|
|
113
39
|
});
|
|
40
|
+
const page = engine.block.findByType('page')[0];
|
|
114
41
|
|
|
115
|
-
//
|
|
116
|
-
const
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
// Helper function to create a shape with a fill
|
|
122
|
-
const createShapeWithFill = (
|
|
123
|
-
shapeType: 'rect' | 'ellipse' | 'polygon' | 'star' = 'rect'
|
|
124
|
-
): { block: number; fill: number } => {
|
|
125
|
-
const block = engine.block.create('graphic');
|
|
126
|
-
const shape = engine.block.createShape(shapeType);
|
|
127
|
-
engine.block.setShape(block, shape);
|
|
128
|
-
|
|
129
|
-
// Set size
|
|
130
|
-
engine.block.setWidth(block, blockWidth);
|
|
131
|
-
engine.block.setHeight(block, blockHeight);
|
|
132
|
-
|
|
133
|
-
// Append to page
|
|
134
|
-
engine.block.appendChild(page, block);
|
|
135
|
-
|
|
136
|
-
// Check if block supports fills
|
|
137
|
-
const canHaveFill = engine.block.supportsFill(block);
|
|
138
|
-
if (!canHaveFill) {
|
|
139
|
-
throw new Error('Block does not support fills');
|
|
140
|
-
}
|
|
42
|
+
// Check if block supports fills
|
|
43
|
+
const canHaveFill = engine.block.supportsFill(page);
|
|
44
|
+
if (!canHaveFill) {
|
|
45
|
+
throw new Error('Block does not support fills');
|
|
46
|
+
}
|
|
141
47
|
|
|
142
|
-
|
|
143
|
-
|
|
48
|
+
// Create a color fill
|
|
49
|
+
const colorFill = engine.block.createFill('color');
|
|
144
50
|
|
|
145
|
-
|
|
146
|
-
|
|
51
|
+
// Create a graphic block with a shape
|
|
52
|
+
const block = engine.block.create('graphic');
|
|
53
|
+
engine.block.setShape(block, engine.block.createShape('rect'));
|
|
54
|
+
engine.block.setWidth(block, 200);
|
|
55
|
+
engine.block.setHeight(block, 150);
|
|
56
|
+
engine.block.setPositionX(block, 50);
|
|
57
|
+
engine.block.setPositionY(block, 50);
|
|
58
|
+
engine.block.appendChild(page, block);
|
|
147
59
|
|
|
148
|
-
|
|
149
|
-
|
|
60
|
+
// Apply the fill to the block
|
|
61
|
+
engine.block.setFill(block, colorFill);
|
|
150
62
|
|
|
151
|
-
//
|
|
152
|
-
|
|
153
|
-
engine.block.setColor(rgbFill, 'fill/color/value', {
|
|
63
|
+
// Set the fill color using RGB values
|
|
64
|
+
engine.block.setColor(colorFill, 'fill/color/value', {
|
|
154
65
|
r: 1.0, // Red (0.0 to 1.0)
|
|
155
66
|
g: 0.0, // Green
|
|
156
67
|
b: 0.0, // Blue
|
|
157
68
|
a: 1.0 // Alpha (opacity)
|
|
158
69
|
});
|
|
159
70
|
|
|
160
|
-
// Example 2: RGB Color Fill (Green with transparency)
|
|
161
|
-
const { block: transparentBlock, fill: transparentFill } =
|
|
162
|
-
createShapeWithFill();
|
|
163
|
-
engine.block.setColor(transparentFill, 'fill/color/value', {
|
|
164
|
-
r: 0.0,
|
|
165
|
-
g: 0.8,
|
|
166
|
-
b: 0.2,
|
|
167
|
-
a: 0.5 // 50% opacity
|
|
168
|
-
});
|
|
169
|
-
|
|
170
|
-
// Example 3: RGB Color Fill (Blue)
|
|
171
|
-
const { block: blueBlock, fill: blueFill } = createShapeWithFill();
|
|
172
|
-
engine.block.setColor(blueFill, 'fill/color/value', {
|
|
173
|
-
r: 0.2,
|
|
174
|
-
g: 0.4,
|
|
175
|
-
b: 0.9,
|
|
176
|
-
a: 1.0
|
|
177
|
-
});
|
|
178
|
-
|
|
179
71
|
// Get the current fill from a block
|
|
180
|
-
const currentFill = engine.block.getFill(
|
|
72
|
+
const currentFill = engine.block.getFill(block);
|
|
181
73
|
const fillType = engine.block.getType(currentFill);
|
|
182
|
-
// eslint-disable-next-line no-console
|
|
183
74
|
console.log('Fill type:', fillType); // '//ly.img.ubq/fill/color'
|
|
184
75
|
|
|
185
76
|
// Get the current color value
|
|
186
|
-
const currentColor = engine.block.getColor(
|
|
187
|
-
// eslint-disable-next-line no-console
|
|
77
|
+
const currentColor = engine.block.getColor(colorFill, 'fill/color/value');
|
|
188
78
|
console.log('Current color:', currentColor);
|
|
189
79
|
|
|
190
|
-
//
|
|
191
|
-
const
|
|
80
|
+
// Create a block with CMYK color for print workflows
|
|
81
|
+
const cmykBlock = engine.block.create('graphic');
|
|
82
|
+
engine.block.setShape(cmykBlock, engine.block.createShape('ellipse'));
|
|
83
|
+
engine.block.setWidth(cmykBlock, 150);
|
|
84
|
+
engine.block.setHeight(cmykBlock, 150);
|
|
85
|
+
engine.block.setPositionX(cmykBlock, 300);
|
|
86
|
+
engine.block.setPositionY(cmykBlock, 50);
|
|
87
|
+
engine.block.appendChild(page, cmykBlock);
|
|
88
|
+
|
|
89
|
+
const cmykFill = engine.block.createFill('color');
|
|
90
|
+
engine.block.setFill(cmykBlock, cmykFill);
|
|
192
91
|
engine.block.setColor(cmykFill, 'fill/color/value', {
|
|
193
92
|
c: 0.0, // Cyan (0.0 to 1.0)
|
|
194
93
|
m: 1.0, // Magenta
|
|
@@ -197,45 +96,37 @@ class Example implements EditorPlugin {
|
|
|
197
96
|
tint: 1.0 // Tint value (0.0 to 1.0)
|
|
198
97
|
});
|
|
199
98
|
|
|
200
|
-
// Example 5: Print-Ready CMYK Color
|
|
201
|
-
const { block: printBlock, fill: printFill } =
|
|
202
|
-
createShapeWithFill('ellipse');
|
|
203
|
-
engine.block.setColor(printFill, 'fill/color/value', {
|
|
204
|
-
c: 0.0,
|
|
205
|
-
m: 0.85,
|
|
206
|
-
y: 1.0,
|
|
207
|
-
k: 0.0,
|
|
208
|
-
tint: 1.0
|
|
209
|
-
});
|
|
210
|
-
|
|
211
|
-
// Example 6: Spot Color (Brand Color)
|
|
212
99
|
// First define the spot color globally
|
|
213
100
|
engine.editor.setSpotColorRGB('BrandRed', 0.9, 0.1, 0.1);
|
|
214
|
-
engine.editor.setSpotColorRGB('BrandBlue', 0.1, 0.3, 0.9);
|
|
215
101
|
|
|
216
102
|
// Then apply to fill
|
|
217
|
-
const
|
|
103
|
+
const spotBlock = engine.block.create('graphic');
|
|
104
|
+
engine.block.setShape(spotBlock, engine.block.createShape('ellipse'));
|
|
105
|
+
engine.block.setWidth(spotBlock, 150);
|
|
106
|
+
engine.block.setHeight(spotBlock, 150);
|
|
107
|
+
engine.block.setPositionX(spotBlock, 500);
|
|
108
|
+
engine.block.setPositionY(spotBlock, 50);
|
|
109
|
+
engine.block.appendChild(page, spotBlock);
|
|
110
|
+
|
|
111
|
+
const spotFill = engine.block.createFill('color');
|
|
112
|
+
engine.block.setFill(spotBlock, spotFill);
|
|
218
113
|
engine.block.setColor(spotFill, 'fill/color/value', {
|
|
219
114
|
name: 'BrandRed',
|
|
220
115
|
tint: 1.0,
|
|
221
116
|
externalReference: '' // Optional reference system
|
|
222
117
|
});
|
|
223
118
|
|
|
224
|
-
//
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
engine.block.
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
engine.block.
|
|
235
|
-
|
|
236
|
-
// Example 9: Toggle fill visibility
|
|
237
|
-
const { block: toggleBlock, fill: toggleFill } =
|
|
238
|
-
createShapeWithFill('star');
|
|
119
|
+
// Toggle fill visibility
|
|
120
|
+
const toggleBlock = engine.block.create('graphic');
|
|
121
|
+
engine.block.setShape(toggleBlock, engine.block.createShape('rect'));
|
|
122
|
+
engine.block.setWidth(toggleBlock, 150);
|
|
123
|
+
engine.block.setHeight(toggleBlock, 100);
|
|
124
|
+
engine.block.setPositionX(toggleBlock, 50);
|
|
125
|
+
engine.block.setPositionY(toggleBlock, 250);
|
|
126
|
+
engine.block.appendChild(page, toggleBlock);
|
|
127
|
+
|
|
128
|
+
const toggleFill = engine.block.createFill('color');
|
|
129
|
+
engine.block.setFill(toggleBlock, toggleFill);
|
|
239
130
|
engine.block.setColor(toggleFill, 'fill/color/value', {
|
|
240
131
|
r: 1.0,
|
|
241
132
|
g: 0.5,
|
|
@@ -245,22 +136,29 @@ class Example implements EditorPlugin {
|
|
|
245
136
|
|
|
246
137
|
// Check fill state
|
|
247
138
|
const isEnabled = engine.block.isFillEnabled(toggleBlock);
|
|
248
|
-
// eslint-disable-next-line no-console
|
|
249
139
|
console.log('Fill enabled:', isEnabled); // true
|
|
250
140
|
|
|
251
|
-
//
|
|
141
|
+
// Disable the fill (block becomes transparent)
|
|
142
|
+
engine.block.setFillEnabled(toggleBlock, false);
|
|
143
|
+
|
|
144
|
+
// Re-enable
|
|
145
|
+
engine.block.setFillEnabled(toggleBlock, true);
|
|
146
|
+
|
|
147
|
+
// Share a single fill instance between multiple blocks
|
|
252
148
|
const block1 = engine.block.create('graphic');
|
|
253
|
-
|
|
254
|
-
engine.block.
|
|
255
|
-
engine.block.
|
|
256
|
-
engine.block.
|
|
149
|
+
engine.block.setShape(block1, engine.block.createShape('rect'));
|
|
150
|
+
engine.block.setWidth(block1, 100);
|
|
151
|
+
engine.block.setHeight(block1, 100);
|
|
152
|
+
engine.block.setPositionX(block1, 250);
|
|
153
|
+
engine.block.setPositionY(block1, 250);
|
|
257
154
|
engine.block.appendChild(page, block1);
|
|
258
155
|
|
|
259
156
|
const block2 = engine.block.create('graphic');
|
|
260
|
-
|
|
261
|
-
engine.block.
|
|
262
|
-
engine.block.
|
|
263
|
-
engine.block.
|
|
157
|
+
engine.block.setShape(block2, engine.block.createShape('rect'));
|
|
158
|
+
engine.block.setWidth(block2, 100);
|
|
159
|
+
engine.block.setHeight(block2, 100);
|
|
160
|
+
engine.block.setPositionX(block2, 370);
|
|
161
|
+
engine.block.setPositionY(block2, 250);
|
|
264
162
|
engine.block.appendChild(page, block2);
|
|
265
163
|
|
|
266
164
|
// Create one fill
|
|
@@ -276,59 +174,101 @@ class Example implements EditorPlugin {
|
|
|
276
174
|
engine.block.setFill(block1, sharedFill);
|
|
277
175
|
engine.block.setFill(block2, sharedFill);
|
|
278
176
|
|
|
279
|
-
//
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
g: 0.9,
|
|
285
|
-
b: 0.1,
|
|
177
|
+
// Now changing the fill affects both blocks
|
|
178
|
+
engine.block.setColor(sharedFill, 'fill/color/value', {
|
|
179
|
+
r: 0.0,
|
|
180
|
+
g: 0.5,
|
|
181
|
+
b: 0.5,
|
|
286
182
|
a: 1.0
|
|
287
183
|
});
|
|
288
184
|
|
|
289
|
-
//
|
|
185
|
+
// Convert colors between different color spaces
|
|
290
186
|
const rgbColor = { r: 1.0, g: 0.0, b: 0.0, a: 1.0 };
|
|
291
187
|
|
|
292
188
|
// Convert to CMYK
|
|
293
189
|
const cmykColor = engine.editor.convertColorToColorSpace(rgbColor, 'CMYK');
|
|
294
|
-
// eslint-disable-next-line no-console
|
|
295
190
|
console.log('Converted CMYK color:', cmykColor);
|
|
296
191
|
|
|
297
|
-
//
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
block1, // Position 9
|
|
309
|
-
block2, // Position 10
|
|
310
|
-
replaceBlock // Position 11
|
|
311
|
-
];
|
|
312
|
-
|
|
313
|
-
blocks.forEach((block, index) => {
|
|
314
|
-
const pos = getPosition(index);
|
|
315
|
-
engine.block.setPositionX(block, pos.x);
|
|
316
|
-
engine.block.setPositionY(block, pos.y);
|
|
317
|
-
});
|
|
192
|
+
// Define and apply brand colors as spot colors
|
|
193
|
+
engine.editor.setSpotColorRGB('PrimaryBrand', 0.2, 0.4, 0.8);
|
|
194
|
+
engine.editor.setSpotColorRGB('SecondaryBrand', 0.9, 0.5, 0.1);
|
|
195
|
+
|
|
196
|
+
const brandBlock = engine.block.create('graphic');
|
|
197
|
+
engine.block.setShape(brandBlock, engine.block.createShape('rect'));
|
|
198
|
+
engine.block.setWidth(brandBlock, 150);
|
|
199
|
+
engine.block.setHeight(brandBlock, 100);
|
|
200
|
+
engine.block.setPositionX(brandBlock, 500);
|
|
201
|
+
engine.block.setPositionY(brandBlock, 250);
|
|
202
|
+
engine.block.appendChild(page, brandBlock);
|
|
318
203
|
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
204
|
+
const brandFill = engine.block.createFill('color');
|
|
205
|
+
engine.block.setFill(brandBlock, brandFill);
|
|
206
|
+
|
|
207
|
+
// Apply brand color
|
|
208
|
+
const brandColor = {
|
|
209
|
+
name: 'PrimaryBrand',
|
|
210
|
+
tint: 1.0,
|
|
211
|
+
externalReference: ''
|
|
212
|
+
};
|
|
213
|
+
engine.block.setColor(brandFill, 'fill/color/value', brandColor);
|
|
214
|
+
|
|
215
|
+
// Create semi-transparent overlay
|
|
216
|
+
const transparentBlock = engine.block.create('graphic');
|
|
217
|
+
engine.block.setShape(transparentBlock, engine.block.createShape('rect'));
|
|
218
|
+
engine.block.setWidth(transparentBlock, 150);
|
|
219
|
+
engine.block.setHeight(transparentBlock, 100);
|
|
220
|
+
engine.block.setPositionX(transparentBlock, 50);
|
|
221
|
+
engine.block.setPositionY(transparentBlock, 400);
|
|
222
|
+
engine.block.appendChild(page, transparentBlock);
|
|
223
|
+
|
|
224
|
+
const transparentFill = engine.block.createFill('color');
|
|
225
|
+
engine.block.setFill(transparentBlock, transparentFill);
|
|
226
|
+
engine.block.setColor(transparentFill, 'fill/color/value', {
|
|
227
|
+
r: 0.0,
|
|
228
|
+
g: 0.8,
|
|
229
|
+
b: 0.2,
|
|
230
|
+
a: 0.5 // 50% opacity
|
|
327
231
|
});
|
|
232
|
+
|
|
233
|
+
// Use CMYK color space for print production
|
|
234
|
+
const printBlock = engine.block.create('graphic');
|
|
235
|
+
engine.block.setShape(printBlock, engine.block.createShape('rect'));
|
|
236
|
+
engine.block.setWidth(printBlock, 150);
|
|
237
|
+
engine.block.setHeight(printBlock, 100);
|
|
238
|
+
engine.block.setPositionX(printBlock, 250);
|
|
239
|
+
engine.block.setPositionY(printBlock, 400);
|
|
240
|
+
engine.block.appendChild(page, printBlock);
|
|
241
|
+
|
|
242
|
+
const printFill = engine.block.createFill('color');
|
|
243
|
+
engine.block.setFill(printBlock, printFill);
|
|
244
|
+
|
|
245
|
+
const printColor = {
|
|
246
|
+
c: 0.0,
|
|
247
|
+
m: 0.85,
|
|
248
|
+
y: 1.0,
|
|
249
|
+
k: 0.0,
|
|
250
|
+
tint: 1.0
|
|
251
|
+
};
|
|
252
|
+
engine.block.setColor(printFill, 'fill/color/value', printColor);
|
|
253
|
+
|
|
254
|
+
// Export the result
|
|
255
|
+
const blob = await engine.block.export(page, { mimeType: 'image/png' });
|
|
256
|
+
const buffer = Buffer.from(await blob.arrayBuffer());
|
|
257
|
+
|
|
258
|
+
// Ensure output directory exists
|
|
259
|
+
if (!existsSync('./output')) {
|
|
260
|
+
mkdirSync('./output');
|
|
261
|
+
}
|
|
262
|
+
|
|
263
|
+
writeFileSync('./output/solid-color-fills.png', buffer);
|
|
264
|
+
console.log('Exported to ./output/solid-color-fills.png');
|
|
265
|
+
|
|
266
|
+
} finally {
|
|
267
|
+
engine.dispose();
|
|
328
268
|
}
|
|
329
269
|
}
|
|
330
270
|
|
|
331
|
-
|
|
271
|
+
main().catch(console.error);
|
|
332
272
|
```
|
|
333
273
|
|
|
334
274
|
This guide demonstrates how to create, apply, and modify color fills programmatically, work with different color spaces, and manage fill properties for various design elements.
|
|
@@ -360,11 +300,11 @@ Each color space serves specific use cases—use RGB for digital designs, CMYK f
|
|
|
360
300
|
|
|
361
301
|
### Verifying Block Compatibility
|
|
362
302
|
|
|
363
|
-
Before applying color fills to a block, verify that the block type supports fills. Not all block types can have fills—for example, scene
|
|
303
|
+
Before applying color fills to a block, verify that the block type supports fills. Not all block types can have fills—for example, scene blocks typically don't support fills.
|
|
364
304
|
|
|
365
|
-
```typescript highlight-check-fill-support
|
|
305
|
+
```typescript highlight=highlight-check-fill-support
|
|
366
306
|
// Check if block supports fills
|
|
367
|
-
const canHaveFill = engine.block.supportsFill(
|
|
307
|
+
const canHaveFill = engine.block.supportsFill(page);
|
|
368
308
|
if (!canHaveFill) {
|
|
369
309
|
throw new Error('Block does not support fills');
|
|
370
310
|
}
|
|
@@ -378,31 +318,31 @@ Graphic blocks, shapes, and text blocks typically support fills. Always check `s
|
|
|
378
318
|
|
|
379
319
|
Create a new color fill instance using the `createFill()` method with the type `'color'` or the full type name `'//ly.img.ubq/fill/color'`.
|
|
380
320
|
|
|
381
|
-
```typescript highlight-create-fill
|
|
321
|
+
```typescript highlight=highlight-create-fill
|
|
382
322
|
// Create a color fill
|
|
383
323
|
const colorFill = engine.block.createFill('color');
|
|
384
324
|
```
|
|
385
325
|
|
|
386
326
|
The `createFill()` method returns a numeric fill ID. The fill exists independently until you attach it to a block using `setFill()`. If you create a fill but don't attach it to a block, you must destroy it manually to prevent memory leaks.
|
|
387
327
|
|
|
388
|
-
### Default Color Fill Properties
|
|
389
|
-
|
|
390
|
-
New color fills have default properties—typically white or transparent. You can discover all available properties using `findAllProperties()`:
|
|
391
|
-
|
|
392
|
-
```typescript
|
|
393
|
-
const properties = engine.block.findAllProperties(colorFillId);
|
|
394
|
-
console.log(properties); // ["fill/color/value", "type"]
|
|
395
|
-
```
|
|
396
|
-
|
|
397
328
|
## Applying Color Fills
|
|
398
329
|
|
|
399
330
|
### Setting a Fill on a Block
|
|
400
331
|
|
|
401
332
|
Once you've created a color fill, attach it to a block using `setFill()`:
|
|
402
333
|
|
|
403
|
-
```typescript highlight-apply-fill
|
|
404
|
-
//
|
|
405
|
-
engine.block.
|
|
334
|
+
```typescript highlight=highlight-apply-fill
|
|
335
|
+
// Create a graphic block with a shape
|
|
336
|
+
const block = engine.block.create('graphic');
|
|
337
|
+
engine.block.setShape(block, engine.block.createShape('rect'));
|
|
338
|
+
engine.block.setWidth(block, 200);
|
|
339
|
+
engine.block.setHeight(block, 150);
|
|
340
|
+
engine.block.setPositionX(block, 50);
|
|
341
|
+
engine.block.setPositionY(block, 50);
|
|
342
|
+
engine.block.appendChild(page, block);
|
|
343
|
+
|
|
344
|
+
// Apply the fill to the block
|
|
345
|
+
engine.block.setFill(block, colorFill);
|
|
406
346
|
```
|
|
407
347
|
|
|
408
348
|
This example creates a graphic block with a rectangle shape and applies the color fill to it. The block will now render with the fill's color.
|
|
@@ -411,11 +351,10 @@ This example creates a graphic block with a rectangle shape and applies the colo
|
|
|
411
351
|
|
|
412
352
|
Retrieve the current fill attached to a block using `getFill()` and inspect its type:
|
|
413
353
|
|
|
414
|
-
```typescript highlight-get-fill
|
|
354
|
+
```typescript highlight=highlight-get-fill
|
|
415
355
|
// Get the current fill from a block
|
|
416
|
-
const currentFill = engine.block.getFill(
|
|
356
|
+
const currentFill = engine.block.getFill(block);
|
|
417
357
|
const fillType = engine.block.getType(currentFill);
|
|
418
|
-
// eslint-disable-next-line no-console
|
|
419
358
|
console.log('Fill type:', fillType); // '//ly.img.ubq/fill/color'
|
|
420
359
|
```
|
|
421
360
|
|
|
@@ -425,9 +364,9 @@ console.log('Fill type:', fillType); // '//ly.img.ubq/fill/color'
|
|
|
425
364
|
|
|
426
365
|
Set the fill color using RGB values with the `setColor()` method. RGB values are normalized floats from 0.0 to 1.0, and the alpha channel controls opacity.
|
|
427
366
|
|
|
428
|
-
```typescript highlight-set-rgb
|
|
429
|
-
|
|
430
|
-
engine.block.setColor(
|
|
367
|
+
```typescript highlight=highlight-set-rgb
|
|
368
|
+
// Set the fill color using RGB values
|
|
369
|
+
engine.block.setColor(colorFill, 'fill/color/value', {
|
|
431
370
|
r: 1.0, // Red (0.0 to 1.0)
|
|
432
371
|
g: 0.0, // Green
|
|
433
372
|
b: 0.0, // Blue
|
|
@@ -441,15 +380,25 @@ The alpha channel (a) controls opacity: 1.0 is fully opaque, 0.0 is fully transp
|
|
|
441
380
|
|
|
442
381
|
For print workflows, use CMYK color space with the `setColor()` method. CMYK values are also normalized from 0.0 to 1.0, and include a tint value for partial color application.
|
|
443
382
|
|
|
444
|
-
```typescript highlight-set-cmyk
|
|
445
|
-
|
|
446
|
-
engine.block.
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
383
|
+
```typescript highlight=highlight-set-cmyk
|
|
384
|
+
// Create a block with CMYK color for print workflows
|
|
385
|
+
const cmykBlock = engine.block.create('graphic');
|
|
386
|
+
engine.block.setShape(cmykBlock, engine.block.createShape('ellipse'));
|
|
387
|
+
engine.block.setWidth(cmykBlock, 150);
|
|
388
|
+
engine.block.setHeight(cmykBlock, 150);
|
|
389
|
+
engine.block.setPositionX(cmykBlock, 300);
|
|
390
|
+
engine.block.setPositionY(cmykBlock, 50);
|
|
391
|
+
engine.block.appendChild(page, cmykBlock);
|
|
392
|
+
|
|
393
|
+
const cmykFill = engine.block.createFill('color');
|
|
394
|
+
engine.block.setFill(cmykBlock, cmykFill);
|
|
395
|
+
engine.block.setColor(cmykFill, 'fill/color/value', {
|
|
396
|
+
c: 0.0, // Cyan (0.0 to 1.0)
|
|
397
|
+
m: 1.0, // Magenta
|
|
398
|
+
y: 0.0, // Yellow
|
|
399
|
+
k: 0.0, // Key/Black
|
|
400
|
+
tint: 1.0 // Tint value (0.0 to 1.0)
|
|
401
|
+
});
|
|
453
402
|
```
|
|
454
403
|
|
|
455
404
|
The tint value allows partial application of the color, useful for creating lighter variations without changing the base CMYK values.
|
|
@@ -458,18 +407,26 @@ The tint value allows partial application of the color, useful for creating ligh
|
|
|
458
407
|
|
|
459
408
|
Spot colors are named colors that must be defined before use. They're ideal for maintaining brand consistency and can have both RGB and CMYK approximations for different output scenarios.
|
|
460
409
|
|
|
461
|
-
```typescript highlight-set-spot
|
|
462
|
-
// First define the spot color globally
|
|
463
|
-
engine.editor.setSpotColorRGB('BrandRed', 0.9, 0.1, 0.1);
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
engine.block.
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
410
|
+
```typescript highlight=highlight-set-spot
|
|
411
|
+
// First define the spot color globally
|
|
412
|
+
engine.editor.setSpotColorRGB('BrandRed', 0.9, 0.1, 0.1);
|
|
413
|
+
|
|
414
|
+
// Then apply to fill
|
|
415
|
+
const spotBlock = engine.block.create('graphic');
|
|
416
|
+
engine.block.setShape(spotBlock, engine.block.createShape('ellipse'));
|
|
417
|
+
engine.block.setWidth(spotBlock, 150);
|
|
418
|
+
engine.block.setHeight(spotBlock, 150);
|
|
419
|
+
engine.block.setPositionX(spotBlock, 500);
|
|
420
|
+
engine.block.setPositionY(spotBlock, 50);
|
|
421
|
+
engine.block.appendChild(page, spotBlock);
|
|
422
|
+
|
|
423
|
+
const spotFill = engine.block.createFill('color');
|
|
424
|
+
engine.block.setFill(spotBlock, spotFill);
|
|
425
|
+
engine.block.setColor(spotFill, 'fill/color/value', {
|
|
426
|
+
name: 'BrandRed',
|
|
427
|
+
tint: 1.0,
|
|
428
|
+
externalReference: '' // Optional reference system
|
|
429
|
+
});
|
|
473
430
|
```
|
|
474
431
|
|
|
475
432
|
First, define the spot color globally using `setSpotColorRGB()` or `setSpotColorCMYK()`, then apply it to your fill using the color name. The tint value controls intensity from 0.0 to 1.0.
|
|
@@ -478,10 +435,9 @@ First, define the spot color globally using `setSpotColorRGB()` or `setSpotColor
|
|
|
478
435
|
|
|
479
436
|
Retrieve the current color value from a fill using `getColor()`:
|
|
480
437
|
|
|
481
|
-
```typescript highlight-get-color
|
|
438
|
+
```typescript highlight=highlight-get-color
|
|
482
439
|
// Get the current color value
|
|
483
|
-
const currentColor = engine.block.getColor(
|
|
484
|
-
// eslint-disable-next-line no-console
|
|
440
|
+
const currentColor = engine.block.getColor(colorFill, 'fill/color/value');
|
|
485
441
|
console.log('Current color:', currentColor);
|
|
486
442
|
```
|
|
487
443
|
|
|
@@ -491,19 +447,34 @@ console.log('Current color:', currentColor);
|
|
|
491
447
|
|
|
492
448
|
You can temporarily disable a fill without removing it from the block. This preserves all fill properties while making the block transparent:
|
|
493
449
|
|
|
494
|
-
```typescript highlight-toggle-fill
|
|
495
|
-
|
|
496
|
-
engine.block.
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
450
|
+
```typescript highlight=highlight-toggle-fill
|
|
451
|
+
// Toggle fill visibility
|
|
452
|
+
const toggleBlock = engine.block.create('graphic');
|
|
453
|
+
engine.block.setShape(toggleBlock, engine.block.createShape('rect'));
|
|
454
|
+
engine.block.setWidth(toggleBlock, 150);
|
|
455
|
+
engine.block.setHeight(toggleBlock, 100);
|
|
456
|
+
engine.block.setPositionX(toggleBlock, 50);
|
|
457
|
+
engine.block.setPositionY(toggleBlock, 250);
|
|
458
|
+
engine.block.appendChild(page, toggleBlock);
|
|
459
|
+
|
|
460
|
+
const toggleFill = engine.block.createFill('color');
|
|
461
|
+
engine.block.setFill(toggleBlock, toggleFill);
|
|
462
|
+
engine.block.setColor(toggleFill, 'fill/color/value', {
|
|
463
|
+
r: 1.0,
|
|
464
|
+
g: 0.5,
|
|
465
|
+
b: 0.0,
|
|
466
|
+
a: 1.0
|
|
467
|
+
});
|
|
502
468
|
|
|
503
|
-
// Check fill state
|
|
504
|
-
const isEnabled = engine.block.isFillEnabled(toggleBlock);
|
|
505
|
-
//
|
|
506
|
-
|
|
469
|
+
// Check fill state
|
|
470
|
+
const isEnabled = engine.block.isFillEnabled(toggleBlock);
|
|
471
|
+
console.log('Fill enabled:', isEnabled); // true
|
|
472
|
+
|
|
473
|
+
// Disable the fill (block becomes transparent)
|
|
474
|
+
engine.block.setFillEnabled(toggleBlock, false);
|
|
475
|
+
|
|
476
|
+
// Re-enable
|
|
477
|
+
engine.block.setFillEnabled(toggleBlock, true);
|
|
507
478
|
```
|
|
508
479
|
|
|
509
480
|
Disabling fills is useful for creating stroke-only designs or for temporarily hiding fills during interactive editing sessions. The fill properties remain intact and can be re-enabled at any time.
|
|
@@ -514,33 +485,44 @@ Disabling fills is useful for creating stroke-only designs or for temporarily hi
|
|
|
514
485
|
|
|
515
486
|
You can share a single fill instance between multiple blocks. Changes to the shared fill affect all blocks using it:
|
|
516
487
|
|
|
517
|
-
```typescript highlight-share-fill
|
|
518
|
-
|
|
519
|
-
const
|
|
520
|
-
engine.block.setShape(block1,
|
|
521
|
-
engine.block.setWidth(block1,
|
|
522
|
-
engine.block.setHeight(block1,
|
|
523
|
-
engine.block.
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
engine.block.
|
|
528
|
-
engine.block.
|
|
529
|
-
engine.block.
|
|
530
|
-
engine.block.
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
488
|
+
```typescript highlight=highlight-share-fill
|
|
489
|
+
// Share a single fill instance between multiple blocks
|
|
490
|
+
const block1 = engine.block.create('graphic');
|
|
491
|
+
engine.block.setShape(block1, engine.block.createShape('rect'));
|
|
492
|
+
engine.block.setWidth(block1, 100);
|
|
493
|
+
engine.block.setHeight(block1, 100);
|
|
494
|
+
engine.block.setPositionX(block1, 250);
|
|
495
|
+
engine.block.setPositionY(block1, 250);
|
|
496
|
+
engine.block.appendChild(page, block1);
|
|
497
|
+
|
|
498
|
+
const block2 = engine.block.create('graphic');
|
|
499
|
+
engine.block.setShape(block2, engine.block.createShape('rect'));
|
|
500
|
+
engine.block.setWidth(block2, 100);
|
|
501
|
+
engine.block.setHeight(block2, 100);
|
|
502
|
+
engine.block.setPositionX(block2, 370);
|
|
503
|
+
engine.block.setPositionY(block2, 250);
|
|
504
|
+
engine.block.appendChild(page, block2);
|
|
505
|
+
|
|
506
|
+
// Create one fill
|
|
507
|
+
const sharedFill = engine.block.createFill('color');
|
|
508
|
+
engine.block.setColor(sharedFill, 'fill/color/value', {
|
|
509
|
+
r: 0.5,
|
|
510
|
+
g: 0.0,
|
|
511
|
+
b: 0.5,
|
|
512
|
+
a: 1.0
|
|
513
|
+
});
|
|
540
514
|
|
|
541
|
-
// Apply to both blocks
|
|
542
|
-
engine.block.setFill(block1, sharedFill);
|
|
543
|
-
engine.block.setFill(block2, sharedFill);
|
|
515
|
+
// Apply to both blocks
|
|
516
|
+
engine.block.setFill(block1, sharedFill);
|
|
517
|
+
engine.block.setFill(block2, sharedFill);
|
|
518
|
+
|
|
519
|
+
// Now changing the fill affects both blocks
|
|
520
|
+
engine.block.setColor(sharedFill, 'fill/color/value', {
|
|
521
|
+
r: 0.0,
|
|
522
|
+
g: 0.5,
|
|
523
|
+
b: 0.5,
|
|
524
|
+
a: 1.0
|
|
525
|
+
});
|
|
544
526
|
```
|
|
545
527
|
|
|
546
528
|
With shared fills, modifying the fill's color updates all blocks simultaneously. The fill is only destroyed when the last block referencing it is destroyed.
|
|
@@ -549,13 +531,13 @@ With shared fills, modifying the fill's color updates all blocks simultaneously.
|
|
|
549
531
|
|
|
550
532
|
Convert colors between different color spaces using `convertColorToColorSpace()`:
|
|
551
533
|
|
|
552
|
-
```typescript highlight-convert-color
|
|
553
|
-
|
|
534
|
+
```typescript highlight=highlight-convert-color
|
|
535
|
+
// Convert colors between different color spaces
|
|
536
|
+
const rgbColor = { r: 1.0, g: 0.0, b: 0.0, a: 1.0 };
|
|
554
537
|
|
|
555
|
-
// Convert to CMYK
|
|
556
|
-
const cmykColor = engine.editor.convertColorToColorSpace(rgbColor, 'CMYK');
|
|
557
|
-
|
|
558
|
-
console.log('Converted CMYK color:', cmykColor);
|
|
538
|
+
// Convert to CMYK
|
|
539
|
+
const cmykColor = engine.editor.convertColorToColorSpace(rgbColor, 'CMYK');
|
|
540
|
+
console.log('Converted CMYK color:', cmykColor);
|
|
559
541
|
```
|
|
560
542
|
|
|
561
543
|
This is useful when you need to ensure color consistency across different output mediums (screen vs. print).
|
|
@@ -566,11 +548,29 @@ This is useful when you need to ensure color consistency across different output
|
|
|
566
548
|
|
|
567
549
|
Define and apply brand colors as spot colors to maintain consistency across all design elements:
|
|
568
550
|
|
|
569
|
-
```typescript highlight-brand-colors
|
|
570
|
-
//
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
551
|
+
```typescript highlight=highlight-brand-colors
|
|
552
|
+
// Define and apply brand colors as spot colors
|
|
553
|
+
engine.editor.setSpotColorRGB('PrimaryBrand', 0.2, 0.4, 0.8);
|
|
554
|
+
engine.editor.setSpotColorRGB('SecondaryBrand', 0.9, 0.5, 0.1);
|
|
555
|
+
|
|
556
|
+
const brandBlock = engine.block.create('graphic');
|
|
557
|
+
engine.block.setShape(brandBlock, engine.block.createShape('rect'));
|
|
558
|
+
engine.block.setWidth(brandBlock, 150);
|
|
559
|
+
engine.block.setHeight(brandBlock, 100);
|
|
560
|
+
engine.block.setPositionX(brandBlock, 500);
|
|
561
|
+
engine.block.setPositionY(brandBlock, 250);
|
|
562
|
+
engine.block.appendChild(page, brandBlock);
|
|
563
|
+
|
|
564
|
+
const brandFill = engine.block.createFill('color');
|
|
565
|
+
engine.block.setFill(brandBlock, brandFill);
|
|
566
|
+
|
|
567
|
+
// Apply brand color
|
|
568
|
+
const brandColor = {
|
|
569
|
+
name: 'PrimaryBrand',
|
|
570
|
+
tint: 1.0,
|
|
571
|
+
externalReference: ''
|
|
572
|
+
};
|
|
573
|
+
engine.block.setColor(brandFill, 'fill/color/value', brandColor);
|
|
574
574
|
```
|
|
575
575
|
|
|
576
576
|
Using spot colors ensures brand consistency and makes it easy to update all instances of a brand color by modifying the spot color definition.
|
|
@@ -579,30 +579,51 @@ Using spot colors ensures brand consistency and makes it easy to update all inst
|
|
|
579
579
|
|
|
580
580
|
Create semi-transparent overlays and visual effects by adjusting the alpha channel:
|
|
581
581
|
|
|
582
|
-
```typescript highlight-transparency
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
engine.block.
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
582
|
+
```typescript highlight=highlight-transparency
|
|
583
|
+
// Create semi-transparent overlay
|
|
584
|
+
const transparentBlock = engine.block.create('graphic');
|
|
585
|
+
engine.block.setShape(transparentBlock, engine.block.createShape('rect'));
|
|
586
|
+
engine.block.setWidth(transparentBlock, 150);
|
|
587
|
+
engine.block.setHeight(transparentBlock, 100);
|
|
588
|
+
engine.block.setPositionX(transparentBlock, 50);
|
|
589
|
+
engine.block.setPositionY(transparentBlock, 400);
|
|
590
|
+
engine.block.appendChild(page, transparentBlock);
|
|
591
|
+
|
|
592
|
+
const transparentFill = engine.block.createFill('color');
|
|
593
|
+
engine.block.setFill(transparentBlock, transparentFill);
|
|
594
|
+
engine.block.setColor(transparentFill, 'fill/color/value', {
|
|
595
|
+
r: 0.0,
|
|
596
|
+
g: 0.8,
|
|
597
|
+
b: 0.2,
|
|
598
|
+
a: 0.5 // 50% opacity
|
|
599
|
+
});
|
|
591
600
|
```
|
|
592
601
|
|
|
593
602
|
### Print-Ready Colors
|
|
594
603
|
|
|
595
604
|
Use CMYK color space for designs destined for print production:
|
|
596
605
|
|
|
597
|
-
```typescript highlight-print-colors
|
|
598
|
-
|
|
599
|
-
engine.block.
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
606
|
+
```typescript highlight=highlight-print-colors
|
|
607
|
+
// Use CMYK color space for print production
|
|
608
|
+
const printBlock = engine.block.create('graphic');
|
|
609
|
+
engine.block.setShape(printBlock, engine.block.createShape('rect'));
|
|
610
|
+
engine.block.setWidth(printBlock, 150);
|
|
611
|
+
engine.block.setHeight(printBlock, 100);
|
|
612
|
+
engine.block.setPositionX(printBlock, 250);
|
|
613
|
+
engine.block.setPositionY(printBlock, 400);
|
|
614
|
+
engine.block.appendChild(page, printBlock);
|
|
615
|
+
|
|
616
|
+
const printFill = engine.block.createFill('color');
|
|
617
|
+
engine.block.setFill(printBlock, printFill);
|
|
618
|
+
|
|
619
|
+
const printColor = {
|
|
620
|
+
c: 0.0,
|
|
621
|
+
m: 0.85,
|
|
622
|
+
y: 1.0,
|
|
623
|
+
k: 0.0,
|
|
624
|
+
tint: 1.0
|
|
625
|
+
};
|
|
626
|
+
engine.block.setColor(printFill, 'fill/color/value', printColor);
|
|
606
627
|
```
|
|
607
628
|
|
|
608
629
|
## Troubleshooting
|
|
@@ -668,11 +689,13 @@ Now that you understand color fills, explore other fill types and color manageme
|
|
|
668
689
|
- Review Apply Colors for color management across properties
|
|
669
690
|
- Study Blocks Concept for understanding the block system
|
|
670
691
|
|
|
692
|
+
|
|
693
|
+
|
|
671
694
|
---
|
|
672
695
|
|
|
673
696
|
## More Resources
|
|
674
697
|
|
|
675
|
-
- **[
|
|
698
|
+
- **[Node.js Documentation Index](https://img.ly/docs/cesdk/node.md)** - Browse all Node.js documentation
|
|
676
699
|
- **[Complete Documentation](./llms-full.txt.md)** - Full documentation in one file (for LLMs)
|
|
677
|
-
- **[Web Documentation](./
|
|
678
|
-
- **[Support](mailto:support@img.ly)** - Contact IMG.LY support
|
|
700
|
+
- **[Web Documentation](./node.md)** - Interactive documentation with examples
|
|
701
|
+
- **[Support](mailto:support@img.ly)** - Contact IMG.LY support
|