pareto-core 0.1.131 → 0.1.133
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/dist/__internals/Abort.d.ts +1 -0
- package/dist/__internals/Abort.js +3 -0
- package/dist/__internals/async/asynchronous_dictionary_builder.js +3 -3
- package/dist/__internals/async/asynchronous_list_builder.js +1 -1
- package/dist/__internals/async/create_refinement_context.d.ts +2 -2
- package/dist/__internals/async/create_refinement_context.js +1 -1
- package/dist/__internals/sync/assign/literals/Dictionary.d.ts +2 -2
- package/dist/__internals/sync/assign/literals/Dictionary.js +1 -1
- package/dist/__internals/sync/assign/literals/List.d.ts +2 -2
- package/dist/__internals/sync/assign/literals/List.js +1 -1
- package/dist/__internals/sync/data_switch.d.ts +35 -0
- package/dist/__internals/sync/data_switch.js +42 -0
- package/dist/__internals/sync/decide.d.ts +35 -0
- package/dist/__internals/sync/decide.js +74 -0
- package/dist/__internals/sync/literal.d.ts +10 -0
- package/dist/__internals/sync/literal.js +67 -0
- package/dist/__internals/sync/select.d.ts +2 -2
- package/dist/__internals/sync/{assign/construct → transform}/boolean.d.ts +1 -1
- package/dist/__internals/sync/transform/boolean.js +35 -0
- package/dist/__internals/sync/{assign/construct → transform}/dictionary.d.ts +4 -7
- package/dist/__internals/sync/transform/dictionary.js +291 -0
- package/dist/__internals/sync/{assign/construct → transform}/group.d.ts +1 -4
- package/dist/__internals/sync/transform/group.js +19 -0
- package/dist/__internals/sync/{assign/construct → transform}/list.d.ts +1 -4
- package/dist/__internals/sync/transform/list.js +84 -0
- package/dist/__internals/sync/{assign/construct → transform}/number.d.ts +3 -3
- package/dist/__internals/sync/{assign/construct → transform}/number.js +1 -1
- package/dist/__internals/sync/{assign/construct → transform}/optional.d.ts +1 -5
- package/dist/__internals/sync/transform/optional.js +31 -0
- package/dist/__internals/sync/{assign/construct → transform}/state.d.ts +1 -1
- package/dist/__internals/sync/{assign/construct → transform}/state.js +1 -1
- package/dist/assign.d.ts +9 -8
- package/dist/assign.js +11 -10
- package/dist/command/implementation/Command_Block.d.ts +2 -2
- package/dist/command/implementation/command.d.ts +2 -2
- package/dist/command/implementation/command.js +1 -1
- package/dist/command/implementation/command_procedure.d.ts +6 -6
- package/dist/command/implementation/command_procedure.js +1 -1
- package/dist/command/implementation/command_promise.d.ts +2 -2
- package/dist/command/implementation/command_statement.d.ts +3 -3
- package/dist/command/implementation/command_statement.js +4 -4
- package/dist/command/implementation/handle_command_block.d.ts +2 -2
- package/dist/command/implementation/index.d.ts +1 -1
- package/dist/command/implementation/index.js +25 -3
- package/dist/data/interface/Dictionary.d.ts +1 -1
- package/dist/data/interface/List.d.ts +1 -1
- package/dist/data/interface/lookup.d.ts +1 -1
- package/dist/production/implementation/index.d.ts +3 -0
- package/dist/production/implementation/index.js +43 -0
- package/dist/production/interface/Iterator.d.ts +4 -4
- package/dist/production/interface/index.d.ts +1 -1
- package/dist/query/implementation/__query_result.js +1 -1
- package/dist/query/implementation/index.d.ts +1 -1
- package/dist/query/implementation/index.js +25 -3
- package/dist/query/implementation/query.d.ts +2 -2
- package/dist/query/implementation/query_expression.js +1 -1
- package/dist/query/implementation/query_function.d.ts +4 -4
- package/dist/query/interface/Query_Result.d.ts +1 -1
- package/dist/refiner/implementation/index.d.ts +3 -0
- package/dist/refiner/implementation/index.js +43 -0
- package/dist/refiner/interface/index.d.ts +1 -1
- package/dist/specials/assert.d.ts +2 -2
- package/dist/specials/assert.js +1 -1
- package/dist/specials/iterate.js +5 -5
- package/dist/transformer/implementation/index.d.ts +10 -1
- package/dist/transformer/implementation/index.js +34 -5
- package/package.json +1 -1
- package/dist/__internals/sync/assign/construct/boolean.js +0 -35
- package/dist/__internals/sync/assign/construct/dictionary.js +0 -301
- package/dist/__internals/sync/assign/construct/group.js +0 -23
- package/dist/__internals/sync/assign/construct/list.js +0 -122
- package/dist/__internals/sync/assign/construct/optional.js +0 -40
- package/dist/__internals/sync/extracts_for_async.d.ts +0 -20
- package/dist/__internals/sync/extracts_for_async.js +0 -55
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export type Abort<Error> = (error: Error) => never;
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQWJvcnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvX19pbnRlcm5hbHMvQWJvcnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiJ9
|
|
@@ -34,7 +34,7 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
34
34
|
})();
|
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
36
|
exports.default = create_asynchronous_dictionary_builder;
|
|
37
|
-
const
|
|
37
|
+
const p_a = __importStar(require("../../assign"));
|
|
38
38
|
function create_asynchronous_dictionary_builder() {
|
|
39
39
|
const entries = {};
|
|
40
40
|
return {
|
|
@@ -42,8 +42,8 @@ function create_asynchronous_dictionary_builder() {
|
|
|
42
42
|
entries[id] = entry;
|
|
43
43
|
},
|
|
44
44
|
'get dictionary': () => {
|
|
45
|
-
return
|
|
45
|
+
return p_a.literal.dictionary(entries);
|
|
46
46
|
},
|
|
47
47
|
};
|
|
48
48
|
}
|
|
49
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
49
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXN5bmNocm9ub3VzX2RpY3Rpb25hcnlfYnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9fX2ludGVybmFscy9hc3luYy9hc3luY2hyb25vdXNfZGljdGlvbmFyeV9idWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBUUEseURBWUM7QUFuQkQsa0RBQW1DO0FBT25DLFNBQXdCLHNDQUFzQztJQUMxRCxNQUFNLE9BQU8sR0FBNEIsRUFBRSxDQUFBO0lBRTNDLE9BQU87UUFDSCxXQUFXLEVBQUUsQ0FBQyxFQUFVLEVBQUUsS0FBWSxFQUFFLEVBQUU7WUFDdEMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEtBQUssQ0FBQTtRQUN2QixDQUFDO1FBRUQsZ0JBQWdCLEVBQUUsR0FBRyxFQUFFO1lBQ25CLE9BQU8sR0FBRyxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUE7UUFDMUMsQ0FBQztLQUNKLENBQUE7QUFDTCxDQUFDIn0=
|
|
@@ -16,4 +16,4 @@ function create_asynchronous_list_builder() {
|
|
|
16
16
|
},
|
|
17
17
|
};
|
|
18
18
|
}
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXN5bmNocm9ub3VzX2xpc3RfYnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9fX2ludGVybmFscy9hc3luYy9hc3luY2hyb25vdXNfbGlzdF9idWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBWUEsbURBaUJDO0FBNUJELHVEQUF5RDtBQVd6RCxTQUF3QixnQ0FBZ0M7SUFHcEQsTUFBTSxLQUFLLEdBQVcsRUFBRSxDQUFBO0lBRXhCLE9BQU87UUFDSCxVQUFVLEVBQUUsQ0FBQyxJQUFVLEVBQUUsRUFBRTtZQUN2QixLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFBO1FBQ3BCLENBQUM7UUFDRCxVQUFVLEVBQUUsQ0FBQyxJQUFxQixFQUFFLEVBQUU7WUFDbEMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQyxDQUFBO1FBQ3hDLENBQUM7UUFFRCxVQUFVLEVBQUUsR0FBRyxFQUFFO1lBQ2IsT0FBTyxJQUFJLGlCQUFVLENBQUMsS0FBSyxDQUFDLENBQUE7UUFDaEMsQ0FBQztLQUNKLENBQUE7QUFDTCxDQUFDIn0=
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { Abort } from "../Abort";
|
|
2
2
|
export type Refinement_Result<Output, Error> = {
|
|
3
3
|
__extract_data: <T>(on_success: ($: Output) => T, on_error: ($: Error) => T) => T;
|
|
4
4
|
};
|
|
5
|
-
export default function create_refinement_context<Output, Error>(callback: (abort:
|
|
5
|
+
export default function create_refinement_context<Output, Error>(callback: (abort: Abort<Error>) => Output): Refinement_Result<Output, Error>;
|
|
@@ -25,4 +25,4 @@ function create_refinement_context(callback) {
|
|
|
25
25
|
}
|
|
26
26
|
});
|
|
27
27
|
}
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlX3JlZmluZW1lbnRfY29udGV4dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9fX2ludGVybmFscy9hc3luYy9jcmVhdGVfcmVmaW5lbWVudF9jb250ZXh0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBV0EsNENBOEJDO0FBOUJELFNBQXdCLHlCQUF5QixDQUM3QyxRQUF5QztJQUV6QyxPQUFPLENBQUM7UUFDSixjQUFjLENBQ1YsU0FBMkIsRUFDM0IsUUFBeUI7WUFFekIsTUFBTSx3QkFBd0I7Z0JBQzFCLFlBQ29CLEtBQVk7b0JBQVosVUFBSyxHQUFMLEtBQUssQ0FBTztnQkFDNUIsQ0FBQzthQUNSO1lBQ0QsSUFBSSxDQUFDO2dCQUNELE9BQU8sU0FBUyxDQUNaLFFBQVEsQ0FDSixDQUFDLEtBQUssRUFBRSxFQUFFO29CQUNOLE1BQU0sSUFBSSx3QkFBd0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDOUMsQ0FBQyxDQUNKLENBQ0osQ0FBQTtZQUNMLENBQUM7WUFBQyxPQUFPLENBQUMsRUFBRSxDQUFDO2dCQUNULElBQUksQ0FBQyxZQUFZLHdCQUF3QixFQUFFLENBQUM7b0JBQ3hDLE9BQU8sUUFBUSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQTtnQkFDNUIsQ0FBQztxQkFBTSxDQUFDO29CQUNKLE1BQU0sQ0FBQyxDQUFBLENBQUMsNkJBQTZCO2dCQUN6QyxDQUFDO1lBQ0wsQ0FBQztRQUNMLENBQUM7S0FDSixDQUFDLENBQUE7QUFDTixDQUFDIn0=
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import * as p_i from "../../../../interface";
|
|
2
1
|
import * as p_di from "../../../../data/interface";
|
|
2
|
+
import { Abort } from "../../../Abort";
|
|
3
3
|
export type ID_Value_Pair<T> = [string, T];
|
|
4
4
|
export type Dictionary_As_Array<T extends p_di.Value> = readonly ID_Value_Pair<T>[];
|
|
5
5
|
export declare class Dictionary_Class<T extends p_di.Value> implements p_di.Dictionary<T> {
|
|
@@ -10,7 +10,7 @@ export declare class Dictionary_Class<T extends p_di.Value> implements p_di.Dict
|
|
|
10
10
|
__get_possible_entry_deprecated(id: string): p_di.Optional_Value<T>;
|
|
11
11
|
__get_entry_raw(id: string): p_di.Raw_Optional_Value<T>;
|
|
12
12
|
__get_entry_deprecated(id: string, abort: {
|
|
13
|
-
no_such_entry:
|
|
13
|
+
no_such_entry: Abort<null>;
|
|
14
14
|
}): T;
|
|
15
15
|
__get_number_of_entries(): number;
|
|
16
16
|
__get_raw_copy(): readonly [string, T][];
|
|
@@ -86,4 +86,4 @@ class Dictionary_Class {
|
|
|
86
86
|
}
|
|
87
87
|
}
|
|
88
88
|
exports.Dictionary_Class = Dictionary_Class;
|
|
89
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
89
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGljdGlvbmFyeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9fX2ludGVybmFscy9zeW5jL2Fzc2lnbi9saXRlcmFscy9EaWN0aW9uYXJ5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUNBLHFEQUFzQztBQUd0QyxpQ0FBbUM7QUFPbkMsTUFBYSxnQkFBZ0I7SUFFekIsWUFBWSxNQUE4QjtRQUN0QyxJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQTtJQUN4QixDQUFDO0lBQ00sT0FBTyxDQUNWLEVBQWdDO1FBRWhDLE9BQU8sSUFBSSxnQkFBZ0IsQ0FBSyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQ2xELE9BQU87Z0JBQ0gsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDSixFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUNqQixDQUFBO1FBQ0wsQ0FBQyxDQUFDLENBQUMsQ0FBQTtJQUNQLENBQUM7SUFDRCxTQUFTLENBQ0wsWUFBZ0Q7UUFFaEQsT0FBTyxJQUFJLGlCQUFVLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFBO0lBQzNFLENBQUM7SUFFRCwrQkFBK0IsQ0FDM0IsRUFBVTtRQUVWLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsS0FBSyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7WUFDL0MsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQTtZQUM1QixJQUFJLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQztnQkFDbEIsT0FBTyxJQUFJLFFBQVEsQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtZQUNwRCxDQUFDO1FBQ0wsQ0FBQztRQUNELE9BQU8sSUFBSSxRQUFRLENBQUMsc0JBQXNCLEVBQUUsQ0FBQTtJQUNoRCxDQUFDO0lBRUQsZUFBZSxDQUNYLEVBQVU7UUFFVixLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEtBQUssSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO1lBQy9DLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUE7WUFDNUIsSUFBSSxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUM7Z0JBQ2xCLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtZQUNyQixDQUFDO1FBQ0wsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFBO0lBQ2YsQ0FBQztJQUVELHNCQUFzQixDQUNsQixFQUFVLEVBQ1YsS0FFQztRQUVELEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsS0FBSyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7WUFDL0MsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQTtZQUM1QixJQUFJLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQztnQkFDbEIsT0FBTyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUE7WUFDbkIsQ0FBQztRQUNMLENBQUM7UUFDRCxPQUFPLEtBQUssQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUE7SUFDcEMsQ0FBQztJQUVELHVCQUF1QjtRQUNuQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFBO0lBQzdCLENBQUM7SUFFRCxjQUFjO1FBQ1YsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFBO0lBQ3RCLENBQUM7Q0FFSjtBQXBFRCw0Q0FvRUMifQ==
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as p_di from "../../../../data/interface";
|
|
2
|
-
import * as p_i from "../../../../interface";
|
|
3
2
|
import * as optional from "./Optional";
|
|
3
|
+
import { Abort } from "../../../Abort";
|
|
4
4
|
export declare class List_Class<T extends p_di.Value> implements p_di.List<T> {
|
|
5
5
|
private data;
|
|
6
6
|
constructor(data: readonly T[]);
|
|
@@ -8,7 +8,7 @@ export declare class List_Class<T extends p_di.Value> implements p_di.List<T> {
|
|
|
8
8
|
__get_number_of_items(): number;
|
|
9
9
|
__deprecated_get_possible_item_at(index: number): optional.Not_Set_Optional_Value<T> | optional.Set_Optional_Value<T>;
|
|
10
10
|
__deprecated_get_item_at(index: number, abort: {
|
|
11
|
-
out_of_bounds:
|
|
11
|
+
out_of_bounds: Abort<null>;
|
|
12
12
|
}): T;
|
|
13
13
|
__get_raw_copy(): readonly T[];
|
|
14
14
|
}
|
|
@@ -64,4 +64,4 @@ class List_Class {
|
|
|
64
64
|
}
|
|
65
65
|
}
|
|
66
66
|
exports.List_Class = List_Class;
|
|
67
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
67
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTGlzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9fX2ludGVybmFscy9zeW5jL2Fzc2lnbi9saXRlcmFscy9MaXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUNBLHFEQUFzQztBQUd0QyxNQUFhLFVBQVU7SUFFbkIsWUFBWSxJQUFrQjtRQUMxQixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQTtJQUNwQixDQUFDO0lBQ0QsT0FBTyxDQUNILEVBQW9CO1FBRXBCLE9BQU8sSUFBSSxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtZQUMxQyxPQUFPLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQTtRQUNwQixDQUFDLENBQUMsQ0FBQyxDQUFBO0lBQ1AsQ0FBQztJQUVELHFCQUFxQjtRQUNqQixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFBO0lBQzNCLENBQUM7SUFFRCxpQ0FBaUMsQ0FBQyxLQUFhO1FBQzNDLElBQUksS0FBSyxHQUFHLENBQUMsSUFBSSxLQUFLLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUN6QyxPQUFPLElBQUksUUFBUSxDQUFDLHNCQUFzQixFQUFLLENBQUE7UUFDbkQsQ0FBQztRQUNELE9BQU8sSUFBSSxRQUFRLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFBO0lBQzVELENBQUM7SUFFRCx3QkFBd0IsQ0FDcEIsS0FBYSxFQUNiLEtBRUM7UUFFRCxJQUFJLEtBQUssR0FBRyxDQUFDLElBQUksS0FBSyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDekMsT0FBTyxLQUFLLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFBO1FBQ3BDLENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUE7SUFDM0IsQ0FBQztJQUVELGNBQWM7UUFDVixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUE7SUFDcEIsQ0FBQztDQUdKO0FBekNELGdDQXlDQyJ9
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import * as p_di from "../../data/interface";
|
|
2
|
+
export type Option<T extends p_di.Value> = readonly [string, T];
|
|
3
|
+
/**
|
|
4
|
+
* ss means 'switch state'.
|
|
5
|
+
* used to make the value T the context variable ('$')
|
|
6
|
+
* given a tuple of a string and a value T,
|
|
7
|
+
* the function takes the value T and calls back the callback ($c)
|
|
8
|
+
* notice that the string part is never used
|
|
9
|
+
*
|
|
10
|
+
* example:
|
|
11
|
+
*
|
|
12
|
+
* switch ($.state[0]) {
|
|
13
|
+
* case 'on':
|
|
14
|
+
* return ss($.state, ($) => $.value)
|
|
15
|
+
* case 'off':
|
|
16
|
+
* return ss($.state, ($) => null)
|
|
17
|
+
* default: return au($.state[0])
|
|
18
|
+
* }
|
|
19
|
+
*/
|
|
20
|
+
export declare function ss<T extends p_di.Value, RT extends p_di.Value>(option: Option<T>, $c: ($: T) => RT): RT;
|
|
21
|
+
/**
|
|
22
|
+
* au means 'assert unreachable'. Used in the 'default' clause of switch statements to ensure
|
|
23
|
+
* during compile time that all possible cases have been implemented
|
|
24
|
+
*
|
|
25
|
+
* example:
|
|
26
|
+
*
|
|
27
|
+
* switch (x) {
|
|
28
|
+
* case '5':
|
|
29
|
+
* return 5
|
|
30
|
+
* default: return au(x)
|
|
31
|
+
* }
|
|
32
|
+
*
|
|
33
|
+
* @param _x
|
|
34
|
+
*/
|
|
35
|
+
export declare function au<RT>(_x: never): RT;
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ss = ss;
|
|
4
|
+
exports.au = au;
|
|
5
|
+
/**
|
|
6
|
+
* ss means 'switch state'.
|
|
7
|
+
* used to make the value T the context variable ('$')
|
|
8
|
+
* given a tuple of a string and a value T,
|
|
9
|
+
* the function takes the value T and calls back the callback ($c)
|
|
10
|
+
* notice that the string part is never used
|
|
11
|
+
*
|
|
12
|
+
* example:
|
|
13
|
+
*
|
|
14
|
+
* switch ($.state[0]) {
|
|
15
|
+
* case 'on':
|
|
16
|
+
* return ss($.state, ($) => $.value)
|
|
17
|
+
* case 'off':
|
|
18
|
+
* return ss($.state, ($) => null)
|
|
19
|
+
* default: return au($.state[0])
|
|
20
|
+
* }
|
|
21
|
+
*/
|
|
22
|
+
function ss(option, $c) {
|
|
23
|
+
return $c(option[1]);
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* au means 'assert unreachable'. Used in the 'default' clause of switch statements to ensure
|
|
27
|
+
* during compile time that all possible cases have been implemented
|
|
28
|
+
*
|
|
29
|
+
* example:
|
|
30
|
+
*
|
|
31
|
+
* switch (x) {
|
|
32
|
+
* case '5':
|
|
33
|
+
* return 5
|
|
34
|
+
* default: return au(x)
|
|
35
|
+
* }
|
|
36
|
+
*
|
|
37
|
+
* @param _x
|
|
38
|
+
*/
|
|
39
|
+
function au(_x) {
|
|
40
|
+
throw new Error("unreachable");
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YV9zd2l0Y2guanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvX19pbnRlcm5hbHMvc3luYy9kYXRhX3N3aXRjaC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQW9CQSxnQkFJQztBQWdCRCxnQkFJQztBQXpDRDs7Ozs7Ozs7Ozs7Ozs7OztHQWdCRztBQUNILFNBQWdCLEVBQUUsQ0FDZCxNQUFpQixFQUNqQixFQUFnQjtJQUNoQixPQUFPLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtBQUN4QixDQUFDO0FBRUQ7Ozs7Ozs7Ozs7Ozs7R0FhRztBQUNILFNBQWdCLEVBQUUsQ0FDZCxFQUFTO0lBRVQsTUFBTSxJQUFJLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQTtBQUNsQyxDQUFDIn0=
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import * as p_di from "../../data/interface";
|
|
2
|
+
export type Option<T extends p_di.Value> = readonly [string, T];
|
|
3
|
+
/**
|
|
4
|
+
* ss means 'switch state'.
|
|
5
|
+
* used to make the value T the context variable ('$')
|
|
6
|
+
* given a tuple of a string and a value T,
|
|
7
|
+
* the function takes the value T and calls back the callback ($c)
|
|
8
|
+
* notice that the string part is never used
|
|
9
|
+
*
|
|
10
|
+
* example:
|
|
11
|
+
*
|
|
12
|
+
* switch ($.state[0]) {
|
|
13
|
+
* case 'on':
|
|
14
|
+
* return ss($.state, ($) => $.value)
|
|
15
|
+
* case 'off':
|
|
16
|
+
* return ss($.state, ($) => null)
|
|
17
|
+
* default: return au($.state[0])
|
|
18
|
+
* }
|
|
19
|
+
*/
|
|
20
|
+
export declare const boolean: <RT>(boolean_value: boolean, if_true: () => RT, if_false: () => RT) => RT;
|
|
21
|
+
export declare const dictionary: <T extends p_di.Value>(dictionary: p_di.Dictionary<T>) => {
|
|
22
|
+
contains_entry: <RT extends p_di.Value>(id: string, if_true: ($: T) => RT, if_not_true: () => RT) => RT;
|
|
23
|
+
has_entries: <RT extends p_di.Value>(if_true: ($: p_di.Dictionary<T>) => RT, if_not_true: () => RT) => RT;
|
|
24
|
+
has_single_entry: <RT extends p_di.Value>(if_true: ($: T, id: string) => RT, if_multiple: ($: p_di.Dictionary<T>) => RT, if_none: () => RT) => RT;
|
|
25
|
+
};
|
|
26
|
+
export declare const list: <T extends p_di.Value>(list: p_di.List<T>) => {
|
|
27
|
+
has_first_item: <RT extends p_di.Value>(if_true: ($: T, rest: p_di.List<T>) => RT, if_not_true: () => RT) => RT;
|
|
28
|
+
has_items: <RT extends p_di.Value>(if_true: ($: p_di.List<T>) => RT, if_not_true: () => RT) => RT;
|
|
29
|
+
has_last_item: <RT extends p_di.Value>(if_true: ($: T, rest: p_di.List<T>) => RT, if_not_true: () => RT) => RT;
|
|
30
|
+
has_match: <RT extends p_di.Value>(test: ($: T) => p_di.Optional_Value<RT>, if_no_match: () => RT) => RT;
|
|
31
|
+
has_single_item: <RT extends p_di.Value>(if_true: ($: T) => RT, if_multiple: ($: p_di.List<T>) => RT, if_none: () => RT) => RT;
|
|
32
|
+
};
|
|
33
|
+
export declare const optional: <T extends p_di.Value, RT extends p_di.Value>(optional: p_di.Optional_Value<T>, if_set: ($: T) => RT, if_not_set: () => RT) => RT;
|
|
34
|
+
export declare const state: <T extends p_di.State, RT extends p_di.Value>(state: T, assign: (output: T) => RT) => RT;
|
|
35
|
+
export declare const text: <RT extends p_di.Value>(text: string, assign: (output: string) => RT) => RT;
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.text = exports.state = exports.optional = exports.list = exports.dictionary = exports.boolean = void 0;
|
|
4
|
+
const List_1 = require("./assign/literals/List");
|
|
5
|
+
/**
|
|
6
|
+
* ss means 'switch state'.
|
|
7
|
+
* used to make the value T the context variable ('$')
|
|
8
|
+
* given a tuple of a string and a value T,
|
|
9
|
+
* the function takes the value T and calls back the callback ($c)
|
|
10
|
+
* notice that the string part is never used
|
|
11
|
+
*
|
|
12
|
+
* example:
|
|
13
|
+
*
|
|
14
|
+
* switch ($.state[0]) {
|
|
15
|
+
* case 'on':
|
|
16
|
+
* return ss($.state, ($) => $.value)
|
|
17
|
+
* case 'off':
|
|
18
|
+
* return ss($.state, ($) => null)
|
|
19
|
+
* default: return au($.state[0])
|
|
20
|
+
* }
|
|
21
|
+
*/
|
|
22
|
+
const boolean = (boolean_value, if_true, if_false) => boolean_value
|
|
23
|
+
? if_true()
|
|
24
|
+
: if_false();
|
|
25
|
+
exports.boolean = boolean;
|
|
26
|
+
const dictionary = (dictionary) => {
|
|
27
|
+
return {
|
|
28
|
+
contains_entry: (id, if_true, if_not_true) => dictionary.__get_possible_entry_deprecated(id).__decide(($) => if_true($), () => if_not_true()),
|
|
29
|
+
has_entries: (if_true, if_not_true) => dictionary.__get_number_of_entries() !== 0
|
|
30
|
+
? if_true(dictionary)
|
|
31
|
+
: if_not_true(),
|
|
32
|
+
has_single_entry: (if_true, if_multiple, if_none) => {
|
|
33
|
+
return (0, exports.list)(dictionary.__to_list(($, id) => ({ 'id': id, 'value': $ }))).has_single_item((item) => if_true(item.value, item.id), () => if_multiple(dictionary), if_none);
|
|
34
|
+
}
|
|
35
|
+
};
|
|
36
|
+
};
|
|
37
|
+
exports.dictionary = dictionary;
|
|
38
|
+
const list = (list) => {
|
|
39
|
+
return {
|
|
40
|
+
has_first_item: (if_true, if_not_true) => list.__deprecated_get_possible_item_at(0).__decide(($) => if_true($, new List_1.List_Class(list.__get_raw_copy().slice(1))), () => if_not_true()),
|
|
41
|
+
has_items: (if_true, if_not_true) => list.__get_number_of_items() !== 0
|
|
42
|
+
? if_true(list)
|
|
43
|
+
: if_not_true(),
|
|
44
|
+
has_last_item: (if_true, if_not_true) => list.__deprecated_get_possible_item_at(list.__get_number_of_items() - 1).__decide(($) => if_true($, new List_1.List_Class(list.__get_raw_copy().slice(0, -1))), () => if_not_true()),
|
|
45
|
+
has_match: (test, if_no_match) => {
|
|
46
|
+
const raw = list.__get_raw_copy();
|
|
47
|
+
for (let i = 0; i < raw.length; i++) {
|
|
48
|
+
const item = raw[i];
|
|
49
|
+
const result = test(item).__get_raw();
|
|
50
|
+
if (result !== null) {
|
|
51
|
+
return result[0];
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
return if_no_match();
|
|
55
|
+
},
|
|
56
|
+
has_single_item: (if_true, if_multiple, if_none) => {
|
|
57
|
+
return (list.__get_number_of_items() > 1)
|
|
58
|
+
? if_multiple(list)
|
|
59
|
+
: list.__deprecated_get_possible_item_at(0).__decide(($) => if_true($), () => if_none());
|
|
60
|
+
},
|
|
61
|
+
};
|
|
62
|
+
};
|
|
63
|
+
exports.list = list;
|
|
64
|
+
const optional = (optional, if_set, if_not_set) => optional.__decide(if_set, if_not_set);
|
|
65
|
+
exports.optional = optional;
|
|
66
|
+
const state = (state, assign) => {
|
|
67
|
+
return assign(state);
|
|
68
|
+
};
|
|
69
|
+
exports.state = state;
|
|
70
|
+
const text = (text, assign) => {
|
|
71
|
+
return assign(text);
|
|
72
|
+
};
|
|
73
|
+
exports.text = text;
|
|
74
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVjaWRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL19faW50ZXJuYWxzL3N5bmMvZGVjaWRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLGlEQUFtRDtBQUluRDs7Ozs7Ozs7Ozs7Ozs7OztHQWdCRztBQUdRLE1BQU0sT0FBTyxHQUFHLENBQ25CLGFBQXNCLEVBQ3RCLE9BQWlCLEVBQ2pCLFFBQWtCLEVBQ2hCLEVBQUUsQ0FBQyxhQUFhO0lBQ2QsQ0FBQyxDQUFDLE9BQU8sRUFBRTtJQUNYLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQTtBQU5QLFFBQUEsT0FBTyxXQU1BO0FBSWIsTUFBTSxVQUFVLEdBQUcsQ0FDdEIsVUFBOEIsRUFDaEMsRUFBRTtJQUNBLE9BQU87UUFFSCxjQUFjLEVBQUUsQ0FDWixFQUFVLEVBQ1YsT0FBcUIsRUFDckIsV0FBcUIsRUFDbkIsRUFBRSxDQUFDLFVBQVUsQ0FBQywrQkFBK0IsQ0FBQyxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQzVELENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQ2pCLEdBQUcsRUFBRSxDQUFDLFdBQVcsRUFBRSxDQUN0QjtRQUVELFdBQVcsRUFBRSxDQUNULE9BQXNDLEVBQ3RDLFdBQXFCLEVBQ25CLEVBQUUsQ0FBQyxVQUFVLENBQUMsdUJBQXVCLEVBQUUsS0FBSyxDQUFDO1lBQzNDLENBQUMsQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDO1lBQ3JCLENBQUMsQ0FBQyxXQUFXLEVBQUU7UUFFdkIsZ0JBQWdCLEVBQUUsQ0FDZCxPQUFpQyxFQUNqQyxXQUEwQyxFQUMxQyxPQUFpQixFQUNmLEVBQUU7WUFDSixPQUFPLElBQUEsWUFBSSxFQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxPQUFPLEVBQUUsQ0FB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
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import * as p_di from "../../data/interface";
|
|
2
|
+
export declare function dictionary<T extends p_di.Value>(source: {
|
|
3
|
+
readonly [id: string]: T;
|
|
4
|
+
}): p_di.Dictionary<T>;
|
|
5
|
+
export declare function list<T extends p_di.Value>(source: readonly T[]): p_di.List<T>;
|
|
6
|
+
export declare const nested_list: <T extends p_di.Value>(lists: (T[] | p_di.List<T>)[]) => p_di.List<T>;
|
|
7
|
+
export declare const repeat: <T extends p_di.Value>(item: T, times: number) => p_di.List<T>;
|
|
8
|
+
export declare const set: <T extends p_di.Value>(value: T) => p_di.Optional_Value<T>;
|
|
9
|
+
export declare const not_set: <T extends p_di.Value>() => p_di.Optional_Value<T>;
|
|
10
|
+
export declare const group_resolve: <Resolved extends p_di.Group>(assign: () => Resolved) => Resolved;
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.group_resolve = exports.not_set = exports.set = exports.repeat = exports.nested_list = void 0;
|
|
4
|
+
exports.dictionary = dictionary;
|
|
5
|
+
exports.list = list;
|
|
6
|
+
const Dictionary_1 = require("../sync/assign/literals/Dictionary");
|
|
7
|
+
const List_1 = require("../sync/assign/literals/List");
|
|
8
|
+
const Optional_1 = require("../sync/assign/literals/Optional");
|
|
9
|
+
function dictionary(source) {
|
|
10
|
+
function create_dictionary_as_array(source) {
|
|
11
|
+
const imp = [];
|
|
12
|
+
Object.keys(source).forEach((id) => {
|
|
13
|
+
imp.push([id, source[id]]);
|
|
14
|
+
});
|
|
15
|
+
return imp;
|
|
16
|
+
}
|
|
17
|
+
return new Dictionary_1.Dictionary_Class(create_dictionary_as_array(source));
|
|
18
|
+
}
|
|
19
|
+
function list(source) {
|
|
20
|
+
if (!(source instanceof Array)) {
|
|
21
|
+
throw new Error("invalid input in 'list_literal'");
|
|
22
|
+
}
|
|
23
|
+
const data = source.slice(); //create a copy
|
|
24
|
+
/**
|
|
25
|
+
* this is an implementation, not public by design
|
|
26
|
+
* If you feel the need to rename this class, don't rename it to 'Array',
|
|
27
|
+
* it will break the 'instanceOf Array' test
|
|
28
|
+
*/
|
|
29
|
+
return new List_1.List_Class(data);
|
|
30
|
+
}
|
|
31
|
+
const nested_list = (lists) => {
|
|
32
|
+
const out = [];
|
|
33
|
+
lists.forEach(($) => {
|
|
34
|
+
if ($ == undefined) {
|
|
35
|
+
// do nothing
|
|
36
|
+
}
|
|
37
|
+
else if ($ instanceof Array) {
|
|
38
|
+
$.forEach(($) => {
|
|
39
|
+
out.push($);
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
else {
|
|
43
|
+
out.push(...$.__get_raw_copy());
|
|
44
|
+
}
|
|
45
|
+
});
|
|
46
|
+
return new List_1.List_Class(out);
|
|
47
|
+
};
|
|
48
|
+
exports.nested_list = nested_list;
|
|
49
|
+
const repeat = (item, times) => {
|
|
50
|
+
const out = [];
|
|
51
|
+
for (let i = 0; i < times; i++) {
|
|
52
|
+
out.push(item);
|
|
53
|
+
}
|
|
54
|
+
return new List_1.List_Class(out);
|
|
55
|
+
};
|
|
56
|
+
exports.repeat = repeat;
|
|
57
|
+
const set = (value) => {
|
|
58
|
+
return new Optional_1.Set_Optional_Value(value);
|
|
59
|
+
};
|
|
60
|
+
exports.set = set;
|
|
61
|
+
const not_set = () => {
|
|
62
|
+
return new Optional_1.Not_Set_Optional_Value();
|
|
63
|
+
};
|
|
64
|
+
exports.not_set = not_set;
|
|
65
|
+
const group_resolve = (assign) => assign();
|
|
66
|
+
exports.group_resolve = group_resolve;
|
|
67
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGl0ZXJhbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9fX2ludGVybmFscy9zeW5jL2xpdGVyYWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBTUEsZ0NBaUJDO0FBR0Qsb0JBZ0JDO0FBeENELG1FQUF5RztBQUN6Ryx1REFBeUQ7QUFDekQsK0RBQTZGO0FBRTdGLFNBQWdCLFVBQVUsQ0FDdEIsTUFBb0M7SUFHcEMsU0FBUywwQkFBMEIsQ0FDL0IsTUFBb0M7UUFFcEMsTUFBTSxHQUFHLEdBQXVCLEVBQUUsQ0FBQTtRQUNsQyxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFO1lBQy9CLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLEVBQUUsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQTtRQUM5QixDQUFDLENBQUMsQ0FBQTtRQUNGLE9BQU8sR0FBRyxDQUFBO0lBQ2QsQ0FBQztJQUVELE9BQU8sSUFBSSw2QkFBZ0IsQ0FDdkIsMEJBQTBCLENBQUMsTUFBTSxDQUFDLENBQ3JDLENBQUE7QUFDTCxDQUFDO0FBR0QsU0FBZ0IsSUFBSSxDQUdoQixNQUFvQjtJQUVwQixJQUFJLENBQUMsQ0FBQyxNQUFNLFlBQVksS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUM3QixNQUFNLElBQUksS0FBSyxDQUFDLGlDQUFpQyxDQUFDLENBQUE7SUFDdEQsQ0FBQztJQUNELE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQSxDQUFDLGVBQWU7SUFDM0M7Ozs7T0FJRztJQUVILE9BQU8sSUFBSSxpQkFBVSxDQUFDLElBQUksQ0FBQyxDQUFBO0FBQy9CLENBQUM7QUFFTSxNQUFNLFdBQVcsR0FBRyxDQUN2QixLQUE2QixFQUNqQixFQUFFO0lBQ2QsTUFBTSxHQUFHLEdBQVEsRUFBRSxDQUFBO0lBQ25CLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtRQUNoQixJQUFJLENBQUMsSUFBSSxTQUFTLEVBQUUsQ0FBQztZQUNqQixhQUFhO1FBQ2pCLENBQUM7YUFBTSxJQUFJLENBQUMsWUFBWSxLQUFLLEVBQUUsQ0FBQztZQUM1QixDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7Z0JBQ1osR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQTtZQUNmLENBQUMsQ0FBQyxDQUFBO1FBQ04sQ0FBQzthQUFNLENBQUM7WUFDSixHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLGNBQWMsRUFBRSxDQUFDLENBQUE7UUFDbkMsQ0FBQztJQUVMLENBQUMsQ0FBQyxDQUFBO0lBQ0YsT0FBTyxJQUFJLGlCQUFVLENBQUMsR0FBRyxDQUFDLENBQUE7QUFDOUIsQ0FBQyxDQUFBO0FBakJZLFFBQUEsV0FBVyxlQWlCdkI7QUFFTSxNQUFNLE1BQU0sR0FBRyxDQUNsQixJQUFPLEVBQ1AsS0FBYSxFQUNELEVBQUU7SUFDZCxNQUFNLEdBQUcsR0FBUSxFQUFFLENBQUE7SUFDbkIsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEtBQUssRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDO1FBQzdCLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUE7SUFDbEIsQ0FBQztJQUNELE9BQU8sSUFBSSxpQkFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFBO0FBQzlCLENBQUMsQ0FBQTtBQVRZLFFBQUEsTUFBTSxVQVNsQjtBQUVNLE1BQU0sR0FBRyxHQUFHLENBQ2YsS0FBUSxFQUNjLEVBQUU7SUFDeEIsT0FBTyxJQUFJLDZCQUFrQixDQUFDLEtBQUssQ0FBQyxDQUFBO0FBQ3hDLENBQUMsQ0FBQTtBQUpZLFFBQUEsR0FBRyxPQUlmO0FBRU0sTUFBTSxPQUFPLEdBQUcsR0FDRyxFQUFFO0lBQ3hCLE9BQU8sSUFBSSxpQ0FBc0IsRUFBSyxDQUFBO0FBQzFDLENBQUMsQ0FBQTtBQUhZLFFBQUEsT0FBTyxXQUduQjtBQUVNLE1BQU0sYUFBYSxHQUFHLENBQ3pCLE1BQ2EsRUFDTCxFQUFFLENBQUMsTUFBTSxFQUFFLENBQUE7QUFIVixRQUFBLGFBQWEsaUJBR0gifQ==
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as p_di from "../../data/interface";
|
|
2
|
-
import
|
|
2
|
+
import { Abort } from "../../__internals/Abort";
|
|
3
3
|
export declare const entry: <T extends p_di.Value>(dictionary: p_di.Dictionary<T>, id: string, abort: {
|
|
4
|
-
no_such_entry:
|
|
4
|
+
no_such_entry: Abort<null>;
|
|
5
5
|
}) => T;
|
|
6
6
|
export declare const possible_entry: <T extends p_di.Value>(dictionary: p_di.Dictionary<T>, id: string) => p_di.Optional_Value<T>;
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.from = void 0;
|
|
4
|
+
var from;
|
|
5
|
+
(function (from) {
|
|
6
|
+
from.dictionary = (dictionary) => {
|
|
7
|
+
return {
|
|
8
|
+
is_empty: () => {
|
|
9
|
+
return dictionary.__get_number_of_entries() === 0;
|
|
10
|
+
}
|
|
11
|
+
};
|
|
12
|
+
};
|
|
13
|
+
from.list = (list) => {
|
|
14
|
+
return {
|
|
15
|
+
is_empty: () => {
|
|
16
|
+
return list.__get_number_of_items() === 0;
|
|
17
|
+
},
|
|
18
|
+
reduce: (initial_state, update_state) => {
|
|
19
|
+
let current_state = initial_state;
|
|
20
|
+
list.__get_raw_copy().forEach(($) => {
|
|
21
|
+
current_state = update_state($, current_state);
|
|
22
|
+
});
|
|
23
|
+
return current_state;
|
|
24
|
+
}
|
|
25
|
+
};
|
|
26
|
+
};
|
|
27
|
+
from.optional = (optional) => {
|
|
28
|
+
return {
|
|
29
|
+
is_set: () => {
|
|
30
|
+
return optional.__decide(() => true, () => false);
|
|
31
|
+
}
|
|
32
|
+
};
|
|
33
|
+
};
|
|
34
|
+
})(from || (exports.from = from = {}));
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9vbGVhbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9fX2ludGVybmFscy9zeW5jL3RyYW5zZm9ybS9ib29sZWFuLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUVBLElBQWlCLElBQUksQ0FtRHBCO0FBbkRELFdBQWlCLElBQUk7SUFFSixlQUFVLEdBQUcsQ0FDdEIsVUFBOEIsRUFDaEMsRUFBRTtRQUNBLE9BQU87WUFFSCxRQUFRLEVBQUUsR0FBWSxFQUFFO2dCQUNwQixPQUFPLFVBQVUsQ0FBQyx1QkFBdUIsRUFBRSxLQUFLLENBQUMsQ0FBQTtZQUNyRCxDQUFDO1NBQ0osQ0FBQTtJQUNMLENBQUMsQ0FBQTtJQUVZLFNBQUksR0FBRyxDQUNoQixJQUFrQixFQUNwQixFQUFFO1FBQ0EsT0FBTztZQUNILFFBQVEsRUFBRSxHQUFZLEVBQUU7Z0JBQ3BCLE9BQU8sSUFBSSxDQUFDLHFCQUFxQixFQUFFLEtBQUssQ0FBQyxDQUFBO1lBQzdDLENBQUM7WUFFRCxNQUFNLEVBQUUsQ0FDSixhQUFzQixFQUN0QixZQUdZLEVBQ0wsRUFBRTtnQkFDVCxJQUFJLGFBQWEsR0FBRyxhQUFhLENBQUE7Z0JBQ2pDLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtvQkFDaEMsYUFBYSxHQUFHLFlBQVksQ0FBQyxDQUFDLEVBQUUsYUFBYSxDQUFDLENBQUE7Z0JBQ2xELENBQUMsQ0FBQyxDQUFBO2dCQUNGLE9BQU8sYUFBYSxDQUFBO1lBQ3hCLENBQUM7U0FFSixDQUFBO0lBQ0wsQ0FBQyxDQUFBO0lBRVksYUFBUSxHQUFHLENBQ3BCLFFBQWdDLEVBQ2xDLEVBQUU7UUFDQSxPQUFPO1lBQ0gsTUFBTSxFQUFFLEdBQVksRUFBRTtnQkFDbEIsT0FBTyxRQUFRLENBQUMsUUFBUSxDQUNwQixHQUFHLEVBQUUsQ0FBQyxJQUFJLEVBQ1YsR0FBRyxFQUFFLENBQUMsS0FBSyxDQUNkLENBQUE7WUFDTCxDQUFDO1NBQ0osQ0FBQTtJQUNMLENBQUMsQ0FBQTtBQUVMLENBQUMsRUFuRGdCLElBQUksb0JBQUosSUFBSSxRQW1EcEIifQ==
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import * as p_di from "
|
|
2
|
-
import
|
|
1
|
+
import * as p_di from "../../../data/interface";
|
|
2
|
+
import { Abort } from "../../Abort";
|
|
3
3
|
export declare namespace from {
|
|
4
4
|
const dictionary: <T extends p_di.Value>(dictionary: p_di.Dictionary<T>) => {
|
|
5
5
|
filter: (callback: (value: T, id: string) => boolean) => p_di.Dictionary<T>;
|
|
6
6
|
map_optionally: <New_Type extends p_di.Value>(assign_optional_entry: (value: T, id: string) => p_di.Optional_Value<New_Type>) => p_di.Dictionary<New_Type>;
|
|
7
7
|
flatten: <New_Type extends p_di.Value>(get_child_dictionary: (value: T) => p_di.Dictionary<New_Type>, get_id: (parent_id: string, child_id: string) => string, abort: {
|
|
8
|
-
duplicate_id:
|
|
8
|
+
duplicate_id: Abort<string>;
|
|
9
9
|
}) => p_di.Dictionary<New_Type>;
|
|
10
10
|
group: (get_id: (value: T, id: string) => string) => p_di.Dictionary<p_di.Dictionary<T>>;
|
|
11
11
|
join: <Other_Type extends p_di.Value, Result extends p_di.Value>(other_dictionary: p_di.Dictionary<Other_Type>, assign_entry: (value: T, other_value: p_di.Optional_Value<Other_Type>, id: string) => Result) => p_di.Dictionary<Result>;
|
|
@@ -18,11 +18,8 @@ export declare namespace from {
|
|
|
18
18
|
};
|
|
19
19
|
const list: <T extends p_di.Value>(list: p_di.List<T>) => {
|
|
20
20
|
convert: <NT extends p_di.Value>(get_id: (item: T) => string, get_value: (item: T) => NT, abort: {
|
|
21
|
-
duplicate_id:
|
|
21
|
+
duplicate_id: Abort<string>;
|
|
22
22
|
}) => p_di.Dictionary<NT>;
|
|
23
23
|
group: (get_id: (item: T) => string) => p_di.Dictionary<p_di.List<T>>;
|
|
24
24
|
};
|
|
25
25
|
}
|
|
26
|
-
export declare function literal<T extends p_di.Value>(source: {
|
|
27
|
-
readonly [id: string]: T;
|
|
28
|
-
}): p_di.Dictionary<T>;
|