@earthyscience/netcdf4-wasm 0.2.0 → 0.2.2

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/CONTRIBUTING.md CHANGED
@@ -50,6 +50,12 @@ To start developing `netcdf4-wasm`:
50
50
  npm test
51
51
  ```
52
52
 
53
+ and to build and synchronize with the **demo** do
54
+
55
+ ```bash
56
+ npm run build-and-sync
57
+ ```
58
+
53
59
  ### Project Structure
54
60
 
55
61
  Understanding the project structure will help you navigate the codebase:
@@ -119,6 +125,9 @@ npm install
119
125
  # Build the entire project (WASM + TypeScript)
120
126
  npm run build
121
127
 
128
+ # Build and synchronize the demo
129
+ npm run build-and-sync
130
+
122
131
  # Build only the WASM module
123
132
  npm run build:wasm
124
133
 
package/README.md CHANGED
@@ -1,4 +1,4 @@
1
- # netcdf4-wasm [![Demo](https://img.shields.io/badge/Demo-Online-654FF0)](https://earthyscience.github.io/netcdf4-wasm/next-js/)
1
+ # netcdf4-wasm [![viewer](https://img.shields.io/badge/Viewer-Online-654FF0)](https://earthyscience.github.io/netcdf4-wasm/viewer/)
2
2
 
3
3
 
4
4
  [![npm version](https://img.shields.io/npm/v/@earthyscience/netcdf4-wasm.svg)](https://www.npmjs.com/package/@earthyscience/netcdf4-wasm)
@@ -37,46 +37,19 @@ npm install @earthyscience/netcdf4-wasm
37
37
 
38
38
  ## Quick Start
39
39
 
40
- ### Reading Files
41
40
  ```typescript
42
- import { NetCDF4 } from '@earthyscience/netcdf4-wasm';
41
+ import { NetCDF4, DataTree } from '@earthyscience/netcdf4-wasm';
43
42
 
44
43
  // Open existing file
45
44
  const ds = await NetCDF4.fromBlobLazy(file);
