Socket
Socket
Sign inDemoInstall

haraka-notes

Package Overview
Dependencies
0
Maintainers
2
Versions
9
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    haraka-notes

Haraka Notes


Version published
Weekly downloads
2K
increased by2.86%
Maintainers
2
Created
Weekly downloads
 

Changelog

Source

[1.1.0] - 2024-05-03

  • set: added 'default' mode. See docs. #

Readme

Source

Build Status Code Climate Code Coverage NPM

haraka-notes

Notes are objects that exist on Haraka connections and transactions. Prior to the release of haraka-notes, notes was just an empty object. Now notes is an empty object with two functions:

Usage

const Notes = require('haraka-notes')
const myNote = new Notes()

myNote.set('some.path', 'a value') // { some: {path: 'a value'}}
myNote.get('some.path') // 'a value'

set (path, value, [onlyIfUndefined])

Sets a note at a dot delimited path to the specified value. The path can be any number of levels deep and any missing objects in the path are autovivified. Perl afficianados, contain yourselves.

set default

If the third set argument is any truthy value, then the property is only set if the current value is undefined. This is useful for applying default values.

connection.transaction.notes.set('queue.wants', 'smtp_forward')

The above command sets connection.transaction.notes.queue.wants to the value 'smtp_forward'.

get (path)

Fetches the value of a note from a given dot delimited path.

connection.transaction.notes.get('queue.wants')

Array Syntax

The get and set functions support passing the path as an array of strings. This might be useful to the type of masochist that has dots in their JS/JSON keys. Example:

connection.transaction.notes.get(['i.do', 'like', 'pa.in'])

Note Path Registry

To reduce the likelihood of namespace collisions in Haraka notes, consider registering the note paths your plugins use in the registry.

Keywords

FAQs

Last updated on 03 May 2024

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

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