open-index/open-npm huggingface dataset:
npm package: @heroku/ember-purple-shim
Description: Addon to import Purple into an ember application
Author: hit-team@heroku.com
Latest version: 0.3.1

# ember-purple-shim

This addon can be used to add [Purple](http://purple.heroku.com/) to an ember project

## Installation

* `ember install https://github.com/heroku/ember-purple-shim`
* `ember g ember-purple-shim`
npm package: @heroku/function-toml
Description: function.toml specification and validator
Author: @heroku
Latest version: 0.0.3

# function-toml

function.toml specification and validation for Salesforce Functions (f.k.a. evergreen)


## Usage

```javascript
import { FunctionToml } from '@heroku/function-toml';

const fntoml = new FunctionToml();

fntoml.parseFile('/tmp/function.toml').then((data) => {
  console.dir(data)
});

fntoml.parseData({function: { label: 'verybestfunction'}}).then((data) => {
  console.dir(data)
});
```
npm package: @heroku/hapi-heroku-client
Description: http client pre-configured to streamline interfacing with heroku's platform API
Author: hit-team@heroku.com
Latest version: 4.0.0

# hapi-heroku-client [![Circle CI](https://circleci.com/gh/heroku/uku-heroku-client.svg?style=svg&circle-token=6d6ee50bd9fe967d905167c7b952ae18566e89e5)](https://circleci.com/gh/heroku/uku-heroku-client)
a hapijs plugin mapping a heroku client to both `server.app.heroku` and `request.app.heroku`, the latter of which includes the incoming requests `Authorization` header. This project is based on [wreck](https://github.com/hapijs/wreck). See wreck's documentation for additional options and usages.

## 4XX <=> ERROR
As of v4 4XX responses are treated as errors. If you're using this via promises (e.g.`Bluebird.promisify`) **this is a non-trivial change**. 4XX and 5XX responses will now trigger the `.catch` clause. This is further complicated in that Bluebird only passes `error` to catch and not `response` or `body`.


## usage
```bash
npm install --save hapi hapi-heroku-client
```
```js
const Hapi = require('hapi');
const myServer = new Hapi.Server();

myServer.connection();
myServer.register([
  {
    register: require('hapi-heroku-client'),
    options: {
      /* options enumerated below */
      'timeout': 5000, /* for example */
      'user-agent': 'example-code-1.0.0' /* for another example */
    }
  }
], function (error) {

    if (error) { throw error; }

    myServer.route({
      method: 'get',
      path: '/foo',
      handler: function (request,reply) {
        const server = request.server;

        // fetch unauthenticated API endpoints
        server.app.heroku.get('/version', (err, version) => {
          reply(version);
        });

        // or with promises
        server.app.heroku.getAsync('/version').then((version) => {
          reply(version);
        });

        // fetch authenticated API endpoint
        request.app.heroku.get('/apps', (err, apps) => {
          reply(apps);
        });

        // or with promises
        request.app.heroku.getAsync(('/apps') => {
          reply(apps);
        });
      }
    });

    myServer.start(() => { console.log('your server has started!'); });
  }
);
```

## options
+ `host` -- defaults to _api.heroku.com_
+ `proto` -- defaults to _https_
+ `timeout` -- defaults to _15_ seconds
+ `variant` -- defaults to _'application/vnd.heroku+json; version=3'_
+ `user-agent` -- defaults to _hapi-heroku-client_

## variables
+ `HEROKU_API_PROTO` -- defaults to _https_
+ `HEROKU_API_HOST` -- defaults to _api.heroku.com_
+ `HTTP_TIMEOUT` -- defaults to _15_ seconds
npm package: @heroku/project-descriptor
Description: Project Descriptor specification and validator
Author: @heroku
Latest version: 0.0.6

# project-descriptor

[Project Descriptor specification](https://github.com/buildpacks/spec/blob/main/extensions/project-descriptor.md) and validation for Salesforce Functions


## Usage

```javascript
import {ProjectDescriptor} from '@heroku/project-descriptor';

const parser = new ProjectDescriptor();

parser.parseFile('project.toml').then((data) => {
  console.dir(data)
});

parser.parseData({
  _: {
    'schema-version': '0.2'
  },
  com: {
    salesforce: {
      'schema-version': '0.1',
      id: 'foo',
      type: 'function'
    }
  }
}).then((data) => {
  console.dir(data)
});
```