@fc3/mmcadi 0.1.20 → 0.1.22
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/bin/lint +12 -0
- package/bin/test-one +32 -0
- package/dist/.last-compile-time +1 -1
- package/dist/.last-publish-time +1 -1
- package/dist/client.js +11 -1
- package/dist/src/client/enum/page-type.d.ts +2 -1
- package/dist/src/client/enum/page-type.js +1 -0
- package/dist/src/client/enum/page-type.js.map +1 -1
- package/dist/src/client/factory/page.js +3 -1
- package/dist/src/client/factory/page.js.map +1 -1
- package/dist/src/client/page/role.d.ts +5 -0
- package/dist/src/client/page/role.js +12 -0
- package/dist/src/client/page/role.js.map +1 -0
- package/dist/src/common/builder/block/folder.d.ts +2 -1
- package/dist/src/common/builder/block/folder.js.map +1 -1
- package/dist/src/common/builder/block/header.d.ts +5 -1
- package/dist/src/common/builder/block/header.js +16 -2
- package/dist/src/common/builder/block/header.js.map +1 -1
- package/dist/src/common/builder/block/parameter.d.ts +3 -0
- package/dist/src/common/builder/block/parameter.js +19 -0
- package/dist/src/common/builder/block/parameter.js.map +1 -0
- package/dist/src/constant/role/creator.d.ts +3 -0
- package/dist/src/constant/role/creator.js +17 -0
- package/dist/src/constant/role/creator.js.map +1 -0
- package/dist/src/constant/role/public.d.ts +3 -0
- package/dist/src/constant/role/public.js +17 -0
- package/dist/src/constant/role/public.js.map +1 -0
- package/dist/src/constant/role/unknown.d.ts +3 -0
- package/dist/src/constant/role/unknown.js +17 -0
- package/dist/src/constant/role/unknown.js.map +1 -0
- package/dist/src/enum/block-type.d.ts +2 -1
- package/dist/src/enum/block-type.js +1 -0
- package/dist/src/enum/block-type.js.map +1 -1
- package/dist/src/enum/default-role.d.ts +2 -1
- package/dist/src/enum/default-role.js +1 -0
- package/dist/src/enum/default-role.js.map +1 -1
- package/dist/src/enum/emoji.d.ts +1 -0
- package/dist/src/enum/emoji.js +1 -0
- package/dist/src/enum/emoji.js.map +1 -1
- package/dist/src/index.d.ts +2 -0
- package/dist/src/index.js +3 -1
- package/dist/src/index.js.map +1 -1
- package/dist/src/interface/route.d.ts +2 -1
- package/dist/src/lib/environment-mocker/index.d.ts +18 -0
- package/dist/src/lib/environment-mocker/index.js +40 -0
- package/dist/src/lib/environment-mocker/index.js.map +1 -0
- package/dist/src/lib/grammar/index.d.ts +3 -0
- package/dist/src/lib/grammar/index.js +7 -1
- package/dist/src/lib/grammar/index.js.map +1 -1
- package/dist/src/lib/grammar/utility/pluralize.d.ts +2 -0
- package/dist/src/lib/grammar/utility/pluralize.js +12 -0
- package/dist/src/lib/grammar/utility/pluralize.js.map +1 -0
- package/dist/src/lib/grammar/utility/singularize-or-pluralize.d.ts +2 -0
- package/dist/src/lib/grammar/utility/singularize-or-pluralize.js +12 -0
- package/dist/src/lib/grammar/utility/singularize-or-pluralize.js.map +1 -0
- package/dist/src/lib/grammar/utility/singularize.d.ts +2 -0
- package/dist/src/lib/grammar/utility/singularize.js +12 -0
- package/dist/src/lib/grammar/utility/singularize.js.map +1 -0
- package/dist/src/lib/log-capturer/index.d.ts +2 -0
- package/dist/src/lib/log-capturer/index.js +8 -0
- package/dist/src/lib/log-capturer/index.js.map +1 -0
- package/dist/src/lib/log-capturer/log-capturer.d.ts +19 -0
- package/dist/src/lib/log-capturer/log-capturer.js +39 -0
- package/dist/src/lib/log-capturer/log-capturer.js.map +1 -0
- package/dist/src/lib/string/create-slug.js +2 -1
- package/dist/src/lib/string/create-slug.js.map +1 -1
- package/dist/src/server/endpoint/account/get.d.ts +14 -0
- package/dist/src/server/endpoint/account/get.js +34 -0
- package/dist/src/server/endpoint/account/get.js.map +1 -0
- package/dist/src/server/endpoint/action/create.js +4 -29
- package/dist/src/server/endpoint/action/create.js.map +1 -1
- package/dist/src/server/endpoint/role/get.d.ts +14 -0
- package/dist/src/server/endpoint/role/get.js +43 -0
- package/dist/src/server/endpoint/role/get.js.map +1 -0
- package/dist/src/server/enum/custom-page-type.d.ts +3 -1
- package/dist/src/server/enum/custom-page-type.js +2 -0
- package/dist/src/server/enum/custom-page-type.js.map +1 -1
- package/dist/src/server/factory/block-result-serializer.js +3 -0
- package/dist/src/server/factory/block-result-serializer.js.map +1 -1
- package/dist/src/server/middleware/error-handler.js +7 -2
- package/dist/src/server/middleware/error-handler.js.map +1 -1
- package/dist/src/server/operation/find-account.d.ts +1 -0
- package/dist/src/server/operation/find-account.js +9 -1
- package/dist/src/server/operation/find-account.js.map +1 -1
- package/dist/src/server/operation/load-account.js +5 -8
- package/dist/src/server/operation/load-account.js.map +1 -1
- package/dist/src/server/operation/load-page.d.ts +5 -4
- package/dist/src/server/operation/load-page.js +176 -59
- package/dist/src/server/operation/load-page.js.map +1 -1
- package/dist/src/server/operation/store-files.d.ts +15 -0
- package/dist/src/server/operation/store-files.js +84 -0
- package/dist/src/server/operation/store-files.js.map +1 -0
- package/dist/src/server/result-serializer/account.d.ts +9 -0
- package/dist/src/server/result-serializer/account.js +26 -0
- package/dist/src/server/result-serializer/account.js.map +1 -0
- package/dist/src/server/result-serializer/action.d.ts +2 -1
- package/dist/src/server/result-serializer/action.js +27 -18
- package/dist/src/server/result-serializer/action.js.map +1 -1
- package/dist/src/server/result-serializer/base.js +22 -4
- package/dist/src/server/result-serializer/base.js.map +1 -1
- package/dist/src/server/result-serializer/block/folder.js +25 -9
- package/dist/src/server/result-serializer/block/folder.js.map +1 -1
- package/dist/src/server/result-serializer/block/header.js +6 -2
- package/dist/src/server/result-serializer/block/header.js.map +1 -1
- package/dist/src/server/result-serializer/block/image.js +6 -3
- package/dist/src/server/result-serializer/block/image.js.map +1 -1
- package/dist/src/server/result-serializer/block/parameter.d.ts +6 -0
- package/dist/src/server/result-serializer/block/parameter.js +13 -0
- package/dist/src/server/result-serializer/block/parameter.js.map +1 -0
- package/dist/src/server/result-serializer/block.d.ts +2 -1
- package/dist/src/server/result-serializer/block.js +32 -13
- package/dist/src/server/result-serializer/block.js.map +1 -1
- package/dist/src/server/result-serializer/page.d.ts +2 -1
- package/dist/src/server/result-serializer/page.js +4 -4
- package/dist/src/server/result-serializer/page.js.map +1 -1
- package/dist/src/server/result-serializer/role.d.ts +9 -0
- package/dist/src/server/result-serializer/role.js +26 -0
- package/dist/src/server/result-serializer/role.js.map +1 -0
- package/dist/src/server/type/multipart-file.d.ts +7 -0
- package/dist/src/server/type/multipart-file.js +3 -0
- package/dist/src/server/type/multipart-file.js.map +1 -0
- package/dist/src/server/utility/extract-role.d.ts +3 -0
- package/dist/src/server/utility/extract-role.js +19 -0
- package/dist/src/server/utility/extract-role.js.map +1 -0
- package/dist/src/server/utility/get-custom-page-type-for-path.js +12 -0
- package/dist/src/server/utility/get-custom-page-type-for-path.js.map +1 -1
- package/dist/src/server/utility/get-key-for-role.d.ts +3 -0
- package/dist/src/server/utility/get-key-for-role.js +10 -0
- package/dist/src/server/utility/get-key-for-role.js.map +1 -0
- package/dist/src/server/utility/get-thumbnail-filename.d.ts +2 -0
- package/dist/src/server/utility/get-thumbnail-filename.js +10 -0
- package/dist/src/server/utility/get-thumbnail-filename.js.map +1 -0
- package/dist/src/server/utility/get-url-for-role.d.ts +3 -0
- package/dist/src/server/utility/get-url-for-role.js +13 -0
- package/dist/src/server/utility/get-url-for-role.js.map +1 -0
- package/dist/src/server/utility/role-matches.d.ts +3 -0
- package/dist/src/server/utility/role-matches.js +13 -0
- package/dist/src/server/utility/role-matches.js.map +1 -0
- package/dist/src/server/utility/satisfies-role.d.ts +3 -0
- package/dist/src/server/utility/satisfies-role.js +21 -0
- package/dist/src/server/utility/satisfies-role.js.map +1 -0
- package/dist/src/server.js +6 -8
- package/dist/src/server.js.map +1 -1
- package/dist/src/type/account.d.ts +1 -1
- package/dist/src/type/block/parameter.d.ts +8 -0
- package/dist/src/type/block/parameter.js +3 -0
- package/dist/src/type/block/parameter.js.map +1 -0
- package/dist/src/type/block-metadata.d.ts +2 -1
- package/dist/src/type/color-value.d.ts +2 -0
- package/dist/src/type/color-value.js +3 -0
- package/dist/src/type/color-value.js.map +1 -0
- package/dist/src/type/request-context.d.ts +7 -0
- package/dist/src/type/request-context.js +3 -0
- package/dist/src/type/request-context.js.map +1 -0
- package/dist/src/type/role.d.ts +8 -0
- package/dist/src/{interface/provider.js → type/role.js} +1 -1
- package/dist/src/type/role.js.map +1 -0
- package/dist/src/type/runtime-config.d.ts +2 -1
- package/dist/src/type/server-settings.d.ts +2 -1
- package/dist/test/unit/lib/environment-mocker/environment-mocker.d.ts +1 -0
- package/dist/test/unit/lib/environment-mocker/environment-mocker.js +40 -0
- package/dist/test/unit/lib/environment-mocker/environment-mocker.js.map +1 -0
- package/dist/test/unit/lib/grammar/index.d.ts +1 -0
- package/dist/test/unit/lib/grammar/index.js +60 -0
- package/dist/test/unit/lib/grammar/index.js.map +1 -0
- package/dist/test/unit/lib/grammar/inflector.d.ts +1 -0
- package/dist/test/unit/lib/grammar/inflector.js +72 -0
- package/dist/test/unit/lib/grammar/inflector.js.map +1 -0
- package/dist/test/unit/lib/http/parser/url.d.ts +1 -0
- package/dist/test/unit/lib/http/parser/url.js +27 -0
- package/dist/test/unit/lib/http/parser/url.js.map +1 -0
- package/dist/test/unit/lib/http/response/outgoing.d.ts +1 -0
- package/dist/test/unit/lib/http/response/outgoing.js +38 -0
- package/dist/test/unit/lib/http/response/outgoing.js.map +1 -0
- package/dist/test/unit/lib/http/utility/get-status-code-for-error-type.d.ts +1 -0
- package/dist/test/unit/lib/http/utility/get-status-code-for-error-type.js +21 -0
- package/dist/test/unit/lib/http/utility/get-status-code-for-error-type.js.map +1 -0
- package/dist/test/unit/lib/key-generator/key-generator.d.ts +1 -0
- package/dist/test/unit/lib/key-generator/key-generator.js +23 -0
- package/dist/test/unit/lib/key-generator/key-generator.js.map +1 -0
- package/dist/test/unit/lib/log-capturer/log-capturer.d.ts +1 -0
- package/dist/test/unit/lib/log-capturer/log-capturer.js +35 -0
- package/dist/test/unit/lib/log-capturer/log-capturer.js.map +1 -0
- package/dist/test/unit/lib/logger/formatter.d.ts +1 -0
- package/dist/test/unit/lib/logger/formatter.js +32 -0
- package/dist/test/unit/lib/logger/formatter.js.map +1 -0
- package/dist/test/unit/lib/logger/logger.d.ts +1 -0
- package/dist/test/unit/lib/logger/logger.js +194 -0
- package/dist/test/unit/lib/logger/logger.js.map +1 -0
- package/dist/test/unit/lib/operation/operation.d.ts +1 -0
- package/dist/test/unit/lib/operation/operation.js +128 -0
- package/dist/test/unit/lib/operation/operation.js.map +1 -0
- package/dist/test/unit/lib/promise-wrapper/promise-wrapper.d.ts +1 -0
- package/dist/test/unit/lib/promise-wrapper/promise-wrapper.js +41 -0
- package/dist/test/unit/lib/promise-wrapper/promise-wrapper.js.map +1 -0
- package/dist/test/unit/lib/string/create-slug.d.ts +1 -0
- package/dist/test/unit/lib/string/create-slug.js +15 -0
- package/dist/test/unit/lib/string/create-slug.js.map +1 -0
- package/dist/test/unit/lib/time/utility/sleep.d.ts +1 -0
- package/dist/test/unit/lib/time/utility/sleep.js +20 -0
- package/dist/test/unit/lib/time/utility/sleep.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +11 -5
- package/dist/src/interface/provider.d.ts +0 -6
- package/dist/src/interface/provider.js.map +0 -1
|
@@ -8,20 +8,29 @@ const promises_1 = require("fs/promises");
|
|
|
8
8
|
const header_1 = __importDefault(require("./../../common/builder/block/header.js"));
|
|
9
9
|
const note_1 = __importDefault(require("./../../common/builder/block/note.js"));
|
|
10
10
|
const string_1 = require("./../../lib/string/index.js");
|
|
11
|
+
const grammar_1 = require("./../../lib/grammar/index.js");
|
|
11
12
|
const filesystem_1 = require("./../../lib/filesystem/index.js");
|
|
12
13
|
const http_1 = require("./../../lib/http/index.js");
|
|
13
14
|
const errors_1 = require("./../../lib/errors/index.js");
|
|
14
15
|
const operation_1 = __importDefault(require("./../../operation.js"));
|
|
15
16
|
const path_to_date_1 = __importDefault(require("./../utility/path-to-date.js"));
|
|
16
17
|
const get_path_for_folder_block_1 = __importDefault(require("./../utility/get-path-for-folder-block.js"));
|
|
18
|
+
const get_url_for_role_1 = __importDefault(require("./../utility/get-url-for-role.js"));
|
|
19
|
+
const get_key_for_role_1 = __importDefault(require("./../utility/get-key-for-role.js"));
|
|
20
|
+
const default_role_1 = __importDefault(require("./../../enum/default-role.js"));
|
|
21
|
+
const satisfies_role_1 = __importDefault(require("./../utility/satisfies-role.js"));
|
|
17
22
|
const permission_type_1 = __importDefault(require("./../../enum/permission-type.js"));
|
|
23
|
+
const public_1 = __importDefault(require("./../../constant/role/public.js"));
|
|
24
|
+
const role_matches_1 = __importDefault(require("./../utility/role-matches.js"));
|
|
25
|
+
const creator_1 = __importDefault(require("./../../constant/role/creator.js"));
|
|
26
|
+
const unknown_1 = __importDefault(require("./../../constant/role/unknown.js"));
|
|
18
27
|
const system_id_1 = __importDefault(require("./../../constant/system-id.js"));
|
|
19
28
|
const block_type_1 = __importDefault(require("./../../enum/block-type.js"));
|
|
20
29
|
const get_block_permissions_1 = __importDefault(require("./../utility/get-block-permissions.js"));
|
|
21
30
|
const get_parent_path_1 = __importDefault(require("./../../common/utility/get-parent-path.js"));
|
|
22
|
-
const default_role_1 = __importDefault(require("./../../enum/default-role.js"));
|
|
23
31
|
const validate_path_1 = __importDefault(require("./../utility/validate-path.js"));
|
|
24
32
|
const load_account_1 = __importDefault(require("./load-account.js"));
|
|
33
|
+
const find_account_1 = __importDefault(require("./find-account.js"));
|
|
25
34
|
const custom_page_type_1 = __importDefault(require("./../enum/custom-page-type.js"));
|
|
26
35
|
const color_1 = __importDefault(require("./../../enum/color.js"));
|
|
27
36
|
const get_weekday_name_1 = __importDefault(require("./../utility/get-weekday-name.js"));
|
|
@@ -34,6 +43,7 @@ const get_start_of_week_1 = __importDefault(require("./../utility/get-start-of-w
|
|
|
34
43
|
const week_to_path_1 = __importDefault(require("./../utility/week-to-path.js"));
|
|
35
44
|
const increment_date_1 = __importDefault(require("./../utility/increment-date.js"));
|
|
36
45
|
const decrement_date_1 = __importDefault(require("./../utility/decrement-date.js"));
|
|
46
|
+
const extract_role_1 = __importDefault(require("./../utility/extract-role.js"));
|
|
37
47
|
const date_less_than_1 = __importDefault(require("./../utility/date-less-than.js"));
|
|
38
48
|
const create_date_1 = __importDefault(require("./../utility/create-date.js"));
|
|
39
49
|
const dates_are_equal_1 = __importDefault(require("./../utility/dates-are-equal.js"));
|
|
@@ -47,13 +57,14 @@ class LoadPageOperation extends operation_1.default {
|
|
|
47
57
|
this.path = path;
|
|
48
58
|
}
|
|
49
59
|
async performInternal() {
|
|
50
|
-
const
|
|
51
|
-
const required_role = await this.
|
|
52
|
-
|
|
53
|
-
|
|
60
|
+
const request_context = await this.buildRequestContext();
|
|
61
|
+
const { creator_username, required_role } = await this.determineCreatorAndRequiredReadRole(request_context);
|
|
62
|
+
const { role: current_role, path } = request_context;
|
|
63
|
+
const roles = this.getRoles();
|
|
64
|
+
if (!(0, satisfies_role_1.default)(roles, current_role, required_role)) {
|
|
65
|
+
return this.generatePermissionDeniedPage(current_role, required_role, creator_username);
|
|
54
66
|
}
|
|
55
|
-
const
|
|
56
|
-
const raw_page = await this.loadRawPageForPath(path);
|
|
67
|
+
const raw_page = await this.loadRawPage(request_context);
|
|
57
68
|
const page = {
|
|
58
69
|
path,
|
|
59
70
|
...raw_page
|
|
@@ -64,62 +75,78 @@ class LoadPageOperation extends operation_1.default {
|
|
|
64
75
|
formatResult(result) {
|
|
65
76
|
return result.path;
|
|
66
77
|
}
|
|
67
|
-
async generatePermissionDeniedPage(current_role, required_role) {
|
|
78
|
+
async generatePermissionDeniedPage(current_role, required_role, creator_username) {
|
|
68
79
|
const path = this.getPath();
|
|
69
|
-
const
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
if (requires_creator) {
|
|
77
|
-
return `[${creator_username}]`;
|
|
78
|
-
}
|
|
79
|
-
else {
|
|
80
|
-
return `[${required_role}] or higher`;
|
|
81
|
-
}
|
|
82
|
-
})();
|
|
83
|
-
const role_note = (0, note_1.default)(`only ${role_label} can view this page.`);
|
|
84
|
-
if (!logged_in) {
|
|
80
|
+
const requires_unknown = (0, role_matches_1.default)(required_role, unknown_1.default);
|
|
81
|
+
if (requires_unknown) {
|
|
82
|
+
const header_block = (0, header_1.default)(`${emoji_1.default.WARNING_SIGN} configuration error`, {
|
|
83
|
+
color: color_1.default.YELLOW
|
|
84
|
+
});
|
|
85
|
+
const explanation = (0, note_1.default)('this page is configured to require a role that is invalid or no longer supported. ' +
|
|
86
|
+
'it\'s possible that this role used to exist, but has since been removed.');
|
|
85
87
|
return {
|
|
86
88
|
path,
|
|
87
89
|
blocks: [
|
|
88
90
|
header_block,
|
|
89
|
-
|
|
90
|
-
login_note
|
|
91
|
+
explanation
|
|
91
92
|
]
|
|
92
93
|
};
|
|
93
94
|
}
|
|
95
|
+
const requires_creator = (0, role_matches_1.default)(required_role, creator_1.default);
|
|
96
|
+
const login_note = (0, note_1.default)(`do you need to [log in](/login)?`);
|
|
97
|
+
const execution_context = this.getExecutionContext();
|
|
98
|
+
const logged_in = execution_context.isLoggedIn();
|
|
99
|
+
const header_block = (0, header_1.default)(`${emoji_1.default.LOCKED} permission denied`, {
|
|
100
|
+
color: color_1.default.MAROON
|
|
101
|
+
});
|
|
94
102
|
if (requires_creator) {
|
|
103
|
+
const account_link = `<a href="/accounts/${creator_username}">[${creator_username}]</a>`;
|
|
104
|
+
const role_note = (0, note_1.default)(`only ${account_link} can view this page.`);
|
|
105
|
+
const blocks = [
|
|
106
|
+
header_block,
|
|
107
|
+
role_note,
|
|
108
|
+
];
|
|
109
|
+
if (!logged_in) {
|
|
110
|
+
blocks.push(login_note);
|
|
111
|
+
}
|
|
95
112
|
return {
|
|
96
113
|
path,
|
|
97
|
-
blocks
|
|
98
|
-
header_block,
|
|
99
|
-
role_note
|
|
100
|
-
]
|
|
114
|
+
blocks
|
|
101
115
|
};
|
|
102
116
|
}
|
|
103
|
-
const
|
|
117
|
+
const role_url = (0, get_url_for_role_1.default)(required_role);
|
|
118
|
+
const role_link = `<a href="${role_url}">[${required_role.name}]</a>`;
|
|
119
|
+
const role_note = (0, note_1.default)(`only ${role_link} or higher can view this page.`);
|
|
120
|
+
const blocks = [
|
|
121
|
+
header_block,
|
|
122
|
+
role_note
|
|
123
|
+
];
|
|
124
|
+
if (!logged_in) {
|
|
125
|
+
const upgrade_note = (0, note_1.default)(`(you are only [${current_role}])`);
|
|
126
|
+
blocks.push(upgrade_note);
|
|
127
|
+
}
|
|
104
128
|
return {
|
|
105
129
|
path,
|
|
106
|
-
blocks
|
|
107
|
-
header_block,
|
|
108
|
-
role_note,
|
|
109
|
-
upgrade_note
|
|
110
|
-
]
|
|
130
|
+
blocks
|
|
111
131
|
};
|
|
112
132
|
}
|
|
113
|
-
async
|
|
114
|
-
const
|
|
115
|
-
const parent_path = (0, get_parent_path_1.default)(
|
|
133
|
+
async determineCreatorAndRequiredReadRole(request_context) {
|
|
134
|
+
const { path: request_path } = request_context;
|
|
135
|
+
const parent_path = (0, get_parent_path_1.default)(request_path);
|
|
116
136
|
let raw_page;
|
|
137
|
+
const parent_context = {
|
|
138
|
+
...request_context,
|
|
139
|
+
path: parent_path
|
|
140
|
+
};
|
|
117
141
|
try {
|
|
118
|
-
raw_page = await this.
|
|
142
|
+
raw_page = await this.loadRawPage(parent_context);
|
|
119
143
|
}
|
|
120
144
|
catch (error) {
|
|
121
145
|
if ((0, errors_1.errorMatches)(error, errors_1.NotFoundError)) {
|
|
122
|
-
return
|
|
146
|
+
return {
|
|
147
|
+
creator_username: 'system',
|
|
148
|
+
required_role: public_1.default
|
|
149
|
+
};
|
|
123
150
|
}
|
|
124
151
|
throw error;
|
|
125
152
|
}
|
|
@@ -134,34 +161,42 @@ class LoadPageOperation extends operation_1.default {
|
|
|
134
161
|
base_path: parent_path,
|
|
135
162
|
block: folder_block
|
|
136
163
|
});
|
|
137
|
-
return folder_path ===
|
|
164
|
+
return folder_path === request_path;
|
|
138
165
|
});
|
|
139
166
|
if (block === undefined) {
|
|
140
|
-
return
|
|
167
|
+
return {
|
|
168
|
+
creator_username: '???',
|
|
169
|
+
required_role: public_1.default
|
|
170
|
+
};
|
|
141
171
|
}
|
|
142
172
|
const permissions = (0, get_block_permissions_1.default)(block);
|
|
143
|
-
const
|
|
144
|
-
return required_role;
|
|
145
|
-
}
|
|
146
|
-
satisfiesRole(current_role, required_role) {
|
|
173
|
+
const required_role_key = permissions[permission_type_1.default.READ];
|
|
147
174
|
const roles = this.getRoles();
|
|
148
|
-
const
|
|
149
|
-
const
|
|
150
|
-
|
|
175
|
+
const required_role = (0, extract_role_1.default)(roles, required_role_key);
|
|
176
|
+
const account_id = block.creator_id;
|
|
177
|
+
const execution_context = this.getExecutionContext();
|
|
178
|
+
const operation = new find_account_1.default(account_id, execution_context);
|
|
179
|
+
const account = await operation.perform();
|
|
180
|
+
const creator_username = account.username;
|
|
181
|
+
return {
|
|
182
|
+
creator_username,
|
|
183
|
+
required_role
|
|
184
|
+
};
|
|
151
185
|
}
|
|
152
|
-
async
|
|
186
|
+
async loadRawPage(request_context) {
|
|
153
187
|
const { public_directory, routes } = this.getConfig();
|
|
188
|
+
const { path: request_path } = request_context;
|
|
154
189
|
let index = 0;
|
|
155
190
|
const blocks = [];
|
|
156
191
|
while (index < routes.length) {
|
|
157
192
|
const route = routes[index++];
|
|
158
193
|
const { path, handler } = route;
|
|
159
|
-
if (
|
|
160
|
-
const subset = await handler(
|
|
194
|
+
if (request_path === path) {
|
|
195
|
+
const subset = await handler(request_context);
|
|
161
196
|
blocks.push(...subset);
|
|
162
197
|
}
|
|
163
198
|
}
|
|
164
|
-
const filename = `.${
|
|
199
|
+
const filename = `.${request_path}/index.json`;
|
|
165
200
|
const absolute_path = path_1.default.resolve(public_directory, filename);
|
|
166
201
|
const file_exists = await (0, filesystem_1.exists)(absolute_path);
|
|
167
202
|
if (!file_exists) {
|
|
@@ -174,7 +209,7 @@ class LoadPageOperation extends operation_1.default {
|
|
|
174
209
|
return this.autogenerate();
|
|
175
210
|
}
|
|
176
211
|
else {
|
|
177
|
-
throw new errors_1.NotFoundError(`Unable to find page: ${
|
|
212
|
+
throw new errors_1.NotFoundError(`Unable to find page: ${request_path}`);
|
|
178
213
|
}
|
|
179
214
|
}
|
|
180
215
|
const contents = await (0, promises_1.readFile)(absolute_path, string_1.StringEncoding.UTF8);
|
|
@@ -193,6 +228,8 @@ class LoadPageOperation extends operation_1.default {
|
|
|
193
228
|
case custom_page_type_1.default.DATE:
|
|
194
229
|
case custom_page_type_1.default.ERROR:
|
|
195
230
|
case custom_page_type_1.default.INDEX:
|
|
231
|
+
case custom_page_type_1.default.ACCOUNT:
|
|
232
|
+
case custom_page_type_1.default.ROLE:
|
|
196
233
|
return true;
|
|
197
234
|
default:
|
|
198
235
|
return false;
|
|
@@ -213,6 +250,10 @@ class LoadPageOperation extends operation_1.default {
|
|
|
213
250
|
return this.autogenerateError();
|
|
214
251
|
case custom_page_type_1.default.INDEX:
|
|
215
252
|
return this.autogenerateIndex();
|
|
253
|
+
case custom_page_type_1.default.ACCOUNT:
|
|
254
|
+
return this.autogenerateAccount();
|
|
255
|
+
case custom_page_type_1.default.ROLE:
|
|
256
|
+
return this.autogenerateRole();
|
|
216
257
|
default:
|
|
217
258
|
throw new errors_1.InvalidError(`Unable to autogenerate page for path: ${path}`);
|
|
218
259
|
}
|
|
@@ -354,6 +395,71 @@ class LoadPageOperation extends operation_1.default {
|
|
|
354
395
|
]
|
|
355
396
|
};
|
|
356
397
|
}
|
|
398
|
+
async autogenerateAccount() {
|
|
399
|
+
const now = Date.now();
|
|
400
|
+
return {
|
|
401
|
+
blocks: [
|
|
402
|
+
(0, header_1.default)(`coming soon`),
|
|
403
|
+
{
|
|
404
|
+
block_type: block_type_1.default.EPHEMERAL,
|
|
405
|
+
label: '(nothing here yet)',
|
|
406
|
+
creator_id: system_id_1.default,
|
|
407
|
+
created_at: now
|
|
408
|
+
}
|
|
409
|
+
]
|
|
410
|
+
};
|
|
411
|
+
}
|
|
412
|
+
async autogenerateRole() {
|
|
413
|
+
const path = this.getPath();
|
|
414
|
+
const match = path.match(/^\/roles\/([a-z0-9\-]+)$/);
|
|
415
|
+
if (match === null) {
|
|
416
|
+
throw new errors_1.InvalidError(`Invalid role path: ${path}`);
|
|
417
|
+
}
|
|
418
|
+
const role_slug = match[1];
|
|
419
|
+
const desired_key = role_slug.replace(/-/g, '_');
|
|
420
|
+
const execution_context = this.getExecutionContext();
|
|
421
|
+
const { roles } = execution_context.getConfig();
|
|
422
|
+
const role_list = [];
|
|
423
|
+
let matching_role;
|
|
424
|
+
roles.forEach((role) => {
|
|
425
|
+
const role_key = (0, get_key_for_role_1.default)(role);
|
|
426
|
+
if (role_key === desired_key) {
|
|
427
|
+
matching_role = role;
|
|
428
|
+
}
|
|
429
|
+
const is_creator = role_key === default_role_1.default.CREATOR;
|
|
430
|
+
const is_unknown = role_key === default_role_1.default.UNKNOWN;
|
|
431
|
+
if (is_creator || is_unknown) {
|
|
432
|
+
return;
|
|
433
|
+
}
|
|
434
|
+
const role_url = (0, get_url_for_role_1.default)(role);
|
|
435
|
+
const { color } = role;
|
|
436
|
+
const role_label = `[${role.emoji} ${role.name}]`;
|
|
437
|
+
role_list.push(`- <a class="text-${color}" href="${role_url}">${role_label}</a>`);
|
|
438
|
+
});
|
|
439
|
+
if (matching_role === undefined) {
|
|
440
|
+
throw new errors_1.NotFoundError(`Unable to find role: ${desired_key}`);
|
|
441
|
+
}
|
|
442
|
+
const combined_roles = role_list.join('\n');
|
|
443
|
+
const { emoji, name, color } = matching_role;
|
|
444
|
+
const role_url = (0, get_url_for_role_1.default)(matching_role);
|
|
445
|
+
const role_label = `[${emoji} ${name}]`;
|
|
446
|
+
const plural_name = (0, grammar_1.pluralize)(name);
|
|
447
|
+
const group_label = `[${emoji} ${plural_name}]`;
|
|
448
|
+
const role_link = `<a class="text-${color}" href="${role_url}">${role_label}</a>`;
|
|
449
|
+
const group_link = `<a class="text-${color}" href="${role_url}">${group_label}</a>`;
|
|
450
|
+
const description = matching_role.description
|
|
451
|
+
.replace(/\[\$role\]/g, role_link)
|
|
452
|
+
.replace(/\[\$group\]/g, group_link);
|
|
453
|
+
return {
|
|
454
|
+
blocks: [
|
|
455
|
+
(0, header_1.default)(role_label, {
|
|
456
|
+
color
|
|
457
|
+
}),
|
|
458
|
+
(0, note_1.default)(`All roles:\n\n${combined_roles}`),
|
|
459
|
+
(0, note_1.default)(description)
|
|
460
|
+
]
|
|
461
|
+
};
|
|
462
|
+
}
|
|
357
463
|
getCustomPageType() {
|
|
358
464
|
const path = this.getPath();
|
|
359
465
|
return (0, get_custom_page_type_for_path_1.default)(path);
|
|
@@ -361,15 +467,26 @@ class LoadPageOperation extends operation_1.default {
|
|
|
361
467
|
getPath() {
|
|
362
468
|
return this.path;
|
|
363
469
|
}
|
|
364
|
-
async
|
|
470
|
+
async buildRequestContext() {
|
|
365
471
|
const execution_context = this.getExecutionContext();
|
|
366
472
|
const operation = new load_account_1.default(execution_context);
|
|
367
473
|
const account = await operation.perform();
|
|
474
|
+
const path = this.getPath();
|
|
368
475
|
if (account === null) {
|
|
369
|
-
return
|
|
476
|
+
return {
|
|
477
|
+
path,
|
|
478
|
+
role: public_1.default,
|
|
479
|
+
username: 'anonymous'
|
|
480
|
+
};
|
|
370
481
|
}
|
|
371
|
-
const {
|
|
372
|
-
|
|
482
|
+
const { username, role_key } = account;
|
|
483
|
+
const roles = this.getRoles();
|
|
484
|
+
const role = (0, extract_role_1.default)(roles, role_key);
|
|
485
|
+
return {
|
|
486
|
+
path,
|
|
487
|
+
role,
|
|
488
|
+
username
|
|
489
|
+
};
|
|
373
490
|
}
|
|
374
491
|
getRoles() {
|
|
375
492
|
const execution_context = this.getExecutionContext();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"load-page.js","sourceRoot":"","sources":["../../../../src/server/operation/load-page.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"load-page.js","sourceRoot":"","sources":["../../../../src/server/operation/load-page.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import BaseOperation from './../../operation';
|
|
2
|
+
import ExecutionContext from './../../lib/execution-context/index';
|
|
3
|
+
import MultipartFile from './../type/multipart-file';
|
|
4
|
+
declare class StoreFilesOperation extends BaseOperation<string[]> {
|
|
5
|
+
private files;
|
|
6
|
+
private path;
|
|
7
|
+
constructor(files: MultipartFile[], path: string, execution_context: ExecutionContext);
|
|
8
|
+
protected formatResult(result: string[]): string;
|
|
9
|
+
protected performInternal(): Promise<string[]>;
|
|
10
|
+
private storeFile;
|
|
11
|
+
private getPageFilepath;
|
|
12
|
+
private getFiles;
|
|
13
|
+
private getPath;
|
|
14
|
+
}
|
|
15
|
+
export default StoreFilesOperation;
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const promises_1 = require("fs/promises");
|
|
7
|
+
const process_1 = require("./../../lib/process/index.js");
|
|
8
|
+
const filesystem_1 = require("./../../lib/filesystem/index.js");
|
|
9
|
+
const operation_1 = __importDefault(require("./../../operation.js"));
|
|
10
|
+
const get_thumbnail_filename_1 = __importDefault(require("./../utility/get-thumbnail-filename.js"));
|
|
11
|
+
const IMAGE_EXTENSIONS = [
|
|
12
|
+
filesystem_1.FileExtension.GIF,
|
|
13
|
+
filesystem_1.FileExtension.JPG,
|
|
14
|
+
filesystem_1.FileExtension.JPEG,
|
|
15
|
+
filesystem_1.FileExtension.PNG
|
|
16
|
+
];
|
|
17
|
+
class StoreFilesOperation extends operation_1.default {
|
|
18
|
+
constructor(files, path, execution_context) {
|
|
19
|
+
super(execution_context);
|
|
20
|
+
this.files = files;
|
|
21
|
+
this.path = path;
|
|
22
|
+
}
|
|
23
|
+
formatResult(result) {
|
|
24
|
+
const path = this.getPath();
|
|
25
|
+
return `to page ${path}: ${result.join(', ')}`;
|
|
26
|
+
}
|
|
27
|
+
async performInternal() {
|
|
28
|
+
const files = this.getFiles();
|
|
29
|
+
const page_filepath = this.getPageFilepath();
|
|
30
|
+
await (0, promises_1.mkdir)(page_filepath, {
|
|
31
|
+
recursive: true
|
|
32
|
+
});
|
|
33
|
+
const filenames = [];
|
|
34
|
+
let index = 0;
|
|
35
|
+
while (index < files.length) {
|
|
36
|
+
const file = files[index++];
|
|
37
|
+
const new_filename = await this.storeFile(file);
|
|
38
|
+
if (new_filename !== null) {
|
|
39
|
+
filenames.push(new_filename);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
return filenames;
|
|
43
|
+
}
|
|
44
|
+
async storeFile(file) {
|
|
45
|
+
const logger = this.getLogger();
|
|
46
|
+
if (file.size === 0) {
|
|
47
|
+
logger.warn(`Skipping empty file: ${file.originalFilename}`);
|
|
48
|
+
return null;
|
|
49
|
+
}
|
|
50
|
+
const page_filepath = this.getPageFilepath();
|
|
51
|
+
const new_filename = file.originalFilename;
|
|
52
|
+
const new_filepath = `${page_filepath}/${new_filename}`;
|
|
53
|
+
logger.info(`Moving upload: ${file.filepath} -> ${new_filepath}`);
|
|
54
|
+
await (0, promises_1.copyFile)(file.filepath, new_filepath);
|
|
55
|
+
await (0, promises_1.unlink)(file.filepath);
|
|
56
|
+
const extension = (0, filesystem_1.getExtensionForFilepath)(new_filepath);
|
|
57
|
+
if (extension === undefined || !IMAGE_EXTENSIONS.includes(extension)) {
|
|
58
|
+
return new_filename;
|
|
59
|
+
}
|
|
60
|
+
const thumbnail_filename = (0, get_thumbnail_filename_1.default)(new_filename);
|
|
61
|
+
logger.info(`
|
|
62
|
+
Creating thumbnail for image: ${new_filename} -> ${thumbnail_filename}
|
|
63
|
+
`);
|
|
64
|
+
const command = `convert ${new_filename} -thumbnail 512x512^ -gravity center -extent 512x512 -quality 90 ${thumbnail_filename}`;
|
|
65
|
+
await (0, process_1.execute)(command, {
|
|
66
|
+
cwd: page_filepath
|
|
67
|
+
});
|
|
68
|
+
return new_filename;
|
|
69
|
+
}
|
|
70
|
+
getPageFilepath() {
|
|
71
|
+
const execution_context = this.getExecutionContext();
|
|
72
|
+
const { public_directory } = execution_context.getConfig();
|
|
73
|
+
const path = this.getPath();
|
|
74
|
+
return `${public_directory}${path}`;
|
|
75
|
+
}
|
|
76
|
+
getFiles() {
|
|
77
|
+
return this.files;
|
|
78
|
+
}
|
|
79
|
+
getPath() {
|
|
80
|
+
return this.path;
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
exports.default = StoreFilesOperation;
|
|
84
|
+
//# sourceMappingURL=store-files.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"store-files.js","sourceRoot":"","sources":["../../../../src/server/operation/store-files.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import PageType from './../../client/enum/page-type';
|
|
2
|
+
import Account from './../../type/account';
|
|
3
|
+
import BaseResultSerializer from './base';
|
|
4
|
+
declare class AccountResultSerializer extends BaseResultSerializer<Account> {
|
|
5
|
+
protected getTitle(): string;
|
|
6
|
+
protected serializeSections(): string;
|
|
7
|
+
protected getPageType(): PageType;
|
|
8
|
+
}
|
|
9
|
+
export default AccountResultSerializer;
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const page_type_1 = __importDefault(require("./../../client/enum/page-type.js"));
|
|
7
|
+
const base_1 = __importDefault(require("./base.js"));
|
|
8
|
+
class AccountResultSerializer extends base_1.default {
|
|
9
|
+
getTitle() {
|
|
10
|
+
const { username } = this.getResult();
|
|
11
|
+
return `account: [${username}]`;
|
|
12
|
+
}
|
|
13
|
+
serializeSections() {
|
|
14
|
+
const { username } = this.getResult();
|
|
15
|
+
return `
|
|
16
|
+
<section>
|
|
17
|
+
<h3>account: [${username}]</h3>
|
|
18
|
+
</section>
|
|
19
|
+
`;
|
|
20
|
+
}
|
|
21
|
+
getPageType() {
|
|
22
|
+
return page_type_1.default.ROLE;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
exports.default = AccountResultSerializer;
|
|
26
|
+
//# sourceMappingURL=account.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"account.js","sourceRoot":"","sources":["../../../../src/server/result-serializer/account.ts"],"names":[],"mappings":";;;;;AAAA,sEAA6C;AAE7C,yEAAiE;AAEjE,MAAM,uBAAwB,SAAQ,cAA6B;IACxD,QAAQ;QACjB,MAAM,EAAC,QAAQ,EAAC,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAEpC,OAAO,aAAa,QAAQ,GAAG,CAAC;IACjC,CAAC;IAES,iBAAiB;QAC1B,MAAM,EAAC,QAAQ,EAAC,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAEpC,OAAO;;oBAEW,QAAQ;;GAEzB,CAAC;IACH,CAAC;IAES,WAAW;QACpB,OAAO,mBAAQ,CAAC,IAAI,CAAC;IACtB,CAAC;CACD;AAED,kBAAe,uBAAuB,CAAC"}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import { Session } from './../../lib/execution-context/index';
|
|
2
2
|
import BaseResultSerializer from './base';
|
|
3
3
|
import Action from './../../type/action';
|
|
4
|
+
import Role from './../../type/role';
|
|
4
5
|
import PageType from './../../client/enum/page-type';
|
|
5
6
|
import Account from './../../type/account';
|
|
6
7
|
type ActionMetadata = {
|
|
7
8
|
readonly account: Account;
|
|
8
|
-
readonly roles:
|
|
9
|
+
readonly roles: Role[];
|
|
9
10
|
readonly route_paths: string[];
|
|
10
11
|
readonly creator_username: string;
|
|
11
12
|
};
|