All notable changes to this project will be documented in this file. See standard-version for commit guidelines.
1.16.0 (2018-03-31)
- sendError: don't send undefined to firebase (c808fc3)
- disable "config" listener (d8d3c14)
1.15.3 (2018-03-30)
1.15.2 (2018-03-26)
- response: Data is optional, so it must be null if undefined (2d73566)
1.15.1 (2018-03-25)
- Add "patch" and "cleanDB" scripts (9fe5f7f)
1.15.0 (2018-03-24)
- eventForwarder: forwarded event prefix must be a string (e9231bf)
- response: EventEmitter is not Firebase (4529cba)
- build: add standard-version for releases (b485936)
- Allow presenceSystem to be created more than once (53bffe1)
- breaking: getCID must update to {options} (75cc3c1)
- check for variables, not methods (f252688)
- Don't forward 'delete' (3f7f0e9)
- Ensure CID's are safe (everywhere) (e973b66)
- Filepath is now pointed correctly in utils.getCID (27bf625)
- Initialize only once per creation (3ad2c31)
- Initialize should be using require, instead of passing the module (415978a)
- match event names to standards (72755ba)
- on('message/type') is now properly lower-cased (0a4ea01)
- only care about initial state of afk and offline if they're true (dd89ae5)
- plugin.emit('config') (d27f2f4)
- remove logging (a50620c)
- sendText should use sendMessage (2dccbe4)
- update PresenceSystem export to match its new class status (fc5cbb5)
- Use utils.getSafeObject in presenceSystem (0a1284d)
- visibility/naming of presence system internals (930d999)
- getReply: Properly set targets for replies (061a054)
- messaging: Only apply CID to outgoing (e68b94a)
- plugin: Options are optional (f254da5)
- plugin: Responses weren't tagged 'internal' (2206ffe)
- convert PresenceSystem to a factory function (a9ddc46)
- Actually add the test file perhaps (6e78639)
- add CircleCI integration (7328f87)
- Add database util files (8661959)
- Add plugin classes, that auto loads defaults (b5451b7)
- Add singular "status" key (4acd052)
- afk and offline events to listen for from PresenceSystem (e10af46)
- Allow presence to generate a (temporary) CID for you (ab12394)
- cid is required in subsystems (50730fb)
- Config service (d6281d0)
- configuration event for all modules (aef8bc0)
- Connector.on('config') (5fe8198)
- convert presence system to EventEmitter class (42afc75)
- database move function (30181be)
- Emit messages directed to the plugins CID (6c4acb1)
- event forwarding (with tests!) (9e2ccae)
- Expose eventForwarder (c319f74)
- Extract utils.safeString so you can prep any key, not just object keys (006868d)
- getCID now uses "options", added options.cidPath (9fad092)
- instanceName and listenMode aren't required (345db3a)
- isUnsafe(string) (18e516a)
- messaging system (1b162ce)
- plugin.on('message-in/out') (b230555)
- Presence now emits general messages (6c5575a)
- Support "options.dir" in plugins (56811a6)
- util.getReply, from existing message (c4dc009)
- util.initialize, for FirebaseAdmin (8376912)
- utils for presence system and ensuring required options (a6f1f0d)
- build: add standard-version for releases (b485936)
- eventForwarder: Exclude events (bc86935)
- getReply: Include optional data to reply (5f11636)
- messaging: Apply uid to outgoing messages (befc95a)
- plugin: Send internal messages (3787e25)
- plugin: sendError's to database (b850678)
- presence: setName (cf8b241)
- utils.getCID (35aa1a9)
- utils.getCID(root) to get a key without persistence (628bf79)
- utils.getSafeObject (d961511)
- Webhook service (92ec77b)
- Plugins will now need to provide their own CID to PresenceSystem and MessagingSystem. If they
do not have a CID and want to use a temporary CID, they'll need to call
Utils.getCID()
on their own and use that. - consumers will need to remove the 'new' keyword from their instantiation of PresenceSystem.