open-index/open-npm huggingface dataset:
npm package: @msandesolutech/solu-platform-react-component-library
Description: TODO: Give a short introduction of your project. Let this section explain the objectives or the motivation behind this project.
Author: Solü Technology Partners
Latest version: 0.0.11

# Introduction

TODO: Give a short introduction of your project. Let this section explain the objectives or the motivation behind this project.

# Getting Started

TODO: Guide users through getting your code up and running on their own system. In this section you can talk about:

1. Installation process
2. Software dependencies
3. Latest releases
4. API references

# Build and Test

TODO: Describe and show how to build your code and run the tests.

# Contribute

TODO: Explain how other users and developers can contribute to make your code better.

If you want to learn more about creating good readme files then refer the following [guidelines](https://docs.microsoft.com/en-us/azure/devops/repos/git/create-a-readme?view=azure-devops). You can also seek inspiration from the below readme files:

- [ASP.NET Core](https://github.com/aspnet/Home)
- [Visual Studio Code](https://github.com/Microsoft/vscode)
- [Chakra Core](https://github.com/Microsoft/ChakraCore)
npm package: @msanjeevi03/shared-lib
Description: This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 18.2.0.
Latest version: 0.0.1

# SharedLib

This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 18.2.0.

## Code scaffolding

Run `ng generate component component-name --project shared-lib` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module --project shared-lib`.
> Note: Don't forget to add `--project shared-lib` or else it will be added to the default project in your `angular.json` file. 

## Build

Run `ng build shared-lib` to build the project. The build artifacts will be stored in the `dist/` directory.

## Publishing

After building your library with `ng build shared-lib`, go to the dist folder `cd dist/shared-lib` and run `npm publish`.

## Running unit tests

Run `ng test shared-lib` to execute the unit tests via [Karma](https://karma-runner.github.io).

## Further help

To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI Overview and Command Reference](https://angular.dev/tools/cli) page.
npm package: @msar/datadirect-puppeteer
Description: A library for calling the Blackbaud LMS's front-end APIs using Puppeteer
Author: Seth Battis
Latest version: 0.3.6

# datadirect-puppeteer

![NPM Version](https://img.shields.io/npm/v/@msar%2Fdatadirect-puppeteer)

An implementation of scraping Blackbaud's front-end APIs using Puppeteer

## Install

```sh
npm install @msar/datadirect-puppeteer datadirect puppeteer
```

Realistically, you'll want access to the `datadirect` types and will need to configure `puppeteer`, so they are peer dependencies.

## Usage

```ts
import { api as types } from 'datadirect';
import { api, PuppeteerSession } from '@msar/datadirect-puppeteer';

const session = await PuppeteerSession.Authenticated.getInstance(
  'https://example.myschoolapp.com',
  {
    username: 'admin@example.com',
    password: 's00p3rS3kre7'
  }
);

// optional to explicitly type `groups`, as the `datadirect-puppeteer` method maps types correctly!
const groups: types.datadirect.groupFinderByYear.Response =
  await api.datadirect.groupFinderByYear({
    session,
    payload: {
      schoolYearLabel: '2024 - 2025'
    }
  });

const topics = await api.datadirect.sectiontopicsget({
  session,
  payload: {
    format: 'json',
    active: true,
    future: false,
    expired: false,
    sharedTopics: true
  },
  pathParams: { Id: 12345678 }
});
```

## Headless Impersonation

If you are using a `PuppeteerSession.Impersonation`, I recommend running your script with Puppeteer in headless mode. Empirically, this seems to make it less likely that stray user activity will interfere with the Puppeteer-controlled UI actions necessary to make the impersonation work in the browser.

```ts
import { api, PuppeteerSession } from '@msar/datadirect-puppeteer';
const session = await PuppeteerSession.Impersonation.getInstance(
  'https://example.myschoolapp.com',
  {
    username: 'admin@example.com',
    password: 's00p3rS3kre7',
    headless: true,
    val: '12345678',
    searchIn: 'UserID'
  }
);
const conversations = await api.message.inbox({
  session,
  payload: {
    format: 'json',
    pageNumber: 1,
    toDate: '01/20/2025'
  }
});
```

## Known Issues

Actual error-generating issues are tagged [bug](https://github.com/battis/myschoolapp-reporting/issues?q=is%3Aissue%20state%3Aopen%20label%3Adatadirect-puppeteer%20label%3Abug%20), [all others](https://github.com/battis/myschoolapp-reporting/issues?q=is%3Aissue%20state%3Aopen%20label%3Adatadirect-puppeteer%20label%3Abug%20) are improvements or documentation issues.

```

```