🚨 Active Supply Chain Attack:node-ipc Package Compromised.Learn More
Socket
Book a DemoSign in
Socket

@squareboat/nest-queue

Package Overview
Dependencies
Maintainers
2
Versions
19
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@squareboat/nest-queue - npm Package Compare versions

Comparing version
0.0.1
to
0.0.2
+76
CODE_OF_CONDUCT.md
# Contributor Covenant Code of Conduct
## Our Pledge
In the interest of fostering an open and welcoming environment, we as
contributors and maintainers pledge to making participation in our project and
our community a harassment-free experience for everyone, regardless of age, body
size, disability, ethnicity, sex characteristics, gender identity and expression,
level of experience, education, socio-economic status, nationality, personal
appearance, race, religion, or sexual identity and orientation.
## Our Standards
Examples of behavior that contributes to creating a positive environment
include:
* Using welcoming and inclusive language
* Being respectful of differing viewpoints and experiences
* Gracefully accepting constructive criticism
* Focusing on what is best for the community
* Showing empathy towards other community members
Examples of unacceptable behavior by participants include:
* The use of sexualized language or imagery and unwelcome sexual attention or
advances
* Trolling, insulting/derogatory comments, and personal or political attacks
* Public or private harassment
* Publishing others' private information, such as a physical or electronic
address, without explicit permission
* Other conduct which could reasonably be considered inappropriate in a
professional setting
## Our Responsibilities
Project maintainers are responsible for clarifying the standards of acceptable
behavior and are expected to take appropriate and fair corrective action in
response to any instances of unacceptable behavior.
Project maintainers have the right and responsibility to remove, edit, or
reject comments, commits, code, wiki edits, issues, and other contributions
that are not aligned to this Code of Conduct, or to ban temporarily or
permanently any contributor for other behaviors that they deem inappropriate,
threatening, offensive, or harmful.
## Scope
This Code of Conduct applies both within project spaces and in public spaces
when an individual is representing the project or its community. Examples of
representing a project or community include using an official project e-mail
address, posting via an official social media account, or acting as an appointed
representative at an online or offline event. Representation of a project may be
further defined and clarified by project maintainers.
## Enforcement
Instances of abusive, harassing, or otherwise unacceptable behavior may be
reported by contacting the project team at vinayaksarawagi25@gmail.com. All
complaints will be reviewed and investigated and will result in a response that
is deemed necessary and appropriate to the circumstances. The project team is
obligated to maintain confidentiality with regard to the reporter of an incident.
Further details of specific enforcement policies may be posted separately.
Project maintainers who do not follow or enforce the Code of Conduct in good
faith may face temporary or permanent repercussions as determined by other
members of the project's leadership.
## Attribution
This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4,
available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.html
[homepage]: https://www.contributor-covenant.org
For answers to common questions about this code of conduct, see
https://www.contributor-covenant.org/faq

Sorry, the diff of this file is not supported yet

