12 Commits

Author SHA1 Message Date
Mykola Mokhnach 08d50889c2 chore: Migrate from prettier to oxfmt (#22450) 2026-07-01 08:54:13 +02:00
Mykola Mokhnach 2939478b47 chore: Slim some dependencies (#22353) 2026-06-05 20:32:20 +02:00
Mykola Mokhnach 1a46d7d61e chore: Apply format (#22350) 2026-06-05 08:08:54 +02:00
Edgars Eglītis ce09eb2e7d chore: fix new linting errors in ESLint 10 (#22230)
* fix no-useless-assignment errors

* fix preserve-caught-error errors

* address comments

* address comments
2026-05-04 20:44:23 +03:00
Mykola Mokhnach d43f749fc7 feat(schema): Migrate to typescript (#21900) 2026-01-28 21:32:02 +01:00
Kazuaki Matsuo 5e28714442 fix: apply npm run lint:fix (#21867) 2026-01-18 09:04:01 -08:00
Edgars Eglītis e9a6e5425c fix(scripts): properly import log-symbols in scripts (#21819) 2025-12-15 17:17:24 +02:00
Edgars Eglītis 053a88bac1 chore(deps): update log-symbols to v7 (#21816) 2025-12-15 14:13:29 +02:00
Mykola Mokhnach 65658ccbdd fix: Reduce linter warnings (#20860) 2024-12-28 09:30:05 +01:00
Christopher Hiller 943dce5eec fix(schema): move output files due to tsc's confusion
It seemed to think I wanted to overwrite the root `index.js` file, and I don't know why. It doesn't do that anymore.
2023-02-15 16:19:30 -08:00
Christopher Hiller 133db5355f chore: reformat everything
this reformats all `.js`, `.ts`, and `.d.ts` files.
2022-05-09 19:09:50 -07:00
Christopher Hiller f33b87bbf9 chore(appium,types,schema): create @appium/schema
`@appium/schema` is a package which was extracted from `appium`.  It _only_ contains the schema.  The impetus here was to avoid cyclical dependencies, since `appium` depends on `@appium/types`, and `@appium/types` depends on the schema.  This package breaks the cycle.

The `scripts/generate-schema-json.js` (which converts the compiled JS schema file into JSON) has moved into this package, and the generated JSON file is now under version control.  This is because the `generate-schema-types.js` script (previously `generate-schema-declarations`) depends on it, and `@appium/types` depends on the generated types.  The generated types are _also_ under version control.  I do not expect the schema to change often, so I believe the tradeoff to be worth it.

## @appium/schema

`lib/appium-config-schema.js` is the "single source of truth" for the schema.

## appium

- Removed schema source
- Removed namespaces from internal types because they suck (see change to `types/index.d.ts`)
- Removed unused `continuation-local-storage`
- Add dep for `@appium/schema`
- Added a TS project dependency on `@appium/schema`

## @appium/types

- The "sources" have moved from `src` to `lib` for consistency.
- `lib/appium-config.ts` (the generated types) are now under version control.
- `lib/schema/` has been removed (it previously held the JSON schema artifact)
- `scripts/generate-schema-declarations.js` becomes `scripts/generate-schema-types.js`
- Updated scripts in `package.json`
- Added dep for `@appium/schema`
- Added a TS project dependency on `@appium/schema`

## Other

- Reorganize root `tsconfig.json`; add `schema` reference; remove unused `noEmit: true`
- Sort root `package.json`
- Remove schema JSON and schema declarations scripts, since those are now both handled in their respective packages
- Remove `lint-staged` config for schema file, since it didn't work right anyway (still need to do something about this, but probably doesn't need to be in a precommit hook)
- Remove stuff from `.gitignore`
2022-04-07 14:05:41 -07:00