@johnmorrisdotca/dougu-sports 0.28.1 → 0.30.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.
Files changed (474) hide show
  1. package/CHANGELOG.md +36 -0
  2. package/NOTICE.md +1 -0
  3. package/README.md +71 -5
  4. package/dist/brands/brand.ball.d.ts +25 -2
  5. package/dist/brands/brand.ball.js +16 -1
  6. package/dist/brands/brand.data.d.ts +108 -5
  7. package/dist/brands/brand.data.js +32 -0
  8. package/dist/brands/brand.letters.d.ts +39 -4
  9. package/dist/brands/brand.letters.js +20 -2
  10. package/dist/brands/brand.render.d.ts +73 -6
  11. package/dist/brands/brand.render.js +35 -2
  12. package/dist/element.d.ts +32 -0
  13. package/dist/element.js +177 -0
  14. package/dist/emblems/award/badge.d.ts +8 -1
  15. package/dist/emblems/award/badge.js +8 -1
  16. package/dist/emblems/award/crown.d.ts +8 -1
  17. package/dist/emblems/award/crown.js +8 -1
  18. package/dist/emblems/award/medal.d.ts +8 -1
  19. package/dist/emblems/award/medal.js +8 -1
  20. package/dist/emblems/award/ribbon.d.ts +8 -1
  21. package/dist/emblems/award/ribbon.js +8 -1
  22. package/dist/emblems/award/shield.d.ts +8 -1
  23. package/dist/emblems/award/shield.js +8 -1
  24. package/dist/emblems/award/star.d.ts +8 -1
  25. package/dist/emblems/award/star.js +8 -1
  26. package/dist/emblems/ball/ball.afl.d.ts +8 -0
  27. package/dist/emblems/ball/ball.afl.js +8 -0
  28. package/dist/emblems/ball/ball.baseball.vintage.d.ts +40 -5
  29. package/dist/emblems/ball/ball.baseball.vintage.js +40 -5
  30. package/dist/emblems/ball/ball.basketball.d.ts +8 -0
  31. package/dist/emblems/ball/ball.basketball.js +8 -0
  32. package/dist/emblems/ball/ball.basketball3x3.d.ts +8 -0
  33. package/dist/emblems/ball/ball.basketball3x3.js +8 -0
  34. package/dist/emblems/ball/ball.basketball6.d.ts +8 -0
  35. package/dist/emblems/ball/ball.basketball6.js +8 -0
  36. package/dist/emblems/ball/ball.core.d.ts +16 -1
  37. package/dist/emblems/ball/ball.cricket.d.ts +24 -0
  38. package/dist/emblems/ball/ball.cricket.js +24 -0
  39. package/dist/emblems/ball/ball.curlingstone.d.ts +8 -0
  40. package/dist/emblems/ball/ball.curlingstone.js +8 -0
  41. package/dist/emblems/ball/ball.discus.d.ts +8 -0
  42. package/dist/emblems/ball/ball.discus.js +8 -0
  43. package/dist/emblems/ball/ball.face.d.ts +48 -4
  44. package/dist/emblems/ball/ball.fieldhockey.d.ts +8 -0
  45. package/dist/emblems/ball/ball.fieldhockey.js +8 -0
  46. package/dist/emblems/ball/ball.football.d.ts +24 -0
  47. package/dist/emblems/ball/ball.football.js +24 -0
  48. package/dist/emblems/ball/ball.gaelic.d.ts +16 -0
  49. package/dist/emblems/ball/ball.gaelic.js +16 -0
  50. package/dist/emblems/ball/ball.golf.d.ts +8 -0
  51. package/dist/emblems/ball/ball.golf.js +8 -0
  52. package/dist/emblems/ball/ball.hammer.d.ts +8 -0
  53. package/dist/emblems/ball/ball.hammer.js +8 -0
  54. package/dist/emblems/ball/ball.handball.d.ts +8 -0
  55. package/dist/emblems/ball/ball.handball.js +8 -0
  56. package/dist/emblems/ball/ball.index.d.ts +15 -4
  57. package/dist/emblems/ball/ball.index.js +8 -6
  58. package/dist/emblems/ball/ball.padel.d.ts +8 -0
  59. package/dist/emblems/ball/ball.padel.js +8 -0
  60. package/dist/emblems/ball/ball.pickleball.d.ts +16 -0
  61. package/dist/emblems/ball/ball.pickleball.js +16 -0
  62. package/dist/emblems/ball/ball.plastic.d.ts +38 -1
  63. package/dist/emblems/ball/ball.plastic.js +73 -0
  64. package/dist/emblems/ball/ball.print.d.ts +71 -7
  65. package/dist/emblems/ball/ball.print.js +8 -0
  66. package/dist/emblems/ball/ball.printable.d.ts +48 -0
  67. package/dist/emblems/ball/ball.printable.js +48 -0
  68. package/dist/emblems/ball/ball.puck.d.ts +8 -0
  69. package/dist/emblems/ball/ball.puck.js +8 -0
  70. package/dist/emblems/ball/ball.puck.print.d.ts +64 -0
  71. package/dist/emblems/ball/ball.puck.print.js +64 -0
  72. package/dist/emblems/ball/ball.roundnet.d.ts +8 -0
  73. package/dist/emblems/ball/ball.roundnet.js +8 -0
  74. package/dist/emblems/ball/ball.rugby.d.ts +8 -0
  75. package/dist/emblems/ball/ball.rugby.js +8 -0
  76. package/dist/emblems/ball/ball.sepaktakraw.d.ts +8 -0
  77. package/dist/emblems/ball/ball.sepaktakraw.js +8 -0
  78. package/dist/emblems/ball/ball.shuttlecock.d.ts +16 -0
  79. package/dist/emblems/ball/ball.shuttlecock.js +16 -0
  80. package/dist/emblems/ball/ball.sliotar.d.ts +8 -0
  81. package/dist/emblems/ball/ball.sliotar.js +8 -0
  82. package/dist/emblems/ball/ball.smooth.d.ts +32 -0
  83. package/dist/emblems/ball/ball.smooth.js +32 -0
  84. package/dist/emblems/ball/ball.soccer.era.d.ts +96 -12
  85. package/dist/emblems/ball/ball.soccer.era.js +96 -12
  86. package/dist/emblems/ball/ball.soccer.indoor.d.ts +16 -0
  87. package/dist/emblems/ball/ball.soccer.indoor.js +16 -0
  88. package/dist/emblems/ball/ball.soccer.panels.d.ts +120 -0
  89. package/dist/emblems/ball/ball.soccer.panels.js +120 -0
  90. package/dist/emblems/ball/ball.soccer.store.d.ts +144 -0
  91. package/dist/emblems/ball/ball.soccer.store.js +144 -0
  92. package/dist/emblems/ball/ball.soccer.vintage.d.ts +40 -5
  93. package/dist/emblems/ball/ball.soccer.vintage.js +40 -5
  94. package/dist/emblems/ball/ball.squash.d.ts +40 -0
  95. package/dist/emblems/ball/ball.squash.js +40 -0
  96. package/dist/emblems/ball/ball.tennis.d.ts +8 -0
  97. package/dist/emblems/ball/ball.tennis.js +8 -0
  98. package/dist/emblems/ball/ball.teqball.d.ts +8 -0
  99. package/dist/emblems/ball/ball.teqball.js +8 -0
  100. package/dist/emblems/ball/ball.volleyball.d.ts +24 -0
  101. package/dist/emblems/ball/ball.volleyball.flag.d.ts +88 -0
  102. package/dist/emblems/ball/ball.volleyball.flag.js +88 -0
  103. package/dist/emblems/ball/ball.volleyball.js +24 -0
  104. package/dist/emblems/ball/ball.waterpolo.d.ts +8 -0
  105. package/dist/emblems/ball/ball.waterpolo.js +8 -0
  106. package/dist/emblems/crest/diamond.d.ts +8 -1
  107. package/dist/emblems/crest/diamond.js +8 -1
  108. package/dist/emblems/crest/pennant.d.ts +8 -1
  109. package/dist/emblems/crest/pennant.js +8 -1
  110. package/dist/emblems/crest/roundel.d.ts +8 -1
  111. package/dist/emblems/crest/roundel.js +8 -1
  112. package/dist/emblems/crest/shield.d.ts +8 -1
  113. package/dist/emblems/crest/shield.js +8 -1
  114. package/dist/emblems/emblem.api.d.ts +178 -17
  115. package/dist/emblems/emblem.api.js +138 -13
  116. package/dist/emblems/emblem.core.d.ts +104 -8
  117. package/dist/emblems/emblem.core.js +32 -2
  118. package/dist/emblems/emblem.descriptions.d.ts +17 -1
  119. package/dist/emblems/emblem.descriptions.js +11 -0
  120. package/dist/emblems/emblem.display.d.ts +53 -5
  121. package/dist/emblems/emblem.display.js +6 -0
  122. package/dist/emblems/emblem.embed.d.ts +68 -0
  123. package/dist/emblems/emblem.embed.js +65 -0
  124. package/dist/emblems/emblem.equipment.d.ts +12 -1
  125. package/dist/emblems/emblem.equipment.js +2 -0
  126. package/dist/emblems/emblem.ids.d.ts +273 -18
  127. package/dist/emblems/emblem.ids.js +137 -15
  128. package/dist/emblems/emblem.lathe.d.ts +70 -6
  129. package/dist/emblems/emblem.named.d.ts +37 -4
  130. package/dist/emblems/emblem.named.js +18 -2
  131. package/dist/emblems/emblem.registry.d.ts +8 -1
  132. package/dist/emblems/emblem.registry.js +8 -1
  133. package/dist/emblems/emblem.shapes.d.ts +25 -2
  134. package/dist/emblems/emblem.sprite.d.ts +33 -3
  135. package/dist/emblems/emblem.sprite.js +3 -0
  136. package/dist/emblems/emblem.uri.d.ts +13 -1
  137. package/dist/emblems/emblem.uri.js +3 -0
  138. package/dist/emblems/gear/gear.badmintonracket.d.ts +8 -0
  139. package/dist/emblems/gear/gear.badmintonracket.js +8 -0
  140. package/dist/emblems/gear/gear.baseballcap.d.ts +8 -0
  141. package/dist/emblems/gear/gear.baseballcap.js +8 -0
  142. package/dist/emblems/gear/gear.baseballglove.d.ts +8 -0
  143. package/dist/emblems/gear/gear.baseballglove.js +8 -0
  144. package/dist/emblems/gear/gear.budo.d.ts +224 -4
  145. package/dist/emblems/gear/gear.budo.js +205 -3
  146. package/dist/emblems/gear/gear.budo.steps.d.ts +68 -1
  147. package/dist/emblems/gear/gear.budo.steps.js +59 -1
  148. package/dist/emblems/gear/gear.cricketbat.d.ts +8 -0
  149. package/dist/emblems/gear/gear.cricketbat.js +8 -0
  150. package/dist/emblems/gear/gear.field.d.ts +48 -0
  151. package/dist/emblems/gear/gear.field.js +48 -0
  152. package/dist/emblems/gear/gear.fieldhockeystick.d.ts +8 -0
  153. package/dist/emblems/gear/gear.fieldhockeystick.js +8 -0
  154. package/dist/emblems/gear/gear.footballhelmet.d.ts +8 -0
  155. package/dist/emblems/gear/gear.footballhelmet.js +8 -0
  156. package/dist/emblems/gear/gear.goaliemask.d.ts +8 -0
  157. package/dist/emblems/gear/gear.goaliemask.js +8 -0
  158. package/dist/emblems/gear/gear.goalnet.d.ts +8 -0
  159. package/dist/emblems/gear/gear.goalnet.js +8 -0
  160. package/dist/emblems/gear/gear.hockeystick.d.ts +8 -0
  161. package/dist/emblems/gear/gear.hockeystick.js +8 -0
  162. package/dist/emblems/gear/gear.kendo.d.ts +16 -0
  163. package/dist/emblems/gear/gear.kendo.js +16 -0
  164. package/dist/emblems/gear/gear.kyudo.d.ts +16 -0
  165. package/dist/emblems/gear/gear.kyudo.js +16 -0
  166. package/dist/emblems/gear/gear.lacrossestick.d.ts +8 -0
  167. package/dist/emblems/gear/gear.lacrossestick.js +8 -0
  168. package/dist/emblems/gear/gear.nets.d.ts +24 -0
  169. package/dist/emblems/gear/gear.nets.js +24 -0
  170. package/dist/emblems/gear/gear.rackets.d.ts +32 -0
  171. package/dist/emblems/gear/gear.rackets.js +32 -0
  172. package/dist/emblems/gear/gear.skates.d.ts +24 -0
  173. package/dist/emblems/gear/gear.skates.js +24 -0
  174. package/dist/emblems/gear/gear.sticks.d.ts +24 -0
  175. package/dist/emblems/gear/gear.sticks.js +24 -0
  176. package/dist/emblems/gear/gear.sumo.d.ts +16 -0
  177. package/dist/emblems/gear/gear.sumo.js +16 -0
  178. package/dist/emblems/gear/gear.tabletennispaddle.d.ts +8 -0
  179. package/dist/emblems/gear/gear.tabletennispaddle.js +8 -0
  180. package/dist/emblems/gear/gear.tennisracket.d.ts +8 -0
  181. package/dist/emblems/gear/gear.tennisracket.js +8 -0
  182. package/dist/emblems/gear/gear.track.d.ts +32 -0
  183. package/dist/emblems/gear/gear.track.js +32 -0
  184. package/dist/emblems/gear/gear.water.d.ts +16 -0
  185. package/dist/emblems/gear/gear.water.js +16 -0
  186. package/dist/emblems/medal/bronze.d.ts +8 -1
  187. package/dist/emblems/medal/bronze.js +8 -1
  188. package/dist/emblems/medal/gold.d.ts +8 -1
  189. package/dist/emblems/medal/gold.js +8 -1
  190. package/dist/emblems/medal/place-1.d.ts +8 -1
  191. package/dist/emblems/medal/place-1.js +8 -1
  192. package/dist/emblems/medal/place-2.d.ts +8 -1
  193. package/dist/emblems/medal/place-2.js +8 -1
  194. package/dist/emblems/medal/place-3.d.ts +8 -1
  195. package/dist/emblems/medal/place-3.js +8 -1
  196. package/dist/emblems/medal/silver.d.ts +8 -1
  197. package/dist/emblems/medal/silver.js +8 -1
  198. package/dist/emblems/pennant/championship.d.ts +8 -1
  199. package/dist/emblems/pennant/championship.js +8 -1
  200. package/dist/emblems/sport/afl.d.ts +8 -1
  201. package/dist/emblems/sport/afl.js +8 -1
  202. package/dist/emblems/sport/artisticswimming.d.ts +8 -1
  203. package/dist/emblems/sport/artisticswimming.js +8 -1
  204. package/dist/emblems/sport/athletics.d.ts +8 -1
  205. package/dist/emblems/sport/athletics.js +8 -1
  206. package/dist/emblems/sport/badminton.d.ts +8 -1
  207. package/dist/emblems/sport/badminton.js +8 -1
  208. package/dist/emblems/sport/boxing.d.ts +8 -1
  209. package/dist/emblems/sport/boxing.js +8 -1
  210. package/dist/emblems/sport/cfl.d.ts +8 -1
  211. package/dist/emblems/sport/cfl.js +8 -1
  212. package/dist/emblems/sport/cricket.d.ts +8 -1
  213. package/dist/emblems/sport/cricket.js +8 -1
  214. package/dist/emblems/sport/curling.d.ts +8 -1
  215. package/dist/emblems/sport/curling.js +8 -1
  216. package/dist/emblems/sport/diving.d.ts +8 -1
  217. package/dist/emblems/sport/diving.js +8 -1
  218. package/dist/emblems/sport/fieldhockey.d.ts +8 -1
  219. package/dist/emblems/sport/fieldhockey.js +8 -1
  220. package/dist/emblems/sport/gaelic.d.ts +8 -1
  221. package/dist/emblems/sport/gaelic.js +8 -1
  222. package/dist/emblems/sport/handball.d.ts +8 -1
  223. package/dist/emblems/sport/handball.js +8 -1
  224. package/dist/emblems/sport/ifaf.d.ts +8 -1
  225. package/dist/emblems/sport/ifaf.js +8 -1
  226. package/dist/emblems/sport/judo.d.ts +8 -1
  227. package/dist/emblems/sport/judo.js +8 -1
  228. package/dist/emblems/sport/karate.d.ts +8 -1
  229. package/dist/emblems/sport/karate.js +8 -1
  230. package/dist/emblems/sport/kendo.d.ts +8 -1
  231. package/dist/emblems/sport/kendo.js +8 -1
  232. package/dist/emblems/sport/kyudo.d.ts +8 -1
  233. package/dist/emblems/sport/kyudo.js +8 -1
  234. package/dist/emblems/sport/lacrosse.d.ts +8 -1
  235. package/dist/emblems/sport/lacrosse.js +8 -1
  236. package/dist/emblems/sport/mlb.d.ts +8 -1
  237. package/dist/emblems/sport/mlb.js +8 -1
  238. package/dist/emblems/sport/mma.d.ts +8 -1
  239. package/dist/emblems/sport/mma.js +8 -1
  240. package/dist/emblems/sport/nba.d.ts +8 -1
  241. package/dist/emblems/sport/nba.js +8 -1
  242. package/dist/emblems/sport/netball.d.ts +8 -1
  243. package/dist/emblems/sport/netball.js +8 -1
  244. package/dist/emblems/sport/nfl.d.ts +8 -1
  245. package/dist/emblems/sport/nfl.js +8 -1
  246. package/dist/emblems/sport/nhl.d.ts +8 -1
  247. package/dist/emblems/sport/nhl.js +8 -1
  248. package/dist/emblems/sport/padel.d.ts +8 -1
  249. package/dist/emblems/sport/padel.js +8 -1
  250. package/dist/emblems/sport/pickleball.d.ts +8 -1
  251. package/dist/emblems/sport/pickleball.js +8 -1
  252. package/dist/emblems/sport/prowrestling.d.ts +8 -1
  253. package/dist/emblems/sport/prowrestling.js +8 -1
  254. package/dist/emblems/sport/racquetball.d.ts +8 -1
  255. package/dist/emblems/sport/racquetball.js +8 -1
  256. package/dist/emblems/sport/roundnet.d.ts +8 -1
  257. package/dist/emblems/sport/roundnet.js +8 -1
  258. package/dist/emblems/sport/rugby.d.ts +8 -1
  259. package/dist/emblems/sport/rugby.js +8 -1
  260. package/dist/emblems/sport/sepaktakraw.d.ts +8 -1
  261. package/dist/emblems/sport/sepaktakraw.js +8 -1
  262. package/dist/emblems/sport/skating.d.ts +8 -1
  263. package/dist/emblems/sport/skating.js +8 -1
  264. package/dist/emblems/sport/soccer.d.ts +8 -1
  265. package/dist/emblems/sport/soccer.js +8 -1
  266. package/dist/emblems/sport/squash.d.ts +8 -1
  267. package/dist/emblems/sport/squash.js +8 -1
  268. package/dist/emblems/sport/sumo.d.ts +8 -1
  269. package/dist/emblems/sport/sumo.js +8 -1
  270. package/dist/emblems/sport/swimming.d.ts +8 -1
  271. package/dist/emblems/sport/swimming.js +8 -1
  272. package/dist/emblems/sport/tabletennis.d.ts +8 -1
  273. package/dist/emblems/sport/tabletennis.js +8 -1
  274. package/dist/emblems/sport/tennis.d.ts +8 -1
  275. package/dist/emblems/sport/tennis.js +8 -1
  276. package/dist/emblems/sport/teqball.d.ts +8 -1
  277. package/dist/emblems/sport/teqball.js +8 -1
  278. package/dist/emblems/sport/volleyball.d.ts +8 -1
  279. package/dist/emblems/sport/volleyball.js +8 -1
  280. package/dist/emblems/sport/waterpolo.d.ts +8 -1
  281. package/dist/emblems/sport/waterpolo.js +8 -1
  282. package/dist/emblems/sport/wrestling.d.ts +8 -1
  283. package/dist/emblems/sport/wrestling.js +8 -1
  284. package/dist/emblems/trophy/americas-cup.d.ts +8 -1
  285. package/dist/emblems/trophy/americas-cup.js +8 -1
  286. package/dist/emblems/trophy/art-ross-trophy.d.ts +8 -1
  287. package/dist/emblems/trophy/art-ross-trophy.js +8 -1
  288. package/dist/emblems/trophy/ashes-urn.d.ts +8 -1
  289. package/dist/emblems/trophy/ashes-urn.js +8 -1
  290. package/dist/emblems/trophy/avco-world-trophy.d.ts +8 -1
  291. package/dist/emblems/trophy/avco-world-trophy.js +8 -1
  292. package/dist/emblems/trophy/ballon-dor.d.ts +8 -1
  293. package/dist/emblems/trophy/ballon-dor.js +8 -1
  294. package/dist/emblems/trophy/banner.d.ts +8 -1
  295. package/dist/emblems/trophy/banner.js +8 -1
  296. package/dist/emblems/trophy/baseball.d.ts +8 -1
  297. package/dist/emblems/trophy/baseball.js +8 -1
  298. package/dist/emblems/trophy/basketball.d.ts +8 -1
  299. package/dist/emblems/trophy/basketball.js +8 -1
  300. package/dist/emblems/trophy/belt.d.ts +8 -1
  301. package/dist/emblems/trophy/belt.js +8 -1
  302. package/dist/emblems/trophy/bill-russell-trophy.d.ts +8 -1
  303. package/dist/emblems/trophy/bill-russell-trophy.js +8 -1
  304. package/dist/emblems/trophy/bob-cousy-trophy.d.ts +8 -1
  305. package/dist/emblems/trophy/bob-cousy-trophy.js +8 -1
  306. package/dist/emblems/trophy/borg-warner-trophy.d.ts +8 -1
  307. package/dist/emblems/trophy/borg-warner-trophy.js +8 -1
  308. package/dist/emblems/trophy/bowl.d.ts +8 -1
  309. package/dist/emblems/trophy/bowl.js +8 -1
  310. package/dist/emblems/trophy/calder-cup.d.ts +8 -1
  311. package/dist/emblems/trophy/calder-cup.js +8 -1
  312. package/dist/emblems/trophy/calder-trophy.d.ts +8 -1
  313. package/dist/emblems/trophy/calder-trophy.js +8 -1
  314. package/dist/emblems/trophy/campbell-bowl.d.ts +8 -1
  315. package/dist/emblems/trophy/campbell-bowl.js +8 -1
  316. package/dist/emblems/trophy/canadian-bowl.d.ts +8 -1
  317. package/dist/emblems/trophy/canadian-bowl.js +8 -1
  318. package/dist/emblems/trophy/cfp-trophy.d.ts +8 -1
  319. package/dist/emblems/trophy/cfp-trophy.js +8 -1
  320. package/dist/emblems/trophy/champions-league-trophy.d.ts +8 -1
  321. package/dist/emblems/trophy/champions-league-trophy.js +8 -1
  322. package/dist/emblems/trophy/championship-banner.d.ts +8 -1
  323. package/dist/emblems/trophy/championship-banner.js +8 -1
  324. package/dist/emblems/trophy/commissioners-trophy.d.ts +8 -1
  325. package/dist/emblems/trophy/commissioners-trophy.js +8 -1
  326. package/dist/emblems/trophy/conn-smythe-trophy.d.ts +8 -1
  327. package/dist/emblems/trophy/conn-smythe-trophy.js +8 -1
  328. package/dist/emblems/trophy/cricket-urn.d.ts +8 -1
  329. package/dist/emblems/trophy/cricket-urn.js +8 -1
  330. package/dist/emblems/trophy/cricket-world-cup.d.ts +8 -1
  331. package/dist/emblems/trophy/cricket-world-cup.js +8 -1
  332. package/dist/emblems/trophy/cup.d.ts +8 -1
  333. package/dist/emblems/trophy/cup.js +8 -1
  334. package/dist/emblems/trophy/cy-young-award.d.ts +8 -1
  335. package/dist/emblems/trophy/cy-young-award.js +8 -1
  336. package/dist/emblems/trophy/dfb-pokal.d.ts +8 -1
  337. package/dist/emblems/trophy/dfb-pokal.js +8 -1
  338. package/dist/emblems/trophy/fa-cup.d.ts +8 -1
  339. package/dist/emblems/trophy/fa-cup.js +8 -1
  340. package/dist/emblems/trophy/fifa-world-cup.d.ts +8 -1
  341. package/dist/emblems/trophy/fifa-world-cup.js +8 -1
  342. package/dist/emblems/trophy/football.d.ts +8 -1
  343. package/dist/emblems/trophy/football.js +8 -1
  344. package/dist/emblems/trophy/foundation-player-award.d.ts +8 -1
  345. package/dist/emblems/trophy/foundation-player-award.js +8 -1
  346. package/dist/emblems/trophy/george-halas-trophy.d.ts +8 -1
  347. package/dist/emblems/trophy/george-halas-trophy.js +8 -1
  348. package/dist/emblems/trophy/globe.d.ts +8 -1
  349. package/dist/emblems/trophy/globe.js +8 -1
  350. package/dist/emblems/trophy/gold-glove-award.d.ts +8 -1
  351. package/dist/emblems/trophy/gold-glove-award.js +8 -1
  352. package/dist/emblems/trophy/grey-cup.d.ts +8 -1
  353. package/dist/emblems/trophy/grey-cup.js +8 -1
  354. package/dist/emblems/trophy/hank-aaron-award.d.ts +8 -1
  355. package/dist/emblems/trophy/hank-aaron-award.js +8 -1
  356. package/dist/emblems/trophy/hart-trophy.d.ts +8 -1
  357. package/dist/emblems/trophy/hart-trophy.js +8 -1
  358. package/dist/emblems/trophy/hockey-cup.d.ts +8 -1
  359. package/dist/emblems/trophy/hockey-cup.js +8 -1
  360. package/dist/emblems/trophy/jack-adams-trophy.d.ts +8 -1
  361. package/dist/emblems/trophy/jack-adams-trophy.js +8 -1
  362. package/dist/emblems/trophy/jackie-robinson-award.d.ts +8 -1
  363. package/dist/emblems/trophy/jackie-robinson-award.js +8 -1
  364. package/dist/emblems/trophy/jennings-trophy.d.ts +8 -1
  365. package/dist/emblems/trophy/jennings-trophy.js +8 -1
  366. package/dist/emblems/trophy/kelly-cup.d.ts +8 -1
  367. package/dist/emblems/trophy/kelly-cup.js +8 -1
  368. package/dist/emblems/trophy/king-clancy-trophy.d.ts +8 -1
  369. package/dist/emblems/trophy/king-clancy-trophy.js +8 -1
  370. package/dist/emblems/trophy/lady-byng-trophy.d.ts +8 -1
  371. package/dist/emblems/trophy/lady-byng-trophy.js +8 -1
  372. package/dist/emblems/trophy/lamar-hunt-trophy.d.ts +8 -1
  373. package/dist/emblems/trophy/lamar-hunt-trophy.js +8 -1
  374. package/dist/emblems/trophy/larry-bird-trophy.d.ts +8 -1
  375. package/dist/emblems/trophy/larry-bird-trophy.js +8 -1
  376. package/dist/emblems/trophy/larry-obrien-trophy-1977.d.ts +8 -1
  377. package/dist/emblems/trophy/larry-obrien-trophy-1977.js +8 -1
  378. package/dist/emblems/trophy/larry-obrien-trophy.d.ts +8 -1
  379. package/dist/emblems/trophy/larry-obrien-trophy.js +8 -1
  380. package/dist/emblems/trophy/laurel.d.ts +8 -1
  381. package/dist/emblems/trophy/laurel.js +8 -1
  382. package/dist/emblems/trophy/lester-patrick-trophy.d.ts +8 -1
  383. package/dist/emblems/trophy/lester-patrick-trophy.js +8 -1
  384. package/dist/emblems/trophy/lidded-cup.d.ts +8 -1
  385. package/dist/emblems/trophy/lidded-cup.js +8 -1
  386. package/dist/emblems/trophy/lombardi-trophy.d.ts +8 -1
  387. package/dist/emblems/trophy/lombardi-trophy.js +8 -1
  388. package/dist/emblems/trophy/magic-johnson-trophy.d.ts +8 -1
  389. package/dist/emblems/trophy/magic-johnson-trophy.js +8 -1
  390. package/dist/emblems/trophy/masterton-trophy.d.ts +8 -1
  391. package/dist/emblems/trophy/masterton-trophy.js +8 -1
  392. package/dist/emblems/trophy/messier-leadership-award.d.ts +8 -1
  393. package/dist/emblems/trophy/messier-leadership-award.js +8 -1
  394. package/dist/emblems/trophy/mlb-mvp-award.d.ts +8 -1
  395. package/dist/emblems/trophy/mlb-mvp-award.js +8 -1
  396. package/dist/emblems/trophy/mls-cup.d.ts +8 -1
  397. package/dist/emblems/trophy/mls-cup.js +8 -1
  398. package/dist/emblems/trophy/nba-eastern-conference-2001.d.ts +8 -1
  399. package/dist/emblems/trophy/nba-eastern-conference-2001.js +8 -1
  400. package/dist/emblems/trophy/nba-western-conference-2001.d.ts +8 -1
  401. package/dist/emblems/trophy/nba-western-conference-2001.js +8 -1
  402. package/dist/emblems/trophy/norris-trophy.d.ts +8 -1
  403. package/dist/emblems/trophy/norris-trophy.js +8 -1
  404. package/dist/emblems/trophy/obrien-cup.d.ts +8 -1
  405. package/dist/emblems/trophy/obrien-cup.js +8 -1
  406. package/dist/emblems/trophy/oscar-robertson-trophy.d.ts +8 -1
  407. package/dist/emblems/trophy/oscar-robertson-trophy.js +8 -1
  408. package/dist/emblems/trophy/paterson-cup.d.ts +8 -1
  409. package/dist/emblems/trophy/paterson-cup.js +8 -1
  410. package/dist/emblems/trophy/plaque.d.ts +8 -1
  411. package/dist/emblems/trophy/plaque.js +8 -1
  412. package/dist/emblems/trophy/presidents-trophy.d.ts +8 -1
  413. package/dist/emblems/trophy/presidents-trophy.js +8 -1
  414. package/dist/emblems/trophy/prince-of-wales-trophy.d.ts +8 -1
  415. package/dist/emblems/trophy/prince-of-wales-trophy.js +8 -1
  416. package/dist/emblems/trophy/relief-man-award.d.ts +8 -1
  417. package/dist/emblems/trophy/relief-man-award.js +8 -1
  418. package/dist/emblems/trophy/ring.d.ts +8 -1
  419. package/dist/emblems/trophy/ring.js +8 -1
  420. package/dist/emblems/trophy/rocket-richard-trophy.d.ts +8 -1
  421. package/dist/emblems/trophy/rocket-richard-trophy.js +8 -1
  422. package/dist/emblems/trophy/rosette.d.ts +8 -1
  423. package/dist/emblems/trophy/rosette.js +8 -1
  424. package/dist/emblems/trophy/rugby-cup.d.ts +8 -1
  425. package/dist/emblems/trophy/rugby-cup.js +8 -1
  426. package/dist/emblems/trophy/salver.d.ts +8 -1
  427. package/dist/emblems/trophy/salver.js +8 -1
  428. package/dist/emblems/trophy/selke-trophy.d.ts +8 -1
  429. package/dist/emblems/trophy/selke-trophy.js +8 -1
  430. package/dist/emblems/trophy/silver-slugger-award.d.ts +8 -1
  431. package/dist/emblems/trophy/silver-slugger-award.js +8 -1
  432. package/dist/emblems/trophy/soccer-ball.d.ts +8 -1
  433. package/dist/emblems/trophy/soccer-ball.js +8 -1
  434. package/dist/emblems/trophy/soccer-globe.d.ts +8 -1
  435. package/dist/emblems/trophy/soccer-globe.js +8 -1
  436. package/dist/emblems/trophy/stanley-cup.d.ts +8 -1
  437. package/dist/emblems/trophy/stanley-cup.js +8 -1
  438. package/dist/emblems/trophy/sumo-cup.d.ts +8 -1
  439. package/dist/emblems/trophy/sumo-cup.js +8 -1
  440. package/dist/emblems/trophy/ted-lindsay-award.d.ts +8 -1
  441. package/dist/emblems/trophy/ted-lindsay-award.js +8 -1
  442. package/dist/emblems/trophy/tennis-cup.d.ts +8 -1
  443. package/dist/emblems/trophy/tennis-cup.js +8 -1
  444. package/dist/emblems/trophy/tennis-plate.d.ts +8 -1
  445. package/dist/emblems/trophy/tennis-plate.js +8 -1
  446. package/dist/emblems/trophy/venus-rosewater-dish.d.ts +8 -1
  447. package/dist/emblems/trophy/venus-rosewater-dish.js +8 -1
  448. package/dist/emblems/trophy/vezina-trophy.d.ts +8 -1
  449. package/dist/emblems/trophy/vezina-trophy.js +8 -1
  450. package/dist/emblems/trophy/walter-cup.d.ts +8 -1
  451. package/dist/emblems/trophy/walter-cup.js +8 -1
  452. package/dist/emblems/trophy/webb-ellis-cup.d.ts +8 -1
  453. package/dist/emblems/trophy/webb-ellis-cup.js +8 -1
  454. package/dist/emblems/trophy/willie-oree-award.d.ts +8 -1
  455. package/dist/emblems/trophy/willie-oree-award.js +8 -1
  456. package/dist/emblems/trophy/wimbledon-gentlemens-trophy.d.ts +8 -1
  457. package/dist/emblems/trophy/wimbledon-gentlemens-trophy.js +8 -1
  458. package/dist/emblems/trophy/wnba-championship-trophy.d.ts +8 -1
  459. package/dist/emblems/trophy/wnba-championship-trophy.js +8 -1
  460. package/dist/emblems/trophy/woodlawn-vase.d.ts +8 -1
  461. package/dist/emblems/trophy/woodlawn-vase.js +8 -1
  462. package/dist/emblems/trophy/world-series-mvp-trophy.d.ts +8 -1
  463. package/dist/emblems/trophy/world-series-mvp-trophy.js +8 -1
  464. package/dist/emblems-entry.d.ts +2 -0
  465. package/dist/emblems-entry.js +1 -0
  466. package/dist/index.d.ts +1 -1
  467. package/dist/index.js +1 -1
  468. package/dist/turn-control.d.ts +72 -7
  469. package/dist/turn-control.js +22 -3
  470. package/dist/turn-full.d.ts +5 -1
  471. package/dist/turn-full.js +5 -1
  472. package/dist/version.d.ts +9 -1
  473. package/dist/version.js +9 -1
  474. package/package.json +37 -7
