#!/usr/bin/env node require("commoner").resolve(function(id) { var context = this; return context.getProvidedP().then(function(idToPath) { // If a module declares its own identifier using @providesModule // then that identifier will be a key in the idToPath object. if (idToPath.hasOwnProperty(id)) return context.readFileP(idToPath[id]); }); }, function(id) { // Otherwise assume the identifier maps directly to a filesystem path. return this.readModuleP(id); }).process(function(id, source) { // As a simple example of a processing step, make sure the file ends // with exactly one newline character. return source.replace(/\s+$/m, "\n"); });