@orbat-mapper/control-measures 0.13.0 → 0.14.0

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/README.md CHANGED
@@ -121,6 +121,7 @@ code.
121
121
  | <img src="media/direction-of-main-attack.svg" width="96" height="48" alt=""> | `direction-of-main-attack` | Direction of Main Attack | `140602` |
122
122
  | <img src="media/direction-of-supporting-attack.svg" width="96" height="48" alt=""> | `direction-of-supporting-attack` | Direction of Supporting Attack | `140603` |
123
123
  | <img src="media/final-coordination-line.svg" width="96" height="48" alt=""> | `final-coordination-line` | Final coordination line | `140700` |
124
+ | <img src="media/infiltration-lane.svg" width="96" height="48" alt=""> | `infiltration-lane` | Infiltration Lane | `140800` |
124
125
  | <img src="media/limit-of-advance.svg" width="96" height="48" alt=""> | `limit-of-advance` | Limit of advance | `140900` |
125
126
  | <img src="media/line-of-departure.svg" width="96" height="48" alt=""> | `line-of-departure` | Line of departure | `141000` |
126
127
  | <img src="media/line-of-departure-contact.svg" width="96" height="48" alt=""> | `line-of-departure-contact` | Line of departure / line of contact | `141100` |
@@ -225,7 +225,7 @@ declare function normalizeTextAmplifiers(input: TextAmplifiers | undefined): Can
225
225
  //#region src/metadata.d.ts
226
226
  type ControlMeasureGeometryType = Geometry["type"];
227
227
  type ControlMeasureGeometry = "point" | "line" | "area";
228
- declare const DRAW_RULE_IDS: readonly ["Area1", "Area5", "Area6", "Area7", "Area8", "Area11", "Area12", "Area15", "Area17", "Area21", "Area27", "Axis1", "Line1", "Line3", "Line9", "Line10", "Line11", "Line23", "Line24", "Line26", "Line27", "Line29", "Line31", "Line32", "Point1", "Point2", "Point12", "Point18", "Rectangle", "Sector"];
228
+ declare const DRAW_RULE_IDS: readonly ["Area1", "Area5", "Area6", "Area7", "Area8", "Area11", "Area12", "Area15", "Area17", "Area21", "Area27", "Axis1", "Line1", "Line3", "Line9", "Line10", "Line11", "Line23", "Line24", "Line26", "Line27", "Line29", "Line31", "Line32", "Point1", "Point2", "Point12", "Point18", "Polyline1", "Rectangle", "Sector"];
229
229
  type DrawRuleId = (typeof DRAW_RULE_IDS)[number];
230
230
  declare const PARAMETER_PRESENTATION_TIERS: readonly ["primary", "standard", "advanced"];
231
231
  type ParameterPresentationTier = (typeof PARAMETER_PRESENTATION_TIERS)[number];
@@ -2129,6 +2129,12 @@ interface FinalCoordinationLineOptions extends LineLabelOptions, SmoothLineOptio
2129
2129
  /** Creates a Final coordination line labeled "FCL" above both ends. */
2130
2130
  declare function createFinalCoordinationLine(positions: Position[], options?: FinalCoordinationLineOptions, textAmplifiers?: CanonicalTextAmplifiers, context?: ControlMeasureGeneratorContext): FeatureCollection<LineString | Point>;
2131
2131
  //#endregion
2132
+ //#region src/generators/cm14-maneuver-lines/infiltration-lane.d.ts
2133
+ type InfiltrationLaneOptions = LabelSizeOptions;
2134
+ declare const DEFAULT_INFILTRATION_LANE_OPTIONS: InfiltrationLaneOptions;
2135
+ /** Creates the two parallel boundaries and centered Field T lane designation. */
2136
+ declare function createInfiltrationLane(coordinates: Position[], options?: InfiltrationLaneOptions, textAmplifiers?: CanonicalTextAmplifiers): FeatureCollection<MultiLineString | Point>;
2137
+ //#endregion
2132
2138
  //#region src/generators/cm14-maneuver-lines/airhead-line.d.ts
2133
2139
  /** Configuration options for the Airhead line control measure. */
2134
2140
  type AirheadLineOptions = LabeledAreaOptions;
