🚀 Big News: Socket Acquires Coana to Bring Reachability Analysis to Every Appsec Team.Learn more
Socket
Sign inDemoInstall
Socket

github.com/10clouds/cyclejs-cookie

Package Overview
Dependencies
Alerts
File Explorer
Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

github.com/10clouds/cyclejs-cookie

v0.0.0-20160828192938-7a529c105b41
Source
Go
Version published
Created
Source

Cycle.js Cookie Driver, based on cookie_js library.

Install

$ npm install --save cyclejs-cookie xstream

Usage

import xs from 'xstream';
import {run} from '@cycle/xstream-run';
import {makeCookieDriver} from 'cyclejs-cookie';

function main({cookie}) {
    const cookieChangeSource$ = xs.periodic(1000);

    const cookieValue$ = cookie.get('MyCookie');

    // just for print debug
    const noop = () => undefined;
    cookieValue$.debug('cookie current value').addListener({
        next: noop,
        error: noop,
        complete: noop,
    });

    return {
        cookie: cookieChangeSource$.map((counter) => ({
            key: 'MyCookie',
            value: 'cookieValue-' + counter,
            settings: {
                expires: 30, // expiring in 30 days
            }
        }))
    };
};

run(main, {
    cookie: makeCookieDriver()
});

Api

Library export only one function: makeCookieDriver

makeCookieDriver(options = {}}

Instantiates an new cookie driver function (cookieDriver(sink$)).

options

  • decode - set cookie.decode attribute, check cookie_js documentation for details.

cookieDriver(sink$)

$sink - driver assumes that sink$ is stream of cookie setter objects. it interprete cookie setter object and set new cookie (or delete if cookie value is undefined).

Returning cookies observables functions object {get(), all()}.

  • get(cookieName) - returning stream of cookie cookieName changes, initiated by current cookie value
  • all() - returning stream of all cookies object changes, initiated by starting cookies object

Driver assumes following objects on it $sink:

{
  key: 'cookieName',
  value: 'cookieValue', // if undefined, cookie will be deleted
  options: {..}
}

Options is cookie settings, like expires time. By cookie_js documentation:

The following fields can be added to the mentioned object:

keyvaluedefault value
expiresEither a number containing the days until the expiry, a date in the GMTString format or a date object.Expires when the browser is closed.
domainA string that specifies the domain that can access the cookie.The current domain.
pathA string that limits the access of the cookie to that path.The current path.
secureA boolean indicating whether the cookie shall only be accessable over a secure connection or not.false

FAQs

Package last updated on 28 Aug 2016

Did you know?

Socket

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