Security News
Research
Data Theft Repackaged: A Case Study in Malicious Wrapper Packages on npm
The Socket Research Team breaks down a malicious wrapper package that uses obfuscation to harvest credentials and exfiltrate sensitive data.
@appium/typedoc-plugin-appium
Advanced tools
@appium/typedoc-plugin-appium
TypeDoc plugin for Appium & its extensions
This package leverages TypeDoc to generate command documentation (HTTP endpoints, payload information, etc.) for Appium v2+ drivers and plugins.
If you are an Appium extension author and just want to build HTML docs, don't install this directly--instead, install @appium/docutils
, which is a higher-level package that configures everything for you.
If you only want to build markdown docs for your extension, then you can use this package directly.
npm
v8+ is required to install this package.
npm install @appium/typedoc-plugin-appium --save-dev
The above command installs the plugin as well as all necessary peer dependencies. See package.json
for the full list of dependencies.
TypeDoc is configured via a typedoc.json
or typedoc.js
file (read the docs for more information).
An Appium extension author wishing to generate markdown documentation for their extension will need to create a typedoc.json
. At minimum, it should contain:
{
"entryPointStrategy": "packages",
"entryPoints": ["."],
"name": "<name of extension>",
"theme": "appium",
"out": "<path to output directory>"
}
Once this file is created, you can run typedoc
to generate the documentation, and it will be output into the out
directory as configured above.
This plugin supports all of the options from typedoc-plugin-markdown, as well as the following:
outputModules
boolean
- Output module, class, interface, and other type information (the usual TypeDoc output) in addition to command documentation. This is needed for full documentation of types. Default value: true
outputBuiltinCommands
boolean
- Outputs all commands and types from Appium builtins--not just your extension. This is intended to be used by Appium itself. Default value: false
packageTitles
Array<{name: string, title: string}>
: An array of objects containing module name name
and display name title
. By default, the module name is used for the title; use this to override that behavior. Default value: undefined
commandsDir
string
- The name of the "commands" directory relative to the TypeDoc output directory (out
). Default value: commands
forceBreadcrumbs
boolean
- Forces breadcrumbs to be output; overrides hideBreadcrumbs
from typedoc-plugin-markdown
. Default value: false
This packages uses snapshot tests to assert the generated markdown is correct. If you have made changes which affect the plugin's output, you will need to update the snapshots.
To update the snapshots, execute:
UPDATE_SNAPSHOT=1 npm run test:e2e
This will (likely) modify the snapshots in your working copy, so you will then need to commit them.
Copyright © 2022 OpenJS Foundation. Licensed Apache-2.0
FAQs
TypeDoc plugin for Appium & its extensions
The npm package @appium/typedoc-plugin-appium receives a total of 12,225 weekly downloads. As such, @appium/typedoc-plugin-appium popularity was classified as popular.
We found that @appium/typedoc-plugin-appium demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 7 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Research
The Socket Research Team breaks down a malicious wrapper package that uses obfuscation to harvest credentials and exfiltrate sensitive data.
Research
Security News
Attackers used a malicious npm package typosquatting a popular ESLint plugin to steal sensitive data, execute commands, and exploit developer systems.
Security News
The Ultralytics' PyPI Package was compromised four times in one weekend through GitHub Actions cache poisoning and failure to rotate previously compromised API tokens.