@osmix/core 0.0.6 → 0.1.1

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 (124) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/dist/{core/src → src}/entities.d.ts +6 -0
  3. package/dist/src/entities.d.ts.map +1 -0
  4. package/dist/{core/src → src}/entities.js +7 -0
  5. package/dist/src/entities.js.map +1 -0
  6. package/dist/{core/src → src}/ids.d.ts +6 -0
  7. package/dist/src/ids.d.ts.map +1 -0
  8. package/dist/{core/src → src}/ids.js +7 -0
  9. package/dist/src/ids.js.map +1 -0
  10. package/dist/src/index.d.ts.map +1 -0
  11. package/dist/src/index.js.map +1 -0
  12. package/dist/{core/src → src}/nodes.d.ts +5 -0
  13. package/dist/src/nodes.d.ts.map +1 -0
  14. package/dist/{core/src → src}/nodes.js +9 -0
  15. package/dist/src/nodes.js.map +1 -0
  16. package/dist/{core/src → src}/osm.d.ts +25 -0
  17. package/dist/src/osm.d.ts.map +1 -0
  18. package/dist/{core/src → src}/osm.js +45 -0
  19. package/dist/src/osm.js.map +1 -0
  20. package/dist/{core/src → src}/relations.d.ts +5 -0
  21. package/dist/src/relations.d.ts.map +1 -0
  22. package/dist/{core/src → src}/relations.js +12 -0
  23. package/dist/src/relations.js.map +1 -0
  24. package/dist/{core/src → src}/stringtable.d.ts +6 -0
  25. package/dist/src/stringtable.d.ts.map +1 -0
  26. package/dist/{core/src → src}/stringtable.js +10 -0
  27. package/dist/src/stringtable.js.map +1 -0
  28. package/dist/{core/src → src}/tags.d.ts +6 -0
  29. package/dist/src/tags.d.ts.map +1 -0
  30. package/dist/{core/src → src}/tags.js +11 -0
  31. package/dist/src/tags.js.map +1 -0
  32. package/dist/src/typed-arrays.d.ts.map +1 -0
  33. package/dist/src/typed-arrays.js.map +1 -0
  34. package/dist/src/utils.d.ts +38 -0
  35. package/dist/src/utils.d.ts.map +1 -0
  36. package/dist/src/utils.js +87 -0
  37. package/dist/src/utils.js.map +1 -0
  38. package/dist/{core/src → src}/ways.d.ts +5 -0
  39. package/dist/src/ways.d.ts.map +1 -0
  40. package/dist/{core/src → src}/ways.js +10 -0
  41. package/dist/src/ways.js.map +1 -0
  42. package/dist/test/memory.test.d.ts.map +1 -0
  43. package/dist/test/memory.test.js.map +1 -0
  44. package/dist/test/mock-osm.d.ts.map +1 -0
  45. package/dist/test/mock-osm.js.map +1 -0
  46. package/dist/test/tags-search.test.d.ts.map +1 -0
  47. package/dist/test/tags-search.test.js.map +1 -0
  48. package/dist/test/typed-arrays.test.d.ts.map +1 -0
  49. package/dist/test/typed-arrays.test.js.map +1 -0
  50. package/package.json +2 -2
  51. package/src/entities.ts +9 -0
  52. package/src/ids.ts +9 -0
  53. package/src/nodes.ts +11 -0
  54. package/src/osm.ts +48 -0
  55. package/src/relations.ts +14 -1
  56. package/src/stringtable.ts +12 -0
  57. package/src/tags.ts +13 -0
  58. package/src/utils.ts +71 -0
  59. package/src/ways.ts +12 -0
  60. package/tsconfig.json +1 -7
  61. package/dist/core/src/entities.d.ts.map +0 -1
  62. package/dist/core/src/entities.js.map +0 -1
  63. package/dist/core/src/ids.d.ts.map +0 -1
  64. package/dist/core/src/ids.js.map +0 -1
  65. package/dist/core/src/index.d.ts.map +0 -1
  66. package/dist/core/src/index.js.map +0 -1
  67. package/dist/core/src/nodes.d.ts.map +0 -1
  68. package/dist/core/src/nodes.js.map +0 -1
  69. package/dist/core/src/osm.d.ts.map +0 -1
  70. package/dist/core/src/osm.js.map +0 -1
  71. package/dist/core/src/relations.d.ts.map +0 -1
  72. package/dist/core/src/relations.js.map +0 -1
  73. package/dist/core/src/stringtable.d.ts.map +0 -1
  74. package/dist/core/src/stringtable.js.map +0 -1
  75. package/dist/core/src/tags.d.ts.map +0 -1
  76. package/dist/core/src/tags.js.map +0 -1
  77. package/dist/core/src/typed-arrays.d.ts.map +0 -1
  78. package/dist/core/src/typed-arrays.js.map +0 -1
  79. package/dist/core/src/utils.d.ts +0 -11
  80. package/dist/core/src/utils.d.ts.map +0 -1
  81. package/dist/core/src/utils.js +0 -26
  82. package/dist/core/src/utils.js.map +0 -1
  83. package/dist/core/src/ways.d.ts.map +0 -1
  84. package/dist/core/src/ways.js.map +0 -1
  85. package/dist/core/test/memory.test.d.ts.map +0 -1
  86. package/dist/core/test/memory.test.js.map +0 -1
  87. package/dist/core/test/mock-osm.d.ts.map +0 -1
  88. package/dist/core/test/mock-osm.js.map +0 -1
  89. package/dist/core/test/tags-search.test.d.ts.map +0 -1
  90. package/dist/core/test/tags-search.test.js.map +0 -1
  91. package/dist/core/test/typed-arrays.test.d.ts.map +0 -1
  92. package/dist/core/test/typed-arrays.test.js.map +0 -1
  93. package/dist/osmix/src/extract.d.ts +0 -43
  94. package/dist/osmix/src/extract.d.ts.map +0 -1
  95. package/dist/osmix/src/extract.js +0 -156
  96. package/dist/osmix/src/extract.js.map +0 -1
  97. package/dist/osmix/src/pbf.d.ts +0 -55
  98. package/dist/osmix/src/pbf.d.ts.map +0 -1
  99. package/dist/osmix/src/pbf.js +0 -187
  100. package/dist/osmix/src/pbf.js.map +0 -1
  101. package/dist/osmix/src/utils.d.ts +0 -36
  102. package/dist/osmix/src/utils.d.ts.map +0 -1
  103. package/dist/osmix/src/utils.js +0 -108
  104. package/dist/osmix/src/utils.js.map +0 -1
  105. package/dist/osmix/test/extract.bench.d.ts +0 -2
  106. package/dist/osmix/test/extract.bench.d.ts.map +0 -1
  107. package/dist/osmix/test/extract.bench.js +0 -26
  108. package/dist/osmix/test/extract.bench.js.map +0 -1
  109. package/dist/osmix/test/extract.test.d.ts +0 -2
  110. package/dist/osmix/test/extract.test.d.ts.map +0 -1
  111. package/dist/osmix/test/extract.test.js +0 -392
  112. package/dist/osmix/test/extract.test.js.map +0 -1
  113. /package/dist/{core/src → src}/index.d.ts +0 -0
  114. /package/dist/{core/src → src}/index.js +0 -0
  115. /package/dist/{core/src → src}/typed-arrays.d.ts +0 -0
  116. /package/dist/{core/src → src}/typed-arrays.js +0 -0
  117. /package/dist/{core/test → test}/memory.test.d.ts +0 -0
  118. /package/dist/{core/test → test}/memory.test.js +0 -0
  119. /package/dist/{core/test → test}/mock-osm.d.ts +0 -0
  120. /package/dist/{core/test → test}/mock-osm.js +0 -0
  121. /package/dist/{core/test → test}/tags-search.test.d.ts +0 -0
  122. /package/dist/{core/test → test}/tags-search.test.js +0 -0
  123. /package/dist/{core/test → test}/typed-arrays.test.d.ts +0 -0
  124. /package/dist/{core/test → test}/typed-arrays.test.js +0 -0