@@ -14,7 +14,7 @@ import { BALL_HAMMER } from "./ball.hammer.js";
14
14
  import { BALL_HANDBALL } from "./ball.handball.js";
15
15
  import { BALL_PADEL } from "./ball.padel.js";
16
16
  import { BALL_PICKLEBALL_OUTDOOR, BALL_PICKLEBALL_INDOOR } from "./ball.pickleball.js";
17
- import { BALL_PLASTIC_BASEBALL_SLOTTED } from "./ball.plastic.js";
17
+ import { BALL_PLASTIC_BASEBALL_PRACTICE, BALL_PLASTIC_BASEBALL_PRACTICE_ORANGE, BALL_PLASTIC_BASEBALL_PRACTICE_WHITE, BALL_PLASTIC_BASEBALL_SLOTTED } from "./ball.plastic.js";
18
18
  import { BALL_PUCK } from "./ball.puck.js";
19
19
  import { PUCKS } from "./ball.puck.print.js";
20
20
  import { BALL_BASEBALL, BALL_SOCCER, BALL_SOCCER_COLOUR, BALL_SOCCER_ORANGE, BALL_SOCCER_YELLOW, BALL_SOFTBALL } from "./ball.printable.js";
@@ -37,7 +37,7 @@ import { BALL_TEQBALL } from "./ball.teqball.js";
37
37
  import { BALL_VOLLEYBALL, BALL_VOLLEYBALL_8, BALL_BEACH_VOLLEYBALL } from "./ball.volleyball.js";
