We use a module pattern at famous that allows a package to be both required
within a script file, and executed from the shell. This makes it super
simple to write everything in line in the scripts section of package.json
which is a very clean approach.

I'm going to look into open sourcing this seed today, and would love to
help out with this hooks project if it would be welcomed.
On Aug 6, 2014 9:44 AM, "Sergey Grebnov (Akvelon)" <v-seg...@microsoft.com>
wrote:

> Like this. This should also work faster since we don't need to do files
> lookup (ro parse config.xml), etc .
>
> PS. In new hooks implementation with plugin support you can use the same
> file for different hooks and use ctx.hook to see for what hook event  is
> fired.
>
> -Sergey
> -----Original Message-----
> From: brian.ler...@gmail.com [mailto:brian.ler...@gmail.com] On Behalf Of
> Brian LeRoux
> Sent: Wednesday, August 6, 2014 1:01 AM
> To: dev@cordova.apache.org
> Subject: Re: Can I have all my hooks in one file and be event driven?
>
> +1
>
>
> On Tue, Aug 5, 2014 at 1:52 PM, Michal Mocny <mmo...@chromium.org> wrote:
>
> > I like the idea of hooks as events.
> >
> > Re: publishing to npm, I like to idea of hook publishing, but do we
> > need another "package type"?  Platforms, plugins, and now hooks would
> > all have different process/documentation.  Why not just add hooks
> > support for plugins (I commented as such on the other thread first).
> >
> > -Michal
> >
> >
> > On Tue, Aug 5, 2014 at 4:31 PM, Brian LeRoux <b...@brian.io> wrote:
> >
> > > yes! this
> > >
> > > and related to your earlier thread: maybe hooks themselves should
> > > just be npm modules
> > >
> > > The hook lookups could walk up node_modules and look for modules
> > > with a package.json that have a "cordova" key… maybe this should go
> > > to the other thread
> > >
> > >
> > > On Tue, Aug 5, 2014 at 1:18 PM, Carlos Santana
> > > <csantan...@gmail.com>
> > > wrote:
> > >
> > > > I started to write hooks, and I got lazy :-)
> > > >
> > > > What about having a single hook nodejs script that listen on
> > > > cordova events?
> > > >
> > > > My script will look something like this:
> > > >
> > > > function worklightBeforePrepare(){ console.log('Running Worklight
> > > > worklightBeforePrepare()'); } function worklightAfterCompile(){
> > > > console.log('Running Worklight worklightAfterCompile()'); }
> > > > function worklightHooks(cordova_lib){
> > > > cordova_lib.events.on('before_prepare',worklightBeforePrepare);
> > > > cordova_lib.events.on('after_compile',worklightAfterCompile);
> > > > }
> > > > module.exports = {
> > > > run: worklightHooks
> > > > }
> > > >
> > > >
> > > > Then when cordova cli starts it always runs my hook script:
> > > >
> > > > var script =
> > > > path.join(root,'hook/global/worklight_cordova_hook.js');
> > > > var hook = require(script);
> > > > hook.run(cordova_lib);
> > > >
> > > >
> > > > --
> > > > Carlos Santana
> > > > <csantan...@gmail.com>
> > > >
> > >
> >
>

Reply via email to