@neilberkman/sidereon 0.31.2 → 0.33.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.
@@ -4785,6 +4785,221 @@ class ErrorEllipse2 {
4785
4785
  if (Symbol.dispose) ErrorEllipse2.prototype[Symbol.dispose] = ErrorEllipse2.prototype.free;
4786
4786
  exports.ErrorEllipse2 = ErrorEllipse2;
4787
4787
 
4788
+ /**
4789
+ * Accepted boundary convention for a validated exact SP3 product.
4790
+ * @enum {0 | 1}
4791
+ */
4792
+ const ExactSp3Coverage = Object.freeze({
4793
+ /**
4794
+ * The declared boundary is excluded (288 five-minute epochs in one day).
4795
+ */
4796
+ HalfOpen: 0, "0": "HalfOpen",
4797
+ /**
4798
+ * The declared boundary epoch is present (289 five-minute epochs).
4799
+ */
4800
+ Inclusive: 1, "1": "Inclusive",
4801
+ });
4802
+ exports.ExactSp3Coverage = ExactSp3Coverage;
4803
+
4804
+ /**
4805
+ * Result of parsing and validating exact SP3 bytes in one core call.
4806
+ */
4807
+ class ExactSp3ParseResult {
4808
+ static __wrap(ptr) {
4809
+ const obj = Object.create(ExactSp3ParseResult.prototype);
4810
+ obj.__wbg_ptr = ptr;
4811
+ ExactSp3ParseResultFinalization.register(obj, obj.__wbg_ptr, obj);
4812
+ return obj;
4813
+ }
4814
+ __destroy_into_raw() {
4815
+ const ptr = this.__wbg_ptr;
4816
+ this.__wbg_ptr = 0;
4817
+ ExactSp3ParseResultFinalization.unregister(this);
4818
+ return ptr;
4819
+ }
4820
+ free() {
4821
+ const ptr = this.__destroy_into_raw();
4822
+ wasm.__wbg_exactsp3parseresult_free(ptr, 0);
4823
+ }
4824
+ /**
4825
+ * @returns {ExactSp3Coverage}
4826
+ */
4827
+ get coverage() {
4828
+ const ret = wasm.exactsp3parseresult_coverage(this.__wbg_ptr);
4829
+ return ret;
4830
+ }
4831
+ /**
4832
+ * Return the validated parsed product.
4833
+ * @returns {Sp3}
4834
+ */
4835
+ get product() {
4836
+ const ret = wasm.exactsp3parseresult_product(this.__wbg_ptr);
4837
+ return Sp3.__wrap(ret);
4838
+ }
4839
+ }
4840
+ if (Symbol.dispose) ExactSp3ParseResult.prototype[Symbol.dispose] = ExactSp3ParseResult.prototype.free;
4841
+ exports.ExactSp3ParseResult = ExactSp3ParseResult;
4842
+
4843
+ /**
4844
+ * Source-independent exact SP3 content request.
4845
+ */
4846
+ class ExactSp3Request {
4847
+ static __wrap(ptr) {
4848
+ const obj = Object.create(ExactSp3Request.prototype);
4849
+ obj.__wbg_ptr = ptr;
4850
+ ExactSp3RequestFinalization.register(obj, obj.__wbg_ptr, obj);
4851
+ return obj;
4852
+ }
4853
+ __destroy_into_raw() {
4854
+ const ptr = this.__wbg_ptr;
4855
+ this.__wbg_ptr = 0;
4856
+ ExactSp3RequestFinalization.unregister(this);
4857
+ return ptr;
4858
+ }
4859
+ free() {
4860
+ const ptr = this.__destroy_into_raw();
4861
+ wasm.__wbg_exactsp3request_free(ptr, 0);
4862
+ }
4863
+ /**
4864
+ * @returns {number}
4865
+ */
4866
+ get day() {
4867
+ const ret = wasm.exactsp3request_day(this.__wbg_ptr);
4868
+ return ret;
4869
+ }
4870
+ /**
4871
+ * @returns {string | undefined}
4872
+ */
4873
+ get expectedAgency() {
4874
+ const ret = wasm.exactsp3request_expectedAgency(this.__wbg_ptr);
4875
+ let v1;
4876
+ if (ret[0] !== 0) {
4877
+ v1 = getStringFromWasm0(ret[0], ret[1]).slice();
4878
+ wasm.__wbindgen_free(ret[0], ret[1] * 1, 1);
4879
+ }
4880
+ return v1;
4881
+ }
4882
+ /**
4883
+ * @returns {string | undefined}
4884
+ */
4885
+ get formatVersion() {
4886
+ const ret = wasm.exactsp3request_formatVersion(this.__wbg_ptr);
4887
+ let v1;
4888
+ if (ret[0] !== 0) {
4889
+ v1 = getStringFromWasm0(ret[0], ret[1]).slice();
4890
+ wasm.__wbindgen_free(ret[0], ret[1] * 1, 1);
4891
+ }
4892
+ return v1;
4893
+ }
4894
+ /**
4895
+ * Construct an exact request from a complete catalog product identity.
4896
+ * @param {GnssProductIdentity} identity
4897
+ * @returns {ExactSp3Request}
4898
+ */
4899
+ static fromIdentity(identity) {
4900
+ _assertClass(identity, GnssProductIdentity);
4901
+ const ret = wasm.exactsp3request_fromIdentity(identity.__wbg_ptr);
4902
+ if (ret[2]) {
4903
+ throw takeFromExternrefTable0(ret[1]);
4904
+ }
4905
+ return ExactSp3Request.__wrap(ret[0]);
4906
+ }
4907
+ /**
4908
+ * @returns {string | undefined}
4909
+ */
4910
+ get issue() {
4911
+ const ret = wasm.exactsp3request_issue(this.__wbg_ptr);
4912
+ let v1;
4913
+ if (ret[0] !== 0) {
4914
+ v1 = getStringFromWasm0(ret[0], ret[1]).slice();
4915
+ wasm.__wbindgen_free(ret[0], ret[1] * 1, 1);
4916
+ }
4917
+ return v1;
4918
+ }
4919
+ /**
4920
+ * @returns {number}
4921
+ */
4922
+ get month() {
4923
+ const ret = wasm.exactsp3request_month(this.__wbg_ptr);
4924
+ return ret;
4925
+ }
4926
+ /**
4927
+ * Construct an exact request from explicit catalog identity fields.
4928
+ * @param {number} year
4929
+ * @param {number} month
4930
+ * @param {number} day
4931
+ * @param {string} span
4932
+ * @param {string} sample
4933
+ * @param {string | null} [issue]
4934
+ */
4935
+ constructor(year, month, day, span, sample, issue) {
4936
+ const ptr0 = passStringToWasm0(span, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
4937
+ const len0 = WASM_VECTOR_LEN;
4938
+ const ptr1 = passStringToWasm0(sample, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
4939
+ const len1 = WASM_VECTOR_LEN;
4940
+ var ptr2 = isLikeNone(issue) ? 0 : passStringToWasm0(issue, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
4941
+ var len2 = WASM_VECTOR_LEN;
4942
+ const ret = wasm.exactsp3request_new(year, month, day, ptr0, len0, ptr1, len1, ptr2, len2);
4943
+ if (ret[2]) {
4944
+ throw takeFromExternrefTable0(ret[1]);
4945
+ }
4946
+ this.__wbg_ptr = ret[0];
4947
+ ExactSp3RequestFinalization.register(this, this.__wbg_ptr, this);
4948
+ return this;
4949
+ }
4950
+ /**
4951
+ * Require a particular SP3 line-1 producing-agency code.
4952
+ * @param {string} agency
4953
+ */
4954
+ requireAgency(agency) {
4955
+ const ptr0 = passStringToWasm0(agency, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
4956
+ const len0 = WASM_VECTOR_LEN;
4957
+ const ret = wasm.exactsp3request_requireAgency(this.__wbg_ptr, ptr0, len0);
4958
+ if (ret[1]) {
4959
+ throw takeFromExternrefTable0(ret[0]);
4960
+ }
4961
+ }
4962
+ /**
4963
+ * @returns {string}
4964
+ */
4965
+ get sample() {
4966
+ let deferred1_0;
4967
+ let deferred1_1;
4968
+ try {
4969
+ const ret = wasm.exactsp3request_sample(this.__wbg_ptr);
4970
+ deferred1_0 = ret[0];
4971
+ deferred1_1 = ret[1];
4972
+ return getStringFromWasm0(ret[0], ret[1]);
4973
+ } finally {
4974
+ wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
4975
+ }
4976
+ }
4977
+ /**
4978
+ * @returns {string}
4979
+ */
4980
+ get span() {
4981
+ let deferred1_0;
4982
+ let deferred1_1;
4983
+ try {
4984
+ const ret = wasm.exactsp3request_span(this.__wbg_ptr);
4985
+ deferred1_0 = ret[0];
4986
+ deferred1_1 = ret[1];
4987
+ return getStringFromWasm0(ret[0], ret[1]);
4988
+ } finally {
4989
+ wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
4990
+ }
4991
+ }
4992
+ /**
4993
+ * @returns {number}
4994
+ */
4995
+ get year() {
4996
+ const ret = wasm.exactsp3request_year(this.__wbg_ptr);
4997
+ return ret;
4998
+ }
4999
+ }
5000
+ if (Symbol.dispose) ExactSp3Request.prototype[Symbol.dispose] = ExactSp3Request.prototype.free;
5001
+ exports.ExactSp3Request = ExactSp3Request;
5002
+
4788
5003
  /**
4789
5004
  * A fault-detection-and-exclusion result: the surviving solution, the excluded
4790
5005
  * satellites in exclusion order, and the number of exclusions performed.
@@ -16791,6 +17006,24 @@ class Sp3 {
16791
17006
  wasm.__wbindgen_free(ret[0], ret[1] * 4, 4);
16792
17007
  return v1;
16793
17008
  }
17009
+ /**
17010
+ * Epoch count declared by SP3 header line 1, independent of the parsed
17011
+ * body count used by [`Sp3::epochCount`].
17012
+ * @returns {number}
17013
+ */
17014
+ get declaredEpochCount() {
17015
+ const ret = wasm.sp3_declaredEpochCount(this.__wbg_ptr);
17016
+ return ret >>> 0;
17017
+ }
17018
+ /**
17019
+ * Start epoch declared by SP3 header line 1, in product-scale seconds
17020
+ * since J2000. Missing or malformed legacy header fields return undefined.
17021
+ * @returns {number | undefined}
17022
+ */
17023
+ get declaredStartJ2000Seconds() {
17024
+ const ret = wasm.sp3_declaredStartJ2000Seconds(this.__wbg_ptr);
17025
+ return ret[0] === 0 ? undefined : ret[1];
17026
+ }
16794
17027
  /**
16795
17028
  * Compute DGNSS pseudorange corrections from a surveyed base station.
16796
17029
  *
@@ -22769,6 +23002,45 @@ function defaultPair(system) {
22769
23002
  }
22770
23003
  exports.defaultPair = defaultPair;
22771
23004
 
23005
+ /**
23006
+ * Return the officially cataloged default sampling token for a product date.
23007
+ *
23008
+ * Unlike the legacy date-free default, this preserves historical cadence
23009
+ * changes such as the GFZ rapid and ultra-rapid transitions. On ESA
23010
+ * ultra-rapid's issue-level transition date this reports the `0000`/
23011
+ * start-of-day default; [`productIdentity`](product_identity) also considers
23012
+ * the requested issue.
23013
+ * @param {string} center
23014
+ * @param {string} family
23015
+ * @param {number} year
23016
+ * @param {number} month
23017
+ * @param {number} day
23018
+ * @returns {string}
23019
+ */
23020
+ function defaultSampleForDate(center, family, year, month, day) {
23021
+ let deferred4_0;
23022
+ let deferred4_1;
23023
+ try {
23024
+ const ptr0 = passStringToWasm0(center, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
23025
+ const len0 = WASM_VECTOR_LEN;
23026
+ const ptr1 = passStringToWasm0(family, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
23027
+ const len1 = WASM_VECTOR_LEN;
23028
+ const ret = wasm.defaultSampleForDate(ptr0, len0, ptr1, len1, year, month, day);
23029
+ var ptr3 = ret[0];
23030
+ var len3 = ret[1];
23031
+ if (ret[3]) {
23032
+ ptr3 = 0; len3 = 0;
23033
+ throw takeFromExternrefTable0(ret[2]);
23034
+ }
23035
+ deferred4_0 = ptr3;
23036
+ deferred4_1 = len3;
23037
+ return getStringFromWasm0(ptr3, len3);
23038
+ } finally {
23039
+ wasm.__wbindgen_free(deferred4_0, deferred4_1, 1);
23040
+ }
23041
+ }
23042
+ exports.defaultSampleForDate = defaultSampleForDate;
23043
+
22772
23044
  /**
22773
23045
  * Default scenario seed as a hexadecimal string.
22774
23046
  * @returns {string}
@@ -26066,6 +26338,21 @@ function mergeNavcen(records, statuses) {
26066
26338
  }
26067
26339
  exports.mergeNavcen = mergeNavcen;
26068
26340
 
26341
+ /**
26342
+ * Merge time-aware NAVCEN assessments into records by PRN.
26343
+ * @param {any} records
26344
+ * @param {any} assessments
26345
+ * @returns {any}
26346
+ */
26347
+ function mergeNavcenAt(records, assessments) {
26348
+ const ret = wasm.mergeNavcenAt(records, assessments);
26349
+ if (ret[2]) {
26350
+ throw takeFromExternrefTable0(ret[1]);
26351
+ }
26352
+ return takeFromExternrefTable0(ret[0]);
26353
+ }
26354
+ exports.mergeNavcenAt = mergeNavcenAt;
26355
+
26069
26356
  /**
26070
26357
  * Merge SP3 products with the core consensus merge path.
26071
26358
  *
@@ -26996,6 +27283,24 @@ function parseCdmXml(text) {
26996
27283
  }
26997
27284
  exports.parseCdmXml = parseCdmXml;
26998
27285
 
27286
+ /**
27287
+ * Parse and exact-validate SP3 bytes, returning both product and coverage.
27288
+ * @param {Uint8Array} bytes
27289
+ * @param {ExactSp3Request} request
27290
+ * @returns {ExactSp3ParseResult}
27291
+ */
27292
+ function parseExactSp3(bytes, request) {
27293
+ const ptr0 = passArray8ToWasm0(bytes, wasm.__wbindgen_malloc);
27294
+ const len0 = WASM_VECTOR_LEN;
27295
+ _assertClass(request, ExactSp3Request);
27296
+ const ret = wasm.parseExactSp3(ptr0, len0, request.__wbg_ptr);
27297
+ if (ret[2]) {
27298
+ throw takeFromExternrefTable0(ret[1]);
27299
+ }
27300
+ return ExactSp3ParseResult.__wrap(ret[0]);
27301
+ }
27302
+ exports.parseExactSp3 = parseExactSp3;
27303
+
26999
27304
  /**
27000
27305
  * Parse NAVCEN's GPS constellation status HTML into status rows.
27001
27306
  *
@@ -27015,6 +27320,25 @@ function parseNavcen(html) {
27015
27320
  }
27016
27321
  exports.parseNavcen = parseNavcen;
27017
27322
 
27323
+ /**
27324
+ * Parse NAVCEN status HTML and evaluate usability at explicit UTC Unix
27325
+ * microseconds. Parsed intervals are half-open; ambiguous forecasts are
27326
+ * retained without disabling the satellite.
27327
+ * @param {string} html
27328
+ * @param {bigint} evaluated_at_unix_us
27329
+ * @returns {any}
27330
+ */
27331
+ function parseNavcenAt(html, evaluated_at_unix_us) {
27332
+ const ptr0 = passStringToWasm0(html, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
27333
+ const len0 = WASM_VECTOR_LEN;
27334
+ const ret = wasm.parseNavcenAt(ptr0, len0, evaluated_at_unix_us);
27335
+ if (ret[2]) {
27336
+ throw takeFromExternrefTable0(ret[1]);
27337
+ }
27338
+ return takeFromExternrefTable0(ret[0]);
27339
+ }
27340
+ exports.parseNavcenAt = parseNavcenAt;
27341
+
27018
27342
  /**
27019
27343
  * Parse NMEA sentences from bytes.
27020
27344
  * @param {Uint8Array} bytes
@@ -27672,7 +27996,8 @@ function prepareIonosphereFreeRtkArc(epochs, wide_lane_cycles, config) {
27672
27996
  exports.prepareIonosphereFreeRtkArc = prepareIonosphereFreeRtkArc;
27673
27997
 
27674
27998
  /**
27675
- * Resolve an exact catalog product independently from distributor.
27999
+ * Resolve an exact catalog product independently from distributor. When the
28000
+ * sample is omitted, ultra-rapid issue-level cadence transitions are applied.
27676
28001
  * @param {string} center
27677
28002
  * @param {string} family
27678
28003
  * @param {number} year
@@ -27699,6 +28024,39 @@ function productIdentity(center, family, year, month, day, sample, issue) {
27699
28024
  }
27700
28025
  exports.productIdentity = productIdentity;
27701
28026
 
28027
+ /**
28028
+ * Return the catalog solution class for one center/product family.
28029
+ *
28030
+ * This product-aware query distinguishes IGS combined final SP3 (`final`)
28031
+ * from IGS broadcast navigation (`broadcast`).
28032
+ * @param {string} center
28033
+ * @param {string} family
28034
+ * @returns {string}
28035
+ */
28036
+ function productSolutionClass(center, family) {
28037
+ let deferred4_0;
28038
+ let deferred4_1;
28039
+ try {
28040
+ const ptr0 = passStringToWasm0(center, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
28041
+ const len0 = WASM_VECTOR_LEN;
28042
+ const ptr1 = passStringToWasm0(family, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
28043
+ const len1 = WASM_VECTOR_LEN;
28044
+ const ret = wasm.productSolutionClass(ptr0, len0, ptr1, len1);
28045
+ var ptr3 = ret[0];
28046
+ var len3 = ret[1];
28047
+ if (ret[3]) {
28048
+ ptr3 = 0; len3 = 0;
28049
+ throw takeFromExternrefTable0(ret[2]);
28050
+ }
28051
+ deferred4_0 = ptr3;
28052
+ deferred4_1 = len3;
28053
+ return getStringFromWasm0(ptr3, len3);
28054
+ } finally {
28055
+ wasm.__wbindgen_free(deferred4_0, deferred4_1, 1);
28056
+ }
28057
+ }
28058
+ exports.productSolutionClass = productSolutionClass;
28059
+
27702
28060
  /**
27703
28061
  * Propagate a fleet of already-initialized [`Tle`]s over a shared epoch grid in
27704
28062
  * a single call: the batched form of [`Tle.propagate`].
@@ -30236,6 +30594,23 @@ function validateAgainstSp3Ids(records, ids) {
30236
30594
  }
30237
30595
  exports.validateAgainstSp3Ids = validateAgainstSp3Ids;
30238
30596
 
30597
+ /**
30598
+ * Validate an already parsed SP3 product against an exact request.
30599
+ * @param {Sp3} product
30600
+ * @param {ExactSp3Request} request
30601
+ * @returns {ExactSp3Coverage}
30602
+ */
30603
+ function validateExactSp3(product, request) {
30604
+ _assertClass(product, Sp3);
30605
+ _assertClass(request, ExactSp3Request);
30606
+ const ret = wasm.validateExactSp3(product.__wbg_ptr, request.__wbg_ptr);
30607
+ if (ret[2]) {
30608
+ throw takeFromExternrefTable0(ret[1]);
30609
+ }
30610
+ return ret[0];
30611
+ }
30612
+ exports.validateExactSp3 = validateExactSp3;
30613
+
30239
30614
  /**
30240
30615
  * Blend a first good post-outage fix back over an outage span.
30241
30616
  * @param {any} states
@@ -31099,6 +31474,12 @@ const ErrorEllipseFinalization = (typeof FinalizationRegistry === 'undefined')
31099
31474
  const ErrorEllipse2Finalization = (typeof FinalizationRegistry === 'undefined')
31100
31475
  ? { register: () => {}, unregister: () => {} }
31101
31476
  : new FinalizationRegistry(ptr => wasm.__wbg_errorellipse2_free(ptr, 1));
31477
+ const ExactSp3ParseResultFinalization = (typeof FinalizationRegistry === 'undefined')
31478
+ ? { register: () => {}, unregister: () => {} }
31479
+ : new FinalizationRegistry(ptr => wasm.__wbg_exactsp3parseresult_free(ptr, 1));
31480
+ const ExactSp3RequestFinalization = (typeof FinalizationRegistry === 'undefined')
31481
+ ? { register: () => {}, unregister: () => {} }
31482
+ : new FinalizationRegistry(ptr => wasm.__wbg_exactsp3request_free(ptr, 1));
31102
31483
  const FdeSolutionFinalization = (typeof FinalizationRegistry === 'undefined')
31103
31484
  ? { register: () => {}, unregister: () => {} }
31104
31485
  : new FinalizationRegistry(ptr => wasm.__wbg_fdesolution_free(ptr, 1));
Binary file