38
38
  import { BALL_WATER_POLO } from "./ball.waterpolo.js";
39
39
  /** Every ball, in the order a gallery shows them. */
40
- export const BALLS = [BALL_SOCCER, BALL_SOCCER_COLOUR, BALL_SOCCER_26, BALL_SOCCER_18, BALL_SOCCER_14, BALL_SOCCER_12, BALL_SOCCER_6, BALL_SOCCER_ORANGE, BALL_SOCCER_26_ORANGE, BALL_SOCCER_18_ORANGE, BALL_SOCCER_14_ORANGE, BALL_SOCCER_12_ORANGE, BALL_SOCCER_6_ORANGE, BALL_SOCCER_YELLOW, BALL_SOCCER_26_YELLOW, BALL_SOCCER_18_YELLOW, BALL_SOCCER_14_YELLOW, BALL_SOCCER_12_YELLOW, BALL_SOCCER_6_YELLOW, BALL_FUTSAL, BALL_BEACH_SOCCER, BALL_SOCCER_1870_HAND_STITCHED, BALL_SOCCER_1900_LACED, BALL_SOCCER_1930_18_PANEL, BALL_SOCCER_1950_12_PANEL, BALL_SOCCER_1960_32_PANEL_LEATHER, BALL_SOCCER_RETRO_PENTAGONS, BALL_SOCCER_RETRO_LEAVES, BALL_SOCCER_RETRO_ROSETTE, BALL_SOCCER_RETRO_STAR, BALL_SOCCER_RETRO_PINWHEEL, BALL_SOCCER_RETRO_KITES, BALL_SOCCER_14_PANEL_DOUBLE_BORDER, BALL_SOCCER_8_PANEL_PLAIN, BALL_SOCCER_6_PANEL_BANDS, BALL_SOCCER_6_PANEL_DIAMONDS, BALL_SOCCER_20_PANEL_DOTS, BALL_SOCCER_TRAINING_HIGH_VIS, BALL_SOCCER_STARS_BLUE, BALL_SOCCER_STARS_RED, BALL_SOCCER_STARS_NIGHT, BALL_SOCCER_HEXAGONS_CYAN, BALL_SOCCER_HEXAGONS_MAGENTA, BALL_SOCCER_HEXAGONS_LIME, BALL_SOCCER_FLAMES_FIRE, BALL_SOCCER_FLAMES_ICE, BALL_SOCCER_FLAMES_TOXIC, BALL_SOCCER_CHEVRONS_RED, BALL_SOCCER_CHEVRONS_GREEN, BALL_SOCCER_CHEVRONS_BLUE, BALL_SOCCER_SWIRL_BLUE, BALL_SOCCER_SWIRL_RED, BALL_SOCCER_SWIRL_TEAL, BALL_SOCCER_METALLIC_GOLD, BALL_SOCCER_METALLIC_SILVER, BALL_SOCCER_METALLIC_COBALT, BALL_TEQBALL, BALL_BASKETBALL, BALL_BASKETBALL_6, BALL_BASKETBALL_3X3, BALL_BASEBALL, BALL_SOFTBALL, BALL_BASEBALL_LEMON_PEEL, BALL_BASEBALL_RED_BLUE, BALL_BASEBALL_BLACK_RED, BALL_BASEBALL_VINTAGE_LEATHER, BALL_SOFTBALL_11_OPTIC, BALL_TENNIS, BALL_PADEL, BALL_SLIOTAR, BALL_VOLLEYBALL, BALL_VOLLEYBALL_8, BALL_BEACH_VOLLEYBALL, BALL_VOLLEYBALL_COLOURS, BALL_VOLLEYBALL_BRAZIL, BALL_VOLLEYBALL_JAPAN, BALL_VOLLEYBALL_CANADA, BALL_VOLLEYBALL_USA, BALL_VOLLEYBALL_ITALY, BALL_VOLLEYBALL_POLAND, BALL_VOLLEYBALL_FRANCE, BALL_VOLLEYBALL_SERBIA, BALL_VOLLEYBALL_NETHERLANDS, BALL_VOLLEYBALL_GERMANY, BALL_CRICKET_RED, BALL_CRICKET_WHITE, BALL_CRICKET_PINK, BALL_FOOTBALL, BALL_FOOTBALL_CFL, BALL_FOOTBALL_IFAF, BALL_RUGBY, BALL_AFL, BALL_GAELIC_FOOTBALL, BALL_NETBALL, BALL_PICKLEBALL_OUTDOOR, BALL_PICKLEBALL_INDOOR, BALL_PLASTIC_BASEBALL_SLOTTED, BALL_SQUASH_DOUBLE_YELLOW, BALL_SQUASH_YELLOW, BALL_SQUASH_GREEN, BALL_SQUASH_RED, BALL_SQUASH_BLUE, BALL_RACQUETBALL, BALL_LACROSSE, BALL_FIELD_HOCKEY, BALL_TABLE_TENNIS, BALL_HANDBALL, BALL_WATER_POLO, BALL_GOLF, BALL_PUCK, BALL_CURLING_STONE, BALL_SHOT, BALL_DISCUS, BALL_HAMMER, BALL_SEPAK_TAKRAW, BALL_ROUNDNET, BALL_SHUTTLECOCK_FEATHER, BALL_SHUTTLECOCK_NYLON];
40
+ export const BALLS = [BALL_SOCCER, BALL_SOCCER_COLOUR, BALL_SOCCER_26, BALL_SOCCER_18, BALL_SOCCER_14, BALL_SOCCER_12, BALL_SOCCER_6, BALL_SOCCER_ORANGE, BALL_SOCCER_26_ORANGE, BALL_SOCCER_18_ORANGE, BALL_SOCCER_14_ORANGE, BALL_SOCCER_12_ORANGE, BALL_SOCCER_6_ORANGE, BALL_SOCCER_YELLOW, BALL_SOCCER_26_YELLOW, BALL_SOCCER_18_YELLOW, BALL_SOCCER_14_YELLOW, BALL_SOCCER_12_YELLOW, BALL_SOCCER_6_YELLOW, BALL_FUTSAL, BALL_BEACH_SOCCER, BALL_SOCCER_1870_HAND_STITCHED, BALL_SOCCER_1900_LACED, BALL_SOCCER_1930_18_PANEL, BALL_SOCCER_1950_12_PANEL, BALL_SOCCER_1960_32_PANEL_LEATHER, BALL_SOCCER_RETRO_PENTAGONS, BALL_SOCCER_RETRO_LEAVES, BALL_SOCCER_RETRO_ROSETTE, BALL_SOCCER_RETRO_STAR, BALL_SOCCER_RETRO_PINWHEEL, BALL_SOCCER_RETRO_KITES, BALL_SOCCER_14_PANEL_DOUBLE_BORDER, BALL_SOCCER_8_PANEL_PLAIN, BALL_SOCCER_6_PANEL_BANDS, BALL_SOCCER_6_PANEL_DIAMONDS, BALL_SOCCER_20_PANEL_DOTS, BALL_SOCCER_TRAINING_HIGH_VIS, BALL_SOCCER_STARS_BLUE, BALL_SOCCER_STARS_RED, BALL_SOCCER_STARS_NIGHT, BALL_SOCCER_HEXAGONS_CYAN, BALL_SOCCER_HEXAGONS_MAGENTA, BALL_SOCCER_HEXAGONS_LIME, BALL_SOCCER_FLAMES_FIRE, BALL_SOCCER_FLAMES_ICE, BALL_SOCCER_FLAMES_TOXIC, BALL_SOCCER_CHEVRONS_RED, BALL_SOCCER_CHEVRONS_GREEN, BALL_SOCCER_CHEVRONS_BLUE, BALL_SOCCER_SWIRL_BLUE, BALL_SOCCER_SWIRL_RED, BALL_SOCCER_SWIRL_TEAL, BALL_SOCCER_METALLIC_GOLD, BALL_SOCCER_METALLIC_SILVER, BALL_SOCCER_METALLIC_COBALT, BALL_TEQBALL, BALL_BASKETBALL, BALL_BASKETBALL_6, BALL_BASKETBALL_3X3, BALL_BASEBALL, BALL_SOFTBALL, BALL_BASEBALL_LEMON_PEEL, BALL_BASEBALL_RED_BLUE, BALL_BASEBALL_BLACK_RED, BALL_BASEBALL_VINTAGE_LEATHER, BALL_SOFTBALL_11_OPTIC, BALL_TENNIS, BALL_PADEL, BALL_SLIOTAR, BALL_VOLLEYBALL, BALL_VOLLEYBALL_8, BALL_BEACH_VOLLEYBALL, BALL_VOLLEYBALL_COLOURS, BALL_VOLLEYBALL_BRAZIL, BALL_VOLLEYBALL_JAPAN, BALL_VOLLEYBALL_CANADA, BALL_VOLLEYBALL_USA, BALL_VOLLEYBALL_ITALY, BALL_VOLLEYBALL_POLAND, BALL_VOLLEYBALL_FRANCE, BALL_VOLLEYBALL_SERBIA, BALL_VOLLEYBALL_NETHERLANDS, BALL_VOLLEYBALL_GERMANY, BALL_CRICKET_RED, BALL_CRICKET_WHITE, BALL_CRICKET_PINK, BALL_FOOTBALL, BALL_FOOTBALL_CFL, BALL_FOOTBALL_IFAF, BALL_RUGBY, BALL_AFL, BALL_GAELIC_FOOTBALL, BALL_NETBALL, BALL_PICKLEBALL_OUTDOOR, BALL_PICKLEBALL_INDOOR, BALL_PLASTIC_BASEBALL_SLOTTED, BALL_PLASTIC_BASEBALL_PRACTICE, BALL_PLASTIC_BASEBALL_PRACTICE_WHITE, BALL_PLASTIC_BASEBALL_PRACTICE_ORANGE, BALL_SQUASH_DOUBLE_YELLOW, BALL_SQUASH_YELLOW, BALL_SQUASH_GREEN, BALL_SQUASH_RED, BALL_SQUASH_BLUE, BALL_RACQUETBALL, BALL_LACROSSE, BALL_FIELD_HOCKEY, BALL_TABLE_TENNIS, BALL_HANDBALL, BALL_WATER_POLO, BALL_GOLF, BALL_PUCK, BALL_CURLING_STONE, BALL_SHOT, BALL_DISCUS, BALL_HAMMER, BALL_SEPAK_TAKRAW, BALL_ROUNDNET, BALL_SHUTTLECOCK_FEATHER, BALL_SHUTTLECOCK_NYLON];
41
41
  /** The id of every ball: `"ball:soccer"`, `"ball:cricket-red"`. */
