Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge 4.1.1 master #9

Merged
merged 82 commits into from
Feb 19, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
82 commits
Select commit Hold shift + click to select a range
323bc86
chore(arrow): Support WKT and WKB geoarrow encodings (v4.1) (#2798)
ibgreen Nov 21, 2023
207ff3f
Convert GetImageParameters to WMSGetMapParameters (#2799)
felixpalmer Nov 22, 2023
5a701cd
chore: update package.json keywords (#2797)
ibgreen Nov 22, 2023
54063a8
feat(flatgeobuf): Extract arrow compatible schema (#2801)
ibgreen Nov 22, 2023
81bf66e
feat(website): Add GeoArrow example (#2802)
ibgreen Nov 22, 2023
c50b76a
docs(las): Mark LAS v1.4 as not supported (#2804)
ibgreen Nov 25, 2023
c3d1ae9
chore(website): minor touches (#2805)
ibgreen Nov 25, 2023
32f1e28
feat(website): Add Shapefile and KML examples (#2806)
ibgreen Nov 26, 2023
2391140
chore(website): polish (#2807)
ibgreen Nov 26, 2023
617d83d
GLTF: inline emod function to remove loaders.gl/math dependency (#2808)
felixpalmer Nov 27, 2023
77f3c1c
chore(parquet): GeoParquetLoader, collect the parquet loader zoo in o…
ibgreen Nov 28, 2023
8a35c9a
fix(GeoArrow): handle tessellation error & improve mean centers (#2803)
lixun910 Nov 28, 2023
20ca6f9
chore: typescript 5.3 (#2810)
ibgreen Nov 29, 2023
a017cbd
chore: upgrade to vite 5 (#2812)
ibgreen Nov 29, 2023
358d23b
docs: fgb and tilejson docs, streamline fgbloader exports (#2811)
ibgreen Nov 29, 2023
bf60df8
fix(tile-converter): trailing slash Removing from path in i3s-server …
dariaterekhova-actionengine Nov 29, 2023
0884690
fix: wms example (#2814)
ibgreen Nov 29, 2023
b8faecf
feat: merge 4.1 dev into master (#2818)
dariaterekhova-actionengine Dec 1, 2023
6a4d3da
v4.1.0-alpha.1
dariaterekhova-actionengine Dec 5, 2023
b677f33
feat(arrow): Triangulate on worker (#2789)
ibgreen Dec 5, 2023
a248382
v4.1.0-alpha.2
ibgreen Dec 6, 2023
9f8593d
fix(crypto): Reuse of Hash instance failures (#2824)
ibgreen Dec 7, 2023
08eddf1
fix(crypto): crc32 algorithm fix (#2819)
dariaterekhova-actionengine Dec 7, 2023
c5ec864
feat(zip): Added append and truncate functionality (#2800)
dariaterekhova-actionengine Dec 7, 2023
f28f8f6
chore: ensure all Writers have an encode() method (#2826)
ibgreen Dec 7, 2023
36c07ab
chore: Start adopting SPDX license headers (#2828)
ibgreen Dec 8, 2023
61c23c3
fix: webpack bson bundling issue (#2831)
ibgreen Dec 8, 2023
5ea153d
fix(zip): Local file header generation implemented (#2832)
dariaterekhova-actionengine Dec 11, 2023
dcdc498
fix: Fix version injection (#2834)
ibgreen Dec 11, 2023
3a6cd8b
fix(json): Fix row-object and array-object shape inference (#2833)
ibgreen Dec 11, 2023
9b35787
fix(3d-tiles): Fix implicit tileset subtree parsing (#2823)
Kaapp Dec 11, 2023
e3d76c8
chore(deps): bump vite from 4.4.9 to 4.5.1 (#2822)
dependabot[bot] Dec 11, 2023
d726f52
fix(mvt): TileJSONLoader options.maxValues default (#2835)
ibgreen Dec 12, 2023
e8fc44b
feat(mvt): Add templateUrl etc to MVTSource. (#2837)
ibgreen Dec 12, 2023
b78075a
v4.1.0-alpha.3
ibgreen Dec 12, 2023
f682b5c
feat(GeoArrow): add optional delay between batches in parseArrowInBat…
lixun910 Dec 12, 2023
d8d3dc6
feat(geotiff): RGB GeoTIFFLoader (#2839)
giovannicimolin Dec 13, 2023
c924636
feat(geotiff): Fix GeoTIFFLoader (#2841)
ibgreen Dec 13, 2023
fb722ae
fix(loader-utils): Guard against infinite recursion (#2838)
ibgreen Dec 13, 2023
469be97
chore(website): Add I3S Building Scene Layer as a separate example (#…
maxkuznetsov-actionengine Dec 15, 2023
460e4ab
fix(3d-tiles): loadExplicitBitstream use offset+length to extract fro…
justinmanley Dec 15, 2023
cf08322
feat(zip): adding file to the end of zip archive implementation (#2842)
dariaterekhova-actionengine Dec 15, 2023
b18ba1d
v4.1.0-alpha.4
ibgreen Dec 15, 2023
2f2e006
chore: Add missing icon for I3S BSL example (#2845)
maxkuznetsov-actionengine Dec 18, 2023
7a4f41f
fix(3d-tiles): Update the empty traversal algorithm to match CesiumJS…
Avnerus Dec 21, 2023
22cb3d1
chore(tile-converter): hash file creation and addition to the slpk im…
dariaterekhova-actionengine Dec 27, 2023
3250842
v4.1.0-alpha.5
dariaterekhova-actionengine Dec 28, 2023
86f8262
feat(tile-converter): --add-hash mode (#2849)
dariaterekhova-actionengine Jan 4, 2024
fd58d91
v4.1.0-alpha.6
dariaterekhova-actionengine Jan 4, 2024
8a42904
chore(flatgeobuf): fork flatgeobuf TS to fix bundling and import issu…
ibgreen Jan 10, 2024
3dfa49b
v4.1.0-alpha.7
ibgreen Jan 10, 2024
48d206a
fix(flatgeobuf): restore worker build (#2855)
ibgreen Jan 10, 2024
144bb2f
v4.1.0-alpha.8
ibgreen Jan 10, 2024
1469991
fix(tile-converter): support portable NodeJS (#2854)
belom88 Jan 11, 2024
0291d4d
v4.1.0-alpha.9
dariaterekhova-actionengine Jan 11, 2024
d7875ce
chore(deps): bump follow-redirects from 1.15.2 to 1.15.4 in /website …
dependabot[bot] Jan 11, 2024
2243c12
feat(tiles): Memory adjusted screen space error (#2851)
Avnerus Jan 11, 2024
17f79e9
concatenateArrayBuffers fix (#2856)
dariaterekhova-actionengine Jan 16, 2024
2d750f3
docs: Improve flatgeobuf docs (#2859)
ibgreen Jan 17, 2024
78d9c19
chore: Fix publint issues, step 1 (#2862)
ibgreen Jan 20, 2024
452d00a
feat(tile-converter): add convertion status dump file (#2858)
maxkuznetsov-actionengine Jan 24, 2024
19f43c2
v4.1.0-alpha.10
dariaterekhova-actionengine Jan 24, 2024
17245df
chore(zip): Zip composition function added (#2860)
dariaterekhova-actionengine Jan 24, 2024
a3b22d7
docs: Update PMTiles format docs (#2864)
ibgreen Jan 26, 2024
ef9cfbd
chore: Website polish (#2866)
ibgreen Jan 26, 2024
68ce91f
chore: Require apache-arrow v15 or higher (#2865)
ibgreen Jan 26, 2024
e5ff5fb
chore: Update examples to type: module (#2867)
ibgreen Jan 28, 2024
27f6384
fix(i3s-scene-parser): provide unsupported layer types in the excepti…
mspivak-actionengine Jan 30, 2024
d6d48f8
chore(zip): zip composition feature integration (#2871)
dariaterekhova-actionengine Jan 30, 2024
eec7089
Browser-test fix (#2874)
dariaterekhova-actionengine Jan 30, 2024
9376bd1
fix(tile-converter): fix status dump structure (#2872)
maxkuznetsov-actionengine Jan 31, 2024
ef186a3
fix(tile-converter): add KHR_materials_unlit extension to materials (…
mspivak-actionengine Jan 31, 2024
5d3e23b
v4.1.0-alpha.11
dariaterekhova-actionengine Jan 31, 2024
ad75df5
fix(tile-converter): 3d-tiles converter freezes in the end (#2877)
belom88 Feb 1, 2024
fab4d0a
fix(tile-converter): skip showing progress with no analyze (#2875)
mspivak-actionengine Feb 7, 2024
12dff29
fix(tile-converter): add default refine value to the root (#2873)
mspivak-actionengine Feb 7, 2024
e1c6d24
Removing console.log() (#2878)
dariaterekhova-actionengine Feb 7, 2024
685069f
chore: exclude NodeJS v16 from CI (#2881)
belom88 Feb 7, 2024
75961cc
v4.1.0
ibgreen Feb 7, 2024
c6d6d08
fix(flatgeobuf): Add missing index files (#2884)
ibgreen Feb 13, 2024
b4a8cb4
v4.1.1
ibgreen Feb 13, 2024
86d1261
sync with upstream 4.1.1
quipo Feb 15, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
6 changes: 4 additions & 2 deletions .eslintignore
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,11 @@ public/
.cache/

examples/**
examples/experimental/gltf-with-raw-webgl/

modules/flatgeobuf/src/flatgeobuf*
modules/potree/test/data/**/cloud.js
modules/tiles/src/bundle.ts
modules/zarr

modules/tile-converter/
modules/potree/test/data/**/cloud.js
examples/experimental/gltf-with-raw-webgl/
3 changes: 2 additions & 1 deletion .nycrc
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@
"**/text-encoding.js",
"**/encoding.js",
"**/laz-perf.js",
"**3d-tiles/src/styles/**"
"**3d-tiles/src/styles/**",
"**/src/flatgeobuf/**"
]
}
107 changes: 106 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,110 @@
# CHANGELOG for loaders.gl

## v4.2 (alpha)

## v4.1

### v4.1.1

- fix(flatgeobuf): Add missing index files (#2884)

### v4.1.0

### v4.1.0-alpha.11

- fix(tile-converter): add KHR_materials_unlit extension to materials (#2870)
- fix(tile-converter): fix status dump structure (#2872)
- Browser-test fix (#2874)
- chore(zip): zip composition feature integration (#2871)
- fix(i3s-scene-parser): provide unsupported layer types in the exception (#2863)
- chore: Update examples to type: module (#2867)
- chore: Require apache-arrow v15 or higher (#2865)
- chore: Website polish (#2866)
- docs: Update PMTiles format docs (#2864)
- chore(zip): Zip composition function added (#2860)

### v4.1.0-alpha.10

- feat(tile-converter): add convertion status dump file (#2858)
- chore: Fix publint issues, step 1 (#2862)
- docs: Improve flatgeobuf docs (#2859)
- concatenateArrayBuffers fix (#2856)
- feat(tiles): Memory adjusted screen space error (#2851)
- chore(deps): bump follow-redirects from 1.15.2 to 1.15.4 in /website (#2852)

### v4.1.0-alpha.9

- fix(tile-converter): support portable NodeJS (#2854)

### v4.1.0-alpha.8

- fix(flatgeobuf): restore worker build (#2855)

### v4.1.0-alpha.7

- chore(flatgeobuf): fork flatgeobuf TS to fix bundling and import issues (#2853)

### v4.1.0-alpha.6

- feat(tile-converter): --add-hash mode (#2849)

### v4.1.0-alpha.5

- chore(tile-converter): hash file creation and addition to the slpk implemented (#2848)
- fix(3d-tiles): Update the empty traversal algorithm to match CesiumJS, possible fix for low-res flickering (#2847)
- chore: Add missing icon for I3S BSL example (#2845)

### v4.1.0-alpha.4

- feat(zip): adding file to the end of zip archive implementation (#2842)
- fix(3d-tiles): loadExplicitBitstream use offset+length to extract from combined binary blob (#2844)
- chore(website): Add I3S Building Scene Layer as a separate example (#2840)
- fix(loader-utils): Guard against infinite recursion (#2838)
- feat(geotiff): Fix GeoTIFFLoader (#2841)
- feat(geotiff): RGB GeoTIFFLoader (#2839)
- feat(GeoArrow): add optional delay between batches in parseArrowInBatches (#2836)

### v4.1.0-alpha.3

- feat(mvt): Add templateUrl etc to MVTSource. (#2837)
- fix(mvt): TileJSONLoader options.maxValues default (#2835)
- chore(deps): bump vite from 4.4.9 to 4.5.1 (#2822)
- fix(3d-tiles): Fix implicit tileset subtree parsing (#2823)
- fix(json): Fix row-object and array-object shape inference (#2833)
- fix: Fix version injection (#2834)
- fix(zip): Local file header generation implemented (#2832)
- fix: webpack bson bundling issue (#2831)
- chore: Start adopting SPDX license headers (#2828)
- chore: ensure all Writers have an encode() method (#2826)
- feat(zip): Added append and truncate functionality (#2800)
- fix(crypto): crc32 algorithm fix (#2819)
- fix(crypto): Reuse of Hash instance failures (#2824)

### v4.1.0-alpha.2

- feat(arrow): Triangulate on worker (#2789)

### v4.1.0-alpha.1

- feat(zip): cd header and zip64 info generation implemented (#2792)
- fix: wms example (#2814)
- fix(tile-converter): trailing slash Removing from path in i3s-server (#2813)
- docs: fgb and tilejson docs, streamline fgbloader exports (#2811)
- chore: upgrade to vite 5 (#2812)
- chore: typescript 5.3 (#2810)
- fix(GeoArrow): handle tessellation error & improve mean centers (#2803)
- chore(parquet): GeoParquetLoader, collect the parquet loader zoo in one file (#2809)
- GLTF: inline emod function to remove loaders.gl/math dependency (#2808)
- chore(website): polish (#2807)
- feat(website): Add Shapefile and KML examples (#2806)
- chore(website): minor touches (#2805)
- docs(las): Mark LAS v1.4 as not supported (#2804)
- feat(website): Add GeoArrow example (#2802)
- feat(flatgeobuf): Extract arrow compatible schema (#2801)
- chore: update package.json keywords (#2797)
- Convert GetImageParameters to WMSGetMapParameters (#2799)
- chore(arrow): Support WKT and WKB geoarrow encodings (v4.1) (#2798)

## v4.0

### v4.0.5
Expand Down Expand Up @@ -2158,7 +2263,7 @@
- core: Fixes to `parse` (#345)
- docs: front page update
- core: Add error handling to `parse*` functions (#342)
- core: Name workers for debugger (#339)
- core: Name workers for easier debugging (#339)
- fix bug with read property match of undefined (#340) (#341)
- Fix tranformMatrix regression (#338)
- Add back DracoWorkerLoader (#337)
Expand Down
37 changes: 21 additions & 16 deletions babel.config.cjs
Original file line number Diff line number Diff line change
@@ -1,22 +1,27 @@
// @ts-ignore
const {getBabelConfig} = require('ocular-dev-tools/configuration');

module.exports = getBabelConfig({
const config = getBabelConfig({
react: true,
plugins: [
// inject __VERSION__ from package.json
'version-inline'
],
ignore: [
// Don't transpile workers, they are transpiled separately
'**/*.worker.js',
'**/workers/*.js',
// Don't transpile files in libs, we use this folder to store external,
// already transpiled and minified libraries and scripts.
// e.g. draco, basis, las-perf etc.
/src\/libs/,
// babel can't process .d.ts
/\.d\.ts$/
],
overrides: {
plugins: [
// inject __VERSION__ from package.json
'version-inline'
],
ignore: [
// Don't transpile workers, they are transpiled separately
'**/*.worker.js',
'**/workers/*.js',
// Don't transpile files in libs, we use this folder to store external,
// already transpiled and minified libraries and scripts.
// e.g. draco, basis, las-perf etc.
/src\/libs/,
// babel can't process .d.ts
/\.d\.ts$/
]
},
// Set to true to print the config to console.
debug: false
});

module.exports = config;
12 changes: 6 additions & 6 deletions docs/README.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -33,12 +33,12 @@ loaders.gl provides a wide selection of loaders organized into categories:

| Category | Loaders |
| ---------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| [Table Loaders](docs/specifications/category-table) | Streaming tabular loaders for [CSV](modules/csv/docs/api-reference/csv-loader), [JSON](modules/json/docs/api-reference/json-loader), [Arrow](modules/arrow/docs/api-reference/arrow-loader) etc |
| [Geospatial Loaders](docs/specifications/category-gis) | Loaders for geospatial formats such as [GeoJSON](/docs/modules/json/api-reference/geojson-loader) [KML](modules/kml/docs/api-reference/kml-loader), [WKT/WKB](modules/wkt/docs/api-reference/wkt-loader), [Mapbox Vector Tiles](modules/mvt/docs/api-reference/mvt-loader) etc. |
| [Image Loaders](docs/specifications/category-image) | Loaders for [images](modules/images/docs/api-reference/image-loader), [compressed textures](modules/textures/docs/api-reference/compressed-texture-loader), [supercompressed textures (Basis)](modules/textures/docs/api-reference/basis-loader). Utilities for [mipmapped arrays](/docs/modules/textures/api-reference/load-image-array), [cubemaps](/docs/modules/textures/api-reference/load-image-cube), [binary images](/docs/modules/images/api-reference/binary-image-api) and more. |
| [Pointcloud and Mesh Loaders](docs/specifications/category-mesh) | Loaders for point cloud and simple mesh formats such as [Draco](modules/draco/docs/api-reference/draco-loader), [LAS](modules/las/docs/api-reference/las-loader), [PCD](modules/pcd/docs/api-reference/pcd-loader), [PLY](modules/ply/docs/api-reference/ply-loader), [OBJ](modules/obj/docs/api-reference/obj-loader), and [Terrain](modules/terrain/docs/api-reference/terrain-loader). |
| [Scenegraph Loaders](docs/specifications/category-scenegraph) | [glTF](modules/gltf/docs/api-reference/gltf-loader) loader |
| [Tiled Data Loaders](docs/specifications/category-3d-tiles) | Loaders for 3D tile formats such as [3D Tiles](/docs/modules/3d-tiles/api-reference/tiles-3d-loader), [I3S](/docs/modules/i3s/api-reference/i3s-loader) and potree |
| [Table Loaders](/docs/specifications/category-table) | Streaming tabular loaders for [CSV](/docs/modules/csv/api-reference/csv-loader), [JSON](/docs/modules/json/api-reference/json-loader), [Arrow](/docs/modules/arrow/api-reference/arrow-loader) etc |
| [Geospatial Loaders](/docs/specifications/category-gis) | Loaders for geospatial formats such as [GeoJSON](/docs/modules/json/api-reference/geojson-loader) [KML](/docs/modules/kml/api-reference/kml-loader), [WKT/WKB](/docs/modules/wkt/api-reference/wkt-loader), [Mapbox Vector Tiles](/docs/modules/mvt/api-reference/mvt-loader) etc. |
| [Image Loaders](/docs/specifications/category-image) | Loaders for [images](/docs/modules/images/api-reference/image-loader), [compressed textures](/docs/modules/textures/api-reference/compressed-texture-loader), [supercompressed textures (Basis)](/docs/modules/textures/api-reference/basis-loader). Utilities for [mipmapped arrays](/docs/modules/textures/api-reference/load-image-array), [cubemaps](/docs/modules/textures/api-reference/load-image-cube), [binary images](/docs/modules/images/api-reference/binary-image-api) and more. |
| [Pointcloud and Mesh Loaders](/docs/specifications/category-mesh) | Loaders for point cloud and simple mesh formats such as [Draco](/docs/modules/draco/api-reference/draco-loader), [LAS](/docs/modules/las/api-reference/las-loader), [PCD](/docs/modules/pcd/api-reference/pcd-loader), [PLY](/docs/modules/ply/api-reference/ply-loader), [OBJ](/docs/modules/obj/api-reference/obj-loader), and [Terrain](/docs/modules/terrain/api-reference/terrain-loader). |
| [Scenegraph Loaders](/docs/specifications/category-scenegraph) | [glTF](/docs/modules/gltf/api-reference/gltf-loader) loader |
| [Tiled Data Loaders](/docs/specifications/category-3d-tiles) | Loaders for 3D tile formats such as [3D Tiles](/docs/modules/3d-tiles/api-reference/tiles-3d-loader), [I3S](/docs/modules/i3s/api-reference/i3s-loader) and potree |

## Code Examples

Expand Down
20 changes: 10 additions & 10 deletions docs/arrowjs/developer-guide/introduction.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,20 +8,20 @@ Arrow represents columns of values in sets of contiguous buffers. This is in con

The Arrow library is organized into separate components responsible for creating, reading, writing, serializing, deserializing, or manipulating Tables or Columns.

* [Data Types](/docs/arrowjs/developer-guide/introduction#arrow-data-types) - Classes that define the fixed-width, variable-width, and composite data types Arrow can represent
* [Vectors](/docs/arrowjs/developer-guide/introduction#arrow-vectors) - Classes to read and decode JavaScript values from the underlying buffers or Vectors for each data type
* [Builders](/docs/arrowjs/developer-guide/introduction#arrow-builders) - Classes to write and encode JavaScript values into the underlying buffers or Vectors for each data type
* [Visitors](/docs/arrowjs/developer-guide/introduction#arrow-visitors) - Classes to traverse, manipulate, read, write, or aggregate values from trees of Arrow Vectors or DataTypes
* [IPC Readers and Writers](/docs/arrowjs/developer-guide/introduction#arrow-ipc-primitives) - Classes to read and write the Arrow IPC (inter-process communication) binary file and stream formats
* [Fields, Schemas, RecordBatches, Tables, and Columns](/docs/arrowjs/developer-guide/introduction#fields-schemas-recordbatches-tables-and-columns) - Classes to describe, manipulate, read, and write groups of strongly-typed Vectors or Columns
* [Data Types](/docs/arrowjs/developer-guide/data-types) - Classes that define the fixed-width, variable-width, and composite data types Arrow can represent
* Vectors - Classes to read and decode JavaScript values from the underlying buffers or Vectors for each data type
* [Builders](/docs/arrowjs/developer-guide/builders) - Classes to write and encode JavaScript values into the underlying buffers or Vectors for each data type
* Visitors - Classes to traverse, manipulate, read, write, or aggregate values from trees of Arrow Vectors or DataTypes
* [IPC Readers and Writers](/docs/arrowjs/developer-guide/reading-and-writing) - Classes to read and write the Arrow IPC (inter-process communication) binary file and stream formats
* [Fields, Schemas, RecordBatches, Tables, and Columns](/docs/arrowjs/developer-guide/schemas) - Classes to describe, manipulate, read, and write groups of strongly-typed Vectors or Columns

## [Data Types](/docs/arrowjs/developer-guide/data-types)
## Data Types

At the heart of Arrow is set of well-known logical [data types](/docs/arrowjs/developer-guide/data-types), ensuring each Column in an Arrow Table is strongly-typed. These data types define how a Column's underlying buffers should be constructed and read, and includes configurable (and custom) metadata fields for further annotating a Column. A Schema describing each Column's name and data type is encoded alongside each Column's data buffers, allowing you to consume an Arrow data source without knowing the data types or column layout beforehand.

Each data type falls into one of three rough categories: Fixed-width types, variable-width types, or composite types that contain other Arrow data types. All data types can represent null values, which are stored in a separate validity [bitmask](https://en.wikipedia.org/wiki/Mask_(computing)). Follow the links below for a more detailed description of each data type.

### [Fixed-width Data Types](/docs/arrowjs/developer-guide/data-types#fixed-width-data-types)
### Fixed-width Data Types

Fixed-width data types describe physical primitive values (bytes or bits of some fixed size), or logical values that can be represented as primitive values. In addition to an optional [`Uint8Array`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Uint8Array) validity bitmask, these data types have a physical data buffer (a [`TypedArray`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/TypedArray#TypedArray_objects) corresponding to the data type's physical element width).

Expand All @@ -37,15 +37,15 @@ Fixed-width data types describe physical primitive values (bytes or bits of some
* [Interval](/docs/arrowjs/developer-guide/data-types#interval) - Time intervals as pairs of either (year, month) or (day, time) in SQL style
* [FixedSizeList](/docs/arrowjs/developer-guide/data-types#fixedsizelist) - Fixed-size sequences of another logical Arrow data type

### [Variable-width Data Types](/docs/arrowjs/developer-guide/data-types#variable-width-data-types)
### Variable-width Data Types

Variable-width types describe lists of values with different widths, including binary blobs, Utf8 code-points, or slices of another underlying Arrow data type. These types store the values contiguously in memory, and have a physical [`Int32Array`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Int32Array) of offsets that describe the start and end indicies of each list element.

* [List](/docs/arrowjs/developer-guide/data-types#list) - Variable-length sequences of another logical Arrow data type
* [Utf8](/docs/arrowjs/developer-guide/data-types#utf8) - Variable-length byte sequences of UTF8 code-points (strings)
* [Binary](/docs/arrowjs/developer-guide/data-types#binary) - Variable-length byte sequences (no guarantee of UTF8-ness)

### [Composite Data Types](/docs/arrowjs/developer-guide/data-types#composite-data-types)
### Composite Data Types

Composite types don't have physical data buffers of their own. They contain other Arrow data types and delegate work to them.

Expand Down
Loading
Loading