@rickosborne/hexgrid 2025.5.31

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 (344) hide show
  1. package/README.md +2141 -0
  2. package/axial-add.cjs +30 -0
  3. package/axial-add.cjs.map +6 -0
  4. package/axial-add.d.ts +6 -0
  5. package/axial-add.d.ts.map +1 -0
  6. package/axial-add.mjs +11 -0
  7. package/axial-add.mjs.map +6 -0
  8. package/axial-from-cube.cjs +33 -0
  9. package/axial-from-cube.cjs.map +6 -0
  10. package/axial-from-cube.d.ts +7 -0
  11. package/axial-from-cube.d.ts.map +1 -0
  12. package/axial-from-cube.mjs +14 -0
  13. package/axial-from-cube.mjs.map +6 -0
  14. package/axial-from-double.cjs +30 -0
  15. package/axial-from-double.cjs.map +6 -0
  16. package/axial-from-double.d.ts +5 -0
  17. package/axial-from-double.d.ts.map +1 -0
  18. package/axial-from-double.mjs +11 -0
  19. package/axial-from-double.mjs.map +6 -0
  20. package/axial-from-offset.cjs +64 -0
  21. package/axial-from-offset.cjs.map +6 -0
  22. package/axial-from-offset.d.ts +4 -0
  23. package/axial-from-offset.d.ts.map +1 -0
  24. package/axial-from-offset.mjs +45 -0
  25. package/axial-from-offset.mjs.map +6 -0
  26. package/axial-intersection.cjs +28 -0
  27. package/axial-intersection.cjs.map +6 -0
  28. package/axial-intersection.d.ts +3 -0
  29. package/axial-intersection.d.ts.map +1 -0
  30. package/axial-intersection.mjs +9 -0
  31. package/axial-intersection.mjs.map +6 -0
  32. package/axial-lerp.cjs +32 -0
  33. package/axial-lerp.cjs.map +6 -0
  34. package/axial-lerp.d.ts +3 -0
  35. package/axial-lerp.d.ts.map +1 -0
  36. package/axial-lerp.mjs +13 -0
  37. package/axial-lerp.mjs.map +6 -0
  38. package/axial-line-draw.cjs +39 -0
  39. package/axial-line-draw.cjs.map +6 -0
  40. package/axial-line-draw.d.ts +3 -0
  41. package/axial-line-draw.d.ts.map +1 -0
  42. package/axial-line-draw.mjs +20 -0
  43. package/axial-line-draw.mjs.map +6 -0
  44. package/axial-neighbor.cjs +27 -0
  45. package/axial-neighbor.cjs.map +6 -0
  46. package/axial-neighbor.d.ts +3 -0
  47. package/axial-neighbor.d.ts.map +1 -0
  48. package/axial-neighbor.mjs +8 -0
  49. package/axial-neighbor.mjs.map +6 -0
  50. package/axial-range.cjs +29 -0
  51. package/axial-range.cjs.map +6 -0
  52. package/axial-range.d.ts +3 -0
  53. package/axial-range.d.ts.map +1 -0
  54. package/axial-range.mjs +10 -0
  55. package/axial-range.mjs.map +6 -0
  56. package/axial-round.cjs +31 -0
  57. package/axial-round.cjs.map +6 -0
  58. package/axial-round.d.ts +3 -0
  59. package/axial-round.d.ts.map +1 -0
  60. package/axial-round.mjs +12 -0
  61. package/axial-round.mjs.map +6 -0
  62. package/axial-subtract.cjs +28 -0
  63. package/axial-subtract.cjs.map +6 -0
  64. package/axial-subtract.d.ts +6 -0
  65. package/axial-subtract.d.ts.map +1 -0
  66. package/axial-subtract.mjs +9 -0
  67. package/axial-subtract.mjs.map +6 -0
  68. package/axial.cjs +66 -0
  69. package/axial.cjs.map +6 -0
  70. package/axial.d.ts +83 -0
  71. package/axial.d.ts.map +1 -0
  72. package/axial.mjs +47 -0
  73. package/axial.mjs.map +6 -0
  74. package/covering-grid.cjs +78 -0
  75. package/covering-grid.cjs.map +6 -0
  76. package/covering-grid.d.ts +20 -0
  77. package/covering-grid.d.ts.map +1 -0
  78. package/covering-grid.mjs +59 -0
  79. package/covering-grid.mjs.map +6 -0
  80. package/cube-add.cjs +32 -0
  81. package/cube-add.cjs.map +6 -0
  82. package/cube-add.d.ts +6 -0
  83. package/cube-add.d.ts.map +1 -0
  84. package/cube-add.mjs +13 -0
  85. package/cube-add.mjs.map +6 -0
  86. package/cube-distance.cjs +30 -0
  87. package/cube-distance.cjs.map +6 -0
  88. package/cube-distance.d.ts +6 -0
  89. package/cube-distance.d.ts.map +1 -0
  90. package/cube-distance.mjs +11 -0
  91. package/cube-distance.mjs.map +6 -0
  92. package/cube-from-axial.cjs +34 -0
  93. package/cube-from-axial.cjs.map +6 -0
  94. package/cube-from-axial.d.ts +7 -0
  95. package/cube-from-axial.d.ts.map +1 -0
  96. package/cube-from-axial.mjs +15 -0
  97. package/cube-from-axial.mjs.map +6 -0
  98. package/cube-from-double.cjs +30 -0
  99. package/cube-from-double.cjs.map +6 -0
  100. package/cube-from-double.d.ts +5 -0
  101. package/cube-from-double.d.ts.map +1 -0
  102. package/cube-from-double.mjs +11 -0
  103. package/cube-from-double.mjs.map +6 -0
  104. package/cube-heading.cjs +54 -0
  105. package/cube-heading.cjs.map +6 -0
  106. package/cube-heading.d.ts +3 -0
  107. package/cube-heading.d.ts.map +1 -0
  108. package/cube-heading.mjs +35 -0
  109. package/cube-heading.mjs.map +6 -0
  110. package/cube-intersection.cjs +28 -0
  111. package/cube-intersection.cjs.map +6 -0
  112. package/cube-intersection.d.ts +3 -0
  113. package/cube-intersection.d.ts.map +1 -0
  114. package/cube-intersection.mjs +9 -0
  115. package/cube-intersection.mjs.map +6 -0
  116. package/cube-lerp.cjs +34 -0
  117. package/cube-lerp.cjs.map +6 -0
  118. package/cube-lerp.d.ts +3 -0
  119. package/cube-lerp.d.ts.map +1 -0
  120. package/cube-lerp.mjs +15 -0
  121. package/cube-lerp.mjs.map +6 -0
  122. package/cube-line-draw.cjs +41 -0
  123. package/cube-line-draw.cjs.map +6 -0
  124. package/cube-line-draw.d.ts +3 -0
  125. package/cube-line-draw.d.ts.map +1 -0
  126. package/cube-line-draw.mjs +22 -0
  127. package/cube-line-draw.mjs.map +6 -0
  128. package/cube-neighbor.cjs +27 -0
  129. package/cube-neighbor.cjs.map +6 -0
  130. package/cube-neighbor.d.ts +6 -0
  131. package/cube-neighbor.d.ts.map +1 -0
  132. package/cube-neighbor.mjs +8 -0
  133. package/cube-neighbor.mjs.map +6 -0
  134. package/cube-range.cjs +29 -0
  135. package/cube-range.cjs.map +6 -0
  136. package/cube-range.d.ts +3 -0
  137. package/cube-range.d.ts.map +1 -0
  138. package/cube-range.mjs +10 -0
  139. package/cube-range.mjs.map +6 -0
  140. package/cube-rotate.cjs +40 -0
  141. package/cube-rotate.cjs.map +6 -0
  142. package/cube-rotate.d.ts +4 -0
  143. package/cube-rotate.d.ts.map +1 -0
  144. package/cube-rotate.mjs +21 -0
  145. package/cube-rotate.mjs.map +6 -0
  146. package/cube-round.cjs +46 -0
  147. package/cube-round.cjs.map +6 -0
  148. package/cube-round.d.ts +3 -0
  149. package/cube-round.d.ts.map +1 -0
  150. package/cube-round.mjs +27 -0
  151. package/cube-round.mjs.map +6 -0
  152. package/cube-subtract.cjs +33 -0
  153. package/cube-subtract.cjs.map +6 -0
  154. package/cube-subtract.d.ts +3 -0
  155. package/cube-subtract.d.ts.map +1 -0
  156. package/cube-subtract.mjs +14 -0
  157. package/cube-subtract.mjs.map +6 -0
  158. package/cube.cjs +82 -0
  159. package/cube.cjs.map +6 -0
  160. package/cube.d.ts +155 -0
  161. package/cube.d.ts.map +1 -0
  162. package/cube.mjs +63 -0
  163. package/cube.mjs.map +6 -0
  164. package/double-add.cjs +37 -0
  165. package/double-add.cjs.map +6 -0
  166. package/double-add.d.ts +4 -0
  167. package/double-add.d.ts.map +1 -0
  168. package/double-add.mjs +18 -0
  169. package/double-add.mjs.map +6 -0
  170. package/double-distance.cjs +36 -0
  171. package/double-distance.cjs.map +6 -0
  172. package/double-distance.d.ts +4 -0
  173. package/double-distance.d.ts.map +1 -0
  174. package/double-distance.mjs +17 -0
  175. package/double-distance.mjs.map +6 -0
  176. package/double-from-qrs.cjs +37 -0
  177. package/double-from-qrs.cjs.map +6 -0
  178. package/double-from-qrs.d.ts +5 -0
  179. package/double-from-qrs.d.ts.map +1 -0
  180. package/double-from-qrs.mjs +18 -0
  181. package/double-from-qrs.mjs.map +6 -0
  182. package/double-neighbor.cjs +29 -0
  183. package/double-neighbor.cjs.map +6 -0
  184. package/double-neighbor.d.ts +4 -0
  185. package/double-neighbor.d.ts.map +1 -0
  186. package/double-neighbor.mjs +10 -0
  187. package/double-neighbor.mjs.map +6 -0
  188. package/double.cjs +48 -0
  189. package/double.cjs.map +6 -0
  190. package/double.d.ts +77 -0
  191. package/double.d.ts.map +1 -0
  192. package/double.mjs +28 -0
  193. package/double.mjs.map +6 -0
  194. package/hex-contains-point.cjs +99 -0
  195. package/hex-contains-point.cjs.map +6 -0
  196. package/hex-contains-point.d.ts +16 -0
  197. package/hex-contains-point.d.ts.map +1 -0
  198. package/hex-contains-point.mjs +80 -0
  199. package/hex-contains-point.mjs.map +6 -0
  200. package/hex-distance.cjs +36 -0
  201. package/hex-distance.cjs.map +6 -0
  202. package/hex-distance.d.ts +11 -0
  203. package/hex-distance.d.ts.map +1 -0
  204. package/hex-distance.mjs +17 -0
  205. package/hex-distance.mjs.map +6 -0
  206. package/hex-reachable.cjs +55 -0
  207. package/hex-reachable.cjs.map +6 -0
  208. package/hex-reachable.d.ts +14 -0
  209. package/hex-reachable.d.ts.map +1 -0
  210. package/hex-reachable.mjs +36 -0
  211. package/hex-reachable.mjs.map +6 -0
  212. package/hex-system.cjs +78 -0
  213. package/hex-system.cjs.map +6 -0
  214. package/hex-system.d.ts +44 -0
  215. package/hex-system.d.ts.map +1 -0
  216. package/hex-system.mjs +58 -0
  217. package/hex-system.mjs.map +6 -0
  218. package/hexes-within.cjs +31 -0
  219. package/hexes-within.cjs.map +6 -0
  220. package/hexes-within.d.ts +6 -0
  221. package/hexes-within.d.ts.map +1 -0
  222. package/hexes-within.mjs +12 -0
  223. package/hexes-within.mjs.map +6 -0
  224. package/index.cjs +74 -0
  225. package/index.cjs.map +6 -0
  226. package/index.d.ts +57 -0
  227. package/index.d.ts.map +1 -0
  228. package/index.mjs +57 -0
  229. package/index.mjs.map +6 -0
  230. package/lerp.cjs +28 -0
  231. package/lerp.cjs.map +6 -0
  232. package/lerp.d.ts +5 -0
  233. package/lerp.d.ts.map +1 -0
  234. package/lerp.mjs +9 -0
  235. package/lerp.mjs.map +6 -0
  236. package/offset-distance.cjs +33 -0
  237. package/offset-distance.cjs.map +6 -0
  238. package/offset-distance.d.ts +3 -0
  239. package/offset-distance.d.ts.map +1 -0
  240. package/offset-distance.mjs +14 -0
  241. package/offset-distance.mjs.map +6 -0
  242. package/offset-from-qrs.cjs +70 -0
  243. package/offset-from-qrs.cjs.map +6 -0
  244. package/offset-from-qrs.d.ts +7 -0
  245. package/offset-from-qrs.d.ts.map +1 -0
  246. package/offset-from-qrs.mjs +51 -0
  247. package/offset-from-qrs.mjs.map +6 -0
  248. package/offset-neighbor.cjs +54 -0
  249. package/offset-neighbor.cjs.map +6 -0
  250. package/offset-neighbor.d.ts +3 -0
  251. package/offset-neighbor.d.ts.map +1 -0
  252. package/offset-neighbor.mjs +35 -0
  253. package/offset-neighbor.mjs.map +6 -0
  254. package/offset.cjs +61 -0
  255. package/offset.cjs.map +6 -0
  256. package/offset.d.ts +34 -0
  257. package/offset.d.ts.map +1 -0
  258. package/offset.mjs +42 -0
  259. package/offset.mjs.map +6 -0
  260. package/orientation.cjs +54 -0
  261. package/orientation.cjs.map +6 -0
  262. package/orientation.d.ts +36 -0
  263. package/orientation.d.ts.map +1 -0
  264. package/orientation.mjs +34 -0
  265. package/orientation.mjs.map +6 -0
  266. package/package.json +398 -0
  267. package/pixel-from-qrs.cjs +66 -0
  268. package/pixel-from-qrs.cjs.map +6 -0
  269. package/pixel-from-qrs.d.ts +10 -0
  270. package/pixel-from-qrs.d.ts.map +1 -0
  271. package/pixel-from-qrs.mjs +47 -0
  272. package/pixel-from-qrs.mjs.map +6 -0
  273. package/point.cjs +17 -0
  274. package/point.cjs.map +6 -0
  275. package/point.d.ts +5 -0
  276. package/point.d.ts.map +1 -0
  277. package/point.mjs +1 -0
  278. package/point.mjs.map +6 -0
  279. package/qrs-eq.cjs +26 -0
  280. package/qrs-eq.cjs.map +6 -0
  281. package/qrs-eq.d.ts +3 -0
  282. package/qrs-eq.d.ts.map +1 -0
  283. package/qrs-eq.mjs +7 -0
  284. package/qrs-eq.mjs.map +6 -0
  285. package/qrs-from-double.cjs +36 -0
  286. package/qrs-from-double.cjs.map +6 -0
  287. package/qrs-from-double.d.ts +5 -0
  288. package/qrs-from-double.d.ts.map +1 -0
  289. package/qrs-from-double.mjs +17 -0
  290. package/qrs-from-double.mjs.map +6 -0
  291. package/qrs-from-pixel.cjs +50 -0
  292. package/qrs-from-pixel.cjs.map +6 -0
  293. package/qrs-from-pixel.d.ts +12 -0
  294. package/qrs-from-pixel.d.ts.map +1 -0
  295. package/qrs-from-pixel.mjs +31 -0
  296. package/qrs-from-pixel.mjs.map +6 -0
  297. package/qrs-hash-code.cjs +41 -0
  298. package/qrs-hash-code.cjs.map +6 -0
  299. package/qrs-hash-code.d.ts +7 -0
  300. package/qrs-hash-code.d.ts.map +1 -0
  301. package/qrs-hash-code.mjs +22 -0
  302. package/qrs-hash-code.mjs.map +6 -0
  303. package/qrs-intersection.cjs +44 -0
  304. package/qrs-intersection.cjs.map +6 -0
  305. package/qrs-intersection.d.ts +3 -0
  306. package/qrs-intersection.d.ts.map +1 -0
  307. package/qrs-intersection.mjs +25 -0
  308. package/qrs-intersection.mjs.map +6 -0
  309. package/qrs-range.cjs +38 -0
  310. package/qrs-range.cjs.map +6 -0
  311. package/qrs-range.d.ts +6 -0
  312. package/qrs-range.d.ts.map +1 -0
  313. package/qrs-range.mjs +19 -0
  314. package/qrs-range.mjs.map +6 -0
  315. package/qrs-ring.cjs +50 -0
  316. package/qrs-ring.cjs.map +6 -0
  317. package/qrs-ring.d.ts +3 -0
  318. package/qrs-ring.d.ts.map +1 -0
  319. package/qrs-ring.mjs +31 -0
  320. package/qrs-ring.mjs.map +6 -0
  321. package/qrs-scale.cjs +30 -0
  322. package/qrs-scale.cjs.map +6 -0
  323. package/qrs-scale.d.ts +4 -0
  324. package/qrs-scale.d.ts.map +1 -0
  325. package/qrs-scale.mjs +11 -0
  326. package/qrs-scale.mjs.map +6 -0
  327. package/qrs-spiral.cjs +36 -0
  328. package/qrs-spiral.cjs.map +6 -0
  329. package/qrs-spiral.d.ts +3 -0
  330. package/qrs-spiral.d.ts.map +1 -0
  331. package/qrs-spiral.mjs +17 -0
  332. package/qrs-spiral.mjs.map +6 -0
  333. package/qrs-subtract.cjs +31 -0
  334. package/qrs-subtract.cjs.map +6 -0
  335. package/qrs-subtract.d.ts +4 -0
  336. package/qrs-subtract.d.ts.map +1 -0
  337. package/qrs-subtract.mjs +12 -0
  338. package/qrs-subtract.mjs.map +6 -0
  339. package/qrs.cjs +28 -0
  340. package/qrs.cjs.map +6 -0
  341. package/qrs.d.ts +36 -0
  342. package/qrs.d.ts.map +1 -0
  343. package/qrs.mjs +9 -0
  344. package/qrs.mjs.map +6 -0