42
42
  export const BALL_IDS = BALLS.map((b) => b.id);
43
43
  const TABLE = new Map([...BALLS, ...PUCKS].map((b) => [b.id, b]));
@@ -75,12 +75,14 @@ export function ballSize(name) {
75
75
  /**
76
76
  * Several balls side by side. At the true scale each ball is as big, next to the others, as the rulebook makes it: a puck beside a basketball looks right. `extentMm` is what a ball's drawing is
77
77
  * scaled by (the ball's largest size in a box of 92 units), so the sizes are the rules' sizes, not a guess. The result is one document of SVG.
78
+ * @param names - Ball ids (`ball:golf`), in the order they stand.
79
+ * @param options - The scale, height, gap and alignment.
80
+ * @returns One document of SVG with all the balls.
78
81
  * @example
79
82
  * ```ts
80
- * import { lineup } from "@johnmorrisdotca/kyogijo-stadiums/balls";
81
- * const svg = lineup(["golf", "tennis", "soccer", "puck"], { scale: "true", height: 80 });
82
- * console.log(svg.includes("<title>"));
83
- * // true
83
+ * import { lineup } from "@johnmorrisdotca/dougu-sports/emblems";
84
+ * const svg = lineup(["ball:golf", "ball:tennis", "ball:soccer"], { scale: "true", height: 80 });
85
+ * console.log(svg.startsWith("<svg"));
84
86
  * ```
85
87
  */
86
88
  export function lineup(names, options) {
@@ -1 +1,9 @@
1
+ /**
2
+ * The Padel ball emblem (パデルボール in Japanese): id `ball:padel`, a ball turned in 3D.
3
+ * @example
4
+ * ```ts
5
+ * import { BALL_PADEL } from "@johnmorrisdotca/dougu-sports";
6
+ * console.log(BALL_PADEL.id, BALL_PADEL.svg({ size: 48 }).startsWith("<svg"));
7
+ * ```
8
+ */
1
9
  export declare const BALL_PADEL: import("./ball.core.ts").Piece<import("./ball.engine.ts").BallSpec>;
@@ -1,5 +1,13 @@
1
1
  // Padel ball: a yellow felt ball a little larger than a tennis ball's, with a seam of its own proportions.
2
2
  import { seamedBall } from "./ball.family.seamed.js";
3
+ /**
4
+ * The Padel ball emblem (パデルボール in Japanese): id `ball:padel`, a ball turned in 3D.
5
+ * @example
6
+ * ```ts
7
+ * import { BALL_PADEL } from "@johnmorrisdotca/dougu-sports";
8
+ * console.log(BALL_PADEL.id, BALL_PADEL.svg({ size: 48 }).startsWith("<svg"));
9
+ * ```
10
+ */
3
11
  export const BALL_PADEL = /* @__PURE__ */ seamedBall({
4
12
  id: "ball:padel",
5
13
  en: "Padel ball",
@@ -1,2 +1,18 @@
1
+ /**
2
+ * The Pickleball, outdoor emblem (ピックルボール(屋外用) in Japanese): id `ball:pickleball-outdoor`, a ball turned in 3D.
3
+ * @example
4
+ * ```ts
5
+ * import { BALL_PICKLEBALL_OUTDOOR } from "@johnmorrisdotca/dougu-sports";
6
+ * console.log(BALL_PICKLEBALL_OUTDOOR.id, BALL_PICKLEBALL_OUTDOOR.svg({ size: 48 }).startsWith("<svg"));
7
+ * ```
8
+ */
1
9
  export declare const BALL_PICKLEBALL_OUTDOOR: import("./ball.core.ts").Piece<import("./ball.engine.ts").BallSpec>;
10
+ /**
11
+ * The Pickleball, indoor emblem (ピックルボール(屋内用) in Japanese): id `ball:pickleball-indoor`, a ball turned in 3D.
12
+ * @example
13
+ * ```ts
14
+ * import { BALL_PICKLEBALL_INDOOR } from "@johnmorrisdotca/dougu-sports";
15
+ * console.log(BALL_PICKLEBALL_INDOOR.id, BALL_PICKLEBALL_INDOOR.svg({ size: 48 }).startsWith("<svg"));
16
+ * ```
17
+ */
2
18
  export declare const BALL_PICKLEBALL_INDOOR: import("./ball.core.ts").Piece<import("./ball.engine.ts").BallSpec>;
@@ -1,6 +1,14 @@
1
1
  // Pickleball: a perforated plastic ball. The outdoor ball has 40 small holes; the indoor ball has 26 larger ones (the rulebook gives 26 to 40 holes; the split is how balls are sold).
2
2
  import { dottedBall } from "./ball.family.dotted.js";
3
3
  import { holeLayers } from "./ball.holes.js";
4
+ /**
5
+ * The Pickleball, outdoor emblem (ピックルボール(屋外用) in Japanese): id `ball:pickleball-outdoor`, a ball turned in 3D.
6
+ * @example
7
+ * ```ts
8
+ * import { BALL_PICKLEBALL_OUTDOOR } from "@johnmorrisdotca/dougu-sports";
9
+ * console.log(BALL_PICKLEBALL_OUTDOOR.id, BALL_PICKLEBALL_OUTDOOR.svg({ size: 48 }).startsWith("<svg"));
10
+ * ```
11
+ */
4
12
  export const BALL_PICKLEBALL_OUTDOOR = /* @__PURE__ */ dottedBall({
5
13
  id: "ball:pickleball-outdoor",
6
14
  en: "Pickleball, outdoor",
@@ -14,6 +22,14 @@ export const BALL_PICKLEBALL_OUTDOOR = /* @__PURE__ */ dottedBall({
14
22
  depth: 0.75,
15
23
  hollow: holeLayers,
16
24
  });
25
+ /**
26
+ * The Pickleball, indoor emblem (ピックルボール(屋内用) in Japanese): id `ball:pickleball-indoor`, a ball turned in 3D.
27
+ * @example
28
+ * ```ts
29
+ * import { BALL_PICKLEBALL_INDOOR } from "@johnmorrisdotca/dougu-sports";
30
+ * console.log(BALL_PICKLEBALL_INDOOR.id, BALL_PICKLEBALL_INDOOR.svg({ size: 48 }).startsWith("<svg"));
31
+ * ```
32
+ */
17
33
  export const BALL_PICKLEBALL_INDOOR = /* @__PURE__ */ dottedBall({
18
34
  id: "ball:pickleball-indoor",
19
35
  en: "Pickleball, indoor",
@@ -1 +1,38 @@
1
- export declare const BALL_PLASTIC_BASEBALL_SLOTTED: import("./ball.core.ts").Piece<import("./ball.engine.ts").BallSpec>;
1
+ import type { Piece } from "./ball.core.ts";
2
+ import type { BallSpec } from "./ball.engine.ts";
3
+ /**
4
+ * The Plastic baseball, slotted emblem (野球の穴あき練習球 in Japanese): id `ball:plastic-baseball-slotted`, a ball turned in 3D.
5
+ * @example
6
+ * ```ts
7
+ * import { BALL_PLASTIC_BASEBALL_SLOTTED } from "@johnmorrisdotca/dougu-sports";
8
+ * console.log(BALL_PLASTIC_BASEBALL_SLOTTED.id, BALL_PLASTIC_BASEBALL_SLOTTED.svg({ size: 48 }).startsWith("<svg"));
9
+ * ```
10
+ */
11
+ export declare const BALL_PLASTIC_BASEBALL_SLOTTED: Piece<BallSpec>;
12
+ /**
13
+ * The Practice ball, two-tone emblem (穴あき練習球(二色)): id `ball:plastic-baseball-practice`, the high-visibility yellow and black two-tone ball with slots on both halves, turned in 3D.
14
+ * @example
15
+ * ```ts
16
+ * import { BALL_PLASTIC_BASEBALL_PRACTICE } from "@johnmorrisdotca/dougu-sports";
17
+ * console.log(BALL_PLASTIC_BASEBALL_PRACTICE.id, BALL_PLASTIC_BASEBALL_PRACTICE.svg({ size: 48 }).includes("<mask"));
18
+ * ```
19
+ */
20
+ export declare const BALL_PLASTIC_BASEBALL_PRACTICE: Piece<BallSpec>;
21
+ /**
22
+ * The Practice ball, white emblem (穴あき練習球(白)): id `ball:plastic-baseball-practice-white`, one colour, with slots on both halves, turned in 3D.
23
+ * @example
24
+ * ```ts
25
+ * import { BALL_PLASTIC_BASEBALL_PRACTICE_WHITE } from "@johnmorrisdotca/dougu-sports";
26
+ * console.log(BALL_PLASTIC_BASEBALL_PRACTICE_WHITE.id, BALL_PLASTIC_BASEBALL_PRACTICE_WHITE.svg({ size: 48 }).includes("<mask"));
27
+ * ```
28
+ */
29
+ export declare const BALL_PLASTIC_BASEBALL_PRACTICE_WHITE: Piece<BallSpec>;
30
+ /**
31
+ * The Practice ball, orange emblem (穴あき練習球(橙)): id `ball:plastic-baseball-practice-orange`, one colour, with slots on both halves, turned in 3D.
32
+ * @example
33
+ * ```ts
34
+ * import { BALL_PLASTIC_BASEBALL_PRACTICE_ORANGE } from "@johnmorrisdotca/dougu-sports";
35
+ * console.log(BALL_PLASTIC_BASEBALL_PRACTICE_ORANGE.id, BALL_PLASTIC_BASEBALL_PRACTICE_ORANGE.svg({ size: 48 }).includes("<mask"));
36
+ * ```
37
+ */
38
+ export declare const BALL_PLASTIC_BASEBALL_PRACTICE_ORANGE: Piece<BallSpec>;
@@ -4,6 +4,8 @@
4
4
  // No maker's name is in this package: it is a generic ball.
5
5
  import { defineBall } from "./ball.engine.js";
6
6
  import { holeLayers, slotRing } from "./ball.holes.js";
7
+ import { greatCircle } from "./ball.math.js";
8
+ import { region } from "./ball.region.js";
7
9
  /** The axis of the perforated half: its pole, the middle of the solid-free half's ring of slots. */
8
10
  const POLE = [0, 0, 1];
9
11
  /** Eight slots in a ring round the pole at 36 degrees from it (the ring is about half way out in a picture of the ball seen from its pole), each running along the line to the pole. */
@@ -17,6 +19,14 @@ const CENTRES = Array.from({ length: SLOTS }, (_, i) => {
17
19
  return [Math.sin(COLATITUDE) * Math.cos(a), Math.sin(COLATITUDE) * Math.sin(a), Math.cos(COLATITUDE)];
18
20
  });
19
21
  const DIRS = CENTRES.map((m) => [POLE[0] - m[0] * m[2], POLE[1] - m[1] * m[2], POLE[2] - m[2] * m[2]]);
22
+ /**
23
+ * The Plastic baseball, slotted emblem (野球の穴あき練習球 in Japanese): id `ball:plastic-baseball-slotted`, a ball turned in 3D.
24
+ * @example
25
+ * ```ts
26
+ * import { BALL_PLASTIC_BASEBALL_SLOTTED } from "@johnmorrisdotca/dougu-sports";
27
+ * console.log(BALL_PLASTIC_BASEBALL_SLOTTED.id, BALL_PLASTIC_BASEBALL_SLOTTED.svg({ size: 48 }).startsWith("<svg"));
28
+ * ```
29
+ */
20
30
  export const BALL_PLASTIC_BASEBALL_SLOTTED = /* @__PURE__ */ defineBall({
21
31
  id: "ball:plastic-baseball-slotted",
22
32
  en: "Plastic baseball, slotted",
@@ -30,3 +40,66 @@ export const BALL_PLASTIC_BASEBALL_SLOTTED = /* @__PURE__ */ defineBall({
30
40
  holes: (s, id, base, shape, minWidth) => holeLayers(s, id, { centres: CENTRES, radius: HALF_WIDTH, long: HALF_LONG, dirs: DIRS }, base, shape, minWidth),
31
41
  },
32
42
  });
43
+ /**
44
+ * The common hollow plastic practice baseball with slots all over it (the other, the one-sided ball above, is the first): one ring of five large oval slots on each half, running toward the pole, the two rings
45
+ * turned half a step apart so that no slot faces another across the seam, and often two-tone, the halves split along the seam. A slot is about 22 mm long and 14 mm wide on a ball of the size of a baseball, an oval
46
+ * and not a slit (larger than the 19 mm of the one-sided ball, as the photographs show); the other figures are the same facts as above, and the number and the layout of the slots are drawn from photographs looked at and never copied. No maker's name is in this package.
47
+ */
48
+ const PRACTICE_HALF_LONG = 0.3;
49
+ const PRACTICE_HALF_WIDTH = 0.19;
50
+ const PRACTICE_PER_HALF = 6;
51
+ const PRACTICE_COLATITUDE = 56;
52
+ const ALL = [1, -1].flatMap((sign) => Array.from({ length: PRACTICE_PER_HALF }, (_, i) => {
53
+ const a = (((sign === 1 ? 0 : 180 / PRACTICE_PER_HALF) + (i / PRACTICE_PER_HALF) * 360) * Math.PI) / 180;
54
+ const t = (PRACTICE_COLATITUDE * Math.PI) / 180;
55
+ const m = [Math.sin(t) * Math.cos(a), Math.sin(t) * Math.sin(a), sign * Math.cos(t)];
56
+ const along = [-m[0] * m[2] * sign, -m[1] * m[2] * sign, sign - m[2] * m[2] * sign];
57
+ return { m, dir: along };
58
+ }));
59
+ const PRACTICE_CENTRES = ALL.map((one) => one.m);
60
+ const PRACTICE_DIRS = ALL.map((one) => one.dir);
61
+ function practice(id, en, ja, colours) {
62
+ const seam = greatCircle([0, 0, 1], 120).reverse();
63
+ return defineBall({
64
+ id,
65
+ en,
66
+ ja,
67
+ size: { extentMm: 73.8, diameterMm: 73.8, rule: "English Wikipedia, the article on the perforated plastic practice ball (accessed 2026-10-21): hollow plastic, wall at most 3.2 mm; size taken from Official Baseball Rules, Rule 3.01 (the middle of the circumference range). The count and layout of the slots are drawn from photographs looked at, not copied.", note: "The size of a slot on this ball is not given by the article (19 mm is the one-sided ball's): it is drawn about 22 by 14 mm, an oval, to match the photographs. The mass is not stated. " },
68
+ spec: {
69
+ view: { yaw: -22, pitch: 26, roll: 0 },
70
+ base: colours.second ?? colours.first,
71
+ ...(colours.second === undefined ? {} : { ground: colours.first }),
72
+ mat: { gloss: 0.5, shade: "#2b2e36", grain: { f: 1.4, a: 0.08 } },
73
+ draw: (s, base) => (colours.second === undefined ? "" : region(s, seam, base)) +
74
+ (s.line ? s.strokes(PRACTICE_CENTRES.map((m, i) => slotRing(m, PRACTICE_DIRS[i], PRACTICE_HALF_WIDTH, PRACTICE_HALF_LONG)), "#000", 1, { closed: true }) : ""),
75
+ holes: (s, hid, base, shape, minWidth) => holeLayers(s, hid, { centres: PRACTICE_CENTRES, radius: PRACTICE_HALF_WIDTH, long: PRACTICE_HALF_LONG, dirs: PRACTICE_DIRS }, base, shape, minWidth),
76
+ },
77
+ });
78
+ }
79
+ /**
80
+ * The Practice ball, two-tone emblem (穴あき練習球(二色)): id `ball:plastic-baseball-practice`, the high-visibility yellow and black two-tone ball with slots on both halves, turned in 3D.
81
+ * @example
82
+ * ```ts
83
+ * import { BALL_PLASTIC_BASEBALL_PRACTICE } from "@johnmorrisdotca/dougu-sports";
84
+ * console.log(BALL_PLASTIC_BASEBALL_PRACTICE.id, BALL_PLASTIC_BASEBALL_PRACTICE.svg({ size: 48 }).includes("<mask"));
85
+ * ```
86
+ */
87
+ export const BALL_PLASTIC_BASEBALL_PRACTICE = /* @__PURE__ */ practice("ball:plastic-baseball-practice", "Practice ball, two-tone", "穴あき練習球(二色)", { first: "#d4ee1a", second: "#1d1f24" });
88
+ /**
89
+ * The Practice ball, white emblem (穴あき練習球(白)): id `ball:plastic-baseball-practice-white`, one colour, with slots on both halves, turned in 3D.
90
+ * @example
91
+ * ```ts
92
+ * import { BALL_PLASTIC_BASEBALL_PRACTICE_WHITE } from "@johnmorrisdotca/dougu-sports";
93
+ * console.log(BALL_PLASTIC_BASEBALL_PRACTICE_WHITE.id, BALL_PLASTIC_BASEBALL_PRACTICE_WHITE.svg({ size: 48 }).includes("<mask"));
94
+ * ```
95
+ */
96
+ export const BALL_PLASTIC_BASEBALL_PRACTICE_WHITE = /* @__PURE__ */ practice("ball:plastic-baseball-practice-white", "Practice ball, white", "穴あき練習球(白)", { first: "#f4f4f0" });
97
+ /**
98
+ * The Practice ball, orange emblem (穴あき練習球(橙)): id `ball:plastic-baseball-practice-orange`, one colour, with slots on both halves, turned in 3D.
99
+ * @example
100
+ * ```ts
101
+ * import { BALL_PLASTIC_BASEBALL_PRACTICE_ORANGE } from "@johnmorrisdotca/dougu-sports";
102
+ * console.log(BALL_PLASTIC_BASEBALL_PRACTICE_ORANGE.id, BALL_PLASTIC_BASEBALL_PRACTICE_ORANGE.svg({ size: 48 }).includes("<mask"));
103
+ * ```
104
+ */
105
+ export const BALL_PLASTIC_BASEBALL_PRACTICE_ORANGE = /* @__PURE__ */ practice("ball:plastic-baseball-practice-orange", "Practice ball, orange", "穴あき練習球(橙)", { first: "#f07a1c" });
@@ -1,7 +1,15 @@
1
1
  import { type Piece } from "./ball.core.ts";
2
2
  import { type PrintOptions } from "./ball.core.ts";
3
3
  import type { BallSpec, Surface } from "./ball.engine.ts";
4
- /** The colours of a painted ball: `body` is the ball (or a soccer ball's hexagons), `second` the other half of a two-tone ball (or a soccer ball's pentagons). */
4
+ /**
5
+ * The colours of a painted ball: `body` is the ball (or a soccer ball's hexagons), `second` the other half of a two-tone ball (or a soccer ball's pentagons).
6
+ * @example
7
+ * ```ts
8
+ * import type { BallPaint } from "@johnmorrisdotca/dougu-sports/emblems";
9
+ * const paint: BallPaint = { body: "#f2c230", second: "#1f2228", split: "half", angle: 20 };
10
+ * console.log(paint.split);
11
+ * ```
12
+ */
5
13
  export interface BallPaint {
6
14
  /** The ball's colour: `#rgb`, `#rrggbb` or `rgb()`; anything else is ignored. */
7
15
  body?: string;
@@ -14,17 +22,41 @@ export interface BallPaint {
14
22
  /** The colour of the stitches. By default one that shows against the ball (red, cream or navy; on a two-tone ball each stitch's legs are the colour that shows on their own side). */
15
23
  stitch?: string;
16
24
  }
17
- /** A place on the ball in degrees from the middle of its default view: `lon` toward the right, `lat` toward the top, in the ball's own frame (it turns with the ball). */
25
+ /**
26
+ * A place on the ball in degrees from the middle of its default view: `lon` toward the right, `lat` toward the top, in the ball's own frame (it turns with the ball).
27
+ * @example
28
+ * ```ts
29
+ * import type { Spot } from "@johnmorrisdotca/dougu-sports/emblems";
30
+ * const spot: Spot = { lon: 20, lat: -10 };
31
+ * console.log(spot.lon);
32
+ * ```
33
+ */
18
34
  export interface Spot {
19
35
  lon?: number;
20
36
  lat?: number;
21
37
  }
22
- /** Where the logo and the lettering go, as a place on the ball in degrees from the middle of its default view. By default the logo is there and so is the lettering, or the lettering is on the far side of the ball (`lon: 180`) when there is a logo. */
38
+ /**
39
+ * Where the logo and the lettering go, as a place on the ball in degrees from the middle of its default view. By default the logo is there and so is the lettering, or the lettering is on the far side of the ball (`lon: 180`) when there is a logo.
40
+ * @example
41
+ * ```ts
42
+ * import type { BallSpots } from "@johnmorrisdotca/dougu-sports/emblems";
43
+ * const spots: BallSpots = { decal: { lon: -20, lat: 10 }, label: { lon: 25 } };
44
+ * console.log(spots.decal?.lon);
45
+ * ```
46
+ */
23
47
  export interface BallSpots {
24
48
  decal?: Spot;
25
49
  label?: Spot;
26
50
  }
27
- /** A logo printed on the ball. */
51
+ /**
52
+ * A logo printed on the ball.
53
+ * @example
54
+ * ```ts
55
+ * import type { BallDecal } from "@johnmorrisdotca/dougu-sports/emblems";
56
+ * const decal: BallDecal = { svg: '<svg viewBox="0 0 10 10"><circle cx="5" cy="5" r="4"/></svg>', size: 40, turn: 15 };
57
+ * console.log(decal.size);
58
+ * ```
59
+ */
28
60
  export interface BallDecal {
29
61
  /** An SVG string. It is made safe first (only shapes, gradients and groups survive; no script, text, image, style or address), a gradient is its mean colour, and it is wrapped exactly onto the sphere. */
30
62
  svg?: string;
@@ -35,7 +67,15 @@ export interface BallDecal {
35
67
  /** A turn of the logo on the ball, in degrees. */
36
68
  turn?: number;
37
69
  }
38
- /** The stamp: lines of bold block lettering, the first with a small star on each side, and an optional signature-style line under them. */
70
+ /**
71
+ * The stamp: lines of bold block lettering, the first with a small star on each side, and an optional signature-style line under them.
72
+ * @example
73
+ * ```ts
74
+ * import type { BallStamp } from "@johnmorrisdotca/dougu-sports/emblems";
75
+ * const stamp: BallStamp = { lines: ["PRACTICE", "BASEBALL"], stars: true, sign: 7 };
76
+ * console.log(stamp.lines?.length);
77
+ * ```
78
+ */
39
79
  export interface BallStamp {
40
80
  /** The lines (up to three, 24 letters each, any letter, digit or `- . , ' / : &`; the ball's own default is `UNOFFICIAL` and `DIGITAL BASEBALL`). */
41
81
  lines?: readonly string[];
@@ -49,13 +89,29 @@ export interface BallStamp {
49
89
  /** The ink, `#rgb`, `#rrggbb` or `rgb()`. Navy by default, or white or black where navy would not show on the ball. */
50
90
  colour?: string;
51
91
  }
52
- /** The cursive word where a maker's mark would sit. */
92
+ /**
93
+ * The cursive word where a maker's mark would sit.
94
+ * @example
95
+ * ```ts
96
+ * import type { BallScript } from "@johnmorrisdotca/dougu-sports/emblems";
97
+ * const script: BallScript = { text: "Practice", colour: "#1f4e8c" };
98
+ * console.log(script.text);
99
+ * ```
100
+ */
53
101
  export interface BallScript {
54
102
  /** The word (up to 16 letters; a-z and a space; a capital without a drawing of its own is a tall small letter). By default the ball's own: `Baseball`, `Softball` or `Soccer`. */
55
103
  text?: string;
56
104
  colour?: string;
57
105
  }
58
- /** The small mark under the script: a letter in a circle, or a mark of your own. */
106
+ /**
107
+ * The small mark under the script: a letter in a circle, or a mark of your own.
108
+ * @example
109
+ * ```ts
110
+ * import type { BallMark } from "@johnmorrisdotca/dougu-sports/emblems";
111
+ * const mark: BallMark = { letter: "D", colour: "#c4202e" };
112
+ * console.log(mark.letter);
113
+ * ```
114
+ */
59
115
  export interface BallMark {
60
116
  /** The letter in the circle (one letter or digit). By default the first letter of the script. */
61
117
  letter?: string;
@@ -77,5 +133,13 @@ export declare const printKey: (p: PrintOptions | undefined) => string;
77
133
  /**
78
134
  * A ball that can be printed. The balls themselves carry no printing code (a ball bundled alone stays small): `renderEmblem` and the registry use this, and so can you for one ball taken from its own module:
79
135
  * `const ball = printed(BALL_BASEBALL); ball.svg({ stamp: true })`. The same ball with the printer in its options; options that ask for no print draw exactly what the plain ball draws.
136
+ * @param piece - A ball taken from its own module.
137
+ * @returns The same ball with the printer in its options.
138
+ * @example
139
+ * ```ts
140
+ * import { BALL_BASEBALL, printed } from "@johnmorrisdotca/dougu-sports";
141
+ * const ball = printed(BALL_BASEBALL);
142
+ * console.log(ball.svg({ stamp: true }).startsWith("<svg"));
143
+ * ```
80
144
  */
81
145
  export declare const printed: <P extends Piece<BallSpec>>(piece: P) => P;
@@ -260,6 +260,14 @@ export const printKey = (p) => (p === undefined ? "" : escape(hashOf(JSON.string
260
260
  /**
261
261
  * A ball that can be printed. The balls themselves carry no printing code (a ball bundled alone stays small): `renderEmblem` and the registry use this, and so can you for one ball taken from its own module:
262
262
  * `const ball = printed(BALL_BASEBALL); ball.svg({ stamp: true })`. The same ball with the printer in its options; options that ask for no print draw exactly what the plain ball draws.
263
+ * @param piece - A ball taken from its own module.
264
+ * @returns The same ball with the printer in its options.
265
+ * @example
266
+ * ```ts
267
+ * import { BALL_BASEBALL, printed } from "@johnmorrisdotca/dougu-sports";
268
+ * const ball = printed(BALL_BASEBALL);
269
+ * console.log(ball.svg({ stamp: true }).startsWith("<svg"));
270
+ * ```
263
271
  */
264
272
  export const printed = (piece) => ({
265
273
  ...piece,
@@ -1,6 +1,54 @@
1
+ /**
2
+ * The Baseball emblem (野球のボール in Japanese): id `ball:baseball`, a ball turned in 3D.
3
+ * @example
4
+ * ```ts
5
+ * import { BALL_BASEBALL } from "@johnmorrisdotca/dougu-sports";
6
+ * console.log(BALL_BASEBALL.id, BALL_BASEBALL.svg({ size: 48 }).startsWith("<svg"));
7
+ * ```
8
+ */
1
9
  export declare const BALL_BASEBALL: import("./ball.core.ts").Piece<import("./ball.engine.ts").BallSpec>;
10
+ /**
11
+ * The Softball emblem (ソフトボール in Japanese): id `ball:softball`, a ball turned in 3D.
12
+ * @example
13
+ * ```ts
14
+ * import { BALL_SOFTBALL } from "@johnmorrisdotca/dougu-sports";
15
+ * console.log(BALL_SOFTBALL.id, BALL_SOFTBALL.svg({ size: 48 }).startsWith("<svg"));
16
+ * ```
17
+ */
2
18
  export declare const BALL_SOFTBALL: import("./ball.core.ts").Piece<import("./ball.engine.ts").BallSpec>;
19
+ /**
20
+ * The Soccer ball emblem (サッカーボール in Japanese): id `ball:soccer`, a ball turned in 3D.
21
+ * @example
22
+ * ```ts
23
+ * import { BALL_SOCCER } from "@johnmorrisdotca/dougu-sports";
24
+ * console.log(BALL_SOCCER.id, BALL_SOCCER.svg({ size: 48 }).startsWith("<svg"));
25
+ * ```
26
+ */
3
27
  export declare const BALL_SOCCER: import("./ball.core.ts").Piece<import("./ball.engine.ts").BallSpec>;
28
+ /**
29
+ * The Soccer ball, coloured emblem (サッカーボール(カラー) in Japanese): id `ball:soccer-colour`, a ball turned in 3D.
30
+ * @example
31
+ * ```ts
32
+ * import { BALL_SOCCER_COLOUR } from "@johnmorrisdotca/dougu-sports";
33
+ * console.log(BALL_SOCCER_COLOUR.id, BALL_SOCCER_COLOUR.svg({ size: 48 }).startsWith("<svg"));
34
+ * ```
35
+ */
4
36
  export declare const BALL_SOCCER_COLOUR: import("./ball.core.ts").Piece<import("./ball.engine.ts").BallSpec>;
37
+ /**
38
+ * The Soccer ball, orange emblem (32枚貼り・オレンジ in Japanese): id `ball:soccer-orange`, a ball turned in 3D.
39
+ * @example
40
+ * ```ts
41
+ * import { BALL_SOCCER_ORANGE } from "@johnmorrisdotca/dougu-sports";
42
+ * console.log(BALL_SOCCER_ORANGE.id, BALL_SOCCER_ORANGE.svg({ size: 48 }).startsWith("<svg"));
43
+ * ```
44
+ */
5
45
  export declare const BALL_SOCCER_ORANGE: import("./ball.core.ts").Piece<import("./ball.engine.ts").BallSpec>;
46
+ /**
47
+ * The Soccer ball, yellow emblem (32枚貼り・蛍光イエロー in Japanese): id `ball:soccer-yellow`, a ball turned in 3D.
48
+ * @example
49
+ * ```ts
50
+ * import { BALL_SOCCER_YELLOW } from "@johnmorrisdotca/dougu-sports";
51
+ * console.log(BALL_SOCCER_YELLOW.id, BALL_SOCCER_YELLOW.svg({ size: 48 }).startsWith("<svg"));
52
+ * ```
53
+ */
6
54
  export declare const BALL_SOCCER_YELLOW: import("./ball.core.ts").Piece<import("./ball.engine.ts").BallSpec>;
@@ -5,9 +5,57 @@ import { printed } from "./ball.print.js";
5
5
  import { BALL_SOCCER_ORANGE as PLAIN_SOCCER_ORANGE, BALL_SOCCER_YELLOW as PLAIN_SOCCER_YELLOW } from "./ball.soccer.panels.js";
6
6
  import { BALL_SOCCER as PLAIN_SOCCER, BALL_SOCCER_COLOUR as PLAIN_SOCCER_COLOUR } from "./ball.soccer.js";
7
7
  import { BALL_SOFTBALL as PLAIN_SOFTBALL } from "./ball.softball.js";
8
+ /**
9
+ * The Baseball emblem (野球のボール in Japanese): id `ball:baseball`, a ball turned in 3D.
10
+ * @example
11
+ * ```ts
12
+ * import { BALL_BASEBALL } from "@johnmorrisdotca/dougu-sports";
13
+ * console.log(BALL_BASEBALL.id, BALL_BASEBALL.svg({ size: 48 }).startsWith("<svg"));
14
+ * ```
15
+ */
8
16
  export const BALL_BASEBALL = /* @__PURE__ */ printed(PLAIN_BASEBALL);
17
+ /**
18
+ * The Softball emblem (ソフトボール in Japanese): id `ball:softball`, a ball turned in 3D.
19
+ * @example
20
+ * ```ts
21
+ * import { BALL_SOFTBALL } from "@johnmorrisdotca/dougu-sports";
22
+ * console.log(BALL_SOFTBALL.id, BALL_SOFTBALL.svg({ size: 48 }).startsWith("<svg"));
23
+ * ```
24
+ */
9
25
  export const BALL_SOFTBALL = /* @__PURE__ */ printed(PLAIN_SOFTBALL);
26
+ /**
27
+ * The Soccer ball emblem (サッカーボール in Japanese): id `ball:soccer`, a ball turned in 3D.
28
+ * @example
29
+ * ```ts
30
+ * import { BALL_SOCCER } from "@johnmorrisdotca/dougu-sports";
31
+ * console.log(BALL_SOCCER.id, BALL_SOCCER.svg({ size: 48 }).startsWith("<svg"));
32
+ * ```
33
+ */
10
34
  export const BALL_SOCCER = /* @__PURE__ */ printed(PLAIN_SOCCER);
35
+ /**
36
+ * The Soccer ball, coloured emblem (サッカーボール(カラー) in Japanese): id `ball:soccer-colour`, a ball turned in 3D.
37
+ * @example
38
+ * ```ts
39
+ * import { BALL_SOCCER_COLOUR } from "@johnmorrisdotca/dougu-sports";
40
+ * console.log(BALL_SOCCER_COLOUR.id, BALL_SOCCER_COLOUR.svg({ size: 48 }).startsWith("<svg"));
41
+ * ```
42
+ */
11
43
  export const BALL_SOCCER_COLOUR = /* @__PURE__ */ printed(PLAIN_SOCCER_COLOUR);
44
+ /**
45
+ * The Soccer ball, orange emblem (32枚貼り・オレンジ in Japanese): id `ball:soccer-orange`, a ball turned in 3D.
46
+ * @example
47
+ * ```ts
48
+ * import { BALL_SOCCER_ORANGE } from "@johnmorrisdotca/dougu-sports";
49
+ * console.log(BALL_SOCCER_ORANGE.id, BALL_SOCCER_ORANGE.svg({ size: 48 }).startsWith("<svg"));
50
+ * ```
51
+ */
12
52
  export const BALL_SOCCER_ORANGE = /* @__PURE__ */ printed(PLAIN_SOCCER_ORANGE);
53
+ /**
54
+ * The Soccer ball, yellow emblem (32枚貼り・蛍光イエロー in Japanese): id `ball:soccer-yellow`, a ball turned in 3D.
55
+ * @example
56
+ * ```ts
57
+ * import { BALL_SOCCER_YELLOW } from "@johnmorrisdotca/dougu-sports";
58
+ * console.log(BALL_SOCCER_YELLOW.id, BALL_SOCCER_YELLOW.svg({ size: 48 }).startsWith("<svg"));
59
+ * ```
60
+ */
13
61
  export const BALL_SOCCER_YELLOW = /* @__PURE__ */ printed(PLAIN_SOCCER_YELLOW);
@@ -6,6 +6,14 @@ export declare const PUCK_H: number;
6
6
  export declare const PUCK_SIZE: PieceSize;
7
7
  /** The plain puck's drawing: black rubber, a ridged edge, and the ring a moulded top face has. A printed puck is this drawing with its print laid over the ring's place (ball.puck.print.ts). */
8
8
  export declare const puckSpec: (extra?: Partial<StackSpec>) => StackSpec;
9
+ /**
10
+ * The Hockey puck emblem (アイスホッケーのパック in Japanese): id `ball:puck`, a ball turned in 3D.
11
+ * @example
12
+ * ```ts
13
+ * import { BALL_PUCK } from "@johnmorrisdotca/dougu-sports";
14
+ * console.log(BALL_PUCK.id, BALL_PUCK.svg({ size: 48 }).startsWith("<svg"));
15
+ * ```
16
+ */
9
17
  export declare const BALL_PUCK: import("./ball.core.ts").Piece<{
10
18
  slices: number;
11
19
  } & {
@@ -18,6 +18,14 @@ export const puckSpec = (extra) => ({
18
18
  topRing: { r: 0.9, colour: "#4a4d56" },
19
19
  ...extra,
20
20
  });
21
+ /**
22
+ * The Hockey puck emblem (アイスホッケーのパック in Japanese): id `ball:puck`, a ball turned in 3D.
23
+ * @example
24
+ * ```ts
25
+ * import { BALL_PUCK } from "@johnmorrisdotca/dougu-sports";
26
+ * console.log(BALL_PUCK.id, BALL_PUCK.svg({ size: 48 }).startsWith("<svg"));
27
+ * ```
28
+ */
21
29
  export const BALL_PUCK = /* @__PURE__ */ defineObject({
22
30
  id: "ball:puck",
23
31
  en: "Hockey puck",
@@ -1,5 +1,13 @@
1
1
  import { type Piece } from "./ball.core.ts";
2
2
  import { type PuckDesign } from "./ball.face.ts";
3
+ /**
4
+ * The Canada flag puck emblem (カナダ国旗のパック in Japanese): id `puck:canada`, a ball turned in 3D.
5
+ * @example
6
+ * ```ts
7
+ * import { PUCK_CANADA } from "@johnmorrisdotca/dougu-sports";
8
+ * console.log(PUCK_CANADA.id, PUCK_CANADA.svg({ size: 48 }).startsWith("<svg"));
9
+ * ```
10
+ */
3
11
  export declare const PUCK_CANADA: Piece<{
4
12
  slices: number;
5
13
  design: PuckDesign;
@@ -9,6 +17,14 @@ export declare const PUCK_CANADA: Piece<{
9
17
  roll: number;
10
18
  };
11
19
  }>;
20
+ /**
21
+ * The Canada red puck emblem (カナダ赤地のパック in Japanese): id `puck:canada-red`, a ball turned in 3D.
22
+ * @example
23
+ * ```ts
24
+ * import { PUCK_CANADA_RED } from "@johnmorrisdotca/dougu-sports";
25
+ * console.log(PUCK_CANADA_RED.id, PUCK_CANADA_RED.svg({ size: 48 }).startsWith("<svg"));
26
+ * ```
27
+ */
12
28
  export declare const PUCK_CANADA_RED: Piece<{
13
29
  slices: number;
14
30
  design: PuckDesign;
@@ -18,6 +34,14 @@ export declare const PUCK_CANADA_RED: Piece<{
18
34
  roll: number;
19
35
  };
20
36
  }>;
37
+ /**
38
+ * The Canada white puck emblem (カナダ白地のパック in Japanese): id `puck:canada-white`, a ball turned in 3D.
39
+ * @example
40
+ * ```ts
41
+ * import { PUCK_CANADA_WHITE } from "@johnmorrisdotca/dougu-sports";
42
+ * console.log(PUCK_CANADA_WHITE.id, PUCK_CANADA_WHITE.svg({ size: 48 }).startsWith("<svg"));
43
+ * ```
44
+ */
21
45
  export declare const PUCK_CANADA_WHITE: Piece<{
22
46
  slices: number;
23
47
  design: PuckDesign;
@@ -27,6 +51,14 @@ export declare const PUCK_CANADA_WHITE: Piece<{
27
51
  roll: number;
28
52
  };
29
53
  }>;
54
+ /**
55
+ * The USA stripes puck emblem (アメリカ星条旗のパック in Japanese): id `puck:usa`, a ball turned in 3D.
56
+ * @example
57
+ * ```ts
58
+ * import { PUCK_USA } from "@johnmorrisdotca/dougu-sports";
59
+ * console.log(PUCK_USA.id, PUCK_USA.svg({ size: 48 }).startsWith("<svg"));
60
+ * ```
61
+ */
30
62
  export declare const PUCK_USA: Piece<{
31
63
  slices: number;
32
64
  design: PuckDesign;
@@ -36,6 +68,14 @@ export declare const PUCK_USA: Piece<{
36
68
  roll: number;
37
69
  };
38
70
  }>;
71
+ /**
72
+ * The USA navy puck emblem (アメリカ紺地のパック in Japanese): id `puck:usa-navy`, a ball turned in 3D.
73
+ * @example
74
+ * ```ts
75
+ * import { PUCK_USA_NAVY } from "@johnmorrisdotca/dougu-sports";
76
+ * console.log(PUCK_USA_NAVY.id, PUCK_USA_NAVY.svg({ size: 48 }).startsWith("<svg"));
77
+ * ```
78
+ */
39
79
  export declare const PUCK_USA_NAVY: Piece<{
40
80
  slices: number;
41
81
  design: PuckDesign;
@@ -45,6 +85,14 @@ export declare const PUCK_USA_NAVY: Piece<{
45
85
  roll: number;
46
86
  };
47
87
  }>;
88
+ /**
89
+ * The Player number puck emblem (選手名と背番号のパック in Japanese): id `puck:player`, a ball turned in 3D.
90
+ * @example
91
+ * ```ts
92
+ * import { PUCK_PLAYER } from "@johnmorrisdotca/dougu-sports";
93
+ * console.log(PUCK_PLAYER.id, PUCK_PLAYER.svg({ size: 48 }).startsWith("<svg"));
94
+ * ```
95
+ */
48
96
  export declare const PUCK_PLAYER: Piece<{
49
97
  slices: number;
50
98
  design: PuckDesign;
@@ -54,6 +102,14 @@ export declare const PUCK_PLAYER: Piece<{
54
102
  roll: number;
55
103
  };
56
104
  }>;
105
+ /**
106
+ * The Signed puck emblem (サイン入りパック in Japanese): id `puck:signed`, a ball turned in 3D.
107
+ * @example
108
+ * ```ts
109
+ * import { PUCK_SIGNED } from "@johnmorrisdotca/dougu-sports";
110
+ * console.log(PUCK_SIGNED.id, PUCK_SIGNED.svg({ size: 48 }).startsWith("<svg"));
111
+ * ```
112
+ */
57
113
  export declare const PUCK_SIGNED: Piece<{
58
114
  slices: number;
59
115
  design: PuckDesign;
@@ -63,6 +119,14 @@ export declare const PUCK_SIGNED: Piece<{
63
119
  roll: number;
64
120
  };
65
121
  }>;
122
+ /**
123
+ * The Souvenir puck emblem (記念パック in Japanese): id `puck:souvenir`, a ball turned in 3D.
124
+ * @example
125
+ * ```ts
126
+ * import { PUCK_SOUVENIR } from "@johnmorrisdotca/dougu-sports";
127
+ * console.log(PUCK_SOUVENIR.id, PUCK_SOUVENIR.svg({ size: 48 }).startsWith("<svg"));
128
+ * ```
129
+ */
66
130
  export declare const PUCK_SOUVENIR: Piece<{
67
131
  slices: number;
68
132
  design: PuckDesign;