@maplibre/mlt 0.0.1-alpha.7 → 1.0.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 (256) hide show
  1. package/dist/{encodings → decoding}/decodingUtils.js +18 -33
  2. package/dist/decoding/decodingUtils.js.map +1 -0
  3. package/dist/decoding/decodingUtils.spec.d.ts +1 -0
  4. package/dist/decoding/decodingUtils.spec.js +125 -0
  5. package/dist/decoding/decodingUtils.spec.js.map +1 -0
  6. package/dist/{encodings → decoding}/fsstDecoder.js +1 -4
  7. package/dist/decoding/fsstDecoder.js.map +1 -0
  8. package/dist/decoding/fsstDecoder.spec.d.ts +1 -0
  9. package/dist/decoding/fsstDecoder.spec.js +36 -0
  10. package/dist/decoding/fsstDecoder.spec.js.map +1 -0
  11. package/dist/{encodings → decoding}/geometryDecoder.js +83 -101
  12. package/dist/decoding/geometryDecoder.js.map +1 -0
  13. package/dist/decoding/geometryDecoder.spec.d.ts +1 -0
  14. package/dist/decoding/geometryDecoder.spec.js +5 -0
  15. package/dist/decoding/geometryDecoder.spec.js.map +1 -0
  16. package/dist/decoding/geometryScaling.js +2 -0
  17. package/dist/decoding/geometryScaling.js.map +1 -0
  18. package/dist/{encodings → decoding}/intWrapper.js +2 -4
  19. package/dist/decoding/intWrapper.js.map +1 -0
  20. package/dist/{encodings → decoding}/integerDecodingUtils.d.ts +13 -0
  21. package/dist/{encodings → decoding}/integerDecodingUtils.js +127 -130
  22. package/dist/decoding/integerDecodingUtils.js.map +1 -0
  23. package/dist/decoding/integerDecodingUtils.spec.d.ts +1 -0
  24. package/dist/decoding/integerDecodingUtils.spec.js +194 -0
  25. package/dist/decoding/integerDecodingUtils.spec.js.map +1 -0
  26. package/dist/{encodings → decoding}/integerStreamDecoder.d.ts +1 -1
  27. package/dist/decoding/integerStreamDecoder.js +263 -0
  28. package/dist/decoding/integerStreamDecoder.js.map +1 -0
  29. package/dist/decoding/integerStreamDecoder.spec.d.ts +1 -0
  30. package/dist/decoding/integerStreamDecoder.spec.js +125 -0
  31. package/dist/decoding/integerStreamDecoder.spec.js.map +1 -0
  32. package/dist/{encodings → decoding}/propertyDecoder.d.ts +1 -1
  33. package/dist/decoding/propertyDecoder.js +140 -0
  34. package/dist/decoding/propertyDecoder.js.map +1 -0
  35. package/dist/decoding/propertyDecoder.spec.d.ts +1 -0
  36. package/dist/decoding/propertyDecoder.spec.js +682 -0
  37. package/dist/decoding/propertyDecoder.spec.js.map +1 -0
  38. package/dist/{encodings → decoding}/stringDecoder.d.ts +1 -1
  39. package/dist/decoding/stringDecoder.js +142 -0
  40. package/dist/decoding/stringDecoder.js.map +1 -0
  41. package/dist/decoding/stringDecoder.spec.d.ts +1 -0
  42. package/dist/decoding/stringDecoder.spec.js +311 -0
  43. package/dist/decoding/stringDecoder.spec.js.map +1 -0
  44. package/dist/index.d.ts +5 -4
  45. package/dist/index.js +5 -18
  46. package/dist/index.js.map +1 -1
  47. package/dist/metadata/tile/dictionaryType.js +2 -5
  48. package/dist/metadata/tile/dictionaryType.js.map +1 -1
  49. package/dist/metadata/tile/lengthType.js +2 -5
  50. package/dist/metadata/tile/lengthType.js.map +1 -1
  51. package/dist/metadata/tile/logicalLevelTechnique.js +2 -5
  52. package/dist/metadata/tile/logicalLevelTechnique.js.map +1 -1
  53. package/dist/metadata/tile/logicalStreamType.d.ts +3 -3
  54. package/dist/metadata/tile/logicalStreamType.js +4 -5
  55. package/dist/metadata/tile/logicalStreamType.js.map +1 -1
  56. package/dist/metadata/tile/mortonEncodedStreamMetadata.d.ts +6 -6
  57. package/dist/metadata/tile/mortonEncodedStreamMetadata.js +8 -10
  58. package/dist/metadata/tile/mortonEncodedStreamMetadata.js.map +1 -1
  59. package/dist/metadata/tile/offsetType.js +2 -5
  60. package/dist/metadata/tile/offsetType.js.map +1 -1
  61. package/dist/metadata/tile/physicalLevelTechnique.js +2 -5
  62. package/dist/metadata/tile/physicalLevelTechnique.js.map +1 -1
  63. package/dist/metadata/tile/physicalStreamType.js +2 -5
  64. package/dist/metadata/tile/physicalStreamType.js.map +1 -1
  65. package/dist/metadata/tile/rleEncodedStreamMetadata.d.ts +10 -6
  66. package/dist/metadata/tile/rleEncodedStreamMetadata.js +14 -10
  67. package/dist/metadata/tile/rleEncodedStreamMetadata.js.map +1 -1
  68. package/dist/metadata/tile/scalarType.js +2 -5
  69. package/dist/metadata/tile/scalarType.js.map +1 -1
  70. package/dist/metadata/tile/streamMetadata.d.ts +11 -5
  71. package/dist/metadata/tile/streamMetadata.js +35 -24
  72. package/dist/metadata/tile/streamMetadata.js.map +1 -1
  73. package/dist/metadata/tile/streamMetadataDecoder.d.ts +2 -2
  74. package/dist/metadata/tile/streamMetadataDecoder.js +13 -17
  75. package/dist/metadata/tile/streamMetadataDecoder.js.map +1 -1
  76. package/dist/metadata/tileset/embeddedTilesetMetadataDecoder.d.ts +2 -2
  77. package/dist/metadata/tileset/embeddedTilesetMetadataDecoder.js +40 -32
  78. package/dist/metadata/tileset/embeddedTilesetMetadataDecoder.js.map +1 -1
  79. package/dist/metadata/tileset/tilesetMetadata.d.ts +80 -0
  80. package/dist/metadata/tileset/tilesetMetadata.js +29 -0
  81. package/dist/metadata/tileset/tilesetMetadata.js.map +1 -0
  82. package/dist/metadata/tileset/typeMap.d.ts +1 -1
  83. package/dist/metadata/tileset/typeMap.js +63 -59
  84. package/dist/metadata/tileset/typeMap.js.map +1 -1
  85. package/dist/mltDecoder.d.ts +1 -1
  86. package/dist/mltDecoder.js +58 -64
  87. package/dist/mltDecoder.js.map +1 -1
  88. package/dist/mltDecoder.spec.d.ts +1 -0
  89. package/dist/mltDecoder.spec.js +152 -0
  90. package/dist/mltDecoder.spec.js.map +1 -0
  91. package/dist/mltMetadata.js +4 -7
  92. package/dist/mltMetadata.js.map +1 -1
  93. package/dist/vector/constant/intConstVector.d.ts +0 -13
  94. package/dist/vector/constant/intConstVector.js +2 -81
  95. package/dist/vector/constant/intConstVector.js.map +1 -1
  96. package/dist/vector/constant/longConstVector.d.ts +0 -13
  97. package/dist/vector/constant/longConstVector.js +2 -79
  98. package/dist/vector/constant/longConstVector.js.map +1 -1
  99. package/dist/vector/dictionary/stringDictionaryVector.d.ts +0 -14
  100. package/dist/vector/dictionary/stringDictionaryVector.js +6 -167
  101. package/dist/vector/dictionary/stringDictionaryVector.js.map +1 -1
  102. package/dist/vector/featureTable.d.ts +4 -0
  103. package/dist/vector/featureTable.js +48 -12
  104. package/dist/vector/featureTable.js.map +1 -1
  105. package/dist/vector/fixedSizeVector.js +2 -9
  106. package/dist/vector/fixedSizeVector.js.map +1 -1
  107. package/dist/vector/flat/bitVector.js +3 -4
  108. package/dist/vector/flat/bitVector.js.map +1 -1
  109. package/dist/vector/flat/booleanFlatVector.d.ts +0 -13
  110. package/dist/vector/flat/booleanFlatVector.js +3 -46
  111. package/dist/vector/flat/booleanFlatVector.js.map +1 -1
  112. package/dist/vector/flat/doubleFlatVector.d.ts +0 -13
  113. package/dist/vector/flat/doubleFlatVector.js +2 -101
  114. package/dist/vector/flat/doubleFlatVector.js.map +1 -1
  115. package/dist/vector/flat/floatFlatVector.d.ts +0 -13
  116. package/dist/vector/flat/floatFlatVector.js +2 -101
  117. package/dist/vector/flat/floatFlatVector.js.map +1 -1
  118. package/dist/vector/flat/floatFlatVector.spec.d.ts +1 -0
  119. package/dist/vector/flat/floatFlatVector.spec.js +14 -0
  120. package/dist/vector/flat/floatFlatVector.spec.js.map +1 -0
  121. package/dist/vector/flat/intFlatVector.d.ts +0 -13
  122. package/dist/vector/flat/intFlatVector.js +2 -115
  123. package/dist/vector/flat/intFlatVector.js.map +1 -1
  124. package/dist/vector/flat/intFlatVector.spec.d.ts +1 -0
  125. package/dist/vector/flat/intFlatVector.spec.js +15 -0
  126. package/dist/vector/flat/intFlatVector.spec.js.map +1 -0
  127. package/dist/vector/flat/longFlatVector.d.ts +0 -13
  128. package/dist/vector/flat/longFlatVector.js +2 -116
  129. package/dist/vector/flat/longFlatVector.js.map +1 -1
  130. package/dist/vector/flat/longFlatVector.spec.d.ts +1 -0
  131. package/dist/vector/flat/longFlatVector.spec.js +14 -0
  132. package/dist/vector/flat/longFlatVector.spec.js.map +1 -0
  133. package/dist/vector/flat/stringFlatVector.d.ts +0 -13
  134. package/dist/vector/flat/stringFlatVector.js +5 -155
  135. package/dist/vector/flat/stringFlatVector.js.map +1 -1
  136. package/dist/vector/fsst-dictionary/stringFsstDictionaryVector.d.ts +0 -13
  137. package/dist/vector/fsst-dictionary/stringFsstDictionaryVector.js +14 -51
  138. package/dist/vector/fsst-dictionary/stringFsstDictionaryVector.js.map +1 -1
  139. package/dist/vector/fsst-dictionary/stringFsstDictionaryVector.spec.d.ts +1 -0
  140. package/dist/vector/fsst-dictionary/stringFsstDictionaryVector.spec.js +28 -0
  141. package/dist/vector/fsst-dictionary/stringFsstDictionaryVector.spec.js.map +1 -0
  142. package/dist/vector/geometry/constGeometryVector.d.ts +0 -4
  143. package/dist/vector/geometry/constGeometryVector.js +9 -30
  144. package/dist/vector/geometry/constGeometryVector.js.map +1 -1
  145. package/dist/vector/geometry/constGpuVector.d.ts +0 -4
  146. package/dist/vector/geometry/constGpuVector.js +4 -25
  147. package/dist/vector/geometry/constGpuVector.js.map +1 -1
  148. package/dist/vector/geometry/flatGeometryVector.d.ts +0 -4
  149. package/dist/vector/geometry/flatGeometryVector.js +8 -36
  150. package/dist/vector/geometry/flatGeometryVector.js.map +1 -1
  151. package/dist/vector/geometry/flatGpuVector.d.ts +0 -4
  152. package/dist/vector/geometry/flatGpuVector.js +3 -29
  153. package/dist/vector/geometry/flatGpuVector.js.map +1 -1
  154. package/dist/vector/geometry/geometryType.js +4 -7
  155. package/dist/vector/geometry/geometryType.js.map +1 -1
  156. package/dist/vector/geometry/geometryVector.d.ts +8 -7
  157. package/dist/vector/geometry/geometryVector.js +13 -14
  158. package/dist/vector/geometry/geometryVector.js.map +1 -1
  159. package/dist/vector/geometry/geometryVectorConverter.d.ts +2 -2
  160. package/dist/vector/geometry/geometryVectorConverter.js +38 -41
  161. package/dist/vector/geometry/geometryVectorConverter.js.map +1 -1
  162. package/dist/vector/geometry/gpuVector.d.ts +8 -7
  163. package/dist/vector/geometry/gpuVector.js +97 -13
  164. package/dist/vector/geometry/gpuVector.js.map +1 -1
  165. package/dist/vector/geometry/spaceFillingCurve.js +10 -5
  166. package/dist/vector/geometry/spaceFillingCurve.js.map +1 -1
  167. package/dist/vector/geometry/topologyVector.js +4 -4
  168. package/dist/vector/geometry/topologyVector.js.map +1 -1
  169. package/dist/vector/geometry/vertexBufferType.js +2 -5
  170. package/dist/vector/geometry/vertexBufferType.js.map +1 -1
  171. package/dist/vector/geometry/zOrderCurve.d.ts +1 -1
  172. package/dist/vector/geometry/zOrderCurve.js +3 -9
  173. package/dist/vector/geometry/zOrderCurve.js.map +1 -1
  174. package/dist/vector/geometry/zOrderCurve.spec.d.ts +1 -0
  175. package/dist/vector/geometry/zOrderCurve.spec.js +14 -0
  176. package/dist/vector/geometry/zOrderCurve.spec.js.map +1 -0
  177. package/dist/vector/intVector.js +1 -2
  178. package/dist/vector/sequence/intSequenceVector.d.ts +0 -13
  179. package/dist/vector/sequence/intSequenceVector.js +2 -64
  180. package/dist/vector/sequence/intSequenceVector.js.map +1 -1
  181. package/dist/vector/sequence/longSequenceVector.d.ts +0 -13
  182. package/dist/vector/sequence/longSequenceVector.js +2 -49
  183. package/dist/vector/sequence/longSequenceVector.js.map +1 -1
  184. package/dist/vector/sequence/longSequenceVektor.spec.d.ts +1 -0
  185. package/dist/vector/sequence/longSequenceVektor.spec.js +11 -0
  186. package/dist/vector/sequence/longSequenceVektor.spec.js.map +1 -0
  187. package/dist/vector/sequence/sequenceVector.js +3 -9
  188. package/dist/vector/sequence/sequenceVector.js.map +1 -1
  189. package/dist/vector/variableSizeVector.js +3 -9
  190. package/dist/vector/variableSizeVector.js.map +1 -1
  191. package/dist/vector/vector.d.ts +0 -17
  192. package/dist/vector/vector.js +6 -49
  193. package/dist/vector/vector.js.map +1 -1
  194. package/dist/vector/vectorType.js +2 -5
  195. package/dist/vector/vectorType.js.map +1 -1
  196. package/package.json +10 -31
  197. package/dist/encodings/decodingUtils.js.map +0 -1
  198. package/dist/encodings/doubleDecoder.d.ts +0 -4
  199. package/dist/encodings/doubleDecoder.js +0 -22
  200. package/dist/encodings/doubleDecoder.js.map +0 -1
  201. package/dist/encodings/fastpfor/bitpacking.d.ts +0 -51
  202. package/dist/encodings/fastpfor/bitpacking.js +0 -4444
  203. package/dist/encodings/fastpfor/bitpacking.js.map +0 -1
  204. package/dist/encodings/fastpfor/codec.d.ts +0 -19
  205. package/dist/encodings/fastpfor/codec.js +0 -3
  206. package/dist/encodings/fastpfor/codec.js.map +0 -1
  207. package/dist/encodings/fastpfor/fastpfor.d.ts +0 -38
  208. package/dist/encodings/fastpfor/fastpfor.js +0 -123
  209. package/dist/encodings/fastpfor/fastpfor.js.map +0 -1
  210. package/dist/encodings/fastpfor/index.d.ts +0 -20
  211. package/dist/encodings/fastpfor/index.js +0 -47
  212. package/dist/encodings/fastpfor/index.js.map +0 -1
  213. package/dist/encodings/fastpfor/util.d.ts +0 -2
  214. package/dist/encodings/fastpfor/util.js +0 -16
  215. package/dist/encodings/fastpfor/util.js.map +0 -1
  216. package/dist/encodings/fastpfor/varint.d.ts +0 -18
  217. package/dist/encodings/fastpfor/varint.js +0 -125
  218. package/dist/encodings/fastpfor/varint.js.map +0 -1
  219. package/dist/encodings/fsstDecoder.js.map +0 -1
  220. package/dist/encodings/geometryDecoder.js.map +0 -1
  221. package/dist/encodings/geometryScaling.js +0 -3
  222. package/dist/encodings/geometryScaling.js.map +0 -1
  223. package/dist/encodings/intWrapper.js.map +0 -1
  224. package/dist/encodings/integerDecodingUtils.js.map +0 -1
  225. package/dist/encodings/integerStreamDecoder.js +0 -254
  226. package/dist/encodings/integerStreamDecoder.js.map +0 -1
  227. package/dist/encodings/propertyDecoder.js +0 -146
  228. package/dist/encodings/propertyDecoder.js.map +0 -1
  229. package/dist/encodings/stringDecoder.js +0 -147
  230. package/dist/encodings/stringDecoder.js.map +0 -1
  231. package/dist/metadata/tileset/tilesetMetadata.g.d.ts +0 -418
  232. package/dist/metadata/tileset/tilesetMetadata.g.js +0 -476
  233. package/dist/metadata/tileset/tilesetMetadata.g.js.map +0 -1
  234. package/dist/vector/filter/constSelectionVector.d.ts +0 -0
  235. package/dist/vector/filter/constSelectionVector.js +0 -1
  236. package/dist/vector/filter/constSelectionVector.js.map +0 -1
  237. package/dist/vector/filter/flatSelectionVector.d.ts +0 -16
  238. package/dist/vector/filter/flatSelectionVector.js +0 -42
  239. package/dist/vector/filter/flatSelectionVector.js.map +0 -1
  240. package/dist/vector/filter/selectionVector.d.ts +0 -8
  241. package/dist/vector/filter/selectionVector.js +0 -3
  242. package/dist/vector/filter/selectionVector.js.map +0 -1
  243. package/dist/vector/filter/selectionVectorUtils.d.ts +0 -7
  244. package/dist/vector/filter/selectionVectorUtils.js +0 -44
  245. package/dist/vector/filter/selectionVectorUtils.js.map +0 -1
  246. package/dist/vector/filter/sequenceSelectionVector.d.ts +0 -0
  247. package/dist/vector/filter/sequenceSelectionVector.js +0 -1
  248. package/dist/vector/filter/sequenceSelectionVector.js.map +0 -1
  249. package/dist/vector/geometry/point.d.ts +0 -195
  250. package/dist/vector/geometry/point.js +0 -283
  251. package/dist/vector/geometry/point.js.map +0 -1
  252. /package/dist/{encodings → decoding}/decodingUtils.d.ts +0 -0
  253. /package/dist/{encodings → decoding}/fsstDecoder.d.ts +0 -0
  254. /package/dist/{encodings → decoding}/geometryDecoder.d.ts +0 -0
  255. /package/dist/{encodings → decoding}/geometryScaling.d.ts +0 -0
  256. /package/dist/{encodings → decoding}/intWrapper.d.ts +0 -0
