@sportsdataverse/sporty 0.1.0 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +8 -9
- package/dist/canvas.d.ts +1 -1
- package/dist/canvas.js +1 -1
- package/dist/{chunk-VID5HIDQ.js → chunk-3WYO7OMK.js} +9 -5
- package/dist/chunk-3WYO7OMK.js.map +1 -0
- package/dist/{chunk-X4CSZYJQ.js → chunk-DRH5NZI4.js} +2 -2
- package/dist/chunk-DRH5NZI4.js.map +1 -0
- package/dist/d3.d.ts +1 -1
- package/dist/d3.js +1 -1
- package/dist/index.d.ts +42 -22
- package/dist/index.js +466 -76
- package/dist/index.js.map +1 -1
- package/dist/plot.d.ts +2 -2
- package/dist/plot.js +2 -2
- package/dist/{scene-Dv5KLA63.d.ts → scene-D5Jc19yu.d.ts} +1 -1
- package/dist/specs/index.d.ts +41 -1
- package/dist/specs/index.js +1 -1
- package/dist/svg.d.ts +1 -1
- package/dist/svg.js +1 -1
- package/package.json +1 -1
- package/dist/chunk-VID5HIDQ.js.map +0 -1
- package/dist/chunk-X4CSZYJQ.js.map +0 -1
package/README.md
CHANGED
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
|
|
18
18
|
<!-- badges: end -->
|
|
19
19
|
|
|
20
|
-
Sport surfaces (courts, rinks, fields) as plain geometry for SportsDataverse plots. TypeScript port of the R package [sportyR](https://github.com/sportsdataverse/sportyR) 2.
|
|
20
|
+
Sport surfaces (courts, rinks, fields) as plain geometry for SportsDataverse plots. TypeScript port of the R package [sportyR](https://github.com/sportsdataverse/sportyR) 2.4.0: every surface is a `Scene` of polygons and text, rendered by the `svg`, `canvas`, `plot` and `d3` subpaths.
|
|
21
21
|
|
|
22
22
|
Part of [sdvplot-js](https://github.com/sportsdataverse/sdvplot-js#readme) · [Documentation](https://plot.sportsdataverse.org) · [API reference](https://plot.sportsdataverse.org/api/sporty/) ·
|
|
23
23
|
[Gallery](https://plot.sportsdataverse.org/gallery/sporty/) · [Notebooks](https://plot.sportsdataverse.org/notebooks/) · [Source](https://github.com/sportsdataverse/sdvplot-js/tree/main/packages/sporty)
|
|
@@ -86,7 +86,7 @@ const { width, height } = drawScene(ctx, basketballCourt("nba"), { width: 800 })
|
|
|
86
86
|
|
|
87
87
|
| Import | Contents |
|
|
88
88
|
| --- | --- |
|
|
89
|
-
| `@sportsdataverse/sporty` | `surface`, `SPORTS`, `basketballCourt`, `hockeyRink`, `footballField`, `soccerPitch`, `baseballField`, `tennisCourt`, `volleyballCourt`, `curlingSheet`, `lacrosseField`, `Scene`, `toSurfaceFrame`, `FRAMES`, `basketballZoneOf`, `basketballZones`, `BASKETBALL_ZONES`, `BASKETBALL_ZONE_LABELS`, errors |
|
|
89
|
+
| `@sportsdataverse/sporty` | `surface`, `SPORTS`, `basketballCourt`, `hockeyRink`, `footballField`, `soccerPitch`, `baseballField`, `tennisCourt`, `volleyballCourt`, `curlingSheet`, `lacrosseField`, `softballField`, `Scene`, `toSurfaceFrame`, `FRAMES`, `basketballZoneOf`, `basketballZones`, `BASKETBALL_ZONES`, `BASKETBALL_ZONE_LABELS`, errors |
|
|
90
90
|
| `@sportsdataverse/sporty/svg` | `toSVG` (`width`, `height`, `background`, `precision`, `id`, `arcs: "sampled" \| "svg"`) |
|
|
91
91
|
| `@sportsdataverse/sporty/specs` | generated parameter specs for all sports |
|
|
92
92
|
| `@sportsdataverse/sporty/plot` | `surfaceMark`, `surfaceScales`, `sceneToGeoJSON` (optional peer `@observablehq/plot`) |
|
|
@@ -106,6 +106,7 @@ const { width, height } = drawScene(ctx, basketballCourt("nba"), { width: 800 })
|
|
|
106
106
|
| volleyball | `volleyballCourt` | `custom`, `fivb`, `ncaa`, `usa volleyball` | `m` |
|
|
107
107
|
| curling | `curlingSheet` | `curling canada`, `custom`, `wcf` | Drawn vertically: +y toward the top house, `sheet_width` along x; `ft` |
|
|
108
108
|
| lacrosse | `lacrosseField` | `custom`, `ncaam`, `ncaaw`, `nll`, `pll`, `usam`, `usaw`, `world lacrosse` | Mixed native units: `yd` (ncaam, pll, usam), `m` (ncaaw, usaw), `ft` (nll, world lacrosse); pass `units` to draw them alike |
|
|
109
|
+
| softball | `softballField` | `custom`, `ncaa` | `origin: "home_plate"` like baseball; `ft` |
|
|
109
110
|
|
|
110
111
|
## **Coordinate frames**
|
|
111
112
|
|
|
@@ -122,22 +123,20 @@ Basketball shot zones: `basketballZoneOf(x, y, shotValue, { league, scale })` na
|
|
|
122
123
|
|
|
123
124
|
## **Provenance and parity**
|
|
124
125
|
|
|
125
|
-
Ported from sportyR 2.
|
|
126
|
+
Ported from sportyR 2.4.0 (vendored from sportyR main at b97443a, which carries the geometry fixes merged in sportyR PR #68) - see [NOTICE.md](https://github.com/sportsdataverse/sdvplot-js/blob/main/packages/sporty/NOTICE.md) (J3). The R package is the oracle: the test suite compares every feature of all 54 non-`custom` league surfaces point for point to 1e-9 against R output stored under `fixtures/sporty`, and a league without fixtures fails. Regenerate the fixtures with `pnpm oracle:sporty basketball hockey football soccer baseball tennis volleyball curling lacrosse softball` (needs R and sportyR; set `R_LIBS` to a private library holding the vendored sportyR, and `SPORTYR_REPO` to its checkout so `VERSION` records the sha); the oracle refuses to run unless the installed sportyR's `surface_dimensions` equals the vendored `data/surface-dimensions.json`, and records that file's sha256 in `fixtures/sporty/VERSION`. Parameter specs in `src/specs` are generated from the vendored JSON (`pnpm codegen`).
|
|
126
127
|
|
|
127
128
|
Drift gates in CI: `pnpm codegen --check` (specs match the vendored JSON) and `test/fixtures-version.test.ts` (the vendored JSON's sha256 and sportyR version/checkout match the ones the fixtures were generated from). `pnpm vendor --check` compares the vendored JSON with a sportyR checkout, so it only runs where one exists (`SPORTYR_REPO`); elsewhere it skips.
|
|
128
129
|
|
|
129
130
|
## **Differences from sportyR**
|
|
130
131
|
|
|
131
132
|
- An unknown `displayRange` throws `UnknownDisplayRangeError` (R silently falls back to `"full"`).
|
|
132
|
-
- `units` converts the anchors and display limits too (R converts only the feature points, so non-native units plot wrongly).
|
|
133
133
|
- Vector colours recycle per copy of a feature (`colorAt`), as R `data.frame()` does. Curling's `house_rings` recycles too, so a single colour fills every ring; R indexes it per ring and leaves rings 2 and 3 `NA`.
|
|
134
134
|
- A lane space mark takes its own set's colour; R reads row `i` (the lane index) of the set instead, which is `NA` once a court has more lanes than marks per set. Default leagues are unaffected.
|
|
135
135
|
- An `undefined`/`null` entry in `updates` or `colorUpdates` keeps the default.
|
|
136
|
-
- The `custom` league builds a surface from its all-zero defaults in every sport.
|
|
137
|
-
- A `custom` league with empty native units (every sport except volleyball, whose `custom` is in metres) reads them as feet, so `units` converts it.
|
|
136
|
+
- The `custom` league builds a surface from its all-zero defaults in every sport. sportyR 2.4.0 builds it for every sport but football, which errors in `seq()`.
|
|
137
|
+
- A `custom` league with empty native units (every sport except volleyball, whose `custom` is in metres) reads them as feet, so `units` converts it. sportyR 2.4.0 stops instead and asks for the units to be set first (e.g. `geom_curling("custom", sheet_units = "m")`).
|
|
138
138
|
- Tennis accepts R's misspelt receiving-half keys (`receivicehalf`, `receivice_half`, `receivice half`) and the correct spellings (`receivehalf`, `receive_half`, `receive half`); R has only the misspelling and draws the full court for the correct one.
|
|
139
|
-
- Lacrosse:
|
|
140
|
-
- Lacrosse: the five parameters R reads but no league defines (`nzone_length`, `board_thickness`, `center_face_off_marker_radius`, `corner_face_off_marker_bar_width`, `corner_face_off_marker_bar_length`) are fixed at 0 as R draws them, and `updates` cannot set them.
|
|
139
|
+
- Lacrosse: the three parameters R reads but no league defines (`center_face_off_marker_radius`, `corner_face_off_marker_bar_width`, `corner_face_off_marker_bar_length`) are fixed at 0 as R draws them, and `updates` cannot set them.
|
|
141
140
|
- Text features carry a `fitBox` (the ggfittext box) that the SVG renderer fits by height only.
|
|
142
141
|
|
|
143
142
|
## **Performance**
|
|
@@ -183,7 +182,7 @@ The [repository README](https://github.com/sportsdataverse/sdvplot-js#readme) co
|
|
|
183
182
|
## **Logos, trademarks and data**
|
|
184
183
|
|
|
185
184
|
The surface geometry and the surface-dimensions data are ported from
|
|
186
|
-
[sportyR](https://github.com/sportsdataverse/sportyR) 2.
|
|
185
|
+
[sportyR](https://github.com/sportsdataverse/sportyR) 2.4.0 (Ross Drucker) and
|
|
187
186
|
[sportypy](https://sportypy.sportsdataverse.org/); by agreement between the SportsDataverse maintainers the ported
|
|
188
187
|
material is distributed here under MIT. League names identify the rule sets the dimensions follow; sporty draws no
|
|
189
188
|
league or team marks.
|
package/dist/canvas.d.ts
CHANGED
package/dist/canvas.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { InputError } from './chunk-23Y47RKN.js';
|
|
2
|
-
import { isVisiblePolygon, hidden, isVisibleText } from './chunk-
|
|
2
|
+
import { isVisiblePolygon, hidden, isVisibleText } from './chunk-DRH5NZI4.js';
|
|
3
3
|
|
|
4
4
|
// src/canvas.ts
|
|
5
5
|
function drawScene(ctx, scene, opts = {}) {
|
|
@@ -12,7 +12,7 @@ var CURLING_SPECS = /* @__PURE__ */ Object.freeze({ "curling canada": /* @__PURE
|
|
|
12
12
|
|
|
13
13
|
// src/specs/football.ts
|
|
14
14
|
var FOOTBALL_LEAGUES = ["cfl", "custom", "ncaa", "nfhs11", "nfhs6", "nfhs8", "nfhs9", "nfl"];
|
|
15
|
-
var FOOTBALL_SPECS = /* @__PURE__ */ Object.freeze({ "cfl": /* @__PURE__ */ Object.freeze({ "additional_minor_yard_lines": [-5, -10, -15], "arrow_base": 0.5, "arrow_length": 0.9682, "arrow_line_dist": 10, "bench_shape": "", "boundary_line_thickness": 1.3333, "coaching_box_width": 0, "endzone_length": 20, "extra_apron_padding": 2, "field_border_behind_bench": false, "field_border_thickness": 0, "field_bordered": false, "field_length": 110, "field_units": "yd", "field_width": 65, "goal_line_thickness": 0.1111, "inbound_cross_hashmark_length": 0.2778, "inbound_cross_hashmark_separation": 17, "inbound_hashmark_separation": 15.6667, "major_yard_line_distance": 5, "minor_line_thickness": 0.1111, "minor_yard_line_height": 0.6667, "number_font": "Clarendon-Regular", "number_height": 2, "number_to_yard_line": 0.3333, "number_width": 1.3333, "numbers_bottom": ["1", "0", "2", "0", "3", "0", "4", "0", "5", "0", "C", "5", "0", "4", "0", "3", "0", "2", "0", "1", "0"], "numbers_top": ["0", "1", "0", "2", "0", "3", "0", "4", "0", "5", "C", "0", "5", "0", "4", "0", "3", "0", "2", "0", "1"], "restricted_area_width": 0, "sideline_to_bottom_of_numbers": 7, "sideline_to_major_yard_line": 0.1111, "sideline_to_outer_yard_line": 0.1111, "team_bench_area_border_thickness": 0, "team_bench_length_back_side": 30, "team_bench_length_field_side": 30, "team_bench_width": 0, "top_number_to_arrow": 0.4167, "yard_line_to_arrow": 1.8333 }), "custom": /* @__PURE__ */ Object.freeze({ "arrow_base": 0, "arrow_length": 0, "arrow_line_dist": 0, "bench_shape": "", "boundary_line_thickness": 0, "coaching_box_width": 0, "endzone_length": 0, "extra_apron_padding": 0, "field_border_behind_bench": false, "field_border_thickness": 0, "field_bordered": false, "field_length": 0, "field_units": "", "field_width": 0, "goal_line_thickness": 0, "inbound_cross_hashmark_length": 0, "inbound_cross_hashmark_separation": 0, "inbound_hashmark_separation": 0, "major_yard_line_distance": 1, "minor_line_thickness": 0, "minor_yard_line_height": 0, "number_font": "", "number_height": 0, "number_to_yard_line": 0, "number_width": 0, "numbers_bottom": [], "numbers_top": [], "restricted_area_width": 0, "sideline_to_bottom_of_numbers": 0, "sideline_to_major_yard_line": 0, "sideline_to_outer_yard_line": 0, "team_bench_area_border_thickness": 0, "team_bench_length_back_side": 0, "team_bench_length_field_side": 0, "team_bench_width": 0, "top_number_to_arrow": 0, "try_mark_distance": 0, "try_mark_width": 0, "yard_line_to_arrow": 0 }), "ncaa": /* @__PURE__ */ Object.freeze({ "arrow_base": 0.5, "arrow_length": 0.9682, "arrow_line_dist": 10, "bench_shape": "rectangular", "boundary_line_thickness": 0.1111, "coaching_box_width": 2, "endzone_length": 10, "extra_apron_padding": 2, "field_border_behind_bench": true, "field_border_thickness": 1.3333, "field_bordered": false, "field_length": 100, "field_units": "yd", "field_width": 53.3333, "goal_line_thickness": 0.1111, "inbound_cross_hashmark_length": 0.2778, "inbound_cross_hashmark_separation": 13.3333, "inbound_hashmark_separation": 13.3333, "major_yard_line_distance": 5, "minor_line_thickness": 0.1111, "minor_yard_line_height": 0.6667, "number_font": "Clarendon-Regular", "number_height": 2, "number_to_yard_line": 0.3333, "number_width": 1.3333, "numbers_bottom": ["1", "0", "2", "0", "3", "0", "4", "0", "5", "0", "4", "0", "3", "0", "2", "0", "1", "0"], "numbers_top": ["0", "1", "0", "2", "0", "3", "0", "4", "0", "5", "0", "4", "0", "3", "0", "2", "0", "1"], "restricted_area_width": 1.3333, "sideline_to_bottom_of_numbers": 7, "sideline_to_major_yard_line": 0.1111, "sideline_to_outer_yard_line": 0.1111, "team_bench_area_border_thickness": 0.1111, "team_bench_length_back_side": 60, "team_bench_length_field_side": 60, "team_bench_width": 4, "top_number_to_arrow": 0.4167, "try_mark_distance": 3, "try_mark_width": 1, "yard_line_to_arrow": 1.8333 }), "nfhs11": /* @__PURE__ */ Object.freeze({ "arrow_base": 0.5, "arrow_length": 0.9682, "arrow_line_dist": 10, "bench_shape": "rectangular", "boundary_line_thickness": 2, "coaching_box_width": 2, "endzone_length": 10, "extra_apron_padding": 5, "field_bordered": false, "field_length": 100, "field_units": "yd", "field_width": 53.3333, "goal_line_thickness": 0.2222, "inbound_cross_hashmark_length": 0.2778, "inbound_cross_hashmark_separation": 17.7778, "inbound_hashmark_separation": 17.7778, "major_yard_line_distance": 5, "minor_line_thickness": 0.1111, "minor_yard_line_height": 0.6667, "number_font": "Clarendon-Regular", "number_height": 2, "number_to_yard_line": 0.3333, "number_width": 1.3333, "numbers_bottom": ["1", "0", "2", "0", "3", "0", "4", "0", "5", "0", "4", "0", "3", "0", "2", "0", "1", "0"], "numbers_top": ["0", "1", "0", "2", "0", "3", "0", "4", "0", "5", "0", "4", "0", "3", "0", "2", "0", "1"], "restricted_area_width": 2, "sideline_to_bottom_of_numbers": 7, "sideline_to_major_yard_line": 0.2222, "sideline_to_outer_yard_line": 0.2222, "team_bench_area_border_thickness": 0.1111, "team_bench_length_back_side": 50, "team_bench_length_field_side": 50, "team_bench_width": 4, "top_number_to_arrow": 0.4167, "try_mark_distance": 3, "try_mark_width": 1, "yard_line_to_arrow": 1.8333 }), "nfhs6": /* @__PURE__ */ Object.freeze({ "arrow_base": 0.5, "arrow_length": 0.9682, "arrow_line_dist": 10, "bench_shape": "rectangular", "boundary_line_thickness": 2, "coaching_box_width": 2, "endzone_length": 10, "extra_apron_padding": 5, "field_bordered": false, "field_length": 80, "field_units": "yd", "field_width": 40, "goal_line_thickness": 0.2222, "inbound_cross_hashmark_length": 0.2778, "inbound_cross_hashmark_separation": 10, "inbound_hashmark_separation": 10, "major_yard_line_distance": 5, "minor_line_thickness": 0.1111, "minor_yard_line_height": 0.6667, "number_font": "Clarendon-Regular", "number_height": 2, "number_to_yard_line": 0.3333, "number_width": 1.3333, "numbers_bottom": ["1", "0", "2", "0", "3", "0", "4", "0", "3", "0", "2", "0", "1", "0"], "numbers_top": ["0", "1", "0", "2", "0", "3", "0", "4", "0", "3", "0", "2", "0", "1"], "restricted_area_width": 2, "sideline_to_bottom_of_numbers": 5, "sideline_to_major_yard_line": 0.2222, "sideline_to_outer_yard_line": 0.2222, "team_bench_area_border_thickness": 0.1111, "team_bench_length_back_side": 30, "team_bench_length_field_side": 30, "team_bench_width": 4, "top_number_to_arrow": 0.4167, "try_mark_distance": 2, "try_mark_width": 1, "yard_line_to_arrow": 1.8333 }), "nfhs8": /* @__PURE__ */ Object.freeze({ "arrow_base": 0.5, "arrow_length": 0.9682, "arrow_line_dist": 10, "bench_shape": "rectangular", "boundary_line_thickness": 2, "coaching_box_width": 2, "endzone_length": 10, "extra_apron_padding": 5, "field_bordered": false, "field_length": 80, "field_units": "yd", "field_width": 40, "goal_line_thickness": 0.2222, "inbound_cross_hashmark_length": 0.2778, "inbound_cross_hashmark_separation": 10, "inbound_hashmark_separation": 10, "major_yard_line_distance": 5, "minor_line_thickness": 0.1111, "minor_yard_line_height": 0.6667, "number_font": "Clarendon-Regular", "number_height": 2, "number_to_yard_line": 0.3333, "number_width": 1.3333, "numbers_bottom": ["1", "0", "2", "0", "3", "0", "4", "0", "3", "0", "2", "0", "1", "0"], "numbers_top": ["0", "1", "0", "2", "0", "3", "0", "4", "0", "3", "0", "2", "0", "1"], "restricted_area_width": 2, "sideline_to_bottom_of_numbers": 5, "sideline_to_major_yard_line": 0.2222, "sideline_to_outer_yard_line": 0.2222, "team_bench_area_border_thickness": 0.1111, "team_bench_length_back_side": 30, "team_bench_length_field_side": 30, "team_bench_width": 4, "top_number_to_arrow": 0.4167, "try_mark_distance": 2, "try_mark_width": 1, "yard_line_to_arrow": 1.8333 }), "nfhs9": /* @__PURE__ */ Object.freeze({ "arrow_base": 0.5, "arrow_length": 0.9682, "arrow_line_dist": 10, "bench_shape": "rectangular", "boundary_line_thickness": 2, "coaching_box_width": 2, "endzone_length": 10, "extra_apron_padding": 5, "field_bordered": false, "field_length": 80, "field_units": "yd", "field_width": 40, "goal_line_thickness": 0.2222, "inbound_cross_hashmark_length": 0.2778, "inbound_cross_hashmark_separation": 7.7778, "inbound_hashmark_separation": 7.7778, "major_yard_line_distance": 5, "minor_line_thickness": 0.1111, "minor_yard_line_height": 0.6667, "number_font": "Clarendon-Regular", "number_height": 2, "number_to_yard_line": 0.3333, "number_width": 1.3333, "numbers_bottom": ["1", "0", "2", "0", "3", "0", "4", "0", "3", "0", "2", "0", "1", "0"], "numbers_top": ["0", "1", "0", "2", "0", "3", "0", "4", "0", "3", "0", "2", "0", "1"], "restricted_area_width": 2, "sideline_to_bottom_of_numbers": 5, "sideline_to_major_yard_line": 0.2222, "sideline_to_outer_yard_line": 0.2222, "team_bench_area_border_thickness": 0.1111, "team_bench_length_back_side": 30, "team_bench_length_field_side": 30, "team_bench_width": 4, "top_number_to_arrow": 0.4167, "try_mark_distance": 3, "try_mark_width": 1, "yard_line_to_arrow": 1.8333 }), "nfl": /* @__PURE__ */ Object.freeze({ "arrow_base": 0.5, "arrow_length": 0.9682, "arrow_line_dist": 10, "bench_shape": "trapezoid", "boundary_line_thickness": 2, "coaching_box_width": 2, "endzone_length": 10, "extra_apron_padding": 2, "field_border_behind_bench": true, "field_border_thickness": 1.3333, "field_bordered": false, "field_length": 100, "field_units": "yd", "field_width": 53.3333, "goal_line_thickness": 0.2222, "inbound_cross_hashmark_length": 0.2778, "inbound_cross_hashmark_separation": 6.1667, "inbound_hashmark_separation": 6.1667, "major_yard_line_distance": 5, "minor_line_thickness": 0.1111, "minor_yard_line_height": 0.6667, "number_font": "Clarendon-Regular", "number_height": 2, "number_to_yard_line": 0.3333, "number_width": 1.3333, "numbers_bottom": ["1", "0", "2", "0", "3", "0", "4", "0", "5", "0", "4", "0", "3", "0", "2", "0", "1", "0"], "numbers_top": ["0", "1", "0", "2", "0", "3", "0", "4", "0", "5", "0", "4", "0", "3", "0", "2", "0", "1"], "restricted_area_width": 2, "sideline_to_bottom_of_numbers": 12, "sideline_to_major_yard_line": 0.2222, "sideline_to_outer_yard_line": 0.2222, "team_bench_area_border_thickness": 0.1111, "team_bench_length_back_side": 37.2639, "team_bench_length_field_side": 44.9861, "team_bench_width": 6, "top_number_to_arrow": 0.4167, "try_mark_distance": 2, "try_mark_width": 1, "yard_line_to_arrow": 1.8333 }) });
|
|
15
|
+
var FOOTBALL_SPECS = /* @__PURE__ */ Object.freeze({ "cfl": /* @__PURE__ */ Object.freeze({ "additional_minor_yard_lines": [-5, -10, -15], "arrow_base": 0.5, "arrow_length": 0.9682, "arrow_line_dist": 10, "bench_shape": "", "boundary_line_thickness": 1.3333, "coaching_box_width": 0, "endzone_length": 20, "extra_apron_padding": 2, "field_border_behind_bench": false, "field_border_thickness": 0, "field_bordered": false, "field_length": 110, "field_units": "yd", "field_width": 65, "goal_line_thickness": 0.1111, "inbound_cross_hashmark_length": 0.2778, "inbound_cross_hashmark_separation": 17, "inbound_hashmark_separation": 15.6667, "major_yard_line_distance": 5, "minor_line_thickness": 0.1111, "minor_yard_line_height": 0.6667, "number_font": "Clarendon-Regular", "number_height": 2, "number_to_yard_line": 0.3333, "number_width": 1.3333, "numbers_bottom": ["1", "0", "2", "0", "3", "0", "4", "0", "5", "0", "C", "5", "0", "4", "0", "3", "0", "2", "0", "1", "0"], "numbers_top": ["0", "1", "0", "2", "0", "3", "0", "4", "0", "5", "C", "0", "5", "0", "4", "0", "3", "0", "2", "0", "1"], "restricted_area_width": 0, "sideline_to_bottom_of_numbers": 7, "sideline_to_major_yard_line": 0.1111, "sideline_to_outer_yard_line": 0.1111, "team_bench_area_border_thickness": 0, "team_bench_length_back_side": 30, "team_bench_length_field_side": 30, "team_bench_width": 0, "top_number_to_arrow": 0.4167, "yard_line_to_arrow": 1.8333 }), "custom": /* @__PURE__ */ Object.freeze({ "arrow_base": 0, "arrow_length": 0, "arrow_line_dist": 0, "bench_shape": "", "boundary_line_thickness": 0, "coaching_box_width": 0, "endzone_length": 0, "extra_apron_padding": 0, "field_border_behind_bench": false, "field_border_thickness": 0, "field_bordered": false, "field_length": 0, "field_units": "", "field_width": 0, "goal_line_thickness": 0, "inbound_cross_hashmark_length": 0, "inbound_cross_hashmark_separation": 0, "inbound_hashmark_separation": 0, "major_yard_line_distance": 1, "minor_line_thickness": 0, "minor_yard_line_height": 0, "number_font": "", "number_height": 0, "number_to_yard_line": 0, "number_width": 0, "numbers_bottom": [], "numbers_top": [], "restricted_area_width": 0, "sideline_to_bottom_of_numbers": 0, "sideline_to_major_yard_line": 0, "sideline_to_outer_yard_line": 0, "team_bench_area_border_thickness": 0, "team_bench_length_back_side": 0, "team_bench_length_field_side": 0, "team_bench_width": 0, "top_number_to_arrow": 0, "try_mark_distance": 0, "try_mark_width": 0, "yard_line_to_arrow": 0 }), "ncaa": /* @__PURE__ */ Object.freeze({ "arrow_base": 0.5, "arrow_length": 0.9682, "arrow_line_dist": 10, "bench_shape": "rectangular", "boundary_line_thickness": 0.1111, "coaching_box_width": 2, "endzone_length": 10, "extra_apron_padding": 2, "field_border_behind_bench": true, "field_border_thickness": 1.3333, "field_bordered": true, "field_length": 100, "field_units": "yd", "field_width": 53.3333, "goal_line_thickness": 0.1111, "inbound_cross_hashmark_length": 0.2778, "inbound_cross_hashmark_separation": 13.3333, "inbound_hashmark_separation": 13.3333, "major_yard_line_distance": 5, "minor_line_thickness": 0.1111, "minor_yard_line_height": 0.6667, "number_font": "Clarendon-Regular", "number_height": 2, "number_to_yard_line": 0.3333, "number_width": 1.3333, "numbers_bottom": ["1", "0", "2", "0", "3", "0", "4", "0", "5", "0", "4", "0", "3", "0", "2", "0", "1", "0"], "numbers_top": ["0", "1", "0", "2", "0", "3", "0", "4", "0", "5", "0", "4", "0", "3", "0", "2", "0", "1"], "restricted_area_width": 1.8889, "sideline_to_bottom_of_numbers": 7, "sideline_to_major_yard_line": 0.1111, "sideline_to_outer_yard_line": 0.1111, "team_bench_area_border_thickness": 0.1111, "team_bench_length_back_side": 60, "team_bench_length_field_side": 60, "team_bench_width": 4, "top_number_to_arrow": 0.4167, "try_mark_distance": 3, "try_mark_width": 1, "yard_line_to_arrow": 1.8333 }), "nfhs11": /* @__PURE__ */ Object.freeze({ "arrow_base": 0.5, "arrow_length": 0.9682, "arrow_line_dist": 10, "bench_shape": "rectangular", "boundary_line_thickness": 2, "coaching_box_width": 2, "endzone_length": 10, "extra_apron_padding": 5, "field_bordered": true, "field_length": 100, "field_units": "yd", "field_width": 53.3333, "goal_line_thickness": 0.2222, "inbound_cross_hashmark_length": 0.2778, "inbound_cross_hashmark_separation": 17.7778, "inbound_hashmark_separation": 17.7778, "major_yard_line_distance": 5, "minor_line_thickness": 0.1111, "minor_yard_line_height": 0.6667, "number_font": "Clarendon-Regular", "number_height": 2, "number_to_yard_line": 0.3333, "number_width": 1.3333, "numbers_bottom": ["1", "0", "2", "0", "3", "0", "4", "0", "5", "0", "4", "0", "3", "0", "2", "0", "1", "0"], "numbers_top": ["0", "1", "0", "2", "0", "3", "0", "4", "0", "5", "0", "4", "0", "3", "0", "2", "0", "1"], "restricted_area_width": 2, "sideline_to_bottom_of_numbers": 7, "sideline_to_major_yard_line": 0.2222, "sideline_to_outer_yard_line": 0.2222, "team_bench_area_border_thickness": 0.1111, "team_bench_length_back_side": 50, "team_bench_length_field_side": 50, "team_bench_width": 4, "top_number_to_arrow": 0.4167, "try_mark_distance": 3, "try_mark_width": 1, "yard_line_to_arrow": 1.8333 }), "nfhs6": /* @__PURE__ */ Object.freeze({ "arrow_base": 0.5, "arrow_length": 0.9682, "arrow_line_dist": 10, "bench_shape": "rectangular", "boundary_line_thickness": 2, "coaching_box_width": 2, "endzone_length": 10, "extra_apron_padding": 5, "field_bordered": true, "field_length": 80, "field_units": "yd", "field_width": 40, "goal_line_thickness": 0.2222, "inbound_cross_hashmark_length": 0.2778, "inbound_cross_hashmark_separation": 10, "inbound_hashmark_separation": 10, "major_yard_line_distance": 5, "minor_line_thickness": 0.1111, "minor_yard_line_height": 0.6667, "number_font": "Clarendon-Regular", "number_height": 2, "number_to_yard_line": 0.3333, "number_width": 1.3333, "numbers_bottom": ["1", "0", "2", "0", "3", "0", "4", "0", "3", "0", "2", "0", "1", "0"], "numbers_top": ["0", "1", "0", "2", "0", "3", "0", "4", "0", "3", "0", "2", "0", "1"], "restricted_area_width": 2, "sideline_to_bottom_of_numbers": 5, "sideline_to_major_yard_line": 0.2222, "sideline_to_outer_yard_line": 0.2222, "team_bench_area_border_thickness": 0.1111, "team_bench_length_back_side": 30, "team_bench_length_field_side": 30, "team_bench_width": 4, "top_number_to_arrow": 0.4167, "try_mark_distance": 2, "try_mark_width": 1, "yard_line_to_arrow": 1.8333 }), "nfhs8": /* @__PURE__ */ Object.freeze({ "arrow_base": 0.5, "arrow_length": 0.9682, "arrow_line_dist": 10, "bench_shape": "rectangular", "boundary_line_thickness": 2, "coaching_box_width": 2, "endzone_length": 10, "extra_apron_padding": 5, "field_bordered": true, "field_length": 80, "field_units": "yd", "field_width": 40, "goal_line_thickness": 0.2222, "inbound_cross_hashmark_length": 0.2778, "inbound_cross_hashmark_separation": 10, "inbound_hashmark_separation": 10, "major_yard_line_distance": 5, "minor_line_thickness": 0.1111, "minor_yard_line_height": 0.6667, "number_font": "Clarendon-Regular", "number_height": 2, "number_to_yard_line": 0.3333, "number_width": 1.3333, "numbers_bottom": ["1", "0", "2", "0", "3", "0", "4", "0", "3", "0", "2", "0", "1", "0"], "numbers_top": ["0", "1", "0", "2", "0", "3", "0", "4", "0", "3", "0", "2", "0", "1"], "restricted_area_width": 2, "sideline_to_bottom_of_numbers": 5, "sideline_to_major_yard_line": 0.2222, "sideline_to_outer_yard_line": 0.2222, "team_bench_area_border_thickness": 0.1111, "team_bench_length_back_side": 30, "team_bench_length_field_side": 30, "team_bench_width": 4, "top_number_to_arrow": 0.4167, "try_mark_distance": 2, "try_mark_width": 1, "yard_line_to_arrow": 1.8333 }), "nfhs9": /* @__PURE__ */ Object.freeze({ "arrow_base": 0.5, "arrow_length": 0.9682, "arrow_line_dist": 10, "bench_shape": "rectangular", "boundary_line_thickness": 2, "coaching_box_width": 2, "endzone_length": 10, "extra_apron_padding": 5, "field_bordered": true, "field_length": 80, "field_units": "yd", "field_width": 40, "goal_line_thickness": 0.2222, "inbound_cross_hashmark_length": 0.2778, "inbound_cross_hashmark_separation": 7.7778, "inbound_hashmark_separation": 7.7778, "major_yard_line_distance": 5, "minor_line_thickness": 0.1111, "minor_yard_line_height": 0.6667, "number_font": "Clarendon-Regular", "number_height": 2, "number_to_yard_line": 0.3333, "number_width": 1.3333, "numbers_bottom": ["1", "0", "2", "0", "3", "0", "4", "0", "3", "0", "2", "0", "1", "0"], "numbers_top": ["0", "1", "0", "2", "0", "3", "0", "4", "0", "3", "0", "2", "0", "1"], "restricted_area_width": 2, "sideline_to_bottom_of_numbers": 5, "sideline_to_major_yard_line": 0.2222, "sideline_to_outer_yard_line": 0.2222, "team_bench_area_border_thickness": 0.1111, "team_bench_length_back_side": 30, "team_bench_length_field_side": 30, "team_bench_width": 4, "top_number_to_arrow": 0.4167, "try_mark_distance": 3, "try_mark_width": 1, "yard_line_to_arrow": 1.8333 }), "nfl": /* @__PURE__ */ Object.freeze({ "arrow_base": 0.5, "arrow_length": 0.9682, "arrow_line_dist": 10, "bench_shape": "trapezoid", "boundary_line_thickness": 2, "coaching_box_width": 2, "endzone_length": 10, "extra_apron_padding": 2, "field_border_behind_bench": true, "field_border_thickness": 1.3333, "field_bordered": true, "field_length": 100, "field_units": "yd", "field_width": 53.3333, "goal_line_thickness": 0.2222, "inbound_cross_hashmark_length": 0.2778, "inbound_cross_hashmark_separation": 6.1667, "inbound_hashmark_separation": 6.1667, "major_yard_line_distance": 5, "minor_line_thickness": 0.1111, "minor_yard_line_height": 0.6667, "number_font": "Clarendon-Regular", "number_height": 2, "number_to_yard_line": 0.3333, "number_width": 1.3333, "numbers_bottom": ["1", "0", "2", "0", "3", "0", "4", "0", "5", "0", "4", "0", "3", "0", "2", "0", "1", "0"], "numbers_top": ["0", "1", "0", "2", "0", "3", "0", "4", "0", "5", "0", "4", "0", "3", "0", "2", "0", "1"], "restricted_area_width": 2, "sideline_to_bottom_of_numbers": 12, "sideline_to_major_yard_line": 0.2222, "sideline_to_outer_yard_line": 0.2222, "team_bench_area_border_thickness": 0.1111, "team_bench_length_back_side": 37.2639, "team_bench_length_field_side": 44.9861, "team_bench_width": 6, "top_number_to_arrow": 0.4167, "try_mark_distance": 2, "try_mark_width": 1, "yard_line_to_arrow": 1.8333 }) });
|
|
16
16
|
|
|
17
17
|
// src/specs/hockey.ts
|
|
18
18
|
var HOCKEY_LEAGUES = ["ahl", "custom", "echl", "iihf", "ncaa", "nhl", "nwhl", "ohl", "phf", "pwhl", "qmjhl", "ushl"];
|
|
@@ -20,12 +20,16 @@ var HOCKEY_SPECS = /* @__PURE__ */ Object.freeze({ "ahl": /* @__PURE__ */ Object
|
|
|
20
20
|
|
|
21
21
|
// src/specs/lacrosse.ts
|
|
22
22
|
var LACROSSE_LEAGUES = ["custom", "ncaam", "ncaaw", "nll", "pll", "usam", "usaw", "world lacrosse"];
|
|
23
|
-
var LACROSSE_SPECS = /* @__PURE__ */ Object.freeze({ "custom": /* @__PURE__ */ Object.freeze({ "boundary_thickness": 0, "center_face_off_marker_color_contrasting": true, "center_face_off_marker_shape": "square", "center_face_off_marker_side_length": 0, "center_line_thickness": 0, "center_line_width": 0, "defensive_area_line_center_to_sideline": 0, "defensive_area_line_length": 0, "defensive_area_line_thickness": 0, "field_apron_thickness": 0, "field_length": 0, "field_shape": "rectangle", "field_units": "", "field_width": 0, "goal_circle_full_360": true, "goal_circle_radius": 0, "goal_circle_thickness": 0, "goal_depth": 0, "goal_frame_opening_interior": 0, "goal_frame_width": 0, "goal_line_center_to_end_line": 0, "goal_line_full_diameter": false, "goal_line_thickness": 0, "goal_mouth_line_thickness": 0, "goal_mouth_radius": 0, "goal_post_thickness": 0, "restraining_line_outer_edge_to_center": 0, "restraining_line_thickness": 0, "wing_line_center_to_sideline": 0, "wing_line_length": 0, "wing_line_thickness": 0 }), "ncaam": /* @__PURE__ */ Object.freeze({ "boundary_thickness": 0.1111, "center_face_off_marker_color_contrasting": true, "center_face_off_marker_shape": "square", "center_face_off_marker_side_length": 0.1111, "center_line_thickness": 0.1111, "center_line_width": 60, "defensive_area_line_center_to_sideline": 10, "defensive_area_line_length": 35, "defensive_area_line_thickness": 0.1111, "field_apron_thickness": 5, "field_length": 110, "field_shape": "rectangle", "field_units": "yd", "field_width": 60, "goal_circle_full_360": true, "goal_circle_radius": 3, "goal_circle_thickness": 0.1111, "goal_depth": 1.3333, "goal_frame_opening_interior": 2, "goal_frame_width": 2, "goal_line_center_to_end_line": 15, "goal_line_full_diameter": false, "goal_line_thickness": 0.1667, "goal_mouth_line_thickness": 0.1111, "goal_mouth_radius": 2, "goal_post_thickness": 0.0417, "restraining_line_outer_edge_to_center": 20, "restraining_line_thickness": 0.1111, "wing_line_center_to_sideline": 10, "wing_line_length": 20, "wing_line_thickness": 0.1111 }), "ncaaw": /* @__PURE__ */ Object.freeze({ "below_goal_marking_radius": 0.1524, "below_goal_marking_to_goal_line": 4.572, "boundary_thickness": 0.101, "center_circle_radius": 9, "center_circle_thickness": 0.101, "center_line_thickness": 0.101, "center_line_width": 3, "field_apron_thickness": 4, "field_length": 110, "field_shape": "rectangle", "field_units": "m", "field_width": 60, "goal_circle_full_360": true, "goal_circle_radius": 2.6, "goal_circle_thickness": 0.101, "goal_depth": 1.3333, "goal_fan_hash_mark_length": 0.3048, "goal_fan_hash_mark_line_thickness": 0.101, "goal_fan_hash_mark_separation_from_center": [0, 4, 8, 12], "goal_fan_line_thickness": 0.101, "goal_fan_radius": 10.6, "goal_frame_opening_interior": 2, "goal_frame_width": 2, "goal_line_center_to_end_line": 8.899, "goal_line_full_diameter": false, "goal_line_thickness": 0.05, "goal_mouth_hash_mark_length": 0.
|
|
23
|
+
var LACROSSE_SPECS = /* @__PURE__ */ Object.freeze({ "custom": /* @__PURE__ */ Object.freeze({ "boundary_thickness": 0, "center_face_off_marker_color_contrasting": true, "center_face_off_marker_shape": "square", "center_face_off_marker_side_length": 0, "center_line_thickness": 0, "center_line_width": 0, "defensive_area_line_center_to_sideline": 0, "defensive_area_line_length": 0, "defensive_area_line_thickness": 0, "field_apron_thickness": 0, "field_length": 0, "field_shape": "rectangle", "field_units": "", "field_width": 0, "goal_circle_full_360": true, "goal_circle_radius": 0, "goal_circle_thickness": 0, "goal_depth": 0, "goal_frame_opening_interior": 0, "goal_frame_width": 0, "goal_line_center_to_end_line": 0, "goal_line_full_diameter": false, "goal_line_thickness": 0, "goal_mouth_line_thickness": 0, "goal_mouth_radius": 0, "goal_post_thickness": 0, "restraining_line_outer_edge_to_center": 0, "restraining_line_thickness": 0, "wing_line_center_to_sideline": 0, "wing_line_length": 0, "wing_line_thickness": 0 }), "ncaam": /* @__PURE__ */ Object.freeze({ "boundary_thickness": 0.1111, "center_face_off_marker_color_contrasting": true, "center_face_off_marker_shape": "square", "center_face_off_marker_side_length": 0.1111, "center_line_thickness": 0.1111, "center_line_width": 60, "defensive_area_line_center_to_sideline": 10, "defensive_area_line_length": 35, "defensive_area_line_thickness": 0.1111, "field_apron_thickness": 5, "field_length": 110, "field_shape": "rectangle", "field_units": "yd", "field_width": 60, "goal_circle_full_360": true, "goal_circle_radius": 3, "goal_circle_thickness": 0.1111, "goal_depth": 1.3333, "goal_frame_opening_interior": 2, "goal_frame_width": 2, "goal_line_center_to_end_line": 15, "goal_line_full_diameter": false, "goal_line_thickness": 0.1667, "goal_mouth_line_thickness": 0.1111, "goal_mouth_radius": 2, "goal_post_thickness": 0.0417, "restraining_line_outer_edge_to_center": 20, "restraining_line_thickness": 0.1111, "wing_line_center_to_sideline": 10, "wing_line_length": 20, "wing_line_thickness": 0.1111 }), "ncaaw": /* @__PURE__ */ Object.freeze({ "below_goal_marking_radius": 0.1524, "below_goal_marking_to_goal_line": 4.572, "boundary_thickness": 0.101, "center_circle_radius": 9, "center_circle_thickness": 0.101, "center_line_thickness": 0.101, "center_line_width": 3, "field_apron_thickness": 4, "field_length": 110, "field_shape": "rectangle", "field_units": "m", "field_width": 60, "goal_circle_full_360": true, "goal_circle_radius": 2.6, "goal_circle_thickness": 0.101, "goal_depth": 1.3333, "goal_fan_hash_mark_length": 0.3048, "goal_fan_hash_mark_line_thickness": 0.101, "goal_fan_hash_mark_separation_from_center": [0, 4, 8, 12], "goal_fan_line_thickness": 0.101, "goal_fan_radius": 10.6, "goal_frame_opening_interior": 2, "goal_frame_width": 2, "goal_line_center_to_end_line": 8.899, "goal_line_full_diameter": false, "goal_line_thickness": 0.05, "goal_mouth_hash_mark_length": 0.305, "goal_mouth_hash_mark_line_thickness": 0.101, "goal_mouth_line_thickness": 0.101, "goal_mouth_radius": 14.6, "goal_mouth_semi_circle_separation": 2.6, "goal_post_thickness": 0.0417, "restraining_line_outer_edge_to_center": 24, "restraining_line_thickness": 0.101 }), "nll": /* @__PURE__ */ Object.freeze({ "bench_depth": 5, "bench_length": 24, "bench_separation": 9.25, "boards_thickness": 0.25, "center_circle_radius": 11, "center_circle_thickness": 0.1667, "center_face_off_marker_shape": "X", "center_face_off_marker_side_length": 2.5, "center_face_off_marker_side_width": 0.1667, "center_line_thickness": 1, "center_line_width": 85, "change_area_extension": 6, "change_area_outline_thickness": 0.1667, "change_area_width": 3, "corner_face_off_marker_radius": 1, "corner_face_off_marker_shape": "O", "corner_face_off_marker_to_attack_line_outer": 15, "corner_face_off_marker_to_boards": 15, "corner_radius": 28, "field_apron_thickness": 5, "field_length": 200, "field_shape": "oval", "field_units": "ft", "field_width": 85, "goal_circle_full_360": false, "goal_circle_radius": 9.25, "goal_circle_thickness": 0.1667, "goal_depth": 3.82, "goal_depth_to_circle": 1, "goal_frame_opening_interior": 4.75, "goal_frame_width": 2, "goal_line_center_to_end_line": 12, "goal_line_full_diameter": true, "goal_line_thickness": 0.1667, "goal_post_thickness": 0.0417, "has_boards": true, "has_endlines": false, "has_sidelines": false, "neutral_zone_length": 85, "penalty_box_depth": 5, "penalty_box_length": 8, "penalty_box_separation": 8, "referee_crease_radius": 10, "referee_crease_thickness": 0.1667, "restraining_line_outer_edge_to_center": 42.5, "restraining_line_thickness": 1 }), "pll": /* @__PURE__ */ Object.freeze({ "boundary_thickness": 0.1111, "center_face_off_marker_shape": "X", "center_face_off_marker_side_length": 2, "center_face_off_marker_side_width": 0.3333, "center_line_thickness": 0.1111, "center_line_width": 60, "field_apron_thickness": 6, "field_length": 100, "field_shape": "rectangle", "field_units": "yd", "field_width": 60, "goal_arc_extension": 15, "goal_arc_line_thickness": 0.1111, "goal_arc_parallel_line_to_center": 13, "goal_arc_radius": 15, "goal_circle_full_360": true, "goal_circle_radius": 3, "goal_circle_thickness": 0.1111, "goal_depth": 1.3333, "goal_frame_opening_interior": 2, "goal_frame_width": 2, "goal_line_center_to_end_line": 15, "goal_line_full_diameter": false, "goal_line_thickness": 0.1667, "goal_post_thickness": 0.0417, "wing_line_center_to_sideline": 11, "wing_line_length": 20, "wing_line_thickness": 0.1111 }), "usam": /* @__PURE__ */ Object.freeze({ "boundary_thickness": 0.1111, "center_face_off_marker_color_contrasting": false, "center_face_off_marker_shape": "X", "center_face_off_marker_side_length": 2.5, "center_face_off_marker_side_width": 0.1667, "center_line_thickness": 0.1111, "center_line_width": 60, "defensive_area_line_center_to_sideline": 10, "defensive_area_line_length": 35, "defensive_area_line_thickness": 0.1111, "field_apron_thickness": 5, "field_length": 110, "field_shape": "rectangle", "field_units": "yd", "field_width": 60, "goal_circle_full_360": true, "goal_circle_radius": 3, "goal_circle_thickness": 0.1111, "goal_depth": 1.3333, "goal_frame_opening_interior": 2, "goal_frame_width": 2, "goal_line_center_to_end_line": 15, "goal_line_full_diameter": false, "goal_line_thickness": 0.0556, "goal_post_thickness": 0.0417, "restraining_line_outer_edge_to_center": 20, "restraining_line_thickness": 0.1111, "wing_line_center_to_sideline": 10, "wing_line_length": 20, "wing_line_thickness": 0.1111 }), "usaw": /* @__PURE__ */ Object.freeze({ "below_goal_marking_radius": 0.1524, "below_goal_marking_to_goal_line": 4.572, "boundary_thickness": 0.101, "center_circle_radius": 9, "center_circle_thickness": 0.101, "center_line_thickness": 0.101, "center_line_width": 3, "field_apron_thickness": 4, "field_length": 110, "field_shape": "rectangle", "field_units": "m", "field_width": 60, "goal_circle_full_360": true, "goal_circle_radius": 2.6, "goal_circle_thickness": 0.101, "goal_depth": 1.3333, "goal_fan_hash_mark_length": 0.3048, "goal_fan_hash_mark_line_thickness": 0.101, "goal_fan_hash_mark_separation_from_center": [0, 4, 8, 12], "goal_fan_line_thickness": 0.101, "goal_fan_radius": 10.6, "goal_frame_opening_interior": 2, "goal_frame_width": 2, "goal_line_center_to_end_line": 8.899, "goal_line_full_diameter": false, "goal_line_thickness": 0.05, "goal_mouth_hash_mark_length": 0.305, "goal_mouth_hash_mark_line_thickness": 0.101, "goal_mouth_line_thickness": 0.101, "goal_mouth_radius": 14.6, "goal_mouth_semi_circle_separation": 2.6, "goal_post_thickness": 0.0417, "restraining_line_outer_edge_to_center": 24, "restraining_line_thickness": 0.101 }), "world lacrosse": /* @__PURE__ */ Object.freeze({ "bench_depth": 5, "bench_length": 24, "bench_separation": 9.25, "boards_thickness": 0.25, "center_circle_radius": 11, "center_circle_thickness": 0.1667, "center_face_off_marker_shape": "X", "center_face_off_marker_side_length": 2.5, "center_face_off_marker_side_width": 0.1667, "center_line_thickness": 0.1667, "center_line_width": 85, "change_area_extension": 6, "change_area_outline_thickness": 0.1667, "change_area_width": 3, "corner_face_off_marker_radius": 1, "corner_face_off_marker_shape": "O", "corner_face_off_marker_to_attack_line_outer": 15, "corner_face_off_marker_to_boards": 15, "corner_radius": 28, "field_apron_thickness": 5, "field_length": 200, "field_shape": "oval", "field_units": "ft", "field_width": 85, "goal_circle_full_360": false, "goal_circle_radius": 9.25, "goal_circle_thickness": 0.1667, "goal_depth": 4, "goal_depth_to_circle": 1, "goal_frame_opening_interior": 2, "goal_frame_width": 2, "goal_line_center_to_end_line": 12, "goal_line_full_diameter": true, "goal_line_thickness": 0.1667, "goal_post_thickness": 0.0417, "has_boards": true, "has_endlines": false, "has_sidelines": false, "neutral_zone_length": 85, "penalty_box_depth": 5, "penalty_box_length": 8, "penalty_box_separation": 8, "referee_crease_radius": 10, "referee_crease_thickness": 0.1667, "restraining_line_outer_edge_to_center": 42.5, "restraining_line_thickness": 0.1667 }) });
|
|
24
24
|
|
|
25
25
|
// src/specs/soccer.ts
|
|
26
26
|
var SOCCER_LEAGUES = ["custom", "epl", "fifa", "mls", "ncaa", "nwsl"];
|
|
27
27
|
var SOCCER_SPECS = /* @__PURE__ */ Object.freeze({ "custom": /* @__PURE__ */ Object.freeze({ "center_circle_radius": 0, "center_mark_radius": 0, "corner_arc_radius": 0, "defensive_mark_depth": 0, "defensive_mark_distance": 0, "goal_box_length": 0, "goal_depth": 0, "goal_line_defensive_mark_visible": true, "goal_width": 0, "interior_of_goal_post_to_goal_box": 0, "interior_of_goal_post_to_penalty_box": 0, "line_thickness": 0, "penalty_box_length": 0, "penalty_circle_radius": 0, "penalty_mark_dist": 0, "penalty_mark_radius": 0, "pitch_apron_goal_line": 0, "pitch_apron_touchline": 0, "pitch_length": 0, "pitch_units": "", "pitch_width": 0, "touchline_defensive_mark_visible": true }), "epl": /* @__PURE__ */ Object.freeze({ "center_circle_radius": 9.15, "center_mark_radius": 0.3048, "corner_arc_radius": 1, "defensive_mark_depth": 0.5, "defensive_mark_distance": 9.15, "goal_box_length": 5.5, "goal_depth": 1.7, "goal_line_defensive_mark_visible": true, "goal_width": 7.32, "interior_of_goal_post_to_goal_box": 5.5, "interior_of_goal_post_to_penalty_box": 16.5, "line_thickness": 0.12, "penalty_box_length": 16.5, "penalty_circle_radius": 9.15, "penalty_mark_dist": 11, "penalty_mark_radius": 0.1524, "pitch_apron_goal_line": 1, "pitch_apron_touchline": 1, "pitch_length": 120, "pitch_units": "m", "pitch_width": 90, "touchline_defensive_mark_visible": true }), "fifa": /* @__PURE__ */ Object.freeze({ "center_circle_radius": 9.15, "center_mark_radius": 0.3048, "corner_arc_radius": 1, "defensive_mark_depth": 0.5, "defensive_mark_distance": 9.15, "goal_box_length": 5.5, "goal_depth": 1.7, "goal_line_defensive_mark_visible": true, "goal_width": 7.32, "interior_of_goal_post_to_goal_box": 5.5, "interior_of_goal_post_to_penalty_box": 16.5, "line_thickness": 0.12, "penalty_box_length": 16.5, "penalty_circle_radius": 9.15, "penalty_mark_dist": 11, "penalty_mark_radius": 0.1524, "pitch_apron_goal_line": 1, "pitch_apron_touchline": 1, "pitch_length": 120, "pitch_units": "m", "pitch_width": 90, "touchline_defensive_mark_visible": true }), "mls": /* @__PURE__ */ Object.freeze({ "center_circle_radius": 10, "center_mark_radius": 0.333, "corner_arc_radius": 1, "defensive_mark_depth": 0.5, "defensive_mark_distance": 10, "goal_box_length": 6, "goal_depth": 1.86, "goal_line_defensive_mark_visible": true, "goal_width": 8, "interior_of_goal_post_to_goal_box": 6, "interior_of_goal_post_to_penalty_box": 18, "line_thickness": 0.139, "penalty_box_length": 18, "penalty_circle_radius": 10, "penalty_mark_dist": 12, "penalty_mark_radius": 0.1667, "pitch_apron_goal_line": 1.0936, "pitch_apron_touchline": 1.0936, "pitch_length": 110, "pitch_units": "yd", "pitch_width": 70, "touchline_defensive_mark_visible": true }), "ncaa": /* @__PURE__ */ Object.freeze({ "center_circle_radius": 10, "center_mark_radius": 0.333, "corner_arc_radius": 1, "defensive_mark_depth": 1, "defensive_mark_distance": 11, "defensive_mark_separation_from_line": 0.1667, "goal_box_length": 6, "goal_depth": 1.86, "goal_line_defensive_mark_visible": true, "goal_width": 8, "interior_of_goal_post_to_goal_box": 6, "interior_of_goal_post_to_penalty_box": 18, "line_thickness": 0.139, "penalty_box_length": 18, "penalty_circle_radius": 10, "penalty_mark_dist": 12, "penalty_mark_radius": 0.125, "pitch_apron_goal_line": 1.0936, "pitch_apron_touchline": 1.0936, "pitch_length": 120, "pitch_units": "yd", "pitch_width": 75, "touchline_defensive_mark_visible": false }), "nwsl": /* @__PURE__ */ Object.freeze({ "center_circle_radius": 10, "center_mark_radius": 0.333, "corner_arc_radius": 1, "defensive_mark_depth": 0.5, "defensive_mark_distance": 10, "goal_box_length": 6, "goal_depth": 1.86, "goal_line_defensive_mark_visible": true, "goal_width": 8, "interior_of_goal_post_to_goal_box": 6, "interior_of_goal_post_to_penalty_box": 18, "line_thickness": 0.139, "penalty_box_length": 18, "penalty_circle_radius": 10, "penalty_mark_dist": 12, "penalty_mark_radius": 0.1667, "pitch_apron_goal_line": 1.0936, "pitch_apron_touchline": 1.0936, "pitch_length": 110, "pitch_units": "yd", "pitch_width": 70, "touchline_defensive_mark_visible": true }) });
|
|
28
28
|
|
|
29
|
+
// src/specs/softball.ts
|
|
30
|
+
var SOFTBALL_LEAGUES = ["custom", "ncaa"];
|
|
31
|
+
var SOFTBALL_SPECS = /* @__PURE__ */ Object.freeze({ "custom": /* @__PURE__ */ Object.freeze({ "backstop_radius": 0, "base_side_length": 0, "baseline_distance": 0, "batters_box_length": 0, "batters_box_width": 0, "batters_box_y_adj": 0, "catchers_box_depth": 0, "catchers_box_width": 0, "center_field_distance": 0, "coaches_box_depth": 0, "coaches_box_length": 0, "coaches_box_width": 0, "field_units": "", "foul_line_to_foul_grass": 0, "home_plate_circle_radius": 0, "home_plate_edge_length": 0, "home_plate_side_to_batters_box": 0, "infield_arc_radius": 0, "left_field_distance": 0, "line_width": 0, "pitchers_circle_radius": 0, "pitchers_lane_length": 0, "pitchers_plate_front_to_home_plate": 0, "pitchers_plate_length": 0, "pitchers_plate_width": 0, "right_field_distance": 0, "running_lane_depth": 0, "running_lane_length": 0, "running_lane_start_distance": 0 }), "ncaa": /* @__PURE__ */ Object.freeze({ "backstop_radius": 25, "base_side_length": 1.25, "baseline_distance": 60, "batters_box_length": 7, "batters_box_width": 3, "batters_box_y_adj": 1.2083, "catchers_box_depth": 7, "catchers_box_width": 8.4167, "center_field_distance": 220, "coaches_box_depth": 8, "coaches_box_length": 15, "coaches_box_width": 3, "field_units": "ft", "foul_line_to_foul_grass": 3, "home_plate_circle_radius": 13, "home_plate_edge_length": 1.4167, "home_plate_side_to_batters_box": 0.5, "infield_arc_radius": 60, "left_field_distance": 190, "line_width": 0.25, "pitchers_circle_radius": 8, "pitchers_lane_length": 8, "pitchers_plate_front_to_home_plate": 43, "pitchers_plate_length": 2, "pitchers_plate_width": 0.5, "right_field_distance": 190, "running_lane_depth": 3, "running_lane_length": 30, "running_lane_start_distance": 30 }) });
|
|
32
|
+
|
|
29
33
|
// src/specs/tennis.ts
|
|
30
34
|
var TENNIS_LEAGUES = ["atp", "custom", "ita", "itf", "ncaa", "usta", "wta"];
|
|
31
35
|
var TENNIS_SPECS = /* @__PURE__ */ Object.freeze({ "atp": /* @__PURE__ */ Object.freeze({ "backstop_distance": 21, "center_mark_length": 0.3333, "court_length": 78, "court_units": "ft", "doubles_width": 36, "line_thickness": 0.1667, "net_length": 42, "serviceline_distance": 21, "sidestop_distance": 12, "singles_width": 27 }), "custom": /* @__PURE__ */ Object.freeze({ "backstop_distance": 0, "center_mark_length": 0, "court_length": 0, "court_units": "", "doubles_width": 0, "line_thickness": 0, "net_length": 0, "serviceline_distance": 0, "sidestop_distance": 0, "singles_width": 0 }), "ita": /* @__PURE__ */ Object.freeze({ "backstop_distance": 21, "center_mark_length": 0.3333, "court_length": 78, "court_units": "ft", "doubles_width": 36, "line_thickness": 0.1667, "net_length": 42, "serviceline_distance": 21, "sidestop_distance": 12, "singles_width": 27 }), "itf": /* @__PURE__ */ Object.freeze({ "backstop_distance": 21, "center_mark_length": 0.3333, "court_length": 78, "court_units": "ft", "doubles_width": 36, "line_thickness": 0.1667, "net_length": 42, "serviceline_distance": 21, "sidestop_distance": 12, "singles_width": 27 }), "ncaa": /* @__PURE__ */ Object.freeze({ "backstop_distance": 21, "center_mark_length": 0.3333, "court_length": 78, "court_units": "ft", "doubles_width": 36, "line_thickness": 0.1667, "net_length": 42, "serviceline_distance": 21, "sidestop_distance": 12, "singles_width": 27 }), "usta": /* @__PURE__ */ Object.freeze({ "backstop_distance": 21, "center_mark_length": 0.3333, "court_length": 78, "court_units": "ft", "doubles_width": 36, "line_thickness": 0.1667, "net_length": 42, "serviceline_distance": 21, "sidestop_distance": 12, "singles_width": 27 }), "wta": /* @__PURE__ */ Object.freeze({ "backstop_distance": 21, "center_mark_length": 0.3333, "court_length": 78, "court_units": "ft", "doubles_width": 36, "line_thickness": 0.1667, "net_length": 42, "serviceline_distance": 21, "sidestop_distance": 12, "singles_width": 27 }) });
|
|
@@ -34,6 +38,6 @@ var TENNIS_SPECS = /* @__PURE__ */ Object.freeze({ "atp": /* @__PURE__ */ Object
|
|
|
34
38
|
var VOLLEYBALL_LEAGUES = ["custom", "fivb", "ncaa", "usa volleyball"];
|
|
35
39
|
var VOLLEYBALL_SPECS = /* @__PURE__ */ Object.freeze({ "custom": /* @__PURE__ */ Object.freeze({ "attack_line_edge_to_center_line": 0, "court_apron_end_line": 0, "court_apron_sideline": 0.5, "court_length": 0, "court_units": "m", "court_width": 0, "free_zone_end_line": 0, "free_zone_sideline": 0, "line_thickness": 0, "service_zone_mark_length": 0, "service_zone_mark_to_end_line": 0, "substitution_zone_dash_breaks": 0, "substitution_zone_dash_length": 0, "substitution_zone_rep_pattern": 0 }), "fivb": /* @__PURE__ */ Object.freeze({ "attack_line_edge_to_center_line": 3, "court_apron_end_line": 2, "court_apron_sideline": 1.5, "court_length": 18, "court_units": "m", "court_width": 9, "free_zone_end_line": 6.5, "free_zone_sideline": 5, "line_thickness": 0.05, "service_zone_mark_length": 0.15, "service_zone_mark_to_end_line": 0.2, "substitution_zone_dash_breaks": 0.2, "substitution_zone_dash_length": 0.15, "substitution_zone_rep_pattern": 5 }), "ncaa": /* @__PURE__ */ Object.freeze({ "attack_line_edge_to_center_line": 3, "court_apron_end_line": 2, "court_apron_sideline": 1.5, "court_length": 18, "court_units": "m", "court_width": 9, "free_zone_end_line": 4.5, "free_zone_sideline": 3, "line_thickness": 0.05, "service_zone_mark_length": 0.15, "service_zone_mark_to_end_line": 0.2, "substitution_zone_dash_breaks": 0.2, "substitution_zone_dash_length": 0.15, "substitution_zone_rep_pattern": 5 }), "usa volleyball": /* @__PURE__ */ Object.freeze({ "attack_line_edge_to_center_line": 3, "court_apron_end_line": 2, "court_apron_sideline": 1.5, "court_length": 18, "court_units": "m", "court_width": 9, "free_zone_end_line": 4.5, "free_zone_sideline": 3, "line_thickness": 0.05, "service_zone_mark_length": 0.15, "service_zone_mark_to_end_line": 0.2, "substitution_zone_dash_breaks": 0.2, "substitution_zone_dash_length": 0.15, "substitution_zone_rep_pattern": 5 }) });
|
|
36
40
|
|
|
37
|
-
export { BASEBALL_LEAGUES, BASEBALL_SPECS, BASKETBALL_LEAGUES, BASKETBALL_SPECS, CURLING_LEAGUES, CURLING_SPECS, FOOTBALL_LEAGUES, FOOTBALL_SPECS, HOCKEY_LEAGUES, HOCKEY_SPECS, LACROSSE_LEAGUES, LACROSSE_SPECS, SOCCER_LEAGUES, SOCCER_SPECS, TENNIS_LEAGUES, TENNIS_SPECS, VOLLEYBALL_LEAGUES, VOLLEYBALL_SPECS };
|
|
38
|
-
//# sourceMappingURL=chunk-
|
|
39
|
-
//# sourceMappingURL=chunk-
|
|
41
|
+
export { BASEBALL_LEAGUES, BASEBALL_SPECS, BASKETBALL_LEAGUES, BASKETBALL_SPECS, CURLING_LEAGUES, CURLING_SPECS, FOOTBALL_LEAGUES, FOOTBALL_SPECS, HOCKEY_LEAGUES, HOCKEY_SPECS, LACROSSE_LEAGUES, LACROSSE_SPECS, SOCCER_LEAGUES, SOCCER_SPECS, SOFTBALL_LEAGUES, SOFTBALL_SPECS, TENNIS_LEAGUES, TENNIS_SPECS, VOLLEYBALL_LEAGUES, VOLLEYBALL_SPECS };
|
|
42
|
+
//# sourceMappingURL=chunk-3WYO7OMK.js.map
|
|
43
|
+
//# sourceMappingURL=chunk-3WYO7OMK.js.map
|