open-index/open-npm huggingface dataset:
npm package: @shipengine/giger-form-controllers
Description: A package to manage giger form components using shipengine/forms
Latest version: 1.7.0

# `@shipengine/giger-form-controllers`
![No Maintenance Intended](https://img.shields.io/maintenance/no/2023.svg)

<h1>DEPRECATED</h1>

Currently, Giger only maintains the integration with Formik in [@shipengine/formik-giger](https://github.com/shipengine/giger/tree/master/packages/integrations/formik) package.

If you use `react-hook-form` we suggest you to use your own integration.

---
---

⚠️ This package is still in BETA

Bindings for using packlink-forms\[https://github.com/packlink-dev/phaviour/tree/master/packages/packlink-forms] with Giger\[https://github.com/shipengine/giger].

## Roadmap

## Usage

Check `stories/` to check how to integrate this package in your application.

<!-- TODO complete readme docs -->
npm package: @shipengine/js-api
Description: The `shipengine/js-api` library instantiates a batteries-included, vanilla JavaScript client for interacting with the [ShipEngine API](https://shipengine.github.io/shipengine-openapi/). The client provides a set of fully-typed methods that map directly to
Latest version: 4.30.0

# ShipEngine JS Api

The `shipengine/js-api` library instantiates a batteries-included, vanilla JavaScript client for interacting with the [ShipEngine API](https://shipengine.github.io/shipengine-openapi/). The client provides a set of fully-typed methods that map directly to ShipEngine API operations[^1], bound to a user specified via platform token.

## Features:

- Converts all outbound JSON keys to `snake_case` for consumption by the ShipEngine API.
- Converts all inbound JSON keys to `camelCase` for use in JS.
- Attempts to refresh expired tokens on `401 Unauthorized` responses, followed by retrying the original request.
- Logs all requests and responses to the console.

In addition to the client, the `shipengine/js-api` lib provides TypeScript types for all ShipEngine API entities.

## Basic Usage

```tsx
import { ShipEngineAPI } from "@shipengine/js-api";

const client = new ShipEngineAPI("your-platform-token", {
  // Used when attempting to refresh the token on 401 responses
  getToken: async () => {
    return "your-platform-token";
  },
});

client.shipments.list().then((response) => {
  console.log(response.data);
  // > an object matching the response schema of https://shipengine.github.io/shipengine-openapi/#operation/list_shipments
});
```
npm package: @shipengine/react-api
Description: The `shipengine/react-api` library provides React bindings for the [shipengine/js-api](https://www.npmjs.com/package/@shipengine/js-api) client, with the addition of data sharing and cache management via [React Query](https://tanstack.com/query/latest) (h
Latest version: 4.19.8

# ShipEngine React Api

The `shipengine/react-api` library provides React bindings for the [shipengine/js-api](https://www.npmjs.com/package/@shipengine/js-api) client, with the addition of data sharing and cache management via [React Query](https://tanstack.com/query/latest) (hereon "RQ").

The client interface is exposed via hooks[^1] sharing a single RQ client instance; this allows multiple components to access data from the same ShipEngine API endpoint with a single network request.

For instance, if `ComponentA`, `ComponentB` and `ComponentC` separately invoke the `useListShipments` hook on a single render, the API requests will be deduped to a single `GET /v1/shipments`, with all three components sharing the data / loading / error / etc states from the RQ cache. Revalidating the request in one component similarly updates the others.

## Basic usage

```tsx
import { ShipEngine, useListShipments } from "@shipengine/react-api";

const MyComponent = () => {
  const { data, isLoading, error } = useListShipments();

  if (isLoading) return <div>Loading...</div>;
  if (error) return <div>{error.message}</div>;

  console.log(data);
  // > an object matching the response schema of https://shipengine.github.io/shipengine-openapi/#operation/list_shipments

  return <div>Retrieved {data.shipments.length} shipments</div>;
};

const MyApp = () => {
  return (
    <ShipEngine getToken={() => "your-platform-token"}>
      <MyComponent />
      <MyComponent />
      <MyComponent />
      {/* All three components will share the same data and only 1 request will be made */}
    </ShipEngine>
  );
};
```
npm package: @shipengine/toll-shipping
Description: Shared library for Toll Group on ShipEngine
Author: Mike White
Latest version: 1.2.4

# Toll Shared Library

This is a shared library used by Toll Group carriers integrated into SE Connect. 

The following environment variables are required for any SE Connect App referencing this library:

 - BASIC_AUTH_USER - Toll API User Name
 - PASSWORD_UAT - Toll API Test Password
 - PASSWORD_PRD - Toll API Production Password

 To get the required files and fonts for label-gen, you may need to copy-paste the static folder into the root directory of the connect runtime.

## Documentation
Documentation for the Toll API is in the `/docs` folder.

## Test Changes Locally
 To test changes in this shared library without publishing, run `npm link` in this directory and then switch to the SE Connect App directory and run `npm link @shipengine/toll-shipping`.
 - Make sure to run `npm run build` in this directory when any change is made.

## Unit Tests
Tests are located under `src/utils/__tests__`. Use `npm run test` to run them.

## Build Tracking Events
Run `npm run convert-tracking-events` to convert csv tracking event data into json.
- This script should be ran if any csv data file is added or updated.
- There should be a csv file in `src/data` for each Business ID supported. Business IDs are defined in `src/utils/constants.ts`.

## Push Updates
- Make sure the latest changes are built with `npm run build` and unit tests succeed with `npm run test`.
- Increment the minor version in `package.json` then run `npm install` to increment version in `package-lock.json`
- Preview the package contents with `npm publish --dry-run` to make sure everything looks correct.
- Run `npm publish` and the [public npm library](https://www.npmjs.com/package/@shipengine/toll-shipping) should have its version incremented.
  - The library will become available to install in the Toll SE Connect Apps.
- **Note:** You will need to create an account on the npm website and request permissions to publish from the IT Help Desk.