@neilberkman/sidereon 0.30.0 → 0.32.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.
@@ -6,6 +6,58 @@ export type Vec3 = [number, number, number] | Float64Array;
6
6
  export type Vec4 = [number, number, number, number] | Float64Array;
7
7
  export type Matrix3 = number[] | Float64Array;
8
8
 
9
+ export interface ExactProductIdentityInput {
10
+ family: "sp3" | "ionex" | "clk" | "nav";
11
+ analysisCenter: string;
12
+ publisher: "IGS" | "COD" | "ESA" | "GFZ";
13
+ solutionClass: "final" | "rapid" | "ultra_rapid" | "predicted" | "broadcast";
14
+ campaign: "OPS" | "MGN" | "MGX" | "BRD";
15
+ filenameVersion: number;
16
+ year: number;
17
+ month: number;
18
+ day: number;
19
+ issue?: string | null;
20
+ span: string;
21
+ sample: string;
22
+ officialFilename: string;
23
+ format: "SP3" | "IONEX" | "RINEX_CLK" | "RINEX_NAV";
24
+ formatVersion?: string | null;
25
+ predictionHorizonDays?: number | null;
26
+ }
27
+
28
+ export interface Sp3ArtifactIdentityInput {
29
+ requestedIdentity: ExactProductIdentityInput;
30
+ resolvedIdentity: ExactProductIdentityInput;
31
+ distributionSource: "direct" | "nasa_cddis" | "local_file" | "in_memory";
32
+ officialFilename: string;
33
+ productSha256: string;
34
+ /** Positive integer no greater than Number.MAX_SAFE_INTEGER. */
35
+ productByteLength: number;
36
+ archiveSha256: string;
37
+ /** Positive integer no greater than Number.MAX_SAFE_INTEGER. */
38
+ archiveByteLength: number;
39
+ compression: "none" | "gzip";
40
+ }
41
+
42
+ /** Validated canonical artifact record returned by merged-SP3 identity APIs. */
43
+ export type Sp3ArtifactIdentity = Sp3ArtifactIdentityInput;
44
+
45
+ export interface Sp3MergeIdentityOptions {
46
+ /** Finite, non-negative position agreement tolerance in meters. */
47
+ positionToleranceM?: number;
48
+ /** Finite, non-negative clock agreement tolerance in seconds. */
49
+ clockToleranceS?: number;
50
+ minAgree?: number;
51
+ clockMinCommon?: number;
52
+ combine?: "mean" | "median" | "precedence";
53
+ precedenceScope?: "cell" | "satellite_arc";
54
+ outlierReject?: { positionToleranceM: number; clockToleranceS: number };
55
+ targetEpochIntervalS?: number;
56
+ systems?: string[];
57
+ assertedFrameLabelSets?: string[][];
58
+ helmert?: boolean;
59
+ }
60
+
9
61
  export interface SurfaceMetInput {
10
62
  pressureHpa: number;
11
63
  temperatureK: number;
@@ -7389,6 +7441,32 @@ export class Sp3MergeFlag {
7389
7441
  readonly sources: Uint32Array;
7390
7442
  }
7391
7443
 
7444
+ /**
7445
+ * Canonical identity of a complete exact SP3 input set and full merge policy.
7446
+ */
7447
+ export class Sp3MergeInputIdentity {
7448
+ private constructor();
7449
+ free(): void;
7450
+ [Symbol.dispose](): void;
7451
+ /**
7452
+ * Contributors in distributor-independent canonical order.
7453
+ */
7454
+ readonly contributors: Sp3ArtifactIdentity[];
7455
+ /**
7456
+ * Contributors in semantic source-priority order for precedence merges;
7457
+ * undefined for mean and median.
7458
+ */
7459
+ readonly precedenceContributors: Sp3ArtifactIdentity[] | undefined;
7460
+ /**
7461
+ * Canonical encoding version.
7462
+ */
7463
+ readonly schemaVersion: number;
7464
+ /**
7465
+ * Versioned stable identity of every artifact and effective merge control.
7466
+ */
7467
+ readonly stableId: string;
7468
+ }
7469
+
7392
7470
  /**
7393
7471
  * Audit report returned with a merged SP3 product.
7394
7472
  */
@@ -10455,6 +10533,11 @@ export function melbourneWubbena(phi1_cycles: number, phi2_cycles: number, p1_m:
10455
10533
  */
10456
10534
  export function mergeNavcen(records: any, statuses: any): any;
10457
10535
 
10536
+ /**
10537
+ * Merge time-aware NAVCEN assessments into records by PRN.
10538
+ */
10539
+ export function mergeNavcenAt(records: any, assessments: any): any;
10540
+
10458
10541
  /**
10459
10542
  * Merge SP3 products with the core consensus merge path.
10460
10543
  *
@@ -10792,6 +10875,13 @@ export function parseCdmXml(text: string): Cdm;
10792
10875
  */
10793
10876
  export function parseNavcen(html: string): any;
10794
10877
 
10878
+ /**
10879
+ * Parse NAVCEN status HTML and evaluate usability at explicit UTC Unix
10880
+ * microseconds. Parsed intervals are half-open; ambiguous forecasts are
10881
+ * retained without disabling the satellite.
10882
+ */
10883
+ export function parseNavcenAt(html: string, evaluated_at_unix_us: bigint): any;
10884
+
10795
10885
  /**
10796
10886
  * Parse NMEA sentences from bytes.
10797
10887
  */
@@ -11654,6 +11744,20 @@ export function sourceSolveModeTdoa(reference_sensor: number): any;
11654
11744
  */
11655
11745
  export function sourceSolveModeToa(): string;
11656
11746
 
11747
+ /**
11748
+ * Validate complete exact artifact records and return their canonical merge
11749
+ * input identity.
11750
+ *
11751
+ * `contributors` must be an array of complete `Sp3ArtifactIdentityInput`
11752
+ * objects. Contributor enumeration order does not affect mean or median
11753
+ * identities. Precedence identities bind the original order because it
11754
+ * determines source priority. Unordered policy fields are canonicalized.
11755
+ * Empty, duplicate, incomplete, malformed, non-SP3, or mismatched records fail
11756
+ * closed. Acquisition timestamps, URLs, HTTP metadata, credentials, cache
11757
+ * paths, and retry history are not accepted input fields.
11758
+ */
11759
+ export function sp3MergeInputIdentity(contributors: Sp3ArtifactIdentityInput[], options?: Sp3MergeIdentityOptions | null): Sp3MergeInputIdentity;
11760
+
11657
11761
  /**
11658
11762
  * Extract a parsed SP3 product as the canonical precise-ephemeris samples, one
11659
11763
  * per real position record in ascending epoch order.
@@ -17660,6 +17660,71 @@ class Sp3MergeFlag {
17660
17660
  if (Symbol.dispose) Sp3MergeFlag.prototype[Symbol.dispose] = Sp3MergeFlag.prototype.free;
17661
17661
  exports.Sp3MergeFlag = Sp3MergeFlag;
17662
17662
 
17663
+ /**
17664
+ * Canonical identity of a complete exact SP3 input set and full merge policy.
17665
+ */
17666
+ class Sp3MergeInputIdentity {
17667
+ static __wrap(ptr) {
17668
+ const obj = Object.create(Sp3MergeInputIdentity.prototype);
17669
+ obj.__wbg_ptr = ptr;
17670
+ Sp3MergeInputIdentityFinalization.register(obj, obj.__wbg_ptr, obj);
17671
+ return obj;
17672
+ }
17673
+ __destroy_into_raw() {
17674
+ const ptr = this.__wbg_ptr;
17675
+ this.__wbg_ptr = 0;
17676
+ Sp3MergeInputIdentityFinalization.unregister(this);
17677
+ return ptr;
17678
+ }
17679
+ free() {
17680
+ const ptr = this.__destroy_into_raw();
17681
+ wasm.__wbg_sp3mergeinputidentity_free(ptr, 0);
17682
+ }
17683
+ /**
17684
+ * Contributors in distributor-independent canonical order.
17685
+ * @returns {any}
17686
+ */
17687
+ get contributors() {
17688
+ const ret = wasm.sp3mergeinputidentity_contributors(this.__wbg_ptr);
17689
+ return ret;
17690
+ }
17691
+ /**
17692
+ * Contributors in semantic source-priority order for precedence merges;
17693
+ * undefined for mean and median.
17694
+ * @returns {any}
17695
+ */
17696
+ get precedenceContributors() {
17697
+ const ret = wasm.sp3mergeinputidentity_precedenceContributors(this.__wbg_ptr);
17698
+ return ret;
17699
+ }
17700
+ /**
17701
+ * Canonical encoding version.
17702
+ * @returns {number}
17703
+ */
17704
+ get schemaVersion() {
17705
+ const ret = wasm.sp3mergeinputidentity_schemaVersion(this.__wbg_ptr);
17706
+ return ret;
17707
+ }
17708
+ /**
17709
+ * Versioned stable identity of every artifact and effective merge control.
17710
+ * @returns {string}
17711
+ */
17712
+ get stableId() {
17713
+ let deferred1_0;
17714
+ let deferred1_1;
17715
+ try {
17716
+ const ret = wasm.sp3mergeinputidentity_stableId(this.__wbg_ptr);
17717
+ deferred1_0 = ret[0];
17718
+ deferred1_1 = ret[1];
17719
+ return getStringFromWasm0(ret[0], ret[1]);
17720
+ } finally {
17721
+ wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
17722
+ }
17723
+ }
17724
+ }
17725
+ if (Symbol.dispose) Sp3MergeInputIdentity.prototype[Symbol.dispose] = Sp3MergeInputIdentity.prototype.free;
17726
+ exports.Sp3MergeInputIdentity = Sp3MergeInputIdentity;
17727
+
17663
17728
  /**
17664
17729
  * Audit report returned with a merged SP3 product.
17665
17730
  */
@@ -26001,6 +26066,21 @@ function mergeNavcen(records, statuses) {
26001
26066
  }
26002
26067
  exports.mergeNavcen = mergeNavcen;
26003
26068
 
26069
+ /**
26070
+ * Merge time-aware NAVCEN assessments into records by PRN.
26071
+ * @param {any} records
26072
+ * @param {any} assessments
26073
+ * @returns {any}
26074
+ */
26075
+ function mergeNavcenAt(records, assessments) {
26076
+ const ret = wasm.mergeNavcenAt(records, assessments);
26077
+ if (ret[2]) {
26078
+ throw takeFromExternrefTable0(ret[1]);
26079
+ }
26080
+ return takeFromExternrefTable0(ret[0]);
26081
+ }
26082
+ exports.mergeNavcenAt = mergeNavcenAt;
26083
+
26004
26084
  /**
26005
26085
  * Merge SP3 products with the core consensus merge path.
26006
26086
  *
@@ -26950,6 +27030,25 @@ function parseNavcen(html) {
26950
27030
  }
26951
27031
  exports.parseNavcen = parseNavcen;
26952
27032
 
27033
+ /**
27034
+ * Parse NAVCEN status HTML and evaluate usability at explicit UTC Unix
27035
+ * microseconds. Parsed intervals are half-open; ambiguous forecasts are
27036
+ * retained without disabling the satellite.
27037
+ * @param {string} html
27038
+ * @param {bigint} evaluated_at_unix_us
27039
+ * @returns {any}
27040
+ */
27041
+ function parseNavcenAt(html, evaluated_at_unix_us) {
27042
+ const ptr0 = passStringToWasm0(html, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
27043
+ const len0 = WASM_VECTOR_LEN;
27044
+ const ret = wasm.parseNavcenAt(ptr0, len0, evaluated_at_unix_us);
27045
+ if (ret[2]) {
27046
+ throw takeFromExternrefTable0(ret[1]);
27047
+ }
27048
+ return takeFromExternrefTable0(ret[0]);
27049
+ }
27050
+ exports.parseNavcenAt = parseNavcenAt;
27051
+
26953
27052
  /**
26954
27053
  * Parse NMEA sentences from bytes.
26955
27054
  * @param {Uint8Array} bytes
@@ -29461,6 +29560,30 @@ function sourceSolveModeToa() {
29461
29560
  }
29462
29561
  exports.sourceSolveModeToa = sourceSolveModeToa;
29463
29562
 
29563
+ /**
29564
+ * Validate complete exact artifact records and return their canonical merge
29565
+ * input identity.
29566
+ *
29567
+ * `contributors` must be an array of complete `Sp3ArtifactIdentityInput`
29568
+ * objects. Contributor enumeration order does not affect mean or median
29569
+ * identities. Precedence identities bind the original order because it
29570
+ * determines source priority. Unordered policy fields are canonicalized.
29571
+ * Empty, duplicate, incomplete, malformed, non-SP3, or mismatched records fail
29572
+ * closed. Acquisition timestamps, URLs, HTTP metadata, credentials, cache
29573
+ * paths, and retry history are not accepted input fields.
29574
+ * @param {any} contributors
29575
+ * @param {any} options
29576
+ * @returns {Sp3MergeInputIdentity}
29577
+ */
29578
+ function sp3MergeInputIdentity(contributors, options) {
29579
+ const ret = wasm.sp3MergeInputIdentity(contributors, options);
29580
+ if (ret[2]) {
29581
+ throw takeFromExternrefTable0(ret[1]);
29582
+ }
29583
+ return Sp3MergeInputIdentity.__wrap(ret[0]);
29584
+ }
29585
+ exports.sp3MergeInputIdentity = sp3MergeInputIdentity;
29586
+
29464
29587
  /**
29465
29588
  * Extract a parsed SP3 product as the canonical precise-ephemeris samples, one
29466
29589
  * per real position record in ascending epoch order.
@@ -30586,6 +30709,16 @@ function __wbg_get_imports() {
30586
30709
  const ret = result;
30587
30710
  return ret;
30588
30711
  },
30712
+ __wbg_instanceof_Object_33f20e6f12439f3e: function(arg0) {
30713
+ let result;
30714
+ try {
30715
+ result = arg0 instanceof Object;
30716
+ } catch (_) {
30717
+ result = false;
30718
+ }
30719
+ const ret = result;
30720
+ return ret;
30721
+ },
30589
30722
  __wbg_instanceof_Uint8Array_309b927aaf7a3fc7: function(arg0) {
30590
30723
  let result;
30591
30724
  try {
@@ -30616,6 +30749,10 @@ function __wbg_get_imports() {
30616
30749
  const ret = Symbol.iterator;
30617
30750
  return ret;
30618
30751
  },
30752
+ __wbg_keys_58421f8f96795607: function(arg0) {
30753
+ const ret = Object.keys(arg0);
30754
+ return ret;
30755
+ },
30619
30756
  __wbg_length_1f0964f4a5e2c6d8: function(arg0) {
30620
30757
  const ret = arg0.length;
30621
30758
  return ret;
@@ -31356,6 +31493,9 @@ const Sp3InterpolationFinalization = (typeof FinalizationRegistry === 'undefined
31356
31493
  const Sp3MergeFlagFinalization = (typeof FinalizationRegistry === 'undefined')
31357
31494
  ? { register: () => {}, unregister: () => {} }
31358
31495
  : new FinalizationRegistry(ptr => wasm.__wbg_sp3mergeflag_free(ptr, 1));
31496
+ const Sp3MergeInputIdentityFinalization = (typeof FinalizationRegistry === 'undefined')
31497
+ ? { register: () => {}, unregister: () => {} }
31498
+ : new FinalizationRegistry(ptr => wasm.__wbg_sp3mergeinputidentity_free(ptr, 1));
31359
31499
  const Sp3MergeReportFinalization = (typeof FinalizationRegistry === 'undefined')
31360
31500
  ? { register: () => {}, unregister: () => {} }
31361
31501
  : new FinalizationRegistry(ptr => wasm.__wbg_sp3mergereport_free(ptr, 1));
Binary file