@neilberkman/sidereon 0.29.1 → 0.30.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/pkg/sidereon.js CHANGED
@@ -5887,6 +5887,68 @@ export class GnssDistributionLocation {
5887
5887
  }
5888
5888
  if (Symbol.dispose) GnssDistributionLocation.prototype[Symbol.dispose] = GnssDistributionLocation.prototype.free;
5889
5889
 
5890
+ /**
5891
+ * Require available identities to be exactly the declared product set.
5892
+ *
5893
+ * The expected set must be non-empty. Both lists reject duplicates; missing
5894
+ * and undeclared identities fail. Comparison includes every identity field,
5895
+ * not only the official filename. SP3 observed/predicted timing comes from
5896
+ * `Sp3.predictionSummary()`, not catalog fields or issue times.
5897
+ */
5898
+ export class GnssExactProductSet {
5899
+ __destroy_into_raw() {
5900
+ const ptr = this.__wbg_ptr;
5901
+ this.__wbg_ptr = 0;
5902
+ GnssExactProductSetFinalization.unregister(this);
5903
+ return ptr;
5904
+ }
5905
+ free() {
5906
+ const ptr = this.__destroy_into_raw();
5907
+ wasm.__wbg_gnssexactproductset_free(ptr, 0);
5908
+ }
5909
+ /**
5910
+ * @param {GnssProductIdentity} identity
5911
+ */
5912
+ addAvailable(identity) {
5913
+ _assertClass(identity, GnssProductIdentity);
5914
+ wasm.gnssexactproductset_addAvailable(this.__wbg_ptr, identity.__wbg_ptr);
5915
+ }
5916
+ /**
5917
+ * @param {GnssProductIdentity} identity
5918
+ */
5919
+ addExpected(identity) {
5920
+ _assertClass(identity, GnssProductIdentity);
5921
+ wasm.gnssexactproductset_addExpected(this.__wbg_ptr, identity.__wbg_ptr);
5922
+ }
5923
+ /**
5924
+ * @returns {number}
5925
+ */
5926
+ get availableCount() {
5927
+ const ret = wasm.gnssexactproductset_availableCount(this.__wbg_ptr);
5928
+ return ret >>> 0;
5929
+ }
5930
+ /**
5931
+ * @returns {number}
5932
+ */
5933
+ get expectedCount() {
5934
+ const ret = wasm.gnssexactproductset_expectedCount(this.__wbg_ptr);
5935
+ return ret >>> 0;
5936
+ }
5937
+ constructor() {
5938
+ const ret = wasm.gnssexactproductset_new();
5939
+ this.__wbg_ptr = ret;
5940
+ GnssExactProductSetFinalization.register(this, this.__wbg_ptr, this);
5941
+ return this;
5942
+ }
5943
+ validate() {
5944
+ const ret = wasm.gnssexactproductset_validate(this.__wbg_ptr);
5945
+ if (ret[1]) {
5946
+ throw takeFromExternrefTable0(ret[0]);
5947
+ }
5948
+ }
5949
+ }
5950
+ if (Symbol.dispose) GnssExactProductSet.prototype[Symbol.dispose] = GnssExactProductSet.prototype.free;
5951
+
5890
5952
  /**
5891
5953
  * Stateful GNSS/INS filter resource.
5892
5954
  */
@@ -6309,6 +6371,21 @@ export class GnssProductIdentity {
6309
6371
  const ptr = this.__destroy_into_raw();
6310
6372
  wasm.__wbg_gnssproductidentity_free(ptr, 0);
6311
6373
  }
6374
+ /**
6375
+ * @returns {string}
6376
+ */
6377
+ get analysisCenter() {
6378
+ let deferred1_0;
6379
+ let deferred1_1;
6380
+ try {
6381
+ const ret = wasm.gnssproductidentity_analysisCenter(this.__wbg_ptr);
6382
+ deferred1_0 = ret[0];
6383
+ deferred1_1 = ret[1];
6384
+ return getStringFromWasm0(ret[0], ret[1]);
6385
+ } finally {
6386
+ wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
6387
+ }
6388
+ }
6312
6389
  /**
6313
6390
  * Stable validated identity key suitable for caller-managed cache paths.
6314
6391
  * @returns {string}
@@ -6390,6 +6467,18 @@ export class GnssProductIdentity {
6390
6467
  wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
6391
6468
  }
6392
6469
  }
6470
+ /**
6471
+ * @returns {string | undefined}
6472
+ */
6473
+ get formatVersion() {
6474
+ const ret = wasm.gnssproductidentity_formatVersion(this.__wbg_ptr);
6475
+ let v1;
6476
+ if (ret[0] !== 0) {
6477
+ v1 = getStringFromWasm0(ret[0], ret[1]).slice();
6478
+ wasm.__wbindgen_free(ret[0], ret[1] * 1, 1);
6479
+ }
6480
+ return v1;
6481
+ }
6393
6482
  /**
6394
6483
  * @returns {string | undefined}
6395
6484
  */
@@ -21575,6 +21664,40 @@ export function buildDualFrequencyRinexRtkArc(ephemeris, base_obs, rover_obs, op
21575
21664
  return takeFromExternrefTable0(ret[0]);
21576
21665
  }
21577
21666
 