@@ -1,20 +1,7 @@
1
1
  import { VariableSizeVector } from "../variableSizeVector";
2
2
  import type BitVector from "./bitVector";
3
- import { type SelectionVector } from "../filter/selectionVector";
4
3
  export declare class StringFlatVector extends VariableSizeVector<Uint8Array, string> {
5
4
  private readonly textEncoder;
6
5
  constructor(name: string, offsetBuffer: Int32Array, dataBuffer: Uint8Array, nullabilityBuffer?: BitVector);
7
6
  protected getValueFromBuffer(index: number): string;
8
- filter(testValue: string): SelectionVector;
9
- match(testValues: string[]): SelectionVector;
10
- filterSelected(value: string, selectionVector: SelectionVector): void;
11
- matchSelected(values: string[], selectionVector: SelectionVector): void;
12
- filterNotEqual(testValue: string): SelectionVector;
13
- filterNotEqualSelected(value: string, selectionVector: SelectionVector): void;
14
- noneMatch(testValues: string[]): SelectionVector;
15
- noneMatchSelected(values: string[], selectionVector: SelectionVector): void;
16
- greaterThanOrEqualTo(value: string): SelectionVector;
17
- greaterThanOrEqualToSelected(value: string, selectionVector: SelectionVector): void;
18
- smallerThanOrEqualTo(value: string): SelectionVector;
19
- smallerThanOrEqualToSelected(value: string, selectionVector: SelectionVector): void;
20
7
  }
