@deck.gl/aggregation-layers 9.0.0-beta.2 → 9.0.0-beta.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (323) hide show
  1. package/dist/aggregation-layer.js +153 -0
  2. package/dist/contour-layer/contour-layer.js +241 -0
  3. package/dist/contour-layer/contour-utils.js +64 -0
  4. package/dist/contour-layer/marching-squares-codes.js +337 -0
  5. package/dist/contour-layer/marching-squares.js +147 -0
  6. package/dist/cpu-grid-layer/cpu-grid-layer.js +130 -0
  7. package/dist/cpu-grid-layer/grid-aggregator.js +141 -0
  8. package/dist/dist.dev.js +1296 -13614
  9. package/dist/gpu-grid-layer/gpu-grid-cell-layer-fragment.glsl.js +34 -0
  10. package/dist/{esm/gpu-grid-layer → gpu-grid-layer}/gpu-grid-cell-layer-vertex.glsl.js +20 -1
  11. package/dist/gpu-grid-layer/gpu-grid-cell-layer.js +145 -0
  12. package/dist/gpu-grid-layer/gpu-grid-layer.js +288 -0
  13. package/dist/grid-aggregation-layer.js +172 -0
  14. package/dist/grid-layer/grid-layer.js +63 -0
  15. package/dist/heatmap-layer/heatmap-layer-utils.js +63 -0
  16. package/dist/heatmap-layer/heatmap-layer.js +471 -0
  17. package/dist/{esm/heatmap-layer → heatmap-layer}/max-fs.glsl.js +0 -1
  18. package/dist/{esm/heatmap-layer → heatmap-layer}/max-vs.glsl.js +0 -1
  19. package/dist/heatmap-layer/triangle-layer-fragment.glsl.js +61 -0
  20. package/dist/heatmap-layer/triangle-layer-vertex.glsl.js +52 -0
  21. package/dist/heatmap-layer/triangle-layer.js +59 -0
  22. package/dist/{esm/heatmap-layer → heatmap-layer}/weights-fs.glsl.js +0 -1
  23. package/dist/{esm/heatmap-layer → heatmap-layer}/weights-vs.glsl.js +0 -1
  24. package/dist/hexagon-layer/hexagon-aggregator.js +112 -0
  25. package/dist/hexagon-layer/hexagon-layer.js +174 -0
  26. package/dist/index.cjs +4494 -0
  27. package/dist/index.cjs.map +7 -0
  28. package/dist/index.js +32 -0
  29. package/dist/screen-grid-layer/screen-grid-cell-layer.js +166 -0
  30. package/dist/screen-grid-layer/screen-grid-layer-fragment.glsl.js +40 -0
  31. package/dist/{esm/screen-grid-layer → screen-grid-layer}/screen-grid-layer-vertex.glsl.js +19 -1
  32. package/dist/screen-grid-layer/screen-grid-layer.js +216 -0
  33. package/dist/types.js +1 -0
  34. package/dist/utils/aggregation-operation-utils.js +94 -0
  35. package/dist/utils/bin-sorter.js +167 -0
  36. package/dist/utils/color-utils.js +53 -0
  37. package/dist/utils/cpu-aggregator.js +421 -0
  38. package/dist/utils/gpu-grid-aggregation/aggregate-all-fs.glsl.js +39 -0
  39. package/dist/utils/gpu-grid-aggregation/aggregate-all-vs.glsl.js +53 -0
  40. package/dist/utils/gpu-grid-aggregation/aggregate-to-grid-fs.glsl.js +34 -0
  41. package/dist/{esm/utils → utils}/gpu-grid-aggregation/aggregate-to-grid-vs.glsl.js +19 -1
  42. package/dist/utils/gpu-grid-aggregation/gpu-grid-aggregator-constants.js +41 -0
  43. package/dist/utils/gpu-grid-aggregation/gpu-grid-aggregator-utils.js +1 -0
  44. package/{typed → dist}/utils/gpu-grid-aggregation/gpu-grid-aggregator.d.ts.map +1 -1
  45. package/dist/utils/gpu-grid-aggregation/gpu-grid-aggregator.js +566 -0
  46. package/dist/utils/gpu-grid-aggregation/transform-mean-vs.glsl.js +37 -0
  47. package/dist/utils/grid-aggregation-utils.js +114 -0
  48. package/dist/utils/prop-utils.js +28 -0
  49. package/dist/utils/resource-utils.js +38 -0
  50. package/dist/utils/scale-utils.js +184 -0
  51. package/dist.min.js +60 -174
  52. package/package.json +18 -11
  53. package/src/utils/gpu-grid-aggregation/gpu-grid-aggregator.ts +10 -13
  54. package/dist/es5/aggregation-layer.js +0 -215
  55. package/dist/es5/aggregation-layer.js.map +0 -1
  56. package/dist/es5/contour-layer/contour-layer.js +0 -353
  57. package/dist/es5/contour-layer/contour-layer.js.map +0 -1
  58. package/dist/es5/contour-layer/contour-utils.js +0 -110
  59. package/dist/es5/contour-layer/contour-utils.js.map +0 -1
  60. package/dist/es5/contour-layer/marching-squares-codes.js +0 -152
  61. package/dist/es5/contour-layer/marching-squares-codes.js.map +0 -1
  62. package/dist/es5/contour-layer/marching-squares.js +0 -168
  63. package/dist/es5/contour-layer/marching-squares.js.map +0 -1
  64. package/dist/es5/cpu-grid-layer/cpu-grid-layer.js +0 -235
  65. package/dist/es5/cpu-grid-layer/cpu-grid-layer.js.map +0 -1
  66. package/dist/es5/cpu-grid-layer/grid-aggregator.js +0 -180
  67. package/dist/es5/cpu-grid-layer/grid-aggregator.js.map +0 -1
  68. package/dist/es5/gpu-grid-layer/gpu-grid-cell-layer-fragment.glsl.js +0 -9
  69. package/dist/es5/gpu-grid-layer/gpu-grid-cell-layer-fragment.glsl.js.map +0 -1
  70. package/dist/es5/gpu-grid-layer/gpu-grid-cell-layer-vertex.glsl.js +0 -9
  71. package/dist/es5/gpu-grid-layer/gpu-grid-cell-layer-vertex.glsl.js.map +0 -1
  72. package/dist/es5/gpu-grid-layer/gpu-grid-cell-layer.js +0 -247
  73. package/dist/es5/gpu-grid-layer/gpu-grid-cell-layer.js.map +0 -1
  74. package/dist/es5/gpu-grid-layer/gpu-grid-layer.js +0 -424
  75. package/dist/es5/gpu-grid-layer/gpu-grid-layer.js.map +0 -1
  76. package/dist/es5/grid-aggregation-layer.js +0 -280
  77. package/dist/es5/grid-aggregation-layer.js.map +0 -1
  78. package/dist/es5/grid-layer/grid-layer.js +0 -125
  79. package/dist/es5/grid-layer/grid-layer.js.map +0 -1
  80. package/dist/es5/heatmap-layer/heatmap-layer-utils.js +0 -107
  81. package/dist/es5/heatmap-layer/heatmap-layer-utils.js.map +0 -1
  82. package/dist/es5/heatmap-layer/heatmap-layer.js +0 -678
  83. package/dist/es5/heatmap-layer/heatmap-layer.js.map +0 -1
  84. package/dist/es5/heatmap-layer/max-fs.glsl.js +0 -9
  85. package/dist/es5/heatmap-layer/max-fs.glsl.js.map +0 -1
  86. package/dist/es5/heatmap-layer/max-vs.glsl.js +0 -9
  87. package/dist/es5/heatmap-layer/max-vs.glsl.js.map +0 -1
  88. package/dist/es5/heatmap-layer/triangle-layer-fragment.glsl.js +0 -9
  89. package/dist/es5/heatmap-layer/triangle-layer-fragment.glsl.js.map +0 -1
  90. package/dist/es5/heatmap-layer/triangle-layer-vertex.glsl.js +0 -9
  91. package/dist/es5/heatmap-layer/triangle-layer-vertex.glsl.js.map +0 -1
  92. package/dist/es5/heatmap-layer/triangle-layer.js +0 -121
  93. package/dist/es5/heatmap-layer/triangle-layer.js.map +0 -1
  94. package/dist/es5/heatmap-layer/weights-fs.glsl.js +0 -9
  95. package/dist/es5/heatmap-layer/weights-fs.glsl.js.map +0 -1
  96. package/dist/es5/heatmap-layer/weights-vs.glsl.js +0 -9
  97. package/dist/es5/heatmap-layer/weights-vs.glsl.js.map +0 -1
  98. package/dist/es5/hexagon-layer/hexagon-aggregator.js +0 -118
  99. package/dist/es5/hexagon-layer/hexagon-aggregator.js.map +0 -1
  100. package/dist/es5/hexagon-layer/hexagon-layer.js +0 -289
  101. package/dist/es5/hexagon-layer/hexagon-layer.js.map +0 -1
  102. package/dist/es5/index.js +0 -104
  103. package/dist/es5/index.js.map +0 -1
  104. package/dist/es5/screen-grid-layer/screen-grid-cell-layer.js +0 -244
  105. package/dist/es5/screen-grid-layer/screen-grid-cell-layer.js.map +0 -1
  106. package/dist/es5/screen-grid-layer/screen-grid-layer-fragment.glsl.js +0 -9
  107. package/dist/es5/screen-grid-layer/screen-grid-layer-fragment.glsl.js.map +0 -1
  108. package/dist/es5/screen-grid-layer/screen-grid-layer-vertex.glsl.js +0 -9
  109. package/dist/es5/screen-grid-layer/screen-grid-layer-vertex.glsl.js.map +0 -1
  110. package/dist/es5/screen-grid-layer/screen-grid-layer.js +0 -317
  111. package/dist/es5/screen-grid-layer/screen-grid-layer.js.map +0 -1
  112. package/dist/es5/types.js +0 -2
  113. package/dist/es5/types.js.map +0 -1
  114. package/dist/es5/utils/aggregation-operation-utils.js +0 -123
  115. package/dist/es5/utils/aggregation-operation-utils.js.map +0 -1
  116. package/dist/es5/utils/bin-sorter.js +0 -248
  117. package/dist/es5/utils/bin-sorter.js.map +0 -1
  118. package/dist/es5/utils/color-utils.js +0 -39
  119. package/dist/es5/utils/color-utils.js.map +0 -1
  120. package/dist/es5/utils/cpu-aggregator.js +0 -496
  121. package/dist/es5/utils/cpu-aggregator.js.map +0 -1
  122. package/dist/es5/utils/gpu-grid-aggregation/aggregate-all-fs.glsl.js +0 -9
  123. package/dist/es5/utils/gpu-grid-aggregation/aggregate-all-fs.glsl.js.map +0 -1
  124. package/dist/es5/utils/gpu-grid-aggregation/aggregate-all-vs.glsl.js +0 -9
  125. package/dist/es5/utils/gpu-grid-aggregation/aggregate-all-vs.glsl.js.map +0 -1
  126. package/dist/es5/utils/gpu-grid-aggregation/aggregate-to-grid-fs.glsl.js +0 -9
  127. package/dist/es5/utils/gpu-grid-aggregation/aggregate-to-grid-fs.glsl.js.map +0 -1
  128. package/dist/es5/utils/gpu-grid-aggregation/aggregate-to-grid-vs.glsl.js +0 -9
  129. package/dist/es5/utils/gpu-grid-aggregation/aggregate-to-grid-vs.glsl.js.map +0 -1
  130. package/dist/es5/utils/gpu-grid-aggregation/gpu-grid-aggregator-constants.js +0 -63
  131. package/dist/es5/utils/gpu-grid-aggregation/gpu-grid-aggregator-constants.js.map +0 -1
  132. package/dist/es5/utils/gpu-grid-aggregation/gpu-grid-aggregator-utils.js +0 -2
  133. package/dist/es5/utils/gpu-grid-aggregation/gpu-grid-aggregator-utils.js.map +0 -1
  134. package/dist/es5/utils/gpu-grid-aggregation/gpu-grid-aggregator.js +0 -732
  135. package/dist/es5/utils/gpu-grid-aggregation/gpu-grid-aggregator.js.map +0 -1
  136. package/dist/es5/utils/gpu-grid-aggregation/gpu-grid-aggregator.md +0 -155
  137. package/dist/es5/utils/gpu-grid-aggregation/transform-mean-vs.glsl.js +0 -9
  138. package/dist/es5/utils/gpu-grid-aggregation/transform-mean-vs.glsl.js.map +0 -1
  139. package/dist/es5/utils/grid-aggregation-utils.js +0 -118
  140. package/dist/es5/utils/grid-aggregation-utils.js.map +0 -1
  141. package/dist/es5/utils/prop-utils.js +0 -19
  142. package/dist/es5/utils/prop-utils.js.map +0 -1
  143. package/dist/es5/utils/resource-utils.js +0 -59
  144. package/dist/es5/utils/resource-utils.js.map +0 -1
  145. package/dist/es5/utils/scale-utils.js +0 -254
  146. package/dist/es5/utils/scale-utils.js.map +0 -1
  147. package/dist/esm/aggregation-layer.js +0 -156
  148. package/dist/esm/aggregation-layer.js.map +0 -1
  149. package/dist/esm/contour-layer/contour-layer.js +0 -316
  150. package/dist/esm/contour-layer/contour-layer.js.map +0 -1
  151. package/dist/esm/contour-layer/contour-utils.js +0 -81
  152. package/dist/esm/contour-layer/contour-utils.js.map +0 -1
  153. package/dist/esm/contour-layer/marching-squares-codes.js +0 -219
  154. package/dist/esm/contour-layer/marching-squares-codes.js.map +0 -1
  155. package/dist/esm/contour-layer/marching-squares.js +0 -151
  156. package/dist/esm/contour-layer/marching-squares.js.map +0 -1
  157. package/dist/esm/cpu-grid-layer/cpu-grid-layer.js +0 -186
  158. package/dist/esm/cpu-grid-layer/cpu-grid-layer.js.map +0 -1
  159. package/dist/esm/cpu-grid-layer/grid-aggregator.js +0 -142
  160. package/dist/esm/cpu-grid-layer/grid-aggregator.js.map +0 -1
  161. package/dist/esm/gpu-grid-layer/gpu-grid-cell-layer-fragment.glsl.js +0 -16
  162. package/dist/esm/gpu-grid-layer/gpu-grid-cell-layer-fragment.glsl.js.map +0 -1
  163. package/dist/esm/gpu-grid-layer/gpu-grid-cell-layer-vertex.glsl.js.map +0 -1
  164. package/dist/esm/gpu-grid-layer/gpu-grid-cell-layer.js +0 -196
  165. package/dist/esm/gpu-grid-layer/gpu-grid-cell-layer.js.map +0 -1
  166. package/dist/esm/gpu-grid-layer/gpu-grid-layer.js +0 -399
  167. package/dist/esm/gpu-grid-layer/gpu-grid-layer.js.map +0 -1
  168. package/dist/esm/grid-aggregation-layer.js +0 -240
  169. package/dist/esm/grid-aggregation-layer.js.map +0 -1
  170. package/dist/esm/grid-layer/grid-layer.js +0 -80
  171. package/dist/esm/grid-layer/grid-layer.js.map +0 -1
  172. package/dist/esm/heatmap-layer/heatmap-layer-utils.js +0 -55
  173. package/dist/esm/heatmap-layer/heatmap-layer-utils.js.map +0 -1
  174. package/dist/esm/heatmap-layer/heatmap-layer.js +0 -638
  175. package/dist/esm/heatmap-layer/heatmap-layer.js.map +0 -1
  176. package/dist/esm/heatmap-layer/max-fs.glsl.js.map +0 -1
  177. package/dist/esm/heatmap-layer/max-vs.glsl.js.map +0 -1
  178. package/dist/esm/heatmap-layer/triangle-layer-fragment.glsl.js +0 -43
  179. package/dist/esm/heatmap-layer/triangle-layer-fragment.glsl.js.map +0 -1
  180. package/dist/esm/heatmap-layer/triangle-layer-vertex.glsl.js +0 -33
  181. package/dist/esm/heatmap-layer/triangle-layer-vertex.glsl.js.map +0 -1
  182. package/dist/esm/heatmap-layer/triangle-layer.js +0 -78
  183. package/dist/esm/heatmap-layer/triangle-layer.js.map +0 -1
  184. package/dist/esm/heatmap-layer/weights-fs.glsl.js.map +0 -1
  185. package/dist/esm/heatmap-layer/weights-vs.glsl.js.map +0 -1
  186. package/dist/esm/hexagon-layer/hexagon-aggregator.js +0 -87
  187. package/dist/esm/hexagon-layer/hexagon-aggregator.js.map +0 -1
  188. package/dist/esm/hexagon-layer/hexagon-layer.js +0 -232
  189. package/dist/esm/hexagon-layer/hexagon-layer.js.map +0 -1
  190. package/dist/esm/index.js +0 -13
  191. package/dist/esm/index.js.map +0 -1
  192. package/dist/esm/screen-grid-layer/screen-grid-cell-layer.js +0 -203
  193. package/dist/esm/screen-grid-layer/screen-grid-cell-layer.js.map +0 -1
  194. package/dist/esm/screen-grid-layer/screen-grid-layer-fragment.glsl.js +0 -21
  195. package/dist/esm/screen-grid-layer/screen-grid-layer-fragment.glsl.js.map +0 -1
  196. package/dist/esm/screen-grid-layer/screen-grid-layer-vertex.glsl.js.map +0 -1
  197. package/dist/esm/screen-grid-layer/screen-grid-layer.js +0 -285
  198. package/dist/esm/screen-grid-layer/screen-grid-layer.js.map +0 -1
  199. package/dist/esm/types.js +0 -2
  200. package/dist/esm/types.js.map +0 -1
  201. package/dist/esm/utils/aggregation-operation-utils.js +0 -91
  202. package/dist/esm/utils/aggregation-operation-utils.js.map +0 -1
  203. package/dist/esm/utils/bin-sorter.js +0 -165
  204. package/dist/esm/utils/bin-sorter.js.map +0 -1
  205. package/dist/esm/utils/color-utils.js +0 -28
  206. package/dist/esm/utils/color-utils.js.map +0 -1
  207. package/dist/esm/utils/cpu-aggregator.js +0 -487
  208. package/dist/esm/utils/cpu-aggregator.js.map +0 -1
  209. package/dist/esm/utils/gpu-grid-aggregation/aggregate-all-fs.glsl.js +0 -21
  210. package/dist/esm/utils/gpu-grid-aggregation/aggregate-all-fs.glsl.js.map +0 -1
  211. package/dist/esm/utils/gpu-grid-aggregation/aggregate-all-vs.glsl.js +0 -35
  212. package/dist/esm/utils/gpu-grid-aggregation/aggregate-all-vs.glsl.js.map +0 -1
  213. package/dist/esm/utils/gpu-grid-aggregation/aggregate-to-grid-fs.glsl.js +0 -16
  214. package/dist/esm/utils/gpu-grid-aggregation/aggregate-to-grid-fs.glsl.js.map +0 -1
  215. package/dist/esm/utils/gpu-grid-aggregation/aggregate-to-grid-vs.glsl.js.map +0 -1
  216. package/dist/esm/utils/gpu-grid-aggregation/gpu-grid-aggregator-constants.js +0 -42
  217. package/dist/esm/utils/gpu-grid-aggregation/gpu-grid-aggregator-constants.js.map +0 -1
  218. package/dist/esm/utils/gpu-grid-aggregation/gpu-grid-aggregator-utils.js +0 -2
  219. package/dist/esm/utils/gpu-grid-aggregation/gpu-grid-aggregator-utils.js.map +0 -1
  220. package/dist/esm/utils/gpu-grid-aggregation/gpu-grid-aggregator.js +0 -720
  221. package/dist/esm/utils/gpu-grid-aggregation/gpu-grid-aggregator.js.map +0 -1
  222. package/dist/esm/utils/gpu-grid-aggregation/gpu-grid-aggregator.md +0 -155
  223. package/dist/esm/utils/gpu-grid-aggregation/transform-mean-vs.glsl.js +0 -19
  224. package/dist/esm/utils/gpu-grid-aggregation/transform-mean-vs.glsl.js.map +0 -1
  225. package/dist/esm/utils/grid-aggregation-utils.js +0 -109
  226. package/dist/esm/utils/grid-aggregation-utils.js.map +0 -1
  227. package/dist/esm/utils/prop-utils.js +0 -12
  228. package/dist/esm/utils/prop-utils.js.map +0 -1
  229. package/dist/esm/utils/resource-utils.js +0 -44
  230. package/dist/esm/utils/resource-utils.js.map +0 -1
  231. package/dist/esm/utils/scale-utils.js +0 -192
  232. package/dist/esm/utils/scale-utils.js.map +0 -1
  233. /package/{typed → dist}/aggregation-layer.d.ts +0 -0
  234. /package/{typed → dist}/aggregation-layer.d.ts.map +0 -0
  235. /package/{typed → dist}/contour-layer/contour-layer.d.ts +0 -0
  236. /package/{typed → dist}/contour-layer/contour-layer.d.ts.map +0 -0
  237. /package/{typed → dist}/contour-layer/contour-utils.d.ts +0 -0
  238. /package/{typed → dist}/contour-layer/contour-utils.d.ts.map +0 -0
  239. /package/{typed → dist}/contour-layer/marching-squares-codes.d.ts +0 -0
  240. /package/{typed → dist}/contour-layer/marching-squares-codes.d.ts.map +0 -0
  241. /package/{typed → dist}/contour-layer/marching-squares.d.ts +0 -0
  242. /package/{typed → dist}/contour-layer/marching-squares.d.ts.map +0 -0
  243. /package/{typed → dist}/cpu-grid-layer/cpu-grid-layer.d.ts +0 -0
  244. /package/{typed → dist}/cpu-grid-layer/cpu-grid-layer.d.ts.map +0 -0
  245. /package/{typed → dist}/cpu-grid-layer/grid-aggregator.d.ts +0 -0
  246. /package/{typed → dist}/cpu-grid-layer/grid-aggregator.d.ts.map +0 -0
  247. /package/{typed → dist}/gpu-grid-layer/gpu-grid-cell-layer-fragment.glsl.d.ts +0 -0
  248. /package/{typed → dist}/gpu-grid-layer/gpu-grid-cell-layer-fragment.glsl.d.ts.map +0 -0
  249. /package/{typed → dist}/gpu-grid-layer/gpu-grid-cell-layer-vertex.glsl.d.ts +0 -0
  250. /package/{typed → dist}/gpu-grid-layer/gpu-grid-cell-layer-vertex.glsl.d.ts.map +0 -0
  251. /package/{typed → dist}/gpu-grid-layer/gpu-grid-cell-layer.d.ts +0 -0
  252. /package/{typed → dist}/gpu-grid-layer/gpu-grid-cell-layer.d.ts.map +0 -0
  253. /package/{typed → dist}/gpu-grid-layer/gpu-grid-layer.d.ts +0 -0
  254. /package/{typed → dist}/gpu-grid-layer/gpu-grid-layer.d.ts.map +0 -0
  255. /package/{typed → dist}/grid-aggregation-layer.d.ts +0 -0
  256. /package/{typed → dist}/grid-aggregation-layer.d.ts.map +0 -0
  257. /package/{typed → dist}/grid-layer/grid-layer.d.ts +0 -0
  258. /package/{typed → dist}/grid-layer/grid-layer.d.ts.map +0 -0
  259. /package/{typed → dist}/heatmap-layer/heatmap-layer-utils.d.ts +0 -0
  260. /package/{typed → dist}/heatmap-layer/heatmap-layer-utils.d.ts.map +0 -0
  261. /package/{typed → dist}/heatmap-layer/heatmap-layer.d.ts +0 -0
  262. /package/{typed → dist}/heatmap-layer/heatmap-layer.d.ts.map +0 -0
  263. /package/{typed → dist}/heatmap-layer/max-fs.glsl.d.ts +0 -0
  264. /package/{typed → dist}/heatmap-layer/max-fs.glsl.d.ts.map +0 -0
  265. /package/{typed → dist}/heatmap-layer/max-vs.glsl.d.ts +0 -0
  266. /package/{typed → dist}/heatmap-layer/max-vs.glsl.d.ts.map +0 -0
  267. /package/{typed → dist}/heatmap-layer/triangle-layer-fragment.glsl.d.ts +0 -0
  268. /package/{typed → dist}/heatmap-layer/triangle-layer-fragment.glsl.d.ts.map +0 -0
  269. /package/{typed → dist}/heatmap-layer/triangle-layer-vertex.glsl.d.ts +0 -0
  270. /package/{typed → dist}/heatmap-layer/triangle-layer-vertex.glsl.d.ts.map +0 -0
  271. /package/{typed → dist}/heatmap-layer/triangle-layer.d.ts +0 -0
  272. /package/{typed → dist}/heatmap-layer/triangle-layer.d.ts.map +0 -0
  273. /package/{typed → dist}/heatmap-layer/weights-fs.glsl.d.ts +0 -0
  274. /package/{typed → dist}/heatmap-layer/weights-fs.glsl.d.ts.map +0 -0
  275. /package/{typed → dist}/heatmap-layer/weights-vs.glsl.d.ts +0 -0
  276. /package/{typed → dist}/heatmap-layer/weights-vs.glsl.d.ts.map +0 -0
  277. /package/{typed → dist}/hexagon-layer/hexagon-aggregator.d.ts +0 -0
  278. /package/{typed → dist}/hexagon-layer/hexagon-aggregator.d.ts.map +0 -0
  279. /package/{typed → dist}/hexagon-layer/hexagon-layer.d.ts +0 -0
  280. /package/{typed → dist}/hexagon-layer/hexagon-layer.d.ts.map +0 -0
  281. /package/{typed → dist}/index.d.ts +0 -0
  282. /package/{typed → dist}/index.d.ts.map +0 -0
  283. /package/{typed → dist}/screen-grid-layer/screen-grid-cell-layer.d.ts +0 -0
  284. /package/{typed → dist}/screen-grid-layer/screen-grid-cell-layer.d.ts.map +0 -0
  285. /package/{typed → dist}/screen-grid-layer/screen-grid-layer-fragment.glsl.d.ts +0 -0
  286. /package/{typed → dist}/screen-grid-layer/screen-grid-layer-fragment.glsl.d.ts.map +0 -0
  287. /package/{typed → dist}/screen-grid-layer/screen-grid-layer-vertex.glsl.d.ts +0 -0
  288. /package/{typed → dist}/screen-grid-layer/screen-grid-layer-vertex.glsl.d.ts.map +0 -0
  289. /package/{typed → dist}/screen-grid-layer/screen-grid-layer.d.ts +0 -0
  290. /package/{typed → dist}/screen-grid-layer/screen-grid-layer.d.ts.map +0 -0
  291. /package/{typed → dist}/types.d.ts +0 -0
  292. /package/{typed → dist}/types.d.ts.map +0 -0
  293. /package/{typed → dist}/utils/aggregation-operation-utils.d.ts +0 -0
  294. /package/{typed → dist}/utils/aggregation-operation-utils.d.ts.map +0 -0
  295. /package/{typed → dist}/utils/bin-sorter.d.ts +0 -0
  296. /package/{typed → dist}/utils/bin-sorter.d.ts.map +0 -0
  297. /package/{typed → dist}/utils/color-utils.d.ts +0 -0
  298. /package/{typed → dist}/utils/color-utils.d.ts.map +0 -0
  299. /package/{typed → dist}/utils/cpu-aggregator.d.ts +0 -0
  300. /package/{typed → dist}/utils/cpu-aggregator.d.ts.map +0 -0
  301. /package/{typed → dist}/utils/gpu-grid-aggregation/aggregate-all-fs.glsl.d.ts +0 -0
  302. /package/{typed → dist}/utils/gpu-grid-aggregation/aggregate-all-fs.glsl.d.ts.map +0 -0
  303. /package/{typed → dist}/utils/gpu-grid-aggregation/aggregate-all-vs.glsl.d.ts +0 -0
  304. /package/{typed → dist}/utils/gpu-grid-aggregation/aggregate-all-vs.glsl.d.ts.map +0 -0
  305. /package/{typed → dist}/utils/gpu-grid-aggregation/aggregate-to-grid-fs.glsl.d.ts +0 -0
  306. /package/{typed → dist}/utils/gpu-grid-aggregation/aggregate-to-grid-fs.glsl.d.ts.map +0 -0
  307. /package/{typed → dist}/utils/gpu-grid-aggregation/aggregate-to-grid-vs.glsl.d.ts +0 -0
  308. /package/{typed → dist}/utils/gpu-grid-aggregation/aggregate-to-grid-vs.glsl.d.ts.map +0 -0
  309. /package/{typed → dist}/utils/gpu-grid-aggregation/gpu-grid-aggregator-constants.d.ts +0 -0
  310. /package/{typed → dist}/utils/gpu-grid-aggregation/gpu-grid-aggregator-constants.d.ts.map +0 -0
  311. /package/{typed → dist}/utils/gpu-grid-aggregation/gpu-grid-aggregator-utils.d.ts +0 -0
  312. /package/{typed → dist}/utils/gpu-grid-aggregation/gpu-grid-aggregator-utils.d.ts.map +0 -0
  313. /package/{typed → dist}/utils/gpu-grid-aggregation/gpu-grid-aggregator.d.ts +0 -0
  314. /package/{typed → dist}/utils/gpu-grid-aggregation/transform-mean-vs.glsl.d.ts +0 -0
  315. /package/{typed → dist}/utils/gpu-grid-aggregation/transform-mean-vs.glsl.d.ts.map +0 -0
  316. /package/{typed → dist}/utils/grid-aggregation-utils.d.ts +0 -0
  317. /package/{typed → dist}/utils/grid-aggregation-utils.d.ts.map +0 -0
  318. /package/{typed → dist}/utils/prop-utils.d.ts +0 -0
  319. /package/{typed → dist}/utils/prop-utils.d.ts.map +0 -0
  320. /package/{typed → dist}/utils/resource-utils.d.ts +0 -0
  321. /package/{typed → dist}/utils/resource-utils.d.ts.map +0 -0
  322. /package/{typed → dist}/utils/scale-utils.d.ts +0 -0
  323. /package/{typed → dist}/utils/scale-utils.d.ts.map +0 -0