package/CHANGELOG.md CHANGED
@@ -1,5 +1,23 @@
1
1
  # @osmix/core
2
2
 
3
+ ## 0.1.1
4
+
5
+ ### Patch Changes
6
+
7
+ - d4f4b1f: Add content hashing for quick `isEqual`s checks of two similar `Osm` indexes. Typically used for checking post-merge.
8
+
9
+ ## 0.1.0
10
+
11
+ ### Minor Changes
12
+
13
+ - 29ed376: Routing: make graph transferable
14
+
15
+ ### Patch Changes
16
+
17
+ - 803c05c: Merge app style cleanup
18
+ - cbe4273: Osm index storage and reload
19
+ - ff40416: Refactor main `osmix` lib external APIs
20
+
3
21
  ## 0.0.6
4
22
 
5
23
  ### Patch Changes
@@ -10,6 +10,7 @@ import type { GeoBbox2D, OsmEntity, OsmEntityType, OsmTags } from "@osmix/shared
10
10
  import type { IdOrIndex, Ids, IdsTransferables } from "./ids";
11
11
  import type { Tags, TagsTransferables } from "./tags";
12
12
  import type { BufferType } from "./typed-arrays";
13
+ import type { ContentHasher } from "./utils";
13
14
  /**
14
15
  * Serializable representation of an Entities collection for worker transfer.
15
16
  * Combines ID and tag transferables; subclasses add entity-specific data.
@@ -110,5 +111,10 @@ export declare abstract class Entities<T extends OsmEntity> {
110
111
  * Search for entities with a specific tag key and optional value.
111
112
  */
112
113
  search(key: string, val?: string): T[];
114
+ /**
115
+ * Update a ContentHasher with this entity collection's base data (IDs and tags).
116
+ * Subclasses should override to add entity-specific data.
117
+ */
118
+ updateHash(hasher: ContentHasher): ContentHasher;
113
119
  }
114
120
  //# sourceMappingURL=entities.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entities.d.ts","sourceRoot":"","sources":["../../src/entities.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EACX,SAAS,EACT,SAAS,EACT,aAAa,EACb,OAAO,EACP,MAAM,qBAAqB,CAAA;AAC5B,OAAO,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,gBAAgB,EAAE,MAAM,OAAO,CAAA;AAC7D,OAAO,KAAK,EAAE,IAAI,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAA;AACrD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAChD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAE5C;;;GAGG;AACH,MAAM,WAAW,qBAAqB,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU,CACvE,SAAQ,gBAAgB,CAAC,CAAC,CAAC,EAC1B,iBAAiB,CAAC,CAAC,CAAC;CAAG;AAEzB;;;;;;;GAOG;AACH,8BAAsB,QAAQ,CAAC,CAAC,SAAS,SAAS;IACjD,mFAAmF;IACnF,SAAS,EAAE,aAAa,CAAA;IACxB,4BAA4B;IAC5B,GAAG,EAAE,GAAG,CAAA;IACR,6BAA6B;IAC7B,IAAI,EAAE,IAAI,CAAA;IAEV,2CAA2C;IAC3C,SAAS,CAAC,UAAU,UAAQ;IAE5B;;;;;OAKG;gBACS,SAAS,EAAE,aAAa,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI;IAM1D;;OAEG;IACH,aAAa,IAAI,qBAAqB;IAOtC;;OAEG;IACH,OAAO;IAIP,6CAA6C;IAC7C,IAAI,IAAI,WAEP;IAED;;;;OAIG;IACH,QAAQ,CAAC,gBAAgB,IAAI,IAAI;IAEjC;;;OAGG;IACH,UAAU;IAUV;;;;;OAKG;IACH,QAAQ,CAAC,aAAa,CAAC,SAAS,EAAE,SAAS,GAAG,SAAS;IAEvD;;;;;;;OAOG;IACH,QAAQ,CAAC,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,CAAC;IAEpE;;OAEG;IACH,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM;IAC/D,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,MAAM;IAa5C;;OAEG;IACH,GAAG,CAAC,SAAS,EAAE,SAAS,GAAG,CAAC,GAAG,IAAI;IAMnC;;OAEG;IACH,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,CAAC;IAQ5B;;OAEG;IACH,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE;IAU1C;;OAEG;IACF,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC;IAMlC;;OAEG;IACH,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,CAAC,GAAG,IAAI;IAO7B;;OAEG;IACF,MAAM,IAAI,SAAS,CAAC,CAAC,CAAC;IAQvB;;OAEG;IACH,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,CAAC,EAAE;IAStC;;;OAGG;IACH,UAAU,CAAC,MAAM,EAAE,aAAa,GAAG,aAAa;CAGhD"}
@@ -148,5 +148,12 @@ export class Entities {
148
148
  return entities;
149
149
  return entities.filter((entity) => entity.tags?.[key] === val);
150
150
  }
151
+ /**
152
+ * Update a ContentHasher with this entity collection's base data (IDs and tags).
153
+ * Subclasses should override to add entity-specific data.
154
+ */
155
+ updateHash(hasher) {
156
+ return this.ids.updateHash(this.tags.updateHash(hasher));
157
+ }
151
158
  }
152
159
  //# sourceMappingURL=entities.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entities.js","sourceRoot":"","sources":["../../src/entities.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,7 @@
7
7
  * @module
8
8
  */
9
9
  import { type BufferType } from "./typed-arrays";
10
+ import type { ContentHasher } from "./utils";
10
11
  /**
11
12
  * Union type for looking up entities by either OSM ID or internal array index.
12
13
  */
@@ -109,5 +110,10 @@ export declare class Ids {
109
110
  * Get the approximate memory requirements for a given number of IDs in bytes.
110
111
  */
111
112
  static getBytesRequired(count: number): number;
113
+ /**
114
+ * Update a ContentHasher with the IDs data.
115
+ * Uses the sorted IDs for consistent hashing regardless of insertion order.
116
+ */
117
+ updateHash(hasher: ContentHasher): ContentHasher;
112
118
  }
113
119
  //# sourceMappingURL=ids.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ids.d.ts","sourceRoot":"","sources":["../../src/ids.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EAEN,KAAK,UAAU,EAEf,MAAM,gBAAgB,CAAA;AACvB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAE5C;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAAA;AAS1D;;GAEG;AACH,MAAM,WAAW,gBAAgB,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU;IAClE,qCAAqC;IACrC,GAAG,EAAE,CAAC,CAAA;IACN,sEAAsE;IACtE,SAAS,EAAE,CAAC,CAAA;IACZ,uDAAuD;IACvD,uBAAuB,EAAE,CAAC,CAAA;IAC1B,mDAAmD;IACnD,OAAO,EAAE,CAAC,CAAA;IACV,oDAAoD;IACpD,YAAY,EAAE,OAAO,CAAA;CACrB;AAED;;;;;GAKG;AACH,qBAAa,GAAG;IACf,iCAAiC;IACjC,OAAO,CAAC,GAAG,CAAmB;IAC9B,2CAA2C;IAC3C,OAAO,CAAC,UAAU,CAAQ;IAC1B,4EAA4E;IAC5E,OAAO,CAAC,YAAY,CAAO;IAC3B,2CAA2C;IAC3C,OAAO,CAAC,SAAS,CAAc;IAC/B,+DAA+D;IAC/D,OAAO,CAAC,uBAAuB,CAAa;IAC5C,8EAA8E;IAC9E,OAAO,CAAC,OAAO,CAAc;IAE7B;;;OAGG;gBACS,aAAa,CAAC,EAAE,gBAAgB;IAkB5C,0CAA0C;IAC1C,IAAI,IAAI,WAEP;IAED,4EAA4E;IAC5E,OAAO;IAIP,4DAA4D;IAC5D,QAAQ;IAIR;;;;;OAKG;IACH,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM;IAMvB;;;;OAIG;IACH,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAIzB;;;;OAIG;IACH,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAIxB;;;;;OAKG;IACH,UAAU;IA6DV;;;;;;OAMG;IACH,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM;IAqClC;;OAEG;IACH,SAAS,CAAC,CAAC,EAAE,SAAS,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,CAAC;IAKpD,qDAAqD;IACrD,IAAI,MAAM,kCAET;IAED;;;OAGG;IACH,aAAa,IAAI,gBAAgB;IAUjC;;OAEG;IACH,MAAM,CAAC,gBAAgB,CAAC,KAAK,EAAE,MAAM;IAUrC;;;OAGG;IACH,UAAU,CAAC,MAAM,EAAE,aAAa,GAAG,aAAa;CAGhD"}
