0.470 (29 Jul 2026)

29 July, 2026

This release changes how the image capture input handles captions. A single caption option replaces the old requireCaption flag.

Image capture caption modes

The image capture input on a flow UI page now takes a caption option that controls whether a caption is disabled, optional, or required:

await ctx.ui.page({
  title: "Site inspection",
  content: [
    ctx.ui.inputs.imageCapture("photo", {
      label: "Site photo",
      caption: "required",
    }),
  ],
});

caption accepts one of three modes:

  • "disabled" turns captions off, so users only capture an image.
  • "optional" lets users add a caption but does not require one. This is the default.
  • "required" rejects a submission whose caption is empty.

This replaces the previous requireCaption boolean. If you were setting requireCaption: true, switch to caption: "required". If you were setting requireCaption: false, or leaving it off, captions are optional by default, which matches the old behaviour.

requireCaption is no longer accepted and now fails type checking, so this is a breaking change. Update any flow that sets it before upgrading.

See Image capture input for the full reference.

For any issues or feedback, please contact us at help@keel.so.

Thank you for using Keel!