export * from './JobFailed';
export * from './JobProcessed';
export * from './JobProcessing';
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __exportStar = (this && this.__exportStar) || function(m, exports) {
for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);
};
Object.defineProperty(exports, "__esModule", { value: true });
__exportStar(require("./JobFailed"), exports);
__exportStar(require("./JobProcessed"), exports);
__exportStar(require("./JobProcessing"), exports);
import { EmitsEvent } from '@squareboat/nest-events';
export declare class JobFailed extends EmitsEvent {
}
"use strict";
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
return c > 3 && r && Object.defineProperty(target, key, r), r;
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.JobFailed = void 0;
const nest_events_1 = require("@squareboat/nest-events");
const constants_1 = require("../constants");
let JobFailed = class JobFailed extends nest_events_1.EmitsEvent {
};
JobFailed = __decorate([
nest_events_1.Event(constants_1.events.jobFailed)
], JobFailed);
exports.JobFailed = JobFailed;
import { EmitsEvent } from '@squareboat/nest-events';
export declare class JobProcessed extends EmitsEvent {
}
"use strict";
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
return c > 3 && r && Object.defineProperty(target, key, r), r;
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.JobProcessed = void 0;
const nest_events_1 = require("@squareboat/nest-events");
const constants_1 = require("../constants");
let JobProcessed = class JobProcessed extends nest_events_1.EmitsEvent {
};
JobProcessed = __decorate([
nest_events_1.Event(constants_1.events.jobProcessed)
], JobProcessed);
exports.JobProcessed = JobProcessed;
import { EmitsEvent } from '@squareboat/nest-events';
export declare class JobProcessing extends EmitsEvent {
}
"use strict";
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
return c > 3 && r && Object.defineProperty(target, key, r), r;
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.JobProcessing = void 0;
const nest_events_1 = require("@squareboat/nest-events");
const constants_1 = require("../constants");
let JobProcessing = class JobProcessing extends nest_events_1.EmitsEvent {
};
JobProcessing = __decorate([
nest_events_1.Event(constants_1.events.jobProcessing)
], JobProcessing);
exports.JobProcessing = JobProcessing;
# The MIT License (MIT)
Copyright © 2020 [SquareBoat](https://squareboat.com)
> Permission is hereby granted, free of charge, to any person obtaining a copy
> of this software and associated documentation files (the "Software"), to deal
> in the Software without restriction, including without limitation the rights
> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
> copies of the Software, and to permit persons to whom the Software is
> furnished to do so, subject to the following conditions:
>
> The above copyright notice and this permission notice shall be included in
> all copies or substantial portions of the Software.
>
> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
> THE SOFTWARE.
<img src="./cover.png" align="center">
<br />
<div align="center"><strong>Easily integrate queue easily inside your nestjs applications</strong></div>
## Introduction
Queues are a form of asynchronous service-to-service communication used in backend architecture. They can be used to decouple or defer heavy weight processing such as sending Mails, processing large database operations etc. Messages are kept in queue until processed. Seperating these heavy time consuming tasks drastically improves your response.
Above all, you can easily perform the processing of the messages on the distributed system without causing any workload spike on your consumer-facing server ever again.
__Supported Queues__
- Sync
- AWS SQS
- Redis (Coming Soon)
- RabbitMQ (Coming Soon)
__Few Hightlights__
- ✅ Easy to setup and configure
- ✅ Handle multiple queues with ease
- ✅ Harnesses the powerful DI system by NestJS for creating jobs
- ✅ Configurable messages, queues and jobs
## Documentation
To read the complete documentation, [click here](https://opensource.squareboat.com/nest-queue/).
## Contributing
To know about contributing to this package, read the guidelines [here](./CONTRIBUTING.md)
## About Us
We are a bunch of dreamers, designers, and futurists. We are high on collaboration, low on ego, and take our happy hours seriously. We'd love to hear more about your product. Let's talk and turn your great ideas into something even greater! We have something in store for everyone. [☎️ 📧 Connect with us!](https://squareboat.com/contact)
## License
The MIT License. Please see License File for more information. Copyright © 2020 SquareBoat.
Made with ❤️ by [Squareboat](https://squareboat.com)
<div align="center"><strong>Easily integrate queue easily inside your nestjs applications</strong></div>
## Introduction
Queues are a form of asynchronous service-to-service communication used in backend architecture. They can be used to decouple or defer heavy weight processing such as sending Mails, processing large database operations etc. Messages are kept in queue until processed. Seperating these heavy time consuming tasks drastically improves your response.
Above all, you can easily perform the processing of the messages on the distributed system without causing any workload spike on your consumer-facing server ever again.
__Supported Queues__
- Sync
- AWS SQS
- Redis (Coming Soon)
- RabbitMQ (Coming Soon)
__Few Hightlights__
- ✅ Easy to setup and configure
- ✅ Handle multiple queues with ease
- ✅ Harnesses the powerful DI system by NestJS for creating jobs
- ✅ Configurable messages, queues and jobs
## Documentation
To read the complete documentation, [click here](https://opensource.squareboat.com/nest-queue/).
## Contributing
To know about contributing to this package, read the guidelines [here](./CONTRIBUTING.md)
## About Us
We are a bunch of dreamers, designers, and futurists. We are high on collaboration, low on ego, and take our happy hours seriously. We'd love to hear more about your product. Let's talk and turn your great ideas into something even greater! We have something in store for everyone. [☎️ 📧 Connect with us!](https://squareboat.com/contact)
## License
The MIT License. Please see License File for more information. Copyright © 2020 SquareBoat.
Made with ❤️ by [Squareboat](https://squareboat.com)
+8
-0
export declare const QUEUE_OPTIONS = "__QUEUE_OPTIONS__";
export declare const JOB_NAME = "__JOB_NAME__";
export declare const JOB_OPTIONS = "__JOB_OPTIONS__";
export declare const events: {
jobFailed: string;
jobProcessing: string;
jobProcessed: string;
};
export declare function OnJobFailed(): (target: Record<string, any>, propertyKey: string, descriptor: PropertyDescriptor) => void;
export declare function OnJobProcessing(): (target: Record<string, any>, propertyKey: string, descriptor: PropertyDescriptor) => void;
export declare function OnJobProcessed(): (target: Record<string, any>, propertyKey: string, descriptor: PropertyDescriptor) => void;
+28
-4
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.JOB_OPTIONS = exports.JOB_NAME = exports.QUEUE_OPTIONS = void 0;
exports.QUEUE_OPTIONS = '__QUEUE_OPTIONS__';
exports.JOB_NAME = '__JOB_NAME__';
exports.JOB_OPTIONS = '__JOB_OPTIONS__';
exports.OnJobProcessed = exports.OnJobProcessing = exports.OnJobFailed = exports.events = exports.JOB_OPTIONS = exports.JOB_NAME = exports.QUEUE_OPTIONS = void 0;
const nest_events_1 = require("@squareboat/nest-events");
exports.QUEUE_OPTIONS = "__QUEUE_OPTIONS__";
exports.JOB_NAME = "__JOB_NAME__";
exports.JOB_OPTIONS = "__JOB_OPTIONS__";
exports.events = {
jobFailed: "sqb-queue::job-failed",
jobProcessing: "sqb-queue::job-processing",
jobProcessed: "sqb-queue::job-processed",
};
function OnJobFailed() {
return function (target, propertyKey, descriptor) {
nest_events_1.ListensTo(exports.events.jobFailed)(target, propertyKey, descriptor);
};
}
exports.OnJobFailed = OnJobFailed;
function OnJobProcessing() {
return function (target, propertyKey, descriptor) {
nest_events_1.ListensTo(exports.events.jobProcessing)(target, propertyKey, descriptor);
};
}
exports.OnJobProcessing = OnJobProcessing;
function OnJobProcessed() {
return function (target, propertyKey, descriptor) {
nest_events_1.ListensTo(exports.events.jobProcessed)(target, propertyKey, descriptor);
};
}
exports.OnJobProcessed = OnJobProcessed;
+5
-2

@@ -1,3 +0,6 @@

import 'reflect-metadata';
import { JobOptions } from './interfaces';
import "reflect-metadata";
import { JobOptions } from "./interfaces";
export declare function Job(job: string, options?: JobOptions): (target: Record<string, any>, propertyKey: string) => void;
export declare function OnJobFailed(): (target: Record<string, any>, propertyKey: string, descriptor: PropertyDescriptor) => void;
export declare function OnJobProcessing(): (target: Record<string, any>, propertyKey: string, descriptor: PropertyDescriptor) => void;
export declare function OnJobProcessed(): (target: Record<string, any>, propertyKey: string, descriptor: PropertyDescriptor) => void;
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.Job = void 0;
exports.OnJobProcessed = exports.OnJobProcessing = exports.OnJobFailed = exports.Job = void 0;
const nest_events_1 = require("@squareboat/nest-events");
require("reflect-metadata");

@@ -14,1 +15,19 @@ const constants_1 = require("./constants");

exports.Job = Job;
function OnJobFailed() {
return function (target, propertyKey, descriptor) {
nest_events_1.ListensTo(constants_1.events.jobFailed)(target, propertyKey, descriptor);
};
}
exports.OnJobFailed = OnJobFailed;
function OnJobProcessing() {
return function (target, propertyKey, descriptor) {
nest_events_1.ListensTo(constants_1.events.jobProcessing)(target, propertyKey, descriptor);
};
}
exports.OnJobProcessing = OnJobProcessing;
function OnJobProcessed() {
return function (target, propertyKey, descriptor) {
nest_events_1.ListensTo(constants_1.events.jobProcessed)(target, propertyKey, descriptor);
};
}
exports.OnJobProcessed = OnJobProcessed;

@@ -22,2 +22,3 @@ "use strict";

const core_1 = require("@nestjs/core");
const nest_events_1 = require("@squareboat/nest-events");
const constants_1 = require("./constants");

@@ -32,3 +33,3 @@ const explorer_1 = require("./explorer");

module: QueueModule_1,
imports: [core_1.DiscoveryModule],
imports: [core_1.DiscoveryModule, nest_events_1.EventModule],
providers: [

@@ -46,3 +47,3 @@ explorer_1.QueueExplorer,

module: QueueModule_1,
imports: [core_1.DiscoveryModule],
imports: [core_1.DiscoveryModule, nest_events_1.EventModule],
providers: [

@@ -49,0 +50,0 @@ explorer_1.QueueExplorer,

@@ -1,3 +0,3 @@

import { InternalMessage, ListenerOptions, QueueDriver } from './interfaces';
import { DriverJob } from './jobs';
import { InternalMessage, ListenerOptions, QueueDriver } from "./interfaces";
import { DriverJob } from "./jobs";
export declare class QueueWorker {

@@ -4,0 +4,0 @@ private options;

@@ -13,2 +13,4 @@ "use strict";

exports.QueueWorker = void 0;
const nest_events_1 = require("@squareboat/nest-events");
const events_1 = require("./events");
const metadata_1 = require("./metadata");

@@ -24,2 +26,3 @@ const queue_1 = require("./queue");

const message = this.fetchMessage(job);
nest_events_1.EmitEvent(new events_1.JobProcessing(), { job: message });
const { data } = message;

@@ -32,4 +35,6 @@ try {

yield this.success(message, job);
nest_events_1.EmitEvent(new events_1.JobProcessed(), { job: message });
}
catch (e) {
nest_events_1.EmitEvent(new events_1.JobFailed(), { job: message, error: e });
yield this.retry(message, job);

@@ -36,0 +41,0 @@ }

{
"name": "@squareboat/nest-queue",
"version": "0.0.1",
"version": "0.0.2",
"description": " The queue package for your NestJS Applications",

@@ -10,4 +10,4 @@ "main": "dist/index.js",

"nestjs-queue",
"nestjs-queueing",
"nestjs-sqs"
"nestjs-sqs",
"nestjs-backend"
],

@@ -29,4 +29,7 @@ "repository": {

"lint": "eslint 'lib/**/*.ts' --fix",
"prepublish:npm": "npm run build",
"readme:npm": "mv README.md README.git.md && mv README.npm.md README.md",
"readme:git": "mv README.md README.npm.md && mv README.git.md README.md",
"prepublish:npm": "npm run readme:npm && npm run build",
"publish:npm": "npm publish --access public",
"postpublish:npm": "npm run readme:git",
"prepublish:next": "npm run build",

@@ -48,4 +51,5 @@ "publish:next": "npm publish --access public --tag next",

"dependencies": {
"@squareboat/nest-events": "^0.0.5",
"aws-sdk": "^2.782.0"
}
}