@@ -1,10 +1,7 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.StringFlatVector = void 0;
4
- const variableSizeVector_1 = require("../variableSizeVector");
5
- const decodingUtils_1 = require("../../encodings/decodingUtils");
6
- const flatSelectionVector_1 = require("../filter/flatSelectionVector");
7
- class StringFlatVector extends variableSizeVector_1.VariableSizeVector {
1
+ import { VariableSizeVector } from "../variableSizeVector";
2
+ import { decodeString } from "../../decoding/decodingUtils";
3
+ export class StringFlatVector extends VariableSizeVector {
4
+ textEncoder;
8
5
  constructor(name, offsetBuffer, dataBuffer, nullabilityBuffer) {
9
6
  super(name, offsetBuffer, dataBuffer, nullabilityBuffer ?? offsetBuffer.length - 1);
10
7
  this.textEncoder = new TextEncoder();
@@ -12,154 +9,7 @@ class StringFlatVector extends variableSizeVector_1.VariableSizeVector {
12
9
  getValueFromBuffer(index) {
13
10
  const start = this.offsetBuffer[index];
14
11
  const end = this.offsetBuffer[index + 1];
15
- return (0, decodingUtils_1.decodeString)(this.dataBuffer, start, end);
16
- }
17
- filter(testValue) {
18
- const selectionVector = [];
19
- const predicateUtf8 = this.textEncoder.encode(testValue);
20
- for (let i = 0; i < this.size - 1; i++) {
21
- const length = this.offsetBuffer[i + 1] - this.offsetBuffer[i];
22
- //TODO: get rid of every
23
- if ((!this.nullabilityBuffer || this.nullabilityBuffer.get(i)) && length === predicateUtf8.length &&
24
- this.dataBuffer.subarray(this.offsetBuffer[i], this.offsetBuffer[i + 1]).
25
- every((val, idx) => val === predicateUtf8[idx])) {
26
- selectionVector.push(i);
27
- }
28
- }
29
- return new flatSelectionVector_1.FlatSelectionVector(selectionVector);
30
- }
31
- match(testValues) {
32
- const selectionVector = [];
33
- const numPredicates = testValues.length;
34
- const testValuesUtf8 = testValues.map(v => this.textEncoder.encode(v));
35
- for (let i = 0; i < this.size - 1; i++) {
36
- const valueLength = this.offsetBuffer[i + 1] - this.offsetBuffer[i];
37
- const valueUtf8 = this.dataBuffer.subarray(this.offsetBuffer[i], this.offsetBuffer[i + 1]);
38
- for (let j = 0; j < numPredicates; j++) {
39
- //TODO: get rid of every
40
- if ((!this.nullabilityBuffer || this.nullabilityBuffer.get(i)) && valueLength === testValuesUtf8[j].length &&
41
- valueUtf8.every((val, idx) => val === testValuesUtf8[j][idx])) {
42
- selectionVector.push(i);
43
- }
44
- }
45
- }
46
- return new flatSelectionVector_1.FlatSelectionVector(selectionVector);
47
- }
48
- filterSelected(value, selectionVector) {
49
- const predicateUtf8 = this.textEncoder.encode(value);
50
- const vector = selectionVector.selectionValues();
51
- let limit = 0;
52
- for (let i = 0; i < selectionVector.limit; i++) {
53
- const index = selectionVector[i];
54
- const length = this.offsetBuffer[index + 1] - this.offsetBuffer[index];
55
- //TODO: get rid of every
56
- if ((!this.nullabilityBuffer || this.nullabilityBuffer.get(i)) && length === predicateUtf8.length &&
57
- this.dataBuffer.subarray(this.offsetBuffer[index], this.offsetBuffer[index + 1]).
58
- every((val, idx) => val === predicateUtf8[idx])) {
59
- vector[limit++] = index;
60
- }
61
- }
62
- selectionVector.setLimit(limit);
63
- }
64
- matchSelected(values, selectionVector) {
65
- //TODO: get rid of map?
66
- const testValuesUtf8 = values.map(v => this.textEncoder.encode(v));
67
- //TODO: sort and use binary search?
68
- const vector = selectionVector.selectionValues();
69
- let limit = 0;
70
- for (let i = 0; i < selectionVector.limit; i++) {
71
- const index = selectionVector[i];
72
- const value = this.dataBuffer.subarray(this.offsetBuffer[index], this.offsetBuffer[index + 1]);
73
- for (const testValue of testValuesUtf8) {
74
- //TODO: get rid of every
75
- if ((!this.nullabilityBuffer || this.nullabilityBuffer.get(i)) && value.length === testValue.length &&
76
- value.every((val, idx) => val === testValue[idx])) {
77
- vector[limit++] = index;
78
- break;
79
- }
80
- }
81
- }
82
- selectionVector.setLimit(limit);
83
- }
84
- filterNotEqual(testValue) {
85
- const selectionVector = [];
86
- const predicateUtf8 = this.textEncoder.encode(testValue);
87
- for (let i = 0; i < this.size - 1; i++) {
88
- const length = this.offsetBuffer[i + 1] - this.offsetBuffer[i];
89
- //TODO: get rid of every
90
- if ((!this.nullabilityBuffer || this.nullabilityBuffer.get(i)) && (length !== predicateUtf8.length ||
91
- !this.dataBuffer.subarray(this.offsetBuffer[i], this.offsetBuffer[i + 1]).
92
- every((val, idx) => val === predicateUtf8[idx]))) {
93
- selectionVector.push(i);
94
- }
95
- }
96
- return new flatSelectionVector_1.FlatSelectionVector(selectionVector);
97
- }
98
- filterNotEqualSelected(value, selectionVector) {
99
- const predicateUtf8 = this.textEncoder.encode(value);
100
- const vector = selectionVector.selectionValues();
101
- let limit = 0;
102
- for (let i = 0; i < selectionVector.limit; i++) {
103
- const index = selectionVector[i];
104
- const length = this.offsetBuffer[index + 1] - this.offsetBuffer[index];
105
- //TODO: get rid of every
106
- if ((!this.nullabilityBuffer || this.nullabilityBuffer.get(i)) && (length !== predicateUtf8.length ||
107
- !this.dataBuffer.subarray(this.offsetBuffer[i], this.offsetBuffer[i + 1]).
108
- every((val, idx) => val === predicateUtf8[idx]))) {
109
- vector[limit++] = index;
110
- }
111
- }
112
- selectionVector.setLimit(limit);
113
- }
114
- noneMatch(testValues) {
115
- const selectionVector = [];
116
- const numPredicates = testValues.length;
117
- const testValuesUtf8 = testValues.map(v => this.textEncoder.encode(v));
118
- for (let i = 0; i < this.size - 1; i++) {
119
- const valueLength = this.offsetBuffer[i + 1] - this.offsetBuffer[i];
120
- const valueUtf8 = this.dataBuffer.subarray(this.offsetBuffer[i], this.offsetBuffer[i + 1]);
121
- for (let j = 0; j < numPredicates; j++) {
122
- //TODO: get rid of every
123
- if ((!this.nullabilityBuffer || this.nullabilityBuffer.get(i)) && (valueLength !== testValuesUtf8[j].length ||
124
- !valueUtf8.every((val, idx) => val === testValuesUtf8[j][idx]))) {
125
- selectionVector.push(i);
126
- }
127
- }
128
- }
129
- return new flatSelectionVector_1.FlatSelectionVector(selectionVector);
130
- }
131
- noneMatchSelected(values, selectionVector) {
132
- //TODO: get rid of map?
133
- const testValuesUtf8 = values.map(v => this.textEncoder.encode(v));
134
- //TODO: sort and use binary search?
135
- const vector = selectionVector.selectionValues();
136
- let limit = 0;
137
- for (let i = 0; i < selectionVector.limit; i++) {
138
- const index = selectionVector[i];
139
- const value = this.dataBuffer.subarray(this.offsetBuffer[index], this.offsetBuffer[index + 1]);
140
- for (const testValue of testValuesUtf8) {
141
- //TODO: get rid of every
142
- if ((!this.nullabilityBuffer || this.nullabilityBuffer.get(i)) && (value.length !== testValue.length ||
143
- !value.every((val, idx) => val === testValue[idx]))) {
144
- vector[limit++] = index;
145
- break;
146
- }
147
- }
148
- }
149
- selectionVector.setLimit(limit);
150
- }
151
- greaterThanOrEqualTo(value) {
152
- throw new Error("Not implemented yet.");
153
- }
154
- greaterThanOrEqualToSelected(value, selectionVector) {
155
- throw new Error("Not implemented yet.");
156
- }
157
- smallerThanOrEqualTo(value) {
158
- throw new Error("Not implemented yet.");
159
- }
160
- smallerThanOrEqualToSelected(value, selectionVector) {
161
- throw new Error("Not implemented yet.");
12
+ return decodeString(this.dataBuffer, start, end);
162
13
  }
163
14
  }
164
- exports.StringFlatVector = StringFlatVector;
165
15
  //# sourceMappingURL=stringFlatVector.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"stringFlatVector.js","sourceRoot":"","sources":["../../../src/vector/flat/stringFlatVector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stringFlatVector.js","sourceRoot":"","sources":["../../../src/vector/flat/stringFlatVector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAE3D,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAE5D,MAAM,OAAO,gBAAiB,SAAQ,kBAAsC;IACvD,WAAW,CAAc;IAE1C,YAAY,IAAY,EAAE,YAAwB,EAAE,UAAsB,EAAE,iBAA6B;QACrG,KAAK,CAAC,IAAI,EAAE,YAAY,EAAE,UAAU,EAAE,iBAAiB,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACpF,IAAI,CAAC,WAAW,GAAG,IAAI,WAAW,EAAE,CAAC;IACzC,CAAC;IAES,kBAAkB,CAAC,KAAa;QACtC,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QACvC,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;QACzC,OAAO,YAAY,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;IACrD,CAAC;CACJ"}
@@ -1,6 +1,5 @@
1
1
  import { VariableSizeVector } from "../variableSizeVector";
2
2
  import type BitVector from "../flat/bitVector";
3
- import { type SelectionVector } from "../filter/selectionVector";
4
3
  export declare class StringFsstDictionaryVector extends VariableSizeVector<Uint8Array, string> {
5
4
  private readonly indexBuffer;
6
5
  private readonly symbolOffsetBuffer;
@@ -10,18 +9,6 @@ export declare class StringFsstDictionaryVector extends VariableSizeVector<Uint8
10
9
  private lengthBuffer;
11
10
  private decodedDictionary;
12
11
  constructor(name: string, indexBuffer: Int32Array, offsetBuffer: Int32Array, dictionaryBuffer: Uint8Array, symbolOffsetBuffer: Int32Array, symbolTableBuffer: Uint8Array, nullabilityBuffer: BitVector);
13
- filter(value: string): SelectionVector;
14
- match(values: string[]): SelectionVector;
15
- filterSelected(value: string, selectionVector: SelectionVector): void;
16
- matchSelected(values: string[], selectionVector: SelectionVector): void;
17
12
  protected getValueFromBuffer(index: number): string;
18
13
  private offsetToLengthBuffer;
19
- filterNotEqual(value: string): SelectionVector;
20
- filterNotEqualSelected(value: string, selectionVector: SelectionVector): void;
21
- greaterThanOrEqualTo(value: string): SelectionVector;
22
- greaterThanOrEqualToSelected(value: string, selectionVector: SelectionVector): void;
23
- noneMatch(values: string[]): SelectionVector;
24
- noneMatchSelected(values: string[], selectionVector: SelectionVector): void;
25
- smallerThanOrEqualTo(value: string): SelectionVector;
26
- smallerThanOrEqualToSelected(value: string, selectionVector: SelectionVector): void;
27
14
  }
@@ -1,10 +1,15 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.StringFsstDictionaryVector = void 0;
4
- const variableSizeVector_1 = require("../variableSizeVector");
5
- const fsstDecoder_1 = require("../../encodings/fsstDecoder");
6
- const decodingUtils_1 = require("../../encodings/decodingUtils");
7
- class StringFsstDictionaryVector extends variableSizeVector_1.VariableSizeVector {
1
+ import { VariableSizeVector } from "../variableSizeVector";
2
+ import { decodeFsst } from "../../decoding/fsstDecoder";
3
+ import { decodeString } from "../../decoding/decodingUtils";
4
+ export class StringFsstDictionaryVector extends VariableSizeVector {
5
+ indexBuffer;
6
+ symbolOffsetBuffer;
7
+ symbolTableBuffer;
8
+ textEncoder;
9
+ // TODO: extend from StringVector
10
+ symbolLengthBuffer;
11
+ lengthBuffer;
12
+ decodedDictionary;
8
13
  constructor(name, indexBuffer, offsetBuffer, dictionaryBuffer, symbolOffsetBuffer, symbolTableBuffer, nullabilityBuffer) {
9
14
  super(name, offsetBuffer, dictionaryBuffer, nullabilityBuffer);
10
15
  this.indexBuffer = indexBuffer;
@@ -12,23 +17,6 @@ class StringFsstDictionaryVector extends variableSizeVector_1.VariableSizeVector
12
17
  this.symbolTableBuffer = symbolTableBuffer;
13
18
  this.textEncoder = new TextEncoder();
14
19
  }
15
- filter(value) {
16
- /*
17
- * -> create utf-8 buffer from value
18
- * -> convert utf-8 buffer to fsst compressed corpus
19
- * -> replace utf-8 character with index of SymbolTable
20
- * */
21
- throw new Error("Not implemented yet.");
22
- }
23
- match(values) {
24
- throw new Error("Not implemented yet.");
25
- }
26
- filterSelected(value, selectionVector) {
27
- throw new Error("Not implemented yet.");
28
- }
29
- matchSelected(values, selectionVector) {
30
- throw new Error("Not implemented yet.");
31
- }
32
20
  getValueFromBuffer(index) {
33
21
  //if (this.decodedValues == null) {
34
22
  /*if (this.decodedDictionary == null) {
@@ -68,12 +56,12 @@ class StringFsstDictionaryVector extends variableSizeVector_1.VariableSizeVector
68
56
  this.symbolLengthBuffer = this.offsetToLengthBuffer(this.symbolOffsetBuffer);
69
57
  this.lengthBuffer = this.offsetToLengthBuffer(this.offsetBuffer);
70
58
  }
71
- this.decodedDictionary = (0, fsstDecoder_1.decodeFsst)(this.symbolTableBuffer, this.symbolLengthBuffer, this.dataBuffer);
59
+ this.decodedDictionary = decodeFsst(this.symbolTableBuffer, this.symbolLengthBuffer, this.dataBuffer);
72
60
  }
73
61
  const offset = this.indexBuffer[index];
74
62
  const start = this.offsetBuffer[offset];
75
63
  const end = this.offsetBuffer[offset + 1];
76
- return (0, decodingUtils_1.decodeString)(this.decodedDictionary, start, end);
64
+ return decodeString(this.decodedDictionary, start, end);
77
65
  }
78
66
  // TODO: get rid of that conversion
79
67
  offsetToLengthBuffer(offsetBuffer) {
@@ -86,30 +74,5 @@ class StringFsstDictionaryVector extends variableSizeVector_1.VariableSizeVector
86
74
  }
87
75
  return lengthBuffer;
88
76
  }
89
- filterNotEqual(value) {
90
- throw new Error("Not implemented yet.");
91
- }
92
- filterNotEqualSelected(value, selectionVector) {
93
- throw new Error("Not implemented yet.");
94
- }
95
- greaterThanOrEqualTo(value) {
96
- throw new Error("Not implemented yet.");
97
- }
98
- greaterThanOrEqualToSelected(value, selectionVector) {
99
- throw new Error("Not implemented yet.");
100
- }
101
- noneMatch(values) {
102
- throw new Error("Not implemented yet.");
103
- }
104
- noneMatchSelected(values, selectionVector) {
105
- throw new Error("Not implemented yet.");
106
- }
107
- smallerThanOrEqualTo(value) {
108
- throw new Error("Not implemented yet.");
109
- }
110
- smallerThanOrEqualToSelected(value, selectionVector) {
111
- throw new Error("Not implemented yet.");
112
- }
113
77
  }
114
- exports.StringFsstDictionaryVector = StringFsstDictionaryVector;
115
78
  //# sourceMappingURL=stringFsstDictionaryVector.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"stringFsstDictionaryVector.js","sourceRoot":"","sources":["../../../src/vector/fsst-dictionary/stringFsstDictionaryVector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stringFsstDictionaryVector.js","sourceRoot":"","sources":["../../../src/vector/fsst-dictionary/stringFsstDictionaryVector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAE3D,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAE5D,MAAM,OAAO,0BAA2B,SAAQ,kBAAsC;IAU7D;IAGA;IACA;IAbJ,WAAW,CAAc;IAE1C,iCAAiC;IACzB,kBAAkB,CAAc;IAChC,YAAY,CAAc;IAC1B,iBAAiB,CAAa;IAEtC,YACI,IAAY,EACK,WAAuB,EACxC,YAAwB,EACxB,gBAA4B,EACX,kBAA8B,EAC9B,iBAA6B,EAC9C,iBAA4B;QAE5B,KAAK,CAAC,IAAI,EAAE,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,CAAC,CAAC;QAP9C,gBAAW,GAAX,WAAW,CAAY;QAGvB,uBAAkB,GAAlB,kBAAkB,CAAY;QAC9B,sBAAiB,GAAjB,iBAAiB,CAAY;QAI9C,IAAI,CAAC,WAAW,GAAG,IAAI,WAAW,EAAE,CAAC;IACzC,CAAC;IAES,kBAAkB,CAAC,KAAa;QACtC,mCAAmC;QACnC;;;;;;;;;;;;;;;;;;;;;;;;WAwBG;QACH;;;;;eAKO;QAEP,IAAI,IAAI,CAAC,iBAAiB,IAAI,IAAI,EAAE,CAAC;YACjC,IAAI,IAAI,CAAC,kBAAkB,IAAI,IAAI,EAAE,CAAC;gBAClC,2FAA2F;gBAC3F,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;gBAC7E,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YACrE,CAAC;YAED,IAAI,CAAC,iBAAiB,GAAG,UAAU,CAAC,IAAI,CAAC,iBAAiB,EAAE,IAAI,CAAC,kBAAkB,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QAC1G,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QACvC,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QACxC,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC1C,OAAO,YAAY,CAAC,IAAI,CAAC,iBAAiB,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;IAC5D,CAAC;IAED,mCAAmC;IAC3B,oBAAoB,CAAC,YAAwB;QACjD,MAAM,YAAY,GAAG,IAAI,WAAW,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC9D,IAAI,cAAc,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;QACrC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC3C,MAAM,MAAM,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;YAC/B,YAAY,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,MAAM,GAAG,cAAc,CAAC;YAC9C,cAAc,GAAG,MAAM,CAAC;QAC5B,CAAC;QAED,OAAO,YAAY,CAAC;IACxB,CAAC;CACJ"}
@@ -0,0 +1,28 @@
1
+ import { describe, it, expect, beforeEach } from "vitest";
2
+ import BitVector from "../flat/bitVector";
3
+ import { StringFsstDictionaryVector } from "./stringFsstDictionaryVector";
4
+ describe("StringFsstDictionaryVector", () => {
5
+ let indexBuffer;
6
+ let offsetBuffer;
7
+ let dictionaryBuffer;
8
+ let symbolOffsetBuffer;
9
+ let symbolTableBuffer;
10
+ let nullabilityBuffer;
11
+ beforeEach(() => {
12
+ indexBuffer = new Int32Array([0, 1, 2]);
13
+ offsetBuffer = new Int32Array([0, 5, 10]);
14
+ dictionaryBuffer = new Uint8Array([
15
+ /* mock data */
16
+ ]);
17
+ symbolOffsetBuffer = new Int32Array([0, 3, 6]);
18
+ symbolTableBuffer = new Uint8Array([
19
+ /* mock data */
20
+ ]);
21
+ nullabilityBuffer = new BitVector(new Uint8Array([0b00000001]), 2);
22
+ });
23
+ it("should create an instance of StringFsstDictionaryVector", () => {
24
+ const vector = new StringFsstDictionaryVector("testVector", indexBuffer, offsetBuffer, dictionaryBuffer, symbolOffsetBuffer, symbolTableBuffer, nullabilityBuffer);
25
+ expect(vector).toBeInstanceOf(StringFsstDictionaryVector);
26
+ });
27
+ });
28
+ //# sourceMappingURL=stringFsstDictionaryVector.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stringFsstDictionaryVector.spec.js","sourceRoot":"","sources":["../../../src/vector/fsst-dictionary/stringFsstDictionaryVector.spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAC1D,OAAO,SAAS,MAAM,mBAAmB,CAAC;AAC1C,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAE1E,QAAQ,CAAC,4BAA4B,EAAE,GAAG,EAAE;IACxC,IAAI,WAAuB,CAAC;IAC5B,IAAI,YAAwB,CAAC;IAC7B,IAAI,gBAA4B,CAAC;IACjC,IAAI,kBAA8B,CAAC;IACnC,IAAI,iBAA6B,CAAC;IAClC,IAAI,iBAA4B,CAAC;IAEjC,UAAU,CAAC,GAAG,EAAE;QACZ,WAAW,GAAG,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACxC,YAAY,GAAG,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QAC1C,gBAAgB,GAAG,IAAI,UAAU,CAAC;QAC9B,eAAe;SAClB,CAAC,CAAC;QACH,kBAAkB,GAAG,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAC/C,iBAAiB,GAAG,IAAI,UAAU,CAAC;QAC/B,eAAe;SAClB,CAAC,CAAC;QACH,iBAAiB,GAAG,IAAI,SAAS,CAAC,IAAI,UAAU,CAAC,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACvE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yDAAyD,EAAE,GAAG,EAAE;QAC/D,MAAM,MAAM,GAAG,IAAI,0BAA0B,CACzC,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,CACpB,CAAC;QACF,MAAM,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,0BAA0B,CAAC,CAAC;IAC9D,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
@@ -1,7 +1,5 @@
1
1
  import { GeometryVector, type MortonSettings } from "./geometryVector";