@@ -1,192 +0,0 @@
1
- import { log } from '@deck.gl/core';
2
- export function getScale(domain, range, scaleFunction) {
3
- const scale = scaleFunction;
4
-
5
- scale.domain = () => domain;
6
-
7
- scale.range = () => range;
8
-
9
- return scale;
10
- }
11
- export function getQuantizeScale(domain, range) {
12
- const scaleFunction = value => quantizeScale(domain, range, value);
13
-
14
- return getScale(domain, range, scaleFunction);
15
- }
16
- export function getLinearScale(domain, range) {
17
- const scaleFunction = value => linearScale(domain, range, value);
18
-
19
- return getScale(domain, range, scaleFunction);
20
- }
21
- export function getQuantileScale(domain, range) {
22
- const sortedDomain = domain.sort(ascending);
23
- let i = 0;
24
- const n = Math.max(1, range.length);
25
- const thresholds = new Array(n - 1);
26
-
27
- while (++i < n) {
28
- thresholds[i - 1] = threshold(sortedDomain, i / n);
29
- }
30
-
31
- const scaleFunction = value => thresholdsScale(thresholds, range, value);
32
-
33
- scaleFunction.thresholds = () => thresholds;
34
-
35
- return getScale(domain, range, scaleFunction);
36
- }
37
-
38
- function ascending(a, b) {
39
- return a - b;
40
- }
41
-
42
- function threshold(domain, fraction) {
43
- const domainLength = domain.length;
44
-
45
- if (fraction <= 0 || domainLength < 2) {
46
- return domain[0];
47
- }
48
-
49
- if (fraction >= 1) {
50
- return domain[domainLength - 1];
51
- }
52
-
53
- const domainFraction = (domainLength - 1) * fraction;
54
- const lowIndex = Math.floor(domainFraction);
55
- const low = domain[lowIndex];
56
- const high = domain[lowIndex + 1];
57
- return low + (high - low) * (domainFraction - lowIndex);
58
- }
59
-
60
- function bisectRight(a, x) {
61
- let lo = 0;
62
- let hi = a.length;
63
-
64
- while (lo < hi) {
65
- const mid = lo + hi >>> 1;
66
-
67
- if (ascending(a[mid], x) > 0) {
68
- hi = mid;
69
- } else {
70
- lo = mid + 1;
71
- }
72
- }
73
-
74
- return lo;
75
- }
76
-
77
- function thresholdsScale(thresholds, range, value) {
78
- return range[bisectRight(thresholds, value)];
79
- }
80
-
81
- function ordinalScale(domain, domainMap, range, value) {
82
- const key = `${value}`;
83
- let d = domainMap.get(key);
84
-
85
- if (d === undefined) {
86
- d = domain.push(value);
87
- domainMap.set(key, d);
88
- }
89
-
90
- return range[(d - 1) % range.length];
91
- }
92
-
93
- export function getOrdinalScale(domain, range) {
94
- const domainMap = new Map();
95
- const uniqueDomain = [];
96
-
97
- for (const d of domain) {
98
- const key = `${d}`;
99
-
100
- if (!domainMap.has(key)) {
101
- domainMap.set(key, uniqueDomain.push(d));
102
- }
103
- }
104
-
105
- const scaleFunction = value => ordinalScale(uniqueDomain, domainMap, range, value);
106
-
107
- return getScale(domain, range, scaleFunction);
108
- }
109
- export function quantizeScale(domain, range, value) {
110
- const domainRange = domain[1] - domain[0];
111
-
112
- if (domainRange <= 0) {
113
- log.warn('quantizeScale: invalid domain, returning range[0]')();
114
- return range[0];
115
- }
116
-
117
- const step = domainRange / range.length;
118
- const idx = Math.floor((value - domain[0]) / step);
119
- const clampIdx = Math.max(Math.min(idx, range.length - 1), 0);
120
- return range[clampIdx];
121
- }
122
- export function linearScale(domain, range, value) {
123
- return (value - domain[0]) / (domain[1] - domain[0]) * (range[1] - range[0]) + range[0];
124
- }
125
-
126
- function notNullOrUndefined(d) {
127
- return d !== undefined && d !== null;
128
- }
129
-
130
- export function unique(values) {
131
- const results = [];
132
- values.forEach(v => {
133
- if (!results.includes(v) && notNullOrUndefined(v)) {
134
- results.push(v);
135
- }
136
- });
137
- return results;
138
- }
139
-
140
- function getTruthyValues(data, valueAccessor) {
141
- const values = typeof valueAccessor === 'function' ? data.map(valueAccessor) : data;
142
- return values.filter(notNullOrUndefined);
143
- }
144
-
145
- export function getLinearDomain(data, valueAccessor) {
146
- const sorted = getTruthyValues(data, valueAccessor).sort();
147
- return sorted.length ? [sorted[0], sorted[sorted.length - 1]] : [0, 0];
148
- }
149
- export function getQuantileDomain(data, valueAccessor) {
150
- return getTruthyValues(data, valueAccessor);
151
- }
152
- export function getOrdinalDomain(data, valueAccessor) {
153
- return unique(getTruthyValues(data, valueAccessor));
154
- }
155
- export function getScaleDomain(scaleType, data, valueAccessor) {
156
- switch (scaleType) {
157
- case 'quantize':
158
- case 'linear':
159
- return getLinearDomain(data, valueAccessor);
160
-
161
- case 'quantile':
162
- return getQuantileDomain(data, valueAccessor);
163
-
164
- case 'ordinal':
165
- return getOrdinalDomain(data, valueAccessor);
166
-
167
- default:
168
- return getLinearDomain(data, valueAccessor);
169
- }
170
- }
171
- export function clamp(value, min, max) {
172
- return Math.max(min, Math.min(max, value));
173
- }
174
- export function getScaleFunctionByScaleType(scaleType) {
175
- switch (scaleType) {
176
- case 'quantize':
177
- return getQuantizeScale;
178
-
179
- case 'linear':
180
- return getLinearScale;
181
-
182
- case 'quantile':
183
- return getQuantileScale;
184
-
185
- case 'ordinal':
186
- return getOrdinalScale;
187
-
188
- default:
189
- return getQuantizeScale;
190
- }
191
- }
192
- //# sourceMappingURL=scale-utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/utils/scale-utils.js"],"names":["log","getScale","domain","range","scaleFunction","scale","getQuantizeScale","value","quantizeScale","getLinearScale","linearScale","getQuantileScale","sortedDomain","sort","ascending","i","n","Math","max","length","thresholds","Array","threshold","thresholdsScale","a","b","fraction","domainLength","domainFraction","lowIndex","floor","low","high","bisectRight","x","lo","hi","mid","ordinalScale","domainMap","key","d","get","undefined","push","set","getOrdinalScale","Map","uniqueDomain","has","domainRange","warn","step","idx","clampIdx","min","notNullOrUndefined","unique","values","results","forEach","v","includes","getTruthyValues","data","valueAccessor","map","filter","getLinearDomain","sorted","getQuantileDomain","getOrdinalDomain","getScaleDomain","scaleType","clamp","getScaleFunctionByScaleType"],"mappings":"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","sourcesContent":["// Copyright (c) 2015 - 2017 Uber Technologies, Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n\nimport {log} from '@deck.gl/core';\n\n// a scale function wrapper just like d3-scales\nexport function getScale(domain, range, scaleFunction) {\n const scale = scaleFunction;\n scale.domain = () => domain;\n scale.range = () => range;\n\n return scale;\n}\n\n// Quantize scale is similar to linear scales,\n// except it uses a discrete rather than continuous range\n// return a quantize scale function\nexport function getQuantizeScale(domain, range) {\n const scaleFunction = value => quantizeScale(domain, range, value);\n\n return getScale(domain, range, scaleFunction);\n}\n\n// return a linear scale function\nexport function getLinearScale(domain, range) {\n const scaleFunction = value => linearScale(domain, range, value);\n\n return getScale(domain, range, scaleFunction);\n}\n\nexport function getQuantileScale(domain, range) {\n // calculate threshold\n const sortedDomain = domain.sort(ascending);\n let i = 0;\n const n = Math.max(1, range.length);\n const thresholds = new Array(n - 1);\n while (++i < n) {\n thresholds[i - 1] = threshold(sortedDomain, i / n);\n }\n\n const scaleFunction = value => thresholdsScale(thresholds, range, value);\n scaleFunction.thresholds = () => thresholds;\n\n return getScale(domain, range, scaleFunction);\n}\n\nfunction ascending(a, b) {\n return a - b;\n}\n\nfunction threshold(domain, fraction) {\n const domainLength = domain.length;\n if (fraction <= 0 || domainLength < 2) {\n return domain[0];\n }\n if (fraction >= 1) {\n return domain[domainLength - 1];\n }\n\n const domainFraction = (domainLength - 1) * fraction;\n const lowIndex = Math.floor(domainFraction);\n const low = domain[lowIndex];\n const high = domain[lowIndex + 1];\n return low + (high - low) * (domainFraction - lowIndex);\n}\n\nfunction bisectRight(a, x) {\n let lo = 0;\n let hi = a.length;\n while (lo < hi) {\n const mid = (lo + hi) >>> 1;\n if (ascending(a[mid], x) > 0) {\n hi = mid;\n } else {\n lo = mid + 1;\n }\n }\n return lo;\n}\n\n// return a quantize scale function\nfunction thresholdsScale(thresholds, range, value) {\n return range[bisectRight(thresholds, value)];\n}\n\n// ordinal Scale\nfunction ordinalScale(domain, domainMap, range, value) {\n const key = `${value}`;\n let d = domainMap.get(key);\n if (d === undefined) {\n // update the domain\n d = domain.push(value);\n domainMap.set(key, d);\n }\n return range[(d - 1) % range.length];\n}\n\nexport function getOrdinalScale(domain, range) {\n const domainMap = new Map();\n const uniqueDomain = [];\n for (const d of domain) {\n const key = `${d}`;\n if (!domainMap.has(key)) {\n domainMap.set(key, uniqueDomain.push(d));\n }\n }\n\n const scaleFunction = value => ordinalScale(uniqueDomain, domainMap, range, value);\n\n return getScale(domain, range, scaleFunction);\n}\n\n// Quantize scale is similar to linear scales,\n// except it uses a discrete rather than continuous range\nexport function quantizeScale(domain, range, value) {\n const domainRange = domain[1] - domain[0];\n if (domainRange <= 0) {\n log.warn('quantizeScale: invalid domain, returning range[0]')();\n return range[0];\n }\n const step = domainRange / range.length;\n const idx = Math.floor((value - domain[0]) / step);\n const clampIdx = Math.max(Math.min(idx, range.length - 1), 0);\n\n return range[clampIdx];\n}\n\n// Linear scale maps continuous domain to continuous range\nexport function linearScale(domain, range, value) {\n return ((value - domain[0]) / (domain[1] - domain[0])) * (range[1] - range[0]) + range[0];\n}\n\n// get scale domains\nfunction notNullOrUndefined(d) {\n return d !== undefined && d !== null;\n}\n\nexport function unique(values) {\n const results = [];\n values.forEach(v => {\n if (!results.includes(v) && notNullOrUndefined(v)) {\n results.push(v);\n }\n });\n\n return results;\n}\n\nfunction getTruthyValues(data, valueAccessor) {\n const values = typeof valueAccessor === 'function' ? data.map(valueAccessor) : data;\n return values.filter(notNullOrUndefined);\n}\n\nexport function getLinearDomain(data, valueAccessor) {\n const sorted = getTruthyValues(data, valueAccessor).sort();\n return sorted.length ? [sorted[0], sorted[sorted.length - 1]] : [0, 0];\n}\n\nexport function getQuantileDomain(data, valueAccessor) {\n return getTruthyValues(data, valueAccessor);\n}\n\nexport function getOrdinalDomain(data, valueAccessor) {\n return unique(getTruthyValues(data, valueAccessor));\n}\n\nexport function getScaleDomain(scaleType, data, valueAccessor) {\n switch (scaleType) {\n case 'quantize':\n case 'linear':\n return getLinearDomain(data, valueAccessor);\n\n case 'quantile':\n return getQuantileDomain(data, valueAccessor);\n\n case 'ordinal':\n return getOrdinalDomain(data, valueAccessor);\n\n default:\n return getLinearDomain(data, valueAccessor);\n }\n}\n\nexport function clamp(value, min, max) {\n return Math.max(min, Math.min(max, value));\n}\n\nexport function getScaleFunctionByScaleType(scaleType) {\n switch (scaleType) {\n case 'quantize':\n return getQuantizeScale;\n case 'linear':\n return getLinearScale;\n case 'quantile':\n return getQuantileScale;\n case 'ordinal':\n return getOrdinalScale;\n\n default:\n return getQuantizeScale;\n }\n}\n"],"file":"scale-utils.js"}
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes