@nocobase/plugin-system-settings 0.11.1-alpha.4 → 0.12.0-alpha.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/client.d.ts +2 -3
- package/client.js +1 -1
- package/dist/client/index.js +11 -0
- package/{lib/server → dist}/index.d.ts +1 -0
- package/dist/index.js +18 -0
- package/dist/server/collections/systemSettings.js +51 -0
- package/dist/server/index.js +11 -0
- package/dist/server/migrations/20220714204714-update-enabled-languages.js +21 -0
- package/dist/server/server.js +54 -0
- package/package.json +12 -23
- package/server.d.ts +2 -3
- package/server.js +1 -1
- package/lib/client/index.js +0 -22
- package/lib/index.js +0 -13
- package/lib/server/collections/systemSettings.js +0 -50
- package/lib/server/index.js +0 -13
- package/lib/server/migrations/20220714204714-update-enabled-languages.js +0 -34
- package/lib/server/server.js +0 -74
- package/src/client/index.ts +0 -7
- package/src/index.ts +0 -1
- package/src/server/collections/systemSettings.ts +0 -47
- package/src/server/index.ts +0 -1
- package/src/server/migrations/20220714204714-update-enabled-languages.ts +0 -17
- package/src/server/server.ts +0 -53
- /package/{lib → dist}/client/index.d.ts +0 -0
- /package/{lib → dist}/server/collections/systemSettings.d.ts +0 -0
- /package/{lib → dist/server}/index.d.ts +0 -0
- /package/{lib → dist}/server/migrations/20220714204714-update-enabled-languages.d.ts +0 -0
- /package/{lib → dist}/server/server.d.ts +0 -0
package/client.d.ts
CHANGED
|
@@ -1,3 +1,2 @@
|
|
|
1
|
-
export * from './
|
|
2
|
-
export { default } from './
|
|
3
|
-
|
|
1
|
+
export * from './dist/client';
|
|
2
|
+
export { default } from './dist/client';
|
package/client.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
module.exports = require('./
|
|
1
|
+
module.exports = require('./dist/client/index.js');
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
(function(global, factory) {
|
|
2
|
+
typeof exports === "object" && typeof module !== "undefined" ? factory(exports, require("@nocobase/client")) : typeof define === "function" && define.amd ? define(["exports", "@nocobase/client"], factory) : (global = typeof globalThis !== "undefined" ? globalThis : global || self, factory(global["@nocobase/plugin-system-settings"] = {}, global["@nocobase/client"]));
|
|
3
|
+
})(this, function(exports2, client) {
|
|
4
|
+
"use strict";
|
|
5
|
+
class SystemSettingPlugin extends client.Plugin {
|
|
6
|
+
async load() {
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
exports2.default = SystemSettingPlugin;
|
|
10
|
+
Object.defineProperties(exports2, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
|
11
|
+
});
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var server = require('./server');
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
Object.defineProperty(exports, 'default', {
|
|
10
|
+
enumerable: true,
|
|
11
|
+
get: function () { return server__namespace.default; }
|
|
12
|
+
});
|
|
13
|
+
Object.keys(server).forEach(function (k) {
|
|
14
|
+
if (k !== 'default' && !Object.prototype.hasOwnProperty.call(exports, k)) Object.defineProperty(exports, k, {
|
|
15
|
+
enumerable: true,
|
|
16
|
+
get: function () { return server[k]; }
|
|
17
|
+
});
|
|
18
|
+
});
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var database = require('@nocobase/database');
|
|
4
|
+
|
|
5
|
+
var systemSettings_default = database.defineCollection({
|
|
6
|
+
namespace: "system-settings.systemSettings",
|
|
7
|
+
duplicator: "optional",
|
|
8
|
+
name: "systemSettings",
|
|
9
|
+
fields: [
|
|
10
|
+
{
|
|
11
|
+
type: "string",
|
|
12
|
+
name: "title",
|
|
13
|
+
translation: true
|
|
14
|
+
},
|
|
15
|
+
{
|
|
16
|
+
type: "boolean",
|
|
17
|
+
name: "showLogoOnly"
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
type: "boolean",
|
|
21
|
+
name: "allowSignUp",
|
|
22
|
+
defaultValue: true
|
|
23
|
+
},
|
|
24
|
+
{
|
|
25
|
+
type: "boolean",
|
|
26
|
+
name: "smsAuthEnabled",
|
|
27
|
+
defaultValue: false
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
type: "belongsTo",
|
|
31
|
+
name: "logo",
|
|
32
|
+
target: "attachments"
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
type: "json",
|
|
36
|
+
name: "enabledLanguages",
|
|
37
|
+
defaultValue: []
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
type: "string",
|
|
41
|
+
name: "appLang"
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
type: "json",
|
|
45
|
+
name: "options",
|
|
46
|
+
defaultValue: {}
|
|
47
|
+
}
|
|
48
|
+
]
|
|
49
|
+
});
|
|
50
|
+
|
|
51
|
+
module.exports = systemSettings_default;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var server = require('@nocobase/server');
|
|
4
|
+
|
|
5
|
+
class UpdateEnabledLanguagesMigration extends server.Migration {
|
|
6
|
+
async up() {
|
|
7
|
+
const result = await this.app.version.satisfies("<=0.7.2-alpha.7");
|
|
8
|
+
if (!result) {
|
|
9
|
+
return;
|
|
10
|
+
}
|
|
11
|
+
const SystemSetting = this.context.db.getRepository("systemSettings");
|
|
12
|
+
const setting = await SystemSetting.findOne();
|
|
13
|
+
const enabledLanguages = setting.get("enabledLanguages") || [];
|
|
14
|
+
if (Array.isArray(enabledLanguages) && enabledLanguages.length === 0) {
|
|
15
|
+
setting.set("enabledLanguages", [setting.get("appLang") || "en-US"]);
|
|
16
|
+
await setting.save();
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
module.exports = UpdateEnabledLanguagesMigration;
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var server = require('@nocobase/server');
|
|
6
|
+
var path = require('path');
|
|
7
|
+
|
|
8
|
+
class SystemSettingsPlugin extends server.Plugin {
|
|
9
|
+
getInitAppLang(options) {
|
|
10
|
+
var _a, _b, _c;
|
|
11
|
+
return ((_c = (_b = (_a = options == null ? void 0 : options.cliArgs) == null ? void 0 : _a[0]) == null ? void 0 : _b.opts) == null ? void 0 : _c.lang) || process.env.INIT_APP_LANG || "en-US";
|
|
12
|
+
}
|
|
13
|
+
async install(options) {
|
|
14
|
+
await this.db.getRepository("systemSettings").create({
|
|
15
|
+
values: {
|
|
16
|
+
title: "NocoBase",
|
|
17
|
+
appLang: this.getInitAppLang(options),
|
|
18
|
+
enabledLanguages: [this.getInitAppLang(options)],
|
|
19
|
+
logo: {
|
|
20
|
+
title: "nocobase-logo",
|
|
21
|
+
filename: "682e5ad037dd02a0fe4800a3e91c283b.png",
|
|
22
|
+
extname: ".png",
|
|
23
|
+
mimetype: "image/png",
|
|
24
|
+
url: "https://nocobase.oss-cn-beijing.aliyuncs.com/682e5ad037dd02a0fe4800a3e91c283b.png"
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
beforeLoad() {
|
|
30
|
+
const cmd = this.app.findCommand("install");
|
|
31
|
+
if (cmd) {
|
|
32
|
+
cmd.option("-l, --lang [lang]");
|
|
33
|
+
}
|
|
34
|
+
this.app.acl.registerSnippet({
|
|
35
|
+
name: `pm.${this.name}.system-settings`,
|
|
36
|
+
actions: ["systemSettings:update"]
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
async load() {
|
|
40
|
+
await this.app.db.import({
|
|
41
|
+
directory: path.resolve(__dirname, "collections")
|
|
42
|
+
});
|
|
43
|
+
this.app.acl.addFixedParams("systemSettings", "destroy", () => {
|
|
44
|
+
return {
|
|
45
|
+
"id.$ne": 1
|
|
46
|
+
};
|
|
47
|
+
});
|
|
48
|
+
this.app.acl.allow("systemSettings", "get", "public");
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
var server_default = SystemSettingsPlugin;
|
|
52
|
+
|
|
53
|
+
exports.SystemSettingsPlugin = SystemSettingsPlugin;
|
|
54
|
+
exports.default = server_default;
|
package/package.json
CHANGED
|
@@ -1,28 +1,17 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nocobase/plugin-system-settings",
|
|
3
|
-
"displayName": "
|
|
4
|
-
"displayName.zh-CN": "
|
|
5
|
-
"description": "
|
|
6
|
-
"description.zh-CN": "
|
|
7
|
-
"version": "0.
|
|
3
|
+
"displayName": "System settings",
|
|
4
|
+
"displayName.zh-CN": "系统设置",
|
|
5
|
+
"description": "Used to adjust the system title, logo, etc",
|
|
6
|
+
"description.zh-CN": "用于调整系统的标题、LOGO 等",
|
|
7
|
+
"version": "0.12.0-alpha.1",
|
|
8
8
|
"license": "AGPL-3.0",
|
|
9
|
-
"main": "./
|
|
10
|
-
"
|
|
11
|
-
"
|
|
12
|
-
"
|
|
13
|
-
"
|
|
14
|
-
"
|
|
15
|
-
"CHANGELOG.md",
|
|
16
|
-
"server.js",
|
|
17
|
-
"server.d.ts",
|
|
18
|
-
"client.js",
|
|
19
|
-
"client.d.ts"
|
|
20
|
-
],
|
|
21
|
-
"devDependencies": {
|
|
22
|
-
"@nocobase/client": "0.11.1-alpha.4",
|
|
23
|
-
"@nocobase/database": "0.11.1-alpha.4",
|
|
24
|
-
"@nocobase/server": "0.11.1-alpha.4",
|
|
25
|
-
"@nocobase/test": "0.11.1-alpha.4"
|
|
9
|
+
"main": "./dist/server/index.js",
|
|
10
|
+
"peerDependencies": {
|
|
11
|
+
"@nocobase/client": "0.x",
|
|
12
|
+
"@nocobase/database": "0.x",
|
|
13
|
+
"@nocobase/server": "0.x",
|
|
14
|
+
"@nocobase/test": "0.x"
|
|
26
15
|
},
|
|
27
|
-
"gitHead": "
|
|
16
|
+
"gitHead": "543dcc0216b7b1451b552b0f685bc3e0682f9d59"
|
|
28
17
|
}
|
package/server.d.ts
CHANGED
|
@@ -1,3 +1,2 @@
|
|
|
1
|
-
export * from './
|
|
2
|
-
export { default } from './
|
|
3
|
-
|
|
1
|
+
export * from './dist/server';
|
|
2
|
+
export { default } from './dist/server';
|
package/server.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
module.exports = require('./
|
|
1
|
+
module.exports = require('./dist/server/index.js');
|
package/lib/client/index.js
DELETED
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
function _client() {
|
|
8
|
-
const data = require("@nocobase/client");
|
|
9
|
-
_client = function _client() {
|
|
10
|
-
return data;
|
|
11
|
-
};
|
|
12
|
-
return data;
|
|
13
|
-
}
|
|
14
|
-
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
|
|
15
|
-
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
|
|
16
|
-
class SystemSettingPlugin extends _client().Plugin {
|
|
17
|
-
load() {
|
|
18
|
-
return _asyncToGenerator(function* () {})();
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
var _default = SystemSettingPlugin;
|
|
22
|
-
exports.default = _default;
|
package/lib/index.js
DELETED
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
Object.defineProperty(exports, "default", {
|
|
7
|
-
enumerable: true,
|
|
8
|
-
get: function get() {
|
|
9
|
-
return _server.default;
|
|
10
|
-
}
|
|
11
|
-
});
|
|
12
|
-
var _server = _interopRequireDefault(require("./server"));
|
|
13
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
function _database() {
|
|
8
|
-
const data = require("@nocobase/database");
|
|
9
|
-
_database = function _database() {
|
|
10
|
-
return data;
|
|
11
|
-
};
|
|
12
|
-
return data;
|
|
13
|
-
}
|
|
14
|
-
var _default = (0, _database().defineCollection)({
|
|
15
|
-
namespace: 'system-settings.systemSettings',
|
|
16
|
-
duplicator: 'optional',
|
|
17
|
-
name: 'systemSettings',
|
|
18
|
-
fields: [{
|
|
19
|
-
type: 'string',
|
|
20
|
-
name: 'title',
|
|
21
|
-
translation: true
|
|
22
|
-
}, {
|
|
23
|
-
type: 'boolean',
|
|
24
|
-
name: 'showLogoOnly'
|
|
25
|
-
}, {
|
|
26
|
-
type: 'boolean',
|
|
27
|
-
name: 'allowSignUp',
|
|
28
|
-
defaultValue: true
|
|
29
|
-
}, {
|
|
30
|
-
type: 'boolean',
|
|
31
|
-
name: 'smsAuthEnabled',
|
|
32
|
-
defaultValue: false
|
|
33
|
-
}, {
|
|
34
|
-
type: 'belongsTo',
|
|
35
|
-
name: 'logo',
|
|
36
|
-
target: 'attachments'
|
|
37
|
-
}, {
|
|
38
|
-
type: 'json',
|
|
39
|
-
name: 'enabledLanguages',
|
|
40
|
-
defaultValue: []
|
|
41
|
-
}, {
|
|
42
|
-
type: 'string',
|
|
43
|
-
name: 'appLang'
|
|
44
|
-
}, {
|
|
45
|
-
type: 'json',
|
|
46
|
-
name: 'options',
|
|
47
|
-
defaultValue: {}
|
|
48
|
-
}]
|
|
49
|
-
});
|
|
50
|
-
exports.default = _default;
|
package/lib/server/index.js
DELETED
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
Object.defineProperty(exports, "default", {
|
|
7
|
-
enumerable: true,
|
|
8
|
-
get: function get() {
|
|
9
|
-
return _server.default;
|
|
10
|
-
}
|
|
11
|
-
});
|
|
12
|
-
var _server = _interopRequireDefault(require("./server"));
|
|
13
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
function _server() {
|
|
8
|
-
const data = require("@nocobase/server");
|
|
9
|
-
_server = function _server() {
|
|
10
|
-
return data;
|
|
11
|
-
};
|
|
12
|
-
return data;
|
|
13
|
-
}
|
|
14
|
-
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
|
|
15
|
-
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
|
|
16
|
-
class UpdateEnabledLanguagesMigration extends _server().Migration {
|
|
17
|
-
up() {
|
|
18
|
-
var _this = this;
|
|
19
|
-
return _asyncToGenerator(function* () {
|
|
20
|
-
const result = yield _this.app.version.satisfies('<=0.7.2-alpha.7');
|
|
21
|
-
if (!result) {
|
|
22
|
-
return;
|
|
23
|
-
}
|
|
24
|
-
const SystemSetting = _this.context.db.getRepository('systemSettings');
|
|
25
|
-
const setting = yield SystemSetting.findOne();
|
|
26
|
-
const enabledLanguages = setting.get('enabledLanguages') || [];
|
|
27
|
-
if (Array.isArray(enabledLanguages) && enabledLanguages.length === 0) {
|
|
28
|
-
setting.set('enabledLanguages', [setting.get('appLang') || 'en-US']);
|
|
29
|
-
yield setting.save();
|
|
30
|
-
}
|
|
31
|
-
})();
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
exports.default = UpdateEnabledLanguagesMigration;
|
package/lib/server/server.js
DELETED
|
@@ -1,74 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = exports.SystemSettingsPlugin = void 0;
|
|
7
|
-
function _server() {
|
|
8
|
-
const data = require("@nocobase/server");
|
|
9
|
-
_server = function _server() {
|
|
10
|
-
return data;
|
|
11
|
-
};
|
|
12
|
-
return data;
|
|
13
|
-
}
|
|
14
|
-
function _path() {
|
|
15
|
-
const data = require("path");
|
|
16
|
-
_path = function _path() {
|
|
17
|
-
return data;
|
|
18
|
-
};
|
|
19
|
-
return data;
|
|
20
|
-
}
|
|
21
|
-
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
|
|
22
|
-
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
|
|
23
|
-
class SystemSettingsPlugin extends _server().Plugin {
|
|
24
|
-
getInitAppLang(options) {
|
|
25
|
-
var _options$cliArgs, _options$cliArgs$, _options$cliArgs$$opt;
|
|
26
|
-
return (options === null || options === void 0 ? void 0 : (_options$cliArgs = options.cliArgs) === null || _options$cliArgs === void 0 ? void 0 : (_options$cliArgs$ = _options$cliArgs[0]) === null || _options$cliArgs$ === void 0 ? void 0 : (_options$cliArgs$$opt = _options$cliArgs$.opts) === null || _options$cliArgs$$opt === void 0 ? void 0 : _options$cliArgs$$opt.lang) || process.env.INIT_APP_LANG || 'en-US';
|
|
27
|
-
}
|
|
28
|
-
install(options) {
|
|
29
|
-
var _this = this;
|
|
30
|
-
return _asyncToGenerator(function* () {
|
|
31
|
-
yield _this.db.getRepository('systemSettings').create({
|
|
32
|
-
values: {
|
|
33
|
-
title: 'NocoBase',
|
|
34
|
-
appLang: _this.getInitAppLang(options),
|
|
35
|
-
enabledLanguages: [_this.getInitAppLang(options)],
|
|
36
|
-
logo: {
|
|
37
|
-
title: 'nocobase-logo',
|
|
38
|
-
filename: '682e5ad037dd02a0fe4800a3e91c283b.png',
|
|
39
|
-
extname: '.png',
|
|
40
|
-
mimetype: 'image/png',
|
|
41
|
-
url: 'https://nocobase.oss-cn-beijing.aliyuncs.com/682e5ad037dd02a0fe4800a3e91c283b.png'
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
});
|
|
45
|
-
})();
|
|
46
|
-
}
|
|
47
|
-
beforeLoad() {
|
|
48
|
-
const cmd = this.app.findCommand('install');
|
|
49
|
-
if (cmd) {
|
|
50
|
-
cmd.option('-l, --lang [lang]');
|
|
51
|
-
}
|
|
52
|
-
this.app.acl.registerSnippet({
|
|
53
|
-
name: `pm.${this.name}.system-settings`,
|
|
54
|
-
actions: ['systemSettings:update']
|
|
55
|
-
});
|
|
56
|
-
}
|
|
57
|
-
load() {
|
|
58
|
-
var _this2 = this;
|
|
59
|
-
return _asyncToGenerator(function* () {
|
|
60
|
-
yield _this2.app.db.import({
|
|
61
|
-
directory: (0, _path().resolve)(__dirname, 'collections')
|
|
62
|
-
});
|
|
63
|
-
_this2.app.acl.addFixedParams('systemSettings', 'destroy', () => {
|
|
64
|
-
return {
|
|
65
|
-
'id.$ne': 1
|
|
66
|
-
};
|
|
67
|
-
});
|
|
68
|
-
_this2.app.acl.allow('systemSettings', 'get', 'public');
|
|
69
|
-
})();
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
exports.SystemSettingsPlugin = SystemSettingsPlugin;
|
|
73
|
-
var _default = SystemSettingsPlugin;
|
|
74
|
-
exports.default = _default;
|
package/src/client/index.ts
DELETED
package/src/index.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export { default } from './server';
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import { defineCollection } from '@nocobase/database';
|
|
2
|
-
|
|
3
|
-
export default defineCollection({
|
|
4
|
-
namespace: 'system-settings.systemSettings',
|
|
5
|
-
duplicator: 'optional',
|
|
6
|
-
name: 'systemSettings',
|
|
7
|
-
fields: [
|
|
8
|
-
{
|
|
9
|
-
type: 'string',
|
|
10
|
-
name: 'title',
|
|
11
|
-
translation: true,
|
|
12
|
-
},
|
|
13
|
-
{
|
|
14
|
-
type: 'boolean',
|
|
15
|
-
name: 'showLogoOnly',
|
|
16
|
-
},
|
|
17
|
-
{
|
|
18
|
-
type: 'boolean',
|
|
19
|
-
name: 'allowSignUp',
|
|
20
|
-
defaultValue: true,
|
|
21
|
-
},
|
|
22
|
-
{
|
|
23
|
-
type: 'boolean',
|
|
24
|
-
name: 'smsAuthEnabled',
|
|
25
|
-
defaultValue: false,
|
|
26
|
-
},
|
|
27
|
-
{
|
|
28
|
-
type: 'belongsTo',
|
|
29
|
-
name: 'logo',
|
|
30
|
-
target: 'attachments',
|
|
31
|
-
},
|
|
32
|
-
{
|
|
33
|
-
type: 'json',
|
|
34
|
-
name: 'enabledLanguages',
|
|
35
|
-
defaultValue: [],
|
|
36
|
-
},
|
|
37
|
-
{
|
|
38
|
-
type: 'string',
|
|
39
|
-
name: 'appLang',
|
|
40
|
-
},
|
|
41
|
-
{
|
|
42
|
-
type: 'json',
|
|
43
|
-
name: 'options',
|
|
44
|
-
defaultValue: {},
|
|
45
|
-
},
|
|
46
|
-
],
|
|
47
|
-
});
|
package/src/server/index.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export { default } from './server';
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { Migration } from '@nocobase/server';
|
|
2
|
-
|
|
3
|
-
export default class UpdateEnabledLanguagesMigration extends Migration {
|
|
4
|
-
async up() {
|
|
5
|
-
const result = await this.app.version.satisfies('<=0.7.2-alpha.7');
|
|
6
|
-
if (!result) {
|
|
7
|
-
return;
|
|
8
|
-
}
|
|
9
|
-
const SystemSetting = this.context.db.getRepository('systemSettings');
|
|
10
|
-
const setting = await SystemSetting.findOne();
|
|
11
|
-
const enabledLanguages = setting.get('enabledLanguages') || [];
|
|
12
|
-
if (Array.isArray(enabledLanguages) && enabledLanguages.length === 0) {
|
|
13
|
-
setting.set('enabledLanguages', [setting.get('appLang') || 'en-US']);
|
|
14
|
-
await setting.save();
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
}
|
package/src/server/server.ts
DELETED
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
import { InstallOptions, Plugin } from '@nocobase/server';
|
|
2
|
-
import { resolve } from 'path';
|
|
3
|
-
|
|
4
|
-
export class SystemSettingsPlugin extends Plugin {
|
|
5
|
-
getInitAppLang(options) {
|
|
6
|
-
return options?.cliArgs?.[0]?.opts?.lang || process.env.INIT_APP_LANG || 'en-US';
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
async install(options?: InstallOptions) {
|
|
10
|
-
await this.db.getRepository('systemSettings').create({
|
|
11
|
-
values: {
|
|
12
|
-
title: 'NocoBase',
|
|
13
|
-
appLang: this.getInitAppLang(options),
|
|
14
|
-
enabledLanguages: [this.getInitAppLang(options)],
|
|
15
|
-
logo: {
|
|
16
|
-
title: 'nocobase-logo',
|
|
17
|
-
filename: '682e5ad037dd02a0fe4800a3e91c283b.png',
|
|
18
|
-
extname: '.png',
|
|
19
|
-
mimetype: 'image/png',
|
|
20
|
-
url: 'https://nocobase.oss-cn-beijing.aliyuncs.com/682e5ad037dd02a0fe4800a3e91c283b.png',
|
|
21
|
-
},
|
|
22
|
-
},
|
|
23
|
-
});
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
beforeLoad() {
|
|
27
|
-
const cmd = this.app.findCommand('install');
|
|
28
|
-
if (cmd) {
|
|
29
|
-
cmd.option('-l, --lang [lang]');
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
this.app.acl.registerSnippet({
|
|
33
|
-
name: `pm.${this.name}.system-settings`,
|
|
34
|
-
actions: ['systemSettings:update'],
|
|
35
|
-
});
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
async load() {
|
|
39
|
-
await this.app.db.import({
|
|
40
|
-
directory: resolve(__dirname, 'collections'),
|
|
41
|
-
});
|
|
42
|
-
|
|
43
|
-
this.app.acl.addFixedParams('systemSettings', 'destroy', () => {
|
|
44
|
-
return {
|
|
45
|
-
'id.$ne': 1,
|
|
46
|
-
};
|
|
47
|
-
});
|
|
48
|
-
|
|
49
|
-
this.app.acl.allow('systemSettings', 'get', 'public');
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
export default SystemSettingsPlugin;
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|