@@ -232,5 +232,12 @@ export class Ids {
232
232
  Math.ceil(count / BLOCK_SIZE) * Float64Array.BYTES_PER_ELEMENT // anchors
233
233
  );
234
234
  }
235
+ /**
236
+ * Update a ContentHasher with the IDs data.
237
+ * Uses the sorted IDs for consistent hashing regardless of insertion order.
238
+ */
239
+ updateHash(hasher) {
240
+ return hasher.update(this.idsSorted);
241
+ }
235
242
  }
236
243
  //# sourceMappingURL=ids.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ids.js","sourceRoot":"","sources":["../../src/ids.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAClD,OAAO,EACN,iBAAiB,EAEjB,oBAAoB,IAAI,GAAG,GAC3B,MAAM,gBAAgB,CAAA;AAQvB;;;;GAIG;AACH,MAAM,UAAU,GAAG,GAAG,CAAA;AAkBtB;;;;;GAKG;AACH,MAAM,OAAO,GAAG;IACf,iCAAiC;IACzB,GAAG,CAAmB;IAC9B,2CAA2C;IACnC,UAAU,GAAG,KAAK,CAAA;IAC1B,4EAA4E;IACpE,YAAY,GAAG,IAAI,CAAA;IAC3B,2CAA2C;IACnC,SAAS,CAAc;IAC/B,+DAA+D;IACvD,uBAAuB,CAAa;IAC5C,8EAA8E;IACtE,OAAO,CAAc;IAE7B;;;OAGG;IACH,YAAY,aAAgC;QAC3C,IAAI,aAAa,EAAE,CAAC;YACnB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC,IAAI,CAAC,YAAY,EAAE,aAAa,CAAC,GAAG,CAAC,CAAA;YACpD,IAAI,CAAC,SAAS,GAAG,IAAI,YAAY,CAAC,aAAa,CAAC,SAAS,CAAC,CAAA;YAC1D,IAAI,CAAC,uBAAuB,GAAG,IAAI,WAAW,CAC7C,aAAa,CAAC,uBAAuB,CACrC,CAAA;YACD,IAAI,CAAC,OAAO,GAAG,IAAI,YAAY,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;YACtD,IAAI,CAAC,YAAY,GAAG,aAAa,CAAC,YAAY,CAAA;YAC9C,IAAI,CAAC,UAAU,GAAG,IAAI,CAAA;QACvB,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,GAAG,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAA;YAChC,IAAI,CAAC,SAAS,GAAG,IAAI,YAAY,CAAC,IAAI,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAA;YAC3D,IAAI,CAAC,uBAAuB,GAAG,IAAI,WAAW,CAAC,IAAI,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAA;YACxE,IAAI,CAAC,OAAO,GAAG,IAAI,YAAY,CAAC,IAAI,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAA;QAC1D,CAAC;IACF,CAAC;IAED,0CAA0C;IAC1C,IAAI,IAAI;QACP,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,CAAA;IACvB,CAAC;IAED,4EAA4E;IAC5E,OAAO;QACN,OAAO,IAAI,CAAC,UAAU,CAAA;IACvB,CAAC;IAED,4DAA4D;IAC5D,QAAQ;QACP,OAAO,IAAI,CAAC,YAAY,CAAA;IACzB,CAAC;IAED;;;;;OAKG;IACH,GAAG,CAAC,EAAU;QACb,IAAI,IAAI,CAAC,UAAU;YAAE,MAAM,KAAK,CAAC,yBAAyB,CAAC,CAAA;QAC3D,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YAAE,IAAI,CAAC,YAAY,GAAG,KAAK,CAAA;QAC1E,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IACzB,CAAC;IAED;;;;OAIG;IACH,EAAE,CAAC,KAAa;QACf,OAAO,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,CAAA;IAC1B,CAAC;IAED;;;;OAIG;IACH,GAAG,CAAC,EAAU;QACb,OAAO,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAA;IACtC,CAAC;IAED;;;;;OAKG;IACH,UAAU;QACT,IAAI,IAAI,CAAC,UAAU;YAAE,MAAM,KAAK,CAAC,yBAAyB,CAAC,CAAA;QAC3D,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;QAClB,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACxB,OAAO,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAA;YACnD,yBAAyB;YACzB,MAAM,SAAS,GAAG,IAAI,iBAAiB,CACtC,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC,iBAAiB,CAC1C,CAAA;YACD,MAAM,SAAS,GAAG,IAAI,iBAAiB,CACtC,IAAI,CAAC,IAAI,GAAG,WAAW,CAAC,iBAAiB,CACzC,CAAA;YACD,IAAI,CAAC,SAAS,GAAG,IAAI,YAAY,CAAC,SAAS,CAAC,CAAA;YAC5C,IAAI,CAAC,uBAAuB,GAAG,IAAI,WAAW,CAAC,SAAS,CAAC,CAAA;YAEzD,gCAAgC;YAChC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;gBACpC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;gBAClC,IAAI,CAAC,uBAAuB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;YACpC,CAAC;YAED,kGAAkG;YAClG,kBAAkB;YAClB,MAAM,GAAG,GAAkC,KAAK,CAAC,IAAI,CACpD,EAAE,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,EACrB,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;gBACV,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAW;gBAC/B,GAAG,EAAE,IAAI,CAAC,uBAAuB,CAAC,CAAC,CAAW;aAC9C,CAAC,CACF,CAAA;YACD,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAA;YAC/B,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE;gBAC9B,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,EAAE,CAAA;gBACtB,IAAI,CAAC,uBAAuB,CAAC,CAAC,CAAC,GAAG,GAAG,CAAA;YACtC,CAAC,CAAC,CAAA;QACH,CAAC;aAAM,CAAC;YACP,0BAA0B;YAC1B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAA;YAC/B,2CAA2C;YAC3C,MAAM,SAAS,GAAG,IAAI,iBAAiB,CACtC,IAAI,CAAC,IAAI,GAAG,WAAW,CAAC,iBAAiB,CACzC,CAAA;YACD,IAAI,CAAC,uBAAuB,GAAG,IAAI,WAAW,CAAC,SAAS,CAAC,CAAA;YACzD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;gBACpC,IAAI,CAAC,uBAAuB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;YACpC,CAAC;QACF,CAAC;QAED,yCAAyC;QACzC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC,CAAA;QAC9C,MAAM,GAAG,GAAG,IAAI,iBAAiB,CAAC,IAAI,GAAG,YAAY,CAAC,iBAAiB,CAAC,CAAA;QACxE,IAAI,CAAC,OAAO,GAAG,IAAI,YAAY,CAAC,GAAG,EAAE,CAAC,EAAE,IAAI,CAAC,CAAA;QAC7C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;YAC/B,MAAM,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,UAAU,EAAE,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAA;YAClE,WAAW,CAAC,EAAE,EAAE,iBAAiB,CAAC,CAAA;YAClC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAAA;QACrB,CAAC;QAED,IAAI,CAAC,UAAU,GAAG,IAAI,CAAA;IACvB,CAAC;IAED;;;;;;OAMG;IACH,cAAc,CAAC,EAAU;QACxB,IAAI,CAAC,IAAI,CAAC,UAAU;YAAE,MAAM,KAAK,CAAC,oBAAoB,CAAC,CAAA;QAEvD,wBAAwB;QACxB,IAAI,EAAE,GAAG,CAAC,CAAA;QACV,IAAI,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAA;QAChC,OAAO,EAAE,GAAG,EAAE,EAAE,CAAC;YAChB,MAAM,GAAG,GAAG,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAA;YAC/B,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;YAChC,WAAW,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAA;YAC1C,IAAI,MAAM,IAAI,EAAE;gBAAE,EAAE,GAAG,GAAG,CAAA;;gBACrB,EAAE,GAAG,GAAG,GAAG,CAAC,CAAA;QAClB,CAAC;QACD,MAAM,KAAK,GAAG,EAAE,GAAG,UAAU,CAAA;QAC7B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;QAE/D,6BAA6B;QAC7B,IAAI,CAAC,GAAG,KAAK,CAAA;QACb,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC,CAAA;QACf,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;YACf,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAA;YACvB,MAAM,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;YAC3B,WAAW,CAAC,CAAC,EAAE,oBAAoB,CAAC,CAAA;YACpC,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC;gBACd,IAAI,IAAI,CAAC,YAAY;oBAAE,OAAO,CAAC,CAAA;gBAC/B,MAAM,KAAK,GAAG,IAAI,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAA;gBAC7C,WAAW,CAAC,KAAK,EAAE,uBAAuB,CAAC,CAAA;gBAC3C,OAAO,KAAK,CAAA;YACb,CAAC;YACD,IAAI,CAAC,GAAG,EAAE;gBAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;;gBAChB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QACf,CAAC;QAED,eAAe;QACf,OAAO,CAAC,CAAC,CAAA;IACV,CAAC;IAED;;OAEG;IACH,SAAS,CAAC,CAAY;QACrB,IAAI,IAAI,IAAI,CAAC;YAAE,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAA;QACvD,OAAO,CAAC,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAA;IACnC,CAAC;IAED,qDAAqD;IACrD,IAAI,MAAM;QACT,OAAO,IAAI,CAAC,SAAS,CAAA;IACtB,CAAC;IAED;;;OAGG;IACH,aAAa;QACZ,OAAO;YACN,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM;YAC1B,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM;YAChC,uBAAuB,EAAE,IAAI,CAAC,uBAAuB,CAAC,MAAM;YAC5D,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM;YAC5B,YAAY,EAAE,IAAI,CAAC,YAAY;SAC/B,CAAA;IACF,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,gBAAgB,CAAC,KAAa;QACpC,IAAI,KAAK,KAAK,CAAC;YAAE,OAAO,CAAC,CAAA;QACzB,OAAO,CACN,KAAK,GAAG,YAAY,CAAC,iBAAiB,GAAG,MAAM;YAC/C,KAAK,GAAG,YAAY,CAAC,iBAAiB,GAAG,YAAY;YACrD,KAAK,GAAG,WAAW,CAAC,iBAAiB,GAAG,0BAA0B;YAClE,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,UAAU,CAAC,GAAG,YAAY,CAAC,iBAAiB,CAAC,UAAU;SACzE,CAAA;IACF,CAAC;IAED;;;OAGG;IACH,UAAU,CAAC,MAAqB;QAC/B,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IACrC,CAAC;CACD"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAMH,cAAc,SAAS,CAAA;AACvB,cAAc,OAAO,CAAA;AACrB,cAAc,aAAa,CAAA;AAC3B,cAAc,eAAe,CAAA;AAC7B,cAAc,QAAQ,CAAA;AACtB,OAAO,EAAE,iBAAiB,EAAE,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAA;AACnE,cAAc,SAAS,CAAA;AACvB,cAAc,QAAQ,CAAA"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,4CAA4C;AAC5C,+CAA+C;AAC/C,iDAAiD;AAEjD,cAAc,SAAS,CAAA;AACvB,cAAc,OAAO,CAAA;AACrB,cAAc,aAAa,CAAA;AAC3B,cAAc,eAAe,CAAA;AAC7B,cAAc,QAAQ,CAAA;AACtB,OAAO,EAAE,iBAAiB,EAAmB,MAAM,gBAAgB,CAAA;AACnE,cAAc,SAAS,CAAA,CAAC,yBAAyB;AACjD,cAAc,QAAQ,CAAA"}
