0.5.0 • Published 7 years ago

kebakaran v0.5.0

Weekly downloads
24
License
ISC
Repository
github
Last release
7 years ago

kebakaran Build Status Coverage Status npm version

high level utilities for firebase interaction

FirebaseStruct

import Firebase from 'firebase';
import { FirebaseStruct } from 'kebakaran';

const userId = 'foo';

const struct = new FirebaseStruct({
  name: new Firebase(`.../users/${userId}/name`),
  isOnline: new Firebase(`.../presence/${userId}`),
});

struct.on('value', value => {
  // value === { name: ... , isOnline: ... }
});

FirebaseList

import Firebase from 'firebase';
import { FirebaseList, FirebaseStruct } from 'kebakaran';

const list = new FirebaseList(new Firebase('.../top-users'), key => new FirebaseStruct({
  name: new Firebase(`.../users/${key}/name`),
  isOnline: new Firebase(`.../presence/${key}`),
}));

list.on('value', value => {
  // value === [ { id: ... , name: ... , isOnline: ... } ]
});

FirebaseStream

import Firebase from 'firebase';
import { put } from 'redux-saga';
import { FirebaseStream, FirebaseList, FirebaseStruct } from 'kebakaran';

export default function* topUsersSaga() {

  const list = new FirebaseList(new Firebase('.../top-users'), key => new FirebaseStruct({
    name: new Firebase(`.../users/${key}/name`),
    isOnline: new Firebase(`.../presence/${key}`),
  }));

  const stream = new FirebaseStream(list);

  try {
    while (true) {
      const users = yield stream.next();
      yield put({
        type: 'TOP_USERS',
        users
      });
    }
  } finally {
    stream.close();
    list.close();
  }
}
0.5.0

7 years ago

0.4.3

9 years ago

0.4.2

9 years ago

0.4.1

9 years ago

0.4.0

9 years ago

0.3.1

10 years ago

0.3.0

10 years ago

0.2.4

10 years ago

0.2.3

10 years ago

0.2.2

10 years ago

0.2.1

10 years ago

0.2.0

10 years ago

0.1.14

10 years ago

0.1.13

10 years ago

0.1.12

10 years ago

0.1.11

10 years ago

0.1.10

10 years ago

0.1.9

10 years ago

0.1.8

10 years ago

0.1.7

10 years ago

0.1.6

10 years ago

0.1.5

10 years ago

0.1.4

10 years ago

0.1.3

10 years ago

0.1.2

10 years ago

0.1.1

10 years ago

0.1.0

10 years ago