@orbat-mapper/control-measures 0.9.0 → 0.10.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.
@@ -219,7 +219,7 @@ declare function normalizeTextAmplifiers(input: TextAmplifiers | undefined): Can
219
219
  //#region src/metadata.d.ts
220
220
  type ControlMeasureGeometryType = Geometry["type"];
221
221
  type ControlMeasureGeometry = "point" | "line" | "area";
222
- declare const DRAW_RULE_IDS: readonly ["Area1", "Area5", "Area6", "Area7", "Area8", "Area11", "Area12", "Area15", "Area17", "Area21", "Area27", "Axis1", "Line1", "Line3", "Line9", "Line10", "Line23", "Line24", "Line26", "Line27", "Line29", "Point1", "Point2", "Point12", "Point18", "Rectangle", "Sector"];
222
+ 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", "Point1", "Point2", "Point12", "Point18", "Rectangle", "Sector"];
223
223
  type DrawRuleId = (typeof DRAW_RULE_IDS)[number];
224
224
  declare const PARAMETER_PRESENTATION_TIERS: readonly ["primary", "standard", "advanced"];
225
225
  type ParameterPresentationTier = (typeof PARAMETER_PRESENTATION_TIERS)[number];
@@ -2754,6 +2754,10 @@ declare const DEFAULT_BLOCK_OPTIONS: BlockOptions;
2754
2754
  */
2755
2755
  declare function createBlock(coordinates: Position[], _options?: BlockOptions): FeatureCollection<LineString>;
2756
2756
  //#endregion
2757
+ //#region src/generators/cm27-protection-areas/bridge-or-gap.d.ts
2758
+ type BridgeOrGapOptions = LabelSizeOptions;
2759
+ declare function createBridgeOrGap(coordinates: Position[], options?: BridgeOrGapOptions, textAmplifiers?: CanonicalTextAmplifiers): FeatureCollection<LineString | Point>;
2760
+ //#endregion
2757
2761
  //#region src/generators/cm27-protection-areas/disrupt.d.ts