@@ -4,6 +4,7 @@ import { Entities, type EntitiesTransferables } from "./entities";
4
4
  import { type IdOrIndex } from "./ids";
5
5
  import type StringTable from "./stringtable";
6
6
  import { type BufferType } from "./typed-arrays";
7
+ import type { ContentHasher } from "./utils";
7
8
  export interface NodesTransferables<T extends BufferType = BufferType> extends EntitiesTransferables<T> {
8
9
  lons: T;
9
10
  lats: T;
@@ -97,5 +98,9 @@ export declare class Nodes extends Entities<OsmNode> {
97
98
  * Get the approximate memory requirements for a given number of nodes in bytes.
98
99
  */
99
100
  static getBytesRequired(count: number): number;
101
+ /**
102
+ * Update a ContentHasher with node-specific data (coordinates).
103
+ */
104
+ updateHash(hasher: ContentHasher): ContentHasher;
100
105
  }
101
106
  //# sourceMappingURL=nodes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nodes.d.ts","sourceRoot":"","sources":["../../src/nodes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAG/D,OAAO,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAGtE,OAAO,EAAE,QAAQ,EAAE,KAAK,qBAAqB,EAAE,MAAM,YAAY,CAAA;AACjE,OAAO,EAAE,KAAK,SAAS,EAAO,MAAM,OAAO,CAAA;AAC3C,OAAO,KAAK,WAAW,MAAM,eAAe,CAAA;AAE5C,OAAO,EAEN,KAAK,UAAU,EAEf,MAAM,gBAAgB,CAAA;AACvB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAE5C,MAAM,WAAW,kBAAkB,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU,CACpE,SAAQ,qBAAqB,CAAC,CAAC,CAAC;IAChC,IAAI,EAAE,CAAC,CAAA;IACP,IAAI,EAAE,CAAC,CAAA;IACP,IAAI,EAAE,SAAS,CAAA;IACf,wDAAwD;IACxD,YAAY,CAAC,EAAE,CAAC,CAAA;CAChB;AAED,MAAM,WAAW,cAAc;IAC9B,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,OAAO,CAAA;CACnC;AAED,qBAAa,KAAM,SAAQ,QAAQ,CAAC,OAAO,CAAC;IAC3C;;;OAGG;IACH,OAAO,CAAC,IAAI,CAAiB;IAC7B,OAAO,CAAC,IAAI,CAAiB;IAE7B,OAAO,CAAC,IAAI,CAUX;IAED,OAAO,CAAC,YAAY,CAKnB;IAED,OAAO,CAAC,iBAAiB,CAAQ;IAEjC;;OAEG;gBACS,WAAW,EAAE,WAAW,EAAE,aAAa,CAAC,EAAE,kBAAkB;IAyBxE;;OAEG;IACH,OAAO,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM;IAiB9B;;OAEG;IACH,aAAa,CACZ,KAAK,EAAE,gBAAgB,EACvB,KAAK,EAAE,WAAW,EAClB,mBAAmB,EAAE,WAAW,EAChC,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,OAAO,GACjC,MAAM;IAqFT;;OAEG;IACH,gBAAgB;IAKhB;;;OAGG;IACH,iBAAiB;IAoBjB;;OAEG;IACH,eAAe,IAAI,OAAO;IAI1B;;OAEG;IACH,OAAO,IAAI,SAAS;IAIpB;;OAEG;IACH,aAAa,CAAC,CAAC,EAAE,SAAS,GAAG,SAAS;IAOtC;;OAEG;IACH,aAAa,CAAC,CAAC,EAAE,SAAS,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;IAQ7C;;OAEG;IACH,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO;IAkBjE;;OAEG;IACH,qBAAqB,CAAC,IAAI,EAAE,SAAS,GAAG,MAAM,EAAE;IAKhD;;;;;;;OAOG;IACH,uBAAuB,CACtB,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,MAAM,GACd,MAAM,EAAE;IAWX;;;;;OAKG;IACH,UAAU,CACT,IAAI,EAAE,SAAS,EACf,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,OAAO,GAC9B;QACF,GAAG,EAAE,YAAY,CAAA;QACjB,SAAS,EAAE,YAAY,CAAA;KACvB;IAyBD;;;OAGG;IACM,aAAa,IAAI,kBAAkB;IAc5C;;OAEG;IACH,MAAM,CAAC,gBAAgB,CAAC,KAAK,EAAE,MAAM;IAiBrC;;OAEG;IACM,UAAU,CAAC,MAAM,EAAE,aAAa,GAAG,aAAa;CAMzD"}
@@ -305,5 +305,14 @@ export class Nodes extends Entities {
305
305
  count * Int32Array.BYTES_PER_ELEMENT + // lats (stored in microdegrees)
306
306
  spatialIndexBytes);
307
307
  }
