@imgly/codesign-mcp 0.1.0
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/LICENSE.md +16 -0
- package/README.md +158 -0
- package/assets/docs/api/SKILL.md +49 -0
- package/assets/docs/api/index.d.ts +10518 -0
- package/assets/docs/guide/SKILL.md +142 -0
- package/assets/docs/guide/actions.md +1038 -0
- package/assets/docs/guide/animation/create/base.md +467 -0
- package/assets/docs/guide/animation/create/text.md +453 -0
- package/assets/docs/guide/animation/create.md +558 -0
- package/assets/docs/guide/animation/edit.md +501 -0
- package/assets/docs/guide/animation/overview.md +22 -0
- package/assets/docs/guide/animation/types.md +430 -0
- package/assets/docs/guide/animation.md +23 -0
- package/assets/docs/guide/api/AssetAPI.md +602 -0
- package/assets/docs/guide/api/BlockAPI.md +6152 -0
- package/assets/docs/guide/api/CreativeEngine.md +180 -0
- package/assets/docs/guide/api/EditorAPI.md +1261 -0
- package/assets/docs/guide/api/EventAPI.md +25 -0
- package/assets/docs/guide/api/SceneAPI.md +729 -0
- package/assets/docs/guide/api/VariableAPI.md +59 -0
- package/assets/docs/guide/api/types.md +71 -0
- package/assets/docs/guide/api-reference/overview.md +20 -0
- package/assets/docs/guide/automation/auto-resize.md +412 -0
- package/assets/docs/guide/automation/batch-processing.md +474 -0
- package/assets/docs/guide/automation/data-merge.md +406 -0
- package/assets/docs/guide/automation/design-generation.md +107 -0
- package/assets/docs/guide/automation/overview.md +16 -0
- package/assets/docs/guide/automation.md +24 -0
- package/assets/docs/guide/browser-support.md +38 -0
- package/assets/docs/guide/capabilities.md +18 -0
- package/assets/docs/guide/colors/adjust.md +551 -0
- package/assets/docs/guide/colors/apply.md +349 -0
- package/assets/docs/guide/colors/basics.md +440 -0
- package/assets/docs/guide/colors/conversion.md +504 -0
- package/assets/docs/guide/colors/create-color-palette.md +426 -0
- package/assets/docs/guide/colors/for-print/cmyk.md +577 -0
- package/assets/docs/guide/colors/for-print/spot.md +751 -0
- package/assets/docs/guide/colors/for-print.md +21 -0
- package/assets/docs/guide/colors/for-screen/p3.md +60 -0
- package/assets/docs/guide/colors/for-screen/srgb.md +463 -0
- package/assets/docs/guide/colors/for-screen.md +21 -0
- package/assets/docs/guide/colors/overview.md +20 -0
- package/assets/docs/guide/colors/replace.md +535 -0
- package/assets/docs/guide/colors.md +28 -0
- package/assets/docs/guide/compatibility.md +27 -0
- package/assets/docs/guide/concepts/architecture.md +99 -0
- package/assets/docs/guide/concepts/assets.md +360 -0
- package/assets/docs/guide/concepts/blocks.md +750 -0
- package/assets/docs/guide/concepts/buffers.md +546 -0
- package/assets/docs/guide/concepts/design-units.md +333 -0
- package/assets/docs/guide/concepts/edit-modes.md +431 -0
- package/assets/docs/guide/concepts/editing-workflow.md +303 -0
- package/assets/docs/guide/concepts/events.md +466 -0
- package/assets/docs/guide/concepts/headless-mode/browser.md +291 -0
- package/assets/docs/guide/concepts/pages.md +396 -0
- package/assets/docs/guide/concepts/resources.md +496 -0
- package/assets/docs/guide/concepts/scenes.md +443 -0
- package/assets/docs/guide/concepts/templating.md +194 -0
- package/assets/docs/guide/concepts/terminology.md +296 -0
- package/assets/docs/guide/concepts/undo-and-history.md +461 -0
- package/assets/docs/guide/concepts.md +38 -0
- package/assets/docs/guide/configuration.md +469 -0
- package/assets/docs/guide/conversion/overview.md +22 -0
- package/assets/docs/guide/conversion/to-base64.md +234 -0
- package/assets/docs/guide/conversion/to-pdf.md +616 -0
- package/assets/docs/guide/conversion/to-png.md +290 -0
- package/assets/docs/guide/conversion.md +23 -0
- package/assets/docs/guide/create-audio/audio/add-music.md +430 -0
- package/assets/docs/guide/create-audio/audio/add-sound-effects.md +664 -0
- package/assets/docs/guide/create-audio/audio/loop.md +370 -0
- package/assets/docs/guide/create-audio/audio.md +336 -0
- package/assets/docs/guide/create-composition/add-background.md +395 -0
- package/assets/docs/guide/create-composition/blend-modes.md +372 -0
- package/assets/docs/guide/create-composition/collage.md +432 -0
- package/assets/docs/guide/create-composition/group-and-ungroup.md +388 -0
- package/assets/docs/guide/create-composition/layer-management.md +503 -0
- package/assets/docs/guide/create-composition/layout.md +396 -0
- package/assets/docs/guide/create-composition/lock-design.md +362 -0
- package/assets/docs/guide/create-composition/multi-page.md +204 -0
- package/assets/docs/guide/create-composition/overview.md +18 -0
- package/assets/docs/guide/create-composition/programmatic.md +593 -0
- package/assets/docs/guide/create-composition.md +30 -0
- package/assets/docs/guide/create-templates/add-dynamic-content/placeholders.md +688 -0
- package/assets/docs/guide/create-templates/add-dynamic-content/set-editing-constraints.md +600 -0
- package/assets/docs/guide/create-templates/add-dynamic-content/text-variables.md +647 -0
- package/assets/docs/guide/create-templates/add-dynamic-content.md +307 -0
- package/assets/docs/guide/create-templates/add-to-template-library.md +297 -0
- package/assets/docs/guide/create-templates/edit-or-remove.md +441 -0
- package/assets/docs/guide/create-templates/from-scratch.md +558 -0
- package/assets/docs/guide/create-templates/import/from-scene-file.md +440 -0
- package/assets/docs/guide/create-templates/import.md +244 -0
- package/assets/docs/guide/create-templates/lock.md +325 -0
- package/assets/docs/guide/create-templates/overview.md +16 -0
- package/assets/docs/guide/create-templates.md +32 -0
- package/assets/docs/guide/create-video/audio/adjust-speed.md +302 -0
- package/assets/docs/guide/create-video/audio/adjust-volume.md +346 -0
- package/assets/docs/guide/create-video/control.md +285 -0
- package/assets/docs/guide/create-video/limitations.md +396 -0
- package/assets/docs/guide/create-video/overview.md +224 -0
- package/assets/docs/guide/create-video/timeline-editor.md +622 -0
- package/assets/docs/guide/create-video/update-caption-presets.md +676 -0
- package/assets/docs/guide/create-video.md +32 -0
- package/assets/docs/guide/edit-image/add-watermark.md +497 -0
- package/assets/docs/guide/edit-image/overview.md +22 -0
- package/assets/docs/guide/edit-image/remove-bg.md +420 -0
- package/assets/docs/guide/edit-image/replace-colors.md +680 -0
- package/assets/docs/guide/edit-image/transform/crop.md +523 -0
- package/assets/docs/guide/edit-image/transform/move.md +279 -0
- package/assets/docs/guide/edit-image/transform/resize.md +301 -0
- package/assets/docs/guide/edit-image/transform/rotate.md +408 -0
- package/assets/docs/guide/edit-image/transform/scale.md +278 -0
- package/assets/docs/guide/edit-image/transform.md +24 -0
- package/assets/docs/guide/edit-image/vectorize.md +204 -0
- package/assets/docs/guide/edit-image.md +25 -0
- package/assets/docs/guide/edit-video/add-captions.md +589 -0
- package/assets/docs/guide/edit-video/add-watermark.md +429 -0
- package/assets/docs/guide/edit-video/join-and-arrange.md +540 -0
- package/assets/docs/guide/edit-video/redaction.md +544 -0
- package/assets/docs/guide/edit-video/split.md +634 -0
- package/assets/docs/guide/edit-video/transform/crop.md +380 -0
- package/assets/docs/guide/edit-video/transform/flip.md +182 -0
- package/assets/docs/guide/edit-video/transform/move.md +413 -0
- package/assets/docs/guide/edit-video/transform/resize.md +534 -0
- package/assets/docs/guide/edit-video/transform/rotate.md +312 -0
- package/assets/docs/guide/edit-video/transform/scale.md +603 -0
- package/assets/docs/guide/edit-video/transform.md +25 -0
- package/assets/docs/guide/edit-video/trim.md +773 -0
- package/assets/docs/guide/engine-interface.md +108 -0
- package/assets/docs/guide/export-save-publish/create-thumbnail.md +292 -0
- package/assets/docs/guide/export-save-publish/export/compress.md +639 -0
- package/assets/docs/guide/export-save-publish/export/overview.md +576 -0
- package/assets/docs/guide/export-save-publish/export/partial-export.md +694 -0
- package/assets/docs/guide/export-save-publish/export/size-limits.md +401 -0
- package/assets/docs/guide/export-save-publish/export/to-html5.md +474 -0
- package/assets/docs/guide/export-save-publish/export/to-jpeg.md +312 -0
- package/assets/docs/guide/export-save-publish/export/to-mp4.md +364 -0
- package/assets/docs/guide/export-save-publish/export/to-pdf.md +389 -0
- package/assets/docs/guide/export-save-publish/export/to-png.md +255 -0
- package/assets/docs/guide/export-save-publish/export/to-raw-data.md +303 -0
- package/assets/docs/guide/export-save-publish/export/to-webp.md +261 -0
- package/assets/docs/guide/export-save-publish/export/with-color-mask.md +278 -0
- package/assets/docs/guide/export-save-publish/export.md +36 -0
- package/assets/docs/guide/export-save-publish/for-printing.md +423 -0
- package/assets/docs/guide/export-save-publish/for-social-media.md +318 -0
- package/assets/docs/guide/export-save-publish/pre-export-validation.md +698 -0
- package/assets/docs/guide/export-save-publish/save.md +340 -0
- package/assets/docs/guide/export-save-publish/store-custom-metadata.md +367 -0
- package/assets/docs/guide/file-format-support.md +34 -0
- package/assets/docs/guide/fills/color.md +678 -0
- package/assets/docs/guide/fills/image.md +539 -0
- package/assets/docs/guide/fills/overview.md +144 -0
- package/assets/docs/guide/fills/video.md +641 -0
- package/assets/docs/guide/fills.md +24 -0
- package/assets/docs/guide/filters-and-effects/apply.md +1019 -0
- package/assets/docs/guide/filters-and-effects/blur.md +382 -0
- package/assets/docs/guide/filters-and-effects/chroma-key-green-screen.md +445 -0
- package/assets/docs/guide/filters-and-effects/create-custom-filters.md +614 -0
- package/assets/docs/guide/filters-and-effects/create-custom-lut-filter.md +426 -0
- package/assets/docs/guide/filters-and-effects/distortion.md +527 -0
- package/assets/docs/guide/filters-and-effects/duotone.md +602 -0
- package/assets/docs/guide/filters-and-effects/gradients.md +1311 -0
- package/assets/docs/guide/filters-and-effects/overview.md +22 -0
- package/assets/docs/guide/filters-and-effects/support.md +623 -0
- package/assets/docs/guide/filters-and-effects.md +28 -0
- package/assets/docs/guide/get-started/agent-skills.md +119 -0
- package/assets/docs/guide/get-started/build-with-ai.md +45 -0
- package/assets/docs/guide/get-started/mcp-server.md +119 -0
- package/assets/docs/guide/get-started/overview.md +28 -0
- package/assets/docs/guide/get-started/vanilla-js/quickstart.md +175 -0
- package/assets/docs/guide/grid-and-rulers.md +222 -0
- package/assets/docs/guide/guides/export-save-publish/export/audio.md +224 -0
- package/assets/docs/guide/guides/text/rendering-internals.md +796 -0
- package/assets/docs/guide/guides.md +49 -0
- package/assets/docs/guide/import-media/asset-library.md +23 -0
- package/assets/docs/guide/import-media/asset-panel/basics.md +324 -0
- package/assets/docs/guide/import-media/asset-panel/customize.md +478 -0
- package/assets/docs/guide/import-media/asset-panel/refresh-assets.md +415 -0
- package/assets/docs/guide/import-media/asset-panel/thumbnails.md +633 -0
- package/assets/docs/guide/import-media/capture-from-camera/record-video.md +137 -0
- package/assets/docs/guide/import-media/capture-from-camera.md +20 -0
- package/assets/docs/guide/import-media/concepts.md +173 -0
- package/assets/docs/guide/import-media/content-json-schema.md +615 -0
- package/assets/docs/guide/import-media/default-assets.md +381 -0
- package/assets/docs/guide/import-media/edit-or-remove-assets.md +489 -0
- package/assets/docs/guide/import-media/file-format-support.md +178 -0
- package/assets/docs/guide/import-media/from-local-source/user-upload.md +438 -0
- package/assets/docs/guide/import-media/from-local-source.md +20 -0
- package/assets/docs/guide/import-media/from-remote-source/asset-versioning.md +390 -0
- package/assets/docs/guide/import-media/from-remote-source/getty-images.md +627 -0
- package/assets/docs/guide/import-media/from-remote-source/imgly-premium-assets.md +625 -0
- package/assets/docs/guide/import-media/from-remote-source/pexels.md +692 -0
- package/assets/docs/guide/import-media/from-remote-source/remote-asset.md +473 -0
- package/assets/docs/guide/import-media/from-remote-source/soundstripe.md +497 -0
- package/assets/docs/guide/import-media/from-remote-source/third-party.md +51 -0
- package/assets/docs/guide/import-media/from-remote-source/unsplash.md +914 -0
- package/assets/docs/guide/import-media/from-remote-source/your-server.md +764 -0
- package/assets/docs/guide/import-media/from-remote-source.md +28 -0
- package/assets/docs/guide/import-media/overview.md +32 -0
- package/assets/docs/guide/import-media/retrieve-mimetype.md +274 -0
- package/assets/docs/guide/import-media/size-limits.md +20 -0
- package/assets/docs/guide/import-media/source-sets.md +476 -0
- package/assets/docs/guide/import-media.md +32 -0
- package/assets/docs/guide/insert-media/audio.md +291 -0
- package/assets/docs/guide/insert-media/images.md +380 -0
- package/assets/docs/guide/insert-media/position-and-align.md +734 -0
- package/assets/docs/guide/insert-media/shapes-or-stickers.md +799 -0
- package/assets/docs/guide/insert-media/videos.md +308 -0
- package/assets/docs/guide/insert-media.md +24 -0
- package/assets/docs/guide/key-capabilities.md +24 -0
- package/assets/docs/guide/key-concepts.md +83 -0
- package/assets/docs/guide/licensing.md +45 -0
- package/assets/docs/guide/llms-txt.md +53 -0
- package/assets/docs/guide/open-the-editor/blank-canvas.md +124 -0
- package/assets/docs/guide/open-the-editor/from-htmlcanvas.md +228 -0
- package/assets/docs/guide/open-the-editor/from-image.md +205 -0
- package/assets/docs/guide/open-the-editor/from-template.md +189 -0
- package/assets/docs/guide/open-the-editor/from-video.md +274 -0
- package/assets/docs/guide/open-the-editor/import-design/from-archive.md +504 -0
- package/assets/docs/guide/open-the-editor/import-design/from-indesign.md +680 -0
- package/assets/docs/guide/open-the-editor/import-design/from-photoshop.md +865 -0
- package/assets/docs/guide/open-the-editor/import-design.md +481 -0
- package/assets/docs/guide/open-the-editor/load-scene.md +178 -0
- package/assets/docs/guide/open-the-editor/overview.md +20 -0
- package/assets/docs/guide/open-the-editor/set-zoom-level.md +303 -0
- package/assets/docs/guide/open-the-editor/uri-resolver.md +347 -0
- package/assets/docs/guide/open-the-editor.md +29 -0
- package/assets/docs/guide/outlines/overview.md +14 -0
- package/assets/docs/guide/outlines/shadows-and-glows.md +515 -0
- package/assets/docs/guide/outlines/strokes.md +292 -0
- package/assets/docs/guide/outlines.md +22 -0
- package/assets/docs/guide/overview.md +22 -0
- package/assets/docs/guide/performance.md +217 -0
- package/assets/docs/guide/plugins/asset-sources.md +553 -0
- package/assets/docs/guide/plugins/print-ready-pdf.md +549 -0
- package/assets/docs/guide/plugins.md +36 -0
- package/assets/docs/guide/rules/asset-handling.md +180 -0
- package/assets/docs/guide/rules/common-pitfalls.md +272 -0
- package/assets/docs/guide/rules/content-fill-mode.md +29 -0
- package/assets/docs/guide/rules/enforce-brand-guidelines.md +672 -0
- package/assets/docs/guide/rules/lock-content.md +478 -0
- package/assets/docs/guide/rules/moderate-content.md +761 -0
- package/assets/docs/guide/rules/overview.md +514 -0
- package/assets/docs/guide/rules/silent-init-errors.md +137 -0
- package/assets/docs/guide/rules/verify-properties-before-use.md +78 -0
- package/assets/docs/guide/rules.md +23 -0
- package/assets/docs/guide/security.md +199 -0
- package/assets/docs/guide/serve-assets.md +332 -0
- package/assets/docs/guide/settings.md +199 -0
- package/assets/docs/guide/shapes.md +23 -0
- package/assets/docs/guide/starterkits/3d-mockup-editor.md +748 -0
- package/assets/docs/guide/starterkits/advanced-editor.md +698 -0
- package/assets/docs/guide/starterkits/advanced-video-editor.md +696 -0
- package/assets/docs/guide/starterkits/ai-editor.md +749 -0
- package/assets/docs/guide/starterkits/airtable-image-editor.md +672 -0
- package/assets/docs/guide/starterkits/apparel-ui.md +188 -0
- package/assets/docs/guide/starterkits/assets.md +27 -0
- package/assets/docs/guide/starterkits/auto-resize.md +586 -0
- package/assets/docs/guide/starterkits/automated-video-generation.md +692 -0
- package/assets/docs/guide/starterkits/background-removal-editor.md +480 -0
- package/assets/docs/guide/starterkits/content-moderation.md +863 -0
- package/assets/docs/guide/starterkits/creative-automation.md +28 -0
- package/assets/docs/guide/starterkits/custom-built-uis.md +26 -0
- package/assets/docs/guide/starterkits/customization.md +29 -0
- package/assets/docs/guide/starterkits/cutout-lines-editor.md +470 -0
- package/assets/docs/guide/starterkits/data-merge.md +850 -0
- package/assets/docs/guide/starterkits/design-editor.md +698 -0
- package/assets/docs/guide/starterkits/design-generation.md +719 -0
- package/assets/docs/guide/starterkits/design-validation.md +808 -0
- package/assets/docs/guide/starterkits/editor-ui-configurations.md +14 -0
- package/assets/docs/guide/starterkits/export-options.md +724 -0
- package/assets/docs/guide/starterkits/export-using-renderer.md +708 -0
- package/assets/docs/guide/starterkits/extensibility.md +28 -0
- package/assets/docs/guide/starterkits/force-crop-editor.md +675 -0
- package/assets/docs/guide/starterkits/form-based-template-adoption.md +522 -0
- package/assets/docs/guide/starterkits/getty-images-editor.md +700 -0
- package/assets/docs/guide/starterkits/html5-ads-exporter.md +719 -0
- package/assets/docs/guide/starterkits/indesign-template-import.md +580 -0
- package/assets/docs/guide/starterkits/layouts-editor.md +724 -0
- package/assets/docs/guide/starterkits/mobile-ui.md +185 -0
- package/assets/docs/guide/starterkits/mockup-editor.md +745 -0
- package/assets/docs/guide/starterkits/multi-image-generation.md +542 -0
- package/assets/docs/guide/starterkits/page-sizes-editor.md +657 -0
- package/assets/docs/guide/starterkits/pexels-image-editor.md +665 -0
- package/assets/docs/guide/starterkits/photo-editor.md +755 -0
- package/assets/docs/guide/starterkits/photo-ui.md +186 -0
- package/assets/docs/guide/starterkits/photobook-ui.md +188 -0
- package/assets/docs/guide/starterkits/placeholders.md +678 -0
- package/assets/docs/guide/starterkits/player.md +405 -0
- package/assets/docs/guide/starterkits/plugins.md +25 -0
- package/assets/docs/guide/starterkits/postcard-editor.md +202 -0
- package/assets/docs/guide/starterkits/pptx-template-import.md +581 -0
- package/assets/docs/guide/starterkits/print-ready-pdf-editor.md +746 -0
- package/assets/docs/guide/starterkits/product-editor.md +773 -0
- package/assets/docs/guide/starterkits/psd-template-import.md +580 -0
- package/assets/docs/guide/starterkits/qr-code-editor.md +470 -0
- package/assets/docs/guide/starterkits/single-page-editor.md +661 -0
- package/assets/docs/guide/starterkits/start-with-image.md +684 -0
- package/assets/docs/guide/starterkits/start-with-video.md +651 -0
- package/assets/docs/guide/starterkits/t-shirt-designer.md +742 -0
- package/assets/docs/guide/starterkits/templating.md +23 -0
- package/assets/docs/guide/starterkits/theming.md +662 -0
- package/assets/docs/guide/starterkits/translation-internationalization.md +662 -0
- package/assets/docs/guide/starterkits/unsplash-editor.md +839 -0
- package/assets/docs/guide/starterkits/vectorizer-editor.md +466 -0
- package/assets/docs/guide/starterkits/version-history.md +745 -0
- package/assets/docs/guide/starterkits/video-animations.md +853 -0
- package/assets/docs/guide/starterkits/video-captions.md +884 -0
- package/assets/docs/guide/starterkits/video-editing.md +25 -0
- package/assets/docs/guide/starterkits/video-editor.md +696 -0
- package/assets/docs/guide/starterkits/video-export-options.md +676 -0
- package/assets/docs/guide/starterkits/viewer.md +400 -0
- package/assets/docs/guide/starterkits.md +41 -0
- package/assets/docs/guide/stickers-and-shapes/combine.md +743 -0
- package/assets/docs/guide/stickers-and-shapes/create-cutout.md +425 -0
- package/assets/docs/guide/stickers-and-shapes/create-edit/create-shapes.md +794 -0
- package/assets/docs/guide/stickers-and-shapes/create-edit/create-stickers.md +290 -0
- package/assets/docs/guide/stickers-and-shapes/create-edit/edit-shapes.md +211 -0
- package/assets/docs/guide/stickers-and-shapes/create-edit/vector-edit.md +362 -0
- package/assets/docs/guide/stickers-and-shapes/insert-qr-code.md +208 -0
- package/assets/docs/guide/stickers.md +21 -0
- package/assets/docs/guide/text/add.md +641 -0
- package/assets/docs/guide/text/adjust-spacing.md +288 -0
- package/assets/docs/guide/text/auto-size.md +404 -0
- package/assets/docs/guide/text/custom-fonts.md +401 -0
- package/assets/docs/guide/text/decorations.md +330 -0
- package/assets/docs/guide/text/edit.md +458 -0
- package/assets/docs/guide/text/effects.md +244 -0
- package/assets/docs/guide/text/emojis.md +310 -0
- package/assets/docs/guide/text/enumerations.md +258 -0
- package/assets/docs/guide/text/language-support.md +604 -0
- package/assets/docs/guide/text/overview.md +14 -0
- package/assets/docs/guide/text/styling.md +390 -0
- package/assets/docs/guide/text/text-designs.md +834 -0
- package/assets/docs/guide/text.md +33 -0
- package/assets/docs/guide/to-v1-10.md +131 -0
- package/assets/docs/guide/to-v1-13.md +165 -0
- package/assets/docs/guide/to-v1-19.md +315 -0
- package/assets/docs/guide/to-v1-32.md +110 -0
- package/assets/docs/guide/to-v1-69.md +468 -0
- package/assets/docs/guide/to-v1-72.md +193 -0
- package/assets/docs/guide/upgrade.md +25 -0
- package/assets/docs/guide/use-templates/apply-template.md +279 -0
- package/assets/docs/guide/use-templates/generate.md +405 -0
- package/assets/docs/guide/use-templates/library.md +450 -0
- package/assets/docs/guide/use-templates/overview.md +20 -0
- package/assets/docs/guide/use-templates/programmatic.md +482 -0
- package/assets/docs/guide/use-templates/replace-content.md +399 -0
- package/assets/docs/guide/user-interface/ai-integration/audio-generation.md +428 -0
- package/assets/docs/guide/user-interface/ai-integration/auto-captions.md +337 -0
- package/assets/docs/guide/user-interface/ai-integration/custom-provider.md +853 -0
- package/assets/docs/guide/user-interface/ai-integration/gateway-provider.md +1045 -0
- package/assets/docs/guide/user-interface/ai-integration/image-generation.md +641 -0
- package/assets/docs/guide/user-interface/ai-integration/integrate.md +966 -0
- package/assets/docs/guide/user-interface/ai-integration/proxy-server.md +99 -0
- package/assets/docs/guide/user-interface/ai-integration/text-generation.md +498 -0
- package/assets/docs/guide/user-interface/ai-integration/video-generation.md +493 -0
- package/assets/docs/guide/user-interface/ai-integration.md +30 -0
- package/assets/docs/guide/user-interface/appearance/change-ui-font.md +316 -0
- package/assets/docs/guide/user-interface/appearance/custom-labels.md +509 -0
- package/assets/docs/guide/user-interface/appearance/icons.md +373 -0
- package/assets/docs/guide/user-interface/appearance/theming.md +665 -0
- package/assets/docs/guide/user-interface/appearance.md +23 -0
- package/assets/docs/guide/user-interface/build-your-own-ui.md +620 -0
- package/assets/docs/guide/user-interface/customization/canvas-menu.md +412 -0
- package/assets/docs/guide/user-interface/customization/canvas.md +281 -0
- package/assets/docs/guide/user-interface/customization/color-palette.md +413 -0
- package/assets/docs/guide/user-interface/customization/crop-presets.md +384 -0
- package/assets/docs/guide/user-interface/customization/disable-or-enable.md +676 -0
- package/assets/docs/guide/user-interface/customization/dock.md +399 -0
- package/assets/docs/guide/user-interface/customization/force-crop.md +289 -0
- package/assets/docs/guide/user-interface/customization/inspector-bar.md +371 -0
- package/assets/docs/guide/user-interface/customization/navigation-bar.md +516 -0
- package/assets/docs/guide/user-interface/customization/page-format.md +436 -0
- package/assets/docs/guide/user-interface/customization/panel.md +605 -0
- package/assets/docs/guide/user-interface/customization/quick-start/add-action-buttons.md +531 -0
- package/assets/docs/guide/user-interface/customization/quick-start/add-dock-buttons.md +358 -0
- package/assets/docs/guide/user-interface/customization/quick-start/create-custom-components.md +374 -0
- package/assets/docs/guide/user-interface/customization/quick-start/reorder-components.md +323 -0
- package/assets/docs/guide/user-interface/customization/quick-start/show-hide-components.md +294 -0
- package/assets/docs/guide/user-interface/customization/quick-start.md +12 -0
- package/assets/docs/guide/user-interface/customization/reference/component-order-api.md +519 -0
- package/assets/docs/guide/user-interface/customization/reference/component-reference.md +333 -0
- package/assets/docs/guide/user-interface/customization/reference.md +12 -0
- package/assets/docs/guide/user-interface/customization.md +39 -0
- package/assets/docs/guide/user-interface/localization.md +633 -0
- package/assets/docs/guide/user-interface/overview.md +167 -0
- package/assets/docs/guide/user-interface/ui-extensions/add-custom-feature.md +411 -0
- package/assets/docs/guide/user-interface/ui-extensions/asset-library.md +721 -0
- package/assets/docs/guide/user-interface/ui-extensions/create-custom-panel.md +331 -0
- package/assets/docs/guide/user-interface/ui-extensions/customize-behaviour.md +553 -0
- package/assets/docs/guide/user-interface/ui-extensions/notifications-and-dialogs.md +672 -0
- package/assets/docs/guide/user-interface/ui-extensions/quick-actions.md +415 -0
- package/assets/docs/guide/user-interface/ui-extensions/register-new-component.md +521 -0
- package/assets/docs/guide/user-interface/ui-extensions.md +26 -0
- package/assets/docs/guide/user-interface.md +25 -0
- package/assets/docs/guide/what-is-cesdk.md +319 -0
- package/assets/docs/handbook/SKILL.md +521 -0
- package/assets/prompts/evals-assetGenerate.md +12 -0
- package/assets/prompts/evals-brutalistCore.md +34 -0
- package/assets/prompts/evals-danskCatalogue.md +31 -0
- package/assets/prompts/evals-exportRoundTrip.md +12 -0
- package/assets/prompts/evals-inspectPriorCode.md +16 -0
- package/assets/prompts/evals-listProjectFiles.md +6 -0
- package/assets/prompts/evals-readAndExplainScript.md +6 -0
- package/assets/prompts/evals-resumeAcrossRestart.md +15 -0
- package/assets/prompts/evals-rewindRecovery.md +10 -0
- package/assets/prompts/evals-searchAcrossFiles.md +6 -0
- package/assets/prompts/evals-weddingCard.md +20 -0
- package/assets/prompts/explain.md +6 -0
- package/assets/prompts/review.md +6 -0
- package/dist/assets/inline.generated.d.ts +2 -0
- package/dist/assets/inline.generated.d.ts.map +1 -0
- package/dist/assets/inline.generated.js +413 -0
- package/dist/assets/inline.generated.js.map +1 -0
- package/dist/assets/load-browser.d.ts +8 -0
- package/dist/assets/load-browser.d.ts.map +1 -0
- package/dist/assets/load-browser.js +11 -0
- package/dist/assets/load-browser.js.map +1 -0
- package/dist/assets/load-node.d.ts +8 -0
- package/dist/assets/load-node.d.ts.map +1 -0
- package/dist/assets/load-node.js +11 -0
- package/dist/assets/load-node.js.map +1 -0
- package/dist/cli/http.d.ts +2 -0
- package/dist/cli/http.d.ts.map +1 -0
- package/dist/cli/http.js +231 -0
- package/dist/cli/http.js.map +1 -0
- package/dist/cli/redirect-console.d.ts +10 -0
- package/dist/cli/redirect-console.d.ts.map +1 -0
- package/dist/cli/redirect-console.js +18 -0
- package/dist/cli/redirect-console.js.map +1 -0
- package/dist/cli/resolve-license.d.ts +2 -0
- package/dist/cli/resolve-license.d.ts.map +1 -0
- package/dist/cli/resolve-license.js +13 -0
- package/dist/cli/resolve-license.js.map +1 -0
- package/dist/cli/stdio.d.ts +2 -0
- package/dist/cli/stdio.d.ts.map +1 -0
- package/dist/cli/stdio.js +124 -0
- package/dist/cli/stdio.js.map +1 -0
- package/dist/cli/trial-license.generated.d.ts +2 -0
- package/dist/cli/trial-license.generated.d.ts.map +1 -0
- package/dist/cli/trial-license.generated.js +4 -0
- package/dist/cli/trial-license.generated.js.map +1 -0
- package/dist/cli.d.ts +3 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +64 -0
- package/dist/cli.js.map +1 -0
- package/dist/config.d.ts +61 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +102 -0
- package/dist/config.js.map +1 -0
- package/dist/cross-ref.d.ts +2 -0
- package/dist/cross-ref.d.ts.map +1 -0
- package/dist/cross-ref.js +31 -0
- package/dist/cross-ref.js.map +1 -0
- package/dist/dashboard/router.d.ts +3 -0
- package/dist/dashboard/router.d.ts.map +1 -0
- package/dist/dashboard/router.js +19 -0
- package/dist/dashboard/router.js.map +1 -0
- package/dist/dashboard/spa-assets.generated.d.ts +2 -0
- package/dist/dashboard/spa-assets.generated.d.ts.map +1 -0
- package/dist/dashboard/spa-assets.generated.js +220 -0
- package/dist/dashboard/spa-assets.generated.js.map +1 -0
- package/dist/engine/asset-sources.d.ts +17 -0
- package/dist/engine/asset-sources.d.ts.map +1 -0
- package/dist/engine/asset-sources.js +75 -0
- package/dist/engine/asset-sources.js.map +1 -0
- package/dist/engine/cesdk-adapter.d.ts +10 -0
- package/dist/engine/cesdk-adapter.d.ts.map +1 -0
- package/dist/engine/cesdk-adapter.js +19 -0
- package/dist/engine/cesdk-adapter.js.map +1 -0
- package/dist/engine/index.d.ts +3 -0
- package/dist/engine/index.d.ts.map +1 -0
- package/dist/engine/index.js +3 -0
- package/dist/engine/index.js.map +1 -0
- package/dist/engine/mutex.d.ts +5 -0
- package/dist/engine/mutex.d.ts.map +1 -0
- package/dist/engine/mutex.js +42 -0
- package/dist/engine/mutex.js.map +1 -0
- package/dist/engine/session.d.ts +50 -0
- package/dist/engine/session.d.ts.map +1 -0
- package/dist/engine/session.js +95 -0
- package/dist/engine/session.js.map +1 -0
- package/dist/engine/uri-resolver.d.ts +14 -0
- package/dist/engine/uri-resolver.d.ts.map +1 -0
- package/dist/engine/uri-resolver.js +12 -0
- package/dist/engine/uri-resolver.js.map +1 -0
- package/dist/frontmatter.d.ts +15 -0
- package/dist/frontmatter.d.ts.map +1 -0
- package/dist/frontmatter.js +46 -0
- package/dist/frontmatter.js.map +1 -0
- package/dist/gateway/hosted-stub.d.ts +6 -0
- package/dist/gateway/hosted-stub.d.ts.map +1 -0
- package/dist/gateway/hosted-stub.js +11 -0
- package/dist/gateway/hosted-stub.js.map +1 -0
- package/dist/gateway/index.d.ts +4 -0
- package/dist/gateway/index.d.ts.map +1 -0
- package/dist/gateway/index.js +4 -0
- package/dist/gateway/index.js.map +1 -0
- package/dist/gateway/local.d.ts +14 -0
- package/dist/gateway/local.d.ts.map +1 -0
- package/dist/gateway/local.js +41 -0
- package/dist/gateway/local.js.map +1 -0
- package/dist/gateway/types.d.ts +24 -0
- package/dist/gateway/types.d.ts.map +1 -0
- package/dist/gateway/types.js +7 -0
- package/dist/gateway/types.js.map +1 -0
- package/dist/http/server.d.ts +80 -0
- package/dist/http/server.d.ts.map +1 -0
- package/dist/http/server.js +183 -0
- package/dist/http/server.js.map +1 -0
- package/dist/http/session-manager.d.ts +42 -0
- package/dist/http/session-manager.d.ts.map +1 -0
- package/dist/http/session-manager.js +82 -0
- package/dist/http/session-manager.js.map +1 -0
- package/dist/http/workspace-auth.d.ts +9 -0
- package/dist/http/workspace-auth.d.ts.map +1 -0
- package/dist/http/workspace-auth.js +29 -0
- package/dist/http/workspace-auth.js.map +1 -0
- package/dist/index.d.ts +10 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +10 -0
- package/dist/index.js.map +1 -0
- package/dist/metrics/mount.d.ts +11 -0
- package/dist/metrics/mount.d.ts.map +1 -0
- package/dist/metrics/mount.js +13 -0
- package/dist/metrics/mount.js.map +1 -0
- package/dist/metrics/recorder.d.ts +55 -0
- package/dist/metrics/recorder.d.ts.map +1 -0
- package/dist/metrics/recorder.js +97 -0
- package/dist/metrics/recorder.js.map +1 -0
- package/dist/revisions/hash.d.ts +7 -0
- package/dist/revisions/hash.d.ts.map +1 -0
- package/dist/revisions/hash.js +24 -0
- package/dist/revisions/hash.js.map +1 -0
- package/dist/revisions/index.d.ts +4 -0
- package/dist/revisions/index.d.ts.map +1 -0
- package/dist/revisions/index.js +4 -0
- package/dist/revisions/index.js.map +1 -0
- package/dist/revisions/store.d.ts +69 -0
- package/dist/revisions/store.d.ts.map +1 -0
- package/dist/revisions/store.js +196 -0
- package/dist/revisions/store.js.map +1 -0
- package/dist/revisions/types.d.ts +39 -0
- package/dist/revisions/types.d.ts.map +1 -0
- package/dist/revisions/types.js +2 -0
- package/dist/revisions/types.js.map +1 -0
- package/dist/server.d.ts +51 -0
- package/dist/server.d.ts.map +1 -0
- package/dist/server.js +175 -0
- package/dist/server.js.map +1 -0
- package/dist/skill-tools.d.ts +3 -0
- package/dist/skill-tools.d.ts.map +1 -0
- package/dist/skill-tools.js +105 -0
- package/dist/skill-tools.js.map +1 -0
- package/dist/test/test/cli/dispatcher.test.d.ts +2 -0
- package/dist/test/test/cli/dispatcher.test.d.ts.map +1 -0
- package/dist/test/test/cli/dispatcher.test.js +47 -0
- package/dist/test/test/cli/dispatcher.test.js.map +1 -0
- package/dist/test/test/cross-ref.test.d.ts +2 -0
- package/dist/test/test/cross-ref.test.d.ts.map +1 -0
- package/dist/test/test/cross-ref.test.js +39 -0
- package/dist/test/test/cross-ref.test.js.map +1 -0
- package/dist/test/test/engine/session.test.d.ts +2 -0
- package/dist/test/test/engine/session.test.d.ts.map +1 -0
- package/dist/test/test/engine/session.test.js +144 -0
- package/dist/test/test/engine/session.test.js.map +1 -0
- package/dist/test/test/engine/uri-resolver.test.d.ts +2 -0
- package/dist/test/test/engine/uri-resolver.test.d.ts.map +1 -0
- package/dist/test/test/engine/uri-resolver.test.js +38 -0
- package/dist/test/test/engine/uri-resolver.test.js.map +1 -0
- package/dist/test/test/frontmatter.test.d.ts +2 -0
- package/dist/test/test/frontmatter.test.d.ts.map +1 -0
- package/dist/test/test/frontmatter.test.js +55 -0
- package/dist/test/test/frontmatter.test.js.map +1 -0
- package/dist/test/test/gateway/hosted-stub.test.d.ts +2 -0
- package/dist/test/test/gateway/hosted-stub.test.d.ts.map +1 -0
- package/dist/test/test/gateway/hosted-stub.test.js +11 -0
- package/dist/test/test/gateway/hosted-stub.test.js.map +1 -0
- package/dist/test/test/gateway/local.test.d.ts +2 -0
- package/dist/test/test/gateway/local.test.d.ts.map +1 -0
- package/dist/test/test/gateway/local.test.js +29 -0
- package/dist/test/test/gateway/local.test.js.map +1 -0
- package/dist/test/test/handbook-contract.test.d.ts +2 -0
- package/dist/test/test/handbook-contract.test.d.ts.map +1 -0
- package/dist/test/test/handbook-contract.test.js +71 -0
- package/dist/test/test/handbook-contract.test.js.map +1 -0
- package/dist/test/test/http/server.test.d.ts +2 -0
- package/dist/test/test/http/server.test.d.ts.map +1 -0
- package/dist/test/test/http/server.test.js +245 -0
- package/dist/test/test/http/server.test.js.map +1 -0
- package/dist/test/test/http/session-manager.test.d.ts +2 -0
- package/dist/test/test/http/session-manager.test.d.ts.map +1 -0
- package/dist/test/test/http/session-manager.test.js +83 -0
- package/dist/test/test/http/session-manager.test.js.map +1 -0
- package/dist/test/test/revisions/hash.test.d.ts +2 -0
- package/dist/test/test/revisions/hash.test.d.ts.map +1 -0
- package/dist/test/test/revisions/hash.test.js +33 -0
- package/dist/test/test/revisions/hash.test.js.map +1 -0
- package/dist/test/test/revisions/store.test.d.ts +2 -0
- package/dist/test/test/revisions/store.test.d.ts.map +1 -0
- package/dist/test/test/revisions/store.test.js +245 -0
- package/dist/test/test/revisions/store.test.js.map +1 -0
- package/dist/test/test/server.test.d.ts +2 -0
- package/dist/test/test/server.test.d.ts.map +1 -0
- package/dist/test/test/server.test.js +157 -0
- package/dist/test/test/server.test.js.map +1 -0
- package/dist/test/test/skill-tools.test.d.ts +2 -0
- package/dist/test/test/skill-tools.test.d.ts.map +1 -0
- package/dist/test/test/skill-tools.test.js +84 -0
- package/dist/test/test/skill-tools.test.js.map +1 -0
- package/dist/test/test/smoke.test.d.ts +2 -0
- package/dist/test/test/smoke.test.d.ts.map +1 -0
- package/dist/test/test/smoke.test.js +8 -0
- package/dist/test/test/smoke.test.js.map +1 -0
- package/dist/test/test/tools/asset-generate.test.d.ts +2 -0
- package/dist/test/test/tools/asset-generate.test.d.ts.map +1 -0
- package/dist/test/test/tools/asset-generate.test.js +66 -0
- package/dist/test/test/tools/asset-generate.test.js.map +1 -0
- package/dist/test/test/tools/edit.test.d.ts +2 -0
- package/dist/test/test/tools/edit.test.d.ts.map +1 -0
- package/dist/test/test/tools/edit.test.js +205 -0
- package/dist/test/test/tools/edit.test.js.map +1 -0
- package/dist/test/test/tools/export.test.d.ts +2 -0
- package/dist/test/test/tools/export.test.d.ts.map +1 -0
- package/dist/test/test/tools/export.test.js +144 -0
- package/dist/test/test/tools/export.test.js.map +1 -0
- package/dist/test/test/tools/history.test.d.ts +2 -0
- package/dist/test/test/tools/history.test.d.ts.map +1 -0
- package/dist/test/test/tools/history.test.js +29 -0
- package/dist/test/test/tools/history.test.js.map +1 -0
- package/dist/test/test/tools/inspect.test.d.ts +2 -0
- package/dist/test/test/tools/inspect.test.d.ts.map +1 -0
- package/dist/test/test/tools/inspect.test.js +62 -0
- package/dist/test/test/tools/inspect.test.js.map +1 -0
- package/dist/test/test/tools/list.test.d.ts +2 -0
- package/dist/test/test/tools/list.test.d.ts.map +1 -0
- package/dist/test/test/tools/list.test.js +23 -0
- package/dist/test/test/tools/list.test.js.map +1 -0
- package/dist/test/test/tools/open-editor.test.d.ts +2 -0
- package/dist/test/test/tools/open-editor.test.d.ts.map +1 -0
- package/dist/test/test/tools/open-editor.test.js +53 -0
- package/dist/test/test/tools/open-editor.test.js.map +1 -0
- package/dist/test/test/tools/preview.test.d.ts +2 -0
- package/dist/test/test/tools/preview.test.d.ts.map +1 -0
- package/dist/test/test/tools/preview.test.js +73 -0
- package/dist/test/test/tools/preview.test.js.map +1 -0
- package/dist/test/test/tools/rename.test.d.ts +2 -0
- package/dist/test/test/tools/rename.test.d.ts.map +1 -0
- package/dist/test/test/tools/rename.test.js +17 -0
- package/dist/test/test/tools/rename.test.js.map +1 -0
- package/dist/test/test/viewer/broadcaster.test.d.ts +2 -0
- package/dist/test/test/viewer/broadcaster.test.d.ts.map +1 -0
- package/dist/test/test/viewer/broadcaster.test.js +53 -0
- package/dist/test/test/viewer/broadcaster.test.js.map +1 -0
- package/dist/test/test/viewer/resource-route.test.d.ts +2 -0
- package/dist/test/test/viewer/resource-route.test.d.ts.map +1 -0
- package/dist/test/test/viewer/resource-route.test.js +70 -0
- package/dist/test/test/viewer/resource-route.test.js.map +1 -0
- package/dist/test/test/viewer/router.test.d.ts +2 -0
- package/dist/test/test/viewer/router.test.d.ts.map +1 -0
- package/dist/test/test/viewer/router.test.js +171 -0
- package/dist/test/test/viewer/router.test.js.map +1 -0
- package/dist/test/test/viewer/url-builder.test.d.ts +2 -0
- package/dist/test/test/viewer/url-builder.test.d.ts.map +1 -0
- package/dist/test/test/viewer/url-builder.test.js +31 -0
- package/dist/test/test/viewer/url-builder.test.js.map +1 -0
- package/dist/test/test/workspace/hosted-stub.test.d.ts +2 -0
- package/dist/test/test/workspace/hosted-stub.test.d.ts.map +1 -0
- package/dist/test/test/workspace/hosted-stub.test.js +30 -0
- package/dist/test/test/workspace/hosted-stub.test.js.map +1 -0
- package/dist/test/test/workspace/in-memory.test.d.ts +2 -0
- package/dist/test/test/workspace/in-memory.test.d.ts.map +1 -0
- package/dist/test/test/workspace/in-memory.test.js +4 -0
- package/dist/test/test/workspace/in-memory.test.js.map +1 -0
- package/dist/test/test/workspace/node-fs.test.d.ts +2 -0
- package/dist/test/test/workspace/node-fs.test.d.ts.map +1 -0
- package/dist/test/test/workspace/node-fs.test.js +20 -0
- package/dist/test/test/workspace/node-fs.test.js.map +1 -0
- package/dist/test/test/workspace/shared-contract.d.ts +3 -0
- package/dist/test/test/workspace/shared-contract.d.ts.map +1 -0
- package/dist/test/test/workspace/shared-contract.js +92 -0
- package/dist/test/test/workspace/shared-contract.js.map +1 -0
- package/dist/test/tsconfig.test.tsbuildinfo +1 -0
- package/dist/test/vitest.config.d.ts +3 -0
- package/dist/test/vitest.config.d.ts.map +1 -0
- package/dist/test/vitest.config.js +8 -0
- package/dist/test/vitest.config.js.map +1 -0
- package/dist/tools/asset-generate.d.ts +12 -0
- package/dist/tools/asset-generate.d.ts.map +1 -0
- package/dist/tools/asset-generate.js +112 -0
- package/dist/tools/asset-generate.js.map +1 -0
- package/dist/tools/asset-search.d.ts +10 -0
- package/dist/tools/asset-search.d.ts.map +1 -0
- package/dist/tools/asset-search.js +120 -0
- package/dist/tools/asset-search.js.map +1 -0
- package/dist/tools/content-types.d.ts +11 -0
- package/dist/tools/content-types.d.ts.map +1 -0
- package/dist/tools/content-types.js +2 -0
- package/dist/tools/content-types.js.map +1 -0
- package/dist/tools/edit.d.ts +29 -0
- package/dist/tools/edit.d.ts.map +1 -0
- package/dist/tools/edit.js +165 -0
- package/dist/tools/edit.js.map +1 -0
- package/dist/tools/engine.d.ts +31 -0
- package/dist/tools/engine.d.ts.map +1 -0
- package/dist/tools/engine.js +59 -0
- package/dist/tools/engine.js.map +1 -0
- package/dist/tools/export.d.ts +19 -0
- package/dist/tools/export.d.ts.map +1 -0
- package/dist/tools/export.js +179 -0
- package/dist/tools/export.js.map +1 -0
- package/dist/tools/history.d.ts +7 -0
- package/dist/tools/history.d.ts.map +1 -0
- package/dist/tools/history.js +54 -0
- package/dist/tools/history.js.map +1 -0
- package/dist/tools/index.d.ts +35 -0
- package/dist/tools/index.d.ts.map +1 -0
- package/dist/tools/index.js +72 -0
- package/dist/tools/index.js.map +1 -0
- package/dist/tools/inspect.d.ts +7 -0
- package/dist/tools/inspect.d.ts.map +1 -0
- package/dist/tools/inspect.js +80 -0
- package/dist/tools/inspect.js.map +1 -0
- package/dist/tools/list.d.ts +7 -0
- package/dist/tools/list.d.ts.map +1 -0
- package/dist/tools/list.js +18 -0
- package/dist/tools/list.js.map +1 -0
- package/dist/tools/metrics.d.ts +11 -0
- package/dist/tools/metrics.d.ts.map +1 -0
- package/dist/tools/metrics.js +28 -0
- package/dist/tools/metrics.js.map +1 -0
- package/dist/tools/open-editor.d.ts +10 -0
- package/dist/tools/open-editor.d.ts.map +1 -0
- package/dist/tools/open-editor.js +62 -0
- package/dist/tools/open-editor.js.map +1 -0
- package/dist/tools/preview.d.ts +12 -0
- package/dist/tools/preview.d.ts.map +1 -0
- package/dist/tools/preview.js +104 -0
- package/dist/tools/preview.js.map +1 -0
- package/dist/tools/rename.d.ts +7 -0
- package/dist/tools/rename.d.ts.map +1 -0
- package/dist/tools/rename.js +39 -0
- package/dist/tools/rename.js.map +1 -0
- package/dist/tools/result.d.ts +12 -0
- package/dist/tools/result.d.ts.map +1 -0
- package/dist/tools/result.js +55 -0
- package/dist/tools/result.js.map +1 -0
- package/dist/tools/save.d.ts +19 -0
- package/dist/tools/save.d.ts.map +1 -0
- package/dist/tools/save.js +117 -0
- package/dist/tools/save.js.map +1 -0
- package/dist/viewer/broadcaster.d.ts +13 -0
- package/dist/viewer/broadcaster.d.ts.map +1 -0
- package/dist/viewer/broadcaster.js +44 -0
- package/dist/viewer/broadcaster.js.map +1 -0
- package/dist/viewer/index.d.ts +7 -0
- package/dist/viewer/index.d.ts.map +1 -0
- package/dist/viewer/index.js +7 -0
- package/dist/viewer/index.js.map +1 -0
- package/dist/viewer/listener.d.ts +16 -0
- package/dist/viewer/listener.d.ts.map +1 -0
- package/dist/viewer/listener.js +30 -0
- package/dist/viewer/listener.js.map +1 -0
- package/dist/viewer/presigned-r2-url-builder.d.ts +30 -0
- package/dist/viewer/presigned-r2-url-builder.d.ts.map +1 -0
- package/dist/viewer/presigned-r2-url-builder.js +40 -0
- package/dist/viewer/presigned-r2-url-builder.js.map +1 -0
- package/dist/viewer/resource-route.d.ts +9 -0
- package/dist/viewer/resource-route.d.ts.map +1 -0
- package/dist/viewer/resource-route.js +59 -0
- package/dist/viewer/resource-route.js.map +1 -0
- package/dist/viewer/router.d.ts +20 -0
- package/dist/viewer/router.d.ts.map +1 -0
- package/dist/viewer/router.js +142 -0
- package/dist/viewer/router.js.map +1 -0
- package/dist/viewer/session-mount.d.ts +10 -0
- package/dist/viewer/session-mount.d.ts.map +1 -0
- package/dist/viewer/session-mount.js +24 -0
- package/dist/viewer/session-mount.js.map +1 -0
- package/dist/viewer/spa-assets.generated.d.ts +2 -0
- package/dist/viewer/spa-assets.generated.d.ts.map +1 -0
- package/dist/viewer/spa-assets.generated.js +989 -0
- package/dist/viewer/spa-assets.generated.js.map +1 -0
- package/dist/viewer/url-builder.d.ts +48 -0
- package/dist/viewer/url-builder.d.ts.map +1 -0
- package/dist/viewer/url-builder.js +38 -0
- package/dist/viewer/url-builder.js.map +1 -0
- package/dist/workspace/hosted-stub.d.ts +28 -0
- package/dist/workspace/hosted-stub.d.ts.map +1 -0
- package/dist/workspace/hosted-stub.js +44 -0
- package/dist/workspace/hosted-stub.js.map +1 -0
- package/dist/workspace/in-memory.d.ts +23 -0
- package/dist/workspace/in-memory.d.ts.map +1 -0
- package/dist/workspace/in-memory.js +161 -0
- package/dist/workspace/in-memory.js.map +1 -0
- package/dist/workspace/index.d.ts +6 -0
- package/dist/workspace/index.d.ts.map +1 -0
- package/dist/workspace/index.js +6 -0
- package/dist/workspace/index.js.map +1 -0
- package/dist/workspace/node-fs.d.ts +23 -0
- package/dist/workspace/node-fs.d.ts.map +1 -0
- package/dist/workspace/node-fs.js +90 -0
- package/dist/workspace/node-fs.js.map +1 -0
- package/dist/workspace/s3.d.ts +32 -0
- package/dist/workspace/s3.d.ts.map +1 -0
- package/dist/workspace/s3.js +191 -0
- package/dist/workspace/s3.js.map +1 -0
- package/dist/workspace/scoped.d.ts +32 -0
- package/dist/workspace/scoped.d.ts.map +1 -0
- package/dist/workspace/scoped.js +76 -0
- package/dist/workspace/scoped.js.map +1 -0
- package/dist/workspace/types.d.ts +75 -0
- package/dist/workspace/types.d.ts.map +1 -0
- package/dist/workspace/types.js +18 -0
- package/dist/workspace/types.js.map +1 -0
- package/package.json +80 -0
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
# VariableAPI
|
|
2
|
+
|
|
3
|
+
## Variable Management
|
|
4
|
+
|
|
5
|
+
Create, update, retrieve, and remove text variables from the engine.
|
|
6
|
+
|
|
7
|
+
### findAll()
|
|
8
|
+
|
|
9
|
+
Get all text variable names currently stored in the engine.
|
|
10
|
+
|
|
11
|
+
```typescript
|
|
12
|
+
findAll(): string[]
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
**Returns:** List of variable names.
|
|
16
|
+
|
|
17
|
+
### setString()
|
|
18
|
+
|
|
19
|
+
Set a text variable's value.
|
|
20
|
+
Creates a new variable if the key doesn't exist, or updates an existing one.
|
|
21
|
+
|
|
22
|
+
```typescript
|
|
23
|
+
setString(key: string, value: string): void
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
**Parameters:**
|
|
27
|
+
|
|
28
|
+
- `key` - The variable's key.
|
|
29
|
+
- `value` - The text value to assign to the variable.
|
|
30
|
+
|
|
31
|
+
### getString()
|
|
32
|
+
|
|
33
|
+
Get a text variable's value.
|
|
34
|
+
|
|
35
|
+
```typescript
|
|
36
|
+
getString(key: string): string
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
**Parameters:**
|
|
40
|
+
|
|
41
|
+
- `key` - The variable's key.
|
|
42
|
+
|
|
43
|
+
**Returns:** The text value of the variable.
|
|
44
|
+
|
|
45
|
+
### remove()
|
|
46
|
+
|
|
47
|
+
Remove a text variable from the engine.
|
|
48
|
+
|
|
49
|
+
```typescript
|
|
50
|
+
remove(key: string): void
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
**Parameters:**
|
|
54
|
+
|
|
55
|
+
- `key` - The variable's key to remove.
|
|
56
|
+
|
|
57
|
+
---
|
|
58
|
+
|
|
59
|
+
For complete type definitions, see the [CE.SDK TypeScript API Reference](https://img.ly/docs/cesdk/engine/api/).
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
# Common Types
|
|
2
|
+
|
|
3
|
+
Core type definitions used throughout the CE.SDK API.
|
|
4
|
+
|
|
5
|
+
## Logger
|
|
6
|
+
|
|
7
|
+
Types: LogLevel
|
|
8
|
+
|
|
9
|
+
## MimeType
|
|
10
|
+
|
|
11
|
+
Types: MimeType, ImageMimeType, AudioMimeType, VideoMimeType, ApplicationMimeType
|
|
12
|
+
|
|
13
|
+
## asset
|
|
14
|
+
|
|
15
|
+
Types: Locale, Groups, SortingOrder, Source, AssetMetaData, AssetRGBColor, AssetCMYKColor, AssetSpotColor, AssetColor, AssetFixedAspectRatio, AssetFreeAspectRatio, AssetFixedSize, AssetTransformPreset, AssetStringProperty, AssetNumberProperty, AssetBooleanProperty, AssetEnumProperty, AssetColorProperty, AssetProperty, AssetPayload, Asset, AssetDefinition, AssetResult, CompleteAssetResult, AssetQueryData, AssetsQueryResult, AssetSource
|
|
16
|
+
|
|
17
|
+
## audioTrackInfo
|
|
18
|
+
|
|
19
|
+
Types: AudioTrackInfo
|
|
20
|
+
|
|
21
|
+
## blockTypes
|
|
22
|
+
|
|
23
|
+
Types: DesignBlockTypeShorthand, DesignBlockTypeLonghand, DesignBlockType, ShapeTypeShorthand, ShapeTypeLonghand, ShapeType, FillTypeShorthand, FillTypeLonghand, FillType, EffectTypeShorthand, EffectTypeLonghand, EffectType, BlurTypeShorthand, BlurTypeLonghand, BlurType, AnimationTypeShorthand, AnimationTypeLonghand, AnimationType, ObjectTypeShorthand, ObjectTypeLonghand, ObjectType
|
|
24
|
+
|
|
25
|
+
## canvas
|
|
26
|
+
|
|
27
|
+
Types: OffscreenCanvas, Canvas
|
|
28
|
+
|
|
29
|
+
## color
|
|
30
|
+
|
|
31
|
+
Types: HexColorString, PaletteColor, Color, ColorSpace, RGBColor, HSLColor, HSVColor, ColorNameObject, RGBAColor, CMYKColor, SpotColor, ColorInternal, GradientColorStop
|
|
32
|
+
|
|
33
|
+
## cutout
|
|
34
|
+
|
|
35
|
+
Types: CutoutOperation
|
|
36
|
+
|
|
37
|
+
## engine
|
|
38
|
+
|
|
39
|
+
Types: Vector, DesignBlockId, HistoryId, NumberRange, Vec2, Vec3, Size2, Range, ClampArgs, ClampCameraCommandResult, EmscriptenClassHandle, UBQError, UBQResult, MouseButtonEvent, MouseMoveEvent, MouseWheelEvent, KeyboardKeyEvent, ZoomAutoFitAxis, EngineTouchEvent, TouchRotateEvent, TouchPanEvent, TouchPinchEvent, TrackingMetadata, EditMode
|
|
40
|
+
|
|
41
|
+
## fontMetrics
|
|
42
|
+
|
|
43
|
+
Types: FontMetrics
|
|
44
|
+
|
|
45
|
+
## fonts
|
|
46
|
+
|
|
47
|
+
Types: FontWeight, FontStyle, Font, Typeface
|
|
48
|
+
|
|
49
|
+
## propertyTypes
|
|
50
|
+
|
|
51
|
+
Types: BoolPropertyName, EnumPropertyName, FloatPropertyName, StringPropertyName, DoublePropertyName, ColorPropertyName, IntPropertyName, SourceSetPropertyName, BlendMode, ContentFillMode, HeightMode, PositionXMode, PositionYMode, SceneDesignUnit, SceneLayout, SceneMode, WidthMode, StrokeCornerGeometry, StrokePosition, StrokeStyle, TextHorizontalAlignment, TextVerticalAlignment, CutoutType, CaptionHorizontalAlignment, CaptionVerticalAlignment, AnimationEasing, TextAnimationWritingStyle, AnimationGrowDirection, AnimationScaleLoopDirection, AnimationWipeDirection, AnimationBaselineDirection, AnimationSpinDirection, AnimationSpinLoopDirection, AnimationJumpLoopDirection, AnimationTypewriterTextWritingStyle, AnimationBlockSwipeTextDirection, AnimationMergeTextDirection, AnimationKenBurnsDirection, FillPixelStreamOrientation, EnumValues, BlockEnumType
|
|
52
|
+
|
|
53
|
+
## role
|
|
54
|
+
|
|
55
|
+
Types: RoleString
|
|
56
|
+
|
|
57
|
+
## scope
|
|
58
|
+
|
|
59
|
+
Types: Scope
|
|
60
|
+
|
|
61
|
+
## settingTypes
|
|
62
|
+
|
|
63
|
+
Types: SettingStringPropertyName, SettingColorPropertyName, SettingBoolPropertyName, SettingFloatPropertyName, SettingEnumPropertyName, SettingIntPropertyName, TouchPinchAction, TouchRotateAction, CameraClampingOvershootMode, DoubleClickSelectionMode, ColorPickerColorMode, TimelineTrackVisibility, SettingEnumValues, SettingEnumType
|
|
64
|
+
|
|
65
|
+
## settings
|
|
66
|
+
|
|
67
|
+
Types: Settings, SettingKey, SettingValueType
|
|
68
|
+
|
|
69
|
+
---
|
|
70
|
+
|
|
71
|
+
For complete type definitions, see the [CE.SDK TypeScript API Reference](https://img.ly/docs/cesdk/engine/api/).
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
> This is one page of the CE.SDK Vanilla JS/TS documentation. For a complete overview, see the [Vanilla JS/TS Documentation Index](https://img.ly/docs/cesdk/js.md). For all docs in one file, see [llms-full.txt](./llms-full.txt.md).
|
|
2
|
+
|
|
3
|
+
**Navigation:** [API Reference](./api-reference/overview.md)
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
For , the following packages are available:
|
|
8
|
+
|
|
9
|
+
- [@cesdk/cesdk-js](https://img.ly/docs/cesdk/`${props.platform.slug}/api/cesdk-js/`)
|
|
10
|
+
|
|
11
|
+
- [@cesdk/engine](https://img.ly/docs/cesdk/`${props.platform.slug}/api/engine/`)
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
## More Resources
|
|
16
|
+
|
|
17
|
+
- **[Vanilla JS/TS Documentation Index](https://img.ly/docs/cesdk/js.md)** - Browse all Vanilla JS/TS documentation
|
|
18
|
+
- **[Complete Documentation](./llms-full.txt.md)** - Full documentation in one file (for LLMs)
|
|
19
|
+
- **[Web Documentation](./js.md)** - Interactive documentation with examples
|
|
20
|
+
- **[Support](mailto:support@img.ly)** - Contact IMG.LY support
|
|
@@ -0,0 +1,412 @@
|
|
|
1
|
+
> This is one page of the CE.SDK Vanilla JS/TS documentation. For a complete overview, see the [Vanilla JS/TS Documentation Index](https://img.ly/docs/cesdk/js.md). For all docs in one file, see [llms-full.txt](./llms-full.txt.md).
|
|
2
|
+
|
|
3
|
+
**Navigation:** [Guides](./guides.md) > [Automate Workflows](./automation.md) > [Auto-Resize](./automation/auto-resize.md)
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
Configure blocks to dynamically adjust their dimensions using three sizing modes: Absolute for fixed values, Percent for parent-relative sizing, and Auto for content-driven expansion.
|
|
8
|
+
|
|
9
|
+

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