1 | 'use strict';
|
2 |
|
3 | module.exports = function(dirname) {
|
4 | var path = require('path');
|
5 | var resolve = require('./resolve.js');
|
6 | var appRootPath = resolve(dirname);
|
7 |
|
8 | var publicInterface = {
|
9 | resolve: function(pathToModule) {
|
10 | return path.join(appRootPath, pathToModule);
|
11 | },
|
12 |
|
13 | require: function(pathToModule) {
|
14 | return require(publicInterface.resolve(pathToModule));
|
15 | },
|
16 |
|
17 | toString: function() {
|
18 | return appRootPath;
|
19 | },
|
20 |
|
21 | setPath: function(explicitlySetPath) {
|
22 | appRootPath = path.resolve(explicitlySetPath);
|
23 | publicInterface.path = appRootPath;
|
24 | },
|
25 |
|
26 | path: appRootPath
|
27 | };
|
28 |
|
29 | return publicInterface;
|
30 | }; |
\ | No newline at end of file |