308
+ /**
309
+ * Update a ContentHasher with node-specific data (coordinates).
310
+ */
311
+ updateHash(hasher) {
312
+ return super
313
+ .updateHash(hasher)
314
+ .update(this.lons.array)
315
+ .update(this.lats.array);
316
+ }
308
317
  }
309
318
  //# sourceMappingURL=nodes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nodes.js","sourceRoot":"","sources":["../../src/nodes.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,7 @@ import { Ways, type WaysTransferables } from "./ways";
8
8
  export interface OsmTransferables<T extends BufferType = BufferType> {
9
9
  id: string;
10
10
  header: OsmPbfHeaderBlock;
11
+ contentHash: string;
11
12
  stringTable: StringTableTransferables<T>;
12
13
  nodes: NodesTransferables<T>;
13
14
  ways: WaysTransferables<T>;
@@ -38,12 +39,14 @@ export declare class Osm {
38
39
  readonly ways: Ways;
39
40
  readonly relations: Relations;
40
41
  private indexBuilt;
42
+ private _contentHash;
41
43
  /**
42
44
  * Create a new OSM Entity index.
43
45
  */
44
46
  constructor(opts?: Partial<OsmOptions> | OsmTransferables | Osm);
45
47
  /**
46
48
  * Build the internal indexes for all entities.
49
+ * Also computes the content hash after indexes are built.
47
50
  */
48
51
  buildIndexes(): void;
49
52
  /**
@@ -70,5 +73,27 @@ export declare class Osm {
70
73
  * Get transferable objects for passing to another thread.
71
74
  */
72
75
  transferables(): OsmTransferables;
76
+ /**
77
+ * Get the content hash of this OSM dataset.
78
+ * The hash is computed when indexes are built.
79
+ *
80
+ * @returns A hex string hash uniquely identifying the content.
81
+ */
82
+ contentHash(): string;
83
+ /**
84
+ * Check if this OSM dataset has identical content to another.
85
+ * Uses the pre-computed content hash for fast comparison.
86
+ *
87
+ * @param other - The other Osm instance to compare with.
88
+ * @returns True if both datasets have identical content.
89
+ */
90
+ isEqual(other: Osm | null | undefined): boolean;
91
+ /**
92
+ * Compute a content hash of all underlying data.
93
+ * This hash uniquely identifies the dataset content regardless of metadata.
94
+ *
95
+ * @returns A hex string hash of the content.
96
+ */
97
+ private computeContentHash;
73
98
  }
74
99
  //# sourceMappingURL=osm.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"osm.d.ts","sourceRoot":"","sources":["../../src/osm.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AACnD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AACpD,OAAO,EAAE,KAAK,EAAE,KAAK,kBAAkB,EAAE,MAAM,SAAS,CAAA;AACxD,OAAO,EAAE,SAAS,EAAE,KAAK,sBAAsB,EAAE,MAAM,aAAa,CAAA;AACpE,OAAO,WAAW,EAAE,EAAE,KAAK,wBAAwB,EAAE,MAAM,eAAe,CAAA;AAC1E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAEhD,OAAO,EAAE,IAAI,EAAE,KAAK,iBAAiB,EAAE,MAAM,QAAQ,CAAA;AAErD,MAAM,WAAW,gBAAgB,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU;IAClE,EAAE,EAAE,MAAM,CAAA;IACV,MAAM,EAAE,iBAAiB,CAAA;IACzB,WAAW,EAAE,MAAM,CAAA;IACnB,WAAW,EAAE,wBAAwB,CAAC,CAAC,CAAC,CAAA;IACxC,KAAK,EAAE,kBAAkB,CAAC,CAAC,CAAC,CAAA;IAC5B,IAAI,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAA;IAC1B,SAAS,EAAE,sBAAsB,CAAC,CAAC,CAAC,CAAA;CACpC;AAED,MAAM,WAAW,OAAO;IACvB,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,SAAS,CAAA;IACf,MAAM,EAAE,iBAAiB,CAAA;IACzB,KAAK,EAAE;QACN,KAAK,EAAE,MAAM,CAAA;QACb,IAAI,EAAE,MAAM,CAAA;QACZ,SAAS,EAAE,MAAM,CAAA;KACjB,CAAA;CACD;AAED,MAAM,WAAW,UAAU;IAC1B,EAAE,EAAE,MAAM,CAAA;IACV,MAAM,EAAE,iBAAiB,CAAA;CACzB;AAED;;GAEG;AACH,qBAAa,GAAG;IAEf,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,MAAM,EAAE,iBAAiB,CAAA;IAGlC,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAA;IACjC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAA;IACrB,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAA;IACnB,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAA;IAE7B,OAAO,CAAC,UAAU,CAAQ;IAC1B,OAAO,CAAC,YAAY,CAAK;IAEzB;;OAEG;gBACS,IAAI,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,gBAAgB,GAAG,GAAG;IA4C/D;;;OAGG;IACH,YAAY;IAUZ;;OAEG;IACH,OAAO;IASP;;OAEG;IACH,mBAAmB;IAMnB;;OAEG;IACH,iBAAiB,IAAI,OAAO;IAQ5B;;OAEG;IACH,IAAI,IAAI,SAAS;IAIjB;;OAEG;IACH,IAAI,IAAI,OAAO;IAaf;;OAEG;IACH,aAAa,IAAI,gBAAgB;IAYjC;;;;;OAKG;IACH,WAAW,IAAI,MAAM;IAIrB;;;;;;OAMG;IACH,OAAO,CAAC,KAAK,EAAE,GAAG,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO;IAK/C;;;;;OAKG;IACH,OAAO,CAAC,kBAAkB;CAU1B"}
@@ -1,6 +1,7 @@
1
1
  import { Nodes } from "./nodes";
2
2
  import { Relations } from "./relations";
3
3
  import StringTable, {} from "./stringtable";
4
+ import { ContentHasher } from "./utils";
4
5
  import { Ways } from "./ways";
5
6
  /**
6
7
  * OSM Entity Index.
@@ -15,6 +16,7 @@ export class Osm {
15
16
  ways;
16
17
  relations;
17
18
  indexBuilt = false;
19
+ _contentHash = "";
18
20
  /**
19
21
  * Create a new OSM Entity index.
20
22
  */
@@ -30,6 +32,7 @@ export class Osm {
30
32
  this.nodes = new Nodes(this.stringTable, opts.nodes.transferables());
31
33
  this.ways = new Ways(this.stringTable, this.nodes, opts.ways.transferables());
32
34
  this.relations = new Relations(this.stringTable, this.nodes, this.ways, opts.relations.transferables());
35
+ this._contentHash = opts._contentHash;
33
36
  this.indexBuilt = true;
34
37
  }
35
38
  else {
@@ -37,6 +40,7 @@ export class Osm {
37
40
  this.nodes = new Nodes(this.stringTable, opts.nodes);
38
41
  this.ways = new Ways(this.stringTable, this.nodes, opts.ways);
39
42
  this.relations = new Relations(this.stringTable, this.nodes, this.ways, opts.relations);
43
+ this._contentHash = opts.contentHash;
40
44
  this.indexBuilt = true;
41
45
  }
42
46
  }
@@ -49,6 +53,7 @@ export class Osm {
49
53
  }
50
54
  /**
51
55
  * Build the internal indexes for all entities.
56
+ * Also computes the content hash after indexes are built.
52
57
  */
53
58
  buildIndexes() {
54
59
  this.stringTable.buildIndex();
@@ -56,6 +61,8 @@ export class Osm {
56
61
  this.ways.buildIndex();
57
62
  this.relations.buildIndex();
58
63
  this.indexBuilt = true;
64
+ // Compute content hash after indexes are built
65
+ this._contentHash = this.computeContentHash();
59
66
  }
60
67
  /**
61
68
  * Check if the index is built and ready for use.
@@ -110,11 +117,49 @@ export class Osm {
110
117
  return {
111
118
  id: this.id,
112
119
  header: this.header,
120
+ contentHash: this._contentHash,
113
121
  stringTable: this.stringTable.transferables(),
114
122
  nodes: this.nodes.transferables(),
115
123
  ways: this.ways.transferables(),
116
124
  relations: this.relations.transferables(),
117
125
  };
118
126
  }
127
+ /**
128
+ * Get the content hash of this OSM dataset.
129
+ * The hash is computed when indexes are built.
130
+ *
131
+ * @returns A hex string hash uniquely identifying the content.
132
+ */
133
+ contentHash() {
134
+ return this._contentHash;
135
+ }
136
+ /**
137
+ * Check if this OSM dataset has identical content to another.
138
+ * Uses the pre-computed content hash for fast comparison.
139
+ *
140
+ * @param other - The other Osm instance to compare with.
141
+ * @returns True if both datasets have identical content.
142
+ */
143
+ isEqual(other) {
144
+ if (!other)
145
+ return false;
146
+ return this._contentHash === other._contentHash;
147
+ }
148
+ /**
149
+ * Compute a content hash of all underlying data.
150
+ * This hash uniquely identifies the dataset content regardless of metadata.
151
+ *
152
+ * @returns A hex string hash of the content.
153
+ */
154
+ computeContentHash() {
155
+ const hasher = new ContentHasher();
156
+ // Hash string table first (shared by all entities)
157
+ this.stringTable.updateHash(hasher);
158
+ // Hash each entity collection
159
+ this.nodes.updateHash(hasher);
160
+ this.ways.updateHash(hasher);
161
+ this.relations.updateHash(hasher);
162
+ return hasher.digest();
163
+ }
119
164
  }
120
165
  //# sourceMappingURL=osm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"osm.js","sourceRoot":"","sources":["../../src/osm.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,7 @@ import { type IdOrIndex } from "./ids";
6
6
  import type { Nodes } from "./nodes";
7
7
  import type StringTable from "./stringtable";
8
8
  import { type BufferType } from "./typed-arrays";
9
+ import { type ContentHasher } from "./utils";
9
10
  import type { Ways } from "./ways";
10
11
  export interface RelationsTransferables<T extends BufferType = BufferType> extends EntitiesTransferables<T> {
11
12
  memberStart: T;
@@ -114,5 +115,9 @@ export declare class Relations extends Entities<OsmRelation> {
114
115
  * Get the approximate memory requirements for a given number of relations in bytes.
115
116
  */
116
117
  static getBytesRequired(count: number): number;
118
+ /**
119
+ * Update a ContentHasher with relation-specific data (members).
120
+ */
121
+ updateHash(hasher: ContentHasher): ContentHasher;
117
122
  }
118
123
  //# sourceMappingURL=relations.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"relations.d.ts","sourceRoot":"","sources":["../../src/relations.ts"],"names":[],"mappings":"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"}
@@ -408,5 +408,17 @@ export class Relations extends Entities {
408
408
  count * 4 * Float64Array.BYTES_PER_ELEMENT + // bbox
409
409
  spatialIndexBytes);
410
410
  }
411
+ /**
412
+ * Update a ContentHasher with relation-specific data (members).
413
+ */
414
+ updateHash(hasher) {
415
+ return super
416
+ .updateHash(hasher)
417
+ .update(this.memberStart.array)
418
+ .update(this.memberCount.array)
419
+ .update(this.memberRefs.array)
420
+ .update(this.memberTypes.array)
421
+ .update(this.memberRoles.array);
422
+ }
411
423
  }