46
-
47
- // Access dimensions
48
- // TODO: Add example
49
-
50
- // Read variables
51
- // TODO: Add example
52
-
53
- // Close when done
54
- ds.close();
55
- ```
56
-
57
- ### Working with Groups
58
- ```typescript
59
- // Access groups
60
- // TODO: Add example
61
- ```
62
-
63
- ### Writing Files
64
- ```typescript
65
- import { NetCDF4 } from '@earthyscience/netcdf4-wasm';
66
-
67
- // Create a new NetCDF file
68
- // TODO: Add example
45
+ const dt = new DataTree(ds);
46
+ await dt.buildTree();
69
47
  ```
70
48
 
71
49
  ## API Reference
72
50
 
73
51
  The API closely follows [netcdf4-python](https://unidata.github.io/netcdf4-python) conventions, making it intuitive for scientists familiar with Python.
74
52
 
75
- **Core Classes:**
76
- - `NetCDF4` - Main file interface
77
- -
78
-
79
-
80
53
  ## Advanced Usage
81
54
 
82
55
  <details>
@@ -1,29 +1,147 @@
1
1
  export declare const NC_CONSTANTS: {
2
2
  NC_NOERR: number;
3
+ NC_EBADID: number;
4
+ NC_ENFILE: number;
5
+ NC_EEXIST: number;
6
+ NC_EINVAL: number;
7
+ NC_EPERM: number;
8
+ NC_ENOTINDEFINE: number;
9
+ NC_EINDEFINE: number;
10
+ NC_EINVALCOORDS: number;
11
+ NC_EMAXDIMS: number;
12
+ NC_ENAMEINUSE: number;
13
+ NC_ENOTATT: number;
14
+ NC_EMAXATTS: number;
15
+ NC_EBADTYPE: number;
16
+ NC_EBADDIM: number;
17
+ NC_EUNLIMPOS: number;
18
+ NC_EMAXVARS: number;
19
+ NC_ENOTVAR: number;
20
+ NC_EGLOBAL: number;
21
+ NC_ENOTNC: number;
22
+ NC_ESTS: number;
23
+ NC_EMAXNAME: number;
24
+ NC_EUNLIMIT: number;
25
+ NC_ENORECVARS: number;
26
+ NC_ECHAR: number;
27
+ NC_EEDGE: number;
28
+ NC_ESTRIDE: number;
29
+ NC_EBADNAME: number;
3
30
  NC_ERANGE: number;
31
+ NC_ENOMEM: number;
32
+ NC_EVARSIZE: number;
33
+ NC_EDIMSIZE: number;
34
+ NC_ETRUNC: number;
35
+ NC_EAXISTYPE: number;
36
+ NC_EDAP: number;
37
+ NC_ECURL: number;
38
+ NC_EIO: number;
39
+ NC_ENODATA: number;
40
+ NC_EDAPSVC: number;
41
+ NC_EDAS: number;
42
+ NC_EDDS: number;
43
+ NC_EDATADDS: number;
44
+ NC_EDAPURL: number;
45
+ NC_EDAPCONSTRAINT: number;
46
+ NC_ETRANSLATION: number;
47
+ NC_EACCESS: number;
48
+ NC_EAUTH: number;
49
+ NC_ENOTFOUND: number;
50
+ NC_ECANTREMOVE: number;
51
+ NC_EINTERNAL: number;
52
+ NC_EPNETCDF: number;
53
+ NC_EHDFERR: number;
54
+ NC_ECANTREAD: number;
55
+ NC_ECANTWRITE: number;
56
+ NC_ECANTCREATE: number;
57
+ NC_EFILEMETA: number;
58
+ NC_EDIMMETA: number;
59
+ NC_EATTMETA: number;
60
+ NC_EVARMETA: number;
61
+ NC_ENOCOMPOUND: number;
62
+ NC_EATTEXISTS: number;
63
+ NC_ENOTNC4: number;
64
+ NC_ESTRICTNC3: number;
65
+ NC_ENOTNC3: number;
66
+ NC_ENOPAR: number;
67
+ NC_EPARINIT: number;
68
+ NC_EBADGRPID: number;
69
+ NC_EBADTYPID: number;
70
+ NC_ETYPDEFINED: number;
71
+ NC_EBADFIELD: number;
72
+ NC_EBADCLASS: number;
73
+ NC_EMAPTYPE: number;
74
+ NC_ELATEFILL: number;
75
+ NC_ELATEDEF: number;
76
+ NC_EDIMSCALE: number;
77
+ NC_ENOGRP: number;
78
+ NC_ESTORAGE: number;
79
+ NC_EBADCHUNK: number;
80
+ NC_ENOTBUILT: number;
81
+ NC_EDISKLESS: number;
82
+ NC_ECANTEXTEND: number;
83
+ NC_EMPI: number;
4
84
  NC_NOWRITE: number;
5
85
  NC_WRITE: number;
6
86
  NC_CLOBBER: number;
7
87
  NC_NOCLOBBER: number;
88
+ NC_DISKLESS: number;
89
+ NC_MMAP: number;
90
+ NC_64BIT_DATA: number;
91
+ NC_CDF5: number;
92
+ NC_CLASSIC_MODEL: number;
93
+ NC_64BIT_OFFSET: number;
8
94
  NC_NETCDF4: number;
95
+ NC_SHARE: number;
96
+ NC_INMEMORY: number;
97
+ NC_FORMAT_CLASSIC: number;
98
+ NC_FORMAT_64BIT_OFFSET: number;
99
+ NC_FORMAT_64BIT: number;
100
+ NC_FORMAT_NETCDF4: number;
101
+ NC_FORMAT_NETCDF4_CLASSIC: number;
102
+ NC_FORMAT_64BIT_DATA: number;
103
+ NC_FORMAT_CDF5: number;
104
+ NC_NAT: number;
9
105
  NC_BYTE: number;
10
106
  NC_CHAR: number;
11
107
  NC_SHORT: number;
12
108
  NC_INT: number;
109
+ NC_LONG: number;
13
110
  NC_FLOAT: number;
14
111
  NC_DOUBLE: number;
15
- NC_UINT: number;
16
- NC_UINT64: number;
17
- NC_INT64: number;
18
112
  NC_UBYTE: number;
19
- NC_LONGLONG: number;
20
113
  NC_USHORT: number;
114
+ NC_UINT: number;
115
+ NC_INT64: number;
116
+ NC_UINT64: number;
21
117
  NC_STRING: number;
118
+ NC_LONGLONG: number;
119
+ NC_ULONGLONG: number;
120
+ NC_VLEN: number;
121
+ NC_OPAQUE: number;
122
+ NC_ENUM: number;
123
+ NC_COMPOUND: number;
124
+ NC_FIRSTUSERTYPEID: number;
125
+ NC_FILL: number;
126
+ NC_NOFILL: number;
22
127
  NC_CHUNKED: number;
23
128
  NC_CONTIGUOUS: number;
24
129
  NC_COMPACT: number;
130
+ NC_VIRTUAL: number;
131
+ NC_ENDIAN_NATIVE: number;
132
+ NC_ENDIAN_LITTLE: number;
133
+ NC_ENDIAN_BIG: number;
25
134
  NC_UNLIMITED: number;
26
135
  NC_GLOBAL: number;
136
+ NC_MAX_DIMS: number;
137
+ NC_MAX_ATTRS: number;
138
+ NC_MAX_VARS: number;
139
+ NC_MAX_NAME: number;
140
+ NC_MAX_VAR_DIMS: number;
141
+ NC_NOCHECKSUM: number;
142
+ NC_FLETCHER32: number;
143
+ NC_NOSHUFFLE: number;
144
+ NC_SHUFFLE: number;
27
145
  };
28
146
  export declare const DATA_TYPE_MAP: {
29
147
  [key: string]: number;
@@ -34,4 +152,7 @@ export declare const CONSTANT_DTYPE_MAP: {
34
152
  export declare const DATA_TYPE_SIZE: {
35
153
  [key: number]: number;
36
154
  };
155
+ export declare const TYPE_NAMES: {
156
+ [key: number]: string;
157
+ };
37
158
  //# sourceMappingURL=constants.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;CAkCxB,CAAC;AAGF,eAAO,MAAM,aAAa,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;CAoBlD,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;CAavD,CAAA;AAED,eAAO,MAAM,cAAc,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;CAanD,CAAA"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6KxB,CAAC;AAGF,eAAO,MAAM,aAAa,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;CAiClD,CAAC;AAGF,eAAO,MAAM,kBAAkB,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;CAcvD,CAAC;AAGF,eAAO,MAAM,cAAc,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;CAcnD,CAAC;AAGF,eAAO,MAAM,UAAU,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;CAkB/C,CAAC"}
package/dist/constants.js CHANGED
@@ -1,85 +1,249 @@
1
1
  // NetCDF4 constants (populated from NetCDF4 headers)
2
+ // see: https://github.com/Unidata/netcdf-c/blob/main/include/netcdf.h
3
+ // https://docs.unidata.ucar.edu/netcdf-c/current/nc-error-codes.html
2
4
  export const NC_CONSTANTS = {
3
5
  // Error codes
4
6
  NC_NOERR: 0,
7
+ NC_EBADID: -33,
8
+ NC_ENFILE: -34,
9
+ NC_EEXIST: -35,
10
+ NC_EINVAL: -36,
11
+ NC_EPERM: -37,
12
+ NC_ENOTINDEFINE: -38,
13
+ NC_EINDEFINE: -39,
14
+ NC_EINVALCOORDS: -40,
15
+ NC_EMAXDIMS: -41,
16
+ NC_ENAMEINUSE: -42,
17
+ NC_ENOTATT: -43,
18
+ NC_EMAXATTS: -44,
19
+ NC_EBADTYPE: -45,
20
+ NC_EBADDIM: -46,
21
+ NC_EUNLIMPOS: -47,
22
+ NC_EMAXVARS: -48,
23
+ NC_ENOTVAR: -49,
24
+ NC_EGLOBAL: -50,
25
+ NC_ENOTNC: -51,
26
+ NC_ESTS: -52,
27
+ NC_EMAXNAME: -53,
28
+ NC_EUNLIMIT: -54,
29
+ NC_ENORECVARS: -55,
30
+ NC_ECHAR: -56,
31
+ NC_EEDGE: -57,
32
+ NC_ESTRIDE: -58,
33
+ NC_EBADNAME: -59,
5
34
  NC_ERANGE: -60,
35
+ NC_ENOMEM: -61,
36
+ NC_EVARSIZE: -62,
37
+ NC_EDIMSIZE: -63,
38
+ NC_ETRUNC: -64,
39
+ NC_EAXISTYPE: -65,
40
+ // NetCDF-4 error codes
41
+ NC_EDAP: -66,
42
+ NC_ECURL: -67,
43
+ NC_EIO: -68,
44
+ NC_ENODATA: -69,
45
+ NC_EDAPSVC: -70,
46
+ NC_EDAS: -71,
47
+ NC_EDDS: -72,
48
+ NC_EDATADDS: -73,
49
+ NC_EDAPURL: -74,
50
+ NC_EDAPCONSTRAINT: -75,
51
+ NC_ETRANSLATION: -76,
52
+ NC_EACCESS: -77,
53
+ NC_EAUTH: -78,
54
+ NC_ENOTFOUND: -90,
55
+ NC_ECANTREMOVE: -91,
56
+ NC_EINTERNAL: -92, // internal library error
57
+ NC_EPNETCDF: -93, // PnetCDF error
58
+ NC_EHDFERR: -101,
59
+ NC_ECANTREAD: -102,
60
+ NC_ECANTWRITE: -103,
61
+ NC_ECANTCREATE: -104,
62
+ NC_EFILEMETA: -105,
63
+ NC_EDIMMETA: -106,
64
+ NC_EATTMETA: -107,
65
+ NC_EVARMETA: -108,
66
+ NC_ENOCOMPOUND: -109,
67
+ NC_EATTEXISTS: -110,
68
+ NC_ENOTNC4: -111,
69
+ NC_ESTRICTNC3: -112,
70
+ NC_ENOTNC3: -113,
71
+ NC_ENOPAR: -114,
72
+ NC_EPARINIT: -115,
73
+ NC_EBADGRPID: -116,
74
+ NC_EBADTYPID: -117,
75
+ NC_ETYPDEFINED: -118,
76
+ NC_EBADFIELD: -119,
77
+ NC_EBADCLASS: -120,
78
+ NC_EMAPTYPE: -121,
79
+ NC_ELATEFILL: -122,
80
+ NC_ELATEDEF: -123,
81
+ NC_EDIMSCALE: -124,
82
+ NC_ENOGRP: -125,
83
+ NC_ESTORAGE: -126,
84
+ NC_EBADCHUNK: -127,
85
+ NC_ENOTBUILT: -128,
86
+ NC_EDISKLESS: -129,
87
+ NC_ECANTEXTEND: -130,
88
+ NC_EMPI: -131,
6
89
  // File modes
7
- NC_NOWRITE: 0,
8
- NC_WRITE: 1,
9
- NC_CLOBBER: 0,
10
- NC_NOCLOBBER: 4,
11
- NC_NETCDF4: 4096,
12
- // Data types
13
- // See: https://docs.unidata.ucar.edu/nug/current/md_types.html
14
- NC_BYTE: 1,
15
- NC_CHAR: 2,
16
- NC_SHORT: 3,
17
- NC_INT: 4,
18
- NC_FLOAT: 5,
19
- NC_DOUBLE: 6,
20
- NC_UINT: 7,
21
- NC_UINT64: 8,
22
- NC_INT64: 9,
23
- NC_UBYTE: 9,
24
- NC_LONGLONG: 10,
25
- NC_USHORT: 11,
26
- NC_STRING: 12,
90
+ NC_NOWRITE: 0x0000,
91
+ NC_WRITE: 0x0001,
92
+ NC_CLOBBER: 0x0000,
93
+ NC_NOCLOBBER: 0x0004,
94
+ NC_DISKLESS: 0x0008,
95
+ NC_MMAP: 0x0010, // deprecated
96
+ NC_64BIT_DATA: 0x0020,
97
+ NC_CDF5: 0x0020,
98
+ NC_CLASSIC_MODEL: 0x0100,
99
+ NC_64BIT_OFFSET: 0x0200,
100
+ NC_NETCDF4: 0x1000,
101
+ NC_SHARE: 0x0800,
102
+ NC_INMEMORY: 0x8000,
103
+ // Format versions
104
+ NC_FORMAT_CLASSIC: 1,
105
+ NC_FORMAT_64BIT_OFFSET: 2,
106
+ NC_FORMAT_64BIT: 2,
107
+ NC_FORMAT_NETCDF4: 3,
108
+ NC_FORMAT_NETCDF4_CLASSIC: 4,
109
+ NC_FORMAT_64BIT_DATA: 5,
110
+ NC_FORMAT_CDF5: 5,
111
+ // Data types (atomic types)
112
+ NC_NAT: 0, // Not A Type
113
+ NC_BYTE: 1, // signed 1-byte integer
114
+ NC_CHAR: 2, // text character
115
+ NC_SHORT: 3, // signed 2-byte integer
116
+ NC_INT: 4, // signed 4-byte integer
117
+ NC_LONG: 4, // deprecated, same as NC_INT
118
+ NC_FLOAT: 5, // single precision float
119
+ NC_DOUBLE: 6, // double precision float
120
+ NC_UBYTE: 7, // unsigned 1-byte integer
121
+ NC_USHORT: 8, // unsigned 2-byte integer
122
+ NC_UINT: 9, // unsigned 4-byte integer
123
+ NC_INT64: 10, // signed 8-byte integer
124
+ NC_UINT64: 11, // unsigned 8-byte integer
125
+ NC_STRING: 12, // variable-length string
126
+ // Aliases for 64-bit integers
127
+ NC_LONGLONG: 10, // alias for NC_INT64
128
+ NC_ULONGLONG: 11, // alias for NC_UINT64
129
+ // User-defined types (NetCDF-4)
130
+ NC_VLEN: 13, // variable-length type
131
+ NC_OPAQUE: 14, // opaque type
132
+ NC_ENUM: 15, // enumeration type
133
+ NC_COMPOUND: 16, // compound type
134
+ // First user-defined type ID
135
+ NC_FIRSTUSERTYPEID: 32,
136
+ // Fill modes
137
+ NC_FILL: 0,
138
+ NC_NOFILL: 0x100,
27
139
  // Storage types
28
140
  NC_CHUNKED: 0,
29
141
  NC_CONTIGUOUS: 1,
30
142
  NC_COMPACT: 2,
143
+ NC_VIRTUAL: 3,
144
+ // Endianness
145
+ NC_ENDIAN_NATIVE: 0,
146
+ NC_ENDIAN_LITTLE: 1,
147
+ NC_ENDIAN_BIG: 2,
148
+ // Unlimited dimension
149
+ NC_UNLIMITED: 0,
31
150
  // Special values
32
- NC_UNLIMITED: -1000, // Use special value to distinguish from 0
33
- NC_GLOBAL: -1,
151
+ NC_GLOBAL: -1, // Global attribute
152
+ NC_MAX_DIMS: 1024,
153
+ NC_MAX_ATTRS: 8192,
154
+ NC_MAX_VARS: 8192,
155
+ NC_MAX_NAME: 256,
156
+ NC_MAX_VAR_DIMS: 1024,
157
+ // Compression
158
+ NC_NOCHECKSUM: 0,
159
+ NC_FLETCHER32: 1,
160
+ // Shuffle filter
161
+ NC_NOSHUFFLE: 0,
162
+ NC_SHUFFLE: 1,
34
163
  };
35
164
  // Data type mapping from string names to NetCDF constants
36
165
  export const DATA_TYPE_MAP = {
166
+ // Short names
37
167
  'f8': NC_CONSTANTS.NC_DOUBLE,
38
168
  'f4': NC_CONSTANTS.NC_FLOAT,
169
+ 'i8': NC_CONSTANTS.NC_INT64,
39
170
  'i4': NC_CONSTANTS.NC_INT,
40
171
  'i2': NC_CONSTANTS.NC_SHORT,
41
172
  'i1': NC_CONSTANTS.NC_BYTE,
173
+ 'u8': NC_CONSTANTS.NC_UINT64,
174
+ 'u4': NC_CONSTANTS.NC_UINT,
175
+ 'u2': NC_CONSTANTS.NC_USHORT,
176
+ 'u1': NC_CONSTANTS.NC_UBYTE,
42
177
  'S1': NC_CONSTANTS.NC_CHAR,
43
- 'i8': NC_CONSTANTS.NC_LONGLONG,
178
+ // Long names
44
179
  'double': NC_CONSTANTS.NC_DOUBLE,
45
180
  'float': NC_CONSTANTS.NC_FLOAT,
181
+ 'int64': NC_CONSTANTS.NC_INT64,
46
182
  'int': NC_CONSTANTS.NC_INT,
47
183
  'short': NC_CONSTANTS.NC_SHORT,
48
184
  'byte': NC_CONSTANTS.NC_BYTE,
185
+ 'uint64': NC_CONSTANTS.NC_UINT64,
186
+ 'uint': NC_CONSTANTS.NC_UINT,
187
+ 'ushort': NC_CONSTANTS.NC_USHORT,
188
+ 'ubyte': NC_CONSTANTS.NC_UBYTE,
49
189
  'char': NC_CONSTANTS.NC_CHAR,
50
- 'longlong': NC_CONSTANTS.NC_LONGLONG,
190
+ 'string': NC_CONSTANTS.NC_STRING,
51
191
  'str': NC_CONSTANTS.NC_STRING,
52
- 'u1': NC_CONSTANTS.NC_UBYTE,
53
- 'u2': NC_CONSTANTS.NC_USHORT,
54
- 'u4': NC_CONSTANTS.NC_UINT,
55
- 'u8': NC_CONSTANTS.NC_UINT64
192
+ // Aliases
193
+ 'longlong': NC_CONSTANTS.NC_LONGLONG,
194
+ 'ulonglong': NC_CONSTANTS.NC_ULONGLONG,
195
+ 'long': NC_CONSTANTS.NC_INT,
56
196
  };
197
+ // Reverse mapping: NetCDF type ID to dtype string
57
198
  export const CONSTANT_DTYPE_MAP = {
58
- 1: 'i1',
59
- 2: 'S1',
60
- 3: 'i2',
61
- 4: 'i4',
62
- 5: 'f4',
63
- 6: 'f8',
64
- 7: 'u4',
65
- 8: 'u8',
66
- 9: 'u1',
67
- 10: 'i8',
68
- 11: 'u2',
69
- 12: 'str'
199
+ 0: 'NAT', // NC_NAT
200
+ 1: 'i1', // NC_BYTE
201
+ 2: 'S1', // NC_CHAR
202
+ 3: 'i2', // NC_SHORT
203
+ 4: 'i4', // NC_INT
204
+ 5: 'f4', // NC_FLOAT
205
+ 6: 'f8', // NC_DOUBLE
206
+ 7: 'u1', // NC_UBYTE
207
+ 8: 'u2', // NC_USHORT
208
+ 9: 'u4', // NC_UINT
209
+ 10: 'i8', // NC_INT64
210
+ 11: 'u8', // NC_UINT64
211
+ 12: 'str', // NC_STRING
70
212
  };
213
+ // Data type sizes in bytes
71
214
  export const DATA_TYPE_SIZE = {
72
- 1: 1,
73
- 2: 1,
74
- 3: 2,
75
- 4: 4,
76
- 5: 4,
77
- 6: 8,
78
- 7: 4,
79
- 8: 8,
80
- 9: 1,
81
- 10: 8,
82
- 11: 2,
83
- 12: 0
215
+ 0: 0, // NC_NAT
216
+ 1: 1, // NC_BYTE
217
+ 2: 1, // NC_CHAR
218
+ 3: 2, // NC_SHORT
219
+ 4: 4, // NC_INT
220
+ 5: 4, // NC_FLOAT
221
+ 6: 8, // NC_DOUBLE
222
+ 7: 1, // NC_UBYTE
223
+ 8: 2, // NC_USHORT
224
+ 9: 4, // NC_UINT
225
+ 10: 8, // NC_INT64
226
+ 11: 8, // NC_UINT64
227
+ 12: 0, // NC_STRING (variable length)
228
+ };
229
+ // Human-readable type names
230
+ export const TYPE_NAMES = {
231
+ 0: 'NAT',
232
+ 1: 'byte',
233
+ 2: 'char',
234
+ 3: 'short',
235
+ 4: 'int',
236
+ 5: 'float',
237
+ 6: 'double',
238
+ 7: 'ubyte',
239
+ 8: 'ushort',
240
+ 9: 'uint',
241
+ 10: 'int64',
242
+ 11: 'uint64',
243
+ 12: 'string',
244
+ 13: 'vlen',
245
+ 14: 'opaque',
246
+ 15: 'enum',
247
+ 16: 'compound',
84
248
  };
85
249
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,qDAAqD;AAErD,MAAM,CAAC,MAAM,YAAY,GAAG;IACxB,cAAc;IACd,QAAQ,EAAE,CAAC;IACX,SAAS,EAAE,CAAC,EAAE;IAEd,aAAa;IACb,UAAU,EAAE,CAAC;IACb,QAAQ,EAAE,CAAC;IACX,UAAU,EAAE,CAAC;IACb,YAAY,EAAE,CAAC;IACf,UAAU,EAAE,IAAI;IAEhB,aAAa;IACb,+DAA+D;IAC/D,OAAO,EAAE,CAAC;IACV,OAAO,EAAE,CAAC;IACV,QAAQ,EAAE,CAAC;IACX,MAAM,EAAE,CAAC;IACT,QAAQ,EAAE,CAAC;IACX,SAAS,EAAE,CAAC;IACZ,OAAO,EAAE,CAAC;IACV,SAAS,EAAE,CAAC;IACZ,QAAQ,EAAE,CAAC;IACX,QAAQ,EAAE,CAAC;IACX,WAAW,EAAE,EAAE;IACf,SAAS,EAAE,EAAE;IACb,SAAS,EAAE,EAAE;IACb,gBAAgB;IAChB,UAAU,EAAE,CAAC;IACb,aAAa,EAAE,CAAC;IAChB,UAAU,EAAE,CAAC;IACb,iBAAiB;IACjB,YAAY,EAAE,CAAC,IAAI,EAAE,0CAA0C;IAC/D,SAAS,EAAE,CAAC,CAAC;CAChB,CAAC;AAEF,0DAA0D;AAC1D,MAAM,CAAC,MAAM,aAAa,GAA8B;IACpD,IAAI,EAAE,YAAY,CAAC,SAAS;IAC5B,IAAI,EAAE,YAAY,CAAC,QAAQ;IAC3B,IAAI,EAAE,YAAY,CAAC,MAAM;IACzB,IAAI,EAAE,YAAY,CAAC,QAAQ;IAC3B,IAAI,EAAE,YAAY,CAAC,OAAO;IAC1B,IAAI,EAAE,YAAY,CAAC,OAAO;IAC1B,IAAI,EAAE,YAAY,CAAC,WAAW;IAC9B,QAAQ,EAAE,YAAY,CAAC,SAAS;IAChC,OAAO,EAAE,YAAY,CAAC,QAAQ;IAC9B,KAAK,EAAE,YAAY,CAAC,MAAM;IAC1B,OAAO,EAAE,YAAY,CAAC,QAAQ;IAC9B,MAAM,EAAE,YAAY,CAAC,OAAO;IAC5B,MAAM,EAAE,YAAY,CAAC,OAAO;IAC5B,UAAU,EAAE,YAAY,CAAC,WAAW;IACpC,KAAK,EAAE,YAAY,CAAC,SAAS;IAC7B,IAAI,EAAE,YAAY,CAAC,QAAQ;IAC3B,IAAI,EAAE,YAAY,CAAC,SAAS;IAC5B,IAAI,EAAE,YAAY,CAAC,OAAO;IAC1B,IAAI,EAAE,YAAY,CAAC,SAAS;CAC/B,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAA8B;IACzD,CAAC,EAAG,IAAI;IACR,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,EAAE,EAAE,IAAI;IACR,EAAE,EAAE,IAAI;IACR,EAAE,EAAE,KAAK;CACZ,CAAA;AAED,MAAM,CAAC,MAAM,cAAc,GAA8B;IACrD,CAAC,EAAE,CAAC;IACJ,CAAC,EAAE,CAAC;IACJ,CAAC,EAAE,CAAC;IACJ,CAAC,EAAE,CAAC;IACJ,CAAC,EAAE,CAAC;IACJ,CAAC,EAAE,CAAC;IACJ,CAAC,EAAE,CAAC;IACJ,CAAC,EAAE,CAAC;IACJ,CAAC,EAAE,CAAC;IACJ,EAAE,EAAE,CAAC;IACL,EAAE,EAAE,CAAC;IACL,EAAE,EAAE,CAAC;CACR,CAAA"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"group.d.ts","sourceRoot":"","sources":["../src/group.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAElD,qBAAa,KAAK;IAOV,SAAS,CAAC,MAAM,EAAE,OAAO;aACT,IAAI,EAAE,MAAM;IAC5B,SAAS,CAAC,OAAO,EAAE,MAAM;IACzB,SAAS,CAAC,MAAM,CAAC,EAAE,KAAK;IAT5B,SAAgB,UAAU,EAAE;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,CAAA;KAAE,CAAM;IAC/D,SAAgB,SAAS,EAAE;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,CAAA;KAAE,CAAM;IAC7D,SAAgB,MAAM,EAAE;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG,KAAK,CAAA;KAAE,CAAM;IACvD,OAAO,CAAC,WAAW,CAA8B;gBAGnC,MAAM,EAAE,OAAO,EACT,IAAI,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,KAAK,YAAA;IAI5B,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,IAAI;IAcvC,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,GAAG;IAgB1B,KAAK,IAAI,MAAM,EAAE;IAIX,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,SAAS,CAAC;IAuBrE,kBAAkB,IAAI,IAAI;IA8B3B,cAAc,CAChB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,UAAU,GAAE,MAAM,EAAO,EACzB,OAAO,GAAE,eAAoB,GAC9B,OAAO,CAAC,QAAQ,CAAC;IAqCpB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,KAAK;IAQhC,QAAQ,IAAI;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG,KAAK,CAAA;KAAE;IAKrC,IAAI,IAAI,IAAI,MAAM,CAIjB;IAEK,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAmD3B,QAAQ,IAAI,MAAM;CAGrB"}
1
+ {"version":3,"file":"group.d.ts","sourceRoot":"","sources":["../src/group.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAElD,qBAAa,KAAK;IAOV,SAAS,CAAC,MAAM,EAAE,OAAO;aACT,IAAI,EAAE,MAAM;IAC5B,SAAS,CAAC,OAAO,EAAE,MAAM;IACzB,SAAS,CAAC,MAAM,CAAC,EAAE,KAAK;IAT5B,SAAgB,UAAU,EAAE;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,CAAA;KAAE,CAAM;IAC/D,SAAgB,SAAS,EAAE;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,CAAA;KAAE,CAAM;IAC7D,SAAgB,MAAM,EAAE;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG,KAAK,CAAA;KAAE,CAAM;IACvD,OAAO,CAAC,WAAW,CAA8B;gBAGnC,MAAM,EAAE,OAAO,EACT,IAAI,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,KAAK,YAAA;IAI5B,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,IAAI;IAcvC,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,GAAG;IAgB1B,KAAK,IAAI,MAAM,EAAE;IAIX,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,SAAS,CAAC;IAoBrE,kBAAkB,IAAI,IAAI;IA8B3B,cAAc,CAChB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,UAAU,GAAE,MAAM,EAAO,EACzB,OAAO,GAAE,eAAoB,GAC9B,OAAO,CAAC,QAAQ,CAAC;IAqCpB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,KAAK;IAQhC,QAAQ,IAAI;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG,KAAK,CAAA;KAAE;IAKrC,IAAI,IAAI,IAAI,MAAM,CAIjB;IAEK,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAmD3B,QAAQ,IAAI,MAAM;CAGrB"}
package/dist/group.js CHANGED
@@ -54,11 +54,11 @@ export class Group {
54
54
  throw new Error(`Dimension '${name}' already exists`);
55
55
  }
56
56
  // Check for invalid size values
57
- if (size !== null && size < 0 && size !== NC_CONSTANTS.NC_UNLIMITED) {
57
+ if (size !== null && size < 0) {
58
58
  throw new Error(`Invalid dimension size: ${size}. Size must be non-negative or null for unlimited.`);
59
59
  }
60
- // Handle unlimited dimension (null or NC_UNLIMITED constant)
61
- const isUnlimited = size === null || size === NC_CONSTANTS.NC_UNLIMITED;
60
+ // Handle unlimited dimension (null only size=0 is a valid finite dimension)
61
+ const isUnlimited = size === null;
62
62
  const ncSize = isUnlimited ? 0 : size; // Use 0 for unlimited in the actual NetCDF API
63
63
  const dimid = await this.netcdf.defineDimension(this.groupId, name, ncSize);
64
64
  const actualSize = isUnlimited ? NC_CONSTANTS.NC_UNLIMITED : size;
package/dist/group.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"group.js","sourceRoot":"","sources":["../src/group.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"group.js","sourceRoot":"","sources":["../src/group.ts"],"names":[],"mappings":"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"}
@@ -10,9 +10,28 @@ export declare function getGlobalAttributes(module: NetCDF4Module, ncid: number,
10
10
  export declare function getAttributeName(module: NetCDF4Module, ncid: number, varid: number, attId: number): string | undefined;
11
11
  export declare function getFullMetadata(module: NetCDF4Module, ncid: number, groupPath?: string): Record<string, any>[];
12
12
  export declare function getVarIDs(module: NetCDF4Module, ncid: number): number[] | Int32Array;
13
+ interface EnumInfo {
14
+ name: string;
15
+ baseType: number;
16
+ baseSize: number;
17
+ numMembers: number;
18
+ }
19
+ interface EnumMember {
20
+ name: string;
21
+ value: number | bigint;
22
+ }
23
+ interface EnumType extends EnumInfo {
24
+ members: EnumMember[];
25
+ }
26
+ export declare function getEnumType(module: NetCDF4Module, ncid: number, xtype: number): EnumType;
27
+ export declare function getTypeClass(module: NetCDF4Module, ncid: number, xtype: number): number;
13
28
  export declare function getVariableInfo(module: NetCDF4Module, ncid: number, variable: number | string, groupPath?: string): Record<string, any>;
14
- export declare function getVariableArray(module: NetCDF4Module, ncid: number, variable: number | string, groupPath?: string): Int8Array | Uint8Array | Int16Array | Uint16Array | Int32Array | Uint32Array | Float32Array | Float64Array | BigInt64Array | BigUint64Array | string[];
15
- export declare function getSlicedVariableArray(module: NetCDF4Module, ncid: number, variable: number | string, start: number[], count: number[], groupPath?: string): Int8Array | Uint8Array | Int16Array | Uint16Array | Int32Array | Uint32Array | Float32Array | Float64Array | BigInt64Array | BigUint64Array | string[];
29
+ export declare function getVariableArray(module: NetCDF4Module, ncid: number, variable: number | string, groupPath?: string, options?: {
30
+ convertEnumsToNames?: boolean;
31
+ }): Int8Array | Uint8Array | Int16Array | Uint16Array | Int32Array | Uint32Array | Float32Array | Float64Array | BigInt64Array | BigUint64Array | string[];
32
+ export declare function getSlicedVariableArray(module: NetCDF4Module, ncid: number, variable: number | string, start: number[], count: number[], groupPath?: string, options?: {
33
+ convertEnumsToNames?: boolean;
34
+ }): Int8Array | Uint8Array | Int16Array | Uint16Array | Int32Array | Uint32Array | Float32Array | Float64Array | BigInt64Array | BigUint64Array | string[];
16
35
  /**
17
36
  * Get group ncid by path (supports nested groups)
18
37
  * Uses nc_inq_grp_full_ncid for absolute paths and manual traversal for relative paths
@@ -92,4 +111,5 @@ export declare function getCompleteHierarchy(module: NetCDF4Module, ncid: number
92
111
  * @returns Flat dictionary with full variable paths
93
112
  */
94
113
  export declare function getVariables(module: NetCDF4Module, ncid: number, currentPath?: string): Record<string, any>;
114
+ export {};
95
115
  //# sourceMappingURL=netcdf-getters.d.ts.map