factory again

This commit is contained in:
Karsten Hassel 2021-07-05 19:57:04 +02:00
parent 209e049893
commit 9aa0af4f9c
46 changed files with 77 additions and 142 deletions

View File

@ -3,25 +3,22 @@
* By Rodrigo Ramírez Norambuena https://rodrigoramirez.com * By Rodrigo Ramírez Norambuena https://rodrigoramirez.com
* MIT Licensed. * MIT Licensed.
*/ */
let config = { exports.configFactory = function (options) {
port: 8080, return Object.assign({
ipWhitelist: ["127.0.0.1", "::ffff:127.0.0.1", "::1"], port: 8080,
ipWhitelist: ["127.0.0.1", "::ffff:127.0.0.1", "::1"],
language: "en", language: "en",
timeFormat: 24, timeFormat: 24,
units: "metric", units: "metric",
electronOptions: { electronOptions: {
webPreferences: { webPreferences: {
nodeIntegration: true, nodeIntegration: true,
enableRemoteModule: true, enableRemoteModule: true,
contextIsolation: false contextIsolation: false
} }
}, },
modules: [] modules: []
}, options);
}; };
/*************** DO NOT EDIT THE LINE BELOW ***************/
if (typeof module !== "undefined") {
module.exports = config;
}

View File

