Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

@sms/plugin-audit

Interfaces

AuditOptions

Defined in: packages/plugins/audit/src/index.ts:23

Properties

contextOf?
optional contextOf?: (req) => 
  | OpContext
| Promise<OpContext>;

Defined in: packages/plugins/audit/src/index.ts:25

Who is calling (same shape as the ORM’s). Default: anonymous {}.

Parameters
ParameterType
reqRouteRequest
Returns

| OpContext | Promise<OpContext>

group?
optional group?: string;

Defined in: packages/plugins/audit/src/index.ts:29

rbac group to grant access to the audit models (only when the access/rule points exist).

prefix?
optional prefix?: string;

Defined in: packages/plugins/audit/src/index.ts:27

Route prefix. Default /api/audit.


AuditService

Defined in: packages/plugins/audit/src/service.ts:25

@sms/plugin-audit/contract — the audit key, the audit-track point, the audit model names and the AuditService / AuditTrack types plus their validators. No manifest, no plugin body (createAuditPlugin lives in index.ts).

Methods

post()
post(
   model, 
   id, 
   opts, 
   ctx
): Promise<number>;

Defined in: packages/plugins/audit/src/service.ts:27

Post a message on model#id; returns the message id. The record must exist and be visible to ctx.

Parameters
ParameterType
modelstring
idnumber
optsPostOptions
ctxOpContext
Returns

Promise<number>


AuditTrack

Defined in: packages/plugins/audit/src/tracking.ts:22

Point audit-track: log changes of these fields of model. Several contributions may target one model.

Properties

fields
fields: string[];

Defined in: packages/plugins/audit/src/tracking.ts:24

model
model: string;

Defined in: packages/plugins/audit/src/tracking.ts:23


PostOptions

Defined in: packages/plugins/audit/src/service.ts:15

@sms/plugin-audit/contract — the audit key, the audit-track point, the audit model names and the AuditService / AuditTrack types plus their validators. No manifest, no plugin body (createAuditPlugin lives in index.ts).

Properties

author?
optional author?: number | null;

Defined in: packages/plugins/audit/src/service.ts:22

Author user id; defaults to ctx.userId.

body?
optional body?: string;

Defined in: packages/plugins/audit/src/service.ts:16

kind?
optional kind?: MessageKind;

Defined in: packages/plugins/audit/src/service.ts:17

snapshot?
optional snapshot?: Values;

Defined in: packages/plugins/audit/src/service.ts:20

Internal: tracked values after this message.

tracking?
optional tracking?: TrackingEntry[];

Defined in: packages/plugins/audit/src/service.ts:18


TrackingEntry

Defined in: packages/plugins/audit/src/service.ts:8

@sms/plugin-audit/contract — the audit key, the audit-track point, the audit model names and the AuditService / AuditTrack types plus their validators. No manifest, no plugin body (createAuditPlugin lives in index.ts).

Properties

field
field: string;

Defined in: packages/plugins/audit/src/service.ts:9

from
from: string | null;

Defined in: packages/plugins/audit/src/service.ts:11

label
label: string;

Defined in: packages/plugins/audit/src/service.ts:10

to
to: string | null;

Defined in: packages/plugins/audit/src/service.ts:12

Type Aliases

MessageKind

type MessageKind = "comment" | "note" | "log" | "tracking";

Defined in: packages/plugins/audit/src/service.ts:6

@sms/plugin-audit/contract — the audit key, the audit-track point, the audit model names and the AuditService / AuditTrack types plus their validators. No manifest, no plugin body (createAuditPlugin lives in index.ts).

Variables

ACTIVITY_KINDS

const ACTIVITY_KINDS: readonly ["todo", "call", "meeting", "email"];

Defined in: packages/plugins/audit/src/models.ts:11


ACTIVITY_MODEL

const ACTIVITY_MODEL: "audit_activity" = 'audit_activity';

Defined in: packages/plugins/audit/src/models.ts:5


AUDIT_ACTIVITY

const AUDIT_ACTIVITY: ModelSpec;

Defined in: packages/plugins/audit/src/models.ts:37


AUDIT_FOLLOWER

const AUDIT_FOLLOWER: ModelSpec;

Defined in: packages/plugins/audit/src/models.ts:59


AUDIT_KEY

const AUDIT_KEY: "audit" = 'audit';

Defined in: packages/plugins/audit/src/contract.ts:21

Key under which the audit plugin provides AuditService.


AUDIT_MESSAGE

const AUDIT_MESSAGE: ModelSpec;

Defined in: packages/plugins/audit/src/models.ts:15


auditPlugin

const auditPlugin: SystemPlugin;

Defined in: packages/plugins/audit/src/index.ts:87


FOLLOWER_MODEL

const FOLLOWER_MODEL: "audit_follower" = 'audit_follower';

Defined in: packages/plugins/audit/src/models.ts:6


MESSAGE_MODEL

const MESSAGE_MODEL: "audit_message" = 'audit_message';

Defined in: packages/plugins/audit/src/models.ts:4


TRACK_POINT

const TRACK_POINT: "audit-track" = 'audit-track';

Defined in: packages/plugins/audit/src/tracking.ts:19


USER_KINDS

const USER_KINDS: readonly ["comment", "note"];

Defined in: packages/plugins/audit/src/models.ts:9

Kinds a user may post through the API; log and tracking are system-generated.

Functions

createAuditPlugin()

function createAuditPlugin(opts?): SystemPlugin;

Defined in: packages/plugins/audit/src/index.ts:38

Parameters

ParameterType
optsAuditOptions

Returns

SystemPlugin


labelOf()

function labelOf(f, v): string | null;

Defined in: packages/plugins/audit/src/tracking.ts:53

Human label of a value as stored in a snapshot.

Parameters

ParameterType
fFieldSpec
vunknown

Returns

string | null


validateAuditTrack()

function validateAuditTrack(item): void;

Defined in: packages/plugins/audit/src/tracking.ts:27

Parameters

ParameterType
itemunknown

Returns

void