@orbat-mapper/control-measures 0.2.0-alpha.26 → 0.2.0-alpha.28
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{index-BxApuW__.d.mts → index-J_5z80SV.d.mts} +52 -5
- package/dist/index.d.mts +2 -2
- package/dist/index.mjs +1 -1
- package/dist/preview/index.d.mts +6 -3
- package/dist/preview/index.mjs +20 -5
- package/dist/{renderControlMeasure-f_N1HeUd.mjs → renderControlMeasure-CzvFNqY4.mjs} +414 -20
- package/package.json +1 -1
|
@@ -293,6 +293,40 @@ interface ControlMeasureMetadata {
|
|
|
293
293
|
* definition means adding such a measure stays a one-file change (ADR-0013).
|
|
294
294
|
*/
|
|
295
295
|
capturesLabelSize?: boolean;
|
|
296
|
+
/**
|
|
297
|
+
* Static, per-kind declaration of what a rendered instance can paint — used
|
|
298
|
+
* by a host editor to decide which style controls (stroke color/width,
|
|
299
|
+
* fill toggle/pattern/color, text color) are meaningful to show for this
|
|
300
|
+
* kind. It describes the *kind*, not a particular instance: a `filled`
|
|
301
|
+
* boolean option still governs whether any given instance is actually
|
|
302
|
+
* filled, this only says whether fill control is meaningful at all.
|
|
303
|
+
*/
|
|
304
|
+
paints: ControlMeasurePaintCapability;
|
|
305
|
+
}
|
|
306
|
+
/**
|
|
307
|
+
* A control measure's fill capability, per {@link ControlMeasurePaintCapability.fill}.
|
|
308
|
+
*
|
|
309
|
+
* - `"none"` — no emitted part is ever filled; a fill/fillColor/fillPattern
|
|
310
|
+
* control would be inert.
|
|
311
|
+
* - `"fixed"` — a filled part exists, but the generator pins its
|
|
312
|
+
* `fillPattern` (a solid accent like an echelon marker, or a doctrinal
|
|
313
|
+
* hatch like Limited Access Area's back-hatch) — `cm.style.fillPattern`
|
|
314
|
+
* never reaches it. `fillColor` is *not* pinned, so a fill color override
|
|
315
|
+
* still reaches the part; only the pattern control is inert.
|
|
316
|
+
* - `"user"` — a filled part exists whose pattern the generator leaves
|
|
317
|
+
* unset, so `cm.style.fillPattern` reaches the output. These are exactly
|
|
318
|
+
* the kinds governed by a `filled` boolean {@link ParamDescriptor}
|
|
319
|
+
* (polygon, rectangle, circle, block-arrow).
|
|
320
|
+
*/
|
|
321
|
+
type ControlMeasureFillCapability = "none" | "fixed" | "user";
|
|
322
|
+
/** What a rendered control-measure kind can paint — see {@link ControlMeasureMetadata.paints}. */
|
|
323
|
+
interface ControlMeasurePaintCapability {
|
|
324
|
+
/** Whether any emitted part is stroked (non-Point) geometry — gates a stroke color/width control. */
|
|
325
|
+
stroke: boolean;
|
|
326
|
+
/** Whether/how any emitted part is filled — see {@link ControlMeasureFillCapability}. */
|
|
327
|
+
fill: ControlMeasureFillCapability;
|
|
328
|
+
/** Whether the kind emits text label features — gates a text color control. */
|
|
329
|
+
text: boolean;
|
|
296
330
|
}
|
|
297
331
|
//#endregion
|
|
298
332
|
//#region src/define.d.ts
|
|
@@ -715,7 +749,7 @@ interface ControlMeasureStyle {
|
|
|
715
749
|
fillColor?: string;
|
|
716
750
|
/**
|
|
717
751
|
* How a filled part's interior is painted. `"solid"` is explicit so a
|
|
718
|
-
* measure can override a patterned layer default (e.g. a
|
|
752
|
+
* measure can override a patterned layer default (e.g. a hatch fill set
|
|
719
753
|
* at the façade). Pattern lines are drawn in the resolved fill color —
|
|
720
754
|
* alpha included, there is no separate opacity field. Renderers that
|
|
721
755
|
* cannot draw a pattern degrade to solid.
|
|
@@ -733,11 +767,26 @@ interface ControlMeasureStyle {
|
|
|
733
767
|
* Out-of-range values clamp to `[0, 1]`. See ADR-0040.
|
|
734
768
|
*/
|
|
735
769
|
opacity?: number;
|
|
770
|
+
/**
|
|
771
|
+
* Render a contrast-aware halo behind label glyphs so text stays legible on
|
|
772
|
+
* busy backgrounds. Cascades like any other hint (graphicsStyle → measure →
|
|
773
|
+
* generator), letting a host switch halos on for every labeled measure
|
|
774
|
+
* rather than only the generic Text graphic.
|
|
775
|
+
*
|
|
776
|
+
* Text-only: the renderer applies it to features that carry `text` and drops
|
|
777
|
+
* it everywhere else, so a layer-level `true` never leaks onto plain stroked
|
|
778
|
+
* or filled parts. The halo *color* is not authored here — it is derived per
|
|
779
|
+
* feature from the resolved text color, so each label gets a halo that
|
|
780
|
+
* actually contrasts with it. Unlike the other hints this one is consumed by
|
|
781
|
+
* the renderer and lifted to a top-level `textHalo` feature property; it is
|
|
782
|
+
* never emitted on `properties.style`. See ADR-0042.
|
|
783
|
+
*/
|
|
784
|
+
textHalo?: boolean;
|
|
736
785
|
}
|
|
737
786
|
/**
|
|
738
787
|
* How a filled part's interior is painted. See `ControlMeasureStyle.fillPattern`.
|
|
739
788
|
*/
|
|
740
|
-
type FillPattern = "solid" | "
|
|
789
|
+
type FillPattern = "solid" | "hatch" | "reverse-hatch" | "cross-hatch" | "horizontal" | "vertical" | "dots";
|
|
741
790
|
//#endregion
|
|
742
791
|
//#region src/internal/area-labels.d.ts
|
|
743
792
|
/** Shared placement options for the centered-label area measures. */
|
|
@@ -1672,8 +1721,6 @@ interface GenericTextOptions {
|
|
|
1672
1721
|
* @default 200
|
|
1673
1722
|
*/
|
|
1674
1723
|
maxSizePixels?: number;
|
|
1675
|
-
/** Contrasting halo behind the glyphs so the text stays legible on busy backgrounds. @default false */
|
|
1676
|
-
halo?: boolean;
|
|
1677
1724
|
}
|
|
1678
1725
|
declare const DEFAULT_GENERIC_TEXT_OPTIONS: GenericTextOptions;
|
|
1679
1726
|
declare function createGenericText(coordinates: Position[], options?: GenericTextOptions): FeatureCollection<Point, Record<string, unknown>>;
|
|
@@ -2880,4 +2927,4 @@ interface AmbushOptions {
|
|
|
2880
2927
|
}
|
|
2881
2928
|
declare const DEFAULT_AMBUSH_OPTIONS: Required<AmbushOptions>;
|
|
2882
2929
|
//#endregion
|
|
2883
|
-
export { DEFAULT_OBSTACLE_BYPASS_DIFFICULT_OPTIONS as $, DEFAULT_DIRECTION_OF_ATTACK_AVIATION_OPTIONS as $n, DEFAULT_SUPPORT_BY_FIRE_OPTIONS as $t, roundToFixed as A, PickupZoneOptions as An,
|
|
2930
|
+
export { DEFAULT_OBSTACLE_BYPASS_DIFFICULT_OPTIONS as $, DEFAULT_DIRECTION_OF_ATTACK_AVIATION_OPTIONS as $n, DEFAULT_SUPPORT_BY_FIRE_OPTIONS as $t, roundToFixed as A, PickupZoneOptions as An, CanonicalTextAmplifiers as Ar, DEFAULT_COVER_OPTIONS as At, cloneControlMeasure as B, EncirclementOptions as Bn, AnchorTransformEvent as Br, DEFAULT_BREACH_OPTIONS as Bt, BaselineFrame as C, DEFAULT_MAIN_ATTACK_OPTIONS as Cn, ControlMeasureGeometryType as Cr, DEFAULT_SCREEN_OPTIONS as Ct, createBaselineFrame as D, AreaOfOperationsOptions as Dn, TextAmplifierDescriptor as Dr, DEFAULT_DELAY_OPTIONS as Dt, BaselineFrameOrigin as E, computeInitialWidthPoint as En, ParamDescriptor as Er, GuardOptions as Et, applyBoxTransformOptions as F, AssemblyAreaOptions as Fn, TextAmplifierKey as Fr, CanalizeOptions as Ft, ControlMeasureKind as G, StyleHints as Gn, DEFAULT_HANDOVER_LINE_OPTIONS as Gt, CONTROL_MEASURE_IDS as H, FinalProtectiveFireOptions as Hn, DEFAULT_BLOCK_MISSION_TASK_OPTIONS as Ht, freezeOrientationOptions as I, DEFAULT_ASSEMBLY_AREA_OPTIONS as In, TextAmplifiers as Ir, DEFAULT_CANALIZE_OPTIONS as It, getControlMeasureMetadataByValue as J, PrincipalDirectionOfFireOptions as Jn, PhaseLineOptions as Jt, OptionsByKind as K, controlMeasureIdFromFeature as Kn, HandoverLineOptions as Kt, RenderOptions as L, AreaDefenseOptions as Ln, canonicalTextAmplifierKey as Lr, BypassOptions as Lt, SimpleStyleRender as M, LandingZoneOptions as Mn, LabelPlacementOverride as Mr, TacticalArrowOptions as Mt, toSimpleStyle as N, DEFAULT_JOINT_TACTICAL_ACTION_AREA_OPTIONS as Nn, TEXT_AMPLIFIER_FIELDS as Nr, ClearOptions as Nt, EPSILON as O, DEFAULT_AREA_OF_OPERATIONS_OPTIONS as On, AmplifierPlacement as Or, DelayOptions as Ot, resolveStyleHints as P, JointTacticalActionAreaOptions as Pn, TextAmplifierField as Pr, DEFAULT_CLEAR_OPTIONS as Pt, ObstacleBypassImpossibleOptions as Q, DirectionOfMainAttackOptions as Qn, DEFAULT_ATTACK_BY_FIRE_OPTIONS as Qt, renderControlMeasure as R, DEFAULT_AREA_DEFENSE_OPTIONS as Rn, normalizeTextAmplifiers as Rr, DEFAULT_BYPASS_OPTIONS as Rt, snapToMidpointPerpendicular as S, SupportingAttackOptions as Sn, ControlMeasureGeometry as Sr, DEFAULT_ANTITANK_DITCH_OPTIONS as St, BaselineFrameOptions as T, calculateMetrics as Tn, ControlMeasurePaintCapability as Tr, DEFAULT_GUARD_OPTIONS as Tt, CONTROL_MEASURE_METADATA as U, ControlMeasureRender as Un, BattleHandoverLineOptions as Ut, isKind as V, DEFAULT_FINAL_PROTECTIVE_FIRE_OPTIONS as Vn, ControlMeasureDrawRule as Vr, BlockMissionTaskOptions as Vt, ControlMeasureId as W, FeaturePartProps as Wn, DEFAULT_BATTLE_HANDOVER_LINE_OPTIONS as Wt, listControlMeasureMetadata as X, DirectionOfSupportingAttackOptions as Xn, FLOTOptions as Xt, getDefaultOptions as Y, DEFAULT_DIRECTION_OF_SUPPORTING_ATTACK_OPTIONS as Yn, DEFAULT_FLOT_OPTIONS as Yt, DEFAULT_OBSTACLE_BYPASS_IMPOSSIBLE_OPTIONS as Z, DEFAULT_DIRECTION_OF_MAIN_ATTACK_OPTIONS as Zn, AttackByFireOptions as Zt, MidpointPerpendicularDrawRuleOptions as _, DEFAULT_BLOCK_ARROW_OPTIONS as _n, unproject as _r, DEFAULT_FORTIFIED_LINE_OPTIONS as _t, supportByFireDrawRule as a, DEFAULT_GENERIC_TEXT_OPTIONS as an, ControlMeasureStyle as ar, DEFAULT_FIX_OPTIONS as at, getMidpointPerpendicularSignedDistance as b, DEFAULT_CLASSIC_ARROW_OPTIONS as bn, BoxTransformDelta as br, DEFAULT_ANTITANK_WALL_OPTIONS as bt, line23DrawRule as c, GenericCircleOptions as cn, GenericC2LineOptions as cr, DisruptOptions as ct, ambushDrawRule as d, DEFAULT_GENERIC_POLYGON_OPTIONS as dn, DEFAULT_LIGHT_LINE_OPTIONS as dr, DEFAULT_TURNING_MOVEMENT_OPTIONS as dt, SupportByFireOptions as en, DirectionOfAttackAviationOptions as er, ObstacleBypassDifficultOptions as et, attackByFireDrawRule as f, GenericPolygonOptions as fn, LightLineOptions as fr, TurningMovementOptions as ft, blockDrawRule as g, BlockArrowOptions as gn, project as gr, FortifiedAreaOptions as gt, disruptDrawRule as h, BlockArrowHeadStyle as hn, haversineDistance as hr, DEFAULT_FORTIFIED_AREA_OPTIONS as ht, axis1DrawRule as i, DEFAULT_AIRBORNE_ATTACK_OPTIONS as in, DEFAULT_BATTLE_POSITION_OPTIONS as ir, TurnOptions as it, SimpleStyleProps as j, DEFAULT_LANDING_ZONE_OPTIONS as jn, GeneratedLabelKey as jr, DEFAULT_TACTICAL_ARROW_OPTIONS as jt, getMetersPerPixel as k, DEFAULT_PICKUP_ZONE_OPTIONS as kn, AmplifierPlacements as kr, CoverOptions as kt, turnDrawRule as l, DEFAULT_GENERIC_RECTANGLE_OPTIONS as ln, DEFAULT_ENGINEER_WORK_LINE_OPTIONS as lr, BlockOptions as lt, centerRadiusDrawRule as m, GenericLineOptions as mn, Point2D as mr, FrontalAttackOptions as mt, DEFAULT_AMBUSH_OPTIONS as n, DEFAULT_ATTACK_HELICOPTER_OPTIONS as nn, StrongPointOptions as nr, ObstacleBypassEasyOptions as nt, line26DrawRule as o, GenericTextOptions as on, FillPattern as or, FixOptions as ot, point12DrawRule as p, DEFAULT_GENERIC_LINE_OPTIONS as pn, LabelSizeOptions as pr, DEFAULT_FRONTAL_ATTACK_OPTIONS as pt, getControlMeasureMetadata as q, DEFAULT_PRINCIPAL_DIRECTION_OF_FIRE_OPTIONS as qn, DEFAULT_PHASE_LINE_OPTIONS as qt, rectangleDrawRule as r, AirborneAttackOptions as rn, BattlePositionOptions as rr, DEFAULT_TURN_OPTIONS as rt, line24DrawRule as s, DEFAULT_GENERIC_CIRCLE_OPTIONS as sn, DEFAULT_GENERIC_C2_LINE_OPTIONS as sr, DEFAULT_DISRUPT_OPTIONS as st, AmbushOptions as t, AttackHelicopterOptions as tn, DEFAULT_STRONG_POINT_OPTIONS as tr, DEFAULT_OBSTACLE_BYPASS_EASY_OPTIONS as tt, line1DrawRule as u, GenericRectangleOptions as un, EngineerWorkLineOptions as ur, DEFAULT_BLOCK_OPTIONS as ut, computeDefaultMidpointPerpendicularPoint as v, ClassicArrowHeadStyle as vn, BoundaryOptions as vr, FortifiedLineOptions as vt, BaselineFrameNormal as w, MainAttackOptions as wn, ControlMeasureMetadata as wr, ScreenOptions as wt, pointOnMidpointPerpendicularAxis as x, DEFAULT_SUPPORTING_ATTACK_OPTIONS as xn, ControlMeasureFillCapability as xr, AntitankDitchOptions as xt, createMidpointPerpendicularDrawRule as y, ClassicArrowOptions as yn, DEFAULT_BOUNDARY_OPTIONS as yr, AntitankWallOptions as yt, ControlMeasure as z, DEFAULT_ENCIRCLEMENT_OPTIONS as zn, resolveAmplifierPlacement as zr, BreachOptions as zt };
|
package/dist/index.d.mts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { $ as DEFAULT_OBSTACLE_BYPASS_DIFFICULT_OPTIONS, $n as DEFAULT_DIRECTION_OF_ATTACK_AVIATION_OPTIONS, $t as DEFAULT_SUPPORT_BY_FIRE_OPTIONS, A as roundToFixed, An as PickupZoneOptions, Ar as
|
|
2
|
-
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 BypassOptions, CONTROL_MEASURE_IDS, CONTROL_MEASURE_METADATA, type CanalizeOptions, type CanonicalTextAmplifiers, type ClassicArrowHeadStyle, type ClassicArrowOptions, type ClearOptions, type ControlMeasure, type ControlMeasureDrawRule, type ControlMeasureGeometry, type ControlMeasureGeometryType, type ControlMeasureId, type ControlMeasureKind, type ControlMeasureMetadata, type ControlMeasureRender, type ControlMeasureStyle, 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_BYPASS_OPTIONS, DEFAULT_CANALIZE_OPTIONS, DEFAULT_CLASSIC_ARROW_OPTIONS, DEFAULT_CLEAR_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_DISRUPT_OPTIONS, DEFAULT_ENCIRCLEMENT_OPTIONS, DEFAULT_ENGINEER_WORK_LINE_OPTIONS, DEFAULT_FINAL_PROTECTIVE_FIRE_OPTIONS, DEFAULT_FIX_OPTIONS, DEFAULT_FLOT_OPTIONS, DEFAULT_FORTIFIED_AREA_OPTIONS, DEFAULT_FORTIFIED_LINE_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_TEXT_OPTIONS, DEFAULT_GUARD_OPTIONS, DEFAULT_HANDOVER_LINE_OPTIONS, DEFAULT_JOINT_TACTICAL_ACTION_AREA_OPTIONS, DEFAULT_LANDING_ZONE_OPTIONS, DEFAULT_LIGHT_LINE_OPTIONS, DEFAULT_MAIN_ATTACK_OPTIONS, DEFAULT_OBSTACLE_BYPASS_DIFFICULT_OPTIONS, DEFAULT_OBSTACLE_BYPASS_EASY_OPTIONS, DEFAULT_OBSTACLE_BYPASS_IMPOSSIBLE_OPTIONS, DEFAULT_PHASE_LINE_OPTIONS, DEFAULT_PICKUP_ZONE_OPTIONS, DEFAULT_PRINCIPAL_DIRECTION_OF_FIRE_OPTIONS, DEFAULT_SCREEN_OPTIONS, DEFAULT_STRONG_POINT_OPTIONS, DEFAULT_SUPPORTING_ATTACK_OPTIONS, DEFAULT_SUPPORT_BY_FIRE_OPTIONS, DEFAULT_TACTICAL_ARROW_OPTIONS, DEFAULT_TURNING_MOVEMENT_OPTIONS, DEFAULT_TURN_OPTIONS, type DelayOptions, type DirectionOfAttackAviationOptions, type DirectionOfMainAttackOptions, type DirectionOfSupportingAttackOptions, type DisruptOptions, EPSILON, type EncirclementOptions, type EngineerWorkLineOptions, type FLOTOptions, type FeaturePartProps, type FillPattern, type FinalProtectiveFireOptions, type FixOptions, type FortifiedAreaOptions, type FortifiedLineOptions, type FrontalAttackOptions, type GeneratedLabelKey, type GenericC2LineOptions, type GenericCircleOptions, type GenericLineOptions, type GenericPolygonOptions, type GenericRectangleOptions, type GenericTextOptions, type GuardOptions, type HandoverLineOptions, type JointTacticalActionAreaOptions, type LabelPlacementOverride, type LabelSizeOptions, type LandingZoneOptions, type LightLineOptions, type MainAttackOptions, type MidpointPerpendicularDrawRuleOptions, type ObstacleBypassDifficultOptions, type ObstacleBypassEasyOptions, type ObstacleBypassImpossibleOptions, type OptionsByKind, type ParamDescriptor, type PhaseLineOptions, type PickupZoneOptions, type Point2D, type PrincipalDirectionOfFireOptions, type RenderOptions, type ScreenOptions, 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, ambushDrawRule, applyBoxTransformOptions, attackByFireDrawRule, axis1DrawRule, blockDrawRule, calculateMetrics, canonicalTextAmplifierKey, centerRadiusDrawRule, cloneControlMeasure, computeDefaultMidpointPerpendicularPoint, computeInitialWidthPoint, controlMeasureIdFromFeature, createBaselineFrame, createMidpointPerpendicularDrawRule, disruptDrawRule, freezeOrientationOptions, getControlMeasureMetadata, getControlMeasureMetadataByValue, getDefaultOptions, getMetersPerPixel, getMidpointPerpendicularSignedDistance, haversineDistance, isKind, line1DrawRule, line23DrawRule, line24DrawRule, line26DrawRule, listControlMeasureMetadata, normalizeTextAmplifiers, point12DrawRule, pointOnMidpointPerpendicularAxis, project, rectangleDrawRule, renderControlMeasure, resolveAmplifierPlacement, resolveStyleHints, roundToFixed, snapToMidpointPerpendicular, supportByFireDrawRule, toSimpleStyle, turnDrawRule, unproject };
|
|
1
|
+
import { $ as DEFAULT_OBSTACLE_BYPASS_DIFFICULT_OPTIONS, $n as DEFAULT_DIRECTION_OF_ATTACK_AVIATION_OPTIONS, $t as DEFAULT_SUPPORT_BY_FIRE_OPTIONS, A as roundToFixed, An as PickupZoneOptions, Ar as CanonicalTextAmplifiers, At as DEFAULT_COVER_OPTIONS, B as cloneControlMeasure, Bn as EncirclementOptions, Br as AnchorTransformEvent, Bt as DEFAULT_BREACH_OPTIONS, C as BaselineFrame, Cn as DEFAULT_MAIN_ATTACK_OPTIONS, Cr as ControlMeasureGeometryType, Ct as DEFAULT_SCREEN_OPTIONS, D as createBaselineFrame, Dn as AreaOfOperationsOptions, Dr as TextAmplifierDescriptor, Dt as DEFAULT_DELAY_OPTIONS, E as BaselineFrameOrigin, En as computeInitialWidthPoint, Er as ParamDescriptor, Et as GuardOptions, F as applyBoxTransformOptions, Fn as AssemblyAreaOptions, Fr as TextAmplifierKey, Ft as CanalizeOptions, G as ControlMeasureKind, Gn as StyleHints, Gt as DEFAULT_HANDOVER_LINE_OPTIONS, H as CONTROL_MEASURE_IDS, Hn as FinalProtectiveFireOptions, Ht as DEFAULT_BLOCK_MISSION_TASK_OPTIONS, I as freezeOrientationOptions, In as DEFAULT_ASSEMBLY_AREA_OPTIONS, Ir as TextAmplifiers, It as DEFAULT_CANALIZE_OPTIONS, J as getControlMeasureMetadataByValue, Jn as PrincipalDirectionOfFireOptions, Jt as PhaseLineOptions, K as OptionsByKind, Kn as controlMeasureIdFromFeature, Kt as HandoverLineOptions, L as RenderOptions, Ln as AreaDefenseOptions, Lr as canonicalTextAmplifierKey, Lt as BypassOptions, M as SimpleStyleRender, Mn as LandingZoneOptions, Mr as LabelPlacementOverride, Mt as TacticalArrowOptions, N as toSimpleStyle, Nn as DEFAULT_JOINT_TACTICAL_ACTION_AREA_OPTIONS, Nr as TEXT_AMPLIFIER_FIELDS, Nt as ClearOptions, O as EPSILON, On as DEFAULT_AREA_OF_OPERATIONS_OPTIONS, Or as AmplifierPlacement, Ot as DelayOptions, P as resolveStyleHints, Pn as JointTacticalActionAreaOptions, Pr as TextAmplifierField, Pt as DEFAULT_CLEAR_OPTIONS, Q as ObstacleBypassImpossibleOptions, Qn as DirectionOfMainAttackOptions, Qt as DEFAULT_ATTACK_BY_FIRE_OPTIONS, R as renderControlMeasure, Rn as DEFAULT_AREA_DEFENSE_OPTIONS, Rr as normalizeTextAmplifiers, Rt as DEFAULT_BYPASS_OPTIONS, S as snapToMidpointPerpendicular, Sn as SupportingAttackOptions, Sr as ControlMeasureGeometry, St as DEFAULT_ANTITANK_DITCH_OPTIONS, T as BaselineFrameOptions, Tn as calculateMetrics, Tr as ControlMeasurePaintCapability, Tt as DEFAULT_GUARD_OPTIONS, U as CONTROL_MEASURE_METADATA, Un as ControlMeasureRender, Ut as BattleHandoverLineOptions, V as isKind, Vn as DEFAULT_FINAL_PROTECTIVE_FIRE_OPTIONS, Vr as ControlMeasureDrawRule, Vt as BlockMissionTaskOptions, W as ControlMeasureId, Wn as FeaturePartProps, Wt as DEFAULT_BATTLE_HANDOVER_LINE_OPTIONS, X as listControlMeasureMetadata, Xn as DirectionOfSupportingAttackOptions, Xt as FLOTOptions, Y as getDefaultOptions, Yn as DEFAULT_DIRECTION_OF_SUPPORTING_ATTACK_OPTIONS, Yt as DEFAULT_FLOT_OPTIONS, Z as DEFAULT_OBSTACLE_BYPASS_IMPOSSIBLE_OPTIONS, Zn as DEFAULT_DIRECTION_OF_MAIN_ATTACK_OPTIONS, Zt as AttackByFireOptions, _ as MidpointPerpendicularDrawRuleOptions, _n as DEFAULT_BLOCK_ARROW_OPTIONS, _r as unproject, _t as DEFAULT_FORTIFIED_LINE_OPTIONS, a as supportByFireDrawRule, an as DEFAULT_GENERIC_TEXT_OPTIONS, ar as ControlMeasureStyle, at as DEFAULT_FIX_OPTIONS, b as getMidpointPerpendicularSignedDistance, bn as DEFAULT_CLASSIC_ARROW_OPTIONS, br as BoxTransformDelta, bt as DEFAULT_ANTITANK_WALL_OPTIONS, c as line23DrawRule, cn as GenericCircleOptions, cr as GenericC2LineOptions, ct as DisruptOptions, d as ambushDrawRule, dn as DEFAULT_GENERIC_POLYGON_OPTIONS, dr as DEFAULT_LIGHT_LINE_OPTIONS, dt as DEFAULT_TURNING_MOVEMENT_OPTIONS, en as SupportByFireOptions, er as DirectionOfAttackAviationOptions, et as ObstacleBypassDifficultOptions, f as attackByFireDrawRule, fn as GenericPolygonOptions, fr as LightLineOptions, ft as TurningMovementOptions, g as blockDrawRule, gn as BlockArrowOptions, gr as project, gt as FortifiedAreaOptions, h as disruptDrawRule, hn as BlockArrowHeadStyle, hr as haversineDistance, ht as DEFAULT_FORTIFIED_AREA_OPTIONS, i as axis1DrawRule, in as DEFAULT_AIRBORNE_ATTACK_OPTIONS, ir as DEFAULT_BATTLE_POSITION_OPTIONS, it as TurnOptions, j as SimpleStyleProps, jn as DEFAULT_LANDING_ZONE_OPTIONS, jr as GeneratedLabelKey, jt as DEFAULT_TACTICAL_ARROW_OPTIONS, k as getMetersPerPixel, kn as DEFAULT_PICKUP_ZONE_OPTIONS, kr as AmplifierPlacements, kt as CoverOptions, l as turnDrawRule, ln as DEFAULT_GENERIC_RECTANGLE_OPTIONS, lr as DEFAULT_ENGINEER_WORK_LINE_OPTIONS, lt as BlockOptions, m as centerRadiusDrawRule, mn as GenericLineOptions, mr as Point2D, mt as FrontalAttackOptions, n as DEFAULT_AMBUSH_OPTIONS, nn as DEFAULT_ATTACK_HELICOPTER_OPTIONS, nr as StrongPointOptions, nt as ObstacleBypassEasyOptions, o as line26DrawRule, on as GenericTextOptions, or as FillPattern, ot as FixOptions, p as point12DrawRule, pn as DEFAULT_GENERIC_LINE_OPTIONS, pr as LabelSizeOptions, pt as DEFAULT_FRONTAL_ATTACK_OPTIONS, q as getControlMeasureMetadata, qn as DEFAULT_PRINCIPAL_DIRECTION_OF_FIRE_OPTIONS, qt as DEFAULT_PHASE_LINE_OPTIONS, r as rectangleDrawRule, rn as AirborneAttackOptions, rr as BattlePositionOptions, rt as DEFAULT_TURN_OPTIONS, s as line24DrawRule, sn as DEFAULT_GENERIC_CIRCLE_OPTIONS, sr as DEFAULT_GENERIC_C2_LINE_OPTIONS, st as DEFAULT_DISRUPT_OPTIONS, t as AmbushOptions, tn as AttackHelicopterOptions, tr as DEFAULT_STRONG_POINT_OPTIONS, tt as DEFAULT_OBSTACLE_BYPASS_EASY_OPTIONS, u as line1DrawRule, un as GenericRectangleOptions, ur as EngineerWorkLineOptions, ut as DEFAULT_BLOCK_OPTIONS, v as computeDefaultMidpointPerpendicularPoint, vn as ClassicArrowHeadStyle, vr as BoundaryOptions, vt as FortifiedLineOptions, w as BaselineFrameNormal, wn as MainAttackOptions, wr as ControlMeasureMetadata, wt as ScreenOptions, x as pointOnMidpointPerpendicularAxis, xn as DEFAULT_SUPPORTING_ATTACK_OPTIONS, xr as ControlMeasureFillCapability, xt as AntitankDitchOptions, y as createMidpointPerpendicularDrawRule, yn as ClassicArrowOptions, yr as DEFAULT_BOUNDARY_OPTIONS, yt as AntitankWallOptions, z as ControlMeasure, zn as DEFAULT_ENCIRCLEMENT_OPTIONS, zr as resolveAmplifierPlacement, zt as BreachOptions } from "./index-J_5z80SV.mjs";
|
|
2
|
+
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 BypassOptions, CONTROL_MEASURE_IDS, CONTROL_MEASURE_METADATA, type CanalizeOptions, type CanonicalTextAmplifiers, type ClassicArrowHeadStyle, type ClassicArrowOptions, type ClearOptions, type ControlMeasure, type ControlMeasureDrawRule, type ControlMeasureFillCapability, type ControlMeasureGeometry, type ControlMeasureGeometryType, type ControlMeasureId, type ControlMeasureKind, type ControlMeasureMetadata, type ControlMeasurePaintCapability, type ControlMeasureRender, type ControlMeasureStyle, 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_BYPASS_OPTIONS, DEFAULT_CANALIZE_OPTIONS, DEFAULT_CLASSIC_ARROW_OPTIONS, DEFAULT_CLEAR_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_DISRUPT_OPTIONS, DEFAULT_ENCIRCLEMENT_OPTIONS, DEFAULT_ENGINEER_WORK_LINE_OPTIONS, DEFAULT_FINAL_PROTECTIVE_FIRE_OPTIONS, DEFAULT_FIX_OPTIONS, DEFAULT_FLOT_OPTIONS, DEFAULT_FORTIFIED_AREA_OPTIONS, DEFAULT_FORTIFIED_LINE_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_TEXT_OPTIONS, DEFAULT_GUARD_OPTIONS, DEFAULT_HANDOVER_LINE_OPTIONS, DEFAULT_JOINT_TACTICAL_ACTION_AREA_OPTIONS, DEFAULT_LANDING_ZONE_OPTIONS, DEFAULT_LIGHT_LINE_OPTIONS, DEFAULT_MAIN_ATTACK_OPTIONS, DEFAULT_OBSTACLE_BYPASS_DIFFICULT_OPTIONS, DEFAULT_OBSTACLE_BYPASS_EASY_OPTIONS, DEFAULT_OBSTACLE_BYPASS_IMPOSSIBLE_OPTIONS, DEFAULT_PHASE_LINE_OPTIONS, DEFAULT_PICKUP_ZONE_OPTIONS, DEFAULT_PRINCIPAL_DIRECTION_OF_FIRE_OPTIONS, DEFAULT_SCREEN_OPTIONS, DEFAULT_STRONG_POINT_OPTIONS, DEFAULT_SUPPORTING_ATTACK_OPTIONS, DEFAULT_SUPPORT_BY_FIRE_OPTIONS, DEFAULT_TACTICAL_ARROW_OPTIONS, DEFAULT_TURNING_MOVEMENT_OPTIONS, DEFAULT_TURN_OPTIONS, type DelayOptions, type DirectionOfAttackAviationOptions, type DirectionOfMainAttackOptions, type DirectionOfSupportingAttackOptions, type DisruptOptions, EPSILON, type EncirclementOptions, type EngineerWorkLineOptions, type FLOTOptions, type FeaturePartProps, type FillPattern, type FinalProtectiveFireOptions, type FixOptions, type FortifiedAreaOptions, type FortifiedLineOptions, type FrontalAttackOptions, type GeneratedLabelKey, type GenericC2LineOptions, type GenericCircleOptions, type GenericLineOptions, type GenericPolygonOptions, type GenericRectangleOptions, type GenericTextOptions, type GuardOptions, type HandoverLineOptions, type JointTacticalActionAreaOptions, type LabelPlacementOverride, type LabelSizeOptions, type LandingZoneOptions, type LightLineOptions, type MainAttackOptions, type MidpointPerpendicularDrawRuleOptions, type ObstacleBypassDifficultOptions, type ObstacleBypassEasyOptions, type ObstacleBypassImpossibleOptions, type OptionsByKind, type ParamDescriptor, type PhaseLineOptions, type PickupZoneOptions, type Point2D, type PrincipalDirectionOfFireOptions, type RenderOptions, type ScreenOptions, 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, ambushDrawRule, applyBoxTransformOptions, attackByFireDrawRule, axis1DrawRule, blockDrawRule, calculateMetrics, canonicalTextAmplifierKey, centerRadiusDrawRule, cloneControlMeasure, computeDefaultMidpointPerpendicularPoint, computeInitialWidthPoint, controlMeasureIdFromFeature, createBaselineFrame, createMidpointPerpendicularDrawRule, disruptDrawRule, freezeOrientationOptions, getControlMeasureMetadata, getControlMeasureMetadataByValue, getDefaultOptions, getMetersPerPixel, getMidpointPerpendicularSignedDistance, haversineDistance, isKind, line1DrawRule, line23DrawRule, line24DrawRule, line26DrawRule, listControlMeasureMetadata, normalizeTextAmplifiers, point12DrawRule, pointOnMidpointPerpendicularAxis, project, rectangleDrawRule, renderControlMeasure, resolveAmplifierPlacement, resolveStyleHints, roundToFixed, snapToMidpointPerpendicular, supportByFireDrawRule, toSimpleStyle, turnDrawRule, unproject };
|
package/dist/index.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { $ as DEFAULT_BOUNDARY_OPTIONS, A as DEFAULT_FLOT_OPTIONS, At as centerRadiusDrawRule, B as DEFAULT_GENERIC_TEXT_OPTIONS, Bt as computeInitialWidthPoint, C as DEFAULT_SCREEN_OPTIONS, Ct as line24DrawRule, D as DEFAULT_BATTLE_HANDOVER_LINE_OPTIONS, Dt as ambushDrawRule, E as DEFAULT_FORTIFIED_LINE_OPTIONS, Et as line1DrawRule, F as DEFAULT_GUARD_OPTIONS, Ft as getMidpointPerpendicularSignedDistance, G as DEFAULT_CLASSIC_ARROW_OPTIONS, Gt as getMetersPerPixel, H as DEFAULT_GENERIC_POLYGON_OPTIONS, Ht as project, I as DEFAULT_DELAY_OPTIONS, It as pointOnMidpointPerpendicularAxis, J as DEFAULT_BREACH_OPTIONS, K as DEFAULT_CANALIZE_OPTIONS, Kt as roundToFixed, L as DEFAULT_COVER_OPTIONS, Lt as snapToMidpointPerpendicular, M as DEFAULT_FINAL_PROTECTIVE_FIRE_OPTIONS, Mt as blockDrawRule, N as DEFAULT_ENCIRCLEMENT_OPTIONS, Nt as computeDefaultMidpointPerpendicularPoint, O as DEFAULT_HANDOVER_LINE_OPTIONS, Ot as attackByFireDrawRule, P as DEFAULT_DISRUPT_OPTIONS, Pt as createMidpointPerpendicularDrawRule, Q as DEFAULT_LIGHT_LINE_OPTIONS, R as DEFAULT_TACTICAL_ARROW_OPTIONS, Rt as createBaselineFrame, S as DEFAULT_JOINT_TACTICAL_ACTION_AREA_OPTIONS, St as line26DrawRule, T as DEFAULT_FORTIFIED_AREA_OPTIONS, Tt as turnDrawRule, U as DEFAULT_GENERIC_LINE_OPTIONS, Ut as unproject, V as DEFAULT_GENERIC_RECTANGLE_OPTIONS, Vt as haversineDistance, W as DEFAULT_GENERIC_CIRCLE_OPTIONS, Wt as EPSILON, X as DEFAULT_GENERIC_C2_LINE_OPTIONS, Y as DEFAULT_BLOCK_MISSION_TASK_OPTIONS, Z as DEFAULT_ENGINEER_WORK_LINE_OPTIONS, _ as DEFAULT_OBSTACLE_BYPASS_IMPOSSIBLE_OPTIONS, _t as DEFAULT_AMBUSH_OPTIONS, a as DEFINITIONS, at as DEFAULT_ANTITANK_WALL_OPTIONS, b as DEFAULT_MAIN_ATTACK_OPTIONS, bt as axis1DrawRule, c as getDefaultOptions, ct as DEFAULT_AREA_OF_OPERATIONS_OPTIONS, d as DEFAULT_TURN_OPTIONS, dt as canonicalTextAmplifierKey, et as DEFAULT_BLOCK_ARROW_OPTIONS, f as DEFAULT_SUPPORTING_ATTACK_OPTIONS, ft as normalizeTextAmplifiers, g as DEFAULT_PICKUP_ZONE_OPTIONS, gt as DEFAULT_DIRECTION_OF_ATTACK_AVIATION_OPTIONS, h as DEFAULT_PRINCIPAL_DIRECTION_OF_FIRE_OPTIONS, ht as DEFAULT_DIRECTION_OF_MAIN_ATTACK_OPTIONS, i as CONTROL_MEASURE_METADATA, it as DEFAULT_ATTACK_BY_FIRE_OPTIONS, j as DEFAULT_FIX_OPTIONS, jt as disruptDrawRule, k as DEFAULT_PHASE_LINE_OPTIONS, kt as point12DrawRule, l as listControlMeasureMetadata, lt as DEFAULT_AREA_DEFENSE_OPTIONS, m as DEFAULT_STRONG_POINT_OPTIONS, mt as DEFAULT_DIRECTION_OF_SUPPORTING_ATTACK_OPTIONS, n as resolveStyleHints, nt as DEFAULT_BATTLE_POSITION_OPTIONS, o as getControlMeasureMetadata, ot as DEFAULT_ANTITANK_DITCH_OPTIONS, p as DEFAULT_SUPPORT_BY_FIRE_OPTIONS, pt as resolveAmplifierPlacement, q as DEFAULT_BYPASS_OPTIONS, r as CONTROL_MEASURE_IDS, rt as DEFAULT_ATTACK_HELICOPTER_OPTIONS, s as getControlMeasureMetadataByValue, st as DEFAULT_ASSEMBLY_AREA_OPTIONS, t as renderControlMeasure, tt as DEFAULT_BLOCK_OPTIONS, u as DEFAULT_TURNING_MOVEMENT_OPTIONS, ut as TEXT_AMPLIFIER_FIELDS, v as DEFAULT_OBSTACLE_BYPASS_EASY_OPTIONS, vt as DEFAULT_AIRBORNE_ATTACK_OPTIONS, w as DEFAULT_FRONTAL_ATTACK_OPTIONS, wt as line23DrawRule, x as DEFAULT_LANDING_ZONE_OPTIONS, xt as supportByFireDrawRule, y as DEFAULT_OBSTACLE_BYPASS_DIFFICULT_OPTIONS, yt as rectangleDrawRule, z as DEFAULT_CLEAR_OPTIONS, zt as calculateMetrics } from "./renderControlMeasure-
|
|
1
|
+
import { $ as DEFAULT_BOUNDARY_OPTIONS, A as DEFAULT_FLOT_OPTIONS, At as centerRadiusDrawRule, B as DEFAULT_GENERIC_TEXT_OPTIONS, Bt as computeInitialWidthPoint, C as DEFAULT_SCREEN_OPTIONS, Ct as line24DrawRule, D as DEFAULT_BATTLE_HANDOVER_LINE_OPTIONS, Dt as ambushDrawRule, E as DEFAULT_FORTIFIED_LINE_OPTIONS, Et as line1DrawRule, F as DEFAULT_GUARD_OPTIONS, Ft as getMidpointPerpendicularSignedDistance, G as DEFAULT_CLASSIC_ARROW_OPTIONS, Gt as getMetersPerPixel, H as DEFAULT_GENERIC_POLYGON_OPTIONS, Ht as project, I as DEFAULT_DELAY_OPTIONS, It as pointOnMidpointPerpendicularAxis, J as DEFAULT_BREACH_OPTIONS, K as DEFAULT_CANALIZE_OPTIONS, Kt as roundToFixed, L as DEFAULT_COVER_OPTIONS, Lt as snapToMidpointPerpendicular, M as DEFAULT_FINAL_PROTECTIVE_FIRE_OPTIONS, Mt as blockDrawRule, N as DEFAULT_ENCIRCLEMENT_OPTIONS, Nt as computeDefaultMidpointPerpendicularPoint, O as DEFAULT_HANDOVER_LINE_OPTIONS, Ot as attackByFireDrawRule, P as DEFAULT_DISRUPT_OPTIONS, Pt as createMidpointPerpendicularDrawRule, Q as DEFAULT_LIGHT_LINE_OPTIONS, R as DEFAULT_TACTICAL_ARROW_OPTIONS, Rt as createBaselineFrame, S as DEFAULT_JOINT_TACTICAL_ACTION_AREA_OPTIONS, St as line26DrawRule, T as DEFAULT_FORTIFIED_AREA_OPTIONS, Tt as turnDrawRule, U as DEFAULT_GENERIC_LINE_OPTIONS, Ut as unproject, V as DEFAULT_GENERIC_RECTANGLE_OPTIONS, Vt as haversineDistance, W as DEFAULT_GENERIC_CIRCLE_OPTIONS, Wt as EPSILON, X as DEFAULT_GENERIC_C2_LINE_OPTIONS, Y as DEFAULT_BLOCK_MISSION_TASK_OPTIONS, Z as DEFAULT_ENGINEER_WORK_LINE_OPTIONS, _ as DEFAULT_OBSTACLE_BYPASS_IMPOSSIBLE_OPTIONS, _t as DEFAULT_AMBUSH_OPTIONS, a as DEFINITIONS, at as DEFAULT_ANTITANK_WALL_OPTIONS, b as DEFAULT_MAIN_ATTACK_OPTIONS, bt as axis1DrawRule, c as getDefaultOptions, ct as DEFAULT_AREA_OF_OPERATIONS_OPTIONS, d as DEFAULT_TURN_OPTIONS, dt as canonicalTextAmplifierKey, et as DEFAULT_BLOCK_ARROW_OPTIONS, f as DEFAULT_SUPPORTING_ATTACK_OPTIONS, ft as normalizeTextAmplifiers, g as DEFAULT_PICKUP_ZONE_OPTIONS, gt as DEFAULT_DIRECTION_OF_ATTACK_AVIATION_OPTIONS, h as DEFAULT_PRINCIPAL_DIRECTION_OF_FIRE_OPTIONS, ht as DEFAULT_DIRECTION_OF_MAIN_ATTACK_OPTIONS, i as CONTROL_MEASURE_METADATA, it as DEFAULT_ATTACK_BY_FIRE_OPTIONS, j as DEFAULT_FIX_OPTIONS, jt as disruptDrawRule, k as DEFAULT_PHASE_LINE_OPTIONS, kt as point12DrawRule, l as listControlMeasureMetadata, lt as DEFAULT_AREA_DEFENSE_OPTIONS, m as DEFAULT_STRONG_POINT_OPTIONS, mt as DEFAULT_DIRECTION_OF_SUPPORTING_ATTACK_OPTIONS, n as resolveStyleHints, nt as DEFAULT_BATTLE_POSITION_OPTIONS, o as getControlMeasureMetadata, ot as DEFAULT_ANTITANK_DITCH_OPTIONS, p as DEFAULT_SUPPORT_BY_FIRE_OPTIONS, pt as resolveAmplifierPlacement, q as DEFAULT_BYPASS_OPTIONS, r as CONTROL_MEASURE_IDS, rt as DEFAULT_ATTACK_HELICOPTER_OPTIONS, s as getControlMeasureMetadataByValue, st as DEFAULT_ASSEMBLY_AREA_OPTIONS, t as renderControlMeasure, tt as DEFAULT_BLOCK_OPTIONS, u as DEFAULT_TURNING_MOVEMENT_OPTIONS, ut as TEXT_AMPLIFIER_FIELDS, v as DEFAULT_OBSTACLE_BYPASS_EASY_OPTIONS, vt as DEFAULT_AIRBORNE_ATTACK_OPTIONS, w as DEFAULT_FRONTAL_ATTACK_OPTIONS, wt as line23DrawRule, x as DEFAULT_LANDING_ZONE_OPTIONS, xt as supportByFireDrawRule, y as DEFAULT_OBSTACLE_BYPASS_DIFFICULT_OPTIONS, yt as rectangleDrawRule, z as DEFAULT_CLEAR_OPTIONS, zt as calculateMetrics } from "./renderControlMeasure-CzvFNqY4.mjs";
|
|
2
2
|
//#region src/freeze-orientation.ts
|
|
3
3
|
/**
|
|
4
4
|
* Dispatches to a measure kind's `freezeOrientation` hook (see
|
package/dist/preview/index.d.mts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Ir as TextAmplifiers, W as ControlMeasureId, or as FillPattern } from "../index-J_5z80SV.mjs";
|
|
2
2
|
import { FeatureCollection, Geometry } from "geojson";
|
|
3
3
|
|
|
4
4
|
//#region src/preview/index.d.ts
|
|
@@ -16,8 +16,11 @@ declare const PREVIEW_PATTERN_TILE = 8;
|
|
|
16
16
|
*/
|
|
17
17
|
declare const PREVIEW_FILL_PATTERNS: readonly {
|
|
18
18
|
readonly id: PreviewFillPattern;
|
|
19
|
-
readonly paths: readonly string[];
|
|
19
|
+
readonly paths: readonly string[]; /** Filled dot centers (tile units); the `"dots"` family has no stroked path. */
|
|
20
|
+
readonly dots?: readonly (readonly [number, number])[];
|
|
20
21
|
}[];
|
|
22
|
+
/** Radius (SVG units) of a {@link PREVIEW_FILL_PATTERNS} dot. */
|
|
23
|
+
declare const PREVIEW_PATTERN_DOT_RADIUS = 1.25;
|
|
21
24
|
/**
|
|
22
25
|
* Renders a measure's representative preview to GeoJSON. Pure — no map engine,
|
|
23
26
|
* so it runs identically at build time (docs catalog, README generator) and in
|
|
@@ -146,4 +149,4 @@ declare function viewBoxString(shapes: PreviewShape[], dims: {
|
|
|
146
149
|
*/
|
|
147
150
|
declare function svgTextTransform(s: PreviewShape): string | undefined;
|
|
148
151
|
//#endregion
|
|
149
|
-
export { PREVIEW_FILL_PATTERNS, PREVIEW_PATTERN_TILE, PreviewFillPattern, PreviewShape, ProjectDimensions, previewLabelBackgroundWidth, projectRenderToShapes, renderRepresentative, svgTextTransform, viewBoxString, viewBoxWithLabels };
|
|
152
|
+
export { PREVIEW_FILL_PATTERNS, PREVIEW_PATTERN_DOT_RADIUS, PREVIEW_PATTERN_TILE, PreviewFillPattern, PreviewShape, ProjectDimensions, previewLabelBackgroundWidth, projectRenderToShapes, renderRepresentative, svgTextTransform, viewBoxString, viewBoxWithLabels };
|
package/dist/preview/index.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { a as DEFINITIONS, t as renderControlMeasure } from "../renderControlMeasure-
|
|
1
|
+
import { a as DEFINITIONS, t as renderControlMeasure } from "../renderControlMeasure-CzvFNqY4.mjs";
|
|
2
2
|
//#region src/preview/index.ts
|
|
3
3
|
/** Side length (SVG units) of the repeating hatch tile in {@link PREVIEW_FILL_PATTERNS}. */
|
|
4
4
|
const PREVIEW_PATTERN_TILE = 8;
|
|
@@ -11,18 +11,33 @@ const PREVIEW_PATTERN_TILE = 8;
|
|
|
11
11
|
*/
|
|
12
12
|
const PREVIEW_FILL_PATTERNS = [
|
|
13
13
|
{
|
|
14
|
-
id: "
|
|
14
|
+
id: "hatch",
|
|
15
15
|
paths: ["M-1,-1 L9,9 M7,-1 L9,1 M-1,7 L1,9"]
|
|
16
16
|
},
|
|
17
17
|
{
|
|
18
|
-
id: "
|
|
18
|
+
id: "reverse-hatch",
|
|
19
19
|
paths: ["M9,-1 L-1,9 M1,-1 L-1,1 M9,7 L7,9"]
|
|
20
20
|
},
|
|
21
21
|
{
|
|
22
|
-
id: "cross",
|
|
22
|
+
id: "cross-hatch",
|
|
23
23
|
paths: ["M-1,-1 L9,9 M7,-1 L9,1 M-1,7 L1,9", "M9,-1 L-1,9 M1,-1 L-1,1 M9,7 L7,9"]
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
id: "horizontal",
|
|
27
|
+
paths: ["M-1,4 L9,4"]
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
id: "vertical",
|
|
31
|
+
paths: ["M4,-1 L4,9"]
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
id: "dots",
|
|
35
|
+
paths: [],
|
|
36
|
+
dots: [[4, 4]]
|
|
24
37
|
}
|
|
25
38
|
];
|
|
39
|
+
/** Radius (SVG units) of a {@link PREVIEW_FILL_PATTERNS} dot. */
|
|
40
|
+
const PREVIEW_PATTERN_DOT_RADIUS = 1.25;
|
|
26
41
|
/**
|
|
27
42
|
* Unitless `previewSample` points (~`[-1, 1]`) are scaled by this degree offset
|
|
28
43
|
* before reaching a generator. Most generators operate in projected meters, so
|
|
@@ -407,4 +422,4 @@ function collectShapes(g, tx, out, bboxArea, textLimits, props) {
|
|
|
407
422
|
}
|
|
408
423
|
}
|
|
409
424
|
//#endregion
|
|
410
|
-
export { PREVIEW_FILL_PATTERNS, PREVIEW_PATTERN_TILE, previewLabelBackgroundWidth, projectRenderToShapes, renderRepresentative, svgTextTransform, viewBoxString, viewBoxWithLabels };
|
|
425
|
+
export { PREVIEW_FILL_PATTERNS, PREVIEW_PATTERN_DOT_RADIUS, PREVIEW_PATTERN_TILE, previewLabelBackgroundWidth, projectRenderToShapes, renderRepresentative, svgTextTransform, viewBoxString, viewBoxWithLabels };
|
|
@@ -1540,6 +1540,11 @@ const AIRBORNE_ATTACK_METADATA = {
|
|
|
1540
1540
|
minCoordinates: 3,
|
|
1541
1541
|
geometry: "line",
|
|
1542
1542
|
geometryTypes: ["LineString"],
|
|
1543
|
+
paints: {
|
|
1544
|
+
stroke: true,
|
|
1545
|
+
fill: "none",
|
|
1546
|
+
text: false
|
|
1547
|
+
},
|
|
1543
1548
|
drawRule: "Axis1",
|
|
1544
1549
|
params: ATTACK_SHAFT_PARAMS
|
|
1545
1550
|
};
|
|
@@ -1635,6 +1640,11 @@ const AMBUSH_METADATA = {
|
|
|
1635
1640
|
maxCoordinates: 3,
|
|
1636
1641
|
geometry: "line",
|
|
1637
1642
|
geometryTypes: ["MultiLineString"],
|
|
1643
|
+
paints: {
|
|
1644
|
+
stroke: true,
|
|
1645
|
+
fill: "none",
|
|
1646
|
+
text: false
|
|
1647
|
+
},
|
|
1638
1648
|
drawRule: "Line29",
|
|
1639
1649
|
params: [
|
|
1640
1650
|
{
|
|
@@ -2591,6 +2601,11 @@ const DIRECTION_OF_ATTACK_AVIATION_METADATA = {
|
|
|
2591
2601
|
minCoordinates: 2,
|
|
2592
2602
|
geometry: "line",
|
|
2593
2603
|
geometryTypes: ["MultiLineString", "Point"],
|
|
2604
|
+
paints: {
|
|
2605
|
+
stroke: true,
|
|
2606
|
+
fill: "none",
|
|
2607
|
+
text: true
|
|
2608
|
+
},
|
|
2594
2609
|
drawRule: "Line1",
|
|
2595
2610
|
capturesLabelSize: true,
|
|
2596
2611
|
params: [
|
|
@@ -2817,6 +2832,11 @@ const DIRECTION_OF_MAIN_ATTACK_METADATA = {
|
|
|
2817
2832
|
minCoordinates: 2,
|
|
2818
2833
|
geometry: "line",
|
|
2819
2834
|
geometryTypes: ["MultiLineString", "Point"],
|
|
2835
|
+
paints: {
|
|
2836
|
+
stroke: true,
|
|
2837
|
+
fill: "none",
|
|
2838
|
+
text: true
|
|
2839
|
+
},
|
|
2820
2840
|
drawRule: "Line1",
|
|
2821
2841
|
capturesLabelSize: true,
|
|
2822
2842
|
params: [
|
|
@@ -2879,6 +2899,11 @@ const DIRECTION_OF_SUPPORTING_ATTACK_METADATA = {
|
|
|
2879
2899
|
minCoordinates: 2,
|
|
2880
2900
|
geometry: "line",
|
|
2881
2901
|
geometryTypes: ["MultiLineString", "Point"],
|
|
2902
|
+
paints: {
|
|
2903
|
+
stroke: true,
|
|
2904
|
+
fill: "none",
|
|
2905
|
+
text: true
|
|
2906
|
+
},
|
|
2882
2907
|
drawRule: "Line1",
|
|
2883
2908
|
capturesLabelSize: true,
|
|
2884
2909
|
params: [...SMOOTH_LINE_PARAMS, ...DIRECTION_OF_ATTACK_PARAMS],
|
|
@@ -3536,6 +3561,11 @@ const AREA_METADATA = {
|
|
|
3536
3561
|
"MultiLineString",
|
|
3537
3562
|
"Point"
|
|
3538
3563
|
],
|
|
3564
|
+
paints: {
|
|
3565
|
+
stroke: true,
|
|
3566
|
+
fill: "none",
|
|
3567
|
+
text: true
|
|
3568
|
+
},
|
|
3539
3569
|
drawRule: "Area1",
|
|
3540
3570
|
capturesLabelSize: true,
|
|
3541
3571
|
params: LABELED_AREA_PARAMS,
|
|
@@ -3570,7 +3600,7 @@ const AREA = defineControlMeasure({
|
|
|
3570
3600
|
/**
|
|
3571
3601
|
* Per-feature style hint pinning a filled part to a solid interior. Attach to
|
|
3572
3602
|
* a generator's intrinsic doctrinal accents — arrowheads, teeth, echelon
|
|
3573
|
-
* glyphs, barbs, blades — so a `
|
|
3603
|
+
* glyphs, barbs, blades — so a patterned (`hatch`, `dots`, …) fill set at the graphicsStyle
|
|
3574
3604
|
* or measure layer never bleeds into a small silhouette and ruins its
|
|
3575
3605
|
* legibility. The renderer only reads style hints, so one shared instance is
|
|
3576
3606
|
* safe to reuse across every accent feature.
|
|
@@ -3606,6 +3636,11 @@ const AREA_DEFENSE_METADATA = {
|
|
|
3606
3636
|
"MultiPolygon",
|
|
3607
3637
|
"Point"
|
|
3608
3638
|
],
|
|
3639
|
+
paints: {
|
|
3640
|
+
stroke: true,
|
|
3641
|
+
fill: "fixed",
|
|
3642
|
+
text: true
|
|
3643
|
+
},
|
|
3609
3644
|
drawRule: "Area15",
|
|
3610
3645
|
capturesLabelSize: true,
|
|
3611
3646
|
params: [
|
|
@@ -3801,6 +3836,11 @@ const AREA_OF_OPERATIONS_METADATA = {
|
|
|
3801
3836
|
"MultiLineString",
|
|
3802
3837
|
"Point"
|
|
3803
3838
|
],
|
|
3839
|
+
paints: {
|
|
3840
|
+
stroke: true,
|
|
3841
|
+
fill: "none",
|
|
3842
|
+
text: true
|
|
3843
|
+
},
|
|
3804
3844
|
drawRule: "Area1",
|
|
3805
3845
|
capturesLabelSize: true,
|
|
3806
3846
|
params: LABELED_AREA_PARAMS,
|
|
@@ -3855,6 +3895,11 @@ const NAMED_AREA_OF_INTEREST_METADATA = {
|
|
|
3855
3895
|
"MultiLineString",
|
|
3856
3896
|
"Point"
|
|
3857
3897
|
],
|
|
3898
|
+
paints: {
|
|
3899
|
+
stroke: true,
|
|
3900
|
+
fill: "none",
|
|
3901
|
+
text: true
|
|
3902
|
+
},
|
|
3858
3903
|
drawRule: "Area1",
|
|
3859
3904
|
capturesLabelSize: true,
|
|
3860
3905
|
params: LABELED_AREA_PARAMS,
|
|
@@ -3909,6 +3954,11 @@ const TARGET_AREA_OF_INTEREST_METADATA = {
|
|
|
3909
3954
|
"MultiLineString",
|
|
3910
3955
|
"Point"
|
|
3911
3956
|
],
|
|
3957
|
+
paints: {
|
|
3958
|
+
stroke: true,
|
|
3959
|
+
fill: "none",
|
|
3960
|
+
text: true
|
|
3961
|
+
},
|
|
3912
3962
|
drawRule: "Area1",
|
|
3913
3963
|
capturesLabelSize: true,
|
|
3914
3964
|
params: LABELED_AREA_PARAMS,
|
|
@@ -3972,6 +4022,11 @@ const AIRFIELD_ZONE_METADATA = {
|
|
|
3972
4022
|
"MultiLineString",
|
|
3973
4023
|
"Point"
|
|
3974
4024
|
],
|
|
4025
|
+
paints: {
|
|
4026
|
+
stroke: true,
|
|
4027
|
+
fill: "none",
|
|
4028
|
+
text: true
|
|
4029
|
+
},
|
|
3975
4030
|
drawRule: "Area1",
|
|
3976
4031
|
capturesLabelSize: true,
|
|
3977
4032
|
params: [
|
|
@@ -4151,6 +4206,11 @@ const BASE_CAMP_METADATA = {
|
|
|
4151
4206
|
"MultiPolygon",
|
|
4152
4207
|
"Point"
|
|
4153
4208
|
],
|
|
4209
|
+
paints: {
|
|
4210
|
+
stroke: true,
|
|
4211
|
+
fill: "fixed",
|
|
4212
|
+
text: true
|
|
4213
|
+
},
|
|
4154
4214
|
drawRule: "Area1",
|
|
4155
4215
|
capturesLabelSize: true,
|
|
4156
4216
|
params: ECHELON_AREA_PARAMS,
|
|
@@ -4204,6 +4264,11 @@ const GUERRILLA_BASE_METADATA = {
|
|
|
4204
4264
|
"MultiPolygon",
|
|
4205
4265
|
"Point"
|
|
4206
4266
|
],
|
|
4267
|
+
paints: {
|
|
4268
|
+
stroke: true,
|
|
4269
|
+
fill: "fixed",
|
|
4270
|
+
text: true
|
|
4271
|
+
},
|
|
4207
4272
|
drawRule: "Area1",
|
|
4208
4273
|
capturesLabelSize: true,
|
|
4209
4274
|
params: ECHELON_AREA_PARAMS,
|
|
@@ -4262,6 +4327,11 @@ const GENERIC_C2_AREA_METADATA = {
|
|
|
4262
4327
|
"MultiLineString",
|
|
4263
4328
|
"Point"
|
|
4264
4329
|
],
|
|
4330
|
+
paints: {
|
|
4331
|
+
stroke: true,
|
|
4332
|
+
fill: "none",
|
|
4333
|
+
text: true
|
|
4334
|
+
},
|
|
4265
4335
|
drawRule: "Area1",
|
|
4266
4336
|
capturesLabelSize: true,
|
|
4267
4337
|
params: LABELED_AREA_PARAMS,
|
|
@@ -4312,6 +4382,11 @@ const ASSEMBLY_AREA_METADATA = {
|
|
|
4312
4382
|
"MultiLineString",
|
|
4313
4383
|
"Point"
|
|
4314
4384
|
],
|
|
4385
|
+
paints: {
|
|
4386
|
+
stroke: true,
|
|
4387
|
+
fill: "none",
|
|
4388
|
+
text: true
|
|
4389
|
+
},
|
|
4315
4390
|
drawRule: "Area1",
|
|
4316
4391
|
capturesLabelSize: true,
|
|
4317
4392
|
params: LABELED_AREA_PARAMS,
|
|
@@ -4434,6 +4509,11 @@ const ANTITANK_DITCH_UNDER_CONSTRUCTION_METADATA = {
|
|
|
4434
4509
|
minCoordinates: 2,
|
|
4435
4510
|
geometry: "line",
|
|
4436
4511
|
geometryTypes: ["MultiLineString", "Point"],
|
|
4512
|
+
paints: {
|
|
4513
|
+
stroke: true,
|
|
4514
|
+
fill: "none",
|
|
4515
|
+
text: true
|
|
4516
|
+
},
|
|
4437
4517
|
drawRule: "Line1",
|
|
4438
4518
|
capturesLabelSize: true,
|
|
4439
4519
|
params: ANTITANK_DITCH_PARAMS,
|
|
@@ -4450,6 +4530,11 @@ const ANTITANK_DITCH_COMPLETED_METADATA = {
|
|
|
4450
4530
|
minCoordinates: 2,
|
|
4451
4531
|
geometry: "line",
|
|
4452
4532
|
geometryTypes: ["MultiPolygon", "Point"],
|
|
4533
|
+
paints: {
|
|
4534
|
+
stroke: true,
|
|
4535
|
+
fill: "fixed",
|
|
4536
|
+
text: true
|
|
4537
|
+
},
|
|
4453
4538
|
drawRule: "Line1",
|
|
4454
4539
|
capturesLabelSize: true,
|
|
4455
4540
|
params: ANTITANK_DITCH_PARAMS,
|
|
@@ -4576,6 +4661,11 @@ const ANTITANK_WALL_METADATA = {
|
|
|
4576
4661
|
minCoordinates: 2,
|
|
4577
4662
|
geometry: "line",
|
|
4578
4663
|
geometryTypes: ["MultiLineString", "Point"],
|
|
4664
|
+
paints: {
|
|
4665
|
+
stroke: true,
|
|
4666
|
+
fill: "none",
|
|
4667
|
+
text: true
|
|
4668
|
+
},
|
|
4579
4669
|
drawRule: "Line1",
|
|
4580
4670
|
capturesLabelSize: true,
|
|
4581
4671
|
params: ANTITANK_WALL_PARAMS,
|
|
@@ -4657,6 +4747,11 @@ const ATTACK_BY_FIRE_METADATA = {
|
|
|
4657
4747
|
minCoordinates: 3,
|
|
4658
4748
|
geometry: "line",
|
|
4659
4749
|
geometryTypes: ["LineString"],
|
|
4750
|
+
paints: {
|
|
4751
|
+
stroke: true,
|
|
4752
|
+
fill: "none",
|
|
4753
|
+
text: false
|
|
4754
|
+
},
|
|
4660
4755
|
drawRule: "Area7",
|
|
4661
4756
|
params: FIRE_ARROW_PARAMS
|
|
4662
4757
|
};
|
|
@@ -4802,6 +4897,11 @@ const ATTACK_HELICOPTER_METADATA = {
|
|
|
4802
4897
|
minCoordinates: 3,
|
|
4803
4898
|
geometry: "line",
|
|
4804
4899
|
geometryTypes: ["LineString", "Polygon"],
|
|
4900
|
+
paints: {
|
|
4901
|
+
stroke: true,
|
|
4902
|
+
fill: "none",
|
|
4903
|
+
text: false
|
|
4904
|
+
},
|
|
4805
4905
|
drawRule: "Axis1",
|
|
4806
4906
|
params: [
|
|
4807
4907
|
...ATTACK_SHAFT_PARAMS,
|
|
@@ -5022,6 +5122,11 @@ const BATTLE_POSITION_METADATA = {
|
|
|
5022
5122
|
"MultiPolygon",
|
|
5023
5123
|
"Point"
|
|
5024
5124
|
],
|
|
5125
|
+
paints: {
|
|
5126
|
+
stroke: true,
|
|
5127
|
+
fill: "fixed",
|
|
5128
|
+
text: true
|
|
5129
|
+
},
|
|
5025
5130
|
drawRule: "Area1",
|
|
5026
5131
|
capturesLabelSize: true,
|
|
5027
5132
|
params: ECHELON_AREA_PARAMS,
|
|
@@ -5137,6 +5242,11 @@ const BLOCK_METADATA = {
|
|
|
5137
5242
|
minCoordinates: 2,
|
|
5138
5243
|
geometry: "line",
|
|
5139
5244
|
geometryTypes: ["LineString"],
|
|
5245
|
+
paints: {
|
|
5246
|
+
stroke: true,
|
|
5247
|
+
fill: "none",
|
|
5248
|
+
text: false
|
|
5249
|
+
},
|
|
5140
5250
|
drawRule: "Area11"
|
|
5141
5251
|
};
|
|
5142
5252
|
const DEFAULT_BLOCK_OPTIONS = {};
|
|
@@ -5214,6 +5324,11 @@ const BLOCK_ARROW_METADATA = {
|
|
|
5214
5324
|
minCoordinates: 3,
|
|
5215
5325
|
geometry: "line",
|
|
5216
5326
|
geometryTypes: ["Polygon"],
|
|
5327
|
+
paints: {
|
|
5328
|
+
stroke: true,
|
|
5329
|
+
fill: "user",
|
|
5330
|
+
text: false
|
|
5331
|
+
},
|
|
5217
5332
|
drawRule: "Axis1",
|
|
5218
5333
|
params: [
|
|
5219
5334
|
{
|
|
@@ -5475,6 +5590,11 @@ const BOUNDARY_METADATA = {
|
|
|
5475
5590
|
"MultiPolygon",
|
|
5476
5591
|
"Point"
|
|
5477
5592
|
],
|
|
5593
|
+
paints: {
|
|
5594
|
+
stroke: true,
|
|
5595
|
+
fill: "fixed",
|
|
5596
|
+
text: true
|
|
5597
|
+
},
|
|
5478
5598
|
drawRule: "Line1",
|
|
5479
5599
|
params: [
|
|
5480
5600
|
{
|
|
@@ -5775,6 +5895,11 @@ const LIGHT_LINE_METADATA = {
|
|
|
5775
5895
|
minCoordinates: 2,
|
|
5776
5896
|
geometry: "line",
|
|
5777
5897
|
geometryTypes: ["LineString", "Point"],
|
|
5898
|
+
paints: {
|
|
5899
|
+
stroke: true,
|
|
5900
|
+
fill: "none",
|
|
5901
|
+
text: true
|
|
5902
|
+
},
|
|
5778
5903
|
drawRule: "Line1",
|
|
5779
5904
|
capturesLabelSize: true,
|
|
5780
5905
|
params: [
|
|
@@ -5846,6 +5971,11 @@ const ENGINEER_WORK_LINE_METADATA = {
|
|
|
5846
5971
|
minCoordinates: 2,
|
|
5847
5972
|
geometry: "line",
|
|
5848
5973
|
geometryTypes: ["LineString", "Point"],
|
|
5974
|
+
paints: {
|
|
5975
|
+
stroke: true,
|
|
5976
|
+
fill: "none",
|
|
5977
|
+
text: true
|
|
5978
|
+
},
|
|
5849
5979
|
drawRule: "Line1",
|
|
5850
5980
|
capturesLabelSize: true,
|
|
5851
5981
|
params: [
|
|
@@ -5981,6 +6111,11 @@ const GENERIC_C2_LINE_METADATA = {
|
|
|
5981
6111
|
minCoordinates: 2,
|
|
5982
6112
|
geometry: "line",
|
|
5983
6113
|
geometryTypes: ["LineString", "Point"],
|
|
6114
|
+
paints: {
|
|
6115
|
+
stroke: true,
|
|
6116
|
+
fill: "none",
|
|
6117
|
+
text: true
|
|
6118
|
+
},
|
|
5984
6119
|
drawRule: "Line1",
|
|
5985
6120
|
capturesLabelSize: true,
|
|
5986
6121
|
params: [
|
|
@@ -6243,6 +6378,11 @@ const BLOCK_MISSION_TASK_METADATA = {
|
|
|
6243
6378
|
minCoordinates: 2,
|
|
6244
6379
|
geometry: "line",
|
|
6245
6380
|
geometryTypes: ["MultiLineString", "Point"],
|
|
6381
|
+
paints: {
|
|
6382
|
+
stroke: true,
|
|
6383
|
+
fill: "none",
|
|
6384
|
+
text: true
|
|
6385
|
+
},
|
|
6246
6386
|
drawRule: "Area11",
|
|
6247
6387
|
capturesLabelSize: true,
|
|
6248
6388
|
params: [{
|
|
@@ -6336,6 +6476,11 @@ const BREACH_METADATA = {
|
|
|
6336
6476
|
maxCoordinates: 3,
|
|
6337
6477
|
geometry: "line",
|
|
6338
6478
|
geometryTypes: ["MultiLineString", "Point"],
|
|
6479
|
+
paints: {
|
|
6480
|
+
stroke: true,
|
|
6481
|
+
fill: "none",
|
|
6482
|
+
text: true
|
|
6483
|
+
},
|
|
6339
6484
|
drawRule: "Point12",
|
|
6340
6485
|
capturesLabelSize: true,
|
|
6341
6486
|
params: [
|
|
@@ -6432,6 +6577,11 @@ const BYPASS_METADATA = {
|
|
|
6432
6577
|
maxCoordinates: 3,
|
|
6433
6578
|
geometry: "line",
|
|
6434
6579
|
geometryTypes: ["MultiLineString", "Point"],
|
|
6580
|
+
paints: {
|
|
6581
|
+
stroke: true,
|
|
6582
|
+
fill: "none",
|
|
6583
|
+
text: true
|
|
6584
|
+
},
|
|
6435
6585
|
drawRule: "Point12",
|
|
6436
6586
|
capturesLabelSize: true,
|
|
6437
6587
|
params: [{
|
|
@@ -6507,6 +6657,11 @@ const CANALIZE_METADATA = {
|
|
|
6507
6657
|
maxCoordinates: 3,
|
|
6508
6658
|
geometry: "line",
|
|
6509
6659
|
geometryTypes: ["MultiLineString", "Point"],
|
|
6660
|
+
paints: {
|
|
6661
|
+
stroke: true,
|
|
6662
|
+
fill: "none",
|
|
6663
|
+
text: true
|
|
6664
|
+
},
|
|
6510
6665
|
drawRule: "Point12",
|
|
6511
6666
|
capturesLabelSize: true,
|
|
6512
6667
|
params: [
|
|
@@ -6605,6 +6760,11 @@ const CLASSIC_ARROW_METADATA = {
|
|
|
6605
6760
|
minCoordinates: 2,
|
|
6606
6761
|
geometry: "line",
|
|
6607
6762
|
geometryTypes: ["LineString", "Polygon"],
|
|
6763
|
+
paints: {
|
|
6764
|
+
stroke: true,
|
|
6765
|
+
fill: "fixed",
|
|
6766
|
+
text: false
|
|
6767
|
+
},
|
|
6608
6768
|
drawRule: "Line1",
|
|
6609
6769
|
params: [
|
|
6610
6770
|
{
|
|
@@ -6945,6 +7105,11 @@ const GENERIC_CIRCLE_METADATA = {
|
|
|
6945
7105
|
maxCoordinates: 2,
|
|
6946
7106
|
geometry: "area",
|
|
6947
7107
|
geometryTypes: ["Polygon"],
|
|
7108
|
+
paints: {
|
|
7109
|
+
stroke: true,
|
|
7110
|
+
fill: "user",
|
|
7111
|
+
text: false
|
|
7112
|
+
},
|
|
6948
7113
|
drawRule: "Area15",
|
|
6949
7114
|
params: FILLED_AREA_PARAMS
|
|
6950
7115
|
};
|
|
@@ -7024,6 +7189,11 @@ const GENERIC_LINE_METADATA = {
|
|
|
7024
7189
|
minCoordinates: 2,
|
|
7025
7190
|
geometry: "line",
|
|
7026
7191
|
geometryTypes: ["LineString"],
|
|
7192
|
+
paints: {
|
|
7193
|
+
stroke: true,
|
|
7194
|
+
fill: "none",
|
|
7195
|
+
text: false
|
|
7196
|
+
},
|
|
7027
7197
|
drawRule: "Line1",
|
|
7028
7198
|
params: SMOOTH_PATH_PARAMS
|
|
7029
7199
|
};
|
|
@@ -7082,6 +7252,11 @@ const GENERIC_POLYGON_METADATA = {
|
|
|
7082
7252
|
minCoordinates: 3,
|
|
7083
7253
|
geometry: "area",
|
|
7084
7254
|
geometryTypes: ["Polygon"],
|
|
7255
|
+
paints: {
|
|
7256
|
+
stroke: true,
|
|
7257
|
+
fill: "user",
|
|
7258
|
+
text: false
|
|
7259
|
+
},
|
|
7085
7260
|
drawRule: "Area1",
|
|
7086
7261
|
params: [...SMOOTH_PATH_PARAMS, ...FILLED_AREA_PARAMS]
|
|
7087
7262
|
};
|
|
@@ -7140,6 +7315,11 @@ const GENERIC_RECTANGLE_METADATA = {
|
|
|
7140
7315
|
maxCoordinates: 3,
|
|
7141
7316
|
geometry: "area",
|
|
7142
7317
|
geometryTypes: ["Polygon"],
|
|
7318
|
+
paints: {
|
|
7319
|
+
stroke: true,
|
|
7320
|
+
fill: "user",
|
|
7321
|
+
text: false
|
|
7322
|
+
},
|
|
7143
7323
|
drawRule: "Rectangle",
|
|
7144
7324
|
params: FILLED_AREA_PARAMS
|
|
7145
7325
|
};
|
|
@@ -7206,8 +7386,7 @@ const DEFAULT_GENERIC_TEXT_OPTIONS = {
|
|
|
7206
7386
|
textStyle: "regular",
|
|
7207
7387
|
rotation: 0,
|
|
7208
7388
|
sizePixels: 24,
|
|
7209
|
-
maxSizePixels: 200
|
|
7210
|
-
halo: false
|
|
7389
|
+
maxSizePixels: 200
|
|
7211
7390
|
};
|
|
7212
7391
|
const GENERIC_TEXT_METADATA = {
|
|
7213
7392
|
id: "text",
|
|
@@ -7221,6 +7400,11 @@ const GENERIC_TEXT_METADATA = {
|
|
|
7221
7400
|
maxCoordinates: 1,
|
|
7222
7401
|
geometry: "point",
|
|
7223
7402
|
geometryTypes: ["Point"],
|
|
7403
|
+
paints: {
|
|
7404
|
+
stroke: false,
|
|
7405
|
+
fill: "none",
|
|
7406
|
+
text: true
|
|
7407
|
+
},
|
|
7224
7408
|
drawRule: "Point1",
|
|
7225
7409
|
params: [
|
|
7226
7410
|
{
|
|
@@ -7275,12 +7459,6 @@ const GENERIC_TEXT_METADATA = {
|
|
|
7275
7459
|
}
|
|
7276
7460
|
]
|
|
7277
7461
|
},
|
|
7278
|
-
{
|
|
7279
|
-
key: "halo",
|
|
7280
|
-
label: "Halo",
|
|
7281
|
-
description: "Render a contrasting halo behind the text for legibility on busy backgrounds.",
|
|
7282
|
-
type: "boolean"
|
|
7283
|
-
},
|
|
7284
7462
|
{
|
|
7285
7463
|
key: "rotation",
|
|
7286
7464
|
label: "Rotation",
|
|
@@ -7341,7 +7519,6 @@ function createGenericText(coordinates, options = {}) {
|
|
|
7341
7519
|
...textAnchor !== void 0 ? { textAnchor } : {},
|
|
7342
7520
|
textStyle: merged.textStyle ?? "regular",
|
|
7343
7521
|
...merged.maxSizePixels !== void 0 ? { textMaxSizePixels: merged.maxSizePixels } : {},
|
|
7344
|
-
...merged.halo === true ? { textHalo: true } : {},
|
|
7345
7522
|
...sizeProps
|
|
7346
7523
|
},
|
|
7347
7524
|
geometry: {
|
|
@@ -7396,6 +7573,11 @@ const CLEAR_METADATA = {
|
|
|
7396
7573
|
maxCoordinates: 3,
|
|
7397
7574
|
geometry: "line",
|
|
7398
7575
|
geometryTypes: ["MultiLineString", "Point"],
|
|
7576
|
+
paints: {
|
|
7577
|
+
stroke: true,
|
|
7578
|
+
fill: "none",
|
|
7579
|
+
text: true
|
|
7580
|
+
},
|
|
7399
7581
|
drawRule: "Line23",
|
|
7400
7582
|
capturesLabelSize: true,
|
|
7401
7583
|
params: [
|
|
@@ -7605,6 +7787,11 @@ const SEARCH_AREA_METADATA = {
|
|
|
7605
7787
|
maxCoordinates: 3,
|
|
7606
7788
|
geometry: "area",
|
|
7607
7789
|
geometryTypes: ["MultiLineString", "MultiPolygon"],
|
|
7790
|
+
paints: {
|
|
7791
|
+
stroke: true,
|
|
7792
|
+
fill: "fixed",
|
|
7793
|
+
text: false
|
|
7794
|
+
},
|
|
7608
7795
|
drawRule: "Area21",
|
|
7609
7796
|
params: [
|
|
7610
7797
|
{
|
|
@@ -7896,6 +8083,11 @@ const COVER_METADATA = {
|
|
|
7896
8083
|
maxCoordinates: 4,
|
|
7897
8084
|
geometry: "line",
|
|
7898
8085
|
geometryTypes: ["MultiLineString", "Point"],
|
|
8086
|
+
paints: {
|
|
8087
|
+
stroke: true,
|
|
8088
|
+
fill: "none",
|
|
8089
|
+
text: true
|
|
8090
|
+
},
|
|
7899
8091
|
drawRule: "Line26",
|
|
7900
8092
|
capturesLabelSize: true,
|
|
7901
8093
|
params: SECURITY_TASK_PARAMS
|
|
@@ -7940,6 +8132,11 @@ const DELAY_METADATA = {
|
|
|
7940
8132
|
maxCoordinates: 3,
|
|
7941
8133
|
geometry: "line",
|
|
7942
8134
|
geometryTypes: ["MultiLineString", "Point"],
|
|
8135
|
+
paints: {
|
|
8136
|
+
stroke: true,
|
|
8137
|
+
fill: "none",
|
|
8138
|
+
text: true
|
|
8139
|
+
},
|
|
7943
8140
|
drawRule: "Line24",
|
|
7944
8141
|
capturesLabelSize: true,
|
|
7945
8142
|
params: [
|
|
@@ -8061,6 +8258,11 @@ const GUARD_METADATA = {
|
|
|
8061
8258
|
maxCoordinates: 4,
|
|
8062
8259
|
geometry: "line",
|
|
8063
8260
|
geometryTypes: ["MultiLineString", "Point"],
|
|
8261
|
+
paints: {
|
|
8262
|
+
stroke: true,
|
|
8263
|
+
fill: "none",
|
|
8264
|
+
text: true
|
|
8265
|
+
},
|
|
8064
8266
|
drawRule: "Line26",
|
|
8065
8267
|
capturesLabelSize: true,
|
|
8066
8268
|
params: SECURITY_TASK_PARAMS
|
|
@@ -8127,6 +8329,11 @@ const DISRUPT_METADATA = {
|
|
|
8127
8329
|
minCoordinates: 2,
|
|
8128
8330
|
geometry: "line",
|
|
8129
8331
|
geometryTypes: ["MultiLineString", "MultiPolygon"],
|
|
8332
|
+
paints: {
|
|
8333
|
+
stroke: true,
|
|
8334
|
+
fill: "fixed",
|
|
8335
|
+
text: false
|
|
8336
|
+
},
|
|
8130
8337
|
drawRule: "Area12",
|
|
8131
8338
|
params: [
|
|
8132
8339
|
{
|
|
@@ -8315,6 +8522,11 @@ const DROP_ZONE_METADATA = {
|
|
|
8315
8522
|
"MultiLineString",
|
|
8316
8523
|
"Point"
|
|
8317
8524
|
],
|
|
8525
|
+
paints: {
|
|
8526
|
+
stroke: true,
|
|
8527
|
+
fill: "none",
|
|
8528
|
+
text: true
|
|
8529
|
+
},
|
|
8318
8530
|
drawRule: "Area1",
|
|
8319
8531
|
capturesLabelSize: true,
|
|
8320
8532
|
params: LABELED_AREA_PARAMS,
|
|
@@ -8374,6 +8586,11 @@ const ENCIRCLEMENT_METADATA = {
|
|
|
8374
8586
|
"MultiLineString",
|
|
8375
8587
|
"Point"
|
|
8376
8588
|
],
|
|
8589
|
+
paints: {
|
|
8590
|
+
stroke: true,
|
|
8591
|
+
fill: "none",
|
|
8592
|
+
text: true
|
|
8593
|
+
},
|
|
8377
8594
|
drawRule: "Area1",
|
|
8378
8595
|
capturesLabelSize: true,
|
|
8379
8596
|
params: ENCIRCLEMENT_PARAMS,
|
|
@@ -8522,6 +8739,11 @@ const EXTRACTION_ZONE_METADATA = {
|
|
|
8522
8739
|
"MultiLineString",
|
|
8523
8740
|
"Point"
|
|
8524
8741
|
],
|
|
8742
|
+
paints: {
|
|
8743
|
+
stroke: true,
|
|
8744
|
+
fill: "none",
|
|
8745
|
+
text: true
|
|
8746
|
+
},
|
|
8525
8747
|
drawRule: "Area1",
|
|
8526
8748
|
capturesLabelSize: true,
|
|
8527
8749
|
params: LABELED_AREA_PARAMS,
|
|
@@ -8566,6 +8788,11 @@ const FPF_SHARED = {
|
|
|
8566
8788
|
maxCoordinates: 3,
|
|
8567
8789
|
geometry: "line",
|
|
8568
8790
|
geometryTypes: ["MultiLineString", "Polygon"],
|
|
8791
|
+
paints: {
|
|
8792
|
+
stroke: true,
|
|
8793
|
+
fill: "fixed",
|
|
8794
|
+
text: false
|
|
8795
|
+
},
|
|
8569
8796
|
drawRule: "Line3",
|
|
8570
8797
|
params: [
|
|
8571
8798
|
{
|
|
@@ -8749,6 +8976,11 @@ const FIX_METADATA = {
|
|
|
8749
8976
|
maxCoordinates: 2,
|
|
8750
8977
|
geometry: "line",
|
|
8751
8978
|
geometryTypes: ["MultiLineString"],
|
|
8979
|
+
paints: {
|
|
8980
|
+
stroke: true,
|
|
8981
|
+
fill: "none",
|
|
8982
|
+
text: false
|
|
8983
|
+
},
|
|
8752
8984
|
drawRule: "Line9",
|
|
8753
8985
|
params: [
|
|
8754
8986
|
{
|
|
@@ -8888,6 +9120,11 @@ const FLOT_METADATA = {
|
|
|
8888
9120
|
minCoordinates: 2,
|
|
8889
9121
|
geometry: "line",
|
|
8890
9122
|
geometryTypes: ["LineString", "Point"],
|
|
9123
|
+
paints: {
|
|
9124
|
+
stroke: true,
|
|
9125
|
+
fill: "none",
|
|
9126
|
+
text: true
|
|
9127
|
+
},
|
|
8891
9128
|
drawRule: "Line1",
|
|
8892
9129
|
capturesLabelSize: true,
|
|
8893
9130
|
params: [
|
|
@@ -9076,6 +9313,11 @@ const PHASE_LINE_METADATA = {
|
|
|
9076
9313
|
minCoordinates: 2,
|
|
9077
9314
|
geometry: "line",
|
|
9078
9315
|
geometryTypes: ["LineString", "Point"],
|
|
9316
|
+
paints: {
|
|
9317
|
+
stroke: true,
|
|
9318
|
+
fill: "none",
|
|
9319
|
+
text: true
|
|
9320
|
+
},
|
|
9079
9321
|
drawRule: "Line1",
|
|
9080
9322
|
capturesLabelSize: true,
|
|
9081
9323
|
params: [
|
|
@@ -9146,6 +9388,11 @@ const HANDOVER_LINE_METADATA = {
|
|
|
9146
9388
|
minCoordinates: 2,
|
|
9147
9389
|
geometry: "line",
|
|
9148
9390
|
geometryTypes: ["LineString", "Point"],
|
|
9391
|
+
paints: {
|
|
9392
|
+
stroke: true,
|
|
9393
|
+
fill: "none",
|
|
9394
|
+
text: true
|
|
9395
|
+
},
|
|
9149
9396
|
drawRule: "Line1",
|
|
9150
9397
|
capturesLabelSize: true,
|
|
9151
9398
|
params: [
|
|
@@ -9217,6 +9464,11 @@ const BATTLE_HANDOVER_LINE_METADATA = {
|
|
|
9217
9464
|
minCoordinates: 2,
|
|
9218
9465
|
geometry: "line",
|
|
9219
9466
|
geometryTypes: ["LineString", "Point"],
|
|
9467
|
+
paints: {
|
|
9468
|
+
stroke: true,
|
|
9469
|
+
fill: "none",
|
|
9470
|
+
text: true
|
|
9471
|
+
},
|
|
9220
9472
|
drawRule: "Line1",
|
|
9221
9473
|
capturesLabelSize: true,
|
|
9222
9474
|
params: [
|
|
@@ -9294,6 +9546,11 @@ const FORTIFIED_LINE_METADATA = {
|
|
|
9294
9546
|
minCoordinates: 2,
|
|
9295
9547
|
geometry: "line",
|
|
9296
9548
|
geometryTypes: ["LineString", "Point"],
|
|
9549
|
+
paints: {
|
|
9550
|
+
stroke: true,
|
|
9551
|
+
fill: "none",
|
|
9552
|
+
text: true
|
|
9553
|
+
},
|
|
9297
9554
|
drawRule: "Line1",
|
|
9298
9555
|
capturesLabelSize: true,
|
|
9299
9556
|
params: FORTIFIED_PARAMS,
|
|
@@ -9449,6 +9706,11 @@ const FORTIFIED_AREA_METADATA = {
|
|
|
9449
9706
|
"MultiLineString",
|
|
9450
9707
|
"Point"
|
|
9451
9708
|
],
|
|
9709
|
+
paints: {
|
|
9710
|
+
stroke: true,
|
|
9711
|
+
fill: "none",
|
|
9712
|
+
text: true
|
|
9713
|
+
},
|
|
9452
9714
|
drawRule: "Area1",
|
|
9453
9715
|
capturesLabelSize: true,
|
|
9454
9716
|
params: [...FORTIFIED_AREA_PARAMS, AREA_LABEL_PADDING_PARAM],
|
|
@@ -9682,6 +9944,11 @@ const FRONTAL_ATTACK_METADATA = {
|
|
|
9682
9944
|
minCoordinates: 3,
|
|
9683
9945
|
geometry: "line",
|
|
9684
9946
|
geometryTypes: ["MultiLineString", "Point"],
|
|
9947
|
+
paints: {
|
|
9948
|
+
stroke: true,
|
|
9949
|
+
fill: "none",
|
|
9950
|
+
text: true
|
|
9951
|
+
},
|
|
9685
9952
|
drawRule: "Axis1",
|
|
9686
9953
|
capturesLabelSize: true,
|
|
9687
9954
|
params: [...ATTACK_SHAFT_PARAMS, ...MANEUVER_ARROW_TASK_PARAMS],
|
|
@@ -9735,6 +10002,11 @@ const ISOLATE_METADATA = {
|
|
|
9735
10002
|
maxCoordinates: 2,
|
|
9736
10003
|
geometry: "line",
|
|
9737
10004
|
geometryTypes: ["MultiLineString"],
|
|
10005
|
+
paints: {
|
|
10006
|
+
stroke: true,
|
|
10007
|
+
fill: "none",
|
|
10008
|
+
text: false
|
|
10009
|
+
},
|
|
9738
10010
|
drawRule: "Area15",
|
|
9739
10011
|
params: [
|
|
9740
10012
|
{
|
|
@@ -9859,6 +10131,11 @@ const SCREEN_METADATA = {
|
|
|
9859
10131
|
maxCoordinates: 4,
|
|
9860
10132
|
geometry: "line",
|
|
9861
10133
|
geometryTypes: ["MultiLineString", "Point"],
|
|
10134
|
+
paints: {
|
|
10135
|
+
stroke: true,
|
|
10136
|
+
fill: "none",
|
|
10137
|
+
text: true
|
|
10138
|
+
},
|
|
9862
10139
|
drawRule: "Line26",
|
|
9863
10140
|
capturesLabelSize: true,
|
|
9864
10141
|
params: SECURITY_TASK_PARAMS
|
|
@@ -9906,6 +10183,11 @@ const JOINT_TACTICAL_ACTION_AREA_METADATA = {
|
|
|
9906
10183
|
"MultiLineString",
|
|
9907
10184
|
"Point"
|
|
9908
10185
|
],
|
|
10186
|
+
paints: {
|
|
10187
|
+
stroke: true,
|
|
10188
|
+
fill: "none",
|
|
10189
|
+
text: true
|
|
10190
|
+
},
|
|
9909
10191
|
drawRule: "Area1",
|
|
9910
10192
|
capturesLabelSize: true,
|
|
9911
10193
|
params: LABELED_AREA_PARAMS,
|
|
@@ -9961,6 +10243,11 @@ const LANDING_ZONE_METADATA = {
|
|
|
9961
10243
|
"MultiLineString",
|
|
9962
10244
|
"Point"
|
|
9963
10245
|
],
|
|
10246
|
+
paints: {
|
|
10247
|
+
stroke: true,
|
|
10248
|
+
fill: "none",
|
|
10249
|
+
text: true
|
|
10250
|
+
},
|
|
9964
10251
|
drawRule: "Area1",
|
|
9965
10252
|
capturesLabelSize: true,
|
|
9966
10253
|
params: LABELED_AREA_PARAMS,
|
|
@@ -10000,7 +10287,7 @@ const DEFAULT_LIMITED_ACCESS_AREA_OPTIONS = {
|
|
|
10000
10287
|
const LIMITED_ACCESS_AREA_METADATA = {
|
|
10001
10288
|
id: "limited-access-area",
|
|
10002
10289
|
name: "Limited Access Area",
|
|
10003
|
-
description: "An area with restricted access, identified by a back-
|
|
10290
|
+
description: "An area with restricted access, identified by a back-hatch fill.",
|
|
10004
10291
|
entity: "Maneuver Areas",
|
|
10005
10292
|
entityType: "Limited Access Area",
|
|
10006
10293
|
value: "151100",
|
|
@@ -10011,6 +10298,11 @@ const LIMITED_ACCESS_AREA_METADATA = {
|
|
|
10011
10298
|
"MultiLineString",
|
|
10012
10299
|
"Point"
|
|
10013
10300
|
],
|
|
10301
|
+
paints: {
|
|
10302
|
+
stroke: true,
|
|
10303
|
+
fill: "fixed",
|
|
10304
|
+
text: true
|
|
10305
|
+
},
|
|
10014
10306
|
drawRule: "Area1",
|
|
10015
10307
|
capturesLabelSize: true,
|
|
10016
10308
|
params: [...AREA_SMOOTH_PARAMS, AREA_LABEL_PADDING_PARAM],
|
|
@@ -10038,7 +10330,7 @@ function createLimitedAccessArea(positions, options = {}, textAmplifiers = {}, c
|
|
|
10038
10330
|
}];
|
|
10039
10331
|
return {
|
|
10040
10332
|
type: "FeatureCollection",
|
|
10041
|
-
features: [...patternedAreaFeatures(verts, pushAreaLabels(labelFeatures, verts, { hostile: textAmplifiers.N }, options, context.amplifierPlacements), "
|
|
10333
|
+
features: [...patternedAreaFeatures(verts, pushAreaLabels(labelFeatures, verts, { hostile: textAmplifiers.N }, options, context.amplifierPlacements), "reverse-hatch"), ...labelFeatures]
|
|
10042
10334
|
};
|
|
10043
10335
|
}
|
|
10044
10336
|
const LIMITED_ACCESS_AREA = defineControlMeasure({
|
|
@@ -10101,6 +10393,11 @@ const NO_FIRE_AREA_IRREGULAR_METADATA = {
|
|
|
10101
10393
|
"MultiLineString",
|
|
10102
10394
|
"Point"
|
|
10103
10395
|
],
|
|
10396
|
+
paints: {
|
|
10397
|
+
stroke: true,
|
|
10398
|
+
fill: "fixed",
|
|
10399
|
+
text: true
|
|
10400
|
+
},
|
|
10104
10401
|
drawRule: "Area1",
|
|
10105
10402
|
capturesLabelSize: true,
|
|
10106
10403
|
params: [...AREA_SMOOTH_PARAMS, AREA_LABEL_PADDING_PARAM],
|
|
@@ -10144,7 +10441,7 @@ function createNoFireAreaIrregular(positions, options = {}, textAmplifiers = {},
|
|
|
10144
10441
|
}
|
|
10145
10442
|
return {
|
|
10146
10443
|
type: "FeatureCollection",
|
|
10147
|
-
features: [...patternedAreaFeatures(verts, pushAreaLabels(labels, verts, { hostile: textAmplifiers.N }, options, context.amplifierPlacements), "
|
|
10444
|
+
features: [...patternedAreaFeatures(verts, pushAreaLabels(labels, verts, { hostile: textAmplifiers.N }, options, context.amplifierPlacements), "reverse-hatch"), ...labels]
|
|
10148
10445
|
};
|
|
10149
10446
|
}
|
|
10150
10447
|
const NO_FIRE_AREA_IRREGULAR = defineControlMeasure({
|
|
@@ -10190,6 +10487,11 @@ const MAIN_ATTACK_METADATA = {
|
|
|
10190
10487
|
minCoordinates: 3,
|
|
10191
10488
|
geometry: "line",
|
|
10192
10489
|
geometryTypes: ["MultiLineString"],
|
|
10490
|
+
paints: {
|
|
10491
|
+
stroke: true,
|
|
10492
|
+
fill: "none",
|
|
10493
|
+
text: false
|
|
10494
|
+
},
|
|
10193
10495
|
drawRule: "Axis1",
|
|
10194
10496
|
params: ATTACK_SHAFT_PARAMS
|
|
10195
10497
|
};
|
|
@@ -10290,6 +10592,11 @@ const OBSTACLE_BYPASS_DIFFICULT_METADATA = {
|
|
|
10290
10592
|
minCoordinates: 2,
|
|
10291
10593
|
geometry: "line",
|
|
10292
10594
|
geometryTypes: ["MultiLineString", "MultiPolygon"],
|
|
10595
|
+
paints: {
|
|
10596
|
+
stroke: true,
|
|
10597
|
+
fill: "fixed",
|
|
10598
|
+
text: false
|
|
10599
|
+
},
|
|
10293
10600
|
drawRule: "Point12",
|
|
10294
10601
|
params: [
|
|
10295
10602
|
...OBSTACLE_BYPASS_PARAMS,
|
|
@@ -10423,6 +10730,11 @@ const OBSTACLE_BYPASS_EASY_METADATA = {
|
|
|
10423
10730
|
minCoordinates: 2,
|
|
10424
10731
|
geometry: "line",
|
|
10425
10732
|
geometryTypes: ["MultiLineString", "MultiPolygon"],
|
|
10733
|
+
paints: {
|
|
10734
|
+
stroke: true,
|
|
10735
|
+
fill: "fixed",
|
|
10736
|
+
text: false
|
|
10737
|
+
},
|
|
10426
10738
|
drawRule: "Point12",
|
|
10427
10739
|
params: OBSTACLE_BYPASS_PARAMS
|
|
10428
10740
|
};
|
|
@@ -10532,6 +10844,11 @@ const OBSTACLE_BYPASS_IMPOSSIBLE_METADATA = {
|
|
|
10532
10844
|
minCoordinates: 2,
|
|
10533
10845
|
geometry: "line",
|
|
10534
10846
|
geometryTypes: ["MultiLineString", "MultiPolygon"],
|
|
10847
|
+
paints: {
|
|
10848
|
+
stroke: true,
|
|
10849
|
+
fill: "fixed",
|
|
10850
|
+
text: false
|
|
10851
|
+
},
|
|
10535
10852
|
drawRule: "Point12",
|
|
10536
10853
|
params: [
|
|
10537
10854
|
...OBSTACLE_BYPASS_PARAMS,
|
|
@@ -10672,6 +10989,11 @@ const PICKUP_ZONE_METADATA = {
|
|
|
10672
10989
|
"MultiLineString",
|
|
10673
10990
|
"Point"
|
|
10674
10991
|
],
|
|
10992
|
+
paints: {
|
|
10993
|
+
stroke: true,
|
|
10994
|
+
fill: "none",
|
|
10995
|
+
text: true
|
|
10996
|
+
},
|
|
10675
10997
|
drawRule: "Area1",
|
|
10676
10998
|
capturesLabelSize: true,
|
|
10677
10999
|
params: LABELED_AREA_PARAMS,
|
|
@@ -10722,6 +11044,11 @@ const ASSAULT_POSITION_METADATA = {
|
|
|
10722
11044
|
"MultiLineString",
|
|
10723
11045
|
"Point"
|
|
10724
11046
|
],
|
|
11047
|
+
paints: {
|
|
11048
|
+
stroke: true,
|
|
11049
|
+
fill: "none",
|
|
11050
|
+
text: true
|
|
11051
|
+
},
|
|
10725
11052
|
drawRule: "Area1",
|
|
10726
11053
|
capturesLabelSize: true,
|
|
10727
11054
|
params: LABELED_AREA_PARAMS,
|
|
@@ -10772,6 +11099,11 @@ const ATTACK_POSITION_METADATA = {
|
|
|
10772
11099
|
"MultiLineString",
|
|
10773
11100
|
"Point"
|
|
10774
11101
|
],
|
|
11102
|
+
paints: {
|
|
11103
|
+
stroke: true,
|
|
11104
|
+
fill: "none",
|
|
11105
|
+
text: true
|
|
11106
|
+
},
|
|
10775
11107
|
drawRule: "Area1",
|
|
10776
11108
|
capturesLabelSize: true,
|
|
10777
11109
|
params: LABELED_AREA_PARAMS,
|
|
@@ -10822,6 +11154,11 @@ const OBJECTIVE_AREA_METADATA = {
|
|
|
10822
11154
|
"MultiLineString",
|
|
10823
11155
|
"Point"
|
|
10824
11156
|
],
|
|
11157
|
+
paints: {
|
|
11158
|
+
stroke: true,
|
|
11159
|
+
fill: "none",
|
|
11160
|
+
text: true
|
|
11161
|
+
},
|
|
10825
11162
|
drawRule: "Area1",
|
|
10826
11163
|
capturesLabelSize: true,
|
|
10827
11164
|
params: LABELED_AREA_PARAMS,
|
|
@@ -10869,6 +11206,11 @@ const PRINCIPAL_DIRECTION_OF_FIRE_METADATA = {
|
|
|
10869
11206
|
maxCoordinates: 3,
|
|
10870
11207
|
geometry: "line",
|
|
10871
11208
|
geometryTypes: ["MultiLineString"],
|
|
11209
|
+
paints: {
|
|
11210
|
+
stroke: true,
|
|
11211
|
+
fill: "none",
|
|
11212
|
+
text: false
|
|
11213
|
+
},
|
|
10872
11214
|
drawRule: "Line3",
|
|
10873
11215
|
params: [{
|
|
10874
11216
|
key: "arrowheadLengthRatio",
|
|
@@ -10953,6 +11295,11 @@ const STRONG_POINT_METADATA = {
|
|
|
10953
11295
|
"MultiPolygon",
|
|
10954
11296
|
"Point"
|
|
10955
11297
|
],
|
|
11298
|
+
paints: {
|
|
11299
|
+
stroke: true,
|
|
11300
|
+
fill: "fixed",
|
|
11301
|
+
text: true
|
|
11302
|
+
},
|
|
10956
11303
|
drawRule: "Area1",
|
|
10957
11304
|
capturesLabelSize: true,
|
|
10958
11305
|
params: ECHELON_AREA_PARAMS,
|
|
@@ -11095,6 +11442,11 @@ const SUBMARINE_ACTION_AREA_METADATA = {
|
|
|
11095
11442
|
"MultiLineString",
|
|
11096
11443
|
"Point"
|
|
11097
11444
|
],
|
|
11445
|
+
paints: {
|
|
11446
|
+
stroke: true,
|
|
11447
|
+
fill: "none",
|
|
11448
|
+
text: true
|
|
11449
|
+
},
|
|
11098
11450
|
drawRule: "Area1",
|
|
11099
11451
|
capturesLabelSize: true,
|
|
11100
11452
|
params: LABELED_AREA_PARAMS,
|
|
@@ -11150,6 +11502,11 @@ const SUBMARINE_GENERATED_ACTION_AREA_METADATA = {
|
|
|
11150
11502
|
"MultiLineString",
|
|
11151
11503
|
"Point"
|
|
11152
11504
|
],
|
|
11505
|
+
paints: {
|
|
11506
|
+
stroke: true,
|
|
11507
|
+
fill: "none",
|
|
11508
|
+
text: true
|
|
11509
|
+
},
|
|
11153
11510
|
drawRule: "Area1",
|
|
11154
11511
|
capturesLabelSize: true,
|
|
11155
11512
|
params: LABELED_AREA_PARAMS,
|
|
@@ -11200,6 +11557,11 @@ const SUPPORT_BY_FIRE_METADATA = {
|
|
|
11200
11557
|
minCoordinates: 4,
|
|
11201
11558
|
geometry: "line",
|
|
11202
11559
|
geometryTypes: ["LineString"],
|
|
11560
|
+
paints: {
|
|
11561
|
+
stroke: true,
|
|
11562
|
+
fill: "none",
|
|
11563
|
+
text: false
|
|
11564
|
+
},
|
|
11203
11565
|
drawRule: "Area8",
|
|
11204
11566
|
params: FIRE_ARROW_PARAMS
|
|
11205
11567
|
};
|
|
@@ -11347,6 +11709,11 @@ const SUPPORTING_ATTACK_METADATA = {
|
|
|
11347
11709
|
minCoordinates: 3,
|
|
11348
11710
|
geometry: "line",
|
|
11349
11711
|
geometryTypes: ["LineString"],
|
|
11712
|
+
paints: {
|
|
11713
|
+
stroke: true,
|
|
11714
|
+
fill: "none",
|
|
11715
|
+
text: false
|
|
11716
|
+
},
|
|
11350
11717
|
drawRule: "Axis1",
|
|
11351
11718
|
params: ATTACK_SHAFT_PARAMS
|
|
11352
11719
|
};
|
|
@@ -11408,6 +11775,11 @@ const TURN_METADATA = {
|
|
|
11408
11775
|
minCoordinates: 2,
|
|
11409
11776
|
geometry: "line",
|
|
11410
11777
|
geometryTypes: ["MultiLineString", "MultiPolygon"],
|
|
11778
|
+
paints: {
|
|
11779
|
+
stroke: true,
|
|
11780
|
+
fill: "fixed",
|
|
11781
|
+
text: false
|
|
11782
|
+
},
|
|
11411
11783
|
drawRule: "Line10",
|
|
11412
11784
|
params: [
|
|
11413
11785
|
{
|
|
@@ -11519,6 +11891,11 @@ const TURNING_MOVEMENT_METADATA = {
|
|
|
11519
11891
|
minCoordinates: 3,
|
|
11520
11892
|
geometry: "line",
|
|
11521
11893
|
geometryTypes: ["MultiLineString", "Point"],
|
|
11894
|
+
paints: {
|
|
11895
|
+
stroke: true,
|
|
11896
|
+
fill: "none",
|
|
11897
|
+
text: true
|
|
11898
|
+
},
|
|
11522
11899
|
drawRule: "Axis1",
|
|
11523
11900
|
capturesLabelSize: true,
|
|
11524
11901
|
params: [...ATTACK_SHAFT_PARAMS, ...MANEUVER_ARROW_TASK_PARAMS],
|
|
@@ -11797,6 +12174,7 @@ function resolveStyleHints(graphicsStyle, measureStyle, generatorStyle) {
|
|
|
11797
12174
|
*/
|
|
11798
12175
|
function resolveSymbolColor(merged, filled) {
|
|
11799
12176
|
const { color, strokeColor, fillColor, fillPattern, opacity, ...rest } = merged ?? {};
|
|
12177
|
+
delete rest.textHalo;
|
|
11800
12178
|
const rawStroke = firstColor(strokeColor, color);
|
|
11801
12179
|
const resolvedStroke = foldGraphicOpacity(rawStroke, opacity);
|
|
11802
12180
|
const resolved = {
|
|
@@ -11865,18 +12243,32 @@ function dispatchControlMeasure(cm, opts) {
|
|
|
11865
12243
|
return generator(cm.controlPoints, cm.options ?? {}, textAmplifiers, { amplifierPlacements: cm.amplifierPlacements });
|
|
11866
12244
|
}
|
|
11867
12245
|
/**
|
|
11868
|
-
* The control-point *input contract*:
|
|
11869
|
-
*
|
|
11870
|
-
* violation (`silent` → empty render, `warn` →
|
|
11871
|
-
* returns whether the points may be passed to the
|
|
11872
|
-
* beyond `maxCoordinates` are ignored, not rejected
|
|
12246
|
+
* The control-point *input contract*: `controlPoints` must be present and an
|
|
12247
|
+
* array of at least `metadata.minCoordinates` finite `[lon, lat]` positions.
|
|
12248
|
+
* Reports per `validationMode` on violation (`silent` → empty render, `warn` →
|
|
12249
|
+
* log, `throw` → raise) and returns whether the points may be passed to the
|
|
12250
|
+
* generator. Extra points beyond `maxCoordinates` are ignored, not rejected
|
|
12251
|
+
* (ADR-0014).
|
|
12252
|
+
*
|
|
12253
|
+
* A missing or non-array `controlPoints` is itself a contract violation and is
|
|
12254
|
+
* reported like any other — the validator must never throw a raw `TypeError`
|
|
12255
|
+
* on the very input it exists to diagnose. Passing a GeoJSON `geometry` or a
|
|
12256
|
+
* `coordinates` field instead of `controlPoints` is the common way to land
|
|
12257
|
+
* here.
|
|
11873
12258
|
*/
|
|
11874
12259
|
function validateInputContract(points, metadata, mode) {
|
|
12260
|
+
if (!Array.isArray(points)) return reportValidationIssue(mode, `"${metadata.id}" requires controlPoints to be an array of [lon, lat] positions; received ${describeValue(points)}.`);
|
|
11875
12261
|
const minimum = metadata.minCoordinates ?? 0;
|
|
11876
12262
|
if (points.length < minimum) return reportValidationIssue(mode, `"${metadata.id}" requires at least ${minimum} control points; received ${points.length}.`);
|
|
11877
12263
|
if (points.some((point) => !isValidPosition(point))) return reportValidationIssue(mode, `"${metadata.id}" control points must contain finite [lon, lat] values.`);
|
|
11878
12264
|
return true;
|
|
11879
12265
|
}
|
|
12266
|
+
/** A short, log-safe description of an off-contract value for the report. */
|
|
12267
|
+
function describeValue(value) {
|
|
12268
|
+
if (value === null) return "null";
|
|
12269
|
+
if (value === void 0) return "undefined";
|
|
12270
|
+
return typeof value;
|
|
12271
|
+
}
|
|
11880
12272
|
/**
|
|
11881
12273
|
* The `amplifierPlacements` key that repositions this feature, if any: the
|
|
11882
12274
|
* explicit `labelPlacementKey`, the canonical amplifier field when the
|
|
@@ -11895,14 +12287,16 @@ function normalizeFeature(id, feature, index, generatedLabelOrdinal, measureStyl
|
|
|
11895
12287
|
const part = typeof sourceProps.part === "string" && sourceProps.part.length > 0 ? sourceProps.part : "main";
|
|
11896
12288
|
const generatorStyle = typeof sourceProps.style === "object" && sourceProps.style !== null ? sourceProps.style : void 0;
|
|
11897
12289
|
const filled = sourceProps.fill === true;
|
|
11898
|
-
const
|
|
12290
|
+
const merged = resolveStyleHints(graphicsStyle, measureStyle, generatorStyle);
|
|
12291
|
+
const style = resolveSymbolColor(merged, filled);
|
|
11899
12292
|
const text = typeof sourceProps.text === "string" ? sourceProps.text : void 0;
|
|
11900
12293
|
const rotation = typeof sourceProps.rotation === "number" ? sourceProps.rotation : void 0;
|
|
11901
12294
|
const textSizePixels = typeof sourceProps.textSizePixels === "number" ? sourceProps.textSizePixels : void 0;
|
|
11902
12295
|
const textSizeMeters = typeof sourceProps.textSizeMeters === "number" ? sourceProps.textSizeMeters : void 0;
|
|
11903
12296
|
const textAnchor = sourceProps.textAnchor === "start" || sourceProps.textAnchor === "end" ? sourceProps.textAnchor : void 0;
|
|
11904
12297
|
const textBackground = sourceProps.textBackground === true ? true : void 0;
|
|
11905
|
-
const
|
|
12298
|
+
const requestedHalo = typeof sourceProps.textHalo === "boolean" ? sourceProps.textHalo : merged?.textHalo === true;
|
|
12299
|
+
const textHalo = text !== void 0 && requestedHalo ? true : void 0;
|
|
11906
12300
|
const textHaloColor = textHalo ? contrastingHaloColor(style.strokeColor ?? "#000") : void 0;
|
|
11907
12301
|
const textJustify = sourceProps.textJustify === "left" || sourceProps.textJustify === "center" || sourceProps.textJustify === "right" ? sourceProps.textJustify : void 0;
|
|
11908
12302
|
const textStyle = sourceProps.textStyle === "regular" || sourceProps.textStyle === "italic" || sourceProps.textStyle === "light" || sourceProps.textStyle === "caps" ? sourceProps.textStyle : void 0;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@orbat-mapper/control-measures",
|
|
3
|
-
"version": "0.2.0-alpha.
|
|
3
|
+
"version": "0.2.0-alpha.28",
|
|
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",
|