art-config
Version:
A powerful yet simple tool for configuring all your libraries consistently.
32 lines (24 loc) • 792 B
text/coffeescript
{
defineModule
log
merge
mergeInto
deepMerge
} = require 'art-standard-lib'
{BaseObject} = require 'art-class-system'
ConfigRegistry = require './ConfigRegistry'
defineModule module, class Configuration extends BaseObject
: -> ConfigRegistry.registerConfig ,
: ({hotReloaded}) ->
if superclass =
superclass.getConcretePrototypeProperties()
ConfigRegistry.reload() if hotReloaded
super
: ->
: (defaults) ->
mergeInto , deepMerge defaults,
: (config) ->
mergeInto , deepMerge , config