AdonisJS

Des tickets de support natifs TypeScript pour AdonisJS

Modeles Lucid ORM, fournisseurs de services et rendu Inertia. Escalated s'integre avec AdonisJS v6 comme un package entierement type avec un support TypeScript de premiere classe.

Terminal
$ npm install @escalated-dev/escalated-adonis

Concu pour AdonisJS

Pourquoi Escalated pour AdonisJS

Escalated est concu pour ressembler a un package natif AdonisJS, pas une integration ajoutee.

Modeles Lucid ORM

Tickets, reponses, tags et activites sont des modeles Lucid. Utilisez les relations, scopes et query builder avec une inference de type TypeScript complete.

Fournisseurs de services

Enregistrez Escalated via les fournisseurs de services AdonisJS. Configuration, bindings et logique de demarrage suivent les patterns standard AdonisJS.

TypeScript natif

Chaque modele, controleur et service est ecrit en TypeScript. Securite de type complete, autocompletion et verifications a la compilation dans tout le package.

Commencer

Comment ca marche

Trois etapes pour un systeme de support complet dans votre application AdonisJS.

1

Installez le package

npm install @escalated-dev/escalated-adonis
2

Configurez le fournisseur

node ace configure @escalated-dev/escalated-adonis
3

Montez les routes

Enregistrez les routes Escalated dans votre start/routes.ts et c'est pret. Gestion complete des tickets avec des controleurs type-safe.

Fonctionnalites

Tout ce dont vous avez besoin

Escalated s'integre avec l'ensemble de l'ecosysteme AdonisJS par defaut.

Relations Lucid

Les tickets appartiennent aux utilisateurs, ont de nombreuses reponses et utilisent des relations polymorphiques. Construction de requetes type-safe et eager loading integres.

Integration file Bull

Les notifications email et les envois de webhooks utilisent le systeme de files d'attente integre d'AdonisJS. Traitement en arriere-plan avec logique de retry et monitoring.

Autorisation Bouncer

L'autorisation s'integre avec AdonisJS Bouncer. Definissez des capacites et politiques pour controler qui peut voir, repondre et gerer les tickets.

Emetteur d'evenements

Chaque action de ticket emet des evenements types. Ecoutez TicketCreated, ReplyAdded et StatusChanged avec une securite de type complete.

Middleware HTTP

Appliquez votre middleware existant aux routes Escalated. Authentification, limitation de debit et portee des tenants fonctionnent naturellement dans le pipeline middleware AdonisJS.

Helpers de test Japa

Livre avec des helpers de test pour Japa. Creez des tickets, reponses et utilisateurs dans votre suite de tests avec des fonctions factory typees.

Integration

Natif a AdonisJS

Patterns standard AdonisJS. Pas de nouvelles abstractions a apprendre.

TypeScript
// start/routes.ts
import router from '@adonisjs/core/services/router'
import { escalatedRoutes } from '@escalated-dev/escalated-adonis'

escalatedRoutes(router)

// app/models/user.ts
import { compose } from '@adonisjs/core/helpers'
import { HasTickets } from '@escalated-dev/escalated-adonis'

export default class User extends compose(BaseModel, HasTickets) {}

// Anywhere in your application
const ticket = await user.related('tickets').create({
  subject: 'Need help with billing',
  priority: 'high',
})

await ticket.related('replies').create({
  body: "We've updated your invoice.",
  userId: agent.id,
})

Pret a ajouter des tickets de support a votre application AdonisJS ?

Escalated est open source et gratuit pour toujours. Commencez avec la documentation ou explorez le code source sur GitHub.