@johnmorrisdotca/kyogijo-stadiums 0.45.1 → 0.45.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +82 -0
- package/dist/annotate.d.ts +1 -1
- package/dist/annotate.js +1 -1
- package/dist/arenas-entry.d.ts +1 -0
- package/dist/arenas-entry.js +2 -0
- package/dist/athletics/describe.js +1 -1
- package/dist/athletics-entry.d.ts +1 -0
- package/dist/athletics-entry.js +2 -0
- package/dist/atlas-entry.d.ts +1 -0
- package/dist/atlas-entry.js +2 -0
- package/dist/ballpark.d.ts +1 -1
- package/dist/ballpark.js +1 -1
- package/dist/budo/describe.js +1 -1
- package/dist/budo-entry.d.ts +1 -0
- package/dist/budo-entry.js +2 -0
- package/dist/canvas-entry.d.ts +1 -0
- package/dist/canvas-entry.js +2 -0
- package/dist/charts-entry.d.ts +1 -0
- package/dist/charts-entry.js +2 -0
- package/dist/charts.athletics.js +1 -1
- package/dist/charts.baseball.js +1 -1
- package/dist/charts.curling.heat.js +1 -1
- package/dist/charts.curling.js +1 -1
- package/dist/charts.d.ts +1 -1
- package/dist/charts.js +1 -1
- package/dist/charts.network.js +1 -1
- package/dist/charts.pool.js +1 -1
- package/dist/charts.skating.js +1 -1
- package/dist/charts.soccer.js +1 -1
- package/dist/cityctx-entry.d.ts +1 -0
- package/dist/cityctx-entry.js +2 -0
- package/dist/d3-entry.d.ts +1 -0
- package/dist/d3-entry.js +2 -0
- package/dist/district-entry.d.ts +2 -0
- package/dist/district-entry.js +4 -0
- package/dist/district-lean-entry.js +1 -1
- package/dist/district.js +1 -1
- package/dist/draw.js +1 -1
- package/dist/element-entry.d.ts +1 -0
- package/dist/element-entry.js +2 -0
- package/dist/eras-entry.d.ts +1 -0
- package/dist/eras-entry.js +2 -0
- package/dist/events.js +1 -1
- package/dist/flythrough-entry.d.ts +1 -0
- package/dist/flythrough-entry.js +2 -0
- package/dist/frames-entry.d.ts +1 -0
- package/dist/frames-entry.js +2 -0
- package/dist/full.d.ts +1 -0
- package/dist/full.js +3 -1
- package/dist/geojson-entry.d.ts +1 -0
- package/dist/geojson-entry.js +2 -0
- package/dist/geometry-entry.d.ts +1 -0
- package/dist/geometry-entry.js +2 -0
- package/dist/grounds-entry.d.ts +1 -0
- package/dist/grounds-entry.js +2 -0
- package/dist/heat.js +1 -1
- package/dist/heat.zones.d.ts +1 -1
- package/dist/heat.zones.js +1 -1
- package/dist/index.d.ts +3 -2
- package/dist/index.js +3 -1
- package/dist/judging-entry.d.ts +1 -0
- package/dist/judging-entry.js +2 -0
- package/dist/judging.board.js +1 -1
- package/dist/judging.draw.js +1 -1
- package/dist/judging.js +1 -1
- package/dist/judging.text.js +1 -1
- package/dist/layers.env.d.ts +1 -1
- package/dist/layers.env.js +1 -1
- package/dist/layers.js +1 -1
- package/dist/layout.js +1 -1
- package/dist/layouts-entry.d.ts +1 -0
- package/dist/layouts-entry.js +2 -0
- package/dist/leagues-entry.d.ts +1 -0
- package/dist/leagues-entry.js +2 -0
- package/dist/mount-entry.d.ts +1 -0
- package/dist/mount-entry.js +2 -0
- package/dist/multi-entry.d.ts +1 -0
- package/dist/multi-entry.js +2 -0
- package/dist/multi.draw.js +1 -1
- package/dist/multi.js +1 -1
- package/dist/osm-entry.d.ts +1 -0
- package/dist/osm-entry.js +2 -0
- package/dist/outside.d.ts +2 -1
- package/dist/outside.js +7 -6
- package/dist/parks-entry.d.ts +1 -0
- package/dist/parks-entry.js +2 -0
- package/dist/plateau-entry.d.ts +1 -0
- package/dist/plateau-entry.js +2 -0
- package/dist/plot-entry.d.ts +1 -0
- package/dist/plot-entry.js +2 -0
- package/dist/png-entry.d.ts +1 -0
- package/dist/png-entry.js +2 -0
- package/dist/pool.replay.js +1 -1
- package/dist/pool.words.js +1 -1
- package/dist/quality.d.ts +20 -2
- package/dist/quality.js +25 -4
- package/dist/ranges.js +1 -1
- package/dist/react-entry.d.ts +1 -0
- package/dist/react-entry.js +2 -0
- package/dist/replay-entry.d.ts +1 -0
- package/dist/replay-entry.js +2 -0
- package/dist/replay.d.ts +1 -1
- package/dist/replay.dom.js +1 -1
- package/dist/replay.js +1 -1
- package/dist/rules.js +1 -1
- package/dist/scene-entry.d.ts +1 -0
- package/dist/scene-entry.js +2 -0
- package/dist/situation.draw.js +1 -1
- package/dist/situation.js +1 -1
- package/dist/skating/describe.js +1 -1
- package/dist/skating-entry.d.ts +1 -0
- package/dist/skating-entry.js +2 -0
- package/dist/stadiums-entry.d.ts +1 -0
- package/dist/stadiums-entry.js +2 -0
- package/dist/strings.core.d.ts +1104 -0
- package/dist/strings.core.js +55 -0
- package/dist/strings.d.ts +4 -1084
- package/dist/strings.en.d.ts +2 -0
- package/dist/strings.en.js +537 -0
- package/dist/strings.ja.d.ts +2 -0
- package/dist/strings.ja.js +562 -0
- package/dist/strings.js +5 -1100
- package/dist/surfaces/venue.js +1 -1
- package/dist/target.js +1 -1
- package/dist/team.common.js +1 -1
- package/dist/team.formation.js +1 -1
- package/dist/team.lineup.js +1 -1
- package/dist/team.motion.js +1 -1
- package/dist/team.network.js +1 -1
- package/dist/team.shape.js +1 -1
- package/dist/turn-entry.d.ts +1 -0
- package/dist/turn-entry.js +2 -0
- package/dist/turn.camera.d.ts +5 -0
- package/dist/turn.camera.js +8 -0
- package/dist/turn.dom.js +55 -5
- package/dist/turn.model.d.ts +1 -1
- package/dist/turn.model.js +1 -1
- package/dist/uprights.js +1 -1
- package/dist/venue-data-entry.d.ts +2 -0
- package/dist/venue-data-entry.js +5 -1
- package/dist/venue-data.d.ts +1 -1
- package/dist/venue-data.js +5 -2
- package/dist/venues/amerant-bank-arena.data.d.ts +2 -0
- package/dist/venues/amerant-bank-arena.data.js +9 -0
- package/dist/venues/amerant-bank-arena.osm.data.d.ts +2 -0
- package/dist/venues/amerant-bank-arena.osm.data.js +47 -0
- package/dist/venues/american-airlines-center.data.d.ts +2 -0
- package/dist/venues/american-airlines-center.data.js +9 -0
- package/dist/venues/american-airlines-center.osm.data.d.ts +2 -0
- package/dist/venues/american-airlines-center.osm.data.js +57 -0
- package/dist/venues/ball-arena.data.d.ts +2 -0
- package/dist/venues/ball-arena.data.js +9 -0
- package/dist/venues/ball-arena.osm.data.d.ts +2 -0
- package/dist/venues/ball-arena.osm.data.js +63 -0
- package/dist/venues/bell-centre.data.d.ts +2 -0
- package/dist/venues/bell-centre.data.js +9 -0
- package/dist/venues/bell-centre.osm.data.d.ts +2 -0
- package/dist/venues/bell-centre.osm.data.js +24 -0
- package/dist/venues/benchmark-international-arena.data.d.ts +2 -0
- package/dist/venues/benchmark-international-arena.data.js +9 -0
- package/dist/venues/benchmark-international-arena.osm.data.d.ts +2 -0
- package/dist/venues/benchmark-international-arena.osm.data.js +57 -0
- package/dist/venues/bridgestone-arena.data.d.ts +2 -0
- package/dist/venues/bridgestone-arena.data.js +9 -0
- package/dist/venues/bridgestone-arena.osm.data.d.ts +2 -0
- package/dist/venues/bridgestone-arena.osm.data.js +43 -0
- package/dist/venues/canada-life-centre.data.d.ts +2 -0
- package/dist/venues/canada-life-centre.data.js +9 -0
- package/dist/venues/canada-life-centre.osm.data.d.ts +2 -0
- package/dist/venues/canada-life-centre.osm.data.js +35 -0
- package/dist/venues/canadian-tire-centre.data.d.ts +2 -0
- package/dist/venues/canadian-tire-centre.data.js +9 -0
- package/dist/venues/canadian-tire-centre.osm.data.d.ts +2 -0
- package/dist/venues/canadian-tire-centre.osm.data.js +45 -0
- package/dist/venues/capital-one-arena.data.d.ts +2 -0
- package/dist/venues/capital-one-arena.data.js +9 -0
- package/dist/venues/capital-one-arena.osm.data.d.ts +2 -0
- package/dist/venues/capital-one-arena.osm.data.js +22 -0
- package/dist/venues/climate-pledge-arena.data.d.ts +2 -0
- package/dist/venues/climate-pledge-arena.data.js +9 -0
- package/dist/venues/climate-pledge-arena.osm.data.d.ts +2 -0
- package/dist/venues/climate-pledge-arena.osm.data.js +32 -0
- package/dist/venues/crypto-com-arena.data.d.ts +2 -0
- package/dist/venues/crypto-com-arena.data.js +9 -0
- package/dist/venues/crypto-com-arena.osm.data.d.ts +2 -0
- package/dist/venues/crypto-com-arena.osm.data.js +64 -0
- package/dist/venues/delta-center.data.d.ts +2 -0
- package/dist/venues/delta-center.data.js +9 -0
- package/dist/venues/delta-center.osm.data.d.ts +2 -0
- package/dist/venues/delta-center.osm.data.js +40 -0
- package/dist/venues/enterprise-center.data.d.ts +2 -0
- package/dist/venues/enterprise-center.data.js +9 -0
- package/dist/venues/enterprise-center.osm.data.d.ts +2 -0
- package/dist/venues/enterprise-center.osm.data.js +35 -0
- package/dist/venues/grand-casino-arena.data.d.ts +2 -0
- package/dist/venues/grand-casino-arena.data.js +9 -0
- package/dist/venues/grand-casino-arena.osm.data.d.ts +2 -0
- package/dist/venues/grand-casino-arena.osm.data.js +37 -0
- package/dist/venues/honda-center.data.d.ts +2 -0
- package/dist/venues/honda-center.data.js +9 -0
- package/dist/venues/honda-center.osm.data.d.ts +2 -0
- package/dist/venues/honda-center.osm.data.js +46 -0
- package/dist/venues/keybank-center.data.d.ts +2 -0
- package/dist/venues/keybank-center.data.js +9 -0
- package/dist/venues/keybank-center.osm.data.d.ts +2 -0
- package/dist/venues/keybank-center.osm.data.js +34 -0
- package/dist/venues/lenovo-center.data.d.ts +2 -0
- package/dist/venues/lenovo-center.data.js +9 -0
- package/dist/venues/lenovo-center.osm.data.d.ts +2 -0
- package/dist/venues/lenovo-center.osm.data.js +51 -0
- package/dist/venues/little-caesars-arena.data.d.ts +2 -0
- package/dist/venues/little-caesars-arena.data.js +9 -0
- package/dist/venues/little-caesars-arena.osm.data.d.ts +2 -0
- package/dist/venues/little-caesars-arena.osm.data.js +64 -0
- package/dist/venues/madison-square-garden.data.d.ts +2 -0
- package/dist/venues/madison-square-garden.data.js +9 -0
- package/dist/venues/madison-square-garden.osm.data.d.ts +2 -0
- package/dist/venues/madison-square-garden.osm.data.js +47 -0
- package/dist/venues/nationwide-arena.data.d.ts +2 -0
- package/dist/venues/nationwide-arena.data.js +9 -0
- package/dist/venues/nationwide-arena.osm.data.d.ts +2 -0
- package/dist/venues/nationwide-arena.osm.data.js +50 -0
- package/dist/venues/ppg-paints-arena.data.d.ts +2 -0
- package/dist/venues/ppg-paints-arena.data.js +9 -0
- package/dist/venues/ppg-paints-arena.osm.data.d.ts +2 -0
- package/dist/venues/ppg-paints-arena.osm.data.js +31 -0
- package/dist/venues/prudential-center.data.d.ts +2 -0
- package/dist/venues/prudential-center.data.js +9 -0
- package/dist/venues/prudential-center.osm.data.d.ts +2 -0
- package/dist/venues/prudential-center.osm.data.js +41 -0
- package/dist/venues/rogers-arena.data.d.ts +2 -0
- package/dist/venues/rogers-arena.data.js +10 -0
- package/dist/venues/rogers-arena.osm.data.d.ts +2 -0
- package/dist/venues/rogers-arena.osm.data.js +27 -0
- package/dist/venues/rogers-place.data.d.ts +2 -0
- package/dist/venues/rogers-place.data.js +9 -0
- package/dist/venues/rogers-place.osm.data.d.ts +2 -0
- package/dist/venues/rogers-place.osm.data.js +40 -0
- package/dist/venues/sap-center.data.d.ts +2 -0
- package/dist/venues/sap-center.data.js +9 -0
- package/dist/venues/sap-center.osm.data.d.ts +2 -0
- package/dist/venues/sap-center.osm.data.js +54 -0
- package/dist/venues/scotiabank-arena.data.d.ts +2 -0
- package/dist/venues/scotiabank-arena.data.js +9 -0
- package/dist/venues/scotiabank-arena.osm.data.d.ts +2 -0
- package/dist/venues/scotiabank-arena.osm.data.js +45 -0
- package/dist/venues/scotiabank-saddledome.data.d.ts +2 -0
- package/dist/venues/scotiabank-saddledome.data.js +9 -0
- package/dist/venues/scotiabank-saddledome.osm.data.d.ts +2 -0
- package/dist/venues/scotiabank-saddledome.osm.data.js +46 -0
- package/dist/venues/t-mobile-arena.data.d.ts +2 -0
- package/dist/venues/t-mobile-arena.data.js +9 -0
- package/dist/venues/t-mobile-arena.osm.data.d.ts +2 -0
- package/dist/venues/t-mobile-arena.osm.data.js +50 -0
- package/dist/venues/td-garden.data.d.ts +2 -0
- package/dist/venues/td-garden.data.js +9 -0
- package/dist/venues/td-garden.osm.data.d.ts +2 -0
- package/dist/venues/td-garden.osm.data.js +24 -0
- package/dist/venues/ubs-arena.data.d.ts +2 -0
- package/dist/venues/ubs-arena.data.js +9 -0
- package/dist/venues/ubs-arena.osm.data.d.ts +2 -0
- package/dist/venues/ubs-arena.osm.data.js +33 -0
- package/dist/venues/united-center.data.d.ts +2 -0
- package/dist/venues/united-center.data.js +9 -0
- package/dist/venues/united-center.osm.data.d.ts +2 -0
- package/dist/venues/united-center.osm.data.js +56 -0
- package/dist/venues/xfinity-mobile-arena.data.d.ts +2 -0
- package/dist/venues/xfinity-mobile-arena.data.js +9 -0
- package/dist/venues/xfinity-mobile-arena.osm.data.d.ts +2 -0
- package/dist/venues/xfinity-mobile-arena.osm.data.js +47 -0
- package/dist/venues-entry.d.ts +1 -0
- package/dist/venues-entry.js +2 -0
- package/dist/venues.all.d.ts +1 -0
- package/dist/venues.all.js +6 -0
- package/dist/venues.d.ts +16 -4
- package/dist/venues.index.d.ts +8 -0
- package/dist/venues.index.js +34 -0
- package/dist/venues.js +45 -8
- package/dist/venues.osm.data.d.ts +0 -2
- package/dist/venues.osm.data.js +0 -2
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/dist/walk/vancouver.data.d.ts +2 -0
- package/dist/walk/vancouver.data.js +1291 -0
- package/dist/walk.d.ts +24 -1
- package/dist/walk.data.d.ts +2 -2
- package/dist/walk.data.js +13 -1293
- package/dist/walk.full.d.ts +1 -0
- package/dist/walk.full.js +5 -0
- package/dist/walk.index.d.ts +7 -0
- package/dist/walk.index.js +3 -0
- package/dist/walk.js +69 -7
- package/package.json +7 -2
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import "./full.ts";
|
|
2
|
+
import "./venues.all.ts";
|
|
2
3
|
export { COLOR_PROPERTIES, SPORTS, crowdStands, describe, drawBadge, drawKyogijo, drawScore, drawSurface, isPortrait, statusLabel, statusText, winnerOf } from "./draw.ts";
|
|
3
4
|
export { HOME_FIRST, HOME_FIRST_LEAGUES, homeSideFor } from "./homeside.ts";
|
|
4
5
|
export { inkOn, luminance, rgbOf, safeColour, safePicture } from "./colour.ts";
|
|
@@ -35,8 +36,8 @@ export { HEAT_RAMPS, HEAT_RAMP_NAMES } from "./heat.colour.ts";
|
|
|
35
36
|
export { ZONE_SETS, ZONE_SET_IDS } from "./heat.zones.ts";
|
|
36
37
|
export type { Bandwidth, ContourLayer, HeatBase, HeatBins, HeatDatum, HeatLabels, HeatLegend, HeatRamp, HeatRampName, HeatStatistic, HeatmapLayer, HexOrientation, HexbinLayer, LegendLayer, Reducer, StatisticName, ZoneSetId, ZonesLayer } from "./heat.types.ts";
|
|
37
38
|
export type { ArrowsLayer, Comet, Layer, LayerBase, LayerKind, LayerTeam, LineDatum, LineStyle, LinesLayer, MarkDatum, MarkShape, OutcomeStyle, Paint, PointDatum, PointStyle, PointsLayer, Scale, TableOptions, TextDatum, TextLayer, TextStyle } from "./layers.types.ts";
|
|
38
|
-
export { KYOGIJO_STRINGS } from "./strings.ts";
|
|
39
|
-
export type { KyogijoWords } from "./strings.ts";
|
|
39
|
+
export { KYOGIJO_STRINGS } from "./strings.core.ts";
|
|
40
|
+
export type { KyogijoWords } from "./strings.core.ts";
|
|
40
41
|
export { KYOGIJO_COURTS_STYLE } from "./courts.style.ts";
|
|
41
42
|
export { HARDWOOD_SMALL, KYOGIJO_HARDWOOD_STYLE } from "./hardwood.ts";
|
|
42
43
|
export { KYOGIJO_CROWD_STYLE } from "./crowd.draw.ts";
|
package/dist/index.js
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
// Kyogijo Stadiums 競技場: sports surfaces as SVG, drawn to scale, with the teams and the score on them.
|
|
2
2
|
import "./full.js";
|
|
3
|
+
// The real venues of the NHL's arenas, as this entry has always had them (the lean district reads the ones it shows).
|
|
4
|
+
import "./venues.all.js";
|
|
3
5
|
export { COLOR_PROPERTIES, SPORTS, crowdStands, describe, drawBadge, drawKyogijo, drawScore, drawSurface, isPortrait, statusLabel, statusText, winnerOf } from "./draw.js";
|
|
4
6
|
export { HOME_FIRST, HOME_FIRST_LEAGUES, homeSideFor } from "./homeside.js";
|
|
5
7
|
export { inkOn, luminance, rgbOf, safeColour, safePicture } from "./colour.js";
|
|
@@ -22,7 +24,7 @@ export { dojo, drawDojo } from "./budo/dojo.api.js";
|
|
|
22
24
|
export { rampColour } from "./layers.marks.js";
|
|
23
25
|
export { HEAT_RAMPS, HEAT_RAMP_NAMES } from "./heat.colour.js";
|
|
24
26
|
export { ZONE_SETS, ZONE_SET_IDS } from "./heat.zones.js";
|
|
25
|
-
export { KYOGIJO_STRINGS } from "./strings.js";
|
|
27
|
+
export { KYOGIJO_STRINGS } from "./strings.core.js";
|
|
26
28
|
export { KYOGIJO_COURTS_STYLE } from "./courts.style.js";
|
|
27
29
|
export { HARDWOOD_SMALL, KYOGIJO_HARDWOOD_STYLE } from "./hardwood.js";
|
|
28
30
|
export { KYOGIJO_CROWD_STYLE } from "./crowd.draw.js";
|
package/dist/judging-entry.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import "./full.ts";
|
|
2
|
+
import "./venues.all.ts";
|
|
2
3
|
export { judgingBoard, boardFoot, BOARD_BASE } from "./judging.board.ts";
|
|
3
4
|
export { JUDGING_PAPER, judgingPrint, judgingPrintSheets, judgingPrintStyle } from "./judging.print.ts";
|
|
4
5
|
export type { JudgingPrintOptions } from "./judging.print.ts";
|
package/dist/judging-entry.js
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
// A judging assignment: the officials of each mat area of a judo tournament, by seat, with their names and IDs, in the seat where they fit and in a chart where they do not; in 2D and in 3D.
|
|
2
2
|
import "./full.js";
|
|
3
|
+
// The real venues of the NHL's arenas, as this entry has always had them (the lean district reads the ones it shows).
|
|
4
|
+
import "./venues.all.js";
|
|
3
5
|
export { judgingBoard, boardFoot, BOARD_BASE } from "./judging.board.js";
|
|
4
6
|
export { JUDGING_PAPER, judgingPrint, judgingPrintSheets, judgingPrintStyle } from "./judging.print.js";
|
|
5
7
|
export { KYOGIJO_JUDGING_BROADCAST_STYLE, mountJudgingBroadcast } from "./judging.mount.js";
|
package/dist/judging.board.js
CHANGED
|
@@ -10,7 +10,7 @@ import { judgingSetting } from "./judging.js";
|
|
|
10
10
|
import { KYOGIJO_JUDGING_BOARD_STYLE, KYOGIJO_JUDGING_STYLE } from "./judging.style.js";
|
|
11
11
|
import { judgingText } from "./judging.text.js";
|
|
12
12
|
import { JUDGING_WORDS } from "./judging.words.js";
|
|
13
|
-
import { fill } from "./strings.js";
|
|
13
|
+
import { fill } from "./strings.core.js";
|
|
14
14
|
import { metaMarkup, safeClass } from "./common.js";
|
|
15
15
|
import { LINE_HEIGHT, fitLines, textWidth } from "./text.js";
|
|
16
16
|
import { VERSION } from "./version.js";
|
package/dist/judging.draw.js
CHANGED
|
@@ -11,7 +11,7 @@ import { judgingPlan, judgingSetting } from "./judging.js";
|
|
|
11
11
|
import { judgingText } from "./judging.text.js";
|
|
12
12
|
import { KYOGIJO_JUDGING_STYLE } from "./judging.style.js";
|
|
13
13
|
import { JUDGING_WORDS } from "./judging.words.js";
|
|
14
|
-
import { fill } from "./strings.js";
|
|
14
|
+
import { fill } from "./strings.core.js";
|
|
15
15
|
import { LINE_HEIGHT } from "./text.js";
|
|
16
16
|
import { VERSION } from "./version.js";
|
|
17
17
|
/** The rows of one mat's chart, each as tall as its name and ID need, set in a chart `width` wide. */
|
package/dist/judging.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
import { budoPlan } from "./budo/plan.js";
|
|
4
4
|
import { JUDGING_LEAGUE, JUDGING_MATS_MAX, JUDGING_SEATS, JUDGING_SEAT_WORDS, JUDGING_STYLES } from "./judging.data.js";
|
|
5
5
|
import { JUDGING_WORDS } from "./judging.words.js";
|
|
6
|
-
import { fill } from "./strings.js";
|
|
6
|
+
import { fill } from "./strings.core.js";
|
|
7
7
|
/** The longest name, ID and mat label that are taken, in characters. */
|
|
8
8
|
export const JUDGING_LIMITS = Object.freeze({ name: 120, id: 64, label: 40, line: 60 });
|
|
9
9
|
/** Text made safe to show: control characters become spaces, runs of spaces one, the ends trimmed. */
|
package/dist/judging.text.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// What a judging picture says in words: the title and the description of an assignment, each mat with each seat and who is in it. Shared by the plan view, the broadcast view and the 3D view.
|
|
2
2
|
import { JUDGING_WORDS } from "./judging.words.js";
|
|
3
|
-
import { fill } from "./strings.js";
|
|
3
|
+
import { fill } from "./strings.core.js";
|
|
4
4
|
/** The sentence that names one seat and who sits in it. */
|
|
5
5
|
function seatSentence(a, setting) {
|
|
6
6
|
const w = JUDGING_WORDS[setting.language].say;
|
package/dist/layers.env.d.ts
CHANGED
|
@@ -2,7 +2,7 @@ import "./frames.providers.ts";
|
|
|
2
2
|
import type { P } from "./layers.marks.ts";
|
|
3
3
|
import type { LayerBase } from "./layers.types.ts";
|
|
4
4
|
import { type Outline } from "./outline.ts";
|
|
5
|
-
import { type KyogijoWords } from "./strings.ts";
|
|
5
|
+
import { type KyogijoWords } from "./strings.core.ts";
|
|
6
6
|
import type { Box, ScoreOptions, SurfaceOptions } from "./types.ts";
|
|
7
7
|
import { type Unit } from "./units.ts";
|
|
8
8
|
export declare const isNum: (value: unknown) => value is number;
|
package/dist/layers.env.js
CHANGED
|
@@ -8,7 +8,7 @@ import { zoneResolver } from "./rules.js";
|
|
|
8
8
|
import "./frames.providers.js";
|
|
9
9
|
import { chooseLeague } from "./leagues.js";
|
|
10
10
|
import { frameSizeOf, outlineOf } from "./outline.js";
|
|
11
|
-
import { KYOGIJO_STRINGS } from "./strings.js";
|
|
11
|
+
import { KYOGIJO_STRINGS } from "./strings.core.js";
|
|
12
12
|
import { FEET_PER, SURFACE_UNITS, isUnit } from "./units.js";
|
|
13
13
|
export const isNum = (value) => typeof value === "number" && Number.isFinite(value);
|
|
14
14
|
export const clamp01 = (value) => Math.max(0, Math.min(1, value));
|
package/dist/layers.js
CHANGED
|
@@ -15,7 +15,7 @@ import { clamp01, envFor, isNum, markAttrs, markTitle, newMade, opacityOf, own,
|
|
|
15
15
|
import { safeClass } from "./common.js";
|
|
16
16
|
import { esc, num } from "./format.js";
|
|
17
17
|
import { curveBetween, curvePath, headPath, isPolygon, polylinePath, rampColour, shapePath, taperPath, wavePath, } from "./layers.marks.js";
|
|
18
|
-
import { KYOGIJO_STRINGS, fill } from "./strings.js";
|
|
18
|
+
import { KYOGIJO_STRINGS, fill } from "./strings.core.js";
|
|
19
19
|
import { FEET_PER } from "./units.js";
|
|
20
20
|
/**
|
|
21
21
|
* How the standard outcomes look. A word that is not here draws as a filled mark; `style.outcomes` of a layer adds words and changes these.
|
package/dist/layout.js
CHANGED
|
@@ -10,7 +10,7 @@ import { KYOGIJO_GRID_STYLE } from "./layout.style.js";
|
|
|
10
10
|
import { KYOGIJO_MARK_STYLE } from "./mark.js";
|
|
11
11
|
import { isPolygon, shapePath } from "./layers.marks.js";
|
|
12
12
|
import { elements, parseSvg, textOf, writeSvg } from "./scene.xml.js";
|
|
13
|
-
import { KYOGIJO_STRINGS, fill } from "./strings.js";
|
|
13
|
+
import { KYOGIJO_STRINGS, fill } from "./strings.core.js";
|
|
14
14
|
import { KYOGIJO_BASE_STYLE, KYOGIJO_CURLING_STYLE, KYOGIJO_HEAT_STYLE, KYOGIJO_NOTE_STYLE, KYOGIJO_TEAM_STYLE } from "./style.js";
|
|
15
15
|
import { textWidth } from "./text.js";
|
|
16
16
|
import { VERSION } from "./version.js";
|
package/dist/layouts-entry.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import "./full.ts";
|
|
2
|
+
import "./venues.all.ts";
|
|
2
3
|
export { GRID_MAX_CELLS, GRID_PRESETS, drawGrid } from "./layout.ts";
|
|
3
4
|
export type { GridCell, GridDrawing, GridLegendItem, GridOptions, GridPreset, GridPresetInfo } from "./layout.ts";
|
|
4
5
|
export { KYOGIJO_GRID_STYLE } from "./layout.style.ts";
|
package/dist/layouts-entry.js
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
// Layouts: many drawings in one SVG (small multiples with a shared title, subtitle, credit line and key, in a size for a social card or a phone) and the grounds behind a drawing or a grid.
|
|
2
2
|
import "./full.js";
|
|
3
|
+
// The real venues of the NHL's arenas, as this entry has always had them (the lean district reads the ones it shows).
|
|
4
|
+
import "./venues.all.js";
|
|
3
5
|
export { GRID_MAX_CELLS, GRID_PRESETS, drawGrid } from "./layout.js";
|
|
4
6
|
export { KYOGIJO_GRID_STYLE } from "./layout.style.js";
|
|
5
7
|
export { BACKGROUND_OPACITY, BACKGROUND_PATTERNS, KYOGIJO_BACKGROUND_STYLE, backgroundMarkup, laidOn, resolveBackground } from "./background.js";
|
package/dist/leagues-entry.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import "./strings.ts";
|
|
1
2
|
export { FAMILY_OF, LEAGUES, VARIANTS, aflOf, chooseLeague, courtOf, cricketOf, diamondOf, fieldHockeyOf, fieldOf, gaelicOf, handballOf, lacrosseOf, rugbyOf, hasHistory, leagueAt, leagueAtOf, leagueById, leagueChanges, leagueFigures, leagueIds, leagueSeason, leagueSize, netOf, rinkOf, sheetOf } from "./leagues.ts";
|
|
2
3
|
export type { BaseballLeague, BasketballLeague, CourtFigures, CurlingLeague, SheetFigures, BadmintonFigures, BadmintonLeague, FreeZone, FreeZones, NetFigures, NetLeague, NetSport, NetballFigures, NetballLeague, PadelFigures, PadelLeague, PickleballFigures, PickleballLeague, RacquetballFigures, RacquetballLeague, RoundnetFigures, RoundnetLeague, SepakTakrawFigures, SepakTakrawLeague, SquashFigures, SquashLeague, TableTennisFigures, TableTennisLeague, TennisFigures, TennisLeague, TeqballFigures, TeqballLeague, VolleyballFigures, VolleyballLeague, CourtMarks, DiamondFigures, Family, FootballLeague, HockeyLeague, League, LeagueAt, LeagueChange, LeagueSource, LeagueSpan, Named, RinkFigures } from "./leagues.ts";
|
|
3
4
|
export { MLB_DIAMOND } from "./leagues/baseball.ts";
|
package/dist/leagues-entry.js
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
// The leagues: each variant of a family of surface, with its rulebook's figures, its names and its sources.
|
|
2
|
+
// The words in both languages, as this entry has always carried them (the lean district reads one language when it is asked to).
|
|
3
|
+
import "./strings.js";
|
|
2
4
|
export { FAMILY_OF, LEAGUES, VARIANTS, aflOf, chooseLeague, courtOf, cricketOf, diamondOf, fieldHockeyOf, fieldOf, gaelicOf, handballOf, lacrosseOf, rugbyOf, hasHistory, leagueAt, leagueAtOf, leagueById, leagueChanges, leagueFigures, leagueIds, leagueSeason, leagueSize, netOf, rinkOf, sheetOf } from "./leagues.js";
|
|
3
5
|
export { MLB_DIAMOND } from "./leagues/baseball.js";
|
|
4
6
|
export { NBA_COURT } from "./leagues/basketball.js";
|
package/dist/mount-entry.d.ts
CHANGED
package/dist/mount-entry.js
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
1
|
// Drawing into a container in the browser, with the layout following the container's shape.
|
|
2
2
|
import "./full.js";
|
|
3
|
+
// The real venues of the NHL's arenas, as this entry has always had them (the lean district reads the ones it shows).
|
|
4
|
+
import "./venues.all.js";
|
|
3
5
|
export { containerAspect, kyogijoElement, mountKyogijo } from "./mount.js";
|
package/dist/multi-entry.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import "./full.ts";
|
|
2
|
+
import "./venues.all.ts";
|
|
2
3
|
export { drawMulti, multiSetting, multiTable } from "./multi.draw.ts";
|
|
3
4
|
export { SURROUND_HEIGHT, buildMultiTurn, mountMultiTurn, multiPresets, multiTurnMarkup } from "./multi.turn.ts";
|
|
4
5
|
export { MULTI_MAX, fitSentence, multiFit, multiLayout, needsSentence, specOf, venueOf } from "./multi.ts";
|
package/dist/multi-entry.js
CHANGED
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
// officials' chairs, a scoreboard hung over the middle, the boards and the empty places for the event's own words and marks; the real configurations of events as presets, each with its rule; the halls whose
|
|
3
3
|
// floors are published, and whether a layout fits one; and a real stadium round the floor at the same scale. `multiTable` is the text alternative.
|
|
4
4
|
import "./full.js";
|
|
5
|
+
// The real venues of the NHL's arenas, as this entry has always had them (the lean district reads the ones it shows).
|
|
6
|
+
import "./venues.all.js";
|
|
5
7
|
export { drawMulti, multiSetting, multiTable } from "./multi.draw.js";
|
|
6
8
|
export { SURROUND_HEIGHT, buildMultiTurn, mountMultiTurn, multiPresets, multiTurnMarkup } from "./multi.turn.js";
|
|
7
9
|
export { MULTI_MAX, fitSentence, multiFit, multiLayout, needsSentence, specOf, venueOf } from "./multi.js";
|
package/dist/multi.draw.js
CHANGED
|
@@ -12,7 +12,7 @@ import { fitSentence, multiFit, multiLayout, multiNumber, needsSentence, venueOf
|
|
|
12
12
|
import { KYOGIJO_MULTI_STYLE } from "./multi.style.js";
|
|
13
13
|
import { MULTI_WORDS } from "./multi.words.js";
|
|
14
14
|
import { outlineOf } from "./outline.js";
|
|
15
|
-
import { fill } from "./strings.js";
|
|
15
|
+
import { fill } from "./strings.core.js";
|
|
16
16
|
import { textWidth } from "./text.js";
|
|
17
17
|
import { uprightsFor } from "./uprights.js";
|
|
18
18
|
import { hallBoards } from "./venue.boards.js";
|
package/dist/multi.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// A tournament layout laid out: several of the package's own surfaces on one floor, to scale, where each stands and what it leaves free; the floor the layout needs; and whether it fits a hall's floor. The
|
|
2
2
|
// figures are in multi.data.ts (a rulebook's, with its source); this file only adds them up. Nothing here draws SVG (multi.draw.ts does), and every function returns new values.
|
|
3
3
|
import { inOctagon } from "./budo/plan.js";
|
|
4
|
-
import { fill } from "./strings.js";
|
|
4
|
+
import { fill } from "./strings.core.js";
|
|
5
5
|
import { FEET_PER_METRE } from "./geometry.js";
|
|
6
6
|
import { IJF_CONTEST, WKF_KUMITE } from "./leagues/budo.js";
|
|
7
7
|
import { MULTI_PRESETS, MULTI_VENUES, multiPreset, multiVenueById } from "./multi.data.js";
|
package/dist/osm-entry.d.ts
CHANGED
package/dist/osm-entry.js
CHANGED
|
@@ -1,2 +1,4 @@
|
|
|
1
1
|
// The buildings and streets round a district, from OpenStreetMap (ODbL 1.0), as data a district takes in its `context` option: downtown Vancouver's, round BC Place and Rogers Arena, with the credit that goes with a drawing made from it.
|
|
2
|
+
// The words in both languages, as this entry has always carried them (the lean district reads one language when it is asked to).
|
|
3
|
+
import "./strings.js";
|
|
2
4
|
export { OSM_AREAS, OSM_ATTRIBUTION, VANCOUVER_CENTRE } from "./osm.context.data.js";
|
package/dist/outside.d.ts
CHANGED
|
@@ -28,7 +28,8 @@ export declare const hasOutside: (plan: Pick<DistrictPlan, "members">) => boolea
|
|
|
28
28
|
export declare const OUTSIDE_VENUES: readonly string[];
|
|
29
29
|
/**
|
|
30
30
|
* The crowd outside a plan's venues, in the plan's frame: the people of every venue of the plan that stands on a mask (each with its seats as the plan has them), worked out once and kept. `undefined` where no venue of the plan
|
|
31
|
-
* has a mask. The crowd is the same list whatever level is shown: `outsideCount` says how many of its first people stand at a level.
|
|
31
|
+
* has a mask. The crowd is the same list whatever level is shown: `outsideCount` says how many of its first people stand at a level. The district entry holds the data of every mask; the lean district holds a mask's data only after
|
|
32
|
+
* `loadOutside(venues)` has read it, and throws, saying so, where it is asked for a crowd before.
|
|
32
33
|
* @example
|
|
33
34
|
* ```ts
|
|
34
35
|
* import { planDistrict } from "@johnmorrisdotca/kyogijo-stadiums/district";
|
package/dist/outside.js
CHANGED
|
@@ -5,8 +5,8 @@
|
|
|
5
5
|
import { districtRing, turnBy } from "./district.js";
|
|
6
6
|
import { FEET_PER_METRE } from "./geometry.js";
|
|
7
7
|
import { metresFrom } from "./venues.geo.js";
|
|
8
|
-
import {
|
|
9
|
-
import { WALK_IDS, walkIdFor, walkMask } from "./walk.js";
|
|
8
|
+
import { WALK_INDEX } from "./walk.index.js";
|
|
9
|
+
import { WALK_IDS, walkDataOf, walkIdFor, walkMask } from "./walk.js";
|
|
10
10
|
import { OUTSIDE_LEVELS, outsideCount } from "./outside.paint.js";
|
|
11
11
|
export { OUTSIDE_LEVELS, outsideCount };
|
|
12
12
|
/** The most people to a square metre of walkable ground in the list at 100 percent: a crowd standing close, short of a crush. */
|
|
@@ -166,11 +166,12 @@ export const maskIdOf = (plan) => walkIdFor(plan.members.map((m) => m.member.id)
|
|
|
166
166
|
/** Whether a plan has a crowd to show: some venue of it stands on a mask. */
|
|
167
167
|
export const hasOutside = (plan) => maskIdOf(plan) !== undefined;
|
|
168
168
|
/** The ids of the venues there is a walkable mask round. */
|
|
169
|
-
export const OUTSIDE_VENUES = Object.freeze([...new Set(WALK_IDS.flatMap((id) =>
|
|
169
|
+
export const OUTSIDE_VENUES = Object.freeze([...new Set(WALK_IDS.flatMap((id) => WALK_INDEX[id].venues.map((key) => key.split(":")[0])))]);
|
|
170
170
|
const placedCache = new WeakMap();
|
|
171
171
|
/**
|
|
172
172
|
* The crowd outside a plan's venues, in the plan's frame: the people of every venue of the plan that stands on a mask (each with its seats as the plan has them), worked out once and kept. `undefined` where no venue of the plan
|
|
173
|
-
* has a mask. The crowd is the same list whatever level is shown: `outsideCount` says how many of its first people stand at a level.
|
|
173
|
+
* has a mask. The crowd is the same list whatever level is shown: `outsideCount` says how many of its first people stand at a level. The district entry holds the data of every mask; the lean district holds a mask's data only after
|
|
174
|
+
* `loadOutside(venues)` has read it, and throws, saying so, where it is asked for a crowd before.
|
|
174
175
|
* @example
|
|
175
176
|
* ```ts
|
|
176
177
|
* import { planDistrict } from "@johnmorrisdotca/kyogijo-stadiums/district";
|
|
@@ -189,7 +190,7 @@ export function outsideCrowd(plan) {
|
|
|
189
190
|
placedCache.set(plan, null);
|
|
190
191
|
return undefined;
|
|
191
192
|
}
|
|
192
|
-
const data =
|
|
193
|
+
const data = walkDataOf(maskId);
|
|
193
194
|
const ids = data.venues.map((key) => key.split(":")[0]);
|
|
194
195
|
const present = ids.map((id) => plan.members.find((m) => m.member.id === id)).filter((m) => m !== undefined);
|
|
195
196
|
const extras = { buildings: data.venues.map((key) => metresFrom(data.origin, districtRing(key))), apron: 5 };
|
|
@@ -216,7 +217,7 @@ export function outsideCrowd(plan) {
|
|
|
216
217
|
}
|
|
217
218
|
/** Whether a point of the plan's frame (feet) is on the mask's walkable ground: the inverse of what `outsideCrowd` does to a person, for a test to hold the crowd to the mask. */
|
|
218
219
|
export function standsOnWalkable(plan, maskId, [fx, fy]) {
|
|
219
|
-
const data =
|
|
220
|
+
const data = walkDataOf(maskId);
|
|
220
221
|
const [shiftX, shiftY] = metresFrom(plan.origin, [data.origin])[0];
|
|
221
222
|
const [ux, uy] = turnBy([fx, fy], -plan.turn);
|
|
222
223
|
const mask = walkMask(maskId, { buildings: data.venues.map((key) => metresFrom(data.origin, districtRing(key))), apron: 5 });
|
package/dist/parks-entry.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import "./strings.ts";
|
|
1
2
|
export { PARKS, PARK_IDS, fenceFor, parkById, parkByName, parkByWikidata, parkNameIn, parkOfficialName, parkPointsIn, parkQuirksIn, parkSourceUrl, parkUnit, parkWallsIn, parksByName } from "./parks.ts";
|
|
2
3
|
export { officialName, plainName } from "./names.ts";
|
|
3
4
|
export type { PlaceAlias, PlaceNameKind } from "./names.ts";
|
package/dist/parks-entry.js
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
1
|
// The ballparks: their fence distances, with the article each was read from.
|
|
2
|
+
// The words in both languages, as this entry has always carried them (the lean district reads one language when it is asked to).
|
|
3
|
+
import "./strings.js";
|
|
2
4
|
export { PARKS, PARK_IDS, fenceFor, parkById, parkByName, parkByWikidata, parkNameIn, parkOfficialName, parkPointsIn, parkQuirksIn, parkSourceUrl, parkUnit, parkWallsIn, parksByName } from "./parks.js";
|
|
3
5
|
export { officialName, plainName } from "./names.js";
|
package/dist/plateau-entry.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import "./strings.ts";
|
|
1
2
|
export { PLATEAU_ATTRIBUTION, PLATEAU_AREAS, TOKYO_DOME_CITY } from "./plateau.data.ts";
|
|
2
3
|
export { CONTEXT_BLOCKS, CONTEXT_LANDMARK, CONTEXT_LANDMARK_REACH, CONTEXT_REACH, CONTEXT_TONES, decodeBuilding } from "./context.ts";
|
|
3
4
|
export type { ContextArea } from "./context.ts";
|
package/dist/plateau-entry.js
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
1
|
// The buildings round a district, from Project PLATEAU (MLIT's 3D city models of Japan), as data a district takes in its `context` option: Tokyo Dome City's, simplified and edited, under PLATEAU's terms, with their credit.
|
|
2
|
+
// The words in both languages, as this entry has always carried them (the lean district reads one language when it is asked to).
|
|
3
|
+
import "./strings.js";
|
|
2
4
|
export { PLATEAU_ATTRIBUTION, PLATEAU_AREAS, TOKYO_DOME_CITY } from "./plateau.data.js";
|
|
3
5
|
export { CONTEXT_BLOCKS, CONTEXT_LANDMARK, CONTEXT_LANDMARK_REACH, CONTEXT_REACH, CONTEXT_TONES, decodeBuilding } from "./context.js";
|
package/dist/plot-entry.d.ts
CHANGED
package/dist/plot-entry.js
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
1
|
// A drawing as a mark for Observable Plot, with Plot not imported.
|
|
2
2
|
import "./full.js";
|
|
3
|
+
// The real venues of the NHL's arenas, as this entry has always had them (the lean district reads the ones it shows).
|
|
4
|
+
import "./venues.all.js";
|
|
3
5
|
export { surfaceMark, surfaceScales } from "./plot.js";
|
package/dist/png-entry.d.ts
CHANGED
package/dist/png-entry.js
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
1
|
// A drawing as a PNG in Node, through the optional peer @resvg/resvg-js.
|
|
2
2
|
import "./full.js";
|
|
3
|
+
// The real venues of the NHL's arenas, as this entry has always had them (the lean district reads the ones it shows).
|
|
4
|
+
import "./venues.all.js";
|
|
3
5
|
export { PNG_PEER_MISSING, toPNG } from "./png.js";
|
package/dist/pool.replay.js
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
// of the marks. Nothing here is a model of swimming: it is the splits the caller has, played back.
|
|
5
5
|
import { swimPlan } from "./pool.js";
|
|
6
6
|
import { formatTime } from "./pool.race.js";
|
|
7
|
-
import { KYOGIJO_STRINGS } from "./strings.js";
|
|
7
|
+
import { KYOGIJO_STRINGS } from "./strings.core.js";
|
|
8
8
|
const finite = (value) => Number.isFinite(value);
|
|
9
9
|
/** The progress of one row over a race of `distance` metres with a split every `every` metres. */
|
|
10
10
|
export function progressOf(row, distance, every, reaction) {
|
package/dist/pool.words.js
CHANGED
|
@@ -3,7 +3,7 @@ import { artisticPlan, divePlan, poloPlan, swimPlan, venueOf } from "./pool.js";
|
|
|
3
3
|
import { STATUS_TEXT, formatTime } from "./pool.race.js";
|
|
4
4
|
import { MEDALS } from "./pool.labels.js";
|
|
5
5
|
import { WATER_POLO } from "./pool.figures.js";
|
|
6
|
-
import { KYOGIJO_STRINGS, fill } from "./strings.js";
|
|
6
|
+
import { KYOGIJO_STRINGS, fill } from "./strings.core.js";
|
|
7
7
|
const trimmed = (value) => String(Math.round(value * 100) / 100);
|
|
8
8
|
/** The plan of a pool sport's options. */
|
|
9
9
|
export function planOf(o) {
|
package/dist/quality.d.ts
CHANGED
|
@@ -62,11 +62,29 @@ export declare function rasterOf(quality: Quality, tier: QualityTier, dpr: numbe
|
|
|
62
62
|
* still (see `rasterOf`). `Infinity` at `high`, by name or in `auto`.
|
|
63
63
|
*/
|
|
64
64
|
export declare function layerBudget(tier: QualityTier, isHandheld: boolean): number;
|
|
65
|
+
/**
|
|
66
|
+
* The shares a layer is made at, from the smallest to a whole: the share a view needs (`viewShare`) is rounded up to one of these, so that a zoom draws the layers again at most three times from the whole view to the nearest and not at every step.
|
|
67
|
+
*/
|
|
68
|
+
export declare const SHARE_LEVELS: readonly number[];
|
|
69
|
+
/** How much finer than the screen shows it a layer is made: the perspective makes what is near the eye larger than the scale of the fit says, by a tenth at most with the lens of a district. */
|
|
70
|
+
export declare const VIEW_MARGIN = 1.25;
|
|
71
|
+
/**
|
|
72
|
+
* The share of its size a layer needs to be as fine as the screen shows it, whatever the device's pixel ratio: a layer holds `share` device pixels for each pixel of the scene (times the ratio) and the screen shows `scale * zoom`
|
|
73
|
+
* of them (times the ratio too, and a little more near the eye), so a share of `scale * zoom * VIEW_MARGIN` is as sharp as the view and no layer needs more. `scale` is the scale that fits the scene in its container (`viewScale`), `zoom` the
|
|
74
|
+
* view's. Rounded up to one of `SHARE_LEVELS`, so a view that is drawn at 0.15 of the scene's size, as a district on a phone is, has layers a quarter as wide and as high, a sixteenth of the pixels. 1 when the view is at least as large as the scene.
|
|
75
|
+
*/
|
|
76
|
+
export declare function viewShare(scale: number, zoom: number): number;
|
|
77
|
+
/**
|
|
78
|
+
* The least share the floor is made at, under what the view needs: the floor is one layer, and it holds the thinnest lines of the view (the north arrow, the scale, the grid, the streets and their edges), which a browser draws as a staircase
|
|
79
|
+
* when the layer is made much coarser than it shows (Chromium does; measured on the demo at a ratio of 3). One layer at 0.6 of its size is 24 megabytes on a phone at a ratio of 3, against 67 whole.
|
|
80
|
+
*/
|
|
81
|
+
export declare const FLOOR_SHARE = 0.6;
|
|
65
82
|
/**
|
|
66
83
|
* The share of its size each layer is made at, from the sizes the layers would have at full size (their boxes in CSS pixels), the share every layer is made at (`rasterOf`), the device's pixel ratio and the layer budget: a layer is
|
|
67
|
-
* made at the smaller of the share and the one that holds `budget` device pixels, never under a fifth. The floor comes first, then the planes, as `layoutOf` takes them
|
|
84
|
+
* made at the smaller of the share and the one that holds `budget` device pixels, and never at more than `ceiling` (what the view needs, `viewShare`), never under a fifth. The floor comes first, then the planes, as `layoutOf` takes them; its
|
|
85
|
+
* ceiling is at least `floorMin`.
|
|
68
86
|
*/
|
|
69
|
-
export declare function rasterShares(sizes: readonly (readonly [number, number])[], share: number, dpr: number, budget: number): number[];
|
|
87
|
+
export declare function rasterShares(sizes: readonly (readonly [number, number])[], share: number, dpr: number, budget: number, ceiling?: number, floorMin?: number): number[];
|
|
70
88
|
/** How the governor judges the frames. Times are in milliseconds. */
|
|
71
89
|
export interface GovernorTuning {
|
|
72
90
|
/** The frames in a window it keeps (the oldest are dropped past twice this), and the fewest it judges: a window is also at least `settleMs` long, so a view at 60 frames a second judges 42 frames and one at 6 frames a second judges 8. */
|
package/dist/quality.js
CHANGED
|
@@ -51,16 +51,37 @@ export function layerBudget(tier, isHandheld) {
|
|
|
51
51
|
return Infinity;
|
|
52
52
|
return { medium: isHandheld ? 2e6 : 4e6, low: isHandheld ? 1e6 : 2e6 }[tier];
|
|
53
53
|
}
|
|
54
|
+
/**
|
|
55
|
+
* The shares a layer is made at, from the smallest to a whole: the share a view needs (`viewShare`) is rounded up to one of these, so that a zoom draws the layers again at most three times from the whole view to the nearest and not at every step.
|
|
56
|
+
*/
|
|
57
|
+
export const SHARE_LEVELS = [0.25, 0.4, 0.6, 1];
|
|
58
|
+
/** How much finer than the screen shows it a layer is made: the perspective makes what is near the eye larger than the scale of the fit says, by a tenth at most with the lens of a district. */
|
|
59
|
+
export const VIEW_MARGIN = 1.25;
|
|
60
|
+
/**
|
|
61
|
+
* The share of its size a layer needs to be as fine as the screen shows it, whatever the device's pixel ratio: a layer holds `share` device pixels for each pixel of the scene (times the ratio) and the screen shows `scale * zoom`
|
|
62
|
+
* of them (times the ratio too, and a little more near the eye), so a share of `scale * zoom * VIEW_MARGIN` is as sharp as the view and no layer needs more. `scale` is the scale that fits the scene in its container (`viewScale`), `zoom` the
|
|
63
|
+
* view's. Rounded up to one of `SHARE_LEVELS`, so a view that is drawn at 0.15 of the scene's size, as a district on a phone is, has layers a quarter as wide and as high, a sixteenth of the pixels. 1 when the view is at least as large as the scene.
|
|
64
|
+
*/
|
|
65
|
+
export function viewShare(scale, zoom) {
|
|
66
|
+
const need = scale * zoom * VIEW_MARGIN;
|
|
67
|
+
return SHARE_LEVELS.find((level) => level >= need - 1e-9) ?? 1;
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* The least share the floor is made at, under what the view needs: the floor is one layer, and it holds the thinnest lines of the view (the north arrow, the scale, the grid, the streets and their edges), which a browser draws as a staircase
|
|
71
|
+
* when the layer is made much coarser than it shows (Chromium does; measured on the demo at a ratio of 3). One layer at 0.6 of its size is 24 megabytes on a phone at a ratio of 3, against 67 whole.
|
|
72
|
+
*/
|
|
73
|
+
export const FLOOR_SHARE = 0.6;
|
|
54
74
|
/**
|
|
55
75
|
* The share of its size each layer is made at, from the sizes the layers would have at full size (their boxes in CSS pixels), the share every layer is made at (`rasterOf`), the device's pixel ratio and the layer budget: a layer is
|
|
56
|
-
* made at the smaller of the share and the one that holds `budget` device pixels, never under a fifth. The floor comes first, then the planes, as `layoutOf` takes them
|
|
76
|
+
* made at the smaller of the share and the one that holds `budget` device pixels, and never at more than `ceiling` (what the view needs, `viewShare`), never under a fifth. The floor comes first, then the planes, as `layoutOf` takes them; its
|
|
77
|
+
* ceiling is at least `floorMin`.
|
|
57
78
|
*/
|
|
58
|
-
export function rasterShares(sizes, share, dpr, budget) {
|
|
79
|
+
export function rasterShares(sizes, share, dpr, budget, ceiling = 1, floorMin = 0) {
|
|
59
80
|
const ratio = dpr > 0 ? dpr : 1;
|
|
60
|
-
return sizes.map(([w, h]) => {
|
|
81
|
+
return sizes.map(([w, h], i) => {
|
|
61
82
|
const area = w * h * ratio * ratio;
|
|
62
83
|
const own = area > budget ? Math.sqrt(budget / area) : 1;
|
|
63
|
-
return Math.max(0.2, Math.round(Math.min(share, own) * 1000) / 1000);
|
|
84
|
+
return Math.max(0.2, Math.round(Math.min(share, own, i === 0 ? Math.max(ceiling, floorMin) : ceiling) * 1000) / 1000);
|
|
64
85
|
});
|
|
65
86
|
}
|
|
66
87
|
export const GOVERNOR_TUNING = { frames: 24, minFrames: 8, settleMs: 700, warmMs: 600, budgetMs: 21, steadyMs: 18.5, upAfterMs: 5000, maxUpAfterMs: 300000, quietMs: 600, pauseMs: 250 };
|
package/dist/ranges.js
CHANGED
|
@@ -10,7 +10,7 @@ import { toSurface } from "./frames.js";
|
|
|
10
10
|
import "./frames.providers.js";
|
|
11
11
|
import { parseRange } from "./ranges.names.js";
|
|
12
12
|
import { frameSizeOf } from "./outline.js";
|
|
13
|
-
import { KYOGIJO_STRINGS, fill } from "./strings.js";
|
|
13
|
+
import { KYOGIJO_STRINGS, fill } from "./strings.core.js";
|
|
14
14
|
import { quarterTurn } from "./surfaces/surface.js";
|
|
15
15
|
import { convertLength } from "./units.js";
|
|
16
16
|
const round = (value) => String(Math.round(value * 100) / 100);
|
package/dist/react-entry.d.ts
CHANGED
package/dist/react-entry.js
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
1
|
// A helper for React that does not depend on it: props to spread onto a div, and a component made from the React you pass.
|
|
2
2
|
import "./full.js";
|
|
3
|
+
// The real venues of the NHL's arenas, as this entry has always had them (the lean district reads the ones it shows).
|
|
4
|
+
import "./venues.all.js";
|
|
3
5
|
export { createKyogijo, kyogijoHtml, kyogijoProps } from "./react.js";
|
package/dist/replay-entry.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import "./full.ts";
|
|
2
|
+
import "./venues.all.ts";
|
|
2
3
|
export { activeEvents, describeEvent, drawFrame, eventsBetween, interpolate, possession, replayClock, replayEvents, replayInfo, replayLayers, replaySnapshot, replaySummary, replayTable, replayTimes, trails } from "./replay.ts";
|
|
3
4
|
export type { ReplaySnapshot } from "./replay.ts";
|
|
4
5
|
export { alongPool, distanceAt, progressOf, raceTimeline } from "./pool.replay.ts";
|
package/dist/replay-entry.js
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
// Replay: tracking data over time on a surface. The frame, the clock and the pure functions between them; the controls and the animation
|
|
2
2
|
// are in the mount (`mountKyogijo(...).replay(...)`) and in `<kyogijo-field>`.
|
|
3
3
|
import "./full.js";
|
|
4
|
+
// The real venues of the NHL's arenas, as this entry has always had them (the lean district reads the ones it shows).
|
|
5
|
+
import "./venues.all.js";
|
|
4
6
|
export { activeEvents, describeEvent, drawFrame, eventsBetween, interpolate, possession, replayClock, replayEvents, replayInfo, replayLayers, replaySnapshot, replaySummary, replayTable, replayTimes, trails } from "./replay.js";
|
|
5
7
|
export { alongPool, distanceAt, progressOf, raceTimeline } from "./pool.replay.js";
|
|
6
8
|
export { formatTime, parseTime } from "./pool.race.js";
|
package/dist/replay.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { Layer } from "./layers.types.ts";
|
|
2
2
|
import type { ActiveEvent, Possession, ReplayEvent, ReplayLook, ReplayObject, ReplayTeam, ReplayTimeline, ReplayTrail } from "./replay.types.ts";
|
|
3
|
-
import { type KyogijoWords } from "./strings.ts";
|
|
3
|
+
import { type KyogijoWords } from "./strings.core.ts";
|
|
4
4
|
import type { Language, ScoreOptions, SurfaceOptions } from "./types.ts";
|
|
5
5
|
type P = [number, number];
|
|
6
6
|
/** Seconds as a clock, `0:12` or `1:05:09`. */
|
package/dist/replay.dom.js
CHANGED
|
@@ -5,7 +5,7 @@ import { num } from "./format.js";
|
|
|
5
5
|
import { renderLayers } from "./layers.js";
|
|
6
6
|
import { REPLAY_SPEEDS, createReplay } from "./replay.control.js";
|
|
7
7
|
import { describeEvent, drawFrame, replayClock, replayGroups, replaySpoken, replayInfo, replayPlacer, replaySnapshot } from "./replay.js";
|
|
8
|
-
import { KYOGIJO_STRINGS, fill } from "./strings.js";
|
|
8
|
+
import { KYOGIJO_STRINGS, fill } from "./strings.core.js";
|
|
9
9
|
const SVG_NS = "http://www.w3.org/2000/svg";
|
|
10
10
|
let counter = 0;
|
|
11
11
|
/** The controls' stylesheet: written once beside the controls, scoped to them, in the page's own colours. */
|
package/dist/replay.js
CHANGED
|
@@ -7,7 +7,7 @@ import { drawKyogijo, describe } from "./draw.js";
|
|
|
7
7
|
import { esc, hash } from "./format.js";
|
|
8
8
|
import { envFor, place, unitOfLayer } from "./layers.env.js";
|
|
9
9
|
import { renderLayers } from "./layers.js";
|
|
10
|
-
import { KYOGIJO_STRINGS, fill } from "./strings.js";
|
|
10
|
+
import { KYOGIJO_STRINGS, fill } from "./strings.core.js";
|
|
11
11
|
import { VERSION } from "./version.js";
|
|
12
12
|
const TEAMS = ["home", "away", "ball", "puck", "official"];
|
|
13
13
|
const isNum = (value) => typeof value === "number" && Number.isFinite(value);
|
package/dist/rules.js
CHANGED
|
@@ -24,7 +24,7 @@ import { fenceFor, heldPark, parkWallsIn } from "./parks.core.js";
|
|
|
24
24
|
import { PARK_IDS_WITHOUT_WALLS } from "./parks.walls.js";
|
|
25
25
|
import { frameSizeOf, outlineOf } from "./outline.js";
|
|
26
26
|
import { soccerSpec } from "./surfaces/soccer-spec.js";
|
|
27
|
-
import { KYOGIJO_STRINGS } from "./strings.js";
|
|
27
|
+
import { KYOGIJO_STRINGS } from "./strings.core.js";
|
|
28
28
|
import { FEET_PER, isUnit } from "./units.js";
|
|
29
29
|
export { RULE_IDS } from "./rules.types.js";
|
|
30
30
|
const PICK = ["league", "year", "pitch", "park", "fence", "units", "sheet", "net", "field", "pool", "athletics", "skating"];
|
package/dist/scene-entry.d.ts
CHANGED
package/dist/scene-entry.js
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
// A drawing as plain data: the shapes it is painted with, in order, their colours worked out for light or dark; and the SVG that needs no stylesheet.
|
|
2
2
|
import "./full.js";
|
|
3
|
+
// The real venues of the NHL's arenas, as this entry has always had them (the lean district reads the ones it shows).
|
|
4
|
+
import "./venues.all.js";
|
|
3
5
|
export { sceneFromSvg, sceneOf } from "./scene.js";
|
|
4
6
|
export { sceneToSvg } from "./scene.flat.js";
|
|
5
7
|
export { pathCommands } from "./scene.path.js";
|
package/dist/situation.draw.js
CHANGED
|
@@ -5,7 +5,7 @@ import { wideView } from "./annotate.js";
|
|
|
5
5
|
import { el, num } from "./format.js";
|
|
6
6
|
import { DRIVE_CODES, downTag, hockeyPill, yardLineText } from "./situation.js";
|
|
7
7
|
import { pillWidget, scorebugWidget, shootoutWidget, tagWidget } from "./situation.widgets.js";
|
|
8
|
-
import { KYOGIJO_STRINGS } from "./strings.js";
|
|
8
|
+
import { KYOGIJO_STRINGS } from "./strings.core.js";
|
|
9
9
|
import { roundedRect, textOn } from "./surfaces/surface.js";
|
|
10
10
|
/** A widget set where the eye wants it, upright however the surface lies. */
|
|
11
11
|
function put(widget, cx, cy, turned) {
|
package/dist/situation.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
// team attacks, which end, what the words say), so that the drawing (`situation.draw.ts`, `situation.badge.ts`) and the description do not decide it twice. A value that is not what
|
|
3
3
|
// it should be (a fourth down on the CFL's field, 7 skaters, a clock that is not a time) is left out, as a value from a page's markup is anywhere else; nothing here throws.
|
|
4
4
|
import { attackingIn } from "./frames.js";
|
|
5
|
-
import { KYOGIJO_STRINGS, fill } from "./strings.js";
|
|
5
|
+
import { KYOGIJO_STRINGS, fill } from "./strings.core.js";
|
|
6
6
|
/** The most rounds of a shootout that are drawn. */
|
|
7
7
|
export const SHOOTOUT_MAX = 12;
|
|
8
8
|
/** The rounds that are regular: the rounds after them are sudden death. */
|
package/dist/skating/describe.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// What a skating drawing says of itself: its sentence about the rink, and what the options mark on it. Cheap (it reads the options, not the plan), so that a title and a description cost nothing.
|
|
2
|
-
import { fill, KYOGIJO_STRINGS } from "../strings.js";
|
|
2
|
+
import { fill, KYOGIJO_STRINGS } from "../strings.core.js";
|
|
3
3
|
import { raceById } from "./events.js";
|
|
4
4
|
import { furnitureOf, racesOf, skatingLeague } from "./plan.js";
|
|
5
5
|
import { longOval } from "./track.js";
|
package/dist/skating-entry.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import "./full.ts";
|
|
2
|
+
import "./venues.all.ts";
|
|
2
3
|
export { skatingPairs, skatingGrid, skatingResults, skatingReplay, figureElements, formatTime, distanceSkated } from "./charts.skating.ts";
|
|
3
4
|
export type { DrawTotals, ElementTotals, FigureElementsOptions, SkatingElement, SkatingEntry, SkatingPair, SkatingRaceOptions, SkatingReplay, SkatingReplayOptions, SkatingResult, SkatingResultsTotals, SkatingRunner, SkatingStarter } from "./charts.skating.ts";
|
|
4
5
|
export { ELEMENT_KINDS, ELEMENT_NAMES, LONG_TRACK_RACES, LONG_TRACK_RACE_IDS, RACES, RACE_IDS, SHORT_TRACK_RACES, SHORT_TRACK_RACE_IDS, raceById } from "./skating/events.ts";
|
package/dist/skating-entry.js
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
// The ice skating rinks: the standard 400 m speed skating track, the short track oval and the figure skating rink, with the plan of each, the track's geometry (a point of a lane, the start of a race, the
|
|
2
2
|
// lap of the crossing), the races and the elements, and the data: the pairs of a race, the starting positions of a short track race, the results, a replay and the elements of a programme as marks.
|
|
3
3
|
import "./full.js";
|
|
4
|
+
// The real venues of the NHL's arenas, as this entry has always had them (the lean district reads the ones it shows).
|
|
5
|
+
import "./venues.all.js";
|
|
4
6
|
export { skatingPairs, skatingGrid, skatingResults, skatingReplay, figureElements, formatTime, distanceSkated } from "./charts.skating.js";
|
|
5
7
|
export { ELEMENT_KINDS, ELEMENT_NAMES, LONG_TRACK_RACES, LONG_TRACK_RACE_IDS, RACES, RACE_IDS, SHORT_TRACK_RACES, SHORT_TRACK_RACE_IDS, raceById } from "./skating/events.js";
|
|
6
8
|
export { disciplineOf, furnitureOf, racesOf, skatingLeague, skatingPlan } from "./skating/plan.js";
|
package/dist/stadiums-entry.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
import "./full.ts";
|
|
2
|
+
import "./venues.all.ts";
|
|
2
3
|
export { VENUE_ATTRIBUTION, STADIUMS, STADIUM_IDS, groundOfStadium, planPark, planStadium, stadiumBowl, stadiumBowlInside, stadiumById, stadiumByWikidata, stadiumConfigOf, stadiumConfigs, stadiumFrameHeading, stadiumKind, stadiumNames, stadiumOrientation, stadiumSeats } from "./stadiums.ts";
|
|
3
4
|
export type { ParkPlan, RealStadium, RealStadiumData, StadiumBasis, StadiumConfigData, StadiumConfigId, StadiumKind, StadiumOrientation, StadiumOsm, StadiumPlan, StadiumRoof } from "./stadiums.ts";
|