21667
+ /**
21668
+ * Build the shared exact-cache commit bytes for a complete immutable candidate.
21669
+ *
21670
+ * Browser hosts should stage product, archive, and provenance under `entry_id`
21671
+ * and make the returned marker visible in the same IndexedDB transaction.
21672
+ * @param {GnssProductIdentity} identity
21673
+ * @param {string} source
21674
+ * @param {string} entry_id
21675
+ * @param {Uint8Array} product
21676
+ * @param {Uint8Array} archive
21677
+ * @param {Uint8Array} provenance
21678
+ * @returns {Uint8Array}
21679
+ */
21680
+ export function buildExactCacheCommit(identity, source, entry_id, product, archive, provenance) {
21681
+ _assertClass(identity, GnssProductIdentity);
21682
+ const ptr0 = passStringToWasm0(source, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
21683
+ const len0 = WASM_VECTOR_LEN;
21684
+ const ptr1 = passStringToWasm0(entry_id, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
21685
+ const len1 = WASM_VECTOR_LEN;
21686
+ const ptr2 = passArray8ToWasm0(product, wasm.__wbindgen_malloc);
21687
+ const len2 = WASM_VECTOR_LEN;
21688
+ const ptr3 = passArray8ToWasm0(archive, wasm.__wbindgen_malloc);
21689
+ const len3 = WASM_VECTOR_LEN;
21690
+ const ptr4 = passArray8ToWasm0(provenance, wasm.__wbindgen_malloc);
21691
+ const len4 = WASM_VECTOR_LEN;
21692
+ const ret = wasm.buildExactCacheCommit(identity.__wbg_ptr, ptr0, len0, ptr1, len1, ptr2, len2, ptr3, len3, ptr4, len4);
21693
+ if (ret[3]) {
21694
+ throw takeFromExternrefTable0(ret[2]);
21695
+ }
21696
+ var v6 = getArrayU8FromWasm0(ret[0], ret[1]).slice();
21697
+ wasm.__wbindgen_free(ret[0], ret[1] * 1, 1);
21698
+ return v6;
21699
+ }
21700
+
21578
21701
  /**
21579
21702
  * Build single-frequency RTK arc records from parsed RINEX OBS products.
21580
21703
  *
@@ -29382,6 +29505,47 @@ export function velocityMidas(series, options) {
29382
29505
  return takeFromExternrefTable0(ret[0]);
29383
29506
  }
29384
29507
 
29508
+ /**
29509
+ * Verify a shared commit marker against the requested full identity, source,
29510
+ * and all three immutable byte objects. Returns the committed entry id.
29511
+ * @param {GnssProductIdentity} identity
29512
+ * @param {string} source
29513
+ * @param {Uint8Array} marker
29514
+ * @param {Uint8Array} product
29515
+ * @param {Uint8Array} archive
29516
+ * @param {Uint8Array} provenance
29517
+ * @returns {string}
29518
+ */
29519
+ export function verifyExactCacheCommit(identity, source, marker, product, archive, provenance) {
29520
+ let deferred7_0;
29521
+ let deferred7_1;
29522
+ try {
29523
+ _assertClass(identity, GnssProductIdentity);
29524
+ const ptr0 = passStringToWasm0(source, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
29525
+ const len0 = WASM_VECTOR_LEN;
29526
+ const ptr1 = passArray8ToWasm0(marker, wasm.__wbindgen_malloc);
29527
+ const len1 = WASM_VECTOR_LEN;
29528
+ const ptr2 = passArray8ToWasm0(product, wasm.__wbindgen_malloc);
29529
+ const len2 = WASM_VECTOR_LEN;
29530
+ const ptr3 = passArray8ToWasm0(archive, wasm.__wbindgen_malloc);
29531
+ const len3 = WASM_VECTOR_LEN;
29532
+ const ptr4 = passArray8ToWasm0(provenance, wasm.__wbindgen_malloc);
29533
+ const len4 = WASM_VECTOR_LEN;
29534
+ const ret = wasm.verifyExactCacheCommit(identity.__wbg_ptr, ptr0, len0, ptr1, len1, ptr2, len2, ptr3, len3, ptr4, len4);
29535
+ var ptr6 = ret[0];
29536
+ var len6 = ret[1];
29537
+ if (ret[3]) {
29538
+ ptr6 = 0; len6 = 0;
29539
+ throw takeFromExternrefTable0(ret[2]);
29540
+ }
29541
+ deferred7_0 = ptr6;
29542
+ deferred7_1 = len6;
29543
+ return getStringFromWasm0(ptr6, len6);
29544
+ } finally {
29545
+ wasm.__wbindgen_free(deferred7_0, deferred7_1, 1);
29546
+ }
29547
+ }
29548
+
29385
29549
  /**
29386
29550
  * Vertical one-dimensional percentile radius from an up variance.
29387
29551
  * @param {number} sigma_u_m2
@@ -30181,6 +30345,9 @@ const GlonassRecordJsFinalization = (typeof FinalizationRegistry === 'undefined'
30181
30345
  const GnssDistributionLocationFinalization = (typeof FinalizationRegistry === 'undefined')
30182
30346
  ? { register: () => {}, unregister: () => {} }
30183
30347
  : new FinalizationRegistry(ptr => wasm.__wbg_gnssdistributionlocation_free(ptr, 1));
30348
+ const GnssExactProductSetFinalization = (typeof FinalizationRegistry === 'undefined')
30349
+ ? { register: () => {}, unregister: () => {} }
30350
+ : new FinalizationRegistry(ptr => wasm.__wbg_gnssexactproductset_free(ptr, 1));
30184
30351
  const GnssInsFilterFinalization = (typeof FinalizationRegistry === 'undefined')
30185
30352
  ? { register: () => {}, unregister: () => {} }
30186
30353
  : new FinalizationRegistry(ptr => wasm.__wbg_gnssinsfilter_free(ptr, 1));
Binary file