mirror of
https://github.com/JuanCanham/HackMyResume.git
synced 2024-11-05 09:56:22 +00:00
Improve PEEK behavior.
This commit is contained in:
parent
d7c83613df
commit
11dd8952d8
2
dist/cli/out.js
vendored
2
dist/cli/out.js
vendored
@ -154,6 +154,8 @@ Output routines for HackMyResume.
|
|||||||
});
|
});
|
||||||
} else if (!evt.error) {
|
} else if (!evt.error) {
|
||||||
return L(M2C(this.msgs.afterPeek.msg, 'yellow'), evt.requested, evt.file);
|
return L(M2C(this.msgs.afterPeek.msg, 'yellow'), evt.requested, evt.file);
|
||||||
|
} else if (evt.error) {
|
||||||
|
return L(chalk.red(evt.error.inner.inner));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
27
dist/verbs/peek.js
vendored
27
dist/verbs/peek.js
vendored
@ -51,10 +51,11 @@ Implementation of the 'peek' verb for HackMyResume.
|
|||||||
return {};
|
return {};
|
||||||
}
|
}
|
||||||
tgt = _peekOne.call(this, t, objPath);
|
tgt = _peekOne.call(this, t, objPath);
|
||||||
if (tgt.fluenterror) {
|
if (tgt.error) {
|
||||||
tgt.quit = opts.assert;
|
tgt.quit = opts.assert;
|
||||||
return this.err(tgt.fluenterror, tgt);
|
this.err(tgt.fluenterror, tgt);
|
||||||
}
|
}
|
||||||
|
return tgt;
|
||||||
}, this);
|
}, this);
|
||||||
if (this.hasError() && !opts.assert) {
|
if (this.hasError() && !opts.assert) {
|
||||||
this.reject(this.errorCode);
|
this.reject(this.errorCode);
|
||||||
@ -68,7 +69,7 @@ Implementation of the 'peek' verb for HackMyResume.
|
|||||||
/** Peek at a single resume, resume section, or resume field. */
|
/** Peek at a single resume, resume section, or resume field. */
|
||||||
|
|
||||||
_peekOne = function(t, objPath) {
|
_peekOne = function(t, objPath) {
|
||||||
var errCode, obj, tgt;
|
var errCode, obj, pkgError, tgt;
|
||||||
this.stat(HMEVENT.beforePeek, {
|
this.stat(HMEVENT.beforePeek, {
|
||||||
file: t,
|
file: t,
|
||||||
target: objPath
|
target: objPath
|
||||||
@ -78,23 +79,27 @@ Implementation of the 'peek' verb for HackMyResume.
|
|||||||
if (!obj.ex) {
|
if (!obj.ex) {
|
||||||
tgt = objPath ? __.get(obj.json, objPath) : obj.json;
|
tgt = objPath ? __.get(obj.json, objPath) : obj.json;
|
||||||
}
|
}
|
||||||
this.stat(HMEVENT.afterPeek, {
|
pkgError = null;
|
||||||
file: t,
|
|
||||||
requested: objPath,
|
|
||||||
target: tgt,
|
|
||||||
error: obj.ex
|
|
||||||
});
|
|
||||||
if (obj.ex) {
|
if (obj.ex) {
|
||||||
errCode = obj.ex.operation === 'parse' ? HMSTATUS.parseError : HMSTATUS.readError;
|
errCode = obj.ex.operation === 'parse' ? HMSTATUS.parseError : HMSTATUS.readError;
|
||||||
if (errCode === HMSTATUS.readError) {
|
if (errCode === HMSTATUS.readError) {
|
||||||
obj.ex.quiet = true;
|
obj.ex.quiet = true;
|
||||||
}
|
}
|
||||||
return {
|
pkgError = {
|
||||||
fluenterror: errCode,
|
fluenterror: errCode,
|
||||||
inner: obj.ex
|
inner: obj.ex
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
return tgt;
|
this.stat(HMEVENT.afterPeek, {
|
||||||
|
file: t,
|
||||||
|
requested: objPath,
|
||||||
|
target: obj.ex ? void 0 : tgt,
|
||||||
|
error: pkgError
|
||||||
|
});
|
||||||
|
return {
|
||||||
|
val: tgt,
|
||||||
|
errpr: pkgError
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
}).call(this);
|
}).call(this);
|
||||||
|
@ -157,12 +157,20 @@ module.exports = class OutputHandler
|
|||||||
|
|
||||||
when HME.afterPeek
|
when HME.afterPeek
|
||||||
sty = if evt.error then 'red' else ( if evt.target != undefined then 'green' else 'yellow' )
|
sty = if evt.error then 'red' else ( if evt.target != undefined then 'green' else 'yellow' )
|
||||||
|
|
||||||
|
# "Peeking at 'someKey' in 'someFile'."
|
||||||
if evt.requested
|
if evt.requested
|
||||||
L(M2C(this.msgs.beforePeek.msg[0], sty), evt.requested, evt.file)
|
L(M2C(this.msgs.beforePeek.msg[0], sty), evt.requested, evt.file)
|
||||||
else
|
else
|
||||||
L(M2C(this.msgs.beforePeek.msg[1], sty), evt.file)
|
L(M2C(this.msgs.beforePeek.msg[1], sty), evt.file)
|
||||||
|
|
||||||
|
# If the key was present, print it
|
||||||
if evt.target != undefined
|
if evt.target != undefined
|
||||||
console.dir( evt.target, { depth: null, colors: true } )
|
console.dir( evt.target, { depth: null, colors: true } )
|
||||||
|
|
||||||
|
# If the key was not present, but no error occurred, print it
|
||||||
else if !evt.error
|
else if !evt.error
|
||||||
L(M2C( this.msgs.afterPeek.msg, 'yellow'), evt.requested, evt.file);
|
L(M2C( this.msgs.afterPeek.msg, 'yellow'), evt.requested, evt.file);
|
||||||
|
|
||||||
|
else if evt.error
|
||||||
|
L( chalk.red( evt.error.inner.inner ));
|
||||||
|
@ -33,9 +33,10 @@ _peek = ( src, dst, opts ) ->
|
|||||||
results = _.map src, ( t ) ->
|
results = _.map src, ( t ) ->
|
||||||
return { } if opts.assert and @hasError()
|
return { } if opts.assert and @hasError()
|
||||||
tgt = _peekOne.call @, t, objPath
|
tgt = _peekOne.call @, t, objPath
|
||||||
if tgt.fluenterror
|
if tgt.error
|
||||||
tgt.quit = opts.assert
|
tgt.quit = opts.assert
|
||||||
@err tgt.fluenterror, tgt
|
@err tgt.fluenterror, tgt
|
||||||
|
tgt
|
||||||
, @
|
, @
|
||||||
|
|
||||||
if @hasError() and !opts.assert
|
if @hasError() and !opts.assert
|
||||||
@ -49,7 +50,7 @@ _peek = ( src, dst, opts ) ->
|
|||||||
###* Peek at a single resume, resume section, or resume field. ###
|
###* Peek at a single resume, resume section, or resume field. ###
|
||||||
_peekOne = ( t, objPath ) ->
|
_peekOne = ( t, objPath ) ->
|
||||||
|
|
||||||
@.stat HMEVENT.beforePeek, { file: t, target: objPath }
|
@stat HMEVENT.beforePeek, { file: t, target: objPath }
|
||||||
|
|
||||||
# Load the input file JSON 1st
|
# Load the input file JSON 1st
|
||||||
obj = safeLoadJSON t
|
obj = safeLoadJSON t
|
||||||
@ -59,18 +60,20 @@ _peekOne = ( t, objPath ) ->
|
|||||||
if !obj.ex
|
if !obj.ex
|
||||||
tgt = if objPath then __.get obj.json, objPath else obj.json;
|
tgt = if objPath then __.get obj.json, objPath else obj.json;
|
||||||
|
|
||||||
# Fire the 'afterPeek' event with collected info
|
|
||||||
@.stat HMEVENT.afterPeek,
|
|
||||||
file: t
|
|
||||||
requested: objPath
|
|
||||||
target: tgt
|
|
||||||
error: obj.ex
|
|
||||||
|
|
||||||
## safeLoadJSON can only return a READ error or a PARSE error
|
## safeLoadJSON can only return a READ error or a PARSE error
|
||||||
|
pkgError = null
|
||||||
if obj.ex
|
if obj.ex
|
||||||
errCode = if obj.ex.operation == 'parse' then HMSTATUS.parseError else HMSTATUS.readError
|
errCode = if obj.ex.operation == 'parse' then HMSTATUS.parseError else HMSTATUS.readError
|
||||||
if errCode == HMSTATUS.readError
|
if errCode == HMSTATUS.readError
|
||||||
obj.ex.quiet = true
|
obj.ex.quiet = true
|
||||||
return fluenterror: errCode, inner: obj.ex
|
pkgError = fluenterror: errCode, inner: obj.ex
|
||||||
|
|
||||||
tgt
|
|
||||||
|
# Fire the 'afterPeek' event with collected info
|
||||||
|
@stat HMEVENT.afterPeek,
|
||||||
|
file: t
|
||||||
|
requested: objPath
|
||||||
|
target: if obj.ex then undefined else tgt
|
||||||
|
error: pkgError
|
||||||
|
|
||||||
|
val: tgt, errpr: pkgError
|
||||||
|
Loading…
Reference in New Issue
Block a user