2758
2762
  interface DisruptOptions {
2759
2763
  middleArrowLengthRatio?: number;
@@ -3034,6 +3038,7 @@ declare const DEFINITIONS: {
3034
3038
  "frontal-attack": ControlMeasureDefinition<"frontal-attack", typeof createFrontalAttack>;
3035
3039
  "turning-movement": ControlMeasureDefinition<"turning-movement", typeof createTurningMovement>;
3036
3040
  block: ControlMeasureDefinition<"block", typeof createBlock>;
3041
+ "bridge-or-gap": ControlMeasureDefinition<"bridge-or-gap", typeof createBridgeOrGap>;
3037
3042
  disrupt: ControlMeasureDefinition<"disrupt", typeof createDisrupt>;
3038
3043
  fix: ControlMeasureDefinition<"fix", typeof createFix>;
3039
3044
  "fix-mission-task": ControlMeasureDefinition<"fix-mission-task", typeof createFixMissionTaskSymbol>;
package/dist/index.d.mts CHANGED
@@ -1,3 +1,3 @@
1
- import { $ as ControlMeasureKind, $i as TextAmplifierDescriptor, $n as DEFAULT_AIRBORNE_ATTACK_OPTIONS, $r as DEFAULT_SECONDARY_DIRECTION_OF_FIRE_OPTIONS, $t as DEFAULT_DISENGAGE_OPTIONS, A as BaselineFrame, Ai as BoundaryOptions, An as BattleHandoverLineOptions, Ar as DEFAULT_PICKUP_ZONE_OPTIONS, At as FortifiedLineOptions, B as toSimpleStyle, Bi as DEFAULT_STROKE_WIDTH_CSS_PIXELS, Bn as DEFAULT_FORWARD_EDGE_OF_BATTLE_AREA_OPTIONS, Br as MobileDefenseOptions, Bt as SeizeOptions, C as area27DrawRule, Ci as LightLineOptions, Cn as ProbableLineOfDeploymentOptions, Cr as SupportingAttackOptions, Ct as DEFAULT_TURNING_MOVEMENT_OPTIONS, D as getMidpointPerpendicularSignedDistance, Di as project, Dn as LineOfDepartureOptions, Dr as computeInitialWidthPoint, Dt as DEFAULT_FORTIFIED_AREA_OPTIONS, E as createMidpointPerpendicularDrawRule, Ei as haversineDistance, En as DEFAULT_LINE_OF_DEPARTURE_OPTIONS, Er as calculateMetrics, Et as FrontalAttackOptions, F as EPSILON, Fi as DEFAULT_LABEL_SIZE_CLAMP_CSS_PIXELS, Fn as ReleaseLineOptions, Fr as DEFAULT_JOINT_TACTICAL_ACTION_AREA_OPTIONS, Ft as DEFAULT_WITHDRAW_UNDER_PRESSURE_OPTIONS, G as RenderOptions, Gi as ControlMeasureGeometry, Gn as FLOTOptions, Gr as DEFAULT_ENCIRCLEMENT_OPTIONS, Gt as DEFAULT_REARWARD_PASSAGE_OF_LINES_OPTIONS, H as applyBoxTransformOptions, Hi as MeasureTextRequest, Hn as DEFAULT_PHASE_LINE_OPTIONS, Hr as EngagementAreaOptions, Ht as ScreenOptions, I as getMetersPerPixel, Ii as DEFAULT_LINE_CAP, In as DEFAULT_HOLDING_LINE_OPTIONS, Ir as JointTacticalActionAreaOptions, It as WithdrawUnderPressureOptions, J as cloneControlMeasure, Ji as ControlMeasurePaintCapability, Jn as DEFAULT_SUPPORT_BY_FIRE_OPTIONS, Jr as FinalProtectiveFireOptions, Jt as PenetrateOptions, K as renderControlMeasure, Ki as ControlMeasureGeometryType, Kn as AttackByFireOptions, Kr as EncirclementOptions, Kt as RearwardPassageOfLinesOptions, L as roundToFixed, Li as DEFAULT_LINE_JOIN, Ln as HoldingLineOptions, Lr as AssemblyAreaOptions, Lt as DEFAULT_WITHDRAW_OPTIONS, M as BaselineFrameOptions, Mi as BoxTransformDelta, Mn as DEFAULT_HANDOVER_LINE_OPTIONS, Mr as MineType, Mt as DEFAULT_ANTITANK_WALL_OPTIONS, N as BaselineFrameOrigin, Ni as ControlMeasureRenderContext, Nn as HandoverLineOptions, Nr as DEFAULT_LANDING_ZONE_OPTIONS, Nt as AntitankDitchOptions, O as pointOnMidpointPerpendicularAxis, Oi as sphericalBearing, On as DEFAULT_LIMIT_OF_ADVANCE_OPTIONS, Or as AreaOfOperationsOptions, Ot as FortifiedAreaOptions, P as createBaselineFrame, Pi as DEFAULT_LABEL_HEIGHT_CSS_PIXELS, Pn as DEFAULT_RELEASE_LINE_OPTIONS, Pr as LandingZoneOptions, Pt as DEFAULT_ANTITANK_DITCH_OPTIONS, Q as ControlMeasureId, Qi as ParameterSemanticRole, Qn as AirborneAttackOptions, Qr as controlMeasureIdFromFeature, Qt as DisruptMissionTaskOptions, R as SimpleStyleProps, Ri as DEFAULT_PORTRAYAL, Rn as BridgeheadLineOptions, Rr as DEFAULT_ASSEMBLY_AREA_OPTIONS, Rt as WithdrawOptions, S as containDrawRule, Si as DEFAULT_LIGHT_LINE_OPTIONS, Sn as PROBABLE_LINE_OF_DEPLOYMENT_DASH, Sr as DEFAULT_SUPPORTING_ATTACK_OPTIONS, St as DEFAULT_BLOCK_OPTIONS, T as computeDefaultMidpointPerpendicularPoint, Ti as Point2D, Tn as LineOfDepartureContactOptions, Tr as MainAttackOptions, Tt as DEFAULT_FRONTAL_ATTACK_OPTIONS, U as foldsBoxTransformOptions, Ui as MeasuredText, Un as PhaseLineOptions, Ur as AreaDefenseOptions, Ut as DEFAULT_RETIRE_OPTIONS, V as resolveStyleHints, Vi as LogicalTextStyle, Vn as ForwardEdgeOfBattleAreaOptions, Vr as DEFAULT_ENGAGEMENT_AREA_OPTIONS, Vt as DEFAULT_SCREEN_OPTIONS, W as freezeOrientationOptions, Wi as ControlMeasureFillCapability, Wn as DEFAULT_FLOT_OPTIONS, Wr as DEFAULT_AREA_DEFENSE_OPTIONS, Wt as RetireOptions, X as CONTROL_MEASURE_IDS, Xi as ParamDescriptor, Xn as AttackHelicopterOptions, Xr as FeaturePartProps, Xt as GuardOptions, Y as isKind, Yi as PARAMETER_PRESENTATION_TIERS, Yn as SupportByFireOptions, Yr as ControlMeasureRender, Yt as DEFAULT_GUARD_OPTIONS, Z as CONTROL_MEASURE_METADATA, Zi as ParameterPresentationTier, Zn as DEFAULT_ATTACK_HELICOPTER_OPTIONS, Zr as StyleHints, Zt as DEFAULT_DISRUPT_MISSION_TASK_OPTIONS, _ as point12DrawRule, _i as DEFAULT_BATTLE_POSITION_OPTIONS, _n as BreachOptions, _r as BlockArrowOptions, _t as DEFAULT_FIX_OPTIONS, a as axis1DrawRule, aa as CanonicalTextAmplifiers, ai as DirectionOfSupportingAttackOptions, an as DEFAULT_TACTICAL_ARROW_OPTIONS, ar as GenericTextOptions, at as DEFAULT_OBSTACLE_BYPASS_IMPOSSIBLE_OPTIONS, b as disruptDrawRule, bi as DEFAULT_ENGINEER_WORK_LINE_OPTIONS, bn as DEFAULT_BLOCK_MISSION_TASK_OPTIONS, br as ClassicArrowOptions, bt as DisruptOptions, c as line26DrawRule, ca as TEXT_AMPLIFIER_FIELDS, ci as DEFAULT_DIRECTION_OF_ATTACK_AVIATION_OPTIONS, cn as DEFAULT_COUNTERATTACK_BY_FIRE_OPTIONS, cr as DEFAULT_GENERIC_CIRCLE_OPTIONS, ct as ObstacleBypassDifficultOptions, d as turnDrawRule, da as TextAmplifiers, di as RetainOptions, dn as ClearOptions, dr as GenericRectangleOptions, dt as DEFAULT_MINEFIELD_OPTIONS, ea as parameterPresentationTierRank, ei as SECONDARY_DIRECTION_OF_FIRE_DASH, en as DisengageOptions, er as DEFAULT_RADAR_SEARCH_DOCTRINE_OPTIONS, et as OptionsByKind, f as line1DrawRule, fa as canonicalTextAmplifierKey, fi as DEFAULT_STRONG_POINT_OPTIONS, fn as DEFAULT_CLEAR_OPTIONS, fr as DEFAULT_GENERIC_POLYGON_OPTIONS, ft as MinefieldOptions, g as staticPointDrawRule, ga as ControlMeasureDrawRule, gi as BattlePositionOptions, gn as DEFAULT_BYPASS_OPTIONS, gr as BlockArrowHeadStyle, gt as FixMissionTaskOptions, h as dynamicPointDrawRule, ha as AnchorTransformEvent, hi as DEFAULT_CONTAIN_OPTIONS, hn as BypassOptions, hr as GenericLineOptions, ht as DEFAULT_FIX_MISSION_TASK_OPTIONS, i as rectangleDrawRule, ia as AmplifierPlacements, ii as DEFAULT_DIRECTION_OF_SUPPORTING_ATTACK_OPTIONS, in as DEFAULT_COVER_OPTIONS, ir as DEFAULT_GENERIC_TEXT_OPTIONS, it as listControlMeasureMetadata, j as BaselineFrameNormal, ji as DEFAULT_BOUNDARY_OPTIONS, jn as DEFAULT_BATTLE_HANDOVER_LINE_OPTIONS, jr as PickupZoneOptions, jt as AntitankWallOptions, k as snapToMidpointPerpendicular, ki as unproject, kn as LimitOfAdvanceOptions, kr as DEFAULT_AREA_OF_OPERATIONS_OPTIONS, kt as DEFAULT_FORTIFIED_LINE_OPTIONS, l as line24DrawRule, la as TextAmplifierField, li as DirectionOfAttackAviationOptions, ln as CounterattackOptions, lr as GenericCircleOptions, lt as DEFAULT_OBSTACLE_BYPASS_EASY_OPTIONS, m as attackByFireDrawRule, ma as resolveAmplifierPlacement, mi as ContainOptions, mn as DEFAULT_CANALIZE_OPTIONS, mr as DEFAULT_GENERIC_LINE_OPTIONS, mt as TurnOptions, n as DEFAULT_AMBUSH_OPTIONS, na as resolveParameterSemanticRole, ni as DEFAULT_PRINCIPAL_DIRECTION_OF_FIRE_OPTIONS, nn as DelayOptions, nr as RADAR_SEARCH_DOCTRINE_STROKE_COLOR, nt as getControlMeasureMetadataByValue, o as supportByFireDrawRule, oa as GeneratedLabelKey, oi as DEFAULT_DIRECTION_OF_MAIN_ATTACK_OPTIONS, on as TacticalArrowOptions, or as DEFAULT_GENERIC_SECTOR_OPTIONS, ot as ObstacleBypassImpossibleOptions, p as ambushDrawRule, pa as normalizeTextAmplifiers, pi as StrongPointOptions, pn as CanalizeOptions, pr as GenericPolygonOptions, pt as DEFAULT_TURN_OPTIONS, q as ControlMeasure, qi as ControlMeasureMetadata, qn as DEFAULT_ATTACK_BY_FIRE_OPTIONS, qr as DEFAULT_FINAL_PROTECTIVE_FIRE_OPTIONS, qt as DEFAULT_PENETRATE_OPTIONS, r as sectorDrawRule, ra as AmplifierPlacement, ri as PrincipalDirectionOfFireOptions, rn as CoverOptions, rr as RadarSearchDoctrineOptions, rt as getDefaultOptions, s as line27DrawRule, sa as LabelPlacementOverride, si as DirectionOfMainAttackOptions, sn as CounterattackByFireOptions, sr as GenericSectorOptions, st as DEFAULT_OBSTACLE_BYPASS_DIFFICULT_OPTIONS, t as AmbushOptions, ta as resolveParameterPresentationTier, ti as SecondaryDirectionOfFireOptions, tn as DEFAULT_DELAY_OPTIONS, tr as RADAR_SEARCH_DOCTRINE_FILL_COLOR, tt as getControlMeasureMetadata, u as line23DrawRule, ua as TextAmplifierKey, ui as DEFAULT_RETAIN_OPTIONS, un as DEFAULT_COUNTERATTACK_OPTIONS, ur as DEFAULT_GENERIC_RECTANGLE_OPTIONS, ut as ObstacleBypassEasyOptions, v as penetrateDrawRule, vi as DEFAULT_GENERIC_C2_LINE_OPTIONS, vn as DEFAULT_BREACH_OPTIONS, vr as DEFAULT_BLOCK_ARROW_OPTIONS, vt as FixOptions, w as MidpointPerpendicularDrawRuleOptions, wi as LabelSizeOptions, wn as DEFAULT_LINE_OF_DEPARTURE_CONTACT_OPTIONS, wr as DEFAULT_MAIN_ATTACK_OPTIONS, wt as TurningMovementOptions, x as blockDrawRule, xi as EngineerWorkLineOptions, xn as DEFAULT_PROBABLE_LINE_OF_DEPLOYMENT_OPTIONS, xr as DEFAULT_CLASSIC_ARROW_OPTIONS, xt as BlockOptions, y as centerRadiusDrawRule, yi as GenericC2LineOptions, yn as BlockMissionTaskOptions, yr as ClassicArrowHeadStyle, yt as DEFAULT_DISRUPT_OPTIONS, z as SimpleStyleRender, zi as DEFAULT_STROKE_DASH_CSS_PIXELS, zn as DEFAULT_BRIDGEHEAD_LINE_OPTIONS, zr as DEFAULT_MOBILE_DEFENSE_OPTIONS, zt as DEFAULT_SEIZE_OPTIONS } from "./index-nz-U5HlG.mjs";
1
+ import { $ as ControlMeasureKind, $i as TextAmplifierDescriptor, $n as DEFAULT_AIRBORNE_ATTACK_OPTIONS, $r as DEFAULT_SECONDARY_DIRECTION_OF_FIRE_OPTIONS, $t as DEFAULT_DISENGAGE_OPTIONS, A as BaselineFrame, Ai as BoundaryOptions, An as BattleHandoverLineOptions, Ar as DEFAULT_PICKUP_ZONE_OPTIONS, At as FortifiedLineOptions, B as toSimpleStyle, Bi as DEFAULT_STROKE_WIDTH_CSS_PIXELS, Bn as DEFAULT_FORWARD_EDGE_OF_BATTLE_AREA_OPTIONS, Br as MobileDefenseOptions, Bt as SeizeOptions, C as area27DrawRule, Ci as LightLineOptions, Cn as ProbableLineOfDeploymentOptions, Cr as SupportingAttackOptions, Ct as DEFAULT_TURNING_MOVEMENT_OPTIONS, D as getMidpointPerpendicularSignedDistance, Di as project, Dn as LineOfDepartureOptions, Dr as computeInitialWidthPoint, Dt as DEFAULT_FORTIFIED_AREA_OPTIONS, E as createMidpointPerpendicularDrawRule, Ei as haversineDistance, En as DEFAULT_LINE_OF_DEPARTURE_OPTIONS, Er as calculateMetrics, Et as FrontalAttackOptions, F as EPSILON, Fi as DEFAULT_LABEL_SIZE_CLAMP_CSS_PIXELS, Fn as ReleaseLineOptions, Fr as DEFAULT_JOINT_TACTICAL_ACTION_AREA_OPTIONS, Ft as DEFAULT_WITHDRAW_UNDER_PRESSURE_OPTIONS, G as RenderOptions, Gi as ControlMeasureGeometry, Gn as FLOTOptions, Gr as DEFAULT_ENCIRCLEMENT_OPTIONS, Gt as DEFAULT_REARWARD_PASSAGE_OF_LINES_OPTIONS, H as applyBoxTransformOptions, Hi as MeasureTextRequest, Hn as DEFAULT_PHASE_LINE_OPTIONS, Hr as EngagementAreaOptions, Ht as ScreenOptions, I as getMetersPerPixel, Ii as DEFAULT_LINE_CAP, In as DEFAULT_HOLDING_LINE_OPTIONS, Ir as JointTacticalActionAreaOptions, It as WithdrawUnderPressureOptions, J as cloneControlMeasure, Ji as ControlMeasurePaintCapability, Jn as DEFAULT_SUPPORT_BY_FIRE_OPTIONS, Jr as FinalProtectiveFireOptions, Jt as PenetrateOptions, K as renderControlMeasure, Ki as ControlMeasureGeometryType, Kn as AttackByFireOptions, Kr as EncirclementOptions, Kt as RearwardPassageOfLinesOptions, L as roundToFixed, Li as DEFAULT_LINE_JOIN, Ln as HoldingLineOptions, Lr as AssemblyAreaOptions, Lt as DEFAULT_WITHDRAW_OPTIONS, M as BaselineFrameOptions, Mi as BoxTransformDelta, Mn as DEFAULT_HANDOVER_LINE_OPTIONS, Mr as MineType, Mt as DEFAULT_ANTITANK_WALL_OPTIONS, N as BaselineFrameOrigin, Ni as ControlMeasureRenderContext, Nn as HandoverLineOptions, Nr as DEFAULT_LANDING_ZONE_OPTIONS, Nt as AntitankDitchOptions, O as pointOnMidpointPerpendicularAxis, Oi as sphericalBearing, On as DEFAULT_LIMIT_OF_ADVANCE_OPTIONS, Or as AreaOfOperationsOptions, Ot as FortifiedAreaOptions, P as createBaselineFrame, Pi as DEFAULT_LABEL_HEIGHT_CSS_PIXELS, Pn as DEFAULT_RELEASE_LINE_OPTIONS, Pr as LandingZoneOptions, Pt as DEFAULT_ANTITANK_DITCH_OPTIONS, Q as ControlMeasureId, Qi as ParameterSemanticRole, Qn as AirborneAttackOptions, Qr as controlMeasureIdFromFeature, Qt as DisruptMissionTaskOptions, R as SimpleStyleProps, Ri as DEFAULT_PORTRAYAL, Rn as BridgeheadLineOptions, Rr as DEFAULT_ASSEMBLY_AREA_OPTIONS, Rt as WithdrawOptions, S as containDrawRule, Si as DEFAULT_LIGHT_LINE_OPTIONS, Sn as PROBABLE_LINE_OF_DEPLOYMENT_DASH, Sr as DEFAULT_SUPPORTING_ATTACK_OPTIONS, St as DEFAULT_BLOCK_OPTIONS, T as computeDefaultMidpointPerpendicularPoint, Ti as Point2D, Tn as LineOfDepartureContactOptions, Tr as MainAttackOptions, Tt as DEFAULT_FRONTAL_ATTACK_OPTIONS, U as foldsBoxTransformOptions, Ui as MeasuredText, Un as PhaseLineOptions, Ur as AreaDefenseOptions, Ut as DEFAULT_RETIRE_OPTIONS, V as resolveStyleHints, Vi as LogicalTextStyle, Vn as ForwardEdgeOfBattleAreaOptions, Vr as DEFAULT_ENGAGEMENT_AREA_OPTIONS, Vt as DEFAULT_SCREEN_OPTIONS, W as freezeOrientationOptions, Wi as ControlMeasureFillCapability, Wn as DEFAULT_FLOT_OPTIONS, Wr as DEFAULT_AREA_DEFENSE_OPTIONS, Wt as RetireOptions, X as CONTROL_MEASURE_IDS, Xi as ParamDescriptor, Xn as AttackHelicopterOptions, Xr as FeaturePartProps, Xt as GuardOptions, Y as isKind, Yi as PARAMETER_PRESENTATION_TIERS, Yn as SupportByFireOptions, Yr as ControlMeasureRender, Yt as DEFAULT_GUARD_OPTIONS, Z as CONTROL_MEASURE_METADATA, Zi as ParameterPresentationTier, Zn as DEFAULT_ATTACK_HELICOPTER_OPTIONS, Zr as StyleHints, Zt as DEFAULT_DISRUPT_MISSION_TASK_OPTIONS, _ as point12DrawRule, _i as DEFAULT_BATTLE_POSITION_OPTIONS, _n as BreachOptions, _r as BlockArrowOptions, _t as DEFAULT_FIX_OPTIONS, a as axis1DrawRule, aa as CanonicalTextAmplifiers, ai as DirectionOfSupportingAttackOptions, an as DEFAULT_TACTICAL_ARROW_OPTIONS, ar as GenericTextOptions, at as DEFAULT_OBSTACLE_BYPASS_IMPOSSIBLE_OPTIONS, b as disruptDrawRule, bi as DEFAULT_ENGINEER_WORK_LINE_OPTIONS, bn as DEFAULT_BLOCK_MISSION_TASK_OPTIONS, br as ClassicArrowOptions, bt as DisruptOptions, c as line26DrawRule, ca as TEXT_AMPLIFIER_FIELDS, ci as DEFAULT_DIRECTION_OF_ATTACK_AVIATION_OPTIONS, cn as DEFAULT_COUNTERATTACK_BY_FIRE_OPTIONS, cr as DEFAULT_GENERIC_CIRCLE_OPTIONS, ct as ObstacleBypassDifficultOptions, d as turnDrawRule, da as TextAmplifiers, di as RetainOptions, dn as ClearOptions, dr as GenericRectangleOptions, dt as DEFAULT_MINEFIELD_OPTIONS, ea as parameterPresentationTierRank, ei as SECONDARY_DIRECTION_OF_FIRE_DASH, en as DisengageOptions, er as DEFAULT_RADAR_SEARCH_DOCTRINE_OPTIONS, et as OptionsByKind, f as line1DrawRule, fa as canonicalTextAmplifierKey, fi as DEFAULT_STRONG_POINT_OPTIONS, fn as DEFAULT_CLEAR_OPTIONS, fr as DEFAULT_GENERIC_POLYGON_OPTIONS, ft as MinefieldOptions, g as staticPointDrawRule, ga as ControlMeasureDrawRule, gi as BattlePositionOptions, gn as DEFAULT_BYPASS_OPTIONS, gr as BlockArrowHeadStyle, gt as FixMissionTaskOptions, h as dynamicPointDrawRule, ha as AnchorTransformEvent, hi as DEFAULT_CONTAIN_OPTIONS, hn as BypassOptions, hr as GenericLineOptions, ht as DEFAULT_FIX_MISSION_TASK_OPTIONS, i as rectangleDrawRule, ia as AmplifierPlacements, ii as DEFAULT_DIRECTION_OF_SUPPORTING_ATTACK_OPTIONS, in as DEFAULT_COVER_OPTIONS, ir as DEFAULT_GENERIC_TEXT_OPTIONS, it as listControlMeasureMetadata, j as BaselineFrameNormal, ji as DEFAULT_BOUNDARY_OPTIONS, jn as DEFAULT_BATTLE_HANDOVER_LINE_OPTIONS, jr as PickupZoneOptions, jt as AntitankWallOptions, k as snapToMidpointPerpendicular, ki as unproject, kn as LimitOfAdvanceOptions, kr as DEFAULT_AREA_OF_OPERATIONS_OPTIONS, kt as DEFAULT_FORTIFIED_LINE_OPTIONS, l as line24DrawRule, la as TextAmplifierField, li as DirectionOfAttackAviationOptions, ln as CounterattackOptions, lr as GenericCircleOptions, lt as DEFAULT_OBSTACLE_BYPASS_EASY_OPTIONS, m as attackByFireDrawRule, ma as resolveAmplifierPlacement, mi as ContainOptions, mn as DEFAULT_CANALIZE_OPTIONS, mr as DEFAULT_GENERIC_LINE_OPTIONS, mt as TurnOptions, n as DEFAULT_AMBUSH_OPTIONS, na as resolveParameterSemanticRole, ni as DEFAULT_PRINCIPAL_DIRECTION_OF_FIRE_OPTIONS, nn as DelayOptions, nr as RADAR_SEARCH_DOCTRINE_STROKE_COLOR, nt as getControlMeasureMetadataByValue, o as supportByFireDrawRule, oa as GeneratedLabelKey, oi as DEFAULT_DIRECTION_OF_MAIN_ATTACK_OPTIONS, on as TacticalArrowOptions, or as DEFAULT_GENERIC_SECTOR_OPTIONS, ot as ObstacleBypassImpossibleOptions, p as ambushDrawRule, pa as normalizeTextAmplifiers, pi as StrongPointOptions, pn as CanalizeOptions, pr as GenericPolygonOptions, pt as DEFAULT_TURN_OPTIONS, q as ControlMeasure, qi as ControlMeasureMetadata, qn as DEFAULT_ATTACK_BY_FIRE_OPTIONS, qr as DEFAULT_FINAL_PROTECTIVE_FIRE_OPTIONS, qt as DEFAULT_PENETRATE_OPTIONS, r as sectorDrawRule, ra as AmplifierPlacement, ri as PrincipalDirectionOfFireOptions, rn as CoverOptions, rr as RadarSearchDoctrineOptions, rt as getDefaultOptions, s as line27DrawRule, sa as LabelPlacementOverride, si as DirectionOfMainAttackOptions, sn as CounterattackByFireOptions, sr as GenericSectorOptions, st as DEFAULT_OBSTACLE_BYPASS_DIFFICULT_OPTIONS, t as AmbushOptions, ta as resolveParameterPresentationTier, ti as SecondaryDirectionOfFireOptions, tn as DEFAULT_DELAY_OPTIONS, tr as RADAR_SEARCH_DOCTRINE_FILL_COLOR, tt as getControlMeasureMetadata, u as line23DrawRule, ua as TextAmplifierKey, ui as DEFAULT_RETAIN_OPTIONS, un as DEFAULT_COUNTERATTACK_OPTIONS, ur as DEFAULT_GENERIC_RECTANGLE_OPTIONS, ut as ObstacleBypassEasyOptions, v as penetrateDrawRule, vi as DEFAULT_GENERIC_C2_LINE_OPTIONS, vn as DEFAULT_BREACH_OPTIONS, vr as DEFAULT_BLOCK_ARROW_OPTIONS, vt as FixOptions, w as MidpointPerpendicularDrawRuleOptions, wi as LabelSizeOptions, wn as DEFAULT_LINE_OF_DEPARTURE_CONTACT_OPTIONS, wr as DEFAULT_MAIN_ATTACK_OPTIONS, wt as TurningMovementOptions, x as blockDrawRule, xi as EngineerWorkLineOptions, xn as DEFAULT_PROBABLE_LINE_OF_DEPLOYMENT_OPTIONS, xr as DEFAULT_CLASSIC_ARROW_OPTIONS, xt as BlockOptions, y as centerRadiusDrawRule, yi as GenericC2LineOptions, yn as BlockMissionTaskOptions, yr as ClassicArrowHeadStyle, yt as DEFAULT_DISRUPT_OPTIONS, z as SimpleStyleRender, zi as DEFAULT_STROKE_DASH_CSS_PIXELS, zn as DEFAULT_BRIDGEHEAD_LINE_OPTIONS, zr as DEFAULT_MOBILE_DEFENSE_OPTIONS, zt as DEFAULT_SEIZE_OPTIONS } from "./index-CYa8ELZp.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
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 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, dynamicPointDrawRule, foldsBoxTransformOptions, freezeOrientationOptions, getControlMeasureMetadata, getControlMeasureMetadataByValue, 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 };
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-D9mfP_gv.mjs";
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-BcJiY40G.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 = [
@@ -1,4 +1,4 @@
1
- import { Q as ControlMeasureId, da as TextAmplifiers } from "../index-nz-U5HlG.mjs";
1
+ import { Q as ControlMeasureId, da as TextAmplifiers } from "../index-CYa8ELZp.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-D9mfP_gv.mjs";
1
+ import { a as DEFINITIONS, t as renderControlMeasure } from "../renderControlMeasure-BcJiY40G.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}. */
@@ -214,6 +214,9 @@ function vecNorm(v) {
214
214
  const m = vecMag(v);
215
215
  return m === 0 ? [0, 0] : [v[0] / m, v[1] / m];
216
216
  }
217
+ function midpoint(a, b) {
218
+ return vecScale(vecAdd(a, b), .5);
219
+ }
217
220
  function pointToPointDistance(p1, p2) {
218
221
  const dx = p2[0] - p1[0];
219
222
  const dy = p2[1] - p1[1];
@@ -741,7 +744,7 @@ const SECTOR_ANGLE_SNAP_RADIANS = Math.PI / 36;
741
744
  function derive$9(points) {
742
745
  return clonePositions(points.slice(0, 3));
743
746
  }
744
- function guidePoints$1(points) {
747
+ function guidePoints$2(points) {
745
748
  return points.length < 3 ? clonePositions(points) : [];
746
749
  }
747
750
  /** Snap one radial Sector handle to a true-north angular increment. */
@@ -764,7 +767,7 @@ const sectorDrawRule = {
764
767
  minimumUserPoints: 3,
765
768
  canonicalPointCount: 3,
766
769
  showGuide: true,
767
- guidePoints: guidePoints$1,
770
+ guidePoints: guidePoints$2,
768
771
  constrainAngles,
769
772
  derive: derive$9,
770
773
  transform(event) {
@@ -952,6 +955,28 @@ const turnDrawRule = {
952
955
  }
953
956
  };
954
957
  //#endregion
958
+ //#region src/draw-rules/line11.ts
959
+ function firstFour(points) {
960
+ return clonePositions(points.slice(0, 4));
961
+ }
962
+ function guidePoints$1(points) {
963
+ if (points.length <= 2) return clonePositions(points);
964
+ if (points.length === 3) return [];
965
+ return clonePositions(points.slice(2, 4));
966
+ }
967
+ /** Line11 — four independent anchors defining the two sides of a bridge or gap. */
968
+ const bridgeOrGapDrawRule = {
969
+ id: "line11:bridge-or-gap",
970
+ minimumUserPoints: 4,
971
+ canonicalPointCount: 4,
972
+ showGuide: true,
973
+ guidePoints: guidePoints$1,
974
+ derive: firstFour,
975
+ transform(event) {
976
+ return firstFour(event.next);
977
+ }
978
+ };
979
+ //#endregion
955
980
  //#region src/draw-rules/line23.ts
956
981
  /**
957
982
  * Line23 anchor draw rule for the Clear mission task.
@@ -6402,6 +6427,167 @@ const BLOCK = defineControlMeasure({
6402
6427
  previewSample: { controlPoints: [[0, .4], [0, -.4]] }
6403
6428
  });
6404
6429
  //#endregion
6430
+ //#region src/generators/cm27-protection-areas/bridge-or-gap.ts
6431
+ const FLARE_COMPONENT_RATIO = .25;
6432
+ const DEFAULT_BRIDGE_OR_GAP_OPTIONS = {};
6433
+ const BRIDGE_OR_GAP_METADATA = {
6434
+ id: "bridge-or-gap",
6435
+ name: "Bridge or Gap",
6436
+ description: "An area within a minefield or obstacle belt, free of live mines or obstacles, whose width and direction allow a friendly force to pass through in tactical formation.",
6437
+ entity: "Protection Areas",
6438
+ entityType: "Bridge or Gap",
6439
+ value: "271100",
6440
+ minCoordinates: 4,
6441
+ maxCoordinates: 4,
6442
+ geometry: "line",
6443
+ geometryTypes: ["LineString", "Point"],
6444
+ paints: {
6445
+ stroke: true,
6446
+ fill: "none",
6447
+ text: true
6448
+ },
6449
+ drawRule: "Line11",
6450
+ capturesLabelSize: true,
6451
+ textAmplifiers: [
6452
+ {
6453
+ key: "T",
6454
+ label: "Unique designation",
6455
+ description: "Field T — the bridge or gap's unique designation.",
6456
+ maxLength: 21
6457
+ },
6458
+ {
6459
+ key: "W",
6460
+ label: "Effective from (DTG)",
6461
+ description: "Field W — date-time group the bridge or gap becomes effective.",
6462
+ placeholder: "051030Z",
6463
+ maxLength: 16
6464
+ },
6465
+ {
6466
+ key: "W1",
6467
+ label: "Effective to (DTG)",
6468
+ description: "Field W1 — date-time group the bridge or gap ceases to be effective.",
6469
+ placeholder: "051600Z",
6470
+ maxLength: 16
6471
+ }
6472
+ ]
6473
+ };
6474
+ /**
6475
+ * One side: its two anchors, plus a 45-degree flare at each end splaying away
6476
+ * from the gap. `outward` only picks which way the side's own perpendicular
6477
+ * points -- the flare stays square to this side, so both ends flare by the
6478
+ * same quarter-length in each axis.
6479
+ */
6480
+ function sideCoordinates(start, end, outward) {
6481
+ const side = vecSub(end, start);
6482
+ const length = vecMag(side);
6483
+ if (length < 1e-6) return void 0;
6484
+ const along = vecScale(side, 1 / length);
6485
+ const normal = [-along[1], along[0]];
6486
+ const component = length * FLARE_COMPONENT_RATIO;
6487
+ const flareOut = vecScale(normal, vecDot(normal, outward) >= 0 ? component : -component);
6488
+ return {
6489
+ coordinates: [
6490
+ vecAdd(vecAdd(start, vecScale(along, -component)), flareOut),
6491
+ start,
6492
+ end,
6493
+ vecAdd(vecAdd(end, vecScale(along, component)), flareOut)
6494
+ ].map((point) => unproject(point[0], point[1])),
6495
+ along,
6496
+ length
6497
+ };
6498
+ }
6499
+ function addLabels(features, frame, options, textAmplifiers) {
6500
+ const { points, side1, side2, across, center } = frame;
6501
+ const averageDirection = vecAdd(side1.along, side2.along);
6502
+ const along = vecMag(averageDirection) >= 1e-6 ? vecNorm(averageDirection) : side1.along;
6503
+ const sizeProps = labelSizeProps(options);
6504
+ const labels = [];
6505
+ if (textAmplifiers.T) pushLabel(labels, center, textAmplifiers.T, labelRotationAlong(along), sizeProps, void 0, "T");
6506
+ const row = [];
6507
+ if (textAmplifiers.W) row.push([
6508
+ "W",
6509
+ textAmplifiers.W,
6510
+ -1,
6511
+ "end"
6512
+ ]);
6513
+ if (textAmplifiers.W1) row.push([
6514
+ "W1",
6515
+ textAmplifiers.W1,
6516
+ 1,
6517
+ "start"
6518
+ ]);
6519
+ if (row.length > 0) {
6520
+ const averageLength = (side1.length + side2.length) / 2;
6521
+ const windowRotation = labelRotationAlong(across);
6522
+ const rowCenter = vecAdd(midpoint(points[1], points[3]), vecScale(along, averageLength * FLARE_COMPONENT_RATIO + resolveLabelOffsetMeters(options, 1)));
6523
+ const separatorOffset = resolveLabelOffsetMeters(options, .15);
6524
+ const paired = row.length === 2;
6525
+ for (const [field, text, sign, anchor] of row) pushLabel(labels, paired ? vecAdd(rowCenter, vecScale(across, sign * separatorOffset)) : rowCenter, text, windowRotation, sizeProps, paired ? anchor : void 0, field);
6526
+ }
6527
+ features.push(...labels);
6528
+ }
6529
+ function createBridgeOrGap(coordinates, options = {}, textAmplifiers = {}) {
6530
+ const points = coordinates.slice(0, 4).map((position) => project(position[0], position[1]));
6531
+ const [p1, p2, p3, p4] = points;
6532
+ const mid12 = midpoint(p1, p2);
6533
+ const mid34 = midpoint(p3, p4);
6534
+ const betweenMidpoints = vecSub(mid12, mid34);
6535
+ const outward1 = vecMag(betweenMidpoints) >= 1e-6 ? vecNorm(betweenMidpoints) : vecNorm([p1[1] - p2[1], p2[0] - p1[0]]);
6536
+ const outward2 = vecScale(outward1, -1);
6537
+ const side1 = sideCoordinates(p1, p2, outward1);
6538
+ const side2 = sideCoordinates(p3, p4, outward2);
6539
+ if (!side1 || !side2) return {
6540
+ type: "FeatureCollection",
6541
+ features: []
6542
+ };
6543
+ const features = [{
6544
+ type: "Feature",
6545
+ properties: { part: "side-1" },
6546
+ geometry: {
6547
+ type: "LineString",
6548
+ coordinates: side1.coordinates
6549
+ }
6550
+ }, {
6551
+ type: "Feature",
6552
+ properties: { part: "side-2" },
6553
+ geometry: {
6554
+ type: "LineString",
6555
+ coordinates: side2.coordinates
6556
+ }
6557
+ }];
6558
+ addLabels(features, {
6559
+ points,
6560
+ side1,
6561
+ side2,
6562
+ across: outward2,
6563
+ center: midpoint(mid12, mid34)
6564
+ }, options, textAmplifiers);
6565
+ return {
6566
+ type: "FeatureCollection",
6567
+ features
6568
+ };
6569
+ }
6570
+ const BRIDGE_OR_GAP = defineControlMeasure({
6571
+ metadata: BRIDGE_OR_GAP_METADATA,
6572
+ generator: createBridgeOrGap,
6573
+ defaultOptions: DEFAULT_BRIDGE_OR_GAP_OPTIONS,
6574
+ rule: bridgeOrGapDrawRule,
6575
+ previewSample: {
6576
+ controlPoints: [
6577
+ [-.35, -.7],
6578
+ [-.35, .45],
6579
+ [.35, -.7],
6580
+ [.35, .45]
6581
+ ],
6582
+ textAmplifiers: {
6583
+ T: "T",
6584
+ W: "W",
6585
+ W1: "W1"
6586
+ },
6587
+ options: { labelSize: 55 }
6588
+ }
6589
+ });
6590
+ //#endregion
6405
6591
  //#region src/generators/cm99-generic-arrows/blockArrow.ts
6406
6592
  const DEFAULT_SMOOTH_RESOLUTION$5 = 12;
6407
6593
  const MIN_SMOOTH_RESOLUTION$1 = 2;
@@ -16076,6 +16262,7 @@ const DEFINITIONS = {
16076
16262
  }
16077
16263
  }),
16078
16264
  block: BLOCK,
16265
+ "bridge-or-gap": BRIDGE_OR_GAP,
16079
16266
  disrupt: DISRUPT,
16080
16267
  fix: FIX,
16081
16268
  "fix-mission-task": FIX_MISSION_TASK,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@orbat-mapper/control-measures",
3
- "version": "0.9.0",
3
+ "version": "0.10.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",