mirror of
https://github.com/appium/appium.git
synced 2026-10-17 04:41:24 +08:00
d05423e77d
* refactor(base-driver): share standard timeout value validation Refs #22966 (F21). * fix(base-driver): apply initial session timeouts Refs #22966 (F21). Initialize local timeout state before driver backend startup. * test(base-driver): cover initial session timeout state Refs #22966 (F21). Covers nulls, bounds, invalid inputs, readback, defaults, and backend setter overrides. * refactor(types): export the existing Timeouts type * refactor(base-driver): reuse the shared Timeouts type Use Partial<Timeouts> for initial session timeout state. Validation: TypeScript build, base-driver type tests, and targeted lint/format checks passed. * refactor(base-driver): share timeout mapping across initialization loops * refactor(base-driver): normalize reset options in a loop * refactor(base-driver): extract session preparation helpers * fix(base-driver): identify timeout type in validation errors * fix(base-driver): show invalid timeout values in errors * refactor(base-driver): simplify timeout update mapping * refactor(base-driver): centralize timeout metadata in timeout module Share standard timeout names, local fields, and setters with session initialization. Reuse keyof Timeouts for validation. Refs #22966. * refactor(base-driver): reuse timeout metadata for initial session state Remove the duplicate timeout mapping from driver.ts. Preserve direct field initialization before backend startup. Validation: 578 base-driver tests, TypeScript build, type tests, and targeted lint/format checks passed. * fix(types): allow partial initial timeout capabilities
@appium/types
A collection of TypeScript type declarations used across various Appium packages.
Warning
This is a work-in-progress; expect breaking changes!
Install
npm install @appium/types -D
Note
- The sources are
.tsfiles, not.d.tsfiles. This allows other packages in the root TypeScript "project" to define a dependency upon this one, and enables incremental builds an "watch" mode.- If there is a way to switch to
.d.tsfiles and configure this package to work in our "project" context without needing to actually "emit" anything, then we should do that instead. Help accepted!lib/appium-config.tsis generated by this package from@appium/schema, but is under version control to avoid chicken-or-egg build problems.
License
Apache-2.0