@neilberkman/sidereon 0.32.0 → 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}
@@ -27011,6 +27283,24 @@ function parseCdmXml(text) {
27011
27283
  }
27012
27284
  exports.parseCdmXml = parseCdmXml;
27013
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
+
27014
27304
  /**
27015
27305
  * Parse NAVCEN's GPS constellation status HTML into status rows.
27016
27306
  *
@@ -27706,7 +27996,8 @@ function prepareIonosphereFreeRtkArc(epochs, wide_lane_cycles, config) {
27706
27996
  exports.prepareIonosphereFreeRtkArc = prepareIonosphereFreeRtkArc;
27707
27997
 
27708
27998
  /**
27709
- * 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.
27710
28001
  * @param {string} center
27711
28002
  * @param {string} family
27712
28003
  * @param {number} year
@@ -27733,6 +28024,39 @@ function productIdentity(center, family, year, month, day, sample, issue) {
27733
28024
  }
27734
28025
  exports.productIdentity = productIdentity;
27735
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
+
27736
28060
  /**
27737
28061
  * Propagate a fleet of already-initialized [`Tle`]s over a shared epoch grid in
27738
28062
  * a single call: the batched form of [`Tle.propagate`].
@@ -30270,6 +30594,23 @@ function validateAgainstSp3Ids(records, ids) {
30270
30594
  }
30271
30595
  exports.validateAgainstSp3Ids = validateAgainstSp3Ids;
30272
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
+
30273
30614
  /**
30274
30615
  * Blend a first good post-outage fix back over an outage span.
30275
30616
  * @param {any} states
@@ -31133,6 +31474,12 @@ const ErrorEllipseFinalization = (typeof FinalizationRegistry === 'undefined')
31133
31474
  const ErrorEllipse2Finalization = (typeof FinalizationRegistry === 'undefined')
31134
31475
  ? { register: () => {}, unregister: () => {} }
31135
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));
31136
31483
  const FdeSolutionFinalization = (typeof FinalizationRegistry === 'undefined')
31137
31484
  ? { register: () => {}, unregister: () => {} }
31138
31485
  : new FinalizationRegistry(ptr => wasm.__wbg_fdesolution_free(ptr, 1));
Binary file