@loaders.gl/schema 4.1.0-alpha.1 → 4.1.0-alpha.3
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/dist/dist.dev.js +35 -18
- package/dist/index.cjs +36 -18
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/lib/mesh/convert-mesh.d.ts.map +1 -1
- package/dist/lib/mesh/convert-mesh.js.map +1 -1
- package/dist/lib/mesh/deduce-mesh-schema.d.ts.map +1 -1
- package/dist/lib/mesh/deduce-mesh-schema.js.map +1 -1
- package/dist/lib/mesh/mesh-to-arrow-table.js.map +1 -1
- package/dist/lib/table/arrow-api/arrow-like-field.d.ts.map +1 -1
- package/dist/lib/table/arrow-api/arrow-like-field.js.map +1 -1
- package/dist/lib/table/arrow-api/arrow-like-schema.d.ts.map +1 -1
- package/dist/lib/table/arrow-api/arrow-like-schema.js.map +1 -1
- package/dist/lib/table/arrow-api/arrow-like-table.d.ts.map +1 -1
- package/dist/lib/table/arrow-api/arrow-like-table.js.map +1 -1
- package/dist/lib/table/arrow-api/arrow-like-type.d.ts.map +1 -1
- package/dist/lib/table/arrow-api/arrow-like-type.js.map +1 -1
- package/dist/lib/table/arrow-api/enum.d.ts.map +1 -1
- package/dist/lib/table/arrow-api/enum.js.map +1 -1
- package/dist/lib/table/arrow-api/get-type-info.d.ts.map +1 -1
- package/dist/lib/table/arrow-api/get-type-info.js.map +1 -1
- package/dist/lib/table/arrow-api/index.d.ts.map +1 -1
- package/dist/lib/table/arrow-api/index.js.map +1 -1
- package/dist/lib/table/batches/base-table-batch-aggregator.d.ts +1 -0
- package/dist/lib/table/batches/base-table-batch-aggregator.d.ts.map +1 -1
- package/dist/lib/table/batches/base-table-batch-aggregator.js +4 -1
- package/dist/lib/table/batches/base-table-batch-aggregator.js.map +1 -1
- package/dist/lib/table/batches/columnar-table-batch-aggregator.d.ts.map +1 -1
- package/dist/lib/table/batches/columnar-table-batch-aggregator.js.map +1 -1
- package/dist/lib/table/batches/row-table-batch-aggregator.d.ts +2 -2
- package/dist/lib/table/batches/row-table-batch-aggregator.d.ts.map +1 -1
- package/dist/lib/table/batches/row-table-batch-aggregator.js +5 -3
- package/dist/lib/table/batches/row-table-batch-aggregator.js.map +1 -1
- package/dist/lib/table/batches/table-batch-aggregator.d.ts.map +1 -1
- package/dist/lib/table/batches/table-batch-aggregator.js.map +1 -1
- package/dist/lib/table/batches/table-batch-builder.d.ts +3 -3
- package/dist/lib/table/batches/table-batch-builder.d.ts.map +1 -1
- package/dist/lib/table/batches/table-batch-builder.js +2 -4
- package/dist/lib/table/batches/table-batch-builder.js.map +1 -1
- package/dist/lib/table/simple-table/convert-table.d.ts.map +1 -1
- package/dist/lib/table/simple-table/convert-table.js.map +1 -1
- package/dist/lib/table/simple-table/data-type.d.ts.map +1 -1
- package/dist/lib/table/simple-table/data-type.js.map +1 -1
- package/dist/lib/table/simple-table/make-table-from-batches.d.ts.map +1 -1
- package/dist/lib/table/simple-table/make-table-from-batches.js.map +1 -1
- package/dist/lib/table/simple-table/make-table.d.ts.map +1 -1
- package/dist/lib/table/simple-table/make-table.js.map +1 -1
- package/dist/lib/table/simple-table/row-utils.d.ts +10 -4
- package/dist/lib/table/simple-table/row-utils.d.ts.map +1 -1
- package/dist/lib/table/simple-table/row-utils.js +26 -11
- package/dist/lib/table/simple-table/row-utils.js.map +1 -1
- package/dist/lib/table/simple-table/table-accessors.d.ts.map +1 -1
- package/dist/lib/table/simple-table/table-accessors.js.map +1 -1
- package/dist/lib/table/simple-table/table-column.d.ts.map +1 -1
- package/dist/lib/table/simple-table/table-column.js.map +1 -1
- package/dist/lib/table/simple-table/table-schema.d.ts.map +1 -1
- package/dist/lib/table/simple-table/table-schema.js.map +1 -1
- package/dist/types/batch.d.ts.map +1 -1
- package/dist/types/batch.js.map +1 -1
- package/dist/types/binary-geometries.d.ts.map +1 -1
- package/dist/types/binary-geometries.js.map +1 -1
- package/dist/types/category-gis.d.ts.map +1 -1
- package/dist/types/category-gis.js.map +1 -1
- package/dist/types/category-image.d.ts.map +1 -1
- package/dist/types/category-image.js.map +1 -1
- package/dist/types/category-mesh.d.ts.map +1 -1
- package/dist/types/category-mesh.js.map +1 -1
- package/dist/types/category-table.d.ts.map +1 -1
- package/dist/types/category-table.js.map +1 -1
- package/dist/types/category-texture.d.ts.map +1 -1
- package/dist/types/category-texture.js.map +1 -1
- package/dist/types/flat-geometries.d.ts.map +1 -1
- package/dist/types/flat-geometries.js.map +1 -1
- package/dist/types/schema.d.ts.map +1 -1
- package/dist/types/schema.js.map +1 -1
- package/dist/types/types.d.ts.map +1 -1
- package/dist/types/types.js.map +1 -1
- package/package.json +2 -2
- package/src/index.ts +2 -1
- package/src/lib/mesh/convert-mesh.ts +2 -1
- package/src/lib/mesh/deduce-mesh-schema.ts +2 -1
- package/src/lib/mesh/mesh-to-arrow-table.ts +2 -1
- package/src/lib/table/arrow-api/arrow-like-field.ts +2 -1
- package/src/lib/table/arrow-api/arrow-like-schema.ts +2 -1
- package/src/lib/table/arrow-api/arrow-like-table.ts +2 -1
- package/src/lib/table/arrow-api/arrow-like-type.ts +2 -1
- package/src/lib/table/arrow-api/enum.ts +2 -1
- package/src/lib/table/arrow-api/get-type-info.ts +2 -1
- package/src/lib/table/arrow-api/index.ts +2 -1
- package/src/lib/table/batches/base-table-batch-aggregator.ts +8 -2
- package/src/lib/table/batches/columnar-table-batch-aggregator.ts +2 -1
- package/src/lib/table/batches/row-table-batch-aggregator.ts +19 -7
- package/src/lib/table/batches/table-batch-aggregator.ts +2 -1
- package/src/lib/table/batches/table-batch-builder.ts +7 -8
- package/src/lib/table/simple-table/convert-table.ts +2 -1
- package/src/lib/table/simple-table/data-type.ts +2 -1
- package/src/lib/table/simple-table/make-table-from-batches.ts +2 -1
- package/src/lib/table/simple-table/make-table.ts +2 -1
- package/src/lib/table/simple-table/row-utils.ts +40 -19
- package/src/lib/table/simple-table/table-accessors.ts +2 -1
- package/src/lib/table/simple-table/table-column.ts +2 -1
- package/src/lib/table/simple-table/table-schema.ts +2 -1
- package/src/types/batch.ts +2 -1
- package/src/types/binary-geometries.ts +2 -1
- package/src/types/category-gis.ts +2 -1
- package/src/types/category-image.ts +2 -1
- package/src/types/category-mesh.ts +2 -1
- package/src/types/category-table.ts +2 -1
- package/src/types/category-texture.ts +2 -1
- package/src/types/flat-geometries.ts +2 -1
- package/src/types/schema.ts +2 -1
- package/src/types/types.ts +2 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-type.js","names":["getDataTypeFromValue","value","defaultNumberType","arguments","length","undefined","Date","Number","getDataTypeFromArray","array","type","getDataTypeFromTypedArray","nullable","constructor","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Uint16Array","Int32Array","Uint32Array","Float32Array","Float64Array","getArrayTypeFromDataType","Array"],"sources":["../../../../src/lib/table/simple-table/data-type.ts"],"sourcesContent":["// loaders.gl
|
|
1
|
+
{"version":3,"file":"data-type.js","names":["getDataTypeFromValue","value","defaultNumberType","arguments","length","undefined","Date","Number","getDataTypeFromArray","array","type","getDataTypeFromTypedArray","nullable","constructor","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Uint16Array","Int32Array","Uint32Array","Float32Array","Float64Array","getArrayTypeFromDataType","Array"],"sources":["../../../../src/lib/table/simple-table/data-type.ts"],"sourcesContent":["// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n\nimport {DataType} from '../../../types/schema';\nimport {TypedArray, TypedArrayConstructor, ArrayType} from '../../../types/types';\n\n/** Deduce column types from values */\nexport function getDataTypeFromValue(\n value: unknown,\n defaultNumberType: 'float32' = 'float32'\n): DataType {\n if (value instanceof Date) {\n return 'date-millisecond';\n }\n if (value instanceof Number) {\n return defaultNumberType;\n }\n if (typeof value === 'string') {\n return 'utf8';\n }\n if (value === null || value === 'undefined') {\n return 'null';\n }\n return 'null';\n}\n\n/**\n * Deduces a simple data type \"descriptor from a typed array instance\n */\nexport function getDataTypeFromArray(array: ArrayType): {type: DataType; nullable: boolean} {\n let type = getDataTypeFromTypedArray(array as TypedArray);\n if (type !== 'null') {\n return {type, nullable: false};\n }\n if (array.length > 0) {\n type = getDataTypeFromValue(array[0]);\n return {type, nullable: true};\n }\n\n return {type: 'null', nullable: true};\n}\n\n/**\n * Deduces a simple data type \"descriptor from a typed array instance\n */\nexport function getDataTypeFromTypedArray(array: TypedArray): DataType {\n switch (array.constructor) {\n case Int8Array:\n return 'int8';\n case Uint8Array:\n case Uint8ClampedArray:\n return 'uint8';\n case Int16Array:\n return 'int16';\n case Uint16Array:\n return 'uint16';\n case Int32Array:\n return 'int32';\n case Uint32Array:\n return 'uint32';\n case Float32Array:\n return 'float32';\n case Float64Array:\n return 'float64';\n default:\n return 'null';\n }\n}\n\nexport function getArrayTypeFromDataType(\n type: DataType,\n nullable: boolean | undefined\n): TypedArrayConstructor | ArrayConstructor {\n if (!nullable) {\n switch (type) {\n case 'int8':\n return Int8Array;\n case 'uint8':\n return Uint8Array;\n case 'int16':\n return Int16Array;\n case 'uint16':\n return Uint16Array;\n case 'int32':\n return Int32Array;\n case 'uint32':\n return Uint32Array;\n case 'float32':\n return Float32Array;\n case 'float64':\n return Float64Array;\n default:\n break;\n }\n }\n\n // if (typeof BigInt64Array !== 'undefined') {\n // TYPED_ARRAY_TO_TYPE.BigInt64Array = new Int64();\n // TYPED_ARRAY_TO_TYPE.BigUint64Array = new Uint64();\n // }\n\n return Array;\n}\n"],"mappings":"AAQA,OAAO,SAASA,oBAAoBA,CAClCC,KAAc,EAEJ;EAAA,IADVC,iBAA4B,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,SAAS;EAExC,IAAIF,KAAK,YAAYK,IAAI,EAAE;IACzB,OAAO,kBAAkB;EAC3B;EACA,IAAIL,KAAK,YAAYM,MAAM,EAAE;IAC3B,OAAOL,iBAAiB;EAC1B;EACA,IAAI,OAAOD,KAAK,KAAK,QAAQ,EAAE;IAC7B,OAAO,MAAM;EACf;EACA,IAAIA,KAAK,KAAK,IAAI,IAAIA,KAAK,KAAK,WAAW,EAAE;IAC3C,OAAO,MAAM;EACf;EACA,OAAO,MAAM;AACf;AAKA,OAAO,SAASO,oBAAoBA,CAACC,KAAgB,EAAuC;EAC1F,IAAIC,IAAI,GAAGC,yBAAyB,CAACF,KAAmB,CAAC;EACzD,IAAIC,IAAI,KAAK,MAAM,EAAE;IACnB,OAAO;MAACA,IAAI;MAAEE,QAAQ,EAAE;IAAK,CAAC;EAChC;EACA,IAAIH,KAAK,CAACL,MAAM,GAAG,CAAC,EAAE;IACpBM,IAAI,GAAGV,oBAAoB,CAACS,KAAK,CAAC,CAAC,CAAC,CAAC;IACrC,OAAO;MAACC,IAAI;MAAEE,QAAQ,EAAE;IAAI,CAAC;EAC/B;EAEA,OAAO;IAACF,IAAI,EAAE,MAAM;IAAEE,QAAQ,EAAE;EAAI,CAAC;AACvC;AAKA,OAAO,SAASD,yBAAyBA,CAACF,KAAiB,EAAY;EACrE,QAAQA,KAAK,CAACI,WAAW;IACvB,KAAKC,SAAS;MACZ,OAAO,MAAM;IACf,KAAKC,UAAU;IACf,KAAKC,iBAAiB;MACpB,OAAO,OAAO;IAChB,KAAKC,UAAU;MACb,OAAO,OAAO;IAChB,KAAKC,WAAW;MACd,OAAO,QAAQ;IACjB,KAAKC,UAAU;MACb,OAAO,OAAO;IAChB,KAAKC,WAAW;MACd,OAAO,QAAQ;IACjB,KAAKC,YAAY;MACf,OAAO,SAAS;IAClB,KAAKC,YAAY;MACf,OAAO,SAAS;IAClB;MACE,OAAO,MAAM;EACjB;AACF;AAEA,OAAO,SAASC,wBAAwBA,CACtCb,IAAc,EACdE,QAA6B,EACa;EAC1C,IAAI,CAACA,QAAQ,EAAE;IACb,QAAQF,IAAI;MACV,KAAK,MAAM;QACT,OAAOI,SAAS;MAClB,KAAK,OAAO;QACV,OAAOC,UAAU;MACnB,KAAK,OAAO;QACV,OAAOE,UAAU;MACnB,KAAK,QAAQ;QACX,OAAOC,WAAW;MACpB,KAAK,OAAO;QACV,OAAOC,UAAU;MACnB,KAAK,QAAQ;QACX,OAAOC,WAAW;MACpB,KAAK,SAAS;QACZ,OAAOC,YAAY;MACrB,KAAK,SAAS;QACZ,OAAOC,YAAY;MACrB;QACE;IACJ;EACF;EAOA,OAAOE,KAAK;AACd"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"make-table-from-batches.d.ts","sourceRoot":"","sources":["../../../../src/lib/table/simple-table/make-table-from-batches.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"make-table-from-batches.d.ts","sourceRoot":"","sources":["../../../../src/lib/table/simple-table/make-table-from-batches.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,UAAU,EACV,KAAK,EAKN,MAAM,oBAAoB,CAAC;AAG5B;;;;;GAKG;AACH,wBAAiB,oBAAoB,CAAC,KAAK,EAAE,KAAK,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAEhF;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,KAAK,GAAG,UAAU,CAE3D;AAED;;;;;GAKG;AAEH,wBAAsB,oBAAoB,CACxC,aAAa,EAAE,aAAa,CAAC,UAAU,CAAC,GAAG,QAAQ,CAAC,UAAU,CAAC,GAC9D,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CA4DvB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"make-table-from-batches.js","names":["getTableLength","makeBatchesFromTable","table","makeBatchFromTable","length","batchType","makeTableFromBatches","batchIterator","arrayRows","objectRows","features","shape","schema","batch","rowIndex","row","data","push","Error","type"],"sources":["../../../../src/lib/table/simple-table/make-table-from-batches.ts"],"sourcesContent":["// loaders.gl
|
|
1
|
+
{"version":3,"file":"make-table-from-batches.js","names":["getTableLength","makeBatchesFromTable","table","makeBatchFromTable","length","batchType","makeTableFromBatches","batchIterator","arrayRows","objectRows","features","shape","schema","batch","rowIndex","row","data","push","Error","type"],"sources":["../../../../src/lib/table/simple-table/make-table-from-batches.ts"],"sourcesContent":["// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n\nimport type {\n TableBatch,\n Table,\n Schema,\n ObjectRowTable,\n ArrayRowTable,\n Feature\n} from '@loaders.gl/schema';\nimport {getTableLength} from '@loaders.gl/schema';\n\n/**\n * Returns an iterator that yields a single table as a sequence of batches.\n * @note Currently only a single batch is yielded.\n * @note All batches will have the same shape and schema as the original table.\n * @returns\n */\nexport function* makeBatchesFromTable(table: Table): IterableIterator<TableBatch> {\n yield makeBatchFromTable(table);\n}\n\n/**\n * Returns a table packaged as a single table batch\n * @note The batch will have the same shape and schema as the original table.\n * @returns `null` if no batches are yielded by the async iterator\n */\nexport function makeBatchFromTable(table: Table): TableBatch {\n return {...table, length: getTableLength(table), batchType: 'data'};\n}\n\n/**\n * Assembles all batches from an async iterator into a single table.\n * @note All batches must have the same shape and schema\n * @param batchIterator\n * @returns `null` if no batches are yielded by the async iterator\n */\n// eslint-disable-next-line complexity\nexport async function makeTableFromBatches(\n batchIterator: AsyncIterable<TableBatch> | Iterable<TableBatch>\n): Promise<Table | null> {\n let arrayRows: ArrayRowTable['data'];\n let objectRows: ObjectRowTable['data'];\n let features: Feature[];\n let shape: Table['shape'] | null = null;\n let schema: Schema | undefined;\n\n for await (const batch of batchIterator) {\n shape = shape || batch.shape;\n schema = schema || batch.schema;\n\n switch (batch.shape) {\n case 'array-row-table':\n arrayRows = arrayRows! || [];\n for (let rowIndex = 0; rowIndex < getTableLength(batch); rowIndex++) {\n const row = batch.data[rowIndex];\n arrayRows.push(row);\n }\n break;\n\n case 'object-row-table':\n objectRows = objectRows! || [];\n for (let rowIndex = 0; rowIndex < getTableLength(batch); rowIndex++) {\n const row = batch.data[rowIndex];\n objectRows.push(row);\n }\n break;\n\n case 'geojson-table':\n features = features! || [];\n for (let rowIndex = 0; rowIndex < getTableLength(batch); rowIndex++) {\n const row = batch.features[rowIndex];\n features.push(row);\n }\n break;\n\n case 'columnar-table':\n case 'arrow-table':\n default:\n throw new Error('shape');\n }\n }\n\n if (!shape) {\n return null;\n }\n\n switch (shape) {\n case 'array-row-table':\n return {shape: 'array-row-table', data: arrayRows!, schema};\n\n case 'object-row-table':\n return {shape: 'object-row-table', data: objectRows!, schema};\n\n case 'geojson-table':\n return {shape: 'geojson-table', type: 'FeatureCollection', features: features!, schema};\n\n default:\n return null;\n }\n}\n"],"mappings":"AAYA,SAAQA,cAAc,QAAO,oBAAoB;AAQjD,OAAO,UAAUC,oBAAoBA,CAACC,KAAY,EAAgC;EAChF,MAAMC,kBAAkB,CAACD,KAAK,CAAC;AACjC;AAOA,OAAO,SAASC,kBAAkBA,CAACD,KAAY,EAAc;EAC3D,OAAO;IAAC,GAAGA,KAAK;IAAEE,MAAM,EAAEJ,cAAc,CAACE,KAAK,CAAC;IAAEG,SAAS,EAAE;EAAM,CAAC;AACrE;AASA,OAAO,eAAeC,oBAAoBA,CACxCC,aAA+D,EACxC;EACvB,IAAIC,SAAgC;EACpC,IAAIC,UAAkC;EACtC,IAAIC,QAAmB;EACvB,IAAIC,KAA4B,GAAG,IAAI;EACvC,IAAIC,MAA0B;EAE9B,WAAW,MAAMC,KAAK,IAAIN,aAAa,EAAE;IACvCI,KAAK,GAAGA,KAAK,IAAIE,KAAK,CAACF,KAAK;IAC5BC,MAAM,GAAGA,MAAM,IAAIC,KAAK,CAACD,MAAM;IAE/B,QAAQC,KAAK,CAACF,KAAK;MACjB,KAAK,iBAAiB;QACpBH,SAAS,GAAGA,SAAS,IAAK,EAAE;QAC5B,KAAK,IAAIM,QAAQ,GAAG,CAAC,EAAEA,QAAQ,GAAGd,cAAc,CAACa,KAAK,CAAC,EAAEC,QAAQ,EAAE,EAAE;UACnE,MAAMC,GAAG,GAAGF,KAAK,CAACG,IAAI,CAACF,QAAQ,CAAC;UAChCN,SAAS,CAACS,IAAI,CAACF,GAAG,CAAC;QACrB;QACA;MAEF,KAAK,kBAAkB;QACrBN,UAAU,GAAGA,UAAU,IAAK,EAAE;QAC9B,KAAK,IAAIK,QAAQ,GAAG,CAAC,EAAEA,QAAQ,GAAGd,cAAc,CAACa,KAAK,CAAC,EAAEC,QAAQ,EAAE,EAAE;UACnE,MAAMC,GAAG,GAAGF,KAAK,CAACG,IAAI,CAACF,QAAQ,CAAC;UAChCL,UAAU,CAACQ,IAAI,CAACF,GAAG,CAAC;QACtB;QACA;MAEF,KAAK,eAAe;QAClBL,QAAQ,GAAGA,QAAQ,IAAK,EAAE;QAC1B,KAAK,IAAII,QAAQ,GAAG,CAAC,EAAEA,QAAQ,GAAGd,cAAc,CAACa,KAAK,CAAC,EAAEC,QAAQ,EAAE,EAAE;UACnE,MAAMC,GAAG,GAAGF,KAAK,CAACH,QAAQ,CAACI,QAAQ,CAAC;UACpCJ,QAAQ,CAACO,IAAI,CAACF,GAAG,CAAC;QACpB;QACA;MAEF,KAAK,gBAAgB;MACrB,KAAK,aAAa;MAClB;QACE,MAAM,IAAIG,KAAK,CAAC,OAAO,CAAC;IAC5B;EACF;EAEA,IAAI,CAACP,KAAK,EAAE;IACV,OAAO,IAAI;EACb;EAEA,QAAQA,KAAK;IACX,KAAK,iBAAiB;MACpB,OAAO;QAACA,KAAK,EAAE,iBAAiB;QAAEK,IAAI,EAAER,SAAU;QAAEI;MAAM,CAAC;IAE7D,KAAK,kBAAkB;MACrB,OAAO;QAACD,KAAK,EAAE,kBAAkB;QAAEK,IAAI,EAAEP,UAAW;QAAEG;MAAM,CAAC;IAE/D,KAAK,eAAe;MAClB,OAAO;QAACD,KAAK,EAAE,eAAe;QAAEQ,IAAI,EAAE,mBAAmB;QAAET,QAAQ,EAAEA,QAAS;QAAEE;MAAM,CAAC;IAEzF;MACE,OAAO,IAAI;EACf;AACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"make-table.d.ts","sourceRoot":"","sources":["../../../../src/lib/table/simple-table/make-table.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"make-table.d.ts","sourceRoot":"","sources":["../../../../src/lib/table/simple-table/make-table.ts"],"names":[],"mappings":"AAIA,OAAO,EAAQ,aAAa,EAAE,cAAc,EAAE,aAAa,EAAC,MAAM,+BAA+B,CAAC;AAGlG;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,GAAG,aAAa,CAAC;AACpE,wBAAgB,iBAAiB,CAAC,IAAI,EAAE;IAAC,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAA;CAAC,EAAE,GAAG,cAAc,CAAC;AACvF,wBAAgB,iBAAiB,CAAC,IAAI,EAAE;IAAC,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,CAAA;CAAC,GAAG,aAAa,CAAC;AA8C/F;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmDE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"make-table.js","names":["deduceTableSchema","makeTableFromData","data","table","getTableShapeFromData","shape","Error","schema","Array","isArray","length","firstRow"],"sources":["../../../../src/lib/table/simple-table/make-table.ts"],"sourcesContent":["// loaders.gl
|
|
1
|
+
{"version":3,"file":"make-table.js","names":["deduceTableSchema","makeTableFromData","data","table","getTableShapeFromData","shape","Error","schema","Array","isArray","length","firstRow"],"sources":["../../../../src/lib/table/simple-table/make-table.ts"],"sourcesContent":["// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n\nimport {Table, ArrayRowTable, ObjectRowTable, ColumnarTable} from '../../../types/category-table';\nimport {deduceTableSchema} from './table-schema';\n\n/**\n * Makes a typed table from data.\n * @throws Row tables must contain at least one row. Columnar tables must contain empty arrays\n */\nexport function makeTableFromData(data: unknown[][]): ArrayRowTable;\nexport function makeTableFromData(data: {[column: string]: unknown}[]): ObjectRowTable;\nexport function makeTableFromData(data: {[column: string]: ArrayLike<unknown>}): ColumnarTable;\nexport function makeTableFromData(data: unknown): Table {\n let table: Table;\n switch (getTableShapeFromData(data)) {\n case 'array-row-table':\n table = {shape: 'array-row-table', data: data as unknown[][]};\n break;\n case 'object-row-table':\n table = {shape: 'object-row-table', data: data as {[key: string]: unknown}[]};\n break;\n case 'columnar-table':\n table = {shape: 'columnar-table', data: data as {[column: string]: ArrayLike<unknown>}};\n break;\n default:\n throw new Error('table');\n }\n const schema = deduceTableSchema(table);\n return {...table, schema};\n}\n\n/** Helper function to get shape of data */\nfunction getTableShapeFromData(data) {\n if (Array.isArray(data)) {\n if (data.length === 0) {\n throw new Error('cannot deduce type of empty table');\n }\n\n // Deduce the table shape from the first row\n const firstRow = data[0];\n\n if (Array.isArray(firstRow)) {\n return 'array-row-table';\n }\n\n if (firstRow && typeof firstRow === 'object') {\n return 'object-row-table';\n }\n }\n\n if (data && typeof data === 'object') {\n return 'columnar-table';\n }\n\n throw new Error('invalid table');\n}\n\n/** Convert any table into object row format *\nexport function makeColumnarTable(table: Table): ColumnarTable {\n if (table.shape === 'columnar-table') {\n return table;\n }\n const length = getTableLength(table);\n const data = new Array<{[key: string]: unknown}>(length);\n for (let rowIndex = 0; rowIndex < length; rowIndex++) {\n data[rowIndex] = getTableRowAsObject(table, rowIndex);\n }\n return {\n shape: 'columnar-table',\n schema: table.schema,\n data\n };\n}\n\n\n/** Convert any table into array row format *\nexport function makeArrayRowTable(table: TableLike): ArrayRowTable {\n if (table.shape === 'array-row-table') {\n return table;\n }\n const length = getTableLength(table);\n const data = new Array<unknown[]>(length);\n for (let rowIndex = 0; rowIndex < length; rowIndex++) {\n data[rowIndex] = getTableRowAsArray(table, rowIndex);\n }\n return {\n shape: 'array-row-table',\n schema: table.schema,\n data\n };\n}\n\n/** Convert any table into object row format *\nexport function makeObjectRowTable(table: Table): ObjectRowTable {\n if (table.shape === 'object-row-table') {\n return table;\n }\n const length = getTableLength(table);\n const data = new Array<{[key: string]: unknown}>(length);\n for (let rowIndex = 0; rowIndex < length; rowIndex++) {\n data[rowIndex] = getTableRowAsObject(table, rowIndex);\n }\n return {\n shape: 'object-row-table',\n schema: table.schema,\n data\n };\n}\n*/\n"],"mappings":"SAKQA,iBAAiB;AASzB,OAAO,SAASC,iBAAiBA,CAACC,IAAa,EAAS;EACtD,IAAIC,KAAY;EAChB,QAAQC,qBAAqB,CAACF,IAAI,CAAC;IACjC,KAAK,iBAAiB;MACpBC,KAAK,GAAG;QAACE,KAAK,EAAE,iBAAiB;QAAEH,IAAI,EAAEA;MAAmB,CAAC;MAC7D;IACF,KAAK,kBAAkB;MACrBC,KAAK,GAAG;QAACE,KAAK,EAAE,kBAAkB;QAAEH,IAAI,EAAEA;MAAkC,CAAC;MAC7E;IACF,KAAK,gBAAgB;MACnBC,KAAK,GAAG;QAACE,KAAK,EAAE,gBAAgB;QAAEH,IAAI,EAAEA;MAA8C,CAAC;MACvF;IACF;MACE,MAAM,IAAII,KAAK,CAAC,OAAO,CAAC;EAC5B;EACA,MAAMC,MAAM,GAAGP,iBAAiB,CAACG,KAAK,CAAC;EACvC,OAAO;IAAC,GAAGA,KAAK;IAAEI;EAAM,CAAC;AAC3B;AAGA,SAASH,qBAAqBA,CAACF,IAAI,EAAE;EACnC,IAAIM,KAAK,CAACC,OAAO,CAACP,IAAI,CAAC,EAAE;IACvB,IAAIA,IAAI,CAACQ,MAAM,KAAK,CAAC,EAAE;MACrB,MAAM,IAAIJ,KAAK,CAAC,mCAAmC,CAAC;IACtD;IAGA,MAAMK,QAAQ,GAAGT,IAAI,CAAC,CAAC,CAAC;IAExB,IAAIM,KAAK,CAACC,OAAO,CAACE,QAAQ,CAAC,EAAE;MAC3B,OAAO,iBAAiB;IAC1B;IAEA,IAAIA,QAAQ,IAAI,OAAOA,QAAQ,KAAK,QAAQ,EAAE;MAC5C,OAAO,kBAAkB;IAC3B;EACF;EAEA,IAAIT,IAAI,IAAI,OAAOA,IAAI,KAAK,QAAQ,EAAE;IACpC,OAAO,gBAAgB;EACzB;EAEA,MAAM,IAAII,KAAK,CAAC,eAAe,CAAC;AAClC"}
|
|
@@ -1,9 +1,15 @@
|
|
|
1
1
|
/** Convert an object row to an array row */
|
|
2
|
-
export declare function convertToObjectRow(arrayRow:
|
|
3
|
-
[columnName: string]:
|
|
2
|
+
export declare function convertToObjectRow(arrayRow: unknown[], headers: string[] | null): {
|
|
3
|
+
[columnName: string]: unknown;
|
|
4
4
|
};
|
|
5
5
|
/** Convert an object row to an array row */
|
|
6
6
|
export declare function convertToArrayRow(objectRow: {
|
|
7
|
-
[columnName: string]:
|
|
8
|
-
}, headers: string[]):
|
|
7
|
+
[columnName: string]: unknown;
|
|
8
|
+
}, headers: string[] | null): unknown[];
|
|
9
|
+
/** Get headers from a sample array row */
|
|
10
|
+
export declare function inferHeadersFromArrayRow(arrayRow: unknown[]): string[];
|
|
11
|
+
/** Get headers from a smaple object row */
|
|
12
|
+
export declare function inferHeadersFromObjectRow(row: {
|
|
13
|
+
[columnName: string]: unknown;
|
|
14
|
+
}): string[];
|
|
9
15
|
//# sourceMappingURL=row-utils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"row-utils.d.ts","sourceRoot":"","sources":["../../../../src/lib/table/simple-table/row-utils.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"row-utils.d.ts","sourceRoot":"","sources":["../../../../src/lib/table/simple-table/row-utils.ts"],"names":[],"mappings":"AAIA,4CAA4C;AAC5C,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,OAAO,EAAE,EACnB,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,GACvB;IAAC,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAA;CAAC,CAgBjC;AAED,4CAA4C;AAC5C,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE;IAAC,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAA;CAAC,EAC1C,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,GACvB,OAAO,EAAE,CAaX;AAED,0CAA0C;AAC1C,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,OAAO,EAAE,YAO3D;AAED,2CAA2C;AAC3C,wBAAgB,yBAAyB,CAAC,GAAG,EAAE;IAAC,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAA;CAAC,YAE7E"}
|
|
@@ -2,12 +2,16 @@ export function convertToObjectRow(arrayRow, headers) {
|
|
|
2
2
|
if (!arrayRow) {
|
|
3
3
|
throw new Error('null row');
|
|
4
4
|
}
|
|
5
|
-
if (!headers) {
|
|
6
|
-
throw new Error('no headers');
|
|
7
|
-
}
|
|
8
5
|
const objectRow = {};
|
|
9
|
-
|
|
10
|
-
|
|
6
|
+
if (headers) {
|
|
7
|
+
for (let i = 0; i < headers.length; i++) {
|
|
8
|
+
objectRow[headers[i]] = arrayRow[i];
|
|
9
|
+
}
|
|
10
|
+
} else {
|
|
11
|
+
for (let i = 0; i < arrayRow.length; i++) {
|
|
12
|
+
const columnName = `column-${i}`;
|
|
13
|
+
objectRow[columnName] = arrayRow[i];
|
|
14
|
+
}
|
|
11
15
|
}
|
|
12
16
|
return objectRow;
|
|
13
17
|
}
|
|
@@ -15,13 +19,24 @@ export function convertToArrayRow(objectRow, headers) {
|
|
|
15
19
|
if (!objectRow) {
|
|
16
20
|
throw new Error('null row');
|
|
17
21
|
}
|
|
18
|
-
if (
|
|
19
|
-
|
|
22
|
+
if (headers) {
|
|
23
|
+
const arrayRow = new Array(headers.length);
|
|
24
|
+
for (let i = 0; i < headers.length; i++) {
|
|
25
|
+
arrayRow[i] = objectRow[headers[i]];
|
|
26
|
+
}
|
|
27
|
+
return arrayRow;
|
|
20
28
|
}
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
29
|
+
return Object.values(objectRow);
|
|
30
|
+
}
|
|
31
|
+
export function inferHeadersFromArrayRow(arrayRow) {
|
|
32
|
+
const headers = [];
|
|
33
|
+
for (let i = 0; i < arrayRow.length; i++) {
|
|
34
|
+
const columnName = `column-${i}`;
|
|
35
|
+
headers.push(columnName);
|
|
24
36
|
}
|
|
25
|
-
return
|
|
37
|
+
return headers;
|
|
38
|
+
}
|
|
39
|
+
export function inferHeadersFromObjectRow(row) {
|
|
40
|
+
return Object.keys(row);
|
|
26
41
|
}
|
|
27
42
|
//# sourceMappingURL=row-utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"row-utils.js","names":["convertToObjectRow","arrayRow","headers","Error","objectRow","i","length","convertToArrayRow","Array"],"sources":["../../../../src/lib/table/simple-table/row-utils.ts"],"sourcesContent":["// loaders.gl
|
|
1
|
+
{"version":3,"file":"row-utils.js","names":["convertToObjectRow","arrayRow","headers","Error","objectRow","i","length","columnName","convertToArrayRow","Array","Object","values","inferHeadersFromArrayRow","push","inferHeadersFromObjectRow","row","keys"],"sources":["../../../../src/lib/table/simple-table/row-utils.ts"],"sourcesContent":["// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n\n/** Convert an object row to an array row */\nexport function convertToObjectRow(\n arrayRow: unknown[],\n headers: string[] | null\n): {[columnName: string]: unknown} {\n if (!arrayRow) {\n throw new Error('null row');\n }\n const objectRow: {[columnName: string]: unknown} = {};\n if (headers) {\n for (let i = 0; i < headers.length; i++) {\n objectRow[headers[i]] = arrayRow[i];\n }\n } else {\n for (let i = 0; i < arrayRow.length; i++) {\n const columnName = `column-${i}`;\n objectRow[columnName] = arrayRow[i];\n }\n }\n return objectRow;\n}\n\n/** Convert an object row to an array row */\nexport function convertToArrayRow(\n objectRow: {[columnName: string]: unknown},\n headers: string[] | null\n): unknown[] {\n if (!objectRow) {\n throw new Error('null row');\n }\n\n if (headers) {\n const arrayRow = new Array(headers.length);\n for (let i = 0; i < headers.length; i++) {\n arrayRow[i] = objectRow[headers[i]];\n }\n return arrayRow;\n }\n return Object.values(objectRow);\n}\n\n/** Get headers from a sample array row */\nexport function inferHeadersFromArrayRow(arrayRow: unknown[]) {\n const headers: string[] = [];\n for (let i = 0; i < arrayRow.length; i++) {\n const columnName = `column-${i}`;\n headers.push(columnName);\n }\n return headers;\n}\n\n/** Get headers from a smaple object row */\nexport function inferHeadersFromObjectRow(row: {[columnName: string]: unknown}) {\n return Object.keys(row);\n}\n"],"mappings":"AAKA,OAAO,SAASA,kBAAkBA,CAChCC,QAAmB,EACnBC,OAAwB,EACS;EACjC,IAAI,CAACD,QAAQ,EAAE;IACb,MAAM,IAAIE,KAAK,CAAC,UAAU,CAAC;EAC7B;EACA,MAAMC,SAA0C,GAAG,CAAC,CAAC;EACrD,IAAIF,OAAO,EAAE;IACX,KAAK,IAAIG,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGH,OAAO,CAACI,MAAM,EAAED,CAAC,EAAE,EAAE;MACvCD,SAAS,CAACF,OAAO,CAACG,CAAC,CAAC,CAAC,GAAGJ,QAAQ,CAACI,CAAC,CAAC;IACrC;EACF,CAAC,MAAM;IACL,KAAK,IAAIA,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGJ,QAAQ,CAACK,MAAM,EAAED,CAAC,EAAE,EAAE;MACxC,MAAME,UAAU,GAAI,UAASF,CAAE,EAAC;MAChCD,SAAS,CAACG,UAAU,CAAC,GAAGN,QAAQ,CAACI,CAAC,CAAC;IACrC;EACF;EACA,OAAOD,SAAS;AAClB;AAGA,OAAO,SAASI,iBAAiBA,CAC/BJ,SAA0C,EAC1CF,OAAwB,EACb;EACX,IAAI,CAACE,SAAS,EAAE;IACd,MAAM,IAAID,KAAK,CAAC,UAAU,CAAC;EAC7B;EAEA,IAAID,OAAO,EAAE;IACX,MAAMD,QAAQ,GAAG,IAAIQ,KAAK,CAACP,OAAO,CAACI,MAAM,CAAC;IAC1C,KAAK,IAAID,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGH,OAAO,CAACI,MAAM,EAAED,CAAC,EAAE,EAAE;MACvCJ,QAAQ,CAACI,CAAC,CAAC,GAAGD,SAAS,CAACF,OAAO,CAACG,CAAC,CAAC,CAAC;IACrC;IACA,OAAOJ,QAAQ;EACjB;EACA,OAAOS,MAAM,CAACC,MAAM,CAACP,SAAS,CAAC;AACjC;AAGA,OAAO,SAASQ,wBAAwBA,CAACX,QAAmB,EAAE;EAC5D,MAAMC,OAAiB,GAAG,EAAE;EAC5B,KAAK,IAAIG,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGJ,QAAQ,CAACK,MAAM,EAAED,CAAC,EAAE,EAAE;IACxC,MAAME,UAAU,GAAI,UAASF,CAAE,EAAC;IAChCH,OAAO,CAACW,IAAI,CAACN,UAAU,CAAC;EAC1B;EACA,OAAOL,OAAO;AAChB;AAGA,OAAO,SAASY,yBAAyBA,CAACC,GAAoC,EAAE;EAC9E,OAAOL,MAAM,CAACM,IAAI,CAACD,GAAG,CAAC;AACzB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table-accessors.d.ts","sourceRoot":"","sources":["../../../../src/lib/table/simple-table/table-accessors.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"table-accessors.d.ts","sourceRoot":"","sources":["../../../../src/lib/table/simple-table/table-accessors.ts"],"names":[],"mappings":"AAMA,OAAO,EAAC,KAAK,EAAE,aAAa,EAAE,cAAc,EAAC,MAAM,+BAA+B,CAAC;AAEnF,wBAAgB,OAAO,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,IAAI,KAAK,CAmBlD;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,CAqBnD;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,CAsBpD;AAED,0DAA0D;AAC1D,wBAAgB,YAAY,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CA0BxF;AAED,0DAA0D;AAC1D,wBAAgB,cAAc,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAyB3F;AAED,iCAAiC;AACjC,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,KAAK,GAAG,iBAAiB,GAAG,kBAAkB,CAcrF;AAED,iFAAiF;AACjF,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAM5E;AAED,mFAAmF;AACnF,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAM5E;AAED;;;;GAIG;AAEH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,MAAM,EAChB,MAAM,CAAC,EAAE;IAAC,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAA;CAAC,EACxC,IAAI,CAAC,EAAE,MAAM,GACZ;IAAC,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAA;CAAC,CAwDjC;AAED;;;;GAIG;AAEH,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,MAAM,EAChB,MAAM,CAAC,EAAE,OAAO,EAAE,EAClB,IAAI,CAAC,EAAE,MAAM,GACZ,OAAO,EAAE,CA2DX;AAED,8CAA8C;AAC9C,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,KAAK,GAAG,aAAa,CAc7D;AAED,+CAA+C;AAC/C,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,KAAK,GAAG,cAAc,CAc/D;AAED,+CAA+C;AAC/C,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,KAAK,GAAG,cAAc,CAc9D;AAID;;;;GAIG;AACH,wBAAiB,eAAe,CAC9B,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,kBAAkB,GAAG,iBAAiB,GAC5C,QAAQ,CAAC,OAAO,EAAE,GAAG;IAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAC,CAAC,CAYhD;AAED;;;;GAIG;AACH,wBAAiB,oBAAoB,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,GAAE,OAAO,EAAO,GAAG,QAAQ,CAAC,OAAO,EAAE,CAAC,CAK/F;AAED;;;;GAIG;AACH,wBAAiB,qBAAqB,CACpC,KAAK,EAAE,KAAK,EACZ,MAAM,GAAE;IAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAM,GACpC,QAAQ,CAAC;IAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAC,CAAC,CAKpC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table-accessors.js","names":["isTable","table","_table$data","shape","Array","isArray","data","features","Boolean","numRows","undefined","getTableLength","length","arrowTable","column","Object","values","Error","getTableNumCols","schema","fields","keys","numCols","getTableCell","rowIndex","columnName","_arrowTable$getChildA","columnIndex","getTableColumnIndex","arrowColumnIndex","findIndex","field","name","getChildAt","get","getTableCellAt","_arrowTable$getChildA2","columnName1","getTableColumnName","columnName2","columnName3","getTableRowShape","_table$schema","_table$schema2","_table$schema2$fields","getTableRowAsObject","target","copy","fromEntries","entries","objectRow","i","row","getTableRowAsArray","from","arrayRow","makeArrayRowTable","makeObjectRowTable","makeColumnarTable","makeRowIterator","makeArrayRowIterator","makeObjectRowIterator","arguments"],"sources":["../../../../src/lib/table/simple-table/table-accessors.ts"],"sourcesContent":["// loaders.gl, MIT license\n// Copyright (c) vis.gl contributors\n\n/* eslint-disable no-else-return */\n\nimport {Table, ArrayRowTable, ObjectRowTable} from '../../../types/category-table';\n\nexport function isTable(table: any): table is Table {\n const shape = typeof table === 'object' && table?.shape;\n switch (shape) {\n case 'array-row-table':\n case 'object-row-table':\n return Array.isArray(table.data);\n\n case 'geojson-table':\n return Array.isArray(table.features);\n\n case 'columnar-table':\n return table.data && typeof table.data === 'object';\n\n case 'arrow-table':\n return Boolean(table?.data?.numRows !== undefined);\n\n default:\n return false;\n }\n}\n\n/**\n * Returns the length of the table (i.e. the number of rows)\n */\nexport function getTableLength(table: Table): number {\n switch (table.shape) {\n case 'array-row-table':\n case 'object-row-table':\n return table.data.length;\n\n case 'geojson-table':\n return table.features.length;\n\n case 'arrow-table':\n const arrowTable = table.data as any;\n return arrowTable.numRows;\n\n case 'columnar-table':\n for (const column of Object.values(table.data)) {\n return column.length || 0;\n }\n return 0;\n default:\n throw new Error('table');\n }\n}\n\n/**\n * Returns the number of columns in the table\n * @throws Fails to deduce number of columns if the table has no schema and is empty\n */\nexport function getTableNumCols(table: Table): number {\n if (table.schema) {\n return table.schema.fields.length;\n }\n if (getTableLength(table) === 0) {\n throw new Error('empty table');\n }\n switch (table.shape) {\n case 'array-row-table':\n return table.data[0].length;\n case 'object-row-table':\n return Object.keys(table.data[0]).length;\n case 'geojson-table':\n return Object.keys(table.features[0]).length;\n case 'columnar-table':\n return Object.keys(table.data).length;\n case 'arrow-table':\n const arrowTable = table.data as any;\n return arrowTable.numCols;\n default:\n throw new Error('table');\n }\n}\n\n/** Get a table cell value at row index and column name */\nexport function getTableCell(table: Table, rowIndex: number, columnName: string): unknown {\n switch (table.shape) {\n case 'array-row-table':\n const columnIndex = getTableColumnIndex(table, columnName);\n return table.data[rowIndex][columnIndex];\n\n case 'object-row-table':\n return table.data[rowIndex][columnName];\n\n case 'geojson-table':\n return table.features[rowIndex][columnName];\n\n case 'columnar-table':\n const column = table.data[columnName];\n return column[rowIndex];\n\n case 'arrow-table':\n const arrowTable = table.data as any;\n const arrowColumnIndex = arrowTable.schema.fields.findIndex(\n (field) => field.name === columnName\n );\n return arrowTable.getChildAt(arrowColumnIndex)?.get(rowIndex);\n\n default:\n throw new Error('todo');\n }\n}\n\n/** Get a table cell value at row index and column name */\nexport function getTableCellAt(table: Table, rowIndex: number, columnIndex: number): unknown {\n switch (table.shape) {\n case 'array-row-table':\n return table.data[rowIndex][columnIndex];\n\n case 'object-row-table':\n const columnName1 = getTableColumnName(table, columnIndex);\n return table.data[rowIndex][columnName1];\n\n case 'geojson-table':\n const columnName2 = getTableColumnName(table, columnIndex);\n return table.features[rowIndex][columnName2];\n\n case 'columnar-table':\n const columnName3 = getTableColumnName(table, columnIndex);\n const column = table.data[columnName3];\n return column[rowIndex];\n\n case 'arrow-table':\n const arrowTable = table.data as any;\n return arrowTable.getChildAt(columnIndex)?.get(rowIndex);\n\n default:\n throw new Error('todo');\n }\n}\n\n/** Deduce the table row shape */\nexport function getTableRowShape(table: Table): 'array-row-table' | 'object-row-table' {\n switch (table.shape) {\n case 'array-row-table':\n case 'object-row-table':\n return table.shape;\n\n case 'geojson-table':\n // TODO - this is not correct, geojson-table is not a row table\n return 'object-row-table';\n\n case 'columnar-table':\n default:\n throw new Error('Not a row table');\n }\n}\n\n/** Get the index of a named table column. Requires the table to have a schema */\nexport function getTableColumnIndex(table: Table, columnName: string): number {\n const columnIndex = table.schema?.fields.findIndex((field) => field.name === columnName);\n if (columnIndex === undefined) {\n throw new Error(columnName);\n }\n return columnIndex;\n}\n\n/** Get the name of a table column by index. Requires the table to have a schema */\nexport function getTableColumnName(table: Table, columnIndex: number): string {\n const columnName = table.schema?.fields[columnIndex]?.name;\n if (!columnName) {\n throw new Error(`${columnIndex}`);\n }\n return columnName;\n}\n\n/**\n * Returns one row of the table in object format.\n * @param target Optional parameter will be used if needed to store the row. Can be reused between calls to improve performance\n * @returns an array representing the row. May be the original array in the row, a new object, or the target parameter\n */\n// eslint-disable-next-line complexity\nexport function getTableRowAsObject(\n table: Table,\n rowIndex: number,\n target?: {[columnName: string]: unknown},\n copy?: 'copy'\n): {[columnName: string]: unknown} {\n switch (table.shape) {\n case 'object-row-table':\n return copy ? Object.fromEntries(Object.entries(table.data[rowIndex])) : table.data[rowIndex];\n\n case 'array-row-table':\n if (table.schema) {\n const objectRow: {[columnName: string]: unknown} = target || {};\n for (let i = 0; i < table.schema.fields.length; i++) {\n objectRow[table.schema.fields[i].name] = table.data[rowIndex][i];\n }\n return objectRow;\n }\n throw new Error('no schema');\n\n case 'geojson-table':\n if (table.schema) {\n const objectRow: {[columnName: string]: unknown} = target || {};\n // TODO - should lift properties to top level\n for (let i = 0; i < table.schema.fields.length; i++) {\n objectRow[table.schema.fields[i].name] = table.features[rowIndex][i];\n }\n return objectRow;\n }\n throw new Error('no schema');\n\n case 'columnar-table':\n if (table.schema) {\n const objectRow: {[columnName: string]: unknown} = target || {};\n for (let i = 0; i < table.schema.fields.length; i++) {\n objectRow[table.schema.fields[i].name] =\n table.data[table.schema.fields[i].name][rowIndex];\n }\n return objectRow;\n } else {\n // eslint-disable-line no-else-return\n const objectRow: {[columnName: string]: unknown} = target || {};\n for (const [name, column] of Object.entries(table.data)) {\n objectRow[name] = column[rowIndex];\n }\n return objectRow;\n }\n\n case 'arrow-table':\n const arrowTable = table.data as any;\n const objectRow: {[columnName: string]: unknown} = target || {};\n const row = arrowTable.get(rowIndex);\n const schema = arrowTable.schema;\n for (let i = 0; i < schema.fields.length; i++) {\n objectRow[schema.fields[i].name] = row?.[schema.fields[i].name];\n }\n return objectRow;\n\n default:\n throw new Error('shape');\n }\n}\n\n/**\n * Returns one row of the table in array format.\n * @param target Optional parameter will be used if needed to store the row. Can be reused between calls to improve performance.\n * @returns an array representing the row. May be the original array in the row, a new object, or the target parameter\n */\n// eslint-disable-next-line complexity\nexport function getTableRowAsArray(\n table: Table,\n rowIndex: number,\n target?: unknown[],\n copy?: 'copy'\n): unknown[] {\n switch (table.shape) {\n case 'array-row-table':\n return copy ? Array.from(table.data[rowIndex]) : table.data[rowIndex];\n\n case 'object-row-table':\n if (table.schema) {\n const arrayRow: unknown[] = target || [];\n for (let i = 0; i < table.schema.fields.length; i++) {\n arrayRow[i] = table.data[rowIndex][table.schema.fields[i].name];\n }\n return arrayRow;\n }\n // Warning: just slap on the values, this risks mismatches between rows\n return Object.values(table.data[rowIndex]);\n\n case 'geojson-table':\n if (table.schema) {\n const arrayRow: unknown[] = target || [];\n // TODO - should lift properties to top level\n for (let i = 0; i < table.schema.fields.length; i++) {\n arrayRow[i] = table.features[rowIndex][table.schema.fields[i].name];\n }\n return arrayRow;\n }\n // Warning: just slap on the values, this risks mismatches between rows\n return Object.values(table.features[rowIndex]);\n\n case 'columnar-table':\n if (table.schema) {\n const arrayRow: unknown[] = target || [];\n for (let i = 0; i < table.schema.fields.length; i++) {\n arrayRow[i] = table.data[table.schema.fields[i].name][rowIndex];\n }\n return arrayRow;\n } else {\n // eslint-disable-line no-else-return\n const arrayRow: unknown[] = target || [];\n let i = 0;\n for (const column of Object.values(table.data)) {\n arrayRow[i] = column[rowIndex];\n i++;\n }\n return arrayRow;\n }\n\n case 'arrow-table':\n const arrowTable = table.data as any;\n const arrayRow: unknown[] = target || [];\n const row = arrowTable.get(rowIndex);\n const schema = arrowTable.schema;\n for (let i = 0; i < schema.fields.length; i++) {\n arrayRow[i] = row?.[schema.fields[i].name];\n }\n return arrayRow;\n\n default:\n throw new Error('shape');\n }\n}\n\n/** Convert any table into array row format */\nexport function makeArrayRowTable(table: Table): ArrayRowTable {\n if (table.shape === 'array-row-table') {\n return table;\n }\n const length = getTableLength(table);\n const data = new Array<unknown[]>(length);\n for (let rowIndex = 0; rowIndex < length; rowIndex++) {\n data[rowIndex] = getTableRowAsArray(table, rowIndex);\n }\n return {\n shape: 'array-row-table',\n schema: table.schema,\n data\n };\n}\n\n/** Convert any table into object row format */\nexport function makeObjectRowTable(table: Table): ObjectRowTable {\n if (table.shape === 'object-row-table') {\n return table;\n }\n const length = getTableLength(table);\n const data = new Array<{[key: string]: unknown}>(length);\n for (let rowIndex = 0; rowIndex < length; rowIndex++) {\n data[rowIndex] = getTableRowAsObject(table, rowIndex);\n }\n return {\n shape: 'object-row-table',\n schema: table.schema,\n data\n };\n}\n\n/** Convert any table into object row format */\nexport function makeColumnarTable(table: Table): ObjectRowTable {\n if (table.shape === 'object-row-table') {\n return table;\n }\n const length = getTableLength(table);\n const data = new Array<{[key: string]: unknown}>(length);\n for (let rowIndex = 0; rowIndex < length; rowIndex++) {\n data[rowIndex] = getTableRowAsObject(table, rowIndex);\n }\n return {\n shape: 'object-row-table',\n schema: table.schema,\n data\n };\n}\n\n// Row Iterators\n\n/**\n * Iterate over table rows\n * @param table\n * @param shape\n */\nexport function* makeRowIterator(\n table: Table,\n shape: 'object-row-table' | 'array-row-table'\n): Iterable<unknown[] | {[key: string]: unknown}> {\n switch (shape) {\n case 'array-row-table':\n yield* makeArrayRowIterator(table);\n break;\n case 'object-row-table':\n yield* makeObjectRowIterator(table);\n break;\n\n default:\n throw new Error(`Unknown row type ${shape}`);\n }\n}\n\n/**\n * Streaming processing: Iterate over table, yielding array rows\n * @param table\n * @param shape\n */\nexport function* makeArrayRowIterator(table: Table, target: unknown[] = []): Iterable<unknown[]> {\n const length = getTableLength(table);\n for (let rowIndex = 0; rowIndex < length; rowIndex++) {\n yield getTableRowAsArray(table, rowIndex, target);\n }\n}\n\n/**\n * Streaming processing: Iterate over table, yielding object rows\n * @param table\n * @param shape\n */\nexport function* makeObjectRowIterator(\n table: Table,\n target: {[key: string]: unknown} = {}\n): Iterable<{[key: string]: unknown}> {\n const length = getTableLength(table);\n for (let rowIndex = 0; rowIndex < length; rowIndex++) {\n yield getTableRowAsObject(table, rowIndex, target);\n }\n}\n"],"mappings":"AAOA,OAAO,SAASA,OAAOA,CAACC,KAAU,EAAkB;EAAA,IAAAC,WAAA;EAClD,MAAMC,KAAK,GAAG,OAAOF,KAAK,KAAK,QAAQ,KAAIA,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAEE,KAAK;EACvD,QAAQA,KAAK;IACX,KAAK,iBAAiB;IACtB,KAAK,kBAAkB;MACrB,OAAOC,KAAK,CAACC,OAAO,CAACJ,KAAK,CAACK,IAAI,CAAC;IAElC,KAAK,eAAe;MAClB,OAAOF,KAAK,CAACC,OAAO,CAACJ,KAAK,CAACM,QAAQ,CAAC;IAEtC,KAAK,gBAAgB;MACnB,OAAON,KAAK,CAACK,IAAI,IAAI,OAAOL,KAAK,CAACK,IAAI,KAAK,QAAQ;IAErD,KAAK,aAAa;MAChB,OAAOE,OAAO,CAAC,CAAAP,KAAK,aAALA,KAAK,wBAAAC,WAAA,GAALD,KAAK,CAAEK,IAAI,cAAAJ,WAAA,uBAAXA,WAAA,CAAaO,OAAO,MAAKC,SAAS,CAAC;IAEpD;MACE,OAAO,KAAK;EAChB;AACF;AAKA,OAAO,SAASC,cAAcA,CAACV,KAAY,EAAU;EACnD,QAAQA,KAAK,CAACE,KAAK;IACjB,KAAK,iBAAiB;IACtB,KAAK,kBAAkB;MACrB,OAAOF,KAAK,CAACK,IAAI,CAACM,MAAM;IAE1B,KAAK,eAAe;MAClB,OAAOX,KAAK,CAACM,QAAQ,CAACK,MAAM;IAE9B,KAAK,aAAa;MAChB,MAAMC,UAAU,GAAGZ,KAAK,CAACK,IAAW;MACpC,OAAOO,UAAU,CAACJ,OAAO;IAE3B,KAAK,gBAAgB;MACnB,KAAK,MAAMK,MAAM,IAAIC,MAAM,CAACC,MAAM,CAACf,KAAK,CAACK,IAAI,CAAC,EAAE;QAC9C,OAAOQ,MAAM,CAACF,MAAM,IAAI,CAAC;MAC3B;MACA,OAAO,CAAC;IACV;MACE,MAAM,IAAIK,KAAK,CAAC,OAAO,CAAC;EAC5B;AACF;AAMA,OAAO,SAASC,eAAeA,CAACjB,KAAY,EAAU;EACpD,IAAIA,KAAK,CAACkB,MAAM,EAAE;IAChB,OAAOlB,KAAK,CAACkB,MAAM,CAACC,MAAM,CAACR,MAAM;EACnC;EACA,IAAID,cAAc,CAACV,KAAK,CAAC,KAAK,CAAC,EAAE;IAC/B,MAAM,IAAIgB,KAAK,CAAC,aAAa,CAAC;EAChC;EACA,QAAQhB,KAAK,CAACE,KAAK;IACjB,KAAK,iBAAiB;MACpB,OAAOF,KAAK,CAACK,IAAI,CAAC,CAAC,CAAC,CAACM,MAAM;IAC7B,KAAK,kBAAkB;MACrB,OAAOG,MAAM,CAACM,IAAI,CAACpB,KAAK,CAACK,IAAI,CAAC,CAAC,CAAC,CAAC,CAACM,MAAM;IAC1C,KAAK,eAAe;MAClB,OAAOG,MAAM,CAACM,IAAI,CAACpB,KAAK,CAACM,QAAQ,CAAC,CAAC,CAAC,CAAC,CAACK,MAAM;IAC9C,KAAK,gBAAgB;MACnB,OAAOG,MAAM,CAACM,IAAI,CAACpB,KAAK,CAACK,IAAI,CAAC,CAACM,MAAM;IACvC,KAAK,aAAa;MAChB,MAAMC,UAAU,GAAGZ,KAAK,CAACK,IAAW;MACpC,OAAOO,UAAU,CAACS,OAAO;IAC3B;MACE,MAAM,IAAIL,KAAK,CAAC,OAAO,CAAC;EAC5B;AACF;AAGA,OAAO,SAASM,YAAYA,CAACtB,KAAY,EAAEuB,QAAgB,EAAEC,UAAkB,EAAW;EAAA,IAAAC,qBAAA;EACxF,QAAQzB,KAAK,CAACE,KAAK;IACjB,KAAK,iBAAiB;MACpB,MAAMwB,WAAW,GAAGC,mBAAmB,CAAC3B,KAAK,EAAEwB,UAAU,CAAC;MAC1D,OAAOxB,KAAK,CAACK,IAAI,CAACkB,QAAQ,CAAC,CAACG,WAAW,CAAC;IAE1C,KAAK,kBAAkB;MACrB,OAAO1B,KAAK,CAACK,IAAI,CAACkB,QAAQ,CAAC,CAACC,UAAU,CAAC;IAEzC,KAAK,eAAe;MAClB,OAAOxB,KAAK,CAACM,QAAQ,CAACiB,QAAQ,CAAC,CAACC,UAAU,CAAC;IAE7C,KAAK,gBAAgB;MACnB,MAAMX,MAAM,GAAGb,KAAK,CAACK,IAAI,CAACmB,UAAU,CAAC;MACrC,OAAOX,MAAM,CAACU,QAAQ,CAAC;IAEzB,KAAK,aAAa;MAChB,MAAMX,UAAU,GAAGZ,KAAK,CAACK,IAAW;MACpC,MAAMuB,gBAAgB,GAAGhB,UAAU,CAACM,MAAM,CAACC,MAAM,CAACU,SAAS,CACxDC,KAAK,IAAKA,KAAK,CAACC,IAAI,KAAKP,UAC5B,CAAC;MACD,QAAAC,qBAAA,GAAOb,UAAU,CAACoB,UAAU,CAACJ,gBAAgB,CAAC,cAAAH,qBAAA,uBAAvCA,qBAAA,CAAyCQ,GAAG,CAACV,QAAQ,CAAC;IAE/D;MACE,MAAM,IAAIP,KAAK,CAAC,MAAM,CAAC;EAC3B;AACF;AAGA,OAAO,SAASkB,cAAcA,CAAClC,KAAY,EAAEuB,QAAgB,EAAEG,WAAmB,EAAW;EAAA,IAAAS,sBAAA;EAC3F,QAAQnC,KAAK,CAACE,KAAK;IACjB,KAAK,iBAAiB;MACpB,OAAOF,KAAK,CAACK,IAAI,CAACkB,QAAQ,CAAC,CAACG,WAAW,CAAC;IAE1C,KAAK,kBAAkB;MACrB,MAAMU,WAAW,GAAGC,kBAAkB,CAACrC,KAAK,EAAE0B,WAAW,CAAC;MAC1D,OAAO1B,KAAK,CAACK,IAAI,CAACkB,QAAQ,CAAC,CAACa,WAAW,CAAC;IAE1C,KAAK,eAAe;MAClB,MAAME,WAAW,GAAGD,kBAAkB,CAACrC,KAAK,EAAE0B,WAAW,CAAC;MAC1D,OAAO1B,KAAK,CAACM,QAAQ,CAACiB,QAAQ,CAAC,CAACe,WAAW,CAAC;IAE9C,KAAK,gBAAgB;MACnB,MAAMC,WAAW,GAAGF,kBAAkB,CAACrC,KAAK,EAAE0B,WAAW,CAAC;MAC1D,MAAMb,MAAM,GAAGb,KAAK,CAACK,IAAI,CAACkC,WAAW,CAAC;MACtC,OAAO1B,MAAM,CAACU,QAAQ,CAAC;IAEzB,KAAK,aAAa;MAChB,MAAMX,UAAU,GAAGZ,KAAK,CAACK,IAAW;MACpC,QAAA8B,sBAAA,GAAOvB,UAAU,CAACoB,UAAU,CAACN,WAAW,CAAC,cAAAS,sBAAA,uBAAlCA,sBAAA,CAAoCF,GAAG,CAACV,QAAQ,CAAC;IAE1D;MACE,MAAM,IAAIP,KAAK,CAAC,MAAM,CAAC;EAC3B;AACF;AAGA,OAAO,SAASwB,gBAAgBA,CAACxC,KAAY,EAA0C;EACrF,QAAQA,KAAK,CAACE,KAAK;IACjB,KAAK,iBAAiB;IACtB,KAAK,kBAAkB;MACrB,OAAOF,KAAK,CAACE,KAAK;IAEpB,KAAK,eAAe;MAElB,OAAO,kBAAkB;IAE3B,KAAK,gBAAgB;IACrB;MACE,MAAM,IAAIc,KAAK,CAAC,iBAAiB,CAAC;EACtC;AACF;AAGA,OAAO,SAASW,mBAAmBA,CAAC3B,KAAY,EAAEwB,UAAkB,EAAU;EAAA,IAAAiB,aAAA;EAC5E,MAAMf,WAAW,IAAAe,aAAA,GAAGzC,KAAK,CAACkB,MAAM,cAAAuB,aAAA,uBAAZA,aAAA,CAActB,MAAM,CAACU,SAAS,CAAEC,KAAK,IAAKA,KAAK,CAACC,IAAI,KAAKP,UAAU,CAAC;EACxF,IAAIE,WAAW,KAAKjB,SAAS,EAAE;IAC7B,MAAM,IAAIO,KAAK,CAACQ,UAAU,CAAC;EAC7B;EACA,OAAOE,WAAW;AACpB;AAGA,OAAO,SAASW,kBAAkBA,CAACrC,KAAY,EAAE0B,WAAmB,EAAU;EAAA,IAAAgB,cAAA,EAAAC,qBAAA;EAC5E,MAAMnB,UAAU,IAAAkB,cAAA,GAAG1C,KAAK,CAACkB,MAAM,cAAAwB,cAAA,wBAAAC,qBAAA,GAAZD,cAAA,CAAcvB,MAAM,CAACO,WAAW,CAAC,cAAAiB,qBAAA,uBAAjCA,qBAAA,CAAmCZ,IAAI;EAC1D,IAAI,CAACP,UAAU,EAAE;IACf,MAAM,IAAIR,KAAK,CAAE,GAAEU,WAAY,EAAC,CAAC;EACnC;EACA,OAAOF,UAAU;AACnB;AAQA,OAAO,SAASoB,mBAAmBA,CACjC5C,KAAY,EACZuB,QAAgB,EAChBsB,MAAwC,EACxCC,IAAa,EACoB;EACjC,QAAQ9C,KAAK,CAACE,KAAK;IACjB,KAAK,kBAAkB;MACrB,OAAO4C,IAAI,GAAGhC,MAAM,CAACiC,WAAW,CAACjC,MAAM,CAACkC,OAAO,CAAChD,KAAK,CAACK,IAAI,CAACkB,QAAQ,CAAC,CAAC,CAAC,GAAGvB,KAAK,CAACK,IAAI,CAACkB,QAAQ,CAAC;IAE/F,KAAK,iBAAiB;MACpB,IAAIvB,KAAK,CAACkB,MAAM,EAAE;QAChB,MAAM+B,SAA0C,GAAGJ,MAAM,IAAI,CAAC,CAAC;QAC/D,KAAK,IAAIK,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGlD,KAAK,CAACkB,MAAM,CAACC,MAAM,CAACR,MAAM,EAAEuC,CAAC,EAAE,EAAE;UACnDD,SAAS,CAACjD,KAAK,CAACkB,MAAM,CAACC,MAAM,CAAC+B,CAAC,CAAC,CAACnB,IAAI,CAAC,GAAG/B,KAAK,CAACK,IAAI,CAACkB,QAAQ,CAAC,CAAC2B,CAAC,CAAC;QAClE;QACA,OAAOD,SAAS;MAClB;MACA,MAAM,IAAIjC,KAAK,CAAC,WAAW,CAAC;IAE9B,KAAK,eAAe;MAClB,IAAIhB,KAAK,CAACkB,MAAM,EAAE;QAChB,MAAM+B,SAA0C,GAAGJ,MAAM,IAAI,CAAC,CAAC;QAE/D,KAAK,IAAIK,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGlD,KAAK,CAACkB,MAAM,CAACC,MAAM,CAACR,MAAM,EAAEuC,CAAC,EAAE,EAAE;UACnDD,SAAS,CAACjD,KAAK,CAACkB,MAAM,CAACC,MAAM,CAAC+B,CAAC,CAAC,CAACnB,IAAI,CAAC,GAAG/B,KAAK,CAACM,QAAQ,CAACiB,QAAQ,CAAC,CAAC2B,CAAC,CAAC;QACtE;QACA,OAAOD,SAAS;MAClB;MACA,MAAM,IAAIjC,KAAK,CAAC,WAAW,CAAC;IAE9B,KAAK,gBAAgB;MACnB,IAAIhB,KAAK,CAACkB,MAAM,EAAE;QAChB,MAAM+B,SAA0C,GAAGJ,MAAM,IAAI,CAAC,CAAC;QAC/D,KAAK,IAAIK,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGlD,KAAK,CAACkB,MAAM,CAACC,MAAM,CAACR,MAAM,EAAEuC,CAAC,EAAE,EAAE;UACnDD,SAAS,CAACjD,KAAK,CAACkB,MAAM,CAACC,MAAM,CAAC+B,CAAC,CAAC,CAACnB,IAAI,CAAC,GACpC/B,KAAK,CAACK,IAAI,CAACL,KAAK,CAACkB,MAAM,CAACC,MAAM,CAAC+B,CAAC,CAAC,CAACnB,IAAI,CAAC,CAACR,QAAQ,CAAC;QACrD;QACA,OAAO0B,SAAS;MAClB,CAAC,MAAM;QAEL,MAAMA,SAA0C,GAAGJ,MAAM,IAAI,CAAC,CAAC;QAC/D,KAAK,MAAM,CAACd,IAAI,EAAElB,MAAM,CAAC,IAAIC,MAAM,CAACkC,OAAO,CAAChD,KAAK,CAACK,IAAI,CAAC,EAAE;UACvD4C,SAAS,CAAClB,IAAI,CAAC,GAAGlB,MAAM,CAACU,QAAQ,CAAC;QACpC;QACA,OAAO0B,SAAS;MAClB;IAEF,KAAK,aAAa;MAChB,MAAMrC,UAAU,GAAGZ,KAAK,CAACK,IAAW;MACpC,MAAM4C,SAA0C,GAAGJ,MAAM,IAAI,CAAC,CAAC;MAC/D,MAAMM,GAAG,GAAGvC,UAAU,CAACqB,GAAG,CAACV,QAAQ,CAAC;MACpC,MAAML,MAAM,GAAGN,UAAU,CAACM,MAAM;MAChC,KAAK,IAAIgC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGhC,MAAM,CAACC,MAAM,CAACR,MAAM,EAAEuC,CAAC,EAAE,EAAE;QAC7CD,SAAS,CAAC/B,MAAM,CAACC,MAAM,CAAC+B,CAAC,CAAC,CAACnB,IAAI,CAAC,GAAGoB,GAAG,aAAHA,GAAG,uBAAHA,GAAG,CAAGjC,MAAM,CAACC,MAAM,CAAC+B,CAAC,CAAC,CAACnB,IAAI,CAAC;MACjE;MACA,OAAOkB,SAAS;IAElB;MACE,MAAM,IAAIjC,KAAK,CAAC,OAAO,CAAC;EAC5B;AACF;AAQA,OAAO,SAASoC,kBAAkBA,CAChCpD,KAAY,EACZuB,QAAgB,EAChBsB,MAAkB,EAClBC,IAAa,EACF;EACX,QAAQ9C,KAAK,CAACE,KAAK;IACjB,KAAK,iBAAiB;MACpB,OAAO4C,IAAI,GAAG3C,KAAK,CAACkD,IAAI,CAACrD,KAAK,CAACK,IAAI,CAACkB,QAAQ,CAAC,CAAC,GAAGvB,KAAK,CAACK,IAAI,CAACkB,QAAQ,CAAC;IAEvE,KAAK,kBAAkB;MACrB,IAAIvB,KAAK,CAACkB,MAAM,EAAE;QAChB,MAAMoC,QAAmB,GAAGT,MAAM,IAAI,EAAE;QACxC,KAAK,IAAIK,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGlD,KAAK,CAACkB,MAAM,CAACC,MAAM,CAACR,MAAM,EAAEuC,CAAC,EAAE,EAAE;UACnDI,QAAQ,CAACJ,CAAC,CAAC,GAAGlD,KAAK,CAACK,IAAI,CAACkB,QAAQ,CAAC,CAACvB,KAAK,CAACkB,MAAM,CAACC,MAAM,CAAC+B,CAAC,CAAC,CAACnB,IAAI,CAAC;QACjE;QACA,OAAOuB,QAAQ;MACjB;MAEA,OAAOxC,MAAM,CAACC,MAAM,CAACf,KAAK,CAACK,IAAI,CAACkB,QAAQ,CAAC,CAAC;IAE5C,KAAK,eAAe;MAClB,IAAIvB,KAAK,CAACkB,MAAM,EAAE;QAChB,MAAMoC,QAAmB,GAAGT,MAAM,IAAI,EAAE;QAExC,KAAK,IAAIK,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGlD,KAAK,CAACkB,MAAM,CAACC,MAAM,CAACR,MAAM,EAAEuC,CAAC,EAAE,EAAE;UACnDI,QAAQ,CAACJ,CAAC,CAAC,GAAGlD,KAAK,CAACM,QAAQ,CAACiB,QAAQ,CAAC,CAACvB,KAAK,CAACkB,MAAM,CAACC,MAAM,CAAC+B,CAAC,CAAC,CAACnB,IAAI,CAAC;QACrE;QACA,OAAOuB,QAAQ;MACjB;MAEA,OAAOxC,MAAM,CAACC,MAAM,CAACf,KAAK,CAACM,QAAQ,CAACiB,QAAQ,CAAC,CAAC;IAEhD,KAAK,gBAAgB;MACnB,IAAIvB,KAAK,CAACkB,MAAM,EAAE;QAChB,MAAMoC,QAAmB,GAAGT,MAAM,IAAI,EAAE;QACxC,KAAK,IAAIK,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGlD,KAAK,CAACkB,MAAM,CAACC,MAAM,CAACR,MAAM,EAAEuC,CAAC,EAAE,EAAE;UACnDI,QAAQ,CAACJ,CAAC,CAAC,GAAGlD,KAAK,CAACK,IAAI,CAACL,KAAK,CAACkB,MAAM,CAACC,MAAM,CAAC+B,CAAC,CAAC,CAACnB,IAAI,CAAC,CAACR,QAAQ,CAAC;QACjE;QACA,OAAO+B,QAAQ;MACjB,CAAC,MAAM;QAEL,MAAMA,QAAmB,GAAGT,MAAM,IAAI,EAAE;QACxC,IAAIK,CAAC,GAAG,CAAC;QACT,KAAK,MAAMrC,MAAM,IAAIC,MAAM,CAACC,MAAM,CAACf,KAAK,CAACK,IAAI,CAAC,EAAE;UAC9CiD,QAAQ,CAACJ,CAAC,CAAC,GAAGrC,MAAM,CAACU,QAAQ,CAAC;UAC9B2B,CAAC,EAAE;QACL;QACA,OAAOI,QAAQ;MACjB;IAEF,KAAK,aAAa;MAChB,MAAM1C,UAAU,GAAGZ,KAAK,CAACK,IAAW;MACpC,MAAMiD,QAAmB,GAAGT,MAAM,IAAI,EAAE;MACxC,MAAMM,GAAG,GAAGvC,UAAU,CAACqB,GAAG,CAACV,QAAQ,CAAC;MACpC,MAAML,MAAM,GAAGN,UAAU,CAACM,MAAM;MAChC,KAAK,IAAIgC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGhC,MAAM,CAACC,MAAM,CAACR,MAAM,EAAEuC,CAAC,EAAE,EAAE;QAC7CI,QAAQ,CAACJ,CAAC,CAAC,GAAGC,GAAG,aAAHA,GAAG,uBAAHA,GAAG,CAAGjC,MAAM,CAACC,MAAM,CAAC+B,CAAC,CAAC,CAACnB,IAAI,CAAC;MAC5C;MACA,OAAOuB,QAAQ;IAEjB;MACE,MAAM,IAAItC,KAAK,CAAC,OAAO,CAAC;EAC5B;AACF;AAGA,OAAO,SAASuC,iBAAiBA,CAACvD,KAAY,EAAiB;EAC7D,IAAIA,KAAK,CAACE,KAAK,KAAK,iBAAiB,EAAE;IACrC,OAAOF,KAAK;EACd;EACA,MAAMW,MAAM,GAAGD,cAAc,CAACV,KAAK,CAAC;EACpC,MAAMK,IAAI,GAAG,IAAIF,KAAK,CAAYQ,MAAM,CAAC;EACzC,KAAK,IAAIY,QAAQ,GAAG,CAAC,EAAEA,QAAQ,GAAGZ,MAAM,EAAEY,QAAQ,EAAE,EAAE;IACpDlB,IAAI,CAACkB,QAAQ,CAAC,GAAG6B,kBAAkB,CAACpD,KAAK,EAAEuB,QAAQ,CAAC;EACtD;EACA,OAAO;IACLrB,KAAK,EAAE,iBAAiB;IACxBgB,MAAM,EAAElB,KAAK,CAACkB,MAAM;IACpBb;EACF,CAAC;AACH;AAGA,OAAO,SAASmD,kBAAkBA,CAACxD,KAAY,EAAkB;EAC/D,IAAIA,KAAK,CAACE,KAAK,KAAK,kBAAkB,EAAE;IACtC,OAAOF,KAAK;EACd;EACA,MAAMW,MAAM,GAAGD,cAAc,CAACV,KAAK,CAAC;EACpC,MAAMK,IAAI,GAAG,IAAIF,KAAK,CAA2BQ,MAAM,CAAC;EACxD,KAAK,IAAIY,QAAQ,GAAG,CAAC,EAAEA,QAAQ,GAAGZ,MAAM,EAAEY,QAAQ,EAAE,EAAE;IACpDlB,IAAI,CAACkB,QAAQ,CAAC,GAAGqB,mBAAmB,CAAC5C,KAAK,EAAEuB,QAAQ,CAAC;EACvD;EACA,OAAO;IACLrB,KAAK,EAAE,kBAAkB;IACzBgB,MAAM,EAAElB,KAAK,CAACkB,MAAM;IACpBb;EACF,CAAC;AACH;AAGA,OAAO,SAASoD,iBAAiBA,CAACzD,KAAY,EAAkB;EAC9D,IAAIA,KAAK,CAACE,KAAK,KAAK,kBAAkB,EAAE;IACtC,OAAOF,KAAK;EACd;EACA,MAAMW,MAAM,GAAGD,cAAc,CAACV,KAAK,CAAC;EACpC,MAAMK,IAAI,GAAG,IAAIF,KAAK,CAA2BQ,MAAM,CAAC;EACxD,KAAK,IAAIY,QAAQ,GAAG,CAAC,EAAEA,QAAQ,GAAGZ,MAAM,EAAEY,QAAQ,EAAE,EAAE;IACpDlB,IAAI,CAACkB,QAAQ,CAAC,GAAGqB,mBAAmB,CAAC5C,KAAK,EAAEuB,QAAQ,CAAC;EACvD;EACA,OAAO;IACLrB,KAAK,EAAE,kBAAkB;IACzBgB,MAAM,EAAElB,KAAK,CAACkB,MAAM;IACpBb;EACF,CAAC;AACH;AASA,OAAO,UAAUqD,eAAeA,CAC9B1D,KAAY,EACZE,KAA6C,EACG;EAChD,QAAQA,KAAK;IACX,KAAK,iBAAiB;MACpB,OAAOyD,oBAAoB,CAAC3D,KAAK,CAAC;MAClC;IACF,KAAK,kBAAkB;MACrB,OAAO4D,qBAAqB,CAAC5D,KAAK,CAAC;MACnC;IAEF;MACE,MAAM,IAAIgB,KAAK,CAAE,oBAAmBd,KAAM,EAAC,CAAC;EAChD;AACF;AAOA,OAAO,SAAUyD,oBAAoBA,CAAC3D,KAAY;EAAA,IAAE6C,MAAiB,GAAAgB,SAAA,CAAAlD,MAAA,QAAAkD,SAAA,QAAApD,SAAA,GAAAoD,SAAA,MAAG,EAAE;EAAA,oBAAuB;IAC/F,MAAMlD,MAAM,GAAGD,cAAc,CAACV,KAAK,CAAC;IACpC,KAAK,IAAIuB,QAAQ,GAAG,CAAC,EAAEA,QAAQ,GAAGZ,MAAM,EAAEY,QAAQ,EAAE,EAAE;MACpD,MAAM6B,kBAAkB,CAACpD,KAAK,EAAEuB,QAAQ,EAAEsB,MAAM,CAAC;IACnD;EACF,CAAC;AAAA;AAOD,OAAO,SAAUe,qBAAqBA,CACpC5D,KAAY;EAAA,IACZ6C,MAAgC,GAAAgB,SAAA,CAAAlD,MAAA,QAAAkD,SAAA,QAAApD,SAAA,GAAAoD,SAAA,MAAG,CAAC,CAAC;EAAA,oBACD;IACpC,MAAMlD,MAAM,GAAGD,cAAc,CAACV,KAAK,CAAC;IACpC,KAAK,IAAIuB,QAAQ,GAAG,CAAC,EAAEA,QAAQ,GAAGZ,MAAM,EAAEY,QAAQ,EAAE,EAAE;MACpD,MAAMqB,mBAAmB,CAAC5C,KAAK,EAAEuB,QAAQ,EAAEsB,MAAM,CAAC;IACpD;EACF,CAAC;AAAA"}
|
|
1
|
+
{"version":3,"file":"table-accessors.js","names":["isTable","table","_table$data","shape","Array","isArray","data","features","Boolean","numRows","undefined","getTableLength","length","arrowTable","column","Object","values","Error","getTableNumCols","schema","fields","keys","numCols","getTableCell","rowIndex","columnName","_arrowTable$getChildA","columnIndex","getTableColumnIndex","arrowColumnIndex","findIndex","field","name","getChildAt","get","getTableCellAt","_arrowTable$getChildA2","columnName1","getTableColumnName","columnName2","columnName3","getTableRowShape","_table$schema","_table$schema2","_table$schema2$fields","getTableRowAsObject","target","copy","fromEntries","entries","objectRow","i","row","getTableRowAsArray","from","arrayRow","makeArrayRowTable","makeObjectRowTable","makeColumnarTable","makeRowIterator","makeArrayRowIterator","makeObjectRowIterator","arguments"],"sources":["../../../../src/lib/table/simple-table/table-accessors.ts"],"sourcesContent":["// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n\n/* eslint-disable no-else-return */\n\nimport {Table, ArrayRowTable, ObjectRowTable} from '../../../types/category-table';\n\nexport function isTable(table: any): table is Table {\n const shape = typeof table === 'object' && table?.shape;\n switch (shape) {\n case 'array-row-table':\n case 'object-row-table':\n return Array.isArray(table.data);\n\n case 'geojson-table':\n return Array.isArray(table.features);\n\n case 'columnar-table':\n return table.data && typeof table.data === 'object';\n\n case 'arrow-table':\n return Boolean(table?.data?.numRows !== undefined);\n\n default:\n return false;\n }\n}\n\n/**\n * Returns the length of the table (i.e. the number of rows)\n */\nexport function getTableLength(table: Table): number {\n switch (table.shape) {\n case 'array-row-table':\n case 'object-row-table':\n return table.data.length;\n\n case 'geojson-table':\n return table.features.length;\n\n case 'arrow-table':\n const arrowTable = table.data as any;\n return arrowTable.numRows;\n\n case 'columnar-table':\n for (const column of Object.values(table.data)) {\n return column.length || 0;\n }\n return 0;\n default:\n throw new Error('table');\n }\n}\n\n/**\n * Returns the number of columns in the table\n * @throws Fails to deduce number of columns if the table has no schema and is empty\n */\nexport function getTableNumCols(table: Table): number {\n if (table.schema) {\n return table.schema.fields.length;\n }\n if (getTableLength(table) === 0) {\n throw new Error('empty table');\n }\n switch (table.shape) {\n case 'array-row-table':\n return table.data[0].length;\n case 'object-row-table':\n return Object.keys(table.data[0]).length;\n case 'geojson-table':\n return Object.keys(table.features[0]).length;\n case 'columnar-table':\n return Object.keys(table.data).length;\n case 'arrow-table':\n const arrowTable = table.data as any;\n return arrowTable.numCols;\n default:\n throw new Error('table');\n }\n}\n\n/** Get a table cell value at row index and column name */\nexport function getTableCell(table: Table, rowIndex: number, columnName: string): unknown {\n switch (table.shape) {\n case 'array-row-table':\n const columnIndex = getTableColumnIndex(table, columnName);\n return table.data[rowIndex][columnIndex];\n\n case 'object-row-table':\n return table.data[rowIndex][columnName];\n\n case 'geojson-table':\n return table.features[rowIndex][columnName];\n\n case 'columnar-table':\n const column = table.data[columnName];\n return column[rowIndex];\n\n case 'arrow-table':\n const arrowTable = table.data as any;\n const arrowColumnIndex = arrowTable.schema.fields.findIndex(\n (field) => field.name === columnName\n );\n return arrowTable.getChildAt(arrowColumnIndex)?.get(rowIndex);\n\n default:\n throw new Error('todo');\n }\n}\n\n/** Get a table cell value at row index and column name */\nexport function getTableCellAt(table: Table, rowIndex: number, columnIndex: number): unknown {\n switch (table.shape) {\n case 'array-row-table':\n return table.data[rowIndex][columnIndex];\n\n case 'object-row-table':\n const columnName1 = getTableColumnName(table, columnIndex);\n return table.data[rowIndex][columnName1];\n\n case 'geojson-table':\n const columnName2 = getTableColumnName(table, columnIndex);\n return table.features[rowIndex][columnName2];\n\n case 'columnar-table':\n const columnName3 = getTableColumnName(table, columnIndex);\n const column = table.data[columnName3];\n return column[rowIndex];\n\n case 'arrow-table':\n const arrowTable = table.data as any;\n return arrowTable.getChildAt(columnIndex)?.get(rowIndex);\n\n default:\n throw new Error('todo');\n }\n}\n\n/** Deduce the table row shape */\nexport function getTableRowShape(table: Table): 'array-row-table' | 'object-row-table' {\n switch (table.shape) {\n case 'array-row-table':\n case 'object-row-table':\n return table.shape;\n\n case 'geojson-table':\n // TODO - this is not correct, geojson-table is not a row table\n return 'object-row-table';\n\n case 'columnar-table':\n default:\n throw new Error('Not a row table');\n }\n}\n\n/** Get the index of a named table column. Requires the table to have a schema */\nexport function getTableColumnIndex(table: Table, columnName: string): number {\n const columnIndex = table.schema?.fields.findIndex((field) => field.name === columnName);\n if (columnIndex === undefined) {\n throw new Error(columnName);\n }\n return columnIndex;\n}\n\n/** Get the name of a table column by index. Requires the table to have a schema */\nexport function getTableColumnName(table: Table, columnIndex: number): string {\n const columnName = table.schema?.fields[columnIndex]?.name;\n if (!columnName) {\n throw new Error(`${columnIndex}`);\n }\n return columnName;\n}\n\n/**\n * Returns one row of the table in object format.\n * @param target Optional parameter will be used if needed to store the row. Can be reused between calls to improve performance\n * @returns an array representing the row. May be the original array in the row, a new object, or the target parameter\n */\n// eslint-disable-next-line complexity\nexport function getTableRowAsObject(\n table: Table,\n rowIndex: number,\n target?: {[columnName: string]: unknown},\n copy?: 'copy'\n): {[columnName: string]: unknown} {\n switch (table.shape) {\n case 'object-row-table':\n return copy ? Object.fromEntries(Object.entries(table.data[rowIndex])) : table.data[rowIndex];\n\n case 'array-row-table':\n if (table.schema) {\n const objectRow: {[columnName: string]: unknown} = target || {};\n for (let i = 0; i < table.schema.fields.length; i++) {\n objectRow[table.schema.fields[i].name] = table.data[rowIndex][i];\n }\n return objectRow;\n }\n throw new Error('no schema');\n\n case 'geojson-table':\n if (table.schema) {\n const objectRow: {[columnName: string]: unknown} = target || {};\n // TODO - should lift properties to top level\n for (let i = 0; i < table.schema.fields.length; i++) {\n objectRow[table.schema.fields[i].name] = table.features[rowIndex][i];\n }\n return objectRow;\n }\n throw new Error('no schema');\n\n case 'columnar-table':\n if (table.schema) {\n const objectRow: {[columnName: string]: unknown} = target || {};\n for (let i = 0; i < table.schema.fields.length; i++) {\n objectRow[table.schema.fields[i].name] =\n table.data[table.schema.fields[i].name][rowIndex];\n }\n return objectRow;\n } else {\n // eslint-disable-line no-else-return\n const objectRow: {[columnName: string]: unknown} = target || {};\n for (const [name, column] of Object.entries(table.data)) {\n objectRow[name] = column[rowIndex];\n }\n return objectRow;\n }\n\n case 'arrow-table':\n const arrowTable = table.data as any;\n const objectRow: {[columnName: string]: unknown} = target || {};\n const row = arrowTable.get(rowIndex);\n const schema = arrowTable.schema;\n for (let i = 0; i < schema.fields.length; i++) {\n objectRow[schema.fields[i].name] = row?.[schema.fields[i].name];\n }\n return objectRow;\n\n default:\n throw new Error('shape');\n }\n}\n\n/**\n * Returns one row of the table in array format.\n * @param target Optional parameter will be used if needed to store the row. Can be reused between calls to improve performance.\n * @returns an array representing the row. May be the original array in the row, a new object, or the target parameter\n */\n// eslint-disable-next-line complexity\nexport function getTableRowAsArray(\n table: Table,\n rowIndex: number,\n target?: unknown[],\n copy?: 'copy'\n): unknown[] {\n switch (table.shape) {\n case 'array-row-table':\n return copy ? Array.from(table.data[rowIndex]) : table.data[rowIndex];\n\n case 'object-row-table':\n if (table.schema) {\n const arrayRow: unknown[] = target || [];\n for (let i = 0; i < table.schema.fields.length; i++) {\n arrayRow[i] = table.data[rowIndex][table.schema.fields[i].name];\n }\n return arrayRow;\n }\n // Warning: just slap on the values, this risks mismatches between rows\n return Object.values(table.data[rowIndex]);\n\n case 'geojson-table':\n if (table.schema) {\n const arrayRow: unknown[] = target || [];\n // TODO - should lift properties to top level\n for (let i = 0; i < table.schema.fields.length; i++) {\n arrayRow[i] = table.features[rowIndex][table.schema.fields[i].name];\n }\n return arrayRow;\n }\n // Warning: just slap on the values, this risks mismatches between rows\n return Object.values(table.features[rowIndex]);\n\n case 'columnar-table':\n if (table.schema) {\n const arrayRow: unknown[] = target || [];\n for (let i = 0; i < table.schema.fields.length; i++) {\n arrayRow[i] = table.data[table.schema.fields[i].name][rowIndex];\n }\n return arrayRow;\n } else {\n // eslint-disable-line no-else-return\n const arrayRow: unknown[] = target || [];\n let i = 0;\n for (const column of Object.values(table.data)) {\n arrayRow[i] = column[rowIndex];\n i++;\n }\n return arrayRow;\n }\n\n case 'arrow-table':\n const arrowTable = table.data as any;\n const arrayRow: unknown[] = target || [];\n const row = arrowTable.get(rowIndex);\n const schema = arrowTable.schema;\n for (let i = 0; i < schema.fields.length; i++) {\n arrayRow[i] = row?.[schema.fields[i].name];\n }\n return arrayRow;\n\n default:\n throw new Error('shape');\n }\n}\n\n/** Convert any table into array row format */\nexport function makeArrayRowTable(table: Table): ArrayRowTable {\n if (table.shape === 'array-row-table') {\n return table;\n }\n const length = getTableLength(table);\n const data = new Array<unknown[]>(length);\n for (let rowIndex = 0; rowIndex < length; rowIndex++) {\n data[rowIndex] = getTableRowAsArray(table, rowIndex);\n }\n return {\n shape: 'array-row-table',\n schema: table.schema,\n data\n };\n}\n\n/** Convert any table into object row format */\nexport function makeObjectRowTable(table: Table): ObjectRowTable {\n if (table.shape === 'object-row-table') {\n return table;\n }\n const length = getTableLength(table);\n const data = new Array<{[key: string]: unknown}>(length);\n for (let rowIndex = 0; rowIndex < length; rowIndex++) {\n data[rowIndex] = getTableRowAsObject(table, rowIndex);\n }\n return {\n shape: 'object-row-table',\n schema: table.schema,\n data\n };\n}\n\n/** Convert any table into object row format */\nexport function makeColumnarTable(table: Table): ObjectRowTable {\n if (table.shape === 'object-row-table') {\n return table;\n }\n const length = getTableLength(table);\n const data = new Array<{[key: string]: unknown}>(length);\n for (let rowIndex = 0; rowIndex < length; rowIndex++) {\n data[rowIndex] = getTableRowAsObject(table, rowIndex);\n }\n return {\n shape: 'object-row-table',\n schema: table.schema,\n data\n };\n}\n\n// Row Iterators\n\n/**\n * Iterate over table rows\n * @param table\n * @param shape\n */\nexport function* makeRowIterator(\n table: Table,\n shape: 'object-row-table' | 'array-row-table'\n): Iterable<unknown[] | {[key: string]: unknown}> {\n switch (shape) {\n case 'array-row-table':\n yield* makeArrayRowIterator(table);\n break;\n case 'object-row-table':\n yield* makeObjectRowIterator(table);\n break;\n\n default:\n throw new Error(`Unknown row type ${shape}`);\n }\n}\n\n/**\n * Streaming processing: Iterate over table, yielding array rows\n * @param table\n * @param shape\n */\nexport function* makeArrayRowIterator(table: Table, target: unknown[] = []): Iterable<unknown[]> {\n const length = getTableLength(table);\n for (let rowIndex = 0; rowIndex < length; rowIndex++) {\n yield getTableRowAsArray(table, rowIndex, target);\n }\n}\n\n/**\n * Streaming processing: Iterate over table, yielding object rows\n * @param table\n * @param shape\n */\nexport function* makeObjectRowIterator(\n table: Table,\n target: {[key: string]: unknown} = {}\n): Iterable<{[key: string]: unknown}> {\n const length = getTableLength(table);\n for (let rowIndex = 0; rowIndex < length; rowIndex++) {\n yield getTableRowAsObject(table, rowIndex, target);\n }\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table-column.d.ts","sourceRoot":"","sources":["../../../../src/lib/table/simple-table/table-column.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"table-column.d.ts","sourceRoot":"","sources":["../../../../src/lib/table/simple-table/table-column.ts"],"names":[],"mappings":"AAKA,OAAO,EAAC,KAAK,EAAC,MAAM,uBAAuB,CAAC;AAG5C,MAAM,WAAW,SAAS,CAAC,CAAC,GAAG,OAAO;IACpC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,CAAC,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC;CAChB;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,GAAG,SAAS,CAG3E"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table-column.js","names":["getArrayTypeFromDataType","makeColumnFromField","field","length","ArrayType","type","nullable"],"sources":["../../../../src/lib/table/simple-table/table-column.ts"],"sourcesContent":["// loaders.gl
|
|
1
|
+
{"version":3,"file":"table-column.js","names":["getArrayTypeFromDataType","makeColumnFromField","field","length","ArrayType","type","nullable"],"sources":["../../../../src/lib/table/simple-table/table-column.ts"],"sourcesContent":["// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n\n// import type {TypedArray,} from '../../../types/types';\nimport {Field} from '../../../types/schema';\nimport {getArrayTypeFromDataType} from './data-type';\n\nexport interface ArrayType<T = unknown> {\n readonly length: number;\n [n: number]: T;\n}\n\nexport function makeColumnFromField(field: Field, length: number): ArrayType {\n const ArrayType = getArrayTypeFromDataType(field.type, field.nullable);\n return new ArrayType(length);\n}\n\n/*\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nfunction deduceSchema(rows) {\n const row = rows[0];\n\n const schema = {};\n let i = 0;\n for (const columnName in row) {\n const value = row[columnName];\n switch (typeof value) {\n case 'number':\n case 'boolean':\n // TODO - booleans could be handled differently...\n schema[columnName] = {name: String(columnName), index: i, type: Float32Array};\n break;\n\n case 'object':\n schema[columnName] = {name: String(columnName), index: i, type: Array};\n break;\n\n case 'string':\n default:\n schema[columnName] = {name: String(columnName), index: i, type: Array};\n // We currently only handle numeric rows\n // TODO we could offer a function to map strings to numbers?\n }\n i++;\n }\n return schema;\n}\n*/\n"],"mappings":"SAMQA,wBAAwB;AAOhC,OAAO,SAASC,mBAAmBA,CAACC,KAAY,EAAEC,MAAc,EAAa;EAC3E,MAAMC,SAAS,GAAGJ,wBAAwB,CAACE,KAAK,CAACG,IAAI,EAAEH,KAAK,CAACI,QAAQ,CAAC;EACtE,OAAO,IAAIF,SAAS,CAACD,MAAM,CAAC;AAC9B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table-schema.d.ts","sourceRoot":"","sources":["../../../../src/lib/table/simple-table/table-schema.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"table-schema.d.ts","sourceRoot":"","sources":["../../../../src/lib/table/simple-table/table-schema.ts"],"names":[],"mappings":"AAKA,OAAO,EAAC,MAAM,EAAQ,MAAM,uBAAuB,CAAC;AAEpD,OAAO,EAAC,KAAK,EAAC,MAAM,+BAA+B,CAAC;AAGpD;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,CAatD;AAED,wBAAgB,YAAY,CAC1B,IAAI,EAAE,OAAO,EAAE,EAAE,GAAG;IAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAC,EAAE,GAAG;IAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,EAAE,CAAA;CAAC,GAC1E,MAAM,CAER"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table-schema.js","names":["getDataTypeFromArray","getDataTypeFromValue","deduceTableSchema","table","shape","deduceSchemaFromRows","data","deduceSchemaFromColumns","Error","deduceSchema","Array","isArray","columnarTable","fields","columnName","column","Object","entries","field","deduceFieldFromColumn","push","metadata","rowTable","length","row0","value","deduceFieldFromValue","name","ArrayBuffer","isView","type","nullable"],"sources":["../../../../src/lib/table/simple-table/table-schema.ts"],"sourcesContent":["// loaders.gl
|
|
1
|
+
{"version":3,"file":"table-schema.js","names":["getDataTypeFromArray","getDataTypeFromValue","deduceTableSchema","table","shape","deduceSchemaFromRows","data","deduceSchemaFromColumns","Error","deduceSchema","Array","isArray","columnarTable","fields","columnName","column","Object","entries","field","deduceFieldFromColumn","push","metadata","rowTable","length","row0","value","deduceFieldFromValue","name","ArrayBuffer","isView","type","nullable"],"sources":["../../../../src/lib/table/simple-table/table-schema.ts"],"sourcesContent":["// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n\n// Type deduction\nimport {Schema, Field} from '../../../types/schema';\nimport {ArrayType} from '../../../types/types';\nimport {Table} from '../../../types/category-table';\nimport {getDataTypeFromArray, getDataTypeFromValue} from './data-type';\n\n/**\n * SCHEMA SUPPORT - AUTODEDUCTION\n * @param {*} table\n * @param {*} schema\n * @returns\n */\nexport function deduceTableSchema(table: Table): Schema {\n switch (table.shape) {\n case 'array-row-table':\n case 'object-row-table':\n return deduceSchemaFromRows(table.data);\n\n case 'columnar-table':\n return deduceSchemaFromColumns(table.data);\n\n case 'arrow-table':\n default:\n throw new Error('Deduce schema');\n }\n}\n\nexport function deduceSchema(\n data: unknown[][] | {[key: string]: unknown}[] | {[key: string]: unknown[]}\n): Schema {\n return Array.isArray(data) ? deduceSchemaFromRows(data) : deduceSchemaFromColumns(data);\n}\n\n/** Given an object with columnar arrays, try to deduce a schema */\nfunction deduceSchemaFromColumns(columnarTable: {[key: string]: ArrayType}): Schema {\n const fields: Field[] = [];\n for (const [columnName, column] of Object.entries(columnarTable)) {\n const field = deduceFieldFromColumn(column, columnName);\n fields.push(field);\n }\n return {fields, metadata: {}};\n}\n\n/** Given an array of rows, try to deduce a schema */\nfunction deduceSchemaFromRows(rowTable: unknown[][] | {[key: string]: unknown}[]): Schema {\n if (!rowTable.length) {\n throw new Error('deduce from empty table');\n }\n const fields: Field[] = [];\n const row0 = rowTable[0];\n // TODO - fields can be nullable, false detection...\n // Could look at additional rows if nulls in first row\n // TODO - if array, column names will be numbers\n for (const [columnName, value] of Object.entries(row0)) {\n fields.push(deduceFieldFromValue(value, columnName));\n }\n\n return {fields, metadata: {}};\n}\n\n/** Given a column (i.e. array), attempt to deduce an appropriate `Field` */\nfunction deduceFieldFromColumn(column: ArrayType, name: string): Field {\n if (ArrayBuffer.isView(column)) {\n const type = getDataTypeFromArray(column);\n return {\n name,\n type: type.type || 'null',\n nullable: type.nullable\n // metadata: {}\n };\n }\n\n if (Array.isArray(column) && column.length > 0) {\n const value = column[0];\n const type = getDataTypeFromValue(value);\n // TODO - support nested schemas?\n return {\n name,\n type,\n nullable: true\n // metadata: {},\n };\n }\n\n throw new Error('empty table');\n}\n\n/** Given a value, attempt to deduce an appropriate `Field` */\nfunction deduceFieldFromValue(value: unknown, name: string): Field {\n const type = getDataTypeFromValue(value);\n return {\n name,\n type,\n nullable: true\n // metadata: {}\n };\n}\n"],"mappings":"SAQQA,oBAAoB,EAAEC,oBAAoB;AAQlD,OAAO,SAASC,iBAAiBA,CAACC,KAAY,EAAU;EACtD,QAAQA,KAAK,CAACC,KAAK;IACjB,KAAK,iBAAiB;IACtB,KAAK,kBAAkB;MACrB,OAAOC,oBAAoB,CAACF,KAAK,CAACG,IAAI,CAAC;IAEzC,KAAK,gBAAgB;MACnB,OAAOC,uBAAuB,CAACJ,KAAK,CAACG,IAAI,CAAC;IAE5C,KAAK,aAAa;IAClB;MACE,MAAM,IAAIE,KAAK,CAAC,eAAe,CAAC;EACpC;AACF;AAEA,OAAO,SAASC,YAAYA,CAC1BH,IAA2E,EACnE;EACR,OAAOI,KAAK,CAACC,OAAO,CAACL,IAAI,CAAC,GAAGD,oBAAoB,CAACC,IAAI,CAAC,GAAGC,uBAAuB,CAACD,IAAI,CAAC;AACzF;AAGA,SAASC,uBAAuBA,CAACK,aAAyC,EAAU;EAClF,MAAMC,MAAe,GAAG,EAAE;EAC1B,KAAK,MAAM,CAACC,UAAU,EAAEC,MAAM,CAAC,IAAIC,MAAM,CAACC,OAAO,CAACL,aAAa,CAAC,EAAE;IAChE,MAAMM,KAAK,GAAGC,qBAAqB,CAACJ,MAAM,EAAED,UAAU,CAAC;IACvDD,MAAM,CAACO,IAAI,CAACF,KAAK,CAAC;EACpB;EACA,OAAO;IAACL,MAAM;IAAEQ,QAAQ,EAAE,CAAC;EAAC,CAAC;AAC/B;AAGA,SAAShB,oBAAoBA,CAACiB,QAAkD,EAAU;EACxF,IAAI,CAACA,QAAQ,CAACC,MAAM,EAAE;IACpB,MAAM,IAAIf,KAAK,CAAC,yBAAyB,CAAC;EAC5C;EACA,MAAMK,MAAe,GAAG,EAAE;EAC1B,MAAMW,IAAI,GAAGF,QAAQ,CAAC,CAAC,CAAC;EAIxB,KAAK,MAAM,CAACR,UAAU,EAAEW,KAAK,CAAC,IAAIT,MAAM,CAACC,OAAO,CAACO,IAAI,CAAC,EAAE;IACtDX,MAAM,CAACO,IAAI,CAACM,oBAAoB,CAACD,KAAK,EAAEX,UAAU,CAAC,CAAC;EACtD;EAEA,OAAO;IAACD,MAAM;IAAEQ,QAAQ,EAAE,CAAC;EAAC,CAAC;AAC/B;AAGA,SAASF,qBAAqBA,CAACJ,MAAiB,EAAEY,IAAY,EAAS;EACrE,IAAIC,WAAW,CAACC,MAAM,CAACd,MAAM,CAAC,EAAE;IAC9B,MAAMe,IAAI,GAAG9B,oBAAoB,CAACe,MAAM,CAAC;IACzC,OAAO;MACLY,IAAI;MACJG,IAAI,EAAEA,IAAI,CAACA,IAAI,IAAI,MAAM;MACzBC,QAAQ,EAAED,IAAI,CAACC;IAEjB,CAAC;EACH;EAEA,IAAIrB,KAAK,CAACC,OAAO,CAACI,MAAM,CAAC,IAAIA,MAAM,CAACQ,MAAM,GAAG,CAAC,EAAE;IAC9C,MAAME,KAAK,GAAGV,MAAM,CAAC,CAAC,CAAC;IACvB,MAAMe,IAAI,GAAG7B,oBAAoB,CAACwB,KAAK,CAAC;IAExC,OAAO;MACLE,IAAI;MACJG,IAAI;MACJC,QAAQ,EAAE;IAEZ,CAAC;EACH;EAEA,MAAM,IAAIvB,KAAK,CAAC,aAAa,CAAC;AAChC;AAGA,SAASkB,oBAAoBA,CAACD,KAAc,EAAEE,IAAY,EAAS;EACjE,MAAMG,IAAI,GAAG7B,oBAAoB,CAACwB,KAAK,CAAC;EACxC,OAAO;IACLE,IAAI;IACJG,IAAI;IACJC,QAAQ,EAAE;EAEZ,CAAC;AACH"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"batch.d.ts","sourceRoot":"","sources":["../../src/types/batch.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"batch.d.ts","sourceRoot":"","sources":["../../src/types/batch.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,MAAM,EAAC,MAAM,UAAU,CAAC;AAGhC,KAAK,iBAAiB,GAAG,OAAO,CAAC;AAEjC;;;;GAIG;AACH,MAAM,MAAM,KAAK,GAAG;IAClB,iFAAiF;IACjF,SAAS,EAAE,MAAM,GAAG,UAAU,GAAG,gBAAgB,GAAG,cAAc,CAAC;IACnE,wEAAwE;IACxE,KAAK,EAAE,MAAM,CAAC;IACd,uCAAuC;IACvC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,yBAAyB;IACzB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,yDAAyD;IACzD,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAChC,mCAAmC;IACnC,MAAM,EAAE,MAAM,CAAC;IAEf,kCAAkC;IAClC,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,kCAAkC;IAClC,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,wBAAwB;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,qBAAqB;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,kDAAkD;IAClD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,qBAAqB;IACrB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB,CAAC"}
|
package/dist/types/batch.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"batch.js","names":[],"sources":["../../src/types/batch.ts"],"sourcesContent":["// loaders.gl
|
|
1
|
+
{"version":3,"file":"batch.js","names":[],"sources":["../../src/types/batch.ts"],"sourcesContent":["// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n\nimport {Schema} from './schema';\n// import type {RecordBatch} from 'apache-arrow';\n\ntype ApacheRecordBatch = unknown;\n\n/**\n * A batch of data (or metadata/schema), from a streaming loader\n * @see parseInBatches()\n * @see loadInBatches()\n */\nexport type Batch = {\n /** A batch can contain metadata, data, or in case of unstructured data (JSON) */\n batchType: 'data' | 'metadata' | 'partial-result' | 'final-result';\n /** A string identifying the shape of data in this batch (table, etc) */\n shape: string;\n /** Schema of the data in this batch */\n schema?: Schema;\n /** Data in this batch */\n data?: unknown;\n /** If this is an arrow table. @deprecated Use `data` */\n recordBatch?: ApacheRecordBatch;\n /** Length of data in this batch */\n length: number;\n\n /** A count of batches received */\n batch?: number;\n\n /** A count of batches received */\n count?: number;\n\n /** Bytes used so far */\n bytesUsed?: number;\n /** cursor is the */\n cursor?: number;\n\n /** MIME type of the data generating this batch */\n mimeType?: string;\n\n /** Any other data */\n [key: string]: unknown;\n};\n"],"mappings":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"binary-geometries.d.ts","sourceRoot":"","sources":["../../src/types/binary-geometries.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"binary-geometries.d.ts","sourceRoot":"","sources":["../../src/types/binary-geometries.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,SAAS,CAAC;AAIxC,MAAM,MAAM,eAAe,GAAG;IAAC,KAAK,EAAE,UAAU,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAC,CAAC;AAChE,MAAM,MAAM,kBAAkB,GAAG,OAAO,GAAG,YAAY,GAAG,SAAS,CAAC;AAEpE,KAAK,YAAY,GAAG;IAAC,CAAC,GAAG,EAAE,MAAM,GAAG,eAAe,CAAA;CAAC,CAAC;AACrD,KAAK,UAAU,GAAG,MAAM,EAAE,CAAC;AAE3B;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,mBAAmB,GAAG,kBAAkB,GAAG,qBAAqB,CAAC;AAE9F,mDAAmD;AACnD,MAAM,MAAM,mBAAmB,GAAG;IAChC,IAAI,EAAE,OAAO,CAAC;IACd,SAAS,EAAE,eAAe,CAAC;CAC5B,CAAC;AAEF,qFAAqF;AACrF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,EAAE,YAAY,CAAC;IACnB,SAAS,EAAE,eAAe,CAAC;IAC3B,WAAW,EAAE,eAAe,CAAC;CAC9B,CAAC;AAEF,2FAA2F;AAC3F,MAAM,MAAM,qBAAqB,GAAG;IAClC,IAAI,EAAE,SAAS,CAAC;IAChB,SAAS,EAAE,eAAe,CAAC;IAC3B,cAAc,EAAE,eAAe,CAAC;IAChC,uBAAuB,EAAE,eAAe,CAAC;IACzC,SAAS,CAAC,EAAE,eAAe,CAAC;CAC7B,CAAC;AAEF,8CAA8C;AAC9C,MAAM,MAAM,gBAAgB,GAAG;IAC7B,UAAU,EAAE,eAAe,CAAC;IAC5B,gBAAgB,EAAE,eAAe,CAAC;IAClC,YAAY,EAAE,YAAY,CAAC;IAC3B,UAAU,EAAE,UAAU,CAAC;IACvB,MAAM,CAAC,EAAE,UAAU,CAAC;CACrB,CAAC;AAEF,yCAAyC;AACzC,MAAM,MAAM,aAAa,GAAG,kBAAkB,GAAG,iBAAiB,GAAG,oBAAoB,CAAC;AAE1F,MAAM,MAAM,kBAAkB,GAAG,mBAAmB,GAAG,gBAAgB,CAAC;AACxE,MAAM,MAAM,iBAAiB,GAAG,kBAAkB,GAAG,gBAAgB,CAAC;AACtE,MAAM,MAAM,oBAAoB,GAAG,qBAAqB,GAAG,gBAAgB,CAAC;AAE5E;;GAEG;AACH,MAAM,MAAM,uBAAuB,GAAG;IACpC,KAAK,EAAE,2BAA2B,CAAC;IACnC,MAAM,CAAC,EAAE,kBAAkB,CAAC;IAC5B,KAAK,CAAC,EAAE,iBAAiB,CAAC;IAC1B,QAAQ,CAAC,EAAE,oBAAoB,CAAC;CACjC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"binary-geometries.js","names":[],"sources":["../../src/types/binary-geometries.ts"],"sourcesContent":["// loaders.gl
|
|
1
|
+
{"version":3,"file":"binary-geometries.js","names":[],"sources":["../../src/types/binary-geometries.ts"],"sourcesContent":["// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n\n// GIS\nimport type {TypedArray} from './types';\n\n// BINARY FORMAT GEOMETRY\n\nexport type BinaryAttribute = {value: TypedArray; size: number};\nexport type BinaryGeometryType = 'Point' | 'LineString' | 'Polygon';\n\ntype NumericProps = {[key: string]: BinaryAttribute};\ntype Properties = object[];\n\n/**\n * Represent a single Geometry, similar to a GeoJSON Geometry\n */\nexport type BinaryGeometry = BinaryPointGeometry | BinaryLineGeometry | BinaryPolygonGeometry;\n\n/** Binary point geometry: an array of positions */\nexport type BinaryPointGeometry = {\n type: 'Point';\n positions: BinaryAttribute;\n};\n\n/** Binary line geometry, array of positions and indices to the start of each line */\nexport type BinaryLineGeometry = {\n type: 'LineString';\n positions: BinaryAttribute;\n pathIndices: BinaryAttribute;\n};\n\n/** Binary polygon geometry, an array of positions to each primitite polygon and polygon */\nexport type BinaryPolygonGeometry = {\n type: 'Polygon';\n positions: BinaryAttribute;\n polygonIndices: BinaryAttribute;\n primitivePolygonIndices: BinaryAttribute;\n triangles?: BinaryAttribute;\n};\n\n/** Common properties for binary geometries */\nexport type BinaryProperties = {\n featureIds: BinaryAttribute;\n globalFeatureIds: BinaryAttribute;\n numericProps: NumericProps;\n properties: Properties;\n fields?: Properties;\n};\n\n/** Binary feature + binary attributes */\nexport type BinaryFeature = BinaryPointFeature | BinaryLineFeature | BinaryPolygonFeature;\n\nexport type BinaryPointFeature = BinaryPointGeometry & BinaryProperties;\nexport type BinaryLineFeature = BinaryLineGeometry & BinaryProperties;\nexport type BinaryPolygonFeature = BinaryPolygonGeometry & BinaryProperties;\n\n/**\n * Represent a collection of Features, similar to a GeoJSON FeatureCollection\n */\nexport type BinaryFeatureCollection = {\n shape: 'binary-feature-collection';\n points?: BinaryPointFeature;\n lines?: BinaryLineFeature;\n polygons?: BinaryPolygonFeature;\n};\n"],"mappings":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"category-gis.d.ts","sourceRoot":"","sources":["../../src/types/category-gis.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"category-gis.d.ts","sourceRoot":"","sources":["../../src/types/category-gis.ts"],"names":[],"mappings":"AAOA,YAAY,EACV,OAAO,EACP,OAAO,EACP,iBAAiB,EACjB,QAAQ,EACR,QAAQ,EACR,iBAAiB,EAClB,MAAM,SAAS,CAAC;AAEjB,YAAY,EACV,KAAK,EACL,UAAU,EACV,UAAU,EACV,eAAe,EACf,OAAO,EACP,YAAY,EACZ,kBAAkB,EACnB,MAAM,SAAS,CAAC;AAGjB,YAAY,EACV,gBAAgB,EAChB,mBAAmB,EACnB,SAAS,EACT,cAAc,EACd,WAAW,EACX,YAAY,EACZ,WAAW,EACZ,MAAM,mBAAmB,CAAC;AAG3B,YAAY,EACV,eAAe,EACf,kBAAkB,EAClB,cAAc,EACd,mBAAmB,EACnB,kBAAkB,EAClB,qBAAqB,EACrB,gBAAgB,EAChB,uBAAuB,EACvB,aAAa,EACb,kBAAkB,EAClB,iBAAiB,EACjB,oBAAoB,EACrB,MAAM,qBAAqB,CAAC;AAE7B,sEAAsE;AACtE,MAAM,MAAM,mBAAmB,GAAG;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,cAAc,EAAE,MAAM,CAAC;IACvB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,qBAAqB,EAAE,MAAM,CAAC;IAC9B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,oBAAoB,EAAE,MAAM,CAAC;CAC9B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"category-gis.js","names":[],"sources":["../../src/types/category-gis.ts"],"sourcesContent":["// loaders.gl
|
|
1
|
+
{"version":3,"file":"category-gis.js","names":[],"sources":["../../src/types/category-gis.ts"],"sourcesContent":["// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n\n// GIS\n\n// NORMAL GEOJSON FORMAT GEOMETRY\nexport type {\n GeoJSON,\n Feature,\n FeatureCollection,\n Geometry,\n Position,\n GeoJsonProperties\n} from 'geojson';\n\nexport type {\n Point,\n MultiPoint,\n LineString,\n MultiLineString,\n Polygon,\n MultiPolygon,\n GeometryCollection\n} from 'geojson';\n\n// FLAT GEOJSON FORMAT GEOMETRY\nexport type {\n FlatGeometryType,\n FlatIndexedGeometry,\n FlatPoint,\n FlatLineString,\n FlatPolygon,\n FlatGeometry,\n FlatFeature\n} from './flat-geometries';\n\n// BINARY FORMAT GEOMETRY\nexport type {\n BinaryAttribute,\n BinaryGeometryType,\n BinaryGeometry,\n BinaryPointGeometry,\n BinaryLineGeometry,\n BinaryPolygonGeometry,\n BinaryProperties,\n BinaryFeatureCollection,\n BinaryFeature,\n BinaryPointFeature,\n BinaryLineFeature,\n BinaryPolygonFeature\n} from './binary-geometries';\n\n/** Aggregate information for converting GeoJSON into other formats */\nexport type GeojsonGeometryInfo = {\n coordLength: number;\n pointPositionsCount: number;\n pointFeaturesCount: number;\n linePositionsCount: number;\n linePathsCount: number;\n lineFeaturesCount: number;\n polygonPositionsCount: number;\n polygonObjectsCount: number;\n polygonRingsCount: number;\n polygonFeaturesCount: number;\n};\n"],"mappings":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"category-image.d.ts","sourceRoot":"","sources":["../../src/types/category-image.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"category-image.d.ts","sourceRoot":"","sources":["../../src/types/category-image.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG;IAC1B,IAAI,EAAE,UAAU,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,WAAW,GAAG,aAAa,GAAG,gBAAgB,CAAC;AAEvE;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,aAAa,GAAG,OAAO,GAAG,MAAM,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"category-image.js","names":[],"sources":["../../src/types/category-image.ts"],"sourcesContent":["// loaders.gl
|
|
1
|
+
{"version":3,"file":"category-image.js","names":[],"sources":["../../src/types/category-image.ts"],"sourcesContent":["// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n\n/**\n * data images\n */\nexport type ImageDataType = {\n data: Uint8Array;\n width: number;\n height: number;\n compressed?: boolean;\n};\n\n/**\n * Supported Image Types\n */\nexport type ImageType = ImageBitmap | ImageDataType | HTMLImageElement;\n\n/**\n * Image type string used to control or determine the type of images returned from ImageLoader\n */\nexport type ImageTypeEnum = 'imagebitmap' | 'image' | 'data';\n"],"mappings":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"category-mesh.d.ts","sourceRoot":"","sources":["../../src/types/category-mesh.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"category-mesh.d.ts","sourceRoot":"","sources":["../../src/types/category-mesh.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,UAAU,CAAC;AACrC,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,SAAS,CAAC;AACxC,OAAO,KAAK,EAAC,aAAa,EAAE,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAEhE,6BAA6B;AAC7B,MAAM,WAAW,SAAU,SAAQ,aAAa;IAE9C,QAAQ,EAAE,YAAY,GAAG,eAAe,GAAG,gBAAgB,CAAC;IAC5D,OAAO,CAAC,EAAE,aAAa,CAAC;CACzB;AAED,0BAA0B;AAC1B,MAAM,WAAW,cAAe,SAAQ,UAAU;IAEhD,QAAQ,EAAE,YAAY,GAAG,eAAe,GAAG,gBAAgB,CAAC;IAC5D,OAAO,CAAC,EAAE,aAAa,CAAC;CACzB;AAED,0EAA0E;AAC1E,MAAM,MAAM,YAAY,GAAG;IACzB,UAAU,EAAE;QAAC,CAAC,aAAa,EAAE,MAAM,GAAG,aAAa,CAAA;KAAC,CAAC;IACrD,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,QAAQ,EAAE,YAAY,GAAG,eAAe,GAAG,gBAAgB,CAAC;IAC5D,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,mFAAmF;AACnF,MAAM,MAAM,IAAI,GAAG,YAAY,GAAG;IAChC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAC,CAAC;IAClC,MAAM,CAAC,EAAE;QACP,WAAW,EAAE,MAAM,CAAC;QACpB,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;KACpC,CAAC;IACF,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,aAAa,GAAG;IAC1B,KAAK,EAAE,UAAU,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB,CAAC;AAEF,wDAAwD;AACxD,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"category-mesh.js","names":[],"sources":["../../src/types/category-mesh.ts"],"sourcesContent":["// loaders.gl
|
|
1
|
+
{"version":3,"file":"category-mesh.js","names":[],"sources":["../../src/types/category-mesh.ts"],"sourcesContent":["// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n\nimport type {Schema} from './schema';\nimport type {TypedArray} from './types';\nimport type {ColumnarTable, ArrowTable} from './category-table';\n\n/** Mesh as columnar table */\nexport interface MeshTable extends ColumnarTable {\n // shape: 'mesh-table';\n topology: 'point-list' | 'triangle-list' | 'triangle-strip';\n indices?: MeshAttribute;\n}\n\n/** Mesh as arrow table */\nexport interface MeshArrowTable extends ArrowTable {\n // shape: 'mesh-arrow-table';\n topology: 'point-list' | 'triangle-list' | 'triangle-strip';\n indices?: MeshAttribute;\n}\n\n/** Geometry part of a Mesh (compatible with a standard luma.gl \"mesh\") */\nexport type MeshGeometry = {\n attributes: {[attributeName: string]: MeshAttribute};\n indices?: MeshAttribute;\n topology: 'point-list' | 'triangle-list' | 'triangle-strip';\n mode: number;\n};\n\n/** Geometry and metadata for a Mesh (compatible with a standard luma.gl \"mesh\") */\nexport type Mesh = MeshGeometry & {\n loader?: string;\n loaderData?: {[key: string]: any};\n header?: {\n vertexCount: number;\n boundingBox?: [number[], number[]];\n };\n schema: Schema;\n};\n\n/**\n * luma.gl compatible attribute descriptors\n * Can be mapped to any WebGL framework\n */\nexport type MeshAttribute = {\n value: TypedArray;\n size: number;\n byteOffset?: number;\n byteStride?: number;\n normalized?: boolean;\n};\n\n/** A map of mesh attributes keyed by attribute names */\nexport type MeshAttributes = Record<string, MeshAttribute>;\n"],"mappings":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"category-table.d.ts","sourceRoot":"","sources":["../../src/types/category-table.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"category-table.d.ts","sourceRoot":"","sources":["../../src/types/category-table.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"category-table.js","names":[],"sources":["../../src/types/category-table.ts"],"sourcesContent":["// loaders.gl
|
|
1
|
+
{"version":3,"file":"category-table.js","names":[],"sources":["../../src/types/category-table.ts"],"sourcesContent":["// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n\nimport type {Schema} from './schema';\nimport type {Batch} from './batch';\nimport type {Feature} from './category-gis';\n\n// Avoid a big dependency, apparently even a type import can pull in a lot of code\n// import type {Table as ApacheArrowTable} from 'apache-arrow';\n\ntype ApacheArrowTable = unknown;\ntype ApacheRecordBatch = unknown;\n\n/** A general table */\nexport type Table =\n | RowTable\n | ArrayRowTable\n | ObjectRowTable\n | GeoJSONTable\n | ColumnarTable\n | ArrowTable;\n\n/** A table organized as an array of rows */\nexport type RowTable = ArrayRowTable | ObjectRowTable | GeoJSONTable;\n\n/** A table organized as an array of rows, each row is an array of values */\nexport type ArrayRowTable = {\n shape: 'array-row-table';\n schema?: Schema;\n data: any[][];\n};\n\n/** A table organized as an array of rows, each row is an object mapping columns to values */\nexport type ObjectRowTable = {\n shape: 'object-row-table';\n schema?: Schema;\n data: {[columnName: string]: any}[];\n};\n\n/**\n * A table organized as an array of rows, each row is a GeoJSON Feature\n * @note For compatibility with GeoJSON, rows are stored in `table.features` instead of `table.data`\n */\nexport type GeoJSONTable = {\n shape: 'geojson-table';\n schema?: Schema;\n /** For compatibility with GeoJSON, the type field must always be set to `FeatureCollection` */\n type: 'FeatureCollection';\n /** For compatibility with GeoJSON, rows are stored in `table.features` instead of `table.data` */\n features: Feature[];\n};\n\n/** A table organized as a map of columns, each column is an array of value */\nexport type ColumnarTable = {\n shape: 'columnar-table';\n schema?: Schema;\n data: {[columnName: string]: ArrayLike<unknown>};\n};\n\n/** A table organized as an Apache Arrow table */\nexport type ArrowTable = {\n shape: 'arrow-table';\n schema?: Schema;\n data: ApacheArrowTable;\n};\n\n/** A collection of tables */\nexport type Tables<TableType = Table> = {\n shape: 'tables';\n tables: {name: string; table: TableType}[];\n};\n\n// Batches\n\n/** Batch for a general table */\nexport type TableBatch =\n | ArrayRowTableBatch\n | ObjectRowTableBatch\n | GeoJSONTableBatch\n | ColumnarTableBatch\n | ArrowTableBatch;\n\n/** Batch for a table organized as an array of rows, each row is an array of values */\nexport type ArrayRowTableBatch = Batch & {\n shape: 'array-row-table';\n schema?: Schema;\n schemaType?: 'explicit' | 'deduced';\n data: any[][];\n length: number;\n};\n\n/** Batch for a table organized as an array of rows, each row is an object mapping columns to values */\nexport type ObjectRowTableBatch = Batch & {\n shape: 'object-row-table';\n schema?: Schema;\n schemaType?: 'explicit' | 'deduced';\n data: {[columnName: string]: any}[];\n length: number;\n};\n\n/** Batch for a table organized as an array of rows, each row is an array of values */\nexport type GeoJSONTableBatch = Batch & {\n shape: 'geojson-table';\n schema?: Schema;\n schemaType?: 'explicit' | 'deduced';\n type: 'FeatureCollection';\n features: Feature[];\n length: number;\n};\n\n/** Batch for a table organized as a map of columns, each column is an array of value */\nexport type ColumnarTableBatch = Batch & {\n shape: 'columnar-table';\n schemaType?: 'explicit' | 'deduced';\n schema?: Schema;\n data: {[columnName: string]: ArrayLike<unknown>};\n length: number;\n};\n\n/** Batch for a table organized as an Apache Arrow table */\nexport type ArrowTableBatch = Batch & {\n shape: 'arrow-table';\n schemaType?: 'explicit' | 'deduced';\n schema?: Schema;\n data: ApacheRecordBatch;\n length: number;\n};\n"],"mappings":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"category-texture.d.ts","sourceRoot":"","sources":["../../src/types/category-texture.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"category-texture.d.ts","sourceRoot":"","sources":["../../src/types/category-texture.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,kBAAkB,CAAC;AAEhD;;;GAGG;AACH,MAAM,MAAM,gBAAgB,GACxB,KAAK,GACL,UAAU,GACV,MAAM,GACN,MAAM,GACN,OAAO,GACP,KAAK,GACL,MAAM,GACN,MAAM,CAAC;AAEX,oBAAoB;AACpB,MAAM,MAAM,YAAY,GAAG;IACzB,UAAU,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,UAAU,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,SAAS,GAAG,CAAC,YAAY,GAAG,SAAS,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"category-texture.js","names":[],"sources":["../../src/types/category-texture.ts"],"sourcesContent":["// loaders.gl
|
|
1
|
+
{"version":3,"file":"category-texture.js","names":[],"sources":["../../src/types/category-texture.ts"],"sourcesContent":["// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n\nimport type {ImageType} from './category-image';\n\n/**\n * These represent the main compressed texture formats\n * Each format typically has a number of more specific subformats\n */\nexport type GPUTextureFormat =\n | 'dxt'\n | 'dxt-srgb'\n | 'etc1'\n | 'etc2'\n | 'pvrtc'\n | 'atc'\n | 'astc'\n | 'rgtc';\n\n/** One mip level */\nexport type TextureLevel = {\n compressed: boolean;\n format?: number;\n data: Uint8Array;\n width: number;\n height: number;\n levelSize?: number;\n hasAlpha?: boolean;\n};\n\nexport type TextureOrImage = ImageType | (TextureLevel | ImageType);\n"],"mappings":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flat-geometries.d.ts","sourceRoot":"","sources":["../../src/types/flat-geometries.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"flat-geometries.d.ts","sourceRoot":"","sources":["../../src/types/flat-geometries.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAC,MAAM,SAAS,CAAC;AAE3E,yBAAyB;AACzB,MAAM,MAAM,gBAAgB,GAAG,OAAO,GAAG,YAAY,GAAG,SAAS,CAAC;AAElE,KAAK,sBAAsB,CAAC,IAAI,IAAI;KACjC,QAAQ,IAAI,MAAM,IAAI,IAAI,OAAO,CAAC,QAAQ,EAAE,aAAa,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC;CAC7E,CAAC;AAEF,8CAA8C;AAC9C,MAAM,MAAM,mBAAmB,GAAG;IAChC,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB,CAAC;AAEF,8GAA8G;AAC9G,MAAM,MAAM,SAAS,GAAG,sBAAsB,CAAC,KAAK,CAAC,GAAG,mBAAmB,CAAC;AAE5E,mHAAmH;AACnH,MAAM,MAAM,cAAc,GAAG,sBAAsB,CAAC,UAAU,CAAC,GAAG,mBAAmB,CAAC;AAEtF,mHAAmH;AACnH,MAAM,MAAM,WAAW,GAAG,sBAAsB,CAAC,OAAO,CAAC,GAAG;IAC1D,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC;IACpB,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC;CACnB,CAAC;AAEF,oGAAoG;AACpG,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,cAAc,GAAG,WAAW,CAAC;AAEpE,KAAK,eAAe,CAAC,IAAI,IAAI;KAC1B,QAAQ,IAAI,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,QAAQ,GAAG,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC;CAC1F,CAAC;AAEF,6DAA6D;AAC7D,MAAM,MAAM,WAAW,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flat-geometries.js","names":[],"sources":["../../src/types/flat-geometries.ts"],"sourcesContent":["// loaders.gl
|
|
1
|
+
{"version":3,"file":"flat-geometries.js","names":[],"sources":["../../src/types/flat-geometries.ts"],"sourcesContent":["// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n\n// FLAT GEOJSON FORMAT GEOMETRY\nimport type {Feature, Geometry, Point, LineString, Polygon} from 'geojson';\n\n/** Flat geometry type */\nexport type FlatGeometryType = 'Point' | 'LineString' | 'Polygon';\n\ntype RemoveCoordinatesField<Type> = {\n [Property in keyof Type as Exclude<Property, 'coordinates'>]: Type[Property];\n};\n\n/** Generic flat geometry data storage type */\nexport type FlatIndexedGeometry = {\n data: number[];\n indices: number[];\n};\n\n/** GeoJSON (Multi)Point geometry with coordinate data flattened into `data` array and indexed by `indices` */\nexport type FlatPoint = RemoveCoordinatesField<Point> & FlatIndexedGeometry;\n\n/** GeoJSON (Multi)LineString geometry with coordinate data flattened into `data` array and indexed by `indices` */\nexport type FlatLineString = RemoveCoordinatesField<LineString> & FlatIndexedGeometry;\n\n/** GeoJSON (Multi)Polygon geometry with coordinate data flattened into `data` array and indexed by 2D `indices` */\nexport type FlatPolygon = RemoveCoordinatesField<Polygon> & {\n data: number[];\n indices: number[][];\n areas: number[][];\n};\n\n/** GeoJSON geometry with coordinate data flattened into `data` array and indexed by 2D `indices` */\nexport type FlatGeometry = FlatPoint | FlatLineString | FlatPolygon;\n\ntype FlattenGeometry<Type> = {\n [Property in keyof Type]: Type[Property] extends Geometry ? FlatGeometry : Type[Property];\n};\n\n/** GeoJSON Feature with Geometry replaced by FlatGeometry */\nexport type FlatFeature = FlattenGeometry<Feature>;\n"],"mappings":""}
|