Socket
Socket
Sign inDemoInstall

@atlas.js/component

Package Overview
Dependencies
4
Maintainers
2
Versions
14
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 2.2.0-alpha.0 to 2.2.0-alpha.1

tsconfig.json

11

CHANGELOG.md

@@ -6,2 +6,13 @@ # Change Log

# [2.2.0-alpha.1](https://github.com/strvcom/atlas.js/compare/@atlas.js/component@2.2.0-alpha.0...@atlas.js/component@2.2.0-alpha.1) (2019-01-28)
### Bug Fixes
* remove `declare module` wrappers from all d.ts files 🔥 ([c0e7cd5](https://github.com/strvcom/atlas.js/commit/c0e7cd5)), closes [#69](https://github.com/strvcom/atlas.js/issues/69)
<a name="2.1.0"></a>

@@ -8,0 +19,0 @@ # [2.1.0](https://github.com/strvcom/atlas.js/compare/@atlas.js/component@2.0.0...@atlas.js/component@2.1.0) (2018-07-12)

4

package.json
{
"name": "@atlas.js/component",
"description": "The main class from which all other components inherit for @atlas.js. You should not need to use this class directly - it is used internally.",
"version": "2.2.0-alpha.0",
"version": "2.2.0-alpha.1",
"author": "Robert Rossmann <robert.rossmann@strv.com>",

@@ -26,3 +26,3 @@ "bugs": "https://github.com/strvcom/atlas.js/issues",

},
"gitHead": "8b6af27b5ca8e64ba5dffa05e92c01d804dbf6f1"
"gitHead": "39c0427aa76e1003d5f4acf19cee927925ca0ad3"
}

@@ -1,66 +0,64 @@

declare module '@atlas.js/component' {
import * as Pino from 'pino'
import { Atlas } from '@atlas.js/atlas'
import * as Pino from 'pino'
import { Atlas } from '@atlas.js/atlas'
type ComponentName = string
declare type ComponentName = string
/**
* A base class implementing common behaviour for Service, Action and Hook subclasses
*
* You should not use this class directly and instead use either `Service`, `Action` or `Hook`
* subclasses.
*
* @abstract
*/
export default abstract class Component {
/**
* A base class implementing common behaviour for Service, Action and Hook subclasses
* By default, a component is marked as "public", ie. accessible on the Atlas instance. With
* this set to `true` you will only be able to access this component only via inter-component
* resolution mechanism (`this.component(name)`).
*
* You should not use this class directly and instead use either `Service`, `Action` or `Hook`
* subclasses.
* This is useful to hide various low-level or "glue" components from the public API surface.
*/
static internal: boolean
/**
* Default configuration for this component
*
* @abstract
* @deprecated Use the `config` static property (JSON schema) to describe your configuration
*/
export default abstract class Component {
/**
* By default, a component is marked as "public", ie. accessible on the Atlas instance. With
* this set to `true` you will only be able to access this component only via inter-component
* resolution mechanism (`this.component(name)`).
*
* This is useful to hide various low-level or "glue" components from the public API surface.
*/
static internal: boolean
static defaults: object
/**
* Default configuration for this component
*
* @deprecated Use the `config` static property (JSON schema) to describe your configuration
*/
static defaults: object
/** JSON Schema describing this component's configuration values */
static config: object
/** JSON Schema describing this component's configuration values */
static config: object
/** Array of component aliases which this component consumes/requires */
static requires: Array<ComponentName>
/** Array of component aliases which this component consumes/requires */
static requires: Array<ComponentName>
/**
* A child log created specifically for this component to easily distinguish log entries coming
* from this component
*/
log: Pino.Logger
/**
* A child log created specifically for this component to easily distinguish log entries coming
* from this component
*/
log: Pino.Logger
/** The Atlas instance which is currently managing this component */
atlas: Atlas
/** The Atlas instance which is currently managing this component */
atlas: Atlas
/** Runtime configuration values as received from the user, with defaults applied */
config: object
/** Runtime configuration values as received from the user, with defaults applied */
config: object
/**
* Get the instance of a component
*
* @param componentName The name of the component to retrieve, as defined in this
* component's `static requires` array.
*/
component(componentName: ComponentName): any
/**
* Get the instance of a component
*
* @param componentName The name of the component to retrieve, as defined in this
* component's `static requires` array.
*/
component(componentName: ComponentName): any
/**
* Dispatch an event to all hooks listening on this component
*
* @param event The event to dispatch (an arbitrary string)
* @param subject The thing to send to the hooks along with this event as an argument
*/
dispatch(event: string, subject: any): Promise<void>
}
/**
* Dispatch an event to all hooks listening on this component
*
* @param event The event to dispatch (an arbitrary string)
* @param subject The thing to send to the hooks along with this event as an argument
*/
dispatch(event: string, subject: any): Promise<void>
}
"use strict";
var _ = _interopRequireDefault(require(".."));
var _ = require("..");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
describe('Component: basics and API', () => {

@@ -64,2 +62,2 @@ it('exists', () => {

});
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwaS50ZXN0Lm1qcyJdLCJuYW1lcyI6WyJkZXNjcmliZSIsIml0IiwiZXhwZWN0IiwiQ29tcG9uZW50IiwidG8iLCJiZSIsImEiLCJub3QiLCJ0aHJvdyIsImNvbmZpZyIsImFuIiwiT2JqZWN0Iiwia2V5cyIsImhhdmUiLCJsZW5ndGgiLCJkZWZhdWx0cyIsInJlcXVpcmVzIiwiaW50ZXJuYWwiLCJlcXVhbCIsImF0bGFzIiwibG9nIiwiY29tcG9uZW50IiwicHJvcGVydHkiLCJyZXNvbHZlIiwic2lub24iLCJzdHViIiwiaXRzZWxmIiwicmVzcG9uZFRvIiwiZGlzcGF0Y2giLCJlcWwiXSwibWFwcGluZ3MiOiI7O0FBQUE7Ozs7QUFFQUEsUUFBUSxDQUFDLDJCQUFELEVBQThCLE1BQU07QUFDMUNDLEVBQUFBLEVBQUUsQ0FBQyxRQUFELEVBQVcsTUFBTTtBQUNqQkMsSUFBQUEsTUFBTSxDQUFDQyxTQUFELENBQU4sQ0FBa0JDLEVBQWxCLENBQXFCQyxFQUFyQixDQUF3QkMsQ0FBeEIsQ0FBMEIsVUFBMUI7QUFDRCxHQUZDLENBQUY7QUFJQUwsRUFBQUEsRUFBRSxDQUFDLG9CQUFELEVBQXVCLE1BQU07QUFDN0JDLElBQUFBLE1BQU0sQ0FBQyxNQUFNLElBQUlDLFNBQUosRUFBUCxDQUFOLENBQThCQyxFQUE5QixDQUFpQ0csR0FBakMsQ0FBcUNDLEtBQXJDO0FBQ0QsR0FGQyxDQUFGO0FBSUFQLEVBQUFBLEVBQUUsQ0FBQyxtREFBRCxFQUFzRCxNQUFNO0FBQzVEQyxJQUFBQSxNQUFNLENBQUNDLFVBQVVNLE1BQVgsQ0FBTixDQUF5QkwsRUFBekIsQ0FBNEJDLEVBQTVCLENBQStCSyxFQUEvQixDQUFrQyxRQUFsQztBQUNBUixJQUFBQSxNQUFNLENBQUNTLE1BQU0sQ0FBQ0MsSUFBUCxDQUFZVCxVQUFVTSxNQUF0QixDQUFELENBQU4sQ0FBc0NMLEVBQXRDLENBQXlDUyxJQUF6QyxDQUE4Q0MsTUFBOUMsQ0FBcUQsQ0FBckQ7QUFDRCxHQUhDLENBQUY7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WCxDQUFOLENBQTJCeEIsRUFBM0IsQ0FBOEJ5QixHQUE5QixDQUFrQ0QsUUFBbEM7QUFDRCxHQU5DLENBQUY7QUFPRCxDQTNETyxDQUFSIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IENvbXBvbmVudCBmcm9tICcuLidcblxuZGVzY3JpYmUoJ0NvbXBvbmVudDogYmFzaWNzIGFuZCBBUEknLCAoKSA9PiB7XG4gIGl0KCdleGlzdHMnLCAoKSA9PiB7XG4gICAgZXhwZWN0KENvbXBvbmVudCkudG8uYmUuYSgnZnVuY3Rpb24nKVxuICB9KVxuXG4gIGl0KCdjYW4gYmUgY29uc3RydWN0ZWQnLCAoKSA9PiB7XG4gICAgZXhwZWN0KCgpID0+IG5ldyBDb21wb25lbnQoKSkudG8ubm90LnRocm93KClcbiAgfSlcblxuICBpdCgnaGFzIGEgc3RhdGljIGNvbmZpZyBwcm9wZXJ0eSB3aXRoIGFuIGVtcHR5IG9iamVjdCcsICgpID0+IHtcbiAgICBleHBlY3QoQ29tcG9uZW50LmNvbmZpZykudG8uYmUuYW4oJ29iamVjdCcpXG4gICAgZXhwZWN0KE9iamVjdC5rZXlzKENvbXBvbmVudC5jb25maWcpKS50by5oYXZlLmxlbmd0aCgwKVxuICB9KVxuXG4gIGl0KCdoYXMgYSBzdGF0aWMgZGVmYXVsdHMgcHJvcGVydHkgd2l0aCBhbiBlbXB0eSBvYmplY3QnLCAoKSA9PiB7XG4gICAgZXhwZWN0KENvbXBvbmVudC5kZWZhdWx0cykudG8uYmUuYW4oJ29iamVjdCcpXG4gICAgZXhwZWN0KE9iamVjdC5rZXlzKENvbXBvbmVudC5kZWZhdWx0cykpLnRvLmhhdmUubGVuZ3RoKDApXG4gIH0pXG5cbiAgaXQoJ2hhcyBhIHN0YXRpYyByZXF1aXJlcyBwcm9wZXJ0eSB3aXRoIGFuIGVtcHR5IGFycmF5JywgKCkgPT4ge1xuICAgIGV4cGVjdChDb21wb25lbnQucmVxdWlyZXMpLnRvLmJlLmFuKCdhcnJheScpXG4gICAgZXhwZWN0KENvbXBvbmVudC5yZXF1aXJlcykudG8uaGF2ZS5sZW5ndGgoMClcbiAgfSlcblxuICBpdCgnaGFzIGEgc3RhdGljIGludGVybmFsIHByb3BlcnR5IHNldCB0byBmYWxzZScsICgpID0+IHtcbiAgICBleHBlY3QoQ29tcG9uZW50LmludGVybmFsKS50by5lcXVhbChmYWxzZSlcbiAgfSlcblxuICBpdCgnc2F2ZXMgYXRsYXMsIGxvZyBhbmQgY29uZmlnIG9iamVjdHMgZ2l2ZW4gb24gY29uc3RydWN0b3IgdG8gaXRzZWxmJywgKCkgPT4ge1xuICAgIGNvbnN0IGF0bGFzID0geyBhdGxhczogdHJ1ZSB9XG4gICAgY29uc3QgbG9nID0geyBsb2c6IHRydWUgfVxuICAgIGNvbnN0IGNvbmZpZyA9IHsgY29uZmlnOiB0cnVlIH1cbiAgICBjb25zdCBjb21wb25lbnQgPSBuZXcgQ29tcG9uZW50KHtcbiAgICAgIGF0bGFzLFxuICAgICAgbG9nLFxuICAgICAgY29uZmlnLFxuICAgIH0pXG5cbiAgICBleHBlY3QoY29tcG9uZW50KS50by5oYXZlLnByb3BlcnR5KCdhdGxhcycsIGF0bGFzKVxuICAgIGV4cGVjdChjb21wb25lbnQpLnRvLmhhdmUucHJvcGVydHkoJ2xvZycsIGxvZylcbiAgICBleHBlY3QoY29tcG9uZW50KS50by5oYXZlLnByb3BlcnR5KCdjb25maWcnLCBjb25maWcpXG4gIH0pXG5cbiAgaXQoJ3NhdmVzIHRoZSBjb21wb25lbnQgZnVuY3Rpb24gZ2l2ZW4gb24gY29uc3RydWN0b3IgdG8gaXRzZWxmJywgKCkgPT4ge1xuICAgIGNvbnN0IHJlc29sdmUgPSBzaW5vbi5zdHViKClcbiAgICBjb25zdCBjb21wb25lbnQgPSBuZXcgQ29tcG9uZW50KHtcbiAgICAgIGNvbXBvbmVudDogcmVzb2x2ZSxcbiAgICB9KVxuXG4gICAgZXhwZWN0KGNvbXBvbmVudCkuaXRzZWxmLnRvLnJlc3BvbmRUbygnY29tcG9uZW50JylcbiAgfSlcblxuICBpdCgnc2F2ZXMgdGhlIGRpc3BhdGNoIGZ1bmN0aW9uIGdpdmVuIG9uIGNvbnN0cnVjdG9yIHRvIGl0c2VsZicsICgpID0+IHtcbiAgICBjb25zdCBkaXNwYXRjaCA9IHNpbm9uLnN0dWIoKVxuICAgIGNvbnN0IGNvbXBvbmVudCA9IG5ldyBDb21wb25lbnQoeyBkaXNwYXRjaCB9KVxuXG4gICAgZXhwZWN0KGNvbXBvbmVudCkuaXRzZWxmLnRvLnJlc3BvbmRUbygnZGlzcGF0Y2gnKVxuICAgIGV4cGVjdChjb21wb25lbnQuZGlzcGF0Y2gpLnRvLmVxbChkaXNwYXRjaClcbiAgfSlcbn0pXG4iXX0=
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwaS50ZXN0Lm1qcyJdLCJuYW1lcyI6WyJkZXNjcmliZSIsIml0IiwiZXhwZWN0IiwiQ29tcG9uZW50IiwidG8iLCJiZSIsImEiLCJub3QiLCJ0aHJvdyIsImNvbmZpZyIsImFuIiwiT2JqZWN0Iiwia2V5cyIsImhhdmUiLCJsZW5ndGgiLCJkZWZhdWx0cyIsInJlcXVpcmVzIiwiaW50ZXJuYWwiLCJlcXVhbCIsImF0bGFzIiwibG9nIiwiY29tcG9uZW50IiwicHJvcGVydHkiLCJyZXNvbHZlIiwic2lub24iLCJzdHViIiwiaXRzZWxmIiwicmVzcG9uZFRvIiwiZGlzcGF0Y2giLCJlcWwiXSwibWFwcGluZ3MiOiI7O0FBQUE7O0FBRUFBLFFBQVEsQ0FBQywyQkFBRCxFQUE4QixNQUFNO0FBQzFDQyxFQUFBQSxFQUFFLENBQUMsUUFBRCxFQUFXLE1BQU07QUFDakJDLElBQUFBLE1BQU0sQ0FBQ0MsU0FBRCxDQUFOLENBQWtCQyxFQUFsQixDQUFxQkMsRUFBckIsQ0FBd0JDLENBQXhCLENBQTBCLFVBQTFCO0FBQ0QsR0FGQyxDQUFGO0FBSUFMLEVBQUFBLEVBQUUsQ0FBQyxvQkFBRCxFQUF1QixNQUFNO0FBQzdCQyxJQUFBQSxNQUFNLENBQUMsTUFBTSxJQUFJQyxTQUFKLEVBQVAsQ0FBTixDQUE4QkMsRUFBOUIsQ0FBaUNHLEdBQWpDLENBQXFDQyxLQUFyQztBQUNELEdBRkMsQ0FBRjtBQUlBUCxFQUFBQSxFQUFFLENBQUMsbURBQUQsRUFBc0QsTUFBTTtBQUM1REMsSUFBQUEsTUFBTSxDQUFDQyxVQUFVTSxNQUFYLENBQU4sQ0FBeUJMLEVBQXpCLENBQTRCQyxFQUE1QixDQUErQkssRUFBL0IsQ0FBa0MsUUFBbEM7QUFDQVIsSUFBQUEsTUFBTSxDQUFDUyxNQUFNLENBQUNDLElBQVAsQ0FBWVQsVUFBVU0sTUFBdEIsQ0FBRCxDQUFOLENBQXNDTCxFQUF0QyxDQUF5Q1MsSUFBekMsQ0FBOENDLE1BQTlDLENBQXFELENBQXJEO0FBQ0QsR0FIQyxDQUFGO0FBS0FiLEVBQUFBLEVBQUUsQ0FBQyxxREFBRCxFQUF3RCxNQUFNO0FBQzlEQyxJQUFBQSxNQUFNLENBQUNDLFVBQVVZLFFBQVgsQ0FBTixDQUEyQlgsRUFBM0IsQ0FBOEJDLEVBQTlCLENBQWlDSyxFQUFqQyxDQUFvQyxRQUFwQztBQUNBUixJQUFBQSxNQUFNLENBQUNTLE1BQU0sQ0FBQ0MsSUFBUCxDQUFZVCxVQUFVWSxRQUF0QixDQUFELENBQU4sQ0FBd0NYLEVBQXhDLENBQTJDUyxJQUEzQyxDQUFnREMsTUFBaEQsQ0FBdUQsQ0FBdkQ7QUFDRCxHQUhDLENBQUY7QUFLQWIsRUFBQUEsRUFBRSxDQUFDLG9EQUFELEVBQXVELE1BQU07QUFDN0RDLElBQUFBLE1BQU0sQ0FBQ0MsVUFBVWEsUUFBWCxDQUFOLENBQTJCWixFQUEzQixDQUE4QkMsRUFBOUIsQ0FBaUNLLEVBQWpDLENBQW9DLE9BQXBDO0FBQ0FSLElBQUFBLE1BQU0sQ0FBQ0MsVUFBVWEsUUFBWCxDQUFOLENBQTJCWixFQUEzQixDQUE4QlMsSUFBOUIsQ0FBbUNDLE1BQW5DLENBQTBDLENBQTFDO0FBQ0QsR0FIQyxDQUFGO0FBS0FiLEVBQUFBLEVBQUUsQ0FBQyw2Q0FBRCxFQUFnRCxNQUFNO0FBQ3REQyxJQUFBQSxNQUFNLENBQUNDLFVBQVVjLFFBQVgsQ0FBTixDQUEyQmIsRUFBM0IsQ0FBOEJjLEtBQTlCLENBQW9DLEtBQXBDO0FBQ0QsR0FGQyxDQUFGO0FBSUFqQixFQUFBQSxFQUFFLENBQUMsb0VBQUQsRUFBdUUsTUFBTTtBQUM3RSxVQUFNa0IsS0FBSyxHQUFHO0FBQUVBLE1BQUFBLEtBQUssRUFBRTtBQUFULEtBQWQ7QUFDQSxVQUFNQyxHQUFHLEdBQUc7QUFBRUEsTUFBQUEsR0FBRyxFQUFFO0FBQVAsS0FBWjtBQUNBLFVBQU1YLE1BQU0sR0FBRztBQUFFQSxNQUFBQSxNQUFNLEVBQUU7QUFBVixLQUFmO0FBQ0EsVUFBTVksU0FBUyxHQUFHLElBQUlsQixTQUFKLENBQWM7QUFDOUJnQixNQUFBQSxLQUQ4QjtBQUU5QkMsTUFBQUEsR0FGOEI7QUFHOUJYLE1BQUFBO0FBSDhCLEtBQWQsQ0FBbEI7QUFNQVAsSUFBQUEsTUFBTSxDQUFDbUIsU0FBRCxDQUFOLENBQWtCakIsRUFBbEIsQ0FBcUJTLElBQXJCLENBQTBCUyxRQUExQixDQUFtQyxPQUFuQyxFQUE0Q0gsS0FBNUM7QUFDQWpCLElBQUFBLE1BQU0sQ0FBQ21CLFNBQUQsQ0FBTixDQUFrQmpCLEVBQWxCLENBQXFCUyxJQUFyQixDQUEwQlMsUUFBMUIsQ0FBbUMsS0FBbkMsRUFBMENGLEdBQTFDO0FBQ0FsQixJQUFBQSxNQUFNLENBQUNtQixTQUFELENBQU4sQ0FBa0JqQixFQUFsQixDQUFxQlMsSUFBckIsQ0FBMEJTLFFBQTFCLENBQW1DLFFBQW5DLEVBQTZDYixNQUE3QztBQUNELEdBYkMsQ0FBRjtBQWVBUixFQUFBQSxFQUFFLENBQUMsNkRBQUQsRUFBZ0UsTUFBTTtBQUN0RSxVQUFNc0IsT0FBTyxHQUFHQyxLQUFLLENBQUNDLElBQU4sRUFBaEI7QUFDQSxVQUFNSixTQUFTLEdBQUcsSUFBSWxCLFNBQUosQ0FBYztBQUM5QmtCLE1BQUFBLFNBQVMsRUFBRUU7QUFEbUIsS0FBZCxDQUFsQjtBQUlBckIsSUFBQUEsTUFBTSxDQUFDbUIsU0FBRCxDQUFOLENBQWtCSyxNQUFsQixDQUF5QnRCLEVBQXpCLENBQTRCdUIsU0FBNUIsQ0FBc0MsV0FBdEM7QUFDRCxHQVBDLENBQUY7QUFTQTFCLEVBQUFBLEVBQUUsQ0FBQyw0REFBRCxFQUErRCxNQUFNO0FBQ3JFLFVBQU0yQixRQUFRLEdBQUdKLEtBQUssQ0FBQ0MsSUFBTixFQUFqQjtBQUNBLFVBQU1KLFNBQVMsR0FBRyxJQUFJbEIsU0FBSixDQUFjO0FBQUV5QixNQUFBQTtBQUFGLEtBQWQsQ0FBbEI7QUFFQTFCLElBQUFBLE1BQU0sQ0FBQ21CLFNBQUQsQ0FBTixDQUFrQkssTUFBbEIsQ0FBeUJ0QixFQUF6QixDQUE0QnVCLFNBQTVCLENBQXNDLFVBQXRDO0FBQ0F6QixJQUFBQSxNQUFNLENBQUNtQixTQUFTLENBQUNPLFFBQVgsQ0FBTixDQUEyQnhCLEVBQTNCLENBQThCeUIsR0FBOUIsQ0FBa0NELFFBQWxDO0FBQ0QsR0FOQyxDQUFGO0FBT0QsQ0EzRE8sQ0FBUiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBDb21wb25lbnQgZnJvbSAnLi4nXG5cbmRlc2NyaWJlKCdDb21wb25lbnQ6IGJhc2ljcyBhbmQgQVBJJywgKCkgPT4ge1xuICBpdCgnZXhpc3RzJywgKCkgPT4ge1xuICAgIGV4cGVjdChDb21wb25lbnQpLnRvLmJlLmEoJ2Z1bmN0aW9uJylcbiAgfSlcblxuICBpdCgnY2FuIGJlIGNvbnN0cnVjdGVkJywgKCkgPT4ge1xuICAgIGV4cGVjdCgoKSA9PiBuZXcgQ29tcG9uZW50KCkpLnRvLm5vdC50aHJvdygpXG4gIH0pXG5cbiAgaXQoJ2hhcyBhIHN0YXRpYyBjb25maWcgcHJvcGVydHkgd2l0aCBhbiBlbXB0eSBvYmplY3QnLCAoKSA9PiB7XG4gICAgZXhwZWN0KENvbXBvbmVudC5jb25maWcpLnRvLmJlLmFuKCdvYmplY3QnKVxuICAgIGV4cGVjdChPYmplY3Qua2V5cyhDb21wb25lbnQuY29uZmlnKSkudG8uaGF2ZS5sZW5ndGgoMClcbiAgfSlcblxuICBpdCgnaGFzIGEgc3RhdGljIGRlZmF1bHRzIHByb3BlcnR5IHdpdGggYW4gZW1wdHkgb2JqZWN0JywgKCkgPT4ge1xuICAgIGV4cGVjdChDb21wb25lbnQuZGVmYXVsdHMpLnRvLmJlLmFuKCdvYmplY3QnKVxuICAgIGV4cGVjdChPYmplY3Qua2V5cyhDb21wb25lbnQuZGVmYXVsdHMpKS50by5oYXZlLmxlbmd0aCgwKVxuICB9KVxuXG4gIGl0KCdoYXMgYSBzdGF0aWMgcmVxdWlyZXMgcHJvcGVydHkgd2l0aCBhbiBlbXB0eSBhcnJheScsICgpID0+IHtcbiAgICBleHBlY3QoQ29tcG9uZW50LnJlcXVpcmVzKS50by5iZS5hbignYXJyYXknKVxuICAgIGV4cGVjdChDb21wb25lbnQucmVxdWlyZXMpLnRvLmhhdmUubGVuZ3RoKDApXG4gIH0pXG5cbiAgaXQoJ2hhcyBhIHN0YXRpYyBpbnRlcm5hbCBwcm9wZXJ0eSBzZXQgdG8gZmFsc2UnLCAoKSA9PiB7XG4gICAgZXhwZWN0KENvbXBvbmVudC5pbnRlcm5hbCkudG8uZXF1YWwoZmFsc2UpXG4gIH0pXG5cbiAgaXQoJ3NhdmVzIGF0bGFzLCBsb2cgYW5kIGNvbmZpZyBvYmplY3RzIGdpdmVuIG9uIGNvbnN0cnVjdG9yIHRvIGl0c2VsZicsICgpID0+IHtcbiAgICBjb25zdCBhdGxhcyA9IHsgYXRsYXM6IHRydWUgfVxuICAgIGNvbnN0IGxvZyA9IHsgbG9nOiB0cnVlIH1cbiAgICBjb25zdCBjb25maWcgPSB7IGNvbmZpZzogdHJ1ZSB9XG4gICAgY29uc3QgY29tcG9uZW50ID0gbmV3IENvbXBvbmVudCh7XG4gICAgICBhdGxhcyxcbiAgICAgIGxvZyxcbiAgICAgIGNvbmZpZyxcbiAgICB9KVxuXG4gICAgZXhwZWN0KGNvbXBvbmVudCkudG8uaGF2ZS5wcm9wZXJ0eSgnYXRsYXMnLCBhdGxhcylcbiAgICBleHBlY3QoY29tcG9uZW50KS50by5oYXZlLnByb3BlcnR5KCdsb2cnLCBsb2cpXG4gICAgZXhwZWN0KGNvbXBvbmVudCkudG8uaGF2ZS5wcm9wZXJ0eSgnY29uZmlnJywgY29uZmlnKVxuICB9KVxuXG4gIGl0KCdzYXZlcyB0aGUgY29tcG9uZW50IGZ1bmN0aW9uIGdpdmVuIG9uIGNvbnN0cnVjdG9yIHRvIGl0c2VsZicsICgpID0+IHtcbiAgICBjb25zdCByZXNvbHZlID0gc2lub24uc3R1YigpXG4gICAgY29uc3QgY29tcG9uZW50ID0gbmV3IENvbXBvbmVudCh7XG4gICAgICBjb21wb25lbnQ6IHJlc29sdmUsXG4gICAgfSlcblxuICAgIGV4cGVjdChjb21wb25lbnQpLml0c2VsZi50by5yZXNwb25kVG8oJ2NvbXBvbmVudCcpXG4gIH0pXG5cbiAgaXQoJ3NhdmVzIHRoZSBkaXNwYXRjaCBmdW5jdGlvbiBnaXZlbiBvbiBjb25zdHJ1Y3RvciB0byBpdHNlbGYnLCAoKSA9PiB7XG4gICAgY29uc3QgZGlzcGF0Y2ggPSBzaW5vbi5zdHViKClcbiAgICBjb25zdCBjb21wb25lbnQgPSBuZXcgQ29tcG9uZW50KHsgZGlzcGF0Y2ggfSlcblxuICAgIGV4cGVjdChjb21wb25lbnQpLml0c2VsZi50by5yZXNwb25kVG8oJ2Rpc3BhdGNoJylcbiAgICBleHBlY3QoY29tcG9uZW50LmRpc3BhdGNoKS50by5lcWwoZGlzcGF0Y2gpXG4gIH0pXG59KVxuIl19
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc