From 47879609c730eedfbf37036ac68b18f0d1ebde39 Mon Sep 17 00:00:00 2001 From: Copilot <198982749+Copilot@users.noreply.github.com> Date: Mon, 2 Mar 2026 10:38:57 +0800 Subject: [PATCH] Export AssemblyInstructionsInput type from @uppy/transloadit (#6184) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The `AssemblyInstructionsInput` type from `@transloadit/types` is now publicly exported from `@uppy/transloadit`, allowing consumers to type their assembly parameters without importing from the external package. ## Changes - Re-exported `AssemblyInstructionsInput` type in `packages/@uppy/transloadit/src/index.ts` ## Usage ```typescript import type { AssemblyInstructionsInput } from '@uppy/transloadit' const params: AssemblyInstructionsInput = { steps: { encode: { robot: '/video/encode', use: ':original', preset: 'mp4', }, }, } ``` The type was already imported internally and aliased as `AssemblyParameters`. This change makes it available to plugin consumers.
Original prompt > Make the AssemblyInstructionsInput type available from the @uppy/transloadit package by re-exporting it from packages/@uppy/transloadit/src/index.ts. > > Background > - The Transloadit plugin imports the type AssemblyInstructionsInput from the external package @transloadit/types and aliases it as AssemblyParameters in packages/@uppy/transloadit/src/index.ts. > - Consumers of the @uppy/transloadit package need direct access to the AssemblyInstructionsInput type but it is not currently exported from the plugin package. > > Change requested > - Add a type re-export so that consumers can import AssemblyInstructionsInput from the transloadit plugin package, e.g. > import type { AssemblyInstructionsInput } from '@uppy/transloadit' > > Files to change > - packages/@uppy/transloadit/src/index.ts > - Add the following export alongside the other package exports (near the end of the module where other exports live): > > ```typescript name=packages/@uppy/transloadit/src/index.ts url=https://github.com/transloadit/uppy/blob/main/packages/@uppy/transloadit/src/index.ts > -export { COMPANION_URL, COMPANION_ALLOWED_HOSTS } > +export { COMPANION_URL, COMPANION_ALLOWED_HOSTS } > + > +// Re-export type from @transloadit/types so callers can import it from the plugin package. > +export type { AssemblyInstructionsInput } from '@transloadit/types' > ``` > > Notes > - This is a purely type-only export and should be erased at compile time; it does not add runtime code. > - No other behavior or API surface should change. > > Please create a branch, apply the change, and open a pull request with a descriptive title and a short description of the change. Run TypeScript build checks if available. >
*This pull request was created from Copilot chat.* > --- 💬 We'd love your input! Share your thoughts on Copilot coding agent in our [2 minute survey](https://gh.io/copilot-coding-agent-survey). --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: mifi <402547+mifi@users.noreply.github.com> Co-authored-by: Mikael Finstad --- .changeset/clever-crabs-worry.md | 5 +++++ packages/@uppy/transloadit/src/index.ts | 3 +++ 2 files changed, 8 insertions(+) create mode 100644 .changeset/clever-crabs-worry.md diff --git a/.changeset/clever-crabs-worry.md b/.changeset/clever-crabs-worry.md new file mode 100644 index 000000000..f0d2715a4 --- /dev/null +++ b/.changeset/clever-crabs-worry.md @@ -0,0 +1,5 @@ +--- +"@uppy/transloadit": patch +--- + +Add type re-export for `AssemblyInstructionsInput` diff --git a/packages/@uppy/transloadit/src/index.ts b/packages/@uppy/transloadit/src/index.ts index 305c0aa89..738e490e2 100644 --- a/packages/@uppy/transloadit/src/index.ts +++ b/packages/@uppy/transloadit/src/index.ts @@ -1050,6 +1050,9 @@ export default class Transloadit< export { COMPANION_URL, COMPANION_ALLOWED_HOSTS } +// Re-export type from @transloadit/types so callers can import it from the plugin package. +export type { AssemblyInstructionsInput } from '@transloadit/types' + // Low-level classes for advanced usage (e.g., creating assemblies without file uploads) export { default as Assembly } from './Assembly.js' export { AssemblyError, default as Client } from './Client.js'