open-index/open-npm huggingface dataset:
npm package: @garbage-makter/your-scope-demo-vue3-component-lib
Description: 这是一个基于 Vue 3 + TypeScript 的组件库示例，支持自动生成 `.d.ts` 类型声明文件。
Latest version: 1.0.2

# Vue 3 Component Library with DTS

这是一个基于 Vue 3 + TypeScript 的组件库示例，支持自动生成 `.d.ts` 类型声明文件。

## 使用

- 安装依赖：`pnpm install`
- 构建库：`pnpm build`
- 打包后 `dist/` 目录包含 JS 和类型声明文件

## 组件

- MyButton: 带 type 和 size 属性的基础按钮组件
npm package: @garbanzo/cli
Description: The Garbanzo CLI
Author: Matt Hamlin
Latest version: 0.1.2

# `@garbanzo/cli`

Garbanzo CLI

## Getting Started:

```bash
bun add @garbanzo/cli -D
```

### Config (`garbanzo.config.mjs`)

To configure Garbanzo, you can use a `garbanzo.config.mjs`, currently this _must_ be a `.mjs` file using that exact naming convention.

```mjs
import {defineConfig} from '@garbanzo/cli';

export default defineConfig({
  // config options here
});
```

## Contributing:

### Building:

This library uses [`swc`](https://swc.rs/) and [`TypeScript`](https://www.typescriptlang.org/docs/) to build the source code and generate types.

To build the library, run `bun run build` from the root, or from this workspace!

### Code Quality:

#### Type Checking:

This library uses TypeScript to perform type checks, run `bun run type-check` from the root or from this workspace!

#### Linting

This library uses [BiomeJS](https://biomejs.dev/) for linting, run `bun run lint` from the root or from this workspace!

#### Tests

This library uses Bun for running unit tests, run `bun run test` from the root or from this workspace!

### Publishing:

To publish the library, run `bun run pub` from the workspace root. This will prompt you to login to npm and publish the package.

> Note: In the future, we will automate this process using GitHub Actions. And also add in tooling to manage releases / changelogs!
npm package: @garbarino/gb-jscommons
Description: A package of common functions used in our JavaScript applications.
Latest version: 2.0.0

# gb-jscommons
Módulos comunes a ser usados en las aplicaciones JS / NODE.


## Instalación
`npm install @garbarino/gb-jscommons --save`


## Uso
### ES6 modules
Import and be happy

#### Push notifications

```js
import {isCompatible, subscribeUserToPush, sendSubscriptionToBackEnd} from '@garbarino/gb-jscommons/dist/push-notifications';
```

```js
if (isCompatible()) {
	subscribeUserToPush().then(
		(subscription) => {
			sendSubscriptionToBackEnd(subscription);
		}
	);
}
```

### ES5 👴🏻
Linkear los archivos de `/dist/es5`
 - `common.js`
 - Cada una de las librerías que se quiera usar. Ej: `push-notifications.js`

Usar la variable global `gbJsCommons`.

#### Push notifications

```js
gbJsCommons["push-notifications"].subscribeUserToPush()
	.then(function(subscription) {
		gbJsCommons["push-notifications"].sendSubscriptionToBackEnd(subscription)
			.then(function(response) {
				// handle success
			});
	})
	.catch(function(error){
		// handle error
	});
```


## Módulos

### Push notifications

#### isCompatible
Devuelve `true` si el dispositivo tiene soporte. `false` si no.

#### canAskForPermission
Devuelve `true` si el dispositivo tiene soporte y el usuario no denegó el permiso.

#### subscribeUserToPush
Chequea que el dispositivo sea compatible y devuelve una promesa que resuelve con la [pushSubscription](https://developer.mozilla.org/es/docs/Web/API/PushSubscription)

#### getSubscription
Devuelve una promesa que resuelve con la suscripción a las push o `null` si no está suscripto.
Útil para no volver a ofrecer la suscripción si ya está registrado.

#### sendSubscriptionToBackEnd
Recibe la subscription del paso anterior y la envía al servidor. Otra promesa que resuelve o dispara un error según el resultado de la pegada.



## Cómo publicar una nueva versión
1. Login en npm (cuenta con acceso a la organización).
1. `npm run build-prod`.
1. Pushear cambios.
1. `npm version <major|minor|patch>`.
1. Pushear update de versión.
1. `npm publish`.