open-index/open-npm huggingface dataset:
npm package: @nfcampos/react-native-global-event-emitter
Description: Shared event emitter between native and JS for React Native.
Author: Param Aggarwal
Latest version: 0.2.0

# react-native-global-event-emitter
Shared event emitter between native and JS for React Native.

Uses iOS `NotificationCenter` and RN `DeviceEventEmitter` to provide a seamless global event bus between native and React Native.

## Screenshot

![Screenshot of the example app](https://github.com/paramaggarwal/react-native-global-event-emitter/raw/master/Screenshot.png)

## Usage

```javascript

// listen to event posted to NSNotificationCenter by native code
var eventName = GlobalEventEmitter.UIApplicationNotifications.UIApplicationDidEnterBackgroundNotification;
GlobalEventEmitter.addListener(eventName, (data) => {
    console.log('UIApplicationDidEnterBackgroundNotification');
});

// event available on NSNotificationCenter for native code
var eventName = "UserDidLoginFromJS"
GlobalEventEmitter.emit(eventName, {name: 'John'});

```

## Properties

* `addListener`: Add a listener for an `eventName` and pass a `callback` function.
* `emit`: Emit events to native/JS globally.
* `removeListener`: Remove a listener by passing the `eventName` and the reference to the original `callback` function.
* `removeAllListeners`: Stop listening to all events of a particular `eventName`.

## Installation

Use your preferred method of including the library in your app. 

## Example
Try the included example:

```sh
git clone git@github.com:paramaggarwal/react-native-global-event-emitter.git
npm install
open iOS/RNTGlobalEventEmitter.xcodeproj
```

Then `Cmd+R` to start the React Packager, build and run the project in the simulator.

## Author
Param Aggarwal (paramaggarwal@gmail.com)

## License
MIT License
npm package: @nfcampos/react-native-search-bar
Description: The native search bar for react native.
Latest version: 3.0.8

# react-native-search-bar

<a href="https://www.npmjs.com/package/react-native-search-bar"><img src="https://badge.fury.io/js/react-native-search-bar.svg" alt="" height="18"></a>

The high-quality [iOS native search bar](https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/UIKitUICatalog/UISearchBar.html) for [react native](https://facebook.github.io/react-native/).

<img src="SearchBar.png"/>

:sunny: Battle-tested in [WeatherEh](http://weathereh.hanzhao.name/) app.

## Installation

In your react native project, run `npm install react-native-search-bar --save`

To link this library, please follow the first two steps in the [Linking Libraries (iOS)](http://facebook.github.io/react-native/docs/linking-libraries-ios.html) guide on React Native website. The `.xcodeproj` file is in `node_modules/react-native-search-bar/`. In the end, you should have `RNSearchBar.xcodeproj` in the `Libaries` group on Xcode and `libRNSearchBar.a` in the `Link Binary With Libraries` section inside the `Build Phases` tab of your project target.

## Update

In your react native project, run

```Bash
npm install react-native@latest --save # optional, just for the latest react-native
npm install react-native-search-bar@latest --save
```

## Usage

```javascript
var SearchBar = require('react-native-search-bar');
```

```JSX
<SearchBar
	ref='searchBar'
	placeholder='Search'
	onChangeText={...}
	onSearchButtonPress={...}
	onCancelButtonPress={...}
	/>
```

### Managing the keyboard
* Show - `this.refs.searchBar.focus();`
* Hide
  - `this.refs.searchBar.blur();` - uses the iOS `endEditing:true` method on the underlying `UISearchBar` view.
  - `this.refs.searchBar.unFocus();` - calls `resignFirstResponder` on the `UITextField` used by the `UISearchBar`.
* Examples
 * Show the keyboard when the view loads:
```javascript
componentDidMount() {
  this.refs.searchBar.focus();
}
```
 * Hide the keyboard when the user searches:
```javascript
...
onSearchButtonPress={this.refs.searchBar.unFocus}
...
```

For all supportted properties, please check out `propTypes` in either [SearchBar.coffee](SearchBar.coffee) or [SearchBar.js](SearchBar.js).

There is also an example project in the [SearchBarExample](SearchBarExample) directory.

## Contribution

For now, implemented are only some of the features of [UISearchBar](https://developer.apple.com/library/ios/documentation/UIKit/Reference/UISearchBar_Class/).
Feel free to send a pull request. To get started, you can read the ["Native UI Components (iOS)"](http://facebook.github.io/react-native/docs/native-components-ios.html) guide on React Native website.

Except code contribution, you are welcome to answer question asked in [Issues](https://github.com/umhan35/react-native-search-bar/issues).

## License

MIT
npm package: @nfd/ptl
Description: Promise tools
Author: Nathan
Latest version: 0.1.4

# ptl <sub><sup><sub><sup>/ˈpɛdl/</sup></sub></sup></sub>

Promise tools.

# Install

```sh
npm i @nfd/ptl
```

# Use

```js
const ptl = require('@nfd/ptl')
```

# API

[limit(…)](#limitn-xs) [serial(…)](#serialxs) [dual(…)](#dualpromise) [try(…)](#tryfn) [sleep(…)](#sleepms) [immediate(…)](#immediate) [any(…)](#anypromises) [all(…)](#allpromises) [race(…)](#racepromises)

## limit(n, xs)

Resolves to an array of the results of the items of `xs`, which should be [a promise of] a synchronous or asynchronous iterator or iterable of promises or values, maintaining a maximum of `n` unsettled promises before waiting for some to settle. Rejects with the error if any item rejects.

```js
ptl.limit(3, itt.map(['/array', '/of', '/some', '/paths', ...], async p =>
  JSON.parse(await collect(request(`https://${DOMAIN}${p}`)))))
```

## serial(xs)

Resolves to an array of the results of the items of `xs`, which should be [a promise of] a synchronous or asynchronous iterator or iterable of promises or values, only taking one unsettled promise at a time. Rejects with the error if any item rejects. Equivalent to `limit(1, xs)`

## dual(promise)

Resolves to the error if `promise` rejects; rejects with the result if `promise` resolves.

## try(fn)

Resolves to the result of `fn()`; rejects if `fn()` throws a synchronous error.

## sleep(ms)

Resolves to `undefined` after `ms` milliseconds.

## immediate()

Resolves after a `setImmediate` cycle.

## any(promises)

Resolves to the result of the first of `promises` to resolve, or rejects with an array of all errors. The [`dual`](#dualpromise) of [`all`](#allpromises)

## all(promises)

Alias for `Promise.all`, but accepts a promise of an iterable.

## race(promises)

Alias for `Promise.race`, but accepts a promise of an iterable.
npm package: @nfdi4plants/arc-web-view
Description: An Annotated Research Context web viewer in the style of GitHub's Primer ProductUI.
Author: Kevin Frey
Latest version: 1.2.0

# @nfdi4plants/arc-web-view 

![NPM Version](https://img.shields.io/npm/v/%40nfdi4plants%2Farc-web-view)
[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.17937200.svg)](https://doi.org/10.5281/zenodo.17937200)

An Annotated Research Context web viewer in the style of GitHub's Primer ProductUI.

Displays basic information about an ARC ([Annotated Research Context](https://arc-rdm.org/)) and allows to navigate through its structure.

👀 check out the [demo](https://nfdi4plants.github.io/ARCWebView/)

# Install

```bash
npm i @nfdi4plants/arc-web-view
```

```tsx
import { StrictMode } from 'react'
import { createRoot } from 'react-dom/client'
import { BaseStyles, ThemeProvider } from '@primer/react'
import '@primer/primitives/dist/css/functional/themes/light.css'
import "@primer/css/dist/primer.css";
import { WebViewer } from '@nfdi4plants/arc-web-view'


createRoot(document.getElementById('root')!).render(
  <StrictMode>
    <ThemeProvider>
      <BaseStyles>
        <WebViewer /> // will load with empty view
      </BaseStyles>
    </ThemeProvider>
  </StrictMode>,
)

```

# Development

This component uses GitHubs Primer ProductUI.

Find more information below:

- Components: https://primer.style/product/components/
- Responsive: https://github.com/primer/css/blob/b5e009778ec01b6e983cba6cbf89cebfdc5a4124/docs/content/support/breakpoints.md#media-query-mixins

## Requirements

- installed NodeJS (v20 or higher)

## Run locally

1. Install dependencies `npm install` (once per setup)
2. Start development server `npm start`

## Publish components

1. Apply changes
2. Change version in `package.json`
3. Build component library `npm run build:lib`
4. Publish component library `npm publish --access public`

## Deploy to GitHub Pages

1. Deploy using `gh-pages` npm library: `npm run deploy`

## Build WebApp 

1. Build web app using `npm run build`
npm package: @nfdi4plants/exceljs
Description: Excel Workbook Manager - Read and Write xlsx and csv Files.
Author: Guyon Roche
Latest version: 0.4.0

# ExcelJS

[![Build status](https://github.com/exceljs/exceljs/workflows/ExcelJS/badge.svg)](https://github.com/exceljs/exceljs/actions?query=workflow%3AExcelJS)

Based on [exceljs](https://github.com/exceljs/exceljs) v4.3.0.

Read, manipulate and write spreadsheet data and styles to XLSX and JSON.

Reverse engineered from Excel spreadsheet files as a project.

# Installation

```shell
npm install @nfdi4plants/exceljs
```


## Changes since fork

### 0.0.4

- Fix reader assuming existence of `appProperties` section which is not existant in files written by ClosedXML and let it ignore unknown `lastModifiedBy` field.
    - In `lib/xlsx/xlsx.js`
    - In `lib/xlsx/xform/core/core-xform.js`
    - [Commit](https://github.com/nfdi4plants/exceljs/commit/b4dd10a12178d5796ac75256780f5a4bbb06cf49)
    - See https://github.com/fslaborg/FsSpreadsheet/issues/77

### 0.0.3

- Fix wrong default for `headerRow`. Excel itself does ignore this attribute if true, so read in should be set to `true` if `headerRow === undefined`.
    - In `lib/xlsx/xform/table/table-xform.js`
    - [Commit](https://github.com/nfdi4plants/exceljs/commit/a26b318d89f90e29b1240336fcd9ab2573bd44d2)
- Fix file read in, when file was written with ClosedXml/OpenXml
    - In `lib/xlsx/xform/base-xform.js`
    - [Commit](https://github.com/nfdi4plants/exceljs/commit/a4eeea2d30e629dc0fe4868cc73133e144c21b50)
- Fix table read in, when file was not written with excel.js
    - In `lib/xlsx/xform/core/relationship-xform.js`
    - [Commit](https://github.com/nfdi4plants/exceljs/commit/8712c24c1e65ef2e5a482f14d36ecfac55e310f0)
npm package: @nfdi4plants/swate-components
Description: Customizable React components for ontology annotation, based on Swate and the ARC.
Author: Kevin Frey
Latest version: 1.0.6

# Components

## Local Dev

### Tests

`npm test`

### Playground

`npm start`

### Run Storybook

`npm run storybook`

### Build Storybook

`npm run build:storybook`

### Build Npm Package

`npm run build`

### Build .NET Package

`npm run build:net`

### Release

#### .NET

1. Update version in `./src/Components.fsproj`
2. `npm run build:net` (creates tailwind style css and packs nuget package)
3. Upload nuget package from `./src/bin/Releases`

#### NPM

0. Release normally and copy `<new_version>` from console output.
1. `npm version <new_version> --no-git-tag-version`
2. `npm run build` (transpiles with fable, creates tsc types, and bundles with rollup)
3. (Due to [#701](https://github.com/nfdi4plants/Swate/issues/701)) replace `@layer base` with `@layer swt-base` in `dist/swate-components.css`
4. `npm publish --access public --tag next` (Use `--tag next` for prerelease)

#### Publish detailed

1. go to main branch
2. ensure latest commit is locally pulled
3. Open powershell / cmd in swate root
4. ./build.cmd release pre
5. Wait for version editting. Write beta.XX where XX is the current beta version
6. Wait for tests
7. Confirm force push to nightly
8. Wait a few minutes and check if gh-actions for release finished successfully: https://github.com/nfdi4plants/Swate/actions
9. When the release is finished go to the main page of swate (https://github.com/nfdi4plants/Swate), and click on Releases on the left side (https://github.com/nfdi4plants/Swate/releases)
10. Select the tag of the new release and click "Generate release notes", then click on "Publish release"
npm package: @nfdi4plants/web-components
Description: Webcomponent test-component following open-wc recommendations
Author: DataPLANT
Latest version: 1.2.3

# nfdi4plants/web-components

## NPM

You can find the latest *NPM* package version [here](https://www.npmjs.com/package/@nfdi4plants/web-components).

Check out the in depth documentation [here](https://nfdi4plants.github.io/web-components-docs/) :books:.

## List of projects using these web-components

- [nfdi-homepage](https://github.com/nfdi4plants/nfdi4plants.github.io)
- [nfdi-knowledgebase](https://github.com/nfdi4plants/nfdi4plants.knowledgebase)
- [nfdi-helpdesk](https://github.com/Freymaurer/nfdi-helpdesk)
- [web-components-docs](https://github.com/nfdi4plants/web-components-docs)
- dataplant-registration-frontend, found at bwcloud Gitlab Freiburg
- keycloak theme for gitlab login, found at bwcloud Gitlab Freiburg 

Update webcomponents with ```npm install @nfdi4plants/web-components@latest``` or according to project README.md.


## Installation

For standard projects which already contain node module dependency bundling you can **install** and **update** the webcomponents with:

```bash
npm install @nfdi4plants/web-components@latest
```

## Local development

### Set Up

Once `npm install`.

### Run

Run `npm run dev` in the root folder and you can see all changes in http://localhost:3000/.

### Publish

1. Increase version in `package.json`
2. `npm run build`
3. Test: `npm publish --dry-run`
4. Publish: `npm publish`
npm package: @nfdoom/ionic-angular
Description: Angular specific wrappers for @nfdoom/ionic-core
Latest version: 6.7.5

# @ionic/angular

Ionic Angular specific building blocks on top of [@nfdoom/ionic-core](https://www.npmjs.com/package/@nfdoom/ionic-core) components.


## Related

* [Ionic Core Components](https://www.npmjs.com/package/@nfdoom/ionic-core)
* [Ionic Documentation](https://ionicframework.com/docs/)
* [Ionic Forum](https://forum.ionicframework.com/)
* [Ionicons](http://ionicons.com/)
* [Stencil](https://stenciljs.com/)
* [Stencil Worldwide Slack](https://stencil-worldwide.herokuapp.com/)
* [Capacitor](https://capacitor.ionicframework.com/)


## License

* [MIT](https://raw.githubusercontent.com/ionic-team/ionic/main/LICENSE)

## Testing ng-add in ionic

1. Pull the latest from `main`
2. Build ionic/angular: `npm run build`
3. Run `npm link` from `ionic/angular/dist` directory
4. Create a blank angular project

```
ng new add-test
// Say yes to including the router, we need it
cd add-test
```

5. To run schematics locally, we need the schematics-cli (once published, this will not be needed)

```
npm install @angular-devkit/schematics-cli
```

6. Link `@ionic/angular`

```
npm link @ionic/angular
```


7. Run the local copy of the ng-add schematic

```
$ npx schematics @ionic/angular:ng-add
```


You'll now be able to add ionic components to a vanilla Angular app setup.