Skip to content

Commit 46685f8

Browse files
committed
feat: add adminjs
1 parent 425e99a commit 46685f8

File tree

60 files changed

+1013
-42
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

60 files changed

+1013
-42
lines changed
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
/**
2+
* Exports object that contains names of arguments as a key and their configuration objects as a value
3+
*
4+
* @example
5+
* module.exports = {
6+
* argumentName: {
7+
* desc: 'Description for the argument',
8+
* required: false,
9+
* optional: true,
10+
* type: String || Number || Array || Object,
11+
* defaults: 'Default value for this argument',
12+
* banner: 'String to show on usage notes'
13+
* }
14+
* };
15+
*/
16+
17+
module.exports = {};
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
{
2+
"general": {
3+
"@adminjs/express": "4.1.3",
4+
"@adminjs/mongoose": "2.0.4",
5+
"@adminjs/nestjs": "4.0.1",
6+
"@adminjs/passwords": "2.0.2",
7+
"adminjs": "5.10.4"
8+
},
9+
"dev": {}
10+
}
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
const dependenciesObj = require('./dependencies.json');
2+
3+
function getStableDep(dependenciesObj, versions) {
4+
const depArray = Object.entries(dependenciesObj[versions]).map(entriesArr => {
5+
return entriesArr.join('@');
6+
});
7+
8+
return depArray.join(' ');
9+
}
10+
11+
module.exports = function() {
12+
return Object.keys(dependenciesObj).reduce((acc, versions) => {
13+
acc[versions] = getStableDep(dependenciesObj, versions);
14+
15+
return acc;
16+
}, {});
17+
};

generators/admin/index.js

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
const Generator = require('yeoman-generator');
2+
3+
const generatorArguments = require('./arguments');
4+
const generatorOptions = require('./options');
5+
const generatorSteps = require('./steps');
6+
7+
module.exports = class AdminGenerator extends Generator {
8+
constructor(args, options) {
9+
super(args, options);
10+
11+
Object.keys(generatorArguments).forEach(key => {
12+
return this.argument(key, generatorArguments[key]);
13+
});
14+
Object.keys(generatorOptions).forEach(key => {
15+
return this.option(key, generatorOptions[key]);
16+
});
17+
}
18+
19+
get configuring() {
20+
return generatorSteps.configuring;
21+
}
22+
23+
get conflicts() {
24+
return generatorSteps.conflicts;
25+
}
26+
27+
get end() {
28+
return generatorSteps.end;
29+
}
30+
31+
get initializing() {
32+
return generatorSteps.init;
33+
}
34+
35+
get install() {
36+
return generatorSteps.install;
37+
}
38+
39+
get prompting() {
40+
return generatorSteps.prompting;
41+
}
42+
43+
get writing() {
44+
return generatorSteps.writing;
45+
}
46+
};

generators/admin/options/index.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
module.exports = {};
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
module.exports = {};
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
/**
2+
* Step 3
3+
* Saving configurations and configure the project
4+
*/
5+
6+
module.exports = function() {};
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
/**
2+
* Step 6
3+
* Where conflicts are handled (used internally)
4+
*/
5+
6+
module.exports = function() {
7+
this.conflicter.force = true
8+
};

generators/admin/steps/end.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
/**
2+
* Step 8
3+
* Called last, cleanup, say good bye, etc
4+
*/
5+
6+
module.exports = function() {};

generators/admin/steps/index.js

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
const writing = require('./writing');
2+
const prompting = require('./prompting');
3+
const install = require('./install');
4+
const init = require('./init');
5+
const end = require('./end');
6+
const conflicts = require('./conflicts');
7+
const configuring = require('./configuring');
8+
9+
module.exports = {
10+
prompting,
11+
writing,
12+
install,
13+
init,
14+
end,
15+
conflicts,
16+
configuring,
17+
};

0 commit comments

Comments
 (0)