@imgly/codesign-mcp 0.1.7 → 0.1.9-next.20260720172141.gfa485d7
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 +36 -2
- package/assets/docs/api/SKILL.md +24 -22
- package/assets/docs/api/index.d.ts +138 -11
- package/assets/docs/guide/SKILL.md +4 -4
- package/assets/docs/guide/api/BlockAPI.md +77 -0
- package/assets/docs/guide/api/node/classes/blockapi.md +154 -0
- package/assets/docs/guide/api/node/classes/creativeengine.md +13 -13
- package/assets/docs/guide/api/node/interfaces/assetfacetvalue.md +23 -0
- package/assets/docs/guide/api/node/interfaces/assetquerydata.md +1 -0
- package/assets/docs/guide/api/node/interfaces/assetsqueryresult.md +1 -0
- package/assets/docs/guide/api/node/interfaces/configuration.md +1 -1
- package/assets/docs/guide/api/node/type-aliases/assetfacetpath.md +22 -0
- package/assets/docs/guide/api/node/type-aliases/assetpropertyfilter.md +3 -3
- package/assets/docs/guide/api/node/type-aliases/assetpropertypath.md +1 -2
- package/assets/docs/guide/api/node/type-aliases/boolpropertyname.md +2 -0
- package/assets/docs/guide/api/node/type-aliases/objecttypelonghand.md +2 -1
- package/assets/docs/guide/api/node/type-aliases/objecttypeshorthand.md +2 -1
- package/assets/docs/guide/api/node/type-aliases/transitiontype.md +24 -0
- package/assets/docs/guide/api/node/type-aliases/transitiontypelonghand.md +21 -0
- package/assets/docs/guide/api/node/type-aliases/transitiontypeshorthand.md +18 -0
- package/assets/docs/guide/api/node/variables/transition_types.md +21 -0
- package/assets/docs/guide/api/node.md +347 -0
- package/assets/docs/guide/api/types.md +1 -1
- package/assets/docs/guide/colors/apply.md +1 -1
- package/assets/docs/guide/colors/basics.md +1 -1
- package/assets/docs/guide/concepts/assets.md +69 -3
- package/assets/docs/guide/concepts/blocks.md +1 -1
- package/assets/docs/guide/concepts/error-catalog.md +1000 -0
- package/assets/docs/guide/concepts/terminology.md +1 -1
- package/assets/docs/guide/concepts.md +1 -0
- package/assets/docs/guide/create-templates/add-dynamic-content/placeholders.md +1 -1
- package/assets/docs/guide/create-templates/add-dynamic-content/set-editing-constraints.md +1 -1
- package/assets/docs/guide/create-templates/add-dynamic-content/text-variables.md +1 -1
- package/assets/docs/guide/create-templates/add-dynamic-content.md +1 -1
- package/assets/docs/guide/edit-image/transform/scale.md +1 -3
- package/assets/docs/guide/{filters-and-effects/gradients.md → fills/gradient.md} +1 -1
- package/assets/docs/guide/fills.md +2 -2
- package/assets/docs/guide/filters-and-effects/duotone.md +1 -1
- package/assets/docs/guide/get-started/agent-skills.md +74 -15
- package/assets/docs/guide/get-started/build-with-ai.md +9 -2
- package/assets/docs/guide/get-started/bun.md +0 -2
- package/assets/docs/guide/get-started/cesdk-plugin-coding-agents.md +101 -0
- package/assets/docs/guide/get-started/deno.md +0 -1
- package/assets/docs/guide/get-started/mcp-server.md +1 -1
- package/assets/docs/guide/get-started/overview.md +0 -1
- package/assets/docs/guide/get-started/vanilla.md +0 -2
- package/assets/docs/guide/import-media/default-assets.md +21 -25
- package/assets/docs/guide/llms-txt.md +1 -1
- package/assets/docs/guide/outlines/strokes.md +1 -1
- package/assets/docs/guide/plugins/print-ready-pdf.md +0 -2
- package/assets/docs/guide/serve-assets.md +80 -23
- package/assets/docs/guide/text/edit.md +1 -0
- package/assets/docs/handbook/SKILL.md +116 -30
- package/dist/assets/inline.generated.d.ts.map +1 -1
- package/dist/assets/inline.generated.js +54 -45
- package/dist/assets/inline.generated.js.map +1 -1
- package/dist/cli/http.d.ts.map +1 -1
- package/dist/cli/http.js +25 -5
- package/dist/cli/http.js.map +1 -1
- package/dist/cli/stdio.d.ts.map +1 -1
- package/dist/cli/stdio.js +57 -16
- package/dist/cli/stdio.js.map +1 -1
- package/dist/cli/trial-license.generated.d.ts +1 -1
- package/dist/cli/trial-license.generated.js +1 -1
- package/dist/cli/trial-license.generated.js.map +1 -1
- package/dist/config.d.ts +6 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +8 -0
- package/dist/config.js.map +1 -1
- package/dist/diagnostics/bundle.d.ts +3 -0
- package/dist/diagnostics/bundle.d.ts.map +1 -1
- package/dist/diagnostics/bundle.js +25 -22
- package/dist/diagnostics/bundle.js.map +1 -1
- package/dist/diagnostics/prompt.d.ts +3 -0
- package/dist/diagnostics/prompt.d.ts.map +1 -0
- package/dist/diagnostics/prompt.js +21 -0
- package/dist/diagnostics/prompt.js.map +1 -0
- package/dist/diagnostics/router.d.ts +12 -0
- package/dist/diagnostics/router.d.ts.map +1 -0
- package/dist/diagnostics/router.js +64 -0
- package/dist/diagnostics/router.js.map +1 -0
- package/dist/diagnostics/spa-assets.generated.d.ts +2 -0
- package/dist/diagnostics/spa-assets.generated.d.ts.map +1 -0
- package/dist/diagnostics/spa-assets.generated.js +1231 -0
- package/dist/diagnostics/spa-assets.generated.js.map +1 -0
- package/dist/diagnostics/status.d.ts +39 -0
- package/dist/diagnostics/status.d.ts.map +1 -0
- package/dist/diagnostics/status.js +65 -0
- package/dist/diagnostics/status.js.map +1 -0
- package/dist/diagnostics/summary.d.ts +48 -0
- package/dist/diagnostics/summary.d.ts.map +1 -0
- package/dist/diagnostics/summary.js +116 -0
- package/dist/diagnostics/summary.js.map +1 -0
- package/dist/diagnostics/tool.d.ts +16 -0
- package/dist/diagnostics/tool.d.ts.map +1 -0
- package/dist/diagnostics/tool.js +90 -0
- package/dist/diagnostics/tool.js.map +1 -0
- package/dist/engine/asset-sources.d.ts +8 -0
- package/dist/engine/asset-sources.d.ts.map +1 -1
- package/dist/engine/asset-sources.js +9 -2
- package/dist/engine/asset-sources.js.map +1 -1
- package/dist/engine/engine-capacity.js +2 -2
- package/dist/engine/engine-capacity.js.map +1 -1
- package/dist/engine/engine-slots.d.ts.map +1 -1
- package/dist/engine/engine-slots.js +30 -16
- package/dist/engine/engine-slots.js.map +1 -1
- package/dist/engine/uri-resolver.js.map +1 -1
- package/dist/features.d.ts +7 -0
- package/dist/features.d.ts.map +1 -0
- package/dist/features.js +45 -0
- package/dist/features.js.map +1 -0
- package/dist/frontmatter.d.ts +12 -0
- package/dist/frontmatter.d.ts.map +1 -0
- package/dist/frontmatter.js +42 -0
- package/dist/frontmatter.js.map +1 -0
- package/dist/gateway/local.js +1 -1
- package/dist/gateway/local.js.map +1 -1
- package/dist/http/server.d.ts +0 -1
- package/dist/http/server.d.ts.map +1 -1
- package/dist/http/server.js +0 -1
- package/dist/http/server.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/server.d.ts +51 -3
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +77 -60
- package/dist/server.js.map +1 -1
- package/dist/skill-prompts.d.ts +3 -0
- package/dist/skill-prompts.d.ts.map +1 -0
- package/dist/skill-prompts.js +76 -0
- package/dist/skill-prompts.js.map +1 -0
- package/dist/skill-tool.d.ts +34 -0
- package/dist/skill-tool.d.ts.map +1 -0
- package/dist/skill-tool.js +207 -0
- package/dist/skill-tool.js.map +1 -0
- package/dist/tools/edit.d.ts.map +1 -1
- package/dist/tools/edit.js +21 -4
- package/dist/tools/edit.js.map +1 -1
- package/dist/tools/engine.d.ts +89 -14
- package/dist/tools/engine.d.ts.map +1 -1
- package/dist/tools/engine.js +143 -33
- package/dist/tools/engine.js.map +1 -1
- package/dist/tools/export.d.ts +7 -0
- package/dist/tools/export.d.ts.map +1 -1
- package/dist/tools/export.js +201 -32
- package/dist/tools/export.js.map +1 -1
- package/dist/tools/history.js +1 -1
- package/dist/tools/history.js.map +1 -1
- package/dist/tools/import.d.ts +2 -0
- package/dist/tools/import.d.ts.map +1 -1
- package/dist/tools/import.js +79 -24
- package/dist/tools/import.js.map +1 -1
- package/dist/tools/index.d.ts +6 -0
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +8 -5
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/list.d.ts.map +1 -1
- package/dist/tools/list.js +8 -2
- package/dist/tools/list.js.map +1 -1
- package/dist/tools/load.d.ts.map +1 -1
- package/dist/tools/load.js +26 -19
- package/dist/tools/load.js.map +1 -1
- package/dist/tools/media-sniff.d.ts +14 -0
- package/dist/tools/media-sniff.d.ts.map +1 -0
- package/dist/tools/media-sniff.js +80 -0
- package/dist/tools/media-sniff.js.map +1 -0
- package/dist/tools/preview.d.ts +2 -0
- package/dist/tools/preview.d.ts.map +1 -1
- package/dist/tools/preview.js +280 -63
- package/dist/tools/preview.js.map +1 -1
- package/dist/tools/save.d.ts.map +1 -1
- package/dist/tools/save.js +18 -1
- package/dist/tools/save.js.map +1 -1
- package/dist/tools/telemetry-wrapper.js +2 -2
- package/dist/tools/telemetry-wrapper.js.map +1 -1
- package/dist/tools/{open-editor.d.ts → view.d.ts} +3 -3
- package/dist/tools/view.d.ts.map +1 -0
- package/dist/tools/{open-editor.js → view.js} +20 -18
- package/dist/tools/view.js.map +1 -0
- package/dist/viewer/cesdk-cdn.d.ts +21 -6
- package/dist/viewer/cesdk-cdn.d.ts.map +1 -1
- package/dist/viewer/cesdk-cdn.js +26 -7
- package/dist/viewer/cesdk-cdn.js.map +1 -1
- package/dist/viewer/listener.d.ts +2 -0
- package/dist/viewer/listener.d.ts.map +1 -1
- package/dist/viewer/listener.js +2 -0
- package/dist/viewer/listener.js.map +1 -1
- package/dist/viewer/presigned-r2-url-builder.d.ts +1 -1
- package/dist/viewer/presigned-r2-url-builder.js +1 -1
- package/dist/viewer/presigned-r2-url-builder.js.map +1 -1
- package/dist/viewer/router.d.ts.map +1 -1
- package/dist/viewer/router.js +11 -18
- package/dist/viewer/router.js.map +1 -1
- package/dist/viewer/session-mount.js.map +1 -1
- package/dist/viewer/spa-assets.generated.d.ts.map +1 -1
- package/dist/viewer/spa-assets.generated.js +757 -869
- package/dist/viewer/spa-assets.generated.js.map +1 -1
- package/dist/viewer/url-builder.d.ts +4 -3
- package/dist/viewer/url-builder.d.ts.map +1 -1
- package/dist/viewer/url-builder.js +4 -4
- package/dist/viewer/url-builder.js.map +1 -1
- package/package.json +6 -5
- package/dist/cross-ref.d.ts +0 -2
- package/dist/cross-ref.d.ts.map +0 -1
- package/dist/cross-ref.js +0 -31
- package/dist/cross-ref.js.map +0 -1
- package/dist/skill-tools.d.ts +0 -3
- package/dist/skill-tools.d.ts.map +0 -1
- package/dist/skill-tools.js +0 -105
- package/dist/skill-tools.js.map +0 -1
- package/dist/tools/open-editor.d.ts.map +0 -1
- package/dist/tools/open-editor.js.map +0 -1
- /package/assets/docs/guide/{create-video → create-audio}/audio/adjust-speed.md +0 -0
- /package/assets/docs/guide/{create-video → create-audio}/audio/adjust-volume.md +0 -0
package/README.md
CHANGED
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
# @imgly/codesign-mcp
|
|
2
2
|
|
|
3
3
|
MCP server exposing a CE.SDK CreativeEngine for vector design + print-quality
|
|
4
|
-
PDF output. Ships
|
|
5
|
-
|
|
4
|
+
PDF output. Ships a single `skill` tool (read + search over an embedded
|
|
5
|
+
handbook / api / guide catalog), per-skill MCP prompts surfaced as slash
|
|
6
|
+
commands, and the design/workspace tools (`edit`, `preview`, `export`,
|
|
7
|
+
`list`, `history`, …).
|
|
6
8
|
|
|
7
9
|
## Install
|
|
8
10
|
|
|
@@ -23,6 +25,16 @@ for the exact per-host snippets — all spawn
|
|
|
23
25
|
Set `CESDK_LICENSE` in the server's `env` to use your own CE.SDK node license;
|
|
24
26
|
during the internal beta a 30-day trial is bundled, so it's optional.
|
|
25
27
|
|
|
28
|
+
### Development builds (`@next`)
|
|
29
|
+
|
|
30
|
+
The newest not-yet-released build is continuously published under the `next`
|
|
31
|
+
dist-tag. It may be less stable than a release, but it's the fastest way to try
|
|
32
|
+
what's coming:
|
|
33
|
+
|
|
34
|
+
```bash
|
|
35
|
+
claude mcp add codesign-next -- npx -y @imgly/codesign-mcp@next stdio
|
|
36
|
+
```
|
|
37
|
+
|
|
26
38
|
### Offline / air-gapped install
|
|
27
39
|
|
|
28
40
|
Fetch the published package as a self-contained tarball on a connected machine,
|
|
@@ -135,6 +147,28 @@ sessions over `max-sessions` get `503 Service Unavailable` with `Retry-After: 30
|
|
|
135
147
|
|
|
136
148
|
Stdio mode uses a single engine for the lifetime of the process.
|
|
137
149
|
|
|
150
|
+
### Long-running exports (video)
|
|
151
|
+
|
|
152
|
+
Video is **opt-in**: set `IMGLY_FEATURE_VIDEO=on` to enable video export,
|
|
153
|
+
video/audio import, and the handbook's video guidance (all hidden by default
|
|
154
|
+
while cross-platform video encoding stabilizes). With the flag on and no
|
|
155
|
+
explicit `IMGLY_CESDK_ENGINE`, the server picks the native engine
|
|
156
|
+
automatically — video cannot encode on the WASM engine.
|
|
157
|
+
|
|
158
|
+
Video export holds the engine for the whole encode and can run for minutes.
|
|
159
|
+
The server reports MCP progress while encoding:
|
|
160
|
+
|
|
161
|
+
- **Claude Code** shows the progress and keeps the call alive — progress
|
|
162
|
+
resets its idle timeout (30 min on stdio by default), so no configuration
|
|
163
|
+
is needed.
|
|
164
|
+
- **Codex CLI** kills tool calls after **300 s** regardless of progress.
|
|
165
|
+
Raise the per-server timeout in `config.toml` before exporting video:
|
|
166
|
+
|
|
167
|
+
```toml
|
|
168
|
+
[mcp_servers.codesign]
|
|
169
|
+
tool_timeout_sec = 1800
|
|
170
|
+
```
|
|
171
|
+
|
|
138
172
|
## Embedding
|
|
139
173
|
|
|
140
174
|
The HTTP server is also exposed as a programmatic factory for callers that
|
package/assets/docs/api/SKILL.md
CHANGED
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: api
|
|
3
3
|
description: |
|
|
4
|
-
Authoritative TypeScript signatures for the CE.SDK CreativeEngine. Use this
|
|
5
|
-
whenever you need the exact signature, parameter types, or return type
|
|
6
|
-
`engine.*` method — especially before calling a method you haven't
|
|
7
|
-
|
|
4
|
+
Authoritative TypeScript signatures for the CE.SDK CreativeEngine. Use this
|
|
5
|
+
skill whenever you need the exact signature, parameter types, or return type
|
|
6
|
+
of an `engine.*` method — especially before calling a method you haven't
|
|
7
|
+
used yet. This is THE source of truth for signatures: the `.d.ts` it wraps
|
|
8
|
+
ships with the same `@cesdk/node` package the engine runs, while prose docs
|
|
9
|
+
(the `guide` skill) can drift.
|
|
8
10
|
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
ships with the same `@cesdk/node` package the engine runs.
|
|
11
|
+
The entry document is an overview; pass path: "index.d.ts" for the full
|
|
12
|
+
type definition file (~9000 lines) and slice it with offset/limit.
|
|
12
13
|
|
|
13
14
|
Triggered when you need to verify an `engine.block.*` or `engine.scene.*`
|
|
14
15
|
signature, look up a parameter type, or confirm an enum/string-property name.
|
|
@@ -17,26 +18,27 @@ description: |
|
|
|
17
18
|
## Single file: `index.d.ts`
|
|
18
19
|
|
|
19
20
|
The whole CE.SDK TypeScript surface is in `index.d.ts` (~9000 lines). Use
|
|
20
|
-
`
|
|
21
|
+
`path: "index.d.ts"` with `offset`/`limit` to fetch the slice you need; never
|
|
22
|
+
read the whole file.
|
|
21
23
|
|
|
22
24
|
## Line anchors
|
|
23
25
|
|
|
24
|
-
The most-used classes are at known line offsets. Pass these directly
|
|
26
|
+
The most-used classes are at known line offsets. Pass these directly:
|
|
25
27
|
|
|
26
|
-
| Class | Start line | Read example
|
|
27
|
-
| ------------ | ---------- |
|
|
28
|
-
| AssetAPI | 260 | `
|
|
29
|
-
| **BlockAPI** | **1421** | `
|
|
30
|
-
| EditorAPI | 6300 | `
|
|
31
|
-
| EventAPI | 7382 | `
|
|
32
|
-
| **SceneAPI** | **8114** | `
|
|
33
|
-
| VariableAPI | 9531 | `
|
|
28
|
+
| Class | Start line | Read example |
|
|
29
|
+
| ------------ | ---------- | -------------------------------------- |
|
|
30
|
+
| AssetAPI | 260 | `offset=260, limit=200` |
|
|
31
|
+
| **BlockAPI** | **1421** | `offset=1421, limit=400` (largest API) |
|
|
32
|
+
| EditorAPI | 6300 | `offset=6300, limit=300` |
|
|
33
|
+
| EventAPI | 7382 | `offset=7382, limit=200` |
|
|
34
|
+
| **SceneAPI** | **8114** | `offset=8114, limit=300` |
|
|
35
|
+
| VariableAPI | 9531 | `offset=9531, limit=100` |
|
|
34
36
|
|
|
35
37
|
## How to look up a method
|
|
36
38
|
|
|
37
39
|
1. Identify which class owns it (e.g. `engine.block.setFont` → BlockAPI).
|
|
38
|
-
2. `
|
|
39
|
-
3. `
|
|
40
|
+
2. `skill({ name: 'api', query: 'setFont(' })` — matches come back as `index.d.ts:<line>: …`.
|
|
41
|
+
3. `skill({ name: 'api', path: 'index.d.ts', offset: <match-line - 5>, limit: 30 })` to get the JSDoc + signature.
|
|
40
42
|
|
|
41
43
|
The JSDoc above each method tells you the canonical usage and lists `@param`
|
|
42
44
|
types. When a method has multiple overloads, prefer the one without
|
|
@@ -44,6 +46,6 @@ types. When a method has multiple overloads, prefer the one without
|
|
|
44
46
|
|
|
45
47
|
## When to NOT use this skill
|
|
46
48
|
|
|
47
|
-
- Reading conceptual prose ("how does XYZ work") → use `
|
|
48
|
-
- General topic guides (text, fills, export, rules) → `
|
|
49
|
-
- This skill is signatures only — use `
|
|
49
|
+
- Reading conceptual prose ("how does XYZ work") → use the `guide` skill instead.
|
|
50
|
+
- General topic guides (text, fills, export, rules) → use the `guide` skill instead.
|
|
51
|
+
- This skill is signatures only — use the `guide` skill for everything else.
|
|
@@ -893,6 +893,28 @@ export declare interface AssetEnumProperty {
|
|
|
893
893
|
options: string[];
|
|
894
894
|
}
|
|
895
895
|
|
|
896
|
+
/**
|
|
897
|
+
* Property paths that can be faceted — the facetable subset of
|
|
898
|
+
* `AssetPropertyPath`. `label` and `id` are excluded because their
|
|
899
|
+
* cardinality is unbounded.
|
|
900
|
+
* @public
|
|
901
|
+
*/
|
|
902
|
+
export declare type AssetFacetPath = 'tags' | 'groups' | `meta.${string}`;
|
|
903
|
+
|
|
904
|
+
/**
|
|
905
|
+
* One bucket of a facet distribution.
|
|
906
|
+
* @public
|
|
907
|
+
*/
|
|
908
|
+
export declare interface AssetFacetValue {
|
|
909
|
+
/** Raw value exactly as stored on the assets (no casing or locale normalization). */
|
|
910
|
+
value: string;
|
|
911
|
+
/**
|
|
912
|
+
* Number of matched assets carrying this value. Always set by local
|
|
913
|
+
* sources; custom sources may omit it when counting is expensive.
|
|
914
|
+
*/
|
|
915
|
+
count?: number;
|
|
916
|
+
}
|
|
917
|
+
|
|
896
918
|
/**
|
|
897
919
|
* Filter expression — predicate or logical combinator. Combinators nest
|
|
898
920
|
* arbitrarily. The union is mutually exclusive: an object with both
|
|
@@ -1037,10 +1059,10 @@ export declare type AssetProperty = AssetBooleanProperty | AssetColorProperty |
|
|
|
1037
1059
|
* substring) or `equals` (case-insensitive equality) must be set — the
|
|
1038
1060
|
* type forbids passing both or neither. On a string-array property
|
|
1039
1061
|
* (`tags`, `groups`), the operator matches if any element matches.
|
|
1062
|
+
* `meta.<key>` values are flat strings, compared whole.
|
|
1040
1063
|
*
|
|
1041
|
-
*
|
|
1042
|
-
*
|
|
1043
|
-
* same way before comparing.
|
|
1064
|
+
* If a meta value was originally serialized as a number or boolean,
|
|
1065
|
+
* stringify it the same way before comparing.
|
|
1044
1066
|
* @public
|
|
1045
1067
|
*/
|
|
1046
1068
|
export declare type AssetPropertyFilter = {
|
|
@@ -1055,8 +1077,7 @@ export declare type AssetPropertyFilter = {
|
|
|
1055
1077
|
|
|
1056
1078
|
/**
|
|
1057
1079
|
* Dot-path against the resolved asset that a property predicate targets:
|
|
1058
|
-
* `label`, `id`, `tags`, `groups`, or `meta.<key>` (one segment
|
|
1059
|
-
* values in the engine are flat strings).
|
|
1080
|
+
* `label`, `id`, `tags`, `groups`, or `meta.<key>` (one segment).
|
|
1060
1081
|
*
|
|
1061
1082
|
* The template literal accepts `'meta.'` (empty key) because TypeScript's
|
|
1062
1083
|
* `${string}` includes the empty string; the engine rejects this at
|
|
@@ -1139,6 +1160,13 @@ export declare interface AssetQueryData {
|
|
|
1139
1160
|
* ```
|
|
1140
1161
|
*/
|
|
1141
1162
|
filter?: AssetFilter[];
|
|
1163
|
+
/**
|
|
1164
|
+
* Facet distributions to compute over the matched (pre-pagination) set,
|
|
1165
|
+
* e.g. to populate filter dropdowns. Local sources compute facets
|
|
1166
|
+
* automatically; custom sources may fulfill any subset of the request.
|
|
1167
|
+
* Combine with `perPage: 0` to enumerate values without fetching assets.
|
|
1168
|
+
*/
|
|
1169
|
+
facets?: AssetFacetPath[];
|
|
1142
1170
|
}
|
|
1143
1171
|
|
|
1144
1172
|
/**
|
|
@@ -1300,6 +1328,16 @@ export declare interface AssetsQueryResult<T extends AssetResult = AssetResult>
|
|
|
1300
1328
|
nextPage?: number;
|
|
1301
1329
|
/** How many assets are there in total for the current query regardless of the page */
|
|
1302
1330
|
total: number;
|
|
1331
|
+
/**
|
|
1332
|
+
* Distributions for the requested facet paths, keyed by the exact
|
|
1333
|
+
* requested path string. Ordered by count descending, ties by value
|
|
1334
|
+
* ascending. A missing key signals the
|
|
1335
|
+
* source did not compute that facet. Absent entirely when no facets
|
|
1336
|
+
* were requested or none were computed.
|
|
1337
|
+
*/
|
|
1338
|
+
facets?: {
|
|
1339
|
+
[path: string]: AssetFacetValue[];
|
|
1340
|
+
};
|
|
1303
1341
|
}
|
|
1304
1342
|
|
|
1305
1343
|
/**
|
|
@@ -6271,6 +6309,62 @@ export declare class BlockAPI {
|
|
|
6271
6309
|
* @returns The "out" animation of the block.
|
|
6272
6310
|
*/
|
|
6273
6311
|
getOutAnimation(id: DesignBlockId): DesignBlockId;
|
|
6312
|
+
/**
|
|
6313
|
+
* Creates a new transition block.
|
|
6314
|
+
*
|
|
6315
|
+
* The created block is standalone until assigned to a clip with `setTransition`.
|
|
6316
|
+
* Once assigned, it is owned by that clip: it is destroyed together with the
|
|
6317
|
+
* clip, and the engine also destroys it automatically when the two clips stop
|
|
6318
|
+
* being timeline-adjacent on the track (e.g. after a manual gap is introduced).
|
|
6319
|
+
*
|
|
6320
|
+
* @category Block Transitions
|
|
6321
|
+
* @param type - The type of transition to create.
|
|
6322
|
+
* @returns The handle of the new transition instance.
|
|
6323
|
+
*/
|
|
6324
|
+
createTransition(type: TransitionType): DesignBlockId;
|
|
6325
|
+
/**
|
|
6326
|
+
* Checks whether a clip can own an outgoing clip-to-clip transition.
|
|
6327
|
+
*
|
|
6328
|
+
* Only leaf clips inside a video track qualify. Audio, group, caption, and
|
|
6329
|
+
* cutout blocks — as well as blocks outside a video track — report `false`.
|
|
6330
|
+
*
|
|
6331
|
+
* @category Block Transitions
|
|
6332
|
+
* @param id - The clip block to check.
|
|
6333
|
+
* @returns Whether the block can own an outgoing transition.
|
|
6334
|
+
*/
|
|
6335
|
+
supportsTransition(id: DesignBlockId): boolean;
|
|
6336
|
+
/**
|
|
6337
|
+
* Assigns the outgoing transition of a clip.
|
|
6338
|
+
*
|
|
6339
|
+
* A previously assigned transition block is detached but not destroyed
|
|
6340
|
+
* automatically. Throws an error if the given transition block is invalid or
|
|
6341
|
+
* already assigned to another clip. Both the clip and its following clip on
|
|
6342
|
+
* the track must support transitions, see `supportsTransition`. To clear a
|
|
6343
|
+
* clip's transition, use `removeTransition` instead.
|
|
6344
|
+
*
|
|
6345
|
+
* @category Block Transitions
|
|
6346
|
+
* @param id - The outgoing clip that owns the transition relation.
|
|
6347
|
+
* @param transition - The transition block to assign.
|
|
6348
|
+
*/
|
|
6349
|
+
setTransition(id: DesignBlockId, transition: DesignBlockId): void;
|
|
6350
|
+
/**
|
|
6351
|
+
* Removes the outgoing transition of a clip.
|
|
6352
|
+
*
|
|
6353
|
+
* The removed transition block is detached but not destroyed automatically.
|
|
6354
|
+
* Removing from a clip without an assigned transition is a no-op.
|
|
6355
|
+
*
|
|
6356
|
+
* @category Block Transitions
|
|
6357
|
+
* @param id - The outgoing clip whose transition relation should be cleared.
|
|
6358
|
+
*/
|
|
6359
|
+
removeTransition(id: DesignBlockId): void;
|
|
6360
|
+
/**
|
|
6361
|
+
* Gets the outgoing transition assigned to a clip.
|
|
6362
|
+
*
|
|
6363
|
+
* @category Block Transitions
|
|
6364
|
+
* @param id - The outgoing clip whose transition relation should be queried.
|
|
6365
|
+
* @returns The assigned transition block, or an invalid block if unset.
|
|
6366
|
+
*/
|
|
6367
|
+
getTransition(id: DesignBlockId): DesignBlockId;
|
|
6274
6368
|
/**
|
|
6275
6369
|
* Updates a pixel stream fill block with a new pixel buffer.
|
|
6276
6370
|
*
|
|
@@ -6556,7 +6650,7 @@ export declare type BlurTypeShorthand = (typeof BLUR_TYPES)[number];
|
|
|
6556
6650
|
export declare type BooleanOperation = 'Difference' | 'Intersection' | 'Union' | 'XOR';
|
|
6557
6651
|
|
|
6558
6652
|
/** @public */
|
|
6559
|
-
export declare type BoolPropertyName = 'alwaysOnBottom' | 'alwaysOnTop' | 'clipped' | 'flip/horizontal' | 'flip/vertical' | 'highlightEnabled' | 'includedInExport' | 'placeholder/enabled' | 'playback/playing' | 'playback/soloPlaybackEnabled' | 'scene/aspectRatioLock' | 'scene/extendedPanningArea' | 'selected' | 'selectionEnabled' | 'transformLocked' | 'visible' | 'blur/enabled' | 'dropShadow/clip' | 'dropShadow/enabled' | 'fill/enabled' | 'fill/overprint' | 'page/guides/gridEnabled' | 'page/guides/gridSnapEnabled' | 'page/marginEnabled' | 'placeholderControls/showButton' | 'placeholderControls/showOverlay' | 'playback/looping' | 'playback/muted' | 'stroke/enabled' | 'stroke/overprint' | 'backgroundColor/enabled' | 'placeholderBehavior/enabled' | 'text/automaticFontSizeEnabled' | 'text/clipLinesOutsideOfFrame' | 'text/hasClippedLines' | 'text/pathFlipped' | 'text/useContextualLigatures' | 'text/useDiscretionaryLigatures' | 'text/useKerning' | 'text/useLigatures' | 'track/automaticallyManageBlockOffsets' | 'caption/automaticFontSizeEnabled' | 'caption/clipLinesOutsideOfFrame' | 'caption/hasClippedLines' | 'caption/pathFlipped' | 'caption/useContextualLigatures' | 'caption/useDiscretionaryLigatures' | 'caption/useKerning' | 'caption/useLigatures' | 'captionTrack/automaticallyManageBlockOffsets' | 'animation/slide/fade' | 'animation/pan/fade' | 'animation/blur/fade' | 'animation/zoom/fade' | 'animation/crop_zoom/fade' | 'animation/spin/fade' | 'animation/block_swipe_text/useTextColor' | 'animation/spread_text/fade' | 'animation/ken_burns/fade' | 'effect/enabled' | (string & {});
|
|
6653
|
+
export declare type BoolPropertyName = 'alwaysOnBottom' | 'alwaysOnTop' | 'clipped' | 'flip/horizontal' | 'flip/vertical' | 'highlightEnabled' | 'includedInExport' | 'placeholder/enabled' | 'playback/playing' | 'playback/soloPlaybackEnabled' | 'scene/aspectRatioLock' | 'scene/extendedPanningArea' | 'selected' | 'selectionEnabled' | 'transformLocked' | 'visible' | 'blur/enabled' | 'dropShadow/clip' | 'dropShadow/enabled' | 'fill/enabled' | 'fill/overprint' | 'page/guides/gridEnabled' | 'page/guides/gridSnapEnabled' | 'page/marginEnabled' | 'placeholderControls/showButton' | 'placeholderControls/showOverlay' | 'playback/looping' | 'playback/muted' | 'stroke/enabled' | 'stroke/overprint' | 'backgroundColor/enabled' | 'placeholderBehavior/enabled' | 'text/automaticFontSizeEnabled' | 'text/clipLinesOutsideOfFrame' | 'text/hasClippedLines' | 'text/pathFlipped' | 'text/useContextualAlternates' | 'text/useContextualLigatures' | 'text/useDiscretionaryLigatures' | 'text/useKerning' | 'text/useLigatures' | 'track/automaticallyManageBlockOffsets' | 'caption/automaticFontSizeEnabled' | 'caption/clipLinesOutsideOfFrame' | 'caption/hasClippedLines' | 'caption/pathFlipped' | 'caption/useContextualAlternates' | 'caption/useContextualLigatures' | 'caption/useDiscretionaryLigatures' | 'caption/useKerning' | 'caption/useLigatures' | 'captionTrack/automaticallyManageBlockOffsets' | 'animation/slide/fade' | 'animation/pan/fade' | 'animation/blur/fade' | 'animation/zoom/fade' | 'animation/crop_zoom/fade' | 'animation/spin/fade' | 'animation/block_swipe_text/useTextColor' | 'animation/spread_text/fade' | 'animation/ken_burns/fade' | 'effect/enabled' | (string & {});
|
|
6560
6654
|
|
|
6561
6655
|
/**
|
|
6562
6656
|
* Represents a buffer of data.
|
|
@@ -6884,16 +6978,20 @@ declare class CreativeEngine {
|
|
|
6884
6978
|
* - `'ly.img.filter.duotone'` - Color effects of various kinds
|
|
6885
6979
|
*
|
|
6886
6980
|
* These assets are parsed at \{\{base_url\}\}/<id>/content.json, where
|
|
6887
|
-
* `base_url` defaults to the
|
|
6981
|
+
* `base_url` defaults to the engine's configured baseURL. For `@cesdk/node`
|
|
6982
|
+
* that is the local package (`file://<pkg>/assets/`), which does not bundle
|
|
6983
|
+
* these sources, so pass a `baseURL` to load them.
|
|
6888
6984
|
* Each source is created via `addLocalSource` and populated with the parsed assets. To modify the available
|
|
6889
6985
|
* assets, you may either exclude certain IDs via `excludeAssetSourceIds` or alter the sources after creation.
|
|
6890
6986
|
*
|
|
6987
|
+
* @deprecated This method uses legacy v4 asset source IDs and will be removed in a future version.
|
|
6988
|
+
* Please migrate to v5 asset sources using engine.asset.addLocalAssetSourceFromJSONURI().
|
|
6891
6989
|
* @category Asset Sources
|
|
6892
6990
|
* @param options - Configuration options for loading default asset sources.
|
|
6893
6991
|
* @returns A promise that resolves when all asset sources are loaded.
|
|
6894
6992
|
*/
|
|
6895
6993
|
addDefaultAssetSources({ baseURL, excludeAssetSourceIds }?: {
|
|
6896
|
-
/** The source of the asset definitions, must be absolute. Defaults to
|
|
6994
|
+
/** The source of the asset definitions, must be absolute. Defaults to the engine's configured baseURL. */
|
|
6897
6995
|
baseURL?: string;
|
|
6898
6996
|
/** A list of IDs, that will be ignored during load. */
|
|
6899
6997
|
excludeAssetSourceIds?: DefaultAssetSourceId[];
|
|
@@ -6911,12 +7009,14 @@ declare class CreativeEngine {
|
|
|
6911
7009
|
* - `'ly.img.video'` - Sample videos
|
|
6912
7010
|
* - `'ly.img.video.upload'` - Demo source to upload video assets
|
|
6913
7011
|
*
|
|
7012
|
+
* @deprecated This method uses legacy v3 demo asset source IDs and will be removed in a future version.
|
|
7013
|
+
* Please migrate to v4 asset sources using engine.asset.addLocalAssetSourceFromJSONURI().
|
|
6914
7014
|
* @category Asset Sources
|
|
6915
7015
|
* @param options - Configuration options for loading demo asset sources.
|
|
6916
7016
|
* @returns A promise that resolves when all demo asset sources are loaded.
|
|
6917
7017
|
*/
|
|
6918
7018
|
addDemoAssetSources({ baseURL, excludeAssetSourceIds, sceneMode, withUploadAssetSources }?: {
|
|
6919
|
-
/** The source of the demo asset definitions, must be absolute. Defaults to
|
|
7019
|
+
/** The source of the demo asset definitions, must be absolute. Defaults to the engine's configured baseURL. */
|
|
6920
7020
|
baseURL?: string;
|
|
6921
7021
|
/** A list of IDs, that will be ignored during load */
|
|
6922
7022
|
excludeAssetSourceIds?: DemoAssetSourceId[];
|
|
@@ -8599,6 +8699,8 @@ declare interface FindAssetsQuery {
|
|
|
8599
8699
|
sortKey: string;
|
|
8600
8700
|
sortActiveFirst: boolean;
|
|
8601
8701
|
filter: AssetFilter[];
|
|
8702
|
+
/** Facet paths crossing the binding boundary as plain path strings. */
|
|
8703
|
+
facets: AssetFacetPath[];
|
|
8602
8704
|
}
|
|
8603
8705
|
|
|
8604
8706
|
/**
|
|
@@ -8964,14 +9066,14 @@ export declare type ObjectType = ObjectTypeShorthand | ObjectTypeLonghand;
|
|
|
8964
9066
|
* engine when calling `cesdk.engine.block.getType(blockId)` for example.
|
|
8965
9067
|
* @public
|
|
8966
9068
|
*/
|
|
8967
|
-
export declare type ObjectTypeLonghand = DesignBlockTypeLonghand | ShapeTypeLonghand | FillTypeLonghand | EffectTypeLonghand | BlurTypeLonghand | AnimationTypeLonghand;
|
|
9069
|
+
export declare type ObjectTypeLonghand = DesignBlockTypeLonghand | ShapeTypeLonghand | FillTypeLonghand | EffectTypeLonghand | BlurTypeLonghand | AnimationTypeLonghand | TransitionTypeLonghand;
|
|
8968
9070
|
|
|
8969
9071
|
/**
|
|
8970
9072
|
* The shorthand block type IDs for all blocks types in the Creative Engine. Those are the types that can be
|
|
8971
9073
|
* passed to `cesdk.engine.block.findByType(type)` for example.
|
|
8972
9074
|
* @public
|
|
8973
9075
|
*/
|
|
8974
|
-
export declare type ObjectTypeShorthand = DesignBlockTypeShorthand | `shape/${ShapeTypeShorthand}` | `fill/${FillTypeShorthand}` | `effect/${EffectTypeShorthand}` | `blur/${BlurTypeShorthand}` | `animation/${AnimationTypeShorthand}`;
|
|
9076
|
+
export declare type ObjectTypeShorthand = DesignBlockTypeShorthand | `shape/${ShapeTypeShorthand}` | `fill/${FillTypeShorthand}` | `effect/${EffectTypeShorthand}` | `blur/${BlurTypeShorthand}` | `animation/${AnimationTypeShorthand}` | `transition/${TransitionTypeShorthand}`;
|
|
8975
9077
|
|
|
8976
9078
|
/** @public */
|
|
8977
9079
|
export declare type OptionalPrefix<T extends string> = `ubq://${T}` | T;
|
|
@@ -10577,6 +10679,31 @@ export declare interface TransientResource {
|
|
|
10577
10679
|
size: number;
|
|
10578
10680
|
}
|
|
10579
10681
|
|
|
10682
|
+
/**
|
|
10683
|
+
* The shorthand block type IDs for the transition blocks. These are the IDs used to create new transitions
|
|
10684
|
+
* using `cesdk.engine.block.createTransition(id)`.
|
|
10685
|
+
* @public
|
|
10686
|
+
*/
|
|
10687
|
+
export declare const TRANSITION_TYPES: readonly ["none", "cross-fade", "cross-blur", "cross-spin", "cross-zoom", "cross-warp", "push", "slide", "stack", "splice", "diagonal-splice", "fade", "fade-to-white", "fade-to-black", "color-wipe", "line-wipe", "wipe", "clock-wipe", "chop", "gradient-fade", "two-stripes"];
|
|
10688
|
+
|
|
10689
|
+
/**
|
|
10690
|
+
* The block type IDs for the transition blocks. These are the IDs used to create new transitions
|
|
10691
|
+
* using `cesdk.engine.block.createTransition(id)`.
|
|
10692
|
+
* Refer to {@link TransitionTypeShorthand} and {@link TransitionTypeLonghand} for more details.
|
|
10693
|
+
* @public
|
|
10694
|
+
*/
|
|
10695
|
+
export declare type TransitionType = TransitionTypeShorthand | TransitionTypeLonghand;
|
|
10696
|
+
|
|
10697
|
+
/**
|
|
10698
|
+
* The longhand block type IDs for the transition blocks. These are the IDs used to create new transitions
|
|
10699
|
+
* using `cesdk.engine.block.createTransition(id)`.
|
|
10700
|
+
* @public
|
|
10701
|
+
*/
|
|
10702
|
+
export declare type TransitionTypeLonghand = `//ly.img.ubq/transition/${TransitionTypeShorthand}`;
|
|
10703
|
+
|
|
10704
|
+
/** @public */
|
|
10705
|
+
export declare type TransitionTypeShorthand = (typeof TRANSITION_TYPES)[number];
|
|
10706
|
+
|
|
10580
10707
|
/** Typeface definition */
|
|
10581
10708
|
export declare interface Typeface {
|
|
10582
10709
|
name: string;
|
|
@@ -25,9 +25,9 @@ argument-hint: "[search-topic]"
|
|
|
25
25
|
|
|
26
26
|
## Version Notice
|
|
27
27
|
|
|
28
|
-
> **CE.SDK version**: 1.
|
|
28
|
+
> **CE.SDK version**: 1.79.0-rc.0 | **Generated**: 2026-07-17
|
|
29
29
|
>
|
|
30
|
-
> This skill was generated for CE.SDK v1.
|
|
30
|
+
> This skill was generated for CE.SDK v1.79.0-rc.0 on 2026-07-17.
|
|
31
31
|
> CE.SDK releases new versions approximately every two weeks.
|
|
32
32
|
> If the current date is more than 6 weeks after the generation date above,
|
|
33
33
|
> this skill is likely outdated. **Inform the user** that a newer version
|
|
@@ -54,7 +54,7 @@ argument-hint: "[search-topic]"
|
|
|
54
54
|
|
|
55
55
|
## Documentation Index
|
|
56
56
|
|
|
57
|
-
<-- IMGLY-AGENTS-MD-START -->[CE.SDK Node.js Docs Index]|root: .|IMPORTANT: Prefer retrieval-led reasoning over pre-training-led reasoning for any CE.SDK tasks. Consult the local docs directory before using pre-trained knowledge.|animation:{create,edit.md,types.md}|animation/create:{base.md,text.md}|api:{node}|api/node:{classes,enumerations,functions,interfaces,type-aliases,variables}|api-reference:{overview.md}|automation:{auto-resize.md,data-merge.md,design-generation.md,multi-image-generation.md,overview.md}|capabilities.md|colors:{adjust.md,apply.md,basics.md,conversion.md,create-color-palette.md,extract-colors.md,for-print,for-screen,overview.md,replace.md}|colors/for-print:{cmyk.md,spot.md}|colors/for-screen:{p3.md,srgb.md}|compatibility.md|concepts:{architecture.md,assets.md,blocks.md,buffers.md,design-units.md,editing-workflow.md,events.md,headless-mode.md,pages.md,resources.md,scenes.md,templating.md,terminology.md,undo-and-history.md}|configuration.md|conversion:{overview.md,to-base64.md,to-pdf.md,to-png.md}|create-audio:{audio}|create-audio/audio:{add-music.md,add-sound-effects.md,loop.md}|create-composition:{add-background.md,blend-modes.md,collage.md,group-and-ungroup.md,layer-management.md,layout.md,lock-design.md,multi-page.md,overview.md,programmatic.md}|create-templates:{add-dynamic-content,add-to-template-library.md,edit-or-remove.md,from-scratch.md,import,lock.md,overview.md}|create-templates/add-dynamic-content:{placeholders.md,set-editing-constraints.md,text-variables.md}|create-templates/import:{from-scene-file.md}|create-video:{
|
|
57
|
+
<-- IMGLY-AGENTS-MD-START -->[CE.SDK Node.js Docs Index]|root: .|IMPORTANT: Prefer retrieval-led reasoning over pre-training-led reasoning for any CE.SDK tasks. Consult the local docs directory before using pre-trained knowledge.|animation:{create,edit.md,types.md}|animation/create:{base.md,text.md}|api:{node}|api/node:{classes,enumerations,functions,interfaces,type-aliases,variables}|api-reference:{overview.md}|automation:{auto-resize.md,data-merge.md,design-generation.md,multi-image-generation.md,overview.md}|capabilities.md|colors:{adjust.md,apply.md,basics.md,conversion.md,create-color-palette.md,extract-colors.md,for-print,for-screen,overview.md,replace.md}|colors/for-print:{cmyk.md,spot.md}|colors/for-screen:{p3.md,srgb.md}|compatibility.md|concepts:{architecture.md,assets.md,blocks.md,buffers.md,design-units.md,editing-workflow.md,error-catalog.md,events.md,headless-mode.md,pages.md,resources.md,scenes.md,templating.md,terminology.md,undo-and-history.md}|configuration.md|conversion:{overview.md,to-base64.md,to-pdf.md,to-png.md}|create-audio:{audio}|create-audio/audio:{add-music.md,add-sound-effects.md,adjust-speed.md,adjust-volume.md,loop.md}|create-composition:{add-background.md,blend-modes.md,collage.md,group-and-ungroup.md,layer-management.md,layout.md,lock-design.md,multi-page.md,overview.md,programmatic.md}|create-templates:{add-dynamic-content,add-to-template-library.md,edit-or-remove.md,from-scratch.md,import,lock.md,overview.md}|create-templates/add-dynamic-content:{placeholders.md,set-editing-constraints.md,text-variables.md}|create-templates/import:{from-scene-file.md}|create-video:{control.md,limitations.md}|edit-image:{add-watermark.md,overview.md,remove-bg.md,replace-colors.md,transform}|edit-image/transform:{crop.md,flip.md,move.md,resize.md,rotate.md,scale.md}|edit-video:{add-captions.md,add-watermark.md,join-and-arrange.md,redaction.md,split.md,transform,trim.md}|edit-video/transform:{crop.md,flip.md,move.md,resize.md,rotate.md,scale.md}|engine-interface.md|export-save-publish:{create-thumbnail.md,export,for-printing.md,for-social-media.md,pre-export-validation.md,save.md,store-custom-metadata.md}|export-save-publish/export:{compress.md,overview.md,partial-export.md,size-limits.md,to-jpeg.md,to-pdf.md,to-png.md,to-raw-data.md,to-webp.md,with-color-mask.md}|file-format-support.md|fills:{color.md,gradient.md,image.md,overview.md,video.md}|filters-and-effects:{apply.md,blur.md,chroma-key-green-screen.md,create-custom-filters.md,create-custom-lut-filter.md,distortion.md,duotone.md,overview.md,support.md}|get-started:{agent-skills.md,build-with-ai.md,bun.md,cesdk-plugin-coding-agents.md,deno.md,mcp-server.md,overview.md,vanilla.md,vanilla-aws-lambda.md,vanilla-clone-github-project.md}|guides:{export-save-publish}|guides/export-save-publish:{export}|import-media:{asset-panel,concepts.md,content-json-schema.md,default-assets.md,edit-or-remove-assets.md,file-format-support.md,from-remote-source,overview.md,retrieve-mimetype.md,size-limits.md,source-sets.md}|import-media/asset-panel:{refresh-assets.md}|import-media/from-remote-source:{asset-versioning.md,remote-asset.md}|insert-media:{audio.md,images.md,position-and-align.md,shapes-or-stickers.md,videos.md}|key-capabilities.md|key-concepts.md|licensing.md|llms-txt.md|open-the-editor:{blank-canvas.md,from-image.md,from-template.md,from-video.md,import-design,load-scene.md,overview.md,uri-resolver.md}|open-the-editor/import-design:{from-archive.md,from-indesign.md,from-photoshop.md}|outlines:{overview.md,shadows-and-glows.md,strokes.md}|overview.md|performance.md|plugins:{print-ready-pdf.md}|rules:{asset-handling.md,common-pitfalls.md,content-fill-mode.md,enforce-brand-guidelines.md,lock-content.md,moderate-content.md,overview.md,silent-init-errors.md,verify-properties-before-use.md}|security.md|serve-assets.md|settings.md|shapes.md|stickers.md|stickers-and-shapes:{combine.md,create-cutout.md,create-edit,insert-qr-code.md}|stickers-and-shapes/create-edit:{create-shapes.md,create-stickers.md,edit-shapes.md}|text:{add.md,adjust-spacing.md,auto-size.md,edit.md,effects.md,emojis.md,language-support.md,overview.md,styling.md,text-designs.md}|to-v1-19.md|upgrade.md|use-templates:{apply-template.md,generate.md,overview.md,programmatic.md,replace-content.md}|what-is-cesdk.md|<-- IMGLY-AGENTS-MD-END -->
|
|
58
58
|
|
|
59
59
|
## API Index
|
|
60
60
|
|
|
@@ -62,7 +62,7 @@ argument-hint: "[search-topic]"
|
|
|
62
62
|
[CE.SDK Web API Index]|root: .
|
|
63
63
|
|
|
64
64
|
CreativeEngine:{asset,block,editor,event,scene,variable,actions,shortcuts,reactor,version,addPlugin,unstable_setVideoExportInactivityTimeout,unstable_setExportInactivityTimeout,addPostUpdateCallback,addPreUpdateCallback},... (+7)
|
|
65
|
-
BlockAPI:{export,getDominantColors,exportWithColorMask,exportVideo,exportAudio,loadFromString,loadFromArchiveURL,loadFromURL,saveToString,saveToArchive,create,createFill,getAudioTrackCountFromVideo,createAudioFromVideo,createAudiosFromVideo},... (+
|
|
65
|
+
BlockAPI:{export,getDominantColors,exportWithColorMask,exportVideo,exportAudio,loadFromString,loadFromArchiveURL,loadFromURL,saveToString,saveToArchive,create,createFill,getAudioTrackCountFromVideo,createAudioFromVideo,createAudiosFromVideo},... (+402)
|
|
66
66
|
AssetAPI:{registerApplyMiddleware,registerApplyToBlockMiddleware,addSource,addLocalSource,addLocalAssetSourceFromJSONString,addLocalAssetSourceFromJSONURI,removeSource,findAllSources,findAssets,fetchAsset,getGroups,getSupportedMimeTypes,getCredits,name,url},... (+14)
|
|
67
67
|
SceneAPI:{loadFromString,loadFromURL,loadFromArchiveURL,saveToString,saveToArchive,create,createVideo,createFromImage,createFromVideo,get,applyTemplateFromString,applyTemplateFromURL,getMode,setMode,setDesignUnit},... (+24)
|
|
68
68
|
EditorAPI:{unlockWithLicense,startTracking,setTrackingMetadata,getTrackingMetadata,getActiveLicense,onStateChanged,setEditMode,getEditMode,unstable_isInteractionHappening,hasSelectedVectorNode,addVectorNode,deleteVectorNode,hasSelectedVectorControlPoint,deleteSelectedVectorControlPoints,toggleSelectedVectorNodeSmooth},... (+95)
|
|
@@ -6224,6 +6224,83 @@ getOutAnimation(id: DesignBlockId): DesignBlockId
|
|
|
6224
6224
|
|
|
6225
6225
|
**Returns:** The "out" animation of the block.
|
|
6226
6226
|
|
|
6227
|
+
## Block Transitions
|
|
6228
|
+
|
|
6229
|
+
### createTransition()
|
|
6230
|
+
|
|
6231
|
+
Creates a new transition block.
|
|
6232
|
+
The created block is standalone until assigned to a clip with `setTransition`.
|
|
6233
|
+
Once assigned, it is owned by that clip: it is destroyed together with the
|
|
6234
|
+
clip, and the engine also destroys it automatically when the two clips stop
|
|
6235
|
+
being timeline-adjacent on the track (e.g. after a manual gap is introduced).
|
|
6236
|
+
|
|
6237
|
+
```typescript
|
|
6238
|
+
createTransition(type: TransitionType): DesignBlockId
|
|
6239
|
+
```
|
|
6240
|
+
|
|
6241
|
+
**Parameters:**
|
|
6242
|
+
- `type` - The type of transition to create.
|
|
6243
|
+
|
|
6244
|
+
**Returns:** The handle of the new transition instance.
|
|
6245
|
+
|
|
6246
|
+
### supportsTransition()
|
|
6247
|
+
|
|
6248
|
+
Checks whether a clip can own an outgoing clip-to-clip transition.
|
|
6249
|
+
Only leaf clips inside a video track qualify. Audio, group, caption, and
|
|
6250
|
+
cutout blocks — as well as blocks outside a video track — report `false`.
|
|
6251
|
+
|
|
6252
|
+
```typescript
|
|
6253
|
+
supportsTransition(id: DesignBlockId): boolean
|
|
6254
|
+
```
|
|
6255
|
+
|
|
6256
|
+
**Parameters:**
|
|
6257
|
+
- `id` - The clip block to check.
|
|
6258
|
+
|
|
6259
|
+
**Returns:** Whether the block can own an outgoing transition.
|
|
6260
|
+
|
|
6261
|
+
### setTransition()
|
|
6262
|
+
|
|
6263
|
+
Assigns the outgoing transition of a clip.
|
|
6264
|
+
A previously assigned transition block is detached but not destroyed
|
|
6265
|
+
automatically. Throws an error if the given transition block is invalid or
|
|
6266
|
+
already assigned to another clip. Both the clip and its following clip on
|
|
6267
|
+
the track must support transitions, see `supportsTransition`. To clear a
|
|
6268
|
+
clip's transition, use `removeTransition` instead.
|
|
6269
|
+
|
|
6270
|
+
```typescript
|
|
6271
|
+
setTransition(id: DesignBlockId, transition: DesignBlockId): void
|
|
6272
|
+
```
|
|
6273
|
+
|
|
6274
|
+
**Parameters:**
|
|
6275
|
+
- `id` - The outgoing clip that owns the transition relation.
|
|
6276
|
+
- `transition` - The transition block to assign.
|
|
6277
|
+
|
|
6278
|
+
### removeTransition()
|
|
6279
|
+
|
|
6280
|
+
Removes the outgoing transition of a clip.
|
|
6281
|
+
The removed transition block is detached but not destroyed automatically.
|
|
6282
|
+
Removing from a clip without an assigned transition is a no-op.
|
|
6283
|
+
|
|
6284
|
+
```typescript
|
|
6285
|
+
removeTransition(id: DesignBlockId): void
|
|
6286
|
+
```
|
|
6287
|
+
|
|
6288
|
+
**Parameters:**
|
|
6289
|
+
- `id` - The outgoing clip whose transition relation should be cleared.
|
|
6290
|
+
|
|
6291
|
+
### getTransition()
|
|
6292
|
+
|
|
6293
|
+
Gets the outgoing transition assigned to a clip.
|
|
6294
|
+
|
|
6295
|
+
```typescript
|
|
6296
|
+
getTransition(id: DesignBlockId): DesignBlockId
|
|
6297
|
+
```
|
|
6298
|
+
|
|
6299
|
+
**Parameters:**
|
|
6300
|
+
- `id` - The outgoing clip whose transition relation should be queried.
|
|
6301
|
+
|
|
6302
|
+
**Returns:** The assigned transition block, or an invalid block if unset.
|
|
6303
|
+
|
|
6227
6304
|
---
|
|
6228
6305
|
|
|
6229
6306
|
For complete type definitions, see the [CE.SDK TypeScript API Reference](https://img.ly/docs/cesdk/engine/api/).
|