New Research: Supply Chain Attack on Axios Pulls Malicious Dependency from npm.Details →
Socket
Book a DemoSign in
Socket

doom

Package Overview
Dependencies
Maintainers
1
Versions
6
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

doom

Functional DOM processing abstractions through generic functions.

latest
Source
npmnpm
Version
0.4.6
Version published
Maintainers
1
Created
Source

Moros

Moros is a functional and modular DOM processing library. It strives to keep the overhead minimal, be overtly composable and a joy to use! Oh, and of course, be insanely fast when working with NodeLists.

Example

// You can either specify query/event engines for compatibility,
// or use the browser's default:
var queryEngine = require('moros/bridge/sizzle')
var eventEngine = require('moros/bridge/bean')
var moros = require('moros')(queryEngine, eventEngine)

// Everything is curried, so it's easy to create helper functions:
var ignoreClick = moros.listen('click', function(ev){ ev.preventDefault() })
var hide = moros.setStyle('display', 'none')
var show = moros.setStyle('display', 'block')

// Parameters are ordered as to make most out of currying:
ignoreClick(moros.query('a[href^="#"]'))

hide(moros.query('.hidden'))
show(moros.query('.active'))

Installation

Moros is distributed as a CommonJS package through NPM, if you're already using CommonJS modules in your application (and you should!), just do a single command install:

$ npm install moros

Otherwise, you'll need to download the latest release and include both browserify.js and moros.js in your application:

( ... )
<script src="browserify.js"></script>
<script src="moros.js"></script>
<script src="you-app.js"></script>
</body>
( ... )

Supported platforms

Moros depend on ES5 features, but those can be easily shimmable if you need to support older browsers. Loading es5-shim does everything you need.

Also note that Moros does not ship with any particular selector engine shim, or event manager shim, it uses the browser's default implementation, instead, and allows you to specify a library if you need to target older browsers (IE8-). The bridge/ folder contains all you need to use the most popular options in libraries for CSS selector engines and events.

Tests

To run tests, you'll need to build the test specs. You can use slake test for an one-shot test building, or slake test:continuous for continuous rebuilding, which is nicer for hacking on Moros' source itself.

For testing integration with vendor libraries, you'll need to run slake deps:vendor to download the vendor libraries first, then build the test files.

Licence

MIT. i.e.: do whatever you please.

Keywords

DOM

FAQs

Package last updated on 04 May 2013

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