[mod] Umbenennung zu ESPE

This commit is contained in:
roydfalk 2024-04-22 10:22:18 +02:00
parent 111a08a4af
commit 683b2b3054
19 changed files with 76 additions and 76 deletions

View file

@ -1,4 +1,4 @@
namespace _aum.api namespace _espe.api
{ {
/** /**
@ -53,7 +53,7 @@ namespace _aum.api
}), }),
"restriction": restriction_logged_in, "restriction": restriction_logged_in,
"execution": async ({"input": input}) => { "execution": async ({"input": input}) => {
await _aum.helpers.email_send( await _espe.helpers.email_send(
input.receivers, input.receivers,
input.subject, input.subject,
input.content input.content

View file

@ -1,4 +1,4 @@
namespace _aum.api namespace _espe.api
{ {
/** /**
@ -7,7 +7,7 @@ namespace _aum.api
rest_subject : lib_plankton.rest.type_rest rest_subject : lib_plankton.rest.type_rest
) : void ) : void
{ {
lib_plankton.rest.register<_aum.service.member.type_value, _aum.service.member.type_id>( lib_plankton.rest.register<_espe.service.member.type_value, _espe.service.member.type_id>(
rest_subject, rest_subject,
lib_plankton.http.enum_method.post, lib_plankton.http.enum_method.post,
"/member", "/member",
@ -53,7 +53,7 @@ namespace _aum.api
}), }),
"restriction": restriction_logged_in, "restriction": restriction_logged_in,
"execution": async ({"input": input}) => { "execution": async ({"input": input}) => {
const member_value : _aum.service.member.type_value = { const member_value : _espe.service.member.type_value = {
"enabled": false, "enabled": false,
"membership_number": input["membership_number"], "membership_number": input["membership_number"],
"name_real_value": input["name_real_value"], "name_real_value": input["name_real_value"],
@ -67,7 +67,7 @@ namespace _aum.api
"email_redirect_to_private": input["email_redirect_to_private"], "email_redirect_to_private": input["email_redirect_to_private"],
"salutation": input["salutation"], "salutation": input["salutation"],
}; };
const member_id : _aum.service.member.type_id = await _aum.service.member.add(member_value); const member_id : _espe.service.member.type_id = await _espe.service.member.add(member_value);
return Promise.resolve({ return Promise.resolve({
"status_code": 201, "status_code": 201,
"data": member_id "data": member_id

View file

@ -1,4 +1,4 @@
namespace _aum.api namespace _espe.api
{ {
/** /**
@ -7,7 +7,7 @@ namespace _aum.api
rest_subject : lib_plankton.rest.type_rest rest_subject : lib_plankton.rest.type_rest
) : void ) : void
{ {
lib_plankton.rest.register<_aum.service.member.type_value, null>( lib_plankton.rest.register<_espe.service.member.type_value, null>(
rest_subject, rest_subject,
lib_plankton.http.enum_method.delete, lib_plankton.http.enum_method.delete,
"/member/:id", "/member/:id",
@ -15,8 +15,8 @@ namespace _aum.api
"description": "löscht ein vorhandenes Mitglied", "description": "löscht ein vorhandenes Mitglied",
"restriction": restriction_logged_in, "restriction": restriction_logged_in,
"execution": async ({"path_parameters": path_parameters}) => { "execution": async ({"path_parameters": path_parameters}) => {
const member_id : _aum.service.member.type_id = parseInt(path_parameters["id"]); const member_id : _espe.service.member.type_id = parseInt(path_parameters["id"]);
await _aum.service.member.remove(member_id); await _espe.service.member.remove(member_id);
return Promise.resolve({ return Promise.resolve({
"status_code": 200, "status_code": 200,
"data": null "data": null

View file

@ -1,4 +1,4 @@
namespace _aum.api namespace _espe.api
{ {
/** /**
@ -8,7 +8,7 @@ namespace _aum.api
) : void ) : void
{ {
// TODO: translate types // TODO: translate types
lib_plankton.rest.register<null, Array<{id : _aum.service.member.type_id; preview : {};}>>( lib_plankton.rest.register<null, Array<{id : _espe.service.member.type_id; preview : {};}>>(
rest_subject, rest_subject,
lib_plankton.http.enum_method.get, lib_plankton.http.enum_method.get,
"/member", "/member",
@ -49,7 +49,7 @@ namespace _aum.api
"execution": async ({}) => { "execution": async ({}) => {
return Promise.resolve({ return Promise.resolve({
"status_code": 200, "status_code": 200,
"data": (await _aum.service.member.list()), "data": (await _espe.service.member.list()),
}); });
} }
} }

View file

@ -1,4 +1,4 @@
namespace _aum.api namespace _espe.api
{ {
/** /**
@ -19,8 +19,8 @@ namespace _aum.api
}), }),
"restriction": restriction_logged_in, "restriction": restriction_logged_in,
"execution": async ({"path_parameters": path_parameters}) => { "execution": async ({"path_parameters": path_parameters}) => {
const member_id : _aum.service.member.type_id = parseInt(path_parameters["id"]); const member_id : _espe.service.member.type_id = parseInt(path_parameters["id"]);
const member_value : _aum.service.member.type_value = await _aum.service.member.get(member_id); const member_value : _espe.service.member.type_value = await _espe.service.member.get(member_id);
return Promise.resolve({ return Promise.resolve({
"status_code": 200, "status_code": 200,
"data": { "data": {

View file

@ -1,4 +1,4 @@
namespace _aum.api namespace _espe.api
{ {
/** /**
@ -33,9 +33,9 @@ namespace _aum.api
], ],
"restriction": restriction_verification(stuff => parseInt(stuff.path_parameters["id"])), "restriction": restriction_verification(stuff => parseInt(stuff.path_parameters["id"])),
"execution": async ({"path_parameters": path_parameters, "query_parameters": query_parameters, "input": input}) => { "execution": async ({"path_parameters": path_parameters, "query_parameters": query_parameters, "input": input}) => {
const id : _aum.service.member.type_id = parseInt(path_parameters["id"]); const id : _espe.service.member.type_id = parseInt(path_parameters["id"]);
try { try {
await _aum.service.member.register( await _espe.service.member.register(
id, id,
{ {
"name_login": input.name_login, "name_login": input.name_login,

View file

@ -1,4 +1,4 @@
namespace _aum.api namespace _espe.api
{ {
/** /**
@ -7,7 +7,7 @@ namespace _aum.api
rest_subject : lib_plankton.rest.type_rest rest_subject : lib_plankton.rest.type_rest
) : void ) : void
{ {
lib_plankton.rest.register<_aum.service.member.type_value, null>( lib_plankton.rest.register<_espe.service.member.type_value, null>(
rest_subject, rest_subject,
lib_plankton.http.enum_method.patch, lib_plankton.http.enum_method.patch,
"/member/:id", "/member/:id",
@ -15,9 +15,9 @@ namespace _aum.api
"description": "ändert ein vorhandenes Mitglied", "description": "ändert ein vorhandenes Mitglied",
"restriction": restriction_logged_in, "restriction": restriction_logged_in,
"execution": async ({"path_parameters": path_parameters, "input": input}) => { "execution": async ({"path_parameters": path_parameters, "input": input}) => {
const member_id : _aum.service.member.type_id = parseInt(path_parameters["id"]); const member_id : _espe.service.member.type_id = parseInt(path_parameters["id"]);
const member_value_old : _aum.service.member.type_value = await _aum.service.member.get(member_id); const member_value_old : _espe.service.member.type_value = await _espe.service.member.get(member_id);
const member_value_new : _aum.service.member.type_value = { const member_value_new : _espe.service.member.type_value = {
"enabled": input["enabled"], "enabled": input["enabled"],
"membership_number": input["membership_number"], "membership_number": input["membership_number"],
"name_real_value": input["name_real_value"], "name_real_value": input["name_real_value"],
@ -31,7 +31,7 @@ namespace _aum.api
"email_redirect_to_private": input["email_redirect_to_private"], "email_redirect_to_private": input["email_redirect_to_private"],
"salutation": input["salutation"], "salutation": input["salutation"],
}; };
await _aum.service.member.modify(member_id, member_value_new); await _espe.service.member.modify(member_id, member_value_new);
return Promise.resolve({ return Promise.resolve({
"status_code": 200, "status_code": 200,
"data": null "data": null

View file

@ -1,4 +1,4 @@
namespace _aum.api namespace _espe.api
{ {
/** /**
@ -35,7 +35,7 @@ namespace _aum.api
}), }),
"restriction": restriction_none, "restriction": restriction_none,
"execution": async ({"input": input}) => { "execution": async ({"input": input}) => {
const admin : (null | _aum.service.admin.type_value) = await _aum.service.admin.login(input.name, input.password); const admin : (null | _espe.service.admin.type_value) = await _espe.service.admin.login(input.name, input.password);
if (admin === null) { if (admin === null) {
return Promise.resolve({ return Promise.resolve({
"status_code": 403, "status_code": 403,

View file

@ -1,4 +1,4 @@
namespace _aum.api namespace _espe.api
{ {
/** /**

View file

@ -1,4 +1,4 @@
namespace _aum.api namespace _espe.api
{ {
/** /**
@ -39,7 +39,7 @@ namespace _aum.api
"execution": async ({"input": input}) => { "execution": async ({"input": input}) => {
return Promise.resolve({ return Promise.resolve({
"status_code": 200, "status_code": 200,
"data": await _aum.helpers.verification_check(input.data, input.verification), "data": await _espe.helpers.verification_check(input.data, input.verification),
}); });
}, },
} }

View file

@ -1,4 +1,4 @@
namespace _aum.api namespace _espe.api
{ {
/** /**
@ -34,7 +34,7 @@ namespace _aum.api
"execution": async ({"input": input}) => { "execution": async ({"input": input}) => {
return Promise.resolve({ return Promise.resolve({
"status_code": 200, "status_code": 200,
"data": await _aum.helpers.verification_get(input.data), "data": await _espe.helpers.verification_get(input.data),
}); });
}, },
} }

View file

@ -1,4 +1,4 @@
namespace _aum.api namespace _espe.api
{ {
/** /**
@ -38,7 +38,7 @@ namespace _aum.api
) : lib_plankton.rest.type_restriction<any> ) : lib_plankton.rest.type_restriction<any>
{ {
return ( return (
(stuff) => _aum.helpers.verification_check( (stuff) => _espe.helpers.verification_check(
extract_data(stuff), extract_data(stuff),
stuff.query_parameters["verification"] stuff.query_parameters["verification"]
) )

View file

@ -1,4 +1,4 @@
namespace _aum.api namespace _espe.api
{ {
/** /**
@ -21,23 +21,23 @@ namespace _aum.api
); );
// session // session
{ {
_aum.api.register_session_begin(rest_subject); _espe.api.register_session_begin(rest_subject);
_aum.api.register_session_end(rest_subject); _espe.api.register_session_end(rest_subject);
} }
_aum.api.register_email(rest_subject); _espe.api.register_email(rest_subject);
// verification // verification
{ {
_aum.api.register_verification_get(rest_subject); _espe.api.register_verification_get(rest_subject);
// _aum.api.register_verification_check(rest_subject); // _espe.api.register_verification_check(rest_subject);
} }
// member // member
{ {
_aum.api.register_member_list(rest_subject); _espe.api.register_member_list(rest_subject);
_aum.api.register_member_read(rest_subject); _espe.api.register_member_read(rest_subject);
_aum.api.register_member_create(rest_subject); _espe.api.register_member_create(rest_subject);
_aum.api.register_member_update(rest_subject); _espe.api.register_member_update(rest_subject);
// _aum.api.register_member_delete(rest_subject); // _espe.api.register_member_delete(rest_subject);
_aum.api.register_member_register(rest_subject); _espe.api.register_member_register(rest_subject);
} }

View file

@ -1,4 +1,4 @@
namespace _aum.conf namespace _espe.conf
{ {
/** /**

View file

@ -1,4 +1,4 @@
namespace _aum.helpers namespace _espe.helpers
{ {
/** /**
@ -56,7 +56,7 @@ namespace _aum.helpers
{ {
return lib_plankton.database.sqlite_database( return lib_plankton.database.sqlite_database(
{ {
"path": _aum.conf.get().database_path, "path": _espe.conf.get().database_path,
"verbose": false, "verbose": false,
} }
); );
@ -71,7 +71,7 @@ namespace _aum.helpers
{ {
return lib_plankton.sha256.get( return lib_plankton.sha256.get(
lib_plankton.json.encode(data), lib_plankton.json.encode(data),
_aum.conf.get().verification_secret _espe.conf.get().verification_secret
); );
} }
@ -85,7 +85,7 @@ namespace _aum.helpers
{ {
const verification_expected : string = lib_plankton.sha256.get( const verification_expected : string = lib_plankton.sha256.get(
lib_plankton.json.encode(data), lib_plankton.json.encode(data),
_aum.conf.get().verification_secret _espe.conf.get().verification_secret
); );
return (verification === verification_expected); return (verification === verification_expected);
} }
@ -99,7 +99,7 @@ namespace _aum.helpers
content : string content : string
) : Promise<void> ) : Promise<void>
{ {
const mode : string = _aum.conf.get().email.mode; const mode : string = _espe.conf.get().email.mode;
lib_plankton.log.info( lib_plankton.log.info(
"email_send", "email_send",
{ {

View file

@ -54,7 +54,7 @@ async function main(
const args : Record<string, any> = arg_handler.read(lib_plankton.args.enum_environment.cli, args_raw.join(" ")); const args : Record<string, any> = arg_handler.read(lib_plankton.args.enum_environment.cli, args_raw.join(" "));
// conf // conf
await _aum.conf.load(args["conf_path"]); await _espe.conf.load(args["conf_path"]);
// setup // setup
lib_plankton.log.conf_push( lib_plankton.log.conf_push(
@ -68,7 +68,7 @@ async function main(
"notice": lib_plankton.log.enum_level.notice, "notice": lib_plankton.log.enum_level.notice,
"info": lib_plankton.log.enum_level.info, "info": lib_plankton.log.enum_level.info,
"debug":lib_plankton.log.enum_level.debug, "debug":lib_plankton.log.enum_level.debug,
}[_aum.conf.get().verbosity] }[_espe.conf.get().verbosity]
), ),
] ]
); );
@ -78,7 +78,7 @@ async function main(
"data_chest": lib_plankton.call.convey( "data_chest": lib_plankton.call.convey(
lib_plankton.storage.sql_table_common.chest( lib_plankton.storage.sql_table_common.chest(
{ {
"database_implementation": _aum.helpers.database_implementation(), "database_implementation": _espe.helpers.database_implementation(),
"table_name": "sessions", "table_name": "sessions",
"key_names": ["key"], "key_names": ["key"],
} }
@ -96,10 +96,10 @@ async function main(
] ]
), ),
*/ */
"default_lifetime": _aum.conf.get().session_lifetime, "default_lifetime": _espe.conf.get().session_lifetime,
} }
); );
_aum.service.member.listen_change( _espe.service.member.listen_change(
() => { () => {
lib_plankton.log.info( lib_plankton.log.info(
"member_change", "member_change",
@ -108,9 +108,9 @@ async function main(
); );
} }
); );
_aum.service.member.listen_change( _espe.service.member.listen_change(
async () => { async () => {
const authelia_export : string = await _aum.service.member.export_authelia_member_file(); const authelia_export : string = await _espe.service.member.export_authelia_member_file();
process.stdout.write(authelia_export + "\n"); process.stdout.write(authelia_export + "\n");
} }
); );
@ -145,13 +145,13 @@ async function main(
throw (new Error("SYNTAX: password-image <password>")); throw (new Error("SYNTAX: password-image <password>"));
} }
else { else {
const result : string = await _aum.helpers.bcrypt_compute(input); const result : string = await _espe.helpers.bcrypt_compute(input);
process.stdout.write(result + "\n") process.stdout.write(result + "\n")
} }
break; break;
} }
case "doc": { case "doc": {
const rest_subject : lib_plankton.rest.type_rest = _aum.api.make(); const rest_subject : lib_plankton.rest.type_rest = _espe.api.make();
process.stdout.write( process.stdout.write(
JSON.stringify( JSON.stringify(
lib_plankton.rest.to_oas(rest_subject), lib_plankton.rest.to_oas(rest_subject),
@ -162,9 +162,9 @@ async function main(
break; break;
} }
case "serve": { case "serve": {
const rest_subject : lib_plankton.rest.type_rest = _aum.api.make(); const rest_subject : lib_plankton.rest.type_rest = _espe.api.make();
const server : lib_plankton.server.type_subject = lib_plankton.server.make( const server : lib_plankton.server.type_subject = lib_plankton.server.make(
_aum.conf.get().port, _espe.conf.get().port,
async (input, metadata) => { async (input, metadata) => {
const http_request : lib_plankton.http.type_request = lib_plankton.http.decode_request(input); const http_request : lib_plankton.http.type_request = lib_plankton.http.decode_request(input);
const http_response : lib_plankton.http.type_response = await lib_plankton.rest.call( const http_response : lib_plankton.http.type_response = await lib_plankton.rest.call(
@ -185,7 +185,7 @@ async function main(
break; break;
} }
case "export-authelia": { case "export-authelia": {
process.stdout.write(await _aum.service.member.export_authelia_member_file() + "\n"); process.stdout.write(await _espe.service.member.export_authelia_member_file() + "\n");
break; break;
} }
} }

View file

@ -1,4 +1,4 @@
namespace _aum.service.admin namespace _espe.service.admin
{ {
/** /**
@ -15,7 +15,7 @@ namespace _aum.service.admin
name : string name : string
) : (null | type_value) ) : (null | type_value)
{ {
const admins : Array<{name : string; password_image : string;}> = _aum.conf.get().admins; const admins : Array<{name : string; password_image : string;}> = _espe.conf.get().admins;
const entry : (undefined | {name : string; password_image : string;}) = admins.find(entry_ => (entry_.name === name)); const entry : (undefined | {name : string; password_image : string;}) = admins.find(entry_ => (entry_.name === name));
return ( return (
(entry === undefined) (entry === undefined)
@ -35,7 +35,7 @@ namespace _aum.service.admin
password_given : string password_given : string
) : Promise<boolean> ) : Promise<boolean>
{ {
return _aum.helpers.bcrypt_compare(value.password_image, password_given); return _espe.helpers.bcrypt_compare(value.password_image, password_given);
} }

View file

@ -1,4 +1,4 @@
namespace _aum.service.member namespace _espe.service.member
{ {
/** /**
@ -59,7 +59,7 @@ namespace _aum.service.member
{ {
const store : lib_plankton.storage.type_store<type_id, Record<string, any>, {}, lib_plankton.storage.type_sql_table_autokey_search_term, Record<string, any>> = lib_plankton.storage.sql_table_autokey_store( const store : lib_plankton.storage.type_store<type_id, Record<string, any>, {}, lib_plankton.storage.type_sql_table_autokey_search_term, Record<string, any>> = lib_plankton.storage.sql_table_autokey_store(
{ {
"database_implementation": _aum.helpers.database_implementation(), "database_implementation": _espe.helpers.database_implementation(),
"table_name": "members", "table_name": "members",
"key_name": "id", "key_name": "id",
} }
@ -245,7 +245,7 @@ namespace _aum.service.member
member.email_address_numberbased_use = data.email_address_numberbased_use member.email_address_numberbased_use = data.email_address_numberbased_use
member.email_address_namebased_use = data.email_address_namebased_use member.email_address_namebased_use = data.email_address_namebased_use
member.email_redirect_to_private = data.email_redirect_to_private; member.email_redirect_to_private = data.email_redirect_to_private;
member.password_image = await _aum.helpers.bcrypt_compute(data.password); member.password_image = await _espe.helpers.bcrypt_compute(data.password);
await modify(id, member); await modify(id, member);
} }
@ -271,7 +271,7 @@ namespace _aum.service.member
? "" ? ""
: ("." + value.name_real_extension) : ("." + value.name_real_extension)
), ),
"domain": _aum.conf.get().email_domain, "domain": _espe.conf.get().email_domain,
} }
); );
} }
@ -286,9 +286,9 @@ namespace _aum.service.member
return lib_plankton.string.coin( return lib_plankton.string.coin(
"{{prefix}}{{membership_number}}@{{domain}}", "{{prefix}}{{membership_number}}@{{domain}}",
{ {
"prefix": _aum.conf.get().email_numberbased_address_prefix, "prefix": _espe.conf.get().email_numberbased_address_prefix,
"membership_number": value.membership_number, "membership_number": value.membership_number,
"domain": _aum.conf.get().email_domain, "domain": _espe.conf.get().email_domain,
} }
); );
} }

View file

@ -15,7 +15,7 @@ cmd_cp := cp
## rules ## rules
.PHONY: default .PHONY: default
default: node_modules ${dir_build}/aum default: node_modules ${dir_build}/espe
.PHONY: node_modules .PHONY: node_modules
@ -24,7 +24,7 @@ node_modules:
@ ${cmd_log} "node modules …" @ ${cmd_log} "node modules …"
@ ${cmd_cp} -r -u ${dir_lib}/node/node_modules/* ${dir_build}/node_modules/ @ ${cmd_cp} -r -u ${dir_lib}/node/node_modules/* ${dir_build}/node_modules/
${dir_temp}/aum-unlinked.js: \ ${dir_temp}/espe-unlinked.js: \
${dir_lib}/plankton/plankton.d.ts \ ${dir_lib}/plankton/plankton.d.ts \
${dir_source}/helpers.ts \ ${dir_source}/helpers.ts \
${dir_source}/service-member.ts \ ${dir_source}/service-member.ts \
@ -48,7 +48,7 @@ ${dir_temp}/aum-unlinked.js: \
@ ${cmd_mkdir} $(dir $@) @ ${cmd_mkdir} $(dir $@)
@ tsc --lib es2020 $^ --outFile $@ @ tsc --lib es2020 $^ --outFile $@
${dir_build}/aum: ${dir_source}/head.js ${dir_lib}/plankton/plankton.js ${dir_temp}/aum-unlinked.js ${dir_build}/espe: ${dir_source}/head.js ${dir_lib}/plankton/plankton.js ${dir_temp}/espe-unlinked.js
@ ${cmd_log} "link …" @ ${cmd_log} "link …"
@ ${cmd_mkdir} $(dir $@) @ ${cmd_mkdir} $(dir $@)
@ ${cmd_cat} $^ > $@ @ ${cmd_cat} $^ > $@