package/package.json ADDED
@@ -0,0 +1,398 @@
1
+ {
2
+ "author": {
3
+ "name": "Rick Osborne",
4
+ "url": "https://rickosborne.org"
5
+ },
6
+ "dependencies": {
7
+ "@rickosborne/foundation": "2025.5.31",
8
+ "@rickosborne/guard": "2025.5.31",
9
+ "@rickosborne/typical": "2025.5.31"
10
+ },
11
+ "description": "Rick Osborne's collection of hexagonal grid-related code.",
12
+ "engines": {
13
+ "node": ">=14"
14
+ },
15
+ "exports": {
16
+ ".": {
17
+ "types": "./index.d.ts",
18
+ "import": "./index.mjs",
19
+ "require": "./index.cjs",
20
+ "default": "./index.mjs"
21
+ },
22
+ "./*.js": {
23
+ "types": "./*.d.ts",
24
+ "import": "./*.mjs",
25
+ "require": "./*.cjs",
26
+ "default": "./*.mjs"
27
+ },
28
+ "./axial": {
29
+ "types": "./axial.d.ts",
30
+ "import": "./axial.mjs",
31
+ "require": "./axial.cjs",
32
+ "default": "./axial.mjs"
33
+ },
34
+ "./axial-add": {
35
+ "types": "./axial-add.d.ts",
36
+ "import": "./axial-add.mjs",
37
+ "require": "./axial-add.cjs",
38
+ "default": "./axial-add.mjs"
39
+ },
40
+ "./axial-from-cube": {
41
+ "types": "./axial-from-cube.d.ts",
42
+ "import": "./axial-from-cube.mjs",
43
+ "require": "./axial-from-cube.cjs",
44
+ "default": "./axial-from-cube.mjs"
45
+ },
46
+ "./axial-from-double": {
47
+ "types": "./axial-from-double.d.ts",
48
+ "import": "./axial-from-double.mjs",
49
+ "require": "./axial-from-double.cjs",
50
+ "default": "./axial-from-double.mjs"
51
+ },
52
+ "./axial-from-offset": {
53
+ "types": "./axial-from-offset.d.ts",
54
+ "import": "./axial-from-offset.mjs",
55
+ "require": "./axial-from-offset.cjs",
56
+ "default": "./axial-from-offset.mjs"
57
+ },
58
+ "./axial-intersection": {
59
+ "types": "./axial-intersection.d.ts",
60
+ "import": "./axial-intersection.mjs",
61
+ "require": "./axial-intersection.cjs",
62
+ "default": "./axial-intersection.mjs"
63
+ },
64
+ "./axial-lerp": {
65
+ "types": "./axial-lerp.d.ts",
66
+ "import": "./axial-lerp.mjs",
67
+ "require": "./axial-lerp.cjs",
68
+ "default": "./axial-lerp.mjs"
69
+ },
70
+ "./axial-line-draw": {
71
+ "types": "./axial-line-draw.d.ts",
72
+ "import": "./axial-line-draw.mjs",
73
+ "require": "./axial-line-draw.cjs",
74
+ "default": "./axial-line-draw.mjs"
75
+ },
76
+ "./axial-neighbor": {
77
+ "types": "./axial-neighbor.d.ts",
78
+ "import": "./axial-neighbor.mjs",
79
+ "require": "./axial-neighbor.cjs",
80
+ "default": "./axial-neighbor.mjs"
81
+ },
82
+ "./axial-range": {
83
+ "types": "./axial-range.d.ts",
84
+ "import": "./axial-range.mjs",
85
+ "require": "./axial-range.cjs",
86
+ "default": "./axial-range.mjs"
87
+ },
88
+ "./axial-round": {
89
+ "types": "./axial-round.d.ts",
90
+ "import": "./axial-round.mjs",
91
+ "require": "./axial-round.cjs",
92
+ "default": "./axial-round.mjs"
93
+ },
94
+ "./axial-subtract": {
95
+ "types": "./axial-subtract.d.ts",
96
+ "import": "./axial-subtract.mjs",
97
+ "require": "./axial-subtract.cjs",
98
+ "default": "./axial-subtract.mjs"
99
+ },
100
+ "./covering-grid": {
101
+ "types": "./covering-grid.d.ts",
102
+ "import": "./covering-grid.mjs",
103
+ "require": "./covering-grid.cjs",
104
+ "default": "./covering-grid.mjs"
105
+ },
106
+ "./cube": {
107
+ "types": "./cube.d.ts",
108
+ "import": "./cube.mjs",
109
+ "require": "./cube.cjs",
110
+ "default": "./cube.mjs"
111
+ },
112
+ "./cube-add": {
113
+ "types": "./cube-add.d.ts",
114
+ "import": "./cube-add.mjs",
115
+ "require": "./cube-add.cjs",
116
+ "default": "./cube-add.mjs"
117
+ },
118
+ "./cube-distance": {
119
+ "types": "./cube-distance.d.ts",
120
+ "import": "./cube-distance.mjs",
121
+ "require": "./cube-distance.cjs",
122
+ "default": "./cube-distance.mjs"
123
+ },
124
+ "./cube-from-axial": {
125
+ "types": "./cube-from-axial.d.ts",
126
+ "import": "./cube-from-axial.mjs",
127
+ "require": "./cube-from-axial.cjs",
128
+ "default": "./cube-from-axial.mjs"
129
+ },
130
+ "./cube-from-double": {
131
+ "types": "./cube-from-double.d.ts",
132
+ "import": "./cube-from-double.mjs",
133
+ "require": "./cube-from-double.cjs",
134
+ "default": "./cube-from-double.mjs"
135
+ },
136
+ "./cube-heading": {
137
+ "types": "./cube-heading.d.ts",
138
+ "import": "./cube-heading.mjs",
139
+ "require": "./cube-heading.cjs",
140
+ "default": "./cube-heading.mjs"
141
+ },
142
+ "./cube-intersection": {
143
+ "types": "./cube-intersection.d.ts",
144
+ "import": "./cube-intersection.mjs",
145
+ "require": "./cube-intersection.cjs",
146
+ "default": "./cube-intersection.mjs"
147
+ },
148
+ "./cube-lerp": {
149
+ "types": "./cube-lerp.d.ts",
150
+ "import": "./cube-lerp.mjs",
151
+ "require": "./cube-lerp.cjs",
152
+ "default": "./cube-lerp.mjs"
153
+ },
154
+ "./cube-line-draw": {
155
+ "types": "./cube-line-draw.d.ts",
156
+ "import": "./cube-line-draw.mjs",
157
+ "require": "./cube-line-draw.cjs",
158
+ "default": "./cube-line-draw.mjs"
159
+ },
160
+ "./cube-neighbor": {
161
+ "types": "./cube-neighbor.d.ts",
162
+ "import": "./cube-neighbor.mjs",
163
+ "require": "./cube-neighbor.cjs",
164
+ "default": "./cube-neighbor.mjs"
165
+ },
166
+ "./cube-range": {
167
+ "types": "./cube-range.d.ts",
168
+ "import": "./cube-range.mjs",
169
+ "require": "./cube-range.cjs",
170
+ "default": "./cube-range.mjs"
171
+ },
172
+ "./cube-rotate": {
173
+ "types": "./cube-rotate.d.ts",
174
+ "import": "./cube-rotate.mjs",
175
+ "require": "./cube-rotate.cjs",
176
+ "default": "./cube-rotate.mjs"
177
+ },
178
+ "./cube-round": {
179
+ "types": "./cube-round.d.ts",
180
+ "import": "./cube-round.mjs",
181
+ "require": "./cube-round.cjs",
182
+ "default": "./cube-round.mjs"
183
+ },
184
+ "./cube-subtract": {
185
+ "types": "./cube-subtract.d.ts",
186
+ "import": "./cube-subtract.mjs",
187
+ "require": "./cube-subtract.cjs",
188
+ "default": "./cube-subtract.mjs"
189
+ },
190
+ "./double": {
191
+ "types": "./double.d.ts",
192
+ "import": "./double.mjs",
193
+ "require": "./double.cjs",
194
+ "default": "./double.mjs"
195
+ },
196
+ "./double-add": {
197
+ "types": "./double-add.d.ts",
198
+ "import": "./double-add.mjs",
199
+ "require": "./double-add.cjs",
200
+ "default": "./double-add.mjs"
201
+ },
202
+ "./double-distance": {
203
+ "types": "./double-distance.d.ts",
204
+ "import": "./double-distance.mjs",
205
+ "require": "./double-distance.cjs",
206
+ "default": "./double-distance.mjs"
207
+ },
208
+ "./double-from-qrs": {
209
+ "types": "./double-from-qrs.d.ts",
210
+ "import": "./double-from-qrs.mjs",
211
+ "require": "./double-from-qrs.cjs",
212
+ "default": "./double-from-qrs.mjs"
213
+ },
214
+ "./double-neighbor": {
215
+ "types": "./double-neighbor.d.ts",
216
+ "import": "./double-neighbor.mjs",
217
+ "require": "./double-neighbor.cjs",
218
+ "default": "./double-neighbor.mjs"
219
+ },
220
+ "./hex-contains-point": {
221
+ "types": "./hex-contains-point.d.ts",
222
+ "import": "./hex-contains-point.mjs",
223
+ "require": "./hex-contains-point.cjs",
224
+ "default": "./hex-contains-point.mjs"
225
+ },
226
+ "./hex-distance": {
227
+ "types": "./hex-distance.d.ts",
228
+ "import": "./hex-distance.mjs",
229
+ "require": "./hex-distance.cjs",
230
+ "default": "./hex-distance.mjs"
231
+ },
232
+ "./hex-reachable": {
233
+ "types": "./hex-reachable.d.ts",
234
+ "import": "./hex-reachable.mjs",
235
+ "require": "./hex-reachable.cjs",
236
+ "default": "./hex-reachable.mjs"
237
+ },
238
+ "./hex-system": {
239
+ "types": "./hex-system.d.ts",
240
+ "import": "./hex-system.mjs",
241
+ "require": "./hex-system.cjs",
242
+ "default": "./hex-system.mjs"
243
+ },
244
+ "./hexes-within": {
245
+ "types": "./hexes-within.d.ts",
246
+ "import": "./hexes-within.mjs",
247
+ "require": "./hexes-within.cjs",
248
+ "default": "./hexes-within.mjs"
249
+ },
250
+ "./lerp": {
251
+ "types": "./lerp.d.ts",
252
+ "import": "./lerp.mjs",
253
+ "require": "./lerp.cjs",
254
+ "default": "./lerp.mjs"
255
+ },
256
+ "./offset": {
257
+ "types": "./offset.d.ts",
258
+ "import": "./offset.mjs",
259
+ "require": "./offset.cjs",
260
+ "default": "./offset.mjs"
261
+ },
262
+ "./offset-distance": {
263
+ "types": "./offset-distance.d.ts",
264
+ "import": "./offset-distance.mjs",
265
+ "require": "./offset-distance.cjs",
266
+ "default": "./offset-distance.mjs"
267
+ },
268
+ "./offset-from-qrs": {
269
+ "types": "./offset-from-qrs.d.ts",
270
+ "import": "./offset-from-qrs.mjs",
271
+ "require": "./offset-from-qrs.cjs",
272
+ "default": "./offset-from-qrs.mjs"
273
+ },
274
+ "./offset-neighbor": {
275
+ "types": "./offset-neighbor.d.ts",
276
+ "import": "./offset-neighbor.mjs",
277
+ "require": "./offset-neighbor.cjs",
278
+ "default": "./offset-neighbor.mjs"
279
+ },
280
+ "./orientation": {
281
+ "types": "./orientation.d.ts",
282
+ "import": "./orientation.mjs",
283
+ "require": "./orientation.cjs",
284
+ "default": "./orientation.mjs"
285
+ },
286
+ "./pixel-from-qrs": {
287
+ "types": "./pixel-from-qrs.d.ts",
288
+ "import": "./pixel-from-qrs.mjs",
289
+ "require": "./pixel-from-qrs.cjs",
290
+ "default": "./pixel-from-qrs.mjs"
291
+ },
292
+ "./point": {
293
+ "types": "./point.d.ts",
294
+ "import": "./point.mjs",
295
+ "require": "./point.cjs",
296
+ "default": "./point.mjs"
297
+ },
298
+ "./qrs": {
299
+ "types": "./qrs.d.ts",
300
+ "import": "./qrs.mjs",
301
+ "require": "./qrs.cjs",
302
+ "default": "./qrs.mjs"
303
+ },
304
+ "./qrs-eq": {
305
+ "types": "./qrs-eq.d.ts",
306
+ "import": "./qrs-eq.mjs",
307
+ "require": "./qrs-eq.cjs",
308
+ "default": "./qrs-eq.mjs"
309
+ },
310
+ "./qrs-from-double": {
311
+ "types": "./qrs-from-double.d.ts",
312
+ "import": "./qrs-from-double.mjs",
313
+ "require": "./qrs-from-double.cjs",
314
+ "default": "./qrs-from-double.mjs"
315
+ },
316
+ "./qrs-from-pixel": {
317
+ "types": "./qrs-from-pixel.d.ts",
318
+ "import": "./qrs-from-pixel.mjs",
319
+ "require": "./qrs-from-pixel.cjs",
320
+ "default": "./qrs-from-pixel.mjs"
321
+ },
322
+ "./qrs-hash-code": {
323
+ "types": "./qrs-hash-code.d.ts",
324
+ "import": "./qrs-hash-code.mjs",
325
+ "require": "./qrs-hash-code.cjs",
326
+ "default": "./qrs-hash-code.mjs"
327
+ },
328
+ "./qrs-intersection": {
329
+ "types": "./qrs-intersection.d.ts",
330
+ "import": "./qrs-intersection.mjs",
331
+ "require": "./qrs-intersection.cjs",
332
+ "default": "./qrs-intersection.mjs"
333
+ },
334
+ "./qrs-range": {
335
+ "types": "./qrs-range.d.ts",
336
+ "import": "./qrs-range.mjs",
337
+ "require": "./qrs-range.cjs",
338
+ "default": "./qrs-range.mjs"
339
+ },
340
+ "./qrs-ring": {
341
+ "types": "./qrs-ring.d.ts",
342
+ "import": "./qrs-ring.mjs",
343
+ "require": "./qrs-ring.cjs",
344
+ "default": "./qrs-ring.mjs"
345
+ },
346
+ "./qrs-scale": {
347
+ "types": "./qrs-scale.d.ts",
348
+ "import": "./qrs-scale.mjs",
349
+ "require": "./qrs-scale.cjs",
350
+ "default": "./qrs-scale.mjs"
351
+ },
352
+ "./qrs-spiral": {
353
+ "types": "./qrs-spiral.d.ts",
354
+ "import": "./qrs-spiral.mjs",
355
+ "require": "./qrs-spiral.cjs",
356
+ "default": "./qrs-spiral.mjs"
357
+ },
358
+ "./qrs-subtract": {
359
+ "types": "./qrs-subtract.d.ts",
360
+ "import": "./qrs-subtract.mjs",
361
+ "require": "./qrs-subtract.cjs",
362
+ "default": "./qrs-subtract.mjs"
363
+ }
364
+ },
365
+ "git": {
366
+ "authorName": "Rick Osborne",
367
+ "commitDateISO": "2025-05-31T22:32:32.000Z",
368
+ "commitHash": "45584694c804019b63d85095a76ce0da2dd44a33",
369
+ "commitLink": "https://github.com/rickosborne/es-js-ts/commits/45584694c804019b63d85095a76ce0da2dd44a33",
370
+ "parentHash": "f6873b4900d6a5afc2daf08ea0f2568ab3f77188",
371
+ "signingKeyId": "8e61c433fe39d4a4679ce1d5b873fb3c48464f3c",
372
+ "tag": "v2025.5.31"
373
+ },
374
+ "homepage": "https://github.com/rickosborne/es-js-ts",
375
+ "keywords": [
376
+ "typescript",
377
+ "hexagons",
378
+ "hexgrid",
379
+ "hex grid"
380
+ ],
381
+ "license": "CC-BY-NC-SA-4.0",
382
+ "main": "./index.cjs",
383
+ "module": "./index.mjs",
384
+ "name": "@rickosborne/hexgrid",
385
+ "private": false,
386
+ "publishConfig": {
387
+ "access": "public"
388
+ },
389
+ "readme": "README.md",
390
+ "repository": {
391
+ "directory": "src/packages/hexgrid",
392
+ "type": "git",
393
+ "url": "git+https://github.com/rickosborne/es-js-ts.git"
394
+ },
395
+ "types": "./index.d.ts",
396
+ "typings": "./index.d.ts",
397
+ "version": "2025.5.31"
398
+ }
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, { get: all[name], enumerable: true });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
+ }
17
+ return to;
18
+ };
19
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
20
+ var pixel_from_qrs_exports = {};
21
+ __export(pixel_from_qrs_exports, {
22
+ HEX_CORNERS: () => HEX_CORNERS,
23
+ hexCorners: () => hexCorners,
24
+ pixelFromFlatQRS: () => pixelFromFlatQRS,
25
+ pixelFromPointyQRS: () => pixelFromPointyQRS,
26
+ pixelFromQRS: () => pixelFromQRS,
27
+ pixelOffsetOfCorner: () => pixelOffsetOfCorner
28
+ });
29
+ module.exports = __toCommonJS(pixel_from_qrs_exports);
30
+ var import_foundation = require("@rickosborne/foundation");
31
+ var import_hex_system = require("./hex-system.cjs");
32
+ const MAG_3_2 = 3 / 2;
33
+ const pixelFromFlatQRS = /* @__PURE__ */ __name(({ q, r }, scale = 1) => {
34
+ const x = scale * MAG_3_2 * q;
35
+ const y = scale * (import_hex_system.SQRT_3_2 * q + import_hex_system.SQRT_3 * r);
36
+ return { x, y };
37
+ }, "pixelFromFlatQRS");
38
+ const pixelFromPointyQRS = /* @__PURE__ */ __name(({ q, r }, scale = 1) => {
39
+ const x = scale * (import_hex_system.SQRT_3 * q + import_hex_system.SQRT_3_2 * r);
40
+ const y = scale * MAG_3_2 * r;
41
+ return { x, y };
42
+ }, "pixelFromPointyQRS");
43
+ const pixelFromQRS = /* @__PURE__ */ __name(({ q, r }, { orientation: { f0, f1, f2, f3 }, origin: { x: cx, y: cy }, size: { x: scaleX, y: scaleY } }) => {
44
+ const x = cx + (f0 * q + f1 * r) * scaleX;
45
+ const y = cy + (f2 * q + f3 * r) * scaleY;
46
+ return { x, y };
47
+ }, "pixelFromQRS");
48
+ const HEX_CORNERS = Object.freeze([0, 1, 2, 3, 4, 5]);
49
+ const pixelOffsetOfCorner = (0, import_foundation.memoizeBinary)((corner, { orientation: { start60Deg }, size: { x: scaleX, y: scaleY } }) => {
50
+ const rad = import_hex_system.TWO_PI * (start60Deg + corner) / 6;
51
+ const x = scaleX * Math.cos(rad);
52
+ const y = scaleY * Math.sin(rad);
53
+ return Object.freeze({ x, y });
54
+ });
55
+ const hexCorners = /* @__PURE__ */ __name((qrs, layout) => {
56
+ const { x: cx, y: cy } = pixelFromQRS(qrs, layout);
57
+ const resolution = layout.resolution;
58
+ return HEX_CORNERS.map((corner) => {
59
+ const { x: ox, y: oy } = pixelOffsetOfCorner(corner, layout);
60
+ return {
61
+ x: (0, import_foundation.roundTo)(cx + ox, resolution),
62
+ y: (0, import_foundation.roundTo)(cy + oy, resolution)
63
+ };
64
+ });
65
+ }, "hexCorners");
66
+ //# sourceMappingURL=pixel-from-qrs.cjs.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/packages/hexgrid/pixel-from-qrs.ts"],
4
+ "mappings": ";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,wBAAuC;AACvC,wBAAyC;AAIzC,MAAM,UAAU,IAAI;AAEb,MAAM,mBAAmB,wBAAC,EAAE,GAAG,EAAE,GAAiB,QAAQ,MAAe;AAC/E,QAAM,IAAI,QAAQ,UAAU;AAC5B,QAAM,IAAI,SAAS,6BAAW,IAAI,2BAAS;AAC3C,SAAO,EAAE,GAAG,EAAE;AACf,GAJgC;AAMzB,MAAM,qBAAqB,wBAAC,EAAE,GAAG,EAAE,GAAiB,QAAQ,MAAe;AACjF,QAAM,IAAI,SAAS,2BAAS,IAAI,6BAAW;AAC3C,QAAM,IAAI,QAAQ,UAAU;AAC5B,SAAO,EAAE,GAAG,EAAE;AACf,GAJkC;AAM3B,MAAM,eAAe,wBAC3B,EAAE,GAAG,EAAE,GACP,EAAE,aAAa,EAAE,IAAI,IAAI,IAAI,GAAG,GAAG,QAAQ,EAAE,GAAG,IAAI,GAAG,GAAG,GAAG,MAAM,EAAE,GAAG,QAAQ,GAAG,OAAO,EAAE,MAC/E;AACb,QAAM,IAAI,MAAM,KAAK,IAAI,KAAK,KAAK;AACnC,QAAM,IAAI,MAAM,KAAK,IAAI,KAAK,KAAK;AACnC,SAAO,EAAE,GAAG,EAAE;AACf,GAP4B;AAWrB,MAAM,cAAoC,OAAO,OAAO,CAAE,GAAG,GAAG,GAAG,GAAG,GAAG,CAAE,CAAC;AAE5E,MAAM,0BAAsB,iCAAc,CAChD,QACA,EAAE,aAAa,EAAE,WAAW,GAAG,MAAM,EAAE,GAAG,QAAQ,GAAG,OAAO,EAAE,MACvC;AACvB,QAAM,MAAM,4BAAU,aAAa,UAAU;AAC7C,QAAM,IAAI,SAAS,KAAK,IAAI,GAAG;AAC/B,QAAM,IAAI,SAAS,KAAK,IAAI,GAAG;AAC/B,SAAO,OAAO,OAAO,EAAE,GAAG,EAAE,CAAC;AAC9B,CAAC;AAEM,MAAM,aAAa,wBACzB,KACA,WACe;AACf,QAAM,EAAE,GAAG,IAAI,GAAG,GAAG,IAAI,aAAa,KAAK,MAAM;AACjD,QAAM,aAAa,OAAO;AAC1B,SAAO,YAAY,IAAI,CAAC,WAAW;AAClC,UAAM,EAAE,GAAG,IAAI,GAAG,GAAG,IAAI,oBAAoB,QAAQ,MAAM;AAC3D,WAAO;AAAA,MACN,OAAG,2BAAQ,KAAK,IAAI,UAAU;AAAA,MAC9B,OAAG,2BAAQ,KAAK,IAAI,UAAU;AAAA,IAC/B;AAAA,EACD,CAAC;AACF,GAb0B;",
5
+ "names": []
6
+ }
@@ -0,0 +1,10 @@
1
+ import type { HexLayout, PointXY } from "./orientation.js";
2
+ import type { BareQRSPoint } from "./qrs.js";
3
+ export declare const pixelFromFlatQRS: ({ q, r }: BareQRSPoint, scale?: number) => PointXY;
4
+ export declare const pixelFromPointyQRS: ({ q, r }: BareQRSPoint, scale?: number) => PointXY;
5
+ export declare const pixelFromQRS: ({ q, r }: BareQRSPoint, { orientation: { f0, f1, f2, f3 }, origin: { x: cx, y: cy }, size: { x: scaleX, y: scaleY } }: HexLayout) => PointXY;
6
+ export type HexCorner = 0 | 1 | 2 | 3 | 4 | 5;
7
+ export declare const HEX_CORNERS: readonly HexCorner[];
8
+ export declare const pixelOffsetOfCorner: (t: HexCorner, u: HexLayout) => Readonly<PointXY>;
9
+ export declare const hexCorners: (qrs: BareQRSPoint, layout: HexLayout) => PointXY[];
10
+ //# sourceMappingURL=pixel-from-qrs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pixel-from-qrs.d.ts","sourceRoot":"","sources":["../../../src/packages/hexgrid/pixel-from-qrs.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAI7C,eAAO,MAAM,gBAAgB,GAAI,UAAU,YAAY,EAAE,cAAS,KAAG,OAIpE,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAAI,UAAU,YAAY,EAAE,cAAS,KAAG,OAItE,CAAC;AAEF,eAAO,MAAM,YAAY,GACxB,UAAU,YAAY,EACtB,+FAA+F,SAAS,KACtG,OAIF,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAE9C,eAAO,MAAM,WAAW,EAAE,SAAS,SAAS,EAAwC,CAAC;AAErF,eAAO,MAAM,mBAAmB,mDAQ9B,CAAC;AAEH,eAAO,MAAM,UAAU,GACtB,KAAK,YAAY,EACjB,QAAQ,SAAS,KACf,OAAO,EAUT,CAAC"}
@@ -0,0 +1,47 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
+ import { memoizeBinary, roundTo } from "@rickosborne/foundation";
4
+ import { SQRT_3, SQRT_3_2, TWO_PI } from "./hex-system.mjs";
5
+ const MAG_3_2 = 3 / 2;
6
+ const pixelFromFlatQRS = /* @__PURE__ */ __name(({ q, r }, scale = 1) => {
7
+ const x = scale * MAG_3_2 * q;
8
+ const y = scale * (SQRT_3_2 * q + SQRT_3 * r);
9
+ return { x, y };
10
+ }, "pixelFromFlatQRS");
11
+ const pixelFromPointyQRS = /* @__PURE__ */ __name(({ q, r }, scale = 1) => {
12
+ const x = scale * (SQRT_3 * q + SQRT_3_2 * r);
13
+ const y = scale * MAG_3_2 * r;
14
+ return { x, y };
15
+ }, "pixelFromPointyQRS");
16
+ const pixelFromQRS = /* @__PURE__ */ __name(({ q, r }, { orientation: { f0, f1, f2, f3 }, origin: { x: cx, y: cy }, size: { x: scaleX, y: scaleY } }) => {
17
+ const x = cx + (f0 * q + f1 * r) * scaleX;
18
+ const y = cy + (f2 * q + f3 * r) * scaleY;
19
+ return { x, y };
20
+ }, "pixelFromQRS");
21
+ const HEX_CORNERS = Object.freeze([0, 1, 2, 3, 4, 5]);
22
+ const pixelOffsetOfCorner = memoizeBinary((corner, { orientation: { start60Deg }, size: { x: scaleX, y: scaleY } }) => {
23
+ const rad = TWO_PI * (start60Deg + corner) / 6;
24
+ const x = scaleX * Math.cos(rad);
25
+ const y = scaleY * Math.sin(rad);
26
+ return Object.freeze({ x, y });
27
+ });
28
+ const hexCorners = /* @__PURE__ */ __name((qrs, layout) => {
29
+ const { x: cx, y: cy } = pixelFromQRS(qrs, layout);
30
+ const resolution = layout.resolution;
31
+ return HEX_CORNERS.map((corner) => {
32
+ const { x: ox, y: oy } = pixelOffsetOfCorner(corner, layout);
33
+ return {
34
+ x: roundTo(cx + ox, resolution),
35
+ y: roundTo(cy + oy, resolution)
36
+ };
37
+ });
38
+ }, "hexCorners");
39
+ export {
40
+ HEX_CORNERS,
41
+ hexCorners,
42
+ pixelFromFlatQRS,
43
+ pixelFromPointyQRS,
44
+ pixelFromQRS,
45
+ pixelOffsetOfCorner
46
+ };
47
+ //# sourceMappingURL=pixel-from-qrs.mjs.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/packages/hexgrid/pixel-from-qrs.ts"],
4
+ "mappings": ";;AAAA,SAAS,eAAe,eAAe;AACvC,SAAS,QAAQ,UAAU,cAAc;AAIzC,MAAM,UAAU,IAAI;AAEb,MAAM,mBAAmB,wBAAC,EAAE,GAAG,EAAE,GAAiB,QAAQ,MAAe;AAC/E,QAAM,IAAI,QAAQ,UAAU;AAC5B,QAAM,IAAI,SAAS,WAAW,IAAI,SAAS;AAC3C,SAAO,EAAE,GAAG,EAAE;AACf,GAJgC;AAMzB,MAAM,qBAAqB,wBAAC,EAAE,GAAG,EAAE,GAAiB,QAAQ,MAAe;AACjF,QAAM,IAAI,SAAS,SAAS,IAAI,WAAW;AAC3C,QAAM,IAAI,QAAQ,UAAU;AAC5B,SAAO,EAAE,GAAG,EAAE;AACf,GAJkC;AAM3B,MAAM,eAAe,wBAC3B,EAAE,GAAG,EAAE,GACP,EAAE,aAAa,EAAE,IAAI,IAAI,IAAI,GAAG,GAAG,QAAQ,EAAE,GAAG,IAAI,GAAG,GAAG,GAAG,MAAM,EAAE,GAAG,QAAQ,GAAG,OAAO,EAAE,MAC/E;AACb,QAAM,IAAI,MAAM,KAAK,IAAI,KAAK,KAAK;AACnC,QAAM,IAAI,MAAM,KAAK,IAAI,KAAK,KAAK;AACnC,SAAO,EAAE,GAAG,EAAE;AACf,GAP4B;AAWrB,MAAM,cAAoC,OAAO,OAAO,CAAE,GAAG,GAAG,GAAG,GAAG,GAAG,CAAE,CAAC;AAE5E,MAAM,sBAAsB,cAAc,CAChD,QACA,EAAE,aAAa,EAAE,WAAW,GAAG,MAAM,EAAE,GAAG,QAAQ,GAAG,OAAO,EAAE,MACvC;AACvB,QAAM,MAAM,UAAU,aAAa,UAAU;AAC7C,QAAM,IAAI,SAAS,KAAK,IAAI,GAAG;AAC/B,QAAM,IAAI,SAAS,KAAK,IAAI,GAAG;AAC/B,SAAO,OAAO,OAAO,EAAE,GAAG,EAAE,CAAC;AAC9B,CAAC;AAEM,MAAM,aAAa,wBACzB,KACA,WACe;AACf,QAAM,EAAE,GAAG,IAAI,GAAG,GAAG,IAAI,aAAa,KAAK,MAAM;AACjD,QAAM,aAAa,OAAO;AAC1B,SAAO,YAAY,IAAI,CAAC,WAAW;AAClC,UAAM,EAAE,GAAG,IAAI,GAAG,GAAG,IAAI,oBAAoB,QAAQ,MAAM;AAC3D,WAAO;AAAA,MACN,GAAG,QAAQ,KAAK,IAAI,UAAU;AAAA,MAC9B,GAAG,QAAQ,KAAK,IAAI,UAAU;AAAA,IAC/B;AAAA,EACD,CAAC;AACF,GAb0B;",
5
+ "names": []
6
+ }
package/point.cjs ADDED
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __copyProps = (to, from, except, desc) => {
7
+ if (from && typeof from === "object" || typeof from === "function") {
8
+ for (let key of __getOwnPropNames(from))
9
+ if (!__hasOwnProp.call(to, key) && key !== except)
10
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
11
+ }
12
+ return to;
13
+ };
14
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
15
+ var point_exports = {};
16
+ module.exports = __toCommonJS(point_exports);
17
+ //# sourceMappingURL=point.cjs.map
package/point.cjs.map ADDED
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/packages/hexgrid/point.ts"],
4
+ "mappings": ";;;;;;;;;;;;;;AAAA;AAAA;",
5
+ "names": []
6
+ }
package/point.d.ts ADDED
@@ -0,0 +1,5 @@
1
+ export interface Point {
2
+ system: string;
3
+ }
4
+ export type Axis<P extends Point> = Exclude<keyof P, keyof Point>;
5
+ //# sourceMappingURL=point.d.ts.map
package/point.d.ts.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"file":"point.d.ts","sourceRoot":"","sources":["../../../src/packages/hexgrid/point.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,KAAK;IACrB,MAAM,EAAE,MAAM,CAAC;CACf;AAED,MAAM,MAAM,IAAI,CAAC,CAAC,SAAS,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,KAAK,CAAC,CAAC"}
package/point.mjs ADDED
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=point.mjs.map
package/point.mjs.map ADDED
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "mappings": "",
5
+ "names": []
6
+ }
package/qrs-eq.cjs ADDED
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, { get: all[name], enumerable: true });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
+ }
17
+ return to;
18
+ };
19
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
20
+ var qrs_eq_exports = {};
21
+ __export(qrs_eq_exports, {
22
+ qrsEQ: () => qrsEQ
23
+ });
24
+ module.exports = __toCommonJS(qrs_eq_exports);
25
+ const qrsEQ = /* @__PURE__ */ __name((a, b) => a.q === b.q && a.r === b.r, "qrsEQ");
26
+ //# sourceMappingURL=qrs-eq.cjs.map
package/qrs-eq.cjs.map ADDED
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/packages/hexgrid/qrs-eq.ts"],
4
+ "mappings": ";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEO,MAAM,QAAQ,wBAAC,GAA+B,MAA2C,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAApG;",
5
+ "names": []
6
+ }
package/qrs-eq.d.ts ADDED
@@ -0,0 +1,3 @@
1
+ import type { BareHexCubePoint } from "./cube.js";
2
+ export declare const qrsEQ: (a: Readonly<BareHexCubePoint>, b: Readonly<BareHexCubePoint>) => boolean;
3
+ //# sourceMappingURL=qrs-eq.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"qrs-eq.d.ts","sourceRoot":"","sources":["../../../src/packages/hexgrid/qrs-eq.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAElD,eAAO,MAAM,KAAK,GAAI,GAAG,QAAQ,CAAC,gBAAgB,CAAC,EAAE,GAAG,QAAQ,CAAC,gBAAgB,CAAC,KAAG,OAAqC,CAAC"}
package/qrs-eq.mjs ADDED
@@ -0,0 +1,7 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
+ const qrsEQ = /* @__PURE__ */ __name((a, b) => a.q === b.q && a.r === b.r, "qrsEQ");
4
+ export {
5
+ qrsEQ
6
+ };
7
+ //# sourceMappingURL=qrs-eq.mjs.map
package/qrs-eq.mjs.map ADDED
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/packages/hexgrid/qrs-eq.ts"],
4
+ "mappings": ";;AAEO,MAAM,QAAQ,wBAAC,GAA+B,MAA2C,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAApG;",
5
+ "names": []
6
+ }