2
2
  import type TopologyVector from "../../vector/geometry/topologyVector";
3
- import { type SelectionVector } from "../filter/selectionVector";
4
- import { type SINGLE_PART_GEOMETRY_TYPE } from "./geometryType";
5
3
  import { VertexBufferType } from "./vertexBufferType";
6
4
  export declare class ConstGeometryVector extends GeometryVector {
7
5
  private readonly _numGeometries;
@@ -12,7 +10,5 @@ export declare class ConstGeometryVector extends GeometryVector {
12
10
  geometryType(index: number): number;
13
11
  get numGeometries(): number;
14
12
  containsPolygonGeometry(): boolean;
15
- filter(geometryType: SINGLE_PART_GEOMETRY_TYPE): SelectionVector;
16
- filterSelected(geometryType: SINGLE_PART_GEOMETRY_TYPE, selectionVector: SelectionVector): void;
17
13
  containsSingleGeometryType(): boolean;
18
14
  }
@@ -1,21 +1,19 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ConstGeometryVector = void 0;
4
- const geometryVector_1 = require("./geometryVector");
5
- const flatSelectionVector_1 = require("../filter/flatSelectionVector");
6
- const geometryType_1 = require("./geometryType");
7
- const vertexBufferType_1 = require("./vertexBufferType");
8
- class ConstGeometryVector extends geometryVector_1.GeometryVector {
1
+ import { GeometryVector } from "./geometryVector";
2
+ import { GEOMETRY_TYPE } from "./geometryType";
3
+ import { VertexBufferType } from "./vertexBufferType";
4
+ export class ConstGeometryVector extends GeometryVector {
5
+ _numGeometries;
6
+ _geometryType;
9
7
  constructor(_numGeometries, _geometryType, vertexBufferType, topologyVector, vertexOffsets, vertexBuffer, mortonSettings) {
10
8
  super(vertexBufferType, topologyVector, vertexOffsets, vertexBuffer, mortonSettings);
11
9
  this._numGeometries = _numGeometries;
12
10
  this._geometryType = _geometryType;
13
11
  }
14
12
  static createMortonEncoded(numGeometries, geometryType, topologyVector, vertexOffsets, vertexBuffer, mortonInfo) {
15
- return new ConstGeometryVector(numGeometries, geometryType, vertexBufferType_1.VertexBufferType.MORTON, topologyVector, vertexOffsets, vertexBuffer, mortonInfo);
13
+ return new ConstGeometryVector(numGeometries, geometryType, VertexBufferType.MORTON, topologyVector, vertexOffsets, vertexBuffer, mortonInfo);
16
14
  }
17
15
  static create(numGeometries, geometryType, topologyVector, vertexOffsets, vertexBuffer) {
18
- return new ConstGeometryVector(numGeometries, geometryType, vertexBufferType_1.VertexBufferType.VEC_2, topologyVector, vertexOffsets, vertexBuffer);
16
+ return new ConstGeometryVector(numGeometries, geometryType, VertexBufferType.VEC_2, topologyVector, vertexOffsets, vertexBuffer);
19
17
  }
20
18
  geometryType(index) {
21
19
  return this._geometryType;
@@ -24,29 +22,10 @@ class ConstGeometryVector extends geometryVector_1.GeometryVector {
24
22
  return this._numGeometries;
25
23
  }
26
24
  containsPolygonGeometry() {
27
- return this._geometryType === geometryType_1.GEOMETRY_TYPE.POLYGON || this._geometryType === geometryType_1.GEOMETRY_TYPE.MULTIPOLYGON;
28
- }
29
- //TODO: refactor -> quick and dirty -> let a multi part geometry be equal to a single part geometry
30
- //to produce the same results as with MVT and the existing styles
31
- filter(geometryType) {
32
- if (geometryType !== this._geometryType && (geometryType + 3) !== this._geometryType) {
33
- return new flatSelectionVector_1.FlatSelectionVector([]);
34
- }
35
- //TODO: use ConstSelectionVector
36
- const selectionVector = new Array(this.numGeometries);
37
- for (let i = 0; i < this.numGeometries; i++) {
38
- selectionVector[i] = i;
39
- }
40
- return new flatSelectionVector_1.FlatSelectionVector(selectionVector);
41
- }
42
- filterSelected(geometryType, selectionVector) {
43
- if (geometryType !== this._geometryType && (geometryType + 3) !== this._geometryType) {
44
- selectionVector.setLimit(0);
45
- }
25
+ return this._geometryType === GEOMETRY_TYPE.POLYGON || this._geometryType === GEOMETRY_TYPE.MULTIPOLYGON;
46
26
  }
47
27
  containsSingleGeometryType() {
48
28
  return true;
49
29
  }
50
30
  }
51
- exports.ConstGeometryVector = ConstGeometryVector;
52
31
  //# sourceMappingURL=constGeometryVector.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constGeometryVector.js","sourceRoot":"","sources":["../../../src/vector/geometry/constGeometryVector.ts"],"names":[],"mappings":";;;AAAA,qDAAqE;AAGrE,uEAAkE;AAClE,iDAA6E;AAC7E,yDAAoD;AAGpD,MAAa,mBAAoB,SAAQ,+BAAc;IACnD,YACqB,cAAsB,EACtB,aAAqB,EACtC,gBAAkC,EAClC,cAA8B,EAC9B,aAAyB,EACzB,YAAwB,EACxB,cAA+B;QAE/B,KAAK,CAAC,gBAAgB,EAAE,cAAc,EAAE,aAAa,EAAE,YAAY,EAAE,cAAc,CAAC,CAAC;QARpE,mBAAc,GAAd,cAAc,CAAQ;QACtB,kBAAa,GAAb,aAAa,CAAQ;IAQ1C,CAAC;IAED,MAAM,CAAC,mBAAmB,CACtB,aAAqB,EACrB,YAAoB,EACpB,cAA8B,EAC9B,aAAyB,EACzB,YAAwB,EACxB,UAA0B;QAE1B,OAAO,IAAI,mBAAmB,CAC1B,aAAa,EACb,YAAY,EACZ,mCAAgB,CAAC,MAAM,EACvB,cAAc,EACd,aAAa,EACb,YAAY,EACZ,UAAU,CACb,CAAC;IACN,CAAC;IAED,MAAM,CAAC,MAAM,CACT,aAAqB,EACrB,YAAoB,EACpB,cAA8B,EAC9B,aAAyB,EACzB,YAAwB;QAExB,OAAO,IAAI,mBAAmB,CAC1B,aAAa,EACb,YAAY,EACZ,mCAAgB,CAAC,KAAK,EACtB,cAAc,EACd,aAAa,EACb,YAAY,CACf,CAAC;IACN,CAAC;IAED,YAAY,CAAC,KAAa;QACtB,OAAO,IAAI,CAAC,aAAa,CAAC;IAC9B,CAAC;IAED,IAAI,aAAa;QACb,OAAO,IAAI,CAAC,cAAc,CAAC;IAC/B,CAAC;IAED,uBAAuB;QACnB,OAAO,IAAI,CAAC,aAAa,KAAK,4BAAa,CAAC,OAAO,IAAI,IAAI,CAAC,aAAa,KAAK,4BAAa,CAAC,YAAY,CAAC;IAC7G,CAAC;IAED,mGAAmG;IACnG,iEAAiE;IACjE,MAAM,CAAC,YAAuC;QAC1C,IAAG,YAAY,KAAK,IAAI,CAAC,aAAa,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,aAAa,EAAC,CAAC;YACjF,OAAO,IAAI,yCAAmB,CAAC,EAAE,CAAC,CAAC;QACvC,CAAC;QAED,gCAAgC;QAChC,MAAM,eAAe,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACtD,KAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC,EAAE,EAAC,CAAC;YACxC,eAAe,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAC3B,CAAC;QACD,OAAO,IAAI,yCAAmB,CAAC,eAAe,CAAC,CAAC;IACpD,CAAC;IAED,cAAc,CAAC,YAAuC,EAAE,eAAgC;QACpF,IAAG,YAAY,KAAK,IAAI,CAAC,aAAa,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,aAAa,EAAC,CAAC;YACjF,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAChC,CAAC;IACL,CAAC;IAED,0BAA0B;QACtB,OAAO,IAAI,CAAC;IAChB,CAAC;CAEJ;AAtFD,kDAsFC"}
1
+ {"version":3,"file":"constGeometryVector.js","sourceRoot":"","sources":["../../../src/vector/geometry/constGeometryVector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAuB,MAAM,kBAAkB,CAAC;AAEvE,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD,MAAM,OAAO,mBAAoB,SAAQ,cAAc;IAE9B;IACA;IAFrB,YACqB,cAAsB,EACtB,aAAqB,EACtC,gBAAkC,EAClC,cAA8B,EAC9B,aAAyB,EACzB,YAAwB,EACxB,cAA+B;QAE/B,KAAK,CAAC,gBAAgB,EAAE,cAAc,EAAE,aAAa,EAAE,YAAY,EAAE,cAAc,CAAC,CAAC;QARpE,mBAAc,GAAd,cAAc,CAAQ;QACtB,kBAAa,GAAb,aAAa,CAAQ;IAQ1C,CAAC;IAED,MAAM,CAAC,mBAAmB,CACtB,aAAqB,EACrB,YAAoB,EACpB,cAA8B,EAC9B,aAAyB,EACzB,YAAwB,EACxB,UAA0B;QAE1B,OAAO,IAAI,mBAAmB,CAC1B,aAAa,EACb,YAAY,EACZ,gBAAgB,CAAC,MAAM,EACvB,cAAc,EACd,aAAa,EACb,YAAY,EACZ,UAAU,CACb,CAAC;IACN,CAAC;IAED,MAAM,CAAC,MAAM,CACT,aAAqB,EACrB,YAAoB,EACpB,cAA8B,EAC9B,aAAyB,EACzB,YAAwB;QAExB,OAAO,IAAI,mBAAmB,CAC1B,aAAa,EACb,YAAY,EACZ,gBAAgB,CAAC,KAAK,EACtB,cAAc,EACd,aAAa,EACb,YAAY,CACf,CAAC;IACN,CAAC;IAED,YAAY,CAAC,KAAa;QACtB,OAAO,IAAI,CAAC,aAAa,CAAC;IAC9B,CAAC;IAED,IAAI,aAAa;QACb,OAAO,IAAI,CAAC,cAAc,CAAC;IAC/B,CAAC;IAED,uBAAuB;QACnB,OAAO,IAAI,CAAC,aAAa,KAAK,aAAa,CAAC,OAAO,IAAI,IAAI,CAAC,aAAa,KAAK,aAAa,CAAC,YAAY,CAAC;IAC7G,CAAC;IAED,0BAA0B;QACtB,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ"}
@@ -1,6 +1,4 @@
1
- import { type SelectionVector } from "../filter/selectionVector";
2
1
  import { GpuVector } from "./gpuVector";
3
- import { type SINGLE_PART_GEOMETRY_TYPE } from "./geometryType";
4
2
  import type TopologyVector from "./topologyVector";
5
3
  export declare class ConstGpuVector extends GpuVector {
6
4
  private readonly _numGeometries;
@@ -9,7 +7,5 @@ export declare class ConstGpuVector extends GpuVector {
9
7
  static create(numGeometries: number, geometryType: number, triangleOffsets: Int32Array, indexBuffer: Int32Array, vertexBuffer: Int32Array, topologyVector?: TopologyVector | null): GpuVector;
10
8
  geometryType(index: number): number;
11
9
  get numGeometries(): number;
12
- filter(geometryType: SINGLE_PART_GEOMETRY_TYPE): SelectionVector;
13
- filterSelected(geometryType: SINGLE_PART_GEOMETRY_TYPE, selectionVector: SelectionVector): void;
14
10
  containsSingleGeometryType(): boolean;
15
11
  }
@@ -1,10 +1,8 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ConstGpuVector = void 0;
4
- const flatSelectionVector_1 = require("../filter/flatSelectionVector");
5
- const gpuVector_1 = require("./gpuVector");
1
+ import { GpuVector } from "./gpuVector";
6
2
  //TODO: extend from GeometryVector -> make topology vector optional
7
- class ConstGpuVector extends gpuVector_1.GpuVector {
3
+ export class ConstGpuVector extends GpuVector {
4
+ _numGeometries;
5
+ _geometryType;
8
6
  constructor(_numGeometries, _geometryType, triangleOffsets, indexBuffer, vertexBuffer, topologyVector) {
9
7
  super(triangleOffsets, indexBuffer, vertexBuffer, topologyVector);
10
8
  this._numGeometries = _numGeometries;
@@ -40,27 +38,8 @@ class ConstGpuVector extends gpuVector_1.GpuVector {
40
38
  get numGeometries() {
41
39
  return this._numGeometries;
42
40
  }
43
- //TODO: refactor -> quick and dirty -> let a multi part geometry be equal to a single part geometry
44
- //to produce the same results as with MVT and the existing styles
45
- filter(geometryType) {
46
- if (geometryType !== this._geometryType && (geometryType + 3) !== this._geometryType) {
47
- return new flatSelectionVector_1.FlatSelectionVector([]);
48
- }
49
- //TODO: use ConstSelectionVector
50
- const selectionVector = new Array(this.numGeometries);
51
- for (let i = 0; i < this.numGeometries; i++) {
52
- selectionVector[i] = i;
53
- }
54
- return new flatSelectionVector_1.FlatSelectionVector(selectionVector);
55
- }
56
- filterSelected(geometryType, selectionVector) {
57
- if (geometryType !== this._geometryType && (geometryType + 3) !== this._geometryType) {
58
- selectionVector.setLimit(0);
59
- }
60
- }
61
41
  containsSingleGeometryType() {
62
42
  return true;
63
43
  }
64
44
  }
65
- exports.ConstGpuVector = ConstGpuVector;
66
45
  //# sourceMappingURL=constGpuVector.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constGpuVector.js","sourceRoot":"","sources":["../../../src/vector/geometry/constGpuVector.ts"],"names":[],"mappings":";;;AACA,uEAAkE;AAClE,2CAAsC;AAKtC,mEAAmE;AACnE,MAAa,cAAe,SAAQ,qBAAS;IACzC,YACqB,cAAsB,EACtB,aAAqB,EACtC,eAA2B,EAC3B,WAAuB,EACvB,YAAwB,EACxB,cAAsC;QAEtC,KAAK,CAAC,eAAe,EAAE,WAAW,EAAE,YAAY,EAAE,cAAc,CAAC,CAAC;QAPjD,mBAAc,GAAd,cAAc,CAAQ;QACtB,kBAAa,GAAb,aAAa,CAAQ;IAO1C,CAAC;IAED,MAAM,CAAC,MAAM,CACT,aAAqB,EACrB,YAAoB,EACpB,eAA2B,EAC3B,WAAuB,EACvB,YAAwB,EACxB,cAAsC;QAEtC,OAAO,IAAI,cAAc,CACrB,aAAa,EACb,YAAY,EACZ,eAAe,EACf,WAAW,EACX,YAAY,EACZ,cAAc,CACjB,CAAC;IACN,CAAC;IAED;;;;;;;;;;;;;;;;;;;;OAoBG;IAEH,YAAY,CAAC,KAAa;QACtB,OAAO,IAAI,CAAC,aAAa,CAAC;IAC9B,CAAC;IAED,IAAI,aAAa;QACb,OAAO,IAAI,CAAC,cAAc,CAAC;IAC/B,CAAC;IAED,mGAAmG;IACnG,iEAAiE;IACjE,MAAM,CAAC,YAAuC;QAC1C,IAAG,YAAY,KAAK,IAAI,CAAC,aAAa,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,aAAa,EAAC,CAAC;YACjF,OAAO,IAAI,yCAAmB,CAAC,EAAE,CAAC,CAAC;QACvC,CAAC;QAED,gCAAgC;QAChC,MAAM,eAAe,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACtD,KAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC,EAAE,EAAC,CAAC;YACxC,eAAe,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAC3B,CAAC;QACD,OAAO,IAAI,yCAAmB,CAAC,eAAe,CAAC,CAAC;IACpD,CAAC;IAED,cAAc,CAAC,YAAuC,EAAE,eAAgC;QACpF,IAAG,YAAY,KAAK,IAAI,CAAC,aAAa,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,aAAa,EAAC,CAAC;YACjF,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAChC,CAAC;IACL,CAAC;IAED,0BAA0B;QACtB,OAAO,IAAI,CAAC;IAChB,CAAC;CAEJ;AArFD,wCAqFC"}
1
+ {"version":3,"file":"constGpuVector.js","sourceRoot":"","sources":["../../../src/vector/geometry/constGpuVector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC,mEAAmE;AACnE,MAAM,OAAO,cAAe,SAAQ,SAAS;IAEpB;IACA;IAFrB,YACqB,cAAsB,EACtB,aAAqB,EACtC,eAA2B,EAC3B,WAAuB,EACvB,YAAwB,EACxB,cAAsC;QAEtC,KAAK,CAAC,eAAe,EAAE,WAAW,EAAE,YAAY,EAAE,cAAc,CAAC,CAAC;QAPjD,mBAAc,GAAd,cAAc,CAAQ;QACtB,kBAAa,GAAb,aAAa,CAAQ;IAO1C,CAAC;IAED,MAAM,CAAC,MAAM,CACT,aAAqB,EACrB,YAAoB,EACpB,eAA2B,EAC3B,WAAuB,EACvB,YAAwB,EACxB,cAAsC;QAEtC,OAAO,IAAI,cAAc,CACrB,aAAa,EACb,YAAY,EACZ,eAAe,EACf,WAAW,EACX,YAAY,EACZ,cAAc,CACjB,CAAC;IACN,CAAC;IAED;;;;;;;;;;;;;;;;;;;;OAoBG;IAEH,YAAY,CAAC,KAAa;QACtB,OAAO,IAAI,CAAC,aAAa,CAAC;IAC9B,CAAC;IAED,IAAI,aAAa;QACb,OAAO,IAAI,CAAC,cAAc,CAAC;IAC/B,CAAC;IAED,0BAA0B;QACtB,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ"}
@@ -1,7 +1,5 @@
1
1
  import { GeometryVector, type MortonSettings } from "./geometryVector";
2
2
  import type TopologyVector from "../../vector/geometry/topologyVector";
3
- import { type SelectionVector } from "../filter/selectionVector";
4
- import { type SINGLE_PART_GEOMETRY_TYPE } from "./geometryType";
5
3
  import { VertexBufferType } from "./vertexBufferType";
6
4
  export declare class FlatGeometryVector extends GeometryVector {
7
5
  private readonly _geometryTypes;
@@ -11,7 +9,5 @@ export declare class FlatGeometryVector extends GeometryVector {
11
9
  geometryType(index: number): number;
12
10
  get numGeometries(): number;
13
11
  containsPolygonGeometry(): boolean;
14
- filter(geometryType: SINGLE_PART_GEOMETRY_TYPE): SelectionVector;
15
- filterSelected(predicateGeometryType: SINGLE_PART_GEOMETRY_TYPE, selectionVector: SelectionVector): void;
16
12
  containsSingleGeometryType(): boolean;
17
13
  }
@@ -1,11 +1,8 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.FlatGeometryVector = void 0;
4
- const geometryVector_1 = require("./geometryVector");
5
- const flatSelectionVector_1 = require("../filter/flatSelectionVector");
6
- const geometryType_1 = require("./geometryType");
7
- const vertexBufferType_1 = require("./vertexBufferType");
8
- class FlatGeometryVector extends geometryVector_1.GeometryVector {
1
+ import { GeometryVector } from "./geometryVector";
2
+ import { GEOMETRY_TYPE } from "./geometryType";
3
+ import { VertexBufferType } from "./vertexBufferType";
4
+ export class FlatGeometryVector extends GeometryVector {
5
+ _geometryTypes;
9
6
  constructor(vertexBufferType,
10
7
  //TODO: refactor -> use UInt8Array
11
8
  _geometryTypes, topologyVector, vertexOffsets, vertexBuffer, mortonSettings) {
@@ -14,10 +11,10 @@ class FlatGeometryVector extends geometryVector_1.GeometryVector {
14
11
  }
15
12
  static createMortonEncoded(geometryTypes, topologyVector, vertexOffsets, vertexBuffer, mortonInfo) {
16
13
  //TODO: refactor to use unsigned integers
17
- return new FlatGeometryVector(vertexBufferType_1.VertexBufferType.MORTON, geometryTypes, topologyVector, vertexOffsets, vertexBuffer, mortonInfo);
14
+ return new FlatGeometryVector(VertexBufferType.MORTON, geometryTypes, topologyVector, vertexOffsets, vertexBuffer, mortonInfo);
18
15
  }
19
16
  static create(geometryTypes, topologyVector, vertexOffsets, vertexBuffer) {
20
- return new FlatGeometryVector(vertexBufferType_1.VertexBufferType.VEC_2, geometryTypes, topologyVector, vertexOffsets, vertexBuffer);
17
+ return new FlatGeometryVector(VertexBufferType.VEC_2, geometryTypes, topologyVector, vertexOffsets, vertexBuffer);
21
18
  }
22
19
  geometryType(index) {
23
20
  return this._geometryTypes[index];
@@ -27,39 +24,14 @@ class FlatGeometryVector extends geometryVector_1.GeometryVector {
27
24
  }
28
25
  containsPolygonGeometry() {
29
26
  for (let i = 0; i < this.numGeometries; i++) {
30
- if (this.geometryType(i) === geometryType_1.GEOMETRY_TYPE.POLYGON ||
31
- this.geometryType(i) === geometryType_1.GEOMETRY_TYPE.MULTIPOLYGON) {
27
+ if (this.geometryType(i) === GEOMETRY_TYPE.POLYGON || this.geometryType(i) === GEOMETRY_TYPE.MULTIPOLYGON) {
32
28
  return true;
33
29
  }
34
30
  }
35
31
  return false;
36
32
  }
37
- //TODO: refactor -> quick and dirty -> let a multi part geometry be equal to a single part geometry
38
- //to produce the same results as with MVT and the existing styles
39
- filter(geometryType) {
40
- const selectionVector = [];
41
- for (let i = 0; i < this.numGeometries; i++) {
42
- if (this.geometryType(i) === geometryType || this.geometryType(i) === (geometryType + 3)) {
43
- selectionVector.push(i);
44
- }
45
- }
46
- return new flatSelectionVector_1.FlatSelectionVector(selectionVector);
47
- }
48
- filterSelected(predicateGeometryType, selectionVector) {
49
- let limit = 0;
50
- const vector = selectionVector.selectionValues();
51
- for (let i = 0; i < selectionVector.limit; i++) {
52
- const index = vector[i];
53
- const geometryType = this.geometryType(index);
54
- if (predicateGeometryType === geometryType || (predicateGeometryType + 3) === geometryType) {
55
- vector[limit++] = index;
56
- }
57
- }
58
- selectionVector.setLimit(limit);
59
- }
60
33
  containsSingleGeometryType() {
61
34
  return false;
62
35
  }
63
36
  }
64
- exports.FlatGeometryVector = FlatGeometryVector;
65
37
  //# sourceMappingURL=flatGeometryVector.js.map