@jetta/cargo-stabilizer 0.1.0-14 → 0.1.0-3
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/CHANGELOG.md +1 -26
- package/README.md +12 -53
- package/build/core/adapters/axle_adapter.d.ts +4 -4
- package/build/core/adapters/axle_adapter.d.ts.map +1 -1
- package/build/core/adapters/axle_adapter.js +11 -13
- package/build/core/adapters/coordinate_mapper.d.ts +5 -5
- package/build/core/adapters/coordinate_mapper.d.ts.map +1 -1
- package/build/core/adapters/coordinate_mapper.js +13 -13
- package/build/core/adapters/stability_adapter.d.ts +1 -1
- package/build/core/adapters/stability_adapter.d.ts.map +1 -1
- package/build/core/adapters/stability_adapter.js +1 -1
- package/build/core/candidates/build_candidate_context.d.ts +1 -1
- package/build/core/candidates/build_candidate_context.d.ts.map +1 -1
- package/build/core/candidates/build_candidate_context.js +1 -3
- package/build/core/candidates/candidate_context.d.ts +1 -4
- package/build/core/candidates/candidate_context.d.ts.map +1 -1
- package/build/core/candidates/candidate_generator.d.ts +1 -1
- package/build/core/candidates/candidate_generator.d.ts.map +1 -1
- package/build/core/candidates/candidate_generator.js +16 -33
- package/build/core/candidates/candidate_validation.d.ts +12 -0
- package/build/core/candidates/candidate_validation.d.ts.map +1 -1
- package/build/core/candidates/candidate_validation.js +26 -36
- package/build/core/candidates/rank_candidates.d.ts.map +1 -1
- package/build/core/candidates/rank_candidates.js +0 -3
- package/build/core/evaluation/evaluation_context.d.ts +1 -3
- package/build/core/evaluation/evaluation_context.d.ts.map +1 -1
- package/build/core/evaluation/state_evaluator.d.ts +1 -12
- package/build/core/evaluation/state_evaluator.d.ts.map +1 -1
- package/build/core/evaluation/state_evaluator.js +7 -31
- package/build/core/factory/read_stabilizer_config.d.ts +2 -4
- package/build/core/factory/read_stabilizer_config.d.ts.map +1 -1
- package/build/core/factory/read_stabilizer_config.js +25 -6
- package/build/core/filters/loose_item_filter.d.ts +2 -2
- package/build/core/filters/loose_item_filter.d.ts.map +1 -1
- package/build/core/filters/loose_item_filter.js +3 -3
- package/build/core/geometry/box_geometry.d.ts +1 -17
- package/build/core/geometry/box_geometry.d.ts.map +1 -1
- package/build/core/geometry/box_geometry.js +2 -67
- package/build/core/move/apply_move.d.ts +1 -3
- package/build/core/move/apply_move.d.ts.map +1 -1
- package/build/core/move/apply_move.js +1 -1
- package/build/core/orchestration/StabilizerFlow.d.ts +1 -2
- package/build/core/orchestration/StabilizerFlow.d.ts.map +1 -1
- package/build/core/orchestration/StabilizerFlow.js +2 -2
- package/build/core/orchestration/build_reorder_context.d.ts +1 -1
- package/build/core/orchestration/build_reorder_context.d.ts.map +1 -1
- package/build/core/orchestration/build_reorder_context.js +12 -10
- package/build/core/strategies/reorder/BeamSearchReorder.d.ts +1 -1
- package/build/core/strategies/reorder/BeamSearchReorder.d.ts.map +1 -1
- package/build/core/strategies/reorder/BeamSearchReorder.js +6 -7
- package/build/core/strategies/reorder/GeneticReorder.d.ts +1 -1
- package/build/core/strategies/reorder/GeneticReorder.d.ts.map +1 -1
- package/build/core/strategies/reorder/GravityCompaction.d.ts +1 -1
- package/build/core/strategies/reorder/GravityCompaction.d.ts.map +1 -1
- package/build/core/strategies/reorder/GravityCompaction.js +2 -2
- package/build/core/strategies/reorder/GreedyReorder.d.ts +1 -1
- package/build/core/strategies/reorder/GreedyReorder.d.ts.map +1 -1
- package/build/core/strategies/reorder/ReorderStrategy.d.ts +1 -3
- package/build/core/strategies/reorder/ReorderStrategy.d.ts.map +1 -1
- package/build/core/strategies/reorder/SimulatedAnnealingReorder.d.ts +1 -1
- package/build/core/strategies/reorder/SimulatedAnnealingReorder.d.ts.map +1 -1
- package/build/core/strategies/reorder/anneal_helpers.d.ts +1 -1
- package/build/core/strategies/reorder/anneal_helpers.d.ts.map +1 -1
- package/build/core/strategies/reorder/anneal_helpers.js +1 -1
- package/build/core/strategies/reorder/apply_if_gates_pass.d.ts +1 -1
- package/build/core/strategies/reorder/apply_if_gates_pass.d.ts.map +1 -1
- package/build/core/strategies/reorder/beam_context.d.ts +1 -1
- package/build/core/strategies/reorder/beam_context.d.ts.map +1 -1
- package/build/core/strategies/reorder/genetic/Chromosome.d.ts +1 -1
- package/build/core/strategies/reorder/genetic/Chromosome.d.ts.map +1 -1
- package/build/core/strategies/reorder/genetic/Chromosome.js +2 -2
- package/build/core/strategies/reorder/greedy_improvement.d.ts +1 -1
- package/build/core/strategies/reorder/greedy_improvement.d.ts.map +1 -1
- package/build/core/strategies/reorder/greedy_improvement.js +2 -2
- package/build/core/validation/parse_stabilizer_input.d.ts +8 -0
- package/build/core/validation/parse_stabilizer_input.d.ts.map +1 -0
- package/build/core/validation/parse_stabilizer_input.js +20 -0
- package/build/core/validation/schemas/stabilizer_config_schema.d.ts +1 -5
- package/build/core/validation/schemas/stabilizer_config_schema.d.ts.map +1 -1
- package/build/core/validation/schemas/stabilizer_config_schema.js +1 -5
- package/build/core/validation/schemas/stabilizer_input_schema.d.ts +110 -0
- package/build/core/validation/schemas/stabilizer_input_schema.d.ts.map +1 -0
- package/build/core/validation/schemas/stabilizer_input_schema.js +34 -0
- package/build/core/validation/schemas/stabilizer_output_schema.d.ts +13 -0
- package/build/core/validation/schemas/stabilizer_output_schema.d.ts.map +1 -0
- package/build/core/validation/schemas/stabilizer_output_schema.js +6 -0
- package/build/core/waypoint/build_waypoint_zones.d.ts +1 -1
- package/build/core/waypoint/build_waypoint_zones.d.ts.map +1 -1
- package/build/core/waypoint/build_waypoint_zones.js +2 -2
- package/build/core/waypoint/preserves_waypoint_order.d.ts +1 -1
- package/build/core/waypoint/preserves_waypoint_order.d.ts.map +1 -1
- package/build/core/waypoint/validate_waypoint_ids.d.ts +1 -1
- package/build/core/waypoint/validate_waypoint_ids.d.ts.map +1 -1
- package/build/index.d.ts +6 -15
- package/build/index.d.ts.map +1 -1
- package/build/index.js +7 -30
- package/package.json +1 -1
- package/build/core/adapters/build_axle_request.d.ts +0 -15
- package/build/core/adapters/build_axle_request.d.ts.map +0 -1
- package/build/core/adapters/build_axle_request.js +0 -39
- package/build/core/adapters/empty_space_adapter.d.ts +0 -10
- package/build/core/adapters/empty_space_adapter.d.ts.map +0 -1
- package/build/core/adapters/empty_space_adapter.js +0 -24
- package/build/core/adapters/map_item_to_positioned_cube.d.ts +0 -9
- package/build/core/adapters/map_item_to_positioned_cube.d.ts.map +0 -1
- package/build/core/adapters/map_item_to_positioned_cube.js +0 -16
- package/build/core/adapters/run_axle_calculator.d.ts +0 -16
- package/build/core/adapters/run_axle_calculator.d.ts.map +0 -1
- package/build/core/adapters/run_axle_calculator.js +0 -32
- package/build/core/candidates/collect_container_slots.d.ts +0 -16
- package/build/core/candidates/collect_container_slots.d.ts.map +0 -1
- package/build/core/candidates/collect_container_slots.js +0 -20
- package/build/core/candidates/enumerate_empty_space_slots.d.ts +0 -15
- package/build/core/candidates/enumerate_empty_space_slots.d.ts.map +0 -1
- package/build/core/candidates/enumerate_empty_space_slots.js +0 -44
- package/build/core/candidates/enumerate_supporter_top_slots.d.ts +0 -11
- package/build/core/candidates/enumerate_supporter_top_slots.d.ts.map +0 -1
- package/build/core/candidates/enumerate_supporter_top_slots.js +0 -36
- package/build/core/candidates/is_elevated_on_supporter_origin.d.ts +0 -14
- package/build/core/candidates/is_elevated_on_supporter_origin.d.ts.map +0 -1
- package/build/core/candidates/is_elevated_on_supporter_origin.js +0 -28
- package/build/core/constants/TieRatioOrientation.d.ts +0 -6
- package/build/core/constants/TieRatioOrientation.d.ts.map +0 -1
- package/build/core/constants/TieRatioOrientation.js +0 -5
- package/build/core/evaluation/compute_reorder_objective.d.ts +0 -13
- package/build/core/evaluation/compute_reorder_objective.d.ts.map +0 -1
- package/build/core/evaluation/compute_reorder_objective.js +0 -13
- package/build/core/exceptions/AxleCalculationError.d.ts +0 -4
- package/build/core/exceptions/AxleCalculationError.d.ts.map +0 -1
- package/build/core/exceptions/AxleCalculationError.js +0 -6
- package/build/core/exceptions/InvalidStabilizerOutputError.d.ts +0 -4
- package/build/core/exceptions/InvalidStabilizerOutputError.d.ts.map +0 -1
- package/build/core/exceptions/InvalidStabilizerOutputError.js +0 -6
- package/build/core/factory/read_stabilizer_config_helpers.d.ts +0 -29
- package/build/core/factory/read_stabilizer_config_helpers.d.ts.map +0 -1
- package/build/core/factory/read_stabilizer_config_helpers.js +0 -73
- package/build/core/filters/collect_movable_items.d.ts +0 -18
- package/build/core/filters/collect_movable_items.d.ts.map +0 -1
- package/build/core/filters/collect_movable_items.js +0 -53
- package/build/core/filters/collect_pinned_floor_tie_ratio_group_ids.d.ts +0 -8
- package/build/core/filters/collect_pinned_floor_tie_ratio_group_ids.d.ts.map +0 -1
- package/build/core/filters/collect_pinned_floor_tie_ratio_group_ids.js +0 -41
- package/build/core/filters/is_item_on_cm_floor.d.ts +0 -8
- package/build/core/filters/is_item_on_cm_floor.d.ts.map +0 -1
- package/build/core/filters/is_item_on_cm_floor.js +0 -9
- package/build/core/geometry/has_penetrating_overlap.d.ts +0 -9
- package/build/core/geometry/has_penetrating_overlap.d.ts.map +0 -1
- package/build/core/geometry/has_penetrating_overlap.js +0 -27
- package/build/core/orchestration/build_milkrun_bands_from_config.d.ts +0 -13
- package/build/core/orchestration/build_milkrun_bands_from_config.d.ts.map +0 -1
- package/build/core/orchestration/build_milkrun_bands_from_config.js +0 -14
- package/build/core/orchestration/read_primary_env.d.ts +0 -9
- package/build/core/orchestration/read_primary_env.d.ts.map +0 -1
- package/build/core/orchestration/read_primary_env.js +0 -13
- package/build/core/strategies/reorder/select_beam_expansion_candidates.d.ts +0 -9
- package/build/core/strategies/reorder/select_beam_expansion_candidates.d.ts.map +0 -1
- package/build/core/strategies/reorder/select_beam_expansion_candidates.js +0 -28
- package/build/core/strategies/reorder/select_surviving_beam.d.ts +0 -10
- package/build/core/strategies/reorder/select_surviving_beam.d.ts.map +0 -1
- package/build/core/strategies/reorder/select_surviving_beam.js +0 -12
- package/build/core/validation/contract/cargo_movement_wire_field_map.d.ts +0 -37
- package/build/core/validation/contract/cargo_movement_wire_field_map.d.ts.map +0 -1
- package/build/core/validation/contract/cargo_movement_wire_field_map.js +0 -43
- package/build/core/validation/contract/cargo_movement_wire_mapper.d.ts +0 -14
- package/build/core/validation/contract/cargo_movement_wire_mapper.d.ts.map +0 -1
- package/build/core/validation/contract/cargo_movement_wire_mapper.js +0 -34
- package/build/core/validation/contract/format_zod_error.d.ts +0 -8
- package/build/core/validation/contract/format_zod_error.d.ts.map +0 -1
- package/build/core/validation/contract/format_zod_error.js +0 -11
- package/build/core/validation/contract/index.d.ts +0 -9
- package/build/core/validation/contract/index.d.ts.map +0 -1
- package/build/core/validation/contract/index.js +0 -8
- package/build/core/validation/contract/map_contract_to_wire_shape.d.ts +0 -3
- package/build/core/validation/contract/map_contract_to_wire_shape.d.ts.map +0 -1
- package/build/core/validation/contract/map_contract_to_wire_shape.js +0 -45
- package/build/core/validation/contract/map_wire_input_to_contract_shape.d.ts +0 -2
- package/build/core/validation/contract/map_wire_input_to_contract_shape.d.ts.map +0 -1
- package/build/core/validation/contract/map_wire_input_to_contract_shape.js +0 -61
- package/build/core/validation/contract/map_wire_item_to_contract.d.ts +0 -12
- package/build/core/validation/contract/map_wire_item_to_contract.d.ts.map +0 -1
- package/build/core/validation/contract/map_wire_item_to_contract.js +0 -57
- package/build/core/validation/contract/parse_stabilizer_input.d.ts +0 -48
- package/build/core/validation/contract/parse_stabilizer_input.d.ts.map +0 -1
- package/build/core/validation/contract/parse_stabilizer_input.js +0 -26
- package/build/core/validation/contract/parse_stabilizer_output.d.ts +0 -50
- package/build/core/validation/contract/parse_stabilizer_output.d.ts.map +0 -1
- package/build/core/validation/contract/parse_stabilizer_output.js +0 -24
- package/build/core/validation/contract/stabilizer_domain_schema.d.ts +0 -101
- package/build/core/validation/contract/stabilizer_domain_schema.d.ts.map +0 -1
- package/build/core/validation/contract/stabilizer_domain_schema.js +0 -64
- package/build/core/validation/contract/stabilizer_input_schema.d.ts +0 -36
- package/build/core/validation/contract/stabilizer_input_schema.d.ts.map +0 -1
- package/build/core/validation/contract/stabilizer_input_schema.js +0 -11
- package/build/core/validation/contract/stabilizer_output_schema.d.ts +0 -76
- package/build/core/validation/contract/stabilizer_output_schema.d.ts.map +0 -1
- package/build/core/validation/contract/stabilizer_output_schema.js +0 -16
- package/build/core/validation/contract/uniquify_contract_item_ids.d.ts +0 -8
- package/build/core/validation/contract/uniquify_contract_item_ids.d.ts.map +0 -1
- package/build/core/validation/contract/uniquify_contract_item_ids.js +0 -38
- package/build/core/validation/contract/wire_mapper_record_utils.d.ts +0 -34
- package/build/core/validation/contract/wire_mapper_record_utils.d.ts.map +0 -1
- package/build/core/validation/contract/wire_mapper_record_utils.js +0 -66
- package/build/core/waypoint/milkrun_wall_reservation.d.ts +0 -24
- package/build/core/waypoint/milkrun_wall_reservation.d.ts.map +0 -1
- package/build/core/waypoint/milkrun_wall_reservation.js +0 -57
- package/build/core/waypoint/milkrun_wall_reservation_helpers.d.ts +0 -15
- package/build/core/waypoint/milkrun_wall_reservation_helpers.d.ts.map +0 -1
- package/build/core/waypoint/milkrun_wall_reservation_helpers.js +0 -48
- package/build/core/waypoint/milkrun_wall_reservation_types.d.ts +0 -16
- package/build/core/waypoint/milkrun_wall_reservation_types.d.ts.map +0 -1
- package/build/core/waypoint/milkrun_wall_reservation_types.js +0 -1
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
import { format_zod_error } from './format_zod_error.js';
|
|
2
|
-
import { type StabilizerInput } from './stabilizer_input_schema.js';
|
|
3
|
-
/**
|
|
4
|
-
* Safely parses stabilizer input after wire mapping.
|
|
5
|
-
* @param input_data - Unknown wire payload.
|
|
6
|
-
* @returns Zod safe parse result.
|
|
7
|
-
*/
|
|
8
|
-
export declare function safe_parse_stabilizer_input(input_data: unknown): import("zod").ZodSafeParseResult<{
|
|
9
|
-
cargo_state: {
|
|
10
|
-
envs: {
|
|
11
|
-
containers: {
|
|
12
|
-
width: number;
|
|
13
|
-
height: number;
|
|
14
|
-
length: number;
|
|
15
|
-
items: {
|
|
16
|
-
item_id: string;
|
|
17
|
-
x: number;
|
|
18
|
-
y: number;
|
|
19
|
-
z: number;
|
|
20
|
-
width: number;
|
|
21
|
-
height: number;
|
|
22
|
-
depth: number;
|
|
23
|
-
group_id?: string | null | undefined;
|
|
24
|
-
waypoint_id?: string | undefined;
|
|
25
|
-
weight?: number | undefined;
|
|
26
|
-
attributes?: Record<string, unknown> | undefined;
|
|
27
|
-
}[];
|
|
28
|
-
sequence?: number | undefined;
|
|
29
|
-
attributes?: Record<string, unknown> | undefined;
|
|
30
|
-
}[];
|
|
31
|
-
axles?: Record<string, unknown>[] | undefined;
|
|
32
|
-
vehicle?: Record<string, unknown> | undefined;
|
|
33
|
-
}[];
|
|
34
|
-
config?: Record<string, unknown> | undefined;
|
|
35
|
-
};
|
|
36
|
-
id?: string | number | undefined;
|
|
37
|
-
company?: string | number | undefined;
|
|
38
|
-
original_input?: unknown;
|
|
39
|
-
config?: Record<string, unknown> | undefined;
|
|
40
|
-
}>;
|
|
41
|
-
/**
|
|
42
|
-
* Parses stabilizer input at the public boundary.
|
|
43
|
-
* @param input_data - Unknown wire payload.
|
|
44
|
-
* @returns Validated stabilizer input in English contract shape.
|
|
45
|
-
*/
|
|
46
|
-
export declare function parse_stabilizer_input(input_data: unknown): StabilizerInput;
|
|
47
|
-
export { format_zod_error };
|
|
48
|
-
//# sourceMappingURL=parse_stabilizer_input.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"parse_stabilizer_input.d.ts","sourceRoot":"","sources":["../../../../src/core/validation/contract/parse_stabilizer_input.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AACxD,OAAO,EAA2B,KAAK,eAAe,EAAE,MAAM,8BAA8B,CAAA;AAE5F;;;;GAIG;AACH,wBAAgB,2BAA2B,CAAC,UAAU,EAAE,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAI9D;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,OAAO,GAAG,eAAe,CAS3E;AAED,OAAO,EAAE,gBAAgB,EAAE,CAAA"}
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import { InvalidStabilizerInputError } from '../../exceptions/InvalidStabilizerInputError.js';
|
|
2
|
-
import { map_wire_input_to_contract } from './cargo_movement_wire_mapper.js';
|
|
3
|
-
import { format_zod_error } from './format_zod_error.js';
|
|
4
|
-
import { stabilizer_input_schema } from './stabilizer_input_schema.js';
|
|
5
|
-
/**
|
|
6
|
-
* Safely parses stabilizer input after wire mapping.
|
|
7
|
-
* @param input_data - Unknown wire payload.
|
|
8
|
-
* @returns Zod safe parse result.
|
|
9
|
-
*/
|
|
10
|
-
export function safe_parse_stabilizer_input(input_data) {
|
|
11
|
-
const contract_payload = map_wire_input_to_contract(input_data);
|
|
12
|
-
return stabilizer_input_schema.safeParse(contract_payload);
|
|
13
|
-
}
|
|
14
|
-
/**
|
|
15
|
-
* Parses stabilizer input at the public boundary.
|
|
16
|
-
* @param input_data - Unknown wire payload.
|
|
17
|
-
* @returns Validated stabilizer input in English contract shape.
|
|
18
|
-
*/
|
|
19
|
-
export function parse_stabilizer_input(input_data) {
|
|
20
|
-
const result = safe_parse_stabilizer_input(input_data);
|
|
21
|
-
if (!result.success) {
|
|
22
|
-
throw new InvalidStabilizerInputError(format_zod_error(result.error));
|
|
23
|
-
}
|
|
24
|
-
return result.data;
|
|
25
|
-
}
|
|
26
|
-
export { format_zod_error };
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
import { format_zod_error } from './format_zod_error.js';
|
|
2
|
-
import { type StabilizerResponse } from './stabilizer_output_schema.js';
|
|
3
|
-
/**
|
|
4
|
-
* Safely parses stabilizer output envelope.
|
|
5
|
-
* @param output_data - Unknown response payload.
|
|
6
|
-
* @returns Zod safe parse result.
|
|
7
|
-
*/
|
|
8
|
-
export declare function safe_parse_stabilizer_output(output_data: unknown): import("zod").ZodSafeParseResult<{
|
|
9
|
-
status: "success";
|
|
10
|
-
data: {
|
|
11
|
-
envs: {
|
|
12
|
-
containers: {
|
|
13
|
-
width: number;
|
|
14
|
-
height: number;
|
|
15
|
-
length: number;
|
|
16
|
-
items: {
|
|
17
|
-
item_id: string;
|
|
18
|
-
x: number;
|
|
19
|
-
y: number;
|
|
20
|
-
z: number;
|
|
21
|
-
width: number;
|
|
22
|
-
height: number;
|
|
23
|
-
depth: number;
|
|
24
|
-
group_id?: string | null | undefined;
|
|
25
|
-
waypoint_id?: string | undefined;
|
|
26
|
-
weight?: number | undefined;
|
|
27
|
-
attributes?: Record<string, unknown> | undefined;
|
|
28
|
-
}[];
|
|
29
|
-
sequence?: number | undefined;
|
|
30
|
-
attributes?: Record<string, unknown> | undefined;
|
|
31
|
-
}[];
|
|
32
|
-
axles?: Record<string, unknown>[] | undefined;
|
|
33
|
-
vehicle?: Record<string, unknown> | undefined;
|
|
34
|
-
}[];
|
|
35
|
-
config?: Record<string, unknown> | undefined;
|
|
36
|
-
};
|
|
37
|
-
messages: string[];
|
|
38
|
-
} | {
|
|
39
|
-
status: "error";
|
|
40
|
-
data: string;
|
|
41
|
-
messages: string[];
|
|
42
|
-
}>;
|
|
43
|
-
/**
|
|
44
|
-
* Parses stabilizer output at the public boundary.
|
|
45
|
-
* @param output_data - Unknown response payload.
|
|
46
|
-
* @returns Validated stabilizer response in English contract shape.
|
|
47
|
-
*/
|
|
48
|
-
export declare function parse_stabilizer_output(output_data: unknown): StabilizerResponse;
|
|
49
|
-
export { format_zod_error };
|
|
50
|
-
//# sourceMappingURL=parse_stabilizer_output.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"parse_stabilizer_output.d.ts","sourceRoot":"","sources":["../../../../src/core/validation/contract/parse_stabilizer_output.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AACxD,OAAO,EAEH,KAAK,kBAAkB,EAC1B,MAAM,+BAA+B,CAAA;AAEtC;;;;GAIG;AACH,wBAAgB,4BAA4B,CAAC,WAAW,EAAE,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAGhE;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,WAAW,EAAE,OAAO,GAAG,kBAAkB,CAShF;AAED,OAAO,EAAE,gBAAgB,EAAE,CAAA"}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import { InvalidStabilizerOutputError } from '../../exceptions/InvalidStabilizerOutputError.js';
|
|
2
|
-
import { format_zod_error } from './format_zod_error.js';
|
|
3
|
-
import { stabilizer_response_schema } from './stabilizer_output_schema.js';
|
|
4
|
-
/**
|
|
5
|
-
* Safely parses stabilizer output envelope.
|
|
6
|
-
* @param output_data - Unknown response payload.
|
|
7
|
-
* @returns Zod safe parse result.
|
|
8
|
-
*/
|
|
9
|
-
export function safe_parse_stabilizer_output(output_data) {
|
|
10
|
-
return stabilizer_response_schema.safeParse(output_data);
|
|
11
|
-
}
|
|
12
|
-
/**
|
|
13
|
-
* Parses stabilizer output at the public boundary.
|
|
14
|
-
* @param output_data - Unknown response payload.
|
|
15
|
-
* @returns Validated stabilizer response in English contract shape.
|
|
16
|
-
*/
|
|
17
|
-
export function parse_stabilizer_output(output_data) {
|
|
18
|
-
const result = safe_parse_stabilizer_output(output_data);
|
|
19
|
-
if (!result.success) {
|
|
20
|
-
throw new InvalidStabilizerOutputError(format_zod_error(result.error));
|
|
21
|
-
}
|
|
22
|
-
return result.data;
|
|
23
|
-
}
|
|
24
|
-
export { format_zod_error };
|
|
@@ -1,101 +0,0 @@
|
|
|
1
|
-
import { z } from 'zod';
|
|
2
|
-
export declare const stabilizer_item_schema: z.ZodObject<{
|
|
3
|
-
item_id: z.ZodString;
|
|
4
|
-
group_id: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNull]>>;
|
|
5
|
-
waypoint_id: z.ZodOptional<z.ZodString>;
|
|
6
|
-
x: z.ZodNumber;
|
|
7
|
-
y: z.ZodNumber;
|
|
8
|
-
z: z.ZodNumber;
|
|
9
|
-
width: z.ZodNumber;
|
|
10
|
-
height: z.ZodNumber;
|
|
11
|
-
depth: z.ZodNumber;
|
|
12
|
-
weight: z.ZodOptional<z.ZodNumber>;
|
|
13
|
-
attributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
14
|
-
}, z.core.$strict>;
|
|
15
|
-
export declare const stabilizer_container_schema: z.ZodObject<{
|
|
16
|
-
sequence: z.ZodOptional<z.ZodNumber>;
|
|
17
|
-
width: z.ZodNumber;
|
|
18
|
-
height: z.ZodNumber;
|
|
19
|
-
length: z.ZodNumber;
|
|
20
|
-
items: z.ZodArray<z.ZodObject<{
|
|
21
|
-
item_id: z.ZodString;
|
|
22
|
-
group_id: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNull]>>;
|
|
23
|
-
waypoint_id: z.ZodOptional<z.ZodString>;
|
|
24
|
-
x: z.ZodNumber;
|
|
25
|
-
y: z.ZodNumber;
|
|
26
|
-
z: z.ZodNumber;
|
|
27
|
-
width: z.ZodNumber;
|
|
28
|
-
height: z.ZodNumber;
|
|
29
|
-
depth: z.ZodNumber;
|
|
30
|
-
weight: z.ZodOptional<z.ZodNumber>;
|
|
31
|
-
attributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
32
|
-
}, z.core.$strict>>;
|
|
33
|
-
attributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
34
|
-
}, z.core.$strict>;
|
|
35
|
-
export declare const stabilizer_env_schema: z.ZodObject<{
|
|
36
|
-
containers: z.ZodArray<z.ZodObject<{
|
|
37
|
-
sequence: z.ZodOptional<z.ZodNumber>;
|
|
38
|
-
width: z.ZodNumber;
|
|
39
|
-
height: z.ZodNumber;
|
|
40
|
-
length: z.ZodNumber;
|
|
41
|
-
items: z.ZodArray<z.ZodObject<{
|
|
42
|
-
item_id: z.ZodString;
|
|
43
|
-
group_id: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNull]>>;
|
|
44
|
-
waypoint_id: z.ZodOptional<z.ZodString>;
|
|
45
|
-
x: z.ZodNumber;
|
|
46
|
-
y: z.ZodNumber;
|
|
47
|
-
z: z.ZodNumber;
|
|
48
|
-
width: z.ZodNumber;
|
|
49
|
-
height: z.ZodNumber;
|
|
50
|
-
depth: z.ZodNumber;
|
|
51
|
-
weight: z.ZodOptional<z.ZodNumber>;
|
|
52
|
-
attributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
53
|
-
}, z.core.$strict>>;
|
|
54
|
-
attributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
55
|
-
}, z.core.$strict>>;
|
|
56
|
-
axles: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
57
|
-
vehicle: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
58
|
-
}, z.core.$strict>;
|
|
59
|
-
export declare const stabilizer_cargo_state_schema: z.ZodObject<{
|
|
60
|
-
envs: z.ZodArray<z.ZodObject<{
|
|
61
|
-
containers: z.ZodArray<z.ZodObject<{
|
|
62
|
-
sequence: z.ZodOptional<z.ZodNumber>;
|
|
63
|
-
width: z.ZodNumber;
|
|
64
|
-
height: z.ZodNumber;
|
|
65
|
-
length: z.ZodNumber;
|
|
66
|
-
items: z.ZodArray<z.ZodObject<{
|
|
67
|
-
item_id: z.ZodString;
|
|
68
|
-
group_id: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNull]>>;
|
|
69
|
-
waypoint_id: z.ZodOptional<z.ZodString>;
|
|
70
|
-
x: z.ZodNumber;
|
|
71
|
-
y: z.ZodNumber;
|
|
72
|
-
z: z.ZodNumber;
|
|
73
|
-
width: z.ZodNumber;
|
|
74
|
-
height: z.ZodNumber;
|
|
75
|
-
depth: z.ZodNumber;
|
|
76
|
-
weight: z.ZodOptional<z.ZodNumber>;
|
|
77
|
-
attributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
78
|
-
}, z.core.$strict>>;
|
|
79
|
-
attributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
80
|
-
}, z.core.$strict>>;
|
|
81
|
-
axles: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
82
|
-
vehicle: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
83
|
-
}, z.core.$strict>>;
|
|
84
|
-
config: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
85
|
-
}, z.core.$strict>;
|
|
86
|
-
export type StabilizerItem = z.infer<typeof stabilizer_item_schema>;
|
|
87
|
-
export type StabilizerContainer = z.infer<typeof stabilizer_container_schema>;
|
|
88
|
-
export type StabilizerEnv = z.infer<typeof stabilizer_env_schema>;
|
|
89
|
-
export type StabilizerCargoState = z.infer<typeof stabilizer_cargo_state_schema>;
|
|
90
|
-
/**
|
|
91
|
-
* Validates waypoint consistency across all items in the primary env.
|
|
92
|
-
* @param cargo_state - Parsed cargo state.
|
|
93
|
-
*/
|
|
94
|
-
export declare function validate_primary_env_waypoints(cargo_state: StabilizerCargoState): void;
|
|
95
|
-
/**
|
|
96
|
-
* Adds waypoint validation issues to a Zod context.
|
|
97
|
-
* @param cargo_state - Cargo state being validated.
|
|
98
|
-
* @param context - Zod refinement context.
|
|
99
|
-
*/
|
|
100
|
-
export declare function add_waypoint_validation_issues(cargo_state: StabilizerCargoState, context: z.RefinementCtx): void;
|
|
101
|
-
//# sourceMappingURL=stabilizer_domain_schema.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"stabilizer_domain_schema.d.ts","sourceRoot":"","sources":["../../../../src/core/validation/contract/stabilizer_domain_schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAIvB,eAAO,MAAM,sBAAsB;;;;;;;;;;;;kBAYxB,CAAA;AAEX,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;kBAO7B,CAAA;AAEX,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;kBAIvB,CAAA;AAEX,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;kBAG/B,CAAA;AAEX,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAA;AACnE,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAA;AAC7E,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAA;AACjE,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAA;AAEhF;;;GAGG;AACH,wBAAgB,8BAA8B,CAAC,WAAW,EAAE,oBAAoB,GAAG,IAAI,CAKtF;AAED;;;;GAIG;AACH,wBAAgB,8BAA8B,CAC1C,WAAW,EAAE,oBAAoB,EACjC,OAAO,EAAE,CAAC,CAAC,aAAa,GACzB,IAAI,CAqBN"}
|
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
import { z } from 'zod';
|
|
2
|
-
import { MixedWaypointIdError } from '../../exceptions/MixedWaypointIdError.js';
|
|
3
|
-
import { validate_waypoint_ids } from '../../waypoint/validate_waypoint_ids.js';
|
|
4
|
-
export const stabilizer_item_schema = z.object({
|
|
5
|
-
item_id: z.string().min(1),
|
|
6
|
-
group_id: z.union([z.string(), z.null()]).optional(),
|
|
7
|
-
waypoint_id: z.string().optional(),
|
|
8
|
-
x: z.number(),
|
|
9
|
-
y: z.number(),
|
|
10
|
-
z: z.number(),
|
|
11
|
-
width: z.number().positive(),
|
|
12
|
-
height: z.number().positive(),
|
|
13
|
-
depth: z.number().positive(),
|
|
14
|
-
weight: z.number().optional(),
|
|
15
|
-
attributes: z.record(z.string(), z.unknown()).optional()
|
|
16
|
-
}).strict();
|
|
17
|
-
export const stabilizer_container_schema = z.object({
|
|
18
|
-
sequence: z.number().optional(),
|
|
19
|
-
width: z.number().positive(),
|
|
20
|
-
height: z.number().positive(),
|
|
21
|
-
length: z.number().positive(),
|
|
22
|
-
items: z.array(stabilizer_item_schema),
|
|
23
|
-
attributes: z.record(z.string(), z.unknown()).optional()
|
|
24
|
-
}).strict();
|
|
25
|
-
export const stabilizer_env_schema = z.object({
|
|
26
|
-
containers: z.array(stabilizer_container_schema).min(1),
|
|
27
|
-
axles: z.array(z.record(z.string(), z.unknown())).optional(),
|
|
28
|
-
vehicle: z.record(z.string(), z.unknown()).optional()
|
|
29
|
-
}).strict();
|
|
30
|
-
export const stabilizer_cargo_state_schema = z.object({
|
|
31
|
-
envs: z.array(stabilizer_env_schema).min(1),
|
|
32
|
-
config: z.record(z.string(), z.unknown()).optional()
|
|
33
|
-
}).strict();
|
|
34
|
-
/**
|
|
35
|
-
* Validates waypoint consistency across all items in the primary env.
|
|
36
|
-
* @param cargo_state - Parsed cargo state.
|
|
37
|
-
*/
|
|
38
|
-
export function validate_primary_env_waypoints(cargo_state) {
|
|
39
|
-
const primary_env = cargo_state.envs[0];
|
|
40
|
-
const all_items = primary_env.containers.flatMap(container => container.items);
|
|
41
|
-
validate_waypoint_ids(all_items);
|
|
42
|
-
}
|
|
43
|
-
/**
|
|
44
|
-
* Adds waypoint validation issues to a Zod context.
|
|
45
|
-
* @param cargo_state - Cargo state being validated.
|
|
46
|
-
* @param context - Zod refinement context.
|
|
47
|
-
*/
|
|
48
|
-
export function add_waypoint_validation_issues(cargo_state, context) {
|
|
49
|
-
try {
|
|
50
|
-
validate_primary_env_waypoints(cargo_state);
|
|
51
|
-
}
|
|
52
|
-
catch (error) {
|
|
53
|
-
if (error instanceof MixedWaypointIdError) {
|
|
54
|
-
context.addIssue({
|
|
55
|
-
code: 'custom',
|
|
56
|
-
message: error.message,
|
|
57
|
-
path: ['cargo_state', 'envs', 0]
|
|
58
|
-
});
|
|
59
|
-
}
|
|
60
|
-
else {
|
|
61
|
-
throw error;
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
}
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
import { z } from 'zod';
|
|
2
|
-
export declare const stabilizer_input_schema: z.ZodObject<{
|
|
3
|
-
id: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>;
|
|
4
|
-
company: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>;
|
|
5
|
-
cargo_state: z.ZodObject<{
|
|
6
|
-
envs: z.ZodArray<z.ZodObject<{
|
|
7
|
-
containers: z.ZodArray<z.ZodObject<{
|
|
8
|
-
sequence: z.ZodOptional<z.ZodNumber>;
|
|
9
|
-
width: z.ZodNumber;
|
|
10
|
-
height: z.ZodNumber;
|
|
11
|
-
length: z.ZodNumber;
|
|
12
|
-
items: z.ZodArray<z.ZodObject<{
|
|
13
|
-
item_id: z.ZodString;
|
|
14
|
-
group_id: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNull]>>;
|
|
15
|
-
waypoint_id: z.ZodOptional<z.ZodString>;
|
|
16
|
-
x: z.ZodNumber;
|
|
17
|
-
y: z.ZodNumber;
|
|
18
|
-
z: z.ZodNumber;
|
|
19
|
-
width: z.ZodNumber;
|
|
20
|
-
height: z.ZodNumber;
|
|
21
|
-
depth: z.ZodNumber;
|
|
22
|
-
weight: z.ZodOptional<z.ZodNumber>;
|
|
23
|
-
attributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
24
|
-
}, z.core.$strict>>;
|
|
25
|
-
attributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
26
|
-
}, z.core.$strict>>;
|
|
27
|
-
axles: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
28
|
-
vehicle: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
29
|
-
}, z.core.$strict>>;
|
|
30
|
-
config: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
31
|
-
}, z.core.$strict>;
|
|
32
|
-
original_input: z.ZodOptional<z.ZodUnknown>;
|
|
33
|
-
config: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
34
|
-
}, z.core.$strict>;
|
|
35
|
-
export type StabilizerInput = z.infer<typeof stabilizer_input_schema>;
|
|
36
|
-
//# sourceMappingURL=stabilizer_input_schema.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"stabilizer_input_schema.d.ts","sourceRoot":"","sources":["../../../../src/core/validation/contract/stabilizer_input_schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAMvB,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBASlC,CAAA;AAEF,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAA"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { z } from 'zod';
|
|
2
|
-
import { add_waypoint_validation_issues, stabilizer_cargo_state_schema } from './stabilizer_domain_schema.js';
|
|
3
|
-
export const stabilizer_input_schema = z.object({
|
|
4
|
-
id: z.union([z.string(), z.number()]).optional(),
|
|
5
|
-
company: z.union([z.string(), z.number()]).optional(),
|
|
6
|
-
cargo_state: stabilizer_cargo_state_schema,
|
|
7
|
-
original_input: z.unknown().optional(),
|
|
8
|
-
config: z.record(z.string(), z.unknown()).optional()
|
|
9
|
-
}).strict().superRefine((input_data, context) => {
|
|
10
|
-
add_waypoint_validation_issues(input_data.cargo_state, context);
|
|
11
|
-
});
|
|
@@ -1,76 +0,0 @@
|
|
|
1
|
-
import { z } from 'zod';
|
|
2
|
-
export declare const stabilizer_success_response_schema: z.ZodObject<{
|
|
3
|
-
status: z.ZodLiteral<"success">;
|
|
4
|
-
data: z.ZodObject<{
|
|
5
|
-
envs: z.ZodArray<z.ZodObject<{
|
|
6
|
-
containers: z.ZodArray<z.ZodObject<{
|
|
7
|
-
sequence: z.ZodOptional<z.ZodNumber>;
|
|
8
|
-
width: z.ZodNumber;
|
|
9
|
-
height: z.ZodNumber;
|
|
10
|
-
length: z.ZodNumber;
|
|
11
|
-
items: z.ZodArray<z.ZodObject<{
|
|
12
|
-
item_id: z.ZodString;
|
|
13
|
-
group_id: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNull]>>;
|
|
14
|
-
waypoint_id: z.ZodOptional<z.ZodString>;
|
|
15
|
-
x: z.ZodNumber;
|
|
16
|
-
y: z.ZodNumber;
|
|
17
|
-
z: z.ZodNumber;
|
|
18
|
-
width: z.ZodNumber;
|
|
19
|
-
height: z.ZodNumber;
|
|
20
|
-
depth: z.ZodNumber;
|
|
21
|
-
weight: z.ZodOptional<z.ZodNumber>;
|
|
22
|
-
attributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
23
|
-
}, z.core.$strict>>;
|
|
24
|
-
attributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
25
|
-
}, z.core.$strict>>;
|
|
26
|
-
axles: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
27
|
-
vehicle: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
28
|
-
}, z.core.$strict>>;
|
|
29
|
-
config: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
30
|
-
}, z.core.$strict>;
|
|
31
|
-
messages: z.ZodArray<z.ZodString>;
|
|
32
|
-
}, z.core.$strict>;
|
|
33
|
-
export declare const stabilizer_error_response_schema: z.ZodObject<{
|
|
34
|
-
status: z.ZodLiteral<"error">;
|
|
35
|
-
data: z.ZodString;
|
|
36
|
-
messages: z.ZodArray<z.ZodString>;
|
|
37
|
-
}, z.core.$strict>;
|
|
38
|
-
export declare const stabilizer_response_schema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
39
|
-
status: z.ZodLiteral<"success">;
|
|
40
|
-
data: z.ZodObject<{
|
|
41
|
-
envs: z.ZodArray<z.ZodObject<{
|
|
42
|
-
containers: z.ZodArray<z.ZodObject<{
|
|
43
|
-
sequence: z.ZodOptional<z.ZodNumber>;
|
|
44
|
-
width: z.ZodNumber;
|
|
45
|
-
height: z.ZodNumber;
|
|
46
|
-
length: z.ZodNumber;
|
|
47
|
-
items: z.ZodArray<z.ZodObject<{
|
|
48
|
-
item_id: z.ZodString;
|
|
49
|
-
group_id: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNull]>>;
|
|
50
|
-
waypoint_id: z.ZodOptional<z.ZodString>;
|
|
51
|
-
x: z.ZodNumber;
|
|
52
|
-
y: z.ZodNumber;
|
|
53
|
-
z: z.ZodNumber;
|
|
54
|
-
width: z.ZodNumber;
|
|
55
|
-
height: z.ZodNumber;
|
|
56
|
-
depth: z.ZodNumber;
|
|
57
|
-
weight: z.ZodOptional<z.ZodNumber>;
|
|
58
|
-
attributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
59
|
-
}, z.core.$strict>>;
|
|
60
|
-
attributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
61
|
-
}, z.core.$strict>>;
|
|
62
|
-
axles: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
63
|
-
vehicle: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
64
|
-
}, z.core.$strict>>;
|
|
65
|
-
config: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
66
|
-
}, z.core.$strict>;
|
|
67
|
-
messages: z.ZodArray<z.ZodString>;
|
|
68
|
-
}, z.core.$strict>, z.ZodObject<{
|
|
69
|
-
status: z.ZodLiteral<"error">;
|
|
70
|
-
data: z.ZodString;
|
|
71
|
-
messages: z.ZodArray<z.ZodString>;
|
|
72
|
-
}, z.core.$strict>], "status">;
|
|
73
|
-
export type StabilizerSuccessResponse = z.infer<typeof stabilizer_success_response_schema>;
|
|
74
|
-
export type StabilizerErrorResponse = z.infer<typeof stabilizer_error_response_schema>;
|
|
75
|
-
export type StabilizerResponse = z.infer<typeof stabilizer_response_schema>;
|
|
76
|
-
//# sourceMappingURL=stabilizer_output_schema.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"stabilizer_output_schema.d.ts","sourceRoot":"","sources":["../../../../src/core/validation/contract/stabilizer_output_schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAGvB,eAAO,MAAM,kCAAkC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAIpC,CAAA;AAEX,eAAO,MAAM,gCAAgC;;;;kBAIlC,CAAA;AAEX,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8BAGrC,CAAA;AAEF,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kCAAkC,CAAC,CAAA;AAC1F,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gCAAgC,CAAC,CAAA;AACtF,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAA"}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { z } from 'zod';
|
|
2
|
-
import { stabilizer_cargo_state_schema } from './stabilizer_domain_schema.js';
|
|
3
|
-
export const stabilizer_success_response_schema = z.object({
|
|
4
|
-
status: z.literal('success'),
|
|
5
|
-
data: stabilizer_cargo_state_schema,
|
|
6
|
-
messages: z.array(z.string())
|
|
7
|
-
}).strict();
|
|
8
|
-
export const stabilizer_error_response_schema = z.object({
|
|
9
|
-
status: z.literal('error'),
|
|
10
|
-
data: z.string(),
|
|
11
|
-
messages: z.array(z.string())
|
|
12
|
-
}).strict();
|
|
13
|
-
export const stabilizer_response_schema = z.discriminatedUnion('status', [
|
|
14
|
-
stabilizer_success_response_schema,
|
|
15
|
-
stabilizer_error_response_schema
|
|
16
|
-
]);
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Makes contract item_id unique when the same SKU id repeats.
|
|
3
|
-
* Original `_id` stays in attributes for the wire round-trip.
|
|
4
|
-
* @param items - Mapped contract items.
|
|
5
|
-
* @returns Items with unique `item_id` values.
|
|
6
|
-
*/
|
|
7
|
-
export declare function uniquify_contract_item_ids(items: unknown[]): unknown[];
|
|
8
|
-
//# sourceMappingURL=uniquify_contract_item_ids.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"uniquify_contract_item_ids.d.ts","sourceRoot":"","sources":["../../../../src/core/validation/contract/uniquify_contract_item_ids.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,OAAO,EAAE,CAKtE"}
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
import { is_record } from './wire_mapper_record_utils.js';
|
|
2
|
-
/**
|
|
3
|
-
* Makes contract item_id unique when the same SKU id repeats.
|
|
4
|
-
* Original `_id` stays in attributes for the wire round-trip.
|
|
5
|
-
* @param items - Mapped contract items.
|
|
6
|
-
* @returns Items with unique `item_id` values.
|
|
7
|
-
*/
|
|
8
|
-
export function uniquify_contract_item_ids(items) {
|
|
9
|
-
const counts = count_item_ids(items);
|
|
10
|
-
const seen = new Map();
|
|
11
|
-
return items.map(item => uniquify_one_item(item, counts, seen));
|
|
12
|
-
}
|
|
13
|
-
function count_item_ids(items) {
|
|
14
|
-
const counts = new Map();
|
|
15
|
-
for (const item of items) {
|
|
16
|
-
const item_id = read_item_id(item);
|
|
17
|
-
if (item_id === undefined) {
|
|
18
|
-
continue;
|
|
19
|
-
}
|
|
20
|
-
counts.set(item_id, (counts.get(item_id) ?? 0) + 1);
|
|
21
|
-
}
|
|
22
|
-
return counts;
|
|
23
|
-
}
|
|
24
|
-
function uniquify_one_item(item, counts, seen) {
|
|
25
|
-
const item_id = read_item_id(item);
|
|
26
|
-
if (item_id === undefined || (counts.get(item_id) ?? 0) <= 1 || !is_record(item)) {
|
|
27
|
-
return item;
|
|
28
|
-
}
|
|
29
|
-
const occurrence = seen.get(item_id) ?? 0;
|
|
30
|
-
seen.set(item_id, occurrence + 1);
|
|
31
|
-
return { ...item, item_id: `${item_id}#${occurrence}` };
|
|
32
|
-
}
|
|
33
|
-
function read_item_id(item) {
|
|
34
|
-
if (!is_record(item) || typeof item.item_id !== 'string') {
|
|
35
|
-
return undefined;
|
|
36
|
-
}
|
|
37
|
-
return item.item_id;
|
|
38
|
-
}
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @param value - Unknown value.
|
|
3
|
-
* @returns True when value is a plain object record.
|
|
4
|
-
*/
|
|
5
|
-
export declare function is_record(value: unknown): value is Record<string, unknown>;
|
|
6
|
-
/**
|
|
7
|
-
* Renames object keys using a wire-to-contract map, preserving unmapped keys.
|
|
8
|
-
* @param source - Source record.
|
|
9
|
-
* @param key_map - Key rename map.
|
|
10
|
-
* @returns Record with renamed keys.
|
|
11
|
-
*/
|
|
12
|
-
export declare function rename_keys(source: Record<string, unknown>, key_map: Record<string, string>): Record<string, unknown>;
|
|
13
|
-
/**
|
|
14
|
-
* Picks only allowed keys from a record.
|
|
15
|
-
* @param source - Source record.
|
|
16
|
-
* @param allowed_keys - Keys to retain.
|
|
17
|
-
* @returns Filtered record.
|
|
18
|
-
*/
|
|
19
|
-
export declare function pick_keys(source: Record<string, unknown>, allowed_keys: string[]): Record<string, unknown>;
|
|
20
|
-
/**
|
|
21
|
-
* Reads the value of the first candidate key present on the record.
|
|
22
|
-
* @param source - Source record.
|
|
23
|
-
* @param candidate_keys - Candidate keys in precedence order.
|
|
24
|
-
* @returns Value of the first present key, or undefined when none is present.
|
|
25
|
-
*/
|
|
26
|
-
export declare function read_first_present(source: Record<string, unknown>, candidate_keys: readonly string[]): unknown;
|
|
27
|
-
/**
|
|
28
|
-
* Keeps every defined key except the excluded ones.
|
|
29
|
-
* @param source - Source record.
|
|
30
|
-
* @param excluded_keys - Keys to drop.
|
|
31
|
-
* @returns Filtered record.
|
|
32
|
-
*/
|
|
33
|
-
export declare function omit_keys(source: Record<string, unknown>, excluded_keys: string[]): Record<string, unknown>;
|
|
34
|
-
//# sourceMappingURL=wire_mapper_record_utils.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"wire_mapper_record_utils.d.ts","sourceRoot":"","sources":["../../../../src/core/validation/contract/wire_mapper_record_utils.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAG1E;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CACvB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAChC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CASzB;AAED;;;;;GAKG;AACH,wBAAgB,SAAS,CACrB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,YAAY,EAAE,MAAM,EAAE,GACvB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAWzB;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAC9B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,cAAc,EAAE,SAAS,MAAM,EAAE,GAClC,OAAO,CAUT;AAED;;;;;GAKG;AACH,wBAAgB,SAAS,CACrB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,aAAa,EAAE,MAAM,EAAE,GACxB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAYzB"}
|
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @param value - Unknown value.
|
|
3
|
-
* @returns True when value is a plain object record.
|
|
4
|
-
*/
|
|
5
|
-
export function is_record(value) {
|
|
6
|
-
return typeof value === 'object' && value !== null && !Array.isArray(value);
|
|
7
|
-
}
|
|
8
|
-
/**
|
|
9
|
-
* Renames object keys using a wire-to-contract map, preserving unmapped keys.
|
|
10
|
-
* @param source - Source record.
|
|
11
|
-
* @param key_map - Key rename map.
|
|
12
|
-
* @returns Record with renamed keys.
|
|
13
|
-
*/
|
|
14
|
-
export function rename_keys(source, key_map) {
|
|
15
|
-
const target = {};
|
|
16
|
-
for (const [key, value] of Object.entries(source)) {
|
|
17
|
-
const contract_key = key_map[key] ?? key;
|
|
18
|
-
target[contract_key] = value;
|
|
19
|
-
}
|
|
20
|
-
return target;
|
|
21
|
-
}
|
|
22
|
-
/**
|
|
23
|
-
* Picks only allowed keys from a record.
|
|
24
|
-
* @param source - Source record.
|
|
25
|
-
* @param allowed_keys - Keys to retain.
|
|
26
|
-
* @returns Filtered record.
|
|
27
|
-
*/
|
|
28
|
-
export function pick_keys(source, allowed_keys) {
|
|
29
|
-
const picked = {};
|
|
30
|
-
for (const key of allowed_keys) {
|
|
31
|
-
if (source[key] !== undefined) {
|
|
32
|
-
picked[key] = source[key];
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
return picked;
|
|
36
|
-
}
|
|
37
|
-
/**
|
|
38
|
-
* Reads the value of the first candidate key present on the record.
|
|
39
|
-
* @param source - Source record.
|
|
40
|
-
* @param candidate_keys - Candidate keys in precedence order.
|
|
41
|
-
* @returns Value of the first present key, or undefined when none is present.
|
|
42
|
-
*/
|
|
43
|
-
export function read_first_present(source, candidate_keys) {
|
|
44
|
-
for (const key of candidate_keys) {
|
|
45
|
-
if (Object.hasOwn(source, key)) {
|
|
46
|
-
return source[key];
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
return undefined;
|
|
50
|
-
}
|
|
51
|
-
/**
|
|
52
|
-
* Keeps every defined key except the excluded ones.
|
|
53
|
-
* @param source - Source record.
|
|
54
|
-
* @param excluded_keys - Keys to drop.
|
|
55
|
-
* @returns Filtered record.
|
|
56
|
-
*/
|
|
57
|
-
export function omit_keys(source, excluded_keys) {
|
|
58
|
-
const kept = {};
|
|
59
|
-
for (const [key, value] of Object.entries(source)) {
|
|
60
|
-
if (excluded_keys.includes(key) || value === undefined) {
|
|
61
|
-
continue;
|
|
62
|
-
}
|
|
63
|
-
kept[key] = value;
|
|
64
|
-
}
|
|
65
|
-
return kept;
|
|
66
|
-
}
|