@@ -3083,6 +3089,7 @@ declare const DEFINITIONS: {
3083
3089
  "forward-edge-of-battle-area": ControlMeasureDefinition<"forward-edge-of-battle-area", typeof createForwardEdgeOfBattleArea>;
3084
3090
  "bridgehead-line": ControlMeasureDefinition<"bridgehead-line", typeof createBridgeheadLine>;
3085
3091
  "final-coordination-line": ControlMeasureDefinition<"final-coordination-line", typeof createFinalCoordinationLine>;
3092
+ "infiltration-lane": ControlMeasureDefinition<"infiltration-lane", typeof createInfiltrationLane>;
3086
3093
  "airhead-line": ControlMeasureDefinition<"airhead-line", typeof createAirheadLine>;
3087
3094
  "holding-line": ControlMeasureDefinition<"holding-line", typeof createHoldingLine>;
3088
3095
  "release-line": ControlMeasureDefinition<"release-line", typeof createReleaseLine>;
@@ -3532,6 +3539,17 @@ declare const line26DrawRule: ControlMeasureDrawRule;
3532
3539
  */
3533
3540
  declare const line27DrawRule: ControlMeasureDrawRule;
3534
3541
  //#endregion
3542
+ //#region src/draw-rules/polyline1.d.ts
3543
+ /**
3544
+ * Polyline1 anchors for the Infiltration Lane.
3545
+ *
3546
+ * PT1/PT2 are the two user clicks and define the invisible lane centerline. PT3 is an
3547
+ * automatically derived, editable width handle on the perpendicular through
3548
+ * its midpoint. It rests on one parallel boundary, so its signed distance
3549
+ * from PT1/PT2 is the lane half-width.
3550
+ */
3551
+ declare const polyline1DrawRule: ControlMeasureDrawRule;
3552
+ //#endregion
3535
3553
  //#region src/draw-rules/area8.d.ts
3536
3554
  declare const supportByFireDrawRule: ControlMeasureDrawRule;
3537
3555
  //#endregion
@@ -3564,4 +3582,4 @@ interface AmbushOptions {
3564
3582
  }
3565
3583
  declare const DEFAULT_AMBUSH_OPTIONS: Required<AmbushOptions>;
3566
3584
  //#endregion
3567
- export { CONTROL_MEASURE_METADATA as $, ControlMeasurePaintCapability as $i, DEFAULT_ATTACK_HELICOPTER_OPTIONS as $n, StyleHints as $r, DEFAULT_DISRUPT_MISSION_TASK_OPTIONS as $t, BaselineFrame as A, sphericalBearing as Ai, DEFAULT_LIMIT_OF_ADVANCE_OPTIONS as An, AreaOfOperationsOptions as Ar, FortifiedAreaOptions as At, toSimpleStyle as B, DEFAULT_LABEL_SIZE_CLAMP_CSS_PIXELS as Bi, BridgeheadLineOptions as Bn, DEFAULT_ASSEMBLY_AREA_OPTIONS as Br, WithdrawOptions as Bt, area27DrawRule as C, EngineerWorkLineOptions as Ci, DEFAULT_PROBABLE_LINE_OF_DEPLOYMENT_OPTIONS as Cn, DEFAULT_CLASSIC_ARROW_OPTIONS as Cr, BlockOptions as Ct, getMidpointPerpendicularSignedDistance as D, Point2D as Di, LineOfDepartureContactOptions as Dn, MainAttackOptions as Dr, DEFAULT_FRONTAL_ATTACK_OPTIONS as Dt, createMidpointPerpendicularDrawRule as E, LabelSizeOptions as Ei, DEFAULT_LINE_OF_DEPARTURE_CONTACT_OPTIONS as En, DEFAULT_MAIN_ATTACK_OPTIONS as Er, TurningMovementOptions as Et, EPSILON as F, ControlMeasureOptionHandle as Fi, HandoverLineOptions as Fn, DEFAULT_LANDING_ZONE_OPTIONS as Fr, AntitankDitchOptions as Ft, foldsBoxTransformOptions as G, DEFAULT_STROKE_WIDTH_CSS_PIXELS as Gi, PhaseLineOptions as Gn, AreaDefenseOptions as Gr, DEFAULT_RETIRE_OPTIONS as Gt, dragControlMeasureOptionHandle as H, DEFAULT_LINE_JOIN as Hi, DEFAULT_FORWARD_EDGE_OF_BATTLE_AREA_OPTIONS as Hn, MobileDefenseOptions as Hr, SeizeOptions as Ht, getMetersPerPixel as I, ControlMeasureOptionHandleDragEvent as Ii, DEFAULT_RELEASE_LINE_OPTIONS as In, LandingZoneOptions as Ir, DEFAULT_ANTITANK_DITCH_OPTIONS as It, renderControlMeasure as J, MeasuredText as Ji, AttackByFireOptions as Jn, EncirclementOptions as Jr, RearwardPassageOfLinesOptions as Jt, freezeOrientationOptions as K, LogicalTextStyle as Ki, DEFAULT_FLOT_OPTIONS as Kn, DEFAULT_AREA_DEFENSE_OPTIONS as Kr, RetireOptions as Kt, roundToFixed as L, ControlMeasureOptionHandles as Li, ReleaseLineOptions as Ln, DEFAULT_JOINT_TACTICAL_ACTION_AREA_OPTIONS as Lr, DEFAULT_WITHDRAW_UNDER_PRESSURE_OPTIONS as Lt, BaselineFrameOptions as M, BoundaryOptions as Mi, BattleHandoverLineOptions as Mn, DEFAULT_PICKUP_ZONE_OPTIONS as Mr, FortifiedLineOptions as Mt, BaselineFrameOrigin as N, DEFAULT_BOUNDARY_OPTIONS as Ni, DEFAULT_BATTLE_HANDOVER_LINE_OPTIONS as Nn, PickupZoneOptions as Nr, AntitankWallOptions as Nt, pointOnMidpointPerpendicularAxis as O, haversineDistance as Oi, DEFAULT_LINE_OF_DEPARTURE_OPTIONS as On, calculateMetrics as Or, FrontalAttackOptions as Ot, createBaselineFrame as P, BoxTransformDelta as Pi, DEFAULT_HANDOVER_LINE_OPTIONS as Pn, MineType as Pr, DEFAULT_ANTITANK_WALL_OPTIONS as Pt, CONTROL_MEASURE_IDS as Q, ControlMeasureMetadata as Qi, AttackHelicopterOptions as Qn, FeaturePartProps as Qr, GuardOptions as Qt, SimpleStyleProps as R, ControlMeasureRenderContext as Ri, DEFAULT_HOLDING_LINE_OPTIONS as Rn, JointTacticalActionAreaOptions as Rr, WithdrawUnderPressureOptions as Rt, containDrawRule as S, DEFAULT_ENGINEER_WORK_LINE_OPTIONS as Si, DEFAULT_BLOCK_MISSION_TASK_OPTIONS as Sn, ClassicArrowOptions as Sr, DisruptOptions as St, computeDefaultMidpointPerpendicularPoint as T, LightLineOptions as Ti, ProbableLineOfDeploymentOptions as Tn, SupportingAttackOptions as Tr, DEFAULT_TURNING_MOVEMENT_OPTIONS as Tt, getControlMeasureOptionHandles as U, DEFAULT_PORTRAYAL as Ui, ForwardEdgeOfBattleAreaOptions as Un, DEFAULT_ENGAGEMENT_AREA_OPTIONS as Ur, DEFAULT_SCREEN_OPTIONS as Ut, resolveStyleHints as V, DEFAULT_LINE_CAP as Vi, DEFAULT_BRIDGEHEAD_LINE_OPTIONS as Vn, DEFAULT_MOBILE_DEFENSE_OPTIONS as Vr, DEFAULT_SEIZE_OPTIONS as Vt, applyBoxTransformOptions as W, DEFAULT_STROKE_DASH_CSS_PIXELS as Wi, DEFAULT_PHASE_LINE_OPTIONS as Wn, EngagementAreaOptions as Wr, ScreenOptions as Wt, cloneControlMeasure as X, ControlMeasureGeometry as Xi, DEFAULT_SUPPORT_BY_FIRE_OPTIONS as Xn, FinalProtectiveFireOptions as Xr, PenetrateOptions as Xt, ControlMeasure as Y, ControlMeasureFillCapability as Yi, DEFAULT_ATTACK_BY_FIRE_OPTIONS as Yn, DEFAULT_FINAL_PROTECTIVE_FIRE_OPTIONS as Yr, DEFAULT_PENETRATE_OPTIONS as Yt, isKind as Z, ControlMeasureGeometryType as Zi, SupportByFireOptions as Zn, ControlMeasureRender as Zr, DEFAULT_GUARD_OPTIONS as Zt, point12DrawRule as _, canonicalTextAmplifierKey as _a, DEFAULT_CONTAIN_OPTIONS as _i, BypassOptions as _n, GenericLineOptions as _r, DEFAULT_FIX_MISSION_TASK_OPTIONS as _t, axis1DrawRule as a, parameterPresentationTierRank as aa, PrincipalDirectionOfFireOptions as ai, CoverOptions as an, RadarSearchDoctrineOptions as ar, getDefaultOptions as at, disruptDrawRule as b, AnchorTransformEvent as ba, DEFAULT_GENERIC_C2_LINE_OPTIONS as bi, DEFAULT_BREACH_OPTIONS as bn, DEFAULT_BLOCK_ARROW_OPTIONS as br, FixOptions as bt, line26DrawRule as c, AmplifierPlacement as ca, DEFAULT_DIRECTION_OF_MAIN_ATTACK_OPTIONS as ci, TacticalArrowOptions as cn, DEFAULT_GENERIC_SECTOR_OPTIONS as cr, ObstacleBypassImpossibleOptions as ct, turnDrawRule as d, GeneratedLabelKey as da, DirectionOfAttackAviationOptions as di, CounterattackOptions as dn, GenericCircleOptions as dr, DEFAULT_OBSTACLE_BYPASS_EASY_OPTIONS as dt, PARAMETER_PRESENTATION_TIERS as ea, controlMeasureIdFromFeature as ei, DisruptMissionTaskOptions as en, AirborneAttackOptions as er, ControlMeasureId as et, line1DrawRule as f, LabelPlacementOverride as fa, DEFAULT_RETAIN_OPTIONS as fi, DEFAULT_COUNTERATTACK_OPTIONS as fn, DEFAULT_GENERIC_RECTANGLE_OPTIONS as fr, ObstacleBypassEasyOptions as ft, staticPointDrawRule as g, TextAmplifiers as ga, ContainOptions as gi, DEFAULT_CANALIZE_OPTIONS as gn, DEFAULT_GENERIC_LINE_OPTIONS as gr, TurnOptions as gt, dynamicPointDrawRule as h, TextAmplifierKey as ha, StrongPointOptions as hi, CanalizeOptions as hn, GenericPolygonOptions as hr, DEFAULT_TURN_OPTIONS as ht, rectangleDrawRule as i, TextAmplifierDescriptor as ia, DEFAULT_PRINCIPAL_DIRECTION_OF_FIRE_OPTIONS as ii, DelayOptions as in, RADAR_SEARCH_DOCTRINE_STROKE_COLOR as ir, getControlMeasureMetadataByValue as it, BaselineFrameNormal as j, unproject as ji, LimitOfAdvanceOptions as jn, DEFAULT_AREA_OF_OPERATIONS_OPTIONS as jr, DEFAULT_FORTIFIED_LINE_OPTIONS as jt, snapToMidpointPerpendicular as k, project as ki, LineOfDepartureOptions as kn, computeInitialWidthPoint as kr, DEFAULT_FORTIFIED_AREA_OPTIONS as kt, line24DrawRule as l, AmplifierPlacements as la, DirectionOfMainAttackOptions as li, CounterattackByFireOptions as ln, GenericSectorOptions as lr, DEFAULT_OBSTACLE_BYPASS_DIFFICULT_OPTIONS as lt, attackByFireDrawRule as m, TextAmplifierField as ma, DEFAULT_STRONG_POINT_OPTIONS as mi, DEFAULT_CLEAR_OPTIONS as mn, DEFAULT_GENERIC_POLYGON_OPTIONS as mr, MinefieldOptions as mt, DEFAULT_AMBUSH_OPTIONS as n, ParameterPresentationTier as na, SECONDARY_DIRECTION_OF_FIRE_DASH as ni, DisengageOptions as nn, DEFAULT_RADAR_SEARCH_DOCTRINE_OPTIONS as nr, OptionsByKind as nt, supportByFireDrawRule as o, resolveParameterPresentationTier as oa, DEFAULT_DIRECTION_OF_SUPPORTING_ATTACK_OPTIONS as oi, DEFAULT_COVER_OPTIONS as on, DEFAULT_GENERIC_TEXT_OPTIONS as or, listControlMeasureMetadata as ot, ambushDrawRule as p, TEXT_AMPLIFIER_FIELDS as pa, RetainOptions as pi, ClearOptions as pn, GenericRectangleOptions as pr, DEFAULT_MINEFIELD_OPTIONS as pt, RenderOptions as q, MeasureTextRequest as qi, FLOTOptions as qn, DEFAULT_ENCIRCLEMENT_OPTIONS as qr, DEFAULT_REARWARD_PASSAGE_OF_LINES_OPTIONS as qt, sectorDrawRule as r, ParameterSemanticRole as ra, SecondaryDirectionOfFireOptions as ri, DEFAULT_DELAY_OPTIONS as rn, RADAR_SEARCH_DOCTRINE_FILL_COLOR as rr, getControlMeasureMetadata as rt, line27DrawRule as s, resolveParameterSemanticRole as sa, DirectionOfSupportingAttackOptions as si, DEFAULT_TACTICAL_ARROW_OPTIONS as sn, GenericTextOptions as sr, DEFAULT_OBSTACLE_BYPASS_IMPOSSIBLE_OPTIONS as st, AmbushOptions as t, ParamDescriptor as ta, DEFAULT_SECONDARY_DIRECTION_OF_FIRE_OPTIONS as ti, DEFAULT_DISENGAGE_OPTIONS as tn, DEFAULT_AIRBORNE_ATTACK_OPTIONS as tr, ControlMeasureKind as tt, line23DrawRule as u, CanonicalTextAmplifiers as ua, DEFAULT_DIRECTION_OF_ATTACK_AVIATION_OPTIONS as ui, DEFAULT_COUNTERATTACK_BY_FIRE_OPTIONS as un, DEFAULT_GENERIC_CIRCLE_OPTIONS as ur, ObstacleBypassDifficultOptions as ut, penetrateDrawRule as v, normalizeTextAmplifiers as va, BattlePositionOptions as vi, DEFAULT_BYPASS_OPTIONS as vn, BlockArrowHeadStyle as vr, FixMissionTaskOptions as vt, MidpointPerpendicularDrawRuleOptions as w, DEFAULT_LIGHT_LINE_OPTIONS as wi, PROBABLE_LINE_OF_DEPLOYMENT_DASH as wn, DEFAULT_SUPPORTING_ATTACK_OPTIONS as wr, DEFAULT_BLOCK_OPTIONS as wt, blockDrawRule as x, ControlMeasureDrawRule as xa, GenericC2LineOptions as xi, BlockMissionTaskOptions as xn, ClassicArrowHeadStyle as xr, DEFAULT_DISRUPT_OPTIONS as xt, centerRadiusDrawRule as y, resolveAmplifierPlacement as ya, DEFAULT_BATTLE_POSITION_OPTIONS as yi, BreachOptions as yn, BlockArrowOptions as yr, DEFAULT_FIX_OPTIONS as yt, SimpleStyleRender as z, DEFAULT_LABEL_HEIGHT_CSS_PIXELS as zi, HoldingLineOptions as zn, AssemblyAreaOptions as zr, DEFAULT_WITHDRAW_OPTIONS as zt };
3585
+ export { CONTROL_MEASURE_IDS as $, ControlMeasureGeometry as $i, DEFAULT_SUPPORT_BY_FIRE_OPTIONS as $n, FinalProtectiveFireOptions as $r, GuardOptions as $t, snapToMidpointPerpendicular as A, Point2D as Ai, LineOfDepartureOptions as An, MainAttackOptions as Ar, DEFAULT_FORTIFIED_AREA_OPTIONS as At, SimpleStyleRender as B, ControlMeasureOptionHandles as Bi, HoldingLineOptions as Bn, DEFAULT_JOINT_TACTICAL_ACTION_AREA_OPTIONS as Br, DEFAULT_WITHDRAW_OPTIONS as Bt, containDrawRule as C, AnchorTransformEvent as Ca, DEFAULT_GENERIC_C2_LINE_OPTIONS as Ci, DEFAULT_BLOCK_MISSION_TASK_OPTIONS as Cn, DEFAULT_BLOCK_ARROW_OPTIONS as Cr, DisruptOptions as Ct, createMidpointPerpendicularDrawRule as D, DEFAULT_LIGHT_LINE_OPTIONS as Di, DEFAULT_LINE_OF_DEPARTURE_CONTACT_OPTIONS as Dn, DEFAULT_SUPPORTING_ATTACK_OPTIONS as Dr, TurningMovementOptions as Dt, computeDefaultMidpointPerpendicularPoint as E, EngineerWorkLineOptions as Ei, ProbableLineOfDeploymentOptions as En, DEFAULT_CLASSIC_ARROW_OPTIONS as Er, DEFAULT_TURNING_MOVEMENT_OPTIONS as Et, createBaselineFrame as F, BoundaryOptions as Fi, DEFAULT_HANDOVER_LINE_OPTIONS as Fn, DEFAULT_PICKUP_ZONE_OPTIONS as Fr, DEFAULT_ANTITANK_WALL_OPTIONS as Ft, applyBoxTransformOptions as G, DEFAULT_LINE_JOIN as Gi, DEFAULT_FORWARD_EDGE_OF_BATTLE_AREA_OPTIONS as Gn, MobileDefenseOptions as Gr, ScreenOptions as Gt, resolveStyleHints as H, DEFAULT_LABEL_HEIGHT_CSS_PIXELS as Hi, InfiltrationLaneOptions as Hn, AssemblyAreaOptions as Hr, DEFAULT_SEIZE_OPTIONS as Ht, EPSILON as I, DEFAULT_BOUNDARY_OPTIONS as Ii, HandoverLineOptions as In, PickupZoneOptions as Ir, AntitankDitchOptions as It, RenderOptions as J, DEFAULT_STROKE_WIDTH_CSS_PIXELS as Ji, PhaseLineOptions as Jn, AreaDefenseOptions as Jr, DEFAULT_REARWARD_PASSAGE_OF_LINES_OPTIONS as Jt, foldsBoxTransformOptions as K, DEFAULT_PORTRAYAL as Ki, ForwardEdgeOfBattleAreaOptions as Kn, DEFAULT_ENGAGEMENT_AREA_OPTIONS as Kr, DEFAULT_RETIRE_OPTIONS as Kt, getMetersPerPixel as L, BoxTransformDelta as Li, DEFAULT_RELEASE_LINE_OPTIONS as Ln, MineType as Lr, DEFAULT_ANTITANK_DITCH_OPTIONS as Lt, BaselineFrameNormal as M, project as Mi, LimitOfAdvanceOptions as Mn, computeInitialWidthPoint as Mr, DEFAULT_FORTIFIED_LINE_OPTIONS as Mt, BaselineFrameOptions as N, sphericalBearing as Ni, BattleHandoverLineOptions as Nn, AreaOfOperationsOptions as Nr, FortifiedLineOptions as Nt, getMidpointPerpendicularSignedDistance as O, LightLineOptions as Oi, LineOfDepartureContactOptions as On, SupportingAttackOptions as Or, DEFAULT_FRONTAL_ATTACK_OPTIONS as Ot, BaselineFrameOrigin as P, unproject as Pi, DEFAULT_BATTLE_HANDOVER_LINE_OPTIONS as Pn, DEFAULT_AREA_OF_OPERATIONS_OPTIONS as Pr, AntitankWallOptions as Pt, isKind as Q, ControlMeasureFillCapability as Qi, DEFAULT_ATTACK_BY_FIRE_OPTIONS as Qn, DEFAULT_FINAL_PROTECTIVE_FIRE_OPTIONS as Qr, DEFAULT_GUARD_OPTIONS as Qt, roundToFixed as R, ControlMeasureOptionHandle as Ri, ReleaseLineOptions as Rn, DEFAULT_LANDING_ZONE_OPTIONS as Rr, DEFAULT_WITHDRAW_UNDER_PRESSURE_OPTIONS as Rt, blockDrawRule as S, resolveAmplifierPlacement as Sa, DEFAULT_BATTLE_POSITION_OPTIONS as Si, BlockMissionTaskOptions as Sn, BlockArrowOptions as Sr, DEFAULT_DISRUPT_OPTIONS as St, MidpointPerpendicularDrawRuleOptions as T, DEFAULT_ENGINEER_WORK_LINE_OPTIONS as Ti, PROBABLE_LINE_OF_DEPLOYMENT_DASH as Tn, ClassicArrowOptions as Tr, DEFAULT_BLOCK_OPTIONS as Tt, dragControlMeasureOptionHandle as U, DEFAULT_LABEL_SIZE_CLAMP_CSS_PIXELS as Ui, BridgeheadLineOptions as Un, DEFAULT_ASSEMBLY_AREA_OPTIONS as Ur, SeizeOptions as Ut, toSimpleStyle as V, ControlMeasureRenderContext as Vi, DEFAULT_INFILTRATION_LANE_OPTIONS as Vn, JointTacticalActionAreaOptions as Vr, WithdrawOptions as Vt, getControlMeasureOptionHandles as W, DEFAULT_LINE_CAP as Wi, DEFAULT_BRIDGEHEAD_LINE_OPTIONS as Wn, DEFAULT_MOBILE_DEFENSE_OPTIONS as Wr, DEFAULT_SCREEN_OPTIONS as Wt, ControlMeasure as X, MeasureTextRequest as Xi, FLOTOptions as Xn, DEFAULT_ENCIRCLEMENT_OPTIONS as Xr, DEFAULT_PENETRATE_OPTIONS as Xt, renderControlMeasure as Y, LogicalTextStyle as Yi, DEFAULT_FLOT_OPTIONS as Yn, DEFAULT_AREA_DEFENSE_OPTIONS as Yr, RearwardPassageOfLinesOptions as Yt, cloneControlMeasure as Z, MeasuredText as Zi, AttackByFireOptions as Zn, EncirclementOptions as Zr, PenetrateOptions as Zt, staticPointDrawRule as _, TextAmplifierField as _a, DEFAULT_STRONG_POINT_OPTIONS as _i, DEFAULT_CANALIZE_OPTIONS as _n, DEFAULT_GENERIC_POLYGON_OPTIONS as _r, TurnOptions as _t, axis1DrawRule as a, ParameterPresentationTier as aa, SECONDARY_DIRECTION_OF_FIRE_DASH as ai, DelayOptions as an, DEFAULT_RADAR_SEARCH_DOCTRINE_OPTIONS as ar, getControlMeasureMetadataByValue as at, centerRadiusDrawRule as b, canonicalTextAmplifierKey as ba, DEFAULT_CONTAIN_OPTIONS as bi, BreachOptions as bn, GenericLineOptions as br, DEFAULT_FIX_OPTIONS as bt, line27DrawRule as c, parameterPresentationTierRank as ca, PrincipalDirectionOfFireOptions as ci, DEFAULT_TACTICAL_ARROW_OPTIONS as cn, RadarSearchDoctrineOptions as cr, DEFAULT_OBSTACLE_BYPASS_IMPOSSIBLE_OPTIONS as ct, line23DrawRule as d, AmplifierPlacement as da, DEFAULT_DIRECTION_OF_MAIN_ATTACK_OPTIONS as di, DEFAULT_COUNTERATTACK_BY_FIRE_OPTIONS as dn, DEFAULT_GENERIC_SECTOR_OPTIONS as dr, ObstacleBypassDifficultOptions as dt, ControlMeasureGeometryType as ea, ControlMeasureRender as ei, DEFAULT_DISRUPT_MISSION_TASK_OPTIONS as en, SupportByFireOptions as er, CONTROL_MEASURE_METADATA as et, turnDrawRule as f, AmplifierPlacements as fa, DirectionOfMainAttackOptions as fi, CounterattackOptions as fn, GenericSectorOptions as fr, DEFAULT_OBSTACLE_BYPASS_EASY_OPTIONS as ft, dynamicPointDrawRule as g, TEXT_AMPLIFIER_FIELDS as ga, RetainOptions as gi, CanalizeOptions as gn, GenericRectangleOptions as gr, DEFAULT_TURN_OPTIONS as gt, attackByFireDrawRule as h, LabelPlacementOverride as ha, DEFAULT_RETAIN_OPTIONS as hi, DEFAULT_CLEAR_OPTIONS as hn, DEFAULT_GENERIC_RECTANGLE_OPTIONS as hr, MinefieldOptions as ht, rectangleDrawRule as i, ParamDescriptor as ia, DEFAULT_SECONDARY_DIRECTION_OF_FIRE_OPTIONS as ii, DEFAULT_DELAY_OPTIONS as in, DEFAULT_AIRBORNE_ATTACK_OPTIONS as ir, getControlMeasureMetadata as it, BaselineFrame as j, haversineDistance as ji, DEFAULT_LIMIT_OF_ADVANCE_OPTIONS as jn, calculateMetrics as jr, FortifiedAreaOptions as jt, pointOnMidpointPerpendicularAxis as k, LabelSizeOptions as ki, DEFAULT_LINE_OF_DEPARTURE_OPTIONS as kn, DEFAULT_MAIN_ATTACK_OPTIONS as kr, FrontalAttackOptions as kt, line26DrawRule as l, resolveParameterPresentationTier as la, DEFAULT_DIRECTION_OF_SUPPORTING_ATTACK_OPTIONS as li, TacticalArrowOptions as ln, DEFAULT_GENERIC_TEXT_OPTIONS as lr, ObstacleBypassImpossibleOptions as lt, ambushDrawRule as m, GeneratedLabelKey as ma, DirectionOfAttackAviationOptions as mi, ClearOptions as mn, GenericCircleOptions as mr, DEFAULT_MINEFIELD_OPTIONS as mt, DEFAULT_AMBUSH_OPTIONS as n, ControlMeasurePaintCapability as na, StyleHints as ni, DEFAULT_DISENGAGE_OPTIONS as nn, DEFAULT_ATTACK_HELICOPTER_OPTIONS as nr, ControlMeasureKind as nt, supportByFireDrawRule as o, ParameterSemanticRole as oa, SecondaryDirectionOfFireOptions as oi, CoverOptions as on, RADAR_SEARCH_DOCTRINE_FILL_COLOR as or, getDefaultOptions as ot, line1DrawRule as p, CanonicalTextAmplifiers as pa, DEFAULT_DIRECTION_OF_ATTACK_AVIATION_OPTIONS as pi, DEFAULT_COUNTERATTACK_OPTIONS as pn, DEFAULT_GENERIC_CIRCLE_OPTIONS as pr, ObstacleBypassEasyOptions as pt, freezeOrientationOptions as q, DEFAULT_STROKE_DASH_CSS_PIXELS as qi, DEFAULT_PHASE_LINE_OPTIONS as qn, EngagementAreaOptions as qr, RetireOptions as qt, sectorDrawRule as r, PARAMETER_PRESENTATION_TIERS as ra, controlMeasureIdFromFeature as ri, DisengageOptions as rn, AirborneAttackOptions as rr, OptionsByKind as rt, polyline1DrawRule as s, TextAmplifierDescriptor as sa, DEFAULT_PRINCIPAL_DIRECTION_OF_FIRE_OPTIONS as si, DEFAULT_COVER_OPTIONS as sn, RADAR_SEARCH_DOCTRINE_STROKE_COLOR as sr, listControlMeasureMetadata as st, AmbushOptions as t, ControlMeasureMetadata as ta, FeaturePartProps as ti, DisruptMissionTaskOptions as tn, AttackHelicopterOptions as tr, ControlMeasureId as tt, line24DrawRule as u, resolveParameterSemanticRole as ua, DirectionOfSupportingAttackOptions as ui, CounterattackByFireOptions as un, GenericTextOptions as ur, DEFAULT_OBSTACLE_BYPASS_DIFFICULT_OPTIONS as ut, point12DrawRule as v, TextAmplifierKey as va, StrongPointOptions as vi, BypassOptions as vn, GenericPolygonOptions as vr, DEFAULT_FIX_MISSION_TASK_OPTIONS as vt, area27DrawRule as w, ControlMeasureDrawRule as wa, GenericC2LineOptions as wi, DEFAULT_PROBABLE_LINE_OF_DEPLOYMENT_OPTIONS as wn, ClassicArrowHeadStyle as wr, BlockOptions as wt, disruptDrawRule as x, normalizeTextAmplifiers as xa, BattlePositionOptions as xi, DEFAULT_BREACH_OPTIONS as xn, BlockArrowHeadStyle as xr, FixOptions as xt, penetrateDrawRule as y, TextAmplifiers as ya, ContainOptions as yi, DEFAULT_BYPASS_OPTIONS as yn, DEFAULT_GENERIC_LINE_OPTIONS as yr, FixMissionTaskOptions as yt, SimpleStyleProps as z, ControlMeasureOptionHandleDragEvent as zi, DEFAULT_HOLDING_LINE_OPTIONS as zn, LandingZoneOptions as zr, WithdrawUnderPressureOptions as zt };
package/dist/index.d.mts CHANGED
@@ -1,3 +1,3 @@
1
- import { $ as CONTROL_MEASURE_METADATA, $i as ControlMeasurePaintCapability, $n as DEFAULT_ATTACK_HELICOPTER_OPTIONS, $r as StyleHints, $t as DEFAULT_DISRUPT_MISSION_TASK_OPTIONS, A as BaselineFrame, Ai as sphericalBearing, An as DEFAULT_LIMIT_OF_ADVANCE_OPTIONS, Ar as AreaOfOperationsOptions, At as FortifiedAreaOptions, B as toSimpleStyle, Bi as DEFAULT_LABEL_SIZE_CLAMP_CSS_PIXELS, Bn as BridgeheadLineOptions, Br as DEFAULT_ASSEMBLY_AREA_OPTIONS, Bt as WithdrawOptions, C as area27DrawRule, Ci as EngineerWorkLineOptions, Cn as DEFAULT_PROBABLE_LINE_OF_DEPLOYMENT_OPTIONS, Cr as DEFAULT_CLASSIC_ARROW_OPTIONS, Ct as BlockOptions, D as getMidpointPerpendicularSignedDistance, Di as Point2D, Dn as LineOfDepartureContactOptions, Dr as MainAttackOptions, Dt as DEFAULT_FRONTAL_ATTACK_OPTIONS, E as createMidpointPerpendicularDrawRule, Ei as LabelSizeOptions, En as DEFAULT_LINE_OF_DEPARTURE_CONTACT_OPTIONS, Er as DEFAULT_MAIN_ATTACK_OPTIONS, Et as TurningMovementOptions, F as EPSILON, Fi as ControlMeasureOptionHandle, Fn as HandoverLineOptions, Fr as DEFAULT_LANDING_ZONE_OPTIONS, Ft as AntitankDitchOptions, G as foldsBoxTransformOptions, Gi as DEFAULT_STROKE_WIDTH_CSS_PIXELS, Gn as PhaseLineOptions, Gr as AreaDefenseOptions, Gt as DEFAULT_RETIRE_OPTIONS, H as dragControlMeasureOptionHandle, Hi as DEFAULT_LINE_JOIN, Hn as DEFAULT_FORWARD_EDGE_OF_BATTLE_AREA_OPTIONS, Hr as MobileDefenseOptions, Ht as SeizeOptions, I as getMetersPerPixel, Ii as ControlMeasureOptionHandleDragEvent, In as DEFAULT_RELEASE_LINE_OPTIONS, Ir as LandingZoneOptions, It as DEFAULT_ANTITANK_DITCH_OPTIONS, J as renderControlMeasure, Ji as MeasuredText, Jn as AttackByFireOptions, Jr as EncirclementOptions, Jt as RearwardPassageOfLinesOptions, K as freezeOrientationOptions, Ki as LogicalTextStyle, Kn as DEFAULT_FLOT_OPTIONS, Kr as DEFAULT_AREA_DEFENSE_OPTIONS, Kt as RetireOptions, L as roundToFixed, Li as ControlMeasureOptionHandles, Ln as ReleaseLineOptions, Lr as DEFAULT_JOINT_TACTICAL_ACTION_AREA_OPTIONS, Lt as DEFAULT_WITHDRAW_UNDER_PRESSURE_OPTIONS, M as BaselineFrameOptions, Mi as BoundaryOptions, Mn as BattleHandoverLineOptions, Mr as DEFAULT_PICKUP_ZONE_OPTIONS, Mt as FortifiedLineOptions, N as BaselineFrameOrigin, Ni as DEFAULT_BOUNDARY_OPTIONS, Nn as DEFAULT_BATTLE_HANDOVER_LINE_OPTIONS, Nr as PickupZoneOptions, Nt as AntitankWallOptions, O as pointOnMidpointPerpendicularAxis, Oi as haversineDistance, On as DEFAULT_LINE_OF_DEPARTURE_OPTIONS, Or as calculateMetrics, Ot as FrontalAttackOptions, P as createBaselineFrame, Pi as BoxTransformDelta, Pn as DEFAULT_HANDOVER_LINE_OPTIONS, Pr as MineType, Pt as DEFAULT_ANTITANK_WALL_OPTIONS, Q as CONTROL_MEASURE_IDS, Qi as ControlMeasureMetadata, Qn as AttackHelicopterOptions, Qr as FeaturePartProps, Qt as GuardOptions, R as SimpleStyleProps, Ri as ControlMeasureRenderContext, Rn as DEFAULT_HOLDING_LINE_OPTIONS, Rr as JointTacticalActionAreaOptions, Rt as WithdrawUnderPressureOptions, S as containDrawRule, Si as DEFAULT_ENGINEER_WORK_LINE_OPTIONS, Sn as DEFAULT_BLOCK_MISSION_TASK_OPTIONS, Sr as ClassicArrowOptions, St as DisruptOptions, T as computeDefaultMidpointPerpendicularPoint, Ti as LightLineOptions, Tn as ProbableLineOfDeploymentOptions, Tr as SupportingAttackOptions, Tt as DEFAULT_TURNING_MOVEMENT_OPTIONS, U as getControlMeasureOptionHandles, Ui as DEFAULT_PORTRAYAL, Un as ForwardEdgeOfBattleAreaOptions, Ur as DEFAULT_ENGAGEMENT_AREA_OPTIONS, Ut as DEFAULT_SCREEN_OPTIONS, V as resolveStyleHints, Vi as DEFAULT_LINE_CAP, Vn as DEFAULT_BRIDGEHEAD_LINE_OPTIONS, Vr as DEFAULT_MOBILE_DEFENSE_OPTIONS, Vt as DEFAULT_SEIZE_OPTIONS, W as applyBoxTransformOptions, Wi as DEFAULT_STROKE_DASH_CSS_PIXELS, Wn as DEFAULT_PHASE_LINE_OPTIONS, Wr as EngagementAreaOptions, Wt as ScreenOptions, X as cloneControlMeasure, Xi as ControlMeasureGeometry, Xn as DEFAULT_SUPPORT_BY_FIRE_OPTIONS, Xr as FinalProtectiveFireOptions, Xt as PenetrateOptions, Y as ControlMeasure, Yi as ControlMeasureFillCapability, Yn as DEFAULT_ATTACK_BY_FIRE_OPTIONS, Yr as DEFAULT_FINAL_PROTECTIVE_FIRE_OPTIONS, Yt as DEFAULT_PENETRATE_OPTIONS, Z as isKind, Zi as ControlMeasureGeometryType, Zn as SupportByFireOptions, Zr as ControlMeasureRender, Zt as DEFAULT_GUARD_OPTIONS, _ as point12DrawRule, _a as canonicalTextAmplifierKey, _i as DEFAULT_CONTAIN_OPTIONS, _n as BypassOptions, _r as GenericLineOptions, _t as DEFAULT_FIX_MISSION_TASK_OPTIONS, a as axis1DrawRule, aa as parameterPresentationTierRank, ai as PrincipalDirectionOfFireOptions, an as CoverOptions, ar as RadarSearchDoctrineOptions, at as getDefaultOptions, b as disruptDrawRule, ba as AnchorTransformEvent, bi as DEFAULT_GENERIC_C2_LINE_OPTIONS, bn as DEFAULT_BREACH_OPTIONS, br as DEFAULT_BLOCK_ARROW_OPTIONS, bt as FixOptions, c as line26DrawRule, ca as AmplifierPlacement, ci as DEFAULT_DIRECTION_OF_MAIN_ATTACK_OPTIONS, cn as TacticalArrowOptions, cr as DEFAULT_GENERIC_SECTOR_OPTIONS, ct as ObstacleBypassImpossibleOptions, d as turnDrawRule, da as GeneratedLabelKey, di as DirectionOfAttackAviationOptions, dn as CounterattackOptions, dr as GenericCircleOptions, dt as DEFAULT_OBSTACLE_BYPASS_EASY_OPTIONS, ea as PARAMETER_PRESENTATION_TIERS, ei as controlMeasureIdFromFeature, en as DisruptMissionTaskOptions, er as AirborneAttackOptions, et as ControlMeasureId, f as line1DrawRule, fa as LabelPlacementOverride, fi as DEFAULT_RETAIN_OPTIONS, fn as DEFAULT_COUNTERATTACK_OPTIONS, fr as DEFAULT_GENERIC_RECTANGLE_OPTIONS, ft as ObstacleBypassEasyOptions, g as staticPointDrawRule, ga as TextAmplifiers, gi as ContainOptions, gn as DEFAULT_CANALIZE_OPTIONS, gr as DEFAULT_GENERIC_LINE_OPTIONS, gt as TurnOptions, h as dynamicPointDrawRule, ha as TextAmplifierKey, hi as StrongPointOptions, hn as CanalizeOptions, hr as GenericPolygonOptions, ht as DEFAULT_TURN_OPTIONS, i as rectangleDrawRule, ia as TextAmplifierDescriptor, ii as DEFAULT_PRINCIPAL_DIRECTION_OF_FIRE_OPTIONS, in as DelayOptions, ir as RADAR_SEARCH_DOCTRINE_STROKE_COLOR, it as getControlMeasureMetadataByValue, j as BaselineFrameNormal, ji as unproject, jn as LimitOfAdvanceOptions, jr as DEFAULT_AREA_OF_OPERATIONS_OPTIONS, jt as DEFAULT_FORTIFIED_LINE_OPTIONS, k as snapToMidpointPerpendicular, ki as project, kn as LineOfDepartureOptions, kr as computeInitialWidthPoint, kt as DEFAULT_FORTIFIED_AREA_OPTIONS, l as line24DrawRule, la as AmplifierPlacements, li as DirectionOfMainAttackOptions, ln as CounterattackByFireOptions, lr as GenericSectorOptions, lt as DEFAULT_OBSTACLE_BYPASS_DIFFICULT_OPTIONS, m as attackByFireDrawRule, ma as TextAmplifierField, mi as DEFAULT_STRONG_POINT_OPTIONS, mn as DEFAULT_CLEAR_OPTIONS, mr as DEFAULT_GENERIC_POLYGON_OPTIONS, mt as MinefieldOptions, n as DEFAULT_AMBUSH_OPTIONS, na as ParameterPresentationTier, ni as SECONDARY_DIRECTION_OF_FIRE_DASH, nn as DisengageOptions, nr as DEFAULT_RADAR_SEARCH_DOCTRINE_OPTIONS, nt as OptionsByKind, o as supportByFireDrawRule, oa as resolveParameterPresentationTier, oi as DEFAULT_DIRECTION_OF_SUPPORTING_ATTACK_OPTIONS, on as DEFAULT_COVER_OPTIONS, or as DEFAULT_GENERIC_TEXT_OPTIONS, ot as listControlMeasureMetadata, p as ambushDrawRule, pa as TEXT_AMPLIFIER_FIELDS, pi as RetainOptions, pn as ClearOptions, pr as GenericRectangleOptions, pt as DEFAULT_MINEFIELD_OPTIONS, q as RenderOptions, qi as MeasureTextRequest, qn as FLOTOptions, qr as DEFAULT_ENCIRCLEMENT_OPTIONS, qt as DEFAULT_REARWARD_PASSAGE_OF_LINES_OPTIONS, r as sectorDrawRule, ra as ParameterSemanticRole, ri as SecondaryDirectionOfFireOptions, rn as DEFAULT_DELAY_OPTIONS, rr as RADAR_SEARCH_DOCTRINE_FILL_COLOR, rt as getControlMeasureMetadata, s as line27DrawRule, sa as resolveParameterSemanticRole, si as DirectionOfSupportingAttackOptions, sn as DEFAULT_TACTICAL_ARROW_OPTIONS, sr as GenericTextOptions, st as DEFAULT_OBSTACLE_BYPASS_IMPOSSIBLE_OPTIONS, t as AmbushOptions, ta as ParamDescriptor, ti as DEFAULT_SECONDARY_DIRECTION_OF_FIRE_OPTIONS, tn as DEFAULT_DISENGAGE_OPTIONS, tr as DEFAULT_AIRBORNE_ATTACK_OPTIONS, tt as ControlMeasureKind, u as line23DrawRule, ua as CanonicalTextAmplifiers, ui as DEFAULT_DIRECTION_OF_ATTACK_AVIATION_OPTIONS, un as DEFAULT_COUNTERATTACK_BY_FIRE_OPTIONS, ur as DEFAULT_GENERIC_CIRCLE_OPTIONS, ut as ObstacleBypassDifficultOptions, v as penetrateDrawRule, va as normalizeTextAmplifiers, vi as BattlePositionOptions, vn as DEFAULT_BYPASS_OPTIONS, vr as BlockArrowHeadStyle, vt as FixMissionTaskOptions, w as MidpointPerpendicularDrawRuleOptions, wi as DEFAULT_LIGHT_LINE_OPTIONS, wn as PROBABLE_LINE_OF_DEPLOYMENT_DASH, wr as DEFAULT_SUPPORTING_ATTACK_OPTIONS, wt as DEFAULT_BLOCK_OPTIONS, x as blockDrawRule, xa as ControlMeasureDrawRule, xi as GenericC2LineOptions, xn as BlockMissionTaskOptions, xr as ClassicArrowHeadStyle, xt as DEFAULT_DISRUPT_OPTIONS, y as centerRadiusDrawRule, ya as resolveAmplifierPlacement, yi as DEFAULT_BATTLE_POSITION_OPTIONS, yn as BreachOptions, yr as BlockArrowOptions, yt as DEFAULT_FIX_OPTIONS, z as SimpleStyleRender, zi as DEFAULT_LABEL_HEIGHT_CSS_PIXELS, zn as HoldingLineOptions, zr as AssemblyAreaOptions, zt as DEFAULT_WITHDRAW_OPTIONS } from "./index-BzMR6vIE.mjs";
1
+ import { $ as CONTROL_MEASURE_IDS, $i as ControlMeasureGeometry, $n as DEFAULT_SUPPORT_BY_FIRE_OPTIONS, $r as FinalProtectiveFireOptions, $t as GuardOptions, A as snapToMidpointPerpendicular, Ai as Point2D, An as LineOfDepartureOptions, Ar as MainAttackOptions, At as DEFAULT_FORTIFIED_AREA_OPTIONS, B as SimpleStyleRender, Bi as ControlMeasureOptionHandles, Bn as HoldingLineOptions, Br as DEFAULT_JOINT_TACTICAL_ACTION_AREA_OPTIONS, Bt as DEFAULT_WITHDRAW_OPTIONS, C as containDrawRule, Ca as AnchorTransformEvent, Ci as DEFAULT_GENERIC_C2_LINE_OPTIONS, Cn as DEFAULT_BLOCK_MISSION_TASK_OPTIONS, Cr as DEFAULT_BLOCK_ARROW_OPTIONS, Ct as DisruptOptions, D as createMidpointPerpendicularDrawRule, Di as DEFAULT_LIGHT_LINE_OPTIONS, Dn as DEFAULT_LINE_OF_DEPARTURE_CONTACT_OPTIONS, Dr as DEFAULT_SUPPORTING_ATTACK_OPTIONS, Dt as TurningMovementOptions, E as computeDefaultMidpointPerpendicularPoint, Ei as EngineerWorkLineOptions, En as ProbableLineOfDeploymentOptions, Er as DEFAULT_CLASSIC_ARROW_OPTIONS, Et as DEFAULT_TURNING_MOVEMENT_OPTIONS, F as createBaselineFrame, Fi as BoundaryOptions, Fn as DEFAULT_HANDOVER_LINE_OPTIONS, Fr as DEFAULT_PICKUP_ZONE_OPTIONS, Ft as DEFAULT_ANTITANK_WALL_OPTIONS, G as applyBoxTransformOptions, Gi as DEFAULT_LINE_JOIN, Gn as DEFAULT_FORWARD_EDGE_OF_BATTLE_AREA_OPTIONS, Gr as MobileDefenseOptions, Gt as ScreenOptions, H as resolveStyleHints, Hi as DEFAULT_LABEL_HEIGHT_CSS_PIXELS, Hn as InfiltrationLaneOptions, Hr as AssemblyAreaOptions, Ht as DEFAULT_SEIZE_OPTIONS, I as EPSILON, Ii as DEFAULT_BOUNDARY_OPTIONS, In as HandoverLineOptions, Ir as PickupZoneOptions, It as AntitankDitchOptions, J as RenderOptions, Ji as DEFAULT_STROKE_WIDTH_CSS_PIXELS, Jn as PhaseLineOptions, Jr as AreaDefenseOptions, Jt as DEFAULT_REARWARD_PASSAGE_OF_LINES_OPTIONS, K as foldsBoxTransformOptions, Ki as DEFAULT_PORTRAYAL, Kn as ForwardEdgeOfBattleAreaOptions, Kr as DEFAULT_ENGAGEMENT_AREA_OPTIONS, Kt as DEFAULT_RETIRE_OPTIONS, L as getMetersPerPixel, Li as BoxTransformDelta, Ln as DEFAULT_RELEASE_LINE_OPTIONS, Lr as MineType, Lt as DEFAULT_ANTITANK_DITCH_OPTIONS, M as BaselineFrameNormal, Mi as project, Mn as LimitOfAdvanceOptions, Mr as computeInitialWidthPoint, Mt as DEFAULT_FORTIFIED_LINE_OPTIONS, N as BaselineFrameOptions, Ni as sphericalBearing, Nn as BattleHandoverLineOptions, Nr as AreaOfOperationsOptions, Nt as FortifiedLineOptions, O as getMidpointPerpendicularSignedDistance, Oi as LightLineOptions, On as LineOfDepartureContactOptions, Or as SupportingAttackOptions, Ot as DEFAULT_FRONTAL_ATTACK_OPTIONS, P as BaselineFrameOrigin, Pi as unproject, Pn as DEFAULT_BATTLE_HANDOVER_LINE_OPTIONS, Pr as DEFAULT_AREA_OF_OPERATIONS_OPTIONS, Pt as AntitankWallOptions, Q as isKind, Qi as ControlMeasureFillCapability, Qn as DEFAULT_ATTACK_BY_FIRE_OPTIONS, Qr as DEFAULT_FINAL_PROTECTIVE_FIRE_OPTIONS, Qt as DEFAULT_GUARD_OPTIONS, R as roundToFixed, Ri as ControlMeasureOptionHandle, Rn as ReleaseLineOptions, Rr as DEFAULT_LANDING_ZONE_OPTIONS, Rt as DEFAULT_WITHDRAW_UNDER_PRESSURE_OPTIONS, S as blockDrawRule, Sa as resolveAmplifierPlacement, Si as DEFAULT_BATTLE_POSITION_OPTIONS, Sn as BlockMissionTaskOptions, Sr as BlockArrowOptions, St as DEFAULT_DISRUPT_OPTIONS, T as MidpointPerpendicularDrawRuleOptions, Ti as DEFAULT_ENGINEER_WORK_LINE_OPTIONS, Tn as PROBABLE_LINE_OF_DEPLOYMENT_DASH, Tr as ClassicArrowOptions, Tt as DEFAULT_BLOCK_OPTIONS, U as dragControlMeasureOptionHandle, Ui as DEFAULT_LABEL_SIZE_CLAMP_CSS_PIXELS, Un as BridgeheadLineOptions, Ur as DEFAULT_ASSEMBLY_AREA_OPTIONS, Ut as SeizeOptions, V as toSimpleStyle, Vi as ControlMeasureRenderContext, Vn as DEFAULT_INFILTRATION_LANE_OPTIONS, Vr as JointTacticalActionAreaOptions, Vt as WithdrawOptions, W as getControlMeasureOptionHandles, Wi as DEFAULT_LINE_CAP, Wn as DEFAULT_BRIDGEHEAD_LINE_OPTIONS, Wr as DEFAULT_MOBILE_DEFENSE_OPTIONS, Wt as DEFAULT_SCREEN_OPTIONS, X as ControlMeasure, Xi as MeasureTextRequest, Xn as FLOTOptions, Xr as DEFAULT_ENCIRCLEMENT_OPTIONS, Xt as DEFAULT_PENETRATE_OPTIONS, Y as renderControlMeasure, Yi as LogicalTextStyle, Yn as DEFAULT_FLOT_OPTIONS, Yr as DEFAULT_AREA_DEFENSE_OPTIONS, Yt as RearwardPassageOfLinesOptions, Z as cloneControlMeasure, Zi as MeasuredText, Zn as AttackByFireOptions, Zr as EncirclementOptions, Zt as PenetrateOptions, _ as staticPointDrawRule, _a as TextAmplifierField, _i as DEFAULT_STRONG_POINT_OPTIONS, _n as DEFAULT_CANALIZE_OPTIONS, _r as DEFAULT_GENERIC_POLYGON_OPTIONS, _t as TurnOptions, a as axis1DrawRule, aa as ParameterPresentationTier, ai as SECONDARY_DIRECTION_OF_FIRE_DASH, an as DelayOptions, ar as DEFAULT_RADAR_SEARCH_DOCTRINE_OPTIONS, at as getControlMeasureMetadataByValue, b as centerRadiusDrawRule, ba as canonicalTextAmplifierKey, bi as DEFAULT_CONTAIN_OPTIONS, bn as BreachOptions, br as GenericLineOptions, bt as DEFAULT_FIX_OPTIONS, c as line27DrawRule, ca as parameterPresentationTierRank, ci as PrincipalDirectionOfFireOptions, cn as DEFAULT_TACTICAL_ARROW_OPTIONS, cr as RadarSearchDoctrineOptions, ct as DEFAULT_OBSTACLE_BYPASS_IMPOSSIBLE_OPTIONS, d as line23DrawRule, da as AmplifierPlacement, di as DEFAULT_DIRECTION_OF_MAIN_ATTACK_OPTIONS, dn as DEFAULT_COUNTERATTACK_BY_FIRE_OPTIONS, dr as DEFAULT_GENERIC_SECTOR_OPTIONS, dt as ObstacleBypassDifficultOptions, ea as ControlMeasureGeometryType, ei as ControlMeasureRender, en as DEFAULT_DISRUPT_MISSION_TASK_OPTIONS, er as SupportByFireOptions, et as CONTROL_MEASURE_METADATA, f as turnDrawRule, fa as AmplifierPlacements, fi as DirectionOfMainAttackOptions, fn as CounterattackOptions, fr as GenericSectorOptions, ft as DEFAULT_OBSTACLE_BYPASS_EASY_OPTIONS, g as dynamicPointDrawRule, ga as TEXT_AMPLIFIER_FIELDS, gi as RetainOptions, gn as CanalizeOptions, gr as GenericRectangleOptions, gt as DEFAULT_TURN_OPTIONS, h as attackByFireDrawRule, ha as LabelPlacementOverride, hi as DEFAULT_RETAIN_OPTIONS, hn as DEFAULT_CLEAR_OPTIONS, hr as DEFAULT_GENERIC_RECTANGLE_OPTIONS, ht as MinefieldOptions, i as rectangleDrawRule, ia as ParamDescriptor, ii as DEFAULT_SECONDARY_DIRECTION_OF_FIRE_OPTIONS, in as DEFAULT_DELAY_OPTIONS, ir as DEFAULT_AIRBORNE_ATTACK_OPTIONS, it as getControlMeasureMetadata, j as BaselineFrame, ji as haversineDistance, jn as DEFAULT_LIMIT_OF_ADVANCE_OPTIONS, jr as calculateMetrics, jt as FortifiedAreaOptions, k as pointOnMidpointPerpendicularAxis, ki as LabelSizeOptions, kn as DEFAULT_LINE_OF_DEPARTURE_OPTIONS, kr as DEFAULT_MAIN_ATTACK_OPTIONS, kt as FrontalAttackOptions, l as line26DrawRule, la as resolveParameterPresentationTier, li as DEFAULT_DIRECTION_OF_SUPPORTING_ATTACK_OPTIONS, ln as TacticalArrowOptions, lr as DEFAULT_GENERIC_TEXT_OPTIONS, lt as ObstacleBypassImpossibleOptions, m as ambushDrawRule, ma as GeneratedLabelKey, mi as DirectionOfAttackAviationOptions, mn as ClearOptions, mr as GenericCircleOptions, mt as DEFAULT_MINEFIELD_OPTIONS, n as DEFAULT_AMBUSH_OPTIONS, na as ControlMeasurePaintCapability, ni as StyleHints, nn as DEFAULT_DISENGAGE_OPTIONS, nr as DEFAULT_ATTACK_HELICOPTER_OPTIONS, nt as ControlMeasureKind, o as supportByFireDrawRule, oa as ParameterSemanticRole, oi as SecondaryDirectionOfFireOptions, on as CoverOptions, or as RADAR_SEARCH_DOCTRINE_FILL_COLOR, ot as getDefaultOptions, p as line1DrawRule, pa as CanonicalTextAmplifiers, pi as DEFAULT_DIRECTION_OF_ATTACK_AVIATION_OPTIONS, pn as DEFAULT_COUNTERATTACK_OPTIONS, pr as DEFAULT_GENERIC_CIRCLE_OPTIONS, pt as ObstacleBypassEasyOptions, q as freezeOrientationOptions, qi as DEFAULT_STROKE_DASH_CSS_PIXELS, qn as DEFAULT_PHASE_LINE_OPTIONS, qr as EngagementAreaOptions, qt as RetireOptions, r as sectorDrawRule, ra as PARAMETER_PRESENTATION_TIERS, ri as controlMeasureIdFromFeature, rn as DisengageOptions, rr as AirborneAttackOptions, rt as OptionsByKind, s as polyline1DrawRule, sa as TextAmplifierDescriptor, si as DEFAULT_PRINCIPAL_DIRECTION_OF_FIRE_OPTIONS, sn as DEFAULT_COVER_OPTIONS, sr as RADAR_SEARCH_DOCTRINE_STROKE_COLOR, st as listControlMeasureMetadata, t as AmbushOptions, ta as ControlMeasureMetadata, ti as FeaturePartProps, tn as DisruptMissionTaskOptions, tr as AttackHelicopterOptions, tt as ControlMeasureId, u as line24DrawRule, ua as resolveParameterSemanticRole, ui as DirectionOfSupportingAttackOptions, un as CounterattackByFireOptions, ur as GenericTextOptions, ut as DEFAULT_OBSTACLE_BYPASS_DIFFICULT_OPTIONS, v as point12DrawRule, va as TextAmplifierKey, vi as StrongPointOptions, vn as BypassOptions, vr as GenericPolygonOptions, vt as DEFAULT_FIX_MISSION_TASK_OPTIONS, w as area27DrawRule, wa as ControlMeasureDrawRule, wi as GenericC2LineOptions, wn as DEFAULT_PROBABLE_LINE_OF_DEPLOYMENT_OPTIONS, wr as ClassicArrowHeadStyle, wt as BlockOptions, x as disruptDrawRule, xa as normalizeTextAmplifiers, xi as BattlePositionOptions, xn as DEFAULT_BREACH_OPTIONS, xr as BlockArrowHeadStyle, xt as FixOptions, y as penetrateDrawRule, ya as TextAmplifiers, yi as ContainOptions, yn as DEFAULT_BYPASS_OPTIONS, yr as DEFAULT_GENERIC_LINE_OPTIONS, yt as FixMissionTaskOptions, z as SimpleStyleProps, zi as ControlMeasureOptionHandleDragEvent, zn as DEFAULT_HOLDING_LINE_OPTIONS, zr as LandingZoneOptions, zt as WithdrawUnderPressureOptions } from "./index-CXadfQRk.mjs";
2
2
  import { a as PatternId, c as PatternPoint, d as ControlMeasureStyle, f as FillPattern, i as NON_SOLID_FILL_PATTERNS, l as PatternStroke, n as FillPatternCommand, o as PatternPaint, r as FillPatternDefinition, s as PatternPathOperation, t as FILL_PATTERN_DEFINITIONS, u as getFillPatternDefinition } from "./patterns-CcQmmOuJ.mjs";
3
- export { type AirborneAttackOptions, type AmbushOptions, type AmplifierPlacement, type AmplifierPlacements, type AnchorTransformEvent, type AntitankDitchOptions, type AntitankWallOptions, type AreaDefenseOptions, type AreaOfOperationsOptions, type AssemblyAreaOptions, type AttackByFireOptions, type AttackHelicopterOptions, type BaselineFrame, type BaselineFrameNormal, type BaselineFrameOptions, type BaselineFrameOrigin, type BattleHandoverLineOptions, type BattlePositionOptions, type BlockArrowHeadStyle, type BlockArrowOptions, type BlockMissionTaskOptions, type BlockOptions, type BoundaryOptions, type BoxTransformDelta, type BreachOptions, type BridgeheadLineOptions, type BypassOptions, CONTROL_MEASURE_IDS, CONTROL_MEASURE_METADATA, type CanalizeOptions, type CanonicalTextAmplifiers, type ClassicArrowHeadStyle, type ClassicArrowOptions, type ClearOptions, type ContainOptions, type ControlMeasure, type ControlMeasureDrawRule, type ControlMeasureFillCapability, type ControlMeasureGeometry, type ControlMeasureGeometryType, type ControlMeasureId, type ControlMeasureKind, type ControlMeasureMetadata, type ControlMeasureOptionHandle, type ControlMeasureOptionHandleDragEvent, type ControlMeasureOptionHandles, type ControlMeasurePaintCapability, type ControlMeasureRender, type ControlMeasureRenderContext, type ControlMeasureStyle, type CounterattackByFireOptions, type CounterattackOptions, type CoverOptions, DEFAULT_AIRBORNE_ATTACK_OPTIONS, DEFAULT_AMBUSH_OPTIONS, DEFAULT_ANTITANK_DITCH_OPTIONS, DEFAULT_ANTITANK_WALL_OPTIONS, DEFAULT_AREA_DEFENSE_OPTIONS, DEFAULT_AREA_OF_OPERATIONS_OPTIONS, DEFAULT_ASSEMBLY_AREA_OPTIONS, DEFAULT_ATTACK_BY_FIRE_OPTIONS, DEFAULT_ATTACK_HELICOPTER_OPTIONS, DEFAULT_BATTLE_HANDOVER_LINE_OPTIONS, DEFAULT_BATTLE_POSITION_OPTIONS, DEFAULT_BLOCK_ARROW_OPTIONS, DEFAULT_BLOCK_MISSION_TASK_OPTIONS, DEFAULT_BLOCK_OPTIONS, DEFAULT_BOUNDARY_OPTIONS, DEFAULT_BREACH_OPTIONS, DEFAULT_BRIDGEHEAD_LINE_OPTIONS, DEFAULT_BYPASS_OPTIONS, DEFAULT_CANALIZE_OPTIONS, DEFAULT_CLASSIC_ARROW_OPTIONS, DEFAULT_CLEAR_OPTIONS, DEFAULT_CONTAIN_OPTIONS, DEFAULT_COUNTERATTACK_BY_FIRE_OPTIONS, DEFAULT_COUNTERATTACK_OPTIONS, DEFAULT_COVER_OPTIONS, DEFAULT_DELAY_OPTIONS, DEFAULT_DIRECTION_OF_ATTACK_AVIATION_OPTIONS, DEFAULT_DIRECTION_OF_MAIN_ATTACK_OPTIONS, DEFAULT_DIRECTION_OF_SUPPORTING_ATTACK_OPTIONS, DEFAULT_DISENGAGE_OPTIONS, DEFAULT_DISRUPT_MISSION_TASK_OPTIONS, DEFAULT_DISRUPT_OPTIONS, DEFAULT_ENCIRCLEMENT_OPTIONS, DEFAULT_ENGAGEMENT_AREA_OPTIONS, DEFAULT_ENGINEER_WORK_LINE_OPTIONS, DEFAULT_FINAL_PROTECTIVE_FIRE_OPTIONS, DEFAULT_FIX_MISSION_TASK_OPTIONS, DEFAULT_FIX_OPTIONS, DEFAULT_FLOT_OPTIONS, DEFAULT_FORTIFIED_AREA_OPTIONS, DEFAULT_FORTIFIED_LINE_OPTIONS, DEFAULT_FORWARD_EDGE_OF_BATTLE_AREA_OPTIONS, DEFAULT_FRONTAL_ATTACK_OPTIONS, DEFAULT_GENERIC_C2_LINE_OPTIONS, DEFAULT_GENERIC_CIRCLE_OPTIONS, DEFAULT_GENERIC_LINE_OPTIONS, DEFAULT_GENERIC_POLYGON_OPTIONS, DEFAULT_GENERIC_RECTANGLE_OPTIONS, DEFAULT_GENERIC_SECTOR_OPTIONS, DEFAULT_GENERIC_TEXT_OPTIONS, DEFAULT_GUARD_OPTIONS, DEFAULT_HANDOVER_LINE_OPTIONS, DEFAULT_HOLDING_LINE_OPTIONS, DEFAULT_JOINT_TACTICAL_ACTION_AREA_OPTIONS, DEFAULT_LABEL_HEIGHT_CSS_PIXELS, DEFAULT_LABEL_SIZE_CLAMP_CSS_PIXELS, DEFAULT_LANDING_ZONE_OPTIONS, DEFAULT_LIGHT_LINE_OPTIONS, DEFAULT_LIMIT_OF_ADVANCE_OPTIONS, DEFAULT_LINE_CAP, DEFAULT_LINE_JOIN, DEFAULT_LINE_OF_DEPARTURE_CONTACT_OPTIONS, DEFAULT_LINE_OF_DEPARTURE_OPTIONS, DEFAULT_MAIN_ATTACK_OPTIONS, DEFAULT_MINEFIELD_OPTIONS, DEFAULT_MOBILE_DEFENSE_OPTIONS, DEFAULT_OBSTACLE_BYPASS_DIFFICULT_OPTIONS, DEFAULT_OBSTACLE_BYPASS_EASY_OPTIONS, DEFAULT_OBSTACLE_BYPASS_IMPOSSIBLE_OPTIONS, DEFAULT_PENETRATE_OPTIONS, DEFAULT_PHASE_LINE_OPTIONS, DEFAULT_PICKUP_ZONE_OPTIONS, DEFAULT_PORTRAYAL, DEFAULT_PRINCIPAL_DIRECTION_OF_FIRE_OPTIONS, DEFAULT_PROBABLE_LINE_OF_DEPLOYMENT_OPTIONS, DEFAULT_RADAR_SEARCH_DOCTRINE_OPTIONS, DEFAULT_REARWARD_PASSAGE_OF_LINES_OPTIONS, DEFAULT_RELEASE_LINE_OPTIONS, DEFAULT_RETAIN_OPTIONS, DEFAULT_RETIRE_OPTIONS, DEFAULT_SCREEN_OPTIONS, DEFAULT_SECONDARY_DIRECTION_OF_FIRE_OPTIONS, DEFAULT_SEIZE_OPTIONS, DEFAULT_STROKE_DASH_CSS_PIXELS, DEFAULT_STROKE_WIDTH_CSS_PIXELS, DEFAULT_STRONG_POINT_OPTIONS, DEFAULT_SUPPORTING_ATTACK_OPTIONS, DEFAULT_SUPPORT_BY_FIRE_OPTIONS, DEFAULT_TACTICAL_ARROW_OPTIONS, DEFAULT_TURNING_MOVEMENT_OPTIONS, DEFAULT_TURN_OPTIONS, DEFAULT_WITHDRAW_OPTIONS, DEFAULT_WITHDRAW_UNDER_PRESSURE_OPTIONS, type DelayOptions, type DirectionOfAttackAviationOptions, type DirectionOfMainAttackOptions, type DirectionOfSupportingAttackOptions, type DisengageOptions, type DisruptMissionTaskOptions, type DisruptOptions, EPSILON, type EncirclementOptions, type EngagementAreaOptions, type EngineerWorkLineOptions, FILL_PATTERN_DEFINITIONS, type FLOTOptions, type FeaturePartProps, type FillPattern, type FillPatternCommand, type FillPatternDefinition, type FinalProtectiveFireOptions, type FixMissionTaskOptions, type FixOptions, type FortifiedAreaOptions, type FortifiedLineOptions, type ForwardEdgeOfBattleAreaOptions, type FrontalAttackOptions, type GeneratedLabelKey, type GenericC2LineOptions, type GenericCircleOptions, type GenericLineOptions, type GenericPolygonOptions, type GenericRectangleOptions, type GenericSectorOptions, type GenericTextOptions, type GuardOptions, type HandoverLineOptions, type HoldingLineOptions, type JointTacticalActionAreaOptions, type LabelPlacementOverride, type LabelSizeOptions, type LandingZoneOptions, type LightLineOptions, type LimitOfAdvanceOptions, type LineOfDepartureContactOptions, type LineOfDepartureOptions, type LogicalTextStyle, type MainAttackOptions, type MeasureTextRequest, type MeasuredText, type MidpointPerpendicularDrawRuleOptions, type MineType, type MinefieldOptions, type MobileDefenseOptions, NON_SOLID_FILL_PATTERNS, type ObstacleBypassDifficultOptions, type ObstacleBypassEasyOptions, type ObstacleBypassImpossibleOptions, type OptionsByKind, PARAMETER_PRESENTATION_TIERS, PROBABLE_LINE_OF_DEPLOYMENT_DASH, type ParamDescriptor, type ParameterPresentationTier, type ParameterSemanticRole, type PatternId, type PatternPaint, type PatternPathOperation, type PatternPoint, type PatternStroke, type PenetrateOptions, type PhaseLineOptions, type PickupZoneOptions, type Point2D, type PrincipalDirectionOfFireOptions, type ProbableLineOfDeploymentOptions, RADAR_SEARCH_DOCTRINE_FILL_COLOR, RADAR_SEARCH_DOCTRINE_STROKE_COLOR, type RadarSearchDoctrineOptions, type RearwardPassageOfLinesOptions, type ReleaseLineOptions, type RenderOptions, type RetainOptions, type RetireOptions, SECONDARY_DIRECTION_OF_FIRE_DASH, type ScreenOptions, type SecondaryDirectionOfFireOptions, type SeizeOptions, type SimpleStyleProps, type SimpleStyleRender, type StrongPointOptions, type StyleHints, type SupportByFireOptions, type SupportingAttackOptions, TEXT_AMPLIFIER_FIELDS, type TacticalArrowOptions, type TextAmplifierDescriptor, type TextAmplifierField, type TextAmplifierKey, type TextAmplifiers, type TurnOptions, type TurningMovementOptions, type WithdrawOptions, type WithdrawUnderPressureOptions, ambushDrawRule, applyBoxTransformOptions, area27DrawRule, attackByFireDrawRule, axis1DrawRule, blockDrawRule, calculateMetrics, canonicalTextAmplifierKey, centerRadiusDrawRule, cloneControlMeasure, computeDefaultMidpointPerpendicularPoint, computeInitialWidthPoint, containDrawRule, controlMeasureIdFromFeature, createBaselineFrame, createMidpointPerpendicularDrawRule, disruptDrawRule, dragControlMeasureOptionHandle, dynamicPointDrawRule, foldsBoxTransformOptions, freezeOrientationOptions, getControlMeasureMetadata, getControlMeasureMetadataByValue, getControlMeasureOptionHandles, getDefaultOptions, getFillPatternDefinition, getMetersPerPixel, getMidpointPerpendicularSignedDistance, haversineDistance, isKind, line1DrawRule, line23DrawRule, line24DrawRule, line26DrawRule, line27DrawRule, listControlMeasureMetadata, normalizeTextAmplifiers, parameterPresentationTierRank, penetrateDrawRule, point12DrawRule, pointOnMidpointPerpendicularAxis, project, rectangleDrawRule, renderControlMeasure, resolveAmplifierPlacement, resolveParameterPresentationTier, resolveParameterSemanticRole, resolveStyleHints, roundToFixed, sectorDrawRule, snapToMidpointPerpendicular, sphericalBearing, staticPointDrawRule, supportByFireDrawRule, toSimpleStyle, turnDrawRule, unproject };
3
+ export { type AirborneAttackOptions, type AmbushOptions, type AmplifierPlacement, type AmplifierPlacements, type AnchorTransformEvent, type AntitankDitchOptions, type AntitankWallOptions, type AreaDefenseOptions, type AreaOfOperationsOptions, type AssemblyAreaOptions, type AttackByFireOptions, type AttackHelicopterOptions, type BaselineFrame, type BaselineFrameNormal, type BaselineFrameOptions, type BaselineFrameOrigin, type BattleHandoverLineOptions, type BattlePositionOptions, type BlockArrowHeadStyle, type BlockArrowOptions, type BlockMissionTaskOptions, type BlockOptions, type BoundaryOptions, type BoxTransformDelta, type BreachOptions, type BridgeheadLineOptions, type BypassOptions, CONTROL_MEASURE_IDS, CONTROL_MEASURE_METADATA, type CanalizeOptions, type CanonicalTextAmplifiers, type ClassicArrowHeadStyle, type ClassicArrowOptions, type ClearOptions, type ContainOptions, type ControlMeasure, type ControlMeasureDrawRule, type ControlMeasureFillCapability, type ControlMeasureGeometry, type ControlMeasureGeometryType, type ControlMeasureId, type ControlMeasureKind, type ControlMeasureMetadata, type ControlMeasureOptionHandle, type ControlMeasureOptionHandleDragEvent, type ControlMeasureOptionHandles, type ControlMeasurePaintCapability, type ControlMeasureRender, type ControlMeasureRenderContext, type ControlMeasureStyle, type CounterattackByFireOptions, type CounterattackOptions, type CoverOptions, DEFAULT_AIRBORNE_ATTACK_OPTIONS, DEFAULT_AMBUSH_OPTIONS, DEFAULT_ANTITANK_DITCH_OPTIONS, DEFAULT_ANTITANK_WALL_OPTIONS, DEFAULT_AREA_DEFENSE_OPTIONS, DEFAULT_AREA_OF_OPERATIONS_OPTIONS, DEFAULT_ASSEMBLY_AREA_OPTIONS, DEFAULT_ATTACK_BY_FIRE_OPTIONS, DEFAULT_ATTACK_HELICOPTER_OPTIONS, DEFAULT_BATTLE_HANDOVER_LINE_OPTIONS, DEFAULT_BATTLE_POSITION_OPTIONS, DEFAULT_BLOCK_ARROW_OPTIONS, DEFAULT_BLOCK_MISSION_TASK_OPTIONS, DEFAULT_BLOCK_OPTIONS, DEFAULT_BOUNDARY_OPTIONS, DEFAULT_BREACH_OPTIONS, DEFAULT_BRIDGEHEAD_LINE_OPTIONS, DEFAULT_BYPASS_OPTIONS, DEFAULT_CANALIZE_OPTIONS, DEFAULT_CLASSIC_ARROW_OPTIONS, DEFAULT_CLEAR_OPTIONS, DEFAULT_CONTAIN_OPTIONS, DEFAULT_COUNTERATTACK_BY_FIRE_OPTIONS, DEFAULT_COUNTERATTACK_OPTIONS, DEFAULT_COVER_OPTIONS, DEFAULT_DELAY_OPTIONS, DEFAULT_DIRECTION_OF_ATTACK_AVIATION_OPTIONS, DEFAULT_DIRECTION_OF_MAIN_ATTACK_OPTIONS, DEFAULT_DIRECTION_OF_SUPPORTING_ATTACK_OPTIONS, DEFAULT_DISENGAGE_OPTIONS, DEFAULT_DISRUPT_MISSION_TASK_OPTIONS, DEFAULT_DISRUPT_OPTIONS, DEFAULT_ENCIRCLEMENT_OPTIONS, DEFAULT_ENGAGEMENT_AREA_OPTIONS, DEFAULT_ENGINEER_WORK_LINE_OPTIONS, DEFAULT_FINAL_PROTECTIVE_FIRE_OPTIONS, DEFAULT_FIX_MISSION_TASK_OPTIONS, DEFAULT_FIX_OPTIONS, DEFAULT_FLOT_OPTIONS, DEFAULT_FORTIFIED_AREA_OPTIONS, DEFAULT_FORTIFIED_LINE_OPTIONS, DEFAULT_FORWARD_EDGE_OF_BATTLE_AREA_OPTIONS, DEFAULT_FRONTAL_ATTACK_OPTIONS, DEFAULT_GENERIC_C2_LINE_OPTIONS, DEFAULT_GENERIC_CIRCLE_OPTIONS, DEFAULT_GENERIC_LINE_OPTIONS, DEFAULT_GENERIC_POLYGON_OPTIONS, DEFAULT_GENERIC_RECTANGLE_OPTIONS, DEFAULT_GENERIC_SECTOR_OPTIONS, DEFAULT_GENERIC_TEXT_OPTIONS, DEFAULT_GUARD_OPTIONS, DEFAULT_HANDOVER_LINE_OPTIONS, DEFAULT_HOLDING_LINE_OPTIONS, DEFAULT_INFILTRATION_LANE_OPTIONS, DEFAULT_JOINT_TACTICAL_ACTION_AREA_OPTIONS, DEFAULT_LABEL_HEIGHT_CSS_PIXELS, DEFAULT_LABEL_SIZE_CLAMP_CSS_PIXELS, DEFAULT_LANDING_ZONE_OPTIONS, DEFAULT_LIGHT_LINE_OPTIONS, DEFAULT_LIMIT_OF_ADVANCE_OPTIONS, DEFAULT_LINE_CAP, DEFAULT_LINE_JOIN, DEFAULT_LINE_OF_DEPARTURE_CONTACT_OPTIONS, DEFAULT_LINE_OF_DEPARTURE_OPTIONS, DEFAULT_MAIN_ATTACK_OPTIONS, DEFAULT_MINEFIELD_OPTIONS, DEFAULT_MOBILE_DEFENSE_OPTIONS, DEFAULT_OBSTACLE_BYPASS_DIFFICULT_OPTIONS, DEFAULT_OBSTACLE_BYPASS_EASY_OPTIONS, DEFAULT_OBSTACLE_BYPASS_IMPOSSIBLE_OPTIONS, DEFAULT_PENETRATE_OPTIONS, DEFAULT_PHASE_LINE_OPTIONS, DEFAULT_PICKUP_ZONE_OPTIONS, DEFAULT_PORTRAYAL, DEFAULT_PRINCIPAL_DIRECTION_OF_FIRE_OPTIONS, DEFAULT_PROBABLE_LINE_OF_DEPLOYMENT_OPTIONS, DEFAULT_RADAR_SEARCH_DOCTRINE_OPTIONS, DEFAULT_REARWARD_PASSAGE_OF_LINES_OPTIONS, DEFAULT_RELEASE_LINE_OPTIONS, DEFAULT_RETAIN_OPTIONS, DEFAULT_RETIRE_OPTIONS, DEFAULT_SCREEN_OPTIONS, DEFAULT_SECONDARY_DIRECTION_OF_FIRE_OPTIONS, DEFAULT_SEIZE_OPTIONS, DEFAULT_STROKE_DASH_CSS_PIXELS, DEFAULT_STROKE_WIDTH_CSS_PIXELS, DEFAULT_STRONG_POINT_OPTIONS, DEFAULT_SUPPORTING_ATTACK_OPTIONS, DEFAULT_SUPPORT_BY_FIRE_OPTIONS, DEFAULT_TACTICAL_ARROW_OPTIONS, DEFAULT_TURNING_MOVEMENT_OPTIONS, DEFAULT_TURN_OPTIONS, DEFAULT_WITHDRAW_OPTIONS, DEFAULT_WITHDRAW_UNDER_PRESSURE_OPTIONS, type DelayOptions, type DirectionOfAttackAviationOptions, type DirectionOfMainAttackOptions, type DirectionOfSupportingAttackOptions, type DisengageOptions, type DisruptMissionTaskOptions, type DisruptOptions, EPSILON, type EncirclementOptions, type EngagementAreaOptions, type EngineerWorkLineOptions, FILL_PATTERN_DEFINITIONS, type FLOTOptions, type FeaturePartProps, type FillPattern, type FillPatternCommand, type FillPatternDefinition, type FinalProtectiveFireOptions, type FixMissionTaskOptions, type FixOptions, type FortifiedAreaOptions, type FortifiedLineOptions, type ForwardEdgeOfBattleAreaOptions, type FrontalAttackOptions, type GeneratedLabelKey, type GenericC2LineOptions, type GenericCircleOptions, type GenericLineOptions, type GenericPolygonOptions, type GenericRectangleOptions, type GenericSectorOptions, type GenericTextOptions, type GuardOptions, type HandoverLineOptions, type HoldingLineOptions, type InfiltrationLaneOptions, type JointTacticalActionAreaOptions, type LabelPlacementOverride, type LabelSizeOptions, type LandingZoneOptions, type LightLineOptions, type LimitOfAdvanceOptions, type LineOfDepartureContactOptions, type LineOfDepartureOptions, type LogicalTextStyle, type MainAttackOptions, type MeasureTextRequest, type MeasuredText, type MidpointPerpendicularDrawRuleOptions, type MineType, type MinefieldOptions, type MobileDefenseOptions, NON_SOLID_FILL_PATTERNS, type ObstacleBypassDifficultOptions, type ObstacleBypassEasyOptions, type ObstacleBypassImpossibleOptions, type OptionsByKind, PARAMETER_PRESENTATION_TIERS, PROBABLE_LINE_OF_DEPLOYMENT_DASH, type ParamDescriptor, type ParameterPresentationTier, type ParameterSemanticRole, type PatternId, type PatternPaint, type PatternPathOperation, type PatternPoint, type PatternStroke, type PenetrateOptions, type PhaseLineOptions, type PickupZoneOptions, type Point2D, type PrincipalDirectionOfFireOptions, type ProbableLineOfDeploymentOptions, RADAR_SEARCH_DOCTRINE_FILL_COLOR, RADAR_SEARCH_DOCTRINE_STROKE_COLOR, type RadarSearchDoctrineOptions, type RearwardPassageOfLinesOptions, type ReleaseLineOptions, type RenderOptions, type RetainOptions, type RetireOptions, SECONDARY_DIRECTION_OF_FIRE_DASH, type ScreenOptions, type SecondaryDirectionOfFireOptions, type SeizeOptions, type SimpleStyleProps, type SimpleStyleRender, type StrongPointOptions, type StyleHints, type SupportByFireOptions, type SupportingAttackOptions, TEXT_AMPLIFIER_FIELDS, type TacticalArrowOptions, type TextAmplifierDescriptor, type TextAmplifierField, type TextAmplifierKey, type TextAmplifiers, type TurnOptions, type TurningMovementOptions, type WithdrawOptions, type WithdrawUnderPressureOptions, ambushDrawRule, applyBoxTransformOptions, area27DrawRule, attackByFireDrawRule, axis1DrawRule, blockDrawRule, calculateMetrics, canonicalTextAmplifierKey, centerRadiusDrawRule, cloneControlMeasure, computeDefaultMidpointPerpendicularPoint, computeInitialWidthPoint, containDrawRule, controlMeasureIdFromFeature, createBaselineFrame, createMidpointPerpendicularDrawRule, disruptDrawRule, dragControlMeasureOptionHandle, dynamicPointDrawRule, foldsBoxTransformOptions, freezeOrientationOptions, getControlMeasureMetadata, getControlMeasureMetadataByValue, getControlMeasureOptionHandles, getDefaultOptions, getFillPatternDefinition, getMetersPerPixel, getMidpointPerpendicularSignedDistance, haversineDistance, isKind, line1DrawRule, line23DrawRule, line24DrawRule, line26DrawRule, line27DrawRule, listControlMeasureMetadata, normalizeTextAmplifiers, parameterPresentationTierRank, penetrateDrawRule, point12DrawRule, pointOnMidpointPerpendicularAxis, polyline1DrawRule, project, rectangleDrawRule, renderControlMeasure, resolveAmplifierPlacement, resolveParameterPresentationTier, resolveParameterSemanticRole, resolveStyleHints, roundToFixed, sectorDrawRule, snapToMidpointPerpendicular, sphericalBearing, staticPointDrawRule, supportByFireDrawRule, toSimpleStyle, turnDrawRule, unproject };
package/dist/index.mjs CHANGED
@@ -1,4 +1,4 @@
1
- import { $ as DEFAULT_DISRUPT_OPTIONS, $t as DEFAULT_STROKE_DASH_CSS_PIXELS, A as DEFAULT_RETIRE_OPTIONS, An as createBaselineFrame, At as DEFAULT_CONTAIN_OPTIONS, B as DEFAULT_LIMIT_OF_ADVANCE_OPTIONS, Bt as DEFAULT_AREA_DEFENSE_OPTIONS, C as DEFAULT_MAIN_ATTACK_OPTIONS, Cn as containDrawRule, Ct as DEFAULT_BLOCK_MISSION_TASK_OPTIONS, D as DEFAULT_WITHDRAW_OPTIONS, Dn as getMidpointPerpendicularSignedDistance, Dt as DEFAULT_BOUNDARY_OPTIONS, E as DEFAULT_WITHDRAW_UNDER_PRESSURE_OPTIONS, En as createMidpointPerpendicularDrawRule, Et as DEFAULT_LIGHT_LINE_OPTIONS, F as DEFAULT_FORTIFIED_LINE_OPTIONS, Fn as sphericalBearing, Ft as DEFAULT_ANTITANK_DITCH_OPTIONS, G as DEFAULT_HOLDING_LINE_OPTIONS, Gt as canonicalTextAmplifierKey, H as DEFAULT_HANDOVER_LINE_OPTIONS, Ht as DEFAULT_DIRECTION_OF_MAIN_ATTACK_OPTIONS, I as DEFAULT_PROBABLE_LINE_OF_DEPLOYMENT_OPTIONS, In as unproject, It as DEFAULT_ASSEMBLY_AREA_OPTIONS, J as DEFAULT_FLOT_OPTIONS, Jt as DEFAULT_LABEL_HEIGHT_CSS_PIXELS, K as DEFAULT_BRIDGEHEAD_LINE_OPTIONS, Kt as normalizeTextAmplifiers, L as PROBABLE_LINE_OF_DEPLOYMENT_DASH, Ln as EPSILON, Lt as DEFAULT_AREA_OF_OPERATIONS_OPTIONS, M as DEFAULT_PENETRATE_OPTIONS, Mn as computeInitialWidthPoint, Mt as DEFAULT_ATTACK_HELICOPTER_OPTIONS, N as DEFAULT_FRONTAL_ATTACK_OPTIONS, Nn as haversineDistance, Nt as DEFAULT_ATTACK_BY_FIRE_OPTIONS, O as DEFAULT_SEIZE_OPTIONS, On as pointOnMidpointPerpendicularAxis, Ot as DEFAULT_BLOCK_ARROW_OPTIONS, P as DEFAULT_FORTIFIED_AREA_OPTIONS, Pn as project, Pt as DEFAULT_ANTITANK_WALL_OPTIONS, Q as DEFAULT_ENCIRCLEMENT_OPTIONS, Qt as DEFAULT_PORTRAYAL, R as DEFAULT_LINE_OF_DEPARTURE_CONTACT_OPTIONS, Rn as getMetersPerPixel, Rt as DEFAULT_MOBILE_DEFENSE_OPTIONS, S as DEFAULT_MINEFIELD_OPTIONS, Sn as centerRadiusDrawRule, St as DEFAULT_BREACH_OPTIONS, T as DEFAULT_JOINT_TACTICAL_ACTION_AREA_OPTIONS, Tn as computeDefaultMidpointPerpendicularPoint, Tt as DEFAULT_ENGINEER_WORK_LINE_OPTIONS, U as DEFAULT_FORWARD_EDGE_OF_BATTLE_AREA_OPTIONS, Ut as DEFAULT_DIRECTION_OF_ATTACK_AVIATION_OPTIONS, V as DEFAULT_BATTLE_HANDOVER_LINE_OPTIONS, Vt as DEFAULT_DIRECTION_OF_SUPPORTING_ATTACK_OPTIONS, W as DEFAULT_RELEASE_LINE_OPTIONS, Wt as TEXT_AMPLIFIER_FIELDS, X as DEFAULT_FIX_OPTIONS, Xt as DEFAULT_LINE_CAP, Y as DEFAULT_FIX_MISSION_TASK_OPTIONS, Yt as DEFAULT_LABEL_SIZE_CLAMP_CSS_PIXELS, Z as DEFAULT_FINAL_PROTECTIVE_FIRE_OPTIONS, Zt as DEFAULT_LINE_JOIN, _ as DEFAULT_PRINCIPAL_DIRECTION_OF_FIRE_OPTIONS, _n as staticPointDrawRule, _t as DEFAULT_GENERIC_LINE_OPTIONS, a as DEFINITIONS, an as axis1DrawRule, at as DEFAULT_TACTICAL_ARROW_OPTIONS, b as DEFAULT_OBSTACLE_BYPASS_EASY_OPTIONS, bn as disruptDrawRule, bt as DEFAULT_CANALIZE_OPTIONS, c as getDefaultOptions, cn as line26DrawRule, ct as DEFAULT_SUPPORTING_ATTACK_OPTIONS, d as DEFAULT_TURN_OPTIONS, dn as turnDrawRule, dt as RADAR_SEARCH_DOCTRINE_FILL_COLOR, en as DEFAULT_STROKE_WIDTH_CSS_PIXELS, et as DEFAULT_GUARD_OPTIONS, f as DEFAULT_SUPPORT_BY_FIRE_OPTIONS, fn as line1DrawRule, ft as RADAR_SEARCH_DOCTRINE_STROKE_COLOR, g as SECONDARY_DIRECTION_OF_FIRE_DASH, gn as sectorDrawRule, gt as DEFAULT_GENERIC_POLYGON_OPTIONS, h as DEFAULT_SECONDARY_DIRECTION_OF_FIRE_OPTIONS, hn as dynamicPointDrawRule, ht as DEFAULT_GENERIC_RECTANGLE_OPTIONS, i as CONTROL_MEASURE_METADATA, in as rectangleDrawRule, it as DEFAULT_COVER_OPTIONS, j as DEFAULT_REARWARD_PASSAGE_OF_LINES_OPTIONS, jn as calculateMetrics, jt as DEFAULT_BATTLE_POSITION_OPTIONS, k as DEFAULT_SCREEN_OPTIONS, kn as snapToMidpointPerpendicular, kt as DEFAULT_BLOCK_OPTIONS, l as listControlMeasureMetadata, ln as line24DrawRule, lt as DEFAULT_CLEAR_OPTIONS, m as DEFAULT_STRONG_POINT_OPTIONS, mn as attackByFireDrawRule, mt as DEFAULT_GENERIC_SECTOR_OPTIONS, n as resolveStyleHints, nn as DEFAULT_AMBUSH_OPTIONS, nt as DEFAULT_DISENGAGE_OPTIONS, o as getControlMeasureMetadata, on as supportByFireDrawRule, ot as DEFAULT_COUNTERATTACK_BY_FIRE_OPTIONS, p as DEFAULT_RETAIN_OPTIONS, pn as ambushDrawRule, pt as DEFAULT_GENERIC_TEXT_OPTIONS, q as DEFAULT_PHASE_LINE_OPTIONS, qt as resolveAmplifierPlacement, r as CONTROL_MEASURE_IDS, rn as DEFAULT_AIRBORNE_ATTACK_OPTIONS, rt as DEFAULT_DELAY_OPTIONS, s as getControlMeasureMetadataByValue, sn as line27DrawRule, st as DEFAULT_COUNTERATTACK_OPTIONS, t as renderControlMeasure, tt as DEFAULT_DISRUPT_MISSION_TASK_OPTIONS, u as DEFAULT_TURNING_MOVEMENT_OPTIONS, un as line23DrawRule, ut as DEFAULT_RADAR_SEARCH_DOCTRINE_OPTIONS, v as DEFAULT_PICKUP_ZONE_OPTIONS, vn as point12DrawRule, vt as DEFAULT_GENERIC_CIRCLE_OPTIONS, w as DEFAULT_LANDING_ZONE_OPTIONS, wn as area27DrawRule, wt as DEFAULT_GENERIC_C2_LINE_OPTIONS, x as DEFAULT_OBSTACLE_BYPASS_DIFFICULT_OPTIONS, xn as blockDrawRule, xt as DEFAULT_BYPASS_OPTIONS, y as DEFAULT_OBSTACLE_BYPASS_IMPOSSIBLE_OPTIONS, yn as penetrateDrawRule, yt as DEFAULT_CLASSIC_ARROW_OPTIONS, z as DEFAULT_LINE_OF_DEPARTURE_OPTIONS, zn as roundToFixed, zt as DEFAULT_ENGAGEMENT_AREA_OPTIONS } from "./renderControlMeasure-YkkjLyTx.mjs";
1
+ import { $ as DEFAULT_ENCIRCLEMENT_OPTIONS, $t as DEFAULT_PORTRAYAL, A as DEFAULT_RETIRE_OPTIONS, An as pointOnMidpointPerpendicularAxis, At as DEFAULT_BLOCK_OPTIONS, B as DEFAULT_LIMIT_OF_ADVANCE_OPTIONS, Bn as getMetersPerPixel, Bt as DEFAULT_ENGAGEMENT_AREA_OPTIONS, C as DEFAULT_MAIN_ATTACK_OPTIONS, Cn as blockDrawRule, Ct as DEFAULT_BREACH_OPTIONS, D as DEFAULT_WITHDRAW_OPTIONS, Dn as computeDefaultMidpointPerpendicularPoint, Dt as DEFAULT_LIGHT_LINE_OPTIONS, E as DEFAULT_WITHDRAW_UNDER_PRESSURE_OPTIONS, En as area27DrawRule, Et as DEFAULT_ENGINEER_WORK_LINE_OPTIONS, F as DEFAULT_FORTIFIED_LINE_OPTIONS, Fn as haversineDistance, Ft as DEFAULT_ANTITANK_WALL_OPTIONS, G as DEFAULT_HOLDING_LINE_OPTIONS, Gt as TEXT_AMPLIFIER_FIELDS, H as DEFAULT_HANDOVER_LINE_OPTIONS, Ht as DEFAULT_DIRECTION_OF_SUPPORTING_ATTACK_OPTIONS, I as DEFAULT_PROBABLE_LINE_OF_DEPLOYMENT_OPTIONS, In as project, It as DEFAULT_ANTITANK_DITCH_OPTIONS, J as DEFAULT_PHASE_LINE_OPTIONS, Jt as resolveAmplifierPlacement, K as DEFAULT_INFILTRATION_LANE_OPTIONS, Kt as canonicalTextAmplifierKey, L as PROBABLE_LINE_OF_DEPLOYMENT_DASH, Ln as sphericalBearing, Lt as DEFAULT_ASSEMBLY_AREA_OPTIONS, M as DEFAULT_PENETRATE_OPTIONS, Mn as createBaselineFrame, Mt as DEFAULT_BATTLE_POSITION_OPTIONS, N as DEFAULT_FRONTAL_ATTACK_OPTIONS, Nn as calculateMetrics, Nt as DEFAULT_ATTACK_HELICOPTER_OPTIONS, O as DEFAULT_SEIZE_OPTIONS, On as createMidpointPerpendicularDrawRule, Ot as DEFAULT_BOUNDARY_OPTIONS, P as DEFAULT_FORTIFIED_AREA_OPTIONS, Pn as computeInitialWidthPoint, Pt as DEFAULT_ATTACK_BY_FIRE_OPTIONS, Q as DEFAULT_FINAL_PROTECTIVE_FIRE_OPTIONS, Qt as DEFAULT_LINE_JOIN, R as DEFAULT_LINE_OF_DEPARTURE_CONTACT_OPTIONS, Rn as unproject, Rt as DEFAULT_AREA_OF_OPERATIONS_OPTIONS, S as DEFAULT_MINEFIELD_OPTIONS, Sn as disruptDrawRule, St as DEFAULT_BYPASS_OPTIONS, T as DEFAULT_JOINT_TACTICAL_ACTION_AREA_OPTIONS, Tn as containDrawRule, Tt as DEFAULT_GENERIC_C2_LINE_OPTIONS, U as DEFAULT_FORWARD_EDGE_OF_BATTLE_AREA_OPTIONS, Ut as DEFAULT_DIRECTION_OF_MAIN_ATTACK_OPTIONS, V as DEFAULT_BATTLE_HANDOVER_LINE_OPTIONS, Vn as roundToFixed, Vt as DEFAULT_AREA_DEFENSE_OPTIONS, W as DEFAULT_RELEASE_LINE_OPTIONS, Wt as DEFAULT_DIRECTION_OF_ATTACK_AVIATION_OPTIONS, X as DEFAULT_FIX_MISSION_TASK_OPTIONS, Xt as DEFAULT_LABEL_SIZE_CLAMP_CSS_PIXELS, Y as DEFAULT_FLOT_OPTIONS, Yt as DEFAULT_LABEL_HEIGHT_CSS_PIXELS, Z as DEFAULT_FIX_OPTIONS, Zt as DEFAULT_LINE_CAP, _ as DEFAULT_PRINCIPAL_DIRECTION_OF_FIRE_OPTIONS, _n as dynamicPointDrawRule, _t as DEFAULT_GENERIC_POLYGON_OPTIONS, a as DEFINITIONS, an as rectangleDrawRule, at as DEFAULT_COVER_OPTIONS, b as DEFAULT_OBSTACLE_BYPASS_EASY_OPTIONS, bn as point12DrawRule, bt as DEFAULT_CLASSIC_ARROW_OPTIONS, c as getDefaultOptions, cn as polyline1DrawRule, ct as DEFAULT_COUNTERATTACK_OPTIONS, d as DEFAULT_TURN_OPTIONS, dn as line24DrawRule, dt as DEFAULT_RADAR_SEARCH_DOCTRINE_OPTIONS, en as DEFAULT_STROKE_DASH_CSS_PIXELS, et as DEFAULT_DISRUPT_OPTIONS, f as DEFAULT_SUPPORT_BY_FIRE_OPTIONS, fn as line23DrawRule, ft as RADAR_SEARCH_DOCTRINE_FILL_COLOR, g as SECONDARY_DIRECTION_OF_FIRE_DASH, gn as attackByFireDrawRule, gt as DEFAULT_GENERIC_RECTANGLE_OPTIONS, h as DEFAULT_SECONDARY_DIRECTION_OF_FIRE_OPTIONS, hn as ambushDrawRule, ht as DEFAULT_GENERIC_SECTOR_OPTIONS, i as CONTROL_MEASURE_METADATA, in as DEFAULT_AIRBORNE_ATTACK_OPTIONS, it as DEFAULT_DELAY_OPTIONS, j as DEFAULT_REARWARD_PASSAGE_OF_LINES_OPTIONS, jn as snapToMidpointPerpendicular, jt as DEFAULT_CONTAIN_OPTIONS, k as DEFAULT_SCREEN_OPTIONS, kn as getMidpointPerpendicularSignedDistance, kt as DEFAULT_BLOCK_ARROW_OPTIONS, l as listControlMeasureMetadata, ln as line27DrawRule, lt as DEFAULT_SUPPORTING_ATTACK_OPTIONS, m as DEFAULT_STRONG_POINT_OPTIONS, mn as line1DrawRule, mt as DEFAULT_GENERIC_TEXT_OPTIONS, n as resolveStyleHints, nt as DEFAULT_DISRUPT_MISSION_TASK_OPTIONS, o as getControlMeasureMetadata, on as axis1DrawRule, ot as DEFAULT_TACTICAL_ARROW_OPTIONS, p as DEFAULT_RETAIN_OPTIONS, pn as turnDrawRule, pt as RADAR_SEARCH_DOCTRINE_STROKE_COLOR, q as DEFAULT_BRIDGEHEAD_LINE_OPTIONS, qt as normalizeTextAmplifiers, r as CONTROL_MEASURE_IDS, rn as DEFAULT_AMBUSH_OPTIONS, rt as DEFAULT_DISENGAGE_OPTIONS, s as getControlMeasureMetadataByValue, sn as supportByFireDrawRule, st as DEFAULT_COUNTERATTACK_BY_FIRE_OPTIONS, t as renderControlMeasure, tn as DEFAULT_STROKE_WIDTH_CSS_PIXELS, tt as DEFAULT_GUARD_OPTIONS, u as DEFAULT_TURNING_MOVEMENT_OPTIONS, un as line26DrawRule, ut as DEFAULT_CLEAR_OPTIONS, v as DEFAULT_PICKUP_ZONE_OPTIONS, vn as sectorDrawRule, vt as DEFAULT_GENERIC_LINE_OPTIONS, w as DEFAULT_LANDING_ZONE_OPTIONS, wn as centerRadiusDrawRule, wt as DEFAULT_BLOCK_MISSION_TASK_OPTIONS, x as DEFAULT_OBSTACLE_BYPASS_DIFFICULT_OPTIONS, xn as penetrateDrawRule, xt as DEFAULT_CANALIZE_OPTIONS, y as DEFAULT_OBSTACLE_BYPASS_IMPOSSIBLE_OPTIONS, yn as staticPointDrawRule, yt as DEFAULT_GENERIC_CIRCLE_OPTIONS, z as DEFAULT_LINE_OF_DEPARTURE_OPTIONS, zn as EPSILON, zt as DEFAULT_MOBILE_DEFENSE_OPTIONS } from "./renderControlMeasure-BgPfnjvc.mjs";
2
2
  import { FILL_PATTERN_DEFINITIONS, NON_SOLID_FILL_PATTERNS, getFillPatternDefinition } from "./patterns.mjs";
3
3
  //#region src/metadata.ts
4
4
  const PARAMETER_PRESENTATION_TIERS = [
@@ -179,4 +179,4 @@ function toHexChannel(value) {
179
179
  return Math.max(0, Math.min(255, Math.round(value))).toString(16).padStart(2, "0");
180
180
  }
181
181
  //#endregion
182
- export { CONTROL_MEASURE_IDS, CONTROL_MEASURE_METADATA, DEFAULT_AIRBORNE_ATTACK_OPTIONS, DEFAULT_AMBUSH_OPTIONS, DEFAULT_ANTITANK_DITCH_OPTIONS, DEFAULT_ANTITANK_WALL_OPTIONS, DEFAULT_AREA_DEFENSE_OPTIONS, DEFAULT_AREA_OF_OPERATIONS_OPTIONS, DEFAULT_ASSEMBLY_AREA_OPTIONS, DEFAULT_ATTACK_BY_FIRE_OPTIONS, DEFAULT_ATTACK_HELICOPTER_OPTIONS, DEFAULT_BATTLE_HANDOVER_LINE_OPTIONS, DEFAULT_BATTLE_POSITION_OPTIONS, DEFAULT_BLOCK_ARROW_OPTIONS, DEFAULT_BLOCK_MISSION_TASK_OPTIONS, DEFAULT_BLOCK_OPTIONS, DEFAULT_BOUNDARY_OPTIONS, DEFAULT_BREACH_OPTIONS, DEFAULT_BRIDGEHEAD_LINE_OPTIONS, DEFAULT_BYPASS_OPTIONS, DEFAULT_CANALIZE_OPTIONS, DEFAULT_CLASSIC_ARROW_OPTIONS, DEFAULT_CLEAR_OPTIONS, DEFAULT_CONTAIN_OPTIONS, DEFAULT_COUNTERATTACK_BY_FIRE_OPTIONS, DEFAULT_COUNTERATTACK_OPTIONS, DEFAULT_COVER_OPTIONS, DEFAULT_DELAY_OPTIONS, DEFAULT_DIRECTION_OF_ATTACK_AVIATION_OPTIONS, DEFAULT_DIRECTION_OF_MAIN_ATTACK_OPTIONS, DEFAULT_DIRECTION_OF_SUPPORTING_ATTACK_OPTIONS, DEFAULT_DISENGAGE_OPTIONS, DEFAULT_DISRUPT_MISSION_TASK_OPTIONS, DEFAULT_DISRUPT_OPTIONS, DEFAULT_ENCIRCLEMENT_OPTIONS, DEFAULT_ENGAGEMENT_AREA_OPTIONS, DEFAULT_ENGINEER_WORK_LINE_OPTIONS, DEFAULT_FINAL_PROTECTIVE_FIRE_OPTIONS, DEFAULT_FIX_MISSION_TASK_OPTIONS, DEFAULT_FIX_OPTIONS, DEFAULT_FLOT_OPTIONS, DEFAULT_FORTIFIED_AREA_OPTIONS, DEFAULT_FORTIFIED_LINE_OPTIONS, DEFAULT_FORWARD_EDGE_OF_BATTLE_AREA_OPTIONS, DEFAULT_FRONTAL_ATTACK_OPTIONS, DEFAULT_GENERIC_C2_LINE_OPTIONS, DEFAULT_GENERIC_CIRCLE_OPTIONS, DEFAULT_GENERIC_LINE_OPTIONS, DEFAULT_GENERIC_POLYGON_OPTIONS, DEFAULT_GENERIC_RECTANGLE_OPTIONS, DEFAULT_GENERIC_SECTOR_OPTIONS, DEFAULT_GENERIC_TEXT_OPTIONS, DEFAULT_GUARD_OPTIONS, DEFAULT_HANDOVER_LINE_OPTIONS, DEFAULT_HOLDING_LINE_OPTIONS, DEFAULT_JOINT_TACTICAL_ACTION_AREA_OPTIONS, DEFAULT_LABEL_HEIGHT_CSS_PIXELS, DEFAULT_LABEL_SIZE_CLAMP_CSS_PIXELS, DEFAULT_LANDING_ZONE_OPTIONS, DEFAULT_LIGHT_LINE_OPTIONS, DEFAULT_LIMIT_OF_ADVANCE_OPTIONS, DEFAULT_LINE_CAP, DEFAULT_LINE_JOIN, DEFAULT_LINE_OF_DEPARTURE_CONTACT_OPTIONS, DEFAULT_LINE_OF_DEPARTURE_OPTIONS, DEFAULT_MAIN_ATTACK_OPTIONS, DEFAULT_MINEFIELD_OPTIONS, DEFAULT_MOBILE_DEFENSE_OPTIONS, DEFAULT_OBSTACLE_BYPASS_DIFFICULT_OPTIONS, DEFAULT_OBSTACLE_BYPASS_EASY_OPTIONS, DEFAULT_OBSTACLE_BYPASS_IMPOSSIBLE_OPTIONS, DEFAULT_PENETRATE_OPTIONS, DEFAULT_PHASE_LINE_OPTIONS, DEFAULT_PICKUP_ZONE_OPTIONS, DEFAULT_PORTRAYAL, DEFAULT_PRINCIPAL_DIRECTION_OF_FIRE_OPTIONS, DEFAULT_PROBABLE_LINE_OF_DEPLOYMENT_OPTIONS, DEFAULT_RADAR_SEARCH_DOCTRINE_OPTIONS, DEFAULT_REARWARD_PASSAGE_OF_LINES_OPTIONS, DEFAULT_RELEASE_LINE_OPTIONS, DEFAULT_RETAIN_OPTIONS, DEFAULT_RETIRE_OPTIONS, DEFAULT_SCREEN_OPTIONS, DEFAULT_SECONDARY_DIRECTION_OF_FIRE_OPTIONS, DEFAULT_SEIZE_OPTIONS, DEFAULT_STROKE_DASH_CSS_PIXELS, DEFAULT_STROKE_WIDTH_CSS_PIXELS, DEFAULT_STRONG_POINT_OPTIONS, DEFAULT_SUPPORTING_ATTACK_OPTIONS, DEFAULT_SUPPORT_BY_FIRE_OPTIONS, DEFAULT_TACTICAL_ARROW_OPTIONS, DEFAULT_TURNING_MOVEMENT_OPTIONS, DEFAULT_TURN_OPTIONS, DEFAULT_WITHDRAW_OPTIONS, DEFAULT_WITHDRAW_UNDER_PRESSURE_OPTIONS, EPSILON, FILL_PATTERN_DEFINITIONS, NON_SOLID_FILL_PATTERNS, PARAMETER_PRESENTATION_TIERS, PROBABLE_LINE_OF_DEPLOYMENT_DASH, RADAR_SEARCH_DOCTRINE_FILL_COLOR, RADAR_SEARCH_DOCTRINE_STROKE_COLOR, SECONDARY_DIRECTION_OF_FIRE_DASH, TEXT_AMPLIFIER_FIELDS, ambushDrawRule, applyBoxTransformOptions, area27DrawRule, attackByFireDrawRule, axis1DrawRule, blockDrawRule, calculateMetrics, canonicalTextAmplifierKey, centerRadiusDrawRule, cloneControlMeasure, computeDefaultMidpointPerpendicularPoint, computeInitialWidthPoint, containDrawRule, controlMeasureIdFromFeature, createBaselineFrame, createMidpointPerpendicularDrawRule, disruptDrawRule, dragControlMeasureOptionHandle, dynamicPointDrawRule, foldsBoxTransformOptions, freezeOrientationOptions, getControlMeasureMetadata, getControlMeasureMetadataByValue, getControlMeasureOptionHandles, getDefaultOptions, getFillPatternDefinition, getMetersPerPixel, getMidpointPerpendicularSignedDistance, haversineDistance, isKind, line1DrawRule, line23DrawRule, line24DrawRule, line26DrawRule, line27DrawRule, listControlMeasureMetadata, normalizeTextAmplifiers, parameterPresentationTierRank, penetrateDrawRule, point12DrawRule, pointOnMidpointPerpendicularAxis, project, rectangleDrawRule, renderControlMeasure, resolveAmplifierPlacement, resolveParameterPresentationTier, resolveParameterSemanticRole, resolveStyleHints, roundToFixed, sectorDrawRule, snapToMidpointPerpendicular, sphericalBearing, staticPointDrawRule, supportByFireDrawRule, toSimpleStyle, turnDrawRule, unproject };
182
+ export { CONTROL_MEASURE_IDS, CONTROL_MEASURE_METADATA, DEFAULT_AIRBORNE_ATTACK_OPTIONS, DEFAULT_AMBUSH_OPTIONS, DEFAULT_ANTITANK_DITCH_OPTIONS, DEFAULT_ANTITANK_WALL_OPTIONS, DEFAULT_AREA_DEFENSE_OPTIONS, DEFAULT_AREA_OF_OPERATIONS_OPTIONS, DEFAULT_ASSEMBLY_AREA_OPTIONS, DEFAULT_ATTACK_BY_FIRE_OPTIONS, DEFAULT_ATTACK_HELICOPTER_OPTIONS, DEFAULT_BATTLE_HANDOVER_LINE_OPTIONS, DEFAULT_BATTLE_POSITION_OPTIONS, DEFAULT_BLOCK_ARROW_OPTIONS, DEFAULT_BLOCK_MISSION_TASK_OPTIONS, DEFAULT_BLOCK_OPTIONS, DEFAULT_BOUNDARY_OPTIONS, DEFAULT_BREACH_OPTIONS, DEFAULT_BRIDGEHEAD_LINE_OPTIONS, DEFAULT_BYPASS_OPTIONS, DEFAULT_CANALIZE_OPTIONS, DEFAULT_CLASSIC_ARROW_OPTIONS, DEFAULT_CLEAR_OPTIONS, DEFAULT_CONTAIN_OPTIONS, DEFAULT_COUNTERATTACK_BY_FIRE_OPTIONS, DEFAULT_COUNTERATTACK_OPTIONS, DEFAULT_COVER_OPTIONS, DEFAULT_DELAY_OPTIONS, DEFAULT_DIRECTION_OF_ATTACK_AVIATION_OPTIONS, DEFAULT_DIRECTION_OF_MAIN_ATTACK_OPTIONS, DEFAULT_DIRECTION_OF_SUPPORTING_ATTACK_OPTIONS, DEFAULT_DISENGAGE_OPTIONS, DEFAULT_DISRUPT_MISSION_TASK_OPTIONS, DEFAULT_DISRUPT_OPTIONS, DEFAULT_ENCIRCLEMENT_OPTIONS, DEFAULT_ENGAGEMENT_AREA_OPTIONS, DEFAULT_ENGINEER_WORK_LINE_OPTIONS, DEFAULT_FINAL_PROTECTIVE_FIRE_OPTIONS, DEFAULT_FIX_MISSION_TASK_OPTIONS, DEFAULT_FIX_OPTIONS, DEFAULT_FLOT_OPTIONS, DEFAULT_FORTIFIED_AREA_OPTIONS, DEFAULT_FORTIFIED_LINE_OPTIONS, DEFAULT_FORWARD_EDGE_OF_BATTLE_AREA_OPTIONS, DEFAULT_FRONTAL_ATTACK_OPTIONS, DEFAULT_GENERIC_C2_LINE_OPTIONS, DEFAULT_GENERIC_CIRCLE_OPTIONS, DEFAULT_GENERIC_LINE_OPTIONS, DEFAULT_GENERIC_POLYGON_OPTIONS, DEFAULT_GENERIC_RECTANGLE_OPTIONS, DEFAULT_GENERIC_SECTOR_OPTIONS, DEFAULT_GENERIC_TEXT_OPTIONS, DEFAULT_GUARD_OPTIONS, DEFAULT_HANDOVER_LINE_OPTIONS, DEFAULT_HOLDING_LINE_OPTIONS, DEFAULT_INFILTRATION_LANE_OPTIONS, DEFAULT_JOINT_TACTICAL_ACTION_AREA_OPTIONS, DEFAULT_LABEL_HEIGHT_CSS_PIXELS, DEFAULT_LABEL_SIZE_CLAMP_CSS_PIXELS, DEFAULT_LANDING_ZONE_OPTIONS, DEFAULT_LIGHT_LINE_OPTIONS, DEFAULT_LIMIT_OF_ADVANCE_OPTIONS, DEFAULT_LINE_CAP, DEFAULT_LINE_JOIN, DEFAULT_LINE_OF_DEPARTURE_CONTACT_OPTIONS, DEFAULT_LINE_OF_DEPARTURE_OPTIONS, DEFAULT_MAIN_ATTACK_OPTIONS, DEFAULT_MINEFIELD_OPTIONS, DEFAULT_MOBILE_DEFENSE_OPTIONS, DEFAULT_OBSTACLE_BYPASS_DIFFICULT_OPTIONS, DEFAULT_OBSTACLE_BYPASS_EASY_OPTIONS, DEFAULT_OBSTACLE_BYPASS_IMPOSSIBLE_OPTIONS, DEFAULT_PENETRATE_OPTIONS, DEFAULT_PHASE_LINE_OPTIONS, DEFAULT_PICKUP_ZONE_OPTIONS, DEFAULT_PORTRAYAL, DEFAULT_PRINCIPAL_DIRECTION_OF_FIRE_OPTIONS, DEFAULT_PROBABLE_LINE_OF_DEPLOYMENT_OPTIONS, DEFAULT_RADAR_SEARCH_DOCTRINE_OPTIONS, DEFAULT_REARWARD_PASSAGE_OF_LINES_OPTIONS, DEFAULT_RELEASE_LINE_OPTIONS, DEFAULT_RETAIN_OPTIONS, DEFAULT_RETIRE_OPTIONS, DEFAULT_SCREEN_OPTIONS, DEFAULT_SECONDARY_DIRECTION_OF_FIRE_OPTIONS, DEFAULT_SEIZE_OPTIONS, DEFAULT_STROKE_DASH_CSS_PIXELS, DEFAULT_STROKE_WIDTH_CSS_PIXELS, DEFAULT_STRONG_POINT_OPTIONS, DEFAULT_SUPPORTING_ATTACK_OPTIONS, DEFAULT_SUPPORT_BY_FIRE_OPTIONS, DEFAULT_TACTICAL_ARROW_OPTIONS, DEFAULT_TURNING_MOVEMENT_OPTIONS, DEFAULT_TURN_OPTIONS, DEFAULT_WITHDRAW_OPTIONS, DEFAULT_WITHDRAW_UNDER_PRESSURE_OPTIONS, EPSILON, FILL_PATTERN_DEFINITIONS, NON_SOLID_FILL_PATTERNS, PARAMETER_PRESENTATION_TIERS, PROBABLE_LINE_OF_DEPLOYMENT_DASH, RADAR_SEARCH_DOCTRINE_FILL_COLOR, RADAR_SEARCH_DOCTRINE_STROKE_COLOR, SECONDARY_DIRECTION_OF_FIRE_DASH, TEXT_AMPLIFIER_FIELDS, ambushDrawRule, applyBoxTransformOptions, area27DrawRule, attackByFireDrawRule, axis1DrawRule, blockDrawRule, calculateMetrics, canonicalTextAmplifierKey, centerRadiusDrawRule, cloneControlMeasure, computeDefaultMidpointPerpendicularPoint, computeInitialWidthPoint, containDrawRule, controlMeasureIdFromFeature, createBaselineFrame, createMidpointPerpendicularDrawRule, disruptDrawRule, dragControlMeasureOptionHandle, dynamicPointDrawRule, foldsBoxTransformOptions, freezeOrientationOptions, getControlMeasureMetadata, getControlMeasureMetadataByValue, getControlMeasureOptionHandles, getDefaultOptions, getFillPatternDefinition, getMetersPerPixel, getMidpointPerpendicularSignedDistance, haversineDistance, isKind, line1DrawRule, line23DrawRule, line24DrawRule, line26DrawRule, line27DrawRule, listControlMeasureMetadata, normalizeTextAmplifiers, parameterPresentationTierRank, penetrateDrawRule, point12DrawRule, pointOnMidpointPerpendicularAxis, polyline1DrawRule, project, rectangleDrawRule, renderControlMeasure, resolveAmplifierPlacement, resolveParameterPresentationTier, resolveParameterSemanticRole, resolveStyleHints, roundToFixed, sectorDrawRule, snapToMidpointPerpendicular, sphericalBearing, staticPointDrawRule, supportByFireDrawRule, toSimpleStyle, turnDrawRule, unproject };
@@ -1,4 +1,4 @@
1
- import { et as ControlMeasureId, ga as TextAmplifiers } from "../index-BzMR6vIE.mjs";
1
+ import { tt as ControlMeasureId, ya as TextAmplifiers } from "../index-CXadfQRk.mjs";
2
2
  import { f as FillPattern } from "../patterns-CcQmmOuJ.mjs";
3
3
  import { FeatureCollection, Geometry } from "geojson";
4
4
 
@@ -1,4 +1,4 @@
1
- import { a as DEFINITIONS, t as renderControlMeasure } from "../renderControlMeasure-YkkjLyTx.mjs";
1
+ import { a as DEFINITIONS, t as renderControlMeasure } from "../renderControlMeasure-BgPfnjvc.mjs";
2
2
  import { FILL_PATTERN_DEFINITIONS, NON_SOLID_FILL_PATTERNS } from "../patterns.mjs";
3
3
  //#region src/preview/index.ts
4
4
  /** Side length (SVG units) of the repeating non-mine tile in {@link PREVIEW_FILL_PATTERNS}. */
@@ -1349,6 +1349,23 @@ const line32DrawRule = {
1349
1349
  }
1350
1350
  };
1351
1351
  //#endregion
1352
+ //#region src/draw-rules/polyline1.ts
1353
+ /**
1354
+ * Polyline1 anchors for the Infiltration Lane.
1355
+ *
1356
+ * PT1/PT2 are the two user clicks and define the invisible lane centerline. PT3 is an
1357
+ * automatically derived, editable width handle on the perpendicular through
1358
+ * its midpoint. It rests on one parallel boundary, so its signed distance
1359
+ * from PT1/PT2 is the lane half-width.
1360
+ */
1361
+ const polyline1DrawRule = createMidpointPerpendicularDrawRule({
1362
+ id: "polyline1:infiltration-lane",
1363
+ defaultDistanceRatio: .18,
1364
+ minimumUserPoints: 2,
1365
+ minimumPreviewPoints: 2,
1366
+ normal: "left"
1367
+ });
1368
+ //#endregion
1352
1369
  //#region src/draw-rules/area8.ts
1353
1370
  function derive$3(points) {
1354
1371
  if (points.length < 2) return clonePositions(points);
@@ -2687,18 +2704,8 @@ function labelRotationAlong(dir) {
2687
2704
  const rendered = -Math.atan2(dir[1], dir[0]);
2688
2705
  return normalizeRadians(Math.PI - keepTextLeftToRight(rendered));
2689
2706
  }
2690
- const BOUNDARY_UNIT_LABEL_FIELDS = {
2691
- unit1: {
2692
- designator: "T",
2693
- country: "AS"
2694
- },
2695
- unit2: {
2696
- designator: "T1",
2697
- country: "AS1"
2698
- }
2699
- };
2700
2707
  /** Resolves two echelon-unit rows from a caller-selected set of amplifiers. */
2701
- function unitLabelsFromAmplifiers(amplifiers, fields = BOUNDARY_UNIT_LABEL_FIELDS) {
2708
+ function unitLabelsFromAmplifiers(amplifiers, fields) {
2702
2709
  return [{
2703
2710
  side: 1,
2704
2711
  designator: amplifiers[fields.unit1.designator] ?? "",
@@ -2733,6 +2740,12 @@ function pushUnitLabels(out, frame, units) {
2733
2740
  }
2734
2741
  }
2735
2742
  /**
2743
+ * Default clearance between an echelon glyph and its unit labels, as a ratio of
2744
+ * the glyph height — the value Boundary declares as its `labelPadding` default,
2745
+ * shared so other echelon-carrying lines land on the same spacing.
2746
+ */
2747
+ const ECHELON_UNIT_LABEL_PADDING = .4;
2748
+ /**
2736
2749
  * Emits Boundary-style unit labels around echelon groups. Along-line groups
2737
2750
  * straddle the line; standard-orientation groups on north/south segments form
2738
2751
  * one row crossing it, anchored outward from the glyph.
@@ -3546,14 +3559,14 @@ const DEFAULT_ARROWHEAD_WIDTH_RATIO$1 = 1.15;
3546
3559
  const DEFAULT_BOW_TIE_LENGTH_RATIO = .1;
3547
3560
  const DEFAULT_BOW_TIE_WIDTH_RATIO = .5;
3548
3561
  const DEFAULT_BOW_TIE_POSITION = 1 / 3;
3549
- const DEFAULT_LABEL_POSITION = 2 / 3;
3562
+ const DEFAULT_LABEL_POSITION$1 = 2 / 3;
3550
3563
  const DEFAULT_DIRECTION_OF_ATTACK_AVIATION_OPTIONS = {
3551
3564
  arrowheadLengthRatio: DEFAULT_ARROWHEAD_LENGTH_RATIO$1,
3552
3565
  arrowheadWidthRatio: DEFAULT_ARROWHEAD_WIDTH_RATIO$1,
3553
3566
  bowTieLengthRatio: DEFAULT_BOW_TIE_LENGTH_RATIO,
3554
3567
  bowTieWidthRatio: DEFAULT_BOW_TIE_WIDTH_RATIO,
3555
3568
  bowTiePosition: DEFAULT_BOW_TIE_POSITION,
3556
- labelPosition: DEFAULT_LABEL_POSITION,
3569
+ labelPosition: DEFAULT_LABEL_POSITION$1,
3557
3570
  labelPadding: 0,
3558
3571
  smooth: false,
3559
3572
  smoothResolution: 12
@@ -3700,7 +3713,7 @@ function createDirectionOfAttackAviation(coordinates, options = {}, textAmplifie
3700
3713
  };
3701
3714
  const bowTieLength = Math.min(totalLength, totalLength * nonNegative(resolved.bowTieLengthRatio, DEFAULT_BOW_TIE_LENGTH_RATIO));
3702
3715
  const bowTiePosition = clampLinePosition(resolved.bowTiePosition, DEFAULT_BOW_TIE_POSITION);
3703
- const labelPosition = clampLinePosition(resolved.labelPosition, DEFAULT_LABEL_POSITION);
3716
+ const labelPosition = clampLinePosition(resolved.labelPosition, DEFAULT_LABEL_POSITION$1);
3704
3717
  const bowTieCenterDistance = totalLength * bowTiePosition;
3705
3718
  const bowTieStartDistance = Math.max(0, bowTieCenterDistance - bowTieLength / 2);
3706
3719
  const bowTieEndDistance = Math.min(totalLength, bowTieCenterDistance + bowTieLength / 2);
@@ -4074,7 +4087,7 @@ const BAND_SAMPLE_FRACTIONS = [
4074
4087
  * rerender); striding holds it to a fixed multiple of one ring scan. Rings
4075
4088
  * with no more bands than this are still probed exhaustively. */
4076
4089
  const MAX_SAMPLED_BANDS = 48;
4077
- const DEFAULT_SMOOTH_RESOLUTION$9 = 16;
4090
+ const DEFAULT_SMOOTH_RESOLUTION$8 = 16;
4078
4091
  /**
4079
4092
  * Composes an area's main label text from a `prefix` (e.g. `"AO"`) and a
4080
4093
  * `designation` (e.g. `"GREEN"`), mirroring Phase Line's "PL" precedent: a
@@ -4474,8 +4487,8 @@ function boundaryFeature(verts, gaps) {
4474
4487
  * common (no `N`) case is unaffected.
4475
4488
  */
4476
4489
  function labeledAreaFeatures(positions, options, texts, amplifierPlacements, context) {
4477
- const { smooth = false, smoothResolution = DEFAULT_SMOOTH_RESOLUTION$9, ...labelOptions } = options;
4478
- const verts = buildClosedRing(positions, smooth, smoothResolution, DEFAULT_SMOOTH_RESOLUTION$9);
4490
+ const { smooth = false, smoothResolution = DEFAULT_SMOOTH_RESOLUTION$8, ...labelOptions } = options;
4491
+ const verts = buildClosedRing(positions, smooth, smoothResolution, DEFAULT_SMOOTH_RESOLUTION$8);
4479
4492
  const labelFeatures = [];
4480
4493
  const features = [boundaryFeature(verts, pushAreaLabels(labelFeatures, verts, texts, labelOptions, amplifierPlacements, void 0, context))];
4481
4494
  features.push(...labelFeatures);
@@ -5192,7 +5205,7 @@ const TARGET_AREA_OF_INTEREST = defineControlMeasure({
5192
5205
  });
5193
5206
  //#endregion
5194
5207
  //#region src/generators/cm12-command-control-areas/airfield-zone.ts
5195
- const DEFAULT_SMOOTH_RESOLUTION$8 = 16;
5208
+ const DEFAULT_SMOOTH_RESOLUTION$7 = 16;
5196
5209
  /** Long runway line's tilt off the horizontal, in radians (+15°). */
5197
5210
  const LONG_LINE_ANGLE = 15 * Math.PI / 180;
5198
5211
  /** Short runway line's tilt off the horizontal, in radians (+50°). */
@@ -5207,7 +5220,7 @@ const H_LABEL_OFFSET_RATIO = .75;
5207
5220
  */
5208
5221
  const DEFAULT_AIRFIELD_ZONE_OPTIONS = {
5209
5222
  smooth: true,
5210
- smoothResolution: DEFAULT_SMOOTH_RESOLUTION$8,
5223
+ smoothResolution: DEFAULT_SMOOTH_RESOLUTION$7,
5211
5224
  glyphSizeRatio: .55
5212
5225
  };
5213
5226
  const AIRFIELD_ZONE_METADATA = {
@@ -5265,7 +5278,7 @@ const AIRFIELD_ZONE_METADATA = {
5265
5278
  */
5266
5279
  function createAirfieldZone(positions, options = {}, textAmplifiers = {}, context = {}) {
5267
5280
  const { smooth = DEFAULT_AIRFIELD_ZONE_OPTIONS.smooth, smoothResolution = DEFAULT_AIRFIELD_ZONE_OPTIONS.smoothResolution, glyphSizeRatio = DEFAULT_AIRFIELD_ZONE_OPTIONS.glyphSizeRatio, ...labelOptions } = options;
5268
- const verts = buildClosedRing(positions, smooth, smoothResolution, DEFAULT_SMOOTH_RESOLUTION$8);
5281
+ const verts = buildClosedRing(positions, smooth, smoothResolution, DEFAULT_SMOOTH_RESOLUTION$7);
5269
5282
  const enyLabels = [];
5270
5283
  const features = [boundaryFeature(verts, textAmplifiers.N ? pushAreaLabels(enyLabels, verts, { hostile: textAmplifiers.N }, labelOptions, context.amplifierPlacements, void 0, context) : [])];
5271
5284
  let minX = Infinity;
@@ -5323,7 +5336,7 @@ const AIRFIELD_ZONE = defineControlMeasure({
5323
5336
  });
5324
5337
  //#endregion
5325
5338
  //#region src/generators/cm12-command-control-areas/echelon-labeled-area.ts
5326
- const DEFAULT_SMOOTH_RESOLUTION$7 = 16;
5339
+ const DEFAULT_SMOOTH_RESOLUTION$6 = 16;
5327
5340
  /** Default options shared by Base Camp and Guerrilla Base — echelon off, boundary rounded. */
5328
5341
  const DEFAULT_ECHELON_LABELED_AREA_OPTIONS = {
5329
5342
  echelon: "none",
@@ -5332,7 +5345,7 @@ const DEFAULT_ECHELON_LABELED_AREA_OPTIONS = {
5332
5345
  echelonPadding: .3,
5333
5346
  echelonPosition: 0,
5334
5347
  smooth: true,
5335
- smoothResolution: DEFAULT_SMOOTH_RESOLUTION$7
5348
+ smoothResolution: DEFAULT_SMOOTH_RESOLUTION$6
5336
5349
  };
5337
5350
  /**
5338
5351
  * Builds the shared Base Camp / Guerrilla Base geometry: a closed area
@@ -5346,7 +5359,7 @@ const DEFAULT_ECHELON_LABELED_AREA_OPTIONS = {
5346
5359
  function echelonLabeledAreaFeatures(positions, options, texts, amplifierPlacements, context) {
5347
5360
  const { echelon = DEFAULT_ECHELON_LABELED_AREA_OPTIONS.echelon, echelonSize = DEFAULT_ECHELON_LABELED_AREA_OPTIONS.echelonSize, echelonSizePixels, echelonPadding = DEFAULT_ECHELON_LABELED_AREA_OPTIONS.echelonPadding, echelonPosition = DEFAULT_ECHELON_LABELED_AREA_OPTIONS.echelonPosition, echelonAnchor, metersPerPixel, smooth = DEFAULT_ECHELON_LABELED_AREA_OPTIONS.smooth, smoothResolution = DEFAULT_ECHELON_LABELED_AREA_OPTIONS.smoothResolution, ...labelOptions } = options;
5348
5361
  const h = resolveEchelonHeight(echelonSize, echelonSizePixels, metersPerPixel);
5349
- const verts = buildClosedRing(positions, smooth, smoothResolution, DEFAULT_SMOOTH_RESOLUTION$7);
5362
+ const verts = buildClosedRing(positions, smooth, smoothResolution, DEFAULT_SMOOTH_RESOLUTION$6);
5350
5363
  const { strokes, fills, gaps: echelonGaps } = placeEchelon(buildAreaPerimeter(verts), h, echelon, echelonPadding, echelonPosition, echelonAnchor);
5351
5364
  const labelFeatures = [];
5352
5365
  const enyGaps = pushAreaLabels(labelFeatures, verts, texts, labelOptions, amplifierPlacements, void 0, context);
@@ -6307,7 +6320,7 @@ const ATTACK_HELICOPTER = defineControlMeasure({
6307
6320
  });
6308
6321
  //#endregion
6309
6322
  //#region src/generators/cm15-maneuver-areas/battlePosition.ts
6310
- const DEFAULT_SMOOTH_RESOLUTION$6 = 16;
6323
+ const DEFAULT_SMOOTH_RESOLUTION$5 = 16;
6311
6324
  /** Default options for the Battle Position control measure. */
6312
6325
  const DEFAULT_BATTLE_POSITION_OPTIONS = {
6313
6326
  echelon: "battalion",
@@ -6316,7 +6329,7 @@ const DEFAULT_BATTLE_POSITION_OPTIONS = {
6316
6329
  echelonPadding: .3,
6317
6330
  echelonPosition: 0,
6318
6331
  smooth: false,
6319
- smoothResolution: DEFAULT_SMOOTH_RESOLUTION$6
6332
+ smoothResolution: DEFAULT_SMOOTH_RESOLUTION$5
6320
6333
  };
6321
6334
  const BATTLE_POSITION_METADATA = {
6322
6335
  id: "battle-position",
@@ -6358,7 +6371,7 @@ const BATTLE_POSITION_METADATA = {
6358
6371
  function battlePositionAreaFeatures(positions, options, textAmplifiers, context, variant = {}) {
6359
6372
  const { echelon = DEFAULT_BATTLE_POSITION_OPTIONS.echelon, echelonSize = DEFAULT_BATTLE_POSITION_OPTIONS.echelonSize, echelonSizePixels, echelonPadding = DEFAULT_BATTLE_POSITION_OPTIONS.echelonPadding, echelonPosition = DEFAULT_BATTLE_POSITION_OPTIONS.echelonPosition, echelonAnchor, metersPerPixel, smooth = DEFAULT_BATTLE_POSITION_OPTIONS.smooth, smoothResolution = DEFAULT_BATTLE_POSITION_OPTIONS.smoothResolution } = options;
6360
6373
  const h = resolveEchelonHeight(echelonSize, echelonSizePixels, metersPerPixel);
6361
- const verts = buildClosedRing(positions, smooth, smoothResolution, DEFAULT_SMOOTH_RESOLUTION$6);
6374
+ const verts = buildClosedRing(positions, smooth, smoothResolution, DEFAULT_SMOOTH_RESOLUTION$5);
6362
6375
  const { strokes, fills, gaps } = placeEchelon(buildAreaPerimeter(verts), h, echelon, echelonPadding, echelonPosition, echelonAnchor);
6363
6376
  const labelFeatures = [];
6364
6377
  const enyGaps = pushAreaLabels(labelFeatures, verts, composeAreaLabelTexts(textAmplifiers, variant.namePrefix), options, context.amplifierPlacements, void 0, context);
@@ -6932,7 +6945,7 @@ const BRIDGE_OR_GAP = defineControlMeasure({
6932
6945
  });
6933
6946
  //#endregion
6934
6947
  //#region src/generators/cm99-generic-arrows/blockArrow.ts
6935
- const DEFAULT_SMOOTH_RESOLUTION$5 = 12;
6948
+ const DEFAULT_SMOOTH_RESOLUTION$4 = 12;
6936
6949
  const MIN_SMOOTH_RESOLUTION$1 = 2;
6937
6950
  const MAX_SMOOTH_RESOLUTION$1 = 64;
6938
6951
  const DEFAULT_SHAFT_WIDTH_RATIO = .06;
@@ -6945,7 +6958,7 @@ const DEFAULT_BLOCK_ARROW_OPTIONS = {
6945
6958
  arrowheadWidthRatio: .18,
6946
6959
  arrowheadLengthRatio: .22,
6947
6960
  smooth: false,
6948
- smoothResolution: DEFAULT_SMOOTH_RESOLUTION$5,
6961
+ smoothResolution: DEFAULT_SMOOTH_RESOLUTION$4,
6949
6962
  filled: true
6950
6963
  };
6951
6964
  const BLOCK_ARROW_METADATA = {
@@ -7235,7 +7248,7 @@ function axis1Geometry(coordinates) {
7235
7248
  };
7236
7249
  }
7237
7250
  function normalizeSmoothResolution$1(value) {
7238
- if (!Number.isFinite(value)) return DEFAULT_SMOOTH_RESOLUTION$5;
7251
+ if (!Number.isFinite(value)) return DEFAULT_SMOOTH_RESOLUTION$4;
7239
7252
  return Math.min(MAX_SMOOTH_RESOLUTION$1, Math.max(MIN_SMOOTH_RESOLUTION$1, Math.round(value)));
7240
7253
  }
7241
7254
  //#endregion
@@ -7319,9 +7332,25 @@ function echelonLineParams(subject) {
7319
7332
  max: 2,
7320
7333
  step: .05,
7321
7334
  visibleWhen: (opts) => resolveLabelRepetitions(opts.labelRepetitions) > 1
7335
+ },
7336
+ {
7337
+ key: "labelOrientation",
7338
+ presentationTier: "advanced",
7339
+ label: "Label orientation",
7340
+ description: `Orient the label group along the ${subject}, or per MIL-STD-2525E Figure L-10: on mostly north–south segments the group rotates perpendicular to the ${subject} as a single row crossing it.`,
7341
+ type: "enum",
7342
+ options: [{
7343
+ value: "along",
7344
+ label: `Along the ${subject}`
7345
+ }, {
7346
+ value: "standard",
7347
+ label: "Standard (MIL-STD-2525E)"
7348
+ }]
7322
7349
  }
7323
7350
  ];
7324
7351
  }
7352
+ /** Along-line position used when a measure leaves `labelPosition` unset. */
7353
+ const DEFAULT_LABEL_POSITION = .5;
7325
7354
  /** A placement with nothing in it — the result for a degenerate line. */
7326
7355
  const EMPTY_LINE_ECHELON_PLACEMENT = {
7327
7356
  strokes: [],
@@ -7335,11 +7364,11 @@ const EMPTY_LINE_ECHELON_PLACEMENT = {
7335
7364
  * placed (so a caller can label them) but no glyph or gap is emitted.
7336
7365
  */
7337
7366
  function placeEchelonsAlongLine(verts, spec, h, options) {
7338
- const { labelRepetitions, labelPosition, defaultLabelPosition, labelSpacing, labelOrientation, echelonPadding } = options;
7367
+ const { labelRepetitions, labelPosition, labelSpacing, labelOrientation, echelonPadding } = options;
7339
7368
  const { segments, totalLength } = polylineSegments(verts);
7340
7369
  if (totalLength < 1e-6) return EMPTY_LINE_ECHELON_PLACEMENT;
7341
7370
  const reps = resolveLabelRepetitions(labelRepetitions);
7342
- const singleGroupPosition = clampLinePosition(labelPosition, defaultLabelPosition);
7371
+ const singleGroupPosition = clampLinePosition(labelPosition, DEFAULT_LABEL_POSITION);
7343
7372
  const strokes = [];
7344
7373
  const fills = [];
7345
7374
  const gaps = [];
@@ -7381,7 +7410,20 @@ function placeEchelonsAlongLine(verts, spec, h, options) {
7381
7410
  }
7382
7411
  //#endregion
7383
7412
  //#region src/generators/cm11-command-control-lines/boundary.ts
7384
- const DEFAULT_SMOOTH_RESOLUTION$4 = 12;
7413
+ /**
7414
+ * Boundary's Field T/AS mapping: unit 1 (`T`/`AS`) on the left-of-travel side,
7415
+ * unit 2 (`T1`/`AS1`) on the right.
7416
+ */
7417
+ const BOUNDARY_UNIT_LABEL_FIELDS = {
7418
+ unit1: {
7419
+ designator: "T",
7420
+ country: "AS"
7421
+ },
7422
+ unit2: {
7423
+ designator: "T1",
7424
+ country: "AS1"
7425
+ }
7426
+ };
7385
7427
  /** Default options for the Boundary control measure. */
7386
7428
  const DEFAULT_BOUNDARY_OPTIONS = {
7387
7429
  echelon: "battalion",
@@ -7391,10 +7433,10 @@ const DEFAULT_BOUNDARY_OPTIONS = {
7391
7433
  labelRepetitions: 1,
7392
7434
  labelSpacing: 1,
7393
7435
  labelPosition: .5,
7394
- labelPadding: .4,
7436
+ labelPadding: ECHELON_UNIT_LABEL_PADDING,
7395
7437
  labelOrientation: "along",
7396
7438
  smooth: false,
7397
- smoothResolution: DEFAULT_SMOOTH_RESOLUTION$4
7439
+ smoothResolution: 12
7398
7440
  };
7399
7441
  const BOUNDARY_METADATA = {
7400
7442
  id: "boundary",
@@ -7444,20 +7486,6 @@ const BOUNDARY_METADATA = {
7444
7486
  min: 0,
7445
7487
  max: 2,
7446
7488
  step: .05
7447
- },
7448
- {
7449
- key: "labelOrientation",
7450
- presentationTier: "advanced",
7451
- label: "Label orientation",
7452
- description: "Unit labels along the line, or per MIL-STD-2525E Figure L-10: on mostly north–south segments the label group rotates perpendicular to the line as a single row crossing it.",
7453
- type: "enum",
7454
- options: [{
7455
- value: "along",
7456
- label: "Along the line"
7457
- }, {
7458
- value: "standard",
7459
- label: "Standard (MIL-STD-2525E)"
7460
- }]
7461
7489
  }
7462
7490
  ],
7463
7491
  textAmplifiers: [
@@ -7503,18 +7531,19 @@ function createBoundary(positions, options = {}, textAmplifiers = {}, context =
7503
7531
  const h = resolveEchelonHeight(echelonSize, echelonSizePixels, metersPerPixel);
7504
7532
  const spec = resolveEchelon(echelon);
7505
7533
  const { properties: labelSize, screenAnchored } = echelonUnitLabelSize(h, echelonSizePixels, metersPerPixel);
7506
- const rawVerts = positions.map((p) => project(p[0], p[1]));
7507
- const verts = smooth ? catmullRom(rawVerts, normalizeSmoothResolution$2(smoothResolution, DEFAULT_SMOOTH_RESOLUTION$4)) : rawVerts;
7534
+ const verts = smoothLineVerts(positions.map((p) => project(p[0], p[1])), {
7535
+ smooth,
7536
+ smoothResolution
7537
+ }, 12);
7508
7538
  const labelFeatures = [];
7509
7539
  const { strokes: glyphStrokes, fills: glyphFills, gaps, groups } = placeEchelonsAlongLine(verts, spec, h, {
7510
7540
  labelRepetitions,
7511
7541
  labelPosition,
7512
- defaultLabelPosition: DEFAULT_BOUNDARY_OPTIONS.labelPosition,
7513
7542
  labelSpacing,
7514
7543
  labelOrientation,
7515
7544
  echelonPadding
7516
7545
  });
7517
- pushEchelonUnitLabels(labelFeatures, groups, unitLabelsFromAmplifiers(textAmplifiers), h, labelPadding, labelSize);
7546
+ pushEchelonUnitLabels(labelFeatures, groups, unitLabelsFromAmplifiers(textAmplifiers, BOUNDARY_UNIT_LABEL_FIELDS), h, labelPadding, labelSize);
7518
7547
  const hostileLabelOptions = screenAnchored ? {
7519
7548
  labelSizePixels: echelonSizePixels,
7520
7549
  metersPerPixel,
@@ -7850,20 +7879,6 @@ const GENERIC_C2_LINE_METADATA = {
7850
7879
  params: [
7851
7880
  ...SMOOTH_LINE_PARAMS,
7852
7881
  ...echelonLineParams("line"),
7853
- {
7854
- key: "labelOrientation",
7855
- presentationTier: "advanced",
7856
- label: "Label orientation",
7857
- description: "Orient the echelon along the line or perpendicular on mostly north-south segments.",
7858
- type: "enum",
7859
- options: [{
7860
- value: "along",
7861
- label: "Along the line"
7862
- }, {
7863
- value: "standard",
7864
- label: "Standard (MIL-STD-2525E)"
7865
- }]
7866
- },
7867
7882
  {
7868
7883
  key: "phaseLineName",
7869
7884
  presentationTier: "primary",
@@ -7882,16 +7897,7 @@ const GENERIC_C2_LINE_METADATA = {
7882
7897
  type: "boolean",
7883
7898
  visibleWhen: (opts) => Boolean(String(opts.phaseLineName ?? "").trim())
7884
7899
  },
7885
- {
7886
- key: "labelPadding",
7887
- presentationTier: "advanced",
7888
- label: "Label padding",
7889
- description: "Extra clearance between the line and its labels, as a ratio of the label height",
7890
- type: "number",
7891
- min: 0,
7892
- max: 2,
7893
- step: .05
7894
- }
7900
+ LINE_LABEL_PADDING_PARAM
7895
7901
  ],
7896
7902
  textAmplifiers: [
7897
7903
  {
@@ -7966,7 +7972,6 @@ function createGenericC2Line(positions, options = {}, textAmplifiers = {}, conte
7966
7972
  const { strokes: glyphStrokes, fills: glyphFills, gaps, groups } = spec ? placeEchelonsAlongLine(verts, spec, h, {
7967
7973
  labelRepetitions,
7968
7974
  labelPosition,
7969
- defaultLabelPosition: DEFAULT_GENERIC_C2_LINE_OPTIONS.labelPosition,
7970
7975
  labelSpacing,
7971
7976
  labelOrientation,
7972
7977
  echelonPadding
@@ -8008,13 +8013,10 @@ function createGenericC2Line(positions, options = {}, textAmplifiers = {}, conte
8008
8013
  coordinates: glyphFills.map((ring) => [ring])
8009
8014
  }
8010
8015
  });
8011
- if (Boolean(textAmplifiers.T1 || textAmplifiers.AS1 || textAmplifiers.T2 || textAmplifiers.AS2) && groups.length > 0) {
8012
- const unitLabels = [];
8013
- const units = unitLabelsFromAmplifiers(textAmplifiers, GENERIC_C2_UNIT_LABEL_FIELDS);
8014
- const { properties: labelSize } = echelonUnitLabelSize(h, echelonSizePixels, sizeOptions.metersPerPixel);
8015
- pushEchelonUnitLabels(unitLabels, groups, units, h, sizeOptions.labelPadding ?? .4, labelSize);
8016
- features.push(...unitLabels);
8017
- }
8016
+ const { properties: unitLabelSize } = echelonUnitLabelSize(h, echelonSizePixels, sizeOptions.metersPerPixel);
8017
+ const unitLabels = [];
8018
+ pushEchelonUnitLabels(unitLabels, groups, unitLabelsFromAmplifiers(textAmplifiers, GENERIC_C2_UNIT_LABEL_FIELDS), h, sizeOptions.labelPadding ?? .4, unitLabelSize);
8019
+ features.push(...unitLabels);
8018
8020
  const above = [textAmplifiers.H, textAmplifiers.T].filter((v) => Boolean(v)).join(" ");
8019
8021
  const below = [textAmplifiers.W, textAmplifiers.W1].filter((v) => Boolean(v)).join(" - ");
8020
8022
  const trimmedPhaseLineName = phaseLineName?.trim();
@@ -12630,6 +12632,98 @@ const FINAL_COORDINATION_LINE = defineControlMeasure({
12630
12632
  }
12631
12633
  });
12632
12634
  //#endregion
12635
+ //#region src/generators/cm14-maneuver-lines/infiltration-lane.ts
12636
+ const DEFAULT_INFILTRATION_LANE_OPTIONS = {};
12637
+ const INFILTRATION_LANE_METADATA = {
12638
+ id: "infiltration-lane",
12639
+ name: "Infiltration Lane",
12640
+ description: "A control measure that coordinates forward and lateral movement of infiltrating units and fixes fire planning responsibilities.",
12641
+ entity: "Maneuver Lines",
12642
+ entityType: "Infiltration Lane",
12643
+ value: "140800",
12644
+ minCoordinates: 3,
12645
+ maxCoordinates: 3,
12646
+ geometry: "line",
12647
+ geometryTypes: ["MultiLineString", "Point"],
12648
+ paints: {
12649
+ stroke: true,
12650
+ fill: "none",
12651
+ text: true
12652
+ },
12653
+ drawRule: "Polyline1",
12654
+ capturesLabelSize: true,
12655
+ textAmplifiers: [{
12656
+ key: "T",
12657
+ label: "Unique designation",
12658
+ description: "Field T — the infiltration lane's unique designation.",
12659
+ placeholder: "GREEN",
12660
+ maxLength: 21
12661
+ }]
12662
+ };
12663
+ /** Creates the two parallel boundaries and centered Field T lane designation. */
12664
+ function createInfiltrationLane(coordinates, options = {}, textAmplifiers = {}) {
12665
+ const [c1, c2, c3] = coordinates;
12666
+ const p1 = project(c1[0], c1[1]);
12667
+ const p2 = project(c2[0], c2[1]);
12668
+ const frame = createProjectedBaselineFrame(p1, p2, {
12669
+ origin: "midpoint",
12670
+ normal: "left"
12671
+ });
12672
+ if (!frame) return {
12673
+ type: "FeatureCollection",
12674
+ features: []
12675
+ };
12676
+ const signedHalfWidth = frame.signedNormalDistance(c3);
12677
+ if (Math.abs(signedHalfWidth) < 1e-6) return {
12678
+ type: "FeatureCollection",
12679
+ features: []
12680
+ };
12681
+ const midpoint = frame.origin;
12682
+ const offset = vecScale(frame.normal, signedHalfWidth);
12683
+ const features = [{
12684
+ type: "Feature",
12685
+ properties: { part: "infiltration-lane" },
12686
+ geometry: {
12687
+ type: "MultiLineString",
12688
+ coordinates: [[vecAdd(p1, offset), vecAdd(p2, offset)], [vecSub(p1, offset), vecSub(p2, offset)]].map((line) => line.map((point) => unproject(point[0], point[1])))
12689
+ }
12690
+ }];
12691
+ if (textAmplifiers.T) features.push({
12692
+ type: "Feature",
12693
+ properties: {
12694
+ part: "label",
12695
+ labelPlacement: false,
12696
+ amplifierField: "T",
12697
+ text: textAmplifiers.T,
12698
+ rotation: labelRotationAlong(frame.direction),
12699
+ ...labelSizeProps(options)
12700
+ },
12701
+ geometry: {
12702
+ type: "Point",
12703
+ coordinates: unproject(midpoint[0], midpoint[1])
12704
+ }
12705
+ });
12706
+ return {
12707
+ type: "FeatureCollection",
12708
+ features
12709
+ };
12710
+ }
12711
+ const INFILTRATION_LANE = defineControlMeasure({
12712
+ metadata: INFILTRATION_LANE_METADATA,
12713
+ generator: createInfiltrationLane,
12714
+ defaultOptions: DEFAULT_INFILTRATION_LANE_OPTIONS,
12715
+ rule: polyline1DrawRule,
12716
+ previewSample: {
12717
+ controlPoints: [
12718
+ [-1, 0],
12719
+ [1, 0],
12720
+ [0, .36]
12721
+ ],
12722
+ textAmplifiers: { T: "GREEN" },
12723
+ options: { labelSize: 100 }
12724
+ }
12725
+ });
12726
+ //#endregion
12633
12727
  //#region src/generators/cm14-maneuver-lines/airhead-line.ts
12634
12728
  /** Clearance between the boundary's southernmost point and the caption, as a
12635
12729
  * ratio of the caption's height. */
@@ -17025,6 +17119,7 @@ const DEFINITIONS = {
17025
17119
  "forward-edge-of-battle-area": FORWARD_EDGE_OF_BATTLE_AREA,
17026
17120
  "bridgehead-line": BRIDGEHEAD_LINE,
17027
17121
  "final-coordination-line": FINAL_COORDINATION_LINE,
17122
+ "infiltration-lane": INFILTRATION_LANE,
17028
17123
  "airhead-line": AIRHEAD_LINE,
17029
17124
  "holding-line": HOLDING_LINE,
17030
17125
  "release-line": RELEASE_LINE,
@@ -17480,4 +17575,4 @@ function assertNever(value) {
17480
17575
  throw new Error(`Unhandled control measure kind: ${String(value)}`);
17481
17576
  }
17482
17577
  //#endregion
17483
- export { DEFAULT_DISRUPT_OPTIONS as $, DEFAULT_STROKE_DASH_CSS_PIXELS as $t, DEFAULT_RETIRE_OPTIONS as A, createBaselineFrame as An, DEFAULT_CONTAIN_OPTIONS as At, DEFAULT_LIMIT_OF_ADVANCE_OPTIONS as B, DEFAULT_AREA_DEFENSE_OPTIONS as Bt, DEFAULT_MAIN_ATTACK_OPTIONS as C, containDrawRule as Cn, DEFAULT_BLOCK_MISSION_TASK_OPTIONS as Ct, DEFAULT_WITHDRAW_OPTIONS as D, getMidpointPerpendicularSignedDistance as Dn, DEFAULT_BOUNDARY_OPTIONS as Dt, DEFAULT_WITHDRAW_UNDER_PRESSURE_OPTIONS as E, createMidpointPerpendicularDrawRule as En, DEFAULT_LIGHT_LINE_OPTIONS as Et, DEFAULT_FORTIFIED_LINE_OPTIONS as F, sphericalBearing as Fn, DEFAULT_ANTITANK_DITCH_OPTIONS as Ft, DEFAULT_HOLDING_LINE_OPTIONS as G, canonicalTextAmplifierKey as Gt, DEFAULT_HANDOVER_LINE_OPTIONS as H, DEFAULT_DIRECTION_OF_MAIN_ATTACK_OPTIONS as Ht, DEFAULT_PROBABLE_LINE_OF_DEPLOYMENT_OPTIONS as I, unproject as In, DEFAULT_ASSEMBLY_AREA_OPTIONS as It, DEFAULT_FLOT_OPTIONS as J, DEFAULT_LABEL_HEIGHT_CSS_PIXELS as Jt, DEFAULT_BRIDGEHEAD_LINE_OPTIONS as K, normalizeTextAmplifiers as Kt, PROBABLE_LINE_OF_DEPLOYMENT_DASH as L, EPSILON as Ln, DEFAULT_AREA_OF_OPERATIONS_OPTIONS as Lt, DEFAULT_PENETRATE_OPTIONS as M, computeInitialWidthPoint as Mn, DEFAULT_ATTACK_HELICOPTER_OPTIONS as Mt, DEFAULT_FRONTAL_ATTACK_OPTIONS as N, haversineDistance as Nn, DEFAULT_ATTACK_BY_FIRE_OPTIONS as Nt, DEFAULT_SEIZE_OPTIONS as O, pointOnMidpointPerpendicularAxis as On, DEFAULT_BLOCK_ARROW_OPTIONS as Ot, DEFAULT_FORTIFIED_AREA_OPTIONS as P, project as Pn, DEFAULT_ANTITANK_WALL_OPTIONS as Pt, DEFAULT_ENCIRCLEMENT_OPTIONS as Q, DEFAULT_PORTRAYAL as Qt, DEFAULT_LINE_OF_DEPARTURE_CONTACT_OPTIONS as R, getMetersPerPixel as Rn, DEFAULT_MOBILE_DEFENSE_OPTIONS as Rt, DEFAULT_MINEFIELD_OPTIONS as S, centerRadiusDrawRule as Sn, DEFAULT_BREACH_OPTIONS as St, DEFAULT_JOINT_TACTICAL_ACTION_AREA_OPTIONS as T, computeDefaultMidpointPerpendicularPoint as Tn, DEFAULT_ENGINEER_WORK_LINE_OPTIONS as Tt, DEFAULT_FORWARD_EDGE_OF_BATTLE_AREA_OPTIONS as U, DEFAULT_DIRECTION_OF_ATTACK_AVIATION_OPTIONS as Ut, DEFAULT_BATTLE_HANDOVER_LINE_OPTIONS as V, DEFAULT_DIRECTION_OF_SUPPORTING_ATTACK_OPTIONS as Vt, DEFAULT_RELEASE_LINE_OPTIONS as W, TEXT_AMPLIFIER_FIELDS as Wt, DEFAULT_FIX_OPTIONS as X, DEFAULT_LINE_CAP as Xt, DEFAULT_FIX_MISSION_TASK_OPTIONS as Y, DEFAULT_LABEL_SIZE_CLAMP_CSS_PIXELS as Yt, DEFAULT_FINAL_PROTECTIVE_FIRE_OPTIONS as Z, DEFAULT_LINE_JOIN as Zt, DEFAULT_PRINCIPAL_DIRECTION_OF_FIRE_OPTIONS as _, staticPointDrawRule as _n, DEFAULT_GENERIC_LINE_OPTIONS as _t, DEFINITIONS as a, axis1DrawRule as an, DEFAULT_TACTICAL_ARROW_OPTIONS as at, DEFAULT_OBSTACLE_BYPASS_EASY_OPTIONS as b, disruptDrawRule as bn, DEFAULT_CANALIZE_OPTIONS as bt, getDefaultOptions as c, line26DrawRule as cn, DEFAULT_SUPPORTING_ATTACK_OPTIONS as ct, DEFAULT_TURN_OPTIONS as d, turnDrawRule as dn, RADAR_SEARCH_DOCTRINE_FILL_COLOR as dt, DEFAULT_STROKE_WIDTH_CSS_PIXELS as en, DEFAULT_GUARD_OPTIONS as et, DEFAULT_SUPPORT_BY_FIRE_OPTIONS as f, line1DrawRule as fn, RADAR_SEARCH_DOCTRINE_STROKE_COLOR as ft, SECONDARY_DIRECTION_OF_FIRE_DASH as g, sectorDrawRule as gn, DEFAULT_GENERIC_POLYGON_OPTIONS as gt, DEFAULT_SECONDARY_DIRECTION_OF_FIRE_OPTIONS as h, dynamicPointDrawRule as hn, DEFAULT_GENERIC_RECTANGLE_OPTIONS as ht, CONTROL_MEASURE_METADATA as i, rectangleDrawRule as in, DEFAULT_COVER_OPTIONS as it, DEFAULT_REARWARD_PASSAGE_OF_LINES_OPTIONS as j, calculateMetrics as jn, DEFAULT_BATTLE_POSITION_OPTIONS as jt, DEFAULT_SCREEN_OPTIONS as k, snapToMidpointPerpendicular as kn, DEFAULT_BLOCK_OPTIONS as kt, listControlMeasureMetadata as l, line24DrawRule as ln, DEFAULT_CLEAR_OPTIONS as lt, DEFAULT_STRONG_POINT_OPTIONS as m, attackByFireDrawRule as mn, DEFAULT_GENERIC_SECTOR_OPTIONS as mt, resolveStyleHints as n, DEFAULT_AMBUSH_OPTIONS as nn, DEFAULT_DISENGAGE_OPTIONS as nt, getControlMeasureMetadata as o, supportByFireDrawRule as on, DEFAULT_COUNTERATTACK_BY_FIRE_OPTIONS as ot, DEFAULT_RETAIN_OPTIONS as p, ambushDrawRule as pn, DEFAULT_GENERIC_TEXT_OPTIONS as pt, DEFAULT_PHASE_LINE_OPTIONS as q, resolveAmplifierPlacement as qt, CONTROL_MEASURE_IDS as r, DEFAULT_AIRBORNE_ATTACK_OPTIONS as rn, DEFAULT_DELAY_OPTIONS as rt, getControlMeasureMetadataByValue as s, line27DrawRule as sn, DEFAULT_COUNTERATTACK_OPTIONS as st, renderControlMeasure as t, DEFAULT_SYMBOL_COLOR as tn, DEFAULT_DISRUPT_MISSION_TASK_OPTIONS as tt, DEFAULT_TURNING_MOVEMENT_OPTIONS as u, line23DrawRule as un, DEFAULT_RADAR_SEARCH_DOCTRINE_OPTIONS as ut, DEFAULT_PICKUP_ZONE_OPTIONS as v, point12DrawRule as vn, DEFAULT_GENERIC_CIRCLE_OPTIONS as vt, DEFAULT_LANDING_ZONE_OPTIONS as w, area27DrawRule as wn, DEFAULT_GENERIC_C2_LINE_OPTIONS as wt, DEFAULT_OBSTACLE_BYPASS_DIFFICULT_OPTIONS as x, blockDrawRule as xn, DEFAULT_BYPASS_OPTIONS as xt, DEFAULT_OBSTACLE_BYPASS_IMPOSSIBLE_OPTIONS as y, penetrateDrawRule as yn, DEFAULT_CLASSIC_ARROW_OPTIONS as yt, DEFAULT_LINE_OF_DEPARTURE_OPTIONS as z, roundToFixed as zn, DEFAULT_ENGAGEMENT_AREA_OPTIONS as zt };
17578
+ export { DEFAULT_ENCIRCLEMENT_OPTIONS as $, DEFAULT_PORTRAYAL as $t, DEFAULT_RETIRE_OPTIONS as A, pointOnMidpointPerpendicularAxis as An, DEFAULT_BLOCK_OPTIONS as At, DEFAULT_LIMIT_OF_ADVANCE_OPTIONS as B, getMetersPerPixel as Bn, DEFAULT_ENGAGEMENT_AREA_OPTIONS as Bt, DEFAULT_MAIN_ATTACK_OPTIONS as C, blockDrawRule as Cn, DEFAULT_BREACH_OPTIONS as Ct, DEFAULT_WITHDRAW_OPTIONS as D, computeDefaultMidpointPerpendicularPoint as Dn, DEFAULT_LIGHT_LINE_OPTIONS as Dt, DEFAULT_WITHDRAW_UNDER_PRESSURE_OPTIONS as E, area27DrawRule as En, DEFAULT_ENGINEER_WORK_LINE_OPTIONS as Et, DEFAULT_FORTIFIED_LINE_OPTIONS as F, haversineDistance as Fn, DEFAULT_ANTITANK_WALL_OPTIONS as Ft, DEFAULT_HOLDING_LINE_OPTIONS as G, TEXT_AMPLIFIER_FIELDS as Gt, DEFAULT_HANDOVER_LINE_OPTIONS as H, DEFAULT_DIRECTION_OF_SUPPORTING_ATTACK_OPTIONS as Ht, DEFAULT_PROBABLE_LINE_OF_DEPLOYMENT_OPTIONS as I, project as In, DEFAULT_ANTITANK_DITCH_OPTIONS as It, DEFAULT_PHASE_LINE_OPTIONS as J, resolveAmplifierPlacement as Jt, DEFAULT_INFILTRATION_LANE_OPTIONS as K, canonicalTextAmplifierKey as Kt, PROBABLE_LINE_OF_DEPLOYMENT_DASH as L, sphericalBearing as Ln, DEFAULT_ASSEMBLY_AREA_OPTIONS as Lt, DEFAULT_PENETRATE_OPTIONS as M, createBaselineFrame as Mn, DEFAULT_BATTLE_POSITION_OPTIONS as Mt, DEFAULT_FRONTAL_ATTACK_OPTIONS as N, calculateMetrics as Nn, DEFAULT_ATTACK_HELICOPTER_OPTIONS as Nt, DEFAULT_SEIZE_OPTIONS as O, createMidpointPerpendicularDrawRule as On, DEFAULT_BOUNDARY_OPTIONS as Ot, DEFAULT_FORTIFIED_AREA_OPTIONS as P, computeInitialWidthPoint as Pn, DEFAULT_ATTACK_BY_FIRE_OPTIONS as Pt, DEFAULT_FINAL_PROTECTIVE_FIRE_OPTIONS as Q, DEFAULT_LINE_JOIN as Qt, DEFAULT_LINE_OF_DEPARTURE_CONTACT_OPTIONS as R, unproject as Rn, DEFAULT_AREA_OF_OPERATIONS_OPTIONS as Rt, DEFAULT_MINEFIELD_OPTIONS as S, disruptDrawRule as Sn, DEFAULT_BYPASS_OPTIONS as St, DEFAULT_JOINT_TACTICAL_ACTION_AREA_OPTIONS as T, containDrawRule as Tn, DEFAULT_GENERIC_C2_LINE_OPTIONS as Tt, DEFAULT_FORWARD_EDGE_OF_BATTLE_AREA_OPTIONS as U, DEFAULT_DIRECTION_OF_MAIN_ATTACK_OPTIONS as Ut, DEFAULT_BATTLE_HANDOVER_LINE_OPTIONS as V, roundToFixed as Vn, DEFAULT_AREA_DEFENSE_OPTIONS as Vt, DEFAULT_RELEASE_LINE_OPTIONS as W, DEFAULT_DIRECTION_OF_ATTACK_AVIATION_OPTIONS as Wt, DEFAULT_FIX_MISSION_TASK_OPTIONS as X, DEFAULT_LABEL_SIZE_CLAMP_CSS_PIXELS as Xt, DEFAULT_FLOT_OPTIONS as Y, DEFAULT_LABEL_HEIGHT_CSS_PIXELS as Yt, DEFAULT_FIX_OPTIONS as Z, DEFAULT_LINE_CAP as Zt, DEFAULT_PRINCIPAL_DIRECTION_OF_FIRE_OPTIONS as _, dynamicPointDrawRule as _n, DEFAULT_GENERIC_POLYGON_OPTIONS as _t, DEFINITIONS as a, rectangleDrawRule as an, DEFAULT_COVER_OPTIONS as at, DEFAULT_OBSTACLE_BYPASS_EASY_OPTIONS as b, point12DrawRule as bn, DEFAULT_CLASSIC_ARROW_OPTIONS as bt, getDefaultOptions as c, polyline1DrawRule as cn, DEFAULT_COUNTERATTACK_OPTIONS as ct, DEFAULT_TURN_OPTIONS as d, line24DrawRule as dn, DEFAULT_RADAR_SEARCH_DOCTRINE_OPTIONS as dt, DEFAULT_STROKE_DASH_CSS_PIXELS as en, DEFAULT_DISRUPT_OPTIONS as et, DEFAULT_SUPPORT_BY_FIRE_OPTIONS as f, line23DrawRule as fn, RADAR_SEARCH_DOCTRINE_FILL_COLOR as ft, SECONDARY_DIRECTION_OF_FIRE_DASH as g, attackByFireDrawRule as gn, DEFAULT_GENERIC_RECTANGLE_OPTIONS as gt, DEFAULT_SECONDARY_DIRECTION_OF_FIRE_OPTIONS as h, ambushDrawRule as hn, DEFAULT_GENERIC_SECTOR_OPTIONS as ht, CONTROL_MEASURE_METADATA as i, DEFAULT_AIRBORNE_ATTACK_OPTIONS as in, DEFAULT_DELAY_OPTIONS as it, DEFAULT_REARWARD_PASSAGE_OF_LINES_OPTIONS as j, snapToMidpointPerpendicular as jn, DEFAULT_CONTAIN_OPTIONS as jt, DEFAULT_SCREEN_OPTIONS as k, getMidpointPerpendicularSignedDistance as kn, DEFAULT_BLOCK_ARROW_OPTIONS as kt, listControlMeasureMetadata as l, line27DrawRule as ln, DEFAULT_SUPPORTING_ATTACK_OPTIONS as lt, DEFAULT_STRONG_POINT_OPTIONS as m, line1DrawRule as mn, DEFAULT_GENERIC_TEXT_OPTIONS as mt, resolveStyleHints as n, DEFAULT_SYMBOL_COLOR as nn, DEFAULT_DISRUPT_MISSION_TASK_OPTIONS as nt, getControlMeasureMetadata as o, axis1DrawRule as on, DEFAULT_TACTICAL_ARROW_OPTIONS as ot, DEFAULT_RETAIN_OPTIONS as p, turnDrawRule as pn, RADAR_SEARCH_DOCTRINE_STROKE_COLOR as pt, DEFAULT_BRIDGEHEAD_LINE_OPTIONS as q, normalizeTextAmplifiers as qt, CONTROL_MEASURE_IDS as r, DEFAULT_AMBUSH_OPTIONS as rn, DEFAULT_DISENGAGE_OPTIONS as rt, getControlMeasureMetadataByValue as s, supportByFireDrawRule as sn, DEFAULT_COUNTERATTACK_BY_FIRE_OPTIONS as st, renderControlMeasure as t, DEFAULT_STROKE_WIDTH_CSS_PIXELS as tn, DEFAULT_GUARD_OPTIONS as tt, DEFAULT_TURNING_MOVEMENT_OPTIONS as u, line26DrawRule as un, DEFAULT_CLEAR_OPTIONS as ut, DEFAULT_PICKUP_ZONE_OPTIONS as v, sectorDrawRule as vn, DEFAULT_GENERIC_LINE_OPTIONS as vt, DEFAULT_LANDING_ZONE_OPTIONS as w, centerRadiusDrawRule as wn, DEFAULT_BLOCK_MISSION_TASK_OPTIONS as wt, DEFAULT_OBSTACLE_BYPASS_DIFFICULT_OPTIONS as x, penetrateDrawRule as xn, DEFAULT_CANALIZE_OPTIONS as xt, DEFAULT_OBSTACLE_BYPASS_IMPOSSIBLE_OPTIONS as y, staticPointDrawRule as yn, DEFAULT_GENERIC_CIRCLE_OPTIONS as yt, DEFAULT_LINE_OF_DEPARTURE_OPTIONS as z, EPSILON as zn, DEFAULT_MOBILE_DEFENSE_OPTIONS as zt };
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 48" width="96" height="48" role="img" aria-label="Infiltration Lane"><rect x="0" y="0" width="96" height="48" rx="6" fill="#f8fafc" stroke="#e2e8f0"/><path d="M5.00 31.74 L91.00 31.74" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><path d="M5.00 16.26 L91.00 16.26" fill="none" stroke="#1e293b" stroke-width="1.25" stroke-linejoin="round" stroke-linecap="round"/><g transform="rotate(0.000 48.000 24.000)"><text x="48" y="24" fill="#1e293b" font-family="sans-serif" font-size="7.68" font-weight="600" text-anchor="middle" dominant-baseline="central">GREEN</text></g></svg>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@orbat-mapper/control-measures",
3
- "version": "0.13.0",
3
+ "version": "0.14.0",
4
4
  "description": "Library for drawing tactical graphics and control measures according to MIL-STD-2525 and APP-6 standards.",
5
5
  "license": "MIT",
6
6
  "author": "Orbat Mapper",