mirror of
https://github.com/baptisteArno/typebot.io.git
synced 2026-07-21 21:13:45 +08:00
## What changed - add an optional Capture setting for image-only File Upload blocks with None, Back camera, and Front camera choices - persist the standard `environment` and `user` values and apply them through the runtime file input `capture` attribute - preserve existing behavior when capture is unset, including the legacy Android accept workaround - normalize extension-based image allowlists for capture while keeping server-side validation fail-closed - update schemas, generated OpenAPI specs, embed package versions, and focused tests - install Playwright Chromium during Codex worktree setup and ignore local Revue session state ## Validation - pre-commit affected format, lint, link, test, and OpenAPI targets: passed - affected tests across 14 projects under `.env.dev.example`: passed - typecheck for builder, viewer, JS embed, File Input, input schemas, lib, and bot engine: passed - targeted Viewer Playwright file-upload capture test: passed (2 tests) - targeted schema, allowlist, runtime helper, and upload validation suites: passed ## Browser behavior The standard capture attribute is a browser hint. Supported mobile browsers may open the selected camera directly; desktop and unsupported browsers may continue to show a regular file chooser.
17 lines
612 B
TypeScript
17 lines
612 B
TypeScript
import { $ } from "bun";
|
|
|
|
const currentWorktreeRoot = (
|
|
await $`git rev-parse --show-toplevel`.text()
|
|
).trim();
|
|
const gitCommonDir = (
|
|
await $`git rev-parse --path-format=absolute --git-common-dir`.text()
|
|
).trim();
|
|
const mainWorktreeRoot = (
|
|
await $`cd ${gitCommonDir} && cd .. && pwd`.text()
|
|
).trim();
|
|
|
|
await $`cp ${mainWorktreeRoot}/.env ${currentWorktreeRoot}/.env`;
|
|
await $`cp -R ${mainWorktreeRoot}/apps/viewer/src/test/.auth ${currentWorktreeRoot}/apps/viewer/src/test/.auth`;
|
|
await $`cd ${currentWorktreeRoot} && bun install`;
|
|
await $`cd ${currentWorktreeRoot} && bunx playwright install chromium`;
|