412
424
  //# sourceMappingURL=relations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"relations.js","sourceRoot":"","sources":["../../src/relations.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,7 @@
8
8
  */
9
9
  import type { OsmPbfStringTable } from "@osmix/pbf";
10
10
  import { type BufferType, ResizeableTypedArray as RTA } from "./typed-arrays";
11
+ import type { ContentHasher } from "./utils";
11
12
  /**
12
13
  * Serializable state for worker transfer.
13
14
  */
@@ -91,5 +92,10 @@ export default class StringTable {
91
92
  * Find the index of a string.
92
93
  */
93
94
  find(str: string): number;
95
+ /**
96
+ * Update a ContentHasher with the string table's data.
97
+ * Hashes the bytes, start offsets, and counts.
98
+ */
99
+ updateHash(hasher: ContentHasher): ContentHasher;
94
100
  }
95
101
  //# sourceMappingURL=stringtable.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stringtable.d.ts","sourceRoot":"","sources":["../../src/stringtable.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AACnD,OAAO,EAAE,KAAK,UAAU,EAAE,oBAAoB,IAAI,GAAG,EAAE,MAAM,gBAAgB,CAAA;AAC7E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAE5C;;GAEG;AACH,MAAM,WAAW,wBAAwB,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU;IAC1E,gCAAgC;IAChC,KAAK,EAAE,CAAC,CAAA;IACR,uCAAuC;IACvC,KAAK,EAAE,CAAC,CAAA;IACR,uCAAuC;IACvC,KAAK,EAAE,CAAC,CAAA;CACR;AAED;;;;;GAKG;AACH,MAAM,CAAC,OAAO,OAAO,WAAW;IAC/B,gDAAgD;IAChD,OAAO,CAAC,GAAG,CAAoB;IAC/B,gDAAgD;IAChD,OAAO,CAAC,GAAG,CAAoB;IAG/B,8CAA8C;IAC9C,KAAK,EAAE,GAAG,CAAC,UAAU,CAAC,CAAA;IACtB,qDAAqD;IACrD,KAAK,EAAE,GAAG,CAAC,WAAW,CAAC,CAAA;IACvB,sCAAsC;IACtC,KAAK,EAAE,GAAG,CAAC,WAAW,CAAC,CAAA;IAGvB,4DAA4D;IAC5D,OAAO,CAAC,aAAa,CAA4B;IAEjD,qEAAqE;IACrE,OAAO,CAAC,iBAAiB,CAAQ;IAGjC,gEAAgE;IAChE,OAAO,CAAC,aAAa,CAA4B;IAEjD;;OAEG;gBACS,IAAI,CAAC,EAAE,wBAAwB;IAY3C;;OAEG;IACH,aAAa,IAAI,wBAAwB;IAQzC;;OAEG;IACH,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAYxB;;;OAGG;IACH,mBAAmB,CAAC,gBAAgB,EAAE,iBAAiB;IAevD;;;OAGG;IACH,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAY1B;;;OAGG;IACH,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU;IAQnC,sCAAsC;IACtC,IAAI,MAAM,WAET;IAED;;;;;OAKG;IACH,UAAU;IAOV;;OAEG;IACH,mBAAmB,IAAI,iBAAiB;IAQxC;;;OAGG;IACH,OAAO,CAAC,kBAAkB;IAS1B;;OAEG;IACH,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAOzB;;;OAGG;IACH,UAAU,CAAC,MAAM,EAAE,aAAa,GAAG,aAAa;CAMhD"}
