[upd] plankton

This commit is contained in:
Fenris Wolf 2024-09-30 20:19:34 +02:00
parent f0af1abacb
commit e96608222f
3 changed files with 763 additions and 666 deletions

View file

@ -2961,6 +2961,94 @@ declare namespace lib_plankton.url {
decode(x: string): any;
}
}
declare namespace lib_plankton.pit {
/**
*/
type type_date = {
year: int;
month: int;
day: int;
};
/**
*/
type type_ywd = {
year: int;
week: int;
day: int;
};
/**
*/
type type_time = {
hour: int;
minute: int;
second: int;
};
/**
*/
type type_datetime = {
timezone_shift: int;
date: type_date;
time: (null | type_time);
};
/**
*/
type type_pit = int;
}
declare namespace lib_plankton.pit {
/**
*/
function date_object_get_week_of_year(date: Date): int;
/**
*/
function to_unix_timestamp(pit: type_pit): int;
/**
*/
function from_unix_timestamp(unix_timestamp: int): type_pit;
/**
*/
function to_date_object(pit: type_pit): Date;
/**
* @todo timezone
*/
function to_datetime(pit: type_pit, options?: {
timezone_shift?: int;
}): type_datetime;
/**
*/
function from_datetime(datetime: type_datetime): type_pit;
/**
*/
function is_before(pit: type_pit, reference: type_pit): boolean;
/**
*/
function is_between(pit: type_pit, reference_left: type_pit, reference_right: type_pit): boolean;
/**
*/
function shift_day(pit: type_pit, increment: int): type_pit;
/**
*/
function shift_week(pit: type_pit, increment: int): type_pit;
/**
*/
function trunc_week(pit: type_pit): type_pit;
/**
*/
function now(): type_pit;
/**
* @param year year according to specified timezone shift
* @param week week according to specified timezone shift
* @return the begin of the week (monday, 00:00)
*/
function from_ywd(ywd: type_ywd, options?: {
timezone_shift?: int;
}): type_pit;
/**
* @todo timezone
*/
function to_ywd(pit: type_pit, options?: {
timezone_shift?: int;
}): type_ywd;
}
declare namespace lib_plankton.www_form {
/**
*/
@ -3118,94 +3206,6 @@ declare namespace lib_plankton.zoo_page {
export function start(): void;
export {};
}
declare namespace lib_plankton.pit {
/**
*/
type type_date = {
year: int;
month: int;
day: int;
};
/**
*/
type type_ywd = {
year: int;
week: int;
day: int;
};
/**
*/
type type_time = {
hour: int;
minute: int;
second: int;
};
/**
*/
type type_datetime = {
timezone_shift: int;
date: type_date;
time: (null | type_time);
};
/**
*/
type type_pit = int;
}
declare namespace lib_plankton.pit {
/**
*/
function date_object_get_week_of_year(date: Date): int;
/**
*/
function to_unix_timestamp(pit: type_pit): int;
/**
*/
function from_unix_timestamp(unix_timestamp: int): type_pit;
/**
*/
function to_date_object(pit: type_pit): Date;
/**
* @todo timezone
*/
function to_datetime(pit: type_pit, options?: {
timezone_shift?: int;
}): type_datetime;
/**
*/
function from_datetime(datetime: type_datetime): type_pit;
/**
*/
function is_before(pit: type_pit, reference: type_pit): boolean;
/**
*/
function is_between(pit: type_pit, reference_left: type_pit, reference_right: type_pit): boolean;
/**
*/
function shift_day(pit: type_pit, increment: int): type_pit;
/**
*/
function shift_week(pit: type_pit, increment: int): type_pit;
/**
*/
function trunc_week(pit: type_pit): type_pit;
/**
*/
function now(): type_pit;
/**
* @param year year according to specified timezone shift
* @param week week according to specified timezone shift
* @return the begin of the week (monday, 00:00)
*/
function from_ywd(ywd: type_ywd, options?: {
timezone_shift?: int;
}): type_pit;
/**
* @todo timezone
*/
function to_ywd(pit: type_pit, options?: {
timezone_shift?: int;
}): type_ywd;
}
declare namespace lib_plankton.zoo_input {
/**
* @author fenris
@ -3566,55 +3566,6 @@ declare namespace lib_plankton.zoo_input {
write(value: string): Promise<void>;
}
}
declare namespace lib_plankton.zoo_input {
/**
*/
type type_translations = {
add?: string;
remove?: string;
};
/**
* @author fenris
*/
export class class_input_list<type_element> implements interface_input<Array<type_element>> {
/**
*/
private element_input_factory;
/**
*/
private elements_container_dom;
/**
*/
private elements;
/**
*/
private translations;
/**
*/
constructor(element_input_factory: (() => interface_input<type_element>), options?: {
translations?: type_translations;
});
/**
*/
private clear;
/**
*/
private add;
/**
* [implementation]
*/
setup(parent: HTMLElement): Promise<void>;
/**
* [implementation]
*/
read(): Promise<Array<type_element>>;
/**
* [implementation]
*/
write(value: Array<type_element>): Promise<void>;
}
export {};
}
declare namespace lib_plankton.zoo_input {
/**
* @author fenris
@ -3693,6 +3644,31 @@ declare namespace lib_plankton.zoo_input {
write(value: (null | lib_plankton.pit.type_time)): Promise<void>;
}
}
declare namespace lib_plankton.zoo_input {
/**
*/
class class_input_datetime implements interface_input<lib_plankton.pit.type_datetime> {
/**
*/
private core;
/**
*/
constructor(options?: {
label_timezone_shift?: string;
label_date?: string;
label_time?: string;
});
/**
*/
setup(parent: HTMLElement): Promise<void>;
/**
*/
read(): Promise<lib_plankton.pit.type_datetime>;
/**
*/
write(value: lib_plankton.pit.type_datetime): Promise<void>;
}
}
declare namespace lib_plankton.zoo_input {
/**
* @author fenris
@ -3726,26 +3702,77 @@ declare namespace lib_plankton.zoo_input {
declare namespace lib_plankton.zoo_input {
/**
*/
class class_input_datetime implements interface_input<lib_plankton.pit.type_datetime> {
type type_translations = {
add?: string;
remove?: string;
};
/**
* @author fenris
*/
export class class_input_list<type_element> implements interface_input<Array<type_element>> {
/**
*/
private element_input_factory;
/**
*/
private elements_container_dom;
/**
*/
private elements;
/**
*/
private translations;
/**
*/
constructor(element_input_factory: (() => interface_input<type_element>), options?: {
translations?: type_translations;
});
/**
*/
private clear;
/**
*/
private add;
/**
* [implementation]
*/
setup(parent: HTMLElement): Promise<void>;
/**
* [implementation]
*/
read(): Promise<Array<type_element>>;
/**
* [implementation]
*/
write(value: Array<type_element>): Promise<void>;
}
export {};
}
declare namespace lib_plankton.zoo_input {
/**
*/
class class_input_hashmap<type_key, type_value> implements lib_plankton.zoo_input.interface_input<lib_plankton.map.type_map<type_key, type_value>> {
/**
*/
private hash_key;
/**
*/
private core;
/**
*/
constructor(options?: {
label_timezone_shift?: string;
label_date?: string;
label_time?: string;
});
constructor(hash_key: ((key: type_key) => string), key_input_factory: (() => lib_plankton.zoo_input.interface_input<type_key>), value_input_factory: (() => lib_plankton.zoo_input.interface_input<type_value>));
/**
* [implementation]
*/
setup(parent: HTMLElement): Promise<void>;
/**
* [implementation]
*/
read(): Promise<lib_plankton.pit.type_datetime>;
read(): Promise<lib_plankton.map.type_map<type_key, type_value>>;
/**
* [implementation]
*/
write(value: lib_plankton.pit.type_datetime): Promise<void>;
write(map: lib_plankton.map.type_map<type_key, type_value>): Promise<void>;
}
}
declare namespace lib_plankton.zoo_form {

File diff suppressed because it is too large Load diff

View file

@ -56,6 +56,7 @@ ${dir_temp}/logic-unlinked.js: \
${dir_source}/pages/logout/logic.ts \
${dir_source}/pages/oidc_finish/logic.ts \
${dir_source}/pages/calendar_add/logic.ts \
${dir_source}/pages/calendar_edit/logic.ts \
${dir_source}/pages/event_add/logic.ts \
${dir_source}/pages/event_edit/logic.ts \
${dir_source}/pages/events/logic.ts \