@ -3,8 +3,9 @@
* By Rodrigo Ramírez Norambuena https://rodrigoramirez.com * By Rodrigo Ramírez Norambuena https://rodrigoramirez.com
* MIT Licensed. * MIT Licensed.
*/ */
let config = require("./default.js"); const config = require("./default.js").configFactory({
config.ipWhitelist = []; ipWhitelist: []
});
/*************** DO NOT EDIT THE LINE BELOW ***************/ /*************** DO NOT EDIT THE LINE BELOW ***************/
if (typeof module !== "undefined") { if (typeof module !== "undefined") {

11
tests/configs/env.js Normal file
View File

@ -0,0 +1,11 @@
/* Magic Mirror Test config sample environment
*
* By Rodrigo Ramírez Norambuena https://rodrigoramirez.com
* MIT Licensed.
*/
const config = require("./default.js").configFactory();
/*************** DO NOT EDIT THE LINE BELOW ***************/
if (typeof module !== "undefined") {
module.exports = config;
}

View File

@ -3,9 +3,7 @@
* By rejas * By rejas
* MIT Licensed. * MIT Licensed.
*/ */
const configFactory = require("../../default.js"); const config = require("../../default.js").configFactory({
const config = configFacory({
modules: [ modules: [
{ {
module: "alert", module: "alert",

View File

@ -3,9 +3,7 @@
* By Rodrigo Ramírez Norambuena https://rodrigoramirez.com * By Rodrigo Ramírez Norambuena https://rodrigoramirez.com
* MIT Licensed. * MIT Licensed.
*/ */
const configFactory = require("../../default.js"); const config = require("../../default.js").configFactory({
const config = configFacory({
timeFormat: 12, timeFormat: 12,
modules: [ modules: [

View File

@ -3,9 +3,7 @@
* By Rodrigo Ramírez Norambuena https://rodrigoramirez.com * By Rodrigo Ramírez Norambuena https://rodrigoramirez.com
* MIT Licensed. * MIT Licensed.
*/ */
const configFactory = require("../../default.js"); const config = require("../../default.js").configFactory({
const config = configFacory({
timeFormat: 12, timeFormat: 12,
modules: [ modules: [

View File

@ -3,9 +3,7 @@
* By Rodrigo Ramírez Norambuena https://rodrigoramirez.com * By Rodrigo Ramírez Norambuena https://rodrigoramirez.com
* MIT Licensed. * MIT Licensed.
*/ */
const configFactory = require("../../default.js"); const config = require("../../default.js").configFactory({
const config = configFacory({
timeFormat: 12, timeFormat: 12,
modules: [ modules: [

View File

@ -3,9 +3,7 @@
* By Rejas * By Rejas
* MIT Licensed. * MIT Licensed.
*/ */
const configFactory = require("../../default.js"); const config = require("../../default.js").configFactory({
const config = configFacory({
timeFormat: 12, timeFormat: 12,
modules: [ modules: [

View File

@ -3,9 +3,7 @@
* By Rodrigo Ramírez Norambuena https://rodrigoramirez.com * By Rodrigo Ramírez Norambuena https://rodrigoramirez.com
* MIT Licensed. * MIT Licensed.
*/ */
const configFactory = require("../../default.js"); const config = require("../../default.js").configFactory({
const config = configFacory({
timeFormat: 12, timeFormat: 12,
modules: [ modules: [

View File

@ -5,9 +5,7 @@
* By Rodrigo Ramírez Norambuena https://rodrigoramirez.com * By Rodrigo Ramírez Norambuena https://rodrigoramirez.com
* MIT Licensed. * MIT Licensed.
*/ */
const configFactory = require("../../default.js"); const config = require("../../default.js").configFactory({
const config = configFacory({
timeFormat: 12, timeFormat: 12,
modules: [ modules: [

View File

@ -3,9 +3,7 @@
* By Rodrigo Ramírez Norambuena https://rodrigoramirez.com * By Rodrigo Ramírez Norambuena https://rodrigoramirez.com
* MIT Licensed. * MIT Licensed.
*/ */
const configFactory = require("../../default.js"); const config = require("../../default.js").configFactory({
const config = configFacory({
timeFormat: 12, timeFormat: 12,
modules: [ modules: [

View File

@ -3,9 +3,7 @@
* By Rejas * By Rejas
* MIT Licensed. * MIT Licensed.
*/ */
const configFactory = require("../../default.js"); const config = require("../../default.js").configFactory({
const config = configFacory({
timeFormat: 12, timeFormat: 12,
modules: [ modules: [

View File

@ -3,9 +3,7 @@
* By Sergey Morozov * By Sergey Morozov
* MIT Licensed. * MIT Licensed.
*/ */
const configFactory = require("../../default.js"); const config = require("../../default.js").configFactory({
const config = configFacory({
timeFormat: 12, timeFormat: 12,
modules: [ modules: [

View File

@ -3,9 +3,7 @@
* By Sergey Morozov * By Sergey Morozov
* MIT Licensed. * MIT Licensed.
*/ */
const configFactory = require("../../default.js"); const config = require("../../default.js").configFactory({
const config = configFacory({
modules: [ modules: [
{ {
module: "clock", module: "clock",

View File

@ -2,9 +2,7 @@
* *
* MIT Licensed. * MIT Licensed.
*/ */
const configFactory = require("../../default.js"); const config = require("../../default.js").configFactory({
const config = configFacory({
modules: [ modules: [
{ {
module: "clock", module: "clock",

View File

@ -3,9 +3,7 @@
* By Rodrigo Ramírez Norambuena https://rodrigoramirez.com * By Rodrigo Ramírez Norambuena https://rodrigoramirez.com
* MIT Licensed. * MIT Licensed.
*/ */
const configFactory = require("../../default.js"); const config = require("../../default.js").configFactory({
const config = configFacory({
timeFormat: 12, timeFormat: 12,
modules: [ modules: [

View File

@ -3,9 +3,7 @@
* By Sergey Morozov * By Sergey Morozov
* MIT Licensed. * MIT Licensed.
*/ */
const configFactory = require("../../default.js"); const config = require("../../default.js").configFactory({
const config = configFacory({
timeFormat: 12, timeFormat: 12,
modules: [ modules: [

View File

@ -3,9 +3,7 @@
* By Johan Hammar * By Johan Hammar
* MIT Licensed. * MIT Licensed.
*/ */
const configFactory = require("../../default.js"); const config = require("../../default.js").configFactory({
const config = configFacory({
timeFormat: 12, timeFormat: 12,
modules: [ modules: [

View File

@ -3,9 +3,7 @@
* By Rodrigo Ramírez Norambuena https://rodrigoramirez.com * By Rodrigo Ramírez Norambuena https://rodrigoramirez.com
* MIT Licensed. * MIT Licensed.
*/ */
const configFactory = require("../../../default.js"); const config = require("../../../default.js").configFactory({
const config = configFacory({
language: "es", language: "es",
timeFormat: 12, timeFormat: 12,

View File

@ -3,9 +3,7 @@
* By Rodrigo Ramírez Norambuena https://rodrigoramirez.com * By Rodrigo Ramírez Norambuena https://rodrigoramirez.com
* MIT Licensed. * MIT Licensed.
*/ */
const configFactory = require("../../../default.js"); const config = require("../../../default.js").configFactory({
const config = configFacory({
language: "es", language: "es",
modules: [ modules: [

View File

@ -3,9 +3,7 @@
* By Rodrigo Ramírez Norambuena https://rodrigoramirez.com * By Rodrigo Ramírez Norambuena https://rodrigoramirez.com
* MIT Licensed. * MIT Licensed.
*/ */
const configFactory = require("../../../default.js"); const config = require("../../../default.js").configFactory({
const config = configFacory({
language: "es", language: "es",
timeFormat: 12, timeFormat: 12,

View File

@ -4,9 +4,7 @@
* By Rodrigo Ramírez Norambuena https://rodrigoramirez.com * By Rodrigo Ramírez Norambuena https://rodrigoramirez.com
* MIT Licensed. * MIT Licensed.
*/ */
const configFactory = require("../../../default.js"); const config = require("../../../default.js").configFactory({
const config = configFacory({
language: "es", language: "es",
timeFormat: 12, timeFormat: 12,

View File

@ -3,9 +3,7 @@
* By Rodrigo Ramírez Norambuena https://rodrigoramirez.com * By Rodrigo Ramírez Norambuena https://rodrigoramirez.com
* MIT Licensed. * MIT Licensed.
*/ */
const configFactory = require("../../default.js"); const config = require("../../default.js").configFactory({
const config = configFacory({
timeFormat: 12, timeFormat: 12,
modules: [ modules: [

View File

@ -3,9 +3,7 @@
* By Rejas * By Rejas
* MIT Licensed. * MIT Licensed.
*/ */
const configFactory = require("../../default.js"); const config = require("../../default.js").configFactory({
const config = configFacory({
timeFormat: 12, timeFormat: 12,
modules: [ modules: [

View File

@ -3,9 +3,7 @@
* By Rodrigo Ramírez Norambuena https://rodrigoramirez.com * By Rodrigo Ramírez Norambuena https://rodrigoramirez.com
* MIT Licensed. * MIT Licensed.
*/ */
const configFactory = require("../../default.js"); const config = require("../../default.js").configFactory({
const config = configFacory({
timeFormat: 12, timeFormat: 12,
modules: [ modules: [

View File

@ -3,9 +3,7 @@
* By Rodrigo Ramírez Norambuena https://rodrigoramirez.com * By Rodrigo Ramírez Norambuena https://rodrigoramirez.com
* MIT Licensed. * MIT Licensed.
*/ */
const configFactory = require("../../default.js"); const config = require("../../default.js").configFactory({
const config = configFacory({
timeFormat: 12, timeFormat: 12,
modules: [ modules: [

View File

@ -3,9 +3,7 @@
* By Rejas * By Rejas
* MIT Licensed. * MIT Licensed.
*/ */
const configFactory = require("../default.js"); let config = require("../default.js").configFactory({
let config = configFacory({
modules: [ modules: [
{ {
module: "helloworld", module: "helloworld",

View File

@ -3,9 +3,7 @@
* By Rodrigo Ramírez Norambuena https://rodrigoramirez.com * By Rodrigo Ramírez Norambuena https://rodrigoramirez.com
* MIT Licensed. * MIT Licensed.
*/ */
const configFactory = require("../../default.js"); const config = require("../../default.js").configFactory({
const config = configFacory({
modules: [ modules: [
{ {
module: "helloworld", module: "helloworld",

View File

@ -3,9 +3,7 @@
* By Rodrigo Ramírez Norambuena https://rodrigoramirez.com * By Rodrigo Ramírez Norambuena https://rodrigoramirez.com
* MIT Licensed. * MIT Licensed.
*/ */
const configFactory = require("../../default.js"); const config = require("../../default.js").configFactory({
const config = configFacory({
modules: [ modules: [
{ {
module: "helloworld", module: "helloworld",

View File

@ -3,9 +3,7 @@
* By Rodrigo Ramírez Norambuena https://rodrigoramirez.com * By Rodrigo Ramírez Norambuena https://rodrigoramirez.com
* MIT Licensed. * MIT Licensed.
*/ */
const configFactory = require("../../default.js"); const config = require("../../default.js").configFactory({
const config = configFacory({
timeFormat: 12, timeFormat: 12,
modules: [ modules: [

View File

@ -2,9 +2,7 @@
* *
* MIT Licensed. * MIT Licensed.
*/ */
const configFactory = require("../../default.js"); const config = require("../../default.js").configFactory({
const config = configFacory({
timeFormat: 12, timeFormat: 12,
modules: [ modules: [

View File

@ -2,9 +2,7 @@
* *
* MIT Licensed. * MIT Licensed.
*/ */
const configFactory = require("../../default.js"); const config = require("../../default.js").configFactory({
const config = configFacory({
timeFormat: 12, timeFormat: 12,
modules: [ modules: [

View File

@ -3,9 +3,7 @@
* By Rodrigo Ramírez Norambuena https://rodrigoramirez.com * By Rodrigo Ramírez Norambuena https://rodrigoramirez.com
* MIT Licensed. * MIT Licensed.
*/ */
const configFactory = require("../default.js"); const config = require("../default.js").configFactory({
const config = configFacory({
modules: modules:
// Using exotic content. This is why don't accept go to JSON configuration file // Using exotic content. This is why don't accept go to JSON configuration file
(function () { (function () {

View File

@ -3,9 +3,7 @@
* By rejas https://github.com/rejas * By rejas https://github.com/rejas
* MIT Licensed. * MIT Licensed.
*/ */
const configFactory = require("../../default.js"); const config = require("../../default.js").configFactory({
const config = configFacory({
modules: [ modules: [
{ {
module: "compliments", module: "compliments",

View File

@ -3,9 +3,7 @@
* By fewieden https://github.com/fewieden * By fewieden https://github.com/fewieden
* MIT Licensed. * MIT Licensed.
*/ */
const configFactory = require("../../default.js"); const config = require("../../default.js").configFactory({
const config = configFacory({
timeFormat: 12, timeFormat: 12,
modules: [ modules: [

View File

@ -3,9 +3,7 @@
* By fewieden https://github.com/fewieden * By fewieden https://github.com/fewieden
* MIT Licensed. * MIT Licensed.
*/ */
const configFactory = require("../../default.js"); const config = require("../../default.js").configFactory({
const config = configFacory({
modules: [ modules: [
{ {
module: "weather", module: "weather",

View File

@ -3,9 +3,7 @@
* By fewieden https://github.com/fewieden * By fewieden https://github.com/fewieden
* MIT Licensed. * MIT Licensed.
*/ */
const configFactory = require("../../default.js"); const config = require("../../default.js").configFactory({
const config = configFacory({
units: "imperial", units: "imperial",
modules: [ modules: [

View File

@ -3,9 +3,7 @@
* By fewieden https://github.com/fewieden * By fewieden https://github.com/fewieden
* MIT Licensed. * MIT Licensed.
*/ */
const configFactory = require("../../default.js"); const config = require("../../default.js").configFactory({
const config = configFacory({
timeFormat: 12, timeFormat: 12,
modules: [ modules: [

View File

@ -3,9 +3,7 @@
* By fewieden https://github.com/fewieden * By fewieden https://github.com/fewieden
* MIT Licensed. * MIT Licensed.
*/ */
const configFactory = require("../../default.js"); const config = require("../../default.js").configFactory({
const config = configFacory({
timeFormat: 12, timeFormat: 12,
modules: [ modules: [

View File

@ -3,9 +3,7 @@
* By rejas * By rejas
* MIT Licensed. * MIT Licensed.
*/ */
const configFactory = require("../../default.js"); const config = require("../../default.js").configFactory({
const config = configFacory({
units: "imperial", units: "imperial",
modules: [ modules: [

View File

@ -3,8 +3,9 @@
* By Rodrigo Ramírez Norambuena https://rodrigoramirez.com * By Rodrigo Ramírez Norambuena https://rodrigoramirez.com
* MIT Licensed. * MIT Licensed.
*/ */
let config = require("./default.js"); const config = require("./default.js").configFactory({
config.ipWhitelist = ["x.x.x.x"]; ipWhitelist: ["x.x.x.x"]
});
/*************** DO NOT EDIT THE LINE BELOW ***************/ /*************** DO NOT EDIT THE LINE BELOW ***************/
if (typeof module !== "undefined") { if (typeof module !== "undefined") {

View File

@ -3,8 +3,9 @@
* By Rodrigo Ramírez Norambuena https://rodrigoramirez.com * By Rodrigo Ramírez Norambuena https://rodrigoramirez.com
* MIT Licensed. * MIT Licensed.
*/ */
let config = require("./default.js"); const config = require("./default.js").configFactory({
config.port = 8090; port: 8090
});
/*************** DO NOT EDIT THE LINE BELOW ***************/ /*************** DO NOT EDIT THE LINE BELOW ***************/
if (typeof module !== "undefined") { if (typeof module !== "undefined") {

View File

@ -3,9 +3,7 @@
* By Rodrigo Ramírez Norambuena https://rodrigoramirez.com * By Rodrigo Ramírez Norambuena https://rodrigoramirez.com
* MIT Licensed. * MIT Licensed.
*/ */
const configFactory = require("./default.js"); const config = require("./default.js").configFactory({
const config = configFacory({
ipWhitelist: ["127.0.0.1", "::ffff:127.0.0.1", "::1", "::ffff:192.168.10.1"] ipWhitelist: ["127.0.0.1", "::ffff:127.0.0.1", "::1", "::ffff:192.168.10.1"]
}); });

View File

@ -7,7 +7,7 @@ describe("Development console tests", function () {
beforeAll(function () { beforeAll(function () {
// Set config sample for use in test // Set config sample for use in test
process.env.MM_CONFIG_FILE = "tests/configs/default.js"; process.env.MM_CONFIG_FILE = "tests/configs/env.js";
}); });
describe("Without 'dev' commandline argument", function () { describe("Without 'dev' commandline argument", function () {

View File

@ -8,7 +8,7 @@ describe("Electron app environment", function () {
beforeAll(function () { beforeAll(function () {
// Set config sample for use in test // Set config sample for use in test
process.env.MM_CONFIG_FILE = "tests/configs/default.js"; process.env.MM_CONFIG_FILE = "tests/configs/env.js";
}); });
beforeEach(function () { beforeEach(function () {

View File

@ -10,7 +10,7 @@ describe("Vendors", function () {
let app = null; let app = null;
beforeAll(function () { beforeAll(function () {
process.env.MM_CONFIG_FILE = "tests/configs/default.js"; process.env.MM_CONFIG_FILE = "tests/configs/env.js";
return helpers return helpers
.startApplication({ .startApplication({
args: ["js/electron.js"] args: ["js/electron.js"]