@@ -166,5 +166,15 @@ export default class StringTable {
166
166
  this.ensureReverseIndex();
167
167
  return this.stringToIndex.get(str) ?? -1;
168
168
  }
169
+ /**
170
+ * Update a ContentHasher with the string table's data.
171
+ * Hashes the bytes, start offsets, and counts.
172
+ */
173
+ updateHash(hasher) {
174
+ return hasher
175
+ .update(this.bytes.array)
176
+ .update(this.start.array)
177
+ .update(this.count.array);
178
+ }
169
179
  }
170
180
  //# sourceMappingURL=stringtable.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stringtable.js","sourceRoot":"","sources":["../../src/stringtable.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,7 @@
10
10
  import type { OsmTags } from "@osmix/shared/types";
11
11
  import StringTable from "./stringtable";
12
12
  import { type BufferType } from "./typed-arrays";
13
+ import type { ContentHasher } from "./utils";
13
14
  /**
14
15
  * Serializable state for worker transfer.
15
16
  */
@@ -122,5 +123,10 @@ export declare class Tags {
122
123
  * Reconstruct a Tags index from transferable objects.
123
124
  */
124
125
  static fromTransferables(stringTable: StringTable, transferables: TagsTransferables): Tags;
126
+ /**
127
+ * Update a ContentHasher with the tags data.
128
+ * Hashes tag keys and values for each entity.
129
+ */
130
+ updateHash(hasher: ContentHasher): ContentHasher;
125
131
  }
126
132
  //# sourceMappingURL=tags.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tags.d.ts","sourceRoot":"","sources":["../../src/tags.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,WAAW,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,KAAK,UAAU,EAA+B,MAAM,gBAAgB,CAAA;AAC7E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAE5C;;GAEG;AACH,MAAM,WAAW,iBAAiB,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU;IACnE,6DAA6D;IAC7D,QAAQ,EAAE,CAAC,CAAA;IACX,0CAA0C;IAC1C,QAAQ,EAAE,CAAC,CAAA;IACX,iCAAiC;IACjC,OAAO,EAAE,CAAC,CAAA;IACV,mCAAmC;IACnC,OAAO,EAAE,CAAC,CAAA;IAEV,uDAAuD;IACvD,WAAW,EAAE,CAAC,CAAA;IACd,sDAAsD;IACtD,aAAa,EAAE,CAAC,CAAA;IAChB,wDAAwD;IACxD,aAAa,EAAE,CAAC,CAAA;CAChB;AAED;;;;;GAKG;AACH,qBAAa,IAAI;IAChB,iEAAiE;IACjE,OAAO,CAAC,WAAW,CAAiC;IAGpD,4DAA4D;IAC5D,OAAO,CAAC,QAAQ,CAAkB;IAClC,mDAAmD;IACnD,OAAO,CAAC,QAAQ,CAAiB;IACjC,+CAA+C;IAC/C,OAAO,CAAC,OAAO,CAAkB;IACjC,uEAAuE;IACvE,OAAO,CAAC,OAAO,CAAkB;IAGjC;;;OAGG;IACH,OAAO,CAAC,WAAW,CAAkB;IAErC,4DAA4D;IAC5D,OAAO,CAAC,aAAa,CAAkB;IACvC,8DAA8D;IAC9D,OAAO,CAAC,aAAa,CAAkB;IAEvC;;;OAGG;IACH,OAAO,CAAC,qBAAqB,CAA8B;IAE3D,2CAA2C;IAC3C,OAAO,CAAC,UAAU,CAAQ;IAE1B;;OAEG;gBACS,WAAW,EAAE,WAAW,EAAE,aAAa,CAAC,EAAE,iBAAiB;IAsBvE;;OAEG;IACH,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC;IAgB5D;;OAEG;IACH,mBAAmB,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE;IAgBnE;;;;;OAKG;IACH,UAAU;IAoBV;;OAEG;IACH,OAAO;IAIP;;OAEG;IACH,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAIlC;;OAEG;IACH,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS;IAuB3C;;OAEG;IACH,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO;IAY7D;;OAEG;IACH,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAIzB;;OAEG;IACH,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,EAAE;IAOlC;;;OAGG;IACH,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM;IAKlC;;OAEG;IACH,aAAa,IAAI,iBAAiB;IAYlC;;OAEG;IACH,MAAM,CAAC,gBAAgB,CAAC,KAAK,EAAE,MAAM;IAOrC;;OAEG;IACH,MAAM,CAAC,iBAAiB,CACvB,WAAW,EAAE,WAAW,EACxB,aAAa,EAAE,iBAAiB;IAOjC;;;OAGG;IACH,UAAU,CAAC,MAAM,EAAE,aAAa,GAAG,aAAa;CAOhD"}
@@ -224,5 +224,16 @@ export class Tags {
224
224
  tagIndex.indexBuilt = true;
225
225
  return tagIndex;
226
226
  }
227
+ /**
228
+ * Update a ContentHasher with the tags data.
229
+ * Hashes tag keys and values for each entity.
230
+ */
231
+ updateHash(hasher) {
232
+ return hasher
233
+ .update(this.tagStart.array)
234
+ .update(this.tagCount.array)
235
+ .update(this.tagKeys.array)
236
+ .update(this.tagVals.array);
237
+ }
227
238
  }
