open-index/open-npm huggingface dataset:
npm package: @herdwatch/cordova-plugin-ios-preferences
Description: Cordova plugin to read and store iOS application preferences
Latest version: 1.0.6

# Application Preferences plugin for Cordova iOS #

Use this Cordova plugin to read and store iOS application preferences.

## Getting started

Once you're familiar with that process, you may install this plugin with the [Cordova CLI](https://cordova.apache.org/docs/en/dev/guide/cli/index.html):


# [Settings.bundle](src/ios/Settings.bundle)

The preference must exist in a settings bundle and Root.plist in your project.
1. Install dependency

```shell
    npm i @herdwatch/cordova-plugin-ios-preferences
```

1. Copy example `resources/ios/Settings.bundle`

```shell
    cp -R  node_modules/@herdwatch/cordova-plugin-ios-preferences/src/ios/Settings.bundle resources/ios
```

1. Update the Settings Bundle  `resources/ios/Settings.bundle/Root.plist`
https://developer.apple.com/library/archive/documentation/Cocoa/Conceptual/UserDefaults/Preferences/Preferences.html

1. Install plugin 

```shell
cordova plugin add @herdwatch-apps/cordova-plugin-ios-preferences

ionic cordova plugin add @herdwatch-apps/cordova-plugin-ios-preferences

```

## Using the plugin

The plugin creates the object `applicationPreferences` with two methods `get(key, success, fail)` and 
`set(key, value, success, fail)`. `key` is the name of the setting you want, `value` is the value of the setting you want to set.

`success` and `fail` are callback functions. Success is passed the settings value as a string.

A full get example could be:
```js
    applicationPreferences.get('preferencekey', function(result) {
      alert("We got a setting: " + result);
    }, 
    function(error) {
      alert("Failed to retrieve a setting: " + error);
    });
    // Or using await with promises
    await applicationPreferences.withPromises.get('preferencekey');
```

A full set example could be:
```js
    applicationPreferences.set('preferencekey', 'preferencevalue', function() {
      alert("It is saved");
    }, 
    function(error) {
      alert("Failed to retrieve a setting: " + error);
    });
    // Or using await with promises
    await applicationPreferences.withPromises.set('preferencekey', 'preferencevalue');
```
npm package: @herdwatch/cordova-plugin-screenshot
Description: screenshot PhoneGap Plugin for Android
Author: Hongbo LU
Latest version: 0.1.8

cordova-screenshot
==================

[![NPM version](http://img.shields.io/npm/v/@herdwatch/cordova-plugin-screenshot.svg?style=flat)](https://www.npmjs.com/package/@herdwatch/cordova-plugin-screenshot)


The Screenshot plugin allows your application to take screenshots of the current screen and save them into the phone.

## how to install

install it via cordova cli

```
ioinic cordova plugin add @herdwatch/cordova-plugin-screenshot
cordova plugin add @herdwatch/cordova-plugin-screenshot
cordova plugin add https://github.com/herdwatch-apps/cordova-plugin-screenshot.git
```

notice:
in iOS, only jpg format is supported
in Android, the default WebView is supported

## Ionic

```shell
  npm i @awesome-cordova-plugins/screenshot
```

## usage


```js
navigator.screenshot.save(function(error,res){
  if(error){
    console.error(error);
  }else{
    console.log('ok',res.filePath);
  }
});
```

take screenshot with jpg and custom quality
```js
navigator.screenshot.save(function(error,res){
  if(error){
    console.error(error);
  }else{
    console.log('ok',res.filePath);
  }
},'jpg',50);
```

define a filename
```js
navigator.screenshot.save(function(error,res){
  if(error){
    console.error(error);
  }else{
    console.log('ok',res.filePath); //should be path/to/myScreenshot.jpg
  }
},'jpg',50,'myScreenShot');
```

screenshot files are stored in /sdcard/Pictures for android.

take screenshot and get it as Data URI
```js
navigator.screenshot.URI(function(error,res){
  if(error){
    console.error(error);
  }else{
    html = '<img style="width:50%;" src="'+res.URI+'">';
    document.body.innerHTML = html;
  }
},50);
```

## usage in AngularJS

```js
.service('$cordovaScreenshot', ['$q', function ($q){
	return {
		capture: function (filename, extension, quality){
			extension = extension || 'jpg';
			quality = quality || '100';

			var defer = $q.defer();
			
			navigator.screenshot.save(function (error, res){
				if (error) {
					console.error(error);
					defer.reject(error);
				} else {
					console.log('screenshot saved in: ', res.filePath);
					defer.resolve(res.filePath);
				}
			}, extension, quality, filename);
			
			return defer.promise;
		}
	};
}])
```

## Known Issue



License
=========
this repo uses the MIT license
npm package: @herdwatch/cy-verify-downloads
Description: Cypress custom command to wait and verify that file has been downloaded
Author: Yevhen Laichenkov
Latest version: 0.0.6

# cy-verify-downloads ![tests](https://github.com/elaichenkov/cy-verify-downloads/actions/workflows/test.yml/badge.svg) [![Total npm downloads](https://img.shields.io/npm/dt/cy-verify-downloads.svg)](https://www.npmjs.com/package/cy-verify-downloads)

This is a Cypress custom command to wait and to verify that a file has been successfully downloaded.

## Installation

```shell
npm i -D @herdwatch/cy-verify-downloads
```

## Usage

cy-verify-downloads extends Cypress' cy command.

So, you need to add this line to your project's `cypress/support/commands.js`:

```javascript
require('@herdwatch/cy-verify-downloads');
```

OR

`cypress/support/commands.ts`:

```typescript
import '@herdwatch/cy-verify-downloads';
```


And [extend module.exports](https://github.com/cypress-io/cypress/issues/6492#issuecomment-623921258) the following lines to your project's `cypress/plugins/index.js`:


```javascript
module.exports = (on, config) => {
    require('@herdwatch/cy-verify-downloads/plugin')(on, config);
}
```
Then, in your test, you can use it like this:

```javascript
cy.verifyDownload('picture.png');

// or increase timeout
cy.verifyDownload('archive.zip', { timeout: 25000 });

// or increase timeout and interval pooling
cy.verifyDownload('archive.zip', { timeout: 25000, interval: 600 });

// or use with another commands
cy.verifyPdfDownload('test.pdf')

Cypress.Commands.add('verifyPdfDownload',
  (fileName, options) => {
    const exportPdfButton = cy.get('[data-cy="pdf"]');
    exportPdfButton.should('exist');
    exportPdfButton.click();
    cy.verifyDownload(fileName, options);
  }
);

```

## Types

![Autocompletion](./assets/autocompletion.gif?raw=true)

To enable IntelliSense information and autocomplete you have to include types in the `tsconfig.json` file:
```json
{
  "compilerOptions": {
    "types": ["cypress", "@herdwatch/cy-verify-downloads"]
  }
}
```

## Author
Yevhen Laichenkov <elaichenkov@gmail.com>

## License
[MIT](LICENSE)
npm package: @herdwatch/ionic-cli
Description: A tool for creating and developing Ionic Framework mobile apps.
Author: Ionic Team
Latest version: 8.0.0

# Ionic CLI

The Ionic command line interface (CLI) is your go-to tool for developing
[Ionic][ionic-homepage] apps.

**Documentation**: [https://ionicframework.com/docs/cli/][ionic-cli-docs]

**Github Project**: [https://github.com/ionic-team/ionic-cli](https://github.com/ionic-team/ionic-cli)

[ionic-homepage]: https://ionicframework.com
[ionic-cli-docs]: https://ionicframework.com/docs/cli/
npm package: @herdwatch/sentry-cordova
Description: Official Sentry SDK for Cordova
Latest version: 1.6.2

<p align="center">
  <a href="https://sentry.io/?utm_source=github&utm_medium=logo" target="_blank">
      <img src="https://sentry-brand.storage.googleapis.com/sentry-wordmark-dark-280x84.png" alt="Sentry" width="280" height="84">
  </a>
</p>

<h1>Official Sentry SDK for Cordova (Ionic, ...)</h1>

_Bad software is everywhere, and we're tired of it. Sentry is on a mission to help developers write better software faster, so we can get back to enjoying technology. If you want to join us [<kbd>**Check out our open positions**</kbd>](https://sentry.io/careers/)_

[![build](https://github.com/getsentry/sentry-cordova/workflows/Build%20&%20Test/badge.svg?branch=main)](https://github.com/getsentry/sentry-cordova/actions?query=branch%3Amain)
[![codecov](https://codecov.io/gh/getsentry/sentry-cordova/branch/master/graph/badge.svg)](https://codecov.io/gh/getsentry/sentry-cordova)
[![npm version](https://img.shields.io/npm/v/sentry-cordova.svg)](https://www.npmjs.com/package/sentry-cordova)
[![npm dm](https://img.shields.io/npm/dm/sentry-cordova.svg)](https://www.npmjs.com/package/sentry-cordova)
[![npm dt](https://img.shields.io/npm/dt/sentry-cordova.svg)](https://www.npmjs.com/package/sentry-cordova)

**This is a beta release**

## Usage

### Cordova in `index.html` `onDeviceReady` function:

```javascript
onDeviceReady: function() {
    ...
    var Sentry = cordova.require("sentry-cordova.Sentry");
    Sentry.init({ dsn: '___PUBLIC_DSN___' });
    ...
}
```

### Ionic in your `app.module.ts`:

```javascript
...
import * as Sentry from 'sentry-cordova';
...
Sentry.init({ dsn: '___PUBLIC_DSN___' });
```

## Documentation

* [Installation](https://docs.sentry.io/platforms/javascript/guides/cordova/#install)
* [Using Sentry with Ionic](https://docs.sentry.io/platforms/javascript/guides/cordova/ionic/)
* [Documentation](https://docs.sentry.io/platforms/javascript/guides/cordova/)

> [!WARNING]
> Example and sample code in is unmaintained. Sample code may contain security vulnerabilities, should never be used in production, and exists only for illustrative purposes.
npm package: @herdwatch/ts-migrate-server
Description: A package that contains the main migration runner and spawns a TSServer process
Latest version: 0.1.39

# ts-migrate-server

`ts-migrate-server` is a package that contains the main migration runner.
`ts-migrate-server` is designed around Airbnb projects. Use at your own risk.

# Install

Install _ts-migrate-server_ using [npm](https://www.npmjs.com):

`npm install --save-dev ts-migrate-server`

Or [yarn](https://yarnpkg.com):

`yarn add --dev ts-migrate-server`

# Usage

```typescript
import path from 'path';
import { migrate, MigrateConfig } from 'ts-migrate-server';

// get input files folder
const inputDir = path.resolve(__dirname, 'input');

// create new migration config. You can add your plugins there
const config = new MigrateConfig();

// run migration
const exitCode = await migrate({ rootDir: inputDir, config });

process.exit(exitCode);
```

# FAQ

> How can I use _ts-migrate-server_?

You can take a look at [basic usage example](https://github.com/airbnb/ts-migrate/blob/master/packages/ts-migrate-example/src/index.ts#L2).
Another resource would be [source code](https://github.com/airbnb/ts-migrate/blob/master/packages/ts-migrate/cli.ts) of the _ts-migrate_ cli.

> Why not just use codemods?

You actually can use [codemods](https://github.com/airbnb/ts-migrate/blob/master/packages/ts-migrate-plugins/src/plugins/declare-missing-class-properties.ts) in your plugins!
_ts-migrate-server_ provides a more standardized API around TypeScript compiler usage and allows us to use the benefits of the TypeScript APIs without complicated setup.

> I have an issue with a specific plugin, what should I do?

Please file an [issue here](https://github.com/airbnb/ts-migrate/issues/new).

# Contributing

See the [Contributors Guide](https://github.com/airbnb/ts-migrate/blob/master/CONTRIBUTING.md).