228
239
  //# sourceMappingURL=tags.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tags.js","sourceRoot":"","sources":["../../src/tags.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"typed-arrays.d.ts","sourceRoot":"","sources":["../../src/typed-arrays.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH;;;GAGG;AACH,eAAO,MAAM,iBAAiB,uDAGa,CAAA;AAE3C,+EAA+E;AAC/E,MAAM,MAAM,UAAU,GAAG,YAAY,CAAC,OAAO,iBAAiB,CAAC,CAAA;AAE/D;;;GAGG;AACH,MAAM,MAAM,UAAU,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU,IACrD,SAAS,CAAC,CAAC,CAAC,GACZ,UAAU,CAAC,CAAC,CAAC,GACb,iBAAiB,CAAC,CAAC,CAAC,GACpB,UAAU,CAAC,CAAC,CAAC,GACb,WAAW,CAAC,CAAC,CAAC,GACd,UAAU,CAAC,CAAC,CAAC,GACb,WAAW,CAAC,CAAC,CAAC,GACd,YAAY,CAAC,CAAC,CAAC,GACf,YAAY,CAAC,CAAC,CAAC,CAAA;AAElB;;GAEG;AACH,MAAM,WAAW,qBAAqB,CACrC,CAAC,SAAS,UAAU,CAAC,UAAU,CAAC,GAAG,UAAU,CAAC,UAAU,CAAC;IAEzD,KAAK,MAAM,EAAE,UAAU,GAAG,CAAC,CAAA;IAC3B,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAA;CAClC;AAED;;;;;;GAMG;AACH,eAAO,MAAM,WAAW,yBAAe,CAAA;AAEvC;;;;;GAKG;AACH,eAAO,MAAM,cAAc,wBAAc,CAAA;AAEzC;;;GAGG;AACH,eAAO,MAAM,mBAAmB,QAAU,CAAA;AAE1C;;;;;;GAMG;AACH,qBAAa,oBAAoB,CAAC,EAAE,SAAS,UAAU;IACtD,oDAAoD;IACpD,SAAS,EAAE,qBAAqB,CAAC,EAAE,CAAC,CAAA;IACpC,mDAAmD;IACnD,KAAK,EAAE,EAAE,CAAA;IACT,sEAAsE;IACtE,KAAK,SAAI;IAET,sDAAsD;IACtD,MAAM,EAAE,UAAU,CAAA;IAClB,mCAAmC;IACnC,UAAU,EAAE,MAAM,CAAA;IAClB,+CAA+C;IAC/C,aAAa,EAAE,MAAM,CAAA;IAErB,4DAA4D;IAC5D,EAAE,EAAE,4BAA4B,GAAG,sBAAsB,CAAA;IAEzD;;;;;;;;;OASG;IACH,MAAM,CAAC,IAAI,CAAC,EAAE,SAAS,UAAU,EAChC,SAAS,EAAE,qBAAqB,CAAC,EAAE,CAAC,EACpC,MAAM,EAAE,UAAU;IAYnB;;;;;OAKG;gBAEF,SAAS,EAAE,qBAAqB,CAAC,EAAE,CAAC,EACpC,EAAE,GACC,4BAA4B,GAC5B,sBAA0C;IAY9C;;OAEG;IACH,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,aAAa,CAAC,MAAM,CAAC;IAI1C;;;OAGG;IACH,WAAW;IAwBX;;OAEG;IACH,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IASzB;;OAEG;IACH,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM;IAIhC,IAAI,MAAM,WAET;IAED;;OAEG;IACH,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAQ3B;;OAEG;IACH,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IAShC;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,UAAU;IAMtC;;;OAGG;IACH,OAAO;CAgBP"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"typed-arrays.js","sourceRoot":"","sources":["../../src/typed-arrays.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH;;;GAGG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAC7B,OAAO,iBAAiB,KAAK,WAAW;IACvC,CAAC,CAAE,iBAAkD;IACrD,CAAC,CAAE,WAAsC,CAAA;AA8B3C;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,YAAY,CAAA;AAEvC;;;;;GAKG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,WAAW,CAAA;AAEzC;;;GAGG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,IAAI,EAAE,CAAA,CAAC,QAAQ;AAEnD;;;;;;GAMG;AACH,MAAM,OAAO,oBAAoB;IAChC,oDAAoD;IACpD,SAAS,CAA2B;IACpC,mDAAmD;IACnD,KAAK,CAAI;IACT,sEAAsE;IACtE,KAAK,GAAG,CAAC,CAAA;IAET,sDAAsD;IACtD,MAAM,CAAY;IAClB,mCAAmC;IACnC,UAAU,CAAQ;IAClB,+CAA+C;IAC/C,aAAa,CAAQ;IAErB,4DAA4D;IAC5D,EAAE,CAAuD;IAEzD;;;;;;;;;OASG;IACH,MAAM,CAAC,IAAI,CACV,SAAoC,EACpC,MAAkB;QAElB,MAAM,GAAG,GAAG,IAAI,oBAAoB,CACnC,SAAS,EACT,MAAM,YAAY,iBAAiB,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,WAAW,CACrE,CAAA;QACD,GAAG,CAAC,MAAM,GAAG,MAAM,CAAA;QACnB,GAAG,CAAC,KAAK,GAAG,IAAI,SAAS,CAAC,MAAM,CAAC,CAAA;QACjC,GAAG,CAAC,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,MAAM,CAAA;QAC5B,OAAO,GAAG,CAAA;IACX,CAAC;IAED;;;;;OAKG;IACH,YACC,SAAoC,EACpC,KAE4B,iBAAiB;QAE7C,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;QAC1B,IAAI,CAAC,UAAU,GAAG,mBAAmB,CAAA;QACrC,IAAI,CAAC,aAAa,GAAG,mBAAmB,GAAG,CAAC,CAAA;QAC5C,IAAI,CAAC,EAAE,GAAG,EAAE,CAAA;QACZ,IAAI,CAAC,MAAM,GAAG,IAAI,EAAE,CAAC,IAAI,CAAC,UAAU,EAAE;YACrC,aAAa,EAAE,IAAI,CAAC,aAAa;SACjC,CAAC,CAAA;QACF,IAAI,CAAC,KAAK,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IAC7C,CAAC;IAED;;OAEG;IACH,CAAC,MAAM,CAAC,QAAQ,CAAC;QAChB,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAA;IACrC,CAAC;IAED;;;OAGG;IACH,WAAW;QACV,IAAI,CAAC,UAAU,IAAI,CAAC,CAAA;QACpB,IAAI,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC;YACjD,yDAAyD;YACzD,IAAI,CAAC,aAAa,IAAI,CAAC,CAAA;YACvB,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,EAAE;gBAC9C,aAAa,EAAE,IAAI,CAAC,aAAa;aACjC,CAAC,CAAA;YACF,MAAM,QAAQ,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;YAC9C,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YACxB,IAAI,CAAC,MAAM,GAAG,SAAS,CAAA;YACvB,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAA;QACtB,CAAC;aAAM,CAAC;YACP,+CAA+C;YAC/C,IAAI,IAAI,CAAC,MAAM,YAAY,iBAAiB,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;gBACtE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;YAClC,CAAC;iBAAM,IAAI,IAAI,CAAC,MAAM,YAAY,WAAW,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;gBACxE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;YACpC,CAAC;iBAAM,CAAC;gBACP,MAAM,KAAK,CAAC,qCAAqC,CAAC,CAAA;YACnD,CAAC;QACF,CAAC;IACF,CAAC;IAED;;OAEG;IACH,EAAE,CAAC,KAAa;QACf,IAAI,KAAK,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,KAAK,IAAI,IAAI,CAAC,MAAM;YAC/C,MAAM,KAAK,CAAC,wBAAwB,KAAK,aAAa,IAAI,CAAC,MAAM,EAAE,CAAC,CAAA;QACrE,IAAI,KAAK,GAAG,CAAC;YAAE,OAAO,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,CAAA;QAClD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QAChC,IAAI,MAAM,KAAK,SAAS;YAAE,MAAM,KAAK,CAAC,sBAAsB,KAAK,EAAE,CAAC,CAAA;QACpE,OAAO,MAAM,CAAA;IACd,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAa,EAAE,GAAW;QAC/B,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;IACpC,CAAC;IAED,IAAI,MAAM;QACT,OAAO,IAAI,CAAC,KAAK,CAAA;IAClB,CAAC;IAED;;OAEG;IACH,IAAI,CAAC,KAAa;QACjB,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;YACtC,IAAI,CAAC,WAAW,EAAE,CAAA;QACnB,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,GAAG,KAAK,CAAA;QAChC,OAAO,IAAI,CAAC,MAAM,GAAG,CAAC,CAAA;IACvB,CAAC;IAED;;OAEG;IACH,GAAG,CAAC,KAAa,EAAE,KAAa;QAC/B,IAAI,KAAK,GAAG,CAAC;YAAE,MAAM,KAAK,CAAC,qBAAqB,CAAC,CAAA;QACjD,IAAI,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAC1B,OAAO,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM;gBAAE,IAAI,CAAC,WAAW,EAAE,CAAA;YACrD,IAAI,CAAC,KAAK,GAAG,KAAK,GAAG,CAAC,CAAA;QACvB,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,KAAK,CAAA;IAC1B,CAAC;IAED;;OAEG;IACH,QAAQ,CAAC,MAA6B;QACrC,OAAO,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM;YAAE,IAAI,CAAC,WAAW,EAAE,CAAA;QAC1E,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;QACnC,IAAI,CAAC,KAAK,IAAI,MAAM,CAAC,MAAM,CAAA;IAC5B,CAAC;IAED;;;OAGG;IACH,OAAO;QACN,IAAI,IAAI,CAAC,MAAM,YAAY,iBAAiB,EAAE,CAAC;YAC9C,mEAAmE;YACnE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAC9B,CAAC,EACD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAC9C,CAAA;QACF,CAAC;aAAM,CAAC;YACP,gEAAgE;YAChE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,qBAAqB,CAC9C,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAC9C,CAAA;QACF,CAAC;QACD,IAAI,CAAC,KAAK,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QAC5C,OAAO,IAAI,CAAC,KAAK,CAAA;IAClB,CAAC;CACD"}